先在建構函式裡面新增監聽事件
stage.addeventlistener(keyboardevent.key_down,onkeydownhandler);
snakegame類裡面新增2個全域性變數
private
varisstop:boolean=true;
private
varisover:boolean=false;
把snakegame類建構函式裡面的timer.start()去掉,不然程式一執行遊戲就開始了。
新增以下2個方法事件
private
functiononkeydownhandler(event:keyboardevent):void
case40 : //down
case37 : //left
case39 : //right
case32 : //
如果按下的是空格鍵
default:
break;
}
}
private
functiongamestatuschangehandler(event:mouseevent):void
else
} }
好了,現在執行程式,按空格鍵就開始遊戲了。
還有,遊戲什麼情況下結束呢?
1. 咬到自己
2. 撞到牆了。
那我們就在snakemove方法裡面新增多2種判斷:
if(snakehead.x+gox<=config.map_x||snakehead.y+goy<=config.map_y
||snakehead.x+gox>=config.map_x+config.map_width
||snakehead.y+goy>=config.map_y+config.map_height)
for(varj:int=snakelist.length-1;j>0;j--)
} 然後新增多乙個方法
private
functiongameover():void
好了,到現在,乙個粗糙的版本就出來了,接下來就是完善一些細節,例如計分,等級,以及遊戲結束的提示等等。
小遊戲,貪食蛇
include include include include struct coor struct snake handle hconsole getstdhandle std output handle 獲取標準輸出控制代碼 int food x,food y 食物座標 int score 0 ...
貪食蛇 二稿
include include 函式srand include 按鈕函式getch include 時間間斷sleep 函式 include 函式time include 初始化函式memset void fun 主體函式 void food 隨機生成食物 void show 刷屏 void an ...
基於C語言實現貪食蛇小遊戲
廢話不多說,上 分析 1.資料分析 基本資料成員分析 1.1座標屬性 1.typedef struct pointxy 2.mypoint 1.2蛇屬性 1.2.1蛇的節數 1.2.2蛇初始化的方向 struct snake snake 1.3食物屬性 1.3.1食物的座標 1.3.2食物的分數 1...