@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
32 lines • 1.53 kB
JavaScript
/**
* Incubator - Vynthra Commander Building
* Clean inheritance from faction Incubator with all properties and abilities
*/
import Incubator from "../../../../faction/grell/building/incubator.js";
import CoopSeedling from "../unit/coop-vynthra-seedling.js";
import CoopStinger from "../unit/coop-vynthra-stinger.js";
import CoopLasher from "../unit/coop-vynthra-lasher.js";
import CoopAugmentationPool from "./coop-vynthra-augmentation-pool.js";
import CoopMediumIncubator from "./coop-vynthra-medium-incubator.js";
import CoopNourishingPod from "./coop-vynthra-nourishing-pod.js";
export class CoopIncubator extends Incubator {
constructor() {
super();
// Generate composite UUID: {parent-uuid}:coop-vynthra
this.setVariantUUID("coop-vynthra");
// Dual unlock system: Building + Commander Level
this.unlockedBy = [
CoopNourishingPod.id, // Building requirement
this.commanderLevelId(1), // Commander level 1 requirement
];
// Coop-specific unit creation - reference coop units, not faction ones
this.creates = [CoopStinger.id, CoopLasher.id];
// Built by coop builder
this.createdBy = [CoopSeedling.id];
// Unlocks coop buildings and units
this.unlocks = [CoopStinger.id, CoopAugmentationPool.id, CoopMediumIncubator.id];
}
}
CoopIncubator.src = "src/zerospace/coop/commander/vynthra/building/coop-vynthra-incubator.ts";
export default CoopIncubator;
//# sourceMappingURL=coop-vynthra-incubator.js.map