mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-04-26 16:46:31 +00:00
Add initial response msg and sending
This commit is contained in:
parent
3bccbbd1ef
commit
fb942e4692
@ -602,6 +602,19 @@ void ChatPacketHandler::HandleTeamInvite(Packet* packet) {
|
|||||||
SendTeamInvite(other, player);
|
SendTeamInvite(other, player);
|
||||||
|
|
||||||
LOG("Got team invite: %llu -> %s", playerID, invitedPlayer.GetAsString().c_str());
|
LOG("Got team invite: %llu -> %s", playerID, invitedPlayer.GetAsString().c_str());
|
||||||
|
|
||||||
|
bool failed = false;
|
||||||
|
for (const auto& ignore : other.ignoredPlayers) {
|
||||||
|
if (ignore.playerId == player.playerID) {
|
||||||
|
failed = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ChatPackets::TeamInviteInitialResponse response{};
|
||||||
|
response.inviteFailedToSend = failed;
|
||||||
|
response.playerName = invitedPlayer.string;
|
||||||
|
ChatPackets::SendRoutedMsg(response, playerID, player.worldServerSysAddr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatPacketHandler::HandleTeamInviteResponse(Packet* packet) {
|
void ChatPacketHandler::HandleTeamInviteResponse(Packet* packet) {
|
||||||
@ -615,7 +628,7 @@ void ChatPacketHandler::HandleTeamInviteResponse(Packet* packet) {
|
|||||||
LWOOBJID leaderID = LWOOBJID_EMPTY;
|
LWOOBJID leaderID = LWOOBJID_EMPTY;
|
||||||
inStream.Read(leaderID);
|
inStream.Read(leaderID);
|
||||||
|
|
||||||
LOG("Accepted invite: %llu -> %llu (%d)", playerID, leaderID, declined);
|
LOG("Invite reponse received: %llu -> %llu (%d)", playerID, leaderID, declined);
|
||||||
|
|
||||||
if (declined) {
|
if (declined) {
|
||||||
return;
|
return;
|
||||||
|
@ -132,3 +132,19 @@ bool ChatPackets::AchievementNotify::Deserialize(RakNet::BitStream& bitstream) {
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ChatPackets::TeamInviteInitialResponse::Serialize(RakNet::BitStream& bitstream) const {
|
||||||
|
bitstream.Write<uint8_t>(inviteFailedToSend);
|
||||||
|
bitstream.Write(playerName);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ChatPackets::SendRoutedMsg(const LUBitStream& msg, const LWOOBJID targetID, const SystemAddress& sysAddr) {
|
||||||
|
CBITSTREAM;
|
||||||
|
BitStreamUtils::WriteHeader(bitStream, eConnectionType::CHAT, MessageType::Chat::WORLD_ROUTE_PACKET);
|
||||||
|
bitStream.Write(targetID);
|
||||||
|
|
||||||
|
// Now write the actual packet
|
||||||
|
msg.WriteHeader(bitStream);
|
||||||
|
msg.Serialize(bitStream);
|
||||||
|
Game::server->Send(bitStream, sysAddr, sysAddr == UNASSIGNED_SYSTEM_ADDRESS);
|
||||||
|
}
|
||||||
|
@ -46,9 +46,19 @@ namespace ChatPackets {
|
|||||||
bool Deserialize(RakNet::BitStream& bitstream) override;
|
bool Deserialize(RakNet::BitStream& bitstream) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct TeamInviteInitialResponse : public LUBitStream {
|
||||||
|
bool inviteFailedToSend{};
|
||||||
|
LUWString playerName{};
|
||||||
|
TeamInviteInitialResponse() : LUBitStream(eConnectionType::CLIENT, MessageType::Client::TEAM_INVITE_INITIAL_RESPONSE) {}
|
||||||
|
|
||||||
|
void Serialize(RakNet::BitStream& bitstream) const override;
|
||||||
|
// No Deserialize needed on our end
|
||||||
|
};
|
||||||
|
|
||||||
void SendChatMessage(const SystemAddress& sysAddr, char chatChannel, const std::string& senderName, LWOOBJID playerObjectID, bool senderMythran, const std::u16string& message);
|
void SendChatMessage(const SystemAddress& sysAddr, char chatChannel, const std::string& senderName, LWOOBJID playerObjectID, bool senderMythran, const std::u16string& message);
|
||||||
void SendSystemMessage(const SystemAddress& sysAddr, const std::u16string& message, bool broadcast = false);
|
void SendSystemMessage(const SystemAddress& sysAddr, const std::u16string& message, bool broadcast = false);
|
||||||
void SendMessageFail(const SystemAddress& sysAddr);
|
void SendMessageFail(const SystemAddress& sysAddr);
|
||||||
|
void SendRoutedMsg(const LUBitStream& msg, const LWOOBJID targetID, const SystemAddress& sysAddr);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // CHATPACKETS_H
|
#endif // CHATPACKETS_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user