Files
Azzteroid/script/ui.gd
2025-09-09 11:12:33 +02:00

35 lines
941 B
GDScript

extends CanvasLayer
@export var box_player1: HBoxContainer
@export var label_score: Label
var player_life:= 3
var score := 0
var time := 0.0
@export var show_score :PackedScene = load("res://scene/score_particles.tscn")
func _ready() -> void:
GameController.connect("player_hit", update_player)
GameController.connect("point_gain", update_score)
func _process(delta: float) -> void:
time += delta
func update_score(add : int, ast_pos: Vector2)->void:
var temp = 1.5 ** (5-add) * (1 + (time / 100))
spawn_score(temp,ast_pos)
score += temp
label_score.text = str(score)
func update_player(_type:bool) -> void:
player_life -= 1
if player_life < 0:
GameController.emit_signal("go_to_score_saver", score)
box_player1.get_children(false)[player_life].visible = false
func spawn_score(score: int,pos : Vector2)->void:
var new = show_score.instantiate()
new.global_position = pos
new.score = score
get_parent().add_child(new)