// Setup player for new level (After completion of previous level) void init_player_stats_level(int secret_flag) { (void)secret_flag; // int i; Players[Player_num].last_score = Players[Player_num].score; Players[Player_num].level = Current_level_num; #ifdef NETWORK if (!Network_rejoined) #endif Players[Player_num].time_level = 0; //Note link to above if !!!!!! init_ammo_and_energy(); Players[Player_num].killer_objnum = -1; Players[Player_num].num_kills_level = 0; Players[Player_num].num_robots_level = count_number_of_robots(); Players[Player_num].num_robots_total += Players[Player_num].num_robots_level; Players[Player_num].hostages_level = count_number_of_hostages(); Players[Player_num].hostages_total += Players[Player_num].hostages_level; Players[Player_num].hostages_on_board = 0; Players[Player_num].flags &= (~KEY_BLUE); Players[Player_num].flags &= (~KEY_RED); Players[Player_num].flags &= (~KEY_GOLD); Players[Player_num].flags &= (~PLAYER_FLAGS_INVULNERABLE); Players[Player_num].flags &= (~PLAYER_FLAGS_CLOAKED); Players[Player_num].cloak_time = 0; Players[Player_num].invulnerable_time = 0; if ((Game_mode & GM_MULTI) && !(Game_mode & GM_MULTI_COOP)) Players[Player_num].flags |= (KEY_BLUE | KEY_RED | KEY_GOLD); Player_is_dead = 0; // Added by RH Dead_player_camera = NULL; Players[Player_num].homing_object_dist = -F1_0; // Added by RH // properly init these cursed globals Next_flare_fire_time = Last_laser_fired_time = Next_laser_fire_time = Next_missile_fire_time = GameTime64; init_gauges(); }
// Setup player for new level (After completion of previous level) void init_player_stats_level() { // int i; Players[Player_num].last_score = Players[Player_num].score; Players[Player_num].level = Current_level_num; #ifdef NETWORK if (!Network_rejoined) #endif Players[Player_num].time_level = 0; //Note link to above if !!!!!! init_ammo_and_energy(); Players[Player_num].killer_objnum = -1; Players[Player_num].num_kills_level = 0; Players[Player_num].num_robots_level = count_number_of_robots(); Players[Player_num].num_robots_total += Players[Player_num].num_robots_level; Players[Player_num].hostages_level = count_number_of_hostages(); Players[Player_num].hostages_total += Players[Player_num].hostages_level; Players[Player_num].hostages_on_board = 0; Players[Player_num].flags &= (~KEY_BLUE); Players[Player_num].flags &= (~KEY_RED); Players[Player_num].flags &= (~KEY_GOLD); Players[Player_num].flags &= (~PLAYER_FLAGS_INVULNERABLE); Players[Player_num].flags &= (~PLAYER_FLAGS_CLOAKED); Players[Player_num].cloak_time = 0; Players[Player_num].invulnerable_time = 0; if ((Game_mode & GM_MULTI) && !(Game_mode & GM_MULTI_COOP)) Players[Player_num].flags |= (KEY_BLUE | KEY_RED | KEY_GOLD); Player_is_dead = 0; // Added by RH Players[Player_num].homing_object_dist = -F1_0; // Added by RH Last_laser_fired_time = Next_laser_fire_time = GameTime; // added by RH, solved demo playback bug init_gauges(); }