JSは対象に向けて飛行機大戦を実現する.
24031 ワード
ホームページ
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<style>
.bg{
width: 530px;
height: 600px;
position: relative;
margin: 100px auto;
background: url("bg.png") no-repeat 0 -9399px;
}
.plane{
width: 60px;
height: 53px;
position: absolute;
left: 235px;
bottom: 10px;
background: url("my_air.gif") no-repeat;
}
.enemy{
position: absolute;
}
.buttle{
width: 9px;
height: 37px;
position: absolute;
background: url("my_ari_1.gif") no-repeat;
}
.bomp{
width: 160px;
height: 160px;
position: absolute;
background: url("0.gif") no-repeat;
}
style>
head>
<body>
<div class="bg" id="bg">
<div class="plane" id="plane">div>
div>
body>
<script type="text/javascript" src="buttle.js">script>
<script type="text/javascript" src="enemies.js">script>
<script src="jquery-3.0.0.min.js">script>
<script>
//bg begin
var bg_height=-9399;
function bg_move(){
var bg=document.getElementById("bg");
bg_height+=3;
if (bg_height>0){
bg_height=-9399;
}
bg.setAttribute("style","background: url('bg.png') no-repeat 0 "+bg_height+"px");
}
setInterval(bg_move,30);
//bg over
// key begin
document.onkeydown = function(){
var key=event.keyCode;
var plane =document.getElementById("plane");
switch (key){
case 37:
plane_Left();
break;
case 38:
plane_Top();
break;
case 39:
plane_Right();
break;
case 40:
plane_Bottom();
break;
case 32:
fire();
break;
}
};
// key over
// begin
var planeLeft=235;
var planeBottom=10;
// planeBottom、planeLeft
function plane_Left(){
if(planeLeft>0){
planeLeft-=8;
document.getElementById("plane").setAttribute("style","left:"+planeLeft+"px"+";"+"bottom:"+planeBottom+"px");
}
}
function plane_Right(){
if(planeLeft<470){
planeLeft+=8;
document.getElementById("plane").setAttribute("style","left:"+planeLeft+"px"+";"+"bottom:"+planeBottom+"px");
}
}
function plane_Top(){
if(planeBottom<550){
planeBottom+=8;
document.getElementById("plane").setAttribute("style","left:"+planeLeft+"px"+";"+"bottom:"+planeBottom+"px");
}
}
function plane_Bottom(){
if(planeBottom>10){
planeBottom-=8;
document.getElementById("plane").setAttribute("style","left:"+planeLeft+"px"+";"+"bottom:"+planeBottom+"px");
}
}
// over
function enemyShow(){
var number = parseInt(Math.random()*10);
for(var i=0;ivar enemies=new enemiesShow();
}
}
setInterval(enemyShow,3000);
function fire(){
var bottom=planeBottom+5+53;
var left=planeLeft+30-5;
var buttle = new buttleDemo(left,bottom);
}
script>
html>
弾丸/**
* Created by echo22 on 2016/7/29.
*/
function buttleDemo(left,bottom){
var buttleLeft =left;
var buttleBottom = bottom;
var id;
var Move;
inti();
function inti(){
id=getRandom();
var str = "
";
$("#bg").append(str);
$("#b"+id).css({"left":buttleLeft,"bottom":buttleBottom});
Move=setInterval(buttleMove,10);
}
// ID
function getRandom(){
return parseInt(Math.random()*10000);
}
//
function buttleMove(){
if(buttleBottom<550){
buttleBottom+=10;
$("#b"+id).css("bottom",buttleBottom);
if(JudgeShot()){
dispire();
}
}
else {
dispire();
}
}
//
function dispire(){
$("#b"+id).remove();
clearInterval(Move);
}
//
function JudgeShot(){
var enemy=$(".enemy");
for (var i=0;ivar enemy_top=$(".enemy").eq(i).css("top");
var enemy_left=$(".enemy").eq(i).css("left");
enemy_bottom=600-getInt(enemy_top);
enemy_left=getInt(enemy_left);
console.log(enemy_left);
if (buttleLeft>enemy_left&&buttleLeft50&&buttleBottom>enemy_bottom&&buttleBottom60){
$(".enemy").eq(i).remove();
var bomp="
";
$("#bg").append(bomp);
$("#bo"+id).css({"left":buttleLeft-70,"bottom":buttleBottom-100});
setTimeout(gundan,50);
return true;
}
}
return false;
}
function getInt(str){
var result = str.substring(0,(str.length-2));
return parseInt(result);
}
function gundan(){
$("#bo"+id).remove();
}
}
敵機/**
* Created by echo22 on 2016/7/29.
*/
function enemiesShow(){
var id;
init();
function init(){
var type=getEnemyType();
var enemyLeft=getEnemyLeft();
getEnemyPlane(type,enemyLeft);
getLine();
}
function getEnemyPlane(type,left){
console.log(111);
id=parseInt(Math.random()*10000);
var width;
var height;
if(type==1){
width=47;
height=72;
}
else {
width=64;
height=56;
}
var enemy="
";
$("#bg").append(enemy);
$("#e"+id).css({"width":width,"height":height,"left":left,"background":"url('d_j_"+type+".gif') no-repeat"});
}
function getEnemyType(){
return (parseInt(Math.random()*10/5)>0)?1:3;
}
function getEnemyLeft(){
return parseInt(Math.random()*(530-64));
}
function getLine(){
Math.random()>0.5?zhiLine():quLine();
}
function zhiLine(){
$("#e"+id).animate({
"top":"520px"
},3000,function(){
$("#e"+id).remove();
})
}
function quLine(){
$("#e"+id).animate({
"top":"200px",
"left":getEnemyLeft()
},1500,function(){})
$("#e"+id).animate({
"top":"520px",
"left":getEnemyLeft()
},1500,function(){
$("#e"+id).remove();
})
}
}