mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-08 15:58:04 +00:00
Merge branch 'master' of https://github.com/azerothcore/azerothcore-wotlk
This commit is contained in:
14
data/sql/updates/db_world/2026_07_25_01.sql
Normal file
14
data/sql/updates/db_world/2026_07_25_01.sql
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
-- DB update 2026_07_25_00 -> 2026_07_25_01
|
||||||
|
-- SPELL_TRANSFORM_GHOST and SPELL_FORGIVENESS
|
||||||
|
|
||||||
|
DELETE FROM `spell_script_names` WHERE `spell_id` IN (28443, 28697);
|
||||||
|
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
|
||||||
|
(28443, 'spell_transform_ghost_visual'),
|
||||||
|
(28697, 'spell_forgiveness_dummy_visual');
|
||||||
|
|
||||||
|
-- Smartscript
|
||||||
|
-- Deleted 28 due to SPELL_FORGIVENESS attack death
|
||||||
|
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 3976) AND (`source_type` = 0) AND (`id` IN (24, 28, 29));
|
||||||
|
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`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||||
|
(3976, 0, 24, 28, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Scarlet Commander Mograine - On Reached Point 1 - Start Attacking'),-- Change link 29 to 28
|
||||||
|
(3976, 0, 28, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Scarlet Commander Mograine - On Reached Point 1 - Enable Evade');-- Change id 29 to 28
|
||||||
3
data/sql/updates/db_world/2026_07_25_02.sql
Normal file
3
data/sql/updates/db_world/2026_07_25_02.sql
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
-- DB update 2026_07_25_01 -> 2026_07_25_02
|
||||||
|
--
|
||||||
|
UPDATE `creature_template` SET `KillCredit1` = 0 WHERE (`entry` = 27370);
|
||||||
3
data/sql/updates/db_world/2026_07_25_03.sql
Normal file
3
data/sql/updates/db_world/2026_07_25_03.sql
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
-- DB update 2026_07_25_02 -> 2026_07_25_03
|
||||||
|
--
|
||||||
|
UPDATE `quest_offer_reward` SET `Emote1` = 5, `Emote2` = 1, `Emote3` = 1, `EmoteDelay2` = 1000, `RewardText` = 'WHAT?!$B$B<The image before you distorts for a moment as the archmage attempts to regain his composure.>$B$BOf course, we should have guessed that this was what they were up to all along. Quickly, there\'s no time to waste.$B$BWyrmrest must be warned!' WHERE (`ID` = 12110);
|
||||||
30
data/sql/updates/db_world/2026_07_25_04.sql
Normal file
30
data/sql/updates/db_world/2026_07_25_04.sql
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
-- DB update 2026_07_25_03 -> 2026_07_25_04
|
||||||
|
--
|
||||||
|
DELETE FROM `creature` WHERE (`id` = 24516) AND (`guid` IN (114439, 114440));
|
||||||
|
INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `wander_distance`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `Comment`, `CreateObject`, `VerifiedBuild`) VALUES
|
||||||
|
(114439, 24516, 571, 0, 0, 1, 1, 0, 2319.6106, -3020.8176, 136.57187, 2.20952, 300, 0, 0, 0, 0, 2, 0, 0, 0, '', NULL, 1, 65512);
|
||||||
|
|
||||||
|
DELETE FROM `creature_addon` WHERE `guid` = 114439;
|
||||||
|
INSERT INTO `creature_addon` (`guid`, `path_id`) VALUES
|
||||||
|
(114439, 1144390);
|
||||||
|
|
||||||
|
DELETE FROM `waypoint_data` WHERE `id` = 1144390;
|
||||||
|
INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`) VALUES
|
||||||
|
(1144390, 1 , 2319.6106, -3020.8176, 136.57187, NULL),
|
||||||
|
(1144390, 2 , 2293.5505, -3033.0613, 136.70703, NULL),
|
||||||
|
(1144390, 3 , 2270.9585, -3049.1892, 136.7957, NULL),
|
||||||
|
(1144390, 4 , 2261.9817, -3069.591, 137.1125, NULL),
|
||||||
|
(1144390, 5 , 2244.4805, -3111.4001, 136.79797, NULL),
|
||||||
|
(1144390, 6 , 2234.3372, -3129.741, 138.23094, NULL),
|
||||||
|
(1144390, 7 , 2205.1501, -3149.454, 140.47078, NULL),
|
||||||
|
(1144390, 8 , 2178.7832, -3143.6543, 139.04956, NULL),
|
||||||
|
(1144390, 9 , 2159.131, -3118.843, 138.94107, NULL),
|
||||||
|
(1144390, 10, 2157.4236, -3090.9448, 138.66618, NULL),
|
||||||
|
(1144390, 11, 2184.6926, -3076.7776, 137.69681, NULL),
|
||||||
|
(1144390, 12, 2205.2817, -3067.4485, 138.47263, NULL),
|
||||||
|
(1144390, 13, 2241.1084, -3040.399, 136.02086, NULL),
|
||||||
|
(1144390, 14, 2251.2544, -3001.0442, 135.393, NULL),
|
||||||
|
(1144390, 15, 2261.8438, -2975.5894, 137.61548, NULL),
|
||||||
|
(1144390, 16, 2288.5696, -2967.9568, 134.09793, NULL),
|
||||||
|
(1144390, 17, 2312.0784, -2973.8508, 131.73712, NULL),
|
||||||
|
(1144390, 18, 2327.24, -2996.011, 135.02109, NULL);
|
||||||
@@ -18,6 +18,8 @@
|
|||||||
#include "InstanceMapScript.h"
|
#include "InstanceMapScript.h"
|
||||||
#include "scarletmonastery.h"
|
#include "scarletmonastery.h"
|
||||||
#include "ScriptedCreature.h"
|
#include "ScriptedCreature.h"
|
||||||
|
#include "SpellScript.h"
|
||||||
|
#include "SpellScriptLoader.h"
|
||||||
|
|
||||||
enum AshbringerEventMisc
|
enum AshbringerEventMisc
|
||||||
{
|
{
|
||||||
@@ -39,17 +41,6 @@ enum AshbringerEventMisc
|
|||||||
GO_HIGH_INQUISITOR_DOOR = 104600
|
GO_HIGH_INQUISITOR_DOOR = 104600
|
||||||
};
|
};
|
||||||
|
|
||||||
enum AshbringerSpell
|
|
||||||
{
|
|
||||||
//Highlord Mograine Spells
|
|
||||||
//Needs Fix: Increased the visual effect of spells on hit
|
|
||||||
SPELL_FORGIVENESS = 28697,
|
|
||||||
|
|
||||||
//High Inquisitor Fairbanks
|
|
||||||
//Needs Fix: Increased the visual effect of spells on hit
|
|
||||||
SPELL_TRANSFORM_GHOST = 28443
|
|
||||||
};
|
|
||||||
|
|
||||||
enum DataTypes
|
enum DataTypes
|
||||||
{
|
{
|
||||||
TYPE_MOGRAINE_AND_WHITE_EVENT = 1,
|
TYPE_MOGRAINE_AND_WHITE_EVENT = 1,
|
||||||
@@ -66,7 +57,7 @@ enum DataTypes
|
|||||||
GAMEOBJECT_PUMPKIN_SHRINE = 10
|
GAMEOBJECT_PUMPKIN_SHRINE = 10
|
||||||
};
|
};
|
||||||
|
|
||||||
float const CATHEDRAL_PULL_RANGE = 80.0f; // Distance from the Cathedral doors to where Mograine is standing
|
float constexpr CATHEDRAL_PULL_RANGE = 80.0f; // Distance from the Cathedral doors to where Mograine is standing
|
||||||
|
|
||||||
class instance_scarlet_monastery : public InstanceMapScript
|
class instance_scarlet_monastery : public InstanceMapScript
|
||||||
{
|
{
|
||||||
@@ -271,7 +262,63 @@ public:
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum AshbringerSpell
|
||||||
|
{
|
||||||
|
SPELL_FORGIVENESS = 28697,
|
||||||
|
SPELL_FORGIVENESS_IMPACTKIT = 317,
|
||||||
|
SPELL_TRANSFORM_GHOST = 28443,
|
||||||
|
SPELL_TRANSFORM_IMPACTKIT=500
|
||||||
|
};
|
||||||
|
|
||||||
|
// SPELL_FORGIVENESS = 28697
|
||||||
|
class spell_forgiveness_dummy_visual : public SpellScript
|
||||||
|
{
|
||||||
|
PrepareSpellScript(spell_forgiveness_dummy_visual);
|
||||||
|
|
||||||
|
void HandleDummy(SpellEffIndex /*effIndex*/)
|
||||||
|
{
|
||||||
|
Unit* target = GetHitUnit();
|
||||||
|
if (!target)
|
||||||
|
return;
|
||||||
|
|
||||||
|
target->SendPlaySpellVisual(SPELL_FORGIVENESS_IMPACTKIT);//SPELL_FORGIVENESS IMPACTKIT 317 SpellVisualEntry.ImpactKit can't be used
|
||||||
|
|
||||||
|
//Delay death to prevent the death of the creature from interrupting the animation display
|
||||||
|
target->m_Events.AddEventAtOffset([target]() -> void
|
||||||
|
{
|
||||||
|
target->KillSelf();
|
||||||
|
}, 500ms);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Register() override
|
||||||
|
{
|
||||||
|
OnEffectHitTarget += SpellEffectFn(spell_forgiveness_dummy_visual::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// SPELL_TRANSFORM_GHOST = 28443
|
||||||
|
class spell_transform_ghost_visual: public SpellScript
|
||||||
|
{
|
||||||
|
PrepareSpellScript(spell_transform_ghost_visual);
|
||||||
|
|
||||||
|
void HandleAfterHit()
|
||||||
|
{
|
||||||
|
Unit* target = GetHitUnit();
|
||||||
|
if (!target)
|
||||||
|
return;
|
||||||
|
|
||||||
|
target->SendPlaySpellVisual(SPELL_TRANSFORM_IMPACTKIT); //SPELL_TRANSFORM_GHOST IMPACTKIT 500
|
||||||
|
}
|
||||||
|
|
||||||
|
void Register() override
|
||||||
|
{
|
||||||
|
AfterHit += SpellHitFn(spell_transform_ghost_visual::HandleAfterHit);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
void AddSC_instance_scarlet_monastery()
|
void AddSC_instance_scarlet_monastery()
|
||||||
{
|
{
|
||||||
new instance_scarlet_monastery();
|
new instance_scarlet_monastery();
|
||||||
|
RegisterSpellScript(spell_forgiveness_dummy_visual);
|
||||||
|
RegisterSpellScript(spell_transform_ghost_visual);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "CreatureScript.h"
|
#include "CreatureScript.h"
|
||||||
|
#include "Player.h"
|
||||||
#include "ScriptedCreature.h"
|
#include "ScriptedCreature.h"
|
||||||
#include "SpellScript.h"
|
#include "SpellScript.h"
|
||||||
#include "SpellScriptLoader.h"
|
#include "SpellScriptLoader.h"
|
||||||
|
|||||||
Reference in New Issue
Block a user