From e50a692fc7bad3b58b573fb3ec15de8e18ba8c12 Mon Sep 17 00:00:00 2001 From: Jelle Meeus Date: Tue, 17 Jun 2025 19:49:18 +0200 Subject: [PATCH] fix(DB): set game_event_* tables to use smallint (#22309) --- .../updates/pending_db_world/rev_1749848424024494127.sql | 6 ++++++ src/server/game/Events/GameEventMgr.cpp | 6 +++--- src/server/game/Globals/ObjectMgr.cpp | 4 ++-- 3 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 data/sql/updates/pending_db_world/rev_1749848424024494127.sql diff --git a/data/sql/updates/pending_db_world/rev_1749848424024494127.sql b/data/sql/updates/pending_db_world/rev_1749848424024494127.sql new file mode 100644 index 000000000..4c18e8ca7 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1749848424024494127.sql @@ -0,0 +1,6 @@ +-- +ALTER TABLE `game_event_creature` MODIFY COLUMN `eventEntry` smallint NOT NULL COMMENT 'Entry of the game event. Put negative entry to remove during event.'; +ALTER TABLE `game_event_gameobject` MODIFY COLUMN `eventEntry` smallint NOT NULL COMMENT 'Entry of the game event. Put negative entry to remove during event.'; +ALTER TABLE `game_event_model_equip` MODIFY COLUMN `eventEntry` tinyint unsigned NOT NULL COMMENT 'Entry of the game event.'; +ALTER TABLE `game_event_npc_vendor` MODIFY COLUMN `eventEntry` smallint NOT NULL COMMENT 'Entry of the game event.'; +ALTER TABLE `game_event_pool` MODIFY COLUMN `eventEntry` smallint NOT NULL COMMENT 'Entry of the game event. Put negative entry to remove during event.'; diff --git a/src/server/game/Events/GameEventMgr.cpp b/src/server/game/Events/GameEventMgr.cpp index 1f61f8c5d..29b813deb 100644 --- a/src/server/game/Events/GameEventMgr.cpp +++ b/src/server/game/Events/GameEventMgr.cpp @@ -512,7 +512,7 @@ void GameEventMgr::LoadEventCreatureData() Field* fields = result->Fetch(); ObjectGuid::LowType guid = fields[0].Get(); - int16 eventId = fields[1].Get(); + int16 eventId = fields[1].Get(); CreatureData const* data = sObjectMgr->GetCreatureData(guid); if (!data) @@ -562,7 +562,7 @@ void GameEventMgr::LoadEventGameObjectData() Field* fields = result->Fetch(); ObjectGuid::LowType guid = fields[0].Get(); - int16 eventId = fields[1].Get(); + int16 eventId = fields[1].Get(); int32 internal_event_id = _gameEvent.size() + eventId - 1; @@ -1020,7 +1020,7 @@ void GameEventMgr::LoadEventPoolData() Field* fields = result->Fetch(); uint32 entry = fields[0].Get(); - int16 eventId = fields[1].Get(); + int16 eventId = fields[1].Get(); int32 internal_event_id = _gameEvent.size() + eventId - 1; diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 330ee91e0..ed2ed79ea 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -2317,7 +2317,7 @@ void ObjectMgr::LoadCreatures() data.movementType = fields[15].Get(); data.spawnMask = fields[16].Get(); data.phaseMask = fields[17].Get(); - int16 gameEvent = fields[18].Get(); + int16 gameEvent = fields[18].Get(); uint32 PoolId = fields[19].Get(); data.npcflag = fields[20].Get(); data.unit_flags = fields[21].Get(); @@ -2709,7 +2709,7 @@ void ObjectMgr::LoadGameobjects() LOG_ERROR("sql.sql", "Table `gameobject` has gameobject (GUID: {} Entry: {}) that has wrong spawn mask {} including not supported difficulty modes for map (Id: {}), skip", guid, data.id, data.spawnMask, data.mapid); data.phaseMask = fields[15].Get(); - int16 gameEvent = fields[16].Get(); + int16 gameEvent = fields[16].Get(); uint32 PoolId = fields[17].Get(); if (data.rotation.x < -1.0f || data.rotation.x > 1.0f)