summaryrefslogtreecommitdiff
path: root/src/systems/attacking.rs
diff options
context:
space:
mode:
authortroido <troido@protonmail.com>2020-04-21 09:08:19 +0200
committertroido <troido@protonmail.com>2020-04-21 09:08:19 +0200
commit831a957f3cec12f389741823fbc90c40a1f827fc (patch)
tree00721afd8deba869987b323d4839c375b36dc97a /src/systems/attacking.rs
parent2247665fad3017c41568714cea7b0d29d6b09a98 (diff)
left out Option::flatten() for rust 1.38 compatibility
Diffstat (limited to 'src/systems/attacking.rs')
-rw-r--r--src/systems/attacking.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/systems/attacking.rs b/src/systems/attacking.rs
index a202878..d9dc7ea 100644
--- a/src/systems/attacking.rs
+++ b/src/systems/attacking.rs
@@ -61,7 +61,9 @@ impl <'a> System<'a> for Attacking {
let mut attackers = Vec::new();
let mut attacker_names = Vec::new();
for attack in attacked.messages.drain(..) {
- let actor_name = attack.attacker.map(|ae| visibles.get(ae)).flatten().map(|v| v.name.as_str()).unwrap_or("?").to_string();
+ let actor_name = (
+ if let Some(Some(n)) = attack.attacker.map(|ae| visibles.get(ae).map(|v| v.name.as_str())) {n} else {"?"}
+ ).to_string();
match attack.typ {
AttackType::Attack(strength) => {
let damage = rand::thread_rng().gen_range(0, strength+1);