aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2022_03_10_06_world.sql3
-rw-r--r--src/server/game/Globals/AreaTriggerDataStore.cpp14
2 files changed, 10 insertions, 7 deletions
diff --git a/sql/updates/world/master/2022_03_10_06_world.sql b/sql/updates/world/master/2022_03_10_06_world.sql
new file mode 100644
index 00000000000..b5f0cd6f13a
--- /dev/null
+++ b/sql/updates/world/master/2022_03_10_06_world.sql
@@ -0,0 +1,3 @@
+ALTER TABLE `areatrigger`
+ ADD `ShapeData6` float NOT NULL DEFAULT 0 AFTER `ShapeData5`,
+ ADD `ShapeData7` float NOT NULL DEFAULT 0 AFTER `ShapeData6`;
diff --git a/src/server/game/Globals/AreaTriggerDataStore.cpp b/src/server/game/Globals/AreaTriggerDataStore.cpp
index 5cfee1028b9..d601db8728a 100644
--- a/src/server/game/Globals/AreaTriggerDataStore.cpp
+++ b/src/server/game/Globals/AreaTriggerDataStore.cpp
@@ -50,7 +50,7 @@ namespace std
namespace
{
std::unordered_map<std::pair<uint32/*mapId*/, uint32/*cell_id*/>, std::set<ObjectGuid::LowType>> _areaTriggerSpawnsByLocation;
- std::unordered_map<uint32, AreaTriggerSpawn> _areaTriggerSpawnsBySpawnId;
+ std::unordered_map<ObjectGuid::LowType, AreaTriggerSpawn> _areaTriggerSpawnsBySpawnId;
std::unordered_map<AreaTriggerId, AreaTriggerTemplate> _areaTriggerTemplateStore;
std::unordered_map<uint32, AreaTriggerCreateProperties> _areaTriggerCreateProperties;
}
@@ -178,8 +178,8 @@ void AreaTriggerDataStore::LoadAreaTriggerTemplates()
// 0 1 2 3 4 5 6 7 8 9 10
if (QueryResult areatriggerCreateProperties = WorldDatabase.Query("SELECT Id, AreaTriggerId, MoveCurveId, ScaleCurveId, MorphCurveId, FacingCurveId, AnimId, AnimKitId, DecalPropertiesId, TimeToTarget, TimeToTargetScale, "
- // 11 12 13 14 15 16 17 18
- "Shape, ShapeData0, ShapeData1, ShapeData2, ShapeData3, ShapeData4, ShapeData5, ScriptName FROM `areatrigger_create_properties`"))
+ // 11 12 13 14 15 16 17 18 19 20
+ "Shape, ShapeData0, ShapeData1, ShapeData2, ShapeData3, ShapeData4, ShapeData5, ShapeData6, ShapeData7, ScriptName FROM `areatrigger_create_properties`"))
{
do
{
@@ -234,7 +234,7 @@ void AreaTriggerDataStore::LoadAreaTriggerTemplates()
for (uint8 i = 0; i < MAX_AREATRIGGER_ENTITY_DATA; ++i)
createProperties.Shape.DefaultDatas.Data[i] = fields[12 + i].GetFloat();
- createProperties.ScriptId = sObjectMgr->GetScriptId(fields[18].GetString());
+ createProperties.ScriptId = sObjectMgr->GetScriptId(fields[20].GetString());
if (shape == AREATRIGGER_TYPE_POLYGON)
if (createProperties.Shape.PolygonDatas.Height <= 0.0f)
@@ -307,8 +307,8 @@ void AreaTriggerDataStore::LoadAreaTriggerSpawns()
// Load area trigger positions (to put them on the server)
// 0 1 2 3 4 5 6 7 8 9 10
if (QueryResult templates = WorldDatabase.Query("SELECT SpawnId, AreaTriggerId, IsServerSide, MapId, PosX, PosY, PosZ, Orientation, PhaseUseFlags, PhaseId, PhaseGroup, "
- // 11 12 13 14 15 16 17 18
- "Shape, ShapeData0, ShapeData1, ShapeData2, ShapeData3, ShapeData4, ShapeData5, ScriptName FROM `areatrigger`"))
+ // 11 12 13 14 15 16 17 18 19 20
+ "Shape, ShapeData0, ShapeData1, ShapeData2, ShapeData3, ShapeData4, ShapeData5, ShapeData6, ShapeData7, ScriptName FROM `areatrigger`"))
{
do
{
@@ -354,7 +354,7 @@ void AreaTriggerDataStore::LoadAreaTriggerSpawns()
for (uint8 i = 0; i < MAX_AREATRIGGER_ENTITY_DATA; ++i)
spawn.Shape.DefaultDatas.Data[i] = fields[12 + i].GetFloat();
- spawn.scriptId = sObjectMgr->GetScriptId(fields[18].GetString());
+ spawn.scriptId = sObjectMgr->GetScriptId(fields[20].GetString());
spawn.spawnGroupData = sObjectMgr->GetLegacySpawnGroup();
// Add the trigger to a map::cell map, which is later used by GridLoader to query