/// module TS.SpaceTac.Equipments { export class ForceField extends LootTemplate { constructor() { super(SlotType.Shield, "Force Field", "A basic force field, generated by radiating waves of compressed energy"); this.setSkillsRequirements({ "skill_photons": istep(1, irepeat(2)) }); this.addAttributeEffect("shield_capacity", istep(100, irepeat(40))); } } export class GravitShield extends LootTemplate { constructor() { super(SlotType.Shield, "Gravit Shield", "A shield able to repel damage and enemies using micro-gravity wells", 140, 180); this.setSkillsRequirements({ "skill_gravity": istep(2, irepeat(3)) }); this.addAttributeEffect("shield_capacity", istep(80, irepeat(30))); this.addFireAction(irepeat(2), 0, istep(300, irepeat(10)), [ new EffectTemplate(new RepelEffect(), { value: istep(100, irepeat(5)) }) ]); } } export class InverterShield extends LootTemplate { constructor() { super(SlotType.Shield, "Inverter Shield", "An antimatter shield that tries to cancel inbound energy", 300, 160); this.setSkillsRequirements({ "skill_antimatter": istep(2, irepeat(2)) }); this.addAttributeEffect("shield_capacity", istep(130, irepeat(45))); this.addAttributeEffect("power_generation", istep(-0.2, irepeat(-0.3))); } } }