コード例 #1
0
        public ITroopStub CreateTroopStub()
        {
            var stub = troopStubFactory.CreateTroopStub((byte)Troops.IdGen.GetNext());

            Troops.Add(stub);
            return(stub);
        }
コード例 #2
0
 public void AddTroop(Side side, int size, int src, int dst, int remaining)
 {
     Troops.Add(new Troop {
         Side      = side,
         Dst       = dst,
         Remaining = remaining,
         Size      = size,
         Src       = src
     });
 }
コード例 #3
0
        internal void AddTroopsFromParty(PartyBase party)
        {
            var troops = party.MemberRoster;

            foreach (var troop in troops)
            {
                int totalNumber = troop.Number - troop.WoundedNumber;
                var troopType   = troop.Character.DecideTroopType();

                while (totalNumber-- > 0)
                {
                    Troops.Add(new Troop(troop.Character, this, troopType));
                }
            }
            if (party.MobileParty != null && party.MobileParty.AttachedParties != null)
            {
                foreach (var attachedParty in party.MobileParty.AttachedParties)
                {
                    AddTroopsFromParty(attachedParty.Party);
                }
            }
        }