diff --git a/data/sql/updates/pending_db_world/rev_1735214037279163200.sql b/data/sql/updates/pending_db_world/rev_1735214037279163200.sql new file mode 100644 index 00000000000000..8e1082fa87ae99 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1735214037279163200.sql @@ -0,0 +1,7 @@ +-- +DELETE FROM `smart_scripts` WHERE (`source_type` = 1 AND `entryorguid` = 184568); +INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(184568, 1, 0, 1, 64, 0, 100, 1, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 205, 26, 2, 0, 0, 0, 0, 0, 0, 'Lady Vashj Bridge Console - On Gossip Hello - Activate Gameobject (No repeat)'), +(184568, 1, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 205, 27, 2, 0, 0, 0, 0, 0, 0, 'Lady Vashj Bridge Console - On Gossip Hello - Activate Gameobject (No repeat)'), +(184568, 1, 2, 3, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 205, 28, 2, 0, 0, 0, 0, 0, 0, 'Lady Vashj Bridge Console - On Gossip Hello - Activate Gameobject (No repeat)'), +(184568, 1, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 205, 29, 2, 0, 0, 0, 0, 0, 0, 'Lady Vashj Bridge Console - On Gossip Hello - Activate Gameobject (No repeat)'); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp index 5ac0206e412a1f..7a4d7ab93d953a 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp @@ -26,14 +26,6 @@ #include "SpellAuraEffects.h" #include "SpellScript.h" -DoorData const doorData[] = -{ - { GO_LADY_VASHJ_BRIDGE_CONSOLE, DATA_BRIDGE_EMERGED, DOOR_TYPE_PASSAGE }, - { GO_COILFANG_BRIDGE1, DATA_BRIDGE_EMERGED, DOOR_TYPE_PASSAGE }, - { GO_COILFANG_BRIDGE2, DATA_BRIDGE_EMERGED, DOOR_TYPE_PASSAGE }, - { GO_COILFANG_BRIDGE3, DATA_BRIDGE_EMERGED, DOOR_TYPE_PASSAGE } -}; - ObjectData const creatureData[] = { { NPC_LEOTHERAS_THE_BLIND, DATA_LEOTHERAS_THE_BLIND }, @@ -45,8 +37,12 @@ ObjectData const creatureData[] = ObjectData const gameObjectData[] = { - { GO_STRANGE_POOL, DATA_STRANGE_POOL }, - { 0, 0 } + { GO_STRANGE_POOL, DATA_STRANGE_POOL }, + { GO_LADY_VASHJ_BRIDGE_CONSOLE, DATA_CONSOLE }, + { GO_COILFANG_BRIDGE1, DATA_BRIDGE_PART1 }, + { GO_COILFANG_BRIDGE2, DATA_BRIDGE_PART2 }, + { GO_COILFANG_BRIDGE3, DATA_BRIDGE_PART3 }, + { 0, 0 } }; MinionData const minionData[] = @@ -86,7 +82,6 @@ class instance_serpent_shrine : public InstanceMapScript { SetHeaders(DataHeader); SetBossNumber(MAX_ENCOUNTERS); - LoadDoorData(doorData); LoadObjectData(creatureData, gameObjectData); LoadMinionData(minionData); LoadBossBoundaries(boundaries); @@ -118,6 +113,12 @@ class instance_serpent_shrine : public InstanceMapScript case GO_SHIELD_GENERATOR4: _shieldGeneratorGUID[go->GetEntry() - GO_SHIELD_GENERATOR1] = go->GetGUID(); break; + case GO_LADY_VASHJ_BRIDGE_CONSOLE: + case GO_COILFANG_BRIDGE1: + case GO_COILFANG_BRIDGE2: + case GO_COILFANG_BRIDGE3: + go->AllowSaveToDB(true); + break; } InstanceScript::OnGameObjectCreate(go); @@ -157,10 +158,6 @@ class instance_serpent_shrine : public InstanceMapScript if (_aliveKeepersCount > MIN_KEEPER_COUNT) --_aliveKeepersCount; break; - case DATA_BRIDGE_ACTIVATED: - SetBossState(DATA_BRIDGE_EMERGED, NOT_STARTED); - SetBossState(DATA_BRIDGE_EMERGED, DONE); - break; case DATA_ACTIVATE_SHIELD: if (Creature* vashj = GetCreature(DATA_LADY_VASHJ)) { diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/serpent_shrine.h b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/serpent_shrine.h index 4a1d5e27654d6c..e25aea198fbaa6 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/serpent_shrine.h +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/serpent_shrine.h @@ -31,17 +31,19 @@ enum DataTypes DATA_LEOTHERAS_THE_BLIND = 2, DATA_FATHOM_LORD_KARATHRESS = 3, DATA_MOROGRIM_TIDEWALKER = 4, - DATA_BRIDGE_EMERGED = 5, - DATA_LADY_VASHJ = 6, - MAX_ENCOUNTERS = 7, + DATA_LADY_VASHJ = 5, + MAX_ENCOUNTERS = 6, DATA_PLATFORM_KEEPER_RESPAWNED = 20, DATA_PLATFORM_KEEPER_DIED = 21, DATA_ALIVE_KEEPERS = 22, - DATA_BRIDGE_ACTIVATED = 23, - DATA_ACTIVATE_SHIELD = 24, - DATA_STRANGE_POOL = 25, - DATA_SEER_OLUM = 26 + DATA_ACTIVATE_SHIELD = 23, + DATA_STRANGE_POOL = 24, + DATA_SEER_OLUM = 25, + DATA_CONSOLE = 26, // Used by the console SAI. + DATA_BRIDGE_PART1 = 27, // Used by the console SAI. + DATA_BRIDGE_PART2 = 28, // Used by the console SAI. + DATA_BRIDGE_PART3 = 29 // Used by the console SAI. }; enum SSNPCs @@ -91,8 +93,8 @@ enum SSSpells enum KeeperCount { - MIN_KEEPER_COUNT = 0, - MAX_KEEPER_COUNT = 24 + MIN_KEEPER_COUNT = 0, + MAX_KEEPER_COUNT = 24 }; template