Start the refactor of FSM::handle_world_events.
This commit is contained in:
parent
e4d6bf4854
commit
a58439a289
1 changed files with 12 additions and 15 deletions
|
|
@ -75,6 +75,7 @@ namespace gui {
|
|||
}
|
||||
|
||||
void FSM::ATTACKING(Event ev, std::any data) {
|
||||
// BUG: the way this locks animations is weird
|
||||
if(!$main_ui.hands_playing()) {
|
||||
// run combat one more time
|
||||
$systems.runCombat(0);
|
||||
|
|
@ -426,13 +427,6 @@ namespace gui {
|
|||
$main_ui.dirty();
|
||||
run_systems();
|
||||
} break;
|
||||
case eGUI::LOOT_CLOSE:
|
||||
// BUG: need to resolve GUI events vs. FSM events better
|
||||
event(Event::LOOT_OPEN);
|
||||
break;
|
||||
case eGUI::LOOT_SELECT:
|
||||
event(Event::LOOT_SELECT, data);
|
||||
break;
|
||||
case eGUI::INV_SELECT: {
|
||||
if($router.left_button) {
|
||||
event(Event::INV_SELECT, data);
|
||||
|
|
@ -440,8 +434,8 @@ namespace gui {
|
|||
event(Event::USE_ITEM, data);
|
||||
}
|
||||
} break;
|
||||
case eGUI::AIM_CLICK:
|
||||
event(Event::AIM_CLICK);
|
||||
case eGUI::STAIRS_DOWN:
|
||||
event(Event::BOSS_START);
|
||||
break;
|
||||
case eGUI::LOOT_ITEM: {
|
||||
dbc::check(world->has<components::InventoryItem>(entity),
|
||||
|
|
@ -460,12 +454,6 @@ namespace gui {
|
|||
case eGUI::NEW_RITUAL:
|
||||
$combat_ui.init(COMBAT_UI_X, COMBAT_UI_Y, COMBAT_UI_WIDTH, COMBAT_UI_HEIGHT);
|
||||
break;
|
||||
case eGUI::ATTACK:
|
||||
event(Event::ATTACK, data);
|
||||
break;
|
||||
case eGUI::STAIRS_DOWN:
|
||||
event(Event::BOSS_START);
|
||||
break;
|
||||
case eGUI::DEATH: {
|
||||
$status_ui.update();
|
||||
if(entity != player.entity) {
|
||||
|
|
@ -480,6 +468,15 @@ namespace gui {
|
|||
$map_ui.log($F(L"NOOP EVENT! {},{}", evt, entity));
|
||||
}
|
||||
} break;
|
||||
|
||||
|
||||
case eGUI::AIM_CLICK:
|
||||
case eGUI::LOOT_SELECT:
|
||||
case eGUI::LOOT_CLOSE:
|
||||
case eGUI::ATTACK:
|
||||
// BUG: need to resolve GUI events vs. FSM events better
|
||||
event(Event(evt), data);
|
||||
break;
|
||||
default:
|
||||
dbc::log($F("Unhandled event: evt={}; enemy={}; data={}",
|
||||
evt, entity, data.type().name()));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue