aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/Creature.cpp6
-rw-r--r--src/game/ObjectMgr.cpp8
2 files changed, 7 insertions, 7 deletions
diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp
index 2d70cec8ed9..c453217a77c 100644
--- a/src/game/Creature.cpp
+++ b/src/game/Creature.cpp
@@ -206,12 +206,6 @@ void Creature::SearchFormationAndPath()
if(!lowguid)
return;
- if(isTrigger())
- {
- SetDefaultMovementType(IDLE_MOTION_TYPE);
- return;
- }
-
bool usePath = (GetDefaultMovementType() == WAYPOINT_MOTION_TYPE);
CreatureGroupInfoType::iterator frmdata = CreatureGroupMap.find(lowguid);
if(frmdata != CreatureGroupMap.end())
diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp
index c5271429ddd..c60c5f43aef 100644
--- a/src/game/ObjectMgr.cpp
+++ b/src/game/ObjectMgr.cpp
@@ -1128,7 +1128,11 @@ void ObjectMgr::LoadCreatures()
}
// I do not know why but in db most display id are not zero
- if(data.displayid == cInfo->Modelid_A1 || data.displayid == cInfo->Modelid_A2
+ if(data.displayid == 11686)
+ {
+ (const_cast<CreatureInfo*>(cInfo))->flags_extra |= CREATURE_FLAG_EXTRA_TRIGGER;
+ }
+ else if(data.displayid == cInfo->Modelid_A1 || data.displayid == cInfo->Modelid_A2
|| data.displayid == cInfo->Modelid_H1 || data.displayid == cInfo->Modelid_H2)
data.displayid = 0;
@@ -1172,6 +1176,8 @@ void ObjectMgr::LoadCreatures()
sLog.outErrorDb("Table `creature` have creature (GUID: %u Entry: %u) with `MovementType`=1 (random movement) but with `spawndist`=0, replace by idle movement type (0).",guid,data.id );
data.movementType = IDLE_MOTION_TYPE;
}
+ else if(cInfo->flags_extra & CREATURE_FLAG_EXTRA_TRIGGER)
+ data.movementType = IDLE_MOTION_TYPE;
}
else if(data.movementType == IDLE_MOTION_TYPE)
{