ZeroSpace.gg

Havoc

Xol Co-Op Army Unit

import { XolArmyUnit } from "../../../../../defaults/xol.js"; import { Passive, Spell } from "../../../../../engine/ability.js"; export class CoopHavoc extends XolArmyUnit { static override src = "src/zerospace/coop/commander/anrubic/unit/coop-anrubic-havoc.ts"; override eligibleForInfusionOverride = true; override replicateCostOverride = 32.5; override get variantOf(): string { return "faction/xol/unit/havoc"; } constructor() { super(); this.name = "Havoc"; this.description = "It charges through enemies. Explodes on death dealing 300 damage."; this.tier = "T2"; this.uuid = "bdfd2849-4009-43f4-b25e-14dbb9e5410a"; // Not buildable — a Roller becomes one via the Havoc topbar — but it carries an intrinsic // cost anyway, which is what prices Replicate and Reanimate against it. this.internalId = "Troop_Xol_Havoc_C"; this.internalTags = [ "Attackable.Unit.Troop", "Local.Xol.Havoc", "Attackable.SecondaryType.Vehicle", "Attackable.ArmorType.Medium", "Troop.Xol.Tier2", ]; this.internalSecondaryTags = ["Vehicle"]; //TODO Stats might actually be different from PVP. Not in unit test map. this.hexiteCost = 200; this.fluxCost = 200; this.hp = 400; this.shields = 0; this.armor = 1; this.armorType = "medium"; this.speed = 900; this.supply = 4; this.carryCapacity = 8; this.passives.rollOver = new Passive({ name: "Roll Over", description: "Damages units underneath the Havoc every 0.1 seconds while moving, up to 40 damage per hit at maximum speed. Deals no damage while stationary. Maximum-speed damage increases by approximately 5 per loaded Roller.", damage: 40, cooldown: 0.1, targetMode: "around-self", targets: ["ground"], parentId: this.id, parentUUID: this.uuid, }); this.passives.explodes = new Passive({ name: "Explodes", description: "Explodes on death, dealing 300 damage.", damage: 300, targetMode: "around-self", targets: ["ground"], parentId: this.id, parentUUID: this.uuid, }); this.supply = 2; this.tier = ""; this.hexiteCost = 0; this.fluxCost = 0; this.spells.superCharge = new Spell({ name: "Supercharge", hotkey: "F", description: "Increases its movement speed by +50%, grants 80% damage reduction. Lasts 15 seconds.", cooldown: 90, //TODO Verify duration: 15, targets: ["map"], targetMode: "location", parentId: this.id, parentUUID: this.uuid, }); } } export default CoopHavoc;