From 2badb15f6ea296995546a5ccff98e75b1743cd41 Mon Sep 17 00:00:00 2001 From: ratkosrb Date: Wed, 24 Jul 2024 02:34:28 +0300 Subject: [PATCH] Changes from 1.6.1 patch notes. --- sql/migrations/20240723231603_world.sql | 34 +++++++++++++++++++++++++ src/game/Objects/Unit.cpp | 9 +++++++ 2 files changed, 43 insertions(+) create mode 100644 sql/migrations/20240723231603_world.sql diff --git a/sql/migrations/20240723231603_world.sql b/sql/migrations/20240723231603_world.sql new file mode 100644 index 00000000000..10e3bdc9d15 --- /dev/null +++ b/sql/migrations/20240723231603_world.sql @@ -0,0 +1,34 @@ +DROP PROCEDURE IF EXISTS add_migration; +DELIMITER ?? +CREATE PROCEDURE `add_migration`() +BEGIN +DECLARE v INT DEFAULT 1; +SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20240723231603'); +IF v = 0 THEN +INSERT INTO `migrations` VALUES ('20240723231603'); +-- Add your query below. + + +/* +World of Warcraft Client Patch 1.6.1 (2005-08-02) +- The Oil of Immolation effect is no longer affected by bonuses to + spell damage from items. +*/ +UPDATE `spell_template` SET `effectBonusCoefficient1`=1 WHERE `entry`=11351 && `build` < 4544; + +/* +World of Warcraft Client Patch 1.6.1 (2005-08-02) +- Lowered experience values for Creeping Sludge. +*/ +DELETE FROM `creature_template` WHERE `entry`=12222; +INSERT INTO `creature_template` (`entry`, `patch`, `name`, `subname`, `level_min`, `level_max`, `faction`, `npc_flags`, `gossip_menu_id`, `display_id1`, `display_id2`, `display_id3`, `display_id4`, `display_scale1`, `display_scale2`, `display_scale3`, `display_scale4`, `display_probability1`, `display_probability2`, `display_probability3`, `display_probability4`, `display_total_probability`, `mount_display_id`, `speed_walk`, `speed_run`, `detection_range`, `call_for_help_range`, `leash_range`, `type`, `pet_family`, `rank`, `unit_class`, `xp_multiplier`, `health_multiplier`, `mana_multiplier`, `armor_multiplier`, `damage_multiplier`, `damage_variance`, `damage_school`, `base_attack_time`, `ranged_attack_time`, `holy_res`, `fire_res`, `nature_res`, `frost_res`, `shadow_res`, `arcane_res`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `loot_id`, `pickpocket_loot_id`, `skinning_loot_id`, `gold_min`, `gold_max`, `spell_id1`, `spell_id2`, `spell_id3`, `spell_id4`, `spell_list_id`, `pet_spell_list_id`, `spawn_spell_id`, `auras`, `ai_name`, `movement_type`, `inhabit_type`, `civilian`, `racial_leader`, `equipment_id`, `trainer_id`, `vendor_id`, `mechanic_immune_mask`, `school_immune_mask`, `immunity_flags`, `static_flags1`, `static_flags2`, `flags_extra`, `script_name`) VALUES (12222, 0, 'Creeping Sludge', '', 45, 46, 16, 0, 0, 12349, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.8, 0.285714, 20, 5, 0, 10, 0, 1, 1, 1, 3, 1.5, 0.95, 3.9, 0.14, 0, 2000, 2000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12222, 12222, 0, 221, 498, 0, 0, 0, 0, 0, 0, 0, '22638', 'EventAI', 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +INSERT INTO `creature_template` (`entry`, `patch`, `name`, `subname`, `level_min`, `level_max`, `faction`, `npc_flags`, `gossip_menu_id`, `display_id1`, `display_id2`, `display_id3`, `display_id4`, `display_scale1`, `display_scale2`, `display_scale3`, `display_scale4`, `display_probability1`, `display_probability2`, `display_probability3`, `display_probability4`, `display_total_probability`, `mount_display_id`, `speed_walk`, `speed_run`, `detection_range`, `call_for_help_range`, `leash_range`, `type`, `pet_family`, `rank`, `unit_class`, `xp_multiplier`, `health_multiplier`, `mana_multiplier`, `armor_multiplier`, `damage_multiplier`, `damage_variance`, `damage_school`, `base_attack_time`, `ranged_attack_time`, `holy_res`, `fire_res`, `nature_res`, `frost_res`, `shadow_res`, `arcane_res`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `loot_id`, `pickpocket_loot_id`, `skinning_loot_id`, `gold_min`, `gold_max`, `spell_id1`, `spell_id2`, `spell_id3`, `spell_id4`, `spell_list_id`, `pet_spell_list_id`, `spawn_spell_id`, `auras`, `ai_name`, `movement_type`, `inhabit_type`, `civilian`, `racial_leader`, `equipment_id`, `trainer_id`, `vendor_id`, `mechanic_immune_mask`, `school_immune_mask`, `immunity_flags`, `static_flags1`, `static_flags2`, `flags_extra`, `script_name`) VALUES (12222, 1, 'Creeping Sludge', '', 45, 46, 16, 0, 0, 14350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.8, 0.285714, 20, 5, 0, 10, 0, 1, 1, 1, 3, 1.5, 0.95, 3.9, 0.14, 0, 2000, 2000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12222, 12222, 0, 221, 498, 0, 0, 0, 0, 0, 0, 0, '22638', 'EventAI', 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +INSERT INTO `creature_template` (`entry`, `patch`, `name`, `subname`, `level_min`, `level_max`, `faction`, `npc_flags`, `gossip_menu_id`, `display_id1`, `display_id2`, `display_id3`, `display_id4`, `display_scale1`, `display_scale2`, `display_scale3`, `display_scale4`, `display_probability1`, `display_probability2`, `display_probability3`, `display_probability4`, `display_total_probability`, `mount_display_id`, `speed_walk`, `speed_run`, `detection_range`, `call_for_help_range`, `leash_range`, `type`, `pet_family`, `rank`, `unit_class`, `xp_multiplier`, `health_multiplier`, `mana_multiplier`, `armor_multiplier`, `damage_multiplier`, `damage_variance`, `damage_school`, `base_attack_time`, `ranged_attack_time`, `holy_res`, `fire_res`, `nature_res`, `frost_res`, `shadow_res`, `arcane_res`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `loot_id`, `pickpocket_loot_id`, `skinning_loot_id`, `gold_min`, `gold_max`, `spell_id1`, `spell_id2`, `spell_id3`, `spell_id4`, `spell_list_id`, `pet_spell_list_id`, `spawn_spell_id`, `auras`, `ai_name`, `movement_type`, `inhabit_type`, `civilian`, `racial_leader`, `equipment_id`, `trainer_id`, `vendor_id`, `mechanic_immune_mask`, `school_immune_mask`, `immunity_flags`, `static_flags1`, `static_flags2`, `flags_extra`, `script_name`) VALUES (12222, 4, 'Creeping Sludge', '', 45, 46, 16, 0, 0, 14350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.8, 0.285714, 20, 5, 0, 10, 0, 1, 1, 0.1, 3, 1.5, 0.95, 3.9, 0.14, 0, 2000, 2000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12222, 12222, 0, 221, 498, 0, 0, 0, 0, 0, 0, 0, '22638', 'EventAI', 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); + + +-- End of migration. +END IF; +END?? +DELIMITER ; +CALL add_migration(); +DROP PROCEDURE IF EXISTS add_migration; diff --git a/src/game/Objects/Unit.cpp b/src/game/Objects/Unit.cpp index 023efcfd895..44c03e52094 100644 --- a/src/game/Objects/Unit.cpp +++ b/src/game/Objects/Unit.cpp @@ -267,7 +267,16 @@ void Unit::Update(uint32 update_diff, uint32 p_time) if (!IsCharmerOrOwnerPlayerOrPlayerItself() && static_cast(this)->HasExtraFlag(CREATURE_FLAG_EXTRA_NO_THREAT_LIST)) OnLeaveCombat(); else + { + // World of Warcraft Client Patch 1.6.1 (2005-08-02) + // - Spell casting is no longer interrupted when leaving combat. +#if SUPPORTED_CLIENT_BUILD < CLIENT_BUILD_1_6_1 + if (IsNonMeleeSpellCasted(false)) + InterruptNonMeleeSpells(false); +#endif + ClearInCombat(); + } } } }