Core/CreatureAI: Implemented SummonedCreatureDies function for scripting, it is called when the summoner's summon dies.

--HG--
branch : trunk
This commit is contained in:
_manuel_
2010-12-03 14:23:49 -03:00
parent e0c992a8ba
commit ada9c4ae98
2 changed files with 10 additions and 0 deletions
+1
View File
@@ -106,6 +106,7 @@ class CreatureAI : public UnitAI
virtual void IsSummonedBy(Unit * /*summoner*/) {}
virtual void SummonedCreatureDespawn(Creature* /*unit*/) {}
virtual void SummonedCreatureDies(Creature* /*unit*/, Unit* /*killer*/) {}
// Called when hit by a spell
virtual void SpellHit(Unit*, const SpellEntry*) {}
+9
View File
@@ -15194,6 +15194,15 @@ void Unit::Kill(Unit *pVictim, bool durabilityLoss)
// Call creature just died function
if (creature->IsAIEnabled)
creature->AI()->JustDied(this);
if (creature->ToTempSummon())
{
if (Unit* pSummoner = creature->ToTempSummon()->GetSummoner())
{
if (pSummoner->ToCreature() && pSummoner->ToCreature()->IsAIEnabled)
pSummoner->ToCreature()->AI()->SummonedCreatureDies(creature, this);
}
}
// Dungeon specific stuff, only applies to players killing creatures
if (creature->GetInstanceId())