phaser3-rex-plugins
Version:
166 lines (152 loc) • 3.7 kB
TypeScript
import ComponentBase from '../../utils/componentbase/ComponentBase';
export default Anchor;
declare namespace Anchor {
/**
* Callback when the anchor resizes.
*/
type OnResizeCallbackType = (
/**
* New width.
*/
width: number,
/**
* New height.
*/
height: number,
/**
* Target game object.
*/
gameObject: Phaser.GameObjects.GameObject,
/**
* Anchor component.
*/
anchor: Anchor
) => void;
/**
* Callback when viewport updates.
*/
type OnUpdateViewportCallbackType = (
/**
* Viewport rectangle.
*/
viewport: Phaser.Geom.Rectangle,
/**
* Target game object.
*/
gameObject: Phaser.GameObjects.GameObject,
/**
* Anchor component.
*/
anchor: Anchor
) => void;
/**
* Anchor configuration.
*/
interface IConfig {
/**
* Left offset expression.
*/
left?: string,
/**
* Right offset expression.
*/
right?: string,
/**
* Center X expression.
*/
centerX?: string,
/**
* X position expression.
*/
x?: string,
/**
* Top offset expression.
*/
top?: string,
/**
* Bottom offset expression.
*/
bottom?: string,
/**
* Center Y expression.
*/
centerY?: string,
/**
* Y position expression.
*/
y?: string,
/**
* Width expression.
*/
width?: string,
/**
* Height expression.
*/
height?: string,
/**
* Aspect ratio setting.
*/
aspectRatio?: boolean | number;
/**
* Resize callback.
*/
onResizeCallback?: OnResizeCallbackType,
/**
* Resize callback scope.
*/
onResizeCallbackScope?: unknown,
/**
* Viewport update callback.
*/
onUpdateViewportCallback?: OnUpdateViewportCallbackType,
/**
* Viewport update callback scope.
*/
onUpdateViewportCallbackScope?: unknown,
/**
* True to enable.
*/
enable?: boolean
}
}
/**
* Anchor component for layouting a game object.
*/
declare class Anchor extends ComponentBase {
/**
* Create an Anchor component.
* @param gameObject - Target game object.
* @param config - Anchor configuration.
*/
constructor(
gameObject: Phaser.GameObjects.GameObject,
config?: Anchor.IConfig
);
/**
* Reset from config.
* @param config - Anchor configuration.
* @returns This instance.
*/
resetFromJSON(config: Anchor.IConfig): this;
/**
* Set viewport update callback.
* @param callback - Viewport update callback.
* @param scope - Callback scope.
* @returns This instance.
*/
setUpdateViewportCallback(
callback?: Anchor.OnUpdateViewportCallbackType,
scope?: object
): this;
/**
* Apply anchoring immediately.
* @returns This instance.
*/
anchor(): this;
/**
* Enable or disable auto anchor.
* @param enable - True to enable.
* @returns This instance.
*/
autoAnchor(enable?: boolean): this;
}