From f78496e6819bd966cb7d3ec30dc1b727770aafd5 Mon Sep 17 00:00:00 2001 From: Mashy Date: Thu, 19 Sep 2019 16:01:46 +1000 Subject: [PATCH] spec info update --- client/src/components/info.component.jsx | 8 +- client/src/components/instance.constructs.jsx | 7 +- client/src/constants.jsx | 13 +- server/src/item.rs | 134 +++++++++++------- server/src/spec.rs | 4 + 5 files changed, 107 insertions(+), 59 deletions(-) diff --git a/client/src/components/info.component.jsx b/client/src/components/info.component.jsx index ba676057..b088f711 100644 --- a/client/src/components/info.component.jsx +++ b/client/src/components/info.component.jsx @@ -133,14 +133,16 @@ function InfoComponent(args) { } return false; }); + console.log(info); + const bonusObj = info.includes('Life') + ?
+ {bonus.bonus}
+ :
+ {bonus.bonus}%
; const overFlowObj = overFlow.length ?
{overFlow}
: null; return (
{goals} {overFlowObj} -
- + {bonus.bonus} -
+ {bonusObj}
); }); diff --git a/client/src/components/instance.constructs.jsx b/client/src/components/instance.constructs.jsx index 24a1d833..9afd9cc5 100644 --- a/client/src/components/instance.constructs.jsx +++ b/client/src/components/instance.constructs.jsx @@ -179,10 +179,9 @@ function Construct(props) { const stats = Object.keys(STATS).map(s => { const stat = STATS[s]; - const info = (s === 'SpeedStat' && 'Speed') - || (s.includes('Power') && 'Power') - || (s.includes('Life') && 'Life'); - + const info = (s === 'SpeedStat' && 'speedStat') + || (s.includes('Power') && 'powerStat') + || (s.includes('Life') && 'lifeStat'); return
format!("Base item for increased power. Power determines the base damage and healing of your construct skills."), - Item::Life => format!("Base item for increased life. - When your construct reaches 0 GreenLife it is knocked out and cannot cast skills."), - Item::Speed => format!("Base item for increased speed. - Speed SpeedStat determines the order in which skills resolve."), + Item::Power => format!("Increases all power stats by {:?}%. Power determines the base damage and healing of your construct skills.", + self.into_spec().unwrap().values().base()), + Item::Life => format!("Increases construct GreenLife by {:?}. + When your construct reaches 0 GreenLife it is knocked out and cannot cast skills.", + self.into_spec().unwrap().values().base()), + Item::Speed => format!("Increases construct speed by {:?}%. + Speed SpeedStat determines the order in which skills resolve.", + self.into_spec().unwrap().values().base()), // Lifes Upgrades - Item::LifeGG=> format!("Increases construct GreenLife green life. - When your construct reaches 0 GreenLife it is knocked out and cannot cast skills."), - Item::LifeRR=> format!("Increases construct RedLife red life. - Mitigates red damage that would otherwise reduce your GreenLife green life."), - Item::LifeBB=> format!("Increases construct BlueLife blue life. - Mitigates blue damage that would otherwise reduce your GreenLife green life."), - Item::LifeRG=> format!("Increases construct GreenLife and RedLife"), - Item::LifeGB=> format!("Increases construct GreenLife and BlueLife"), - Item::LifeRB=> format!("Increases construct RedLife and BlueLife"), - Item::LifeGGPlus => format!("Increases construct GreenLife."), - Item::LifeRRPlus => format!("Increases construct RedLife."), - Item::LifeBBPlus => format!("Increases construct BlueLife."), - Item::LifeRGPlus => format!("Increases construct GreenLife and RedLife"), - Item::LifeGBPlus => format!("Increases construct GreenLife and BlueLife"), - Item::LifeRBPlus => format!("Increases construct RedLife and BlueLife"), - Item::LifeGGPlusPlus => format!("Increases construct GreenLife."), - Item::LifeRRPlusPlus => format!("Increases construct RedLife."), - Item::LifeBBPlusPlus => format!("Increases construct BlueLife."), - Item::LifeRGPlusPlus => format!("Increases construct GreenLife and RedLife"), - Item::LifeGBPlusPlus => format!("Increases construct GreenLife and BlueLife"), - Item::LifeRBPlusPlus => format!("Increases construct RedLife and BlueLife"), + Item::LifeGG | + Item::LifeGGPlus | + Item::LifeGGPlusPlus => format!("Increases construct GreenLife by {:?}. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + + Item::LifeRR | + Item::LifeRRPlus | + Item::LifeRRPlusPlus => format!("Increases construct RedLife by {:?}. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + + Item::LifeBB | + Item::LifeBBPlus | + Item::LifeBBPlusPlus => format!("Increases construct BlueLife by {:?}. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + + Item::LifeRG | + Item::LifeRGPlus | + Item::LifeRGPlusPlus => format!("Increases construct RedLife and GreenLife by {:?}. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + + Item::LifeGB | + Item::LifeGBPlus | + Item::LifeGBPlusPlus => format!("Increases construct GreenLife and BlueLife by {:?}. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + + Item::LifeRB | + Item::LifeRBPlus | + Item::LifeRBPlusPlus => format!("Increases construct RedLife and BlueLife by {:?}. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), // Power Upgrades - Item::PowerRR=> format!("Increases construct RedPower."), - Item::PowerBB=> format!("Increases construct BluePower."), - Item::PowerGG=> format!("Increases construct GreenPower."), - Item::PowerRG=> format!("Increases construct GreenPower and RedPower."), - Item::PowerGB=> format!("Increases construct GreenPower and BluePower."), - Item::PowerRB=> format!("Increases construct RedPower and BluePower."), - Item::PowerRRPlus => format!("Increases construct RedPower."), - Item::PowerBBPlus => format!("Increases construct BluePower."), - Item::PowerGGPlus => format!("Increases construct GreenPower."), - Item::PowerRGPlus => format!("Increases construct GreenPower and RedPower."), - Item::PowerGBPlus => format!("Increases construct GreenPower and BluePower."), - Item::PowerRBPlus => format!("Increases construct RedPower and BluePower."), - Item::PowerRRPlusPlus => format!("Increases construct RedPower."), - Item::PowerBBPlusPlus => format!("Increases construct BluePower."), - Item::PowerGGPlusPlus => format!("Increases construct GreenPower."), - Item::PowerRGPlusPlus => format!("Increases construct GreenPower and RedPower."), - Item::PowerGBPlusPlus => format!("Increases construct GreenPower and BluePower."), - Item::PowerRBPlusPlus => format!("Increases construct RedPower and BluePower."), + Item::PowerRR | + Item::PowerRRPlus | + Item::PowerRRPlusPlus => format!("Increases construct RedPower by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + Item::PowerBB | + Item::PowerBBPlus | + Item::PowerBBPlusPlus => format!("Increases construct BluePower by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + + Item::PowerGG | + Item::PowerGGPlus | + Item::PowerGGPlusPlus => format!("Increases construct GreenPower by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + Item::PowerRG | + Item::PowerRGPlus | + Item::PowerRGPlusPlus => format!("Increases construct GreenPower and RedPower by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + Item::PowerGB | + Item::PowerGBPlus | + Item::PowerGBPlusPlus => format!("Increases construct GreenPower and BluePower by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), + Item::PowerRB | + Item::PowerRBPlus | + Item::PowerRBPlusPlus => format!("Increases construct RedPower and BluePower by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), // Speed Upgrades - Item::SpeedRR| - Item::SpeedBB| - Item::SpeedGG| - Item::SpeedRG| - Item::SpeedGB| - Item::SpeedRB| + Item::SpeedRR | + Item::SpeedBB | + Item::SpeedGG | + Item::SpeedRG | + Item::SpeedGB | + Item::SpeedRB | Item::SpeedRRPlus | Item::SpeedBBPlus | Item::SpeedGGPlus | @@ -644,7 +674,9 @@ impl Item { Item::SpeedGGPlusPlus | Item::SpeedRGPlusPlus | Item::SpeedGBPlusPlus | - Item::SpeedRBPlusPlus => format!("Increases construct SpeedStat and provides COLOUR BONUSES"), + Item::SpeedRBPlusPlus => format!("Increases construct SpeedStat by {:?}%. + If your team meets total colour thresholds the spec provides additional bonuses", + self.into_spec().unwrap().values().base()), // Skills <- need to move effect mulltipliers into skills Item::Amplify| diff --git a/server/src/spec.rs b/server/src/spec.rs index 443bdf18..28a842f7 100644 --- a/server/src/spec.rs +++ b/server/src/spec.rs @@ -28,6 +28,10 @@ impl SpecValues { self.bonuses.iter().fold(self.base, |acc, s| acc + s.get_bonus(c)) } + pub fn base (self) -> u64 { + self.base + } + /* pub fn calc_multi (&self, c: &Colours) -> u64 { self.multi * (c.red + c.green + c.blue) as u64