Esempio n. 1
0
        public void Create(IIcSkSEntity entity, int index)
        {
            var buffs = _buffManager.GetBuffsCondition<TMechanics>(entity,_getHealth);

            var damage = _buffManager.GetBuffData<TDamageBuff>(entity, index);

#if ENABLE_MANAGED_JOBS
            for (var i = 0; i < buffs.Length; )
#else
            for (var i = 0; i < buffs.Count; i++)
#endif
            {
                var buffInfo = buffs[i];

                var buff = buffInfo.Buff;
                
                buff.Value = buff.Value - damage.Value;

                _buffManager.SetBuffData(entity, buff, buffInfo.Index);

                //todo 一个单位只有第一条血条会受伤
                break;
            }

            _buffManager.RemoveBuff(entity, damage);
        }