ZeroSpace.gg

Hauler

Protectorate T2 Army Unit

import { ProtectorateArmyUnit } from "../../../../defaults/protectorate.js"; import { Passive, Siege, Spell } from "../../../../engine/ability.js"; export class Hauler extends ProtectorateArmyUnit { override uuid: string; static override src = "src/zerospace/faction/protectorate/unit/hauler.ts"; override get infuseCost(): number | undefined { return 16; } constructor() { super(); this.hexiteCost = 100; this.fluxCost = 100; this.buildTime = 46; this.buildCount = 1; this.name = "Hauler"; this.tier = "T2"; this.supply = 4; this.hotkey = "Y"; this.uuid = "7d66d0d8-3685-4d5f-917a-b797520acf5d"; this.hp = 350; this.shields = 0; this.armor = 0; this.armorType = "heavy"; this.speed = 700; this.vision = 1600; this.domain = "air"; this.description = "Air transport. Heals biological units inside. \nCan land to heal biological units nearby. \nMust be landed to load units."; this.maxTurrets = 0; this.carryCapacity = 20; this.createdBy = ["faction/protectorate/building/skydock"]; this.upgradedBy = ["faction/protectorate/building/mechanical-research-lab"]; this.unlockedBy = ["faction/protectorate/building/skydock"]; this.passives.healAura = new Passive({ name: "Heal Aura", description: "Heals nearby friendly units for 5 HP per second while in transport", healing: 5, cooldown: 1, parentId: this.id, parentUUID: this.uuid, }); this.spells.unload = new Spell({ name: "Unload", description: "Unloads all contained units at the target location", hotkey: "U", cooldown: 0.1, parentId: this.id, parentUUID: this.uuid, }); this.sieges.land = new Siege({ name: "Land", description: "Lands the hauler, unloading loaded units and healing nearby biological units for 4 health per second", hotkey: "C", cooldown: 0.5, togglesMode: "landed", parentId: this.id, parentUUID: this.uuid, }); } } export default Hauler;