国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » scratch編程資訊

資訊內容

Scratch第六講:打地鼠的游戲

極客小將2021-03-22-
首先介紹一個關鍵概念:變量 變量是什么,變量是一段有名字的連續存儲空間。在源代碼中通過定義變量來申請并命名這樣的存儲空間,并通過變量的名字來使用這段存儲空間。 變量是程序中數據的臨時存放場所。在代碼中可以只使用一個變量,也可以使

首先介紹一個關鍵概念:變量

變量是什么,變量是一段有名字的連續存儲空間。在源代碼中通過定義變量來申請并命名這樣的存儲空間,并通過變量的名字來使用這段存儲空間。 變量是程序中數據的臨時存放場所。在代碼中可以只使用一個變量,也可以使用多個變量,變量中可以存放單詞、數值、日期以及屬性。

算了,還是說人話吧:

比如有人問你:小妹妹,你今年多大啦?你會回答:8歲啦!然后過了一年再有人問你多大啦,你會回答:9歲啦!你看,你的年齡就是一個變量,隨著時間是會增加的。

如果有人問你生日是哪天呀?你說:8月1日!過了幾年還有人問你生日呢?你還是會說:8月1日。這就是常量,不會隨著時間變化的。

程序分析:

打地鼠的游戲里都有什么角色呀? 有洞!有地鼠!有錘子!(角色)

那這些角色都在干什么呀?地鼠從洞里面冒出來!錘子去砸地鼠!(事件)

你怎么知道地鼠從哪里冒出來呀?我也不知道!隨機的!(關鍵算法)

https://cdn.china-scratch.com/Editor/2020-09-27/5f701b4a776d5.gif

既然分析清楚啦,那就開工吧!

創建角色

首先,新建背景和角色,從背景庫/角色庫中分別選擇森林和地鼠、錘子

1.角色:洞
upload/article/images/2021-03-22/918de506aac125ad4d08308f9f6092a7.jpg

繪制一個新角色:洞,其實就是一個自己畫的橢圓,然后用黑色填充,沒啥特殊的。


基本概念:圖層

upload/article/images/2021-03-22/ac1a7d79441b7bac437aba9df5ee38d2.jpg

似乎“洞”與“地鼠”是可以相互覆蓋,沒錯,這就是圖層的概念,學過PS就很容易明白,圖,是一層一層疊加的。在scratch里面,只要鼠標左鍵點擊并拖動,該角色就會自動跑到最上層。這里,地鼠當然在最上面,所以對于地鼠,在程序一開始咱們就來一個“移至最上層”。

upload/article/images/2021-03-22/d397d8c15e1a8fe17b13558f5b9389a4.jpg

2.角色:地鼠

為了效果,咱們新建一個地鼠被打之后的造型

upload/article/images/2021-03-22/5c1156d416358cb3711d563459a66eaa.jpg

于是,初始化程序就應該是這樣

upload/article/images/2021-03-22/d00bedfd93f0ad494a83ece982489269.jpg


下面介紹一個特效“虛像”

upload/article/images/2021-03-22/b84c4c0cb504d78e2a23110346ead8da.jpg

upload/article/images/2021-03-22/5a172c433cf57db249090a48d93154b3.jpg

upload/article/images/2021-03-22/9a21da0927d91697f2a441a2363cef5c.jpg

upload/article/images/2021-03-22/170c5a7f25ee19ac338d3aa51519fc04.jpg

“虛像”特效真是個好東西,有了它,我們就可以做出下面這個效果

https://cdn.china-scratch.com/timg/180811/1103005X3-10.gif

具體程序如下

upload/article/images/2021-03-22/690146eb96a10a6366dacb44232aa80f.jpg

首先講“虛像”特效設置為100,也就是看不見了,程序“2“是讓地鼠邊往上跑,邊顯示出來。那為啥還會出現程序“1“呢?這是因為我希望地鼠在最開始那一段不顯示,等跑一段才慢慢的邊顯示邊上升

大家可以自己試試看:如果沒有程序“1“會是怎樣?或者把程序“2“的Y坐標增加數字調大會是怎樣的效果?


upload/article/images/2021-03-22/3373f34652d7572e1df12cd3fd890f22.jpg

需要注意的是:洞與地鼠的位置要合適,這里大家可以自己調整。接下來,看看5只地鼠怎樣隨機出現呢?

https://cdn.china-scratch.com/timg/180811/11030114Z-13.gif

