Skip to content

Commit 49c40db

Browse files
authored
Scripts/Slave Pens: Update scripts (TrinityCore#31918)
1 parent 13a7d54 commit 49c40db

3 files changed

Lines changed: 41 additions & 24 deletions

File tree

src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_mennu_the_betrayer.cpp

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18+
/*
19+
* Timers requires to be revisited
20+
*/
21+
1822
#include "ScriptMgr.h"
1923
#include "ScriptedCreature.h"
2024
#include "the_slave_pens.h"
@@ -52,12 +56,14 @@ struct boss_mennu_the_betrayer : public BossAI
5256
void JustEngagedWith(Unit* who) override
5357
{
5458
BossAI::JustEngagedWith(who);
55-
events.ScheduleEvent(EVENT_TAINTED_STONESKIN_TOTEM, 30s, 40s);
56-
events.ScheduleEvent(EVENT_TAINTED_EARTHGRAB_TOTEM, 20s, 30s);
57-
events.ScheduleEvent(EVENT_CORRUPTED_NOVA_TOTEM, 20s, 30s);
59+
60+
Talk(SAY_AGGRO);
61+
62+
events.ScheduleEvent(EVENT_TAINTED_STONESKIN_TOTEM, 15s, 20s);
63+
events.ScheduleEvent(EVENT_TAINTED_EARTHGRAB_TOTEM, 25s, 40s);
64+
events.ScheduleEvent(EVENT_CORRUPTED_NOVA_TOTEM, 25s, 35s);
5865
events.ScheduleEvent(EVENT_MENNUS_HEALING_WARD, 15s, 25s);
5966
events.ScheduleEvent(EVENT_LIGHTNING_BOLT, 10s, 20s);
60-
Talk(SAY_AGGRO);
6167
}
6268

6369
void KilledUnit(Unit* /*victim*/) override
@@ -87,19 +93,19 @@ struct boss_mennu_the_betrayer : public BossAI
8793
{
8894
case EVENT_TAINTED_STONESKIN_TOTEM:
8995
DoCastSelf(SPELL_TAINTED_STONESKIN_TOTEM);
90-
events.Repeat(35s, 40s);
96+
events.Repeat(30s, 35s);
9197
break;
9298
case EVENT_TAINTED_EARTHGRAB_TOTEM:
9399
DoCastSelf(SPELL_TAINTED_EARTHGRAB_TOTEM);
94-
events.Repeat(35s, 40s);
100+
events.Repeat(30s, 40s);
95101
break;
96102
case EVENT_CORRUPTED_NOVA_TOTEM:
97103
DoCastSelf(SPELL_CORRUPTED_NOVA_TOTEM);
98104
events.Repeat(35s, 40s);
99105
break;
100106
case EVENT_MENNUS_HEALING_WARD:
101107
DoCastSelf(SPELL_MENNUS_HEALING_WARD);
102-
events.Repeat(35s, 40s);
108+
events.Repeat(15s, 25s);
103109
break;
104110
case EVENT_LIGHTNING_BOLT:
105111
DoCastVictim(SPELL_LIGHTNING_BOLT);

src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_quagmirran.cpp

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18+
/*
19+
* Timers requires to be revisited
20+
*/
21+
1822
#include "ScriptMgr.h"
1923
#include "ScriptedCreature.h"
2024
#include "the_slave_pens.h"
@@ -43,10 +47,11 @@ struct boss_quagmirran : public BossAI
4347
void JustEngagedWith(Unit* who) override
4448
{
4549
BossAI::JustEngagedWith(who);
46-
events.ScheduleEvent(EVENT_ACID_SPRAY, 25s);
47-
events.ScheduleEvent(EVENT_CLEAVE, 9s);
48-
events.ScheduleEvent(EVENT_UPPERCUT, 20s);
49-
events.ScheduleEvent(EVENT_POISON_BOLT_VOLLEY, 31s);
50+
51+
events.ScheduleEvent(EVENT_ACID_SPRAY, 20s, 35s);
52+
events.ScheduleEvent(EVENT_CLEAVE, 8s, 20s);
53+
events.ScheduleEvent(EVENT_UPPERCUT, 20s, 35s);
54+
events.ScheduleEvent(EVENT_POISON_BOLT_VOLLEY, 20s, 30s);
5055
}
5156

5257
void UpdateAI(uint32 diff) override
@@ -64,21 +69,21 @@ struct boss_quagmirran : public BossAI
6469
switch (eventId)
6570
{
6671
case EVENT_ACID_SPRAY:
67-
DoCastAOE(SPELL_ACID_SPRAY);
68-
events.Repeat(20s, 25s);
72+
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 35.0f))
73+
DoCast(target, SPELL_ACID_SPRAY);
74+
events.Repeat(40s, 50s);
6975
break;
7076
case EVENT_CLEAVE:
7177
DoCastVictim(SPELL_CLEAVE);
72-
events.Repeat(18s, 34s);
78+
events.Repeat(20s, 25s);
7379
break;
7480
case EVENT_UPPERCUT:
75-
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1, 10.0f, true))
76-
DoCast(target, SPELL_UPPERCUT);
77-
events.Repeat(22s);
81+
DoCastVictim(SPELL_UPPERCUT);
82+
events.Repeat(20s, 30s);
7883
break;
7984
case EVENT_POISON_BOLT_VOLLEY:
8085
DoCastSelf(SPELL_POISON_BOLT_VOLLEY);
81-
events.Repeat(24s);
86+
events.Repeat(20s, 35s);
8287
break;
8388
default:
8489
break;

