feat: 添加浮动文字,展示伤害和躲避
This commit is contained in:
+27
-3
@@ -3,11 +3,35 @@ class_name Arena
|
||||
|
||||
@export var player: Player
|
||||
|
||||
@export var normal_color: Color
|
||||
@export var bloacked_color: Color
|
||||
@export var critical_color: Color
|
||||
@export var hp_color: Color
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
Global.player = player
|
||||
Global.on_create_block_text.connect(_on_create_block_text)
|
||||
Global.on_create_damage_text.connect(_on_create_damage_text)
|
||||
|
||||
func crteat_floating_text(unit: Node2D) -> FloatingText:
|
||||
var instace := Global.FLOATING_TEXT_SCENE.instantiate() as FloatingText
|
||||
get_tree().root.add_child(instace)
|
||||
var random_pos := randf_range(0, TAU) * 35
|
||||
var spawn_pos := unit.global_position + Vector2.RIGHT.rotated(random_pos)
|
||||
instace.global_position = spawn_pos
|
||||
|
||||
return instace
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
pass
|
||||
func _on_create_block_text(unit: Node2D) -> void:
|
||||
var text := crteat_floating_text(unit)
|
||||
text.setup("Blocked!", bloacked_color)
|
||||
|
||||
|
||||
|
||||
func _on_create_damage_text(unit: Node2D, hitbox: HitboxComponent) -> void:
|
||||
var text := crteat_floating_text(unit)
|
||||
var color := critical_color if hitbox.critical else normal_color
|
||||
text.setup(str(hitbox.damage), color)
|
||||
|
||||
|
||||
|
||||
@@ -10,6 +10,10 @@
|
||||
[node name="Arena" type="Node2D" unique_id=1021720471 node_paths=PackedStringArray("player")]
|
||||
script = ExtResource("1_asdgj")
|
||||
player = NodePath("PlayerWellRounded")
|
||||
normal_color = Color(1, 1, 1, 1)
|
||||
bloacked_color = Color(1, 0.2901961, 0.45490196, 1)
|
||||
critical_color = Color(0.99607843, 0.78039217, 0.38039216, 1)
|
||||
hp_color = Color(0, 0.627451, 0.48235294, 1)
|
||||
|
||||
[node name="BlackBG" type="Sprite2D" parent="." unique_id=29383651]
|
||||
scale = Vector2(2, 2)
|
||||
|
||||
Reference in New Issue
Block a user