public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _statMod = new ChampionStatModifier();
     _statMod.MoveSpeed.PercentBonus   = _statMod.MoveSpeed.PercentBonus + (12f + ownerSpell.Level * 4) / 100f;
     _statMod.AttackSpeed.PercentBonus = _statMod.AttackSpeed.PercentBonus + (22f + 8f * ownerSpell.Level) / 100f;
     unit.AddStatModifier(_statMod);
 }
Beispiel #2
0
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _ownerUnit = unit;
     _statMod   = new ChampionStatModifier();
     _statMod.AttackSpeed.PercentBonus = (new float[] { .6f, .75f, .90f, 1.05f, 1.2f })[ownerSpell.Level - 1];
     _ownerUnit.AddStatModifier(_statMod);
 }
Beispiel #3
0
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _statMod = new ChampionStatModifier();
     _statMod.MoveSpeed.BaseBonus = _statMod.MoveSpeed.BaseBonus - 60;
     unit.ApplyCrowdControl(_crowdDisarm);
     unit.ApplyCrowdControl(_crowdSilence);
     unit.AddStatModifier(_statMod);
 }
Beispiel #4
0
        public void OnActivate(ObjAIBase unit, Spell ownerSpell)
        {
            var ap = ownerSpell.Owner.GetStats().AbilityPower.Total * 0.001;

            _statMod = new ChampionStatModifier();
            _statMod.MoveSpeed.PercentBonus = _statMod.MoveSpeed.PercentBonus + 0.3f + (float)ap;
            unit.AddStatModifier(_statMod);
        }
Beispiel #5
0
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _ownerUnit      = unit;
     _currentStatMod = (new float[] { 0.30f, 0.40f, 0.50f, 0.60f, 0.70f })[ownerSpell.Level - 1];
     _statMod        = new ChampionStatModifier();
     _statMod.MoveSpeed.PercentBonus = _currentStatMod;
     _ownerUnit.AddStatModifier(_statMod);
     _visualBuff = ApiFunctionManager.AddBuffHUDVisual("EveFrenzy", 5.0f, 5, _ownerUnit, -1);
 }
        public void OnStartCasting(Champion owner, Spell spell, AttackableUnit target)
        {
            ChampionStatModifier statMod = new ChampionStatModifier();

            statMod.MoveSpeed.PercentBonus = 27 / 100.0f;
            owner.AddStatModifier(statMod);
            var hasteBuff = ApiFunctionManager.AddBuffHUDVisual("SummonerHaste", 10.0f, 1, owner, 10.0f);

            ApiFunctionManager.CreateTimer(10.0f, () => { owner.RemoveStatModifier(statMod); });
        }
Beispiel #7
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);
 }
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _ownerUnit      = unit;
     _currentStatMod = (new float[] { 4.0f, 8.0f, 12.0f, 16.0f, 20.0f })[ownerSpell.Level - 1];
     _statMod        = new ChampionStatModifier();
     //TODO: Find a way to have evelynn's Q and R give speed stacks
     _statMod.MoveSpeed.FlatBonus = _currentStatMod * _speedMultiplier;
     _ownerUnit.AddStatModifier(_statMod);
     _visualBuff = ApiFunctionManager.AddBuffHUDVisual("EveSpeed", 5.0f, 5, _ownerUnit, -1);
 }
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _currentTime    = 0;
     _lastUpdate     = 0;
     _currentStatMod = 25;
     _ownerUnit      = unit;
     _statMod        = new ChampionStatModifier();
     _statMod.MoveSpeed.FlatBonus = _currentStatMod;
     _ownerUnit.AddStatModifier(_statMod);
     _visualBuff = ApiFunctionManager.AddBuffHUDVisual("MissFortuneStrutStacks", 5.0f, (int)_currentStatMod, _ownerUnit, -1);
 }
Beispiel #10
0
        public void OnFinishCasting(Champion owner, Spell spell, AttackableUnit target)
        {
            ChampionStatModifier statMod = new ChampionStatModifier();

            statMod.MoveSpeed.PercentBonus   -= 30.0f / 100.0f;
            statMod.AttackSpeed.PercentBonus -= 30.0f / 100.0f;
            statMod.Armor.BaseBonus          -= 10;
            statMod.MagicResist.BaseBonus    -= 10;
            target.AddStatModifier(statMod);
            ApiFunctionManager.AddParticleTarget(owner, "Global_SS_Exhaust.troy", target);
            var visualBuff = ApiFunctionManager.AddBuffHUDVisual("SummonerExhaustDebuff", 2.5f, 1, (ObjAIBase)target);

            ApiFunctionManager.CreateTimer(2.5f, () =>
            {
                ApiFunctionManager.RemoveBuffHUDVisual(visualBuff);
                target.RemoveStatModifier(statMod);
            });
        }
        public void OnFinishCasting(Champion owner, Spell spell, AttackableUnit target)
        {
            if (!owner.IsDead)
            {
                return;
            }

            owner.Respawn();

            ChampionStatModifier statMod = new ChampionStatModifier();

            statMod.MoveSpeed.PercentBonus = 125.0f / 100.0f;
            owner.AddStatModifier(statMod);
            ApiFunctionManager.AddParticleTarget(owner, "Global_SS_Revive.troy", owner);
            var visualBuff = ApiFunctionManager.AddBuffHUDVisual("SummonerReviveSpeedBoost", 12.0f, 1, owner);

            ApiFunctionManager.CreateTimer(12.0f, () =>
            {
                ApiFunctionManager.RemoveBuffHUDVisual(visualBuff);
                owner.RemoveStatModifier(statMod);
            });
        }
