mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-10 15:59:53 +00:00
Hyperstone-optional lands are now clearly marked in the Overview, and the Hunting Grounds and Galapagos are now optional in Euclidean
This commit is contained in:
parent
2acf7b572c
commit
beb3a06461
9
help.cpp
9
help.cpp
@ -289,6 +289,8 @@ string forbidden_unmarked() {
|
|||||||
return XLAT("When the 'mark heptagons' option (hotkey '7') is on, moves between unmarked cells are forbidden.");
|
return XLAT("When the 'mark heptagons' option (hotkey '7') is on, moves between unmarked cells are forbidden.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
string hyperstone_optional = "Completing the quest in this land is not necessary for the Hyperstone Quest.";
|
||||||
|
|
||||||
EX string generateHelpForItem(eItem it) {
|
EX string generateHelpForItem(eItem it) {
|
||||||
|
|
||||||
string help = helptitle(XLATN(iinf[it].name), iinf[it].color);
|
string help = helptitle(XLATN(iinf[it].name), iinf[it].color);
|
||||||
@ -465,6 +467,9 @@ EX string generateHelpForItem(eItem it) {
|
|||||||
help += "\n\n" + XLAT(inv::helptext);
|
help += "\n\n" + XLAT(inv::helptext);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if(in_full_game() && !required_for_hyperstones(it) && it != itHyperstone)
|
||||||
|
help += "\n\n" + XLAT(hyperstone_optional);
|
||||||
|
|
||||||
#if CAP_DAILY
|
#if CAP_DAILY
|
||||||
if(daily::on && it == itOrbLove)
|
if(daily::on && it == itOrbLove)
|
||||||
help += "\n\n" + XLAT("The Orb of Love gives no bonus score in the Strange Challenge.");
|
help += "\n\n" + XLAT("The Orb of Love gives no bonus score in the Strange Challenge.");
|
||||||
@ -642,8 +647,8 @@ string generateHelpForLand(eLand l) {
|
|||||||
if(isPureSealand(l))
|
if(isPureSealand(l))
|
||||||
s += XLAT("Aquatic region -- accessible only from coastal regions and other aquatic regions.\n");
|
s += XLAT("Aquatic region -- accessible only from coastal regions and other aquatic regions.\n");
|
||||||
|
|
||||||
if(l == laCamelot || l == laPrincessQuest)
|
if(in_full_game() && !required_for_hyperstones(treasureType(l)) && !isCrossroads(l))
|
||||||
s += XLAT("Completing the quest in this land is not necessary for the Hyperstone Quest.");
|
s += XLAT(hyperstone_optional);
|
||||||
|
|
||||||
int rl = isRandland(l);
|
int rl = isRandland(l);
|
||||||
if(rl == 2)
|
if(rl == 2)
|
||||||
|
17
landlock.cpp
17
landlock.cpp
@ -120,14 +120,23 @@ EX bool landUnlocked(eLand l) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EX bool required_for_hyperstones(eItem ttype) {
|
||||||
|
if(ttype == itHyperstone)
|
||||||
|
return false;
|
||||||
|
if(among(ttype, itHolyGrail, itSavedPrincess))
|
||||||
|
return false;
|
||||||
|
if(euclid && among(ttype, itBabyTortoise, itHunting))
|
||||||
|
return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
EX void countHyperstoneQuest(int& i1, int& i2) {
|
EX void countHyperstoneQuest(int& i1, int& i2) {
|
||||||
i1 = 0; i2 = 0;
|
i1 = 0; i2 = 0;
|
||||||
generateLandList(isLandIngame);
|
generateLandList(isLandIngame);
|
||||||
for(eLand l: landlist) if(l != laCamelot && l != laPrincessQuest) {
|
for(eLand l: landlist) {
|
||||||
eItem ttype = treasureType(l);
|
eItem ttype = treasureType(l);
|
||||||
if(ttype != itHyperstone) {
|
if(!required_for_hyperstones(ttype)) continue;
|
||||||
i2++; if(items[ttype] >= R10) i1++;
|
i2++; if(items[ttype] >= R10) i1++;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -109,7 +109,7 @@ EX void showOverview() {
|
|||||||
else if(items[it]) col = 0xC0C0C0;
|
else if(items[it]) col = 0xC0C0C0;
|
||||||
else col = BLACKISH;
|
else col = BLACKISH;
|
||||||
int c8 = (vf+2)/3;
|
int c8 = (vf+2)/3;
|
||||||
if(displayfrZH(xr*24-c8*6, i0, 1, vf-4, its(items[it]), col, 16))
|
if(displayfrZH(xr*24-c8*6, i0, 1, vf-4, (required_for_hyperstones(it) ? "" : "*") + its(items[it]), col, 16))
|
||||||
getcstat = 2000+it;
|
getcstat = 2000+it;
|
||||||
if(!cheater)
|
if(!cheater)
|
||||||
if(displayfrZH(xr*24, i0, 1, vf-4, its(hiitems[modecode()][it]), col, 16))
|
if(displayfrZH(xr*24, i0, 1, vf-4, its(hiitems[modecode()][it]), col, 16))
|
||||||
|
Loading…
Reference in New Issue
Block a user