1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
use board::Board; use player::Player; use rand::{thread_rng, Rng}; pub const DIE_MAX: u8 = 6; pub type Die = u8; pub type Dice = (Die, Die); pub fn roll_die() -> u8 { thread_rng().gen_range::<u8>(0, DIE_MAX) + 1 } pub fn roll_dice() -> (u8, u8) { (roll_die(), roll_die()) } #[derive(Clone)] pub struct Game { board: Board, dice: Dice, turn: Player, } impl Game { pub fn init() -> Game { Game { board: Board::init(), dice: (0, 0).into(), turn: Player::White, } } }