@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
66 lines • 2.68 kB
JavaScript
/**
* Marran Halo Tank - T3 elite fortress with dual-layer shields and laser ability
* Ultimate expression of Marran defensive engineering philosophy
*/
import { MarranMercUnit } from "../../../../defaults/marran.js";
import { Attack } from "../../../../engine/ability.js";
export class MarranHaloTank extends MarranMercUnit {
constructor() {
super();
// Auto-generated fixes from dev data comparison
this.hexiteCost = 125;
this.fluxCost = 250;
this.buildCount = 1;
this.name = "Marran Halo Tank";
this.tier = "T3";
this.internalId = "Troop_Marran_Halo_C";
this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_Marran_Halo.Default__Troop_Marran_Halo_C";
this.internalTags = ["Attackable.Unit.Troop", "Attackable.ArmorType.Heavy", "Logic.ABES"];
this.internalSecondaryTags = ["Vehicle"];
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;
this.turnSpeed = 1500;
this.pushability = 0.45;
// Relationships
this.createdBy = ["mercenary/marran/building/marran-merc-outpost"];
this.unlockedBy = ["mercenary/marran/building/marran-merc-outpost"];
// Primary attack system
this.attacks.attack = new Attack({
name: "Attack",
damage: 50,
cooldown: 1.3,
cooldownBetweenShots: 0,
armorPenetration: 0,
delay: 0,
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