@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
77 lines (66 loc) • 3.21 kB
JavaScript
;
/**
* Hexite - Primary resource system
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Hexite = void 0;
const mechanic_js_1 = require("../../engine/mechanic.cjs");
const prot_extractor_js_1 = __importDefault(require("../faction/protectorate/building/prot-extractor.cjs"));
class Hexite extends mechanic_js_1.GameMechanic {
constructor() {
super();
this.name = "Hexite";
this.uuid = "dc761f0d-7f31-45b1-b399-737c03dd2e5a";
// Get dynamic mining rates from actual extractor
const extractor = new prot_extractor_js_1.default();
// Simple description for API/JSON usage
this.description = "Hexite is the primary resource in ZeroSpace, required for all base construction with automatic extractors providing steady resource income from hexite patches.";
// Rich wiki content with {{box}} components
this.wiki = `
## Overview
Hexite is the primary resource in ZeroSpace. All bases must be built on hexite patches, making hexite both a resource and a strategic location requirement.
{{box-grid}}
{{box header="Base Construction" icon="mdi-home-city"}}
**Strategic Placement**
- **Initial Base**: 6 hexite patches around starting location
- **Additional Bases**: 4 hexite patches around each expansion
- **Location Lock**: All bases must be built on hexite patches
- **Persistent**: Initial base keeps 6 patches regardless of main base changes
{{/box}}
{{box header="Automatic Extractors" icon="mdi-oil-lamp"}}
**Immediate Resource Generation**
- **Initial Base**: 3 extractors built instantly from 6 patches
- **Expansion Bases**: 1 extractor built instantly from 4 patches
- **Sequential Build**: Remaining extractors built one at a time
- **Hands-Free**: No manual construction required
{{/box}}
{{/box-grid}}
## Mining Efficiency
All factions use identical [${extractor.name}](${extractor.zsggPath}) with standardized mining rates:
{{box-grid}}
{{box header="Active Patches" icon="mdi-pickaxe"}}
**Full Yield Mining**
- **Mining Rate**: ${extractor.gathersHexite} hexite/second
- **Duration**: Until patch depletion
- **Efficiency**: Maximum resource extraction
- **Economic Base**: Primary income source
{{/box}}
{{box header="Depleted Patches" icon="mdi-battery-low"}}
**Reduced Yield Mining**
- **Mining Rate**: ${extractor.gathersEmptyHexite} hexite/second
- **Duration**: Indefinite (patches don't fully exhaust)
- **Backup Income**: Continues after depletion
- **Long-Term**: Sustained low-level resource generation
{{/box}}
{{/box-grid}}
`;
this.references = [extractor.id];
}
}
exports.Hexite = Hexite;
Hexite.src = "src/zerospace/mechanic/hexite.ts";
exports.default = Hexite;
//# sourceMappingURL=hexite.js.map