LevelStreamer improvements and WorldProxy changes
- LevelStreamer gizmo preview now updates when it's transform changes. - Cleaned up main menu. - Seperated entrance hall section into it's own scene (level).
This commit is contained in:
parent
ca427041e7
commit
2462174a02
10
game/assets/action_hints/interact.tres
Normal file
10
game/assets/action_hints/interact.tres
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
[gd_resource type="Texture2D" script_class="ControllerIconTexture" format=3 uid="uid://c5nyul3r2u4wu"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://ch00l1e1rteyw" path="res://addons/controller_icons/objects/ControllerIconTexture.gd" id="1_2arla"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
resource_local_to_scene = false
|
||||||
|
resource_name = ""
|
||||||
|
script = ExtResource("1_2arla")
|
||||||
|
path = "interact"
|
||||||
|
metadata/_custom_type_script = "uid://ch00l1e1rteyw"
|
||||||
@ -1,9 +1,9 @@
|
|||||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://biu40ot7f55no"]
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://biu40ot7f55no"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://djftxgnhedhk2" path="res://assets/dev/dark/texture_05.png" id="1_l8w0p"]
|
[ext_resource type="Texture2D" uid="uid://wb1xv8sdexfr" path="res://assets/dev/dark/texture_04.png" id="1_ib6js"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
albedo_texture = ExtResource("1_l8w0p")
|
albedo_texture = ExtResource("1_ib6js")
|
||||||
uv1_triplanar = true
|
uv1_triplanar = true
|
||||||
uv1_world_triplanar = true
|
uv1_world_triplanar = true
|
||||||
texture_filter = 5
|
texture_filter = 5
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dto0mke6wp060"]
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dto0mke6wp060"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://d4m1r5bjq4lbe" path="res://assets/dev/dark/texture_01.png" id="1_c2346"]
|
[ext_resource type="Texture2D" uid="uid://djftxgnhedhk2" path="res://assets/dev/dark/texture_05.png" id="1_p236r"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
albedo_texture = ExtResource("1_c2346")
|
albedo_texture = ExtResource("1_p236r")
|
||||||
uv1_triplanar = true
|
uv1_triplanar = true
|
||||||
uv1_world_triplanar = true
|
uv1_world_triplanar = true
|
||||||
texture_filter = 5
|
texture_filter = 5
|
||||||
|
|||||||
@ -3,19 +3,20 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://wb1xv8sdexfr"
|
uid="uid://wb1xv8sdexfr"
|
||||||
path="res://.godot/imported/texture_04.png-ab0c8f7791533824774bd7c2ee0b712c.ctex"
|
path.s3tc="res://.godot/imported/texture_04.png-ab0c8f7791533824774bd7c2ee0b712c.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://assets/dev/dark/texture_04.png"
|
source_file="res://assets/dev/dark/texture_04.png"
|
||||||
dest_files=["res://.godot/imported/texture_04.png-ab0c8f7791533824774bd7c2ee0b712c.ctex"]
|
dest_files=["res://.godot/imported/texture_04.png-ab0c8f7791533824774bd7c2ee0b712c.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
compress/mode=0
|
compress/mode=2
|
||||||
compress/high_quality=false
|
compress/high_quality=false
|
||||||
compress/lossy_quality=0.7
|
compress/lossy_quality=0.7
|
||||||
compress/uastc_level=0
|
compress/uastc_level=0
|
||||||
@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
@ -37,4 +38,4 @@ process/normal_map_invert_y=false
|
|||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=1
|
detect_3d/compress_to=0
|
||||||
|
|||||||
@ -44,6 +44,26 @@ _subresources={
|
|||||||
"use_external/fallback_path": "res://assets/models/plush/godot_plush.tres",
|
"use_external/fallback_path": "res://assets/models/plush/godot_plush.tres",
|
||||||
"use_external/path": "uid://bp26kj1cs4p1s"
|
"use_external/path": "uid://bp26kj1cs4p1s"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"meshes": {
|
||||||
|
"godot_plush_v2_Cube_001": {
|
||||||
|
"generate/lightmap_uv": 0,
|
||||||
|
"generate/lods": 0,
|
||||||
|
"generate/shadow_meshes": 0,
|
||||||
|
"lods/normal_merge_angle": 20.0,
|
||||||
|
"save_to_file/enabled": true,
|
||||||
|
"save_to_file/fallback_path": "res://assets/models/plush/godot_plush_v2_Cube_001.res",
|
||||||
|
"save_to_file/path": "uid://8s8l7hwib2ny"
|
||||||
|
},
|
||||||
|
"godot_plush_v2_Cube_002": {
|
||||||
|
"generate/lightmap_uv": 0,
|
||||||
|
"generate/lods": 0,
|
||||||
|
"generate/shadow_meshes": 0,
|
||||||
|
"lods/normal_merge_angle": 20.0,
|
||||||
|
"save_to_file/enabled": true,
|
||||||
|
"save_to_file/fallback_path": "res://assets/models/plush/godot_plush_v2_Cube_002.res",
|
||||||
|
"save_to_file/path": "uid://d3b8wym3dsqea"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
gltf/naming_version=2
|
gltf/naming_version=2
|
||||||
|
|||||||
BIN
game/assets/models/plush/godot_plush_v2_Cube_001.res
Normal file
BIN
game/assets/models/plush/godot_plush_v2_Cube_001.res
Normal file
Binary file not shown.
BIN
game/assets/models/plush/godot_plush_v2_Cube_002.res
Normal file
BIN
game/assets/models/plush/godot_plush_v2_Cube_002.res
Normal file
Binary file not shown.
@ -2,6 +2,7 @@ KEYS,en,de,es,ja
|
|||||||
|
|
||||||
# UI
|
# UI
|
||||||
CONTINUE,Continue,Weiterspielen,Continue,Continue
|
CONTINUE,Continue,Weiterspielen,Continue,Continue
|
||||||
|
LOAD,Load,Laden,Load,Load
|
||||||
NEW_GAME,New Game,Neues Spiel,New Game,New Game
|
NEW_GAME,New Game,Neues Spiel,New Game,New Game
|
||||||
SETTINGS,Settings,Einstellungen,Settings,Settings
|
SETTINGS,Settings,Einstellungen,Settings,Settings
|
||||||
QUIT,Quit,Beenden,Quit,Quit
|
QUIT,Quit,Beenden,Quit,Quit
|
||||||
|
|||||||
|
Can't render this file because it has a wrong number of fields in line 3.
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -50,6 +50,10 @@ folder_colors={
|
|||||||
"res://tools/": "gray"
|
"res://tools/": "gray"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[filesystem]
|
||||||
|
|
||||||
|
import/blender/enabled=false
|
||||||
|
|
||||||
[importer_defaults]
|
[importer_defaults]
|
||||||
|
|
||||||
scene={
|
scene={
|
||||||
|
|||||||
@ -4,6 +4,9 @@ extends Marker3D
|
|||||||
|
|
||||||
signal loading_finished
|
signal loading_finished
|
||||||
|
|
||||||
|
## If [code]false[/code], prevents loading when inside the area,
|
||||||
|
## but will unload (even when inside the area).
|
||||||
|
@export var enabled: bool = true: set = set_enabled
|
||||||
@export var threaded_loading: bool = true
|
@export var threaded_loading: bool = true
|
||||||
@export var prevent_unloading: bool = false
|
@export var prevent_unloading: bool = false
|
||||||
@export var unload_delay: float = 3.0
|
@export var unload_delay: float = 3.0
|
||||||
@ -38,13 +41,14 @@ var _unload_time_left: float = 0.0
|
|||||||
var _precomputed_aabb: AABB # Big bounding box covering all [_precomputed_aabbs] for faster checking.
|
var _precomputed_aabb: AABB # Big bounding box covering all [_precomputed_aabbs] for faster checking.
|
||||||
var _precomputed_aabbs: Array[AABB]
|
var _precomputed_aabbs: Array[AABB]
|
||||||
var _previous_camera: Camera3D
|
var _previous_camera: Camera3D
|
||||||
|
var _editor_previous_transform: Transform3D
|
||||||
|
|
||||||
|
|
||||||
static func get_node_aabb(node: Node3D = null, ignore_top_level: bool = true, bounds_transform := Transform3D()) -> AABB:
|
static func get_node_aabb(node: Node3D = null, ignore_top_level: bool = true, bounds_transform := Transform3D()) -> AABB:
|
||||||
var aabb: AABB
|
var aabb: AABB
|
||||||
var _transform: Transform3D
|
var _transform: Transform3D
|
||||||
|
|
||||||
#We area going down the child chain,
|
# We are going down the child chain,
|
||||||
# we want the aabb of each subsequent node to be on the same axis as the parent.
|
# we want the aabb of each subsequent node to be on the same axis as the parent.
|
||||||
if bounds_transform.is_equal_approx(Transform3D()):
|
if bounds_transform.is_equal_approx(Transform3D()):
|
||||||
_transform = node.global_transform
|
_transform = node.global_transform
|
||||||
@ -97,11 +101,18 @@ func _get_configuration_warnings() -> PackedStringArray:
|
|||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
precompute_aabb()
|
precompute_aabb()
|
||||||
|
_editor_previous_transform = global_transform
|
||||||
|
|
||||||
|
|
||||||
func _process(delta: float) -> void:
|
func _process(delta: float) -> void:
|
||||||
if Engine.is_editor_hint():
|
if Engine.is_editor_hint():
|
||||||
_editor_process_gizmo()
|
_editor_process_gizmo()
|
||||||
|
|
||||||
|
# Update aabb preview when transforming the node.
|
||||||
|
if not _editor_previous_transform.is_equal_approx(global_transform):
|
||||||
|
_editor_previous_transform = global_transform
|
||||||
|
precompute_aabb()
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
if get_tree().debug_collisions_hint:
|
if get_tree().debug_collisions_hint:
|
||||||
@ -111,7 +122,7 @@ func _process(delta: float) -> void:
|
|||||||
if not is_instance_valid(camera):
|
if not is_instance_valid(camera):
|
||||||
return
|
return
|
||||||
|
|
||||||
if is_position_in_bounds(camera.global_position):
|
if enabled and is_position_in_bounds(camera.global_position):
|
||||||
load_level()
|
load_level()
|
||||||
elif not prevent_unloading and is_level_loaded():
|
elif not prevent_unloading and is_level_loaded():
|
||||||
_unload_time_left = maxf(_unload_time_left - delta, 0.0)
|
_unload_time_left = maxf(_unload_time_left - delta, 0.0)
|
||||||
@ -171,6 +182,10 @@ func get_camera() -> Camera3D:
|
|||||||
return camera
|
return camera
|
||||||
|
|
||||||
|
|
||||||
|
func set_enabled(value: bool) -> void:
|
||||||
|
enabled = value
|
||||||
|
|
||||||
|
|
||||||
func is_position_in_bounds(point: Vector3) -> bool:
|
func is_position_in_bounds(point: Vector3) -> bool:
|
||||||
if not _precomputed_aabb.has_point(point):
|
if not _precomputed_aabb.has_point(point):
|
||||||
return false
|
return false
|
||||||
@ -186,10 +201,10 @@ func is_position_in_bounds(point: Vector3) -> bool:
|
|||||||
|
|
||||||
|
|
||||||
func _draw_debug() -> void:
|
func _draw_debug() -> void:
|
||||||
for aabb: AABB in load_aabbs:
|
for aabb: AABB in _precomputed_aabbs:
|
||||||
DebugDraw3D.draw_aabb(get_aabb_with_correct_position(aabb, self), Color.ORANGE)
|
Game.debug_draw("aabb", [aabb, Color.LAWN_GREEN])
|
||||||
|
|
||||||
DebugDraw3D.draw_aabb(get_aabb_with_correct_position(_precomputed_aabb, self), Color.ORANGE_RED)
|
Game.debug_draw("aabb", [_precomputed_aabb, Color.ORANGE_RED])
|
||||||
|
|
||||||
|
|
||||||
func _editor_edit_level() -> void:
|
func _editor_edit_level() -> void:
|
||||||
|
|||||||
@ -45,7 +45,11 @@ func initialize_level_streamers() -> void:
|
|||||||
|
|
||||||
|
|
||||||
func initialize_world_proxies() -> void:
|
func initialize_world_proxies() -> void:
|
||||||
for world_proxy: WorldProxy in WorldProxy.world_proxies:
|
# Reverse order because children are added first, but need to be executed last.
|
||||||
|
var proxies: Array[WorldProxy] = WorldProxy.world_proxies.duplicate()
|
||||||
|
proxies.reverse()
|
||||||
|
|
||||||
|
for world_proxy: WorldProxy in proxies:
|
||||||
if is_ancestor_of(world_proxy):
|
if is_ancestor_of(world_proxy):
|
||||||
world_proxy.set_world(self)
|
world_proxy.set_world(self)
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
@tool
|
||||||
class_name Game
|
class_name Game
|
||||||
extends Node
|
extends Node
|
||||||
|
|
||||||
@ -17,8 +18,8 @@ var current_save_data: SaveData = INITIAL_SAVE_DATA.duplicate()
|
|||||||
var world: World
|
var world: World
|
||||||
var main_menu: MainMenu
|
var main_menu: MainMenu
|
||||||
|
|
||||||
@onready var loading_screen: LoadingScreen = $LoadingScreen
|
@onready var world_container: Node = %WorldContainer
|
||||||
@onready var world_container: Node = $WorldContainer
|
@onready var loading_screen: LoadingScreen = %LoadingScreen
|
||||||
|
|
||||||
|
|
||||||
static func _static_init() -> void:
|
static func _static_init() -> void:
|
||||||
@ -31,6 +32,7 @@ static func debug_draw(draw_shape: String, args: Array) -> void:
|
|||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
|
if not Engine.is_editor_hint():
|
||||||
load_main_menu()
|
load_main_menu()
|
||||||
|
|
||||||
|
|
||||||
@ -54,15 +56,6 @@ func save_game() -> Error:
|
|||||||
return ResourceSaver.save(current_save_data, SAVE_PATH % [save_slot, file_name])
|
return ResourceSaver.save(current_save_data, SAVE_PATH % [save_slot, file_name])
|
||||||
|
|
||||||
|
|
||||||
#func _ready() -> void:
|
|
||||||
#await load_world("res://src/worlds/exposition/exposition.tscn")
|
|
||||||
#await get_tree().create_timer(5.0, false).timeout
|
|
||||||
#await unload_world()
|
|
||||||
#await loading_screen.fade_out()
|
|
||||||
#await get_tree().create_timer(3.0, false).timeout
|
|
||||||
#_ready()
|
|
||||||
|
|
||||||
|
|
||||||
func load_world(world_path: String, save_previous: bool = true, load_from_save: bool = true) -> Error:
|
func load_world(world_path: String, save_previous: bool = true, load_from_save: bool = true) -> Error:
|
||||||
if not ResourceLoader.exists(world_path, "PackedScene"):
|
if not ResourceLoader.exists(world_path, "PackedScene"):
|
||||||
return ERR_FILE_NOT_FOUND
|
return ERR_FILE_NOT_FOUND
|
||||||
|
|||||||
@ -8,5 +8,7 @@ script = ExtResource("1_7uq6d")
|
|||||||
metadata/_custom_type_script = "uid://cl1u038dbrou2"
|
metadata/_custom_type_script = "uid://cl1u038dbrou2"
|
||||||
|
|
||||||
[node name="WorldContainer" type="Node" parent="." unique_id=1835125942]
|
[node name="WorldContainer" type="Node" parent="." unique_id=1835125942]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
|
||||||
[node name="LoadingScreen" parent="." unique_id=1509462056 instance=ExtResource("2_3msxb")]
|
[node name="LoadingScreen" parent="." unique_id=1509462056 instance=ExtResource("2_3msxb")]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
|||||||
@ -7,8 +7,9 @@ extends Node3D
|
|||||||
|
|
||||||
var world: World
|
var world: World
|
||||||
|
|
||||||
@onready var world_proxy: WorldProxy = $WorldProxy
|
@onready var world_proxy: WorldProxy = %WorldProxy
|
||||||
@onready var pickup_interaction: PickupInteraction = $PickupInteraction
|
@onready var pickup_interaction: PickupInteraction = %PickupInteraction
|
||||||
|
@onready var interaction_area: InteractionArea = %InteractionArea
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
|
|||||||
@ -4,15 +4,50 @@ extends Control
|
|||||||
signal load_game_request(save_data: SaveData, slot_index: int)
|
signal load_game_request(save_data: SaveData, slot_index: int)
|
||||||
signal quit_request
|
signal quit_request
|
||||||
|
|
||||||
|
const USER_SETTINGS_PATH: String = "user://settings.ini"
|
||||||
|
const SAVES_DIR: String = "user://saves/"
|
||||||
|
const SAVE_DATA_PATH: String = SAVES_DIR + "%s/save_data.tres"
|
||||||
|
|
||||||
@onready var continue_button: Button = %ContinueButton
|
@onready var continue_button: Button = %ContinueButton
|
||||||
@onready var load_button: Button = %LoadButton
|
@onready var load_button: Button = %LoadButton
|
||||||
@onready var new_game_button: Button = %NewGameButton
|
@onready var new_game_button: Button = %NewGameButton
|
||||||
@onready var quit_button: Button = %QuitButton
|
@onready var quit_button: Button = %QuitButton
|
||||||
|
|
||||||
@onready var saves_scroll_container: ScrollContainer = $SavesScrollContainer
|
@onready var saves_scroll_container: ScrollContainer = %SavesScrollContainer
|
||||||
@onready var saves_container: VBoxContainer = %SavesContainer
|
@onready var saves_container: VBoxContainer = %SavesContainer
|
||||||
|
|
||||||
|
|
||||||
|
static func get_save_slots() -> PackedInt32Array:
|
||||||
|
if not DirAccess.dir_exists_absolute(SAVES_DIR):
|
||||||
|
return []
|
||||||
|
|
||||||
|
var dirs: PackedStringArray = DirAccess.get_directories_at(SAVES_DIR)
|
||||||
|
var index: int = 0
|
||||||
|
|
||||||
|
while index < dirs.size():
|
||||||
|
var dir_name: String = dirs[index]
|
||||||
|
if dir_name.is_valid_int() and not (dir_name.begins_with("+") or dir_name.begins_with("-")):
|
||||||
|
index += 1
|
||||||
|
else:
|
||||||
|
dirs.remove_at(index)
|
||||||
|
|
||||||
|
return type_convert(dirs, TYPE_PACKED_INT32_ARRAY)
|
||||||
|
|
||||||
|
|
||||||
|
static func get_unique_save_slot_index() -> int:
|
||||||
|
var index: int = 0
|
||||||
|
var taken_slots: PackedInt32Array = get_save_slots()
|
||||||
|
|
||||||
|
while taken_slots.has(index):
|
||||||
|
index += 1
|
||||||
|
|
||||||
|
return index
|
||||||
|
|
||||||
|
|
||||||
|
static func get_save_path(slot_index: int) -> String:
|
||||||
|
return SAVE_DATA_PATH % slot_index
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
continue_button.pressed.connect(_on_continue_pressed)
|
continue_button.pressed.connect(_on_continue_pressed)
|
||||||
load_button.pressed.connect(_on_load_pressed)
|
load_button.pressed.connect(_on_load_pressed)
|
||||||
@ -24,7 +59,7 @@ func _ready() -> void:
|
|||||||
|
|
||||||
func has_save() -> bool:
|
func has_save() -> bool:
|
||||||
var config := ConfigFile.new()
|
var config := ConfigFile.new()
|
||||||
config.load("user://settings.ini")
|
config.load(USER_SETTINGS_PATH)
|
||||||
return config.has_section_key("game", "last_slot")
|
return config.has_section_key("game", "last_slot")
|
||||||
|
|
||||||
|
|
||||||
@ -33,36 +68,14 @@ func populate_save_entries() -> void:
|
|||||||
child.queue_free()
|
child.queue_free()
|
||||||
|
|
||||||
for save_slot: int in get_save_slots():
|
for save_slot: int in get_save_slots():
|
||||||
var save_path: String = "user://%s/save_data.tres" % save_slot
|
var save_path: String = get_save_path(save_slot)
|
||||||
var button := SaveEntryButton.construct_save_entry_button(saves_container, save_path, save_slot)
|
var button := SaveEntryButton.construct_save_entry_button(saves_container, save_path, save_slot)
|
||||||
button.pressed.connect(_on_save_entry_pressed.bind(save_slot))
|
button.pressed.connect(_on_save_entry_pressed.bind(save_slot))
|
||||||
|
|
||||||
|
|
||||||
func get_save_slots() -> PackedInt32Array:
|
|
||||||
if not DirAccess.dir_exists_absolute("user://saves/"):
|
|
||||||
return []
|
|
||||||
|
|
||||||
var dirs: PackedStringArray = DirAccess.get_directories_at("user://saves/")
|
|
||||||
return type_convert(dirs, TYPE_PACKED_INT32_ARRAY)
|
|
||||||
|
|
||||||
|
|
||||||
func get_unique_save_slot_index() -> int:
|
|
||||||
var index: int = 0
|
|
||||||
var taken_slots: PackedInt32Array = get_save_slots()
|
|
||||||
|
|
||||||
while taken_slots.has(index):
|
|
||||||
index += 1
|
|
||||||
|
|
||||||
return index
|
|
||||||
|
|
||||||
|
|
||||||
func get_save_path(slot_index: int) -> String:
|
|
||||||
return "user://saves/%s/save_data.tres" % slot_index
|
|
||||||
|
|
||||||
|
|
||||||
func _on_continue_pressed() -> void:
|
func _on_continue_pressed() -> void:
|
||||||
var config := ConfigFile.new()
|
var config := ConfigFile.new()
|
||||||
config.load("user://settings.ini")
|
config.load(USER_SETTINGS_PATH)
|
||||||
var slot: int = config.get_value("game", "last_slot", 0)
|
var slot: int = config.get_value("game", "last_slot", 0)
|
||||||
var path: String = get_save_path(slot)
|
var path: String = get_save_path(slot)
|
||||||
|
|
||||||
@ -74,7 +87,7 @@ func _on_continue_pressed() -> void:
|
|||||||
return
|
return
|
||||||
|
|
||||||
config.set_value("game", "last_slot", slot)
|
config.set_value("game", "last_slot", slot)
|
||||||
config.save("user://settings.ini")
|
config.save(USER_SETTINGS_PATH)
|
||||||
|
|
||||||
var save_data: SaveData = load(path)
|
var save_data: SaveData = load(path)
|
||||||
load_game_request.emit(save_data, slot)
|
load_game_request.emit(save_data, slot)
|
||||||
@ -91,10 +104,9 @@ func _on_new_game_pressed() -> void:
|
|||||||
load_game_request.emit(save_data, slot_index)
|
load_game_request.emit(save_data, slot_index)
|
||||||
|
|
||||||
var config := ConfigFile.new()
|
var config := ConfigFile.new()
|
||||||
var path: String = "user://settings.ini"
|
config.load(USER_SETTINGS_PATH)
|
||||||
config.load(path)
|
|
||||||
config.set_value("game", "last_slot", slot_index)
|
config.set_value("game", "last_slot", slot_index)
|
||||||
config.save(path)
|
config.save(USER_SETTINGS_PATH)
|
||||||
|
|
||||||
|
|
||||||
func _on_quit_pressed() -> void:
|
func _on_quit_pressed() -> void:
|
||||||
@ -103,9 +115,9 @@ func _on_quit_pressed() -> void:
|
|||||||
|
|
||||||
func _on_save_entry_pressed(save_slot: int) -> void:
|
func _on_save_entry_pressed(save_slot: int) -> void:
|
||||||
var config := ConfigFile.new()
|
var config := ConfigFile.new()
|
||||||
config.load("user://settings.ini")
|
config.load(USER_SETTINGS_PATH)
|
||||||
config.set_value("game", "last_slot", save_slot)
|
config.set_value("game", "last_slot", save_slot)
|
||||||
config.save("user://settings.ini")
|
config.save(USER_SETTINGS_PATH)
|
||||||
|
|
||||||
var save_path: String = get_save_path(save_slot)
|
var save_path: String = get_save_path(save_slot)
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,22 @@
|
|||||||
[gd_scene format=3 uid="uid://7v62dybcabgw"]
|
[gd_scene format=3 uid="uid://7v62dybcabgw"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://ckaouf136x7rh" path="res://src/ui/main_menu/main_menu.gd" id="1_2hyyg"]
|
[ext_resource type="Script" uid="uid://ckaouf136x7rh" path="res://src/ui/main_menu/main_menu.gd" id="1_2hyyg"]
|
||||||
|
[ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/dev/dark/dark_01.tres" id="2_4ux21"]
|
||||||
|
|
||||||
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_4ux21"]
|
||||||
|
sky_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1)
|
||||||
|
ground_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1)
|
||||||
|
|
||||||
|
[sub_resource type="Sky" id="Sky_osdni"]
|
||||||
|
sky_material = SubResource("ProceduralSkyMaterial_4ux21")
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_3oi2e"]
|
||||||
|
background_mode = 2
|
||||||
|
sky = SubResource("Sky_osdni")
|
||||||
|
ambient_light_source = 2
|
||||||
|
ambient_light_color = Color(0.4390491, 0.43904912, 0.43904912, 1)
|
||||||
|
tonemap_mode = 2
|
||||||
|
glow_enabled = true
|
||||||
|
|
||||||
[node name="MainMenu" type="Control" unique_id=481021069]
|
[node name="MainMenu" type="Control" unique_id=481021069]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
@ -57,6 +73,7 @@ layout_mode = 2
|
|||||||
text = "QUIT"
|
text = "QUIT"
|
||||||
|
|
||||||
[node name="SavesScrollContainer" type="ScrollContainer" parent="." unique_id=1084479536]
|
[node name="SavesScrollContainer" type="ScrollContainer" parent="." unique_id=1084479536]
|
||||||
|
unique_name_in_owner = true
|
||||||
visible = false
|
visible = false
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = -1
|
anchors_preset = -1
|
||||||
@ -93,3 +110,19 @@ text = "Save 1"
|
|||||||
[node name="Button4" type="Button" parent="SavesScrollContainer/SavesContainer" unique_id=366833041]
|
[node name="Button4" type="Button" parent="SavesScrollContainer/SavesContainer" unique_id=366833041]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
text = "Save 1"
|
text = "Save 1"
|
||||||
|
|
||||||
|
[node name="Background" type="Node3D" parent="." unique_id=877986421]
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="Background" unique_id=3797920]
|
||||||
|
environment = SubResource("Environment_3oi2e")
|
||||||
|
|
||||||
|
[node name="Camera3D" type="Camera3D" parent="Background" unique_id=1208848045]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, -0.90000004)
|
||||||
|
|
||||||
|
[node name="Geometry" type="CSGCombiner3D" parent="Background" unique_id=1192727861]
|
||||||
|
|
||||||
|
[node name="CSGBox3D" type="CSGBox3D" parent="Background/Geometry" unique_id=1467898282]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.5, -3)
|
||||||
|
flip_faces = true
|
||||||
|
size = Vector3(9, 5, 6)
|
||||||
|
material = ExtResource("2_4ux21")
|
||||||
|
|||||||
@ -1,14 +1,12 @@
|
|||||||
[gd_scene format=3 uid="uid://cnfgc6k86hp1q"]
|
[gd_scene format=3 uid="uid://cnfgc6k86hp1q"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://8y3swwnmxwg2" path="res://src/worlds/world.tscn" id="1_3iyfg"]
|
[ext_resource type="PackedScene" uid="uid://8y3swwnmxwg2" path="res://src/worlds/world.tscn" id="1_3iyfg"]
|
||||||
[ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/dev/dark/dark_01.tres" id="2_f04cf"]
|
|
||||||
[ext_resource type="Script" uid="uid://s1vhbwkyewdg" path="res://src/gameplay/systems/flashlight/flashlight_manager.gd" id="2_whdyi"]
|
[ext_resource type="Script" uid="uid://s1vhbwkyewdg" path="res://src/gameplay/systems/flashlight/flashlight_manager.gd" id="2_whdyi"]
|
||||||
[ext_resource type="PackedScene" uid="uid://yuthv3c7rx8" path="res://src/ui/pause_menu/pause_menu.tscn" id="2_yht7d"]
|
[ext_resource type="PackedScene" uid="uid://yuthv3c7rx8" path="res://src/ui/pause_menu/pause_menu.tscn" id="2_yht7d"]
|
||||||
[ext_resource type="Material" uid="uid://r527wj0qbkvs" path="res://assets/dev/orange/orange_02.tres" id="3_en67y"]
|
[ext_resource type="Material" uid="uid://r527wj0qbkvs" path="res://assets/dev/orange/orange_02.tres" id="3_en67y"]
|
||||||
[ext_resource type="Material" uid="uid://d02jll28bgkap" path="res://assets/dev/orange/orange_05.tres" id="3_gdn1s"]
|
[ext_resource type="Material" uid="uid://d02jll28bgkap" path="res://assets/dev/orange/orange_05.tres" id="3_gdn1s"]
|
||||||
[ext_resource type="Material" uid="uid://bahys2ntbh2ap" path="res://assets/dev/orange/orange_01.tres" id="3_wtnit"]
|
[ext_resource type="Script" uid="uid://bgau5aa5a00w3" path="res://src/core/world/level/level_streamer.gd" id="3_maf5p"]
|
||||||
[ext_resource type="Material" uid="uid://biu40ot7f55no" path="res://assets/dev/dark/dark_04.tres" id="4_8xmty"]
|
[ext_resource type="Material" uid="uid://biu40ot7f55no" path="res://assets/dev/dark/dark_04.tres" id="4_8xmty"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cprtg457nr86q" path="res://assets/models/plush/godot_plush_v2.glb" id="8_qm8ha"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bkq8nkmqu7drf" path="res://src/gameplay/systems/flashlight/flashlight_battery.tscn" id="9_n68sy"]
|
[ext_resource type="PackedScene" uid="uid://bkq8nkmqu7drf" path="res://src/gameplay/systems/flashlight/flashlight_battery.tscn" id="9_n68sy"]
|
||||||
[ext_resource type="Script" uid="uid://qpwf8svieydl" path="res://src/worlds/exposition/levels/entrance_hall/entrance_hall_power_box.gd" id="10_btgc1"]
|
[ext_resource type="Script" uid="uid://qpwf8svieydl" path="res://src/worlds/exposition/levels/entrance_hall/entrance_hall_power_box.gd" id="10_btgc1"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c2wxc6rij53vs" path="res://src/gameplay/systems/flashlight/flashlight_trigger.tscn" id="10_dy1qy"]
|
[ext_resource type="PackedScene" uid="uid://c2wxc6rij53vs" path="res://src/gameplay/systems/flashlight/flashlight_trigger.tscn" id="10_dy1qy"]
|
||||||
@ -16,8 +14,9 @@
|
|||||||
[ext_resource type="Script" uid="uid://y1nxrfv31pke" path="res://tools/cutscene_animation_player.gd" id="11_map4s"]
|
[ext_resource type="Script" uid="uid://y1nxrfv31pke" path="res://tools/cutscene_animation_player.gd" id="11_map4s"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bbqf7j8s2n81l" path="res://src/gameplay/systems/power_box/fuse_pickup.tscn" id="11_qm8ha"]
|
[ext_resource type="PackedScene" uid="uid://bbqf7j8s2n81l" path="res://src/gameplay/systems/power_box/fuse_pickup.tscn" id="11_qm8ha"]
|
||||||
[ext_resource type="PackedScene" uid="uid://lyl5v6s6waw" path="res://_development/ayuroo/maestro/_mo_chase_test.tscn" id="14_264wa"]
|
[ext_resource type="PackedScene" uid="uid://lyl5v6s6waw" path="res://_development/ayuroo/maestro/_mo_chase_test.tscn" id="14_264wa"]
|
||||||
|
[ext_resource type="Script" uid="uid://qifiwdgyx6e" path="res://src/core/world/level/world_proxy.gd" id="19_du0pf"]
|
||||||
|
|
||||||
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_gdn1s"]
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_glp4g"]
|
||||||
sky_top_color = Color(0.055987924, 0.081590004, 0.17344469, 1)
|
sky_top_color = Color(0.055987924, 0.081590004, 0.17344469, 1)
|
||||||
sky_horizon_color = Color(0.07963555, 0.093164064, 0.14665467, 1)
|
sky_horizon_color = Color(0.07963555, 0.093164064, 0.14665467, 1)
|
||||||
ground_horizon_color = Color(0.07963555, 0.093164064, 0.14665467, 1)
|
ground_horizon_color = Color(0.07963555, 0.093164064, 0.14665467, 1)
|
||||||
@ -25,7 +24,7 @@ sun_angle_max = 2.93
|
|||||||
sun_curve = 2.2392747
|
sun_curve = 2.2392747
|
||||||
|
|
||||||
[sub_resource type="Sky" id="Sky_dy1qy"]
|
[sub_resource type="Sky" id="Sky_dy1qy"]
|
||||||
sky_material = SubResource("ProceduralSkyMaterial_gdn1s")
|
sky_material = SubResource("ProceduralSkyMaterial_glp4g")
|
||||||
|
|
||||||
[sub_resource type="Environment" id="Environment_dy1qy"]
|
[sub_resource type="Environment" id="Environment_dy1qy"]
|
||||||
background_mode = 2
|
background_mode = 2
|
||||||
@ -33,6 +32,10 @@ sky = SubResource("Sky_dy1qy")
|
|||||||
tonemap_mode = 2
|
tonemap_mode = 2
|
||||||
glow_enabled = true
|
glow_enabled = true
|
||||||
|
|
||||||
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_gdn1s"]
|
||||||
|
sun_angle_max = 2.93
|
||||||
|
sun_curve = 2.2392747
|
||||||
|
|
||||||
[sub_resource type="Sky" id="Sky_wb8ak"]
|
[sub_resource type="Sky" id="Sky_wb8ak"]
|
||||||
sky_material = SubResource("ProceduralSkyMaterial_gdn1s")
|
sky_material = SubResource("ProceduralSkyMaterial_gdn1s")
|
||||||
|
|
||||||
@ -97,16 +100,12 @@ tracks/1/keys = {
|
|||||||
"values": [Vector3(0, 0, 0), Vector3(0, -1.8325957, 0)]
|
"values": [Vector3(0, 0, 0), Vector3(0, -1.8325957, 0)]
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_gdn1s"]
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_yht7d"]
|
||||||
_data = {
|
_data = {
|
||||||
&"RESET": SubResource("Animation_gdn1s"),
|
&"RESET": SubResource("Animation_gdn1s"),
|
||||||
&"open": SubResource("Animation_8xmty")
|
&"open": SubResource("Animation_8xmty")
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_wtnit"]
|
|
||||||
transparency = 1
|
|
||||||
albedo_color = Color(1, 1, 1, 0.35686275)
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_map4s"]
|
[sub_resource type="Animation" id="Animation_map4s"]
|
||||||
length = 0.001
|
length = 0.001
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
@ -285,26 +284,10 @@ _data = {
|
|||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_dy1qy"]
|
[sub_resource type="BoxShape3D" id="BoxShape3D_dy1qy"]
|
||||||
size = Vector3(14.6, 3, 1)
|
size = Vector3(14.6, 3, 1)
|
||||||
|
|
||||||
[node name="Exposition" unique_id=1613733883 instance=ExtResource("1_3iyfg")]
|
[node name="Exposition" unique_id=1613733883 node_paths=PackedStringArray("level_streamers") instance=ExtResource("1_3iyfg")]
|
||||||
|
level_streamers = [NodePath("LevelStreamers/EntranceHall")]
|
||||||
|
|
||||||
[node name="NightEnvironment" type="WorldEnvironment" parent="." index="0" unique_id=1572071534]
|
[node name="PlayerCharacter" parent="." index="0" unique_id=1678220543 node_paths=PackedStringArray("flashlight_manager")]
|
||||||
environment = SubResource("Environment_dy1qy")
|
|
||||||
|
|
||||||
[node name="DayEnvironment" type="WorldEnvironment" parent="." index="1" unique_id=168205352]
|
|
||||||
environment = SubResource("Environment_whdyi")
|
|
||||||
|
|
||||||
[node name="DaySun" type="DirectionalLight3D" parent="." index="2" unique_id=1667672001]
|
|
||||||
transform = Transform3D(-0.8660254, -0.43301278, 0.25, 0, 0.49999997, 0.86602545, -0.50000006, 0.75, -0.43301266, 0, 0, 0)
|
|
||||||
visible = false
|
|
||||||
shadow_enabled = true
|
|
||||||
|
|
||||||
[node name="NightSun" type="DirectionalLight3D" parent="." index="3" unique_id=372201677]
|
|
||||||
transform = Transform3D(-0.8660254, -0.43301278, 0.25, 0, 0.49999997, 0.86602545, -0.50000006, 0.75, -0.43301266, 0, 0, 0)
|
|
||||||
light_color = Color(0.31085983, 0.314331, 0.35950518, 1)
|
|
||||||
light_angular_distance = 0.75
|
|
||||||
shadow_enabled = true
|
|
||||||
|
|
||||||
[node name="PlayerCharacter" parent="." index="4" unique_id=1678220543 node_paths=PackedStringArray("flashlight_manager")]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.0000005, 17)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.0000005, 17)
|
||||||
flashlight_manager = NodePath("FlashlightManager")
|
flashlight_manager = NodePath("FlashlightManager")
|
||||||
|
|
||||||
@ -312,256 +295,95 @@ flashlight_manager = NodePath("FlashlightManager")
|
|||||||
script = ExtResource("2_whdyi")
|
script = ExtResource("2_whdyi")
|
||||||
metadata/_custom_type_script = "uid://s1vhbwkyewdg"
|
metadata/_custom_type_script = "uid://s1vhbwkyewdg"
|
||||||
|
|
||||||
[node name="EntranceHall" type="Node3D" parent="." index="5" unique_id=1518685491]
|
[node name="NightEnvironment" type="WorldEnvironment" parent="." index="1" unique_id=1572071534]
|
||||||
|
environment = SubResource("Environment_dy1qy")
|
||||||
|
|
||||||
[node name="Doors" type="CSGCombiner3D" parent="EntranceHall" index="0" unique_id=2012245375]
|
[node name="DayEnvironment" type="WorldEnvironment" parent="." index="2" unique_id=168205352]
|
||||||
|
environment = SubResource("Environment_whdyi")
|
||||||
|
|
||||||
|
[node name="NightSun" type="DirectionalLight3D" parent="." index="3" unique_id=372201677]
|
||||||
|
transform = Transform3D(-0.8660254, -0.43301278, 0.25, 0, 0.49999997, 0.86602545, -0.50000006, 0.75, -0.43301266, 0, 0, 0)
|
||||||
|
light_color = Color(0.31085983, 0.314331, 0.35950518, 1)
|
||||||
|
light_angular_distance = 0.75
|
||||||
|
shadow_enabled = true
|
||||||
|
|
||||||
|
[node name="DaySun" type="DirectionalLight3D" parent="." index="4" unique_id=1667672001]
|
||||||
|
transform = Transform3D(-0.8660254, -0.43301278, 0.25, 0, 0.49999997, 0.86602545, -0.50000006, 0.75, -0.43301266, 0, 0, 0)
|
||||||
|
visible = false
|
||||||
|
shadow_enabled = true
|
||||||
|
|
||||||
|
[node name="Doors" type="CSGCombiner3D" parent="." index="5" unique_id=623293063]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -19.6)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -19.6)
|
||||||
use_collision = true
|
use_collision = true
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="EntranceHall/Doors" index="0" unique_id=906939002]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="Doors" index="0" unique_id=661035765]
|
||||||
libraries/ = SubResource("AnimationLibrary_gdn1s")
|
libraries/ = SubResource("AnimationLibrary_yht7d")
|
||||||
|
|
||||||
[node name="DoorLeft" type="CSGCombiner3D" parent="EntranceHall/Doors" index="1" unique_id=1094260622]
|
[node name="DoorLeft" type="CSGCombiner3D" parent="Doors" index="1" unique_id=952971802]
|
||||||
transform = Transform3D(0.9999997, 0, 0, 0, 1, 0, 0, 0, 0.9999997, -5.2, 0, 0.10000038)
|
transform = Transform3D(0.9999997, 0, 0, 0, 1, 0, 0, 0, 0.9999997, -5.2, 0, 0.10000038)
|
||||||
|
|
||||||
[node name="Box" type="CSGBox3D" parent="EntranceHall/Doors/DoorLeft" index="0" unique_id=1833029438]
|
[node name="Box" type="CSGBox3D" parent="Doors/DoorLeft" index="0" unique_id=1212613004]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.45, 7, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.45, 7, 0)
|
||||||
visible = false
|
visible = false
|
||||||
size = Vector3(5.5, 14, 1)
|
size = Vector3(5.5, 14, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Box3" type="CSGBox3D" parent="EntranceHall/Doors/DoorLeft" index="1" unique_id=1258502275]
|
[node name="Box3" type="CSGBox3D" parent="Doors/DoorLeft" index="1" unique_id=788913396]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.45, 5.625, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.45, 5.625, 0)
|
||||||
size = Vector3(5.5, 11.25, 1)
|
size = Vector3(5.5, 11.25, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Box4" type="CSGBox3D" parent="EntranceHall/Doors/DoorLeft" index="2" unique_id=1346859939]
|
[node name="Box4" type="CSGBox3D" parent="Doors/DoorLeft" index="2" unique_id=1245695811]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.825, 7, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.825, 7, 0)
|
||||||
size = Vector3(2.75, 14, 1)
|
size = Vector3(2.75, 14, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Box2" type="CSGCylinder3D" parent="EntranceHall/Doors/DoorLeft" index="3" unique_id=1015521100]
|
[node name="Box2" type="CSGCylinder3D" parent="Doors/DoorLeft" index="3" unique_id=946557532]
|
||||||
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, -1, 0, 1, -4.371139e-08, 2.45, 11.25, 0)
|
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, -1, 0, 1, -4.371139e-08, 2.45, 11.25, 0)
|
||||||
radius = 2.75
|
radius = 2.75
|
||||||
height = 1.0
|
height = 1.0
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="DoorRight" type="CSGCombiner3D" parent="EntranceHall/Doors" index="2" unique_id=275591387]
|
[node name="DoorRight" type="CSGCombiner3D" parent="Doors" index="2" unique_id=215853960]
|
||||||
transform = Transform3D(0.9999997, 0, 0, 0, 1, 0, 0, 0, 0.9999997, 5.2, 0, 0.10000038)
|
transform = Transform3D(0.9999997, 0, 0, 0, 1, 0, 0, 0, 0.9999997, 5.2, 0, 0.10000038)
|
||||||
|
|
||||||
[node name="Box" type="CSGBox3D" parent="EntranceHall/Doors/DoorRight" index="0" unique_id=404654783]
|
[node name="Box" type="CSGBox3D" parent="Doors/DoorRight" index="0" unique_id=944987501]
|
||||||
transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, -2.4625, 7, 0)
|
transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, -2.4625, 7, 0)
|
||||||
visible = false
|
visible = false
|
||||||
size = Vector3(5.5, 14, 1)
|
size = Vector3(5.5, 14, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Box3" type="CSGBox3D" parent="EntranceHall/Doors/DoorRight" index="1" unique_id=1124114693]
|
[node name="Box3" type="CSGBox3D" parent="Doors/DoorRight" index="1" unique_id=1942036079]
|
||||||
transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, -2.4625, 5.625, 0)
|
transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, -2.4625, 5.625, 0)
|
||||||
size = Vector3(5.5, 11.25, 1)
|
size = Vector3(5.5, 11.25, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Box4" type="CSGBox3D" parent="EntranceHall/Doors/DoorRight" index="2" unique_id=461171599]
|
[node name="Box4" type="CSGBox3D" parent="Doors/DoorRight" index="2" unique_id=274266953]
|
||||||
transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, -3.8374999, 7, 0)
|
transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, -3.8374999, 7, 0)
|
||||||
size = Vector3(2.75, 14, 1)
|
size = Vector3(2.75, 14, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Box2" type="CSGCylinder3D" parent="EntranceHall/Doors/DoorRight" index="3" unique_id=1740694143]
|
[node name="Box2" type="CSGCylinder3D" parent="Doors/DoorRight" index="3" unique_id=589341751]
|
||||||
transform = Transform3D(-1, 8.742278e-08, -3.821371e-15, 0, -4.371139e-08, -1, -8.742278e-08, -1, 4.371139e-08, -2.4625, 11.25, 0)
|
transform = Transform3D(-1, 8.742278e-08, -3.821371e-15, 0, -4.371139e-08, -1, -8.742278e-08, -1, 4.371139e-08, -2.4625, 11.25, 0)
|
||||||
radius = 2.75
|
radius = 2.75
|
||||||
height = 1.0
|
height = 1.0
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Floor" type="CSGBox3D" parent="EntranceHall/Doors" index="3" unique_id=872627719]
|
[node name="Floor" type="CSGBox3D" parent="Doors" index="3" unique_id=359423735]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0.10000038)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0.10000038)
|
||||||
size = Vector3(11, 1, 1)
|
size = Vector3(11, 1, 1)
|
||||||
material = ExtResource("3_en67y")
|
material = ExtResource("3_en67y")
|
||||||
|
|
||||||
[node name="Blockout" type="CSGCombiner3D" parent="EntranceHall" index="1" unique_id=2092187673]
|
[node name="LevelStreamers" type="Node3D" parent="." index="6" unique_id=460675243]
|
||||||
use_collision = true
|
|
||||||
|
|
||||||
[node name="Floor" type="CSGBox3D" parent="EntranceHall/Blockout" index="0" unique_id=106297379]
|
[node name="EntranceHall" type="Marker3D" parent="LevelStreamers" index="0" unique_id=1730849561]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
script = ExtResource("3_maf5p")
|
||||||
size = Vector3(40, 1, 38)
|
level_id = &"entrance_hall"
|
||||||
material = ExtResource("2_f04cf")
|
scene_path = "uid://cksacjkic7wl6"
|
||||||
|
load_aabbs = Array[AABB]([AABB(-22, -2, -20, 41, 23, 40), AABB(-18, 0, -36, 41, 19, 16)])
|
||||||
|
metadata/_custom_type_script = "uid://bgau5aa5a00w3"
|
||||||
|
|
||||||
[node name="Ceiling" type="CSGBox3D" parent="EntranceHall/Blockout" index="1" unique_id=678154528]
|
[node name="SecondEntranceHall" type="Node3D" parent="." index="7" unique_id=282414961]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 18.5, 0)
|
|
||||||
size = Vector3(40, 1, 38)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="HollowSphere" type="CSGSphere3D" parent="EntranceHall/Blockout/Ceiling" index="0" unique_id=123150142]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
|
||||||
operation = 2
|
|
||||||
radius = 12.0
|
|
||||||
radial_segments = 24
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="CenterCashier" type="CSGCombiner3D" parent="EntranceHall/Blockout" index="2" unique_id=1862985509]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
|
||||||
|
|
||||||
[node name="Statue" type="CSGCombiner3D" parent="EntranceHall/Blockout/CenterCashier" index="0" unique_id=134083437]
|
|
||||||
|
|
||||||
[node name="Room" type="CSGCombiner3D" parent="EntranceHall/Blockout/CenterCashier" index="1" unique_id=120658381]
|
|
||||||
|
|
||||||
[node name="Cylinder" type="CSGCylinder3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="0" unique_id=1559637996]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.25, 0)
|
|
||||||
radius = 6.0
|
|
||||||
height = 4.5
|
|
||||||
sides = 18
|
|
||||||
material = ExtResource("3_wtnit")
|
|
||||||
|
|
||||||
[node name="HollowCylinder" type="CSGCylinder3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="1" unique_id=1402496092]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.7656252, 0)
|
|
||||||
operation = 2
|
|
||||||
radius = 5.8
|
|
||||||
height = 4.6312504
|
|
||||||
sides = 18
|
|
||||||
material = ExtResource("3_wtnit")
|
|
||||||
|
|
||||||
[node name="Window" type="CSGBox3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="2" unique_id=556425626]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.95, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(1.5, 2, 12)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="Window2" type="CSGBox3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="3" unique_id=1652618075]
|
|
||||||
transform = Transform3D(0.70710677, 0, -0.70710677, 0, 1, 0, 0.70710677, 0, 0.70710677, 0, 1.95, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(1.5, 2, 12)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="_TEMPDoor" type="CSGBox3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="4" unique_id=136289796]
|
|
||||||
transform = Transform3D(0.70710677, 0, -0.70710677, 0, 1, 0, 0.70710677, 0, 0.70710677, -3.535534, 1.45, 3.535534)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(1.5, 3, 2)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="Window3" type="CSGBox3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="5" unique_id=1044909127]
|
|
||||||
transform = Transform3D(0, 0, -0.99999994, 0, 1, 0, 0.99999994, 0, 0, 0, 1.95, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(1.5, 2, 12)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="Window4" type="CSGBox3D" parent="EntranceHall/Blockout/CenterCashier/Room" index="6" unique_id=2033585943]
|
|
||||||
transform = Transform3D(-0.70710665, 0, -0.70710665, 0, 1, 0, 0.70710665, 0, -0.70710665, 0, 1.95, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(1.5, 2, 12)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="Dome" type="CSGCombiner3D" parent="EntranceHall/Blockout" index="3" unique_id=949578487]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 19, 0)
|
|
||||||
|
|
||||||
[node name="Sphere" type="CSGSphere3D" parent="EntranceHall/Blockout/Dome" index="0" unique_id=796313331]
|
|
||||||
radius = 13.0
|
|
||||||
radial_segments = 24
|
|
||||||
material = SubResource("StandardMaterial3D_wtnit")
|
|
||||||
|
|
||||||
[node name="DomeDetails" type="CSGCombiner3D" parent="EntranceHall/Blockout/Dome" index="1" unique_id=1959193638]
|
|
||||||
|
|
||||||
[node name="Torus" type="CSGTorus3D" parent="EntranceHall/Blockout/Dome/DomeDetails" index="0" unique_id=1458632213]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 2.9802322e-08, -1, 0, 1, 2.9802322e-08, 0, 0, 0)
|
|
||||||
inner_radius = 13.075
|
|
||||||
outer_radius = 14.0
|
|
||||||
sides = 24
|
|
||||||
material = ExtResource("3_en67y")
|
|
||||||
|
|
||||||
[node name="Torus2" type="CSGTorus3D" parent="EntranceHall/Blockout/Dome/DomeDetails" index="1" unique_id=778282688]
|
|
||||||
transform = Transform3D(0.70710677, -0.70710677, -2.1073424e-08, 0, 2.9802322e-08, -1, 0.70710677, 0.70710677, 2.1073424e-08, 0, 0, 0)
|
|
||||||
inner_radius = 13.075
|
|
||||||
outer_radius = 14.0
|
|
||||||
sides = 24
|
|
||||||
material = ExtResource("3_en67y")
|
|
||||||
|
|
||||||
[node name="Torus3" type="CSGTorus3D" parent="EntranceHall/Blockout/Dome/DomeDetails" index="2" unique_id=793102935]
|
|
||||||
transform = Transform3D(0, -0.99999994, -2.980232e-08, 0, 2.9802322e-08, -1, 0.99999994, 0, 0, 0, 0, 0)
|
|
||||||
inner_radius = 13.075
|
|
||||||
outer_radius = 14.0
|
|
||||||
sides = 24
|
|
||||||
material = ExtResource("3_en67y")
|
|
||||||
|
|
||||||
[node name="Torus4" type="CSGTorus3D" parent="EntranceHall/Blockout/Dome/DomeDetails" index="3" unique_id=357788534]
|
|
||||||
transform = Transform3D(-0.70710665, -0.70710665, -2.107342e-08, 0, 2.9802322e-08, -1, 0.70710665, -0.70710665, -2.107342e-08, 0, 0, 0)
|
|
||||||
inner_radius = 13.075
|
|
||||||
outer_radius = 14.0
|
|
||||||
sides = 24
|
|
||||||
material = ExtResource("3_en67y")
|
|
||||||
|
|
||||||
[node name="TopTorus" type="CSGTorus3D" parent="EntranceHall/Blockout/Dome/DomeDetails" index="4" unique_id=1057763023]
|
|
||||||
transform = Transform3D(0.9999998, 0, 0, 0, 0.9999998, 0, 0, 0, 1, 0, 12.263981, 0)
|
|
||||||
inner_radius = 5.0
|
|
||||||
outer_radius = 6.0
|
|
||||||
sides = 24
|
|
||||||
material = ExtResource("3_en67y")
|
|
||||||
|
|
||||||
[node name="TorusCutoff" type="CSGSphere3D" parent="EntranceHall/Blockout/Dome/DomeDetails" index="5" unique_id=1278980607]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 14.358425, 0)
|
|
||||||
operation = 2
|
|
||||||
radius = 5.6310983
|
|
||||||
radial_segments = 24
|
|
||||||
material = ExtResource("3_en67y")
|
|
||||||
|
|
||||||
[node name="LowerCutoff" type="CSGBox3D" parent="EntranceHall/Blockout/Dome" index="2" unique_id=2066422133]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -7.25, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(29, 14.5, 28)
|
|
||||||
material = SubResource("StandardMaterial3D_wtnit")
|
|
||||||
|
|
||||||
[node name="FrontWall" type="CSGBox3D" parent="EntranceHall/Blockout" index="4" unique_id=767189909]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10, 19.5)
|
|
||||||
size = Vector3(40, 18, 1)
|
|
||||||
material = ExtResource("4_8xmty")
|
|
||||||
|
|
||||||
[node name="DoorCutLeft" type="CSGBox3D" parent="EntranceHall/Blockout/FrontWall" index="0" unique_id=787685923]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 2.5, -7.5, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(2, 2, 3)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="DoorCutLeft2" type="CSGBox3D" parent="EntranceHall/Blockout/FrontWall" index="1" unique_id=1636072458]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, -2.5, -7.5, 0)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(2, 2, 3)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="CSGCylinder3D" type="CSGCylinder3D" parent="EntranceHall/Blockout/FrontWall" index="2" unique_id=1660686906]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 0, -9, 0)
|
|
||||||
operation = 2
|
|
||||||
radius = 11.0
|
|
||||||
sides = 18
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="LowerCutoff" type="CSGBox3D" parent="EntranceHall/Blockout/FrontWall/CSGCylinder3D" index="0" unique_id=1970869844]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -5.25)
|
|
||||||
operation = 2
|
|
||||||
size = Vector3(25, 1, 12.5)
|
|
||||||
material = ExtResource("2_f04cf")
|
|
||||||
|
|
||||||
[node name="BackWall" type="CSGCombiner3D" parent="EntranceHall/Blockout" index="5" unique_id=1852128943]
|
|
||||||
|
|
||||||
[node name="Box" type="CSGBox3D" parent="EntranceHall/Blockout/BackWall" index="0" unique_id=651549013]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.75, 10, -19.5)
|
|
||||||
size = Vector3(14.5, 18, 1)
|
|
||||||
material = ExtResource("4_8xmty")
|
|
||||||
|
|
||||||
[node name="Box2" type="CSGBox3D" parent="EntranceHall/Blockout/BackWall" index="1" unique_id=762610247]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.75, 10, -19.5)
|
|
||||||
size = Vector3(14.5, 18, 1)
|
|
||||||
material = ExtResource("4_8xmty")
|
|
||||||
|
|
||||||
[node name="Box3" type="CSGBox3D" parent="EntranceHall/Blockout/BackWall" index="2" unique_id=1251599122]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 17, -19.5)
|
|
||||||
size = Vector3(11, 4, 1)
|
|
||||||
material = ExtResource("4_8xmty")
|
|
||||||
|
|
||||||
[node name="RightWall" type="CSGCombiner3D" parent="EntranceHall/Blockout" index="6" unique_id=427128707]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.5, 1, 0)
|
|
||||||
|
|
||||||
[node name="Box" type="CSGBox3D" parent="EntranceHall/Blockout/RightWall" index="0" unique_id=156076418]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 9, 0)
|
|
||||||
size = Vector3(1, 18, 40)
|
|
||||||
material = ExtResource("4_8xmty")
|
|
||||||
|
|
||||||
[node name="SecondEntranceHall" type="Node3D" parent="." index="6" unique_id=282414961]
|
|
||||||
|
|
||||||
[node name="Blockout" type="CSGCombiner3D" parent="SecondEntranceHall" index="0" unique_id=1024650246]
|
[node name="Blockout" type="CSGCombiner3D" parent="SecondEntranceHall" index="0" unique_id=1024650246]
|
||||||
use_collision = true
|
use_collision = true
|
||||||
@ -595,18 +417,6 @@ operation = 2
|
|||||||
size = Vector3(17, 11, 5)
|
size = Vector3(17, 11, 5)
|
||||||
material = ExtResource("4_8xmty")
|
material = ExtResource("4_8xmty")
|
||||||
|
|
||||||
[node name="godot_plush V2" parent="." index="7" unique_id=1756431274 instance=ExtResource("8_qm8ha")]
|
|
||||||
transform = Transform3D(-50, 0, 4.371139e-06, 0, 50, 0, -4.371139e-06, 0, -50, 0, 5.628097, 0)
|
|
||||||
|
|
||||||
[node name="godot_plush_01" parent="godot_plush V2" index="0" unique_id=983026135]
|
|
||||||
visible = false
|
|
||||||
|
|
||||||
[node name="godot_plush_sitted" parent="godot_plush V2" index="1" unique_id=1406071640]
|
|
||||||
visible = false
|
|
||||||
|
|
||||||
[node name="godot_plush_02" parent="godot_plush V2" index="2" unique_id=815057431]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0025618896, 0)
|
|
||||||
|
|
||||||
[node name="Objects" type="Node3D" parent="." index="8" unique_id=249052389]
|
[node name="Objects" type="Node3D" parent="." index="8" unique_id=249052389]
|
||||||
|
|
||||||
[node name="FlashlightBattery" parent="Objects" index="0" unique_id=1021450063 node_paths=PackedStringArray("manager") instance=ExtResource("9_n68sy")]
|
[node name="FlashlightBattery" parent="Objects" index="0" unique_id=1021450063 node_paths=PackedStringArray("manager") instance=ExtResource("9_n68sy")]
|
||||||
@ -635,13 +445,16 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.50000006, 2.0499978, 5.8)
|
|||||||
manager = NodePath("../../PlayerCharacter/FlashlightManager")
|
manager = NodePath("../../PlayerCharacter/FlashlightManager")
|
||||||
refill_amount = 0.5
|
refill_amount = 0.5
|
||||||
|
|
||||||
[node name="LogicCluster" type="Node3D" parent="Objects" index="6" unique_id=556526856 node_paths=PackedStringArray("world", "doors_animation_player")]
|
[node name="LogicCluster" type="Node3D" parent="Objects" index="6" unique_id=556526856 node_paths=PackedStringArray("doors_animation_player")]
|
||||||
transform = Transform3D(1.0000001, 0, 0, 0, 1, 0, 0, 0, 1.0000001, 0, 0, 0)
|
transform = Transform3D(1.0000001, 0, 0, 0, 1, 0, 0, 0, 1.0000001, 0, 0, 0)
|
||||||
script = ExtResource("10_btgc1")
|
script = ExtResource("10_btgc1")
|
||||||
world = NodePath("../..")
|
doors_animation_player = NodePath("../../Doors/AnimationPlayer")
|
||||||
doors_animation_player = NodePath("../../EntranceHall/Doors/AnimationPlayer")
|
|
||||||
|
|
||||||
[node name="Cutscene" type="Node3D" parent="Objects/LogicCluster" index="0" unique_id=970055626]
|
[node name="WorldProxy" type="Node" parent="Objects/LogicCluster" index="0" unique_id=227334375]
|
||||||
|
script = ExtResource("19_du0pf")
|
||||||
|
metadata/_custom_type_script = "uid://qifiwdgyx6e"
|
||||||
|
|
||||||
|
[node name="Cutscene" type="Node3D" parent="Objects/LogicCluster" index="1" unique_id=970055626]
|
||||||
|
|
||||||
[node name="EndAlignment" type="Marker3D" parent="Objects/LogicCluster/Cutscene" index="0" unique_id=399304482]
|
[node name="EndAlignment" type="Marker3D" parent="Objects/LogicCluster/Cutscene" index="0" unique_id=399304482]
|
||||||
transform = Transform3D(1.0000001, 0, 0, 0, 1, 0, 0, 0, 1.0000001, 0, 1, -5)
|
transform = Transform3D(1.0000001, 0, 0, 0, 1, 0, 0, 0, 1.0000001, 0, 1, -5)
|
||||||
@ -663,10 +476,10 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.5, -5)
|
|||||||
top_level = true
|
top_level = true
|
||||||
fov = 65.0
|
fov = 65.0
|
||||||
|
|
||||||
[node name="PowerBoxFuse" parent="Objects/LogicCluster" index="1" unique_id=1951712625 instance=ExtResource("10_xp6ux")]
|
[node name="PowerBoxFuse" parent="Objects/LogicCluster" index="2" unique_id=1951712625 instance=ExtResource("10_xp6ux")]
|
||||||
transform = Transform3D(0.96592575, 0, 0.25881898, 0, 1, 0, -0.25881898, 0, 0.96592575, -1.2618543, 2.5, -5.657638)
|
transform = Transform3D(0.96592575, 0, 0.25881898, 0, 1, 0, -0.25881898, 0, 0.96592575, -1.2618543, 2.5, -5.657638)
|
||||||
|
|
||||||
[node name="FusePickup" parent="Objects/LogicCluster" index="2" unique_id=38269817 node_paths=PackedStringArray("power_box") instance=ExtResource("11_qm8ha")]
|
[node name="FusePickup" parent="Objects/LogicCluster" index="3" unique_id=38269817 node_paths=PackedStringArray("power_box") instance=ExtResource("11_qm8ha")]
|
||||||
transform = Transform3D(0.9999998, 0, 0, 0, 1, 0, 0, 0, 0.9999998, -4.2999997, 2.0499978, -3.9999995)
|
transform = Transform3D(0.9999998, 0, 0, 0, 1, 0, 0, 0, 0.9999998, -4.2999997, 2.0499978, -3.9999995)
|
||||||
power_box = NodePath("../PowerBoxFuse")
|
power_box = NodePath("../PowerBoxFuse")
|
||||||
|
|
||||||
@ -701,4 +514,3 @@ transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -20.
|
|||||||
visible = false
|
visible = false
|
||||||
world = NodePath("..")
|
world = NodePath("..")
|
||||||
|
|
||||||
[editable path="godot_plush V2"]
|
|
||||||
|
|||||||
282
game/src/worlds/exposition/levels/entrance_hall.tscn
Normal file
282
game/src/worlds/exposition/levels/entrance_hall.tscn
Normal file
@ -0,0 +1,282 @@
|
|||||||
|
[gd_scene format=3 uid="uid://cksacjkic7wl6"]
|
||||||
|
|
||||||
|
[ext_resource type="Material" uid="uid://r527wj0qbkvs" path="res://assets/dev/orange/orange_02.tres" id="1_4sesj"]
|
||||||
|
[ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/dev/dark/dark_01.tres" id="2_ro4g0"]
|
||||||
|
[ext_resource type="Material" uid="uid://bahys2ntbh2ap" path="res://assets/dev/orange/orange_01.tres" id="3_4uqqm"]
|
||||||
|
[ext_resource type="Material" uid="uid://biu40ot7f55no" path="res://assets/dev/dark/dark_04.tres" id="4_3ohxo"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://qvgrds4w5qlk" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_PaperPile_03_2.glb" id="5_m5411"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://w5f6qhe2k7nt" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_PaperPile_03_1.glb" id="6_8s83o"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dvypbwty4jpw4" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_PaperPile_03.glb" id="7_45xuj"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://brudyosqqlxho" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_CardboardFileBox_02_closed.glb" id="8_hci5i"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c55o1tgvneib2" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_CardboardFileBox_02_open_01.glb" id="9_hx1l4"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bp5tnpr2xeqcw" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_CardboardFileBox_01_closed.glb" id="10_mgf24"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://1m2vet7eedwm" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_Closet_b1.glb" id="11_t7ac6"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://di85vgulxf3qx" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_Chair_01.glb" id="12_ndl0p"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cprtg457nr86q" path="res://assets/models/plush/godot_plush_v2.glb" id="13_ro4g0"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dt1fqe1fhp1mi" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_PaperPile_01.glb" id="14_hx1l4"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dv4o5ldywhctm" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_PaperFilePen_01.glb" id="15_mgf24"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dnj6f7phs8lmy" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_PaperPile_02.glb" id="16_t7ac6"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c2csp3q6ctuwm" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_RadioTelephone_01.glb" id="17_ndl0p"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ctkwxcldpgnk5" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_ComicBooks_02.glb" id="18_id567"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c8tu01ufnbr74" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_ComicBooks_01.glb" id="19_ngprr"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://d3ak24nb0j3h1" path="res://_development/ayuroo/_asset_packs/fc_research_tent/interior_props/SM_CerealBox_01.glb" id="20_dcj1l"]
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_wtnit"]
|
||||||
|
transparency = 1
|
||||||
|
albedo_color = Color(1, 1, 1, 0.35686275)
|
||||||
|
|
||||||
|
[node name="EntranceHall" type="Node3D" unique_id=1922543926]
|
||||||
|
|
||||||
|
[node name="Blockout" type="CSGCombiner3D" parent="." unique_id=1464342270]
|
||||||
|
use_collision = true
|
||||||
|
|
||||||
|
[node name="Floor" type="CSGBox3D" parent="Blockout" unique_id=981718431]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||||
|
size = Vector3(40, 1, 38)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="Ceiling" type="CSGBox3D" parent="Blockout" unique_id=1841940119]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 18.5, 0)
|
||||||
|
size = Vector3(40, 1, 38)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="HollowSphere" type="CSGSphere3D" parent="Blockout/Ceiling" unique_id=2138697938]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||||
|
operation = 2
|
||||||
|
radius = 12.0
|
||||||
|
radial_segments = 24
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="CenterCashier" type="CSGCombiner3D" parent="Blockout" unique_id=1986799842]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
||||||
|
|
||||||
|
[node name="Statue" type="CSGCombiner3D" parent="Blockout/CenterCashier" unique_id=761625484]
|
||||||
|
|
||||||
|
[node name="Room" type="CSGCombiner3D" parent="Blockout/CenterCashier" unique_id=915954706]
|
||||||
|
|
||||||
|
[node name="Cylinder" type="CSGCylinder3D" parent="Blockout/CenterCashier/Room" unique_id=791128983]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.25, 0)
|
||||||
|
radius = 6.0
|
||||||
|
height = 4.5
|
||||||
|
sides = 18
|
||||||
|
material = ExtResource("3_4uqqm")
|
||||||
|
|
||||||
|
[node name="HollowCylinder" type="CSGCylinder3D" parent="Blockout/CenterCashier/Room" unique_id=517097479]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.7656252, 0)
|
||||||
|
operation = 2
|
||||||
|
radius = 5.8
|
||||||
|
height = 4.6312504
|
||||||
|
sides = 18
|
||||||
|
material = ExtResource("3_4uqqm")
|
||||||
|
|
||||||
|
[node name="Window" type="CSGBox3D" parent="Blockout/CenterCashier/Room" unique_id=1058717011]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.95, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(1.5, 2, 12)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="Window2" type="CSGBox3D" parent="Blockout/CenterCashier/Room" unique_id=49546759]
|
||||||
|
transform = Transform3D(0.70710677, 0, -0.70710677, 0, 1, 0, 0.70710677, 0, 0.70710677, 0, 1.95, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(1.5, 2, 12)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="_TEMPDoor" type="CSGBox3D" parent="Blockout/CenterCashier/Room" unique_id=2097227883]
|
||||||
|
transform = Transform3D(0.70710677, 0, -0.70710677, 0, 1, 0, 0.70710677, 0, 0.70710677, -3.535534, 1.45, 3.535534)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(1.5, 3, 2)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="Window3" type="CSGBox3D" parent="Blockout/CenterCashier/Room" unique_id=503374188]
|
||||||
|
transform = Transform3D(0, 0, -0.99999994, 0, 1, 0, 0.99999994, 0, 0, 0, 1.95, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(1.5, 2, 12)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="Window4" type="CSGBox3D" parent="Blockout/CenterCashier/Room" unique_id=997856821]
|
||||||
|
transform = Transform3D(-0.70710665, 0, -0.70710665, 0, 1, 0, 0.70710665, 0, -0.70710665, 0, 1.95, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(1.5, 2, 12)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="Dome" type="CSGCombiner3D" parent="Blockout" unique_id=1518873811]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 19, 0)
|
||||||
|
|
||||||
|
[node name="Sphere" type="CSGSphere3D" parent="Blockout/Dome" unique_id=1240820870]
|
||||||
|
radius = 13.0
|
||||||
|
radial_segments = 24
|
||||||
|
material = SubResource("StandardMaterial3D_wtnit")
|
||||||
|
|
||||||
|
[node name="DomeDetails" type="CSGCombiner3D" parent="Blockout/Dome" unique_id=1621148910]
|
||||||
|
|
||||||
|
[node name="Torus" type="CSGTorus3D" parent="Blockout/Dome/DomeDetails" unique_id=1726696752]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 2.9802322e-08, -1, 0, 1, 2.9802322e-08, 0, 0, 0)
|
||||||
|
inner_radius = 13.075
|
||||||
|
outer_radius = 14.0
|
||||||
|
sides = 24
|
||||||
|
material = ExtResource("1_4sesj")
|
||||||
|
|
||||||
|
[node name="Torus2" type="CSGTorus3D" parent="Blockout/Dome/DomeDetails" unique_id=1848013987]
|
||||||
|
transform = Transform3D(0.70710677, -0.70710677, -2.1073424e-08, 0, 2.9802322e-08, -1, 0.70710677, 0.70710677, 2.1073424e-08, 0, 0, 0)
|
||||||
|
inner_radius = 13.075
|
||||||
|
outer_radius = 14.0
|
||||||
|
sides = 24
|
||||||
|
material = ExtResource("1_4sesj")
|
||||||
|
|
||||||
|
[node name="Torus3" type="CSGTorus3D" parent="Blockout/Dome/DomeDetails" unique_id=526929359]
|
||||||
|
transform = Transform3D(0, -0.99999994, -2.980232e-08, 0, 2.9802322e-08, -1, 0.99999994, 0, 0, 0, 0, 0)
|
||||||
|
inner_radius = 13.075
|
||||||
|
outer_radius = 14.0
|
||||||
|
sides = 24
|
||||||
|
material = ExtResource("1_4sesj")
|
||||||
|
|
||||||
|
[node name="Torus4" type="CSGTorus3D" parent="Blockout/Dome/DomeDetails" unique_id=441749211]
|
||||||
|
transform = Transform3D(-0.70710665, -0.70710665, -2.107342e-08, 0, 2.9802322e-08, -1, 0.70710665, -0.70710665, -2.107342e-08, 0, 0, 0)
|
||||||
|
inner_radius = 13.075
|
||||||
|
outer_radius = 14.0
|
||||||
|
sides = 24
|
||||||
|
material = ExtResource("1_4sesj")
|
||||||
|
|
||||||
|
[node name="TopTorus" type="CSGTorus3D" parent="Blockout/Dome/DomeDetails" unique_id=338189784]
|
||||||
|
transform = Transform3D(0.9999998, 0, 0, 0, 0.9999998, 0, 0, 0, 1, 0, 12.263981, 0)
|
||||||
|
inner_radius = 5.0
|
||||||
|
outer_radius = 6.0
|
||||||
|
sides = 24
|
||||||
|
material = ExtResource("1_4sesj")
|
||||||
|
|
||||||
|
[node name="TorusCutoff" type="CSGSphere3D" parent="Blockout/Dome/DomeDetails" unique_id=1573441356]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 14.358425, 0)
|
||||||
|
operation = 2
|
||||||
|
radius = 5.6310983
|
||||||
|
radial_segments = 24
|
||||||
|
material = ExtResource("1_4sesj")
|
||||||
|
|
||||||
|
[node name="LowerCutoff" type="CSGBox3D" parent="Blockout/Dome" unique_id=182032145]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -7.25, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(29, 14.5, 28)
|
||||||
|
material = SubResource("StandardMaterial3D_wtnit")
|
||||||
|
|
||||||
|
[node name="FrontWall" type="CSGBox3D" parent="Blockout" unique_id=1194334786]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10, 19.5)
|
||||||
|
size = Vector3(40, 18, 1)
|
||||||
|
material = ExtResource("4_3ohxo")
|
||||||
|
|
||||||
|
[node name="DoorCutLeft" type="CSGBox3D" parent="Blockout/FrontWall" unique_id=115120624]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 2.5, -7.5, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(2, 2, 3)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="DoorCutLeft2" type="CSGBox3D" parent="Blockout/FrontWall" unique_id=1732807929]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, -2.5, -7.5, 0)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(2, 2, 3)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="CSGCylinder3D" type="CSGCylinder3D" parent="Blockout/FrontWall" unique_id=1802029672]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.371139e-08, 1, 0, -1, -4.371139e-08, 0, -9, 0)
|
||||||
|
operation = 2
|
||||||
|
radius = 11.0
|
||||||
|
sides = 18
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="LowerCutoff" type="CSGBox3D" parent="Blockout/FrontWall/CSGCylinder3D" unique_id=910198742]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -5.25)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(25, 1, 12.5)
|
||||||
|
material = ExtResource("2_ro4g0")
|
||||||
|
|
||||||
|
[node name="BackWall" type="CSGCombiner3D" parent="Blockout" unique_id=317398196]
|
||||||
|
|
||||||
|
[node name="Box" type="CSGBox3D" parent="Blockout/BackWall" unique_id=1748317091]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.75, 10, -19.5)
|
||||||
|
size = Vector3(14.5, 18, 1)
|
||||||
|
material = ExtResource("4_3ohxo")
|
||||||
|
|
||||||
|
[node name="Box2" type="CSGBox3D" parent="Blockout/BackWall" unique_id=1160242589]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.75, 10, -19.5)
|
||||||
|
size = Vector3(14.5, 18, 1)
|
||||||
|
material = ExtResource("4_3ohxo")
|
||||||
|
|
||||||
|
[node name="Box3" type="CSGBox3D" parent="Blockout/BackWall" unique_id=1687352900]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 17, -19.5)
|
||||||
|
size = Vector3(11, 4, 1)
|
||||||
|
material = ExtResource("4_3ohxo")
|
||||||
|
|
||||||
|
[node name="RightWall" type="CSGCombiner3D" parent="Blockout" unique_id=1186414279]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.5, 1, 0)
|
||||||
|
|
||||||
|
[node name="Box" type="CSGBox3D" parent="Blockout/RightWall" unique_id=1541981230]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 9, 0)
|
||||||
|
size = Vector3(1, 18, 40)
|
||||||
|
material = ExtResource("4_3ohxo")
|
||||||
|
|
||||||
|
[node name="Props" type="Node3D" parent="." unique_id=1024337945]
|
||||||
|
|
||||||
|
[node name="godot_plush V2" parent="Props" unique_id=1730647663 instance=ExtResource("13_ro4g0")]
|
||||||
|
transform = Transform3D(-50, 0, 4.371139e-06, 0, 50, 0, -4.371139e-06, 0, -50, 0, 5.628097, 0)
|
||||||
|
|
||||||
|
[node name="godot_plush_01" parent="Props/godot_plush V2" index="0" unique_id=391290764]
|
||||||
|
visible = false
|
||||||
|
|
||||||
|
[node name="godot_plush_sitted" parent="Props/godot_plush V2" index="1" unique_id=703787110]
|
||||||
|
visible = false
|
||||||
|
|
||||||
|
[node name="godot_plush_02" parent="Props/godot_plush V2" index="2" unique_id=688355995]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0025618896, 0)
|
||||||
|
|
||||||
|
[node name="SM_PaperPile_03_2" parent="Props" unique_id=1345844095 instance=ExtResource("5_m5411")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.718074, 1.0000002, 0.91673136)
|
||||||
|
|
||||||
|
[node name="SM_PaperPile_03_1" parent="Props" unique_id=1405386528 instance=ExtResource("6_8s83o")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.15694028, 1.0000007, 0.6348417)
|
||||||
|
|
||||||
|
[node name="SM_PaperPile_03" parent="Props" unique_id=1152191568 instance=ExtResource("7_45xuj")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.9146078, 1.0000002, 2.7609625)
|
||||||
|
|
||||||
|
[node name="SM_CardboardFileBox_02_closed" parent="Props" unique_id=1652579900 instance=ExtResource("8_hci5i")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.817931, 1.0000015, 1.2458999)
|
||||||
|
|
||||||
|
[node name="SM_CardboardFileBox_02_open_01" parent="Props" unique_id=893917537 instance=ExtResource("9_hx1l4")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.503678, 1.0000011, 2.1690526)
|
||||||
|
|
||||||
|
[node name="SM_CardboardFileBox_01_closed" parent="Props" unique_id=1230475848 instance=ExtResource("10_mgf24")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.4848406, 1.0000011, 1.309094)
|
||||||
|
|
||||||
|
[node name="SM_Closet_b1" parent="Props" unique_id=640104480 instance=ExtResource("11_t7ac6")]
|
||||||
|
transform = Transform3D(0.9396926, 0, -0.34202012, 0, 1, 0, 0.34202012, 0, 0.9396926, 1.4325718, 1.0000005, -5.5614686)
|
||||||
|
|
||||||
|
[node name="SM_Chair_01" parent="Props" unique_id=438450022 instance=ExtResource("12_ndl0p")]
|
||||||
|
transform = Transform3D(0.9396926, 0, -0.34202012, 0, 1, 0, 0.34202012, 0, 0.9396926, 2.9192212, 1.0028769, 3.78964)
|
||||||
|
|
||||||
|
[node name="SM_Chair_02" parent="Props" unique_id=1717374755 instance=ExtResource("12_ndl0p")]
|
||||||
|
transform = Transform3D(1, -1.4950173e-08, -6.7055225e-08, -7.450581e-09, -4.1075268e-08, 0.99999994, -1.4950176e-08, -1.0000001, -4.107527e-08, 3.919, 1.35, 1.79)
|
||||||
|
|
||||||
|
[node name="_TMP" type="Node3D" parent="Props" unique_id=1432658199]
|
||||||
|
|
||||||
|
[node name="SM_PaperPile_01" parent="Props/_TMP" unique_id=52655774 instance=ExtResource("14_hx1l4")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.050662, 1.0000005, 1.0565416)
|
||||||
|
|
||||||
|
[node name="SM_PaperFilePen_01" parent="Props/_TMP" unique_id=745932442 instance=ExtResource("15_mgf24")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.1075568, 1.0017344, 0.21156907)
|
||||||
|
|
||||||
|
[node name="SM_PaperPile_02" parent="Props/_TMP" unique_id=1667321464 instance=ExtResource("16_t7ac6")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.8432698, 1.0000005, 0.67616963)
|
||||||
|
|
||||||
|
[node name="SM_RadioTelephone_01" parent="Props/_TMP" unique_id=107255587 instance=ExtResource("17_ndl0p")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.0042534, 1.0000005, -1.0021183)
|
||||||
|
|
||||||
|
[node name="SM_RadioTelephone_02" parent="Props/_TMP" unique_id=1337907733 instance=ExtResource("17_ndl0p")]
|
||||||
|
transform = Transform3D(0.76604444, 0, 0.6427876, 0, 1, 0, -0.6427876, 0, 0.76604444, 1.596, 2.55, -5.102)
|
||||||
|
|
||||||
|
[node name="SM_ComicBooks_02" parent="Props/_TMP" unique_id=1014914008 instance=ExtResource("18_id567")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.3010767, 1.0000005, -1.1365142)
|
||||||
|
|
||||||
|
[node name="SM_ComicBooks_01" parent="Props/_TMP" unique_id=827009623 instance=ExtResource("19_ngprr")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.2338903, 1.0000005, -1.7645805)
|
||||||
|
|
||||||
|
[node name="SM_CerealBox_01" parent="Props/_TMP" unique_id=1966092815 instance=ExtResource("20_dcj1l")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.1755064, 1.0000006, -2.2027547)
|
||||||
|
|
||||||
|
[editable path="Props/godot_plush V2"]
|
||||||
@ -1,15 +1,19 @@
|
|||||||
extends Node3D
|
extends Node3D
|
||||||
|
|
||||||
@export var world: World
|
|
||||||
@export var doors_animation_player: AnimationPlayer
|
@export var doors_animation_player: AnimationPlayer
|
||||||
|
|
||||||
|
var world: World
|
||||||
|
|
||||||
@onready var power_box_fuse: PowerBox = $PowerBoxFuse
|
@onready var power_box_fuse: PowerBox = $PowerBoxFuse
|
||||||
@onready var fuse_pickup: FusePickup = $FusePickup
|
@onready var fuse_pickup: FusePickup = $FusePickup
|
||||||
@onready var power_box_animation: CutsceneAnimationPlayer = $Cutscene/PowerBoxAnimation
|
@onready var power_box_animation: CutsceneAnimationPlayer = $Cutscene/PowerBoxAnimation
|
||||||
|
@onready var world_proxy: WorldProxy = $WorldProxy
|
||||||
|
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
|
world = await world_proxy.wait_for_world()
|
||||||
|
|
||||||
power_box_fuse.power_restored.connect(_on_power_restored)
|
power_box_fuse.power_restored.connect(_on_power_restored)
|
||||||
power_box_fuse.power_revoked.connect(_on_power_revoked)
|
power_box_fuse.power_revoked.connect(_on_power_revoked)
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user