src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_rokmar_the_crackler.cpp

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@
1515
* with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*/
1717

18+
/*
19+
* Timers requires to be revisited
20+
*/
21+
1822
#include "ScriptMgr.h"
1923
#include "ScriptedCreature.h"
2024
#include "the_slave_pens.h"
@@ -49,14 +53,15 @@ struct boss_rokmar_the_crackler : public BossAI
4953
void JustEngagedWith(Unit* who) override
5054
{
5155
BossAI::JustEngagedWith(who);
52-
events.ScheduleEvent(EVENT_GRIEVOUS_WOUND, 10s);
53-
events.ScheduleEvent(EVENT_ENSNARING_MOSS, 20s);
54-
events.ScheduleEvent(EVENT_WATER_SPIT, 14s);
56+
57+
events.ScheduleEvent(EVENT_GRIEVOUS_WOUND, 10s, 25s);
58+
events.ScheduleEvent(EVENT_ENSNARING_MOSS, 10s, 25s);
59+
events.ScheduleEvent(EVENT_WATER_SPIT, 5s, 20s);
5560
}
5661

5762
void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override
5863
{
59-
if (!_frenzied && me->HealthBelowPctDamaged(10, damage))
64+
if (!_frenzied && me->HealthBelowPctDamaged(20, damage))
6065
{
6166
_frenzied = true;
6267
events.ScheduleEvent(EVENT_FRENZY, 0s);
@@ -82,12 +87,13 @@ struct boss_rokmar_the_crackler : public BossAI
8287
events.Repeat(20s, 30s);
8388
break;
8489
case EVENT_ENSNARING_MOSS:
85-
DoCastAOE(SPELL_ENSNARING_MOSS);
90+
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 30.0f))
91+
DoCast(target, SPELL_ENSNARING_MOSS);
8692
events.Repeat(20s, 30s);
8793
break;
8894
case EVENT_WATER_SPIT:
8995
DoCastAOE(SPELL_WATER_SPIT);
90-
events.Repeat(14s, 18s);
96+
events.Repeat(10s, 25s);
9197
break;
9298
case EVENT_FRENZY:
9399
DoCastSelf(SPELL_FRENZY);

0 commit comments

Comments
 (0)