made the first changes towards multiplayer working

This commit is contained in:
2023-11-13 19:36:35 +11:00
parent b0f8a37f60
commit f004f64b71
26 changed files with 305 additions and 257 deletions

View File

@ -1,55 +0,0 @@
extends CharacterBody3D
class_name AirEnemyController
signal reached_goal(enemy, penalty)
signal died(enemy)
var alive = true
@export var stats : Enemy
@export var status_manager : StatusEffector
var movement_speed
var movement_speed_penalty := 1.0
var progress := 0.0
var progress_ratio := 0.0
var destination : Node3D
func _ready() -> void:
$Health.max_health = stats.health
$Health.current_health = stats.health
$SubViewport/ProgressBar.max_value = stats.health
$SubViewport/ProgressBar.value = stats.health
$Sprite3D3.texture = stats.sprite.duplicate()
movement_speed = stats.movement_speed
func damage(amount):
$Hitbox.damage(amount)
func _physics_process(delta: float) -> void:
progress += (movement_speed * clampf(movement_speed_penalty, 0.0, 1.0)) * delta
velocity = global_position.direction_to(destination.global_position) * (movement_speed * clampf(movement_speed_penalty, 0.0, 1.0))
move_and_slide()
if global_position.distance_to(destination.global_position) <= 1.0:
reached_goal.emit(stats, stats.penalty)
queue_free()
func die():
died.emit(stats)
queue_free()
func _on_health_health_depleted() -> void:
if alive:
alive = false
die()
func _on_health_health_changed(health) -> void:
$SubViewport/ProgressBar.value = health
var percent = float($Health.current_health) / float($Health.max_health)
$SubViewport/ProgressBar.tint_progress = Color(1 - percent, percent, 0.0)
$SubViewport/ProgressBar.set_visible(true)

View File

@ -13,7 +13,7 @@
[sub_resource type="SphereShape3D" id="SphereShape3D_21dgw"]
[sub_resource type="AtlasTexture" id="AtlasTexture_73qac"]
[sub_resource type="AtlasTexture" id="AtlasTexture_ln1wo"]
resource_local_to_scene = true
atlas = ExtResource("3_naknq")
region = Rect2(0, 0, 32, 32)
@ -41,7 +41,7 @@ script = ExtResource("2_j8yin")
[node name="DirectionSprite" parent="." instance=ExtResource("2_o7jmg")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.642479, 0)
pixel_size = 0.04
texture = SubResource("AtlasTexture_73qac")
texture = SubResource("AtlasTexture_ln1wo")
[node name="Sprite3D" type="Sprite3D" parent="."]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 1.20821, 0)