diff --git a/src/dev-util/room_with_board.gd b/src/dev-util/room_with_board.gd index 8253c06..9e5db02 100644 --- a/src/dev-util/room_with_board.gd +++ b/src/dev-util/room_with_board.gd @@ -37,7 +37,8 @@ func get_ready_async(): func _on_scene_finished(_id: int, _repeat:bool): - save_room.call_deferred() # Formerly there was a 3 second wait here. + await get_tree().create_timer(1).timeout # Formerly there was a 3 second wait here. + save_room.call_deferred() func save_room(): diff --git a/src/logic-scenes/board/sticky_note_panel.gd b/src/logic-scenes/board/sticky_note_panel.gd deleted file mode 100644 index eff1bbb..0000000 --- a/src/logic-scenes/board/sticky_note_panel.gd +++ /dev/null @@ -1,68 +0,0 @@ -class_name StickyNotePanel -extends Panel - -var minimum_size:Vector2 = Vector2(400, 100): - set(size): - minimum_size = size - custom_minimum_size = size -var attached_sticky_note: StickyNote -var ancor_position: Vector2 - -func _init(cstm_minimum_size: Vector2 = minimum_size, note_position: Vector2 = Vector2(105, 57)) -> void: - minimum_size = cstm_minimum_size - ancor_position = note_position - mouse_filter = MOUSE_FILTER_PASS - self_modulate = Color(1, 1, 1, 0) - -@onready var board : CardBoard = get_parent().get_parent() as CardBoard - -func _ready(): - custom_minimum_size = Vector2(custom_minimum_size.x, 0) - -func _process(delta: float) -> void: - var child := get_child(0) as StickyNote - if child and not child.is_dragged: - var k := pow(0.1, 60.0 * delta) - child.position = child.position * (1.0-k) + ancor_position * (k) - -var is_attaching: bool = false -func attatch_sticky_note(attatchment: StickyNote, custom_handle: Node, animate:bool = true): - attached_sticky_note = attatchment - attatchment.current_handle = custom_handle - - # Expand panel height - if animate: - var height_tween: Tween = create_tween() - height_tween.tween_property(self, "custom_minimum_size", minimum_size, 0.1) - else: - custom_minimum_size = minimum_size - - # Position sticky - if animate: - await get_tree().process_frame - attatchment.z_index = 125 # On top during animation - - # Reparent while keeping world position for smooth animation - attatchment.reparent(self, true) - - # Tween to anchor position in panel's coordinate space - var tween := create_tween().set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_BACK) - tween.tween_property(attatchment, "position", ancor_position, 0.7) - tween.tween_property(attatchment, "rotation", 0.0, 0.7) - tween.parallel().tween_property(attatchment, "scale", Vector2.ONE, 0.7) - await tween.finished - - attatchment.z_index = 0 - else: - # Immediate placement (for initial board setup) - if attatchment.get_parent(): - attatchment.reparent(self) - else: - add_child(attatchment) - attatchment.position = ancor_position - attatchment.rotation = 0.0 - attatchment.scale = Vector2.ONE - -func is_empty() -> bool: - return get_child_count() == 0 - diff --git a/src/logic-scenes/board/sticky_note_panel.gd.uid b/src/logic-scenes/board/sticky_note_panel.gd.uid deleted file mode 100644 index ba755e2..0000000 --- a/src/logic-scenes/board/sticky_note_panel.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://c8gsxyymrldcd diff --git a/src/logic-scenes/board/sticky_note_panel.tscn b/src/logic-scenes/board/sticky_note_panel.tscn deleted file mode 100644 index 9bac12b..0000000 --- a/src/logic-scenes/board/sticky_note_panel.tscn +++ /dev/null @@ -1,15 +0,0 @@ -[gd_scene load_steps=2 format=3 uid="uid://chwf61qpn2sqw"] - -[ext_resource type="Script" uid="uid://c8gsxyymrldcd" path="res://logic-scenes/board/sticky_note_panel.gd" id="1_1dtc4"] - -[node name="Panel" type="Panel"] -self_modulate = Color(1, 1, 1, 0) -custom_minimum_size = Vector2(400, 100) -offset_right = 400.0 -offset_bottom = 120.0 -mouse_filter = 1 -script = ExtResource("1_1dtc4") - -[node name="sticky-note_anchor" type="Node2D" parent="."] -z_index = 110 -position = Vector2(105, 57) diff --git a/src/logic-scenes/interactable/interactable.tscn b/src/logic-scenes/interactable/interactable.tscn index e6f39b3..43eec72 100644 --- a/src/logic-scenes/interactable/interactable.tscn +++ b/src/logic-scenes/interactable/interactable.tscn @@ -83,4 +83,5 @@ horizontal_alignment = 0 transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, 0, 0, 0) [node name="CanvasLayer" type="CanvasLayer" parent="."] +layer = -1 visible = false diff --git a/src/logic-scenes/luna/playables/story_playable.gd b/src/logic-scenes/luna/playables/story_playable.gd index ff214ef..a6fe5da 100644 --- a/src/logic-scenes/luna/playables/story_playable.gd +++ b/src/logic-scenes/luna/playables/story_playable.gd @@ -185,19 +185,16 @@ func play(): func _unhandled_input(event: InputEvent) -> void: - #if event.is_action_type(): print_debug("Unhandled Input", event) - var just_revealed_text := false - if event is InputEventMouseButton: - if event.button_index == MOUSE_BUTTON_WHEEL_DOWN: - scroll_target += 40 - if not all_text_revealed: - just_revealed_text = true - if event.button_index == MOUSE_BUTTON_WHEEL_UP: - scroll_target -= 40 - if not all_text_revealed: - just_revealed_text = true - if just_revealed_text and animation_complete: - all_text_revealed = true + if event.is_action_pressed("ui_text_scroll_down"): + accept_event() + scroll_target += 40 + all_text_revealed = animation_complete + + if event.is_action_released("ui_text_scroll_up"): + accept_event() + scroll_target -= 40 + all_text_revealed = all_text_revealed or animation_complete + var scroll_current : float = 0 diff --git a/src/project.godot b/src/project.godot index 2c09eca..9ec20cd 100644 --- a/src/project.godot +++ b/src/project.godot @@ -99,6 +99,7 @@ ui_text_scroll_up={ , Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":8,"position":Vector2(179, 6),"global_position":Vector2(188, 54),"factor":1.0,"button_index":4,"canceled":false,"pressed":true,"double_click":false,"script":null) , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":11,"pressure":0.0,"pressed":true,"script":null) ] } ui_text_scroll_down={ @@ -108,6 +109,7 @@ ui_text_scroll_down={ , Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":16,"position":Vector2(246, 6),"global_position":Vector2(255, 54),"factor":1.0,"button_index":5,"canceled":false,"pressed":true,"double_click":false,"script":null) , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":12,"pressure":0.0,"pressed":true,"script":null) ] } ui_menu={ diff --git a/src/singletons/main/main.tscn b/src/singletons/main/main.tscn index de6301e..5b11bb1 100644 --- a/src/singletons/main/main.tscn +++ b/src/singletons/main/main.tscn @@ -133,10 +133,17 @@ layout_mode = 1 visible = false layout_mode = 1 +[node name="CreditsRoll" parent="." instance=ExtResource("11_wtpde")] +unique_name_in_owner = true +visible = false +modulate = Color(1, 1, 1, 0) +layout_mode = 1 + [node name="PauseMenu" type="Panel" parent="."] unique_name_in_owner = true process_mode = 2 visible = false +z_index = 125 layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 @@ -222,12 +229,6 @@ visible = false layout_mode = 2 text = "Skip this Story" -[node name="CreditsRoll" parent="." instance=ExtResource("11_wtpde")] -unique_name_in_owner = true -visible = false -modulate = Color(1, 1, 1, 0) -layout_mode = 1 - [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] bus = &"music"