Files
gaim/keypad.gd

40 lines
1.1 KiB
GDScript

extends Control
const NR_CORRECT_BTNS := 9
var correct_buttons_pressed := 0
var wrong_buttons_pressed := 0
signal game_finished
var missing_btns := 9
func keypad_game_finished() -> void:
$Panel/Panel2.visible = true
await get_tree().create_timer(3.0).timeout
game_finished.emit()
func _on_correct_button_toggled(toggled_on: bool) -> void:
if toggled_on:
correct_buttons_pressed += 1
if correct_buttons_pressed == NR_CORRECT_BTNS and wrong_buttons_pressed == 0:
keypad_game_finished()
else:
correct_buttons_pressed -= 1
missing_btns = NR_CORRECT_BTNS - correct_buttons_pressed
change_hint()
if missing_btns < 6:
$Panel/Panel/Label/missing.visible = true
func _on_wrong_button_toggled(toggled_on: bool) -> void:
if toggled_on:
wrong_buttons_pressed += 1
else:
wrong_buttons_pressed -= 1
if correct_buttons_pressed == NR_CORRECT_BTNS and wrong_buttons_pressed == 0:
keypad_game_finished()
missing_btns = NR_CORRECT_BTNS - correct_buttons_pressed
func change_hint() -> void:
$Panel/Panel/Label/missing.text = "[noch " + str(missing_btns) + "]"