diff options
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r-- | src/game/Unit.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index e2db82879a4..ad210ad8fd6 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -13626,16 +13626,16 @@ void Unit::RestoreFaction() ((Player*)this)->setFactionForRace(getRace()); else { - CreatureInfo const *cinfo = ((Creature*)this)->GetCreatureInfo(); - - if(((Creature*)this)->isPet()) + if(((Creature*)this)->HasSummonMask(SUMMON_MASK_MINION)) { if(Unit* owner = GetOwner()) + { setFaction(owner->getFaction()); - else if(cinfo) - setFaction(cinfo->faction_A); + return; + } } - else if(cinfo) // normal creature + + if(CreatureInfo const *cinfo = ((Creature*)this)->GetCreatureInfo()) // normal creature setFaction(cinfo->faction_A); } } |