From f2a2c13e651fee1bc111c0bf26bcc7e79f49b002 Mon Sep 17 00:00:00 2001 From: Tiger Jove Date: Wed, 21 Jan 2026 16:25:16 +0100 Subject: [PATCH] fix: small sorting bug, tested adult room --- .../transition/stations/burnout_station.gd | 2 +- .../{shared_flat.gd => volunteer_room.gd} | 11 ++++++----- .../{shared_flat.gd.uid => volunteer_room.gd.uid} | 0 .../volunteer_room/volunteer_room.tscn | 6 ++++-- src/dev-util/savegame.gd | 2 +- src/logic-scenes/board/card-board.gd | 3 ++- 6 files changed, 14 insertions(+), 10 deletions(-) rename src/base-environments/volunteer_room/{shared_flat.gd => volunteer_room.gd} (79%) rename src/base-environments/volunteer_room/{shared_flat.gd.uid => volunteer_room.gd.uid} (100%) diff --git a/src/base-environments/transition/stations/burnout_station.gd b/src/base-environments/transition/stations/burnout_station.gd index 5593417..9fe9232 100644 --- a/src/base-environments/transition/stations/burnout_station.gd +++ b/src/base-environments/transition/stations/burnout_station.gd @@ -1,5 +1,5 @@ extends Node3D func _ready() -> void: - State.room.save_game.burnout = true + State.room.save_game.subway_burnout = true %PlayerDetect.body_entered.connect(func(body): if visible and body is PlayerController: State.room.proceed.emit(Main.adulthood_room_path)) diff --git a/src/base-environments/volunteer_room/shared_flat.gd b/src/base-environments/volunteer_room/volunteer_room.gd similarity index 79% rename from src/base-environments/volunteer_room/shared_flat.gd rename to src/base-environments/volunteer_room/volunteer_room.gd index e4420a3..211a261 100644 --- a/src/base-environments/volunteer_room/shared_flat.gd +++ b/src/base-environments/volunteer_room/volunteer_room.gd @@ -1,4 +1,5 @@ extends RoomTemplate +class_name VolunteerRoom @onready var card_picker: CardPicker = %Picker @onready var player: PlayerController = %PlayerController @@ -14,11 +15,11 @@ func get_ready() -> void: Scenes.scene_finished.connect(_on_scene_finished) card_picker.cards_picked.connect(card_board.populate_board) save_game = State.save_game - Scenes.completed_sequences = save_game.mementos_complete - Scenes.started_sequences = save_game.mementos_complete - Scenes.enabled_sequences = save_game.sequences_enabled - #FIXME: fix the bloddy card board loading algorythm - #card_board.initialise_from_save(save_game) + + %TherapyVoluntaryInteractable.visible = not save_game.subway_burnout + %TherapyUniInteractable.visible = save_game.subway_burnout + + card_board.initialise_from_save(save_game) card_board.board_completed.connect(func(): #TODO: hook in ending save_room() diff --git a/src/base-environments/volunteer_room/shared_flat.gd.uid b/src/base-environments/volunteer_room/volunteer_room.gd.uid similarity index 100% rename from src/base-environments/volunteer_room/shared_flat.gd.uid rename to src/base-environments/volunteer_room/volunteer_room.gd.uid diff --git a/src/base-environments/volunteer_room/volunteer_room.tscn b/src/base-environments/volunteer_room/volunteer_room.tscn index 55198a8..4d94333 100644 --- a/src/base-environments/volunteer_room/volunteer_room.tscn +++ b/src/base-environments/volunteer_room/volunteer_room.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=49 format=3 uid="uid://flisupth27th"] [ext_resource type="PackedScene" uid="uid://dwbhei5kywqbd" path="res://volunteer_room_visuals.tscn" id="1_ln5pp"] -[ext_resource type="Script" uid="uid://wiw2j1gw230e" path="res://base-environments/volunteer_room/shared_flat.gd" id="1_wdfvq"] +[ext_resource type="Script" uid="uid://wiw2j1gw230e" path="res://base-environments/volunteer_room/volunteer_room.gd" id="1_wdfvq"] [ext_resource type="PackedScene" uid="uid://mkccbig41bqb" path="res://logic-scenes/player_controller/player_controller.tscn" id="2_upyac"] [ext_resource type="Script" uid="uid://c281w7earok6w" path="res://base-environments/youth_room/crouch_volume.gd" id="3_fli74"] [ext_resource type="PackedScene" uid="uid://dreokijo757l1" path="res://logic-scenes/interactable/interactable.tscn" id="5_my8p4"] @@ -243,17 +243,19 @@ interaction = ExtResource("17_my8p4") billboard = false [node name="TherapyVoluntaryInteractable" parent="Collectables" instance=ExtResource("5_my8p4")] +unique_name_in_owner = true transform = Transform3D(0.999999, 0, 0, 0, 1, 0, 0, 0, 0.999999, 0.399901, 1.21835, 1.29166) interaction = ExtResource("15_ci4rn") billboard = false [node name="TherapyUniInteractable" parent="Collectables" instance=ExtResource("5_my8p4")] +unique_name_in_owner = true transform = Transform3D(0.999999, 0, 0, 0, 1, 0, 0, 0, 0.999999, 0.399901, 1.21835, 1.29166) interaction = ExtResource("14_upyac") billboard = false [node name="UniversityInteractable" parent="Collectables" instance=ExtResource("5_my8p4")] -transform = Transform3D(-4.371135e-08, 0, -0.9999991, 0, 1, 0, 0.9999991, 0, -4.371135e-08, -2.7745893, 1.593935, -3.0279322) +transform = Transform3D(-4.371135e-08, 0, -0.9999991, 0, 1, 0, 0.9999991, 0, -4.371135e-08, -2.7745893, 1.4022808, -3.0279322) interaction = ExtResource("13_5s6pb") billboard = false diff --git a/src/dev-util/savegame.gd b/src/dev-util/savegame.gd index 7c06d6d..7b1f12c 100644 --- a/src/dev-util/savegame.gd +++ b/src/dev-util/savegame.gd @@ -19,7 +19,7 @@ class_name SaveGame extends Resource @export var seen : Array[StringName] = [] @export var is_childhood_board_complete: bool = false -@export var burnout : bool = false +@export var subway_burnout : bool = false @export var player_position : Vector3 = Vector3.ZERO @export var player_yaw : float = 0.0 diff --git a/src/logic-scenes/board/card-board.gd b/src/logic-scenes/board/card-board.gd index 94ed224..0c340ad 100644 --- a/src/logic-scenes/board/card-board.gd +++ b/src/logic-scenes/board/card-board.gd @@ -370,7 +370,8 @@ func _by_spatial(a: Draggable, b: Draggable) -> bool: func _by_mouse(a: Draggable, b: Draggable) -> bool: - var mouse_pos : Vector2 = get_viewport().get_mouse_position() + var viewport := get_viewport() # when app closes, the sorting might still be going on + var mouse_pos : Vector2 = viewport.get_mouse_position() if viewport else Vector2.ZERO return (a.position-mouse_pos).length() < (b.position-mouse_pos).length()