Compare commits

...

9 Commits

Author SHA1 Message Date
1f904cdb13 final tuto movement
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 20s
Create tag and build when new code gets to main / Test (push) Successful in 7m16s
Create tag and build when new code gets to main / Export (push) Successful in 9m29s
2026-02-05 15:26:40 +01:00
db93e8f68e base movement tutorial done
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 19s
Create tag and build when new code gets to main / Test (push) Successful in 6m48s
Create tag and build when new code gets to main / Export (push) Successful in 8m56s
2026-02-05 10:44:32 +01:00
4c302be16b more tutorial 2026-02-05 10:06:25 +01:00
013545af8a more tutorial 2026-02-05 10:06:12 +01:00
9f5769bb76 testing ci
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 19s
Create tag and build when new code gets to main / Test (push) Successful in 7m30s
Create tag and build when new code gets to main / Export (push) Successful in 9m35s
2026-02-05 08:36:41 +01:00
8a7ad9d418 test ci 2026-02-05 08:32:16 +01:00
f589ef8dec basic movement tutorial 2026-02-05 08:30:35 +01:00
55a12ec7cd new sky and greybox materials 2026-02-04 13:11:00 +01:00
fad528faa1 refactored the way levels are listed in the toolbox
Some checks failed
Create tag and build when new code gets to main / BumpTag (push) Successful in 19s
Create tag and build when new code gets to main / Export (push) Has been cancelled
Create tag and build when new code gets to main / Test (push) Has been cancelled
2026-02-04 11:57:30 +01:00
82 changed files with 3206 additions and 636 deletions

View File

@@ -3,6 +3,8 @@ extends Node
class_name SceneLister class_name SceneLister
## Helper class for listing all the scenes in a directory. ## Helper class for listing all the scenes in a directory.
@export_tool_button("Refresh files", "Callable") var refresh_files = _refresh_files
## List of paths to scene files. ## List of paths to scene files.
## Prefilled in the editor by selecting a directory. ## Prefilled in the editor by selecting a directory.
@export var files : Array[String] @export var files : Array[String]
@@ -14,10 +16,20 @@ class_name SceneLister
func _refresh_files(): func _refresh_files():
if not is_inside_tree() or directory.is_empty(): return if not is_inside_tree() or directory.is_empty(): return
var dir_access = DirAccess.open(directory) files.clear()
find_files_in_dir(directory)
func find_files_in_dir(current_dir: String) -> void:
if not is_inside_tree() or directory.is_empty():
return
var dir_access = DirAccess.open(current_dir)
if dir_access: if dir_access:
files.clear()
for file in dir_access.get_files(): for file in dir_access.get_files():
print(current_dir + "/" + file)
if not file.ends_with(".tscn"): if not file.ends_with(".tscn"):
continue continue
files.append(directory + "/" + file) files.append(current_dir + "/" + file)
for sub_directory in dir_access.get_directories():
if sub_directory.begins_with("_"):
continue
find_files_in_dir(directory + "/" + sub_directory)

View File

@@ -1,9 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://31aulub2nqov"] [gd_resource type="StandardMaterial3D" format=3 uid="uid://31aulub2nqov"]
[ext_resource type="Texture2D" uid="uid://hf6y7ws45y8p" path="res://assets/materials/greybox/greybox.png" id="1_qik1o"] [ext_resource type="Texture2D" uid="uid://bqqs6jweml03w" path="res://assets/materials/greybox/textures/greybox_grey_grid.png" id="1_2depu"]
[resource] [resource]
albedo_texture = ExtResource("1_qik1o") albedo_texture = ExtResource("1_2depu")
uv1_triplanar = true uv1_triplanar = true
uv1_world_triplanar = true uv1_world_triplanar = true
uv2_world_triplanar = true uv2_world_triplanar = true

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://bsoubxtiit1pf"]
[ext_resource type="Texture2D" uid="uid://nvc7eq13ym8q" path="res://assets/materials/greybox/textures/greybox_teal_grid.png" id="1_11axt"]
[resource]
albedo_texture = ExtResource("1_11axt")
uv1_triplanar = true
uv1_world_triplanar = true
uv2_world_triplanar = true

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dpgodnag1ydp1"]
[ext_resource type="Texture2D" uid="uid://bxdr0oajba7d2" path="res://assets/materials/greybox/textures/greybox_red_grid.png" id="1_yql7t"]
[resource]
albedo_texture = ExtResource("1_yql7t")
uv1_triplanar = true
uv1_world_triplanar = true
uv2_world_triplanar = true

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dr51up0sghuyd"]
[ext_resource type="Texture2D" uid="uid://bf2kevgw4gu03" path="res://assets/materials/greybox/textures/greybox_orange_grid.png" id="1_liak7"]
[resource]
albedo_texture = ExtResource("1_liak7")
uv1_triplanar = true
uv1_world_triplanar = true
uv2_world_triplanar = true

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://cqha1a2h1dg86"]
[ext_resource type="Texture2D" uid="uid://c0kfbwkede8q" path="res://assets/materials/greybox/textures/greybox_yellow_grid.png" id="1_rg5sa"]
[resource]
albedo_texture = ExtResource("1_rg5sa")
uv1_triplanar = true
uv1_world_triplanar = true
uv2_world_triplanar = true

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://bm5f7jraqm8n0"]
[ext_resource type="Texture2D" uid="uid://c4si5cetpfjsx" path="res://assets/materials/greybox/textures/greybox_blue_grid.png" id="1_ctfpt"]
[resource]
albedo_texture = ExtResource("1_ctfpt")
uv1_triplanar = true
uv1_world_triplanar = true
uv2_world_triplanar = true

View File

@@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" format=3 uid="uid://dw6lc8evmyc4d"]
[ext_resource type="Texture2D" uid="uid://bkjusurqvb4q" path="res://assets/materials/greybox/textures/greybox_green_grid.png" id="1_0gip5"]
[resource]
albedo_texture = ExtResource("1_0gip5")
uv1_triplanar = true
uv1_world_triplanar = true
uv2_world_triplanar = true

View File

