App Inventor學習記錄28,十分鐘自製小遊戲-2,笨蛋柔抓嘟哥

這個小遊戲算是複古風格,利用上下左右按鈕控制笨蛋柔的方向,只要笨蛋柔碰到嘟哥的話,就會得一分。看在 30秒之後,總共得幾分。

記錄一下:
App Inventor學習記錄28,十分鐘自製小遊戲-2,笨蛋柔抓嘟哥


先來看一下遊戲進行的畫面。

簡單的說明一下,這個遊戲的流程。
鼻孔塞了一個耳塞的是笨蛋柔,頭上寫著男子漢的是嘟哥,用下方的上、下、左、右四個按鈕,控制笨蛋柔的方向去追嘟哥,嘟哥每一次被碰到的話,就會得一分,然後,嘟哥就會閃現到隨機位置,往不同的方向跑走。


遊戲部份的畫面配置是這樣。

主要就是一個畫布裡頭,放了 2個圖像精靈。
控制按鈕層這個水平配置裡,改了 4個按鈕,4個按鈕都套上圖片。
另外 2個水平配置裡頭就是放標籤、得分這些資訊。


遊戲光只有遊戲畫面的話,有點怪,所以這次加上遊戲開頭畫面和結束畫面的配置。
這個是遊戲開始畫面。

背景修改一下,放進 1個標籤和 1個按鈕就完成。


接著是遊戲結束畫面

同樣是 1個標籤和 1個按鈕。


所有的程式碼是這樣子的,由於加了開始和結束畫面,所以看起來有點長。


第 1段的程式說明:

設定 2個變數,總得分變數的預設值是 0,遊戲時間變數的預設值是 30。

when Screen1.Initialize當程式初始化的時候:
把遊戲開始畫面這一個垂直配置的可見性設定為真。
把遊戲畫面這一個垂直配置的可見性設定為假。
把遊戲結束畫面這一個垂直配置的可見性設定為假。


第 2部份的程式碼說明:

當遊戲開始按鈕被按下的時候:
把遊戲開始畫面的可見性設定為假
把遊戲畫面的可見性設定為真
把計時器啟動
把哥哥這個圖像精靈的指向,設定為 1~100度之間。
把哥哥這個圖像精靈的速度,設定為 30。
把 global遊戲時間,設定為 30。
把得分顯示的文字的值,設定為 global總得分。


第 3部份的程式碼說明:

接著,我們要做的是設定按下、上、下、左、右按鈕的時候,笨蛋柔這個圖像精靈的移動方式。這個部份是重覆的,變化的部份就只圖像的指向性以及速度。所以這裡我們來做一個小程式。

拉一個小程式方塊出來,加入 2個參數,一個叫移動方向,一個叫移動速度。
把笨蛋柔這個圖像精靈的指向性,設定為 get 移動方向。
把笨蛋柔這個圖像精靈的速度,設定為 get 移動速度。


第 4部份的程式碼說明:

當上這個按鈕被按下之後,我們呼叫剛剛做好的這個程式。
把移動方向的參數,設定為 90。
把移動速度的參數,設定為 20。

這裡補充一下角度跟方向的關係
往東是 0度,往北是 90度,往西是 180度,往南是 270或 -90度

按下下、左、右按鈕的寫法是一樣的。


第 5段程式碼說明:
當計時器開始計時的時候:

加入一個流程判斷式:
如果 global遊戲時間等於 0的時候。
把計時器的啟用計時,設定為假。
把遊戲畫面這個垂直配置,設定為假。
把遊戲結束畫面這個垂直配置,設定為真。
把得分顯示的值,設定為 global總得分。
把 Label 3的值,設定為 global總得分。

如果 global遊戲時間不等於 0的時候。
把 global遊戲時間,設定為每秒減1
把時間顯示的值,設定為 global 遊戲時間。
把遊戲倒數秒數的值,設定為 global 遊戲時間。


第 6段的程式碼說明:

當哥哥這個圖像精靈,碰到邊界的時候:
就叫呼叫反彈程式,讓它反彈。


第 7段的程式碼說明,

當哥哥這個圖像精靈,碰到別的其它元件的時候:
呼叫圖像精靈的移動程式,把圖片精靈的 x和 y值,設定為隨機數。
把哥哥這個圖像精靈的指向性,設定為隨機數。
把 global總得分的值,設定成 global總得分的值加1。
把得分顯示的值,設定成 get global總得分的值。


第 8部份的程式碼說明:

當再抓一次按鈕被按下之後:
把遊戲結束畫面這個垂直配置的可見性,設定為假。
把遊戲開始畫面這個垂直配置的可見性,設定為真。
把 global總得分設定為 0
把哥哥這個圖像精靈的 x及 y值設定為隨機值。
把哥哥這個圖像精靈的速度,設定為 0


這次的移動方法,是用按鈕的方式在做,但是現在的手機遊戲沒有人這樣做。但用按鈕來移動只是其它一種使用方法,重點是怎麼來搭配使用。

這次的 aia檔的下載連結如下:
點我下載 NO_28_Little_Game_2.aia

之前介紹過的一些 appinventor的使用記錄,都整理在下面這個頁面上了。
APP INVENTOR學習記錄及資源整理頁面

發佈留言