@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
94 lines • 2.33 kB
TypeScript
export class ThemeEngine {
/**
*
* @type {QuadTreeNode<AreaTheme>}
*/
areas: QuadTreeNode<AreaTheme>;
/**
* @readonly
* @type {function():number}
*/
readonly random: () => number;
/**
*
* @type {AssetManager}
* @private
*/
private __assetManager;
set assetManager(arg: any);
/**
*
* @param {number} v
*/
set seed(arg: number);
/**
*
* @returns {number}
*/
get seed(): number;
/**
*
* @param {AreaTheme} theme
*/
add(theme: AreaTheme): void;
/**
*
* @param {AreaTheme[]} result
* @param {number} x
* @param {number} y
* @returns {number}
*/
getThemesByPosition(result: AreaTheme[], x: number, y: number): number;
/**
*
* @param {number} seed
* @param {EntityComponentDataset} ecd
* @param {GridData} grid
* @returns {Task}
*/
initializeThemes(seed: number, ecd: EntityComponentDataset, grid: GridData): Task;
/**
*
* @param {GridData} grid
* @param {Terrain} terrain
* @returns {TaskGroup}
*/
applyTerrainThemes(grid: GridData, terrain: Terrain): TaskGroup;
/**
*
* @param {GridData} grid
* @param {EntityComponentDataset} ecd
* @param {number} seed
* @returns {Task|TaskGroup}
*/
applyNodes(grid: GridData, ecd: EntityComponentDataset, seed?: number): Task | TaskGroup;
/**
*
* @param {GridData} grid
* @param {EntityComponentDataset} ecd
*/
applyCellRules(grid: GridData, ecd: EntityComponentDataset): Task;
/**
*
* @param {Terrain} terrain
* @returns {Task}
*/
updateTerrain(terrain: Terrain): Task;
/**
*
* @returns {TaskGroup}
* @param {EntityComponentDataset} ecd
*/
optimize(ecd: EntityComponentDataset): TaskGroup;
/**
*
* @param {GridData} grid
* @param {EntityComponentDataset} ecd
* @returns {TaskGroup}
*/
apply(grid: GridData, ecd: EntityComponentDataset): TaskGroup;
}
import { QuadTreeNode } from "../../core/geom/2d/quad-tree/QuadTreeNode.js";
import Task from "../../core/process/task/Task.js";
import TaskGroup from "../../core/process/task/TaskGroup.js";
//# sourceMappingURL=ThemeEngine.d.ts.map