aboutsummaryrefslogtreecommitdiff
path: root/src/game/GuildHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/GuildHandler.cpp')
-rw-r--r--src/game/GuildHandler.cpp144
1 files changed, 52 insertions, 92 deletions
diff --git a/src/game/GuildHandler.cpp b/src/game/GuildHandler.cpp
index 763bc09a080..0b150358896 100644
--- a/src/game/GuildHandler.cpp
+++ b/src/game/GuildHandler.cpp
@@ -42,7 +42,7 @@ void WorldSession::HandleGuildQueryOpcode(WorldPacket& recvPacket)
return;
}
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
}
void WorldSession::HandleGuildCreateOpcode(WorldPacket& recvPacket)
@@ -86,7 +86,7 @@ void WorldSession::HandleGuildInviteOpcode(WorldPacket& recvPacket)
Guild *guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
@@ -97,27 +97,27 @@ void WorldSession::HandleGuildInviteOpcode(WorldPacket& recvPacket)
// not let enemies sign guild charter
if (!sWorld.getConfig(CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD) && player->GetTeam() != GetPlayer()->GetTeam())
{
- SendGuildCommandResult(GUILD_INVITE_S, Invitedname, GUILD_NOT_ALLIED);
+ SendGuildCommandResult(GUILD_INVITE_S, Invitedname, ERR_GUILD_NOT_ALLIED);
return;
}
if (player->GetGuildId())
{
plname = player->GetName();
- SendGuildCommandResult(GUILD_INVITE_S, plname, ALREADY_IN_GUILD);
+ SendGuildCommandResult(GUILD_INVITE_S, plname, ERR_ALREADY_IN_GUILD_S);
return;
}
if (player->GetGuildIdInvited())
{
plname = player->GetName();
- SendGuildCommandResult(GUILD_INVITE_S, plname, ALREADY_INVITED_TO_GUILD);
+ SendGuildCommandResult(GUILD_INVITE_S, plname, ERR_ALREADY_INVITED_TO_GUILD_S);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_INVITE))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -148,13 +148,13 @@ void WorldSession::HandleGuildRemoveOpcode(WorldPacket& recvPacket)
Guild* guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_REMOVE))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -162,20 +162,20 @@ void WorldSession::HandleGuildRemoveOpcode(WorldPacket& recvPacket)
MemberSlot* slot = guild->GetMemberSlot(plName, plGuid);
if (!slot)
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_PLAYER_NOT_IN_GUILD_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_PLAYER_NOT_IN_GUILD_S);
return;
}
if (slot->RankId == GR_GUILDMASTER)
{
- SendGuildCommandResult(GUILD_QUIT_S, "", GUILD_LEADER_LEAVE);
+ SendGuildCommandResult(GUILD_QUIT_S, "", ERR_GUILD_LEADER_LEAVE);
return;
}
//do not allow to kick player with same or higher rights
if (GetPlayer()->GetRank() >= slot->RankId)
{
- SendGuildCommandResult(GUILD_QUIT_S, plName, GUILD_RANK_TOO_HIGH_S);
+ SendGuildCommandResult(GUILD_QUIT_S, plName, ERR_GUILD_RANK_TOO_HIGH_S);
return;
}
@@ -183,12 +183,7 @@ void WorldSession::HandleGuildRemoveOpcode(WorldPacket& recvPacket)
// Put record into guildlog
guild->LogGuildEvent(GUILD_EVENT_LOG_UNINVITE_PLAYER, GetPlayer()->GetGUIDLow(), GUID_LOPART(plGuid), 0);
- WorldPacket data(SMSG_GUILD_EVENT, (2+20)); // guess size
- data << (uint8)GE_REMOVED;
- data << (uint8)2; // strings count
- data << plName;
- data << GetPlayer()->GetName();
- guild->BroadcastPacket(&data);
+ guild->BroadcastEvent(GE_REMOVED, 0, 2, plName, _player->GetName(), "");
}
void WorldSession::HandleGuildAcceptOpcode(WorldPacket& /*recvPacket*/)
@@ -211,11 +206,7 @@ void WorldSession::HandleGuildAcceptOpcode(WorldPacket& /*recvPacket*/)
// Put record into guildlog
guild->LogGuildEvent(GUILD_EVENT_LOG_JOIN_GUILD, GetPlayer()->GetGUIDLow(), 0, 0);
- WorldPacket data(SMSG_GUILD_EVENT, (2+10)); // guess size
- data << (uint8)GE_JOINED;
- data << (uint8)1; // strings count
- data << player->GetName();
- guild->BroadcastPacket(&data);
+ guild->BroadcastEvent(GE_JOINED, player->GetGUID(), 1, player->GetName(), "", "");
sLog.outDebug("WORLD: Sent (SMSG_GUILD_EVENT)");
}
@@ -236,7 +227,7 @@ void WorldSession::HandleGuildInfoOpcode(WorldPacket& /*recvPacket*/)
guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
@@ -270,13 +261,13 @@ void WorldSession::HandleGuildPromoteOpcode(WorldPacket& recvPacket)
Guild* guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_PROMOTE))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -285,13 +276,13 @@ void WorldSession::HandleGuildPromoteOpcode(WorldPacket& recvPacket)
if (!slot)
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_PLAYER_NOT_IN_GUILD_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_PLAYER_NOT_IN_GUILD_S);
return;
}
if (plGuid == GetPlayer()->GetGUID())
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_NAME_INVALID);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_NAME_INVALID);
return;
}
@@ -300,19 +291,13 @@ void WorldSession::HandleGuildPromoteOpcode(WorldPacket& recvPacket)
//GetPlayer()->GetRank() + 1 is highest rank that current player can promote to
if (GetPlayer()->GetRank() + 1 >= slot->RankId)
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_RANK_TOO_HIGH_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_RANK_TOO_HIGH_S);
return;
}
uint32 newRankId = slot->RankId - 1; //when promoting player, rank is decreased
- WorldPacket data(SMSG_GUILD_EVENT, (2+30)); // guess size
- data << (uint8)GE_PROMOTION;
- data << (uint8)3; // strings count
- data << GetPlayer()->GetName();
- data << plName;
- data << guild->GetRankName(newRankId);
- guild->BroadcastPacket(&data);
+ guild->BroadcastEvent(GE_PROMOTION, 0, 3, _player->GetName(), plName, guild->GetRankName(newRankId));
guild->ChangeRank(plGuid, newRankId);
// Put record into guildlog
@@ -333,13 +318,13 @@ void WorldSession::HandleGuildDemoteOpcode(WorldPacket& recvPacket)
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_DEMOTE))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -348,27 +333,27 @@ void WorldSession::HandleGuildDemoteOpcode(WorldPacket& recvPacket)
if (!slot)
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_PLAYER_NOT_IN_GUILD_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_PLAYER_NOT_IN_GUILD_S);
return;
}
if (plGuid == GetPlayer()->GetGUID())
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_NAME_INVALID);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_NAME_INVALID);
return;
}
//do not allow to demote same or higher rank
if (GetPlayer()->GetRank() >= slot->RankId)
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_RANK_TOO_HIGH_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_RANK_TOO_HIGH_S);
return;
}
//do not allow to demote lowest rank
if (slot->RankId >= guild->GetLowestRank())
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_ALREADY_LOWEST_RANK_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_RANK_TOO_LOW_S);
return;
}
@@ -378,13 +363,7 @@ void WorldSession::HandleGuildDemoteOpcode(WorldPacket& recvPacket)
// Put record into guildlog
guild->LogGuildEvent(GUILD_EVENT_LOG_DEMOTE_PLAYER, GetPlayer()->GetGUIDLow(), GUID_LOPART(plGuid), newRankId);
- WorldPacket data(SMSG_GUILD_EVENT, (2+30)); // guess size
- data << (uint8)GE_DEMOTION;
- data << (uint8)3; // strings count
- data << GetPlayer()->GetName();
- data << plName;
- data << guild->GetRankName(slot->RankId);
- guild->BroadcastPacket(&data);
+ guild->BroadcastEvent(GE_DEMOTION, 0, 3, _player->GetName(), plName, guild->GetRankName(slot->RankId));
}
void WorldSession::HandleGuildLeaveOpcode(WorldPacket& /*recvPacket*/)
@@ -394,13 +373,13 @@ void WorldSession::HandleGuildLeaveOpcode(WorldPacket& /*recvPacket*/)
Guild *guild = objmgr.GetGuildById(_player->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (_player->GetGUID() == guild->GetLeader() && guild->GetMemberSize() > 1)
{
- SendGuildCommandResult(GUILD_QUIT_S, "", GUILD_LEADER_LEAVE);
+ SendGuildCommandResult(GUILD_QUIT_S, "", ERR_GUILD_LEADER_LEAVE);
return;
}
@@ -414,15 +393,9 @@ void WorldSession::HandleGuildLeaveOpcode(WorldPacket& /*recvPacket*/)
// Put record into guildlog
guild->LogGuildEvent(GUILD_EVENT_LOG_LEAVE_GUILD, _player->GetGUIDLow(), 0, 0);
- WorldPacket data(SMSG_GUILD_EVENT, (2+10)); // guess size
- data << (uint8)GE_LEFT;
- data << (uint8)1; // strings count
- data << _player->GetName();
- guild->BroadcastPacket(&data);
-
- sLog.outDebug("WORLD: Sent (SMSG_GUILD_EVENT)");
+ guild->BroadcastEvent(GE_LEFT, _player->GetGUID(), 1, _player->GetName(), "", "");
- SendGuildCommandResult(GUILD_QUIT_S, guild->GetName(), GUILD_PLAYER_NO_MORE_IN_GUILD);
+ SendGuildCommandResult(GUILD_QUIT_S, guild->GetName(), ERR_PLAYER_NO_MORE_IN_GUILD);
}
void WorldSession::HandleGuildDisbandOpcode(WorldPacket& /*recvPacket*/)
@@ -432,13 +405,13 @@ void WorldSession::HandleGuildDisbandOpcode(WorldPacket& /*recvPacket*/)
Guild *guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (GetPlayer()->GetGUID() != guild->GetLeader())
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -463,13 +436,13 @@ void WorldSession::HandleGuildLeaderOpcode(WorldPacket& recvPacket)
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (oldLeader->GetGUID() != guild->GetLeader())
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -485,14 +458,7 @@ void WorldSession::HandleGuildLeaderOpcode(WorldPacket& recvPacket)
guild->SetLeader(newLeaderGUID);
guild->ChangeRank(oldLeader->GetGUID(), GR_OFFICER);
- WorldPacket data(SMSG_GUILD_EVENT, (2+20)); // guess size
- data << (uint8)GE_LEADER_CHANGED;
- data << (uint8)2; // strings count
- data << oldLeader->GetName();
- data << name.c_str();
- guild->BroadcastPacket(&data);
-
- //sLog.outDebug("WORLD: Sent (SMSG_GUILD_EVENT)");
+ guild->BroadcastEvent(GE_LEADER_CHANGED, 0, 2, oldLeader->GetName(), name, "");
}
void WorldSession::HandleGuildMOTDOpcode(WorldPacket& recvPacket)
@@ -509,25 +475,19 @@ void WorldSession::HandleGuildMOTDOpcode(WorldPacket& recvPacket)
Guild *guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_SETMOTD))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
guild->SetMOTD(MOTD);
- WorldPacket data(SMSG_GUILD_EVENT, (2+MOTD.size()+1));
- data << (uint8)GE_MOTD;
- data << (uint8)1; // strings count
- data << MOTD;
- guild->BroadcastPacket(&data);
-
- sLog.outDebug("WORLD: Sent (SMSG_GUILD_EVENT)");
+ guild->BroadcastEvent(GE_MOTD, 0, 1, MOTD, "", "");
}
void WorldSession::HandleGuildSetPublicNoteOpcode(WorldPacket& recvPacket)
@@ -543,13 +503,13 @@ void WorldSession::HandleGuildSetPublicNoteOpcode(WorldPacket& recvPacket)
Guild* guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_EPNOTE))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -581,13 +541,13 @@ void WorldSession::HandleGuildSetOfficerNoteOpcode(WorldPacket& recvPacket)
Guild* guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (!guild->HasRankRight(GetPlayer()->GetRank(), GR_RIGHT_EOFFNOTE))
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -596,7 +556,7 @@ void WorldSession::HandleGuildSetOfficerNoteOpcode(WorldPacket& recvPacket)
if (!slot)
{
- SendGuildCommandResult(GUILD_INVITE_S, plName, GUILD_PLAYER_NOT_IN_GUILD_S);
+ SendGuildCommandResult(GUILD_INVITE_S, plName, ERR_GUILD_PLAYER_NOT_IN_GUILD_S);
return;
}
@@ -618,13 +578,13 @@ void WorldSession::HandleGuildRankOpcode(WorldPacket& recvPacket)
if (!guild)
{
recvPacket.rpos(recvPacket.wpos()); // set to end to avoid warnings spam
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
else if (GetPlayer()->GetGUID() != guild->GetLeader())
{
recvPacket.rpos(recvPacket.wpos()); // set to end to avoid warnings spam
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -667,13 +627,13 @@ void WorldSession::HandleGuildAddRankOpcode(WorldPacket& recvPacket)
Guild *guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
if (GetPlayer()->GetGUID() != guild->GetLeader())
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -693,12 +653,12 @@ void WorldSession::HandleGuildDelRankOpcode(WorldPacket& /*recvPacket*/)
Guild *guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
else if (GetPlayer()->GetGUID() != guild->GetLeader())
{
- SendGuildCommandResult(GUILD_INVITE_S, "", GUILD_PERMISSIONS);
+ SendGuildCommandResult(GUILD_INVITE_S, "", ERR_GUILD_PERMISSIONS);
return;
}
@@ -730,7 +690,7 @@ void WorldSession::HandleGuildChangeInfoTextOpcode(WorldPacket& recvPacket)
Guild *guild = objmgr.GetGuildById(GetPlayer()->GetGuildId());
if (!guild)
{
- SendGuildCommandResult(GUILD_CREATE_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ ERR_GUILD_PLAYER_NOT_IN_GUILD);
return;
}
@@ -866,7 +826,7 @@ void WorldSession::HandleGuildBankerActivate(WorldPacket & recv_data)
}
}
- SendGuildCommandResult(GUILD_BANK_S, "", GUILD_PLAYER_NOT_IN_GUILD);
+ SendGuildCommandResult(GUILD_UNK1, "", ERR_GUILD_PLAYER_NOT_IN_GUILD);
}
/* Called when opening guild bank tab only (first one) */