From 79a4a197113cf3541ee7163fab34e411ab109d63 Mon Sep 17 00:00:00 2001 From: Kp Date: Sun, 30 Apr 2017 16:25:16 +0000 Subject: [PATCH] Pass player to init_player_stats_level --- common/main/state.h | 9 +++++---- similar/main/gameseq.cpp | 8 +++----- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/common/main/state.h b/common/main/state.h index 924d9e03a..d9f8c001c 100644 --- a/common/main/state.h +++ b/common/main/state.h @@ -40,6 +40,7 @@ extern unsigned state_game_id; extern int state_quick_item; #ifdef dsx +#include "fwd-player.h" namespace dsx { enum class secret_save @@ -108,10 +109,10 @@ static inline window_event_result StartNewLevelSub(int level_num, int page_in_te { return StartNewLevelSub(level_num, page_in_textures); } -void init_player_stats_level(); -static inline void init_player_stats_level(secret_restore) +void init_player_stats_level(player &, object &); +static inline void init_player_stats_level(player &p, object &o, secret_restore) { - init_player_stats_level(); + init_player_stats_level(p, o); } #elif defined(DXX_BUILD_DESCENT_II) int state_restore_all_sub(const char *filename, secret_restore); @@ -119,7 +120,7 @@ void set_pos_from_return_segment(void); int state_save_all(secret_save, blind_save); int state_restore_all(int in_game, secret_restore, const char *filename_override, blind_save); window_event_result StartNewLevelSub(int level_num, int page_in_textures, secret_restore); -void init_player_stats_level(secret_restore); +void init_player_stats_level(player &, object &, secret_restore); #endif } #endif diff --git a/similar/main/gameseq.cpp b/similar/main/gameseq.cpp index 96c576e4b..0ec0bc16c 100644 --- a/similar/main/gameseq.cpp +++ b/similar/main/gameseq.cpp @@ -345,15 +345,14 @@ extern ubyte Last_afterburner_state; // Setup player for new level (After completion of previous level) #if defined(DXX_BUILD_DESCENT_I) -void init_player_stats_level() +void init_player_stats_level(player &plr, object &plrobj) #elif defined(DXX_BUILD_DESCENT_II) -void init_player_stats_level(const secret_restore secret_flag) +void init_player_stats_level(player &plr, object &plrobj, const secret_restore secret_flag) #endif { #if defined(DXX_BUILD_DESCENT_I) static constexpr tt::integral_constant secret_flag{}; #endif - auto &plr = get_local_player(); plr.level = Current_level_num; @@ -362,7 +361,6 @@ void init_player_stats_level(const secret_restore secret_flag) plr.hours_level = 0; } - auto &plrobj = get_local_plrobj(); auto &player_info = plrobj.ctype.player_info; player_info.mission.last_score = player_info.mission.score; @@ -1616,7 +1614,7 @@ window_event_result StartNewLevelSub(const int level_num, const int page_in_text automap_clear_visited(); - init_player_stats_level(secret_flag); + init_player_stats_level(get_local_player(), get_local_plrobj(), secret_flag); #if defined(DXX_BUILD_DESCENT_I) gr_use_palette_table( "palette.256" );