Aktuelle Zeit: 23. Feb 2018 09:49

Alle Zeiten sind UTC + 1 Stunde


Spenden Block 3
User Information
Guest Avatar




Facebook, Google Login
Registrierung
Neue Beiträge
Singel Core 7.3.5 ( 25996 )
von: ElisGrimm Heute 08:24 zum letzten Beitrag Heute 08:24

Midgard Weltraumsimulation
von: nexon Gestern 18:43 zum letzten Beitrag Gestern 18:43

Legion Argus Koordinaten
von: nexon Gestern 18:36 zum letzten Beitrag Gestern 18:36




Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
AbonnentenAbonnenten: 0
LesezeichenLesezeichen: 0
Zugriffe: 363

AutorNachricht
 Betreff des Beitrags: 7.1xx Warrior Charge Alfa fix
BeitragVerfasst: 27. Jan 2017 19:35 
Offline

Registriert: 01.2017
Beiträge: 5
Geschlecht: nicht angegeben
*** Der Link ist nur für Mitglieder sichtbar, zum Login. ***

class spell_warr_charge: public SpellScriptLoader
{
public:
spell_warr_charge() : SpellScriptLoader("spell_warr_charge") { }

class spell_warr_charge_SpellScript : public SpellScript
{
PrepareSpellScript(spell_warr_charge_SpellScript)

bool m_HasAuraDoubleTimeMarker = false; // check

void HandleOnCast()
{
if (Unit* caster = GetCaster())
{
// check nullptr
if (caster->HasAura(WARRIOR_SPELL_DOUBLE_TIME_MARKER)) // check player
m_HasAuraDoubleTimeMarker = true;


if (caster->getLevel() == 110)
{
switch (caster->ToPlayer()->SpecializationId()) // Fix ME CURR_SPEC no class Player
{
case SPEC_WARRIOR_FURY:// talant id not use spec
{
if (caster->HasAura(SPELL_WOD_PVP_FURY_2P)) // need legion cosmetic
caster->CastSpell(caster, SPELL_WOD_PVP_FURY_2P_EFFECT, true);
break;
}
case SPEC_WARRIOR_ARMS:// talant id not use spec
{
if (caster->HasAura(SPELL_WOD_PVP_ARMS_2P)) // need legion cosmetic
caster->CastSpell(caster, SPELL_WOD_PVP_ARMS_2P_EFFECT, true);
break;
}
case SPEC_WARRIOR_PROTECTION:// talant id not use spec
{
if (caster->HasAura(SPELL_WOD_PVP_PROT_2P)) // need legion cosmetic
caster->CastSpell(caster, SPELL_WOD_PVP_PROT_2P_EFFECT, true);
break;
}
default:
break;
}
}
}
}

void HandleCharge(SpellEffIndex /*effIndex*/)
{
Unit* caster = GetCaster();
Unit* target = GetHitUnit();

if (target == nullptr || caster == nullptr) // check
return;

caster->CastSpell(target, caster->HasAura(SPELL_WARR_WARBRINGER) ? SPELL_WARR_WARBRINGER_STUN : SPELL_WARR_CHARGE_ROOT, true);

// Glyph of Blazing Trail 7.x cosmetic?
if (caster->HasAura(SPELL_WARR_GLYPH_OF_THE_BLAZING_TRAIL))
caster->CastSpell(caster, SPELL_WARR_FIRE_VISUAL, true);
}

void HandleRageGain(SpellEffIndex /*effIndex*/)
{
Unit* caster = GetCaster();

if (caster != nullptr && !m_HasAuraDoubleTimeMarker) //check
{
/* uint*/int32 RageGain = GetEffectValue() / caster->GetPowerCoeff(POWER_RAGE);

caster->EnergizeBySpell(caster, GetSpellInfo()->Id, RageGain * caster->GetPowerCoeff(POWER_RAGE), /*POWER_RAGE test*/);
}
}

void Register()
{
OnCast += SpellCastFn(spell_warr_charge_SpellScript::HandleOnCast);
OnEffectHitTarget += SpellEffectFn(spell_warr_charge_SpellScript::HandleCharge, EFFECT_0, SPELL_EFFECT_CHARGE);
OnEffectHitTarget += SpellEffectFn(spell_warr_charge_SpellScript::HandleRageGain, EFFECT_1, SPELL_EFFECT_DUMMY);
}
};

SpellScript* GetSpellScript() const
{
return new spell_warr_charge_SpellScript;
}
};


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: 7.1xx Warrior Charge Alfa fix
BeitragVerfasst: 18. Mai 2017 13:26 
Offline
Benutzeravatar

Registriert: 11.2014
Beiträge: 105
Wohnort: France
Geschlecht: männlich
Nice !

_________________
Bild


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  
© phpBB® Forum Software | phpBB3 Forum von phpBB8.de
» Kontakt & Rechtliches Support / Hilfe Forum Gooof Webdesign Kostenloses Forum Dein Forumo Forum web tracker