public Action Activate(ControllerInteractionPoint interactionPoint) { var handle = new CoroutineHandle(); StartCoroutine(InteractionLoop(interactionPoint, handle)); return(() => { handle.Stop(); }); }
public Action Activate(ControllerInteractionPoint interactionPoint) { // @fixme Activations end when the controller leaves // we probably actyally want it to continue until released // So we'll need some way to tell the interaction point to not auto-release var handle = new CoroutineHandle(); StartCoroutine(InteractionLoop(interactionPoint, handle)); return(() => { handle.Stop(); }); }
public Action Activate(ControllerInteractionPoint interactionPoint) { if (!mapHorizontalPlaneController.Reserve()) { return () => { } } ; var handle = new CoroutineHandle(); StartCoroutine(InteractionLoop(interactionPoint, handle)); return(() => { handle.Stop(); mapHorizontalPlaneController.Release(); }); }