以前有一款非常熱門的小游戲“是男人就堅持100秒”,這游戲是一場快節(jié)奏的躲避游戲,玩家觸摸屏幕移動手指操控一艘宇宙飛船,避免飛船撞擊隕石,如果飛船不小心撞到了隕石,游戲結(jié)束,如果在100秒后還能活著,恭喜你被視為一個真正的男人,開始挑戰(zhàn)吧!第一次玩這個游戲時,說實話我還不相信這個游戲的簡介,沒想到上手玩了好幾次都是堅持到十多秒就失敗了(圖1)。
這款游戲的制作難度不高,用到的知識點也是學(xué)過的,可以用Scratch編程完成同款游戲“躲避小球”。在游戲中我們用黃色的小球代替隕石,用火箭代替宇宙飛船,通過鼠標移動操作對火箭進行閃躲。
障礙物小球數(shù)量非常多,并且位置隨機,移動方向隨機,小球碰到舞臺邊緣會反彈??刂菩∏蛐枰每寺『碗S機方向。當(dāng)程序運行開始后,小球是處于隱藏的狀態(tài),當(dāng)觸發(fā)游戲開始廣播后,小球隨機出現(xiàn)在舞臺中,向隨機方向運動。我們通過重復(fù)執(zhí)行對小球的步數(shù)進行控制(如果玩家想提高小球的移動速度,可以將移動的步數(shù)增加,這里我選取了3到5步)。
同時在收到游戲開始的廣播后,執(zhí)行克隆,注意設(shè)置一定的等待時間0.2秒,如果沒有等待時間會有很多小球蜂擁而出,玩家連存活的機會都沒有。為了控制舞臺中小球的總數(shù),當(dāng)小球重復(fù)碰到舞臺邊緣三次后就自動刪除,不再出現(xiàn)了(圖2)。
火箭的代碼相對簡單一些,游戲開始時是隱藏狀態(tài),當(dāng)收到游戲開始的廣播后,切換到火箭的形態(tài)。跟隨鼠標移動。當(dāng)火箭碰到小球(障礙物)時游戲結(jié)束。舞臺中心顯示Game over,并且停止所有腳本(圖3)。
為了顯示游戲所用的時間我們還需設(shè)置一個計時廣播,每過一秒,時間變量增加一,直到游戲結(jié)束,玩家可查看堅持的時間(圖4)。
這樣一款好玩的游戲你還不來試一試嗎?大家在完成游戲后還可以改進一下,增加一個變量設(shè)置成滑桿的形式控制小球的移動速度的快與慢。