mirror of
https://github.com/ZhengPeiRu21/mod-individual-progression
synced 2025-11-29 23:44:51 +08:00
Move Onyxia 40 to difficulty 2, warnings clean up
This commit is contained in:
@@ -651,5 +651,5 @@ void AddSC_mod_individual_progression()
|
||||
new npc_ipp_tbc();
|
||||
new npc_ipp_wotlk();
|
||||
new gobject_ipp_tbc();
|
||||
new gobject_ipp_wotlk();
|
||||
// new gobject_ipp_wotlk(); // Not used yet
|
||||
}
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
|
||||
// From SC
|
||||
void AddSC_mod_individual_progression();
|
||||
void AddSC_boss_onyxia_60_2();
|
||||
void AddSC_instance_onyxias_lair_60_2();
|
||||
void AddSC_boss_onyxia_40();
|
||||
void AddSC_instance_onyxias_lair_40();
|
||||
void AddSC_instance_blackrock_spire_50_59_B();
|
||||
void AddSC_instance_molten_core_60_1_A();
|
||||
void AddSC_quest_jail_break_60_2();
|
||||
@@ -35,8 +35,8 @@ void AddSC_npc_omarion();
|
||||
void Addmod_individual_progressionScripts()
|
||||
{
|
||||
AddSC_mod_individual_progression();
|
||||
AddSC_boss_onyxia_60_2();
|
||||
AddSC_instance_onyxias_lair_60_2();
|
||||
AddSC_boss_onyxia_40();
|
||||
AddSC_instance_onyxias_lair_40();
|
||||
AddSC_instance_blackrock_spire_50_59_B();
|
||||
AddSC_instance_molten_core_60_1_A();
|
||||
AddSC_quest_jail_break_60_2();
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
class spell_bwl_chromaggus_time_lapse_60_2_A : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
spell_bwl_chromaggus_time_lapse_60_2_A() : SpellScriptLoader("spell_bwl_chromaggus_time_lapse_60_2_A") { }
|
||||
spell_bwl_chromaggus_time_lapse_60_2_A() : SpellScriptLoader("spell_bwl_chromaggus_time_lapse") { }
|
||||
|
||||
class spell_bwl_chromaggus_time_lapse_60_2_A_SpellScript : public SpellScript
|
||||
{
|
||||
|
||||
@@ -117,15 +117,15 @@ enum Yells
|
||||
EMOTE_BREATH = 4
|
||||
};
|
||||
|
||||
class boss_onyxia_60_2 : public CreatureScript
|
||||
class boss_onyxia_40 : public CreatureScript
|
||||
{
|
||||
public:
|
||||
boss_onyxia_60_2() : CreatureScript("boss_onyxia") {}
|
||||
boss_onyxia_40() : CreatureScript("boss_onyxia_40") {}
|
||||
|
||||
struct boss_onyxiaAI_60_2 : public BossAI
|
||||
struct boss_onyxiaAI_40 : public BossAI
|
||||
{
|
||||
public:
|
||||
boss_onyxiaAI_60_2(Creature* pCreature) : BossAI(pCreature, DATA_ONYXIA)
|
||||
boss_onyxiaAI_40(Creature* pCreature) : BossAI(pCreature, DATA_ONYXIA)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
@@ -172,7 +172,6 @@ public:
|
||||
me->SetCanFly(false);
|
||||
me->SetDisableGravity(false);
|
||||
me->SetSpeed(MOVE_RUN, me->GetCreatureTemplate()->speed_run, false);
|
||||
instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
BossAI::Reset();
|
||||
}
|
||||
|
||||
@@ -194,8 +193,6 @@ public:
|
||||
Talk(SAY_AGGRO);
|
||||
SetPhase(PHASE_GROUNDED);
|
||||
|
||||
instance->DoStopTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT); // just in case at reset some players already left the instance
|
||||
instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
|
||||
BossAI::EnterCombat(who);
|
||||
}
|
||||
|
||||
@@ -539,11 +536,11 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetOnyxiasLairAI<boss_onyxiaAI_60_2>(creature);
|
||||
return GetOnyxiasLairAI<boss_onyxiaAI_40>(creature);
|
||||
};
|
||||
};
|
||||
|
||||
void AddSC_boss_onyxia_60_2()
|
||||
void AddSC_boss_onyxia_40()
|
||||
{
|
||||
new boss_onyxia_60_2();
|
||||
new boss_onyxia_40();
|
||||
}
|
||||
|
||||
@@ -22,13 +22,14 @@
|
||||
|
||||
ObjectData const creatureData[] =
|
||||
{
|
||||
{ NPC_ONYXIA, DATA_ONYXIA }
|
||||
{ NPC_ONYXIA, DATA_ONYXIA },
|
||||
{ NPC_ONYXIA_40, DATA_ONYXIA }
|
||||
};
|
||||
|
||||
class instance_onyxias_lair_60_2 : public InstanceMapScript
|
||||
class instance_onyxias_lair_40 : public InstanceMapScript
|
||||
{
|
||||
public:
|
||||
instance_onyxias_lair_60_2() : InstanceMapScript("instance_onyxias_lair", 249) {}
|
||||
instance_onyxias_lair_40() : InstanceMapScript("instance_onyxias_lair", 249) {}
|
||||
|
||||
InstanceScript* GetInstanceScript(InstanceMap* pMap) const override
|
||||
{
|
||||
@@ -144,6 +145,10 @@ public:
|
||||
|
||||
bool CheckAchievementCriteriaMeet(uint32 criteria_id, Player const* /*source*/, Unit const* /*target*/, uint32 /*miscvalue1*/) override
|
||||
{
|
||||
if (instance->GetDifficulty() == RAID_DIFFICULTY_10MAN_HEROIC)
|
||||
{
|
||||
return false; // No achievements in Onyxia 40man
|
||||
}
|
||||
switch(criteria_id)
|
||||
{
|
||||
case ACHIEV_CRITERIA_MANY_WHELPS_10_PLAYER:
|
||||
@@ -158,6 +163,25 @@ public:
|
||||
};
|
||||
};
|
||||
|
||||
class onyxia_entrance_trigger : public AreaTriggerScript
|
||||
{
|
||||
public:
|
||||
onyxia_entrance_trigger() : AreaTriggerScript("onyxia_entrance_trigger") { }
|
||||
|
||||
bool OnTrigger(Player* player, AreaTrigger const* areaTrigger) override
|
||||
{
|
||||
if (player->getLevel() < 80)
|
||||
{
|
||||
player->SetRaidDifficulty(RAID_DIFFICULTY_10MAN_HEROIC);
|
||||
}
|
||||
if (!sMapMgr->PlayerCannotEnter(249, player, true))
|
||||
{
|
||||
player->TeleportTo(249, 29.1607f, -71.3372f, -8.18032f, 4.58f);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
class global_onyxia_tuning_script : public GlobalScript
|
||||
{
|
||||
public:
|
||||
@@ -165,6 +189,7 @@ public:
|
||||
|
||||
void OnLoadSpellCustomAttr(SpellInfo* spellInfo) override
|
||||
{
|
||||
// TODO: This is currently overriding 10 man spells
|
||||
switch (spellInfo->Id)
|
||||
{
|
||||
case 18435: // Flame Breath
|
||||
@@ -293,8 +318,9 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_instance_onyxias_lair_60_2()
|
||||
void AddSC_instance_onyxias_lair_40()
|
||||
{
|
||||
new instance_onyxias_lair_60_2();
|
||||
new instance_onyxias_lair_40();
|
||||
new global_onyxia_tuning_script();
|
||||
new onyxia_entrance_trigger();
|
||||
}
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
#define DEF_ONYXIAS_LAIR_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
#include "Player.h"
|
||||
#include "MapMgr.h"
|
||||
|
||||
#define OnyxiasLairScriptName "instance_onyxias_lair"
|
||||
|
||||
@@ -35,6 +37,10 @@ enum eCreatures
|
||||
NPC_ONYXIA = 10184,
|
||||
NPC_ONYXIAN_WHELP = 11262,
|
||||
NPC_ONYXIAN_LAIR_GUARD = 36561,
|
||||
|
||||
NPC_ONYXIA_40 = 301000,
|
||||
NPC_ONYXIAN_WHELP_40 = 301001,
|
||||
NPC_ONYXIAN_LAIR_GUARD_40 = 301002,
|
||||
};
|
||||
|
||||
enum eGameObjects
|
||||
|
||||
Reference in New Issue
Block a user