UNPKG

@zerospacegg/iolin

Version:

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

64 lines 2.31 kB
/** * Hellfire - Long-range artillery platform with devastating splash damage and siege capabilities * Mobile artillery unit with multi-volley missile system */ import { Attack, Upgrade } from "../../../../engine/ability.js"; import { ProtectorateArmyUnit } from "../../protectorate-classes.js"; import Factory from "../building/factory.js"; import MechanicalResearchLab from "../building/mechanical-research-lab.js"; export class Hellfire extends ProtectorateArmyUnit { get infuseCost() { return 13; } constructor() { super(); this.name = "Hellfire"; this.tier = "T2.5"; this.supply = 6; this.hexiteCost = 150; this.fluxCost = 100; this.buildTime = 50; this.uuid = "a4cb9bbf-57ca-4d5a-8611-6dad6020799e"; this.description = "Long range artillery. Attacks ground units."; this.hp = 350; this.armorType = "medium"; this.speed = 400; this.attacks.missiles = new Attack({ name: "Attack", damage: 16, volleys: 6, cooldown: 5, range: 2000, splash: { multiplier: 1.0, range: 200 }, targets: ["ground"], parentId: this.id, parentUUID: this.uuid, }); this.upgrades.siegeMode = new Upgrade({ name: "Siege Mode", description: "Unlocks the siege ability. Increases the range of the hellfire by 40%. Cannot move while sieged.", tier: "T2.5", fluxCost: 100, researchTime: 50, parentId: this.id, parentUUID: this.uuid, }); this.upgrades.resonantMissiles = new Upgrade({ name: "Resonant Missiles", description: "+50% missile speed, +15% more missiles", tier: "T3.5", fluxCost: 150, researchTime: 60, parentId: this.id, parentUUID: this.uuid, }); // Unit relationships this.createdBy = [Factory.id]; this.upgradedBy = [MechanicalResearchLab.id]; this.unlockedBy = [Factory.id]; } } // Static property for source path Hellfire.src = "src/zerospace/faction/protectorate/unit/hellfire.ts"; export default Hellfire; //# sourceMappingURL=hellfire.js.map