for changes to add messages
This commit is contained in:
41
src/main.rs
41
src/main.rs
@@ -18,7 +18,6 @@ use whoami::realname;
|
||||
|
||||
use crate::game::{Game, GameState};
|
||||
use crate::level_widget::LevelWidget;
|
||||
// use crate::level_widget::LevelWidget;
|
||||
use crate::player::Player;
|
||||
use crate::position::HasPosition;
|
||||
|
||||
@@ -87,20 +86,48 @@ fn main() -> Result<()> {
|
||||
x: area.x + 50,
|
||||
y: area.y,
|
||||
width: 30,
|
||||
height: 25,
|
||||
height: 15,
|
||||
};
|
||||
let block = Block::default()
|
||||
.title(
|
||||
Title::from(
|
||||
format!(" {} ", game.get_player().get_name()))
|
||||
.alignment(Alignment::Center)
|
||||
.position(Position::Top)
|
||||
)
|
||||
.borders(Borders::TOP)
|
||||
.border_style(Style::default().fg(Color::White))
|
||||
.border_type(BorderType::Rounded)
|
||||
.style(Style::default().bg(Color::Blue));
|
||||
frame.render_widget(
|
||||
Paragraph::new(format!("{}\nHealth: {}/{}\nExp: {}\nGold: {}\nLevel: {}",
|
||||
game.get_player().get_name(),
|
||||
Paragraph::new(format!("Health: {}/{}\nExp: {}\nGold: {}\nLevel: {}",
|
||||
game.get_player().get_life(),
|
||||
game.get_player().get_max_life(),
|
||||
game.get_player().get_experience(),
|
||||
game.get_player().get_gold(),
|
||||
game.get_player().get_immutable_position().get_level()))
|
||||
.white()
|
||||
.on_blue(),
|
||||
.block(block).wrap(Wrap { trim: true }),
|
||||
stats_area,
|
||||
);
|
||||
let messages_area = Rect {
|
||||
x: area.x + 50,
|
||||
y: area.y + 15,
|
||||
width: 30,
|
||||
height: 10,
|
||||
};
|
||||
// Display the latest messages from the game to the user
|
||||
let block = Block::default()
|
||||
.title(Title::from(" messages ").alignment(Alignment::Center).position(Position::Top))
|
||||
.borders(Borders::TOP)
|
||||
.border_style(Style::default().fg(Color::White))
|
||||
.border_type(BorderType::Rounded)
|
||||
.style(Style::default().bg(Color::Blue));
|
||||
|
||||
let paragraph1 = if game.messages.is_empty() { "".to_string() } else { format!("> {}", game.messages.join("\n> ")) };
|
||||
frame.render_widget(
|
||||
Paragraph::new(paragraph1).block(block).wrap(Wrap { trim: true }),
|
||||
messages_area,
|
||||
);
|
||||
})?;
|
||||
if event::poll(std::time::Duration::from_millis(FRAME_LENGTH))? {
|
||||
if let event::Event::Key(key) = event::read()? {
|
||||
@@ -140,7 +167,7 @@ fn main() -> Result<()> {
|
||||
area.width = 40;
|
||||
area.height = 20;
|
||||
let block = Block::default()
|
||||
.title("Game ended")
|
||||
.title(Title::from(" Game ended ").alignment(Alignment::Center).position(Position::Top))
|
||||
.title(Title::from("Press `q` to quit!").position(Position::Bottom))
|
||||
.borders(Borders::ALL)
|
||||
.border_style(Style::default().fg(Color::White))
|
||||
|
||||
Reference in New Issue
Block a user