mod grid; mod player; mod room; use grid::Grid; use player::Player; use room::Room; #[derive(Debug)] pub struct HouseState { room: Room, //grid: Grid, player: Player } impl Default for HouseState { fn default() -> Self { let room = Room::default(); let player = Player::new(&room); Self { room, player} } } pub fn draw(state: &crate::State, _engine: &comfy::EngineContext<'_>) { //Draw House state.house.room.draw(); //Draw Grid //state.house.grid.draw(); //Draw Player state.house.player.draw(); } pub fn update(state: &mut crate::State, _engine: &mut comfy::EngineContext<'_>) { state.house.player.update(&state.house.room.grid); if state.house.player.is_moving_to_right_room(&state.house.room) { state.house.room = Room::default(); state.house.player.reset_on_room(&state.house.room, true); } else if state.house.player.is_moving_to_left_room(&state.house.room) { state.house.room = Room::default(); state.house.player.reset_on_room(&state.house.room, false); } }