Added health bars

This commit is contained in:
2024-02-13 00:22:27 +01:00
parent ba978049a5
commit 6727be5cd0
23 changed files with 154 additions and 41 deletions

View File

@ -0,0 +1,42 @@
class_name MovementComponent
extends Node
@export var move_speed := 4.5
@export var jump_velocity := 4.5
@export var deceleration := 0.75
var body: CharacterBody3D
var direction: Vector3
var gravity: float
func _ready():
if owner.has_signal("direction_changed"):
owner.direction_changed.connect(on_direction_changed)
if owner.has_signal("jumped"):
owner.jumped.connect(jump)
body = owner as CharacterBody3D
gravity = ProjectSettings.get_setting("physics/3d/default_gravity")
func _physics_process(delta):
if direction:
body.velocity.x = direction.x * move_speed
body.velocity.z = direction.z * move_speed
else:
body.velocity.x *= deceleration
body.velocity.z *= deceleration
if !body.is_on_floor():
body.velocity.y -= gravity * delta
body.move_and_slide()
func on_direction_changed(new_direction: Vector3):
direction = new_direction
func can_jump() -> bool:
return body.is_on_floor()
func jump():
body.velocity.y = jump_velocity

View File

@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://x102pryt2s5a"]
[ext_resource type="Script" path="res://player/movement/MovementComponent.gd" id="1_2gnmd"]
[node name="Movement" type="Node"]
script = ExtResource("1_2gnmd")