diff options
author | Colin Noga <Tempus@chronometry.ca> | 2012-09-26 11:51:03 -0500 |
---|---|---|
committer | Colin Noga <Tempus@chronometry.ca> | 2012-09-26 11:51:03 -0500 |
commit | f9afbf1109b30bbc6011e81109b7e11961a4361a (patch) | |
tree | 46883b3ccd9ab82b439c192a657e0632414e906a /src/newer.cpp | |
parent | 3268b1fab87a34897289faa8a1f5ee0679f74e19 (diff) | |
parent | 46b65dfd76411bec6f8356c581f337f8a1944013 (diff) | |
download | kamek-f9afbf1109b30bbc6011e81109b7e11961a4361a.tar.gz kamek-f9afbf1109b30bbc6011e81109b7e11961a4361a.zip |
Merge remote-tracking branch 'origin/new-hud' into level-select
Diffstat (limited to 'src/newer.cpp')
-rw-r--r-- | src/newer.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/newer.cpp b/src/newer.cpp index 6d672e2..2bad8a0 100644 --- a/src/newer.cpp +++ b/src/newer.cpp @@ -1,4 +1,5 @@ #include <newer.h> +#include <game.h> NWRWorld NewerWorldForLevelID(int w, int l) { switch (w) { @@ -75,3 +76,23 @@ const wchar_t *NewerWorldName(NWRWorld world) { return L"Unknown World"; return NewerWorldNames[world]; } + + +int getStarCoinCount() { + SaveBlock *save = GetSaveFile()->GetBlock(-1); + int coinsSpent = save->credits_hiscore; + int coinsEarned = 0; + + for (int w = 0; w < 10; w++) { + for (int l = 0; l < 10; l++) { + u32 conds = save->GetLevelCondition(w, l); + + if (conds & COND_COIN1) { coinsEarned++; } + if (conds & COND_COIN2) { coinsEarned++; } + if (conds & COND_COIN3) { coinsEarned++; } + } + } + + int coinsLeft = coinsEarned - coinsSpent; + return coinsLeft; +} |