Beispiel #12
0
 public void OnActivate(ObjAIBase unit, Spell ownerSpell)
 {
     _statMod = new ChampionStatModifier();
     _statMod.MoveSpeed.PercentBonus = _statMod.MoveSpeed.PercentBonus - 0.80f;
     unit.AddStatModifier(_statMod);
 }
Beispiel #13
0
        public void OnFinishCasting(Champion owner, Spell spell, AttackableUnit target)
        {
            var      units = ApiFunctionManager.GetChampionsInRange(owner, 850, true);
            Champion mostWoundedAlliedChampion = null;
            float    lowestHealthPercentage    = 100;
            float    maxHealth;
            float    newHealth;

            for (var i = 0; i <= units.Count - 1; i++)
            {
                var value = units[i];
                if (owner.Team == value.Team && i != 0)
                {
                    var currentHealth = value.GetStats().CurrentHealth;
                    maxHealth = value.GetStats().HealthPoints.Total;
                    if (currentHealth * 100 / maxHealth < lowestHealthPercentage && owner != value)
                    {
                        lowestHealthPercentage    = currentHealth * 100 / maxHealth;
                        mostWoundedAlliedChampion = value;
                    }
                }
            }

            if (mostWoundedAlliedChampion != null)
            {
                newHealth = mostWoundedAlliedChampion.GetStats().CurrentHealth + 75 + owner.GetStats().GetLevel() * 15;
                maxHealth = mostWoundedAlliedChampion.GetStats().HealthPoints.Total;
                if (newHealth >= maxHealth)
                {
                    mostWoundedAlliedChampion.GetStats().CurrentHealth = maxHealth;
                }
                else
                {
                    mostWoundedAlliedChampion.GetStats().CurrentHealth = newHealth;
                }

                ApiFunctionManager.AddBuffHUDVisual("SummonerHeal", 1.0f, 1, mostWoundedAlliedChampion, 1.0f);
                ChampionStatModifier statMod2 = new ChampionStatModifier();
                statMod2.MoveSpeed.PercentBonus = 30 / 100.0f;
                mostWoundedAlliedChampion.AddStatModifier(statMod2);
                ApiFunctionManager.CreateTimer(1.0f, () => { mostWoundedAlliedChampion.RemoveStatModifier(statMod2); });
                ApiFunctionManager.AddParticleTarget(mostWoundedAlliedChampion, "global_ss_heal_02.troy",
                                                     mostWoundedAlliedChampion);
                ApiFunctionManager.AddParticleTarget(mostWoundedAlliedChampion, "global_ss_heal_speedboost.troy",
                                                     mostWoundedAlliedChampion);
            }

            newHealth = owner.GetStats().CurrentHealth + 75 + owner.GetStats().GetLevel() * 15;
            maxHealth = owner.GetStats().HealthPoints.Total;
            if (newHealth >= maxHealth)
            {
                owner.GetStats().CurrentHealth = maxHealth;
            }
            else
            {
                owner.GetStats().CurrentHealth = newHealth;
            }

            ApiFunctionManager.AddBuffHUDVisual("SummonerHeal", 1.0f, 1, owner, 1.0f);
            ChampionStatModifier statMod = new ChampionStatModifier();

            statMod.MoveSpeed.PercentBonus = 30 / 100.0f;
            owner.AddStatModifier(statMod);
            ApiFunctionManager.CreateTimer(1.0f, () => { owner.RemoveStatModifier(statMod); });
            ApiFunctionManager.AddParticleTarget(owner, "global_ss_heal.troy", owner);
            ApiFunctionManager.AddParticleTarget(owner, "global_ss_heal_speedboost.troy", owner);
        }
 public void OnActivate(ObjAIBase buffOwner, Spell ownerSpell)
 {
     _AttackSpeedMod = new ChampionStatModifier();
     _AttackSpeedMod.AttackSpeed.PercentBonus = (new float[] { 0.2f, 0.3f, 0.4f, 0.5f, 0.6f })[ownerSpell.Level - 1];
     buffOwner.AddStatModifier(_AttackSpeedMod);
 }