@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
60 lines • 2.44 kB
JavaScript
"use strict";
/**
* Marran Halo Tank - T3 elite fortress with dual-layer shields and laser ability
* Ultimate expression of Marran defensive engineering philosophy
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.MarranHaloTank = void 0;
const ability_js_1 = require("../../../../engine/ability.cjs");
const marran_classes_js_1 = require("../../marran-classes.cjs");
const marran_merc_outpost_js_1 = require("../building/marran-merc-outpost.cjs");
class MarranHaloTank extends marran_classes_js_1.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 = [marran_merc_outpost_js_1.MarranMercOutpostBuilding.id];
this.unlockedBy = [marran_merc_outpost_js_1.MarranMercOutpostBuilding.id];
// Primary attack system
this.attacks.attack = new ability_js_1.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 ability_js_1.Attack({
name: "Laser",
energyCost: 4,
energyType: "abes",
damage: 40,
targets: ["ground"],
description: "Does 80 damage in a line",
parentId: this.id,
parentUUID: this.uuid,
});
}
}
exports.MarranHaloTank = MarranHaloTank;
// Static property for source path
MarranHaloTank.src = "src/zerospace/mercenary/marran/unit/marran-halo-tank.ts";
exports.default = MarranHaloTank;
//# sourceMappingURL=marran-halo-tank.js.map