X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.c;h=06c1ac510620b3280a547a9ba2d14d457d567267;hb=f2b5c31430a9feeb0d7bb1aa9e21c2f8a230f548;hp=e13641b9dddb8051d5afa7704bd8a8a60bd9a630;hpb=90f8536de7ebd32951dd44b0a2046a088f8a9c5a;p=rocksndiamonds.git diff --git a/src/files.c b/src/files.c index e13641b9..06c1ac51 100644 --- a/src/files.c +++ b/src/files.c @@ -7763,6 +7763,7 @@ static void setTapeInfoToDefaults(void) tape.scr_fieldx = SCR_FIELDX_DEFAULT; tape.scr_fieldy = SCR_FIELDY_DEFAULT; + tape.no_info_chunk = TRUE; tape.no_valid_file = FALSE; } @@ -7867,6 +7868,8 @@ static int LoadTape_INFO(File *file, int chunk_size, struct TapeInfo *tape) int level_identifier_size; int i; + tape->no_info_chunk = FALSE; + level_identifier_size = getFile16BitBE(file); level_identifier = checked_malloc(level_identifier_size); @@ -9074,11 +9077,13 @@ static void DownloadServerScoreToCacheExt(struct HttpRequest *request, "{\n" "%s" " \"game_version\": \"%s\",\n" + " \"game_platform\": \"%s\",\n" " \"levelset_identifier\": \"%s\",\n" " \"level_nr\": \"%d\"\n" "}\n", getPasswordJSON(setup.api_server_password), getProgramRealVersionString(), + getProgramPlatformString(), levelset.identifier, level_nr); ConvertHttpRequestBodyToServerEncoding(request); @@ -9245,7 +9250,7 @@ static void LoadServerScoreFromCache(int nr) void LoadServerScore(int nr, boolean download_score) { - if (!setup.api_server) + if (!setup.use_api_server) return; // always start with reliable default values @@ -9255,7 +9260,7 @@ void LoadServerScore(int nr, boolean download_score) // (this should prevent reading it while the thread is writing to it) LoadServerScoreFromCache(nr); - if (download_score && runtime.api_server) + if (download_score && runtime.use_api_server) { // 2nd step: download server scores from score server to cache file // (as thread, as it might time out if the server is not reachable) @@ -9340,7 +9345,7 @@ static void UploadScoreToServerExt(struct HttpRequest *request, char *player_name_raw = score_entry->name; char *player_uuid_raw = setup.player_uuid; - if (options.player_name != NULL) + if (options.player_name != NULL && global.autoplay_leveldir != NULL) { player_name_raw = options.player_name; player_uuid_raw = ""; @@ -9358,6 +9363,8 @@ static void UploadScoreToServerExt(struct HttpRequest *request, "{\n" "%s" " \"game_version\": \"%s\",\n" + " \"game_platform\": \"%s\",\n" + " \"batch_time\": \"%d\",\n" " \"levelset_identifier\": \"%s\",\n" " \"levelset_name\": \"%s\",\n" " \"levelset_author\": \"%s\",\n" @@ -9376,6 +9383,8 @@ static void UploadScoreToServerExt(struct HttpRequest *request, "}\n", getPasswordJSON(setup.api_server_password), getProgramRealVersionString(), + getProgramPlatformString(), + (int)global.autoplay_time, levelset_identifier, levelset_name, levelset_author, @@ -9477,7 +9486,7 @@ static void UploadScoreToServerAsThread(int nr, char *score_tape_filename) void SaveServerScore(int nr) { - if (!runtime.api_server) + if (!runtime.use_api_server) return; UploadScoreToServerAsThread(nr, NULL); @@ -9485,7 +9494,7 @@ void SaveServerScore(int nr) void SaveServerScoreFromFile(int nr, char *score_tape_filename) { - if (!runtime.api_server) + if (!runtime.use_api_server) return; UploadScoreToServerAsThread(nr, score_tape_filename); @@ -9500,7 +9509,7 @@ void LoadLocalAndServerScore(int nr, boolean download_score) // restore last added local score entry (before merging server scores) scores.last_added = scores.last_added_local = last_added_local; - if (setup.api_server && !setup.only_show_local_scores) + if (setup.use_api_server && !setup.only_show_local_scores) { // load server scores from cache file and trigger update from server LoadServerScore(nr, download_score); @@ -9758,23 +9767,23 @@ static struct TokenInfo global_setup_tokens[] = }, { TYPE_SWITCH, - &setup.api_server, "api_server" + &setup.use_api_server, TEST_PREFIX "use_api_server" }, { TYPE_STRING, - &setup.api_server_hostname, "api_server_hostname" + &setup.api_server_hostname, TEST_PREFIX "api_server_hostname" }, { TYPE_STRING, - &setup.api_server_password, "api_server_password" + &setup.api_server_password, TEST_PREFIX "api_server_password" }, { TYPE_SWITCH, - &setup.ask_for_uploading_tapes, "ask_for_uploading_tapes" + &setup.ask_for_uploading_tapes, TEST_PREFIX "ask_for_uploading_tapes" }, { TYPE_SWITCH, - &setup.provide_uploading_tapes, "provide_uploading_tapes" + &setup.provide_uploading_tapes, TEST_PREFIX "provide_uploading_tapes" }, { TYPE_STRING, @@ -10412,7 +10421,7 @@ static void setSetupInfoToDefaults(struct SetupInfo *si) si->network_player_nr = 0; // first player si->network_server_hostname = getStringCopy(STR_NETWORK_AUTO_DETECT); - si->api_server = TRUE; + si->use_api_server = TRUE; si->api_server_hostname = getStringCopy(API_SERVER_HOSTNAME); si->api_server_password = getStringCopy(UNDEFINED_PASSWORD); si->ask_for_uploading_tapes = TRUE; @@ -11041,7 +11050,7 @@ void SaveSetup(void) global_setup_tokens[i].value == &setup.graphics_set || global_setup_tokens[i].value == &setup.volume_simple || global_setup_tokens[i].value == &setup.network_mode || - global_setup_tokens[i].value == &setup.api_server || + global_setup_tokens[i].value == &setup.use_api_server || global_setup_tokens[i].value == &setup.touch.control_type || global_setup_tokens[i].value == &setup.touch.grid_xsize[0] || global_setup_tokens[i].value == &setup.touch.grid_xsize[1])