diff options
-rw-r--r-- | src/server/game/Reputation/ReputationMgr.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Reputation/ReputationMgr.h | 2 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 1 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.h | 1 |
4 files changed, 5 insertions, 3 deletions
diff --git a/src/server/game/Reputation/ReputationMgr.cpp b/src/server/game/Reputation/ReputationMgr.cpp index b136e6893cd..34795364c5c 100644 --- a/src/server/game/Reputation/ReputationMgr.cpp +++ b/src/server/game/Reputation/ReputationMgr.cpp @@ -239,13 +239,13 @@ void ReputationMgr::SendStates() SendState(&(itr->second)); } -void ReputationMgr::SendVisible(FactionState const* faction) const +void ReputationMgr::SendVisible(FactionState const* faction, bool visible /* = true*/) const { if (_player->GetSession()->PlayerLoading()) return; // make faction visible in reputation list at client - WorldPacket data(SMSG_SET_FACTION_VISIBLE, 4); + WorldPacket data(visible ? SMSG_SET_FACTION_VISIBLE : SMSG_SET_FACTION_NOT_VISIBILE, 4); data << faction->ReputationListID; _player->SendDirectMessage(&data); } diff --git a/src/server/game/Reputation/ReputationMgr.h b/src/server/game/Reputation/ReputationMgr.h index 4164dd8ff11..b624bc95011 100644 --- a/src/server/game/Reputation/ReputationMgr.h +++ b/src/server/game/Reputation/ReputationMgr.h @@ -148,7 +148,7 @@ class ReputationMgr void SetVisible(FactionState* faction); void SetAtWar(FactionState* faction, bool atWar) const; void SetInactive(FactionState* faction, bool inactive) const; - void SendVisible(FactionState const* faction) const; + void SendVisible(FactionState const* faction, bool visible = true) const; void UpdateRankCounters(ReputationRank old_rank, ReputationRank new_rank); private: Player* _player; diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index abcbe8e46c1..f138760beaa 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -1159,6 +1159,7 @@ void OpcodeTable::Initialize() DEFINE_OPCODE_HANDLER(SMSG_SET_AI_ANIM_KIT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(SMSG_SET_DF_FAST_LAUNCH_RESULT, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(SMSG_SET_FACTION_ATWAR, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); + DEFINE_OPCODE_HANDLER(SMSG_SET_FACTION_NOT_VISIBLE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(SMSG_SET_FACTION_STANDING, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(SMSG_SET_FACTION_VISIBLE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(SMSG_SET_FLAT_SPELL_MODIFIER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h index 485a1d56ed9..c6a80f4c737 100644 --- a/src/server/game/Server/Protocol/Opcodes.h +++ b/src/server/game/Server/Protocol/Opcodes.h @@ -1231,6 +1231,7 @@ enum Opcodes SMSG_SET_AI_ANIM_KIT = 0x4626, SMSG_SET_DF_FAST_LAUNCH_RESULT = 0x35B6, SMSG_SET_FACTION_ATWAR = 0x4216, + SMSG_SET_FACTION_NOT_VISIBILE = 0x6737, SMSG_SET_FACTION_STANDING = 0x0126, SMSG_SET_FACTION_VISIBLE = 0x2525, SMSG_SET_FLAT_SPELL_MODIFIER = 0x2834, |