資訊內(nèi)容
Scratch第四十五講:微信跳一跳(二)
這一講CC哥對跳一跳的程序進行一下完善,主要是增加三種特效,以使這個程序更像微信中的小程序。
讓我們先看一下這三個特效是什么:
大家看到了吧,這三種特效分別是:
1:當(dāng)按下空格鍵的時候,跳棋周圍出現(xiàn)了一些小點,向跳棋飛去,看上去很有積蓄能量的效果。
2:當(dāng)跳棋落到下一個臺子上時,會有一個效果光圈擴散開去。有一個落地的效果。
3:每成功一跳,跳棋旁邊就有一個得分的效果。
這個游戲是不是感覺效果更像微信里面的跳一跳啦?
讓我們來講一下這三個效果怎么做到的:
一:蓄能的小點點特效:
首先增加了一個角色來做這個特效。
角色的造型有兩個,一個白點,一個黑點。
這段代碼的設(shè)計邏輯和用到的命令主要是:
1:當(dāng)按下空格鍵之后,那么就在圍繞著跳棋的一定距離的區(qū)域,隨機產(chǎn)生一些小點。(方向,隨機數(shù),克隆)
2:這些小點產(chǎn)生以后,開始向跳棋移動。(方向、移動)
3:當(dāng)空格鍵松開,或者小點碰到跳棋就消失。(條件判斷組合)
我們直接看一下代碼:
這段就是對小點的初始值進行設(shè)定,大小合適,設(shè)置成半透明來增加效果。另外變量i是用來控制設(shè)置小點的數(shù)量。
下面這段程序是關(guān)鍵:
大家注意到?jīng)]有,我并沒有用事件里面的當(dāng)按下“空格鍵“的命令,為什么呢?
如果大家對這個有疑問,可以重新回看我之前最早的一講:Scratch第十三講:按鍵的技巧,在這一講里,CC哥專門講了按下一個鍵,跟長按一個鍵在scratch里面是有區(qū)別的。所以在這次的設(shè)計里面,我就用了長按的技巧。希望大家復(fù)習(xí)一下。
這段程序的循環(huán)里判斷兩個條件:第一空格鍵被按下,第二小點數(shù)量不超過10個。如果符合這個條件那么就在距離跳棋40~60步的這一圈內(nèi),隨機克隆10個小點,黑白小點交替克隆。為了保證小點分布的隨機性,我們先讓小點每次在克隆前,先回到跳棋上,然后隨便在0~360度之間選一個方向,然后移動到克隆區(qū)域內(nèi),進行克隆。克隆完畢后還返回跳棋上,再重新選擇隨機方向,移動然后克隆。

這一段程序如果用了按下空格的命令,就會出現(xiàn)各種各樣的錯誤。CC哥自己做的時候一開始也忽略了,搞出一大堆bug。大家可以自己試試,看看為什么會出現(xiàn)這個錯誤。
這部分程序就是每個克隆體出現(xiàn)后,向跳棋移動的代碼。

CC哥也犯低級錯誤,忘了放等待命令了,老看不到小點自己還奇怪了一下。我發(fā)現(xiàn)也有很多朋友在問問題的時候也老問這類問題,為什么我寫了代碼,但是執(zhí)行沒有反應(yīng)呢?90%都是忘了放等待命令啦
二:光圈的特效
這個CC哥也增加了哥角色。
角色的造型是CC哥用畫筆畫的,然后把白背景用scratch里面的繪圖效果處理掉了。

CC哥現(xiàn)在很多角色就自己順手做一下,其實也不用很復(fù)雜,一般畫筆和scratch造型里面自帶的一些工具就夠用了,只要細(xì)心點就行。用的最多的就是摳圖和去白背景,摳圖大家可以試試美圖秀秀,超級方便。有時間CC哥專門給大家做一講。
代碼不復(fù)雜,首先出現(xiàn)環(huán):
移動到跳棋的位置。大小設(shè)定到合適的大小,用半透明來體現(xiàn)效果。
然后用循環(huán)來做漸變的特效。一是逐漸變大,二是逐漸變淡直到消失。
注意別忘了在循環(huán)里面放等待命令,否則你什么都又看不見了。
這段程序的關(guān)鍵是什么時候開始執(zhí)行。
也就是說需要用到消息和接收到消息的功能了,因為我們是在跳棋跳成功后才執(zhí)行效果,所以應(yīng)該放在跳棋角色的代碼里面,放在跳成功之后那一段命令中。
我們用了廣播并等待的命令,而不是廣播的命令,大家自己試的時候看看有什么區(qū)別。如果大家認(rèn)真看過CC哥每一講的話,應(yīng)該就知道區(qū)別。
三:得分的特效
這個相對簡單,首先做了個得分的角色。這個也是用造型工具里面文本功能直接寫的。
大家注意一下,這個角色的造型不能放在中心點,要靠右上方,因為你希望在跳棋邊上出現(xiàn)得分,而不是在跳棋上出現(xiàn)得分。
這個特效就是三部分:
1:逐漸變大。
2:逐漸向上走。
3:逐漸消失。
程序就不解釋了,別忘了放等待命令哦。
這個跟剛才一樣,就是在什么時候出現(xiàn),我把它放在了下一步起跳前出現(xiàn)。
好了,今天的講座就到這里,關(guān)鍵是大家學(xué)習(xí)的時候,不能光看一遍,如果有條件一定要照著思路自己做一遍。如果做的有問題,再參考CC哥的代碼看一看。編程就是同一個效果可以用很多方法實現(xiàn),所以不一定老師的就是最好的。經(jīng)驗一定是要自己慢慢積累的.
聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過郵件及時和我們聯(lián)系刪除

- 上一篇
雙語繪本-Something from Nothing 總會有辦法
關(guān)注“愛英語親子共讀“,更多故事等你讀 播種與收獲本就不在同一個季節(jié)。作為媽媽,我時刻提醒自己,只問耕耘,不問收獲。養(yǎng)成一個好習(xí)慣,每天進步一點點! 錄制:Yimo(小學(xué)二年級),?Yona(媽媽)
- 下一篇
Scratch兒童編程是啥?附:入門案例詳解
作為一個“誤入歧途然后將錯就錯”的偽理工男來說,計算機編程是被大學(xué)專業(yè)逼著開始學(xué)的,接著讀研、畢業(yè)參加工作,由于工作原因(數(shù)據(jù)處理分析)不得不使用編程工具,畢竟幾句簡潔的計算機指令就能讓電腦沒日沒夜地干活,這種提高效率的工作方式,我們不用別人也會用。所以,不管喜不喜歡,中不中意,甜七爸這