diff options
author | Vincent_Michael <Vincent_Michael@gmx.de> | 2013-01-13 23:41:45 +0100 |
---|---|---|
committer | Vincent_Michael <Vincent_Michael@gmx.de> | 2013-01-13 23:41:45 +0100 |
commit | b06c7e77858dcad0614c96f568126aee9966fa89 (patch) | |
tree | 08ad3676bd09f2de3732e7aae2dbfed47a92b10e | |
parent | 32e08bcd122fce70ae33eed3f0ec44d35a60eff2 (diff) | |
parent | 0a4cfd04bb31eeaeb4843cd74bcfb35cd37f4d19 (diff) |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into mmaps
-rw-r--r-- | sql/old/3.3.5a/2012_09_16_00_world_version.sql (renamed from sql/updates/world/2012_09_16_00_world_version.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_16_01_world_conditions.sql (renamed from sql/updates/world/2012_09_16_01_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_16_01_world_creature_loot_template.sql (renamed from sql/updates/world/2012_09_16_01_world_creature_loot_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_16_01_world_creature_template_addon.sql (renamed from sql/updates/world/2012_09_16_01_world_creature_template_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_16_02_world_fires_over_skettis.sql (renamed from sql/updates/world/2012_09_16_02_world_fires_over_skettis.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_16_03_world_spell_script_names.sql (renamed from sql/updates/world/2012_09_16_03_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_17_00_world_spell_bonus_data.sql (renamed from sql/updates/world/2012_09_17_00_world_spell_bonus_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_17_01_world_spell_bonus_data.sql (renamed from sql/updates/world/2012_09_17_01_world_spell_bonus_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_17_01_world_spell_script_names.sql (renamed from sql/updates/world/2012_09_17_01_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_17_02_world_misc.sql (renamed from sql/updates/world/2012_09_17_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_18_00_world_creature_template.sql (renamed from sql/updates/world/2012_09_18_00_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_18_01_world_creature_template.sql (renamed from sql/updates/world/2012_09_18_01_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_19_00_world_dwarfageddon.sql (renamed from sql/updates/world/2012_09_19_00_world_dwarfageddon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_19_00_world_reference_loot_template.sql (renamed from sql/updates/world/2012_09_19_00_world_reference_loot_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_20_00_world_creature_loot_template.sql (renamed from sql/updates/world/2012_09_20_00_world_creature_loot_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_22_01_world_i_was_a_lot_of_things.sql (renamed from sql/updates/world/2012_09_22_01_world_i_was_a_lot_of_things.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_22_03_world_game_event.sql (renamed from sql/updates/world/2012_09_22_03_world_game_event.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_24_00_world_spell_script_names.sql (renamed from sql/updates/world/2012_09_24_00_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_24_01_world_spell_script_names.sql (renamed from sql/updates/world/2012_09_24_01_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_24_02_world_misc.sql (renamed from sql/updates/world/2012_09_24_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_24_03_world_misc.sql (renamed from sql/updates/world/2012_09_24_03_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_26_00_world_misc.sql (renamed from sql/updates/world/2012_09_26_00_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_26_01_world_spell_bonus_data.sql (renamed from sql/updates/world/2012_09_26_01_world_spell_bonus_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_27_01_world_custodian_of_time.sql (renamed from sql/updates/world/2012_09_27_01_world_custodian_of_time.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_28_00_world_creature_model_info.sql (renamed from sql/updates/world/2012_09_28_00_world_creature_model_info.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_29_00_world_creature_model_info.sql (renamed from sql/updates/world/2012_09_29_00_world_creature_model_info.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_29_01_world_creature_text.sql (renamed from sql/updates/world/2012_09_29_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_30_00_world_creature_text.sql (renamed from sql/updates/world/2012_09_30_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_30_01_world_player_factionchange_titles.sql (renamed from sql/updates/world/2012_09_30_01_world_player_factionchange_titles.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_30_02_world_creature_text.sql (renamed from sql/updates/world/2012_09_30_02_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_09_30_03_world_creature_text.sql (renamed from sql/updates/world/2012_09_30_03_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_02_00_world_oculus.sql (renamed from sql/updates/world/2012_10_02_00_world_oculus.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_04_00_world_spelldifficulty_dbc.sql (renamed from sql/updates/world/2012_10_04_00_world_spelldifficulty_dbc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_04_01_world_script_texts.sql (renamed from sql/updates/world/2012_10_04_01_world_script_texts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_05_00_world_misc.sql (renamed from sql/updates/world/2012_10_05_00_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_05_01_world_spell_script_names.sql (renamed from sql/updates/world/2012_10_05_01_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_00_world_spell_difficulty.sql (renamed from sql/updates/world/2012_10_06_00_world_spell_difficulty.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_00_world_spell_script_names.sql (renamed from sql/updates/world/2012_10_06_00_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_01_world_spell_dbc.sql (renamed from sql/updates/world/2012_10_06_01_world_spell_dbc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_02_world_misc_templates.sql (renamed from sql/updates/world/2012_10_06_02_world_misc_templates.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_03_world_creature_text.sql (renamed from sql/updates/world/2012_10_06_03_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_04_world_misc_spawns.sql (renamed from sql/updates/world/2012_10_06_04_world_misc_spawns.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_06_05_world_spell_script_names.sql (renamed from sql/updates/world/2012_10_06_05_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_07_00_world_creature_loot_template.sql (renamed from sql/updates/world/2012_10_07_00_world_creature_loot_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_07_01_world_spell_proc_event.sql (renamed from sql/updates/world/2012_10_07_01_world_spell_proc_event.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_09_00_character_glyphs.sql (renamed from sql/updates/characters/2012_10_09_00_character_glyphs.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_09_00_world_spell_groups.sql (renamed from sql/updates/world/2012_10_09_00_world_spell_groups.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_09_01_world_spell_groups.sql (renamed from sql/updates/world/2012_10_09_01_world_spell_groups.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_09_02_world_spell_groups.sql (renamed from sql/updates/world/2012_10_09_02_world_spell_groups.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_10_00_world_battleground_template.sql (renamed from sql/updates/world/2012_10_10_00_world_battleground_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_11_00_world_gameobject.sql (renamed from sql/updates/world/2012_10_11_00_world_gameobject.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_13_00_world_creature_template.sql (renamed from sql/updates/world/2012_10_13_00_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_14_00_world_creature.sql (renamed from sql/updates/world/2012_10_14_00_world_creature.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_16_00_world_spell_area.sql (renamed from sql/updates/world/2012_10_16_00_world_spell_area.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_17_00_character_gm_tickets.sql (renamed from sql/updates/characters/2012_10_17_00_character_gm_tickets.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_20_00_world_transports.sql (renamed from sql/updates/world/2012_10_20_00_world_transports.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_20_01_world_spell_script_names.sql (renamed from sql/updates/world/2012_10_20_01_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_20_02_world_creature_text.sql (renamed from sql/updates/world/2012_10_20_02_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_21_00_world_conditions.sql (renamed from sql/updates/world/2012_10_21_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_21_01_world_misc.sql (renamed from sql/updates/world/2012_10_21_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_23_00_world_trinity_string.sql (renamed from sql/updates/world/2012_10_23_00_world_trinity_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_23_01_world_command.sql (renamed from sql/updates/world/2012_10_23_01_world_command.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_25_00_world_childrens_week.sql (renamed from sql/updates/world/2012_10_25_00_world_childrens_week.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_26_00_world_sai.sql (renamed from sql/updates/world/2012_10_26_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_27_00_world_creature.sql (renamed from sql/updates/world/2012_10_27_00_world_creature.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_27_01_world_creature_loot_template.sql (renamed from sql/updates/world/2012_10_27_01_world_creature_loot_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_10_29_00_world_conditions.sql (renamed from sql/updates/world/2012_10_29_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_02_00_character_misc.sql (renamed from sql/updates/characters/2012_11_02_00_character_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_03_00_world_creature_loot_template.sql (renamed from sql/updates/world/2012_11_03_00_world_creature_loot_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_07_00_world_misc.sql (renamed from sql/updates/world/2012_11_07_00_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_11_00_world_sai.sql (renamed from sql/updates/world/2012_11_11_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_11_01_world_quest_template.sql (renamed from sql/updates/world/2012_11_11_01_world_quest_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_11_02_world_gossip_menu.sql (renamed from sql/updates/world/2012_11_11_02_world_gossip_menu.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_11_03_world_gossip_menu.sql (renamed from sql/updates/world/2012_11_11_03_world_gossip_menu.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_12_00_world_quest_template.sql (renamed from sql/updates/world/2012_11_12_00_world_quest_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_12_01_world_misc.sql (renamed from sql/updates/world/2012_11_12_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_12_02_world_quest_template.sql (renamed from sql/updates/world/2012_11_12_02_world_quest_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_12_03_world_misc.sql (renamed from sql/updates/world/2012_11_12_03_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_00_world_waypoints.sql (renamed from sql/updates/world/2012_11_13_00_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_01_world_misc.sql (renamed from sql/updates/world/2012_11_13_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_02_world_creature.sql (renamed from sql/updates/world/2012_11_13_02_world_creature.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_03_world_gameevent.sql (renamed from sql/updates/world/2012_11_13_03_world_gameevent.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_04_world_gameeventquest.sql (renamed from sql/updates/world/2012_11_13_04_world_gameeventquest.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_05_world_player_factionchange_items.sql (renamed from sql/updates/world/2012_11_13_05_world_player_factionchange_items.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_13_06_world_trinity_string.sql (renamed from sql/updates/world/2012_11_13_06_world_trinity_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_14_00_world_sai.sql (renamed from sql/updates/world/2012_11_14_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_14_00_world_various_fixes.sql (renamed from sql/updates/world/2012_11_14_00_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_14_02_world_battleground_template.sql (renamed from sql/updates/world/2012_11_14_02_world_battleground_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_16_00_world_utgarde.sql (renamed from sql/updates/world/2012_11_16_00_world_utgarde.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_16_01_world_utgarde.sql (renamed from sql/updates/world/2012_11_16_01_world_utgarde.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_16_02_world_creature_ai_summons.sql (renamed from sql/updates/world/2012_11_16_02_world_creature_ai_summons.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_17_00_world_various_fixes.sql (renamed from sql/updates/world/2012_11_17_00_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_18_00_character_calendar.sql (renamed from sql/updates/characters/2012_11_18_00_character_calendar.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_18_00_world_ormorok.sql (renamed from sql/updates/world/2012_11_18_00_world_ormorok.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_18_01_world_creature_text.sql (renamed from sql/updates/world/2012_11_18_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_18_01_world_gameobject.sql (renamed from sql/updates/world/2012_11_18_01_world_gameobject.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_18_02_world_toc.sql (renamed from sql/updates/world/2012_11_18_02_world_toc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_19_00_world_various_fixes.sql (renamed from sql/updates/world/2012_11_19_00_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_19_01_world_pilgrims_bounty.sql (renamed from sql/updates/world/2012_11_19_01_world_pilgrims_bounty.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_19_02_world_misc.sql (renamed from sql/updates/world/2012_11_19_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_19_03_world_ysera.sql (renamed from sql/updates/world/2012_11_19_03_world_ysera.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_20_00_world_creature_text.sql (renamed from sql/updates/world/2012_11_20_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_21_00_world_sai.sql (renamed from sql/updates/world/2012_11_21_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_00_world_conditions.sql (renamed from sql/updates/world/2012_11_24_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_00_world_creature_text.sql (renamed from sql/updates/world/2012_11_24_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_01_world_quest_start_scripts.sql (renamed from sql/updates/world/2012_11_24_01_world_quest_start_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_02_world_creature_text.sql (renamed from sql/updates/world/2012_11_24_02_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_02_world_gossip_menu_option.sql (renamed from sql/updates/world/2012_11_24_02_world_gossip_menu_option.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_03_world_various_fixes.sql (renamed from sql/updates/world/2012_11_24_03_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_24_04_world_sai.sql (renamed from sql/updates/world/2012_11_24_04_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_25_00_world_various_fixes.sql (renamed from sql/updates/world/2012_11_25_00_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_25_01_world_various_fixes.sql (renamed from sql/updates/world/2012_11_25_01_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_26_02_world_conditions.sql (renamed from sql/updates/world/2012_11_26_02_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_26_03_world_misc.sql (renamed from sql/updates/world/2012_11_26_03_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_27_00_world_misc.sql (renamed from sql/updates/world/2012_11_27_00_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_27_01_world_achievement_criteria_data.sql (renamed from sql/updates/world/2012_11_27_01_world_achievement_criteria_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_11_30_00_world_spell_script_names.sql (renamed from sql/updates/world/2012_11_30_00_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_01_00_world_assembly_of_iron.sql (renamed from sql/updates/world/2012_12_01_00_world_assembly_of_iron.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_01_01_world_misc.sql (renamed from sql/updates/world/2012_12_01_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_01_02_world_creature_text.sql (renamed from sql/updates/world/2012_12_01_02_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_01_03_world_ulduar_creature_text.sql (renamed from sql/updates/world/2012_12_01_03_world_ulduar_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_01_04_world_spelldifficulty_dbc.sql (renamed from sql/updates/world/2012_12_01_04_world_spelldifficulty_dbc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_01_05_world_creature_template.sql (renamed from sql/updates/world/2012_12_01_05_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_02_00_world_game_object.sql (renamed from sql/updates/world/2012_12_02_00_world_game_object.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_02_01_world_creature_text.sql (renamed from sql/updates/world/2012_12_02_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_02_02_world_waypoint_data.sql (renamed from sql/updates/world/2012_12_02_02_world_waypoint_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_03_00_character_character_queststatus_monthly.sql (renamed from sql/updates/characters/2012_12_03_00_character_character_queststatus_monthly.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_04_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_01_world_quest_start_scripts.sql (renamed from sql/updates/world/2012_12_04_01_world_quest_start_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_02_world_reputation_reward_rate.sql (renamed from sql/updates/world/2012_12_04_02_world_reputation_reward_rate.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_03_world_reputation_reward_rate.sql (renamed from sql/updates/world/2012_12_04_03_world_reputation_reward_rate.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_04_world_creature_text.sql (renamed from sql/updates/world/2012_12_04_04_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_05_world_spell_script_names.sql (renamed from sql/updates/world/2012_12_04_05_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_04_06_world_spell_creature_text.sql (renamed from sql/updates/world/2012_12_04_06_world_spell_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_05_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_05_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_06_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_06_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_07_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_00_world_script_texts.sql (renamed from sql/updates/world/2012_12_07_00_world_script_texts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_01_world_misc.sql (renamed from sql/updates/world/2012_12_07_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_02_world_tracker_pitcrawler.sql (renamed from sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_03_world_tracker_trista.sql (renamed from sql/updates/world/2012_12_07_03_world_tracker_trista.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_04_world_misc.sql (renamed from sql/updates/world/2012_12_07_04_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_05_world_creature_text.sql (renamed from sql/updates/world/2012_12_07_05_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_06_world_sai.sql (renamed from sql/updates/world/2012_12_07_06_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_07_world_sai.sql (renamed from sql/updates/world/2012_12_07_07_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_08_world_misc.sql (renamed from sql/updates/world/2012_12_07_08_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_07_09_world_db_script_string.sql (renamed from sql/updates/world/2012_12_07_09_world_db_script_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_08_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_08_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_08_01_world_sai.sql (renamed from sql/updates/world/2012_12_08_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_09_00_world_conditions.sql (renamed from sql/updates/world/2012_12_09_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_09_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_09_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_09_01_world_misc.sql (renamed from sql/updates/world/2012_12_09_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_09_02_world_quest_template.sql (renamed from sql/updates/world/2012_12_09_02_world_quest_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_10_00_world_smart_scripts.sql (renamed from sql/updates/world/2012_12_10_00_world_smart_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_10_01_world_spell_script_names.sql (renamed from sql/updates/world/2012_12_10_01_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_10_02_world_spawns_waypoints.sql (renamed from sql/updates/world/2012_12_10_02_world_spawns_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_13_00_world.sql (renamed from sql/updates/world/2012_12_13_00_world.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_14_00_world_conditions.sql (renamed from sql/updates/world/2012_12_14_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_14_01_world_waypoint_data.sql (renamed from sql/updates/world/2012_12_14_01_world_waypoint_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_14_02_world_misc.sql (renamed from sql/updates/world/2012_12_14_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_14_03_world_npc_spellclick_spells.sql (renamed from sql/updates/world/2012_12_14_03_world_npc_spellclick_spells.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_14_04_world_misc.sql (renamed from sql/updates/world/2012_12_14_04_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_14_05_world_spell_script_names.sql (renamed from sql/updates/world/2012_12_14_05_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_15_00_world_waypoint_data.sql (renamed from sql/updates/world/2012_12_15_00_world_waypoint_data.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_15_01_world_sai.sql (renamed from sql/updates/world/2012_12_15_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_15_02_world_sai.sql (renamed from sql/updates/world/2012_12_15_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_15_03_world_quest_end_scripts.sql (renamed from sql/updates/world/2012_12_15_03_world_quest_end_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_16_00_world_creature_addon.sql (renamed from sql/updates/world/2012_12_16_00_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_16_01_world_npc_vendor.sql (renamed from sql/updates/world/2012_12_16_01_world_npc_vendor.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_16_02_world_creature_text.sql (renamed from sql/updates/world/2012_12_16_02_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_16_03_world_sai.sql (renamed from sql/updates/world/2012_12_16_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_17_00_world_creature_template.sql (renamed from sql/updates/world/2012_12_17_00_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_17_00_world_song_of_wind_and_water.sql (renamed from sql/updates/world/2012_12_17_00_world_song_of_wind_and_water.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_17_00_world_spell_linked_spell.sql (renamed from sql/updates/world/2012_12_17_00_world_spell_linked_spell.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_18_00_character_worldstates.sql (renamed from sql/updates/characters/2012_12_18_00_character_worldstates.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_18_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_18_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_18_00_world_waking_the_sleeper.sql (renamed from sql/updates/world/2012_12_18_00_world_waking_the_sleeper.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_18_01_world_creature_text.sql (renamed from sql/updates/world/2012_12_18_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_18_02_world_misc.sql (renamed from sql/updates/world/2012_12_18_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_18_02_world_sai.sql (renamed from sql/updates/world/2012_12_18_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_19_00_world_sai.sql (renamed from sql/updates/world/2012_12_19_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_19_01_world_viscidus.sql (renamed from sql/updates/world/2012_12_19_01_world_viscidus.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_19_02_world_sai.sql (renamed from sql/updates/world/2012_12_19_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_20_00_characters_create_item_loot.sql (renamed from sql/updates/characters/2012_12_20_00_characters_create_item_loot.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_20_00_world_conditions.sql (renamed from sql/updates/world/2012_12_20_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_20_01_world_conditions.sql (renamed from sql/updates/world/2012_12_20_01_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_20_02_world_misc.sql (renamed from sql/updates/world/2012_12_20_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_20_03_world_conditions.sql (renamed from sql/updates/world/2012_12_20_03_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_21_00_world_conditions.sql (renamed from sql/updates/world/2012_12_21_00_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_21_01_world_conditions.sql (renamed from sql/updates/world/2012_12_21_01_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_22_01_world_sai.sql (renamed from sql/updates/world/2012_12_22_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_22_02_world_the_crusaders_pinnacle.sql (renamed from sql/updates/world/2012_12_22_02_world_the_crusaders_pinnacle.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_23_00_world_creature_text.sql (renamed from sql/updates/world/2012_12_23_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_23_01_world_creature_text.sql (renamed from sql/updates/world/2012_12_23_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_23_02_world_trinity_string.sql (renamed from sql/updates/world/2012_12_23_02_world_trinity_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_23_03_world_misc.sql (renamed from sql/updates/world/2012_12_23_03_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_00_world_defending_wyrmrest_temple.sql (renamed from sql/updates/world/2012_12_24_00_world_defending_wyrmrest_temple.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_01_world_sai.sql (renamed from sql/updates/world/2012_12_24_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_02_world_sai.sql (renamed from sql/updates/world/2012_12_24_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_03_world_sai.sql (renamed from sql/updates/world/2012_12_24_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_04_world_creature.sql (renamed from sql/updates/world/2012_12_24_04_world_creature.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_05_world_object.sql (renamed from sql/updates/world/2012_12_24_05_world_object.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_06_world_reputation.sql (renamed from sql/updates/world/2012_12_24_06_world_reputation.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_07_world_sai.sql (renamed from sql/updates/world/2012_12_24_07_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_08_world_conditions.sql (renamed from sql/updates/world/2012_12_24_08_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_24_09_world_sai.sql (renamed from sql/updates/world/2012_12_24_09_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_25_00_world_sai.sql (renamed from sql/updates/world/2012_12_25_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_25_01_world_sai.sql (renamed from sql/updates/world/2012_12_25_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_25_02_world_sai.sql (renamed from sql/updates/world/2012_12_25_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_25_03_world_sai.sql (renamed from sql/updates/world/2012_12_25_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_25_04_world_sai.sql (renamed from sql/updates/world/2012_12_25_04_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_01_world_creature_text.sql (renamed from sql/updates/world/2012_12_26_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_02_world_sai.sql (renamed from sql/updates/world/2012_12_26_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_03_world_sai.sql (renamed from sql/updates/world/2012_12_26_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_04_world_sai.sql (renamed from sql/updates/world/2012_12_26_04_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_05_world_sai.sql (renamed from sql/updates/world/2012_12_26_05_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_06_world_sai.sql (renamed from sql/updates/world/2012_12_26_06_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_07_world_game_event.sql (renamed from sql/updates/world/2012_12_26_07_world_game_event.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_08_world_sai.sql (renamed from sql/updates/world/2012_12_26_08_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_09_world_sai.sql (renamed from sql/updates/world/2012_12_26_09_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_10_world_sai.sql (renamed from sql/updates/world/2012_12_26_10_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_11_world_sai.sql (renamed from sql/updates/world/2012_12_26_11_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_12_world_quest_end_scripts.sql (renamed from sql/updates/world/2012_12_26_12_world_quest_end_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_13_world_sai.sql (renamed from sql/updates/world/2012_12_26_13_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_14_world_sai.sql (renamed from sql/updates/world/2012_12_26_14_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_15_world_sai.sql (renamed from sql/updates/world/2012_12_26_15_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_16_world_sai.sql (renamed from sql/updates/world/2012_12_26_16_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_17_world_sai.sql (renamed from sql/updates/world/2012_12_26_17_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_18_world_sai.sql (renamed from sql/updates/world/2012_12_26_18_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_19_world_sai.sql (renamed from sql/updates/world/2012_12_26_19_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_26_20_world_sai.sql (renamed from sql/updates/world/2012_12_26_20_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_27_00_world_orgrims_hammer.sql (renamed from sql/updates/world/2012_12_27_00_world_orgrims_hammer.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_27_01_world_locales_quest.sql (renamed from sql/updates/world/2012_12_27_01_world_locales_quest.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_27_02_world_locales.sql (renamed from sql/updates/world/2012_12_27_02_world_locales.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_27_03_world_sai.sql (renamed from sql/updates/world/2012_12_27_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_27_04_world_the_shadows_vault.sql (renamed from sql/updates/world/2012_12_27_04_world_the_shadows_vault.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_28_00_world_command.sql (renamed from sql/updates/world/2012_12_28_00_world_command.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_28_01_world_misc.sql (renamed from sql/updates/world/2012_12_28_01_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_28_02_world_sai.sql (renamed from sql/updates/world/2012_12_28_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_28_03_world_disables.sql (renamed from sql/updates/world/2012_12_28_03_world_disables.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_28_04_world_citadel_footsteps.sql (renamed from sql/updates/world/2012_12_28_04_world_citadel_footsteps.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_30_01_world_trinity_string.sql (renamed from sql/updates/world/2012_12_30_01_world_trinity_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_31_00_world_sai.sql (renamed from sql/updates/world/2012_12_31_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2012_12_31_01_world_sai.sql (renamed from sql/updates/world/2012_12_31_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_01_00_item_template_restore.sql (renamed from sql/updates/world/2013_01_01_00_item_template_restore.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_01_01_world_creature_text.sql (renamed from sql/updates/world/2013_01_01_01_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_00_world_misc.sql (renamed from sql/updates/world/2013_01_02_00_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_01_world_spell_script.sql (renamed from sql/updates/world/2013_01_02_01_world_spell_script.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_02_world_instance_template.sql (renamed from sql/updates/world/2013_01_02_02_world_instance_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_03_world_sai.sql (renamed from sql/updates/world/2013_01_02_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_04_world_creature.sql (renamed from sql/updates/world/2013_01_02_04_world_creature.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_05_eye_of_eternity.sql (renamed from sql/updates/world/2013_01_02_05_eye_of_eternity.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_06_world_sai.sql (renamed from sql/updates/world/2013_01_02_06_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_06_world_waypoints.sql (renamed from sql/updates/world/2013_01_02_06_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_07_world_waypoints.sql (renamed from sql/updates/world/2013_01_02_07_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_08_world_sai.sql (renamed from sql/updates/world/2013_01_02_08_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_09_world_waypoints.sql (renamed from sql/updates/world/2013_01_02_09_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_10_world_sai.sql (renamed from sql/updates/world/2013_01_02_10_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_11_world_sai.sql (renamed from sql/updates/world/2013_01_02_11_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_12_world_go_script.sql (renamed from sql/updates/world/2013_01_02_12_world_go_script.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_02_12_world_waypoints.sql (renamed from sql/updates/world/2013_01_02_12_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_00_world_gameobject_scripts.sql (renamed from sql/updates/world/2013_01_03_00_world_gameobject_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_01_world_sai.sql (renamed from sql/updates/world/2013_01_03_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_02_world_sai.sql (renamed from sql/updates/world/2013_01_03_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_03_world_spelldifficulty_dbc.sql (renamed from sql/updates/world/2013_01_03_03_world_spelldifficulty_dbc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_04_world_sai.sql (renamed from sql/updates/world/2013_01_03_04_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_05_world_sai.sql (renamed from sql/updates/world/2013_01_03_05_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_06_world_sai.sql (renamed from sql/updates/world/2013_01_03_06_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_07_world_sai.sql (renamed from sql/updates/world/2013_01_03_07_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_08_world_misc.sql (renamed from sql/updates/world/2013_01_03_08_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_09_world_sai.sql (renamed from sql/updates/world/2013_01_03_09_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_10_world_gameobject.sql (renamed from sql/updates/world/2013_01_03_10_world_gameobject.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_11_world_item_template.sql (renamed from sql/updates/world/2013_01_03_11_world_item_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_12_world_gameobject_scripts.sql (renamed from sql/updates/world/2013_01_03_12_world_gameobject_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_12_world_misc.sql (renamed from sql/updates/world/2013_01_03_12_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_13_world_quest_template.sql (renamed from sql/updates/world/2013_01_03_13_world_quest_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_14_world_spell_area.sql (renamed from sql/updates/world/2013_01_03_14_world_spell_area.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_15_world_various_fixes.sql (renamed from sql/updates/world/2013_01_03_15_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_03_16_world_various_fixes.sql (renamed from sql/updates/world/2013_01_03_16_world_various_fixes.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_04_00_world_creature_text.sql (renamed from sql/updates/world/2013_01_04_00_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_04_01_world_sai.sql (renamed from sql/updates/world/2013_01_04_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_04_02_world_misc.sql (renamed from sql/updates/world/2013_01_04_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_04_02_world_novos_the_summoner.sql (renamed from sql/updates/world/2013_01_04_02_world_novos_the_summoner.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_05_00_world_waypoints.sql (renamed from sql/updates/world/2013_01_05_00_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_06_00_world_creature_addon.sql (renamed from sql/updates/world/2013_01_06_00_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_06_00_world_creature_template.sql (renamed from sql/updates/world/2013_01_06_00_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_06_01_world_waypoints.sql (renamed from sql/updates/world/2013_01_06_01_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_06_02_world_misc.sql (renamed from sql/updates/world/2013_01_06_02_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_06_03_world_sai.sql (renamed from sql/updates/world/2013_01_06_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_06_04_world_misc.sql (renamed from sql/updates/world/2013_01_06_04_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_00_world_sai.sql (renamed from sql/updates/world/2013_01_07_00_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_01_world_creature_addon.sql (renamed from sql/updates/world/2013_01_07_01_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_02_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_02_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_03_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_03_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_04_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_04_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_05_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_05_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_06_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_06_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_07_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_07_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_08_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_08_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_09_world_buru.sql (renamed from sql/updates/world/2013_01_07_09_world_buru.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_10_world_skeram.sql (renamed from sql/updates/world/2013_01_07_10_world_skeram.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_11_world_sai.sql (renamed from sql/updates/world/2013_01_07_11_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_12_world_sai.sql (renamed from sql/updates/world/2013_01_07_12_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_13_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_13_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_14_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_14_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_15_world_creature_addon.sql (renamed from sql/updates/world/2013_01_07_15_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_16_world_creature_addon.sql (renamed from sql/updates/world/2013_01_07_16_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_17_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_17_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_07_18_world_creature_text.sql (renamed from sql/updates/world/2013_01_07_18_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_08_01_world_raise_the_barricades.sql (renamed from sql/updates/world/2013_01_08_01_world_raise_the_barricades.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_09_00_world_misc.sql (renamed from sql/updates/world/2013_01_09_00_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_09_01_world_lfg_dungeon_rewards.sql (renamed from sql/updates/world/2013_01_09_01_world_lfg_dungeon_rewards.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_09_02_world_sai.sql (renamed from sql/updates/world/2013_01_09_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_09_03_world_spell_script_names.sql (renamed from sql/updates/world/2013_01_09_03_world_spell_script_names.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_10_00_world_trinity_string.sql (renamed from sql/updates/world/2013_01_10_00_world_trinity_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_10_01_world_sai.sql (renamed from sql/updates/world/2013_01_10_01_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_10_02_world_creature_addon.sql (renamed from sql/updates/world/2013_01_10_02_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_10_03_world_creature_addon.sql (renamed from sql/updates/world/2013_01_10_03_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_10_04_world_creature_addon.sql (renamed from sql/updates/world/2013_01_10_04_world_creature_addon.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_10_05_world_sai.sql (renamed from sql/updates/world/2013_01_10_05_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_11_00_world_ayamiss.sql (renamed from sql/updates/world/2013_01_11_00_world_ayamiss.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_11_01_world_conditions.sql (renamed from sql/updates/world/2013_01_11_01_world_conditions.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_11_02_world_sai.sql (renamed from sql/updates/world/2013_01_11_02_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_11_03_world_sai.sql (renamed from sql/updates/world/2013_01_11_03_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_11_04_world_sai.sql (renamed from sql/updates/world/2013_01_11_04_world_sai.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_11_05_world_creature_text.sql (renamed from sql/updates/world/2013_01_11_05_world_creature_text.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_00_world_smart_scripts.sql (renamed from sql/updates/world/2013_01_12_00_world_smart_scripts.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_01_world_string.sql (renamed from sql/updates/world/2013_01_12_01_world_string.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_02_world_creature_template.sql (renamed from sql/updates/world/2013_01_12_02_world_creature_template.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_03_world_gameobject.sql (renamed from sql/updates/world/2013_01_12_03_world_gameobject.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_03_world_waypoints.sql (renamed from sql/updates/world/2013_01_12_03_world_waypoints.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_04_world_misc.sql (renamed from sql/updates/world/2013_01_12_04_world_misc.sql) | 0 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_12_05_world_waypoint_script.sql | 1 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_13_00_world_gameobject_template.sql | 1 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_13_01_world_sai.sql | 41 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_13_02_world_gluttonous_lurkers.sql | 36 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_13_03_world_spell_script_names.sql | 4 | ||||
-rw-r--r-- | sql/old/3.3.5a/2013_01_13_04_world_conditions.sql | 9 | ||||
-rw-r--r-- | sql/updates/world/2013_01_14_00_world_version.sql | 1 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/Battleground.cpp | 6 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/BattlegroundMgr.cpp | 32 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/BattlegroundMgr.h | 2 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp | 3 | ||||
-rw-r--r-- | src/server/game/DungeonFinding/LFGMgr.cpp | 13 | ||||
-rw-r--r-- | src/server/game/DungeonFinding/LFGMgr.h | 1 | ||||
-rw-r--r-- | src/server/game/DungeonFinding/LFGQueue.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Handlers/BattleGroundHandler.cpp | 4 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp | 2 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp | 30 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp | 177 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp | 56 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp | 42 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp | 83 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp | 78 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp | 32 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp | 99 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp | 45 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp | 218 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp | 75 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp | 302 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp | 17 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp | 330 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp | 41 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp | 63 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp | 173 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h | 35 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/boss_kruul.cpp | 17 | ||||
-rw-r--r-- | src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp | 36 | ||||
-rw-r--r-- | src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp | 4 | ||||
-rw-r--r-- | src/server/scripts/Outland/CoilfangReservoir/underbog/boss_hungarfen.cpp | 7 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_dk.cpp | 2 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_holiday.cpp | 8 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_hunter.cpp | 4 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_quest.cpp | 45 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_rogue.cpp | 3 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_shaman.cpp | 549 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_warlock.cpp | 714 |
377 files changed, 1801 insertions, 1642 deletions
diff --git a/sql/updates/world/2012_09_16_00_world_version.sql b/sql/old/3.3.5a/2012_09_16_00_world_version.sql index 74a1cf67499..74a1cf67499 100644 --- a/sql/updates/world/2012_09_16_00_world_version.sql +++ b/sql/old/3.3.5a/2012_09_16_00_world_version.sql diff --git a/sql/updates/world/2012_09_16_01_world_conditions.sql b/sql/old/3.3.5a/2012_09_16_01_world_conditions.sql index 64f87262d0e..64f87262d0e 100644 --- a/sql/updates/world/2012_09_16_01_world_conditions.sql +++ b/sql/old/3.3.5a/2012_09_16_01_world_conditions.sql diff --git a/sql/updates/world/2012_09_16_01_world_creature_loot_template.sql b/sql/old/3.3.5a/2012_09_16_01_world_creature_loot_template.sql index 2d87ad3aa16..2d87ad3aa16 100644 --- a/sql/updates/world/2012_09_16_01_world_creature_loot_template.sql +++ b/sql/old/3.3.5a/2012_09_16_01_world_creature_loot_template.sql diff --git a/sql/updates/world/2012_09_16_01_world_creature_template_addon.sql b/sql/old/3.3.5a/2012_09_16_01_world_creature_template_addon.sql index c23a38cd058..c23a38cd058 100644 --- a/sql/updates/world/2012_09_16_01_world_creature_template_addon.sql +++ b/sql/old/3.3.5a/2012_09_16_01_world_creature_template_addon.sql diff --git a/sql/updates/world/2012_09_16_02_world_fires_over_skettis.sql b/sql/old/3.3.5a/2012_09_16_02_world_fires_over_skettis.sql index d50f45bb020..d50f45bb020 100644 --- a/sql/updates/world/2012_09_16_02_world_fires_over_skettis.sql +++ b/sql/old/3.3.5a/2012_09_16_02_world_fires_over_skettis.sql diff --git a/sql/updates/world/2012_09_16_03_world_spell_script_names.sql b/sql/old/3.3.5a/2012_09_16_03_world_spell_script_names.sql index 8b7e6aa92ba..8b7e6aa92ba 100644 --- a/sql/updates/world/2012_09_16_03_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_09_16_03_world_spell_script_names.sql diff --git a/sql/updates/world/2012_09_17_00_world_spell_bonus_data.sql b/sql/old/3.3.5a/2012_09_17_00_world_spell_bonus_data.sql index 0d16742393e..0d16742393e 100644 --- a/sql/updates/world/2012_09_17_00_world_spell_bonus_data.sql +++ b/sql/old/3.3.5a/2012_09_17_00_world_spell_bonus_data.sql diff --git a/sql/updates/world/2012_09_17_01_world_spell_bonus_data.sql b/sql/old/3.3.5a/2012_09_17_01_world_spell_bonus_data.sql index f9283233c8e..f9283233c8e 100644 --- a/sql/updates/world/2012_09_17_01_world_spell_bonus_data.sql +++ b/sql/old/3.3.5a/2012_09_17_01_world_spell_bonus_data.sql diff --git a/sql/updates/world/2012_09_17_01_world_spell_script_names.sql b/sql/old/3.3.5a/2012_09_17_01_world_spell_script_names.sql index 255c76e6b70..255c76e6b70 100644 --- a/sql/updates/world/2012_09_17_01_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_09_17_01_world_spell_script_names.sql diff --git a/sql/updates/world/2012_09_17_02_world_misc.sql b/sql/old/3.3.5a/2012_09_17_02_world_misc.sql index 378833dfc52..378833dfc52 100644 --- a/sql/updates/world/2012_09_17_02_world_misc.sql +++ b/sql/old/3.3.5a/2012_09_17_02_world_misc.sql diff --git a/sql/updates/world/2012_09_18_00_world_creature_template.sql b/sql/old/3.3.5a/2012_09_18_00_world_creature_template.sql index 5ead9430d60..5ead9430d60 100644 --- a/sql/updates/world/2012_09_18_00_world_creature_template.sql +++ b/sql/old/3.3.5a/2012_09_18_00_world_creature_template.sql diff --git a/sql/updates/world/2012_09_18_01_world_creature_template.sql b/sql/old/3.3.5a/2012_09_18_01_world_creature_template.sql index 4e31e7f6f68..4e31e7f6f68 100644 --- a/sql/updates/world/2012_09_18_01_world_creature_template.sql +++ b/sql/old/3.3.5a/2012_09_18_01_world_creature_template.sql diff --git a/sql/updates/world/2012_09_19_00_world_dwarfageddon.sql b/sql/old/3.3.5a/2012_09_19_00_world_dwarfageddon.sql index 1eda383b67d..1eda383b67d 100644 --- a/sql/updates/world/2012_09_19_00_world_dwarfageddon.sql +++ b/sql/old/3.3.5a/2012_09_19_00_world_dwarfageddon.sql diff --git a/sql/updates/world/2012_09_19_00_world_reference_loot_template.sql b/sql/old/3.3.5a/2012_09_19_00_world_reference_loot_template.sql index 7db30ede52b..7db30ede52b 100644 --- a/sql/updates/world/2012_09_19_00_world_reference_loot_template.sql +++ b/sql/old/3.3.5a/2012_09_19_00_world_reference_loot_template.sql diff --git a/sql/updates/world/2012_09_20_00_world_creature_loot_template.sql b/sql/old/3.3.5a/2012_09_20_00_world_creature_loot_template.sql index 8463b064bf9..8463b064bf9 100644 --- a/sql/updates/world/2012_09_20_00_world_creature_loot_template.sql +++ b/sql/old/3.3.5a/2012_09_20_00_world_creature_loot_template.sql diff --git a/sql/updates/world/2012_09_22_01_world_i_was_a_lot_of_things.sql b/sql/old/3.3.5a/2012_09_22_01_world_i_was_a_lot_of_things.sql index 95fc92daa76..95fc92daa76 100644 --- a/sql/updates/world/2012_09_22_01_world_i_was_a_lot_of_things.sql +++ b/sql/old/3.3.5a/2012_09_22_01_world_i_was_a_lot_of_things.sql diff --git a/sql/updates/world/2012_09_22_03_world_game_event.sql b/sql/old/3.3.5a/2012_09_22_03_world_game_event.sql index 5e05ba03898..5e05ba03898 100644 --- a/sql/updates/world/2012_09_22_03_world_game_event.sql +++ b/sql/old/3.3.5a/2012_09_22_03_world_game_event.sql diff --git a/sql/updates/world/2012_09_24_00_world_spell_script_names.sql b/sql/old/3.3.5a/2012_09_24_00_world_spell_script_names.sql index 611325d4b11..611325d4b11 100644 --- a/sql/updates/world/2012_09_24_00_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_09_24_00_world_spell_script_names.sql diff --git a/sql/updates/world/2012_09_24_01_world_spell_script_names.sql b/sql/old/3.3.5a/2012_09_24_01_world_spell_script_names.sql index e14b6833a09..e14b6833a09 100644 --- a/sql/updates/world/2012_09_24_01_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_09_24_01_world_spell_script_names.sql diff --git a/sql/updates/world/2012_09_24_02_world_misc.sql b/sql/old/3.3.5a/2012_09_24_02_world_misc.sql index b4cf7fda0a5..b4cf7fda0a5 100644 --- a/sql/updates/world/2012_09_24_02_world_misc.sql +++ b/sql/old/3.3.5a/2012_09_24_02_world_misc.sql diff --git a/sql/updates/world/2012_09_24_03_world_misc.sql b/sql/old/3.3.5a/2012_09_24_03_world_misc.sql index 3bcb40f79c0..3bcb40f79c0 100644 --- a/sql/updates/world/2012_09_24_03_world_misc.sql +++ b/sql/old/3.3.5a/2012_09_24_03_world_misc.sql diff --git a/sql/updates/world/2012_09_26_00_world_misc.sql b/sql/old/3.3.5a/2012_09_26_00_world_misc.sql index d9ac468f4a6..d9ac468f4a6 100644 --- a/sql/updates/world/2012_09_26_00_world_misc.sql +++ b/sql/old/3.3.5a/2012_09_26_00_world_misc.sql diff --git a/sql/updates/world/2012_09_26_01_world_spell_bonus_data.sql b/sql/old/3.3.5a/2012_09_26_01_world_spell_bonus_data.sql index 3aeeb7c6525..3aeeb7c6525 100644 --- a/sql/updates/world/2012_09_26_01_world_spell_bonus_data.sql +++ b/sql/old/3.3.5a/2012_09_26_01_world_spell_bonus_data.sql diff --git a/sql/updates/world/2012_09_27_01_world_custodian_of_time.sql b/sql/old/3.3.5a/2012_09_27_01_world_custodian_of_time.sql index 521c55d507e..521c55d507e 100644 --- a/sql/updates/world/2012_09_27_01_world_custodian_of_time.sql +++ b/sql/old/3.3.5a/2012_09_27_01_world_custodian_of_time.sql diff --git a/sql/updates/world/2012_09_28_00_world_creature_model_info.sql b/sql/old/3.3.5a/2012_09_28_00_world_creature_model_info.sql index 48134d7bbed..48134d7bbed 100644 --- a/sql/updates/world/2012_09_28_00_world_creature_model_info.sql +++ b/sql/old/3.3.5a/2012_09_28_00_world_creature_model_info.sql diff --git a/sql/updates/world/2012_09_29_00_world_creature_model_info.sql b/sql/old/3.3.5a/2012_09_29_00_world_creature_model_info.sql index 0c63a0b2f73..0c63a0b2f73 100644 --- a/sql/updates/world/2012_09_29_00_world_creature_model_info.sql +++ b/sql/old/3.3.5a/2012_09_29_00_world_creature_model_info.sql diff --git a/sql/updates/world/2012_09_29_01_world_creature_text.sql b/sql/old/3.3.5a/2012_09_29_01_world_creature_text.sql index 8fde66d2e6e..8fde66d2e6e 100644 --- a/sql/updates/world/2012_09_29_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_09_29_01_world_creature_text.sql diff --git a/sql/updates/world/2012_09_30_00_world_creature_text.sql b/sql/old/3.3.5a/2012_09_30_00_world_creature_text.sql index e0f9f210d7b..e0f9f210d7b 100644 --- a/sql/updates/world/2012_09_30_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_09_30_00_world_creature_text.sql diff --git a/sql/updates/world/2012_09_30_01_world_player_factionchange_titles.sql b/sql/old/3.3.5a/2012_09_30_01_world_player_factionchange_titles.sql index 99d7fc871d8..99d7fc871d8 100644 --- a/sql/updates/world/2012_09_30_01_world_player_factionchange_titles.sql +++ b/sql/old/3.3.5a/2012_09_30_01_world_player_factionchange_titles.sql diff --git a/sql/updates/world/2012_09_30_02_world_creature_text.sql b/sql/old/3.3.5a/2012_09_30_02_world_creature_text.sql index 81e77bcd682..81e77bcd682 100644 --- a/sql/updates/world/2012_09_30_02_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_09_30_02_world_creature_text.sql diff --git a/sql/updates/world/2012_09_30_03_world_creature_text.sql b/sql/old/3.3.5a/2012_09_30_03_world_creature_text.sql index a591f8cfb7c..a591f8cfb7c 100644 --- a/sql/updates/world/2012_09_30_03_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_09_30_03_world_creature_text.sql diff --git a/sql/updates/world/2012_10_02_00_world_oculus.sql b/sql/old/3.3.5a/2012_10_02_00_world_oculus.sql index 8c9ea1bcb60..8c9ea1bcb60 100644 --- a/sql/updates/world/2012_10_02_00_world_oculus.sql +++ b/sql/old/3.3.5a/2012_10_02_00_world_oculus.sql diff --git a/sql/updates/world/2012_10_04_00_world_spelldifficulty_dbc.sql b/sql/old/3.3.5a/2012_10_04_00_world_spelldifficulty_dbc.sql index 6587e35bf9b..6587e35bf9b 100644 --- a/sql/updates/world/2012_10_04_00_world_spelldifficulty_dbc.sql +++ b/sql/old/3.3.5a/2012_10_04_00_world_spelldifficulty_dbc.sql diff --git a/sql/updates/world/2012_10_04_01_world_script_texts.sql b/sql/old/3.3.5a/2012_10_04_01_world_script_texts.sql index 8281d16794e..8281d16794e 100644 --- a/sql/updates/world/2012_10_04_01_world_script_texts.sql +++ b/sql/old/3.3.5a/2012_10_04_01_world_script_texts.sql diff --git a/sql/updates/world/2012_10_05_00_world_misc.sql b/sql/old/3.3.5a/2012_10_05_00_world_misc.sql index f715b9491ef..f715b9491ef 100644 --- a/sql/updates/world/2012_10_05_00_world_misc.sql +++ b/sql/old/3.3.5a/2012_10_05_00_world_misc.sql diff --git a/sql/updates/world/2012_10_05_01_world_spell_script_names.sql b/sql/old/3.3.5a/2012_10_05_01_world_spell_script_names.sql index c7269b981ec..c7269b981ec 100644 --- a/sql/updates/world/2012_10_05_01_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_10_05_01_world_spell_script_names.sql diff --git a/sql/updates/world/2012_10_06_00_world_spell_difficulty.sql b/sql/old/3.3.5a/2012_10_06_00_world_spell_difficulty.sql index 1dd1a468990..1dd1a468990 100644 --- a/sql/updates/world/2012_10_06_00_world_spell_difficulty.sql +++ b/sql/old/3.3.5a/2012_10_06_00_world_spell_difficulty.sql diff --git a/sql/updates/world/2012_10_06_00_world_spell_script_names.sql b/sql/old/3.3.5a/2012_10_06_00_world_spell_script_names.sql index 4fa3b922d62..4fa3b922d62 100644 --- a/sql/updates/world/2012_10_06_00_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_10_06_00_world_spell_script_names.sql diff --git a/sql/updates/world/2012_10_06_01_world_spell_dbc.sql b/sql/old/3.3.5a/2012_10_06_01_world_spell_dbc.sql index 071d83582ac..071d83582ac 100644 --- a/sql/updates/world/2012_10_06_01_world_spell_dbc.sql +++ b/sql/old/3.3.5a/2012_10_06_01_world_spell_dbc.sql diff --git a/sql/updates/world/2012_10_06_02_world_misc_templates.sql b/sql/old/3.3.5a/2012_10_06_02_world_misc_templates.sql index 5ec006c310d..5ec006c310d 100644 --- a/sql/updates/world/2012_10_06_02_world_misc_templates.sql +++ b/sql/old/3.3.5a/2012_10_06_02_world_misc_templates.sql diff --git a/sql/updates/world/2012_10_06_03_world_creature_text.sql b/sql/old/3.3.5a/2012_10_06_03_world_creature_text.sql index 6716b12cea9..6716b12cea9 100644 --- a/sql/updates/world/2012_10_06_03_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_10_06_03_world_creature_text.sql diff --git a/sql/updates/world/2012_10_06_04_world_misc_spawns.sql b/sql/old/3.3.5a/2012_10_06_04_world_misc_spawns.sql index e53302d2c2f..e53302d2c2f 100644 --- a/sql/updates/world/2012_10_06_04_world_misc_spawns.sql +++ b/sql/old/3.3.5a/2012_10_06_04_world_misc_spawns.sql diff --git a/sql/updates/world/2012_10_06_05_world_spell_script_names.sql b/sql/old/3.3.5a/2012_10_06_05_world_spell_script_names.sql index 354a359e45b..354a359e45b 100644 --- a/sql/updates/world/2012_10_06_05_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_10_06_05_world_spell_script_names.sql diff --git a/sql/updates/world/2012_10_07_00_world_creature_loot_template.sql b/sql/old/3.3.5a/2012_10_07_00_world_creature_loot_template.sql index 2829725c76c..2829725c76c 100644 --- a/sql/updates/world/2012_10_07_00_world_creature_loot_template.sql +++ b/sql/old/3.3.5a/2012_10_07_00_world_creature_loot_template.sql diff --git a/sql/updates/world/2012_10_07_01_world_spell_proc_event.sql b/sql/old/3.3.5a/2012_10_07_01_world_spell_proc_event.sql index 810cd90290c..810cd90290c 100644 --- a/sql/updates/world/2012_10_07_01_world_spell_proc_event.sql +++ b/sql/old/3.3.5a/2012_10_07_01_world_spell_proc_event.sql diff --git a/sql/updates/characters/2012_10_09_00_character_glyphs.sql b/sql/old/3.3.5a/2012_10_09_00_character_glyphs.sql index b90fa7d7682..b90fa7d7682 100644 --- a/sql/updates/characters/2012_10_09_00_character_glyphs.sql +++ b/sql/old/3.3.5a/2012_10_09_00_character_glyphs.sql diff --git a/sql/updates/world/2012_10_09_00_world_spell_groups.sql b/sql/old/3.3.5a/2012_10_09_00_world_spell_groups.sql index 71f58c6322e..71f58c6322e 100644 --- a/sql/updates/world/2012_10_09_00_world_spell_groups.sql +++ b/sql/old/3.3.5a/2012_10_09_00_world_spell_groups.sql diff --git a/sql/updates/world/2012_10_09_01_world_spell_groups.sql b/sql/old/3.3.5a/2012_10_09_01_world_spell_groups.sql index 75c57d0f77f..75c57d0f77f 100644 --- a/sql/updates/world/2012_10_09_01_world_spell_groups.sql +++ b/sql/old/3.3.5a/2012_10_09_01_world_spell_groups.sql diff --git a/sql/updates/world/2012_10_09_02_world_spell_groups.sql b/sql/old/3.3.5a/2012_10_09_02_world_spell_groups.sql index 8e4864bc039..8e4864bc039 100644 --- a/sql/updates/world/2012_10_09_02_world_spell_groups.sql +++ b/sql/old/3.3.5a/2012_10_09_02_world_spell_groups.sql diff --git a/sql/updates/world/2012_10_10_00_world_battleground_template.sql b/sql/old/3.3.5a/2012_10_10_00_world_battleground_template.sql index 2dcafc51161..2dcafc51161 100644 --- a/sql/updates/world/2012_10_10_00_world_battleground_template.sql +++ b/sql/old/3.3.5a/2012_10_10_00_world_battleground_template.sql diff --git a/sql/updates/world/2012_10_11_00_world_gameobject.sql b/sql/old/3.3.5a/2012_10_11_00_world_gameobject.sql index e58d60590cb..e58d60590cb 100644 --- a/sql/updates/world/2012_10_11_00_world_gameobject.sql +++ b/sql/old/3.3.5a/2012_10_11_00_world_gameobject.sql diff --git a/sql/updates/world/2012_10_13_00_world_creature_template.sql b/sql/old/3.3.5a/2012_10_13_00_world_creature_template.sql index 7dc7a463f3f..7dc7a463f3f 100644 --- a/sql/updates/world/2012_10_13_00_world_creature_template.sql +++ b/sql/old/3.3.5a/2012_10_13_00_world_creature_template.sql diff --git a/sql/updates/world/2012_10_14_00_world_creature.sql b/sql/old/3.3.5a/2012_10_14_00_world_creature.sql index dd650f37aef..dd650f37aef 100644 --- a/sql/updates/world/2012_10_14_00_world_creature.sql +++ b/sql/old/3.3.5a/2012_10_14_00_world_creature.sql diff --git a/sql/updates/world/2012_10_16_00_world_spell_area.sql b/sql/old/3.3.5a/2012_10_16_00_world_spell_area.sql index 3dbc29d077f..3dbc29d077f 100644 --- a/sql/updates/world/2012_10_16_00_world_spell_area.sql +++ b/sql/old/3.3.5a/2012_10_16_00_world_spell_area.sql diff --git a/sql/updates/characters/2012_10_17_00_character_gm_tickets.sql b/sql/old/3.3.5a/2012_10_17_00_character_gm_tickets.sql index affb23f836c..affb23f836c 100644 --- a/sql/updates/characters/2012_10_17_00_character_gm_tickets.sql +++ b/sql/old/3.3.5a/2012_10_17_00_character_gm_tickets.sql diff --git a/sql/updates/world/2012_10_20_00_world_transports.sql b/sql/old/3.3.5a/2012_10_20_00_world_transports.sql index 8cc2bae4b47..8cc2bae4b47 100644 --- a/sql/updates/world/2012_10_20_00_world_transports.sql +++ b/sql/old/3.3.5a/2012_10_20_00_world_transports.sql diff --git a/sql/updates/world/2012_10_20_01_world_spell_script_names.sql b/sql/old/3.3.5a/2012_10_20_01_world_spell_script_names.sql index 814f1b40e65..814f1b40e65 100644 --- a/sql/updates/world/2012_10_20_01_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_10_20_01_world_spell_script_names.sql diff --git a/sql/updates/world/2012_10_20_02_world_creature_text.sql b/sql/old/3.3.5a/2012_10_20_02_world_creature_text.sql index bb153c6b2f6..bb153c6b2f6 100644 --- a/sql/updates/world/2012_10_20_02_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_10_20_02_world_creature_text.sql diff --git a/sql/updates/world/2012_10_21_00_world_conditions.sql b/sql/old/3.3.5a/2012_10_21_00_world_conditions.sql index 62161a932f9..62161a932f9 100644 --- a/sql/updates/world/2012_10_21_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_10_21_00_world_conditions.sql diff --git a/sql/updates/world/2012_10_21_01_world_misc.sql b/sql/old/3.3.5a/2012_10_21_01_world_misc.sql index fe74f8a7a80..fe74f8a7a80 100644 --- a/sql/updates/world/2012_10_21_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_10_21_01_world_misc.sql diff --git a/sql/updates/world/2012_10_23_00_world_trinity_string.sql b/sql/old/3.3.5a/2012_10_23_00_world_trinity_string.sql index 60318667fbc..60318667fbc 100644 --- a/sql/updates/world/2012_10_23_00_world_trinity_string.sql +++ b/sql/old/3.3.5a/2012_10_23_00_world_trinity_string.sql diff --git a/sql/updates/world/2012_10_23_01_world_command.sql b/sql/old/3.3.5a/2012_10_23_01_world_command.sql index b46882c5949..b46882c5949 100644 --- a/sql/updates/world/2012_10_23_01_world_command.sql +++ b/sql/old/3.3.5a/2012_10_23_01_world_command.sql diff --git a/sql/updates/world/2012_10_25_00_world_childrens_week.sql b/sql/old/3.3.5a/2012_10_25_00_world_childrens_week.sql index f10cf92b409..f10cf92b409 100644 --- a/sql/updates/world/2012_10_25_00_world_childrens_week.sql +++ b/sql/old/3.3.5a/2012_10_25_00_world_childrens_week.sql diff --git a/sql/updates/world/2012_10_26_00_world_sai.sql b/sql/old/3.3.5a/2012_10_26_00_world_sai.sql index 8e4c2fa0922..8e4c2fa0922 100644 --- a/sql/updates/world/2012_10_26_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_10_26_00_world_sai.sql diff --git a/sql/updates/world/2012_10_27_00_world_creature.sql b/sql/old/3.3.5a/2012_10_27_00_world_creature.sql index c00c450aeca..c00c450aeca 100644 --- a/sql/updates/world/2012_10_27_00_world_creature.sql +++ b/sql/old/3.3.5a/2012_10_27_00_world_creature.sql diff --git a/sql/updates/world/2012_10_27_01_world_creature_loot_template.sql b/sql/old/3.3.5a/2012_10_27_01_world_creature_loot_template.sql index 3367dbf0fa8..3367dbf0fa8 100644 --- a/sql/updates/world/2012_10_27_01_world_creature_loot_template.sql +++ b/sql/old/3.3.5a/2012_10_27_01_world_creature_loot_template.sql diff --git a/sql/updates/world/2012_10_29_00_world_conditions.sql b/sql/old/3.3.5a/2012_10_29_00_world_conditions.sql index d1fac5361fb..d1fac5361fb 100644 --- a/sql/updates/world/2012_10_29_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_10_29_00_world_conditions.sql diff --git a/sql/updates/characters/2012_11_02_00_character_misc.sql b/sql/old/3.3.5a/2012_11_02_00_character_misc.sql index 9cbbd423bb8..9cbbd423bb8 100644 --- a/sql/updates/characters/2012_11_02_00_character_misc.sql +++ b/sql/old/3.3.5a/2012_11_02_00_character_misc.sql diff --git a/sql/updates/world/2012_11_03_00_world_creature_loot_template.sql b/sql/old/3.3.5a/2012_11_03_00_world_creature_loot_template.sql index 0e5c39b796d..0e5c39b796d 100644 --- a/sql/updates/world/2012_11_03_00_world_creature_loot_template.sql +++ b/sql/old/3.3.5a/2012_11_03_00_world_creature_loot_template.sql diff --git a/sql/updates/world/2012_11_07_00_world_misc.sql b/sql/old/3.3.5a/2012_11_07_00_world_misc.sql index db7c8f66fb1..db7c8f66fb1 100644 --- a/sql/updates/world/2012_11_07_00_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_07_00_world_misc.sql diff --git a/sql/updates/world/2012_11_11_00_world_sai.sql b/sql/old/3.3.5a/2012_11_11_00_world_sai.sql index b5eedd86898..b5eedd86898 100644 --- a/sql/updates/world/2012_11_11_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_11_11_00_world_sai.sql diff --git a/sql/updates/world/2012_11_11_01_world_quest_template.sql b/sql/old/3.3.5a/2012_11_11_01_world_quest_template.sql index 9abf2ea3cd1..9abf2ea3cd1 100644 --- a/sql/updates/world/2012_11_11_01_world_quest_template.sql +++ b/sql/old/3.3.5a/2012_11_11_01_world_quest_template.sql diff --git a/sql/updates/world/2012_11_11_02_world_gossip_menu.sql b/sql/old/3.3.5a/2012_11_11_02_world_gossip_menu.sql index 59d1a10b337..59d1a10b337 100644 --- a/sql/updates/world/2012_11_11_02_world_gossip_menu.sql +++ b/sql/old/3.3.5a/2012_11_11_02_world_gossip_menu.sql diff --git a/sql/updates/world/2012_11_11_03_world_gossip_menu.sql b/sql/old/3.3.5a/2012_11_11_03_world_gossip_menu.sql index 4f250597388..4f250597388 100644 --- a/sql/updates/world/2012_11_11_03_world_gossip_menu.sql +++ b/sql/old/3.3.5a/2012_11_11_03_world_gossip_menu.sql diff --git a/sql/updates/world/2012_11_12_00_world_quest_template.sql b/sql/old/3.3.5a/2012_11_12_00_world_quest_template.sql index ee2206146b3..ee2206146b3 100644 --- a/sql/updates/world/2012_11_12_00_world_quest_template.sql +++ b/sql/old/3.3.5a/2012_11_12_00_world_quest_template.sql diff --git a/sql/updates/world/2012_11_12_01_world_misc.sql b/sql/old/3.3.5a/2012_11_12_01_world_misc.sql index 7a5e81c4b1a..7a5e81c4b1a 100644 --- a/sql/updates/world/2012_11_12_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_12_01_world_misc.sql diff --git a/sql/updates/world/2012_11_12_02_world_quest_template.sql b/sql/old/3.3.5a/2012_11_12_02_world_quest_template.sql index 8f988bfa4ab..8f988bfa4ab 100644 --- a/sql/updates/world/2012_11_12_02_world_quest_template.sql +++ b/sql/old/3.3.5a/2012_11_12_02_world_quest_template.sql diff --git a/sql/updates/world/2012_11_12_03_world_misc.sql b/sql/old/3.3.5a/2012_11_12_03_world_misc.sql index 20c91974bbb..20c91974bbb 100644 --- a/sql/updates/world/2012_11_12_03_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_12_03_world_misc.sql diff --git a/sql/updates/world/2012_11_13_00_world_waypoints.sql b/sql/old/3.3.5a/2012_11_13_00_world_waypoints.sql index 64e16cb2d0e..64e16cb2d0e 100644 --- a/sql/updates/world/2012_11_13_00_world_waypoints.sql +++ b/sql/old/3.3.5a/2012_11_13_00_world_waypoints.sql diff --git a/sql/updates/world/2012_11_13_01_world_misc.sql b/sql/old/3.3.5a/2012_11_13_01_world_misc.sql index 97e3cd8b499..97e3cd8b499 100644 --- a/sql/updates/world/2012_11_13_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_13_01_world_misc.sql diff --git a/sql/updates/world/2012_11_13_02_world_creature.sql b/sql/old/3.3.5a/2012_11_13_02_world_creature.sql index 19f278ca5c6..19f278ca5c6 100644 --- a/sql/updates/world/2012_11_13_02_world_creature.sql +++ b/sql/old/3.3.5a/2012_11_13_02_world_creature.sql diff --git a/sql/updates/world/2012_11_13_03_world_gameevent.sql b/sql/old/3.3.5a/2012_11_13_03_world_gameevent.sql index fbb24b863f2..fbb24b863f2 100644 --- a/sql/updates/world/2012_11_13_03_world_gameevent.sql +++ b/sql/old/3.3.5a/2012_11_13_03_world_gameevent.sql diff --git a/sql/updates/world/2012_11_13_04_world_gameeventquest.sql b/sql/old/3.3.5a/2012_11_13_04_world_gameeventquest.sql index cce654859e0..cce654859e0 100644 --- a/sql/updates/world/2012_11_13_04_world_gameeventquest.sql +++ b/sql/old/3.3.5a/2012_11_13_04_world_gameeventquest.sql diff --git a/sql/updates/world/2012_11_13_05_world_player_factionchange_items.sql b/sql/old/3.3.5a/2012_11_13_05_world_player_factionchange_items.sql index 17b9616624a..17b9616624a 100644 --- a/sql/updates/world/2012_11_13_05_world_player_factionchange_items.sql +++ b/sql/old/3.3.5a/2012_11_13_05_world_player_factionchange_items.sql diff --git a/sql/updates/world/2012_11_13_06_world_trinity_string.sql b/sql/old/3.3.5a/2012_11_13_06_world_trinity_string.sql index 2834a8f900b..2834a8f900b 100644 --- a/sql/updates/world/2012_11_13_06_world_trinity_string.sql +++ b/sql/old/3.3.5a/2012_11_13_06_world_trinity_string.sql diff --git a/sql/updates/world/2012_11_14_00_world_sai.sql b/sql/old/3.3.5a/2012_11_14_00_world_sai.sql index 98467fe4f3a..98467fe4f3a 100644 --- a/sql/updates/world/2012_11_14_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_11_14_00_world_sai.sql diff --git a/sql/updates/world/2012_11_14_00_world_various_fixes.sql b/sql/old/3.3.5a/2012_11_14_00_world_various_fixes.sql index 01655b674b1..01655b674b1 100644 --- a/sql/updates/world/2012_11_14_00_world_various_fixes.sql +++ b/sql/old/3.3.5a/2012_11_14_00_world_various_fixes.sql diff --git a/sql/updates/world/2012_11_14_02_world_battleground_template.sql b/sql/old/3.3.5a/2012_11_14_02_world_battleground_template.sql index b69216ea380..b69216ea380 100644 --- a/sql/updates/world/2012_11_14_02_world_battleground_template.sql +++ b/sql/old/3.3.5a/2012_11_14_02_world_battleground_template.sql diff --git a/sql/updates/world/2012_11_16_00_world_utgarde.sql b/sql/old/3.3.5a/2012_11_16_00_world_utgarde.sql index 1948796a77b..1948796a77b 100644 --- a/sql/updates/world/2012_11_16_00_world_utgarde.sql +++ b/sql/old/3.3.5a/2012_11_16_00_world_utgarde.sql diff --git a/sql/updates/world/2012_11_16_01_world_utgarde.sql b/sql/old/3.3.5a/2012_11_16_01_world_utgarde.sql index 30a64b02e3a..30a64b02e3a 100644 --- a/sql/updates/world/2012_11_16_01_world_utgarde.sql +++ b/sql/old/3.3.5a/2012_11_16_01_world_utgarde.sql diff --git a/sql/updates/world/2012_11_16_02_world_creature_ai_summons.sql b/sql/old/3.3.5a/2012_11_16_02_world_creature_ai_summons.sql index 7d2caf76e33..7d2caf76e33 100644 --- a/sql/updates/world/2012_11_16_02_world_creature_ai_summons.sql +++ b/sql/old/3.3.5a/2012_11_16_02_world_creature_ai_summons.sql diff --git a/sql/updates/world/2012_11_17_00_world_various_fixes.sql b/sql/old/3.3.5a/2012_11_17_00_world_various_fixes.sql index 981d378217f..981d378217f 100644 --- a/sql/updates/world/2012_11_17_00_world_various_fixes.sql +++ b/sql/old/3.3.5a/2012_11_17_00_world_various_fixes.sql diff --git a/sql/updates/characters/2012_11_18_00_character_calendar.sql b/sql/old/3.3.5a/2012_11_18_00_character_calendar.sql index a3e7c352788..a3e7c352788 100644 --- a/sql/updates/characters/2012_11_18_00_character_calendar.sql +++ b/sql/old/3.3.5a/2012_11_18_00_character_calendar.sql diff --git a/sql/updates/world/2012_11_18_00_world_ormorok.sql b/sql/old/3.3.5a/2012_11_18_00_world_ormorok.sql index 0ec8d13fd64..0ec8d13fd64 100644 --- a/sql/updates/world/2012_11_18_00_world_ormorok.sql +++ b/sql/old/3.3.5a/2012_11_18_00_world_ormorok.sql diff --git a/sql/updates/world/2012_11_18_01_world_creature_text.sql b/sql/old/3.3.5a/2012_11_18_01_world_creature_text.sql index 5d8da97f1f0..5d8da97f1f0 100644 --- a/sql/updates/world/2012_11_18_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_11_18_01_world_creature_text.sql diff --git a/sql/updates/world/2012_11_18_01_world_gameobject.sql b/sql/old/3.3.5a/2012_11_18_01_world_gameobject.sql index d82f9a07e7e..d82f9a07e7e 100644 --- a/sql/updates/world/2012_11_18_01_world_gameobject.sql +++ b/sql/old/3.3.5a/2012_11_18_01_world_gameobject.sql diff --git a/sql/updates/world/2012_11_18_02_world_toc.sql b/sql/old/3.3.5a/2012_11_18_02_world_toc.sql index 9262aceed7a..9262aceed7a 100644 --- a/sql/updates/world/2012_11_18_02_world_toc.sql +++ b/sql/old/3.3.5a/2012_11_18_02_world_toc.sql diff --git a/sql/updates/world/2012_11_19_00_world_various_fixes.sql b/sql/old/3.3.5a/2012_11_19_00_world_various_fixes.sql index ca78611fc0b..ca78611fc0b 100644 --- a/sql/updates/world/2012_11_19_00_world_various_fixes.sql +++ b/sql/old/3.3.5a/2012_11_19_00_world_various_fixes.sql diff --git a/sql/updates/world/2012_11_19_01_world_pilgrims_bounty.sql b/sql/old/3.3.5a/2012_11_19_01_world_pilgrims_bounty.sql index 56cda092be6..56cda092be6 100644 --- a/sql/updates/world/2012_11_19_01_world_pilgrims_bounty.sql +++ b/sql/old/3.3.5a/2012_11_19_01_world_pilgrims_bounty.sql diff --git a/sql/updates/world/2012_11_19_02_world_misc.sql b/sql/old/3.3.5a/2012_11_19_02_world_misc.sql index 1f792b8da41..1f792b8da41 100644 --- a/sql/updates/world/2012_11_19_02_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_19_02_world_misc.sql diff --git a/sql/updates/world/2012_11_19_03_world_ysera.sql b/sql/old/3.3.5a/2012_11_19_03_world_ysera.sql index 24a729f96dd..24a729f96dd 100644 --- a/sql/updates/world/2012_11_19_03_world_ysera.sql +++ b/sql/old/3.3.5a/2012_11_19_03_world_ysera.sql diff --git a/sql/updates/world/2012_11_20_00_world_creature_text.sql b/sql/old/3.3.5a/2012_11_20_00_world_creature_text.sql index 5b89db507d8..5b89db507d8 100644 --- a/sql/updates/world/2012_11_20_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_11_20_00_world_creature_text.sql diff --git a/sql/updates/world/2012_11_21_00_world_sai.sql b/sql/old/3.3.5a/2012_11_21_00_world_sai.sql index 9cdd314bb8f..9cdd314bb8f 100644 --- a/sql/updates/world/2012_11_21_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_11_21_00_world_sai.sql diff --git a/sql/updates/world/2012_11_24_00_world_conditions.sql b/sql/old/3.3.5a/2012_11_24_00_world_conditions.sql index 1a5e5963c8e..1a5e5963c8e 100644 --- a/sql/updates/world/2012_11_24_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_11_24_00_world_conditions.sql diff --git a/sql/updates/world/2012_11_24_00_world_creature_text.sql b/sql/old/3.3.5a/2012_11_24_00_world_creature_text.sql index 60e0f9c3aa1..60e0f9c3aa1 100644 --- a/sql/updates/world/2012_11_24_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_11_24_00_world_creature_text.sql diff --git a/sql/updates/world/2012_11_24_01_world_quest_start_scripts.sql b/sql/old/3.3.5a/2012_11_24_01_world_quest_start_scripts.sql index 0f0506206a2..0f0506206a2 100644 --- a/sql/updates/world/2012_11_24_01_world_quest_start_scripts.sql +++ b/sql/old/3.3.5a/2012_11_24_01_world_quest_start_scripts.sql diff --git a/sql/updates/world/2012_11_24_02_world_creature_text.sql b/sql/old/3.3.5a/2012_11_24_02_world_creature_text.sql index 8797039d967..8797039d967 100644 --- a/sql/updates/world/2012_11_24_02_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_11_24_02_world_creature_text.sql diff --git a/sql/updates/world/2012_11_24_02_world_gossip_menu_option.sql b/sql/old/3.3.5a/2012_11_24_02_world_gossip_menu_option.sql index e6f9ab551d3..e6f9ab551d3 100644 --- a/sql/updates/world/2012_11_24_02_world_gossip_menu_option.sql +++ b/sql/old/3.3.5a/2012_11_24_02_world_gossip_menu_option.sql diff --git a/sql/updates/world/2012_11_24_03_world_various_fixes.sql b/sql/old/3.3.5a/2012_11_24_03_world_various_fixes.sql index dfa2d277564..dfa2d277564 100644 --- a/sql/updates/world/2012_11_24_03_world_various_fixes.sql +++ b/sql/old/3.3.5a/2012_11_24_03_world_various_fixes.sql diff --git a/sql/updates/world/2012_11_24_04_world_sai.sql b/sql/old/3.3.5a/2012_11_24_04_world_sai.sql index 76cf4c18963..76cf4c18963 100644 --- a/sql/updates/world/2012_11_24_04_world_sai.sql +++ b/sql/old/3.3.5a/2012_11_24_04_world_sai.sql diff --git a/sql/updates/world/2012_11_25_00_world_various_fixes.sql b/sql/old/3.3.5a/2012_11_25_00_world_various_fixes.sql index 3aabc755dde..3aabc755dde 100644 --- a/sql/updates/world/2012_11_25_00_world_various_fixes.sql +++ b/sql/old/3.3.5a/2012_11_25_00_world_various_fixes.sql diff --git a/sql/updates/world/2012_11_25_01_world_various_fixes.sql b/sql/old/3.3.5a/2012_11_25_01_world_various_fixes.sql index 6114451174a..6114451174a 100644 --- a/sql/updates/world/2012_11_25_01_world_various_fixes.sql +++ b/sql/old/3.3.5a/2012_11_25_01_world_various_fixes.sql diff --git a/sql/updates/world/2012_11_26_02_world_conditions.sql b/sql/old/3.3.5a/2012_11_26_02_world_conditions.sql index 861e999236d..861e999236d 100644 --- a/sql/updates/world/2012_11_26_02_world_conditions.sql +++ b/sql/old/3.3.5a/2012_11_26_02_world_conditions.sql diff --git a/sql/updates/world/2012_11_26_03_world_misc.sql b/sql/old/3.3.5a/2012_11_26_03_world_misc.sql index 5a6140e6bf3..5a6140e6bf3 100644 --- a/sql/updates/world/2012_11_26_03_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_26_03_world_misc.sql diff --git a/sql/updates/world/2012_11_27_00_world_misc.sql b/sql/old/3.3.5a/2012_11_27_00_world_misc.sql index 8c815a856fd..8c815a856fd 100644 --- a/sql/updates/world/2012_11_27_00_world_misc.sql +++ b/sql/old/3.3.5a/2012_11_27_00_world_misc.sql diff --git a/sql/updates/world/2012_11_27_01_world_achievement_criteria_data.sql b/sql/old/3.3.5a/2012_11_27_01_world_achievement_criteria_data.sql index 65cfced17f3..65cfced17f3 100644 --- a/sql/updates/world/2012_11_27_01_world_achievement_criteria_data.sql +++ b/sql/old/3.3.5a/2012_11_27_01_world_achievement_criteria_data.sql diff --git a/sql/updates/world/2012_11_30_00_world_spell_script_names.sql b/sql/old/3.3.5a/2012_11_30_00_world_spell_script_names.sql index cedee2fe51d..cedee2fe51d 100644 --- a/sql/updates/world/2012_11_30_00_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_11_30_00_world_spell_script_names.sql diff --git a/sql/updates/world/2012_12_01_00_world_assembly_of_iron.sql b/sql/old/3.3.5a/2012_12_01_00_world_assembly_of_iron.sql index 090780d2bd4..090780d2bd4 100644 --- a/sql/updates/world/2012_12_01_00_world_assembly_of_iron.sql +++ b/sql/old/3.3.5a/2012_12_01_00_world_assembly_of_iron.sql diff --git a/sql/updates/world/2012_12_01_01_world_misc.sql b/sql/old/3.3.5a/2012_12_01_01_world_misc.sql index 7523484d179..7523484d179 100644 --- a/sql/updates/world/2012_12_01_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_01_01_world_misc.sql diff --git a/sql/updates/world/2012_12_01_02_world_creature_text.sql b/sql/old/3.3.5a/2012_12_01_02_world_creature_text.sql index 6d4b50b9e88..6d4b50b9e88 100644 --- a/sql/updates/world/2012_12_01_02_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_01_02_world_creature_text.sql diff --git a/sql/updates/world/2012_12_01_03_world_ulduar_creature_text.sql b/sql/old/3.3.5a/2012_12_01_03_world_ulduar_creature_text.sql index 82d93d7b7ae..82d93d7b7ae 100644 --- a/sql/updates/world/2012_12_01_03_world_ulduar_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_01_03_world_ulduar_creature_text.sql diff --git a/sql/updates/world/2012_12_01_04_world_spelldifficulty_dbc.sql b/sql/old/3.3.5a/2012_12_01_04_world_spelldifficulty_dbc.sql index fe5df812c71..fe5df812c71 100644 --- a/sql/updates/world/2012_12_01_04_world_spelldifficulty_dbc.sql +++ b/sql/old/3.3.5a/2012_12_01_04_world_spelldifficulty_dbc.sql diff --git a/sql/updates/world/2012_12_01_05_world_creature_template.sql b/sql/old/3.3.5a/2012_12_01_05_world_creature_template.sql index aa2c6ebb898..aa2c6ebb898 100644 --- a/sql/updates/world/2012_12_01_05_world_creature_template.sql +++ b/sql/old/3.3.5a/2012_12_01_05_world_creature_template.sql diff --git a/sql/updates/world/2012_12_02_00_world_game_object.sql b/sql/old/3.3.5a/2012_12_02_00_world_game_object.sql index 3205159a703..3205159a703 100644 --- a/sql/updates/world/2012_12_02_00_world_game_object.sql +++ b/sql/old/3.3.5a/2012_12_02_00_world_game_object.sql diff --git a/sql/updates/world/2012_12_02_01_world_creature_text.sql b/sql/old/3.3.5a/2012_12_02_01_world_creature_text.sql index bd98fc8527c..bd98fc8527c 100644 --- a/sql/updates/world/2012_12_02_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_02_01_world_creature_text.sql diff --git a/sql/updates/world/2012_12_02_02_world_waypoint_data.sql b/sql/old/3.3.5a/2012_12_02_02_world_waypoint_data.sql index 6413ad00b62..6413ad00b62 100644 --- a/sql/updates/world/2012_12_02_02_world_waypoint_data.sql +++ b/sql/old/3.3.5a/2012_12_02_02_world_waypoint_data.sql diff --git a/sql/updates/characters/2012_12_03_00_character_character_queststatus_monthly.sql b/sql/old/3.3.5a/2012_12_03_00_character_character_queststatus_monthly.sql index 256bb1f7ad6..256bb1f7ad6 100644 --- a/sql/updates/characters/2012_12_03_00_character_character_queststatus_monthly.sql +++ b/sql/old/3.3.5a/2012_12_03_00_character_character_queststatus_monthly.sql diff --git a/sql/updates/world/2012_12_04_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_04_00_world_creature_text.sql index 654ed11de4f..654ed11de4f 100644 --- a/sql/updates/world/2012_12_04_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_04_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_04_01_world_quest_start_scripts.sql b/sql/old/3.3.5a/2012_12_04_01_world_quest_start_scripts.sql index f2ac40c7880..f2ac40c7880 100644 --- a/sql/updates/world/2012_12_04_01_world_quest_start_scripts.sql +++ b/sql/old/3.3.5a/2012_12_04_01_world_quest_start_scripts.sql diff --git a/sql/updates/world/2012_12_04_02_world_reputation_reward_rate.sql b/sql/old/3.3.5a/2012_12_04_02_world_reputation_reward_rate.sql index a6b58583532..a6b58583532 100644 --- a/sql/updates/world/2012_12_04_02_world_reputation_reward_rate.sql +++ b/sql/old/3.3.5a/2012_12_04_02_world_reputation_reward_rate.sql diff --git a/sql/updates/world/2012_12_04_03_world_reputation_reward_rate.sql b/sql/old/3.3.5a/2012_12_04_03_world_reputation_reward_rate.sql index 9f8341ea464..9f8341ea464 100644 --- a/sql/updates/world/2012_12_04_03_world_reputation_reward_rate.sql +++ b/sql/old/3.3.5a/2012_12_04_03_world_reputation_reward_rate.sql diff --git a/sql/updates/world/2012_12_04_04_world_creature_text.sql b/sql/old/3.3.5a/2012_12_04_04_world_creature_text.sql index 1cf52a1417f..1cf52a1417f 100644 --- a/sql/updates/world/2012_12_04_04_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_04_04_world_creature_text.sql diff --git a/sql/updates/world/2012_12_04_05_world_spell_script_names.sql b/sql/old/3.3.5a/2012_12_04_05_world_spell_script_names.sql index f325ac731d4..f325ac731d4 100644 --- a/sql/updates/world/2012_12_04_05_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_12_04_05_world_spell_script_names.sql diff --git a/sql/updates/world/2012_12_04_06_world_spell_creature_text.sql b/sql/old/3.3.5a/2012_12_04_06_world_spell_creature_text.sql index 04f10fa494f..04f10fa494f 100644 --- a/sql/updates/world/2012_12_04_06_world_spell_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_04_06_world_spell_creature_text.sql diff --git a/sql/updates/world/2012_12_05_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_05_00_world_creature_text.sql index b3b382e46e2..b3b382e46e2 100644 --- a/sql/updates/world/2012_12_05_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_05_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_06_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_06_00_world_creature_text.sql index c0fec8e041e..c0fec8e041e 100644 --- a/sql/updates/world/2012_12_06_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_06_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_07_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_07_00_world_creature_text.sql index 6763834d668..6763834d668 100644 --- a/sql/updates/world/2012_12_07_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_07_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_07_00_world_script_texts.sql b/sql/old/3.3.5a/2012_12_07_00_world_script_texts.sql index b1362aac796..b1362aac796 100644 --- a/sql/updates/world/2012_12_07_00_world_script_texts.sql +++ b/sql/old/3.3.5a/2012_12_07_00_world_script_texts.sql diff --git a/sql/updates/world/2012_12_07_01_world_misc.sql b/sql/old/3.3.5a/2012_12_07_01_world_misc.sql index aaee366bfce..aaee366bfce 100644 --- a/sql/updates/world/2012_12_07_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_07_01_world_misc.sql diff --git a/sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql b/sql/old/3.3.5a/2012_12_07_02_world_tracker_pitcrawler.sql index 345a61cb7f5..345a61cb7f5 100644 --- a/sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql +++ b/sql/old/3.3.5a/2012_12_07_02_world_tracker_pitcrawler.sql diff --git a/sql/updates/world/2012_12_07_03_world_tracker_trista.sql b/sql/old/3.3.5a/2012_12_07_03_world_tracker_trista.sql index b717f4e53e8..b717f4e53e8 100644 --- a/sql/updates/world/2012_12_07_03_world_tracker_trista.sql +++ b/sql/old/3.3.5a/2012_12_07_03_world_tracker_trista.sql diff --git a/sql/updates/world/2012_12_07_04_world_misc.sql b/sql/old/3.3.5a/2012_12_07_04_world_misc.sql index fb4c466d91c..fb4c466d91c 100644 --- a/sql/updates/world/2012_12_07_04_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_07_04_world_misc.sql diff --git a/sql/updates/world/2012_12_07_05_world_creature_text.sql b/sql/old/3.3.5a/2012_12_07_05_world_creature_text.sql index 8e3e2cd737f..8e3e2cd737f 100644 --- a/sql/updates/world/2012_12_07_05_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_07_05_world_creature_text.sql diff --git a/sql/updates/world/2012_12_07_06_world_sai.sql b/sql/old/3.3.5a/2012_12_07_06_world_sai.sql index d0d1be35766..d0d1be35766 100644 --- a/sql/updates/world/2012_12_07_06_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_07_06_world_sai.sql diff --git a/sql/updates/world/2012_12_07_07_world_sai.sql b/sql/old/3.3.5a/2012_12_07_07_world_sai.sql index d9acb9c310c..d9acb9c310c 100644 --- a/sql/updates/world/2012_12_07_07_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_07_07_world_sai.sql diff --git a/sql/updates/world/2012_12_07_08_world_misc.sql b/sql/old/3.3.5a/2012_12_07_08_world_misc.sql index a696ba401cc..a696ba401cc 100644 --- a/sql/updates/world/2012_12_07_08_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_07_08_world_misc.sql diff --git a/sql/updates/world/2012_12_07_09_world_db_script_string.sql b/sql/old/3.3.5a/2012_12_07_09_world_db_script_string.sql index 4880b84dff0..4880b84dff0 100644 --- a/sql/updates/world/2012_12_07_09_world_db_script_string.sql +++ b/sql/old/3.3.5a/2012_12_07_09_world_db_script_string.sql diff --git a/sql/updates/world/2012_12_08_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_08_00_world_creature_text.sql index 5a5cd579e2b..5a5cd579e2b 100644 --- a/sql/updates/world/2012_12_08_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_08_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_08_01_world_sai.sql b/sql/old/3.3.5a/2012_12_08_01_world_sai.sql index 2880b01d07a..2880b01d07a 100644 --- a/sql/updates/world/2012_12_08_01_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_08_01_world_sai.sql diff --git a/sql/updates/world/2012_12_09_00_world_conditions.sql b/sql/old/3.3.5a/2012_12_09_00_world_conditions.sql index dbb3dac7fc3..dbb3dac7fc3 100644 --- a/sql/updates/world/2012_12_09_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_09_00_world_conditions.sql diff --git a/sql/updates/world/2012_12_09_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_09_00_world_creature_text.sql index 6d850191938..6d850191938 100644 --- a/sql/updates/world/2012_12_09_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_09_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_09_01_world_misc.sql b/sql/old/3.3.5a/2012_12_09_01_world_misc.sql index 7c8bdfbb1c5..7c8bdfbb1c5 100644 --- a/sql/updates/world/2012_12_09_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_09_01_world_misc.sql diff --git a/sql/updates/world/2012_12_09_02_world_quest_template.sql b/sql/old/3.3.5a/2012_12_09_02_world_quest_template.sql index 52d0202d2a1..52d0202d2a1 100644 --- a/sql/updates/world/2012_12_09_02_world_quest_template.sql +++ b/sql/old/3.3.5a/2012_12_09_02_world_quest_template.sql diff --git a/sql/updates/world/2012_12_10_00_world_smart_scripts.sql b/sql/old/3.3.5a/2012_12_10_00_world_smart_scripts.sql index ed0ee9bf764..ed0ee9bf764 100644 --- a/sql/updates/world/2012_12_10_00_world_smart_scripts.sql +++ b/sql/old/3.3.5a/2012_12_10_00_world_smart_scripts.sql diff --git a/sql/updates/world/2012_12_10_01_world_spell_script_names.sql b/sql/old/3.3.5a/2012_12_10_01_world_spell_script_names.sql index bc3684011e8..bc3684011e8 100644 --- a/sql/updates/world/2012_12_10_01_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_12_10_01_world_spell_script_names.sql diff --git a/sql/updates/world/2012_12_10_02_world_spawns_waypoints.sql b/sql/old/3.3.5a/2012_12_10_02_world_spawns_waypoints.sql index 68613f3aaa9..68613f3aaa9 100644 --- a/sql/updates/world/2012_12_10_02_world_spawns_waypoints.sql +++ b/sql/old/3.3.5a/2012_12_10_02_world_spawns_waypoints.sql diff --git a/sql/updates/world/2012_12_13_00_world.sql b/sql/old/3.3.5a/2012_12_13_00_world.sql index ab27796f933..ab27796f933 100644 --- a/sql/updates/world/2012_12_13_00_world.sql +++ b/sql/old/3.3.5a/2012_12_13_00_world.sql diff --git a/sql/updates/world/2012_12_14_00_world_conditions.sql b/sql/old/3.3.5a/2012_12_14_00_world_conditions.sql index 6b6fbfd02c0..6b6fbfd02c0 100644 --- a/sql/updates/world/2012_12_14_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_14_00_world_conditions.sql diff --git a/sql/updates/world/2012_12_14_01_world_waypoint_data.sql b/sql/old/3.3.5a/2012_12_14_01_world_waypoint_data.sql index e3589c53340..e3589c53340 100644 --- a/sql/updates/world/2012_12_14_01_world_waypoint_data.sql +++ b/sql/old/3.3.5a/2012_12_14_01_world_waypoint_data.sql diff --git a/sql/updates/world/2012_12_14_02_world_misc.sql b/sql/old/3.3.5a/2012_12_14_02_world_misc.sql index 29aa47909e1..29aa47909e1 100644 --- a/sql/updates/world/2012_12_14_02_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_14_02_world_misc.sql diff --git a/sql/updates/world/2012_12_14_03_world_npc_spellclick_spells.sql b/sql/old/3.3.5a/2012_12_14_03_world_npc_spellclick_spells.sql index 2669abbc562..2669abbc562 100644 --- a/sql/updates/world/2012_12_14_03_world_npc_spellclick_spells.sql +++ b/sql/old/3.3.5a/2012_12_14_03_world_npc_spellclick_spells.sql diff --git a/sql/updates/world/2012_12_14_04_world_misc.sql b/sql/old/3.3.5a/2012_12_14_04_world_misc.sql index 2cd99cfb12a..2cd99cfb12a 100644 --- a/sql/updates/world/2012_12_14_04_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_14_04_world_misc.sql diff --git a/sql/updates/world/2012_12_14_05_world_spell_script_names.sql b/sql/old/3.3.5a/2012_12_14_05_world_spell_script_names.sql index 6d6ab651365..6d6ab651365 100644 --- a/sql/updates/world/2012_12_14_05_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2012_12_14_05_world_spell_script_names.sql diff --git a/sql/updates/world/2012_12_15_00_world_waypoint_data.sql b/sql/old/3.3.5a/2012_12_15_00_world_waypoint_data.sql index c63180ebe5e..c63180ebe5e 100644 --- a/sql/updates/world/2012_12_15_00_world_waypoint_data.sql +++ b/sql/old/3.3.5a/2012_12_15_00_world_waypoint_data.sql diff --git a/sql/updates/world/2012_12_15_01_world_sai.sql b/sql/old/3.3.5a/2012_12_15_01_world_sai.sql index 6d43bedc446..6d43bedc446 100644 --- a/sql/updates/world/2012_12_15_01_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_15_01_world_sai.sql diff --git a/sql/updates/world/2012_12_15_02_world_sai.sql b/sql/old/3.3.5a/2012_12_15_02_world_sai.sql index bf092bfb88d..bf092bfb88d 100644 --- a/sql/updates/world/2012_12_15_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_15_02_world_sai.sql diff --git a/sql/updates/world/2012_12_15_03_world_quest_end_scripts.sql b/sql/old/3.3.5a/2012_12_15_03_world_quest_end_scripts.sql index 91838bda93d..91838bda93d 100644 --- a/sql/updates/world/2012_12_15_03_world_quest_end_scripts.sql +++ b/sql/old/3.3.5a/2012_12_15_03_world_quest_end_scripts.sql diff --git a/sql/updates/world/2012_12_16_00_world_creature_addon.sql b/sql/old/3.3.5a/2012_12_16_00_world_creature_addon.sql index a79bb407321..a79bb407321 100644 --- a/sql/updates/world/2012_12_16_00_world_creature_addon.sql +++ b/sql/old/3.3.5a/2012_12_16_00_world_creature_addon.sql diff --git a/sql/updates/world/2012_12_16_01_world_npc_vendor.sql b/sql/old/3.3.5a/2012_12_16_01_world_npc_vendor.sql index 0e5ed38c88d..0e5ed38c88d 100644 --- a/sql/updates/world/2012_12_16_01_world_npc_vendor.sql +++ b/sql/old/3.3.5a/2012_12_16_01_world_npc_vendor.sql diff --git a/sql/updates/world/2012_12_16_02_world_creature_text.sql b/sql/old/3.3.5a/2012_12_16_02_world_creature_text.sql index f2d605469f8..f2d605469f8 100644 --- a/sql/updates/world/2012_12_16_02_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_16_02_world_creature_text.sql diff --git a/sql/updates/world/2012_12_16_03_world_sai.sql b/sql/old/3.3.5a/2012_12_16_03_world_sai.sql index 40b1e32dbeb..40b1e32dbeb 100644 --- a/sql/updates/world/2012_12_16_03_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_16_03_world_sai.sql diff --git a/sql/updates/world/2012_12_17_00_world_creature_template.sql b/sql/old/3.3.5a/2012_12_17_00_world_creature_template.sql index dfe9132e7a6..dfe9132e7a6 100644 --- a/sql/updates/world/2012_12_17_00_world_creature_template.sql +++ b/sql/old/3.3.5a/2012_12_17_00_world_creature_template.sql diff --git a/sql/updates/world/2012_12_17_00_world_song_of_wind_and_water.sql b/sql/old/3.3.5a/2012_12_17_00_world_song_of_wind_and_water.sql index 52c80334c0c..52c80334c0c 100644 --- a/sql/updates/world/2012_12_17_00_world_song_of_wind_and_water.sql +++ b/sql/old/3.3.5a/2012_12_17_00_world_song_of_wind_and_water.sql diff --git a/sql/updates/world/2012_12_17_00_world_spell_linked_spell.sql b/sql/old/3.3.5a/2012_12_17_00_world_spell_linked_spell.sql index a2cfc7073d0..a2cfc7073d0 100644 --- a/sql/updates/world/2012_12_17_00_world_spell_linked_spell.sql +++ b/sql/old/3.3.5a/2012_12_17_00_world_spell_linked_spell.sql diff --git a/sql/updates/characters/2012_12_18_00_character_worldstates.sql b/sql/old/3.3.5a/2012_12_18_00_character_worldstates.sql index 98fabde6776..98fabde6776 100644 --- a/sql/updates/characters/2012_12_18_00_character_worldstates.sql +++ b/sql/old/3.3.5a/2012_12_18_00_character_worldstates.sql diff --git a/sql/updates/world/2012_12_18_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_18_00_world_creature_text.sql index 1cf9211343f..1cf9211343f 100644 --- a/sql/updates/world/2012_12_18_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_18_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_18_00_world_waking_the_sleeper.sql b/sql/old/3.3.5a/2012_12_18_00_world_waking_the_sleeper.sql index 4f8a203100d..4f8a203100d 100644 --- a/sql/updates/world/2012_12_18_00_world_waking_the_sleeper.sql +++ b/sql/old/3.3.5a/2012_12_18_00_world_waking_the_sleeper.sql diff --git a/sql/updates/world/2012_12_18_01_world_creature_text.sql b/sql/old/3.3.5a/2012_12_18_01_world_creature_text.sql index 24779f67fc7..24779f67fc7 100644 --- a/sql/updates/world/2012_12_18_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_18_01_world_creature_text.sql diff --git a/sql/updates/world/2012_12_18_02_world_misc.sql b/sql/old/3.3.5a/2012_12_18_02_world_misc.sql index 5df6ef8eb95..5df6ef8eb95 100644 --- a/sql/updates/world/2012_12_18_02_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_18_02_world_misc.sql diff --git a/sql/updates/world/2012_12_18_02_world_sai.sql b/sql/old/3.3.5a/2012_12_18_02_world_sai.sql index 0843285550f..0843285550f 100644 --- a/sql/updates/world/2012_12_18_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_18_02_world_sai.sql diff --git a/sql/updates/world/2012_12_19_00_world_sai.sql b/sql/old/3.3.5a/2012_12_19_00_world_sai.sql index e11891cdfbd..e11891cdfbd 100644 --- a/sql/updates/world/2012_12_19_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_19_00_world_sai.sql diff --git a/sql/updates/world/2012_12_19_01_world_viscidus.sql b/sql/old/3.3.5a/2012_12_19_01_world_viscidus.sql index 16d33b80b8f..16d33b80b8f 100644 --- a/sql/updates/world/2012_12_19_01_world_viscidus.sql +++ b/sql/old/3.3.5a/2012_12_19_01_world_viscidus.sql diff --git a/sql/updates/world/2012_12_19_02_world_sai.sql b/sql/old/3.3.5a/2012_12_19_02_world_sai.sql index c6367e1a8ca..c6367e1a8ca 100644 --- a/sql/updates/world/2012_12_19_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_19_02_world_sai.sql diff --git a/sql/updates/characters/2012_12_20_00_characters_create_item_loot.sql b/sql/old/3.3.5a/2012_12_20_00_characters_create_item_loot.sql index 3c1529e8bdf..3c1529e8bdf 100644 --- a/sql/updates/characters/2012_12_20_00_characters_create_item_loot.sql +++ b/sql/old/3.3.5a/2012_12_20_00_characters_create_item_loot.sql diff --git a/sql/updates/world/2012_12_20_00_world_conditions.sql b/sql/old/3.3.5a/2012_12_20_00_world_conditions.sql index 53fc5733e53..53fc5733e53 100644 --- a/sql/updates/world/2012_12_20_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_20_00_world_conditions.sql diff --git a/sql/updates/world/2012_12_20_01_world_conditions.sql b/sql/old/3.3.5a/2012_12_20_01_world_conditions.sql index 9d1851305a3..9d1851305a3 100644 --- a/sql/updates/world/2012_12_20_01_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_20_01_world_conditions.sql diff --git a/sql/updates/world/2012_12_20_02_world_misc.sql b/sql/old/3.3.5a/2012_12_20_02_world_misc.sql index c04965d8258..c04965d8258 100644 --- a/sql/updates/world/2012_12_20_02_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_20_02_world_misc.sql diff --git a/sql/updates/world/2012_12_20_03_world_conditions.sql b/sql/old/3.3.5a/2012_12_20_03_world_conditions.sql index f07b18ed2e4..f07b18ed2e4 100644 --- a/sql/updates/world/2012_12_20_03_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_20_03_world_conditions.sql diff --git a/sql/updates/world/2012_12_21_00_world_conditions.sql b/sql/old/3.3.5a/2012_12_21_00_world_conditions.sql index eddf541eaf3..eddf541eaf3 100644 --- a/sql/updates/world/2012_12_21_00_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_21_00_world_conditions.sql diff --git a/sql/updates/world/2012_12_21_01_world_conditions.sql b/sql/old/3.3.5a/2012_12_21_01_world_conditions.sql index fdc5becd963..fdc5becd963 100644 --- a/sql/updates/world/2012_12_21_01_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_21_01_world_conditions.sql diff --git a/sql/updates/world/2012_12_22_01_world_sai.sql b/sql/old/3.3.5a/2012_12_22_01_world_sai.sql index e2a61426679..e2a61426679 100644 --- a/sql/updates/world/2012_12_22_01_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_22_01_world_sai.sql diff --git a/sql/updates/world/2012_12_22_02_world_the_crusaders_pinnacle.sql b/sql/old/3.3.5a/2012_12_22_02_world_the_crusaders_pinnacle.sql index 5debd41a160..5debd41a160 100644 --- a/sql/updates/world/2012_12_22_02_world_the_crusaders_pinnacle.sql +++ b/sql/old/3.3.5a/2012_12_22_02_world_the_crusaders_pinnacle.sql diff --git a/sql/updates/world/2012_12_23_00_world_creature_text.sql b/sql/old/3.3.5a/2012_12_23_00_world_creature_text.sql index 37b4d66b3fe..37b4d66b3fe 100644 --- a/sql/updates/world/2012_12_23_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_23_00_world_creature_text.sql diff --git a/sql/updates/world/2012_12_23_01_world_creature_text.sql b/sql/old/3.3.5a/2012_12_23_01_world_creature_text.sql index b663c5269e9..b663c5269e9 100644 --- a/sql/updates/world/2012_12_23_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_23_01_world_creature_text.sql diff --git a/sql/updates/world/2012_12_23_02_world_trinity_string.sql b/sql/old/3.3.5a/2012_12_23_02_world_trinity_string.sql index ac99945d5a5..ac99945d5a5 100644 --- a/sql/updates/world/2012_12_23_02_world_trinity_string.sql +++ b/sql/old/3.3.5a/2012_12_23_02_world_trinity_string.sql diff --git a/sql/updates/world/2012_12_23_03_world_misc.sql b/sql/old/3.3.5a/2012_12_23_03_world_misc.sql index c9a42df10dd..c9a42df10dd 100644 --- a/sql/updates/world/2012_12_23_03_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_23_03_world_misc.sql diff --git a/sql/updates/world/2012_12_24_00_world_defending_wyrmrest_temple.sql b/sql/old/3.3.5a/2012_12_24_00_world_defending_wyrmrest_temple.sql index edf1f887d1c..edf1f887d1c 100644 --- a/sql/updates/world/2012_12_24_00_world_defending_wyrmrest_temple.sql +++ b/sql/old/3.3.5a/2012_12_24_00_world_defending_wyrmrest_temple.sql diff --git a/sql/updates/world/2012_12_24_01_world_sai.sql b/sql/old/3.3.5a/2012_12_24_01_world_sai.sql index d151ee4aa2c..d151ee4aa2c 100644 --- a/sql/updates/world/2012_12_24_01_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_24_01_world_sai.sql diff --git a/sql/updates/world/2012_12_24_02_world_sai.sql b/sql/old/3.3.5a/2012_12_24_02_world_sai.sql index 03d0a9ef5c6..03d0a9ef5c6 100644 --- a/sql/updates/world/2012_12_24_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_24_02_world_sai.sql diff --git a/sql/updates/world/2012_12_24_03_world_sai.sql b/sql/old/3.3.5a/2012_12_24_03_world_sai.sql index f89f3c968aa..f89f3c968aa 100644 --- a/sql/updates/world/2012_12_24_03_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_24_03_world_sai.sql diff --git a/sql/updates/world/2012_12_24_04_world_creature.sql b/sql/old/3.3.5a/2012_12_24_04_world_creature.sql index 42f69d97a9e..42f69d97a9e 100644 --- a/sql/updates/world/2012_12_24_04_world_creature.sql +++ b/sql/old/3.3.5a/2012_12_24_04_world_creature.sql diff --git a/sql/updates/world/2012_12_24_05_world_object.sql b/sql/old/3.3.5a/2012_12_24_05_world_object.sql index 2b9947a6bd5..2b9947a6bd5 100644 --- a/sql/updates/world/2012_12_24_05_world_object.sql +++ b/sql/old/3.3.5a/2012_12_24_05_world_object.sql diff --git a/sql/updates/world/2012_12_24_06_world_reputation.sql b/sql/old/3.3.5a/2012_12_24_06_world_reputation.sql index 9320d76365d..9320d76365d 100644 --- a/sql/updates/world/2012_12_24_06_world_reputation.sql +++ b/sql/old/3.3.5a/2012_12_24_06_world_reputation.sql diff --git a/sql/updates/world/2012_12_24_07_world_sai.sql b/sql/old/3.3.5a/2012_12_24_07_world_sai.sql index 3cce37295fd..3cce37295fd 100644 --- a/sql/updates/world/2012_12_24_07_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_24_07_world_sai.sql diff --git a/sql/updates/world/2012_12_24_08_world_conditions.sql b/sql/old/3.3.5a/2012_12_24_08_world_conditions.sql index ad641203453..ad641203453 100644 --- a/sql/updates/world/2012_12_24_08_world_conditions.sql +++ b/sql/old/3.3.5a/2012_12_24_08_world_conditions.sql diff --git a/sql/updates/world/2012_12_24_09_world_sai.sql b/sql/old/3.3.5a/2012_12_24_09_world_sai.sql index d75dd937598..d75dd937598 100644 --- a/sql/updates/world/2012_12_24_09_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_24_09_world_sai.sql diff --git a/sql/updates/world/2012_12_25_00_world_sai.sql b/sql/old/3.3.5a/2012_12_25_00_world_sai.sql index 33363d33573..33363d33573 100644 --- a/sql/updates/world/2012_12_25_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_25_00_world_sai.sql diff --git a/sql/updates/world/2012_12_25_01_world_sai.sql b/sql/old/3.3.5a/2012_12_25_01_world_sai.sql index cad0ce2aec3..cad0ce2aec3 100644 --- a/sql/updates/world/2012_12_25_01_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_25_01_world_sai.sql diff --git a/sql/updates/world/2012_12_25_02_world_sai.sql b/sql/old/3.3.5a/2012_12_25_02_world_sai.sql index 35ac4ebb97b..35ac4ebb97b 100644 --- a/sql/updates/world/2012_12_25_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_25_02_world_sai.sql diff --git a/sql/updates/world/2012_12_25_03_world_sai.sql b/sql/old/3.3.5a/2012_12_25_03_world_sai.sql index 2a7553aabb3..2a7553aabb3 100644 --- a/sql/updates/world/2012_12_25_03_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_25_03_world_sai.sql diff --git a/sql/updates/world/2012_12_25_04_world_sai.sql b/sql/old/3.3.5a/2012_12_25_04_world_sai.sql index 46b2c4c2fd1..46b2c4c2fd1 100644 --- a/sql/updates/world/2012_12_25_04_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_25_04_world_sai.sql diff --git a/sql/updates/world/2012_12_26_01_world_creature_text.sql b/sql/old/3.3.5a/2012_12_26_01_world_creature_text.sql index ae4170ae5a8..ae4170ae5a8 100644 --- a/sql/updates/world/2012_12_26_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2012_12_26_01_world_creature_text.sql diff --git a/sql/updates/world/2012_12_26_02_world_sai.sql b/sql/old/3.3.5a/2012_12_26_02_world_sai.sql index b88b4044edb..b88b4044edb 100644 --- a/sql/updates/world/2012_12_26_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_02_world_sai.sql diff --git a/sql/updates/world/2012_12_26_03_world_sai.sql b/sql/old/3.3.5a/2012_12_26_03_world_sai.sql index 2e9ed5090e0..2e9ed5090e0 100644 --- a/sql/updates/world/2012_12_26_03_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_03_world_sai.sql diff --git a/sql/updates/world/2012_12_26_04_world_sai.sql b/sql/old/3.3.5a/2012_12_26_04_world_sai.sql index a29c8a22fdc..a29c8a22fdc 100644 --- a/sql/updates/world/2012_12_26_04_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_04_world_sai.sql diff --git a/sql/updates/world/2012_12_26_05_world_sai.sql b/sql/old/3.3.5a/2012_12_26_05_world_sai.sql index 143f1e9bdb0..143f1e9bdb0 100644 --- a/sql/updates/world/2012_12_26_05_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_05_world_sai.sql diff --git a/sql/updates/world/2012_12_26_06_world_sai.sql b/sql/old/3.3.5a/2012_12_26_06_world_sai.sql index 184282fe907..184282fe907 100644 --- a/sql/updates/world/2012_12_26_06_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_06_world_sai.sql diff --git a/sql/updates/world/2012_12_26_07_world_game_event.sql b/sql/old/3.3.5a/2012_12_26_07_world_game_event.sql index 21dcf12e1c4..21dcf12e1c4 100644 --- a/sql/updates/world/2012_12_26_07_world_game_event.sql +++ b/sql/old/3.3.5a/2012_12_26_07_world_game_event.sql diff --git a/sql/updates/world/2012_12_26_08_world_sai.sql b/sql/old/3.3.5a/2012_12_26_08_world_sai.sql index 8fde794613e..8fde794613e 100644 --- a/sql/updates/world/2012_12_26_08_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_08_world_sai.sql diff --git a/sql/updates/world/2012_12_26_09_world_sai.sql b/sql/old/3.3.5a/2012_12_26_09_world_sai.sql index fe81c15fb3a..fe81c15fb3a 100644 --- a/sql/updates/world/2012_12_26_09_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_09_world_sai.sql diff --git a/sql/updates/world/2012_12_26_10_world_sai.sql b/sql/old/3.3.5a/2012_12_26_10_world_sai.sql index b6b925d8255..b6b925d8255 100644 --- a/sql/updates/world/2012_12_26_10_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_10_world_sai.sql diff --git a/sql/updates/world/2012_12_26_11_world_sai.sql b/sql/old/3.3.5a/2012_12_26_11_world_sai.sql index abbdfb88c24..abbdfb88c24 100644 --- a/sql/updates/world/2012_12_26_11_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_11_world_sai.sql diff --git a/sql/updates/world/2012_12_26_12_world_quest_end_scripts.sql b/sql/old/3.3.5a/2012_12_26_12_world_quest_end_scripts.sql index 501bb796557..501bb796557 100644 --- a/sql/updates/world/2012_12_26_12_world_quest_end_scripts.sql +++ b/sql/old/3.3.5a/2012_12_26_12_world_quest_end_scripts.sql diff --git a/sql/updates/world/2012_12_26_13_world_sai.sql b/sql/old/3.3.5a/2012_12_26_13_world_sai.sql index d36affe8eb3..d36affe8eb3 100644 --- a/sql/updates/world/2012_12_26_13_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_13_world_sai.sql diff --git a/sql/updates/world/2012_12_26_14_world_sai.sql b/sql/old/3.3.5a/2012_12_26_14_world_sai.sql index 2929d590637..2929d590637 100644 --- a/sql/updates/world/2012_12_26_14_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_14_world_sai.sql diff --git a/sql/updates/world/2012_12_26_15_world_sai.sql b/sql/old/3.3.5a/2012_12_26_15_world_sai.sql index a40f73bffc8..a40f73bffc8 100644 --- a/sql/updates/world/2012_12_26_15_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_15_world_sai.sql diff --git a/sql/updates/world/2012_12_26_16_world_sai.sql b/sql/old/3.3.5a/2012_12_26_16_world_sai.sql index 39a246c9ccd..39a246c9ccd 100644 --- a/sql/updates/world/2012_12_26_16_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_16_world_sai.sql diff --git a/sql/updates/world/2012_12_26_17_world_sai.sql b/sql/old/3.3.5a/2012_12_26_17_world_sai.sql index 6f35bcc230b..6f35bcc230b 100644 --- a/sql/updates/world/2012_12_26_17_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_17_world_sai.sql diff --git a/sql/updates/world/2012_12_26_18_world_sai.sql b/sql/old/3.3.5a/2012_12_26_18_world_sai.sql index cd4989de5e0..cd4989de5e0 100644 --- a/sql/updates/world/2012_12_26_18_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_18_world_sai.sql diff --git a/sql/updates/world/2012_12_26_19_world_sai.sql b/sql/old/3.3.5a/2012_12_26_19_world_sai.sql index 5cfd2a29c62..5cfd2a29c62 100644 --- a/sql/updates/world/2012_12_26_19_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_19_world_sai.sql diff --git a/sql/updates/world/2012_12_26_20_world_sai.sql b/sql/old/3.3.5a/2012_12_26_20_world_sai.sql index 3574835ce32..3574835ce32 100644 --- a/sql/updates/world/2012_12_26_20_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_26_20_world_sai.sql diff --git a/sql/updates/world/2012_12_27_00_world_orgrims_hammer.sql b/sql/old/3.3.5a/2012_12_27_00_world_orgrims_hammer.sql index a7c8af76fa0..a7c8af76fa0 100644 --- a/sql/updates/world/2012_12_27_00_world_orgrims_hammer.sql +++ b/sql/old/3.3.5a/2012_12_27_00_world_orgrims_hammer.sql diff --git a/sql/updates/world/2012_12_27_01_world_locales_quest.sql b/sql/old/3.3.5a/2012_12_27_01_world_locales_quest.sql index 047f8bb499f..047f8bb499f 100644 --- a/sql/updates/world/2012_12_27_01_world_locales_quest.sql +++ b/sql/old/3.3.5a/2012_12_27_01_world_locales_quest.sql diff --git a/sql/updates/world/2012_12_27_02_world_locales.sql b/sql/old/3.3.5a/2012_12_27_02_world_locales.sql index 5caeb009447..5caeb009447 100644 --- a/sql/updates/world/2012_12_27_02_world_locales.sql +++ b/sql/old/3.3.5a/2012_12_27_02_world_locales.sql diff --git a/sql/updates/world/2012_12_27_03_world_sai.sql b/sql/old/3.3.5a/2012_12_27_03_world_sai.sql index acd5c931c50..acd5c931c50 100644 --- a/sql/updates/world/2012_12_27_03_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_27_03_world_sai.sql diff --git a/sql/updates/world/2012_12_27_04_world_the_shadows_vault.sql b/sql/old/3.3.5a/2012_12_27_04_world_the_shadows_vault.sql index 96d176d6d1b..96d176d6d1b 100644 --- a/sql/updates/world/2012_12_27_04_world_the_shadows_vault.sql +++ b/sql/old/3.3.5a/2012_12_27_04_world_the_shadows_vault.sql diff --git a/sql/updates/world/2012_12_28_00_world_command.sql b/sql/old/3.3.5a/2012_12_28_00_world_command.sql index 6de970d3b81..6de970d3b81 100644 --- a/sql/updates/world/2012_12_28_00_world_command.sql +++ b/sql/old/3.3.5a/2012_12_28_00_world_command.sql diff --git a/sql/updates/world/2012_12_28_01_world_misc.sql b/sql/old/3.3.5a/2012_12_28_01_world_misc.sql index 44501390d9e..44501390d9e 100644 --- a/sql/updates/world/2012_12_28_01_world_misc.sql +++ b/sql/old/3.3.5a/2012_12_28_01_world_misc.sql diff --git a/sql/updates/world/2012_12_28_02_world_sai.sql b/sql/old/3.3.5a/2012_12_28_02_world_sai.sql index 7a518449fde..7a518449fde 100644 --- a/sql/updates/world/2012_12_28_02_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_28_02_world_sai.sql diff --git a/sql/updates/world/2012_12_28_03_world_disables.sql b/sql/old/3.3.5a/2012_12_28_03_world_disables.sql index 017e3aea8c1..017e3aea8c1 100644 --- a/sql/updates/world/2012_12_28_03_world_disables.sql +++ b/sql/old/3.3.5a/2012_12_28_03_world_disables.sql diff --git a/sql/updates/world/2012_12_28_04_world_citadel_footsteps.sql b/sql/old/3.3.5a/2012_12_28_04_world_citadel_footsteps.sql index 3d0ad779dc2..3d0ad779dc2 100644 --- a/sql/updates/world/2012_12_28_04_world_citadel_footsteps.sql +++ b/sql/old/3.3.5a/2012_12_28_04_world_citadel_footsteps.sql diff --git a/sql/updates/world/2012_12_30_01_world_trinity_string.sql b/sql/old/3.3.5a/2012_12_30_01_world_trinity_string.sql index ce0578168f4..ce0578168f4 100644 --- a/sql/updates/world/2012_12_30_01_world_trinity_string.sql +++ b/sql/old/3.3.5a/2012_12_30_01_world_trinity_string.sql diff --git a/sql/updates/world/2012_12_31_00_world_sai.sql b/sql/old/3.3.5a/2012_12_31_00_world_sai.sql index 9e30c29f784..9e30c29f784 100644 --- a/sql/updates/world/2012_12_31_00_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_31_00_world_sai.sql diff --git a/sql/updates/world/2012_12_31_01_world_sai.sql b/sql/old/3.3.5a/2012_12_31_01_world_sai.sql index 96cf4d1e724..96cf4d1e724 100644 --- a/sql/updates/world/2012_12_31_01_world_sai.sql +++ b/sql/old/3.3.5a/2012_12_31_01_world_sai.sql diff --git a/sql/updates/world/2013_01_01_00_item_template_restore.sql b/sql/old/3.3.5a/2013_01_01_00_item_template_restore.sql index dc18ff71fe8..dc18ff71fe8 100644 --- a/sql/updates/world/2013_01_01_00_item_template_restore.sql +++ b/sql/old/3.3.5a/2013_01_01_00_item_template_restore.sql diff --git a/sql/updates/world/2013_01_01_01_world_creature_text.sql b/sql/old/3.3.5a/2013_01_01_01_world_creature_text.sql index c0055f8e1d0..c0055f8e1d0 100644 --- a/sql/updates/world/2013_01_01_01_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_01_01_world_creature_text.sql diff --git a/sql/updates/world/2013_01_02_00_world_misc.sql b/sql/old/3.3.5a/2013_01_02_00_world_misc.sql index 8527b8ab145..8527b8ab145 100644 --- a/sql/updates/world/2013_01_02_00_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_02_00_world_misc.sql diff --git a/sql/updates/world/2013_01_02_01_world_spell_script.sql b/sql/old/3.3.5a/2013_01_02_01_world_spell_script.sql index a839ca6dc7b..a839ca6dc7b 100644 --- a/sql/updates/world/2013_01_02_01_world_spell_script.sql +++ b/sql/old/3.3.5a/2013_01_02_01_world_spell_script.sql diff --git a/sql/updates/world/2013_01_02_02_world_instance_template.sql b/sql/old/3.3.5a/2013_01_02_02_world_instance_template.sql index f63a2c3ba2e..f63a2c3ba2e 100644 --- a/sql/updates/world/2013_01_02_02_world_instance_template.sql +++ b/sql/old/3.3.5a/2013_01_02_02_world_instance_template.sql diff --git a/sql/updates/world/2013_01_02_03_world_sai.sql b/sql/old/3.3.5a/2013_01_02_03_world_sai.sql index 6f6318b55bd..6f6318b55bd 100644 --- a/sql/updates/world/2013_01_02_03_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_02_03_world_sai.sql diff --git a/sql/updates/world/2013_01_02_04_world_creature.sql b/sql/old/3.3.5a/2013_01_02_04_world_creature.sql index 686909ce57e..686909ce57e 100644 --- a/sql/updates/world/2013_01_02_04_world_creature.sql +++ b/sql/old/3.3.5a/2013_01_02_04_world_creature.sql diff --git a/sql/updates/world/2013_01_02_05_eye_of_eternity.sql b/sql/old/3.3.5a/2013_01_02_05_eye_of_eternity.sql index 89cc8f08cce..89cc8f08cce 100644 --- a/sql/updates/world/2013_01_02_05_eye_of_eternity.sql +++ b/sql/old/3.3.5a/2013_01_02_05_eye_of_eternity.sql diff --git a/sql/updates/world/2013_01_02_06_world_sai.sql b/sql/old/3.3.5a/2013_01_02_06_world_sai.sql index 2ce089188d6..2ce089188d6 100644 --- a/sql/updates/world/2013_01_02_06_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_02_06_world_sai.sql diff --git a/sql/updates/world/2013_01_02_06_world_waypoints.sql b/sql/old/3.3.5a/2013_01_02_06_world_waypoints.sql index c7302a457a2..c7302a457a2 100644 --- a/sql/updates/world/2013_01_02_06_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_02_06_world_waypoints.sql diff --git a/sql/updates/world/2013_01_02_07_world_waypoints.sql b/sql/old/3.3.5a/2013_01_02_07_world_waypoints.sql index b49fd0b28a6..b49fd0b28a6 100644 --- a/sql/updates/world/2013_01_02_07_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_02_07_world_waypoints.sql diff --git a/sql/updates/world/2013_01_02_08_world_sai.sql b/sql/old/3.3.5a/2013_01_02_08_world_sai.sql index a3f0dde4658..a3f0dde4658 100644 --- a/sql/updates/world/2013_01_02_08_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_02_08_world_sai.sql diff --git a/sql/updates/world/2013_01_02_09_world_waypoints.sql b/sql/old/3.3.5a/2013_01_02_09_world_waypoints.sql index 1c2492fcce8..1c2492fcce8 100644 --- a/sql/updates/world/2013_01_02_09_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_02_09_world_waypoints.sql diff --git a/sql/updates/world/2013_01_02_10_world_sai.sql b/sql/old/3.3.5a/2013_01_02_10_world_sai.sql index 0be2c5c2d6b..0be2c5c2d6b 100644 --- a/sql/updates/world/2013_01_02_10_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_02_10_world_sai.sql diff --git a/sql/updates/world/2013_01_02_11_world_sai.sql b/sql/old/3.3.5a/2013_01_02_11_world_sai.sql index 7496a765470..7496a765470 100644 --- a/sql/updates/world/2013_01_02_11_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_02_11_world_sai.sql diff --git a/sql/updates/world/2013_01_02_12_world_go_script.sql b/sql/old/3.3.5a/2013_01_02_12_world_go_script.sql index aea0a67c47e..aea0a67c47e 100644 --- a/sql/updates/world/2013_01_02_12_world_go_script.sql +++ b/sql/old/3.3.5a/2013_01_02_12_world_go_script.sql diff --git a/sql/updates/world/2013_01_02_12_world_waypoints.sql b/sql/old/3.3.5a/2013_01_02_12_world_waypoints.sql index 6ec7875d8ef..6ec7875d8ef 100644 --- a/sql/updates/world/2013_01_02_12_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_02_12_world_waypoints.sql diff --git a/sql/updates/world/2013_01_03_00_world_gameobject_scripts.sql b/sql/old/3.3.5a/2013_01_03_00_world_gameobject_scripts.sql index 32faf4b03a0..32faf4b03a0 100644 --- a/sql/updates/world/2013_01_03_00_world_gameobject_scripts.sql +++ b/sql/old/3.3.5a/2013_01_03_00_world_gameobject_scripts.sql diff --git a/sql/updates/world/2013_01_03_01_world_sai.sql b/sql/old/3.3.5a/2013_01_03_01_world_sai.sql index 9e0e56eb645..9e0e56eb645 100644 --- a/sql/updates/world/2013_01_03_01_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_01_world_sai.sql diff --git a/sql/updates/world/2013_01_03_02_world_sai.sql b/sql/old/3.3.5a/2013_01_03_02_world_sai.sql index ecd84c96800..ecd84c96800 100644 --- a/sql/updates/world/2013_01_03_02_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_02_world_sai.sql diff --git a/sql/updates/world/2013_01_03_03_world_spelldifficulty_dbc.sql b/sql/old/3.3.5a/2013_01_03_03_world_spelldifficulty_dbc.sql index 6a41f705491..6a41f705491 100644 --- a/sql/updates/world/2013_01_03_03_world_spelldifficulty_dbc.sql +++ b/sql/old/3.3.5a/2013_01_03_03_world_spelldifficulty_dbc.sql diff --git a/sql/updates/world/2013_01_03_04_world_sai.sql b/sql/old/3.3.5a/2013_01_03_04_world_sai.sql index ccac9266af2..ccac9266af2 100644 --- a/sql/updates/world/2013_01_03_04_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_04_world_sai.sql diff --git a/sql/updates/world/2013_01_03_05_world_sai.sql b/sql/old/3.3.5a/2013_01_03_05_world_sai.sql index 9e5537835ff..9e5537835ff 100644 --- a/sql/updates/world/2013_01_03_05_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_05_world_sai.sql diff --git a/sql/updates/world/2013_01_03_06_world_sai.sql b/sql/old/3.3.5a/2013_01_03_06_world_sai.sql index e77122e908e..e77122e908e 100644 --- a/sql/updates/world/2013_01_03_06_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_06_world_sai.sql diff --git a/sql/updates/world/2013_01_03_07_world_sai.sql b/sql/old/3.3.5a/2013_01_03_07_world_sai.sql index 35a03b9078c..35a03b9078c 100644 --- a/sql/updates/world/2013_01_03_07_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_07_world_sai.sql diff --git a/sql/updates/world/2013_01_03_08_world_misc.sql b/sql/old/3.3.5a/2013_01_03_08_world_misc.sql index 816b4b4dcf6..816b4b4dcf6 100644 --- a/sql/updates/world/2013_01_03_08_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_03_08_world_misc.sql diff --git a/sql/updates/world/2013_01_03_09_world_sai.sql b/sql/old/3.3.5a/2013_01_03_09_world_sai.sql index c15eeb88843..c15eeb88843 100644 --- a/sql/updates/world/2013_01_03_09_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_03_09_world_sai.sql diff --git a/sql/updates/world/2013_01_03_10_world_gameobject.sql b/sql/old/3.3.5a/2013_01_03_10_world_gameobject.sql index 11700da1dc9..11700da1dc9 100644 --- a/sql/updates/world/2013_01_03_10_world_gameobject.sql +++ b/sql/old/3.3.5a/2013_01_03_10_world_gameobject.sql diff --git a/sql/updates/world/2013_01_03_11_world_item_template.sql b/sql/old/3.3.5a/2013_01_03_11_world_item_template.sql index df0bd5cd1e7..df0bd5cd1e7 100644 --- a/sql/updates/world/2013_01_03_11_world_item_template.sql +++ b/sql/old/3.3.5a/2013_01_03_11_world_item_template.sql diff --git a/sql/updates/world/2013_01_03_12_world_gameobject_scripts.sql b/sql/old/3.3.5a/2013_01_03_12_world_gameobject_scripts.sql index aede83aa0c8..aede83aa0c8 100644 --- a/sql/updates/world/2013_01_03_12_world_gameobject_scripts.sql +++ b/sql/old/3.3.5a/2013_01_03_12_world_gameobject_scripts.sql diff --git a/sql/updates/world/2013_01_03_12_world_misc.sql b/sql/old/3.3.5a/2013_01_03_12_world_misc.sql index 79d2e2daea9..79d2e2daea9 100644 --- a/sql/updates/world/2013_01_03_12_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_03_12_world_misc.sql diff --git a/sql/updates/world/2013_01_03_13_world_quest_template.sql b/sql/old/3.3.5a/2013_01_03_13_world_quest_template.sql index 12adb1e94ba..12adb1e94ba 100644 --- a/sql/updates/world/2013_01_03_13_world_quest_template.sql +++ b/sql/old/3.3.5a/2013_01_03_13_world_quest_template.sql diff --git a/sql/updates/world/2013_01_03_14_world_spell_area.sql b/sql/old/3.3.5a/2013_01_03_14_world_spell_area.sql index 352fe0e9d85..352fe0e9d85 100644 --- a/sql/updates/world/2013_01_03_14_world_spell_area.sql +++ b/sql/old/3.3.5a/2013_01_03_14_world_spell_area.sql diff --git a/sql/updates/world/2013_01_03_15_world_various_fixes.sql b/sql/old/3.3.5a/2013_01_03_15_world_various_fixes.sql index d3db9afa6e5..d3db9afa6e5 100644 --- a/sql/updates/world/2013_01_03_15_world_various_fixes.sql +++ b/sql/old/3.3.5a/2013_01_03_15_world_various_fixes.sql diff --git a/sql/updates/world/2013_01_03_16_world_various_fixes.sql b/sql/old/3.3.5a/2013_01_03_16_world_various_fixes.sql index bc5f4f4b6ec..bc5f4f4b6ec 100644 --- a/sql/updates/world/2013_01_03_16_world_various_fixes.sql +++ b/sql/old/3.3.5a/2013_01_03_16_world_various_fixes.sql diff --git a/sql/updates/world/2013_01_04_00_world_creature_text.sql b/sql/old/3.3.5a/2013_01_04_00_world_creature_text.sql index ae38180e1ac..ae38180e1ac 100644 --- a/sql/updates/world/2013_01_04_00_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_04_00_world_creature_text.sql diff --git a/sql/updates/world/2013_01_04_01_world_sai.sql b/sql/old/3.3.5a/2013_01_04_01_world_sai.sql index 8e7127e5728..8e7127e5728 100644 --- a/sql/updates/world/2013_01_04_01_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_04_01_world_sai.sql diff --git a/sql/updates/world/2013_01_04_02_world_misc.sql b/sql/old/3.3.5a/2013_01_04_02_world_misc.sql index 6833a22ff23..6833a22ff23 100644 --- a/sql/updates/world/2013_01_04_02_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_04_02_world_misc.sql diff --git a/sql/updates/world/2013_01_04_02_world_novos_the_summoner.sql b/sql/old/3.3.5a/2013_01_04_02_world_novos_the_summoner.sql index 49f8b21e3a7..49f8b21e3a7 100644 --- a/sql/updates/world/2013_01_04_02_world_novos_the_summoner.sql +++ b/sql/old/3.3.5a/2013_01_04_02_world_novos_the_summoner.sql diff --git a/sql/updates/world/2013_01_05_00_world_waypoints.sql b/sql/old/3.3.5a/2013_01_05_00_world_waypoints.sql index 4a2d273c552..4a2d273c552 100644 --- a/sql/updates/world/2013_01_05_00_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_05_00_world_waypoints.sql diff --git a/sql/updates/world/2013_01_06_00_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_06_00_world_creature_addon.sql index e4412241dce..e4412241dce 100644 --- a/sql/updates/world/2013_01_06_00_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_06_00_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_06_00_world_creature_template.sql b/sql/old/3.3.5a/2013_01_06_00_world_creature_template.sql index 023dc88c870..023dc88c870 100644 --- a/sql/updates/world/2013_01_06_00_world_creature_template.sql +++ b/sql/old/3.3.5a/2013_01_06_00_world_creature_template.sql diff --git a/sql/updates/world/2013_01_06_01_world_waypoints.sql b/sql/old/3.3.5a/2013_01_06_01_world_waypoints.sql index a460d33b086..a460d33b086 100644 --- a/sql/updates/world/2013_01_06_01_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_06_01_world_waypoints.sql diff --git a/sql/updates/world/2013_01_06_02_world_misc.sql b/sql/old/3.3.5a/2013_01_06_02_world_misc.sql index 8c24975754a..8c24975754a 100644 --- a/sql/updates/world/2013_01_06_02_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_06_02_world_misc.sql diff --git a/sql/updates/world/2013_01_06_03_world_sai.sql b/sql/old/3.3.5a/2013_01_06_03_world_sai.sql index 1cc0962781b..1cc0962781b 100644 --- a/sql/updates/world/2013_01_06_03_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_06_03_world_sai.sql diff --git a/sql/updates/world/2013_01_06_04_world_misc.sql b/sql/old/3.3.5a/2013_01_06_04_world_misc.sql index fb1e256fa1b..fb1e256fa1b 100644 --- a/sql/updates/world/2013_01_06_04_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_06_04_world_misc.sql diff --git a/sql/updates/world/2013_01_07_00_world_sai.sql b/sql/old/3.3.5a/2013_01_07_00_world_sai.sql index e289130ddef..e289130ddef 100644 --- a/sql/updates/world/2013_01_07_00_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_07_00_world_sai.sql diff --git a/sql/updates/world/2013_01_07_01_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_07_01_world_creature_addon.sql index a83bd028343..a83bd028343 100644 --- a/sql/updates/world/2013_01_07_01_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_07_01_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_07_02_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_02_world_creature_text.sql index 3e916464615..3e916464615 100644 --- a/sql/updates/world/2013_01_07_02_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_02_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_03_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_03_world_creature_text.sql index c006dc5ef99..c006dc5ef99 100644 --- a/sql/updates/world/2013_01_07_03_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_03_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_04_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_04_world_creature_text.sql index 6fd1d3b95a7..6fd1d3b95a7 100644 --- a/sql/updates/world/2013_01_07_04_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_04_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_05_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_05_world_creature_text.sql index d9d91e784ba..d9d91e784ba 100644 --- a/sql/updates/world/2013_01_07_05_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_05_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_06_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_06_world_creature_text.sql index 5c7d09f9887..5c7d09f9887 100644 --- a/sql/updates/world/2013_01_07_06_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_06_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_07_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_07_world_creature_text.sql index 6f6a0b75713..6f6a0b75713 100644 --- a/sql/updates/world/2013_01_07_07_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_07_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_08_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_08_world_creature_text.sql index 94ab4d925ee..94ab4d925ee 100644 --- a/sql/updates/world/2013_01_07_08_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_08_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_09_world_buru.sql b/sql/old/3.3.5a/2013_01_07_09_world_buru.sql index a7e1d5a0ef1..a7e1d5a0ef1 100644 --- a/sql/updates/world/2013_01_07_09_world_buru.sql +++ b/sql/old/3.3.5a/2013_01_07_09_world_buru.sql diff --git a/sql/updates/world/2013_01_07_10_world_skeram.sql b/sql/old/3.3.5a/2013_01_07_10_world_skeram.sql index fb62da5e994..fb62da5e994 100644 --- a/sql/updates/world/2013_01_07_10_world_skeram.sql +++ b/sql/old/3.3.5a/2013_01_07_10_world_skeram.sql diff --git a/sql/updates/world/2013_01_07_11_world_sai.sql b/sql/old/3.3.5a/2013_01_07_11_world_sai.sql index bf4a1ed3c78..bf4a1ed3c78 100644 --- a/sql/updates/world/2013_01_07_11_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_07_11_world_sai.sql diff --git a/sql/updates/world/2013_01_07_12_world_sai.sql b/sql/old/3.3.5a/2013_01_07_12_world_sai.sql index bfa06980983..bfa06980983 100644 --- a/sql/updates/world/2013_01_07_12_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_07_12_world_sai.sql diff --git a/sql/updates/world/2013_01_07_13_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_13_world_creature_text.sql index 60d69e3c32a..60d69e3c32a 100644 --- a/sql/updates/world/2013_01_07_13_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_13_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_14_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_14_world_creature_text.sql index d68eb93ff4e..d68eb93ff4e 100644 --- a/sql/updates/world/2013_01_07_14_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_14_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_15_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_07_15_world_creature_addon.sql index 2b5ec6c2413..2b5ec6c2413 100644 --- a/sql/updates/world/2013_01_07_15_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_07_15_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_07_16_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_07_16_world_creature_addon.sql index bd5c17c6f67..bd5c17c6f67 100644 --- a/sql/updates/world/2013_01_07_16_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_07_16_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_07_17_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_17_world_creature_text.sql index 137308da214..137308da214 100644 --- a/sql/updates/world/2013_01_07_17_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_17_world_creature_text.sql diff --git a/sql/updates/world/2013_01_07_18_world_creature_text.sql b/sql/old/3.3.5a/2013_01_07_18_world_creature_text.sql index b9c6ef8d0c1..b9c6ef8d0c1 100644 --- a/sql/updates/world/2013_01_07_18_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_07_18_world_creature_text.sql diff --git a/sql/updates/world/2013_01_08_01_world_raise_the_barricades.sql b/sql/old/3.3.5a/2013_01_08_01_world_raise_the_barricades.sql index 636beb404de..636beb404de 100644 --- a/sql/updates/world/2013_01_08_01_world_raise_the_barricades.sql +++ b/sql/old/3.3.5a/2013_01_08_01_world_raise_the_barricades.sql diff --git a/sql/updates/world/2013_01_09_00_world_misc.sql b/sql/old/3.3.5a/2013_01_09_00_world_misc.sql index a5402c60534..a5402c60534 100644 --- a/sql/updates/world/2013_01_09_00_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_09_00_world_misc.sql diff --git a/sql/updates/world/2013_01_09_01_world_lfg_dungeon_rewards.sql b/sql/old/3.3.5a/2013_01_09_01_world_lfg_dungeon_rewards.sql index dfc5f7cf075..dfc5f7cf075 100644 --- a/sql/updates/world/2013_01_09_01_world_lfg_dungeon_rewards.sql +++ b/sql/old/3.3.5a/2013_01_09_01_world_lfg_dungeon_rewards.sql diff --git a/sql/updates/world/2013_01_09_02_world_sai.sql b/sql/old/3.3.5a/2013_01_09_02_world_sai.sql index bd164ff4b5e..bd164ff4b5e 100644 --- a/sql/updates/world/2013_01_09_02_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_09_02_world_sai.sql diff --git a/sql/updates/world/2013_01_09_03_world_spell_script_names.sql b/sql/old/3.3.5a/2013_01_09_03_world_spell_script_names.sql index 14d0eb8bfd9..14d0eb8bfd9 100644 --- a/sql/updates/world/2013_01_09_03_world_spell_script_names.sql +++ b/sql/old/3.3.5a/2013_01_09_03_world_spell_script_names.sql diff --git a/sql/updates/world/2013_01_10_00_world_trinity_string.sql b/sql/old/3.3.5a/2013_01_10_00_world_trinity_string.sql index 35d0c1eba99..35d0c1eba99 100644 --- a/sql/updates/world/2013_01_10_00_world_trinity_string.sql +++ b/sql/old/3.3.5a/2013_01_10_00_world_trinity_string.sql diff --git a/sql/updates/world/2013_01_10_01_world_sai.sql b/sql/old/3.3.5a/2013_01_10_01_world_sai.sql index da6c5f994f2..da6c5f994f2 100644 --- a/sql/updates/world/2013_01_10_01_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_10_01_world_sai.sql diff --git a/sql/updates/world/2013_01_10_02_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_10_02_world_creature_addon.sql index 4ad14575d36..4ad14575d36 100644 --- a/sql/updates/world/2013_01_10_02_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_10_02_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_10_03_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_10_03_world_creature_addon.sql index ef633331937..ef633331937 100644 --- a/sql/updates/world/2013_01_10_03_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_10_03_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_10_04_world_creature_addon.sql b/sql/old/3.3.5a/2013_01_10_04_world_creature_addon.sql index 74f2356e7a7..74f2356e7a7 100644 --- a/sql/updates/world/2013_01_10_04_world_creature_addon.sql +++ b/sql/old/3.3.5a/2013_01_10_04_world_creature_addon.sql diff --git a/sql/updates/world/2013_01_10_05_world_sai.sql b/sql/old/3.3.5a/2013_01_10_05_world_sai.sql index 82f2a16a113..82f2a16a113 100644 --- a/sql/updates/world/2013_01_10_05_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_10_05_world_sai.sql diff --git a/sql/updates/world/2013_01_11_00_world_ayamiss.sql b/sql/old/3.3.5a/2013_01_11_00_world_ayamiss.sql index cbdb7a2ed16..cbdb7a2ed16 100644 --- a/sql/updates/world/2013_01_11_00_world_ayamiss.sql +++ b/sql/old/3.3.5a/2013_01_11_00_world_ayamiss.sql diff --git a/sql/updates/world/2013_01_11_01_world_conditions.sql b/sql/old/3.3.5a/2013_01_11_01_world_conditions.sql index 352efb792b4..352efb792b4 100644 --- a/sql/updates/world/2013_01_11_01_world_conditions.sql +++ b/sql/old/3.3.5a/2013_01_11_01_world_conditions.sql diff --git a/sql/updates/world/2013_01_11_02_world_sai.sql b/sql/old/3.3.5a/2013_01_11_02_world_sai.sql index 09466db2e94..09466db2e94 100644 --- a/sql/updates/world/2013_01_11_02_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_11_02_world_sai.sql diff --git a/sql/updates/world/2013_01_11_03_world_sai.sql b/sql/old/3.3.5a/2013_01_11_03_world_sai.sql index e08252a4894..e08252a4894 100644 --- a/sql/updates/world/2013_01_11_03_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_11_03_world_sai.sql diff --git a/sql/updates/world/2013_01_11_04_world_sai.sql b/sql/old/3.3.5a/2013_01_11_04_world_sai.sql index 3c885d85cc1..3c885d85cc1 100644 --- a/sql/updates/world/2013_01_11_04_world_sai.sql +++ b/sql/old/3.3.5a/2013_01_11_04_world_sai.sql diff --git a/sql/updates/world/2013_01_11_05_world_creature_text.sql b/sql/old/3.3.5a/2013_01_11_05_world_creature_text.sql index 1283fd86106..1283fd86106 100644 --- a/sql/updates/world/2013_01_11_05_world_creature_text.sql +++ b/sql/old/3.3.5a/2013_01_11_05_world_creature_text.sql diff --git a/sql/updates/world/2013_01_12_00_world_smart_scripts.sql b/sql/old/3.3.5a/2013_01_12_00_world_smart_scripts.sql index 06562cbd122..06562cbd122 100644 --- a/sql/updates/world/2013_01_12_00_world_smart_scripts.sql +++ b/sql/old/3.3.5a/2013_01_12_00_world_smart_scripts.sql diff --git a/sql/updates/world/2013_01_12_01_world_string.sql b/sql/old/3.3.5a/2013_01_12_01_world_string.sql index 8766e97231d..8766e97231d 100644 --- a/sql/updates/world/2013_01_12_01_world_string.sql +++ b/sql/old/3.3.5a/2013_01_12_01_world_string.sql diff --git a/sql/updates/world/2013_01_12_02_world_creature_template.sql b/sql/old/3.3.5a/2013_01_12_02_world_creature_template.sql index 608af749f15..608af749f15 100644 --- a/sql/updates/world/2013_01_12_02_world_creature_template.sql +++ b/sql/old/3.3.5a/2013_01_12_02_world_creature_template.sql diff --git a/sql/updates/world/2013_01_12_03_world_gameobject.sql b/sql/old/3.3.5a/2013_01_12_03_world_gameobject.sql index a7a914fceec..a7a914fceec 100644 --- a/sql/updates/world/2013_01_12_03_world_gameobject.sql +++ b/sql/old/3.3.5a/2013_01_12_03_world_gameobject.sql diff --git a/sql/updates/world/2013_01_12_03_world_waypoints.sql b/sql/old/3.3.5a/2013_01_12_03_world_waypoints.sql index 3903e383ae8..3903e383ae8 100644 --- a/sql/updates/world/2013_01_12_03_world_waypoints.sql +++ b/sql/old/3.3.5a/2013_01_12_03_world_waypoints.sql diff --git a/sql/updates/world/2013_01_12_04_world_misc.sql b/sql/old/3.3.5a/2013_01_12_04_world_misc.sql index 5ba81aa39f1..5ba81aa39f1 100644 --- a/sql/updates/world/2013_01_12_04_world_misc.sql +++ b/sql/old/3.3.5a/2013_01_12_04_world_misc.sql diff --git a/sql/old/3.3.5a/2013_01_12_05_world_waypoint_script.sql b/sql/old/3.3.5a/2013_01_12_05_world_waypoint_script.sql new file mode 100644 index 00000000000..639b27b911e --- /dev/null +++ b/sql/old/3.3.5a/2013_01_12_05_world_waypoint_script.sql @@ -0,0 +1 @@ +DELETE FROM `waypoint_scripts` WHERE `id` = 8316001; diff --git a/sql/old/3.3.5a/2013_01_13_00_world_gameobject_template.sql b/sql/old/3.3.5a/2013_01_13_00_world_gameobject_template.sql new file mode 100644 index 00000000000..056dfea0bc9 --- /dev/null +++ b/sql/old/3.3.5a/2013_01_13_00_world_gameobject_template.sql @@ -0,0 +1 @@ +UPDATE `gameobject_template` SET `ScriptName`='' WHERE `entry`=130511; diff --git a/sql/old/3.3.5a/2013_01_13_01_world_sai.sql b/sql/old/3.3.5a/2013_01_13_01_world_sai.sql new file mode 100644 index 00000000000..a8513d88ab0 --- /dev/null +++ b/sql/old/3.3.5a/2013_01_13_01_world_sai.sql @@ -0,0 +1,41 @@ +SET @CONTROL_WATCHER := 58524; +SET @ETHREAL := 58548; +SET @GOSSIP := 10028; +SET @EYE := 193058; +SET @WATCHER := 31110; +SET @MIRROR_NPC := 31005; +SET @FIGMENT_SPELL := 57530; +SET @PLAYER_MIRROR := 58122; +SET @CONTROL_START := 58120; +SET @MIRROR_SPELL := 57528; +SET @WEAPON_COPY := 41055; +SET @COPY_OFF_HAND := 45205; + +UPDATE `creature_template` SET `spell1` = 58541, `spell2` = 58544, `spell3` = 58543, `spell4` = 58562, `spell5` = 58563, `spell6` = 58658 WHERE `entry` = @WATCHER; +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=@MIRROR_NPC; +UPDATE `gameobject_template` SET `AIName`='SmartGameObjectAI' WHERE `entry`= @EYE; +UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = @WATCHER; +DELETE FROM `smart_scripts` WHERE `entryorguid`= @EYE; +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 +(@EYE,1,0,1,62,0,100,0,@GOSSIP,0,0,0,85,@CONTROL_WATCHER,2,0,0,0,0,7,0,0,0,0,0,0,0, 'On Gossip Option Select - Cast Control Eidolon Watcher - Action Invoker'), +(@EYE,1,1,2,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0, 'Eye of Dominion - On link - Close Gossip Option'), +(@EYE,1,2,3,61,0,100,0,0,0,0,0,85,@PLAYER_MIRROR,2,0,0,0,0,7,0,0,0,0,0,0,0, 'Eye of Dominion - On link - Summon Player Mirror'), +(@EYE,1,3,0,61,0,100,0,0,0,0,0,15,13168,0,0,0,0,0,7,0,0,0,0,0,0,0, 'Eye of Dominion - On link - Complete quest'); +DELETE FROM `smart_scripts` WHERE `entryorguid`= @MIRROR_NPC; +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 +(@MIRROR_NPC,0,0,1,54,0,100,1,0,0,0,0,85,@MIRROR_SPELL,2,0,0,0,0,1,0,0,0,0,0,0,0, 'On spawn - Cast Mirror Spell - Action Invoker'), +(@MIRROR_NPC,0,1,2,61,0,100,1,0,0,0,0,85,@WEAPON_COPY,2,0,0,0,0,1,0,0,0,0,0,0,0,'On Link - Copy Main Hand - Action Invoker'), +(@MIRROR_NPC,0,2,3,61,0,100,1,0,0,0,0,85,@COPY_OFF_HAND,2,0,0,0,0,1,0,0,0,0,0,0,0,'On Link - Copy Offhand - Action Invoker'), +(@MIRROR_NPC,0,3,0,61,0,100,1,0,0,0,0,11,@CONTROL_START,2,0,0,0,0,1,0,0,0,0,0,0,0,'On Spawn - Cast Start Control - Action Invoker'); + +DELETE FROM `smart_scripts` WHERE `entryorguid`=@WATCHER; +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 +(@WATCHER,0,0,0,54,0,100,1,0,0,0,0,11,@ETHREAL,2,0,0,0,0,1,0,0,0,0,0,0,0, 'On spawn - Cast Ethreal Aura - On self'); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 22 AND `SourceEntry` = @EYE; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(22,4,@EYE,1,0,9,0,13168,0,0,0,0,'','Execute SAI line only if player has quest active'); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=@MIRROR_SPELL; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,7,@MIRROR_SPELL,0,0,31,0,3,@MIRROR_NPC,0,0,0,'','Spell target Mirror npc'); diff --git a/sql/old/3.3.5a/2013_01_13_02_world_gluttonous_lurkers.sql b/sql/old/3.3.5a/2013_01_13_02_world_gluttonous_lurkers.sql new file mode 100644 index 00000000000..71f8efbe0c3 --- /dev/null +++ b/sql/old/3.3.5a/2013_01_13_02_world_gluttonous_lurkers.sql @@ -0,0 +1,36 @@ +-- Quest: Gluttonous Lurkers (12527) +-- Zul'drak Rat: Spellclick spells +DELETE FROM `npc_spellclick_spells` WHERE `npc_entry`=28202; +INSERT INTO `npc_spellclick_spells`(`npc_entry`,`spell_id`,`cast_flags`) VALUE +(28202,50926,1), +(28202,50927,2); + +-- Zul'drak Rat: SAI +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=28202; +DELETE FROM `smart_scripts` WHERE `entryorguid`=28202 AND `source_type`=0; +INSERT INTO `smart_scripts`(`entryorguid`,`event_type`,`event_param1`,`action_type`,`target_type`,`comment`) VALUES +(28202,8,50926,41,1,'Zuldrak Rat - On spell hit of Gluttonous Lurkers: Create ZulDrak Rat Cover - Despawn'); + +-- Zul'drak Rat spell: Script assignment +DELETE FROM `spell_script_names` WHERE `spell_id`=50894; +INSERT INTO `spell_script_names`(`spell_id`,`ScriptName`) VALUE +(50894,'spell_zuldrak_rat'); + +-- Zul'drak Rat spell: Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=17 AND `SourceEntry`=50894; +INSERT INTO `conditions`(`SourceTypeOrReferenceId`,`SourceEntry`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ErrorType`,`Comment`) VALUE +(17,50894,31,1,3,28145,12,'Zuldrak Rat - Target has to be Lurking Basilisk'); + +-- Lurking Basilisk: SAI +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=28145; +DELETE FROM `creature_ai_scripts` WHERE `creature_id`=28145; +DELETE FROM `smart_scripts` WHERE `entryorguid`=28145 AND `source_type`=0; +INSERT INTO `smart_scripts`(`entryorguid`,`event_type`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`target_type`,`comment`) VALUE +(28145,0,5000,5000,17000,27000,11,54470,2,'Lurking Basilisk - In Combat - Cast Venemous Bite'); + +-- Gorged Lurking Basilisk: SAI +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=28203; +DELETE FROM `creature_ai_scripts` WHERE `creature_id`=28203; +DELETE FROM `smart_scripts` WHERE `entryorguid`=28203 AND `source_type`=0; +INSERT INTO `smart_scripts`(`entryorguid`,`event_type`,`event_param1`,`action_type`,`target_type`,`comment`) VALUES +(28203,8,50918,41,1,'Gorged Lurking Basilisk - On Spell Hit of Create Basilisk Crystals Cover - Despawn'); diff --git a/sql/old/3.3.5a/2013_01_13_03_world_spell_script_names.sql b/sql/old/3.3.5a/2013_01_13_03_world_spell_script_names.sql new file mode 100644 index 00000000000..a776ea4a765 --- /dev/null +++ b/sql/old/3.3.5a/2013_01_13_03_world_spell_script_names.sql @@ -0,0 +1,4 @@ +-- Zul'drak Rat spell: Script assignment +DELETE FROM `spell_script_names` WHERE `spell_id`=50894; +INSERT INTO `spell_script_names`(`spell_id`,`ScriptName`) VALUE +(50894,'spell_q12527_zuldrak_rat'); diff --git a/sql/old/3.3.5a/2013_01_13_04_world_conditions.sql b/sql/old/3.3.5a/2013_01_13_04_world_conditions.sql new file mode 100644 index 00000000000..eaf45d5d696 --- /dev/null +++ b/sql/old/3.3.5a/2013_01_13_04_world_conditions.sql @@ -0,0 +1,9 @@ +SET @EYE := 193058; +SET @MIRROR_SPELL := 57528; +SET @MIRROR_NPC := 31005; + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 22 AND `SourceEntry` = @EYE; +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` IN (13,17) AND `SourceEntry`=@MIRROR_SPELL; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(22,1,@EYE,1,0,9,0,13168,0,0,0,0,'','Execute SAI line only if player has quest active'), +(17,0,@MIRROR_SPELL,0,0,31,0,3,@MIRROR_NPC,0,0,0,'','Spell target Mirror npc'); diff --git a/sql/updates/world/2013_01_14_00_world_version.sql b/sql/updates/world/2013_01_14_00_world_version.sql new file mode 100644 index 00000000000..0bc0a89a8a4 --- /dev/null +++ b/sql/updates/world/2013_01_14_00_world_version.sql @@ -0,0 +1 @@ +UPDATE `version` SET `db_version`='TDB 335.50', `cache_id`=50 LIMIT 1; diff --git a/src/server/game/Battlegrounds/Battleground.cpp b/src/server/game/Battlegrounds/Battleground.cpp index 1fe7e4c1035..e0a3943d70f 100644 --- a/src/server/game/Battlegrounds/Battleground.cpp +++ b/src/server/game/Battlegrounds/Battleground.cpp @@ -523,7 +523,7 @@ inline void Battleground::_ProcessJoin(uint32 diff) WorldPacket status; BattlegroundQueueTypeId bgQueueTypeId = sBattlegroundMgr->BGQueueTypeId(m_TypeID, GetArenaType()); uint32 queueSlot = player->GetBattlegroundQueueIndex(bgQueueTypeId); - sBattlegroundMgr->BuildBattlegroundStatusPacket(&status, this, queueSlot, STATUS_IN_PROGRESS, 0, GetStartTime(), GetArenaType(), player->GetBGTeam()); + sBattlegroundMgr->BuildBattlegroundStatusPacket(&status, this, queueSlot, STATUS_IN_PROGRESS, 0, GetStartTime(), GetArenaType(), GetPlayerTeam(itr->first)); player->GetSession()->SendPacket(&status); player->RemoveAurasDueToSpell(SPELL_ARENA_PREPARATION); @@ -919,7 +919,7 @@ void Battleground::EndBattleground(uint32 winner) player->GetSession()->SendPacket(&pvpLogData); WorldPacket data; - sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_IN_PROGRESS, TIME_TO_AUTOREMOVE, GetStartTime(), GetArenaType(), player->GetBGTeam()); + sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_IN_PROGRESS, TIME_TO_AUTOREMOVE, GetStartTime(), GetArenaType(), GetPlayerTeam(player->GetGUID())); player->GetSession()->SendPacket(&data); player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_BATTLEGROUND, 1); } @@ -1846,7 +1846,7 @@ void Battleground::PlayerAddedToBGCheckIfBGIsRunning(Player* player) sBattlegroundMgr->BuildPvpLogDataPacket(&data, this); player->GetSession()->SendPacket(&data); - sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_IN_PROGRESS, GetEndTime(), GetStartTime(), GetArenaType(), player->GetBGTeam()); + sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_IN_PROGRESS, GetEndTime(), GetStartTime(), GetArenaType(), GetPlayerTeam(player->GetGUID())); player->GetSession()->SendPacket(&data); } diff --git a/src/server/game/Battlegrounds/BattlegroundMgr.cpp b/src/server/game/Battlegrounds/BattlegroundMgr.cpp index 451fa70a8c9..24e69a151b5 100644 --- a/src/server/game/Battlegrounds/BattlegroundMgr.cpp +++ b/src/server/game/Battlegrounds/BattlegroundMgr.cpp @@ -162,7 +162,7 @@ void BattlegroundMgr::Update(uint32 diff) } } -void BattlegroundMgr::BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, uint8 QueueSlot, uint8 StatusID, uint32 Time1, uint32 Time2, uint8 arenatype, uint8 arenaFaction) +void BattlegroundMgr::BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, uint8 QueueSlot, uint8 StatusID, uint32 Time1, uint32 Time2, uint8 arenatype, uint32 arenaFaction) { // we can be in 2 queues in same time... @@ -188,26 +188,26 @@ void BattlegroundMgr::BuildBattlegroundStatusPacket(WorldPacket* data, Battlegro *data << uint32(bg->GetClientInstanceID()); // alliance/horde for BG and skirmish/rated for Arenas // following displays the minimap-icon 0 = faction icon 1 = arenaicon - *data << uint8(bg->isRated()); // 1 for rated match, 0 for bg or non rated match + *data << uint8(bg->isRated()); // 1 for rated match, 0 for bg or non rated match - *data << uint32(StatusID); // status + *data << uint32(StatusID); // status switch (StatusID) { - case STATUS_WAIT_QUEUE: // status_in_queue - *data << uint32(Time1); // average wait time, milliseconds - *data << uint32(Time2); // time in queue, updated every minute!, milliseconds + case STATUS_WAIT_QUEUE: // status_in_queue + *data << uint32(Time1); // average wait time, milliseconds + *data << uint32(Time2); // time in queue, updated every minute!, milliseconds break; - case STATUS_WAIT_JOIN: // status_invite - *data << uint32(bg->GetMapId()); // map id - *data << uint64(0); // 3.3.5, unknown - *data << uint32(Time1); // time to remove from queue, milliseconds + case STATUS_WAIT_JOIN: // status_invite + *data << uint32(bg->GetMapId()); // map id + *data << uint64(0); // 3.3.5, unknown + *data << uint32(Time1); // time to remove from queue, milliseconds break; - case STATUS_IN_PROGRESS: // status_in_progress - *data << uint32(bg->GetMapId()); // map id - *data << uint64(0); // 3.3.5, unknown - *data << uint32(Time1); // time to bg auto leave, 0 at bg start, 120000 after bg end, milliseconds - *data << uint32(Time2); // time from bg start, milliseconds - *data << uint8(arenaFaction); // arenafaction (0 for horde, 1 for alliance) + case STATUS_IN_PROGRESS: // status_in_progress + *data << uint32(bg->GetMapId()); // map id + *data << uint64(0); // 3.3.5, unknown + *data << uint32(Time1); // time to bg auto leave, 0 at bg start, 120000 after bg end, milliseconds + *data << uint32(Time2); // time from bg start, milliseconds + *data << uint8(arenaFaction == ALLIANCE ? 1 : 0); // arenafaction (0 for horde, 1 for alliance) break; default: sLog->outError(LOG_FILTER_BATTLEGROUND, "Unknown BG status!"); diff --git a/src/server/game/Battlegrounds/BattlegroundMgr.h b/src/server/game/Battlegrounds/BattlegroundMgr.h index ee96414c5f2..c66d9d64ab8 100644 --- a/src/server/game/Battlegrounds/BattlegroundMgr.h +++ b/src/server/game/Battlegrounds/BattlegroundMgr.h @@ -80,7 +80,7 @@ class BattlegroundMgr void BuildGroupJoinedBattlegroundPacket(WorldPacket* data, GroupJoinBattlegroundResult result); void BuildUpdateWorldStatePacket(WorldPacket* data, uint32 field, uint32 value); void BuildPvpLogDataPacket(WorldPacket* data, Battleground* bg); - void BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, uint8 queueSlot, uint8 statusId, uint32 time1, uint32 time2, uint8 arenaType, uint8 arenaFaction); + void BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, uint8 queueSlot, uint8 statusId, uint32 time1, uint32 time2, uint8 arenaType, uint32 arenaFaction); void BuildPlaySoundPacket(WorldPacket* data, uint32 soundId); void SendAreaSpiritHealerQueryOpcode(Player* player, Battleground* bg, uint64 guid); diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp index 076c68b5f76..b6452e76b5d 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp @@ -259,9 +259,10 @@ void BattlegroundEY::UpdatePointStatuses() this->EventTeamLostPoint(player, point); } + /// @workaround The original AreaTrigger is covered by a bigger one and not triggered on client side. if (point == FEL_REAVER && m_PointOwnedByTeam[point] == player->GetTeam()) if (m_FlagState && GetFlagPickerGUID() == player->GetGUID()) - if (player->GetDistance2d(2044.0f, 1730.0f) < 2.0f) + if (player->GetDistance(2044.0f, 1729.729f, 1190.03f) < 3.0f) EventPlayerCapturedFlag(player, BG_EY_OBJECT_FLAG_FEL_REAVER); } } diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 9d5d8e40b54..09be64813af 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -1563,7 +1563,6 @@ void LFGMgr::FinishDungeon(uint64 gguid, const uint32 dungeonId) LfgPlayerRewardData data = LfgPlayerRewardData(dungeon->Entry(), GetDungeon(gguid, false), done, quest); player->GetSession()->SendLfgPlayerReward(data); } - SetDungeon(gguid, 0); } // --------------------------------------------------------------------------// @@ -1632,6 +1631,18 @@ LfgState LFGMgr::GetState(uint64 guid) return state; } +LfgState LFGMgr::GetOldState(uint64 guid) +{ + LfgState state; + if (IS_GROUP_GUID(guid)) + state = GroupsStore[guid].GetOldState(); + else + state = PlayersStore[guid].GetOldState(); + + sLog->outTrace(LOG_FILTER_LFG, "LFGMgr::GetOldState: [" UI64FMTD "] = %u", guid, state); + return state; +} + uint32 LFGMgr::GetDungeon(uint64 guid, bool asId /*= true */) { uint32 dungeon = GroupsStore[guid].GetDungeon(asId); diff --git a/src/server/game/DungeonFinding/LFGMgr.h b/src/server/game/DungeonFinding/LFGMgr.h index 0a1b90ee04d..33626467486 100644 --- a/src/server/game/DungeonFinding/LFGMgr.h +++ b/src/server/game/DungeonFinding/LFGMgr.h @@ -347,6 +347,7 @@ class LFGMgr uint32 GetDungeon(uint64 guid, bool asId = true); uint32 GetDungeonMapId(uint64 guid); LfgState GetState(uint64 guid); + LfgState GetOldState(uint64 guid); uint8 GetKicksLeft(uint64 gguid); uint64 GetLeader(uint64 guid); bool IsLfgGroup(uint64 guid); diff --git a/src/server/game/DungeonFinding/LFGQueue.cpp b/src/server/game/DungeonFinding/LFGQueue.cpp index e75a1bdc4b3..f1d2dbb313d 100644 --- a/src/server/game/DungeonFinding/LFGQueue.cpp +++ b/src/server/game/DungeonFinding/LFGQueue.cpp @@ -483,7 +483,7 @@ LfgCompatibility LFGQueue::CheckCompatibility(LfgGuidList check) uint64 gguid = *check.begin(); proposal.queues = check; - proposal.isNew = numLfgGroups != 1 || !sLFGMgr->GetDungeon(gguid); + proposal.isNew = numLfgGroups != 1 || sLFGMgr->GetOldState(gguid) != LFG_STATE_DUNGEON; if (!sLFGMgr->AllQueued(check)) { diff --git a/src/server/game/Handlers/BattleGroundHandler.cpp b/src/server/game/Handlers/BattleGroundHandler.cpp index 5fb97a031f1..99056960893 100644 --- a/src/server/game/Handlers/BattleGroundHandler.cpp +++ b/src/server/game/Handlers/BattleGroundHandler.cpp @@ -453,7 +453,7 @@ void WorldSession::HandleBattleFieldPortOpcode(WorldPacket &recvData) _player->CleanupAfterTaxiFlight(); } - sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, bg, queueSlot, STATUS_IN_PROGRESS, 0, bg->GetStartTime(), bg->GetArenaType(), _player->GetBGTeam()); + sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, bg, queueSlot, STATUS_IN_PROGRESS, 0, bg->GetStartTime(), bg->GetArenaType(), bg->GetPlayerTeam(_player->GetGUID())); _player->GetSession()->SendPacket(&data); // remove battleground queue status from BGmgr bgQueue.RemovePlayer(_player->GetGUID(), false); @@ -541,7 +541,7 @@ void WorldSession::HandleBattlefieldStatusOpcode(WorldPacket & /*recvData*/) { // this line is checked, i only don't know if GetStartTime is changing itself after bg end! // send status in Battleground - sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, bg, i, STATUS_IN_PROGRESS, bg->GetEndTime(), bg->GetStartTime(), arenaType, _player->GetBGTeam()); + sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, bg, i, STATUS_IN_PROGRESS, bg->GetEndTime(), bg->GetStartTime(), arenaType, bg->GetPlayerTeam(_player->GetGUID())); SendPacket(&data); continue; } diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp index 97fe57c5434..96293c635d6 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp @@ -146,7 +146,7 @@ public: me->CastSpell(me, SPELL_DK_INITIATE_VISUAL, true); if (Player* starter = Unit::GetPlayer(*me, playerGUID)) - Talk(SAY_EVENT_ATTACK); + sCreatureTextMgr->SendChat(me, SAY_EVENT_ATTACK, 0, CHAT_MSG_ADDON, LANG_ADDON, TEXT_RANGE_NORMAL, 0, TEAM_OTHER, false, starter); phase = PHASE_TO_ATTACK; } diff --git a/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp b/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp index 87301f43745..22c4da74d44 100644 --- a/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp +++ b/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp @@ -399,35 +399,6 @@ class go_altar_of_archaedas : public GameObjectScript } }; -/* ScriptData -SDName: go_altar_of_the_keepers -SD%Complete: 100 -SDComment: Need 1 person to activate to open the altar. One by one the StoneKeepers will activate. After all four are dead than the door will open. -SDCategory: Uldaman -EndScriptData */ - -class go_altar_of_the_keepers : public GameObjectScript -{ - public: - - go_altar_of_the_keepers() - : GameObjectScript("go_altar_of_the_keepers") - { - } - - bool OnGossipHello(Player* player, GameObject* /*go*/) - { - InstanceScript* instance = player->GetInstanceScript(); - if (!instance) - return false; - - player->CastSpell (player, SPELL_BOSS_OBJECT_VISUAL, false); - - instance->SetData(DATA_STONE_KEEPERS, IN_PROGRESS); // activate the Stone Keepers - return false; - } -}; - //This is the actual function called only once durring InitScripts() //It must define all handled functions that are to be run in this script void AddSC_boss_archaedas() @@ -436,6 +407,5 @@ void AddSC_boss_archaedas() new mob_archaedas_minions(); new mob_stonekeepers(); new go_altar_of_archaedas(); - new go_altar_of_the_keepers(); } diff --git a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp index 138243a9ce2..ac26056c6e6 100644 --- a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp +++ b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp @@ -33,38 +33,38 @@ enum eSpells SPELL_AWAKEN_VAULT_WALKER = 10258, }; +enum Events +{ + EVENT_SUB_BOSS_AGGRO = 2228 +}; + class instance_uldaman : public InstanceMapScript { public: - instance_uldaman() - : InstanceMapScript("instance_uldaman", 70) - { - } + instance_uldaman() : InstanceMapScript("instance_uldaman", 70) {} struct instance_uldaman_InstanceMapScript : public InstanceScript { - instance_uldaman_InstanceMapScript(Map* map) : InstanceScript(map) - { - } + instance_uldaman_InstanceMapScript(Map* map) : InstanceScript(map) {} void Initialize() { memset(&m_auiEncounter, 0, sizeof(m_auiEncounter)); - uiArchaedasGUID = 0; - uiIronayaGUID = 0; - uiWhoWokeuiArchaedasGUID = 0; + archaedasGUID = 0; + ironayaGUID = 0; + whoWokeuiArchaedasGUID = 0; - uiAltarOfTheKeeperTempleDoor = 0; - uiArchaedasTempleDoor = 0; - uiAncientVaultDoor = 0; + altarOfTheKeeperTempleDoor = 0; + archaedasTempleDoor = 0; + ancientVaultDoor = 0; - uiIronayaSealDoor = 0; + ironayaSealDoor = 0; - uiKeystoneGUID = 0; + keystoneGUID = 0; - uiIronayaSealDoorTimer = 27000; //animation time - bKeystoneCheck = false; + ironayaSealDoorTimer = 27000; //animation time + keystoneCheck = false; } bool IsEncounterInProgress() const @@ -76,25 +76,25 @@ class instance_uldaman : public InstanceMapScript return false; } - uint64 uiArchaedasGUID; - uint64 uiIronayaGUID; - uint64 uiWhoWokeuiArchaedasGUID; + uint64 archaedasGUID; + uint64 ironayaGUID; + uint64 whoWokeuiArchaedasGUID; - uint64 uiAltarOfTheKeeperTempleDoor; - uint64 uiArchaedasTempleDoor; - uint64 uiAncientVaultDoor; - uint64 uiIronayaSealDoor; + uint64 altarOfTheKeeperTempleDoor; + uint64 archaedasTempleDoor; + uint64 ancientVaultDoor; + uint64 ironayaSealDoor; - uint64 uiKeystoneGUID; + uint64 keystoneGUID; - uint32 uiIronayaSealDoorTimer; - bool bKeystoneCheck; + uint32 ironayaSealDoorTimer; + bool keystoneCheck; - std::vector<uint64> vStoneKeeper; - std::vector<uint64> vAltarOfTheKeeperCount; - std::vector<uint64> vVaultWalker; - std::vector<uint64> vEarthenGuardian; - std::vector<uint64> vArchaedasWallMinions; // minions lined up around the wall + std::vector<uint64> stoneKeepers; + std::vector<uint64> altarOfTheKeeperCounts; + std::vector<uint64> vaultWalkers; + std::vector<uint64> earthenGuardians; + std::vector<uint64> archaedasWallMinions; // minions lined up around the wall uint32 m_auiEncounter[MAX_ENCOUNTER]; std::string str_data; @@ -104,14 +104,14 @@ class instance_uldaman : public InstanceMapScript switch (go->GetEntry()) { case GO_ALTAR_OF_THE_KEEPER_TEMPLE_DOOR: // lock the door - uiAltarOfTheKeeperTempleDoor = go->GetGUID(); + altarOfTheKeeperTempleDoor = go->GetGUID(); if (m_auiEncounter[0] == DONE) HandleGameObject(0, true, go); break; case GO_ARCHAEDAS_TEMPLE_DOOR: - uiArchaedasTempleDoor = go->GetGUID(); + archaedasTempleDoor = go->GetGUID(); if (m_auiEncounter[0] == DONE) HandleGameObject(0, true, go); @@ -120,21 +120,21 @@ class instance_uldaman : public InstanceMapScript case GO_ANCIENT_VAULT_DOOR: go->SetGoState(GO_STATE_READY); go->SetUInt32Value(GAMEOBJECT_FLAGS, 33); - uiAncientVaultDoor = go->GetGUID(); + ancientVaultDoor = go->GetGUID(); if (m_auiEncounter[1] == DONE) HandleGameObject(0, true, go); break; case GO_IRONAYA_SEAL_DOOR: - uiIronayaSealDoor = go->GetGUID(); + ironayaSealDoor = go->GetGUID(); if (m_auiEncounter[2] == DONE) HandleGameObject(0, true, go); break; case GO_KEYSTONE: - uiKeystoneGUID = go->GetGUID(); + keystoneGUID = go->GetGUID(); if (m_auiEncounter[2] == DONE) { @@ -174,28 +174,31 @@ class instance_uldaman : public InstanceMapScript void ActivateStoneKeepers() { - for (std::vector<uint64>::const_iterator i = vStoneKeeper.begin(); i != vStoneKeeper.end(); ++i) + if (GetData(DATA_ALTAR_DOORS) != DONE) { - Creature* target = instance->GetCreature(*i); - if (!target || !target->isAlive() || target->getFaction() == 14) - continue; - target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); - target->setFaction(14); - target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - return; // only want the first one we find + for (std::vector<uint64>::const_iterator i = stoneKeepers.begin(); i != stoneKeepers.end(); ++i) + { + Creature* target = instance->GetCreature(*i); + if (!target || !target->isAlive()) + continue; + target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); + target->setFaction(14); + target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + return; // only want the first one we find + } + // if we get this far than all four are dead so open the door + SetData(DATA_ALTAR_DOORS, DONE); + SetDoor(archaedasTempleDoor, true); //open next the door too } - // if we get this far than all four are dead so open the door - SetData(DATA_ALTAR_DOORS, DONE); - SetDoor(uiArchaedasTempleDoor, true); //open next the door too } void ActivateWallMinions() { - Creature* archaedas = instance->GetCreature(uiArchaedasGUID); + Creature* archaedas = instance->GetCreature(archaedasGUID); if (!archaedas) return; - for (std::vector<uint64>::const_iterator i = vArchaedasWallMinions.begin(); i != vArchaedasWallMinions.end(); ++i) + for (std::vector<uint64>::const_iterator i = archaedasWallMinions.begin(); i != archaedasWallMinions.end(); ++i) { Creature* target = instance->GetCreature(*i); if (!target || !target->isAlive() || target->getFaction() == 14) @@ -213,7 +216,7 @@ class instance_uldaman : public InstanceMapScript void DeActivateMinions() { // first despawn any aggroed wall minions - for (std::vector<uint64>::const_iterator i = vArchaedasWallMinions.begin(); i != vArchaedasWallMinions.end(); ++i) + for (std::vector<uint64>::const_iterator i = archaedasWallMinions.begin(); i != archaedasWallMinions.end(); ++i) { Creature* target = instance->GetCreature(*i); if (!target || target->isDead() || target->getFaction() != 14) @@ -223,7 +226,7 @@ class instance_uldaman : public InstanceMapScript } // Vault Walkers - for (std::vector<uint64>::const_iterator i = vVaultWalker.begin(); i != vVaultWalker.end(); ++i) + for (std::vector<uint64>::const_iterator i = vaultWalkers.begin(); i != vaultWalkers.end(); ++i) { Creature* target = instance->GetCreature(*i); if (!target || target->isDead() || target->getFaction() != 14) @@ -233,7 +236,7 @@ class instance_uldaman : public InstanceMapScript } // Earthen Guardians - for (std::vector<uint64>::const_iterator i = vEarthenGuardian.begin(); i != vEarthenGuardian.end(); ++i) + for (std::vector<uint64>::const_iterator i = earthenGuardians.begin(); i != earthenGuardians.end(); ++i) { Creature* target = instance->GetCreature(*i); if (!target || target->isDead() || target->getFaction() != 14) @@ -245,20 +248,20 @@ class instance_uldaman : public InstanceMapScript void ActivateArchaedas(uint64 target) { - Creature* archaedas = instance->GetCreature(uiArchaedasGUID); + Creature* archaedas = instance->GetCreature(archaedasGUID); if (!archaedas) return; if (Unit::GetUnit(*archaedas, target)) { archaedas->CastSpell(archaedas, SPELL_ARCHAEDAS_AWAKEN, false); - uiWhoWokeuiArchaedasGUID = target; + whoWokeuiArchaedasGUID = target; } } void ActivateIronaya() { - Creature* ironaya = instance->GetCreature(uiIronayaGUID); + Creature* ironaya = instance->GetCreature(ironayaGUID); if (!ironaya) return; @@ -270,7 +273,7 @@ class instance_uldaman : public InstanceMapScript void RespawnMinions() { // first respawn any aggroed wall minions - for (std::vector<uint64>::const_iterator i = vArchaedasWallMinions.begin(); i != vArchaedasWallMinions.end(); ++i) + for (std::vector<uint64>::const_iterator i = archaedasWallMinions.begin(); i != archaedasWallMinions.end(); ++i) { Creature* target = instance->GetCreature(*i); if (target && target->isDead()) @@ -282,7 +285,7 @@ class instance_uldaman : public InstanceMapScript } // Vault Walkers - for (std::vector<uint64>::const_iterator i = vVaultWalker.begin(); i != vVaultWalker.end(); ++i) + for (std::vector<uint64>::const_iterator i = vaultWalkers.begin(); i != vaultWalkers.end(); ++i) { Creature* target = instance->GetCreature(*i); if (target && target->isDead()) @@ -294,7 +297,7 @@ class instance_uldaman : public InstanceMapScript } // Earthen Guardians - for (std::vector<uint64>::const_iterator i = vEarthenGuardian.begin(); i != vEarthenGuardian.end(); ++i) + for (std::vector<uint64>::const_iterator i = earthenGuardians.begin(); i != earthenGuardians.end(); ++i) { Creature* target = instance->GetCreature(*i); if (target && target->isDead()) @@ -307,21 +310,21 @@ class instance_uldaman : public InstanceMapScript } void Update(uint32 diff) { - if (!bKeystoneCheck) + if (!keystoneCheck) return; - if (uiIronayaSealDoorTimer <= diff) + if (ironayaSealDoorTimer <= diff) { ActivateIronaya(); - SetDoor(uiIronayaSealDoor, true); - BlockGO(uiKeystoneGUID); + SetDoor(ironayaSealDoor, true); + BlockGO(keystoneGUID); SetData(DATA_IRONAYA_DOOR, DONE); //save state - bKeystoneCheck = false; + keystoneCheck = false; } else - uiIronayaSealDoorTimer -= diff; + ironayaSealDoorTimer -= diff; } void SetData(uint32 type, uint32 data) @@ -331,15 +334,15 @@ class instance_uldaman : public InstanceMapScript case DATA_ALTAR_DOORS: m_auiEncounter[0] = data; if (data == DONE) - SetDoor(uiAltarOfTheKeeperTempleDoor, true); + SetDoor(altarOfTheKeeperTempleDoor, true); break; case DATA_ANCIENT_DOOR: m_auiEncounter[1] = data; if (data == DONE) //archeadas defeat { - SetDoor(uiArchaedasTempleDoor, true); //re open enter door - SetDoor(uiAncientVaultDoor, true); + SetDoor(archaedasTempleDoor, true); //re open enter door + SetDoor(ancientVaultDoor, true); } break; @@ -356,7 +359,7 @@ class instance_uldaman : public InstanceMapScript { case NOT_STARTED: if (m_auiEncounter[0] == DONE) //if players opened the doors - SetDoor(uiArchaedasTempleDoor, true); + SetDoor(archaedasTempleDoor, true); RespawnMinions(); break; @@ -372,7 +375,7 @@ class instance_uldaman : public InstanceMapScript break; case DATA_IRONAYA_SEAL: - bKeystoneCheck = true; + keystoneCheck = true; break; } @@ -396,7 +399,7 @@ class instance_uldaman : public InstanceMapScript if (type == 0) { ActivateArchaedas (data); - SetDoor(uiArchaedasTempleDoor, false); //close when event is started + SetDoor(archaedasTempleDoor, false); //close when event is started } } @@ -433,34 +436,34 @@ class instance_uldaman : public InstanceMapScript { case 4857: // Stone Keeper SetFrozenState (creature); - vStoneKeeper.push_back(creature->GetGUID()); + stoneKeepers.push_back(creature->GetGUID()); break; case 7309: // Earthen Custodian - vArchaedasWallMinions.push_back(creature->GetGUID()); + archaedasWallMinions.push_back(creature->GetGUID()); break; case 7077: // Earthen Hallshaper - vArchaedasWallMinions.push_back(creature->GetGUID()); + archaedasWallMinions.push_back(creature->GetGUID()); break; case 7076: // Earthen Guardian - vEarthenGuardian.push_back(creature->GetGUID()); + earthenGuardians.push_back(creature->GetGUID()); break; case 7228: // Ironaya - uiIronayaGUID = creature->GetGUID(); + ironayaGUID = creature->GetGUID(); if (m_auiEncounter[2] != DONE) SetFrozenState (creature); break; case 10120: // Vault Walker - vVaultWalker.push_back(creature->GetGUID()); + vaultWalkers.push_back(creature->GetGUID()); break; case 2748: // Archaedas - uiArchaedasGUID = creature->GetGUID(); + archaedasGUID = creature->GetGUID(); break; } @@ -471,25 +474,37 @@ class instance_uldaman : public InstanceMapScript switch (identifier) { case 0: - return uiWhoWokeuiArchaedasGUID; + return whoWokeuiArchaedasGUID; case 1: case 2: case 3: case 4: - return vVaultWalker.at(identifier - 1); + return vaultWalkers.at(identifier - 1); case 5: case 6: case 7: case 8: case 9: case 10: - return vEarthenGuardian.at(identifier - 5); + return earthenGuardians.at(identifier - 5); default: break; } return 0; } // end GetData64 + + void ProcessEvent(WorldObject* /*gameObject*/, uint32 eventId) + { + switch (eventId) + { + case EVENT_SUB_BOSS_AGGRO: + SetData(DATA_STONE_KEEPERS, IN_PROGRESS); // activate the Stone Keepers + break; + default: + break; + } + } }; InstanceScript* GetInstanceScript(InstanceMap* map) const diff --git a/src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp b/src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp index 935e54eae0c..577423adb39 100644 --- a/src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp +++ b/src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp @@ -45,32 +45,37 @@ EndScriptData */ #define YELL_BERSERK "Whatch you be doing? Pissin' yourselves..." #define SOUND_BERSERK 12025 -#define SPELL_DUAL_WIELD 29651 -#define SPELL_SABER_LASH 43267 -#define SPELL_FRENZY 43139 -#define SPELL_FLAMESHOCK 43303 -#define SPELL_EARTHSHOCK 43305 -#define SPELL_TRANSFORM_SPLIT 43142 -#define SPELL_TRANSFORM_SPLIT2 43573 -#define SPELL_TRANSFORM_MERGE 43271 -#define SPELL_SUMMON_LYNX 43143 -#define SPELL_SUMMON_TOTEM 43302 -#define SPELL_BERSERK 45078 - -#define MOB_SPIRIT_LYNX 24143 -#define SPELL_LYNX_FRENZY 43290 -#define SPELL_SHRED_ARMOR 43243 - -#define MOB_TOTEM 24224 +enum Spells +{ + SPELL_DUAL_WIELD = 29651, + SPELL_SABER_LASH = 43267, + SPELL_FRENZY = 43139, + SPELL_FLAMESHOCK = 43303, + SPELL_EARTHSHOCK = 43305, + SPELL_TRANSFORM_SPLIT = 43142, + SPELL_TRANSFORM_SPLIT2 = 43573, + SPELL_TRANSFORM_MERGE = 43271, + SPELL_SUMMON_LYNX = 43143, + SPELL_SUMMON_TOTEM = 43302, + SPELL_BERSERK = 45078, + SPELL_LYNX_FRENZY = 43290, // Used by Spirit Lynx + SPELL_SHRED_ARMOR = 43243 // Used by Spirit Lynx +}; + +enum Hal_CreatureIds +{ + NPC_SPIRIT_LYNX = 24143, + NPC_TOTEM = 24224 +}; enum PhaseHalazzi { - PHASE_NONE = 0, - PHASE_LYNX = 1, - PHASE_SPLIT = 2, - PHASE_HUMAN = 3, - PHASE_MERGE = 4, - PHASE_ENRAGE = 5 + PHASE_NONE = 0, + PHASE_LYNX = 1, + PHASE_SPLIT = 2, + PHASE_HUMAN = 3, + PHASE_MERGE = 4, + PHASE_ENRAGE = 5 }; class boss_halazzi : public CreatureScript @@ -134,7 +139,7 @@ class boss_halazzi : public CreatureScript void JustSummoned(Creature* summon) { summon->AI()->AttackStart(me->getVictim()); - if (summon->GetEntry() == MOB_SPIRIT_LYNX) + if (summon->GetEntry() == NPC_SPIRIT_LYNX) LynxGUID = summon->GetGUID(); } @@ -183,7 +188,7 @@ class boss_halazzi : public CreatureScript break; case PHASE_HUMAN: //DoCast(me, SPELL_SUMMON_LYNX, true); - DoSpawnCreature(MOB_SPIRIT_LYNX, 5, 5, 0, 0, TEMPSUMMON_CORPSE_DESPAWN, 0); + DoSpawnCreature(NPC_SPIRIT_LYNX, 5, 5, 0, 0, TEMPSUMMON_CORPSE_DESPAWN, 0); me->SetMaxHealth(400000); me->SetHealth(400000); ShockTimer = 10000; @@ -413,3 +418,4 @@ void AddSC_boss_halazzi() new mob_halazzi_lynx(); } + diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp index 54a5f5c706c..593ee05d951 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp @@ -27,14 +27,14 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum eYells +enum Says { SAY_AGGRO = 0, SAY_FEAST_PANTHER = 1, - SAY_DEATH = 2, + SAY_DEATH = 2 }; -enum eSpells +enum Spells { SPELL_SHADOWWORDPAIN = 23952, SPELL_GOUGE = 24698, @@ -51,21 +51,11 @@ enum eSpells class boss_arlokk : public CreatureScript { - public: - - boss_arlokk() - : CreatureScript("boss_arlokk") - { - } + public: boss_arlokk() : CreatureScript("boss_arlokk") {} - struct boss_arlokkAI : public ScriptedAI + struct boss_arlokkAI : public BossAI { - boss_arlokkAI(Creature* creature) : ScriptedAI(creature) - { - instance = creature->GetInstanceScript(); - } - - InstanceScript* instance; + boss_arlokkAI(Creature* creature) : BossAI(creature, DATA_ARLOKK) {} uint32 m_uiShadowWordPain_Timer; uint32 m_uiGouge_Timer; @@ -104,8 +94,17 @@ class boss_arlokk : public CreatureScript me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); } + void JustDied(Unit* /*killer*/) + { + _JustDied(); + Talk(SAY_DEATH); + me->SetDisplayId(MODEL_ID_NORMAL); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + } + void EnterCombat(Unit* /*who*/) { + _EnterCombat(); Talk(SAY_AGGRO); } @@ -118,17 +117,6 @@ class boss_arlokk : public CreatureScript me->DespawnOrUnsummon(); } - void JustDied(Unit* /*killer*/) - { - Talk(SAY_DEATH); - - me->SetDisplayId(MODEL_ID_NORMAL); - me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - - if (instance) - instance->SetData(DATA_ARLOKK, DONE); - } - void DoSummonPhanters() { if (MarkedTargetGUID) diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp index e7d54aecb31..7943e51a7cd 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp @@ -25,62 +25,73 @@ EndScriptData */ #include "ScriptMgr.h" #include "ScriptedCreature.h" +#include "zulgurub.h" -#define SPELL_FROSTBREATH 16099 -#define SPELL_MASSIVEGEYSER 22421 //Not working. Cause its a summon... -#define SPELL_SLAM 24326 +enum Spells +{ + SPELL_FROSTBREATH = 16099, + SPELL_MASSIVEGEYSER = 22421, // Not working. (summon) + SPELL_SLAM = 24326 +}; + +enum Events +{ + EVENT_FROSTBREATH = 0, + EVENT_MASSIVEGEYSER = 1, + EVENT_SLAM = 2 +}; -class boss_gahzranka : public CreatureScript +class boss_gahzranka : public CreatureScript // gahzranka { - public: - boss_gahzranka() : CreatureScript("boss_gahzranka") { } + public: boss_gahzranka() : CreatureScript("boss_gahzranka") {} - struct boss_gahzrankaAI : public ScriptedAI + struct boss_gahzrankaAI : public BossAI { - boss_gahzrankaAI(Creature* creature) : ScriptedAI(creature) { } - uint32 Frostbreath_Timer; - uint32 MassiveGeyser_Timer; - uint32 Slam_Timer; + boss_gahzrankaAI(Creature* creature) : BossAI(creature, DATA_GAHZRANKA) {} - void Reset() + void JustDied(Unit* /*killer*/) { - Frostbreath_Timer = 8000; - MassiveGeyser_Timer = 25000; - Slam_Timer = 17000; + _JustDied(); } void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + events.ScheduleEvent(EVENT_FROSTBREATH, 8000); + events.ScheduleEvent(EVENT_MASSIVEGEYSER, 25000); + events.ScheduleEvent(EVENT_SLAM, 17000); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { - //Return since we have no target if (!UpdateVictim()) return; - //Frostbreath_Timer - if (Frostbreath_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_FROSTBREATH); - Frostbreath_Timer = urand(7000, 11000); - } else Frostbreath_Timer -= diff; - - //MassiveGeyser_Timer - if (MassiveGeyser_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_MASSIVEGEYSER); - DoResetThreat(); + events.Update(diff); - MassiveGeyser_Timer = urand(22000, 32000); - } else MassiveGeyser_Timer -= diff; + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - //Slam_Timer - if (Slam_Timer <= diff) + while (uint32 eventId = events.ExecuteEvent()) { - DoCast(me->getVictim(), SPELL_SLAM); - Slam_Timer = urand(12000, 20000); - } else Slam_Timer -= diff; + switch (eventId) + { + case EVENT_FROSTBREATH: + DoCastVictim(SPELL_FROSTBREATH, true); + events.ScheduleEvent(EVENT_FROSTBREATH, urand(7000, 11000)); + break; + case EVENT_MASSIVEGEYSER: + DoCastVictim(SPELL_MASSIVEGEYSER, true); + events.ScheduleEvent(EVENT_MASSIVEGEYSER, urand(22000, 32000)); + break; + case EVENT_SLAM: + DoCastVictim(SPELL_SLAM, true); + events.ScheduleEvent(EVENT_SLAM, urand(12000, 20000)); + break; + default: + break; + } + } DoMeleeAttackIfReady(); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp index 4ccdbceb466..4b7bee5abf1 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp @@ -27,60 +27,68 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -#define SPELL_AVARTAR 24646 //The Enrage Spell -#define SPELL_GROUNDTREMOR 6524 +enum Spells +{ + SPELL_AVATAR = 24646, // Enrage Spell + SPELL_GROUND_TREMOR = 6524 +}; + +enum Events +{ + EVENT_AVATAR = 0, + EVENT_GROUND_TREMOR = 1 +}; -class boss_grilek : public CreatureScript +class boss_grilek : public CreatureScript // grilek { - public: - boss_grilek() : CreatureScript("boss_grilek") { } + public: boss_grilek() : CreatureScript("boss_grilek") {} - struct boss_grilekAI : public ScriptedAI + struct boss_grilekAI : public BossAI { - boss_grilekAI(Creature* creature) : ScriptedAI(creature) { } - - uint32 Avartar_Timer; - uint32 GroundTremor_Timer; + boss_grilekAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} - void Reset() + void JustDied(Unit* /*killer*/) { - Avartar_Timer = urand(15000, 25000); - GroundTremor_Timer = urand(8000, 16000); + _JustDied(); } void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + events.ScheduleEvent(EVENT_AVATAR, urand(15000, 25000)); + events.ScheduleEvent(EVENT_GROUND_TREMOR, urand(15000, 25000)); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { - //Return since we have no target if (!UpdateVictim()) return; - //Avartar_Timer - if (Avartar_Timer <= diff) - { - - DoCast(me, SPELL_AVARTAR); - Unit* target = NULL; - - target = SelectTarget(SELECT_TARGET_RANDOM, 1); + events.Update(diff); - if (DoGetThreat(me->getVictim())) - DoModifyThreatPercent(me->getVictim(), -50); - if (target) - AttackStart(target); - - Avartar_Timer = urand(25000, 35000); - } else Avartar_Timer -= diff; + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - //GroundTremor_Timer - if (GroundTremor_Timer <= diff) + while (uint32 eventId = events.ExecuteEvent()) { - DoCast(me->getVictim(), SPELL_GROUNDTREMOR); - GroundTremor_Timer = urand(12000, 16000); - } else GroundTremor_Timer -= diff; + switch (eventId) + { + case EVENT_AVATAR: + DoCast(me, SPELL_AVATAR); + if (DoGetThreat(me->getVictim())) + DoModifyThreatPercent(me->getVictim(), -50); + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1)) + AttackStart(target); + events.ScheduleEvent(EVENT_AVATAR, urand(25000, 35000)); + break; + case EVENT_GROUND_TREMOR: + DoCastVictim(SPELL_GROUND_TREMOR, true); + events.ScheduleEvent(EVENT_GROUND_TREMOR, urand(12000, 16000)); + break; + default: + break; + } + } DoMeleeAttackIfReady(); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp index 781b68bfcb0..87a9c02e3ed 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp @@ -27,19 +27,21 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum Hakkar +enum Says { SAY_AGGRO = 0, SAY_FLEEING = 1, SAY_MINION_DESTROY = 2, //where does it belong? - SAY_PROTECT_ALTAR = 3, //where does it belong? + SAY_PROTECT_ALTAR = 3 //where does it belong? +}; +enum Spells +{ SPELL_BLOODSIPHON = 24322, SPELL_CORRUPTEDBLOOD = 24328, SPELL_CAUSEINSANITY = 24327, //Not working disabled. SPELL_WILLOFHAKKAR = 24178, SPELL_ENRAGE = 24318, - // The Aspects of all High Priests SPELL_ASPECT_OF_JEKLIK = 24687, SPELL_ASPECT_OF_VENOXIS = 24688, @@ -48,23 +50,13 @@ enum Hakkar SPELL_ASPECT_OF_ARLOKK = 24690 }; -class boss_hakkar : public CreatureScript +class boss_hakkar : public CreatureScript // hakkar { - public: - - boss_hakkar() - : CreatureScript("boss_hakkar") - { - } + public: boss_hakkar() : CreatureScript("boss_hakkar") {} - struct boss_hakkarAI : public ScriptedAI + struct boss_hakkarAI : public BossAI { - boss_hakkarAI(Creature* creature) : ScriptedAI(creature) - { - instance = creature->GetInstanceScript(); - } - - InstanceScript* instance; + boss_hakkarAI(Creature* creature) : BossAI(creature, DATA_HAKKAR) {} uint32 BloodSiphon_Timer; uint32 CorruptedBlood_Timer; @@ -109,8 +101,14 @@ class boss_hakkar : public CreatureScript Enraged = false; } + void JustDied(Unit* /*killer*/) + { + _JustDied(); + } + void EnterCombat(Unit* /*who*/) { + _EnterCombat(); Talk(SAY_AGGRO); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp index bbdc2905874..cd55d648196 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp @@ -27,75 +27,80 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -#define SPELL_MANABURN 26046 -#define SPELL_SLEEP 24664 +enum Spells +{ + SPELL_MANABURN = 26046, + SPELL_SLEEP = 24664 +}; -class boss_hazzarah : public CreatureScript +enum Events { - public: + EVENT_MANABURN = 0, + EVENT_SLEEP = 1, + EVENT_ILLUSIONS = 2 +}; - boss_hazzarah() - : CreatureScript("boss_hazzarah") - { - } +class boss_hazzarah : public CreatureScript +{ + public: boss_hazzarah() : CreatureScript("boss_hazzarah") {} - struct boss_hazzarahAI : public ScriptedAI + struct boss_hazzarahAI : public BossAI { - boss_hazzarahAI(Creature* creature) : ScriptedAI(creature) {} - - uint32 ManaBurn_Timer; - uint32 Sleep_Timer; - uint32 Illusions_Timer; + boss_hazzarahAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} - void Reset() + void JustDied(Unit* /*killer*/) { - ManaBurn_Timer = urand(4000, 10000); - Sleep_Timer = urand(10000, 18000); - Illusions_Timer = urand(10000, 18000); + _JustDied(); } void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + events.ScheduleEvent(EVENT_MANABURN, urand(4000, 10000)); + events.ScheduleEvent(EVENT_SLEEP, urand(10000, 18000)); + events.ScheduleEvent(EVENT_ILLUSIONS, urand(10000, 18000)); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - //ManaBurn_Timer - if (ManaBurn_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_MANABURN); - ManaBurn_Timer = urand(8000, 16000); - } else ManaBurn_Timer -= diff; + events.Update(diff); - //Sleep_Timer - if (Sleep_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_SLEEP); - Sleep_Timer = urand(12000, 20000); - } else Sleep_Timer -= diff; + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - //Illusions_Timer - if (Illusions_Timer <= diff) + while (uint32 eventId = events.ExecuteEvent()) { - //We will summon 3 illusions that will spawn on a random gamer and attack this gamer - //We will just use one model for the beginning - Unit* target = NULL; - for (uint8 i = 0; i < 3; ++i) + switch (eventId) { - target = SelectTarget(SELECT_TARGET_RANDOM, 0); - if (!target) - return; - - Creature* Illusion = me->SummonCreature(15163, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 30000); - if (Illusion) - Illusion->AI()->AttackStart(target); + case EVENT_MANABURN: + DoCastVictim(SPELL_MANABURN, true); + events.ScheduleEvent(EVENT_MANABURN, urand(8000, 16000)); + break; + case EVENT_SLEEP: + DoCastVictim(SPELL_SLEEP, true); + events.ScheduleEvent(EVENT_SLEEP, urand(12000, 20000)); + break; + case EVENT_ILLUSIONS: + // We will summon 3 illusions that will spawn on a random gamer and attack this gamer + // We will just use one model for the beginning + for (uint8 i = 0; i < 3; ++i) + { + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) + { + Creature* Illusion = me->SummonCreature(NPC_NIGHTMARE_ILLUSION, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 30000); + if (Illusion) + Illusion->AI()->AttackStart(target); + } + } + events.ScheduleEvent(EVENT_ILLUSIONS, urand(15000, 25000)); + break; + default: + break; } - - Illusions_Timer = urand(15000, 25000); - } else Illusions_Timer -= diff; + } DoMeleeAttackIfReady(); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp index 10431ec84bd..4d27fd99769 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp @@ -27,42 +27,34 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum Jeklik +enum Says { SAY_AGGRO = 0, SAY_RAIN_FIRE = 1, - SAY_DEATH = 2, + SAY_DEATH = 2 +}; +enum Spells +{ SPELL_CHARGE = 22911, SPELL_SONICBURST = 23918, SPELL_SCREECH = 6605, SPELL_SHADOW_WORD_PAIN = 23952, SPELL_MIND_FLAY = 23953, - SPELL_CHAIN_MIND_FLAY = 26044, //Right ID unknown. So disabled + SPELL_CHAIN_MIND_FLAY = 26044, // Right ID unknown. So disabled SPELL_GREATERHEAL = 23954, SPELL_BAT_FORM = 23966, - // Batriders Spell - SPELL_BOMB = 40332 //Wrong ID but Magmadars bomb is not working... + SPELL_BOMB = 40332 // Wrong ID but Magmadars bomb is not working... }; -class boss_jeklik : public CreatureScript +class boss_jeklik : public CreatureScript //jeklik { - public: - - boss_jeklik() - : CreatureScript("boss_jeklik") - { - } + public: boss_jeklik() : CreatureScript("boss_jeklik") {} - struct boss_jeklikAI : public ScriptedAI + struct boss_jeklikAI : public BossAI { - boss_jeklikAI(Creature* creature) : ScriptedAI(creature) - { - instance = creature->GetInstanceScript(); - } - - InstanceScript* instance; + boss_jeklikAI(Creature* creature) : BossAI(creature, DATA_JEKLIK) {} uint32 Charge_Timer; uint32 SonicBurst_Timer; @@ -91,18 +83,17 @@ class boss_jeklik : public CreatureScript PhaseTwo = false; } - void EnterCombat(Unit* /*who*/) - { - Talk(SAY_AGGRO); - DoCast(me, SPELL_BAT_FORM); - } - void JustDied(Unit* /*killer*/) { + _JustDied(); Talk(SAY_DEATH); + } - if (instance) - instance->SetData(DATA_JEKLIK, DONE); + void EnterCombat(Unit* /*who*/) + { + _EnterCombat(); + Talk(SAY_AGGRO); + DoCast(me, SPELL_BAT_FORM); } void UpdateAI(const uint32 diff) diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp index 7c4c9626f9a..dd1edcb3529 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp @@ -27,147 +27,148 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum Jindo +enum Say { - SAY_AGGRO = 1, + SAY_AGGRO = 1 +}; +enum Spells +{ SPELL_BRAINWASHTOTEM = 24262, - SPELL_POWERFULLHEALINGWARD = 24309, //We will not use this spell. We will summon a totem by script cause the spell totems will not cast. + SPELL_POWERFULLHEALINGWARD = 24309, // HACKED Totem summoned by script because the spell totems will not cast. SPELL_HEX = 24053, SPELL_DELUSIONSOFJINDO = 24306, - SPELL_SHADEOFJINDO = 24308, //We will not use this spell. We will summon a shade by script. - + SPELL_SHADEOFJINDO = 24308, // HACKED //Healing Ward Spell - SPELL_HEAL = 38588, //Totems are not working right. Right heal spell ID is 24311 but this spell is not casting... - + SPELL_HEAL = 38588, // HACKED Totems are not working right. Right heal spell ID is 24311 but this spell is not casting... //Shade of Jindo Spell SPELL_SHADOWSHOCK = 19460, SPELL_INVISIBLE = 24699 }; -class boss_jindo : public CreatureScript +enum Events { - public: + EVENT_BRAINWASHTOTEM = 0, + EVENT_POWERFULLHEALINGWARD = 1, + EVENT_HEX = 2, + EVENT_DELUSIONSOFJINDO = 3, + EVENT_TELEPORT = 4 +}; - boss_jindo() - : CreatureScript("boss_jindo") - { - } +enum CreatureId +{ + NPC_SHADE_OF_JINDO = 14986, + NPC_SACRIFICED_TROLL = 14826 +}; - struct boss_jindoAI : public ScriptedAI - { - boss_jindoAI(Creature* creature) : ScriptedAI(creature) {} +Position const TeleportLoc = {-11583.7783f, -1249.4278f, 77.5471f, 4.745f}; - uint32 BrainWashTotem_Timer; - uint32 HealingWard_Timer; - uint32 Hex_Timer; - uint32 Delusions_Timer; - uint32 Teleport_Timer; +class boss_jindo : public CreatureScript +{ + public: boss_jindo() : CreatureScript("boss_jindo") {} - void Reset() + struct boss_jindoAI : public BossAI + { + boss_jindoAI(Creature* creature) : BossAI(creature, DATA_JINDO) {} + + void JustDied(Unit* /*killer*/) { - BrainWashTotem_Timer = 20000; - HealingWard_Timer = 16000; - Hex_Timer = 8000; - Delusions_Timer = 10000; - Teleport_Timer = 5000; + _JustDied(); } void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + events.ScheduleEvent(EVENT_BRAINWASHTOTEM, 20000); + events.ScheduleEvent(EVENT_POWERFULLHEALINGWARD, 16000); + events.ScheduleEvent(EVENT_HEX, 8000); + events.ScheduleEvent(EVENT_DELUSIONSOFJINDO, 10000); + events.ScheduleEvent(EVENT_TELEPORT, 5000); Talk(SAY_AGGRO); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - //BrainWashTotem_Timer - if (BrainWashTotem_Timer <= diff) - { - DoCast(me, SPELL_BRAINWASHTOTEM); - BrainWashTotem_Timer = urand(18000, 26000); - } else BrainWashTotem_Timer -= diff; - - //HealingWard_Timer - if (HealingWard_Timer <= diff) - { - //DoCast(me, SPELL_POWERFULLHEALINGWARD); - me->SummonCreature(14987, me->GetPositionX()+3, me->GetPositionY()-2, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 30000); - HealingWard_Timer = urand(14000, 20000); - } else HealingWard_Timer -= diff; - - //Hex_Timer - if (Hex_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_HEX); - - if (DoGetThreat(me->getVictim())) - DoModifyThreatPercent(me->getVictim(), -80); - - Hex_Timer = urand(12000, 20000); - } else Hex_Timer -= diff; + events.Update(diff); - //Casting the delusion curse with a shade. So shade will attack the same target with the curse. - if (Delusions_Timer <= diff) - { - if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) - { - DoCast(target, SPELL_DELUSIONSOFJINDO); - - Creature* Shade = me->SummonCreature(14986, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Shade) - Shade->AI()->AttackStart(target); - } - - Delusions_Timer = urand(4000, 12000); - } else Delusions_Timer -= diff; + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - //Teleporting a random gamer and spawning 9 skeletons that will attack this gamer - if (Teleport_Timer <= diff) + while (uint32 eventId = events.ExecuteEvent()) { - Unit* target = NULL; - target = SelectTarget(SELECT_TARGET_RANDOM, 0); - if (target && target->GetTypeId() == TYPEID_PLAYER) + switch (eventId) { - DoTeleportPlayer(target, -11583.7783f, -1249.4278f, 77.5471f, 4.745f); - - if (DoGetThreat(me->getVictim())) - DoModifyThreatPercent(target, -100); - - Creature* Skeletons; - Skeletons = me->SummonCreature(14826, target->GetPositionX()+2, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX()-2, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX()+4, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX()-4, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX(), target->GetPositionY()+2, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX(), target->GetPositionY()-2, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX(), target->GetPositionY()+4, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX(), target->GetPositionY()-4, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); - Skeletons = me->SummonCreature(14826, target->GetPositionX()+3, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Skeletons) - Skeletons->AI()->AttackStart(target); + case EVENT_BRAINWASHTOTEM: + DoCast(me, SPELL_BRAINWASHTOTEM); + events.ScheduleEvent(EVENT_BRAINWASHTOTEM, urand(18000, 26000)); + break; + case EVENT_POWERFULLHEALINGWARD: // HACK + //DoCast(me, SPELL_POWERFULLHEALINGWARD); + me->SummonCreature(14987, me->GetPositionX()+3, me->GetPositionY()-2, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 30000); + events.ScheduleEvent(EVENT_POWERFULLHEALINGWARD, urand(14000, 20000)); + break; + case EVENT_HEX: + DoCastVictim(SPELL_HEX, true); + if (DoGetThreat(me->getVictim())) + DoModifyThreatPercent(me->getVictim(), -80); + events.ScheduleEvent(EVENT_HEX, urand(12000, 20000)); + break; + case EVENT_DELUSIONSOFJINDO: // HACK + // Casting the delusion curse with a shade so shade will attack the same target with the curse. + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) + { + DoCast(target, SPELL_DELUSIONSOFJINDO); + Creature* Shade = me->SummonCreature(NPC_SHADE_OF_JINDO, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (Shade) + Shade->AI()->AttackStart(target); + } + events.ScheduleEvent(EVENT_DELUSIONSOFJINDO, urand(4000, 12000)); + break; + case EVENT_TELEPORT: // Possible HACK + // Teleports a random player and spawns 9 Sacrificed Trolls to attack player + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) + { + DoTeleportPlayer(target, TeleportLoc.m_positionX, TeleportLoc.m_positionY, TeleportLoc.m_positionZ, TeleportLoc.m_orientation); + if (DoGetThreat(me->getVictim())) + DoModifyThreatPercent(target, -100); + Creature* SacrificedTroll; + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX()+2, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX()-2, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX()+4, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX()-4, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX(), target->GetPositionY()+2, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX(), target->GetPositionY()-2, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX(), target->GetPositionY()+4, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX(), target->GetPositionY()-4, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + SacrificedTroll = me->SummonCreature(NPC_SACRIFICED_TROLL, target->GetPositionX()+3, target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (SacrificedTroll) + SacrificedTroll->AI()->AttackStart(target); + } + events.ScheduleEvent(EVENT_TELEPORT, urand(15000, 23000)); + break; + default: + break; } - - Teleport_Timer = urand(15000, 23000); - } else Teleport_Timer -= diff; + } DoMeleeAttackIfReady(); } @@ -283,4 +284,3 @@ void AddSC_boss_jindo() new mob_healing_ward(); new mob_shade_of_jindo(); } - diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp index bcc080bb8a5..6b527ba45f3 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp @@ -27,44 +27,42 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum Mandokir +enum Says { - SAY_AGGRO = 0, - SAY_DING_KILL = 1, - SAY_WATCH = 2, - SAY_WATCH_WHISPER = 3, //is this text for real? easter egg? - SAY_GRATS_JINDO = 0, - - SPELL_CHARGE = 24408, - SPELL_CLEAVE = 7160, - SPELL_FEAR = 29321, - SPELL_WHIRLWIND = 15589, - SPELL_MORTAL_STRIKE = 16856, - SPELL_ENRAGE = 24318, - SPELL_WATCH = 24314, - SPELL_LEVEL_UP = 24312, - -//Ohgans Spells - SPELL_SUNDERARMOR = 24317, - - NPC_SPEAKER = 11391 + SAY_AGGRO = 0, + SAY_DING_KILL = 1, + SAY_WATCH = 2, + SAY_WATCH_WHISPER = 3, // is this text for real? easter egg? + SAY_GRATS_JINDO = 0, +}; + +enum Spells +{ + SPELL_CHARGE = 24408, + SPELL_CLEAVE = 7160, + SPELL_FEAR = 29321, + SPELL_WHIRLWIND = 15589, + SPELL_MORTAL_STRIKE = 16856, + SPELL_ENRAGE = 24318, + SPELL_WATCH = 24314, + SPELL_LEVEL_UP = 24312, + SPELL_SWIFT_ORANGE_RAPTOR = 23243, + // Ohgans Spell + SPELL_SUNDERARMOR = 24317 +}; + +enum CreatureId +{ + NPC_SPEAKER = 11391 }; class boss_mandokir : public CreatureScript { - public: + public: boss_mandokir() : CreatureScript("boss_mandokir") {} - boss_mandokir() - : CreatureScript("boss_mandokir") + struct boss_mandokirAI : public BossAI { - } - - struct boss_mandokirAI : public ScriptedAI - { - boss_mandokirAI(Creature* creature) : ScriptedAI(creature) - { - instance = creature->GetInstanceScript(); - } + boss_mandokirAI(Creature* creature) : BossAI(creature, DATA_MANDOKIR) {} uint32 KillCount; uint32 Watch_Timer; @@ -114,6 +112,11 @@ class boss_mandokir : public CreatureScript DoCast(me, 23243); } + void JustDied(Unit* /*killer*/) + { + _JustDied(); + } + void KilledUnit(Unit* victim) { if (victim->GetTypeId() == TYPEID_PLAYER) @@ -144,6 +147,7 @@ class boss_mandokir : public CreatureScript void EnterCombat(Unit* /*who*/) { + _EnterCombat(); Talk(SAY_AGGRO); } @@ -302,15 +306,10 @@ class boss_mandokir : public CreatureScript } }; -//Ohgan +// Ohgan class mob_ohgan : public CreatureScript { - public: - - mob_ohgan() - : CreatureScript("mob_ohgan") - { - } + public: mob_ohgan() : CreatureScript("mob_ohgan") {} struct mob_ohganAI : public ScriptedAI { diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp index 56aeee93ee2..4d2a892d305 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp @@ -27,192 +27,184 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum Marli +enum Says { SAY_AGGRO = 0, SAY_TRANSFORM = 1, SAY_SPIDER_SPAWN = 2, - SAY_DEATH = 3, - - SPELL_CHARGE = 22911, - SPELL_ASPECT_OF_MARLI = 24686, // A stun spell - SPELL_ENVOLWINGWEB = 24110, - SPELL_POISONVOLLEY = 24099, - SPELL_SPIDER_FORM = 24084, - -//The Spider Spells - SPELL_LEVELUP = 24312 //Not right Spell. + SAY_DEATH = 3 }; -class boss_marli : public CreatureScript +enum Spells { - public: + SPELL_CHARGE = 22911, + SPELL_ASPECT_OF_MARLI = 24686, // A stun spell + SPELL_ENVOLWINGWEB = 24110, + SPELL_POISON_VOLLEY = 24099, + SPELL_SPIDER_FORM = 24084, + // The Spider Spell + SPELL_LEVELUP = 24312 // Not right Spell. +}; - boss_marli() - : CreatureScript("boss_marli") - { - } +enum Events +{ + EVENT_SPAWN_START_SPIDERS = 0, // Phase 1 + EVENT_POISON_VOLLEY = 1, // Phase All + EVENT_SPAWN_SPIDER = 2, // Phase All + EVENT_CHARGE_PLAYER = 3, // Phase 3 + EVENT_ASPECT_OF_MARLI = 4, // Phase 2 + EVENT_TRANSFORM = 5, // Phase 2 + EVENT_TRANSFORM_BACK = 6 // Phase 3 +}; - struct boss_marliAI : public ScriptedAI - { - boss_marliAI(Creature* creature) : ScriptedAI(creature) - { - instance = creature->GetInstanceScript(); - } +enum Phases +{ + PHASE_ONE = 1, + PHASE_TWO = 2, + PHASE_THREE = 3 +}; - InstanceScript* instance; +enum ModelId +{ + MODEL_MARLI = 15220 +}; - uint32 SpawnStartSpiders_Timer; - uint32 PoisonVolley_Timer; - uint32 SpawnSpider_Timer; - uint32 Charge_Timer; - uint32 Aspect_Timer; - uint32 Transform_Timer; - uint32 TransformBack_Timer; +class boss_marli : public CreatureScript +{ + public: boss_marli() : CreatureScript("boss_marli") {} - bool Spawned; - bool PhaseTwo; + struct boss_marliAI : public BossAI + { + boss_marliAI(Creature* creature) : BossAI(creature, DATA_MARLI) {} - void Reset() + void JustDied(Unit* /*killer*/) { - SpawnStartSpiders_Timer = 1000; - PoisonVolley_Timer = 15000; - SpawnSpider_Timer = 30000; - Charge_Timer = 1500; - Aspect_Timer = 12000; - Transform_Timer = 45000; - TransformBack_Timer = 25000; - - Spawned = false; - PhaseTwo = false; + _JustDied(); + Talk(SAY_DEATH); } void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + events.ScheduleEvent(EVENT_SPAWN_START_SPIDERS, 1000, 0, PHASE_ONE); Talk(SAY_AGGRO); } - void JustDied(Unit* /*killer*/) - { - Talk(SAY_DEATH); - if (instance) - instance->SetData(DATA_MARLI, DONE); - } - - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - if (me->getVictim() && me->isAlive()) - { - if (PoisonVolley_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_POISONVOLLEY); - PoisonVolley_Timer = urand(10000, 20000); - } else PoisonVolley_Timer -= diff; - - if (!PhaseTwo && Aspect_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_ASPECT_OF_MARLI); - Aspect_Timer = urand(13000, 18000); - } else Aspect_Timer -= diff; + events.Update(diff); - if (!Spawned && SpawnStartSpiders_Timer <= diff) - { - Talk(SAY_SPIDER_SPAWN); - - Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0); - if (!target) - return; - - Creature* Spider = NULL; - - Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Spider) - Spider->AI()->AttackStart(target); - Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Spider) - Spider->AI()->AttackStart(target); - Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Spider) - Spider->AI()->AttackStart(target); - Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Spider) - Spider->AI()->AttackStart(target); - - Spawned = true; - } else SpawnStartSpiders_Timer -= diff; - - if (SpawnSpider_Timer <= diff) - { - Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0); - if (!target) - return; - - Creature* Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); - if (Spider) - Spider->AI()->AttackStart(target); - SpawnSpider_Timer = urand(12000, 17000); - } else SpawnSpider_Timer -= diff; + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - if (!PhaseTwo && Transform_Timer <= diff) + while (uint32 eventId = events.ExecuteEvent()) + { + switch (eventId) { - Talk(SAY_TRANSFORM); - DoCast(me, SPELL_SPIDER_FORM); - const CreatureTemplate* cinfo = me->GetCreatureTemplate(); - me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 35))); - me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 35))); - me->UpdateDamagePhysical(BASE_ATTACK); - DoCast(me->getVictim(), SPELL_ENVOLWINGWEB); - - if (DoGetThreat(me->getVictim())) - DoModifyThreatPercent(me->getVictim(), -100); - - PhaseTwo = true; - Transform_Timer = urand(35000, 60000); - } else Transform_Timer -= diff; + case EVENT_SPAWN_START_SPIDERS: - if (PhaseTwo) - { - if (Charge_Timer <= diff) - { - Unit* target = NULL; - int i = 0; - while (i < 3) // max 3 tries to get a random target with power_mana + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) + { + Talk(SAY_SPIDER_SPAWN); + Creature* Spider = NULL; + Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (Spider) + Spider->AI()->AttackStart(target); + Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (Spider) + Spider->AI()->AttackStart(target); + Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (Spider) + Spider->AI()->AttackStart(target); + Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (Spider) + Spider->AI()->AttackStart(target); + } + events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, 12000, 0, PHASE_TWO); + events.ScheduleEvent(EVENT_TRANSFORM, 45000, 0, PHASE_TWO); + events.ScheduleEvent(EVENT_POISON_VOLLEY, 15000); + events.ScheduleEvent(EVENT_SPAWN_SPIDER, 30000); + events.ScheduleEvent(EVENT_TRANSFORM, 45000, 0, PHASE_TWO); + events.SetPhase(PHASE_TWO); + break; + case EVENT_POISON_VOLLEY: + DoCastVictim(SPELL_POISON_VOLLEY, true); + events.ScheduleEvent(EVENT_POISON_VOLLEY, urand(10000, 20000)); + break; + case EVENT_ASPECT_OF_MARLI: + DoCastVictim(SPELL_ASPECT_OF_MARLI, true); + events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, urand(13000, 18000), 0, PHASE_TWO); + break; + case EVENT_SPAWN_SPIDER: + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) { - ++i; - target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true); // not aggro leader - if (target && target->getPowerType() == POWER_MANA) + Creature* Spider = me->SummonCreature(15041, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); + if (Spider) + Spider->AI()->AttackStart(target); + } + events.ScheduleEvent(EVENT_SPAWN_SPIDER, urand(12000, 17000)); + break; + case EVENT_TRANSFORM: + { + Talk(SAY_TRANSFORM); + DoCast(me, SPELL_SPIDER_FORM); + const CreatureTemplate* cinfo = me->GetCreatureTemplate(); + me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 35))); + me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 35))); + me->UpdateDamagePhysical(BASE_ATTACK); + DoCast(me->getVictim(), SPELL_ENVOLWINGWEB); + if (DoGetThreat(me->getVictim())) + DoModifyThreatPercent(me->getVictim(), -100); + events.ScheduleEvent(EVENT_CHARGE_PLAYER, 1500, 0, PHASE_THREE); + events.ScheduleEvent(EVENT_TRANSFORM_BACK, 25000, 0, PHASE_THREE); + events.SetPhase(PHASE_THREE); + break; + } + case EVENT_CHARGE_PLAYER: + { + Unit* target = NULL; + int i = 0; + while (i < 3) // max 3 tries to get a random target with power_mana + { + ++i; + Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true); // not aggro leader + if (target && target->getPowerType() == POWER_MANA) i = 3; + } + if (target) + { + DoCast(target, SPELL_CHARGE); + //me->SetPosition(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0); + //me->SendMonsterMove(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, true, 1); + AttackStart(target); + } + events.ScheduleEvent(EVENT_CHARGE_PLAYER, 8000, 0, PHASE_THREE); + break; } - if (target) + case EVENT_TRANSFORM_BACK: { - DoCast(target, SPELL_CHARGE); - //me->SetPosition(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0); - //me->SendMonsterMove(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, true, 1); - AttackStart(target); + me->SetDisplayId(MODEL_MARLI); + const CreatureTemplate* cinfo = me->GetCreatureTemplate(); + me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 1))); + me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 1))); + me->UpdateDamagePhysical(BASE_ATTACK); + events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, 12000, 0, PHASE_TWO); + events.ScheduleEvent(EVENT_TRANSFORM, 45000, 0, PHASE_TWO); + events.ScheduleEvent(EVENT_POISON_VOLLEY, 15000); + events.ScheduleEvent(EVENT_SPAWN_SPIDER, 30000); + events.ScheduleEvent(EVENT_TRANSFORM, urand(35000, 60000), 0, PHASE_TWO); + events.SetPhase(PHASE_TWO); + break; } - - Charge_Timer = 8000; - } else Charge_Timer -= diff; - - if (TransformBack_Timer <= diff) - { - me->SetDisplayId(15220); - const CreatureTemplate* cinfo = me->GetCreatureTemplate(); - me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 1))); - me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 1))); - me->UpdateDamagePhysical(BASE_ATTACK); - - PhaseTwo = false; - TransformBack_Timer = urand(25000, 40000); - } else TransformBack_Timer -= diff; - + default: + break; } - - DoMeleeAttackIfReady(); } + + DoMeleeAttackIfReady(); } }; @@ -222,15 +214,10 @@ class boss_marli : public CreatureScript } }; -//Spawn of Marli +// Spawn of Marli class mob_spawn_of_marli : public CreatureScript { - public: - - mob_spawn_of_marli() - : CreatureScript("mob_spawn_of_marli") - { - } + public: mob_spawn_of_marli() : CreatureScript("mob_spawn_of_marli") {} struct mob_spawn_of_marliAI : public ScriptedAI { @@ -275,4 +262,3 @@ void AddSC_boss_marli() new boss_marli(); new mob_spawn_of_marli(); } - diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp index d562b7cdf9b..65730d1baf2 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp @@ -40,16 +40,11 @@ enum Misc class boss_renataki : public CreatureScript { - public: + public: boss_renataki() : CreatureScript("boss_renataki") {} - boss_renataki() - : CreatureScript("boss_renataki") + struct boss_renatakiAI : public BossAI { - } - - struct boss_renatakiAI : public ScriptedAI - { - boss_renatakiAI(Creature* creature) : ScriptedAI(creature) {} + boss_renatakiAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} uint32 Invisible_Timer; uint32 Ambush_Timer; @@ -72,8 +67,14 @@ class boss_renataki : public CreatureScript Ambushed = false; } + void JustDied(Unit* /*killer*/) + { + _JustDied(); + } + void EnterCombat(Unit* /*who*/) { + _EnterCombat(); } void UpdateAI(const uint32 diff) diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp index d91b8f0b483..6710ca67863 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp @@ -27,28 +27,29 @@ EndScriptData */ #include "ScriptedCreature.h" #include "zulgurub.h" -enum Thekal +enum Says { SAY_AGGRO = 0, - SAY_DEATH = 1, - - SPELL_MORTALCLEAVE = 22859, - SPELL_SILENCE = 22666, - SPELL_FRENZY = 8269, - SPELL_FORCEPUNCH = 24189, - SPELL_CHARGE = 24193, - SPELL_ENRAGE = 8269, - SPELL_SUMMONTIGERS = 24183, - SPELL_TIGER_FORM = 24169, - SPELL_RESURRECT = 24173, //We will not use this spell. - -//Zealot Lor'Khan Spells + SAY_DEATH = 1 +}; + +enum Spells +{ + SPELL_MORTALCLEAVE = 22859, // Phase 1 + SPELL_SILENCE = 22666, // Phase 1 + SPELL_TIGER_FORM = 24169, // Phase 1 + SPELL_RESURRECT = 24173, // Phase 1 // Not used in script. + SPELL_FRENZY = 8269, // Phase 2 + SPELL_FORCEPUNCH = 24189, // Phase 2 + SPELL_CHARGE = 24193, // Phase 2 + SPELL_ENRAGE = 8269, // Phase 2 + SPELL_SUMMONTIGERS = 24183, // Phase 2 + // Zealot Lor'Khan Spells SPELL_SHIELD = 20545, SPELL_BLOODLUST = 24185, SPELL_GREATERHEAL = 24208, SPELL_DISARM = 6713, - -//Zealot Zath Spells + // Zealot Zath Spells SPELL_SWEEPINGSTRIKES = 18765, SPELL_SINISTERSTRIKE = 15581, SPELL_GOUGE = 12540, @@ -56,64 +57,56 @@ enum Thekal SPELL_BLIND = 21060 }; -class boss_thekal : public CreatureScript +enum Events { - public: + EVENT_MORTALCLEAVE = 0, // Phase 1 + EVENT_SILENCE = 1, // Phase 1 + EVENT_CHECK_TIMER = 2, // Phase 1 + EVENT_RESURRECT_TIMER = 3, // Phase 1 + EVENT_FRENZY = 4, // Phase 2 + EVENT_FORCEPUNCH = 5, // Phase 2 + EVENT_SPELL_CHARGE = 6, // Phase 2 + EVENT_ENRAGE = 7, // Phase 2 + EVENT_SUMMONTIGERS = 8 // Phase 2 +}; - boss_thekal() - : CreatureScript("boss_thekal") - { - } +enum Phases +{ + PHASE_ONE = 1, + PHASE_TWO = 2 +}; - struct boss_thekalAI : public ScriptedAI - { - boss_thekalAI(Creature* creature) : ScriptedAI(creature) - { - instance = creature->GetInstanceScript(); - } +class boss_thekal : public CreatureScript +{ + public: boss_thekal() : CreatureScript("boss_thekal") {} - uint32 MortalCleave_Timer; - uint32 Silence_Timer; - uint32 Frenzy_Timer; - uint32 ForcePunch_Timer; - uint32 Charge_Timer; - uint32 Enrage_Timer; - uint32 SummonTigers_Timer; - uint32 Check_Timer; - uint32 Resurrect_Timer; + struct boss_thekalAI : public BossAI + { + boss_thekalAI(Creature* creature) : BossAI(creature, DATA_THEKAL) {} - InstanceScript* instance; bool Enraged; - bool PhaseTwo; bool WasDead; void Reset() { - MortalCleave_Timer = 4000; - Silence_Timer = 9000; - Frenzy_Timer = 30000; - ForcePunch_Timer = 4000; - Charge_Timer = 12000; - Enrage_Timer = 32000; - SummonTigers_Timer = 25000; - Check_Timer = 10000; - Resurrect_Timer = 10000; - Enraged = false; - PhaseTwo = false; WasDead = false; } - void EnterCombat(Unit* /*who*/) + void JustDied(Unit* /*killer*/) { - Talk(SAY_AGGRO); + _JustDied(); + Talk(SAY_DEATH); } - void JustDied(Unit* /*killer*/) + void EnterCombat(Unit* /*who*/) { - Talk(SAY_DEATH); - if (instance) - instance->SetData(DATA_THEKAL, DONE); + _EnterCombat(); + events.ScheduleEvent(EVENT_MORTALCLEAVE, 4000, 0, PHASE_ONE); // Phase 1 + events.ScheduleEvent(EVENT_SILENCE, 9000, 0, PHASE_ONE); // Phase 1 + events.ScheduleEvent(EVENT_CHECK_TIMER, 10000, 0, PHASE_ONE); // Phase 1 + events.ScheduleEvent(EVENT_RESURRECT_TIMER, 10000, 0, PHASE_ONE); // Phase 1 + Talk(SAY_AGGRO); } void JustReachedHome() @@ -122,62 +115,123 @@ class boss_thekal : public CreatureScript instance->SetData(DATA_THEKAL, NOT_STARTED); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - //Check_Timer for the death of LorKhan and Zath. - if (!WasDead && Check_Timer <= diff) + events.Update(diff); + + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; + + while (uint32 eventId = events.ExecuteEvent()) + { + switch (eventId) { - if (instance) - { - if (instance->GetData(DATA_LORKHAN) == SPECIAL) + case EVENT_MORTALCLEAVE: + DoCastVictim(SPELL_MORTALCLEAVE, true); + events.ScheduleEvent(EVENT_MORTALCLEAVE, urand(15000, 20000), 0, PHASE_ONE); + break; + case EVENT_SILENCE: + DoCastVictim(SPELL_SILENCE, true); + events.ScheduleEvent(EVENT_SILENCE, urand(20000, 25000), 0, PHASE_ONE); + break; + case EVENT_RESURRECT_TIMER: + //Thekal will transform to Tiger if he died and was not resurrected after 10 seconds. + if (WasDead) { - //Resurrect LorKhan - if (Unit* pLorKhan = Unit::GetUnit(*me, instance->GetData64(DATA_LORKHAN))) - { - pLorKhan->SetUInt32Value(UNIT_FIELD_BYTES_1, 0); - pLorKhan->setFaction(14); - pLorKhan->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - pLorKhan->SetFullHealth(); - - instance->SetData(DATA_LORKHAN, DONE); - } + DoCast(me, SPELL_TIGER_FORM); + me->SetObjectScale(2.00f); + me->SetStandState(UNIT_STAND_STATE_STAND); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + me->SetFullHealth(); + const CreatureTemplate* cinfo = me->GetCreatureTemplate(); + me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 40))); + me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 40))); + me->UpdateDamagePhysical(BASE_ATTACK); + DoResetThreat(); + events.ScheduleEvent(EVENT_FRENZY, 30000, 0, PHASE_TWO); // Phase 2 + events.ScheduleEvent(EVENT_FORCEPUNCH, 4000, 0, PHASE_TWO); // Phase 2 + events.ScheduleEvent(EVENT_SPELL_CHARGE, 12000, 0, PHASE_TWO); // Phase 2 + events.ScheduleEvent(EVENT_ENRAGE, 32000, 0, PHASE_TWO); // Phase 2 + events.ScheduleEvent(EVENT_SUMMONTIGERS, 25000, 0, PHASE_TWO); // Phase 2 + events.SetPhase(PHASE_TWO); } - - if (instance->GetData(DATA_ZATH) == SPECIAL) + events.ScheduleEvent(EVENT_RESURRECT_TIMER, 10000, 0, PHASE_ONE); + break; + case EVENT_CHECK_TIMER: + //Check_Timer for the death of LorKhan and Zath. + if (!WasDead) { - //Resurrect Zath - Unit* pZath = Unit::GetUnit(*me, instance->GetData64(DATA_ZATH)); - if (pZath) + if (instance) { - pZath->SetUInt32Value(UNIT_FIELD_BYTES_1, 0); - pZath->setFaction(14); - pZath->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - pZath->SetFullHealth(); - - instance->SetData(DATA_ZATH, DONE); + if (instance->GetData(DATA_LORKHAN) == SPECIAL) + { + //Resurrect LorKhan + if (Unit* pLorKhan = Unit::GetUnit(*me, instance->GetData64(DATA_LORKHAN))) + { + pLorKhan->SetUInt32Value(UNIT_FIELD_BYTES_1, 0); + pLorKhan->setFaction(14); + pLorKhan->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + pLorKhan->SetFullHealth(); + instance->SetData(DATA_LORKHAN, DONE); + } + } + + if (instance->GetData(DATA_ZATH) == SPECIAL) + { + //Resurrect Zath + if (Unit* pZath = Unit::GetUnit(*me, instance->GetData64(DATA_ZATH))) + { + pZath->SetUInt32Value(UNIT_FIELD_BYTES_1, 0); + pZath->setFaction(14); + pZath->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + pZath->SetFullHealth(); + instance->SetData(DATA_ZATH, DONE); + } + } } } - } - - Check_Timer = 5000; - } else Check_Timer -= diff; - - if (!PhaseTwo && MortalCleave_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_MORTALCLEAVE); - MortalCleave_Timer = urand(15000, 20000); - } else MortalCleave_Timer -= diff; + events.ScheduleEvent(EVENT_CHECK_TIMER, 5000, 0, PHASE_ONE); + break; + case EVENT_FRENZY: + DoCast(me, SPELL_FRENZY); + events.ScheduleEvent(EVENT_FRENZY, 30000, 0, PHASE_TWO); + break; + case EVENT_FORCEPUNCH: + DoCastVictim(SPELL_FORCEPUNCH, true); + events.ScheduleEvent(EVENT_FORCEPUNCH, urand(16000, 21000), 0, PHASE_TWO); + break; + case EVENT_CHARGE: + if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) + { + DoCast(target, SPELL_CHARGE); + DoResetThreat(); + AttackStart(target); + } + events.ScheduleEvent(EVENT_CHARGE, urand(15000, 22000), 0, PHASE_TWO); + break; + case EVENT_ENRAGE: + if (HealthBelowPct(11) && !Enraged) + { + DoCast(me, SPELL_ENRAGE); + Enraged = true; + } + events.ScheduleEvent(EVENT_ENRAGE, 30000); + break; + case EVENT_SUMMONTIGERS: + DoCastVictim(SPELL_SUMMONTIGERS, true); + events.ScheduleEvent(EVENT_SUMMONTIGERS, urand(10000, 14000), 0, PHASE_TWO); + break; + default: + break; + } - if (!PhaseTwo && Silence_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_SILENCE); - Silence_Timer = urand(20000, 25000); - } else Silence_Timer -= diff; + if (me->IsFullHealth() && WasDead) + WasDead = false; - if (!PhaseTwo && !WasDead && !HealthAbovePct(5)) + if ((events.GetPhaseMask() == PHASE_ONE) && !WasDead && !HealthAbovePct(5)) { me->RemoveAurasByType(SPELL_AURA_PERIODIC_DAMAGE_PERCENT); me->RemoveAurasByType(SPELL_AURA_PERIODIC_DAMAGE); @@ -185,78 +239,12 @@ class boss_thekal : public CreatureScript me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->SetStandState(UNIT_STAND_STATE_SLEEP); me->AttackStop(); - if (instance) instance->SetData(DATA_THEKAL, SPECIAL); - WasDead=true; } - - //Thekal will transform to Tiger if he died and was not resurrected after 10 seconds. - if (!PhaseTwo && WasDead) - { - if (Resurrect_Timer <= diff) - { - DoCast(me, SPELL_TIGER_FORM); - me->SetObjectScale(2.00f); - me->SetStandState(UNIT_STAND_STATE_STAND); - me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - me->SetFullHealth(); - const CreatureTemplate* cinfo = me->GetCreatureTemplate(); - me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 40))); - me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 40))); - me->UpdateDamagePhysical(BASE_ATTACK); - DoResetThreat(); - PhaseTwo = true; - } else Resurrect_Timer -= diff; - } - - if (me->IsFullHealth() && WasDead) - { - WasDead = false; - } - - if (PhaseTwo) - { - if (Charge_Timer <= diff) - { - if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) - { - DoCast(target, SPELL_CHARGE); - DoResetThreat(); - AttackStart(target); - } - - Charge_Timer = urand(15000, 22000); - } else Charge_Timer -= diff; - - if (Frenzy_Timer <= diff) - { - DoCast(me, SPELL_FRENZY); - Frenzy_Timer = 30000; - } else Frenzy_Timer -= diff; - - if (ForcePunch_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_SILENCE); - ForcePunch_Timer = urand(16000, 21000); - } else ForcePunch_Timer -= diff; - - if (SummonTigers_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_SUMMONTIGERS); - SummonTigers_Timer = urand(10000, 14000); - } else SummonTigers_Timer -= diff; - - if (HealthBelowPct(11) && !Enraged) - { - DoCast(me, SPELL_ENRAGE); - Enraged = true; - } - } - - DoMeleeAttackIfReady(); - + } + DoMeleeAttackIfReady(); } }; @@ -269,12 +257,7 @@ class boss_thekal : public CreatureScript //Zealot Lor'Khan class mob_zealot_lorkhan : public CreatureScript { - public: - - mob_zealot_lorkhan() - : CreatureScript("mob_zealot_lorkhan") - { - } + public: mob_zealot_lorkhan() : CreatureScript("mob_zealot_lorkhan") {} struct mob_zealot_lorkhanAI : public ScriptedAI { @@ -585,4 +568,3 @@ void AddSC_boss_thekal() new mob_zealot_lorkhan(); new mob_zealot_zath(); } - diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp index ff63e4a8adb..f5c10631a9b 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp @@ -27,10 +27,10 @@ * - Fix timers (research some more) */ -enum Texts +enum Says { SAY_VENOXIS_TRANSFORM = 1, // Let the coils of hate unfurl! - SAY_VENOXIS_DEATH = 2, // Ssserenity.. at lassst! + SAY_VENOXIS_DEATH = 2 // Ssserenity.. at lassst! }; enum Spells @@ -42,7 +42,6 @@ enum Spells SPELL_HOLY_NOVA = 23858, SPELL_HOLY_FIRE = 23860, SPELL_HOLY_WRATH = 23979, - // snake form SPELL_POISON_CLOUD = 23861, SPELL_VENOM_SPIT = 23862, @@ -50,15 +49,14 @@ enum Spells SPELL_PARASITIC_SERPENT = 23865, SPELL_SUMMON_PARASITIC_SERPENT = 23866, SPELL_PARASITIC_SERPENT_TRIGGER = 23867, - // used when swapping event-stages SPELL_VENOXIS_TRANSFORM = 23849, // 50% health - shapechange to cobra - SPELL_FRENZY = 8269, // 20% health - frenzy + SPELL_FRENZY = 8269 // 20% health - frenzy }; enum NPCs { - NPC_PARASITIC_SERPENT = 14884, + NPC_PARASITIC_SERPENT = 14884 }; enum Events @@ -70,10 +68,8 @@ enum Events EVENT_HOLY_NOVA = 4, EVENT_HOLY_FIRE = 5, EVENT_HOLY_WRATH = 6, - // phase-changing EVENT_TRANSFORM = 7, - // snake form events EVENT_POISON_CLOUD = 8, EVENT_VENOM_SPIT = 9, @@ -84,19 +80,16 @@ enum Events enum Phases { PHASE_ONE = 1, // troll form - PHASE_TWO = 2, // snake form + PHASE_TWO = 2 // snake form }; class boss_venoxis : public CreatureScript { - public: - boss_venoxis() : CreatureScript("boss_venoxis") {} + public: boss_venoxis() : CreatureScript("boss_venoxis") {} struct boss_venoxisAI : public BossAI { - boss_venoxisAI(Creature* creature) : BossAI(creature, DATA_VENOXIS) - { - } + boss_venoxisAI(Creature* creature) : BossAI(creature, DATA_VENOXIS) {} void Reset() { @@ -118,15 +111,19 @@ class boss_venoxis : public CreatureScript events.SetPhase(PHASE_ONE); } + void JustDied(Unit* /*killer*/) + { + _JustDied(); + Talk(SAY_VENOXIS_DEATH); + me->RemoveAllAuras(); + } + void EnterCombat(Unit* /*who*/) { + _EnterCombat(); me->SetReactState(REACT_AGGRESSIVE); - - instance->SetBossState(DATA_VENOXIS, IN_PROGRESS); - // Always running events events.ScheduleEvent(EVENT_THRASH, 5000); - // Phase one events (regular form) events.ScheduleEvent(EVENT_HOLY_NOVA, 5000, 0, PHASE_ONE); events.ScheduleEvent(EVENT_DISPEL_MAGIC, 35000, 0, PHASE_ONE); @@ -157,14 +154,6 @@ class boss_venoxis : public CreatureScript } } - void JustDied(Unit* /*killer*/) - { - Talk(SAY_VENOXIS_DEATH); - // venoxis is dead, mark him as such for the instance - instance->SetBossState(DATA_VENOXIS, DONE); - me->RemoveAllAuras(); - } - void UpdateAI(const uint32 diff) { if (!UpdateVictim()) diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp index 810ee5e900e..196df2b98b9 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp @@ -33,53 +33,58 @@ enum Spells SPELL_LIGHTNINGWAVE = 24819 }; -class boss_wushoolay : public CreatureScript +enum Events { - public: + EVENT_LIGHTNINGCLOUD = 0, + EVENT_LIGHTNINGWAVE = 1 +}; - boss_wushoolay() - : CreatureScript("boss_wushoolay") - { - } +class boss_wushoolay : public CreatureScript +{ + public: boss_wushoolay() : CreatureScript("boss_wushoolay") {} - struct boss_wushoolayAI : public ScriptedAI + struct boss_wushoolayAI : public BossAI { - boss_wushoolayAI(Creature* creature) : ScriptedAI(creature) {} + boss_wushoolayAI(Creature* creature) : BossAI(creature, DATA_EDGE_OF_MADNESS) {} - uint32 LightningCloud_Timer; - uint32 LightningWave_Timer; - - void Reset() + void JustDied(Unit* /*killer*/) { - LightningCloud_Timer = urand(5000, 10000); - LightningWave_Timer = urand(8000, 16000); + _JustDied(); } void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + events.ScheduleEvent(EVENT_LIGHTNINGCLOUD, urand(5000, 10000)); + events.ScheduleEvent(EVENT_LIGHTNINGWAVE, urand(8000, 16000)); } - void UpdateAI(const uint32 diff) + void UpdateAI(uint32 const diff) { if (!UpdateVictim()) return; - //LightningCloud_Timer - if (LightningCloud_Timer <= diff) - { - DoCast(me->getVictim(), SPELL_LIGHTNINGCLOUD); - LightningCloud_Timer = urand(15000, 20000); - } else LightningCloud_Timer -= diff; + events.Update(diff); - //LightningWave_Timer - if (LightningWave_Timer <= diff) - { - Unit* target = NULL; - target = SelectTarget(SELECT_TARGET_RANDOM, 0); - if (target) DoCast(target, SPELL_LIGHTNINGWAVE); + if (me->HasUnitState(UNIT_STATE_CASTING)) + return; - LightningWave_Timer = urand(12000, 16000); - } else LightningWave_Timer -= diff; + while (uint32 eventId = events.ExecuteEvent()) + { + switch (eventId) + { + case EVENT_LIGHTNINGCLOUD: + DoCastVictim(SPELL_LIGHTNINGCLOUD, true); + events.ScheduleEvent(EVENT_LIGHTNINGCLOUD, urand(15000, 20000)); + break; + case EVENT_LIGHTNINGWAVE: + DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_LIGHTNINGWAVE); + events.ScheduleEvent(EVENT_LIGHTNINGWAVE, urand(12000, 16000)); + break; + default: + break; + } + } DoMeleeAttackIfReady(); } diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp index cfaf19642f2..b997d277c95 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp @@ -29,33 +29,28 @@ EndScriptData */ class instance_zulgurub : public InstanceMapScript { - public: - instance_zulgurub() - : InstanceMapScript("instance_zulgurub", 309) - { - } + public: instance_zulgurub(): InstanceMapScript("instance_zulgurub", 309) {} struct instance_zulgurub_InstanceMapScript : public InstanceScript { - instance_zulgurub_InstanceMapScript(Map* map) : InstanceScript(map) {} + instance_zulgurub_InstanceMapScript(Map* map) : InstanceScript(map) + { + SetBossNumber(EncounterCount); + } //If all High Priest bosses were killed. Lorkhan, Zath and Ohgan are added too. - uint32 m_auiEncounter[MAX_ENCOUNTERS]; - //Storing Lorkhan, Zath and Thekal because we need to cast on them later. Jindo is needed for healfunction too. - uint64 m_uiLorKhanGUID; - uint64 m_uiZathGUID; - uint64 m_uiThekalGUID; - uint64 m_uiJindoGUID; + uint64 LorKhanGUID; + uint64 ZathGUID; + uint64 ThekalGUID; + uint64 JindoGUID; void Initialize() { - memset(&m_auiEncounter, 0, sizeof(m_auiEncounter)); - - m_uiLorKhanGUID = 0; - m_uiZathGUID = 0; - m_uiThekalGUID = 0; - m_uiJindoGUID = 0; + LorKhanGUID = 0; + ZathGUID = 0; + ThekalGUID = 0; + JindoGUID = 0; } bool IsEncounterInProgress() const @@ -68,90 +63,124 @@ class instance_zulgurub : public InstanceMapScript { switch (creature->GetEntry()) { - case 11347: m_uiLorKhanGUID = creature->GetGUID(); break; - case 11348: m_uiZathGUID = creature->GetGUID(); break; - case 14509: m_uiThekalGUID = creature->GetGUID(); break; - case 11380: m_uiJindoGUID = creature->GetGUID(); break; + case NPC_ZEALOT_LORKHAN: LorKhanGUID = creature->GetGUID(); break; + case NPC_ZEALOT_ZATH: ZathGUID = creature->GetGUID(); break; + case NPC_HIGH_PRIEST_THEKAL: ThekalGUID = creature->GetGUID(); break; + case NPC_JINDO_THE_HEXXER: JindoGUID = creature->GetGUID(); break; } } - void SetData(uint32 uiType, uint32 uiData) + bool SetBossState(uint32 type, EncounterState state) { - switch (uiType) - { - case DATA_ARLOKK: - m_auiEncounter[0] = uiData; - break; + if (!InstanceScript::SetBossState(type, state)) + return false; + switch (type) + { case DATA_JEKLIK: - m_auiEncounter[1] = uiData; - break; - case DATA_VENOXIS: - m_auiEncounter[2] = uiData; - break; - case DATA_MARLI: - m_auiEncounter[3] = uiData; - break; - + case DATA_ARLOKK: + case DATA_HAKKAR: + case DATA_MANDOKIR: + case DATA_JINDO: + case DATA_GAHZRANKA: + case DATA_EDGE_OF_MADNESS: case DATA_THEKAL: - m_auiEncounter[4] = uiData; - break; - case DATA_LORKHAN: - m_auiEncounter[5] = uiData; - break; - case DATA_ZATH: - m_auiEncounter[6] = uiData; - break; - case DATA_OHGAN: - m_auiEncounter[7] = uiData; + break; + default: break; } + + return true; } - uint32 GetData(uint32 uiType) const + uint32 GetData(uint32 type) const + { + switch (type) { - switch (uiType) - { - case DATA_ARLOKK: - return m_auiEncounter[0]; - case DATA_JEKLIK: - return m_auiEncounter[1]; - case DATA_VENOXIS: - return m_auiEncounter[2]; - case DATA_MARLI: - return m_auiEncounter[3]; - case DATA_THEKAL: - return m_auiEncounter[4]; - case DATA_LORKHAN: - return m_auiEncounter[5]; - case DATA_ZATH: - return m_auiEncounter[6]; - case DATA_OHGAN: - return m_auiEncounter[7]; - } - return 0; + case DATA_JEKLIK: return GetBossState(DATA_JEKLIK); + case DATA_VENOXIS: return GetBossState(DATA_VENOXIS); + case DATA_MARLI: return GetBossState(DATA_MARLI); + case DATA_ARLOKK: return GetBossState(DATA_ARLOKK); + case DATA_HAKKAR: return GetBossState(DATA_HAKKAR); + case DATA_MANDOKIR: return GetBossState(DATA_MANDOKIR); + case DATA_JINDO: return GetBossState(DATA_JINDO); + case DATA_GAHZRANKA: return GetBossState(DATA_GAHZRANKA); + case DATA_EDGE_OF_MADNESS: return GetBossState(DATA_EDGE_OF_MADNESS); + case DATA_THEKAL: return GetBossState(DATA_THEKAL); + case DATA_LORKHAN: return GetBossState(DATA_LORKHAN); + case DATA_ZATH: return GetBossState(DATA_ZATH); + case DATA_OHGAN: return GetBossState(DATA_OHGAN); + break; + default: + break; } + return 0; + } + uint64 GetData64(uint32 uiData) const { switch (uiData) { case DATA_LORKHAN: - return m_uiLorKhanGUID; + return LorKhanGUID; case DATA_ZATH: - return m_uiZathGUID; + return ZathGUID; case DATA_THEKAL: - return m_uiThekalGUID; + return ThekalGUID; case DATA_JINDO: - return m_uiJindoGUID; + return JindoGUID; } return 0; } + + std::string GetSaveData() + { + OUT_SAVE_INST_DATA; + + std::ostringstream saveStream; + saveStream << "Z G " << GetBossSaveData(); + + OUT_SAVE_INST_DATA_COMPLETE; + return saveStream.str(); + } + + void Load(const char* str) + { + if (!str) + { + OUT_LOAD_INST_DATA_FAIL; + return; + } + + OUT_LOAD_INST_DATA(str); + + char dataHead1, dataHead2; + + std::istringstream loadStream(str); + loadStream >> dataHead1 >> dataHead2; + + if (dataHead1 == 'Z' && dataHead2 == 'G') + { + for (uint32 i = 0; i < EncounterCount; ++i) + { + uint32 tmpState; + loadStream >> tmpState; + if (tmpState == IN_PROGRESS || tmpState > SPECIAL) + tmpState = NOT_STARTED; + SetBossState(i, EncounterState(tmpState)); + } + } + else + OUT_LOAD_INST_DATA_FAIL; + + OUT_LOAD_INST_DATA_COMPLETE; + } }; InstanceScript* GetInstanceScript(InstanceMap* map) const diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h index 22637315066..55bf0e50e3c 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h +++ b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h @@ -1,6 +1,5 @@ /* * Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/> - * Copyright (C) 2006-2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -19,20 +18,32 @@ #ifndef DEF_ZULGURUB_H #define DEF_ZULGURUB_H +uint32 const EncounterCount = 13; + enum DataTypes { - MAX_ENCOUNTERS = 8, + DATA_JEKLIK = 0, // Main boss + DATA_VENOXIS = 1, // Main boss + DATA_MARLI = 2, // Main boss + DATA_ARLOKK = 3, // Main boss + DATA_HAKKAR = 4, // Main boss + DATA_MANDOKIR = 5, // Optional boss + DATA_JINDO = 6, // Optional boss + DATA_GAHZRANKA = 7, // Optional boss + DATA_EDGE_OF_MADNESS = 8, // Optional Event Edge of Madness - one of: Gri'lek, Renataki, Hazza'rah, or Wushoolay + DATA_THEKAL = 9, // ?? + DATA_LORKHAN = 10, // ?? + DATA_ZATH = 11, // ?? + DATA_OHGAN = 12 // ?? +}; - DATA_ARLOKK = 1, - DATA_JEKLIK = 2, - DATA_VENOXIS = 3, - DATA_MARLI = 4, - DATA_OHGAN = 5, - DATA_THEKAL = 6, - DATA_ZATH = 7, - DATA_LORKHAN = 8, - DATA_JINDO = 10, +enum CreatureIds +{ + NPC_ZEALOT_LORKHAN = 11347, + NPC_ZEALOT_ZATH = 11348, + NPC_HIGH_PRIEST_THEKAL = 14509, + NPC_JINDO_THE_HEXXER = 11380, + NPC_NIGHTMARE_ILLUSION = 15163 }; #endif - diff --git a/src/server/scripts/EasternKingdoms/boss_kruul.cpp b/src/server/scripts/EasternKingdoms/boss_kruul.cpp index 226ff794a9f..158861e90c7 100644 --- a/src/server/scripts/EasternKingdoms/boss_kruul.cpp +++ b/src/server/scripts/EasternKingdoms/boss_kruul.cpp @@ -26,13 +26,16 @@ EndScriptData */ #include "ScriptMgr.h" #include "ScriptedCreature.h" -#define SPELL_SHADOWVOLLEY 21341 -#define SPELL_CLEAVE 20677 -#define SPELL_THUNDERCLAP 23931 -#define SPELL_TWISTEDREFLECTION 21063 -#define SPELL_VOIDBOLT 21066 -#define SPELL_RAGE 21340 -#define SPELL_CAPTURESOUL 21054 +enum Spells +{ + SPELL_SHADOWVOLLEY = 21341, + SPELL_CLEAVE = 20677, + SPELL_THUNDERCLAP = 23931, + SPELL_TWISTEDREFLECTION = 21063, + SPELL_VOIDBOLT = 21066, + SPELL_RAGE = 21340, + SPELL_CAPTURESOUL = 21054 +}; class boss_kruul : public CreatureScript { diff --git a/src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp b/src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp index f3f2e587178..536c2af2bd8 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp @@ -20,25 +20,33 @@ #include "naxxramas.h" #include "SpellInfo.h" -#define SPELL_BOMBARD_SLIME 28280 - -#define SPELL_POISON_CLOUD 28240 -#define SPELL_MUTATING_INJECTION 28169 -#define SPELL_SLIME_SPRAY RAID_MODE(28157, 54364) -#define SPELL_BERSERK 26662 -#define SPELL_POISON_CLOUD_ADD 59116 +enum Spells +{ + SPELL_BOMBARD_SLIME = 28280, + SPELL_POISON_CLOUD = 28240, + SPELL_MUTATING_INJECTION = 28169, + SPELL_SLIME_SPRAY = 28157, + H_SPELL_SLIME_SPRAY = 54364, + SPELL_BERSERK = 26662, + SPELL_POISON_CLOUD_ADD = 59116 +}; -#define EVENT_BERSERK 1 -#define EVENT_CLOUD 2 -#define EVENT_INJECT 3 -#define EVENT_SPRAY 4 +enum Events +{ + EVENT_BERSERK = 0, + EVENT_CLOUD = 1, + EVENT_INJECT = 2, + EVENT_SPRAY = 3 +}; -#define MOB_FALLOUT_SLIME 16290 +enum CreatureId +{ + MOB_FALLOUT_SLIME = 16290 +}; class boss_grobbulus : public CreatureScript { -public: - boss_grobbulus() : CreatureScript("boss_grobbulus") { } +public: boss_grobbulus() : CreatureScript("boss_grobbulus") { } CreatureAI* GetAI(Creature* creature) const { diff --git a/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp b/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp index 92ced3c702f..891b91c6dfb 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp @@ -28,7 +28,7 @@ enum Spells SPELL_ARCANE_BUFFET_H = 59485, SPELL_SUMMON_ETHEREAL_SPHERE_1 = 54102, SPELL_SUMMON_ETHEREAL_SPHERE_2 = 54137, - SPELL_SUMMON_ETHEREAL_SPHERE_3 = 54138, + SPELL_SUMMON_ETHEREAL_SPHERE_3 = 54138 }; enum NPCs @@ -42,7 +42,7 @@ enum CreatureSpells SPELL_ARCANE_POWER = 54160, H_SPELL_ARCANE_POWER = 59474, SPELL_SUMMON_PLAYERS = 54164, - SPELL_POWER_BALL_VISUAL = 54141, + SPELL_POWER_BALL_VISUAL = 54141 }; enum Yells diff --git a/src/server/scripts/Outland/CoilfangReservoir/underbog/boss_hungarfen.cpp b/src/server/scripts/Outland/CoilfangReservoir/underbog/boss_hungarfen.cpp index 9fa5a1a51f5..c55e93726a9 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/underbog/boss_hungarfen.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/underbog/boss_hungarfen.cpp @@ -26,8 +26,11 @@ EndScriptData */ #include "ScriptMgr.h" #include "ScriptedCreature.h" -#define SPELL_FOUL_SPORES 31673 -#define SPELL_ACID_GEYSER 38739 +enum Spells +{ + SPELL_FOUL_SPORES = 31673, + SPELL_ACID_GEYSER = 38739 +}; class boss_hungarfen : public CreatureScript { diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index afb9a625761..060db02d53c 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -172,7 +172,7 @@ class spell_dk_anti_magic_zone : public SpellScriptLoader return true; } - bool Validate(SpellInfo const* /*spellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { if (!sSpellMgr->GetSpellInfo(SPELL_DK_ANTI_MAGIC_SHELL_TALENT)) return false; diff --git a/src/server/scripts/Spells/spell_holiday.cpp b/src/server/scripts/Spells/spell_holiday.cpp index 83532e7d72d..d883b4d7da7 100644 --- a/src/server/scripts/Spells/spell_holiday.cpp +++ b/src/server/scripts/Spells/spell_holiday.cpp @@ -17,6 +17,7 @@ /* * Spells used in holidays/game events that do not fit any other category. + * Ordered alphabetically using scriptname. * Scriptnames in this file should be prefixed with "spell_#holidayname_". */ @@ -133,6 +134,7 @@ class spell_hallow_end_trick : public SpellScriptLoader class spell_hallow_end_trick_SpellScript : public SpellScript { PrepareSpellScript(spell_hallow_end_trick_SpellScript); + bool Validate(SpellInfo const* /*spell*/) { if (!sSpellMgr->GetSpellInfo(SPELL_PIRATE_COSTUME_MALE) || !sSpellMgr->GetSpellInfo(SPELL_PIRATE_COSTUME_FEMALE) || !sSpellMgr->GetSpellInfo(SPELL_NINJA_COSTUME_MALE) @@ -170,7 +172,7 @@ class spell_hallow_end_trick : public SpellScriptLoader break; } - caster->CastSpell(target, spellId, true, NULL); + caster->CastSpell(target, spellId, true); } } @@ -218,8 +220,8 @@ class spell_hallow_end_trick_or_treat : public SpellScriptLoader Unit* caster = GetCaster(); if (Player* target = GetHitPlayer()) { - caster->CastSpell(target, roll_chance_i(50) ? SPELL_TRICK : SPELL_TREAT, true, NULL); - caster->CastSpell(target, SPELL_TRICKED_OR_TREATED, true, NULL); + caster->CastSpell(target, roll_chance_i(50) ? SPELL_TRICK : SPELL_TREAT, true); + caster->CastSpell(target, SPELL_TRICKED_OR_TREATED, true); } } diff --git a/src/server/scripts/Spells/spell_hunter.cpp b/src/server/scripts/Spells/spell_hunter.cpp index b3c429d27aa..a9b21807899 100644 --- a/src/server/scripts/Spells/spell_hunter.cpp +++ b/src/server/scripts/Spells/spell_hunter.cpp @@ -286,7 +286,6 @@ class spell_hun_last_stand_pet : public SpellScriptLoader void Register() { - // add dummy effect spell handler to pet's Last Stand OnEffectHitTarget += SpellEffectFn(spell_hun_last_stand_pet_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; @@ -452,7 +451,6 @@ class spell_hun_pet_carrion_feeder : public SpellScriptLoader void Register() { - // add dummy effect spell handler to pet's Last Stand OnEffectHit += SpellEffectFn(spell_hun_pet_carrion_feeder_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); OnCheckCast += SpellCheckCastFn(spell_hun_pet_carrion_feeder_SpellScript::CheckIfCorpseNear); } @@ -501,7 +499,6 @@ class spell_hun_pet_heart_of_the_phoenix : public SpellScriptLoader void Register() { - // add dummy effect spell handler to pet's Last Stand OnEffectHitTarget += SpellEffectFn(spell_hun_pet_heart_of_the_phoenix_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); } }; @@ -551,7 +548,6 @@ class spell_hun_readiness : public SpellScriptLoader void Register() { - // add dummy effect spell handler to Readiness OnEffectHitTarget += SpellEffectFn(spell_hun_readiness_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index 9cd94e9c7d5..49a47a17392 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -25,6 +25,7 @@ #include "ScriptMgr.h" #include "ScriptedCreature.h" #include "SpellScript.h" +#include "SpellAuras.h" #include "Vehicle.h" #include "GridNotifiers.h" #include "GridNotifiersImpl.h" @@ -1517,6 +1518,49 @@ class spell_q11010_q11102_q11023_q11008_check_fly_mount : public SpellScriptLoad } }; +enum SpellZuldrakRat +{ + SPELL_SUMMON_GORGED_LURKING_BASILISK = 50928 +}; + +class spell_q12527_zuldrak_rat : public SpellScriptLoader +{ + public: + spell_q12527_zuldrak_rat() : SpellScriptLoader("spell_q12527_zuldrak_rat") { } + + class spell_q12527_zuldrak_rat_SpellScript : public SpellScript + { + PrepareSpellScript(spell_q12527_zuldrak_rat_SpellScript); + + bool Validate(SpellInfo const* /*spell*/) + { + if (!sSpellMgr->GetSpellInfo(SPELL_SUMMON_GORGED_LURKING_BASILISK)) + return false; + return true; + } + + void HandleScriptEffect(SpellEffIndex /* effIndex */) + { + if (GetHitAura() && GetHitAura()->GetStackAmount() >= GetSpellInfo()->StackAmount) + { + GetHitUnit()->CastSpell((Unit*) NULL, SPELL_SUMMON_GORGED_LURKING_BASILISK, true); + if (Creature* basilisk = GetHitUnit()->ToCreature()) + basilisk->DespawnOrUnsummon(); + } + } + + void Register() + { + OnEffectHitTarget += SpellEffectFn(spell_q12527_zuldrak_rat_SpellScript::HandleScriptEffect, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT); + } + }; + + SpellScript* GetSpellScript() const + { + return new spell_q12527_zuldrak_rat_SpellScript(); + } +}; + void AddSC_quest_spell_scripts() { new spell_q55_sacred_cleansing(); @@ -1554,4 +1598,5 @@ void AddSC_quest_spell_scripts() new spell_q11010_q11102_q11023_choose_loc(); new spell_q11010_q11102_q11023_q11008_check_fly_mount(); new spell_q12372_azure_on_death_force_whisper(); + new spell_q12527_zuldrak_rat(); } diff --git a/src/server/scripts/Spells/spell_rogue.cpp b/src/server/scripts/Spells/spell_rogue.cpp index 1a2738afdbb..70b677f5aaa 100644 --- a/src/server/scripts/Spells/spell_rogue.cpp +++ b/src/server/scripts/Spells/spell_rogue.cpp @@ -250,7 +250,7 @@ class spell_rog_preparation : public SpellScriptLoader return GetCaster()->GetTypeId() == TYPEID_PLAYER; } - bool Validate(SpellInfo const* /*spellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { if (!sSpellMgr->GetSpellInfo(SPELL_ROGUE_GLYPH_OF_PREPARATION)) return false; @@ -292,7 +292,6 @@ class spell_rog_preparation : public SpellScriptLoader void Register() { - // add dummy effect spell handler to Preparation OnEffectHitTarget += SpellEffectFn(spell_rog_preparation_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; diff --git a/src/server/scripts/Spells/spell_shaman.cpp b/src/server/scripts/Spells/spell_shaman.cpp index ff7c83b95a5..0d249953421 100644 --- a/src/server/scripts/Spells/spell_shaman.cpp +++ b/src/server/scripts/Spells/spell_shaman.cpp @@ -30,28 +30,69 @@ enum ShamanSpells { - SHAMAN_SPELL_GLYPH_OF_MANA_TIDE = 55441, - SHAMAN_SPELL_MANA_TIDE_TOTEM = 39609, - SHAMAN_SPELL_FIRE_NOVA_R1 = 1535, - SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1 = 8349, - SHAMAN_SPELL_SATED = 57724, - SHAMAN_SPELL_EXHAUSTION = 57723, + SPELL_SHAMAN_ANCESTRAL_AWAKENING_PROC = 52752, + SPELL_SHAMAN_BIND_SIGHT = 6277, + SPELL_SHAMAN_CLEANSING_TOTEM_EFFECT = 52025, + SPELL_SHAMAN_EXHAUSTION = 57723, + SPELL_SHAMAN_FIRE_NOVA_R1 = 1535, + SPELL_SHAMAN_FIRE_NOVA_TRIGGERED_R1 = 8349, + SPELL_SHAMAN_GLYPH_OF_HEALING_STREAM_TOTEM = 55456, + SPELL_SHAMAN_GLYPH_OF_MANA_TIDE = 55441, + SPELL_SHAMAN_LAVA_FLOWS_R1 = 51480, + SPELL_SHAMAN_LAVA_FLOWS_TRIGGERED_R1 = 64694, + SPELL_SHAMAN_MANA_SPRING_TOTEM_ENERGIZE = 52032, + SPELL_SHAMAN_MANA_TIDE_TOTEM = 39609, + SPELL_SHAMAN_SATED = 57724, + SPELL_SHAMAN_STORM_EARTH_AND_FIRE = 51483, + SPELL_SHAMAN_TOTEM_EARTHBIND_EARTHGRAB = 64695, + SPELL_SHAMAN_TOTEM_EARTHBIND_TOTEM = 6474, + SPELL_SHAMAN_TOTEM_EARTHEN_POWER = 59566, + SPELL_SHAMAN_TOTEM_HEALING_STREAM_HEAL = 52042 +}; - SHAMAN_SPELL_STORM_EARTH_AND_FIRE = 51483, - EARTHBIND_TOTEM_SPELL_EARTHGRAB = 64695, +enum ShamanSpellIcons +{ + SHAMAN_ICON_ID_RESTORATIVE_TOTEMS = 338, + SHAMAN_ICON_ID_SHAMAN_LAVA_FLOW = 3087 +}; - // For Earthen Power - SHAMAN_TOTEM_SPELL_EARTHBIND_TOTEM = 6474, - SHAMAN_TOTEM_SPELL_EARTHEN_POWER = 59566, +// 52759 - Ancestral Awakening (Proc) +class spell_sha_ancestral_awakening_proc : public SpellScriptLoader +{ + public: + spell_sha_ancestral_awakening_proc() : SpellScriptLoader("spell_sha_ancestral_awakening_proc") { } - SHAMAN_BIND_SIGHT = 6277, + class spell_sha_ancestral_awakening_proc_SpellScript : public SpellScript + { + PrepareSpellScript(spell_sha_ancestral_awakening_proc_SpellScript); - ICON_ID_SHAMAN_LAVA_FLOW = 3087, - SHAMAN_LAVA_FLOWS_R1 = 51480, - SHAMAN_LAVA_FLOWS_TRIGGERED_R1 = 64694, + bool Validate(SpellInfo const* /*spellInfo*/) + { + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_ANCESTRAL_AWAKENING_PROC)) + return false; + return true; + } + + void HandleDummy(SpellEffIndex /*effIndex*/) + { + int32 damage = GetEffectValue(); + if (GetHitUnit()) + GetCaster()->CastCustomSpell(GetHitUnit(), SPELL_SHAMAN_ANCESTRAL_AWAKENING_PROC, &damage, NULL, NULL, true); + } + + void Register() + { + OnEffectHitTarget += SpellEffectFn(spell_sha_ancestral_awakening_proc_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + } + }; + + SpellScript* GetSpellScript() const + { + return new spell_sha_ancestral_awakening_proc_SpellScript(); + } }; -// 51474 - Astral shift +// 51474 - Astral Shift class spell_sha_astral_shift : public SpellScriptLoader { public: @@ -95,115 +136,136 @@ class spell_sha_astral_shift : public SpellScriptLoader } }; -// 1535 Fire Nova -class spell_sha_fire_nova : public SpellScriptLoader +// 2825 - Bloodlust +class spell_sha_bloodlust : public SpellScriptLoader { public: - spell_sha_fire_nova() : SpellScriptLoader("spell_sha_fire_nova") { } + spell_sha_bloodlust() : SpellScriptLoader("spell_sha_bloodlust") { } - class spell_sha_fire_nova_SpellScript : public SpellScript + class spell_sha_bloodlust_SpellScript : public SpellScript { - PrepareSpellScript(spell_sha_fire_nova_SpellScript); + PrepareSpellScript(spell_sha_bloodlust_SpellScript); - bool Validate(SpellInfo const* spellEntry) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(SHAMAN_SPELL_FIRE_NOVA_R1) || sSpellMgr->GetFirstSpellInChain(SHAMAN_SPELL_FIRE_NOVA_R1) != sSpellMgr->GetFirstSpellInChain(spellEntry->Id)) - return false; - - uint8 rank = sSpellMgr->GetSpellRank(spellEntry->Id); - if (!sSpellMgr->GetSpellWithRank(SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1, rank, true)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_SATED)) return false; return true; } - SpellCastResult CheckFireTotem() + void RemoveInvalidTargets(std::list<WorldObject*>& targets) { - // fire totem - if (!GetCaster()->m_SummonSlot[1]) - { - SetCustomCastResultMessage(SPELL_CUSTOM_ERROR_MUST_HAVE_FIRE_TOTEM); - return SPELL_FAILED_CUSTOM_ERROR; - } + targets.remove_if(Trinity::UnitAuraCheck(true, SPELL_SHAMAN_SATED)); + } - return SPELL_CAST_OK; + void ApplyDebuff() + { + if (Unit* target = GetHitUnit()) + target->CastSpell(target, SPELL_SHAMAN_SATED, true); } - void HandleDummy(SpellEffIndex /*effIndex*/) + void Register() { - if (Unit* caster = GetCaster()) + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_bloodlust_SpellScript::RemoveInvalidTargets, EFFECT_0, TARGET_UNIT_CASTER_AREA_RAID); + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_bloodlust_SpellScript::RemoveInvalidTargets, EFFECT_1, TARGET_UNIT_CASTER_AREA_RAID); + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_bloodlust_SpellScript::RemoveInvalidTargets, EFFECT_2, TARGET_UNIT_CASTER_AREA_RAID); + AfterHit += SpellHitFn(spell_sha_bloodlust_SpellScript::ApplyDebuff); + } + }; + + SpellScript* GetSpellScript() const + { + return new spell_sha_bloodlust_SpellScript(); + } +}; + +// -1064 - Chain Heal +class spell_sha_chain_heal : public SpellScriptLoader +{ + public: + spell_sha_chain_heal() : SpellScriptLoader("spell_sha_chain_heal") { } + + class spell_sha_chain_heal_SpellScript : public SpellScript + { + PrepareSpellScript(spell_sha_chain_heal_SpellScript); + + bool Load() + { + firstHeal = true; + riptide = false; + return true; + } + + void HandleHeal(SpellEffIndex /*effIndex*/) + { + if (firstHeal) { - uint8 rank = sSpellMgr->GetSpellRank(GetSpellInfo()->Id); - if (uint32 spellId = sSpellMgr->GetSpellWithRank(SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1, rank)) + // Check if the target has Riptide + if (AuraEffect* aurEff = GetHitUnit()->GetAuraEffect(SPELL_AURA_PERIODIC_HEAL, SPELLFAMILY_SHAMAN, 0, 0, 0x10, GetCaster()->GetGUID())) { - Creature* totem = caster->GetMap()->GetCreature(caster->m_SummonSlot[1]); - if (totem && totem->isTotem()) - caster->CastSpell(totem, spellId, true); + riptide = true; + // Consume it + GetHitUnit()->RemoveAura(aurEff->GetBase()); } + firstHeal = false; } + // Riptide increases the Chain Heal effect by 25% + if (riptide) + SetHitHeal(GetHitHeal() * 1.25f); } void Register() { - OnCheckCast += SpellCheckCastFn(spell_sha_fire_nova_SpellScript::CheckFireTotem); - OnEffectHitTarget += SpellEffectFn(spell_sha_fire_nova_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + OnEffectHitTarget += SpellEffectFn(spell_sha_chain_heal_SpellScript::HandleHeal, EFFECT_0, SPELL_EFFECT_HEAL); } + + bool firstHeal; + bool riptide; }; SpellScript* GetSpellScript() const { - return new spell_sha_fire_nova_SpellScript(); + return new spell_sha_chain_heal_SpellScript(); } }; -// 39610 Mana Tide Totem -class spell_sha_mana_tide_totem : public SpellScriptLoader +// 8171 - Cleansing Totem (Pulse) +class spell_sha_cleansing_totem_pulse : public SpellScriptLoader { public: - spell_sha_mana_tide_totem() : SpellScriptLoader("spell_sha_mana_tide_totem") { } + spell_sha_cleansing_totem_pulse() : SpellScriptLoader("spell_sha_cleansing_totem_pulse") { } - class spell_sha_mana_tide_totem_SpellScript : public SpellScript + class spell_sha_cleansing_totem_pulse_SpellScript : public SpellScript { - PrepareSpellScript(spell_sha_mana_tide_totem_SpellScript); + PrepareSpellScript(spell_sha_cleansing_totem_pulse_SpellScript); - bool Validate(SpellInfo const* /*spellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(SHAMAN_SPELL_GLYPH_OF_MANA_TIDE) || !sSpellMgr->GetSpellInfo(SHAMAN_SPELL_MANA_TIDE_TOTEM)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_CLEANSING_TOTEM_EFFECT)) return false; return true; } void HandleDummy(SpellEffIndex /*effIndex*/) { - if (Unit* caster = GetCaster()) - if (Unit* unitTarget = GetHitUnit()) - { - if (unitTarget->getPowerType() == POWER_MANA) - { - int32 effValue = GetEffectValue(); - // Glyph of Mana Tide - if (Unit* owner = caster->GetOwner()) - if (AuraEffect* dummy = owner->GetAuraEffect(SHAMAN_SPELL_GLYPH_OF_MANA_TIDE, 0)) - effValue += dummy->GetAmount(); - // Regenerate 6% of Total Mana Every 3 secs - int32 effBasePoints0 = int32(CalculatePct(unitTarget->GetMaxPower(POWER_MANA), effValue)); - caster->CastCustomSpell(unitTarget, SHAMAN_SPELL_MANA_TIDE_TOTEM, &effBasePoints0, NULL, NULL, true, NULL, NULL, GetOriginalCaster()->GetGUID()); - } - } + int32 bp = 1; + if (GetCaster() && GetHitUnit() && GetOriginalCaster()) + GetCaster()->CastCustomSpell(GetHitUnit(), SPELL_SHAMAN_CLEANSING_TOTEM_EFFECT, NULL, &bp, NULL, true, NULL, NULL, GetOriginalCaster()->GetGUID()); } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_sha_mana_tide_totem_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + OnEffectHitTarget += SpellEffectFn(spell_sha_cleansing_totem_pulse_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; SpellScript* GetSpellScript() const { - return new spell_sha_mana_tide_totem_SpellScript(); + return new spell_sha_cleansing_totem_pulse_SpellScript(); } }; -// 6474 - Earthbind Totem - Fix Talent:Earthen Power +// 6474 - Earthbind Totem - Fix Talent: Earthen Power class spell_sha_earthbind_totem : public SpellScriptLoader { public: @@ -213,9 +275,9 @@ class spell_sha_earthbind_totem : public SpellScriptLoader { PrepareAuraScript(spell_sha_earthbind_totem_AuraScript); - bool Validate(SpellInfo const* /*spellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(SHAMAN_TOTEM_SPELL_EARTHBIND_TOTEM) || !sSpellMgr->GetSpellInfo(SHAMAN_TOTEM_SPELL_EARTHEN_POWER)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_TOTEM_EARTHBIND_TOTEM) || !sSpellMgr->GetSpellInfo(SPELL_SHAMAN_TOTEM_EARTHEN_POWER)) return false; return true; } @@ -227,7 +289,7 @@ class spell_sha_earthbind_totem : public SpellScriptLoader if (Player* owner = GetCaster()->GetCharmerOrOwnerPlayerOrPlayerItself()) if (AuraEffect* aur = owner->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2289, 0)) if (roll_chance_i(aur->GetBaseAmount())) - GetTarget()->CastSpell((Unit*)NULL, SHAMAN_TOTEM_SPELL_EARTHEN_POWER, true); + GetTarget()->CastSpell((Unit*)NULL, SPELL_SHAMAN_TOTEM_EARTHEN_POWER, true); } void Apply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) @@ -238,10 +300,10 @@ class spell_sha_earthbind_totem : public SpellScriptLoader if (!owner) return; // Storm, Earth and Fire - if (AuraEffect* aurEff = owner->GetAuraEffectOfRankedSpell(SHAMAN_SPELL_STORM_EARTH_AND_FIRE, EFFECT_1)) + if (AuraEffect* aurEff = owner->GetAuraEffectOfRankedSpell(SPELL_SHAMAN_STORM_EARTH_AND_FIRE, EFFECT_1)) { if (roll_chance_i(aurEff->GetAmount())) - GetCaster()->CastSpell(GetCaster(), EARTHBIND_TOTEM_SPELL_EARTHGRAB, false); + GetCaster()->CastSpell(GetCaster(), SPELL_SHAMAN_TOTEM_EARTHBIND_EARTHGRAB, false); } } @@ -275,6 +337,7 @@ class EarthenPowerTargetSelector } }; +// 59566 - Earthen Power class spell_sha_earthen_power : public SpellScriptLoader { public: @@ -301,177 +364,112 @@ class spell_sha_earthen_power : public SpellScriptLoader } }; -class spell_sha_bloodlust : public SpellScriptLoader +// -1535 - Fire Nova +class spell_sha_fire_nova : public SpellScriptLoader { public: - spell_sha_bloodlust() : SpellScriptLoader("spell_sha_bloodlust") { } + spell_sha_fire_nova() : SpellScriptLoader("spell_sha_fire_nova") { } - class spell_sha_bloodlust_SpellScript : public SpellScript + class spell_sha_fire_nova_SpellScript : public SpellScript { - PrepareSpellScript(spell_sha_bloodlust_SpellScript); + PrepareSpellScript(spell_sha_fire_nova_SpellScript); - bool Validate(SpellInfo const* /*spellEntry*/) + bool Validate(SpellInfo const* spellInfo) { - if (!sSpellMgr->GetSpellInfo(SHAMAN_SPELL_SATED)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_FIRE_NOVA_R1) || sSpellMgr->GetFirstSpellInChain(SPELL_SHAMAN_FIRE_NOVA_R1) != sSpellMgr->GetFirstSpellInChain(spellInfo->Id)) return false; - return true; - } - void RemoveInvalidTargets(std::list<WorldObject*>& targets) - { - targets.remove_if(Trinity::UnitAuraCheck(true, SHAMAN_SPELL_SATED)); - } - - void ApplyDebuff() - { - if (Unit* target = GetHitUnit()) - target->CastSpell(target, SHAMAN_SPELL_SATED, true); - } - - void Register() - { - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_bloodlust_SpellScript::RemoveInvalidTargets, EFFECT_0, TARGET_UNIT_CASTER_AREA_RAID); - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_bloodlust_SpellScript::RemoveInvalidTargets, EFFECT_1, TARGET_UNIT_CASTER_AREA_RAID); - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_bloodlust_SpellScript::RemoveInvalidTargets, EFFECT_2, TARGET_UNIT_CASTER_AREA_RAID); - AfterHit += SpellHitFn(spell_sha_bloodlust_SpellScript::ApplyDebuff); - } - }; - - SpellScript* GetSpellScript() const - { - return new spell_sha_bloodlust_SpellScript(); - } -}; - -class spell_sha_heroism : public SpellScriptLoader -{ - public: - spell_sha_heroism() : SpellScriptLoader("spell_sha_heroism") { } - - class spell_sha_heroism_SpellScript : public SpellScript - { - PrepareSpellScript(spell_sha_heroism_SpellScript); - - bool Validate(SpellInfo const* /*spellEntry*/) - { - if (!sSpellMgr->GetSpellInfo(SHAMAN_SPELL_EXHAUSTION)) + uint8 rank = sSpellMgr->GetSpellRank(spellInfo->Id); + if (!sSpellMgr->GetSpellWithRank(SPELL_SHAMAN_FIRE_NOVA_TRIGGERED_R1, rank, true)) return false; return true; } - void RemoveInvalidTargets(std::list<WorldObject*>& targets) - { - targets.remove_if(Trinity::UnitAuraCheck(true, SHAMAN_SPELL_EXHAUSTION)); - } - - void ApplyDebuff() - { - if (Unit* target = GetHitUnit()) - target->CastSpell(target, SHAMAN_SPELL_EXHAUSTION, true); - } - - void Register() + SpellCastResult CheckFireTotem() { - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_heroism_SpellScript::RemoveInvalidTargets, EFFECT_0, TARGET_UNIT_CASTER_AREA_RAID); - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_heroism_SpellScript::RemoveInvalidTargets, EFFECT_1, TARGET_UNIT_CASTER_AREA_RAID); - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_heroism_SpellScript::RemoveInvalidTargets, EFFECT_2, TARGET_UNIT_CASTER_AREA_RAID); - AfterHit += SpellHitFn(spell_sha_heroism_SpellScript::ApplyDebuff); - } - }; - - SpellScript* GetSpellScript() const - { - return new spell_sha_heroism_SpellScript(); - } -}; - -enum AncestralAwakeningProc -{ - SPELL_ANCESTRAL_AWAKENING_PROC = 52752, -}; - -class spell_sha_ancestral_awakening_proc : public SpellScriptLoader -{ - public: - spell_sha_ancestral_awakening_proc() : SpellScriptLoader("spell_sha_ancestral_awakening_proc") { } - - class spell_sha_ancestral_awakening_proc_SpellScript : public SpellScript - { - PrepareSpellScript(spell_sha_ancestral_awakening_proc_SpellScript); + // fire totem + if (!GetCaster()->m_SummonSlot[1]) + { + SetCustomCastResultMessage(SPELL_CUSTOM_ERROR_MUST_HAVE_FIRE_TOTEM); + return SPELL_FAILED_CUSTOM_ERROR; + } - bool Validate(SpellInfo const* /*SpellEntry*/) - { - if (!sSpellMgr->GetSpellInfo(SPELL_ANCESTRAL_AWAKENING_PROC)) - return false; - return true; + return SPELL_CAST_OK; } - void HandleDummy(SpellEffIndex /* effIndex */) + void HandleDummy(SpellEffIndex /*effIndex*/) { - int32 damage = GetEffectValue(); - if (GetCaster() && GetHitUnit()) - GetCaster()->CastCustomSpell(GetHitUnit(), SPELL_ANCESTRAL_AWAKENING_PROC, &damage, NULL, NULL, true); + if (Unit* caster = GetCaster()) + { + uint8 rank = sSpellMgr->GetSpellRank(GetSpellInfo()->Id); + if (uint32 spellId = sSpellMgr->GetSpellWithRank(SPELL_SHAMAN_FIRE_NOVA_TRIGGERED_R1, rank)) + { + Creature* totem = caster->GetMap()->GetCreature(caster->m_SummonSlot[1]); + if (totem && totem->isTotem()) + caster->CastSpell(totem, spellId, true); + } + } } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_sha_ancestral_awakening_proc_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + OnCheckCast += SpellCheckCastFn(spell_sha_fire_nova_SpellScript::CheckFireTotem); + OnEffectHitTarget += SpellEffectFn(spell_sha_fire_nova_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; SpellScript* GetSpellScript() const { - return new spell_sha_ancestral_awakening_proc_SpellScript(); + return new spell_sha_fire_nova_SpellScript(); } }; -enum CleansingTotemPulse -{ - SPELL_CLEANSING_TOTEM_EFFECT = 52025, -}; - -class spell_sha_cleansing_totem_pulse : public SpellScriptLoader +// -8050 - Flame Shock +class spell_sha_flame_shock : public SpellScriptLoader { public: - spell_sha_cleansing_totem_pulse() : SpellScriptLoader("spell_sha_cleansing_totem_pulse") { } + spell_sha_flame_shock() : SpellScriptLoader("spell_sha_flame_shock") { } - class spell_sha_cleansing_totem_pulse_SpellScript : public SpellScript + class spell_sha_flame_shock_AuraScript : public AuraScript { - PrepareSpellScript(spell_sha_cleansing_totem_pulse_SpellScript); + PrepareAuraScript(spell_sha_flame_shock_AuraScript); - bool Validate(SpellInfo const* /*SpellEntry*/) + bool Validate(SpellInfo const* /*spell*/) { - if (!sSpellMgr->GetSpellInfo(SPELL_CLEANSING_TOTEM_EFFECT)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_LAVA_FLOWS_R1)) + return false; + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_LAVA_FLOWS_TRIGGERED_R1)) return false; return true; } - void HandleDummy(SpellEffIndex /* effIndex */) + void HandleDispel(DispelInfo* /*dispelInfo*/) { - int32 bp = 1; - if (GetCaster() && GetHitUnit() && GetOriginalCaster()) - GetCaster()->CastCustomSpell(GetHitUnit(), SPELL_CLEANSING_TOTEM_EFFECT, NULL, &bp, NULL, true, NULL, NULL, GetOriginalCaster()->GetGUID()); + if (Unit* caster = GetCaster()) + // Lava Flows + if (AuraEffect const* aurEff = caster->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, SHAMAN_ICON_ID_SHAMAN_LAVA_FLOW, EFFECT_0)) + { + if (sSpellMgr->GetFirstSpellInChain(SPELL_SHAMAN_LAVA_FLOWS_R1) != sSpellMgr->GetFirstSpellInChain(aurEff->GetId())) + return; + + uint8 rank = sSpellMgr->GetSpellRank(aurEff->GetId()); + caster->CastSpell(caster, sSpellMgr->GetSpellWithRank(SPELL_SHAMAN_LAVA_FLOWS_TRIGGERED_R1, rank), true); + } } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_sha_cleansing_totem_pulse_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + AfterDispel += AuraDispelFn(spell_sha_flame_shock_AuraScript::HandleDispel); } }; - SpellScript* GetSpellScript() const + AuraScript* GetAuraScript() const { - return new spell_sha_cleansing_totem_pulse_SpellScript(); + return new spell_sha_flame_shock_AuraScript(); } }; -enum HealingStreamTotem -{ - SPELL_GLYPH_OF_HEALING_STREAM_TOTEM = 55456, - ICON_ID_RESTORATIVE_TOTEMS = 338, - SPELL_HEALING_STREAM_TOTEM_HEAL = 52042, -}; - +// 52041, 52046, 52047, 52048, 52049, 52050, 58759, 58760, 58761 - Healing Stream Totem class spell_sha_healing_stream_totem : public SpellScriptLoader { public: @@ -481,14 +479,14 @@ class spell_sha_healing_stream_totem : public SpellScriptLoader { PrepareSpellScript(spell_sha_healing_stream_totem_SpellScript); - bool Validate(SpellInfo const* /*SpellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(SPELL_GLYPH_OF_HEALING_STREAM_TOTEM) || !sSpellMgr->GetSpellInfo(SPELL_HEALING_STREAM_TOTEM_HEAL)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_GLYPH_OF_HEALING_STREAM_TOTEM) || !sSpellMgr->GetSpellInfo(SPELL_SHAMAN_TOTEM_HEALING_STREAM_HEAL)) return false; return true; } - void HandleDummy(SpellEffIndex /* effIndex */) + void HandleDummy(SpellEffIndex /*effIndex*/) { int32 damage = GetEffectValue(); SpellInfo const* triggeringSpell = GetTriggeringSpell(); @@ -501,16 +499,16 @@ class spell_sha_healing_stream_totem : public SpellScriptLoader damage = int32(owner->SpellHealingBonusDone(target, triggeringSpell, damage, HEAL)); // Restorative Totems - if (AuraEffect* dummy = owner->GetAuraEffect(SPELL_AURA_DUMMY, SPELLFAMILY_SHAMAN, ICON_ID_RESTORATIVE_TOTEMS, 1)) + if (AuraEffect* dummy = owner->GetAuraEffect(SPELL_AURA_DUMMY, SPELLFAMILY_SHAMAN, SHAMAN_ICON_ID_RESTORATIVE_TOTEMS, 1)) AddPct(damage, dummy->GetAmount()); // Glyph of Healing Stream Totem - if (AuraEffect const* aurEff = owner->GetAuraEffect(SPELL_GLYPH_OF_HEALING_STREAM_TOTEM, EFFECT_0)) + if (AuraEffect const* aurEff = owner->GetAuraEffect(SPELL_SHAMAN_GLYPH_OF_HEALING_STREAM_TOTEM, EFFECT_0)) AddPct(damage, aurEff->GetAmount()); damage = int32(target->SpellHealingBonusTaken(owner, triggeringSpell, damage, HEAL)); } - caster->CastCustomSpell(target, SPELL_HEALING_STREAM_TOTEM_HEAL, &damage, 0, 0, true, 0, 0, GetOriginalCaster()->GetGUID()); + caster->CastCustomSpell(target, SPELL_SHAMAN_TOTEM_HEALING_STREAM_HEAL, &damage, 0, 0, true, 0, 0, GetOriginalCaster()->GetGUID()); } } @@ -526,49 +524,50 @@ class spell_sha_healing_stream_totem : public SpellScriptLoader } }; -enum ManaSpringTotem -{ - SPELL_MANA_SPRING_TOTEM_ENERGIZE = 52032, -}; - -class spell_sha_mana_spring_totem : public SpellScriptLoader +// 32182 - Heroism +class spell_sha_heroism : public SpellScriptLoader { public: - spell_sha_mana_spring_totem() : SpellScriptLoader("spell_sha_mana_spring_totem") { } + spell_sha_heroism() : SpellScriptLoader("spell_sha_heroism") { } - class spell_sha_mana_spring_totem_SpellScript : public SpellScript + class spell_sha_heroism_SpellScript : public SpellScript { - PrepareSpellScript(spell_sha_mana_spring_totem_SpellScript); + PrepareSpellScript(spell_sha_heroism_SpellScript); - bool Validate(SpellInfo const* /*SpellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(SPELL_MANA_SPRING_TOTEM_ENERGIZE)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_EXHAUSTION)) return false; return true; } - void HandleDummy(SpellEffIndex /* effIndex */) + void RemoveInvalidTargets(std::list<WorldObject*>& targets) + { + targets.remove_if(Trinity::UnitAuraCheck(true, SPELL_SHAMAN_EXHAUSTION)); + } + + void ApplyDebuff() { - int32 damage = GetEffectValue(); if (Unit* target = GetHitUnit()) - if (Unit* caster = GetCaster()) - if (target->getPowerType() == POWER_MANA) - caster->CastCustomSpell(target, SPELL_MANA_SPRING_TOTEM_ENERGIZE, &damage, 0, 0, true, 0, 0, GetOriginalCaster()->GetGUID()); + target->CastSpell(target, SPELL_SHAMAN_EXHAUSTION, true); } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_sha_mana_spring_totem_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_heroism_SpellScript::RemoveInvalidTargets, EFFECT_0, TARGET_UNIT_CASTER_AREA_RAID); + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_heroism_SpellScript::RemoveInvalidTargets, EFFECT_1, TARGET_UNIT_CASTER_AREA_RAID); + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sha_heroism_SpellScript::RemoveInvalidTargets, EFFECT_2, TARGET_UNIT_CASTER_AREA_RAID); + AfterHit += SpellHitFn(spell_sha_heroism_SpellScript::ApplyDebuff); } - }; SpellScript* GetSpellScript() const { - return new spell_sha_mana_spring_totem_SpellScript(); + return new spell_sha_heroism_SpellScript(); } }; +// 60103 - Lava Lash class spell_sha_lava_lash : public SpellScriptLoader { public: @@ -583,7 +582,7 @@ class spell_sha_lava_lash : public SpellScriptLoader return GetCaster()->GetTypeId() == TYPEID_PLAYER; } - void HandleDummy(SpellEffIndex /* effIndex */) + void HandleDummy(SpellEffIndex /*effIndex*/) { if (Player* caster = GetCaster()->ToPlayer()) { @@ -612,100 +611,94 @@ class spell_sha_lava_lash : public SpellScriptLoader } }; -// 1064 Chain Heal -class spell_sha_chain_heal : public SpellScriptLoader +// 52031, 52033, 52034, 52035, 52036, 58778, 58779, 58780 - Mana Spring Totem +class spell_sha_mana_spring_totem : public SpellScriptLoader { public: - spell_sha_chain_heal() : SpellScriptLoader("spell_sha_chain_heal") { } + spell_sha_mana_spring_totem() : SpellScriptLoader("spell_sha_mana_spring_totem") { } - class spell_sha_chain_heal_SpellScript : public SpellScript + class spell_sha_mana_spring_totem_SpellScript : public SpellScript { - PrepareSpellScript(spell_sha_chain_heal_SpellScript); + PrepareSpellScript(spell_sha_mana_spring_totem_SpellScript); - bool Load() + bool Validate(SpellInfo const* /*spellInfo*/) { - firstHeal = true; - riptide = false; + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_MANA_SPRING_TOTEM_ENERGIZE)) + return false; return true; } - void HandleHeal(SpellEffIndex /*effIndex*/) + void HandleDummy(SpellEffIndex /*effIndex*/) { - if (firstHeal) - { - // Check if the target has Riptide - if (AuraEffect* aurEff = GetHitUnit()->GetAuraEffect(SPELL_AURA_PERIODIC_HEAL, SPELLFAMILY_SHAMAN, 0, 0, 0x10, GetCaster()->GetGUID())) - { - riptide = true; - // Consume it - GetHitUnit()->RemoveAura(aurEff->GetBase()); - } - firstHeal = false; - } - // Riptide increases the Chain Heal effect by 25% - if (riptide) - SetHitHeal(GetHitHeal() * 1.25f); + int32 damage = GetEffectValue(); + if (Unit* target = GetHitUnit()) + if (Unit* caster = GetCaster()) + if (target->getPowerType() == POWER_MANA) + caster->CastCustomSpell(target, SPELL_SHAMAN_MANA_SPRING_TOTEM_ENERGIZE, &damage, 0, 0, true, 0, 0, GetOriginalCaster()->GetGUID()); } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_sha_chain_heal_SpellScript::HandleHeal, EFFECT_0, SPELL_EFFECT_HEAL); + OnEffectHitTarget += SpellEffectFn(spell_sha_mana_spring_totem_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } - bool firstHeal; - bool riptide; }; SpellScript* GetSpellScript() const { - return new spell_sha_chain_heal_SpellScript(); + return new spell_sha_mana_spring_totem_SpellScript(); } }; -class spell_sha_flame_shock : public SpellScriptLoader +// 39610 - Mana Tide Totem +class spell_sha_mana_tide_totem : public SpellScriptLoader { public: - spell_sha_flame_shock() : SpellScriptLoader("spell_sha_flame_shock") { } + spell_sha_mana_tide_totem() : SpellScriptLoader("spell_sha_mana_tide_totem") { } - class spell_sha_flame_shock_AuraScript : public AuraScript + class spell_sha_mana_tide_totem_SpellScript : public SpellScript { - PrepareAuraScript(spell_sha_flame_shock_AuraScript); + PrepareSpellScript(spell_sha_mana_tide_totem_SpellScript); - bool Validate(SpellInfo const* /*spell*/) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(SHAMAN_LAVA_FLOWS_R1)) - return false; - if (!sSpellMgr->GetSpellInfo(SHAMAN_LAVA_FLOWS_TRIGGERED_R1)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_GLYPH_OF_MANA_TIDE) || !sSpellMgr->GetSpellInfo(SPELL_SHAMAN_MANA_TIDE_TOTEM)) return false; return true; } - void HandleDispel(DispelInfo* /*dispelInfo*/) + void HandleDummy(SpellEffIndex /*effIndex*/) { if (Unit* caster = GetCaster()) - // Lava Flows - if (AuraEffect const* aurEff = caster->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, ICON_ID_SHAMAN_LAVA_FLOW, EFFECT_0)) + if (Unit* unitTarget = GetHitUnit()) { - if (sSpellMgr->GetFirstSpellInChain(SHAMAN_LAVA_FLOWS_R1) != sSpellMgr->GetFirstSpellInChain(aurEff->GetId())) - return; - - uint8 rank = sSpellMgr->GetSpellRank(aurEff->GetId()); - caster->CastSpell(caster, sSpellMgr->GetSpellWithRank(SHAMAN_LAVA_FLOWS_TRIGGERED_R1, rank), true); + if (unitTarget->getPowerType() == POWER_MANA) + { + int32 effValue = GetEffectValue(); + // Glyph of Mana Tide + if (Unit* owner = caster->GetOwner()) + if (AuraEffect* dummy = owner->GetAuraEffect(SPELL_SHAMAN_GLYPH_OF_MANA_TIDE, 0)) + effValue += dummy->GetAmount(); + // Regenerate 6% of Total Mana Every 3 secs + int32 effBasePoints0 = int32(CalculatePct(unitTarget->GetMaxPower(POWER_MANA), effValue)); + caster->CastCustomSpell(unitTarget, SPELL_SHAMAN_MANA_TIDE_TOTEM, &effBasePoints0, NULL, NULL, true, NULL, NULL, GetOriginalCaster()->GetGUID()); + } } } void Register() { - AfterDispel += AuraDispelFn(spell_sha_flame_shock_AuraScript::HandleDispel); + OnEffectHitTarget += SpellEffectFn(spell_sha_mana_tide_totem_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; - AuraScript* GetAuraScript() const + SpellScript* GetSpellScript() const { - return new spell_sha_flame_shock_AuraScript(); + return new spell_sha_mana_tide_totem_SpellScript(); } }; +// 6495 - Sentry Totem class spell_sha_sentry_totem : public SpellScriptLoader { public: @@ -717,7 +710,7 @@ class spell_sha_sentry_totem : public SpellScriptLoader bool Validate(SpellInfo const* /*spell*/) { - if (!sSpellMgr->GetSpellInfo(SHAMAN_BIND_SIGHT)) + if (!sSpellMgr->GetSpellInfo(SPELL_SHAMAN_BIND_SIGHT)) return false; return true; } @@ -727,7 +720,7 @@ class spell_sha_sentry_totem : public SpellScriptLoader if (Unit* caster = GetCaster()) if (Creature* totem = caster->GetMap()->GetCreature(caster->m_SummonSlot[4])) if (totem->isTotem()) - caster->CastSpell(totem, SHAMAN_BIND_SIGHT, true); + caster->CastSpell(totem, SPELL_SHAMAN_BIND_SIGHT, true); } void AfterRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) @@ -752,19 +745,19 @@ class spell_sha_sentry_totem : public SpellScriptLoader void AddSC_shaman_spell_scripts() { + new spell_sha_ancestral_awakening_proc(); new spell_sha_astral_shift(); - new spell_sha_fire_nova(); - new spell_sha_mana_tide_totem(); - new spell_sha_earthbind_totem(); - new spell_sha_earthen_power(); new spell_sha_bloodlust(); - new spell_sha_heroism(); - new spell_sha_ancestral_awakening_proc(); + new spell_sha_chain_heal(); new spell_sha_cleansing_totem_pulse(); + new spell_sha_earthbind_totem(); + new spell_sha_earthen_power(); + new spell_sha_fire_nova(); + new spell_sha_flame_shock(); new spell_sha_healing_stream_totem(); - new spell_sha_mana_spring_totem(); + new spell_sha_heroism(); new spell_sha_lava_lash(); - new spell_sha_chain_heal(); - new spell_sha_flame_shock(); + new spell_sha_mana_spring_totem(); + new spell_sha_mana_tide_totem(); new spell_sha_sentry_totem(); } diff --git a/src/server/scripts/Spells/spell_warlock.cpp b/src/server/scripts/Spells/spell_warlock.cpp index 2070933173b..89c69733daf 100644 --- a/src/server/scripts/Spells/spell_warlock.cpp +++ b/src/server/scripts/Spells/spell_warlock.cpp @@ -28,141 +28,88 @@ enum WarlockSpells { - WARLOCK_DEMONIC_EMPOWERMENT_SUCCUBUS = 54435, - WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER = 54443, - WARLOCK_DEMONIC_EMPOWERMENT_FELGUARD = 54508, - WARLOCK_DEMONIC_EMPOWERMENT_FELHUNTER = 54509, - WARLOCK_DEMONIC_EMPOWERMENT_IMP = 54444, - WARLOCK_IMPROVED_HEALTHSTONE_R1 = 18692, - WARLOCK_IMPROVED_HEALTHSTONE_R2 = 18693, - WARLOCK_DEMONIC_CIRCLE_SUMMON = 48018, - WARLOCK_DEMONIC_CIRCLE_TELEPORT = 48020, - WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST = 62388, - WARLOCK_HAUNT = 48181, - WARLOCK_HAUNT_HEAL = 48210, - WARLOCK_UNSTABLE_AFFLICTION_DISPEL = 31117, - WARLOCK_CURSE_OF_DOOM_EFFECT = 18662, - WARLOCK_IMPROVED_HEALTH_FUNNEL_R1 = 18703, - WARLOCK_IMPROVED_HEALTH_FUNNEL_R2 = 18704, - WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R1 = 60955, - WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R2 = 60956, + SPELL_WARLOCK_CURSE_OF_DOOM_EFFECT = 18662, + SPELL_WARLOCK_DEMONIC_CIRCLE_SUMMON = 48018, + SPELL_WARLOCK_DEMONIC_CIRCLE_TELEPORT = 48020, + SPELL_WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST = 62388, + SPELL_WARLOCK_DEMONIC_EMPOWERMENT_SUCCUBUS = 54435, + SPELL_WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER = 54443, + SPELL_WARLOCK_DEMONIC_EMPOWERMENT_FELGUARD = 54508, + SPELL_WARLOCK_DEMONIC_EMPOWERMENT_FELHUNTER = 54509, + SPELL_WARLOCK_DEMONIC_EMPOWERMENT_IMP = 54444, + SPELL_WARLOCK_IMPROVED_HEALTHSTONE_R1 = 18692, + SPELL_WARLOCK_IMPROVED_HEALTHSTONE_R2 = 18693, + SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_R1 = 18703, + SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_R2 = 18704, + SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R1 = 60955, + SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R2 = 60956, + SPELL_WARLOCK_HAUNT = 48181, + SPELL_WARLOCK_HAUNT_HEAL = 48210, + SPELL_WARLOCK_LIFE_TAP_ENERGIZE = 31818, + SPELL_WARLOCK_LIFE_TAP_ENERGIZE_2 = 32553, + SPELL_WARLOCK_SOULSHATTER = 32835, + SPELL_WARLOCK_UNSTABLE_AFFLICTION_DISPEL = 31117 }; -class spell_warl_banish : public SpellScriptLoader +enum WarlockSpellIcons { -public: - spell_warl_banish() : SpellScriptLoader("spell_warl_banish") { } - - class spell_warl_banish_SpellScript : public SpellScript - { - PrepareSpellScript(spell_warl_banish_SpellScript); - - bool Load() - { - _removed = false; - return true; - } - - void HandleBanish() - { - if (Unit* target = GetHitUnit()) - { - if (target->GetAuraEffect(SPELL_AURA_SCHOOL_IMMUNITY, SPELLFAMILY_WARLOCK, 0, 0x08000000, 0)) - { - //No need to remove old aura since its removed due to not stack by current Banish aura - PreventHitDefaultEffect(EFFECT_0); - PreventHitDefaultEffect(EFFECT_1); - PreventHitDefaultEffect(EFFECT_2); - _removed = true; - } - } - } - - void RemoveAura() - { - if (_removed) - PreventHitAura(); - } - - void Register() - { - BeforeHit += SpellHitFn(spell_warl_banish_SpellScript::HandleBanish); - AfterHit += SpellHitFn(spell_warl_banish_SpellScript::RemoveAura); - } - - bool _removed; - }; - - SpellScript* GetSpellScript() const - { - return new spell_warl_banish_SpellScript(); - } + WARLOCK_ICON_ID_IMPROVED_LIFE_TAP = 208, + WARLOCK_ICON_ID_MANA_FEED = 1982 }; -// 47193 Demonic Empowerment -class spell_warl_demonic_empowerment : public SpellScriptLoader +// 710, 18647 - Banish +class spell_warl_banish : public SpellScriptLoader { public: - spell_warl_demonic_empowerment() : SpellScriptLoader("spell_warl_demonic_empowerment") { } + spell_warl_banish() : SpellScriptLoader("spell_warl_banish") { } - class spell_warl_demonic_empowerment_SpellScript : public SpellScript + class spell_warl_banish_SpellScript : public SpellScript { - PrepareSpellScript(spell_warl_demonic_empowerment_SpellScript); + PrepareSpellScript(spell_warl_banish_SpellScript); - bool Validate(SpellInfo const* /*spellEntry*/) + bool Load() { - if (!sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_EMPOWERMENT_SUCCUBUS) || !sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER) || !sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_EMPOWERMENT_FELGUARD) || !sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_EMPOWERMENT_FELHUNTER) || !sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_EMPOWERMENT_IMP)) - return false; + _removed = false; return true; } - void HandleScriptEffect(SpellEffIndex /*effIndex*/) + void HandleBanish() { - if (Creature* targetCreature = GetHitCreature()) + if (Unit* target = GetHitUnit()) { - if (targetCreature->isPet()) + if (target->GetAuraEffect(SPELL_AURA_SCHOOL_IMMUNITY, SPELLFAMILY_WARLOCK, 0, 0x08000000, 0)) { - CreatureTemplate const* ci = sObjectMgr->GetCreatureTemplate(targetCreature->GetEntry()); - switch (ci->family) - { - case CREATURE_FAMILY_SUCCUBUS: - targetCreature->CastSpell(targetCreature, WARLOCK_DEMONIC_EMPOWERMENT_SUCCUBUS, true); - break; - case CREATURE_FAMILY_VOIDWALKER: - { - SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER); - int32 hp = int32(targetCreature->CountPctFromMaxHealth(GetCaster()->CalculateSpellDamage(targetCreature, spellInfo, 0))); - targetCreature->CastCustomSpell(targetCreature, WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER, &hp, NULL, NULL, true); - //unitTarget->CastSpell(unitTarget, 54441, true); - break; - } - case CREATURE_FAMILY_FELGUARD: - targetCreature->CastSpell(targetCreature, WARLOCK_DEMONIC_EMPOWERMENT_FELGUARD, true); - break; - case CREATURE_FAMILY_FELHUNTER: - targetCreature->CastSpell(targetCreature, WARLOCK_DEMONIC_EMPOWERMENT_FELHUNTER, true); - break; - case CREATURE_FAMILY_IMP: - targetCreature->CastSpell(targetCreature, WARLOCK_DEMONIC_EMPOWERMENT_IMP, true); - break; - } + // No need to remove old aura since its removed due to not stack by current Banish aura + PreventHitDefaultEffect(EFFECT_0); + PreventHitDefaultEffect(EFFECT_1); + PreventHitDefaultEffect(EFFECT_2); + _removed = true; } } } + void RemoveAura() + { + if (_removed) + PreventHitAura(); + } + void Register() { - OnEffectHitTarget += SpellEffectFn(spell_warl_demonic_empowerment_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); + BeforeHit += SpellHitFn(spell_warl_banish_SpellScript::HandleBanish); + AfterHit += SpellHitFn(spell_warl_banish_SpellScript::RemoveAura); } + + bool _removed; }; SpellScript* GetSpellScript() const { - return new spell_warl_demonic_empowerment_SpellScript(); + return new spell_warl_banish_SpellScript(); } }; -// 6201 Create Healthstone (and ranks) +// 6201 - Create Healthstone (and ranks) class spell_warl_create_healthstone : public SpellScriptLoader { public: @@ -174,9 +121,9 @@ class spell_warl_create_healthstone : public SpellScriptLoader static uint32 const iTypes[8][3]; - bool Validate(SpellInfo const* /*spellEntry*/) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (!sSpellMgr->GetSpellInfo(WARLOCK_IMPROVED_HEALTHSTONE_R1) || !sSpellMgr->GetSpellInfo(WARLOCK_IMPROVED_HEALTHSTONE_R2)) + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_IMPROVED_HEALTHSTONE_R1) || !sSpellMgr->GetSpellInfo(SPELL_WARLOCK_IMPROVED_HEALTHSTONE_R2)) return false; return true; } @@ -204,8 +151,12 @@ class spell_warl_create_healthstone : public SpellScriptLoader { switch (aurEff->GetId()) { - case WARLOCK_IMPROVED_HEALTHSTONE_R1: rank = 1; break; - case WARLOCK_IMPROVED_HEALTHSTONE_R2: rank = 2; break; + case SPELL_WARLOCK_IMPROVED_HEALTHSTONE_R1: + rank = 1; + break; + case SPELL_WARLOCK_IMPROVED_HEALTHSTONE_R2: + rank = 2; + break; default: sLog->outError(LOG_FILTER_SPELLS_AURAS, "Unknown rank of Improved Healthstone id: %d", aurEff->GetId()); break; @@ -241,142 +192,336 @@ uint32 const spell_warl_create_healthstone::spell_warl_create_healthstone_SpellS {36892, 36893, 36894} // Fel Healthstone }; -// 47422 Everlasting Affliction -class spell_warl_everlasting_affliction : public SpellScriptLoader +// -603 - Curse of Doom +class spell_warl_curse_of_doom : public SpellScriptLoader { public: - spell_warl_everlasting_affliction() : SpellScriptLoader("spell_warl_everlasting_affliction") { } + spell_warl_curse_of_doom() : SpellScriptLoader("spell_warl_curse_of_doom") { } - class spell_warl_everlasting_affliction_SpellScript : public SpellScript + class spell_warl_curse_of_doom_AuraScript : public AuraScript { - PrepareSpellScript(spell_warl_everlasting_affliction_SpellScript); + PrepareAuraScript(spell_warl_curse_of_doom_AuraScript); - void HandleScriptEffect(SpellEffIndex /*effIndex*/) + bool Validate(SpellInfo const* /*spell*/) { - if (Unit* unitTarget = GetHitUnit()) - // Refresh corruption on target - if (AuraEffect* aur = unitTarget->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_WARLOCK, 0x2, 0, 0, GetCaster()->GetGUID())) - aur->GetBase()->RefreshDuration(); + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_CURSE_OF_DOOM_EFFECT)) + return false; + return true; + } + + bool Load() + { + return GetCaster() && GetCaster()->GetTypeId() == TYPEID_PLAYER; + } + + void OnRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) + { + if (!GetCaster()) + return; + + AuraRemoveMode removeMode = GetTargetApplication()->GetRemoveMode(); + if (removeMode != AURA_REMOVE_BY_DEATH || !IsExpired()) + return; + + if (GetCaster()->ToPlayer()->isHonorOrXPTarget(GetTarget())) + GetCaster()->CastSpell(GetTarget(), SPELL_WARLOCK_CURSE_OF_DOOM_EFFECT, true, NULL, aurEff); } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_warl_everlasting_affliction_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); + AfterEffectRemove += AuraEffectRemoveFn(spell_warl_curse_of_doom_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE, AURA_EFFECT_HANDLE_REAL); } }; - SpellScript* GetSpellScript() const + AuraScript* GetAuraScript() const { - return new spell_warl_everlasting_affliction_SpellScript(); + return new spell_warl_curse_of_doom_AuraScript(); } }; -// 18541 Ritual of Doom Effect -class spell_warl_ritual_of_doom_effect : public SpellScriptLoader +// 48018 - Demonic Circle Summon +class spell_warl_demonic_circle_summon : public SpellScriptLoader { -public: - spell_warl_ritual_of_doom_effect() : SpellScriptLoader("spell_warl_ritual_of_doom_effect") { } + public: + spell_warl_demonic_circle_summon() : SpellScriptLoader("spell_warl_demonic_circle_summon") { } + + class spell_warl_demonic_circle_summon_AuraScript : public AuraScript + { + PrepareAuraScript(spell_warl_demonic_circle_summon_AuraScript); + + void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes mode) + { + // If effect is removed by expire remove the summoned demonic circle too. + if (!(mode & AURA_EFFECT_HANDLE_REAPPLY)) + GetTarget()->RemoveGameObject(GetId(), true); + + GetTarget()->RemoveAura(SPELL_WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST); + } + + void HandleDummyTick(AuraEffect const* /*aurEff*/) + { + if (GameObject* circle = GetTarget()->GetGameObject(GetId())) + { + // Here we check if player is in demonic circle teleport range, if so add + // WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST; allowing him to cast the WARLOCK_DEMONIC_CIRCLE_TELEPORT. + // If not in range remove the WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST. + + SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_CIRCLE_TELEPORT); + + if (GetTarget()->IsWithinDist(circle, spellInfo->GetMaxRange(true))) + { + if (!GetTarget()->HasAura(SPELL_WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST)) + GetTarget()->CastSpell(GetTarget(), SPELL_WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST, true); + } + else + GetTarget()->RemoveAura(SPELL_WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST); + } + } - class spell_warl_ritual_of_doom_effect_SpellScript : public SpellScript - { - PrepareSpellScript(spell_warl_ritual_of_doom_effect_SpellScript); + void Register() + { + OnEffectRemove += AuraEffectApplyFn(spell_warl_demonic_circle_summon_AuraScript::HandleRemove, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK); + OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_demonic_circle_summon_AuraScript::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY); + } + }; - void HandleDummy(SpellEffIndex /*effIndex*/) + AuraScript* GetAuraScript() const { - Unit* caster = GetCaster(); - caster->CastSpell(caster, GetEffectValue(), true); + return new spell_warl_demonic_circle_summon_AuraScript(); } +}; - void Register() +// 48020 - Demonic Circle Teleport +class spell_warl_demonic_circle_teleport : public SpellScriptLoader +{ + public: + spell_warl_demonic_circle_teleport() : SpellScriptLoader("spell_warl_demonic_circle_teleport") { } + + class spell_warl_demonic_circle_teleport_AuraScript : public AuraScript { - OnEffectHit += SpellEffectFn(spell_warl_ritual_of_doom_effect_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); - } - }; + PrepareAuraScript(spell_warl_demonic_circle_teleport_AuraScript); - SpellScript* GetSpellScript() const - { - return new spell_warl_ritual_of_doom_effect_SpellScript(); - } + void HandleTeleport(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) + { + if (Player* player = GetTarget()->ToPlayer()) + { + if (GameObject* circle = player->GetGameObject(SPELL_WARLOCK_DEMONIC_CIRCLE_SUMMON)) + { + player->NearTeleportTo(circle->GetPositionX(), circle->GetPositionY(), circle->GetPositionZ(), circle->GetOrientation()); + player->RemoveMovementImpairingAuras(); + } + } + } + + void Register() + { + OnEffectApply += AuraEffectApplyFn(spell_warl_demonic_circle_teleport_AuraScript::HandleTeleport, EFFECT_0, SPELL_AURA_MECHANIC_IMMUNITY, AURA_EFFECT_HANDLE_REAL); + } + }; + + AuraScript* GetAuraScript() const + { + return new spell_warl_demonic_circle_teleport_AuraScript(); + } }; -class spell_warl_seed_of_corruption : public SpellScriptLoader +// 47193 - Demonic Empowerment +class spell_warl_demonic_empowerment : public SpellScriptLoader { public: - spell_warl_seed_of_corruption() : SpellScriptLoader("spell_warl_seed_of_corruption") { } + spell_warl_demonic_empowerment() : SpellScriptLoader("spell_warl_demonic_empowerment") { } - class spell_warl_seed_of_corruption_SpellScript : public SpellScript + class spell_warl_demonic_empowerment_SpellScript : public SpellScript { - PrepareSpellScript(spell_warl_seed_of_corruption_SpellScript); + PrepareSpellScript(spell_warl_demonic_empowerment_SpellScript); - void FilterTargets(std::list<WorldObject*>& targets) + bool Validate(SpellInfo const* /*spellInfo*/) { - if (GetExplTargetUnit()) - targets.remove(GetExplTargetUnit()); + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_EMPOWERMENT_SUCCUBUS) || !sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER) || !sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_EMPOWERMENT_FELGUARD) || !sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_EMPOWERMENT_FELHUNTER) || !sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_EMPOWERMENT_IMP)) + return false; + return true; + } + + void HandleScriptEffect(SpellEffIndex /*effIndex*/) + { + if (Creature* targetCreature = GetHitCreature()) + { + if (targetCreature->isPet()) + { + CreatureTemplate const* ci = sObjectMgr->GetCreatureTemplate(targetCreature->GetEntry()); + switch (ci->family) + { + case CREATURE_FAMILY_SUCCUBUS: + targetCreature->CastSpell(targetCreature, SPELL_WARLOCK_DEMONIC_EMPOWERMENT_SUCCUBUS, true); + break; + case CREATURE_FAMILY_VOIDWALKER: + { + SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(SPELL_WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER); + int32 hp = int32(targetCreature->CountPctFromMaxHealth(GetCaster()->CalculateSpellDamage(targetCreature, spellInfo, 0))); + targetCreature->CastCustomSpell(targetCreature, SPELL_WARLOCK_DEMONIC_EMPOWERMENT_VOIDWALKER, &hp, NULL, NULL, true); + //unitTarget->CastSpell(unitTarget, 54441, true); + break; + } + case CREATURE_FAMILY_FELGUARD: + targetCreature->CastSpell(targetCreature, SPELL_WARLOCK_DEMONIC_EMPOWERMENT_FELGUARD, true); + break; + case CREATURE_FAMILY_FELHUNTER: + targetCreature->CastSpell(targetCreature, SPELL_WARLOCK_DEMONIC_EMPOWERMENT_FELHUNTER, true); + break; + case CREATURE_FAMILY_IMP: + targetCreature->CastSpell(targetCreature, SPELL_WARLOCK_DEMONIC_EMPOWERMENT_IMP, true); + break; + } + } + } } void Register() { - OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_warl_seed_of_corruption_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_DEST_AREA_ENEMY); + OnEffectHitTarget += SpellEffectFn(spell_warl_demonic_empowerment_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); } }; SpellScript* GetSpellScript() const { - return new spell_warl_seed_of_corruption_SpellScript(); + return new spell_warl_demonic_empowerment_SpellScript(); } }; -enum Soulshatter +// 47422 - Everlasting Affliction +class spell_warl_everlasting_affliction : public SpellScriptLoader { - SPELL_SOULSHATTER = 32835, + public: + spell_warl_everlasting_affliction() : SpellScriptLoader("spell_warl_everlasting_affliction") { } + + class spell_warl_everlasting_affliction_SpellScript : public SpellScript + { + PrepareSpellScript(spell_warl_everlasting_affliction_SpellScript); + + void HandleScriptEffect(SpellEffIndex /*effIndex*/) + { + if (Unit* unitTarget = GetHitUnit()) + // Refresh corruption on target + if (AuraEffect* aur = unitTarget->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_WARLOCK, 0x2, 0, 0, GetCaster()->GetGUID())) + aur->GetBase()->RefreshDuration(); + } + + void Register() + { + OnEffectHitTarget += SpellEffectFn(spell_warl_everlasting_affliction_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); + } + }; + + SpellScript* GetSpellScript() const + { + return new spell_warl_everlasting_affliction_SpellScript(); + } }; -class spell_warl_soulshatter : public SpellScriptLoader +// -48181 - Haunt +class spell_warl_haunt : public SpellScriptLoader { public: - spell_warl_soulshatter() : SpellScriptLoader("spell_warl_soulshatter") { } + spell_warl_haunt() : SpellScriptLoader("spell_warl_haunt") { } - class spell_warl_soulshatter_SpellScript : public SpellScript + class spell_warl_haunt_SpellScript : public SpellScript { - PrepareSpellScript(spell_warl_soulshatter_SpellScript); + PrepareSpellScript(spell_warl_haunt_SpellScript); + + void HandleOnHit() + { + if (Aura* aura = GetHitAura()) + if (AuraEffect* aurEff = aura->GetEffect(EFFECT_1)) + aurEff->SetAmount(CalculatePct(aurEff->GetAmount(), GetHitDamage())); + } + + void Register() + { + OnHit += SpellHitFn(spell_warl_haunt_SpellScript::HandleOnHit); + } + }; + + class spell_warl_haunt_AuraScript : public AuraScript + { + PrepareAuraScript(spell_warl_haunt_AuraScript); bool Validate(SpellInfo const* /*spell*/) { - if (!sSpellMgr->GetSpellInfo(SPELL_SOULSHATTER)) + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_HAUNT_HEAL)) return false; return true; } - void HandleDummy(SpellEffIndex /*effIndex*/) + void HandleRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) { - Unit* caster = GetCaster(); - if (Unit* target = GetHitUnit()) + if (Unit* caster = GetCaster()) { - if (target->CanHaveThreatList() && target->getThreatManager().getThreat(caster) > 0.0f) - caster->CastSpell(target, SPELL_SOULSHATTER, true); + int32 amount = aurEff->GetAmount(); + GetTarget()->CastCustomSpell(caster, SPELL_WARLOCK_HAUNT_HEAL, &amount, NULL, NULL, true, NULL, aurEff, GetCasterGUID()); } } void Register() { - OnEffectHitTarget += SpellEffectFn(spell_warl_soulshatter_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + OnEffectRemove += AuraEffectApplyFn(spell_warl_haunt_AuraScript::HandleRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK); } }; SpellScript* GetSpellScript() const { - return new spell_warl_soulshatter_SpellScript(); + return new spell_warl_haunt_SpellScript(); + } + + AuraScript* GetAuraScript() const + { + return new spell_warl_haunt_AuraScript(); } }; -enum LifeTap +// -755 - Health Funnel +class spell_warl_health_funnel : public SpellScriptLoader { - SPELL_LIFE_TAP_ENERGIZE = 31818, - SPELL_LIFE_TAP_ENERGIZE_2 = 32553, - ICON_ID_IMPROVED_LIFE_TAP = 208, - ICON_ID_MANA_FEED = 1982, + public: + spell_warl_health_funnel() : SpellScriptLoader("spell_warl_health_funnel") { } + + class spell_warl_health_funnel_AuraScript : public AuraScript + { + PrepareAuraScript(spell_warl_health_funnel_AuraScript); + + void ApplyEffect(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) + { + Unit* caster = GetCaster(); + if (!caster) + return; + + Unit* target = GetTarget(); + if (caster->HasAura(SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_R2)) + target->CastSpell(target, SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R2, true); + else if (caster->HasAura(SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_R1)) + target->CastSpell(target, SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R1, true); + } + + void RemoveEffect(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) + { + Unit* target = GetTarget(); + target->RemoveAurasDueToSpell(SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R1); + target->RemoveAurasDueToSpell(SPELL_WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R2); + } + + void Register() + { + OnEffectRemove += AuraEffectRemoveFn(spell_warl_health_funnel_AuraScript::RemoveEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL); + OnEffectApply += AuraEffectApplyFn(spell_warl_health_funnel_AuraScript::ApplyEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL); + } + }; + + AuraScript* GetAuraScript() const + { + return new spell_warl_health_funnel_AuraScript(); + } }; +// -1454 - Life Tap class spell_warl_life_tap : public SpellScriptLoader { public: @@ -393,7 +538,7 @@ class spell_warl_life_tap : public SpellScriptLoader bool Validate(SpellInfo const* /*spell*/) { - if (!sSpellMgr->GetSpellInfo(SPELL_LIFE_TAP_ENERGIZE) || !sSpellMgr->GetSpellInfo(SPELL_LIFE_TAP_ENERGIZE_2)) + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_LIFE_TAP_ENERGIZE) || !sSpellMgr->GetSpellInfo(SPELL_WARLOCK_LIFE_TAP_ENERGIZE_2)) return false; return true; } @@ -410,20 +555,20 @@ class spell_warl_life_tap : public SpellScriptLoader target->ModifyHealth(-damage); // Improved Life Tap mod - if (AuraEffect const* aurEff = caster->GetDummyAuraEffect(SPELLFAMILY_WARLOCK, ICON_ID_IMPROVED_LIFE_TAP, 0)) + if (AuraEffect const* aurEff = caster->GetDummyAuraEffect(SPELLFAMILY_WARLOCK, WARLOCK_ICON_ID_IMPROVED_LIFE_TAP, 0)) AddPct(mana, aurEff->GetAmount()); - caster->CastCustomSpell(target, SPELL_LIFE_TAP_ENERGIZE, &mana, NULL, NULL, false); + caster->CastCustomSpell(target, SPELL_WARLOCK_LIFE_TAP_ENERGIZE, &mana, NULL, NULL, false); // Mana Feed int32 manaFeedVal = 0; - if (AuraEffect const* aurEff = caster->GetAuraEffect(SPELL_AURA_ADD_FLAT_MODIFIER, SPELLFAMILY_WARLOCK, ICON_ID_MANA_FEED, 0)) + if (AuraEffect const* aurEff = caster->GetAuraEffect(SPELL_AURA_ADD_FLAT_MODIFIER, SPELLFAMILY_WARLOCK, WARLOCK_ICON_ID_MANA_FEED, 0)) manaFeedVal = aurEff->GetAmount(); if (manaFeedVal > 0) { ApplyPct(manaFeedVal, mana); - caster->CastCustomSpell(caster, SPELL_LIFE_TAP_ENERGIZE_2, &manaFeedVal, NULL, NULL, true, NULL); + caster->CastCustomSpell(caster, SPELL_WARLOCK_LIFE_TAP_ENERGIZE_2, &manaFeedVal, NULL, NULL, true, NULL); } } } @@ -448,149 +593,102 @@ class spell_warl_life_tap : public SpellScriptLoader } }; -class spell_warl_demonic_circle_summon : public SpellScriptLoader +// 18541 - Ritual of Doom Effect +class spell_warl_ritual_of_doom_effect : public SpellScriptLoader { public: - spell_warl_demonic_circle_summon() : SpellScriptLoader("spell_warl_demonic_circle_summon") { } + spell_warl_ritual_of_doom_effect() : SpellScriptLoader("spell_warl_ritual_of_doom_effect") { } - class spell_warl_demonic_circle_summon_AuraScript : public AuraScript + class spell_warl_ritual_of_doom_effect_SpellScript : public SpellScript { - PrepareAuraScript(spell_warl_demonic_circle_summon_AuraScript); - - void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes mode) - { - // If effect is removed by expire remove the summoned demonic circle too. - if (!(mode & AURA_EFFECT_HANDLE_REAPPLY)) - GetTarget()->RemoveGameObject(GetId(), true); + PrepareSpellScript(spell_warl_ritual_of_doom_effect_SpellScript); - GetTarget()->RemoveAura(WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST); - } - - void HandleDummyTick(AuraEffect const* /*aurEff*/) + void HandleDummy(SpellEffIndex /*effIndex*/) { - if (GameObject* circle = GetTarget()->GetGameObject(GetId())) - { - // Here we check if player is in demonic circle teleport range, if so add - // WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST; allowing him to cast the WARLOCK_DEMONIC_CIRCLE_TELEPORT. - // If not in range remove the WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST. - - SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(WARLOCK_DEMONIC_CIRCLE_TELEPORT); - - if (GetTarget()->IsWithinDist(circle, spellInfo->GetMaxRange(true))) - { - if (!GetTarget()->HasAura(WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST)) - GetTarget()->CastSpell(GetTarget(), WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST, true); - } - else - GetTarget()->RemoveAura(WARLOCK_DEMONIC_CIRCLE_ALLOW_CAST); - } + Unit* caster = GetCaster(); + caster->CastSpell(caster, GetEffectValue(), true); } void Register() { - OnEffectRemove += AuraEffectApplyFn(spell_warl_demonic_circle_summon_AuraScript::HandleRemove, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK); - OnEffectPeriodic += AuraEffectPeriodicFn(spell_warl_demonic_circle_summon_AuraScript::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY); + OnEffectHit += SpellEffectFn(spell_warl_ritual_of_doom_effect_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; - AuraScript* GetAuraScript() const + SpellScript* GetSpellScript() const { - return new spell_warl_demonic_circle_summon_AuraScript(); + return new spell_warl_ritual_of_doom_effect_SpellScript(); } }; -class spell_warl_demonic_circle_teleport : public SpellScriptLoader +// -27285 - Seed of Corruption +class spell_warl_seed_of_corruption : public SpellScriptLoader { public: - spell_warl_demonic_circle_teleport() : SpellScriptLoader("spell_warl_demonic_circle_teleport") { } + spell_warl_seed_of_corruption() : SpellScriptLoader("spell_warl_seed_of_corruption") { } - class spell_warl_demonic_circle_teleport_AuraScript : public AuraScript + class spell_warl_seed_of_corruption_SpellScript : public SpellScript { - PrepareAuraScript(spell_warl_demonic_circle_teleport_AuraScript); + PrepareSpellScript(spell_warl_seed_of_corruption_SpellScript); - void HandleTeleport(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) + void FilterTargets(std::list<WorldObject*>& targets) { - if (Player* player = GetTarget()->ToPlayer()) - { - if (GameObject* circle = player->GetGameObject(WARLOCK_DEMONIC_CIRCLE_SUMMON)) - { - player->NearTeleportTo(circle->GetPositionX(), circle->GetPositionY(), circle->GetPositionZ(), circle->GetOrientation()); - player->RemoveMovementImpairingAuras(); - } - } + if (GetExplTargetUnit()) + targets.remove(GetExplTargetUnit()); } void Register() { - OnEffectApply += AuraEffectApplyFn(spell_warl_demonic_circle_teleport_AuraScript::HandleTeleport, EFFECT_0, SPELL_AURA_MECHANIC_IMMUNITY, AURA_EFFECT_HANDLE_REAL); + OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_warl_seed_of_corruption_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_DEST_AREA_ENEMY); } }; - AuraScript* GetAuraScript() const + SpellScript* GetSpellScript() const { - return new spell_warl_demonic_circle_teleport_AuraScript(); + return new spell_warl_seed_of_corruption_SpellScript(); } }; -class spell_warl_haunt : public SpellScriptLoader +// 29858 - Soulshatter +class spell_warl_soulshatter : public SpellScriptLoader { public: - spell_warl_haunt() : SpellScriptLoader("spell_warl_haunt") { } - - class spell_warl_haunt_SpellScript : public SpellScript - { - PrepareSpellScript(spell_warl_haunt_SpellScript); - - void HandleOnHit() - { - if (Aura* aura = GetHitAura()) - if (AuraEffect* aurEff = aura->GetEffect(EFFECT_1)) - aurEff->SetAmount(CalculatePct(aurEff->GetAmount(), GetHitDamage())); - } - - void Register() - { - OnHit += SpellHitFn(spell_warl_haunt_SpellScript::HandleOnHit); - } - }; + spell_warl_soulshatter() : SpellScriptLoader("spell_warl_soulshatter") { } - class spell_warl_haunt_AuraScript : public AuraScript + class spell_warl_soulshatter_SpellScript : public SpellScript { - PrepareAuraScript(spell_warl_haunt_AuraScript); + PrepareSpellScript(spell_warl_soulshatter_SpellScript); bool Validate(SpellInfo const* /*spell*/) { - if (!sSpellMgr->GetSpellInfo(WARLOCK_HAUNT_HEAL)) + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_SOULSHATTER)) return false; return true; } - void HandleRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) + void HandleDummy(SpellEffIndex /*effIndex*/) { - if (Unit* caster = GetCaster()) + Unit* caster = GetCaster(); + if (Unit* target = GetHitUnit()) { - int32 amount = aurEff->GetAmount(); - GetTarget()->CastCustomSpell(caster, WARLOCK_HAUNT_HEAL, &amount, NULL, NULL, true, NULL, aurEff, GetCasterGUID()); + if (target->CanHaveThreatList() && target->getThreatManager().getThreat(caster) > 0.0f) + caster->CastSpell(target, SPELL_WARLOCK_SOULSHATTER, true); } } void Register() { - OnEffectRemove += AuraEffectApplyFn(spell_warl_haunt_AuraScript::HandleRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK); + OnEffectHitTarget += SpellEffectFn(spell_warl_soulshatter_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); } }; SpellScript* GetSpellScript() const { - return new spell_warl_haunt_SpellScript(); - } - - AuraScript* GetAuraScript() const - { - return new spell_warl_haunt_AuraScript(); + return new spell_warl_soulshatter_SpellScript(); } }; +// -30108 - Unstable Affliction class spell_warl_unstable_affliction : public SpellScriptLoader { public: @@ -602,7 +700,7 @@ class spell_warl_unstable_affliction : public SpellScriptLoader bool Validate(SpellInfo const* /*spell*/) { - if (!sSpellMgr->GetSpellInfo(WARLOCK_UNSTABLE_AFFLICTION_DISPEL)) + if (!sSpellMgr->GetSpellInfo(SPELL_WARLOCK_UNSTABLE_AFFLICTION_DISPEL)) return false; return true; } @@ -614,7 +712,7 @@ class spell_warl_unstable_affliction : public SpellScriptLoader { int32 damage = aurEff->GetAmount() * 9; // backfire damage and silence - caster->CastCustomSpell(dispelInfo->GetDispeller(), WARLOCK_UNSTABLE_AFFLICTION_DISPEL, &damage, NULL, NULL, true, NULL, aurEff); + caster->CastCustomSpell(dispelInfo->GetDispeller(), SPELL_WARLOCK_UNSTABLE_AFFLICTION_DISPEL, &damage, NULL, NULL, true, NULL, aurEff); } } @@ -630,108 +728,20 @@ class spell_warl_unstable_affliction : public SpellScriptLoader } }; -class spell_warl_curse_of_doom : public SpellScriptLoader -{ - public: - spell_warl_curse_of_doom() : SpellScriptLoader("spell_warl_curse_of_doom") { } - - class spell_warl_curse_of_doom_AuraScript : public AuraScript - { - PrepareAuraScript(spell_warl_curse_of_doom_AuraScript); - - bool Validate(SpellInfo const* /*spell*/) - { - if (!sSpellMgr->GetSpellInfo(WARLOCK_CURSE_OF_DOOM_EFFECT)) - return false; - return true; - } - - bool Load() - { - return GetCaster() && GetCaster()->GetTypeId() == TYPEID_PLAYER; - } - - void OnRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) - { - if (!GetCaster()) - return; - - AuraRemoveMode removeMode = GetTargetApplication()->GetRemoveMode(); - if (removeMode != AURA_REMOVE_BY_DEATH || !IsExpired()) - return; - - if (GetCaster()->ToPlayer()->isHonorOrXPTarget(GetTarget())) - GetCaster()->CastSpell(GetTarget(), WARLOCK_CURSE_OF_DOOM_EFFECT, true, NULL, aurEff); - } - - void Register() - { - AfterEffectRemove += AuraEffectRemoveFn(spell_warl_curse_of_doom_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE, AURA_EFFECT_HANDLE_REAL); - } - }; - - AuraScript* GetAuraScript() const - { - return new spell_warl_curse_of_doom_AuraScript(); - } -}; - -class spell_warl_health_funnel : public SpellScriptLoader -{ -public: - spell_warl_health_funnel() : SpellScriptLoader("spell_warl_health_funnel") { } - - class spell_warl_health_funnel_AuraScript : public AuraScript - { - PrepareAuraScript(spell_warl_health_funnel_AuraScript); - - void ApplyEffect(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) - { - Unit* caster = GetCaster(); - if (!caster) - return; - - Unit* target = GetTarget(); - if (caster->HasAura(WARLOCK_IMPROVED_HEALTH_FUNNEL_R2)) - target->CastSpell(target, WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R2, true); - else if (caster->HasAura(WARLOCK_IMPROVED_HEALTH_FUNNEL_R1)) - target->CastSpell(target, WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R1, true); - } - - void RemoveEffect(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) - { - Unit* target = GetTarget(); - target->RemoveAurasDueToSpell(WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R1); - target->RemoveAurasDueToSpell(WARLOCK_IMPROVED_HEALTH_FUNNEL_BUFF_R2); - } - - void Register() - { - OnEffectRemove += AuraEffectRemoveFn(spell_warl_health_funnel_AuraScript::RemoveEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL); - OnEffectApply += AuraEffectApplyFn(spell_warl_health_funnel_AuraScript::ApplyEffect, EFFECT_0, SPELL_AURA_PERIODIC_HEAL, AURA_EFFECT_HANDLE_REAL); - } - }; - - AuraScript* GetAuraScript() const - { - return new spell_warl_health_funnel_AuraScript(); - } -}; - void AddSC_warlock_spell_scripts() { new spell_warl_banish(); - new spell_warl_demonic_empowerment(); new spell_warl_create_healthstone(); + new spell_warl_curse_of_doom(); + new spell_warl_demonic_circle_summon(); + new spell_warl_demonic_circle_teleport(); + new spell_warl_demonic_empowerment(); new spell_warl_everlasting_affliction(); + new spell_warl_haunt(); + new spell_warl_health_funnel(); + new spell_warl_life_tap(); new spell_warl_ritual_of_doom_effect(); new spell_warl_seed_of_corruption(); new spell_warl_soulshatter(); - new spell_warl_life_tap(); - new spell_warl_demonic_circle_summon(); - new spell_warl_demonic_circle_teleport(); - new spell_warl_haunt(); new spell_warl_unstable_affliction(); - new spell_warl_curse_of_doom(); - new spell_warl_health_funnel(); } |