Jump to content

[fix] freezing arrow


Guest jizar

Recommended Posts

What bug does the patch fix? What features does the patch add?

makes Hunter's freezing arrow work

For which repository revision was the patch created?

works on 8360

Who has been writing this patch? Please include either forum user names or email addresses.

QuaDCore

http://github.com/QuaDCore/QuaDCore/commit/2c8c8b4d884bc3790a4add04db4981aa9fe13f19

diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index db7ddaa..a8dcd13 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -2184,7 +2184,10 @@ void Spell::EffectTriggerMissileSpell(uint32 effect_idx)

    if (m_CastItem)
        DEBUG_LOG("WORLD: cast Item spellId - %i", spellInfo->Id);
-
+    // Fix Freezing Arrow
+    if (m_caster->GetTypeId() == TYPEID_PLAYER)
+        ((Player*)m_caster)->RemoveSpellCooldown(triggered_spell_id);
+   //end
    m_caster->CastSpell(m_targets.m_destX, m_targets.m_destY, m_targets.m_destZ, spellInfo->Id, true, m_CastItem,0, m_originalCasterGUID);
}

Link to comment
Share on other sites

  • 3 weeks later...
  • 1 month later...
  • 3 months later...
  • 3 weeks later...

spelleffects.cpp

@@ -2499,6 +2500,10 @@ void Spell::EffectTriggerSpell(SpellEffectIndex effIndex)

caster = IsSpellWithCasterSourceTargetsOnly(spellInfo) ? unitTarget : m_caster;

caster = IsSpellWithCasterSourceTargetsOnly(spellInfo) ? unitTarget : m_caster;

}

+ if (m_caster->GetTypeId() == TYPEID_PLAYER && m_spellInfo->CategoryRecoveryTime && spellInfo->CategoryRecoveryTime

+ && m_spellInfo->Category == spellInfo->Category)

+ ((Player*)m_caster)->RemoveSpellCooldown(spellInfo->Id);

+

caster->CastSpell(unitTarget,spellInfo,true,NULL,NULL,m_originalCasterGUID);

}

Link to comment
Share on other sites

  • 3 weeks later...

Done this(works correct on 9612):

SpellEffects.cpp

void Spell::EffectTriggerMissileSpell(SpellEffectIndex effect_idx)

{

uint32 triggered_spell_id = m_spellInfo->EffectTriggerSpell[effect_idx];

// normal case

SpellEntry const *spellInfo = sSpellStore.LookupEntry( triggered_spell_id );

if(!spellInfo)

{

sLog.outError("EffectTriggerMissileSpell of spell %u (eff: %u): triggering unknown spell id %u",

m_spellInfo->Id,effect_idx,triggered_spell_id);

return;

}

if (m_CastItem)

DEBUG_LOG("WORLD: cast Item spellId - %i", spellInfo->Id);

if(m_caster->GetTypeId() == TYPEID_PLAYER && m_spellInfo->CategoryRecoveryTime && spellInfo->CategoryRecoveryTime && m_spellInfo->Category == spellInfo->Category && spellInfo->Id == 60202)

((Player*)m_caster)->RemoveSpellCooldown(spellInfo->Id);

m_caster->CastSpell(m_targets.m_destX, m_targets.m_destY, m_targets.m_destZ, spellInfo, true, m_CastItem, 0, m_originalCasterGUID);

}

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use