From 74fe482a621aaf3be6fa496390decf638fd6d449 Mon Sep 17 00:00:00 2001 From: IntelOrca Date: Sat, 7 Nov 2015 23:47:50 +0000 Subject: [PATCH] improve game info json --- src/config.c | 1 + src/config.h | 1 + src/network/network.cpp | 6 +++--- src/windows/server_list.c | 14 +++++++------- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/config.c b/src/config.c index 7244269e58..f3040804a9 100644 --- a/src/config.c +++ b/src/config.c @@ -243,6 +243,7 @@ config_property_definition _networkDefinitions[] = { { offsetof(network_configuration, advertise), "advertise", CONFIG_VALUE_TYPE_BOOLEAN, false, NULL }, { offsetof(network_configuration, maxplayers), "maxplayers", CONFIG_VALUE_TYPE_UINT8, 16, NULL }, { offsetof(network_configuration, server_name), "server_name", CONFIG_VALUE_TYPE_STRING, {.value_string = "Server" }, NULL }, + { offsetof(network_configuration, server_description), "server_description", CONFIG_VALUE_TYPE_STRING, {.value_string = "" }, NULL }, { offsetof(network_configuration, master_url), "master_url", CONFIG_VALUE_TYPE_STRING, {.value_string = OPENRCT2_MASTER_URL }, NULL } }; diff --git a/src/config.h b/src/config.h index 120ee9dfb0..0e3d7d560d 100644 --- a/src/config.h +++ b/src/config.h @@ -217,6 +217,7 @@ typedef struct { uint8 advertise; uint8 maxplayers; utf8string server_name; + utf8string server_description; utf8string master_url; } network_configuration; diff --git a/src/network/network.cpp b/src/network/network.cpp index dae6b7cb7b..e97892e946 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -940,11 +940,11 @@ void Network::Server_Send_GAMEINFO(NetworkConnection& connection) #ifndef DISABLE_HTTP json_t* obj = json_object(); json_object_set(obj, "name", json_string(gConfigNetwork.server_name)); - json_object_set(obj, "haspassword", json_integer(password.size() > 0 ? 1 : 0)); - json_object_set(obj, "description", json_string("")); + json_object_set(obj, "requiresPassword", json_boolean(password.size() > 0)); json_object_set(obj, "version", json_string(OPENRCT2_VERSION)); json_object_set(obj, "players", json_integer(player_list.size())); - json_object_set(obj, "maxplayers", json_integer(gConfigNetwork.maxplayers)); + json_object_set(obj, "maxPlayers", json_integer(gConfigNetwork.maxplayers)); + json_object_set(obj, "description", json_string(gConfigNetwork.server_description)); packet->WriteString(json_dumps(obj, 0)); json_object_clear(obj); #endif diff --git a/src/windows/server_list.c b/src/windows/server_list.c index aa9126b314..a941c24f6b 100644 --- a/src/windows/server_list.c +++ b/src/windows/server_list.c @@ -39,7 +39,7 @@ typedef struct { char *address; utf8 *name; - bool haspassword; + bool requiresPassword; utf8 *description; char *version; bool favorite; @@ -479,7 +479,7 @@ static void server_list_load_saved_servers() serverInfo->address = freadstralloc(file); serverInfo->name = freadstralloc(file); - serverInfo->haspassword = false; + serverInfo->requiresPassword = false; serverInfo->description = freadstralloc(file); serverInfo->version = _strdup(""); serverInfo->favorite = true; @@ -573,7 +573,7 @@ static saved_server* add_saved_server(char *address) saved_server* newserver = &_savedServers[index]; newserver->address = _strdup(address); newserver->name = _strdup(address); - newserver->haspassword = false; + newserver->requiresPassword = false; newserver->description = _strdup(""); newserver->version = _strdup(""); newserver->favorite = false; @@ -664,17 +664,17 @@ static void fetch_servers_callback(http_json_response* response) json_t *address = json_object_get(server, "address"); json_t *name = json_object_get(server, "name"); - json_t *haspassword = json_object_get(server, "haspassword"); - json_t *description = json_object_get(server, "description"); + json_t *requiresPassword = json_object_get(server, "requiresPassword"); json_t *version = json_object_get(server, "version"); json_t *players = json_object_get(server, "players"); - json_t *maxplayers = json_object_get(server, "maxplayers"); + json_t *maxplayers = json_object_get(server, "maxPlayers"); + json_t *description = json_object_get(server, "description"); SDL_LockMutex(_mutex); saved_server* newserver = add_saved_server((char*)json_string_value(address)); SafeFree(newserver->name); newserver->name = _strdup(json_string_value(name)); - newserver->haspassword = (uint8)json_integer_value(haspassword); + newserver->requiresPassword = json_boolean_value(requiresPassword); SafeFree(newserver->description); newserver->description = _strdup(json_string_value(description)); SafeFree(newserver->version);