帶娃學習Scratch三 控制與躲避

2021-10-10 14:01:41 字數 1907 閱讀 6585

終於迎來的第三課,小朋友催了好幾次,問什麼時候上課,所以倉惶帶來了第三課。

依然是老規矩,上來先複習。遊戲執行按那個鍵,選什麼積木沒有問題的,迴圈什麼的就算了。然後根據我的提示,自己選擇了背景,嗯,有點樣子了。然後自己嘗試加入了鸚鵡,直接在角色介面改了改鸚鵡的大小,其實使用積木修改更合適,但是小朋友現在不用知道這麼多。

當我們把鸚鵡拖動到合適的高度後,從角色介面記錄下了此時的座標值,什麼意思?沒有關係,不解釋,因為鸚鵡也有自己的語句表述現代打地溝油歌謠。

在這裡插入描述

​不要提醒的,小朋友找到了代表開始的積木,然後在我的指導下,再次選擇了移動到某個座標值的積木,座標值就是剛剛記錄的座標資料。小朋友若有所思,估計還是不太理解,不過古人說得好「這個不重要」。接下來繼續分析地溝油歌謠,涉及到迴圈,依然強化概念,其它不談。然後我就犯了乙個錯誤,準確的說是歌謠犯了乙個錯誤,引入鍵盤有點早了,左右移動涉及到改變鸚鵡朝向我應該放到「獅子」部分再來的。機智如我,當時做了乙個艱難的決定—讓鸚鵡跟隨滑鼠移動,畢竟這個只要乙個積木塊就解決了。

但是,非常重要的但是…

雖然避開了鍵盤控制時的各種操作,同時鸚鵡的積木搭建也就戛然而止了。沒有了空格鍵的下降,也不需要休息了,反正跟著滑鼠不停歇也就對了。意外的,課程量減少了。但是考慮按照我原來的設想,按下空格鍵後,下落時需要對座標進行的操作,以及返回時座標的操作,嗯,這樣也挺好。

執行遊戲,讓小朋友玩玩自己編寫的遊戲。在他玩的時候,我默默的想了想,如果使用swift+spritekit來實現跟隨滑鼠,需要寫幾句**——scratch真方便啊!

在遊玩的過程只能夠,小朋友發現了乙個問題,鸚鵡雖然飛在半空中,但是竟然一次翅膀都沒有扇動過,這很不科學。其實科學的解釋就是,鸚鵡扇動翅膀的頻率和攝像機的重新整理率正好一樣了,就是說——好吧,我編不下去了。

本來準備把這個問題作為測試的,但是我的課程縮短了,只好從這裡找內容了。此時引入了「角色造型」,進入角色造型後,小朋友發現,其實是有鸚鵡扇動翅膀的造型的,問題只是我們怎麼讓它動起來,怎麼切換這些造型

慢慢引導,鸚鵡是不是要不停的扇動翅膀啊?所以是不是迴圈扇動?這個動作是不是在遊戲一開始就要執行啊?然後指導小朋友找到切換造型的積木,雖然這樣的積木有好幾個,但是我們選擇最容易理解的,所以有了下面的積木指令碼

然後讓小朋友執行遊戲看看效果——小朋友都驚呆了!!!鸚鵡瘋狂的扇動翅膀,為什麼呢?每乙個積木執行的時間極短,在這個迴圈中,下乙個造型積木被瘋狂執行,所以鸚鵡瘋狂扇動翅膀。為什麼執行極短?嗯,電腦執行程式速度很快。為什麼……?

為了轉移注意力,我讓小朋友放了這麼乙個積木到迴圈中去,讓他直觀感受迴圈中的速度。

得分飛快增長,我們需要讓這個迴圈中的積木執行時走慢一點,怎麼辦呢?很簡單,還是積木。

每0.2秒執行一次下乙個造型,頓時鸚鵡正常多了。小朋友在不知道小數是什麼的情況下,使用了它。

回想一下這一課,降低鸚鵡程式設計難度是很應該的,作為第乙個遊戲,我原本也就是要讓他熟悉scratch,知道積木,角色,指令碼這些概念而已。所以儘量減少關於座標或者迴圈亦或變數這些內容,可以不讓他被這些概念弄的頭暈腦脹。

第三課——完結。

PL SQL學習筆記 條件控制 (三)

一 if條件控制 先看一段程式 declare v content varchar2 66 begin select content into v content from xland where title xland if length v content 6 then v content su...

PL SQL學習筆記 迴圈控制與順序控制

一 loop.end loop 先看 declare v flag number 1 begin loop exit when v flag 16 v flag v flag 1 dbms output.put line to char v flag end loop end 其中exit when...

大三寒假學習 spark學習 Scala控制結構

if條件表示式 支援巢狀 有一點與j a不同的是,scala中的if表示式的值可以賦值給變數 while迴圈 與j a的while一摸一樣沒有太大的區別 for迴圈 基本語法 for 變數 變數 守衛 guard 的表示式 過濾出一些滿足條件的結果。基本語法 for 變數 if 條件表示式 語句塊 ...