UNPKG

@zerospacegg/iolin

Version:

Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)

75 lines 2.93 kB
/** * Cyclops - Heavy mech with advanced charging beam weapon system * Precision targeting unit with charge-up attack mechanics */ import { ProtectorateArmyUnit } from "../../../../defaults/protectorate.js"; import { Attack, Upgrade } from "../../../../engine/ability.js"; export class Cyclops extends ProtectorateArmyUnit { get infuseCost() { return 4; } constructor() { super(); // Auto-generated fixes from dev data comparison // Fix: HP - set later in mutable properties section this.hexiteCost = 100; this.fluxCost = 175; this.buildTime = 45; this.name = "Cyclops"; this.tier = "T3"; this.hotkey = "F"; this.supply = 6; this.uuid = "d04eaaff-d9b7-4b7a-ac5c-29230e14d816"; // Internal game engine data this.internalId = "Troop_Prot_Disruptor_C"; this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_Prot_Disruptor.Default__Troop_Prot_Disruptor_C"; this.internalTags = ["Attackable.Unit.Troop", "Attackable.ArmorType.Medium"]; this.internalSecondaryTags = ["Vehicle"]; this.description = "Light combat tank equipped with a long range laser which deals additional damage over time against single targets. Attacks ground and air units."; this.hp = 350; this.armorType = "heavy"; this.speed = 600; this.turnSpeed = 10000; this.pushability = 0.45; this.attacks.chargingBeam = new Attack({ name: "Attack", damage: 4, cooldown: 0.4, cooldownBetweenShots: 0, armorPenetration: 100, delay: 0.1, range: 1300, targets: ["air", "ground"], bonusDamage: [{ multiplier: 1.75, vs: ["armor:heavy"] }], parentId: this.id, parentUUID: this.uuid, }); this.upgrades.chargeSpeed = new Upgrade({ name: "Charge Speed", description: "-50% beam charge time", fluxCost: 100, researchTime: 50, tier: "T3.5", parentId: this.id, parentUUID: this.uuid, }); this.upgrades.slow = new Upgrade({ name: "Slow", description: "Attacks reduce movement speed by 20%", fluxCost: 100, researchTime: 50, tier: "T3.5", parentId: this.id, parentUUID: this.uuid, }); // Unit relationships this.createdBy = ["faction/protectorate/building/advanced-factory"]; this.unlockedBy = ["faction/protectorate/building/advanced-factory"]; this.upgradedBy = ["faction/protectorate/building/specialized-research-lab"]; } } // Static property for source path Cyclops.src = "src/zerospace/faction/protectorate/unit/cyclops.ts"; export default Cyclops; //# sourceMappingURL=cyclops.js.map