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_bottom = 36.0
|
||||
selected = 0
|
||||
item_count = 2
|
||||
item_count = 3
|
||||
popup/item_0/text = "Helen House"
|
||||
popup/item_0/id = 0
|
||||
popup/item_1/text = "Chuck E's Corner"
|
||||
popup/item_1/id = 1
|
||||
popup/item_2/text = "Balcony Stage"
|
||||
popup/item_2/id = 2
|
||||
|
||||
[node name="MenuButton" type="MenuButton" parent="MenuBar"]
|
||||
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")
|
||||
|
||||
[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
|
||||
light_color = Color(0, 0.538333, 0.85, 1)
|
||||
light_energy = 3.0
|
||||
spot_range = 6.53799
|
||||
spot_angle = 30.5982
|
||||
spot_angle = 33.4444
|
||||
spot_angle_attenuation = 0.1
|
||||
|
||||
[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 },
|
||||
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" },
|
||||
56: { "bot": "Spots", "movement": "Warblettes", "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" },
|
||||
73: { "bot": "Floods", "movement": "Blue", "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":
|
||||
|
@ -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()
|
||||
|
||||
func reload_stage(stage_previously_loaded: bool) -> void:
|
||||
if (stage_previously_loaded):
|
||||
$SequencerPanel/TimelinePanel/VScrollBar.value = 0
|
||||
$FlyoutPanel/Movements/VScrollBar.value = 0
|
||||
$FlyoutPanel/FlowControls/VScrollBar.value = 0
|
||||
|
@ -250,6 +469,7 @@ func reload_stage(stage_previously_loaded: bool) -> void:
|
|||
camera.queue_free()
|
||||
for cosmetic_adjustment in $FlyoutPanel/Cosmetics/InvisibleMask/CosmeticsHandle.get_children():
|
||||
cosmetic_adjustment.queue_free()
|
||||
if ($SubViewport.get_child_count() > 0):
|
||||
$SubViewport.get_child(0).queue_free()
|
||||
cam_index = 0
|
||||
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):
|
||||
var flow_control = load("res://Scenes/GUI/Controls/FlowControl.tscn").instantiate()
|
||||
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.out_value = out_flow
|
||||
$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.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
||||
row.animatronic = bot
|
||||
row.current_stage = current_stage
|
||||
if (in_flow is String): row.flow_path = "None"
|
||||
row.movement_bit = bit_number
|
||||
row.movement_name = movement
|
||||
|
@ -311,6 +533,8 @@ func reload_stage(stage_previously_loaded: bool) -> void:
|
|||
movement_button.position.y = rows_offset
|
||||
movement_button.base_scene_path = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
||||
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"
|
||||
movement_button.movement_name = movement
|
||||
$FlyoutPanel/Movements/InvisibleMask/MovementHandle.add_child(movement_button)
|
||||
|
|
|
@ -2,12 +2,13 @@ extends Control
|
|||
|
||||
@export var in_value : float = 1.0
|
||||
@export var out_value : float = 1.0
|
||||
@export var vis_name : String = ""
|
||||
|
||||
signal in_value_updated(new_value: float)
|
||||
signal out_value_updated(new_value: float)
|
||||
|
||||
func _ready() -> void:
|
||||
$Panel/Label.text = self.name
|
||||
$Panel/Label.text = self.vis_name
|
||||
$Panel/InStepper.value = self.in_value
|
||||
$Panel/OutStepper.value = self.out_value
|
||||
|
||||
|
|
|
@ -4,6 +4,8 @@ signal movement_in(movement, rate)
|
|||
signal movement_out(movement, rate)
|
||||
|
||||
@export var animatronic : String
|
||||
@export var movement_bit : int
|
||||
@export var current_stage : String
|
||||
@export var base_scene_path : String
|
||||
@export var flow_path : String = "../../../../../FlyoutPanel/FlowControls/InvisibleMask/FlowHandle/"
|
||||
@export var movement_name : String
|
||||
|
@ -18,7 +20,7 @@ func _ready() -> void:
|
|||
movement_in.connect(animatronic_node._movement_in)
|
||||
movement_out.connect(animatronic_node._movement_out)
|
||||
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.out_value_updated.connect(self._update_out_flow)
|
||||
in_flow = flow_control.in_value
|
||||
|
|
|
@ -4,6 +4,7 @@ extends Panel
|
|||
@export var movement_name : String = "Name"
|
||||
@export var flow_path : String = "../../../../../FlyoutPanel/FlowControls/InvisibleMask/FlowHandle/"
|
||||
@export var base_scene_path : String
|
||||
@export var current_stage : String
|
||||
@export var animatronic : String
|
||||
@export var movements : Array[bool]
|
||||
@export var etching: bool = false
|
||||
|
@ -108,7 +109,7 @@ func _update_out_flow(new_value: float) -> void:
|
|||
|
||||
func _ready() -> void:
|
||||
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.out_value_updated.connect(self._update_out_flow)
|
||||
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")
|
||||
boot_splash/show_image=false
|
||||
config/icon="uid://cnvfrr028730a"
|
||||
config/macos_native_icon="res://UI/icon.icns"
|
||||
config/windows_native_icon="res://UI/icon.ico"
|
||||
|
||||
[display]
|
||||
|
||||
|
|