Crate rust_warrior

Source
Expand description

§Rust Warrior

A textual turn-based AI game for learning Rust, based on Ruby Warrior.

You will progress through levels controlling the Warrior, by deciding which action to take based on the surroundings. These decisions will be defined with Rust code in the play_turn method of Player.

§A Note About Rust vs Ruby

There are some notable differences between this game and Ruby Warrior. Since Ruby is an interpreted language, Ruby Warrior is played by interacting with a player.rb script which controls the warrior. The rubywarrior command then leverages the Ruby interpreter to run that script. In the Rust version, you will generate a Rust project which includes rust-warrior as a dependency in its Cargo.toml file. The Game is then imported. To run it, you simply use cargo run like in any other Rust project.

Re-exports§

pub use actions::Direction;
pub use floor::Tile;
pub use game::Game;
pub use player::Player;
pub use unit::UnitType;
pub use warrior::Warrior;

Modules§

actions
actions the player can instruct the Warrior to take
engine
The game engine
floor
contains types that represent the topology of a level
game
where it all starts
player
contains the trait exposed to the player for controlling the Warrior
profile
contains the struct for saving player name and current level
starter
contains some methods for generating the game files
ui
contains some helper functions for prompting input from the player
unit
contains types that represent units that appear in the game
warrior
contains the interface exposed to the player for controlling the Warrior