2D游戏之五子棋(2)落棋算法

本文探讨了2D五子棋游戏中实现落棋算法的核心内容,主要涉及判断棋子在横向、纵向及对角线方向上是否形成连续,当达到五个连珠时即为获胜。代码实现详细解释了这一过程。
摘要由CSDN通过智能技术生成

核心算法内容是:
根据相邻的棋子的类型看是否是连接的棋子,判断八个方向,横竖斜,横着的棋子到了5个则成功,其他方向也是如此
代码如下:

using UnityEngine;

public enum ChessType
{
    None = 0,
    Black = 1,
    White = 2,
}

public class BoardModel
{
    // 连5个子可以赢
    public const int WinChessCount = 5;

    ChessType[,] _data = new ChessType[Board.CrossCount, Board.CrossCount];

    // 获取棋盘数据 
    public ChessType Get( int x, int y )
    {
        if (x < 0 || x >= Board.CrossCount)
            return ChessType.None;

        if (y < 0 || y >= Board.CrossCount)
            return ChessType.None;

        return _data[x, y];
    }

    // 设置棋盘数据
    public bool Set( int x, int y, ChessType type )
    {
        if (x < 0 || x >= Board.CrossCount)
            return false;

        if (y < 0 || y >&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值