37#define CHARTER_DISPLAY_ID 16161
50 TC_LOG_DEBUG(
"network",
"Received opcode CMSG_PETITION_BUY");
73 for (
int i = 0; i < 10; ++i)
76 recvData >> clientIndex;
85 TC_LOG_DEBUG(
"network",
"WORLD: HandlePetitionBuyOpcode - {} not found or you can't interact with him.", guidNPC.
ToString());
134 TC_LOG_DEBUG(
"network",
"unknown selection at buy arena petition: {}", clientIndex);
213 TC_LOG_DEBUG(
"network",
"Invalid petition {}", petition->PetitionGuid.ToString());
222 TC_LOG_DEBUG(
"network",
"Received opcode CMSG_PETITION_SHOW_SIGNATURES");
225 recvData >> petitionGuid;
250 data <<
uint8(signatures.size());
252 for (
Signature const& signature : signatures)
254 data << signature.second;
263 TC_LOG_DEBUG(
"network",
"Received opcode CMSG_PETITION_QUERY");
267 recvData >> guildguid;
268 recvData >> petitionguid;
269 TC_LOG_DEBUG(
"network",
"CMSG_PETITION_QUERY Petition {} Guild GUID {}", petitionguid.
ToString(), guildguid);
279 TC_LOG_DEBUG(
"network",
"CMSG_PETITION_QUERY failed for petition ({})", petitionguid.
ToString());
312 for (
int i = 0; i < 10; ++i)
324 TC_LOG_DEBUG(
"network",
"Received opcode MSG_PETITION_RENAME");
329 recvData >> petitionGuid;
378 data << petitionGuid;
385 TC_LOG_DEBUG(
"network",
"Received opcode CMSG_PETITION_SIGN");
389 recvData >> petitionGuid;
454 if (++signs >
static_cast<uint8>(type))
463 data << petitionGuid;
472 owner->SendDirectMessage(&data);
482 data << petitionGuid;
489 owner->SendDirectMessage(&data);
494 TC_LOG_DEBUG(
"network",
"Received opcode MSG_PETITION_DECLINE");
497 recvData >> petitionguid;
509 owner->SendDirectMessage(&data);
515 TC_LOG_DEBUG(
"network",
"Received opcode CMSG_OFFER_PETITION");
520 recvData >> petitionGuid;
521 recvData >> offererGuid;
590 TC_LOG_DEBUG(
"network",
"Received opcode CMSG_TURN_IN_PETITION");
596 recvData >> petitionGuid;
661 uint32 requiredSignatures =
static_cast<uint32>(type) - 1;
666 if (signatures.size() < requiredSignatures)
699 for (
Signature const& signature : signatures)
700 guild->
AddMember(trans, signature.second);
708 uint32 background, icon, iconcolor, border, bordercolor;
709 recvData >> background >> icon >> iconcolor >> border >> bordercolor;
714 if (!arenaTeam->
Create(
_player->
GetGUID(), type, name, background, icon, iconcolor, border, bordercolor))
722 TC_LOG_DEBUG(
"network",
"PetitonsHandler: Arena team (guid: {}) added to ObjectMgr", arenaTeam->
GetId());
725 for (
Signature const& signature : signatures)
727 TC_LOG_DEBUG(
"network",
"PetitionsHandler: Adding arena team (guid: {}) member {}", arenaTeam->
GetId(), signature.second.ToString());
744 TC_LOG_DEBUG(
"network",
"Received CMSG_PETITION_SHOWLIST");
757 TC_LOG_DEBUG(
"network",
"WORLD: HandlePetitionShowListOpcode - {} not found or you can't interact with him.", guid.
ToString());
@ ERR_ARENA_TEAM_INVITE_SS
@ ERR_ARENA_TEAM_CREATE_S
@ ERR_ARENA_TEAM_NAME_INVALID
@ ERR_ALREADY_IN_ARENA_TEAM_S
@ ERR_ALREADY_IN_ARENA_TEAM
@ ERR_ARENA_TEAM_NOT_ALLIED
@ ERR_ARENA_TEAM_TARGET_TOO_LOW_S
@ ERR_ALREADY_INVITED_TO_ARENA_TEAM_S
@ ERR_ARENA_TEAM_NAME_EXISTS_S
SQLTransaction< CharacterDatabaseConnection > CharacterDatabaseTransaction
DatabaseWorkerPool< CharacterDatabaseConnection > CharacterDatabase
Accessor to the character database.
@ ERR_GUILD_COMMAND_SUCCESS
@ ERR_GUILD_NAME_EXISTS_S
@ ERR_ALREADY_INVITED_TO_GUILD_S
@ BUY_ERR_NOT_ENOUGHT_MONEY
#define TC_LOG_DEBUG(filterType__,...)
#define TC_LOG_ERROR(filterType__,...)
@ PETITION_SIGN_ALREADY_SIGNED
@ PETITION_TURN_NEED_MORE_SIGNATURES
@ PETITION_TURN_ALREADY_IN_GUILD
std::pair< uint32, ObjectGuid > Signature
std::vector< Signature > SignaturesVector
#define CHARTER_DISPLAY_ID
std::vector< ItemPosCount > ItemPosCountVec
@ ARENA_TEAM_CHARTER_2v2_TYPE
@ ARENA_TEAM_CHARTER_3v3_TYPE
@ ARENA_TEAM_CHARTER_5v5_TYPE
@ UNIT_NPC_FLAG_PETITIONER
@ ITEM_FIELD_ENCHANTMENT_1_1
bool Create(ObjectGuid captainGuid, uint8 type, std::string const &teamName, uint32 backgroundColor, uint8 emblemStyle, uint32 emblemColor, uint8 borderStyle, uint32 borderColor)
bool AddMember(ObjectGuid PlayerGuid)
static uint8 GetSlotByType(uint32 type)
bool AddMember(CharacterDatabaseTransaction trans, ObjectGuid guid, uint8 rankId=GUILD_RANK_NONE)
static void SendCommandResult(WorldSession *session, GuildCommandType type, GuildCommandError errCode, std::string_view param="")
bool Create(Player *pLeader, std::string_view name)
void SetState(ItemUpdateState state, Player *forplayer=nullptr)
LowType GetCounter() const
std::string ToString() const
static bool IsValidCharterName(std::string_view name)
static ObjectGuid GetGUID(Object const *o)
void SetUInt32Value(uint16 index, uint32 value)
Item * StoreNewItem(ItemPosCountVec const &pos, uint32 item, bool update, int32 randomPropertyId=0, GuidSet const &allowedLooters=GuidSet())
void SendDirectMessage(WorldPacket const *data) const
uint32 GetArenaTeamIdInvited() const
bool ModifyMoney(int32 amount, bool sendError=true)
bool HasEnoughMoney(uint32 amount) const
void DestroyItem(uint8 bag, uint8 slot, bool update)
Creature * GetNPCIfCanInteractWith(ObjectGuid const &guid, NPCFlags npcFlags) const
uint32 GetArenaTeamId(uint8 slot) const
void SendBuyError(BuyResult msg, Creature *creature, uint32 item, uint32 param) const
ObjectGuid::LowType GetGuildId() const
void SendNewItem(Item *item, uint32 count, bool received, bool created, bool broadcast=false, bool sendChatMessage=true)
ObjectGuid::LowType GetGuildIdInvited() const
void SendEquipError(InventoryResult msg, Item *pItem, Item *pItem2=nullptr, uint32 itemid=0) const
Item * GetItemByGuid(ObjectGuid guid) const
InventoryResult CanStoreNewItem(uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 item, uint32 count, uint32 *no_space_count=nullptr) const
void RemoveAurasByType(AuraType auraType, std::function< bool(AuraApplication const *)> const &check, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
bool IsTabardDesigner() const
std::string const & GetName() const
void Initialize(uint16 opcode, size_t newres=200)
void SendPetitionShowList(ObjectGuid guid)
void SendPacket(WorldPacket const *packet)
Send a packet to the client.
void HandlePetitionShowListOpcode(WorldPacket &recvPacket)
void HandleTurnInPetitionOpcode(WorldPacket &recvData)
Player * GetPlayer() const
void HandleQueryPetition(WorldPacket &recvData)
void SendPetitionSigns(Petition const *petition, Player *sendTo)
void HandlePetitionRenameGuild(WorldPacket &recvData)
void HandlePetitionBuyOpcode(WorldPacket &recvData)
void HandleSignPetition(WorldPacket &recvData)
void SendPetitionQueryOpcode(ObjectGuid petitionguid)
uint32 GetAccountId() const
void HandleDeclinePetition(WorldPacket &recvData)
void SendArenaTeamCommandResult(uint32 team_action, std::string const &team, std::string const &player, uint32 error_id=0)
void HandleOfferPetitionOpcode(WorldPacket &recvData)
void HandlePetitionShowSignatures(WorldPacket &recvData)
@ SMSG_PETITION_SHOW_SIGNATURES
@ SMSG_PETITION_QUERY_RESPONSE
@ SMSG_TURN_IN_PETITION_RESULTS
@ SMSG_PETITION_SIGN_RESULTS
@ CONFIG_CHARTER_COST_GUILD
@ CONFIG_MIN_PETITION_SIGNS
@ CONFIG_CHARTER_COST_ARENA_5v5
@ CONFIG_CHARTER_COST_ARENA_2v2
@ CONFIG_CHARTER_COST_ARENA_3v3
@ CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD
TC_GAME_API Player * FindConnectedPlayer(ObjectGuid const &)
void UpdateName(std::string const &newName)
SignaturesVector Signatures
CharterTypes PetitionType
bool IsPetitionSignedByAccount(uint32 accountId) const
void AddSignature(uint32 accountId, ObjectGuid playerGuid, bool isLoading)