Replace the usage of RakString (#648)

This commit is contained in:
Jett
2022-07-17 04:40:46 +01:00
committed by GitHub
parent 9287e5bc4b
commit 77d35019cc
7 changed files with 91 additions and 48 deletions

View File

@@ -497,7 +497,10 @@ void HandlePacket(Packet* packet) {
CBITSTREAM;
PacketUtils::WriteHeader(bitStream, MASTER, MSG_MASTER_NEW_SESSION_ALERT);
bitStream.Write(sessionKey);
bitStream.Write(RakNet::RakString(username.c_str()));
bitStream.Write<uint32_t>(username.size());
for (auto character : username) {
bitStream.Write(character);
}
SEND_PACKET_BROADCAST;
break;
@@ -572,14 +575,20 @@ void HandlePacket(Packet* packet) {
uint32_t mapId;
LWOCLONEID cloneId;
RakNet::RakString password;
std::string password;
inStream.Read(mapId);
inStream.Read(cloneId);
inStream.Read(password);
Game::im->CreatePrivateInstance(mapId, cloneId,
password.C_String());
uint32_t len;
inStream.Read<uint32_t>(len);
for (int i = 0; len > i; i++) {
char character;
inStream.Read<char>(character);
password += character;
}
Game::im->CreatePrivateInstance(mapId, cloneId, password.c_str());
break;
}
@@ -591,15 +600,22 @@ void HandlePacket(Packet* packet) {
uint64_t requestID = 0;
uint8_t mythranShift = false;
RakNet::RakString password;
std::string password;
inStream.Read(requestID);
inStream.Read(mythranShift);
inStream.Read(password);
uint32_t len;
inStream.Read<uint32_t>(len);
auto* instance = Game::im->FindPrivateInstance(password.C_String());
for (int i = 0; i < len; i++) {
char character; inStream.Read<char>(character);
password += character;
}
Game::logger->Log( "MasterServer", "Join private zone: %llu %d %s %p\n", requestID, mythranShift, password.C_String(), instance);
auto* instance = Game::im->FindPrivateInstance(password.c_str());
Game::logger->Log( "MasterServer", "Join private zone: %llu %d %s %p\n", requestID, mythranShift, password.c_str(), instance);
if (instance == nullptr) {
return;