/// <summary> /// Initializes a new instance of the <see cref="AICountry"/> class. /// </summary> /// <param name="civilization"></param> /// <param name="leaderName"></param> /// <param name="coordinates"></param> public AICountry(Civilization civilization, string leaderName, Point coordinates) : base(civilization, leaderName, coordinates) { GameRoot root = GameRoot.Instance; foreach (Resource resource in root.Ruleset.Resources) { this.resourceNeeds.Add(resource, 0d); } this.Strategy = StrategyFactory.GetStrategy(this); }
/// <summary> /// Takes a turn for the AI Country. /// </summary> internal override void DoTurn() { UpdateResourceHashtable(); DoTurnBasedNegotiations(); Unit unit; for (int i = 0; i < Units.Count; i++) { if (Units.Count < (i + 1)) { return; } unit = (Unit)this.Units[i]; unit.DoTurn(); } foreach (AICity city in Cities) { city.DoTurn(); } this.Strategy = StrategyFactory.GetStrategy(this); IncrementScore(); }
/// <summary> /// Initializes a new instance of the <see cref="AICountry"/> class. /// </summary> public AICountry() : base() { this.Strategy = StrategyFactory.GetStrategy(this); }