30 lines
1.1 KiB
TypeScript
30 lines
1.1 KiB
TypeScript
import { Scene } from '../../scene/scene';
|
|
import { World } from '../../ecs/index';
|
|
import { Game } from '..';
|
|
import { Component } from '../../ecs/component';
|
|
import { System } from '../../ecs/system';
|
|
import { Entity } from '../../ecs/entity';
|
|
import { Query } from '../../ecs/query';
|
|
import { SceneManager } from '../../scene/manager';
|
|
export declare class ECSScene implements Scene {
|
|
instance: Game;
|
|
id: string;
|
|
world: World;
|
|
running: boolean;
|
|
data: any;
|
|
constructor(instance: Game);
|
|
update(): void;
|
|
updateDraw(): boolean;
|
|
onActivate(manager: SceneManager): void;
|
|
onDeactivate(): void;
|
|
onSwitch(): void;
|
|
createEntity(components: Array<Component<any>>): Entity;
|
|
createComponent<T>(props: T): Component<T>;
|
|
createSystem(systemExecutor: Function): void;
|
|
addSystem(system: System): void;
|
|
addEntity(entity: Entity): void;
|
|
removeEntity(entity: Entity): void;
|
|
createQuery(include: Array<Component<any>>, exclude: Array<Component<any>>): Query;
|
|
extendEntity(entity: Entity, components: Array<Component<any>>): Entity;
|
|
}
|