Files
esengine/packages/core/src/ECS/Components/IUpdatable.ts

27 lines
719 B
TypeScript
Raw Normal View History

/**
*
* update方法
*/
export interface IUpdatable {
enabled: boolean;
updateOrder: number;
update(): void;
}
2020-10-27 18:08:49 +08:00
/**
*
*/
export class IUpdatableComparer {
public compare(a: IUpdatable, b: IUpdatable): number {
return a.updateOrder - b.updateOrder;
}
}
/**
* IUpdatable接口
* @param props
* @returns IUpdatable接口返回truefalse
*/
export function isIUpdatable(props: any): props is IUpdatable {
return typeof (props as IUpdatable)['update'] !== 'undefined';
}