static void UpdateScreenMenuGadgets(int, boolean);
static boolean OfferUploadTapes(void);
+static void execOfferUploadTapes(void);
static struct GadgetInfo *screen_gadget[NUM_SCREEN_GADGETS];
// change name functions
// ============================================================================
-static void RenamePlayerOnServerExt(struct HttpRequest *request,
- struct HttpResponse *response,
- char *player_name_raw,
- char *player_uuid_raw)
+struct ApiRenamePlayerThreadData
{
+ char *player_name;
+ char *player_uuid;
+};
+
+static void *CreateThreadData_ApiRenamePlayer(void)
+{
+ struct ApiRenamePlayerThreadData *data =
+ checked_malloc(sizeof(struct ApiRenamePlayerThreadData));
+
+ data->player_name = getStringCopy(setup.player_name);
+ data->player_uuid = getStringCopy(setup.player_uuid);
+
+ return data;
+}
+
+static void FreeThreadData_ApiRenamePlayer(void *data_raw)
+{
+ struct ApiRenamePlayerThreadData *data = data_raw;
+
+ checked_free(data->player_name);
+ checked_free(data->player_uuid);
+ checked_free(data);
+}
+
+static void ApiRenamePlayerExt(struct HttpRequest *request,
+ struct HttpResponse *response,
+ void *data_raw)
+{
+ struct ApiRenamePlayerThreadData *data = data_raw;
+ char *player_name_raw = data->player_name;
+ char *player_uuid_raw = data->player_uuid;
+
request->hostname = setup.api_server_hostname;
request->port = API_SERVER_PORT;
request->method = API_SERVER_METHOD;
"{\n"
"%s"
" \"game_version\": \"%s\",\n"
+ " \"game_platform\": \"%s\",\n"
" \"name\": \"%s\",\n"
" \"uuid\": \"%s\"\n"
"}\n",
getPasswordJSON(setup.api_server_password),
getProgramRealVersionString(),
+ getProgramPlatformString(),
player_name,
player_uuid);
}
}
-static void RenamePlayerOnServer(char *player_name, char *player_uuid)
+static void ApiRenamePlayer(void *data_raw)
{
struct HttpRequest *request = checked_calloc(sizeof(struct HttpRequest));
struct HttpResponse *response = checked_calloc(sizeof(struct HttpResponse));
- RenamePlayerOnServerExt(request, response, player_name, player_uuid);
+ ApiRenamePlayerExt(request, response, data_raw);
checked_free(request);
checked_free(response);
}
-struct RenamePlayerOnServerThreadData
+static int ApiRenamePlayerThread(void *data_raw)
{
- char *player_name;
- char *player_uuid;
-};
-
-static int RenamePlayerOnServerThread(void *data_raw)
-{
- struct RenamePlayerOnServerThreadData *data = data_raw;
+ ApiRenamePlayer(data_raw);
- RenamePlayerOnServer(data->player_name, data->player_uuid);
-
- checked_free(data->player_name);
- checked_free(data->player_uuid);
- checked_free(data);
+ FreeThreadData_ApiRenamePlayer(data_raw);
return 0;
}
-static void RenamePlayerOnServerAsThread(void)
+static void ApiRenamePlayerAsThread(void)
{
- struct RenamePlayerOnServerThreadData *data =
- checked_malloc(sizeof(struct RenamePlayerOnServerThreadData));
+ struct ApiRenamePlayerThreadData *data =
+ CreateThreadData_ApiRenamePlayer();
- data->player_name = getStringCopy(setup.player_name);
- data->player_uuid = getStringCopy(setup.player_uuid);
-
- ExecuteAsThread(RenamePlayerOnServerThread,
- "RenamePlayerOnServer", data,
+ ExecuteAsThread(ApiRenamePlayerThread,
+ "ApiRenamePlayer", data,
"rename player on server");
}
SaveSetup();
// change name of edited user on score server
- RenamePlayerOnServerAsThread();
+ ApiRenamePlayerAsThread();
if (game_status == GAME_MODE_PSEUDO_TYPENAMES || reset_setup)
{
execSetupGame_setNetworkServerText();
+ if (!setup.provide_uploading_tapes)
+ setHideSetupEntry(execOfferUploadTapes);
+
setup_mode = SETUP_MODE_GAME;
DrawSetupScreen();
{ TYPE_PLAYER, &setup.network_player_nr,"Preferred Network Player:" },
{ TYPE_TEXT_INPUT, execGadgetNetworkServer, "Network Server Hostname:" },
{ TYPE_STRING, &network_server_text, "" },
- { TYPE_SWITCH, &setup.api_server, "Use Highscore Server:" },
+ { TYPE_SWITCH, &setup.use_api_server, "Use Highscore Server:" },
{ TYPE_SWITCH, &setup.only_show_local_scores, "Only Show Local Scores:" },
{ TYPE_ENTER_LIST, execOfferUploadTapes, "Upload All Tapes to Server" },
{ TYPE_SWITCH, &setup.multiple_users, "Multiple Users/Teams:" },
ToggleNetworkModeIfNeeded();
// API server mode may have changed at this point
- if (si->value == &setup.api_server)
- runtime.api_server = setup.api_server;
+ if (si->value == &setup.use_api_server)
+ runtime.use_api_server = setup.use_api_server;
// game speed list may have changed at this point
if (si->value == &setup.game_speed_extended)
// after all tapes have been uploaded, remove entry from setup menu
setup.provide_uploading_tapes = FALSE;
- setHideSetupEntry(execOfferUploadTapes);
SaveSetup();
void CheckUploadTapes(void)
{
- if (!setup.provide_uploading_tapes)
- setHideSetupEntry(execOfferUploadTapes);
-
if (!setup.ask_for_uploading_tapes)
return;
{
// if tapes directory does not exist yet, never offer uploading all tapes
setup.provide_uploading_tapes = FALSE;
- setHideSetupEntry(execOfferUploadTapes);
}
// after asking for uploading all tapes once, do not ask again