mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-24 10:56:38 +01:00
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/World/World.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
This commit is contained in:
@@ -281,7 +281,7 @@ public:
|
||||
if (name.empty())
|
||||
continue;
|
||||
|
||||
char const* activeStr = target && target->GetUInt32Value(PLAYER_CHOSEN_TITLE) == titleInfo->bit_index
|
||||
char const* activeStr = target->GetUInt32Value(PLAYER_CHOSEN_TITLE) == titleInfo->bit_index
|
||||
? handler->GetTrinityString(LANG_ACTIVE)
|
||||
: "";
|
||||
|
||||
|
||||
@@ -153,7 +153,7 @@ public:
|
||||
sWorld->SetPlayerSecurityLimit(SEC_ADMINISTRATOR);
|
||||
else if (strncmp(paramStr, "reset", limit) == 0)
|
||||
{
|
||||
sWorld->SetPlayerAmountLimit(ConfigMgr::GetIntDefault("PlayerLimit", 100));
|
||||
sWorld->SetPlayerAmountLimit(sConfigMgr->GetIntDefault("PlayerLimit", 100));
|
||||
sWorld->LoadDBAllowedSecurityLevel();
|
||||
}
|
||||
else
|
||||
|
||||
@@ -246,23 +246,29 @@ class instance_stratholme : public InstanceMapScript
|
||||
case TYPE_BARONESS:
|
||||
EncounterState[1] = data;
|
||||
if (data == IN_PROGRESS)
|
||||
{
|
||||
HandleGameObject(ziggurat1GUID, true);
|
||||
if (data == IN_PROGRESS) //change to DONE when crystals implemented
|
||||
//change to DONE when crystals implemented
|
||||
StartSlaugtherSquare();
|
||||
}
|
||||
break;
|
||||
case TYPE_NERUB:
|
||||
EncounterState[2] = data;
|
||||
if (data == IN_PROGRESS)
|
||||
{
|
||||
HandleGameObject(ziggurat2GUID, true);
|
||||
if (data == IN_PROGRESS) //change to DONE when crystals implemented
|
||||
//change to DONE when crystals implemented
|
||||
StartSlaugtherSquare();
|
||||
}
|
||||
break;
|
||||
case TYPE_PALLID:
|
||||
EncounterState[3] = data;
|
||||
if (data == IN_PROGRESS)
|
||||
{
|
||||
HandleGameObject(ziggurat3GUID, true);
|
||||
if (data == IN_PROGRESS) //change to DONE when crystals implemented
|
||||
//change to DONE when crystals implemented
|
||||
StartSlaugtherSquare();
|
||||
}
|
||||
break;
|
||||
case TYPE_RAMSTEIN:
|
||||
if (data == IN_PROGRESS)
|
||||
|
||||
@@ -556,8 +556,8 @@ public:
|
||||
if (i->GetSource() && i->GetSource()->GetPositionZ() < DEMON_REALM_Z + 5)
|
||||
++SpectralPlayers;
|
||||
}
|
||||
uint8 MaxSpectralPlayers = MAX_PLAYERS_IN_SPECTRAL_REALM;
|
||||
if (player->HasAura(AURA_SPECTRAL_EXHAUSTION) || (MaxSpectralPlayers && SpectralPlayers >= MaxSpectralPlayers))
|
||||
|
||||
if (player->HasAura(AURA_SPECTRAL_EXHAUSTION) || SpectralPlayers >= MAX_PLAYERS_IN_SPECTRAL_REALM)
|
||||
player->GetSession()->SendNotification(GO_FAILED);
|
||||
else
|
||||
player->CastSpell(player, SPELL_TELEPORT_SPECTRAL, true);
|
||||
|
||||
@@ -318,7 +318,8 @@ class boss_lich_king_toc : public CreatureScript
|
||||
_instance->SetData(TYPE_EVENT, 5080);
|
||||
break;
|
||||
case 5080:
|
||||
if (GameObject* go = _instance->instance->GetGameObject(_instance->GetData64(GO_ARGENT_COLISEUM_FLOOR)))
|
||||
{
|
||||
if (GameObject* go = GameObject::GetGameObject(*me, _instance->GetData64(GO_ARGENT_COLISEUM_FLOOR)))
|
||||
{
|
||||
go->SetDisplayId(DISPLAYID_DESTROYED_FLOOR);
|
||||
go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_DAMAGED | GO_FLAG_NODESPAWN);
|
||||
@@ -328,18 +329,17 @@ class boss_lich_king_toc : public CreatureScript
|
||||
me->CastSpell(me, SPELL_CORPSE_TELEPORT, false);
|
||||
me->CastSpell(me, SPELL_DESTROY_FLOOR_KNOCKUP, false);
|
||||
|
||||
if (_instance)
|
||||
{
|
||||
_instance->SetBossState(BOSS_LICH_KING, DONE);
|
||||
Creature* temp = Unit::GetCreature(*me, _instance->GetData64(NPC_ANUBARAK));
|
||||
if (!temp || !temp->IsAlive())
|
||||
temp = me->SummonCreature(NPC_ANUBARAK, AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 3, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME);
|
||||
_instance->SetBossState(BOSS_LICH_KING, DONE);
|
||||
Creature* temp = Unit::GetCreature(*me, _instance->GetData64(NPC_ANUBARAK));
|
||||
if (!temp || !temp->IsAlive())
|
||||
temp = me->SummonCreature(NPC_ANUBARAK, AnubarakLoc[0].GetPositionX(), AnubarakLoc[0].GetPositionY(), AnubarakLoc[0].GetPositionZ(), 3, TEMPSUMMON_CORPSE_TIMED_DESPAWN, DESPAWN_TIME);
|
||||
|
||||
_instance->SetData(TYPE_EVENT, 0);
|
||||
|
||||
_instance->SetData(TYPE_EVENT, 0);
|
||||
}
|
||||
me->DespawnOrUnsummon();
|
||||
_updateTimer = 20*IN_MILLISECONDS;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -354,9 +354,7 @@ public:
|
||||
void MovementInform(uint32 type, uint32 id) OVERRIDE
|
||||
{
|
||||
if (type == POINT_MOTION_TYPE && id == 0)
|
||||
{
|
||||
me->SetDisableGravity(false); // Needed this for proper animation after spawn, the summon in air fall to ground bug leave no other option for now, if this isn't used the drake will only walk on move.
|
||||
}
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) OVERRIDE
|
||||
@@ -388,9 +386,7 @@ public:
|
||||
}
|
||||
else WelcomeSequelTimer -= diff;
|
||||
}
|
||||
}
|
||||
if (me->HasAuraType(SPELL_AURA_CONTROL_VEHICLE))
|
||||
{
|
||||
|
||||
if (instance->GetBossState(DATA_UROM_EVENT) == DONE)
|
||||
{
|
||||
if (!(SpecialOff))
|
||||
@@ -403,9 +399,7 @@ public:
|
||||
else SpecialTimer -= diff;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (me->HasAuraType(SPELL_AURA_CONTROL_VEHICLE))
|
||||
{
|
||||
|
||||
if (!(HealthWarningOff))
|
||||
{
|
||||
if (me->GetHealthPct() <= 40.0f)
|
||||
@@ -414,9 +408,7 @@ public:
|
||||
HealthWarningOff = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (me->HasAuraType(SPELL_AURA_CONTROL_VEHICLE))
|
||||
{
|
||||
|
||||
if (HealthWarningOff)
|
||||
{
|
||||
if (WarningTimer <= diff)
|
||||
@@ -427,6 +419,7 @@ public:
|
||||
else WarningTimer -= diff;
|
||||
}
|
||||
}
|
||||
|
||||
if (!(me->HasAuraType(SPELL_AURA_CONTROL_VEHICLE)))
|
||||
{
|
||||
if (!(DisableTakeOff))
|
||||
|
||||
@@ -234,7 +234,9 @@ public:
|
||||
{
|
||||
if (currentPhase == PHASE_NONE)
|
||||
{
|
||||
instance->SetData(DATA_GORTOK_PALEHOOF_EVENT, IN_PROGRESS);
|
||||
if (instance)
|
||||
instance->SetData(DATA_GORTOK_PALEHOOF_EVENT, IN_PROGRESS);
|
||||
|
||||
me->SummonCreature(NPC_STASIS_CONTROLLER, moveLocs[5].x, moveLocs[5].y, moveLocs[5].z, 0, TEMPSUMMON_CORPSE_DESPAWN);
|
||||
}
|
||||
Phase move = PHASE_NONE;
|
||||
|
||||
@@ -72,7 +72,7 @@ enum Spells
|
||||
// Ashtongue Spiritbinder
|
||||
SPELL_SPIRIT_MEND = 42025,
|
||||
SPELL_CHAIN_HEAL = 42027,
|
||||
SPELL_SPIRIT_HEAL = 42317
|
||||
SPELL_SPIRITBINDER_SPIRIT_HEAL = 42317
|
||||
};
|
||||
|
||||
enum Creatures
|
||||
@@ -1189,7 +1189,7 @@ public:
|
||||
switch (eventId)
|
||||
{
|
||||
case EVENT_SPIRIT_HEAL:
|
||||
DoCast(me, SPELL_SPIRIT_HEAL);
|
||||
DoCast(me, SPELL_SPIRITBINDER_SPIRIT_HEAL);
|
||||
events.ScheduleEvent(EVENT_SPIRIT_HEAL, urand (13000, 16000));
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -113,7 +113,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript
|
||||
instance->SetBossState(DATA_NETHEKURSE, DONE);
|
||||
}
|
||||
|
||||
void SetData(uint32 data, uint32 value)
|
||||
void SetData(uint32 data, uint32 value) OVERRIDE
|
||||
{
|
||||
if (data != SETDATA_DATA)
|
||||
return;
|
||||
@@ -340,9 +340,9 @@ class npc_fel_orc_convert : public CreatureScript
|
||||
{
|
||||
if (instance->GetBossState(DATA_NETHEKURSE) != IN_PROGRESS)
|
||||
return;
|
||||
if (instance->GetData64(NPC_GRAND_WARLOCK_NETHEKURSE))
|
||||
if (Creature* Kurse = Unit::GetCreature(*me, instance->GetData64(NPC_GRAND_WARLOCK_NETHEKURSE)))
|
||||
Kurse->AI()->SetData(SETDATA_DATA, SETDATA_PEON_DEATH);
|
||||
|
||||
if (Creature* Kurse = Unit::GetCreature(*me, instance->GetData64(NPC_GRAND_WARLOCK_NETHEKURSE)))
|
||||
Kurse->AI()->SetData(SETDATA_DATA, SETDATA_PEON_DEATH);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -404,4 +404,3 @@ void AddSC_boss_grand_warlock_nethekurse()
|
||||
new npc_fel_orc_convert();
|
||||
new npc_lesser_shadow_fissure();
|
||||
}
|
||||
|
||||
|
||||
@@ -447,4 +447,3 @@ void AddSC_boss_warbringer_omrogg()
|
||||
new boss_warbringer_omrogg();
|
||||
new npc_omrogg_heads();
|
||||
}
|
||||
|
||||
|
||||
@@ -319,4 +319,3 @@ void AddSC_boss_warchief_kargath_bladefist()
|
||||
{
|
||||
new boss_warchief_kargath_bladefist();
|
||||
}
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ class instance_shattered_halls : public InstanceMapScript
|
||||
nethekurseDoor2GUID = 0;
|
||||
}
|
||||
|
||||
void OnGameObjectCreate(GameObject* go)
|
||||
void OnGameObjectCreate(GameObject* go) OVERRIDE
|
||||
{
|
||||
switch (go->GetEntry())
|
||||
{
|
||||
@@ -62,7 +62,7 @@ class instance_shattered_halls : public InstanceMapScript
|
||||
}
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* creature)
|
||||
void OnCreatureCreate(Creature* creature) OVERRIDE
|
||||
{
|
||||
switch (creature->GetEntry())
|
||||
{
|
||||
@@ -72,7 +72,7 @@ class instance_shattered_halls : public InstanceMapScript
|
||||
}
|
||||
}
|
||||
|
||||
bool SetBossState(uint32 type, EncounterState state)
|
||||
bool SetBossState(uint32 type, EncounterState state) OVERRIDE
|
||||
{
|
||||
if (!InstanceScript::SetBossState(type, state))
|
||||
return false;
|
||||
@@ -168,4 +168,3 @@ void AddSC_instance_shattered_halls()
|
||||
{
|
||||
new instance_shattered_halls();
|
||||
}
|
||||
|
||||
|
||||
@@ -75,11 +75,8 @@ enum WaitEventType
|
||||
class boss_alar : public CreatureScript
|
||||
{
|
||||
public:
|
||||
boss_alar() : CreatureScript("boss_alar") { }
|
||||
|
||||
boss_alar()
|
||||
: CreatureScript("boss_alar")
|
||||
{
|
||||
}
|
||||
struct boss_alarAI : public ScriptedAI
|
||||
{
|
||||
boss_alarAI(Creature* creature) : ScriptedAI(creature)
|
||||
@@ -162,7 +159,6 @@ class boss_alar : public CreatureScript
|
||||
|
||||
void MoveInLineOfSight(Unit* /*who*/) OVERRIDE {}
|
||||
|
||||
|
||||
void AttackStart(Unit* who) OVERRIDE
|
||||
{
|
||||
if (Phase1)
|
||||
@@ -462,11 +458,7 @@ class boss_alar : public CreatureScript
|
||||
class npc_ember_of_alar : public CreatureScript
|
||||
{
|
||||
public:
|
||||
|
||||
npc_ember_of_alar()
|
||||
: CreatureScript("npc_ember_of_alar")
|
||||
{
|
||||
}
|
||||
npc_ember_of_alar() : CreatureScript("npc_ember_of_alar") { }
|
||||
|
||||
struct npc_ember_of_alarAI : public ScriptedAI
|
||||
{
|
||||
@@ -484,10 +476,12 @@ class npc_ember_of_alar : public CreatureScript
|
||||
{
|
||||
toDie = false;
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/) OVERRIDE
|
||||
{
|
||||
DoZoneInCombat();
|
||||
}
|
||||
|
||||
void EnterEvadeMode() OVERRIDE
|
||||
{
|
||||
me->setDeathState(JUST_DIED);
|
||||
@@ -541,11 +535,7 @@ class npc_ember_of_alar : public CreatureScript
|
||||
class npc_flame_patch_alar : public CreatureScript
|
||||
{
|
||||
public:
|
||||
|
||||
npc_flame_patch_alar()
|
||||
: CreatureScript("npc_flame_patch_alar")
|
||||
{
|
||||
}
|
||||
npc_flame_patch_alar() : CreatureScript("npc_flame_patch_alar") { }
|
||||
|
||||
struct npc_flame_patch_alarAI : public ScriptedAI
|
||||
{
|
||||
@@ -570,4 +560,3 @@ void AddSC_boss_alar()
|
||||
new npc_ember_of_alar();
|
||||
new npc_flame_patch_alar();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user