protected override void ActivatingStart() { Debug.Log("ModdedAbilityHijack: ActivatingStart"); base.ActivatingStart(); //UID component = this.m_Target.GetComponent<UID>(); //if (component == null) //{ // Debug.LogWarning("TODO: set this up to work for a position as well as a target"); //} if (this.m_Target != null) { AIEntity component2 = this.m_Target.GetComponent <AIEntity>(); this.m_AIEntity.HijackTarget(this.m_Target, base.GetRange(), ModdedAbilityHijack.GetHijackTime(component2.HijackLevelRequired, this.m_AIEntity.GetHijackerLevel()), new AbilityHijack.TargetHijackedDelegate(this.TargetHijacked), true, AudioManager.Get().m_HijackTimer); this.UpdateEnergyRegen(); } }
protected new void ActivatingStart() { Debug.Log("ModdedAbilityHijack: ActivatingStart"); // TODO this crashes because of call cycle var method = typeof(Ability).GetMethod("ActivatingStart", BindingFlags.NonPublic | BindingFlags.GetField | BindingFlags.Instance); method.Invoke(this, null); base.ActivatingStart(); //UID component = this.m_Target.GetComponent<UID>(); //if (component == null) //{ // Debug.LogWarning("TODO: set this up to work for a position as well as a target"); //} // else if (this.m_Target != null) { AIEntity component2 = this.m_Target.GetComponent <AIEntity>(); this.m_AIEntity.HijackTarget(this.m_Target, base.GetRange(), ModdedAbilityHijack.GetHijackTime(component2.HijackLevelRequired, this.m_AIEntity.GetHijackerLevel()), new ModdedAbilityHijack_old.TargetHijackedDelegate(this.TargetHijacked), true, AudioManager.Get().m_HijackTimer); this.UpdateEnergyRegen(); } }