Implemented a little screenshot tool.

This commit is contained in:
Zed A. Shaw 2025-07-08 00:55:24 -04:00
parent f64b202ee7
commit 056b0b307b
2 changed files with 14 additions and 0 deletions

View file

@ -361,6 +361,9 @@ namespace gui {
case KEY::X:
event(Event::STAIRS_DOWN);
break;
case KEY::F5:
take_screenshot();
break;
default:
break; // ignored
}
@ -519,6 +522,16 @@ namespace gui {
}
}
void FSM::take_screenshot() {
auto size = $window.getSize();
sf::Texture shot{size};
shot.update($window);
sf::Image out_img = shot.copyToImage();
bool worked = out_img.saveToFile("./screenshot.png");
dbc::check(worked, "Failed to write screenshot.png");
}
void FSM::next_level() {
$levels.create_level($level.world);
$level = $levels.next();

View file

@ -79,5 +79,6 @@ namespace gui {
void handle_world_events();
void next_level();
void debug_render();
void take_screenshot();
};
}