Flash AS以貪吃蛇小游戲為實例學習類編程_Flash教程
推薦:Flash 動畫人物角色行走的幾種實現(xiàn)方式關于角色的行走,是動畫中常見的場景了,也是flash制作動畫應該把握的一項基本內容,本文從三個方面給大家分別闡述一下,并且給大家分別演示和提供演示的源文件
使用類編程思路清楚,可讀性強,本例通過編寫貪吃蛇展示類的基本應用。最終效果如下:
:本文中全部的Fla源碼在文章最后全部打包供大家下載研究學習使用。
看不懂鏈接名等內容的,可以看我的另一個教程“ 簡單射擊游戲教程 ”,或許有所幫助。全部源文件如下:貪吃蛇—類編程.rar
第一步:“蛇”類初始化
新建fla文件,同目錄下新建as文件,取名Snake.as,類名必須和文件名相同。fla文件中新建蛇節(jié)點元件,鏈接名為node,第一幀和類中寫入相應代碼。
第一步:“蛇”類初始化.rar
第二步:蛇的移動
寫個move方法,在init方法中設置時間間隔。
第二步:蛇的移動.rar
第三步: 鍵盤改變移動方向
寫個changeDirection方法,在主場景第一幀用鍵盤事件調用該方法,控制蛇的方向。
第三步:鍵盤改變移動方向.rar
第四步:增加節(jié)點
寫個addNode方法,新節(jié)點產生在蛇尾即nodes[length - 1]的位置上,暫時加個按鈕調用addNode方法,觀察結果。
第四步:增加節(jié)點.rar
第五步:碰撞判定
修改move方法,假如頭節(jié)點與蛇身其他部位重合,clearInterval刪除move的定時調用。同時changeDirection也要加多個判定,不能讓頭節(jié)點和第二節(jié)點重合,加多這個判定是為了防止一個Bug的產生,一些貪吃蛇程序并沒有注重到這點。這個Bug產生原因如下:
假設蛇向右移動,是不能進行向左改變方向,但由于move方法是定時調用的,比如每300毫秒一次,所以在這300毫秒內可能進行了多次快速按鍵。第一次按向下,蛇的xDirection和yDirection改變?yōu)橄蛳拢玬ove的執(zhí)行時間沒到,又緊接著按左,因為蛇方向在數(shù)據(jù)上已經改變,所以捕捉不到不能向左的判定,快速按鍵造成蛇反向移動的Bug就產生了,加個上述判定就好了。
第五步:碰撞判定.rar
第六步:食物類編寫
新建Food類,注重用extends繼續(xù)MovieClip,這樣元件才能鏈接它,在主場景中新建食物元件,鏈接Food類,實例名為food,拖入場景。在Food中寫入appear和disappear方法,做兩個臨時按鍵調用它們觀察效果。
第六步:食物類編寫.rar
最終完成:吃食物
Food中定時調用appear,并通過setSnake引入Snake實例snake,判定蛇身坐標不讓新食物與之重合。Snake中通過setFood引入Food實例food,判定是否吃到食物,做出相應處理,如食物消失,增加蛇節(jié)點,改變setSnake。場景第一幀也要setSnake引入蛇頭。
以后還要增加新功能,如阻礙物設置等,都可以通過改變as文件完成。雖然類編程比直接控制影片較為繁瑣,但由于使用了面向對象,以后再對程序進行完善時都可依照對象行為思考,每個方法就是對象的每個行為,什么行為需要改變就找對應的方法修改,思路清楚。
以上全部RAR文件點擊這里下載源文件分享:Flash AS 制作生化危機游戲的簡單嘗試這個教程先給大家做一個游戲中的場景,只是簡單的嘗試著做做!模板無憂友情提醒:由于該教程中演示Flash動畫較多,所以打開本頁后速度會慢些甚至影響瀏覽器
- 相關鏈接:
- 教程說明:
Flash教程-Flash AS以貪吃蛇小游戲為實例學習類編程。