@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
31 lines • 1.64 kB
JavaScript
/**
* Advanced Factory - Mera Commander Building
* Clean inheritance from faction Advanced Factory with all properties and abilities
*/
import AdvancedFactory from "../../../../faction/protectorate/building/advanced-factory.js";
import CoopFactory from "./coop-mera-factory.js";
import CoopProtBuildDrone from "../unit/coop-mera-prot-build-drone.js";
import CoopCyclops from "../unit/coop-mera-cyclops.js";
import CoopJuggernaut from "../unit/coop-mera-juggernaut.js";
import CoopStrider from "../unit/coop-mera-strider.js";
import CoopGriffin from "../unit/coop-mera-griffin.js";
import CoopSpecializedResearchLab from "./coop-mera-specialized-research-lab.js";
export class CoopAdvancedFactory extends AdvancedFactory {
constructor() {
super();
// Generate composite UUID: {parent-uuid}:coop-mera
this.setVariantUUID("coop-mera");
// Dual unlock system: Building + Commander Level
this.unlockedBy = [
CoopFactory.id, // Factory requirement
this.commanderLevelId(5), // Commander level 5 requirement
];
// Coop-specific unlock chains - reference coop buildings and units, not faction ones
this.unlocks = [CoopCyclops.id, CoopJuggernaut.id, CoopStrider.id, CoopGriffin.id, CoopSpecializedResearchLab.id];
this.creates = [CoopCyclops.id, CoopJuggernaut.id, CoopStrider.id, CoopGriffin.id];
this.createdBy = [CoopProtBuildDrone.id];
}
}
CoopAdvancedFactory.src = "src/zerospace/coop/commander/mera/building/coop-mera-advanced-factory.ts";
export default CoopAdvancedFactory;
//# sourceMappingURL=coop-mera-advanced-factory.js.map