diff --git a/client/.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.md5 b/client/.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.md5 new file mode 100644 index 0000000..a3c3259 --- /dev/null +++ b/client/.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.md5 @@ -0,0 +1,3 @@ +source_md5="9f3599f4ed5f050bd5c7966b39434aeb" +dest_md5="d8b8d051422c7cd9a641096cbf8c2f89" + diff --git a/client/.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.stex b/client/.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.stex new file mode 100644 index 0000000..dff60d4 Binary files /dev/null and b/client/.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.stex differ diff --git a/client/.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.md5 b/client/.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.md5 new file mode 100644 index 0000000..6800538 --- /dev/null +++ b/client/.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.md5 @@ -0,0 +1,3 @@ +source_md5="6940d8b74a5d117d0f1394bc85a70f08" +dest_md5="26b29806d463d634a6663c71a6300823" + diff --git a/client/.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.sample b/client/.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.sample new file mode 100644 index 0000000..7b3ea12 Binary files /dev/null and b/client/.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.sample differ diff --git a/client/.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.md5 b/client/.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.md5 new file mode 100644 index 0000000..8b66dce --- /dev/null +++ b/client/.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.md5 @@ -0,0 +1,3 @@ +source_md5="e857b8bb76d4617adc95c76a5fb540c2" +dest_md5="27ac0f89acdd7606843ba589e23aa7f4" + diff --git a/client/.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.stex b/client/.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.stex new file mode 100644 index 0000000..85780e1 Binary files /dev/null and b/client/.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.stex differ diff --git a/client/.import/door.png-e04cdcd8fd750f3408b18042a792b164.md5 b/client/.import/door.png-e04cdcd8fd750f3408b18042a792b164.md5 new file mode 100644 index 0000000..ec2dfa7 --- /dev/null +++ b/client/.import/door.png-e04cdcd8fd750f3408b18042a792b164.md5 @@ -0,0 +1,3 @@ +source_md5="9f8274a56b9edd5fe16c5dcae157c341" +dest_md5="723b7c3af22143822b4ea69f4a5e464d" + diff --git a/client/.import/door.png-e04cdcd8fd750f3408b18042a792b164.stex b/client/.import/door.png-e04cdcd8fd750f3408b18042a792b164.stex new file mode 100644 index 0000000..1a09aa2 Binary files /dev/null and b/client/.import/door.png-e04cdcd8fd750f3408b18042a792b164.stex differ diff --git a/client/.import/door.wav-70d1c6c21053f788540da37913f73e07.md5 b/client/.import/door.wav-70d1c6c21053f788540da37913f73e07.md5 new file mode 100644 index 0000000..6d6ea8b --- /dev/null +++ b/client/.import/door.wav-70d1c6c21053f788540da37913f73e07.md5 @@ -0,0 +1,3 @@ +source_md5="92d246cc32866075f51865b0c9e4b50d" +dest_md5="9d219f887655916bb7f150706addfff2" + diff --git a/client/.import/door.wav-70d1c6c21053f788540da37913f73e07.sample b/client/.import/door.wav-70d1c6c21053f788540da37913f73e07.sample new file mode 100644 index 0000000..84dec1f Binary files /dev/null and b/client/.import/door.wav-70d1c6c21053f788540da37913f73e07.sample differ diff --git a/client/.import/fast_talker.wav-815bea77f740c5942d549f691957e082.md5 b/client/.import/fast_talker.wav-815bea77f740c5942d549f691957e082.md5 new file mode 100644 index 0000000..097c4e9 --- /dev/null +++ b/client/.import/fast_talker.wav-815bea77f740c5942d549f691957e082.md5 @@ -0,0 +1,3 @@ +source_md5="5b41ef10ccf43be3d97758534e00a060" +dest_md5="0caff325d8ab4f8082321efcb4d4b513" + diff --git a/client/.import/fast_talker.wav-815bea77f740c5942d549f691957e082.sample b/client/.import/fast_talker.wav-815bea77f740c5942d549f691957e082.sample new file mode 100644 index 0000000..2e18536 Binary files /dev/null and b/client/.import/fast_talker.wav-815bea77f740c5942d549f691957e082.sample differ diff --git a/client/.import/robot.wav-e505041745c56f152980013cf06aa1d6.md5 b/client/.import/robot.wav-e505041745c56f152980013cf06aa1d6.md5 new file mode 100644 index 0000000..5bdc50a --- /dev/null +++ b/client/.import/robot.wav-e505041745c56f152980013cf06aa1d6.md5 @@ -0,0 +1,3 @@ +source_md5="2f7965f6ed7cfc058782a0ace48244d8" +dest_md5="d5e78494fde1ccac9d6172b3e6af34e1" + diff --git a/client/.import/robot.wav-e505041745c56f152980013cf06aa1d6.sample b/client/.import/robot.wav-e505041745c56f152980013cf06aa1d6.sample new file mode 100644 index 0000000..9787415 Binary files /dev/null and b/client/.import/robot.wav-e505041745c56f152980013cf06aa1d6.sample differ diff --git a/client/.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.md5 b/client/.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.md5 new file mode 100644 index 0000000..042120d --- /dev/null +++ b/client/.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.md5 @@ -0,0 +1,3 @@ +source_md5="1fc89dcdb28dde7f2c550bc7fb764a9a" +dest_md5="43cd0d2da5e6d2246e38223d967eaef9" + diff --git a/client/.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.stex b/client/.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.stex new file mode 100644 index 0000000..2c69d96 Binary files /dev/null and b/client/.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.stex differ diff --git a/client/.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.md5 b/client/.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.md5 new file mode 100644 index 0000000..5be1c02 --- /dev/null +++ b/client/.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.md5 @@ -0,0 +1,3 @@ +source_md5="a44cdfde3fe6df51cb14453b6f8b1544" +dest_md5="a9ee1a40eb796495a96862aa22a8c4c9" + diff --git a/client/.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.stex b/client/.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.stex new file mode 100644 index 0000000..0708d7b Binary files /dev/null and b/client/.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.stex differ diff --git a/client/Assets/Art/32x32mask.png b/client/Assets/Art/32x32mask.png new file mode 100644 index 0000000..5b8f97e Binary files /dev/null and b/client/Assets/Art/32x32mask.png differ diff --git a/client/Assets/Art/32x32mask.png.import b/client/Assets/Art/32x32mask.png.import new file mode 100644 index 0000000..e6c2272 --- /dev/null +++ b/client/Assets/Art/32x32mask.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Art/32x32mask.png" +dest_files=[ "res://.import/32x32mask.png-be04be029e61a03cd171da2b42b2f742.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/client/Assets/Art/Characters/worker.aseprite b/client/Assets/Art/Characters/worker.aseprite new file mode 100644 index 0000000..13f7fd2 Binary files /dev/null and b/client/Assets/Art/Characters/worker.aseprite differ diff --git a/client/Assets/Art/Characters/worker.png b/client/Assets/Art/Characters/worker.png new file mode 100644 index 0000000..92b495b Binary files /dev/null and b/client/Assets/Art/Characters/worker.png differ diff --git a/client/Assets/Art/Characters/worker.png.import b/client/Assets/Art/Characters/worker.png.import new file mode 100644 index 0000000..0476f75 --- /dev/null +++ b/client/Assets/Art/Characters/worker.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Art/Characters/worker.png" +dest_files=[ "res://.import/worker.png-a978fbc5cdb9016e5df7bd0462241682.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/client/Assets/Art/Objects/datapad.aseprite b/client/Assets/Art/Objects/datapad.aseprite new file mode 100644 index 0000000..bd498bc Binary files /dev/null and b/client/Assets/Art/Objects/datapad.aseprite differ diff --git a/client/Assets/Art/Objects/datapad.png b/client/Assets/Art/Objects/datapad.png new file mode 100644 index 0000000..a298d6d Binary files /dev/null and b/client/Assets/Art/Objects/datapad.png differ diff --git a/client/Assets/Art/Objects/datapad.png.import b/client/Assets/Art/Objects/datapad.png.import new file mode 100644 index 0000000..f0a47ef --- /dev/null +++ b/client/Assets/Art/Objects/datapad.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Art/Objects/datapad.png" +dest_files=[ "res://.import/datapad.png-4bbf160a5e12d834f3ab9e5a5ae04fe4.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/client/Assets/Art/Objects/door.aseprite b/client/Assets/Art/Objects/door.aseprite new file mode 100644 index 0000000..932d189 Binary files /dev/null and b/client/Assets/Art/Objects/door.aseprite differ diff --git a/client/Assets/Art/Objects/door.png b/client/Assets/Art/Objects/door.png new file mode 100644 index 0000000..4ea81f9 Binary files /dev/null and b/client/Assets/Art/Objects/door.png differ diff --git a/client/Assets/Art/Objects/door.png.import b/client/Assets/Art/Objects/door.png.import new file mode 100644 index 0000000..46f1c04 --- /dev/null +++ b/client/Assets/Art/Objects/door.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/door.png-e04cdcd8fd750f3408b18042a792b164.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Art/Objects/door.png" +dest_files=[ "res://.import/door.png-e04cdcd8fd750f3408b18042a792b164.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/client/Assets/Art/Objects/table.aseprite b/client/Assets/Art/Objects/table.aseprite new file mode 100644 index 0000000..2accaa1 Binary files /dev/null and b/client/Assets/Art/Objects/table.aseprite differ diff --git a/client/Assets/Art/Objects/table.png b/client/Assets/Art/Objects/table.png new file mode 100644 index 0000000..85b5b3a Binary files /dev/null and b/client/Assets/Art/Objects/table.png differ diff --git a/client/Assets/Art/Objects/table.png.import b/client/Assets/Art/Objects/table.png.import new file mode 100644 index 0000000..590b8ff --- /dev/null +++ b/client/Assets/Art/Objects/table.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/Art/Objects/table.png" +dest_files=[ "res://.import/table.png-1c6f2619a22fe5d0e462e196536f39b0.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/client/Assets/Sfx/Speakers/ceo.wav b/client/Assets/Sfx/Speakers/ceo.wav new file mode 100644 index 0000000..0f2ecc7 Binary files /dev/null and b/client/Assets/Sfx/Speakers/ceo.wav differ diff --git a/client/Assets/Sfx/Speakers/ceo.wav.import b/client/Assets/Sfx/Speakers/ceo.wav.import new file mode 100644 index 0000000..625eb9d --- /dev/null +++ b/client/Assets/Sfx/Speakers/ceo.wav.import @@ -0,0 +1,21 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.sample" + +[deps] + +source_file="res://Assets/Sfx/Speakers/ceo.wav" +dest_files=[ "res://.import/ceo.wav-aab08c0f38fc04ff530aa8c0850ff092.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=false +compress/mode=0 diff --git a/client/Assets/Sfx/Speakers/fast_talker.wav b/client/Assets/Sfx/Speakers/fast_talker.wav new file mode 100644 index 0000000..50ff59b Binary files /dev/null and b/client/Assets/Sfx/Speakers/fast_talker.wav differ diff --git a/client/Assets/Sfx/Speakers/fast_talker.wav.import b/client/Assets/Sfx/Speakers/fast_talker.wav.import new file mode 100644 index 0000000..6ba3313 --- /dev/null +++ b/client/Assets/Sfx/Speakers/fast_talker.wav.import @@ -0,0 +1,21 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/fast_talker.wav-815bea77f740c5942d549f691957e082.sample" + +[deps] + +source_file="res://Assets/Sfx/Speakers/fast_talker.wav" +dest_files=[ "res://.import/fast_talker.wav-815bea77f740c5942d549f691957e082.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=false +compress/mode=0 diff --git a/client/Assets/Sfx/Speakers/robot.wav b/client/Assets/Sfx/Speakers/robot.wav new file mode 100644 index 0000000..f32b1eb Binary files /dev/null and b/client/Assets/Sfx/Speakers/robot.wav differ diff --git a/client/Assets/Sfx/Speakers/robot.wav.import b/client/Assets/Sfx/Speakers/robot.wav.import new file mode 100644 index 0000000..1d669e2 --- /dev/null +++ b/client/Assets/Sfx/Speakers/robot.wav.import @@ -0,0 +1,21 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/robot.wav-e505041745c56f152980013cf06aa1d6.sample" + +[deps] + +source_file="res://Assets/Sfx/Speakers/robot.wav" +dest_files=[ "res://.import/robot.wav-e505041745c56f152980013cf06aa1d6.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=false +compress/mode=0 diff --git a/client/Assets/Sfx/door.wav b/client/Assets/Sfx/door.wav new file mode 100644 index 0000000..6d65de0 Binary files /dev/null and b/client/Assets/Sfx/door.wav differ diff --git a/client/Assets/Sfx/door.wav.import b/client/Assets/Sfx/door.wav.import new file mode 100644 index 0000000..e841ec4 --- /dev/null +++ b/client/Assets/Sfx/door.wav.import @@ -0,0 +1,21 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/door.wav-70d1c6c21053f788540da37913f73e07.sample" + +[deps] + +source_file="res://Assets/Sfx/door.wav" +dest_files=[ "res://.import/door.wav-70d1c6c21053f788540da37913f73e07.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=false +compress/mode=0 diff --git a/client/Assets/Stories/english_story.tres b/client/Assets/Stories/english_story.tres index 0a9ba39..fc26e90 100644 --- a/client/Assets/Stories/english_story.tres +++ b/client/Assets/Stories/english_story.tres @@ -7,11 +7,16 @@ script = ExtResource( 1 ) TYPE = "EXP_Story_editor" names = { "into_speak_ceo": 5, +"intro_major_worker": 11, "intro_meet_ceo": 4, +"intro_misc_worker_1": 9, +"intro_misc_worker_2": 10, "intro_science": 1, "intro_science_followup": 3, +"intro_shipping_codex": 8, "intro_text": 2, -"intro_transportship": 6 +"intro_transportship": 6, +"unconfigured": 7 } story = { 1: { @@ -152,7 +157,7 @@ and killing this individual. }, "rect_size": Vector2( 324, 137 ), "slot_amount": 1, -"text": "Good. You have been given Level 3 security clearance +"text": "Good. You have been given Level 1 security clearance in Ravenwork facilities.", "type": "line" }, @@ -691,6 +696,226 @@ suppose to be carrying the biological shipment?", "type": "line" } } +}, +7: { +"available_nid": [ ], +"groups": [ ], +"human_readable_description": "Default interaction for dialog interaction", +"name": "unconfigured", +"nodes": { +1: { +"graph_offset": Vector2( 200, 20 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "This is an object.", +"type": "line" +} +} +}, +8: { +"available_nid": [ 2 ], +"groups": [ "Introduction" ], +"human_readable_description": "Messages related to biological materials", +"name": "intro_shipping_codex", +"nodes": { +1: { +"graph_offset": Vector2( 40, 40 ), +"links": { + +}, +"rect_size": Vector2( 448, 170 ), +"slot_amount": 1, +"text": "Cargo load: +Organic Matter - MISSING +Stem Cells - MISSING +Cubic Carbon - MISSING", +"type": "line" +} +} +}, +9: { +"available_nid": [ ], +"groups": [ "Introduction" ], +"human_readable_description": "Misc worker talk", +"name": "intro_misc_worker_1", +"nodes": { +1: { +"graph_offset": Vector2( 40, 40 ), +"links": { +0: 2 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "How are we missing another shipment?", +"type": "line" +}, +2: { +"graph_offset": Vector2( 340, -280 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "I hope the supervisor doesn't replace us.", +"type": "line" +} +} +}, +10: { +"available_nid": [ ], +"groups": [ "Introduction" ], +"human_readable_description": "Misc worker talk", +"name": "intro_misc_worker_2", +"nodes": { +1: { +"graph_offset": Vector2( 40, 40 ), +"links": { +0: 3, +1: 2, +2: 4 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 3, +"text": "Hey Aura! How have you been? +Aura? +You know me? +I am Scene.", +"type": "line" +}, +2: { +"graph_offset": Vector2( 440, -200 ), +"links": { +0: 5, +1: 3 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 2, +"text": "Yeah, we met a few days ago. +Weird +No?", +"type": "line" +}, +3: { +"graph_offset": Vector2( 440, -360 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "Oh... nevermind.", +"type": "line" +}, +4: { +"graph_offset": Vector2( 440, 0 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "Oh, sorry Scene.", +"type": "line" +}, +5: { +"graph_offset": Vector2( 920, -200 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "Yeah, we don't see many faces like yours around here.", +"type": "line" +} +} +}, +11: { +"available_nid": [ ], +"groups": [ "Introduction" ], +"human_readable_description": "Work who drove spacecraft", +"name": "intro_major_worker", +"nodes": { +1: { +"graph_offset": Vector2( 40, -180 ), +"links": { +0: 2, +1: 4 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 2, +"text": "I can't believe we got rerouted. +Rerouted? +What happened to the cargo?", +"type": "line" +}, +2: { +"graph_offset": Vector2( 540, -220 ), +"links": { +0: 3 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "During the flight over here, the navigation computer redirected to +the lower levels.", +"type": "line" +}, +3: { +"graph_offset": Vector2( 1020, -220 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "When I got there, Ravenworks workers unloaded the craft.", +"type": "line" +}, +4: { +"graph_offset": Vector2( 540, -40 ), +"links": { +0: 5, +1: 7 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 2, +"text": "Are you looking for it? +Yes +No", +"type": "line" +}, +5: { +"graph_offset": Vector2( 1020, -40 ), +"links": { +0: 6 +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "I lost the cargo after my stop at the lower levels. I was just +following the navigation computer and it was taken by +Ravenwork staff!", +"type": "line" +}, +6: { +"graph_offset": Vector2( 1500, -40 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "Please do not terminate me!", +"type": "line" +}, +7: { +"graph_offset": Vector2( 1020, 140 ), +"links": { + +}, +"rect_size": Vector2( 324, 137 ), +"slot_amount": 1, +"text": "Oh, well it was unloaded by Ravenwork staff at the lower level.", +"type": "line" +} +} } } available_dids = [ ] diff --git a/client/Nodes/Door.tscn b/client/Nodes/Door.tscn new file mode 100644 index 0000000..6f36b0f --- /dev/null +++ b/client/Nodes/Door.tscn @@ -0,0 +1,200 @@ +[gd_scene load_steps=14 format=2] + +[ext_resource path="res://Assets/Art/Objects/door.png" type="Texture" id=1] +[ext_resource path="res://Assets/Sfx/door.wav" type="AudioStream" id=2] +[ext_resource path="res://Scripts/Entities/Door.gd" type="Script" id=3] +[ext_resource path="res://Assets/Art/32x32mask.png" type="Texture" id=5] + +[sub_resource type="RectangleShape2D" id=7] +extents = Vector2( 16.0007, 15.9043 ) + +[sub_resource type="AtlasTexture" id=1] +atlas = ExtResource( 1 ) +region = Rect2( 0, 0, 32, 32 ) + +[sub_resource type="OccluderPolygon2D" id=8] +polygon = PoolVector2Array( -5, 18, -5, 0, -2, 0, -2, 4, 2, 4, 2, 0, 5, 0, 5, 18 ) + +[sub_resource type="AtlasTexture" id=2] +atlas = ExtResource( 1 ) +region = Rect2( 0, 32, 32, 32 ) + +[sub_resource type="AtlasTexture" id=3] +atlas = ExtResource( 1 ) +region = Rect2( 0, 64, 32, 32 ) + +[sub_resource type="OccluderPolygon2D" id=9] +polygon = PoolVector2Array( 5, -18, 5, 0, -5, 0, -5, -18 ) + +[sub_resource type="Animation" id=5] +resource_name = "Close" +length = 0.5 +tracks/0/type = "bezier" +tracks/0/path = NodePath("Top:position:x") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/1/type = "bezier" +tracks/1/path = NodePath("Top:position:y") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"points": PoolRealArray( -32, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/2/type = "bezier" +tracks/2/path = NodePath("Top:rotation_degrees") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/3/type = "bezier" +tracks/3/path = NodePath("Bottom:position:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/4/type = "bezier" +tracks/4/path = NodePath("Bottom:position:y") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"points": PoolRealArray( 32, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/5/type = "bezier" +tracks/5/path = NodePath("Bottom:rotation_degrees") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} + +[sub_resource type="Animation" id=4] +resource_name = "Open" +length = 0.5 +tracks/0/type = "bezier" +tracks/0/path = NodePath("Bottom:position:x") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/1/type = "bezier" +tracks/1/path = NodePath("Bottom:position:y") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 32, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/2/type = "bezier" +tracks/2/path = NodePath("Bottom:rotation_degrees") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/3/type = "bezier" +tracks/3/path = NodePath("Top:position:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/4/type = "bezier" +tracks/4/path = NodePath("Top:position:y") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, -32, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} +tracks/5/type = "bezier" +tracks/5/path = NodePath("Top:rotation_degrees") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"points": PoolRealArray( 0, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0 ), +"times": PoolRealArray( 0, 0.5 ) +} + +[sub_resource type="RectangleShape2D" id=6] +extents = Vector2( 40.2987, 16.0621 ) + +[node name="Door" type="Area2D"] +script = ExtResource( 3 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] +shape = SubResource( 7 ) + +[node name="Bottom" type="Sprite" parent="."] +z_index = 25 +texture = SubResource( 1 ) + +[node name="LightOccluder2D" type="LightOccluder2D" parent="Bottom"] +occluder = SubResource( 8 ) + +[node name="Top" type="Sprite" parent="."] +z_index = 25 +texture = SubResource( 2 ) + +[node name="Color" type="Sprite" parent="Top"] +texture = SubResource( 3 ) + +[node name="LightOccluder2D" type="LightOccluder2D" parent="Top"] +occluder = SubResource( 9 ) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +anims/Close = SubResource( 5 ) +anims/Open = SubResource( 4 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource( 6 ) + +[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource( 2 ) +bus = "Sfx" + +[node name="Mask" type="Light2D" parent="."] +enabled = false +texture = ExtResource( 5 ) +mode = 3 +range_item_cull_mask = 2 diff --git a/client/Nodes/NPCs/Thadd.tscn b/client/Nodes/NPCs/Thadd.tscn index 17317be..1e3e5d7 100644 --- a/client/Nodes/NPCs/Thadd.tscn +++ b/client/Nodes/NPCs/Thadd.tscn @@ -4,8 +4,8 @@ [ext_resource path="res://Scripts/Component/StorySpeaker.gd" type="Script" id=2] [ext_resource path="res://Assets/Art/Characters/scientist.png" type="Texture" id=3] -[sub_resource type="RectangleShape2D" id=3] -extents = Vector2( 5, 8 ) +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 14.1446, 9.58948 ) [node name="Scientist" type="Area2D"] position = Vector2( 167.084, 231.933 ) @@ -15,7 +15,7 @@ script = ExtResource( 1 ) texture = ExtResource( 3 ) [node name="CollisionShape2D" type="CollisionShape2D" parent="."] -shape = SubResource( 3 ) +shape = SubResource( 1 ) [node name="Speaker" type="Node" parent="."] script = ExtResource( 2 ) diff --git a/client/Nodes/Player.tscn b/client/Nodes/Player.tscn index fc584cd..879d91b 100644 --- a/client/Nodes/Player.tscn +++ b/client/Nodes/Player.tscn @@ -2,7 +2,7 @@ [ext_resource path="res://Assets/Materials/SmoothScaling.tres" type="Material" id=1] [ext_resource path="res://Assets/Art/Characters/player_parts.png" type="Texture" id=2] -[ext_resource path="res://animation_reference.png" type="Texture" id=3] +[ext_resource path="res://Assets/Art/basic_light.png" type="Texture" id=3] [ext_resource path="res://Scripts/Entities/Player.gd" type="Script" id=4] [sub_resource type="AtlasTexture" id=1] @@ -870,13 +870,9 @@ anims/Idle = SubResource( 17 ) anims/RunLeft = SubResource( 18 ) anims/RunRight = SubResource( 19 ) -[node name="Sprite" type="Sprite" parent="."] -visible = false -modulate = Color( 1, 1, 1, 0.423529 ) -position = Vector2( -28.5601, 3.4707 ) -scale = Vector2( 0.055, 0.055 ) -texture = ExtResource( 3 ) -flip_h = true - [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource( 20 ) + +[node name="Light2D" type="Light2D" parent="."] +texture = ExtResource( 3 ) +energy = 0.25 diff --git a/client/Nodes/Wall Light.tscn b/client/Nodes/Wall Light.tscn index 0951596..1ad3f75 100644 --- a/client/Nodes/Wall Light.tscn +++ b/client/Nodes/Wall Light.tscn @@ -1,15 +1,28 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=6 format=2] [ext_resource path="res://Assets/Art/basic_light.png" type="Texture" id=1] [ext_resource path="res://Assets/Art/Objects/wall_light.png" type="Texture" id=2] +[ext_resource path="res://Scripts/Component/LightLoader.gd" type="Script" id=3] +[ext_resource path="res://Scripts/Entities/Wall Light.gd" type="Script" id=4] + +[sub_resource type="CircleShape2D" id=1] +radius = 200.0 [node name="Wall Light" type="Sprite"] texture = ExtResource( 2 ) +script = ExtResource( 4 ) [node name="Light2D" type="Light2D" parent="."] +visible = false texture = ExtResource( 1 ) texture_scale = 3.0 energy = 1.1 -shadow_enabled = true -shadow_filter = 5 shadow_filter_smooth = 0.5 +shadow_item_cull_mask = 3 + +[node name="Area2D" type="Area2D" parent="."] +script = ExtResource( 3 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] +visible = false +shape = SubResource( 1 ) diff --git a/client/Scenes/Title.scn b/client/Scenes/Title.scn index 978a6e0..11d38bc 100644 Binary files a/client/Scenes/Title.scn and b/client/Scenes/Title.scn differ diff --git a/client/Scenes/World.scn b/client/Scenes/World.scn index cf781bf..9f9ebbe 100644 Binary files a/client/Scenes/World.scn and b/client/Scenes/World.scn differ diff --git a/client/Scripts/Component/Interactable.gd b/client/Scripts/Component/Interactable.gd index bfec2fa..940f7ec 100644 --- a/client/Scripts/Component/Interactable.gd +++ b/client/Scripts/Component/Interactable.gd @@ -1,6 +1,7 @@ extends Area2D signal interacted +var player func _ready(): connect("body_entered", self, "_on_body_enter") @@ -8,6 +9,7 @@ func _ready(): func _on_body_enter(body): if body.has_method("add_interactable"): + player = body body.add_interactable(self) func _on_body_exit(body): diff --git a/client/Scripts/Component/InteractableDialog.gd b/client/Scripts/Component/InteractableDialog.gd new file mode 100644 index 0000000..e8539cb --- /dev/null +++ b/client/Scripts/Component/InteractableDialog.gd @@ -0,0 +1,9 @@ +extends "res://Scripts/Component/Interactable.gd" + +export var dialog_name : String = "unconfigured" + +func _ready(): + connect("interacted", self, "_on_interact") + +func _on_interact(): + $Speaker.start_dialog(dialog_name) diff --git a/client/Scripts/Component/LightLoader.gd b/client/Scripts/Component/LightLoader.gd new file mode 100644 index 0000000..7432c28 --- /dev/null +++ b/client/Scripts/Component/LightLoader.gd @@ -0,0 +1,14 @@ +extends Area2D + +func _ready(): + connect("body_entered", self, "_on_body_enter") + connect("body_exited", self, "_on_body_exit") + get_parent().get_node("Light2D").enabled = false + +func _on_body_enter(body): + if body.has_method("add_interactable"): + get_parent().get_node("Light2D").enabled = true + +func _on_body_exit(body): + if body.has_method("remove_interactable"): + get_parent().get_node("Light2D").enabled = false diff --git a/client/Scripts/Component/StorySpeaker.gd b/client/Scripts/Component/StorySpeaker.gd index 391ffbc..c50a264 100644 --- a/client/Scripts/Component/StorySpeaker.gd +++ b/client/Scripts/Component/StorySpeaker.gd @@ -83,5 +83,4 @@ func move_dialog_forward(decision = 0): func _process(delta): if(Input.is_action_just_pressed("ui_accept") and choices == 0 and final_display_message == gui.current_dialog()): - print("YEET") move_dialog_forward(0) diff --git a/client/Scripts/Entities/Door.gd b/client/Scripts/Entities/Door.gd new file mode 100644 index 0000000..d482e26 --- /dev/null +++ b/client/Scripts/Entities/Door.gd @@ -0,0 +1,65 @@ +extends Area2D + + +var opened = false + +export var locked = false +export var security_level = 0 +var player_level = -1 + +func lock(): + locked = true + $Top/Color.modulate = Color.red + +func unlock(): + locked = false + set_color() + +func set_color(): + match(security_level): + 0: + $Top/Color.modulate = Color.green + 1: + $Top/Color.modulate = Color.blue + 2: + $Top/Color.modulate = Color.yellow + 3: + $Top/Color.modulate = Color.orange + 4: + $Top/Color.modulate = Color.red + 5: + $Top/Color.modulate = Color.purple + +# Called when the node enters the scene tree for the first time. +func _ready(): + connect("body_entered", self, "_on_body_enter") + connect("body_exited", self, "_on_body_exit") + if locked: + lock() + else: + unlock() + +func _on_body_enter(body): + if body.has_method("add_interactable"): + if body.clearance_level >= security_level and not locked: + open() + +func _on_body_exit(body): + if body.has_method("remove_interactable"): + close() + +func open(): + if not opened: + $AnimationPlayer.play("Open") + $AudioStreamPlayer2D.play() + $StaticBody2D.collision_layer = 0 + $StaticBody2D.collision_mask = 0 + opened = true + +func close(): + if opened: + $AnimationPlayer.play("Close") + $AudioStreamPlayer2D.play() + $StaticBody2D.collision_layer = 1 + $StaticBody2D.collision_mask = 1 + opened = false diff --git a/client/Scripts/Entities/NPCs/CEO.gd b/client/Scripts/Entities/NPCs/CEO.gd index fde1954..eddbbe8 100644 --- a/client/Scripts/Entities/NPCs/CEO.gd +++ b/client/Scripts/Entities/NPCs/CEO.gd @@ -5,11 +5,14 @@ var state : int = 0 func _ready(): connect("interacted", self, "_on_interact") $Speaker.speaker_name = "CEO Grant Blevins" + $Speaker.speaker = "ceo" $Speaker.connect("dialog_exited", self, "_on_dialog_exit") func _on_interact(): if state == 0: $Speaker.start_dialog("intro_meet_ceo") + if player: + player.clearance_level = 1 else: $Speaker.start_dialog("into_speak_ceo") diff --git a/client/Scripts/Entities/NPCs/IntroScientist.gd b/client/Scripts/Entities/NPCs/IntroScientist.gd index e445a9a..a44d13d 100644 --- a/client/Scripts/Entities/NPCs/IntroScientist.gd +++ b/client/Scripts/Entities/NPCs/IntroScientist.gd @@ -2,6 +2,7 @@ extends "res://Scripts/Component/Interactable.gd" func _ready(): connect("interacted", self, "_on_interact") + $Speaker.speaker = "fast_talker" $Speaker.speaker_name = "Dr.Thadd" #$Speaker.start_dialog("intro_science") diff --git a/client/Scripts/Entities/Player.gd b/client/Scripts/Entities/Player.gd index 5554c04..241d100 100644 --- a/client/Scripts/Entities/Player.gd +++ b/client/Scripts/Entities/Player.gd @@ -1,5 +1,7 @@ extends KinematicBody2D +export var clearance_level = 0 + # Environment variables export var baseGravity : float = 9.8 @@ -23,10 +25,6 @@ func remove_interactable(interactable): if loc >= 0: interactables.remove(loc) -func _process(delta): - if Input.is_action_just_pressed("ui_accept") and len(interactables) > 0 and not gui.is_in_dialog(): - interactables[0].interact() - func _physics_process(delta): # Gravity @@ -38,6 +36,8 @@ func _physics_process(delta): gui = get_node("/root/World/GUI") elif not gui.is_in_dialog(): user_input() + else: + moveMotion = 0 # Apply velocity limits moveMotion = clamp(moveMotion, -maxMoveVelocity, maxMoveVelocity) @@ -49,6 +49,9 @@ func _physics_process(delta): func user_input(): + if Input.is_action_just_pressed("ui_accept") and len(interactables) > 0 and not gui.is_in_dialog(): + interactables[0].interact() + if is_on_floor() and Input.is_action_just_pressed("ui_up") and Input.is_action_pressed("ui_down"): position.y = position.y + 2 return diff --git a/client/Scripts/Entities/Wall Light.gd b/client/Scripts/Entities/Wall Light.gd new file mode 100644 index 0000000..1dda072 --- /dev/null +++ b/client/Scripts/Entities/Wall Light.gd @@ -0,0 +1,7 @@ +extends Sprite + +export var shadows : bool = false + +func _ready(): + $Light2D.show() + $Light2D.shadow_enabled = shadows diff --git a/client/Scripts/Entities/Zone.gd b/client/Scripts/Entities/Zone.gd new file mode 100644 index 0000000..6306c57 --- /dev/null +++ b/client/Scripts/Entities/Zone.gd @@ -0,0 +1,19 @@ +extends Node2D + +export var load_on_start = false +export var music : AudioStream + +func _ready(): + if load_on_start: + load_zone() + else: + unload_zone() + +func load_zone(): + if $"/root/MusicManager".stream != music: + $"/root/MusicManager".play_stream(music) + show() + +func unload_zone(): + hide() + diff --git a/client/Scripts/Entities/ZoneLoader.gd b/client/Scripts/Entities/ZoneLoader.gd new file mode 100644 index 0000000..ce7a108 --- /dev/null +++ b/client/Scripts/Entities/ZoneLoader.gd @@ -0,0 +1,17 @@ +extends Area2D + +export var load_zone : String = "" + +func _ready(): + connect("body_entered", self, "_on_body_entered") + +func _on_body_entered(body): + if body.has_method("user_input"): + var parent = get_parent() + for i in range(0, parent.get_child_count()): + var child = parent.get_child(i) + if child.has_method("load_zone"): + if child.name == load_zone + "Zone": + child.load_zone() + else: + child.unload_zone() diff --git a/client/Scripts/Singletons/WorldManager.gd b/client/Scripts/Singletons/WorldManager.gd index b135c00..8919e5a 100644 --- a/client/Scripts/Singletons/WorldManager.gd +++ b/client/Scripts/Singletons/WorldManager.gd @@ -9,7 +9,7 @@ func _ready(): gui_manager = $GUI audio_player = AudioStreamPlayer.new() add_child(audio_player) - $CanvasLayer/ColorRect.show() + $Fader/ColorRect.show() play_sound(preload("res://Assets/Sfx/intro/processed.wav")) func play_sound(audio_stream): diff --git a/client/default_bus_layout.tres b/client/default_bus_layout.tres index 94fa4a6..13b562c 100644 --- a/client/default_bus_layout.tres +++ b/client/default_bus_layout.tres @@ -5,5 +5,11 @@ bus/1/name = "Music" bus/1/solo = false bus/1/mute = false bus/1/bypass_fx = false -bus/1/volume_db = -5.04538 +bus/1/volume_db = -8.39524 bus/1/send = "Master" +bus/2/name = "Sfx" +bus/2/solo = false +bus/2/mute = false +bus/2/bypass_fx = false +bus/2/volume_db = 0.0 +bus/2/send = "Master" diff --git a/client/project.godot b/client/project.godot index 9ebae2c..a736f3a 100644 --- a/client/project.godot +++ b/client/project.godot @@ -36,6 +36,20 @@ enabled=PoolStringArray( "EXP-System-Dialog" ) [input] +ui_left={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) + ] +} +ui_right={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) + ] +} ui_up={ "deadzone": 0.5, "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) @@ -43,6 +57,13 @@ ui_up={ , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) ] } +ui_down={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) + ] +} [rendering]