ZSGG Public Library
Gatherer
Grell Co-Op T0 Harvester Unit
import { GrellHarvesterUnit, BiomassSpreadPassive } from "../../../../../defaults/grell.js";
import { Spell } from "../../../../../engine/ability.js";
export class CoopGatherer extends GrellHarvesterUnit {
override uuid: string;
static override src = "src/zerospace/coop/commander/vynthra/unit/coop-vynthra-gatherer.ts";
override get variantOf(): string {
return "faction/grell/unit/gatherer";
}
constructor() {
super();
this.hexiteCost = 100;
this.fluxCost = 0;
this.buildTime = 18;
this.buildCount = 1;
this.gathersFlux = 1;
this.gathersRichFlux = 2;
this.name = "Gatherer";
this.tier = "T0";
this.hotkey = "H";
this.uuid = "3477593f-e83c-4cb8-a9a9-90718faf74ef";
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.Biological",
"Attackable.ArmorType.Medium",
];
this.internalSecondaryTags = ["Biological"];
this.unlockedBy = ["coop/commander/vynthra/building/coop-vynthra-bloomwell"];
this.createdBy = ["coop/commander/vynthra/building/coop-vynthra-bloomwell"];
this.creates = ["coop/commander/vynthra/building/coop-vynthra-cultivator"];
this.description =
"Gathers flux. Has the ability to spawn Cultivators. \nGatherers respawn 60 seconds after being destroyed.";
this.hp = 275;
this.shields = 0;
this.armor = 0;
this.speed = 500;
this.supply = 0;
this.maxOwned = 8;
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: 600,
targets: ["map"],
parentId: this.id,
parentUUID: this.uuid,
});
const me = this;
this.passives.biomassSpread = new (class extends BiomassSpreadPassive {
constructor() {
super(375, { parentId: me.id, parentUUID: me.uuid });
this.description += " Only works when not moving.";
}
})();
this.internalId = undefined;
this.internalPath = undefined;
this.setVariantUUID("coop-vynthra");
this.maxOwned = 6;
this.unlockedBy = ["coop/commander/vynthra/building/coop-vynthra-bloomwell"];
this.createdBy = ["coop/commander/vynthra/building/coop-vynthra-bloomwell"];
this.creates = ["coop/commander/vynthra/building/coop-vynthra-cultivator"];
}
}
export default CoopGatherer;