aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server
diff options
context:
space:
mode:
authorVincent-Michael <Vincent_Michael@gmx.de>2015-04-19 17:06:44 +0200
committerVincent-Michael <Vincent_Michael@gmx.de>2015-04-19 17:06:44 +0200
commitc3c8b7c2a638b9f9c0a79dac7c3b0025e4bed84c (patch)
tree301f803016cf99963159e4eeeb8a1d36754656be /src/server/game/Server
parentbfca8246d84cdb529a4b326e0a5ab8901e1af276 (diff)
Core/PacketIO: Updated and enabled CMSG_REQUEST_WOW_TOKEN_MARKET_PRICE / SMSG_REQUEST_WOW_TOKEN_MARKET_PRICE_RESPONSE
Diffstat (limited to 'src/server/game/Server')
-rw-r--r--src/server/game/Server/Packets/TokenPackets.cpp15
-rw-r--r--src/server/game/Server/Packets/TokenPackets.h23
-rw-r--r--src/server/game/Server/Protocol/Opcodes.cpp3
-rw-r--r--src/server/game/Server/Protocol/Opcodes.h1
-rw-r--r--src/server/game/Server/WorldSession.h2
5 files changed, 43 insertions, 1 deletions
diff --git a/src/server/game/Server/Packets/TokenPackets.cpp b/src/server/game/Server/Packets/TokenPackets.cpp
index af186a1cf4b..8b1910c55bb 100644
--- a/src/server/game/Server/Packets/TokenPackets.cpp
+++ b/src/server/game/Server/Packets/TokenPackets.cpp
@@ -38,3 +38,18 @@ WorldPacket const* WorldPackets::Token::UpdateListedAuctionableTokensResponse::W
return &_worldPacket;
}
+
+void WorldPackets::Token::RequestWowTokenMarketPrice::Read()
+{
+ _worldPacket >> UnkInt;
+}
+
+WorldPacket const* WorldPackets::Token::RequestWowTokenMarketPriceResponse::Write()
+{
+ _worldPacket << CurrentMarketPrice;
+ _worldPacket << UnkInt;
+ _worldPacket << Result;
+ _worldPacket << UnkInt2;
+
+ return &_worldPacket;
+} \ No newline at end of file
diff --git a/src/server/game/Server/Packets/TokenPackets.h b/src/server/game/Server/Packets/TokenPackets.h
index 126fbe59982..c905be26bcb 100644
--- a/src/server/game/Server/Packets/TokenPackets.h
+++ b/src/server/game/Server/Packets/TokenPackets.h
@@ -54,6 +54,29 @@ namespace WorldPackets
uint32 Result = 0;
std::vector<AuctionableTokenAuctionable> AuctionableTokenAuctionableList;
};
+
+ class RequestWowTokenMarketPrice final : public ClientPacket
+ {
+ public:
+ RequestWowTokenMarketPrice(WorldPacket&& packet) : ClientPacket(CMSG_REQUEST_WOW_TOKEN_MARKET_PRICE, std::move(packet)) { }
+
+ void Read() override;
+
+ uint32 UnkInt = 0;
+ };
+
+ class RequestWowTokenMarketPriceResponse final : public ServerPacket
+ {
+ public:
+ RequestWowTokenMarketPriceResponse() : ServerPacket(SMSG_REQUEST_WOW_TOKEN_MARKET_PRICE_RESPONSE, 20) { }
+
+ WorldPacket const* Write() override;
+
+ uint64 CurrentMarketPrice = 0;
+ uint32 UnkInt = 0; // send CMSG_REQUEST_WOW_TOKEN_MARKET_PRICE
+ uint32 Result = 0;
+ uint32 UnkInt2 = 0;
+ };
}
}
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp
index 30442711a8a..97c583287ca 100644
--- a/src/server/game/Server/Protocol/Opcodes.cpp
+++ b/src/server/game/Server/Protocol/Opcodes.cpp
@@ -687,7 +687,7 @@ void OpcodeTable::Initialize()
DEFINE_HANDLER(CMSG_REQUEST_VEHICLE_NEXT_SEAT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Vehicle::RequestVehicleNextSeat, &WorldSession::HandleRequestVehicleNextSeat);
DEFINE_HANDLER(CMSG_REQUEST_VEHICLE_PREV_SEAT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Vehicle::RequestVehiclePrevSeat, &WorldSession::HandleRequestVehiclePrevSeat);
DEFINE_HANDLER(CMSG_REQUEST_VEHICLE_SWITCH_SEAT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Vehicle::RequestVehicleSwitchSeat, &WorldSession::HandleRequestVehicleSwitchSeat);
- DEFINE_HANDLER(CMSG_REQUEST_WOW_TOKEN_MARKET_PRICE, STATUS_UNHANDLED, PROCESS_INPLACE, WorldPackets::Null, &WorldSession::Handle_NULL);
+ DEFINE_HANDLER(CMSG_REQUEST_WOW_TOKEN_MARKET_PRICE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Token::RequestWowTokenMarketPrice, &WorldSession::HandleRequestWowTokenMarketPrice);
DEFINE_HANDLER(CMSG_RESET_CHALLENGE_MODE, STATUS_UNHANDLED, PROCESS_INPLACE, WorldPackets::Null, &WorldSession::Handle_NULL);
DEFINE_OPCODE_HANDLER_OLD(CMSG_RESET_INSTANCES, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleResetInstancesOpcode );
DEFINE_HANDLER(CMSG_RESURRECT_RESPONSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, WorldPackets::Misc::ResurrectResponse, &WorldSession::HandleResurrectResponse);
@@ -1558,6 +1558,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_REPORT_PVP_PLAYER_AFK_RESULT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_REQUEST_CEMETERY_LIST_RESPONSE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_REQUEST_PVP_REWARDS_RESPONSE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_REQUEST_WOW_TOKEN_MARKET_PRICE_RESPONSE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_RESEARCH_COMPLETE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_RESET_COMPRESSION_CONTEXT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_RESET_FAILED_NOTIFY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h
index ab59edf68c0..4c1e631fe7a 100644
--- a/src/server/game/Server/Protocol/Opcodes.h
+++ b/src/server/game/Server/Protocol/Opcodes.h
@@ -1451,6 +1451,7 @@ enum OpcodeServer : uint32
SMSG_REPORT_PVP_PLAYER_AFK_RESULT = 0x12B2,
SMSG_REQUEST_CEMETERY_LIST_RESPONSE = 0x1398,
SMSG_REQUEST_PVP_REWARDS_RESPONSE = 0x0218,
+ SMSG_REQUEST_WOW_TOKEN_MARKET_PRICE_RESPONSE = 0x1215,
SMSG_RESEARCH_COMPLETE = 0x1335,
SMSG_RESET_COMPRESSION_CONTEXT = 0x0059,
SMSG_RESET_FAILED_NOTIFY = 0x040D,
diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h
index 29a0a0dba4e..97db720c32e 100644
--- a/src/server/game/Server/WorldSession.h
+++ b/src/server/game/Server/WorldSession.h
@@ -452,6 +452,7 @@ namespace WorldPackets
namespace Token
{
class UpdateListedAuctionableTokens;
+ class RequestWowTokenMarketPrice;
}
namespace Trade
@@ -1445,6 +1446,7 @@ class WorldSession
// Token
void HandleUpdateListedAuctionableTokens(WorldPackets::Token::UpdateListedAuctionableTokens& updateListedAuctionableTokens);
+ void HandleRequestWowTokenMarketPrice(WorldPackets::Token::RequestWowTokenMarketPrice& requestWowTokenMarketPrice);
// Compact Unit Frames (4.x)
void HandleSaveCUFProfiles(WorldPacket& recvPacket);