資訊內容
少兒創意編程scratch初級游戲--翻翻樂
話不多說,點擊藍字關注吧~

可愛的小朋友們,今天我們來編一個“翻翻樂”小游戲吧。
游戲介紹:翻翻樂是一款考驗記憶力的小游戲哦!游戲中玩家只要找出兩張相同圖片就能將其消除,消除所有圖片就算勝利哦。

翻翻樂
效果圖
點擊邊框調出視頻工具條玩家通過操控錘子擊打洞里冒出來的地鼠來得分。
變量
在這個游戲中,我定義了4個變量:
(1)已翻卡牌編號:這個變量表示第一次翻起來的卡牌編號,它是隱藏變量。
(2)第幾次翻牌:這個變量表示第1次還是第2次翻卡牌,它是隱藏變量。
(3)猜對次數:這個變量表示猜對了幾次。如果猜對4次,表示這一局游戲結束,它是隱藏變量。
(4)行數:這個變量用于創建列表,它是隱藏變量。
還定義了兩個列表:
臨時列表:這個列表用于生成“卡牌1”到“卡牌8”的順序列表。
卡牌列表:這個列表用于將卡牌順序隨機打亂,這樣在每一局游戲中,卡牌的排列順序都是不一樣的。
背景

圖1背景圖
選擇黑色幕布作為舞臺背景
“背景”腳本

圖2背景腳本
背景只有一段腳本,當接收到“開始游戲”時,刪除臨時列表的全部項目。然后將行數設置為1。因為有8張卡牌,所有重復執行8次,將“卡牌”和“行數”連在一起,形成一個字符串,加入臨時列表中,然后把“行數”增加1。通過循環,我們將字符串“卡牌1”到“卡牌8”順序插入到“臨時列表”中。
接下來刪除“卡牌列表”中全部項目,然后進入循環,直到“臨時列表”的項目數為0才會跳出循環。在循環體中,首先從1到“臨時列表“的項目數之間取一個隨機數,并將其賦值給變量“行數”。然后將“臨時列表”的第“行數”項的值加入到“卡牌列表”中,并且將“臨時列表”的“行數”項刪除。通過這3條語句,可以從“臨時列表”中隨機選擇一條記錄,將其插入到“卡牌列表”中,然后從“臨時列表”中刪除這條記錄。經過8次循環,“臨時列表”中的數據都遷移到了“卡牌列表”中,只是順序被打亂了。
之后,廣播“排列卡牌”消息,然后初始化,將變量“已翻卡牌編號”設置為空,將變量“第幾次翻牌”設置為1,將變量“猜對次數”設置為0
角色


圖3角色圖
這個游戲一共9個角色,分別是8張卡牌和開始按鈕
第1個角色:開始

圖4開始圖
這是開始按鈕,也是用來提示沒有選中的提示框。造型如圖4,前2個是按鈕,最后一個是提示信息。
為這2個角色增加了2個聲音,分別表示沒選中所對應的聲音“沒選中”和全部選中后的聲音“成功”。聲音是從本地上傳的
“開始”腳本展示


圖5開始腳本
第一步:當綠旗被點擊時,將造型切換為“開始”造型,顯示角色。
第二步:當點擊角色時,如果造型是“開始”或“再來一局”按鈕,廣播“開始游戲”,隱藏角色。
第三步:當接收到“開始游戲”時,在條件“猜對次數=4”成立前一直等待。(因為有8張卡牌,兩兩匹配,最多會匹配成功4次)
當條件成立時,播放“成功”聲音,之后將猜對次數重設為0,造型切換為“再來一局”按鈕,然后顯示角色。
第四步:當接收到“錯誤”消息時,播放“沒選中”的聲音,并且將造型切換為“沒選中”,顯示角色1s后,隱藏信息。
如何確定卡牌的放置位置
卡牌1和卡牌2是1對,卡牌3和卡牌4是1對,卡牌5和卡牌6是1對,卡牌7和卡牌8是1對。如果是順序排放,卡牌1到卡牌4在第1行的1至4列,卡牌5到卡牌8在第2行的1至4列。
為了讓游戲好玩,我們會讓卡牌隨機排列。例如,讓卡牌1到了第2行的第4列,而卡牌2到了第1行的第4列;卡牌3到了第2行的第2列,而卡牌4到了第1行的第3列;卡牌5到了第1行的第2列,卡牌6到了第2行的第1列;卡牌7到了第1行的第1列,卡牌8到了第2行的第3列。
第1行卡牌的y坐標是70,第2行卡牌的y坐標是-70.
第1列卡牌的x坐標是-160(-260+100),第2列卡牌的x坐標是-60(-260+200),第3列卡牌的x坐標是40(-260+300),第4列卡牌的x坐標是140(-260+400)
第2個角色:卡牌1

