@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
26 lines • 1.27 kB
JavaScript
/**
* Grell Harvester - Vynthra Commander Unit
* Clean inheritance from faction Grell Harvester with all properties and abilities
*/
import { GrellHarvester } from "../../../../faction/grell/unit/grell-harvester.js";
import CoopRootColony from "../building/coop-vynthra-root-colony.js";
export class CoopGrellHarvester extends GrellHarvester {
constructor() {
super();
// Generate composite UUID: {parent-uuid}:coop-vynthra
this.setVariantUUID("coop-vynthra");
// Coop-specific maxOwned limit (3/6/9 progression: Mera=3, Vynthra=6, Galavax=9)
this.maxOwned = 6;
// Dual unlock system: Building + Commander Level
this.unlockedBy = [
CoopRootColony.id, // Building requirement (from parent)
this.commanderLevelId(1), // Commander level 1 requirement
];
// Coop-specific relationships (replicate parent with coop references)
this.createdBy = [CoopRootColony.id];
// Builder capabilities inherited from parent (creates Cultivator -> maps to CoopCultivator)
}
}
CoopGrellHarvester.src = "src/zerospace/coop/commander/vynthra/unit/coop-vynthra-grell-harvester.ts";
export default CoopGrellHarvester;
//# sourceMappingURL=coop-vynthra-grell-harvester.js.map