diff options
Diffstat (limited to 'pointer_input_sensor.gd')
| -rw-r--r-- | pointer_input_sensor.gd | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/pointer_input_sensor.gd b/pointer_input_sensor.gd index be4d158..588bb81 100644 --- a/pointer_input_sensor.gd +++ b/pointer_input_sensor.gd @@ -70,18 +70,19 @@ func _gui_input(event: InputEvent): return pointer.event = event -# pointer.index = -1 -# pointer.scroll = 0.0 -# pointer.action = PointerInputAction.UNDEFINED -# pointer.velocity = Vector2.ZERO + pointer.action = PointerInputAction.UNDEFINED + pointer.velocity = Vector2.ZERO + pointer.relative_position = Vector2.ZERO + pointer.scroll = 0.0 + pointer.current_position = get_global_mouse_position() if event is InputEventScreenTouch && (pointer.is_pressed == false || pointer.index == event.index): var touch := event as InputEventScreenTouch pointer.is_pressed = event.pressed - pointer.current_position = get_global_mouse_position() + if pointer.is_pressed: pointer.index = touch.index - pointer.initial_position = get_global_mouse_position() + pointer.initial_position = pointer.current_position pointer.action = PointerInputAction.ON_PRESS emit_signal("on_press", pointer) else: @@ -95,14 +96,9 @@ func _gui_input(event: InputEvent): emit_signal("on_end_drag", pointer) pointer.index = -1 pointer.was_dragged = false - # @DAM Maybe add this. -# pointer.initial_position = Vector2.ZERO -# pointer.current_position = Vector2.ZERO -# pointer.relative_position = Vector2.ZERO if event is InputEventScreenDrag && event.index == pointer.index: var drag := event as InputEventScreenDrag - pointer.current_position = get_global_mouse_position() pointer.velocity = drag.speed pointer.relative_position = drag.relative if pointer.was_dragged == false && pointer.current_position.distance_to(pointer.initial_position) > drag_threshold_cm * screen_dpcm: @@ -112,7 +108,6 @@ func _gui_input(event: InputEvent): pointer.action = PointerInputAction.ON_DRAG emit_signal("on_drag", pointer) - # @DAM Clean this code please. if event is InputEventMouseButton && event.is_pressed(): if event.button_index == BUTTON_WHEEL_UP || event.button_index == BUTTON_WHEEL_DOWN: pointer.scroll = -1.0 if event.button_index == BUTTON_WHEEL_UP else 1.0 |
