summaryrefslogtreecommitdiff
path: root/src/network/network_server.cpp
diff options
context:
space:
mode:
authorPatric Stout <truebrain@openttd.org>2021-04-26 20:02:27 +0200
committerPatric Stout <github@truebrain.nl>2021-04-27 20:18:53 +0200
commitb3003dd163ab6b7902da33fa6cfaa29e45556db1 (patch)
tree545a4f7fbbacb9da797ed6948dd614424607851d /src/network/network_server.cpp
parent84c75a7b9a8aeb60506454260f9c98454ffb8ab5 (diff)
downloadopenttd-b3003dd163ab6b7902da33fa6cfaa29e45556db1.tar.xz
Add: ability to retrieve game info from server over TCP
Diffstat (limited to 'src/network/network_server.cpp')
-rw-r--r--src/network/network_server.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp
index 6bc6f8291..fd69a8d37 100644
--- a/src/network/network_server.cpp
+++ b/src/network/network_server.cpp
@@ -353,6 +353,20 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::SendClientInfo(NetworkClientIn
return NETWORK_RECV_STATUS_OKAY;
}
+/** Send the client information about the server. */
+NetworkRecvStatus ServerNetworkGameSocketHandler::SendGameInfo()
+{
+ NetworkGameInfo ngi;
+ FillNetworkGameInfo(ngi);
+
+ Packet *p = new Packet(PACKET_SERVER_GAME_INFO);
+ SerializeNetworkGameInfo(p, &ngi);
+
+ this->SendPacket(p);
+
+ return NETWORK_RECV_STATUS_OKAY;
+}
+
/** Send the client information about the companies. */
NetworkRecvStatus ServerNetworkGameSocketHandler::SendCompanyInfo()
{
@@ -828,6 +842,11 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::SendConfigUpdate()
* DEF_SERVER_RECEIVE_COMMAND has parameter: NetworkClientSocket *cs, Packet *p
************/
+NetworkRecvStatus ServerNetworkGameSocketHandler::Receive_CLIENT_GAME_INFO(Packet *p)
+{
+ return this->SendGameInfo();
+}
+
NetworkRecvStatus ServerNetworkGameSocketHandler::Receive_CLIENT_COMPANY_INFO(Packet *p)
{
return this->SendCompanyInfo();