UNPKG

blaze-2d

Version:

A fast and simple WebGL 2 2D game engine written in TypeScript

37 lines (36 loc) 1.21 kB
import Camera from "../camera/camera"; import Object2D from "../object2d"; import Controls from "./controls"; export default class PointerLockControls extends Controls { isLocked: boolean; /** * Creates a {@link PointerLockControls} instance and sets up it's event handlers. * * @param element The element to use when handling control events * @param camera The camera to control * @param object An optional object to follow the camera's yaw * @param sensitivity Movement sensitivity */ constructor(element: HTMLElement, camera: Camera, object?: Object2D, sensitivity?: number); /** * Requests pointer lock if the control's are not already locked. */ private clickHandler; /** * Resets `movementX` and `movementY` if the controls has been unlocked. */ private pointerLockChangeHandler; /** * Syncs `this.movementX` and `this.movementY` with the event's movement properties. * * @param e The mouse event */ private mouseMoveHandler; /** * Calculates the new camera direction from `movementX` and `movementY`. * * Called every tick. */ update(): void; dispose(): void; }