tft每日頭條

 > 遊戲

 > scratch編程走迷宮

scratch編程走迷宮

遊戲 更新时间:2025-08-01 19:44:08
前言

上一節Scratch編程課程,我們講了如何判斷橫向左右兩個方向是否五子連珠。

實際上,我們一共需要判斷8個方向,包括:上、下、左、右、左上↖、右下↘、右上↗、左下↙

那麼,在上一節課代碼基礎上,稍加修改就能實現其它6個方向的判斷了。

可是,你會發現每個方向的代碼相似度非常高,也就是說我們可以從中找出一種規律,從而大大簡化代碼。在介紹我的優化代碼之前,我們先解決下落子點棋子重複落子的問題。

解決落子點棋子重複落子問題

大家看下圖,增加一個判斷,判斷當前落子點的列表編号在列表中對應的值,如果值為0,說明該落子點可以落子;反之,不為0,說明該落子點已經有棋子了。

scratch編程走迷宮(51.Scratch青少年編程實例教程)1

圖1

如何将8個方向的代碼,優化成一個自定義積木?

大家看下圖,我把它們的計算格式進行了統一,然後用紅色标出了不同的地方。不同的地方有兩處,我們分别在自定義積木中設置參數a和b 。大家結合下面的代碼慢慢理解。

scratch編程走迷宮(51.Scratch青少年編程實例教程)2

圖2


編寫判斷8個方向是否五子連珠的程序

圖2是圖3中重複執行程序的執行終止判斷代碼,我把他們拆開,方便大家理解。

①是判斷是否找到相同顔色的棋子;②③④⑤判斷是否超出棋盤範圍。當沒有相同棋子或者超出了棋盤範圍,那麼,重複執行就終止了,因為沒必要再繼續在這個方向上查找了。

scratch編程走迷宮(51.Scratch青少年編程實例教程)3

圖3


scratch編程走迷宮(51.Scratch青少年編程實例教程)4

圖4

雖然是8個方向,但是我們計算連珠總數的時候,是兩個相對方向一起計算的,所以得兩個方向結合起來計數。具體程序見下圖。如果,總數超過4,那麼發出“五子連珠”的廣播。接收廣播的角色,根據當前落子是“黑棋”還是“白棋”,經過判斷後顯示“黑棋勝”或者“白旗勝”。

scratch編程走迷宮(51.Scratch青少年編程實例教程)5

圖5

最後,我們兩個兩個地組合,對所有8個方向進行判斷。

scratch編程走迷宮(51.Scratch青少年編程實例教程)6

圖6

演示效果

教程寫到這裡,我們的五子連珠遊戲已經可以正常判斷勝負了,我和糖果兩個人玩了一局,感覺還真不錯。



本次Scratch編程課程就講到這裡,後續課程見!

本文所有圖片、視頻及文字内容,均為原創,轉載時請保留版權信息。

查看更多Scratch編程教程,請點擊下一行的了解更多,進入程序員豬豬的頭條主頁。

點擊關注,每天接收更新哦。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关遊戲资讯推荐

热门遊戲资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved