/// <summary> /// To be called once so the Progress() does the rest. /// </summary> /// <param name="anotherMarch"></param> public Engagement Engage(March guestMarch) { Engagement engagement = null; if (guestMarch is ArmyMarch) { engagement = new BattleEngagement(pack as ArmyPack, guestMarch.pack as ArmyPack); } engagements.Add(engagement); return(engagement); }
// The engagement system is where two marches or more or one spot with a march want to interact. The interaction // might be a battle, trade or something else. /// <summary> /// To be called once so the Progress() does the rest. /// </summary> /// <param name="anotherMarch"></param> /// <returns></returns> public abstract bool CanEngageWith(March anotherMarch);