arduino stuffs
Diffstat (limited to 'car_driver/godot/Input.gd')
-rw-r--r--car_driver/godot/Input.gd30
1 files changed, 18 insertions, 12 deletions
diff --git a/car_driver/godot/Input.gd b/car_driver/godot/Input.gd
index 4606f45..bbc4e49 100644
--- a/car_driver/godot/Input.gd
+++ b/car_driver/godot/Input.gd
@@ -1,6 +1,9 @@
extends Node
-var input : Vector2
+var input: Vector2
+
+onready var lb = $Label
+
func prepare(v: Vector2) -> Vector2:
v = v.normalized()
@@ -8,18 +11,21 @@ func prepare(v: Vector2) -> Vector2:
v.x = 1 - v.x
if v.y < 0:
v.y = 1 - v.y
- v=v.round()
+ v = v.round()
return v
func _physics_process(_delta):
- var inp := get_input()
- if input != inp:
- print(inp)
- input = inp
- SerialIO.send("H%s%s" % [inp.x, inp.y])
-
-func get_input()->Vector2:
- var x := Input.get_axis("ui_left", "ui_right")
- var y := Input.get_axis("ui_up", "ui_down")
- return prepare(Vector2(x, y))
+ input = get_input()
+ lb.text =str(input)
+ SerialIO.send("H%s,%s" % [input.x, input.y])
+
+
+func get_input() -> Vector2:
+ var x := Input.get_action_strength("leftpaddle")
+ var y := Input.get_action_strength("rightpaddle")
+ if Input.is_action_pressed("lb"):
+ x = x + 1 if x != 0 else 1.01
+ if Input.is_action_pressed("rb"):
+ y = y + 1 if y != 0 else 1.01
+ return (Vector2(x, y) * 100).round()