From 47598e47dcffde79a93aa8a8d1f7a5ecb51ab837 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Lemaire?= Date: Tue, 17 Apr 2018 11:52:39 +0200 Subject: [PATCH] WIP --- src/core/models/ModelAvenger.ts | 31 ++++++++++++++++++++++++ src/core/models/ModelBreeze.ts | 42 +++++++++++++++++++++++++-------- 2 files changed, 63 insertions(+), 10 deletions(-) diff --git a/src/core/models/ModelAvenger.ts b/src/core/models/ModelAvenger.ts index 4bc228e..93a52dd 100644 --- a/src/core/models/ModelAvenger.ts +++ b/src/core/models/ModelAvenger.ts @@ -56,6 +56,37 @@ module TK.SpaceTac { actions: [long_range_missile] }, ]; + } else if (level == 2) { + let tracker = new TriggerAction("Tracking Beacon", { + effects: [new StickyEffect(new AttributeLimitEffect("evasion", 0), 2)], + power: 2, + range: 300 + }, "precisionboost"); + + return [ + { + code: "Tracking Beacon", + cost: 2, + description: "If an enemy comes too close, mark it with a low-power beacon, so that it will not evade your revenge", + actions: [tracker] + }, + { + code: "Cyclomatic Power Output", + cost: 3, + description: "Clever usage of thermo-harmonics to boost the power core output", + effects: [ + new AttributeEffect("power_capacity", 1), + ] + }, + { + code: "Fast Tactical Scanner", + cost: 1, + description: "Deploy a scanner at the start of battle to be ready to shoot as soon as possible", + effects: [ + new AttributeEffect("initiative", 1), + ] + } + ]; } else { return this.getStandardUpgrades(level); } diff --git a/src/core/models/ModelBreeze.ts b/src/core/models/ModelBreeze.ts index ec88472..e9c3adb 100644 --- a/src/core/models/ModelBreeze.ts +++ b/src/core/models/ModelBreeze.ts @@ -25,21 +25,14 @@ module TK.SpaceTac { }, "gatlinggun"); gatling.configureCooldown(2, 1); - let shield_steal = new TriggerAction("Shield Steal", { - effects: [new ValueTransferEffect("shield", -1)], - power: 1, - blast: 300 - }, "shieldtransfer"); - shield_steal.configureCooldown(1, 2); - return [ { code: "Breeze Base", effects: [ new AttributeEffect("initiative", 3), - new AttributeEffect("evasion", 1), new AttributeEffect("hull_capacity", 1), new AttributeEffect("shield_capacity", 2), + new AttributeEffect("evasion", 1), new AttributeEffect("power_capacity", 6), ] }, @@ -51,11 +44,40 @@ module TK.SpaceTac { code: "Gatling Gun", actions: [gatling] }, + ]; + } else if (level == 2) { + let shield_steal = new TriggerAction("Shield Steal", { + effects: [new ValueTransferEffect("shield", -1)], + power: 1, + blast: 300 + }, "shieldtransfer"); + shield_steal.configureCooldown(1, 2); + + let escape_plan = new TriggerAction("Escape Route Planner", { + effects: [new StickyEffect(new AttributeEffect("evasion", 1), 1)], + power: 3 + }, "evasion"); + + return [ + { + code: "Escape Route Planner", + cost: 2, + description: "Compute escape routes to evade a dangerous situation", + actions: [escape_plan], + }, + { + code: "Deflective Hull", + cost: 3, + description: "High-density hull modifications to deflect a part of received damage", + effects: [new AttributeEffect("hull_capacity", 1)], + }, { code: "Shield Steal", - actions: [shield_steal] + cost: 2, + description: "When among enemy lines, suck some shield power to help your artillery", + actions: [shield_steal], }, - ]; + ] } else { return this.getStandardUpgrades(level); }