private void CheckFleetMovement() { var targetTile = MapManager.NearestTileToMousePosition; if (targetTile == null || CurrentSelectedTile == null) { return; } if (CurrentSelectedTile == targetTile) { // Rotate Fleet RotateFleet(CurrentSelectedTile.Fleet.ID, false); //RotateFleetToPosition(CurrentSelectedTile.Fleet.ID, CurrentSelectedTile.Fleet.RotationPosition - 1); return; } if (CurrentSelectedTile != null && targetTile.Fleet != null) { // Attack AttackEnemyFleet(); return; } // Move fleet if (MoveableTileList.Exists(t => t == targetTile)) { MoveFleet(CurrentSelectedTile.Fleet.ID, targetTile.Position); TileManager.SelectTile(targetTile); CheckShowMovementArea(); } }
public void ResetMovementArea() { MoveableTileList.Clear(); foreach (var tileObject in MoveableTileObjectList) { Destroy(tileObject.gameObject); } MoveableTileObjectList.Clear(); }