Merge branch 'release/1.5.2'
This commit is contained in:
commit
87ffb48b7e
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mnml-client",
|
"name": "mnml-client",
|
||||||
"version": "1.5.1",
|
"version": "1.5.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
2626
client/assets/mnml.logo.trim.svg
Normal file
2626
client/assets/mnml.logo.trim.svg
Normal file
File diff suppressed because it is too large
Load Diff
|
After Width: | Height: | Size: 98 KiB |
@ -187,6 +187,11 @@
|
|||||||
align-self: center;
|
align-self: center;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
height: auto;
|
height: auto;
|
||||||
|
svg {
|
||||||
|
display: inline;
|
||||||
|
height: 1em;
|
||||||
|
margin-right: 0.1em
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* some stupid bug in chrome makes it fill the entire screen */
|
/* some stupid bug in chrome makes it fill the entire screen */
|
||||||
|
|||||||
@ -288,7 +288,7 @@ li {
|
|||||||
|
|
||||||
.logo {
|
.logo {
|
||||||
height: 2em;
|
height: 2em;
|
||||||
background-image: url("../../src/components/svgs/menu.logo.svg");
|
background-image: url("../../assets/mnml.logo.trim.svg");
|
||||||
background-size: contain;
|
background-size: contain;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: left;
|
background-position: left;
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
font-size: 12pt;
|
font-size: 12pt;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
grid-template-rows: 1fr min-content;
|
grid-template-rows: 10fr 1fr;
|
||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
"main"
|
"main"
|
||||||
"footer";
|
"footer";
|
||||||
@ -31,6 +31,9 @@
|
|||||||
|
|
||||||
footer {
|
footer {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#nav-btn, #instance-nav {
|
#nav-btn, #instance-nav {
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mnml-client",
|
"name": "mnml-client",
|
||||||
"version": "1.5.1",
|
"version": "1.5.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@ -74,8 +74,8 @@ function getObjects(resolution, stages, game, account) {
|
|||||||
function getSequence(resolution) {
|
function getSequence(resolution) {
|
||||||
if (!resolution.event) return [];
|
if (!resolution.event) return [];
|
||||||
if (resolution.event[0] === 'Inversion') return [];
|
if (resolution.event[0] === 'Inversion') return [];
|
||||||
|
if (['TargetKo', 'Ko'].includes(resolution.event[0])) return [];
|
||||||
if (['Skill', 'AoeSkill'].includes(resolution.event[0])) return ['START_SKILL', 'END_SKILL'];
|
if (['Skill', 'AoeSkill'].includes(resolution.event[0])) return ['START_SKILL', 'END_SKILL'];
|
||||||
if (resolution.event[0] === 'Ko') return ['POST_SKILL'];
|
|
||||||
|
|
||||||
switch (resolution.stages) {
|
switch (resolution.stages) {
|
||||||
case 'AllStages': return ['START_SKILL', 'END_SKILL', 'POST_SKILL'];
|
case 'AllStages': return ['START_SKILL', 'END_SKILL', 'POST_SKILL'];
|
||||||
|
|||||||
@ -52,6 +52,8 @@ function GameFooter(props) {
|
|||||||
sendInstanceState,
|
sendInstanceState,
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
|
if (!game) return false; // ???
|
||||||
|
|
||||||
const playerTeam = game.players.find(t => t.id === account.id);
|
const playerTeam = game.players.find(t => t.id === account.id);
|
||||||
|
|
||||||
function quitClick() {
|
function quitClick() {
|
||||||
|
|||||||
@ -32,7 +32,7 @@ function Instance(args) {
|
|||||||
|
|
||||||
sendInstanceReady,
|
sendInstanceReady,
|
||||||
} = args;
|
} = args;
|
||||||
|
if (!instance) return false;
|
||||||
const rdyClasses = `ready-btn ready`;
|
const rdyClasses = `ready-btn ready`;
|
||||||
const readyInfo = instance.phase === 'Lobby'
|
const readyInfo = instance.phase === 'Lobby'
|
||||||
? 'lobbyReady'
|
? 'lobbyReady'
|
||||||
|
|||||||
@ -106,7 +106,7 @@ function JoinButtons(args) {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
document.execCommand('copy');
|
document.execCommand('copy');
|
||||||
infoToast('Invite link copied.');
|
infoToast('Invite link copied to clipboard.');
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error('link copy error', err);
|
console.error('link copy error', err);
|
||||||
errorToast('Invite link copy error.');
|
errorToast('Invite link copy error.');
|
||||||
|
|||||||
@ -2,12 +2,15 @@ const preact = require('preact');
|
|||||||
const { Component } = require('preact');
|
const { Component } = require('preact');
|
||||||
const { connect } = require('preact-redux');
|
const { connect } = require('preact-redux');
|
||||||
// const anime = require('animejs').default;
|
// const anime = require('animejs').default;
|
||||||
|
const reactStringReplace = require('react-string-replace');
|
||||||
const throttle = require('lodash/throttle');
|
const throttle = require('lodash/throttle');
|
||||||
|
|
||||||
|
const shapes = require('./shapes');
|
||||||
|
const { removeTier } = require('../utils');
|
||||||
|
|
||||||
const addState = connect(
|
const addState = connect(
|
||||||
({ game, account, animTarget, animating }) =>
|
({ game, account, animTarget, animating, itemInfo }) =>
|
||||||
({ game, account, animTarget, animating })
|
({ game, account, animTarget, animating, itemInfo })
|
||||||
);
|
);
|
||||||
|
|
||||||
class TargetSvg extends Component {
|
class TargetSvg extends Component {
|
||||||
@ -25,7 +28,7 @@ class TargetSvg extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
render(props, state) {
|
render(props, state) {
|
||||||
const { game, account, animating, animTarget } = props;
|
const { game, account, animating, animTarget, itemInfo } = props;
|
||||||
const { width, height } = state;
|
const { width, height } = state;
|
||||||
if (!game) return false; // game will be null when battle ends
|
if (!game) return false; // game will be null when battle ends
|
||||||
|
|
||||||
@ -33,9 +36,17 @@ class TargetSvg extends Component {
|
|||||||
// just put skill name up
|
// just put skill name up
|
||||||
if (animating) {
|
if (animating) {
|
||||||
if (!animTarget) return false;
|
if (!animTarget) return false;
|
||||||
|
const itemSource = itemInfo.combos.filter(c => c.item === removeTier(animTarget.skill));
|
||||||
|
const itemSourceInfo = itemSource.length
|
||||||
|
? `${itemSource[0].components[0]} ${itemSource[0].components[1]} ${itemSource[0].components[2]}`
|
||||||
|
: false;
|
||||||
|
const itemRegEx = /(Red|Blue|Green)/;
|
||||||
|
const itemSourceDescription = reactStringReplace(itemSourceInfo, itemRegEx, match => shapes[match]());
|
||||||
return (
|
return (
|
||||||
<h1 class="resolving-skill">{animTarget.skill}</h1>
|
<div class="resolving-skill">
|
||||||
|
<h1>{animTarget.skill}</h1>
|
||||||
|
<div> {itemSourceDescription} </div>
|
||||||
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mnml-ops",
|
"name": "mnml-ops",
|
||||||
"version": "1.5.1",
|
"version": "1.5.2",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "mnml"
|
name = "mnml"
|
||||||
version = "1.5.1"
|
version = "1.5.2"
|
||||||
authors = ["ntr <ntr@smokestack.io>"]
|
authors = ["ntr <ntr@smokestack.io>"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|||||||
@ -967,9 +967,9 @@ mod tests {
|
|||||||
|
|
||||||
construct.apply_modifiers(&player_colours);
|
construct.apply_modifiers(&player_colours);
|
||||||
|
|
||||||
assert!(construct.red_power.value == construct.red_power.base + construct.red_power.base.pct(50));
|
assert!(construct.red_power.value == construct.red_power.base + construct.red_power.base.pct(35));
|
||||||
assert!(construct.green_power.value == construct.green_power.base + construct.green_power.base.pct(75));
|
assert!(construct.green_power.value == construct.green_power.base + construct.green_power.base.pct(50));
|
||||||
assert!(construct.blue_power.value == construct.blue_power.base + construct.blue_power.base.pct(100));
|
assert!(construct.blue_power.value == construct.blue_power.base + construct.blue_power.base.pct(70));
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -993,7 +993,7 @@ mod tests {
|
|||||||
assert!(construct.red_power.value == construct.red_power.base + construct.red_power.base.pct(10));
|
assert!(construct.red_power.value == construct.red_power.base + construct.red_power.base.pct(10));
|
||||||
assert!(construct.green_power.value == construct.green_power.base + construct.green_power.base.pct(10));
|
assert!(construct.green_power.value == construct.green_power.base + construct.green_power.base.pct(10));
|
||||||
assert!(construct.blue_power.value == construct.blue_power.base + construct.blue_power.base.pct(10));
|
assert!(construct.blue_power.value == construct.blue_power.base + construct.blue_power.base.pct(10));
|
||||||
assert!(construct.green_life.value == construct.green_life.base + 100);
|
assert!(construct.green_life.value == construct.green_life.base + 125);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1039,7 +1039,7 @@ mod tests {
|
|||||||
|
|
||||||
construct.apply_modifiers(&player_colours);
|
construct.apply_modifiers(&player_colours);
|
||||||
|
|
||||||
assert!(construct.red_power.value == construct.red_power.base + construct.red_power.base.pct(50));
|
assert!(construct.red_power.value == construct.red_power.base + construct.red_power.base.pct(35));
|
||||||
assert!(construct.green_power.value == construct.green_power.base + construct.green_power.base.pct(25));
|
assert!(construct.green_power.value == construct.green_power.base + construct.green_power.base.pct(25));
|
||||||
assert!(construct.blue_power.value == construct.blue_power.base + construct.blue_power.base.pct(25));
|
assert!(construct.blue_power.value == construct.blue_power.base + construct.blue_power.base.pct(25));
|
||||||
|
|
||||||
|
|||||||
@ -305,7 +305,7 @@ fn post_resolve(_skill: Skill, game: &mut Game, mut resolutions: Resolutions) ->
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
if target.affected(Effect::Absorb) {
|
if target.affected(Effect::Absorb) && !target.is_ko() {
|
||||||
let ConstructEffect { effect: _, duration: _, meta, tick: _ } = target.effects.iter()
|
let ConstructEffect { effect: _, duration: _, meta, tick: _ } = target.effects.iter()
|
||||||
.find(|e| e.effect == Effect::Absorb).unwrap().clone();
|
.find(|e| e.effect == Effect::Absorb).unwrap().clone();
|
||||||
match meta {
|
match meta {
|
||||||
@ -316,7 +316,7 @@ fn post_resolve(_skill: Skill, game: &mut Game, mut resolutions: Resolutions) ->
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
if c == Colour::Red {
|
if c == Colour::Red {
|
||||||
if target.affected(Effect::Counter) {
|
if target.affected(Effect::Counter) && !target.is_ko() {
|
||||||
let ConstructEffect { effect: _, duration: _, meta, tick: _ } = target.effects.iter()
|
let ConstructEffect { effect: _, duration: _, meta, tick: _ } = target.effects.iter()
|
||||||
.find(|e| e.effect == Effect::Counter).unwrap().clone();
|
.find(|e| e.effect == Effect::Counter).unwrap().clone();
|
||||||
match meta {
|
match meta {
|
||||||
@ -717,27 +717,28 @@ impl Skill {
|
|||||||
Skill::Attack => 80, // Base
|
Skill::Attack => 80, // Base
|
||||||
|
|
||||||
Skill::Blast=> 110, // BB
|
Skill::Blast=> 110, // BB
|
||||||
Skill::BlastPlus => 130, // BB
|
Skill::BlastPlus => 145, // BB
|
||||||
Skill::BlastPlusPlus => 150, // BB
|
Skill::BlastPlusPlus => 210, // BB
|
||||||
|
|
||||||
Skill::Chaos=> 40, // BR
|
Skill::Chaos=> 40, // BR
|
||||||
Skill::ChaosPlus => 50, // BR
|
Skill::ChaosPlus => 65, // BR
|
||||||
Skill::ChaosPlusPlus => 60, // BR
|
Skill::ChaosPlusPlus => 90, // BR
|
||||||
|
|
||||||
|
Skill::Heal=> 125, //GG
|
||||||
|
Skill::HealPlus => 185, //GG
|
||||||
|
Skill::HealPlusPlus => 270, //GG
|
||||||
|
|
||||||
Skill::Heal=> 130, //GG
|
|
||||||
Skill::HealPlus => 160, //GG
|
|
||||||
Skill::HealPlusPlus => 200, //GG
|
|
||||||
Skill::SiphonTick=> 40, // GB
|
Skill::SiphonTick=> 40, // GB
|
||||||
Skill::SiphonTickPlus => 70,
|
Skill::SiphonTickPlus => 50,
|
||||||
Skill::SiphonTickPlusPlus => 110,
|
Skill::SiphonTickPlusPlus => 60,
|
||||||
|
|
||||||
Skill::Slay=> 70, // RG
|
Skill::Slay=> 70, // RG
|
||||||
Skill::SlayPlus => 90,
|
Skill::SlayPlus => 115,
|
||||||
Skill::SlayPlusPlus => 120,
|
Skill::SlayPlusPlus => 180,
|
||||||
|
|
||||||
Skill::Strike=> 90, //RR
|
Skill::Strike=> 90, //RR
|
||||||
Skill::StrikePlus => 110,
|
Skill::StrikePlus => 140,
|
||||||
Skill::StrikePlusPlus => 140,
|
Skill::StrikePlusPlus => 200,
|
||||||
|
|
||||||
// Block Base
|
// Block Base
|
||||||
Skill::ElectrocuteTick=> 80,
|
Skill::ElectrocuteTick=> 80,
|
||||||
@ -1583,9 +1584,17 @@ fn absorb(source: &mut Construct, target: &mut Construct, mut results: Resolutio
|
|||||||
|
|
||||||
fn absorption(source: &mut Construct, target: &mut Construct, mut results: Resolutions, reflect_skill: Skill, amount: u64, skill: Skill) -> Resolutions {
|
fn absorption(source: &mut Construct, target: &mut Construct, mut results: Resolutions, reflect_skill: Skill, amount: u64, skill: Skill) -> Resolutions {
|
||||||
let absorb = skill.effect()[0].set_meta(EffectMeta::AddedDamage(amount));
|
let absorb = skill.effect()[0].set_meta(EffectMeta::AddedDamage(amount));
|
||||||
|
|
||||||
results.push(Resolution::new(source, target)
|
results.push(Resolution::new(source, target)
|
||||||
.event(target.add_effect(reflect_skill, absorb))
|
.event(target.add_effect(reflect_skill, absorb))
|
||||||
.stages(EventStages::PostOnly));
|
.stages(EventStages::PostOnly));
|
||||||
|
|
||||||
|
let absorb_index = target.effects.iter().position(|e| e.effect == Effect::Absorb).expect("No absorb");
|
||||||
|
let ce = target.effects.remove(absorb_index);
|
||||||
|
|
||||||
|
results.push(Resolution::new(source, target)
|
||||||
|
.event(Event::Removal { effect: ce.effect, construct_effects: target.effects.clone() })
|
||||||
|
.stages(EventStages::PostOnly));
|
||||||
return results;;
|
return results;;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -174,161 +174,161 @@ impl Spec {
|
|||||||
Spec::PowerRR=> SpecValues {
|
Spec::PowerRR=> SpecValues {
|
||||||
base: 25,
|
base: 25,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 15 },
|
||||||
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 25 }
|
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 20 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerGG=> SpecValues {
|
Spec::PowerGG=> SpecValues {
|
||||||
base: 25,
|
base: 25,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 15 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 25 }
|
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 20 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerBB=> SpecValues {
|
Spec::PowerBB=> SpecValues {
|
||||||
base: 25,
|
base: 25,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 15 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 25 }
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 20 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRG=> SpecValues {
|
Spec::PowerRG=> SpecValues {
|
||||||
base: 15,
|
base: 20,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 15 },
|
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 5 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 15 },
|
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 15 }
|
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 15 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerGB=> SpecValues {
|
Spec::PowerGB=> SpecValues {
|
||||||
base: 15,
|
base: 20,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 15 },
|
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 5 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 15 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 15 }
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 15 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRB=> SpecValues {
|
Spec::PowerRB=> SpecValues {
|
||||||
base: 15,
|
base: 20,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 15 },
|
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 5 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 15 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 15 }
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 15 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRRPlus => SpecValues {
|
Spec::PowerRRPlus => SpecValues {
|
||||||
base: 40,
|
base: 45,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 15 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 25 },
|
||||||
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 40 }
|
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 35 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerGGPlus => SpecValues {
|
Spec::PowerGGPlus => SpecValues {
|
||||||
base: 40,
|
base: 45,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 15 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 25 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 40 }
|
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 35 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerBBPlus => SpecValues {
|
Spec::PowerBBPlus => SpecValues {
|
||||||
base: 40,
|
base: 45,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 15 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 25 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 40 }
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 35 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRGPlus => SpecValues {
|
Spec::PowerRGPlus => SpecValues {
|
||||||
base: 25,
|
base: 35,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 20 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 25 }
|
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 25 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerGBPlus => SpecValues {
|
Spec::PowerGBPlus => SpecValues {
|
||||||
base: 25,
|
base: 35,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 20 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 25 }
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 25 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRBPlus => SpecValues {
|
Spec::PowerRBPlus => SpecValues {
|
||||||
base: 25,
|
base: 35,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 10 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 25 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 20 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 25 }
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 25 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
Spec::PowerRRPlusPlus => SpecValues {
|
Spec::PowerRRPlusPlus => SpecValues {
|
||||||
base: 60,
|
base: 80,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 60 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 25 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 60 },
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 45 },
|
||||||
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 60 }
|
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 60 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerGGPlusPlus => SpecValues {
|
Spec::PowerGGPlusPlus => SpecValues {
|
||||||
base: 60,
|
base: 80,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 60 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 25 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 60 },
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 45 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 60 }
|
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 60 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerBBPlusPlus => SpecValues {
|
Spec::PowerBBPlusPlus => SpecValues {
|
||||||
base: 60,
|
base: 80,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 60 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 25 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 60 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 45 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 60 }
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 60 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRGPlusPlus => SpecValues {
|
Spec::PowerRGPlusPlus => SpecValues {
|
||||||
base: 40,
|
base: 60,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 20 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 30 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 40 }
|
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 45 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerGBPlusPlus => SpecValues {
|
Spec::PowerGBPlusPlus => SpecValues {
|
||||||
base: 40,
|
base: 60,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 20 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 30 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 40 }
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 45 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::PowerRBPlusPlus => SpecValues {
|
Spec::PowerRBPlusPlus => SpecValues {
|
||||||
base: 40,
|
base: 60,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 20 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 40 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 30 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 40 }
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 45 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -500,167 +500,167 @@ impl Spec {
|
|||||||
},
|
},
|
||||||
|
|
||||||
Spec::Life => SpecValues {
|
Spec::Life => SpecValues {
|
||||||
base: 100,
|
base: 125,
|
||||||
bonuses: vec![]},
|
bonuses: vec![]},
|
||||||
|
|
||||||
Spec::LifeRR=> SpecValues {
|
Spec::LifeRR=> SpecValues {
|
||||||
base: 200,
|
base: 275,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 100 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 75 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 100 },
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 125 },
|
||||||
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 100 }
|
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 175 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeGG=> SpecValues {
|
Spec::LifeGG=> SpecValues {
|
||||||
base: 200,
|
base: 225,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 100 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 50 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 100 },
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 75 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 100 }
|
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 125 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeBB=> SpecValues {
|
Spec::LifeBB=> SpecValues {
|
||||||
base: 200,
|
base: 275,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 100 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 75 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 100 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 125 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 100 }
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 175 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeRG=> SpecValues {
|
Spec::LifeRG=> SpecValues {
|
||||||
base: 150,
|
base: 125,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 75 },
|
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 50 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 75 },
|
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 75 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 75 }
|
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 125 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeGB=> SpecValues {
|
Spec::LifeGB=> SpecValues {
|
||||||
base: 150,
|
base: 125,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 75 },
|
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 50 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 75 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 75 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 75 }
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 125 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeRB=> SpecValues {
|
Spec::LifeRB=> SpecValues {
|
||||||
base: 150,
|
base: 175,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 75 },
|
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 50 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 75 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 75 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 75 }
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 125 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeRRPlus => SpecValues {
|
Spec::LifeRRPlus => SpecValues {
|
||||||
base: 300,
|
base: 500,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 150 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 125 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 150 },
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 225 },
|
||||||
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 150 }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
Spec::LifeGGPlus => SpecValues {
|
|
||||||
base: 300,
|
|
||||||
bonuses: vec![
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 150 },
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 150 },
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 150 }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
Spec::LifeBBPlus => SpecValues {
|
|
||||||
base: 300,
|
|
||||||
bonuses: vec![
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 150 },
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 150 },
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 150 }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
Spec::LifeRGPlus => SpecValues {
|
|
||||||
base: 200,
|
|
||||||
bonuses: vec![
|
|
||||||
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 100 },
|
|
||||||
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 100 },
|
|
||||||
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 100 }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
Spec::LifeGBPlus => SpecValues {
|
|
||||||
base: 200,
|
|
||||||
bonuses: vec![
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 100 },
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 100 },
|
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 100 }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
|
|
||||||
Spec::LifeRBPlus => SpecValues {
|
|
||||||
base: 200,
|
|
||||||
bonuses: vec![
|
|
||||||
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 100 },
|
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 100 },
|
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 100 }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
Spec::LifeRRPlusPlus => SpecValues {
|
|
||||||
base: 300,
|
|
||||||
bonuses: vec![
|
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 300 },
|
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 300 },
|
|
||||||
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 300 }
|
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 300 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeGGPlusPlus => SpecValues {
|
Spec::LifeGGPlus => SpecValues {
|
||||||
base: 300,
|
base: 400,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 300 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 90 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 300 },
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 130 },
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 225 }
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
Spec::LifeBBPlus => SpecValues {
|
||||||
|
base: 500,
|
||||||
|
bonuses: vec![
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 125 },
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 225 },
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 300 }
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
Spec::LifeRGPlus => SpecValues {
|
||||||
|
base: 225,
|
||||||
|
bonuses: vec![
|
||||||
|
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 100 },
|
||||||
|
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 150 },
|
||||||
|
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 225 }
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
Spec::LifeGBPlus => SpecValues {
|
||||||
|
base: 225,
|
||||||
|
bonuses: vec![
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 100 },
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 150 },
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 225 }
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
Spec::LifeRBPlus => SpecValues {
|
||||||
|
base: 350,
|
||||||
|
bonuses: vec![
|
||||||
|
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 100 },
|
||||||
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 150 },
|
||||||
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 225 }
|
||||||
|
],
|
||||||
|
},
|
||||||
|
Spec::LifeRRPlusPlus => SpecValues {
|
||||||
|
base: 875,
|
||||||
|
bonuses: vec![
|
||||||
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 0 }, bonus: 225 },
|
||||||
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 0 }, bonus: 400 },
|
||||||
|
SpecBonus { req: Colours { red: 20, green: 0, blue: 0 }, bonus: 525 }
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
Spec::LifeGGPlusPlus => SpecValues {
|
||||||
|
base: 475,
|
||||||
|
bonuses: vec![
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 0 }, bonus: 130 },
|
||||||
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 0 }, bonus: 225 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 300 }
|
SpecBonus { req: Colours { red: 0, green: 20, blue: 0 }, bonus: 300 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeBBPlusPlus => SpecValues {
|
Spec::LifeBBPlusPlus => SpecValues {
|
||||||
base: 300,
|
base: 875,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 300 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 5 }, bonus: 225 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 300 },
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 10 }, bonus: 400 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 300 }
|
SpecBonus { req: Colours { red: 0, green: 0, blue: 20 }, bonus: 525 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeRGPlusPlus => SpecValues {
|
Spec::LifeRGPlusPlus => SpecValues {
|
||||||
base: 200,
|
base: 400,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 200 },
|
SpecBonus { req: Colours { red: 2, green: 2, blue: 0 }, bonus: 175 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 200 },
|
SpecBonus { req: Colours { red: 5, green: 5, blue: 0 }, bonus: 275 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 200 }
|
SpecBonus { req: Colours { red: 10, green: 10, blue: 0 }, bonus: 400 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeGBPlusPlus => SpecValues {
|
Spec::LifeGBPlusPlus => SpecValues {
|
||||||
base: 200,
|
base: 625,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 200 },
|
SpecBonus { req: Colours { red: 0, green: 2, blue: 2 }, bonus: 175 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 200 },
|
SpecBonus { req: Colours { red: 0, green: 5, blue: 5 }, bonus: 275 },
|
||||||
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 200 }
|
SpecBonus { req: Colours { red: 0, green: 10, blue: 10 }, bonus: 400 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
Spec::LifeRBPlusPlus => SpecValues {
|
Spec::LifeRBPlusPlus => SpecValues {
|
||||||
base: 200,
|
base: 400,
|
||||||
bonuses: vec![
|
bonuses: vec![
|
||||||
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 200 },
|
SpecBonus { req: Colours { red: 2, green: 0, blue: 2 }, bonus: 175 },
|
||||||
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 200 },
|
SpecBonus { req: Colours { red: 5, green: 0, blue: 5 }, bonus: 275 },
|
||||||
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 200 }
|
SpecBonus { req: Colours { red: 10, green: 0, blue: 10 }, bonus: 400 }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user