コード例 #1
0
    /*
     * Inicializamos la tabla de recompensas a -1 las casillas atravesables
     * -5 las celdas con muros
     * 100 la meta
     */
    private void initRewardTable(BoardInfo board)
    {
        //Obtenemos toda la información de todas las celdas del tablero
        CellInfo[,] info = board.CellInfos;
        //Celda con objeto Goal
        CellInfo goal = board.CellWithItem("Goal");

        for (int i = 0; i < RewardTable.GetLength(0); i++)
        {
            for (int j = 0; j < RewardTable.GetLength(1); j++)
            {
                if (info[i, j].GetPosition == goal.GetPosition)
                {
                    RewardTable[i, j] = 100;
                }
                else if (!info[i, j].Walkable)
                {
                    RewardTable[i, j] = -5;
                }
                else
                {
                    RewardTable[i, j] = -1;
                }
            }
        }
    }