結果預覽
請依照下列步驟進行:
(一) 完成檔案下載
1. 請下載檔案 [gigi_game.zip]
2. 解壓後在 Flash CS5 中開啟
(二) 事先準備
1. 畫面大小為 550x400
2. 需要的『按鈕』元件,分別為開始、再玩一次、結束感應區及路線
3. 將各元件佈置在圖層上
(三) 練習按鈕元件的製作
1. 按鈕元件,繪製並轉換為元件
2. 撰寫按鈕元件的程式
3. 了解事件:CLICK、MOUSE_OVER 事件發生之程式
(四) 規劃各影格的作用
1. 影格1:起始畫面 (遊戲還沒有開始)
2. 影格2:遊戲正在進行中
3. 影格3:遊戲失敗的畫面
4. 影格4:遊戲勝利的畫面
(五) 解說
1. 分別在各影格加入所需的元件
2. 設定程式必須的元件的實體名稱:btn、route、end、again
3. 在各影格內撰寫程式
(1) 影格1
=====================================================
stop();
btn.addEventListener(MouseEvent.CLICK, gamestart);
function gamestart(event:MouseEvent): void {
nextFrame();
}
=====================================================
(2) 影格2
=====================================================
route.addEventListener(MouseEvent.MOUSE_OVER, gamelose);
function gamelose(event:MouseEvent):void {
nextFrame();
}
end.addEventListener(MouseEvent.MOUSE_OVER, finish);
function finish(event:MouseEvent):void {
gotoAndStop(4);
}
=====================================================
(3) 影格3
=====================================================
again.addEventListener(MouseEvent.CLICK, restart);
function restart(event:MouseEvent):void {
gotoAndStop(1);
}
=====================================================
=====================================================
again.addEventListener(MouseEvent.CLICK, restart);
function restart(event:MouseEvent):void {
gotoAndStop(1);
}
=====================================================
(4) 影格4
=====================================================
again.addEventListener(MouseEvent.CLICK, restart);
=====================================================
=====================================================
again.addEventListener(MouseEvent.CLICK, restart);
=====================================================
(完成檔案 gigi1.fla)
1. 增加背景圖
2. 修改路徑
3. 增加障礙物 (進階)
(1) 增加風扇元件,並設定實體名稱『fan_mc』
(2) 程式碼─讓風扇轉動及碰觸風扇時結束 (影格2)
=============================================
var angle:Number = 0.0;
fan_mc.addEventListener(MouseEvent.MOUSE_OVER, gamelose);
addEventListener(Event.ENTER_FRAME, rotate);
function rotate(Event)
{
angle += 1;
fan_mc.rotation = angle;
}
=============================================
(3) 程式碼─解除 ENTER_FRAME的事件 (在影格2中需停止處)
=============================================
removeEventListener(Event.ENTER_FRAME, rotate);
=============================================
教材參考:Flash CS4 動畫與遊戲製作必修技 (碁峯)
http://b418mm.blogspot.tw/2011/11/blog-post_9699.html 妳好,我是在上次youtobe 上留言的學生,可以請問一下你這個如何把滑鼠功能套在三軸上,能給一點方向嗎?? 謝謝
回覆刪除是要利用三軸取代滑鼠的功能吧。
回覆刪除可以透過 Arduino 來取得三軸的資料,而 Arduino 也有與 flash 整合的 library,然後重寫程式,如果是這個遊戲,不太可能直接套用,因為程式方法沒沒有取得滑鼠的位置值,故以替換滑鼠的值為三軸的值並沒有幫助,應該是要重新寫吧。
再來,若是要開發這類應用,我會選擇用 Processing 開發遊戲程式,而不是用 flash。