@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
61 lines • 2.02 kB
TypeScript
export class AttachmentSystem extends System<any, any, any, any, any> {
constructor();
dependencies: (typeof Transform | typeof Attachment)[];
components_used: (ResourceAccessSpecification<typeof AttachmentSockets> | ResourceAccessSpecification<typeof Mesh> | ResourceAccessSpecification<typeof Transform>)[];
/**
*
* @type {number[]}
*/
waiting: number[];
/**
*
* @type {Map<number,AttachmentBinding>}
*/
bindings: Map<number, AttachmentBinding>;
/**
*
* @type {Map<number, AttachmentBinding[]>}
*/
parentBindingIndex: Map<number, AttachmentBinding[]>;
/**
* Are we waiting for something?
* @param {number} entity
* @returns {boolean}
*/
isWaiting(entity: number): boolean;
/**
* Attachment is missing something, wait for it
* @param {number} entity
*/
wait(entity: number): void;
/**
* Removed all wait records for a given entity
* @param {number} entity
* @returns {number} number of removed records
*/
clearAllWaitRecordsFor(entity: number): number;
/**
*
* @param {Attachment} attachment
* @param {Transform} transform
* @param {number} entity
*/
link(attachment: Attachment, transform: Transform, entity: number): void;
processWaiting(): void;
/**
*
* @param {Attachment} attachment
* @param {Transform} transform
* @param {number} entity
*/
unlink(attachment: Attachment, transform: Transform, entity: number): void;
__updateAll(): void;
update(timeDelta: any): void;
}
import { System } from "../System.js";
import { Transform } from "../transform/Transform.js";
import { Attachment } from "./Attachment.js";
import { AttachmentSockets } from "../sockets/AttachmentSockets.js";
import { ResourceAccessSpecification } from "../../../core/model/ResourceAccessSpecification.js";
import Mesh from "../../graphics/ecs/mesh/Mesh.js";
//# sourceMappingURL=AttachmentSystem.d.ts.map