Skip to content

Latest commit

 

History

History
136 lines (86 loc) · 2.48 KB

File metadata and controls

136 lines (86 loc) · 2.48 KB
source

Detects gestures

export declare class Gestures 
import { Gestures } from 'horizon/mobile_gestures';

class MyComponent extends Component {
  gestures = new Gestures(this);

  start() {
    const player = this.entity.owner.get();
    player.enterFocusedInteractionMode();

    this.gestures.onTap.connectLocalEvent(({ touches }) => {
      console.log('tap', touches[0].current.screenPosition);
    });
    this.gestures.onLongTap.connectLocalEvent(({ touches }) => {
      console.log('long tap', touches[0].current.screenPosition);
    });
    this.gestures.onSwipe.connectLocalEvent(({ swipeDirection }) => {
      console.log('swipe', swipeDirection);
    });
    this.gestures.onPinch.connectLocalEvent(({ scale, rotate }) => {
      console.log('pinch', scale, rotate);
    });
  }
}

Creates a Gestures helper

Signature

constructor(component: Component, options?: Partial<GesturesOptions>);

Parameters

component: Component

the component to attach to, must be owned by the local player

options: Partial<GesturesOptions>

(Optional)

Remarks

Requires to start processing events.

Connect to this event for long tap gestures. See Gestures for example usage.

Signature

onLongTap: GestureEvent<LongTapEventData>;

Connect to this event for pan gestures. See Gestures for example usage.

Signature

onPan: GestureEvent<PanEventData>;

Connect to this event for pinch gestures. See Gestures for example usage.

Signature

onPinch: GestureEvent<PinchEventData>;

Connect to this event for swipe gestures. See Gestures for example usage.

Signature

onSwipe: GestureEvent<SwipeEventData>;

Connect to this event for tap gestures. See Gestures for example usage.

Signature

onTap: GestureEvent<TapEventData>;

Call this to stop processing events, optional.

Signature

dispose(): void;

Returns

void