StickerClone/player.gd

37 lines
998 B
GDScript

extends CharacterBody2D
const SPEED = 500.0
func _physics_process(delta):
#region Movement
# Get the input direction and handle the movement/deceleration.
# As good practice, you should replace UI actions with custom gameplay actions.
var directionX = Input.get_axis("move_left", "move_right")
var directionY = Input.get_axis("move_up", "move_down")
if directionX :
velocity.x = directionX * SPEED
else:
velocity.x = move_toward(velocity.x, 0, SPEED)
if directionY:
velocity.y = directionY * SPEED
else:
velocity.y = move_toward(velocity.y, 0, SPEED)
#endregion
#region Animation
var WalkLeft = directionX < 0 or (directionY < 0 and directionY != 0)
var Idle = (velocity.x == 0 and velocity.y == 0)
$AnimationTree.set("parameters/Locomotion/conditions/Idle",Idle)
$AnimationTree.set("parameters/Locomotion/conditions/WalkLeft",WalkLeft and !Idle )
$AnimationTree.set("parameters/Locomotion/conditions/WalkRight",!WalkLeft and !Idle)
#endregion
move_and_slide()