mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-12-29 11:30:35 +00:00
moved the remaining slides away from rogueviz.cpp
This commit is contained in:
parent
505046e32f
commit
4384f65962
@ -553,6 +553,46 @@ int readArgs() {
|
||||
|
||||
auto hook = addHook(hooks_args, 100, readArgs)
|
||||
+ addHook(hooks_initgame, 100, bantar)
|
||||
+ addHook(hooks_frame, 100, bantar_stats);
|
||||
+ addHook(hooks_frame, 100, bantar_stats)
|
||||
+ addHook(rvtour::hooks_build_rvtour, 100, [] (vector<tour::slide>& v) {
|
||||
using namespace rvtour;
|
||||
v.push_back(
|
||||
tour::slide{"Banach-Tarski-like", 62, LEGAL::NONE,
|
||||
"Banach-Tarski-like decomposition. Break a hyperbolic plane into two hyperbolic planes.\n\n"
|
||||
"Press '5' to show the decomposition. Press any key to stop.\n\n"
|
||||
"You will see a map of the decomposition. Press '5' again to return.",
|
||||
|
||||
[] (presmode mode) {
|
||||
slidecommand = "Banach-Tarski switch";
|
||||
if(mode == 3) {
|
||||
while(gamestack::pushed()) stop_game(), gamestack::pop();
|
||||
banachtarski::bmap = false;
|
||||
banachtarski::on = false;
|
||||
}
|
||||
if(mode == 4) {
|
||||
if(!banachtarski::on) {
|
||||
bool b = mapeditor::drawplayer;
|
||||
specialland = cwt.at->land;
|
||||
gamestack::push();
|
||||
banachtarski::init_bantar();
|
||||
airmap.clear();
|
||||
dynamicval<int> vs(sightrange_bonus, 3);
|
||||
dynamicval<int> vg(genrange_bonus, 3);
|
||||
doOvergenerate();
|
||||
banachtarski::bantar_anim();
|
||||
quitmainloop = false;
|
||||
mapeditor::drawplayer = b;
|
||||
banachtarski::init_bantar_map();
|
||||
resetview();
|
||||
}
|
||||
else if(banachtarski::on && banachtarski::bmap) {
|
||||
banachtarski::bmap = false;
|
||||
banachtarski::on = false;
|
||||
gamestack::pop();
|
||||
}
|
||||
}
|
||||
}}
|
||||
);
|
||||
});
|
||||
|
||||
}}
|
||||
|
@ -344,7 +344,29 @@ bool handleKey(int sym, int uni) {
|
||||
auto xhook = addHook(hooks_args, 100, readArgs)
|
||||
+ addHook(hooks_handleKey, 0, handleKey)
|
||||
+ addHook(hooks_prestats, 0, frame)
|
||||
+ addHook(clearmemory, 40, [] () { snubon = false; } );
|
||||
+ addHook(clearmemory, 40, [] () { snubon = false; } )
|
||||
+ addHook(rvtour::hooks_build_rvtour, 100, [] (vector<tour::slide>& v) {
|
||||
using namespace tour;
|
||||
v.push_back(
|
||||
tour::slide{"Pentagonal Exploration", 62, LEGAL::NONE | QUICKGEO,
|
||||
"Pentagonal Exploration explained at: http://www.roguetemple.com/z/sims/snub/\n\n"
|
||||
"Move the mouse nearer and further away from the X.\n\n"
|
||||
"Press 3 4 5 6 7 8 9 shift+4 shift+5 shift+6 to change the geometry.",
|
||||
|
||||
[] (presmode mode) {
|
||||
if(mode == 1) {
|
||||
pentagonal::run_snub(5, 3);
|
||||
}
|
||||
if(mode == 3) {
|
||||
printf("stopping\n");
|
||||
set_geometry(gNormal);
|
||||
set_variation(eVariation::bitruncated);
|
||||
rug::close();
|
||||
start_game();
|
||||
}
|
||||
}}
|
||||
);
|
||||
});
|
||||
|
||||
}
|
||||
#endif
|
||||
|
@ -1416,83 +1416,6 @@ vector<slide> rvslides_default = {
|
||||
if(mode == 3) patPalace.color = 0xFFD50000;
|
||||
}
|
||||
},
|
||||
{"Tree of Life", 61, LEGAL::UNLIMITED | QUICKGEO,
|
||||
"Not described.",
|
||||
|
||||
roguevizslide('0', [] () {
|
||||
|
||||
rogueviz::dftcolor = 0x206020FF;
|
||||
|
||||
rogueviz::showlabels = true;
|
||||
|
||||
rogueviz::on = true;
|
||||
gmatrix.clear();
|
||||
drawthemap();
|
||||
gmatrix0 = gmatrix;
|
||||
|
||||
rogueviz::tree::read(RVPATH "treeoflife/tol.txt");
|
||||
})},
|
||||
{"Spiral Staircase", 62, LEGAL::NONE | QUICKGEO,
|
||||
"Spiral Staircase Demo. Press '5' to change the curvature or other parameters.",
|
||||
|
||||
[] (presmode mode) {
|
||||
if(mode == 1) staircase::make_staircase();
|
||||
if(mode == 3) rug::close();
|
||||
slidecommand = "staircase menu";
|
||||
if(mode == 4) pushScreen(staircase::showMenu);
|
||||
}},
|
||||
{"Banach-Tarski-like", 62, LEGAL::NONE,
|
||||
"Banach-Tarski-like decomposition. Break a hyperbolic plane into two hyperbolic planes.\n\n"
|
||||
"Press '5' to show the decomposition. Press any key to stop.\n\n"
|
||||
"You will see a map of the decomposition. Press '5' again to return.",
|
||||
|
||||
[] (presmode mode) {
|
||||
slidecommand = "staircase menu";
|
||||
if(mode == 3) {
|
||||
while(gamestack::pushed()) stop_game(), gamestack::pop();
|
||||
banachtarski::bmap = false;
|
||||
banachtarski::on = false;
|
||||
}
|
||||
if(mode == 4) {
|
||||
if(!banachtarski::on) {
|
||||
bool b = mapeditor::drawplayer;
|
||||
specialland = cwt.at->land;
|
||||
gamestack::push();
|
||||
banachtarski::init_bantar();
|
||||
airmap.clear();
|
||||
dynamicval<int> vs(sightrange_bonus, 3);
|
||||
dynamicval<int> vg(genrange_bonus, 3);
|
||||
doOvergenerate();
|
||||
banachtarski::bantar_anim();
|
||||
quitmainloop = false;
|
||||
mapeditor::drawplayer = b;
|
||||
banachtarski::init_bantar_map();
|
||||
resetview();
|
||||
}
|
||||
else if(banachtarski::on && banachtarski::bmap) {
|
||||
banachtarski::bmap = false;
|
||||
banachtarski::on = false;
|
||||
gamestack::pop();
|
||||
}
|
||||
}
|
||||
}},
|
||||
{"Pentagonal Exploration", 62, LEGAL::NONE | QUICKGEO,
|
||||
"Pentagonal Exploration explained at: http://www.roguetemple.com/z/sims/snub/\n\n"
|
||||
"Move the mouse nearer and further away from the X.\n\n"
|
||||
"Press 3 4 5 6 7 8 9 shift+4 shift+5 shift+6 to change the geometry.",
|
||||
|
||||
[] (presmode mode) {
|
||||
if(mode == 1) {
|
||||
pentagonal::run_snub(5, 3);
|
||||
}
|
||||
if(mode == 3) {
|
||||
printf("stopping\n");
|
||||
set_geometry(gNormal);
|
||||
set_variation(eVariation::bitruncated);
|
||||
rug::close();
|
||||
start_game();
|
||||
}
|
||||
}},
|
||||
};
|
||||
|
||||
int rvtour_hooks =
|
||||
|
@ -346,6 +346,20 @@ int readArgs() {
|
||||
#endif
|
||||
|
||||
int phooks = addHook(hooks_args, 100, readArgs)
|
||||
+ addHook(hooks_fixticks, 100, check);
|
||||
+ addHook(hooks_fixticks, 100, check)
|
||||
+ addHook(rvtour::hooks_build_rvtour, 100, [] (vector<tour::slide>& v) {
|
||||
using namespace tour;
|
||||
v.push_back(
|
||||
tour::slide{"Spiral Staircase", 62, LEGAL::NONE | QUICKGEO,
|
||||
"Spiral Staircase Demo. Press '5' to change the curvature or other parameters.",
|
||||
|
||||
[] (presmode mode) {
|
||||
if(mode == 1) staircase::make_staircase();
|
||||
if(mode == 3) rug::close();
|
||||
slidecommand = "staircase menu";
|
||||
if(mode == 4) pushScreen(staircase::showMenu);
|
||||
}}
|
||||
);
|
||||
});
|
||||
|
||||
}}
|
||||
|
@ -119,7 +119,28 @@ int readArgs() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ah = addHook(hooks_args, 100, readArgs);
|
||||
int ah = addHook(hooks_args, 100, readArgs)
|
||||
+ addHook(rvtour::hooks_build_rvtour, 100, [] (vector<tour::slide>& v) {
|
||||
using namespace rvtour;
|
||||
v.push_back(
|
||||
tour::slide{"Tree of Life", 61, LEGAL::UNLIMITED | QUICKGEO,
|
||||
"Not described.",
|
||||
|
||||
roguevizslide('0', [] () {
|
||||
|
||||
rogueviz::dftcolor = 0x206020FF;
|
||||
|
||||
rogueviz::showlabels = true;
|
||||
|
||||
rogueviz::on = true;
|
||||
gmatrix.clear();
|
||||
drawthemap();
|
||||
gmatrix0 = gmatrix;
|
||||
|
||||
rogueviz::tree::read(RVPATH "treeoflife/tol.txt");
|
||||
})}
|
||||
);
|
||||
});
|
||||
#endif
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user