aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/GroupHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers/GroupHandler.cpp')
-rw-r--r--src/server/game/Handlers/GroupHandler.cpp26
1 files changed, 5 insertions, 21 deletions
diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp
index 297cd9c3124..ec29083d2f8 100644
--- a/src/server/game/Handlers/GroupHandler.cpp
+++ b/src/server/game/Handlers/GroupHandler.cpp
@@ -21,16 +21,16 @@
#include "Group.h"
#include "GroupMgr.h"
#include "Log.h"
+#include "LootPackets.h"
+#include "MiscPackets.h"
#include "ObjectMgr.h"
+#include "PartyPackets.h"
#include "Player.h"
#include "SocialMgr.h"
#include "Util.h"
#include "World.h"
#include "WorldPacket.h"
#include "WorldSession.h"
-#include "MiscPackets.h"
-#include "LootPackets.h"
-#include "PartyPackets.h"
class Aura;
@@ -398,28 +398,12 @@ void WorldSession::HandleMinimapPingOpcode(WorldPackets::Party::MinimapPingClien
void WorldSession::HandleRandomRollOpcode(WorldPackets::Misc::RandomRollClient& packet)
{
- uint32 minimum, maximum, roll;
- minimum = packet.Min;
- maximum = packet.Max;
-
/** error handling **/
- if (minimum > maximum || maximum > 10000) // < 32768 for urand call
+ if (packet.Min > packet.Max || packet.Max > 10000) // < 32768 for urand call
return;
/********************/
- // everything's fine, do it
- roll = urand(minimum, maximum);
-
- WorldPackets::Misc::RandomRoll randomRoll;
- randomRoll.Min = minimum;
- randomRoll.Max = maximum;
- randomRoll.Result = roll;
- randomRoll.Roller = GetPlayer()->GetGUID();
- randomRoll.RollerWowAccount = GetAccountGUID();
- if (GetPlayer()->GetGroup())
- GetPlayer()->GetGroup()->BroadcastPacket(randomRoll.Write(), false);
- else
- SendPacket(randomRoll.Write());
+ GetPlayer()->DoRandomRoll(packet.Min, packet.Max);
}
void WorldSession::HandleUpdateRaidTargetOpcode(WorldPackets::Party::UpdateRaidTarget& packet)