Ejemplo n.º 1
0
 //選択可能かどうか取得
 public static bool IsPutEnable(int[,] banData, int komaType, Vector2Int pos)
 {
     if (!IsContainRange(banData, pos) || banData[pos.x, pos.y] != 0)
     {
         return(false);
     }
     foreach (Vector2Int vec in EightVector.GetVec())
     {
         if (IsSand(banData, komaType, pos, vec))
         {
             return(true);
         }
     }
     return(false);
 }
Ejemplo n.º 2
0
    //反転
    public static int[,] Reverse(int[,] banData, Vector2Int pos)
    {
        var komaType = banData[pos.x, pos.y];

        int[,] result = banData;
        foreach (Vector2Int vec in EightVector.GetVec())
        {
            if (IsSand(banData, komaType, pos, vec))
            {
                SandAction(banData, komaType, pos, vec, (x, y) =>
                {
                    var check = banData[x, y];
                    if (check != komaType)
                    {
                        result[x, y] = GetReverseNum(check);
                    }
                });
            }
        }

        return(result);
    }