45 lines
1.1 KiB
GDScript3
45 lines
1.1 KiB
GDScript3
extends KinematicBody2D
|
|
|
|
|
|
# Declare member variables here. Examples:
|
|
# var a = 2
|
|
# var b = "text"
|
|
export var speed = 400 # How fast the player will move (pixels/sec).
|
|
var screen_size # Size of the game window.
|
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
func _ready():
|
|
screen_size = get_viewport_rect().size
|
|
|
|
|
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
|
func _process(delta):
|
|
var velocity = Vector2.ZERO # The player's movement vector.
|
|
if Input.is_action_pressed("move_right"):
|
|
velocity.x += 1
|
|
if Input.is_action_pressed("move_left"):
|
|
velocity.x -= 1
|
|
if Input.is_action_pressed("move_down"):
|
|
velocity.y += 1
|
|
if Input.is_action_pressed("move_up"):
|
|
velocity.y -= 1
|
|
|
|
if velocity.length() > 0:
|
|
velocity = velocity.normalized() * speed
|
|
$AnimatedSprite.play()
|
|
else:
|
|
$AnimatedSprite.stop()
|
|
|
|
position += velocity * delta
|
|
|
|
#Health Script
|
|
var health = 6
|
|
var max_health = 6
|
|
|
|
signal health_updated
|
|
|
|
func update_health(halfheart):
|
|
health = halfheart
|
|
if Input.is_action_pressed("move_right"):
|
|
emit_signal("health_updated")
|
|
|