/// <inheritdoc/> public void OnActionReceived(ActionBuffers actions) { m_Board.CheckBoardSizes(m_MaxBoardSize); if (m_ForceHeuristic) { Heuristic(actions); } var moveIndex = actions.DiscreteActions[0]; Move move = Move.FromMoveIndex(moveIndex, m_MaxBoardSize); m_Board.MakeMove(move); }
/// <inheritdoc/> public void OnActionReceived(ActionBuffers actions) { if (m_ForceHeuristic) { Heuristic(actions); } var moveIndex = actions.DiscreteActions[0]; if (m_Board.Rows != m_Rows || m_Board.Columns != m_Columns || m_Board.NumCellTypes != m_NumCellTypes) { Debug.LogWarning( $"Board shape changes since actuator initialization. This may cause unexpected results. " + $"Old shape: Rows={m_Rows} Columns={m_Columns}, NumCellTypes={m_NumCellTypes} " + $"Current shape: Rows={m_Board.Rows} Columns={m_Board.Columns}, NumCellTypes={m_Board.NumCellTypes}" ); } Move move = Move.FromMoveIndex(moveIndex, m_Rows, m_Columns); m_Board.MakeMove(move); }