Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
ChallengeModeHandler.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#include "
Log.h
"
7
#include "
Opcodes.h
"
8
#include "
WorldPacket.h
"
9
#include "
WorldSession.h
"
10
11
#include <ctime>
12
13
void
WorldSession::HandleGetChallengeModeRewards
(
WorldPacket
&
/*recvData*/
)
14
{
15
SF_LOG_DEBUG
(
"network"
,
"CMSG_GET_CHALLENGE_MODE_REWARDS %s"
,
GetPlayerInfo
().c_str());
16
17
WorldPacket
data(
SMSG_CHALLENGE_MODE_REWARDS
);
18
data.
WriteBits
(0, 21);
// Rewards count
19
data.
WriteBits
(0, 20);
// Tier rewards count
20
data.
FlushBits
();
21
22
SendPacket
(&data);
23
}
24
25
void
WorldSession::HandleChallengeModeRequestLeaders
(
WorldPacket
& recvData)
26
{
27
uint32
mapId = recvData.
read
<
uint32
>();
28
recvData.
read_skip
<
uint32
>();
// Last guild update
29
recvData.
read_skip
<
uint32
>();
// Last realm update
30
31
SF_LOG_DEBUG
(
"network"
,
"CMSG_CHALLENGE_MODE_REQUEST_LEADERS %s map: %u"
,
GetPlayerInfo
().c_str(), mapId);
32
33
WorldPacket
data(
SMSG_CHALLENGE_MODE_REQUEST_LEADERS_RESULT
);
34
data <<
uint32
(time(
nullptr
));
35
data <<
uint32
(time(
nullptr
));
36
data <<
uint32
(mapId);
37
data.
WriteBits
(0, 19);
// Guild leaders count
38
data.
WriteBits
(0, 19);
// Realm leaders count
39
data.
FlushBits
();
40
41
SendPacket
(&data);
42
}
43
44
void
WorldSession::HandleChallengeModeRequestMapStats
(
WorldPacket
&
/*recvData*/
)
45
{
46
SF_LOG_DEBUG
(
"network"
,
"CMSG_CHALLENGE_MODE_REQUEST_MAP_STATS %s"
,
GetPlayerInfo
().c_str());
47
48
WorldPacket
data(
SMSG_CHALLENGE_MODE_ALL_MAP_STATS
);
49
data.
WriteBits
(0, 19);
// Map data count
50
data.
FlushBits
();
51
52
SendPacket
(&data);
53
}
uint32
std::uint32_t uint32
Definition
Define.h:77
Log.h
SF_LOG_DEBUG
#define SF_LOG_DEBUG(filterType__,...)
Definition
Log.h:134
Opcodes.h
WorldPacket.h
WorldSession.h
ByteBuffer::read_skip
void read_skip()
Definition
ByteBuffer.h:502
ByteBuffer::WriteBits
void WriteBits(T value, size_t bits)
Definition
ByteBuffer.h:192
ByteBuffer::FlushBits
void FlushBits()
Definition
ByteBuffer.h:154
ByteBuffer::read
T read()
Definition
ByteBuffer.h:511
WorldPacket
Definition
WorldPacket.h:16
WorldSession::GetPlayerInfo
std::string GetPlayerInfo() const
Definition
WorldSession.cpp:178
WorldSession::HandleChallengeModeRequestLeaders
void HandleChallengeModeRequestLeaders(WorldPacket &recvData)
Definition
ChallengeModeHandler.cpp:25
WorldSession::SendPacket
void SendPacket(WorldPacket const *packet, bool forced=false)
Send a packet to the client.
Definition
WorldSession.cpp:196
WorldSession::HandleChallengeModeRequestMapStats
void HandleChallengeModeRequestMapStats(WorldPacket &recvData)
Definition
ChallengeModeHandler.cpp:44
WorldSession::HandleGetChallengeModeRewards
void HandleGetChallengeModeRewards(WorldPacket &recvData)
Definition
ChallengeModeHandler.cpp:13
SMSG_CHALLENGE_MODE_REWARDS
@ SMSG_CHALLENGE_MODE_REWARDS
Definition
Opcodes.h:599
SMSG_CHALLENGE_MODE_ALL_MAP_STATS
@ SMSG_CHALLENGE_MODE_ALL_MAP_STATS
Definition
Opcodes.h:597
SMSG_CHALLENGE_MODE_REQUEST_LEADERS_RESULT
@ SMSG_CHALLENGE_MODE_REQUEST_LEADERS_RESULT
Definition
Opcodes.h:598
src
server
game
Handlers
ChallengeModeHandler.cpp
Generated on
for Project SkyFire Core by
1.17.0