From c2471743d0c4b5b4dae5c466ca2f60d80f0e3712 Mon Sep 17 00:00:00 2001 From: serxoz Date: Wed, 14 Sep 2022 15:51:25 +0200 Subject: [PATCH] preguntar por nick para configurar jugador --- src/main.rs | 19 +++++++++---------- src/rlib.rs | 28 ++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 10 deletions(-) diff --git a/src/main.rs b/src/main.rs index 88f2aef..34f2c73 100644 --- a/src/main.rs +++ b/src/main.rs @@ -6,7 +6,8 @@ pub mod schema; pub mod models; pub mod database; -use crate::player::Player; +// use crate::player::Player; +use crate::rlib::set_player; fn main() { // intro @@ -24,18 +25,16 @@ fn main() { println!(""); println!(" Bienvenido a Reentrada. Una aventura en el espacio."); println!(""); - println!(""); - println!("Despiertas en la oscuridad con un fuerte dolor de cabeza."); - println!("Un fuerte sonido de alarma machaca tus oídos. No ayuda nada a tu dolor de cabeza."); - println!(""); let mut command = rlib::Command::new(); let mut output: String; - let mut player = Player{ - tag: "player1".to_string() , - name: "manolo".to_string(), - location: "0".to_string() - }; + let mut player = set_player(); + + println!("Bienvenido {}. Vamos a empezar a jugar...", player.name); + println!(""); + println!("Despiertas en la oscuridad con un fuerte dolor de cabeza."); + println!("Un fuerte sonido de alarma machaca tus oídos. No ayuda nada a tu dolor de cabeza."); + println!("Qué vas a hacer?"); // main loop while command.verb != "salir" { diff --git a/src/rlib.rs b/src/rlib.rs index 06be803..f62203e 100644 --- a/src/rlib.rs +++ b/src/rlib.rs @@ -23,6 +23,34 @@ impl Command { } } +pub fn set_player() -> Player { + // prompt + println!(""); + println!("Cuál es tu nombre?"); + print!("> "); + io::stdout().flush().unwrap(); + + let mut input_str = String::new(); + + io::stdin() + .read_line(&mut input_str) + .expect("Error leyendo..."); + println!(""); + + // parse + let nick = input_str.trim(); + + // instance player + let player = Player{ + tag: "player1".to_string() , + name: nick.to_string(), + location: "0".to_string() + }; + + // return + player +} + pub fn get_input() -> Command { // prompt println!("");