jasper and helen balcony edition
BIN
Models/Cyberamics/Cyber Helen.glb
Normal file
37
Models/Cyberamics/Cyber Helen.glb.import
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://d34xfaignny8j"
|
||||||
|
path="res://.godot/imported/Cyber Helen.glb-3f0344c1f3e746ac81eea3dfffd7e005.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Helen.glb"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Helen.glb-3f0344c1f3e746ac81eea3dfffd7e005.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=false
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
BIN
Models/Cyberamics/Cyber Helen_beak.png
Normal file
After Width: | Height: | Size: 318 B |
39
Models/Cyberamics/Cyber Helen_beak.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dt2k7wwpcttwx"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Helen_beak.png-dafc891d002e04d99d222183d0d236ea.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Helen_beak.png-dafc891d002e04d99d222183d0d236ea.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "660d81a1bf46d22fbda7523d081ce944"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Helen_beak.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Helen_beak.png-dafc891d002e04d99d222183d0d236ea.s3tc.ctex", "res://.godot/imported/Cyber Helen_beak.png-dafc891d002e04d99d222183d0d236ea.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
|
BIN
Models/Cyberamics/Cyber Helen_eyes.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
39
Models/Cyberamics/Cyber Helen_eyes.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://u6c8i8hmf55l"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Helen_eyes.png-c8e727972f281835cc003dd052d0e371.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Helen_eyes.png-c8e727972f281835cc003dd052d0e371.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "f3d293a05f8484be8751f38e0651eb91"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Helen_eyes.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Helen_eyes.png-c8e727972f281835cc003dd052d0e371.s3tc.ctex", "res://.godot/imported/Cyber Helen_eyes.png-c8e727972f281835cc003dd052d0e371.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
|
BIN
Models/Cyberamics/Cyber Helen_fur.png
Normal file
After Width: | Height: | Size: 17 KiB |
39
Models/Cyberamics/Cyber Helen_fur.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b874br054h4u6"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Helen_fur.png-25e5870ed95edb351ef0f52eda54dda5.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Helen_fur.png-25e5870ed95edb351ef0f52eda54dda5.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "d622cd261604f2451fe93281e2085d70"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Helen_fur.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Helen_fur.png-25e5870ed95edb351ef0f52eda54dda5.s3tc.ctex", "res://.godot/imported/Cyber Helen_fur.png-25e5870ed95edb351ef0f52eda54dda5.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
|
BIN
Models/Cyberamics/Cyber Helen_hair.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
39
Models/Cyberamics/Cyber Helen_hair.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bv65pevudy3dk"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Helen_hair.png-7eb38b10a596be14320077537c5df16f.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Helen_hair.png-7eb38b10a596be14320077537c5df16f.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "35bb2072abe8c8e39214dcb47ee5fc3a"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Helen_hair.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Helen_hair.png-7eb38b10a596be14320077537c5df16f.s3tc.ctex", "res://.godot/imported/Cyber Helen_hair.png-7eb38b10a596be14320077537c5df16f.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
|
BIN
Models/Cyberamics/Cyber Helen_mic.png
Normal file
After Width: | Height: | Size: 361 B |
39
Models/Cyberamics/Cyber Helen_mic.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b05jw1y0ukwqu"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Helen_mic.png-47fa0aeb51ad55b858b963218d0d6ecd.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Helen_mic.png-47fa0aeb51ad55b858b963218d0d6ecd.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "0c2b737299479570c7cc39c7685d4c62"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Helen_mic.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Helen_mic.png-47fa0aeb51ad55b858b963218d0d6ecd.s3tc.ctex", "res://.godot/imported/Cyber Helen_mic.png-47fa0aeb51ad55b858b963218d0d6ecd.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
|
BIN
Models/Cyberamics/Cyber Jasper.glb
Normal file
37
Models/Cyberamics/Cyber Jasper.glb.import
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://ba7i8p8olef2s"
|
||||||
|
path="res://.godot/imported/Cyber Jasper.glb-7156eb669feb8aeef67d143d15c0b7ad.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Jasper.glb"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Jasper.glb-7156eb669feb8aeef67d143d15c0b7ad.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=false
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
BIN
Models/Cyberamics/Cyber Jasper_eyes.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
39
Models/Cyberamics/Cyber Jasper_eyes.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://nwgwmia0tqak"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Jasper_eyes.png-3656e523e85be9bc7e5d4df443165869.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Jasper_eyes.png-3656e523e85be9bc7e5d4df443165869.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "d05686d9b10603e16e5810f67def9d24"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Jasper_eyes.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Jasper_eyes.png-3656e523e85be9bc7e5d4df443165869.s3tc.ctex", "res://.godot/imported/Cyber Jasper_eyes.png-3656e523e85be9bc7e5d4df443165869.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
|
|
@ -199,11 +199,13 @@ offset_top = 4.0
|
||||||
offset_right = 260.0
|
offset_right = 260.0
|
||||||
offset_bottom = 36.0
|
offset_bottom = 36.0
|
||||||
selected = 0
|
selected = 0
|
||||||
item_count = 2
|
item_count = 3
|
||||||
popup/item_0/text = "Helen House"
|
popup/item_0/text = "Helen House"
|
||||||
popup/item_0/id = 0
|
popup/item_0/id = 0
|
||||||
popup/item_1/text = "Chuck E's Corner"
|
popup/item_1/text = "Chuck E's Corner"
|
||||||
popup/item_1/id = 1
|
popup/item_1/id = 1
|
||||||
|
popup/item_2/text = "Balcony Stage"
|
||||||
|
popup/item_2/id = 2
|
||||||
|
|
||||||
[node name="MenuButton" type="MenuButton" parent="MenuBar"]
|
[node name="MenuButton" type="MenuButton" parent="MenuBar"]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
|
|
37
Scenes/Stages/Balcony.tscn
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
[gd_scene load_steps=6 format=3 uid="uid://d2g6chunc572s"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://d34xfaignny8j" path="res://Models/Cyberamics/Cyber Helen.glb" id="1_w3m2i"]
|
||||||
|
[ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_t4ere"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c2j62syov3skq" path="res://Models/Cyberamics/Cyberamic Chuck.glb" id="3_45mf1"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ba7i8p8olef2s" path="res://Models/Cyberamics/Cyber Jasper.glb" id="4_t4ere"]
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_w3m2i"]
|
||||||
|
ambient_light_source = 1
|
||||||
|
|
||||||
|
[node name="Balcony" type="Node3D"]
|
||||||
|
|
||||||
|
[node name="Jasper" parent="." instance=ExtResource("4_t4ere")]
|
||||||
|
transform = Transform3D(0.965926, 0, 0.258819, 0, 1, 0, -0.258819, 0, 0.965926, -2, 0, 0)
|
||||||
|
script = ExtResource("2_t4ere")
|
||||||
|
|
||||||
|
[node name="Chuck" parent="." instance=ExtResource("3_45mf1")]
|
||||||
|
script = ExtResource("2_t4ere")
|
||||||
|
|
||||||
|
[node name="Helen" parent="." instance=ExtResource("1_w3m2i")]
|
||||||
|
transform = Transform3D(0.866025, 0, -0.5, 0, 1, 0, 0.5, 0, 0.866025, 2, 0, 0)
|
||||||
|
script = ExtResource("2_t4ere")
|
||||||
|
|
||||||
|
[node name="Angle 1" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.97377, 0.227535, 0, -0.227535, 0.97377, 0, 1.81733, 3)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_w3m2i")
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1.5, 2)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
|
||||||
|
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 1.5, 2)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
|
@ -71,12 +71,12 @@ spot_angle_attenuation = 0.15
|
||||||
script = ExtResource("4_8suoo")
|
script = ExtResource("4_8suoo")
|
||||||
|
|
||||||
[node name="Chuck" type="SpotLight3D" parent="Color Spots"]
|
[node name="Chuck" type="SpotLight3D" parent="Color Spots"]
|
||||||
transform = Transform3D(-0.972974, -0.0597654, 0.223048, 2.26267e-08, 0.965926, 0.258819, -0.230916, 0.251824, -0.939821, -1.57812, 4.57895, -1.25599)
|
transform = Transform3D(-0.995147, -0.00124532, 0.0983965, 0.0311161, 0.944632, 0.326653, -0.0933553, 0.328129, -0.940009, -1.57812, 4.57895, -1.25599)
|
||||||
visible = false
|
visible = false
|
||||||
light_color = Color(0, 0.538333, 0.85, 1)
|
light_color = Color(0, 0.538333, 0.85, 1)
|
||||||
light_energy = 3.0
|
light_energy = 3.0
|
||||||
spot_range = 6.53799
|
spot_range = 6.53799
|
||||||
spot_angle = 30.5982
|
spot_angle = 33.4444
|
||||||
spot_angle_attenuation = 0.1
|
spot_angle_attenuation = 0.1
|
||||||
|
|
||||||
[node name="Angle 1" type="Camera3D" parent="."]
|
[node name="Angle 1" type="Camera3D" parent="."]
|
||||||
|
|
|
@ -104,11 +104,11 @@ var stages_info = {
|
||||||
41: { "bot": "Warblettes", "movement": "Mouth", "flow_in": 4.0, "flow_out": 3.0 },
|
41: { "bot": "Warblettes", "movement": "Mouth", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
44: { "bot": "Warblettes", "movement": "Body Rock", "flow_in": 1.0, "flow_out": 1.0 },
|
44: { "bot": "Warblettes", "movement": "Body Rock", "flow_in": 1.0, "flow_out": 1.0 },
|
||||||
50: { "bot": "Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
|
50: { "bot": "Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
|
||||||
56: { "bot": "Spots", "movement": "Warblettes", "flow_in": "None", "flow_out": "None" },
|
|
||||||
71: { "bot": "Floods", "movement": "Red", "flow_in": "None", "flow_out": "None" },
|
71: { "bot": "Floods", "movement": "Red", "flow_in": "None", "flow_out": "None" },
|
||||||
72: { "bot": "Floods", "movement": "Green", "flow_in": "None", "flow_out": "None" },
|
72: { "bot": "Floods", "movement": "Green", "flow_in": "None", "flow_out": "None" },
|
||||||
73: { "bot": "Floods", "movement": "Blue", "flow_in": "None", "flow_out": "None" },
|
73: { "bot": "Floods", "movement": "Blue", "flow_in": "None", "flow_out": "None" },
|
||||||
79: { "bot": "Color Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
|
79: { "bot": "Color Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
|
||||||
|
111: { "bot": "Spots", "movement": "Warblettes", "flow_in": "None", "flow_out": "None" },
|
||||||
},
|
},
|
||||||
|
|
||||||
"cosmetics":
|
"cosmetics":
|
||||||
|
@ -225,6 +225,226 @@ var stages_info = {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"Balcony Stage":
|
||||||
|
{
|
||||||
|
"bits": 24,
|
||||||
|
"scene": "res://Scenes/Stages/Balcony.tscn",
|
||||||
|
"scene_ref_base": "SubViewport/Balcony/",
|
||||||
|
"camera_count": 1,
|
||||||
|
|
||||||
|
"ust_type": "Cyberamics",
|
||||||
|
|
||||||
|
"bit_mapping":
|
||||||
|
{
|
||||||
|
1: { "bot": "Chuck", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
|
||||||
|
2: { "bot": "Chuck", "movement": "Head Left", "flow_in": 0.8, "flow_out": 1.0 },
|
||||||
|
3: { "bot": "Chuck", "movement": "Head Right", "flow_in": 1.0, "flow_out": 1.0 },
|
||||||
|
4: { "bot": "Chuck", "movement": "Head Up", "flow_in": 2.0, "flow_out": 1.0 },
|
||||||
|
5: { "bot": "Chuck", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
|
6: { "bot": "Chuck", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
|
7: { "bot": "Chuck", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
|
||||||
|
8: { "bot": "Chuck", "movement": "Right Arm", "flow_in": 2.0, "flow_out": 1.0 },
|
||||||
|
9: { "bot": "Helen", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
|
||||||
|
10: { "bot": "Helen", "movement": "Head Left", "flow_in": 0.8, "flow_out": 1.0 },
|
||||||
|
11: { "bot": "Helen", "movement": "Head Right", "flow_in": 1.0, "flow_out": 1.0 },
|
||||||
|
12: { "bot": "Helen", "movement": "Head Up", "flow_in": 2.0, "flow_out": 1.0 },
|
||||||
|
13: { "bot": "Helen", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
|
14: { "bot": "Helen", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
|
15: { "bot": "Helen", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
|
||||||
|
16: { "bot": "Helen", "movement": "Right Arm", "flow_in": 2.0, "flow_out": 1.0 },
|
||||||
|
25: { "bot": "Jasper", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
|
||||||
|
26: { "bot": "Jasper", "movement": "Head Left", "flow_in": 1.0, "flow_out": 1.0 },
|
||||||
|
27: { "bot": "Jasper", "movement": "Head Right", "flow_in": 1.0, "flow_out": 1.0 },
|
||||||
|
28: { "bot": "Jasper", "movement": "Head Up", "flow_in": 2.0, "flow_out": 1.0 },
|
||||||
|
29: { "bot": "Jasper", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
|
30: { "bot": "Jasper", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
|
||||||
|
31: { "bot": "Jasper", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
|
||||||
|
32: { "bot": "Jasper", "movement": "Strum", "flow_in": 2.0, "flow_out": 1.0 },
|
||||||
|
},
|
||||||
|
|
||||||
|
"cosmetics":
|
||||||
|
{
|
||||||
|
"Chuck E. Hat":
|
||||||
|
{
|
||||||
|
"Derby":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Derby": true,
|
||||||
|
},
|
||||||
|
"Cool Chuck":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Derby": false,
|
||||||
|
},
|
||||||
|
"Avenger":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Hat": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Derby": false,
|
||||||
|
},
|
||||||
|
"None":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Derby": false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"Chuck E. Shirt":
|
||||||
|
{
|
||||||
|
"Yellow Checker Vest":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Shirt": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Shirt": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Black Bowtie": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Buttons": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Vest Trim": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Yellow Checker Vest": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Rocker Vest": false,
|
||||||
|
},
|
||||||
|
"Red Vest":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Shirt": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Shirt": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Black Bowtie": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Buttons": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Vest Trim": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Yellow Checker Vest": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Rocker Vest": true,
|
||||||
|
},
|
||||||
|
"Cool Chuck Shirt":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Shirt": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Shirt": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Black Bowtie": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Buttons": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Vest Trim": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Yellow Checker Vest": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Rocker Vest": false,
|
||||||
|
},
|
||||||
|
"Avenger Shirt":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Avenger Shirt": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Cool Chuck Shirt": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Black Bowtie": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Buttons": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Vest Trim": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Yellow Checker Vest": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Rocker Vest": false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"Chuck E. Mask":
|
||||||
|
{
|
||||||
|
"PTT":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Ears": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Ears Inside": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Jaw": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Muzzle": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Ears": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Ears Inside": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Jaw": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Muzzle": false,
|
||||||
|
},
|
||||||
|
"Modern":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Ears": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Ears Inside": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Jaw": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/PTT Muzzle": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Ears": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Ears Inside": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Jaw": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Modern Muzzle": true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
"Chuck E. Eyelids":
|
||||||
|
{
|
||||||
|
"Blue":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Blue Eyelids": true,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Grey Eyelids": false,
|
||||||
|
},
|
||||||
|
"Grey":
|
||||||
|
{
|
||||||
|
"Chuck/Chuck/Skeleton3D/Blue Eyelids": false,
|
||||||
|
"Chuck/Chuck/Skeleton3D/Grey Eyelids": true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
"Helen Eyelids":
|
||||||
|
{
|
||||||
|
"Blue":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/Blue Eyelids": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Pink Eyelids": false,
|
||||||
|
},
|
||||||
|
"Pink":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/Blue Eyelids": false,
|
||||||
|
"Helen/Helen/Skeleton3D/Pink Eyelids": true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
"Helen Dress":
|
||||||
|
{
|
||||||
|
"Half Body CU":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/Half Body Skirt": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Skirt": false,
|
||||||
|
"Helen/Helen/Skeleton3D/Black Shirt": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Collar": true,
|
||||||
|
},
|
||||||
|
"Full Body CU":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/Half Body Skirt": false,
|
||||||
|
"Helen/Helen/Skeleton3D/Skirt": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Black Shirt": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Collar": true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
"Helen Hair":
|
||||||
|
{
|
||||||
|
"Large CU":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/BWHair Large": true,
|
||||||
|
"Helen/Helen/Skeleton3D/BWHair": false,
|
||||||
|
},
|
||||||
|
"Normal CU":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/BWHair Large": false,
|
||||||
|
"Helen/Helen/Skeleton3D/BWHair": true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
"Helen Mask":
|
||||||
|
{
|
||||||
|
"Road Stage":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Head": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Mask": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Road Stage Jaw": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Road Stage Beak": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Jaw": false,
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Beak": false,
|
||||||
|
},
|
||||||
|
"Modern":
|
||||||
|
{
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Head": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Mask": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Road Stage Jaw": false,
|
||||||
|
"Helen/Helen/Skeleton3D/Road Stage Beak": false,
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Jaw": true,
|
||||||
|
"Helen/Helen/Skeleton3D/Modern Beak": true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -235,7 +455,6 @@ signal return_to_zero()
|
||||||
signal erase_all()
|
signal erase_all()
|
||||||
|
|
||||||
func reload_stage(stage_previously_loaded: bool) -> void:
|
func reload_stage(stage_previously_loaded: bool) -> void:
|
||||||
if (stage_previously_loaded):
|
|
||||||
$SequencerPanel/TimelinePanel/VScrollBar.value = 0
|
$SequencerPanel/TimelinePanel/VScrollBar.value = 0
|
||||||
$FlyoutPanel/Movements/VScrollBar.value = 0
|
$FlyoutPanel/Movements/VScrollBar.value = 0
|
||||||
$FlyoutPanel/FlowControls/VScrollBar.value = 0
|
$FlyoutPanel/FlowControls/VScrollBar.value = 0
|
||||||
|
@ -250,6 +469,7 @@ func reload_stage(stage_previously_loaded: bool) -> void:
|
||||||
camera.queue_free()
|
camera.queue_free()
|
||||||
for cosmetic_adjustment in $FlyoutPanel/Cosmetics/InvisibleMask/CosmeticsHandle.get_children():
|
for cosmetic_adjustment in $FlyoutPanel/Cosmetics/InvisibleMask/CosmeticsHandle.get_children():
|
||||||
cosmetic_adjustment.queue_free()
|
cosmetic_adjustment.queue_free()
|
||||||
|
if ($SubViewport.get_child_count() > 0):
|
||||||
$SubViewport.get_child(0).queue_free()
|
$SubViewport.get_child(0).queue_free()
|
||||||
cam_index = 0
|
cam_index = 0
|
||||||
var stage = load(stages_info[current_stage]["scene"]).instantiate()
|
var stage = load(stages_info[current_stage]["scene"]).instantiate()
|
||||||
|
@ -290,7 +510,8 @@ func reload_stage(stage_previously_loaded: bool) -> void:
|
||||||
if (in_flow is not String):
|
if (in_flow is not String):
|
||||||
var flow_control = load("res://Scenes/GUI/Controls/FlowControl.tscn").instantiate()
|
var flow_control = load("res://Scenes/GUI/Controls/FlowControl.tscn").instantiate()
|
||||||
flow_control.position.y = flows_offset
|
flow_control.position.y = flows_offset
|
||||||
flow_control.name = bot + " " + movement
|
flow_control.name = str(bit_number) + bot + movement + current_stage
|
||||||
|
flow_control.vis_name = bot + " " + movement
|
||||||
flow_control.in_value = in_flow
|
flow_control.in_value = in_flow
|
||||||
flow_control.out_value = out_flow
|
flow_control.out_value = out_flow
|
||||||
$FlyoutPanel/FlowControls/InvisibleMask/FlowHandle.add_child(flow_control)
|
$FlyoutPanel/FlowControls/InvisibleMask/FlowHandle.add_child(flow_control)
|
||||||
|
@ -302,6 +523,7 @@ func reload_stage(stage_previously_loaded: bool) -> void:
|
||||||
row.position.y = rows_offset
|
row.position.y = rows_offset
|
||||||
row.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
row.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
||||||
row.animatronic = bot
|
row.animatronic = bot
|
||||||
|
row.current_stage = current_stage
|
||||||
if (in_flow is String): row.flow_path = "None"
|
if (in_flow is String): row.flow_path = "None"
|
||||||
row.movement_bit = bit_number
|
row.movement_bit = bit_number
|
||||||
row.movement_name = movement
|
row.movement_name = movement
|
||||||
|
@ -311,6 +533,8 @@ func reload_stage(stage_previously_loaded: bool) -> void:
|
||||||
movement_button.position.y = rows_offset
|
movement_button.position.y = rows_offset
|
||||||
movement_button.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
movement_button.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
||||||
movement_button.animatronic = bot
|
movement_button.animatronic = bot
|
||||||
|
movement_button.movement_bit = bit_number
|
||||||
|
movement_button.current_stage = current_stage
|
||||||
if (in_flow is String): movement_button.flow_path = "None"
|
if (in_flow is String): movement_button.flow_path = "None"
|
||||||
movement_button.movement_name = movement
|
movement_button.movement_name = movement
|
||||||
$FlyoutPanel/Movements/InvisibleMask/MovementHandle.add_child(movement_button)
|
$FlyoutPanel/Movements/InvisibleMask/MovementHandle.add_child(movement_button)
|
||||||
|
|
|
@ -2,12 +2,13 @@ extends Control
|
||||||
|
|
||||||
@export var in_value : float = 1.0
|
@export var in_value : float = 1.0
|
||||||
@export var out_value : float = 1.0
|
@export var out_value : float = 1.0
|
||||||
|
@export var vis_name : String = ""
|
||||||
|
|
||||||
signal in_value_updated(new_value: float)
|
signal in_value_updated(new_value: float)
|
||||||
signal out_value_updated(new_value: float)
|
signal out_value_updated(new_value: float)
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
$Panel/Label.text = self.name
|
$Panel/Label.text = self.vis_name
|
||||||
$Panel/InStepper.value = self.in_value
|
$Panel/InStepper.value = self.in_value
|
||||||
$Panel/OutStepper.value = self.out_value
|
$Panel/OutStepper.value = self.out_value
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,8 @@ signal movement_in(movement, rate)
|
||||||
signal movement_out(movement, rate)
|
signal movement_out(movement, rate)
|
||||||
|
|
||||||
@export var animatronic : String
|
@export var animatronic : String
|
||||||
|
@export var movement_bit : int
|
||||||
|
@export var current_stage : String
|
||||||
@export var base_scene_path : String
|
@export var base_scene_path : String
|
||||||
@export var flow_path : String = "../../../../../FlyoutPanel/FlowControls/InvisibleMask/FlowHandle/"
|
@export var flow_path : String = "../../../../../FlyoutPanel/FlowControls/InvisibleMask/FlowHandle/"
|
||||||
@export var movement_name : String
|
@export var movement_name : String
|
||||||
|
@ -18,7 +20,7 @@ func _ready() -> void:
|
||||||
movement_in.connect(animatronic_node._movement_in)
|
movement_in.connect(animatronic_node._movement_in)
|
||||||
movement_out.connect(animatronic_node._movement_out)
|
movement_out.connect(animatronic_node._movement_out)
|
||||||
if (flow_path != "None"):
|
if (flow_path != "None"):
|
||||||
var flow_control = get_node(flow_path + animatronic + " " + movement_name)
|
var flow_control = get_node(flow_path + str(movement_bit) + animatronic + movement_name + current_stage)
|
||||||
flow_control.in_value_updated.connect(self._update_in_flow)
|
flow_control.in_value_updated.connect(self._update_in_flow)
|
||||||
flow_control.out_value_updated.connect(self._update_out_flow)
|
flow_control.out_value_updated.connect(self._update_out_flow)
|
||||||
in_flow = flow_control.in_value
|
in_flow = flow_control.in_value
|
||||||
|
|
|
@ -4,6 +4,7 @@ extends Panel
|
||||||
@export var movement_name : String = "Name"
|
@export var movement_name : String = "Name"
|
||||||
@export var flow_path : String = "../../../../../FlyoutPanel/FlowControls/InvisibleMask/FlowHandle/"
|
@export var flow_path : String = "../../../../../FlyoutPanel/FlowControls/InvisibleMask/FlowHandle/"
|
||||||
@export var base_scene_path : String
|
@export var base_scene_path : String
|
||||||
|
@export var current_stage : String
|
||||||
@export var animatronic : String
|
@export var animatronic : String
|
||||||
@export var movements : Array[bool]
|
@export var movements : Array[bool]
|
||||||
@export var etching: bool = false
|
@export var etching: bool = false
|
||||||
|
@ -108,7 +109,7 @@ func _update_out_flow(new_value: float) -> void:
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
if (flow_path != "None"):
|
if (flow_path != "None"):
|
||||||
var flow_control = get_node(flow_path + animatronic + " " + movement_name)
|
var flow_control = get_node(flow_path + str(movement_bit) + animatronic + movement_name + current_stage)
|
||||||
flow_control.in_value_updated.connect(self._update_in_flow)
|
flow_control.in_value_updated.connect(self._update_in_flow)
|
||||||
flow_control.out_value_updated.connect(self._update_out_flow)
|
flow_control.out_value_updated.connect(self._update_out_flow)
|
||||||
in_flow = flow_control.in_value
|
in_flow = flow_control.in_value
|
||||||
|
|
BIN
UI/icon.icns
Normal file
BIN
UI/icon.ico
Normal file
After Width: | Height: | Size: 264 KiB |
|
@ -16,6 +16,8 @@ run/main_scene="uid://oiehbor0dlqx"
|
||||||
config/features=PackedStringArray("4.4", "GL Compatibility")
|
config/features=PackedStringArray("4.4", "GL Compatibility")
|
||||||
boot_splash/show_image=false
|
boot_splash/show_image=false
|
||||||
config/icon="uid://cnvfrr028730a"
|
config/icon="uid://cnvfrr028730a"
|
||||||
|
config/macos_native_icon="res://UI/icon.icns"
|
||||||
|
config/windows_native_icon="res://UI/icon.ico"
|
||||||
|
|
||||||
[display]
|
[display]
|
||||||
|
|
||||||
|
|