ZSGG Public Library
Destroyer
Grell Co-Op Army Unit
import { CoopFrenzySkill, GrellArmyUnit } from "../../../../../defaults/grell.js";
import { Attack, DeathTrigger, Passive } from "../../../../../engine/ability.js";
export class CoopVynthraDestroyer extends GrellArmyUnit {
static override src = "src/zerospace/coop/commander/vynthra/unit/coop-vynthra-destroyer.ts";
constructor() {
super();
this.name = "Destroyer";
this.uuid = "ee9b52d5-5557-4b00-b70c-3553d676c941";
this.description = "Massive timed-life guardian.";
this.tier = "";
this.hexiteCost = 0;
this.fluxCost = 0;
this.buildTime = 0;
this.buildCount = 1;
this.supply = 0;
this.internalId = "Troop_Coop_Vynthra_Destroyer_C";
this.internalPath = undefined;
this.internalTags = [
"Attackable.Unit.Troop",
"Attackable.ArmorType.Heavy",
"Attackable.Biological",
"Logic.NoVeterancy",
"Logic.MapBoss",
"Attackable.Unit.Massive",
"Unit.Temporary",
];
this.hp = 7349;
this.armor = 2;
this.armorType = "heavy";
this.speed = 600;
this.stunResist = 100;
// Loses 184 life per second.
this.timedLife = 40;
this.creates = ["coop/commander/vynthra/unit/coop-vynthra-boomer"];
this.unlocks = ["coop/commander/vynthra/unit/coop-vynthra-boomer"];
this.attacks.attack = new Attack({
name: "Attack",
damage: 100,
shots: 2,
cooldown: 2,
range: 200,
targets: ["ground", "air"],
splash: { multiplier: 0.5, range: 100 },
parentId: this.id,
parentUUID: this.uuid,
});
this.passives.spawnBoomer = new Passive({
name: "Spawn Boomer",
description: "Spawns a Boomer once every 3 seconds.",
cooldown: 3,
parentId: this.id,
parentUUID: this.uuid,
});
this.onDeath.spawnBoomers = new DeathTrigger({
name: "Spawn Boomers",
description: "Spawns 10 Boomers.",
shots: 10,
parentId: this.id,
parentUUID: this.uuid,
});
this.spells.frenzy = new CoopFrenzySkill({ parentId: this.id, parentUUID: this.uuid });
}
}
export default CoopVynthraDestroyer;