This commit is contained in:
Zeno Rogue 2024-03-14 20:39:34 +01:00
commit ef936d7b0e
2 changed files with 9 additions and 4 deletions

View File

@ -166,7 +166,7 @@ EX void achievement_gain_once(const string& s, char flags IS(0)) {
namespace rg { namespace rg {
char check(bool b, char val = special_geometry) { return b ? val : fail; } char check(bool b, char val = special_geometry) { return b ? val : fail; }
}; }
EX char specgeom_zebra() { return rg::check(geometry == gZebraQuotient && !disksize && BITRUNCATED && firstland == laDesert); } EX char specgeom_zebra() { return rg::check(geometry == gZebraQuotient && !disksize && BITRUNCATED && firstland == laDesert); }
EX char specgeom_lovasz() { return rg::check(geometry == gKleinQuartic && variation == eVariation::untruncated && gp::param == gp::loc(1,1) && !disksize && in_lovasz()); } EX char specgeom_lovasz() { return rg::check(geometry == gKleinQuartic && variation == eVariation::untruncated && gp::param == gp::loc(1,1) && !disksize && in_lovasz()); }

View File

@ -446,7 +446,7 @@ EX namespace scores {
/** \brief the amount of boxes reserved for each hr::score item */ /** \brief the amount of boxes reserved for each hr::score item */
#define MAXBOX 500 #define MAXBOX 500
/** \brief currently used boxes in hr::score */ /** \brief currently used boxes in hr::score */
#define POSSCORE 410 #define POSSCORE 412
/** \brief a struct to keep local score from an earlier game */ /** \brief a struct to keep local score from an earlier game */
struct score { struct score {
/** \brief version used */ /** \brief version used */
@ -598,17 +598,19 @@ EX void applyBoxes() {
for(int i=0; i<43; i++) { for(int i=0; i<43; i++) {
if(loading) kills[i] = 0; if(loading) kills[i] = 0;
bool fake = (i == moREMOVED || i == moLesserM || i == moTentacletail);
if(i == moWormtail) applyBoxM(moCrystalSage); if(i == moWormtail) applyBoxM(moCrystalSage);
else if(i == moWormwait) applyBoxM(moFireFairy); else if(i == moWormwait) applyBoxM(moFireFairy);
else if(i == moTentacleEscaping) applyBoxM(moMiner); else if(i == moTentacleEscaping) applyBoxM(moMiner);
else if(i == moREMOVED) applyBoxI(itFatigue);
else if(i == moGolemMoved) applyBoxM(moIllusion); else if(i == moGolemMoved) applyBoxM(moIllusion);
else if(i == moTentacletail) applyBoxI(itSnake);
else if(i == moTentaclewait) applyBoxOrb(itOrbThorns); else if(i == moTentaclewait) applyBoxOrb(itOrbThorns);
else if(i == moGreater) applyBoxOrb(itOrbDragon); else if(i == moGreater) applyBoxOrb(itOrbDragon);
else if(i == moGreaterM) applyBoxOrb(itOrbIllusion); else if(i == moGreaterM) applyBoxOrb(itOrbIllusion);
else if(i == moLesserM) applyBoxM(moFriendlyGhost);
else if(i == moWolfMoved) applyBoxM(moWorldTurtle); else if(i == moWolfMoved) applyBoxM(moWorldTurtle);
else if(i == moNone) applyBoxNum(kills[i], "icewalls melted"); else if(i == moNone) applyBoxNum(kills[i], "icewalls melted");
else applyBoxM(eMonster(i), fake); else applyBoxM(eMonster(i));
} }
if(saving) { if(saving) {
@ -949,6 +951,9 @@ EX void applyBoxes() {
applyBoxOrb(itOrbFish); applyBoxOrb(itOrbFish);
list_invorb(); list_invorb();
applyBoxNum(items[itCrossbow]);
applyBoxNum(items[itRevolver]);
if(POSSCORE != boxid) printf("ERROR: %d boxes\n", boxid); if(POSSCORE != boxid) printf("ERROR: %d boxes\n", boxid);
if(isize(invorb)) { println(hlog, "ERROR: Orbs not taken into account"); exit(1); } if(isize(invorb)) { println(hlog, "ERROR: Orbs not taken into account"); exit(1); }
} }