disabled run in non-hyperbolic, implemented in weird hyperbolic, disabled PMC in non-hyperbolic

This commit is contained in:
Zeno Rogue 2017-10-30 10:01:49 +01:00
parent 48361cc5e4
commit d2fc8b41ba
3 changed files with 25 additions and 8 deletions

View File

@ -389,8 +389,8 @@ void showDisplayMode() {
pushScreen(conformal::show);
#if CAP_MODEL
else if(xuni == 'n')
pushScreen(netgen::show);
else if(xuni == 'n')
netgen::run();
#endif
else gmodekeys(sym, uni);

View File

@ -704,6 +704,14 @@ namespace netgen {
popScreen();
};
}
void run() {
if(euclid)
addMessage("Useless in Euclidean geometry.");
else if(sphere)
addMessage("Not implemented for spherical geometry.");
else
pushScreen(show);
}
}
#endif

19
rug.cpp
View File

@ -155,7 +155,7 @@ void buildRug() {
cell *c3 = c->mov[(j+1) % c->type];
rugpoint *w2 = vptr[c3];
if(!w2) continue;
if(c->type == 7) addTriangle(v, w, w2);
if(ctof(c)) addTriangle(v, w, w2);
}
}
@ -659,10 +659,17 @@ hyperpoint gethyper(ld x, ld y) {
void show() {
dialog::init(XLAT("hypersian rug mode"), iinf[itPalace].color, 150, 100);
if(euclid || sphere) {
dialog::addInfo("This makes sense only in hyperbolic geometry.");
dialog::addBreak(50);
}
dialog::addItem(XLAT("what's this?"), 'h');
dialog::addItem(XLAT("take me back"), 'q');
dialog::addItem(XLAT("enable the Hypersian Rug mode"), 'u');
dialog::addBoolItem(XLAT("render the texture only once"), (renderonce), 'o');
dialog::addBoolItem(XLAT("render texture without OpenGL"), (rendernogl), 'g');
dialog::addSelItem(XLAT("texture size"), its(texturesize)+"x"+its(texturesize), 's');
@ -683,10 +690,12 @@ void show() {
"Use arrow keys to rotate, Page Up/Down to zoom."
);
else if(uni == 'u') {
if(sphere) restartGame('E');
if(euclid) restartGame('e');
rug::init();
popScreen();
if(euclid || sphere)
addMessage("This makes sense only in hyperbolic geometry.");
else {
rug::init();
popScreen();
}
}
else if(uni == 'o')
renderonce = !renderonce;