From a00b14bcf2084a1e68f57620e27956813d469aad Mon Sep 17 00:00:00 2001 From: bd Date: Wed, 21 May 2025 17:20:21 -0400 Subject: Make enemy color turn to red with missing health --- scenes/crawlers/soldier.gd | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'scenes/crawlers/soldier.gd') diff --git a/scenes/crawlers/soldier.gd b/scenes/crawlers/soldier.gd index 2db3f60..1bd7549 100644 --- a/scenes/crawlers/soldier.gd +++ b/scenes/crawlers/soldier.gd @@ -1,12 +1,23 @@ extends CharacterBody2D @export var speed = 50.0 -@export var health = 40 +@export var max_health = 40 +var _health = max_health func _process(delta): get_parent().set_progress(get_parent().get_progress() + speed * delta) if get_parent().get_progress_ratio() == 1: queue_free() - if health <= 0: +func deal_damage(damage): + _health -= damage + if _health <= 0: queue_free() + else: + _update_color() + +func _update_color(): + var ratio : float = float(_health) / max_health + var target_color = Color(1, ratio, ratio) + + $Sprite2D.modulate = target_color -- cgit v1.2.3