[8717] Fixed SPELL_EFFECT_TAMECREATURE broken after [8686]

Signed-off-by: ApoC <apoc@nymfe.net>
This commit is contained in:
ApoC 2009-10-23 21:42:23 +02:00
parent 67c991b216
commit 40b0a2cd92
3 changed files with 8 additions and 4 deletions

View file

@ -4318,12 +4318,15 @@ SpellCastResult Spell::CheckCast(bool strict)
}
case SPELL_EFFECT_TAMECREATURE:
{
if (m_caster->GetTypeId() != TYPEID_PLAYER ||
// Spell can be triggered, we need to check original caster prior to caster
Unit* caster = m_originalCaster ? m_originalCaster : m_caster;
if (caster->GetTypeId() != TYPEID_PLAYER ||
!m_targets.getUnitTarget() ||
m_targets.getUnitTarget()->GetTypeId() == TYPEID_PLAYER)
return SPELL_FAILED_BAD_TARGETS;
Player* plrCaster = (Player*)m_caster;
Player* plrCaster = (Player*)caster;
if(plrCaster->getClass() != CLASS_HUNTER)
{

View file

@ -4158,7 +4158,8 @@ void Spell::EffectEnchantItemTmp(uint32 i)
void Spell::EffectTameCreature(uint32 /*i*/)
{
// Caster must be player, checked in Spell::CheckCast
Player* plr = (Player*)m_caster;
// Spell can be triggered, we need to check original caster prior to caster
Player* plr = (Player*)(m_originalCaster ? m_originalCaster : m_caster);
Creature* creatureTarget = (Creature*)unitTarget;

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "8716"
#define REVISION_NR "8717"
#endif // __REVISION_NR_H__