JS特效 小蜜蜂

本文介绍了一个简单的射击游戏的编程实现,包括游戏界面设计、玩家操作响应、敌方目标生成及碰撞检测等关键环节。
 

<html>
<head>
<title>射击</title>
</head><body>
<!--将以下代码加入HTML的<Body></Body>之间-->

<script language="JavaScript">
 function MakeArray( n){
     this.length = n;
     for (var i = 1; i <= n; i++) {
         this[i] = 0
     }
     return this
 }
 var d0 = new Date();
 var r0 = d0.getSeconds();
 function poor_rand(){
     d1 = new Date();
     r0 = (r0 * r0 + r0 + d1.getSeconds()) % 3721 ;
     return r0 % width_n;
 }
 var height_n = 8;
 var width_n =5;
 var enemy = new MakeArray( width_n);
 var wtime;
 var score;
 var gameover;
 document.write( "<FORM NAME='fm1'>");
 document.write( "<INPUT TYPE='text' NAME='message' SIZE=20>");
 document.write( "</FORM>");
 document.write( "<FORM NAME='fm2'><TABLE>");
 for( var i=0; i<height_n; i++){
     document.write( "<TR>");
     for( var j=0;j<width_n; j++){
         document.write( "<TD><CENTER><INPUT TYPE='radio'></CENTER></TD>");
     }
     document.write( "</TR>");
 }
 document.write( "<TR>");
 for( var j=0;j<width_n; j++){
     document.write( "<TD><INPUT TYPE='button' VALUE='射' onClick='fire("
         + j + ")'></TD>");
 }
 document.write( "</TR>");
 document.write( "</TABLE>");
 document.write( "<INPUT TYPE='button' VALUE='开始' onClick='game_start()'>");
 document.write( "</FORM>");
 function come(){
     var n = poor_rand();
     document.fm2.elements[ width_n * enemy[n+1] + n].checked = true;
     enemy[n+1]++;
     if( enemy[n+1] < height_n){
         setTimeout("come()", wtime);
     }else{
       gameover = true;
       document.fm1.message.value =  "游戏结束:" + score ;
     }
 }
 function fire( n){
     if( gameover ) return;
     for( var i=0; i<enemy[n+1]; i++){
         document.fm2.elements[ width_n * i + n].checked = false;
     }
     score += enemy[ n+1];
     document.fm1.message.value = "分数:" + score;
     enemy[ n+1] = 0;
     if( wtime > 50){ wtime -= 10};
 }
 function game_start(){
    for( var n=0; n<width_n; n++){
         for( var i=0; i<enemy[n+1]; i++){
             document.fm2.elements[ width_n * i + n].checked = false;
         }
         enemy[n+1] = 0;
     }
     wtime = 150;
     score = 0;
     gameover = false;
     document.fm1.message.value = "分数:" + score;
     setTimeout("come()", wtime);
 }
</script>
</body></html>

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值