今天來寫一個(gè)scratch的小游戲悦施,推箱子。
需要準(zhǔn)備的素材去团,就是一個(gè)自己喜歡的背景抡诞,然后從角色庫里找到一個(gè)角色作為主角來推箱子穷蛹,再就是自己畫兩個(gè)正方形當(dāng)做箱子來用,當(dāng)然昼汗,也可以自己去網(wǎng)上找好看的素材肴熏。
下面就是我設(shè)計(jì)的頁面,其中紅色的是要被推動(dòng)的箱子顷窒,黑色的是它的目的地蛙吏,我們就是要把這個(gè)紅箱子推到黑箱子的位置,然后兩個(gè)箱子會(huì)出現(xiàn)在隨機(jī)位置鞋吉,需要重新開始推動(dòng)鸦做,每推過去一個(gè),就可以得一分谓着。
首先要寫我們?nèi)宋锏某绦蚱糜眨宋锏某绦虮容^簡單,就是按下上下左右的按鍵赊锚,讓角色往對應(yīng)的方向移動(dòng)治筒,比如說按下上移鍵,就面向上方舷蒲,然后移動(dòng)20步耸袜。
要注意,用這種方式移動(dòng)角色阿纤,會(huì)出現(xiàn)一個(gè)問題句灌,那就是角色會(huì)任意旋轉(zhuǎn),顯得很滑稽欠拾,所以設(shè)置旋轉(zhuǎn)方式為左右翻轉(zhuǎn)胰锌,然后角色一開始要移到一個(gè)起點(diǎn)位置,我設(shè)置的是畫面中心店藐窄,也就是坐標(biāo)(0资昧,0)的位置。
接下來就是目的地的任務(wù)荆忍,目的地要在點(diǎn)擊小綠旗的時(shí)候出現(xiàn)在一個(gè)隨機(jī)的位置格带,顯示出來,然后去判斷碰沒碰到紅箱子刹枉,如果碰到了叽唱,那么就藏起來,換一個(gè)位置重新出現(xiàn)微宝。
當(dāng)點(diǎn)擊小綠旗的時(shí)候棺亭,要把他移動(dòng)到最后面,避免擋住紅箱子蟋软,然后建立一個(gè)變量镶摘,叫做得分或者分?jǐn)?shù)都行嗽桩,因?yàn)閯傞_始游戲,還沒有得分凄敢,所以需要把得分設(shè)為0碌冶,然后移到初始位置,為了避免他出現(xiàn)在舞臺(tái)邊緣涝缝,一半漏出來扑庞,一半藏起來的情況,我們需要看一下這個(gè)角色的x坐標(biāo)在什么范圍內(nèi)拒逮,y坐標(biāo)在什么范圍內(nèi)嫩挤,然后根據(jù)這個(gè)范圍隨機(jī)生成坐標(biāo),然后設(shè)置完這些就可以讓他顯示出來了消恍。
設(shè)置完以后,就是做一個(gè)判斷以现,如果碰到紅箱子狠怨,那么就隱藏,將得分增加邑遏,同時(shí)要發(fā)送一個(gè)消息給紅箱子佣赖,讓他也隱藏重新?lián)Q位置,過一秒以后记盒,讓目的地移到隨機(jī)位置憎蛤,然后重新顯示出來。
再然后就是我們要推動(dòng)的紅箱子的任務(wù)纪吮,紅箱子要實(shí)現(xiàn)人物朝哪個(gè)方向推俩檬,就朝哪個(gè)方向走,那就是做一個(gè)判斷碾盟,如果碰到了人物棚辽,那么就面向人物的方向,移動(dòng)20步冰肴,還有一個(gè)就是點(diǎn)擊小綠旗的時(shí)候屈藐,箱子要顯示出來,并且設(shè)置一個(gè)初始的坐標(biāo)熙尉,作為游戲開始的箱子位置联逻。
紅箱子還有一個(gè)任務(wù),就是接收到目的地發(fā)來的消息检痰,需要隱藏起來包归,然后換到一個(gè)隨機(jī)的坐標(biāo)位置,重新進(jìn)行顯示攀细。
寫到這箫踩,基本的程序就完成了爱态,當(dāng)然還可以添加一些程序讓他更加有趣一些,比如箱子可以設(shè)置多個(gè)造型境钟,每推完一個(gè)就變一次造型锦担,或者加上背景音樂,或者隨著得分的變化慨削,加上時(shí)間限制洞渔,得分越高,給的時(shí)間就越少缚态,然后超時(shí)沒推到目的地算游戲失敗等等磁椒,都可以去創(chuàng)意設(shè)計(jì)。
以下是完整程序: