diff options
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r-- | src/game/Unit.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 6bdb04cd90f..33109f6851d 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -14291,7 +14291,10 @@ void Unit::RestoreFaction() } if(CreatureInfo const *cinfo = ((Creature*)this)->GetCreatureInfo()) // normal creature - setFaction(cinfo->faction_A); + { + FactionTemplateEntry const *faction = getFactionTemplateEntry(); + setFaction((faction && faction->friendlyMask & 0x004) ? cinfo->faction_H : cinfo->faction_A); + } } } |