一想到隨機,我們當然想到了“隨機數“

upload/article/images/2021-03-22/fa4d77e505de7b11d551170538208409.jpg

我們先設置一個變量“哪只地鼠”,然后在舞臺里編程,每隔1秒鐘,對“哪只地鼠”產生一個1-5的隨機數。然后我們就可以根據這個變量的隨機數值去讓哪只地鼠出來咯!在復制其他地鼠的時候記得改坐標

upload/article/images/2021-03-22/e04f209a111928c4e4364b15a45f7bb7.jpg

這里需要介紹一個廣播的東西,廣播是一個將不同角色聯系在一起的工具

比如上面這個程序是在“舞臺”里做的,但是我們可以讓地鼠接受到廣播

upload/article/images/2021-03-22/c32cfcc6fcdf99ff90cd37ba341b16e7.jpg

你看,廣播哪一只就是哪一只出來,而最后這個等待只是為了調整游戲節奏

3.角色:錘子

upload/article/images/2021-03-22/73b436d76f62782bfd24b0b1f5978ea7.jpg

咱們首先需要做的就是讓錘子跟隨鼠標走,這個其實很簡單

upload/article/images/2021-03-22/28178786f070acff10b6281dabb6b12a.jpg

你要得分,當然需要設置“得分變量”,同時,需要在最開始將得分設置為“0”

https://cdn.china-scratch.com/timg/180811/110301M29-19.gif

接下來就是錘子“打”,你仔細觀察就會發現,“打”這個動作是X坐標不變、Y坐標往下(變小),程序如圖所示

upload/article/images/2021-03-22/16db544f6f8ddd2f758fcba2a53e412c.jpg

這里對坐標的控制還是比較有技巧,至于Y坐標減多少,大家可以自己調試

這個時候,“打”的表面功夫算是完成了。那實際上,咱們需要打到地鼠上,讓地鼠“四分五裂”,還要得分。這里需要提醒一下的是,必須是“打”這個動作發出后,如果碰到了,才會得分。程序如圖所示

https://cdn.china-scratch.com/timg/180811/1103012T1-21.jpg

很顯然,只要碰到5只地鼠的任意一只,都得加分,所以是“或”的關系。計算機邏輯運算的基礎運算“或,且,非”我就不多說了

至于為啥得分以后要等待0.2秒呢?這是為了避免打一下得很多分的囧境。

得分還不行,還得讓地鼠“爛”

https://cdn.china-scratch.com/timg/180811/110301H44-22.gif

我們又要用到“廣播”,這里我們新建一個廣播“地鼠爛”

https://cdn.china-scratch.com/timg/180811/1103014F7-23.jpg

然后,在地鼠的腳本里加上如上圖所示的程序就可以了

有人說,不對啊,你這一加,意味著只要一只地鼠被打了,所有地鼠都會變“爛”

https://cdn.china-scratch.com/timg/180811/110301A54-24.jpg

你要知道,只有隨機數對應的地鼠會顯示出來,其他的都是隱藏了,所以爛又怎樣,反正看不見

最后,你加點音樂,以及地鼠被打之后發出點慘叫,就完成啦!


下面是這個案例的重要角色的源代碼

舞臺

https://cdn.china-scratch.com/timg/180811/110302A57-25.jpg

地鼠

https://cdn.china-scratch.com/timg/180811/1103025550-26.jpg

錘子

https://cdn.china-scratch.com/timg/180811/1103022019-27.jpg

好了,這還是挺好玩的游戲,又簡單。通過做這個游戲還能學到很多關鍵的概念。除了概念,還有一些提升游戲效果的一些細節處理,其實游戲做的好壞,細節很重要,小朋友可以多花一些時間,用你所學到的各種技巧來提升游戲效果,讓游戲顯得更加逼真,好玩!

聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 乌海市| 泽普县| 蚌埠市| 巴林左旗| 英山县| 库尔勒市| 冀州市| 柳州市| 西乌珠穆沁旗| 婺源县| 玛纳斯县| 临海市| 尼玛县| 礼泉县| 巨鹿县| 宽甸| 斗六市| 扎赉特旗| 金山区| 汤原县| 馆陶县| 马龙县| 合山市| 江西省| 教育| 普洱| 昭通市| 怀柔区| 台中市| 鄂托克前旗| 韩城市| 深州市| 湖州市| 屏山县| 乐东| 九台市| 新巴尔虎左旗| 江永县| 卢湾区| 教育| 彰化县|