圖6卡牌1
卡牌1腳本展示

第一步:當接收到“排列卡牌”消息,首先顯示角色,將造型切換為“反面”,將變量“計數器”設置為1。然后循環8次,如果變量“計數器”最初為1,那么條件“卡牌1=卡牌列表的第計數器項”就是比較“卡牌列表”的第1項內容是否等于字符串“卡牌1”。如果不滿足條件,也就是“卡牌列表”的第1項內容不等于字符串“卡牌1”,就會將“計數器”加1。然后進入下一輪循環,直到找到“卡牌列表”中內容等于字符串“卡牌1”的那一項。這一項的序位數,就是變量“計數器”的值。然后設置該角色的位置。通過判斷變量“計數器”的值,來獲取信息。如果“計數器”的值<5,表示在第一行,否則在第二行。設置好該角色位置后,會停止當前腳本。

第二步:當角色被點擊時,比較卡牌。如果變量“第幾次翻牌”等于2并且變量“已翻卡牌編號”等于字符串“卡牌1”,表示是第2次翻牌且翻的是同一張牌,那么就沒有必要進行比較,所以停止腳本。
否則,將卡牌造型切換為“正面”,等待05s,再將造型切換為“反面”造型。目的是讓玩家能夠看到卡牌的內容。
如果滿足條件“第幾次翻牌=1”,將“已翻卡牌編號”設置為字符串“卡牌1”,將變量“第幾次翻牌”設置為2。
否則,要判斷“已翻卡牌編號=卡牌2”,如果成立,表示匹配成功,廣播“第1對正確”消息,并將“猜對次數”加1;如果不成立,表示沒有匹配成功,廣播“錯誤”,并將變量”第幾次翻牌“重新設置為1。

第三步:當接收到”第1對正確“消息后,播放聲音"ya",并將角色切換為翻卡狀態0.5s,表示匹配成功,然后隱藏角色。
圖7卡牌1腳本
第3個角色:卡牌2

圖8卡牌2
卡牌2腳本展示
卡牌2和卡牌1的腳本基本一致,這里把差異地方介紹一下。

設置卡牌2的擺放位置,這里比較的是字符串“卡牌2”。

點擊角色,比較卡牌。注意,第1次翻牌,要將變量“已翻卡牌編號”設置為字符串“卡牌2”。做卡牌對比時,這里要將變量“已翻卡牌編號”和字符串“卡牌1”比較。

圖9卡牌2腳本
第4個角色:卡牌3
卡牌3到卡牌8也基本和卡牌1與卡牌2的腳本一致,只是在擺放的位置、比對卡牌內容方面有所不同,這里不再贅述,只是把腳本列出來。

圖10卡牌3
卡牌3腳本展示



圖11卡牌3腳本展示
第5個角色:卡牌4

圖12卡牌4
卡牌4腳本展示



圖13卡牌4腳本
第6個角色:卡牌5

圖14卡牌5
卡牌5腳本展示



圖15卡牌5腳本
第7個角色:卡牌6

圖16卡牌6
卡牌6腳本展示



圖17卡牌6腳本展示
第8個角色:卡牌7

圖18卡牌7
卡牌7腳本展示



圖19卡牌7腳本展示
第9個角色:卡牌8

圖20卡牌8
卡牌8腳本展示



圖21卡牌8腳本展示

好了,翻翻樂的游戲做好啦!自己試著玩一玩,看看游戲效果吧!
聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除
