1 unstable release
0.1.0 | Jul 15, 2022 |
---|
#1304 in Game dev
14KB
257 lines
playt (play with the terminal)
read like plate, playt with fun
Hello, World!
// in examples/hello.rs
use pancurses::Input;
use playt::prelude::*;
fn main() {
let mut game = Game::with_colors(())
.expect("couldn't initialize with colors");
let mut stage = Stage::new(())
.clear_on_resize(true)
.draw(|_, _, win| -> Result<(), ()> {
win.with_attr(color::GREEN_ON_BLACK, |win| {
let greeting = "Hello, World!";
win.mvprintw(win.get_mid_y(0), win.get_mid_x(greeting.len() as i32), greeting);
});
Ok(())
})
.update(|game, _, input| {
if let Some(Input::Character('q')) = input {
game.stop();
}
Ok(())
})
.build();
while game.is_running() {
game.perform(&mut stage).unwrap();
}
}
Result:
Dependencies
~0.2–1MB
~19K SLoC