public override BattleState HandleTileClick(TerrainTile tile) { if (tile.UnitOnTile && tile.UnitOnTile.IsAttackableBy(_actor) && tile.AdjacentTo(_actor.CurrentTile)) { return new ExecuteAttack(_actor, tile); } else if (_navGraph.TilesInRange.Contains(tile)) { return new ExecuteMove(_actor, _navGraph.PathToTile(tile), _navGraph.CostToTile(tile)); } return null; }