diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6598fa6d..5da7a676 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -22,8 +22,8 @@ Added `Buff` as a skill
*BALANCE*
- purify
- - 1 effect from all cryps at level 2
- - removes all effects from all cryps at l3
+ - 1 effect from all constructs at level 2
+ - removes all effects from all constructs at l3
- invert
- fx for buffs when applied to enemies
diff --git a/COMBOS.md b/COMBOS.md
index 4cd2063f..d41124fc 100644
--- a/COMBOS.md
+++ b/COMBOS.md
@@ -5,7 +5,7 @@ specs [spec [bonus amount, [r g b]]
# Playthrough
-cryps join game
+constructs join game
stats randomised
initial stash drops
diff --git a/ECONOMY.md b/ECONOMY.md
index cd15efb1..e40a894c 100644
--- a/ECONOMY.md
+++ b/ECONOMY.md
@@ -23,9 +23,9 @@ Base specs have a base 3 cost
### Actual Costs
-- Costs increase as more of an item is used on cryps in the game
+- Costs increase as more of an item is used on constructs in the game
- The cost increases by the base cost for every 6 allocations of base item
-- Allocation is based on all cryps in the game
+- Allocation is based on all constructs in the game
### Example ###
@@ -33,15 +33,15 @@ Round #1
All costs are base costs
# Player #1 and Player #2 (They both bought the same things)
-Cryp #1 Strike (Attack + RR), (2 + 1 + 1) = (4) cost
-Cryp #1 Empower (Buff + RR), (2 + 1 + 1) = (4) cost
-Cryp #3 Attack, 2 cost
+Construct #1 Strike (Attack + RR), (2 + 1 + 1) = (4) cost
+Construct #1 Empower (Buff + RR), (2 + 1 + 1) = (4) cost
+Construct #3 Attack, 2 cost
Total cost - 10
Round #2
-Items used on cryps include:
+Items used on constructs include:
Red x 8
Attack x 4
@@ -52,9 +52,9 @@ The costs of red for round #2 are now (1 + 1) = 2
If they were to buy the same skill setup it would be as follows:
# Player #1 and Player #2 (They both bought the same things)
-Cryp #1 Strike (Attack + RR), (2 + 2 + 2) = (6) cost
-Cryp #1 Empower (Buff + RR), (2 + 2 + 2) = (6) cost
-Cryp #3 Attack, 2 cost
+Construct #1 Strike (Attack + RR), (2 + 2 + 2) = (6) cost
+Construct #1 Empower (Buff + RR), (2 + 2 + 2) = (6) cost
+Construct #3 Attack, 2 cost
Total cost - 14
diff --git a/NODES.md b/NODES.md
index 16042cab..076b466e 100644
--- a/NODES.md
+++ b/NODES.md
@@ -46,4 +46,4 @@ Rare `increased speed, increased cooldowns`
- Increased stat
- ??? Related Notables
-# ??? Cryps need to have a minimum of X of the cryp stat to learn a skill #
+# ??? Constructs need to have a minimum of X of the construct stat to learn a skill #
diff --git a/README.md b/README.md
index 74cb4925..96116cc9 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Cryps ("creeps")
+# Constructs ("creeps")
## Combat
@@ -30,7 +30,7 @@ resolve phase:
| reduction | absorption? | durations |
-## Cryp Alignments
+## Construct Alignments
Natural Selection
================
@@ -92,7 +92,7 @@ Path to Destruction
Damage & Destruction
-------------------------
-cryps walking the path to destruction have forsaken themselves in order to gain ruinous power.
+constructs walking the path to destruction have forsaken themselves in order to gain ruinous power.
no price is too high, they gladly harm themselves and allies to amplify the destruction they wreak on everything around them
specialise in magical damage dealing
@@ -124,7 +124,7 @@ Universal Chaos
The only constant is change.
----------------------------
-Cryps aligning themselves with the forces of chaos believe that constant change is the only truth in the universe.
+Constructs aligning themselves with the forces of chaos believe that constant change is the only truth in the universe.
They harness its power to manipulate physical reality as well as control and disrupt the flow of battle.
They blend between physical and astral forms, constantly shifting throughout time and space.
diff --git a/ROADMAP.md b/ROADMAP.md
index 2f0608eb..7f9ff085 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -1,7 +1,7 @@
### Road Map ###
-# NOW Phase 1 (Dev -> Alpha)
+# NOW Phase 1 (Dev -> Alpha)
Form company structure
Brainstorm Names?
@@ -22,7 +22,7 @@ Combat animations
Make in game shop
Payment processors / CC etc
Handler for game purchases
- MTX - Cryp Avatars
+ MTX - Construct Avatars
MTX - Skill anims
Setup company bank accounts
@@ -32,7 +32,7 @@ Setup company bank accounts
Player Events e.g. chatwheel
Matchmaking + ELO / Leaderboard
-Game skill private fields
+Game skill private fields
Refine artwork, icons, scaling etc
Music
@@ -41,4 +41,23 @@ Marketing materials
Videos
Twitch
Advertisments?
- Information
\ No newline at end of file
+ Information
+
+
+
+# china shit
+You need to read the details more carefully. Playsaurus messed up:
+
+1. They launched in China without registering a trademark
+
+2. A competitor registered the trademark after 3 months of their launch
+
+3. They continued to sell for 4 years under a name trademarked by another company, making $73,000+ yearly from that one country
+
+Now, they complain about it on Reddit, even though China is a 'First to File' company.
+
+The fault lies entirely with Playsaurus, nothing illegal occurred here.
+
+https://www.trademarknow.com/blog/first-to-file-versus-first...
+
+This situation could have occurred in many other countries - the difference is probably that the competitor is content to just sell in China, under a Chinese name, whereas products sold anywhere else would need to use the English name.
\ No newline at end of file
diff --git a/SPECS.md b/SPECS.md
index 543247df..cd8d089f 100644
--- a/SPECS.md
+++ b/SPECS.md
@@ -4,16 +4,16 @@ Numbers are placeholder
`Specs get a bonus dependent on the total of Red / Green / Blue in player skills & specs`
# Example to meet 5 red gem bonus from skills only
-In your player Cryp #1 has `Strike`, Cryp #2 has `Slay` and `Heal`, Cryp #3 has `Snare`
+In your player Construct #1 has `Strike`, Construct #2 has `Slay` and `Heal`, Construct #3 has `Snare`
- RR skill `Strike` contributes 2 red gems to the total red gems (2 total)
- RG skill `Slay` contributes 1 red gem to the total red gems (3 total)
- GG skill `Heal` contirubtes 0 red gems to the total red gems (3 total)
- RR skill `Snare` contirubtes 2 red gems to the total red gems (5 total)
-# Advanced specs also require a minimum number of Red / Green / Blue gems on the cryp to take effect
+# Advanced specs also require a minimum number of Red / Green / Blue gems on the construct to take effect
- Tier 1 Basic specs (Damage / Health / Defense) will have no requirements
- Advanced specs will require a certain threshold of red / green / blue gems to be enabled
- - Provided spec requirements are met, all specs will add gems to the cryp
+ - Provided spec requirements are met, all specs will add gems to the construct
# Starting from scratch with a vbox
@@ -26,9 +26,9 @@ In your player Cryp #1 has `Strike`, Cryp #2 has `Slay` and `Heal`, Cryp #3 has
Combine 2 Red + 'Attack' -> Strike
Combine 2 Red + 'Basic Damage Spec' -> Red Damage
- Cryp #1 -> Give Strike & Red Damage Spec -> Strike + 1 x Red Damage Spec
- Cryp #2 -> Give Attack -> Attack
- Cryp #3 -> Give Stun -> Stun
+ Construct #1 -> Give Strike & Red Damage Spec -> Strike + 1 x Red Damage Spec
+ Construct #2 -> Give Attack -> Attack
+ Construct #3 -> Give Stun -> Stun
Player Total (4 Red + 2 Basic gems)
@@ -37,17 +37,17 @@ In your player Cryp #1 has `Strike`, Cryp #2 has `Slay` and `Heal`, Cryp #3 has
- Buy 2 reds & 2 green & 2 blue (all available colour items)
- Buy 2 Basic Damage Spec (item)
- - Cryp #2 Unequip Attack
+ - Construct #2 Unequip Attack
- Combine 2 Green + 'Attack' -> Heal
- - Cryp #3 Unequip Stun
+ - Construct #3 Unequip Stun
- Combine 2 Blue + 'Stun' -> Ruin
- Combine 2 Red + 'Basic Damage Spec' -> Red Damage
- Cryp #1 -> Give Red Damage items -> Strike + 2 x Red Damage Spec (6R)
- Cryp #2 -> Give Heal item -> Heal (2G)
- Cryp #3 -> Give Ruin item -> Ruin (2B)
+ Construct #1 -> Give Red Damage items -> Strike + 2 x Red Damage Spec (6R)
+ Construct #2 -> Give Heal item -> Heal (2G)
+ Construct #3 -> Give Ruin item -> Ruin (2B)
## Round 3
@@ -58,9 +58,9 @@ In your player Cryp #1 has `Strike`, Cryp #2 has `Slay` and `Heal`, Cryp #3 has
- Combine 2 Red + 'Stun' -> Strangle
- Combine 2 Red + 'Block' -> Parry
- Cryp #1 -> Give 'Stun' & 'Strangle' -> Strike, Stun, Strangle + 2 x Red Damage Spec (10R)
- Cryp #2 -> 'No change' -> Heal (2G)
- Cryp #3 -> Give Attack item & 2 Basic Damage Spec -> Attack + Ruin + 2 x Basic Damage Spec (2B)
+ Construct #1 -> Give 'Stun' & 'Strangle' -> Strike, Stun, Strangle + 2 x Red Damage Spec (10R)
+ Construct #2 -> 'No change' -> Heal (2G)
+ Construct #3 -> Give Attack item & 2 Basic Damage Spec -> Attack + Ruin + 2 x Basic Damage Spec (2B)
## Round 4
@@ -70,18 +70,18 @@ In your player Cryp #1 has `Strike`, Cryp #2 has `Slay` and `Heal`, Cryp #3 has
- Combine 2 Red + 'Attack' -> Strike
- Combine 2 Red + 'Buff' -> Empower
- - Cryp #1 Unequip 2 x Red Damage spec, Equip Empower -> Strike, Stun, Strangle, Empower (8R)
+ - Construct #1 Unequip 2 x Red Damage spec, Equip Empower -> Strike, Stun, Strangle, Empower (8R)
- Combine 'Strike' + 2 x Red Damage spec -> 'Increased Strike Damage spec'
- ### Note 'Increased Strike Damage spec' requires 8R on the cryp
+ ### Note 'Increased Strike Damage spec' requires 8R on the construct
- Cryp #1 Equip Increased Strike Damage spec -> Strike, Stun, Strangle, Empower + Increased Strike Damage Spec (14R)
- Cryp #2 -> 'No change' -> Heal
- Cryp #3 -> 'No change' -> Attack + Ruin + 2 x Basic Damage Spec
+ Construct #1 Equip Increased Strike Damage spec -> Strike, Stun, Strangle, Empower + Increased Strike Damage Spec (14R)
+ Construct #2 -> 'No change' -> Heal
+ Construct #3 -> 'No change' -> Attack + Ruin + 2 x Basic Damage Spec
## Round 5
- We already lost cause we went all in on 1 red cryp like a noob
+ We already lost cause we went all in on 1 red construct like a noob
### Generic Specs
@@ -96,7 +96,7 @@ Maximum 35% inc hp
Maximum 50% inc speed
# Basic Class Spec
-`Base` -> +2 red, +2 green +2 blue gems on cryp
+`Base` -> +2 red, +2 green +2 blue gems on construct
# Basic Duration
### Increased Damage Combos ###
@@ -182,32 +182,32 @@ Maximum +35% inc blue shield and 35% inc red shield
## Upgraded Attack Spec Combos
# Increased Strike Damage (Combine Strike + Red Damage Spec x 2)
-Cryp Requires `8 red gems`
+Construct Requires `8 red gems`
Adds `6 red gems`
`Base` -> 15% increased strike damage
`Player Bonus` 15 red gems -> +15% // 20 red gems -> +20% // 30 red gems -> +30%
Maximum 80% increased strike damage
# Improved Heal (Combine Heal + Healing Spec x 2)
-Cryp Requires `8 green gems`
+Construct Requires `8 green gems`
`Base` -> 15% increased heal healing
`Player Bonus` 15 green gems -> +15% // 20 green gems -> +20% // 30 green gems -> +30%
Maximum 80% increased heal healing
# Increased Blast Damage (Combine Blast + Blue Spec x 2)
-Cryp Requires `8 blue gems`
+Construct Requires `8 blue gems`
`Base` -> 15% increased blast damage
`Player Bonus` 15 blue gems -> +15% // 20 blue gems -> +20% // 30 blue gems -> +30%
Maximum 80% increased blast damage
# Increased Slay Damage (Combine Slay + Red Damage Spec + Healing Spec)
-Cryp Requires `4 red 4 green gems`
+Construct Requires `4 red 4 green gems`
`Base` -> 15% increased slay damage
`Player Bonus` (8R + 8G) gems -> +15% // (10R + 10G) gems -> +20% // (15R + 15G) gems -> +30%
Maximum 80% increased slay damage
# Increased Banish Damage (Combine Slay + Red Damage Spec + Blue Damage Spec)
-Cryp Requires `4 red 4 blue gems`
+Construct Requires `4 red 4 blue gems`
`Base` -> 15% increased slay damage
`Player Bonus` (8R + 8B) gems -> +15% // (10R + 10B) gems -> +20% // (15R + 15B) gems -> +30%
Maximum 80% increased banish damage
diff --git a/WORKLOG.md b/WORKLOG.md
index 3204dd55..5f442b7e 100644
--- a/WORKLOG.md
+++ b/WORKLOG.md
@@ -24,8 +24,8 @@ Tidy edges on game UI
blue + defensive green
- purify
- - 1 effect from all cryps at level 2
- - removes all effects from all cryps at l3
+ - 1 effect from all constructs at level 2
+ - removes all effects from all constructs at l3
- invert
- fx for buffs when applied to enemies
@@ -102,7 +102,7 @@ push events
$$$
* Items
* Colour scheme
- * number of cryps
+ * number of constructs
* Highlight (dota) colour
* fx colours + styles
diff --git a/client/assets/styles/game.css b/client/assets/styles/game.css
index aa313bdb..70f8b403 100644
--- a/client/assets/styles/game.css
+++ b/client/assets/styles/game.css
@@ -36,7 +36,7 @@
}
-.opponent .game-cryp {
+.opponent .game-construct {
align-items: flex-start;
grid-template-rows: min-content min-content min-content 2fr;
grid-template-columns: 1fr 1fr;
@@ -47,12 +47,12 @@
"avatar target";
}
-.opponent .game-cryp .name {
+.opponent .game-construct .name {
margin-bottom: 0;
margin-top: 0.25em;
}
-.game-cryp {
+.game-construct {
display: grid;
/*justify-items: center;*/
@@ -74,7 +74,7 @@
transition-timing-function: ease;
}
-.game-cryp .targeting {
+.game-construct .targeting {
grid-area: target;
display: flex;
flex-flow: column;
@@ -84,36 +84,36 @@
white-space: nowrap;
}
-.game-cryp .img {
+.game-construct .img {
grid-area: avatar;
}
-.game-cryp .name {
+.game-construct .name {
width: 100%;
margin-bottom: 0.25em;
text-align: center;
grid-area: name;
}
-.game-cryp .stats {
+.game-construct .stats {
grid-area: stats;
display: flex;
flex-flow: row;
}
-.game-cryp figure {
+.game-construct figure {
padding: 0 0.5em;
display: flex;
flex-flow: column;
}
-.game-cryp figcaption {
+.game-construct figcaption {
white-space: nowrap;
font-size: 100%;
}
@media (max-width: 1500px) {
- .game-cryp figure {
+ .game-construct figure {
padding: 0 0.25em;
}
@@ -123,7 +123,7 @@
}
*/}
-.game-cryp .skills {
+.game-construct .skills {
grid-area: skills;
display: flex;
flex-flow: column-reverse;
@@ -131,13 +131,13 @@
}
/*@media (max-width: 1000px) {
- .game-cryp .skills {
+ .game-construct .skills {
flex-flow: column;
}
}
*/
-.game-cryp .effects {
+.game-construct .effects {
grid-area: effects;
font-size: 1.5em;
white-space: nowrap;
@@ -153,7 +153,7 @@
margin-right: 0.5em;
}
-.game-cryp button {
+.game-construct button {
color: #888;
flex: 1 1 100%;
padding: 0;
@@ -161,35 +161,35 @@
border-width: 0px;
}
-.game-cryp button.active {
+.game-construct button.active {
color: whitesmoke;
}
-.game-cryp button[disabled], .game-cryp button[disabled]:hover {
+.game-construct button[disabled], .game-construct button[disabled]:hover {
color: #333333;
text-decoration: line-through
}
-.game-cryp button:hover {
+.game-construct button:hover {
color: whitesmoke;
}
-.game-cryp.ko {
+.game-construct.ko {
animation: none;
opacity: 0.35;
filter: grayscale(100%);
}
-.game-cryp.ko button:hover {
+.game-construct.ko button:hover {
color: #333;
}
-.game-cryp.unfocus {
+.game-construct.unfocus {
opacity: 0.65;
filter: blur(5px);
}
-.game-cryp.unfocus.ko {
+.game-construct.unfocus.ko {
filter: blur(5px) grayscale(100%);
}
@@ -202,18 +202,18 @@
left: 50%;
}
-CRYP DAMAGE
+CONSTRUCT DAMAGE
-.game-cryp.active-skill {
+.game-construct.active-skill {
filter: drop-shadow(0 0 0.2em silver);
/*border-color: silver;*/
}
-.game-cryp.red-damage {
+.game-construct.red-damage {
filter: drop-shadow(0 0 0.2em red);
color: red;
- /*ensure cryp doesn't get opacity lowered because of being KO before the KO animation*/
+ /*ensure construct doesn't get opacity lowered because of being KO before the KO animation*/
opacity: 1;
/*border-color: red;*/
@@ -232,7 +232,7 @@ CRYP DAMAGE
/*border-top: 1px solid red;*/
}
-.game-cryp.blue-damage {
+.game-construct.blue-damage {
filter: drop-shadow(0 0 0.2em blue);
color: blue;
opacity: 1;
@@ -252,7 +252,7 @@ CRYP DAMAGE
/*border-top: 1px solid blue;*/
}
-.game-cryp.green-damage {
+.game-construct.green-damage {
filter: drop-shadow(0 0 0.2em green);
color: green;
opacity: 1;
@@ -272,7 +272,7 @@ CRYP DAMAGE
/*border-top: 1px solid green;*/
}
-.game-cryp.purple-damage {
+.game-construct.purple-damage {
filter: drop-shadow(0 0 0.2em purple);
color: purple;
border-color: purple;
diff --git a/client/assets/styles/instance.css b/client/assets/styles/instance.css
index c06a63cd..7692b6ab 100644
--- a/client/assets/styles/instance.css
+++ b/client/assets/styles/instance.css
@@ -11,7 +11,7 @@
"top top info"
"vbox vbox info"
"equip equip info"
- "cryps cryps info";
+ "constructs constructs info";
}
@media (max-width: 1920px) {
@@ -33,7 +33,7 @@
}
.instance .scoreboard {
- grid-area: cryps;
+ grid-area: constructs;
}
.instance-ui-btn {
@@ -60,8 +60,8 @@
margin-top: 1.5em;
}
-.instance .cryps {
- grid-area: cryps;
+.instance .constructs {
+ grid-area: constructs;
}
.instance .equip {
@@ -148,16 +148,16 @@
cursor: pointer;
}
-/* CRYP LIST */
+/* CONSTRUCT LIST */
-.cryp-list {
- grid-area: cryps;
+.construct-list {
+ grid-area: constructs;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
}
-.instance-cryp, .instance-cryp-active {
+.instance-construct, .instance-construct-active {
display: grid;
grid-template-rows: min-content min-content min-content 1fr min-content;
grid-template-areas:
@@ -177,17 +177,17 @@
transition-timing-function: ease;
*/}
-.instance-cryp:first-child, .instance-cryp-active:first-child {
+.instance-construct:first-child, .instance-construct-active:first-child {
margin-left: 0;
border-left-width: 1px;
}
-.cryp-list .name {
+.construct-list .name {
grid-area: name;
margin-bottom: 0.5em;
}
-.cryp-list .avatar {
+.construct-list .avatar {
grid-area: avatar;
object-fit: contain;
background-size: contain;
@@ -196,28 +196,28 @@
pointer-events: none;
}
-.cryp-list .name {
+.construct-list .name {
text-align: center;
}
-.cryp-list .avatar figure {
+.construct-list .avatar figure {
margin: 0;
height: 80%;
text-align: center;
box-sizing: border-box;
}
-.cryp-list .avatar figcaption {
+.construct-list .avatar figcaption {
font-size: 90%;
}
-.cryp-list .skills {
+.construct-list .skills {
grid-area: skills;
display: flex;
border-width: 0px;
}
-.cryp-list .skills button {
+.construct-list .skills button {
flex: 1;
border-width: 0px;
}
@@ -236,7 +236,7 @@
}
}
*/
-.cryp-list .specs {
+.construct-list .specs {
margin-top: 1em;
grid-area: specs;
display: flex;
@@ -245,18 +245,18 @@
border-width: 0px;
}
-.cryp-list .specs figure {
+.construct-list .specs figure {
flex: 1;
border: 0;
align-items: center;
text-align: center;
}
-.cryp-list .specs figcaption {
+.construct-list .specs figcaption {
font-size: 75%;
}
-.cryp-list .stats {
+.construct-list .stats {
grid-area: stats;
display: grid;
grid-template-rows: 1fr 3fr;
@@ -267,11 +267,11 @@
border-width: 0px;
}
-.cryp-list .stats figcaption {
+.construct-list .stats figcaption {
font-size: 75%;
}
-.cryp-list .stats .icons {
+.construct-list .stats .icons {
grid-area: st;
display: flex;
flex-flow: row;
@@ -289,25 +289,25 @@
fill: none;
}
-.cryp-list .stat-icon {
+.construct-list .stat-icon {
width: 100%;
}
-.cryp-list .stats .damage-label {
+.construct-list .stats .damage-label {
grid-area: dl;
display: flex;
justify-content: center;
color: #666;
}
-.cryp-list .stats .speed-label {
+.construct-list .stats .speed-label {
grid-area: sl;
display: flex;
justify-content: center;
color: #666;
}
-.cryp-list .stats .life-label {
+.construct-list .stats .life-label {
grid-area: ll;
display: flex;
justify-content: center;
diff --git a/client/assets/styles/instance.mobile.css b/client/assets/styles/instance.mobile.css
index e8a7ff34..333a7fbe 100644
--- a/client/assets/styles/instance.mobile.css
+++ b/client/assets/styles/instance.mobile.css
@@ -7,12 +7,12 @@
"top"
"controls"
"vbox"
- "cryps"
+ "constructs"
}
/* Default view */
.instance .equip { display: none; }
.instance .info { display: none; }
- .instance .cryp-list { display: none; }
+ .instance .construct-list { display: none; }
.vbox {
grid-area: vbox;
display: grid;
@@ -31,13 +31,13 @@
.vbox-combiner {
margin-left: 0;
}
- /* Toggled view (cryps)*/
+ /* Toggled view (constructs)*/
#toggle-vbox-label {
text-align: center;
border: 2px solid #555;
}
#toggle-vbox-label:after{
- content: "Cryps";
+ content: "Constructs";
}
#toggle-vbox:checked ~ #toggle-vbox-label:after{
@@ -54,8 +54,8 @@
display: initial;
}
- #toggle-vbox:checked ~ .cryp-list {
- grid-area: cryps;
+ #toggle-vbox:checked ~ .construct-list {
+ grid-area: constructs;
display: grid;
justify-content: center;
@@ -75,12 +75,12 @@
margin-right: 0.5em;
}
- .cryp-list .skills {
+ .construct-list .skills {
flex-flow: row;
align-items: stretch;
}
- .instance-cryp {
+ .instance-construct {
grid-row: 2;
display: grid;
grid-template-rows: min-content 1fr;
@@ -95,20 +95,20 @@
transition-timing-function: ease;
}
- .instance-cryp .skills {
+ .instance-construct .skills {
display: none;
}
- .instance-cryp .specs {
+ .instance-construct .specs {
display: none;
}
- .instance-cryp .stats {
+ .instance-construct .stats {
display: none;
}
- .instance-cryp-active {
+ .instance-construct-active {
grid-row: 1;
grid-column: 1 / 3;
display: grid;
@@ -129,11 +129,11 @@
transition-timing-function: ease;
}
- .instance-cryp-active img {
+ .instance-construct-active img {
width: 55px;
}
- /* Cryp Stuff */
+ /* Construct Stuff */
}
\ No newline at end of file
diff --git a/client/assets/styles/styles.css b/client/assets/styles/styles.css
index 27c33658..d6736a5e 100644
--- a/client/assets/styles/styles.css
+++ b/client/assets/styles/styles.css
@@ -2,7 +2,7 @@
GLOBAL
*/
-html, body, #cryps {
+html, body, #constructs {
/*width: 100%;*/
margin: 0;
@@ -61,7 +61,7 @@ figure {
text-align: center;
}
-#cryps {
+#constructs {
padding: 0 2em;
display: grid;
grid-template-columns: 1fr 8fr;
@@ -277,13 +277,13 @@ button[disabled] {
flex-flow: column;
}
-#cryps input, #cryps select {
+#constructs input, #constructs select {
border-color: #444;
background-color: #333;
border-radius: 0;
}
-#cryps input:focus {
+#constructs input:focus {
border-color: whitesmoke;
}
@@ -349,7 +349,7 @@ header {
MENU
*/
-.menu-cryps {
+.menu-constructs {
display: grid;
grid-template-rows: min-content min-content;
@@ -358,14 +358,14 @@ header {
"list";
}
-.menu-cryps .list {
+.menu-constructs .list {
grid-area: list;
display: grid;
grid-template-columns: repeat(3, 1fr);
}
-.menu-cryp-ctr {
+.menu-construct-ctr {
/*flex: 0 0 30%;*/
display: flex;
@@ -374,7 +374,7 @@ header {
justify-content: center;
}
-.spawn-btn .menu-cryp {
+.spawn-btn .menu-construct {
border: 1px solid #333;
color: #333;
display: flex;
@@ -399,7 +399,7 @@ header {
opacity: 0
}
-.menu-cryp {
+.menu-construct {
height: 100%;
margin: 0.5em;
box-sizing: border-box;
@@ -512,7 +512,7 @@ main .top {
}
@media (max-height: 900px), (max-width: 1500px) {
- #cryps {
+ #constructs {
font-size: 75%;
}
diff --git a/client/assets/styles/styles.mobile.css b/client/assets/styles/styles.mobile.css
index ededd5af..17323160 100644
--- a/client/assets/styles/styles.mobile.css
+++ b/client/assets/styles/styles.mobile.css
@@ -1,5 +1,5 @@
@media (max-height: 800px), (max-width: 1000px) {
- #cryps {
+ #constructs {
font-size: 8pt;
padding: 0;
grid-template-columns: min-content 1fr;
diff --git a/client/index.html b/client/index.html
index 58b3d1d7..259100d0 100644
--- a/client/index.html
+++ b/client/index.html
@@ -1,12 +1,12 @@
- cryps.gg - mnml pvp atbs
+ mnml pvp tbs
-
+
diff --git a/client/manifest.webmanifest b/client/manifest.webmanifest
index 669d4991..de265af3 100644
--- a/client/manifest.webmanifest
+++ b/client/manifest.webmanifest
@@ -1,7 +1,7 @@
{
- "name": "cryps.gg - mnml pvp atbs",
- "description": "cryps.gg - mnml pvp atbs",
- "short_name": "cryps.gg",
+ "name": "constructs.gg - mnml pvp atbs",
+ "description": "constructs.gg - mnml pvp atbs",
+ "short_name": "constructs.gg",
"icons": [
{
"src": "./assets/icons/726.png",
diff --git a/client/package.json b/client/package.json
index a006be4f..dd03ae0c 100644
--- a/client/package.json
+++ b/client/package.json
@@ -1,5 +1,5 @@
{
- "name": "cryps-client",
+ "name": "mnml-client",
"version": "1.0.0",
"description": "",
"main": "index.js",
diff --git a/client/src/actions.jsx b/client/src/actions.jsx
index 9fc79bff..9e8e1b43 100644
--- a/client/src/actions.jsx
+++ b/client/src/actions.jsx
@@ -1,5 +1,5 @@
export const setAccount = value => ({ type: 'SET_ACCOUNT', value });
-export const setCryps = value => ({ type: 'SET_CRYPS', value });
+export const setConstructs = value => ({ type: 'SET_CONSTRUCTS', value });
export const setItemInfo = value => ({ type: 'SET_ITEM_INFO', value });
export const setSkip = value => ({ type: 'SET_SKIP', value });
export const setVboxHighlight = value => ({ type: 'SET_VBOX_HIGHLIGHT', value });
@@ -11,9 +11,9 @@ export const setGame = value => ({ type: 'SET_GAME', value });
export const setResolution = value => ({ type: 'SET_RESOLUTION', value });
export const setShowLog = value => ({ type: 'SET_SHOW_LOG', value });
export const setCombiner = value => ({ type: 'SET_COMBINER', value: Array.from(value) });
-export const setTeam = value => ({ type: 'SET_SELECTED_CRYPS', value: Array.from(value) });
-export const setActiveSkill = (crypId, skill) => ({ type: 'SET_ACTIVE_SKILL', value: crypId ? { crypId, skill } : null });
-export const setActiveCryp = value => ({ type: 'SET_ACTIVE_CRYP', value });
+export const setTeam = value => ({ type: 'SET_SELECTED_CONSTRUCTS', value: Array.from(value) });
+export const setActiveSkill = (constructId, skill) => ({ type: 'SET_ACTIVE_SKILL', value: constructId ? { constructId, skill } : null });
+export const setActiveConstruct = value => ({ type: 'SET_ACTIVE_CONSTRUCT', value });
export const setActiveItem = value => ({ type: 'SET_ACTIVE_VAR', value });
export const setInfo = value => ({ type: 'SET_INFO', value });
export const setItemEquip = value => ({ type: 'SET_ITEM_EQUIP', value });
diff --git a/client/src/app.jsx b/client/src/app.jsx
index a55e8647..60a58a4c 100644
--- a/client/src/app.jsx
+++ b/client/src/app.jsx
@@ -28,8 +28,8 @@ document.fonts.load('16pt "Jura"').then(() => {
store.dispatch(actions.setWs(ws));
ws.connect();
- const Cryps = () => (
-
+ const Constructs = () => (
+
@@ -21,7 +21,7 @@ function renderSpawnButton({ account, sendCrypSpawn }) {
diff --git a/client/src/components/cryp.spawn.container.js b/client/src/components/cryp.spawn.container.js
index 9b743b1b..3ba5b1cf 100644
--- a/client/src/components/cryp.spawn.container.js
+++ b/client/src/components/cryp.spawn.container.js
@@ -1,16 +1,16 @@
const { connect } = require('react-redux');
-const CrypSpawnButton = require('./cryp.spawn.button');
+const ConstructSpawnButton = require('./construct.spawn.button');
const addState = connect(
function receiveState(state) {
const { ws } = state;
- function sendCrypSpawn(name) {
- return ws.sendCrypSpawn(name);
+ function sendConstructSpawn(name) {
+ return ws.sendConstructSpawn(name);
}
- return { account: state.account, sendCrypSpawn };
+ return { account: state.account, sendConstructSpawn };
}
);
-module.exports = addState(CrypSpawnButton);
+module.exports = addState(ConstructSpawnButton);
diff --git a/client/src/components/game.component.jsx b/client/src/components/game.component.jsx
index fd83df43..d332d528 100644
--- a/client/src/components/game.component.jsx
+++ b/client/src/components/game.component.jsx
@@ -1,7 +1,7 @@
const preact = require('preact');
-const { STATS, eventClasses, getCombatText, crypAvatar } = require('../utils');
+const { STATS, eventClasses, getCombatText, constructAvatar } = require('../utils');
const { animationDivs } = require('../animations');
-const GameCryp = require('./game.cryp');
+const GameConstruct = require('./game.construct');
function GamePanel(props) {
const {
@@ -10,7 +10,7 @@ function GamePanel(props) {
resolution,
activeSkill,
setActiveSkill,
- setActiveCryp,
+ setActiveConstruct,
selectSkillTarget,
sendInstanceState,
sendGameReady,
@@ -76,9 +76,9 @@ function GamePanel(props) {
);
- function findCryp(id) {
- const team = game.players.find(t => t.cryps.find(c => c.id === id));
- if (team) return team.cryps.find(c => c.id === id);
+ function findConstruct(id) {
+ const team = game.players.find(t => t.constructs.find(c => c.id === id));
+ if (team) return team.constructs.find(c => c.id === id);
return null;
}
@@ -109,39 +109,39 @@ function GamePanel(props) {
);
function PlayerTeam(team) {
- const cryps = team.cryps.map((c, i) => );
+ const constructs = team.constructs.map((c, i) => );
return (
- {cryps}
+ {constructs}
);
}
- function OpponentCryp(cryp, i) {
- const ko = cryp.green_life.value === 0 ? 'ko' : '';
- const classes = eventClasses(resolution, cryp);
+ function OpponentConstruct(construct, i) {
+ const ko = construct.green_life.value === 0 ? 'ko' : '';
+ const classes = eventClasses(resolution, construct);
const stats = [STATS.greenLife, STATS.redLife, STATS.blueLife].map((s, j) => (
{s.svg(`stat-icon ${s.colour}`)}
- {cryp[s.stat].value} / {cryp[s.stat].max}
+ {construct[s.stat].value} / {construct[s.stat].max}
));
- const [combatText, combatClass] = getCombatText(cryp, resolution);
+ const [combatText, combatClass] = getCombatText(construct, resolution);
const combatTextClass = `combat-text ${combatClass}`;
const combatTextEl = combatText
? {combatText}
: null;
- const effects = cryp.effects.length
- ? cryp.effects.map(c => {c.effect} - {c.duration}T
)
+ const effects = construct.effects.length
+ ? construct.effects.map(c => {c.effect} - {c.duration}T
)
:
;
- const playerTeamIds = playerTeam.cryps.map(c => c.id);
+ const playerTeamIds = playerTeam.constructs.map(c => c.id);
const targeting = game.stack
- .filter(s => playerTeamIds.includes(s.source_cryp_id) && s.target_cryp_id === cryp.id)
+ .filter(s => playerTeamIds.includes(s.source_construct_id) && s.target_construct_id === construct.id)
.map((s, i) => {`< ${s.skill}`}
);
const anim = (
@@ -153,17 +153,17 @@ function GamePanel(props) {
return (
selectSkillTarget(cryp.id)} >
+ onClick={() => selectSkillTarget(construct.id)} >
{stats}
-
{cryp.name}
+
{construct.name}
{effects}
{targeting}
selectSkillTarget(cryp.id)} >
- {crypAvatar(cryp.name, cryp.id)}
+ onClick={() => selectSkillTarget(construct.id)} >
+ {constructAvatar(construct.name, construct.id)}
{combatTextEl}
{anim}
@@ -173,10 +173,10 @@ function GamePanel(props) {
function OpponentTeam(team) {
- const cryps = team.cryps.map(OpponentCryp);
+ const constructs = team.constructs.map(OpponentConstruct);
return (
- {cryps}
+ {constructs}
);
}
@@ -185,7 +185,7 @@ function GamePanel(props) {
function gameClick(e) {
e.stopPropagation();
- setActiveCryp(null);
+ setActiveConstruct(null);
}
return (
diff --git a/client/src/components/game.container.jsx b/client/src/components/game.container.jsx
index 03c421dc..50ebb468 100644
--- a/client/src/components/game.container.jsx
+++ b/client/src/components/game.container.jsx
@@ -13,12 +13,12 @@ const addState = connect(
resolution,
showLog,
activeSkill,
- activeCryp,
+ activeConstruct,
} = state;
- function selectSkillTarget(targetCrypId) {
+ function selectSkillTarget(targetConstructId) {
if (activeSkill) {
- return ws.sendGameSkill(game.id, activeSkill.crypId, targetCrypId, activeSkill.skill);
+ return ws.sendGameSkill(game.id, activeSkill.constructId, targetConstructId, activeSkill.skill);
}
return false;
}
@@ -34,7 +34,7 @@ const addState = connect(
// intercept self casting skills
if (activeSkill && activeSkill.skill.self_targeting) {
- ws.sendGameSkill(game.id, activeSkill.crypId, null, activeSkill.skill.skill);
+ ws.sendGameSkill(game.id, activeSkill.constructId, null, activeSkill.skill.skill);
}
return {
@@ -43,7 +43,7 @@ const addState = connect(
account,
resolution,
activeSkill,
- activeCryp,
+ activeConstruct,
selectSkillTarget,
sendInstanceState,
sendGameReady,
@@ -51,13 +51,13 @@ const addState = connect(
},
function receiveDispatch(dispatch) {
- function setActiveSkill(crypId, skill) {
- dispatch(actions.setActiveSkill(crypId, skill));
- // particlesJS(`particles-${crypId}`, config);
+ function setActiveSkill(constructId, skill) {
+ dispatch(actions.setActiveSkill(constructId, skill));
+ // particlesJS(`particles-${constructId}`, config);
}
- function setActiveCryp(cryp) {
- dispatch(actions.setActiveCryp(cryp));
+ function setActiveConstruct(construct) {
+ dispatch(actions.setActiveConstruct(construct));
}
function quit() {
@@ -73,7 +73,7 @@ const addState = connect(
dispatch(actions.setSkip(true));
}
- return { setActiveSkill, setActiveCryp, quit, toggleLog, skip };
+ return { setActiveSkill, setActiveConstruct, quit, toggleLog, skip };
}
);
diff --git a/client/src/components/game.cryp.jsx b/client/src/components/game.cryp.jsx
index 89bb2305..f26f8ff3 100644
--- a/client/src/components/game.cryp.jsx
+++ b/client/src/components/game.cryp.jsx
@@ -3,7 +3,7 @@ const preact = require('preact');
const range = require('lodash/range');
const actions = require('../actions');
-const { STATS, eventClasses, getCombatText, crypAvatar } = require('../utils');
+const { STATS, eventClasses, getCombatText, constructAvatar } = require('../utils');
const { animationDivs } = require('../animations');
const SkillBtn = require('./skill.btn');
@@ -18,16 +18,16 @@ const addState = connect(
activeSkill,
} = state;
- function selectSkillTarget(targetCrypId) {
+ function selectSkillTarget(targetConstructId) {
if (activeSkill) {
- return ws.sendGameSkill(game.id, activeSkill.crypId, targetCrypId, activeSkill.skill);
+ return ws.sendGameSkill(game.id, activeSkill.constructId, targetConstructId, activeSkill.skill);
}
return false;
}
// intercept self casting skills
if (activeSkill && activeSkill.skill.self_targeting) {
- ws.sendGameSkill(game.id, activeSkill.crypId, null, activeSkill.skill.skill);
+ ws.sendGameSkill(game.id, activeSkill.constructId, null, activeSkill.skill.skill);
}
return {
@@ -40,48 +40,48 @@ const addState = connect(
},
);
-function GameCryp(props) {
+function GameConstruct(props) {
const {
game,
account,
- cryp,
+ construct,
resolution,
activeSkill,
- setActiveCryp,
+ setActiveConstruct,
selectSkillTarget,
} = props;
- const ko = cryp.green_life.value === 0 ? 'ko' : '';
- const classes = eventClasses(resolution, cryp);
+ const ko = construct.green_life.value === 0 ? 'ko' : '';
+ const classes = eventClasses(resolution, construct);
const skills = range(0, 3)
- .map(i =>
);
+ .map(i =>
);
const stats = [STATS.greenLife, STATS.redLife, STATS.blueLife].map((s, j) => {
// i've seen this happen ;/
- if (cryp[s.stat].value < 0) console.warn(cryp);
+ if (construct[s.stat].value < 0) console.warn(construct);
return
{s.svg(`stat-icon ${s.colour}`)}
- {cryp[s.stat].value} / {cryp[s.stat].max}
+ {construct[s.stat].value} / {construct[s.stat].max}
});
- const [combatText, combatClass] = getCombatText(cryp, resolution);
+ const [combatText, combatClass] = getCombatText(construct, resolution);
const combatTextClass = `combat-text ${combatClass}`;
const combatTextEl = combatText
?
{combatText}
: null;
- const effects = cryp.effects.length
- ? cryp.effects.map(c =>
{c.effect} - {c.duration}T
)
+ const effects = construct.effects.length
+ ? construct.effects.map(c =>
{c.effect} - {c.duration}T
)
:
;
const playerTeam = game.players.find(t => t.id === account.id);
- const playerTeamIds = playerTeam.cryps.map(c => c.id);
+ const playerTeamIds = playerTeam.constructs.map(c => c.id);
const targeting = game.stack
- .filter(s => playerTeamIds.includes(s.source_cryp_id) && s.target_cryp_id === cryp.id)
+ .filter(s => playerTeamIds.includes(s.source_construct_id) && s.target_construct_id === construct.id)
.map((s, i) =>
{`< ${s.skill}`}
);
const anim = (
@@ -93,9 +93,9 @@ function GameCryp(props) {
return (
+ className={`game-construct ${ko} ${classes}`} >
- {cryp.name}
+ {construct.name}
{skills}
@@ -105,8 +105,8 @@ function GameCryp(props) {
selectSkillTarget(cryp.id)} >
- {crypAvatar(cryp.name, cryp.id)}
+ onClick={() => selectSkillTarget(construct.id)} >
+ {constructAvatar(construct.name, construct.id)}
{combatTextEl}
{anim}
@@ -120,4 +120,4 @@ function GameCryp(props) {
);
}
-module.exports = addState(GameCryp);
+module.exports = addState(GameConstruct);
diff --git a/client/src/components/header.component.jsx b/client/src/components/header.component.jsx
index 1a5077bd..1df1afc4 100644
--- a/client/src/components/header.component.jsx
+++ b/client/src/components/header.component.jsx
@@ -23,7 +23,7 @@ function renderHeader(args) {
return (
- cryps.gg
+ mnml.gg
{accountStatus}
diff --git a/client/src/components/info.component.jsx b/client/src/components/info.component.jsx
index 2c7f2dc8..8af1fbef 100644
--- a/client/src/components/info.component.jsx
+++ b/client/src/components/info.component.jsx
@@ -27,10 +27,10 @@ function Info(args) {
let red = 0;
let blue = 0;
let green = 0;
- player.cryps.forEach(cryp => {
- red += cryp.colours.red;
- blue += cryp.colours.blue;
- green += cryp.colours.green;
+ player.constructs.forEach(construct => {
+ red += construct.colours.red;
+ blue += construct.colours.blue;
+ green += construct.colours.green;
});
const teamColours = { red, blue, green };
diff --git a/client/src/components/instance.component.jsx b/client/src/components/instance.component.jsx
index e8fb641b..dff4d03c 100644
--- a/client/src/components/instance.component.jsx
+++ b/client/src/components/instance.component.jsx
@@ -3,7 +3,7 @@ const { connect } = require('react-redux');
const Vbox = require('./vbox.component');
const InfoContainer = require('./info.container');
-const InstanceCrypsContainer = require('./instance.cryps');
+const InstanceConstructsContainer = require('./instance.constructs');
const EquipmentContainer = require('./instance.equip');
const actions = require('../actions');
@@ -137,7 +137,7 @@ function Instance(args) {
-
+
);
}
diff --git a/client/src/components/instance.create.form.jsx b/client/src/components/instance.create.form.jsx
index 6eefda23..77a8abfc 100644
--- a/client/src/components/instance.create.form.jsx
+++ b/client/src/components/instance.create.form.jsx
@@ -6,9 +6,9 @@ const addState = connect(
function receiveState(state) {
const { ws, team } = state;
- function sendInstanceNew(sCryps, name, players) {
- if (sCryps.length) {
- return ws.sendInstanceNew(sCryps, name, players);
+ function sendInstanceNew(sConstructs, name, players) {
+ if (sConstructs.length) {
+ return ws.sendInstanceNew(sConstructs, name, players);
}
return false;
}
diff --git a/client/src/components/instance.cryps.jsx b/client/src/components/instance.cryps.jsx
index 4906520c..6e86b3ee 100644
--- a/client/src/components/instance.cryps.jsx
+++ b/client/src/components/instance.cryps.jsx
@@ -3,24 +3,24 @@ const preact = require('preact');
const range = require('lodash/range');
const shapes = require('./shapes');
-const { SPECS, STATS, instanceCryp } = require('../utils');
+const { SPECS, STATS, instanceConstruct } = require('../utils');
const actions = require('../actions');
const addState = connect(
function receiveState(state) {
- const { ws, instance, account, itemInfo, itemEquip, activeCryp } = state;
+ const { ws, instance, account, itemInfo, itemEquip, activeConstruct } = state;
const player = instance.players.find(p => p.id === account.id);
function sendInstanceReady() {
return ws.sendInstanceReady(instance.id);
}
- function sendVboxApply(crypId, i) {
- return ws.sendVboxApply(instance.id, crypId, i);
+ function sendVboxApply(constructId, i) {
+ return ws.sendVboxApply(instance.id, constructId, i);
}
- function sendUnequip(crypId, item) {
- return ws.sendVboxUnequip(instance.id, crypId, item);
+ function sendUnequip(constructId, item) {
+ return ws.sendVboxUnequip(instance.id, constructId, item);
}
return {
@@ -31,7 +31,7 @@ const addState = connect(
sendVboxApply,
itemInfo,
itemEquip,
- activeCryp,
+ activeConstruct,
sendUnequip,
};
},
@@ -45,8 +45,8 @@ const addState = connect(
dispatch(actions.setInfo(item));
}
- function setActiveCryp(value) {
- dispatch(actions.setActiveCryp(value));
+ function setActiveConstruct(value) {
+ dispatch(actions.setActiveConstruct(value));
}
function clearInfo() {
@@ -61,19 +61,19 @@ const addState = connect(
return dispatch(actions.setItemUnequip(v));
}
- return { quit, clearInfo, setInfo, setActiveCryp, setItemUnequip, setItemEquip };
+ return { quit, clearInfo, setInfo, setActiveConstruct, setItemUnequip, setItemEquip };
}
);
-function Cryp(props) {
+function Construct(props) {
const {
- activeCryp,
+ activeConstruct,
itemEquip,
- cryp,
+ construct,
player,
sendVboxApply,
- setActiveCryp,
+ setActiveConstruct,
setItemUnequip,
setItemEquip,
itemInfo,
@@ -84,9 +84,9 @@ function Cryp(props) {
function onClick(e) {
e.stopPropagation();
e.preventDefault();
- if (itemEquip !== null) sendVboxApply(cryp.id, itemEquip);
+ if (itemEquip !== null) sendVboxApply(construct.id, itemEquip);
setItemEquip(null);
- return setActiveCryp(cryp);
+ return setActiveConstruct(construct);
}
function hoverInfo(e, info) {
@@ -100,7 +100,7 @@ function Cryp(props) {
const specList = itemInfo.items.filter(v => v.spec).map(v => v.item);
const skills = range(0, 3).map(i => {
- const skill = cryp.skills[i];
+ const skill = construct.skills[i];
const s = skill
? skill.skill
: (
+);
@@ -108,15 +108,15 @@ function Cryp(props) {
function skillClick(e) {
if (!skill) return false;
setItemUnequip(skill.skill);
- setActiveCryp(cryp);
+ setActiveConstruct(construct);
e.stopPropagation();
return true;
}
function skillDblClick(e) {
if (!skill) return false;
- sendUnequip(cryp.id, skill.skill);
- setActiveCryp(null);
+ sendUnequip(construct.id, skill.skill);
+ setActiveConstruct(null);
setItemUnequip(null);
e.stopPropagation();
e.preventDefault();
@@ -140,7 +140,7 @@ function Cryp(props) {
});
const specs = range(0, 6).map(i => {
- const s = cryp.specs[i];
+ const s = construct.specs[i];
if (!s) {
const equip = specList.includes(vbox.bound[itemEquip]) ? 'equip-spec' : 'gray';
@@ -155,12 +155,12 @@ function Cryp(props) {
function specClick(e) {
e.stopPropagation();
setItemUnequip(s);
- setActiveCryp(cryp);
+ setActiveConstruct(construct);
}
function specDblClick(e) {
- sendUnequip(cryp.id, s);
- setActiveCryp(null);
+ sendUnequip(construct.id, s);
+ setActiveConstruct(null);
setItemUnequip(null);
e.stopPropagation();
e.preventDefault();
@@ -183,14 +183,14 @@ function Cryp(props) {
const stats = Object.values(STATS).map(s => (
{s.svg(`stat-icon ${s.colour} stat`)}
- {cryp[s.stat].value}
+ {construct[s.stat].value}
));
- const activeId = activeCryp ? activeCryp.id : false;
- const crypClass = activeId === cryp.id ? 'instance-cryp-active' : 'instance-cryp';
+ const activeId = activeConstruct ? activeConstruct.id : false;
+ const constructClass = activeId === construct.id ? 'instance-construct-active' : 'instance-construct';
- // const cTotal = cryp.colours.red + cryp.colours.blue + cryp.colours.green;
- // const colours = mapValues(cryp.colours, c => {
+ // 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);
// });
@@ -204,13 +204,13 @@ function Cryp(props) {
// const border = { border: `${thickness(cTotal)}px solid rgba(${colours.red}, ${colours.green}, ${colours.blue}, ${alpha})` };
return (
-
- {instanceCryp(cryp.name, cryp.id)}
-
{cryp.name}
-
hoverInfo(e, 'crypSkills')} >
+
+ {instanceConstruct(construct.name, construct.id)}
+
{construct.name}
+
hoverInfo(e, 'constructSkills')} >
{skills}
-
hoverInfo(e, 'crypSpecs')} >
+
hoverInfo(e, 'constructSpecs')} >
{specs}
@@ -231,15 +231,15 @@ function Cryp(props) {
);
}
-function InstanceCryps(props) {
+function InstanceConstructs(props) {
const {
- activeCryp,
+ activeConstruct,
itemEquip,
player,
instance,
// clearInfo,
setInfo,
- setActiveCryp,
+ setActiveConstruct,
sendVboxApply,
itemInfo,
@@ -252,27 +252,27 @@ function InstanceCryps(props) {
if (!player) return false;
if (instance.phase === 'Lobby') return false;
- const cryps = player.cryps.map((c, i) => Cryp({
- cryp: c,
- activeCryp,
+ const constructs = player.constructs.map((c, i) => Construct({
+ construct: c,
+ activeConstruct,
itemEquip,
setItemUnequip,
setItemEquip,
player,
sendVboxApply,
setInfo,
- setActiveCryp,
+ setActiveConstruct,
itemInfo,
setVboxHighlight,
sendUnequip,
}));
- const classes = `cryp-list`;
+ const classes = `construct-list`;
return (
-
setActiveCryp(null)}>
- {cryps}
+
setActiveConstruct(null)}>
+ {constructs}
);
}
-module.exports = addState(InstanceCryps);
+module.exports = addState(InstanceConstructs);
diff --git a/client/src/components/instance.equip.jsx b/client/src/components/instance.equip.jsx
index 174d8fb4..fa5f8813 100644
--- a/client/src/components/instance.equip.jsx
+++ b/client/src/components/instance.equip.jsx
@@ -8,14 +8,14 @@ const { convertItem, SPECS } = require('./../utils');
const addState = connect(
function receiveState(state) {
- const { account, activeCryp, itemInfo, info, ws, instance, itemUnequip } = state;
+ const { account, activeConstruct, itemInfo, info, ws, instance, itemUnequip } = state;
const player = instance.players.find(p => p.id === account.id);
- function sendUnequip(crypId, item) {
- return ws.sendVboxUnequip(instance.id, crypId, item);
+ function sendUnequip(constructId, item) {
+ return ws.sendVboxUnequip(instance.id, constructId, item);
}
- return { player, itemInfo, instance, info, sendUnequip, activeCryp, itemUnequip };
+ return { player, itemInfo, instance, info, sendUnequip, activeConstruct, itemUnequip };
},
function receiveDispatch(dispatch) {
@@ -48,7 +48,7 @@ function Equipment(props) {
itemUnequip,
setItemEquip,
setItemUnequip,
- activeCryp,
+ activeConstruct,
itemInfo,
sendUnequip,
@@ -65,7 +65,7 @@ function Equipment(props) {
const isSpec = fullInfo && fullInfo.spec;
function skillClick(e, i) {
- if (itemUnequip && activeCryp) return false;
+ if (itemUnequip && activeConstruct) return false;
const value = vbox.bound[i];
setItemEquip(i);
return false;
@@ -74,9 +74,9 @@ function Equipment(props) {
function unequipClick(e) {
e.stopPropagation();
if (!itemUnequip) return false;
- if (!activeCryp) return false;
+ if (!activeConstruct) return false;
setItemUnequip(null);
- return sendUnequip(activeCryp.id, itemUnequip);
+ return sendUnequip(activeConstruct.id, itemUnequip);
}
function hoverInfo(e, info) {
diff --git a/client/src/components/list.jsx b/client/src/components/list.jsx
index de57c909..18674f30 100644
--- a/client/src/components/list.jsx
+++ b/client/src/components/list.jsx
@@ -7,7 +7,7 @@ const InstanceCreateForm = require('./instance.create.form');
const addState = connect(
function receiveState(state) {
- const { ws, cryps, team, instances, account } = state;
+ const { ws, constructs, team, instances, account } = state;
function sendInstanceJoin(instance) {
if (team.length) {
@@ -26,7 +26,7 @@ const addState = connect(
return {
account,
- cryps,
+ constructs,
team,
sendInstanceJoin,
sendInstanceState,
diff --git a/client/src/components/menu.component.jsx b/client/src/components/menu.component.jsx
index 0356ffd3..479e0eff 100644
--- a/client/src/components/menu.component.jsx
+++ b/client/src/components/menu.component.jsx
@@ -3,7 +3,7 @@ const range = require('lodash/range');
const { NULL_UUID } = require('./../utils');
-const { stringSort, crypAvatar } = require('./../utils');
+const { stringSort, constructAvatar } = require('./../utils');
const SpawnButton = require('./spawn.button');
const InstanceCreateForm = require('./instance.create.form');
@@ -19,14 +19,14 @@ const COLOURS = [
function Menu(args) {
const {
account,
- cryps,
+ constructs,
team,
setTeam,
sendInstanceState,
- sendPlayerMmCrypsSet,
+ sendPlayerMmConstructsSet,
sendInstanceJoin,
sendInstanceList,
- sendCrypSpawn,
+ sendConstructSpawn,
instances,
} = args;
@@ -61,7 +61,7 @@ function Menu(args) {
//
// );
@@ -88,12 +88,12 @@ function Menu(args) {
);
}
- function crypList() {
- if (!cryps) return
;
+ function constructList() {
+ if (!constructs) return
;
// redux limitation + suggested workaround
// so much for dumb components
- function selectCryp(id) {
+ function selectConstruct(id) {
// remove
const i = team.findIndex(sid => sid === id);
if (i > -1) {
@@ -108,37 +108,37 @@ function Menu(args) {
return setTeam(team);
}
- const crypPanels = cryps.sort(idSort).map(cryp => {
- const colour = team.indexOf(cryp.id);
+ const constructPanels = constructs.sort(idSort).map(construct => {
+ const colour = team.indexOf(construct.id);
const selected = colour > -1;
const borderColour = selected ? COLOURS[colour] : '#000000';
return (
+ key={construct.id}
+ className="menu-construct-ctr">
selectCryp(cryp.id)} >
- {crypAvatar(cryp.name)}
-
{cryp.name}
+ onClick={() => selectConstruct(construct.id)} >
+ {constructAvatar(construct.name)}
+ {construct.name}
);
});
- const spawnButtonsNum = cryps.length < 3
- ? (3 - cryps.length)
+ const spawnButtonsNum = constructs.length < 3
+ ? (3 - constructs.length)
: 1;
const spawnButtons = range(spawnButtonsNum)
- .map(i =>
sendCrypSpawn(name)} />);
+ .map(i => sendConstructSpawn(name)} />);
return (
-
- {crypPanels}
+
+ {constructPanels}
{spawnButtons}
);
diff --git a/client/src/components/menu.container.jsx b/client/src/components/menu.container.jsx
index bd2fecc1..a43dab97 100644
--- a/client/src/components/menu.container.jsx
+++ b/client/src/components/menu.container.jsx
@@ -5,7 +5,7 @@ const actions = require('./../actions');
const addState = connect(
function receiveState(state) {
- const { ws, cryps, team, instances, account } = state;
+ const { ws, constructs, team, instances, account } = state;
function sendInstanceJoin(instance) {
if (team.length) {
@@ -14,15 +14,15 @@ const addState = connect(
return false;
}
- function sendPlayerMmCrypsSet() {
+ function sendPlayerMmConstructsSet() {
if (team.length) {
- return ws.sendPlayerMmCrypsSet(team);
+ return ws.sendPlayerMmConstructsSet(team);
}
return false;
}
- function sendCrypSpawn(name) {
- return ws.sendCrypSpawn(name);
+ function sendConstructSpawn(name) {
+ return ws.sendConstructSpawn(name);
}
function sendInstanceState(instance) {
@@ -35,20 +35,20 @@ const addState = connect(
return {
account,
- cryps,
+ constructs,
team,
sendInstanceJoin,
sendInstanceState,
sendInstanceList,
- sendCrypSpawn,
- sendPlayerMmCrypsSet,
+ sendConstructSpawn,
+ sendPlayerMmConstructsSet,
instances,
};
},
function receiveDispatch(dispatch) {
- function setTeam(crypIds) {
- dispatch(actions.setTeam(crypIds));
+ function setTeam(constructIds) {
+ dispatch(actions.setTeam(constructIds));
}
return {
diff --git a/client/src/components/nav.jsx b/client/src/components/nav.jsx
index c06bc2d6..30a99040 100644
--- a/client/src/components/nav.jsx
+++ b/client/src/components/nav.jsx
@@ -15,7 +15,7 @@ const addState = connect(
account,
instances,
team,
- cryps,
+ constructs,
game,
} = state;
@@ -27,7 +27,7 @@ const addState = connect(
account,
instances,
team,
- cryps,
+ constructs,
game,
sendInstanceState,
};
@@ -60,7 +60,7 @@ function Nav(args) {
account,
sendInstanceState,
team,
- cryps,
+ constructs,
instances,
game,
@@ -81,8 +81,8 @@ function Nav(args) {
const teamElements = team.map((c, i) => {
if (c) {
- const cryp = cryps.find(f => f.id === c);
- return
;
+ const construct = constructs.find(f => f.id === c);
+ return
;
}
return
;
});
diff --git a/client/src/components/skill.btn.jsx b/client/src/components/skill.btn.jsx
index 548a8cc1..0a1742a1 100644
--- a/client/src/components/skill.btn.jsx
+++ b/client/src/components/skill.btn.jsx
@@ -17,8 +17,8 @@ const addState = connect(
},
function receiveDispatch(dispatch) {
- function setActiveSkill(crypId, skill) {
- dispatch(actions.setActiveSkill(crypId, skill));
+ function setActiveSkill(constructId, skill) {
+ dispatch(actions.setActiveSkill(constructId, skill));
}
return { setActiveSkill };
@@ -28,7 +28,7 @@ const addState = connect(
function Skill(props) {
const {
- cryp,
+ construct,
game,
i,
mobile,
@@ -36,14 +36,14 @@ function Skill(props) {
setActiveSkill,
} = props;
- const s = cryp.skills[i];
- const ko = cryp.green_life.value === 0 ? 'ko' : '';
+ const s = construct.skills[i];
+ const ko = construct.green_life.value === 0 ? 'ko' : '';
if (!s) {
return (
);
}
@@ -52,25 +52,25 @@ function Skill(props) {
? 'top'
: '';
- const cdText = cryp.skills[i].cd > 0
+ const cdText = construct.skills[i].cd > 0
? `- ${s.cd}T`
: '';
const highlight = activeSkill
- ? activeSkill.crypId === cryp.id && activeSkill.skill === s.skill
+ ? activeSkill.constructId === construct.id && activeSkill.skill === s.skill
: false;
function onClick(e) {
e.stopPropagation();
- return setActiveSkill(cryp.id, s.skill);
+ return setActiveSkill(construct.id, s.skill);
}
- const targeting = game.stack.some(stack => stack.source_cryp_id === cryp.id && stack.skill === s.skill);
+ const targeting = game.stack.some(stack => stack.source_construct_id === construct.id && stack.skill === s.skill);
return (