Now have hotkeys to test the different start/end conditions.

This commit is contained in:
Zed A. Shaw 2026-04-02 23:23:57 -04:00
parent 17f05e7093
commit 279faf6dd5
3 changed files with 29 additions and 16 deletions

View file

@ -143,6 +143,7 @@ namespace gui {
mouse_action({1 << guecs::ModBit::hover});
} break;
case START:
next_level();
close_scene();
state(State::IDLE);
break;
@ -371,15 +372,19 @@ namespace gui {
$debug_ui.debug();
shaders::reload();
break;
case KEY::L:
// This will go away as soon as containers work
$loot_ui.set_target($loot_ui.$temp_loot);
$loot_ui.update();
event(Event::LOOT_OPEN);
case KEY::X:
show_scene("NEXT_LEVEL");
state(State::NEXT_LEVEL_SCENE);
break;
case KEY::Z:
$main_ui.toggle_mind_reading();
break;
case KEY::K:
player_died();
break;
case KEY::N:
player_won();
break;
case KEY::F5:
take_screenshot();
break;
@ -400,10 +405,6 @@ namespace gui {
}
void FSM::draw_gui() {
if($debug_ui.active) {
debug_render();
}
if($cur_scene != nullptr) {
$cur_scene->render($window);
} else {
@ -411,6 +412,10 @@ namespace gui {
$status_ui.render($window);
if($loot_ui.active) $loot_ui.render($window);
if(in_state(State::LOOTING)) $dnd_loot.render();
if($debug_ui.active) {
debug_render();
}
}
}
@ -508,8 +513,7 @@ namespace gui {
if(entity != player.entity) {
$main_ui.dead_entity(entity);
} else {
show_scene("DEATH");
state(State::DEATH_SCENE);
player_died();
}
} break;
case eGUI::NOOP: {
@ -552,4 +556,14 @@ namespace gui {
void FSM::close_scene() {
$cur_scene = nullptr;
}
void FSM::player_died() {
show_scene("DEATH");
state(State::DEATH_SCENE);
}
void FSM::player_won() {
show_scene("WIN");
state(State::WIN_SCENE);
}
}