@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
37 lines • 2.05 kB
JavaScript
;
/**
* Research Lab - Mera Commander Building
* Clean inheritance from faction Research Lab with all properties and abilities
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.CoopResearchLab = void 0;
const research_lab_js_1 = __importDefault(require("../../../../faction/protectorate/building/research-lab.cjs"));
const coop_mera_prot_barracks_js_1 = __importDefault(require("./coop-mera-prot-barracks.cjs"));
const coop_mera_supply_platform_js_1 = __importDefault(require("./coop-mera-supply-platform.cjs"));
const coop_mera_prot_build_drone_js_1 = __importDefault(require("../unit/coop-mera-prot-build-drone.cjs"));
const coop_mera_bastion_js_1 = __importDefault(require("../unit/coop-mera-bastion.cjs"));
const coop_mera_commando_js_1 = __importDefault(require("../unit/coop-mera-commando.cjs"));
class CoopResearchLab extends research_lab_js_1.default {
constructor() {
super();
// Generate composite UUID: {parent-uuid}:coop-mera
this.setVariantUUID("coop-mera");
// Dual unlock system: Building + Commander Level
this.unlockedBy = [
coop_mera_prot_barracks_js_1.default.id, // Barracks requirement
coop_mera_supply_platform_js_1.default.id, // Supply Platform requirement
this.commanderLevelId(2), // Commander level 2 requirement
];
// Coop-specific unlock chains - reference coop buildings and units
this.unlocks = [coop_mera_bastion_js_1.default.id];
this.providesUpgradesFor = [coop_mera_commando_js_1.default.id, coop_mera_bastion_js_1.default.id];
this.createdBy = [coop_mera_prot_build_drone_js_1.default.id];
}
}
exports.CoopResearchLab = CoopResearchLab;
CoopResearchLab.src = "src/zerospace/coop/commander/mera/building/coop-mera-research-lab.ts";
exports.default = CoopResearchLab;
//# sourceMappingURL=coop-mera-research-lab.js.map