summaryrefslogtreecommitdiffstats
path: root/scripts/PlayerCharacter.gd
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/PlayerCharacter.gd')
-rw-r--r--scripts/PlayerCharacter.gd33
1 files changed, 33 insertions, 0 deletions
diff --git a/scripts/PlayerCharacter.gd b/scripts/PlayerCharacter.gd
new file mode 100644
index 0000000..06602a4
--- /dev/null
+++ b/scripts/PlayerCharacter.gd
@@ -0,0 +1,33 @@
+extends KinematicBody2D
+
+export (int) var speed = 8
+export (float) var walk_wobble_coeff = 5
+var velocity = Vector2()
+
+func get_input():
+ velocity = Vector2()
+ if Input.is_action_pressed('ui_right'):
+ velocity.x += 1
+ if Input.is_action_pressed('ui_left'):
+ velocity.x -= 1
+ if Input.is_action_pressed('ui_down'):
+ velocity.y += 1
+ if Input.is_action_pressed('ui_up'):
+ velocity.y -= 1
+ velocity = velocity.normalized() * speed
+
+func _process(_delta):
+ var is_moving = velocity.length_squared() > .0
+ if is_moving:
+ var time = OS.get_system_time_msecs() / 1000.0
+ var rot = 0.2 * sin(walk_wobble_coeff * time)
+ $Sprite.set_rotation(rot)
+ else:
+ $Sprite.set_rotation(0)
+
+ #$Sprite.z_index = self.position[1]
+ #print($Sprite.z_index)
+
+func _physics_process(_delta):
+ get_input()
+ velocity = move_and_slide(velocity)