From f089fbb80185aa1ddc26cb3bc83ce3fb9ea09e35 Mon Sep 17 00:00:00 2001 From: betalars Date: Mon, 21 Jul 2025 14:33:04 +0200 Subject: [PATCH] import german audio for demo --- .../import/textures/bing_bong.png | 3 + .../import/textures/bing_bong.png.import | 36 ++ .../import/textures/gem-normal.png | 3 + .../import/textures/gem-normal.png.import | 36 ++ .../import/textures/stickerbomb.png | 3 + .../import/textures/stickerbomb.png.import | 34 ++ .../shaders/gem-artwork.gdshader | 13 + .../shaders/gem-artwork.gdshader.uid | 1 + .../youth_room/audio/board_completed_de.wav | 3 + .../audio/board_completed_de.wav.import | 24 + .../youth_room/audio/board_incomplete_de.wav | 3 + .../audio/board_incomplete_de.wav.import | 24 + .../youth_room/audio/board_unfitting_de.wav | 3 + .../audio/board_unfitting_de.wav.import | 24 + .../youth_room/audio/why-does-it-mean_de.wav | 3 + .../audio/why-does-it-mean_de.wav.import | 24 + .../youth_room/import/textures/bad-grades.kra | 3 + .../youth_room/import/textures/bad-grades.png | 3 + .../import/textures/bad-grades.png.import | 34 ++ .../youth_room/scnees/draven.tscn | 15 + .../youth_room/scnees/jui_jutsu.tscn | 420 +++++++++--------- .../youth_room/scnees/scene_player.gd | 2 +- .../youth_room/scnees/voice_training.tscn | 330 +++++++------- src/demo-main.tscn | 2 +- src/dev-util/hardcoded_cards.gd | 4 +- src/dev-util/stereo-switch.gd | 13 + src/internationalisation.csv | 6 +- src/internationalisation.de.translation | Bin 19973 -> 19989 bytes src/internationalisation.en.translation | Bin 17670 -> 17674 bytes src/internationalisation.es.translation | Bin 8477 -> 8493 bytes src/internationalisation.ja.translation | Bin 8477 -> 8493 bytes src/internationalisation.notes.translation | Bin 9004 -> 9020 bytes src/logic-scenes/board/card-board.gd | 6 +- src/logic-scenes/board/physics-board.tscn | 91 ++-- src/logic-scenes/card_picker/card_picker.gd | 6 +- src/logic-scenes/card_picker/card_picker.tscn | 12 +- 36 files changed, 743 insertions(+), 441 deletions(-) create mode 100644 src/base-environments/volunteer_room/import/textures/bing_bong.png create mode 100644 src/base-environments/volunteer_room/import/textures/bing_bong.png.import create mode 100644 src/base-environments/volunteer_room/import/textures/gem-normal.png create mode 100644 src/base-environments/volunteer_room/import/textures/gem-normal.png.import create mode 100644 src/base-environments/volunteer_room/import/textures/stickerbomb.png create mode 100644 src/base-environments/volunteer_room/import/textures/stickerbomb.png.import create mode 100644 src/base-environments/volunteer_room/shaders/gem-artwork.gdshader create mode 100644 src/base-environments/volunteer_room/shaders/gem-artwork.gdshader.uid create mode 100644 src/base-environments/youth_room/audio/board_completed_de.wav create mode 100644 src/base-environments/youth_room/audio/board_completed_de.wav.import create mode 100644 src/base-environments/youth_room/audio/board_incomplete_de.wav create mode 100644 src/base-environments/youth_room/audio/board_incomplete_de.wav.import create mode 100644 src/base-environments/youth_room/audio/board_unfitting_de.wav create mode 100644 src/base-environments/youth_room/audio/board_unfitting_de.wav.import create mode 100644 src/base-environments/youth_room/audio/why-does-it-mean_de.wav create mode 100644 src/base-environments/youth_room/audio/why-does-it-mean_de.wav.import create mode 100644 src/base-environments/youth_room/import/textures/bad-grades.kra create mode 100644 src/base-environments/youth_room/import/textures/bad-grades.png create mode 100644 src/base-environments/youth_room/import/textures/bad-grades.png.import diff --git a/src/base-environments/volunteer_room/import/textures/bing_bong.png b/src/base-environments/volunteer_room/import/textures/bing_bong.png new file mode 100644 index 00000000..dca56afb --- /dev/null +++ b/src/base-environments/volunteer_room/import/textures/bing_bong.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54fae809e16718a71fbf0224ab35f3ff7b320f911390353fe5ade134f5a7288a +size 14919 diff --git a/src/base-environments/volunteer_room/import/textures/bing_bong.png.import b/src/base-environments/volunteer_room/import/textures/bing_bong.png.import new file mode 100644 index 00000000..e161af10 --- /dev/null +++ b/src/base-environments/volunteer_room/import/textures/bing_bong.png.import @@ -0,0 +1,36 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bji6drfnvgv3j" +path.s3tc="res://.godot/imported/bing_bong.png-881e8f37088d32717048d5c13acb0de0.s3tc.ctex" +path.etc2="res://.godot/imported/bing_bong.png-881e8f37088d32717048d5c13acb0de0.etc2.ctex" +metadata={ +"imported_formats": ["s3tc_bptc", "etc2_astc"], +"vram_texture": true +} + +[deps] + +source_file="res://base-environments/volunteer_room/import/textures/bing_bong.png" +dest_files=["res://.godot/imported/bing_bong.png-881e8f37088d32717048d5c13acb0de0.s3tc.ctex", "res://.godot/imported/bing_bong.png-881e8f37088d32717048d5c13acb0de0.etc2.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/src/base-environments/volunteer_room/import/textures/gem-normal.png b/src/base-environments/volunteer_room/import/textures/gem-normal.png new file mode 100644 index 00000000..54c7722d --- /dev/null +++ b/src/base-environments/volunteer_room/import/textures/gem-normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de50dfcbb83c83348443bb34df37d6a8898a297cc0a56ee149f3a7f828eefcbf +size 28402 diff --git a/src/base-environments/volunteer_room/import/textures/gem-normal.png.import b/src/base-environments/volunteer_room/import/textures/gem-normal.png.import new file mode 100644 index 00000000..4d8f2122 --- /dev/null +++ b/src/base-environments/volunteer_room/import/textures/gem-normal.png.import @@ -0,0 +1,36 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://nu02kjr4xq3d" +path.s3tc="res://.godot/imported/gem-normal.png-171f0a49d8783557eab6cac24e7f5395.s3tc.ctex" +path.etc2="res://.godot/imported/gem-normal.png-171f0a49d8783557eab6cac24e7f5395.etc2.ctex" +metadata={ +"imported_formats": ["s3tc_bptc", "etc2_astc"], +"vram_texture": true +} + +[deps] + +source_file="res://base-environments/volunteer_room/import/textures/gem-normal.png" +dest_files=["res://.godot/imported/gem-normal.png-171f0a49d8783557eab6cac24e7f5395.s3tc.ctex", "res://.godot/imported/gem-normal.png-171f0a49d8783557eab6cac24e7f5395.etc2.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 diff --git a/src/base-environments/volunteer_room/import/textures/stickerbomb.png b/src/base-environments/volunteer_room/import/textures/stickerbomb.png new file mode 100644 index 00000000..f58c5143 --- /dev/null +++ b/src/base-environments/volunteer_room/import/textures/stickerbomb.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87f4bfebb396fdb3e34f7c1b3e87dabee43a6c131945f12537ed7aff9c0bf651 +size 751362 diff --git a/src/base-environments/volunteer_room/import/textures/stickerbomb.png.import b/src/base-environments/volunteer_room/import/textures/stickerbomb.png.import new file mode 100644 index 00000000..1d718aa0 --- /dev/null +++ b/src/base-environments/volunteer_room/import/textures/stickerbomb.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d0o4bf3igb2xo" +path="res://.godot/imported/stickerbomb.png-81acf2412df167480df12c7cbda3c2c6.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://base-environments/volunteer_room/import/textures/stickerbomb.png" +dest_files=["res://.godot/imported/stickerbomb.png-81acf2412df167480df12c7cbda3c2c6.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/src/base-environments/volunteer_room/shaders/gem-artwork.gdshader b/src/base-environments/volunteer_room/shaders/gem-artwork.gdshader new file mode 100644 index 00000000..71d37043 --- /dev/null +++ b/src/base-environments/volunteer_room/shaders/gem-artwork.gdshader @@ -0,0 +1,13 @@ +shader_type spatial; +render_mode blend_mix, depth_draw_opaque, cull_back, diffuse_burley, specular_schlick_ggx; + +uniform sampler2D texture_albedo : source_color, filter_nearest, repeat_enable; +uniform float roughness : hint_range(0.0, 1.0); +uniform sampler2D texture_normal_detail : hint_default_white, filter_linear_mipmap, repeat_enable; + + +void fragment() { + ALBEDO = texture(texture_albedo, UV).xyz * texture(texture_normal_detail, UV * vec2(336.*.125,278.*.125)).w; + NORMAL = texture(texture_normal_detail, UV * vec2(336.*.125,278.*.125)).xyz; + ROUGHNESS = .2; +} diff --git a/src/base-environments/volunteer_room/shaders/gem-artwork.gdshader.uid b/src/base-environments/volunteer_room/shaders/gem-artwork.gdshader.uid new file mode 100644 index 00000000..98c3bb21 --- /dev/null +++ b/src/base-environments/volunteer_room/shaders/gem-artwork.gdshader.uid @@ -0,0 +1 @@ +uid://dubyvbna30nhn diff --git a/src/base-environments/youth_room/audio/board_completed_de.wav b/src/base-environments/youth_room/audio/board_completed_de.wav new file mode 100644 index 00000000..68deef73 --- /dev/null +++ b/src/base-environments/youth_room/audio/board_completed_de.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:080986a48b30427d1da820c6784f67eef1981a424e8c12d4f892eafcebb927a2 +size 3111868 diff --git a/src/base-environments/youth_room/audio/board_completed_de.wav.import b/src/base-environments/youth_room/audio/board_completed_de.wav.import new file mode 100644 index 00000000..1b78fd80 --- /dev/null +++ b/src/base-environments/youth_room/audio/board_completed_de.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://bgtohhyd8whbm" +path="res://.godot/imported/board_completed_de.wav-55f9cea3167235e42e73664c3c3b4b28.sample" + +[deps] + +source_file="res://base-environments/youth_room/audio/board_completed_de.wav" +dest_files=["res://.godot/imported/board_completed_de.wav-55f9cea3167235e42e73664c3c3b4b28.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/src/base-environments/youth_room/audio/board_incomplete_de.wav b/src/base-environments/youth_room/audio/board_incomplete_de.wav new file mode 100644 index 00000000..9d1507ac --- /dev/null +++ b/src/base-environments/youth_room/audio/board_incomplete_de.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e6235e8d01a6ceecf3923174153f14a0be5417c0fd7efb6396041daa24d939f +size 2639440 diff --git a/src/base-environments/youth_room/audio/board_incomplete_de.wav.import b/src/base-environments/youth_room/audio/board_incomplete_de.wav.import new file mode 100644 index 00000000..00b8d59a --- /dev/null +++ b/src/base-environments/youth_room/audio/board_incomplete_de.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://swlo6elqs4vx" +path="res://.godot/imported/board_incomplete_de.wav-48605bd9d84421a768280982b861fa50.sample" + +[deps] + +source_file="res://base-environments/youth_room/audio/board_incomplete_de.wav" +dest_files=["res://.godot/imported/board_incomplete_de.wav-48605bd9d84421a768280982b861fa50.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/src/base-environments/youth_room/audio/board_unfitting_de.wav b/src/base-environments/youth_room/audio/board_unfitting_de.wav new file mode 100644 index 00000000..9e0fef60 --- /dev/null +++ b/src/base-environments/youth_room/audio/board_unfitting_de.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da1acb6ced4002e1e7baec81d132e747eae349fb90395f53fd01fbff0433ac42 +size 1934350 diff --git a/src/base-environments/youth_room/audio/board_unfitting_de.wav.import b/src/base-environments/youth_room/audio/board_unfitting_de.wav.import new file mode 100644 index 00000000..5903c957 --- /dev/null +++ b/src/base-environments/youth_room/audio/board_unfitting_de.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://y8fg3wjscvci" +path="res://.godot/imported/board_unfitting_de.wav-710ce6bfcb0548979414d8ee42ba62d8.sample" + +[deps] + +source_file="res://base-environments/youth_room/audio/board_unfitting_de.wav" +dest_files=["res://.godot/imported/board_unfitting_de.wav-710ce6bfcb0548979414d8ee42ba62d8.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/src/base-environments/youth_room/audio/why-does-it-mean_de.wav b/src/base-environments/youth_room/audio/why-does-it-mean_de.wav new file mode 100644 index 00000000..aecc870e --- /dev/null +++ b/src/base-environments/youth_room/audio/why-does-it-mean_de.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93b446fcd59266f6e64ac539928ef8b9a9fe768dece1508c29f05e2bb90d4ef5 +size 470996 diff --git a/src/base-environments/youth_room/audio/why-does-it-mean_de.wav.import b/src/base-environments/youth_room/audio/why-does-it-mean_de.wav.import new file mode 100644 index 00000000..b0cecdbe --- /dev/null +++ b/src/base-environments/youth_room/audio/why-does-it-mean_de.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://tbx31bdlhbtr" +path="res://.godot/imported/why-does-it-mean_de.wav-e8cf9c54b25ca486f2d467ef85cdc195.sample" + +[deps] + +source_file="res://base-environments/youth_room/audio/why-does-it-mean_de.wav" +dest_files=["res://.godot/imported/why-does-it-mean_de.wav-e8cf9c54b25ca486f2d467ef85cdc195.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/src/base-environments/youth_room/import/textures/bad-grades.kra b/src/base-environments/youth_room/import/textures/bad-grades.kra new file mode 100644 index 00000000..32830720 --- /dev/null +++ b/src/base-environments/youth_room/import/textures/bad-grades.kra @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2918f2ceb5adb0406df7e7fa9ed1f1ea97fdec5d3c5ebef01155a2ce176e0c29 +size 2144388 diff --git a/src/base-environments/youth_room/import/textures/bad-grades.png b/src/base-environments/youth_room/import/textures/bad-grades.png new file mode 100644 index 00000000..4c56317b --- /dev/null +++ b/src/base-environments/youth_room/import/textures/bad-grades.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d96f322fbbdba3f27a96064e3e8fe5a1c941b151884bdd4dd94128fff151ee2c +size 386340 diff --git a/src/base-environments/youth_room/import/textures/bad-grades.png.import b/src/base-environments/youth_room/import/textures/bad-grades.png.import new file mode 100644 index 00000000..40fc57f1 --- /dev/null +++ b/src/base-environments/youth_room/import/textures/bad-grades.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://iyd3561b7vdd" +path="res://.godot/imported/bad-grades.png-406d218979c34bc281fa29c69b5cd3e8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://base-environments/youth_room/import/textures/bad-grades.png" +dest_files=["res://.godot/imported/bad-grades.png-406d218979c34bc281fa29c69b5cd3e8.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/src/base-environments/youth_room/scnees/draven.tscn b/src/base-environments/youth_room/scnees/draven.tscn index e3299858..beeace18 100644 --- a/src/base-environments/youth_room/scnees/draven.tscn +++ b/src/base-environments/youth_room/scnees/draven.tscn @@ -214,6 +214,21 @@ tracks/6/keys = { "update": 1, "values": [true] } +tracks/7/type = "audio" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("%AnimationPlayer/Music") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"clips": [{ +"end_offset": 0.0, +"start_offset": 0.0, +"stream": ExtResource("6_7f2et") +}], +"times": PackedFloat32Array(0.0333333) +} +tracks/7/use_blend = true [sub_resource type="Animation" id="Animation_egql5"] resource_name = "debug" diff --git a/src/base-environments/youth_room/scnees/jui_jutsu.tscn b/src/base-environments/youth_room/scnees/jui_jutsu.tscn index 9c82441f..d8fbdeb5 100644 --- a/src/base-environments/youth_room/scnees/jui_jutsu.tscn +++ b/src/base-environments/youth_room/scnees/jui_jutsu.tscn @@ -222,6 +222,216 @@ tracks/6/keys = { "values": [0] } +[sub_resource type="Animation" id="Animation_bvh45"] +resource_name = "de" +length = 203.0 +tracks/0/type = "audio" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%AnimationPlayer/Text") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"clips": [{ +"end_offset": 0.0, +"start_offset": 0.0, +"stream": ExtResource("11_uqngm") +}], +"times": PackedFloat32Array(2.73333) +} +tracks/0/use_blend = true +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("../../..:modulate") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 0.4), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("../../..:visible") +tracks/2/interp = 0 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} +tracks/3/type = "audio" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("%AnimationPlayer/Music") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"clips": [{ +"end_offset": 0.0, +"start_offset": 0.0, +"stream": ExtResource("10_bvh45") +}], +"times": PackedFloat32Array(3) +} +tracks/3/use_blend = true +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:emitting") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0, 5.8, 11.3, 18.2, 26.1, 34.4, 43.7, 53.2, 65.1, 75.7, 93), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [false, true, true, true, true, true, true, true, true, true, true] +} +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:amount") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(4, 11.1, 18, 25.9, 34.2, 43.5, 53, 65, 75.6, 92.1), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [1, 10, 20, 40, 80, 180, 160, 320, 400, 500] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("../../card/BackgroundSprite:noise_speed") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(2, 129.7, 149.1, 167.15), +"transitions": PackedFloat32Array(0.482968, 1.86607, 1, 1), +"update": 0, +"values": [0.0, 10.0, 5.0, 10.0] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:one_shot") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0, 93), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} +tracks/8/type = "value" +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:lifetime") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"times": PackedFloat32Array(93, 129.9, 136.6, 164.8), +"transitions": PackedFloat32Array(1, 0.31864, 2.21914, 1), +"update": 0, +"values": [5.0, 1.5, 4.0, 2.0] +} +tracks/9/type = "value" +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:explosiveness") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"times": PackedFloat32Array(96.3, 129.9, 136.6, 159.5, 176.7), +"transitions": PackedFloat32Array(1, 0.31864, 1, 0.406126, 1), +"update": 0, +"values": [0.29, 0.69, 0.74, 0.9, 0.2] +} +tracks/10/type = "value" +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:speed_scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/keys = { +"times": PackedFloat32Array(105.6, 129.8, 150.5, 164.7), +"transitions": PackedFloat32Array(1, 0.466516, 1, 1), +"update": 0, +"values": [1.0, 1.9, 0.4, 1.0] +} +tracks/11/type = "value" +tracks/11/imported = false +tracks/11/enabled = true +tracks/11/path = NodePath("../../card/BackgroundSprite:noise_power") +tracks/11/interp = 1 +tracks/11/loop_wrap = true +tracks/11/keys = { +"times": PackedFloat32Array(8.4, 93.4, 129.7, 159.4, 169.4), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1), +"update": 0, +"values": [5.0, 2.0, 0.3, 0.3, 1.5] +} +tracks/12/type = "method" +tracks/12/imported = false +tracks/12/enabled = true +tracks/12/path = NodePath("../../..") +tracks/12/interp = 1 +tracks/12/loop_wrap = true +tracks/12/keys = { +"times": PackedFloat32Array(34.7667, 73, 105.467, 143.633, 163.167, 178.233, 202.067), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), +"values": [{ +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"_emit_thunder" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"_on_text_finished" +}] +} +tracks/13/type = "value" +tracks/13/imported = false +tracks/13/enabled = true +tracks/13/path = NodePath("../../..:progress") +tracks/13/interp = 1 +tracks/13/loop_wrap = true +tracks/13/keys = { +"times": PackedFloat32Array(0.733333, 6.53333, 8.36667, 12.993, 14.7333, 21.3667, 22.8, 32.9333, 35.1667, 41.8461, 43.5, 47.0086, 48.6, 53.2, 54.7667, 64.6474, 66.5667, 72.5333, 74.6, 79.2373, 81, 87.943, 89.8, 94.643, 95.7, 101.345, 103, 104.867, 106.967, 110.867, 113.167, 116.149, 117.4, 118.821, 120.033, 125.029, 126.533, 130.992, 133.333, 141.633, 144.267, 147.767, 149.6, 154.5, 156.433, 161.767, 162.867, 163.933, 165.1, 166.967, 167.6, 169.382, 170.033, 172.833, 177.133, 180.167, 187.62, 188.933, 192.453, 193.433, 201.633), +"transitions": PackedFloat32Array(0.450625, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), +"update": 0, +"values": [0.0, 1.0, 1.0, 2.0, 2.0, 3.0, 3.0, 4.0, 4.0, 5.0, 5.0, 6.0, 6.0, 7.0, 7.0, 8.0, 8.0, 9.0, 9.0, 10.0, 10.0, 11.0, 11.0, 12.0, 12.0, 13.0, 13.0, 14.0, 14.0, 15.0, 15.0, 16.0, 16.0, 17.0, 17.0, 18.0, 18.0, 19.0, 19.0, 20.0, 20.0, 21.0, 21.0, 22.0, 22.0, 23.0, 23.0, 24.0, 24.0, 25.0, 25.0, 26.0, 26.0, 27.0, 28.0, 28.0, 29.0, 29.0, 30.0, 30.0, 31.0] +} +tracks/14/type = "value" +tracks/14/imported = false +tracks/14/enabled = true +tracks/14/path = NodePath(".:rotation") +tracks/14/interp = 1 +tracks/14/loop_wrap = true +tracks/14/keys = { +"times": PackedFloat32Array(0.214991, 1.03196), +"transitions": PackedFloat32Array(0.297302, 1), +"update": 0, +"values": [0.15708, 0.349066] +} + [sub_resource type="Animation" id="Animation_nmo1t"] resource_name = "en" length = 235.0 @@ -594,216 +804,6 @@ tracks/2/keys = { "values": [0.349066, 0.698132] } -[sub_resource type="Animation" id="Animation_bvh45"] -resource_name = "de" -length = 203.0 -tracks/0/type = "audio" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("%AnimationPlayer/Text") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"clips": [{ -"end_offset": 0.0, -"start_offset": 0.0, -"stream": ExtResource("11_uqngm") -}], -"times": PackedFloat32Array(2.73333) -} -tracks/0/use_blend = true -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("../../..:modulate") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0, 0.4), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] -} -tracks/2/type = "value" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("../../..:visible") -tracks/2/interp = 0 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": [true] -} -tracks/3/type = "audio" -tracks/3/imported = false -tracks/3/enabled = true -tracks/3/path = NodePath("%AnimationPlayer/Music") -tracks/3/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"clips": [{ -"end_offset": 0.0, -"start_offset": 0.0, -"stream": ExtResource("10_bvh45") -}], -"times": PackedFloat32Array(3) -} -tracks/3/use_blend = true -tracks/4/type = "value" -tracks/4/imported = false -tracks/4/enabled = true -tracks/4/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:emitting") -tracks/4/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"times": PackedFloat32Array(0, 5.8, 11.3, 18.2, 26.1, 34.4, 43.7, 53.2, 65.1, 75.7, 93), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), -"update": 1, -"values": [false, true, true, true, true, true, true, true, true, true, true] -} -tracks/5/type = "value" -tracks/5/imported = false -tracks/5/enabled = true -tracks/5/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:amount") -tracks/5/interp = 1 -tracks/5/loop_wrap = true -tracks/5/keys = { -"times": PackedFloat32Array(4, 11.1, 18, 25.9, 34.2, 43.5, 53, 65, 75.6, 92.1), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1), -"update": 1, -"values": [1, 10, 20, 40, 80, 180, 160, 320, 400, 500] -} -tracks/6/type = "value" -tracks/6/imported = false -tracks/6/enabled = true -tracks/6/path = NodePath("../../card/BackgroundSprite:noise_speed") -tracks/6/interp = 1 -tracks/6/loop_wrap = true -tracks/6/keys = { -"times": PackedFloat32Array(2, 129.7, 149.1, 167.15), -"transitions": PackedFloat32Array(0.482968, 1.86607, 1, 1), -"update": 0, -"values": [0.0, 10.0, 5.0, 10.0] -} -tracks/7/type = "value" -tracks/7/imported = false -tracks/7/enabled = true -tracks/7/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:one_shot") -tracks/7/interp = 1 -tracks/7/loop_wrap = true -tracks/7/keys = { -"times": PackedFloat32Array(0, 93), -"transitions": PackedFloat32Array(1, 1), -"update": 1, -"values": [true, false] -} -tracks/8/type = "value" -tracks/8/imported = false -tracks/8/enabled = true -tracks/8/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:lifetime") -tracks/8/interp = 1 -tracks/8/loop_wrap = true -tracks/8/keys = { -"times": PackedFloat32Array(93, 129.9, 136.6, 164.8), -"transitions": PackedFloat32Array(1, 0.31864, 2.21914, 1), -"update": 0, -"values": [5.0, 1.5, 4.0, 2.0] -} -tracks/9/type = "value" -tracks/9/imported = false -tracks/9/enabled = true -tracks/9/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:explosiveness") -tracks/9/interp = 1 -tracks/9/loop_wrap = true -tracks/9/keys = { -"times": PackedFloat32Array(96.3, 129.9, 136.6, 159.5, 176.7), -"transitions": PackedFloat32Array(1, 0.31864, 1, 0.406126, 1), -"update": 0, -"values": [0.29, 0.69, 0.74, 0.9, 0.2] -} -tracks/10/type = "value" -tracks/10/imported = false -tracks/10/enabled = true -tracks/10/path = NodePath("../../card/BackgroundSprite/GPUParticles2D:speed_scale") -tracks/10/interp = 1 -tracks/10/loop_wrap = true -tracks/10/keys = { -"times": PackedFloat32Array(105.6, 129.8, 150.5, 164.7), -"transitions": PackedFloat32Array(1, 0.466516, 1, 1), -"update": 0, -"values": [1.0, 1.9, 0.4, 1.0] -} -tracks/11/type = "value" -tracks/11/imported = false -tracks/11/enabled = true -tracks/11/path = NodePath("../../card/BackgroundSprite:noise_power") -tracks/11/interp = 1 -tracks/11/loop_wrap = true -tracks/11/keys = { -"times": PackedFloat32Array(8.4, 93.4, 129.7, 159.4, 169.4), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1), -"update": 0, -"values": [5.0, 2.0, 0.3, 0.3, 1.5] -} -tracks/12/type = "method" -tracks/12/imported = false -tracks/12/enabled = true -tracks/12/path = NodePath("../../..") -tracks/12/interp = 1 -tracks/12/loop_wrap = true -tracks/12/keys = { -"times": PackedFloat32Array(34.7667, 73, 105.467, 143.633, 163.167, 178.233, 202.067), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), -"values": [{ -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"_emit_thunder" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"_on_text_finished" -}] -} -tracks/13/type = "value" -tracks/13/imported = false -tracks/13/enabled = true -tracks/13/path = NodePath("../../..:progress") -tracks/13/interp = 1 -tracks/13/loop_wrap = true -tracks/13/keys = { -"times": PackedFloat32Array(0.733333, 6.53333, 8.36667, 12.993, 14.7333, 21.3667, 22.8, 32.9333, 35.1667, 41.8461, 43.5, 47.0086, 48.6, 53.2, 54.7667, 64.6474, 66.5667, 72.5333, 74.6, 79.2373, 81, 87.943, 89.8, 94.643, 95.7, 101.345, 103, 104.867, 106.967, 110.867, 113.167, 116.149, 117.4, 118.821, 120.033, 125.029, 126.533, 130.992, 133.333, 141.633, 144.267, 147.767, 149.6, 154.5, 156.433, 161.767, 162.867, 163.933, 165.1, 166.967, 167.6, 169.382, 170.033, 172.833, 177.133, 180.167, 187.62, 188.933, 192.453, 193.433, 201.633), -"transitions": PackedFloat32Array(0.450625, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), -"update": 0, -"values": [0.0, 1.0, 1.0, 2.0, 2.0, 3.0, 3.0, 4.0, 4.0, 5.0, 5.0, 6.0, 6.0, 7.0, 7.0, 8.0, 8.0, 9.0, 9.0, 10.0, 10.0, 11.0, 11.0, 12.0, 12.0, 13.0, 13.0, 14.0, 14.0, 15.0, 15.0, 16.0, 16.0, 17.0, 17.0, 18.0, 18.0, 19.0, 19.0, 20.0, 20.0, 21.0, 21.0, 22.0, 22.0, 23.0, 23.0, 24.0, 24.0, 25.0, 25.0, 26.0, 26.0, 27.0, 28.0, 28.0, 29.0, 29.0, 30.0, 30.0, 31.0] -} -tracks/14/type = "value" -tracks/14/imported = false -tracks/14/enabled = true -tracks/14/path = NodePath(".:rotation") -tracks/14/interp = 1 -tracks/14/loop_wrap = true -tracks/14/keys = { -"times": PackedFloat32Array(0.214991, 1.03196), -"transitions": PackedFloat32Array(0.297302, 1), -"update": 0, -"values": [0.15708, 0.349066] -} - [sub_resource type="AnimationLibrary" id="AnimationLibrary_dc6th"] _data = { &"RESET": SubResource("Animation_ytihj"), diff --git a/src/base-environments/youth_room/scnees/scene_player.gd b/src/base-environments/youth_room/scnees/scene_player.gd index 5bfd9764..a7d09f99 100644 --- a/src/base-environments/youth_room/scnees/scene_player.gd +++ b/src/base-environments/youth_room/scnees/scene_player.gd @@ -120,7 +120,7 @@ func play_scene(): animation_complete = false match State.speech_language: - 1: + 2: animation_player.queue("de") _: animation_player.queue("en") diff --git a/src/base-environments/youth_room/scnees/voice_training.tscn b/src/base-environments/youth_room/scnees/voice_training.tscn index 2c5b6118..096a0514 100644 --- a/src/base-environments/youth_room/scnees/voice_training.tscn +++ b/src/base-environments/youth_room/scnees/voice_training.tscn @@ -147,6 +147,171 @@ tracks/9/keys = { "values": [Vector3(-0.0872665, -2.08043, 0.171042)] } +[sub_resource type="Animation" id="Animation_ayw8a"] +resource_name = "de" +length = 86.0 +tracks/0/type = "audio" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("../../../AnimationPlayer/Text") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"clips": [{ +"end_offset": 1.36178, +"start_offset": 0.0, +"stream": ExtResource("8_kn83e") +}], +"times": PackedFloat32Array(1.16667) +} +tracks/0/use_blend = true +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("../../..:progress") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 1.66667, 4.73332, 6.03333, 11.6, 12.4, 15.8333, 16.4333, 18.9334, 19.6333, 24.5333, 25.6, 29, 30.3667, 36.1333, 39.4, 40.8, 42.2333, 44.6333, 45.2667, 47.0333, 49.2333, 53.4333, 54.6333, 57.1333, 57.8333, 61.1333, 63.2667, 66.5667, 67.5, 72.4597, 74.5, 77.2667, 78.4667, 85.2), +"transitions": PackedFloat32Array(1, 0.482968, 1, 0.482968, 1, 0.482968, 1, 0.482968, 1, 1.23114, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.287175, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968), +"update": 0, +"values": [0.0, 0.0, 1.0, 1.0, 2.0, 2.0, 3.0, 3.0, 4.0, 4.0, 5.0, 5.0, 6.0, 6.0, 7.0, 7.0, 8.0, 8.0, 9.0, 9.0, 10.0, 10.0, 11.0, 11.0, 12.0, 12.0, 13.0, 13.0, 14.0, 14.0, 15.0, 15.0, 16.0, 16.0, 17.0] +} +tracks/2/type = "method" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("../../..") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(24.8, 47.87, 61.7667, 74.0333, 85.2667), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1), +"values": [{ +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"try_scroll" +}, { +"args": [], +"method": &"_on_text_finished" +}] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("..:custom_minimum_size") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0, 0.7), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector2(900, 800), Vector2(900, 900)] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath(".:rotation") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0, 1.8), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0.174533, 0.349066] +} +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("../..:modulate") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0, 0.733333), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("../../..:visible") +tracks/6/interp = 0 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [true] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("../../..:modulate") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] +} +tracks/8/type = "value" +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook1:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"times": PackedFloat32Array(0.0497012, 1.46667), +"transitions": PackedFloat32Array(0.406126, 1), +"update": 0, +"values": [Vector3(-0.025, -0.211, 0.138), Vector3(-0.045, -0.111, 0.033)] +} +tracks/9/type = "value" +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook1:rotation") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"times": PackedFloat32Array(0, 1.46667), +"transitions": PackedFloat32Array(0.406126, 1), +"update": 0, +"values": [Vector3(0.280998, -2.77333, 0), Vector3(0.0855211, -1.65632, 0.0855211)] +} +tracks/10/type = "value" +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook2:position") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/keys = { +"times": PackedFloat32Array(0, 1.43333), +"transitions": PackedFloat32Array(0.353554, 1), +"update": 0, +"values": [Vector3(0.05, -0.21, -0.02), Vector3(0.02, -0.055, -0.02)] +} +tracks/11/type = "value" +tracks/11/imported = false +tracks/11/enabled = true +tracks/11/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook2:rotation") +tracks/11/interp = 1 +tracks/11/loop_wrap = true +tracks/11/keys = { +"times": PackedFloat32Array(0.0446739, 1.43333), +"transitions": PackedFloat32Array(0.353554, 1), +"update": 0, +"values": [Vector3(0.0349066, -2.51327, -0.00174533), Vector3(-0.0872665, -2.08043, 0.171042)] +} + [sub_resource type="Animation" id="Animation_7qabw"] resource_name = "en" length = 108.0 @@ -478,171 +643,6 @@ tracks/2/keys = { "values": [0.349066, 0.698132] } -[sub_resource type="Animation" id="Animation_ayw8a"] -resource_name = "de" -length = 86.0 -tracks/0/type = "audio" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("../../../AnimationPlayer/Text") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"clips": [{ -"end_offset": 1.36178, -"start_offset": 0.0, -"stream": ExtResource("8_kn83e") -}], -"times": PackedFloat32Array(1.16667) -} -tracks/0/use_blend = true -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("../../..:progress") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0, 1.66667, 4.73332, 6.03333, 11.6, 12.4, 15.8333, 16.4333, 18.9334, 19.6333, 24.5333, 25.6, 29, 30.3667, 36.1333, 39.4, 40.8, 42.2333, 44.6333, 45.2667, 47.0333, 49.2333, 53.4333, 54.6333, 57.1333, 57.8333, 61.1333, 63.2667, 66.5667, 67.5, 72.4597, 74.5, 77.2667, 78.4667, 85.2), -"transitions": PackedFloat32Array(1, 0.482968, 1, 0.482968, 1, 0.482968, 1, 0.482968, 1, 1.23114, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.287175, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968, 0.482968), -"update": 0, -"values": [0.0, 0.0, 1.0, 1.0, 2.0, 2.0, 3.0, 3.0, 4.0, 4.0, 5.0, 5.0, 6.0, 6.0, 7.0, 7.0, 8.0, 8.0, 9.0, 9.0, 10.0, 10.0, 11.0, 11.0, 12.0, 12.0, 13.0, 13.0, 14.0, 14.0, 15.0, 15.0, 16.0, 16.0, 17.0] -} -tracks/2/type = "method" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("../../..") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(24.8, 47.87, 61.7667, 74.0333, 85.2667), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1), -"values": [{ -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"try_scroll" -}, { -"args": [], -"method": &"_on_text_finished" -}] -} -tracks/3/type = "value" -tracks/3/imported = false -tracks/3/enabled = true -tracks/3/path = NodePath("..:custom_minimum_size") -tracks/3/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"times": PackedFloat32Array(0, 0.7), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Vector2(900, 800), Vector2(900, 900)] -} -tracks/4/type = "value" -tracks/4/imported = false -tracks/4/enabled = true -tracks/4/path = NodePath(".:rotation") -tracks/4/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"times": PackedFloat32Array(0, 1.8), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [0.174533, 0.349066] -} -tracks/5/type = "value" -tracks/5/imported = false -tracks/5/enabled = true -tracks/5/path = NodePath("../..:modulate") -tracks/5/interp = 1 -tracks/5/loop_wrap = true -tracks/5/keys = { -"times": PackedFloat32Array(0, 0.733333), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] -} -tracks/6/type = "value" -tracks/6/imported = false -tracks/6/enabled = true -tracks/6/path = NodePath("../../..:visible") -tracks/6/interp = 0 -tracks/6/loop_wrap = true -tracks/6/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [true] -} -tracks/7/type = "value" -tracks/7/imported = false -tracks/7/enabled = true -tracks/7/path = NodePath("../../..:modulate") -tracks/7/interp = 1 -tracks/7/loop_wrap = true -tracks/7/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Color(1, 1, 1, 1)] -} -tracks/8/type = "value" -tracks/8/imported = false -tracks/8/enabled = true -tracks/8/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook1:position") -tracks/8/interp = 1 -tracks/8/loop_wrap = true -tracks/8/keys = { -"times": PackedFloat32Array(0.0497012, 1.46667), -"transitions": PackedFloat32Array(0.406126, 1), -"update": 0, -"values": [Vector3(-0.025, -0.211, 0.138), Vector3(-0.045, -0.111, 0.033)] -} -tracks/9/type = "value" -tracks/9/imported = false -tracks/9/enabled = true -tracks/9/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook1:rotation") -tracks/9/interp = 1 -tracks/9/loop_wrap = true -tracks/9/keys = { -"times": PackedFloat32Array(0, 1.46667), -"transitions": PackedFloat32Array(0.406126, 1), -"update": 0, -"values": [Vector3(0.280998, -2.77333, 0), Vector3(0.0855211, -1.65632, 0.0855211)] -} -tracks/10/type = "value" -tracks/10/imported = false -tracks/10/enabled = true -tracks/10/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook2:position") -tracks/10/interp = 1 -tracks/10/loop_wrap = true -tracks/10/keys = { -"times": PackedFloat32Array(0, 1.43333), -"transitions": PackedFloat32Array(0.353554, 1), -"update": 0, -"values": [Vector3(0.05, -0.21, -0.02), Vector3(0.02, -0.055, -0.02)] -} -tracks/11/type = "value" -tracks/11/imported = false -tracks/11/enabled = true -tracks/11/path = NodePath("../TextureRect/SubViewport/Node3D/YouthSpecialMeshesComicBook2:rotation") -tracks/11/interp = 1 -tracks/11/loop_wrap = true -tracks/11/keys = { -"times": PackedFloat32Array(0.0446739, 1.43333), -"transitions": PackedFloat32Array(0.353554, 1), -"update": 0, -"values": [Vector3(0.0349066, -2.51327, -0.00174533), Vector3(-0.0872665, -2.08043, 0.171042)] -} - [sub_resource type="AnimationLibrary" id="AnimationLibrary_dc6th"] _data = { &"RESET": SubResource("Animation_ytihj"), diff --git a/src/demo-main.tscn b/src/demo-main.tscn index 5bc6a41a..f90d3faf 100644 --- a/src/demo-main.tscn +++ b/src/demo-main.tscn @@ -111,7 +111,7 @@ func _on_text_button_item_selected(index: int) -> void: State.text_language = 2 func _on_speech_button_item_selected(index: int) -> void: - State.speech_language = index + State.speech_language = index + 1 func _unhandled_input(event: InputEvent) -> void: if event is InputEvent and in_game: diff --git a/src/dev-util/hardcoded_cards.gd b/src/dev-util/hardcoded_cards.gd index 7d0bec63..c8248af2 100644 --- a/src/dev-util/hardcoded_cards.gd +++ b/src/dev-util/hardcoded_cards.gd @@ -7,9 +7,9 @@ static var source_dicts: Array[Dictionary] = [ "c_confusion": ["p_inner_conflict", "p_outer_conflict", []] }, { - "c_homework": ["p_good_grades", "p_upset_peers", []], + "c_homework": ["p_good_grades", "p_worried_mother", []], "c_teachers": ["p_volunteering", "p_becoming_teacher", []], - "c_joy": ["p_worried_mother", "p_thomas_gifted", []] + "c_gifted": ["p_upset_peers", "p_joy", []] }, { "c_comic_heroes": ["p_effort", "p_agent_q", []], diff --git a/src/dev-util/stereo-switch.gd b/src/dev-util/stereo-switch.gd index 546e2483..79baf1a0 100644 --- a/src/dev-util/stereo-switch.gd +++ b/src/dev-util/stereo-switch.gd @@ -1,11 +1,24 @@ class_name StereoSwitch extends AudioStreamPlayer +@export var alternate_streams: Dictionary[String, AudioStream] + +var default_stream: AudioStream func _ready() -> void: State.settings_changed.connect(update_mix_target) update_mix_target() + default_stream = stream func update_mix_target(): if State.force_stereo or true: mix_target = AudioStreamPlayer.MIX_TARGET_STEREO else: mix_target = AudioStreamPlayer.MIX_TARGET_CENTER + + +func play(from:float = 0.0) -> void: + match State.speech_language: + 1: stream = default_stream + 2: + if alternate_streams.keys().has("de"): + stream = alternate_streams["de"] + super.play(from) diff --git a/src/internationalisation.csv b/src/internationalisation.csv index 4457f5f2..90a558a0 100644 --- a/src/internationalisation.csv +++ b/src/internationalisation.csv @@ -168,16 +168,16 @@ p_upset_peers,my peers were upset about that.,meine Klasse war deswegen sauer.,, c_teachers,"I like my teachers more than my classmates, ","Ich komm mit meinen Lehrern besser klar, als mit meiner Klasse, ",,, p_volunteering,doing voluntary social service at my school would be great.,vielleicht sollte ich ein FSJ vor dem Studium machen.,,, p_becoming_teacher,Maybe I want to become a teacher.,vielleicht sollte ich Lehrerin werden.,,, -c_joy,"I can put ages into things I enjoy, ","Ich versinke in Dingen, die mir Freude machen,",,, +c_gifted,Mr Thomas said that I was gifted,Herr Thomas sagt ich sei hochbegabt,,, p_worried_mother,my mother would be worried about that.,meiner Mutter macht das Sorgen.,,, -p_thomas_gifted,Mr. Thomas thinks that makes me gifted.,Herr Thomas denkt das macht mich begabt.,,, +p_joy,"I can put ages into things I enjoy, ","Ich versinke schnell in Dingen, die mir Freude machen.",,, c_comic_heroes,"Comic heroes are my role models, ","Comic Helden sind meine Vorbilder,",,, p_effort,"when I put in the effort, I can make the world a better place!","wenn ich mich nur anstrenge, kann ich die Welt verbessern!",,, p_agent_q,and I want to be like Agent Q!,"Ich will so sein, wie Agent Q!",,, c_boy_stuff,"I like boy stuff, ","Ich mag Jungs Kram,",,, p_pretending,yet they think I'm just pretending.,aber die denken ich tu einfach nur so.,,, p_girls,and girls don't get that.,und Mädchen verstehen das einfach nicht!,,, -c_teasing,"When Jojo got bullied for trying, I pretty much exploded","Ich bin ausgerastet, weil Jojo für ihre Mühe gemobbt wurde,",,, +c_teasing,"When my friend got teased, I lashed out to defend them","Ich verteidige mit vollem Elan Freund*innen, die geärgert werden",,, p_stubborn,"I wouldn't have it any other way, even if it was for my own good.","das würde ich nicht aufgeben, selbst wenn es mir helfen würde.",,, p_good_intended,I will always stand up for the good intended!,"ich werde immer für Menschen einstehen, die das Richtige wollen!",,, c_jui_jutsu,"I stopped doing jiu-jitsu, ","Ich habe mit Jiu Jitsu aufgehört,",,, diff --git a/src/internationalisation.de.translation b/src/internationalisation.de.translation index 0659765d8af8d368d78c3c1128a1f821db568328..8dd5e9d74c53eefedc163aa974f7496377a856f5 100644 GIT binary patch delta 1836 zcmZ9MZAep57{||re;SidZVqu{Y5+FvYngY+RJL;}sqqC!;U-u@?_o5vma?e~BF=h>Yy*hL?|?&HHP zT!~|hB?BGDP8K=vI0EjnXwHH2DVLBd$dzyvaDh4?p6Q0qflHvBG38&`i9uZY;6BQO z(xTozUC4F7Ep=k2NuCwa&}o)0j1q3Az63H}V`z)$ML zBNwE+f~<(rWLo_XE#wIDMzYv3PJ+~>AUnVgsWbM3bI})q5>QS%PO`W^V#4=-oQjjM zoANnwD}0r57uiSdBZ~(a=Pq^k1MWtpc?|hA@c-)+GK?Gr$5IySDN7>#N_km&X zh`ML+TkxJ{@$hNnS(@kJKVTU!^ZM`COmmdf$5IySDS#(=&W4u8;+KF4zCO5BdjfZ% z7#g_xBlM+-+tiV;gCTrCHAns6{H?kW-5bQG)vlOKlQlgOzmIs|9*=*M$L8yKcg7XL zSSp&GsxvN#+p_1?H+iTMQQ19Z@wfRE&qDkw?(~c$^zz^8(ZqBfV|;pZe!Vv%oG}}g zZR$``V{}<@VyRZ~_}-?l;Jnlet;Z~f&D}@xf-8eGRukEz9T*>7>`skq*A6+BthE}` z_C24Ouxh6scDH%Um{wS{-F`lNtEE&c+MMQE?B4EiZ|hH=+56qH)R@Umo4uy3OxxSC f1=mw?nj^B!iuEO(zv$nv^y|w8msKswe46|hX5W}J delta 1821 zcmZvcTS!z<7=`y4$6H#GU7S>`bP_8ai=sqDDncwTr9{{u5h0ON3>5QF2A;CA6cOu~ zSV#()50No2B~gQ247=cy_#i!Wk+3K+kr0cR)7s8Dd6G7Ke(PWVo-^YGueB=|+ZAuU zq9zIuRzDqx% zpTcjLhv~Pp{IDO8$2gC})6BnVdB>szztLzob~dZB{`c6hNCs)Z0X75UMmBR1Tn5U) zL3Z*^r763SJ)qju$vbDwvnm^&I`hIP;b!(X;7)J{c-i&BFTfDz5qcE<0w%x@cJh(G zOj%g)^Ot29f^;+;OWSCxDN#~(203~1_?>K3>KV-r0{|JlYa5eJ< zx(RM!zCm}=-L!m=alGt$=k5Ha`8o0+7@F-=J?nN zXb)Ts&Vo92&2TGoCvAL)Zqw{V?gf5RC+`hl9%MHJkNn-Mx;~2G3zz^uxcCJ}gbJ}7 zB!XlhACv|=n6uy=%tf@kBTpIT3UJueA4PU^J_Xl;%PPJ!v21~Fg1exXogW?mgPi5V z-ywhE{1u)A)8IEdc}E^gSnxwf)3S?Y##ONjC^oGoyf77i$^!ox#JBsm+?CjcW03#1 zJP#fpa4!-f3A?qz_da~UqD1?;7widDZu_QVzAMUW-`L`g5apwxqEUcc*B** znZCZnGm8^Bcd>nzdF@5bA3~(R_ch0FGwg1?0ei3=fbTN zTVv1ll#KHY6**RCh<3@*mF}#vcKxg^wuIQPOp3tnuz>4Ox~}y53nOAr=$7Js|B{~> RVNPet_EuM^Z-3^Kq(5qGl?ng= diff --git a/src/internationalisation.en.translation b/src/internationalisation.en.translation index 21d234f5454bcaa3b4fe2a05604576b683cddbf9..f3bf43a091069f02d7aece779fc9b9be2d0e8284 100644 GIT binary patch delta 3539 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 S=NxYK*Y}KFO-+{H$^8$_y-C^t delta 1628 zcmZvcUr1A79EOi`YJ^0H#0rxTFQj02AtfRbqYEjKkOC8t2#J!|g$$|%9utv_5J?dc zl0o4`SPZNY|{k`9B$N2|eMV>{HgL!V5 z<2V)IajImKb5A(uu10emKCj#?x5^#36QU4P7svhZ7=|6k-TT60x=i3H7rXCAq2WhcPT-;{*} z<6^l)4$0=uKjl_eNe)A;)%knI4fKuB3|F+%CY$@~0e=5CRouaG<$iexk19{d33*C3 z5Ash^T`K2p)|%(Y3y|LHT>q_}w`eV8tZX(`HUE*f@Gb=N9p^BVg8!s)awUY-)yfU{ z0$kK=_Ak2(ZO{o_5Q82tmrrDq&3S6gRP#OD2ajA{hE$H?NtlL|x>-CA3!2Tte~^D_{)N|J6L!>@9diPO*$-VT zo32EeRp%7sg+_XcE}i60+2KEf^ZU*7=ow`*$KHOp_HgD~(SxHSw?kVq_m5ZS@9*~2 TcaLAScFzqKB;A=*+1=n@UCvRe diff --git a/src/internationalisation.ja.translation b/src/internationalisation.ja.translation index 386d210de891a745eb046931bb0d41c3b5ac451c..da5c2758a21104787eb0e9582206cddaff6d6e58 100644 GIT binary patch delta 1610 zcmZ9MK}b|l7)IZWI*O3YLc~O57SdvBAtDkYAtn-2lnZkq5km_JkuVn%l=RGnScrs$ zNK6t2B4HtpghYr7iE1&qkQN~l5+N2MArd0J&UL=0*ST=!eE)a<_f!Ua-uSw4=3&4s zbsVPxJWi!-a`uU4-BoF>#r4WDxm9k*ap;6@Fz-y@J{W)@$8itJ5e9Ra#1qO>@>}^m z{-C@pf0fO%tK@af8~Bg%U)k*ZQ!WTNP7!#XYwF{tn2QRigeX*jzfr4v0bhnzXjf-; z;#Te?cSFMJ%ucU8yQb0Uw=et>52+u;NtlFbb+dR8(wbM~HT(lMVOyPf<*t?Y$*w7b z!OUM+AQ#ESvf1%Znbk$eQK+#xf6us%z6oN`qMbI`++Pdw{ohb=6DO4Wu>`!Yc~6rT!uD?LkD!jT`-q}vdQKQTk})pXIA%u{0ipOE#M_c!z!#p=1oVR?r+LH zaB?%3g>o2|D4X?&m5(0xyi@dNvhJ#x&#F6zo3id>%q^MD^{(r(3n!o#`e6`;!Thi> zJgz(?`@h5+Yn~@Bz>?LOy)^TRx^MXV;l1m5n+)5q3;VhV=JB0E1yn*5%!{gUt#Sj7 zDYwXG$DB6iICNNj7r94sFCKs)myZ#ZV|W5);GMcf{27)to0qSXH#BeI9oPdWbo~1b zX%1U`iLzObK%o4|{rrn3_)p*%e$BnSbvpGk|6Vwh9RG6rfs?vYS{TTy-b#IPQ_UyO S=NxYK*Y}KFO-+{H$^8$_y-C^t delta 1628 zcmZvcUr1A79EOi`YJ^0H#0rxTFQj02AtfRbqYEjKkOC8t2#J!|g$$|%9utv_5J?dc zl0o4`SPZNY|{k`9B$N2|eMV>{HgL!V5 z<2V)IajImKb5A(uu10emKCj#?x5^#36QU4P7svhZ7=|6k-TT60x=i3H7rXCAq2WhcPT-;{*} z<6^l)4$0=uKjl_eNe)A;)%knI4fKuB3|F+%CY$@~0e=5CRouaG<$iexk19{d33*C3 z5Ash^T`K2p)|%(Y3y|LHT>q_}w`eV8tZX(`HUE*f@Gb=N9p^BVg8!s)awUY-)yfU{ z0$kK=_Ak2(ZO{o_5Q82tmrrDq&3S6gRP#OD2ajA{hE$H?NtlL|x>-CA3!2Tte~^D_{)N|J6L!>@9diPO*$-VT zo32EeRp%7sg+_XcE}i60+2KEf^ZU*7=ow`*$KHOp_HgD~(SxHSw?kVq_m5ZS@9*~2 TcaLAScFzqKB;A=*+1=n@UCvRe diff --git a/src/internationalisation.notes.translation b/src/internationalisation.notes.translation index fb9b876af714bd77926f592ef5c9743d1faa3926..8c0446e17114e86108fc7de2c269b4583984ce09 100644 GIT binary patch delta 1483 zcmZ9KPe>GT7=~wc{|p^uK{FFE57J@rAR-bXp&(0Gga`2;78WHU9<;+ALRj-45}Sk* zBC$w$2nh*sBP2vTNSFunARR&^q=QI^goubVJ>U8sh6Wy<_j`Yzzj0mXlgr74OekLF zI8G(_Jk{8H8!Gk|LgBQZP-`dl)M{?PP0DR@hunpGpdSXoelCSaU<@)~-K3nwv&wVw zr@T9Tf0^(_<(B+iwo7)%dz$z0ALUcocK#~6A;&2K`*@H25>h2pLjr2Sw(V(9zJ>2X z2Xv{k^PWKNCl5j@(Amx~v%M+ek1D18jCQ7Q7T&?Ux<$MSo0_-fUHl6U;7Fa_e-g;& z$^``%pTU)jt>)miDicY62&ATE~1t-A&y3-+3EzySn@G08YU$ zjKVlffZaEZXO!n;>+^rq4}oHdyaH>1&ek@Wx7Gc?KLh6ns3(UJ&WD;nq1f0j>Wxf%*~z0`r?u7%(tNp?}1zFJt{km e)E(x&uG^IBzFJ!t3VAOou6P5kn_I3JjQ#@*$F@xX delta 1475 zcmZ9KK}Zx~7=~xpU0p&%)M|^xLOe*s;z3FzBqc;jq$I+`B*H>Oq+kyr(OQU9h)5$6 z9>gF#gvEliM0p4a5!sV?kPZ%HfV<~ zb#~wF%l+g84EQ?R8DzFMg}q^=q&KFWNjwejA*C*jzr%{=HF+Ix!Zz%xv*#c9vJ=dG zd%j#Km&nnq-KJ2{@p4u6h)QxCYTbrV_78rio~apH;U?Hthiv&S`GMv>JfJ)zkK%FV zNqJhHv9}~sn$og8)y}+cULa>+#n;)+nr~kBWxLzb{8!$`M-a+$oMTW1tR-#ND`%*L zc&_wn<$8Ptu4=a3>*NmThF(a(Q?R=c*|MG2zWI&vl&^c2cgAr(QhZjqfR|tee!+(O zC|r7ehjav?Q0_HFav46YY_F>%+rL=SJ4dSa-Po<23+gW6#{ce{nOoI$%Dr*|55OP{ zs~f`;%F}Z0ElJOt@f9g@8s>eSEiN)=)UDt(-~Bpy6SiSj{Q-`I9p?nZpaSeURXDC( ziyM;~T4YmtIk=7y3Y!(xwDaoyIN2jPJH@$d)d7aDV^IY=qYylqWg1CPF3dx Vg6@ad$?(OO;nY(0HWPc8{}0aVyGH;3 diff --git a/src/logic-scenes/board/card-board.gd b/src/logic-scenes/board/card-board.gd index e418a941..5661a388 100644 --- a/src/logic-scenes/board/card-board.gd +++ b/src/logic-scenes/board/card-board.gd @@ -330,7 +330,7 @@ func give_lore_feedback(): if float(fitting_card_count) / float(total_card_count) < 0.2: instructions.text = "You can move on, but you may not have understood Lisa." if not unfitting: - if State.speech_language == 1: + if State.speech_language == 2: $AnimationPlayer.play("unfitting_de") else: $AnimationPlayer.play("unfitting") @@ -338,7 +338,7 @@ func give_lore_feedback(): elif fitting_card_count != total_card_count or total_card_count != dropzone.get_child_count() or sticky_note_container.get_child_count() != 0: instructions.text = TranslationServer.translate("You may leave the room, but Lisa only agrees with %d of the %d connections.") % [fitting_card_count, total_card_count] if not incomplete: - if State.speech_language == 1: + if State.speech_language == 2: $AnimationPlayer.play("incomplete_de") else: $AnimationPlayer.play("incomplete") @@ -346,7 +346,7 @@ func give_lore_feedback(): else: instructions.text = "Lisa would like you to leave her room and move on." if not complete: - if State.speech_language == 1: + if State.speech_language == 2: $AnimationPlayer.play("complete_de") else: $AnimationPlayer.play("complete") diff --git a/src/logic-scenes/board/physics-board.tscn b/src/logic-scenes/board/physics-board.tscn index a453c916..f7d236c7 100644 --- a/src/logic-scenes/board/physics-board.tscn +++ b/src/logic-scenes/board/physics-board.tscn @@ -1,13 +1,16 @@ -[gd_scene load_steps=21 format=3 uid="uid://bnskiyx1sksww"] +[gd_scene load_steps=24 format=3 uid="uid://bnskiyx1sksww"] [ext_resource type="Texture2D" uid="uid://bi3xqdknw5tpe" path="res://logic-scenes/board/board-texture/Cork002_2K_Color.png" id="1_8brxc"] [ext_resource type="Shader" uid="uid://kyd37e0s6fdu" path="res://logic-scenes/board/physics-board.gdshader" id="1_ggnth"] [ext_resource type="Script" uid="uid://cqsor57nvowni" path="res://logic-scenes/board/card-board.gd" id="3_8v4c4"] [ext_resource type="AudioStream" uid="uid://bywmf3patoe56" path="res://base-environments/youth_room/audio/board_completed.wav" id="5_qjqy3"] +[ext_resource type="AudioStream" uid="uid://bgtohhyd8whbm" path="res://base-environments/youth_room/audio/board_completed_de.wav" id="6_ni75f"] [ext_resource type="AudioStream" uid="uid://dj8fpajqhj4k7" path="res://base-environments/youth_room/audio/board_incomplete.wav" id="6_vtvtf"] [ext_resource type="Script" uid="uid://ddy8kb2hjvgss" path="res://logic-scenes/board/card collider.gd" id="6_wpxls"] [ext_resource type="AudioStream" uid="uid://brolrc3lhaeid" path="res://base-environments/youth_room/audio/board_unfitting.wav" id="7_0phgc"] +[ext_resource type="AudioStream" uid="uid://swlo6elqs4vx" path="res://base-environments/youth_room/audio/board_incomplete_de.wav" id="7_2qppy"] [ext_resource type="Script" uid="uid://c1oub0cs7cph6" path="res://dev-util/stereo-switch.gd" id="8_ni75f"] +[ext_resource type="AudioStream" uid="uid://y8fg3wjscvci" path="res://base-environments/youth_room/audio/board_unfitting_de.wav" id="10_kvxnu"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_ttqei"] shader = ExtResource("1_ggnth") @@ -44,8 +47,46 @@ tracks/0/keys = { } tracks/0/use_blend = true +[sub_resource type="Animation" id="Animation_vtvtf"] +resource_name = "complete_de" +length = 14.5 +tracks/0/type = "audio" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimationPlayer/LisaFeedback") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"clips": [{ +"end_offset": 0.0, +"start_offset": 0.0, +"stream": ExtResource("6_ni75f") +}], +"times": PackedFloat32Array(0.533333) +} +tracks/0/use_blend = true + [sub_resource type="Animation" id="Animation_kvxnu"] resource_name = "incomplete" +length = 11.0 +tracks/0/type = "audio" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimationPlayer/LisaFeedback") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"clips": [{ +"end_offset": 0.0, +"start_offset": 0.0, +"stream": ExtResource("7_2qppy") +}], +"times": PackedFloat32Array(0.533333) +} +tracks/0/use_blend = true + +[sub_resource type="Animation" id="Animation_0phgc"] +resource_name = "incomplete_de" length = 12.0 tracks/0/type = "audio" tracks/0/imported = false @@ -82,47 +123,9 @@ tracks/0/keys = { } tracks/0/use_blend = true -[sub_resource type="Animation" id="Animation_vtvtf"] -resource_name = "complete_de" -length = 14.5 -tracks/0/type = "audio" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("AnimationPlayer/LisaFeedback") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"clips": [{ -"end_offset": 0.0, -"start_offset": 0.42, -"stream": ExtResource("5_qjqy3") -}], -"times": PackedFloat32Array(0.1) -} -tracks/0/use_blend = true - -[sub_resource type="Animation" id="Animation_0phgc"] -resource_name = "incomplete_de" -length = 12.0 -tracks/0/type = "audio" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("AnimationPlayer/LisaFeedback") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"clips": [{ -"end_offset": 0.0, -"start_offset": 0.36, -"stream": ExtResource("6_vtvtf") -}], -"times": PackedFloat32Array(0.1) -} -tracks/0/use_blend = true - [sub_resource type="Animation" id="Animation_ni75f"] resource_name = "unfitting_de" -length = 9.0 +length = 8.0 tracks/0/type = "audio" tracks/0/imported = false tracks/0/enabled = true @@ -131,11 +134,11 @@ tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "clips": [{ -"end_offset": 1.06, -"start_offset": 0.59, -"stream": ExtResource("7_0phgc") +"end_offset": 0.0, +"start_offset": 0.0, +"stream": ExtResource("10_kvxnu") }], -"times": PackedFloat32Array(0.333333) +"times": PackedFloat32Array(0.133333) } tracks/0/use_blend = true diff --git a/src/logic-scenes/card_picker/card_picker.gd b/src/logic-scenes/card_picker/card_picker.gd index 32d77317..f700dd48 100644 --- a/src/logic-scenes/card_picker/card_picker.gd +++ b/src/logic-scenes/card_picker/card_picker.gd @@ -131,7 +131,6 @@ func _input(event): pick(curr_selection_id) elif event.is_action_pressed("skip"): $Meaning.stop() - $Bedeutung.stop() if selection_state == CARDS_SELECTED: picked_player.play("skip_pick", .1) random_player.play("skip_shuffle", .1) @@ -254,10 +253,7 @@ func pick_cards(id: int, repeat: bool): #State.transition_stage_to(self, true) selection_state = CARDS if id == Scenes.id.YOUTH_DRAEVEN and not repeat: - if State.speech_language == 1: - $Bedeutung.play() - else: - $Meaning.play() + $Meaning.play() else: Scenes.end_current_sequence() diff --git a/src/logic-scenes/card_picker/card_picker.tscn b/src/logic-scenes/card_picker/card_picker.tscn index c59158fd..b1f0cd69 100644 --- a/src/logic-scenes/card_picker/card_picker.tscn +++ b/src/logic-scenes/card_picker/card_picker.tscn @@ -1,10 +1,11 @@ -[gd_scene load_steps=72 format=3 uid="uid://brk4hjdf2x81a"] +[gd_scene load_steps=73 format=3 uid="uid://brk4hjdf2x81a"] [ext_resource type="Script" uid="uid://bdb6n10apk1en" path="res://logic-scenes/card_picker/card_picker.gd" id="1_pjntm"] [ext_resource type="Script" uid="uid://2loic2eeec5b" path="res://logic-scenes/board/card.gd" id="2_f4sp4"] [ext_resource type="Script" uid="uid://r12efqgk6t4n" path="res://logic-scenes/board/sticky-note.gd" id="3_f4sp4"] [ext_resource type="AudioStream" uid="uid://bakwypwhs7a5n" path="res://base-environments/youth_room/audio/why-does-it-mean.wav" id="4_ujc5a"] [ext_resource type="Script" uid="uid://c1oub0cs7cph6" path="res://dev-util/stereo-switch.gd" id="5_et74x"] +[ext_resource type="AudioStream" uid="uid://tbx31bdlhbtr" path="res://base-environments/youth_room/audio/why-does-it-mean_de.wav" id="6_et74x"] [sub_resource type="Animation" id="Animation_dinvx"] length = 0.001 @@ -1911,9 +1912,6 @@ stream = ExtResource("4_ujc5a") mix_target = 2 bus = &"text" script = ExtResource("5_et74x") - -[node name="Bedeutung" type="AudioStreamPlayer" parent="."] -stream = ExtResource("4_ujc5a") -mix_target = 2 -bus = &"text" -script = ExtResource("5_et74x") +alternate_streams = Dictionary[String, AudioStream]({ +"de": ExtResource("6_et74x") +})