UNPKG

phaser4-rex-plugins

Version:
69 lines (54 loc) 1.51 kB
import FSMBase from './FSMBase'; export default FSM; declare namespace FSM { interface IStateConfig extends FSMBase.IStateConfig { next?: string | ((this: FSM) => string), enter?: (this: FSM) => void, exit?: (this: FSM) => void, update?: (this: FSM, time: number, delta: number) => void; preupdate?: (this: FSM, time: number, delta: number) => void; postupdate?: (this: FSM, time: number, delta: number) => void; } interface IConfig extends FSMBase.IConfig { states?: { [name: string]: IStateConfig }, scene?: Phaser.Scene; } } declare class FSM extends FSMBase { constructor(config?: FSM.IConfig); addState( name: string, state: FSM.IStateConfig ): this; addState(state: FSM.IStateConfig): this; addStates( states: { [name: string]: FSM.IStateConfig }, ): this; addStates( states: FSM.IStateConfig[] ): this; update( time: number, delta: number ): void; preupdate( time: number, delta: number ): void; postupdate( time: number, delta: number ): void; startUpdate( scene?: Phaser.Scene ): this; stopUpdate(): this; startPreUpdate( scene?: Phaser.Scene ): this; stopPreUpdate(): this; startPostUpdate( scene?: Phaser.Scene ): this; stopPostUpdate(): this; }