diff options
Diffstat (limited to 'src/server')
113 files changed, 403 insertions, 422 deletions
diff --git a/src/server/authserver/Server/AuthSession.cpp b/src/server/authserver/Server/AuthSession.cpp index 560cf75b447..bcc32887616 100644 --- a/src/server/authserver/Server/AuthSession.cpp +++ b/src/server/authserver/Server/AuthSession.cpp @@ -145,7 +145,7 @@ void AuthSession::AsyncReadHeader()                  if ((uint8)entry.cmd == _readBuffer[0] && (entry.status == STATUS_CONNECTED || (_isAuthenticated && entry.status == STATUS_AUTHED)))                  {                      // Handle dynamic size packet -                    if (_readBuffer[0] == AUTH_LOGON_CHALLENGE) +                    if (_readBuffer[0] == AUTH_LOGON_CHALLENGE || _readBuffer[0] == AUTH_RECONNECT_CHALLENGE)                      {                          _socket.read_some(boost::asio::buffer(&_readBuffer[1], sizeof(uint8) + sizeof(uint16))); //error + size diff --git a/src/server/game/AI/CoreAI/CombatAI.cpp b/src/server/game/AI/CoreAI/CombatAI.cpp index 27144728a3e..78ba5d0719c 100644 --- a/src/server/game/AI/CoreAI/CombatAI.cpp +++ b/src/server/game/AI/CoreAI/CombatAI.cpp @@ -76,7 +76,7 @@ void CombatAI::EnterCombat(Unit* who)          if (AISpellInfo[*i].condition == AICOND_AGGRO)              me->CastSpell(who, *i, false);          else if (AISpellInfo[*i].condition == AICOND_COMBAT) -            events.ScheduleEvent(*i, AISpellInfo[*i].cooldown + rand()%AISpellInfo[*i].cooldown); +            events.ScheduleEvent(*i, AISpellInfo[*i].cooldown + rand32() % AISpellInfo[*i].cooldown);      }  } @@ -93,7 +93,7 @@ void CombatAI::UpdateAI(uint32 diff)      if (uint32 spellId = events.ExecuteEvent())      {          DoCast(spellId); -        events.ScheduleEvent(spellId, AISpellInfo[spellId].cooldown + rand()%AISpellInfo[spellId].cooldown); +        events.ScheduleEvent(spellId, AISpellInfo[spellId].cooldown + rand32() % AISpellInfo[spellId].cooldown);      }      else          DoMeleeAttackIfReady(); @@ -125,7 +125,7 @@ void CasterAI::EnterCombat(Unit* who)      if (spells.empty())          return; -    uint32 spell = rand()%spells.size(); +    uint32 spell = rand32() % spells.size();      uint32 count = 0;      for (SpellVct::iterator itr = spells.begin(); itr != spells.end(); ++itr, ++count)      { diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index daef0208678..a287b94c2f8 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -3465,7 +3465,7 @@ void Spell::EffectScriptEffect(SpellEffIndex effIndex)                          return;                      uint32 spellId = 0; -                    switch (rand() % 4) +                    switch (rand32() % 4)                      {                          case 0: spellId = 46740; break;                          case 1: spellId = 46739; break; diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/blackrock_depths.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/blackrock_depths.cpp index 3eab75cfd76..907aaed3a0d 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/blackrock_depths.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/blackrock_depths.cpp @@ -125,7 +125,7 @@ public:          npc_grimstoneAI(Creature* creature) : npc_escortAI(creature)          {              instance = creature->GetInstanceScript(); -            MobSpawnId = rand()%6; +            MobSpawnId = rand32() % 6;          }          InstanceScript* instance; @@ -175,7 +175,7 @@ public:          /// @todo move them to center          void SummonRingBoss()          { -            if (Creature* tmp = me->SummonCreature(RingBoss[rand()%6], 644.300f, -175.989f, -53.739f, 3.418f, TEMPSUMMON_DEAD_DESPAWN, 0)) +            if (Creature* tmp = me->SummonCreature(RingBoss[rand32() % 6], 644.300f, -175.989f, -53.739f, 3.418f, TEMPSUMMON_DEAD_DESPAWN, 0))                  RingBossGUID = tmp->GetGUID();              MobDeath_Timer = 2500; diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp index a3804f8b35a..bba98839fef 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp @@ -418,7 +418,7 @@ public:          void KilledUnit(Unit* victim) override          { -            if (rand()%5) +            if (rand32() % 5)                  return;              Talk(SAY_SLAY, victim); diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_vaelastrasz.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_vaelastrasz.cpp index 5d7e7403686..6e55f9d41fb 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_vaelastrasz.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_vaelastrasz.cpp @@ -111,7 +111,7 @@ public:          void KilledUnit(Unit* victim) override          { -            if (rand()%5) +            if (rand32() % 5)                  return;              Talk(SAY_KILLTARGET, victim); diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_curator.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_curator.cpp index 06c523dfabb..9fe21313f71 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_curator.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_curator.cpp @@ -136,7 +136,7 @@ public:                  if (AddTimer <= diff)                  {                      //Summon Astral Flare -                    Creature* AstralFlare = DoSpawnCreature(17096, float(rand()%37), float(rand()%37), 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); +                    Creature* AstralFlare = DoSpawnCreature(17096, float(rand32() % 37), float(rand32() % 37), 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000);                      Unit* target = NULL;                      target = SelectTarget(SELECT_TARGET_RANDOM, 0); diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_maiden_of_virtue.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_maiden_of_virtue.cpp index 2e29c68e2ce..04b58af2a4a 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_maiden_of_virtue.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_maiden_of_virtue.cpp @@ -64,9 +64,9 @@ public:          void Reset() override          { -            Repentance_Timer    = 25000+(rand()%15000); -            Holyfire_Timer      = 8000+(rand()%17000); -            Holywrath_Timer     = 15000+(rand()%10000); +            Repentance_Timer = 25000 + (rand32() % 15000); +            Holyfire_Timer = 8000 + (rand32() % 17000); +            Holywrath_Timer = 15000 + (rand32() % 10000);              Holyground_Timer    = 3000;              Enrage_Timer        = 600000; diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_midnight.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_midnight.cpp index b130ac74be3..d812a8e3001 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_midnight.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_midnight.cpp @@ -294,7 +294,7 @@ void boss_attumen::boss_attumenAI::UpdateAI(uint32 diff)                  target = NULL;              }              if (!target_list.empty()) -                target = *(target_list.begin()+rand()%target_list.size()); +                target = *(target_list.begin() + rand32() % target_list.size());              DoCast(target, SPELL_BERSERKER_CHARGE);              ChargeTimer = 20000; diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_moroes.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_moroes.cpp index 0ca7ee90986..411ebed869d 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_moroes.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_moroes.cpp @@ -358,7 +358,7 @@ struct boss_moroes_guestAI : public ScriptedAI      Unit* SelectGuestTarget()      { -        uint64 TempGUID = GuestGUID[rand()%4]; +        uint64 TempGUID = GuestGUID[rand32() % 4];          if (TempGUID)          {              Unit* unit = ObjectAccessor::GetUnit(*me, TempGUID); diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_netherspite.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_netherspite.cpp index 010b7223f97..e495cae71fc 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_netherspite.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_netherspite.cpp @@ -140,7 +140,7 @@ public:          void SummonPortals()          { -            uint8 r = rand()%4; +            uint8 r = rand32() % 4;              uint8 pos[3];              pos[RED_PORTAL] = ((r % 2) ? (r > 1 ? 2 : 1) : 0);              pos[GREEN_PORTAL] = ((r % 2) ? 0 : (r > 1 ? 2 : 1)); diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp index befe72a6403..e6c544aa0a0 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_prince_malchezaar.cpp @@ -322,7 +322,7 @@ public:              //cut down to size if we have more than 5 targets              while (targets.size() > 5) -                targets.erase(targets.begin()+rand()%targets.size()); +                targets.erase(targets.begin() + rand32() % targets.size());              uint32 i = 0;              for (std::vector<Unit*>::const_iterator iter = targets.begin(); iter != targets.end(); ++iter, ++i) diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp index 9bda41b03a1..6a89adca967 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp @@ -131,7 +131,7 @@ public:              BerserkTimer = 720000;              CloseDoorTimer = 15000; -            LastSuperSpell = rand()%3; +            LastSuperSpell = rand32() % 3;              FlameWreathTimer = 0;              FlameWreathCheckTime = 0; @@ -192,7 +192,7 @@ public:              //cut down to size if we have more than 3 targets              while (targets.size() > 3) -                targets.erase(targets.begin()+rand()%targets.size()); +                targets.erase(targets.begin() + rand32() % targets.size());              uint32 i = 0;              for (std::vector<Unit*>::const_iterator itr = targets.begin(); itr!= targets.end(); ++itr) @@ -322,7 +322,7 @@ public:                      //If no available spells wait 1 second and try again                      if (AvailableSpells)                      { -                        CurrentNormalSpell = Spells[rand() % AvailableSpells]; +                        CurrentNormalSpell = Spells[rand32() % AvailableSpells];                          DoCast(target, CurrentNormalSpell);                      }                  } @@ -514,7 +514,7 @@ public:          void Reset() override          { -            CastTimer = 2000 + (rand()%3000); +            CastTimer = 2000 + (rand32() % 3000);          }          void EnterCombat(Unit* /*who*/) override { } diff --git a/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp b/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp index c0e6a8d3b90..dd5ad8ee7ae 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp @@ -350,7 +350,7 @@ public:          void SpellHit(Unit* /*caster*/, const SpellInfo* Spell) override          { -            if ((Spell->SchoolMask == SPELL_SCHOOL_MASK_FIRE) && (!(rand()%10))) +            if ((Spell->SchoolMask == SPELL_SCHOOL_MASK_FIRE) && (!(rand32() % 10)))              {                  /*                      if (not direct damage(aoe, dot)) diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp index 2af9d9b1567..45fd9fed60a 100644 --- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp +++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp @@ -195,7 +195,7 @@ public:                  //remove random entries                  while (LackeyEntryList.size() > MAX_ACTIVE_LACKEY) -                    LackeyEntryList.erase(LackeyEntryList.begin() + rand()%LackeyEntryList.size()); +                    LackeyEntryList.erase(LackeyEntryList.begin() + rand32() % LackeyEntryList.size());                  //summon all the remaining in vector                  for (std::vector<uint32>::const_iterator itr = LackeyEntryList.begin(); itr != LackeyEntryList.end(); ++itr) @@ -287,7 +287,7 @@ public:                  Unit* target = me;                  if (urand(0, 1)) -                    if (Unit* pAdd = ObjectAccessor::GetUnit(*me, m_auiLackeyGUID[rand()%MAX_ACTIVE_LACKEY])) +                    if (Unit* pAdd = ObjectAccessor::GetUnit(*me, m_auiLackeyGUID[rand32() % MAX_ACTIVE_LACKEY]))                          if (pAdd->IsAlive())                              target = pAdd; @@ -300,7 +300,7 @@ public:                  Unit* target = me;                  if (urand(0, 1)) -                    if (Unit* pAdd = ObjectAccessor::GetUnit(*me, m_auiLackeyGUID[rand()%MAX_ACTIVE_LACKEY])) +                    if (Unit* pAdd = ObjectAccessor::GetUnit(*me, m_auiLackeyGUID[rand32() % MAX_ACTIVE_LACKEY]))                          if (pAdd->IsAlive() && !pAdd->HasAura(SPELL_SHIELD))                              target = pAdd; @@ -319,7 +319,7 @@ public:                      if (urand(0, 1))                          target = me;                      else -                        if (Unit* pAdd = ObjectAccessor::GetUnit(*me, m_auiLackeyGUID[rand()%MAX_ACTIVE_LACKEY])) +                        if (Unit* pAdd = ObjectAccessor::GetUnit(*me, m_auiLackeyGUID[rand32() % MAX_ACTIVE_LACKEY]))                              if (pAdd->IsAlive())                                  target = pAdd;                  } @@ -1167,17 +1167,8 @@ public:              if (Healing_Wave_Timer <= diff)              { -                // std::vector<Add*>::const_iterator itr = Group.begin() + rand()%Group.size(); -                // uint64 guid = (*itr)->guid; -                // if (guid) -                // { -                //   Unit* pAdd = ObjectAccessor::GetUnit(*me, (*itr)->guid); -                //   if (pAdd && pAdd->IsAlive()) -                //   {                  DoCast(me, SPELL_LESSER_HEALING_WAVE);                  Healing_Wave_Timer = 5000; -                //    } -                // }              } else Healing_Wave_Timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp index 09377f20bed..8e3743ad5e2 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp @@ -514,7 +514,7 @@ public:          void Shout()          { -            if (rand()%100 < 15) +            if (rand32() % 100 < 15)                  Talk(SAY_VALROTH_RAND);          } diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter5.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter5.cpp index 40773c87b68..2800e9473b7 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter5.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter5.cpp @@ -669,7 +669,7 @@ public:                              uiPhase_timer = 500;                              if (uiSummon_counter < ENCOUNTER_GHOUL_NUMBER)                              { -                                Unit* temp = me->SummonCreature(NPC_ACHERUS_GHOUL, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                                Unit* temp = me->SummonCreature(NPC_ACHERUS_GHOUL, (me->GetPositionX() - 20) + rand32() % 40, (me->GetPositionY() - 20) + rand32() % 40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                                  temp->SetWalk(false);                                  temp->setFaction(2084);                                  uiGhoulGUID[uiSummon_counter] = temp->GetGUID(); @@ -687,7 +687,7 @@ public:                              uiPhase_timer = 500;                              if (uiSummon_counter < ENCOUNTER_ABOMINATION_NUMBER)                              { -                                Unit* temp = me->SummonCreature(NPC_RAMPAGING_ABOMINATION, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                                Unit* temp = me->SummonCreature(NPC_RAMPAGING_ABOMINATION, (me->GetPositionX() - 20) + rand32() % 40, (me->GetPositionY() - 20) + rand32() % 40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                                  temp->SetWalk(false);                                  temp->setFaction(2084);                                  uiAbominationGUID[uiSummon_counter] = temp->GetGUID(); @@ -705,7 +705,7 @@ public:                              uiPhase_timer = 500;                              if (uiSummon_counter < ENCOUNTER_WARRIOR_NUMBER)                              { -                                Unit* temp = me->SummonCreature(NPC_WARRIOR_OF_THE_FROZEN_WASTES, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                                Unit* temp = me->SummonCreature(NPC_WARRIOR_OF_THE_FROZEN_WASTES, (me->GetPositionX() - 20) + rand32() % 40, (me->GetPositionY() - 20) + rand32() % 40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                                  temp->SetWalk(false);                                  temp->setFaction(2084);                                  uiWarriorGUID[uiSummon_counter] = temp->GetGUID(); @@ -723,7 +723,7 @@ public:                              uiPhase_timer = 500;                              if (uiSummon_counter < ENCOUNTER_BEHEMOTH_NUMBER)                              { -                                Unit* temp = me->SummonCreature(NPC_FLESH_BEHEMOTH, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                                Unit* temp = me->SummonCreature(NPC_FLESH_BEHEMOTH, (me->GetPositionX() - 20) + rand32() % 40, (me->GetPositionY() - 20) + rand32() % 40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                                  temp->SetWalk(false);                                  temp->setFaction(2084);                                  uiBehemothGUID[uiSummon_counter] = temp->GetGUID(); @@ -746,30 +746,30 @@ public:                              if (Creature* temp = ObjectAccessor::GetCreature(*me, uiKoltiraGUID))                              {                                  temp->SetWalk(false); -                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              }                              if (Creature* temp = ObjectAccessor::GetCreature(*me, uiOrbazGUID))                              {                                  temp->SetWalk(false); -                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              }                              if (Creature* temp = ObjectAccessor::GetCreature(*me, uiThassarianGUID))                              {                                  temp->SetWalk(false); -                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              }                              for (uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i)                                  if (Creature* temp = ObjectAccessor::GetCreature(*me, uiAbominationGUID[i])) -                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              for (uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i)                                  if (Creature* temp = ObjectAccessor::GetCreature(*me, uiBehemothGUID[i])) -                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              for (uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i)                                  if (Creature* temp = ObjectAccessor::GetCreature(*me, uiGhoulGUID[i])) -                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              for (uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i)                                  if (Creature* temp = ObjectAccessor::GetCreature(*me, uiWarriorGUID[i])) -                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); +                                    temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z);                              JumpToNextStep(5000);                              break; @@ -1016,7 +1016,7 @@ public:                                  if (fLichPositionX && fLichPositionY)                                  { -                                    Unit* temp = me->SummonCreature(NPC_DEFENDER_OF_THE_LIGHT, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000); +                                    Unit* temp = me->SummonCreature(NPC_DEFENDER_OF_THE_LIGHT, LightofDawnLoc[0].x + rand32() % 10, LightofDawnLoc[0].y + rand32() % 10, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);                                      temp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED);                                      temp->SetWalk(false);                                      temp->SetSpeed(MOVE_RUN, 2.0f); @@ -1024,7 +1024,7 @@ public:                                      temp->GetMotionMaster()->MovePoint(0, fLichPositionX, fLichPositionY, fLichPositionZ);                                      uiDefenderGUID[0] = temp->GetGUID(); -                                    temp = me->SummonCreature(NPC_RIMBLAT_EARTHSHATTER, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000); +                                    temp = me->SummonCreature(NPC_RIMBLAT_EARTHSHATTER, LightofDawnLoc[0].x + rand32() % 10, LightofDawnLoc[0].y + rand32() % 10, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);                                      temp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED);                                      temp->SetWalk(false);                                      temp->SetSpeed(MOVE_RUN, 2.0f); @@ -1088,13 +1088,13 @@ public:                              {                                  temp->SetSpeed(MOVE_RUN, 6.0f);                                  temp->SetStandState(UNIT_STAND_STATE_DEAD); -                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z); +                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 10, LightofDawnLoc[0].y + rand32() % 10, LightofDawnLoc[0].z);                              }                              if (Creature* temp = ObjectAccessor::GetCreature(*me, uiEarthshatterGUID[0]))                              {                                  temp->SetSpeed(MOVE_RUN, 6.0f);                                  temp->SetStandState(UNIT_STAND_STATE_DEAD); -                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z); +                                temp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x + rand32() % 10, LightofDawnLoc[0].y + rand32() % 10, LightofDawnLoc[0].z);                              }                              JumpToNextStep(3000);                              break; @@ -1556,7 +1556,7 @@ public:                  temp = ObjectAccessor::GetCreature(*me, uiGhoulGUID[i]);                  if (!temp)                  { -                    temp = me->SummonCreature(NPC_ACHERUS_GHOUL, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                    temp = me->SummonCreature(NPC_ACHERUS_GHOUL, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                      temp->setFaction(2084);                      uiGhoulGUID[i] = temp->GetGUID();                  } @@ -1566,7 +1566,7 @@ public:                  temp = ObjectAccessor::GetCreature(*me, uiAbominationGUID[i]);                  if (!temp)                  { -                    temp = me->SummonCreature(NPC_WARRIOR_OF_THE_FROZEN_WASTES, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                    temp = me->SummonCreature(NPC_WARRIOR_OF_THE_FROZEN_WASTES, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                      temp->setFaction(2084);                      uiAbominationGUID[i] = temp->GetGUID();                  } @@ -1576,7 +1576,7 @@ public:                  temp = ObjectAccessor::GetCreature(*me, uiWarriorGUID[i]);                  if (!temp)                  { -                    temp = me->SummonCreature(NPC_RAMPAGING_ABOMINATION, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                    temp = me->SummonCreature(NPC_RAMPAGING_ABOMINATION, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                      temp->setFaction(2084);                      uiWarriorGUID[i] = temp->GetGUID();                  } @@ -1586,7 +1586,7 @@ public:                  temp = ObjectAccessor::GetCreature(*me, uiBehemothGUID[i]);                  if (!temp)                  { -                    temp = me->SummonCreature(NPC_FLESH_BEHEMOTH, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                    temp = me->SummonCreature(NPC_FLESH_BEHEMOTH, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                      temp->setFaction(2084);                      uiBehemothGUID[i] = temp->GetGUID();                  } @@ -1598,7 +1598,7 @@ public:                  temp = ObjectAccessor::GetCreature(*me, uiDefenderGUID[i]);                  if (!temp)                  { -                    temp = me->SummonCreature(NPC_DEFENDER_OF_THE_LIGHT, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                    temp = me->SummonCreature(NPC_DEFENDER_OF_THE_LIGHT, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                      temp->setFaction(2089);                      me->AddThreat(temp, 0.0f);                      uiDefenderGUID[i] = temp->GetGUID(); @@ -1609,7 +1609,7 @@ public:                  temp = ObjectAccessor::GetCreature(*me, uiEarthshatterGUID[i]);                  if (!temp)                  { -                    temp = me->SummonCreature(NPC_RIMBLAT_EARTHSHATTER, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                    temp = me->SummonCreature(NPC_RIMBLAT_EARTHSHATTER, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                      temp->setFaction(2089);                      me->AddThreat(temp, 0.0f);                      uiEarthshatterGUID[i] = temp->GetGUID(); @@ -1618,7 +1618,7 @@ public:              temp = ObjectAccessor::GetCreature(*me, uiKorfaxGUID);              if (!temp)              { -                temp = me->SummonCreature(NPC_KORFAX_CHAMPION_OF_THE_LIGHT, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000); +                temp = me->SummonCreature(NPC_KORFAX_CHAMPION_OF_THE_LIGHT, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000);                  temp->setFaction(2089);                  me->AddThreat(temp, 0.0f);                  uiKorfaxGUID = temp->GetGUID(); @@ -1626,7 +1626,7 @@ public:              temp = ObjectAccessor::GetCreature(*me, uiMaxwellGUID);              if (!temp)              { -                temp = me->SummonCreature(NPC_LORD_MAXWELL_TYROSUS, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000); +                temp = me->SummonCreature(NPC_LORD_MAXWELL_TYROSUS, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000);                  temp->setFaction(2089);                  me->AddThreat(temp, 0.0f);                  uiMaxwellGUID = temp->GetGUID(); @@ -1634,7 +1634,7 @@ public:              temp = ObjectAccessor::GetCreature(*me, uiEligorGUID);              if (!temp)              { -                temp = me->SummonCreature(NPC_COMMANDER_ELIGOR_DAWNBRINGER, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000); +                temp = me->SummonCreature(NPC_COMMANDER_ELIGOR_DAWNBRINGER, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000);                  temp->setFaction(2089);                  me->AddThreat(temp, 0.0f);                  uiEligorGUID = temp->GetGUID(); @@ -1642,7 +1642,7 @@ public:              temp = ObjectAccessor::GetCreature(*me, uiRayneGUID);              if (!temp)              { -                temp = me->SummonCreature(NPC_RAYNE, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); +                temp = me->SummonCreature(NPC_RAYNE, LightofDawnLoc[0].x + rand32() % 30, LightofDawnLoc[0].y + rand32() % 30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000);                  temp->setFaction(2089);                  me->AddThreat(temp, 0.0f);                  uiRayneGUID = temp->GetGUID(); diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp index 0be681af915..e169e521d0b 100644 --- a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp @@ -546,7 +546,7 @@ public:              if (!temp.empty())              {                  std::list<Player*>::const_iterator j = temp.begin(); -                advance(j, rand()%temp.size()); +                advance(j, rand32() % temp.size());                  return (*j);              }              return NULL; @@ -619,7 +619,7 @@ public:                  me->SetName("Headless Horseman, Unhorsed");                  if (!headGUID) -                    headGUID = DoSpawnCreature(HEAD, float(rand()%6), float(rand()%6), 0, 0, TEMPSUMMON_DEAD_DESPAWN, 0)->GetGUID(); +                    headGUID = DoSpawnCreature(HEAD, float(rand32() % 6), float(rand32() % 6), 0, 0, TEMPSUMMON_DEAD_DESPAWN, 0)->GetGUID();                  Unit* Head = ObjectAccessor::GetUnit(*me, headGUID);                  if (Head && Head->IsAlive()) @@ -720,7 +720,7 @@ public:                  {                      laugh = urand(11000, 22000);                      me->MonsterTextEmote(EMOTE_LAUGHS, NULL); -                    DoPlaySoundToSet(me, RandomLaugh[rand()%3]); +                    DoPlaySoundToSet(me, RandomLaugh[rand32() % 3]);                  }                  else laugh -= diff; diff --git a/src/server/scripts/EasternKingdoms/Stratholme/boss_baron_rivendare.cpp b/src/server/scripts/EasternKingdoms/Stratholme/boss_baron_rivendare.cpp index 916d321a7f0..de54e87fc97 100644 --- a/src/server/scripts/EasternKingdoms/Stratholme/boss_baron_rivendare.cpp +++ b/src/server/scripts/EasternKingdoms/Stratholme/boss_baron_rivendare.cpp @@ -134,14 +134,14 @@ public:              {                  DoCastVictim(SPELL_CLEAVE);                  //13 seconds until we should cast this again -                Cleave_Timer = 7000 + (rand()%10000); +                Cleave_Timer = 7000 + (rand32() % 10000);              } else Cleave_Timer -= diff;              //MortalStrike              if (MortalStrike_Timer <= diff)              {                  DoCastVictim(SPELL_MORTALSTRIKE); -                MortalStrike_Timer = 10000 + (rand()%15000); +                MortalStrike_Timer = 10000 + (rand32() % 15000);              } else MortalStrike_Timer -= diff;              //RaiseDead diff --git a/src/server/scripts/EasternKingdoms/Stratholme/boss_baroness_anastari.cpp b/src/server/scripts/EasternKingdoms/Stratholme/boss_baroness_anastari.cpp index 5f9c5075250..a3eb66ac23c 100644 --- a/src/server/scripts/EasternKingdoms/Stratholme/boss_baroness_anastari.cpp +++ b/src/server/scripts/EasternKingdoms/Stratholme/boss_baroness_anastari.cpp @@ -84,7 +84,7 @@ public:              //BansheeWail              if (BansheeWail_Timer <= diff)              { -                if (rand()%100 < 95) +                if (rand32() % 100 < 95)                      DoCastVictim(SPELL_BANSHEEWAIL);                  //4 seconds until we should cast this again                  BansheeWail_Timer = 4000; @@ -93,7 +93,7 @@ public:              //BansheeCurse              if (BansheeCurse_Timer <= diff)              { -                if (rand()%100 < 75) +                if (rand32() % 100 < 75)                      DoCastVictim(SPELL_BANSHEECURSE);                  //18 seconds until we should cast this again                  BansheeCurse_Timer = 18000; @@ -102,27 +102,12 @@ public:              //Silence              if (Silence_Timer <= diff)              { -                if (rand()%100 < 80) +                if (rand32() % 100 < 80)                      DoCastVictim(SPELL_SILENCE);                  //13 seconds until we should cast this again                  Silence_Timer = 13000;              } else Silence_Timer -= diff; -            //Possess -            /*            if (Possess_Timer <= diff) -            { -            //Cast -              if (rand()%100 < 65) -            { -            Unit* target = NULL; -            target = SelectUnit(SELECT_TARGET_RANDOM, 0); -            if (target)DoCast(target, SPELL_POSSESS); -            } -            //50 seconds until we should cast this again -            Possess_Timer = 50000; -            } else Possess_Timer -= diff; -            */ -              DoMeleeAttackIfReady();          }      }; diff --git a/src/server/scripts/EasternKingdoms/Stratholme/boss_cannon_master_willey.cpp b/src/server/scripts/EasternKingdoms/Stratholme/boss_cannon_master_willey.cpp index 65b2fb25525..14d2a9a9f26 100644 --- a/src/server/scripts/EasternKingdoms/Stratholme/boss_cannon_master_willey.cpp +++ b/src/server/scripts/EasternKingdoms/Stratholme/boss_cannon_master_willey.cpp @@ -132,7 +132,7 @@ public:              if (Pummel_Timer <= diff)              {                  //Cast -                if (rand()%100 < 90) //90% chance to cast +                if (rand32() % 100 < 90) //90% chance to cast                  {                      DoCastVictim(SPELL_PUMMEL);                  } @@ -144,7 +144,7 @@ public:              if (KnockAway_Timer <= diff)              {                  //Cast -                if (rand()%100 < 80) //80% chance to cast +                if (rand32() % 100 < 80) //80% chance to cast                  {                      DoCastVictim(SPELL_KNOCKAWAY);                  } @@ -165,7 +165,7 @@ public:              if (SummonRifleman_Timer <= diff)              {                  //Cast -                switch (rand()%9) +                switch (rand32() % 9)                  {                  case 0:                      me->SummonCreature(11054, ADD_1X, ADD_1Y, ADD_1Z, ADD_1O, TEMPSUMMON_TIMED_DESPAWN, 240000); diff --git a/src/server/scripts/EasternKingdoms/Stratholme/boss_maleki_the_pallid.cpp b/src/server/scripts/EasternKingdoms/Stratholme/boss_maleki_the_pallid.cpp index 5910905b6b5..b3fae9821aa 100644 --- a/src/server/scripts/EasternKingdoms/Stratholme/boss_maleki_the_pallid.cpp +++ b/src/server/scripts/EasternKingdoms/Stratholme/boss_maleki_the_pallid.cpp @@ -84,7 +84,7 @@ public:              //Frostbolt              if (Frostbolt_Timer <= diff)              { -                 if (rand()%100 < 90) +                if (rand32() % 100 < 90)                      DoCastVictim(SPELL_FROSTBOLT);                  Frostbolt_Timer = 3500;              } else Frostbolt_Timer -= diff; @@ -92,7 +92,7 @@ public:              //IceTomb              if (IceTomb_Timer <= diff)              { -                if (rand()%100 < 65) +                if (rand32() % 100 < 65)                      DoCastVictim(SPELL_ICETOMB);                  IceTomb_Timer = 28000;              } else IceTomb_Timer -= diff; @@ -100,7 +100,7 @@ public:              //DrainLife              if (DrainLife_Timer <= diff)              { -                  if (rand()%100 < 55) +                if (rand32() % 100 < 55)                      DoCastVictim(SPELL_DRAINLIFE);                  DrainLife_Timer = 31000;              } else DrainLife_Timer -= diff; diff --git a/src/server/scripts/EasternKingdoms/Stratholme/boss_postmaster_malown.cpp b/src/server/scripts/EasternKingdoms/Stratholme/boss_postmaster_malown.cpp index 9c129984ae4..f5ca0a42fad 100644 --- a/src/server/scripts/EasternKingdoms/Stratholme/boss_postmaster_malown.cpp +++ b/src/server/scripts/EasternKingdoms/Stratholme/boss_postmaster_malown.cpp @@ -92,27 +92,27 @@ class boss_postmaster_malown : public CreatureScript                      switch (eventId)                      {                          case EVENT_WAILINGDEAD: -                            if (rand()%100 < 65) //65% chance to cast +                            if (rand32() % 100 < 65) //65% chance to cast                                  DoCastVictim(SPELL_WAILINGDEAD, true);                              events.ScheduleEvent(EVENT_WAILINGDEAD, 19000);                              break;                          case EVENT_BACKHAND: -                            if (rand()%100 < 45) //45% chance to cast +                            if (rand32() % 100 < 45) //45% chance to cast                                  DoCastVictim(SPELL_BACKHAND, true);                              events.ScheduleEvent(EVENT_WAILINGDEAD, 8000);                              break;                          case EVENT_CURSEOFWEAKNESS: -                            if (rand()%100 < 3) //3% chance to cast +                            if (rand32() % 100 < 3) //3% chance to cast                                  DoCastVictim(SPELL_CURSEOFWEAKNESS, true);                              events.ScheduleEvent(EVENT_WAILINGDEAD, 20000);                              break;                          case EVENT_CURSEOFTONGUES: -                            if (rand()%100 < 3) //3% chance to cast +                            if (rand32() % 100 < 3) //3% chance to cast                                  DoCastVictim(SPELL_CURSEOFTONGUES, true);                              events.ScheduleEvent(EVENT_WAILINGDEAD, 22000);                              break;                          case EVENT_CALLOFTHEGRAVE: -                            if (rand()%100 < 5) //5% chance to cast +                            if (rand32() % 100 < 5) //5% chance to cast                                  DoCastVictim(SPELL_CALLOFTHEGRAVE, true);                              events.ScheduleEvent(EVENT_WAILINGDEAD, 25000);                              break; diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp index 8fc749dc43b..3701d37ed7f 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp @@ -136,7 +136,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (rand()%4 == 0) +            if (rand32() % 4 == 0)                  Talk(YELL_SAC_KILL);          } @@ -222,7 +222,7 @@ public:                          me->InterruptSpell(CURRENT_GENERIC_SPELL);                          if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                              DoCast(target, SPELL_CONFLAGRATION); -                        ConflagrationTimer = 30000+(rand()%5000); +                        ConflagrationTimer = 30000 + (rand32() % 5000);                      }                  } else ConflagrationTimer -= diff;              } @@ -242,7 +242,7 @@ public:                                  Talk(EMOTE_SHADOW_NOVA, target);                              Talk(YELL_SHADOW_NOVA);                          } -                        ShadownovaTimer = 30000+(rand()%5000); +                        ShadownovaTimer = 30000 + (rand32() % 5000);                      }                  } else ShadownovaTimer -=diff;              } @@ -253,7 +253,7 @@ public:                  {                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                          DoCast(target, SPELL_CONFOUNDING_BLOW); -                    ConfoundingblowTimer = 20000 + (rand()%5000); +                    ConfoundingblowTimer = 20000 + (rand32() % 5000);                  }              } else ConfoundingblowTimer -=diff; @@ -407,7 +407,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (rand()%4 == 0) +            if (rand32() % 4 == 0)                  Talk(YELL_ALY_KILL);          } @@ -552,7 +552,7 @@ public:                      {                          if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                              DoCast(target, SPELL_SHADOW_NOVA); -                        ShadownovaTimer= 30000+(rand()%5000); +                        ShadownovaTimer = 30000 + (rand32() % 5000);                      }                  } else ShadownovaTimer -=diff;              } @@ -566,7 +566,7 @@ public:                          Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0);                          if (target)                              DoCast(target, SPELL_CONFLAGRATION); -                        ConflagrationTimer = 30000+(rand()%5000); +                        ConflagrationTimer = 30000 + (rand32() % 5000);                          if (!SisterDeath)                          { @@ -644,7 +644,7 @@ public:          void Reset() override          {              me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); -            ShadowfuryTimer = 5000 + (rand()%15000); +            ShadowfuryTimer = 5000 + (rand32() % 15000);              DarkstrikeTimer = 3000;              KillTimer = 15000;          } diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp index 8a9699ed1be..120d3a0b231 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp @@ -288,7 +288,7 @@ public:                          return;                      } -                    if (Creature* Vapor = me->SummonCreature(NPC_VAPOR, target->GetPositionX()-5+rand()%10, target->GetPositionY()-5+rand()%10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000)) +                    if (Creature* Vapor = me->SummonCreature(NPC_VAPOR, target->GetPositionX() - 5 + rand32() % 10, target->GetPositionY() - 5 + rand32() % 10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000))                      {                          Vapor->AI()->AttackStart(target);                          me->InterruptNonMeleeSpells(false); @@ -315,7 +315,7 @@ public:                      }                      //target->CastSpell(target, SPELL_VAPOR_SUMMON, true); need core support -                    if (Creature* pVapor = me->SummonCreature(NPC_VAPOR, target->GetPositionX()-5+rand()%10, target->GetPositionY()-5+rand()%10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000)) +                    if (Creature* pVapor = me->SummonCreature(NPC_VAPOR, target->GetPositionX() - 5 + rand32() % 10, target->GetPositionY() - 5 + rand32() % 10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000))                      {                          if (pVapor->AI())                              pVapor->AI()->AttackStart(target); diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp index d300703152c..9c83b038545 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp @@ -285,7 +285,7 @@ public:                  if (WildMagicTimer <= diff)                  { -                    DoCastAOE(WildMagic[rand()%6]); +                    DoCastAOE(WildMagic[rand32() % 6]);                      WildMagicTimer = 20000;                  } else WildMagicTimer -= diff; @@ -312,11 +312,11 @@ public:                      }                      std::list<Unit*>::const_iterator i = targetList.begin(); -                    advance(i, rand()%targetList.size()); +                    advance(i, rand32() % targetList.size());                      if ((*i))                      {                          (*i)->CastSpell((*i), SPELL_SPECTRAL_BLAST, true); -                        SpectralBlastTimer = 20000+rand()%5000; +                        SpectralBlastTimer = 20000 + rand32() % 5000;                      } else SpectralBlastTimer = 1000;                  } else SpectralBlastTimer -= diff; @@ -775,10 +775,10 @@ public:              if (ShadowBoltTimer <= diff)              { -                if (!(rand()%5)) +                if (!(rand32() % 5))                      Talk(SAY_SATH_SPELL1);                  DoCast(me, SPELL_SHADOW_BOLT); -                ShadowBoltTimer = 7000+(rand()%3000); +                ShadowBoltTimer = 7000 + (rand32() % 3000);              } else ShadowBoltTimer -= diff;              if (AgonyCurseTimer <= diff) @@ -792,7 +792,7 @@ public:              if (CorruptionStrikeTimer <= diff)              { -                if (!(rand()%5))Talk(SAY_SATH_SPELL2); +                if (!(rand32() % 5))Talk(SAY_SATH_SPELL2);                  DoCastVictim(SPELL_CORRUPTION_STRIKE);                  CorruptionStrikeTimer = 13000;              } else CorruptionStrikeTimer -= diff; diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_muru.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_muru.cpp index faecb2ca2f0..6ccce62cb6f 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_muru.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_muru.cpp @@ -539,7 +539,7 @@ public:          void JustDied(Unit* /*killer*/) override          {              for (uint8 i = 0; i < 8; ++i) -                me->SummonCreature(NPC_VOID_SPAWN, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), float(rand()%6), TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 180000); +                me->SummonCreature(NPC_VOID_SPAWN, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), float(rand32() % 6), TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 180000);          }          void UpdateAI(uint32 diff) override diff --git a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp index bc4fff4da7b..82212972f45 100644 --- a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp +++ b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp @@ -285,9 +285,9 @@ public:              if (WaveTimer < diff && !Completed && Progress)              { -                uint32 ran1 = rand()%8; -                uint32 ran2 = rand()%8; -                uint32 ran3 = rand()%8; +                uint32 ran1 = rand32() % 8; +                uint32 ran2 = rand32() % 8; +                uint32 ran3 = rand32() % 8;                  me->SummonCreature(NPC_ENRAGED_WRAITH, SpawnLocations[ran1].x, SpawnLocations[ran1].y, SpawnLocations[ran1].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);                  me->SummonCreature(NPC_ENRAGED_WRAITH, SpawnLocations[ran2].x, SpawnLocations[ran2].y, SpawnLocations[ran2].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);                  me->SummonCreature(NPC_ENRAGED_WRAITH, SpawnLocations[ran3].x, SpawnLocations[ran3].y, SpawnLocations[ran3].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000); diff --git a/src/server/scripts/EasternKingdoms/zone_undercity.cpp b/src/server/scripts/EasternKingdoms/zone_undercity.cpp index 0958a9141f0..8baeaec96ff 100644 --- a/src/server/scripts/EasternKingdoms/zone_undercity.cpp +++ b/src/server/scripts/EasternKingdoms/zone_undercity.cpp @@ -170,7 +170,7 @@ public:                  DoCast(me, SPELL_FADE);                  // add a blink to simulate a stealthed movement and reappearing elsewhere                  DoCast(me, SPELL_FADE_BLINK); -                FadeTimer = 30000 + rand()%5000; +                FadeTimer = 30000 + rand32() % 5000;                  // if the victim is out of melee range she cast multi shot                  if (Unit* victim = me->GetVictim())                      if (me->GetDistance(victim) > 10.0f) @@ -180,7 +180,7 @@ public:              if (SummonSkeletonTimer <= diff)              {                  DoCast(me, SPELL_SUMMON_SKELETON); -                SummonSkeletonTimer = 20000 + rand()%10000; +                SummonSkeletonTimer = 20000 + rand32() % 10000;              } else SummonSkeletonTimer -= diff;              if (BlackArrowTimer <= diff) @@ -188,7 +188,7 @@ public:                  if (Unit* victim = me->GetVictim())                  {                      DoCast(victim, SPELL_BLACK_ARROW); -                    BlackArrowTimer = 15000 + rand()%5000; +                    BlackArrowTimer = 15000 + rand32() % 5000;                  }              } else BlackArrowTimer -= diff; @@ -197,7 +197,7 @@ public:                  if (Unit* victim = me->GetVictim())                  {                      DoCast(victim, SPELL_SHOT); -                    ShotTimer = 8000 + rand()%2000; +                    ShotTimer = 8000 + rand32() % 2000;                  }              } else ShotTimer -= diff; @@ -206,7 +206,7 @@ public:                  if (Unit* victim = me->GetVictim())                  {                      DoCast(victim, SPELL_MULTI_SHOT); -                    MultiShotTimer = 10000 + rand()%3000; +                    MultiShotTimer = 10000 + rand32() % 3000;                  }              } else MultiShotTimer -= diff; diff --git a/src/server/scripts/Examples/example_creature.cpp b/src/server/scripts/Examples/example_creature.cpp index d573241137f..9fa2940a43f 100644 --- a/src/server/scripts/Examples/example_creature.cpp +++ b/src/server/scripts/Examples/example_creature.cpp @@ -199,7 +199,7 @@ class example_creature : public CreatureScript                  if (m_uiSpell1Timer <= uiDiff)                  {                      //Cast spell one on our current target. -                    if (rand()%50 > 10) +                    if (rand32() % 50 > 10)                          DoCastVictim(SPELL_ONE_ALT);                      else if (me->IsWithinDist(me->GetVictim(), 25.0f))                          DoCastVictim(SPELL_ONE); diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp index d86e3342cf0..576b3dbdb39 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp @@ -558,7 +558,7 @@ public:                  if (SummonWispTimer <= diff)                  { -                    DoSpawnCreature(CREATURE_ANCIENT_WISP, float(rand()%40), float(rand()%40), 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000); +                    DoSpawnCreature(CREATURE_ANCIENT_WISP, float(rand32() % 40), float(rand32() % 40), 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 15000);                      SummonWispTimer = 1500;                      ++WispCount;                  } else SummonWispTimer -= diff; diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_azgalor.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_azgalor.cpp index c9e010e4159..38e398f3d5b 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_azgalor.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_azgalor.cpp @@ -142,13 +142,13 @@ public:              if (RainTimer <= diff)              {                  DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 30, true), SPELL_RAIN_OF_FIRE); -                RainTimer = 20000+rand()%15000; +                RainTimer = 20000 + rand32() % 15000;              } else RainTimer -= diff;              if (DoomTimer <= diff)              {                  DoCast(SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true), SPELL_DOOM);//never on tank -                DoomTimer = 45000+rand()%5000; +                DoomTimer = 45000 + rand32() % 5000;              } else DoomTimer -= diff;              if (HowlTimer <= diff) @@ -160,7 +160,7 @@ public:              if (CleaveTimer <= diff)              {                  DoCastVictim(SPELL_CLEAVE); -                CleaveTimer = 10000+rand()%5000; +                CleaveTimer = 10000 + rand32() % 5000;              } else CleaveTimer -= diff;              if (EnrageTimer < diff && !enraged) @@ -259,13 +259,13 @@ public:              if (WarstompTimer <= diff)              {                  DoCast(me, SPELL_WARSTOMP); -                WarstompTimer = 10000+rand()%5000; +                WarstompTimer = 10000 + rand32() % 5000;              } else WarstompTimer -= diff;              if (CrippleTimer <= diff)              {                  DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true), SPELL_CRIPPLE); -                CrippleTimer = 25000+rand()%5000; +                CrippleTimer = 25000 + rand32() % 5000;              } else CrippleTimer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_kazrogal.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_kazrogal.cpp index 606188250dd..e08ac61bcde 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_kazrogal.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_kazrogal.cpp @@ -137,7 +137,7 @@ public:              if (CleaveTimer <= diff)              {                  DoCast(me, SPELL_CLEAVE); -                CleaveTimer = 6000+rand()%15000; +                CleaveTimer = 6000 + rand32() % 15000;              } else CleaveTimer -= diff;              if (WarStompTimer <= diff) diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_rage_winterchill.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_rage_winterchill.cpp index 9ac5034d954..c37b9d910e7 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_rage_winterchill.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_rage_winterchill.cpp @@ -132,24 +132,24 @@ public:              if (FrostArmorTimer <= diff)              {                  DoCast(me, SPELL_FROST_ARMOR); -                FrostArmorTimer = 40000+rand()%20000; +                FrostArmorTimer = 40000 + rand32() % 20000;              } else FrostArmorTimer -= diff;              if (DecayTimer <= diff)              {                  DoCastVictim(SPELL_DEATH_AND_DECAY); -                DecayTimer = 60000+rand()%20000; +                DecayTimer = 60000 + rand32() % 20000;                  Talk(SAY_DECAY);              } else DecayTimer -= diff;              if (NovaTimer <= diff)              {                  DoCastVictim(SPELL_FROST_NOVA); -                NovaTimer = 30000+rand()%15000; +                NovaTimer = 30000 + rand32() % 15000;                  Talk(SAY_NOVA);              } else NovaTimer -= diff;              if (IceboltTimer <= diff)              {                  DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 40, true), SPELL_ICEBOLT); -                IceboltTimer = 11000+rand()%20000; +                IceboltTimer = 11000 + rand32() % 20000;              } else IceboltTimer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp index 4e6da7dcac2..316834c422a 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp @@ -444,7 +444,7 @@ void hyjalAI::MoveInLineOfSight(Unit* who)  void hyjalAI::SummonCreature(uint32 entry, float Base[4][3])  { -    uint32 random = rand()%4; +    uint32 random = rand32() % 4;      float SpawnLoc[3];      for (uint8 i = 0; i < 3; ++i) @@ -529,7 +529,7 @@ void hyjalAI::SummonCreature(uint32 entry, float Base[4][3])  void hyjalAI::SummonNextWave(const Wave wave[18], uint32 Count, float Base[4][3])  {      // 1 in 4 chance we give a rally yell. Not sure if the chance is offilike. -    if (rand()%4 == 0) +    if (rand32() % 4 == 0)          Talk(RALLY);      InfernalCount = 0;//reset infernal count every new wave @@ -1032,7 +1032,7 @@ void hyjalAI::DoOverrun(uint32 faction, const uint32 diff)              for (uint8 i = 0; i < 25; ++i)//summon 25 ghouls              { -                uint8 r = rand()%4; +                uint8 r = rand32() % 4;                  Creature* unit = me->SummonCreature(GHOUL, AllianceBase[r][0]+irand(-15, 15), AllianceBase[r][1]+irand(-15, 15), AllianceBase[r][2], 0, TEMPSUMMON_MANUAL_DESPAWN, 2*60*1000);                  if (unit)                  { @@ -1044,7 +1044,7 @@ void hyjalAI::DoOverrun(uint32 faction, const uint32 diff)              }              for (uint8 i = 0; i < 3; ++i)//summon 3 abominations              { -                uint8 r = rand()%4; +                uint8 r = rand32() % 4;                  Creature* unit = me->SummonCreature(ABOMINATION, AllianceBase[r][0]+irand(-15, 15), AllianceBase[r][1]+irand(-15, 15), AllianceBase[r][2], 0, TEMPSUMMON_MANUAL_DESPAWN, 2*60*1000);                  if (unit)                  { @@ -1085,7 +1085,7 @@ void hyjalAI::DoOverrun(uint32 faction, const uint32 diff)              }              for (uint8 i = 0; i < 25; ++i)//summon 25 ghouls              { -                uint8 r = rand()%4; +                uint8 r = rand32() % 4;                  Creature* unit = me->SummonCreature(GHOUL, HordeBase[r][0]+irand(-15, 15), HordeBase[r][1]+irand(-15, 15), HordeBase[r][2], 0, TEMPSUMMON_MANUAL_DESPAWN, 2*60*1000);                  if (unit)                  { @@ -1097,7 +1097,7 @@ void hyjalAI::DoOverrun(uint32 faction, const uint32 diff)              }              for (uint8 i = 0; i < 5; ++i)//summon 5 abominations              { -                uint8 r = rand()%4; +                uint8 r = rand32() % 4;                  Creature* unit = me->SummonCreature(ABOMINATION, HordeBase[r][0]+irand(-15, 15), HordeBase[r][1]+irand(-15, 15), HordeBase[r][2], 0, TEMPSUMMON_MANUAL_DESPAWN, 2*60*1000);                  if (unit)                  { diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp index 85de43cb4c4..3a5025695f8 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp @@ -417,7 +417,7 @@ public:              instance = creature->GetInstanceScript();              meteor = false;//call once!              CanMove = false; -            Delay = rand()%30000; +            Delay = rand32() % 30000;              me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);              me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);              me->SetDisplayId(MODEL_INVIS); @@ -467,7 +467,7 @@ public:              {                  float x, y, z;                  me->GetPosition(x, y, z); -                Creature* trigger = me->SummonCreature(NPC_TRIGGER, x+8, y+8, z+25+rand()%10, me->GetOrientation(), TEMPSUMMON_TIMED_DESPAWN, 1000); +                Creature* trigger = me->SummonCreature(NPC_TRIGGER, x + 8, y + 8, z + 25 + rand32() % 10, me->GetOrientation(), TEMPSUMMON_TIMED_DESPAWN, 1000);                  if (trigger)                  {                      trigger->SetVisible(false); @@ -618,7 +618,7 @@ public:              if (KnockDownTimer <= diff)              {                  DoCastVictim(SPELL_KNOCKDOWN); -                KnockDownTimer = 15000+rand()%10000; +                KnockDownTimer = 15000 + rand32() % 10000;              } else KnockDownTimer -= diff;              DoMeleeAttackIfReady();          } @@ -651,7 +651,7 @@ public:          bool RandomMove;          void Reset() override          { -            FrenzyTimer = 5000+rand()%5000; +            FrenzyTimer = 5000 + rand32() % 5000;              MoveTimer = 2000;              RandomMove = false;          } @@ -714,7 +714,7 @@ public:              if (FrenzyTimer <= diff)              {                  DoCast(me, SPELL_FRENZY); -                FrenzyTimer = 15000+rand()%15000; +                FrenzyTimer = 15000 + rand32() % 15000;              } else FrenzyTimer -= diff;              if (!UpdateVictim())                  return; @@ -750,7 +750,7 @@ public:          void Reset() override          { -            ShadowBoltTimer = 1000+rand()%5000; +            ShadowBoltTimer = 1000 + rand32() % 5000;              summons.DespawnAll();          } @@ -840,7 +840,7 @@ public:              if (ShadowBoltTimer <= diff)              {                  DoCastVictim(SPELL_SHADOW_BOLT); -                ShadowBoltTimer = 20000+rand()%10000; +                ShadowBoltTimer = 20000 + rand32() % 10000;              } else ShadowBoltTimer -= diff;              DoMeleeAttackIfReady(); @@ -875,9 +875,9 @@ public:          void Reset() override          { -            CourseTimer = 20000+rand()%5000; -            WailTimer = 15000+rand()%5000; -            ShellTimer = 50000+rand()%10000; +            CourseTimer = 20000 + rand32() % 5000; +            WailTimer = 15000 + rand32() % 5000; +            ShellTimer = 50000 + rand32() % 10000;          }          void WaypointReached(uint32 waypointId) override @@ -931,17 +931,17 @@ public:              if (CourseTimer <= diff)              {                  DoCastVictim(SPELL_BANSHEE_CURSE); -                CourseTimer = 20000+rand()%5000; +                CourseTimer = 20000 + rand32() % 5000;              } else CourseTimer -= diff;              if (WailTimer <= diff)              {                  DoCastVictim(SPELL_BANSHEE_WAIL); -                WailTimer = 15000+rand()%5000; +                WailTimer = 15000 + rand32() % 5000;              } else WailTimer -= diff;              if (ShellTimer <= diff)              {                  DoCast(me, SPELL_ANTI_MAGIC_SHELL); -                ShellTimer = 50000+rand()%10000; +                ShellTimer = 50000 + rand32() % 10000;              } else ShellTimer -= diff;              DoMeleeAttackIfReady();          } @@ -973,7 +973,7 @@ public:          void Reset() override          { -            WebTimer = 20000+rand()%5000; +            WebTimer = 20000 + rand32() % 5000;          }          void WaypointReached(uint32 waypointId) override @@ -1027,7 +1027,7 @@ public:              if (WebTimer <= diff)              {                  DoCastVictim(SPELL_WEB); -                WebTimer = 20000+rand()%5000; +                WebTimer = 20000 + rand32() % 5000;              } else WebTimer -= diff;              DoMeleeAttackIfReady();          } @@ -1059,7 +1059,7 @@ public:          void Reset() override          { -            ManaBurnTimer = 9000+rand()%5000; +            ManaBurnTimer = 9000 + rand32() % 5000;          }          void WaypointReached(uint32 waypointId) override @@ -1113,7 +1113,7 @@ public:              if (ManaBurnTimer <= diff)              {                  DoCastVictim(SPELL_MANA_BURN); -                ManaBurnTimer = 9000+rand()%5000; +                ManaBurnTimer = 9000 + rand32() % 5000;              } else ManaBurnTimer -= diff;              DoMeleeAttackIfReady();          } @@ -1267,7 +1267,7 @@ public:          {              forcemove = true;              Zpos = 10.0f; -            StrikeTimer = 2000+rand()%5000; +            StrikeTimer = 2000 + rand32() % 5000;              MoveTimer = 0;              me->SetDisableGravity(true);          } @@ -1332,7 +1332,7 @@ public:                      if (StrikeTimer <= diff)                      {                          me->CastSpell(DummyTarget[0], DummyTarget[1], DummyTarget[2], SPELL_GARGOYLE_STRIKE, false); -                        StrikeTimer = 2000+rand()%1000; +                        StrikeTimer = 2000 + rand32() % 1000;                      } else StrikeTimer -= diff;                      }              } @@ -1367,7 +1367,7 @@ public:                      DoCastVictim(SPELL_GARGOYLE_STRIKE);                      me->StopMoving();                      me->GetMotionMaster()->Clear(); -                    StrikeTimer = 2000+rand()%1000; +                    StrikeTimer = 2000 + rand32() % 1000;                  } else StrikeTimer=0;              } else StrikeTimer -= diff;          } @@ -1399,7 +1399,7 @@ public:          void Reset() override          { -            ExplodeTimer = 5000+rand()%5000; +            ExplodeTimer = 5000 + rand32() % 5000;          }          void MoveInLineOfSight(Unit* who) override @@ -1432,9 +1432,9 @@ public:                      EnterEvadeMode();                      return;                  } -                int dmg = 500+rand()%700; +                int dmg = 500 + rand32() % 700;                  me->CastCustomSpell(me->GetVictim(), SPELL_EXPLODING_SHOT, &dmg, 0, 0, false); -                ExplodeTimer = 5000+rand()%5000; +                ExplodeTimer = 5000 + rand32() % 5000;              } else ExplodeTimer -= diff;              DoMeleeAttackIfReady();          } diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_epoch_hunter.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_epoch_hunter.cpp index 4192feb52a7..e27dec09802 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_epoch_hunter.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_epoch_hunter.cpp @@ -117,14 +117,14 @@ public:              if (ImpendingDeath_Timer <= diff)              {                  DoCastVictim(SPELL_IMPENDING_DEATH); -                ImpendingDeath_Timer = 25000+rand()%5000; +                ImpendingDeath_Timer = 25000 + rand32() % 5000;              } else ImpendingDeath_Timer -= diff;              if (WingBuffet_Timer <= diff)              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      DoCast(target, SPELL_WING_BUFFET); -                WingBuffet_Timer = 25000+rand()%10000; +                WingBuffet_Timer = 25000 + rand32() % 10000;              } else WingBuffet_Timer -= diff;              if (Mda_Timer <= diff) diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp index a6f1cdd5b0b..2cf5169b530 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp @@ -167,7 +167,7 @@ public:              if (Whirlwind_Timer <= diff)              {                  DoCastVictim(SPELL_WHIRLWIND); -                Whirlwind_Timer = 20000+rand()%5000; +                Whirlwind_Timer = 20000 + rand32() % 5000;              } else Whirlwind_Timer -= diff;              //Fear @@ -175,7 +175,7 @@ public:              {                  Talk(SAY_SHOUT);                  DoCastVictim(SPELL_FRIGHTENING_SHOUT); -                Fear_Timer = 25000+rand()%10000; +                Fear_Timer = 25000 + rand32() % 10000;              } else Fear_Timer -= diff;              //Mortal Strike @@ -183,7 +183,7 @@ public:              {                  Talk(SAY_MORTAL);                  DoCastVictim(SPELL_MORTAL_STRIKE); -                MortalStrike_Timer = 20000+rand()%10000; +                MortalStrike_Timer = 20000 + rand32() % 10000;              } else MortalStrike_Timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/instance_the_black_morass.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/instance_the_black_morass.cpp index cf3eff4732c..3e776a0c905 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/instance_the_black_morass.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/instance_the_black_morass.cpp @@ -37,7 +37,7 @@ enum Misc      RIFT_BOSS                         = 1  }; -inline uint32 RandRiftBoss() { return ((rand()%2) ? NPC_RIFT_KEEPER : NPC_RIFT_LORD); } +inline uint32 RandRiftBoss() { return ((rand32() % 2) ? NPC_RIFT_KEEPER : NPC_RIFT_LORD); }  float PortalLocation[4][4]=  { diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_bug_trio.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_bug_trio.cpp index b904ed44b47..189cb7854ad 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_bug_trio.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_bug_trio.cpp @@ -309,7 +309,7 @@ public:                          break;                  } -                Heal_Timer = 15000+rand()%15000; +                Heal_Timer = 15000 + rand32() % 15000;              } else Heal_Timer -= diff;              //Checking if Vem is dead. If yes we will enrage. diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_cthun.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_cthun.cpp index 21da920e4fd..dd0c93e8a28 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_cthun.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_cthun.cpp @@ -561,7 +561,7 @@ public:              //Get random but only if we have more than one unit on threat list              if (temp.size() > 1) -                advance (j, rand() % (temp.size() - 1)); +                advance(j, rand32() % (temp.size() - 1));              return (*j);          } @@ -692,7 +692,7 @@ public:                              if (unit && i->second == true)                              {                                  //Teleport each player out -                                DoTeleportPlayer(unit, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()+10, float(rand()%6)); +                                DoTeleportPlayer(unit, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ() + 10, float(rand32() % 6));                                  //Cast knockback on them                                  DoCast(unit, SPELL_EXIT_STOMACH_KNOCKBACK, true); @@ -729,7 +729,7 @@ public:                                  if (unit->IsWithinDist3d(&KickPos, 15.0f))                                  {                                      //Teleport each player out -                                    DoTeleportPlayer(unit, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()+10, float(rand()%6)); +                                    DoTeleportPlayer(unit, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ() + 10, float(rand32() % 6));                                      //Cast knockback on them                                      DoCast(unit, SPELL_EXIT_STOMACH_KNOCKBACK, true); diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp index 5eced848b47..5947c9860ec 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp @@ -77,15 +77,15 @@ public:              if (!victim)                  return; -            Rand = 10 + (rand()%10); -            switch (rand()%2) +            Rand = 10 + (rand32() % 10); +            switch (rand32() % 2)              {                  case 0: RandX = 0.0f - Rand; break;                  case 1: RandX = 0.0f + Rand; break;              } -            Rand = 10 + (rand()%10); -            switch (rand()%2) +            Rand = 10 + (rand32() % 10); +            switch (rand32() % 2)              {                  case 0: RandY = 0.0f - Rand; break;                  case 1: RandY = 0.0f + Rand; break; diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp index acf0215f9ff..c5011eba2f8 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp @@ -330,7 +330,7 @@ struct boss_twinemperorsAI : public ScriptedAI                  }                  if (c->IsWithinDistInMap(me, ABUSE_BUG_RANGE))                  { -                    if (!nearb || (rand()%4) == 0) +                    if (!nearb || (rand32() % 4) == 0)                          nearb = c;                  }              } @@ -437,7 +437,7 @@ public:              if (UnbalancingStrike_Timer <= diff)              {                  DoCastVictim(SPELL_UNBALANCING_STRIKE); -                UnbalancingStrike_Timer = 8000+rand()%12000; +                UnbalancingStrike_Timer = 8000 + rand32() % 12000;              } else UnbalancingStrike_Timer -= diff;              if (UpperCut_Timer <= diff) @@ -445,7 +445,7 @@ public:                  Unit* randomMelee = SelectTarget(SELECT_TARGET_RANDOM, 0, NOMINAL_MELEE_RANGE, true);                  if (randomMelee)                      DoCast(randomMelee, SPELL_UPPERCUT); -                UpperCut_Timer = 15000+rand()%15000; +                UpperCut_Timer = 15000 + rand32() % 15000;              } else UpperCut_Timer -= diff;              HandleBugs(diff); @@ -542,7 +542,7 @@ public:                  target = SelectTarget(SELECT_TARGET_RANDOM, 0, 45, true);                  if (target)                      DoCast(target, SPELL_BLIZZARD); -                Blizzard_Timer = 15000+rand()%15000; +                Blizzard_Timer = 15000 + rand32() % 15000;              } else Blizzard_Timer -= diff;              if (ArcaneBurst_Timer <= diff) diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/mob_anubisath_sentinel.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/mob_anubisath_sentinel.cpp index 0614303515c..e41fbb7d90d 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/mob_anubisath_sentinel.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/mob_anubisath_sentinel.cpp @@ -169,7 +169,7 @@ public:          {              for (int t = 0; t < 2; ++t)              { -                for (int i = !t ? (rand()%9) : 0; i < 9; ++i) +                for (int i = !t ? (rand32()%9) : 0; i < 9; ++i)                  {                      if (!chosenAbilities[i])                      { diff --git a/src/server/scripts/Kalimdor/zone_silithus.cpp b/src/server/scripts/Kalimdor/zone_silithus.cpp index 00ef96dc785..c024c1a567a 100644 --- a/src/server/scripts/Kalimdor/zone_silithus.cpp +++ b/src/server/scripts/Kalimdor/zone_silithus.cpp @@ -905,7 +905,7 @@ public:                  if (Creature* spawn = me->SummonCreature(WavesInfo[WaveCount].CreatureId, SpawnLocation[i], TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, desptimer))                  {                      if (spawn->GetEntry() == 15423) -                        spawn->SetUInt32Value(UNIT_FIELD_DISPLAYID, 15427+rand()%4); +                        spawn->SetUInt32Value(UNIT_FIELD_DISPLAYID, 15427 + rand32() % 4);                      if (i >= 30) WaveCount = 1;                      if (i >= 33) WaveCount = 2;                      if (i >= 45) WaveCount = 3; diff --git a/src/server/scripts/Kalimdor/zone_the_barrens.cpp b/src/server/scripts/Kalimdor/zone_the_barrens.cpp index 42caaaca9fd..a8b5428e499 100644 --- a/src/server/scripts/Kalimdor/zone_the_barrens.cpp +++ b/src/server/scripts/Kalimdor/zone_the_barrens.cpp @@ -156,7 +156,7 @@ public:          void EnterCombat(Unit* who) override          {              //not always use -            if (rand()%4) +            if (rand32() % 4)                  return;              //only aggro text if not player and only in this area diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp index 77697cdb3e8..0a43c01081f 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp @@ -652,7 +652,7 @@ struct boss_faction_championsAI : public BossAI          std::list<Creature*>::const_iterator itr = lst.begin();          if (lst.empty())              return NULL; -        advance(itr, rand() % lst.size()); +        advance(itr, rand32() % lst.size());          return (*itr);      } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_anubrekhan.cpp b/src/server/scripts/Northrend/Naxxramas/boss_anubrekhan.cpp index d4f00414b7d..2a587e535a3 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_anubrekhan.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_anubrekhan.cpp @@ -93,7 +93,7 @@ public:          void KilledUnit(Unit* victim) override          {              /// Force the player to spawn corpse scarabs via spell, @todo Check percent chance for scarabs, 20% at the moment -            if (!(rand()%5)) +            if (!(rand32() % 5))                  if (victim->GetTypeId() == TYPEID_PLAYER)                      victim->CastSpell(victim, SPELL_SUMMON_CORPSE_SCARABS_PLR, true, NULL, NULL, me->GetGUID()); diff --git a/src/server/scripts/Northrend/Naxxramas/boss_four_horsemen.cpp b/src/server/scripts/Northrend/Naxxramas/boss_four_horsemen.cpp index 77486c37498..ca478244d2a 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_four_horsemen.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_four_horsemen.cpp @@ -288,7 +288,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_SLAY);          } @@ -318,7 +318,7 @@ public:              Talk(SAY_AGGRO);              events.ScheduleEvent(EVENT_MARK, 15000); -            events.ScheduleEvent(EVENT_CAST, 20000+rand()%5000); +            events.ScheduleEvent(EVENT_CAST, 20000 + rand32() % 5000);              events.ScheduleEvent(EVENT_BERSERK, 15*100*1000);          } @@ -343,13 +343,13 @@ public:                  switch (eventId)                  {                      case EVENT_MARK: -                        if (!(rand()%5)) +                        if (!(rand32() % 5))                              Talk(SAY_SPECIAL);                          DoCastAOE(SPELL_MARK[id]);                          events.ScheduleEvent(EVENT_MARK, 15000);                          break;                      case EVENT_CAST: -                        if (!(rand()%5)) +                        if (!(rand32() % 5))                              Talk(SAY_TAUNT);                          if (caster) diff --git a/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp b/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp index 381be8d5cd1..cea4b540f7b 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp @@ -129,7 +129,7 @@ public:                          break;                      case EVENT_SUMMON:                          for (int32 i = 0; i < RAID_MODE(1, 2); ++i) -                            DoSummon(NPC_ZOMBIE, PosSummon[rand() % RAID_MODE(1, 3)]); +                            DoSummon(NPC_ZOMBIE, PosSummon[rand32() % RAID_MODE(1, 3)]);                          events.ScheduleEvent(EVENT_SUMMON, 10000);                          break;                  } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_gothik.cpp b/src/server/scripts/Northrend/Naxxramas/boss_gothik.cpp index 554c7957d2a..fa5a0c47808 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_gothik.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_gothik.cpp @@ -236,7 +236,7 @@ class boss_gothik : public CreatureScript              void KilledUnit(Unit* /*victim*/) override              { -                if (!(rand()%5)) +                if (!(rand32() % 5))                      Talk(SAY_KILL);              } @@ -359,7 +359,7 @@ class boss_gothik : public CreatureScript                  if (spellId && me->IsInCombat())                  {                      me->HandleEmoteCommand(EMOTE_ONESHOT_SPELL_CAST); -                    if (Creature* pRandomDeadTrigger = ObjectAccessor::GetCreature(*me, DeadTriggerGUID[rand() % POS_DEAD])) +                    if (Creature* pRandomDeadTrigger = ObjectAccessor::GetCreature(*me, DeadTriggerGUID[rand32() % POS_DEAD]))                          me->CastSpell(pRandomDeadTrigger, spellId, true);                  }              } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_heigan.cpp b/src/server/scripts/Northrend/Naxxramas/boss_heigan.cpp index 48dc889ef2b..53efc628aa2 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_heigan.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_heigan.cpp @@ -75,7 +75,7 @@ public:          void KilledUnit(Unit* who) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_SLAY);              if (who->GetTypeId() == TYPEID_PLAYER)                  safetyDance = false; diff --git a/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp b/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp index 9875eb5aa68..f010192f6f1 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp @@ -583,7 +583,7 @@ public:                              if (!unitList.empty())                              {                                  std::vector<Unit*>::const_iterator itr = unitList.begin(); -                                advance(itr, rand()%unitList.size()); +                                advance(itr, rand32() % unitList.size());                                  DoCast(*itr, SPELL_MANA_DETONATION);                                  Talk(SAY_SPECIAL);                              } @@ -599,7 +599,7 @@ public:                          case EVENT_BLAST:                              if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, RAID_MODE(1, 0), 0, true))                                  DoCast(target, SPELL_FROST_BLAST); -                            if (rand()%2) +                            if (rand32() % 2)                                  Talk(SAY_FROST_BLAST);                              events.Repeat(30000, 90000);                              break; diff --git a/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp b/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp index 52723b591a2..7f7adefc2fb 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp @@ -109,7 +109,7 @@ public:                              if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 0, true, -SPELL_WEB_WRAP))                              {                                  target->RemoveAura(RAID_MODE(SPELL_WEB_SPRAY_10, SPELL_WEB_SPRAY_25)); -                                uint8 pos = rand()%MAX_POS_WRAP; +                                uint8 pos = rand32() % MAX_POS_WRAP;                                  target->GetMotionMaster()->MoveJump(PosWrap[pos].GetPositionX(), PosWrap[pos].GetPositionY(), PosWrap[pos].GetPositionZ(), 20, 20);                                  if (Creature* wrap = DoSummon(NPC_WEB_WRAP, PosWrap[pos], 0, TEMPSUMMON_CORPSE_DESPAWN))                                      wrap->AI()->SetGUID(target->GetGUID()); diff --git a/src/server/scripts/Northrend/Naxxramas/boss_noth.cpp b/src/server/scripts/Northrend/Naxxramas/boss_noth.cpp index d6d91d14a21..94117e9dbbf 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_noth.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_noth.cpp @@ -100,7 +100,7 @@ public:              else              {                  events.ScheduleEvent(EVENT_BALCONY, 110000); -                events.ScheduleEvent(EVENT_CURSE, 10000+rand()%15000); +                events.ScheduleEvent(EVENT_CURSE, 10000 + rand32() % 15000);                  events.ScheduleEvent(EVENT_WARRIOR, 30000);                  if (GetDifficulty() == RAID_DIFFICULTY_25MAN_NORMAL)                      events.ScheduleEvent(EVENT_BLINK, urand(20000, 40000)); @@ -109,7 +109,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_SLAY);          } @@ -129,7 +129,7 @@ public:          void SummonUndead(uint32 entry, uint32 num)          {              for (uint32 i = 0; i < num; ++i) -                me->SummonCreature(entry, SummonPos[rand()%MAX_SUMMON_POS], TEMPSUMMON_CORPSE_DESPAWN, 60000); +                me->SummonCreature(entry, SummonPos[rand32() % MAX_SUMMON_POS], TEMPSUMMON_CORPSE_DESPAWN, 60000);          }          void UpdateAI(uint32 diff) override diff --git a/src/server/scripts/Northrend/Naxxramas/boss_patchwerk.cpp b/src/server/scripts/Northrend/Naxxramas/boss_patchwerk.cpp index a713474d256..a47b75ec234 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_patchwerk.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_patchwerk.cpp @@ -75,7 +75,7 @@ public:          void KilledUnit(Unit* /*Victim*/) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_SLAY);          } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_razuvious.cpp b/src/server/scripts/Northrend/Naxxramas/boss_razuvious.cpp index d9a64569516..3a29e8ac83f 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_razuvious.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_razuvious.cpp @@ -72,7 +72,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (!(rand()%3)) +            if (!(rand32() % 3))                  DoPlaySoundToSet(me, SOUND_SLAY);          } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp b/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp index e3527b46bed..6a3927d4aa0 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp @@ -312,7 +312,7 @@ class boss_sapphiron : public CreatureScript                                  else                                  {                                      std::vector<Unit*>::const_iterator itr = targets.begin(); -                                    advance(itr, rand()%targets.size()); +                                    advance(itr, rand32() % targets.size());                                      _iceblocks.insert(std::make_pair((*itr)->GetGUID(), 0));                                      DoCast(*itr, SPELL_ICEBOLT);                                      --_iceboltCount; diff --git a/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp b/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp index 406ca3963a4..34e21336547 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp @@ -149,7 +149,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_SLAY);          } @@ -309,7 +309,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_STAL_SLAY);          } @@ -399,7 +399,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (!(rand()%5)) +            if (!(rand32() % 5))                  Talk(SAY_FEUG_SLAY);          } diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_bjarngrim.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_bjarngrim.cpp index 13ea815febc..40fa5a5c934 100644 --- a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_bjarngrim.cpp +++ b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/boss_bjarngrim.cpp @@ -245,7 +245,7 @@ public:                  DoRemoveStanceAura(m_uiStance); -                int uiTempStance = rand()%(3-1); +                int uiTempStance = rand32() % (3 - 1);                  if (uiTempStance >= m_uiStance)                      ++uiTempStance; diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp index 9be91bf9c64..8e619864201 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp @@ -201,7 +201,7 @@ class boss_skarvald_the_constructor : public CreatureScript                  {                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, SkarvaldChargePredicate(me)))                          DoCast(target, SPELL_CHARGE); -                    Charge_Timer = 5000+rand()%5000; +                    Charge_Timer = 5000 + rand32() % 5000;                  }                  else                      Charge_Timer -= diff; @@ -209,7 +209,7 @@ class boss_skarvald_the_constructor : public CreatureScript                  if (StoneStrike_Timer <= diff)                  {                      DoCastVictim(SPELL_STONE_STRIKE); -                    StoneStrike_Timer = 5000+rand()%5000; +                    StoneStrike_Timer = 5000 + rand32() % 5000;                  }                  else                      StoneStrike_Timer -= diff; @@ -374,7 +374,7 @@ class boss_dalronn_the_controller : public CreatureScript                      {                          if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 0.0f, true))                              DoCast(target, SPELL_DEBILITATE); -                        Debilitate_Timer = 5000+rand()%5000; +                        Debilitate_Timer = 5000 + rand32() % 5000;                      }                  }                  else @@ -387,7 +387,7 @@ class boss_dalronn_the_controller : public CreatureScript                          if (!me->IsNonMeleeSpellCast(false))                          {                              DoCast(me, H_SPELL_SUMMON_SKELETONS); -                            Summon_Timer = (rand()%10000) + 20000; +                            Summon_Timer = (rand32() % 10000) + 20000;                          }                      }                      else diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp index 664facd31a1..245cf46336d 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp @@ -297,19 +297,19 @@ public:              if (uiChainLightingTimer <= diff)              {                  DoCastVictim(SPELL_CHAIN_LIGHTING); -                uiChainLightingTimer = 5000 + rand() % 5000; +                uiChainLightingTimer = 5000 + rand32() % 5000;              } else uiChainLightingTimer -=  diff;              if (uiCrazedTimer <= diff)              {                  DoCast(me, SPELL_CRAZED); -                uiCrazedTimer = 8000 + rand() % 4000; +                uiCrazedTimer = 8000 + rand32() % 4000;              } else uiCrazedTimer -=  diff;              if (uiTerrifyingRoarTimer <= diff)              {                  DoCast(me, SPELL_TERRIFYING_ROAR); -                uiTerrifyingRoarTimer = 10000 + rand() % 10000; +                uiTerrifyingRoarTimer = 10000 + rand32() % 10000;              } else uiTerrifyingRoarTimer -=  diff;              DoMeleeAttackIfReady(); @@ -405,7 +405,7 @@ public:              if (uiMortalWoundTimer <= diff)              {                  DoCastVictim(SPELL_MORTAL_WOUND); -                uiMortalWoundTimer = 3000 + rand() % 4000; +                uiMortalWoundTimer = 3000 + rand32() % 4000;              } else uiMortalWoundTimer -= diff;              if (uiEnrage1Timer <= diff) @@ -515,20 +515,20 @@ public:              if (uiStompTimer <= diff)              {                  DoCastVictim(SPELL_STOMP); -                uiStompTimer = 8000 + rand() % 4000; +                uiStompTimer = 8000 + rand32() % 4000;              } else uiStompTimer -= diff;              if (uiGoreTimer <= diff)              {                  DoCastVictim(SPELL_GORE); -                uiGoreTimer = 13000 + rand() % 4000; +                uiGoreTimer = 13000 + rand32() % 4000;              } else uiGoreTimer -= diff;              if (uiGrievousWoundTimer <= diff)              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))                      DoCast(target, SPELL_GRIEVOUS_WOUND); -                uiGrievousWoundTimer = 18000 + rand() % 4000; +                uiGrievousWoundTimer = 18000 + rand32() % 4000;              } else uiGrievousWoundTimer -= diff;              DoMeleeAttackIfReady(); @@ -631,20 +631,20 @@ public:              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))                      DoCast(target, SPELL_ACID_SPIT); -                uiAcidSpitTimer = 2000 + rand() % 2000; +                uiAcidSpitTimer = 2000 + rand32() % 2000;              } else uiAcidSpitTimer -= diff;              if (uiAcidSplatterTimer <= diff)              {                  DoCast(me, SPELL_POISON_BREATH); -                uiAcidSplatterTimer = 10000 + rand() % 4000; +                uiAcidSplatterTimer = 10000 + rand32() % 4000;              } else uiAcidSplatterTimer -= diff;              if (uiPoisonBreathTimer <= diff)              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))                      DoCast(target, SPELL_POISON_BREATH); -                uiPoisonBreathTimer = 8000 + rand() % 4000; +                uiPoisonBreathTimer = 8000 + rand32() % 4000;              } else uiPoisonBreathTimer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp index 41dd1a165f2..ea44d76e7e6 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp @@ -421,15 +421,15 @@ public:                  switch (urand(0, 2))                  {                      case 0: -                        me->SummonCreature(NPC_YMIRJAR_WARRIOR, SpawnLoc.GetPositionX()+rand()%5, SpawnLoc.GetPositionY()+rand()%5, SpawnLoc.GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); +                        me->SummonCreature(NPC_YMIRJAR_WARRIOR, SpawnLoc.GetPositionX() + rand32() % 5, SpawnLoc.GetPositionY() + rand32() % 5, SpawnLoc.GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000);                          break;                      case 1: -                        me->SummonCreature(NPC_YMIRJAR_WITCH_DOCTOR, SpawnLoc.GetPositionX()+rand()%5, SpawnLoc.GetPositionY()+rand()%5, SpawnLoc.GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); +                        me->SummonCreature(NPC_YMIRJAR_WITCH_DOCTOR, SpawnLoc.GetPositionX() + rand32() % 5, SpawnLoc.GetPositionY() + rand32() % 5, SpawnLoc.GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000);                          break;                      case 2: -                        me->SummonCreature(NPC_YMIRJAR_HARPOONER, SpawnLoc.GetPositionX()+rand()%5, SpawnLoc.GetPositionY()+rand()%5, SpawnLoc.GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); +                        me->SummonCreature(NPC_YMIRJAR_HARPOONER, SpawnLoc.GetPositionX() + rand32() % 5, SpawnLoc.GetPositionY() + rand32() % 5, SpawnLoc.GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000);                          break;                  }              } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp index de4d6c32c97..dfef80133c4 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp @@ -111,7 +111,7 @@ public:                  m_uiActiveOrder[i] = i;              for (int i = 0; i < 3; ++i)              { -                int r = i + (rand() % (4 - i)); +                int r = i + (rand32() % (4 - i));                  int temp = m_uiActiveOrder[i];                  m_uiActiveOrder[i] = m_uiActiveOrder[r];                  m_uiActiveOrder[r] = temp; @@ -275,7 +275,7 @@ public:                  if (m_bIsActiveWithBJORN && m_uiAbility_BJORN_Timer <= diff)                  {                      //DoCast(me, SPELL_SUMMON_SPIRIT_FOUNT); // works fine, but using summon has better control -                    if (Creature* temp = me->SummonCreature(NPC_SPIRIT_FOUNT, 385.0f + rand() % 10, -330.0f + rand() % 10, 104.756f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 180000)) +                    if (Creature* temp = me->SummonCreature(NPC_SPIRIT_FOUNT, 385.0f + rand32() % 10, -330.0f + rand32() % 10, 104.756f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 180000))                      {                          temp->SetSpeed(MOVE_RUN, 0.4f);                          temp->CastSpell(temp, DUNGEON_MODE(SPELL_SPIRIT_FOUNT, H_SPELL_SPIRIT_FOUNT), true); @@ -307,7 +307,7 @@ public:                      for (uint8 i = 0; i < 4; ++i)                      {                          //DoCast(me, SPELL_SUMMON_AVENGING_SPIRIT); // works fine, but using summon has better control -                        if (Creature* temp = me->SummonCreature(NPC_AVENGING_SPIRIT, x + rand() % 10, y + rand() % 10, z, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000)) +                        if (Creature* temp = me->SummonCreature(NPC_AVENGING_SPIRIT, x + rand32() % 10, y + rand32() % 10, z, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000))                          {                              if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                              { diff --git a/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp b/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp index 66ab5a04c3c..b63709b34c8 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp @@ -174,7 +174,7 @@ public:                      //If one of the adds is dead spawn heals faster                      Creature* pGuard1 = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_EREKEM_GUARD_1));                      Creature* pGuard2 = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_EREKEM_GUARD_2)); -                    uiChainHealTimer = ((pGuard1 && !pGuard1->IsAlive()) || (pGuard2 && !pGuard2->IsAlive()) ? 3000 : 8000) + rand()%3000; +                    uiChainHealTimer = ((pGuard1 && !pGuard1->IsAlive()) || (pGuard2 && !pGuard2->IsAlive()) ? 3000 : 8000) + rand32() % 3000;                  }              } else uiChainHealTimer -= diff; diff --git a/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp b/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp index 2bac444a558..734c20000eb 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp @@ -177,7 +177,7 @@ public:                  Talk(SAY_SPAWN);                  DoCast(me, SPELL_SUMMON_ETHEREAL_SPHERE_1);                  if (IsHeroic()) // extra one for heroic -                    me->SummonCreature(NPC_ETHEREAL_SPHERE, me->GetPositionX()-5+rand()%10, me->GetPositionY()-5+rand()%10, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 40000); +                    me->SummonCreature(NPC_ETHEREAL_SPHERE, me->GetPositionX() - 5 + rand32() % 10, me->GetPositionY() - 5 + rand32() % 10, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 40000);                  uiSummonEtherealSphere_Timer = urand(45000, 47000);                  uiArcaneBuffet_Timer = urand(5000, 6000); diff --git a/src/server/scripts/Northrend/zone_dragonblight.cpp b/src/server/scripts/Northrend/zone_dragonblight.cpp index 59c9b21a220..80e496a6e13 100644 --- a/src/server/scripts/Northrend/zone_dragonblight.cpp +++ b/src/server/scripts/Northrend/zone_dragonblight.cpp @@ -433,7 +433,7 @@ public:          void HandleDummy(SpellEffIndex /*effIndex*/)          { -            uint32 roll = rand() % 2; +            uint32 roll = rand32() % 2;              Creature* tree = GetHitCreature();              Player* player = GetCaster()->ToPlayer(); diff --git a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp index ea877435acf..2b3928f322a 100644 --- a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp +++ b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp @@ -190,9 +190,9 @@ public:              soulholder = 0;              soulclass = 0; -            Fear_timer = 15000 + rand()% 5000; +            Fear_timer = 15000 + rand32() % 5000;              Ribbon_of_Souls_timer = 5000; -            StolenSoul_Timer = 25000 + rand()% 10000; +            StolenSoul_Timer = 25000 + rand32() % 10000;              Avatar_summoned = false;          } @@ -234,7 +234,7 @@ public:          void KilledUnit(Unit* /*victim*/) override          { -            if (rand()%2) +            if (rand32() % 2)                  return;              Talk(SAY_SLAY); @@ -261,7 +261,7 @@ public:                  DoCast(me, SPELL_SUMMON_AVATAR);                  Avatar_summoned = true; -                StolenSoul_Timer = 15000 + rand()% 15000; +                StolenSoul_Timer = 15000 + rand32() % 15000;              }              if (StolenSoul_Timer <= diff) @@ -282,7 +282,7 @@ public:                          DoCast(target, SPELL_STOLEN_SOUL);                          me->SummonCreature(ENTRY_STOLEN_SOUL, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 10000); -                        StolenSoul_Timer = 20000 + rand()% 10000; +                        StolenSoul_Timer = 20000 + rand32() % 10000;                      } else StolenSoul_Timer = 1000;                  }              } else StolenSoul_Timer -= diff; @@ -292,13 +292,13 @@ public:                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      DoCast(target, SPELL_RIBBON_OF_SOULS); -                Ribbon_of_Souls_timer = 5000 + (rand()%20 * 1000); +                Ribbon_of_Souls_timer = 5000 + (rand32() % 20 * 1000);              } else Ribbon_of_Souls_timer -= diff;              if (Fear_timer <= diff)              {                  DoCast(me, SPELL_SOUL_SCREAM); -                Fear_timer = 15000 + rand()% 15000; +                Fear_timer = 15000 + rand32() % 15000;              } else Fear_timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_shirrak_the_dead_watcher.cpp b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_shirrak_the_dead_watcher.cpp index 26e9df6620c..683b253d8a1 100644 --- a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_shirrak_the_dead_watcher.cpp +++ b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_shirrak_the_dead_watcher.cpp @@ -118,7 +118,7 @@ public:                              if (dist < 15)                                  me->AddAura(SPELL_INHIBITMAGIC, i_pl);                          } -                Inhibitmagic_Timer = 3000+(rand()%1000); +                Inhibitmagic_Timer = 3000 + (rand32() % 1000);              } else Inhibitmagic_Timer -= diff;              //Return since we have no target @@ -151,7 +151,7 @@ public:                      me->SummonCreature(NPC_FOCUS_FIRE, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 5500);                      Talk(EMOTE_FOCUSED, target);                  } -                FocusFire_Timer = 15000+(rand()%5000); +                FocusFire_Timer = 15000 + (rand32() % 5000);              } else FocusFire_Timer -= diff;              DoMeleeAttackIfReady(); @@ -181,7 +181,7 @@ public:          void Reset() override          { -            FieryBlast_Timer = 3000+(rand()%1000); +            FieryBlast_Timer = 3000 + (rand32() % 1000);              fiery1 = fiery2 = true;          } diff --git a/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp b/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp index 2a359419e79..f7f901a9349 100644 --- a/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp +++ b/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp @@ -61,7 +61,7 @@ public:          void Reset() override          { -            VoidBlast_Timer = 8000+rand()%15000; +            VoidBlast_Timer = 8000 + rand32() % 15000;              DarkShell_Timer = 20000;              VoidBlast_Counter = 0;          } @@ -97,7 +97,7 @@ public:                  if (VoidBlast_Counter == 5)                  { -                    VoidBlast_Timer = 15000+rand()%10000; +                    VoidBlast_Timer = 15000 + rand32() % 10000;                      VoidBlast_Counter = 0;                  }              } else VoidBlast_Timer -= diff; diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp index cd53b5c18c1..9cb7505c015 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp @@ -66,7 +66,7 @@ public:              ArcaneVolley_Timer = 5000;              Sheep_Timer = 8000;              Blink_Timer = 35000; -            Slow_Timer = 15000+rand()%15000; +            Slow_Timer = 15000 + rand32() % 15000;              Blink = false;              Intro = false;              ManaShield = false; @@ -127,7 +127,7 @@ public:              if (ArcaneVolley_Timer <= diff)              {                  DoCast(me, SPELL_ARCANE_VOLLEY); -                ArcaneVolley_Timer = 7000+rand()%5000; +                ArcaneVolley_Timer = 7000 + rand32() % 5000;              } else ArcaneVolley_Timer -= diff;              if (Sheep_Timer <= diff) @@ -142,7 +142,7 @@ public:                  if (target)                      DoCast(target, SPELL_POLYMORPH); -                Sheep_Timer = 15000+rand()%2500; +                Sheep_Timer = 15000 + rand32() % 2500;              } else Sheep_Timer -= diff;              //may not be correct time to cast @@ -157,7 +157,7 @@ public:                  if (Slow_Timer <= diff)                  {                      DoCast(me, H_SPELL_SLOW); -                    Slow_Timer = 15000+rand()%25000; +                    Slow_Timer = 15000 + rand32() % 25000;                  } else Slow_Timer -= diff;              } @@ -182,7 +182,7 @@ public:                      DoCast(target, SPELL_BLINK_TELEPORT);                      Blink = true;                  } -                Blink_Timer = 35000+rand()%5000; +                Blink_Timer = 35000 + rand32() % 5000;              } else Blink_Timer -= diff;              if (!Blink) diff --git a/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp b/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp index b1c3d607396..ec89acfb7b6 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp @@ -637,7 +637,7 @@ public:                  break;              case PHASE_FLIGHT:                  Timer[EVENT_FIREBALL] = 1000; -                if (!(rand()%4)) +                if (!(rand32() % 4))                      Timer[EVENT_DARK_BARRAGE] = 10000;                  Timer[EVENT_EYE_BLAST] = urand(10, 25) * 1000;                  Timer[EVENT_MOVE_POINT] = urand(20, 40) * 1000; @@ -993,7 +993,7 @@ public:                  case EVENT_SHEAR:                      // no longer exists in 3.0f.2                      // DoCastVictim(SPELL_SHEAR); -                    Timer[EVENT_SHEAR] = 25000 + (rand()%16 * 1000); +                    Timer[EVENT_SHEAR] = 25000 + (rand32() % 16 * 1000);                      break;                  case EVENT_FLAME_CRASH: @@ -1062,7 +1062,7 @@ public:                  case EVENT_MOVE_POINT:                      Phase = PHASE_FLIGHT_SEQUENCE;                      Timer[EVENT_FLIGHT_SEQUENCE] = 0; // do not start Event when changing hover point -                    HoverPoint += (rand()%3 + 1); +                    HoverPoint += (rand32() % 3 + 1);                      if (HoverPoint > 3)                          HoverPoint -= 4;                      me->GetMotionMaster()->MovePoint(0, HoverPosition[HoverPoint].x, HoverPosition[HoverPoint].y, HoverPosition[HoverPoint].z); @@ -1254,7 +1254,7 @@ public:                  if (!target || !me->IsWithinDistInMap(target, 80) || illidan->IsWithinDistInMap(target, 20))                  { -                    uint8 pos = rand()%4; +                    uint8 pos = rand32() % 4;                      BlinkTo(HoverPosition[pos].x, HoverPosition[pos].y, HoverPosition[pos].z);                  }                  else @@ -1720,7 +1720,7 @@ public:                      {                          float x, y, z;                          me->GetPosition(x, y, z); -                        Creature* Elite = me->SummonCreature(ILLIDARI_ELITE, x+rand()%10, y+rand()%10, z, 0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 30000); +                        Creature* Elite = me->SummonCreature(ILLIDARI_ELITE, x + rand32() % 10, y + rand32() % 10, z, 0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 30000);                          // Creature* Elite = me->SummonCreature(ILLIDARI_ELITE, x, y, z, 0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 30000);                          if (Elite)                          { diff --git a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp index db3fcea35db..3415451fef5 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp @@ -155,7 +155,7 @@ public:          void TeleportPlayers()          { -            uint32 random = rand()%7; +            uint32 random = rand32() % 7;              float X = TeleportPoint[random].x;              float Y = TeleportPoint[random].y;              float Z = TeleportPoint[random].z; @@ -211,14 +211,14 @@ public:                  uint32 Beam = CurrentBeam;                  if (BeamCount > 3)                      while (CurrentBeam == Beam) -                        CurrentBeam = rand()%3; +                        CurrentBeam = rand32() % 3;              } else BeamTimer -= diff;              // Random Prismatic Shield every 15 seconds.              if (PrismaticShieldTimer <= diff)              { -                uint32 random = rand()%6; +                uint32 random = rand32() % 6;                  if (PrismaticAuras[random])                      DoCast(me, PrismaticAuras[random]);                  PrismaticShieldTimer = 15000; @@ -264,13 +264,13 @@ public:              if (ShriekTimer <= diff)              {                  DoCastVictim(SPELL_SILENCING_SHRIEK); -                ShriekTimer = 25000+rand()%10 * 1000; +                ShriekTimer = 25000 + rand32() % 10 * 1000;              } else ShriekTimer -= diff;              if (SaberTimer <= diff)              {                  DoCastVictim(SPELL_SABER_LASH); -                SaberTimer = 25000+rand()%10 * 1000; +                SaberTimer = 25000 + rand32() % 10 * 1000;              } else SaberTimer -= diff;              //Enrage diff --git a/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp b/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp index 9b304c3cd7b..67d456286d5 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp @@ -205,7 +205,7 @@ public:          bool SummonSoul()          { -            uint32 random = rand()%6; +            uint32 random = rand32() % 6;              float x = Coords[random].x;              float y = Coords[random].y; @@ -478,7 +478,7 @@ public:                  {                      CastFixate();                      FixateTimer = 5000; -                    if (!(rand()%16)) +                    if (!(rand32() % 16))                      {                          Talk(SUFF_SAY_AGGRO);                      } @@ -599,7 +599,7 @@ public:                  me->InterruptNonMeleeSpells(false);                  DoCastVictim(SPELL_DEADEN);                  DeadenTimer = urand(25000, 35000); -                if (!(rand()%2)) +                if (!(rand32() % 2))                  {                      Talk(DESI_SAY_SPEC);                  } @@ -692,7 +692,7 @@ public:              {                  DoCastVictim(SPELL_SOUL_SCREAM);                  SoulScreamTimer = urand(9000, 11000); -                if (!(rand()%3)) +                if (!(rand32() % 3))                  {                      Talk(ANGER_SAY_SPEC);                  } diff --git a/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp b/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp index 0d9537b8b7a..c2bf5966a5c 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp @@ -306,10 +306,10 @@ public:              switch (urand(0, 1))              {                  case 0: -                    coord += rand()%radius; +                    coord += rand32() % radius;                      break;                  case 1: -                    coord -= rand()%radius; +                    coord -= rand32() % radius;                      break;              }              return coord; diff --git a/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp b/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp index 2362f534b05..b9a9f41ca09 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp @@ -132,7 +132,7 @@ public:              Talk(SAY_AGGRO);              DoZoneInCombat();              events.ScheduleEvent(EVENT_BERSERK, 480000, GCD_CAST); -            events.ScheduleEvent(EVENT_YELL, 45000 + (rand()%76)*1000, GCD_YELL); +            events.ScheduleEvent(EVENT_YELL, 45000 + (rand32() % 76) * 1000, GCD_YELL);              ResetTimer();          } diff --git a/src/server/scripts/Outland/BlackTemple/illidari_council.cpp b/src/server/scripts/Outland/BlackTemple/illidari_council.cpp index 49762275169..ba7730ba566 100644 --- a/src/server/scripts/Outland/BlackTemple/illidari_council.cpp +++ b/src/server/scripts/Outland/BlackTemple/illidari_council.cpp @@ -489,7 +489,7 @@ public:              Unit* unit = me;              uint32 member = 0;                                  // He chooses Lady Malande most often -            if (rand()%10 == 0)                                  // But there is a chance he picks someone else. +            if (rand32() % 10 == 0)                                  // But there is a chance he picks someone else.                  member = urand(1, 3);              if (member != 2)                                     // No need to create another pointer to us using Unit::GetUnit diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp index c6b62ee8de7..0f9a10e5c4f 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp @@ -131,7 +131,7 @@ public:          {              CataclysmicBolt_Timer = 10000;              Enrage_Timer = 600000;                              //10 minutes -            SearNova_Timer = 20000+rand()%40000; // 20 - 60 seconds +            SearNova_Timer = 20000 + rand32() % 40000; // 20 - 60 seconds              BlessingOfTides = false; @@ -253,7 +253,7 @@ public:              if (SearNova_Timer <= diff)              {                  DoCastVictim(SPELL_SEAR_NOVA); -                SearNova_Timer = 20000+rand()%40000; +                SearNova_Timer = 20000 + rand32() % 40000;              } else SearNova_Timer -= diff;              //Enrage_Timer @@ -508,7 +508,7 @@ public:              if (FrostShock_Timer <= diff)              {                  DoCastVictim(SPELL_FROST_SHOCK); -                FrostShock_Timer = 25000+rand()%5000; +                FrostShock_Timer = 25000 + rand32() % 5000;              } else FrostShock_Timer -= diff;              //Spitfire_Timer @@ -575,9 +575,9 @@ public:          void Reset() override          {              WaterBoltVolley_Timer = 35000; -            TidalSurge_Timer = 15000+rand()%5000; +            TidalSurge_Timer = 15000 + rand32() % 5000;              Heal_Timer = 55000; -            Cyclone_Timer = 30000+rand()%10000; +            Cyclone_Timer = 30000 + rand32() % 10000;              instance->SetData(DATA_KARATHRESSEVENT, NOT_STARTED);          } @@ -628,16 +628,16 @@ public:                  // Hacky way to do it - won't trigger elseways                  if (me->GetVictim())                      me->EnsureVictim()->CastSpell(me->GetVictim(), SPELL_TIDAL_SURGE_FREEZE, true); -                TidalSurge_Timer = 15000+rand()%5000; +                TidalSurge_Timer = 15000 + rand32() % 5000;              } else TidalSurge_Timer -= diff;              //Cyclone_Timer              if (Cyclone_Timer <= diff)              {                  //DoCast(me, SPELL_SUMMON_CYCLONE); // Doesn't work -                Cyclone_Timer = 30000+rand()%10000; +                Cyclone_Timer = 30000 + rand32() % 10000; -                if (Creature* Cyclone = me->SummonCreature(CREATURE_CYCLONE, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), float(rand()%5), TEMPSUMMON_TIMED_DESPAWN, 15000)) +                if (Creature* Cyclone = me->SummonCreature(CREATURE_CYCLONE, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), float(rand32() % 5), TEMPSUMMON_TIMED_DESPAWN, 15000))                  {                      Cyclone->SetObjectScale(3.0f);                      Cyclone->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); @@ -672,7 +672,7 @@ public:          Unit* selectAdvisorUnit()          {              Unit* unit = NULL; -            switch (rand()%4) +            switch (rand32() % 4)              {              case 0:                  unit = ObjectAccessor::GetUnit(*me, instance->GetData64(DATA_KARATHRESS)); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp index 0745a85bf02..f877ce83b37 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp @@ -182,15 +182,15 @@ public:          void Reset() override          {              AggroTimer = 19000; -            ShockBlastTimer = 1+rand()%60000; +            ShockBlastTimer = 1 + rand32() % 60000;              EntangleTimer = 30000; -            StaticChargeTimer = 10000+rand()%15000; +            StaticChargeTimer = 10000 + rand32() % 15000;              ForkedLightningTimer = 2000;              CheckTimer = 15000;              EnchantedElementalTimer = 5000;              TaintedElementalTimer = 50000; -            CoilfangEliteTimer = 45000+rand()%5000; -            CoilfangStriderTimer = 60000+rand()%10000; +            CoilfangEliteTimer = 45000 + rand32() % 5000; +            CoilfangStriderTimer = 60000 + rand32() % 10000;              SummonSporebatTimer = 10000;              SummonSporebatStaticTimer = 30000;              EnchantedElementalPos = 0; @@ -304,7 +304,7 @@ public:                      DoCastVictim(SPELL_MULTI_SHOT);                      break;              } -            if (rand()%3) +            if (rand32() % 3)              {                  Talk(SAY_BOWSHOT);              } @@ -346,7 +346,7 @@ public:                      DoCastVictim(SPELL_SHOCK_BLAST);                      me->TauntApply(me->GetVictim()); -                    ShockBlastTimer = 1000+rand()%14000;       // random cooldown +                    ShockBlastTimer = 1000 + rand32() % 14000;       // random cooldown                  } else ShockBlastTimer -= diff;                  // StaticChargeTimer @@ -358,7 +358,7 @@ public:                      if (target && !target->HasAura(SPELL_STATIC_CHARGE_TRIGGER))                          DoCast(target, SPELL_STATIC_CHARGE_TRIGGER); // cast Static Charge every 2 seconds for 20 seconds -                    StaticChargeTimer = 10000+rand()%20000; +                    StaticChargeTimer = 10000 + rand32() % 20000;                  } else StaticChargeTimer -= diff;                  // EntangleTimer @@ -376,7 +376,7 @@ public:                      {                          CastShootOrMultishot();                          Entangle = false; -                        EntangleTimer = 20000+rand()%5000; +                        EntangleTimer = 20000 + rand32() % 5000;                      }                  } else EntangleTimer -= diff; @@ -461,7 +461,7 @@ public:                      DoCast(target, SPELL_FORKED_LIGHTNING); -                    ForkedLightningTimer = 2000+rand()%6000; +                    ForkedLightningTimer = 2000 + rand32() % 6000;                  } else ForkedLightningTimer -= diff;                  // EnchantedElementalTimer @@ -474,13 +474,13 @@ public:                      else                          ++EnchantedElementalPos; -                    EnchantedElementalTimer = 10000+rand()%5000; +                    EnchantedElementalTimer = 10000 + rand32() % 5000;                  } else EnchantedElementalTimer -= diff;                  // TaintedElementalTimer                  if (TaintedElementalTimer <= diff)                  { -                    uint32 pos = rand()%8; +                    uint32 pos = rand32() % 8;                      me->SummonCreature(TAINTED_ELEMENTAL, ElementPos[pos][0], ElementPos[pos][1], ElementPos[pos][2], ElementPos[pos][3], TEMPSUMMON_DEAD_DESPAWN, 0);                      TaintedElementalTimer = 120000; @@ -489,7 +489,7 @@ public:                  // CoilfangEliteTimer                  if (CoilfangEliteTimer <= diff)                  { -                    uint32 pos = rand()%3; +                    uint32 pos = rand32() % 3;                      Creature* coilfangElite = me->SummonCreature(COILFANG_ELITE, CoilfangElitePos[pos][0], CoilfangElitePos[pos][1], CoilfangElitePos[pos][2], CoilfangElitePos[pos][3], TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000);                      if (coilfangElite)                      { @@ -498,13 +498,13 @@ public:                          else if (me->GetVictim())                              coilfangElite->AI()->AttackStart(me->GetVictim());                      } -                    CoilfangEliteTimer = 45000+rand()%5000; +                    CoilfangEliteTimer = 45000 + rand32() % 5000;                  } else CoilfangEliteTimer -= diff;                  // CoilfangStriderTimer                  if (CoilfangStriderTimer <= diff)                  { -                    uint32 pos = rand()%3; +                    uint32 pos = rand32() % 3;                      if (Creature* CoilfangStrider = me->SummonCreature(COILFANG_STRIDER, CoilfangStriderPos[pos][0], CoilfangStriderPos[pos][1], CoilfangStriderPos[pos][2], CoilfangStriderPos[pos][3], TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000))                      {                          if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) @@ -512,7 +512,7 @@ public:                          else if (me->GetVictim())                              CoilfangStrider->AI()->AttackStart(me->GetVictim());                      } -                    CoilfangStriderTimer = 60000+rand()%10000; +                    CoilfangStriderTimer = 60000 + rand32() % 10000;                  } else CoilfangStriderTimer -= diff;                  // CheckTimer @@ -656,7 +656,7 @@ public:          void Reset() override          { -            PoisonBoltTimer = 5000+rand()%5000; +            PoisonBoltTimer = 5000 + rand32() % 5000;              DespawnTimer = 30000;          } @@ -681,7 +681,7 @@ public:                  if (target && target->IsWithinDistInMap(me, 30))                      DoCast(target, SPELL_POISON_BOLT); -                PoisonBoltTimer = 5000+rand()%5000; +                PoisonBoltTimer = 5000 + rand32() % 5000;              } else PoisonBoltTimer -= diff;              // DespawnTimer @@ -754,7 +754,7 @@ public:              // Random movement              if (MovementTimer <= diff)              { -                uint32 rndpos = rand()%8; +                uint32 rndpos = rand32() % 8;                  me->GetMotionMaster()->MovePoint(1, SporebatWPPos[rndpos][0], SporebatWPPos[rndpos][1], SporebatWPPos[rndpos][2]);                  MovementTimer = 6000;              } else MovementTimer -= diff; @@ -770,7 +770,7 @@ public:                          trig->CastSpell(trig, SPELL_TOXIC_SPORES, true);                      }                  } -                BoltTimer = 10000+rand()%5000; +                BoltTimer = 10000 + rand32() % 5000;              }              else BoltTimer -= diff; diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp index 1f58573465f..a0ff469733c 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lurker_below.cpp @@ -127,7 +127,7 @@ public:              SpoutTimer = 45000;              WhirlTimer = 18000; // after avery spout              PhaseTimer = 120000; -            GeyserTimer = rand()%5000 + 15000; +            GeyserTimer = rand32() % 5000 + 15000;              CheckTimer = 15000; // give time to get in range when fight starts              WaitTimer = 60000; // never reached              WaitTimer2 = 60000; // never reached @@ -299,7 +299,7 @@ public:                          target = me->GetVictim();                      if (target)                          DoCast(target, SPELL_GEYSER, true); -                    GeyserTimer = rand()%5000 + 15000; +                    GeyserTimer = rand32() % 5000 + 15000;                  } else GeyserTimer -= diff;                  if (!InRange) // if on players in melee range cast Waterbolt @@ -403,7 +403,7 @@ public:                  if (me->GetVictim())                      DoCastVictim(SPELL_SPREAD_SHOT, true); -                MultiShotTimer = 10000+rand()%10000; +                MultiShotTimer = 10000 + rand32() % 10000;                  ShootBowTimer += 1500; // add global cooldown              } else MultiShotTimer -= diff; @@ -412,7 +412,7 @@ public:                  int bp0 = 1100;                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      me->CastCustomSpell(target, SPELL_SHOOT, &bp0, NULL, NULL, true); -                ShootBowTimer = 4000+rand()%5000; +                ShootBowTimer = 4000 + rand32() % 5000;                  MultiShotTimer += 1500; // add global cooldown              } else ShootBowTimer -= diff;          } diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp index 75d2026537e..d501b919614 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp @@ -197,7 +197,7 @@ public:                      }                      Talk(EMOTE_EARTHQUAKE);                      Earthquake = false; -                    Earthquake_Timer = 40000+rand()%5000; +                    Earthquake_Timer = 40000 + rand32() % 5000;                  }              } else Earthquake_Timer -= diff; diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp index 848e9140f25..dc0a6643624 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp @@ -101,7 +101,7 @@ public:                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                          DoCast(target, SPELL_LIGHTNING_CLOUD); -                LightningCloud_Timer = 15000+rand()%10000; +                LightningCloud_Timer = 15000 + rand32() % 10000;              } else LightningCloud_Timer -=diff;              //LungBurst_Timer @@ -109,7 +109,7 @@ public:              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      DoCast(target, SPELL_LUNG_BURST); -                LungBurst_Timer = 7000+rand()%5000; +                LungBurst_Timer = 7000 + rand32() % 5000;              } else LungBurst_Timer -=diff;              //EnvelopingWinds_Timer @@ -122,7 +122,7 @@ public:                  if (IsHeroic())                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                          DoCast(target, SPELL_ENVELOPING_WINDS); -                EnvelopingWinds_Timer = 10000+rand()%5000; +                EnvelopingWinds_Timer = 10000 + rand32() % 5000;              } else EnvelopingWinds_Timer -=diff;              DoMeleeAttackIfReady(); @@ -149,7 +149,7 @@ public:          void Reset() override          { -            WaterBoltVolley_Timer = 3000+rand()%3000; +            WaterBoltVolley_Timer = 3000 + rand32() % 3000;          }          void EnterCombat(Unit* /*who*/) override { } @@ -162,7 +162,7 @@ public:              if (WaterBoltVolley_Timer <= diff)              {                  DoCast(me, SPELL_WATER_BOLT_VOLLEY); -                WaterBoltVolley_Timer = 7000+rand()%5000; +                WaterBoltVolley_Timer = 7000 + rand32() % 5000;              } else WaterBoltVolley_Timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp index 5dbc6a91418..78a14539e25 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp @@ -117,9 +117,9 @@ public:              DoSpawnCreature(NPC_STREAMRIGGER_MECHANIC, -5, 5, 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 240000);              DoSpawnCreature(NPC_STREAMRIGGER_MECHANIC, -5, -5, 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 240000); -            if (rand()%2) +            if (rand32() % 2)                  DoSpawnCreature(NPC_STREAMRIGGER_MECHANIC, 5, -7, 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 240000); -            if (rand()%2) +            if (rand32() % 2)                  DoSpawnCreature(NPC_STREAMRIGGER_MECHANIC, 7, -5, 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 240000);          } diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp index 536ea77a98b..ab6e0afaab4 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp @@ -123,7 +123,7 @@ public:          void Reset() override          {              Reflection_Timer = 10000; -            Impale_Timer = 7000+rand()%7000; +            Impale_Timer = 7000 + rand32() % 7000;              Rage_Timer = 45000;              CanRage = false; @@ -170,14 +170,14 @@ public:                      DoCast(me, SPELL_WARLORDS_RAGE);                      CAST_AI(npc_naga_distiller::npc_naga_distillerAI, distiller->AI())->StartRageGen(me);                  } -                Rage_Timer = 3000+rand()%15000; +                Rage_Timer = 3000 + rand32() % 15000;              } else Rage_Timer -= diff;              //Reflection_Timer              if (Reflection_Timer <= diff)              {                  DoCast(me, SPELL_SPELL_REFLECTION); -                Reflection_Timer = 15000+rand()%10000; +                Reflection_Timer = 15000 + rand32() % 10000;              } else Reflection_Timer -= diff;              //Impale_Timer @@ -186,7 +186,7 @@ public:                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      DoCast(target, SPELL_IMPALE); -                Impale_Timer = 7500+rand()%5000; +                Impale_Timer = 7500 + rand32() % 5000;              } else Impale_Timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_hungarfen.cpp b/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_hungarfen.cpp index ae7d5fd2308..90853138448 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_hungarfen.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_hungarfen.cpp @@ -84,9 +84,9 @@ public:              if (Mushroom_Timer <= diff)              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) -                    me->SummonCreature(17990, target->GetPositionX()+(rand()%8), target->GetPositionY()+(rand()%8), target->GetPositionZ(), float(rand()%5), TEMPSUMMON_TIMED_DESPAWN, 22000); +                    me->SummonCreature(17990, target->GetPositionX() + (rand32() % 8), target->GetPositionY() + (rand32() % 8), target->GetPositionZ(), float(rand32() % 5), TEMPSUMMON_TIMED_DESPAWN, 22000);                  else -                    me->SummonCreature(17990, me->GetPositionX()+(rand()%8), me->GetPositionY()+(rand()%8), me->GetPositionZ(), float(rand()%5), TEMPSUMMON_TIMED_DESPAWN, 22000); +                    me->SummonCreature(17990, me->GetPositionX() + (rand32() % 8), me->GetPositionY() + (rand32() % 8), me->GetPositionZ(), float(rand32() % 5), TEMPSUMMON_TIMED_DESPAWN, 22000);                  Mushroom_Timer = 10000;              } else Mushroom_Timer -= diff; @@ -95,7 +95,7 @@ public:              {                  if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      DoCast(target, SPELL_ACID_GEYSER); -                AcidGeyser_Timer = 10000+rand()%7500; +                AcidGeyser_Timer = 10000 + rand32() % 7500;              } else AcidGeyser_Timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_the_black_stalker.cpp b/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_the_black_stalker.cpp index 7e37c22565a..7090a693876 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_the_black_stalker.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/TheUnderbog/boss_the_black_stalker.cpp @@ -73,7 +73,7 @@ public:              Levitate_Timer = 12000;              ChainLightning_Timer = 6000;              StaticCharge_Timer = 10000; -            SporeStriders_Timer = 10000+rand()%5000; +            SporeStriders_Timer = 10000 + rand32() % 5000;              check_Timer = 5000;              LevitatedTarget = 0;              LevitatedTarget_Timer = 0; @@ -124,7 +124,7 @@ public:              if (IsHeroic() && SporeStriders_Timer <= diff)              {                  DoCast(me, SPELL_SUMMON_SPORE_STRIDER); -                SporeStriders_Timer = 10000+rand()%5000; +                SporeStriders_Timer = 10000 + rand32() % 5000;              } else SporeStriders_Timer -= diff;              // Levitate @@ -164,7 +164,7 @@ public:                      LevitatedTarget_Timer = 2000;                      InAir = false;                  } -                Levitate_Timer = 12000+rand()%3000; +                Levitate_Timer = 12000 + rand32() % 3000;              } else Levitate_Timer -= diff;              // Chain Lightning diff --git a/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp b/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp index 89aad2534f0..3b7bb0c4312 100644 --- a/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp +++ b/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp @@ -153,7 +153,7 @@ public:              if (MightyBlow_Timer <= diff)              {                  DoCastVictim(SPELL_MIGHTY_BLOW); -                MightyBlow_Timer = 30000+rand()%10000; +                MightyBlow_Timer = 30000 + rand32() % 10000;              } else MightyBlow_Timer -= diff;              //Entering Phase 2 @@ -186,7 +186,7 @@ public:                  if (Roar_Timer <= diff)                  {                      DoCast(me, SPELL_ROAR); -                    Roar_Timer = 40000+(rand()%10000); +                    Roar_Timer = 40000 + (rand32() % 10000);                  } else Roar_Timer -= diff;              } @@ -537,7 +537,7 @@ public:                      target = NULL;                  }                  if (!target_list.empty()) -                    target = *(target_list.begin()+rand()%target_list.size()); +                    target = *(target_list.begin() + rand32() % target_list.size());                  me->InterruptNonMeleeSpells(false);                  DoCast(target, SPELL_BLAST_WAVE); diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp index 063a30ca875..55e9801320f 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp @@ -83,7 +83,7 @@ class boss_broggok : public CreatureScript                  if (AcidSpray_Timer <= diff)                  {                      DoCastVictim(SPELL_SLIME_SPRAY); -                    AcidSpray_Timer = 4000+rand()%8000; +                    AcidSpray_Timer = 4000 + rand32() % 8000;                  }                  else                      AcidSpray_Timer -=diff; @@ -91,7 +91,7 @@ class boss_broggok : public CreatureScript                  if (PoisonBolt_Timer <= diff)                  {                      DoCastVictim(SPELL_POISON_BOLT); -                    PoisonBolt_Timer = 4000+rand()%8000; +                    PoisonBolt_Timer = 4000 + rand32() % 8000;                  }                  else                      PoisonBolt_Timer -=diff; diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp index c85a26a25ab..e56b82d4507 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp @@ -103,7 +103,7 @@ class boss_kelidan_the_breaker : public CreatureScript              void KilledUnit(Unit* /*victim*/) override              { -                if (rand()%2) +                if (rand32() % 2)                      return;                  Talk(SAY_KILL); @@ -206,7 +206,7 @@ class boss_kelidan_the_breaker : public CreatureScript                  if (ShadowVolley_Timer <= diff)                  {                      DoCast(me, SPELL_SHADOW_BOLT_VOLLEY); -                    ShadowVolley_Timer = 5000+rand()%8000; +                    ShadowVolley_Timer = 5000 + rand32() % 8000;                  }                  else                      ShadowVolley_Timer -=diff; @@ -214,7 +214,7 @@ class boss_kelidan_the_breaker : public CreatureScript                  if (Corruption_Timer <= diff)                  {                      DoCast(me, SPELL_CORRUPTION); -                    Corruption_Timer = 30000+rand()%20000; +                    Corruption_Timer = 30000 + rand32() % 20000;                  }                  else                      Corruption_Timer -=diff; @@ -235,7 +235,7 @@ class boss_kelidan_the_breaker : public CreatureScript                      if (IsHeroic())                          DoTeleportAll(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), me->GetOrientation()); -                    BurningNova_Timer = 20000+rand()%8000; +                    BurningNova_Timer = 20000 + rand32() % 8000;                      Firenova_Timer= 5000;                      Firenova = true;                  } @@ -281,8 +281,8 @@ class npc_shadowmoon_channeler : public CreatureScript              void Reset() override              { -                ShadowBolt_Timer = 1000+rand()%1000; -                MarkOfShadow_Timer = 5000+rand()%2000; +                ShadowBolt_Timer = 1000 + rand32() % 1000; +                MarkOfShadow_Timer = 5000 + rand32() % 2000;                  check_Timer = 0;                  if (me->IsNonMeleeSpellCast(false))                      me->InterruptNonMeleeSpells(true); @@ -327,7 +327,7 @@ class npc_shadowmoon_channeler : public CreatureScript                  {                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                          DoCast(target, SPELL_MARK_OF_SHADOW); -                    MarkOfShadow_Timer = 15000+rand()%5000; +                    MarkOfShadow_Timer = 15000 + rand32() % 5000;                  }                  else                      MarkOfShadow_Timer -=diff; @@ -335,7 +335,7 @@ class npc_shadowmoon_channeler : public CreatureScript                  if (ShadowBolt_Timer <= diff)                  {                      DoCastVictim(SPELL_SHADOW_BOLT); -                    ShadowBolt_Timer = 5000+rand()%1000; +                    ShadowBolt_Timer = 5000 + rand32() % 1000;                  }                  else                      ShadowBolt_Timer -=diff; diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp index a24abac44d6..53680739e55 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp @@ -91,7 +91,7 @@ class boss_the_maker : public CreatureScript                  if (AcidSpray_Timer <= diff)                  {                      DoCastVictim(SPELL_ACID_SPRAY); -                    AcidSpray_Timer = 15000+rand()%8000; +                    AcidSpray_Timer = 15000 + rand32() % 8000;                  }                  else                      AcidSpray_Timer -=diff; @@ -100,7 +100,7 @@ class boss_the_maker : public CreatureScript                  {                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                          DoCast(target, SPELL_EXPLODING_BREAKER); -                    ExplodingBreaker_Timer = 4000+rand()%8000; +                    ExplodingBreaker_Timer = 4000 + rand32() % 8000;                  }                  else                      ExplodingBreaker_Timer -=diff; @@ -120,7 +120,7 @@ class boss_the_maker : public CreatureScript                  if (Knockdown_Timer <= diff)                  {                      DoCastVictim(SPELL_KNOCKDOWN); -                    Knockdown_Timer = 4000+rand()%8000; +                    Knockdown_Timer = 4000 + rand32() % 8000;                  }                  else                      Knockdown_Timer -=diff; diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp index b735a831e35..237aa506589 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp @@ -88,7 +88,7 @@ class boss_omor_the_unscarred : public CreatureScript              void KilledUnit(Unit* /*victim*/) override              { -                if (rand()%2) +                if (rand32() % 2)                      return;                  Talk(SAY_KILL_1); @@ -122,7 +122,7 @@ class boss_omor_the_unscarred : public CreatureScript                      {                          me->InterruptNonMeleeSpells(false);                          DoCast(me, SPELL_SUMMON_FIENDISH_HOUND); -                        Summon_Timer = 15000+rand()%15000; +                        Summon_Timer = 15000 + rand32() % 15000;                      }                      else                          Summon_Timer -= diff; @@ -159,7 +159,7 @@ class boss_omor_the_unscarred : public CreatureScript                          if (temp && temp->GetTypeId() == TYPEID_PLAYER)                          {                              DoCast(temp, SPELL_ORBITAL_STRIKE); -                            OrbitalStrike_Timer = 14000+rand()%2000; +                            OrbitalStrike_Timer = 14000 + rand32() % 2000;                              PlayerGUID = temp->GetGUID();                              if (PlayerGUID) @@ -187,7 +187,7 @@ class boss_omor_the_unscarred : public CreatureScript                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                      {                          DoCast(target, SPELL_TREACHEROUS_AURA); -                        Aura_Timer = 8000+rand()%8000; +                        Aura_Timer = 8000 + rand32() % 8000;                      }                  }                  else @@ -201,7 +201,7 @@ class boss_omor_the_unscarred : public CreatureScript                              target = me->GetVictim();                          DoCast(target, SPELL_SHADOW_BOLT); -                        Shadowbolt_Timer = 4000+rand()%2500; +                        Shadowbolt_Timer = 4000 + rand32() % 2500;                      }                  }                  else diff --git a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp index 1bdaf4fc260..c6756feb0ce 100644 --- a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp @@ -180,7 +180,7 @@ class npc_abyssal : public CreatureScript                  if (FireBlast_Timer <= diff)                  {                      DoCastVictim(SPELL_FIRE_BLAST); -                    FireBlast_Timer = 5000+rand()%10000; +                    FireBlast_Timer = 5000 + rand32() % 10000;                  }                  else FireBlast_Timer -= diff; @@ -232,7 +232,7 @@ class boss_magtheridon : public CreatureScript                  Berserk_Timer = 1320000;                  Quake_Timer = 40000;                  Debris_Timer = 10000; -                Blaze_Timer = 10000+rand()%20000; +                Blaze_Timer = 10000 + rand32() % 20000;                  BlastNova_Timer = 60000;                  Cleave_Timer = 15000;                  RandChat_Timer = 90000; @@ -538,7 +538,7 @@ class npc_hellfire_channeler : public CreatureScript                  {                      if (HealthBelowPct(50))                          DoCast(me, SPELL_DARK_MENDING); -                    DarkMending_Timer = 10000 +(rand() % 10000); +                    DarkMending_Timer = 10000 + (rand32() % 10000);                  }                  else                      DarkMending_Timer -= diff; diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp index 88c3041b62c..9a8f83fa1c2 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp @@ -243,7 +243,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript                      if (Cleave_Timer <= diff)                      {                          DoCastVictim(SPELL_SHADOW_CLEAVE); -                        Cleave_Timer = 6000+rand()%2500; +                        Cleave_Timer = 6000 + rand32() % 2500;                      }                      else                          Cleave_Timer -= diff; diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp index b03fc651e12..d61c40f8e3b 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp @@ -178,7 +178,7 @@ class boss_warbringer_omrogg : public CreatureScript                  if (!LeftHead || !RightHead)                      return; -                ithreat = rand()%4; +                ithreat = rand32() % 4;                  Creature* source = (LeftHead->GetEntry() == Threat[ithreat].creature ? LeftHead : RightHead); @@ -195,7 +195,7 @@ class boss_warbringer_omrogg : public CreatureScript                  if (Creature* LeftHead = ObjectAccessor::GetCreature(*me, LeftHeadGUID))                  { -                    iaggro = rand()%3; +                    iaggro = rand32() % 3;                      LeftHead->AI()->Talk(GoCombat[iaggro].id); @@ -227,7 +227,7 @@ class boss_warbringer_omrogg : public CreatureScript                  if (!LeftHead || !RightHead)                      return; -                ikilling = rand()%2; +                ikilling = rand32() % 2;                  Creature* source = (LeftHead->GetEntry() == Killing[ikilling].creature ? LeftHead : RightHead); @@ -338,7 +338,7 @@ class boss_warbringer_omrogg : public CreatureScript                          DoResetThreat();                          me->AddThreat(target, 0.0f);                      } -                    ResetThreat_Timer = 25000+rand()%15000; +                    ResetThreat_Timer = 25000 + rand32() % 15000;                  }                  else                      ResetThreat_Timer -= diff; @@ -346,7 +346,7 @@ class boss_warbringer_omrogg : public CreatureScript                  if (Fear_Timer <= diff)                  {                      DoCast(me, SPELL_FEAR); -                    Fear_Timer = 15000+rand()%20000; +                    Fear_Timer = 15000 + rand32() % 20000;                  }                  else                      Fear_Timer -= diff; @@ -354,7 +354,7 @@ class boss_warbringer_omrogg : public CreatureScript                  if (ThunderClap_Timer <= diff)                  {                      DoCast(me, SPELL_THUNDERCLAP); -                    ThunderClap_Timer = 15000+rand()%15000; +                    ThunderClap_Timer = 15000 + rand32() % 15000;                  }                  else                      ThunderClap_Timer -= diff; diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp index 66aa02bbeaf..f1dfcc2b391 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp @@ -213,8 +213,8 @@ class boss_warchief_kargath_bladefist : public CreatureScript                              {                                  //move in bladedance                                  float x, y, randx, randy; -                                randx = 0.0f + rand()%40; -                                randy = 0.0f + rand()%40; +                                randx = 0.0f + rand32() % 40; +                                randy = 0.0f + rand32() % 40;                                  x = 210+ randx;                                  y = -60- randy;                                  me->GetMotionMaster()->MovePoint(1, x, y, me->GetPositionZ()); diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp index bcc8b0c5a48..09cb72f1a47 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp @@ -245,7 +245,7 @@ class boss_alar : public CreatureScript                              switch (WaitEvent)                              {                              case WE_PLATFORM: -                                Platforms_Move_Timer = 30000+rand()%5000; +                                Platforms_Move_Timer = 30000 + rand32() % 5000;                                  break;                              case WE_QUILL:                                  DoCast(me, SPELL_FLAME_QUILLS, true); @@ -268,7 +268,7 @@ class boss_alar : public CreatureScript                                  DoCast(me, SPELL_REBIRTH, true);                                  MeltArmor_Timer = 60000;                                  Charge_Timer = 7000; -                                DiveBomb_Timer = 40000+rand()%5000; +                                DiveBomb_Timer = 40000 + rand32() % 5000;                                  FlamePatch_Timer = 30000;                                  Phase1 = false;                                  break; @@ -391,7 +391,7 @@ class boss_alar : public CreatureScript                          me->SetFloatValue(UNIT_FIELD_BOUNDINGRADIUS, 50);                          WaitEvent = WE_METEOR;                          WaitTimer = 0; -                        DiveBomb_Timer = 40000+rand()%5000; +                        DiveBomb_Timer = 40000 + rand32() % 5000;                          return;                      }                      else diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp index 2cac4a0be1a..be437a154b3 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp @@ -143,7 +143,7 @@ class boss_high_astromancer_solarian : public CreatureScript                  AppearDelay_Timer = 2000;                  BlindingLight = false;                  AppearDelay = false; -                Wrath_Timer = 20000+rand()%5000;//twice in phase one +                Wrath_Timer = 20000 + rand32() % 5000;//twice in phase one                  Phase = 1;                  instance->SetData(DATA_HIGHASTROMANCERSOLARIANEVENT, NOT_STARTED); @@ -195,7 +195,7 @@ class boss_high_astromancer_solarian : public CreatureScript                  if (urand(0, 1))                      radius = -radius; -                return radius * (float)(rand()%100)/100.0f + CENTER_X; +                return radius * (float)(rand32() % 100) / 100.0f + CENTER_X;              }              float Portal_Y(float x, float radius) @@ -241,7 +241,7 @@ class boss_high_astromancer_solarian : public CreatureScript                          me->InterruptNonMeleeSpells(false);                          if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true))                              DoCast(target, SPELL_WRATH_OF_THE_ASTROMANCER, true); -                        Wrath_Timer = 20000+rand()%5000; +                        Wrath_Timer = 20000 + rand32() % 5000;                      }                      else                          Wrath_Timer -= diff; @@ -359,7 +359,7 @@ class boss_high_astromancer_solarian : public CreatureScript                              {                                  Phase = 1;                                  //15 seconds later Solarian reappears out of one of the 3 portals. Simultaneously, 2 healers appear in the two other portals. -                                int i = rand()%3; +                                int i = rand32() % 3;                                  me->GetMotionMaster()->Clear();                                  me->SetPosition(Portals[i][0], Portals[i][1], Portals[i][2], CENTER_O); diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp index a24e1d5d34f..29f240773e5 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp @@ -320,7 +320,7 @@ class boss_kaelthas : public CreatureScript              void Reset() override              { -                Fireball_Timer = 5000+rand()%10000; +                Fireball_Timer = 5000 + rand32() % 10000;                  ArcaneDisruption_Timer = 45000;                  MindControl_Timer = 40000;                  Phoenix_Timer = 50000; @@ -746,7 +746,7 @@ class boss_kaelthas : public CreatureScript                                      {                                          //interruptable                                          me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_INTERRUPT_CAST, false); -                                        int32 dmg = 20000+rand()%5000; +                                        int32 dmg = 20000 + rand32() % 5000;                                          me->CastCustomSpell(me->GetVictim(), SPELL_FIREBALL, &dmg, 0, 0, false);                                          IsCastingFireball = true;                                          Fireball_Timer = 2500; @@ -757,7 +757,7 @@ class boss_kaelthas : public CreatureScript                                      //apply resistance                                      me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_INTERRUPT_CAST, true);                                      IsCastingFireball = false; -                                    Fireball_Timer = 5000+rand()%10000; +                                    Fireball_Timer = 5000 + rand32() % 10000;                                  }                              }                              else @@ -1089,7 +1089,7 @@ class boss_thaladred_the_darkener : public CreatureScript                  if (PsychicBlow_Timer <= diff)                  {                      DoCastVictim(SPELL_PSYCHIC_BLOW); -                    PsychicBlow_Timer = 20000+rand()%5000; +                    PsychicBlow_Timer = 20000 + rand32() % 5000;                  }                  else                      PsychicBlow_Timer -= diff; @@ -1158,7 +1158,7 @@ class boss_lord_sanguinar : public CreatureScript                  if (Fear_Timer <= diff)                  {                      DoCastVictim(SPELL_BELLOWING_ROAR); -                    Fear_Timer = 25000+rand()%10000;                //approximately every 30 seconds +                    Fear_Timer = 25000 + rand32() % 10000;                //approximately every 30 seconds                  }                  else                      Fear_Timer -= diff; @@ -1275,7 +1275,7 @@ class boss_grand_astromancer_capernian : public CreatureScript                      else                          DoCastVictim(SPELL_CONFLAGRATION); -                    Conflagration_Timer = 10000+rand()%5000; +                    Conflagration_Timer = 10000 + rand32() % 5000;                  }                  else                      Conflagration_Timer -= diff; @@ -1301,7 +1301,7 @@ class boss_grand_astromancer_capernian : public CreatureScript                      if (InMeleeRange)                          DoCast(target, SPELL_ARCANE_EXPLOSION); -                    ArcaneExplosion_Timer = 4000+rand()%2000; +                    ArcaneExplosion_Timer = 4000 + rand32() % 2000;                  }                  else                      ArcaneExplosion_Timer -= diff; @@ -1384,7 +1384,7 @@ class boss_master_engineer_telonicus : public CreatureScript                      if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))                          DoCast(target, SPELL_REMOTE_TOY); -                    RemoteToy_Timer = 10000+rand()%5000; +                    RemoteToy_Timer = 10000 + rand32() % 5000;                  }                  else                      RemoteToy_Timer -= diff; diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp index 634d54ed58b..6b78706b437 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp @@ -132,7 +132,7 @@ class boss_void_reaver : public CreatureScript                      }                      if (!target_list.empty()) -                        target = *(target_list.begin()+rand()%target_list.size()); +                        target = *(target_list.begin() + rand32() % target_list.size());                      else                          target = me->GetVictim(); diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp index 1917bae1a6c..7563ecb40db 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp @@ -238,7 +238,7 @@ class boss_harbinger_skyriss : public CreatureScript                      else                          DoCastVictim(SPELL_DOMINATION); -                    Domination_Timer = 16000+rand()%16000; +                    Domination_Timer = 16000 + rand32() % 16000;                  }                  else                      Domination_Timer -=diff; @@ -253,7 +253,7 @@ class boss_harbinger_skyriss : public CreatureScript                          if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1))                              DoCast(target, H_SPELL_MANA_BURN); -                        ManaBurn_Timer = 16000+rand()%16000; +                        ManaBurn_Timer = 16000 + rand32() % 16000;                      }                      else                          ManaBurn_Timer -=diff; diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp index 2c15a6dd30d..0c322877808 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp @@ -98,7 +98,7 @@ class boss_high_botanist_freywinn : public CreatureScript              void DoSummonSeedling()              { -                switch (rand()%4) +                switch (rand32() % 4)                  {                      case 0: DoCast(me, SPELL_PLANT_WHITE); break;                      case 1: DoCast(me, SPELL_PLANT_GREEN); break; diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp index 8cab7485510..768c9b5b8f1 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp @@ -88,7 +88,7 @@ class boss_laj : public CreatureScript              void DoTransform()              { -                switch (rand()%5) +                switch (rand32() % 5)                  {                      case 0:                          me->SetDisplayId(MODEL_DEFAULT); @@ -135,7 +135,7 @@ class boss_laj : public CreatureScript              void DoSummons()              { -                switch (rand()%4) +                switch (rand32() % 4)                  {                      case 0:                          DoCast(me, SPELL_SUMMON_LASHER_1, true); @@ -187,7 +187,7 @@ class boss_laj : public CreatureScript                  if (Allergic_Timer <= diff)                  {                      DoCastVictim(SPELL_ALLERGIC_REACTION); -                    Allergic_Timer = 25000+rand()%15000; +                    Allergic_Timer = 25000 + rand32() % 15000;                  }                  else                      Allergic_Timer -= diff; @@ -195,7 +195,7 @@ class boss_laj : public CreatureScript                  if (Teleport_Timer <= diff)                  {                      DoCast(me, SPELL_TELEPORT_SELF); -                    Teleport_Timer = 30000+rand()%10000; +                    Teleport_Timer = 30000 + rand32() % 10000;                      CanSummon = true;                  }                  else @@ -204,7 +204,7 @@ class boss_laj : public CreatureScript                  if (Transform_Timer <= diff)                  {                      DoTransform(); -                    Transform_Timer = 25000+rand()%15000; +                    Transform_Timer = 25000 + rand32() % 15000;                  }                  else                      Transform_Timer -= diff; diff --git a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp index ebcddafe309..d54eb6fff8c 100644 --- a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp +++ b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp @@ -301,7 +301,7 @@ public:              if (spell->Id == SPELL_T_PHASE_MODULATOR && caster->GetTypeId() == TYPEID_PLAYER)              {                  const uint32 entry_list[4] = {ENTRY_PROTO, ENTRY_ADOLE, ENTRY_MATUR, ENTRY_NIHIL}; -                int cid = rand()%(4-1); +                int cid = rand32() % (4 - 1);                  if (entry_list[cid] == me->GetEntry())                      ++cid; @@ -371,7 +371,7 @@ public:              if (IntangiblePresence_Timer <= diff)              {                  DoCastVictim(SPELL_INTANGIBLE_PRESENCE); -                IntangiblePresence_Timer = 15000+rand()%15000; +                IntangiblePresence_Timer = 15000 + rand32() % 15000;              } else IntangiblePresence_Timer -= diff;              if (ManaBurn_Timer <= diff) @@ -379,13 +379,13 @@ public:                  Unit* target = me->GetVictim();                  if (target && target->getPowerType() == POWER_MANA)                      DoCast(target, SPELL_MANA_BURN); -                ManaBurn_Timer = 8000+rand()%8000; +                ManaBurn_Timer = 8000 + rand32() % 8000;              } else ManaBurn_Timer -= diff;              if (ArcaneBlast_Timer <= diff)              {                  DoCastVictim(SPELL_ARCANE_BLAST); -                ArcaneBlast_Timer = 2500+rand()%5000; +                ArcaneBlast_Timer = 2500 + rand32() % 5000;              } else ArcaneBlast_Timer -= diff;              DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Outland/zone_nagrand.cpp b/src/server/scripts/Outland/zone_nagrand.cpp index 3b9d865cb3b..f32d2516ee0 100644 --- a/src/server/scripts/Outland/zone_nagrand.cpp +++ b/src/server/scripts/Outland/zone_nagrand.cpp @@ -277,7 +277,7 @@ public:          {              if (spell->Id == SPELL_CHAIN_LIGHTNING)              { -                if (rand()%10) +                if (rand32() % 10)                      return;                  Talk(SAY_MAG_LIGHTNING); @@ -627,7 +627,7 @@ public:          {              if (spell->Id == SPELL_KUR_CHAIN_LIGHTNING)              { -                if (rand()%30) +                if (rand32() % 30)                      return;                  Talk(SAY_KUR_LIGHTNING); @@ -635,7 +635,7 @@ public:              if (spell->Id == SPELL_KUR_FROST_SHOCK)              { -                if (rand()%30) +                if (rand32() % 30)                      return;                  Talk(SAY_KUR_SHOCK); diff --git a/src/server/scripts/Outland/zone_netherstorm.cpp b/src/server/scripts/Outland/zone_netherstorm.cpp index cb75ee3b2ad..6f331425be0 100644 --- a/src/server/scripts/Outland/zone_netherstorm.cpp +++ b/src/server/scripts/Outland/zone_netherstorm.cpp @@ -152,7 +152,7 @@ public:              switch (creature->GetEntry())              {                  case ENTRY_BNAAR_C_CONSOLE: -                    if (rand()%2) +                    if (rand32() % 2)                      {                          add = me->SummonCreature(ENTRY_SUNFURY_TECH, 2933.68f, 4162.55f, 164.00f, 1.60f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 120000);                          if (add) add->GetMotionMaster()->MovePoint(0, 2927.36f, 4212.97f, 164.00f); @@ -179,7 +179,7 @@ public:                      Wave_Timer = 15000;                      break;                  case ENTRY_ARA_C_CONSOLE: -                    if (rand()%2) +                    if (rand32() % 2)                      {                          add = me->SummonCreature(ENTRY_ARA_TECH, 4035.11f, 4038.97f, 194.27f, 2.57f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 120000);                          if (add) add->GetMotionMaster()->MovePoint(0, 4003.42f, 4040.19f, 193.49f); @@ -752,11 +752,11 @@ public:              Weak = false;              Materialize = false;              Drained = false; -            WeakPercent = 25 + (rand() % 16); // 25-40 +            WeakPercent = 25 + (rand32() % 16); // 25-40              PlayerGUID = 0; -            ManaBurnTimer = 5000 + (rand() % 3 * 1000); // 5-8 sec cd +            ManaBurnTimer = 5000 + (rand32() % 3 * 1000); // 5-8 sec cd              if (me->GetEntry() == NPC_DRAINED_PHASE_HUNTER_ENTRY)                  me->UpdateEntry(NPC_PHASE_HUNTER_ENTRY); @@ -804,7 +804,7 @@ public:                  if (!UnitsWithMana.empty())                  {                      DoCast(Trinity::Containers::SelectRandomContainerElement(UnitsWithMana), SPELL_MANA_BURN); -                    ManaBurnTimer = 8000 + (rand() % 10 * 1000); // 8-18 sec cd +                    ManaBurnTimer = 8000 + (rand32() % 10 * 1000); // 8-18 sec cd                  }                  else                      ManaBurnTimer = 3500; diff --git a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp index cfcc05a625c..e1590873455 100644 --- a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp +++ b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp @@ -1051,7 +1051,7 @@ public:          void EnterCombat(Unit* who) override          {              //don't always use -            if (rand()%5) +            if (rand32() % 5)                  return;              //only aggro text if not player @@ -1290,19 +1290,19 @@ public:                  if (SpellTimer1 <= diff)                  {                      DoCastVictim(SpawnCast[6].SpellId);//Cleave -                    SpellTimer1 = SpawnCast[6].Timer2 + (rand()%10 * 1000); +                    SpellTimer1 = SpawnCast[6].Timer2 + (rand32() % 10 * 1000);                  } else SpellTimer1 -= diff;                  if (SpellTimer2 <= diff)                  {                      DoCastVictim(SpawnCast[7].SpellId);//Shadowfury -                    SpellTimer2 = SpawnCast[7].Timer2 + (rand()%5 * 1000); +                    SpellTimer2 = SpawnCast[7].Timer2 + (rand32() % 5 * 1000);                  } else SpellTimer2 -= diff;                  if (SpellTimer3 <= diff)                  {                      DoCast(me, SpawnCast[8].SpellId); -                    SpellTimer3 = SpawnCast[8].Timer2 + (rand()%7 * 1000);//Spell Reflection +                    SpellTimer3 = SpawnCast[8].Timer2 + (rand32() % 7 * 1000);//Spell Reflection                  } else SpellTimer3 -= diff;              } @@ -1521,18 +1521,18 @@ public:              {                  if (me->GetEntry() == 22075)//Illidari Soldier                  { -                    SpellTimer1 = SpawnCast[0].Timer1 + (rand()%4 * 1000); +                    SpellTimer1 = SpawnCast[0].Timer1 + (rand32() % 4 * 1000);                  }                  if (me->GetEntry() == 22074)//Illidari Mind Breaker                  { -                    SpellTimer1 = SpawnCast[1].Timer1 + (rand()%10 * 1000); -                    SpellTimer2 = SpawnCast[2].Timer1 + (rand()%4 * 1000); -                    SpellTimer3 = SpawnCast[3].Timer1 + (rand()%4 * 1000); +                    SpellTimer1 = SpawnCast[1].Timer1 + (rand32() % 10 * 1000); +                    SpellTimer2 = SpawnCast[2].Timer1 + (rand32() % 4 * 1000); +                    SpellTimer3 = SpawnCast[3].Timer1 + (rand32() % 4 * 1000);                  }                  if (me->GetEntry() == 19797)// Illidari Highlord                  { -                    SpellTimer1 = SpawnCast[4].Timer1 + (rand()%4 * 1000); -                    SpellTimer2 = SpawnCast[5].Timer1 + (rand()%4 * 1000); +                    SpellTimer1 = SpawnCast[4].Timer1 + (rand32() % 4 * 1000); +                    SpellTimer2 = SpawnCast[5].Timer1 + (rand32() % 4 * 1000);                  }                  Timers = true;              } @@ -1542,7 +1542,7 @@ public:                  if (SpellTimer1 <= diff)                  {                      DoCastVictim(SpawnCast[0].SpellId);//Spellbreaker -                    SpellTimer1 = SpawnCast[0].Timer2 + (rand()%5 * 1000); +                    SpellTimer1 = SpawnCast[0].Timer2 + (rand32() % 5 * 1000);                  } else SpellTimer1 -= diff;              }              //Illidari Mind Breaker @@ -1555,7 +1555,7 @@ public:                          if (target->GetTypeId() == TYPEID_PLAYER)                          {                              DoCast(target, SpawnCast[1].SpellId); //Focused Bursts -                            SpellTimer1 = SpawnCast[1].Timer2 + (rand()%5 * 1000); +                            SpellTimer1 = SpawnCast[1].Timer2 + (rand32() % 5 * 1000);                          } else SpellTimer1 = 2000;                      }                  } else SpellTimer1 -= diff; @@ -1563,13 +1563,13 @@ public:                  if (SpellTimer2 <= diff)                  {                      DoCastVictim(SpawnCast[2].SpellId);//Psychic Scream -                    SpellTimer2 = SpawnCast[2].Timer2 + (rand()%13 * 1000); +                    SpellTimer2 = SpawnCast[2].Timer2 + (rand32() % 13 * 1000);                  } else SpellTimer2 -= diff;                  if (SpellTimer3 <= diff)                  {                      DoCastVictim(SpawnCast[3].SpellId);//Mind Blast -                    SpellTimer3 = SpawnCast[3].Timer2 + (rand()%8 * 1000); +                    SpellTimer3 = SpawnCast[3].Timer2 + (rand32() % 8 * 1000);                  } else SpellTimer3 -= diff;              }              //Illidari Highlord @@ -1578,13 +1578,13 @@ public:                  if (SpellTimer1 <= diff)                  {                      DoCastVictim(SpawnCast[4].SpellId);//Curse Of Flames -                    SpellTimer1 = SpawnCast[4].Timer2 + (rand()%10 * 1000); +                    SpellTimer1 = SpawnCast[4].Timer2 + (rand32() % 10 * 1000);                  } else SpellTimer1 -= diff;                  if (SpellTimer2 <= diff)                  {                      DoCastVictim(SpawnCast[5].SpellId);//Flamestrike -                    SpellTimer2 = SpawnCast[5].Timer2 + (rand()%7 * 13000); +                    SpellTimer2 = SpawnCast[5].Timer2 + (rand32() % 7 * 13000);                  } else SpellTimer2 -= diff;              } @@ -1616,7 +1616,7 @@ void npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI::SummonNextWave()              if (WaveCount == 0)//1 Wave              { -                if (rand()%3 == 1 && FelguardCount<2) +                if (rand32() % 3 == 1 && FelguardCount<2)                  {                      Spawn->SetDisplayId(18654);                      ++FelguardCount; diff --git a/src/server/scripts/Outland/zone_terokkar_forest.cpp b/src/server/scripts/Outland/zone_terokkar_forest.cpp index a902bd49154..c0755b6b06b 100644 --- a/src/server/scripts/Outland/zone_terokkar_forest.cpp +++ b/src/server/scripts/Outland/zone_terokkar_forest.cpp @@ -184,7 +184,7 @@ public:          {              if (done_by && done_by->GetTypeId() == TYPEID_PLAYER)                  if (me->GetHealth() <= damage) -                    if (rand()%100 < 75) +                    if (rand32() % 100 < 75)                          //Summon Wood Mites                          DoCast(me, 39130, true);          } @@ -271,7 +271,7 @@ public:          {              if (done_by->GetTypeId() == TYPEID_PLAYER)                  if (me->GetHealth() <= damage) -                    if (rand()%100 < 75) +                    if (rand32() % 100 < 75)                          //Summon Lots of Wood Mights                          DoCast(me, 39134, true);          } @@ -320,18 +320,18 @@ public:              if (player->GetQuestStatus(10873) == QUEST_STATUS_INCOMPLETE)              { -                if (rand()%100 < 25) +                if (rand32() % 100 < 25)                  {                      me->SummonCreature(QUEST_TARGET, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000);                      player->KilledMonsterCredit(QUEST_TARGET, 0);                  }                  else -                    me->SummonCreature(netherwebVictims[rand()%6], 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000); +                    me->SummonCreature(netherwebVictims[rand32() % 6], 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000); -                if (rand()%100 < 75) -                    me->SummonCreature(netherwebVictims[rand()%6], 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000); +                if (rand32() % 100 < 75) +                    me->SummonCreature(netherwebVictims[rand32() % 6], 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000); -                me->SummonCreature(netherwebVictims[rand()%6], 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000); +                me->SummonCreature(netherwebVictims[rand32() % 6], 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 60000);              }          }      }; diff --git a/src/server/scripts/Pet/pet_hunter.cpp b/src/server/scripts/Pet/pet_hunter.cpp index 0346cebb220..7dbdc7af63f 100644 --- a/src/server/scripts/Pet/pet_hunter.cpp +++ b/src/server/scripts/Pet/pet_hunter.cpp @@ -56,7 +56,7 @@ class npc_pet_hunter_snake_trap : public CreatureScript                  me->SetMaxHealth(uint32(107 * (me->getLevel() - 40) * 0.025f));                  // Add delta to make them not all hit the same time -                uint32 delta = (rand() % 7) * 100; +                uint32 delta = (rand32() % 7) * 100;                  me->SetAttackTime(BASE_ATTACK, Info->baseattacktime + delta);                  //me->SetStatFloatValue(UNIT_FIELD_RANGED_ATTACK_POWER, float(Info->attackpower)); @@ -81,10 +81,10 @@ class npc_pet_hunter_snake_trap : public CreatureScript                      float attackRadius = me->GetAttackDistance(who);                      if (me->IsWithinDistInMap(who, attackRadius) && me->IsWithinLOSInMap(who))                      { -                        if (!(rand() % 5)) +                        if (!(rand32() % 5))                          { -                            me->setAttackTimer(BASE_ATTACK, (rand() % 10) * 100); -                            _spellTimer = (rand() % 10) * 100; +                            me->setAttackTimer(BASE_ATTACK, (rand32() % 10) * 100); +                            _spellTimer = (rand32() % 10) * 100;                              AttackStart(who);                          }                      } diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index 316ce973319..854bc77671b 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -426,7 +426,7 @@ class spell_q11587_arcane_prisoner_rescue : public SpellScriptLoader                  if (Unit* unitTarget = GetHitUnit())                  {                      uint32 spellId = SPELL_SUMMON_ARCANE_PRISONER_MALE; -                    if (rand() % 2) +                    if (rand32() % 2)                          spellId = SPELL_SUMMON_ARCANE_PRISONER_FEMALE;                      caster->CastSpell(caster, spellId, true);                      unitTarget->CastSpell(caster, SPELL_ARCANE_PRISONER_KILL_CREDIT, true); diff --git a/src/server/scripts/World/go_scripts.cpp b/src/server/scripts/World/go_scripts.cpp index f73d1c77da4..f5301fe5cac 100644 --- a/src/server/scripts/World/go_scripts.cpp +++ b/src/server/scripts/World/go_scripts.cpp @@ -245,7 +245,7 @@ public:      bool OnGossipHello(Player* player, GameObject* go) override      {          go->UseDoorOrButton(); -        int Random = rand() % (sizeof(NpcPrisonEntry) / sizeof(uint32)); +        int Random = rand32() % (sizeof(NpcPrisonEntry) / sizeof(uint32));          if (Creature* creature = player->SummonCreature(NpcPrisonEntry[Random], go->GetPositionX(), go->GetPositionY(), go->GetPositionZ(), go->GetAngle(player),              TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000)) @@ -295,7 +295,7 @@ public:      bool OnGossipHello(Player* player, GameObject* go) override      {          go->UseDoorOrButton(); -        int Random = rand() % (sizeof(NpcStasisEntry) / sizeof(uint32)); +        int Random = rand32() % (sizeof(NpcStasisEntry) / sizeof(uint32));          player->SummonCreature(NpcStasisEntry[Random], go->GetPositionX(), go->GetPositionY(), go->GetPositionZ(), go->GetAngle(player),              TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); diff --git a/src/server/scripts/World/mob_generic_creature.cpp b/src/server/scripts/World/mob_generic_creature.cpp index 2eb91b7b8fe..a27a78a5338 100644 --- a/src/server/scripts/World/mob_generic_creature.cpp +++ b/src/server/scripts/World/mob_generic_creature.cpp @@ -107,7 +107,7 @@ public:                      else info = SelectSpell(me->GetVictim(), 0, 0, SELECT_TARGET_ANY_ENEMY, 0, 0, 0, 0, SELECT_EFFECT_DONTCARE);                      //50% chance if elite or higher, 20% chance if not, to replace our white hit with a spell -                    if (info && (rand() % (me->GetCreatureTemplate()->rank > 1 ? 2 : 5) == 0) && !GlobalCooldown) +                    if (info && (rand32() % (me->GetCreatureTemplate()->rank > 1 ? 2 : 5) == 0) && !GlobalCooldown)                      {                          //Cast the spell                          if (Healing)DoCastSpell(me, info); @@ -130,7 +130,7 @@ public:                      SpellInfo const* info = NULL;                      //Select a healing spell if less than 30% hp ONLY 33% of the time -                    if (HealthBelowPct(30) && rand() % 3 == 0) +                    if (HealthBelowPct(30) && rand32() % 3 == 0)                          info = SelectSpell(me, 0, 0, SELECT_TARGET_ANY_FRIEND, 0, 0, 0, 0, SELECT_EFFECT_HEALING);                      //No healing spell available, See if we can cast a ranged spell (Range must be greater than ATTACK_DISTANCE) diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp index d2f0a7898bb..969bfa57d58 100644 --- a/src/server/scripts/World/npcs_special.cpp +++ b/src/server/scripts/World/npcs_special.cpp @@ -365,7 +365,7 @@ public:              switch (emote)              {                  case TEXT_EMOTE_CHICKEN: -                    if (player->GetQuestStatus(QUEST_CLUCK) == QUEST_STATUS_NONE && rand() % 30 == 1) +                    if (player->GetQuestStatus(QUEST_CLUCK) == QUEST_STATUS_NONE && rand32() % 30 == 1)                      {                          me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);                          me->setFaction(FACTION_FRIENDLY); @@ -835,16 +835,16 @@ void npc_doctor::npc_doctorAI::UpdateAI(uint32 diff)              if (Coordinates.empty())                  return; -            std::vector<Location*>::iterator itr = Coordinates.begin() + rand() % Coordinates.size(); +            std::vector<Location*>::iterator itr = Coordinates.begin() + rand32() % Coordinates.size();              uint32 patientEntry = 0;              switch (me->GetEntry())              {                  case DOCTOR_ALLIANCE: -                    patientEntry = AllianceSoldierId[rand() % 3]; +                    patientEntry = AllianceSoldierId[rand32() % 3];                      break;                  case DOCTOR_HORDE: -                    patientEntry = HordeSoldierId[rand() % 3]; +                    patientEntry = HordeSoldierId[rand32() % 3];                      break;                  default:                      TC_LOG_ERROR("scripts", "Invalid entry for Triage doctor. Please check your database"); diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist index e482e3d4c37..fcb4010075f 100644 --- a/src/server/worldserver/worldserver.conf.dist +++ b/src/server/worldserver/worldserver.conf.dist @@ -147,10 +147,15 @@ BindIP = "0.0.0.0"  #  #    ThreadPool  #        Description: Number of threads to be used for the global thread pool -#                     The thread pool is currently used for the signal handler and remote access -#        Default:     1 +#                     The thread pool is currently used for: +#                      - Signal handling +#                      - Remote access +#                      - Database keep-alive ping +#                      - Core freeze check +#                      - World socket networking +#        Default:     2 -ThreadPool = 1 +ThreadPool = 2  #  ###################################################################################################  | 
