summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MouseInput.gd17
-rw-r--r--Player.gd16
2 files changed, 17 insertions, 16 deletions
diff --git a/MouseInput.gd b/MouseInput.gd
index e47e3c7..5805a02 100644
--- a/MouseInput.gd
+++ b/MouseInput.gd
@@ -9,3 +9,20 @@ func get_mouse_movement():
func add_mouse_movement(relative):
mouse_movement += relative
+
+func _ready():
+ Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
+
+func _notification(what):
+ if what == MainLoop.NOTIFICATION_WM_FOCUS_OUT:
+ Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
+
+func _input(event):
+ if event.is_action_pressed("ui_cancel"):
+ Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
+ if Input.get_mouse_mode() == Input.MOUSE_MODE_VISIBLE:
+ if event.is_action_pressed("click"):
+ Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
+ else:
+ if event is InputEventMouseMotion:
+ add_mouse_movement(event.relative)
diff --git a/Player.gd b/Player.gd
index 99c6abf..9953d16 100644
--- a/Player.gd
+++ b/Player.gd
@@ -43,19 +43,3 @@ func _physics_process(delta):
rotate(right, stick.y * stick.z * d_ang_speed)
rotate(Vector3.UP, stick.x * stick.z * d_ang_speed)
-func _ready():
- Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
-
-func _notification(what):
- if what == MainLoop.NOTIFICATION_WM_FOCUS_OUT:
- Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
-
-func _input(event):
- if event.is_action_pressed("ui_cancel"):
- Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
- if Input.get_mouse_mode() == Input.MOUSE_MODE_VISIBLE:
- if event.is_action_pressed("click"):
- Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
- else:
- if event is InputEventMouseMotion:
- MouseInput.add_mouse_movement(event.relative)