mirror of
https://github.com/openfrontio/OpenFrontIO.git
synced 2026-06-26 13:44:36 +00:00
trying to build protos
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
import Jimp from 'jimp';
|
||||
import * as $protobuf from 'protobufjs/minimal.js';
|
||||
// import {TerrainTile} from '../generated/protos';
|
||||
|
||||
async function generateTerrainMap(imagePath, outputDir) {
|
||||
const terrain = new TerrainTile()
|
||||
try {
|
||||
// const imageModule = await import(imagePath);
|
||||
// const imageUrl = imageModule.default;
|
||||
// const image = await Jimp.read(imageUrl);
|
||||
// const {width, height} = image.bitmap;
|
||||
|
||||
// const map = new TerrainMap();
|
||||
// map.TerrainTile
|
||||
|
||||
// image.scan(0, 0, width, height, function (x, y, idx) {
|
||||
// const terrain = new TerrainTile();
|
||||
// const red = this.bitmap.data[idx + 0];
|
||||
|
||||
// if (red > 100) {
|
||||
// // terrain[x][y] = TerrainTypes.Land;
|
||||
// }
|
||||
// });
|
||||
|
||||
// return new TerrainMapImpl(terrain);
|
||||
console.log('Terrain map generated successfully');
|
||||
} catch (error) {
|
||||
console.error('Error generating terrain map:', error);
|
||||
}
|
||||
}
|
||||
|
||||
// Usage
|
||||
const imagePath = process.argv[2];
|
||||
const outputDir = process.argv[3] || 'generated';
|
||||
|
||||
if (!imagePath) {
|
||||
console.error('Usage: node TerrainMapGenerator.js <imagePath> [outputDir]');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
generateTerrainMap(imagePath, outputDir).catch(console.error);
|
||||
|
||||
export {generateTerrainMap};
|
||||
@@ -0,0 +1,27 @@
|
||||
import {Jimp as JimpType, JimpConstructors} from '@jimp/core';
|
||||
import 'jimp';
|
||||
import {TerrainMap, TerrainTile} from '../../generated/protos';
|
||||
|
||||
|
||||
declare const Jimp: JimpType & JimpConstructors;
|
||||
|
||||
export async function loadTerrainMap(): Promise<TerrainMap> {
|
||||
const imageModule = await import(`../../resources/maps/World.png`);
|
||||
const imageUrl = imageModule.default;
|
||||
const image = await Jimp.read(imageUrl)
|
||||
const {width, height} = image.bitmap;
|
||||
|
||||
|
||||
image.scan(0, 0, width, height, function (x: number, y: number, idx: number) {
|
||||
const t: TerrainTile = new TerrainTile()
|
||||
const red = this.bitmap.data[idx + 0];
|
||||
|
||||
if (red > 100) {
|
||||
}
|
||||
})
|
||||
|
||||
return new TerrainMap()
|
||||
|
||||
}
|
||||
|
||||
// loadTerrainMap()
|
||||
Reference in New Issue
Block a user