--- title: 懷舊遊戲機-Microsoft_詳解 --- # Barrel Dodger_詳解篇 ### 積木快速瀏覽 - 當啟動時 - 設置地板及角色 - 初始化角色位置為直欄橫列(1, 5) - 定義重力加速度:ay=500 ![](https://i.imgur.com/DVy266f.png) - 按下 A 鍵 - 判斷如果角色當前狀態是站立在地板上才可以起跳 - 以速度vy=-200向上移動 ![](https://i.imgur.com/UAA54H7.png) - 障礙物設置 - 每2秒出現一個障礙物 - 障礙物平行向左邊角色靠近:(vx, vy)=((-100)~(-80), 0) - 障礙物初始位置為直欄橫列(9, 5) - 當未碰到障礙物則視為跳過,得分+1 ![](https://i.imgur.com/T25nF2N.png) - game over - 當角色與障礙物重疊,遊戲結束,自動判定為輸 ![](https://i.imgur.com/NUtZIVf.png) --- ### 步驟詳細說明 ###### tip:可以搭配PPT一起看或直接跟著實作 #### ==Step 1 場景設置== - 左下角設定大小合適於遊戲機畫面(10:8) - 以Aquatic主題中的紫色色塊(PPT影片),覆蓋畫面下方兩層 - 以模塊化選取覆蓋區(可以讓角色站在上面,防止角色穿透地牆) - 右下方點擊完成保存 #### ==Step 2 選擇角色== - 從素材庫中直接選一個人物 #### ==Step 3 角色定位== - 定義角色位於直欄橫列(1, 5)的位置 - ![](https://i.imgur.com/38qfFRD.jpg) #### ==Step 4 鍵位設定== - 當按下 A 控制鍵,要使角色往上跳,故y(vy)=-200 ###### *在這裡往上往左以負號表示,往下往右則為正,橫軸為x,縱軸為y* ###### *物理意義上,速度的正負號代表方向,所以這邊設置-200,意思是以速度200向上移動* #### ==Step 5 設置重力加速度== - 設置角色y(ay)=500 ###### *角色會因為 A 鍵而忘上跳,但要實現跳的動作,還得設置一個加速方向為正的加速度,使物體一旦離地就會自動因為這個加入度而往下掉回地面* #### ==Step 6 新增條件判斷== - 以一個「判斷角色是否在地上」的邏輯包住往上跳的積木 ###### *當使用者按下A鍵,角色狀態要是站在地面上的才可以往上跳* ###### *所以當前手遊中標榜可以輕功,其實就是沒有這個限制,這樣可以使角色在空中也可以再跳躍到更高的地方* #### ==Step 7 新增障礙物== - 每兩秒鐘遇到一個障礙物 - 繪製障礙物(8:8大小繪製) >> PPT附有繪製影片 - 這邊須注意的是:內建障礙物繪製圖示教學跟小燈泡提示的不一樣,但不影響結果 - 設置障礙物移動速度為(vx, vy)=(100, 50) ###### *控制障礙物平行向著角色飛過來* #### ==Step 8 設計障礙物動向== - 速度vx採-100~-80隨機取數,vy設置0,使障礙物平行移動 ###### *這邊障礙物要向左邊的角色靠近,所以速度方向為負* #### ==Step 9 設置障礙物的起始位置== - 定義障礙物起始位於直欄橫列(9, 5)的位置 #### ==Step 10 設計得分機制== - 當經過一個障礙物便視為跳過,得分+1 #### ==Step 11 判定輸的情況== - 當角色和障礙物重疊時,代表碰到障礙物,則遊戲結束,玩家輸