作者ciliax ()
看板GameDesign
標題[程式] 類似動物管理員的鄰近顏色判斷?..
時間Wed Sep 19 15:27:37 2012
各位好~
小弟目前在練習開發一款類似動物管理員的遊戲
三個同顏色以上的方塊就會消除
口口口口口 口口口口口
口口口口口 口口口口口
口口口口口 press -> =>
口口口口口
[
口口口口口] [
口口口口口]
以一排作左右移動
上面懶了就不上色了XD
假設上下左右只要有三個以上顏色相同就會消失
我現在是以array去控管每個方框的顏色
以上方為例,在4*5ARRAY以數字代表顏色
現在碰到的疑問就是..這是2D該如何有效率的判斷同顏色的相鄰呢
麻煩各位前輩指點了 感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.125.224
1F:推 LPH66:換個想法: 別去想能不能判斷某顏色有沒有得消 09/19 15:38
2F:→ LPH66:去想某三格能不能消 09/19 15:38
3F:→ KanoLoa:消除的條件是? 09/19 16:34
三個以上相鄰同色方塊消除
4F:→ VVll:去檢查最後擺放的周遭能否消去 09/19 16:41
5F:→ nobody1:樓上的做法在連續消除時還是得再重複檢查一次 09/19 16:57
6F:推 BSpowerx:所有可能都掃過也不過幾百個迴圈,不用去省這個啦 09/19 17:05
7F:推 LayerZ:真的要省的話以有動作的地方(例如兩個交換的方塊) 去往外擴 09/19 17:19
8F:→ LayerZ:展出去 09/19 17:19
9F:→ LayerZ:而且背後用單純的數學去算就好 09/19 17:19
10F:→ LayerZ:我發現我在說廢話 不要理我= = 09/19 17:20
11F:推 juicefish:還要看格子是怎麼補回來的 會不會補回來 被消掉怎麼落 09/19 19:05
12F:→ juicefish:還是直接隨機顏色塞回原本格子 09/19 19:06
會空在那邊 類似俄羅斯方塊的感覺
整排消失才往下掉落
13F:推 damody:請問用什麼語言跟你說 會比較清楚? 09/19 20:06
其實我是用Virtools寫 但想不到有效率的方式
14F:→ enthos:我國中時科學營解決了另一問題,解法應該雷同,用空間換時間: 09/19 23:35
15F:→ enthos:每個顏色一個陣列(左右再放大一格),相鄰格(最多共9個)+1 09/19 23:35
16F:→ enthos:大於2的顏色位置就是應該消失的位置。 09/19 23:35
17F:→ damody:樓上VB高手? 09/19 23:49
※ 編輯: ciliax 來自: 180.177.125.224 (09/20 04:10)
先謝謝大家的回覆了
補充一下 企劃上
並不是兩兩交換 而是整橫排作左右推移
※ 編輯: ciliax 來自: 180.177.125.224 (09/20 04:13)
18F:推 LayerZ:整排左右橫移 是不論任何形狀只要3個連到就消? 09/20 11:17
19F:→ ciliax:yes 09/20 23:03
20F:推 lf21201:DFS不好嗎@@ 09/21 00:44
21F:推 lf21201:DFS找到level=3之後以那個node為起點再一次DFS消除? 09/21 00:53