@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
61 lines • 2.26 kB
JavaScript
"use strict";
/**
* Prefect Aster - Battlefield engineer hero specializing in tactical construction and area control
* Hero unit with construction capabilities and combat support abilities
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.PrefectAster = void 0;
const ability_js_1 = require("../../../../engine/ability.cjs");
const protectorate_classes_js_1 = require("../../protectorate-classes.cjs");
const light_turret_js_1 = require("../building/light-turret.cjs");
class PrefectAster extends protectorate_classes_js_1.ProtectorateHeroUnit {
get shortName() {
return "Aster";
}
constructor() {
super();
this.name = "Prefect Aster";
this.uuid = "8f8dce4f-0c74-4080-aed4-de99ce1933fd";
this.hp = 130;
this.shields = 130;
this.armorType = "medium";
this.speed = 500;
this.stunResist = 50;
// Construction capabilities
this.creates = [light_turret_js_1.LightTurret.id];
this.attacks.attack = new ability_js_1.Attack({
name: "Attack",
damage: 16,
cooldown: 1.0,
range: 1200,
targets: ["ground", "air"],
parentId: this.id,
parentUUID: this.uuid,
});
this.spells.stunBlast = new ability_js_1.Spell({
name: "Stun Blast",
description: "The blast deals 50 damage and stuns enemies in a small area for 3s",
hotkey: "Z",
damage: 50,
cooldown: 20,
range: 800,
targets: ["ground"],
parentId: this.id,
parentUUID: this.uuid,
});
this.spells.constructLightTurret = new ability_js_1.Spell({
name: "Construct Light Turret",
description: "Construct a Light Turret which slows and attacks enemies.",
hotkey: "C",
cooldown: 75,
targets: ["map"],
parentId: this.id,
parentUUID: this.uuid,
});
}
}
exports.PrefectAster = PrefectAster;
// Static property for source path
PrefectAster.src = "src/zerospace/faction/protectorate/hero/prefect-aster.ts";
exports.default = PrefectAster;
//# sourceMappingURL=prefect-aster.js.map