- 和孩子一起學編程:用Scratch玩Minecraft我的世界
- 張繼春
- 2113字
- 2021-10-15 18:00:12
2.2 認識Minecraft模塊與積木
由圖2-2可以看出,Minecraft模塊所有的積木塊都以藍色積木顯示。整個模塊里的積木可以分為兩大類:命令類和參數類。凡是帶有上凹下凸小梯形形狀的都是命令類積木,表示這個積木可以完成一個具體的命令,可以作為程序中的一條語句和其他語句前后連接在一起,這種積木是沒有返回值的。凡是形狀為一個橢圓形的積木都是一個參數類積木,僅代表一個參數的返回值,不能獨立作為一個語句,也不能和其他語句前后連接在一起,只能作為參數或變量填入命令語句的某一組成部分。
2.2.1 Minecraft程序連接積木
Minecraft程序連接積木如圖2-3所示,它的功能是建立Scratch和Minecraft之間的連接,因此每個程序的這個積木必須最先執行。這條語句執行后,后面所有針對Minecraft的編程才有效。

圖2-3
2.2.2 獲取并設置位置信息相關積木
位置信息相關的積木用于獲取或者設置玩家的位置等操作,包含的命令如圖2-4所示。其中前四個積木用于獲取玩家的位置信息,第1~3個分別用于獲取玩家位置的x、y、z坐標信息,第4個積木用于獲取玩家位置的xyz三坐標矢量信息。在這4個積木中,“位置”前面的選項里包含“方塊”和“精確”兩個選項,如圖2-5所示,其中“精確”代表玩家位置的精確信息,其數值為帶小數點的精確數值;“方塊”則代表玩家位置方塊的坐標信息,其數值為整數。

圖2-4

圖2-5
在圖2-4中,第5個積木用于將玩家設置到空間某個位置處,也是通常所說的將玩家“傳送”到某個位置。第6個積木用于獲取空間某個x坐標和z坐標處最高方塊的高度數值,第7個積木則將玩家移動到當前位置最高方塊的上面。
2.2.3 聊天區信息顯示積木
“聊天區信息顯示”積木如圖2-6所示。該積木用于在聊天區內顯示出一定的信息,我們可以在此積木的橢圓括號里輸入想要顯示的字符。

圖2-6
2.2.4 方塊、生物(物品)放置與獲取方塊類型
方塊、生物放置(放養)類積木如圖2-7所示。
(1)“放置方塊”積木如圖2-7中第1個積木所示,該積木用于在某個坐標位置放置某個類型的方塊,其中深藍色的下拉菜單中可以選擇方塊的種類,后面括號里的三個數值需要輸入x、y和z三個坐標值。
(2)“放置批量方塊”積木如圖2-7中第2個積木所示,該積木用于在空間某兩個對角頂點所組成的長方體空間內批量放置某個類型的方塊。同理,在深藍色的下拉菜單中選擇方塊的類型,后面括號里的6個數值需要輸入兩個對角頂點的x、y和z坐標值。
(3)“放養生物”積木如圖2-7中第3個積木所示,該積木用于在某個坐標位置放置某種生物(比如“羊”),其中深藍色的下拉菜單中可以選擇生物的種類,后面括號里的三個數值需要輸入x、y和z三個坐標值。
(4)“放置物品”積木如圖2-7中第4個積木所示,該積木用于在某個坐標位置放養某種物品(比如“普通礦車”),其中深藍色的下拉菜單中可以選擇物品的種類,后面括號里的三個數值需要輸入x、y和z三個坐標值。
(5)第5個積木為“某種方塊類型”積木,該積木只是一個表示具體方塊類型的參數。
(6)“獲取位置的方塊類型”積木為圖2-7中的第6個積木,用于獲取空間某個坐標位置處方塊的類型。該積木也是一個參數積木,其返回值為獲取的方塊類型。

圖2-7
2.2.5 向量類積木
向量類積木如圖2-8所示,主要用于表示向量的合成、向量坐標值的提取、擊劍目標向量等參數。

圖2-8
(1)第1個積木為“獲取擊劍目標位置向量”積木,該積木用于表示擊劍目標方塊的位置向量。
(2)第2個積木為“向量的x(或y、z)的坐標值分量”積木,該積木用于顯示某個向量的x(或y、z)分量,向量值的輸入用后面括號里的三個分量完成。
(3)第3個積木為“向量合成”積木,該積木用于通過在括號里輸入三個分量定義一個向量值。
2.2.6 海龜畫圖類積木
海龜畫圖類積木主要是在Minecraft游戲里完成海龜畫圖所需要的功能設置,例如,設置畫筆方塊類型、畫筆粗細、抬筆/落筆、前進/后退、左轉/右轉等功能,如圖2-9所示。
常用的幾個積木分述如下:
(1)第1個積木為“海龜畫筆方塊類型”積木,用于選擇海龜畫筆的方塊類型,展開下拉菜單可以選擇方塊類型。
(2)第2個積木為“海龜畫筆粗細”積木,用于設置畫筆的粗細,在橢圓括號里輸入的是畫筆的邊長,當輸入1時,畫筆只包含1個方塊,當輸入為2時,畫筆為2×2個方塊。
(3)第3個積木為“海龜畫筆落筆/抬筆”積木,該積木用于控制畫筆的起落,下拉菜單如圖2-10所示,其值為落筆時,生成方塊;其值為抬筆時,不生成方塊。
(4)第4個積木為“海龜前進/后退”積木,該積木用于指定海龜前進/后退的步數,其下拉菜單如圖2-11所示,在后面的橢圓里輸入步數的數值,在Minecraft游戲里,步數代表方塊的數量。

圖2-9

圖2-10

圖2-11

圖2-12
(5)第5個和第6個積木為“海龜左轉”積木和“海龜右轉”積木,這兩個積木用于指定海龜按照輸入的角度左轉或右轉,在中間的橢圓括號里輸入角度的具體數值。
(6)第7個積木為“海龜在3D空間平面內旋轉”積木,該積木用于指定海龜在3D空間的旋轉角度,在橢圓括號里輸入角度數值,下拉菜單選項如圖2-12所示,表示海龜在空間哪個平面內進行旋轉。
(7)第8個積木為“海龜移動到某位置”積木,該積木的作用是將海龜移動到某一位置處,后面括號里的三個數值需要輸入表示該位置的x、y和z三個坐標值。
(8)第9個積木為“海龜恢復至某角度”積木,該積木主要是將海龜的角度設定為一個輸入的角度數值。