2D遊戲之五子棋(2)落棋演算法

2021-08-15 17:22:49 字數 1336 閱讀 6578

核心演算法內容是:

根據相鄰的棋子的型別看是否是連線的棋子,判斷八個方向,橫豎斜,橫著的棋子到了5個則成功,其他方向也是如此

**如下:

using unityengine;

public

enum chesstype

public

class boardmodel

// 設定棋盤資料

public

bool

set( int x, int y, chesstype type )

#region 檢查連線情況

// 檢查垂直方向連線情況

int checkverticallink(int px, int py, chesstype type)

}else

}// 朝下

for (int y = py - 1; y >= 0; y--)

}else

}return linkcount;

}// 檢查水平方向連線情況

int checkhorizentallink(int px, int py, chesstype type)

}else

}// 朝左

for (int x = px-1; x >= 0; x--)

}else

}return linkcount;

}// 檢查斜邊情況

int checkbiaslink(int px, int py, chesstype type)

}else

}// 右上

for (int x = px + 1, y = py + 1; x < board.crosscount && y < board.crosscount; x++, y++)

}else

}ret = linkcount;

linkcount = 1;

// 左上

for (int x = px -1 , y = py+ 1; x >=0 && y < board.crosscount; x--, y++)

}else

}// 右下

for (int x = px + 1, y = py - 1; x < board.crosscount && y >= 0; x++, y--)

}else

}return mathf.max(ret, linkcount);

}// 檢查給定點周邊的最大連線情況

public

intchecklink(int px, int py, chesstype type )

#endregion

}

下五子棋的bot 五子棋演算法

include include include include include include jsoncpp json.h c 編譯時預設包含此庫 define n 7 每個節點的分支數 以下為各棋型的識別碼 權重 define win 1 4000 define lose 2 4000 defi...

五子棋Pro 最好玩的五子棋遊戲

五子棋是一種兩人對弈的純策略型漢族棋類益智遊戲,棋具與圍棋通用,由中國古代漢族人發明,起源於中國上古時代的傳統黑白棋種之一。主要流行於華人和漢字文化圈的國家以及歐美一些地區。容易上手,老少皆宜,而且趣味橫生,引人入勝 不僅能增強思維能力,提高智力,而且富含哲理,有助於修身養性。1 多種遊戲模式 1 ...

五子棋(vb演算法)

for i 1 to 11 for j 1 to 11 if map i,j a and map i 1,j 1 a and map i 2,j 2 a and map i 3,j 3 a and map i 4,j 4 a then gameover a exit function next j ...