summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorJan Tuomi <jan.tuomi@valuemotive.com>2020-07-29 23:43:29 +0300
committerJan Tuomi <jan.tuomi@valuemotive.com>2020-07-29 23:43:29 +0300
commite39c090fa38e4e9faa895d7933f041b8f8a8e5c0 (patch)
tree7c6c9b0075dcb235591e07c5a3bc4b019fcd36f5 /scripts
parent833127814e1b28491f385acb2c617da5838058c0 (diff)
Turn player to look at walking dir
Diffstat (limited to 'scripts')
-rw-r--r--scripts/DwarfNPC.gd5
-rw-r--r--scripts/PlayerCharacter.gd12
2 files changed, 13 insertions, 4 deletions
diff --git a/scripts/DwarfNPC.gd b/scripts/DwarfNPC.gd
index 3cacc3c..b55fff2 100644
--- a/scripts/DwarfNPC.gd
+++ b/scripts/DwarfNPC.gd
@@ -15,7 +15,8 @@ func _ready():
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(_delta):
+ # Look at target node
var target_x: float = target_node.position[0]
var dx = target_x - self.position[0]
- var scale_val = -1 if dx < .0 else 1
- $Sprite.set_scale(Vector2(scale_val, 1))
+ var dir = -1 if dx < .0 else 1
+ $Sprite.set_scale(Vector2(dir, 1))
diff --git a/scripts/PlayerCharacter.gd b/scripts/PlayerCharacter.gd
index 06602a4..9f52a23 100644
--- a/scripts/PlayerCharacter.gd
+++ b/scripts/PlayerCharacter.gd
@@ -3,6 +3,8 @@ extends KinematicBody2D
export (int) var speed = 8
export (float) var walk_wobble_coeff = 5
var velocity = Vector2()
+var look_dir = 1 # right = 1
+ # left = -1
func get_input():
velocity = Vector2()
@@ -17,6 +19,7 @@ func get_input():
velocity = velocity.normalized() * speed
func _process(_delta):
+ # Update walking wobble
var is_moving = velocity.length_squared() > .0
if is_moving:
var time = OS.get_system_time_msecs() / 1000.0
@@ -25,8 +28,13 @@ func _process(_delta):
else:
$Sprite.set_rotation(0)
- #$Sprite.z_index = self.position[1]
- #print($Sprite.z_index)
+ # Look at walking direction
+ if velocity[0] > .0:
+ look_dir = 1
+ elif velocity[0] < .0:
+ look_dir = -1
+
+ $Sprite.set_scale(Vector2(look_dir, 1))
func _physics_process(_delta):
get_input()