@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
64 lines • 2.48 kB
JavaScript
/**
* Grell Harvester - Economic unit that generates biomass and spawns cultivators
* Essential for Grell economy and forward positioning strategies
*/
import { GrellHarvesterUnit } from "../../../../defaults/grell.js";
import { Spell } from "../../../../engine/ability.js";
export class GrellHarvester extends GrellHarvesterUnit {
// Static properties for ID references
constructor() {
super();
this.hexiteCost = 100;
this.fluxCost = 0;
this.buildTime = 25;
this.buildCount = 1;
this.gathersFlux = 1;
this.gathersRichFlux = 2;
this.name = "Grell Harvester";
this.tier = "T0";
this.hotkey = "H";
this.uuid = "3cba31af-7e39-4f33-94ba-dff08dd4a213";
// Internal game engine data
this.internalId = "Troop_Grell_Harvester_C";
this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_Grell_Harvester.Default__Troop_Grell_Harvester_C";
this.internalTags = [
"Attackable.Unit.Troop",
"Attackable.Unit.Scavenger",
"Unit.IgnoreAllArmySelect",
"Unit.AutoControlGroup.Ignore",
"Attackable.ArmorType.Medium",
"Attackable.Biological",
];
this.internalSecondaryTags = [];
this.unlockedBy = ["faction/grell/building/root-colony"];
this.createdBy = ["faction/grell/building/root-colony"];
this.creates = ["faction/grell/building/cultivator"];
this.description =
"Harvests flux. Has the ability to spawn Cultivators. Harvesters respawn 60s after being destroyed.";
this.hp = 275;
this.shields = 0;
this.armor = 0;
this.armorType = "light";
this.speed = 510;
this.supply = 0;
this.maxOwned = 10;
this.providesBiomass = 375;
this.turnSpeed = 3000;
this.healthRegen = 5;
this.spells.spawnCultivator = new Spell({
name: "Spawn Cultivator",
description: "Spawns a free cultivator (spawns with ability off cooldown)",
hotkey: "G",
cooldown: 60,
cooldownAtBuild: false,
range: 375,
targets: ["map"],
parentId: this.id,
parentUUID: this.uuid,
});
}
}
// Static property for source path
GrellHarvester.src = "src/zerospace/faction/grell/unit/grell-harvester.ts";
export default GrellHarvester;
//# sourceMappingURL=grell-harvester.js.map