Exemple #1
0
        public override bool EvaluateCommand()
        {
            _cell = _grid.GetCell(TargetCell);

            Debug.Log($"Cell : {_cell}");
            Debug.Log($"Cell : {_cell.State}");

            if (_cell.State == CellState.Occupied)
            {
                return(false);
            }

            Debug.Log($"Player position : {PlayerCharac.PositionOnGrid}");
            Debug.Log($"Cell position : {_cell.Position}");

            _path = _grid.ComputeAStar(PlayerCharac.PositionOnGrid, _cell.Position);

            Debug.Log($"Path count : {_path.Count}");

            //// No path found
            if (_path == null || _path.Count == 0)
            {
                return(false);
            }

            Debug.Log($"AP : {PlayerCharac.Attributes.ActionPoints.FinalValue}");

            if ((int)PlayerCharac.Attributes.ActionPoints.FinalValue < _path.Count - 1)
            {
                return(false);
            }

            return(true);
        }