aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/GroupHandler.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/game/GroupHandler.cpp b/src/game/GroupHandler.cpp
index 61fe2fba697..b54b7cc1666 100644
--- a/src/game/GroupHandler.cpp
+++ b/src/game/GroupHandler.cpp
@@ -555,8 +555,17 @@ void WorldSession::HandleGroupChangeSubGroupOpcode( WorldPacket & recv_data )
return;
/********************/
+ //Do not allow leader to change group of player in combat
+ Player *movedPlayer=objmgr.GetPlayer(name.c_str());
+ if (movedPlayer->isInCombat())
+ {
+ WorldPacket data(SMSG_GROUP_SWAP_FAILED, (0));
+ SendPacket(&data);
+ return;
+ }
+
// everything's fine, do it
- group->ChangeMembersGroup(objmgr.GetPlayer(name.c_str()), groupNr);
+ group->ChangeMembersGroup(movedPlayer), groupNr);
}
void WorldSession::HandleGroupAssistantOpcode( WorldPacket & recv_data )