ZSGG Public Library
Skrell
Grell T2.5 Army Unit
import { GrellArmyUnit } from "../../../../defaults/grell.js";
import { Attack, Upgrade } from "../../../../engine/ability.js";
export class Skrell extends GrellArmyUnit {
override uuid: string;
static override src = "src/zerospace/faction/grell/unit/skrell.ts";
constructor() {
super();
this.hexiteCost = 50;
this.fluxCost = 75;
this.buildTime = 35;
this.buildCount = 4;
this.name = "Skrell";
this.tier = "T2.5";
this.hotkey = "T";
this.uuid = "06475a6d-672c-4d64-a876-c22686ea3535";
this.internalId = "Troop_GrellSkrelling_C";
this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_GrellSkrelling.Default__Troop_GrellSkrelling_C";
this.internalTags = [
"Attackable.Unit.Troop",
"Attackable.FlyingUnit",
"Attackable.ArmorType.Light",
"Attackable.Unit.Light",
"Attackable.Biological",
];
this.internalSecondaryTags = ["Air"];
this.unlockedBy = ["faction/grell/building/skyclutch"];
this.createdBy = ["faction/grell/building/broodwomb"];
this.upgradedBy = ["faction/grell/building/skyclutch"];
const unit = this;
this.hp = 50;
this.shields = 0;
this.armor = 0;
this.armorType = "light";
this.speed = 900;
this.supply = 1;
this.vision = 1400;
this.turnSpeed = 5000;
this.description = "Light skirmish flier that poisons enemies on attack.";
Object.assign(this, { domain: "air" });
this.attacks.astralBlight = new Attack({
name: "Astral Blight",
damage: 5,
range: 200,
cooldown: 1,
targets: ["air", "ground"],
bonusDamage: [
{ multiplier: 1.5, vs: ["domain:air"] },
{ multiplier: 1.5, vs: ["unit:harvester"] },
],
armorPenetration: 0,
delay: 0,
parentId: this.id,
parentUUID: this.uuid,
});
this.upgrades.thoracicSacs = new Upgrade({
name: "Thoracic Sacs",
description: "+4 Attack Range",
tier: "T2.5",
fluxCost: 125,
researchTime: 50,
apply() {
unit.attacks.astralBlight!.range = 600;
},
parentId: this.id,
parentUUID: this.uuid,
});
this.upgrades.volatileAcids = new Upgrade({
name: "Volatile Acids",
description: "When killed, deal 50 damage to nearby enemy air units",
tier: "T2.5",
fluxCost: 125,
researchTime: 50,
parentId: this.id,
parentUUID: this.uuid,
});
}
}
export default Skrell;