@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
44 lines • 1.91 kB
JavaScript
;
/**
* Protectorate Harvester - Advanced resource harvester with integrated medical support
* Dual-purpose unit combining resource gathering with healing capabilities
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProtHarvester = void 0;
const ability_js_1 = require("../../../../engine/ability.cjs");
const protectorate_classes_js_1 = require("../../protectorate-classes.cjs");
const operating_tower_js_1 = __importDefault(require("../building/operating-tower.cjs"));
class ProtHarvester extends protectorate_classes_js_1.ProtectorateHarvesterUnit {
constructor() {
super();
this.name = "Protectorate Harvester";
this.tier = "T0";
this.uuid = "9344860c-09c9-40e0-903b-f143d5a23ac9";
this.unlockedBy = ["faction/protectorate/building/operating-tower"];
this.description = "Harvests flux. Has Healing Wave ability. Harvesters respawn 60s after being destroyed.";
this.hp = 400;
this.heals.healingWave = new ability_js_1.Heal({
name: "Healing Wave",
description: "heals 150 in a 400 range area",
hotkey: "L",
cooldown: 60.0,
cooldownAtBuild: true,
range: 400,
targets: ["friendly:ground", "friendly:air"],
targetMode: "around-self",
healing: 150,
parentId: this.id,
parentUUID: this.uuid,
});
// Unit relationships
this.createdBy = [operating_tower_js_1.default.id];
}
}
exports.ProtHarvester = ProtHarvester;
// Static property for source path
ProtHarvester.src = "src/zerospace/faction/protectorate/unit/prot-harvester.ts";
exports.default = ProtHarvester;
//# sourceMappingURL=prot-harvester.js.map