@@ -3,8 +3,8 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://hf6y7ws45y8p" uid="uid://hf6y7ws45y8p"
path.s3tc="res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.s3tc.ctex" path.s3tc="res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.s3tc.ctex"
path.etc2="res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.etc2.ctex" path.etc2="res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.etc2.ctex"
metadata={ metadata={
"imported_formats": ["s3tc_bptc", "etc2_astc"], "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true "vram_texture": true
@@ -12,8 +12,8 @@ metadata={
[deps] [deps]
source_file="res://assets/materials/greybox/greybox.png" source_file="res://assets/materials/greybox/textures/greybox.png"
dest_files=["res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.s3tc.ctex", "res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.etc2.ctex"] dest_files=["res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.s3tc.ctex", "res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.etc2.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://c4si5cetpfjsx" uid="uid://c4si5cetpfjsx"
path="res://.godot/imported/greybox_blue_grid.png-7e1f5a9ae717eb71e07b6f2d0690b37c.ctex" path.s3tc="res://.godot/imported/greybox_blue_grid.png-5c9700c5b21990cb4bc6c6cbec8dd59c.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_blue_grid.png-5c9700c5b21990cb4bc6c6cbec8dd59c.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_blue_grid.png" source_file="res://assets/materials/greybox/textures/greybox_blue_grid.png"
dest_files=["res://.godot/imported/greybox_blue_grid.png-7e1f5a9ae717eb71e07b6f2d0690b37c.ctex"] dest_files=["res://.godot/imported/greybox_blue_grid.png-5c9700c5b21990cb4bc6c6cbec8dd59c.s3tc.ctex", "res://.godot/imported/greybox_blue_grid.png-5c9700c5b21990cb4bc6c6cbec8dd59c.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://cubdmqt7mvofh" uid="uid://cubdmqt7mvofh"
path="res://.godot/imported/greybox_blue_solid.png-1df6f7c2eb7a6354084c7cdcdf55933c.ctex" path="res://.godot/imported/greybox_blue_solid.png-bec53eb713d4b443560ef2ded68e2d34.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_blue_solid.png" source_file="res://assets/materials/greybox/textures/greybox_blue_solid.png"
dest_files=["res://.godot/imported/greybox_blue_solid.png-1df6f7c2eb7a6354084c7cdcdf55933c.ctex"] dest_files=["res://.godot/imported/greybox_blue_solid.png-bec53eb713d4b443560ef2ded68e2d34.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://cv3b5gjslenlr" uid="uid://cv3b5gjslenlr"
path="res://.godot/imported/greybox_dark_grid.png-263a03d38170005000089c1f9ac796ff.ctex" path="res://.godot/imported/greybox_dark_grid.png-c5f50fb192d19cb0dfbefd560a3c3506.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_dark_grid.png" source_file="res://assets/materials/greybox/textures/greybox_dark_grid.png"
dest_files=["res://.godot/imported/greybox_dark_grid.png-263a03d38170005000089c1f9ac796ff.ctex"] dest_files=["res://.godot/imported/greybox_dark_grid.png-c5f50fb192d19cb0dfbefd560a3c3506.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://c0fb4f41hssm5" uid="uid://c0fb4f41hssm5"
path="res://.godot/imported/greybox_dark_solid.png-d2d73154d54369bf2237ad64f7f03b2c.ctex" path="res://.godot/imported/greybox_dark_solid.png-c9b23b4d3b03f5b3dd355ef93d1d6197.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_dark_solid.png" source_file="res://assets/materials/greybox/textures/greybox_dark_solid.png"
dest_files=["res://.godot/imported/greybox_dark_solid.png-d2d73154d54369bf2237ad64f7f03b2c.ctex"] dest_files=["res://.godot/imported/greybox_dark_solid.png-c9b23b4d3b03f5b3dd355ef93d1d6197.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bkjusurqvb4q" uid="uid://bkjusurqvb4q"
path="res://.godot/imported/greybox_green_grid.png-02f08143965d80ec158928c0bba1275f.ctex" path.s3tc="res://.godot/imported/greybox_green_grid.png-71179d74b85b8b1b6a10cee6d9053bb1.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_green_grid.png-71179d74b85b8b1b6a10cee6d9053bb1.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_green_grid.png" source_file="res://assets/materials/greybox/textures/greybox_green_grid.png"
dest_files=["res://.godot/imported/greybox_green_grid.png-02f08143965d80ec158928c0bba1275f.ctex"] dest_files=["res://.godot/imported/greybox_green_grid.png-71179d74b85b8b1b6a10cee6d9053bb1.s3tc.ctex", "res://.godot/imported/greybox_green_grid.png-71179d74b85b8b1b6a10cee6d9053bb1.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bacqbuyggedyy" uid="uid://bacqbuyggedyy"
path="res://.godot/imported/greybox_green_solid.png-9b057ed8647c21fdb0b8d38f5aa65114.ctex" path="res://.godot/imported/greybox_green_solid.png-c731d62c1944bf66df3adf4aa67d475d.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_green_solid.png" source_file="res://assets/materials/greybox/textures/greybox_green_solid.png"
dest_files=["res://.godot/imported/greybox_green_solid.png-9b057ed8647c21fdb0b8d38f5aa65114.ctex"] dest_files=["res://.godot/imported/greybox_green_solid.png-c731d62c1944bf66df3adf4aa67d475d.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bqqs6jweml03w" uid="uid://bqqs6jweml03w"
path="res://.godot/imported/greybox_grey_grid.png-1e81b400cc0d08d7726448732af748bd.ctex" path.s3tc="res://.godot/imported/greybox_grey_grid.png-6808e20ba2ca56f8962cbb04ce28c42e.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_grey_grid.png-6808e20ba2ca56f8962cbb04ce28c42e.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_grey_grid.png" source_file="res://assets/materials/greybox/textures/greybox_grey_grid.png"
dest_files=["res://.godot/imported/greybox_grey_grid.png-1e81b400cc0d08d7726448732af748bd.ctex"] dest_files=["res://.godot/imported/greybox_grey_grid.png-6808e20ba2ca56f8962cbb04ce28c42e.s3tc.ctex", "res://.godot/imported/greybox_grey_grid.png-6808e20ba2ca56f8962cbb04ce28c42e.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://d35wx32padgp1" uid="uid://d35wx32padgp1"
path="res://.godot/imported/greybox_grey_solid.png-6e55084ec1525c942aeae3c7a0c00f34.ctex" path="res://.godot/imported/greybox_grey_solid.png-875c5abde1aaf55ea27b3349bbb52417.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_grey_solid.png" source_file="res://assets/materials/greybox/textures/greybox_grey_solid.png"
dest_files=["res://.godot/imported/greybox_grey_solid.png-6e55084ec1525c942aeae3c7a0c00f34.ctex"] dest_files=["res://.godot/imported/greybox_grey_solid.png-875c5abde1aaf55ea27b3349bbb52417.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bhvwhtsguc6g8" uid="uid://bhvwhtsguc6g8"
path="res://.godot/imported/greybox_grey_solid_2.png-cb58867f33b2c5be382df42dae27b331.ctex" path="res://.godot/imported/greybox_grey_solid_2.png-263a7686c8192a3a768580bfd90c297c.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_grey_solid_2.png" source_file="res://assets/materials/greybox/textures/greybox_grey_solid_2.png"
dest_files=["res://.godot/imported/greybox_grey_solid_2.png-cb58867f33b2c5be382df42dae27b331.ctex"] dest_files=["res://.godot/imported/greybox_grey_solid_2.png-263a7686c8192a3a768580bfd90c297c.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://d0qflfrscommy" uid="uid://d0qflfrscommy"
path="res://.godot/imported/greybox_light_grid.png-ad9e413fc03f4a1fe9e0409bfc8a73d9.ctex" path.s3tc="res://.godot/imported/greybox_light_grid.png-b6cd6f6ede74a9684574fd3f09071273.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_light_grid.png-b6cd6f6ede74a9684574fd3f09071273.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_light_grid.png" source_file="res://assets/materials/greybox/textures/greybox_light_grid.png"
dest_files=["res://.godot/imported/greybox_light_grid.png-ad9e413fc03f4a1fe9e0409bfc8a73d9.ctex"] dest_files=["res://.godot/imported/greybox_light_grid.png-b6cd6f6ede74a9684574fd3f09071273.s3tc.ctex", "res://.godot/imported/greybox_light_grid.png-b6cd6f6ede74a9684574fd3f09071273.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://v6xb3yyu4bam" uid="uid://v6xb3yyu4bam"
path="res://.godot/imported/greybox_light_solid.png-568b78db69c5862186dbc87475f9cebd.ctex" path="res://.godot/imported/greybox_light_solid.png-3f7fd6bb358bebc4746b7c8d54cd6c64.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_light_solid.png" source_file="res://assets/materials/greybox/textures/greybox_light_solid.png"
dest_files=["res://.godot/imported/greybox_light_solid.png-568b78db69c5862186dbc87475f9cebd.ctex"] dest_files=["res://.godot/imported/greybox_light_solid.png-3f7fd6bb358bebc4746b7c8d54cd6c64.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://c74sh3woly0qb" uid="uid://c74sh3woly0qb"
path="res://.godot/imported/greybox_lime_grid.png-408a0cbdbfe44763a4fc49927b9b1fd8.ctex" path="res://.godot/imported/greybox_lime_grid.png-0f79995f0b02609d17b00f3707fb24ef.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_lime_grid.png" source_file="res://assets/materials/greybox/textures/greybox_lime_grid.png"
dest_files=["res://.godot/imported/greybox_lime_grid.png-408a0cbdbfe44763a4fc49927b9b1fd8.ctex"] dest_files=["res://.godot/imported/greybox_lime_grid.png-0f79995f0b02609d17b00f3707fb24ef.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://d2w4kpdxjqs0v" uid="uid://d2w4kpdxjqs0v"
path="res://.godot/imported/greybox_lime_solid.png-fff96a9ab1098436044cdd8809274600.ctex" path="res://.godot/imported/greybox_lime_solid.png-f3216d34cf09c05f1cd3fc141f7ae087.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_lime_solid.png" source_file="res://assets/materials/greybox/textures/greybox_lime_solid.png"
dest_files=["res://.godot/imported/greybox_lime_solid.png-fff96a9ab1098436044cdd8809274600.ctex"] dest_files=["res://.godot/imported/greybox_lime_solid.png-f3216d34cf09c05f1cd3fc141f7ae087.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bf2kevgw4gu03" uid="uid://bf2kevgw4gu03"
path="res://.godot/imported/greybox_orange_grid.png-0d1b53b56f229d8738c84ec7fd8ee11b.ctex" path.s3tc="res://.godot/imported/greybox_orange_grid.png-856aef8b25e26ddc4b834f4017178c33.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_orange_grid.png-856aef8b25e26ddc4b834f4017178c33.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_orange_grid.png" source_file="res://assets/materials/greybox/textures/greybox_orange_grid.png"
dest_files=["res://.godot/imported/greybox_orange_grid.png-0d1b53b56f229d8738c84ec7fd8ee11b.ctex"] dest_files=["res://.godot/imported/greybox_orange_grid.png-856aef8b25e26ddc4b834f4017178c33.s3tc.ctex", "res://.godot/imported/greybox_orange_grid.png-856aef8b25e26ddc4b834f4017178c33.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bwt2ejfdvi505" uid="uid://bwt2ejfdvi505"
path="res://.godot/imported/greybox_orange_solid.png-4f16d14dbcebdeb70269d91c7b6f2178.ctex" path="res://.godot/imported/greybox_orange_solid.png-8ec2f931ce061061b826c303eaa19923.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_orange_solid.png" source_file="res://assets/materials/greybox/textures/greybox_orange_solid.png"
dest_files=["res://.godot/imported/greybox_orange_solid.png-4f16d14dbcebdeb70269d91c7b6f2178.ctex"] dest_files=["res://.godot/imported/greybox_orange_solid.png-8ec2f931ce061061b826c303eaa19923.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://des0wknntv107" uid="uid://des0wknntv107"
path="res://.godot/imported/greybox_purple_grid.png-6e10342032c072499ab9d17913ef9cc6.ctex" path="res://.godot/imported/greybox_purple_grid.png-7b4b2376fe4a76b68f2129f7c61da602.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_purple_grid.png" source_file="res://assets/materials/greybox/textures/greybox_purple_grid.png"
dest_files=["res://.godot/imported/greybox_purple_grid.png-6e10342032c072499ab9d17913ef9cc6.ctex"] dest_files=["res://.godot/imported/greybox_purple_grid.png-7b4b2376fe4a76b68f2129f7c61da602.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://c3sh7e12tuphh" uid="uid://c3sh7e12tuphh"
path="res://.godot/imported/greybox_purple_solid.png-00d7788aa78855df728a7162f936b544.ctex" path="res://.godot/imported/greybox_purple_solid.png-f0dddf8a3033867ebe95a4e8b443bfd6.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_purple_solid.png" source_file="res://assets/materials/greybox/textures/greybox_purple_solid.png"
dest_files=["res://.godot/imported/greybox_purple_solid.png-00d7788aa78855df728a7162f936b544.ctex"] dest_files=["res://.godot/imported/greybox_purple_solid.png-f0dddf8a3033867ebe95a4e8b443bfd6.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bxdr0oajba7d2" uid="uid://bxdr0oajba7d2"
path="res://.godot/imported/greybox_red_grid.png-cf507bd72cc6f4b1c1e358c1f48c3d09.ctex" path.s3tc="res://.godot/imported/greybox_red_grid.png-369c1aff2079e9aec2caaefed0315462.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_red_grid.png-369c1aff2079e9aec2caaefed0315462.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_red_grid.png" source_file="res://assets/materials/greybox/textures/greybox_red_grid.png"
dest_files=["res://.godot/imported/greybox_red_grid.png-cf507bd72cc6f4b1c1e358c1f48c3d09.ctex"] dest_files=["res://.godot/imported/greybox_red_grid.png-369c1aff2079e9aec2caaefed0315462.s3tc.ctex", "res://.godot/imported/greybox_red_grid.png-369c1aff2079e9aec2caaefed0315462.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://cun7t30skbay6" uid="uid://cun7t30skbay6"
path="res://.godot/imported/greybox_red_solid.png-312f112a08a409666bc65953c208f856.ctex" path="res://.godot/imported/greybox_red_solid.png-92140d7322061ea2b05ddbf59b196268.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_red_solid.png" source_file="res://assets/materials/greybox/textures/greybox_red_solid.png"
dest_files=["res://.godot/imported/greybox_red_solid.png-312f112a08a409666bc65953c208f856.ctex"] dest_files=["res://.godot/imported/greybox_red_solid.png-92140d7322061ea2b05ddbf59b196268.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://nvc7eq13ym8q" uid="uid://nvc7eq13ym8q"
path="res://.godot/imported/greybox_teal_grid.png-93e9845a0ba29979243a884af823a8ce.ctex" path.s3tc="res://.godot/imported/greybox_teal_grid.png-7c51e2d974975d0c553f4ad39162c6bf.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_teal_grid.png-7c51e2d974975d0c553f4ad39162c6bf.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_teal_grid.png" source_file="res://assets/materials/greybox/textures/greybox_teal_grid.png"
dest_files=["res://.godot/imported/greybox_teal_grid.png-93e9845a0ba29979243a884af823a8ce.ctex"] dest_files=["res://.godot/imported/greybox_teal_grid.png-7c51e2d974975d0c553f4ad39162c6bf.s3tc.ctex", "res://.godot/imported/greybox_teal_grid.png-7c51e2d974975d0c553f4ad39162c6bf.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bn0gggbdrcpw" uid="uid://bn0gggbdrcpw"
path="res://.godot/imported/greybox_teal_solid.png-feb8022f9b39b615075907884dafe9bc.ctex" path="res://.godot/imported/greybox_teal_solid.png-d616fa54ebd6a6e1743cc2875f8d2e76.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_teal_solid.png" source_file="res://assets/materials/greybox/textures/greybox_teal_solid.png"
dest_files=["res://.godot/imported/greybox_teal_solid.png-feb8022f9b39b615075907884dafe9bc.ctex"] dest_files=["res://.godot/imported/greybox_teal_solid.png-d616fa54ebd6a6e1743cc2875f8d2e76.ctex"]
[params] [params]

View File

@@ -3,19 +3,21 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://c0kfbwkede8q" uid="uid://c0kfbwkede8q"
path="res://.godot/imported/greybox_yellow_grid.png-11577a22b535f23ec47b7f40ec4e6bdf.ctex" path.s3tc="res://.godot/imported/greybox_yellow_grid.png-52042527b866531f95379dcaa9f5f24e.s3tc.ctex"
path.etc2="res://.godot/imported/greybox_yellow_grid.png-52042527b866531f95379dcaa9f5f24e.etc2.ctex"
metadata={ metadata={
"vram_texture": false "imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_yellow_grid.png" source_file="res://assets/materials/greybox/textures/greybox_yellow_grid.png"
dest_files=["res://.godot/imported/greybox_yellow_grid.png-11577a22b535f23ec47b7f40ec4e6bdf.ctex"] dest_files=["res://.godot/imported/greybox_yellow_grid.png-52042527b866531f95379dcaa9f5f24e.s3tc.ctex", "res://.godot/imported/greybox_yellow_grid.png-52042527b866531f95379dcaa9f5f24e.etc2.ctex"]
[params] [params]
compress/mode=0 compress/mode=2
compress/high_quality=false compress/high_quality=false
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/uastc_level=0 compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0
compress/channel_pack=0 compress/channel_pack=0
mipmaps/generate=false mipmaps/generate=true
mipmaps/limit=-1 mipmaps/limit=-1
roughness/mode=0 roughness/mode=0
roughness/src_normal="" roughness/src_normal=""
@@ -37,4 +39,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false process/hdr_as_srgb=false
process/hdr_clamp_exposure=false process/hdr_clamp_exposure=false
process/size_limit=0 process/size_limit=0
detect_3d/compress_to=1 detect_3d/compress_to=0

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://ehp3ggwyy8xn" uid="uid://ehp3ggwyy8xn"
path="res://.godot/imported/greybox_yellow_solid.png-84ef5d31d11d4ba6e66cf06d3fe4afaa.ctex" path="res://.godot/imported/greybox_yellow_solid.png-73cca48bd5f3e1f42a620caa36ddf3fa.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/greybox_yellow_solid.png" source_file="res://assets/materials/greybox/textures/greybox_yellow_solid.png"
dest_files=["res://.godot/imported/greybox_yellow_solid.png-84ef5d31d11d4ba6e66cf06d3fe4afaa.ctex"] dest_files=["res://.godot/imported/greybox_yellow_solid.png-73cca48bd5f3e1f42a620caa36ddf3fa.ctex"]
[params] [params]

View File

@@ -3,15 +3,15 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://b305rs4ouva73" uid="uid://b305rs4ouva73"
path="res://.godot/imported/placeholder.png-4991ff4861e490361fb0a48149b41ce7.ctex" path="res://.godot/imported/placeholder.png-aaaf199f0677d94c1c33a24a0e27bdf2.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/materials/greybox/placeholder.png" source_file="res://assets/materials/greybox/textures/placeholder.png"
dest_files=["res://.godot/imported/placeholder.png-4991ff4861e490361fb0a48149b41ce7.ctex"] dest_files=["res://.godot/imported/placeholder.png-aaaf199f0677d94c1c33a24a0e27bdf2.ctex"]
[params] [params]

View File

@@ -0,0 +1,19 @@
[gd_scene format=3 uid="uid://87l65i0f2fqi"]
[ext_resource type="PackedScene" uid="uid://dblmypced1fvv" path="res://assets/meshes/stairs/stairs.fbx" id="1_s50te"]
[ext_resource type="Script" uid="uid://do8vihuwc4iib" path="res://tools/generate_collisions.gd" id="2_xm10s"]
[sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_s50te"]
data = PackedVector3Array(0.5, 0, -0.5, -0.5, 0.25, -0.5, -0.5, 0, -0.5, -0.5, 0.25, -0.5, 0.5, 0, -0.5, -0.25, 0.25, -0.5, -0.25, 0.25, -0.5, 0.5, 0, -0.5, 0, 0.5, -0.5, -0.25, 0.25, -0.5, 0, 0.5, -0.5, -0.25, 0.5, -0.5, 0, 0.5, -0.5, 0.5, 0, -0.5, 0.5, 1, -0.5, 0, 0.5, -0.5, 0.5, 1, -0.5, 0.25, 0.75, -0.5, 0.25, 0.75, -0.5, 0.5, 1, -0.5, 0.25, 1, -0.5, 0, 0.5, -0.5, 0.25, 0.75, -0.5, 0, 0.75, -0.5, -0.5, 0.25, -0.5, -0.5, 0, 0.5, -0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0.25, -0.5, -0.5, 0.25, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, 0.5, 0, 0.5, -0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, -0.5, 0.5, 0, -0.5, 0.5, 1, 0.5, 0.5, 1, -0.5, 0.5, 1, 0.5, 0.5, 0, -0.5, 0.5, 0, 0.5, 0.5, 1, 0.5, 0.25, 1, -0.5, 0.5, 1, -0.5, 0.25, 1, -0.5, 0.5, 1, 0.5, 0.25, 1, 0.5, 0.5, 1, 0.5, 0.25, 0.75, 0.5, 0.25, 1, 0.5, 0.5, 1, 0.5, 0, 0.5, 0.5, 0.25, 0.75, 0.5, 0, 0.5, 0.5, 0, 0.75, 0.5, 0.25, 0.75, 0.5, 0.5, 0, 0.5, 0, 0.5, 0.5, 0.5, 1, 0.5, 0, 0.5, 0.5, 0.5, 0, 0.5, -0.5, 0, 0.5, 0, 0.5, 0.5, -0.5, 0, 0.5, -0.25, 0.25, 0.5, -0.5, 0, 0.5, -0.5, 0.25, 0.5, -0.25, 0.25, 0.5, -0.25, 0.25, 0.5, -0.25, 0.5, 0.5, 0, 0.5, 0.5, -0.25, 0.25, 0.5, -0.5, 0.25, -0.5, -0.25, 0.25, -0.5, -0.5, 0.25, -0.5, -0.25, 0.25, 0.5, -0.5, 0.25, 0.5, -0.25, 0.5, -0.5, -0.25, 0.25, 0.5, -0.25, 0.25, -0.5, -0.25, 0.25, 0.5, -0.25, 0.5, -0.5, -0.25, 0.5, 0.5, 0, 0.5, 0.5, -0.25, 0.5, -0.5, 0, 0.5, -0.5, -0.25, 0.5, -0.5, 0, 0.5, 0.5, -0.25, 0.5, 0.5, 0, 0.75, -0.5, 0, 0.5, 0.5, 0, 0.5, -0.5, 0, 0.5, 0.5, 0, 0.75, -0.5, 0, 0.75, 0.5, 0.25, 0.75, 0.5, 0, 0.75, -0.5, 0.25, 0.75, -0.5, 0, 0.75, -0.5, 0.25, 0.75, 0.5, 0, 0.75, 0.5, 0.25, 1, -0.5, 0.25, 0.75, 0.5, 0.25, 0.75, -0.5, 0.25, 0.75, 0.5, 0.25, 1, -0.5, 0.25, 1, 0.5)
[node name="stairs" unique_id=1895117406 instance=ExtResource("1_s50te")]
script = ExtResource("2_xm10s")
collision_layer = 256
collision_mask = 65553
[node name="stairs_col2" type="StaticBody3D" parent="stairs" parent_id_path=PackedInt32Array(2145904663) index="0" unique_id=1786594295]
collision_layer = 256
collision_mask = 65553
[node name="CollisionShape3D" type="CollisionShape3D" parent="stairs/stairs_col2" index="0" unique_id=883090790]
shape = SubResource("ConcavePolygonShape3D_s50te")

View File

@@ -1,6 +1,6 @@
[gd_resource type="ArrayMesh" format=4 uid="uid://ckr26s4e3fj1m"] [gd_resource type="ArrayMesh" format=4 uid="uid://ckr26s4e3fj1m"]
[ext_resource type="Texture2D" uid="uid://qtu5ue4ixkwm" path="res://assets/meshes/swords/fbx/Texture_MAp_sword.png" id="1_7a84w"] [ext_resource type="Texture2D" uid="uid://b1cbr6ubqrroh" path="res://assets/meshes/swords/fbx/Texture_MAp_sword.png" id="1_7a84w"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tisiu"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tisiu"]
resource_name = "Sword_mat_map" resource_name = "Sword_mat_map"

View File

@@ -1,6 +1,6 @@
[gd_resource type="ArrayMesh" format=4 uid="uid://cho5fixitrbds"] [gd_resource type="ArrayMesh" format=4 uid="uid://cho5fixitrbds"]
[ext_resource type="Texture2D" uid="uid://qtu5ue4ixkwm" path="res://assets/meshes/swords/fbx/Texture_MAp_sword.png" id="1_tisiu"] [ext_resource type="Texture2D" uid="uid://b1cbr6ubqrroh" path="res://assets/meshes/swords/fbx/Texture_MAp_sword.png" id="1_tisiu"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tisiu"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tisiu"]
resource_name = "Sword_mat_map" resource_name = "Sword_mat_map"

View File

@@ -0,0 +1,105 @@
shader_type sky;
group_uniforms Sky;
uniform vec4 sky_day : source_color = vec4(0.0,0.3,0.7,1.0);
uniform vec4 horizon_day : source_color = vec4(0.75,0.85,0.85,1.0);
uniform vec4 horizon_sunset : source_color = vec4(0.9,0.4,0.1,1.0);
uniform vec4 sky_sunset : source_color = vec4(0.15, 0.2, 0.4, 1.0);
uniform vec4 horizon_night : source_color = vec4(0.1, 0.15, 0.2, 1.0);
uniform vec4 sky_night : source_color = vec4(0.05, 0.10, 0.15, 1.0);
uniform float day_night_mix : hint_range(-1.0, 1.0, 0.1) = 0.8;
uniform bool use_directional_light = true;
uniform float horizon_exponent = 2.0;
uniform float sunset_amount_exponent = 0.7;
uniform float night_amount_exponent = 4.0;
group_uniforms Clouds;
uniform sampler2D cloud_tex_01;
uniform sampler2D cloud_tex_02;
uniform vec4 cloud_color : source_color = vec4(0.8, 0.8, 0.8, 1.0);
uniform vec2 cloud_tiling = vec2(1.0);
uniform vec2 wind_speed = vec2(0.5);
uniform float cloud_density : hint_range(0.0, 5.0, 0.1) = 0.7;
uniform float cloud_depth = 2.0;
uniform float cloud_shape_exponent = 2.0;
uniform float cloud_occlude_exponent = 1.0;
group_uniforms Stars;
uniform sampler2D night_noise_01;
uniform sampler2D night_noise_02;
group_uniforms Sun;
uniform float sun_scale = 0.05;
uniform float sun_strength = 15.0;
uniform vec4 sun_color : source_color = vec4(1.0,0.9,0.0,1.0);
float plane_intersection(vec3 origin, vec3 normal, vec3 ray_start, vec3 ray_dir) {
return dot(origin - ray_start, normal) / dot(ray_dir, normal);
}
float get_cloud_height(sampler2D tex, vec2 uv) {
float height = texture(tex, uv).r;
height = clamp((height - (1.0 - cloud_density)) / (cloud_density), 0.0, 1.0);
return pow(height, cloud_shape_exponent);
}
void sky() {
float t = plane_intersection(vec3(0.0, 1.0, 0.0), vec3(0.0, -1.0, 0.0), vec3(0.0), EYEDIR);
float blend = day_night_mix;
if(use_directional_light){
blend = LIGHT0_DIRECTION.y;
}
vec3 sky = vec3(0.0);
vec3 horizon_color = vec3(0.0);
vec3 sky_color = vec3(0.0);
float cloud_value = 0.0;
if(t >= 0.0){
vec3 wind = vec3(wind_speed.x, 0.0, wind_speed.y) * TIME * 0.1;
vec3 tiling = vec3(cloud_tiling.x, 1.0, cloud_tiling.y) * 0.2;
vec3 cloud_pos1 = EYEDIR * t * tiling + wind;
vec3 cloud_pos2 = EYEDIR * t * tiling + (wind*0.5);
float height1 = get_cloud_height(cloud_tex_01, cloud_pos1.xz);
float height2 = get_cloud_height(cloud_tex_02, cloud_pos2.xz);
cloud_pos1 += EYEDIR * height1 * cloud_depth * 0.1;
cloud_pos2 += EYEDIR * height2 * cloud_depth * 0.1;
height1 = get_cloud_height(cloud_tex_01,cloud_pos1.xz);
height2 = get_cloud_height(cloud_tex_02,cloud_pos2.xz);
cloud_value = min(height1, height1 * height2);
cloud_value *= smoothstep(0.0, 0.2, EYEDIR.y);
}
float sun_distance = clamp(1.0 - distance(EYEDIR, LIGHT0_DIRECTION) - pow(cloud_value,cloud_occlude_exponent),0.0,1.0);
float sun_disc = clamp(smoothstep(1.0 - sun_scale, 1.0, sun_distance), 0.0, 1.0);
float sun_glow = clamp(0.0, 1.0, (pow(sun_distance, 4.0)*0.07));
vec3 sun = mix(vec3(0.0), sun_color.rgb * sun_strength, max(sun_disc, sun_glow));
float night_noise = texture(night_noise_02, (EYEDIR / ((1.0 - abs(t) * 0.05))).xz).r;
float stars = smoothstep(0.9, .95, texture(night_noise_01, (EYEDIR / ((1.0 - abs(t) * 0.05))).xz).r);
float night_blend = clamp(0.0,1.0,0.0 - blend);
stars = clamp(clamp((stars - cloud_value * 2.0), 0.0, 1.0) * night_blend, 0.0, 1.0) + (night_noise*0.01);
horizon_color = mix(horizon_sunset, horizon_day, clamp(blend,0.0,1.0)).rgb;
horizon_color = mix(horizon_night.rgb, horizon_color, pow(clamp(1.0+blend,0.0,1.0), 4.0)).rgb;
vec3 sky_night_mix = sky_night.rgb * (night_noise * 0.5 + 0.5);
sky_color = mix(sky_sunset, sky_day, clamp(blend,0.0,1.0)).rgb;
sky_color = mix(sky_night_mix, sky_color, clamp(pow(1.0+blend, 4.0),0.0,1.0)).rgb;
sky = mix(sky_color, horizon_color, pow(1.0 - abs(EYEDIR.y), horizon_exponent));
sky = mix(sky, cloud_color.rgb * 1.0, pow(cloud_value, 0.8));
sky += stars * 1.0;
sky = mix(sky, mix(sky_color * 0.5, horizon_color, EYEDIR.y + 1.0).rgb, clamp(pow(1.0 - EYEDIR.y, 2.0), 0.0, 1.0));
if(use_directional_light) {
sky += sun * clamp(pow(EYEDIR.y + 1.0, 16.0),0.0,1.0);
}
COLOR = sky;
}

View File

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

View File

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

File diff suppressed because it is too large Load Diff

915
maps/_old/metrics.tscn Normal file
View File

@@ -0,0 +1,915 @@
[gd_scene format=3 uid="uid://pk8ypa04qy6x"]
[ext_resource type="PackedScene" uid="uid://bei4nhkf8lwdo" path="res://scenes/player_controller/PlayerController.tscn" id="1_1s2y7"]
[ext_resource type="PackedScene" uid="uid://dkr80d2pi0d41" path="res://addons/guide/debugger/guide_debugger.tscn" id="2_epx65"]
[ext_resource type="Material" uid="uid://31aulub2nqov" path="res://assets/materials/greybox/m_greybox.tres" id="3_vvhq3"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_0xm2m"]
sky_horizon_color = Color(0.662243, 0.671743, 0.686743, 1)
ground_horizon_color = Color(0.662243, 0.671743, 0.686743, 1)
[sub_resource type="Sky" id="Sky_h2yge"]
sky_material = SubResource("ProceduralSkyMaterial_0xm2m")
[sub_resource type="Environment" id="Environment_1bvp3"]
background_mode = 2
sky = SubResource("Sky_h2yge")
ambient_light_source = 2
ambient_light_color = Color(0.576076, 0.459788, 0.652401, 1)
reflected_light_source = 2
tonemap_mode = 4
tonemap_exposure = 1.32
ssao_enabled = true
ssao_radius = 3.61
ssil_enabled = true
ssil_radius = 8.4
sdfgi_use_occlusion = true
glow_enabled = true
[node name="Main" type="Node3D" unique_id=1886692589]
[node name="Player" parent="." unique_id=1926439269 instance=ExtResource("1_1s2y7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1.5)
TutorialDone = true
[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1918922070]
environment = SubResource("Environment_1bvp3")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=1220382102]
transform = Transform3D(-0.772218, 0.611111, 0.173844, 0.0446935, -0.220691, 0.974319, 0.633783, 0.760157, 0.143109, 0, 0, 0)
shadow_enabled = true
[node name="DebugLayer" type="CanvasLayer" parent="." unique_id=2035564069]
[node name="GuideDebugger" parent="DebugLayer" unique_id=1346724862 instance=ExtResource("2_epx65")]
visible = false
[node name="Greybox" type="CSGCombiner3D" parent="." unique_id=947987680]
use_collision = true
collision_layer = 256
collision_mask = 65553
[node name="CSGBox3D" type="CSGBox3D" parent="Greybox" unique_id=1658565485]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.096, -0.5, -46.329)
use_collision = true
size = Vector3(100, 1, 190.741)
material = ExtResource("3_vvhq3")
[node name="RunningTrack" type="CSGCombiner3D" parent="Greybox" unique_id=878428333]
[node name="CSGBox3D2" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=1524612867]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D3" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=1343324188]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -10)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D4" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=2003839018]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -20)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D5" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=12532369]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -30)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D6" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=1528078611]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -40)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D7" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=1374413337]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -50)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D8" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=1756322621]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, 0)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D9" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=991157972]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, -10)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D10" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=1421677964]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, -20)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D11" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=147727252]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, -30)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D12" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=190006939]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, -40)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D13" type="CSGBox3D" parent="Greybox/RunningTrack" unique_id=397218140]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, -50)
use_collision = true
size = Vector3(0.2, 2, 0.2)
material = ExtResource("3_vvhq3")
[node name="Label3D" type="Label3D" parent="Greybox/RunningTrack" unique_id=2077484418]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 1, 0.1, -9.5)
text = "10m"
[node name="Label3D6" type="Label3D" parent="Greybox/RunningTrack" unique_id=157546019]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 27.5, 0.1, 1)
text = "10deg
"
[node name="Label3D7" type="Label3D" parent="Greybox/RunningTrack" unique_id=1322657783]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 30.5, 0.1, 1)
text = "20deg
"
[node name="Label3D8" type="Label3D" parent="Greybox/RunningTrack" unique_id=2087446523]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 33.5, 0.1, 1)
text = "30deg
"
[node name="Label3D2" type="Label3D" parent="Greybox/RunningTrack" unique_id=631102816]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 1, 0.1, -19.5)
text = "20m"
[node name="Label3D3" type="Label3D" parent="Greybox/RunningTrack" unique_id=1135391266]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 1, 0.1, -29.5)
text = "30m"
[node name="Label3D4" type="Label3D" parent="Greybox/RunningTrack" unique_id=646298813]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 1, 0.1, -39.5)
text = "40m"
[node name="Label3D5" type="Label3D" parent="Greybox/RunningTrack" unique_id=2110989391]
transform = Transform3D(5, 0, 0, 0, -2.18557e-07, 5, 0, -5, -2.18557e-07, 1, 0.1, -49)
text = "50m"
[node name="JumpHeights" type="CSGCombiner3D" parent="Greybox" unique_id=346821943]
[node name="Label3D6" type="Label3D" parent="Greybox/JumpHeights" unique_id=210969284]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -1.5)
text = "0.5m"
[node name="Label3D7" type="Label3D" parent="Greybox/JumpHeights" unique_id=1563882963]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -6.5)
text = "1m"
[node name="Label3D22" type="Label3D" parent="Greybox/JumpHeights" unique_id=1538473923]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, 1)
text = "1.5m"
[node name="Label3D23" type="Label3D" parent="Greybox/JumpHeights" unique_id=2066337875]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -11)
text = "2m"
[node name="Label3D24" type="Label3D" parent="Greybox/JumpHeights" unique_id=2019920411]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -21.5)
text = "3m"
[node name="Label3D25" type="Label3D" parent="Greybox/JumpHeights" unique_id=1152598342]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -31)
text = "4m"
[node name="Label3D26" type="Label3D" parent="Greybox/JumpHeights" unique_id=2044865263]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -41.5)
text = "5m"
[node name="Label3D27" type="Label3D" parent="Greybox/JumpHeights" unique_id=1508331602]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -51.5)
text = "6m"
[node name="Label3D28" type="Label3D" parent="Greybox/JumpHeights" unique_id=816037691]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -61)
text = "7m"
[node name="Label3D29" type="Label3D" parent="Greybox/JumpHeights" unique_id=1451982413]
transform = Transform3D(-2.1855689e-07, 5, 2.18557e-07, 0, -2.18557e-07, 5, 5, 2.1855689e-07, 9.55343e-15, -28.5, 0.1, -74.5)
text = "8m"
[node name="Label3D8" type="Label3D" parent="Greybox/JumpHeights" unique_id=1308191043]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -11.5)
text = "1.5m"
[node name="Label3D9" type="Label3D" parent="Greybox/JumpHeights" unique_id=1470563462]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -16.5)
text = "2m"
[node name="Label3D10" type="Label3D" parent="Greybox/JumpHeights" unique_id=517230341]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -21.5)
text = "3m"
[node name="Label3D11" type="Label3D" parent="Greybox/JumpHeights" unique_id=1293816232]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -26.5)
text = "4m"
[node name="Label3D12" type="Label3D" parent="Greybox/JumpHeights" unique_id=1806324602]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -31.5)
text = "5m"
[node name="Label3D13" type="Label3D" parent="Greybox/JumpHeights" unique_id=1770523108]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -36.5)
text = "6m"
[node name="Label3D14" type="Label3D" parent="Greybox/JumpHeights" unique_id=623833835]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -41.5)
text = "7m"
[node name="Label3D15" type="Label3D" parent="Greybox/JumpHeights" unique_id=350021472]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -46.5)
text = "8m"
[node name="Label3D16" type="Label3D" parent="Greybox/JumpHeights" unique_id=1106153648]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -51.5)
text = "9m"
[node name="Label3D17" type="Label3D" parent="Greybox/JumpHeights" unique_id=1382154683]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -56.5)
text = "10m"
[node name="Label3D18" type="Label3D" parent="Greybox/JumpHeights" unique_id=698619474]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -61.5)
text = "12.5m"
[node name="Label3D19" type="Label3D" parent="Greybox/JumpHeights" unique_id=1918747333]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -66.5)
text = "15m"
[node name="Label3D20" type="Label3D" parent="Greybox/JumpHeights" unique_id=749209142]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -71.5)
text = "17.5m"
[node name="Label3D21" type="Label3D" parent="Greybox/JumpHeights" unique_id=1268617484]
transform = Transform3D(-2.18557e-07, -5, -2.18557e-07, 0, -2.18557e-07, 5, -5, 2.18557e-07, 9.55343e-15, -7, 0.1, -76.5)
text = "20m"
[node name="CSGBox3D14" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=942560904]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 0.25, -1.5)
use_collision = true
size = Vector3(5, 0.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=580104271]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 0.5, -6.5)
use_collision = true
size = Vector3(5, 1, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=585408401]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 0.75, -11.5)
use_collision = true
size = Vector3(5, 1.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D17" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=808992543]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 1, -16.5)
use_collision = true
size = Vector3(5, 2, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D18" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=500341031]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 1.5, -21.5)
use_collision = true
size = Vector3(5, 3, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D19" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=127771296]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 2, -26.5)
use_collision = true
size = Vector3(5, 4, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D20" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=752300025]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 2.5, -31.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D21" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=964844948]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 3, -36.5)
use_collision = true
size = Vector3(5, 6, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D22" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1284495409]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 3.5, -41.5)
use_collision = true
size = Vector3(5, 7, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D23" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1789414429]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 4, -46.5)
use_collision = true
size = Vector3(5, 8, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D24" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1372664433]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 4.5, -51.5)
use_collision = true
size = Vector3(5, 9, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D25" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1339820114]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 5, -56.5)
use_collision = true
size = Vector3(5, 10, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D30" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1631874678]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 9.5, -50)
use_collision = true
size = Vector3(5, 1, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D31" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=92296730]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 9.75, -50)
use_collision = true
size = Vector3(5, 0.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D32" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=919734519]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 9.875, -50)
use_collision = true
size = Vector3(5, 0.25, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D26" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=632258873]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 6.25, -61.5)
use_collision = true
size = Vector3(5, 12.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D27" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1421623781]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 7.5, -66.5)
use_collision = true
size = Vector3(5, 15, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D28" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1274987907]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.5, 8.75, -71.5)
use_collision = true
size = Vector3(5, 17.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D29" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1284199936]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30.25, 10, -40)
use_collision = true
size = Vector3(0.5, 20, 80)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D33" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=282038058]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24.75, 10, -5)
use_collision = true
size = Vector3(7.5, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D41" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1258759526]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 22.75, 5, -1.5)
use_collision = true
size = Vector3(12.5, 10, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D47" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1619601364]
transform = Transform3D(1, 0, 0, 0, 0.9848078, 0.17364816, 0, -0.17364816, 0.9848078, 22.75, 0.03095889, -30.695885)
use_collision = true
size = Vector3(12.5, 10, 58)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D48" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1868104378]
transform = Transform3D(1, 0, 0, 0, 0.9396926, 0.34202012, 0, -0.34202012, 0.9396926, 30.5, 1.5878377, -16.713436)
use_collision = true
size = Vector3(3, 6.5, 31.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D49" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1533360289]
transform = Transform3D(1, 0, 0, 0, 0.86602545, 0.5, 0, -0.5, 0.86602545, 33.5, 2.5053406, -10.524445)
use_collision = true
size = Vector3(3, 5.5, 20.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D42" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=76190477]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30.5, 5, -1.5)
use_collision = true
size = Vector3(3, 10, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D43" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1165241235]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.5, 5, -1.5)
use_collision = true
size = Vector3(3, 10, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D44" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1360018990]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36.5, 5, -1.5)
use_collision = true
size = Vector3(3, 10, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D45" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1830898064]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 39.5, 5, -1.5)
use_collision = true
size = Vector3(3, 10, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D46" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=694688329]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 42.5, 5, -1.5)
use_collision = true
size = Vector3(3, 10, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D34" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=498798132]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24.5, 10, -15)
use_collision = true
size = Vector3(7, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D35" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1246548038]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24, 10, -25)
use_collision = true
size = Vector3(6, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D36" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1584237505]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23.5, 10, -35)
use_collision = true
size = Vector3(5, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D37" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=331538659]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23, 10, -45)
use_collision = true
size = Vector3(4, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D38" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=778040676]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -22.5, 10, -55)
use_collision = true
size = Vector3(3, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D39" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=749396522]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -22, 10, -65)
use_collision = true
size = Vector3(2, 20, 10)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D40" type="CSGBox3D" parent="Greybox/JumpHeights" unique_id=1945303355]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -21.5, 10, -75)
use_collision = true
size = Vector3(1, 20, 10)
material = ExtResource("3_vvhq3")
[node name="Passageways" type="CSGCombiner3D" parent="Greybox" unique_id=677969083]
[node name="CSGBox3D30" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1481494931]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 2.25, -6.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D34" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1048797470]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 1.5, -6.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 3)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D31" type="CSGBox3D" parent="Greybox/Passageways" unique_id=930969091]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 2.25, -16.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D35" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1117727389]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 0.5, -16.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D38" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1320724023]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 21.5, 2.25, 22.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D39" type="CSGBox3D" parent="Greybox/Passageways" unique_id=2070041982]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 21.25, 0.5, 22.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D40" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1332332880]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 28.5, 2.25, 22.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D41" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1557133957]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 28.25, 0.25, 22.5)
operation = 2
use_collision = true
size = Vector3(5, 2.5, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D42" type="CSGBox3D" parent="Greybox/Passageways" unique_id=425387876]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 35.5, 2.25, 22.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D43" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1661141377]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 35.25, -0.5, 22.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D44" type="CSGBox3D" parent="Greybox/Passageways" unique_id=179620552]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 42.5, 2.25, 22.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D45" type="CSGBox3D" parent="Greybox/Passageways" unique_id=351904606]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 42.25, -1, 22.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D46" type="CSGBox3D" parent="Greybox/Passageways" unique_id=357200570]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 21.5, 2.25, 31.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D47" type="CSGBox3D" parent="Greybox/Passageways" unique_id=2085426420]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 21.25, 0.5, 31.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D48" type="CSGBox3D" parent="Greybox/Passageways" unique_id=555217301]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 28.5, 2.25, 31.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D49" type="CSGBox3D" parent="Greybox/Passageways" unique_id=85616752]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 28.25, 0.25, 31.5)
operation = 2
use_collision = true
size = Vector3(5, 2.5, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D50" type="CSGBox3D" parent="Greybox/Passageways" unique_id=28571400]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 35.5, 2.25, 31.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D51" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1721812352]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 35.25, -0.5, 31.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D52" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1658935175]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 42.5, 2.25, 31.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D53" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1619696510]
transform = Transform3D(-2.6226834e-08, 0, -1, 0, 1, 0, 0.6, 0, -4.371139e-08, 42.25, -1, 31.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D54" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1250559296]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 21.5, 2.25, 39.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D55" type="CSGBox3D" parent="Greybox/Passageways" unique_id=248318083]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 21.25, 0.5, 39.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D56" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1031611906]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 28.5, 2.25, 39.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D57" type="CSGBox3D" parent="Greybox/Passageways" unique_id=2134340759]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 28.25, 0.25, 39.5)
operation = 2
use_collision = true
size = Vector3(5, 2.5, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D58" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1499177937]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 35.5, 2.25, 39.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D59" type="CSGBox3D" parent="Greybox/Passageways" unique_id=165562631]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 35.25, -0.5, 39.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D60" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1318706705]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 42.5, 2.25, 39.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D61" type="CSGBox3D" parent="Greybox/Passageways" unique_id=887461416]
transform = Transform3D(-7.86805e-09, 0, -1, 0, 1, 0, 0.18, 0, -4.371139e-08, 42.25, -1, 39.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D32" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1804430744]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 2.25, -26.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D36" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1364916863]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 0.5, -26.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D33" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1526520386]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 2.25, -36.5)
use_collision = true
size = Vector3(5, 5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D37" type="CSGBox3D" parent="Greybox/Passageways" unique_id=1368661310]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, -0.5, -36.5)
operation = 2
use_collision = true
size = Vector3(5, 3, 1)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D14" type="CSGBox3D" parent="Greybox/Passageways" unique_id=283118902]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 4.5, -21.5)
use_collision = true
size = Vector3(0.5, 0.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox/Passageways" unique_id=694923358]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 4.5, -31.5)
use_collision = true
size = Vector3(0.25, 0.5, 5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox/Passageways" unique_id=135402735]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 4.5, -11.5)
use_collision = true
size = Vector3(1, 0.5, 5)
material = ExtResource("3_vvhq3")
[node name="Mantles" type="CSGCombiner3D" parent="Greybox" unique_id=981837550]
[node name="Label3D22" type="Label3D" parent="Greybox/Mantles" unique_id=1749350071]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -5.5, 0.1, 11)
text = "0.5m"
[node name="Label3D35" type="Label3D" parent="Greybox/Mantles" unique_id=2055966274]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -8.5, 0.1, 11)
text = "0.25m"
[node name="Label3D23" type="Label3D" parent="Greybox/Mantles" unique_id=328340961]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -2, 0.1, 11)
text = "1m"
[node name="Label3D27" type="Label3D" parent="Greybox/Mantles" unique_id=743712317]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -11, 0.1, 12.5)
text = "1m"
[node name="Label3D28" type="Label3D" parent="Greybox/Mantles" unique_id=504602524]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 13, 0.1, 12.5)
text = "1m"
[node name="Label3D29" type="Label3D" parent="Greybox/Mantles" unique_id=2030993341]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 13, 0.1, 21)
text = "2m"
[node name="Label3D30" type="Label3D" parent="Greybox/Mantles" unique_id=1124860686]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 13, 0.1, 28.5)
text = "3m"
[node name="Label3D31" type="Label3D" parent="Greybox/Mantles" unique_id=1317588075]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -11, 0.1, 21)
text = "2m"
[node name="Label3D32" type="Label3D" parent="Greybox/Mantles" unique_id=1366926955]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -11, 0.1, 28.5)
text = "3m"
[node name="Label3D24" type="Label3D" parent="Greybox/Mantles" unique_id=248801834]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 2, 0.1, 11)
text = "1.5m"
[node name="Label3D25" type="Label3D" parent="Greybox/Mantles" unique_id=1124306017]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 6, 0.1, 11)
text = "2m"
[node name="Label3D26" type="Label3D" parent="Greybox/Mantles" unique_id=1225991052]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 10, 0.1, 11)
text = "4m"
[node name="CSGBox3D33" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1996945224]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0.5, 12.5)
use_collision = true
size = Vector3(4, 1, 1)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D34" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1009493198]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.5, 0.5, 12.25)
use_collision = true
size = Vector3(3, 1, 0.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D35" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1749498204]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.5, 12.75)
use_collision = true
size = Vector3(4, 1, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D36" type="CSGBox3D" parent="Greybox/Mantles" unique_id=312432354]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 0.5, 13)
use_collision = true
size = Vector3(4, 1, 2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D37" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1640084191]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.5, 14)
use_collision = true
size = Vector3(4, 1, 4)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D38" type="CSGBox3D" parent="Greybox/Mantles" unique_id=301256990]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 1, 20.5)
use_collision = true
size = Vector3(4, 2, 1)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D39" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1252915649]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.5, 1, 20.25)
use_collision = true
size = Vector3(3, 2, 0.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D40" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1017054955]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, 20.75)
use_collision = true
size = Vector3(4, 2, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D41" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1276092930]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 1, 21)
use_collision = true
size = Vector3(4, 2, 2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D42" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1107832581]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 1, 22)
use_collision = true
size = Vector3(4, 2, 4)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D43" type="CSGBox3D" parent="Greybox/Mantles" unique_id=195563549]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 1.5, 28.5)
use_collision = true
size = Vector3(4, 3, 1)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D44" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1422563548]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.5, 1.5, 28.25)
use_collision = true
size = Vector3(3, 3, 0.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D45" type="CSGBox3D" parent="Greybox/Mantles" unique_id=597518478]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1.5, 28.75)
use_collision = true
size = Vector3(4, 3, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D46" type="CSGBox3D" parent="Greybox/Mantles" unique_id=2035828800]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 1.5, 29)
use_collision = true
size = Vector3(4, 3, 2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D47" type="CSGBox3D" parent="Greybox/Mantles" unique_id=2050446324]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 1.5, 30)
use_collision = true
size = Vector3(4, 3, 4)
material = ExtResource("3_vvhq3")
[node name="Label3D33" type="Label3D" parent="Greybox/Mantles" unique_id=437224967]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, 13, 0.1, 36.5)
text = "4m"
[node name="Label3D34" type="Label3D" parent="Greybox/Mantles" unique_id=1883460159]
transform = Transform3D(-5, 4.3711395e-07, 1.9106861e-14, 0, -2.18557e-07, 5, 4.3711395e-07, 5, 2.18557e-07, -11, 0.1, 36.5)
text = "4m"
[node name="CSGBox3D48" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1685845188]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 2, 36.5)
use_collision = true
size = Vector3(4, 4, 1)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D49" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1338959967]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.5, 2, 36.25)
use_collision = true
size = Vector3(3, 4, 0.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D53" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1194447690]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.5, 0.5, 12.125)
use_collision = true
size = Vector3(3, 1, 0.25)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D57" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1186673858]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, -13, 3.5, -21.629175)
use_collision = true
size = Vector3(5, 1, 0.25)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D54" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1895250071]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.5, 1, 20.125)
use_collision = true
size = Vector3(3, 2, 0.25)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D55" type="CSGBox3D" parent="Greybox/Mantles" unique_id=141610439]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.5, 1.5, 28.125)
use_collision = true
size = Vector3(3, 3, 0.25)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D56" type="CSGBox3D" parent="Greybox/Mantles" unique_id=343197184]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.5, 2, 36.125)
use_collision = true
size = Vector3(3, 4, 0.25)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D50" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1273139469]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 2, 36.75)
use_collision = true
size = Vector3(4, 4, 1.5)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D51" type="CSGBox3D" parent="Greybox/Mantles" unique_id=1688782002]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 2, 37)
use_collision = true
size = Vector3(4, 4, 2)
material = ExtResource("3_vvhq3")
[node name="CSGBox3D52" type="CSGBox3D" parent="Greybox/Mantles" unique_id=443302723]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 2, 38)
use_collision = true
size = Vector3(4, 4, 4)
material = ExtResource("3_vvhq3")

View File

@@ -6,15 +6,53 @@
[ext_resource type="Script" uid="uid://cyh0d64pfygbl" path="res://addons/maaacks_game_template/base/scripts/pause_menu_controller.gd" id="4_wlbyq"] [ext_resource type="Script" uid="uid://cyh0d64pfygbl" path="res://addons/maaacks_game_template/base/scripts/pause_menu_controller.gd" id="4_wlbyq"]
[ext_resource type="PackedScene" uid="uid://ccqajqchiw4xu" path="res://menus/scenes/overlaid_menus/pause_menu.tscn" id="5_wwrc3"] [ext_resource type="PackedScene" uid="uid://ccqajqchiw4xu" path="res://menus/scenes/overlaid_menus/pause_menu.tscn" id="5_wwrc3"]
[ext_resource type="Resource" uid="uid://dgluj0ql5vth7" path="res://inputs/base_mode/pause.tres" id="6_vy804"] [ext_resource type="Resource" uid="uid://dgluj0ql5vth7" path="res://inputs/base_mode/pause.tres" id="6_vy804"]
[ext_resource type="Shader" uid="uid://kgjsu8n7pyom" path="res://assets/sky/GodotSkies/shader/main.gdshader" id="7_gm8ij"]
[ext_resource type="PackedScene" uid="uid://duju3atqgltkg" path="res://scenes/explosion/explosion.tscn" id="9_r1bdn"] [ext_resource type="PackedScene" uid="uid://duju3atqgltkg" path="res://scenes/explosion/explosion.tscn" id="9_r1bdn"]
[ext_resource type="Texture2D" uid="uid://ca4kkq3w8cd4n" path="res://assets/sky/sky_15_2k.png" id="16_86mdr"] [ext_resource type="PackedScene" uid="uid://dkr80d2pi0d41" path="res://addons/guide/debugger/guide_debugger.tscn" id="10_gm8ij"]
[ext_resource type="PackedScene" uid="uid://bei4nhkf8lwdo" path="res://scenes/player_controller/PlayerController.tscn" id="17_clkha"] [ext_resource type="PackedScene" uid="uid://bei4nhkf8lwdo" path="res://scenes/player_controller/PlayerController.tscn" id="17_clkha"]
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_feb1n"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_gm8ij"]
panorama = ExtResource("16_86mdr") frequency = 0.002
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_5g5a0"]
noise = SubResource("FastNoiseLite_gm8ij")
seamless = true
[sub_resource type="FastNoiseLite" id="FastNoiseLite_nyvgt"]
frequency = 0.0161
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_gx66y"]
noise = SubResource("FastNoiseLite_nyvgt")
seamless = true
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5g5a0"]
shader = ExtResource("7_gm8ij")
shader_parameter/sky_day = Color(0, 0.3, 0.7, 1)
shader_parameter/horizon_day = Color(0.75, 0.85, 0.85, 1)
shader_parameter/horizon_sunset = Color(0.9, 0.4, 0.1, 1)
shader_parameter/sky_sunset = Color(0.15, 0.2, 0.4, 1)
shader_parameter/horizon_night = Color(0.1, 0.15, 0.2, 1)
shader_parameter/sky_night = Color(0.05, 0.1, 0.15, 1)
shader_parameter/day_night_mix = 0.8
shader_parameter/use_directional_light = true
shader_parameter/horizon_exponent = 2.0
shader_parameter/sunset_amount_exponent = 0.7
shader_parameter/night_amount_exponent = 4.0
shader_parameter/cloud_tex_01 = SubResource("NoiseTexture2D_5g5a0")
shader_parameter/cloud_tex_02 = SubResource("NoiseTexture2D_gx66y")
shader_parameter/cloud_color = Color(0.8, 0.8, 0.8, 1)
shader_parameter/cloud_tiling = Vector2(1, 1)
shader_parameter/wind_speed = Vector2(0.1, 0.1)
shader_parameter/cloud_density = 1.40000002086168
shader_parameter/cloud_depth = 2.335
shader_parameter/cloud_shape_exponent = 2.0
shader_parameter/cloud_occlude_exponent = 1.0
shader_parameter/sun_scale = 0.8
shader_parameter/sun_strength = 5.0
shader_parameter/sun_color = Color(1, 0.9, 0, 1)
[sub_resource type="Sky" id="Sky_h2yge"] [sub_resource type="Sky" id="Sky_h2yge"]
sky_material = SubResource("PanoramaSkyMaterial_feb1n") sky_material = SubResource("ShaderMaterial_5g5a0")
[sub_resource type="Environment" id="Environment_1bvp3"] [sub_resource type="Environment" id="Environment_1bvp3"]
background_mode = 2 background_mode = 2
@@ -26,9 +64,8 @@ ssao_enabled = true
ssil_enabled = true ssil_enabled = true
sdfgi_enabled = true sdfgi_enabled = true
sdfgi_use_occlusion = true sdfgi_use_occlusion = true
glow_enabled = true
fog_enabled = true fog_enabled = true
fog_light_color = Color(0.9955967, 0.83634025, 0.69151855, 1) fog_light_color = Color(1, 1, 1, 1)
fog_sun_scatter = 0.5 fog_sun_scatter = 0.5
fog_density = 0.002 fog_density = 0.002
fog_sky_affect = 0.184 fog_sky_affect = 0.184
@@ -39,6 +76,11 @@ adjustment_enabled = true
[node name="Main" type="Node3D" unique_id=955321579] [node name="Main" type="Node3D" unique_id=955321579]
[node name="DebugLayer" type="CanvasLayer" parent="." unique_id=294370189]
[node name="GuideDebugger" parent="DebugLayer" unique_id=636020765 instance=ExtResource("10_gm8ij")]
visible = false
[node name="BackgroundMusicPlayer" parent="." unique_id=879496303 instance=ExtResource("2_roiv2")] [node name="BackgroundMusicPlayer" parent="." unique_id=879496303 instance=ExtResource("2_roiv2")]
stream = ExtResource("3_boadi") stream = ExtResource("3_boadi")
@@ -55,8 +97,7 @@ pause = ExtResource("6_vy804")
environment = SubResource("Environment_1bvp3") environment = SubResource("Environment_1bvp3")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=1357990191] [node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=1357990191]
transform = Transform3D(-0.7804346, 0.15240021, 0.60637945, 0.1767362, -0.87651366, 0.4477591, 0.5997384, 0.4566159, 0.6571269, 0, 0, 0) transform = Transform3D(-0.78043455, 0.15240024, 0.6063795, 0.41363776, -0.6014168, 0.6835213, 0.46885556, 0.7842652, 0.4063281, 0, 0, 0)
light_color = Color(0.99999934, 0.76777613, 0.6549227, 1)
light_energy = 2.0 light_energy = 2.0
light_volumetric_fog_energy = 2.0 light_volumetric_fog_energy = 2.0
shadow_enabled = true shadow_enabled = true
@@ -72,6 +113,4 @@ AccelerationAir = 1.5
visible = false visible = false
Radius = 2.0 Radius = 2.0
[node name="DebugLayer" type="CanvasLayer" parent="." unique_id=294370189]
[connection signal="PlayerDied" from="Player" to="GeneralManager" method="on_player_died"] [connection signal="PlayerDied" from="Player" to="GeneralManager" method="on_player_died"]

View File

@@ -0,0 +1,538 @@
[gd_scene format=3 uid="uid://y77cdg7gg3y7"]
[ext_resource type="Material" uid="uid://31aulub2nqov" path="res://assets/materials/greybox/m_greybox.tres" id="1_xmksr"]
[node name="PlaytestArena" type="CSGCombiner3D" unique_id=664535670]
use_collision = true
collision_layer = 256
collision_mask = 65553
[node name="CSGBox3D101" type="CSGBox3D" parent="." unique_id=858611130]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9, -7.5, 4.25)
use_collision = true
size = Vector3(19, 30, 5.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D103" type="CSGBox3D" parent="." unique_id=1041898412]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.25, 0.5, -7.5)
use_collision = true
size = Vector3(4.5, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D106" type="CSGBox3D" parent="." unique_id=1051974239]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.75, 2, -42)
use_collision = true
size = Vector3(3.5, 4, 7)
material = ExtResource("1_xmksr")
[node name="CSGBox3D107" type="CSGBox3D" parent="." unique_id=1256387171]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.75, 6.5, -43.25)
use_collision = true
size = Vector3(1.5, 5, 4.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D153" type="CSGBox3D" parent="." unique_id=1902148081]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.25, 0.5, -9)
use_collision = true
size = Vector3(3.5, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D154" type="CSGBox3D" parent="." unique_id=1223575745]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34, 0.5, 2)
use_collision = true
size = Vector3(31, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D183" type="CSGBox3D" parent="." unique_id=1184431024]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 25.75, 0.5, -46)
use_collision = true
size = Vector3(12.5, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D184" type="CSGBox3D" parent="." unique_id=237433722]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.25, 5.75, -46)
use_collision = true
size = Vector3(14.5, 11.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D116" type="CSGBox3D" parent="." unique_id=289309705]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.5, 6.5, -19)
use_collision = true
size = Vector3(14, 2, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D128" type="CSGBox3D" parent="." unique_id=1881937332]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 6.5, -20.75)
use_collision = true
size = Vector3(1, 2, 4.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D134" type="CSGBox3D" parent="." unique_id=970372468]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.25, 9, 6.5)
use_collision = true
size = Vector3(18.5, 3, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D150" type="CSGBox3D" parent="." unique_id=1586153180]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 41, 9.25, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D192" type="CSGBox3D" parent="." unique_id=1221030369]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 49, 14.25, -30)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D151" type="CSGBox3D" parent="." unique_id=1968876706]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 41, 9.25, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D131" type="CSGBox3D" parent="." unique_id=1675803110]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 23, 5.5, 0)
use_collision = true
size = Vector3(3, 11, 3)
material = ExtResource("1_xmksr")
[node name="CSGBox3D132" type="CSGBox3D" parent="." unique_id=108620971]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36.5, 6, -4)
use_collision = true
size = Vector3(3, 10, 11)
material = ExtResource("1_xmksr")
[node name="CSGBox3D158" type="CSGBox3D" parent="." unique_id=77533158]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 45, 3.75, -19.25)
use_collision = true
size = Vector3(9, 5.5, 6.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D155" type="CSGBox3D" parent="." unique_id=1730827237]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36.5, 0.5, -5.75)
use_collision = true
size = Vector3(3, 1, 7.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D159" type="CSGBox3D" parent="." unique_id=1747482656]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 42.5, 0.5, -18.75)
use_collision = true
size = Vector3(4, 1, 7.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D160" type="CSGBox3D" parent="." unique_id=1268186444]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 49, 7, -19.25)
use_collision = true
size = Vector3(1, 1, 6.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D180" type="CSGBox3D" parent="." unique_id=733496755]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 49, 11.5, -33.75)
use_collision = true
size = Vector3(1, 1, 8.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D161" type="CSGBox3D" parent="." unique_id=921360817]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 42.5, 7, -16.5)
use_collision = true
size = Vector3(12, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D162" type="CSGBox3D" parent="." unique_id=1479157362]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 37.5, 7, -22)
use_collision = true
size = Vector3(22, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D179" type="CSGBox3D" parent="." unique_id=263184352]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 46.5, 11.5, -30)
use_collision = true
size = Vector3(4, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D182" type="CSGBox3D" parent="." unique_id=8396562]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 38.5, 11.5, -37.5)
use_collision = true
size = Vector3(4, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D114" type="CSGBox3D" parent="." unique_id=422683316]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14.75, 2, -0.75)
use_collision = true
size = Vector3(1.5, 4, 4.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D115" type="CSGBox3D" parent="." unique_id=14692895]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17, 3.75, -0.75)
use_collision = true
size = Vector3(3, 7.5, 4.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D105" type="CSGBox3D" parent="." unique_id=2018818759]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.25, 6, -19.5)
use_collision = true
size = Vector3(4.5, 1, 7)
material = ExtResource("1_xmksr")
[node name="CSGBox3D113" type="CSGBox3D" parent="." unique_id=1051118207]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.5, 6, -17.75)
use_collision = true
size = Vector3(14, 1, 3.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D110" type="CSGBox3D" parent="." unique_id=1937286747]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 8.5, -24.5)
use_collision = true
size = Vector3(1, 18, 44)
material = ExtResource("1_xmksr")
[node name="CSGBox3D125" type="CSGBox3D" parent="." unique_id=2041935452]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14, 0.5, -27.5)
use_collision = true
size = Vector3(1, 1, 4)
material = ExtResource("1_xmksr")
[node name="CSGBox3D118" type="CSGBox3D" parent="." unique_id=1234426636]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.75, 14.25, -37.5)
use_collision = true
size = Vector3(15.5, 6.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D189" type="CSGBox3D" parent="." unique_id=647325640]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.75, 17, -37.5)
use_collision = true
size = Vector3(3.5, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D190" type="CSGBox3D" parent="." unique_id=1980398993]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.75, 11.5, -37.5)
use_collision = true
size = Vector3(3.5, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D191" type="CSGBox3D" parent="." unique_id=1972994986]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 11.5, -33.75)
use_collision = true
size = Vector3(1, 1, 6.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D172" type="CSGBox3D" parent="." unique_id=230478125]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 28, 13.75, -37.5)
use_collision = true
size = Vector3(17, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D181" type="CSGBox3D" parent="." unique_id=2102362617]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 45, 13.75, -37.5)
use_collision = true
size = Vector3(9, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D174" type="CSGBox3D" parent="." unique_id=1996376366]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 32, 13.75, -30)
use_collision = true
size = Vector3(25, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D117" type="CSGBox3D" parent="." unique_id=1187105595]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19, 6.5, -17.75)
use_collision = true
size = Vector3(1, 2, 3.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D119" type="CSGBox3D" parent="." unique_id=1453067156]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19, 3.75, -17.5)
use_collision = true
size = Vector3(1, 7.5, 3)
material = ExtResource("1_xmksr")
[node name="CSGBox3D156" type="CSGBox3D" parent="." unique_id=1916016379]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 25, 6.5, -20.75)
use_collision = true
size = Vector3(1, 2, 3.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D123" type="CSGBox3D" parent="." unique_id=880745657]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19, 2.75, -24.75)
use_collision = true
size = Vector3(1, 5.5, 11.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D135" type="CSGBox3D" parent="." unique_id=2080166757]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 2.75, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D136" type="CSGBox3D" parent="." unique_id=635436804]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 2.75, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D137" type="CSGBox3D" parent="." unique_id=629086623]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 31, 2.75, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D138" type="CSGBox3D" parent="." unique_id=633625954]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 31, 2.75, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D139" type="CSGBox3D" parent="." unique_id=1263579183]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36, 2.75, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D140" type="CSGBox3D" parent="." unique_id=1180648473]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36, 2.75, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D141" type="CSGBox3D" parent="." unique_id=1320530985]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 41, 2.75, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D142" type="CSGBox3D" parent="." unique_id=555945249]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 41, 2.75, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D144" type="CSGBox3D" parent="." unique_id=1065221174]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 9.25, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D164" type="CSGBox3D" parent="." unique_id=218777162]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 11.5, -16.5)
use_collision = true
size = Vector3(1, 10, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D167" type="CSGBox3D" parent="." unique_id=1607928353]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 13.75, -30)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D168" type="CSGBox3D" parent="." unique_id=214809805]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19, 13.75, -30)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D170" type="CSGBox3D" parent="." unique_id=6455396]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19, 13.75, -37.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D165" type="CSGBox3D" parent="." unique_id=1029164331]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19, 11.5, -16.5)
use_collision = true
size = Vector3(1, 10, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D145" type="CSGBox3D" parent="." unique_id=1752112379]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 9.25, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D146" type="CSGBox3D" parent="." unique_id=2128899569]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 31, 9.25, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D147" type="CSGBox3D" parent="." unique_id=815320183]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 31, 9.25, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D148" type="CSGBox3D" parent="." unique_id=891987126]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36, 9.25, -16.5)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D149" type="CSGBox3D" parent="." unique_id=1752445696]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36, 9.25, -22)
use_collision = true
size = Vector3(1, 5.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D124" type="CSGBox3D" parent="." unique_id=669807507]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 2.75, -24.75)
use_collision = true
size = Vector3(1, 5.5, 11.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D121" type="CSGBox3D" parent="." unique_id=453482274]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17, 3.25, -23.25)
use_collision = true
size = Vector3(3, 4.5, 14.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D120" type="CSGBox3D" parent="." unique_id=100386609]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 24, 6, -17.5)
use_collision = true
size = Vector3(3, 12, 3)
material = ExtResource("1_xmksr")
[node name="CSGBox3D143" type="CSGBox3D" parent="." unique_id=161911569]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.5, 6, -19.25)
use_collision = true
size = Vector3(16, 1, 6.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D152" type="CSGBox3D" parent="." unique_id=354039555]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.5, 11.5, -19.25)
use_collision = true
size = Vector3(16, 1, 6.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D166" type="CSGBox3D" parent="." unique_id=2083293603]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17, 17, -23.25)
use_collision = true
size = Vector3(5, 1, 14.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D169" type="CSGBox3D" parent="." unique_id=2083348498]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34, 17, -33.75)
use_collision = true
size = Vector3(31, 1, 8.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D163" type="CSGBox3D" parent="." unique_id=917463914]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 28.5, 7, -16.5)
use_collision = true
size = Vector3(4, 1, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D130" type="CSGBox3D" parent="." unique_id=351738265]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 5.5, -30)
use_collision = true
size = Vector3(1, 11, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D173" type="CSGBox3D" parent="." unique_id=1579213116]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36, 5.5, -30)
use_collision = true
size = Vector3(1, 11, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D175" type="CSGBox3D" parent="." unique_id=361118992]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 49, 5.5, -30)
use_collision = true
size = Vector3(1, 11, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D176" type="CSGBox3D" parent="." unique_id=653049886]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 5.5, -37.5)
use_collision = true
size = Vector3(1, 11, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D177" type="CSGBox3D" parent="." unique_id=306067232]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 36, 5.5, -37.5)
use_collision = true
size = Vector3(1, 11, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D178" type="CSGBox3D" parent="." unique_id=603554285]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 49, 5.5, -37.5)
use_collision = true
size = Vector3(1, 11, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D129" type="CSGBox3D" parent="." unique_id=598301869]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17, 12.25, -43.75)
use_collision = true
size = Vector3(5, 24.5, 5.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D187" type="CSGBox3D" parent="." unique_id=1435130769]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34, 5.25, -44.5)
use_collision = true
size = Vector3(5, 10.5, 4)
material = ExtResource("1_xmksr")
[node name="CSGBox3D188" type="CSGBox3D" parent="." unique_id=1169912197]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 38, 5.25, -46)
use_collision = true
size = Vector3(5, 10.5, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D186" type="CSGBox3D" parent="." unique_id=1249697679]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 45, 12.25, -42.25)
use_collision = true
size = Vector3(9, 24.5, 8.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D111" type="CSGBox3D" parent="." unique_id=844466380]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, 10.5, -36.5)
use_collision = true
size = Vector3(15, 1, 3)
material = ExtResource("1_xmksr")
[node name="CSGBox3D171" type="CSGBox3D" parent="." unique_id=1973718439]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 32, 10.5, -33.75)
use_collision = true
size = Vector3(35, 1, 8.5)
material = ExtResource("1_xmksr")
[node name="CSGBox3D126" type="CSGBox3D" parent="." unique_id=1374634162]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17, 8, -30)
use_collision = true
size = Vector3(5, 6, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D127" type="CSGBox3D" parent="." unique_id=14132175]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17, 5, -37.5)
use_collision = true
size = Vector3(5, 10, 1)
material = ExtResource("1_xmksr")
[node name="CSGBox3D133" type="CSGBox3D" parent="." unique_id=1879601264]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.75, 0.5, -24)
operation = 2
use_collision = true
size = Vector3(5.5, 1, 3)
material = ExtResource("1_xmksr")
[node name="CSGBox3D185" type="CSGBox3D" parent="." unique_id=1821811532]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.75, 13.5, -44)
operation = 2
use_collision = true
size = Vector3(5.5, 4, 3)
material = ExtResource("1_xmksr")
[node name="CSGBox3D104" type="CSGBox3D" parent="." unique_id=1760880982]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 24.75, -12.25, -22.5)
use_collision = true
size = Vector3(49.5, 24.5, 48)
material = ExtResource("1_xmksr")
[node name="CSGBox3D157" type="CSGBox3D" parent="." unique_id=218728896]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 49, 0.5, -22)
use_collision = true
size = Vector3(1, 1, 49)
material = ExtResource("1_xmksr")
[node name="CSGBox3D122" type="CSGBox3D" parent="." unique_id=1105027560]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 2.75, -17.5)
use_collision = true
size = Vector3(1, 5.5, 3)
material = ExtResource("1_xmksr")

View File

@@ -0,0 +1,854 @@
[gd_scene format=3 uid="uid://bd0d7gvinx35c"]
[ext_resource type="PackedScene" uid="uid://55wehh6xombr" path="res://maps/_templates/main_scene_template.tscn" id="1_jyq54"]
[ext_resource type="Material" uid="uid://31aulub2nqov" path="res://assets/materials/greybox/m_greybox.tres" id="2_lpm4c"]
[ext_resource type="Material" uid="uid://dw6lc8evmyc4d" path="res://assets/materials/greybox/m_greybox_valid.tres" id="3_u8sr4"]
[ext_resource type="Material" uid="uid://bm5f7jraqm8n0" path="res://assets/materials/greybox/m_greybox_secondary.tres" id="5_r26ni"]
[ext_resource type="Material" uid="uid://cqha1a2h1dg86" path="res://assets/materials/greybox/m_greybox_medium.tres" id="5_u8sr4"]
[ext_resource type="PackedScene" uid="uid://y77cdg7gg3y7" path="res://maps/levels/_arenas/playtest_1.tscn" id="6_qd7a7"]
[node name="Main" unique_id=955321579 instance=ExtResource("1_jyq54")]
[node name="DirectionalLight3D" parent="." index="5" unique_id=1357990191]
transform = Transform3D(-0.1772511, 0.44628847, 0.87715954, 0.49540228, -0.72966087, 0.4713508, 0.85038733, 0.51809436, -0.09175911, 0, 0, 0)
[node name="Player" parent="." index="6" unique_id=1309399929]
transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, -16, 22.91025, -51.458496)
HasSword = false
HasParry = false
[node name="Greybox" type="CSGCombiner3D" parent="." index="7" unique_id=2082385716]
use_collision = true
collision_layer = 256
collision_mask = 65553
[node name="CSGBox3D" type="CSGBox3D" parent="Greybox" index="0" unique_id=681973284]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.0960007, -0.5, -19.2085)
use_collision = true
size = Vector3(21, 1, 44.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D2" type="CSGBox3D" parent="Greybox" index="1" unique_id=663820033]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.09600067, 4.5, 3.3005066)
use_collision = true
size = Vector3(10, 9, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D5" type="CSGBox3D" parent="Greybox" index="2" unique_id=1332226948]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.0960007, 4.25, -16.699493)
use_collision = true
size = Vector3(16, 8.5, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D6" type="CSGBox3D" parent="Greybox" index="3" unique_id=868182610]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.096001, 4.25, -8.699493)
use_collision = true
size = Vector3(16, 8.5, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D9" type="CSGBox3D" parent="Greybox" index="4" unique_id=1175427795]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 8.25, -42)
use_collision = true
size = Vector3(38, 16.5, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D10" type="CSGBox3D" parent="Greybox" index="5" unique_id=427936811]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, 8.5, -35)
use_collision = true
size = Vector3(21.5, 17, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D3" type="CSGBox3D" parent="Greybox" index="6" unique_id=1254886602]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 3.903999, 4.5, -6.6994934)
use_collision = true
size = Vector3(18, 9, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D7" type="CSGBox3D" parent="Greybox" index="7" unique_id=133005848]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -18.096, 8, -25.449493)
use_collision = true
size = Vector3(31.5, 16, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D8" type="CSGBox3D" parent="Greybox" index="8" unique_id=1267333699]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -10.096001, 4.5, -26.699493)
use_collision = true
size = Vector3(18, 9, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D4" type="CSGBox3D" parent="Greybox" index="9" unique_id=1453945590]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -4.0960007, 4.5, -2.6994934)
use_collision = true
size = Vector3(10, 9, 2)
material = ExtResource("2_lpm4c")
[node name="Step" type="CSGCombiner3D" parent="Greybox" index="10" unique_id=1645604967]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 0, -24)
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox/Step" index="0" unique_id=454828529]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.5, 2)
use_collision = true
size = Vector3(7.5, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox/Step" index="1" unique_id=834933161]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.5, 0)
use_collision = true
size = Vector3(7.5, 1, 3)
material = ExtResource("2_lpm4c")
[node name="Step2" type="CSGCombiner3D" parent="Greybox" index="11" unique_id=2118921085]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 1, -28)
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox/Step2" index="0" unique_id=1027706554]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.5, 2)
use_collision = true
size = Vector3(7.5, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox/Step2" index="1" unique_id=1973797616]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.5, 0)
use_collision = true
size = Vector3(7.5, 1, 3)
material = ExtResource("2_lpm4c")
[node name="Step3" type="CSGCombiner3D" parent="Greybox" index="12" unique_id=961820805]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, -2, 2, -38.5)
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox/Step3" index="0" unique_id=1976117203]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.5, 2)
use_collision = true
size = Vector3(7.5, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox/Step3" index="1" unique_id=11066063]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -0.75, -0.25)
use_collision = true
size = Vector3(7.5, 3.5, 3.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D17" type="CSGBox3D" parent="Greybox/Step3" index="2" unique_id=967072095]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -1.75, 0.75)
use_collision = true
size = Vector3(7.5, 3.5, 3.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D18" type="CSGBox3D" parent="Greybox/Step3" index="3" unique_id=1687912660]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -0.5, 8.5)
use_collision = true
size = Vector3(7.5, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D19" type="CSGBox3D" parent="Greybox/Step3" index="4" unique_id=1075815413]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -2, 8.5)
use_collision = true
size = Vector3(7.5, 2, 1)
material = ExtResource("2_lpm4c")
[node name="Step4" type="CSGCombiner3D" parent="Greybox" index="13" unique_id=1579908989]
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 2.5, 6, -38.5)
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox/Step4" index="0" unique_id=2059150172]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.5, 2)
use_collision = true
size = Vector3(7.5, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox/Step4" index="1" unique_id=1079232092]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -0.75, -0.25)
use_collision = true
size = Vector3(7.5, 3.5, 3.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D17" type="CSGBox3D" parent="Greybox/Step4" index="2" unique_id=33075564]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -4, 0.75)
use_collision = true
size = Vector3(7.5, 8, 3.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D17" type="CSGBox3D" parent="Greybox" index="14" unique_id=1079419289]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.25, 0.75, -35.25)
use_collision = true
size = Vector3(6.5, 2.5, 11.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D11" type="CSGBox3D" parent="Greybox" index="15" unique_id=316945013]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.75, 6.5, -35.25)
use_collision = true
size = Vector3(10.5, 1, 13.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D23" type="CSGBox3D" parent="Greybox" index="16" unique_id=1942257779]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 18.75, -38.25)
use_collision = true
size = Vector3(9, 5.5, 8.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D46" type="CSGBox3D" parent="Greybox" index="17" unique_id=1824745168]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 16.75, -38.25)
use_collision = true
size = Vector3(28, 1.5, 8.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D70" type="CSGBox3D" parent="Greybox" index="18" unique_id=1330738104]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 12.25, -15.5)
use_collision = true
size = Vector3(25, 7.5, 41)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D12" type="CSGBox3D" parent="Greybox" index="19" unique_id=1227474775]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14.5, 10.25, -37.75)
use_collision = true
size = Vector3(2, 13.5, 7.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D13" type="CSGBox3D" parent="Greybox" index="20" unique_id=1383851577]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.5, 8, -31.5)
use_collision = true
size = Vector3(2, 16, 5)
material = ExtResource("5_r26ni")
[node name="CSGBox3D15" type="CSGBox3D" parent="Greybox" index="21" unique_id=238418660]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14.5, 8, -31.5)
use_collision = true
size = Vector3(2, 16, 5)
material = ExtResource("5_r26ni")
[node name="CSGBox3D14" type="CSGBox3D" parent="Greybox" index="22" unique_id=437211444]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 8, -27)
use_collision = true
size = Vector3(7, 16, 4)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D20" type="CSGBox3D" parent="Greybox" index="23" unique_id=1913472587]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 16.5, -8.5)
use_collision = true
size = Vector3(9, 1, 39)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D30" type="CSGBox3D" parent="Greybox" index="24" unique_id=1594042498]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6, 16.5, 17.5)
use_collision = true
size = Vector3(5, 1, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D54" type="CSGBox3D" parent="Greybox" index="25" unique_id=157354874]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16, 15.5, 22.5)
use_collision = true
size = Vector3(5, 7, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D38" type="CSGBox3D" parent="Greybox" index="26" unique_id=348698998]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 18.5, 17.5)
use_collision = true
size = Vector3(1, 1, 13)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D39" type="CSGBox3D" parent="Greybox" index="27" unique_id=850320525]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 13.75, 17.5)
use_collision = true
size = Vector3(7, 10.5, 14)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D60" type="CSGBox3D" parent="Greybox" index="28" unique_id=177087863]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -34, 22, 17.5)
use_collision = true
size = Vector3(1, 1, 13)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D61" type="CSGBox3D" parent="Greybox" index="29" unique_id=16972982]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -38, 17.25, 14.5)
use_collision = true
size = Vector3(7, 10.5, 20)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D37" type="CSGBox3D" parent="Greybox" index="30" unique_id=1733162117]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.75, 9.5, 17.75)
use_collision = true
size = Vector3(22.5, 1, 14.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D56" type="CSGBox3D" parent="Greybox" index="31" unique_id=790895849]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26.25, 11.5, 17.75)
use_collision = true
size = Vector3(24.5, 1, 14.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D34" type="CSGBox3D" parent="Greybox" index="32" unique_id=2008368941]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10.5, 12.5, 14.75)
use_collision = true
size = Vector3(6, 7, 8.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D43" type="CSGBox3D" parent="Greybox" index="33" unique_id=1975028151]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.5, 12.5, 17.5)
use_collision = true
size = Vector3(4, 7, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D44" type="CSGBox3D" parent="Greybox" index="34" unique_id=177387693]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 10.5, 17.25)
use_collision = true
size = Vector3(3, 3, 13.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D35" type="CSGBox3D" parent="Greybox" index="35" unique_id=570122850]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 16.5, 17.25)
use_collision = true
size = Vector3(5, 1, 13.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D21" type="CSGBox3D" parent="Greybox" index="36" unique_id=2094633204]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 16.5, -29.5)
use_collision = true
size = Vector3(1, 1, 9)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D24" type="CSGBox3D" parent="Greybox" index="37" unique_id=761197989]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 18.75, -29.5)
use_collision = true
size = Vector3(1, 5.5, 9)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D26" type="CSGBox3D" parent="Greybox" index="38" unique_id=258581541]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 18.25, -7)
use_collision = true
size = Vector3(3, 6.5, 36)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D42" type="CSGBox3D" parent="Greybox" index="39" unique_id=1332460934]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 25.75, -15.25)
use_collision = true
size = Vector3(9, 8.5, 52.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D27" type="CSGBox3D" parent="Greybox" index="40" unique_id=1484621306]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 22.5, -0.5)
use_collision = true
size = Vector3(3, 15, 49)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D31" type="CSGBox3D" parent="Greybox" index="41" unique_id=1289594807]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 19.25, 24.5)
use_collision = true
size = Vector3(35, 21.5, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D57" type="CSGBox3D" parent="Greybox" index="42" unique_id=652826918]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -27, 14.25, 24.5)
use_collision = true
size = Vector3(17, 11.5, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D58" type="CSGBox3D" parent="Greybox" index="43" unique_id=1738066207]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26.5, 23.5, 24.5)
use_collision = true
size = Vector3(16, 7, 1)
material = ExtResource("5_r26ni")
[node name="CSGBox3D59" type="CSGBox3D" parent="Greybox" index="44" unique_id=1421965564]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26.5, 28.5, 24.5)
use_collision = true
size = Vector3(16, 3, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D63" type="CSGBox3D" parent="Greybox" index="45" unique_id=1781215916]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -38, 26.25, 24.5)
use_collision = true
size = Vector3(7, 7.5, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D64" type="CSGBox3D" parent="Greybox" index="46" unique_id=1515829063]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -39, 21.25, 14.75)
use_collision = true
size = Vector3(1, 17.5, 20.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D65" type="CSGBox3D" parent="Greybox" index="47" unique_id=807471618]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -35, 21.25, 7.25)
use_collision = true
size = Vector3(1, 17.5, 5.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D73" type="CSGBox3D" parent="Greybox" index="48" unique_id=1654535689]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -31.5, 20.25, -15.75)
use_collision = true
size = Vector3(1, 19.5, 40.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D75" type="CSGBox3D" parent="Greybox" index="49" unique_id=1061275423]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -33.25, 20.25, 4.75)
use_collision = true
size = Vector3(4.5, 19.5, 2.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D76" type="CSGBox3D" parent="Greybox" index="50" unique_id=2120571329]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -40.75, 20.25, 4.75)
use_collision = true
size = Vector3(4.5, 19.5, 2.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D79" type="CSGBox3D" parent="Greybox" index="51" unique_id=780854741]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -33.25, 20.25, -9.75)
use_collision = true
size = Vector3(4.5, 19.5, 5.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D80" type="CSGBox3D" parent="Greybox" index="52" unique_id=231628410]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -40.75, 20.25, -9.75)
use_collision = true
size = Vector3(4.5, 19.5, 5.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D95" type="CSGBox3D" parent="Greybox" index="53" unique_id=1030736240]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -31, 20.25, -34.25)
use_collision = true
size = Vector3(9, 19.5, 5.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D100" type="CSGBox3D" parent="Greybox" index="54" unique_id=251951336]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -25.5, 20.25, -40.75)
use_collision = true
size = Vector3(3, 19.5, 18.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D106" type="CSGBox3D" parent="Greybox" index="55" unique_id=1694005286]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30.25, 37, -42.75)
use_collision = true
size = Vector3(25.5, 14, 22.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D107" type="CSGBox3D" parent="Greybox" index="56" unique_id=1819732168]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 30.5, -3.25)
use_collision = true
size = Vector3(12, 1, 56.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D108" type="CSGBox3D" parent="Greybox" index="57" unique_id=791611886]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.25, 30.5, 17.5)
use_collision = true
size = Vector3(47.5, 1, 15)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D96" type="CSGBox3D" parent="Greybox" index="58" unique_id=1113234130]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -40.75, 20.25, -34.25)
use_collision = true
size = Vector3(4.5, 19.5, 5.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D97" type="CSGBox3D" parent="Greybox" index="59" unique_id=28477813]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30.25, 19.25, -53.5)
use_collision = true
size = Vector3(25.5, 21.5, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D74" type="CSGBox3D" parent="Greybox" index="60" unique_id=163691033]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -42.5, 20.25, -24.25)
use_collision = true
size = Vector3(1, 19.5, 57.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D40" type="CSGBox3D" parent="Greybox" index="61" unique_id=149448218]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 19.5, 10.5)
use_collision = true
size = Vector3(43, 22, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D28" type="CSGBox3D" parent="Greybox" index="62" unique_id=34926235]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 20.25, -10.25)
use_collision = true
size = Vector3(3, 2.5, 6.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D29" type="CSGBox3D" parent="Greybox" index="63" unique_id=1236916367]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 18.5, -10.25)
use_collision = true
size = Vector3(3, 1, 6.5)
material = ExtResource("5_u8sr4")
[node name="CSGBox3D32" type="CSGBox3D" parent="Greybox" index="64" unique_id=1361663538]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 20.25, 7.75)
use_collision = true
size = Vector3(3, 2.5, 6.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D33" type="CSGBox3D" parent="Greybox" index="65" unique_id=2014293618]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 18.5, 7.75)
use_collision = true
size = Vector3(3, 1, 6.5)
material = ExtResource("5_u8sr4")
[node name="CSGBox3D25" type="CSGBox3D" parent="Greybox" index="66" unique_id=1000059913]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16, 18.75, -29.5)
use_collision = true
size = Vector3(1, 5.5, 9)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D22" type="CSGBox3D" parent="Greybox" index="67" unique_id=1623594342]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 16.5, -29.5)
use_collision = true
size = Vector3(1, 1, 9)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D16" type="CSGBox3D" parent="Greybox" index="68" unique_id=1660129006]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 16.5, -28.5)
use_collision = true
size = Vector3(5, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D18" type="CSGBox3D" parent="Greybox" index="69" unique_id=528606233]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 14, 16.5, -31.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D19" type="CSGBox3D" parent="Greybox" index="70" unique_id=533984919]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 16.5, -31.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D36" type="CSGBox3D" parent="Greybox" index="71" unique_id=1460670998]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 16.5, 13.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D49" type="CSGBox3D" parent="Greybox" index="72" unique_id=1821984513]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10.5, 12.5, 17.25)
use_collision = true
size = Vector3(6, 7, 13.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D50" type="CSGBox3D" parent="Greybox" index="73" unique_id=935249000]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 16.5, 13.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D51" type="CSGBox3D" parent="Greybox" index="74" unique_id=2063626202]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 16.5, 21.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D45" type="CSGBox3D" parent="Greybox" index="75" unique_id=1969803797]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 17.5, 17.5)
use_collision = true
size = Vector3(1, 1, 3)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D62" type="CSGBox3D" parent="Greybox" index="76" unique_id=246528851]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -18, 19.5, 22.5)
use_collision = true
size = Vector3(1, 1, 3)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D41" type="CSGBox3D" parent="Greybox" index="77" unique_id=902325179]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 12.5, 13.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D55" type="CSGBox3D" parent="Greybox" index="78" unique_id=1746662054]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.75, 12.5, 16)
use_collision = true
size = Vector3(1.5, 3, 11)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D52" type="CSGBox3D" parent="Greybox" index="79" unique_id=1613606807]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 14.5, 17.25)
use_collision = true
size = Vector3(1, 7, 13.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D53" type="CSGBox3D" parent="Greybox" index="80" unique_id=2043849714]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 18.5, 16)
use_collision = true
size = Vector3(1, 1, 10)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D48" type="CSGBox3D" parent="Greybox" index="81" unique_id=998426919]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, 14.5, 16)
use_collision = true
size = Vector3(1, 1, 10)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D66" type="CSGBox3D" parent="Greybox" index="82" unique_id=1549586957]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 19.5, 4)
use_collision = true
size = Vector3(3, 4, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D78" type="CSGBox3D" parent="Greybox" index="83" unique_id=1305480601]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37.5, 15.75, -7.25)
use_collision = true
size = Vector3(11, 13.5, 8.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D67" type="CSGBox3D" parent="Greybox" index="84" unique_id=11222487]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 22, 4)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D86" type="CSGBox3D" parent="Greybox" index="85" unique_id=905628818]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 22, -12)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D77" type="CSGBox3D" parent="Greybox" index="86" unique_id=582978856]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 22, -2.5)
use_collision = true
size = Vector3(10, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D87" type="CSGBox3D" parent="Greybox" index="87" unique_id=1897627146]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 15.75, -31.75)
use_collision = true
size = Vector3(10, 13.5, 8.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D88" type="CSGBox3D" parent="Greybox" index="88" unique_id=854998014]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 22, -27)
use_collision = true
size = Vector3(10, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D98" type="CSGBox3D" parent="Greybox" index="89" unique_id=447434163]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23.75, 15.5, -51.5)
use_collision = true
size = Vector3(12.5, 14, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D101" type="CSGBox3D" parent="Greybox" index="90" unique_id=1996176072]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20.75, 19.25, -48.5)
use_collision = true
size = Vector3(6.5, 21.5, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D99" type="CSGBox3D" parent="Greybox" index="91" unique_id=2008353765]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -28.5, 22, -49.5)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D109" type="CSGBox3D" parent="Greybox" index="92" unique_id=519906200]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30.5, 22, -51)
use_collision = true
size = Vector3(1, 1, 4)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D68" type="CSGBox3D" parent="Greybox" index="93" unique_id=743815889]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -36.5, 16.5, 0.5)
use_collision = true
size = Vector3(12, 4, 8)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D69" type="CSGBox3D" parent="Greybox" index="94" unique_id=1709107988]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -36.5, 19.5, -2.75)
use_collision = true
size = Vector3(12, 4, 1.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D72" type="CSGBox3D" parent="Greybox" index="95" unique_id=547486564]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -34.75, 10, -24.75)
use_collision = true
size = Vector3(19.5, 3, 58.5)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D81" type="CSGBox3D" parent="Greybox" index="96" unique_id=1566599507]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 19.5, -12)
use_collision = true
size = Vector3(3, 4, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D82" type="CSGBox3D" parent="Greybox" index="97" unique_id=1617624220]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 16, -12.5)
use_collision = true
size = Vector3(3, 3, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D83" type="CSGBox3D" parent="Greybox" index="98" unique_id=1568985583]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 18, -13)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D84" type="CSGBox3D" parent="Greybox" index="99" unique_id=631880926]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 13, -13)
use_collision = true
size = Vector3(3, 3, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D85" type="CSGBox3D" parent="Greybox" index="100" unique_id=996930960]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 15, -14)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D89" type="CSGBox3D" parent="Greybox" index="101" unique_id=1602075080]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 22, -36.5)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D90" type="CSGBox3D" parent="Greybox" index="102" unique_id=1904513833]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 19.5, -36.5)
use_collision = true
size = Vector3(3, 4, 1)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D91" type="CSGBox3D" parent="Greybox" index="103" unique_id=1314237812]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 16, -37)
use_collision = true
size = Vector3(3, 3, 2)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D92" type="CSGBox3D" parent="Greybox" index="104" unique_id=560010720]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 18, -37.5)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D93" type="CSGBox3D" parent="Greybox" index="105" unique_id=147254481]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 13, -37.5)
use_collision = true
size = Vector3(3, 3, 3)
material = ExtResource("2_lpm4c")
[node name="CSGBox3D94" type="CSGBox3D" parent="Greybox" index="106" unique_id=691195821]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 15, -38.5)
use_collision = true
size = Vector3(3, 1, 1)
material = ExtResource("3_u8sr4")
[node name="CSGBox3D47" type="CSGBox3D" parent="Greybox" index="107" unique_id=1635436254]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 12.5, 21.5)
use_collision = true
size = Vector3(1, 1, 5)
material = ExtResource("3_u8sr4")
[node name="PlaytestArena" parent="." index="8" unique_id=664535670 instance=ExtResource("6_qd7a7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, 22.5, -51.5)
[node name="Lights" type="Node3D" parent="." index="9" unique_id=395750804]
[node name="OmniLight3D" type="OmniLight3D" parent="Lights" index="0" unique_id=1759925856]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 2, -12)
omni_range = 6.0
[node name="OmniLight3D2" type="OmniLight3D" parent="Lights" index="1" unique_id=458028986]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.5, 2.5, -18)
omni_range = 6.0
[node name="OmniLight3D3" type="OmniLight3D" parent="Lights" index="2" unique_id=735245103]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16, 7, -39.5)
omni_range = 9.5
[node name="OmniLight3D31" type="OmniLight3D" parent="Lights" index="3" unique_id=829009277]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14, 4.5, -24.5)
omni_range = 9.5
[node name="OmniLight3D4" type="OmniLight3D" parent="Lights" index="4" unique_id=92911518]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 5.5, -38.5)
omni_range = 5.5
[node name="OmniLight3D30" type="OmniLight3D" parent="Lights" index="5" unique_id=697077536]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, 3, -38.5)
[node name="OmniLight3D5" type="OmniLight3D" parent="Lights" index="6" unique_id=1550409099]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.5, 9.5, -39)
omni_range = 6.5
[node name="OmniLight3D6" type="OmniLight3D" parent="Lights" index="7" unique_id=342293346]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 10.5, -32)
omni_range = 3.5
[node name="OmniLight3D7" type="OmniLight3D" parent="Lights" index="8" unique_id=1443833930]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 19.5, -32)
omni_range = 8.0
[node name="OmniLight3D8" type="OmniLight3D" parent="Lights" index="9" unique_id=260674221]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 20, -15)
omni_range = 4.0
[node name="OmniLight3D9" type="OmniLight3D" parent="Lights" index="10" unique_id=1269832640]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 20, 3.5)
omni_range = 4.0
[node name="OmniLight3D10" type="OmniLight3D" parent="Lights" index="11" unique_id=21886206]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 17.5, -6.5)
omni_range = 7.5
[node name="OmniLight3D11" type="OmniLight3D" parent="Lights" index="12" unique_id=1631281854]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 17.5, 11.5)
omni_range = 7.5
[node name="OmniLight3D12" type="OmniLight3D" parent="Lights" index="13" unique_id=1292223180]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.5, 19, 17.5)
omni_range = 4.5
[node name="OmniLight3D15" type="OmniLight3D" parent="Lights" index="14" unique_id=895379786]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16.5, 21, 22.5)
omni_range = 3.5
[node name="OmniLight3D18" type="OmniLight3D" parent="Lights" index="15" unique_id=277657948]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24.5, 24.5, 17.5)
omni_range = 15.5
[node name="OmniLight3D13" type="OmniLight3D" parent="Lights" index="16" unique_id=305122268]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11, 22.5, 20.5)
omni_range = 7.0
[node name="OmniLight3D14" type="OmniLight3D" parent="Lights" index="17" unique_id=915168140]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 22.5, 17.5)
omni_range = 10.0
[node name="OmniLight3D16" type="OmniLight3D" parent="Lights" index="18" unique_id=1080888977]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -35.5, 25.5, 22)
omni_range = 7.0
[node name="OmniLight3D17" type="OmniLight3D" parent="Lights" index="19" unique_id=922282838]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -36.5, 25.5, 10.5)
omni_range = 7.0
[node name="OmniLight3D19" type="OmniLight3D" parent="Lights" index="20" unique_id=1959866895]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 25.5, -5.5)
omni_range = 7.0
[node name="OmniLight3D29" type="OmniLight3D" parent="Lights" index="21" unique_id=2143811783]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 25.5, -16.5)
omni_range = 7.0
[node name="OmniLight3D20" type="OmniLight3D" parent="Lights" index="22" unique_id=1665621589]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 24.5, -29)
omni_range = 7.0
[node name="OmniLight3D21" type="OmniLight3D" parent="Lights" index="23" unique_id=1870279999]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 24.5, -29)
omni_range = 7.0
[node name="OmniLight3D22" type="OmniLight3D" parent="Lights" index="24" unique_id=1284564847]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 24.5, -39.5)
omni_range = 7.0
[node name="OmniLight3D23" type="OmniLight3D" parent="Lights" index="25" unique_id=1612575478]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 24.5, -39.5)
omni_range = 7.0
[node name="OmniLight3D24" type="OmniLight3D" parent="Lights" index="26" unique_id=1748145610]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -33.5, 24.5, -47)
omni_range = 10.0
[node name="OmniLight3D25" type="OmniLight3D" parent="Lights" index="27" unique_id=727558952]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -28, 24.5, -51)
[node name="OmniLight3D26" type="OmniLight3D" parent="Lights" index="28" unique_id=1646376304]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 24.5, -51.5)
omni_range = 7.0
[node name="OmniLight3D27" type="OmniLight3D" parent="Lights" index="29" unique_id=1849438050]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 24.5, -51.5)
omni_range = 4.5

View File

@@ -37,6 +37,12 @@ autoplay = false
[node name="Player" parent="." index="5" unique_id=1309399929] [node name="Player" parent="." index="5" unique_id=1309399929]
transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 2, 1.5, 9.5) transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 2, 1.5, 9.5)
[node name="DebugLayer" parent="." index="6" unique_id=294370189]
visible = true
[node name="GuideDebugger" parent="DebugLayer" index="0" unique_id=636020765]
visible = false
[node name="Greybox" type="CSGCombiner3D" parent="." index="7" unique_id=646927976] [node name="Greybox" type="CSGCombiner3D" parent="." index="7" unique_id=646927976]
use_collision = true use_collision = true
collision_layer = 256 collision_layer = 256

View File

@@ -26,6 +26,9 @@ func add_levels_to_container() -> void:
file_name = file_name.trim_suffix(".tscn") # Remove the ".tscn" extension file_name = file_name.trim_suffix(".tscn") # Remove the ".tscn" extension
file_name = file_name.replace("_", " ") # Replace underscores with spaces file_name = file_name.replace("_", " ") # Replace underscores with spaces
file_name = file_name.capitalize() # Convert to proper case file_name = file_name.capitalize() # Convert to proper case
if file_path.contains("/gyms/"): file_name = "[GYM] " + file_name
if file_path.contains("/museums/"): file_name = "[MUS] " + file_name
if file_path.contains("/zoos/"): file_name = "[ZOO] " + file_name
var button_name := str(file_name) var button_name := str(file_name)
level_buttons_container.add_item(button_name) level_buttons_container.add_item(button_name)

View File

@@ -43,7 +43,7 @@ item_0/text = "1 - ExampleLevel"
[node name="SceneLister" type="Node" parent="." unique_id=149935027] [node name="SceneLister" type="Node" parent="." unique_id=149935027]
script = ExtResource("3_stdqw") script = ExtResource("3_stdqw")
files = Array[String](["res://maps/level1.tscn", "res://maps/city.tscn", "res://maps/GYMs/metrics.tscn"]) files = Array[String](["res://maps/gyms/metrics.tscn", "res://maps/zoos/grounded_flying_ennemies.tscn"])
directory = "res://maps" directory = "res://maps"
[connection signal="item_activated" from="Control/LevelButtonsContainer" to="." method="_on_level_buttons_container_item_activated"] [connection signal="item_activated" from="Control/LevelButtonsContainer" to="." method="_on_level_buttons_container_item_activated"]

View File

@@ -109,7 +109,7 @@ text = "Restart current
[node name="SelectLevel" type="Button" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/LevelSelectionMargin/LevelSelectionSection/LevelSelectionContainer" unique_id=2015444126] [node name="SelectLevel" type="Button" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/LevelSelectionMargin/LevelSelectionSection/LevelSelectionContainer" unique_id=2015444126]
layout_mode = 2 layout_mode = 2
text = "Select levet text = "Select level
" "
[connection signal="toggled" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerUtilsContainer/PlayerInvicibleToggle" to="." method="_on_player_invicible_toggled"] [connection signal="toggled" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerUtilsContainer/PlayerInvicibleToggle" to="." method="_on_player_invicible_toggled"]

View File

@@ -399,7 +399,6 @@ offset_left = 1524.0
offset_top = 1.0 offset_top = 1.0
offset_right = -8.0 offset_right = -8.0
offset_bottom = 1.0 offset_bottom = 1.0
enabled = false
initial_node_to_watch = NodePath("../StateChart") initial_node_to_watch = NodePath("../StateChart")
[node name="UI" type="Control" parent="." unique_id=856532641] [node name="UI" type="Control" parent="." unique_id=856532641]
@@ -790,6 +789,12 @@ to = NodePath("../../Mantling")
event = &"mantle" event = &"mantle"
delay_in_seconds = "0.0" delay_in_seconds = "0.0"
[node name="OnWallRun" type="Node" parent="StateChart/Root/Movement/Jump" unique_id=1685494079]
script = ExtResource("28_n7qhm")
to = NodePath("../../OnWall/Running")
event = &"wall_run"
delay_in_seconds = "0.0"
[node name="SimpleJump" type="Node" parent="StateChart/Root/Movement/Jump" unique_id=591943461] [node name="SimpleJump" type="Node" parent="StateChart/Root/Movement/Jump" unique_id=591943461]
script = ExtResource("27_34snm") script = ExtResource("27_34snm")
@@ -1089,6 +1094,12 @@ delay_in_seconds = "0.0"
[node name="Hugging" type="Node" parent="StateChart/Root/Movement/OnWall" unique_id=162057636] [node name="Hugging" type="Node" parent="StateChart/Root/Movement/OnWall" unique_id=162057636]
script = ExtResource("27_34snm") script = ExtResource("27_34snm")
[node name="OnWallRun" type="Node" parent="StateChart/Root/Movement/OnWall/Hugging" unique_id=979474050]
script = ExtResource("28_n7qhm")
to = NodePath("../../Running")
event = &"wall_run"
delay_in_seconds = "0.0"
[node name="OnDash" type="Node" parent="StateChart/Root/Movement/OnWall/Hugging" unique_id=43147957] [node name="OnDash" type="Node" parent="StateChart/Root/Movement/OnWall/Hugging" unique_id=43147957]
script = ExtResource("28_n7qhm") script = ExtResource("28_n7qhm")
to = NodePath("../../../Dashing/Dash") to = NodePath("../../../Dashing/Dash")

View File

@@ -126,6 +126,12 @@ public partial class HeadSystem : Node3D
_slidingNoise.SetFrequency(SlidingJitterFrequency); _slidingNoise.SetFrequency(SlidingJitterFrequency);
} }
public void SetWeaponsVisible(bool swordVisible, bool parryVisible)
{
_rightHandedWeapon.Visible = swordVisible;
_leftHandedWeapon.Visible = parryVisible;
}
public void OnMantle() public void OnMantle()
{ {
_animationTree.Set("parameters/OnMantle/request", (int) AnimationNodeOneShot.OneShotRequest.Fire); _animationTree.Set("parameters/OnMantle/request", (int) AnimationNodeOneShot.OneShotRequest.Fire);

View File

@@ -160,7 +160,7 @@ tracks/6/keys = {
} }
tracks/7/type = "value" tracks/7/type = "value"
tracks/7/imported = false tracks/7/imported = false
tracks/7/enabled = true tracks/7/enabled = false
tracks/7/path = NodePath("../../FPRig/Parry:visible") tracks/7/path = NodePath("../../FPRig/Parry:visible")
tracks/7/interp = 1 tracks/7/interp = 1
tracks/7/loop_wrap = true tracks/7/loop_wrap = true
@@ -671,6 +671,7 @@ mesh = ExtResource("2_c5qep")
[node name="Parry" type="Node3D" parent="FPRig" unique_id=1218775403] [node name="Parry" type="Node3D" parent="FPRig" unique_id=1218775403]
transform = Transform3D(0.43521196, -1.1178209, 0.03266725, -0.65402746, -0.2828554, -0.96552634, 0.9071047, 0.33236945, -0.711823, -0.22145952, -0.19867475, -1.3653086) transform = Transform3D(0.43521196, -1.1178209, 0.03266725, -0.65402746, -0.2828554, -0.96552634, 0.9071047, 0.33236945, -0.711823, -0.22145952, -0.19867475, -1.3653086)
visible = false
[node name="ParryMesh" type="MeshInstance3D" parent="FPRig/Parry" unique_id=1993291456] [node name="ParryMesh" type="MeshInstance3D" parent="FPRig/Parry" unique_id=1993291456]
mesh = ExtResource("3_1ay6d") mesh = ExtResource("3_1ay6d")

View File

@@ -76,6 +76,8 @@ public partial class PlayerController : CharacterBody3D,
// Inspector stuff // Inspector stuff
[Export] public Marker3D TutorialWeaponTarget; [Export] public Marker3D TutorialWeaponTarget;
[Export] public bool TutorialDone { get; set; } [Export] public bool TutorialDone { get; set; }
[Export] public bool HasSword { get; set; } = true;
[Export] public bool HasParry { get; set; } = true;
// Combat stuff // Combat stuff
[ExportCategory("Combat")] [ExportCategory("Combat")]
@@ -523,8 +525,10 @@ public partial class PlayerController : CharacterBody3D,
EmpoweredActionsLeft = MaxNumberOfEmpoweredActions; EmpoweredActionsLeft = MaxNumberOfEmpoweredActions;
if (!TutorialDone) // if (!TutorialDone)
PlaceWeaponForTutorial(); // PlaceWeaponForTutorial();
HeadSystem.SetWeaponsVisible(HasSword, HasParry);
/////////////////////////// ///////////////////////////
// Signal setup /////////// // Signal setup ///////////
@@ -826,14 +830,7 @@ public partial class PlayerController : CharacterBody3D,
return; return;
// Should we start a wall run // Should we start a wall run
var wallNormal = WallHugSystem.WallHugNormal.UnwrapOr(Vector3.Zero); if (ShouldStartWallRun())
var isIndeedWall = wallNormal.Y < 0.1;
var hvel = new Vector3(Velocity.X, 0, Velocity.Z);
var hvelProjected = hvel.Slide(_wallHugStartNormal);
var haveEnoughSpeed = hvelProjected.Length() > WallRunSpeedThreshold;
var isCoplanarEnough = Velocity.AngleTo(wallNormal) > Math.PI/4 && Velocity.AngleTo(wallNormal) < 3*Math.PI/4;
var isGoingDownwards = Velocity.AngleTo(Vector3.Down) < Math.PI/4;
if (haveEnoughSpeed && isCoplanarEnough && !isGoingDownwards && isIndeedWall && !_coyoteEnabled.Active)
{ {
SetVerticalVelocity(WallRunUpwardVelocity); SetVerticalVelocity(WallRunUpwardVelocity);
_playerState.SendEvent("wall_run"); _playerState.SendEvent("wall_run");
@@ -841,12 +838,25 @@ public partial class PlayerController : CharacterBody3D,
} }
// If all else fail and we go down, we hug // If all else fail and we go down, we hug
var wallNormal = WallHugSystem.WallHugNormal.UnwrapOr(Vector3.Zero);
if (Velocity.Y < 0 && IsInputTowardsWall(wallNormal)) if (Velocity.Y < 0 && IsInputTowardsWall(wallNormal))
{ {
_playerState.SendEvent("wall_hug"); _playerState.SendEvent("wall_hug");
} }
} }
public bool ShouldStartWallRun()
{
var wallNormal = WallHugSystem.WallHugNormal.UnwrapOr(Vector3.Zero);
var isIndeedWall = wallNormal.Y < 0.1;
var hvel = new Vector3(Velocity.X, 0, Velocity.Z);
var hvelProjected = hvel.Slide(_wallHugStartNormal);
var haveEnoughSpeed = hvelProjected.Length() > WallRunSpeedThreshold;
var isCoplanarEnough = Velocity.AngleTo(wallNormal) > Math.PI/4 && Velocity.AngleTo(wallNormal) < 3*Math.PI/4;
var isGoingDownwards = Velocity.AngleTo(Vector3.Down) < Math.PI/4;
return haveEnoughSpeed && isCoplanarEnough && !isGoingDownwards && isIndeedWall && !_coyoteEnabled.Active;
}
public float ComputeVerticalSpeedGravity(float delta) public float ComputeVerticalSpeedGravity(float delta)
{ {
return Velocity.Y - CalculateGravityForce() * delta; return Velocity.Y - CalculateGravityForce() * delta;
@@ -1080,7 +1090,8 @@ public partial class PlayerController : CharacterBody3D,
{ {
if (MantleSystem.IsMantlePossible && IsPlayerInputtingForward()) if (MantleSystem.IsMantlePossible && IsPlayerInputtingForward())
{ {
_bufferedAction = BufferedActions.MantleDash; // _bufferedAction = BufferedActions.MantleDash;
_canDash = true; // Restore dash ability
_playerState.SendEvent("mantle"); _playerState.SendEvent("mantle");
} }
} }
@@ -1135,6 +1146,12 @@ public partial class PlayerController : CharacterBody3D,
_canDashAirborne = true; _canDashAirborne = true;
WallHug(delta); WallHug(delta);
if (ShouldStartWallRun())
{
SetVerticalVelocity(WallRunUpwardVelocity);
_playerState.SendEvent("wall_run");
return;
}
if (isOnFloorCustom()) if (isOnFloorCustom())
_playerState.SendEvent("grounded"); _playerState.SendEvent("grounded");
if (!WallHugSystem.IsWallHugging() || !IsInputTowardsWall(_wallHugStartNormal)) if (!WallHugSystem.IsWallHugging() || !IsInputTowardsWall(_wallHugStartNormal))
@@ -1268,6 +1285,13 @@ public partial class PlayerController : CharacterBody3D,
{ {
if (IsTryingToMantle()) _playerState.SendEvent("mantle"); if (IsTryingToMantle()) _playerState.SendEvent("mantle");
if (ShouldStartWallRun() && Velocity.Y < WallRunUpwardVelocity)
{
SetVerticalVelocity(WallRunUpwardVelocity);
_playerState.SendEvent("wall_run");
return;
}
// Update horizontal velocity // Update horizontal velocity
var horizontalVelocity = ComputeHVelocityAir(delta); var horizontalVelocity = ComputeHVelocityAir(delta);
Velocity = new Vector3(horizontalVelocity.X, Velocity.Y, horizontalVelocity.Z); Velocity = new Vector3(horizontalVelocity.X, Velocity.Y, horizontalVelocity.Z);
@@ -1667,10 +1691,12 @@ public partial class PlayerController : CharacterBody3D,
/////////////////////////// ///////////////////////////
public void OnInputAimPressed() public void OnInputAimPressed()
{ {
if (!HasSword) return;
_playerState.SendEvent("aim_pressed"); _playerState.SendEvent("aim_pressed");
} }
public void OnInputAimDown() public void OnInputAimDown()
{ {
if (!HasSword) return;
_playerState.SendEvent("aim_down"); _playerState.SendEvent("aim_down");
} }
public void OnInputAimReleased() public void OnInputAimReleased()
@@ -1722,6 +1748,8 @@ public partial class PlayerController : CharacterBody3D,
/////////////////////////// ///////////////////////////
public void OnInputParryPressed() public void OnInputParryPressed()
{ {
if (!HasParry) return;
var attackToDo = _isEnemyInDashAttackRange ? "dash_parry" : "standard_parry"; var attackToDo = _isEnemyInDashAttackRange ? "dash_parry" : "standard_parry";
_playerState.SendEvent(attackToDo); _playerState.SendEvent(attackToDo);
} }
@@ -2115,6 +2143,8 @@ public partial class PlayerController : CharacterBody3D,
public void OnInputHitPressed() public void OnInputHitPressed()
{ {
if (!HasSword) return;
if (_onWallHanging.Active) return; if (_onWallHanging.Active) return;
if (_aiming.Active && WeaponSystem.InHandState.Active) if (_aiming.Active && WeaponSystem.InHandState.Active)

1
stairs.gd Normal file
View File

@@ -0,0 +1 @@
extends "res://tools/generate_collisions.gd"

1
stairs.gd.uid Normal file
View File

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