2025-06-04 13:25:52 +00:00
|
|
|
[gd_scene load_steps=36 format=3 uid="uid://cd63barv73rfx"]
|
2025-05-16 23:54:37 +00:00
|
|
|
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://d3ewjumh0b0g6" path="res://logic-scenes/main menu/logo.png" id="1_61qpo"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://ds1n0xhxqlp4b" path="res://base-environments/youth_room/shaders/universe_noise.png" id="1_t34p3"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://sfo05h6uah7b" path="res://import/interface-elements/USK_12.svg" id="2_ncfee"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://bdyg065h8vcdi" path="res://base-environments/youth_room/shaders/starlight-textures.png" id="2_s1yf2"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://buo4ntxw1vofu" path="res://addons/input_prompts/icons/keyboard/w.png" id="4_8e30h"]
|
|
|
|
|
[ext_resource type="Script" uid="uid://bbs1u7ojno7xo" path="res://addons/input_prompts/action_prompt/action_prompt.gd" id="5_6w5b4"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://yakqusko3p3h" path="res://addons/input_prompts/icons/keyboard/a.png" id="7_g425y"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://b0kuadlp4jw6j" path="res://addons/input_prompts/icons/keyboard/d.png" id="8_kj67n"]
|
|
|
|
|
[ext_resource type="Texture2D" uid="uid://bwhf0tx67yj7a" path="res://addons/input_prompts/icons/keyboard/s.png" id="9_xo70c"]
|
2025-05-29 21:54:11 +00:00
|
|
|
[ext_resource type="Script" uid="uid://0h0lrkntx0uh" path="res://logic-scenes/main menu/pause_menu.gd" id="10_g425y"]
|
2025-06-04 13:25:52 +00:00
|
|
|
[ext_resource type="PackedScene" uid="uid://u0bwjr5l6nkh" path="res://logic-scenes/main menu/privacy_settings.tscn" id="10_jirkf"]
|
2025-06-03 21:17:29 +00:00
|
|
|
[ext_resource type="PackedScene" uid="uid://g2a27jwdapai" path="res://logic-scenes/card_burner/card_burner.tscn" id="10_kj67n"]
|
2025-05-29 21:54:11 +00:00
|
|
|
[ext_resource type="Script" uid="uid://sa15wakvpj2e" path="res://dev-util/bug_button.gd" id="11_kj67n"]
|
2025-06-03 21:17:29 +00:00
|
|
|
[ext_resource type="PackedScene" uid="uid://citwb7f4dl3l1" path="res://thank-you.tscn" id="13_xo70c"]
|
|
|
|
|
[ext_resource type="AudioStream" uid="uid://cho5neuxkvpyh" path="res://base-environments/youth_room/audio/Voice Loop.wav" id="14_k41g6"]
|
2025-05-16 23:54:37 +00:00
|
|
|
|
|
|
|
|
[sub_resource type="GDScript" id="GDScript_t34p3"]
|
|
|
|
|
script/source = "extends Node3D
|
|
|
|
|
|
2025-06-03 21:17:29 +00:00
|
|
|
var has_stage = false
|
|
|
|
|
|
2025-05-16 23:54:37 +00:00
|
|
|
var room = preload(\"res://base-environments/youth_room/youth_room.tscn\")
|
|
|
|
|
var loaded_room: RoomTemplate
|
|
|
|
|
|
|
|
|
|
func _ready() -> void:
|
2025-06-04 13:25:52 +00:00
|
|
|
State.take_stage(self)
|
2025-05-16 23:54:37 +00:00
|
|
|
load_room()
|
|
|
|
|
State.settings_initialised = true
|
|
|
|
|
State.show_content_notes = false
|
|
|
|
|
State.text_language = 1
|
2025-05-21 09:13:44 +00:00
|
|
|
State.speech_language = 1
|
|
|
|
|
$Menu/VBoxContainer2/PressStart.grab_focus()
|
2025-06-03 21:17:29 +00:00
|
|
|
Scenes.sign_up_for_sequence(prepare_transition, Scenes.id.TRANSITION, 0)
|
|
|
|
|
Scenes.sign_up_for_sequence(transition, Scenes.id.TRANSITION, 2)
|
|
|
|
|
|
|
|
|
|
func prepare_transition(_id):
|
|
|
|
|
await get_tree().process_frame
|
|
|
|
|
Scenes.continue_sequence(self)
|
|
|
|
|
|
|
|
|
|
await get_tree().create_timer(5.0).timeout
|
|
|
|
|
loaded_room.prepare_transition()
|
|
|
|
|
ResourceLoader.load_threaded_request(\"res://base-environments/transition/first_platform.tscn\")
|
|
|
|
|
|
|
|
|
|
func transition(_id, _repeat):
|
|
|
|
|
#$TextureRect.texture = get_tree().root.get_texture()
|
|
|
|
|
#$TextureRect.visible = true
|
|
|
|
|
loaded_room.unload()
|
|
|
|
|
var packed_second_room:PackedScene = ResourceLoader.load_threaded_get(\"res://base-environments/transition/first_platform.tscn\")
|
|
|
|
|
loaded_room.queue_free()
|
|
|
|
|
%Room.add_child(packed_second_room.instantiate())
|
|
|
|
|
await get_tree().create_timer(15.5).timeout
|
|
|
|
|
$AudioStreamPlayer/AnimationPlayer.play(\"ending\")
|
|
|
|
|
$ending.show()
|
|
|
|
|
$ending.mouse_filter = Control.MOUSE_FILTER_STOP
|
|
|
|
|
%Room.get_child(0).queue_free()
|
2025-05-16 23:54:37 +00:00
|
|
|
|
|
|
|
|
func load_room():
|
|
|
|
|
for child in %Room.get_children():
|
|
|
|
|
child.queue_free()
|
|
|
|
|
|
|
|
|
|
loaded_room = room.instantiate()
|
|
|
|
|
%Room.add_child(loaded_room)
|
|
|
|
|
|
2025-05-29 21:54:11 +00:00
|
|
|
var in_game: bool
|
2025-05-16 23:54:37 +00:00
|
|
|
func _on_start_button_pressed():
|
2025-05-29 21:54:11 +00:00
|
|
|
in_game = true
|
2025-05-26 17:43:26 +00:00
|
|
|
var new_save = SaveGame.new()
|
|
|
|
|
if DirAccess.dir_exists_absolute( State.user_saves_path ):
|
|
|
|
|
var usr_dir = DirAccess.open(State.user_saves_path)
|
|
|
|
|
for path in usr_dir.get_files():
|
|
|
|
|
if path.ends_with(\".json\"):
|
|
|
|
|
var found_save: = SaveGame.new(\"%s/%s\" % [State.user_saves_path, path.get_basename()])
|
|
|
|
|
if found_save.is_demo:
|
|
|
|
|
new_save = found_save
|
|
|
|
|
break
|
|
|
|
|
|
|
|
|
|
State.active_save_game = new_save
|
2025-05-16 23:54:37 +00:00
|
|
|
var vis_tween = get_tree().create_tween()
|
|
|
|
|
vis_tween.tween_property(%Menu, \"modulate\", Color(1,1,1,0), .3)
|
|
|
|
|
await vis_tween.finished
|
|
|
|
|
%Menu.visible = false
|
|
|
|
|
%Menu.mouse_filter = Control.MouseFilter.MOUSE_FILTER_PASS
|
|
|
|
|
loaded_room.start_room()
|
|
|
|
|
|
|
|
|
|
func _process(delta: float) -> void:
|
|
|
|
|
if Input.is_action_just_pressed(\"reset_demo\"):
|
|
|
|
|
_on_reset()
|
|
|
|
|
|
|
|
|
|
func _on_reset():
|
|
|
|
|
load_room()
|
|
|
|
|
%Menu.modulate = Color.WHITE
|
|
|
|
|
%Menu.mouse_filter = Control.MouseFilter.MOUSE_FILTER_STOP
|
|
|
|
|
%Menu.visible = true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func _on_cn_box_toggled(toggled_on: bool) -> void:
|
|
|
|
|
State.show_content_notes = toggled_on
|
|
|
|
|
|
|
|
|
|
func _on_motion_box_toggled(toggled_on: bool) -> void:
|
|
|
|
|
State.reduce_motion = toggled_on
|
|
|
|
|
|
|
|
|
|
func _on_option_button_item_selected(index: int) -> void:
|
|
|
|
|
match index:
|
|
|
|
|
0:
|
|
|
|
|
State.text_language = 1
|
|
|
|
|
1:
|
|
|
|
|
State.text_language = 2
|
2025-05-29 21:54:11 +00:00
|
|
|
|
|
|
|
|
func _unhandled_input(event: InputEvent) -> void:
|
|
|
|
|
if event is InputEvent and in_game:
|
|
|
|
|
if event.is_action_pressed(\"ui_menu\"):
|
|
|
|
|
toggle_pause_menu()
|
|
|
|
|
|
|
|
|
|
func toggle_pause_menu():
|
|
|
|
|
if not get_tree().paused:
|
|
|
|
|
get_tree().paused = true
|
|
|
|
|
%PauseContainer.show()
|
|
|
|
|
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
|
|
|
|
|
else:
|
|
|
|
|
get_tree().paused = false
|
|
|
|
|
%PauseContainer.hide()
|
|
|
|
|
|
|
|
|
|
if State.stage_list[0] is Player:
|
|
|
|
|
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
2025-05-16 23:54:37 +00:00
|
|
|
"
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Shader" id="Shader_duh8f"]
|
|
|
|
|
code = "shader_type canvas_item;
|
|
|
|
|
render_mode blend_premul_alpha;
|
|
|
|
|
|
|
|
|
|
uniform float nebula_brightness = 4;
|
|
|
|
|
uniform vec2 nebula_scale = vec2(1.5);
|
|
|
|
|
uniform sampler2D starlight_noise: repeat_enable;
|
|
|
|
|
uniform sampler2D starlight_textures;
|
|
|
|
|
uniform float rotation_speed = 0.02;
|
|
|
|
|
uniform vec2 rotation_pivot = vec2(.8);
|
|
|
|
|
uniform vec2 drift_compensation = vec2(0.1, -0.2);
|
|
|
|
|
uniform float noise_strength = 0.2;
|
|
|
|
|
|
|
|
|
|
// https://gist.github.com/ayamflow/c06bc0c8a64f985dd431bd0ac5b557cd
|
|
|
|
|
vec2 rotateUV(vec2 uv, vec2 pivot, float rotation)
|
|
|
|
|
{
|
|
|
|
|
return vec2(
|
|
|
|
|
cos(rotation) * (uv.x - pivot.x) + sin(rotation) * (uv.y - pivot.y) + pivot.x,
|
|
|
|
|
cos(rotation) * (uv.y - pivot.y) - sin(rotation) * (uv.x - pivot.x) + pivot.y
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//clamp(, .0, 1.0
|
|
|
|
|
|
|
|
|
|
void fragment() {
|
|
|
|
|
COLOR *= vec4(.0,
|
|
|
|
|
texture(starlight_textures,fract(UV*2.0)).x * 2.0*pow(max(sin(TIME + 10.0 * texture(starlight_textures,UV).y), .0), 5.0),
|
|
|
|
|
texture(starlight_textures,
|
|
|
|
|
clamp(
|
|
|
|
|
UV / nebula_scale + drift_compensation + 1.0 *
|
|
|
|
|
texture(starlight_noise, rotateUV(
|
|
|
|
|
UV / nebula_scale + noise_strength * texture(starlight_noise, rotateUV(UV, -rotation_pivot, TIME*rotation_speed)).yz,
|
|
|
|
|
rotation_pivot, TIME*rotation_speed)
|
|
|
|
|
).xz,
|
|
|
|
|
.0, 1.0))
|
|
|
|
|
.z * nebula_brightness,
|
|
|
|
|
clamp(pow(COLOR.x * 2.5 - (texture(starlight_noise, UV*2.0+TIME*.02).x + 0.8), 1.5), .0, 1.0)
|
|
|
|
|
) * COLOR.w;
|
|
|
|
|
}
|
|
|
|
|
"
|
|
|
|
|
|
|
|
|
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_k41g6"]
|
|
|
|
|
shader = SubResource("Shader_duh8f")
|
|
|
|
|
shader_parameter/nebula_brightness = 2.4
|
|
|
|
|
shader_parameter/nebula_scale = Vector2(1.3, 1.6)
|
|
|
|
|
shader_parameter/starlight_noise = ExtResource("1_t34p3")
|
|
|
|
|
shader_parameter/starlight_textures = ExtResource("2_s1yf2")
|
|
|
|
|
shader_parameter/rotation_speed = 0.02
|
|
|
|
|
shader_parameter/rotation_pivot = Vector2(0.8, 0.8)
|
|
|
|
|
shader_parameter/drift_compensation = Vector2(0.1, -0.2)
|
|
|
|
|
shader_parameter/noise_strength = 0.2
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Gradient" id="Gradient_7nxov"]
|
|
|
|
|
interpolation_color_space = 2
|
|
|
|
|
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 0)
|
|
|
|
|
|
|
|
|
|
[sub_resource type="GradientTexture2D" id="GradientTexture2D_jirkf"]
|
|
|
|
|
gradient = SubResource("Gradient_7nxov")
|
|
|
|
|
width = 2048
|
|
|
|
|
height = 1536
|
|
|
|
|
fill = 1
|
|
|
|
|
fill_from = Vector2(0.538462, 0.491453)
|
|
|
|
|
fill_to = Vector2(1.3, -0.3)
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventKey" id="InputEventKey_jirkf"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
physical_keycode = 87
|
|
|
|
|
unicode = 119
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_kt5p7"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
axis = 1
|
|
|
|
|
axis_value = -1.0
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventKey" id="InputEventKey_mivr6"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
physical_keycode = 65
|
|
|
|
|
unicode = 97
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_52c3j"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
axis_value = -1.0
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventKey" id="InputEventKey_b7q2n"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
physical_keycode = 68
|
|
|
|
|
unicode = 100
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_qhf78"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
axis_value = 1.0
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventKey" id="InputEventKey_gatj6"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
physical_keycode = 83
|
|
|
|
|
unicode = 115
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_ol51q"]
|
2025-05-16 23:54:37 +00:00
|
|
|
device = -1
|
|
|
|
|
axis = 1
|
|
|
|
|
axis_value = 1.0
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_kt5p7"]
|
|
|
|
|
bg_color = Color(0.0288289, 0.0448641, 0.121276, 1)
|
|
|
|
|
border_width_left = 10
|
|
|
|
|
border_width_top = 10
|
|
|
|
|
border_width_right = 10
|
|
|
|
|
border_width_bottom = 10
|
|
|
|
|
border_color = Color(0.0288289, 0.0448641, 0.121276, 1)
|
|
|
|
|
corner_radius_top_left = 20
|
|
|
|
|
corner_radius_top_right = 20
|
|
|
|
|
corner_radius_bottom_right = 20
|
|
|
|
|
corner_radius_bottom_left = 20
|
|
|
|
|
expand_margin_left = 20.0
|
|
|
|
|
expand_margin_right = 20.0
|
|
|
|
|
|
2025-05-29 21:54:11 +00:00
|
|
|
[sub_resource type="Shader" id="Shader_gatj6"]
|
|
|
|
|
code = "shader_type canvas_item;
|
|
|
|
|
render_mode blend_premul_alpha;
|
|
|
|
|
|
|
|
|
|
uniform float nebula_brightness = 4;
|
|
|
|
|
uniform vec2 nebula_scale = vec2(1.5);
|
|
|
|
|
uniform sampler2D starlight_noise: repeat_enable;
|
|
|
|
|
uniform sampler2D starlight_textures;
|
|
|
|
|
uniform float rotation_speed = 0.02;
|
|
|
|
|
uniform vec2 rotation_pivot = vec2(.8);
|
|
|
|
|
uniform vec2 drift_compensation = vec2(0.1, -0.2);
|
|
|
|
|
uniform float noise_strength = 0.2;
|
|
|
|
|
|
|
|
|
|
// https://gist.github.com/ayamflow/c06bc0c8a64f985dd431bd0ac5b557cd
|
|
|
|
|
vec2 rotateUV(vec2 uv, vec2 pivot, float rotation)
|
|
|
|
|
{
|
|
|
|
|
return vec2(
|
|
|
|
|
cos(rotation) * (uv.x - pivot.x) + sin(rotation) * (uv.y - pivot.y) + pivot.x,
|
|
|
|
|
cos(rotation) * (uv.y - pivot.y) - sin(rotation) * (uv.x - pivot.x) + pivot.y
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//clamp(, .0, 1.0
|
|
|
|
|
|
|
|
|
|
void fragment() {
|
|
|
|
|
COLOR *= vec4(.0,
|
|
|
|
|
texture(starlight_textures,fract(UV*2.0)).x * 2.0*pow(max(sin(TIME + 10.0 * texture(starlight_textures,UV).y), .0), 5.0),
|
|
|
|
|
texture(starlight_textures,
|
|
|
|
|
clamp(
|
|
|
|
|
UV / nebula_scale + drift_compensation + 1.0 *
|
|
|
|
|
texture(starlight_noise, rotateUV(
|
|
|
|
|
UV / nebula_scale + noise_strength * texture(starlight_noise, rotateUV(UV, -rotation_pivot, TIME*rotation_speed)).yz,
|
|
|
|
|
rotation_pivot, TIME*rotation_speed)
|
|
|
|
|
).xz,
|
|
|
|
|
.0, 1.0))
|
|
|
|
|
.z * nebula_brightness,
|
|
|
|
|
clamp(pow(COLOR.x * 2.5 - (texture(starlight_noise, UV*2.0+TIME*.02).x + 0.8), 1.5), .0, 1.0)
|
|
|
|
|
) * COLOR.w;
|
|
|
|
|
}
|
|
|
|
|
"
|
|
|
|
|
|
|
|
|
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ol51q"]
|
|
|
|
|
shader = SubResource("Shader_gatj6")
|
|
|
|
|
shader_parameter/nebula_brightness = 2.4
|
|
|
|
|
shader_parameter/nebula_scale = Vector2(1.3, 1.6)
|
|
|
|
|
shader_parameter/starlight_noise = ExtResource("1_t34p3")
|
|
|
|
|
shader_parameter/starlight_textures = ExtResource("2_s1yf2")
|
|
|
|
|
shader_parameter/rotation_speed = 0.02
|
|
|
|
|
shader_parameter/rotation_pivot = Vector2(0.8, 0.8)
|
|
|
|
|
shader_parameter/drift_compensation = Vector2(0.1, -0.2)
|
|
|
|
|
shader_parameter/noise_strength = 0.2
|
|
|
|
|
|
|
|
|
|
[sub_resource type="Gradient" id="Gradient_2rqk2"]
|
|
|
|
|
interpolation_color_space = 2
|
|
|
|
|
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 0)
|
|
|
|
|
|
|
|
|
|
[sub_resource type="GradientTexture2D" id="GradientTexture2D_w8m28"]
|
|
|
|
|
gradient = SubResource("Gradient_2rqk2")
|
|
|
|
|
width = 2048
|
|
|
|
|
height = 1536
|
|
|
|
|
fill = 1
|
|
|
|
|
fill_from = Vector2(0.538462, 0.491453)
|
|
|
|
|
fill_to = Vector2(1.3, -0.3)
|
|
|
|
|
|
2025-06-03 21:17:29 +00:00
|
|
|
[sub_resource type="Animation" id="Animation_kt5p7"]
|
|
|
|
|
resource_name = "ending"
|
|
|
|
|
length = 120.0
|
|
|
|
|
tracks/0/type = "audio"
|
|
|
|
|
tracks/0/imported = false
|
|
|
|
|
tracks/0/enabled = true
|
|
|
|
|
tracks/0/path = NodePath(".")
|
|
|
|
|
tracks/0/interp = 1
|
|
|
|
|
tracks/0/loop_wrap = true
|
|
|
|
|
tracks/0/keys = {
|
|
|
|
|
"clips": [{
|
|
|
|
|
"end_offset": 0.0,
|
|
|
|
|
"start_offset": 8.34472,
|
|
|
|
|
"stream": ExtResource("14_k41g6")
|
|
|
|
|
}],
|
|
|
|
|
"times": PackedFloat32Array(0.517639)
|
|
|
|
|
}
|
|
|
|
|
tracks/0/use_blend = true
|
|
|
|
|
|
|
|
|
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_mivr6"]
|
|
|
|
|
_data = {
|
|
|
|
|
&"ending": SubResource("Animation_kt5p7")
|
|
|
|
|
}
|
|
|
|
|
|
2025-05-16 23:54:37 +00:00
|
|
|
[node name="DemoMain" type="Node3D"]
|
2025-05-29 21:54:11 +00:00
|
|
|
process_mode = 3
|
2025-05-16 23:54:37 +00:00
|
|
|
script = SubResource("GDScript_t34p3")
|
|
|
|
|
|
|
|
|
|
[node name="Room" type="Node3D" parent="."]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
|
|
|
|
|
[node name="Menu" type="Control" parent="."]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
layout_mode = 3
|
|
|
|
|
anchors_preset = 15
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 2
|
|
|
|
|
|
|
|
|
|
[node name="Panel" type="Panel" parent="Menu"]
|
|
|
|
|
layout_mode = 1
|
|
|
|
|
anchors_preset = 15
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 2
|
|
|
|
|
|
|
|
|
|
[node name="TextureRect3" type="TextureRect" parent="Menu/Panel"]
|
|
|
|
|
material = SubResource("ShaderMaterial_k41g6")
|
|
|
|
|
layout_mode = 0
|
|
|
|
|
offset_left = 2073.0
|
2025-06-03 21:17:29 +00:00
|
|
|
offset_top = 1497.0
|
2025-05-16 23:54:37 +00:00
|
|
|
offset_right = 4353.0
|
2025-06-03 21:17:29 +00:00
|
|
|
offset_bottom = 3530.0
|
2025-05-16 23:54:37 +00:00
|
|
|
rotation = -3.14159
|
|
|
|
|
texture = SubResource("GradientTexture2D_jirkf")
|
|
|
|
|
|
|
|
|
|
[node name="TextureRect2" type="TextureRect" parent="Menu/Panel"]
|
2025-05-21 09:13:44 +00:00
|
|
|
visible = false
|
2025-05-16 23:54:37 +00:00
|
|
|
layout_mode = 1
|
|
|
|
|
anchors_preset = 3
|
|
|
|
|
anchor_left = 1.0
|
|
|
|
|
anchor_top = 1.0
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
offset_left = -395.0
|
|
|
|
|
offset_top = -447.0
|
|
|
|
|
offset_right = 1011.0
|
|
|
|
|
offset_bottom = 959.0
|
|
|
|
|
grow_horizontal = 0
|
|
|
|
|
grow_vertical = 0
|
|
|
|
|
scale = Vector2(0.2, 0.2)
|
|
|
|
|
texture = ExtResource("2_ncfee")
|
|
|
|
|
|
|
|
|
|
[node name="Label" type="Label" parent="Menu/Panel/TextureRect2"]
|
|
|
|
|
layout_mode = 1
|
|
|
|
|
anchors_preset = 7
|
|
|
|
|
anchor_left = 0.5
|
|
|
|
|
anchor_top = 1.0
|
|
|
|
|
anchor_right = 0.5
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
offset_left = -988.0
|
|
|
|
|
offset_top = 99.0002
|
|
|
|
|
offset_right = -590.0
|
|
|
|
|
offset_bottom = 187.0
|
|
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 0
|
|
|
|
|
scale = Vector2(5, 5)
|
|
|
|
|
text = "*Als Messe-Demo geprüft. Entspricht angestrebtem finalen Rating."
|
|
|
|
|
horizontal_alignment = 1
|
|
|
|
|
autowrap_mode = 2
|
|
|
|
|
|
2025-05-21 09:13:44 +00:00
|
|
|
[node name="VBoxContainer2" type="VBoxContainer" parent="Menu"]
|
2025-05-16 23:54:37 +00:00
|
|
|
layout_mode = 1
|
2025-05-21 09:13:44 +00:00
|
|
|
anchors_preset = 8
|
2025-05-16 23:54:37 +00:00
|
|
|
anchor_left = 0.5
|
2025-05-21 09:13:44 +00:00
|
|
|
anchor_top = 0.5
|
2025-05-16 23:54:37 +00:00
|
|
|
anchor_right = 0.5
|
2025-05-21 09:13:44 +00:00
|
|
|
anchor_bottom = 0.5
|
|
|
|
|
offset_left = -256.0
|
|
|
|
|
offset_top = -281.5
|
|
|
|
|
offset_right = 256.0
|
|
|
|
|
offset_bottom = 281.5
|
2025-05-16 23:54:37 +00:00
|
|
|
grow_horizontal = 2
|
2025-05-21 09:13:44 +00:00
|
|
|
grow_vertical = 2
|
|
|
|
|
|
|
|
|
|
[node name="TextureRect" type="TextureRect" parent="Menu/VBoxContainer2"]
|
|
|
|
|
custom_minimum_size = Vector2(512, 512)
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
size_flags_horizontal = 4
|
|
|
|
|
size_flags_vertical = 4
|
|
|
|
|
texture = ExtResource("1_61qpo")
|
|
|
|
|
expand_mode = 2
|
|
|
|
|
|
|
|
|
|
[node name="PressStart" type="Button" parent="Menu/VBoxContainer2"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
theme_override_font_sizes/font_size = 45
|
2025-05-16 23:54:37 +00:00
|
|
|
text = "Start the Demo!"
|
|
|
|
|
|
|
|
|
|
[node name="VBoxContainer" type="VBoxContainer" parent="Menu"]
|
2025-05-21 09:13:44 +00:00
|
|
|
layout_mode = 1
|
|
|
|
|
anchors_preset = 3
|
|
|
|
|
anchor_left = 1.0
|
|
|
|
|
anchor_top = 1.0
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
offset_left = -392.0
|
|
|
|
|
offset_top = -310.0
|
|
|
|
|
offset_right = -78.0
|
|
|
|
|
offset_bottom = -92.0
|
|
|
|
|
grow_horizontal = 0
|
|
|
|
|
grow_vertical = 0
|
2025-05-16 23:54:37 +00:00
|
|
|
|
|
|
|
|
[node name="Label" type="Label" parent="Menu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
theme_type_variation = &"HeaderMedium"
|
|
|
|
|
text = "Accessibility"
|
|
|
|
|
|
|
|
|
|
[node name="CNBox" type="CheckBox" parent="Menu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "show Content Notes"
|
|
|
|
|
|
|
|
|
|
[node name="MotionBox" type="CheckBox" parent="Menu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
2025-05-21 09:13:44 +00:00
|
|
|
text = "reduce motion and flickering"
|
2025-05-16 23:54:37 +00:00
|
|
|
|
|
|
|
|
[node name="Label2" type="Label" parent="Menu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
theme_type_variation = &"HeaderMedium"
|
|
|
|
|
text = "Text Language"
|
|
|
|
|
|
|
|
|
|
[node name="OptionButton" type="OptionButton" parent="Menu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
selected = 0
|
|
|
|
|
item_count = 2
|
|
|
|
|
popup/item_0/text = "englisch"
|
|
|
|
|
popup/item_0/id = 0
|
|
|
|
|
popup/item_1/text = "deutsch"
|
|
|
|
|
popup/item_1/id = 1
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[node name="Button" type="Button" parent="Menu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Privacy Info"
|
|
|
|
|
|
2025-05-16 23:54:37 +00:00
|
|
|
[node name="Control" type="Control" parent="Menu"]
|
|
|
|
|
layout_mode = 1
|
|
|
|
|
anchors_preset = 2
|
|
|
|
|
anchor_top = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
offset_top = -40.0
|
|
|
|
|
offset_right = 40.0
|
|
|
|
|
grow_vertical = 0
|
|
|
|
|
|
|
|
|
|
[node name="ActionPrompt" type="TextureRect" parent="Menu/Control"]
|
|
|
|
|
texture_filter = 1
|
|
|
|
|
layout_mode = 0
|
|
|
|
|
offset_left = 134.0
|
|
|
|
|
offset_top = -282.0
|
|
|
|
|
offset_right = 234.0
|
|
|
|
|
offset_bottom = -182.0
|
|
|
|
|
texture = ExtResource("4_8e30h")
|
|
|
|
|
stretch_mode = 5
|
|
|
|
|
script = ExtResource("5_6w5b4")
|
|
|
|
|
action = "player_forwards"
|
|
|
|
|
icon = 4
|
2025-06-04 13:25:52 +00:00
|
|
|
events = Array[InputEvent]([SubResource("InputEventKey_jirkf"), SubResource("InputEventJoypadMotion_kt5p7")])
|
2025-05-16 23:54:37 +00:00
|
|
|
metadata/_custom_type_script = "uid://bbs1u7ojno7xo"
|
|
|
|
|
|
|
|
|
|
[node name="ActionPrompt2" type="TextureRect" parent="Menu/Control"]
|
|
|
|
|
texture_filter = 1
|
|
|
|
|
layout_mode = 0
|
|
|
|
|
offset_left = 70.0
|
|
|
|
|
offset_top = -187.0
|
|
|
|
|
offset_right = 170.0
|
|
|
|
|
offset_bottom = -87.0
|
|
|
|
|
texture = ExtResource("7_g425y")
|
|
|
|
|
stretch_mode = 5
|
|
|
|
|
script = ExtResource("5_6w5b4")
|
|
|
|
|
action = "player_left"
|
|
|
|
|
icon = 4
|
2025-06-04 13:25:52 +00:00
|
|
|
events = Array[InputEvent]([SubResource("InputEventKey_mivr6"), SubResource("InputEventJoypadMotion_52c3j")])
|
2025-05-16 23:54:37 +00:00
|
|
|
metadata/_custom_type_script = "uid://bbs1u7ojno7xo"
|
|
|
|
|
|
|
|
|
|
[node name="ActionPrompt4" type="TextureRect" parent="Menu/Control"]
|
|
|
|
|
texture_filter = 1
|
|
|
|
|
layout_mode = 0
|
|
|
|
|
offset_left = 247.0
|
|
|
|
|
offset_top = -187.0
|
|
|
|
|
offset_right = 347.0
|
|
|
|
|
offset_bottom = -87.0
|
|
|
|
|
texture = ExtResource("8_kj67n")
|
|
|
|
|
stretch_mode = 5
|
|
|
|
|
script = ExtResource("5_6w5b4")
|
|
|
|
|
action = "player_right"
|
|
|
|
|
icon = 4
|
2025-06-04 13:25:52 +00:00
|
|
|
events = Array[InputEvent]([SubResource("InputEventKey_b7q2n"), SubResource("InputEventJoypadMotion_qhf78")])
|
2025-05-16 23:54:37 +00:00
|
|
|
metadata/_custom_type_script = "uid://bbs1u7ojno7xo"
|
|
|
|
|
|
|
|
|
|
[node name="ActionPrompt3" type="TextureRect" parent="Menu/Control"]
|
|
|
|
|
texture_filter = 1
|
|
|
|
|
layout_mode = 0
|
|
|
|
|
offset_left = 158.0
|
|
|
|
|
offset_top = -187.0
|
|
|
|
|
offset_right = 258.0
|
|
|
|
|
offset_bottom = -87.0
|
|
|
|
|
texture = ExtResource("9_xo70c")
|
|
|
|
|
stretch_mode = 5
|
|
|
|
|
script = ExtResource("5_6w5b4")
|
|
|
|
|
action = "player_backwards"
|
|
|
|
|
icon = 4
|
2025-06-04 13:25:52 +00:00
|
|
|
events = Array[InputEvent]([SubResource("InputEventKey_gatj6"), SubResource("InputEventJoypadMotion_ol51q")])
|
2025-05-16 23:54:37 +00:00
|
|
|
metadata/_custom_type_script = "uid://bbs1u7ojno7xo"
|
|
|
|
|
|
|
|
|
|
[node name="Label" type="Label" parent="Menu/Control"]
|
|
|
|
|
layout_mode = 0
|
|
|
|
|
offset_left = 72.0
|
|
|
|
|
offset_top = -89.0
|
|
|
|
|
offset_right = 374.0
|
|
|
|
|
offset_bottom = -40.0
|
|
|
|
|
theme_type_variation = &"HeaderMedium"
|
|
|
|
|
text = "Move trough the room"
|
|
|
|
|
|
2025-06-04 13:25:52 +00:00
|
|
|
[node name="PrivacyPanel" type="PanelContainer" parent="Menu"]
|
|
|
|
|
visible = false
|
|
|
|
|
layout_mode = 1
|
|
|
|
|
anchors_preset = 8
|
|
|
|
|
anchor_left = 0.5
|
|
|
|
|
anchor_top = 0.5
|
|
|
|
|
anchor_right = 0.5
|
|
|
|
|
anchor_bottom = 0.5
|
|
|
|
|
offset_left = -701.5
|
|
|
|
|
offset_top = -464.5
|
|
|
|
|
offset_right = 701.5
|
|
|
|
|
offset_bottom = 464.5
|
|
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 2
|
|
|
|
|
theme_override_styles/panel = SubResource("StyleBoxFlat_kt5p7")
|
|
|
|
|
|
|
|
|
|
[node name="PrivacyAndDataProtection" parent="Menu/PrivacyPanel" instance=ExtResource("10_jirkf")]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
|
2025-06-03 21:17:29 +00:00
|
|
|
[node name="TextureRect" type="TextureRect" parent="."]
|
|
|
|
|
visible = false
|
|
|
|
|
anchors_preset = 15
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 2
|
|
|
|
|
mouse_filter = 2
|
|
|
|
|
|
|
|
|
|
[node name="CardBurner" parent="." instance=ExtResource("10_kj67n")]
|
|
|
|
|
visible = false
|
|
|
|
|
|
2025-05-29 21:54:11 +00:00
|
|
|
[node name="PauseContainer" type="CenterContainer" parent="."]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
visible = false
|
|
|
|
|
anchors_preset = 15
|
|
|
|
|
anchor_right = 1.0
|
|
|
|
|
anchor_bottom = 1.0
|
|
|
|
|
grow_horizontal = 2
|
|
|
|
|
grow_vertical = 2
|
|
|
|
|
|
|
|
|
|
[node name="TextureRect" type="TextureRect" parent="PauseContainer"]
|
|
|
|
|
material = SubResource("ShaderMaterial_ol51q")
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
texture = SubResource("GradientTexture2D_w8m28")
|
|
|
|
|
|
|
|
|
|
[node name="PauseMenu" type="PanelContainer" parent="PauseContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
script = ExtResource("10_g425y")
|
|
|
|
|
|
|
|
|
|
[node name="VBoxContainer" type="VBoxContainer" parent="PauseContainer/PauseMenu"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
|
|
|
|
|
[node name="Label" type="Label" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
theme_type_variation = &"HeaderLarge"
|
|
|
|
|
text = "Game Paused"
|
|
|
|
|
|
|
|
|
|
[node name="ResumeButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Resume"
|
|
|
|
|
|
|
|
|
|
[node name="BugButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
script = ExtResource("11_kj67n")
|
|
|
|
|
metadata/_custom_type_script = "uid://sa15wakvpj2e"
|
|
|
|
|
|
|
|
|
|
[node name="ToMenuButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
visible = false
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Return to Menu"
|
|
|
|
|
|
|
|
|
|
[node name="ToSettingsButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
visible = false
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Open Settings"
|
|
|
|
|
|
|
|
|
|
[node name="ToDesktopButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Quit to Desktop"
|
|
|
|
|
|
|
|
|
|
[node name="HSeparator" type="HSeparator" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
custom_minimum_size = Vector2(0, 20)
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
|
|
|
|
|
[node name="FindHelplineButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Find Help-Lines"
|
|
|
|
|
|
|
|
|
|
[node name="Label2" type="Label" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "opens findahelpline.com"
|
|
|
|
|
horizontal_alignment = 1
|
|
|
|
|
|
|
|
|
|
[node name="SkipStoryButton" type="Button" parent="PauseContainer/PauseMenu/VBoxContainer"]
|
|
|
|
|
unique_name_in_owner = true
|
|
|
|
|
visible = false
|
|
|
|
|
layout_mode = 2
|
|
|
|
|
text = "Skip this Story"
|
|
|
|
|
|
2025-06-03 21:17:29 +00:00
|
|
|
[node name="ending" parent="." instance=ExtResource("13_xo70c")]
|
|
|
|
|
visible = false
|
|
|
|
|
mouse_filter = 2
|
|
|
|
|
|
|
|
|
|
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."]
|
|
|
|
|
|
|
|
|
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="AudioStreamPlayer"]
|
|
|
|
|
libraries = {
|
|
|
|
|
&"": SubResource("AnimationLibrary_mivr6")
|
|
|
|
|
}
|
|
|
|
|
|
2025-05-21 09:13:44 +00:00
|
|
|
[connection signal="pressed" from="Menu/VBoxContainer2/PressStart" to="." method="_on_start_button_pressed"]
|
2025-05-16 23:54:37 +00:00
|
|
|
[connection signal="toggled" from="Menu/VBoxContainer/CNBox" to="." method="_on_cn_box_toggled"]
|
|
|
|
|
[connection signal="toggled" from="Menu/VBoxContainer/MotionBox" to="." method="_on_motion_box_toggled"]
|
|
|
|
|
[connection signal="item_selected" from="Menu/VBoxContainer/OptionButton" to="." method="_on_option_button_item_selected"]
|
2025-06-04 13:25:52 +00:00
|
|
|
[connection signal="pressed" from="Menu/VBoxContainer/Button" to="Menu/PrivacyPanel" method="show"]
|
|
|
|
|
[connection signal="leave_stage" from="Menu/PrivacyPanel/PrivacyAndDataProtection" to="Menu/PrivacyPanel" method="hide"]
|