1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-11-04 15:53:00 +00:00

rogueviz:: used rv_hook in some viz

This commit is contained in:
Zeno Rogue
2021-03-31 00:23:01 +02:00
parent 19a1358607
commit 73c5b5e881
5 changed files with 123 additions and 112 deletions

View File

@@ -11,6 +11,8 @@ namespace rogueviz {
namespace sag {
bool turn(int delta);
int sag_id;
int sagpar = 0;
@@ -421,6 +423,18 @@ namespace sag {
void read(string fn) {
fname = fn;
init(&sag_id, RV_GRAPH | RV_WHICHWEIGHT | RV_AUTO_MAXWEIGHT | RV_HAVE_WEIGHT);
rv_hook(rogueviz::hooks_close, 100, [] { sag::sagedges.clear(); });
rv_hook(shmup::hooks_turn, 100, turn);
rv_hook(rogueviz::hooks_rvmenu, 100, [] {
dialog::addSelItem(XLAT("temperature"), fts(sag::temperature), 't');
dialog::add_action([] {
dialog::editNumber(sag::temperature, sag::lowtemp, sag::hightemp, 1, 0, XLAT("temperature"), "");
});
dialog::addSelItem(XLAT("SAG mode"), sag::sagmodes[sag::sagmode], 'm');
dialog::add_action([] { sag::sagmode = sag::eSagmode( (1+sag::sagmode) % 3 ); });
});
weight_label = "min weight";
temperature = 0; sagmode = sagOff;
readsag(fname.c_str());
@@ -537,7 +551,6 @@ int readArgs() {
}
bool turn(int delta) {
if(vizid == &sag_id) sag::iterate(), timetowait = 0;
return false;
// shmup::pc[0]->rebase();
}
@@ -549,17 +562,6 @@ string cname() {
}
int ah = addHook(hooks_args, 100, readArgs)
+ addHook(shmup::hooks_turn, 100, turn)
+ addHook(rogueviz::hooks_close, 100, [] { sag::sagedges.clear(); })
+ addHook(rogueviz::hooks_rvmenu, 100, [] {
if(vizid != &sag_id) return;
dialog::addSelItem(XLAT("temperature"), fts(sag::temperature), 't');
dialog::add_action([] {
dialog::editNumber(sag::temperature, sag::lowtemp, sag::hightemp, 1, 0, XLAT("temperature"), "");
});
dialog::addSelItem(XLAT("SAG mode"), sag::sagmodes[sag::sagmode], 'm');
dialog::add_action([] { sag::sagmode = sag::eSagmode( (1+sag::sagmode) % 3 ); });
})
+ addHook(pres::hooks_build_rvtour, 120, [] (string s, vector<tour::slide>& v) {
if(s != "data") return;
using namespace pres;