diff options
Diffstat (limited to 'game/server/chat.cc')
| -rw-r--r-- | game/server/chat.cc | 110 |
1 files changed, 55 insertions, 55 deletions
diff --git a/game/server/chat.cc b/game/server/chat.cc index a0ceba8..fadfaa2 100644 --- a/game/server/chat.cc +++ b/game/server/chat.cc @@ -1,55 +1,55 @@ -#include "server/pch.hh" - -#include "server/chat.hh" - -#include "server/globals.hh" -#include "server/sessions.hh" -#include "shared/protocol.hh" - -static void on_chat_message_packet(const protocol::ChatMessage& packet) -{ - if(packet.type == protocol::ChatMessage::TEXT_MESSAGE) { - if(auto session = sessions::find(packet.peer)) { - server_chat::broadcast(packet.message.c_str(), session->client_username.c_str()); - } - else { - server_chat::broadcast(packet.message.c_str(), packet.sender.c_str()); - } - } -} - -void server_chat::init(void) -{ - globals::dispatcher.sink<protocol::ChatMessage>().connect<&on_chat_message_packet>(); -} - -void server_chat::broadcast(std::string_view message) -{ - server_chat::broadcast(message, "server"); -} - -void server_chat::broadcast(std::string_view message, std::string_view sender) -{ - protocol::ChatMessage packet; - packet.type = protocol::ChatMessage::TEXT_MESSAGE; - packet.message = message; - packet.sender = sender; - - protocol::broadcast(globals::server_host, protocol::encode(packet)); - - spdlog::info("<{}> {}", sender, message); -} - -void server_chat::send(Session* session, std::string_view message) -{ - server_chat::send(session, message, "server"); -} - -void server_chat::send(Session* session, std::string_view message, std::string_view sender) -{ - protocol::ChatMessage packet; - packet.type = protocol::ChatMessage::TEXT_MESSAGE; - packet.message = message; - packet.sender = sender; - protocol::broadcast(globals::server_host, protocol::encode(packet)); -} +#include "server/pch.hh"
+
+#include "server/chat.hh"
+
+#include "server/globals.hh"
+#include "server/sessions.hh"
+#include "shared/protocol.hh"
+
+static void on_chat_message_packet(const protocol::ChatMessage& packet)
+{
+ if(packet.type == protocol::ChatMessage::TEXT_MESSAGE) {
+ if(auto session = sessions::find(packet.peer)) {
+ server_chat::broadcast(packet.message.c_str(), session->client_username.c_str());
+ }
+ else {
+ server_chat::broadcast(packet.message.c_str(), packet.sender.c_str());
+ }
+ }
+}
+
+void server_chat::init(void)
+{
+ globals::dispatcher.sink<protocol::ChatMessage>().connect<&on_chat_message_packet>();
+}
+
+void server_chat::broadcast(std::string_view message)
+{
+ server_chat::broadcast(message, "server");
+}
+
+void server_chat::broadcast(std::string_view message, std::string_view sender)
+{
+ protocol::ChatMessage packet;
+ packet.type = protocol::ChatMessage::TEXT_MESSAGE;
+ packet.message = message;
+ packet.sender = sender;
+
+ protocol::broadcast(globals::server_host, protocol::encode(packet));
+
+ spdlog::info("<{}> {}", sender, message);
+}
+
+void server_chat::send(Session* session, std::string_view message)
+{
+ server_chat::send(session, message, "server");
+}
+
+void server_chat::send(Session* session, std::string_view message, std::string_view sender)
+{
+ protocol::ChatMessage packet;
+ packet.type = protocol::ChatMessage::TEXT_MESSAGE;
+ packet.message = message;
+ packet.sender = sender;
+ protocol::broadcast(globals::server_host, protocol::encode(packet));
+}
|
