standardise stats
This commit is contained in:
parent
15e78a63db
commit
fac6191c2e
@ -195,45 +195,6 @@ impl Cryp {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// pub fn add_xp(mut self) -> Cryp {
|
|
||||||
// self.xp = self.xp.saturating_add(1);
|
|
||||||
// if self.xp.is_power_of_two() {
|
|
||||||
// return self.level_up();
|
|
||||||
// }
|
|
||||||
// self
|
|
||||||
// }
|
|
||||||
|
|
||||||
// pub fn level_up(mut self) -> Cryp {
|
|
||||||
// self.lvl = self.lvl.saturating_add(1);
|
|
||||||
// self.create()
|
|
||||||
// }
|
|
||||||
|
|
||||||
pub fn roll_stat(&mut self, stat: Stat) -> &mut Cryp {
|
|
||||||
let mut rng = thread_rng();
|
|
||||||
|
|
||||||
let stam_min = 512u64.saturating_mul(self.lvl.into());
|
|
||||||
let stam_max = 1024u64.saturating_mul(self.lvl.into());
|
|
||||||
|
|
||||||
let stat_min = 128u64.saturating_mul(self.lvl.into());
|
|
||||||
let stat_max = 256u64.saturating_mul(self.lvl.into());
|
|
||||||
|
|
||||||
let evasion_min = 1u64;
|
|
||||||
let evasion_max = 5;
|
|
||||||
|
|
||||||
match stat {
|
|
||||||
Stat::RedDamage => self.red_damage.set(rng.gen_range(stat_min, stat_max), &self.specs),
|
|
||||||
Stat::BlueDamage => self.blue_damage.set(rng.gen_range(stat_min, stat_max), &self.specs),
|
|
||||||
Stat::Speed => self.speed.set(rng.gen_range(stat_min, stat_max), &self.specs),
|
|
||||||
Stat::Hp => self.hp.set(rng.gen_range(stam_min, stam_max), &self.specs),
|
|
||||||
Stat::BlueShield => self.blue_shield.set(rng.gen_range(stat_min, stat_max), &self.specs),
|
|
||||||
Stat::RedShield => self.red_shield.set(rng.gen_range(stat_min, stat_max), &self.specs),
|
|
||||||
Stat::Evasion => self.evasion.set(rng.gen_range(evasion_min, evasion_max), &self.specs),
|
|
||||||
_ => panic!("{:?} not a rollable stat", stat),
|
|
||||||
};
|
|
||||||
|
|
||||||
self
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn create(mut self) -> Cryp {
|
pub fn create(mut self) -> Cryp {
|
||||||
let xp = match self.lvl == 64 {
|
let xp = match self.lvl == 64 {
|
||||||
true => u64::max_value(),
|
true => u64::max_value(),
|
||||||
@ -242,10 +203,10 @@ impl Cryp {
|
|||||||
|
|
||||||
self.xp = xp;
|
self.xp = xp;
|
||||||
|
|
||||||
self.roll_stat(Stat::RedDamage);
|
self.red_damage.set(256, &self.specs);
|
||||||
self.roll_stat(Stat::BlueDamage);
|
self.blue_damage.set(256, &self.specs);
|
||||||
self.roll_stat(Stat::Speed);
|
self.speed.set(128, &self.specs);
|
||||||
self.roll_stat(Stat::Hp);
|
self.hp.set(1024, &self.specs);
|
||||||
|
|
||||||
self
|
self
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user