From 0c0ca95897ba107a288f2974948c95ebff09fca9 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Thu, 4 Feb 2021 16:15:47 +0100 Subject: [PATCH] fixed the 4xStabber and Princess achievements --- achievement.cpp | 25 +++++++++++++++++-------- attack.cpp | 2 +- commandline.cpp | 3 +++ complex.cpp | 6 +++--- 4 files changed, 24 insertions(+), 12 deletions(-) diff --git a/achievement.cpp b/achievement.cpp index cabf156d..97cd96c6 100644 --- a/achievement.cpp +++ b/achievement.cpp @@ -12,6 +12,8 @@ namespace hr { #define NUMLEADER 85 +EX bool test_achievements = false; + EX bool offlineMode = false; EX const char* leadernames[NUMLEADER] = { @@ -132,19 +134,26 @@ EX set got_achievements; EX void achievement_gain_once(const string& s, char flags IS(0)) { LATE(achievement_gain_once(s, flags)); - if(wrongMode(flags)) return; if(got_achievements.count(s)) return; + if(wrongMode(flags)) { + if(test_achievements) println(hlog, "wrong mode for achievement: ", s); + else return; + } got_achievements.insert(s); achievement_gain(s.c_str(), flags); } EX void achievement_log(const char* s, char flags) { -#ifdef PRINT_ACHIEVEMENTS - printf("achievement = %s [%d]\n", s, wrongMode(flags)); -#endif - - if(wrongMode(flags)) return; + if(wrongMode(flags)) { + if(test_achievements) println(hlog, "wrong mode for achievement: ", s); + return; + } + + if(test_achievements) { + println(hlog, "got achievement:", s); + return; + } for(int i=0; i