Пример #1
0
        /// <summary> Updates the creature's ongoing effects </summary>
        public void HandleBuffs(DwarfTime time)
        {
            if (BuffsToAdd == null)
            {
                BuffsToAdd = new List <Buff>();
            }
            Buffs.AddRange(BuffsToAdd);
            BuffsToAdd.Clear();
            foreach (Buff buff in Buffs)
            {
                buff.Update(time, this);
            }

            List <Buff> doneBuffs = Buffs.FindAll(buff => !buff.IsInEffect);

            foreach (Buff buff in doneBuffs)
            {
                buff.OnEnd(this);
                Buffs.Remove(buff);
            }
        }
Пример #2
0
 public void StoreBuffs(Buff[] buffs)
 {
     Buffs.AddRange(buffs);
 }