diff options
author | Shauren <shauren.trinity@gmail.com> | 2017-11-26 16:37:51 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2021-08-24 13:43:06 +0200 |
commit | f8c03a90661610e289029c78d2055d7b73a5ad98 (patch) | |
tree | 34701c4e5430179421af108ce8a59c68104f3e48 /sql | |
parent | c94c561b85c9512fa67978512d53cc7b85e5f531 (diff) |
Core/Creatures: Reworked setting move types in database
* Each move type has its own field instead of trying to combine everything in InhabitType
* Allow overriding movement separately for each spawn
(cherry picked from commit 592516ae69d89da3bcb0ede144644a3d2e0186e0)
Diffstat (limited to 'sql')
-rw-r--r-- | sql/base/auth_database.sql | 3 | ||||
-rw-r--r-- | sql/updates/auth/master/2018_03_08_00_auth.sql | 7 | ||||
-rw-r--r-- | sql/updates/world/master/2021_08_24_00_world_2018_03_08_11_world.sql | 34 |
3 files changed, 44 insertions, 0 deletions
diff --git a/sql/base/auth_database.sql b/sql/base/auth_database.sql index c30d7d2c74e..b8a1f658bec 100644 --- a/sql/base/auth_database.sql +++ b/sql/base/auth_database.sql @@ -1198,6 +1198,7 @@ INSERT INTO `rbac_linked_permissions` VALUES (196,870), (196,871), (196,872), +(196,873), (196,881), (197,232), (197,236), @@ -2130,6 +2131,7 @@ INSERT INTO `rbac_permissions` VALUES (870,'Command: debug threatinfo'), (871,'Command: debug instancespawn'), (872,'Command: server debug'), +(873,'Command: reload creature_movement_override'), (881,'Command: reload vehicle_template'); /*!40000 ALTER TABLE `rbac_permissions` ENABLE KEYS */; UNLOCK TABLES; @@ -2347,6 +2349,7 @@ INSERT INTO `updates` VALUES ('2018_02_18_00_auth.sql','8489DD3EFFE14A7486B593435F0BA2BC69B6EABF','ARCHIVED','2018-02-18 16:35:55',0), ('2018_02_19_00_auth.sql','07CE658C5EF88693D3C047EF8E724F94ADA74C15','ARCHIVED','2018-02-19 22:33:32',0), ('2018_02_28_00_auth.sql','E92EF4ABF7FA0C66649E1633DD0459F44C09EB83','ARCHIVED','2018-02-28 23:07:59',0), +('2018_03_08_00_auth.sql','624C58A07E0B4DDC4C1347E8BA8EFEEFD5B43DA7','RELEASED','2018-01-12 15:10:11',0), ('2018_03_14_00_auth.sql','2D71E93DF7419A30D0D21D8A80CF05698302575A','ARCHIVED','2018-03-14 23:07:59',0), ('2018_04_06_00_auth.sql','D8416F0C4751763202B1997C81423F6EE2FCF9A6','ARCHIVED','2018-04-06 18:00:32',0), ('2018_05_13_00_auth.sql','A9E20F2EB1E2FDBB982DB6B00DB7301852B27CD4','ARCHIVED','2018-05-13 20:22:32',0), diff --git a/sql/updates/auth/master/2018_03_08_00_auth.sql b/sql/updates/auth/master/2018_03_08_00_auth.sql new file mode 100644 index 00000000000..8b0e18b1e6c --- /dev/null +++ b/sql/updates/auth/master/2018_03_08_00_auth.sql @@ -0,0 +1,7 @@ +DELETE FROM `rbac_permissions` WHERE `id` = 873; +INSERT INTO `rbac_permissions` (`id`,`name`) VALUES +(873, 'Command: reload creature_movement_override'); + +DELETE FROM `rbac_linked_permissions` WHERE `linkedId` = 873; +INSERT INTO `rbac_linked_permissions` (`id`,`linkedId`) VALUES +(196, 873); diff --git a/sql/updates/world/master/2021_08_24_00_world_2018_03_08_11_world.sql b/sql/updates/world/master/2021_08_24_00_world_2018_03_08_11_world.sql new file mode 100644 index 00000000000..d805be7874c --- /dev/null +++ b/sql/updates/world/master/2021_08_24_00_world_2018_03_08_11_world.sql @@ -0,0 +1,34 @@ +DROP TABLE IF EXISTS `creature_template_movement`; +CREATE TABLE `creature_template_movement` ( + `CreatureId` int(10) unsigned NOT NULL DEFAULT '0', + `Ground` tinyint(3) unsigned NOT NULL DEFAULT '1', + `Swim` tinyint(3) unsigned NOT NULL DEFAULT '1', + `Flight` tinyint(3) unsigned NOT NULL DEFAULT '0', + `Rooted` tinyint(3) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`CreatureId`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +DROP TABLE IF EXISTS `creature_movement_override`; +CREATE TABLE `creature_movement_override` ( + `SpawnId` bigint(20) unsigned NOT NULL DEFAULT '0', + `Ground` tinyint(3) unsigned NOT NULL DEFAULT '1', + `Swim` tinyint(3) unsigned NOT NULL DEFAULT '1', + `Flight` tinyint(3) unsigned NOT NULL DEFAULT '0', + `Rooted` tinyint(3) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`SpawnId`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +INSERT INTO `creature_template_movement` SELECT `entry`,0,0,0,0 FROM `creature_template` WHERE `InhabitType`!=3; +UPDATE `creature_template_movement` SET `Ground`=1 WHERE `CreatureId` IN (SELECT `entry` FROM `creature_template` WHERE `InhabitType` & 1); +UPDATE `creature_template_movement` SET `Swim`=1 WHERE `CreatureId` IN (SELECT `entry` FROM `creature_template` WHERE `InhabitType` & 2); +UPDATE `creature_template_movement` SET `Flight`=1 WHERE `CreatureId` IN (SELECT `entry` FROM `creature_template` WHERE (`InhabitType` & 5) = 4); +UPDATE `creature_template_movement` SET `Flight`=2 WHERE `CreatureId` IN (SELECT `entry` FROM `creature_template` WHERE (`InhabitType` & 5) = 5); +UPDATE `creature_template_movement` SET `Rooted`=1 WHERE `CreatureId` IN (SELECT `entry` FROM `creature_template` WHERE `InhabitType` & 8); + +ALTER TABLE `creature_template` DROP `InhabitType`; + +UPDATE `trinity_string` SET `content_default`='Movement type: %s' WHERE `entry`=11008; + +DELETE FROM `command` WHERE `name`='reload creature_movement_override'; +INSERT INTO `command` (`name`,`permission`,`help`) VALUES +('reload creature_movement_override',873,'Syntax: .reload creature_movement_override\nReload creature_movement_override table.'); |