phaser3-rex-plugins
Version:
194 lines (181 loc) • 4.91 kB
TypeScript
import WaitEvent from '../../waitevent/WaitEvent';
import Managers from '../Managers';
export default WaitEventManager;
declare namespace WaitEventManager {
interface IConfig {
/**
* Complete event name.
*/
completeEventName?: string,
/**
* Click target.
*/
clickTarget?: Phaser.Scene | Phaser.GameObjects.GameObject;
/**
* Click shortcut keys.
*/
clickShortcutKeys?: string,
/**
* Camera target.
*/
camera?: Phaser.Cameras.Scene2D.Camera
}
interface IWaitAnyConfig {
/**
* Wait time in ms.
*/
time?: number,
/**
* Wait for click.
*/
click?: boolean,
/**
* Wait for key.
*/
key?: string | boolean,
/**
* Wait for camera effect.
*/
camera?: string,
/**
* Wait for bgm complete.
*/
bgm?: boolean,
/**
* Wait for bgm2 complete.
*/
bgm2?: boolean,
/**
* Wait for sound effect complete.
*/
se?: boolean,
/**
* Wait for sound effect2 complete.
*/
se2?: boolean,
// GameObject tween
}
}
/**
* Wait event manager for input, time, and audio/camera events.
*/
declare class WaitEventManager extends WaitEvent {
/**
* Create a wait event manager.
* @param parent - Managers instance.
* @param config - Configuration options.
*/
constructor(
parent: Managers,
config?: WaitEventManager.IConfig,
);
/**
* Set click target.
* @param target - Click target.
* @returns This instance.
*/
setClickTarget(
target?: Phaser.GameObjects.GameObject | Phaser.Scene
): this;
/**
* Clear click target.
* @returns This instance.
*/
clearClickTarget(): this;
/**
* Set click shortcut keys.
* @param keys - Shortcut keys.
* @returns This instance.
*/
setClickShortcutKeys(keys?: string): this;
/**
* Clear click shortcut keys.
* @returns This instance.
*/
clearClickShortcutKeys(): this;
/**
* Wait for an event.
* @param eventEmitter - Event emitter.
* @param eventName - Event name.
* @param completeNextTick - True to complete on next tick.
* @returns Managers instance.
*/
waitEvent(
eventEmitter: Phaser.Events.EventEmitter,
eventName: string,
completeNextTick?: boolean
): Managers;
/**
* Add wait complete callback.
* @param callback - Callback function.
* @param scope - Callback scope.
* @returns This instance.
*/
addWaitCompleteCallback(callback: Function, scope?: Object): this;
/**
* Clear wait complete callbacks.
* @returns This instance.
*/
clearWaitCompleteCallbacks(): this;
/**
* Wait for a duration.
* @param duration - Duration in ms.
* @returns Managers instance.
*/
waitTime(duration: number): Managers;
/**
* Wait for click.
* @returns Managers instance.
*/
waitClick(): Managers;
/**
* Wait for key down.
* @param key - Key name.
* @returns Managers instance.
*/
waitKeyDown(key?: string): Managers;
/**
* Wait for tween completion.
* @param goType - Game object type.
* @param name - Game object name.
* @param property - Property name.
* @returns Managers instance.
*/
waitGameObjectTweenComplete(
goType: string | undefined, name: string,
property: string
): Managers;
/**
* Wait for sound effect complete.
* @returns Managers instance.
*/
waitSoundEffectComplete(): Managers;
/**
* Wait for sound effect2 complete.
* @returns Managers instance.
*/
waitSoundEffect2Complete(): Managers;
/**
* Wait for background music complete.
* @returns Managers instance.
*/
waitBackgroundMusicComplete(): Managers;
/**
* Wait for background music2 complete.
* @returns Managers instance.
*/
waitBackgroundMusic2Complete(): Managers;
/**
* Wait for camera effect complete.
* @param effectName - Effect name.
* @param cameraName - Camera name.
* @returns Managers instance.
*/
waitCameraEffectComplete(effectName: string, cameraName?: string): Managers;
/**
* Wait for any configured condition.
* @param config - Wait config.
* @returns Managers instance.
*/
waitAny(config?: Record<string, unknown>): Managers;
}