|
|
@ -45,27 +45,26 @@ namespace gui { |
|
|
|
$overlay_ui.render($window); |
|
|
|
$overlay_ui.render($window); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void MainUI::health_low() { |
|
|
|
|
|
|
|
$overlay_ui.show_sprite("middle", "blood_splatter"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
lel::Cell MainUI::overlay_cell(const std::string& name) { |
|
|
|
lel::Cell MainUI::overlay_cell(const std::string& name) { |
|
|
|
return $overlay_ui.$gui.cell_for(name); |
|
|
|
return $overlay_ui.$gui.cell_for(name); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
bool MainUI::play_rotate() { |
|
|
|
std::optional<Point> MainUI::play_rotate() { |
|
|
|
bool done = $rayview.play_rotate(); |
|
|
|
if($rayview.play_rotate()) { |
|
|
|
$needs_render = !done; |
|
|
|
$needs_render = false; |
|
|
|
|
|
|
|
return std::make_optional<Point>($rayview.aiming_at); |
|
|
|
return done; |
|
|
|
} else { |
|
|
|
|
|
|
|
$needs_render = true; |
|
|
|
|
|
|
|
return std::nullopt; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
std::optional<Point> MainUI::play_move() { |
|
|
|
std::optional<components::Position> MainUI::play_move() { |
|
|
|
if($rayview.play_move()) { |
|
|
|
if($rayview.play_move()) { |
|
|
|
$needs_render = false; |
|
|
|
$needs_render = false; |
|
|
|
return std::make_optional<Point>( |
|
|
|
return std::make_optional<Position>( |
|
|
|
$rayview.camera_target()); |
|
|
|
$rayview.camera_target(), |
|
|
|
|
|
|
|
$rayview.aiming_at); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
$needs_render = true; |
|
|
|
$needs_render = true; |
|
|
|
return std::nullopt; |
|
|
|
return std::nullopt; |
|
|
@ -104,6 +103,9 @@ namespace gui { |
|
|
|
$rayview.update_level($level); |
|
|
|
$rayview.update_level($level); |
|
|
|
$rayview.position_camera(player.x + 0.5, player.y + 0.5); |
|
|
|
$rayview.position_camera(player.x + 0.5, player.y + 0.5); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// BUG #57: I think this is in the wrong direction?
|
|
|
|
|
|
|
|
player_position.aiming_at = $rayview.aiming_at; |
|
|
|
|
|
|
|
|
|
|
|
$compass_dir = 0; |
|
|
|
$compass_dir = 0; |
|
|
|
|
|
|
|
|
|
|
|
$overlay_ui.update_level(level); |
|
|
|
$overlay_ui.update_level(level); |
|
|
|