12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- extends Control
-
- onready var label : Label = $MarginContainer/Label
- onready var timer = $Timer
-
- var game_mode
- var max_time = 30
- var current_time = 0
-
- func _ready():
- Signals.connect("update_score",self,"update_score")
-
-
- func update_score(score: int):
- label.text = String(score)
-
-
- func start(mode: String):
- match mode:
- "score":
- update_score(0)
- show()
- "time":
- update_score(max_time)
- show()
- current_time = 0
- timer.start()
- _:
- print("game_mode not recognized by scoreUI")
-
-
- func set_max_time(time: int):
- max_time = time
-
- func init(mode, goal: int):
- game_mode = mode
- if (goal != 0):
- max_time = goal
- hide()
-
-
- func stop():
- timer.stop()
-
-
- func _on_Timer_timeout() -> void:
- current_time += 1
- var n = max_time - current_time
- if n < 0:
- n = 0
- update_score(n)
- if n == 0:
- Signals.emit_signal("win")
- timer.stop()
-
|