many many things

fixed cyber turning
added legs for pasqually and jasper
optimized stage loading code
fixed ui bugs
This commit is contained in:
Persephone Bubblegum-Holiday 2025-07-12 12:58:24 -07:00
parent 00183ca308
commit 01caec7e55
25 changed files with 1224 additions and 989 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 KiB

View file

@ -0,0 +1,39 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ye0cj50q0bs5"
path.s3tc="res://.godot/imported/Cyber Jasper_cg.png-6e4ab85422cdf7d87a29d0cf50d8e838.s3tc.ctex"
path.etc2="res://.godot/imported/Cyber Jasper_cg.png-6e4ab85422cdf7d87a29d0cf50d8e838.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
generator_parameters={
"md5": "e995a6c7d23c90adcab2f7d1d7babbe8"
}
[deps]
source_file="res://Models/Cyberamics/Cyber Jasper_cg.png"
dest_files=["res://.godot/imported/Cyber Jasper_cg.png-6e4ab85422cdf7d87a29d0cf50d8e838.s3tc.ctex", "res://.godot/imported/Cyber Jasper_cg.png-6e4ab85422cdf7d87a29d0cf50d8e838.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -0,0 +1,39 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://hxdufk1s1r8u"
path.s3tc="res://.godot/imported/Cyber Jasper_shirt_red.png-82bf8dafb0ef1eb74535c35064e6e118.s3tc.ctex"
path.etc2="res://.godot/imported/Cyber Jasper_shirt_red.png-82bf8dafb0ef1eb74535c35064e6e118.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
generator_parameters={
"md5": "9577bd2160ffd688028b64b583900f34"
}
[deps]
source_file="res://Models/Cyberamics/Cyber Jasper_shirt_red.png"
dest_files=["res://.godot/imported/Cyber Jasper_shirt_red.png-82bf8dafb0ef1eb74535c35064e6e118.s3tc.ctex", "res://.godot/imported/Cyber Jasper_shirt_red.png-82bf8dafb0ef1eb74535c35064e6e118.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 B

View file

@ -0,0 +1,39 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ome2cangn7sc"
path.s3tc="res://.godot/imported/Cyber Jasper_shoes.png-996313a7d9bb7c2b5922f1c25ef7d53f.s3tc.ctex"
path.etc2="res://.godot/imported/Cyber Jasper_shoes.png-996313a7d9bb7c2b5922f1c25ef7d53f.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
generator_parameters={
"md5": "378e46101e07b0ece78bcac00260098c"
}
[deps]
source_file="res://Models/Cyberamics/Cyber Jasper_shoes.png"
dest_files=["res://.godot/imported/Cyber Jasper_shoes.png-996313a7d9bb7c2b5922f1c25ef7d53f.s3tc.ctex", "res://.godot/imported/Cyber Jasper_shoes.png-996313a7d9bb7c2b5922f1c25ef7d53f.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

Binary file not shown.

View file

@ -1,9 +1,10 @@
[gd_scene load_steps=11 format=3 uid="uid://d2g6chunc572s"] [gd_scene load_steps=12 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="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="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_t4ere"]
[ext_resource type="PackedScene" uid="uid://c5fgw7t45p7r6" path="res://Models/Cyberamics/Cyber Chuck.glb" id="4_ajb2q"] [ext_resource type="PackedScene" uid="uid://c5fgw7t45p7r6" path="res://Models/Cyberamics/Cyber Chuck.glb" id="4_ajb2q"]
[ext_resource type="PackedScene" uid="uid://ba7i8p8olef2s" path="res://Models/Cyberamics/Cyber Jasper.glb" id="4_t4ere"] [ext_resource type="PackedScene" uid="uid://ba7i8p8olef2s" path="res://Models/Cyberamics/Cyber Jasper.glb" id="4_t4ere"]
[ext_resource type="Script" uid="uid://du3pqtf3jixvl" path="res://Scripts/CyberamicController.gd" id="5_38ovv"]
[ext_resource type="PackedScene" uid="uid://c6n4otfble154" path="res://Models/Balcony/BalconyStage.glb" id="5_45mf1"] [ext_resource type="PackedScene" uid="uid://c6n4otfble154" path="res://Models/Balcony/BalconyStage.glb" id="5_45mf1"]
[ext_resource type="PackedScene" uid="uid://dmh5upwts8y11" path="res://Models/Cyberamics/Warblettes.glb" id="5_ocq6y"] [ext_resource type="PackedScene" uid="uid://dmh5upwts8y11" path="res://Models/Cyberamics/Warblettes.glb" id="5_ocq6y"]
[ext_resource type="PackedScene" uid="uid://doxu4tb5jfoqp" path="res://Models/Cyberamics/Cyber Munch.glb" id="5_vcb31"] [ext_resource type="PackedScene" uid="uid://doxu4tb5jfoqp" path="res://Models/Cyberamics/Cyber Munch.glb" id="5_vcb31"]
@ -17,23 +18,23 @@ ambient_light_source = 1
[node name="Munch" parent="." instance=ExtResource("5_vcb31")] [node name="Munch" parent="." instance=ExtResource("5_vcb31")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 3, -0.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 3, -0.5)
script = ExtResource("2_t4ere") script = ExtResource("5_38ovv")
[node name="Jasper" parent="." instance=ExtResource("4_t4ere")] [node name="Jasper" parent="." instance=ExtResource("4_t4ere")]
transform = Transform3D(0.866025, 0, 0.5, 0, 1, 0, -0.5, 0, 0.866025, -2.2, 3, -0.5) transform = Transform3D(0.866025, 0, 0.5, 0, 1, 0, -0.5, 0, 0.866025, -2.2, 3, -0.5)
script = ExtResource("2_t4ere") script = ExtResource("5_38ovv")
[node name="Chuck" parent="." instance=ExtResource("4_ajb2q")] [node name="Chuck" parent="." instance=ExtResource("4_ajb2q")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, -0.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, -0.5)
script = ExtResource("2_t4ere") script = ExtResource("5_38ovv")
[node name="Helen" parent="." instance=ExtResource("1_w3m2i")] [node name="Helen" parent="." instance=ExtResource("1_w3m2i")]
transform = Transform3D(0.866025, 0, -0.5, 0, 1, 0, 0.5, 0, 0.866025, 2.2, 3, -0.5) transform = Transform3D(0.866025, 0, -0.5, 0, 1, 0, 0.5, 0, 0.866025, 2.2, 3, -0.5)
script = ExtResource("2_t4ere") script = ExtResource("5_38ovv")
[node name="Pasqually" parent="." instance=ExtResource("6_ajb2q")] [node name="Pasqually" parent="." instance=ExtResource("6_ajb2q")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.5, 3, -0.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.5, 3, -0.5)
script = ExtResource("2_t4ere") script = ExtResource("5_38ovv")
[node name="Warblettes" parent="." instance=ExtResource("5_ocq6y")] [node name="Warblettes" parent="." instance=ExtResource("5_ocq6y")]
transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, -7.5, 3.6, -1) transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, -7.5, 3.6, -1)

View file

@ -1,9 +1,9 @@
[gd_scene load_steps=10 format=3 uid="uid://jjd2nlorrml3"] [gd_scene load_steps=10 format=3 uid="uid://jjd2nlorrml3"]
[ext_resource type="PackedScene" uid="uid://ba7i8p8olef2s" path="res://Models/Cyberamics/Cyber Jasper.glb" id="1_nkhpr"] [ext_resource type="PackedScene" uid="uid://ba7i8p8olef2s" path="res://Models/Cyberamics/Cyber Jasper.glb" id="1_nkhpr"]
[ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_bawsr"]
[ext_resource type="PackedScene" uid="uid://c5fgw7t45p7r6" path="res://Models/Cyberamics/Cyber Chuck.glb" id="4_nkhpr"] [ext_resource type="PackedScene" uid="uid://c5fgw7t45p7r6" path="res://Models/Cyberamics/Cyber Chuck.glb" id="4_nkhpr"]
[ext_resource type="PackedScene" uid="uid://d34xfaignny8j" path="res://Models/Cyberamics/Cyber Helen.glb" id="4_vmyhs"] [ext_resource type="PackedScene" uid="uid://d34xfaignny8j" path="res://Models/Cyberamics/Cyber Helen.glb" id="4_vmyhs"]
[ext_resource type="Script" uid="uid://du3pqtf3jixvl" path="res://Scripts/CyberamicController.gd" id="5_bawsr"]
[ext_resource type="PackedScene" uid="uid://doxu4tb5jfoqp" path="res://Models/Cyberamics/Cyber Munch.glb" id="5_byvoj"] [ext_resource type="PackedScene" uid="uid://doxu4tb5jfoqp" path="res://Models/Cyberamics/Cyber Munch.glb" id="5_byvoj"]
[ext_resource type="PackedScene" uid="uid://bp5u5t6yu4ejy" path="res://Models/Cyberamics/Cyber Pasqually.glb" id="6_nkhpr"] [ext_resource type="PackedScene" uid="uid://bp5u5t6yu4ejy" path="res://Models/Cyberamics/Cyber Pasqually.glb" id="6_nkhpr"]
[ext_resource type="PackedScene" uid="uid://dfw3sbg135u2h" path="res://Models/CStage/CStage.glb" id="7_1s7sj"] [ext_resource type="PackedScene" uid="uid://dfw3sbg135u2h" path="res://Models/CStage/CStage.glb" id="7_1s7sj"]
@ -16,23 +16,23 @@ ambient_light_source = 1
[node name="Munch" parent="." instance=ExtResource("5_byvoj")] [node name="Munch" parent="." instance=ExtResource("5_byvoj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 3, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 3, 0)
script = ExtResource("2_bawsr") script = ExtResource("5_bawsr")
[node name="Jasper" parent="." instance=ExtResource("1_nkhpr")] [node name="Jasper" parent="." instance=ExtResource("1_nkhpr")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.25, 3, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.25, 3, 0)
script = ExtResource("2_bawsr") script = ExtResource("5_bawsr")
[node name="Chuck" parent="." instance=ExtResource("4_nkhpr")] [node name="Chuck" parent="." instance=ExtResource("4_nkhpr")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)
script = ExtResource("2_bawsr") script = ExtResource("5_bawsr")
[node name="Helen" parent="." instance=ExtResource("4_vmyhs")] [node name="Helen" parent="." instance=ExtResource("4_vmyhs")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.25, 3, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.25, 3, 0)
script = ExtResource("2_bawsr") script = ExtResource("5_bawsr")
[node name="Pasqually" parent="." instance=ExtResource("6_nkhpr")] [node name="Pasqually" parent="." instance=ExtResource("6_nkhpr")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.5, 3, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.5, 3, 0)
script = ExtResource("2_bawsr") script = ExtResource("5_bawsr")
[node name="Spots" type="Node3D" parent="."] [node name="Spots" type="Node3D" parent="."]
script = ExtResource("7_fp2rj") script = ExtResource("7_fp2rj")

View file

@ -1,7 +1,8 @@
[gd_scene load_steps=7 format=3 uid="uid://dw3eplmapm5gc"] [gd_scene load_steps=8 format=3 uid="uid://dw3eplmapm5gc"]
[ext_resource type="PackedScene" uid="uid://c5fgw7t45p7r6" path="res://Models/Cyberamics/Cyber Chuck.glb" id="1_t27ru"] [ext_resource type="PackedScene" uid="uid://c5fgw7t45p7r6" path="res://Models/Cyberamics/Cyber Chuck.glb" id="1_t27ru"]
[ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_8qvk7"] [ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_8qvk7"]
[ext_resource type="Script" uid="uid://du3pqtf3jixvl" path="res://Scripts/CyberamicController.gd" id="2_htppt"]
[ext_resource type="PackedScene" uid="uid://bv66hlbvtekho" path="res://Models/ChuckEsCorner/ChuckEsCornerStage.glb" id="3_8qvk7"] [ext_resource type="PackedScene" uid="uid://bv66hlbvtekho" path="res://Models/ChuckEsCorner/ChuckEsCornerStage.glb" id="3_8qvk7"]
[ext_resource type="PackedScene" uid="uid://dmh5upwts8y11" path="res://Models/Cyberamics/Warblettes.glb" id="3_t27ru"] [ext_resource type="PackedScene" uid="uid://dmh5upwts8y11" path="res://Models/Cyberamics/Warblettes.glb" id="3_t27ru"]
[ext_resource type="Script" uid="uid://d1p4ite8ts2wi" path="res://Scripts/LightController.gd" id="4_8suoo"] [ext_resource type="Script" uid="uid://d1p4ite8ts2wi" path="res://Scripts/LightController.gd" id="4_8suoo"]
@ -13,7 +14,7 @@ ambient_light_source = 1
[node name="Chuck" parent="." instance=ExtResource("1_t27ru")] [node name="Chuck" parent="." instance=ExtResource("1_t27ru")]
transform = Transform3D(-1.5, 0, -1.31134e-07, 0, 1.5, 0, 1.31134e-07, 0, -1.5, -2, 2, 0.312) transform = Transform3D(-1.5, 0, -1.31134e-07, 0, 1.5, 0, 1.31134e-07, 0, -1.5, -2, 2, 0.312)
script = ExtResource("2_8qvk7") script = ExtResource("2_htppt")
[node name="Warblettes" parent="." instance=ExtResource("3_t27ru")] [node name="Warblettes" parent="." instance=ExtResource("3_t27ru")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 4, 0.5) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 4, 0.5)

View file

@ -0,0 +1,660 @@
extends Node
var CyberChuck = {
"Chuck E. Hat":
{
"Derby":
{
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
"Chuck/Chuck/Skeleton3D/Derby": true,
"Chuck/Chuck/Skeleton3D/Tux Derby": false,
"Chuck/Chuck/Skeleton3D/Blue Cool Chuck Hat": false,
},
"Tux Derby":
{
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
"Chuck/Chuck/Skeleton3D/Derby": false,
"Chuck/Chuck/Skeleton3D/Tux Derby": true,
"Chuck/Chuck/Skeleton3D/Blue Cool Chuck Hat": false,
},
"Cool Chuck":
{
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": true,
"Chuck/Chuck/Skeleton3D/Derby": false,
"Chuck/Chuck/Skeleton3D/Tux Derby": false,
"Chuck/Chuck/Skeleton3D/Blue Cool Chuck Hat": false,
},
"Cool Chuck (Blue)":
{
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
"Chuck/Chuck/Skeleton3D/Derby": false,
"Chuck/Chuck/Skeleton3D/Tux Derby": false,
"Chuck/Chuck/Skeleton3D/Blue Cool Chuck Hat": true,
},
"Avenger":
{
"Chuck/Chuck/Skeleton3D/Avenger Hat": true,
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
"Chuck/Chuck/Skeleton3D/Derby": false,
"Chuck/Chuck/Skeleton3D/Tux Derby": false,
"Chuck/Chuck/Skeleton3D/Blue Cool Chuck Hat": false,
},
"None":
{
"Chuck/Chuck/Skeleton3D/Avenger Hat": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Hat": false,
"Chuck/Chuck/Skeleton3D/Derby": false,
"Chuck/Chuck/Skeleton3D/Tux Derby": false,
"Chuck/Chuck/Skeleton3D/Blue Cool Chuck Hat": false,
}
},
"Chuck E. Shirt":
{
"Yellow Checker Vest":
{
"Chuck/Chuck/Skeleton3D/Rockstar Shirt": false,
"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,
"Chuck/Chuck/Skeleton3D/Red Bowtie": false,
"Chuck/Chuck/Skeleton3D/Tux Button": false,
"Chuck/Chuck/Skeleton3D/Lapel": false,
"Chuck/Chuck/Skeleton3D/Tux Base": false,
},
"Red Vest":
{
"Chuck/Chuck/Skeleton3D/Rockstar Shirt": false,
"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,
"Chuck/Chuck/Skeleton3D/Red Bowtie": false,
"Chuck/Chuck/Skeleton3D/Tux Button": false,
"Chuck/Chuck/Skeleton3D/Lapel": false,
"Chuck/Chuck/Skeleton3D/Tux Base": false,
},
"Tux":
{
"Chuck/Chuck/Skeleton3D/Rockstar Shirt": false,
"Chuck/Chuck/Skeleton3D/Avenger Shirt": false,
"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/Chuck/Skeleton3D/Red Bowtie": true,
"Chuck/Chuck/Skeleton3D/Tux Button": true,
"Chuck/Chuck/Skeleton3D/Lapel": true,
"Chuck/Chuck/Skeleton3D/Tux Base": true,
},
"Cool Chuck Shirt":
{
"Chuck/Chuck/Skeleton3D/Rockstar Shirt": false,
"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,
"Chuck/Chuck/Skeleton3D/Red Bowtie": false,
"Chuck/Chuck/Skeleton3D/Tux Button": false,
"Chuck/Chuck/Skeleton3D/Lapel": false,
"Chuck/Chuck/Skeleton3D/Tux Base": false,
},
"Avenger Shirt":
{
"Chuck/Chuck/Skeleton3D/Rockstar Shirt": false,
"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/Chuck/Skeleton3D/Red Bowtie": false,
"Chuck/Chuck/Skeleton3D/Tux Button": false,
"Chuck/Chuck/Skeleton3D/Lapel": false,
"Chuck/Chuck/Skeleton3D/Tux Base": false,
},
"Rockstar Shirt":
{
"Chuck/Chuck/Skeleton3D/Rockstar Shirt": true,
"Chuck/Chuck/Skeleton3D/Avenger Shirt": false,
"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/Chuck/Skeleton3D/Red Bowtie": false,
"Chuck/Chuck/Skeleton3D/Tux Button": false,
"Chuck/Chuck/Skeleton3D/Lapel": false,
"Chuck/Chuck/Skeleton3D/Tux Base": false,
}
},
"Chuck E. Mask":
{
"PTT":
{
"Chuck/Chuck/Skeleton3D/PTT Ears": true,
"Chuck/Chuck/Skeleton3D/PTT Jaw": true,
"Chuck/Chuck/Skeleton3D/PTT Muzzle": true,
"Chuck/Chuck/Skeleton3D/Modern Ears": false,
"Chuck/Chuck/Skeleton3D/Modern Jaw": false,
"Chuck/Chuck/Skeleton3D/Modern Muzzle": false,
"Chuck/Chuck/Skeleton3D/Northridge Ears": false,
},
"Modern":
{
"Chuck/Chuck/Skeleton3D/PTT Ears": false,
"Chuck/Chuck/Skeleton3D/PTT Jaw": false,
"Chuck/Chuck/Skeleton3D/PTT Muzzle": false,
"Chuck/Chuck/Skeleton3D/Modern Ears": true,
"Chuck/Chuck/Skeleton3D/Modern Jaw": true,
"Chuck/Chuck/Skeleton3D/Modern Muzzle": true,
"Chuck/Chuck/Skeleton3D/Northridge Ears": false,
},
"Northridge":
{
"Chuck/Chuck/Skeleton3D/PTT Ears": false,
"Chuck/Chuck/Skeleton3D/PTT Jaw": false,
"Chuck/Chuck/Skeleton3D/PTT Muzzle": false,
"Chuck/Chuck/Skeleton3D/Modern Ears": false,
"Chuck/Chuck/Skeleton3D/Modern Jaw": true,
"Chuck/Chuck/Skeleton3D/Modern Muzzle": true,
"Chuck/Chuck/Skeleton3D/Northridge Ears": 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,
},
},
"Chuck E. Legs":
{
"None":
{
"Chuck/Chuck/Skeleton3D/Stand": true,
"Chuck/Chuck/Skeleton3D/Legs": false,
"Chuck/Chuck/Skeleton3D/Feet": false,
},
"Normal":
{
"Chuck/Chuck/Skeleton3D/Stand": false,
"Chuck/Chuck/Skeleton3D/Legs": true,
"Chuck/Chuck/Skeleton3D/Feet": true,
}
},
"Chuck E. Pants":
{
"None":
{
"Chuck/Chuck/Skeleton3D/Avenger Shorts": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Shorts": false,
"Chuck/Chuck/Skeleton3D/Rockstar Jeans": false,
},
"Cool Chuck Shorts":
{
"Chuck/Chuck/Skeleton3D/Avenger Shorts": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Shorts": true,
"Chuck/Chuck/Skeleton3D/Rockstar Jeans": false,
},
"Avenger Shorts":
{
"Chuck/Chuck/Skeleton3D/Avenger Shorts": true,
"Chuck/Chuck/Skeleton3D/Cool Chuck Shorts": false,
"Chuck/Chuck/Skeleton3D/Rockstar Jeans": false,
},
"Rockstar Jeans":
{
"Chuck/Chuck/Skeleton3D/Avenger Shorts": false,
"Chuck/Chuck/Skeleton3D/Cool Chuck Shorts": false,
"Chuck/Chuck/Skeleton3D/Rockstar Jeans": true,
}
},
}
var CyberHelen = {
"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":
{
"PTT":
{
"Helen/Helen/Skeleton3D/PTT Shirt": true,
"Helen/Helen/Skeleton3D/Half Body Skirt": false,
"Helen/Helen/Skeleton3D/Skirt": false,
"Helen/Helen/Skeleton3D/Black Shirt": false,
"Helen/Helen/Skeleton3D/Collar": false,
},
"Road Stage":
{
"Helen/Helen/Skeleton3D/PTT Shirt": false,
"Helen/Helen/Skeleton3D/Half Body Skirt": true,
"Helen/Helen/Skeleton3D/Skirt": false,
"Helen/Helen/Skeleton3D/Black Shirt": true,
"Helen/Helen/Skeleton3D/Collar": true,
},
"Modern":
{
"Helen/Helen/Skeleton3D/PTT Shirt": false,
"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":
{
"PTT":
{
"Helen/Helen/Skeleton3D/Modern Hair": false,
"Helen/Helen/Skeleton3D/Modern Hair Yellow": false,
"Helen/Helen/Skeleton3D/Road Stage Hair": false,
"Helen/Helen/Skeleton3D/PTT Hair": true,
},
"Road Stage":
{
"Helen/Helen/Skeleton3D/Modern Hair": false,
"Helen/Helen/Skeleton3D/Modern Hair Yellow": false,
"Helen/Helen/Skeleton3D/Road Stage Hair": true,
"Helen/Helen/Skeleton3D/PTT Hair": false,
},
"Modern":
{
"Helen/Helen/Skeleton3D/Modern Hair": true,
"Helen/Helen/Skeleton3D/Modern Hair Yellow": false,
"Helen/Helen/Skeleton3D/Road Stage Hair": false,
"Helen/Helen/Skeleton3D/PTT Hair": false,
},
"Modern Yellow":
{
"Helen/Helen/Skeleton3D/Modern Hair": false,
"Helen/Helen/Skeleton3D/Modern Hair Yellow": true,
"Helen/Helen/Skeleton3D/Road Stage Hair": false,
"Helen/Helen/Skeleton3D/PTT Hair": false,
},
},
"Helen Mask":
{
"PTT":
{
"Helen/Helen/Skeleton3D/PTT Mask": true,
"Helen/Helen/Skeleton3D/PTT Jaw": true,
"Helen/Helen/Skeleton3D/PTT Beak": true,
"Helen/Helen/Skeleton3D/PTT Mask Crest": true,
"Helen/Helen/Skeleton3D/PTT Red Mouth Parts": true,
"Helen/Helen/Skeleton3D/PTT Eyeshadow": true,
"Helen/Helen/Skeleton3D/Modern Head": false,
"Helen/Helen/Skeleton3D/Modern Mask": false,
"Helen/Helen/Skeleton3D/Road Stage Jaw": false,
"Helen/Helen/Skeleton3D/Road Stage Beak": false,
"Helen/Helen/Skeleton3D/Modern Jaw": false,
"Helen/Helen/Skeleton3D/Modern Beak": false,
},
"Road Stage":
{
"Helen/Helen/Skeleton3D/PTT Mask": false,
"Helen/Helen/Skeleton3D/PTT Jaw": false,
"Helen/Helen/Skeleton3D/PTT Beak": false,
"Helen/Helen/Skeleton3D/PTT Mask Crest": false,
"Helen/Helen/Skeleton3D/PTT Red Mouth Parts": false,
"Helen/Helen/Skeleton3D/PTT Eyeshadow": false,
"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/PTT Mask": false,
"Helen/Helen/Skeleton3D/PTT Jaw": false,
"Helen/Helen/Skeleton3D/PTT Beak": false,
"Helen/Helen/Skeleton3D/PTT Mask Crest": false,
"Helen/Helen/Skeleton3D/PTT Red Mouth Parts": false,
"Helen/Helen/Skeleton3D/PTT Eyeshadow": false,
"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,
},
},
"Helen Legs":
{
"None":
{
"Helen/Helen/Skeleton3D/Stand": true,
"Helen/Helen/Skeleton3D/Legs": false,
"Helen/Helen/Skeleton3D/Shoes": false,
},
"Modern Standing":
{
"Helen/Helen/Skeleton3D/Stand": false,
"Helen/Helen/Skeleton3D/Legs": true,
"Helen/Helen/Skeleton3D/Shoes": true,
}
},
}
var CyberMunch = {
"Munch Hat":
{
"None":
{
"Munch/Munch/Skeleton3D/Road Stage Hat": false,
"Munch/Munch/Skeleton3D/Modern Hat": false,
},
"Road Stage":
{
"Munch/Munch/Skeleton3D/Road Stage Hat": true,
"Munch/Munch/Skeleton3D/Modern Hat": false,
},
"Modern":
{
"Munch/Munch/Skeleton3D/Road Stage Hat": false,
"Munch/Munch/Skeleton3D/Modern Hat": true,
},
},
"Munch Mask":
{
"PTT":
{
"Munch/Munch/Skeleton3D/PTT Nostrils": true,
"Munch/Munch/Skeleton3D/Modern Nostrils": false,
},
"Modern":
{
"Munch/Munch/Skeleton3D/PTT Nostrils": false,
"Munch/Munch/Skeleton3D/Modern Nostrils": true,
},
},
"Munch Body":
{
"PTT":
{
"Munch/Munch/Skeleton3D/PTT Torso": true,
"Munch/Munch/Skeleton3D/PTT Arms": true,
"Munch/Munch/Skeleton3D/PTT Left Hand": true,
"Munch/Munch/Skeleton3D/PTT Right Hand": true,
"Munch/Munch/Skeleton3D/Modern Torso": false,
"Munch/Munch/Skeleton3D/Modern Arms": false,
"Munch/Munch/Skeleton3D/Modern Left Hand": false,
"Munch/Munch/Skeleton3D/Modern Right Hand": false,
},
"Modern":
{
"Munch/Munch/Skeleton3D/PTT Torso": false,
"Munch/Munch/Skeleton3D/PTT Arms": false,
"Munch/Munch/Skeleton3D/PTT Left Hand": false,
"Munch/Munch/Skeleton3D/PTT Right Hand": false,
"Munch/Munch/Skeleton3D/Modern Torso": true,
"Munch/Munch/Skeleton3D/Modern Arms": true,
"Munch/Munch/Skeleton3D/Modern Left Hand": true,
"Munch/Munch/Skeleton3D/Modern Right Hand": true,
},
},
"Munch Legs":
{
"None":
{
"Munch/Munch/Skeleton3D/Legs": false,
"Munch/Munch/Skeleton3D/Shoes": false,
},
"Modern":
{
"Munch/Munch/Skeleton3D/Legs": true,
"Munch/Munch/Skeleton3D/Shoes": true,
},
},
}
var CyberJasper = {
"Jasper Hat":
{
"PTT":
{
"Jasper/Jasper/Skeleton3D/Straw Hat Small": true,
"Jasper/Jasper/Skeleton3D/Straw Hat Large": false,
"Jasper/Jasper/Skeleton3D/Cowboy Hat": false,
},
"Rocker":
{
"Jasper/Jasper/Skeleton3D/Straw Hat Small": false,
"Jasper/Jasper/Skeleton3D/Straw Hat Large": true,
"Jasper/Jasper/Skeleton3D/Cowboy Hat": false,
},
"Modern":
{
"Jasper/Jasper/Skeleton3D/Straw Hat Small": false,
"Jasper/Jasper/Skeleton3D/Straw Hat Large": false,
"Jasper/Jasper/Skeleton3D/Cowboy Hat": true,
},
},
"Jasper Shirt":
{
"PTT":
{
"Jasper/Jasper/Skeleton3D/Red Shirt": true,
"Jasper/Jasper/Skeleton3D/Rocker Shirt": false,
"Jasper/Jasper/Skeleton3D/Cow Print Shirt": false,
},
"Rocker":
{
"Jasper/Jasper/Skeleton3D/Red Shirt": false,
"Jasper/Jasper/Skeleton3D/Rocker Shirt": true,
"Jasper/Jasper/Skeleton3D/Cow Print Shirt": false,
},
"Modern":
{
"Jasper/Jasper/Skeleton3D/Red Shirt": false,
"Jasper/Jasper/Skeleton3D/Rocker Shirt": false,
"Jasper/Jasper/Skeleton3D/Cow Print Shirt": true,
},
},
"Jasper Guitar":
{
"Banjo":
{
"Jasper/Jasper/Skeleton3D/Banjo": true,
"Jasper/Jasper/Skeleton3D/Cheese Guitar": false,
},
"Cheese Guitar":
{
"Jasper/Jasper/Skeleton3D/Banjo": false,
"Jasper/Jasper/Skeleton3D/Cheese Guitar": true,
},
},
"Jasper Bandana":
{
"Blue":
{
"Jasper/Jasper/Skeleton3D/Blue Bandana": true,
"Jasper/Jasper/Skeleton3D/Red Bandana": false,
},
"Red":
{
"Jasper/Jasper/Skeleton3D/Blue Bandana": false,
"Jasper/Jasper/Skeleton3D/Red Bandana": true,
},
},
"Jasper Overalls":
{
"Normal":
{
"Jasper/Jasper/Skeleton3D/Overalls": true,
},
"None":
{
"Jasper/Jasper/Skeleton3D/Overalls": false,
},
},
"Jasper Legs":
{
"None":
{
"Jasper/Jasper/Skeleton3D/Pants": false,
"Jasper/Jasper/Skeleton3D/Shoes": false,
},
"Normal":
{
"Jasper/Jasper/Skeleton3D/Pants": true,
"Jasper/Jasper/Skeleton3D/Shoes": true,
},
},
}
var CyberPasqually = {
"Pasqually Body":
{
"PTT":
{
"Pasqually/Pasqually/Skeleton3D/PTT Torso": true,
"Pasqually/Pasqually/Skeleton3D/PTT Arms": true,
"Pasqually/Pasqually/Skeleton3D/PTT Left Hand": true,
"Pasqually/Pasqually/Skeleton3D/PTT Right Hand": true,
"Pasqually/Pasqually/Skeleton3D/Modern Torso": false,
"Pasqually/Pasqually/Skeleton3D/Modern Arms": false,
"Pasqually/Pasqually/Skeleton3D/Modern Left Hand": false,
"Pasqually/Pasqually/Skeleton3D/Modern Right Hand": false,
},
"Modern":
{
"Pasqually/Pasqually/Skeleton3D/PTT Torso": false,
"Pasqually/Pasqually/Skeleton3D/PTT Arms": false,
"Pasqually/Pasqually/Skeleton3D/PTT Left Hand": false,
"Pasqually/Pasqually/Skeleton3D/PTT Right Hand": false,
"Pasqually/Pasqually/Skeleton3D/Modern Torso": true,
"Pasqually/Pasqually/Skeleton3D/Modern Arms": true,
"Pasqually/Pasqually/Skeleton3D/Modern Left Hand": true,
"Pasqually/Pasqually/Skeleton3D/Modern Right Hand": true,
},
},
"Pasqually Legs":
{
"None":
{
"Pasqually/Pasqually/Skeleton3D/Legs": false,
"Pasqually/Pasqually/Skeleton3D/Shoes": false,
},
"Normal":
{
"Pasqually/Pasqually/Skeleton3D/Legs": true,
"Pasqually/Pasqually/Skeleton3D/Shoes": true,
},
},
"Pasqually Held Item":
{
"Accordion":
{
"Pasqually/Pasqually/Skeleton3D/Spoons": false,
"Pasqually/Pasqually/Skeleton3D/Drumsticks": false,
"Pasqually/Pasqually/Skeleton3D/Accordion": true,
},
"None":
{
"Pasqually/Pasqually/Skeleton3D/Spoons": false,
"Pasqually/Pasqually/Skeleton3D/Drumsticks": false,
"Pasqually/Pasqually/Skeleton3D/Accordion": false,
},
"Spoons":
{
"Pasqually/Pasqually/Skeleton3D/Spoons": true,
"Pasqually/Pasqually/Skeleton3D/Drumsticks": false,
"Pasqually/Pasqually/Skeleton3D/Accordion": false,
},
"Drumsticks":
{
"Pasqually/Pasqually/Skeleton3D/Spoons": false,
"Pasqually/Pasqually/Skeleton3D/Drumsticks": true,
"Pasqually/Pasqually/Skeleton3D/Accordion": false,
},
},
}
var HelenHouseHelen = {
"Helen Hair":
{
"Black and White":
{
"Helen/Helen/Skeleton3D/BWHair": true,
"Helen/Helen/Skeleton3D/YellowHair": false,
},
"Yellow":
{
"Helen/Helen/Skeleton3D/BWHair": false,
"Helen/Helen/Skeleton3D/YellowHair": true,
},
},
"Helen Dress":
{
"Tux":
{
"Helen/Helen/Skeleton3D/Collar": true,
"Helen/Helen/Skeleton3D/Torso": true,
"Helen/Helen/Skeleton3D/Skirt": true,
"Helen/Helen/Skeleton3D/CheerDress": false,
},
"Cheerleader":
{
"Helen/Helen/Skeleton3D/Collar": false,
"Helen/Helen/Skeleton3D/Torso": false,
"Helen/Helen/Skeleton3D/Skirt": false,
"Helen/Helen/Skeleton3D/CheerDress": true,
}
}
}

View file

@ -0,0 +1 @@
uid://bnddq01t7dtqc

249
Scripts/Configs/Stages.gd Normal file
View file

@ -0,0 +1,249 @@
extends Node
var HelenHouse = {
"bits": 20,
"scene": "res://Scenes/Stages/HelenHouse.tscn",
"scene_ref_base": "SubViewport/HelenHouse/",
"camera_count": 2,
"ust_type": "Rockafire Explosion/3-Stage",
"bit_mapping":
{
23: { "bot": "Helen", "movement": "Mouth", "flow_in": 3.0, "flow_out": 2.0 },
24: { "bot": "Helen", "movement": "Left Ear", "flow_in": 3.5, "flow_out": 1.5 },
25: { "bot": "Helen", "movement": "Right Ear", "flow_in": 3.5, "flow_out": 1.5 },
26: { "bot": "Helen", "movement": "Left Eyelid", "flow_in": 1.5, "flow_out": 2.0 },
27: { "bot": "Helen", "movement": "Right Eyelid", "flow_in": 1.5, "flow_out": 2.0 },
28: { "bot": "Helen", "movement": "Eyes Left", "flow_in": 3.5, "flow_out": 1.5 },
29: { "bot": "Helen", "movement": "Eyes Right", "flow_in": 3.5, "flow_out": 1.5 },
30: { "bot": "Helen", "movement": "Head Left", "flow_in": 1.5, "flow_out": 1.5 },
31: { "bot": "Helen", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
32: { "bot": "Helen", "movement": "Head Up", "flow_in": 1.0, "flow_out": 1.0 },
33: { "bot": "Helen", "movement": "Left Arm Up", "flow_in": 0.8, "flow_out": 0.6 },
34: { "bot": "Helen", "movement": "Left Arm Twist", "flow_in": 0.8, "flow_out": 0.8 },
35: { "bot": "Helen", "movement": "Left Elbow", "flow_in": 1.0, "flow_out": 1.0 },
36: { "bot": "Helen", "movement": "Right Arm Up", "flow_in": 0.8, "flow_out": 0.6 },
37: { "bot": "Helen", "movement": "Right Arm Twist", "flow_in": 0.8, "flow_out": 0.8 },
38: { "bot": "Helen", "movement": "Right Elbow", "flow_in": 1.0, "flow_out": 1.0 },
39: { "bot": "Helen", "movement": "Body Left", "flow_in": 0.7, "flow_out": 0.7 },
40: { "bot": "Helen", "movement": "Body Right", "flow_in": 0.7, "flow_out": 0.7 },
41: { "bot": "Helen", "movement": "Body Lean", "flow_in": 1.0, "flow_out": 0.8 },
125: { "bot": "Spots", "movement": "Helen", "flow_in": "None", "flow_out": "None" },
},
"cosmetics": [ Cosmetics.HelenHouseHelen ],
"cosmetic_defaults": [ 0, 0 ]
}
var ChuckEsCorner = {
"bits": 16,
"scene": "res://Scenes/Stages/ChuckEsCorner.tscn",
"scene_ref_base": "SubViewport/ChuckEsCorner/",
"camera_count": 3,
"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": 1.5, "flow_out": 1.5 },
3: { "bot": "Chuck", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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 },
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" },
55: { "bot": "Floods", "movement": "Blue", "flow_in": "None", "flow_out": "None" },
78: { "bot": "Spots", "movement": "Warblettes", "flow_in": "None", "flow_out": "None" },
79: { "bot": "Color Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
82: { "bot": "Floods", "movement": "Red", "flow_in": "None", "flow_out": "None" },
86: { "bot": "Floods", "movement": "Green", "flow_in": "None", "flow_out": "None" },
},
"cosmetics": [ Cosmetics.CyberChuck ],
"cosmetic_defaults": [ 0, 1, 0, 0, 0, 0 ]
}
var BalconyStage = {
"bits": 69,
"scene": "res://Scenes/Stages/Balcony.tscn",
"scene_ref_base": "SubViewport/Balcony/",
"camera_count": 6,
"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": 1.5, "flow_out": 1.5 },
3: { "bot": "Chuck", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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": 1.5, "flow_out": 1.5 },
11: { "bot": "Helen", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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 },
17: { "bot": "Munch", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
18: { "bot": "Munch", "movement": "Head Left", "flow_in": 1.5, "flow_out": 1.5 },
19: { "bot": "Munch", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
20: { "bot": "Munch", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
21: { "bot": "Munch", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
22: { "bot": "Munch", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
23: { "bot": "Munch", "movement": "Right Arm", "flow_in": 2.0, "flow_out": 1.0 },
24: { "bot": "Munch", "movement": "Left 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.5, "flow_out": 1.5 },
27: { "bot": "Jasper", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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 },
33: { "bot": "Pasqually", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
34: { "bot": "Pasqually", "movement": "Head Left", "flow_in": 1.5, "flow_out": 1.5 },
35: { "bot": "Pasqually", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
36: { "bot": "Pasqually", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
37: { "bot": "Pasqually", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
38: { "bot": "Pasqually", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
39: { "bot": "Pasqually", "movement": "Right Arm", "flow_in": 2.0, "flow_out": 1.0 },
40: { "bot": "Pasqually", "movement": "Left Arm", "flow_in": 2.0, "flow_out": 1.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 },
50: { "bot": "Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
51: { "bot": "Spots", "movement": "Helen", "flow_in": "None", "flow_out": "None" },
52: { "bot": "Spots", "movement": "Munch", "flow_in": "None", "flow_out": "None" },
53: { "bot": "Spots", "movement": "Jasper", "flow_in": "None", "flow_out": "None" },
54: { "bot": "Spots", "movement": "Pasqually", "flow_in": "None", "flow_out": "None" },
55: { "bot": "Backdrop", "movement": "C Blue", "flow_in": "None", "flow_out": "None" },
65: { "bot": "Backdrop", "movement": "L Blue", "flow_in": "None", "flow_out": "None" },
66: { "bot": "Valence", "movement": "R Center", "flow_in": "None", "flow_out": "None" },
68: { "bot": "Backdrop", "movement": "L Red", "flow_in": "None", "flow_out": "None" },
69: { "bot": "Valence", "movement": "R", "flow_in": "None", "flow_out": "None" },
70: { "bot": "Backdrop", "movement": "L Amber", "flow_in": "None", "flow_out": "None" },
71: { "bot": "Valence", "movement": "L Center", "flow_in": "None", "flow_out": "None" },
72: { "bot": "Valence", "movement": "L", "flow_in": "None", "flow_out": "None" },
73: { "bot": "Valence", "movement": "Center", "flow_in": "None", "flow_out": "None" },
74: { "bot": "Color Spots", "movement": "Warblettes", "flow_in": "None", "flow_out": "None" },
75: { "bot": "Color Spots", "movement": "Munch", "flow_in": "None", "flow_out": "None" },
76: { "bot": "Color Spots", "movement": "Helen", "flow_in": "None", "flow_out": "None" },
77: { "bot": "Color Spots", "movement": "Jasper", "flow_in": "None", "flow_out": "None" },
78: { "bot": "Spots", "movement": "Warblettes", "flow_in": "None", "flow_out": "None" },
79: { "bot": "Color Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
80: { "bot": "Color Spots", "movement": "Chuck 2", "flow_in": "None", "flow_out": "None" },
81: { "bot": "Backdrop", "movement": "R Amber", "flow_in": "None", "flow_out": "None" },
82: { "bot": "Backdrop", "movement": "C Red", "flow_in": "None", "flow_out": "None" },
83: { "bot": "Backdrop", "movement": "R Blue", "flow_in": "None", "flow_out": "None" },
84: { "bot": "Color Spots", "movement": "Pasqually", "flow_in": "None", "flow_out": "None" },
85: { "bot": "Backdrop", "movement": "R Red", "flow_in": "None", "flow_out": "None" },
86: { "bot": "Backdrop", "movement": "C Amber", "flow_in": "None", "flow_out": "None" },
},
"cosmetics":
[
Cosmetics.CyberChuck,
Cosmetics.CyberHelen,
Cosmetics.CyberMunch,
Cosmetics.CyberJasper,
Cosmetics.CyberPasqually
],
"cosmetic_defaults": [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
}
var CStage = {
"bits": 65,
"scene": "res://Scenes/Stages/CStage.tscn",
"scene_ref_base": "SubViewport/CStage/",
"camera_count": 5,
"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": 1.5, "flow_out": 1.5 },
3: { "bot": "Chuck", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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": 1.5, "flow_out": 1.5 },
11: { "bot": "Helen", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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 },
17: { "bot": "Munch", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
18: { "bot": "Munch", "movement": "Head Left", "flow_in": 1.5, "flow_out": 1.5 },
19: { "bot": "Munch", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
20: { "bot": "Munch", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
21: { "bot": "Munch", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
22: { "bot": "Munch", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
23: { "bot": "Munch", "movement": "Right Arm", "flow_in": 2.0, "flow_out": 1.0 },
24: { "bot": "Munch", "movement": "Left 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.5, "flow_out": 1.5 },
27: { "bot": "Jasper", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
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 },
33: { "bot": "Pasqually", "movement": "Mouth", "flow_in": 7.5, "flow_out": 6.0 },
34: { "bot": "Pasqually", "movement": "Head Left", "flow_in": 1.5, "flow_out": 1.5 },
35: { "bot": "Pasqually", "movement": "Head Right", "flow_in": 1.5, "flow_out": 1.5 },
36: { "bot": "Pasqually", "movement": "Eyes Left", "flow_in": 4.0, "flow_out": 3.0 },
37: { "bot": "Pasqually", "movement": "Eyes Right", "flow_in": 4.0, "flow_out": 3.0 },
38: { "bot": "Pasqually", "movement": "Eyelids", "flow_in": 7.5, "flow_out": 5.0 },
39: { "bot": "Pasqually", "movement": "Right Arm", "flow_in": 2.0, "flow_out": 1.0 },
40: { "bot": "Pasqually", "movement": "Left Arm", "flow_in": 2.0, "flow_out": 1.0 },
50: { "bot": "Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
51: { "bot": "Spots", "movement": "Helen", "flow_in": "None", "flow_out": "None" },
52: { "bot": "Spots", "movement": "Munch", "flow_in": "None", "flow_out": "None" },
53: { "bot": "Spots", "movement": "Jasper", "flow_in": "None", "flow_out": "None" },
54: { "bot": "Spots", "movement": "Pasqually", "flow_in": "None", "flow_out": "None" },
55: { "bot": "Backdrop", "movement": "C Blue", "flow_in": "None", "flow_out": "None" },
65: { "bot": "Backdrop", "movement": "L Blue", "flow_in": "None", "flow_out": "None" },
66: { "bot": "Valence", "movement": "R Center", "flow_in": "None", "flow_out": "None" },
68: { "bot": "Backdrop", "movement": "L Red", "flow_in": "None", "flow_out": "None" },
69: { "bot": "Valence", "movement": "R", "flow_in": "None", "flow_out": "None" },
70: { "bot": "Backdrop", "movement": "L Amber", "flow_in": "None", "flow_out": "None" },
71: { "bot": "Valence", "movement": "L Center", "flow_in": "None", "flow_out": "None" },
72: { "bot": "Valence", "movement": "L", "flow_in": "None", "flow_out": "None" },
73: { "bot": "Valence", "movement": "Center", "flow_in": "None", "flow_out": "None" },
75: { "bot": "Color Spots", "movement": "Munch", "flow_in": "None", "flow_out": "None" },
76: { "bot": "Color Spots", "movement": "Helen", "flow_in": "None", "flow_out": "None" },
77: { "bot": "Color Spots", "movement": "Jasper", "flow_in": "None", "flow_out": "None" },
79: { "bot": "Color Spots", "movement": "Chuck", "flow_in": "None", "flow_out": "None" },
80: { "bot": "Color Spots", "movement": "Chuck 2", "flow_in": "None", "flow_out": "None" },
81: { "bot": "Backdrop", "movement": "R Amber", "flow_in": "None", "flow_out": "None" },
82: { "bot": "Backdrop", "movement": "C Red", "flow_in": "None", "flow_out": "None" },
83: { "bot": "Backdrop", "movement": "R Blue", "flow_in": "None", "flow_out": "None" },
84: { "bot": "Color Spots", "movement": "Pasqually", "flow_in": "None", "flow_out": "None" },
85: { "bot": "Backdrop", "movement": "R Red", "flow_in": "None", "flow_out": "None" },
86: { "bot": "Backdrop", "movement": "C Amber", "flow_in": "None", "flow_out": "None" },
},
"cosmetics":
[
Cosmetics.CyberChuck,
Cosmetics.CyberHelen,
Cosmetics.CyberMunch,
Cosmetics.CyberJasper,
Cosmetics.CyberPasqually
],
"cosmetic_defaults": [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
}

View file

@ -0,0 +1 @@
uid://cyrgqg7cf187y

View file

@ -3,14 +3,15 @@ extends Control
@export var vis_name: String @export var vis_name: String
@export var scene_handle: String @export var scene_handle: String
@export var options: Dictionary @export var options: Dictionary
@export var drop_index: int = 0
func _ready() -> void: func _ready() -> void:
$Panel/Label.text = vis_name $Panel/Label.text = vis_name
for option in options: for option in options:
$Panel/OptionButton.add_item(option) $Panel/OptionButton.add_item(option)
$Panel/OptionButton.select(0) $Panel/OptionButton.select(drop_index)
for adjusted in options[$Panel/OptionButton.get_item_text(0)]: for adjusted in options[$Panel/OptionButton.get_item_text(drop_index)]:
get_node(scene_handle+adjusted).visible = options[$Panel/OptionButton.get_item_text(0)][adjusted] get_node(scene_handle+adjusted).visible = options[$Panel/OptionButton.get_item_text(drop_index)][adjusted]
func _on_option_button_item_selected(index: int) -> void: func _on_option_button_item_selected(index: int) -> void:

View file

@ -0,0 +1,117 @@
extends Node3D
var animation_player : AnimationPlayer
var animation_tree : AnimationTree
var blend_tree : AnimationNodeBlendTree
var movement_states : Dictionary
func _ready():
animation_player = $AnimationPlayer
animation_tree = AnimationTree.new()
animation_tree.anim_player = animation_player.get_path()
add_child(animation_tree)
animation_tree.tree_root = AnimationNodeBlendTree.new()
animation_tree.active = true
blend_tree = animation_tree.tree_root as AnimationNodeBlendTree
animation_player.speed_scale = 0
var animations = animation_player.get_animation_list()
for animation in animations:
movement_states[animation] = [false, 0.0, 0.0, 0.0]
var prev_name = "Anim_" + animations[0]
var old_time_name = "Time_" + animations[0]
var old_seek_name = "Seek_" + animations[0]
var prev_anim_node := AnimationNodeAnimation.new()
prev_anim_node.animation = animations[0]
blend_tree.add_node(prev_name, prev_anim_node)
var old_time_node := AnimationNodeTimeScale.new()
blend_tree.add_node(old_time_name,old_time_node)
var _old_seek_node := AnimationNodeTimeSeek.new()
blend_tree.add_node(old_seek_name,_old_seek_node)
blend_tree.connect_node(old_time_name,0,prev_name)
blend_tree.connect_node(old_seek_name,0,old_time_name)
prev_name = old_seek_name
for i in range(1, animations.size()):
var anim_name = "Anim_" + animations[i]
var add_name = "Add_" + animations[i]
var time_name = "Time_" + animations[i]
var seek_name = "Seek_" + animations[i]
var new_anim_node := AnimationNodeAnimation.new()
new_anim_node.animation = animations[i]
blend_tree.add_node(anim_name, new_anim_node)
var time_node := AnimationNodeTimeScale.new()
blend_tree.add_node(time_name,time_node)
var seek_node := AnimationNodeTimeSeek.new()
blend_tree.add_node(seek_name,seek_node)
var add_node := AnimationNodeAdd2.new()
blend_tree.add_node(add_name, add_node)
blend_tree.connect_node(time_name, 0, anim_name)
blend_tree.connect_node(seek_name, 0, time_name)
blend_tree.connect_node(add_name, 0, prev_name)
blend_tree.connect_node(add_name, 1, seek_name)
prev_name = add_name
blend_tree.connect_node("output", 0, prev_name)
for i in range(0, animations.size()):
animation_tree.set("parameters/Add_" + str(animations[i]) + "/add_amount", 1.0)
animation_tree.set("parameters/Seek_" + str(animations[i]) + "/seek_request", 0)
animation_tree.set("parameters/Time_" + str(animations[i]) + "/scale", 0)
func _physics_process(delta: float) -> void:
for key in movement_states:
var anim_path = "parameters/Seek_" + key + "/seek_request"
var state = movement_states[key]
if (state[0]):
state[1] = clamp(float(state[1]) + (delta * state[2]), 0, 1)
else:
state[1] = clamp(float(state[1]) - (delta * state[3]), 0, 1)
animation_tree.set(anim_path, state[1])
func _movement_in(movement, rate):
var adjusted_rate = rate
if (movement == "Head Left"):
if (movement_states["Head Right"][0]): adjusted_rate = rate*0.5
movement_states["Head Right"][0] = false
movement_states["Head Right"][3] = rate
movement_states["Body Left"][0] = true
movement_states["Body Left"][2] = rate*0.4
movement_states["Body Right"][0] = false
movement_states["Body Right"][3] = rate*0.4
elif (movement == "Head Right"):
if (movement_states["Head Left"][0]): adjusted_rate = rate*0.5
movement_states["Head Left"][0] = false
movement_states["Head Left"][3] = rate
movement_states["Body Right"][0] = true
movement_states["Body Right"][2] = rate*0.4
movement_states["Body Left"][0] = false
movement_states["Body Left"][3] = rate*0.4
movement_states[movement][0] = true
movement_states[movement][2] = adjusted_rate
func _movement_out(movement, rate):
if (movement == "Head Left"):
movement_states["Body Right"][0] = false
movement_states["Body Right"][3] = 0
elif (movement == "Head Right"):
movement_states["Body Left"][0] = false
movement_states["Body Left"][3] = 0
else:
movement_states[movement][0] = false
movement_states[movement][3] = rate

View file

@ -0,0 +1 @@
uid://du3pqtf3jixvl

File diff suppressed because it is too large Load diff

BIN
UI/icon-512px.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

34
UI/icon-512px.png.import Normal file
View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://den5alc77qk1s"
path="res://.godot/imported/icon-512px.png-a2c06b50a2747ba3e5b560ba78d8d161.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/icon-512px.png"
dest_files=["res://.godot/imported/icon-512px.png-a2c06b50a2747ba3e5b560ba78d8d161.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -11,14 +11,20 @@ config_version=5
[application] [application]
config/name="Pneumatic Plaything" config/name="Pneumatic Plaything"
config/description="Animatronic Simulator"
config/version="v0.7" config/version="v0.7"
run/main_scene="uid://oiehbor0dlqx" 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://den5alc77qk1s"
config/macos_native_icon="res://UI/icon.icns" config/macos_native_icon="res://UI/icon.icns"
config/windows_native_icon="res://UI/icon.ico" config/windows_native_icon="res://UI/icon.ico"
[autoload]
Cosmetics="*res://Scripts/Configs/Cosmetics.gd"
Stages="*res://Scripts/Configs/Stages.gd"
[display] [display]
window/size/viewport_width=1280 window/size/viewport_width=1280