diff --git a/server/WORKLOG.md b/server/WORKLOG.md index 8d2d3e1f..56c48404 100644 --- a/server/WORKLOG.md +++ b/server/WORKLOG.md @@ -16,6 +16,7 @@ # WORK WORK ## NOW cryp vbox + ensure all skills impl ez Skill::Slay -> red attack with bonus somethingorother for blue / maim no healing @@ -28,7 +29,6 @@ ensure all skills impl Skill::Taunt -> redirect incomnig attacks to self Skill::Toxic -> apply debuff to attackers -update speed of rest of stack on cryp speed change include target name in effect resolution eg strangle applies buff to self diff --git a/server/src/game.rs b/server/src/game.rs index f09dd29f..4fa07015 100644 --- a/server/src/game.rs +++ b/server/src/game.rs @@ -219,12 +219,12 @@ impl Game { } fn pve_add_skills(&mut self) -> &mut Game { - for mobs in self.teams - .clone() - .into_iter() - .filter(|t| t.bot) { + let mut pve_skills = vec![]; - let player_team = self.teams.iter().find(|t| t.id != mobs.id).unwrap().clone(); + for mobs in self.teams + .iter() + .filter(|t| t.bot) { + let player_team = self.teams.iter().find(|t| t.id != mobs.id).unwrap(); for mob in mobs.cryps.iter() { let skill = mob.mob_select_skill(); @@ -248,16 +248,17 @@ impl Game { target = find_target(); } - match self.add_skill(mobs.id, mob.id, Some(target.id), s) { - Ok(_) => (), - Err(e) => println!("{:?} could not add pve skill", e), - } - // println!("{:?}", cast); + pve_skills.push((mobs.id, mob.id, Some(target.id), s)); }, None => continue, }; } } + + for (team_id, mob_id, target_id, s) in pve_skills { + self.add_skill(team_id, mob_id, target_id, s).expect("unable to add pve mob skill"); + } + self } diff --git a/server/src/vbox.rs b/server/src/vbox.rs index 59fd7370..044ae624 100644 --- a/server/src/vbox.rs +++ b/server/src/vbox.rs @@ -502,7 +502,7 @@ impl Vbox { self.bound.get(i).ok_or(format_err!("no var at index {:?}", i))?; let reclaimed = self.bound.remove(i); let refund = reclaimed.cost(); - println!("reclaiming {:?} for {:?}", refund, reclaimed); + // println!("reclaiming {:?} for {:?}", refund, reclaimed); self.balance_add(refund); Ok(self) }