Exemple #1
0
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _statMod = new ChampionStatModifier();
     _statMod.Size.PercentBonus = _statMod.Size.PercentBonus + 1;
     _healthBefore = unit.GetStats().CurrentHealth;
     _healthBonus  = 150 + 150 * ownerSpell.Level;
     _statMod.HealthPoints.BaseBonus = _statMod.HealthPoints.BaseBonus + 150 + 150 * ownerSpell.Level;
     unit.GetStats().CurrentHealth = unit.GetStats().CurrentHealth + 150 + 150 * ownerSpell.Level;
     unit.AddStatModifier(_statMod);
 }
Exemple #2
0
        public void OnDeactivate(ObjAIBase unit)
        {
            _healthNow      = unit.GetStats().CurrentHealth - _healthBonus;
            _meantimeDamage = _healthBefore - _healthNow;
            float bonusDamage = _healthBonus - _meantimeDamage;

            unit.RemoveStatModifier(_statMod);
            if (unit.GetStats().CurrentHealth > unit.GetStats().HealthPoints.Total)
            {
                unit.GetStats().CurrentHealth = unit.GetStats().CurrentHealth - bonusDamage;
            }
        }
Exemple #3
0
        public void OnUpdate(double diff)
        {
            _currentTime += diff;
            if (_currentTime >= (_lastUpdate + 1000))
            { //1% max mana per second
                ApiFunctionManager.LogInfo("Trying to regenerate Evelynn's mana");
                var manaRegenerated = _ownerUnit.GetStats().ManaPoints.Total / 100;
                var maxMana         = _ownerUnit.GetStats().ManaPoints.Total;
                var newMana         = _ownerUnit.GetStats().CurrentMana + manaRegenerated;
                if (maxMana >= newMana)
                {
                    _ownerUnit.GetStats().CurrentMana = newMana;
                }
                else
                {
                    _ownerUnit.GetStats().CurrentMana = maxMana;
                }

                _lastUpdate = _currentTime;
            }
        }