ZSGG Public Library
Yearl
Free-corsairs Hero Unit
import { FreeCorsairsHeroUnit } from "../../../../defaults/corsair.js";
import { Attack, Spell } from "../../../../engine/ability.js";
class CorsairHero extends FreeCorsairsHeroUnit {
override uuid: string;
static override src = "src/zerospace/mercenary/free-corsairs/hero/yearl.ts";
constructor() {
super();
this.hexiteCost = 220;
this.fluxCost = 0;
this.name = "Yearl";
this.buildTime = 5;
this.hotkey = "";
this.uuid = "d0451700-de2c-4e8a-b79d-b5e09b3b07a0";
this.internalId = "Troop_MPHero_Dread_C";
this.internalPath = "/Game/Nova/Archetypes_Heroes/Troop_MPHero_Dread.Default__Troop_MPHero_Dread_C";
this.internalTags = [
"Attackable.Unit.Hero",
"Logic.SpawnAtOldestSpawner",
"Attackable.Biological",
"Logic.NoVeterancy",
];
this.internalSecondaryTags = ["Biological", "Infantry"];
this.description = "Can cliffwalk, throw Sticky bombs, and become invisible while leaving a mine behind.";
this.hp = 150;
this.shields = 150;
this.armor = 0;
this.armorType = "hero";
this.speed = 500;
this.vision = 1800;
this.turnSpeed = 6000;
this.healthRegen = 6;
this.pushability = 0.1;
this.attacks.frontierHuntingRifle = new Attack({
name: "Frontier Hunting Rifle",
damage: 21,
range: 1200,
cooldown: 1.35,
armorPenetration: 0,
delay: 0,
targets: ["ground", "air"],
parentId: this.id,
parentUUID: this.uuid,
});
this.spells.disruptingShot = new Spell({
name: "Disrupting Shot",
description:
"Blast enemies dealing 30 damage, slowing, and preventing them from using attacks or abilities for 3 seconds.",
parentId: this.id,
parentUUID: this.uuid,
});
this.spells.shadowWalk = new Spell({
name: "Shadow Walk",
description:
"Stealth and gain +40% movement speed for 10 seconds. \nLeaves a mine at location. \nMine deals 30 damage and slows for 3 seconds. \nOnly one mine can be active at a time.",
hotkey: "S",
cooldown: 25,
energyCost: 0,
energyType: "classic",
targets: ["self"],
parentId: this.id,
parentUUID: this.uuid,
});
this.spells.stickyBomb = new Spell({
name: "Sticky Bomb",
description:
"Throw a sticky bomb. After 6 seconds it explodes dealing 50 damage and stunning them for 4 seconds. \nExplodes after delay OR on unit death.\nDamage radius increases until explosion",
hotkey: "H",
cooldown: 45,
energyCost: 0,
energyType: "classic",
targets: ["ground"],
delay: 5,
parentId: this.id,
parentUUID: this.uuid,
});
}
}
export default CorsairHero;