the-world-engine
Version:
three.js based, unity like game engine for browser
60 lines (59 loc) • 1.97 kB
TypeScript
import type { IEventContainer } from "../../collection/EventContainer";
import { Component } from "../../hierarchy_object/Component";
import type { ComponentConstructor } from "../../hierarchy_object/ComponentConstructor";
import type { PointerGridEvent } from "./PointerGridInputListener";
/**
* grid pointer
*
* draw grid aligned rectangle cursor and receive pointer events
*
*
* disallow multiple component
*
* require components: `PointerGridInputListener`
*/
export declare class GridPointer extends Component {
readonly disallowMultipleComponent: boolean;
readonly requiredComponents: ComponentConstructor[];
private _pointerGridInputListener;
private _pointerZoffset;
private _pointerObject;
private _pointerRenderer;
private readonly _onPointerDownEvent;
private readonly _onPointerUpEvent;
private readonly _onPointerMoveEvent;
private _isMouseDown;
private _started;
start(): void;
onDestroy(): void;
private readonly onPointerEnterBind;
private readonly onPointerLeaveBind;
private readonly onPointerDownBind;
private readonly onPointerUpBind;
private readonly onPointerMoveBind;
private updatePointerPosition;
/**
* on pointer down event
*/
get onPointerDown(): IEventContainer<(event: PointerGridEvent) => void>;
/**
* on pointer up event
*/
get onPointerUp(): IEventContainer<(event: PointerGridEvent) => void>;
/**
* on pointer move event
*/
get onPointerMove(): IEventContainer<(event: PointerGridEvent) => void>;
/**
* pointer z offset from gameObject.transform.position.z. default: 0
*
* if cursor is not visible, set this to a big positive value
*/
get pointerZoffset(): number;
/**
* pointer z offset from gameObject.transform.position.z. (default: 0)
*
* if cursor is not visible, set this to a big positive value
*/
set pointerZoffset(value: number);
}