38 lines
1.4 KiB
GDScript
38 lines
1.4 KiB
GDScript
extends CanvasLayer
|
|
|
|
var buildings_destroyed_count := 0
|
|
var police_eliminated_count := 0
|
|
var perfect_shot_count := 0
|
|
|
|
@onready var score_label: Label = %Score
|
|
@onready var buildings_destroyed_label: Label = %BuildingsDestroyed
|
|
@onready var police_eliminated_label: Label = %PoliceEliminated
|
|
@onready var perfect_shots_label: Label = %PerfectShots
|
|
@onready var chase_duration_label: Label = %ChaseDuration
|
|
@onready var distance_traveled_label: Label = %DistanceTraveled
|
|
|
|
func update_labels() -> void:
|
|
score_label.text = str(ScoreLabel.instance.score)
|
|
|
|
buildings_destroyed_label.text = str(buildings_destroyed_count)
|
|
police_eliminated_label.text = str(police_eliminated_count)
|
|
perfect_shots_label.text = str(perfect_shot_count)
|
|
|
|
var delta = Time.get_ticks_msec() - Level.level.start_time_msec
|
|
var seconds = delta / 1000
|
|
var minutes = seconds / 60
|
|
seconds = seconds % 60
|
|
chase_duration_label.text = "%d:%02d" % [minutes, seconds]
|
|
|
|
distance_traveled_label.text = "%dm" % int(roundf(Player.instance.distance_traveled))
|
|
|
|
func _on_restart_pressed() -> void:
|
|
get_tree().reload_current_scene()
|
|
|
|
func _on_quit_pressed() -> void:
|
|
get_tree().quit()
|
|
|
|
func _ready() -> void:
|
|
SignalBus.building_destroyed.connect(func(_b, _s): buildings_destroyed_count += 1)
|
|
SignalBus.enemy_destroyed.connect(func(): police_eliminated_count += 1)
|
|
SignalBus.perfect_shot_hit.connect(func(): perfect_shot_count += 1)
|