aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/base/auth_database.sql5
-rw-r--r--sql/updates/auth/3.3.5/2020_12_31_00_auth.sql7
-rw-r--r--sql/updates/world/3.3.5/2020_12_31_00_world.sql6
-rw-r--r--src/server/game/Accounts/RBAC.h2
-rw-r--r--src/server/scripts/Commands/cs_reload.cpp9
5 files changed, 27 insertions, 2 deletions
diff --git a/sql/base/auth_database.sql b/sql/base/auth_database.sql
index 9cf38ebf745..01d2f3514bc 100644
--- a/sql/base/auth_database.sql
+++ b/sql/base/auth_database.sql
@@ -893,6 +893,7 @@ INSERT INTO `rbac_linked_permissions` VALUES
(196,877),
(196,878),
(196,879),
+(196,881),
(197,232),
(197,236),
(197,237),
@@ -1785,6 +1786,7 @@ INSERT INTO `rbac_permissions` VALUES
(878,'Command: debug questreset'),
(879,'Command: debug poolstatus'),
(880,'Command: pdump copy');
+(881,'Command: reload vehicle_template');
/*!40000 ALTER TABLE `rbac_permissions` ENABLE KEYS */;
UNLOCK TABLES;
@@ -1977,7 +1979,8 @@ INSERT INTO `updates` VALUES
('2020_09_17_00_auth.sql','BBC0A8B2BBED38A57A83999909EB066753A893C5','ARCHIVED','2020-09-17 00:00:00',0),
('2020_10_15_00_auth.sql','8A79DE7DBDF35EBDA5C261BEBF9BC8E5CFF816CE','ARCHIVED','2020-10-15 07:33:13',0),
('2020_11_16_00_auth.sql','C0E1AAA8876DB65B2B2FA0AFD5D6CDF233020D37','ARCHIVED','2020-11-16 13:37:22',0),
-('2020_12_15_00_auth.sql','C416FC93AF6BC33A6CE59185CEB03B4945701233','ARCHIVED','2020-12-15 22:47:26',0);
+('2020_12_15_00_auth.sql','C416FC93AF6BC33A6CE59185CEB03B4945701233','ARCHIVED','2020-12-15 22:47:26',0),
+('2020_12_31_00_auth.sql','05C9C105D55C6588CDA0D75AE3B135B7E6B54C06','RELEASED','2020-12-31 12:58:21',0);
/*!40000 ALTER TABLE `updates` ENABLE KEYS */;
UNLOCK TABLES;
diff --git a/sql/updates/auth/3.3.5/2020_12_31_00_auth.sql b/sql/updates/auth/3.3.5/2020_12_31_00_auth.sql
new file mode 100644
index 00000000000..44d29e41def
--- /dev/null
+++ b/sql/updates/auth/3.3.5/2020_12_31_00_auth.sql
@@ -0,0 +1,7 @@
+DELETE FROM `rbac_permissions` WHERE `id`=881;
+INSERT INTO `rbac_permissions` (`id`,`name`) VALUES
+(881, 'Command: reload vehicle_template');
+
+DELETE FROM `rbac_linked_permissions` WHERE `linkedId`=881;
+INSERT INTO `rbac_linked_permissions` (`id`,`linkedId`) VALUES
+(196,881);
diff --git a/sql/updates/world/3.3.5/2020_12_31_00_world.sql b/sql/updates/world/3.3.5/2020_12_31_00_world.sql
index 15be0e0e2a7..b974c0abba2 100644
--- a/sql/updates/world/3.3.5/2020_12_31_00_world.sql
+++ b/sql/updates/world/3.3.5/2020_12_31_00_world.sql
@@ -7,3 +7,9 @@ CREATE TABLE `vehicle_template` (
`despawnDelayMs` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`creatureId`)
) ENGINE=MyISAM;
+
+DELETE FROM `command` WHERE `name`='reload vehicle_template';
+INSERT INTO `command` (`name`,`permission`,`help`) VALUES
+('reload vehicle_template', 881, "Syntax: .reload vehicle_template
+
+Reloads vehicle template definitions from the database.");
diff --git a/src/server/game/Accounts/RBAC.h b/src/server/game/Accounts/RBAC.h
index e36b3341cde..fb037fdada8 100644
--- a/src/server/game/Accounts/RBAC.h
+++ b/src/server/game/Accounts/RBAC.h
@@ -743,7 +743,7 @@ enum RBACPermissions
RBAC_PERM_COMMAND_LOOKUP_QUEST_ID = 877,
// 878-879 previously used, do not reuse
RBAC_PERM_COMMAND_PDUMP_COPY = 880,
- RBAC_PERM_COMMAND_RELOAD_VEHICLE_TEMPLATE = 881, // reserved
+ RBAC_PERM_COMMAND_RELOAD_VEHICLE_TEMPLATE = 881,
//
// IF YOU ADD NEW PERMISSIONS, ADD THEM IN MASTER BRANCH AS WELL!
//
diff --git a/src/server/scripts/Commands/cs_reload.cpp b/src/server/scripts/Commands/cs_reload.cpp
index 84b22033d80..0e00080d709 100644
--- a/src/server/scripts/Commands/cs_reload.cpp
+++ b/src/server/scripts/Commands/cs_reload.cpp
@@ -163,6 +163,7 @@ public:
{ "trinity_string", rbac::RBAC_PERM_COMMAND_RELOAD_TRINITY_STRING, true, &HandleReloadTrinityStringCommand, "" },
{ "waypoint_scripts", rbac::RBAC_PERM_COMMAND_RELOAD_WAYPOINT_SCRIPTS, true, &HandleReloadWpScriptsCommand, "" },
{ "waypoint_data", rbac::RBAC_PERM_COMMAND_RELOAD_WAYPOINT_DATA, true, &HandleReloadWpCommand, "" },
+ { "vehicle_template", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_TEMPLATE, true, &HandleReloadVehicleTemplateCommand, "" },
{ "vehicle_accessory", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_ACCESORY, true, &HandleReloadVehicleAccessoryCommand, "" },
{ "vehicle_template_accessory", rbac::RBAC_PERM_COMMAND_RELOAD_VEHICLE_TEMPLATE_ACCESSORY, true, &HandleReloadVehicleTemplateAccessoryCommand, "" },
};
@@ -1161,6 +1162,14 @@ public:
return true;
}
+ static bool HandleReloadVehicleTemplateCommand(ChatHandler* handler, char const* /*args*/)
+ {
+ TC_LOG_INFO("misc", "Reloading vehicle_template table...");
+ sObjectMgr->LoadVehicleTemplate();
+ handler->SendGlobalGMSysMessage("Vehicle templates reloaded.");
+ return true;
+ }
+
static bool HandleReloadVehicleAccessoryCommand(ChatHandler* handler, char const* /*args*/)
{
TC_LOG_INFO("misc", "Reloading vehicle_accessory table...");