@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
66 lines (50 loc) • 1.34 kB
JavaScript
import { assert } from "../../core/assert.js";
export class GridTaskGenerator {
name = "Unnamed";
/**
*
* @type {GridTaskGenerator[]}
*/
dependencies = [];
/**
*
* @param {GridTaskGenerator} generator
* @returns {boolean}
*/
addDependency(generator) {
assert.equal(generator.isGridTaskGenerator, true, 'generator.isGridTaskGenerator !== true');
const i = this.dependencies.indexOf(generator);
if (i !== -1) {
//dependency already exists
return false;
}
this.dependencies.push(generator);
return true;
}
/**
*
* @param {GridTaskGenerator[]} dependencies
*/
addDependencies(dependencies) {
const n = dependencies.length;
for (let i = 0; i < n; i++) {
const generator = dependencies[i];
this.addDependency(generator);
}
}
/**
*
* @param {GridData} grid
* @param {EntityComponentDataset} ecd
* @param {number} seed
* @returns {Task|TaskGroup}
*/
build(grid, ecd, seed) {
throw new Error('Not Implemented');
}
}
/**
* @readonly
* @type {boolean}
*/
GridTaskGenerator.prototype.isGridTaskGenerator = true;