//-------- Begin of function Sys::sp_compare_seed --------// void Sys::sp_compare_seed() { if(file_opened_flag==0) return; long gameSeed, saveSeed; gameSeed = m.get_random_seed(); saveSeed = random_seed_backup_table[random_seed_backup_pos]; if(random_seed_backup_pos>130) int debug = 0; if( gameSeed != saveSeed ) err.run( "Error: random seeds not sync." ); random_seed_backup_pos++; if(random_seed_backup_pos>=random_seed_backup_table_data_size) { sp_close_seed_file(); //debug_seed_status_flag = 0; if(debug_seed_status_flag==DEBUG_SYN_AUTO_LOAD) //debug_seed_status_flag = DENUG_SYN_AUTO_SAVE; // DIK_LBRACKET = 0x1A mouse.add_key_event(0x1A, m.get_time()); // save seed for comparison else debug_seed_status_flag = NO_DEBUG_SYN; } }
//-------- Begin of function Sys::auto_save --------// // void Sys::auto_save() { if( nation_array.player_recno == 0 ) return; //---------- single player auto save ----------// if( !remote.is_enable() && // no auto save in a multiplayer game info.game_month%2==0 && info.game_day==1 && day_frame_count==0) { /* #ifdef DEBUG2 if(1) #else if( sys.debug_session || sys.testing_session ) #endif */ game_file_array.auto_save(); //-*********** syn game test ***********-// #ifdef DEBUG if(debug_seed_status_flag==DEBUG_SYN_AUTO_SAVE) { sp_write_seed(); sp_close_seed_file(); debug_seed_status_flag = NO_DEBUG_SYN; // DIK_BACKSLASH = 0x2B mouse.add_key_event(0x2B, misc.get_time()); // load file for comparison } //debug_seed_status_flag = 2; //sp_seed_pos_reset(); //sp_record_match_seed(); #endif //-*********** syn game test ***********-// } // --------- multiplayer autosave game --------// // ###### patch begin Gilbert 23/1 #######// if( remote.is_enable() && remote.sync_test_level >= 0 && // disable autosave after un-sync day_frame_count==0 && info.game_day==1 && info.game_month%2==0 ) // ###### patch end Gilbert 23/1 #######// { game_file_array.auto_save(); } }