turnbase-simulator 0.1.0

Interactive retroglyph terminal client for the Turnbase engine, over a turnbase-match turn loop
Documentation
//! Interactive human client for [`turnbase`]: a fixed [`retroglyph`](retroglyph_core)
//! terminal dashboard over a [`turnbase_match::Simulator`].
//!
//! The turn loop itself ([`Simulator`], [`PlayerAgent`]) lives in
//! `turnbase-match` and has no rendering in its call path; this crate adds the
//! human-facing layer. [`SimulationRunner`] binds straight to `retroglyph-core`
//! primitives (`Terminal`, `Rect`, `print`) rather than introducing a layout
//! engine or widget abstraction of its own; a game opts in by implementing
//! [`PrintableGame`] and drawing into the rect it is handed.
//!
//! [`Simulator`] and [`PlayerAgent`] are re-exported so a dashboard user builds
//! a match without depending on `turnbase-match` directly.

mod dashboard;
mod session;
mod ui;

#[cfg(feature = "crossterm")]
pub use session::run_session;
pub use session::{BotOption, SessionApp, ismcts_bot, mcts_bot, random_bot, standard_bots};
pub use turnbase_match::{PlayerAgent, Simulator};
#[cfg(feature = "crossterm")]
pub use ui::run;
pub use ui::{PrintableGame, SimulationRunner};