From 90bc6f1e39e27566186a69acab788a330a4a3c13 Mon Sep 17 00:00:00 2001 From: leak Date: Thu, 24 Jul 2014 21:55:37 +0200 Subject: Restore mmaps gen build Closes #12631 --- src/tools/mmaps_generator/MapBuilder.cpp | 12 +++++++----- src/tools/mmaps_generator/MapBuilder.h | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/tools/mmaps_generator/MapBuilder.cpp b/src/tools/mmaps_generator/MapBuilder.cpp index 01a342249fd..a29502535e6 100644 --- a/src/tools/mmaps_generator/MapBuilder.cpp +++ b/src/tools/mmaps_generator/MapBuilder.cpp @@ -171,14 +171,16 @@ namespace MMAP { while (1) { - uint32 mapId; + uint32* mapId; _queue.WaitAndPop(mapId); if (_cancelationToken) return; - buildMap(mapId); + buildMap(*mapId); + + delete mapId; } } @@ -196,13 +198,13 @@ namespace MMAP for (TileList::iterator it = m_tiles.begin(); it != m_tiles.end(); ++it) { - uint32 mapID = it->m_mapId; - if (!shouldSkipMap(mapID)) + uint32* mapID = new uint32(it->m_mapId); + if (!shouldSkipMap(*mapID)) { if (threads > 0) _queue.Push(mapID); else - buildMap(mapID); + buildMap(*mapID); } } diff --git a/src/tools/mmaps_generator/MapBuilder.h b/src/tools/mmaps_generator/MapBuilder.h index 1d688ccfa77..c2168d048b4 100644 --- a/src/tools/mmaps_generator/MapBuilder.h +++ b/src/tools/mmaps_generator/MapBuilder.h @@ -143,7 +143,7 @@ namespace MMAP rcContext* m_rcContext; std::vector _workerThreads; - ProducerConsumerQueue _queue; + ProducerConsumerQueue _queue; std::atomic _cancelationToken; }; } -- cgit v1.2.3 From fb484f9917523d7a53971f1b982a3a8ebd2c277c Mon Sep 17 00:00:00 2001 From: WishToDie Date: Thu, 24 Jul 2014 23:39:05 +0300 Subject: Fix typo in 2014_07_13_01_world_misc.sql --- sql/updates/world/2014_07_13_01_world_misc.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/updates/world/2014_07_13_01_world_misc.sql b/sql/updates/world/2014_07_13_01_world_misc.sql index 2e0b0f56ccf..66610aedebe 100644 --- a/sql/updates/world/2014_07_13_01_world_misc.sql +++ b/sql/updates/world/2014_07_13_01_world_misc.sql @@ -1,5 +1,5 @@ -- -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` IN(13,17) AND `SourceEntry`=28268; +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` IN(13,17) AND `SourceEntry`=48268; INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES (17, 0, 48268, 0, 0, 36, 1, 0, 0, 0, 1, 0, 0, '', 'Target needs to be dead'), (17, 0, 48268, 0, 0, 31, 1, 3, 27202, 0, 0, 0, 0, '', 'Target needs to be Onslaught Raven Priest'), -- cgit v1.2.3 From d1f8dbd561c57bfb4ece13558b16ad535756819a Mon Sep 17 00:00:00 2001 From: Dr-J Date: Thu, 24 Jul 2014 22:12:13 +0100 Subject: DB/QUEST: Quest a Carver and a Croaker Closes #3649 --- sql/updates/world/2014_07_24_14_world_sai.sql | 32 +++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 sql/updates/world/2014_07_24_14_world_sai.sql diff --git a/sql/updates/world/2014_07_24_14_world_sai.sql b/sql/updates/world/2014_07_24_14_world_sai.sql new file mode 100644 index 00000000000..8d568c56f21 --- /dev/null +++ b/sql/updates/world/2014_07_24_14_world_sai.sql @@ -0,0 +1,32 @@ +DELETE FROM `creature_text` WHERE `entry` IN(26531,24525); +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`) VALUES +(26531, 0, 0, '%s is entranced by the sun''s reflection on Zeh''gehn''s knife.', 16, 0, 100, 0, 0, 0, 'Mesmerized Frog'), +(26531, 1, 0, '%s croaks eagerly while directing its gaze to the docked ship.', 16, 0, 100, 0, 0, 0, 'Mesmerized Frog'), +(24525, 0, 0, 'Ku into me carver, ye ugly croaker! Ku and show me who dares cross me brethren!', 12, 0, 100, 0, 0, 0, 'Zeh''gehn'), +(24525, 1, 0, 'Dis a rankin'' set, mon, no scurvy dog gonna kass-kass me buckos an'' walk aweh! ', 12, 0, 100, 0, 0, 0, 'Zeh''gehn'); + +UPDATE `creature_template` SET AIName='SmartAI' WHERE `entry`=24525; +DELETE FROM `smart_scripts` WHERE (`entryorguid`=24525 AND `source_type`=0); +DELETE FROM `smart_scripts` WHERE (`entryorguid`=2452500 AND `source_type`=9); + +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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(24525, 0, 0, 0, 20, 0, 100, 0, 11476, 0, 0, 0, 80, 2452500, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Zeh''gehn - On Quest reward A Carver and a Croaker - Run Script'), +(2452500, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 12, 26531, 1, 30000, 0, 0, 0, 8, 0, 0, 0, -133.458, -3545.554, 2.894682, 4.520403, 'Zeh''gehn - Script - Spawn Mesmerized Frog'), +(2452500, 9, 1, 0, 0, 0, 100, 0, 3000, 3000, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Zeh''gehn - Script - Say Line 1'), +(2452500, 9, 2, 0, 0, 0, 100, 0, 3000, 3000, 0, 0, 1, 0, 0, 0, 0, 0, 0, 19, 26531, 0, 0, 0, 0, 0, 0, 'Zeh''gehn - Script - Say Line 1 (Mesmerized Frog)'), +(2452500, 9, 3, 0, 0, 0, 100, 0, 5000, 5000, 0, 0, 1, 1, 0, 0, 0, 0, 0, 19, 26531, 0, 0, 0, 0, 0, 0, 'Zeh''gehn - Script - Say Line 2 (Mesmerized Frog)'), +(2452500, 9, 4, 0, 0, 0, 100, 0, 5000, 5000, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Zeh''gehn - Script - Say Line 2'); + +UPDATE `creature_template` SET `AIName`='SmartAI',`npcflag`=16777216 WHERE `entry`=26503; +DELETE FROM `smart_scripts` WHERE `entryorguid`=26503; +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`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(26503,0,1,2,73,0,100,0,47121,0,0,0,56,35803,1,0,0,0,0,7,0,0,0,0,0,0,0,'Scalawag Frog - On Spellclick - Add Item Scalawag Frog'), +(26503,0,2,0,61,0,100,0,0,0,0,0,41,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Scalawag Frog - Linked with Previous Event - Despawn'); + +DELETE FROM `npc_spellclick_spells` WHERE `npc_entry`=26503; +INSERT INTO `npc_spellclick_spells` (`npc_entry`, `spell_id`, `cast_flags`, `user_type`) VALUES +(26503, 47121, 0, 0); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=18 AND `SourceGroup`=26503; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(18, 26503, 47121, 0, 0, 9, 0, 11476, 0, 0, 0, 0, 0, '', 'Required quest active for spellclick'); -- cgit v1.2.3 From b63af06b6224fc0b09421f4edd4ccd696e4143df Mon Sep 17 00:00:00 2001 From: Dr-J Date: Thu, 24 Jul 2014 22:51:59 +0100 Subject: I must not forget to add broadcasttext IDS... --- sql/updates/world/2014_07_24_14_world_sai.sql | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sql/updates/world/2014_07_24_14_world_sai.sql b/sql/updates/world/2014_07_24_14_world_sai.sql index 8d568c56f21..3089e1d0f80 100644 --- a/sql/updates/world/2014_07_24_14_world_sai.sql +++ b/sql/updates/world/2014_07_24_14_world_sai.sql @@ -30,3 +30,9 @@ INSERT INTO `npc_spellclick_spells` (`npc_entry`, `spell_id`, `cast_flags`, `use DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=18 AND `SourceGroup`=26503; INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES (18, 26503, 47121, 0, 0, 9, 0, 11476, 0, 0, 0, 0, 0, '', 'Required quest active for spellclick'); + +UPDATE `creature_text` SET `BroadcastTextID`=25732 WHERE `entry`=26531 AND `groupid`=0 AND `id`=0; +UPDATE `creature_text` SET `BroadcastTextID`=25733 WHERE `entry`=26531 AND `groupid`=1 AND `id`=0; +UPDATE `creature_text` SET `BroadcastTextID`=25734 WHERE `entry`=24525 AND `groupid`=0 AND `id`=0; +UPDATE `creature_text` SET `BroadcastTextID`=23581 WHERE `entry`=24525 AND `groupid`=1 AND `id`=0; +UPDATE `smart_scripts` SET `target_type`=1, `target_param1`=0 WHERE `entryorguid`=36913 AND `source_type`=0 AND `id`=2; -- cgit v1.2.3 From 9cdc9f84d6a5c7036f5091667e5b1ae2b9b4abce Mon Sep 17 00:00:00 2001 From: Dr-J Date: Fri, 25 Jul 2014 00:39:17 +0100 Subject: DB/QUEST: Healing the lake Closes #12504 Closes #12526 --- sql/updates/world/2014_07_24_15_world_sai.sql | 51 +++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 sql/updates/world/2014_07_24_15_world_sai.sql diff --git a/sql/updates/world/2014_07_24_15_world_sai.sql b/sql/updates/world/2014_07_24_15_world_sai.sql new file mode 100644 index 00000000000..f064476e413 --- /dev/null +++ b/sql/updates/world/2014_07_24_15_world_sai.sql @@ -0,0 +1,51 @@ +SET @Guid := 84989; + +UPDATE `creature_template` SET `ainame`='SmartAI', `scriptname`='' WHERE `entry` IN(16514,16516, 17071); + +DELETE FROM `smart_scripts` WHERE `entryorguid`=16522 AND `source_type`=0 AND `id` IN(12,13); +DELETE FROM `smart_scripts` WHERE `entryorguid` IN(16514,17071) AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=-@Guid AND `source_type`=0; + +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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(16522, 0, 12, 0, 4, 0, 100, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Surveyor Candress - On Agro - Say'), +(16522, 0, 13, 0, 25, 0, 100, 0, 0, 0, 0, 0, 11, 31515, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Surveyor Candress - On Reset - Cast Red Beam'), +(16514, 0, 0, 0, 20, 0, 100, 0, 9294, 0, 0, 0, 1, 0, 5000, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Quest Reward - Say Line 1'), +(16514, 0, 1, 2, 52, 0, 100, 0, 0, 16514, 0, 0, 1, 0, 5000, 0, 0, 0, 0, 19, 20227, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Say Line 1 (Apprentice Tedon)'), +(16514, 0, 2, 3, 61, 0, 100, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 14, 21645, 181370, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Activate Volatile mutation cage'), +(16514, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 45, 1, 1, 0, 0, 0, 0, 10, @Guid, 16516, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Set Data on Volatile Mutation'), +(16514, 0, 4, 5, 52, 0, 100, 0, 0, 20227, 0, 0, 1, 1, 5000, 0, 0, 0, 0, 19, 20227, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Say Line 1 (Apprentice Tedon)'), +(16514, 0, 5, 6, 61, 0, 100, 0, 0, 0, 0, 0, 45, 2, 2, 0, 0, 0, 0, 10, @Guid, 16516, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Set Data on Volatile Mutation'), +(16514, 0, 6, 0, 61, 0, 100, 0, 0, 0, 0, 0, 5, 133, 0, 0, 0, 0, 0, 19, 20227, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Play emote STATE_USESTANDING_NOSHEATHE(Apprentice Tedon)'), +(16514, 0, 7, 8, 52, 0, 100, 0, 1, 20227, 0, 0, 5, 30, 0, 0, 0, 0, 0, 19, 20227, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Play emote STATE_NONE (Apprentice Tedon)'), +(16514, 0, 8, 0, 61, 0, 100, 0, 0, 0, 0, 0, 1, 2, 30000, 0, 0, 0, 0, 19, 20227, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Text Over - Say Line 1 (Apprentice Tedon)'), +(17071, 0, 0, 0, 20, 0, 100, 0, 9294, 0, 0, 0, 1, 0, 5000, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Botanist Taerix - On Quest Reward - Say Line 1'), +(-@Guid, 0, 0, 0, 38, 0, 100, 0, 1, 1, 0, 0, 46, 5, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Volatile Mutation - On Data Set - Move out of cage'), +(-@Guid, 0, 1, 2, 38, 0, 100, 0, 2, 2, 0, 0, 11, 35068, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Volatile Mutation - On Data Set - Cast Quest - Volatile Mutation Transformation'), +(-@Guid, 0, 2, 3, 61, 0, 100, 0, 0, 0, 0, 0, 59, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Volatile Mutation - On Data Set - Cast Quest - Set Run'), +(-@Guid, 0, 3, 4, 61, 0, 100, 0, 0, 0, 0, 0, 46, 50, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Volatile Mutation - On Data Set - Cast Quest - Move'), +(-@Guid, 0, 4, 0, 61, 0, 100, 0, 0, 0, 0, 0, 41, 10000, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Volatile Mutation - On Data Set - Despawn'); + +UPDATE `gameobject_template` SET `AIName`='SmartGameObjectAI', `ScriptName`='' WHERE`entry`IN(181433); + +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (181433); +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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(181433, 1, 0 ,0,70, 0, 100, 0, 2, 0, 0,0,1,0,0,0,0,0,0,19,20239,0,0,0, 0, 0, 0, 'Irradiated Power Crystal - On State Changed - Say Line 1 (Neutralizing Emote Placeholder)'); + + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=31515; + +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(13, 1, 31515, 0, 0, 31, 0, 3, 17947, 0, 0, 0, 0, '', 'Spell Red Beam targets Red Crystal Bunny'); + +DELETE FROM `creature_text` WHERE `entry` IN(16522, 20239, 16514,20227); +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`, `BroadcastTextID`) VALUES +(16522, 0, 0, 'You''ll not take me alive, scum!', 12, 0, 100, 0, 0, 0, 'Surveyor Candress', 12767), +(20239, 0, 0, 'As the neutralizing agent mixes into the waters of the lake, the water that was irradiated by the crystal seems to clear.', 16, 0, 100, 0, 0, 0, 'Neutralizing Emote Placeholder', 17912), +(16514, 0, 0, 'Tedon, go ahead and try the neutralizing agent on the mutated creature.', 12, 0, 100, 1, 0, 0, 'Botanist Taerix', 17938), +(20227, 0, 0, 'Looks like it''s time to let you out of this cage.', 12, 0, 100, 1, 0, 0, 'Apprentice Tedon', 17925), +(20227, 1, 0, 'Now, to put the neutralizing agent on it...', 12, 0, 100, 0, 0, 0, 'Apprentice Tedon', 17934), +(20227, 2, 0, 'Success!', 12, 0, 100, 71, 0, 0, 'Apprentice Tedon', 17939); + +DELETE FROM `creature` WHERE `guid`=@Guid; +INSERT INTO `creature` (`guid`, `id`, `map`, `spawnMask`, `phaseMask`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `MovementType`) VALUES +(@Guid, 16516, 530, 1, 1, -4059.076, -13711.39, 73.58478, 5.88176, 120, 0, 0); -- 16516 (Area: -1) -- cgit v1.2.3 From 89f67fc0c371d80596f80f67caa9d46c62d9faaf Mon Sep 17 00:00:00 2001 From: Malcrom Date: Thu, 24 Jul 2014 23:41:30 -0230 Subject: DB/Waypoints: Pathing for Empoor and Formation for his bodyguard --- .../world/2014_07_24_16_world_waypoints.sql | 169 +++++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 sql/updates/world/2014_07_24_16_world_waypoints.sql diff --git a/sql/updates/world/2014_07_24_16_world_waypoints.sql b/sql/updates/world/2014_07_24_16_world_waypoints.sql new file mode 100644 index 00000000000..8aaf55b2136 --- /dev/null +++ b/sql/updates/world/2014_07_24_16_world_waypoints.sql @@ -0,0 +1,169 @@ +-- Pathing for Empoor Entry: 18482 and Formation for his bodyguard +SET @NPC := 66605; +SET @PATH := @NPC * 10; +UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-1954.978,`position_y`=4752.3,`position_z`=-2.763442 WHERE `guid`=@NPC; +UPDATE `creature` SET `position_x`=-1956.585, `position_y`=4751.758, `position_z`=-2.86066, `orientation`=2.005122 WHERE `guid`=66606; +DELETE FROM `creature_formations` WHERE `leaderGUID`=66605; +INSERT INTO `creature_formations` (`leaderGUID`,`memberGUID`,`dist`,`angle`,`groupAI`)VALUES +(66605,66605,0,0,2),(66605,66606,2,270,2); +DELETE FROM `creature_addon` WHERE `guid`=@NPC; +INSERT INTO `creature_addon` (`guid`,`path_id`,`bytes2`,`mount`,`auras`) VALUES (@NPC,@PATH,1,0, ''); +DELETE FROM `waypoint_data` WHERE `id`=@PATH; +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +(@PATH,1,-1954.978,4752.3,-2.763442,0,0,0,0,100,0), +(@PATH,2,-1957.74,4762.069,-2.1277,0,0,0,0,100,0), +(@PATH,3,-1958.931,4774.595,-1.305666,0,0,0,0,100,0), +(@PATH,4,-1959.278,4786.453,-0.680666,0,0,0,0,100,0), +(@PATH,5,-1957.059,4799.901,-0.05566597,0,0,0,0,100,0), +(@PATH,6,-1952.969,4812.153,0.4542291,0,0,0,0,100,0), +(@PATH,7,-1947.459,4824.405,0.695318,0,0,0,0,100,0), +(@PATH,8,-1940.22,4836.162,1.116857,0,0,0,0,100,0), +(@PATH,9,-1931.706,4848.864,1.735298,0,0,0,0,100,0), +(@PATH,10,-1926.987,4857.382,1.735298,0,0,0,0,100,0), +(@PATH,11,-1922.212,4869.189,1.888846,0,0,0,0,100,0), +(@PATH,12,-1918.467,4883.836,2.155447,0,0,0,0,100,0), +(@PATH,13,-1918.326,4893.268,2.520438,0,0,0,0,100,0), +(@PATH,14,-1921.362,4904.434,4.286795,0,0,0,0,100,0), +(@PATH,15,-1926.933,4916.866,7.852347,0,0,0,0,100,0), +(@PATH,16,-1932.68,4930.549,12.62505,0,0,0,0,100,0), +(@PATH,17,-1936.969,4938.175,15.91945,0,0,0,0,100,0), +(@PATH,18,-1943.332,4944.548,19.00856,0,0,0,0,100,0), +(@PATH,19,-1949.685,4955.148,22.99416,0,0,0,0,100,0), +(@PATH,20,-1957.245,4971.249,26.83323,0,0,0,0,100,0), +(@PATH,21,-1959.033,4989.208,29.75962,0,0,0,0,100,0), +(@PATH,22,-1959.903,5001.704,31.27128,0,0,0,0,100,0), +(@PATH,23,-1958.824,5016.848,32.75065,0,0,0,0,100,0), +(@PATH,24,-1955.496,5027.162,32.08219,0,0,0,0,100,0), +(@PATH,25,-1949.074,5037.299,27.67075,0,0,0,0,100,0), +(@PATH,26,-1940.842,5049.157,22.12509,0,0,0,0,100,0), +(@PATH,27,-1933.553,5052.723,20.48105,0,0,0,0,100,0), +(@PATH,28,-1932.813,5055.973,19.7382,0,0,0,0,100,0), +(@PATH,29,-1935.718,5059.009,19.13364,0,0,0,0,100,0), +(@PATH,30,-1938.679,5057.717,19.45517,0,0,0,0,100,0), +(@PATH,31,-1940.78,5053.983,20.79599,0,0,0,0,100,0), +(@PATH,32,-1940.788,5050.398,21.78232,0,0,0,0,100,0), +(@PATH,33,-1943.925,5045.257,23.89938,0,0,0,0,100,0), +(@PATH,34,-1948.459,5038.444,27.02377,0,0,0,0,100,0), +(@PATH,35,-1952.349,5033.815,29.49814,0,0,0,0,100,0), +(@PATH,36,-1955.94,5026.934,32.19035,0,0,0,0,100,0), +(@PATH,37,-1958.847,5018.866,32.87931,0,0,0,0,100,0), +(@PATH,38,-1960.388,5008.151,32.10392,0,0,0,0,100,0), +(@PATH,39,-1959.649,4995.389,30.60495,0,0,0,0,100,0), +(@PATH,40,-1958.526,4982.475,28.72519,0,0,0,0,100,0), +(@PATH,41,-1956.045,4969.47,26.49472,0,0,0,0,100,0), +(@PATH,42,-1951.652,4957.231,23.63356,0,0,0,0,100,0), +(@PATH,43,-1946.108,4948.339,20.83034,0,0,0,0,100,0), +(@PATH,44,-1939.516,4941.397,17.3329,0,0,0,0,100,0), +(@PATH,45,-1932.445,4928.974,12.04595,0,0,0,0,100,0), +(@PATH,46,-1927.229,4916.588,7.915579,0,0,0,0,100,0), +(@PATH,47,-1922.276,4905.163,4.571219,0,0,0,0,100,0), +(@PATH,48,-1915.32,4900.36,2.12908,0,0,0,0,100,0), +(@PATH,49,-1909.361,4900.604,1.032401,0,0,0,0,100,0), +(@PATH,50,-1901.186,4904.915,-0.7529998,0,0,0,0,100,0), +(@PATH,51,-1893.884,4911.838,-3.170728,0,0,0,0,100,0), +(@PATH,52,-1886.202,4920.901,-6.797315,0,0,0,0,100,0), +(@PATH,53,-1878.948,4930.252,-11.26155,0,0,0,0,100,0), +(@PATH,54,-1873.738,4937.32,-14.07134,0,0,0,0,100,0), +(@PATH,55,-1869.677,4942.98,-16.16705,0,0,0,0,100,0), +(@PATH,56,-1866.752,4948.752,-17.90313,0,0,0,0,100,0), +(@PATH,57,-1864.945,4956.149,-19.62491,0,0,0,0,100,0), +(@PATH,58,-1864.546,4965.338,-21.15067,0,0,0,0,100,0), +(@PATH,59,-1865.516,4969.611,-21.61164,0,0,0,0,100,0), +(@PATH,60,-1867.728,4970.081,-21.52201,0,0,0,0,100,0), +(@PATH,61,-1869.4,4967.932,-21.26408,0,0,0,0,100,0), +(@PATH,62,-1868.561,4963.51,-20.60308,0,0,0,0,100,0), +(@PATH,63,-1866.918,4958.647,-20.03289,0,0,0,0,100,0), +(@PATH,64,-1867.127,4953.813,-18.94048,0,0,0,0,100,0), +(@PATH,65,-1868.12,4949.346,-17.88165,0,0,0,0,100,0), +(@PATH,66,-1870.746,4943.62,-16.19219,0,0,0,0,100,0), +(@PATH,67,-1874.541,4937.907,-14.24078,0,0,0,0,100,0), +(@PATH,68,-1879.867,4930.647,-11.21943,0,0,0,0,100,0), +(@PATH,69,-1886.922,4921.398,-6.743848,0,0,0,0,100,0), +(@PATH,70,-1894.731,4912.087,-2.997022,0,0,0,0,100,0), +(@PATH,71,-1901.48,4905.404,-0.8352752,0,0,0,0,100,0), +(@PATH,72,-1908.661,4897.943,1.188406,0,0,0,0,100,0), +(@PATH,73,-1915.186,4888.852,2.12908,0,0,0,0,100,0), +(@PATH,74,-1919.656,4879.008,2.12908,0,0,0,0,100,0), +(@PATH,75,-1922.473,4867.417,2.00408,0,0,0,0,100,0), +(@PATH,76,-1927.96,4855.975,1.735298,0,0,0,0,100,0), +(@PATH,77,-1934.882,4844.2,1.505529,0,0,0,0,100,0), +(@PATH,78,-1943.717,4831.167,0.7706354,0,0,0,0,100,0), +(@PATH,79,-1950.078,4818.386,0.5792291,0,0,0,0,100,0), +(@PATH,80,-1957.056,4801.952,0.1136529,0,0,0,0,100,0), +(@PATH,81,-1958.388,4790.062,-0.430666,0,0,0,0,100,0), +(@PATH,82,-1958.355,4777.865,-1.180666,0,0,0,0,100,0), +(@PATH,83,-1956.92,4764.738,-1.932387,0,0,0,0,100,0), +(@PATH,84,-1956.379,4755.673,-2.520034,0,0,0,0,100,0), +(@PATH,85,-1952.63,4747.662,-2.888442,0,0,0,0,100,0), +(@PATH,86,-1947.632,4738.14,-3.12416,0,0,0,0,100,0), +(@PATH,87,-1943.565,4726.114,-3.106597,0,0,0,0,100,0), +(@PATH,88,-1940.986,4712.541,-2.731597,0,0,0,0,100,0), +(@PATH,89,-1941.015,4699.2,-2.249105,0,0,0,0,100,0), +(@PATH,90,-1941.772,4688.908,-2.124105,0,0,0,0,100,0), +(@PATH,91,-1945.519,4676.243,-1.860556,0,0,0,0,100,0), +(@PATH,92,-1949.903,4664.792,-1.32178,0,0,0,0,100,0), +(@PATH,93,-1953.648,4652.405,-0.9228547,0,0,0,0,100,0), +(@PATH,94,-1955.702,4641.475,-0.1967804,0,0,0,0,100,0), +(@PATH,95,-1954.826,4628.333,0.6725454,0,0,0,0,100,0), +(@PATH,96,-1953.227,4618.669,1.832091,0,0,0,0,100,0), +(@PATH,97,-1949.518,4608.742,3.148376,0,0,0,0,100,0), +(@PATH,98,-1947.033,4598.139,4.958476,0,0,0,0,100,0), +(@PATH,99,-1946.533,4587.874,6.832988,0,0,0,0,100,0), +(@PATH,100,-1948.285,4576.442,8.562114,0,0,0,0,100,0), +(@PATH,101,-1952.725,4567.673,9.98936,0,0,0,0,100,0), +(@PATH,102,-1958.148,4560.353,11.17323,0,0,0,0,100,0), +(@PATH,103,-1965.709,4551.65,12.39723,0,0,0,0,100,0), +(@PATH,104,-1971.081,4543.296,13.14356,0,0,0,0,100,0), +(@PATH,105,-1975.564,4532.993,13.48565,0,0,0,0,100,0), +(@PATH,106,-1977.15,4525.117,13.41509,0,0,0,0,100,0), +(@PATH,107,-1978.05,4513.065,12.86065,0,0,0,0,100,0), +(@PATH,108,-1978.589,4501.11,12.18145,0,0,0,0,100,0), +(@PATH,109,-1981.737,4483.694,11.36078,0,0,0,0,100,0), +(@PATH,110,-1987.182,4470.06,10.33051,0,0,0,0,100,0), +(@PATH,111,-1996.76,4455.001,8.793629,0,0,0,0,100,0), +(@PATH,112,-2004.436,4442.11,7.641087,0,0,0,0,100,0), +(@PATH,113,-2007.973,4429.895,6.499888,0,0,0,0,100,0), +(@PATH,114,-2013.409,4410.697,4.321177,0,0,0,0,100,0), +(@PATH,115,-2023.097,4394.424,2.780378,0,0,0,0,100,0), +(@PATH,116,-2032.503,4383.386,2.058576,0,0,0,0,100,0), +(@PATH,117,-2043.49,4372.459,1.706719,0,0,0,0,100,0), +(@PATH,118,-2051.505,4359.686,2.099432,0,0,0,0,100,0), +(@PATH,119,-2054.104,4350.861,2.433538,0,0,0,0,100,0), +(@PATH,120,-2056.367,4340.22,2.724432,0,0,0,0,100,0), +(@PATH,121,-2056.542,4330.677,2.99682,0,0,0,0,100,0), +(@PATH,122,-2056.664,4324.11,2.99682,0,0,0,0,100,0), +(@PATH,123,-2056.214,4332.018,2.99682,0,0,0,0,100,0), +(@PATH,124,-2056.039,4340.757,2.724432,0,0,0,0,100,0), +(@PATH,125,-2054.203,4351.41,2.349432,0,0,0,0,100,0), +(@PATH,126,-2051.373,4359.925,2.099432,0,0,0,0,100,0), +(@PATH,127,-2045.291,4369.335,1.699029,0,0,0,0,100,0), +(@PATH,128,-2036.629,4378.904,1.956719,0,0,0,0,100,0), +(@PATH,129,-2028.419,4387.346,2.141706,0,0,0,0,100,0), +(@PATH,130,-2020.791,4397.267,2.932233,0,0,0,0,100,0), +(@PATH,131,-2014.119,4409.571,4.224986,0,0,0,0,100,0), +(@PATH,132,-2010.106,4421.343,5.473643,0,0,0,0,100,0), +(@PATH,133,-2006.266,4435.879,7.076633,0,0,0,0,100,0), +(@PATH,134,-2000.813,4450.336,8.24387,0,0,0,0,100,0), +(@PATH,135,-1991.514,4462.025,9.336842,0,0,0,0,100,0), +(@PATH,136,-1984.121,4478.006,10.909,0,0,0,0,100,0), +(@PATH,137,-1979.109,4494.063,11.96088,0,0,0,0,100,0), +(@PATH,138,-1977.873,4513.339,12.86065,0,0,0,0,100,0), +(@PATH,139,-1977.565,4527.156,13.43194,0,0,0,0,100,0), +(@PATH,140,-1974.89,4537.26,13.51856,0,0,0,0,100,0), +(@PATH,141,-1965.713,4550.698,12.51149,0,0,0,0,100,0), +(@PATH,142,-1956.546,4560.43,11.15467,0,0,0,0,100,0), +(@PATH,143,-1949.815,4570.688,9.502421,0,0,0,0,100,0), +(@PATH,144,-1945.956,4583.912,7.290629,0,0,0,0,100,0), +(@PATH,145,-1947.067,4599.292,4.717265,0,0,0,0,100,0), +(@PATH,146,-1951.106,4613.875,2.407409,0,0,0,0,100,0), +(@PATH,147,-1955.157,4628.071,0.7039175,0,0,0,0,100,0), +(@PATH,148,-1955.746,4639.441,-0.1173127,0,0,0,0,100,0), +(@PATH,149,-1952.89,4651.96,-0.8695099,0,0,0,0,100,0), +(@PATH,150,-1949.483,4665.713,-1.32178,0,0,0,0,100,0), +(@PATH,151,-1945.589,4678.891,-2.186483,0,0,0,0,100,0), +(@PATH,152,-1942.095,4687.913,-2.124105,0,0,0,0,100,0), +(@PATH,153,-1941.368,4696.736,-2.249105,0,0,0,0,100,0), +(@PATH,154,-1941.158,4708.608,-2.731597,0,0,0,0,100,0), +(@PATH,155,-1942.176,4717.764,-2.855133,0,0,0,0,100,0), +(@PATH,156,-1945.629,4731.166,-3.231597,0,0,0,0,100,0), +(@PATH,157,-1949.973,4740.833,-2.925796,0,0,0,0,100,0); -- cgit v1.2.3 From a309ca972794f7282372b4302d6d0caddef7f745 Mon Sep 17 00:00:00 2001 From: Warpten Date: Fri, 25 Jul 2014 14:47:07 +0200 Subject: Core/Spells: Fixed issues with Death and Decay and similar spells not ticking if players stepping in the AoE are not in LoS with the caster. Not exactly sure if that behavior should *exactly* be as such, but until more informations ... --- src/server/game/Spells/Spell.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 2bf9c0e0395..037242358da 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -4793,8 +4793,15 @@ SpellCastResult Spell::CheckCast(bool strict) return SPELL_FAILED_NOT_INFRONT; if (m_caster->GetEntry() != WORLD_TRIGGER) // Ignore LOS for gameobjects casts (wrongly cast by a trigger) - if (!(m_spellInfo->AttributesEx2 & SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS) && !DisableMgr::IsDisabledFor(DISABLE_TYPE_SPELL, m_spellInfo->Id, NULL, SPELL_DISABLE_LOS) && !m_caster->IsWithinLOSInMap(target)) + { + WorldObject* losTarget = target; + if (IsTriggered() && m_triggeredByAuraSpell) + if (DynamicObject* dynObj = m_caster->GetDynObject(m_triggeredByAuraSpell)) + losTarget = dynObj; + + if (!(m_spellInfo->AttributesEx2 & SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS) && !DisableMgr::IsDisabledFor(DISABLE_TYPE_SPELL, m_spellInfo->Id, NULL, SPELL_DISABLE_LOS) && !target->IsWithinLOSInMap(losTarget)) return SPELL_FAILED_LINE_OF_SIGHT; + } } } -- cgit v1.2.3 From 8e385ca6d9ca1f03e2b86885edc2b5d27b6ccddd Mon Sep 17 00:00:00 2001 From: DDuarte Date: Fri, 25 Jul 2014 14:04:12 +0100 Subject: Core/Spells: Fix an issue with previous commit (a309ca97279) --- src/server/game/Spells/Spell.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 037242358da..10339a6ac3a 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -4794,9 +4794,9 @@ SpellCastResult Spell::CheckCast(bool strict) if (m_caster->GetEntry() != WORLD_TRIGGER) // Ignore LOS for gameobjects casts (wrongly cast by a trigger) { - WorldObject* losTarget = target; + WorldObject* losTarget = m_caster; if (IsTriggered() && m_triggeredByAuraSpell) - if (DynamicObject* dynObj = m_caster->GetDynObject(m_triggeredByAuraSpell)) + if (DynamicObject* dynObj = m_caster->GetDynObject(m_triggeredByAuraSpell->Id)) losTarget = dynObj; if (!(m_spellInfo->AttributesEx2 & SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS) && !DisableMgr::IsDisabledFor(DISABLE_TYPE_SPELL, m_spellInfo->Id, NULL, SPELL_DISABLE_LOS) && !target->IsWithinLOSInMap(losTarget)) -- cgit v1.2.3 From baf99223505416d9ba011bd5e8485fa68fbf755e Mon Sep 17 00:00:00 2001 From: DDuarte Date: Fri, 25 Jul 2014 14:04:39 +0100 Subject: Tools/mmaps: Fix a possible mem leak and a compile warning --- src/tools/mmaps_generator/MapBuilder.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/tools/mmaps_generator/MapBuilder.cpp b/src/tools/mmaps_generator/MapBuilder.cpp index a29502535e6..94b5f3607cf 100644 --- a/src/tools/mmaps_generator/MapBuilder.cpp +++ b/src/tools/mmaps_generator/MapBuilder.cpp @@ -171,13 +171,16 @@ namespace MMAP { while (1) { - uint32* mapId; + uint32* mapId = nullptr; _queue.WaitAndPop(mapId); if (_cancelationToken) return; + if (!mapId) // shouldn't happen? + continue; + buildMap(*mapId); delete mapId; @@ -186,7 +189,7 @@ namespace MMAP void MapBuilder::buildAllMaps(int threads) { - for (size_t i = 0; i < threads; ++i) + for (int i = 0; i < threads; ++i) { _workerThreads.push_back(std::thread(&MapBuilder::WorkerThread, this)); } @@ -198,13 +201,13 @@ namespace MMAP for (TileList::iterator it = m_tiles.begin(); it != m_tiles.end(); ++it) { - uint32* mapID = new uint32(it->m_mapId); - if (!shouldSkipMap(*mapID)) + uint32 mapId = it->m_mapId; + if (!shouldSkipMap(mapId)) { if (threads > 0) - _queue.Push(mapID); + _queue.Push(new uint32(mapId)); else - buildMap(*mapID); + buildMap(mapId); } } -- cgit v1.2.3 From 435baba1c9ecd2ac4b63d5246368c639635fc16c Mon Sep 17 00:00:00 2001 From: Dr-J Date: Fri, 25 Jul 2014 14:44:33 +0100 Subject: DB/Creature: Add a lot of missing texts * Add a lot of missing texts (from sniff) and add sai to use them * Add to some existing scripts to use texts which where missed from original scripts --- sql/updates/world/2014_07_25_00_world_misc.sql | 112 +++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 sql/updates/world/2014_07_25_00_world_misc.sql diff --git a/sql/updates/world/2014_07_25_00_world_misc.sql b/sql/updates/world/2014_07_25_00_world_misc.sql new file mode 100644 index 00000000000..ee2a4bd8fd2 --- /dev/null +++ b/sql/updates/world/2014_07_25_00_world_misc.sql @@ -0,0 +1,112 @@ +UPDATE `creature_template` SET `ainame`='SmartAI', `scriptname`='' WHERE `entry` IN(24642, 24911,24742, 24796, 24537, 24713, 24910, 24790, 23967, 24992); +DELETE FROM `smart_scripts` WHERE `entryorguid` IN(24642, 24911,24742, 24796, 24537, 24713, 24910, 24790, 24992) AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid` =24914 AND `source_type`=0 AND `id`=1; +UPDATE `smart_scripts` SET `link`=1 WHERE `entryorguid`=24914 AND `source_type`=0 AND `id`=0; +UPDATE `smart_scripts` SET `link`=6 WHERE `entryorguid`=24786 AND `source_type`=0 AND `id`=5; +DELETE FROM `smart_scripts` WHERE `entryorguid` =24786 AND `source_type`=0 AND `id`=6; +DELETE FROM `smart_scripts` WHERE `entryorguid` =23967 AND `source_type`=0 AND `id`>0; +DELETE FROM `smart_scripts` WHERE `entryorguid` =2474200 AND `source_type`=9; + +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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(24992, 0, 0, 0, 38, 0, 100, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'The Big Gun - On Data set - Say'), +(24642, 0, 0, 0, 1, 0, 50, 0, 0, 45000, 90000, 180000, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Drunken Northsea Pirate - OOC - Say'), +(24911, 0, 0, 0, 1, 0, 50, 0, 0, 45000, 90000, 180000, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Cursed Sea Dog - OOC - Say'), +(24911, 0, 1, 0, 9, 0, 100, 0, 20, 150, 1000, 3000, 11, 44961, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Cursed Sea Dog - On Range (20-150 Yards) - Cast Shoot'), +(24914, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 45, 1, 1, 0, 0, 0, 0, 10, 142813, 24992, 0, 0, 0, 0, 0, 'Sorlof - On Just Died - Set Data (The Big Gun)'), +(24742, 0, 0, 0, 0, 0, 100, 0, 0, 15000, 15000, 30000, 11, 50188, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - IC - Cast Wildly Flailing'), +(24742, 0, 1, 0, 40, 0, 100, 0, 1, 24742, 0, 0, 97, 20, 20, 0, 0, 0, 0, 1, 0, 0, 0, -73.7997, -3435.55, -15.2043, 0, '"Mad" Jonah Sterling - On Reached WP1 - Jump to Hozzer'), +(24742, 0, 2, 0, 2, 0, 100, 1, 0, 25, 0, 0, 80, 2474200, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - On 25% Hp - Run Script'), +(2474200, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 102, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Set HP Regen off'), +(2474200, 9, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Evade'), +(2474200, 9, 2, 0, 0, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Say Line 1'), +(2474200, 9, 3, 0, 0, 0, 100, 0, 0, 0, 0, 0, 53, 1, 24742, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Start WP'), +(2474200, 9, 4, 0, 0, 0, 100, 0, 7000, 7000, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Say Line 2'), +(2474200, 9, 5, 0, 0, 0, 100, 0, 0, 0, 0, 0, 85, 44458, 1, 0, 0, 0, 0, 19, 24547, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Invoker Cast Hozzer Feeds'), +(2474200, 9, 6, 0, 0, 0, 100, 0, 3000, 3000, 0, 0, 1, 0, 0, 0, 0, 0, 0, 19, 24547, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Say Line 1 - Hozzer'), +(2474200, 9, 7, 0, 0, 0, 100, 0, 1000, 1000, 0, 0, 41, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Mad" Jonah Sterling - Script - Despawn'), +(24796, 0, 0, 0, 4, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Spectral Sailor - On Agro - Say'), +(24537, 0, 0, 0, 1, 0, 100, 0, 0, 45000, 90000, 210000, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Handsome Terry - OOC - Say'), +(24713, 0, 0, 0, 4, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Crowleg" Dan - On Agro - Say'), +(24713, 0, 1, 0, 9, 0, 100, 0, 0, 5, 5000, 8000, 11, 50311, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, '"Crowleg" Dan - On Range - Cast Thrash Kick'), +(24910, 0, 0, 0, 1, 0, 100, 0, 0, 45000, 90000, 180000, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Captain Ellis - OOC - Say'), +(24790, 0, 0, 0, 4, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Black Conrad''s Ghost - On Agro - Say'), +(24790, 0, 1, 0, 6, 0, 100, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Black Conrad''s Ghost - On Death - Say'), +(24790, 0, 2, 0, 4, 0, 100, 0, 0, 0, 0, 0, 11, 51211, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Black Conrad''s Ghost - On Agro - Cast Blade Flurry'), +(24790, 0, 3, 0, 9, 0, 100, 0, 0, 5, 10000, 15000, 11, 31022, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Black Conrad''s Ghost - On Range (5 Yrds) - Cast Ghostly Strike'), +(24786, 0, 6, 0, 61, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 19, 24797, 0, 0, 0, 0, 0, 0, 'Reef Bull - Link - Say (Reef Cow)'), +(23967, 0, 1, 0, 1, 0, 50, 0, 0, 45000, 90000, 180000, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Deranged Explorer - OOC - Say'), +(23967, 0, 2, 0, 9, 0, 100, 0, 0, 5, 14000, 19000, 11, 11971, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 'Deranged Explorer - On Range (5 Yrds) - Cast Sunder Armor'), +(23967, 0, 3, 0, 9, 0, 100, 0, 0, 5, 3000, 5000, 11, 35857, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 'Deranged Explorer - On Range (5 Yrds) - Cast Torch'); + +DELETE FROM `creature_text` WHERE `entry` IN(24642,24911,24992,24742,24547, 24796, 25537, 24910, 24790, 24797, 23967, 24537, 24713); +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`, `BroadcastTextID`) VALUES +(24642, 0, 0, 'Nothin'' finer than enjoying a fine beverage and the company of some fine buckos... hic!', 12, 0, 100, 1, 0, 0, 'Drunken Northsea Pirate', 23657), +(24642, 0, 1, '...that scurvy dog had two peg legs, a hook for a left hand, two glass eyes and a wooden nose!', 12, 0, 100, 153, 0, 0, 'Drunken Northsea Pirate', 23660), +(24642, 0, 2, 'Nothin'' finer than enjoying a fine beverage and the company of some fine buckos... hic!', 12, 0, 100, 153, 0, 0, 'Drunken Northsea Pirate', 23657), +(24642, 0, 3, 'Whatcha lookin'' at, ye bilge rat? Har, har.... just kiddin'' with ye, mate!', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23656), +(24642, 0, 4, 'Nothin'' finer than enjoying a fine beverage and the company of some fine buckos... hic!', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23657), +(24642, 0, 5, '...that scurvy dog had two peg legs, a hook for a left hand, two glass eyes and a wooden nose!', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23660), +(24642, 0, 6, 'I ''eard Terry fenced one of ''em pictures for a thousand gold. Maybe I can get in some of that artwork dealin'' too!', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23671), +(24642, 0, 7, 'I ''eard Terry fenced one of ''em pictures for a thousand gold. Maybe I can get in some of that artwork dealin'' too!', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23671), +(24642, 0, 8, 'Kiss the gunner''s daughter? Why I haven''t ever met the lass...', 12, 0, 100, 153, 0, 0, 'Drunken Northsea Pirate', 23670), +(24642, 0, 9, 'Whatcha lookin'' at, ye bilge rat? Har, har.... just kiddin'' with ye, mate!', 12, 0, 100, 153, 0, 0, 'Drunken Northsea Pirate', 23656), +(24642, 0, 10, 'Grab a seat and ''ave a drink, mate! Grab me one while yer at it!', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23659), +(24642, 0, 11, 'Grab a seat and ''ave a drink, mate! Grab me one while yer at it!', 12, 0, 100, 153, 0, 0, 'Drunken Northsea Pirate', 23659), +(24642, 0, 12, 'Nothin'' finer than enjoying a fine beverage and the company of some fine buckos... hic!', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23657), +(24642, 0, 13, '...that scurvy dog had two peg legs, a hook for a left hand, two glass eyes and a wooden nose!', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23660), +(24642, 0, 14, 'Kiss the gunner''s daughter? Why I haven''t ever met the lass...', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23670), +(24642, 0, 15, 'Whatcha lookin'' at, ye bilge rat? Har, har.... just kiddin'' with ye, mate!', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23656), +(24642, 0, 16, '"Yaaaaaaaaaarrr... it''s driving me insane!" Wait... that''s not quite how it goes...', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23658), +(24642, 0, 17, 'I ''eard Terry fenced one of ''em pictures for a thousand gold. Maybe I can get in some of that artwork dealin'' too!', 12, 0, 100, 153, 0, 0, 'Drunken Northsea Pirate', 23671), +(24642, 0, 18, 'I ''eard Terry fenced one of ''em pictures for a thousand gold. Maybe I can get in some of that artwork dealin'' too!', 12, 0, 100, 1, 0, 0, 'Drunken Northsea Pirate', 23671), +(24642, 0, 19, '...so he says "Of course I''m not seeing double! I''ve only got one eye!"', 12, 0, 100, 6, 0, 0, 'Drunken Northsea Pirate', 23665), +(24642, 0, 20, 'Grab a seat and ''ave a drink, mate! Grab me one while yer at it!', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23659), +(24642, 0, 21, '...so he says "Of course I''m not seeing double! I''ve only got one eye!"', 12, 0, 100, 1, 0, 0, 'Drunken Northsea Pirate', 23665), +(24642, 0, 22, '"Yaaaaaaaaaarrr... it''s driving me insane!" Wait... that''s not quite how it goes...', 12, 0, 100, 1, 0, 0, 'Drunken Northsea Pirate', 23658), +(24642, 0, 23, '"Yaaaaaaaaaarrr... it''s driving me insane!" Wait... that''s not quite how it goes...', 12, 0, 100, 22, 0, 0, 'Drunken Northsea Pirate', 23658), +(24911, 0, 0, 'Take that, landlubber!', 14, 0, 100, 4, 0, 0, 'Cursed Sea Dog', 24047), +(24911, 0, 1, 'Yo-ho-ho, and a bottle of gnomish spirits!', 14, 0, 100, 4, 0, 0, 'Cursed Sea Dog', 24044), +(24911, 0, 2, 'The booty be ours!', 14, 0, 100, 4, 0, 0, 'Cursed Sea Dog', 24048), +(24911, 0, 3, 'Rum and wenches for all!', 14, 0, 100, 4, 0, 0, 'Cursed Sea Dog', 24046), +(24911, 0, 4, 'Take that, landlubber!', 14, 0, 100, 92, 0, 0, 'Cursed Sea Dog', 24047), +(24911, 0, 5, 'Rum and wenches for all!', 14, 0, 100, 92, 0, 0, 'Cursed Sea Dog', 24046), +(24911, 0, 6, 'Yo-ho-ho, and a bottle of gnomish spirits!', 14, 0, 100, 92, 0, 0, 'Cursed Sea Dog', 24044), +(24911, 0, 7, 'The booty be ours!', 14, 0, 100, 92, 0, 0, 'Cursed Sea Dog', 24048), +(24911, 0, 8, 'Thar she blows!', 14, 0, 100, 4, 0, 0, 'Cursed Sea Dog', 24045), +(24992, 0, 0, 'Sorlof''s booty falls to the floor.', 41, 0, 100, 0, 0, 0, 'The Big Gun', 24032), +(24742, 0, 0, 'Yarrrrrrr! Ye''ll never get me spyglass, bilgesucker!', 14, 0, 100, 0, 0, 3403, '"Mad" Jonah Sterling', 23705), +(24742, 1, 0, 'Is this how you repay your master, you fleabag? Arrrrrgghh!!', 14, 0, 100, 0, 0, 0, '"Mad" Jonah Sterling to Hozzer', 23851), +(24742, 1, 1, 'Is this how you repay your master, you fleabag? Arrrrrgghh!!', 14, 0, 100, 0, 0, 3403, '"Mad" Jonah Sterling to Hozzer', 23851), +(24742, 0, 1, 'Yarrrrrrr! Ye''ll never get me spyglass, bilgesucker!', 14, 0, 100, 0, 0, 0, '"Mad" Jonah Sterling', 23705), +(24796, 0, 0, 'Yer dead, landlubber!', 12, 0, 100, 0, 0, 0, 'Spectral Sailor', 23843), +(24537, 0, 0, 'I don''t know much about art... but I know what I like!', 12, 0, 100, 6, 0, 0, 'Handsome Terry', 23578), +(24547, 0, 0, '%s devours his master''s body.', 16, 0, 100, 0, 0, 0, 'Hozzer', 23854), +(24547, 0, 1, '%s devours his master''s body.', 16, 0, 100, 0, 0, 3403, 'Hozzer', 23854), +(24713, 0, 0, 'Curse that frog! Yes, I joined the Southsea crew - you want to make something of it, mate? I''ll cut you down here and now!', 12, 0, 100, 0, 0, 0, '"Crowleg" Dan', 23690), +(24910, 0, 0, 'It may''ave won in life, but it won''t be winnin'' in the afterlife! FIRE!', 14, 0, 100, 0, 0, 0, 'Captain Ellis', 24029), +(24910, 0, 1, 'Fire! Fire for the booty, me hearties!', 14, 0, 100, 0, 0, 0, 'Captain Ellis', 24028), +(24910, 0, 2, 'Fire! Fire, ya yella sea dogs!', 14, 0, 100, 0, 0, 0, 'Captain Ellis', 23997), +(24790, 0, 0, 'Yarrrr! If it''s me treasure yer lookin'' for... yer gonna have to fight for it!', 12, 0, 100, 1, 0, 0, 'Black Conrad''s Ghost', 23833), +(24790, 1, 1, 'Yarrrrr... dead again!', 12, 0, 100, 0, 0, 0, 'Black Conrad''s Ghost', 23848), +(24797, 0, 0, 'The reef cow and her new bull find true love.', 16, 0, 100, 0, 0, 0, 'Reef Cow to Attracted Reef Bull', 23859), +(23967, 0, 0, 'It''ll all be over soon. Soon you will be in the embrace of That Which Must Not Be Named!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22505), +(23967, 0, 1, 'If you''re here, then IT might be close behind!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22508), +(23967, 0, 2, 'The truth shall set you free. Like us, you will be with IT forever!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22504), +(23967, 0, 3, 'You cannot leave... IT mustn''t find us!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22507), +(23967, 0, 4, 'It''ll all be over soon. Soon you will be in the embrace of That Which Must Not Be Named!', 12, 7, 100, 16, 0, 0, 'Deranged Explorer', 22505), +(23967, 0, 5, 'Now you''ll have to join us... permanently!', 12, 7, 100, 16, 0, 0, 'Deranged Explorer', 22510), +(23967, 0, 6, 'Now you''ll have to join us... permanently!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22510), +(23967, 0, 7, 'Ahahaha! I must find the secrets!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22495), +(23967, 0, 8, 'Forgive me oh great one. I did not mean to learn the truth!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22502), +(23967, 0, 9, 'If only there were more time!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22501), +(23967, 0, 10, 'IT''s coming! HIDE!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22500), +(23967, 0, 11, 'The end is nigh! That Which Must Not Be Named is almost free!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22505), +(23967, 0, 12, 'We''re safe; IT will never reach us here!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22498), +(23967, 0, 13, 'When one studies and digs, one reveals the truth.', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22497), +(23967, 0, 14, 'I will put an end to your life before you realize the horrible truth!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22509), +(23967, 0, 15, 'Intruder! You were sent to destroy us!', 12, 7, 100, 0, 0, 0, 'Deranged Explorer', 22506); + +DELETE FROM `waypoints` WHERE `entry`=24742; +INSERT INTO `waypoints` (`entry`, `pointid`, `position_x`, `position_y`, `position_z`, `point_comment`) VALUES +(24742, 1, -36.128922, -3425.641602, 4.998625, '"Mad" Jonah Sterling'); -- Single WP to trigger jump to Hozzer + -- cgit v1.2.3 From 0b75e387555df6c79f4cc63b4faa715a85fbd051 Mon Sep 17 00:00:00 2001 From: DDuarte Date: Fri, 25 Jul 2014 14:59:34 +0100 Subject: Core/Shared: Change rand32 to return uin32 instead of int32 Fixes a crash that happened when rand32 returned negative values. Also updated some related comments that were outdated since we changed to SFMT. Closes #12638 --- src/server/game/Server/WorldSocket.cpp | 2 +- src/server/game/Warden/WardenWin.cpp | 2 +- src/server/shared/Utilities/Util.cpp | 8 ++++---- src/server/shared/Utilities/Util.h | 25 +++++++++---------------- 4 files changed, 15 insertions(+), 22 deletions(-) diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index fa884090bfa..6ef986dbd22 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -31,7 +31,7 @@ using boost::asio::ip::tcp; using boost::asio::streambuf; WorldSocket::WorldSocket(tcp::socket&& socket) - : _socket(std::move(socket)), _authSeed(static_cast(rand32())), _OverSpeedPings(0), _worldSession(nullptr) + : _socket(std::move(socket)), _authSeed(rand32()), _OverSpeedPings(0), _worldSession(nullptr) { } diff --git a/src/server/game/Warden/WardenWin.cpp b/src/server/game/Warden/WardenWin.cpp index 5c3a86988db..da6a7dc1929 100644 --- a/src/server/game/Warden/WardenWin.cpp +++ b/src/server/game/Warden/WardenWin.cpp @@ -281,7 +281,7 @@ void WardenWin::RequestData() } case MODULE_CHECK: { - uint32 seed = static_cast(rand32()); + uint32 seed = rand32(); buff << uint32(seed); HmacHash hmac(4, (uint8*)&seed); hmac.UpdateData(wd->Str); diff --git a/src/server/shared/Utilities/Util.cpp b/src/server/shared/Utilities/Util.cpp index d1799913d41..bf40b8ec352 100644 --- a/src/server/shared/Utilities/Util.cpp +++ b/src/server/shared/Utilities/Util.cpp @@ -63,17 +63,17 @@ float frand(float min, float max) return float(GetRng()->Random() * (max - min) + min); } -int32 rand32() +uint32 rand32() { - return int32(GetRng()->BRandom()); + return GetRng()->BRandom(); } -double rand_norm(void) +double rand_norm() { return GetRng()->Random(); } -double rand_chance(void) +double rand_chance() { return GetRng()->Random() * 100.0; } diff --git a/src/server/shared/Utilities/Util.h b/src/server/shared/Utilities/Util.h index c95e0e3cfa3..0680b91e0fe 100644 --- a/src/server/shared/Utilities/Util.h +++ b/src/server/shared/Utilities/Util.h @@ -76,30 +76,23 @@ std::string secsToTimeString(uint64 timeInSecs, bool shortText = false, bool hou uint32 TimeStringToSecs(const std::string& timestring); std::string TimeToTimestampStr(time_t t); -/* Return a random number in the range min..max; (max-min) must be smaller than 32768. */ +/* Return a random number in the range min..max. */ int32 irand(int32 min, int32 max); -/* Return a random number in the range min..max (inclusive). For reliable results, the difference -* between max and min should be less than RAND32_MAX. */ +/* Return a random number in the range min..max (inclusive). */ uint32 urand(uint32 min, uint32 max); -/* Return a random number in the range 0 .. RAND32_MAX. */ -int32 rand32(); +/* Return a random number in the range 0 .. UINT32_MAX. */ +uint32 rand32(); /* Return a random number in the range min..max */ float frand(float min, float max); -/* Return a random double from 0.0 to 1.0 (exclusive). Floats support only 7 valid decimal digits. - * A double supports up to 15 valid decimal digits and is used internally (RAND32_MAX has 10 digits). - * With an FPU, there is usually no difference in performance between float and double. -*/ -double rand_norm(void); - -/* Return a random double from 0.0 to 99.9999999999999. Floats support only 7 valid decimal digits. - * A double supports up to 15 valid decimal digits and is used internally (RAND32_MAX has 10 digits). - * With an FPU, there is usually no difference in performance between float and double. -*/ -double rand_chance(void); +/* Return a random double from 0.0 to 1.0 (exclusive). */ +double rand_norm(); + +/* Return a random double from 0.0 to 100.0 (exclusive). */ +double rand_chance(); /* Return true if a random roll fits in the specified chance (range 0-100). */ inline bool roll_chance_f(float chance) -- cgit v1.2.3 From 63e1cc6276d791e3a3a1c5d085d4752f30a011c8 Mon Sep 17 00:00:00 2001 From: DDuarte Date: Fri, 25 Jul 2014 15:23:40 +0100 Subject: Tools/mmaps: Fix build when building only tools Closes #12631 --- src/tools/mmaps_generator/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/src/tools/mmaps_generator/CMakeLists.txt b/src/tools/mmaps_generator/CMakeLists.txt index a2b729ca998..8661c035c8e 100644 --- a/src/tools/mmaps_generator/CMakeLists.txt +++ b/src/tools/mmaps_generator/CMakeLists.txt @@ -48,6 +48,7 @@ target_link_libraries(mmaps_generator Detour ${BZIP2_LIBRARIES} ${ZLIB_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} ${Boost_LIBRARIES} ) -- cgit v1.2.3 From cbcebbe63d794203ccce6ec06c39c5f2a0d2a6de Mon Sep 17 00:00:00 2001 From: Malcrom Date: Fri, 25 Jul 2014 13:08:12 -0230 Subject: DB/Misc: Misc fixups in Shattrath --- sql/updates/world/2014_07_25_01_world_misc.sql | 153 +++++++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 sql/updates/world/2014_07_25_01_world_misc.sql diff --git a/sql/updates/world/2014_07_25_01_world_misc.sql b/sql/updates/world/2014_07_25_01_world_misc.sql new file mode 100644 index 00000000000..9288c7c9051 --- /dev/null +++ b/sql/updates/world/2014_07_25_01_world_misc.sql @@ -0,0 +1,153 @@ +-- Pathing for Captain Dranarus Entry: 25138 +SET @NPC := 96619; +SET @PATH := @NPC * 10; +UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-1842.622,`position_y`=5313.065,`position_z`=-12.42815 WHERE `guid`=@NPC; +DELETE FROM `creature_addon` WHERE `guid`=@NPC; +INSERT INTO `creature_addon` (`guid`,`path_id`,`bytes2`,`mount`,`auras`) VALUES (@NPC,@PATH,1,0, ''); +DELETE FROM `waypoint_scripts` WHERE `id` BETWEEN 10 AND 14; +INSERT INTO `waypoint_scripts` (`id`,`delay`,`command`,`datalong`,`guid`) VALUES +(10,0,1,5,10),(11,0,1,18,11),(12,0,1,21,12),(13,0,1,273,13),(14,0,1,22,14),(14,0,16,9739,15); +DELETE FROM `waypoint_data` WHERE `id`=@PATH; +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +(@PATH,1,-1842.622,5313.065,-12.42815,0,2000,0,0,100,0), +(@PATH,2,-1842.622,5313.065,-12.42815,2.478368,4000,0,50,100,0), -- OneShotPoint (25) +(@PATH,3,-1842.622,5313.065,-12.42815,0,4000,0,1006,100,0), -- OneShotQuestion (6) +(@PATH,4,-1842.622,5313.065,-12.42815,0,12000,0,14,100,0), -- OneShotShot (22) -- play sound 9739 +(@PATH,5,-1842.622,5313.065,-12.42815,0,4000,0,11,100,0), -- OneShotCry (18) +(@PATH,6,-1850.026,5310.596,-12.42815,0,0,0,0,100,0), +(@PATH,7,-1852.461,5313.779,-12.42815,0,0,0,0,100,0), +(@PATH,8,-1851.368,5318.353,-12.42815,0,0,0,0,100,0), +(@PATH,9,-1843.579,5320.41,-12.42815,0,0,0,0,100,0), +(@PATH,10,-1840.255,5319.294,-12.42815,0,1000,0,0,100,0), +(@PATH,11,-1840.255,5319.294,-12.42815,4.502949,4000,0,50,100,0), -- OneShotPoint (25) +(@PATH,12,-1840.255,5319.294,-12.42815,0,13000,0,10,100,0), -- OneShotExclamation (5) +(@PATH,13,-1840.255,5319.294,-12.42815,0,4000,0,12,100,0), -- OneShotApplaud (21) +(@PATH,14,-1835.1,5320.241,-12.42815,0,0,0,0,100,0), +(@PATH,15,-1835.244,5316.951,-12.42815,0,1000,0,0,100,0), +(@PATH,16,-1835.23,5317.261,-12.42815,3.141593,20000,0,0,100,0), +(@PATH,17,-1835.23,5317.261,-12.42815,0,11000,0,14,100,0), -- OneShotShot (22) -- play sound 9739 +(@PATH,18,-1840.227,5311.866,-12.42815,0,0,0,0,100,0), +(@PATH,19,-1842.643,5312.999,-12.42815,0,1000,0,0,100,0), +(@PATH,20,-1842.643,5312.999,-12.42815,1.239184,4000,0,50,100,0), -- OneShotPoint (25) +(@PATH,21,-1842.643,5312.999,-12.42815,0,7000,0,1012,100,0), -- OneShotNo (274) +(@PATH,22,-1842.643,5312.999,-12.42815,0,3000,0,50,100,0), -- OneShotPoint (25) +(@PATH,23,-1842.643,5312.999,-12.42815,0,7000,0,484,100,0), -- OneShotLaugh (11) +(@PATH,24,-1847.878,5310.522,-12.42815,0,0,0,0,100,0), +(@PATH,25,-1851.1,5314.04,-12.42815,0,1000,0,0,100,0), +(@PATH,26,-1851.1,5314.04,-12.42815,0.08726646,5000,0,0,100,0), +(@PATH,27,-1851.1,5314.04,-12.42815,0,21000,0,14,100,0), -- OneShotShot (22) -- play sound 9739 +(@PATH,28,-1846.24,5319.435,-12.42815,0,0,0,0,100,0), +(@PATH,29,-1843.72,5318.517,-12.42815,0,0,0,0,100,0), +(@PATH,30,-1843.72,5318.517,-12.42815,5.445427,7000,0,50,100,0), -- OneShotPoint (25) +(@PATH,31,-1843.72,5318.517,-12.42815,0,4000,0,13,100,0), -- OneShotYes (273) +(@PATH,32,-1843.72,5318.517,-12.42815,0,11000,0,12,100,0), -- OneShotApplaud (21) +(@PATH,33,-1836.766,5321.29,-12.42815,0,0,0,0,100,0), +(@PATH,34,-1835.244,5316.951,-12.42815,0,21000,0,0,100,0), +(@PATH,35,-1835.244,5316.951,-12.42815,3.141593,10000,0,14,100,0), -- OneShotShot (22) -- play sound 9739 +(@PATH,36,-1840.227,5311.866,-12.42815,0,0,0,0,100,0); + +-- Shattered Sun Trainee SAI "Emotes 36 and 54 missing sounds 134, 147, 149, 1002, 7080 core issue" +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry` IN (25134,25135,25136,25137); +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid` IN (-96595,-96596,-96600,-96603,-96604,-96610,-96611,-96612); +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`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(-96595,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96596,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96600,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96603,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96604,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96610,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96611,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"), +(-96612,0,0,0,1,0,100,0,0,3000,3000,3000,10,36,43,54,0,0,0,1,0,0,0,0,0,0,0,"Shattered Sun Trainee - Out of Combat - Emote OneShotAttack1H or OneShotParryShield"); + +-- Skyguard Neather Ray Should not be moving +UPDATE `creature` SET `spawndist`=0, `MovementType`=0 WHERE guid=79011; + +-- Add missing Shattrath City Peacekeeper +DELETE FROM `creature` WHERE `guid`=45075; +INSERT INTO `creature` (`guid`, `id`, `map`, `spawnMask`, `phaseMask`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `MovementType`) VALUES +(45075, 19687, 530, 1, 1, -1976.909, 5112.424, 7.589328, 4.276057, 120, 0, 0); + +-- Pathing for Shattrath City Peacekeeper Entry: 19687 +SET @NPC := 70228; +SET @PATH := @NPC * 10; +UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-1966.495,`position_y`=5121.907,`position_z`=10.32379 WHERE `guid`=@NPC; +DELETE FROM `creature_addon` WHERE `guid`=@NPC; +INSERT INTO `creature_addon` (`guid`,`path_id`,`bytes2`,`mount`,`auras`) VALUES (@NPC,@PATH,1,17063, ''); +DELETE FROM `waypoint_data` WHERE `id`=@PATH; +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +(@PATH,1,-1966.495,5121.907,10.32379,0,0,0,0,100,0), +(@PATH,2,-1951.699,5166.294,17.25317,0,0,0,0,100,0), +(@PATH,3,-1938.637,5205.161,15.87822,0,0,0,0,100,0), +(@PATH,4,-1931.686,5226.178,13.69076,0,0,0,0,100,0), +(@PATH,5,-1916.49,5271.667,3.115327,0,0,0,0,100,0), +(@PATH,6,-1907.977,5296.765,1.137226,0,0,0,0,100,0), +(@PATH,7,-1901.641,5315.616,0.8860542,0,0,0,0,100,0), +(@PATH,8,-1907.977,5296.765,1.137226,0,0,0,0,100,0), +(@PATH,9,-1916.49,5271.667,3.115327,0,0,0,0,100,0), +(@PATH,10,-1931.686,5226.178,13.69076,0,0,0,0,100,0), +(@PATH,11,-1938.637,5205.161,15.87822,0,0,0,0,100,0), +(@PATH,12,-1951.699,5166.294,17.25317,0,0,0,0,100,0); + +-- Pathing for Vekax Entry: 22429 +SET @NPC := 78783; +SET @PATH := @NPC * 10; +UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-1668.65,`position_y`=5531.648,`position_z`=2.084388 WHERE `guid`=@NPC; +DELETE FROM `creature_addon` WHERE `guid`=@NPC; +INSERT INTO `creature_addon` (`guid`,`path_id`,`bytes2`,`mount`,`auras`) VALUES (@NPC,@PATH,1,0, ''); +DELETE FROM `waypoint_data` WHERE `id`=@PATH; +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +(@PATH,1,-1668.65,5531.648,2.084388,0,0,0,0,100,0), +(@PATH,2,-1675.535,5539.932,4.808745,0,0,0,0,100,0), +(@PATH,3,-1669.465,5544.53,5.413347,0,0,0,0,100,0), +(@PATH,4,-1656.403,5534.61,6.1091,0,0,0,0,100,0), +(@PATH,5,-1642.701,5537.171,6.172705,0,0,0,0,100,0), +(@PATH,6,-1641.732,5532.27,5.289427,0,0,0,0,100,0), +(@PATH,7,-1638.772,5516.784,-3.276233,0,0,0,0,100,0), +(@PATH,8,-1633.397,5489.191,-14.53821,0,0,0,0,100,0), +(@PATH,9,-1629.011,5484.991,-14.49736,0,0,0,0,100,0), +(@PATH,10,-1624.565,5486.951,-14.3688,0,0,0,0,100,0), +(@PATH,11,-1615.755,5487.401,-14.04851,0,0,0,0,100,0), +(@PATH,12,-1606.827,5480.522,-14.09892,0,0,0,0,100,0), +(@PATH,13,-1602.518,5469.729,-14.09986,0,0,0,0,100,0), +(@PATH,14,-1604.27,5462.537,-14.10011,0,0,0,0,100,0), +(@PATH,15,-1612.627,5453.875,-14.09042,0,0,0,0,100,0), +(@PATH,16,-1623.32,5451.606,-14.07838,0,0,0,0,100,0), +(@PATH,17,-1633.862,5457.565,-14.19732,0,0,0,0,100,0), +(@PATH,18,-1637.261,5469.756,-14.69115,0,0,0,0,100,0), +(@PATH,19,-1632.431,5481.022,-14.52123,0,0,0,0,100,0), +(@PATH,20,-1637.261,5469.756,-14.69115,0,0,0,0,100,0), +(@PATH,21,-1633.862,5457.565,-14.19732,0,0,0,0,100,0), +(@PATH,22,-1623.32,5451.606,-14.07838,0,0,0,0,100,0), +(@PATH,23,-1612.843,5453.652,-14.09002,0,0,0,0,100,0), +(@PATH,24,-1604.27,5462.537,-14.10011,0,0,0,0,100,0), +(@PATH,25,-1602.518,5469.729,-14.09986,0,0,0,0,100,0), +(@PATH,26,-1606.827,5480.522,-14.09892,0,0,0,0,100,0), +(@PATH,27,-1615.755,5487.401,-14.04851,0,0,0,0,100,0), +(@PATH,28,-1624.565,5486.951,-14.3688,0,0,0,0,100,0), +(@PATH,29,-1629.011,5484.991,-14.49736,0,0,0,0,100,0), +(@PATH,30,-1633.36,5489.002,-14.55791,0,0,0,0,100,0), +(@PATH,31,-1638.772,5516.784,-3.276233,0,0,0,0,100,0), +(@PATH,32,-1641.732,5532.27,5.289427,0,0,0,0,100,0), +(@PATH,33,-1642.701,5537.171,6.172705,0,0,0,0,100,0), +(@PATH,34,-1656.217,5534.645,6.133076,0,0,0,0,100,0), +(@PATH,35,-1669.465,5544.53,5.413347,0,0,0,0,100,0), +(@PATH,36,-1675.535,5539.932,4.808745,0,0,0,0,100,0), +(@PATH,37,-1668.774,5531.669,2.197366,0,0,0,0,100,0), +(@PATH,38,-1648.668,5528.287,-5.18554,0,0,0,0,100,0); + +-- Pathing for Skettis Outcast Entry: 19075 +SET @NPC := 68385; +SET @PATH := @NPC * 10; +UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-1622.079,`position_y`=5473.997,`position_z`=-4.175363 WHERE `guid`=@NPC; +DELETE FROM `creature_addon` WHERE `guid`=@NPC; +INSERT INTO `creature_addon` (`guid`,`path_id`,`bytes2`,`mount`,`auras`) VALUES (@NPC,@PATH,1,0, ''); +DELETE FROM `waypoint_data` WHERE `id`=@PATH; +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +(@PATH,1,-1622.079,5473.997,-4.175363,0,0,0,0,100,0), +(@PATH,2,-1624.692,5470.754,-4.14517,0,0,0,0,100,0), +(@PATH,3,-1624.417,5467.651,-4.055672,0,0,0,0,100,0), +(@PATH,4,-1622.095,5464.667,-4.021505,0,0,0,0,100,0), +(@PATH,5,-1618.157,5464.342,-4.122393,0,0,0,0,100,0), +(@PATH,6,-1614.648,5466.909,-3.965191,0,0,0,0,100,0), +(@PATH,7,-1614.635,5471.312,-4.240356,0,0,0,0,100,0), +(@PATH,8,-1618.361,5474.586,-3.982594,0,0,0,0,100,0); -- cgit v1.2.3 From 4f1d247dfba124c628feaa24c603cd5cc24f0349 Mon Sep 17 00:00:00 2001 From: DDuarte Date: Fri, 25 Jul 2014 18:01:27 +0100 Subject: Core/Network: Fix some possible exceptions on socket.close() Ref #12634 --- src/server/authserver/Server/AuthSession.cpp | 16 ++++++++++++---- src/server/authserver/Server/AuthSession.h | 1 + src/server/game/Server/WorldSocket.cpp | 22 +++++++++++++++------- src/server/game/Server/WorldSocket.h | 4 ++-- 4 files changed, 30 insertions(+), 13 deletions(-) diff --git a/src/server/authserver/Server/AuthSession.cpp b/src/server/authserver/Server/AuthSession.cpp index 9bd9313059a..cad82a80a07 100644 --- a/src/server/authserver/Server/AuthSession.cpp +++ b/src/server/authserver/Server/AuthSession.cpp @@ -161,7 +161,7 @@ void AuthSession::AsyncReadHeader() } else { - _socket.close(); + CloseSocket(); } }); } @@ -176,7 +176,7 @@ void AuthSession::AsyncReadData(bool (AuthSession::*handler)(), size_t dataSize, { if (!(*this.*handler)()) { - _socket.close(); + CloseSocket(); return; } @@ -184,7 +184,7 @@ void AuthSession::AsyncReadData(bool (AuthSession::*handler)(), size_t dataSize, } else { - _socket.close(); + CloseSocket(); } }); } @@ -195,7 +195,7 @@ void AuthSession::AsyncWrite(std::size_t length) { if (error) { - _socket.close(); + CloseSocket(); } }); } @@ -935,3 +935,11 @@ void AuthSession::SetVSFields(const std::string& rI) OPENSSL_free(v_hex); OPENSSL_free(s_hex); } + +void AuthSession::CloseSocket() +{ + boost::system::error_code socketError; + _socket.close(socketError); + if (socketError) + TC_LOG_DEBUG("server.authserver", "Account '%s' errored when closing socket: %i (%s)", _login.c_str(), socketError.value(), socketError.message()); +} diff --git a/src/server/authserver/Server/AuthSession.h b/src/server/authserver/Server/AuthSession.h index 4ae33f44cb3..6dc9c404857 100644 --- a/src/server/authserver/Server/AuthSession.h +++ b/src/server/authserver/Server/AuthSession.h @@ -58,6 +58,7 @@ private: void AsyncReadData(bool (AuthSession::*handler)(), size_t dataSize, size_t bufferOffset); void AsyncWrite(size_t length); + void CloseSocket(); void SetVSFields(const std::string& rI); diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index 6ef986dbd22..682ea320365 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -78,8 +78,7 @@ void WorldSocket::AsyncReadHeader() else { // _socket.is_open() till returns true even after calling close() - boost::system::error_code socketError; - _socket.close(socketError); + CloseSocket(); } }); } @@ -155,8 +154,7 @@ void WorldSocket::AsyncReadData(size_t dataSize) else { // _socket.is_open() till returns true even after calling close() - boost::system::error_code socketError; - _socket.close(socketError); + CloseSocket(); } }); } @@ -202,7 +200,7 @@ void WorldSocket::AsyncWrite(std::vector const& data) AsyncWrite(_writeQueue.front()); } else - _socket.close(); + CloseSocket(); }); } @@ -475,7 +473,7 @@ void WorldSocket::HandlePing(WorldPacket& recvPacket) TC_LOG_ERROR("network", "WorldSocket::HandlePing: %s kicked for over-speed pings (address: %s)", _worldSession->GetPlayerInfo().c_str(), GetRemoteIpAddress().c_str()); - _socket.close(); + CloseSocket(); return; } } @@ -494,7 +492,7 @@ void WorldSocket::HandlePing(WorldPacket& recvPacket) TC_LOG_ERROR("network", "WorldSocket::HandlePing: peer sent CMSG_PING, but is not authenticated or got recently kicked, address = %s", GetRemoteIpAddress().c_str()); - _socket.close(); + CloseSocket(); return; } @@ -502,3 +500,13 @@ void WorldSocket::HandlePing(WorldPacket& recvPacket) packet << ping; return AsyncWrite(packet); } + +void WorldSocket::CloseSocket() +{ + boost::system::error_code socketError; + _socket.close(socketError); + if (socketError) + TC_LOG_DEBUG("network", "WorldSocket::CloseSocket: Player '%s' (%s) errored when closing socket: %i (%s)", + _worldSession ? _worldSession->GetPlayerInfo().c_str() : "unknown", GetRemoteIpAddress().c_str(), + socketError.value(), socketError.message()); +} diff --git a/src/server/game/Server/WorldSocket.h b/src/server/game/Server/WorldSocket.h index 07aae10513f..0f3fc553872 100644 --- a/src/server/game/Server/WorldSocket.h +++ b/src/server/game/Server/WorldSocket.h @@ -55,8 +55,8 @@ public: std::string GetRemoteIpAddress() const { return _socket.remote_endpoint().address().to_string(); }; uint16 GetRemotePort() const { return _socket.remote_endpoint().port(); } - void CloseSocket() { _socket.close(); }; - bool IsOpen() { return _socket.is_open(); }; + void CloseSocket(); + bool IsOpen() const { return _socket.is_open(); } void AsyncWrite(WorldPacket const& packet); -- cgit v1.2.3 From c60bdec16046c0bb908e84039f8b1c22368363bd Mon Sep 17 00:00:00 2001 From: Malcrom Date: Fri, 25 Jul 2014 14:54:47 -0230 Subject: DB/Misc: Misc fixups in Dalaran --- sql/updates/world/2014_07_25_02_world_misc.sql | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 sql/updates/world/2014_07_25_02_world_misc.sql diff --git a/sql/updates/world/2014_07_25_02_world_misc.sql b/sql/updates/world/2014_07_25_02_world_misc.sql new file mode 100644 index 00000000000..e5124e3a56f --- /dev/null +++ b/sql/updates/world/2014_07_25_02_world_misc.sql @@ -0,0 +1,5 @@ +-- Remove Dalaran Visitor spawns from DB +DELETE FROM creature WHERE id IN (32596,32597,32598,32600,32601,32602); +-- Fix Addon for Jean Pierre Poulain +DELETE FROM `creature_addon` WHERE `guid`=85236; +UPDATE `creature_template_addon` SET `mount`=22471, `auras`='63500' WHERE `entry`=34244; -- cgit v1.2.3