Added 2.7

This commit is contained in:
2022-01-26 00:29:38 +01:00
parent 174ad7ea56
commit 1fe967250e
6 changed files with 192 additions and 12 deletions

View File

@@ -1,3 +1,5 @@
use crate::gamelog::GameLog;
use crate::Name;
use rltk::console;
use specs::prelude::*;
@@ -27,12 +29,21 @@ pub fn delete_the_dead(ecs: &mut World) {
{
let combat_stats = ecs.read_storage::<CombatStats>();
let players = ecs.read_storage::<Player>();
let names = ecs.read_storage::<Name>();
let entities = ecs.entities();
let mut log = ecs.write_resource::<GameLog>();
for (entity, stats) in (&entities, &combat_stats).join() {
if stats.hp < 1 {
let player = players.get(entity);
match player {
None => dead.push(entity),
None => {
let victim_name = names.get(entity);
if let Some(victim_name) = victim_name {
log.entries.push(format!("{} is dead", &victim_name.name));
}
dead.push(entity)
}
Some(_) => console::log("You are dead"),
}
}