private bool NearCommanderRegion(BaseNavyArmy army, WorldPosition position) { BaseNavyCommander commander = army.Commander; if (commander == null || commander.RegionData == null) { return(true); } Region positionRegion = this.worldPositionService.GetRegion(position); return(commander.RegionData.WaterRegionIndex == positionRegion.Index || commander.RegionData.NeighbouringLandRegions.Exists((Region match) => match.Index == positionRegion.Index) || commander.RegionData.NeighbouringWaterRegions.Exists((Region match) => match.Index == positionRegion.Index)); }
public override void AssignCommander(BaseNavyCommander commander) { NavyCommander navyCommander = base.Commander as NavyCommander; if (navyCommander != null) { navyCommander.NavyArmies.Remove(this); } base.AssignCommander(commander); navyCommander = (base.Commander as NavyCommander); if (navyCommander != null) { navyCommander.NavyArmies.Add(this); } }
public override void AssignCommander(BaseNavyCommander commander) { if (base.Commander != null) { NavyCommander navyCommander = base.Commander as NavyCommander; if (navyCommander != null) { navyCommander.NavyFortresses.Remove(this); } } base.AssignCommander(commander); if (base.Commander != null) { NavyCommander navyCommander2 = base.Commander as NavyCommander; if (navyCommander2 != null) { navyCommander2.NavyFortresses.Add(this); } } }
public virtual void AssignCommander(BaseNavyCommander commander) { this.Commander = commander; }