excalibur
Version:
Excalibur.js is a simple JavaScript game engine with TypeScript bindings for making 2D games in HTML5 Canvas. Our mission is to make web game development as simple as possible.
38 lines (37 loc) • 1.79 kB
TypeScript
import { Vector } from '../Math/vector';
import { EventEmitter, EventKey, Handler, Subscription } from '../EventEmitter';
import { PointerEvents } from './PointerEventReceiver';
import { Engine } from '../Engine';
export declare class PointerAbstraction {
events: EventEmitter<PointerEvents>;
/**
* The last position on the document this pointer was at. Can be `null` if pointer was never active.
*/
lastPagePos: Vector;
/**
* The last position on the screen this pointer was at. Can be `null` if pointer was never active.
*/
lastScreenPos: Vector;
/**
* The last position in the game world coordinates this pointer was at. Can be `null` if pointer was never active.
*/
lastWorldPos: Vector;
constructor();
emit<TEventName extends EventKey<PointerEvents>>(eventName: TEventName, event: PointerEvents[TEventName]): void;
emit(eventName: string, event?: any): void;
on<TEventName extends EventKey<PointerEvents>>(eventName: TEventName, handler: Handler<PointerEvents[TEventName]>): Subscription;
on(eventName: string, handler: Handler<unknown>): Subscription;
once<TEventName extends EventKey<PointerEvents>>(eventName: TEventName, handler: Handler<PointerEvents[TEventName]>): Subscription;
once(eventName: string, handler: Handler<unknown>): Subscription;
off<TEventName extends EventKey<PointerEvents>>(eventName: TEventName, handler: Handler<PointerEvents[TEventName]>): void;
off(eventName: string, handler: Handler<unknown>): void;
off(eventName: string): void;
/**
* Called internally by excalibur to keep pointers up to date
* @internal
* @param engine
*/
_updateWorldPosition(engine: Engine): void;
private _onPointerMove;
private _onPointerDown;
}