mirror of
https://github.com/ZhengPeiRu21/mod-individual-progression
synced 2025-11-29 23:44:51 +08:00
fix naxx40 Thaddius Screams (#741)
- fixed the scream loop spam - changed the intro message of Thaddius so it only triggers once - fixed bony construct waypoints error
This commit is contained in:
@@ -3519,10 +3519,10 @@ INSERT INTO `creature` (`guid`, `id1`, `id2`, `id3`, `map`, `zoneId`, `areaId`,
|
||||
(@GUID+1057, @CENTRY+90, 0, 0, 533, 0, 0, 4, 1, 0, 2877.97, -3761.82, 274.983, 3.64774, 3600, 0, 0, 13033, 0, 0, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1058, @CENTRY+90, 0, 0, 533, 0, 0, 4, 1, 0, 2770.1, -3782.59, 274.983, 1.02974, 3600, 0, 0, 13033, 0, 0, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1059, @CENTRY+90, 0, 0, 533, 0, 0, 4, 1, 0, 2846.52, -3789.07, 274.983, 2.23402, 3600, 0, 0, 13033, 0, 0, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1060, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2845.06, -3296.36, 298.124, 5.63452, 3600, 0.0, 0, 65165, 0, 2, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1060, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2845.06, -3296.36, 298.124, 5.63452, 3600, 0.0, 1, 65165, 0, 2, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1061, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2839.23, -3337.89, 300.911, 0.349066, 3600, 0.0, 0, 65165, 0, 0, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1062, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2832.53, -3295.22, 298.121, 3.05074, 3600, 5.0, 0, 65165, 0, 1, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1063, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2835.76, -3331.32, 299.364, 4.84961, 3600, 0.0, 0, 65165, 0, 2, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1063, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2835.76, -3331.32, 299.364, 4.84961, 3600, 0.0, 1, 65165, 0, 2, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1064, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2831.77, -3307.42, 298.659, 0.087266, 3600, 0.0, 0, 65165, 0, 0, 0, 0, 0, '', 0, 0, NULL),
|
||||
(@GUID+1065, @CENTRY+58, 0, 0, 533, 0, 0, 4, 1, 0, 2827.68, -3314.67, 300.318, 0.383972, 3600, 0.0, 0, 65165, 0, 0, 0, 0, 0, '', 0, 0, NULL);
|
||||
|
||||
|
||||
@@ -704,16 +704,20 @@ class at_thaddius_entrance : public AreaTriggerScript
|
||||
public:
|
||||
at_thaddius_entrance() : AreaTriggerScript("at_thaddius_entrance") { }
|
||||
|
||||
bool _thaddiusIntro = false;
|
||||
|
||||
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/) override
|
||||
{
|
||||
InstanceScript* instance = player->GetInstanceScript();
|
||||
if (!instance || instance->GetData(DATA_THADDIUS_INTRO) == 1 || instance->GetBossState(BOSS_THADDIUS) == DONE)
|
||||
if (!instance || _thaddiusIntro == true || instance->GetBossState(BOSS_THADDIUS) == DONE)
|
||||
return true;
|
||||
|
||||
if (Creature* thaddius = instance->GetCreature(DATA_THADDIUS_BOSS))
|
||||
{
|
||||
thaddius->AI()->Talk(SAY_GREET);
|
||||
_thaddiusIntro = true;
|
||||
}
|
||||
|
||||
instance->SetData(DATA_THADDIUS_INTRO, 1);
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -186,7 +186,8 @@ public:
|
||||
_events.Reset();
|
||||
_currentWingTaunt = SAY_FIRST_WING_TAUNT;
|
||||
_horsemanLoaded = 0;
|
||||
|
||||
_thaddiusScreams = false;
|
||||
|
||||
// Achievements
|
||||
_abominationsKilled = 0;
|
||||
_faerlinaAchievement = true;
|
||||
@@ -260,8 +261,12 @@ public:
|
||||
void OnPlayerEnter(Player* player) override
|
||||
{
|
||||
InstanceScript::OnPlayerEnter(player);
|
||||
if (_thaddiusScreams == false)
|
||||
{
|
||||
_events.ScheduleEvent(EVENT_THADDIUS_SCREAMS, 2min, 2min + 30s);
|
||||
}
|
||||
|
||||
_events.ScheduleEvent(EVENT_THADDIUS_SCREAMS, 2min, 2min + 30s);
|
||||
SetData(DATA_THADDIUS_SCREAMS, 0);
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* creature) override
|
||||
@@ -457,6 +462,9 @@ public:
|
||||
case DATA_ABOMINATION_KILLED:
|
||||
++_abominationsKilled;
|
||||
return;
|
||||
case DATA_THADDIUS_SCREAMS:
|
||||
_thaddiusScreams = true;
|
||||
return;
|
||||
case DATA_FRENZY_REMOVED:
|
||||
_faerlinaAchievement = false;
|
||||
return;
|
||||
@@ -730,6 +738,7 @@ private:
|
||||
EventMap _events;
|
||||
uint8 _currentWingTaunt;
|
||||
uint8 _horsemanLoaded;
|
||||
bool _thaddiusScreams;
|
||||
|
||||
// GameObjects
|
||||
std::set<GameObject*> _heiganEruption[HeiganEruptSectionCount];
|
||||
|
||||
@@ -77,7 +77,7 @@ enum NaxxramasData
|
||||
DATA_DANCE_FAIL = 301,
|
||||
DATA_SPORE_KILLED = 302,
|
||||
DATA_FRENZY_REMOVED = 303,
|
||||
DATA_THADDIUS_INTRO = 304,
|
||||
DATA_THADDIUS_SCREAMS = 304,
|
||||
DATA_CHARGES_CROSSED = 305,
|
||||
DATA_HUNDRED_CLUB = 306,
|
||||
DATA_ABOMINATION_KILLED = 307,
|
||||
@@ -85,7 +85,6 @@ enum NaxxramasData
|
||||
|
||||
enum NaxxramasPersistentData
|
||||
{
|
||||
PERSISTENT_DATA_THADDIUS_INTRO = 0,
|
||||
PERSISTENT_DATA_KELTHUZAD_DIALOG = 1,
|
||||
PERSISTENT_DATA_IMMORTAL_FAIL = 2,
|
||||
PERSISTENT_DATA_COUNT
|
||||
|
||||
Reference in New Issue
Block a user