Ejemplo n.º 1
0
 public UnitSetNewTurn(UnitSetBase parent)
     : base(parent)
 {
     for (int i = 0; i < parent.numberOfUnits; ++i)
     {
         _units.Add(new UnitNewTurn(parent.GetUnit(i)));
     }
 }
Ejemplo n.º 2
0
        public static int CountActiveUnits(this UnitSetBase self)
        {
            int total = 0;

            for (int i = 0; i < self.numberOfUnits; ++i)
            {
                if (self.GetUnit(i).actionsRemaining > 0)
                {
                    ++total;
                }
            }

            return(total);
        }
Ejemplo n.º 3
0
        public static UnitBase GetActiveUnit(this UnitSetBase self, int index, out int masterListIndex)
        {
            for (int i = 0, matchIndex = 0; i < self.numberOfUnits; ++i)
            {
                var currentUnit = self.GetUnit(i);
                if (currentUnit.actionsRemaining > 0)
                {
                    if (matchIndex == index)
                    {
                        masterListIndex = i;
                        return(currentUnit);
                    }
                    ++matchIndex;
                }
            }

            throw new System.IndexOutOfRangeException(nameof(index));
        }