diff --git a/game.gd b/game.gd index 1877d99..7fc7681 100644 --- a/game.gd +++ b/game.gd @@ -12,6 +12,7 @@ var wuerfeln_erlaubt = false var wheel_spin_allowed = false var active = Theme.new() var schnickLost = false +var schnickActive = false @onready var gui := $GUI as Node2D @onready var board := $Board as Board @@ -47,12 +48,15 @@ func _ready(): nextPlayer.show() _update_dice_sprite(0) board.active = true + schnickLost = false + luckyWheel.wheelActive = false + schnickActive = false # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(_delta): _check_dice_color() - move_allowed = move_allowed and !schnickLost and !luckyWheel.wheelActive + move_allowed = move_allowed and !schnickLost and !luckyWheel.wheelActive and !schnickActive if won == "": if Input.is_action_just_pressed("Click") and move_allowed: var grid_pos = board.gridpos_at_mouse() @@ -148,9 +152,9 @@ func _roll_dice() -> int: luckyWheel.is_spin = true switch_to_wheel() var number = randi() % 100 + 1 - _spin_the_wheel(number) while luckyWheel.spun == false: #damit erst nach dem drehen 3s gewartet wird - await get_tree().create_timer(1).timeout + await get_tree().create_timer(0.1).timeout + _spin_the_wheel(number) await get_tree().create_timer(3.2).timeout luckyWheel.spun = false luckyWheel.hide() @@ -253,7 +257,6 @@ func _spin_the_wheel(result: int) -> void: ereignis.text += "Instant loose!" _instant_loose() elif result <= 15: - await get_tree().create_timer(6).timeout enable_remove = true ereignis.text += "Du darfst einen Stein entfernen!" elif result <= 30: @@ -261,7 +264,6 @@ func _spin_the_wheel(result: int) -> void: _change_symbols() elif result <= 45: if sequence_needed == 5: - print("lol") _spin_the_wheel(randi() % 100 + 1) else: ereignis.text += "Ab jetzt gilt 5 - Gewinnt!" @@ -270,14 +272,13 @@ func _spin_the_wheel(result: int) -> void: elif result <= 65: var zeile_zum_loeschen = randi() % 6 + 1 ereignis.text += "Zeile " + str(zeile_zum_loeschen) + " wird entfernt!" - await get_tree().create_timer(6).timeout + await get_tree().create_timer(4).timeout board.delete_column(zeile_zum_loeschen) - elif result <= 85: var spalte_zum_loeschen = randi() % 6 + 1 ereignis.text += "Spalte " + str(spalte_zum_loeschen) + " wird entfernt!" - await get_tree().create_timer(6).timeout + await get_tree().create_timer(4).timeout board.delete_row(spalte_zum_loeschen) elif result <= 100: var spalte = randi() % 6 + 1 @@ -302,9 +303,11 @@ func _on_spin_the_wheel_pressed(): func hide_schnick(): schnick.hide() + schnickActive = false move_allowed = true func switch_to_schnick(): + schnickActive = true move_allowed = false board.hide() numbers.hide() @@ -328,6 +331,7 @@ func switch_to_game(): func _on_gewonnen_pressed(): schnickLost = false + wuerfeln_erlaubt = false hide_schnick() switch_to_game() diff --git a/game.tscn b/game.tscn index bf0511c..e5f67a0 100644 --- a/game.tscn +++ b/game.tscn @@ -150,7 +150,7 @@ offset_left = 573.0 offset_top = 909.0 offset_right = 778.0 offset_bottom = 978.0 -theme_override_colors/font_color = Color(1, 0, 0, 1) +theme_override_colors/font_color = Color(0.34902, 0.513726, 0.909804, 1) theme_override_font_sizes/font_size = 50 [node name="Sequenz" type="Label" parent="GUI"] diff --git a/lucky_wheel.gd b/lucky_wheel.gd index 47c19aa..db6033d 100644 --- a/lucky_wheel.gd +++ b/lucky_wheel.gd @@ -90,5 +90,6 @@ func _on_btn_spin_pressed(): tween.finished +