public SpellData(SpellSlot spellSlot, bool checkIfActive, DamageLibrary.SpellStages spellStage, Color c) { _onlyIfActive = checkIfActive; _spellSlot = spellSlot; _stage = spellStage; Color = c; }
internal static bool TryGetStage(Champion champion, SpellSlot slot, DamageLibrary.SpellStages stage, out Damage.DamageSourceBase damageSourceBase) { damageSourceBase = null; if (!ContainsStage(champion, slot, stage)) { return(false); } damageSourceBase = Database[champion][slot][stage]; return(true); }
internal static void ReplaceSpell <T>(AIHeroClient hero, SpellSlot slot, DamageLibrary.SpellStages stage) where T : DamageSourceReplacement { Database[hero.Hero][slot][stage] = (T)Activator.CreateInstance(typeof(T), BindingFlags.NonPublic | BindingFlags.Instance, null, new object[] { slot, Database[hero.Hero][slot][stage] }, null); }
internal static bool ContainsStage(Champion champion, SpellSlot slot, DamageLibrary.SpellStages stage) { return(ContainsSlot(champion, slot) && Database[champion][slot].ContainsKey(stage)); }
public static float GetSpellDamageOverride(this AIHeroClient Attacker, Obj_AI_Base Target, SpellSlot slot, DamageLibrary.SpellStages stage = DamageLibrary.SpellStages.Default) { // in case of Bugs or not updated stuff inside the SDK return(Attacker.GetSpellDamage(Target, slot, stage)); }