@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
56 lines • 2.18 kB
JavaScript
/**
* Marran Halo Tank - T3 elite fortress with dual-layer shields and laser ability
* Ultimate expression of Marran defensive engineering philosophy
*/
import { Attack } from "../../../../engine/ability.js";
import { MarranMercUnit } from "../../marran-classes.js";
import { MarranMercOutpostBuilding } from "../building/marran-merc-outpost.js";
export class MarranHaloTank extends MarranMercUnit {
constructor() {
super();
this.name = "Marran Halo Tank";
this.tier = "T3";
this.buildCount = 1;
this.hexiteCost = 125;
this.fluxCost = 250;
this.uuid = "0a88dc86-a065-46f6-9d26-35770f146c74";
this.description = "Heavy tank which can attack while moving. Each attack charges up a powerful laser, dealing damage in a line after 4 attacks. Attacks ground units.";
// Set short name
this.shortName = "Halo Tank";
// Mutable properties - elite fortress platform with advanced systems
this.supply = 7;
// TODO: Convert to getter - this.infuseCost = 18;
this.hp = 350;
this.shields = 350; // Dual-layer maximum protection
this.armorType = "heavy";
this.speed = 400;
// Relationships
this.createdBy = [MarranMercOutpostBuilding.id];
this.unlockedBy = [MarranMercOutpostBuilding.id];
// Primary attack system
this.attacks.attack = new Attack({
name: "Attack",
damage: 50,
cooldown: 1.3,
range: 1400,
targets: ["ground"],
parentId: this.id,
parentUUID: this.uuid,
});
// ABES-powered laser attack
this.attacks.laser = new Attack({
name: "Laser",
energyCost: 4,
energyType: "abes",
damage: 40,
targets: ["ground"],
description: "Does 80 damage in a line",
parentId: this.id,
parentUUID: this.uuid,
});
}
}
// Static property for source path
MarranHaloTank.src = "src/zerospace/mercenary/marran/unit/marran-halo-tank.ts";
export default MarranHaloTank;
//# sourceMappingURL=marran-halo-tank.js.map