refactor(Scripts/Northrend): code cleanup (part 11) (#7103)

This commit is contained in:
Francesco Borzì
2021-08-07 17:48:57 +02:00
committed by GitHub
parent 160dc0784e
commit 0dfab5d69b
28 changed files with 101 additions and 134 deletions
@@ -148,9 +148,9 @@ const Position PosSummonDead[5] =
{2664.8f, -3340.7f, 268.23f, 3.7f} {2664.8f, -3340.7f, 268.23f, 3.7f}
}; };
const Position PosGroundLivingSide = {2691.2f, -3387.0f, 267.68f, 1.52f}; //const Position PosGroundLivingSide = {2691.2f, -3387.0f, 267.68f, 1.52f};
const Position PosGroundDeadSide = {2693.5f, -3334.6f, 267.68f, 4.67f}; //const Position PosGroundDeadSide = {2693.5f, -3334.6f, 267.68f, 4.67f};
const Position PosPlatform = {2640.5f, -3360.6f, 285.26f, 0.0f}; //const Position PosPlatform = {2640.5f, -3360.6f, 285.26f, 0.0f};
#define POS_Y_GATE -3360.78f #define POS_Y_GATE -3360.78f
#define POS_Y_WEST -3285.0f #define POS_Y_WEST -3285.0f
@@ -646,7 +646,7 @@ public:
} }
// Horseman handling // Horseman handling
if (bossId == BOSS_HORSEMAN && _horsemanLoadDoneState == false) if (bossId == BOSS_HORSEMAN && !_horsemanLoadDoneState)
{ {
if (state == DONE) if (state == DONE)
{ {
@@ -491,9 +491,9 @@ public:
continue; continue;
Position plrpos; Position plrpos;
float angle = CenterPos.GetAngle(pPlayer); float playerAngle = CenterPos.GetAngle(pPlayer);
plrpos.m_positionX = CenterPos.GetPositionX() + cos(angle) * 5.0f; plrpos.m_positionX = CenterPos.GetPositionX() + cos(playerAngle) * 5.0f;
plrpos.m_positionY = CenterPos.GetPositionY() + sin(angle) * 5.0f; plrpos.m_positionY = CenterPos.GetPositionY() + sin(playerAngle) * 5.0f;
plrpos.m_positionZ = CenterPos.GetPositionZ() + 18.0f; plrpos.m_positionZ = CenterPos.GetPositionZ() + 18.0f;
plrpos.m_orientation = plrpos.GetAngle(&CenterPos); plrpos.m_orientation = plrpos.GetAngle(&CenterPos);
@@ -3,7 +3,6 @@
*/ */
#include "nexus.h" #include "nexus.h"
#include "Player.h"
#include "ScriptedCreature.h" #include "ScriptedCreature.h"
#include "ScriptMgr.h" #include "ScriptMgr.h"
@@ -43,7 +42,7 @@ enum Events
enum Misc enum Misc
{ {
NPC_CRYSTAL_SPIKE = 27099, NPC_CRYSTAL_SPIKE = 27099,
NPC_CRYSTALLINE_TANGLER = 32665, // NPC_CRYSTALLINE_TANGLER = 32665,
GO_CRYSTAL_SPIKE = 188537 GO_CRYSTAL_SPIKE = 188537
}; };
@@ -23,7 +23,7 @@ enum Spells
}; };
#define SPELL_EMPOWERED_ARCANE_EXPLOSION DUNGEON_MODE(SPELL_EMPOWERED_ARCANE_EXPLOSION_N, SPELL_EMPOWERED_ARCANE_EXPLOSION_H) #define SPELL_EMPOWERED_ARCANE_EXPLOSION DUNGEON_MODE(SPELL_EMPOWERED_ARCANE_EXPLOSION_N, SPELL_EMPOWERED_ARCANE_EXPLOSION_H)
#define SPELL_TIME_BOMB DUNGEON_MODE(SPELL_TIME_BOMB_N, SPELL_TIME_BOMB_H) //#define SPELL_TIME_BOMB DUNGEON_MODE(SPELL_TIME_BOMB_N, SPELL_TIME_BOMB_H)
enum UromNPCs enum UromNPCs
{ {
@@ -184,7 +184,7 @@ public:
openedMenu[player->GetGUID()] = true; openedMenu[player->GetGUID()] = true;
} }
if (openedMenu[player->GetGUID()] != true) if (!openedMenu[player->GetGUID()])
{ {
AddGossipItemFor(player, 9708, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF); AddGossipItemFor(player, 9708, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
SendGossipMenuFor(player, GOSSIP_TEXTID_DRAKES, creature->GetGUID()); SendGossipMenuFor(player, GOSSIP_TEXTID_DRAKES, creature->GetGUID());
@@ -1,4 +1,7 @@
/* MAIDEN OF GRIEF BY SILVANII (mmorcin@wp.pl), Some cleanups by Xinef */ /*
* Originally written by SILVANII (mmorcin@wp.pl) and Xinef
* Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3
*/
#include "halls_of_stone.h" #include "halls_of_stone.h"
#include "ScriptedCreature.h" #include "ScriptedCreature.h"
@@ -15,7 +15,6 @@
#define GOSSIP_ITEM_3 "We dont have time for this right now, we have to keep going." #define GOSSIP_ITEM_3 "We dont have time for this right now, we have to keep going."
#define GOSSIP_ITEM_4 "We're with you Brann! Open it!" #define GOSSIP_ITEM_4 "We're with you Brann! Open it!"
#define TEXT_ID_START 13100 #define TEXT_ID_START 13100
#define YELL_AGGRO "You be dead soon enough!"
enum NPCs enum NPCs
{ {
@@ -187,8 +187,8 @@ public:
if (data == DONE) if (data == DONE)
{ {
isMaidenOfGriefDead = (type == BOSS_MAIDEN_OF_GRIEF ? true : isMaidenOfGriefDead); isMaidenOfGriefDead = type == BOSS_MAIDEN_OF_GRIEF || isMaidenOfGriefDead;
isKrystalusDead = (type == BOSS_KRYSTALLUS ? true : isKrystalusDead); isKrystalusDead = type == BOSS_KRYSTALLUS || isKrystalusDead;
} }
if (isMaidenOfGriefDead && isKrystalusDead) if (isMaidenOfGriefDead && isKrystalusDead)
@@ -45,7 +45,7 @@ enum AuriayaSpells
#define SPELL_RIP_FLESH RAID_MODE(SPELL_RIP_FLESH_10, SPELL_RIP_FLESH_25) #define SPELL_RIP_FLESH RAID_MODE(SPELL_RIP_FLESH_10, SPELL_RIP_FLESH_25)
#define SPELL_FERAL_POUNCE RAID_MODE(SPELL_FERAL_POUNCE_10, SPELL_FERAL_POUNCE_25) #define SPELL_FERAL_POUNCE RAID_MODE(SPELL_FERAL_POUNCE_10, SPELL_FERAL_POUNCE_25)
#define SPELL_FERAL_RUSH RAID_MODE(SPELL_FERAL_RUSH_10, SPELL_FERAL_RUSH_25) #define SPELL_FERAL_RUSH RAID_MODE(SPELL_FERAL_RUSH_10, SPELL_FERAL_RUSH_25)
#define SPELL_SEEPING_FERAL_ESSENCE RAID_MODE(SPELL_SEEPING_FERAL_ESSENCE_10, SPELL_SEEPING_FERAL_ESSENCE_25) //#define SPELL_SEEPING_FERAL_ESSENCE RAID_MODE(SPELL_SEEPING_FERAL_ESSENCE_10, SPELL_SEEPING_FERAL_ESSENCE_25)
enum AuriayaNPC enum AuriayaNPC
{ {
@@ -1178,25 +1178,6 @@ public:
}; };
}; };
enum ScriptedTextNorgannonDellorah
{
DELLORAH_SAY_1 = 0,
DELLORAH_SAY_2 = 1,
DELLORAH_SAY_3 = 2,
DELLORAH_SAY_4 = 3,
DELLORAH_SAY_5 = 4,
DELLORAH_SAY_6 = 5,
DELLORAH_SAY_7 = 6,
NORGANNON_SAY_1 = 0,
NORGANNON_SAY_2 = 1,
NORGANNON_SAY_3 = 2,
NORGANNON_SAY_4 = 3,
NORGANNON_SAY_5 = 4,
RHYDIAN_EMOTE = 0,
};
class npc_brann_radio : public CreatureScript class npc_brann_radio : public CreatureScript
{ {
public: public:
@@ -122,7 +122,7 @@ enum FreyaSpells
#define SPELL_NATURE_FURY RAID_MODE(SPELL_NATURE_FURY_10, SPELL_NATURE_FURY_25) #define SPELL_NATURE_FURY RAID_MODE(SPELL_NATURE_FURY_10, SPELL_NATURE_FURY_25)
#define SPELL_HARDENED_BARK RAID_MODE(SPELL_HARDENED_BARK_10, SPELL_HARDENED_BARK_25) #define SPELL_HARDENED_BARK RAID_MODE(SPELL_HARDENED_BARK_10, SPELL_HARDENED_BARK_25)
#define SPELL_DETONATE RAID_MODE(SPELL_DETONATE_10, SPELL_DETONATE_25) #define SPELL_DETONATE RAID_MODE(SPELL_DETONATE_10, SPELL_DETONATE_25)
#define SPELL_NATURE_BOMB_DAMAGE RAID_MODE(SPELL_NATURE_BOMB_DAMAGE_10, SPELL_NATURE_BOMB_DAMAGE_25) //#define SPELL_NATURE_BOMB_DAMAGE RAID_MODE(SPELL_NATURE_BOMB_DAMAGE_10, SPELL_NATURE_BOMB_DAMAGE_25)
#define SPELL_SUNBEAM RAID_MODE(SPELL_SUNBEAM_10, SPELL_SUNBEAM_25) #define SPELL_SUNBEAM RAID_MODE(SPELL_SUNBEAM_10, SPELL_SUNBEAM_25)
#define SPELL_GROUND_TREMOR_FREYA RAID_MODE(SPELL_GROUND_TREMOR_FREYA_10, SPELL_GROUND_TREMOR_FREYA_25) #define SPELL_GROUND_TREMOR_FREYA RAID_MODE(SPELL_GROUND_TREMOR_FREYA_10, SPELL_GROUND_TREMOR_FREYA_25)
#define SPELL_IRON_ROOTS_FREYA RAID_MODE(SPELL_IRON_ROOTS_FREYA_10, SPELL_IRON_ROOTS_FREYA_25) #define SPELL_IRON_ROOTS_FREYA RAID_MODE(SPELL_IRON_ROOTS_FREYA_10, SPELL_IRON_ROOTS_FREYA_25)
@@ -502,8 +502,7 @@ public:
m_pInstance->SetData(TYPE_FREYA, IN_PROGRESS); m_pInstance->SetData(TYPE_FREYA, IN_PROGRESS);
// HARD MODE CHECKS // HARD MODE CHECKS
Creature* elder = nullptr; Creature* elder = ObjectAccessor::GetCreature(*me, m_pInstance->GetGuidData(NPC_ELDER_STONEBARK));
elder = ObjectAccessor::GetCreature(*me, m_pInstance->GetGuidData(NPC_ELDER_STONEBARK));
if (elder && elder->IsAlive()) if (elder && elder->IsAlive())
{ {
elder->CastSpell(elder, SPELL_DRAINED_OF_POWER, true); elder->CastSpell(elder, SPELL_DRAINED_OF_POWER, true);
@@ -51,7 +51,7 @@ enum VezaxSpellData
enum VezaxNpcs enum VezaxNpcs
{ {
// NPC_VEZAX = 33271, // NPC_VEZAX = 33271,
NPC_VEZAX_BUNNY = 33500, // NPC_VEZAX_BUNNY = 33500,
NPC_SARONITE_ANIMUS = 33524, NPC_SARONITE_ANIMUS = 33524,
}; };
@@ -182,7 +182,7 @@ public:
case 1: case 1:
return (me->GetLootMode() == 3 ? 1 : 0); return (me->GetLootMode() == 3 ? 1 : 0);
case 2: case 2:
return (bAchievShadowdodger == true ? 1 : 0); return (bAchievShadowdodger ? 1 : 0);
} }
return 0; return 0;
} }
@@ -460,9 +460,13 @@ public:
break; break;
case EVENT_FREEZE: case EVENT_FREEZE:
if (Player* plr = SelectTargetFromPlayerList(50.0f, SPELL_FLASH_FREEZE_TRAPPED_PLAYER)) if (Player* plr = SelectTargetFromPlayerList(50.0f, SPELL_FLASH_FREEZE_TRAPPED_PLAYER))
{
me->CastSpell(plr, SPELL_FREEZE, false); me->CastSpell(plr, SPELL_FREEZE, false);
else if (Unit* plr = SelectTarget(SELECT_TARGET_RANDOM, 0, 50.0f, true)) }
me->CastSpell(plr, SPELL_FREEZE, false); else if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 50.0f, true))
{
me->CastSpell(target, SPELL_FREEZE, false);
}
events.RescheduleEvent(EVENT_FREEZE, urand(17000, 20000)); events.RescheduleEvent(EVENT_FREEZE, urand(17000, 20000));
break; break;
} }
@@ -663,8 +667,8 @@ public:
if ((s->GetTypeId() == TYPEID_PLAYER && !s->HasAura(SPELL_FLASH_FREEZE_TRAPPED_PLAYER)) || (s->GetTypeId() == TYPEID_UNIT && !s->HasAura(SPELL_FLASH_FREEZE_TRAPPED_NPC))) if ((s->GetTypeId() == TYPEID_PLAYER && !s->HasAura(SPELL_FLASH_FREEZE_TRAPPED_PLAYER)) || (s->GetTypeId() == TYPEID_UNIT && !s->HasAura(SPELL_FLASH_FREEZE_TRAPPED_NPC)))
me->DespawnOrUnsummon(2000); me->DespawnOrUnsummon(2000);
else if (s->GetTypeId() == TYPEID_PLAYER) else if (s->GetTypeId() == TYPEID_PLAYER)
if (InstanceScript* pInstance = me->GetInstanceScript()) if (InstanceScript* instanceScript = me->GetInstanceScript())
if (pInstance->GetData(TYPE_HODIR) == NOT_STARTED) if (instanceScript->GetData(TYPE_HODIR) == NOT_STARTED)
{ {
s->CastSpell(s, SPELL_FLASH_FREEZE_INSTAKILL, true); s->CastSpell(s, SPELL_FLASH_FREEZE_INSTAKILL, true);
me->DespawnOrUnsummon(2000); me->DespawnOrUnsummon(2000);
@@ -1337,9 +1341,13 @@ public:
if (Aura* aur = target->GetAura(target->GetTypeId() == TYPEID_PLAYER ? SPELL_FLASH_FREEZE_TRAPPED_PLAYER : SPELL_FLASH_FREEZE_TRAPPED_NPC)) if (Aura* aur = target->GetAura(target->GetTypeId() == TYPEID_PLAYER ? SPELL_FLASH_FREEZE_TRAPPED_PLAYER : SPELL_FLASH_FREEZE_TRAPPED_NPC))
{ {
if (Unit* caster = aur->GetCaster()) if (Unit* caster2 = aur->GetCaster())
if (caster->GetTypeId() == TYPEID_UNIT) {
caster->ToCreature()->DespawnOrUnsummon(); if (caster2->GetTypeId() == TYPEID_UNIT)
{
caster2->ToCreature()->DespawnOrUnsummon();
}
}
target->CastSpell(target, SPELL_FLASH_FREEZE_INSTAKILL, true); target->CastSpell(target, SPELL_FLASH_FREEZE_INSTAKILL, true);
return; return;
} }
@@ -397,12 +397,14 @@ public:
if( me->GetVictim() && temp->GetGUID() == me->GetVictim()->GetGUID() ) if( me->GetVictim() && temp->GetGUID() == me->GetVictim()->GetGUID() )
continue; continue;
bool found = false; bool found = false;
for( std::list<Creature*>::iterator itr = icl.begin(); itr != icl.end(); ++itr ) for (std::list<Creature*>::iterator iterator = icl.begin(); iterator != icl.end(); ++iterator)
if( (*itr)->GetVictim() && (*itr)->GetVictim()->GetGUID() == temp->GetGUID() ) {
if ((*iterator)->GetVictim() && (*iterator)->GetVictim()->GetGUID() == temp->GetGUID())
{ {
found = true; found = true;
break; break;
} }
}
if( !found ) if( !found )
playerGUIDs.push_back(temp->GetGUID()); playerGUIDs.push_back(temp->GetGUID());
@@ -455,12 +455,14 @@ public:
if( !pg.empty() ) if( !pg.empty() )
{ {
uint8 index = urand(0, pg.size() - 1); uint8 index = urand(0, pg.size() - 1);
Player* p = pg[index]; Player* player = pg[index];
float angle = rand_norm() * 2 * M_PI; float angle = rand_norm() * 2 * M_PI;
float z = 364.35f; float z = 364.35f;
if (!p->IsWithinLOS(p->GetPositionX() + cos(angle) * 5.0f, p->GetPositionY() + sin(angle) * 5.0f, z)) if (!player->IsWithinLOS(player->GetPositionX() + cos(angle) * 5.0f, player->GetPositionY() + sin(angle) * 5.0f, z))
angle = p->GetAngle(2744.65f, 2569.46f); {
me->CastSpell(p->GetPositionX() + cos(angle) * 5.0f, p->GetPositionY() + sin(angle) * 5.0f, z, SPELL_SUMMON_FLAMES_INITIAL, true); angle = player->GetAngle(2744.65f, 2569.46f);
}
me->CastSpell(player->GetPositionX() + cos(angle) * 5.0f, player->GetPositionY() + sin(angle) * 5.0f, z, SPELL_SUMMON_FLAMES_INITIAL, true);
pg.erase(pg.begin() + index); pg.erase(pg.begin() + index);
} }
@@ -2,7 +2,6 @@
* Originally written by Pussywizard - Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3 * Originally written by Pussywizard - Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3
*/ */
#include "MoveSplineInit.h"
#include "PassiveAI.h" #include "PassiveAI.h"
#include "Player.h" #include "Player.h"
#include "ScriptedCreature.h" #include "ScriptedCreature.h"
@@ -30,15 +29,15 @@
#define SPELL_CHAIN_3 49683 #define SPELL_CHAIN_3 49683
#define SPELL_CHAIN_4 49684 #define SPELL_CHAIN_4 49684
#define SPELL_LAUNCH_CHAIN 62505 #define SPELL_LAUNCH_CHAIN 62505
#define SPELL_HARPOON_SHOT_BUFF 62509 //#define SPELL_HARPOON_SHOT_BUFF 62509
#define SPELL_HARPOON_FIRE_STATE 62696 //#define SPELL_HARPOON_FIRE_STATE 62696
#define REQ_CHAIN_COUNT RAID_MODE(2, 4) #define REQ_CHAIN_COUNT RAID_MODE(2, 4)
#define SPELL_DEVOURINGFLAME_SUMMON 63308 #define SPELL_DEVOURINGFLAME_SUMMON 63308
#define SPELL_DEVOURINGFLAME_GROUNDAURA_10 64709 //#define SPELL_DEVOURINGFLAME_GROUNDAURA_10 64709
#define SPELL_DEVOURINGFLAME_GROUNDAURA_25 64734 //#define SPELL_DEVOURINGFLAME_GROUNDAURA_25 64734
#define S_DEVOURINGFLAME_GROUNDAURA RAID_MODE(SPELL_DEVOURINGFLAME_GROUNDAURA_10, SPELL_DEVOURINGFLAME_GROUNDAURA_25) //#define S_DEVOURINGFLAME_GROUNDAURA RAID_MODE(SPELL_DEVOURINGFLAME_GROUNDAURA_10, SPELL_DEVOURINGFLAME_GROUNDAURA_25)
#define NPC_DEVOURINGFLAME 34188 //#define NPC_DEVOURINGFLAME 34188
#define SPELL_STORMSTRIKE 51876 #define SPELL_STORMSTRIKE 51876
#define SPELL_WHIRLWIND 63808 #define SPELL_WHIRLWIND 63808
#define SPELL_LIGHTINGBOLT 63809 #define SPELL_LIGHTINGBOLT 63809
@@ -49,10 +48,10 @@
#define NPC_DARK_RUNE_WATCHER 33453 #define NPC_DARK_RUNE_WATCHER 33453
#define NPC_EXPEDITION_ENGINEER 33287 #define NPC_EXPEDITION_ENGINEER 33287
#define NPC_EXPEDITION_COMMANDER 33210 #define NPC_EXPEDITION_COMMANDER 33210
#define NPC_EXPEDITION_DEFENDER 33816 //#define NPC_EXPEDITION_DEFENDER 33816
#define NPC_EXPEDITION_TRAPPER 33259 //#define NPC_EXPEDITION_TRAPPER 33259
#define NPC_RAZORSCALE 33186 #define NPC_RAZORSCALE 33186
#define NPC_HARPOON_FIRE_STATE 33282 //#define NPC_HARPOON_FIRE_STATE 33282
#define GO_DRILL 195305 #define GO_DRILL 195305
#define GO_HARPOON_GUN_1 194519 #define GO_HARPOON_GUN_1 194519
@@ -208,16 +207,22 @@ public:
{ {
case SPELL_LAUNCH_CHAIN: case SPELL_LAUNCH_CHAIN:
{ {
uint32 spell = 0; uint32 spellId = SPELL_CHAIN_4;
if( caster->GetGUID() == pInstance->GetGuidData(DATA_HARPOON_FIRE_STATE_1) )
spell = SPELL_CHAIN_1; if (caster->GetGUID() == pInstance->GetGuidData(DATA_HARPOON_FIRE_STATE_1))
else if( caster->GetGUID() == pInstance->GetGuidData(DATA_HARPOON_FIRE_STATE_2) ) {
spell = SPELL_CHAIN_2; spellId = SPELL_CHAIN_1;
else if( caster->GetGUID() == pInstance->GetGuidData(DATA_HARPOON_FIRE_STATE_3) ) }
spell = SPELL_CHAIN_3; else if (caster->GetGUID() == pInstance->GetGuidData(DATA_HARPOON_FIRE_STATE_2))
else {
spell = SPELL_CHAIN_4; spellId = SPELL_CHAIN_2;
caster->CastSpell(me, spell, true); }
else if (caster->GetGUID() == pInstance->GetGuidData(DATA_HARPOON_FIRE_STATE_3))
{
spellId = SPELL_CHAIN_3;
}
caster->CastSpell(me, spellId, true);
} }
break; break;
case SPELL_CHAIN_1: case SPELL_CHAIN_1:
@@ -1459,8 +1459,10 @@ public:
{ {
case EVENT_RC_RUNIC_SMASH_TRIGGER: case EVENT_RC_RUNIC_SMASH_TRIGGER:
_nextTriggerPos += 16.0f; _nextTriggerPos += 16.0f;
if (!(_nextTriggerPos > -260.0f)) if (_nextTriggerPos <= -260.0f)
{
events.RescheduleEvent(EVENT_RC_RUNIC_SMASH_TRIGGER, 500); events.RescheduleEvent(EVENT_RC_RUNIC_SMASH_TRIGGER, 500);
}
RunRunicSmash(true); RunRunicSmash(true);
break; break;
@@ -704,11 +704,13 @@ public:
{ {
instance->LoadGrid(364.0f, -16.0f); //make sure leviathan is loaded instance->LoadGrid(364.0f, -16.0f); //make sure leviathan is loaded
m_leviathanTowers[type - EVENT_TOWER_OF_LIFE_DESTROYED] = data; m_leviathanTowers[type - EVENT_TOWER_OF_LIFE_DESTROYED] = data;
GameObject* gobj = nullptr; for (uint8 i = 0; i < 2; ++i)
if ((gobj = instance->GetGameObject(m_leviathanVisualTowers[type - EVENT_TOWER_OF_LIFE_DESTROYED][0]))) {
gobj->SetGoState(GO_STATE_ACTIVE); if (GameObject *gameObject = instance->GetGameObject(m_leviathanVisualTowers[type - EVENT_TOWER_OF_LIFE_DESTROYED][i]))
if ((gobj = instance->GetGameObject(m_leviathanVisualTowers[type - EVENT_TOWER_OF_LIFE_DESTROYED][1]))) {
gobj->SetGoState(GO_STATE_ACTIVE); gameObject->SetGoState(GO_STATE_ACTIVE);
}
}
return; return;
} }
@@ -890,7 +892,6 @@ public:
case DATA_THORIM_FIRST_DOORS: case DATA_THORIM_FIRST_DOORS:
case DATA_THORIM_SECOND_DOORS: case DATA_THORIM_SECOND_DOORS:
return m_thorimGameobjectsGUID[data - DATA_THORIM_LEVER_GATE]; return m_thorimGameobjectsGUID[data - DATA_THORIM_LEVER_GATE];
break;
// Hodir chests // Hodir chests
case GO_HODIR_CHEST_HARD: case GO_HODIR_CHEST_HARD:
@@ -1229,15 +1230,20 @@ void instance_ulduar::instance_ulduar_InstanceMapScript::SpawnLeviathanEncounter
if (mode < VEHICLE_POS_NONE) if (mode < VEHICLE_POS_NONE)
{ {
TempSummon* veh = nullptr;
for (uint8 i = 0; i < (instance->Is25ManRaid() ? 5 : 2); ++i) for (uint8 i = 0; i < (instance->Is25ManRaid() ? 5 : 2); ++i)
{ {
if ((veh = instance->SummonCreature(NPC_SALVAGED_SIEGE_ENGINE, vehiclePositions[15 * mode + i]))) if (TempSummon* veh = instance->SummonCreature(NPC_SALVAGED_SIEGE_ENGINE, vehiclePositions[15 * mode + i]))
{
_leviathanVehicles.push_back(veh->GetGUID()); _leviathanVehicles.push_back(veh->GetGUID());
if ((veh = instance->SummonCreature(NPC_VEHICLE_CHOPPER, vehiclePositions[15 * mode + i + 5]))) }
if (TempSummon* veh = instance->SummonCreature(NPC_VEHICLE_CHOPPER, vehiclePositions[15 * mode + i + 5]))
{
_leviathanVehicles.push_back(veh->GetGUID()); _leviathanVehicles.push_back(veh->GetGUID());
if ((veh = instance->SummonCreature(NPC_SALVAGED_DEMOLISHER, vehiclePositions[15 * mode + i + 10]))) }
if (TempSummon* veh = instance->SummonCreature(NPC_SALVAGED_DEMOLISHER, vehiclePositions[15 * mode + i + 10]))
{
_leviathanVehicles.push_back(veh->GetGUID()); _leviathanVehicles.push_back(veh->GetGUID());
}
} }
} }
} }
@@ -46,9 +46,6 @@ enum Misc
NPC_RITUAL_CHANNELER = 27281, NPC_RITUAL_CHANNELER = 27281,
NPC_ARTHAS = 29280, NPC_ARTHAS = 29280,
NPC_FLAME_BRAZIER = 27273, NPC_FLAME_BRAZIER = 27273,
// ACTIONS
ACTION_START_SORROWGRAVE = 1,
}; };
enum Events enum Events
@@ -34,7 +34,6 @@ public:
ObjectGuid SkadiRuthlessDoor; ObjectGuid SkadiRuthlessDoor;
ObjectGuid YmironDoor; ObjectGuid YmironDoor;
ObjectGuid StatisGenerator; ObjectGuid StatisGenerator;
uint32 FightStatus;
uint32 Encounters[MAX_ENCOUNTERS]; uint32 Encounters[MAX_ENCOUNTERS];
uint8 SkadiHits; uint8 SkadiHits;
uint8 SkadiInRange; uint8 SkadiInRange;
@@ -47,7 +46,6 @@ public:
{ {
SkadiHits = 0; SkadiHits = 0;
SkadiInRange = 0; SkadiInRange = 0;
FightStatus = 0;
svalaAchievement = false; svalaAchievement = false;
skadiAchievement = false; skadiAchievement = false;
@@ -37,12 +37,6 @@ enum Events
EVENT_CAST_WHITEOUT_GROUND_EFFECT = 4, EVENT_CAST_WHITEOUT_GROUND_EFFECT = 4,
}; };
enum Misc
{
NPC_FROZEN_ORB = 38456,
NPC_FROZEN_ORB_STALKER = 38461,
};
class boss_toravon : public CreatureScript class boss_toravon : public CreatureScript
{ {
public: public:
@@ -57,11 +57,6 @@ enum eSpells
#define SPELL_WATER_BOLT_VOLLEY DUNGEON_MODE(SPELL_WATER_BOLT_VOLLEY_N, SPELL_WATER_BOLT_VOLLEY_H) #define SPELL_WATER_BOLT_VOLLEY DUNGEON_MODE(SPELL_WATER_BOLT_VOLLEY_N, SPELL_WATER_BOLT_VOLLEY_H)
#define SPELL_FRENZY DUNGEON_MODE(SPELL_FRENZY_N, SPELL_FRENZY_H) #define SPELL_FRENZY DUNGEON_MODE(SPELL_FRENZY_N, SPELL_FRENZY_H)
enum eEvents
{
EVENT_SPELL_WATER_BOLT_VOLLEY = 1,
};
class boss_ichoron : public CreatureScript class boss_ichoron : public CreatureScript
{ {
public: public:
@@ -14,11 +14,9 @@ Script Data End */
#include "Player.h" #include "Player.h"
#include "ScriptedCreature.h" #include "ScriptedCreature.h"
#include "ScriptedEscortAI.h"
#include "ScriptedGossip.h" #include "ScriptedGossip.h"
#include "ScriptMgr.h" #include "ScriptMgr.h"
#include "World.h" #include "World.h"
#include "WorldSession.h"
// Ours // Ours
class npc_steam_powered_auctioneer : public CreatureScript class npc_steam_powered_auctioneer : public CreatureScript
@@ -21,7 +21,6 @@ EndContentData */
#include "PassiveAI.h" #include "PassiveAI.h"
#include "Player.h" #include "Player.h"
#include "ScriptedCreature.h" #include "ScriptedCreature.h"
#include "ScriptedEscortAI.h"
#include "ScriptedGossip.h" #include "ScriptedGossip.h"
#include "ScriptMgr.h" #include "ScriptMgr.h"
#include "SpellAuras.h" #include "SpellAuras.h"
@@ -1620,9 +1619,7 @@ public:
void StoreTargets() void StoreTargets()
{ {
uint8 creaturecount; uint8 creturesCount = 0;
creaturecount = 0;
for (uint8 ii = 0; ii < 3; ++ii) for (uint8 ii = 0; ii < 3; ++ii)
{ {
@@ -1630,10 +1627,10 @@ public:
GetCreatureListWithEntryInGrid(creatureList, me, AudienceMobs[ii], 15.0f); GetCreatureListWithEntryInGrid(creatureList, me, AudienceMobs[ii], 15.0f);
for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr) for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
{ {
if (Creature* creatureList = *itr) if (Creature* creature = *itr)
{ {
audienceList[creaturecount] = creatureList->GetGUID(); audienceList[creturesCount] = creature->GetGUID();
++creaturecount; ++creturesCount;
} }
} }
} }
@@ -99,13 +99,13 @@ public:
DoMeleeAttackIfReady(); DoMeleeAttackIfReady();
} }
void setphase(short phase) void setphase(short newPhase)
{ {
Unit* summoner = me->ToTempSummon() ? me->ToTempSummon()->GetSummoner() : nullptr; Unit* summoner = me->ToTempSummon() ? me->ToTempSummon()->GetSummoner() : nullptr;
if (!summoner || summoner->GetTypeId() != TYPEID_PLAYER) if (!summoner || summoner->GetTypeId() != TYPEID_PLAYER)
return; return;
switch (phase) switch (newPhase)
{ {
case 1: case 1:
me->MonsterWhisper("You think that you can get rid of me through meditation?", summoner->ToPlayer()); me->MonsterWhisper("You think that you can get rid of me through meditation?", summoner->ToPlayer());
@@ -258,11 +258,6 @@ public:
## npc_plaguehound_tracker ## npc_plaguehound_tracker
######*/ ######*/
enum Plaguehound
{
QUEST_SNIFF_OUT_ENEMY = 11253
};
class npc_plaguehound_tracker : public CreatureScript class npc_plaguehound_tracker : public CreatureScript
{ {
public: public:
@@ -277,9 +277,9 @@ quest Still At It (12644)
#define MCM_TEXT_FAILED "You have FAILED!!!" #define MCM_TEXT_FAILED "You have FAILED!!!"
#define ACTION_PRESSURE 1 #define ACTION_PRESSURE 1
#define ACTION_HEAT 2 #define ACTION_HEAT 2
#define ACTION_BANANA 3 //#define ACTION_BANANA 3
#define ACTION_ORANGE 4 //#define ACTION_ORANGE 4
#define ACTION_PAPAYA 5 //#define ACTION_PAPAYA 5
#define NPC_WANTS_BANANAS 28537 #define NPC_WANTS_BANANAS 28537
class npc_still_at_it_trigger : public CreatureScript class npc_still_at_it_trigger : public CreatureScript
@@ -1,16 +1,5 @@
/* Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU GPL v2 license, you may redistribute it and/or modify it under version 2 of the License, or (at your option), any later version. 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 * Copyright (C) 2016+ AzerothCore <www.azerothcore.org>, released under GNU AGPL v3 license: https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#include "Battlefield.h" #include "Battlefield.h"
@@ -25,11 +14,9 @@
#include "ScriptedCreature.h" #include "ScriptedCreature.h"
#include "ScriptedGossip.h" #include "ScriptedGossip.h"
#include "ScriptMgr.h" #include "ScriptMgr.h"
#include "ScriptSystem.h"
#include "SpellScript.h" #include "SpellScript.h"
#include "Vehicle.h" #include "Vehicle.h"
#include "World.h" #include "World.h"
#include "WorldSession.h"
#define GOSSIP_HELLO_DEMO1 "Build catapult." #define GOSSIP_HELLO_DEMO1 "Build catapult."
#define GOSSIP_HELLO_DEMO2 "Build demolisher." #define GOSSIP_HELLO_DEMO2 "Build demolisher."