Compare commits
46 commits
Author | SHA1 | Date | |
---|---|---|---|
ca6aa59cb5 | |||
55154d1f4f | |||
82204a993e | |||
6f4591e96f | |||
9c73066806 | |||
![]() |
91a348dffd | ||
![]() |
baf25e727b | ||
c1c9652f4a | |||
2684825d87 | |||
be6950184a | |||
121fc1a005 | |||
4343279e4c | |||
b79938cd96 | |||
ea15a4fef5 | |||
c825d8695d | |||
89ef861563 | |||
d0bdd422fb | |||
171031ea95 | |||
dba0d65b25 | |||
3ee2cffa37 | |||
7c42de8882 | |||
dfae037276 | |||
e2c4591a21 | |||
3bb939dfb1 | |||
f9d1af7def | |||
09902415ed | |||
1008ce2e20 | |||
c94ec3396a | |||
5ef7b90c1e | |||
1a3e5494f4 | |||
b0dc8309bd | |||
afa270d814 | |||
817c36a5df | |||
297b5e53b6 | |||
e4bb42cf6a | |||
1fd22d3ef8 | |||
cfba845a76 | |||
5c78058a9f | |||
5fb1280e3e | |||
9544a47ee4 | |||
65ac1d73f3 | |||
cc0da859d8 | |||
d4a46928e3 | |||
aa639d4bad | |||
af364d0faa | |||
8ee16d7d26 |
BIN
Models/3-Stage/3stHelen.glb
Normal file
|
@ -4,12 +4,12 @@ importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://f0fkcs7erhop"
|
uid="uid://f0fkcs7erhop"
|
||||||
path="res://.godot/imported/3stHelen.glb-c3541fdb7863c3136dcc986fabbb06be.scn"
|
path="res://.godot/imported/3stHelen.glb-09c973ef19734a7d77b0f363ef6fade1.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Models/3stHelen.glb"
|
source_file="res://Models/3-Stage/3stHelen.glb"
|
||||||
dest_files=["res://.godot/imported/3stHelen.glb-c3541fdb7863c3136dcc986fabbb06be.scn"]
|
dest_files=["res://.godot/imported/3stHelen.glb-09c973ef19734a7d77b0f363ef6fade1.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
Before Width: | Height: | Size: 178 B After Width: | Height: | Size: 178 B |
|
@ -3,8 +3,8 @@
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bprmuf7jpffy3"
|
uid="uid://bprmuf7jpffy3"
|
||||||
path.s3tc="res://.godot/imported/3stHelen_beak.png-da72f62ca7ac7e5bf5593b4d1be3a7ee.s3tc.ctex"
|
path.s3tc="res://.godot/imported/3stHelen_beak.png-093e64b7512180691d5a4d9b4796c163.s3tc.ctex"
|
||||||
path.etc2="res://.godot/imported/3stHelen_beak.png-da72f62ca7ac7e5bf5593b4d1be3a7ee.etc2.ctex"
|
path.etc2="res://.godot/imported/3stHelen_beak.png-093e64b7512180691d5a4d9b4796c163.etc2.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
|
@ -15,8 +15,8 @@ generator_parameters={
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Models/3stHelen_beak.png"
|
source_file="res://Models/3-Stage/3stHelen_beak.png"
|
||||||
dest_files=["res://.godot/imported/3stHelen_beak.png-da72f62ca7ac7e5bf5593b4d1be3a7ee.s3tc.ctex", "res://.godot/imported/3stHelen_beak.png-da72f62ca7ac7e5bf5593b4d1be3a7ee.etc2.ctex"]
|
dest_files=["res://.godot/imported/3stHelen_beak.png-093e64b7512180691d5a4d9b4796c163.s3tc.ctex", "res://.godot/imported/3stHelen_beak.png-093e64b7512180691d5a4d9b4796c163.etc2.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
BIN
Models/3-Stage/3stHelen_cheer dress.png
Normal file
After Width: | Height: | Size: 837 B |
39
Models/3-Stage/3stHelen_cheer dress.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c78fctfafkuon"
|
||||||
|
path.s3tc="res://.godot/imported/3stHelen_cheer dress.png-c2a1c708bd40884f6dbb3748c5660c8c.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/3stHelen_cheer dress.png-c2a1c708bd40884f6dbb3748c5660c8c.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "7cedb51b071905707d033e23c77584cb"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/3-Stage/3stHelen_cheer dress.png"
|
||||||
|
dest_files=["res://.godot/imported/3stHelen_cheer dress.png-c2a1c708bd40884f6dbb3748c5660c8c.s3tc.ctex", "res://.godot/imported/3stHelen_cheer dress.png-c2a1c708bd40884f6dbb3748c5660c8c.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/3-Stage/3stHelen_fur.png
Normal file
After Width: | Height: | Size: 17 KiB |
39
Models/3-Stage/3stHelen_fur.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dtd42wohdk5nf"
|
||||||
|
path.s3tc="res://.godot/imported/3stHelen_fur.png-9bde7d93521e058da6cc6f8f43774856.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/3stHelen_fur.png-9bde7d93521e058da6cc6f8f43774856.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "d622cd261604f2451fe93281e2085d70"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/3-Stage/3stHelen_fur.png"
|
||||||
|
dest_files=["res://.godot/imported/3stHelen_fur.png-9bde7d93521e058da6cc6f8f43774856.s3tc.ctex", "res://.godot/imported/3stHelen_fur.png-9bde7d93521e058da6cc6f8f43774856.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/3-Stage/3stHelen_hair.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
39
Models/3-Stage/3stHelen_hair.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b3264mrednlbd"
|
||||||
|
path.s3tc="res://.godot/imported/3stHelen_hair.png-0b37fd8e5c162c865cb4a11d468dd921.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/3stHelen_hair.png-0b37fd8e5c162c865cb4a11d468dd921.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "35bb2072abe8c8e39214dcb47ee5fc3a"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/3-Stage/3stHelen_hair.png"
|
||||||
|
dest_files=["res://.godot/imported/3stHelen_hair.png-0b37fd8e5c162c865cb4a11d468dd921.s3tc.ctex", "res://.godot/imported/3stHelen_hair.png-0b37fd8e5c162c865cb4a11d468dd921.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
|
Before Width: | Height: | Size: 180 B After Width: | Height: | Size: 180 B |
|
@ -3,8 +3,8 @@
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cm8h5o5urcvym"
|
uid="uid://cm8h5o5urcvym"
|
||||||
path.s3tc="res://.godot/imported/3stHelen_shoes.png-97c060c3fc3442bff6f75c94bc90506a.s3tc.ctex"
|
path.s3tc="res://.godot/imported/3stHelen_shoes.png-61154e88a8b3c30e2bfb4db457818ce0.s3tc.ctex"
|
||||||
path.etc2="res://.godot/imported/3stHelen_shoes.png-97c060c3fc3442bff6f75c94bc90506a.etc2.ctex"
|
path.etc2="res://.godot/imported/3stHelen_shoes.png-61154e88a8b3c30e2bfb4db457818ce0.etc2.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
|
@ -15,8 +15,8 @@ generator_parameters={
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Models/3stHelen_shoes.png"
|
source_file="res://Models/3-Stage/3stHelen_shoes.png"
|
||||||
dest_files=["res://.godot/imported/3stHelen_shoes.png-97c060c3fc3442bff6f75c94bc90506a.s3tc.ctex", "res://.godot/imported/3stHelen_shoes.png-97c060c3fc3442bff6f75c94bc90506a.etc2.ctex"]
|
dest_files=["res://.godot/imported/3stHelen_shoes.png-61154e88a8b3c30e2bfb4db457818ce0.s3tc.ctex", "res://.godot/imported/3stHelen_shoes.png-61154e88a8b3c30e2bfb4db457818ce0.etc2.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
BIN
Models/Balcony/BalconyStage.glb
Normal file
|
@ -3,13 +3,13 @@
|
||||||
importer="scene"
|
importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://5i7srffes8ut"
|
uid="uid://c6n4otfble154"
|
||||||
path="res://.godot/imported/Helen.fbx-a3dcdd674756aa7b6860353ece3f39df.scn"
|
path="res://.godot/imported/BalconyStage.glb-30f76dcef53d0e1cd152a84572aefbee.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://3-Stage/Models/Helen.fbx"
|
source_file="res://Models/Balcony/BalconyStage.glb"
|
||||||
dest_files=["res://.godot/imported/Helen.fbx-a3dcdd674756aa7b6860353ece3f39df.scn"]
|
dest_files=["res://.godot/imported/BalconyStage.glb-30f76dcef53d0e1cd152a84572aefbee.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -28,11 +28,10 @@ meshes/force_disable_compression=false
|
||||||
skins/use_named_skins=true
|
skins/use_named_skins=true
|
||||||
animation/import=true
|
animation/import=true
|
||||||
animation/fps=30
|
animation/fps=30
|
||||||
animation/trimming=true
|
animation/trimming=false
|
||||||
animation/remove_immutable_tracks=true
|
animation/remove_immutable_tracks=true
|
||||||
animation/import_rest_as_RESET=false
|
animation/import_rest_as_RESET=false
|
||||||
import_script/path=""
|
import_script/path=""
|
||||||
_subresources={}
|
_subresources={}
|
||||||
fbx/importer=0
|
gltf/naming_version=1
|
||||||
fbx/allow_geometry_helper_nodes=false
|
gltf/embedded_image_handling=1
|
||||||
fbx/embedded_image_handling=1
|
|
BIN
Models/Balcony/BalconyStage_prankbg.png
Normal file
After Width: | Height: | Size: 558 B |
39
Models/Balcony/BalconyStage_prankbg.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cm643d4g33g6h"
|
||||||
|
path.s3tc="res://.godot/imported/BalconyStage_prankbg.png-be741b0faaf56dcb0bfe2448a6e85e19.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/BalconyStage_prankbg.png-be741b0faaf56dcb0bfe2448a6e85e19.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "437ade1d165b37a51e8dde9c8e10394d"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Balcony/BalconyStage_prankbg.png"
|
||||||
|
dest_files=["res://.godot/imported/BalconyStage_prankbg.png-be741b0faaf56dcb0bfe2448a6e85e19.s3tc.ctex", "res://.godot/imported/BalconyStage_prankbg.png-be741b0faaf56dcb0bfe2448a6e85e19.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/ChuckEsCorner/ChuckEsCornerStage.glb
Normal file
|
@ -3,13 +3,13 @@
|
||||||
importer="scene"
|
importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://cs0va7jp6fjfa"
|
uid="uid://bv66hlbvtekho"
|
||||||
path="res://.godot/imported/Chuck.fbx-e0f76e66bd2d66a68bf43edbd8d1d948.scn"
|
path="res://.godot/imported/ChuckEsCornerStage.glb-972590d495adda7be8c93e6d0989aa24.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://3-Stage/Models/Chuck.fbx"
|
source_file="res://Models/ChuckEsCorner/ChuckEsCornerStage.glb"
|
||||||
dest_files=["res://.godot/imported/Chuck.fbx-e0f76e66bd2d66a68bf43edbd8d1d948.scn"]
|
dest_files=["res://.godot/imported/ChuckEsCornerStage.glb-972590d495adda7be8c93e6d0989aa24.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -28,11 +28,10 @@ meshes/force_disable_compression=false
|
||||||
skins/use_named_skins=true
|
skins/use_named_skins=true
|
||||||
animation/import=true
|
animation/import=true
|
||||||
animation/fps=30
|
animation/fps=30
|
||||||
animation/trimming=true
|
animation/trimming=false
|
||||||
animation/remove_immutable_tracks=true
|
animation/remove_immutable_tracks=true
|
||||||
animation/import_rest_as_RESET=false
|
animation/import_rest_as_RESET=false
|
||||||
import_script/path=""
|
import_script/path=""
|
||||||
_subresources={}
|
_subresources={}
|
||||||
fbx/importer=0
|
gltf/naming_version=1
|
||||||
fbx/allow_geometry_helper_nodes=false
|
gltf/embedded_image_handling=1
|
||||||
fbx/embedded_image_handling=1
|
|
BIN
Models/ChuckEsCorner/ChuckEsCornerStage_Chuck_Es_Corner_1.png
Normal file
After Width: | Height: | Size: 87 KiB |
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://buqvxu4n8q6qc"
|
||||||
|
path.s3tc="res://.godot/imported/ChuckEsCornerStage_Chuck_Es_Corner_1.png-df2de8b158e2601de4629961436b760a.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/ChuckEsCornerStage_Chuck_Es_Corner_1.png-df2de8b158e2601de4629961436b760a.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "91cacf7bfdf049e3b957402daac9df21"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/ChuckEsCorner/ChuckEsCornerStage_Chuck_Es_Corner_1.png"
|
||||||
|
dest_files=["res://.godot/imported/ChuckEsCornerStage_Chuck_Es_Corner_1.png-df2de8b158e2601de4629961436b760a.s3tc.ctex", "res://.godot/imported/ChuckEsCornerStage_Chuck_Es_Corner_1.png-df2de8b158e2601de4629961436b760a.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/ChuckEsCorner/data.bin
Normal file
BIN
Models/Cyberamics/Cyber Helen.glb
Normal file
|
@ -3,13 +3,13 @@
|
||||||
importer="scene"
|
importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://y5jsfwdmgwkq"
|
uid="uid://d34xfaignny8j"
|
||||||
path="res://.godot/imported/Munch.fbx-5aedcf1ca9583a75c301f71dc6519957.scn"
|
path="res://.godot/imported/Cyber Helen.glb-3f0344c1f3e746ac81eea3dfffd7e005.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://3-Stage/Models/Munch.fbx"
|
source_file="res://Models/Cyberamics/Cyber Helen.glb"
|
||||||
dest_files=["res://.godot/imported/Munch.fbx-5aedcf1ca9583a75c301f71dc6519957.scn"]
|
dest_files=["res://.godot/imported/Cyber Helen.glb-3f0344c1f3e746ac81eea3dfffd7e005.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -28,11 +28,10 @@ meshes/force_disable_compression=false
|
||||||
skins/use_named_skins=true
|
skins/use_named_skins=true
|
||||||
animation/import=true
|
animation/import=true
|
||||||
animation/fps=30
|
animation/fps=30
|
||||||
animation/trimming=true
|
animation/trimming=false
|
||||||
animation/remove_immutable_tracks=true
|
animation/remove_immutable_tracks=true
|
||||||
animation/import_rest_as_RESET=false
|
animation/import_rest_as_RESET=false
|
||||||
import_script/path=""
|
import_script/path=""
|
||||||
_subresources={}
|
_subresources={}
|
||||||
fbx/importer=0
|
gltf/naming_version=1
|
||||||
fbx/allow_geometry_helper_nodes=false
|
gltf/embedded_image_handling=1
|
||||||
fbx/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_denim.png
Normal file
After Width: | Height: | Size: 14 KiB |
39
Models/Cyberamics/Cyber Jasper_denim.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://q20cddw2xrei"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Jasper_denim.png-d8598725528ffd5195e28e0eec9cd741.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Jasper_denim.png-d8598725528ffd5195e28e0eec9cd741.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "402d309e5ed850ba52e293c0656acf10"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Jasper_denim.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Jasper_denim.png-d8598725528ffd5195e28e0eec9cd741.s3tc.ctex", "res://.godot/imported/Cyber Jasper_denim.png-d8598725528ffd5195e28e0eec9cd741.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_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
|
BIN
Models/Cyberamics/Cyber Jasper_muzzle.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
39
Models/Cyberamics/Cyber Jasper_muzzle.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dyegy5aix0jnm"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Jasper_muzzle.png-1363f785a4c6b6366aae4b87bbe29a4a.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Jasper_muzzle.png-1363f785a4c6b6366aae4b87bbe29a4a.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "078b2003477a7c7835cfd9643aee65c3"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Jasper_muzzle.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Jasper_muzzle.png-1363f785a4c6b6366aae4b87bbe29a4a.s3tc.ctex", "res://.godot/imported/Cyber Jasper_muzzle.png-1363f785a4c6b6366aae4b87bbe29a4a.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_shirt_cow_print.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
39
Models/Cyberamics/Cyber Jasper_shirt_cow_print.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c0hh0000v6h8y"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Jasper_shirt_cow_print.png-de5138976b0094419018b0936baa9497.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Jasper_shirt_cow_print.png-de5138976b0094419018b0936baa9497.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "35bb2072abe8c8e39214dcb47ee5fc3a"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Jasper_shirt_cow_print.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Jasper_shirt_cow_print.png-de5138976b0094419018b0936baa9497.s3tc.ctex", "res://.godot/imported/Cyber Jasper_shirt_cow_print.png-de5138976b0094419018b0936baa9497.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_shirt_rocker.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
39
Models/Cyberamics/Cyber Jasper_shirt_rocker.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bcbsootxxvpjb"
|
||||||
|
path.s3tc="res://.godot/imported/Cyber Jasper_shirt_rocker.png-f0e49ba2d7398b113f1af6030157a14e.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyber Jasper_shirt_rocker.png-f0e49ba2d7398b113f1af6030157a14e.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "af4edca67cb9ab3accdc565f145f9c99"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyber Jasper_shirt_rocker.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyber Jasper_shirt_rocker.png-f0e49ba2d7398b113f1af6030157a14e.s3tc.ctex", "res://.godot/imported/Cyber Jasper_shirt_rocker.png-f0e49ba2d7398b113f1af6030157a14e.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/Cyberamic Chuck.glb
Normal file
|
@ -3,13 +3,13 @@
|
||||||
importer="scene"
|
importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://b4xrsr1w4t017"
|
uid="uid://c2j62syov3skq"
|
||||||
path="res://.godot/imported/Jasper.fbx-172cc49326619adb06baca5b9e28470b.scn"
|
path="res://.godot/imported/Cyberamic Chuck.glb-7640bcf570eaf553eddfec5de3e96502.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://3-Stage/Models/Jasper.fbx"
|
source_file="res://Models/Cyberamics/Cyberamic Chuck.glb"
|
||||||
dest_files=["res://.godot/imported/Jasper.fbx-172cc49326619adb06baca5b9e28470b.scn"]
|
dest_files=["res://.godot/imported/Cyberamic Chuck.glb-7640bcf570eaf553eddfec5de3e96502.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -28,11 +28,10 @@ meshes/force_disable_compression=false
|
||||||
skins/use_named_skins=true
|
skins/use_named_skins=true
|
||||||
animation/import=true
|
animation/import=true
|
||||||
animation/fps=30
|
animation/fps=30
|
||||||
animation/trimming=true
|
animation/trimming=false
|
||||||
animation/remove_immutable_tracks=true
|
animation/remove_immutable_tracks=true
|
||||||
animation/import_rest_as_RESET=false
|
animation/import_rest_as_RESET=false
|
||||||
import_script/path=""
|
import_script/path=""
|
||||||
_subresources={}
|
_subresources={}
|
||||||
fbx/importer=0
|
gltf/naming_version=1
|
||||||
fbx/allow_geometry_helper_nodes=false
|
gltf/embedded_image_handling=1
|
||||||
fbx/embedded_image_handling=1
|
|
BIN
Models/Cyberamics/Cyberamic Chuck_avenger chuck shirt.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c8li1pbbld1r6"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_avenger chuck shirt.png-ef24b9642c3c8e09e634fc0b19923210.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_avenger chuck shirt.png-ef24b9642c3c8e09e634fc0b19923210.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "d05498ddd2256dae1de9c85a416823f1"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_avenger chuck shirt.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_avenger chuck shirt.png-ef24b9642c3c8e09e634fc0b19923210.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_avenger chuck shirt.png-ef24b9642c3c8e09e634fc0b19923210.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/Cyberamic Chuck_avenger hat.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
39
Models/Cyberamics/Cyberamic Chuck_avenger hat.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://im1r1enoj4l3"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_avenger hat.png-29377b5e8b656b2b533aeba9277b6de7.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_avenger hat.png-29377b5e8b656b2b533aeba9277b6de7.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "eda0a6f93a90b3b6fa865784593fcd9f"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_avenger hat.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_avenger hat.png-29377b5e8b656b2b533aeba9277b6de7.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_avenger hat.png-29377b5e8b656b2b533aeba9277b6de7.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/Cyberamic Chuck_cool chuck hat.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
39
Models/Cyberamics/Cyberamic Chuck_cool chuck hat.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bgfogdr7mgqrn"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_cool chuck hat.png-92e57bd583b5fddebeb2b5a26a27b65f.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_cool chuck hat.png-92e57bd583b5fddebeb2b5a26a27b65f.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "30dda0ec4550d8b59629241b11fcb967"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_cool chuck hat.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_cool chuck hat.png-92e57bd583b5fddebeb2b5a26a27b65f.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_cool chuck hat.png-92e57bd583b5fddebeb2b5a26a27b65f.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/Cyberamic Chuck_cool chuck shirt.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cpyxdwmo2mitw"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_cool chuck shirt.png-52e5a2fe3b0c7d22e5cbd78c1c7500a9.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_cool chuck shirt.png-52e5a2fe3b0c7d22e5cbd78c1c7500a9.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "47d45b1d7535be024d7328edf43a202e"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_cool chuck shirt.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_cool chuck shirt.png-52e5a2fe3b0c7d22e5cbd78c1c7500a9.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_cool chuck shirt.png-52e5a2fe3b0c7d22e5cbd78c1c7500a9.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/Cyberamic Chuck_derby.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
39
Models/Cyberamics/Cyberamic Chuck_derby.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cbweai1832bm3"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_derby.png-7bc146630594177e24ceda21a9c7859a.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_derby.png-7bc146630594177e24ceda21a9c7859a.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "b7dcfc8d03f78489056415859985c5e8"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_derby.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_derby.png-7bc146630594177e24ceda21a9c7859a.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_derby.png-7bc146630594177e24ceda21a9c7859a.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/Cyberamic Chuck_eyes.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
39
Models/Cyberamics/Cyberamic Chuck_eyes.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://n8fyvmnwkd5f"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_eyes.png-833864a46a4992a27ec42be8deaf2902.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_eyes.png-833864a46a4992a27ec42be8deaf2902.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "de6b71a0b6b2ef973e666c75df9734be"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_eyes.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_eyes.png-833864a46a4992a27ec42be8deaf2902.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_eyes.png-833864a46a4992a27ec42be8deaf2902.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/Cyberamic Chuck_fur.png
Normal file
After Width: | Height: | Size: 15 KiB |
39
Models/Cyberamics/Cyberamic Chuck_fur.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c4tq7klloya28"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_fur.png-5da3fabde0b41b5765b323a829d6681a.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_fur.png-5da3fabde0b41b5765b323a829d6681a.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "6dc122b4f22f3c13939182e577582275"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_fur.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_fur.png-5da3fabde0b41b5765b323a829d6681a.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_fur.png-5da3fabde0b41b5765b323a829d6681a.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/Cyberamic Chuck_jaw.png
Normal file
After Width: | Height: | Size: 327 B |
39
Models/Cyberamics/Cyberamic Chuck_jaw.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b6i5p7ssueq1c"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_jaw.png-77869e5cf0e223c7b7e77b4c6ef73abc.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_jaw.png-77869e5cf0e223c7b7e77b4c6ef73abc.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "dce09f49a6e472d9d20fd12ae0105263"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_jaw.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_jaw.png-77869e5cf0e223c7b7e77b4c6ef73abc.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_jaw.png-77869e5cf0e223c7b7e77b4c6ef73abc.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/Cyberamic Chuck_mic.png
Normal file
After Width: | Height: | Size: 361 B |
39
Models/Cyberamics/Cyberamic Chuck_mic.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://btm7ni51m76xy"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_mic.png-a001658a24b06e235c5f95469e65dd38.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_mic.png-a001658a24b06e235c5f95469e65dd38.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "0c2b737299479570c7cc39c7685d4c62"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_mic.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_mic.png-a001658a24b06e235c5f95469e65dd38.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_mic.png-a001658a24b06e235c5f95469e65dd38.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/Cyberamic Chuck_modern jaw.png
Normal file
After Width: | Height: | Size: 321 B |
39
Models/Cyberamics/Cyberamic Chuck_modern jaw.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b2im7s145j3ba"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_modern jaw.png-cbbfdab929ad63a720505602abfbed7a.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_modern jaw.png-cbbfdab929ad63a720505602abfbed7a.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "40535739a152a771fa57e75e1df9b011"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_modern jaw.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_modern jaw.png-cbbfdab929ad63a720505602abfbed7a.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_modern jaw.png-cbbfdab929ad63a720505602abfbed7a.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/Cyberamic Chuck_vest.png
Normal file
After Width: | Height: | Size: 934 B |
39
Models/Cyberamics/Cyberamic Chuck_vest.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cjjfoyalnst1d"
|
||||||
|
path.s3tc="res://.godot/imported/Cyberamic Chuck_vest.png-f2e092297f624fd3dd64f2cbcf170064.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Cyberamic Chuck_vest.png-f2e092297f624fd3dd64f2cbcf170064.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "cdfb9781f38ce700fb6a6329107289e5"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Cyberamic Chuck_vest.png"
|
||||||
|
dest_files=["res://.godot/imported/Cyberamic Chuck_vest.png-f2e092297f624fd3dd64f2cbcf170064.s3tc.ctex", "res://.godot/imported/Cyberamic Chuck_vest.png-f2e092297f624fd3dd64f2cbcf170064.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/Warblettes.glb
Normal file
37
Models/Cyberamics/Warblettes.glb.import
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://dmh5upwts8y11"
|
||||||
|
path="res://.godot/imported/Warblettes.glb-4411a6da11355afeccccd99ded899996.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Warblettes.glb"
|
||||||
|
dest_files=["res://.godot/imported/Warblettes.glb-4411a6da11355afeccccd99ded899996.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/Warblettes_fur.png
Normal file
After Width: | Height: | Size: 8.3 KiB |
39
Models/Cyberamics/Warblettes_fur.png.import
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://jp06lvl1l4kf"
|
||||||
|
path.s3tc="res://.godot/imported/Warblettes_fur.png-9635d2a2f1884e838e8285a0042af334.s3tc.ctex"
|
||||||
|
path.etc2="res://.godot/imported/Warblettes_fur.png-9635d2a2f1884e838e8285a0042af334.etc2.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "e63b9c660d716af6780b5637f38da662"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Models/Cyberamics/Warblettes_fur.png"
|
||||||
|
dest_files=["res://.godot/imported/Warblettes_fur.png-9635d2a2f1884e838e8285a0042af334.s3tc.ctex", "res://.godot/imported/Warblettes_fur.png-9635d2a2f1884e838e8285a0042af334.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
|
|
@ -4,12 +4,12 @@ importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://bhoeqcsdb0fx2"
|
uid="uid://bhoeqcsdb0fx2"
|
||||||
path="res://.godot/imported/Room.glb-057b6820edeabb93a1fe769eeffdac34.scn"
|
path="res://.godot/imported/HelenHouse-Room.glb-d039721f5e781fffec7d16cd58395499.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Models/Room.glb"
|
source_file="res://Models/HelenHouse/HelenHouse-Room.glb"
|
||||||
dest_files=["res://.godot/imported/Room.glb-057b6820edeabb93a1fe769eeffdac34.scn"]
|
dest_files=["res://.godot/imported/HelenHouse-Room.glb-d039721f5e781fffec7d16cd58395499.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
|
@ -4,12 +4,12 @@ importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://btvomf1ayoypu"
|
uid="uid://btvomf1ayoypu"
|
||||||
path="res://.godot/imported/Stage.glb-38d445218888b57ffbbfd79eb6fd72c0.scn"
|
path="res://.godot/imported/HelenHouse-Stage.glb-3682deea9f5a1b3381bc9010b144dd14.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Models/Stage.glb"
|
source_file="res://Models/HelenHouse/HelenHouse-Stage.glb"
|
||||||
dest_files=["res://.godot/imported/Stage.glb-38d445218888b57ffbbfd79eb6fd72c0.scn"]
|
dest_files=["res://.godot/imported/HelenHouse-Stage.glb-3682deea9f5a1b3381bc9010b144dd14.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
|
@ -1,38 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://c66qevr67an0l"
|
|
||||||
path="res://.godot/imported/Pasqually.fbx-764599cdc792a8e7936bfd485f85d0d3.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://3-Stage/Models/Pasqually.fbx"
|
|
||||||
dest_files=["res://.godot/imported/Pasqually.fbx-764599cdc792a8e7936bfd485f85d0d3.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=true
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
fbx/importer=0
|
|
||||||
fbx/allow_geometry_helper_nodes=false
|
|
||||||
fbx/embedded_image_handling=1
|
|
|
@ -1,3 +1,6 @@
|
||||||
# PneumaticPlaything
|
# PneumaticPlaything
|
||||||
|
|
||||||
animatronic simulator
|
Animatronics simulator and showtape creator
|
||||||
|
(soon to be) Featuring real stages and animatronics
|
||||||
|
|
||||||
|
This project is not associated with CEC Entertainment LLC. or Creative Engineering Inc.
|
||||||
|
|
19
Scenes/GUI/Controls/CameraButton.tscn
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
[gd_scene load_steps=2 format=3 uid="uid://bt7bxdgv6u8ev"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://dfoog0y2bh7tk" path="res://Scripts/CameraButton.gd" id="1_3y3s1"]
|
||||||
|
|
||||||
|
[node name="CameraButton" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 0
|
||||||
|
offset_right = 136.0
|
||||||
|
offset_bottom = 32.0
|
||||||
|
script = ExtResource("1_3y3s1")
|
||||||
|
|
||||||
|
[node name="Button" type="Button" parent="."]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 4.0
|
||||||
|
offset_right = 132.0
|
||||||
|
offset_bottom = 32.0
|
||||||
|
text = "Angle"
|
||||||
|
|
||||||
|
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
35
Scenes/GUI/Controls/CosmeticAdjustment.tscn
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
[gd_scene load_steps=2 format=3 uid="uid://dfll7xwkb2mbi"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://1f7v3ohsgx0g" path="res://Scripts/CosmeticAdjustment.gd" id="1_fg0vw"]
|
||||||
|
|
||||||
|
[node name="FlowControl" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 0
|
||||||
|
offset_right = 384.0
|
||||||
|
offset_bottom = 40.0
|
||||||
|
script = ExtResource("1_fg0vw")
|
||||||
|
|
||||||
|
[node name="Panel" type="Panel" parent="."]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_right = 384.0
|
||||||
|
offset_bottom = 40.0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 4.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 184.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
text = "Cosmetic Adustment"
|
||||||
|
vertical_alignment = 1
|
||||||
|
clip_text = true
|
||||||
|
text_overrun_behavior = 3
|
||||||
|
|
||||||
|
[node name="OptionButton" type="OptionButton" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 188.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 380.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
|
||||||
|
[connection signal="item_selected" from="Panel/OptionButton" to="." method="_on_option_button_item_selected"]
|
51
Scenes/GUI/Controls/FlowControl.tscn
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
[gd_scene load_steps=2 format=3 uid="uid://blg1c3v4o44of"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://blhv0kms1sleu" path="res://Scripts/FlowControl.gd" id="1_6sy3t"]
|
||||||
|
|
||||||
|
[node name="FlowControl" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 0
|
||||||
|
offset_right = 512.0
|
||||||
|
offset_bottom = 40.0
|
||||||
|
script = ExtResource("1_6sy3t")
|
||||||
|
|
||||||
|
[node name="Panel" type="Panel" parent="."]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_right = 512.0
|
||||||
|
offset_bottom = 40.0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 4.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 244.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
text = "Movement"
|
||||||
|
vertical_alignment = 1
|
||||||
|
clip_text = true
|
||||||
|
text_overrun_behavior = 3
|
||||||
|
|
||||||
|
[node name="InStepper" type="SpinBox" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 248.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 376.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
max_value = 10000.0
|
||||||
|
step = 0.1
|
||||||
|
value = 1.0
|
||||||
|
prefix = "In:"
|
||||||
|
|
||||||
|
[node name="OutStepper" type="SpinBox" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 380.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 508.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
max_value = 10.0
|
||||||
|
step = 0.1
|
||||||
|
value = 1.0
|
||||||
|
prefix = "Out:"
|
||||||
|
|
||||||
|
[connection signal="value_changed" from="Panel/InStepper" to="." method="_on_in_stepper_value_changed"]
|
||||||
|
[connection signal="value_changed" from="Panel/OutStepper" to="." method="_on_out_stepper_value_changed"]
|
|
@ -1,42 +0,0 @@
|
||||||
[gd_scene load_steps=2 format=3 uid="uid://blg1c3v4o44of"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://blhv0kms1sleu" path="res://Scripts/FlowSlider.gd" id="1_q164o"]
|
|
||||||
|
|
||||||
[node name="FlowSlider" type="Control"]
|
|
||||||
layout_mode = 3
|
|
||||||
anchors_preset = 15
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_right = -1280.0
|
|
||||||
offset_bottom = -720.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
script = ExtResource("1_q164o")
|
|
||||||
|
|
||||||
[node name="Panel" type="Panel" parent="."]
|
|
||||||
layout_mode = 0
|
|
||||||
offset_right = 96.0
|
|
||||||
offset_bottom = 32.0
|
|
||||||
|
|
||||||
[node name="Slider" type="HSlider" parent="Panel"]
|
|
||||||
layout_mode = 2
|
|
||||||
offset_left = 4.0
|
|
||||||
offset_right = 64.0
|
|
||||||
offset_bottom = 32.0
|
|
||||||
size_flags_vertical = 1
|
|
||||||
max_value = 5.0
|
|
||||||
step = 0.1
|
|
||||||
value = 1.0
|
|
||||||
|
|
||||||
[node name="ValueLabel" type="Label" parent="Panel"]
|
|
||||||
layout_mode = 2
|
|
||||||
offset_left = 64.0
|
|
||||||
offset_right = 96.0
|
|
||||||
offset_bottom = 32.0
|
|
||||||
size_flags_horizontal = 8
|
|
||||||
size_flags_vertical = 1
|
|
||||||
text = "1.0"
|
|
||||||
horizontal_alignment = 1
|
|
||||||
vertical_alignment = 1
|
|
||||||
|
|
||||||
[connection signal="value_changed" from="Panel/Slider" to="." method="_on_slider_value_changed"]
|
|
|
@ -1,6 +1,6 @@
|
||||||
[gd_scene load_steps=4 format=3 uid="uid://cbf3x44mvo701"]
|
[gd_scene load_steps=4 format=3 uid="uid://cbf3x44mvo701"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://cg157l4uo7ki8" path="res://Scripts/IndicatorLight.gd" id="1_l718a"]
|
[ext_resource type="Script" uid="uid://cg157l4uo7ki8" path="res://Scripts/MovementButton.gd" id="1_l718a"]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1pi70"]
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1pi70"]
|
||||||
bg_color = Color(0, 0, 0, 1)
|
bg_color = Color(0, 0, 0, 1)
|
||||||
|
@ -16,23 +16,26 @@ corner_radius_top_right = 12
|
||||||
corner_radius_bottom_right = 12
|
corner_radius_bottom_right = 12
|
||||||
corner_radius_bottom_left = 12
|
corner_radius_bottom_left = 12
|
||||||
|
|
||||||
[node name="IndicatorLight" type="Control"]
|
[node name="MovementButton" type="Control"]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 15
|
anchors_preset = 0
|
||||||
anchor_right = 1.0
|
offset_right = 256.0
|
||||||
anchor_bottom = 1.0
|
offset_bottom = 40.0
|
||||||
offset_right = -1280.0
|
|
||||||
offset_bottom = -720.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
script = ExtResource("1_l718a")
|
script = ExtResource("1_l718a")
|
||||||
|
|
||||||
[node name="Container" type="Panel" parent="."]
|
[node name="Panel" type="Panel" parent="."]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_right = 32.0
|
offset_right = 256.0
|
||||||
offset_bottom = 32.0
|
offset_bottom = 40.0
|
||||||
|
|
||||||
[node name="Black" type="Panel" parent="."]
|
[node name="IndicatorPanel" type="Panel" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 220.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 252.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
|
||||||
|
[node name="Black" type="Panel" parent="Panel/IndicatorPanel"]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_left = 4.0
|
offset_left = 4.0
|
||||||
offset_top = 4.0
|
offset_top = 4.0
|
||||||
|
@ -40,10 +43,22 @@ offset_right = 28.0
|
||||||
offset_bottom = 28.0
|
offset_bottom = 28.0
|
||||||
theme_override_styles/panel = SubResource("StyleBoxFlat_1pi70")
|
theme_override_styles/panel = SubResource("StyleBoxFlat_1pi70")
|
||||||
|
|
||||||
[node name="Green" type="Panel" parent="."]
|
[node name="Green" type="Panel" parent="Panel/IndicatorPanel"]
|
||||||
|
visible = false
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_left = 4.0
|
offset_left = 4.0
|
||||||
offset_top = 4.0
|
offset_top = 4.0
|
||||||
offset_right = 28.0
|
offset_right = 28.0
|
||||||
offset_bottom = 28.0
|
offset_bottom = 28.0
|
||||||
theme_override_styles/panel = SubResource("StyleBoxFlat_5m0fm")
|
theme_override_styles/panel = SubResource("StyleBoxFlat_5m0fm")
|
||||||
|
|
||||||
|
[node name="Button" type="Button" parent="Panel"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 4.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 216.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
text = "Movement"
|
||||||
|
|
||||||
|
[connection signal="button_down" from="Panel/Button" to="." method="_on_button_button_down"]
|
||||||
|
[connection signal="button_up" from="Panel/Button" to="." method="_on_button_button_up"]
|
|
@ -1,7 +1,9 @@
|
||||||
[gd_scene load_steps=4 format=3 uid="uid://dtkqaw5533rxy"]
|
[gd_scene load_steps=7 format=3 uid="uid://dtkqaw5533rxy"]
|
||||||
|
|
||||||
[ext_resource type="StyleBox" uid="uid://d17amc25o63p1" path="res://UI/Themes/MovementsPanelOverride.tres" id="1_d1xev"]
|
[ext_resource type="StyleBox" uid="uid://d17amc25o63p1" path="res://UI/Themes/MovementsPanelOverride.tres" id="1_d1xev"]
|
||||||
[ext_resource type="Script" uid="uid://tn3aaldu7mm2" path="res://Scripts/MovementRow.gd" id="1_rm5t0"]
|
[ext_resource type="Script" uid="uid://tn3aaldu7mm2" path="res://Scripts/MovementRow.gd" id="1_rm5t0"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cn5xdrxdv622h" path="res://UI/SmallX.png" id="2_e7anl"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d007317123e27" path="res://UI/SmallLock.png" id="3_ldhn8"]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_rm5t0"]
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_rm5t0"]
|
||||||
bg_color = Color(0, 1, 0, 1)
|
bg_color = Color(0, 1, 0, 1)
|
||||||
|
@ -10,6 +12,17 @@ corner_radius_top_right = 4
|
||||||
corner_radius_bottom_right = 4
|
corner_radius_bottom_right = 4
|
||||||
corner_radius_bottom_left = 4
|
corner_radius_bottom_left = 4
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ldhn8"]
|
||||||
|
content_margin_left = 4.0
|
||||||
|
content_margin_top = 4.0
|
||||||
|
content_margin_right = 4.0
|
||||||
|
content_margin_bottom = 4.0
|
||||||
|
bg_color = Color(1, 0.752941, 0, 1)
|
||||||
|
corner_radius_top_left = 2
|
||||||
|
corner_radius_top_right = 2
|
||||||
|
corner_radius_bottom_right = 2
|
||||||
|
corner_radius_bottom_left = 2
|
||||||
|
|
||||||
[node name="Row" type="Panel"]
|
[node name="Row" type="Panel"]
|
||||||
anchors_preset = 10
|
anchors_preset = 10
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
|
@ -35,6 +48,28 @@ offset_bottom = 36.0
|
||||||
tooltip_text = "Click to bind a key to this movement"
|
tooltip_text = "Click to bind a key to this movement"
|
||||||
text = "0 - Name (Unbound)"
|
text = "0 - Name (Unbound)"
|
||||||
alignment = 0
|
alignment = 0
|
||||||
|
text_overrun_behavior = 3
|
||||||
|
clip_text = true
|
||||||
|
|
||||||
|
[node name="ClearButton" type="Button" parent="."]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 244.0
|
||||||
|
offset_top = 4.0
|
||||||
|
offset_right = 260.0
|
||||||
|
offset_bottom = 20.0
|
||||||
|
tooltip_text = "Clear this row"
|
||||||
|
icon = ExtResource("2_e7anl")
|
||||||
|
|
||||||
|
[node name="LockButton" type="Button" parent="."]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_left = 244.0
|
||||||
|
offset_top = 20.0
|
||||||
|
offset_right = 260.0
|
||||||
|
offset_bottom = 36.0
|
||||||
|
tooltip_text = "Prevent recording over"
|
||||||
|
theme_override_styles/pressed = SubResource("StyleBoxFlat_ldhn8")
|
||||||
|
toggle_mode = true
|
||||||
|
icon = ExtResource("3_ldhn8")
|
||||||
|
|
||||||
[node name="MovementsBG" type="Panel" parent="."]
|
[node name="MovementsBG" type="Panel" parent="."]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
|
@ -49,6 +84,7 @@ theme_override_styles/panel = ExtResource("1_d1xev")
|
||||||
[node name="InvisibleMask" type="Control" parent="MovementsBG"]
|
[node name="InvisibleMask" type="Control" parent="MovementsBG"]
|
||||||
clip_contents = true
|
clip_contents = true
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
offset_left = 4.0
|
offset_left = 4.0
|
||||||
|
@ -64,3 +100,4 @@ offset_left = 120.0
|
||||||
offset_right = 120.0
|
offset_right = 120.0
|
||||||
|
|
||||||
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
||||||
|
[connection signal="pressed" from="ClearButton" to="." method="_on_clear_button_pressed"]
|
||||||
|
|
319
Scenes/Stages/Balcony.tscn
Normal file
|
@ -0,0 +1,319 @@
|
||||||
|
[gd_scene load_steps=9 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"]
|
||||||
|
[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="Script" uid="uid://d1p4ite8ts2wi" path="res://Scripts/LightController.gd" id="6_j8jbd"]
|
||||||
|
|
||||||
|
[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.866025, 0, 0.5, 0, 1, 0, -0.5, 0, 0.866025, -2.2, 3, -0.5)
|
||||||
|
script = ExtResource("2_t4ere")
|
||||||
|
|
||||||
|
[node name="Chuck" parent="." instance=ExtResource("3_45mf1")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, -0.5)
|
||||||
|
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.2, 3, -0.5)
|
||||||
|
script = ExtResource("2_t4ere")
|
||||||
|
|
||||||
|
[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)
|
||||||
|
script = ExtResource("2_t4ere")
|
||||||
|
|
||||||
|
[node name="Spots" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("6_j8jbd")
|
||||||
|
|
||||||
|
[node name="Chuck" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, 0, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Helen" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(0.866025, 0.120961, -0.485148, 0, 0.970296, 0.241922, 0.5, -0.209511, 0.840301, -1, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Jasper" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(0.866025, -0.120961, 0.485148, 0, 0.970296, 0.241922, -0.5, -0.209511, 0.840301, 1, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Munch" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, -4.5, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Pasqually" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, 4.5, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Warblettes" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.991445, 0.130526, 0, -0.130526, 0.991445, -7.5, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 10.0
|
||||||
|
|
||||||
|
[node name="Color Spots" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("6_j8jbd")
|
||||||
|
|
||||||
|
[node name="Chuck" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, 0, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0.734652, 0.426335, 0.999996, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Chuck 2" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, 0, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0, 0, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Helen" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(0.866025, 0.120961, -0.485148, 0, 0.970296, 0.241922, 0.5, -0.209511, 0.840301, -1, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0.734652, 0.426335, 0.999996, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Jasper" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(0.866025, -0.120961, 0.485148, 0, 0.970296, 0.241922, -0.5, -0.209511, 0.840301, 1, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0.734652, 0.426335, 0.999996, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Munch" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, -4.5, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0.734652, 0.426335, 0.999996, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Pasqually" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.970296, 0.241922, 0, -0.241922, 0.970296, 4.5, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0.734652, 0.426335, 0.999996, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 7.5
|
||||||
|
|
||||||
|
[node name="Warblettes" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.991445, 0.130526, 0, -0.130526, 0.991445, -7.5, 5.5, 5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0.734652, 0.426335, 0.999996, 1)
|
||||||
|
light_energy = 0.8
|
||||||
|
spot_range = 8.0
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 10.0
|
||||||
|
|
||||||
|
[node name="Valence" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("6_j8jbd")
|
||||||
|
|
||||||
|
[node name="L" type="SpotLight3D" parent="Valence"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, -2.25, 5.5, 0.25)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 15.0
|
||||||
|
|
||||||
|
[node name="L Center" type="SpotLight3D" parent="Valence"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, -1.2, 5.5, 0.5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 15.0
|
||||||
|
|
||||||
|
[node name="Center" type="SpotLight3D" parent="Valence"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 5.5, 0.75)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 15.0
|
||||||
|
|
||||||
|
[node name="R Center" type="SpotLight3D" parent="Valence"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 1.2, 5.5, 0.5)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 15.0
|
||||||
|
|
||||||
|
[node name="R" type="SpotLight3D" parent="Valence"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 2.25, 5.5, 0.25)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
spot_attenuation = -1.0
|
||||||
|
spot_angle = 15.0
|
||||||
|
|
||||||
|
[node name="Backdrop" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("6_j8jbd")
|
||||||
|
|
||||||
|
[node name="L Blue" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(0.866025, 0.433013, 0.25, -7.18775e-09, 0.5, -0.866025, -0.5, 0.75, 0.433013, -2.5, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0, 0, 1, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="L Amber" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(0.866025, 0.433013, 0.25, -7.18775e-09, 0.5, -0.866025, -0.5, 0.75, 0.433013, -2, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.74902, 0, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="L Red" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(0.866025, 0.433013, 0.25, -7.18775e-09, 0.5, -0.866025, -0.5, 0.75, 0.433013, -1.5, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0, 0, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="C Blue" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.5, -0.866025, 0, 0.866025, 0.5, -0.5, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0, 0, 1, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="C Amber" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.5, -0.866025, 0, 0.866025, 0.5, 0, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.74902, 0, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="C Red" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.5, -0.866025, 0, 0.866025, 0.5, 0.5, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0, 0, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="R Blue" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(0.866025, -0.433013, -0.25, 1.82764e-08, 0.5, -0.866025, 0.5, 0.75, 0.433013, 1.5, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0, 0, 1, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="R Amber" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(0.866025, -0.433013, -0.25, 1.82764e-08, 0.5, -0.866025, 0.5, 0.75, 0.433013, 2, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.74902, 0, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="R Red" type="SpotLight3D" parent="Backdrop"]
|
||||||
|
transform = Transform3D(0.866025, -0.433013, -0.25, 1.82764e-08, 0.5, -0.866025, 0.5, 0.75, 0.433013, 2.5, 3, -1.1)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0, 0, 1)
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 30.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_w3m2i")
|
||||||
|
|
||||||
|
[node name="Room Lights" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Room Lights"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 4.5, 3)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
|
||||||
|
[node name="OmniLight3D2" type="OmniLight3D" parent="Room Lights"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 4.5, 3)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
|
||||||
|
[node name="OmniLight3D3" type="OmniLight3D" parent="Room Lights"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 4.5, 3)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
|
||||||
|
[node name="OmniLight3D4" type="OmniLight3D" parent="Room Lights"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 4.5, 3)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
|
||||||
|
[node name="OmniLight3D5" type="OmniLight3D" parent="Room Lights"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 4.5, 3)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
|
||||||
|
[node name="BalconyStage" parent="." instance=ExtResource("5_45mf1")]
|
||||||
|
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0, 0)
|
||||||
|
|
||||||
|
[node name="Angle 1" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 4.75, 3)
|
||||||
|
current = true
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 2" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, -4.5, 4.75, 3)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 3" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 4.5, 4.75, 3)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 4" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, 5, 3)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 5" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.996195, 0.0871557, 0, -0.0871557, 0.996195, 0, 4.75, 6)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 6" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(0.965926, -0.0225576, 0.257834, 0, 0.996195, 0.0871557, -0.258819, -0.084186, 0.96225, 2, 4.75, 7)
|
||||||
|
fov = 60.0
|
109
Scenes/Stages/ChuckEsCorner.tscn
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
[gd_scene load_steps=7 format=3 uid="uid://dw3eplmapm5gc"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c2j62syov3skq" path="res://Models/Cyberamics/Cyberamic Chuck.glb" id="1_t27ru"]
|
||||||
|
[ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_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="Script" uid="uid://d1p4ite8ts2wi" path="res://Scripts/LightController.gd" id="4_8suoo"]
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_4uxdq"]
|
||||||
|
ambient_light_source = 1
|
||||||
|
|
||||||
|
[node name="ChuckEsCorner" type="Node3D"]
|
||||||
|
|
||||||
|
[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)
|
||||||
|
script = ExtResource("2_8qvk7")
|
||||||
|
|
||||||
|
[node name="Warblettes" parent="." instance=ExtResource("3_t27ru")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 4, 0.5)
|
||||||
|
script = ExtResource("2_8qvk7")
|
||||||
|
|
||||||
|
[node name="Spots" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("4_8suoo")
|
||||||
|
|
||||||
|
[node name="Chuck" type="SpotLight3D" parent="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)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.9625, 0.85, 1)
|
||||||
|
light_energy = 2.0
|
||||||
|
spot_range = 6.53799
|
||||||
|
spot_angle = 30.5982
|
||||||
|
spot_angle_attenuation = 0.1
|
||||||
|
|
||||||
|
[node name="Warblettes" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(-0.963761, 0.0690445, -0.257677, 1.9697e-08, 0.965926, 0.258819, 0.266767, 0.24944, -0.930922, -0.309492, 5.86862, -0.75)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.9625, 0.85, 1)
|
||||||
|
light_energy = 2.0
|
||||||
|
spot_range = 12.8142
|
||||||
|
spot_angle = 28.4779
|
||||||
|
spot_angle_attenuation = 0.1
|
||||||
|
|
||||||
|
[node name="Floods" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("4_8suoo")
|
||||||
|
|
||||||
|
[node name="Red" type="SpotLight3D" parent="Floods"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 1.8, 0.9)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0, 0, 1)
|
||||||
|
light_energy = 15.0
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="Green" type="SpotLight3D" parent="Floods"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, -2, 1.8, 0.9)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0, 1, 0, 1)
|
||||||
|
light_energy = 15.0
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="Blue" type="SpotLight3D" parent="Floods"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, -4, 1.8, 0.9)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(0, 0, 1, 1)
|
||||||
|
light_energy = 15.0
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="Color Spots" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("4_8suoo")
|
||||||
|
|
||||||
|
[node name="Chuck" type="SpotLight3D" parent="Color Spots"]
|
||||||
|
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 = 33.4444
|
||||||
|
spot_angle_attenuation = 0.1
|
||||||
|
|
||||||
|
[node name="Angle 1" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(-0.984612, -0.00554278, 0.174664, 0.0289131, 0.980555, 0.194105, -0.172344, 0.196168, -0.965306, -0.658302, 4.93729, -4)
|
||||||
|
current = true
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 2" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -2, 3.44355, -2.64184)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="Angle 3" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0.25, 4.95492, -1.77582)
|
||||||
|
fov = 60.0
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_4uxdq")
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 3.5, -2)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.5
|
||||||
|
|
||||||
|
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 3.5, -2)
|
||||||
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
||||||
|
light_energy = 0.5
|
||||||
|
|
||||||
|
[node name="ChuckEsCornerStage" parent="." instance=ExtResource("3_8qvk7")]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0, 0, 1)
|
|
@ -1,178 +0,0 @@
|
||||||
[gd_scene load_steps=2 format=3 uid="uid://dyuhywnk8heav"]
|
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://dtkqaw5533rxy" path="res://Scenes/GUI/Controls/MovementRow.tscn" id="1_g2q8r"]
|
|
||||||
|
|
||||||
[node name="HelenHouseMovementRows" type="Control"]
|
|
||||||
layout_mode = 3
|
|
||||||
anchors_preset = 10
|
|
||||||
anchor_right = 1.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
|
|
||||||
[node name="MouthRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 1
|
|
||||||
movement_name = "Mouth"
|
|
||||||
|
|
||||||
[node name="LeftEarRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 44.0
|
|
||||||
offset_bottom = 84.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 2
|
|
||||||
movement_name = "Left Ear"
|
|
||||||
|
|
||||||
[node name="RightEarRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 88.0
|
|
||||||
offset_bottom = 128.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 3
|
|
||||||
movement_name = "Right Ear"
|
|
||||||
|
|
||||||
[node name="LeftEyelidRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 132.0
|
|
||||||
offset_bottom = 172.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 4
|
|
||||||
movement_name = "Left Eyelid"
|
|
||||||
|
|
||||||
[node name="RightEyelidRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 176.0
|
|
||||||
offset_bottom = 216.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 5
|
|
||||||
movement_name = "Right Eyelid"
|
|
||||||
|
|
||||||
[node name="EyesLeftRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 220.0
|
|
||||||
offset_bottom = 260.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 6
|
|
||||||
movement_name = "Eyes Left"
|
|
||||||
|
|
||||||
[node name="EyesRightRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 264.0
|
|
||||||
offset_bottom = 304.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 7
|
|
||||||
movement_name = "Eyes Right"
|
|
||||||
|
|
||||||
[node name="HeadLeftRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 308.0
|
|
||||||
offset_bottom = 348.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 8
|
|
||||||
movement_name = "Head Left"
|
|
||||||
|
|
||||||
[node name="HeadRightRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 352.0
|
|
||||||
offset_bottom = 392.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 9
|
|
||||||
movement_name = "Head Right"
|
|
||||||
|
|
||||||
[node name="HeadUpRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 396.0
|
|
||||||
offset_bottom = 436.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 10
|
|
||||||
movement_name = "Head Up"
|
|
||||||
|
|
||||||
[node name="LeftArmUpRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 440.0
|
|
||||||
offset_bottom = 480.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 11
|
|
||||||
movement_name = "Left Arm Up"
|
|
||||||
|
|
||||||
[node name="LeftArmTwistRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 484.0
|
|
||||||
offset_bottom = 524.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 12
|
|
||||||
movement_name = "Left Arm Twist"
|
|
||||||
|
|
||||||
[node name="LeftElbowRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 528.0
|
|
||||||
offset_bottom = 568.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 13
|
|
||||||
movement_name = "Left Elbow"
|
|
||||||
|
|
||||||
[node name="RightArmUpRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 572.0
|
|
||||||
offset_bottom = 612.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 14
|
|
||||||
movement_name = "Right Arm Up"
|
|
||||||
|
|
||||||
[node name="RightArmTwistRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 616.0
|
|
||||||
offset_bottom = 656.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 15
|
|
||||||
movement_name = "Right Arm Twist"
|
|
||||||
|
|
||||||
[node name="RightElbowRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 660.0
|
|
||||||
offset_bottom = 700.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 16
|
|
||||||
movement_name = "Right Elbow"
|
|
||||||
|
|
||||||
[node name="BodyLeftRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 704.0
|
|
||||||
offset_bottom = 744.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 17
|
|
||||||
movement_name = "Body Left"
|
|
||||||
|
|
||||||
[node name="BodyRightRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 748.0
|
|
||||||
offset_bottom = 788.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 18
|
|
||||||
movement_name = "Body Right"
|
|
||||||
|
|
||||||
[node name="BodyLeanRow" parent="." instance=ExtResource("1_g2q8r")]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = -1
|
|
||||||
offset_top = 792.0
|
|
||||||
offset_bottom = 832.0
|
|
||||||
grow_horizontal = 1
|
|
||||||
movement_bit = 19
|
|
||||||
movement_name = "Body Lean"
|
|
|
@ -1,44 +1,49 @@
|
||||||
[gd_scene load_steps=6 format=3 uid="uid://btre5j66mpchy"]
|
[gd_scene load_steps=7 format=3 uid="uid://btre5j66mpchy"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://f0fkcs7erhop" path="res://Models/3stHelen.glb" id="2_e7oou"]
|
[ext_resource type="PackedScene" uid="uid://f0fkcs7erhop" path="res://Models/3-Stage/3stHelen.glb" id="1_s1mol"]
|
||||||
[ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/HelenController.gd" id="3_e2vvs"]
|
[ext_resource type="Script" uid="uid://bu68w4jnh0n2b" path="res://Scripts/AnimatronicController.gd" id="2_odcb6"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bhoeqcsdb0fx2" path="res://Models/Room.glb" id="4_pv43k"]
|
[ext_resource type="PackedScene" uid="uid://bhoeqcsdb0fx2" path="res://Models/HelenHouse/HelenHouse-Room.glb" id="3_e7oou"]
|
||||||
[ext_resource type="PackedScene" uid="uid://btvomf1ayoypu" path="res://Models/Stage.glb" id="5_afett"]
|
[ext_resource type="PackedScene" uid="uid://btvomf1ayoypu" path="res://Models/HelenHouse/HelenHouse-Stage.glb" id="4_e2vvs"]
|
||||||
|
[ext_resource type="Script" uid="uid://d1p4ite8ts2wi" path="res://Scripts/LightController.gd" id="5_odcb6"]
|
||||||
|
|
||||||
[sub_resource type="Environment" id="Environment_axk5g"]
|
[sub_resource type="Environment" id="Environment_axk5g"]
|
||||||
ambient_light_source = 1
|
ambient_light_source = 1
|
||||||
|
|
||||||
[node name="HelenHouse" type="Node3D"]
|
[node name="HelenHouse" type="Node3D"]
|
||||||
|
|
||||||
[node name="3stHelen" parent="." instance=ExtResource("2_e7oou")]
|
[node name="Helen" parent="." instance=ExtResource("1_s1mol")]
|
||||||
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0.25, 0)
|
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0.25, 0)
|
||||||
script = ExtResource("3_e2vvs")
|
script = ExtResource("2_odcb6")
|
||||||
|
|
||||||
[node name="Room" parent="." instance=ExtResource("4_pv43k")]
|
[node name="Spots" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("5_odcb6")
|
||||||
|
|
||||||
|
[node name="Helen" type="SpotLight3D" parent="Spots"]
|
||||||
|
transform = Transform3D(-1, 3.69465e-08, -7.92319e-08, 0, 0.906308, 0.422618, 8.74228e-08, 0.422618, -0.906308, 0, 2.5, -2)
|
||||||
|
visible = false
|
||||||
|
light_color = Color(1, 0.9625, 0.85, 1)
|
||||||
|
light_energy = 5.0
|
||||||
|
spot_attenuation = 2.0
|
||||||
|
spot_angle = 10.0
|
||||||
|
spot_angle_attenuation = 0.15
|
||||||
|
|
||||||
|
[node name="Room" parent="." instance=ExtResource("3_e7oou")]
|
||||||
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
|
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
|
||||||
|
|
||||||
[node name="Stage" parent="." instance=ExtResource("5_afett")]
|
[node name="Stage" parent="." instance=ExtResource("4_e2vvs")]
|
||||||
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
|
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
|
||||||
|
|
||||||
[node name="Camera 1" type="Camera3D" parent="."]
|
[node name="Angle 1" type="Camera3D" parent="."]
|
||||||
transform = Transform3D(-1, 1.31602e-08, -1.50421e-07, 0, 0.996195, 0.0871557, 1.50996e-07, 0.0871557, -0.996195, 0, 1.5, -3)
|
transform = Transform3D(-1, 1.31602e-08, -1.50421e-07, 0, 0.996195, 0.0871557, 1.50996e-07, 0.0871557, -0.996195, 0, 1.5, -3)
|
||||||
fov = 60.0
|
fov = 60.0
|
||||||
|
|
||||||
[node name="Camera 2" type="Camera3D" parent="."]
|
[node name="Angle 2" type="Camera3D" parent="."]
|
||||||
transform = Transform3D(-1, 1.31602e-08, -1.50421e-07, 0, 0.996195, 0.0871557, 1.50996e-07, 0.0871557, -0.996195, 0, 1.5, -1)
|
transform = Transform3D(-1, 1.31602e-08, -1.50421e-07, 0, 0.996195, 0.0871557, 1.50996e-07, 0.0871557, -0.996195, 0, 1.5, -1)
|
||||||
fov = 60.0
|
fov = 60.0
|
||||||
|
|
||||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
environment = SubResource("Environment_axk5g")
|
environment = SubResource("Environment_axk5g")
|
||||||
|
|
||||||
[node name="SpotLight3D" type="SpotLight3D" parent="."]
|
|
||||||
transform = Transform3D(-0.972974, -0.0597654, 0.223048, 2.26267e-08, 0.965926, 0.258819, -0.230916, 0.251824, -0.939821, 0.217544, 1.75308, -1.04223)
|
|
||||||
light_color = Color(1, 0.9625, 0.85, 1)
|
|
||||||
light_energy = 2.0
|
|
||||||
spot_range = 1.3068
|
|
||||||
spot_angle = 27.449
|
|
||||||
spot_angle_attenuation = 0.1
|
|
||||||
|
|
||||||
[node name="OmniLight3D" type="OmniLight3D" parent="."]
|
[node name="OmniLight3D" type="OmniLight3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 2.5, -3)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 2.5, -3)
|
||||||
light_color = Color(1, 0.960784, 0.85098, 1)
|
light_color = Color(1, 0.960784, 0.85098, 1)
|
|
@ -4,27 +4,7 @@ var animation_player : AnimationPlayer
|
||||||
var animation_tree : AnimationTree
|
var animation_tree : AnimationTree
|
||||||
var blend_tree : AnimationNodeBlendTree
|
var blend_tree : AnimationNodeBlendTree
|
||||||
|
|
||||||
var movement_states = {
|
var movement_states : Dictionary
|
||||||
"Mouth": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Left Ear": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Right Ear": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Left Eyelid": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Right Eyelid": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Eyes Left": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Eyes Right": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Head Left": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Head Right": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Head Up": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Left Arm Up": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Left Arm Twist": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Left Elbow": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Right Arm Up": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Right Arm Twist": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Right Elbow": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Body Left": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Body Right": [false, 0.0, 0.0, 0.0],
|
|
||||||
"Body Lean": [false, 0.0, 0.0, 0.0],
|
|
||||||
}
|
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
animation_player = $AnimationPlayer
|
animation_player = $AnimationPlayer
|
||||||
|
@ -37,10 +17,13 @@ func _ready():
|
||||||
animation_tree.active = true
|
animation_tree.active = true
|
||||||
blend_tree = animation_tree.tree_root as AnimationNodeBlendTree
|
blend_tree = animation_tree.tree_root as AnimationNodeBlendTree
|
||||||
|
|
||||||
#animation_player.speed_scale = 0
|
animation_player.speed_scale = 0
|
||||||
|
|
||||||
var animations = animation_player.get_animation_list()
|
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 prev_name = "Anim_" + animations[0]
|
||||||
var old_time_name = "Time_" + animations[0]
|
var old_time_name = "Time_" + animations[0]
|
||||||
var old_seek_name = "Seek_" + animations[0]
|
var old_seek_name = "Seek_" + animations[0]
|
10
Scripts/CameraButton.gd
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
extends Control
|
||||||
|
|
||||||
|
@export var camera : String
|
||||||
|
@export var base_scene_path : String
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
$Button.text = camera
|
||||||
|
|
||||||
|
func _on_button_pressed() -> void:
|
||||||
|
get_node(base_scene_path + camera).current = true;
|
1
Scripts/CameraButton.gd.uid
Normal file
|
@ -0,0 +1 @@
|
||||||
|
uid://dfoog0y2bh7tk
|
18
Scripts/CosmeticAdjustment.gd
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
extends Control
|
||||||
|
|
||||||
|
@export var vis_name: String
|
||||||
|
@export var scene_handle: String
|
||||||
|
@export var options: Dictionary
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
$Panel/Label.text = vis_name
|
||||||
|
for option in options:
|
||||||
|
$Panel/OptionButton.add_item(option)
|
||||||
|
$Panel/OptionButton.select(0)
|
||||||
|
for adjusted in options[$Panel/OptionButton.get_item_text(0)]:
|
||||||
|
get_node(scene_handle+adjusted).visible = options[$Panel/OptionButton.get_item_text(0)][adjusted]
|
||||||
|
|
||||||
|
|
||||||
|
func _on_option_button_item_selected(index: int) -> void:
|
||||||
|
for adjusted in options[$Panel/OptionButton.get_item_text(index)]:
|
||||||
|
get_node(scene_handle+adjusted).visible = options[$Panel/OptionButton.get_item_text(index)][adjusted]
|
1
Scripts/CosmeticAdjustment.gd.uid
Normal file
|
@ -0,0 +1 @@
|
||||||
|
uid://1f7v3ohsgx0g
|
|
@ -4,28 +4,731 @@ var playing : bool = false
|
||||||
var recording : bool = false
|
var recording : bool = false
|
||||||
var index : int = 0
|
var index : int = 0
|
||||||
var playback_rate : int = 1
|
var playback_rate : int = 1
|
||||||
|
var transport_enabled : bool = false
|
||||||
|
var erase_validated : bool = false
|
||||||
|
var cam_index : int = 0
|
||||||
|
var fullscreen : bool = false
|
||||||
|
|
||||||
|
var showtape_loaded : bool = false
|
||||||
|
var show_name : String
|
||||||
|
|
||||||
|
var current_stage : String
|
||||||
|
|
||||||
|
var stages_info = {
|
||||||
|
"Helen House":
|
||||||
|
{
|
||||||
|
"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":
|
||||||
|
{
|
||||||
|
"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,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Chuck E's Corner":
|
||||||
|
{
|
||||||
|
"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": 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 },
|
||||||
|
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":
|
||||||
|
{
|
||||||
|
"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":
|
||||||
|
{
|
||||||
|
"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,
|
||||||
|
},
|
||||||
|
"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,
|
||||||
|
},
|
||||||
|
"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,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Balcony Stage":
|
||||||
|
{
|
||||||
|
"bits": 53,
|
||||||
|
"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": 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 },
|
||||||
|
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":
|
||||||
|
{
|
||||||
|
"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":
|
||||||
|
{
|
||||||
|
"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,
|
||||||
|
},
|
||||||
|
"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,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
signal step(amount: int)
|
signal step(amount: int)
|
||||||
signal start_recording()
|
signal start_recording()
|
||||||
signal end_recording()
|
signal end_recording()
|
||||||
signal return_to_zero()
|
signal return_to_zero()
|
||||||
|
signal erase_all()
|
||||||
|
|
||||||
|
func reload_stage() -> void:
|
||||||
|
$SequencerPanel/TimelinePanel/VScrollBar.value = 0
|
||||||
|
$FlyoutPanel/Movements/VScrollBar.value = 0
|
||||||
|
$FlyoutPanel/FlowControls/VScrollBar.value = 0
|
||||||
|
$CameraPreview.visible = false
|
||||||
|
for row in $SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.get_children():
|
||||||
|
row.queue_free()
|
||||||
|
for flow in $FlyoutPanel/FlowControls/InvisibleMask/FlowHandle.get_children():
|
||||||
|
flow.queue_free()
|
||||||
|
for movement in $FlyoutPanel/Movements/InvisibleMask/MovementHandle.get_children():
|
||||||
|
movement.queue_free()
|
||||||
|
for camera in $FlyoutPanel/Camera.get_children():
|
||||||
|
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()
|
||||||
|
$SubViewport.add_child(stage)
|
||||||
|
|
||||||
|
var cam_offset = 4
|
||||||
|
for i in range(1, stages_info[current_stage]["camera_count"]+1):
|
||||||
|
var camera_button = load("res://Scenes/GUI/Controls/CameraButton.tscn").instantiate()
|
||||||
|
camera_button.camera = "Angle " + str(i)
|
||||||
|
camera_button.base_scene_path = "../../../" + stages_info[current_stage]["scene_ref_base"]
|
||||||
|
camera_button.position.y = cam_offset
|
||||||
|
cam_offset += 36
|
||||||
|
$FlyoutPanel/Camera.add_child(camera_button)
|
||||||
|
$FlyoutPanel/Camera.size.y = cam_offset
|
||||||
|
|
||||||
|
var cosmetics_offset = 0
|
||||||
|
var cosmetics_count = -1
|
||||||
|
for cosmetic in stages_info[current_stage]["cosmetics"]:
|
||||||
|
var cosmetic_adjustment = load("res://Scenes/GUI/Controls/CosmeticAdjustment.tscn").instantiate()
|
||||||
|
cosmetic_adjustment.vis_name = cosmetic
|
||||||
|
cosmetic_adjustment.options = stages_info[current_stage]["cosmetics"][cosmetic]
|
||||||
|
cosmetic_adjustment.scene_handle = "../../../../../" + stages_info[current_stage]["scene_ref_base"]
|
||||||
|
cosmetic_adjustment.position.y = cosmetics_offset
|
||||||
|
cosmetics_offset += 44
|
||||||
|
cosmetics_count += 1
|
||||||
|
$FlyoutPanel/Cosmetics/InvisibleMask/CosmeticsHandle.add_child(cosmetic_adjustment)
|
||||||
|
$FlyoutPanel/Cosmetics/VScrollBar.max_value = cosmetics_count
|
||||||
|
|
||||||
|
var rows_offset = 0
|
||||||
|
var flows_offset = 0
|
||||||
|
var flow_count = 0
|
||||||
|
for bit_number in stages_info[current_stage]["bit_mapping"]:
|
||||||
|
var bot = stages_info[current_stage]["bit_mapping"][bit_number]["bot"]
|
||||||
|
var movement = stages_info[current_stage]["bit_mapping"][bit_number]["movement"]
|
||||||
|
|
||||||
|
var in_flow = stages_info[current_stage]["bit_mapping"][bit_number]["flow_in"]
|
||||||
|
var out_flow = stages_info[current_stage]["bit_mapping"][bit_number]["flow_out"]
|
||||||
|
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 = 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)
|
||||||
|
flows_offset += 44
|
||||||
|
flow_count += 1
|
||||||
|
|
||||||
|
var row = load("res://Scenes/GUI/Controls/MovementRow.tscn").instantiate()
|
||||||
|
row.name = str(bit_number) + " Bit"
|
||||||
|
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
|
||||||
|
$SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.add_child(row, true)
|
||||||
|
|
||||||
|
var movement_button = load("res://Scenes/GUI/Controls/MovementButton.tscn").instantiate()
|
||||||
|
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)
|
||||||
|
rows_offset += 44
|
||||||
|
$SequencerPanel/TimelinePanel/VScrollBar.max_value = stages_info[current_stage]["bits"] - 1
|
||||||
|
$FlyoutPanel/Movements/VScrollBar.max_value = stages_info[current_stage]["bits"] - 1
|
||||||
|
$FlyoutPanel/FlowControls/VScrollBar.max_value = flow_count - 1
|
||||||
|
$CameraPreview.visible = true
|
||||||
|
|
||||||
|
func _on_stage_change_overwrite_confirmation_dialog_confirmed() -> void:
|
||||||
|
erase_all.emit()
|
||||||
|
current_stage = $MenuBar/StageSelector.get_item_text($MenuBar/StageSelector.selected)
|
||||||
|
reload_stage()
|
||||||
|
|
||||||
func update_time_label() -> void:
|
func update_time_label() -> void:
|
||||||
var frames = index % 60
|
var frames = index % 60
|
||||||
var seconds = floori(index/60) % 60
|
var seconds = floori(index/60.0) % 60
|
||||||
var minutes = floori(index/3600) % 60
|
var minutes = floori(index/3600.0) % 60
|
||||||
var hours = floori(index/216000)
|
var hours = floori(index/216000.0)
|
||||||
$SequencerPanel/TransportControls/TimeLabel.text = "%d:%02d:%02d:%02d" % [hours, minutes, seconds, frames]
|
$SequencerPanel/TransportControls/TimeLabel.text = "%d:%02d:%02d:%02d" % [hours, minutes, seconds, frames]
|
||||||
#$SequencerPanel/TransportControls/TimeLabel.text = str(index)
|
|
||||||
|
func set_transport_enabled(enabled: bool):
|
||||||
|
$SequencerPanel/TransportControls/Centered/StepBackwardsButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/FastBackwardsButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/PlayBackwardsButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/PauseButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/StopButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/PlayButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/FastForwardButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/Centered/StepForwardButton.disabled = !enabled
|
||||||
|
$SequencerPanel/TransportControls/RecordButton.disabled = !enabled
|
||||||
|
transport_enabled = enabled
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
get_tree().get_root().size_changed.connect(_on_size_changed)
|
get_tree().get_root().size_changed.connect(_on_size_changed)
|
||||||
|
erase_all.connect(_erase_all)
|
||||||
|
$MenuBar/MenuButton.get_popup().id_pressed.connect(_showtape_menu_button_pressed)
|
||||||
|
OS.request_permissions()
|
||||||
|
current_stage = $MenuBar/StageSelector.get_item_text($MenuBar/StageSelector.selected)
|
||||||
|
reload_stage()
|
||||||
|
|
||||||
|
func _on_stage_selector_item_selected(_index: int) -> void:
|
||||||
|
if (showtape_loaded): $StageChangeOverwriteConfirmationDialog.show()
|
||||||
|
else:
|
||||||
|
current_stage = $MenuBar/StageSelector.get_item_text($MenuBar/StageSelector.selected)
|
||||||
|
reload_stage()
|
||||||
|
|
||||||
|
func _showtape_menu_button_pressed(id: int) -> void:
|
||||||
|
match (id):
|
||||||
|
0: #new
|
||||||
|
if (showtape_loaded): $NewOverwriteConfirmationDialog.show()
|
||||||
|
else: $ShowtapeNewScreen.visible = true
|
||||||
|
1: #load
|
||||||
|
if (showtape_loaded): $LoadOverwriteConfirmationDialog.show()
|
||||||
|
else: $ShowtapeLoadScreen.visible = true
|
||||||
|
2: #save
|
||||||
|
if (showtape_loaded): $ShowtapeSaveScreen.visible = true
|
||||||
|
else: $NoShowtapeLoadedDialog.show()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_showtape_new_audio_browse_button_pressed() -> void:
|
||||||
|
$OpenAudioFileDialog.show()
|
||||||
|
|
||||||
|
func _on_open_audio_file_dialog_file_selected(path: String) -> void:
|
||||||
|
$ShowtapeNewScreen/DialogPanel/AudioFilePath.text = path
|
||||||
|
|
||||||
|
func _on_showtape_new_cancel_button_pressed() -> void:
|
||||||
|
$ShowtapeNewScreen/DialogPanel/AudioFilePath.text = ""
|
||||||
|
$ShowtapeNewScreen/DialogPanel/ShowNameTextBox.text = ""
|
||||||
|
$ShowtapeNewScreen.visible = false
|
||||||
|
|
||||||
|
func _on_showtape_new_create_button_pressed() -> void:
|
||||||
|
if (!FileAccess.file_exists($ShowtapeNewScreen/DialogPanel/AudioFilePath.text.strip_edges())):
|
||||||
|
$FileDoesntExistDialog.show()
|
||||||
|
return
|
||||||
|
if ($ShowtapeNewScreen/DialogPanel/ShowNameTextBox.text.strip_edges() == ""):
|
||||||
|
$EmptyStringDialog.show()
|
||||||
|
return
|
||||||
|
show_name = $ShowtapeNewScreen/DialogPanel/ShowNameTextBox.text.strip_edges()
|
||||||
|
$AudioStreamPlayer.stream = load_audio($ShowtapeNewScreen/DialogPanel/AudioFilePath.text.strip_edges())
|
||||||
|
set_transport_enabled(true)
|
||||||
|
showtape_loaded = true
|
||||||
|
$MenuBar/EditingLabel.text = "Editing: " + show_name
|
||||||
|
$ShowtapeNewScreen/DialogPanel/AudioFilePath.text = ""
|
||||||
|
$ShowtapeNewScreen/DialogPanel/ShowNameTextBox.text = ""
|
||||||
|
$ShowtapeNewScreen.visible = false
|
||||||
|
|
||||||
|
func _on_new_overwrite_confirmation_dialog_confirmed() -> void:
|
||||||
|
erase_all.emit()
|
||||||
|
$ShowtapeNewScreen.visible = true
|
||||||
|
|
||||||
|
func _on_open_showtape_file_dialog_file_selected(path: String) -> void:
|
||||||
|
$ShowtapeLoadScreen/DialogPanel/InFilePath.text = path
|
||||||
|
|
||||||
|
func _on_showtape_load_in_browse_button_pressed() -> void:
|
||||||
|
$OpenShowtapeFileDialog.show()
|
||||||
|
|
||||||
|
func _on_showtape_load_cancel_button_pressed() -> void:
|
||||||
|
$ShowtapeLoadScreen/DialogPanel/InFilePath.text = ""
|
||||||
|
$ShowtapeLoadScreen.visible = false
|
||||||
|
|
||||||
|
func _on_showtape_load_open_button_pressed() -> void:
|
||||||
|
if (!FileAccess.file_exists($ShowtapeLoadScreen/DialogPanel/InFilePath.text.strip_edges())):
|
||||||
|
$FileDoesntExistDialog.show()
|
||||||
|
return
|
||||||
|
var file = FileAccess.open($ShowtapeLoadScreen/DialogPanel/InFilePath.text.strip_edges(), FileAccess.READ)
|
||||||
|
var content = file.get_as_text()
|
||||||
|
var header = content.split(";")[0].split(",")
|
||||||
|
if (header[1] != "2"):
|
||||||
|
$IncorrectShowtapeDialog.dialog_text = "This showtape is not the correct version!"
|
||||||
|
$IncorrectShowtapeDialog.show()
|
||||||
|
return
|
||||||
|
if (header[3] != stages_info[current_stage]["ust_type"]):
|
||||||
|
$IncorrectShowtapeDialog.dialog_text = "This showtape is not compatible with the currently selected stage.\nShowtape stage type: " + header[3]
|
||||||
|
$IncorrectShowtapeDialog.show()
|
||||||
|
return
|
||||||
|
show_name = header[2]
|
||||||
|
plot_data(content.split(";")[1])
|
||||||
|
$AudioStreamPlayer.stream = load_audio_from_buffer(Marshalls.base64_to_raw(content.split(";")[2]))
|
||||||
|
set_transport_enabled(true)
|
||||||
|
showtape_loaded = true
|
||||||
|
$MenuBar/EditingLabel.text = "Editing: " + show_name
|
||||||
|
$ShowtapeLoadScreen/DialogPanel/InFilePath.text = ""
|
||||||
|
$ShowtapeLoadScreen.visible = false
|
||||||
|
|
||||||
|
func _on_load_overwrite_confirmation_dialog_confirmed() -> void:
|
||||||
|
erase_all.emit()
|
||||||
|
$ShowtapeLoadScreen.visible = true
|
||||||
|
|
||||||
|
|
||||||
|
func _on_showtape_save_out_browse_button_pressed() -> void:
|
||||||
|
$SaveShowtapeFileDialog.show()
|
||||||
|
|
||||||
|
func _on_showtape_save_create_button_pressed() -> void:
|
||||||
|
var header = "UST,2,"+show_name.replace(",", "_").replace(";", "_")+","+stages_info[current_stage]["ust_type"]+";"
|
||||||
|
var data_out_string = save_data()
|
||||||
|
var file = FileAccess.open($ShowtapeSaveScreen/DialogPanel/OutFilePath.text, FileAccess.WRITE)
|
||||||
|
file.store_string(header+data_out_string+";"+Marshalls.raw_to_base64($AudioStreamPlayer.stream.data))
|
||||||
|
file.close()
|
||||||
|
$ShowtapeSaveScreen/DialogPanel/OutFilePath.text = ""
|
||||||
|
$ShowtapeSaveScreen.visible = false
|
||||||
|
|
||||||
|
func _on_showtape_save_cancel_button_pressed() -> void:
|
||||||
|
$ShowtapeSaveScreen/DialogPanel/OutFilePath.text = ""
|
||||||
|
$ShowtapeSaveScreen.visible = false
|
||||||
|
|
||||||
|
func _on_save_showtape_file_dialog_file_selected(path: String) -> void:
|
||||||
|
$ShowtapeSaveScreen/DialogPanel/OutFilePath.text = path
|
||||||
|
|
||||||
func _input(event: InputEvent) -> void:
|
func _input(event: InputEvent) -> void:
|
||||||
if event.is_action_pressed("toggle_editor_screen"):
|
if event.is_action_pressed("toggle_editor_screen"):
|
||||||
$CameraPreview.visible = !$CameraPreview.visible;
|
$CameraPreview.visible = !$CameraPreview.visible;
|
||||||
$CameraFullScreen.visible = !$CameraFullScreen.visible;
|
$CameraFullScreen.visible = !$CameraFullScreen.visible;
|
||||||
elif event.is_action_pressed("sequencer_play_pause"):
|
if event.is_action_pressed("fullscreen"):
|
||||||
|
if (!fullscreen):
|
||||||
|
fullscreen = true
|
||||||
|
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)
|
||||||
|
else:
|
||||||
|
fullscreen = false
|
||||||
|
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
|
||||||
|
if (event.is_action_pressed("cycle_camera_angle")):
|
||||||
|
cam_index += 1
|
||||||
|
get_node(stages_info[current_stage]["scene_ref_base"] + "Angle " + str((cam_index % stages_info[current_stage]["camera_count"])+1)).current = true
|
||||||
|
if (transport_enabled):
|
||||||
|
if event.is_action_pressed("sequencer_play_pause"):
|
||||||
if (playing): _on_pause_button_pressed()
|
if (playing): _on_pause_button_pressed()
|
||||||
else: _on_play_button_pressed()
|
else: _on_play_button_pressed()
|
||||||
elif event.is_action_pressed("sequencer_play_reverse"):
|
elif event.is_action_pressed("sequencer_play_reverse"):
|
||||||
|
@ -42,12 +745,34 @@ func _input(event: InputEvent) -> void:
|
||||||
_on_stop_button_pressed()
|
_on_stop_button_pressed()
|
||||||
|
|
||||||
func _physics_process(_delta: float) -> void:
|
func _physics_process(_delta: float) -> void:
|
||||||
if (playing || recording):
|
if (playing):
|
||||||
step.emit(playback_rate)
|
step.emit(playback_rate)
|
||||||
index += playback_rate
|
index += playback_rate
|
||||||
if (index <= 0): _on_stop_button_pressed()
|
if (index <= 0): _on_stop_button_pressed()
|
||||||
update_time_label()
|
update_time_label()
|
||||||
|
|
||||||
|
func load_audio(path: String) -> AudioStream:
|
||||||
|
var sound
|
||||||
|
match (path.split(".")[-1]):
|
||||||
|
"mp3":
|
||||||
|
sound = AudioStreamMP3.load_from_file(path)
|
||||||
|
"wav":
|
||||||
|
sound = AudioStreamWAV.load_from_file(path)
|
||||||
|
"ogg":
|
||||||
|
sound = AudioStreamOggVorbis.load_from_file(path)
|
||||||
|
return sound
|
||||||
|
|
||||||
|
func load_audio_from_buffer(data: PackedByteArray) -> AudioStream:
|
||||||
|
var sound
|
||||||
|
match (data[0]):
|
||||||
|
73:
|
||||||
|
sound = AudioStreamMP3.load_from_buffer(data)
|
||||||
|
82:
|
||||||
|
sound = AudioStreamWAV.load_from_buffer(data)
|
||||||
|
79:
|
||||||
|
sound = AudioStreamOggVorbis.load_from_buffer(data)
|
||||||
|
return sound
|
||||||
|
|
||||||
func _on_size_changed() -> void:
|
func _on_size_changed() -> void:
|
||||||
$SubViewport.size = $ColorRect.size
|
$SubViewport.size = $ColorRect.size
|
||||||
|
|
||||||
|
@ -57,43 +782,77 @@ func _on_controls_button_pressed() -> void:
|
||||||
func _on_credits_button_pressed() -> void:
|
func _on_credits_button_pressed() -> void:
|
||||||
$CreditsScreen.visible = true
|
$CreditsScreen.visible = true
|
||||||
|
|
||||||
func _on_controls_input_eater_pressed() -> void:
|
func _on_input_eater_pressed() -> void:
|
||||||
$ControlsScreen.visible = false
|
$ControlsScreen.visible = false
|
||||||
|
|
||||||
func _on_credits_input_eater_pressed() -> void:
|
|
||||||
$CreditsScreen.visible = false
|
$CreditsScreen.visible = false
|
||||||
|
$ShowtapeNewScreen.visible = false
|
||||||
|
$ShowtapeLoadScreen.visible = false
|
||||||
|
$ShowtapeSaveScreen.visible = false
|
||||||
|
|
||||||
func _on_v_scroll_bar_value_changed(value: float) -> void:
|
func _on_v_scroll_bar_value_changed(value: float) -> void:
|
||||||
$SequencerPanel/TimelinePanel/InvisibleMask/RowsHandle.position.y = value * -44
|
$SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.position.y = value * -44
|
||||||
|
|
||||||
|
func _on_flow_v_scroll_bar_value_changed(value: float) -> void:
|
||||||
|
$FlyoutPanel/FlowControls/InvisibleMask/FlowHandle.position.y = value * -44
|
||||||
|
|
||||||
|
func _on_movement_v_scroll_bar_value_changed(value: float) -> void:
|
||||||
|
$FlyoutPanel/Movements/InvisibleMask/MovementHandle.position.y = value * -44
|
||||||
|
|
||||||
|
func _on_cosmetics_v_scroll_bar_value_changed(value: float) -> void:
|
||||||
|
$FlyoutPanel/Cosmetics/InvisibleMask/CosmeticsHandle.position.y = value * -44
|
||||||
|
|
||||||
|
func _erase_all() -> void:
|
||||||
|
playing = false
|
||||||
|
$AudioStreamPlayer.stop()
|
||||||
|
$AudioStreamPlayer.seek(0)
|
||||||
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
|
index = 0
|
||||||
|
update_time_label()
|
||||||
|
show_name = ""
|
||||||
|
$AudioStreamPlayer.stream = null
|
||||||
|
set_transport_enabled(false)
|
||||||
|
showtape_loaded = false
|
||||||
|
$MenuBar/EditingLabel.text = "No showtape loaded."
|
||||||
|
|
||||||
|
func _on_movements_flyout_button_toggled(toggled_on: bool) -> void:
|
||||||
|
$FlyoutPanel/Movements.visible = toggled_on
|
||||||
|
|
||||||
|
func _on_flows_flyout_button_toggled(toggled_on: bool) -> void:
|
||||||
|
$FlyoutPanel/FlowControls.visible = toggled_on
|
||||||
|
|
||||||
|
func _on_camera_flyout_button_toggled(toggled_on: bool) -> void:
|
||||||
|
$FlyoutPanel/Camera.visible = toggled_on
|
||||||
|
|
||||||
|
func _on_cosmetics_flyout_button_toggled(toggled_on: bool) -> void:
|
||||||
|
$FlyoutPanel/Cosmetics.visible = toggled_on
|
||||||
|
|
||||||
|
|
||||||
func _on_play_button_pressed() -> void:
|
func _on_play_button_pressed() -> void:
|
||||||
playback_rate = 1
|
playback_rate = 1
|
||||||
|
$AudioStreamPlayer.pitch_scale = 1
|
||||||
|
$AudioStreamPlayer.play(float(index)/60.0)
|
||||||
playing = true
|
playing = true
|
||||||
recording = false
|
|
||||||
end_recording.emit()
|
|
||||||
|
|
||||||
func _on_pause_button_pressed() -> void:
|
func _on_pause_button_pressed() -> void:
|
||||||
|
$AudioStreamPlayer.stop()
|
||||||
playing = false
|
playing = false
|
||||||
recording = false
|
|
||||||
end_recording.emit()
|
|
||||||
|
|
||||||
func _on_play_backwards_button_pressed() -> void:
|
func _on_play_backwards_button_pressed() -> void:
|
||||||
playback_rate = -1
|
playback_rate = -1
|
||||||
|
$AudioStreamPlayer.stop() # cant play backwards :(
|
||||||
playing = true
|
playing = true
|
||||||
recording = false
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
end_recording.emit()
|
|
||||||
|
|
||||||
func _on_fast_backwards_button_pressed() -> void:
|
func _on_fast_backwards_button_pressed() -> void:
|
||||||
playback_rate = -2
|
playback_rate = -2
|
||||||
|
$AudioStreamPlayer.stop() # cant play backwards :(
|
||||||
playing = true
|
playing = true
|
||||||
recording = false
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
end_recording.emit()
|
|
||||||
|
|
||||||
func _on_step_backwards_button_pressed() -> void:
|
func _on_step_backwards_button_pressed() -> void:
|
||||||
playing = false
|
playing = false
|
||||||
recording = false
|
$AudioStreamPlayer.stop()
|
||||||
end_recording.emit()
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
if (index != 0):
|
if (index != 0):
|
||||||
step.emit(-1)
|
step.emit(-1)
|
||||||
index -= 1
|
index -= 1
|
||||||
|
@ -101,28 +860,88 @@ func _on_step_backwards_button_pressed() -> void:
|
||||||
|
|
||||||
func _on_fast_forward_button_pressed() -> void:
|
func _on_fast_forward_button_pressed() -> void:
|
||||||
playback_rate = 2
|
playback_rate = 2
|
||||||
|
$AudioStreamPlayer.pitch_scale = 2
|
||||||
|
$AudioStreamPlayer.play(float(index)/60.0)
|
||||||
playing = true
|
playing = true
|
||||||
recording = false
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
end_recording.emit()
|
|
||||||
|
|
||||||
func _on_step_forward_button_pressed() -> void:
|
func _on_step_forward_button_pressed() -> void:
|
||||||
playing = false
|
playing = false
|
||||||
recording = false
|
$AudioStreamPlayer.stop()
|
||||||
end_recording.emit()
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
step.emit(1)
|
step.emit(1)
|
||||||
index += 1
|
index += 1
|
||||||
update_time_label()
|
update_time_label()
|
||||||
|
|
||||||
func _on_record_button_pressed() -> void:
|
func _on_record_button_toggled(toggled_on: bool) -> void:
|
||||||
playback_rate = 1
|
if (playing):
|
||||||
playing = false
|
# starting recording while playing causes issues
|
||||||
recording = true
|
_on_stop_button_pressed()
|
||||||
start_recording.emit()
|
recording = toggled_on
|
||||||
|
if (toggled_on): start_recording.emit()
|
||||||
|
else: end_recording.emit()
|
||||||
|
|
||||||
func _on_stop_button_pressed() -> void:
|
func _on_stop_button_pressed() -> void:
|
||||||
playing = false
|
playing = false
|
||||||
recording = false
|
$AudioStreamPlayer.stop()
|
||||||
|
$AudioStreamPlayer.seek(0)
|
||||||
|
$SequencerPanel/TransportControls/RecordButton.button_pressed = false
|
||||||
index = 0
|
index = 0
|
||||||
end_recording.emit()
|
|
||||||
return_to_zero.emit()
|
return_to_zero.emit()
|
||||||
update_time_label()
|
update_time_label()
|
||||||
|
|
||||||
|
func save_data() -> String:
|
||||||
|
var write_out : String = ""
|
||||||
|
var temp_data = {}
|
||||||
|
var longest_channel = 0
|
||||||
|
for movement_row in $SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.get_children():
|
||||||
|
temp_data[movement_row.movement_bit] = movement_row.movements
|
||||||
|
if (movement_row.movements.size() > longest_channel): longest_channel = movement_row.movements.size()
|
||||||
|
for i in range(longest_channel+1):
|
||||||
|
var total_frame_index = 1
|
||||||
|
var fstring = ""
|
||||||
|
for j in range(64):
|
||||||
|
var f_quartet = 0
|
||||||
|
for k in range(4):
|
||||||
|
if (index_get_safe(i, index_s_get_safe(total_frame_index, temp_data))):
|
||||||
|
f_quartet += int(pow(2, k))
|
||||||
|
total_frame_index += 1
|
||||||
|
fstring = ("%01X" % f_quartet) + fstring
|
||||||
|
write_out += fstring + ","
|
||||||
|
return write_out
|
||||||
|
|
||||||
|
func plot_data(data: String):
|
||||||
|
start_recording.emit()
|
||||||
|
var evil_glass = []
|
||||||
|
for movement_row in $SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.get_children():
|
||||||
|
evil_glass.append(movement_row.movement_bit)
|
||||||
|
for frame_string in data.split(","):
|
||||||
|
if (frame_string == ""): continue
|
||||||
|
var check_frame_split = frame_string.split()
|
||||||
|
check_frame_split.reverse()
|
||||||
|
for i in stages_info[current_stage]["bit_mapping"]:
|
||||||
|
var er = false
|
||||||
|
if ((check_frame_split[(i - 1) / 4].hex_to_int() & int(pow(2, ((i - 1) % 4)))) == int(pow(2, ((i - 1) % 4)))):
|
||||||
|
er = true
|
||||||
|
$SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.get_child(evil_glass.find(i)).forced_etchable = true
|
||||||
|
$SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.get_child(evil_glass.find(i)).etching = er
|
||||||
|
step.emit(1)
|
||||||
|
for movement_row in $SequencerPanel/TimelinePanel/InvisibleMask/MovementRowsContainer.get_children():
|
||||||
|
movement_row.forced_etchable = false
|
||||||
|
movement_row.etching = false
|
||||||
|
end_recording.emit()
|
||||||
|
return_to_zero.emit()
|
||||||
|
|
||||||
|
func index_get_safe(cindex: int, data: Array[bool]) -> bool:
|
||||||
|
if (cindex > data.size()-1): return false
|
||||||
|
if (cindex < 0): return false
|
||||||
|
var out = data.get(cindex)
|
||||||
|
if (out == null): return false
|
||||||
|
return out
|
||||||
|
|
||||||
|
func index_s_get_safe(cindex: int, data: Dictionary) -> Array[bool]:
|
||||||
|
if (cindex > data.size()-1): return [ false ]
|
||||||
|
if (cindex < 0): return [ false ]
|
||||||
|
var out = data.get(cindex)
|
||||||
|
if (out == null): return [ false ]
|
||||||
|
return out
|
||||||
|
|
21
Scripts/FlowControl.gd
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
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.vis_name
|
||||||
|
$Panel/InStepper.value = self.in_value
|
||||||
|
$Panel/OutStepper.value = self.out_value
|
||||||
|
|
||||||
|
func _on_in_stepper_value_changed(value: float) -> void:
|
||||||
|
self.in_value = value
|
||||||
|
in_value_updated.emit(value)
|
||||||
|
|
||||||
|
func _on_out_stepper_value_changed(value: float) -> void:
|
||||||
|
self.out_value = value
|
||||||
|
out_value_updated.emit(value)
|