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:
Vincent-Michael
2013-07-15 18:04:04 +02:00
29 changed files with 525 additions and 492 deletions

View File

@@ -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)
: "";

View File

@@ -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

View File

@@ -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)

View File

@@ -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);

View File

@@ -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;
}

View File

@@ -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))

View File

@@ -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;

View File

@@ -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:

View File

@@ -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();
}

View File

@@ -447,4 +447,3 @@ void AddSC_boss_warbringer_omrogg()
new boss_warbringer_omrogg();
new npc_omrogg_heads();
}

View File

@@ -319,4 +319,3 @@ void AddSC_boss_warchief_kargath_bladefist()
{
new boss_warchief_kargath_bladefist();
}

View File

@@ -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();
}

View File

@@ -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();
}