aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/2015_10_21_00_world.sql265
-rw-r--r--sql/updates/world/2015_10_21_01_world.sql11
-rw-r--r--sql/updates/world/2015_10_22_00_world.sql14
-rw-r--r--sql/updates/world/2015_10_22_01_world.sql1006
-rw-r--r--src/server/game/Chat/Chat.cpp82
-rw-r--r--src/server/game/Chat/Chat.h27
-rw-r--r--src/server/game/Scripting/ScriptMgr.cpp10
-rw-r--r--src/server/game/Scripting/ScriptMgr.h4
-rw-r--r--src/server/game/Spells/SpellEffects.cpp11
-rw-r--r--src/server/scripts/Commands/cs_account.cpp45
-rw-r--r--src/server/scripts/Commands/cs_achievement.cpp10
-rw-r--r--src/server/scripts/Commands/cs_ahbot.cpp44
-rw-r--r--src/server/scripts/Commands/cs_arena.cpp20
-rw-r--r--src/server/scripts/Commands/cs_ban.cpp45
-rw-r--r--src/server/scripts/Commands/cs_bf.cpp18
-rw-r--r--src/server/scripts/Commands/cs_cast.cpp20
-rw-r--r--src/server/scripts/Commands/cs_character.cpp44
-rw-r--r--src/server/scripts/Commands/cs_cheat.cpp25
-rw-r--r--src/server/scripts/Commands/cs_debug.cpp94
-rw-r--r--src/server/scripts/Commands/cs_deserter.cpp22
-rw-r--r--src/server/scripts/Commands/cs_disable.cpp46
-rw-r--r--src/server/scripts/Commands/cs_event.cpp16
-rw-r--r--src/server/scripts/Commands/cs_gm.cpp20
-rw-r--r--src/server/scripts/Commands/cs_go.cpp30
-rw-r--r--src/server/scripts/Commands/cs_gobject.cpp38
-rw-r--r--src/server/scripts/Commands/cs_group.cpp20
-rw-r--r--src/server/scripts/Commands/cs_guild.cpp22
-rw-r--r--src/server/scripts/Commands/cs_honor.cpp17
-rw-r--r--src/server/scripts/Commands/cs_instance.cpp20
-rw-r--r--src/server/scripts/Commands/cs_learn.cpp36
-rw-r--r--src/server/scripts/Commands/cs_lfg.cpp18
-rw-r--r--src/server/scripts/Commands/cs_list.cpp18
-rw-r--r--src/server/scripts/Commands/cs_lookup.cpp50
-rw-r--r--src/server/scripts/Commands/cs_message.cpp27
-rw-r--r--src/server/scripts/Commands/cs_misc.cpp109
-rw-r--r--src/server/scripts/Commands/cs_mmaps.cpp20
-rw-r--r--src/server/scripts/Commands/cs_modify.cpp67
-rw-r--r--src/server/scripts/Commands/cs_npc.cpp182
-rw-r--r--src/server/scripts/Commands/cs_pet.cpp14
-rw-r--r--src/server/scripts/Commands/cs_quest.cpp16
-rw-r--r--src/server/scripts/Commands/cs_rbac.cpp21
-rw-r--r--src/server/scripts/Commands/cs_reload.cpp213
-rw-r--r--src/server/scripts/Commands/cs_reset.cpp22
-rw-r--r--src/server/scripts/Commands/cs_send.cpp16
-rw-r--r--src/server/scripts/Commands/cs_server.cpp57
-rw-r--r--src/server/scripts/Commands/cs_tele.cpp18
-rw-r--r--src/server/scripts/Commands/cs_ticket.cpp45
-rw-r--r--src/server/scripts/Commands/cs_titles.cpp19
-rw-r--r--src/server/scripts/Commands/cs_wp.cpp22
-rw-r--r--src/server/worldserver/CommandLine/CliRunnable.cpp13
50 files changed, 2053 insertions, 996 deletions
diff --git a/sql/updates/world/2015_10_21_00_world.sql b/sql/updates/world/2015_10_21_00_world.sql
new file mode 100644
index 00000000000..d751a6e65bc
--- /dev/null
+++ b/sql/updates/world/2015_10_21_00_world.sql
@@ -0,0 +1,265 @@
+-- Onyxia Add WPs
+SET @NPC := 52051;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-128.604,`position_y`=-135.78,`position_z`=-51.68033 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,-128.604,-135.78,-51.68033,0,0,0,0,100,0),
+(@PATH,2,-127.7581,-135.2467,-51.68033,0,0,0,0,100,0),
+(@PATH,3,-124.1603,-132.1572,-51.38051,0,0,0,0,100,0),
+(@PATH,4,-117.3008,-126.2667,-49.287,0,0,0,0,100,0),
+(@PATH,5,-114.3034,-123.6929,-49.21809,0,0,0,0,100,0),
+(@PATH,6,-110.7887,-120.6747,-48.59732,0,0,0,0,100,0),
+(@PATH,7,-106.7952,-117.2454,-45.67963,0,0,0,0,100,0),
+(@PATH,8,-103.1414,-114.1078,-42.60856,0,0,0,0,100,0),
+(@PATH,9,-103.1414,-114.1078,-42.60856,0,0,0,0,100,0),
+(@PATH,10,-102.9662,-113.9184,-42.13044,0,0,0,0,100,0),
+(@PATH,11,-101.9662,-112.9184,-41.38044,0,0,0,0,100,0),
+(@PATH,12,-97.21623,-108.9184,-39.38044,0,0,0,0,100,0),
+(@PATH,13,-94.21623,-106.4184,-38.38044,0,0,0,0,100,0),
+(@PATH,14,-91.96623,-104.4184,-38.38044,0,0,0,0,100,0),
+(@PATH,15,-87.21623,-100.1684,-36.63044,0,0,0,0,100,0),
+(@PATH,16,-86.88522,-99.955,-36.61054,0,0,0,0,100,0),
+(@PATH,17,-86.13522,-99.705,-36.36054,0,0,0,0,100,0),
+(@PATH,18,-82.63522,-99.205,-35.61054,0,0,0,0,100,0),
+(@PATH,19,-80.88522,-99.205,-35.61054,0,0,0,0,100,0),
+(@PATH,20,-78.38522,-98.955,-35.11054,0,0,0,0,100,0),
+(@PATH,21,-73.38522,-98.455,-34.61054,0,0,0,0,100,0),
+(@PATH,22,-73.4659,-98.32379,-34.65569,0,0,0,0,100,0),
+(@PATH,23,-77.9659,-98.82379,-35.15569,0,0,0,0,100,0),
+(@PATH,24,-80.9659,-98.82379,-35.65569,0,0,0,0,100,0),
+(@PATH,25,-82.7159,-99.07379,-35.65569,0,0,0,0,100,0),
+(@PATH,26,-82.87637,-99.18207,-35.74073,0,0,0,0,100,0),
+(@PATH,27,-86.12637,-99.68207,-36.49073,0,0,0,0,100,0),
+(@PATH,28,-87.12637,-100.1821,-36.49073,0,0,0,0,100,0),
+(@PATH,29,-91.87637,-104.4321,-38.24073,0,0,0,0,100,0),
+(@PATH,30,-93.87637,-106.4321,-38.24073,0,0,0,0,100,0),
+(@PATH,31,-96.87637,-108.6821,-39.24073,0,0,0,0,100,0),
+(@PATH,32,-101.8764,-112.9321,-41.24073,0,0,0,0,100,0),
+(@PATH,33,-102.2544,-113.366,-41.50324,0,0,0,0,100,0),
+(@PATH,34,-103.2544,-114.116,-42.50324,0,0,0,0,100,0),
+(@PATH,35,-106.7544,-117.366,-45.50324,0,0,0,0,100,0),
+(@PATH,36,-110.7544,-120.616,-48.25324,0,0,0,0,100,0),
+(@PATH,37,-114.2544,-123.616,-48.75324,0,0,0,0,100,0),
+(@PATH,38,-117.0044,-126.116,-48.75324,0,0,0,0,100,0),
+(@PATH,39,-123.5044,-131.616,-50.75324,0,0,0,0,100,0),
+(@PATH,40,-127.0044,-134.616,-51.00324,0,0,0,0,100,0),
+(@PATH,41,-127.2775,-134.812,-51.39043,0,0,0,0,100,0),
+(@PATH,42,-127.7775,-135.312,-51.39043,0,0,0,0,100,0),
+(@PATH,43,-129.0275,-136.062,-51.89043,0,0,0,0,100,0),
+(@PATH,44,-135.7775,-140.312,-52.64043,0,0,0,0,100,0),
+(@PATH,45,-136.7775,-141.062,-52.89043,0,0,0,0,100,0),
+(@PATH,46,-144.7775,-145.812,-53.89043,0,0,0,0,100,0),
+(@PATH,47,-147.2775,-147.562,-53.14043,0,0,0,0,100,0),
+(@PATH,48,-147.5882,-147.6326,-53.39889,0,0,0,0,100,0),
+(@PATH,49,-148.3382,-148.3826,-53.14889,0,0,0,0,100,0),
+(@PATH,50,-150.5882,-150.6326,-53.14889,0,0,0,0,100,0),
+(@PATH,51,-151.3382,-151.6326,-53.64889,0,0,0,0,100,0),
+(@PATH,52,-156.5882,-157.6326,-56.39889,0,0,0,0,100,0),
+(@PATH,53,-158.0882,-159.1326,-57.14889,0,0,0,0,100,0),
+(@PATH,54,-162.8382,-164.6326,-58.64889,0,0,0,0,100,0),
+(@PATH,55,-163.5882,-165.3826,-59.64889,0,0,0,0,100,0),
+(@PATH,56,-166.3382,-168.3826,-61.14889,0,0,0,0,100,0),
+(@PATH,57,-166.5622,-168.6543,-61.35694,0,0,0,0,100,0),
+(@PATH,58,-163.5622,-165.4043,-59.60694,0,0,0,0,100,0),
+(@PATH,59,-162.8122,-164.6543,-58.85694,0,0,0,0,100,0),
+(@PATH,60,-158.3122,-159.4043,-57.10694,0,0,0,0,100,0),
+(@PATH,61,-156.8122,-157.6543,-56.35694,0,0,0,0,100,0),
+(@PATH,62,-151.8122,-152.1543,-54.10694,0,0,0,0,100,0),
+(@PATH,63,-150.5622,-150.6543,-53.10694,0,0,0,0,100,0),
+(@PATH,64,-148.4862,-148.2634,-52.81345,0,0,0,0,100,0),
+(@PATH,65,-147.2362,-147.5134,-53.06345,0,0,0,0,100,0),
+(@PATH,66,-144.7362,-146.0134,-53.81345,0,0,0,0,100,0),
+(@PATH,67,-136.9862,-141.0134,-52.81345,0,0,0,0,100,0),
+(@PATH,68,-135.9862,-140.2634,-52.56345,0,0,0,0,100,0),
+(@PATH,69,-129.7362,-136.5134,-52.06345,0,0,0,0,100,0),
+(@PATH,70,-129.596,-136.2151,-51.79766,0,0,0,0,100,0);
+
+SET @NPC := 52049;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-141.0218,`position_y`=-144.2874,`position_z`=-53.78587 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,-141.0218,-144.2874,-53.78587,0,0,0,0,100,0),
+(@PATH,2,-140.2045,-143.7111,-53.78587,0,0,0,0,100,0),
+(@PATH,3,-136.8762,-141.0416,-53.2686,0,0,0,0,100,0),
+(@PATH,4,-135.8708,-140.2352,-53.07284,0,0,0,0,100,0),
+(@PATH,5,-130.4393,-135.8787,-52.2235,0,0,0,0,100,0),
+(@PATH,6,-128.077,-133.984,-51.39751,0,0,0,0,100,0),
+(@PATH,7,-126.1452,-132.4346,-51.30407,0,0,0,0,100,0),
+(@PATH,8,-126.1452,-132.4346,-51.30407,0,0,0,0,100,0),
+(@PATH,9,-127.6748,-133.5728,-51.29497,0,0,0,0,100,0),
+(@PATH,10,-130.4248,-135.8228,-52.04497,0,0,0,0,100,0),
+(@PATH,11,-135.6748,-140.0728,-52.54497,0,0,0,0,100,0),
+(@PATH,12,-136.6748,-140.8228,-52.79497,0,0,0,0,100,0),
+(@PATH,13,-140.2209,-143.5945,-53.65104,0,0,0,0,100,0),
+(@PATH,14,-144.7209,-146.8445,-54.15104,0,0,0,0,100,0),
+(@PATH,15,-147.2209,-148.5945,-53.40104,0,0,0,0,100,0),
+(@PATH,16,-150.2209,-150.5945,-53.15104,0,0,0,0,100,0),
+(@PATH,17,-150.9709,-151.3445,-53.65104,0,0,0,0,100,0),
+(@PATH,18,-152.2209,-152.0945,-54.15104,0,0,0,0,100,0),
+(@PATH,19,-157.7209,-155.8445,-56.40104,0,0,0,0,100,0),
+(@PATH,20,-160.7863,-158.1388,-57.63475,0,0,0,0,100,0),
+(@PATH,21,-162.7863,-162.1388,-58.63475,0,0,0,0,100,0),
+(@PATH,22,-163.7863,-163.8888,-59.13475,0,0,0,0,100,0),
+(@PATH,23,-166.0363,-168.6388,-61.13475,0,0,0,0,100,0),
+(@PATH,24,-168.5363,-173.3888,-62.88475,0,0,0,0,100,0),
+(@PATH,25,-170.4057,-176.7284,-64.06725,0,0,0,0,100,0),
+(@PATH,26,-170.6557,-177.9784,-64.31725,0,0,0,0,100,0),
+(@PATH,27,-171.1557,-178.9784,-64.81725,0,0,0,0,100,0),
+(@PATH,28,-172.6557,-184.2284,-65.56725,0,0,0,0,100,0),
+(@PATH,29,-175.3081,-192.9928,-66.43716,0,0,0,0,100,0),
+(@PATH,30,-171.8081,-197.2428,-66.43716,0,0,0,0,100,0),
+(@PATH,31,-168.8081,-201.2428,-66.18716,0,0,0,0,100,0),
+(@PATH,32,-165.1812,-205.6809,-66.07635,0,0,0,0,100,0),
+(@PATH,33,-160.4312,-207.9309,-66.07635,0,0,0,0,100,0),
+(@PATH,34,-154.1812,-210.9309,-66.32635,0,0,0,0,100,0),
+(@PATH,35,-154.1465,-210.945,-66.31016,0,0,0,0,100,0),
+(@PATH,36,-160.3965,-207.945,-66.06016,0,0,0,0,100,0),
+(@PATH,37,-165.1298,-205.5847,-66.08299,0,0,0,0,100,0),
+(@PATH,38,-168.6298,-201.3347,-66.33299,0,0,0,0,100,0),
+(@PATH,39,-171.8798,-197.3347,-66.58299,0,0,0,0,100,0),
+(@PATH,40,-174.8798,-193.8347,-66.58299,0,0,0,0,100,0),
+(@PATH,41,-174.8037,-193.4657,-66.47095,0,0,0,0,100,0),
+(@PATH,42,-175.3037,-192.7157,-66.47095,0,0,0,0,100,0),
+(@PATH,43,-172.5537,-184.4657,-65.47095,0,0,0,0,100,0),
+(@PATH,44,-171.0537,-179.2157,-64.97095,0,0,0,0,100,0),
+(@PATH,45,-170.8037,-177.9657,-64.22095,0,0,0,0,100,0),
+(@PATH,46,-170.8405,-178.8178,-64.7157,0,0,0,0,100,0),
+(@PATH,47,-170.5905,-177.8178,-63.9657,0,0,0,0,100,0),
+(@PATH,48,-170.0905,-176.5678,-63.7157,0,0,0,0,100,0),
+(@PATH,49,-168.3405,-173.3178,-62.9657,0,0,0,0,100,0),
+(@PATH,50,-166.3405,-169.0678,-61.4657,0,0,0,0,100,0),
+(@PATH,51,-164.0905,-164.5678,-59.7157,0,0,0,0,100,0),
+(@PATH,52,-162.8405,-162.0678,-58.7157,0,0,0,0,100,0),
+(@PATH,53,-160.623,-157.9054,-57.24116,0,0,0,0,100,0),
+(@PATH,54,-157.623,-155.9054,-56.24116,0,0,0,0,100,0),
+(@PATH,55,-152.123,-152.4054,-54.24116,0,0,0,0,100,0),
+(@PATH,56,-151.373,-151.6554,-53.49116,0,0,0,0,100,0),
+(@PATH,57,-150.373,-150.9054,-53.24116,0,0,0,0,100,0),
+(@PATH,58,-147.373,-148.9054,-53.24116,0,0,0,0,100,0),
+(@PATH,59,-144.623,-146.9054,-54.24116,0,0,0,0,100,0);
+
+SET @NPC := 52048;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=-117.2994,`position_y`=-214.0461,`position_z`=-72.49876 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,-117.2994,-214.0461,-72.49876,0,0,0,0,100,0),
+(@PATH,2,-121.5494,-213.7961,-71.24876,0,0,0,0,100,0),
+(@PATH,3,-125.0494,-213.5461,-71.24876,0,0,0,0,100,0),
+(@PATH,4,-138.0494,-212.5461,-69.49876,0,0,0,0,100,0),
+(@PATH,5,-141.0494,-212.2961,-68.49876,0,0,0,0,100,0),
+(@PATH,6,-144.2994,-212.0461,-68.49876,0,0,0,0,100,0),
+(@PATH,7,-146.5494,-211.7961,-68.24876,0,0,0,0,100,0),
+(@PATH,8,-153.7994,-211.2961,-66.49876,0,0,0,0,100,0),
+(@PATH,9,-160.8753,-210.4289,-66.45905,0,0,0,0,100,0),
+(@PATH,10,-162.8753,-208.4289,-66.20905,0,0,0,0,100,0),
+(@PATH,11,-165.3753,-205.9289,-66.20905,0,0,0,0,100,0),
+(@PATH,12,-169.3753,-201.6789,-66.20905,0,0,0,0,100,0),
+(@PATH,13,-175.155,-195.7021,-66.3976,0,0,0,0,100,0),
+(@PATH,14,-174.155,-193.2021,-66.3976,0,0,0,0,100,0),
+(@PATH,15,-170.655,-182.9521,-65.3976,0,0,0,0,100,0),
+(@PATH,16,-169.405,-179.2021,-64.6476,0,0,0,0,100,0),
+(@PATH,17,-168.905,-177.7021,-63.8976,0,0,0,0,100,0),
+(@PATH,18,-167.655,-173.9521,-63.1476,0,0,0,0,100,0),
+(@PATH,19,-165.9926,-169.4054,-61.62289,0,0,0,0,100,0),
+(@PATH,20,-163.2426,-166.4054,-59.87289,0,0,0,0,100,0),
+(@PATH,21,-162.2426,-165.4054,-58.62289,0,0,0,0,100,0),
+(@PATH,22,-156.4926,-158.6554,-56.37289,0,0,0,0,100,0),
+(@PATH,23,-152.4926,-153.9054,-54.37289,0,0,0,0,100,0),
+(@PATH,24,-152.2406,-153.7879,-54.28136,0,0,0,0,100,0),
+(@PATH,25,-150.4906,-152.0379,-53.28136,0,0,0,0,100,0),
+(@PATH,26,-147.9906,-150.0379,-53.28136,0,0,0,0,100,0),
+(@PATH,27,-146.7406,-149.0379,-53.28136,0,0,0,0,100,0),
+(@PATH,28,-144.2406,-147.0379,-54.03136,0,0,0,0,100,0),
+(@PATH,29,-136.7406,-141.2879,-52.78136,0,0,0,0,100,0),
+(@PATH,30,-129.9906,-136.2879,-52.03136,0,0,0,0,100,0),
+(@PATH,31,-127.4906,-134.5379,-51.28136,0,0,0,0,100,0),
+(@PATH,32,-124.2406,-131.7879,-51.28136,0,0,0,0,100,0),
+(@PATH,33,-121.0758,-129.5125,-50.05389,0,0,0,0,100,0),
+(@PATH,34,-116.8258,-126.2625,-48.80389,0,0,0,0,100,0),
+(@PATH,35,-113.8258,-123.7625,-48.80389,0,0,0,0,100,0),
+(@PATH,36,-110.5758,-121.0125,-48.30389,0,0,0,0,100,0),
+(@PATH,37,-106.3258,-117.7625,-45.55389,0,0,0,0,100,0),
+(@PATH,38,-101.5758,-114.0125,-41.55389,0,0,0,0,100,0),
+(@PATH,39,-98.82584,-111.7625,-40.30389,0,0,0,0,100,0),
+(@PATH,40,-97.149,-110.4035,-39.23767,0,0,0,0,100,0),
+(@PATH,41,-95.899,-109.6535,-38.73767,0,0,0,0,100,0),
+(@PATH,42,-95.149,-109.1535,-38.48767,0,0,0,0,100,0),
+(@PATH,43,-92.399,-107.6535,-37.73767,0,0,0,0,100,0),
+(@PATH,44,-89.649,-105.9035,-37.73767,0,0,0,0,100,0),
+(@PATH,45,-84.649,-103.1535,-36.23767,0,0,0,0,100,0),
+(@PATH,46,-82.649,-101.9035,-35.73767,0,0,0,0,100,0),
+(@PATH,47,-78.149,-99.15355,-35.23767,0,0,0,0,100,0),
+(@PATH,48,-77.96553,-98.93108,-35.05116,0,0,0,0,100,0),
+(@PATH,49,-75.21553,-97.68108,-34.80116,0,0,0,0,100,0),
+(@PATH,50,-73.21553,-97.68108,-34.80116,0,0,0,0,100,0),
+(@PATH,51,-68.21553,-97.68108,-37.05116,0,0,0,0,100,0),
+(@PATH,52,-63.21553,-97.68108,-38.55116,0,0,0,0,100,0),
+(@PATH,53,-57.46553,-97.68108,-38.30116,0,0,0,0,100,0),
+(@PATH,54,-57.42111,-98.24262,-38.41855,0,0,0,0,100,0),
+(@PATH,55,-63.42111,-98.49262,-38.41855,0,0,0,0,100,0),
+(@PATH,56,-68.17111,-98.49262,-36.91855,0,0,0,0,100,0),
+(@PATH,57,-73.17111,-98.74262,-34.66855,0,0,0,0,100,0),
+(@PATH,58,-73.4623,-98.88531,-34.77631,0,0,0,0,100,0),
+(@PATH,59,-76.2123,-99.13531,-35.02631,0,0,0,0,100,0),
+(@PATH,60,-78.2123,-99.88531,-35.02631,0,0,0,0,100,0),
+(@PATH,61,-82.7123,-101.3853,-35.77631,0,0,0,0,100,0),
+(@PATH,62,-85.2123,-101.8853,-36.27631,0,0,0,0,100,0),
+(@PATH,63,-91.4623,-104.1353,-38.02631,0,0,0,0,100,0),
+(@PATH,64,-91.69406,-104.2236,-38.36034,0,0,0,0,100,0),
+(@PATH,65,-93.44406,-104.7236,-38.11034,0,0,0,0,100,0),
+(@PATH,66,-94.69406,-105.7236,-38.11034,0,0,0,0,100,0),
+(@PATH,67,-97.69406,-108.4736,-39.11034,0,0,0,0,100,0),
+(@PATH,68,-98.69406,-109.4736,-39.86034,0,0,0,0,100,0),
+(@PATH,69,-102.4441,-112.4736,-41.61034,0,0,0,0,100,0),
+(@PATH,70,-106.9441,-116.4736,-45.36034,0,0,0,0,100,0),
+(@PATH,71,-111.2919,-119.9628,-48.522,0,0,0,0,100,0),
+(@PATH,72,-114.7919,-123.2128,-49.022,0,0,0,0,100,0),
+(@PATH,73,-117.5419,-125.9628,-49.022,0,0,0,0,100,0),
+(@PATH,74,-123.5419,-131.4628,-51.022,0,0,0,0,100,0),
+(@PATH,75,-126.7919,-134.7128,-51.022,0,0,0,0,100,0),
+(@PATH,76,-129.2919,-136.7128,-51.772,0,0,0,0,100,0),
+(@PATH,77,-133.0963,-140.5668,-52.85578,0,0,0,0,100,0),
+(@PATH,78,-135.5963,-142.3168,-53.10578,0,0,0,0,100,0),
+(@PATH,79,-143.5963,-147.5668,-54.35578,0,0,0,0,100,0),
+(@PATH,80,-146.3463,-149.3168,-53.35578,0,0,0,0,100,0),
+(@PATH,81,-149.5963,-151.5668,-53.35578,0,0,0,0,100,0),
+(@PATH,82,-151.0963,-152.5668,-53.85578,0,0,0,0,100,0),
+(@PATH,83,-156.1434,-156.1172,-55.97437,0,0,0,0,100,0),
+(@PATH,84,-156.8934,-157.3672,-56.47437,0,0,0,0,100,0),
+(@PATH,85,-159.1434,-159.8672,-57.47437,0,0,0,0,100,0),
+(@PATH,86,-162.8934,-164.8672,-58.97437,0,0,0,0,100,0),
+(@PATH,87,-163.3934,-165.6172,-59.72437,0,0,0,0,100,0),
+(@PATH,88,-165.8934,-168.6172,-61.22437,0,0,0,0,100,0),
+(@PATH,89,-169.1434,-172.8672,-62.72437,0,0,0,0,100,0),
+(@PATH,90,-169.4215,-173.0583,-63.12639,0,0,0,0,100,0),
+(@PATH,91,-170.6715,-175.0583,-63.62639,0,0,0,0,100,0),
+(@PATH,92,-170.9215,-178.0583,-64.37639,0,0,0,0,100,0),
+(@PATH,93,-170.9215,-179.0583,-64.87639,0,0,0,0,100,0),
+(@PATH,94,-170.9215,-183.3083,-65.37639,0,0,0,0,100,0),
+(@PATH,95,-171.4215,-191.8083,-66.12639,0,0,0,0,100,0),
+(@PATH,96,-171.6715,-197.3083,-66.12639,0,0,0,0,100,0),
+(@PATH,97,-171.9399,-201.3128,-66.46771,0,0,0,0,100,0),
+(@PATH,98,-170.4399,-202.0628,-66.21771,0,0,0,0,100,0),
+(@PATH,99,-165.1899,-205.0628,-66.21771,0,0,0,0,100,0),
+(@PATH,100,-160.1899,-207.5628,-66.21771,0,0,0,0,100,0),
+(@PATH,101,-154.1899,-211.0628,-66.46771,0,0,0,0,100,0),
+(@PATH,102,-153.828,-211.3276,-66.49379,0,0,0,0,100,0),
+(@PATH,103,-153.078,-211.8276,-66.74379,0,0,0,0,100,0),
+(@PATH,104,-145.828,-212.8276,-68.49379,0,0,0,0,100,0),
+(@PATH,105,-141.578,-213.0776,-68.74379,0,0,0,0,100,0),
+(@PATH,106,-138.828,-213.5776,-69.24379,0,0,0,0,100,0),
+(@PATH,107,-131.328,-214.5776,-70.24379,0,0,0,0,100,0),
+(@PATH,108,-131.1989,-214.7451,-70.56252,0,0,0,0,100,0),
+(@PATH,109,-129.4489,-214.7451,-70.81252,0,0,0,0,100,0),
+(@PATH,110,-124.6989,-214.7451,-71.56252,0,0,0,0,100,0),
+(@PATH,111,-121.6989,-214.7451,-71.56252,0,0,0,0,100,0),
+(@PATH,112,-117.6989,-214.7451,-72.31252,0,0,0,0,100,0);
diff --git a/sql/updates/world/2015_10_21_01_world.sql b/sql/updates/world/2015_10_21_01_world.sql
new file mode 100644
index 00000000000..dd5e289d2c5
--- /dev/null
+++ b/sql/updates/world/2015_10_21_01_world.sql
@@ -0,0 +1,11 @@
+--
+-- Grethok the Controller SAI
+SET @ENTRY := 12557;
+UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=@ENTRY;
+DELETE FROM `smart_scripts` WHERE `entryorguid`=@ENTRY AND `source_type`=0 AND `id`=4;
+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
+(@ENTRY,0,4,0,6,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Grethok the Controller - On Just Died - Say Line 0");
+
+DELETE FROM `creature_text` WHERE `entry`=12557;
+INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `BroadcastTextId`, `comment`) VALUES
+(12557, 0, 0, 'Intruders have breached the hatchery! Sound the alarm! Protect the eggs at all costs!', 14, 0, 100, 0, 0, 0, 9958, 'Grethok the Controller');
diff --git a/sql/updates/world/2015_10_22_00_world.sql b/sql/updates/world/2015_10_22_00_world.sql
new file mode 100644
index 00000000000..8075c4e1b20
--- /dev/null
+++ b/sql/updates/world/2015_10_22_00_world.sql
@@ -0,0 +1,14 @@
+--
+-- Orbaz Bloodbane (NPC 28914) condition for gossip option 9769 to be visible only for quest 12757, Scarlet Armies Approach...
+DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=9769 AND `ConditionValue1`=39654;
+INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorType`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES
+(15,9769,0,0,0,2,0,39654,1,0,0,0,0,'','Orbaz Bloodbane - Show gossip option only if player has received item 39654, The Path of Redemption, from quest 12757');
+
+-- Orbaz Bloodbane SAI
+SET @ENTRY := 28914;
+UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=@ENTRY;
+DELETE FROM `smart_scripts` WHERE `entryorguid`=@ENTRY 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
+(@ENTRY,0,0,0,19,0,100,0,12757,0,0,0,80,@ENTRY*100+00,2,0,0,0,0,1,0,0,0,0,0,0,0,"Orbaz Bloodbane - On Quest 'Scarlet Armies Approach' Taken - Run Script"),
+(@ENTRY,0,1,2,62,0,100,0,9769,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,"Orbaz Bloodbane - On Gossip Option 0 Selected - Close Gossip"),
+(@ENTRY,0,2,0,61,0,100,0,9769,0,0,0,80,@ENTRY*100+00,2,0,0,0,0,1,0,0,0,0,0,0,0,"Orbaz Bloodbane - On Gossip Option 0 Selected - Run Script");
diff --git a/sql/updates/world/2015_10_22_01_world.sql b/sql/updates/world/2015_10_22_01_world.sql
new file mode 100644
index 00000000000..ee7db3024ae
--- /dev/null
+++ b/sql/updates/world/2015_10_22_01_world.sql
@@ -0,0 +1,1006 @@
+-- Pathing for Monstrous Underbelly Rat Entry: 32466 'TDB FORMAT'
+SET @NPC := 115709;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=5838.242,`position_y`=727.3474,`position_z`=618.8483 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,5838.242,727.3474,618.8483,0,58000,0,0,100,0), -- 17:24:07
+(@PATH,2,5838.957,727.3331,618.8483,0,0,0,0,100,0), -- 17:25:05
+(@PATH,3,5830.747,726.1935,618.8483,0,0,0,0,100,0), -- 17:25:09
+(@PATH,4,5824.448,723.9514,618.8483,0,20000,0,0,100,0), -- 17:25:11
+(@PATH,5,5824.13,723.7587,618.8483,0,0,0,0,100,0), -- 17:25:31
+(@PATH,6,5831.308,726.0686,618.8483,0,0,0,0,100,0); -- 17:25:33
+
+-- Pathing for Underbelly Rat Entry: 32428 'TDB FORMAT'
+SET @NPC := 112319;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=5860.327,`position_y`=704.5416,`position_z`=609.4075 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,5860.327,704.5416,609.4075,0,0,1,0,100,0), -- 17:41:04
+(@PATH,2,5848.26,705.7133,609.4075,0,0,1,0,100,0), -- 17:41:05
+(@PATH,3,5846.842,704.8635,609.5217,0,0,1,0,100,0), -- 17:41:07
+(@PATH,4,5836.342,691.6135,609.5217,0,0,1,0,100,0), -- 17:41:07
+(@PATH,5,5835.342,690.3635,610.0217,0,0,1,0,100,0), -- 17:41:07
+(@PATH,6,5833.592,688.1135,610.0217,0,0,1,0,100,0), -- 17:41:07
+(@PATH,7,5832.342,686.1135,610.0217,0,0,1,0,100,0), -- 17:41:07
+(@PATH,8,5831.625,685.5962,610.1531,0,0,1,0,100,0), -- 17:41:12
+(@PATH,9,5821.625,681.8462,610.1531,0,0,1,0,100,0), -- 17:41:12
+(@PATH,10,5817.857,678.2463,610.1359,0,0,1,0,100,0), -- 17:41:15
+(@PATH,11,5816.357,672.2463,610.1359,0,0,1,0,100,0), -- 17:41:15
+(@PATH,12,5815.969,667.8105,610.1359,0,0,1,0,100,0), -- 17:41:17
+(@PATH,13,5815.969,666.0605,610.1359,0,0,1,0,100,0), -- 17:41:17
+(@PATH,14,5815.719,663.5605,609.6359,0,0,1,0,100,0), -- 17:41:17
+(@PATH,15,5815.719,655.0605,609.6359,0,0,1,0,100,0), -- 17:41:17
+(@PATH,16,5815.719,653.8105,609.8859,0,0,1,0,100,0), -- 17:41:17
+(@PATH,17,5815.234,650.0985,610.0259,0,0,1,0,100,0), -- 17:41:21
+(@PATH,18,5813.234,651.0985,610.0259,0,0,1,0,100,0), -- 17:41:21
+(@PATH,19,5806.553,653.642,610.1359,0,0,1,0,100,0), -- 17:41:23
+(@PATH,20,5797.906,650.6086,610.1359,0,0,1,0,100,0), -- 17:41:24
+(@PATH,21,5793.906,647.1086,610.1359,0,0,1,0,100,0), -- 17:41:24
+(@PATH,22,5791.656,644.8586,610.1359,0,0,1,0,100,0), -- 17:41:24
+(@PATH,23,5790.859,644.0999,610.1359,0,0,1,0,100,0), -- 17:41:27
+(@PATH,24,5790.109,642.5999,610.1359,0,0,1,0,100,0), -- 17:41:27
+(@PATH,25,5787.335,632.4458,609.5217,0,0,1,0,100,0), -- 17:41:29
+(@PATH,26,5786.012,626.2661,609.6223,0,0,1,0,100,0), -- 17:41:30
+(@PATH,27,5785.262,623.5161,609.6223,0,0,1,0,100,0), -- 17:41:30
+(@PATH,28,5785.012,622.0161,610.1223,0,0,1,0,100,0), -- 17:41:30
+(@PATH,29,5784.012,618.7661,610.1223,0,0,1,0,100,0), -- 17:41:30
+(@PATH,30,5766.996,613.3734,610.1359,0,0,1,0,100,0), -- 17:41:37
+(@PATH,31,5764.289,614.7873,610.1359,0,0,1,0,100,0), -- 17:41:41
+(@PATH,32,5761.711,609.0067,610.1359,0,0,1,0,100,0), -- 17:41:43
+(@PATH,33,5762.814,602.2861,610.1359,0,0,1,0,100,0), -- 17:41:44
+(@PATH,34,5769.666,596.1545,610.1359,0,0,1,0,100,0), -- 17:41:47
+(@PATH,35,5779.668,590.0027,610.0217,0,0,1,0,100,0), -- 17:41:48
+(@PATH,36,5780.418,588.7527,609.5217,0,0,1,0,100,0), -- 17:41:48
+(@PATH,37,5782.172,585.9805,609.6359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,38,5784.172,588.9805,609.6359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,39,5784.672,589.7305,609.6359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,40,5786.422,592.7305,610.1359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,41,5788.172,595.2305,610.1359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,42,5789.422,597.2305,610.1359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,43,5791.422,599.9805,610.1359,0,0,1,0,100,0), -- 17:41:50
+(@PATH,44,5792.814,602.571,610.0217,0,0,1,0,100,0), -- 17:41:54
+(@PATH,45,5793.564,605.321,610.0217,0,0,1,0,100,0), -- 17:41:54
+(@PATH,46,5794.814,608.821,610.0217,0,0,1,0,100,0), -- 17:41:54
+(@PATH,47,5795.814,612.571,609.5217,0,0,1,0,100,0), -- 17:41:54
+(@PATH,48,5796.314,614.821,609.5217,0,0,1,0,100,0), -- 17:41:54
+(@PATH,49,5797.296,616.8961,609.5619,0,0,1,0,100,0), -- 17:41:58
+(@PATH,50,5800.046,619.1461,609.5619,0,0,1,0,100,0), -- 17:41:58
+(@PATH,51,5802.796,621.1461,609.5619,0,0,1,0,100,0), -- 17:41:58
+(@PATH,52,5804.796,622.6461,610.0619,0,0,1,0,100,0), -- 17:41:58
+(@PATH,53,5807.046,624.6461,610.0619,0,0,1,0,100,0), -- 17:41:58
+(@PATH,54,5809.546,626.3961,610.0619,0,0,1,0,100,0), -- 17:41:58
+(@PATH,55,5813.885,631.6583,610.1359,0,0,1,0,100,0), -- 17:42:02
+(@PATH,56,5814.885,632.6583,610.1359,0,0,1,0,100,0), -- 17:42:02
+(@PATH,57,5816.79,635.3191,610.0217,0,0,1,0,100,0), -- 17:42:03
+(@PATH,58,5818.29,638.0691,610.0217,0,0,1,0,100,0), -- 17:42:03
+(@PATH,59,5821.54,644.0691,610.0217,0,0,1,0,100,0), -- 17:42:03
+(@PATH,60,5822.54,646.3191,609.5217,0,0,1,0,100,0), -- 17:42:03
+(@PATH,61,5823.54,648.3191,609.5217,0,0,1,0,100,0), -- 17:42:03
+(@PATH,62,5823.962,648.8779,609.6245,0,0,1,0,100,0), -- 17:42:06
+(@PATH,63,5827.962,654.3779,609.6245,0,0,1,0,100,0), -- 17:42:06
+(@PATH,64,5828.962,655.6279,610.1245,0,0,1,0,100,0), -- 17:42:06
+(@PATH,65,5835.354,659.7132,610.0316,0,0,1,0,100,0), -- 17:42:09
+(@PATH,66,5829.279,655.8999,610.0217,0,0,1,0,100,0), -- 17:42:12
+(@PATH,67,5828.279,654.3999,609.5217,0,0,1,0,100,0), -- 17:42:12
+(@PATH,68,5816.525,665.3367,610.0217,0,0,1,0,100,0), -- 17:42:12
+(@PATH,69,5815.275,664.3367,609.5217,0,0,1,0,100,0), -- 17:42:12
+(@PATH,70,5821.443,644.0874,610.0221,0,0,1,0,100,0), -- 17:42:15
+(@PATH,71,5818.443,638.0874,610.0221,0,0,1,0,100,0), -- 17:42:15
+(@PATH,72,5814.938,632.898,610.1369,0,0,1,0,100,0), -- 17:42:17
+(@PATH,73,5814.188,631.898,610.1369,0,0,1,0,100,0), -- 17:42:17
+(@PATH,74,5807.222,624.6782,610.0217,0,0,1,0,100,0), -- 17:42:20
+(@PATH,75,5804.972,622.9282,610.0217,0,0,1,0,100,0), -- 17:42:20
+(@PATH,76,5802.972,621.4282,609.5217,0,0,1,0,100,0), -- 17:42:20
+(@PATH,77,5800.222,619.1782,609.5217,0,0,1,0,100,0), -- 17:42:20
+(@PATH,78,5797.37,616.6953,609.5106,0,0,1,0,100,0), -- 17:42:22
+(@PATH,79,5796.62,614.6953,609.5106,0,0,1,0,100,0), -- 17:42:22
+(@PATH,80,5796.37,613.4453,609.5106,0,0,1,0,100,0), -- 17:42:22
+(@PATH,81,5794.87,609.1953,610.0106,0,0,1,0,100,0), -- 17:42:22
+(@PATH,82,5793.87,605.1953,610.0106,0,0,1,0,100,0), -- 17:42:22
+(@PATH,83,5791.352,600.0093,610.0248,0,0,1,0,100,0), -- 17:42:26
+(@PATH,84,5789.602,597.2593,610.0248,0,0,1,0,100,0), -- 17:42:26
+(@PATH,85,5788.102,595.2593,610.0248,0,0,1,0,100,0), -- 17:42:26
+(@PATH,86,5786.602,592.7593,610.0248,0,0,1,0,100,0), -- 17:42:26
+(@PATH,87,5784.602,589.7593,609.5248,0,0,1,0,100,0), -- 17:42:26
+(@PATH,88,5784.102,589.0093,609.5248,0,0,1,0,100,0), -- 17:42:26
+(@PATH,89,5781.995,586.1212,609.5032,0,0,1,0,100,0), -- 17:42:30
+(@PATH,90,5780.495,588.8712,609.5032,0,0,1,0,100,0), -- 17:42:30
+(@PATH,91,5779.745,590.1212,610.0032,0,0,1,0,100,0), -- 17:42:30
+(@PATH,92,5777.245,594.3712,610.0032,0,0,1,0,100,0), -- 17:42:30
+(@PATH,93,5769.974,595.9542,610.1404,0,0,1,0,100,0), -- 17:42:32
+(@PATH,94,5768.724,595.7042,610.1404,0,0,1,0,100,0), -- 17:42:32
+(@PATH,95,5767.407,595.5968,610.1359,0,0,1,0,100,0), -- 17:42:35
+(@PATH,96,5763.157,601.5968,610.1359,0,0,1,0,100,0), -- 17:42:35
+(@PATH,97,5762.924,602.3074,610.1359,0,0,1,0,100,0), -- 17:42:36
+(@PATH,98,5763.78,614.1101,610.1359,0,0,1,0,100,0), -- 17:42:37
+(@PATH,99,5764.873,615.9689,610.1359,0,0,1,0,100,0), -- 17:42:38
+(@PATH,100,5766.873,613.2189,610.1359,0,0,1,0,100,0), -- 17:42:38
+(@PATH,101,5784.897,621.7813,610.0217,0,0,1,0,100,0), -- 17:42:43
+(@PATH,102,5785.397,623.5313,609.5217,0,0,1,0,100,0), -- 17:42:43
+(@PATH,103,5786.147,626.2813,609.5217,0,0,1,0,100,0), -- 17:42:43
+(@PATH,104,5786.897,629.0313,609.5217,0,0,1,0,100,0), -- 17:42:43
+(@PATH,105,5786.155,626.5582,609.6359,0,0,1,0,100,0), -- 17:42:49
+(@PATH,106,5786.905,629.0582,609.6359,0,0,1,0,100,0), -- 17:42:49
+(@PATH,107,5786.905,629.5582,609.6359,0,0,1,0,100,0), -- 17:42:49
+(@PATH,108,5787.155,632.0582,609.6359,0,0,1,0,100,0), -- 17:42:49
+(@PATH,109,5787.405,634.3082,610.1359,0,0,1,0,100,0), -- 17:42:49
+(@PATH,110,5790,642.3279,609.9437,0,0,1,0,100,0), -- 17:42:52
+(@PATH,111,5794.055,646.8982,610.1359,0,0,1,0,100,0), -- 17:42:53
+(@PATH,112,5797.555,650.6482,610.1359,0,0,1,0,100,0), -- 17:42:53
+(@PATH,113,5799.555,652.6482,610.1359,0,0,1,0,100,0), -- 17:42:53
+(@PATH,114,5801.444,654.5395,610.1359,0,0,1,0,100,0), -- 17:42:56
+(@PATH,115,5806.444,653.7895,610.1359,0,0,1,0,100,0), -- 17:42:56
+(@PATH,116,5807.512,653.4955,610.1359,0,0,1,0,100,0), -- 17:42:57
+(@PATH,117,5812.512,651.2455,610.1359,0,0,1,0,100,0), -- 17:42:57
+(@PATH,118,5815.426,653.1886,610.1359,0,0,1,0,100,0), -- 17:42:59
+(@PATH,119,5815.426,654.9386,609.6359,0,0,1,0,100,0), -- 17:42:59
+(@PATH,120,5815.676,663.6886,609.6359,0,0,1,0,100,0), -- 17:42:59
+(@PATH,121,5815.676,665.9386,610.1359,0,0,1,0,100,0), -- 17:42:59
+(@PATH,122,5815.676,667.6886,610.1359,0,0,1,0,100,0), -- 17:42:59
+(@PATH,123,5816.03,668.0648,610.0238,0,0,1,0,100,0), -- 17:43:03
+(@PATH,124,5816.03,670.0648,610.0238,0,0,1,0,100,0), -- 17:43:03
+(@PATH,125,5816.53,672.0648,610.0238,0,0,1,0,100,0), -- 17:43:03
+(@PATH,126,5817.53,678.0648,610.0238,0,0,1,0,100,0), -- 17:43:03
+(@PATH,127,5821.502,681.4215,610.1359,0,0,1,0,100,0), -- 17:43:05
+(@PATH,128,5835.538,690.3898,610.0217,0,0,1,0,100,0), -- 17:43:08
+(@PATH,129,5836.288,691.6398,609.5217,0,0,1,0,100,0), -- 17:43:08
+(@PATH,130,5849.831,706.8584,609.4108,0,0,1,0,100,0), -- 17:43:13
+(@PATH,131,5855.265,709.8666,609.4075,0,0,1,0,100,0), -- 17:43:15
+(@PATH,132,5866.013,703.9492,609.4075,0,0,1,0,100,0), -- 17:43:16
+(@PATH,133,5873.884,695.3582,609.4075,0,0,1,0,100,0), -- 17:43:19
+(@PATH,134,5874.632,694.2865,609.4949,0,0,1,0,100,0), -- 17:43:20
+(@PATH,135,5874.84,689.0822,609.9387,0,0,1,0,100,0), -- 17:43:21
+(@PATH,136,5874.09,687.0822,610.9387,0,0,1,0,100,0), -- 17:43:21
+(@PATH,137,5873.47,685.0145,610.9896,0,0,1,0,100,0), -- 17:43:23
+(@PATH,138,5871.47,683.0145,610.7396,0,0,1,0,100,0), -- 17:43:23
+(@PATH,139,5866.97,678.2645,610.9896,0,0,1,0,100,0), -- 17:43:23
+(@PATH,140,5865.97,677.2645,610.9896,0,0,1,0,100,0), -- 17:43:23
+(@PATH,141,5864.548,676.2894,610.9425,0,0,1,0,100,0), -- 17:43:25
+(@PATH,142,5863.548,676.5394,610.9425,0,0,1,0,100,0), -- 17:43:25
+(@PATH,143,5859.548,677.2894,610.1925,0,0,1,0,100,0), -- 17:43:25
+(@PATH,144,5848.772,675.0753,610.0875,0,0,1,0,100,0), -- 17:43:28
+(@PATH,145,5847.37,674.7904,610.0217,0,0,1,0,100,0), -- 17:43:29
+(@PATH,146,5844.12,673.7904,610.0217,0,0,1,0,100,0), -- 17:43:29
+(@PATH,147,5839.478,672.2452,610.1381,0,0,1,0,100,0), -- 17:43:30
+(@PATH,148,5839.478,669.2452,610.1381,0,0,1,0,100,0), -- 17:43:30
+(@PATH,149,5839.478,663.7452,610.1381,0,0,1,0,100,0), -- 17:43:30
+(@PATH,150,5839.195,669.4826,610.1359,0,0,1,0,100,0), -- 17:43:34
+(@PATH,151,5843.771,673.7661,610.1359,0,0,1,0,100,0), -- 17:43:35
+(@PATH,152,5846.521,674.7661,610.1359,0,0,1,0,100,0), -- 17:43:35
+(@PATH,153,5847.64,674.8135,610.0217,0,0,1,0,100,0), -- 17:43:36
+(@PATH,154,5848.64,674.8135,610.0217,0,0,1,0,100,0), -- 17:43:36
+(@PATH,155,5849.89,674.8135,609.5217,0,0,1,0,100,0), -- 17:43:36
+(@PATH,156,5866.708,676.1121,609.4492,0,0,1,0,100,0), -- 17:43:39
+(@PATH,157,5866.708,675.6121,609.4492,0,0,1,0,100,0), -- 17:43:39
+(@PATH,158,5864.833,676.2982,610.9387,0,0,1,0,100,0), -- 17:43:41
+(@PATH,159,5865.833,677.2982,610.9387,0,0,1,0,100,0), -- 17:43:41
+(@PATH,160,5866.833,678.2982,610.9387,0,0,1,0,100,0), -- 17:43:41
+(@PATH,161,5871.583,683.0482,610.9387,0,0,1,0,100,0), -- 17:43:41
+(@PATH,162,5874.132,686.8735,610.9503,0,0,1,0,100,0), -- 17:43:44
+(@PATH,163,5874.632,687.8735,610.4503,0,0,1,0,100,0), -- 17:43:44
+(@PATH,164,5875.144,689.2743,609.9451,0,0,1,0,100,0), -- 17:43:45
+(@PATH,165,5876.144,690.5243,609.6951,0,0,1,0,100,0), -- 17:43:45
+(@PATH,166,5874.644,694.2743,609.6951,0,0,1,0,100,0), -- 17:43:45
+(@PATH,167,5873.894,695.0243,609.6951,0,0,1,0,100,0), -- 17:43:45
+(@PATH,168,5866.658,703.6503,609.4075,0,0,1,0,100,0), -- 17:43:47
+(@PATH,169,5860.372,704.5635,609.4075,0,0,1,0,100,0); -- 17:43:50
+
+-- Pathing for Underbelly Rat Entry: 32428 'TDB FORMAT'
+SET @NPC := 112318;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=5812.506,`position_y`=725.5436,`position_z`=624.4396 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,5812.506,725.5436,624.4396,0,0,1,0,100,0), -- 17:45:05
+(@PATH,2,5811.401,724.5404,624.3019,0,0,1,0,100,0), -- 17:45:07
+(@PATH,3,5809.651,723.5404,623.8019,0,0,1,0,100,0), -- 17:45:07
+(@PATH,4,5805.687,715.0458,619.4795,0,0,1,0,100,0), -- 17:45:09
+(@PATH,5,5805.306,711.5175,619.0914,0,0,1,0,100,0), -- 17:45:10
+(@PATH,6,5805.056,711.0175,619.0914,0,0,1,0,100,0), -- 17:45:10
+(@PATH,7,5803.806,710.2675,619.3414,0,0,1,0,100,0), -- 17:45:10
+(@PATH,8,5798.439,709.6013,619.4612,0,0,1,0,100,0), -- 17:45:11
+(@PATH,9,5796.939,708.1013,619.7112,0,0,1,0,100,0), -- 17:45:11
+(@PATH,10,5796.189,707.3513,619.7112,0,0,1,0,100,0), -- 17:45:11
+(@PATH,11,5796.251,707.1489,619.6675,0,0,1,0,100,0), -- 17:45:12
+(@PATH,12,5794.501,705.6489,619.6675,0,0,1,0,100,0), -- 17:45:12
+(@PATH,13,5795.787,700.2144,619.2513,0,0,1,0,100,0), -- 17:45:14
+(@PATH,14,5796.287,698.9644,619.2513,0,0,1,0,100,0), -- 17:45:14
+(@PATH,15,5797.537,695.4644,619.0013,0,0,1,0,100,0), -- 17:45:14
+(@PATH,16,5798.287,692.4644,619.0013,0,0,1,0,100,0), -- 17:45:14
+(@PATH,17,5799.037,690.9644,619.2513,0,0,1,0,100,0), -- 17:45:14
+(@PATH,18,5799.537,689.4644,619.2513,0,0,1,0,100,0), -- 17:45:14
+(@PATH,19,5799.536,689.3114,619.3141,0,0,1,0,100,0), -- 17:45:16
+(@PATH,20,5800.036,688.0614,619.3141,0,0,1,0,100,0), -- 17:45:16
+(@PATH,21,5798.786,687.0614,619.3141,0,0,1,0,100,0), -- 17:45:16
+(@PATH,22,5794.159,683.7436,619.2207,0,0,1,0,100,0), -- 17:45:17
+(@PATH,23,5792.909,683.2436,619.2207,0,0,1,0,100,0), -- 17:45:17
+(@PATH,24,5791.659,682.7436,619.2207,0,0,1,0,100,0), -- 17:45:17
+(@PATH,25,5791.753,682.5482,619.214,0,0,1,0,100,0), -- 17:45:19
+(@PATH,26,5791.253,682.2982,618.964,0,0,1,0,100,0), -- 17:45:19
+(@PATH,27,5789.503,680.2982,618.964,0,0,1,0,100,0), -- 17:45:19
+(@PATH,28,5788.781,677.8862,619.2213,0,0,1,0,100,0), -- 17:45:20
+(@PATH,29,5789.031,675.3862,619.2213,0,0,1,0,100,0), -- 17:45:20
+(@PATH,30,5786.781,671.8862,619.2213,0,0,1,0,100,0), -- 17:45:20
+(@PATH,31,5785.09,669.5923,619.22,0,0,1,0,100,0), -- 17:45:21
+(@PATH,32,5782.34,670.0923,619.22,0,0,1,0,100,0), -- 17:45:21
+(@PATH,33,5781.488,670.0141,619.1985,0,0,1,0,100,0), -- 17:45:22
+(@PATH,34,5778.738,667.5141,618.9485,0,0,1,0,100,0), -- 17:45:22
+(@PATH,35,5776.889,665.7174,619.0254,0,0,1,0,100,0), -- 17:45:23
+(@PATH,36,5771.591,666.1527,618.715,0,0,1,0,100,0), -- 17:45:25
+(@PATH,37,5769.591,664.6527,618.715,0,0,1,0,100,0), -- 17:45:25
+(@PATH,38,5764.23,657.7101,618.679,0,0,1,0,100,0), -- 17:45:26
+(@PATH,39,5763.645,656.9364,618.9661,0,0,1,0,100,0), -- 17:45:27
+(@PATH,40,5762.145,655.9364,618.7161,0,0,1,0,100,0), -- 17:45:27
+(@PATH,41,5761.145,654.9364,618.7161,0,0,1,0,100,0), -- 17:45:27
+(@PATH,42,5759.645,653.9364,618.4661,0,0,1,0,100,0), -- 17:45:27
+(@PATH,43,5757.645,652.4364,618.4661,0,0,1,0,100,0), -- 17:45:27
+(@PATH,44,5758.634,650.1743,617.9124,0,0,1,0,100,0), -- 17:45:30
+(@PATH,45,5759.384,649.6743,617.6624,0,0,1,0,100,0), -- 17:45:30
+(@PATH,46,5760.884,648.9243,617.9124,0,0,1,0,100,0), -- 17:45:30
+(@PATH,47,5765.302,645.7458,617.7252,0,0,1,0,100,0), -- 17:45:31
+(@PATH,48,5766.552,645.2458,617.7252,0,0,1,0,100,0), -- 17:45:31
+(@PATH,49,5771.302,643.4958,617.7252,0,0,1,0,100,0), -- 17:45:31
+(@PATH,50,5772.802,642.7458,617.4752,0,0,1,0,100,0), -- 17:45:31
+(@PATH,51,5773.302,642.4958,617.4752,0,0,1,0,100,0), -- 17:45:31
+(@PATH,52,5774.802,640.9958,616.4752,0,0,1,0,100,0), -- 17:45:31
+(@PATH,53,5775.896,637.9182,614.7648,0,0,1,0,100,0), -- 17:45:34
+(@PATH,54,5777.396,635.9182,613.0148,0,0,1,0,100,0), -- 17:45:34
+(@PATH,55,5781.486,634.472,611.2208,0,0,1,0,100,0), -- 17:45:36
+(@PATH,56,5782.236,634.472,610.4708,0,0,1,0,100,0), -- 17:45:36
+(@PATH,57,5783.486,634.472,609.4708,0,0,1,0,100,0), -- 17:45:36
+(@PATH,58,5785.486,634.722,609.4708,0,0,1,0,100,0), -- 17:45:36
+(@PATH,59,5783.877,634.4684,609.5891,0,0,1,0,100,0), -- 17:45:37
+(@PATH,60,5785.627,634.7184,609.5891,0,0,1,0,100,0), -- 17:45:37
+(@PATH,61,5787.377,634.7184,610.3391,0,0,1,0,100,0), -- 17:45:37
+(@PATH,62,5791.627,635.2184,610.3391,0,0,1,0,100,0), -- 17:45:37
+(@PATH,63,5792.804,635.6805,610.0217,0,0,1,0,100,0), -- 17:45:38
+(@PATH,64,5804.054,638.4305,610.0217,0,0,1,0,100,0), -- 17:45:38
+(@PATH,65,5808.587,639.6121,610.1359,0,0,1,0,100,0), -- 17:45:41
+(@PATH,66,5816.692,643.6942,610.1359,0,0,1,0,100,0), -- 17:45:43
+(@PATH,67,5822.68,639.5682,609.7672,0,0,1,0,100,0), -- 17:45:45
+(@PATH,68,5823.43,639.5682,610.0172,0,0,1,0,100,0), -- 17:45:45
+(@PATH,69,5825.18,639.8182,610.0172,0,0,1,0,100,0), -- 17:45:45
+(@PATH,70,5824.43,638.3182,610.0172,0,0,1,0,100,0), -- 17:45:45
+(@PATH,71,5824.57,638.2134,610.1077,0,0,1,0,100,0), -- 17:45:47
+(@PATH,72,5823.57,636.9634,611.1077,0,0,1,0,100,0), -- 17:45:47
+(@PATH,73,5823.57,634.9634,611.6077,0,0,1,0,100,0), -- 17:45:47
+(@PATH,74,5824.07,633.7134,612.3577,0,0,1,0,100,0), -- 17:45:47
+(@PATH,75,5824.662,632.4669,612.8602,0,0,1,0,100,0), -- 17:45:48
+(@PATH,76,5826.162,630.2169,614.1102,0,0,1,0,100,0), -- 17:45:48
+(@PATH,77,5826.912,628.9669,614.8602,0,0,1,0,100,0), -- 17:45:48
+(@PATH,78,5827.492,628.314,614.7683,0,0,1,0,100,0), -- 17:45:49
+(@PATH,79,5828.242,627.314,615.2683,0,0,1,0,100,0), -- 17:45:49
+(@PATH,80,5828.742,626.064,616.0183,0,0,1,0,100,0), -- 17:45:49
+(@PATH,81,5829.492,624.314,616.0183,0,0,1,0,100,0), -- 17:45:49
+(@PATH,82,5830.492,622.564,616.2683,0,0,1,0,100,0), -- 17:45:49
+(@PATH,83,5829.866,624.0173,616.4043,0,0,1,0,100,0), -- 17:45:50
+(@PATH,84,5830.366,622.7673,616.6543,0,0,1,0,100,0), -- 17:45:50
+(@PATH,85,5832.866,624.2673,616.9043,0,0,1,0,100,0), -- 17:45:50
+(@PATH,86,5832.366,622.5173,617.4043,0,0,1,0,100,0), -- 17:45:50
+(@PATH,87,5832.366,621.2673,617.9043,0,0,1,0,100,0), -- 17:45:50
+(@PATH,88,5832.433,621.1912,618.1343,0,0,1,0,100,0), -- 17:45:52
+(@PATH,89,5832.183,618.6912,619.1343,0,0,1,0,100,0), -- 17:45:52
+(@PATH,90,5832.433,615.6912,620.8843,0,0,1,0,100,0), -- 17:45:52
+(@PATH,91,5832.683,614.6912,621.3843,0,0,1,0,100,0), -- 17:45:52
+(@PATH,92,5833.433,611.1912,622.1343,0,0,1,0,100,0), -- 17:45:52
+(@PATH,93,5833.683,609.6912,621.8843,0,0,1,0,100,0), -- 17:45:52
+(@PATH,94,5833.704,609.4901,622.2904,0,0,1,0,100,0), -- 17:45:54
+(@PATH,95,5833.954,607.4901,622.2904,0,0,1,0,100,0), -- 17:45:54
+(@PATH,96,5833.954,606.2401,622.5404,0,0,1,0,100,0), -- 17:45:54
+(@PATH,97,5833.704,600.7401,623.2904,0,0,1,0,100,0), -- 17:45:54
+(@PATH,98,5833.454,599.4901,624.0404,0,0,1,0,100,0), -- 17:45:54
+(@PATH,99,5833.538,598.366,623.9922,0,0,1,0,100,0), -- 17:45:56
+(@PATH,100,5832.038,596.866,624.4922,0,0,1,0,100,0), -- 17:45:56
+(@PATH,101,5830.538,595.116,624.7422,0,0,1,0,100,0), -- 17:45:56
+(@PATH,102,5828.975,593.5865,624.9868,0,0,1,0,100,0), -- 17:45:58
+(@PATH,103,5826.725,591.3365,625.4868,0,0,1,0,100,0), -- 17:45:58
+(@PATH,104,5825.521,588.7355,625.7487,0,0,1,0,100,0), -- 17:45:59
+(@PATH,105,5825.271,587.4855,625.9987,0,0,1,0,100,0), -- 17:45:59
+(@PATH,106,5822.575,582.8594,626.4241,0,0,1,0,100,0), -- 17:46:01
+(@PATH,107,5815.441,579.615,627.5906,0,0,1,0,100,0), -- 17:46:02
+(@PATH,108,5814.441,578.865,627.8406,0,0,1,0,100,0), -- 17:46:02
+(@PATH,109,5812.545,576.4588,628.457,0,0,1,0,100,0), -- 17:46:03
+(@PATH,110,5811.545,574.7088,628.707,0,0,1,0,100,0), -- 17:46:03
+(@PATH,111,5810.408,571.4939,629.276,0,0,1,0,100,0), -- 17:46:04
+(@PATH,112,5804.017,568.0781,629.6204,0,0,1,0,100,0), -- 17:46:06
+(@PATH,113,5803.017,566.5781,629.8704,0,0,1,0,100,0), -- 17:46:06
+(@PATH,114,5803.129,566.3809,629.8486,0,0,1,0,100,0), -- 17:46:07
+(@PATH,115,5801.879,564.8809,629.8486,0,0,1,0,100,0), -- 17:46:07
+(@PATH,116,5801.879,563.1309,629.8486,0,0,1,0,100,0), -- 17:46:07
+(@PATH,117,5801.629,561.8809,629.8486,0,0,1,0,100,0), -- 17:46:07
+(@PATH,118,5801.365,560.2042,630.7414,0,0,1,0,100,0), -- 17:46:08
+(@PATH,119,5796.325,553.0746,634.724,0,0,1,0,100,0), -- 17:46:09
+(@PATH,120,5793.369,549.6201,634.8419,0,0,1,0,100,0), -- 17:46:10
+(@PATH,121,5792.119,548.8701,634.8419,0,0,1,0,100,0), -- 17:46:10
+(@PATH,122,5791.119,548.3701,634.8419,0,0,1,0,100,0), -- 17:46:10
+(@PATH,123,5788.369,546.6201,636.8419,0,0,1,0,100,0), -- 17:46:10
+(@PATH,124,5785.869,545.1201,638.0919,0,0,1,0,100,0), -- 17:46:10
+(@PATH,125,5790.984,548.038,634.9894,0,0,1,0,100,0), -- 17:46:15
+(@PATH,126,5792.234,548.788,634.9894,0,0,1,0,100,0), -- 17:46:15
+(@PATH,127,5792.435,549.0204,634.8621,0,0,1,0,100,0), -- 17:46:17
+(@PATH,128,5793.435,549.7704,634.8621,0,0,1,0,100,0), -- 17:46:17
+(@PATH,129,5795.435,552.0204,634.8621,0,0,1,0,100,0), -- 17:46:17
+(@PATH,130,5796.685,553.2704,635.1121,0,0,1,0,100,0), -- 17:46:17
+(@PATH,131,5796.966,553.6017,634.8666,0,0,1,0,100,0), -- 17:46:18
+(@PATH,132,5797.216,554.1017,634.3666,0,0,1,0,100,0), -- 17:46:18
+(@PATH,133,5801.743,562.6663,630.2207,0,0,1,0,100,0), -- 17:46:20
+(@PATH,134,5801.743,564.9163,630.2207,0,0,1,0,100,0), -- 17:46:20
+(@PATH,135,5802.493,565.9163,630.2207,0,0,1,0,100,0), -- 17:46:20
+(@PATH,136,5804.158,567.8349,629.5902,0,0,1,0,100,0), -- 17:46:21
+(@PATH,137,5810.48,571.2711,629.313,0,0,1,0,100,0), -- 17:46:23
+(@PATH,138,5812.102,575.7954,628.5873,0,0,1,0,100,0), -- 17:46:24
+(@PATH,139,5812.102,576.5454,628.3373,0,0,1,0,100,0), -- 17:46:24
+(@PATH,140,5814.352,578.7954,628.0873,0,0,1,0,100,0), -- 17:46:24
+(@PATH,141,5814.542,578.6766,628.0162,0,0,1,0,100,0), -- 17:46:25
+(@PATH,142,5815.292,579.6766,627.7662,0,0,1,0,100,0), -- 17:46:25
+(@PATH,143,5816.792,579.6766,627.7662,0,0,1,0,100,0), -- 17:46:25
+(@PATH,144,5822.438,582.6847,626.7626,0,0,1,0,100,0), -- 17:46:26
+(@PATH,145,5823.438,583.9347,626.5126,0,0,1,0,100,0), -- 17:46:26
+(@PATH,146,5824.323,584.9958,626.1263,0,0,1,0,100,0), -- 17:46:27
+(@PATH,147,5825.073,587.2458,626.1263,0,0,1,0,100,0), -- 17:46:27
+(@PATH,148,5825.323,588.4958,626.1263,0,0,1,0,100,0), -- 17:46:27
+(@PATH,149,5826.115,590.5767,625.4272,0,0,1,0,100,0), -- 17:46:29
+(@PATH,150,5831.021,605.7319,623.0287,0,0,1,0,100,0), -- 17:46:29
+(@PATH,151,5829.021,599.4819,624.0287,0,0,1,0,100,0), -- 17:46:29
+(@PATH,152,5828.021,595.7319,624.5287,0,0,1,0,100,0), -- 17:46:29
+(@PATH,153,5827.271,592.9819,624.7787,0,0,1,0,100,0), -- 17:46:29
+(@PATH,154,5826.521,590.9819,625.5287,0,0,1,0,100,0), -- 17:46:29
+(@PATH,155,5831.989,596.5863,624.5801,0,0,1,0,100,0), -- 17:46:30
+(@PATH,156,5833.593,600.676,623.2581,0,0,1,0,100,0), -- 17:46:31
+(@PATH,157,5833.843,605.926,622.7581,0,0,1,0,100,0), -- 17:46:31
+(@PATH,158,5833.962,607.8434,622.0533,0,0,1,0,100,0), -- 17:46:32
+(@PATH,159,5833.712,609.3434,621.8033,0,0,1,0,100,0), -- 17:46:32
+(@PATH,160,5833.462,610.3434,622.0533,0,0,1,0,100,0), -- 17:46:32
+(@PATH,161,5832.712,614.5934,621.5533,0,0,1,0,100,0), -- 17:46:32
+(@PATH,162,5832.712,615.5934,621.0533,0,0,1,0,100,0), -- 17:46:32
+(@PATH,163,5832.212,618.0934,619.8033,0,0,1,0,100,0), -- 17:46:32
+(@PATH,164,5832.256,618.2179,619.4556,0,0,1,0,100,0), -- 17:46:35
+(@PATH,165,5832.006,618.7179,619.2056,0,0,1,0,100,0), -- 17:46:35
+(@PATH,166,5832.506,620.9679,618.2056,0,0,1,0,100,0), -- 17:46:35
+(@PATH,167,5832.756,622.4679,617.7056,0,0,1,0,100,0), -- 17:46:35
+(@PATH,168,5832.239,621.2859,617.7874,0,0,1,0,100,0), -- 17:46:36
+(@PATH,169,5832.489,622.5359,617.5374,0,0,1,0,100,0), -- 17:46:36
+(@PATH,170,5832.739,624.2859,617.0374,0,0,1,0,100,0), -- 17:46:36
+(@PATH,171,5832.239,624.5359,616.5374,0,0,1,0,100,0), -- 17:46:36
+(@PATH,172,5830.989,625.5359,616.2874,0,0,1,0,100,0), -- 17:46:36
+(@PATH,173,5829.739,626.7859,616.0374,0,0,1,0,100,0), -- 17:46:36
+(@PATH,174,5828.739,627.5359,615.5374,0,0,1,0,100,0), -- 17:46:36
+(@PATH,175,5826.31,630.0842,614.1038,0,0,1,0,100,0), -- 17:46:38
+(@PATH,176,5825.06,631.8342,613.3538,0,0,1,0,100,0), -- 17:46:38
+(@PATH,177,5824.81,632.0842,613.1038,0,0,1,0,100,0), -- 17:46:38
+(@PATH,178,5824.31,633.3342,612.6038,0,0,1,0,100,0), -- 17:46:38
+(@PATH,179,5824.213,633.7821,612.4078,0,0,1,0,100,0), -- 17:46:40
+(@PATH,180,5823.713,634.7821,611.6578,0,0,1,0,100,0), -- 17:46:40
+(@PATH,181,5824.463,636.7821,611.1578,0,0,1,0,100,0), -- 17:46:40
+(@PATH,182,5823.713,638.2821,610.6578,0,0,1,0,100,0), -- 17:46:40
+(@PATH,183,5825.163,639.6008,610.0427,0,0,1,0,100,0), -- 17:46:41
+(@PATH,184,5823.413,639.3508,610.0427,0,0,1,0,100,0), -- 17:46:41
+(@PATH,185,5822.913,639.3508,609.7927,0,0,1,0,100,0), -- 17:46:41
+(@PATH,186,5821.913,640.8508,610.2927,0,0,1,0,100,0), -- 17:46:41
+(@PATH,187,5821.71,641.128,610.0275,0,0,1,0,100,0), -- 17:46:42
+(@PATH,188,5820.21,642.878,610.0275,0,0,1,0,100,0), -- 17:46:42
+(@PATH,189,5816.96,643.628,610.0275,0,0,1,0,100,0), -- 17:46:42
+(@PATH,190,5813.353,644.3413,610.1364,0,0,1,0,100,0), -- 17:46:43
+(@PATH,191,5804.18,638.688,610.1359,0,0,1,0,100,0), -- 17:46:45
+(@PATH,192,5792.854,635.4862,610.1309,0,0,1,0,100,0), -- 17:46:48
+(@PATH,193,5786.168,634.7509,609.4952,0,0,1,0,100,0), -- 17:46:49
+(@PATH,194,5783.918,634.5009,609.4952,0,0,1,0,100,0), -- 17:46:49
+(@PATH,195,5782.418,634.5009,610.4952,0,0,1,0,100,0), -- 17:46:49
+(@PATH,196,5781.418,634.5009,610.9952,0,0,1,0,100,0), -- 17:46:49
+(@PATH,197,5782.23,634.389,610.3091,0,0,1,0,100,0), -- 17:46:51
+(@PATH,198,5781.23,634.389,611.0591,0,0,1,0,100,0), -- 17:46:51
+(@PATH,199,5779.23,634.389,612.0591,0,0,1,0,100,0), -- 17:46:51
+(@PATH,200,5778.23,635.389,612.5591,0,0,1,0,100,0), -- 17:46:51
+(@PATH,201,5775.73,637.889,614.8091,0,0,1,0,100,0), -- 17:46:51
+(@PATH,202,5773.956,639.8704,616.4454,0,0,1,0,100,0), -- 17:46:53
+(@PATH,203,5772.456,641.3704,616.9454,0,0,1,0,100,0), -- 17:46:53
+(@PATH,204,5772.206,641.6204,617.1954,0,0,1,0,100,0), -- 17:46:53
+(@PATH,205,5771.206,642.3704,617.6954,0,0,1,0,100,0), -- 17:46:53
+(@PATH,206,5766.706,645.1204,617.6954,0,0,1,0,100,0), -- 17:46:53
+(@PATH,207,5761.375,648.278,617.9376,0,0,1,0,100,0), -- 17:46:56
+(@PATH,208,5759.875,649.278,617.6876,0,0,1,0,100,0), -- 17:46:56
+(@PATH,209,5758.625,650.278,617.9376,0,0,1,0,100,0), -- 17:46:56
+(@PATH,210,5757.67,652.2993,618.3185,0,0,1,0,100,0), -- 17:46:58
+(@PATH,211,5759.17,653.2993,618.3185,0,0,1,0,100,0), -- 17:46:58
+(@PATH,212,5760.92,654.5493,618.5685,0,0,1,0,100,0), -- 17:46:58
+(@PATH,213,5762.17,655.5493,618.8185,0,0,1,0,100,0), -- 17:46:58
+(@PATH,214,5763.629,656.9517,618.8355,0,0,1,0,100,0), -- 17:46:59
+(@PATH,215,5765.379,661.2017,618.8355,0,0,1,0,100,0), -- 17:46:59
+(@PATH,216,5769.263,664.3608,618.6702,0,0,1,0,100,0), -- 17:47:01
+(@PATH,217,5773.755,666.7302,618.8483,0,0,1,0,100,0), -- 17:47:02
+(@PATH,218,5774.306,667.0947,618.7543,0,0,1,0,100,0), -- 17:47:03
+(@PATH,219,5776.306,666.0947,618.7543,0,0,1,0,100,0), -- 17:47:03
+(@PATH,220,5776.556,665.8447,619.0043,0,0,1,0,100,0), -- 17:47:03
+(@PATH,221,5778.556,667.5947,619.0043,0,0,1,0,100,0), -- 17:47:03
+(@PATH,222,5781.24,670.0711,619.0645,0,0,1,0,100,0), -- 17:47:04
+(@PATH,223,5786.377,671.8536,619.2012,0,0,1,0,100,0), -- 17:47:06
+(@PATH,224,5788.669,677.6926,619.214,0,0,1,0,100,0), -- 17:47:07
+(@PATH,225,5788.669,678.9426,619.214,0,0,1,0,100,0), -- 17:47:07
+(@PATH,226,5788.923,679.4878,619.0298,0,0,1,0,100,0), -- 17:47:08
+(@PATH,227,5789.673,680.2378,619.0298,0,0,1,0,100,0), -- 17:47:08
+(@PATH,228,5791.423,682.4878,619.0298,0,0,1,0,100,0), -- 17:47:08
+(@PATH,229,5792.423,682.9878,619.2798,0,0,1,0,100,0), -- 17:47:08
+(@PATH,230,5794.02,683.6155,619.2227,0,0,1,0,100,0), -- 17:47:09
+(@PATH,231,5798.77,686.8655,619.2227,0,0,1,0,100,0), -- 17:47:09
+(@PATH,232,5799.506,689.4122,619.0743,0,0,1,0,100,0), -- 17:47:10
+(@PATH,233,5799.006,690.9122,619.0743,0,0,1,0,100,0), -- 17:47:10
+(@PATH,234,5798.506,692.1622,619.0743,0,0,1,0,100,0), -- 17:47:10
+(@PATH,235,5797.256,695.1622,619.0743,0,0,1,0,100,0), -- 17:47:10
+(@PATH,236,5796.256,698.1622,619.0743,0,0,1,0,100,0), -- 17:47:10
+(@PATH,237,5795.756,699.6622,619.3243,0,0,1,0,100,0), -- 17:47:10
+(@PATH,238,5795.712,700.3739,619.2347,0,0,1,0,100,0), -- 17:47:13
+(@PATH,239,5795.462,702.8739,619.2347,0,0,1,0,100,0), -- 17:47:13
+(@PATH,240,5796.152,707.1231,619.7043,0,0,1,0,100,0), -- 17:47:15
+(@PATH,241,5796.652,708.1231,619.7043,0,0,1,0,100,0), -- 17:47:15
+(@PATH,242,5797.652,709.1231,619.4543,0,0,1,0,100,0), -- 17:47:15
+(@PATH,243,5798.298,709.5776,619.3361,0,0,1,0,100,0), -- 17:47:16
+(@PATH,244,5800.298,709.3276,619.3361,0,0,1,0,100,0), -- 17:47:16
+(@PATH,245,5805.703,712.6086,619.0933,0,0,1,0,100,0), -- 17:47:17
+(@PATH,246,5805.453,714.8586,619.0933,0,0,1,0,100,0), -- 17:47:17
+(@PATH,247,5805.453,716.1086,619.0933,0,0,1,0,100,0), -- 17:47:17
+(@PATH,248,5805.642,716.5522,619.5599,0,0,1,0,100,0), -- 17:47:18
+(@PATH,249,5805.642,717.0522,619.5599,0,0,1,0,100,0), -- 17:47:18
+(@PATH,250,5812.082,724.9027,624.3082,0,0,1,0,100,0), -- 17:47:20
+(@PATH,251,5812.286,725.2038,624.2163,0,0,1,0,100,0); -- 17:47:21
+
+-- Pathing for Underbelly Rat Entry: 32428 'TDB FORMAT'
+SET @NPC := 112316;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=5650.283,`position_y`=859.0229,`position_z`=571.1886 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,5650.283,859.0229,571.1886,0,0,1,0,100,0), -- 16:14:32
+(@PATH,2,5653.515,856.0323,571.1707,0,0,1,0,100,0), -- 16:14:35
+(@PATH,3,5670.484,841.5376,582.4416,0,0,1,0,100,0), -- 16:14:37
+(@PATH,4,5687.539,826.0508,591.1404,0,0,1,0,100,0), -- 16:14:43
+(@PATH,5,5701.289,812.3008,593.8904,0,0,1,0,100,0), -- 16:14:43
+(@PATH,6,5704.789,808.8008,594.8904,0,0,1,0,100,0), -- 16:14:43
+(@PATH,7,5710.128,803.3888,596.3097,0,0,1,0,100,0), -- 16:14:52
+(@PATH,8,5723.128,792.1388,599.5597,0,0,1,0,100,0), -- 16:14:52
+(@PATH,9,5724.628,790.8888,600.5597,0,0,1,0,100,0), -- 16:14:52
+(@PATH,10,5733.628,782.8888,608.0597,0,0,1,0,100,0), -- 16:14:52
+(@PATH,11,5737.265,778.5158,611.3041,0,0,1,0,100,0), -- 16:14:59
+(@PATH,12,5742.015,772.2658,613.8041,0,0,1,0,100,0), -- 16:14:59
+(@PATH,13,5746.515,766.5158,617.0541,0,0,1,0,100,0), -- 16:14:59
+(@PATH,14,5750.793,762.6057,619.7878,0,0,1,0,100,0), -- 16:15:04
+(@PATH,15,5753.543,760.8557,619.5378,0,0,1,0,100,0), -- 16:15:04
+(@PATH,16,5763.043,755.6057,620.7878,0,0,1,0,100,0), -- 16:15:04
+(@PATH,17,5764.293,755.1057,621.0378,0,0,1,0,100,0), -- 16:15:04
+(@PATH,18,5769.043,752.3557,621.2878,0,0,1,0,100,0), -- 16:15:04
+(@PATH,19,5770.268,751.4404,621.4811,0,0,1,0,100,0), -- 16:15:09
+(@PATH,20,5776.518,745.4404,620.9811,0,0,1,0,100,0), -- 16:15:09
+(@PATH,21,5776.768,744.6904,620.7311,0,0,1,0,100,0), -- 16:15:09
+(@PATH,22,5778.323,743.4258,620.5052,0,0,1,0,100,0), -- 16:15:11
+(@PATH,23,5780.823,741.4258,619.5052,0,0,1,0,100,0), -- 16:15:11
+(@PATH,24,5782.027,740.5856,619.0101,0,0,1,0,100,0), -- 16:15:13
+(@PATH,25,5783.527,742.3356,619.0101,0,0,1,0,100,0), -- 16:15:13
+(@PATH,26,5779.737,745.7886,618.8125,0,0,1,0,100,0), -- 16:15:14
+(@PATH,27,5787.284,745.8883,618.6033,0,0,1,0,100,0), -- 16:15:15
+(@PATH,28,5790.284,743.3883,618.8533,0,0,1,0,100,0), -- 16:15:15
+(@PATH,29,5795.118,739.8246,618.873,0,0,1,0,100,0), -- 16:15:18
+(@PATH,30,5792.629,737.5529,618.8592,0,0,1,0,100,0), -- 16:15:19
+(@PATH,31,5783.301,728.3273,618.8666,0,0,1,0,100,0), -- 16:15:20
+(@PATH,32,5783.337,728.0176,618.8483,0,0,1,0,100,0), -- 16:15:21
+(@PATH,33,5781.837,727.0176,618.8483,0,0,1,0,100,0), -- 16:15:21
+(@PATH,34,5781.337,724.0176,618.8483,0,0,1,0,100,0), -- 16:15:21
+(@PATH,35,5780.837,722.5176,618.8483,0,0,1,0,100,0), -- 16:15:21
+(@PATH,36,5780.337,720.0176,618.8483,0,0,1,0,100,0), -- 16:15:21
+(@PATH,37,5779.337,716.2676,618.8483,0,0,1,0,100,0), -- 16:15:21
+(@PATH,38,5774.164,714.2116,618.8179,0,0,1,0,100,0), -- 16:15:25
+(@PATH,39,5772.414,714.4616,618.8179,0,0,1,0,100,0), -- 16:15:25
+(@PATH,40,5769.005,714.0853,618.8335,0,0,1,0,100,0), -- 16:15:26
+(@PATH,41,5763.755,714.0853,618.5835,0,0,1,0,100,0), -- 16:15:26
+(@PATH,42,5759.819,713.6582,618.7951,0,0,1,0,100,0), -- 16:15:29
+(@PATH,43,5759.069,712.9082,618.7951,0,0,1,0,100,0), -- 16:15:29
+(@PATH,44,5755.638,710.6156,618.8008,0,0,1,0,100,0), -- 16:15:30
+(@PATH,45,5746.335,704.4907,618.808,0,0,1,0,100,0), -- 16:15:31
+(@PATH,46,5750.018,702.1482,618.8112,0,0,1,0,100,0), -- 16:15:32
+(@PATH,47,5758.679,708.1224,618.7933,0,0,1,0,100,0), -- 16:15:35
+(@PATH,48,5760.795,704.0508,618.7969,0,0,1,0,100,0), -- 16:15:36
+(@PATH,49,5761.01,699.34,618.8027,0,0,1,0,100,0), -- 16:15:37
+(@PATH,50,5755.76,692.84,618.8027,0,0,1,0,100,0), -- 16:15:37
+(@PATH,51,5754.76,692.09,618.8027,0,0,1,0,100,0), -- 16:15:37
+(@PATH,52,5753.962,691.2664,618.8077,0,0,1,0,100,0), -- 16:15:40
+(@PATH,53,5748.369,690.7922,618.833,0,0,1,0,100,0), -- 16:15:41
+(@PATH,54,5747.619,690.0422,618.833,0,0,1,0,100,0), -- 16:15:41
+(@PATH,55,5747.197,689.2921,618.8251,0,0,1,0,100,0), -- 16:15:42
+(@PATH,56,5750.266,681.3962,618.9155,0,0,1,0,100,0), -- 16:15:43
+(@PATH,57,5749.266,682.6462,618.9155,0,0,1,0,100,0), -- 16:15:43
+(@PATH,58,5743.016,688.8962,613.9155,0,0,1,0,100,0), -- 16:15:43
+(@PATH,59,5738.654,689.4673,613.6896,0,0,1,0,100,0), -- 16:15:47
+(@PATH,60,5737.154,689.4673,613.6896,0,0,1,0,100,0), -- 16:15:47
+(@PATH,61,5736.978,686.3589,613.4945,0,0,1,0,100,0), -- 16:15:48
+(@PATH,62,5733.56,684.1531,613.4932,0,0,1,0,100,0), -- 16:15:49
+(@PATH,63,5730.135,677.58,613.4932,0,0,1,0,100,0), -- 16:15:51
+(@PATH,64,5726.457,675.5121,613.4932,0,0,1,0,100,0), -- 16:15:52
+(@PATH,65,5724.421,667.7317,613.4932,0,0,1,0,100,0), -- 16:15:53
+(@PATH,66,5727.515,664.7499,613.4932,0,0,1,0,100,0), -- 16:15:54
+(@PATH,67,5734.917,671.2552,613.4932,0,0,1,0,100,0), -- 16:15:57
+(@PATH,68,5749.247,678.9826,613.4949,0,0,1,0,100,0), -- 16:15:59
+(@PATH,69,5751.447,678.4545,613.4927,0,0,1,0,100,0), -- 16:16:02
+(@PATH,70,5751.198,678.1135,613.2466,0,0,1,0,100,0), -- 16:16:05
+(@PATH,71,5746.315,680.7532,613.4939,0,0,1,0,100,0), -- 16:16:07
+(@PATH,72,5743.315,682.0032,613.4939,0,0,1,0,100,0), -- 16:16:07
+(@PATH,73,5743.031,682.0266,613.4927,0,0,1,0,100,0), -- 16:16:08
+(@PATH,74,5742.531,682.2766,613.4927,0,0,1,0,100,0), -- 16:16:08
+(@PATH,75,5734.784,669.1796,613.4932,0,0,1,0,100,0), -- 16:16:12
+(@PATH,76,5724.512,667.5809,613.4932,0,0,1,0,100,0), -- 16:16:14
+(@PATH,77,5722.986,670.8528,613.4932,0,0,1,0,100,0), -- 16:16:15
+(@PATH,78,5728.049,675.2232,613.4932,0,0,1,0,100,0), -- 16:16:16
+(@PATH,79,5729.3,679.3695,613.4932,0,0,1,0,100,0), -- 16:16:18
+(@PATH,80,5733.373,684.2302,613.4932,0,0,1,0,100,0), -- 16:16:19
+(@PATH,81,5737.212,689.38,613.487,0,0,1,0,100,0), -- 16:16:20
+(@PATH,82,5738.462,689.38,613.487,0,0,1,0,100,0), -- 16:16:20
+(@PATH,83,5742.366,689.6543,613.689,0,0,1,0,100,0), -- 16:16:21
+(@PATH,84,5743.116,688.9043,613.939,0,0,1,0,100,0), -- 16:16:21
+(@PATH,85,5749.116,682.6543,618.689,0,0,1,0,100,0), -- 16:16:21
+(@PATH,86,5751.858,684.0981,618.7845,0,0,1,0,100,0), -- 16:16:24
+(@PATH,87,5751.939,684.1434,618.7609,0,0,1,0,100,0), -- 16:16:25
+(@PATH,88,5752.439,685.1434,618.7609,0,0,1,0,100,0), -- 16:16:25
+(@PATH,89,5748.244,690.5693,618.8226,0,0,1,0,100,0), -- 16:16:26
+(@PATH,90,5749.485,692.1129,618.8344,0,0,1,0,100,0), -- 16:16:27
+(@PATH,91,5755.502,692.8773,618.8097,0,0,1,0,100,0), -- 16:16:29
+(@PATH,92,5761.164,699.276,618.8109,0,0,1,0,100,0), -- 16:16:30
+(@PATH,93,5760.932,703.9943,618.8033,0,0,1,0,100,0), -- 16:16:31
+(@PATH,94,5762.46,706.2981,618.8008,0,0,1,0,100,0), -- 16:16:32
+(@PATH,95,5758.46,708.2981,618.8008,0,0,1,0,100,0), -- 16:16:32
+(@PATH,96,5756.85,709.1187,618.791,0,0,1,0,100,0), -- 16:16:34
+(@PATH,97,5750.122,702.084,618.8142,0,0,1,0,100,0), -- 16:16:35
+(@PATH,98,5746.29,704.5815,618.8041,0,0,1,0,100,0), -- 16:16:36
+(@PATH,99,5759.648,713.4418,618.8074,0,0,1,0,100,0), -- 16:16:39
+(@PATH,100,5759.953,713.6576,618.5587,0,0,1,0,100,0), -- 16:16:40
+(@PATH,101,5760.703,714.1576,618.8087,0,0,1,0,100,0), -- 16:16:40
+(@PATH,102,5763.453,714.1576,618.8087,0,0,1,0,100,0), -- 16:16:40
+(@PATH,103,5773.857,714.0711,618.8163,0,0,1,0,100,0), -- 16:16:42
+(@PATH,104,5778.107,714.0711,618.8163,0,0,1,0,100,0), -- 16:16:42
+(@PATH,105,5777.944,714.274,618.8197,0,0,1,0,100,0), -- 16:16:43
+(@PATH,106,5778.444,714.274,618.8197,0,0,1,0,100,0), -- 16:16:43
+(@PATH,107,5778.944,716.274,618.8197,0,0,1,0,100,0), -- 16:16:43
+(@PATH,108,5779.944,720.024,618.8197,0,0,1,0,100,0), -- 16:16:43
+(@PATH,109,5780.444,722.274,618.8197,0,0,1,0,100,0), -- 16:16:43
+(@PATH,110,5780.944,724.024,618.8197,0,0,1,0,100,0), -- 16:16:43
+(@PATH,111,5781.226,724.3087,618.8374,0,0,1,0,100,0), -- 16:16:46
+(@PATH,112,5781.976,727.0587,618.8374,0,0,1,0,100,0), -- 16:16:46
+(@PATH,113,5783.476,728.0587,618.8374,0,0,1,0,100,0), -- 16:16:46
+(@PATH,114,5786.476,730.5587,618.8374,0,0,1,0,100,0), -- 16:16:46
+(@PATH,115,5792.619,737.4194,618.8751,0,0,1,0,100,0), -- 16:16:48
+(@PATH,116,5794.882,739.73,618.8389,0,0,1,0,100,0), -- 16:16:50
+(@PATH,117,5790.382,743.23,618.8389,0,0,1,0,100,0), -- 16:16:50
+(@PATH,118,5787.132,745.98,618.8389,0,0,1,0,100,0), -- 16:16:50
+(@PATH,119,5780.194,747.6804,618.821,0,0,1,0,100,0), -- 16:16:53
+(@PATH,120,5779.756,745.7902,618.8091,0,0,1,0,100,0), -- 16:16:54
+(@PATH,121,5780.814,741.4368,619.417,0,0,1,0,100,0), -- 16:16:56
+(@PATH,122,5779.314,742.9368,620.417,0,0,1,0,100,0), -- 16:16:56
+(@PATH,123,5778.416,743.634,620.3975,0,0,1,0,100,0), -- 16:16:57
+(@PATH,124,5776.916,744.634,620.6475,0,0,1,0,100,0), -- 16:16:57
+(@PATH,125,5764.335,754.9359,620.9836,0,0,1,0,100,0), -- 16:16:59
+(@PATH,126,5763.085,755.6859,620.7336,0,0,1,0,100,0), -- 16:16:59
+(@PATH,127,5753.585,760.9359,619.9836,0,0,1,0,100,0), -- 16:16:59
+(@PATH,128,5750.835,762.4359,619.9836,0,0,1,0,100,0), -- 16:16:59
+(@PATH,129,5746.658,766.3828,617.2808,0,0,1,0,100,0), -- 16:17:04
+(@PATH,130,5742.408,771.8828,614.0308,0,0,1,0,100,0), -- 16:17:04
+(@PATH,131,5737.908,777.6328,612.0308,0,0,1,0,100,0), -- 16:17:04
+(@PATH,132,5723.007,791.8114,599.489,0,0,1,0,100,0), -- 16:17:09
+(@PATH,133,5710.257,803.5614,596.239,0,0,1,0,100,0), -- 16:17:09
+(@PATH,134,5704.813,808.7985,594.8409,0,0,1,0,100,0), -- 16:17:17
+(@PATH,135,5701.313,812.2985,593.8409,0,0,1,0,100,0), -- 16:17:17
+(@PATH,136,5687.563,826.0485,591.3409,0,0,1,0,100,0), -- 16:17:17
+(@PATH,137,5682.813,830.7985,588.5909,0,0,1,0,100,0), -- 16:17:17
+(@PATH,138,5670.488,841.3165,582.2974,0,0,1,0,100,0), -- 16:17:25
+(@PATH,139,5650.221,859.0325,570.9788,0,0,1,0,100,0); -- 16:17:33
+
+-- Pathing for Underbelly Rat Entry: 32428 'TDB FORMAT'
+SET @NPC := 112317;
+SET @PATH := @NPC * 10;
+UPDATE `creature` SET `spawndist`=0,`MovementType`=2,`position_x`=5932.637,`position_y`=560.9154,`position_z`=609.7726 WHERE `guid`=@NPC;
+DELETE FROM `creature_addon` WHERE `guid`=@NPC;
+INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES (@NPC,@PATH,0,0,1,0, '');
+DELETE FROM `waypoint_data` WHERE `id`=@PATH;
+INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_type`,`action`,`action_chance`,`wpguid`) VALUES
+(@PATH,1,5932.637,560.9154,609.7726,0,0,1,0,100,0), -- 17:52:18
+(@PATH,2,5929.887,559.4154,610.0226,0,0,1,0,100,0), -- 17:52:18
+(@PATH,3,5924.16,562.6399,610.0771,0,0,1,0,100,0), -- 17:52:19
+(@PATH,4,5923.41,563.6399,610.0771,0,0,1,0,100,0), -- 17:52:19
+(@PATH,5,5922.568,564.0256,610.0319,0,0,1,0,100,0), -- 17:52:21
+(@PATH,6,5920.568,563.7756,610.2819,0,0,1,0,100,0), -- 17:52:21
+(@PATH,7,5919.818,563.5256,610.2819,0,0,1,0,100,0), -- 17:52:21
+(@PATH,8,5919.068,562.0256,610.0319,0,0,1,0,100,0), -- 17:52:21
+(@PATH,9,5917.318,559.2756,610.0319,0,0,1,0,100,0), -- 17:52:21
+(@PATH,10,5912.753,557.5631,610.0347,0,0,1,0,100,0), -- 17:52:23
+(@PATH,11,5916.578,562.7064,609.9109,0,0,1,0,100,0), -- 17:52:24
+(@PATH,12,5917.078,563.7064,610.1609,0,0,1,0,100,0), -- 17:52:24
+(@PATH,13,5918.578,565.4564,610.1609,0,0,1,0,100,0), -- 17:52:24
+(@PATH,14,5918.574,565.3858,610.2579,0,0,1,0,100,0), -- 17:52:26
+(@PATH,15,5919.574,566.8858,610.2579,0,0,1,0,100,0), -- 17:52:26
+(@PATH,16,5915.942,569.4524,611.0398,0,0,1,0,100,0), -- 17:52:27
+(@PATH,17,5914.692,570.4524,611.0398,0,0,1,0,100,0), -- 17:52:27
+(@PATH,18,5913.692,571.9524,611.0398,0,0,1,0,100,0), -- 17:52:27
+(@PATH,19,5911.692,574.7024,611.7898,0,0,1,0,100,0), -- 17:52:27
+(@PATH,20,5910.942,575.7024,611.7898,0,0,1,0,100,0), -- 17:52:27
+(@PATH,21,5909.692,577.4524,611.7898,0,0,1,0,100,0), -- 17:52:27
+(@PATH,22,5908.942,578.7024,611.7898,0,0,1,0,100,0), -- 17:52:27
+(@PATH,23,5909.448,577.5765,611.9888,0,0,1,0,100,0), -- 17:52:29
+(@PATH,24,5908.698,578.8265,611.9888,0,0,1,0,100,0), -- 17:52:29
+(@PATH,25,5906.948,580.8265,612.4888,0,0,1,0,100,0), -- 17:52:29
+(@PATH,26,5898.948,586.3265,612.9888,0,0,1,0,100,0), -- 17:52:29
+(@PATH,27,5897.698,587.3265,613.2388,0,0,1,0,100,0), -- 17:52:29
+(@PATH,28,5888.133,593.8323,614.5677,0,0,1,0,100,0), -- 17:52:34
+(@PATH,29,5868.403,608.2256,616.2552,0,0,1,0,100,0), -- 17:52:39
+(@PATH,30,5867.403,608.9756,616.0052,0,0,1,0,100,0), -- 17:52:39
+(@PATH,31,5863.653,611.2256,617.2552,0,0,1,0,100,0), -- 17:52:39
+(@PATH,32,5867.005,608.8441,616.1553,0,0,1,0,100,0), -- 17:52:40
+(@PATH,33,5863.755,611.0941,617.1553,0,0,1,0,100,0), -- 17:52:40
+(@PATH,34,5863.005,611.5941,617.1553,0,0,1,0,100,0), -- 17:52:40
+(@PATH,35,5862.755,610.0941,617.4053,0,0,1,0,100,0), -- 17:52:40
+(@PATH,36,5862.716,609.9548,617.6683,0,0,1,0,100,0), -- 17:52:42
+(@PATH,37,5862.466,607.4548,617.9183,0,0,1,0,100,0), -- 17:52:42
+(@PATH,38,5861.716,605.4548,618.4183,0,0,1,0,100,0), -- 17:52:42
+(@PATH,39,5859.642,601.2751,619.6371,0,0,1,0,100,0), -- 17:52:43
+(@PATH,40,5859.803,596.2305,620.6752,0,0,1,0,100,0), -- 17:52:44
+(@PATH,41,5854.399,592.0137,622.5385,0,0,1,0,100,0), -- 17:52:45
+(@PATH,42,5853.606,591.7081,622.5364,0,0,1,0,100,0), -- 17:52:47
+(@PATH,43,5852.856,590.7081,622.7864,0,0,1,0,100,0), -- 17:52:47
+(@PATH,44,5852.356,590.2081,623.0364,0,0,1,0,100,0), -- 17:52:47
+(@PATH,45,5851.106,589.4581,623.2864,0,0,1,0,100,0), -- 17:52:47
+(@PATH,46,5848.088,586.9359,623.8063,0,0,1,0,100,0), -- 17:52:48
+(@PATH,47,5846.588,585.1859,624.0563,0,0,1,0,100,0), -- 17:52:48
+(@PATH,48,5838.51,583.7482,624.8914,0,0,1,0,100,0), -- 17:52:50
+(@PATH,49,5837.691,585.6058,625.1302,0,0,1,0,100,0), -- 17:52:52
+(@PATH,50,5837.691,586.8558,625.1302,0,0,1,0,100,0), -- 17:52:52
+(@PATH,51,5837.441,588.3558,624.8802,0,0,1,0,100,0), -- 17:52:52
+(@PATH,52,5836.941,589.3558,624.8802,0,0,1,0,100,0), -- 17:52:52
+(@PATH,53,5835.691,591.3558,624.6302,0,0,1,0,100,0), -- 17:52:52
+(@PATH,54,5834.941,592.1058,624.6302,0,0,1,0,100,0), -- 17:52:52
+(@PATH,55,5835.415,591.4377,624.7817,0,0,1,0,100,0), -- 17:52:53
+(@PATH,56,5834.665,592.1877,624.7817,0,0,1,0,100,0), -- 17:52:53
+(@PATH,57,5834.415,592.6877,624.7817,0,0,1,0,100,0), -- 17:52:53
+(@PATH,58,5831.665,592.9377,625.0317,0,0,1,0,100,0), -- 17:52:53
+(@PATH,59,5829.415,592.9377,625.0317,0,0,1,0,100,0), -- 17:52:53
+(@PATH,60,5831.489,593.141,624.9569,0,0,1,0,100,0), -- 17:52:54
+(@PATH,61,5828.989,593.141,624.9569,0,0,1,0,100,0), -- 17:52:54
+(@PATH,62,5827.989,593.391,624.9569,0,0,1,0,100,0), -- 17:52:54
+(@PATH,63,5826.489,594.891,624.7069,0,0,1,0,100,0), -- 17:52:54
+(@PATH,64,5824.989,596.141,624.7069,0,0,1,0,100,0), -- 17:52:54
+(@PATH,65,5823.989,597.141,624.7069,0,0,1,0,100,0), -- 17:52:54
+(@PATH,66,5823.284,602.2316,624.696,0,0,1,0,100,0), -- 17:52:56
+(@PATH,67,5824.034,603.4816,624.446,0,0,1,0,100,0), -- 17:52:56
+(@PATH,68,5825.496,604.9807,624.1569,0,0,1,0,100,0), -- 17:52:58
+(@PATH,69,5832.577,609.1123,622.6941,0,0,1,0,100,0), -- 17:52:59
+(@PATH,70,5832.577,610.3623,622.4441,0,0,1,0,100,0), -- 17:52:59
+(@PATH,71,5832.645,613.0908,621.8396,0,0,1,0,100,0), -- 17:53:00
+(@PATH,72,5833.895,614.5908,621.3396,0,0,1,0,100,0), -- 17:53:00
+(@PATH,73,5834.645,616.0908,620.5896,0,0,1,0,100,0), -- 17:53:00
+(@PATH,74,5835.895,618.0908,620.5896,0,0,1,0,100,0), -- 17:53:00
+(@PATH,75,5836.239,617.9567,620.214,0,0,1,0,100,0), -- 17:53:01
+(@PATH,76,5837.489,620.2067,619.964,0,0,1,0,100,0), -- 17:53:01
+(@PATH,77,5839.739,620.2067,619.464,0,0,1,0,100,0), -- 17:53:01
+(@PATH,78,5841.018,620.4529,619.0253,0,0,1,0,100,0), -- 17:53:03
+(@PATH,79,5842.768,621.4529,618.5253,0,0,1,0,100,0), -- 17:53:03
+(@PATH,80,5847.018,623.7029,617.7753,0,0,1,0,100,0), -- 17:53:03
+(@PATH,81,5850.018,625.4529,617.2753,0,0,1,0,100,0), -- 17:53:03
+(@PATH,82,5853.018,627.2029,616.7753,0,0,1,0,100,0), -- 17:53:03
+(@PATH,83,5855.821,630.0739,616.2969,0,0,1,0,100,0), -- 17:53:06
+(@PATH,84,5856.571,630.8239,616.2969,0,0,1,0,100,0), -- 17:53:06
+(@PATH,85,5857.947,632.9325,616.1628,0,0,1,0,100,0), -- 17:53:07
+(@PATH,86,5862.197,634.6825,615.9128,0,0,1,0,100,0), -- 17:53:07
+(@PATH,87,5863.447,635.9325,615.9128,0,0,1,0,100,0), -- 17:53:07
+(@PATH,88,5865.894,644.5748,615.8455,0,0,1,0,100,0), -- 17:53:10
+(@PATH,89,5865.894,645.5748,615.3455,0,0,1,0,100,0), -- 17:53:10
+(@PATH,90,5865.829,645.791,615.4341,0,0,1,0,100,0), -- 17:53:11
+(@PATH,91,5865.829,646.041,615.4341,0,0,1,0,100,0), -- 17:53:11
+(@PATH,92,5862.829,647.541,615.4341,0,0,1,0,100,0), -- 17:53:11
+(@PATH,93,5861.579,648.041,615.1841,0,0,1,0,100,0), -- 17:53:11
+(@PATH,94,5859.079,644.791,615.1841,0,0,1,0,100,0), -- 17:53:11
+(@PATH,95,5857.829,643.541,614.9341,0,0,1,0,100,0), -- 17:53:11
+(@PATH,96,5856.982,643.02,614.5778,0,0,1,0,100,0), -- 17:53:13
+(@PATH,97,5855.482,644.27,614.0778,0,0,1,0,100,0), -- 17:53:13
+(@PATH,98,5853.982,645.27,614.3278,0,0,1,0,100,0), -- 17:53:13
+(@PATH,99,5848.046,652.5363,610.8051,0,0,1,0,100,0), -- 17:53:15
+(@PATH,100,5847.546,653.0363,610.8051,0,0,1,0,100,0), -- 17:53:15
+(@PATH,101,5843.546,659.2863,609.5551,0,0,1,0,100,0), -- 17:53:15
+(@PATH,102,5842.796,660.2863,610.3051,0,0,1,0,100,0), -- 17:53:15
+(@PATH,103,5842.046,661.2863,610.3051,0,0,1,0,100,0), -- 17:53:15
+(@PATH,104,5842.085,661.6648,609.9584,0,0,1,0,100,0), -- 17:53:18
+(@PATH,105,5840.085,664.4148,609.9584,0,0,1,0,100,0), -- 17:53:18
+(@PATH,106,5843.085,670.6648,609.9584,0,0,1,0,100,0), -- 17:53:18
+(@PATH,107,5842.802,678.5958,610.1359,0,0,1,0,100,0), -- 17:53:21
+(@PATH,108,5839.953,683.5137,610.1359,0,0,1,0,100,0), -- 17:53:22
+(@PATH,109,5834.206,685.7982,610.136,0,0,1,0,100,0), -- 17:53:24
+(@PATH,110,5828.92,685.1238,610.1359,0,0,1,0,100,0), -- 17:53:26
+(@PATH,111,5826.984,682.3601,610.1359,0,0,1,0,100,0), -- 17:53:27
+(@PATH,112,5818.48,668.6338,610.1359,0,0,1,0,100,0), -- 17:53:28
+(@PATH,113,5816.1,665.4202,610.1359,0,0,1,0,100,0), -- 17:53:31
+(@PATH,114,5815.1,664.1702,609.6359,0,0,1,0,100,0), -- 17:53:31
+(@PATH,115,5810.1,657.9202,609.6359,0,0,1,0,100,0), -- 17:53:31
+(@PATH,116,5808.85,656.9202,610.1359,0,0,1,0,100,0), -- 17:53:31
+(@PATH,117,5806.85,653.9202,610.1359,0,0,1,0,100,0), -- 17:53:31
+(@PATH,118,5793.123,634.9679,610.1359,0,0,1,0,100,0), -- 17:53:37
+(@PATH,119,5790.14,631.1789,610.1359,0,0,1,0,100,0), -- 17:53:39
+(@PATH,120,5788.89,630.1789,609.6359,0,0,1,0,100,0), -- 17:53:39
+(@PATH,121,5787.39,628.9289,609.6359,0,0,1,0,100,0), -- 17:53:39
+(@PATH,122,5785.64,627.4289,609.6359,0,0,1,0,100,0), -- 17:53:39
+(@PATH,123,5782.89,625.1789,609.6359,0,0,1,0,100,0), -- 17:53:39
+(@PATH,124,5781.64,624.1789,610.1359,0,0,1,0,100,0), -- 17:53:39
+(@PATH,125,5779.79,623.2709,610.2906,0,0,1,0,100,0), -- 17:53:43
+(@PATH,126,5773.29,624.0209,610.2906,0,0,1,0,100,0), -- 17:53:43
+(@PATH,127,5771.79,624.7709,609.5406,0,0,1,0,100,0), -- 17:53:43
+(@PATH,128,5765.886,625.5369,612.6761,0,0,1,0,100,0), -- 17:53:45
+(@PATH,129,5764.136,626.5369,613.6761,0,0,1,0,100,0), -- 17:53:45
+(@PATH,130,5762.886,626.7869,614.1761,0,0,1,0,100,0), -- 17:53:45
+(@PATH,131,5761.386,627.7869,614.9261,0,0,1,0,100,0), -- 17:53:45
+(@PATH,132,5757.345,630.0953,616.8363,0,0,1,0,100,0), -- 17:53:48
+(@PATH,133,5752.345,634.3453,617.8363,0,0,1,0,100,0), -- 17:53:48
+(@PATH,134,5751.345,635.0953,617.3363,0,0,1,0,100,0), -- 17:53:48
+(@PATH,135,5748.116,637.8995,618.5641,0,0,1,0,100,0), -- 17:53:50
+(@PATH,136,5747.366,636.3995,618.8141,0,0,1,0,100,0), -- 17:53:50
+(@PATH,137,5746.008,632.8196,618.8812,0,0,1,0,100,0), -- 17:53:51
+(@PATH,138,5744.508,625.0696,618.8812,0,0,1,0,100,0), -- 17:53:51
+(@PATH,139,5744.258,623.3196,619.1312,0,0,1,0,100,0), -- 17:53:51
+(@PATH,140,5743.789,622.6664,619.2971,0,0,1,0,100,0), -- 17:53:54
+(@PATH,141,5742.789,621.6664,619.2971,0,0,1,0,100,0), -- 17:53:54
+(@PATH,142,5741.789,620.1664,619.2971,0,0,1,0,100,0), -- 17:53:54
+(@PATH,143,5739.586,617.3193,619.2029,0,0,1,0,100,0), -- 17:53:55
+(@PATH,144,5723.11,606.8483,618.9691,0,0,1,0,100,0), -- 17:53:59
+(@PATH,145,5722.5,607.3009,619.1648,0,0,1,0,100,0), -- 17:54:00
+(@PATH,146,5723.25,609.0509,619.1648,0,0,1,0,100,0), -- 17:54:00
+(@PATH,147,5725.919,612.6741,619.2623,0,0,1,0,100,0), -- 17:54:01
+(@PATH,148,5727.169,613.6741,619.2623,0,0,1,0,100,0), -- 17:54:01
+(@PATH,149,5727.833,613.9911,619.2798,0,0,1,0,100,0), -- 17:54:02
+(@PATH,150,5730.833,618.4911,619.2798,0,0,1,0,100,0), -- 17:54:02
+(@PATH,151,5732.083,620.7411,619.2798,0,0,1,0,100,0), -- 17:54:02
+(@PATH,152,5736.408,628.3324,619.2798,0,0,1,0,100,0), -- 17:54:05
+(@PATH,153,5738.975,629.0027,619.2798,0,0,1,0,100,0), -- 17:54:06
+(@PATH,154,5742.99,635.6492,619.2798,0,0,1,0,100,0), -- 17:54:07
+(@PATH,155,5743.467,641.7768,619.2798,0,0,1,0,100,0), -- 17:54:09
+(@PATH,156,5747.225,647.0936,619.0926,0,0,1,0,100,0), -- 17:54:10
+(@PATH,157,5748.225,647.5936,619.0926,0,0,1,0,100,0), -- 17:54:10
+(@PATH,158,5749.297,648.2242,618.9799,0,0,1,0,100,0), -- 17:54:11
+(@PATH,159,5749.047,649.2242,619.2299,0,0,1,0,100,0), -- 17:54:11
+(@PATH,160,5749.047,650.7242,619.2299,0,0,1,0,100,0), -- 17:54:11
+(@PATH,161,5749.047,654.2242,619.4799,0,0,1,0,100,0), -- 17:54:11
+(@PATH,162,5748.797,655.7242,619.4799,0,0,1,0,100,0), -- 17:54:11
+(@PATH,163,5749.192,655.6202,619.7116,0,0,1,0,100,0), -- 17:54:12
+(@PATH,164,5749.192,656.1202,619.7116,0,0,1,0,100,0), -- 17:54:12
+(@PATH,165,5750.442,657.8702,619.7116,0,0,1,0,100,0), -- 17:54:12
+(@PATH,166,5750.391,657.9781,619.7876,0,0,1,0,100,0), -- 17:54:13
+(@PATH,167,5751.891,659.9781,619.5376,0,0,1,0,100,0), -- 17:54:13
+(@PATH,168,5753.641,659.4781,619.5376,0,0,1,0,100,0), -- 17:54:13
+(@PATH,169,5759.179,661.2788,619.2548,0,0,1,0,100,0), -- 17:54:15
+(@PATH,170,5760.229,663.2921,619.3005,0,0,1,0,100,0), -- 17:54:16
+(@PATH,171,5760.479,666.2921,619.3005,0,0,1,0,100,0), -- 17:54:16
+(@PATH,172,5762.869,669.2735,619.6941,0,0,1,0,100,0), -- 17:54:17
+(@PATH,173,5764.619,671.0235,619.6941,0,0,1,0,100,0), -- 17:54:17
+(@PATH,174,5766.816,671.4822,619.3464,0,0,1,0,100,0), -- 17:54:18
+(@PATH,175,5771.566,670.7322,619.3464,0,0,1,0,100,0), -- 17:54:18
+(@PATH,176,5773.478,671.9761,619.1648,0,0,1,0,100,0), -- 17:54:19
+(@PATH,177,5772.978,676.9761,619.1648,0,0,1,0,100,0), -- 17:54:19
+(@PATH,178,5773.809,679.17,619.6726,0,0,1,0,100,0), -- 17:54:21
+(@PATH,179,5775.309,680.92,619.6726,0,0,1,0,100,0), -- 17:54:21
+(@PATH,180,5776.809,682.67,619.6726,0,0,1,0,100,0), -- 17:54:21
+(@PATH,181,5775.323,680.9807,619.6566,0,0,1,0,100,0), -- 17:54:22
+(@PATH,182,5776.823,682.7307,619.6566,0,0,1,0,100,0), -- 17:54:22
+(@PATH,183,5777.323,683.2307,619.4066,0,0,1,0,100,0), -- 17:54:22
+(@PATH,184,5780.438,683.3417,619.2777,0,0,1,0,100,0), -- 17:54:23
+(@PATH,185,5782.188,683.5917,619.2777,0,0,1,0,100,0), -- 17:54:23
+(@PATH,186,5783.188,683.5917,619.2777,0,0,1,0,100,0), -- 17:54:23
+(@PATH,187,5783.938,684.3417,619.2777,0,0,1,0,100,0), -- 17:54:23
+(@PATH,188,5783.903,684.5225,619.173,0,0,1,0,100,0), -- 17:54:24
+(@PATH,189,5784.653,685.2725,619.173,0,0,1,0,100,0), -- 17:54:24
+(@PATH,190,5784.403,686.5225,619.173,0,0,1,0,100,0), -- 17:54:24
+(@PATH,191,5783.903,690.0225,619.173,0,0,1,0,100,0), -- 17:54:24
+(@PATH,192,5783.28,683.6895,619.2,0,0,1,0,100,0), -- 17:54:26
+(@PATH,193,5783.134,683.567,619.218,0,0,1,0,100,0), -- 17:54:27
+(@PATH,194,5780.634,683.317,619.468,0,0,1,0,100,0), -- 17:54:27
+(@PATH,195,5778.134,683.567,619.468,0,0,1,0,100,0), -- 17:54:27
+(@PATH,196,5777.437,683.3219,619.3995,0,0,1,0,100,0), -- 17:54:28
+(@PATH,197,5775.437,680.8219,619.6495,0,0,1,0,100,0), -- 17:54:28
+(@PATH,198,5773.687,679.3219,619.6495,0,0,1,0,100,0), -- 17:54:28
+(@PATH,199,5772.959,678.2682,619.4105,0,0,1,0,100,0), -- 17:54:29
+(@PATH,200,5773.209,677.0182,619.1605,0,0,1,0,100,0), -- 17:54:29
+(@PATH,201,5773.709,673.0182,619.1605,0,0,1,0,100,0), -- 17:54:29
+(@PATH,202,5773.394,673.0062,619.2454,0,0,1,0,100,0), -- 17:54:31
+(@PATH,203,5773.644,672.0062,619.2454,0,0,1,0,100,0), -- 17:54:31
+(@PATH,204,5772.396,670.793,619.3744,0,0,1,0,100,0), -- 17:54:32
+(@PATH,205,5766.896,671.793,619.3744,0,0,1,0,100,0), -- 17:54:32
+(@PATH,206,5762.968,669.4083,619.7806,0,0,1,0,100,0), -- 17:54:33
+(@PATH,207,5760.729,666.238,619.5159,0,0,1,0,100,0), -- 17:54:34
+(@PATH,208,5760.479,663.488,619.2659,0,0,1,0,100,0), -- 17:54:34
+(@PATH,209,5759.131,661.6943,619.3143,0,0,1,0,100,0), -- 17:54:36
+(@PATH,210,5756.631,659.4443,619.3143,0,0,1,0,100,0), -- 17:54:36
+(@PATH,211,5753.881,659.9443,619.3143,0,0,1,0,100,0), -- 17:54:36
+(@PATH,212,5751.954,659.9012,619.4919,0,0,1,0,100,0), -- 17:54:37
+(@PATH,213,5750.454,658.1512,619.7419,0,0,1,0,100,0), -- 17:54:37
+(@PATH,214,5749.239,656.0627,619.7203,0,0,1,0,100,0), -- 17:54:38
+(@PATH,215,5749.239,654.0627,619.4703,0,0,1,0,100,0), -- 17:54:38
+(@PATH,216,5749.239,650.8127,619.2203,0,0,1,0,100,0), -- 17:54:38
+(@PATH,217,5749.489,649.3127,619.2203,0,0,1,0,100,0), -- 17:54:38
+(@PATH,218,5748.988,650.8058,619.2463,0,0,1,0,100,0), -- 17:54:39
+(@PATH,219,5749.238,649.3058,619.2463,0,0,1,0,100,0), -- 17:54:39
+(@PATH,220,5749.238,648.3058,618.9963,0,0,1,0,100,0), -- 17:54:39
+(@PATH,221,5747.238,647.3058,619.2463,0,0,1,0,100,0), -- 17:54:39
+(@PATH,222,5747.21,647.066,619.3192,0,0,1,0,100,0), -- 17:54:40
+(@PATH,223,5744.96,646.066,619.3192,0,0,1,0,100,0), -- 17:54:40
+(@PATH,224,5743.46,642.066,619.3192,0,0,1,0,100,0), -- 17:54:40
+(@PATH,225,5742.853,635.8711,619.2798,0,0,1,0,100,0), -- 17:54:43
+(@PATH,226,5767.506,624.4731,611.6431,0,0,1,0,100,0), -- 17:55:06
+(@PATH,227,5771.256,625.4731,610.1431,0,0,1,0,100,0), -- 17:55:06
+(@PATH,228,5772.006,625.2231,609.6431,0,0,1,0,100,0), -- 17:55:06
+(@PATH,229,5772.506,624.9731,609.6431,0,0,1,0,100,0), -- 17:55:06
+(@PATH,230,5775.756,624.4731,610.3931,0,0,1,0,100,0), -- 17:55:06
+(@PATH,231,5781.39,624.2626,610.0007,0,0,1,0,100,0), -- 17:55:08
+(@PATH,232,5782.64,625.2626,609.5007,0,0,1,0,100,0), -- 17:55:08
+(@PATH,233,5785.39,627.7626,609.5007,0,0,1,0,100,0), -- 17:55:08
+(@PATH,234,5787.14,628.7626,609.5007,0,0,1,0,100,0), -- 17:55:08
+(@PATH,235,5788.89,630.2626,609.5007,0,0,1,0,100,0), -- 17:55:08
+(@PATH,236,5790.14,631.2626,610.0007,0,0,1,0,100,0), -- 17:55:08
+(@PATH,237,5789.247,630.4788,609.5232,0,0,1,0,100,0), -- 17:55:11
+(@PATH,238,5790.497,631.4788,610.0232,0,0,1,0,100,0), -- 17:55:11
+(@PATH,239,5791.497,632.2288,610.0232,0,0,1,0,100,0), -- 17:55:11
+(@PATH,240,5792.497,634.2288,610.0232,0,0,1,0,100,0), -- 17:55:11
+(@PATH,241,5808.938,656.4456,610.1359,0,0,1,0,100,0), -- 17:55:15
+(@PATH,242,5809.938,657.6956,609.6359,0,0,1,0,100,0), -- 17:55:15
+(@PATH,243,5815.188,664.1956,609.6359,0,0,1,0,100,0), -- 17:55:15
+(@PATH,244,5816.188,665.4456,610.1359,0,0,1,0,100,0), -- 17:55:15
+(@PATH,245,5818.914,671.4957,610.0309,0,0,1,0,100,0), -- 17:55:21
+(@PATH,246,5820.774,678.6002,610.1359,0,0,1,0,100,0), -- 17:55:22
+(@PATH,247,5833.884,685.7383,610.1359,0,0,1,0,100,0), -- 17:55:25
+(@PATH,248,5839.521,683.5572,610.1359,0,0,1,0,100,0), -- 17:55:27
+(@PATH,249,5842.875,678.5269,610.1359,0,0,1,0,100,0), -- 17:55:28
+(@PATH,250,5842.727,670.9156,610.1359,0,0,1,0,100,0), -- 17:55:30
+(@PATH,251,5842.025,661.4012,610.2211,0,0,1,0,100,0), -- 17:55:32
+(@PATH,252,5842.775,660.4012,610.2211,0,0,1,0,100,0), -- 17:55:32
+(@PATH,253,5843.525,659.1512,609.4711,0,0,1,0,100,0), -- 17:55:32
+(@PATH,254,5847.025,653.9012,610.2211,0,0,1,0,100,0), -- 17:55:32
+(@PATH,255,5847.525,653.1512,610.7211,0,0,1,0,100,0), -- 17:55:32
+(@PATH,256,5848.025,652.6512,610.7211,0,0,1,0,100,0), -- 17:55:32
+(@PATH,257,5854.674,644.4988,613.7783,0,0,1,0,100,0), -- 17:55:37
+(@PATH,258,5858.877,645.0601,615.1895,0,0,1,0,100,0), -- 17:55:38
+(@PATH,259,5862.704,647.3643,615.3469,0,0,1,0,100,0), -- 17:55:39
+(@PATH,260,5866.175,643.2976,615.8401,0,0,1,0,100,0), -- 17:55:41
+(@PATH,261,5863.666,636.2874,615.6055,0,0,1,0,100,0), -- 17:55:42
+(@PATH,262,5858.989,633.2343,615.9945,0,0,1,0,100,0), -- 17:55:43
+(@PATH,263,5856.424,631.0151,616.6328,0,0,1,0,100,0), -- 17:55:44
+(@PATH,264,5855.924,630.0151,616.6328,0,0,1,0,100,0), -- 17:55:44
+(@PATH,265,5854.174,628.0151,616.8828,0,0,1,0,100,0), -- 17:55:44
+(@PATH,266,5852.924,627.2651,616.6328,0,0,1,0,100,0), -- 17:55:44
+(@PATH,267,5850.174,625.7651,617.1328,0,0,1,0,100,0), -- 17:55:44
+(@PATH,268,5847.174,624.0151,617.3828,0,0,1,0,100,0), -- 17:55:44
+(@PATH,269,5842.674,621.2651,618.3828,0,0,1,0,100,0), -- 17:55:44
+(@PATH,270,5839.754,620.274,619.3906,0,0,1,0,100,0), -- 17:55:48
+(@PATH,271,5837.754,620.024,619.6406,0,0,1,0,100,0), -- 17:55:48
+(@PATH,272,5836.254,618.024,620.1406,0,0,1,0,100,0), -- 17:55:48
+(@PATH,273,5834.754,616.274,620.3906,0,0,1,0,100,0), -- 17:55:48
+(@PATH,274,5833.754,614.774,621.3906,0,0,1,0,100,0), -- 17:55:48
+(@PATH,275,5832.755,613.1848,621.7224,0,0,1,0,100,0), -- 17:55:51
+(@PATH,276,5832.755,610.4348,622.2224,0,0,1,0,100,0), -- 17:55:51
+(@PATH,277,5831.282,608.2042,622.824,0,0,1,0,100,0), -- 17:55:52
+(@PATH,278,5829.532,606.7042,623.324,0,0,1,0,100,0), -- 17:55:52
+(@PATH,279,5824.087,603.5916,624.4519,0,0,1,0,100,0), -- 17:55:53
+(@PATH,280,5822.902,598.7023,625.1343,0,0,1,0,100,0), -- 17:55:55
+(@PATH,281,5823.652,597.7023,624.8843,0,0,1,0,100,0), -- 17:55:55
+(@PATH,282,5825.152,596.2023,624.6343,0,0,1,0,100,0), -- 17:55:55
+(@PATH,283,5826.152,594.7023,624.6343,0,0,1,0,100,0), -- 17:55:55
+(@PATH,284,5827.402,593.7023,624.6343,0,0,1,0,100,0), -- 17:55:55
+(@PATH,285,5825.07,596.038,624.6668,0,0,1,0,100,0), -- 17:55:56
+(@PATH,286,5826.57,594.788,624.6668,0,0,1,0,100,0), -- 17:55:56
+(@PATH,287,5827.82,593.538,624.6668,0,0,1,0,100,0), -- 17:55:56
+(@PATH,288,5827.82,593.288,624.9168,0,0,1,0,100,0), -- 17:55:56
+(@PATH,289,5829.07,593.288,624.9168,0,0,1,0,100,0), -- 17:55:56
+(@PATH,290,5830.82,593.038,624.9168,0,0,1,0,100,0), -- 17:55:56
+(@PATH,291,5829.417,592.9346,625.0922,0,0,1,0,100,0), -- 17:55:57
+(@PATH,292,5830.917,592.9346,624.8422,0,0,1,0,100,0), -- 17:55:57
+(@PATH,293,5834.417,592.6846,624.5922,0,0,1,0,100,0), -- 17:55:57
+(@PATH,294,5835.417,591.4346,624.8422,0,0,1,0,100,0), -- 17:55:57
+(@PATH,295,5836.917,589.6846,624.8422,0,0,1,0,100,0), -- 17:55:57
+(@PATH,296,5836.748,589.3402,624.8186,0,0,1,0,100,0), -- 17:55:58
+(@PATH,297,5837.498,588.5902,624.8186,0,0,1,0,100,0), -- 17:55:58
+(@PATH,298,5837.498,586.8402,625.0686,0,0,1,0,100,0), -- 17:55:58
+(@PATH,299,5837.748,585.8402,625.0686,0,0,1,0,100,0), -- 17:55:58
+(@PATH,300,5837.972,586.4098,624.9656,0,0,1,0,100,0), -- 17:55:59
+(@PATH,301,5837.972,585.4098,625.2156,0,0,1,0,100,0), -- 17:55:59
+(@PATH,302,5837.972,584.6598,625.2156,0,0,1,0,100,0), -- 17:55:59
+(@PATH,303,5847.725,586.5244,623.9159,0,0,1,0,100,0), -- 17:56:01
+(@PATH,304,5848.381,586.9231,623.4995,0,0,1,0,100,0), -- 17:56:03
+(@PATH,305,5850.881,589.1731,623.4995,0,0,1,0,100,0), -- 17:56:03
+(@PATH,306,5853.684,591.8207,622.5383,0,0,1,0,100,0), -- 17:56:04
+(@PATH,307,5859.724,595.9813,620.9481,0,0,1,0,100,0), -- 17:56:06
+(@PATH,308,5859.907,600.2466,619.8765,0,0,1,0,100,0), -- 17:56:07
+(@PATH,309,5859.657,600.9966,619.8765,0,0,1,0,100,0), -- 17:56:07
+(@PATH,310,5861.254,603.9108,618.8354,0,0,1,0,100,0), -- 17:56:08
+(@PATH,311,5861.504,605.1608,618.5854,0,0,1,0,100,0), -- 17:56:08
+(@PATH,312,5862.816,610.0886,617.6057,0,0,1,0,100,0), -- 17:56:09
+(@PATH,313,5862.816,611.5886,617.1057,0,0,1,0,100,0), -- 17:56:09
+(@PATH,314,5863.816,611.0886,617.1057,0,0,1,0,100,0), -- 17:56:09
+(@PATH,315,5866.566,609.3386,616.1057,0,0,1,0,100,0), -- 17:56:09
+(@PATH,316,5868.066,608.3386,616.6057,0,0,1,0,100,0), -- 17:56:09
+(@PATH,317,5871.561,606.3478,616.0399,0,0,1,0,100,0), -- 17:56:12
+(@PATH,318,5887.811,594.0978,614.7899,0,0,1,0,100,0), -- 17:56:12
+(@PATH,319,5897.243,587.3519,613.1742,0,0,1,0,100,0), -- 17:56:17
+(@PATH,320,5898.243,586.8519,613.1742,0,0,1,0,100,0), -- 17:56:17
+(@PATH,321,5909.608,577.4766,611.9065,0,0,1,0,100,0), -- 17:56:20
+(@PATH,322,5910.358,576.4766,611.9065,0,0,1,0,100,0), -- 17:56:20
+(@PATH,323,5911.358,575.2266,611.9065,0,0,1,0,100,0), -- 17:56:20
+(@PATH,324,5913.358,572.4766,611.4065,0,0,1,0,100,0), -- 17:56:20
+(@PATH,325,5914.358,570.9766,611.1565,0,0,1,0,100,0), -- 17:56:20
+(@PATH,326,5914.869,570.5132,611.2545,0,0,1,0,100,0), -- 17:56:23
+(@PATH,327,5916.025,569.2449,611.0331,0,0,1,0,100,0), -- 17:56:24
+(@PATH,328,5917.275,567.9949,611.0331,0,0,1,0,100,0), -- 17:56:24
+(@PATH,329,5918.775,566.9949,610.7831,0,0,1,0,100,0), -- 17:56:24
+(@PATH,330,5919.525,566.7449,610.2831,0,0,1,0,100,0), -- 17:56:24
+(@PATH,331,5918.525,565.7449,610.2831,0,0,1,0,100,0), -- 17:56:24
+(@PATH,332,5917.025,563.9949,610.2831,0,0,1,0,100,0), -- 17:56:24
+(@PATH,333,5916.275,562.7449,610.2831,0,0,1,0,100,0), -- 17:56:24
+(@PATH,334,5912.947,557.8387,609.8282,0,0,1,0,100,0), -- 17:56:26
+(@PATH,335,5912.697,557.5887,609.8282,0,0,1,0,100,0), -- 17:56:26
+(@PATH,336,5915.036,555.4799,609.9234,0,0,1,0,100,0), -- 17:56:28
+(@PATH,337,5917.036,559.4799,609.9234,0,0,1,0,100,0), -- 17:56:28
+(@PATH,338,5918.786,561.9799,609.9234,0,0,1,0,100,0), -- 17:56:28
+(@PATH,339,5919.535,563.3184,610.3263,0,0,1,0,100,0), -- 17:56:29
+(@PATH,340,5920.785,563.5684,610.3263,0,0,1,0,100,0), -- 17:56:29
+(@PATH,341,5922.832,564.0054,610.0492,0,0,1,0,100,0), -- 17:56:30
+(@PATH,342,5924.082,562.7554,610.0492,0,0,1,0,100,0), -- 17:56:30
+(@PATH,343,5929.893,559.5189,610.0414,0,0,1,0,100,0), -- 17:56:31
+(@PATH,344,5931.28,562.356,609.8469,0,0,1,0,100,0), -- 17:56:32
+(@PATH,345,5930.53,563.356,609.8469,0,0,1,0,100,0), -- 17:56:32
+(@PATH,346,5928.03,565.856,609.8469,0,0,1,0,100,0), -- 17:56:32
+(@PATH,347,5927.28,566.856,609.8469,0,0,1,0,100,0), -- 17:56:32
+(@PATH,348,5897.451,587.326,613.1277,0,0,1,0,100,0), -- 17:56:40
+(@PATH,349,5896.701,588.076,613.3777,0,0,1,0,100,0), -- 17:56:40
+(@PATH,350,5888.951,595.076,614.3777,0,0,1,0,100,0), -- 17:56:40
+(@PATH,351,5887.915,596.0313,614.4434,0,0,1,0,100,0), -- 17:56:43
+(@PATH,352,5868.819,610.8005,615.5193,0,0,1,0,100,0), -- 17:56:47
+(@PATH,353,5866.819,612.0505,615.7693,0,0,1,0,100,0), -- 17:56:47
+(@PATH,354,5865.069,613.3005,616.5193,0,0,1,0,100,0), -- 17:56:47
+(@PATH,355,5866.63,612.3472,615.9749,0,0,1,0,100,0), -- 17:56:50
+(@PATH,356,5865.13,613.5972,616.4749,0,0,1,0,100,0), -- 17:56:50
+(@PATH,357,5864.63,613.8472,616.7249,0,0,1,0,100,0), -- 17:56:50
+(@PATH,358,5864.38,615.5972,616.7249,0,0,1,0,100,0), -- 17:56:50
+(@PATH,359,5863.88,617.3472,616.4749,0,0,1,0,100,0), -- 17:56:50
+(@PATH,360,5863.63,618.5972,616.9749,0,0,1,0,100,0), -- 17:56:50
+(@PATH,361,5864.248,615.8065,616.6554,0,0,1,0,100,0), -- 17:56:51
+(@PATH,362,5863.998,617.8065,616.6554,0,0,1,0,100,0), -- 17:56:51
+(@PATH,363,5863.748,618.8065,616.9054,0,0,1,0,100,0), -- 17:56:51
+(@PATH,364,5863.498,618.8065,616.9054,0,0,1,0,100,0), -- 17:56:51
+(@PATH,365,5865.998,623.0565,616.1554,0,0,1,0,100,0), -- 17:56:51
+(@PATH,366,5866.748,624.0565,616.1554,0,0,1,0,100,0), -- 17:56:51
+(@PATH,367,5866.979,624.3248,616.2649,0,0,1,0,100,0), -- 17:56:52
+(@PATH,368,5869.412,631.2599,615.7915,0,0,1,0,100,0), -- 17:56:54
+(@PATH,369,5873.593,633.4036,615.6859,0,0,1,0,100,0), -- 17:56:55
+(@PATH,370,5872.663,634.2109,615.7021,0,0,1,0,100,0), -- 17:56:58
+(@PATH,371,5869.663,631.2109,615.7021,0,0,1,0,100,0), -- 17:56:58
+(@PATH,372,5866.861,624.7245,616.1404,0,0,1,0,100,0), -- 17:57:00
+(@PATH,373,5866.361,623.4745,616.3904,0,0,1,0,100,0), -- 17:57:00
+(@PATH,374,5864.396,615.572,616.6294,0,0,1,0,100,0), -- 17:57:02
+(@PATH,375,5864.646,614.072,616.8794,0,0,1,0,100,0), -- 17:57:02
+(@PATH,376,5866.896,612.322,615.8794,0,0,1,0,100,0), -- 17:57:02
+(@PATH,377,5868.146,611.572,615.6294,0,0,1,0,100,0), -- 17:57:02
+(@PATH,378,5869.896,610.322,615.8794,0,0,1,0,100,0), -- 17:57:02
+(@PATH,379,5875.009,606.331,615.4817,0,0,1,0,100,0), -- 17:57:06
+(@PATH,380,5896.355,588.4134,613.6219,0,0,1,0,100,0), -- 17:57:08
+(@PATH,381,5897.355,587.4134,613.3719,0,0,1,0,100,0), -- 17:57:08
+(@PATH,382,5898.605,586.1634,613.3719,0,0,1,0,100,0), -- 17:57:08
+(@PATH,383,5910.67,576.61,611.9646,0,0,1,0,100,0), -- 17:57:13
+(@PATH,384,5911.92,575.86,611.7146,0,0,1,0,100,0), -- 17:57:13
+(@PATH,385,5914.42,574.11,611.2146,0,0,1,0,100,0), -- 17:57:13
+(@PATH,386,5912.239,575.5333,611.792,0,0,1,0,100,0), -- 17:57:16
+(@PATH,387,5914.739,573.7833,611.042,0,0,1,0,100,0), -- 17:57:16
+(@PATH,388,5916.489,572.7833,610.792,0,0,1,0,100,0), -- 17:57:16
+(@PATH,389,5918.239,572.0333,611.042,0,0,1,0,100,0), -- 17:57:16
+(@PATH,390,5921.739,571.0333,610.792,0,0,1,0,100,0), -- 17:57:16
+(@PATH,391,5922.739,570.5333,610.542,0,0,1,0,100,0), -- 17:57:16
+(@PATH,392,5923.989,570.0333,610.292,0,0,1,0,100,0), -- 17:57:16
+(@PATH,393,5925.293,569.5073,610.2241,0,0,1,0,100,0), -- 17:57:18
+(@PATH,394,5927.293,566.7573,610.2241,0,0,1,0,100,0), -- 17:57:18
+(@PATH,395,5928.043,566.0073,610.2241,0,0,1,0,100,0), -- 17:57:18
+(@PATH,396,5930.543,563.2573,610.2241,0,0,1,0,100,0), -- 17:57:18
+(@PATH,397,5931.293,562.5073,609.9741,0,0,1,0,100,0); -- 17:57:18
diff --git a/src/server/game/Chat/Chat.cpp b/src/server/game/Chat/Chat.cpp
index da3055ebaaf..259e51eb471 100644
--- a/src/server/game/Chat/Chat.cpp
+++ b/src/server/game/Chat/Chat.cpp
@@ -34,54 +34,16 @@
bool ChatHandler::load_command_table = true;
-// get number of commands in table
-static size_t getCommandTableSize(const ChatCommand* commands)
+std::vector<ChatCommand> const& ChatHandler::getCommandTable()
{
- if (!commands)
- return 0;
- size_t count = 0;
- while (commands[count].Name != NULL)
- count++;
- return count;
-}
-
-// append source command table to target, return number of appended commands
-static size_t appendCommandTable(ChatCommand* target, const ChatCommand* source)
-{
- const size_t count = getCommandTableSize(source);
- if (count)
- memcpy(target, source, count * sizeof(ChatCommand));
- return count;
-}
-
-ChatCommand* ChatHandler::getCommandTable()
-{
- // cache for commands, needed because some commands are loaded dynamically through ScriptMgr
- // cache is never freed and will show as a memory leak in diagnostic tools
- // can't use vector as vector storage is implementation-dependent, eg, there can be alignment gaps between elements
- static ChatCommand* commandTableCache = NULL;
+ static std::vector<ChatCommand> commandTableCache;
if (LoadCommandTable())
{
SetLoadCommandTable(false);
- {
- // count total number of top-level commands
- size_t total = 0;
- std::vector<ChatCommand*> const& dynamic = sScriptMgr->GetChatCommands();
- for (std::vector<ChatCommand*>::const_iterator it = dynamic.begin(); it != dynamic.end(); ++it)
- total += getCommandTableSize(*it);
- total += 1; // ending zero
-
- // cache top-level commands
- size_t added = 0;
- free(commandTableCache);
- commandTableCache = (ChatCommand*)malloc(sizeof(ChatCommand) * total);
- ASSERT(commandTableCache);
- memset(commandTableCache, 0, sizeof(ChatCommand) * total);
- for (std::vector<ChatCommand*>::const_iterator it = dynamic.begin(); it != dynamic.end(); ++it)
- added += appendCommandTable(commandTableCache + added, *it);
- }
+ std::vector<ChatCommand> cmds = sScriptMgr->GetChatCommands();
+ commandTableCache.swap(cmds);
PreparedStatement* stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_COMMANDS);
PreparedQueryResult result = WorldDatabase.Query(stmt);
@@ -264,7 +226,7 @@ void ChatHandler::SendSysMessage(uint32 entry)
SendSysMessage(GetTrinityString(entry));
}
-bool ChatHandler::ExecuteCommandInTable(ChatCommand* table, const char* text, std::string const& fullcmd)
+bool ChatHandler::ExecuteCommandInTable(std::vector<ChatCommand> const& table, const char* text, std::string const& fullcmd)
{
char const* oldtext = text;
std::string cmd = "";
@@ -277,7 +239,7 @@ bool ChatHandler::ExecuteCommandInTable(ChatCommand* table, const char* text, st
while (*text == ' ') ++text;
- for (uint32 i = 0; table[i].Name != NULL; ++i)
+ for (uint32 i = 0; i < table.size(); ++i)
{
if (!hasStringAbbr(table[i].Name, cmd.c_str()))
continue;
@@ -285,7 +247,7 @@ bool ChatHandler::ExecuteCommandInTable(ChatCommand* table, const char* text, st
bool match = false;
if (strlen(table[i].Name) > cmd.length())
{
- for (uint32 j = 0; table[j].Name != NULL; ++j)
+ for (uint32 j = 0; j < table.size(); ++j)
{
if (!hasStringAbbr(table[j].Name, cmd.c_str()))
continue;
@@ -301,7 +263,7 @@ bool ChatHandler::ExecuteCommandInTable(ChatCommand* table, const char* text, st
continue;
// select subcommand from child commands list
- if (table[i].ChildCommands != NULL)
+ if (!table[i].ChildCommands.empty())
{
if (!ExecuteCommandInTable(table[i].ChildCommands, text, fullcmd))
{
@@ -367,7 +329,7 @@ bool ChatHandler::ExecuteCommandInTable(ChatCommand* table, const char* text, st
return false;
}
-bool ChatHandler::SetDataForCommandInTable(ChatCommand* table, char const* text, uint32 permission, std::string const& help, std::string const& fullcommand)
+bool ChatHandler::SetDataForCommandInTable(std::vector<ChatCommand>& table, char const* text, uint32 permission, std::string const& help, std::string const& fullcommand)
{
std::string cmd = "";
@@ -379,14 +341,14 @@ bool ChatHandler::SetDataForCommandInTable(ChatCommand* table, char const* text,
while (*text == ' ') ++text;
- for (uint32 i = 0; table[i].Name != NULL; i++)
+ for (uint32 i = 0; i < table.size(); i++)
{
// for data fill use full explicit command names
if (table[i].Name != cmd)
continue;
// select subcommand from child commands list (including "")
- if (table[i].ChildCommands != NULL)
+ if (!table[i].ChildCommands.empty())
{
if (SetDataForCommandInTable(table[i].ChildCommands, text, permission, help, fullcommand))
return true;
@@ -413,7 +375,7 @@ bool ChatHandler::SetDataForCommandInTable(ChatCommand* table, char const* text,
// in case "" command let process by caller
if (!cmd.empty())
{
- if (table == getCommandTable())
+ if (&table == &getCommandTable())
TC_LOG_ERROR("sql.sql", "Table `command` have not existed command '%s', skip.", cmd.c_str());
else
TC_LOG_ERROR("sql.sql", "Table `command` have not existed subcommand '%s' in command '%s', skip.", cmd.c_str(), fullcommand.c_str());
@@ -519,10 +481,10 @@ Valid examples:
return LinkExtractor(message).IsValidMessage();
}
-bool ChatHandler::ShowHelpForSubCommands(ChatCommand* table, char const* cmd, char const* subcmd)
+bool ChatHandler::ShowHelpForSubCommands(std::vector<ChatCommand> const& table, char const* cmd, char const* subcmd)
{
std::string list;
- for (uint32 i = 0; table[i].Name != NULL; ++i)
+ for (uint32 i = 0; i < table.size(); ++i)
{
// must be available (ignore handler existence for show command with possible available subcommands)
if (!isAvailable(table[i]))
@@ -539,14 +501,14 @@ bool ChatHandler::ShowHelpForSubCommands(ChatCommand* table, char const* cmd, ch
list += table[i].Name;
- if (table[i].ChildCommands)
+ if (!table[i].ChildCommands.empty())
list += " ...";
}
if (list.empty())
return false;
- if (table == getCommandTable())
+ if (&table == &getCommandTable())
{
SendSysMessage(LANG_AVIABLE_CMD);
PSendSysMessage("%s", list.c_str());
@@ -557,11 +519,11 @@ bool ChatHandler::ShowHelpForSubCommands(ChatCommand* table, char const* cmd, ch
return true;
}
-bool ChatHandler::ShowHelpForCommand(ChatCommand* table, const char* cmd)
+bool ChatHandler::ShowHelpForCommand(std::vector<ChatCommand> const& table, const char* cmd)
{
if (*cmd)
{
- for (uint32 i = 0; table[i].Name != NULL; ++i)
+ for (uint32 i = 0; i < table.size(); ++i)
{
// must be available (ignore handler existence for show command with possible available subcommands)
if (!isAvailable(table[i]))
@@ -573,7 +535,7 @@ bool ChatHandler::ShowHelpForCommand(ChatCommand* table, const char* cmd)
// have subcommand
char const* subcmd = (*cmd) ? strtok(NULL, " ") : "";
- if (table[i].ChildCommands && subcmd && *subcmd)
+ if (!table[i].ChildCommands.empty() && subcmd && *subcmd)
{
if (ShowHelpForCommand(table[i].ChildCommands, subcmd))
return true;
@@ -582,7 +544,7 @@ bool ChatHandler::ShowHelpForCommand(ChatCommand* table, const char* cmd)
if (!table[i].Help.empty())
SendSysMessage(table[i].Help.c_str());
- if (table[i].ChildCommands)
+ if (!table[i].ChildCommands.empty())
if (ShowHelpForSubCommands(table[i].ChildCommands, table[i].Name, subcmd ? subcmd : ""))
return true;
@@ -591,7 +553,7 @@ bool ChatHandler::ShowHelpForCommand(ChatCommand* table, const char* cmd)
}
else
{
- for (uint32 i = 0; table[i].Name != NULL; ++i)
+ for (uint32 i = 0; i < table.size(); ++i)
{
// must be available (ignore handler existence for show command with possible available subcommands)
if (!isAvailable(table[i]))
@@ -603,7 +565,7 @@ bool ChatHandler::ShowHelpForCommand(ChatCommand* table, const char* cmd)
if (!table[i].Help.empty())
SendSysMessage(table[i].Help.c_str());
- if (table[i].ChildCommands)
+ if (!table[i].ChildCommands.empty())
if (ShowHelpForSubCommands(table[i].ChildCommands, "", ""))
return true;
diff --git a/src/server/game/Chat/Chat.h b/src/server/game/Chat/Chat.h
index 57192f948d5..ff8757a891d 100644
--- a/src/server/game/Chat/Chat.h
+++ b/src/server/game/Chat/Chat.h
@@ -38,13 +38,18 @@ struct GameTele;
class ChatCommand
{
+ typedef bool(*pHandler)(ChatHandler*, char const*);
+
public:
- const char * Name;
- uint32 Permission; // function pointer required correct align (use uint32)
- bool AllowConsole;
- bool (*Handler)(ChatHandler*, const char* args);
- std::string Help;
- ChatCommand* ChildCommands;
+ ChatCommand(char const* name, uint32 permission, bool allowConsole, pHandler handler, std::string help, std::vector<ChatCommand> childCommands = std::vector<ChatCommand>())
+ : Name(name), Permission(permission), AllowConsole(allowConsole), Handler(handler), Help(std::move(help)), ChildCommands(std::move(childCommands)) { }
+
+ char const* Name;
+ uint32 Permission; // function pointer required correct align (use uint32)
+ bool AllowConsole;
+ pHandler Handler;
+ std::string Help;
+ std::vector<ChatCommand> ChildCommands;
};
class ChatHandler
@@ -90,7 +95,7 @@ class ChatHandler
bool ParseCommands(const char* text);
- static ChatCommand* getCommandTable();
+ static std::vector<ChatCommand> const& getCommandTable();
bool isValidChatMessage(const char* msg);
void SendGlobalSysMessage(const char *str);
@@ -141,12 +146,12 @@ class ChatHandler
static bool LoadCommandTable() { return load_command_table; }
static void SetLoadCommandTable(bool val) { load_command_table = val; }
- bool ShowHelpForCommand(ChatCommand* table, const char* cmd);
+ bool ShowHelpForCommand(std::vector<ChatCommand> const& table, const char* cmd);
protected:
explicit ChatHandler() : m_session(NULL), sentErrorMessage(false) { } // for CLI subclass
- static bool SetDataForCommandInTable(ChatCommand* table, const char* text, uint32 permission, std::string const& help, std::string const& fullcommand);
- bool ExecuteCommandInTable(ChatCommand* table, const char* text, std::string const& fullcmd);
- bool ShowHelpForSubCommands(ChatCommand* table, char const* cmd, char const* subcmd);
+ static bool SetDataForCommandInTable(std::vector<ChatCommand>& table, const char* text, uint32 permission, std::string const& help, std::string const& fullcommand);
+ bool ExecuteCommandInTable(std::vector<ChatCommand> const& table, const char* text, std::string const& fullcmd);
+ bool ShowHelpForSubCommands(std::vector<ChatCommand> const& table, char const* cmd, char const* subcmd);
private:
WorldSession* m_session; // != NULL for chat command call and NULL for CLI command
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp
index db5e09c5d2a..f2613b0267c 100644
--- a/src/server/game/Scripting/ScriptMgr.cpp
+++ b/src/server/game/Scripting/ScriptMgr.cpp
@@ -33,6 +33,7 @@
#include "Player.h"
#include "WorldPacket.h"
#include "WorldSession.h"
+#include "Chat.h"
// namespace
// {
@@ -972,12 +973,15 @@ OutdoorPvP* ScriptMgr::CreateOutdoorPvP(OutdoorPvPData const* data)
return tmpscript->GetOutdoorPvP();
}
-std::vector<ChatCommand*> ScriptMgr::GetChatCommands()
+std::vector<ChatCommand> ScriptMgr::GetChatCommands()
{
- std::vector<ChatCommand*> table;
+ std::vector<ChatCommand> table;
FOR_SCRIPTS_RET(CommandScript, itr, end, table)
- table.push_back(itr->second->GetCommands());
+ {
+ std::vector<ChatCommand> cmds = itr->second->GetCommands();
+ table.insert(table.end(), cmds.begin(), cmds.end());
+ }
return table;
}
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h
index 7e1751244fd..a2024a5ccba 100644
--- a/src/server/game/Scripting/ScriptMgr.h
+++ b/src/server/game/Scripting/ScriptMgr.h
@@ -554,7 +554,7 @@ class CommandScript : public ScriptObject
public:
// Should return a pointer to a valid command table (ChatCommand array) to be used by ChatHandler.
- virtual ChatCommand* GetCommands() const = 0;
+ virtual std::vector<ChatCommand> GetCommands() const = 0;
};
class WeatherScript : public ScriptObject, public UpdatableScript<Weather>
@@ -1014,7 +1014,7 @@ class ScriptMgr
public: /* CommandScript */
- std::vector<ChatCommand*> GetChatCommands();
+ std::vector<ChatCommand> GetChatCommands();
public: /* WeatherScript */
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index e587a59858a..b345c5affea 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -4373,11 +4373,14 @@ void Spell::EffectEnchantHeldItem(SpellEffIndex effIndex)
if (m_spellInfo->Effects[effIndex].MiscValue)
{
uint32 enchant_id = m_spellInfo->Effects[effIndex].MiscValue;
- int32 duration = m_spellInfo->GetDuration(); //Try duration index first ..
+ int32 duration = m_spellInfo->GetDuration(); // Try duration index first ..
if (!duration)
- duration = damage;//+1; //Base points after ..
+ duration = damage;//+1; // Base points after ..
if (!duration)
- duration = 10; //10 seconds for enchants which don't have listed duration
+ duration = 10 * IN_MILLISECONDS; // 10 seconds for enchants which don't have listed duration
+
+ if (m_spellInfo->Id == 14792) // Venomhide Poison
+ duration = 5 * MINUTE * IN_MILLISECONDS;
SpellItemEnchantmentEntry const* pEnchant = sSpellItemEnchantmentStore.LookupEntry(enchant_id);
if (!pEnchant)
@@ -4391,7 +4394,7 @@ void Spell::EffectEnchantHeldItem(SpellEffIndex effIndex)
return;
// Apply the temporary enchantment
- item->SetEnchantment(slot, enchant_id, duration*IN_MILLISECONDS, 0, m_caster->GetGUID());
+ item->SetEnchantment(slot, enchant_id, duration, 0, m_caster->GetGUID());
item_owner->ApplyEnchantment(item, slot, true);
}
}
diff --git a/src/server/scripts/Commands/cs_account.cpp b/src/server/scripts/Commands/cs_account.cpp
index 04520101d15..8d9a40d9d1f 100644
--- a/src/server/scripts/Commands/cs_account.cpp
+++ b/src/server/scripts/Commands/cs_account.cpp
@@ -33,45 +33,40 @@ class account_commandscript : public CommandScript
public:
account_commandscript() : CommandScript("account_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand accountSetSecTable[] =
+ static std::vector<ChatCommand> accountSetSecTable =
{
- { "regmail", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_SEC_REGMAIL, true, &HandleAccountSetRegEmailCommand, "", NULL },
- { "email", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_SEC_EMAIL, true, &HandleAccountSetEmailCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "regmail", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_SEC_REGMAIL, true, &HandleAccountSetRegEmailCommand, "" },
+ { "email", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_SEC_EMAIL, true, &HandleAccountSetEmailCommand, "" },
};
- static ChatCommand accountSetCommandTable[] =
+ static std::vector<ChatCommand> accountSetCommandTable =
{
- { "addon", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_ADDON, true, &HandleAccountSetAddonCommand, "", NULL },
+ { "addon", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_ADDON, true, &HandleAccountSetAddonCommand, "" },
{ "sec", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_SEC, true, NULL, "", accountSetSecTable },
- { "gmlevel", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_GMLEVEL, true, &HandleAccountSetGmLevelCommand, "", NULL },
- { "password", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_PASSWORD, true, &HandleAccountSetPasswordCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "gmlevel", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_GMLEVEL, true, &HandleAccountSetGmLevelCommand, "" },
+ { "password", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET_PASSWORD, true, &HandleAccountSetPasswordCommand, "" },
};
- static ChatCommand accountLockCommandTable[] =
+ static std::vector<ChatCommand> accountLockCommandTable =
{
- { "country", rbac::RBAC_PERM_COMMAND_ACCOUNT_LOCK_COUNTRY, false, &HandleAccountLockCountryCommand, "", NULL },
- { "ip", rbac::RBAC_PERM_COMMAND_ACCOUNT_LOCK_IP, false, &HandleAccountLockIpCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "country", rbac::RBAC_PERM_COMMAND_ACCOUNT_LOCK_COUNTRY, false, &HandleAccountLockCountryCommand, "" },
+ { "ip", rbac::RBAC_PERM_COMMAND_ACCOUNT_LOCK_IP, false, &HandleAccountLockIpCommand, "" },
};
- static ChatCommand accountCommandTable[] =
+ static std::vector<ChatCommand> accountCommandTable =
{
- { "addon", rbac::RBAC_PERM_COMMAND_ACCOUNT_ADDON, false, &HandleAccountAddonCommand, "", NULL },
- { "create", rbac::RBAC_PERM_COMMAND_ACCOUNT_CREATE, true, &HandleAccountCreateCommand, "", NULL },
- { "delete", rbac::RBAC_PERM_COMMAND_ACCOUNT_DELETE, true, &HandleAccountDeleteCommand, "", NULL },
- { "email", rbac::RBAC_PERM_COMMAND_ACCOUNT_EMAIL, false, &HandleAccountEmailCommand, "", NULL },
- { "onlinelist", rbac::RBAC_PERM_COMMAND_ACCOUNT_ONLINE_LIST, true, &HandleAccountOnlineListCommand, "", NULL },
+ { "addon", rbac::RBAC_PERM_COMMAND_ACCOUNT_ADDON, false, &HandleAccountAddonCommand, "" },
+ { "create", rbac::RBAC_PERM_COMMAND_ACCOUNT_CREATE, true, &HandleAccountCreateCommand, "" },
+ { "delete", rbac::RBAC_PERM_COMMAND_ACCOUNT_DELETE, true, &HandleAccountDeleteCommand, "" },
+ { "email", rbac::RBAC_PERM_COMMAND_ACCOUNT_EMAIL, false, &HandleAccountEmailCommand, "" },
+ { "onlinelist", rbac::RBAC_PERM_COMMAND_ACCOUNT_ONLINE_LIST, true, &HandleAccountOnlineListCommand, "" },
{ "lock", rbac::RBAC_PERM_COMMAND_ACCOUNT_LOCK, false, NULL, "", accountLockCommandTable },
{ "set", rbac::RBAC_PERM_COMMAND_ACCOUNT_SET, true, NULL, "", accountSetCommandTable },
- { "password", rbac::RBAC_PERM_COMMAND_ACCOUNT_PASSWORD, false, &HandleAccountPasswordCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_ACCOUNT, false, &HandleAccountCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "password", rbac::RBAC_PERM_COMMAND_ACCOUNT_PASSWORD, false, &HandleAccountPasswordCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_ACCOUNT, false, &HandleAccountCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "account", rbac::RBAC_PERM_COMMAND_ACCOUNT, true, NULL, "", accountCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_achievement.cpp b/src/server/scripts/Commands/cs_achievement.cpp
index 8a038844ec1..ea77bc1f189 100644
--- a/src/server/scripts/Commands/cs_achievement.cpp
+++ b/src/server/scripts/Commands/cs_achievement.cpp
@@ -33,17 +33,15 @@ class achievement_commandscript : public CommandScript
public:
achievement_commandscript() : CommandScript("achievement_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand achievementCommandTable[] =
+ static std::vector<ChatCommand> achievementCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_ACHIEVEMENT_ADD, false, &HandleAchievementAddCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "add", rbac::RBAC_PERM_COMMAND_ACHIEVEMENT_ADD, false, &HandleAchievementAddCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "achievement", rbac::RBAC_PERM_COMMAND_ACHIEVEMENT, false, NULL, "", achievementCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_ahbot.cpp b/src/server/scripts/Commands/cs_ahbot.cpp
index 559a775da31..44889fccd37 100644
--- a/src/server/scripts/Commands/cs_ahbot.cpp
+++ b/src/server/scripts/Commands/cs_ahbot.cpp
@@ -33,44 +33,40 @@ class ahbot_commandscript : public CommandScript
public:
ahbot_commandscript(): CommandScript("ahbot_commandscript") {}
- ChatCommand* GetCommands() const
+ std::vector<ChatCommand> GetCommands() const
{
- static ChatCommand ahbotItemsAmountCommandTable[] =
+ static std::vector<ChatCommand> ahbotItemsAmountCommandTable =
{
- { "gray", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_GRAY, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_GRAY>, "", NULL },
- { "white", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_WHITE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_WHITE>, "", NULL },
- { "green", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_GREEN, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_GREEN>, "", NULL },
- { "blue", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_BLUE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_BLUE>, "", NULL },
- { "purple", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_PURPLE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_PURPLE>, "", NULL },
- { "orange", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_ORANGE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_ORANGE>, "", NULL },
- { "yellow", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_YELLOW, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_YELLOW>, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS, true, &HandleAHBotItemsAmountCommand, "", NULL },
- { NULL, 0, true, NULL, "", NULL }
+ { "gray", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_GRAY, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_GRAY>, "" },
+ { "white", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_WHITE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_WHITE>, "" },
+ { "green", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_GREEN, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_GREEN>, "" },
+ { "blue", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_BLUE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_BLUE>, "" },
+ { "purple", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_PURPLE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_PURPLE>, "" },
+ { "orange", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_ORANGE, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_ORANGE>, "" },
+ { "yellow", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS_YELLOW, true, &HandleAHBotItemsAmountQualityCommand<AUCTION_QUALITY_YELLOW>, "" },
+ { "", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS, true, &HandleAHBotItemsAmountCommand, "" },
};
- static ChatCommand ahbotItemsRatioCommandTable[] =
+ static std::vector<ChatCommand> ahbotItemsRatioCommandTable =
{
- { "alliance", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO_ALLIANCE, true, &HandleAHBotItemsRatioHouseCommand<AUCTION_HOUSE_ALLIANCE>, "", NULL },
- { "horde", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO_HORDE, true, &HandleAHBotItemsRatioHouseCommand<AUCTION_HOUSE_HORDE>, "", NULL },
- { "neutral", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO_NEUTRAL, true, &HandleAHBotItemsRatioHouseCommand<AUCTION_HOUSE_NEUTRAL>, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO, true, &HandleAHBotItemsRatioCommand, "", NULL },
- { NULL, 0, true, NULL, "", NULL }
+ { "alliance", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO_ALLIANCE, true, &HandleAHBotItemsRatioHouseCommand<AUCTION_HOUSE_ALLIANCE>, "" },
+ { "horde", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO_HORDE, true, &HandleAHBotItemsRatioHouseCommand<AUCTION_HOUSE_HORDE>, "" },
+ { "neutral", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO_NEUTRAL, true, &HandleAHBotItemsRatioHouseCommand<AUCTION_HOUSE_NEUTRAL>, "" },
+ { "", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO, true, &HandleAHBotItemsRatioCommand, "" },
};
- static ChatCommand ahbotCommandTable[] =
+ static std::vector<ChatCommand> ahbotCommandTable =
{
{ "items", rbac::RBAC_PERM_COMMAND_AHBOT_ITEMS, true, NULL, "", ahbotItemsAmountCommandTable },
{ "ratio", rbac::RBAC_PERM_COMMAND_AHBOT_RATIO, true, NULL, "", ahbotItemsRatioCommandTable },
- { "rebuild", rbac::RBAC_PERM_COMMAND_AHBOT_REBUILD, true, &HandleAHBotRebuildCommand, "", NULL },
- { "reload", rbac::RBAC_PERM_COMMAND_AHBOT_RELOAD, true, &HandleAHBotReloadCommand, "", NULL },
- { "status", rbac::RBAC_PERM_COMMAND_AHBOT_STATUS, true, &HandleAHBotStatusCommand, "", NULL },
- { NULL, 0, true, NULL, "", NULL }
+ { "rebuild", rbac::RBAC_PERM_COMMAND_AHBOT_REBUILD, true, &HandleAHBotRebuildCommand, "" },
+ { "reload", rbac::RBAC_PERM_COMMAND_AHBOT_RELOAD, true, &HandleAHBotReloadCommand, "" },
+ { "status", rbac::RBAC_PERM_COMMAND_AHBOT_STATUS, true, &HandleAHBotStatusCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "ahbot", rbac::RBAC_PERM_COMMAND_AHBOT, false, NULL, "", ahbotCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
diff --git a/src/server/scripts/Commands/cs_arena.cpp b/src/server/scripts/Commands/cs_arena.cpp
index 4cafb651add..f6b355a8db7 100644
--- a/src/server/scripts/Commands/cs_arena.cpp
+++ b/src/server/scripts/Commands/cs_arena.cpp
@@ -34,22 +34,20 @@ class arena_commandscript : public CommandScript
public:
arena_commandscript() : CommandScript("arena_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand arenaCommandTable[] =
+ static std::vector<ChatCommand> arenaCommandTable =
{
- { "create", rbac::RBAC_PERM_COMMAND_ARENA_CREATE, true, &HandleArenaCreateCommand, "", NULL },
- { "disband", rbac::RBAC_PERM_COMMAND_ARENA_DISBAND, true, &HandleArenaDisbandCommand, "", NULL },
- { "rename", rbac::RBAC_PERM_COMMAND_ARENA_RENAME, true, &HandleArenaRenameCommand, "", NULL },
- { "captain", rbac::RBAC_PERM_COMMAND_ARENA_CAPTAIN, false, &HandleArenaCaptainCommand, "", NULL },
- { "info", rbac::RBAC_PERM_COMMAND_ARENA_INFO, true, &HandleArenaInfoCommand, "", NULL },
- { "lookup", rbac::RBAC_PERM_COMMAND_ARENA_LOOKUP, false, &HandleArenaLookupCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "create", rbac::RBAC_PERM_COMMAND_ARENA_CREATE, true, &HandleArenaCreateCommand, "" },
+ { "disband", rbac::RBAC_PERM_COMMAND_ARENA_DISBAND, true, &HandleArenaDisbandCommand, "" },
+ { "rename", rbac::RBAC_PERM_COMMAND_ARENA_RENAME, true, &HandleArenaRenameCommand, "" },
+ { "captain", rbac::RBAC_PERM_COMMAND_ARENA_CAPTAIN, false, &HandleArenaCaptainCommand, "" },
+ { "info", rbac::RBAC_PERM_COMMAND_ARENA_INFO, true, &HandleArenaInfoCommand, "" },
+ { "lookup", rbac::RBAC_PERM_COMMAND_ARENA_LOOKUP, false, &HandleArenaLookupCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "arena", rbac::RBAC_PERM_COMMAND_ARENA, false, NULL, "", arenaCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_ban.cpp b/src/server/scripts/Commands/cs_ban.cpp
index ed7b31198db..67015cd7d9c 100644
--- a/src/server/scripts/Commands/cs_ban.cpp
+++ b/src/server/scripts/Commands/cs_ban.cpp
@@ -35,45 +35,40 @@ class ban_commandscript : public CommandScript
public:
ban_commandscript() : CommandScript("ban_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand unbanCommandTable[] =
+ static std::vector<ChatCommand> unbanCommandTable =
{
- { "account", rbac::RBAC_PERM_COMMAND_UNBAN_ACCOUNT, true, &HandleUnBanAccountCommand, "", NULL },
- { "character", rbac::RBAC_PERM_COMMAND_UNBAN_CHARACTER, true, &HandleUnBanCharacterCommand, "", NULL },
- { "playeraccount", rbac::RBAC_PERM_COMMAND_UNBAN_PLAYERACCOUNT, true, &HandleUnBanAccountByCharCommand, "", NULL },
- { "ip", rbac::RBAC_PERM_COMMAND_UNBAN_IP, true, &HandleUnBanIPCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "account", rbac::RBAC_PERM_COMMAND_UNBAN_ACCOUNT, true, &HandleUnBanAccountCommand, "" },
+ { "character", rbac::RBAC_PERM_COMMAND_UNBAN_CHARACTER, true, &HandleUnBanCharacterCommand, "" },
+ { "playeraccount", rbac::RBAC_PERM_COMMAND_UNBAN_PLAYERACCOUNT, true, &HandleUnBanAccountByCharCommand, "" },
+ { "ip", rbac::RBAC_PERM_COMMAND_UNBAN_IP, true, &HandleUnBanIPCommand, "" },
};
- static ChatCommand banlistCommandTable[] =
+ static std::vector<ChatCommand> banlistCommandTable =
{
- { "account", rbac::RBAC_PERM_COMMAND_BANLIST_ACCOUNT, true, &HandleBanListAccountCommand, "", NULL },
- { "character", rbac::RBAC_PERM_COMMAND_BANLIST_CHARACTER, true, &HandleBanListCharacterCommand, "", NULL },
- { "ip", rbac::RBAC_PERM_COMMAND_BANLIST_IP, true, &HandleBanListIPCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "account", rbac::RBAC_PERM_COMMAND_BANLIST_ACCOUNT, true, &HandleBanListAccountCommand, "" },
+ { "character", rbac::RBAC_PERM_COMMAND_BANLIST_CHARACTER, true, &HandleBanListCharacterCommand, "" },
+ { "ip", rbac::RBAC_PERM_COMMAND_BANLIST_IP, true, &HandleBanListIPCommand, "" },
};
- static ChatCommand baninfoCommandTable[] =
+ static std::vector<ChatCommand> baninfoCommandTable =
{
- { "account", rbac::RBAC_PERM_COMMAND_BANINFO_ACCOUNT, true, &HandleBanInfoAccountCommand, "", NULL },
- { "character", rbac::RBAC_PERM_COMMAND_BANINFO_CHARACTER, true, &HandleBanInfoCharacterCommand, "", NULL },
- { "ip", rbac::RBAC_PERM_COMMAND_BANINFO_IP, true, &HandleBanInfoIPCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "account", rbac::RBAC_PERM_COMMAND_BANINFO_ACCOUNT, true, &HandleBanInfoAccountCommand, "" },
+ { "character", rbac::RBAC_PERM_COMMAND_BANINFO_CHARACTER, true, &HandleBanInfoCharacterCommand, "" },
+ { "ip", rbac::RBAC_PERM_COMMAND_BANINFO_IP, true, &HandleBanInfoIPCommand, "" },
};
- static ChatCommand banCommandTable[] =
+ static std::vector<ChatCommand> banCommandTable =
{
- { "account", rbac::RBAC_PERM_COMMAND_BAN_ACCOUNT, true, &HandleBanAccountCommand, "", NULL },
- { "character", rbac::RBAC_PERM_COMMAND_BAN_CHARACTER, true, &HandleBanCharacterCommand, "", NULL },
- { "playeraccount", rbac::RBAC_PERM_COMMAND_BAN_PLAYERACCOUNT, true, &HandleBanAccountByCharCommand, "", NULL },
- { "ip", rbac::RBAC_PERM_COMMAND_BAN_IP, true, &HandleBanIPCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "account", rbac::RBAC_PERM_COMMAND_BAN_ACCOUNT, true, &HandleBanAccountCommand, "" },
+ { "character", rbac::RBAC_PERM_COMMAND_BAN_CHARACTER, true, &HandleBanCharacterCommand, "" },
+ { "playeraccount", rbac::RBAC_PERM_COMMAND_BAN_PLAYERACCOUNT, true, &HandleBanAccountByCharCommand, "" },
+ { "ip", rbac::RBAC_PERM_COMMAND_BAN_IP, true, &HandleBanIPCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "ban", rbac::RBAC_PERM_COMMAND_BAN, true, NULL, "", banCommandTable },
{ "baninfo", rbac::RBAC_PERM_COMMAND_BANINFO, true, NULL, "", baninfoCommandTable },
{ "banlist", rbac::RBAC_PERM_COMMAND_BANLIST, true, NULL, "", banlistCommandTable },
{ "unban", rbac::RBAC_PERM_COMMAND_UNBAN, true, NULL, "", unbanCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_bf.cpp b/src/server/scripts/Commands/cs_bf.cpp
index 830e801bcef..7101b89b5fa 100644
--- a/src/server/scripts/Commands/cs_bf.cpp
+++ b/src/server/scripts/Commands/cs_bf.cpp
@@ -31,21 +31,19 @@ class bf_commandscript : public CommandScript
public:
bf_commandscript() : CommandScript("bf_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand battlefieldcommandTable[] =
+ static std::vector<ChatCommand> battlefieldcommandTable =
{
- { "start", rbac::RBAC_PERM_COMMAND_BF_START, false, &HandleBattlefieldStart, "", NULL },
- { "stop", rbac::RBAC_PERM_COMMAND_BF_STOP, false, &HandleBattlefieldEnd, "", NULL },
- { "switch", rbac::RBAC_PERM_COMMAND_BF_SWITCH, false, &HandleBattlefieldSwitch, "", NULL },
- { "timer", rbac::RBAC_PERM_COMMAND_BF_TIMER, false, &HandleBattlefieldTimer, "", NULL },
- { "enable", rbac::RBAC_PERM_COMMAND_BF_ENABLE, false, &HandleBattlefieldEnable, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "start", rbac::RBAC_PERM_COMMAND_BF_START, false, &HandleBattlefieldStart, "" },
+ { "stop", rbac::RBAC_PERM_COMMAND_BF_STOP, false, &HandleBattlefieldEnd, "" },
+ { "switch", rbac::RBAC_PERM_COMMAND_BF_SWITCH, false, &HandleBattlefieldSwitch, "" },
+ { "timer", rbac::RBAC_PERM_COMMAND_BF_TIMER, false, &HandleBattlefieldTimer, "" },
+ { "enable", rbac::RBAC_PERM_COMMAND_BF_ENABLE, false, &HandleBattlefieldEnable, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "bf", rbac::RBAC_PERM_COMMAND_BF, false, NULL, "", battlefieldcommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_cast.cpp b/src/server/scripts/Commands/cs_cast.cpp
index dfd0bb36755..59c919abd2b 100644
--- a/src/server/scripts/Commands/cs_cast.cpp
+++ b/src/server/scripts/Commands/cs_cast.cpp
@@ -33,22 +33,20 @@ class cast_commandscript : public CommandScript
public:
cast_commandscript() : CommandScript("cast_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand castCommandTable[] =
+ static std::vector<ChatCommand> castCommandTable =
{
- { "back", rbac::RBAC_PERM_COMMAND_CAST_BACK, false, &HandleCastBackCommand, "", NULL },
- { "dist", rbac::RBAC_PERM_COMMAND_CAST_DIST, false, &HandleCastDistCommand, "", NULL },
- { "self", rbac::RBAC_PERM_COMMAND_CAST_SELF, false, &HandleCastSelfCommand, "", NULL },
- { "target", rbac::RBAC_PERM_COMMAND_CAST_TARGET, false, &HandleCastTargetCommad, "", NULL },
- { "dest", rbac::RBAC_PERM_COMMAND_CAST_DEST, false, &HandleCastDestCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_CAST, false, &HandleCastCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "back", rbac::RBAC_PERM_COMMAND_CAST_BACK, false, &HandleCastBackCommand, "" },
+ { "dist", rbac::RBAC_PERM_COMMAND_CAST_DIST, false, &HandleCastDistCommand, "" },
+ { "self", rbac::RBAC_PERM_COMMAND_CAST_SELF, false, &HandleCastSelfCommand, "" },
+ { "target", rbac::RBAC_PERM_COMMAND_CAST_TARGET, false, &HandleCastTargetCommad, "" },
+ { "dest", rbac::RBAC_PERM_COMMAND_CAST_DEST, false, &HandleCastDestCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_CAST, false, &HandleCastCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "cast", rbac::RBAC_PERM_COMMAND_CAST, false, NULL, "", castCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_character.cpp b/src/server/scripts/Commands/cs_character.cpp
index 8714838879f..1582d465b8c 100644
--- a/src/server/scripts/Commands/cs_character.cpp
+++ b/src/server/scripts/Commands/cs_character.cpp
@@ -35,43 +35,39 @@ class character_commandscript : public CommandScript
public:
character_commandscript() : CommandScript("character_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand pdumpCommandTable[] =
+ static std::vector<ChatCommand> pdumpCommandTable =
{
- { "load", rbac::RBAC_PERM_COMMAND_PDUMP_LOAD, true, &HandlePDumpLoadCommand, "", NULL },
- { "write", rbac::RBAC_PERM_COMMAND_PDUMP_WRITE, true, &HandlePDumpWriteCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "load", rbac::RBAC_PERM_COMMAND_PDUMP_LOAD, true, &HandlePDumpLoadCommand, "" },
+ { "write", rbac::RBAC_PERM_COMMAND_PDUMP_WRITE, true, &HandlePDumpWriteCommand, "" },
};
- static ChatCommand characterDeletedCommandTable[] =
+ static std::vector<ChatCommand> characterDeletedCommandTable =
{
- { "delete", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_DELETE, true, &HandleCharacterDeletedDeleteCommand, "", NULL },
- { "list", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_LIST, true, &HandleCharacterDeletedListCommand, "", NULL },
- { "restore", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_RESTORE, true, &HandleCharacterDeletedRestoreCommand, "", NULL },
- { "old", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_OLD, true, &HandleCharacterDeletedOldCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "delete", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_DELETE, true, &HandleCharacterDeletedDeleteCommand, "" },
+ { "list", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_LIST, true, &HandleCharacterDeletedListCommand, "" },
+ { "restore", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_RESTORE, true, &HandleCharacterDeletedRestoreCommand, "" },
+ { "old", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED_OLD, true, &HandleCharacterDeletedOldCommand, "" },
};
- static ChatCommand characterCommandTable[] =
+ static std::vector<ChatCommand> characterCommandTable =
{
- { "customize", rbac::RBAC_PERM_COMMAND_CHARACTER_CUSTOMIZE, true, &HandleCharacterCustomizeCommand, "", NULL },
- { "changefaction", rbac::RBAC_PERM_COMMAND_CHARACTER_CHANGEFACTION, true, &HandleCharacterChangeFactionCommand, "", NULL },
- { "changerace", rbac::RBAC_PERM_COMMAND_CHARACTER_CHANGERACE, true, &HandleCharacterChangeRaceCommand, "", NULL },
+ { "customize", rbac::RBAC_PERM_COMMAND_CHARACTER_CUSTOMIZE, true, &HandleCharacterCustomizeCommand, "", },
+ { "changefaction", rbac::RBAC_PERM_COMMAND_CHARACTER_CHANGEFACTION, true, &HandleCharacterChangeFactionCommand, "", },
+ { "changerace", rbac::RBAC_PERM_COMMAND_CHARACTER_CHANGERACE, true, &HandleCharacterChangeRaceCommand, "", },
{ "deleted", rbac::RBAC_PERM_COMMAND_CHARACTER_DELETED, true, NULL, "", characterDeletedCommandTable },
- { "erase", rbac::RBAC_PERM_COMMAND_CHARACTER_ERASE, true, &HandleCharacterEraseCommand, "", NULL },
- { "level", rbac::RBAC_PERM_COMMAND_CHARACTER_LEVEL, true, &HandleCharacterLevelCommand, "", NULL },
- { "rename", rbac::RBAC_PERM_COMMAND_CHARACTER_RENAME, true, &HandleCharacterRenameCommand, "", NULL },
- { "reputation", rbac::RBAC_PERM_COMMAND_CHARACTER_REPUTATION, true, &HandleCharacterReputationCommand, "", NULL },
- { "titles", rbac::RBAC_PERM_COMMAND_CHARACTER_TITLES, true, &HandleCharacterTitlesCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "erase", rbac::RBAC_PERM_COMMAND_CHARACTER_ERASE, true, &HandleCharacterEraseCommand, "", },
+ { "level", rbac::RBAC_PERM_COMMAND_CHARACTER_LEVEL, true, &HandleCharacterLevelCommand, "", },
+ { "rename", rbac::RBAC_PERM_COMMAND_CHARACTER_RENAME, true, &HandleCharacterRenameCommand, "", },
+ { "reputation", rbac::RBAC_PERM_COMMAND_CHARACTER_REPUTATION, true, &HandleCharacterReputationCommand, "", },
+ { "titles", rbac::RBAC_PERM_COMMAND_CHARACTER_TITLES, true, &HandleCharacterTitlesCommand, "", },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "character", rbac::RBAC_PERM_COMMAND_CHARACTER, true, NULL, "", characterCommandTable },
- { "levelup", rbac::RBAC_PERM_COMMAND_LEVELUP, false, &HandleLevelUpCommand, "", NULL },
+ { "levelup", rbac::RBAC_PERM_COMMAND_LEVELUP, false, &HandleLevelUpCommand, "" },
{ "pdump", rbac::RBAC_PERM_COMMAND_PDUMP, true, NULL, "", pdumpCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_cheat.cpp b/src/server/scripts/Commands/cs_cheat.cpp
index 78ba5a4dc74..2dc2c17bdc2 100644
--- a/src/server/scripts/Commands/cs_cheat.cpp
+++ b/src/server/scripts/Commands/cs_cheat.cpp
@@ -32,27 +32,24 @@ class cheat_commandscript : public CommandScript
public:
cheat_commandscript() : CommandScript("cheat_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
-
- static ChatCommand cheatCommandTable[] =
+ static std::vector<ChatCommand> cheatCommandTable =
{
- { "god", rbac::RBAC_PERM_COMMAND_CHEAT_GOD, false, &HandleGodModeCheatCommand, "", NULL },
- { "casttime", rbac::RBAC_PERM_COMMAND_CHEAT_CASTTIME, false, &HandleCasttimeCheatCommand, "", NULL },
- { "cooldown", rbac::RBAC_PERM_COMMAND_CHEAT_COOLDOWN, false, &HandleCoolDownCheatCommand, "", NULL },
- { "power", rbac::RBAC_PERM_COMMAND_CHEAT_POWER, false, &HandlePowerCheatCommand, "", NULL },
- { "waterwalk", rbac::RBAC_PERM_COMMAND_CHEAT_WATERWALK, false, &HandleWaterWalkCheatCommand, "", NULL },
- { "status", rbac::RBAC_PERM_COMMAND_CHEAT_STATUS, false, &HandleCheatStatusCommand, "", NULL },
- { "taxi", rbac::RBAC_PERM_COMMAND_CHEAT_TAXI, false, &HandleTaxiCheatCommand, "", NULL },
- { "explore", rbac::RBAC_PERM_COMMAND_CHEAT_EXPLORE, false, &HandleExploreCheatCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "god", rbac::RBAC_PERM_COMMAND_CHEAT_GOD, false, &HandleGodModeCheatCommand, "" },
+ { "casttime", rbac::RBAC_PERM_COMMAND_CHEAT_CASTTIME, false, &HandleCasttimeCheatCommand, "" },
+ { "cooldown", rbac::RBAC_PERM_COMMAND_CHEAT_COOLDOWN, false, &HandleCoolDownCheatCommand, "" },
+ { "power", rbac::RBAC_PERM_COMMAND_CHEAT_POWER, false, &HandlePowerCheatCommand, "" },
+ { "waterwalk", rbac::RBAC_PERM_COMMAND_CHEAT_WATERWALK, false, &HandleWaterWalkCheatCommand, "" },
+ { "status", rbac::RBAC_PERM_COMMAND_CHEAT_STATUS, false, &HandleCheatStatusCommand, "" },
+ { "taxi", rbac::RBAC_PERM_COMMAND_CHEAT_TAXI, false, &HandleTaxiCheatCommand, "" },
+ { "explore", rbac::RBAC_PERM_COMMAND_CHEAT_EXPLORE, false, &HandleExploreCheatCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "cheat", rbac::RBAC_PERM_COMMAND_CHEAT, false, NULL, "", cheatCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_debug.cpp b/src/server/scripts/Commands/cs_debug.cpp
index 901043980c5..7f517d09e90 100644
--- a/src/server/scripts/Commands/cs_debug.cpp
+++ b/src/server/scripts/Commands/cs_debug.cpp
@@ -42,66 +42,62 @@ class debug_commandscript : public CommandScript
public:
debug_commandscript() : CommandScript("debug_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand debugPlayCommandTable[] =
+ static std::vector<ChatCommand> debugPlayCommandTable =
{
- { "cinematic", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY_CINEMATIC, false, &HandleDebugPlayCinematicCommand, "", NULL },
- { "movie", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY_MOVIE, false, &HandleDebugPlayMovieCommand, "", NULL },
- { "sound", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY_SOUND, false, &HandleDebugPlaySoundCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "cinematic", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY_CINEMATIC, false, &HandleDebugPlayCinematicCommand, "" },
+ { "movie", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY_MOVIE, false, &HandleDebugPlayMovieCommand, "" },
+ { "sound", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY_SOUND, false, &HandleDebugPlaySoundCommand, "" },
};
- static ChatCommand debugSendCommandTable[] =
+ static std::vector<ChatCommand> debugSendCommandTable =
{
- { "buyerror", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_BUYERROR, false, &HandleDebugSendBuyErrorCommand, "", NULL },
- { "channelnotify", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_CHANNELNOTIFY, false, &HandleDebugSendChannelNotifyCommand, "", NULL },
- { "chatmessage", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_CHATMESSAGE, false, &HandleDebugSendChatMsgCommand, "", NULL },
- { "equiperror", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_EQUIPERROR, false, &HandleDebugSendEquipErrorCommand, "", NULL },
- { "largepacket", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_LARGEPACKET, false, &HandleDebugSendLargePacketCommand, "", NULL },
- { "opcode", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_OPCODE, false, &HandleDebugSendOpcodeCommand, "", NULL },
- { "qpartymsg", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_QPARTYMSG, false, &HandleDebugSendQuestPartyMsgCommand, "", NULL },
- { "qinvalidmsg", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_QINVALIDMSG, false, &HandleDebugSendQuestInvalidMsgCommand, "", NULL },
- { "sellerror", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_SELLERROR, false, &HandleDebugSendSellErrorCommand, "", NULL },
- { "setphaseshift", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_SETPHASESHIFT, false, &HandleDebugSendSetPhaseShiftCommand, "", NULL },
- { "spellfail", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_SPELLFAIL, false, &HandleDebugSendSpellFailCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "buyerror", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_BUYERROR, false, &HandleDebugSendBuyErrorCommand, "" },
+ { "channelnotify", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_CHANNELNOTIFY, false, &HandleDebugSendChannelNotifyCommand, "" },
+ { "chatmessage", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_CHATMESSAGE, false, &HandleDebugSendChatMsgCommand, "" },
+ { "equiperror", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_EQUIPERROR, false, &HandleDebugSendEquipErrorCommand, "" },
+ { "largepacket", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_LARGEPACKET, false, &HandleDebugSendLargePacketCommand, "" },
+ { "opcode", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_OPCODE, false, &HandleDebugSendOpcodeCommand, "" },
+ { "qpartymsg", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_QPARTYMSG, false, &HandleDebugSendQuestPartyMsgCommand, "" },
+ { "qinvalidmsg", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_QINVALIDMSG, false, &HandleDebugSendQuestInvalidMsgCommand, "" },
+ { "sellerror", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_SELLERROR, false, &HandleDebugSendSellErrorCommand, "" },
+ { "setphaseshift", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_SETPHASESHIFT, false, &HandleDebugSendSetPhaseShiftCommand, "" },
+ { "spellfail", rbac::RBAC_PERM_COMMAND_DEBUG_SEND_SPELLFAIL, false, &HandleDebugSendSpellFailCommand, "" },
};
- static ChatCommand debugCommandTable[] =
+ static std::vector<ChatCommand> debugCommandTable =
{
- { "setbit", rbac::RBAC_PERM_COMMAND_DEBUG_SETBIT, false, &HandleDebugSet32BitCommand, "", NULL },
- { "threat", rbac::RBAC_PERM_COMMAND_DEBUG_THREAT, false, &HandleDebugThreatListCommand, "", NULL },
- { "hostil", rbac::RBAC_PERM_COMMAND_DEBUG_HOSTIL, false, &HandleDebugHostileRefListCommand, "", NULL },
- { "anim", rbac::RBAC_PERM_COMMAND_DEBUG_ANIM, false, &HandleDebugAnimCommand, "", NULL },
- { "arena", rbac::RBAC_PERM_COMMAND_DEBUG_ARENA, false, &HandleDebugArenaCommand, "", NULL },
- { "bg", rbac::RBAC_PERM_COMMAND_DEBUG_BG, false, &HandleDebugBattlegroundCommand, "", NULL },
- { "getitemstate", rbac::RBAC_PERM_COMMAND_DEBUG_GETITEMSTATE, false, &HandleDebugGetItemStateCommand, "", NULL },
- { "lootrecipient", rbac::RBAC_PERM_COMMAND_DEBUG_LOOTRECIPIENT, false, &HandleDebugGetLootRecipientCommand, "", NULL },
- { "getvalue", rbac::RBAC_PERM_COMMAND_DEBUG_GETVALUE, false, &HandleDebugGetValueCommand, "", NULL },
- { "getitemvalue", rbac::RBAC_PERM_COMMAND_DEBUG_GETITEMVALUE, false, &HandleDebugGetItemValueCommand, "", NULL },
- { "Mod32Value", rbac::RBAC_PERM_COMMAND_DEBUG_MOD32VALUE, false, &HandleDebugMod32ValueCommand, "", NULL },
+ { "setbit", rbac::RBAC_PERM_COMMAND_DEBUG_SETBIT, false, &HandleDebugSet32BitCommand, "" },
+ { "threat", rbac::RBAC_PERM_COMMAND_DEBUG_THREAT, false, &HandleDebugThreatListCommand, "" },
+ { "hostil", rbac::RBAC_PERM_COMMAND_DEBUG_HOSTIL, false, &HandleDebugHostileRefListCommand, "" },
+ { "anim", rbac::RBAC_PERM_COMMAND_DEBUG_ANIM, false, &HandleDebugAnimCommand, "" },
+ { "arena", rbac::RBAC_PERM_COMMAND_DEBUG_ARENA, false, &HandleDebugArenaCommand, "" },
+ { "bg", rbac::RBAC_PERM_COMMAND_DEBUG_BG, false, &HandleDebugBattlegroundCommand, "" },
+ { "getitemstate", rbac::RBAC_PERM_COMMAND_DEBUG_GETITEMSTATE, false, &HandleDebugGetItemStateCommand, "" },
+ { "lootrecipient", rbac::RBAC_PERM_COMMAND_DEBUG_LOOTRECIPIENT, false, &HandleDebugGetLootRecipientCommand, "" },
+ { "getvalue", rbac::RBAC_PERM_COMMAND_DEBUG_GETVALUE, false, &HandleDebugGetValueCommand, "" },
+ { "getitemvalue", rbac::RBAC_PERM_COMMAND_DEBUG_GETITEMVALUE, false, &HandleDebugGetItemValueCommand, "" },
+ { "Mod32Value", rbac::RBAC_PERM_COMMAND_DEBUG_MOD32VALUE, false, &HandleDebugMod32ValueCommand, "" },
{ "play", rbac::RBAC_PERM_COMMAND_DEBUG_PLAY, false, NULL, "", debugPlayCommandTable },
{ "send", rbac::RBAC_PERM_COMMAND_DEBUG_SEND, false, NULL, "", debugSendCommandTable },
- { "setaurastate", rbac::RBAC_PERM_COMMAND_DEBUG_SETAURASTATE, false, &HandleDebugSetAuraStateCommand, "", NULL },
- { "setitemvalue", rbac::RBAC_PERM_COMMAND_DEBUG_SETITEMVALUE, false, &HandleDebugSetItemValueCommand, "", NULL },
- { "setvalue", rbac::RBAC_PERM_COMMAND_DEBUG_SETVALUE, false, &HandleDebugSetValueCommand, "", NULL },
- { "spawnvehicle", rbac::RBAC_PERM_COMMAND_DEBUG_SPAWNVEHICLE, false, &HandleDebugSpawnVehicleCommand, "", NULL },
- { "setvid", rbac::RBAC_PERM_COMMAND_DEBUG_SETVID, false, &HandleDebugSetVehicleIdCommand, "", NULL },
- { "entervehicle", rbac::RBAC_PERM_COMMAND_DEBUG_ENTERVEHICLE, false, &HandleDebugEnterVehicleCommand, "", NULL },
- { "uws", rbac::RBAC_PERM_COMMAND_DEBUG_UWS, false, &HandleDebugUpdateWorldStateCommand, "", NULL },
- { "update", rbac::RBAC_PERM_COMMAND_DEBUG_UPDATE, false, &HandleDebugUpdateCommand, "", NULL },
- { "itemexpire", rbac::RBAC_PERM_COMMAND_DEBUG_ITEMEXPIRE, false, &HandleDebugItemExpireCommand, "", NULL },
- { "areatriggers", rbac::RBAC_PERM_COMMAND_DEBUG_AREATRIGGERS, false, &HandleDebugAreaTriggersCommand, "", NULL },
- { "los", rbac::RBAC_PERM_COMMAND_DEBUG_LOS, false, &HandleDebugLoSCommand, "", NULL },
- { "moveflags", rbac::RBAC_PERM_COMMAND_DEBUG_MOVEFLAGS, false, &HandleDebugMoveflagsCommand, "", NULL },
- { "transport", rbac::RBAC_PERM_COMMAND_DEBUG_TRANSPORT, false, &HandleDebugTransportCommand, "", NULL },
- { "loadcells", rbac::RBAC_PERM_COMMAND_DEBUG_LOADCELLS, false, &HandleDebugLoadCellsCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "setaurastate", rbac::RBAC_PERM_COMMAND_DEBUG_SETAURASTATE, false, &HandleDebugSetAuraStateCommand, "" },
+ { "setitemvalue", rbac::RBAC_PERM_COMMAND_DEBUG_SETITEMVALUE, false, &HandleDebugSetItemValueCommand, "" },
+ { "setvalue", rbac::RBAC_PERM_COMMAND_DEBUG_SETVALUE, false, &HandleDebugSetValueCommand, "" },
+ { "spawnvehicle", rbac::RBAC_PERM_COMMAND_DEBUG_SPAWNVEHICLE, false, &HandleDebugSpawnVehicleCommand, "" },
+ { "setvid", rbac::RBAC_PERM_COMMAND_DEBUG_SETVID, false, &HandleDebugSetVehicleIdCommand, "" },
+ { "entervehicle", rbac::RBAC_PERM_COMMAND_DEBUG_ENTERVEHICLE, false, &HandleDebugEnterVehicleCommand, "" },
+ { "uws", rbac::RBAC_PERM_COMMAND_DEBUG_UWS, false, &HandleDebugUpdateWorldStateCommand, "" },
+ { "update", rbac::RBAC_PERM_COMMAND_DEBUG_UPDATE, false, &HandleDebugUpdateCommand, "" },
+ { "itemexpire", rbac::RBAC_PERM_COMMAND_DEBUG_ITEMEXPIRE, false, &HandleDebugItemExpireCommand, "" },
+ { "areatriggers", rbac::RBAC_PERM_COMMAND_DEBUG_AREATRIGGERS, false, &HandleDebugAreaTriggersCommand, "" },
+ { "los", rbac::RBAC_PERM_COMMAND_DEBUG_LOS, false, &HandleDebugLoSCommand, "" },
+ { "moveflags", rbac::RBAC_PERM_COMMAND_DEBUG_MOVEFLAGS, false, &HandleDebugMoveflagsCommand, "" },
+ { "transport", rbac::RBAC_PERM_COMMAND_DEBUG_TRANSPORT, false, &HandleDebugTransportCommand, "" },
+ { "loadcells", rbac::RBAC_PERM_COMMAND_DEBUG_LOADCELLS, false, &HandleDebugLoadCellsCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "debug", rbac::RBAC_PERM_COMMAND_DEBUG, true, NULL, "", debugCommandTable },
- { "wpgps", rbac::RBAC_PERM_COMMAND_WPGPS, false, &HandleWPGPSCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "wpgps", rbac::RBAC_PERM_COMMAND_WPGPS, false, &HandleWPGPSCommand, "" },
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_deserter.cpp b/src/server/scripts/Commands/cs_deserter.cpp
index 2887ac8c134..9f461207707 100644
--- a/src/server/scripts/Commands/cs_deserter.cpp
+++ b/src/server/scripts/Commands/cs_deserter.cpp
@@ -43,31 +43,27 @@ public:
* @brief Returns the command structure for the system.
*/
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand deserterInstanceCommandTable[] =
+ static std::vector<ChatCommand> deserterInstanceCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_DESERTER_INSTANCE_ADD, false, &HandleDeserterInstanceAdd, "", NULL },
- { "remove", rbac::RBAC_PERM_COMMAND_DESERTER_INSTANCE_REMOVE, false, &HandleDeserterInstanceRemove, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "add", rbac::RBAC_PERM_COMMAND_DESERTER_INSTANCE_ADD, false, &HandleDeserterInstanceAdd, "" },
+ { "remove", rbac::RBAC_PERM_COMMAND_DESERTER_INSTANCE_REMOVE, false, &HandleDeserterInstanceRemove, "" },
};
- static ChatCommand deserterBGCommandTable[] =
+ static std::vector<ChatCommand> deserterBGCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_DESERTER_BG_ADD, false, &HandleDeserterBGAdd, "", NULL },
- { "remove", rbac::RBAC_PERM_COMMAND_DESERTER_BG_REMOVE, false, &HandleDeserterBGRemove, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "add", rbac::RBAC_PERM_COMMAND_DESERTER_BG_ADD, false, &HandleDeserterBGAdd, "" },
+ { "remove", rbac::RBAC_PERM_COMMAND_DESERTER_BG_REMOVE, false, &HandleDeserterBGRemove, "" },
};
- static ChatCommand deserterCommandTable[] =
+ static std::vector<ChatCommand> deserterCommandTable =
{
{ "instance", rbac::RBAC_PERM_COMMAND_DESERTER_INSTANCE, false, NULL, "", deserterInstanceCommandTable },
{ "bg", rbac::RBAC_PERM_COMMAND_DESERTER_BG, false, NULL, "", deserterBGCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "deserter", rbac::RBAC_PERM_COMMAND_DESERTER, false, NULL, "", deserterCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_disable.cpp b/src/server/scripts/Commands/cs_disable.cpp
index 14f76945a80..8c73f3f41de 100644
--- a/src/server/scripts/Commands/cs_disable.cpp
+++ b/src/server/scripts/Commands/cs_disable.cpp
@@ -37,42 +37,38 @@ class disable_commandscript : public CommandScript
public:
disable_commandscript() : CommandScript("disable_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand removeDisableCommandTable[] =
+ static std::vector<ChatCommand> removeDisableCommandTable =
{
- { "spell", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_SPELL, true, &HandleRemoveDisableSpellCommand, "", NULL },
- { "quest", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_QUEST, true, &HandleRemoveDisableQuestCommand, "", NULL },
- { "map", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_MAP, true, &HandleRemoveDisableMapCommand, "", NULL },
- { "battleground", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_BATTLEGROUND, true, &HandleRemoveDisableBattlegroundCommand, "", NULL },
- { "achievement_criteria", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_ACHIEVEMENT_CRITERIA, true, &HandleRemoveDisableAchievementCriteriaCommand, "", NULL },
- { "outdoorpvp", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_OUTDOORPVP, true, &HandleRemoveDisableOutdoorPvPCommand, "", NULL },
- { "vmap", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_VMAP, true, &HandleRemoveDisableVmapCommand, "", NULL },
- { "mmap", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_MMAP, true, &HandleRemoveDisableMMapCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "spell", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_SPELL, true, &HandleRemoveDisableSpellCommand, "" },
+ { "quest", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_QUEST, true, &HandleRemoveDisableQuestCommand, "" },
+ { "map", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_MAP, true, &HandleRemoveDisableMapCommand, "" },
+ { "battleground", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_BATTLEGROUND, true, &HandleRemoveDisableBattlegroundCommand, "" },
+ { "achievement_criteria", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_ACHIEVEMENT_CRITERIA, true, &HandleRemoveDisableAchievementCriteriaCommand, "" },
+ { "outdoorpvp", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_OUTDOORPVP, true, &HandleRemoveDisableOutdoorPvPCommand, "" },
+ { "vmap", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_VMAP, true, &HandleRemoveDisableVmapCommand, "" },
+ { "mmap", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE_MMAP, true, &HandleRemoveDisableMMapCommand, "" },
};
- static ChatCommand addDisableCommandTable[] =
+ static std::vector<ChatCommand> addDisableCommandTable =
{
- { "spell", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_SPELL, true, &HandleAddDisableSpellCommand, "", NULL },
- { "quest", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_QUEST, true, &HandleAddDisableQuestCommand, "", NULL },
- { "map", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_MAP, true, &HandleAddDisableMapCommand, "", NULL },
- { "battleground", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_BATTLEGROUND, true, &HandleAddDisableBattlegroundCommand, "", NULL },
- { "achievement_criteria", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_ACHIEVEMENT_CRITERIA, true, &HandleAddDisableAchievementCriteriaCommand, "", NULL },
- { "outdoorpvp", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_OUTDOORPVP, true, &HandleAddDisableOutdoorPvPCommand, "", NULL },
- { "vmap", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_VMAP, true, &HandleAddDisableVmapCommand, "", NULL },
- { "mmap", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_MMAP, true, &HandleAddDisableMMapCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "spell", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_SPELL, true, &HandleAddDisableSpellCommand, "" },
+ { "quest", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_QUEST, true, &HandleAddDisableQuestCommand, "" },
+ { "map", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_MAP, true, &HandleAddDisableMapCommand, "" },
+ { "battleground", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_BATTLEGROUND, true, &HandleAddDisableBattlegroundCommand, "" },
+ { "achievement_criteria", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_ACHIEVEMENT_CRITERIA, true, &HandleAddDisableAchievementCriteriaCommand, "" },
+ { "outdoorpvp", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_OUTDOORPVP, true, &HandleAddDisableOutdoorPvPCommand, "" },
+ { "vmap", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_VMAP, true, &HandleAddDisableVmapCommand, "" },
+ { "mmap", rbac::RBAC_PERM_COMMAND_DISABLE_ADD_MMAP, true, &HandleAddDisableMMapCommand, "" },
};
- static ChatCommand disableCommandTable[] =
+ static std::vector<ChatCommand> disableCommandTable =
{
{ "add", rbac::RBAC_PERM_COMMAND_DISABLE_ADD, true, NULL, "", addDisableCommandTable },
{ "remove", rbac::RBAC_PERM_COMMAND_DISABLE_REMOVE, true, NULL, "", removeDisableCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "disable", rbac::RBAC_PERM_COMMAND_DISABLE, false, NULL, "", disableCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_event.cpp b/src/server/scripts/Commands/cs_event.cpp
index 37495289149..352bce4e7f0 100644
--- a/src/server/scripts/Commands/cs_event.cpp
+++ b/src/server/scripts/Commands/cs_event.cpp
@@ -33,20 +33,18 @@ class event_commandscript : public CommandScript
public:
event_commandscript() : CommandScript("event_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand eventCommandTable[] =
+ static std::vector<ChatCommand> eventCommandTable =
{
- { "activelist", rbac::RBAC_PERM_COMMAND_EVENT_ACTIVELIST, true, &HandleEventActiveListCommand, "", NULL },
- { "start", rbac::RBAC_PERM_COMMAND_EVENT_START, true, &HandleEventStartCommand, "", NULL },
- { "stop", rbac::RBAC_PERM_COMMAND_EVENT_STOP, true, &HandleEventStopCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_EVENT, true, &HandleEventInfoCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "activelist", rbac::RBAC_PERM_COMMAND_EVENT_ACTIVELIST, true, &HandleEventActiveListCommand, "" },
+ { "start", rbac::RBAC_PERM_COMMAND_EVENT_START, true, &HandleEventStartCommand, "" },
+ { "stop", rbac::RBAC_PERM_COMMAND_EVENT_STOP, true, &HandleEventStopCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_EVENT, true, &HandleEventInfoCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "event", rbac::RBAC_PERM_COMMAND_EVENT, false, NULL, "", eventCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_gm.cpp b/src/server/scripts/Commands/cs_gm.cpp
index 94e974bea0b..81b70603680 100644
--- a/src/server/scripts/Commands/cs_gm.cpp
+++ b/src/server/scripts/Commands/cs_gm.cpp
@@ -36,22 +36,20 @@ class gm_commandscript : public CommandScript
public:
gm_commandscript() : CommandScript("gm_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand gmCommandTable[] =
+ static std::vector<ChatCommand> gmCommandTable =
{
- { "chat", rbac::RBAC_PERM_COMMAND_GM_CHAT, false, &HandleGMChatCommand, "", NULL },
- { "fly", rbac::RBAC_PERM_COMMAND_GM_FLY, false, &HandleGMFlyCommand, "", NULL },
- { "ingame", rbac::RBAC_PERM_COMMAND_GM_INGAME, true, &HandleGMListIngameCommand, "", NULL },
- { "list", rbac::RBAC_PERM_COMMAND_GM_LIST, true, &HandleGMListFullCommand, "", NULL },
- { "visible", rbac::RBAC_PERM_COMMAND_GM_VISIBLE, false, &HandleGMVisibleCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_GM, false, &HandleGMCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "chat", rbac::RBAC_PERM_COMMAND_GM_CHAT, false, &HandleGMChatCommand, "" },
+ { "fly", rbac::RBAC_PERM_COMMAND_GM_FLY, false, &HandleGMFlyCommand, "" },
+ { "ingame", rbac::RBAC_PERM_COMMAND_GM_INGAME, true, &HandleGMListIngameCommand, "" },
+ { "list", rbac::RBAC_PERM_COMMAND_GM_LIST, true, &HandleGMListFullCommand, "" },
+ { "visible", rbac::RBAC_PERM_COMMAND_GM_VISIBLE, false, &HandleGMVisibleCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_GM, false, &HandleGMCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "gm", rbac::RBAC_PERM_COMMAND_GM, false, NULL, "", gmCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_go.cpp b/src/server/scripts/Commands/cs_go.cpp
index ce1a42e6e78..33fc594a4c3 100644
--- a/src/server/scripts/Commands/cs_go.cpp
+++ b/src/server/scripts/Commands/cs_go.cpp
@@ -36,27 +36,25 @@ class go_commandscript : public CommandScript
public:
go_commandscript() : CommandScript("go_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand goCommandTable[] =
- {
- { "creature", rbac::RBAC_PERM_COMMAND_GO_CREATURE, false, &HandleGoCreatureCommand, "", NULL },
- { "graveyard", rbac::RBAC_PERM_COMMAND_GO_GRAVEYARD, false, &HandleGoGraveyardCommand, "", NULL },
- { "grid", rbac::RBAC_PERM_COMMAND_GO_GRID, false, &HandleGoGridCommand, "", NULL },
- { "object", rbac::RBAC_PERM_COMMAND_GO_OBJECT, false, &HandleGoObjectCommand, "", NULL },
- { "taxinode", rbac::RBAC_PERM_COMMAND_GO_TAXINODE, false, &HandleGoTaxinodeCommand, "", NULL },
- { "trigger", rbac::RBAC_PERM_COMMAND_GO_TRIGGER, false, &HandleGoTriggerCommand, "", NULL },
- { "zonexy", rbac::RBAC_PERM_COMMAND_GO_ZONEXY, false, &HandleGoZoneXYCommand, "", NULL },
- { "xyz", rbac::RBAC_PERM_COMMAND_GO_XYZ, false, &HandleGoXYZCommand, "", NULL },
- { "ticket", rbac::RBAC_PERM_COMMAND_GO_TICKET, false, &HandleGoTicketCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoXYZCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ static std::vector<ChatCommand> goCommandTable =
+ {
+ { "creature", rbac::RBAC_PERM_COMMAND_GO_CREATURE, false, &HandleGoCreatureCommand, "" },
+ { "graveyard", rbac::RBAC_PERM_COMMAND_GO_GRAVEYARD, false, &HandleGoGraveyardCommand, "" },
+ { "grid", rbac::RBAC_PERM_COMMAND_GO_GRID, false, &HandleGoGridCommand, "" },
+ { "object", rbac::RBAC_PERM_COMMAND_GO_OBJECT, false, &HandleGoObjectCommand, "" },
+ { "taxinode", rbac::RBAC_PERM_COMMAND_GO_TAXINODE, false, &HandleGoTaxinodeCommand, "" },
+ { "trigger", rbac::RBAC_PERM_COMMAND_GO_TRIGGER, false, &HandleGoTriggerCommand, "" },
+ { "zonexy", rbac::RBAC_PERM_COMMAND_GO_ZONEXY, false, &HandleGoZoneXYCommand, "" },
+ { "xyz", rbac::RBAC_PERM_COMMAND_GO_XYZ, false, &HandleGoXYZCommand, "" },
+ { "bugticket", rbac::RBAC_PERM_COMMAND_GO_TICKET, false, &HandleGoTicketCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoXYZCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "go", rbac::RBAC_PERM_COMMAND_GO, false, NULL, "", goCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_gobject.cpp b/src/server/scripts/Commands/cs_gobject.cpp
index 9710a7e634c..fda9101fc3f 100644
--- a/src/server/scripts/Commands/cs_gobject.cpp
+++ b/src/server/scripts/Commands/cs_gobject.cpp
@@ -37,37 +37,33 @@ class gobject_commandscript : public CommandScript
public:
gobject_commandscript() : CommandScript("gobject_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand gobjectAddCommandTable[] =
+ static std::vector<ChatCommand> gobjectAddCommandTable =
{
- { "temp", rbac::RBAC_PERM_COMMAND_GOBJECT_ADD_TEMP, false, &HandleGameObjectAddTempCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_GOBJECT_ADD, false, &HandleGameObjectAddCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "temp", rbac::RBAC_PERM_COMMAND_GOBJECT_ADD_TEMP, false, &HandleGameObjectAddTempCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_GOBJECT_ADD, false, &HandleGameObjectAddCommand, "" },
};
- static ChatCommand gobjectSetCommandTable[] =
+ static std::vector<ChatCommand> gobjectSetCommandTable =
{
- { "phase", rbac::RBAC_PERM_COMMAND_GOBJECT_SET_PHASE, false, &HandleGameObjectSetPhaseCommand, "", NULL },
- { "state", rbac::RBAC_PERM_COMMAND_GOBJECT_SET_STATE, false, &HandleGameObjectSetStateCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "phase", rbac::RBAC_PERM_COMMAND_GOBJECT_SET_PHASE, false, &HandleGameObjectSetPhaseCommand, "" },
+ { "state", rbac::RBAC_PERM_COMMAND_GOBJECT_SET_STATE, false, &HandleGameObjectSetStateCommand, "" },
};
- static ChatCommand gobjectCommandTable[] =
- {
- { "activate", rbac::RBAC_PERM_COMMAND_GOBJECT_ACTIVATE, false, &HandleGameObjectActivateCommand, "", NULL },
- { "delete", rbac::RBAC_PERM_COMMAND_GOBJECT_DELETE, false, &HandleGameObjectDeleteCommand, "", NULL },
- { "info", rbac::RBAC_PERM_COMMAND_GOBJECT_INFO, false, &HandleGameObjectInfoCommand, "", NULL },
- { "move", rbac::RBAC_PERM_COMMAND_GOBJECT_MOVE, false, &HandleGameObjectMoveCommand, "", NULL },
- { "near", rbac::RBAC_PERM_COMMAND_GOBJECT_NEAR, false, &HandleGameObjectNearCommand, "", NULL },
- { "target", rbac::RBAC_PERM_COMMAND_GOBJECT_TARGET, false, &HandleGameObjectTargetCommand, "", NULL },
- { "turn", rbac::RBAC_PERM_COMMAND_GOBJECT_TURN, false, &HandleGameObjectTurnCommand, "", NULL },
+ static std::vector<ChatCommand> gobjectCommandTable =
+ {
+ { "activate", rbac::RBAC_PERM_COMMAND_GOBJECT_ACTIVATE, false, &HandleGameObjectActivateCommand, "" },
+ { "delete", rbac::RBAC_PERM_COMMAND_GOBJECT_DELETE, false, &HandleGameObjectDeleteCommand, "" },
+ { "info", rbac::RBAC_PERM_COMMAND_GOBJECT_INFO, false, &HandleGameObjectInfoCommand, "" },
+ { "move", rbac::RBAC_PERM_COMMAND_GOBJECT_MOVE, false, &HandleGameObjectMoveCommand, "" },
+ { "near", rbac::RBAC_PERM_COMMAND_GOBJECT_NEAR, false, &HandleGameObjectNearCommand, "" },
+ { "target", rbac::RBAC_PERM_COMMAND_GOBJECT_TARGET, false, &HandleGameObjectTargetCommand, "" },
+ { "turn", rbac::RBAC_PERM_COMMAND_GOBJECT_TURN, false, &HandleGameObjectTurnCommand, "" },
{ "add", rbac::RBAC_PERM_COMMAND_GOBJECT_ADD, false, NULL, "", gobjectAddCommandTable },
{ "set", rbac::RBAC_PERM_COMMAND_GOBJECT_SET, false, NULL, "", gobjectSetCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "gobject", rbac::RBAC_PERM_COMMAND_GOBJECT, false, NULL, "", gobjectCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_group.cpp b/src/server/scripts/Commands/cs_group.cpp
index 8152508c5df..054cff996f9 100644
--- a/src/server/scripts/Commands/cs_group.cpp
+++ b/src/server/scripts/Commands/cs_group.cpp
@@ -28,23 +28,21 @@ class group_commandscript : public CommandScript
public:
group_commandscript() : CommandScript("group_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand groupCommandTable[] =
+ static std::vector<ChatCommand> groupCommandTable =
{
- { "leader", rbac::RBAC_PERM_COMMAND_GROUP_LEADER, false, &HandleGroupLeaderCommand, "", NULL },
- { "disband", rbac::RBAC_PERM_COMMAND_GROUP_DISBAND, false, &HandleGroupDisbandCommand, "", NULL },
- { "remove", rbac::RBAC_PERM_COMMAND_GROUP_REMOVE, false, &HandleGroupRemoveCommand, "", NULL },
- { "join", rbac::RBAC_PERM_COMMAND_GROUP_JOIN, false, &HandleGroupJoinCommand, "", NULL },
- { "list", rbac::RBAC_PERM_COMMAND_GROUP_LIST, false, &HandleGroupListCommand, "", NULL },
- { "summon", rbac::RBAC_PERM_COMMAND_GROUP_SUMMON, false, &HandleGroupSummonCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "leader", rbac::RBAC_PERM_COMMAND_GROUP_LEADER, false, &HandleGroupLeaderCommand, "" },
+ { "disband", rbac::RBAC_PERM_COMMAND_GROUP_DISBAND, false, &HandleGroupDisbandCommand, "" },
+ { "remove", rbac::RBAC_PERM_COMMAND_GROUP_REMOVE, false, &HandleGroupRemoveCommand, "" },
+ { "join", rbac::RBAC_PERM_COMMAND_GROUP_JOIN, false, &HandleGroupJoinCommand, "" },
+ { "list", rbac::RBAC_PERM_COMMAND_GROUP_LIST, false, &HandleGroupListCommand, "" },
+ { "summon", rbac::RBAC_PERM_COMMAND_GROUP_SUMMON, false, &HandleGroupSummonCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "group", rbac::RBAC_PERM_COMMAND_GROUP, false, NULL, "", groupCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_guild.cpp b/src/server/scripts/Commands/cs_guild.cpp
index c2b9076017a..04b633f6f40 100644
--- a/src/server/scripts/Commands/cs_guild.cpp
+++ b/src/server/scripts/Commands/cs_guild.cpp
@@ -34,23 +34,21 @@ class guild_commandscript : public CommandScript
public:
guild_commandscript() : CommandScript("guild_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand guildCommandTable[] =
+ static std::vector<ChatCommand> guildCommandTable =
{
- { "create", rbac::RBAC_PERM_COMMAND_GUILD_CREATE, true, &HandleGuildCreateCommand, "", NULL },
- { "delete", rbac::RBAC_PERM_COMMAND_GUILD_DELETE, true, &HandleGuildDeleteCommand, "", NULL },
- { "invite", rbac::RBAC_PERM_COMMAND_GUILD_INVITE, true, &HandleGuildInviteCommand, "", NULL },
- { "uninvite", rbac::RBAC_PERM_COMMAND_GUILD_UNINVITE, true, &HandleGuildUninviteCommand, "", NULL },
- { "rank", rbac::RBAC_PERM_COMMAND_GUILD_RANK, true, &HandleGuildRankCommand, "", NULL },
- { "rename", rbac::RBAC_PERM_COMMAND_GUILD_RENAME, true, &HandleGuildRenameCommand, "", NULL },
- { "info", rbac::RBAC_PERM_COMMAND_GUILD_INFO, true, &HandleGuildInfoCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "create", rbac::RBAC_PERM_COMMAND_GUILD_CREATE, true, &HandleGuildCreateCommand, "" },
+ { "delete", rbac::RBAC_PERM_COMMAND_GUILD_DELETE, true, &HandleGuildDeleteCommand, "" },
+ { "invite", rbac::RBAC_PERM_COMMAND_GUILD_INVITE, true, &HandleGuildInviteCommand, "" },
+ { "uninvite", rbac::RBAC_PERM_COMMAND_GUILD_UNINVITE, true, &HandleGuildUninviteCommand, "" },
+ { "rank", rbac::RBAC_PERM_COMMAND_GUILD_RANK, true, &HandleGuildRankCommand, "" },
+ { "rename", rbac::RBAC_PERM_COMMAND_GUILD_RENAME, true, &HandleGuildRenameCommand, "" },
+ { "info", rbac::RBAC_PERM_COMMAND_GUILD_INFO, true, &HandleGuildInfoCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "guild", rbac::RBAC_PERM_COMMAND_GUILD, true, NULL, "", guildCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_honor.cpp b/src/server/scripts/Commands/cs_honor.cpp
index ad2c53415bb..e8b41309d47 100644
--- a/src/server/scripts/Commands/cs_honor.cpp
+++ b/src/server/scripts/Commands/cs_honor.cpp
@@ -33,26 +33,23 @@ class honor_commandscript : public CommandScript
public:
honor_commandscript() : CommandScript("honor_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand honorAddCommandTable[] =
+ static std::vector<ChatCommand> honorAddCommandTable =
{
- { "kill", rbac::RBAC_PERM_COMMAND_HONOR_ADD_KILL, false, &HandleHonorAddKillCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_HONOR_ADD, false, &HandleHonorAddCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "kill", rbac::RBAC_PERM_COMMAND_HONOR_ADD_KILL, false, &HandleHonorAddKillCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_HONOR_ADD, false, &HandleHonorAddCommand, "" },
};
- static ChatCommand honorCommandTable[] =
+ static std::vector<ChatCommand> honorCommandTable =
{
{ "add", rbac::RBAC_PERM_COMMAND_HONOR_ADD, false, NULL, "", honorAddCommandTable },
- { "update", rbac::RBAC_PERM_COMMAND_HONOR_UPDATE, false, &HandleHonorUpdateCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "update", rbac::RBAC_PERM_COMMAND_HONOR_UPDATE, false, &HandleHonorUpdateCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "honor", rbac::RBAC_PERM_COMMAND_HONOR, false, NULL, "", honorCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_instance.cpp b/src/server/scripts/Commands/cs_instance.cpp
index aa7310e3c65..e51b7bcc594 100644
--- a/src/server/scripts/Commands/cs_instance.cpp
+++ b/src/server/scripts/Commands/cs_instance.cpp
@@ -36,23 +36,21 @@ class instance_commandscript : public CommandScript
public:
instance_commandscript() : CommandScript("instance_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand instanceCommandTable[] =
+ static std::vector<ChatCommand> instanceCommandTable =
{
- { "listbinds", rbac::RBAC_PERM_COMMAND_INSTANCE_LISTBINDS, false, &HandleInstanceListBindsCommand, "", NULL },
- { "unbind", rbac::RBAC_PERM_COMMAND_INSTANCE_UNBIND, false, &HandleInstanceUnbindCommand, "", NULL },
- { "stats", rbac::RBAC_PERM_COMMAND_INSTANCE_STATS, true, &HandleInstanceStatsCommand, "", NULL },
- { "savedata", rbac::RBAC_PERM_COMMAND_INSTANCE_SAVEDATA, false, &HandleInstanceSaveDataCommand, "", NULL },
- { "setbossstate", rbac::RBAC_PERM_COMMAND_INSTANCE_SET_BOSS_STATE, true, &HandleInstanceSetBossStateCommand, "", NULL },
- { "getbossstate", rbac::RBAC_PERM_COMMAND_INSTANCE_GET_BOSS_STATE, true, &HandleInstanceGetBossStateCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "listbinds", rbac::RBAC_PERM_COMMAND_INSTANCE_LISTBINDS, false, &HandleInstanceListBindsCommand, "" },
+ { "unbind", rbac::RBAC_PERM_COMMAND_INSTANCE_UNBIND, false, &HandleInstanceUnbindCommand, "" },
+ { "stats", rbac::RBAC_PERM_COMMAND_INSTANCE_STATS, true, &HandleInstanceStatsCommand, "" },
+ { "savedata", rbac::RBAC_PERM_COMMAND_INSTANCE_SAVEDATA, false, &HandleInstanceSaveDataCommand, "" },
+ { "setbossstate", rbac::RBAC_PERM_COMMAND_INSTANCE_SET_BOSS_STATE, true, &HandleInstanceSetBossStateCommand, "" },
+ { "getbossstate", rbac::RBAC_PERM_COMMAND_INSTANCE_GET_BOSS_STATE, true, &HandleInstanceGetBossStateCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "instance", rbac::RBAC_PERM_COMMAND_INSTANCE, true, NULL, "", instanceCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
diff --git a/src/server/scripts/Commands/cs_learn.cpp b/src/server/scripts/Commands/cs_learn.cpp
index 21211afad50..d7fd4e6664c 100644
--- a/src/server/scripts/Commands/cs_learn.cpp
+++ b/src/server/scripts/Commands/cs_learn.cpp
@@ -36,40 +36,36 @@ class learn_commandscript : public CommandScript
public:
learn_commandscript() : CommandScript("learn_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand learnAllMyCommandTable[] =
+ static std::vector<ChatCommand> learnAllMyCommandTable =
{
- { "class", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_CLASS, false, &HandleLearnAllMyClassCommand, "", NULL },
- { "pettalents", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_PETTALENTS, false, &HandleLearnAllMyPetTalentsCommand, "", NULL },
- { "spells", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_SPELLS, false, &HandleLearnAllMySpellsCommand, "", NULL },
- { "talents", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_TALENTS, false, &HandleLearnAllMyTalentsCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "class", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_CLASS, false, &HandleLearnAllMyClassCommand, "" },
+ { "pettalents", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_PETTALENTS, false, &HandleLearnAllMyPetTalentsCommand, "" },
+ { "spells", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_SPELLS, false, &HandleLearnAllMySpellsCommand, "" },
+ { "talents", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY_TALENTS, false, &HandleLearnAllMyTalentsCommand, "" },
};
- static ChatCommand learnAllCommandTable[] =
+ static std::vector<ChatCommand> learnAllCommandTable =
{
{ "my", rbac::RBAC_PERM_COMMAND_LEARN_ALL_MY, false, NULL, "", learnAllMyCommandTable },
- { "gm", rbac::RBAC_PERM_COMMAND_LEARN_ALL_GM, false, &HandleLearnAllGMCommand, "", NULL },
- { "crafts", rbac::RBAC_PERM_COMMAND_LEARN_ALL_CRAFTS, false, &HandleLearnAllCraftsCommand, "", NULL },
- { "default", rbac::RBAC_PERM_COMMAND_LEARN_ALL_DEFAULT, false, &HandleLearnAllDefaultCommand, "", NULL },
- { "lang", rbac::RBAC_PERM_COMMAND_LEARN_ALL_LANG, false, &HandleLearnAllLangCommand, "", NULL },
- { "recipes", rbac::RBAC_PERM_COMMAND_LEARN_ALL_RECIPES, false, &HandleLearnAllRecipesCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "gm", rbac::RBAC_PERM_COMMAND_LEARN_ALL_GM, false, &HandleLearnAllGMCommand, "" },
+ { "crafts", rbac::RBAC_PERM_COMMAND_LEARN_ALL_CRAFTS, false, &HandleLearnAllCraftsCommand, "" },
+ { "default", rbac::RBAC_PERM_COMMAND_LEARN_ALL_DEFAULT, false, &HandleLearnAllDefaultCommand, "" },
+ { "lang", rbac::RBAC_PERM_COMMAND_LEARN_ALL_LANG, false, &HandleLearnAllLangCommand, "" },
+ { "recipes", rbac::RBAC_PERM_COMMAND_LEARN_ALL_RECIPES, false, &HandleLearnAllRecipesCommand, "" },
};
- static ChatCommand learnCommandTable[] =
+ static std::vector<ChatCommand> learnCommandTable =
{
{ "all", rbac::RBAC_PERM_COMMAND_LEARN_ALL, false, NULL, "", learnAllCommandTable },
- { "", rbac::RBAC_PERM_COMMAND_LEARN, false, &HandleLearnCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "", rbac::RBAC_PERM_COMMAND_LEARN, false, &HandleLearnCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "learn", rbac::RBAC_PERM_COMMAND_LEARN, false, NULL, "", learnCommandTable },
- { "unlearn", rbac::RBAC_PERM_COMMAND_UNLEARN, false, &HandleUnLearnCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "unlearn", rbac::RBAC_PERM_COMMAND_UNLEARN, false, &HandleUnLearnCommand, "" },
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_lfg.cpp b/src/server/scripts/Commands/cs_lfg.cpp
index 2de22714a15..9287d5553e3 100644
--- a/src/server/scripts/Commands/cs_lfg.cpp
+++ b/src/server/scripts/Commands/cs_lfg.cpp
@@ -43,22 +43,20 @@ class lfg_commandscript : public CommandScript
public:
lfg_commandscript() : CommandScript("lfg_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand lfgCommandTable[] =
+ static std::vector<ChatCommand> lfgCommandTable =
{
- { "player", rbac::RBAC_PERM_COMMAND_LFG_PLAYER, false, &HandleLfgPlayerInfoCommand, "", NULL },
- { "group", rbac::RBAC_PERM_COMMAND_LFG_GROUP, false, &HandleLfgGroupInfoCommand, "", NULL },
- { "queue", rbac::RBAC_PERM_COMMAND_LFG_QUEUE, true, &HandleLfgQueueInfoCommand, "", NULL },
- { "clean", rbac::RBAC_PERM_COMMAND_LFG_CLEAN, true, &HandleLfgCleanCommand, "", NULL },
- { "options", rbac::RBAC_PERM_COMMAND_LFG_OPTIONS, true, &HandleLfgOptionsCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "player", rbac::RBAC_PERM_COMMAND_LFG_PLAYER, false, &HandleLfgPlayerInfoCommand, "" },
+ { "group", rbac::RBAC_PERM_COMMAND_LFG_GROUP, false, &HandleLfgGroupInfoCommand, "" },
+ { "queue", rbac::RBAC_PERM_COMMAND_LFG_QUEUE, true, &HandleLfgQueueInfoCommand, "" },
+ { "clean", rbac::RBAC_PERM_COMMAND_LFG_CLEAN, true, &HandleLfgCleanCommand, "" },
+ { "options", rbac::RBAC_PERM_COMMAND_LFG_OPTIONS, true, &HandleLfgOptionsCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "lfg", rbac::RBAC_PERM_COMMAND_LFG, true, NULL, "", lfgCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_list.cpp b/src/server/scripts/Commands/cs_list.cpp
index 0de62f805de..a1b79a69605 100644
--- a/src/server/scripts/Commands/cs_list.cpp
+++ b/src/server/scripts/Commands/cs_list.cpp
@@ -36,21 +36,19 @@ class list_commandscript : public CommandScript
public:
list_commandscript() : CommandScript("list_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand listCommandTable[] =
+ static std::vector<ChatCommand> listCommandTable =
{
- { "creature", rbac::RBAC_PERM_COMMAND_LIST_CREATURE, true, &HandleListCreatureCommand, "", NULL },
- { "item", rbac::RBAC_PERM_COMMAND_LIST_ITEM, true, &HandleListItemCommand, "", NULL },
- { "object", rbac::RBAC_PERM_COMMAND_LIST_OBJECT, true, &HandleListObjectCommand, "", NULL },
- { "auras", rbac::RBAC_PERM_COMMAND_LIST_AURAS, false, &HandleListAurasCommand, "", NULL },
- { "mail", rbac::RBAC_PERM_COMMAND_LIST_MAIL, true, &HandleListMailCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "creature", rbac::RBAC_PERM_COMMAND_LIST_CREATURE, true, &HandleListCreatureCommand, "" },
+ { "item", rbac::RBAC_PERM_COMMAND_LIST_ITEM, true, &HandleListItemCommand, "" },
+ { "object", rbac::RBAC_PERM_COMMAND_LIST_OBJECT, true, &HandleListObjectCommand, "" },
+ { "auras", rbac::RBAC_PERM_COMMAND_LIST_AURAS, false, &HandleListAurasCommand, "" },
+ { "mail", rbac::RBAC_PERM_COMMAND_LIST_MAIL, true, &HandleListMailCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "list", rbac::RBAC_PERM_COMMAND_LIST,true, NULL, "", listCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_lookup.cpp b/src/server/scripts/Commands/cs_lookup.cpp
index cb2d467f8d7..ec35c5a7b62 100644
--- a/src/server/scripts/Commands/cs_lookup.cpp
+++ b/src/server/scripts/Commands/cs_lookup.cpp
@@ -37,47 +37,43 @@ class lookup_commandscript : public CommandScript
public:
lookup_commandscript() : CommandScript("lookup_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand lookupPlayerCommandTable[] =
+ static std::vector<ChatCommand> lookupPlayerCommandTable =
{
- { "ip", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER_IP, true, &HandleLookupPlayerIpCommand, "", NULL },
- { "account", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER_ACCOUNT, true, &HandleLookupPlayerAccountCommand, "", NULL },
- { "email", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER_EMAIL, true, &HandleLookupPlayerEmailCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "ip", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER_IP, true, &HandleLookupPlayerIpCommand, "" },
+ { "account", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER_ACCOUNT, true, &HandleLookupPlayerAccountCommand, "" },
+ { "email", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER_EMAIL, true, &HandleLookupPlayerEmailCommand, "" },
};
- static ChatCommand lookupSpellCommandTable[] =
+ static std::vector<ChatCommand> lookupSpellCommandTable =
{
- { "id", rbac::RBAC_PERM_COMMAND_LOOKUP_SPELL_ID, true, &HandleLookupSpellIdCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_LOOKUP_SPELL, true, &HandleLookupSpellCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "id", rbac::RBAC_PERM_COMMAND_LOOKUP_SPELL_ID, true, &HandleLookupSpellIdCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_LOOKUP_SPELL, true, &HandleLookupSpellCommand, "" },
};
- static ChatCommand lookupCommandTable[] =
+ static std::vector<ChatCommand> lookupCommandTable =
{
- { "area", rbac::RBAC_PERM_COMMAND_LOOKUP_AREA, true, &HandleLookupAreaCommand, "", NULL },
- { "creature", rbac::RBAC_PERM_COMMAND_LOOKUP_CREATURE, true, &HandleLookupCreatureCommand, "", NULL },
- { "event", rbac::RBAC_PERM_COMMAND_LOOKUP_EVENT, true, &HandleLookupEventCommand, "", NULL },
- { "faction", rbac::RBAC_PERM_COMMAND_LOOKUP_FACTION, true, &HandleLookupFactionCommand, "", NULL },
- { "item", rbac::RBAC_PERM_COMMAND_LOOKUP_ITEM, true, &HandleLookupItemCommand, "", NULL },
- { "itemset", rbac::RBAC_PERM_COMMAND_LOOKUP_ITEMSET, true, &HandleLookupItemSetCommand, "", NULL },
- { "object", rbac::RBAC_PERM_COMMAND_LOOKUP_OBJECT, true, &HandleLookupObjectCommand, "", NULL },
- { "quest", rbac::RBAC_PERM_COMMAND_LOOKUP_QUEST, true, &HandleLookupQuestCommand, "", NULL },
+ { "area", rbac::RBAC_PERM_COMMAND_LOOKUP_AREA, true, &HandleLookupAreaCommand, "" },
+ { "creature", rbac::RBAC_PERM_COMMAND_LOOKUP_CREATURE, true, &HandleLookupCreatureCommand, "" },
+ { "event", rbac::RBAC_PERM_COMMAND_LOOKUP_EVENT, true, &HandleLookupEventCommand, "" },
+ { "faction", rbac::RBAC_PERM_COMMAND_LOOKUP_FACTION, true, &HandleLookupFactionCommand, "" },
+ { "item", rbac::RBAC_PERM_COMMAND_LOOKUP_ITEM, true, &HandleLookupItemCommand, "" },
+ { "itemset", rbac::RBAC_PERM_COMMAND_LOOKUP_ITEMSET, true, &HandleLookupItemSetCommand, "" },
+ { "object", rbac::RBAC_PERM_COMMAND_LOOKUP_OBJECT, true, &HandleLookupObjectCommand, "" },
+ { "quest", rbac::RBAC_PERM_COMMAND_LOOKUP_QUEST, true, &HandleLookupQuestCommand, "" },
{ "player", rbac::RBAC_PERM_COMMAND_LOOKUP_PLAYER, true, NULL, "", lookupPlayerCommandTable },
- { "skill", rbac::RBAC_PERM_COMMAND_LOOKUP_SKILL, true, &HandleLookupSkillCommand, "", NULL },
+ { "skill", rbac::RBAC_PERM_COMMAND_LOOKUP_SKILL, true, &HandleLookupSkillCommand, "" },
{ "spell", rbac::RBAC_PERM_COMMAND_LOOKUP_SPELL, true, NULL, "", lookupSpellCommandTable },
- { "taxinode", rbac::RBAC_PERM_COMMAND_LOOKUP_TAXINODE, true, &HandleLookupTaxiNodeCommand, "", NULL },
- { "tele", rbac::RBAC_PERM_COMMAND_LOOKUP_TELE, true, &HandleLookupTeleCommand, "", NULL },
- { "title", rbac::RBAC_PERM_COMMAND_LOOKUP_TITLE, true, &HandleLookupTitleCommand, "", NULL },
- { "map", rbac::RBAC_PERM_COMMAND_LOOKUP_MAP, true, &HandleLookupMapCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "taxinode", rbac::RBAC_PERM_COMMAND_LOOKUP_TAXINODE, true, &HandleLookupTaxiNodeCommand, "" },
+ { "tele", rbac::RBAC_PERM_COMMAND_LOOKUP_TELE, true, &HandleLookupTeleCommand, "" },
+ { "title", rbac::RBAC_PERM_COMMAND_LOOKUP_TITLE, true, &HandleLookupTitleCommand, "" },
+ { "map", rbac::RBAC_PERM_COMMAND_LOOKUP_MAP, true, &HandleLookupMapCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "lookup", rbac::RBAC_PERM_COMMAND_LOOKUP, true, NULL, "", lookupCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_message.cpp b/src/server/scripts/Commands/cs_message.cpp
index 922958f7222..f3c1f4d7df8 100644
--- a/src/server/scripts/Commands/cs_message.cpp
+++ b/src/server/scripts/Commands/cs_message.cpp
@@ -34,29 +34,26 @@ class message_commandscript : public CommandScript
public:
message_commandscript() : CommandScript("message_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand channelSetCommandTable[] =
+ static std::vector<ChatCommand> channelSetCommandTable =
{
- { "ownership", rbac::RBAC_PERM_COMMAND_CHANNEL_SET_OWNERSHIP, false, &HandleChannelSetOwnership, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "ownership", rbac::RBAC_PERM_COMMAND_CHANNEL_SET_OWNERSHIP, false, &HandleChannelSetOwnership, "" },
};
- static ChatCommand channelCommandTable[] =
+ static std::vector<ChatCommand> channelCommandTable =
{
{ "set", rbac::RBAC_PERM_COMMAND_CHANNEL_SET, true, NULL, "", channelSetCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "channel", rbac::RBAC_PERM_COMMAND_CHANNEL, true, NULL, "", channelCommandTable },
- { "nameannounce", rbac::RBAC_PERM_COMMAND_NAMEANNOUNCE, true, &HandleNameAnnounceCommand, "", NULL },
- { "gmnameannounce", rbac::RBAC_PERM_COMMAND_GMNAMEANNOUNCE, true, &HandleGMNameAnnounceCommand, "", NULL },
- { "announce", rbac::RBAC_PERM_COMMAND_ANNOUNCE, true, &HandleAnnounceCommand, "", NULL },
- { "gmannounce", rbac::RBAC_PERM_COMMAND_GMANNOUNCE, true, &HandleGMAnnounceCommand, "", NULL },
- { "notify", rbac::RBAC_PERM_COMMAND_NOTIFY, true, &HandleNotifyCommand, "", NULL },
- { "gmnotify", rbac::RBAC_PERM_COMMAND_GMNOTIFY, true, &HandleGMNotifyCommand, "", NULL },
- { "whispers", rbac::RBAC_PERM_COMMAND_WHISPERS, false, &HandleWhispersCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "nameannounce", rbac::RBAC_PERM_COMMAND_NAMEANNOUNCE, true, &HandleNameAnnounceCommand, "" },
+ { "gmnameannounce", rbac::RBAC_PERM_COMMAND_GMNAMEANNOUNCE, true, &HandleGMNameAnnounceCommand, "" },
+ { "announce", rbac::RBAC_PERM_COMMAND_ANNOUNCE, true, &HandleAnnounceCommand, "" },
+ { "gmannounce", rbac::RBAC_PERM_COMMAND_GMANNOUNCE, true, &HandleGMAnnounceCommand, "" },
+ { "notify", rbac::RBAC_PERM_COMMAND_NOTIFY, true, &HandleNotifyCommand, "" },
+ { "gmnotify", rbac::RBAC_PERM_COMMAND_GMNOTIFY, true, &HandleGMNotifyCommand, "" },
+ { "whispers", rbac::RBAC_PERM_COMMAND_WHISPERS, false, &HandleWhispersCommand, "" },
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp
index 725fdd4c27d..b22f56ef923 100644
--- a/src/server/scripts/Commands/cs_misc.cpp
+++ b/src/server/scripts/Commands/cs_misc.cpp
@@ -42,62 +42,61 @@ class misc_commandscript : public CommandScript
public:
misc_commandscript() : CommandScript("misc_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand commandTable[] =
- {
- { "additem", rbac::RBAC_PERM_COMMAND_ADDITEM, false, &HandleAddItemCommand, "", NULL },
- { "additemset", rbac::RBAC_PERM_COMMAND_ADDITEMSET, false, &HandleAddItemSetCommand, "", NULL },
- { "appear", rbac::RBAC_PERM_COMMAND_APPEAR, false, &HandleAppearCommand, "", NULL },
- { "aura", rbac::RBAC_PERM_COMMAND_AURA, false, &HandleAuraCommand, "", NULL },
- { "bank", rbac::RBAC_PERM_COMMAND_BANK, false, &HandleBankCommand, "", NULL },
- { "bindsight", rbac::RBAC_PERM_COMMAND_BINDSIGHT, false, &HandleBindSightCommand, "", NULL },
- { "combatstop", rbac::RBAC_PERM_COMMAND_COMBATSTOP, true, &HandleCombatStopCommand, "", NULL },
- { "cometome", rbac::RBAC_PERM_COMMAND_COMETOME, false, &HandleComeToMeCommand, "", NULL },
- { "commands", rbac::RBAC_PERM_COMMAND_COMMANDS, true, &HandleCommandsCommand, "", NULL },
- { "cooldown", rbac::RBAC_PERM_COMMAND_COOLDOWN, false, &HandleCooldownCommand, "", NULL },
- { "damage", rbac::RBAC_PERM_COMMAND_DAMAGE, false, &HandleDamageCommand, "", NULL },
- { "dev", rbac::RBAC_PERM_COMMAND_DEV, false, &HandleDevCommand, "", NULL },
- { "die", rbac::RBAC_PERM_COMMAND_DIE, false, &HandleDieCommand, "", NULL },
- { "dismount", rbac::RBAC_PERM_COMMAND_DISMOUNT, false, &HandleDismountCommand, "", NULL },
- { "distance", rbac::RBAC_PERM_COMMAND_DISTANCE, false, &HandleGetDistanceCommand, "", NULL },
- { "flusharenapoints", rbac::RBAC_PERM_COMMAND_FLUSHARENAPOINTS, false, &HandleFlushArenaPointsCommand, "", NULL },
- { "freeze", rbac::RBAC_PERM_COMMAND_FREEZE, false, &HandleFreezeCommand, "", NULL },
- { "gps", rbac::RBAC_PERM_COMMAND_GPS, false, &HandleGPSCommand, "", NULL },
- { "guid", rbac::RBAC_PERM_COMMAND_GUID, false, &HandleGUIDCommand, "", NULL },
- { "help", rbac::RBAC_PERM_COMMAND_HELP, true, &HandleHelpCommand, "", NULL },
- { "hidearea", rbac::RBAC_PERM_COMMAND_HIDEAREA, false, &HandleHideAreaCommand, "", NULL },
- { "itemmove", rbac::RBAC_PERM_COMMAND_ITEMMOVE, false, &HandleItemMoveCommand, "", NULL },
- { "kick", rbac::RBAC_PERM_COMMAND_KICK, true, &HandleKickPlayerCommand, "", NULL },
- { "linkgrave", rbac::RBAC_PERM_COMMAND_LINKGRAVE, false, &HandleLinkGraveCommand, "", NULL },
- { "listfreeze", rbac::RBAC_PERM_COMMAND_LISTFREEZE, false, &HandleListFreezeCommand, "", NULL },
- { "maxskill", rbac::RBAC_PERM_COMMAND_MAXSKILL, false, &HandleMaxSkillCommand, "", NULL },
- { "movegens", rbac::RBAC_PERM_COMMAND_MOVEGENS, false, &HandleMovegensCommand, "", NULL },
- { "mute", rbac::RBAC_PERM_COMMAND_MUTE, true, &HandleMuteCommand, "", NULL },
- { "mutehistory", rbac::RBAC_PERM_COMMAND_MUTEHISTORY, true, &HandleMuteInfoCommand, "", NULL },
- { "neargrave", rbac::RBAC_PERM_COMMAND_NEARGRAVE, false, &HandleNearGraveCommand, "", NULL },
- { "pinfo", rbac::RBAC_PERM_COMMAND_PINFO, true, &HandlePInfoCommand, "", NULL },
- { "playall", rbac::RBAC_PERM_COMMAND_PLAYALL, false, &HandlePlayAllCommand, "", NULL },
- { "possess", rbac::RBAC_PERM_COMMAND_POSSESS, false, &HandlePossessCommand, "", NULL },
- { "pvpstats", rbac::RBAC_PERM_COMMAND_PVPSTATS, true, &HandlePvPstatsCommand, "", NULL },
- { "recall", rbac::RBAC_PERM_COMMAND_RECALL, false, &HandleRecallCommand, "", NULL },
- { "repairitems", rbac::RBAC_PERM_COMMAND_REPAIRITEMS, true, &HandleRepairitemsCommand, "", NULL },
- { "respawn", rbac::RBAC_PERM_COMMAND_RESPAWN, false, &HandleRespawnCommand, "", NULL },
- { "revive", rbac::RBAC_PERM_COMMAND_REVIVE, true, &HandleReviveCommand, "", NULL },
- { "saveall", rbac::RBAC_PERM_COMMAND_SAVEALL, true, &HandleSaveAllCommand, "", NULL },
- { "save", rbac::RBAC_PERM_COMMAND_SAVE, false, &HandleSaveCommand, "", NULL },
- { "setskill", rbac::RBAC_PERM_COMMAND_SETSKILL, false, &HandleSetSkillCommand, "", NULL },
- { "showarea", rbac::RBAC_PERM_COMMAND_SHOWAREA, false, &HandleShowAreaCommand, "", NULL },
- { "summon", rbac::RBAC_PERM_COMMAND_SUMMON, false, &HandleSummonCommand, "", NULL },
- { "unaura", rbac::RBAC_PERM_COMMAND_UNAURA, false, &HandleUnAuraCommand, "", NULL },
- { "unbindsight", rbac::RBAC_PERM_COMMAND_UNBINDSIGHT, false, HandleUnbindSightCommand, "", NULL },
- { "unfreeze", rbac::RBAC_PERM_COMMAND_UNFREEZE, false, &HandleUnFreezeCommand, "", NULL },
- { "unmute", rbac::RBAC_PERM_COMMAND_UNMUTE, true, &HandleUnmuteCommand, "", NULL },
- { "unpossess", rbac::RBAC_PERM_COMMAND_UNPOSSESS, false, &HandleUnPossessCommand, "", NULL },
- { "unstuck", rbac::RBAC_PERM_COMMAND_UNSTUCK, true, &HandleUnstuckCommand, "", NULL },
- { "wchange", rbac::RBAC_PERM_COMMAND_WCHANGE, false, &HandleChangeWeather, "", NULL },
- { "mailbox", rbac::RBAC_PERM_COMMAND_MAILBOX, false, &HandleMailBoxCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ static std::vector<ChatCommand> commandTable =
+ {
+ { "additem", rbac::RBAC_PERM_COMMAND_ADDITEM, false, &HandleAddItemCommand, "" },
+ { "additemset", rbac::RBAC_PERM_COMMAND_ADDITEMSET, false, &HandleAddItemSetCommand, "" },
+ { "appear", rbac::RBAC_PERM_COMMAND_APPEAR, false, &HandleAppearCommand, "" },
+ { "aura", rbac::RBAC_PERM_COMMAND_AURA, false, &HandleAuraCommand, "" },
+ { "bank", rbac::RBAC_PERM_COMMAND_BANK, false, &HandleBankCommand, "" },
+ { "bindsight", rbac::RBAC_PERM_COMMAND_BINDSIGHT, false, &HandleBindSightCommand, "" },
+ { "combatstop", rbac::RBAC_PERM_COMMAND_COMBATSTOP, true, &HandleCombatStopCommand, "" },
+ { "cometome", rbac::RBAC_PERM_COMMAND_COMETOME, false, &HandleComeToMeCommand, "" },
+ { "commands", rbac::RBAC_PERM_COMMAND_COMMANDS, true, &HandleCommandsCommand, "" },
+ { "cooldown", rbac::RBAC_PERM_COMMAND_COOLDOWN, false, &HandleCooldownCommand, "" },
+ { "damage", rbac::RBAC_PERM_COMMAND_DAMAGE, false, &HandleDamageCommand, "" },
+ { "dev", rbac::RBAC_PERM_COMMAND_DEV, false, &HandleDevCommand, "" },
+ { "die", rbac::RBAC_PERM_COMMAND_DIE, false, &HandleDieCommand, "" },
+ { "dismount", rbac::RBAC_PERM_COMMAND_DISMOUNT, false, &HandleDismountCommand, "" },
+ { "distance", rbac::RBAC_PERM_COMMAND_DISTANCE, false, &HandleGetDistanceCommand, "" },
+ { "flusharenapoints", rbac::RBAC_PERM_COMMAND_FLUSHARENAPOINTS, false, &HandleFlushArenaPointsCommand, "" },
+ { "freeze", rbac::RBAC_PERM_COMMAND_FREEZE, false, &HandleFreezeCommand, "" },
+ { "gps", rbac::RBAC_PERM_COMMAND_GPS, false, &HandleGPSCommand, "" },
+ { "guid", rbac::RBAC_PERM_COMMAND_GUID, false, &HandleGUIDCommand, "" },
+ { "help", rbac::RBAC_PERM_COMMAND_HELP, true, &HandleHelpCommand, "" },
+ { "hidearea", rbac::RBAC_PERM_COMMAND_HIDEAREA, false, &HandleHideAreaCommand, "" },
+ { "itemmove", rbac::RBAC_PERM_COMMAND_ITEMMOVE, false, &HandleItemMoveCommand, "" },
+ { "kick", rbac::RBAC_PERM_COMMAND_KICK, true, &HandleKickPlayerCommand, "" },
+ { "linkgrave", rbac::RBAC_PERM_COMMAND_LINKGRAVE, false, &HandleLinkGraveCommand, "" },
+ { "listfreeze", rbac::RBAC_PERM_COMMAND_LISTFREEZE, false, &HandleListFreezeCommand, "" },
+ { "maxskill", rbac::RBAC_PERM_COMMAND_MAXSKILL, false, &HandleMaxSkillCommand, "" },
+ { "movegens", rbac::RBAC_PERM_COMMAND_MOVEGENS, false, &HandleMovegensCommand, "" },
+ { "mute", rbac::RBAC_PERM_COMMAND_MUTE, true, &HandleMuteCommand, "" },
+ { "mutehistory", rbac::RBAC_PERM_COMMAND_MUTEHISTORY, true, &HandleMuteInfoCommand, "" },
+ { "neargrave", rbac::RBAC_PERM_COMMAND_NEARGRAVE, false, &HandleNearGraveCommand, "" },
+ { "pinfo", rbac::RBAC_PERM_COMMAND_PINFO, true, &HandlePInfoCommand, "" },
+ { "playall", rbac::RBAC_PERM_COMMAND_PLAYALL, false, &HandlePlayAllCommand, "" },
+ { "possess", rbac::RBAC_PERM_COMMAND_POSSESS, false, &HandlePossessCommand, "" },
+ { "pvpstats", rbac::RBAC_PERM_COMMAND_PVPSTATS, true, &HandlePvPstatsCommand, "" },
+ { "recall", rbac::RBAC_PERM_COMMAND_RECALL, false, &HandleRecallCommand, "" },
+ { "repairitems", rbac::RBAC_PERM_COMMAND_REPAIRITEMS, true, &HandleRepairitemsCommand, "" },
+ { "respawn", rbac::RBAC_PERM_COMMAND_RESPAWN, false, &HandleRespawnCommand, "" },
+ { "revive", rbac::RBAC_PERM_COMMAND_REVIVE, true, &HandleReviveCommand, "" },
+ { "saveall", rbac::RBAC_PERM_COMMAND_SAVEALL, true, &HandleSaveAllCommand, "" },
+ { "save", rbac::RBAC_PERM_COMMAND_SAVE, false, &HandleSaveCommand, "" },
+ { "setskill", rbac::RBAC_PERM_COMMAND_SETSKILL, false, &HandleSetSkillCommand, "" },
+ { "showarea", rbac::RBAC_PERM_COMMAND_SHOWAREA, false, &HandleShowAreaCommand, "" },
+ { "summon", rbac::RBAC_PERM_COMMAND_SUMMON, false, &HandleSummonCommand, "" },
+ { "unaura", rbac::RBAC_PERM_COMMAND_UNAURA, false, &HandleUnAuraCommand, "" },
+ { "unbindsight", rbac::RBAC_PERM_COMMAND_UNBINDSIGHT, false, HandleUnbindSightCommand, "" },
+ { "unfreeze", rbac::RBAC_PERM_COMMAND_UNFREEZE, false, &HandleUnFreezeCommand, "" },
+ { "unmute", rbac::RBAC_PERM_COMMAND_UNMUTE, true, &HandleUnmuteCommand, "" },
+ { "unpossess", rbac::RBAC_PERM_COMMAND_UNPOSSESS, false, &HandleUnPossessCommand, "" },
+ { "unstuck", rbac::RBAC_PERM_COMMAND_UNSTUCK, true, &HandleUnstuckCommand, "" },
+ { "wchange", rbac::RBAC_PERM_COMMAND_WCHANGE, false, &HandleChangeWeather, "" },
+ { "mailbox", rbac::RBAC_PERM_COMMAND_MAILBOX, false, &HandleMailBoxCommand, "" },
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_mmaps.cpp b/src/server/scripts/Commands/cs_mmaps.cpp
index e06159a6748..479c34dd90c 100644
--- a/src/server/scripts/Commands/cs_mmaps.cpp
+++ b/src/server/scripts/Commands/cs_mmaps.cpp
@@ -42,22 +42,20 @@ class mmaps_commandscript : public CommandScript
public:
mmaps_commandscript() : CommandScript("mmaps_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand mmapCommandTable[] =
+ static std::vector<ChatCommand> mmapCommandTable =
{
- { "loadedtiles", rbac::RBAC_PERM_COMMAND_MMAP_LOADEDTILES, false, &HandleMmapLoadedTilesCommand, "", NULL },
- { "loc", rbac::RBAC_PERM_COMMAND_MMAP_LOC, false, &HandleMmapLocCommand, "", NULL },
- { "path", rbac::RBAC_PERM_COMMAND_MMAP_PATH, false, &HandleMmapPathCommand, "", NULL },
- { "stats", rbac::RBAC_PERM_COMMAND_MMAP_STATS, false, &HandleMmapStatsCommand, "", NULL },
- { "testarea", rbac::RBAC_PERM_COMMAND_MMAP_TESTAREA, false, &HandleMmapTestArea, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "loadedtiles", rbac::RBAC_PERM_COMMAND_MMAP_LOADEDTILES, false, &HandleMmapLoadedTilesCommand, "" },
+ { "loc", rbac::RBAC_PERM_COMMAND_MMAP_LOC, false, &HandleMmapLocCommand, "" },
+ { "path", rbac::RBAC_PERM_COMMAND_MMAP_PATH, false, &HandleMmapPathCommand, "" },
+ { "stats", rbac::RBAC_PERM_COMMAND_MMAP_STATS, false, &HandleMmapStatsCommand, "" },
+ { "testarea", rbac::RBAC_PERM_COMMAND_MMAP_TESTAREA, false, &HandleMmapTestArea, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
- { "mmap", rbac::RBAC_PERM_COMMAND_MMAP, true, NULL, "", mmapCommandTable },
- { NULL, 0, false, NULL, "", NULL }
+ { "mmap", rbac::RBAC_PERM_COMMAND_MMAP, true, NULL, "", mmapCommandTable },
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_modify.cpp b/src/server/scripts/Commands/cs_modify.cpp
index bf82b81a8b7..a3eed4dfd5d 100644
--- a/src/server/scripts/Commands/cs_modify.cpp
+++ b/src/server/scripts/Commands/cs_modify.cpp
@@ -36,49 +36,46 @@ class modify_commandscript : public CommandScript
public:
modify_commandscript() : CommandScript("modify_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand modifyspeedCommandTable[] =
+ static std::vector<ChatCommand> modifyspeedCommandTable =
{
- { "all", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_ALL, false, &HandleModifyASpeedCommand, "", NULL },
- { "backwalk", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_BACKWALK, false, &HandleModifyBWalkCommand, "", NULL },
- { "fly", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_FLY, false, &HandleModifyFlyCommand, "", NULL },
- { "walk", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_WALK, false, &HandleModifySpeedCommand, "", NULL },
- { "swim", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_SWIM, false, &HandleModifySwimCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED, false, &HandleModifyASpeedCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "all", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_ALL, false, &HandleModifyASpeedCommand, "" },
+ { "backwalk", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_BACKWALK, false, &HandleModifyBWalkCommand, "" },
+ { "fly", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_FLY, false, &HandleModifyFlyCommand, "" },
+ { "walk", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_WALK, false, &HandleModifySpeedCommand, "" },
+ { "swim", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED_SWIM, false, &HandleModifySwimCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED, false, &HandleModifyASpeedCommand, "" },
};
- static ChatCommand modifyCommandTable[] =
+ static std::vector<ChatCommand> modifyCommandTable =
{
- { "arenapoints", rbac::RBAC_PERM_COMMAND_MODIFY_ARENAPOINTS, false, &HandleModifyArenaCommand, "", NULL },
- { "bit", rbac::RBAC_PERM_COMMAND_MODIFY_BIT, false, &HandleModifyBitCommand, "", NULL },
- { "drunk", rbac::RBAC_PERM_COMMAND_MODIFY_DRUNK, false, &HandleModifyDrunkCommand, "", NULL },
- { "energy", rbac::RBAC_PERM_COMMAND_MODIFY_ENERGY, false, &HandleModifyEnergyCommand, "", NULL },
- { "faction", rbac::RBAC_PERM_COMMAND_MODIFY_FACTION, false, &HandleModifyFactionCommand, "", NULL },
- { "gender", rbac::RBAC_PERM_COMMAND_MODIFY_GENDER, false, &HandleModifyGenderCommand, "", NULL },
- { "honor", rbac::RBAC_PERM_COMMAND_MODIFY_HONOR, false, &HandleModifyHonorCommand, "", NULL },
- { "hp", rbac::RBAC_PERM_COMMAND_MODIFY_HP, false, &HandleModifyHPCommand, "", NULL },
- { "mana", rbac::RBAC_PERM_COMMAND_MODIFY_MANA, false, &HandleModifyManaCommand, "", NULL },
- { "money", rbac::RBAC_PERM_COMMAND_MODIFY_MONEY, false, &HandleModifyMoneyCommand, "", NULL },
- { "mount", rbac::RBAC_PERM_COMMAND_MODIFY_MOUNT, false, &HandleModifyMountCommand, "", NULL },
- { "phase", rbac::RBAC_PERM_COMMAND_MODIFY_PHASE, false, &HandleModifyPhaseCommand, "", NULL },
- { "rage", rbac::RBAC_PERM_COMMAND_MODIFY_RAGE, false, &HandleModifyRageCommand, "", NULL },
- { "reputation", rbac::RBAC_PERM_COMMAND_MODIFY_REPUTATION, false, &HandleModifyRepCommand, "", NULL },
- { "runicpower", rbac::RBAC_PERM_COMMAND_MODIFY_RUNICPOWER, false, &HandleModifyRunicPowerCommand, "", NULL },
- { "scale", rbac::RBAC_PERM_COMMAND_MODIFY_SCALE, false, &HandleModifyScaleCommand, "", NULL },
+ { "arenapoints", rbac::RBAC_PERM_COMMAND_MODIFY_ARENAPOINTS, false, &HandleModifyArenaCommand, "" },
+ { "bit", rbac::RBAC_PERM_COMMAND_MODIFY_BIT, false, &HandleModifyBitCommand, "" },
+ { "drunk", rbac::RBAC_PERM_COMMAND_MODIFY_DRUNK, false, &HandleModifyDrunkCommand, "" },
+ { "energy", rbac::RBAC_PERM_COMMAND_MODIFY_ENERGY, false, &HandleModifyEnergyCommand, "" },
+ { "faction", rbac::RBAC_PERM_COMMAND_MODIFY_FACTION, false, &HandleModifyFactionCommand, "" },
+ { "gender", rbac::RBAC_PERM_COMMAND_MODIFY_GENDER, false, &HandleModifyGenderCommand, "" },
+ { "honor", rbac::RBAC_PERM_COMMAND_MODIFY_HONOR, false, &HandleModifyHonorCommand, "" },
+ { "hp", rbac::RBAC_PERM_COMMAND_MODIFY_HP, false, &HandleModifyHPCommand, "" },
+ { "mana", rbac::RBAC_PERM_COMMAND_MODIFY_MANA, false, &HandleModifyManaCommand, "" },
+ { "money", rbac::RBAC_PERM_COMMAND_MODIFY_MONEY, false, &HandleModifyMoneyCommand, "" },
+ { "mount", rbac::RBAC_PERM_COMMAND_MODIFY_MOUNT, false, &HandleModifyMountCommand, "" },
+ { "phase", rbac::RBAC_PERM_COMMAND_MODIFY_PHASE, false, &HandleModifyPhaseCommand, "" },
+ { "rage", rbac::RBAC_PERM_COMMAND_MODIFY_RAGE, false, &HandleModifyRageCommand, "" },
+ { "reputation", rbac::RBAC_PERM_COMMAND_MODIFY_REPUTATION, false, &HandleModifyRepCommand, "" },
+ { "runicpower", rbac::RBAC_PERM_COMMAND_MODIFY_RUNICPOWER, false, &HandleModifyRunicPowerCommand, "" },
+ { "scale", rbac::RBAC_PERM_COMMAND_MODIFY_SCALE, false, &HandleModifyScaleCommand, "" },
{ "speed", rbac::RBAC_PERM_COMMAND_MODIFY_SPEED, false, NULL, "", modifyspeedCommandTable },
- { "spell", rbac::RBAC_PERM_COMMAND_MODIFY_SPELL, false, &HandleModifySpellCommand, "", NULL },
- { "standstate", rbac::RBAC_PERM_COMMAND_MODIFY_STANDSTATE, false, &HandleModifyStandStateCommand, "", NULL },
- { "talentpoints", rbac::RBAC_PERM_COMMAND_MODIFY_TALENTPOINTS, false, &HandleModifyTalentCommand, "", NULL },
- { "xp", rbac::RBAC_PERM_COMMAND_MODIFY_XP, false, &HandleModifyXPCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "spell", rbac::RBAC_PERM_COMMAND_MODIFY_SPELL, false, &HandleModifySpellCommand, "" },
+ { "standstate", rbac::RBAC_PERM_COMMAND_MODIFY_STANDSTATE, false, &HandleModifyStandStateCommand, "" },
+ { "talentpoints", rbac::RBAC_PERM_COMMAND_MODIFY_TALENTPOINTS, false, &HandleModifyTalentCommand, "" },
+ { "xp", rbac::RBAC_PERM_COMMAND_MODIFY_XP, false, &HandleModifyXPCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
- { "morph", rbac::RBAC_PERM_COMMAND_MORPH, false, &HandleModifyMorphCommand, "", NULL },
- { "demorph", rbac::RBAC_PERM_COMMAND_DEMORPH, false, &HandleDeMorphCommand, "", NULL },
+ { "morph", rbac::RBAC_PERM_COMMAND_MORPH, false, &HandleModifyMorphCommand, "" },
+ { "demorph", rbac::RBAC_PERM_COMMAND_DEMORPH, false, &HandleDeMorphCommand, "" },
{ "modify", rbac::RBAC_PERM_COMMAND_MODIFY, false, NULL, "", modifyCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_npc.cpp b/src/server/scripts/Commands/cs_npc.cpp
index 8e7a1387a32..99c10b074a0 100644
--- a/src/server/scripts/Commands/cs_npc.cpp
+++ b/src/server/scripts/Commands/cs_npc.cpp
@@ -170,69 +170,61 @@ class npc_commandscript : public CommandScript
public:
npc_commandscript() : CommandScript("npc_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand npcAddCommandTable[] =
- {
- { "formation", rbac::RBAC_PERM_COMMAND_NPC_ADD_FORMATION, false, &HandleNpcAddFormationCommand, "", NULL },
- { "item", rbac::RBAC_PERM_COMMAND_NPC_ADD_ITEM, false, &HandleNpcAddVendorItemCommand, "", NULL },
- { "move", rbac::RBAC_PERM_COMMAND_NPC_ADD_MOVE, false, &HandleNpcAddMoveCommand, "", NULL },
- { "temp", rbac::RBAC_PERM_COMMAND_NPC_ADD_TEMP, false, &HandleNpcAddTempSpawnCommand, "", NULL },
- //{ "weapon", rbac::RBAC_PERM_COMMAND_NPC_ADD_WEAPON, false, &HandleNpcAddWeaponCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_NPC_ADD, false, &HandleNpcAddCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ static std::vector<ChatCommand> npcAddCommandTable =
+ {
+ { "formation", rbac::RBAC_PERM_COMMAND_NPC_ADD_FORMATION, false, &HandleNpcAddFormationCommand, "" },
+ { "item", rbac::RBAC_PERM_COMMAND_NPC_ADD_ITEM, false, &HandleNpcAddVendorItemCommand, "" },
+ { "move", rbac::RBAC_PERM_COMMAND_NPC_ADD_MOVE, false, &HandleNpcAddMoveCommand, "" },
+ { "temp", rbac::RBAC_PERM_COMMAND_NPC_ADD_TEMP, false, &HandleNpcAddTempSpawnCommand, "" },
+ //{ "weapon", rbac::RBAC_PERM_COMMAND_NPC_ADD_WEAPON, false, &HandleNpcAddWeaponCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_NPC_ADD, false, &HandleNpcAddCommand, "" },
};
- static ChatCommand npcDeleteCommandTable[] =
+ static std::vector<ChatCommand> npcDeleteCommandTable =
{
- { "item", rbac::RBAC_PERM_COMMAND_NPC_DELETE_ITEM, false, &HandleNpcDeleteVendorItemCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_NPC_DELETE, false, &HandleNpcDeleteCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "item", rbac::RBAC_PERM_COMMAND_NPC_DELETE_ITEM, false, &HandleNpcDeleteVendorItemCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_NPC_DELETE, false, &HandleNpcDeleteCommand, "" },
};
- static ChatCommand npcFollowCommandTable[] =
+ static std::vector<ChatCommand> npcFollowCommandTable =
{
- { "stop", rbac::RBAC_PERM_COMMAND_NPC_FOLLOW_STOP, false, &HandleNpcUnFollowCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_NPC_FOLLOW, false, &HandleNpcFollowCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "stop", rbac::RBAC_PERM_COMMAND_NPC_FOLLOW_STOP, false, &HandleNpcUnFollowCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_NPC_FOLLOW, false, &HandleNpcFollowCommand, "" },
};
- static ChatCommand npcSetCommandTable[] =
- {
- { "allowmove", rbac::RBAC_PERM_COMMAND_NPC_SET_ALLOWMOVE, false, &HandleNpcSetAllowMovementCommand, "", NULL },
- { "entry", rbac::RBAC_PERM_COMMAND_NPC_SET_ENTRY, false, &HandleNpcSetEntryCommand, "", NULL },
- { "factionid", rbac::RBAC_PERM_COMMAND_NPC_SET_FACTIONID, false, &HandleNpcSetFactionIdCommand, "", NULL },
- { "flag", rbac::RBAC_PERM_COMMAND_NPC_SET_FLAG, false, &HandleNpcSetFlagCommand, "", NULL },
- { "level", rbac::RBAC_PERM_COMMAND_NPC_SET_LEVEL, false, &HandleNpcSetLevelCommand, "", NULL },
- { "link", rbac::RBAC_PERM_COMMAND_NPC_SET_LINK, false, &HandleNpcSetLinkCommand, "", NULL },
- { "model", rbac::RBAC_PERM_COMMAND_NPC_SET_MODEL, false, &HandleNpcSetModelCommand, "", NULL },
- { "movetype", rbac::RBAC_PERM_COMMAND_NPC_SET_MOVETYPE, false, &HandleNpcSetMoveTypeCommand, "", NULL },
- { "phase", rbac::RBAC_PERM_COMMAND_NPC_SET_PHASE, false, &HandleNpcSetPhaseCommand, "", NULL },
- { "spawndist", rbac::RBAC_PERM_COMMAND_NPC_SET_SPAWNDIST, false, &HandleNpcSetSpawnDistCommand, "", NULL },
- { "spawntime", rbac::RBAC_PERM_COMMAND_NPC_SET_SPAWNTIME, false, &HandleNpcSetSpawnTimeCommand, "", NULL },
- { "data", rbac::RBAC_PERM_COMMAND_NPC_SET_DATA, false, &HandleNpcSetDataCommand, "", NULL },
- //{ "name", rbac::RBAC_PERM_COMMAND_NPC_SET_NAME, false, &HandleNpcSetNameCommand, "", NULL },
- //{ "subname", rbac::RBAC_PERM_COMMAND_NPC_SET_SUBNAME, false, &HandleNpcSetSubNameCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ static std::vector<ChatCommand> npcSetCommandTable =
+ {
+ { "allowmove", rbac::RBAC_PERM_COMMAND_NPC_SET_ALLOWMOVE, false, &HandleNpcSetAllowMovementCommand, "" },
+ { "entry", rbac::RBAC_PERM_COMMAND_NPC_SET_ENTRY, false, &HandleNpcSetEntryCommand, "" },
+ { "factionid", rbac::RBAC_PERM_COMMAND_NPC_SET_FACTIONID, false, &HandleNpcSetFactionIdCommand, "" },
+ { "flag", rbac::RBAC_PERM_COMMAND_NPC_SET_FLAG, false, &HandleNpcSetFlagCommand, "" },
+ { "level", rbac::RBAC_PERM_COMMAND_NPC_SET_LEVEL, false, &HandleNpcSetLevelCommand, "" },
+ { "link", rbac::RBAC_PERM_COMMAND_NPC_SET_LINK, false, &HandleNpcSetLinkCommand, "" },
+ { "model", rbac::RBAC_PERM_COMMAND_NPC_SET_MODEL, false, &HandleNpcSetModelCommand, "" },
+ { "movetype", rbac::RBAC_PERM_COMMAND_NPC_SET_MOVETYPE, false, &HandleNpcSetMoveTypeCommand, "" },
+ { "phase", rbac::RBAC_PERM_COMMAND_NPC_SET_PHASE, false, &HandleNpcSetPhaseCommand, "" },
+ { "spawndist", rbac::RBAC_PERM_COMMAND_NPC_SET_SPAWNDIST, false, &HandleNpcSetSpawnDistCommand, "" },
+ { "spawntime", rbac::RBAC_PERM_COMMAND_NPC_SET_SPAWNTIME, false, &HandleNpcSetSpawnTimeCommand, "" },
+ { "data", rbac::RBAC_PERM_COMMAND_NPC_SET_DATA, false, &HandleNpcSetDataCommand, "" },
};
- static ChatCommand npcCommandTable[] =
- {
- { "info", rbac::RBAC_PERM_COMMAND_NPC_INFO, false, &HandleNpcInfoCommand, "", NULL },
- { "near", rbac::RBAC_PERM_COMMAND_NPC_NEAR, false, &HandleNpcNearCommand, "", NULL },
- { "move", rbac::RBAC_PERM_COMMAND_NPC_MOVE, false, &HandleNpcMoveCommand, "", NULL },
- { "playemote", rbac::RBAC_PERM_COMMAND_NPC_PLAYEMOTE, false, &HandleNpcPlayEmoteCommand, "", NULL },
- { "say", rbac::RBAC_PERM_COMMAND_NPC_SAY, false, &HandleNpcSayCommand, "", NULL },
- { "textemote", rbac::RBAC_PERM_COMMAND_NPC_TEXTEMOTE, false, &HandleNpcTextEmoteCommand, "", NULL },
- { "whisper", rbac::RBAC_PERM_COMMAND_NPC_WHISPER, false, &HandleNpcWhisperCommand, "", NULL },
- { "yell", rbac::RBAC_PERM_COMMAND_NPC_YELL, false, &HandleNpcYellCommand, "", NULL },
- { "tame", rbac::RBAC_PERM_COMMAND_NPC_TAME, false, &HandleNpcTameCommand, "", NULL },
+ static std::vector<ChatCommand> npcCommandTable =
+ {
+ { "info", rbac::RBAC_PERM_COMMAND_NPC_INFO, false, &HandleNpcInfoCommand, "" },
+ { "near", rbac::RBAC_PERM_COMMAND_NPC_NEAR, false, &HandleNpcNearCommand, "" },
+ { "move", rbac::RBAC_PERM_COMMAND_NPC_MOVE, false, &HandleNpcMoveCommand, "" },
+ { "playemote", rbac::RBAC_PERM_COMMAND_NPC_PLAYEMOTE, false, &HandleNpcPlayEmoteCommand, "" },
+ { "say", rbac::RBAC_PERM_COMMAND_NPC_SAY, false, &HandleNpcSayCommand, "" },
+ { "textemote", rbac::RBAC_PERM_COMMAND_NPC_TEXTEMOTE, false, &HandleNpcTextEmoteCommand, "" },
+ { "whisper", rbac::RBAC_PERM_COMMAND_NPC_WHISPER, false, &HandleNpcWhisperCommand, "" },
+ { "yell", rbac::RBAC_PERM_COMMAND_NPC_YELL, false, &HandleNpcYellCommand, "" },
+ { "tame", rbac::RBAC_PERM_COMMAND_NPC_TAME, false, &HandleNpcTameCommand, "" },
{ "add", rbac::RBAC_PERM_COMMAND_NPC_ADD, false, NULL, "", npcAddCommandTable },
{ "delete", rbac::RBAC_PERM_COMMAND_NPC_DELETE, false, NULL, "", npcDeleteCommandTable },
{ "follow", rbac::RBAC_PERM_COMMAND_NPC_FOLLOW, false, NULL, "", npcFollowCommandTable },
{ "set", rbac::RBAC_PERM_COMMAND_NPC_SET, false, NULL, "", npcSetCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "npc", rbac::RBAC_PERM_COMMAND_NPC, false, NULL, "", npcCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
@@ -1563,98 +1555,6 @@ public:
*/
return true;
}
-
- static bool HandleNpcSetNameCommand(ChatHandler* /*handler*/, char const* /*args*/)
- {
- /* Temp. disabled
- if (!*args)
- return false;
-
- if (strlen((char*)args)>75)
- {
- handler->PSendSysMessage(LANG_TOO_LONG_NAME, strlen((char*)args)-75);
- return true;
- }
-
- for (uint8 i = 0; i < strlen(args); ++i)
- {
- if (!isalpha(args[i]) && args[i] != ' ')
- {
- handler->SendSysMessage(LANG_CHARS_ONLY);
- return false;
- }
- }
-
- uint64 guid;
- guid = handler->GetSession()->GetPlayer()->GetSelection();
- if (guid == 0)
- {
- handler->SendSysMessage(LANG_NO_SELECTION);
- return true;
- }
-
- Creature* creature = ObjectAccessor::GetCreature(*handler->GetSession()->GetPlayer(), guid);
-
- if (!creature)
- {
- handler->SendSysMessage(LANG_SELECT_CREATURE);
- return true;
- }
-
- creature->SetName(args);
- uint32 idname = sObjectMgr->AddCreatureTemplate(creature->GetName());
- creature->SetUInt32Value(OBJECT_FIELD_ENTRY, idname);
-
- creature->SaveToDB();
- */
-
- return true;
- }
-
- static bool HandleNpcSetSubNameCommand(ChatHandler* /*handler*/, char const* /*args*/)
- {
- /* Temp. disabled
-
- if (!*args)
- args = "";
-
- if (strlen((char*)args)>75)
- {
- handler->PSendSysMessage(LANG_TOO_LONG_SUBNAME, strlen((char*)args)-75);
- return true;
- }
-
- for (uint8 i = 0; i < strlen(args); i++)
- {
- if (!isalpha(args[i]) && args[i] != ' ')
- {
- handler->SendSysMessage(LANG_CHARS_ONLY);
- return false;
- }
- }
- uint64 guid;
- guid = handler->GetSession()->GetPlayer()->GetSelection();
- if (guid == 0)
- {
- handler->SendSysMessage(LANG_NO_SELECTION);
- return true;
- }
-
- Creature* creature = ObjectAccessor::GetCreature(*handler->GetSession()->GetPlayer(), guid);
-
- if (!creature)
- {
- handler->SendSysMessage(LANG_SELECT_CREATURE);
- return true;
- }
-
- uint32 idname = sObjectMgr->AddCreatureSubName(creature->GetName(), args, creature->GetUInt32Value(UNIT_FIELD_DISPLAYID));
- creature->SetUInt32Value(OBJECT_FIELD_ENTRY, idname);
-
- creature->SaveToDB();
- */
- return true;
- }
};
void AddSC_npc_commandscript()
diff --git a/src/server/scripts/Commands/cs_pet.cpp b/src/server/scripts/Commands/cs_pet.cpp
index fdac9d1a35f..e3046817821 100644
--- a/src/server/scripts/Commands/cs_pet.cpp
+++ b/src/server/scripts/Commands/cs_pet.cpp
@@ -27,20 +27,18 @@ class pet_commandscript : public CommandScript
public:
pet_commandscript() : CommandScript("pet_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand petCommandTable[] =
+ static std::vector<ChatCommand> petCommandTable =
{
- { "create", rbac::RBAC_PERM_COMMAND_PET_CREATE, false, &HandlePetCreateCommand, "", NULL },
- { "learn", rbac::RBAC_PERM_COMMAND_PET_LEARN, false, &HandlePetLearnCommand, "", NULL },
- { "unlearn", rbac::RBAC_PERM_COMMAND_PET_UNLEARN, false, &HandlePetUnlearnCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "create", rbac::RBAC_PERM_COMMAND_PET_CREATE, false, &HandlePetCreateCommand, "" },
+ { "learn", rbac::RBAC_PERM_COMMAND_PET_LEARN, false, &HandlePetLearnCommand, "" },
+ { "unlearn", rbac::RBAC_PERM_COMMAND_PET_UNLEARN, false, &HandlePetUnlearnCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "pet", rbac::RBAC_PERM_COMMAND_PET, false, NULL, "", petCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_quest.cpp b/src/server/scripts/Commands/cs_quest.cpp
index 82904efc949..442950bca96 100644
--- a/src/server/scripts/Commands/cs_quest.cpp
+++ b/src/server/scripts/Commands/cs_quest.cpp
@@ -33,20 +33,18 @@ class quest_commandscript : public CommandScript
public:
quest_commandscript() : CommandScript("quest_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand questCommandTable[] =
+ static std::vector<ChatCommand> questCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_QUEST_ADD, false, &HandleQuestAdd, "", NULL },
- { "complete", rbac::RBAC_PERM_COMMAND_QUEST_COMPLETE, false, &HandleQuestComplete, "", NULL },
- { "remove", rbac::RBAC_PERM_COMMAND_QUEST_REMOVE, false, &HandleQuestRemove, "", NULL },
- { "reward", rbac::RBAC_PERM_COMMAND_QUEST_REWARD, false, &HandleQuestReward, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "add", rbac::RBAC_PERM_COMMAND_QUEST_ADD, false, &HandleQuestAdd, "" },
+ { "complete", rbac::RBAC_PERM_COMMAND_QUEST_COMPLETE, false, &HandleQuestComplete, "" },
+ { "remove", rbac::RBAC_PERM_COMMAND_QUEST_REMOVE, false, &HandleQuestRemove, "" },
+ { "reward", rbac::RBAC_PERM_COMMAND_QUEST_REWARD, false, &HandleQuestReward, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "quest", rbac::RBAC_PERM_COMMAND_QUEST, false, NULL, "", questCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_rbac.cpp b/src/server/scripts/Commands/cs_rbac.cpp
index 03f35e6ba65..c28aa04175f 100644
--- a/src/server/scripts/Commands/cs_rbac.cpp
+++ b/src/server/scripts/Commands/cs_rbac.cpp
@@ -49,28 +49,25 @@ class rbac_commandscript : public CommandScript
public:
rbac_commandscript() : CommandScript("rbac_commandscript") { }
- ChatCommand* GetCommands() const
+ std::vector<ChatCommand> GetCommands() const
{
- static ChatCommand rbacAccountCommandTable[] =
+ static std::vector<ChatCommand> rbacAccountCommandTable =
{
- { "list", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_LIST, true, &HandleRBACPermListCommand, "", NULL },
- { "grant", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_GRANT, true, &HandleRBACPermGrantCommand, "", NULL },
- { "deny", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_DENY, true, &HandleRBACPermDenyCommand, "", NULL },
- { "revoke", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_REVOKE, true, &HandleRBACPermRevokeCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "list", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_LIST, true, &HandleRBACPermListCommand, "" },
+ { "grant", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_GRANT, true, &HandleRBACPermGrantCommand, "" },
+ { "deny", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_DENY, true, &HandleRBACPermDenyCommand, "" },
+ { "revoke", rbac::RBAC_PERM_COMMAND_RBAC_ACC_PERM_REVOKE, true, &HandleRBACPermRevokeCommand, "" },
};
- static ChatCommand rbacCommandTable[] =
+ static std::vector<ChatCommand> rbacCommandTable =
{
{ "account", rbac::RBAC_PERM_COMMAND_RBAC_ACC, true, NULL, "", rbacAccountCommandTable },
- { "list", rbac::RBAC_PERM_COMMAND_RBAC_LIST, true, &HandleRBACListPermissionsCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "list", rbac::RBAC_PERM_COMMAND_RBAC_LIST, true, &HandleRBACListPermissionsCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "rbac", rbac::RBAC_PERM_COMMAND_RBAC, true, NULL, "", rbacCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
diff --git a/src/server/scripts/Commands/cs_reload.cpp b/src/server/scripts/Commands/cs_reload.cpp
index 2863d2d4ede..44e34b8e2a9 100644
--- a/src/server/scripts/Commands/cs_reload.cpp
+++ b/src/server/scripts/Commands/cs_reload.cpp
@@ -47,122 +47,119 @@ class reload_commandscript : public CommandScript
public:
reload_commandscript() : CommandScript("reload_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand reloadAllCommandTable[] =
+ static std::vector<ChatCommand> reloadAllCommandTable =
{
- { "achievement", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_ACHIEVEMENT, true, &HandleReloadAllAchievementCommand, "", NULL },
- { "area", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_AREA, true, &HandleReloadAllAreaCommand, "", NULL },
- { "gossips", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_GOSSIP, true, &HandleReloadAllGossipsCommand, "", NULL },
- { "item", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_ITEM, true, &HandleReloadAllItemCommand, "", NULL },
- { "locales", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_LOCALES, true, &HandleReloadAllLocalesCommand, "", NULL },
- { "loot", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_LOOT, true, &HandleReloadAllLootCommand, "", NULL },
- { "npc", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_NPC, true, &HandleReloadAllNpcCommand, "", NULL },
- { "quest", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_QUEST, true, &HandleReloadAllQuestCommand, "", NULL },
- { "scripts", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_SCRIPTS, true, &HandleReloadAllScriptsCommand, "", NULL },
- { "spell", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_SPELL, true, &HandleReloadAllSpellCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_RELOAD_ALL, true, &HandleReloadAllCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "achievement", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_ACHIEVEMENT, true, &HandleReloadAllAchievementCommand, "" },
+ { "area", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_AREA, true, &HandleReloadAllAreaCommand, "" },
+ { "gossips", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_GOSSIP, true, &HandleReloadAllGossipsCommand, "" },
+ { "item", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_ITEM, true, &HandleReloadAllItemCommand, "" },
+ { "locales", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_LOCALES, true, &HandleReloadAllLocalesCommand, "" },
+ { "loot", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_LOOT, true, &HandleReloadAllLootCommand, "" },
+ { "npc", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_NPC, true, &HandleReloadAllNpcCommand, "" },
+ { "quest", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_QUEST, true, &HandleReloadAllQuestCommand, "" },
+ { "scripts", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_SCRIPTS, true, &HandleReloadAllScriptsCommand, "" },
+ { "spell", rbac::RBAC_PERM_COMMAND_RELOAD_ALL_SPELL, true, &HandleReloadAllSpellCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_RELOAD_ALL, true, &HandleReloadAllCommand, "" },
};
- static ChatCommand reloadCommandTable[] =
+ static std::vector<ChatCommand> reloadCommandTable =
{
- { "auctions", rbac::RBAC_PERM_COMMAND_RELOAD_AUCTIONS, true, &HandleReloadAuctionsCommand, "", NULL },
- { "access_requirement", rbac::RBAC_PERM_COMMAND_RELOAD_ACCESS_REQUIREMENT, true, &HandleReloadAccessRequirementCommand, "", NULL },
- { "achievement_criteria_data", rbac::RBAC_PERM_COMMAND_RELOAD_ACHIEVEMENT_CRITERIA_DATA, true, &HandleReloadAchievementCriteriaDataCommand, "", NULL },
- { "achievement_reward", rbac::RBAC_PERM_COMMAND_RELOAD_ACHIEVEMENT_REWARD, true, &HandleReloadAchievementRewardCommand, "", NULL },
+ { "auctions", rbac::RBAC_PERM_COMMAND_RELOAD_AUCTIONS, true, &HandleReloadAuctionsCommand, "" },
+ { "access_requirement", rbac::RBAC_PERM_COMMAND_RELOAD_ACCESS_REQUIREMENT, true, &HandleReloadAccessRequirementCommand, "" },
+ { "achievement_criteria_data", rbac::RBAC_PERM_COMMAND_RELOAD_ACHIEVEMENT_CRITERIA_DATA, true, &HandleReloadAchievementCriteriaDataCommand, "" },
+ { "achievement_reward", rbac::RBAC_PERM_COMMAND_RELOAD_ACHIEVEMENT_REWARD, true, &HandleReloadAchievementRewardCommand, "" },
{ "all", rbac::RBAC_PERM_COMMAND_RELOAD_ALL, true, NULL, "", reloadAllCommandTable },
- { "areatrigger_involvedrelation", rbac::RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_INVOLVEDRELATION, true, &HandleReloadQuestAreaTriggersCommand, "", NULL },
- { "areatrigger_tavern", rbac::RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_TAVERN, true, &HandleReloadAreaTriggerTavernCommand, "", NULL },
- { "areatrigger_teleport", rbac::RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_TELEPORT, true, &HandleReloadAreaTriggerTeleportCommand, "", NULL },
- { "autobroadcast", rbac::RBAC_PERM_COMMAND_RELOAD_AUTOBROADCAST, true, &HandleReloadAutobroadcastCommand, "", NULL },
- { "battleground_template", rbac::RBAC_PERM_COMMAND_RELOAD_BATTLEGROUND_TEMPLATE, true, &HandleReloadBattlegroundTemplate, "", NULL },
- { "broadcast_text", rbac::RBAC_PERM_COMMAND_RELOAD_BROADCAST_TEXT, true, &HandleReloadBroadcastTextCommand, "", NULL },
- { "command", rbac::RBAC_PERM_COMMAND_RELOAD_COMMAND, true, &HandleReloadCommandCommand, "", NULL },
- { "conditions", rbac::RBAC_PERM_COMMAND_RELOAD_CONDITIONS, true, &HandleReloadConditions, "", NULL },
- { "config", rbac::RBAC_PERM_COMMAND_RELOAD_CONFIG, true, &HandleReloadConfigCommand, "", NULL },
- { "creature_text", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_TEXT, true, &HandleReloadCreatureText, "", NULL },
- { "creature_questender", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_QUESTENDER, true, &HandleReloadCreatureQuestEnderCommand, "", NULL },
- { "creature_linked_respawn", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_LINKED_RESPAWN, true, &HandleReloadLinkedRespawnCommand, "", NULL },
- { "creature_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesCreatureCommand, "", NULL },
- { "creature_onkill_reputation", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_ONKILL_REPUTATION, true, &HandleReloadOnKillReputationCommand, "", NULL },
- { "creature_queststarter", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_QUESTSTARTER, true, &HandleReloadCreatureQuestStarterCommand, "", NULL },
- { "creature_summon_groups", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_SUMMON_GROUPS, true, &HandleReloadCreatureSummonGroupsCommand, "", NULL },
- { "creature_template", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_TEMPLATE, true, &HandleReloadCreatureTemplateCommand, "", NULL },
- { "disables", rbac::RBAC_PERM_COMMAND_RELOAD_DISABLES, true, &HandleReloadDisablesCommand, "", NULL },
- { "disenchant_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_DISENCHANT_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesDisenchantCommand, "", NULL },
- { "event_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_EVENT_SCRIPTS, true, &HandleReloadEventScriptsCommand, "", NULL },
- { "fishing_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_FISHING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesFishingCommand, "", NULL },
- { "game_graveyard_zone", rbac::RBAC_PERM_COMMAND_RELOAD_GAME_GRAVEYARD_ZONE, true, &HandleReloadGameGraveyardZoneCommand, "", NULL },
- { "game_tele", rbac::RBAC_PERM_COMMAND_RELOAD_GAME_TELE, true, &HandleReloadGameTeleCommand, "", NULL },
- { "gameobject_questender", rbac::RBAC_PERM_COMMAND_RELOAD_GAMEOBJECT_QUESTENDER, true, &HandleReloadGOQuestEnderCommand, "", NULL },
- { "gameobject_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_GAMEOBJECT_QUEST_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesGameobjectCommand, "", NULL },
- { "gameobject_queststarter", rbac::RBAC_PERM_COMMAND_RELOAD_GAMEOBJECT_QUESTSTARTER, true, &HandleReloadGOQuestStarterCommand, "", NULL },
- { "gm_tickets", rbac::RBAC_PERM_COMMAND_RELOAD_GM_TICKETS, true, &HandleReloadGMTicketsCommand, "", NULL },
- { "gossip_menu", rbac::RBAC_PERM_COMMAND_RELOAD_GOSSIP_MENU, true, &HandleReloadGossipMenuCommand, "", NULL },
- { "gossip_menu_option", rbac::RBAC_PERM_COMMAND_RELOAD_GOSSIP_MENU_OPTION, true, &HandleReloadGossipMenuOptionCommand, "", NULL },
- { "item_enchantment_template", rbac::RBAC_PERM_COMMAND_RELOAD_ITEM_ENCHANTMENT_TEMPLATE, true, &HandleReloadItemEnchantementsCommand, "", NULL },
- { "item_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_ITEM_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesItemCommand, "", NULL },
- { "item_set_names", rbac::RBAC_PERM_COMMAND_RELOAD_ITEM_SET_NAMES, true, &HandleReloadItemSetNamesCommand, "", NULL },
- { "lfg_dungeon_rewards", rbac::RBAC_PERM_COMMAND_RELOAD_LFG_DUNGEON_REWARDS, true, &HandleReloadLfgRewardsCommand, "", NULL },
- { "locales_achievement_reward", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_ACHIEVEMENT_REWARD, true, &HandleReloadLocalesAchievementRewardCommand, "", NULL },
- { "locales_creature", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_CRETURE, true, &HandleReloadLocalesCreatureCommand, "", NULL },
- { "locales_creature_text", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_CRETURE_TEXT, true, &HandleReloadLocalesCreatureTextCommand, "", NULL },
- { "locales_gameobject", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_GAMEOBJECT, true, &HandleReloadLocalesGameobjectCommand, "", NULL },
- { "locales_gossip_menu_option", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_GOSSIP_MENU_OPTION, true, &HandleReloadLocalesGossipMenuOptionCommand, "", NULL },
- { "locales_item", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_ITEM, true, &HandleReloadLocalesItemCommand, "", NULL },
- { "locales_item_set_name", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_ITEM_SET_NAME, true, &HandleReloadLocalesItemSetNameCommand, "", NULL },
- { "locales_npc_text", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_NPC_TEXT, true, &HandleReloadLocalesNpcTextCommand, "", NULL },
- { "locales_page_text", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_PAGE_TEXT, true, &HandleReloadLocalesPageTextCommand, "", NULL },
- { "locales_points_of_interest", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_POINTS_OF_INTEREST, true, &HandleReloadLocalesPointsOfInterestCommand, "", NULL },
- { "locales_quest", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_QUEST, true, &HandleReloadLocalesQuestCommand, "", NULL },
- { "mail_level_reward", rbac::RBAC_PERM_COMMAND_RELOAD_MAIL_LEVEL_REWARD, true, &HandleReloadMailLevelRewardCommand, "", NULL },
- { "mail_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_MAIL_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesMailCommand, "", NULL },
- { "milling_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_MILLING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesMillingCommand, "", NULL },
- { "npc_spellclick_spells", rbac::RBAC_PERM_COMMAND_RELOAD_NPC_SPELLCLICK_SPELLS, true, &HandleReloadSpellClickSpellsCommand, "", NULL },
- { "npc_trainer", rbac::RBAC_PERM_COMMAND_RELOAD_NPC_TRAINER, true, &HandleReloadNpcTrainerCommand, "", NULL },
- { "npc_vendor", rbac::RBAC_PERM_COMMAND_RELOAD_NPC_VENDOR, true, &HandleReloadNpcVendorCommand, "", NULL },
- { "page_text", rbac::RBAC_PERM_COMMAND_RELOAD_PAGE_TEXT, true, &HandleReloadPageTextsCommand, "", NULL },
- { "pickpocketing_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_PICKPOCKETING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesPickpocketingCommand, "", NULL },
- { "points_of_interest", rbac::RBAC_PERM_COMMAND_RELOAD_POINTS_OF_INTEREST, true, &HandleReloadPointsOfInterestCommand, "", NULL },
- { "prospecting_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_PROSPECTING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesProspectingCommand, "", NULL },
- { "quest_poi", rbac::RBAC_PERM_COMMAND_RELOAD_QUEST_POI, true, &HandleReloadQuestPOICommand, "", NULL },
- { "quest_template", rbac::RBAC_PERM_COMMAND_RELOAD_QUEST_TEMPLATE, true, &HandleReloadQuestTemplateCommand, "", NULL },
- { "rbac", rbac::RBAC_PERM_COMMAND_RELOAD_RBAC, true, &HandleReloadRBACCommand, "", NULL },
- { "reference_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_REFERENCE_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesReferenceCommand, "", NULL },
- { "reserved_name", rbac::RBAC_PERM_COMMAND_RELOAD_RESERVED_NAME, true, &HandleReloadReservedNameCommand, "", NULL },
- { "reputation_reward_rate", rbac::RBAC_PERM_COMMAND_RELOAD_REPUTATION_REWARD_RATE, true, &HandleReloadReputationRewardRateCommand, "", NULL },
- { "reputation_spillover_template", rbac::RBAC_PERM_COMMAND_RELOAD_SPILLOVER_TEMPLATE, true, &HandleReloadReputationRewardRateCommand, "", NULL },
- { "skill_discovery_template", rbac::RBAC_PERM_COMMAND_RELOAD_SKILL_DISCOVERY_TEMPLATE, true, &HandleReloadSkillDiscoveryTemplateCommand, "", NULL },
- { "skill_extra_item_template", rbac::RBAC_PERM_COMMAND_RELOAD_SKILL_EXTRA_ITEM_TEMPLATE, true, &HandleReloadSkillExtraItemTemplateCommand, "", NULL },
- { "skill_fishing_base_level", rbac::RBAC_PERM_COMMAND_RELOAD_SKILL_FISHING_BASE_LEVEL, true, &HandleReloadSkillFishingBaseLevelCommand, "", NULL },
- { "skinning_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_SKINNING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesSkinningCommand, "", NULL },
- { "smart_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_SMART_SCRIPTS, true, &HandleReloadSmartScripts, "", NULL },
- { "spell_required", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_REQUIRED, true, &HandleReloadSpellRequiredCommand, "", NULL },
- { "spell_area", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_AREA, true, &HandleReloadSpellAreaCommand, "", NULL },
- { "spell_bonus_data", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_BONUS_DATA, true, &HandleReloadSpellBonusesCommand, "", NULL },
- { "spell_group", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_GROUP, true, &HandleReloadSpellGroupsCommand, "", NULL },
- { "spell_learn_spell", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_LEARN_SPELL, true, &HandleReloadSpellLearnSpellCommand, "", NULL },
- { "spell_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesSpellCommand, "", NULL },
- { "spell_linked_spell", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_LINKED_SPELL, true, &HandleReloadSpellLinkedSpellCommand, "", NULL },
- { "spell_pet_auras", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_PET_AURAS, true, &HandleReloadSpellPetAurasCommand, "", NULL },
- { "spell_proc_event", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_PROC_EVENT, true, &HandleReloadSpellProcEventCommand, "", NULL },
- { "spell_proc", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_PROC, true, &HandleReloadSpellProcsCommand, "", NULL },
- { "spell_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_SCRIPTS, true, &HandleReloadSpellScriptsCommand, "", NULL },
- { "spell_target_position", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_TARGET_POSITION, true, &HandleReloadSpellTargetPositionCommand, "", NULL },
- { "spell_threats", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_THREATS, true, &HandleReloadSpellThreatsCommand, "", NULL },
- { "spell_group_stack_rules", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_GROUP_STACK_RULES, true, &HandleReloadSpellGroupStackRulesCommand, "", NULL },
- { "trinity_string", rbac::RBAC_PERM_COMMAND_RELOAD_TRINITY_STRING, true, &HandleReloadTrinityStringCommand, "", NULL },
- { "warden_action", rbac::RBAC_PERM_COMMAND_RELOAD_WARDEN_ACTION, true, &HandleReloadWardenactionCommand, "", NULL },
- { "waypoint_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_WAYPOINT_SCRIPTS, true, &HandleReloadWpScriptsCommand, "", NULL },
- { "waypoint_data", rbac::RBAC_PERM_COMMAND_RELOAD_WAYPOINT_DATA, true, &HandleReloadWpCommand, "", NULL },
- { "vehicle_accessory", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_ACCESORY, true, &HandleReloadVehicleAccessoryCommand, "", NULL },
- { "vehicle_template_accessory", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_TEMPLATE_ACCESSORY, true, &HandleReloadVehicleTemplateAccessoryCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "areatrigger_involvedrelation", rbac::RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_INVOLVEDRELATION, true, &HandleReloadQuestAreaTriggersCommand, "" },
+ { "areatrigger_tavern", rbac::RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_TAVERN, true, &HandleReloadAreaTriggerTavernCommand, "" },
+ { "areatrigger_teleport", rbac::RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_TELEPORT, true, &HandleReloadAreaTriggerTeleportCommand, "" },
+ { "autobroadcast", rbac::RBAC_PERM_COMMAND_RELOAD_AUTOBROADCAST, true, &HandleReloadAutobroadcastCommand, "" },
+ { "battleground_template", rbac::RBAC_PERM_COMMAND_RELOAD_BATTLEGROUND_TEMPLATE, true, &HandleReloadBattlegroundTemplate, "" },
+ { "broadcast_text", rbac::RBAC_PERM_COMMAND_RELOAD_BROADCAST_TEXT, true, &HandleReloadBroadcastTextCommand, "" },
+ { "command", rbac::RBAC_PERM_COMMAND_RELOAD_COMMAND, true, &HandleReloadCommandCommand, "" },
+ { "conditions", rbac::RBAC_PERM_COMMAND_RELOAD_CONDITIONS, true, &HandleReloadConditions, "" },
+ { "config", rbac::RBAC_PERM_COMMAND_RELOAD_CONFIG, true, &HandleReloadConfigCommand, "" },
+ { "creature_text", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_TEXT, true, &HandleReloadCreatureText, "" },
+ { "creature_questender", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_QUESTENDER, true, &HandleReloadCreatureQuestEnderCommand, "" },
+ { "creature_linked_respawn", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_LINKED_RESPAWN, true, &HandleReloadLinkedRespawnCommand, "" },
+ { "creature_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesCreatureCommand, "" },
+ { "creature_onkill_reputation", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_ONKILL_REPUTATION, true, &HandleReloadOnKillReputationCommand, "" },
+ { "creature_queststarter", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_QUESTSTARTER, true, &HandleReloadCreatureQuestStarterCommand, "" },
+ { "creature_summon_groups", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_SUMMON_GROUPS, true, &HandleReloadCreatureSummonGroupsCommand, "" },
+ { "creature_template", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_TEMPLATE, true, &HandleReloadCreatureTemplateCommand, "" },
+ { "disables", rbac::RBAC_PERM_COMMAND_RELOAD_DISABLES, true, &HandleReloadDisablesCommand, "" },
+ { "disenchant_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_DISENCHANT_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesDisenchantCommand, "" },
+ { "event_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_EVENT_SCRIPTS, true, &HandleReloadEventScriptsCommand, "" },
+ { "fishing_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_FISHING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesFishingCommand, "" },
+ { "game_graveyard_zone", rbac::RBAC_PERM_COMMAND_RELOAD_GAME_GRAVEYARD_ZONE, true, &HandleReloadGameGraveyardZoneCommand, "" },
+ { "game_tele", rbac::RBAC_PERM_COMMAND_RELOAD_GAME_TELE, true, &HandleReloadGameTeleCommand, "" },
+ { "gameobject_questender", rbac::RBAC_PERM_COMMAND_RELOAD_GAMEOBJECT_QUESTENDER, true, &HandleReloadGOQuestEnderCommand, "" },
+ { "gameobject_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_GAMEOBJECT_QUEST_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesGameobjectCommand, "" },
+ { "gameobject_queststarter", rbac::RBAC_PERM_COMMAND_RELOAD_GAMEOBJECT_QUESTSTARTER, true, &HandleReloadGOQuestStarterCommand, "" },
+ { "gm_tickets", rbac::RBAC_PERM_COMMAND_RELOAD_GM_TICKETS, true, &HandleReloadGMTicketsCommand, "" },
+ { "gossip_menu", rbac::RBAC_PERM_COMMAND_RELOAD_GOSSIP_MENU, true, &HandleReloadGossipMenuCommand, "" },
+ { "gossip_menu_option", rbac::RBAC_PERM_COMMAND_RELOAD_GOSSIP_MENU_OPTION, true, &HandleReloadGossipMenuOptionCommand, "" },
+ { "item_enchantment_template", rbac::RBAC_PERM_COMMAND_RELOAD_ITEM_ENCHANTMENT_TEMPLATE, true, &HandleReloadItemEnchantementsCommand, "" },
+ { "item_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_ITEM_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesItemCommand, "" },
+ { "item_set_names", rbac::RBAC_PERM_COMMAND_RELOAD_ITEM_SET_NAMES, true, &HandleReloadItemSetNamesCommand, "" },
+ { "lfg_dungeon_rewards", rbac::RBAC_PERM_COMMAND_RELOAD_LFG_DUNGEON_REWARDS, true, &HandleReloadLfgRewardsCommand, "" },
+ { "locales_achievement_reward", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_ACHIEVEMENT_REWARD, true, &HandleReloadLocalesAchievementRewardCommand, "" },
+ { "locales_creature", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_CRETURE, true, &HandleReloadLocalesCreatureCommand, "" },
+ { "locales_creature_text", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_CRETURE_TEXT, true, &HandleReloadLocalesCreatureTextCommand, "" },
+ { "locales_gameobject", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_GAMEOBJECT, true, &HandleReloadLocalesGameobjectCommand, "" },
+ { "locales_gossip_menu_option", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_GOSSIP_MENU_OPTION, true, &HandleReloadLocalesGossipMenuOptionCommand, "" },
+ { "locales_item", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_ITEM, true, &HandleReloadLocalesItemCommand, "" },
+ { "locales_item_set_name", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_ITEM_SET_NAME, true, &HandleReloadLocalesItemSetNameCommand, "" },
+ { "locales_npc_text", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_NPC_TEXT, true, &HandleReloadLocalesNpcTextCommand, "" },
+ { "locales_page_text", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_PAGE_TEXT, true, &HandleReloadLocalesPageTextCommand, "" },
+ { "locales_points_of_interest", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_POINTS_OF_INTEREST, true, &HandleReloadLocalesPointsOfInterestCommand, "" },
+ { "locales_quest", rbac::RBAC_PERM_COMMAND_RELOAD_LOCALES_QUEST, true, &HandleReloadLocalesQuestCommand, "" },
+ { "mail_level_reward", rbac::RBAC_PERM_COMMAND_RELOAD_MAIL_LEVEL_REWARD, true, &HandleReloadMailLevelRewardCommand, "" },
+ { "mail_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_MAIL_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesMailCommand, "" },
+ { "milling_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_MILLING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesMillingCommand, "" },
+ { "npc_spellclick_spells", rbac::RBAC_PERM_COMMAND_RELOAD_NPC_SPELLCLICK_SPELLS, true, &HandleReloadSpellClickSpellsCommand, "" },
+ { "npc_trainer", rbac::RBAC_PERM_COMMAND_RELOAD_NPC_TRAINER, true, &HandleReloadNpcTrainerCommand, "" },
+ { "npc_vendor", rbac::RBAC_PERM_COMMAND_RELOAD_NPC_VENDOR, true, &HandleReloadNpcVendorCommand, "" },
+ { "page_text", rbac::RBAC_PERM_COMMAND_RELOAD_PAGE_TEXT, true, &HandleReloadPageTextsCommand, "" },
+ { "pickpocketing_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_PICKPOCKETING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesPickpocketingCommand, "" },
+ { "points_of_interest", rbac::RBAC_PERM_COMMAND_RELOAD_POINTS_OF_INTEREST, true, &HandleReloadPointsOfInterestCommand, "" },
+ { "prospecting_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_PROSPECTING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesProspectingCommand, "" },
+ { "quest_poi", rbac::RBAC_PERM_COMMAND_RELOAD_QUEST_POI, true, &HandleReloadQuestPOICommand, "" },
+ { "quest_template", rbac::RBAC_PERM_COMMAND_RELOAD_QUEST_TEMPLATE, true, &HandleReloadQuestTemplateCommand, "" },
+ { "rbac", rbac::RBAC_PERM_COMMAND_RELOAD_RBAC, true, &HandleReloadRBACCommand, "" },
+ { "reference_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_REFERENCE_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesReferenceCommand, "" },
+ { "reserved_name", rbac::RBAC_PERM_COMMAND_RELOAD_RESERVED_NAME, true, &HandleReloadReservedNameCommand, "" },
+ { "reputation_reward_rate", rbac::RBAC_PERM_COMMAND_RELOAD_REPUTATION_REWARD_RATE, true, &HandleReloadReputationRewardRateCommand, "" },
+ { "reputation_spillover_template", rbac::RBAC_PERM_COMMAND_RELOAD_SPILLOVER_TEMPLATE, true, &HandleReloadReputationRewardRateCommand, "" },
+ { "skill_discovery_template", rbac::RBAC_PERM_COMMAND_RELOAD_SKILL_DISCOVERY_TEMPLATE, true, &HandleReloadSkillDiscoveryTemplateCommand, "" },
+ { "skill_extra_item_template", rbac::RBAC_PERM_COMMAND_RELOAD_SKILL_EXTRA_ITEM_TEMPLATE, true, &HandleReloadSkillExtraItemTemplateCommand, "" },
+ { "skill_fishing_base_level", rbac::RBAC_PERM_COMMAND_RELOAD_SKILL_FISHING_BASE_LEVEL, true, &HandleReloadSkillFishingBaseLevelCommand, "" },
+ { "skinning_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_SKINNING_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesSkinningCommand, "" },
+ { "smart_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_SMART_SCRIPTS, true, &HandleReloadSmartScripts, "" },
+ { "spell_required", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_REQUIRED, true, &HandleReloadSpellRequiredCommand, "" },
+ { "spell_area", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_AREA, true, &HandleReloadSpellAreaCommand, "" },
+ { "spell_bonus_data", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_BONUS_DATA, true, &HandleReloadSpellBonusesCommand, "" },
+ { "spell_group", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_GROUP, true, &HandleReloadSpellGroupsCommand, "" },
+ { "spell_learn_spell", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_LEARN_SPELL, true, &HandleReloadSpellLearnSpellCommand, "" },
+ { "spell_loot_template", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_LOOT_TEMPLATE, true, &HandleReloadLootTemplatesSpellCommand, "" },
+ { "spell_linked_spell", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_LINKED_SPELL, true, &HandleReloadSpellLinkedSpellCommand, "" },
+ { "spell_pet_auras", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_PET_AURAS, true, &HandleReloadSpellPetAurasCommand, "" },
+ { "spell_proc_event", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_PROC_EVENT, true, &HandleReloadSpellProcEventCommand, "" },
+ { "spell_proc", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_PROC, true, &HandleReloadSpellProcsCommand, "" },
+ { "spell_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_SCRIPTS, true, &HandleReloadSpellScriptsCommand, "" },
+ { "spell_target_position", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_TARGET_POSITION, true, &HandleReloadSpellTargetPositionCommand, "" },
+ { "spell_threats", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_THREATS, true, &HandleReloadSpellThreatsCommand, "" },
+ { "spell_group_stack_rules", rbac::RBAC_PERM_COMMAND_RELOAD_SPELL_GROUP_STACK_RULES, true, &HandleReloadSpellGroupStackRulesCommand, "" },
+ { "trinity_string", rbac::RBAC_PERM_COMMAND_RELOAD_TRINITY_STRING, true, &HandleReloadTrinityStringCommand, "" },
+ { "warden_action", rbac::RBAC_PERM_COMMAND_RELOAD_WARDEN_ACTION, true, &HandleReloadWardenactionCommand, "" },
+ { "waypoint_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_WAYPOINT_SCRIPTS, true, &HandleReloadWpScriptsCommand, "" },
+ { "waypoint_data", rbac::RBAC_PERM_COMMAND_RELOAD_WAYPOINT_DATA, true, &HandleReloadWpCommand, "" },
+ { "vehicle_accessory", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_ACCESORY, true, &HandleReloadVehicleAccessoryCommand, "" },
+ { "vehicle_template_accessory", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_TEMPLATE_ACCESSORY, true, &HandleReloadVehicleTemplateAccessoryCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "reload", rbac::RBAC_PERM_COMMAND_RELOAD, true, NULL, "", reloadCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_reset.cpp b/src/server/scripts/Commands/cs_reset.cpp
index b2bccfd884a..d1c7421b761 100644
--- a/src/server/scripts/Commands/cs_reset.cpp
+++ b/src/server/scripts/Commands/cs_reset.cpp
@@ -35,23 +35,21 @@ class reset_commandscript : public CommandScript
public:
reset_commandscript() : CommandScript("reset_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand resetCommandTable[] =
+ static std::vector<ChatCommand> resetCommandTable =
{
- { "achievements", rbac::RBAC_PERM_COMMAND_RESET_ACHIEVEMENTS, true, &HandleResetAchievementsCommand, "", NULL },
- { "honor", rbac::RBAC_PERM_COMMAND_RESET_HONOR, true, &HandleResetHonorCommand, "", NULL },
- { "level", rbac::RBAC_PERM_COMMAND_RESET_LEVEL, true, &HandleResetLevelCommand, "", NULL },
- { "spells", rbac::RBAC_PERM_COMMAND_RESET_SPELLS, true, &HandleResetSpellsCommand, "", NULL },
- { "stats", rbac::RBAC_PERM_COMMAND_RESET_STATS, true, &HandleResetStatsCommand, "", NULL },
- { "talents", rbac::RBAC_PERM_COMMAND_RESET_TALENTS, true, &HandleResetTalentsCommand, "", NULL },
- { "all", rbac::RBAC_PERM_COMMAND_RESET_ALL, true, &HandleResetAllCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "achievements", rbac::RBAC_PERM_COMMAND_RESET_ACHIEVEMENTS, true, &HandleResetAchievementsCommand, "" },
+ { "honor", rbac::RBAC_PERM_COMMAND_RESET_HONOR, true, &HandleResetHonorCommand, "" },
+ { "level", rbac::RBAC_PERM_COMMAND_RESET_LEVEL, true, &HandleResetLevelCommand, "" },
+ { "spells", rbac::RBAC_PERM_COMMAND_RESET_SPELLS, true, &HandleResetSpellsCommand, "" },
+ { "stats", rbac::RBAC_PERM_COMMAND_RESET_STATS, true, &HandleResetStatsCommand, "" },
+ { "talents", rbac::RBAC_PERM_COMMAND_RESET_TALENTS, true, &HandleResetTalentsCommand, "" },
+ { "all", rbac::RBAC_PERM_COMMAND_RESET_ALL, true, &HandleResetAllCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "reset", rbac::RBAC_PERM_COMMAND_RESET, true, NULL, "", resetCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_send.cpp b/src/server/scripts/Commands/cs_send.cpp
index 57ea44a67bf..b7165ed339c 100644
--- a/src/server/scripts/Commands/cs_send.cpp
+++ b/src/server/scripts/Commands/cs_send.cpp
@@ -27,21 +27,19 @@ class send_commandscript : public CommandScript
public:
send_commandscript() : CommandScript("send_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand sendCommandTable[] =
+ static std::vector<ChatCommand> sendCommandTable =
{
- { "items", rbac::RBAC_PERM_COMMAND_SEND_ITEMS, true, &HandleSendItemsCommand, "", NULL },
- { "mail", rbac::RBAC_PERM_COMMAND_SEND_MAIL, true, &HandleSendMailCommand, "", NULL },
- { "message", rbac::RBAC_PERM_COMMAND_SEND_MESSAGE, true, &HandleSendMessageCommand, "", NULL },
- { "money", rbac::RBAC_PERM_COMMAND_SEND_MONEY, true, &HandleSendMoneyCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "items", rbac::RBAC_PERM_COMMAND_SEND_ITEMS, true, &HandleSendItemsCommand, "" },
+ { "mail", rbac::RBAC_PERM_COMMAND_SEND_MAIL, true, &HandleSendMailCommand, "" },
+ { "message", rbac::RBAC_PERM_COMMAND_SEND_MESSAGE, true, &HandleSendMessageCommand, "" },
+ { "money", rbac::RBAC_PERM_COMMAND_SEND_MONEY, true, &HandleSendMoneyCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "send", rbac::RBAC_PERM_COMMAND_SEND, false, NULL, "", sendCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_server.cpp b/src/server/scripts/Commands/cs_server.cpp
index fe5ae940f88..e41a7d161d2 100644
--- a/src/server/scripts/Commands/cs_server.cpp
+++ b/src/server/scripts/Commands/cs_server.cpp
@@ -35,64 +35,57 @@ class server_commandscript : public CommandScript
public:
server_commandscript() : CommandScript("server_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand serverIdleRestartCommandTable[] =
+ static std::vector<ChatCommand> serverIdleRestartCommandTable =
{
- { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_IDLERESTART_CANCEL, true, &HandleServerShutDownCancelCommand, "", NULL },
- { "" , rbac::RBAC_PERM_COMMAND_SERVER_IDLERESTART, true, &HandleServerIdleRestartCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_IDLERESTART_CANCEL, true, &HandleServerShutDownCancelCommand, "" },
+ { "" , rbac::RBAC_PERM_COMMAND_SERVER_IDLERESTART, true, &HandleServerIdleRestartCommand, "" },
};
- static ChatCommand serverIdleShutdownCommandTable[] =
+ static std::vector<ChatCommand> serverIdleShutdownCommandTable =
{
- { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_IDLESHUTDOWN_CANCEL, true, &HandleServerShutDownCancelCommand, "", NULL },
- { "" , rbac::RBAC_PERM_COMMAND_SERVER_IDLESHUTDOWN, true, &HandleServerIdleShutDownCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_IDLESHUTDOWN_CANCEL, true, &HandleServerShutDownCancelCommand, "" },
+ { "" , rbac::RBAC_PERM_COMMAND_SERVER_IDLESHUTDOWN, true, &HandleServerIdleShutDownCommand, "" },
};
- static ChatCommand serverRestartCommandTable[] =
+ static std::vector<ChatCommand> serverRestartCommandTable =
{
- { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_RESTART_CANCEL, true, &HandleServerShutDownCancelCommand, "", NULL },
- { "" , rbac::RBAC_PERM_COMMAND_SERVER_RESTART, true, &HandleServerRestartCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_RESTART_CANCEL, true, &HandleServerShutDownCancelCommand, "" },
+ { "" , rbac::RBAC_PERM_COMMAND_SERVER_RESTART, true, &HandleServerRestartCommand, "" },
};
- static ChatCommand serverShutdownCommandTable[] =
+ static std::vector<ChatCommand> serverShutdownCommandTable =
{
- { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_SHUTDOWN_CANCEL, true, &HandleServerShutDownCancelCommand, "", NULL },
- { "" , rbac::RBAC_PERM_COMMAND_SERVER_SHUTDOWN, true, &HandleServerShutDownCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "cancel", rbac::RBAC_PERM_COMMAND_SERVER_SHUTDOWN_CANCEL, true, &HandleServerShutDownCancelCommand, "" },
+ { "" , rbac::RBAC_PERM_COMMAND_SERVER_SHUTDOWN, true, &HandleServerShutDownCommand, "" },
};
- static ChatCommand serverSetCommandTable[] =
+ static std::vector<ChatCommand> serverSetCommandTable =
{
- { "difftime", rbac::RBAC_PERM_COMMAND_SERVER_SET_DIFFTIME, true, &HandleServerSetDiffTimeCommand, "", NULL },
- { "loglevel", rbac::RBAC_PERM_COMMAND_SERVER_SET_LOGLEVEL, true, &HandleServerSetLogLevelCommand, "", NULL },
- { "motd", rbac::RBAC_PERM_COMMAND_SERVER_SET_MOTD, true, &HandleServerSetMotdCommand, "", NULL },
- { "closed", rbac::RBAC_PERM_COMMAND_SERVER_SET_CLOSED, true, &HandleServerSetClosedCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "difftime", rbac::RBAC_PERM_COMMAND_SERVER_SET_DIFFTIME, true, &HandleServerSetDiffTimeCommand, "" },
+ { "loglevel", rbac::RBAC_PERM_COMMAND_SERVER_SET_LOGLEVEL, true, &HandleServerSetLogLevelCommand, "" },
+ { "motd", rbac::RBAC_PERM_COMMAND_SERVER_SET_MOTD, true, &HandleServerSetMotdCommand, "" },
+ { "closed", rbac::RBAC_PERM_COMMAND_SERVER_SET_CLOSED, true, &HandleServerSetClosedCommand, "" },
};
- static ChatCommand serverCommandTable[] =
+ static std::vector<ChatCommand> serverCommandTable =
{
- { "corpses", rbac::RBAC_PERM_COMMAND_SERVER_CORPSES, true, &HandleServerCorpsesCommand, "", NULL },
- { "exit", rbac::RBAC_PERM_COMMAND_SERVER_EXIT, true, &HandleServerExitCommand, "", NULL },
+ { "corpses", rbac::RBAC_PERM_COMMAND_SERVER_CORPSES, true, &HandleServerCorpsesCommand, "" },
+ { "exit", rbac::RBAC_PERM_COMMAND_SERVER_EXIT, true, &HandleServerExitCommand, "" },
{ "idlerestart", rbac::RBAC_PERM_COMMAND_SERVER_IDLERESTART, true, NULL, "", serverIdleRestartCommandTable },
{ "idleshutdown", rbac::RBAC_PERM_COMMAND_SERVER_IDLESHUTDOWN, true, NULL, "", serverIdleShutdownCommandTable },
- { "info", rbac::RBAC_PERM_COMMAND_SERVER_INFO, true, &HandleServerInfoCommand, "", NULL },
- { "motd", rbac::RBAC_PERM_COMMAND_SERVER_MOTD, true, &HandleServerMotdCommand, "", NULL },
- { "plimit", rbac::RBAC_PERM_COMMAND_SERVER_PLIMIT, true, &HandleServerPLimitCommand, "", NULL },
+ { "info", rbac::RBAC_PERM_COMMAND_SERVER_INFO, true, &HandleServerInfoCommand, "" },
+ { "motd", rbac::RBAC_PERM_COMMAND_SERVER_MOTD, true, &HandleServerMotdCommand, "" },
+ { "plimit", rbac::RBAC_PERM_COMMAND_SERVER_PLIMIT, true, &HandleServerPLimitCommand, "" },
{ "restart", rbac::RBAC_PERM_COMMAND_SERVER_RESTART, true, NULL, "", serverRestartCommandTable },
{ "shutdown", rbac::RBAC_PERM_COMMAND_SERVER_SHUTDOWN, true, NULL, "", serverShutdownCommandTable },
{ "set", rbac::RBAC_PERM_COMMAND_SERVER_SET, true, NULL, "", serverSetCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "server", rbac::RBAC_PERM_COMMAND_SERVER, true, NULL, "", serverCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_tele.cpp b/src/server/scripts/Commands/cs_tele.cpp
index 8e82f9980d3..9ea516f0972 100644
--- a/src/server/scripts/Commands/cs_tele.cpp
+++ b/src/server/scripts/Commands/cs_tele.cpp
@@ -35,21 +35,19 @@ class tele_commandscript : public CommandScript
public:
tele_commandscript() : CommandScript("tele_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand teleCommandTable[] =
+ static std::vector<ChatCommand> teleCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_TELE_ADD, false, &HandleTeleAddCommand, "", NULL },
- { "del", rbac::RBAC_PERM_COMMAND_TELE_DEL, true, &HandleTeleDelCommand, "", NULL },
- { "name", rbac::RBAC_PERM_COMMAND_TELE_NAME, true, &HandleTeleNameCommand, "", NULL },
- { "group", rbac::RBAC_PERM_COMMAND_TELE_GROUP, false, &HandleTeleGroupCommand, "", NULL },
- { "", rbac::RBAC_PERM_COMMAND_TELE, false, &HandleTeleCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "add", rbac::RBAC_PERM_COMMAND_TELE_ADD, false, &HandleTeleAddCommand, "" },
+ { "del", rbac::RBAC_PERM_COMMAND_TELE_DEL, true, &HandleTeleDelCommand, "" },
+ { "name", rbac::RBAC_PERM_COMMAND_TELE_NAME, true, &HandleTeleNameCommand, "" },
+ { "group", rbac::RBAC_PERM_COMMAND_TELE_GROUP, false, &HandleTeleGroupCommand, "" },
+ { "", rbac::RBAC_PERM_COMMAND_TELE, false, &HandleTeleCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "tele", rbac::RBAC_PERM_COMMAND_TELE, false, NULL, "", teleCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_ticket.cpp b/src/server/scripts/Commands/cs_ticket.cpp
index f7634381fc9..9b771f734be 100644
--- a/src/server/scripts/Commands/cs_ticket.cpp
+++ b/src/server/scripts/Commands/cs_ticket.cpp
@@ -36,38 +36,35 @@ class ticket_commandscript : public CommandScript
public:
ticket_commandscript() : CommandScript("ticket_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand ticketResponseCommandTable[] =
+ static std::vector<ChatCommand> ticketResponseCommandTable =
{
- { "append", rbac::RBAC_PERM_COMMAND_TICKET_RESPONSE_APPEND, true, &HandleGMTicketResponseAppendCommand, "", NULL },
- { "appendln", rbac::RBAC_PERM_COMMAND_TICKET_RESPONSE_APPENDLN, true, &HandleGMTicketResponseAppendLnCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "append", rbac::RBAC_PERM_COMMAND_TICKET_RESPONSE_APPEND, true, &HandleGMTicketResponseAppendCommand, "" },
+ { "appendln", rbac::RBAC_PERM_COMMAND_TICKET_RESPONSE_APPENDLN, true, &HandleGMTicketResponseAppendLnCommand, "" },
};
- static ChatCommand ticketCommandTable[] =
+ static std::vector<ChatCommand> ticketCommandTable =
{
- { "assign", rbac::RBAC_PERM_COMMAND_TICKET_ASSIGN, true, &HandleGMTicketAssignToCommand, "", NULL },
- { "close", rbac::RBAC_PERM_COMMAND_TICKET_CLOSE, true, &HandleGMTicketCloseByIdCommand, "", NULL },
- { "closedlist", rbac::RBAC_PERM_COMMAND_TICKET_CLOSEDLIST, true, &HandleGMTicketListClosedCommand, "", NULL },
- { "comment", rbac::RBAC_PERM_COMMAND_TICKET_COMMENT, true, &HandleGMTicketCommentCommand, "", NULL },
- { "complete", rbac::RBAC_PERM_COMMAND_TICKET_COMPLETE, true, &HandleGMTicketCompleteCommand, "", NULL },
- { "delete", rbac::RBAC_PERM_COMMAND_TICKET_DELETE, true, &HandleGMTicketDeleteByIdCommand, "", NULL },
- { "escalate", rbac::RBAC_PERM_COMMAND_TICKET_ESCALATE, true, &HandleGMTicketEscalateCommand, "", NULL },
- { "escalatedlist", rbac::RBAC_PERM_COMMAND_TICKET_ESCALATEDLIST, true, &HandleGMTicketListEscalatedCommand, "", NULL },
- { "list", rbac::RBAC_PERM_COMMAND_TICKET_LIST, true, &HandleGMTicketListCommand, "", NULL },
- { "onlinelist", rbac::RBAC_PERM_COMMAND_TICKET_ONLINELIST, true, &HandleGMTicketListOnlineCommand, "", NULL },
- { "reset", rbac::RBAC_PERM_COMMAND_TICKET_RESET, true, &HandleGMTicketResetCommand, "", NULL },
+ { "assign", rbac::RBAC_PERM_COMMAND_TICKET_ASSIGN, true, &HandleGMTicketAssignToCommand, "" },
+ { "close", rbac::RBAC_PERM_COMMAND_TICKET_CLOSE, true, &HandleGMTicketCloseByIdCommand, "" },
+ { "closedlist", rbac::RBAC_PERM_COMMAND_TICKET_CLOSEDLIST, true, &HandleGMTicketListClosedCommand, "" },
+ { "comment", rbac::RBAC_PERM_COMMAND_TICKET_COMMENT, true, &HandleGMTicketCommentCommand, "" },
+ { "complete", rbac::RBAC_PERM_COMMAND_TICKET_COMPLETE, true, &HandleGMTicketCompleteCommand, "" },
+ { "delete", rbac::RBAC_PERM_COMMAND_TICKET_DELETE, true, &HandleGMTicketDeleteByIdCommand, "" },
+ { "escalate", rbac::RBAC_PERM_COMMAND_TICKET_ESCALATE, true, &HandleGMTicketEscalateCommand, "" },
+ { "escalatedlist", rbac::RBAC_PERM_COMMAND_TICKET_ESCALATEDLIST, true, &HandleGMTicketListEscalatedCommand, "" },
+ { "list", rbac::RBAC_PERM_COMMAND_TICKET_LIST, true, &HandleGMTicketListCommand, "" },
+ { "onlinelist", rbac::RBAC_PERM_COMMAND_TICKET_ONLINELIST, true, &HandleGMTicketListOnlineCommand, "" },
+ { "reset", rbac::RBAC_PERM_COMMAND_TICKET_RESET, true, &HandleGMTicketResetCommand, "" },
{ "response", rbac::RBAC_PERM_COMMAND_TICKET_RESPONSE, true, NULL, "", ticketResponseCommandTable },
- { "togglesystem", rbac::RBAC_PERM_COMMAND_TICKET_TOGGLESYSTEM, true, &HandleToggleGMTicketSystem, "", NULL },
- { "unassign", rbac::RBAC_PERM_COMMAND_TICKET_UNASSIGN, true, &HandleGMTicketUnAssignCommand, "", NULL },
- { "viewid", rbac::RBAC_PERM_COMMAND_TICKET_VIEWID, true, &HandleGMTicketGetByIdCommand, "", NULL },
- { "viewname", rbac::RBAC_PERM_COMMAND_TICKET_VIEWNAME, true, &HandleGMTicketGetByNameCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "togglesystem", rbac::RBAC_PERM_COMMAND_TICKET_TOGGLESYSTEM, true, &HandleToggleGMTicketSystem, "" },
+ { "unassign", rbac::RBAC_PERM_COMMAND_TICKET_UNASSIGN, true, &HandleGMTicketUnAssignCommand, "" },
+ { "viewid", rbac::RBAC_PERM_COMMAND_TICKET_VIEWID, true, &HandleGMTicketGetByIdCommand, "" },
+ { "viewname", rbac::RBAC_PERM_COMMAND_TICKET_VIEWNAME, true, &HandleGMTicketGetByNameCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "ticket", rbac::RBAC_PERM_COMMAND_TICKET, false, NULL, "", ticketCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_titles.cpp b/src/server/scripts/Commands/cs_titles.cpp
index 74a2f9f5aaf..bc6027ce3c3 100644
--- a/src/server/scripts/Commands/cs_titles.cpp
+++ b/src/server/scripts/Commands/cs_titles.cpp
@@ -33,25 +33,22 @@ class titles_commandscript : public CommandScript
public:
titles_commandscript() : CommandScript("titles_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand titlesSetCommandTable[] =
+ static std::vector<ChatCommand> titlesSetCommandTable =
{
- { "mask", rbac::RBAC_PERM_COMMAND_TITLES_SET_MASK, false, &HandleTitlesSetMaskCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "mask", rbac::RBAC_PERM_COMMAND_TITLES_SET_MASK, false, &HandleTitlesSetMaskCommand, "" },
};
- static ChatCommand titlesCommandTable[] =
+ static std::vector<ChatCommand> titlesCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_TITLES_ADD, false, &HandleTitlesAddCommand, "", NULL },
- { "current", rbac::RBAC_PERM_COMMAND_TITLES_CURRENT, false, &HandleTitlesCurrentCommand, "", NULL },
- { "remove", rbac::RBAC_PERM_COMMAND_TITLES_REMOVE, false, &HandleTitlesRemoveCommand, "", NULL },
+ { "add", rbac::RBAC_PERM_COMMAND_TITLES_ADD, false, &HandleTitlesAddCommand, "" },
+ { "current", rbac::RBAC_PERM_COMMAND_TITLES_CURRENT, false, &HandleTitlesCurrentCommand, "" },
+ { "remove", rbac::RBAC_PERM_COMMAND_TITLES_REMOVE, false, &HandleTitlesRemoveCommand, "" },
{ "set", rbac::RBAC_PERM_COMMAND_TITLES_SET, false, NULL, "", titlesSetCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "titles", rbac::RBAC_PERM_COMMAND_TITLES, false, NULL, "", titlesCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/scripts/Commands/cs_wp.cpp b/src/server/scripts/Commands/cs_wp.cpp
index 9db1e5d68d8..b35e71dbd50 100644
--- a/src/server/scripts/Commands/cs_wp.cpp
+++ b/src/server/scripts/Commands/cs_wp.cpp
@@ -34,23 +34,21 @@ class wp_commandscript : public CommandScript
public:
wp_commandscript() : CommandScript("wp_commandscript") { }
- ChatCommand* GetCommands() const override
+ std::vector<ChatCommand> GetCommands() const override
{
- static ChatCommand wpCommandTable[] =
+ static std::vector<ChatCommand> wpCommandTable =
{
- { "add", rbac::RBAC_PERM_COMMAND_WP_ADD, false, &HandleWpAddCommand, "", NULL },
- { "event", rbac::RBAC_PERM_COMMAND_WP_EVENT, false, &HandleWpEventCommand, "", NULL },
- { "load", rbac::RBAC_PERM_COMMAND_WP_LOAD, false, &HandleWpLoadCommand, "", NULL },
- { "modify", rbac::RBAC_PERM_COMMAND_WP_MODIFY, false, &HandleWpModifyCommand, "", NULL },
- { "unload", rbac::RBAC_PERM_COMMAND_WP_UNLOAD, false, &HandleWpUnLoadCommand, "", NULL },
- { "reload", rbac::RBAC_PERM_COMMAND_WP_RELOAD, false, &HandleWpReloadCommand, "", NULL },
- { "show", rbac::RBAC_PERM_COMMAND_WP_SHOW, false, &HandleWpShowCommand, "", NULL },
- { NULL, 0, false, NULL, "", NULL }
+ { "add", rbac::RBAC_PERM_COMMAND_WP_ADD, false, &HandleWpAddCommand, "" },
+ { "event", rbac::RBAC_PERM_COMMAND_WP_EVENT, false, &HandleWpEventCommand, "" },
+ { "load", rbac::RBAC_PERM_COMMAND_WP_LOAD, false, &HandleWpLoadCommand, "" },
+ { "modify", rbac::RBAC_PERM_COMMAND_WP_MODIFY, false, &HandleWpModifyCommand, "" },
+ { "unload", rbac::RBAC_PERM_COMMAND_WP_UNLOAD, false, &HandleWpUnLoadCommand, "" },
+ { "reload", rbac::RBAC_PERM_COMMAND_WP_RELOAD, false, &HandleWpReloadCommand, "" },
+ { "show", rbac::RBAC_PERM_COMMAND_WP_SHOW, false, &HandleWpShowCommand, "" },
};
- static ChatCommand commandTable[] =
+ static std::vector<ChatCommand> commandTable =
{
{ "wp", rbac::RBAC_PERM_COMMAND_WP, false, NULL, "", wpCommandTable },
- { NULL, 0, false, NULL, "", NULL }
};
return commandTable;
}
diff --git a/src/server/worldserver/CommandLine/CliRunnable.cpp b/src/server/worldserver/CommandLine/CliRunnable.cpp
index ad9ae28f712..3901e17f9c2 100644
--- a/src/server/worldserver/CommandLine/CliRunnable.cpp
+++ b/src/server/worldserver/CommandLine/CliRunnable.cpp
@@ -36,9 +36,9 @@
char* command_finder(const char* text, int state)
{
- static int idx, len;
+ static size_t idx, len;
const char* ret;
- ChatCommand* cmd = ChatHandler::getCommandTable();
+ std::vector<ChatCommand> const& cmd = ChatHandler::getCommandTable();
if (!state)
{
@@ -46,20 +46,19 @@ char* command_finder(const char* text, int state)
len = strlen(text);
}
- while ((ret = cmd[idx].Name))
+ while (idx < cmd.size())
{
+ ret = cmd[idx].Name;
if (!cmd[idx].AllowConsole)
{
- idx++;
+ ++idx;
continue;
}
- idx++;
+ ++idx;
//printf("Checking %s \n", cmd[idx].Name);
if (strncmp(ret, text, len) == 0)
return strdup(ret);
- if (cmd[idx].Name == NULL)
- break;
}
return ((char*)NULL);