*Merge.
--HG-- branch : trunk
This commit is contained in:
+58
-58
@@ -15,44 +15,45 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* ScriptData
|
/* ScriptData
|
||||||
SDName: Boss_High_Inquisitor_Faribanks
|
SDName: Boss_High_Inquisitor_Fairbanks
|
||||||
SD%Complete: 100
|
SD%Complete: 100
|
||||||
SDComment:
|
SDComment: TODO: if this guy not involved in some special event, remove (and let ACID script)
|
||||||
SDCategory: Scarlet Monastery
|
SDCategory: Scarlet Monastery
|
||||||
EndScriptData */
|
EndScriptData */
|
||||||
|
|
||||||
#include "precompiled.h"
|
#include "precompiled.h"
|
||||||
|
|
||||||
#define SPELL_SLEEP2 1090
|
enum
|
||||||
#define SPELL_CURSEOFBLOOD 16098
|
{
|
||||||
#define SPELL_SMITE 6060
|
SPELL_CURSEOFBLOOD = 8282,
|
||||||
#define SPELL_SHADOWWORDPAIN 2767
|
SPELL_DISPELMAGIC = 15090,
|
||||||
#define SPELL_FLASHHEAL4 9474
|
SPELL_FEAR = 12096,
|
||||||
#define SPELL_RENEW6 6078
|
SPELL_HEAL = 12039,
|
||||||
#define SPELL_DEVOURINGPLAGUE3 19277
|
SPELL_POWERWORDSHIELD = 11647,
|
||||||
#define SPELL_MINDBLAST5 8105
|
SPELL_SLEEP = 8399
|
||||||
|
};
|
||||||
|
|
||||||
struct TRINITY_DLL_DECL boss_high_inquisitor_fairbanksAI : public ScriptedAI
|
struct TRINITY_DLL_DECL boss_high_inquisitor_fairbanksAI : public ScriptedAI
|
||||||
{
|
{
|
||||||
boss_high_inquisitor_fairbanksAI(Creature *c) : ScriptedAI(c) {}
|
boss_high_inquisitor_fairbanksAI(Creature *c) : ScriptedAI(c) {}
|
||||||
|
|
||||||
uint32 Healing_Timer;
|
|
||||||
uint32 Sleep2_Timer;
|
|
||||||
uint32 Smite_Timer;
|
|
||||||
uint32 ShadowWordPain_Timer;
|
|
||||||
uint32 CurseOfBlood_Timer;
|
uint32 CurseOfBlood_Timer;
|
||||||
uint32 DevouringPlague3_Timer;
|
uint32 DispelMagic_Timer;
|
||||||
uint32 MindBlast5_Timer;
|
uint32 Fear_Timer;
|
||||||
|
uint32 Heal_Timer;
|
||||||
|
uint32 Sleep_Timer;
|
||||||
|
uint32 Dispel_Timer;
|
||||||
|
bool PowerWordShield;
|
||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
Healing_Timer = 300;
|
CurseOfBlood_Timer = 10000;
|
||||||
Sleep2_Timer = 45000;
|
DispelMagic_Timer = 30000;
|
||||||
Smite_Timer = 30000;
|
Fear_Timer = 40000;
|
||||||
ShadowWordPain_Timer = 30000;
|
Heal_Timer = 30000;
|
||||||
CurseOfBlood_Timer = 45000;
|
Sleep_Timer = 30000;
|
||||||
DevouringPlague3_Timer = 60000;
|
Dispel_Timer = 20000;
|
||||||
MindBlast5_Timer = 20000;
|
PowerWordShield = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnterCombat(Unit *who)
|
void EnterCombat(Unit *who)
|
||||||
@@ -64,33 +65,46 @@ struct TRINITY_DLL_DECL boss_high_inquisitor_fairbanksAI : public ScriptedAI
|
|||||||
if (!UpdateVictim())
|
if (!UpdateVictim())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
//If we are <45% hp cast Renew rank 6 or Flash heal rank 4
|
//If we are <25% hp cast Heal
|
||||||
if ( m_creature->GetHealth()*100 / m_creature->GetMaxHealth() <= 45 && !m_creature->IsNonMeleeSpellCasted(false) && Healing_Timer < diff)
|
if (m_creature->GetHealth()*100 / m_creature->GetMaxHealth() <= 25 && !m_creature->IsNonMeleeSpellCasted(false) && Heal_Timer < diff)
|
||||||
{
|
{
|
||||||
DoCast(m_creature->getVictim(),SPELL_RENEW6 || SPELL_FLASHHEAL4);
|
DoCast(m_creature,SPELL_HEAL);
|
||||||
Healing_Timer = 30000;
|
Heal_Timer = 30000;
|
||||||
}else Healing_Timer -= diff;
|
}else Heal_Timer -= diff;
|
||||||
|
|
||||||
//Sleep2_Timer
|
//Fear_Timer
|
||||||
if (Sleep2_Timer < diff)
|
if (Fear_Timer < diff)
|
||||||
{
|
{
|
||||||
DoCast(m_creature->getVictim(),SPELL_SLEEP2);
|
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,1))
|
||||||
Sleep2_Timer = 45000;
|
DoCast(target,SPELL_FEAR);
|
||||||
}else Sleep2_Timer -= diff;
|
|
||||||
|
|
||||||
//Smite_Timer
|
Fear_Timer = 40000;
|
||||||
if (Smite_Timer < diff)
|
}else Fear_Timer -= diff;
|
||||||
{
|
|
||||||
DoCast(m_creature->getVictim(),SPELL_SMITE);
|
|
||||||
Smite_Timer = 20000;
|
|
||||||
}else Smite_Timer -= diff;
|
|
||||||
|
|
||||||
//ShadowWordPain_Timer
|
//Sleep_Timer
|
||||||
if (ShadowWordPain_Timer < diff)
|
if (Sleep_Timer < diff)
|
||||||
{
|
{
|
||||||
DoCast(m_creature->getVictim(),SPELL_SHADOWWORDPAIN);
|
if (Unit* target = SelectUnit(SELECT_TARGET_TOPAGGRO,0))
|
||||||
ShadowWordPain_Timer = 30000;
|
DoCast(target,SPELL_SLEEP);
|
||||||
}else ShadowWordPain_Timer -= diff;
|
|
||||||
|
Sleep_Timer = 30000;
|
||||||
|
}else Sleep_Timer -= diff;
|
||||||
|
|
||||||
|
//PowerWordShield_Timer
|
||||||
|
if (!PowerWordShield && m_creature->GetHealth()*100 / m_creature->GetMaxHealth() <= 25)
|
||||||
|
{
|
||||||
|
DoCast(m_creature,SPELL_POWERWORDSHIELD);
|
||||||
|
PowerWordShield = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Dispel_Timer
|
||||||
|
if (Dispel_Timer < diff)
|
||||||
|
{
|
||||||
|
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0))
|
||||||
|
DoCast(target, SPELL_DISPELMAGIC);
|
||||||
|
|
||||||
|
DispelMagic_Timer = 30000;
|
||||||
|
}else DispelMagic_Timer -= diff;
|
||||||
|
|
||||||
//CurseOfBlood_Timer
|
//CurseOfBlood_Timer
|
||||||
if (CurseOfBlood_Timer < diff)
|
if (CurseOfBlood_Timer < diff)
|
||||||
@@ -99,20 +113,6 @@ struct TRINITY_DLL_DECL boss_high_inquisitor_fairbanksAI : public ScriptedAI
|
|||||||
CurseOfBlood_Timer = 25000;
|
CurseOfBlood_Timer = 25000;
|
||||||
}else CurseOfBlood_Timer -= diff;
|
}else CurseOfBlood_Timer -= diff;
|
||||||
|
|
||||||
//DevouringPlague3_Timer
|
|
||||||
if (DevouringPlague3_Timer < diff)
|
|
||||||
{
|
|
||||||
DoCast(m_creature->getVictim(),SPELL_DEVOURINGPLAGUE3);
|
|
||||||
DevouringPlague3_Timer = 35000;
|
|
||||||
}else DevouringPlague3_Timer -= diff;
|
|
||||||
|
|
||||||
//MindBlast5_Timer
|
|
||||||
if (MindBlast5_Timer < diff)
|
|
||||||
{
|
|
||||||
DoCast(m_creature->getVictim(),SPELL_MINDBLAST5);
|
|
||||||
MindBlast5_Timer = 30000;
|
|
||||||
}else MindBlast5_Timer -= diff;
|
|
||||||
|
|
||||||
DoMeleeAttackIfReady();
|
DoMeleeAttackIfReady();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -23,20 +23,22 @@ EndScriptData */
|
|||||||
|
|
||||||
#include "precompiled.h"
|
#include "precompiled.h"
|
||||||
|
|
||||||
#define SAY_AGGRO -1189021
|
enum
|
||||||
|
{
|
||||||
#define SPELL_SUMMONSCARLETHOUND 17164
|
SAY_AGGRO = -1189021,
|
||||||
#define SPELL_ENRAGE 6742
|
SPELL_SUMMONSCARLETHOUND = 17164,
|
||||||
|
SPELL_BLOODLUST = 6742
|
||||||
|
};
|
||||||
|
|
||||||
struct TRINITY_DLL_DECL boss_houndmaster_lokseyAI : public ScriptedAI
|
struct TRINITY_DLL_DECL boss_houndmaster_lokseyAI : public ScriptedAI
|
||||||
{
|
{
|
||||||
boss_houndmaster_lokseyAI(Creature *c) : ScriptedAI(c) {}
|
boss_houndmaster_lokseyAI(Creature *c) : ScriptedAI(c) {}
|
||||||
|
|
||||||
uint32 Enrage_Timer;
|
uint32 BloodLust_Timer;
|
||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
Enrage_Timer = 0;
|
BloodLust_Timer = 20000;
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnterCombat(Unit *who)
|
void EnterCombat(Unit *who)
|
||||||
@@ -49,12 +51,11 @@ struct TRINITY_DLL_DECL boss_houndmaster_lokseyAI : public ScriptedAI
|
|||||||
if (!UpdateVictim())
|
if (!UpdateVictim())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
//If we are <25% hp, bloodlust
|
if (BloodLust_Timer < diff)
|
||||||
if (m_creature->GetHealth()*100 / m_creature->GetMaxHealth() <= 25 && Enrage_Timer < diff)
|
|
||||||
{
|
{
|
||||||
DoCast(m_creature,SPELL_ENRAGE);
|
DoCast(m_creature,SPELL_BLOODLUST);
|
||||||
Enrage_Timer = 60000;
|
BloodLust_Timer = 20000;
|
||||||
}else Enrage_Timer -= diff;
|
}else BloodLust_Timer -= diff;
|
||||||
|
|
||||||
DoMeleeAttackIfReady();
|
DoMeleeAttackIfReady();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,9 +15,9 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* ScriptData
|
/* ScriptData
|
||||||
SDName: boss_darhrohan_balnazzar
|
SDName: Boss_Dathrohan_Balnazzar
|
||||||
SD%Complete: 75
|
SD%Complete: 95
|
||||||
SDComment: Fix timers, fix spells, possibly fix summons after death
|
SDComment: Possibly need to fix/improve summons after death
|
||||||
SDCategory: Stratholme
|
SDCategory: Stratholme
|
||||||
EndScriptData */
|
EndScriptData */
|
||||||
|
|
||||||
@@ -28,17 +28,16 @@ enum
|
|||||||
//Dathrohan spells
|
//Dathrohan spells
|
||||||
SPELL_CRUSADERSHAMMER = 17286, //AOE stun
|
SPELL_CRUSADERSHAMMER = 17286, //AOE stun
|
||||||
SPELL_CRUSADERSTRIKE = 17281,
|
SPELL_CRUSADERSTRIKE = 17281,
|
||||||
SPELL_MINDBLAST = 17287,
|
|
||||||
SPELL_HOLYSTRIKE = 17284, //weapon dmg +3
|
SPELL_HOLYSTRIKE = 17284, //weapon dmg +3
|
||||||
|
|
||||||
//Transform
|
//Transform
|
||||||
SPELL_BALNAZZARTRANSFORM = 17288, //restore full HP/mana, trigger spell Balnazzar Transform Stun
|
SPELL_BALNAZZARTRANSFORM = 17288, //restore full HP/mana, trigger spell Balnazzar Transform Stun
|
||||||
|
|
||||||
//Balnazzar spells
|
//Balnazzar spells
|
||||||
SPELL_SHADOWSHOCK = 20603, //AOE 740-860dmg
|
SPELL_SHADOWSHOCK = 17399,
|
||||||
SPELL_PSYCHICSCREAM = 15398, //One target, might want to make a code selecting random target
|
SPELL_MINDBLAST = 17287,
|
||||||
|
SPELL_PSYCHICSCREAM = 13704,
|
||||||
SPELL_SLEEP = 12098,
|
SPELL_SLEEP = 12098,
|
||||||
SPELL_SHADOWBOLTVOLLEY = 20741, //AOE, 255-345dmg
|
|
||||||
SPELL_MINDCONTROL = 15690,
|
SPELL_MINDCONTROL = 15690,
|
||||||
|
|
||||||
NPC_DATHROHAN = 10812,
|
NPC_DATHROHAN = 10812,
|
||||||
@@ -75,20 +74,18 @@ struct TRINITY_DLL_DECL boss_dathrohan_balnazzarAI : public ScriptedAI
|
|||||||
uint32 m_uiShadowShock_Timer;
|
uint32 m_uiShadowShock_Timer;
|
||||||
uint32 m_uiPsychicScream_Timer;
|
uint32 m_uiPsychicScream_Timer;
|
||||||
uint32 m_uiDeepSleep_Timer;
|
uint32 m_uiDeepSleep_Timer;
|
||||||
uint32 m_uiShadowBoltVolley_Timer;
|
|
||||||
uint32 m_uiMindControl_Timer;
|
uint32 m_uiMindControl_Timer;
|
||||||
bool m_bTransformed;
|
bool m_bTransformed;
|
||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
m_uiCrusadersHammer_Timer = 8000;
|
m_uiCrusadersHammer_Timer = 8000;
|
||||||
m_uiCrusaderStrike_Timer = 14000;
|
m_uiCrusaderStrike_Timer = 12000;
|
||||||
m_uiMindBlast_Timer = 17000;
|
m_uiMindBlast_Timer = 6000;
|
||||||
m_uiHolyStrike_Timer = 18000;
|
m_uiHolyStrike_Timer = 18000;
|
||||||
m_uiShadowShock_Timer = 4000;
|
m_uiShadowShock_Timer = 4000;
|
||||||
m_uiPsychicScream_Timer = 16000;
|
m_uiPsychicScream_Timer = 16000;
|
||||||
m_uiDeepSleep_Timer = 20000;
|
m_uiDeepSleep_Timer = 20000;
|
||||||
m_uiShadowBoltVolley_Timer = 9000;
|
|
||||||
m_uiMindControl_Timer = 10000;
|
m_uiMindControl_Timer = 10000;
|
||||||
m_bTransformed = false;
|
m_bTransformed = false;
|
||||||
|
|
||||||
@@ -118,6 +115,13 @@ struct TRINITY_DLL_DECL boss_dathrohan_balnazzarAI : public ScriptedAI
|
|||||||
//START NOT TRANSFORMED
|
//START NOT TRANSFORMED
|
||||||
if (!m_bTransformed)
|
if (!m_bTransformed)
|
||||||
{
|
{
|
||||||
|
//MindBlast
|
||||||
|
if (m_uiMindBlast_Timer < uiDiff)
|
||||||
|
{
|
||||||
|
DoCast(m_creature->getVictim(),SPELL_MINDBLAST);
|
||||||
|
m_uiMindBlast_Timer = 15000 + rand()%5000;
|
||||||
|
}else m_uiMindBlast_Timer -= uiDiff;
|
||||||
|
|
||||||
//CrusadersHammer
|
//CrusadersHammer
|
||||||
if (m_uiCrusadersHammer_Timer < uiDiff)
|
if (m_uiCrusadersHammer_Timer < uiDiff)
|
||||||
{
|
{
|
||||||
@@ -132,13 +136,6 @@ struct TRINITY_DLL_DECL boss_dathrohan_balnazzarAI : public ScriptedAI
|
|||||||
m_uiCrusaderStrike_Timer = 15000;
|
m_uiCrusaderStrike_Timer = 15000;
|
||||||
}else m_uiCrusaderStrike_Timer -= uiDiff;
|
}else m_uiCrusaderStrike_Timer -= uiDiff;
|
||||||
|
|
||||||
//MindBlast
|
|
||||||
if (m_uiMindBlast_Timer < uiDiff)
|
|
||||||
{
|
|
||||||
DoCast(m_creature->getVictim(),SPELL_MINDBLAST);
|
|
||||||
m_uiMindBlast_Timer = 10000;
|
|
||||||
}else m_uiMindBlast_Timer -= uiDiff;
|
|
||||||
|
|
||||||
//HolyStrike
|
//HolyStrike
|
||||||
if (m_uiHolyStrike_Timer < uiDiff)
|
if (m_uiHolyStrike_Timer < uiDiff)
|
||||||
{
|
{
|
||||||
@@ -164,7 +161,7 @@ struct TRINITY_DLL_DECL boss_dathrohan_balnazzarAI : public ScriptedAI
|
|||||||
if (m_uiMindBlast_Timer < uiDiff)
|
if (m_uiMindBlast_Timer < uiDiff)
|
||||||
{
|
{
|
||||||
DoCast(m_creature->getVictim(),SPELL_MINDBLAST);
|
DoCast(m_creature->getVictim(),SPELL_MINDBLAST);
|
||||||
m_uiMindBlast_Timer = 10000;
|
m_uiMindBlast_Timer = 15000 + rand()%5000;
|
||||||
}else m_uiMindBlast_Timer -= uiDiff;
|
}else m_uiMindBlast_Timer -= uiDiff;
|
||||||
|
|
||||||
//ShadowShock
|
//ShadowShock
|
||||||
@@ -192,13 +189,6 @@ struct TRINITY_DLL_DECL boss_dathrohan_balnazzarAI : public ScriptedAI
|
|||||||
m_uiDeepSleep_Timer = 15000;
|
m_uiDeepSleep_Timer = 15000;
|
||||||
}else m_uiDeepSleep_Timer -= uiDiff;
|
}else m_uiDeepSleep_Timer -= uiDiff;
|
||||||
|
|
||||||
//ShadowBoltVolley
|
|
||||||
if (m_uiShadowBoltVolley_Timer < uiDiff)
|
|
||||||
{
|
|
||||||
DoCast(m_creature->getVictim(),SPELL_SHADOWBOLTVOLLEY);
|
|
||||||
m_uiShadowBoltVolley_Timer = 13000;
|
|
||||||
}else m_uiShadowBoltVolley_Timer -= uiDiff;
|
|
||||||
|
|
||||||
//MindControl
|
//MindControl
|
||||||
if (m_uiMindControl_Timer < uiDiff)
|
if (m_uiMindControl_Timer < uiDiff)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -25,43 +25,46 @@ EndScriptData */
|
|||||||
#include "def_zulaman.h"
|
#include "def_zulaman.h"
|
||||||
#include "GridNotifiers.h"
|
#include "GridNotifiers.h"
|
||||||
|
|
||||||
#define SAY_AGGRO -1568000
|
enum
|
||||||
#define SAY_FIRE_BOMBS -1568001
|
{
|
||||||
#define SAY_SUMMON_HATCHER -1568002
|
SAY_AGGRO = -1568000,
|
||||||
#define SAY_ALL_EGGS -1568003
|
SAY_FIRE_BOMBS = -1568001,
|
||||||
#define SAY_BERSERK -1568004
|
SAY_SUMMON_HATCHER = -1568002,
|
||||||
#define SAY_SLAY_1 -1568005
|
SAY_ALL_EGGS = -1568003,
|
||||||
#define SAY_SLAY_2 -1568006
|
SAY_BERSERK = -1568004,
|
||||||
#define SAY_DEATH -1568007
|
SAY_SLAY_1 = -1568005,
|
||||||
#define SAY_EVENT_STRANGERS -1568008
|
SAY_SLAY_2 = -1568006,
|
||||||
#define SAY_EVENT_FRIENDS -1568009
|
SAY_DEATH = -1568007,
|
||||||
|
SAY_EVENT_STRANGERS = -1568008,
|
||||||
|
SAY_EVENT_FRIENDS = -1568009,
|
||||||
|
|
||||||
// Jan'alai
|
// Jan'alai
|
||||||
// --Spell
|
SPELL_FLAME_BREATH = 43140,
|
||||||
#define SPELL_FLAME_BREATH 43140
|
SPELL_FIRE_WALL = 43113,
|
||||||
#define SPELL_FIRE_WALL 43113
|
SPELL_ENRAGE = 44779,
|
||||||
#define SPELL_ENRAGE 44779
|
SPELL_SUMMON_PLAYERS = 43097,
|
||||||
#define SPELL_SUMMON_PLAYERS 43097
|
SPELL_TELE_TO_CENTER = 43098, // coord
|
||||||
#define SPELL_TELE_TO_CENTER 43098 // coord
|
SPELL_HATCH_ALL = 43144,
|
||||||
#define SPELL_HATCH_ALL 43144
|
SPELL_BERSERK = 45078,
|
||||||
#define SPELL_BERSERK 45078
|
|
||||||
// -- Fire Bob Spells
|
// -- Fire Bob Spells
|
||||||
#define SPELL_FIRE_BOMB_CHANNEL 42621 // last forever
|
SPELL_FIRE_BOMB_CHANNEL = 42621, // last forever
|
||||||
#define SPELL_FIRE_BOMB_THROW 42628 // throw visual
|
SPELL_FIRE_BOMB_THROW = 42628, // throw visual
|
||||||
#define SPELL_FIRE_BOMB_DUMMY 42629 // bomb visual
|
SPELL_FIRE_BOMB_DUMMY = 42629, // bomb visual
|
||||||
#define SPELL_FIRE_BOMB_DAMAGE 42630
|
SPELL_FIRE_BOMB_DAMAGE = 42630,
|
||||||
|
|
||||||
// --Summons
|
// --Summons
|
||||||
#define MOB_AMANI_HATCHER 23818
|
MOB_AMANI_HATCHER = 23818,
|
||||||
#define MOB_HATCHLING 23598 // 42493
|
MOB_HATCHLING = 23598, // 42493
|
||||||
#define MOB_EGG 23817
|
MOB_EGG = 23817,
|
||||||
#define MOB_FIRE_BOMB 23920
|
MOB_FIRE_BOMB = 23920,
|
||||||
|
|
||||||
// -- Hatcher Spells
|
// -- Hatcher Spells
|
||||||
#define SPELL_HATCH_EGG 43734 // 42471
|
SPELL_HATCH_EGG = 43734, // 42471
|
||||||
|
|
||||||
// -- Hatchling Spells
|
// -- Hatchling Spells
|
||||||
#define SPELL_FLAMEBUFFET 43299
|
SPELL_FLAMEBUFFET = 43299
|
||||||
|
};
|
||||||
|
|
||||||
const int area_dx = 44;
|
const int area_dx = 44;
|
||||||
const int area_dy = 51;
|
const int area_dy = 51;
|
||||||
@@ -139,7 +142,7 @@ struct TRINITY_DLL_DECL boss_janalaiAI : public ScriptedAI
|
|||||||
BombSequenceTimer = 1000;
|
BombSequenceTimer = 1000;
|
||||||
BombCount = 0;
|
BombCount = 0;
|
||||||
HatcherTimer = 10000;
|
HatcherTimer = 10000;
|
||||||
EnrageTimer = 300000;
|
EnrageTimer = MINUTE*5*IN_MILISECONDS;
|
||||||
ResetTimer = 5000;
|
ResetTimer = 5000;
|
||||||
|
|
||||||
noeggs = false;
|
noeggs = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user