diff --git a/client/assets/styles/styles.css b/client/assets/styles/styles.css
index 55ca7ec6..0b13c08e 100644
--- a/client/assets/styles/styles.css
+++ b/client/assets/styles/styles.css
@@ -475,7 +475,7 @@ figure.gray {
stroke-color: #333;
}
-.stat-icon {
+.stats svg, .specs svg {
height: 2em;
stroke-width: 5px;
fill: none;
diff --git a/client/src/components/instance.constructs.jsx b/client/src/components/instance.constructs.jsx
index d83f0f00..32659125 100644
--- a/client/src/components/instance.constructs.jsx
+++ b/client/src/components/instance.constructs.jsx
@@ -3,7 +3,7 @@ const preact = require('preact');
const range = require('lodash/range');
const shapes = require('./shapes');
-const { STATS, instanceConstruct } = require('../utils');
+const { STATS, instanceConstruct, convertColourCode } = require('../utils');
const actions = require('../actions');
const addState = connect(
@@ -176,7 +176,7 @@ function Construct(props) {
onClick={specClick}
onDblClick={specDblClick}
onMouseOver={e => hoverInfo(e, s)} >
- {shapes[specInfo.values.shape.toLowerCase()](`stat-icon ${specInfo.values.colour}`)}
+ {shapes[specInfo.values.shape.toLowerCase()](convertColourCode(specInfo.values.colour))}
{s}
);
@@ -191,20 +191,6 @@ function Construct(props) {
const activeId = activeConstruct ? activeConstruct.id : false;
const constructClass = activeId === construct.id ? 'instance-construct-active' : 'instance-construct';
- // const cTotal = construct.colours.red + construct.colours.blue + construct.colours.green;
- // const colours = mapValues(construct.colours, c => {
- // if (cTotal === 0) return 245;
- // return Math.floor(c / cTotal * 255);
- // });
- // const alpha = cTotal === 0 ? 1 : 0.75;
- // const thickness = total => {
- // if (total < 3) return 1;
- // if (total < 6) return 2;
- // if (total < 9) return 3;
- // return 4;
- // };
- // const border = { border: `${thickness(cTotal)}px solid rgba(${colours.red}, ${colours.green}, ${colours.blue}, ${alpha})` };
-
return (
{instanceConstruct(construct.name, construct.id)}
diff --git a/client/src/components/svgs/square.jsx b/client/src/components/svgs/square.jsx
index 60e86f17..65f4b18a 100644
--- a/client/src/components/svgs/square.jsx
+++ b/client/src/components/svgs/square.jsx
@@ -1,14 +1,27 @@
const preact = require('preact');
-module.exports = function triangle(classes) {
+module.exports = function square(colours) {
return (
);
}
diff --git a/client/src/utils.jsx b/client/src/utils.jsx
index 879c8111..15d1dc06 100644
--- a/client/src/utils.jsx
+++ b/client/src/utils.jsx
@@ -454,6 +454,18 @@ function convertItem(v) {
// return;
}
+function convertColourCode(cc) {
+ if (cc === 'RR') return ['red', 'red'];
+ if (cc === 'GG') return ['green', 'green'];
+ if (cc === 'BB') return ['blue', 'blue'];
+ if (cc === 'RG') return ['red', 'green'];
+ if (cc === 'RB') return ['red', 'blue'];
+ if (cc === 'GB') return ['green', 'blue'];
+ if (cc === 'W') return ['white', 'white'];
+
+ return ['gray', 'gray'];
+}
+
module.exports = {
animateConstruct,
stringSort,
@@ -468,6 +480,7 @@ module.exports = {
getCombatSequence,
getCombatText,
resoConstructHealth,
+ convertColourCode,
NULL_UUID,
STATS,
COLOUR_ICONS,
diff --git a/server/src/item.rs b/server/src/item.rs
index a5f3f0de..295507d5 100644
--- a/server/src/item.rs
+++ b/server/src/item.rs
@@ -1066,30 +1066,6 @@ pub fn get_combos() -> Vec {
return combinations;
}
-#[derive(Debug,Clone,Copy,Serialize,Deserialize)]
-pub enum Shape {
- Circle,
- Diamond,
- Hexagon,
- Pentagon,
- Square,
- Squircle,
- Triangle,
- Saw,
- VboxColour,
-}
-
-#[derive(Debug,Clone,Copy,Serialize,Deserialize)]
-pub enum ItemColour {
- W,
- RR,
- GG,
- BB,
- RG,
- RB,
- GB,
-}
-
#[derive(Debug,Clone,Serialize,Deserialize)]
pub struct ItemInfo {
pub item: Item,
diff --git a/server/src/spec.rs b/server/src/spec.rs
index e727170b..72575664 100644
--- a/server/src/spec.rs
+++ b/server/src/spec.rs
@@ -1,8 +1,6 @@
use construct::{Stat, Colours};
-use item::{Shape, ItemColour};
use util::{IntPct};
-
#[derive(Debug,Clone,Serialize,Deserialize)]
pub struct SpecBonus {
pub req: Colours,
@@ -22,11 +20,8 @@ impl SpecBonus {
pub struct SpecValues {
pub base: u64,
pub bonuses: Vec,
- pub shape: Shape,
- pub colour: ItemColour,
}
-
#[derive(Debug,Copy,Clone,Serialize,Deserialize,PartialEq,PartialOrd,Ord,Eq)]
pub enum Spec {
Speed,
@@ -87,16 +82,12 @@ impl Spec {
pub fn values(&self) -> SpecValues {
match *self {
Spec::Power => SpecValues {
- colour: ItemColour::W,
base: 5,
- shape: Shape::Circle,
bonuses: vec![]
},
Spec::PowerRRI => SpecValues {
- colour: ItemColour::RR,
base: 10,
- shape: Shape::Circle,
bonuses: vec![
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 20 },
@@ -105,9 +96,7 @@ impl Spec {
},
Spec::PowerGGI => SpecValues {
- colour: ItemColour::GG,
base: 10,
- shape: Shape::Circle,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 20 },
@@ -116,9 +105,7 @@ impl Spec {
},
Spec::PowerBBI => SpecValues {
- colour: ItemColour::BB,
base: 10,
- shape: Shape::Circle,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 20 },
@@ -127,9 +114,7 @@ impl Spec {
},
Spec::PowerRGI => SpecValues {
- colour: ItemColour::RG,
base: 5,
- shape: Shape::Circle,
bonuses: vec![
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 15 },
@@ -138,9 +123,7 @@ impl Spec {
},
Spec::PowerGBI => SpecValues {
- colour: ItemColour::GB,
base: 5,
- shape: Shape::Circle,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 15 },
@@ -149,9 +132,7 @@ impl Spec {
},
Spec::PowerRBI => SpecValues {
- colour: ItemColour::RB,
base: 5,
- shape: Shape::Circle,
bonuses: vec![
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 10 },
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 15 },
@@ -160,16 +141,12 @@ impl Spec {
},
Spec::Speed => SpecValues {
- colour: ItemColour::W,
base: 5,
- shape: Shape::Triangle,
bonuses: vec![]
},
Spec::SpeedRRI => SpecValues {
- colour: ItemColour::RR,
base: 10,
- shape: Shape::Triangle,
bonuses: vec![
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 20 },
@@ -178,9 +155,7 @@ impl Spec {
},
Spec::SpeedGGI => SpecValues {
- colour: ItemColour::GG,
base: 10,
- shape: Shape::Triangle,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 20 },
@@ -189,9 +164,7 @@ impl Spec {
},
Spec::SpeedBBI => SpecValues {
- colour: ItemColour::BB,
base: 10,
- shape: Shape::Triangle,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 20 },
@@ -200,9 +173,7 @@ impl Spec {
},
Spec::SpeedRGI => SpecValues {
- colour: ItemColour::RG,
base: 5,
- shape: Shape::Triangle,
bonuses: vec![
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 15 },
@@ -211,9 +182,7 @@ impl Spec {
},
Spec::SpeedGBI => SpecValues {
- colour: ItemColour::GB,
base: 5,
- shape: Shape::Triangle,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 15 },
@@ -222,9 +191,7 @@ impl Spec {
},
Spec::SpeedRBI => SpecValues {
- colour: ItemColour::RB,
base: 5,
- shape: Shape::Triangle,
bonuses: vec![
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 10 },
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 15 },
@@ -233,15 +200,11 @@ impl Spec {
},
Spec::Life => SpecValues {
- colour: ItemColour::W,
base: 5,
- shape: Shape::Square,
bonuses: vec![]},
Spec::LifeRRI => SpecValues {
- colour: ItemColour::RR,
base: 10,
- shape: Shape::Square,
bonuses: vec![
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 20 },
@@ -250,9 +213,7 @@ impl Spec {
},
Spec::LifeGGI => SpecValues {
- colour: ItemColour::GG,
base: 10,
- shape: Shape::Square,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 20 },
@@ -261,9 +222,7 @@ impl Spec {
},
Spec::LifeBBI => SpecValues {
- colour: ItemColour::BB,
base: 10,
- shape: Shape::Square,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 20 },
@@ -272,9 +231,7 @@ impl Spec {
},
Spec::LifeRGI => SpecValues {
- colour: ItemColour::RG,
base: 5,
- shape: Shape::Square,
bonuses: vec![
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 10 },
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 15 },
@@ -284,9 +241,7 @@ impl Spec {
Spec::LifeGBI => SpecValues {
- colour: ItemColour::GB,
base: 5,
- shape: Shape::Square,
bonuses: vec![
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 10 },
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 15 },
@@ -295,9 +250,7 @@ impl Spec {
},
Spec::LifeRBI => SpecValues {
- colour: ItemColour::RB,
base: 5,
- shape: Shape::Square,
bonuses: vec![
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 10 },
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 15 },