ZeroSpace.gg

Defiant

Xol Co-Op T2 Army Unit

import { XolArmyUnit } from "../../../../../defaults/xol.js"; import { Attack, Upgrade } from "../../../../../engine/ability.js"; import { applyCoopXolMerges } from "../../../_util/coop-xol-merges.js"; export class CoopDefiant extends XolArmyUnit { static override src = "src/zerospace/coop/commander/anrubic/unit/coop-anrubic-defiant.ts"; override get variantOf(): string { return "faction/xol/unit/defiant"; } constructor() { super(); applyCoopXolMerges(this); this.buildTime = 16; this.name = "Defiant"; this.tier = "T2"; this.hotkey = ""; this.uuid = "050d69ba-1402-4c3f-bb2c-7553d084c364"; this.internalId = "Troop_Xol_Defiant_C"; this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_Xol_Defiant.Default__Troop_Xol_Defiant_C"; this.internalTags = [ "Attackable.Unit.Troop", "Local.Xol.Defiant", "Attackable.ArmorType.Heavy", "Logic.ABESAttacked", "Troop.Xol.Tier2", ]; this.internalSecondaryTags = ["Infantry"]; this.description = "Melee unit which gains energy when enemies attack it, and upon reaching full energy spins, dealing its attack damage to every enemy unit surrounding it in melee range."; this.unlockedBy = ["faction/xol/building/molten-core"]; this.hp = 500; this.energy = 6; this.startingEnergy = 0; this.shields = 0; this.armor = 2; this.armorType = "heavy"; this.abesEnergy = 6; this.speed = 575; this.supply = 4; this.turnSpeed = 2000; this.vision = 1600; this.pushability = 0; this.attacks.vectorSlash = new Attack({ internalId: "Default__Weapon_Xol_Defiant_C", name: "Vector Slash", damage: 36, range: 150, cooldown: 1.25, armorPenetration: 0, delay: 0.175, targets: ["ground"], bonusDamage: [{ multiplier: 1.5, vs: ["armor:light"] }], parentId: this.id, parentUUID: this.uuid, }); this.attacks.aBESPulse = new Attack({ name: "ABES Pulse", description: "Automatically releases when Defiant fills its ABES energy by being attacked.", damage: 15, range: 200, splash: { multiplier: 1, range: 200 }, bonusDamage: [{ multiplier: 1.5, vs: ["armor:light"] }], targets: ["ground"], targetMode: "around-self", energyCost: 6, energyType: "abes", parentId: this.id, parentUUID: this.uuid, }); this.unlockedBy = ["coop/commander/anrubic/building/coop-anrubic-world-forge"]; this.upgradedBy = ["coop/commander/anrubic/building/coop-anrubic-world-forge"]; this.upgrades.attackEfficiency = new Upgrade({ name: "Attack Efficiency", description: "Decreases the number of attacks required to trigger area damage by 3.", tier: "T1", position: "A", fluxCost: 150, researchTime: 50, parentId: this.id, parentUUID: this.uuid, uuid: "7c92ad4d-855d-4514-81ea-89dabd36f637", }); this.upgrades.enrageProtocols = new Upgrade({ name: "Enrage Protocols", description: "Decreases Overclock when shields are depleted.", tier: "T1", position: "B", fluxCost: 150, researchTime: 50, parentId: this.id, parentUUID: this.uuid, uuid: "bb81f198-16d9-4613-8dc4-bd5e160d058b", }); } } export default CoopDefiant;