limit inventory to 10 slots
This commit is contained in:
parent
2b8f7eebba
commit
5949b2a2d6
|
@ -93,10 +93,11 @@ impl Artifact for Potion {
|
||||||
);
|
);
|
||||||
self.health = 0;
|
self.health = 0;
|
||||||
self.was_collected = true;
|
self.was_collected = true;
|
||||||
} else {
|
} else if player.add_to_inventory(self) {
|
||||||
messages.insert(0, "move potion to inventory.".to_string());
|
messages.insert(0, "move potion to inventory.".to_string());
|
||||||
player.add_to_inventory(self);
|
|
||||||
self.was_collected = true;
|
self.was_collected = true;
|
||||||
|
} else {
|
||||||
|
messages.insert(0, "inventory is full.".to_string());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -103,7 +103,7 @@ fn main() -> Result<()> {
|
||||||
.style(Style::default().bg(Color::Blue));
|
.style(Style::default().bg(Color::Blue));
|
||||||
frame.render_widget(
|
frame.render_widget(
|
||||||
Paragraph::new(format!(
|
Paragraph::new(format!(
|
||||||
"Health: {}/{}\nExp: {}\nGold: {}\nLevel: {}\nInventory: {}",
|
"Health: {}/{}\nExp: {}\nGold: {}\nLevel: {}\nInventory: {}/10",
|
||||||
game.get_player().get_life(),
|
game.get_player().get_life(),
|
||||||
game.get_player().get_max_life(),
|
game.get_player().get_max_life(),
|
||||||
game.get_player().get_experience(),
|
game.get_player().get_experience(),
|
||||||
|
|
|
@ -69,8 +69,13 @@ impl Player {
|
||||||
rand::thread_rng().gen_range(1..4)
|
rand::thread_rng().gen_range(1..4)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn add_to_inventory(&mut self, potion: &Potion) {
|
pub fn add_to_inventory(&mut self, potion: &Potion) -> bool {
|
||||||
self.inventory.push(*potion);
|
if self.inventory.len() < 10 {
|
||||||
|
self.inventory.push(*potion);
|
||||||
|
true
|
||||||
|
} else {
|
||||||
|
false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn inventory_size(&self) -> usize {
|
pub fn inventory_size(&self) -> usize {
|
||||||
|
|
Loading…
Reference in New Issue