aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrista <aconstantgoal@abv.bg>2012-12-16 17:01:26 -0800
committerTrista <aconstantgoal@abv.bg>2012-12-16 17:01:26 -0800
commit47617bb740ce3d3615dde8e9546cacc9e5faa738 (patch)
tree19cced574872d38bb6309f68d09d89b5a66cdf82
parent815742f44d6db09ea6ba63f92e5fe3fd01f8b0e5 (diff)
parented4bf13c44c87da3dedc17a5453f7b3185787ffc (diff)
Merge pull request #8565 from Trista/master
Core/Creature: Update template - reinitialize spell bar for vehicles
-rw-r--r--src/server/game/Entities/Creature/Creature.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp
index 4600caa63e3..b28295d47ef 100644
--- a/src/server/game/Entities/Creature/Creature.cpp
+++ b/src/server/game/Entities/Creature/Creature.cpp
@@ -411,6 +411,16 @@ bool Creature::UpdateEntry(uint32 Entry, uint32 team, const CreatureData* data)
SetPvP(false);
}
+ // updates spell bars for vehicles and set player's faction - should be called here, to overwrite faction that is set from the new template
+ if (IsVehicle())
+ {
+ if (Player* owner = Creature::GetCharmerOrOwnerPlayerOrPlayerItself()) // this check comes in case we don't have a player
+ {
+ setFaction(owner->getFaction()); // vehicles should have same as owner faction
+ owner->VehicleSpellInitialize();
+ }
+ }
+
// trigger creature is always not selectable and can not be attacked
if (isTrigger())
SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);