godot-shooter / files / effects / Damage.gd
Damage.gd
2b4497bb 2023-11-27 Pavel Safronov | 1 | extends Node2D |
| 2 | ||
| 3 | class_name Damage | |
| 4 | ||
| 5 | const HealTheme = preload("res://themes/HealTheme.tres") | |
| 6 | const DamageTheme = preload("res://themes/DamageTheme.tres") | |
| 7 | onready var animation_player = $AnimationPlayer | |
| 8 | onready var damage_label = $DamageLabel | |
| 9 | export var value: int = 5 | |
| 10 | ||
| 11 | func _ready() -> void: | |
| 12 | animation_player.queue("fade_in") | |
| 13 | animation_player.queue("fade_out") | |
| 14 | ||
c77d8480 2023-11-28 Pavel Safronov | 15 | func _process(_delta: float) -> void: |
2b4497bb 2023-11-27 Pavel Safronov | 16 | var value_sign = "+" |
| 17 | if self.value < 0: | |
| 18 | value_sign = "-" | |
| 19 | var abs_value = abs(self.value) | |
| 20 | damage_label.text = "%s%s" % [value_sign, abs_value] | |
| 21 | if self.value >= 0: | |
| 22 | damage_label.theme = HealTheme | |
| 23 | else: | |
| 24 | damage_label.theme = DamageTheme |