Permalink
Browse files

Core/Pets: Fix bugged reactstate behaviour after spline system implem…

…entation.

Signed-off-by: Machiavelli <machiavelli.trinity@gmail.com>
  • Loading branch information...
1 parent 4419568 commit fb39566f1f75838e944cf02a3be36707547a12ae @MrSmite MrSmite committed with Machiavell1 Feb 21, 2012
@@ -15328,14 +15328,6 @@ void Unit::Kill(Unit* victim, bool durabilityLoss)
if (!victim->GetHealth())
return;
- // Inform pets (if any) when player kills target)
- if (Player* player = ToPlayer())
- {
- Pet* pet = player->GetPet();
- if (pet && pet->isAlive() && pet->isControlled())
- pet->AI()->KilledUnit(victim);
- }
-
// find player: owner of controlled `this` or `this` itself maybe
Player* player = GetCharmerOrOwnerPlayerOrPlayerItself();
Creature* creature = victim->ToCreature();
@@ -15464,6 +15456,16 @@ void Unit::Kill(Unit* victim, bool durabilityLoss)
victim->setDeathState(JUST_DIED);
}
+ // Inform pets (if any) when player kills target)
+ // MUST come after victim->setDeathState(JUST_DIED); or pet next target
+ // selection will get stuck on same target and break pet react state
+ if (Player* player = ToPlayer())
+ {
+ Pet* pet = player->GetPet();
+ if (pet && pet->isAlive() && pet->isControlled())
+ pet->AI()->KilledUnit(victim);
+ }
+
// 10% durability loss on death
// clean InHateListOf
if (Player* plrVictim = victim->ToPlayer())
@@ -38,15 +38,18 @@ void TargetedMovementGeneratorMedium<T,D>::_setTargetLocation(T &owner)
return;
float x, y, z;
-
- if (i_offset && i_target->IsWithinDistInMap(&owner,2*i_offset))
- {
- if (!owner.movespline->Finalized())
- return;
-
- owner.GetPosition(x, y, z);
- }
- else if (!i_offset)
+ //! Following block of code deleted by MrSmite in issue 4891
+ //! Code kept for learning and diagnostical purposes
+//
+// if (i_offset && i_target->IsWithinDistInMap(&owner,2*i_offset))
+// {
+// if (!owner.movespline->Finalized())
+// return;
+//
+// owner.GetPosition(x, y, z);
+// }
+// else
+ if (!i_offset)
{
if (i_target->IsWithinMeleeRange(&owner))
return;

0 comments on commit fb39566

Please sign in to comment.