Compare commits
3 commits
bd29a6d9b4
...
7e712e5468
Author | SHA1 | Date | |
---|---|---|---|
7e712e5468 | |||
b006648774 | |||
fe623236c1 |
3 changed files with 10 additions and 3 deletions
3
board.gd
3
board.gd
|
@ -82,6 +82,7 @@ func do_step():
|
|||
pieces_diagonal.sort_custom(magnitude_sort)
|
||||
|
||||
if last_tween:
|
||||
last_tween.custom_step(413)
|
||||
last_tween.kill()
|
||||
var tween := get_tree().create_tween()
|
||||
last_tween = tween
|
||||
|
@ -93,7 +94,7 @@ func do_step():
|
|||
|
||||
if pieces_moving.is_empty():
|
||||
# no tweens -> invalid -> annoying error message
|
||||
tween.stop()
|
||||
tween.kill()
|
||||
|
||||
func undo_step() -> Callable:
|
||||
var undos: Array[Callable] = []
|
||||
|
|
5
main.gd
5
main.gd
|
@ -38,7 +38,7 @@ var advancing := false
|
|||
@onready var sounds_undo := audio_stream_randomizer_from_dir("res://sfx/undo")
|
||||
@onready var sounds_redo := audio_stream_randomizer_from_dir("res://sfx/redo")
|
||||
|
||||
@export_range(0, 1) var slowmo_speed := 0.1
|
||||
@export_range(0, 1) var slowmo_speed := 0.2
|
||||
|
||||
func _ready() -> void:
|
||||
advance_level()
|
||||
|
@ -52,6 +52,7 @@ func _process(delta: float) -> void:
|
|||
[time, Engine.get_frames_per_second(), move_hold_time, arrf(move_hold_time)]
|
||||
var slowmo := Input.is_action_pressed("slowmo");
|
||||
$SlowmoIndicator.text = "slowmo" if slowmo else ""
|
||||
# TODO: only slowmo during rolltime?
|
||||
Engine.time_scale = slowmo_speed if slowmo else 1.0
|
||||
# TODO: this is kinda comically slow BUT STOP WORKING ON THE GAME
|
||||
AudioServer.playback_speed_scale = slowmo_speed if slowmo else 1.0
|
||||
|
@ -121,7 +122,7 @@ func restart():
|
|||
func board_step():
|
||||
hist.add_do_method(board.do_step)
|
||||
hist.add_do_property(self, "time", time+1)
|
||||
hist.add_do_property(self, "time", time+1)
|
||||
hist.add_undo_property(self, "time", time)
|
||||
hist.add_undo_method(board.undo_step())
|
||||
|
||||
func step(move: Vector2i):
|
||||
|
|
5
piece.gd
5
piece.gd
|
@ -25,8 +25,13 @@ func pos_of_lpos(pos: Vector2i, y := 0.0) -> Vector3:
|
|||
func target_pos() -> Vector3:
|
||||
return pos_of_lpos(lpos, position.y) + Vector3(0.5, 0, 0.5)
|
||||
|
||||
var last_move_tween: Tween = null
|
||||
func tween_to_target(tween := get_tree().create_tween()):
|
||||
if last_move_tween:
|
||||
last_move_tween.custom_step(413)
|
||||
last_move_tween.kill()
|
||||
tween.tween_property(self, "position", target_pos(), anim_time)
|
||||
last_move_tween = tween
|
||||
|
||||
func lpos_of_pos(pos: Vector3) -> Vector2i:
|
||||
return Vector2i(int(pos.x), int(pos.z))
|
||||
|
|
Loading…
Reference in a new issue