Compare commits

..

16 Commits

Author SHA1 Message Date
6d967bf2bf extended enemy dashthrough improvement to aimed dash behaviour
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 7m24s
Create tag and build when new code gets to main / Export (push) Successful in 9m32s
2026-02-06 12:10:21 +01:00
e87a228dd2 fixed dashing through terrain so easily when targeting enemy 2026-02-06 11:52:29 +01:00
e8ff01e097 fixed toolbox menu issue 2026-02-06 11:02:38 +01:00
66a71067cc fixed a few issues and also tuto triggers
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 21s
Create tag and build when new code gets to main / Test (push) Successful in 7m20s
Create tag and build when new code gets to main / Export (push) Successful in 9m42s
2026-02-05 17:26:20 +01:00
7a938b245e refresh level selection
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 18s
Create tag and build when new code gets to main / Test (push) Successful in 6m11s
Create tag and build when new code gets to main / Export (push) Successful in 7m35s
2026-02-05 17:06:32 +01:00
52ebc68a02 put the player back in its place
Some checks failed
Create tag and build when new code gets to main / BumpTag (push) Successful in 21s
Create tag and build when new code gets to main / Test (push) Has been cancelled
Create tag and build when new code gets to main / Export (push) Has been cancelled
2026-02-05 17:04:45 +01:00
2a604fb06a tutorial levels with enemies
Some checks failed
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 8m35s
Create tag and build when new code gets to main / Export (push) Has been cancelled
2026-02-05 16:52:53 +01:00
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
96 changed files with 3870 additions and 687 deletions

View File

@@ -97,8 +97,8 @@ func load_scene(scene_path : String, in_background : bool = false) -> void:
if not _background_loading:
change_scene_to_resource()
return
ResourceLoader.load_threaded_request(_scene_path)
set_process(true)
ResourceLoader.load_threaded_request(_scene_path)
if _check_loading_screen() and not _background_loading:
change_scene_to_loading_screen()
@@ -108,6 +108,7 @@ func _unhandled_key_input(event : InputEvent) -> void:
get_tree().quit()
func _ready() -> void:
process_mode = Node.PROCESS_MODE_ALWAYS
set_process(false)
func _process(_delta) -> void:

View File

@@ -3,6 +3,8 @@ extends Node
class_name SceneLister
## 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.
## Prefilled in the editor by selecting a directory.
@export var files : Array[String]
@@ -14,10 +16,20 @@ class_name SceneLister
func _refresh_files():
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:
files.clear()
for file in dir_access.get_files():
print(current_dir + "/" + file)
if not file.ends_with(".tscn"):
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"]
[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]
albedo_texture = ExtResource("1_qik1o")
albedo_texture = ExtResource("1_2depu")
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://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"
type="CompressedTexture2D"
uid="uid://hf6y7ws45y8p"
path.s3tc="res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.s3tc.ctex"
path.etc2="res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.etc2.ctex"
path.s3tc="res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.s3tc.ctex"
path.etc2="res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.etc2.ctex"
metadata={
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
@@ -12,8 +12,8 @@ metadata={
[deps]
source_file="res://assets/materials/greybox/greybox.png"
dest_files=["res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.s3tc.ctex", "res://.godot/imported/greybox.png-937233f49e1f36f6cd6d2be789b53a69.etc2.ctex"]
source_file="res://assets/materials/greybox/textures/greybox.png"
dest_files=["res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.s3tc.ctex", "res://.godot/imported/greybox.png-5957632d75bca9a282c8e897ede15d43.etc2.ctex"]
[params]

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -3,15 +3,15 @@
importer="texture"
type="CompressedTexture2D"
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={
"vram_texture": false
}
[deps]
source_file="res://assets/materials/greybox/greybox_grey_solid_2.png"
dest_files=["res://.godot/imported/greybox_grey_solid_2.png-cb58867f33b2c5be382df42dae27b331.ctex"]
source_file="res://assets/materials/greybox/textures/greybox_grey_solid_2.png"
dest_files=["res://.godot/imported/greybox_grey_solid_2.png-263a7686c8192a3a768580bfd90c297c.ctex"]
[params]

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,6 +1,6 @@
[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"]
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

View File

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

View File

@@ -3,19 +3,21 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://dl73t0kxkaxp0"
path="res://.godot/imported/xbox_button_a_outline.svg-e0a03a1d1c96455de9e4ad067974d23b.ctex"
path.s3tc="res://.godot/imported/xbox_button_a_outline.svg-e0a03a1d1c96455de9e4ad067974d23b.s3tc.ctex"
path.etc2="res://.godot/imported/xbox_button_a_outline.svg-e0a03a1d1c96455de9e4ad067974d23b.etc2.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://assets/ui/input-prompts/Xbox Series/Vector/xbox_button_a_outline.svg"
dest_files=["res://.godot/imported/xbox_button_a_outline.svg-e0a03a1d1c96455de9e4ad067974d23b.ctex"]
dest_files=["res://.godot/imported/xbox_button_a_outline.svg-e0a03a1d1c96455de9e4ad067974d23b.s3tc.ctex", "res://.godot/imported/xbox_button_a_outline.svg-e0a03a1d1c96455de9e4ad067974d23b.etc2.ctex"]
[params]
compress/mode=0
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -37,7 +39,7 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
detect_3d/compress_to=0
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -3,19 +3,21 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cjh5cnvdbq5ku"
path="res://.godot/imported/xbox_button_b_outline.svg-3f51fcd4202da59d6f8184f7aaff1e2b.ctex"
path.s3tc="res://.godot/imported/xbox_button_b_outline.svg-3f51fcd4202da59d6f8184f7aaff1e2b.s3tc.ctex"
path.etc2="res://.godot/imported/xbox_button_b_outline.svg-3f51fcd4202da59d6f8184f7aaff1e2b.etc2.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://assets/ui/input-prompts/Xbox Series/Vector/xbox_button_b_outline.svg"
dest_files=["res://.godot/imported/xbox_button_b_outline.svg-3f51fcd4202da59d6f8184f7aaff1e2b.ctex"]
dest_files=["res://.godot/imported/xbox_button_b_outline.svg-3f51fcd4202da59d6f8184f7aaff1e2b.s3tc.ctex", "res://.godot/imported/xbox_button_b_outline.svg-3f51fcd4202da59d6f8184f7aaff1e2b.etc2.ctex"]
[params]
compress/mode=0
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -37,7 +39,7 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
detect_3d/compress_to=0
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -3,19 +3,21 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bfkj4neu0m0rm"
path="res://.godot/imported/xbox_rt_outline.svg-ccfca5331455b64f1729ac9257bae6c9.ctex"
path.s3tc="res://.godot/imported/xbox_rt_outline.svg-ccfca5331455b64f1729ac9257bae6c9.s3tc.ctex"
path.etc2="res://.godot/imported/xbox_rt_outline.svg-ccfca5331455b64f1729ac9257bae6c9.etc2.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc", "etc2_astc"],
"vram_texture": true
}
[deps]
source_file="res://assets/ui/input-prompts/Xbox Series/Vector/xbox_rt_outline.svg"
dest_files=["res://.godot/imported/xbox_rt_outline.svg-ccfca5331455b64f1729ac9257bae6c9.ctex"]
dest_files=["res://.godot/imported/xbox_rt_outline.svg-ccfca5331455b64f1729ac9257bae6c9.s3tc.ctex", "res://.godot/imported/xbox_rt_outline.svg-ccfca5331455b64f1729ac9257bae6c9.etc2.ctex"]
[params]
compress/mode=0
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
@@ -23,7 +25,7 @@ compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -37,7 +39,7 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
detect_3d/compress_to=0
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

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="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="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="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"]
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_feb1n"]
panorama = ExtResource("16_86mdr")
[sub_resource type="FastNoiseLite" id="FastNoiseLite_gm8ij"]
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"]
sky_material = SubResource("PanoramaSkyMaterial_feb1n")
sky_material = SubResource("ShaderMaterial_5g5a0")
[sub_resource type="Environment" id="Environment_1bvp3"]
background_mode = 2
@@ -26,9 +64,8 @@ ssao_enabled = true
ssil_enabled = true
sdfgi_enabled = true
sdfgi_use_occlusion = true
glow_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_density = 0.002
fog_sky_affect = 0.184
@@ -39,6 +76,11 @@ adjustment_enabled = true
[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")]
stream = ExtResource("3_boadi")
@@ -55,8 +97,7 @@ pause = ExtResource("6_vy804")
environment = SubResource("Environment_1bvp3")
[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)
light_color = Color(0.99999934, 0.76777613, 0.6549227, 1)
transform = Transform3D(-0.78043455, 0.15240024, 0.6063795, 0.41363776, -0.6014168, 0.6835213, 0.46885556, 0.7842652, 0.4063281, 0, 0, 0)
light_energy = 2.0
light_volumetric_fog_energy = 2.0
shadow_enabled = true
@@ -72,6 +113,4 @@ AccelerationAir = 1.5
visible = false
Radius = 2.0
[node name="DebugLayer" type="CanvasLayer" parent="." unique_id=294370189]
[connection signal="PlayerDied" from="Player" to="GeneralManager" method="on_player_died"]

View File

@@ -0,0 +1,544 @@
[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, 12.25, -30)
use_collision = true
size = Vector3(1, 9.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="CSGBox3D193" type="CSGBox3D" parent="." unique_id=39987925]
transform = Transform3D(0.9659258, 0.25881904, 0, -0.25881904, 0.9659258, 0, 0, 0, 1, 29.417656, -0.020204067, -27.5)
use_collision = true
size = Vector3(22, 5.5, 4)
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, 3.75, -26)
use_collision = true
size = Vector3(1, 7.5, 9)
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,105 @@
[gd_scene format=3 uid="uid://ndnor8g7kq07"]
[ext_resource type="PackedScene" uid="uid://55wehh6xombr" path="res://maps/_templates/main_scene_template.tscn" id="1_k7f42"]
[ext_resource type="PackedScene" uid="uid://y77cdg7gg3y7" path="res://maps/levels/_arenas/playtest_1.tscn" id="2_kutfq"]
[ext_resource type="Material" uid="uid://31aulub2nqov" path="res://assets/materials/greybox/m_greybox.tres" id="3_1qo78"]
[ext_resource type="PackedScene" uid="uid://c305mfrtumcyq" path="res://scenes/spawners/spawner.tscn" id="4_jaqjx"]
[ext_resource type="PackedScene" uid="uid://dxt0e2ugmttqq" path="res://scenes/enemies/grounded_enemy/grounded_enemy.tscn" id="5_iq67o"]
[ext_resource type="Resource" uid="uid://bqq6uukbdfysr" path="res://scenes/enemies/grounded_enemy/grounded_enemy_movement.tres" id="6_l44fp"]
[ext_resource type="Resource" uid="uid://bohbojc68j7y1" path="res://scenes/enemies/grounded_enemy/grounded_enemy_health.tres" id="7_ucbss"]
[ext_resource type="Resource" uid="uid://otfc2snh8umc" path="res://scenes/enemies/grounded_enemy/grounded_enemy_damage.tres" id="8_2brdd"]
[ext_resource type="PackedScene" uid="uid://cmlud1hwkd6sv" path="res://scenes/enemies/flying_enemy/flying_enemy.tscn" id="9_4vdsh"]
[ext_resource type="Resource" uid="uid://bwqjaom4k7rc3" path="res://scenes/enemies/flying_enemy/flying_enemy_movement.tres" id="10_levmk"]
[ext_resource type="Resource" uid="uid://dg1xbjhyhgnnk" path="res://scenes/enemies/flying_enemy/flying_enemy_health.tres" id="11_5jlg7"]
[ext_resource type="Resource" uid="uid://dgo65k2ceqfvy" path="res://scenes/enemies/flying_enemy/flying_enemy_damage.tres" id="12_pjgox"]
[ext_resource type="PackedScene" uid="uid://qup00a7x2sji" path="res://scenes/fixed_dash_target/fixed_dashthrough_target.tscn" id="13_iq67o"]
[node name="Main" unique_id=955321579 instance=ExtResource("1_k7f42")]
[node name="PlaytestArena" parent="." index="6" unique_id=664535670 instance=ExtResource("2_kutfq")]
[node name="CSGBox3D108" type="CSGBox3D" parent="PlaytestArena" index="89" unique_id=1366898901]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 8.75, 2.25)
use_collision = true
size = Vector3(1, 17.5, 9.5)
material = ExtResource("3_1qo78")
[node name="Player" parent="." index="7" unique_id=1309399929]
transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 3, 0, 0)
[node name="GroundedSpawner" parent="." index="8" unique_id=580981173 node_paths=PackedStringArray("Target") instance=ExtResource("4_jaqjx")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.5, 1, -42.5)
EnemyToSpawn = ExtResource("5_iq67o")
MovementInputs = ExtResource("6_l44fp")
HealthInputs = ExtResource("7_ucbss")
DamageInputs = ExtResource("8_2brdd")
Target = NodePath("../Player")
SpawnInterval = 5.0
[node name="GroundedSpawner2" parent="." index="9" unique_id=1026317919 node_paths=PackedStringArray("Target") instance=ExtResource("4_jaqjx")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 46.5, 11.5, -34.5)
EnemyToSpawn = ExtResource("5_iq67o")
MovementInputs = ExtResource("6_l44fp")
HealthInputs = ExtResource("7_ucbss")
DamageInputs = ExtResource("8_2brdd")
Target = NodePath("../Player")
SpawnInterval = 5.0
[node name="GroundedSpawner3" parent="." index="10" unique_id=241829575 node_paths=PackedStringArray("Target") instance=ExtResource("4_jaqjx")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 44.5, 0, -3)
EnemyToSpawn = ExtResource("5_iq67o")
MovementInputs = ExtResource("6_l44fp")
HealthInputs = ExtResource("7_ucbss")
DamageInputs = ExtResource("8_2brdd")
Target = NodePath("../Player")
SpawnInterval = 5.0
[node name="FlyingSpawner" parent="." index="11" unique_id=962840208 node_paths=PackedStringArray("Target") instance=ExtResource("4_jaqjx")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.5, 19, -19.5)
EnemyToSpawn = ExtResource("9_4vdsh")
MovementInputs = ExtResource("10_levmk")
HealthInputs = ExtResource("11_5jlg7")
DamageInputs = ExtResource("12_pjgox")
Target = NodePath("../Player")
SpawnInterval = 5.0
[node name="FlyingSpawner2" parent="." index="12" unique_id=365997644 node_paths=PackedStringArray("Target") instance=ExtResource("4_jaqjx")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 45.5, 25.5, -42.5)
EnemyToSpawn = ExtResource("9_4vdsh")
MovementInputs = ExtResource("10_levmk")
HealthInputs = ExtResource("11_5jlg7")
DamageInputs = ExtResource("12_pjgox")
Target = NodePath("../Player")
SpawnInterval = 5.0
[node name="Targets" type="Node3D" parent="." index="13" unique_id=1620747784]
[node name="FixedDashthroughTarget" parent="Targets" index="0" unique_id=1291663508 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 17, 13.5, -9)
[node name="FixedDashthroughTarget8" parent="Targets" index="1" unique_id=854008187 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 17, 23, -34)
[node name="FixedDashthroughTarget9" parent="Targets" index="2" unique_id=529476368 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 35.5, 30.5, -42.5)
[node name="FixedDashthroughTarget10" parent="Targets" index="3" unique_id=401660770 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 26, 30.5, -42.5)
[node name="FixedDashthroughTarget7" parent="Targets" index="4" unique_id=644136386 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 10.5, 3.5, -9)
[node name="FixedDashthroughTarget6" parent="Targets" index="5" unique_id=1685514688 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 8, 6, -30.5)
[node name="FixedDashthroughTarget4" parent="Targets" index="6" unique_id=2114541126 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 30.5, 5, -33.5)
[node name="FixedDashthroughTarget5" parent="Targets" index="7" unique_id=1443410340 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 26.5, 9.5, -44)
[node name="FixedDashthroughTarget2" parent="Targets" index="8" unique_id=1611967884 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 27, 13.5, -9)
[node name="FixedDashthroughTarget3" parent="Targets" index="9" unique_id=1106453232 instance=ExtResource("13_iq67o")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 43, 6, -8.5)

View File

@@ -0,0 +1,967 @@
[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"]
[ext_resource type="PackedScene" uid="uid://b8aet6m4m2i83" path="res://scenes/tuto_trigger/TutoTrigger.tscn" id="7_r26ni"]
[ext_resource type="Texture2D" uid="uid://dl73t0kxkaxp0" path="res://assets/ui/input-prompts/Xbox Series/Vector/xbox_button_a_outline.svg" id="8_6c6r2"]
[ext_resource type="Texture2D" uid="uid://bfkj4neu0m0rm" path="res://assets/ui/input-prompts/Xbox Series/Vector/xbox_rt_outline.svg" id="9_v7818"]
[ext_resource type="Texture2D" uid="uid://cjh5cnvdbq5ku" path="res://assets/ui/input-prompts/Xbox Series/Vector/xbox_button_b_outline.svg" id="10_hocby"]
[sub_resource type="BoxShape3D" id="BoxShape3D_6c6r2"]
size = Vector3(6.5, 9, 7.5)
[sub_resource type="BoxShape3D" id="BoxShape3D_v7818"]
size = Vector3(10.5, 12.5, 7.5)
[sub_resource type="BoxShape3D" id="BoxShape3D_hocby"]
size = Vector3(3, 12.5, 7.5)
[sub_resource type="BoxShape3D" id="BoxShape3D_ovxxa"]
size = Vector3(3, 12.5, 6)
[sub_resource type="BoxShape3D" id="BoxShape3D_5ibpd"]
size = Vector3(3.5, 7, 10.5)
[sub_resource type="BoxShape3D" id="BoxShape3D_6rkcg"]
size = Vector3(5.5, 6.5, 3)
[sub_resource type="BoxShape3D" id="BoxShape3D_p8dgc"]
size = Vector3(3, 6.5, 5.5)
[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, -0.5, 0.4102497, 0.5415039)
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
[node name="Tutorials" type="Node3D" parent="." index="10" unique_id=955125222]
[node name="TutoTrigger" parent="Tutorials" index="0" unique_id=840713937 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.5, 1, -20)
first_input_texture = ExtResource("8_6c6r2")
tuto_text = "Mantle"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger" index="1" unique_id=518998736]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 3.5, -1.75)
shape = SubResource("BoxShape3D_6c6r2")
[node name="TutoTrigger2" parent="Tutorials" index="1" unique_id=878603028 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 2.5, -37.5)
first_input_texture = ExtResource("8_6c6r2")
tuto_text = "Jump"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger2" index="1" unique_id=1454863883]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.75, 3.25, -1.75)
shape = SubResource("BoxShape3D_v7818")
[node name="TutoTrigger3" parent="Tutorials" index="2" unique_id=1537320837 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 2.5, -37.5)
first_input_texture = ExtResource("8_6c6r2")
second_input_texture = ExtResource("8_6c6r2")
tuto_text = "Double jump"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger3" index="1" unique_id=216496744]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.25, -1.75)
shape = SubResource("BoxShape3D_hocby")
[node name="TutoTrigger4" parent="Tutorials" index="3" unique_id=903897281 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 7.5, -30.5)
first_input_texture = ExtResource("8_6c6r2")
complex_input_text = "against wall"
tuto_text = "Wall jump"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger4" index="1" unique_id=1224334781]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.25, -1)
shape = SubResource("BoxShape3D_ovxxa")
[node name="TutoTrigger5" parent="Tutorials" index="4" unique_id=1703929757 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 13.5, 18.5, -30.5)
first_input_texture = ExtResource("9_v7818")
complex_input_text = "with speed"
tuto_text = "Slide"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger5" index="1" unique_id=614350904]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.75, 0.5, 12.25)
shape = SubResource("BoxShape3D_5ibpd")
[node name="TutoTrigger6" parent="Tutorials" index="5" unique_id=1739438130 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 19, 19)
first_input_texture = ExtResource("8_6c6r2")
complex_input_text = "while mantling"
tuto_text = "Improved jump"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger6" index="1" unique_id=821335302]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25, 0.25, -1.5)
shape = SubResource("BoxShape3D_6rkcg")
[node name="TutoTrigger7" parent="Tutorials" index="6" unique_id=1993844947 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, 21, 24)
first_input_texture = ExtResource("8_6c6r2")
complex_input_text = "double tap"
tuto_text = "Try to wall run"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger7" index="1" unique_id=1194306224]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25, 0.25, -1.5)
shape = SubResource("BoxShape3D_6rkcg")
[node name="TutoTrigger8" parent="Tutorials" index="7" unique_id=540710346 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 25, 10)
first_input_texture = ExtResource("10_hocby")
tuto_text = "dash"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger8" index="1" unique_id=1793181148]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.25, -3.75)
shape = SubResource("BoxShape3D_p8dgc")
[node name="TutoTrigger9" parent="Tutorials" index="8" unique_id=2062889854 instance=ExtResource("7_r26ni")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37, 25, -6)
first_input_texture = ExtResource("10_hocby")
tuto_text = "dash"
[node name="CollisionShape3D" type="CollisionShape3D" parent="Tutorials/TutoTrigger9" index="1" unique_id=192598019]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.25, -3.75)
shape = SubResource("BoxShape3D_p8dgc")

View File

@@ -0,0 +1,279 @@
[gd_scene format=3 uid="uid://e81wsmpen58r"]
[ext_resource type="PackedScene" uid="uid://55wehh6xombr" path="res://maps/_templates/main_scene_template.tscn" id="1_8n6bu"]
[ext_resource type="PackedScene" uid="uid://y77cdg7gg3y7" path="res://maps/levels/_arenas/playtest_1.tscn" id="2_wsc2c"]
[ext_resource type="Material" uid="uid://31aulub2nqov" path="res://assets/materials/greybox/m_greybox.tres" id="3_wsc2c"]
[ext_resource type="PackedScene" uid="uid://qup00a7x2sji" path="res://scenes/fixed_dash_target/fixed_dashthrough_target.tscn" id="4_invhv"]
[ext_resource type="PackedScene" uid="uid://dxt0e2ugmttqq" path="res://scenes/enemies/grounded_enemy/grounded_enemy.tscn" id="5_ofbe2"]
[ext_resource type="Script" uid="uid://dtpxijlnb2c5" path="res://scenes/components/movement/RMovement.cs" id="6_cgfmf"]
[ext_resource type="Script" uid="uid://baiapod3csndf" path="res://scenes/components/health/RHealth.cs" id="7_hr4qv"]
[ext_resource type="PackedScene" uid="uid://cmlud1hwkd6sv" path="res://scenes/enemies/flying_enemy/flying_enemy.tscn" id="8_dkfm7"]
[sub_resource type="Resource" id="Resource_nwk5u"]
script = ExtResource("6_cgfmf")
GravityModifier = 5.0
metadata/_custom_type_script = "uid://dtpxijlnb2c5"
[sub_resource type="Resource" id="Resource_xy0m1"]
script = ExtResource("7_hr4qv")
StartingHealth = 100.0
metadata/_custom_type_script = "uid://baiapod3csndf"
[node name="Main" unique_id=955321579 instance=ExtResource("1_8n6bu")]
[node name="Player" parent="." index="6" unique_id=1309399929]
transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 3, 0, -1.5)
[node name="PlaytestArena" parent="." index="7" unique_id=664535670 instance=ExtResource("2_wsc2c")]
[node name="CSGBox3D108" type="CSGBox3D" parent="PlaytestArena" index="88" unique_id=47922109]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 8.75, 2.25)
use_collision = true
size = Vector3(1, 17.5, 9.5)
material = ExtResource("3_wsc2c")
[node name="Targets" type="Node3D" parent="." index="8" unique_id=1727473773]
[node name="FixedDashthroughTarget" parent="Targets" index="0" unique_id=1291663508 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 17, 13.5, -9)
[node name="FixedDashthroughTarget8" parent="Targets" index="1" unique_id=475406577 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 17, 23, -34)
[node name="FixedDashthroughTarget9" parent="Targets" index="2" unique_id=168635463 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 35.5, 30.5, -42.5)
[node name="FixedDashthroughTarget10" parent="Targets" index="3" unique_id=119396227 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 26, 30.5, -42.5)
[node name="FixedDashthroughTarget7" parent="Targets" index="4" unique_id=282429016 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 10.5, 5.5, -9)
[node name="FixedDashthroughTarget6" parent="Targets" index="5" unique_id=437890277 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 8, 6, -30.5)
[node name="FixedDashthroughTarget4" parent="Targets" index="6" unique_id=1484691271 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 30.5, 5, -33.5)
[node name="FixedDashthroughTarget5" parent="Targets" index="7" unique_id=434257222 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 26.5, 9.5, -44)
[node name="FixedDashthroughTarget2" parent="Targets" index="8" unique_id=272400108 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 27, 13.5, -9)
[node name="FixedDashthroughTarget3" parent="Targets" index="9" unique_id=1008201593 instance=ExtResource("4_invhv")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 43, 6, -8.5)
[node name="FlyingEnemies" type="Node3D" parent="." index="9" unique_id=1518759273]
[node name="FlyingEnemy" parent="FlyingEnemies" index="0" unique_id=2090203407 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15.5, 7, -9)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy10" parent="FlyingEnemies" index="1" unique_id=1610354388 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 32.5, 7, 0.5)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy11" parent="FlyingEnemies" index="2" unique_id=1671862122 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 28, 7, 1.5)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy4" parent="FlyingEnemies" index="3" unique_id=665537400 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33, 6, -12)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy5" parent="FlyingEnemies" index="4" unique_id=1592183094 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 45, 6, -12)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy9" parent="FlyingEnemies" index="5" unique_id=842890582 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 45, 6, -1.5)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy2" parent="FlyingEnemies" index="6" unique_id=188061312 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10.5, 11, -24)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy12" parent="FlyingEnemies" index="7" unique_id=821624940 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.5, 8.5, -24)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy3" parent="FlyingEnemies" index="8" unique_id=412581083 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7, 14, -32.5)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy6" parent="FlyingEnemies" index="9" unique_id=779578466 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 26, 23.5, -23)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy7" parent="FlyingEnemies" index="10" unique_id=1163439326 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34, 23.5, -23)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="FlyingEnemy8" parent="FlyingEnemies" index="11" unique_id=1979706254 node_paths=PackedStringArray("Target") instance=ExtResource("8_dkfm7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 43, 23.5, -23)
Target = NodePath("../../Player")
RMovement = SubResource("Resource_nwk5u")
[node name="GroundedEnemies" type="Node3D" parent="." index="10" unique_id=1101330520]
[node name="Enemy3" parent="GroundedEnemies" index="0" unique_id=1159989424 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 25, 0, -8.336809)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy11" parent="GroundedEnemies" index="1" unique_id=1747444936 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 17, 8, 3.6631908)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy12" parent="GroundedEnemies" index="2" unique_id=283117081 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 36.5, 11, -4.836809)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy13" parent="GroundedEnemies" index="3" unique_id=970022638 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 36.5, 12, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy18" parent="GroundedEnemies" index="4" unique_id=2077088475 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 30.5, 12, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy19" parent="GroundedEnemies" index="5" unique_id=2023773341 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 36.5, 7.5, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy25" parent="GroundedEnemies" index="6" unique_id=1101329723 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 46, 7.5, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy26" parent="GroundedEnemies" index="7" unique_id=855220553 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 46, 12, -35.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy20" parent="GroundedEnemies" index="8" unique_id=1255215986 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 30.5, 7.5, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy21" parent="GroundedEnemies" index="9" unique_id=2098915426 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 36.5, 0.5, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy22" parent="GroundedEnemies" index="10" unique_id=246912749 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 30.5, 0.5, -19.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy14" parent="GroundedEnemies" index="11" unique_id=211015190 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 41, 17.5, -33.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy15" parent="GroundedEnemies" index="12" unique_id=1164179421 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 31, 17.5, -33.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy16" parent="GroundedEnemies" index="13" unique_id=1169725422 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 24.5, 17.5, -33.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy17" parent="GroundedEnemies" index="14" unique_id=1951666189 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 17.5, 17.5, -22.836807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy23" parent="GroundedEnemies" index="15" unique_id=1348057502 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 17.5, 24.5, -43.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy24" parent="GroundedEnemies" index="16" unique_id=2068813971 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 45, 24.5, -43.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy4" parent="GroundedEnemies" index="17" unique_id=366059658 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 10.5, 0, -18.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy27" parent="GroundedEnemies" index="18" unique_id=883912991 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 13.5, 0, 1.1631908)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy7" parent="GroundedEnemies" index="19" unique_id=1389063523 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 25.5, 4, -27.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy10" parent="GroundedEnemies" index="20" unique_id=836898496 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 30.5, 11, -33.336807)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy8" parent="GroundedEnemies" index="21" unique_id=1015624071 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 34.5, 1.5, -27.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy9" parent="GroundedEnemies" index="22" unique_id=827865590 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 46.5, 0, -27.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy5" parent="GroundedEnemies" index="23" unique_id=1267116862 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 4, 0, -18.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")
[node name="Enemy6" parent="GroundedEnemies" index="24" unique_id=1147823180 node_paths=PackedStringArray("Target") instance=ExtResource("5_ofbe2")]
transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 16.5, 7, -17.33681)
Target = NodePath("../../Player")
RHealth = SubResource("Resource_xy0m1")
RMovement = SubResource("Resource_nwk5u")

View File

@@ -37,6 +37,12 @@ autoplay = false
[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)
[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]
use_collision = true
collision_layer = 256

View File

@@ -26,9 +26,13 @@ func add_levels_to_container() -> void:
file_name = file_name.trim_suffix(".tscn") # Remove the ".tscn" extension
file_name = file_name.replace("_", " ") # Replace underscores with spaces
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)
level_buttons_container.add_item(button_name)
func _on_level_buttons_container_item_activated(index: int) -> void:
var level_to_load = scene_lister.files.get(index)
level_selected.emit()
SceneLoader.load_scene(level_to_load)

View File

@@ -43,7 +43,7 @@ item_0/text = "1 - ExampleLevel"
[node name="SceneLister" type="Node" parent="." unique_id=149935027]
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/levels/tuto_enemies.tscn", "res://maps/levels/tuto_movement.tscn", "res://maps/levels/tuto_sword_parry.tscn", "res://maps/zoos/grounded_flying_ennemies.tscn"])
directory = "res://maps"
[connection signal="item_activated" from="Control/LevelButtonsContainer" to="." method="_on_level_buttons_container_item_activated"]

View File

@@ -354,7 +354,7 @@ graph_offset = Vector2(-180.277, 49)
[node name="MainMenu" unique_id=766584506 instance=ExtResource("1_my8ii")]
script = ExtResource("2_nyjay")
level_select_packed_scene = ExtResource("3_8i6b8")
game_scene_path = "uid://bx3cd2hoaok3k"
game_scene_path = "uid://bd0d7gvinx35c"
menu_context = ExtResource("3_ytpwg")
back_action = ExtResource("4_8i6b8")
@@ -397,6 +397,7 @@ text = "Start"
[node name="ContinueGameButton" type="Button" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer/MenuButtonsBoxContainer" index="1" unique_id=861746608]
unique_name_in_owner = true
visible = false
layout_mode = 2
text = "Continue"

View File

@@ -7,9 +7,13 @@ extends OverlaidMenu
@export var level_selection_menu: PackedScene = preload("uid://fybssggvts5q")
@onready var player_invicible_toggle: CheckButton = %PlayerInvicibleToggle
@onready var player_health_spin_box: SpinBox = %PlayerHealthSpinBox
@onready var player_damage_spin_box: SpinBox = %PlayerDamageSpinBox
func _ready() -> void:
player_invicible_toggle.button_pressed = player.IsInvincibleOverride
player_health_spin_box.value = player.RHealth.StartingHealth
player_damage_spin_box.value = player.RDamage.DamageDealt
func _on_kill_player_button_pressed() -> void:
@@ -18,13 +22,24 @@ func _on_kill_player_button_pressed() -> void:
func _on_player_invicible_toggled(toggled_on: bool) -> void:
player.IsInvincibleOverride = toggled_on
print(player.IsInvincible)
func _on_restart_current_level_pressed() -> void:
SceneLoader.reload_current_scene()
close()
func _on_select_level_pressed() -> void:
var menu: LevelSelectMenu = level_selection_menu.instantiate()
menu.level_selected.connect(_on_level_selected)
add_child(menu)
func _on_level_selected() -> void:
close()
func _on_player_health_changed(value: float) -> void:
player.SetPlayerHealthOverride(value)
func _on_player_damage_changed(value: float) -> void:
player.SetPlayerDamageOverride(value)

View File

@@ -13,6 +13,7 @@ anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_licsr")
pauses_game = true
[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1581374847]
layout_mode = 1
@@ -81,6 +82,48 @@ script = ExtResource("2_6ax4q")
layout_mode = 2
text = "Kill in 1s"
[node name="PlayerStatsContainer" type="VBoxContainer" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection" unique_id=201095522]
layout_mode = 2
size_flags_horizontal = 4
theme_override_constants/separation = 8
[node name="PlayerHealth" type="HBoxContainer" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer" unique_id=823599662]
layout_mode = 2
size_flags_horizontal = 4
theme_override_constants/separation = 8
[node name="Label" type="Label" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer/PlayerHealth" unique_id=159028563]
custom_minimum_size = Vector2(200, 0)
layout_mode = 2
text = "Player base health"
[node name="PlayerHealthSpinBox" type="SpinBox" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer/PlayerHealth" unique_id=211258886]
unique_name_in_owner = true
layout_mode = 2
min_value = 1.0
max_value = 1000.0
value = 1.0
rounded = true
allow_greater = true
[node name="PlayerDamage" type="HBoxContainer" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer" unique_id=560862269]
layout_mode = 2
size_flags_horizontal = 4
[node name="Label" type="Label" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer/PlayerDamage" unique_id=16098677]
custom_minimum_size = Vector2(200, 0)
layout_mode = 2
text = "Player damage"
[node name="PlayerDamageSpinBox" type="SpinBox" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer/PlayerDamage" unique_id=223936754]
unique_name_in_owner = true
layout_mode = 2
min_value = 1.0
max_value = 1000.0
value = 1.0
rounded = true
allow_greater = true
[node name="LevelSelectionMargin" type="MarginContainer" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer" unique_id=517648431]
layout_mode = 2
theme_override_constants/margin_top = 16
@@ -109,10 +152,12 @@ text = "Restart current
[node name="SelectLevel" type="Button" parent="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/LevelSelectionMargin/LevelSelectionSection/LevelSelectionContainer" unique_id=2015444126]
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="pressed" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerUtilsContainer/KillPlayerButton" to="." method="_on_kill_player_button_pressed"]
[connection signal="value_changed" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer/PlayerHealth/PlayerHealthSpinBox" to="." method="_on_player_health_changed"]
[connection signal="value_changed" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/PlayerSectionMargin/PlayerSection/PlayerStatsContainer/PlayerDamage/PlayerDamageSpinBox" to="." method="_on_player_damage_changed"]
[connection signal="pressed" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/LevelSelectionMargin/LevelSelectionSection/LevelSelectionContainer/RestartCurrentButton" to="." method="_on_restart_current_level_pressed"]
[connection signal="pressed" from="MarginContainer/MenuPanelContainer/MarginContainer/BoxContainer/LevelSelectionMargin/LevelSelectionSection/LevelSelectionContainer/SelectLevel" to="." method="_on_select_level_pressed"]

View File

@@ -4,5 +4,5 @@
[resource]
script = ExtResource("1_h6law")
DamageType = 3
DamageDealt = 1.0
metadata/_custom_type_script = "uid://jitubgv6judn"

View File

@@ -4,5 +4,5 @@
[resource]
script = ExtResource("1_jht15")
StartingHealth = 10.0
StartingHealth = 5.0
metadata/_custom_type_script = "uid://baiapod3csndf"

View File

@@ -4,5 +4,5 @@
[resource]
script = ExtResource("1_h6jgd")
StartingHealth = 10.0
StartingHealth = 20.0
metadata/_custom_type_script = "uid://baiapod3csndf"

View File

@@ -5,7 +5,7 @@
[sub_resource type="Resource" id="Resource_ffdh3"]
script = ExtResource("2_hys74")
DamageDealt = 5.0
DamageDealt = 10.0
DamageType = 3
metadata/_custom_type_script = "uid://jitubgv6judn"

View File

@@ -18,7 +18,7 @@ emission_enabled = true
emission = Color(0, 0.68968636, 0.7473501, 1)
[node name="FixedDashthroughTarget" type="AnimatableBody3D" unique_id=1291663508]
collision_layer = 288
collision_layer = 32
collision_mask = 0
script = ExtResource("1_r0j7a")

View File

@@ -50,11 +50,12 @@
[ext_resource type="Texture2D" uid="uid://bnwj7ltdfximr" path="res://icon.svg" id="30_h23go"]
[ext_resource type="Texture2D" uid="uid://chvt6g0xn5c2m" path="res://scenes/player_controller/components/dash/light-ring.jpg" id="32_lgpc8"]
[ext_resource type="Script" uid="uid://b4dwolbvt8our" path="res://addons/godot_state_charts/history_state.gd" id="41_ruloh"]
[ext_resource type="Texture2D" uid="uid://c40orhfdgsim" path="res://assets/ui/IconGodotNode/white/icon_circle.png" id="45_u8rdp"]
[ext_resource type="PackedScene" uid="uid://cyw8p0p6a78tl" path="res://scenes/ui/healthbar/healthbar.tscn" id="47_76kmc"]
[sub_resource type="Resource" id="Resource_cb2lu"]
script = ExtResource("2_x835q")
DamageDealt = 30.0
DamageDealt = 10.0
metadata/_custom_type_script = "uid://jitubgv6judn"
[sub_resource type="Resource" id="Resource_abfq8"]
@@ -105,9 +106,6 @@ radius = 1.5
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_2q0ik"]
blend_mode = 1
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_ue7xq"]
load_path = "res://.godot/imported/fireball.svg-da8480a7a8e47ac511e0971f6fa164bd.ctex"
[node name="Player" type="CharacterBody3D" unique_id=709076448]
collision_mask = 272
script = ExtResource("1_poq2x")
@@ -507,7 +505,7 @@ offset_right = 20.0
offset_bottom = 20.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("CompressedTexture2D_ue7xq")
texture = ExtResource("45_u8rdp")
expand_mode = 1
[node name="Healthbar" parent="UI" unique_id=1462180337 instance=ExtResource("47_76kmc")]
@@ -790,6 +788,12 @@ to = NodePath("../../Mantling")
event = &"mantle"
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]
script = ExtResource("27_34snm")
@@ -1089,6 +1093,12 @@ delay_in_seconds = "0.0"
[node name="Hugging" type="Node" parent="StateChart/Root/Movement/OnWall" unique_id=162057636]
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]
script = ExtResource("28_n7qhm")
to = NodePath("../../../Dashing/Dash")

View File

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

View File

@@ -43,12 +43,12 @@ animation = &"jump_start"
animation = &"mantle"
[resource]
graph_offset = Vector2(-363.5551, -25.864124)
graph_offset = Vector2(-123.69464, -78.97101)
nodes/output/position = Vector2(2020, -40)
nodes/AnimationNodeStateMachine/node = ExtResource("1_knaxl")
nodes/AnimationNodeStateMachine/position = Vector2(-560, 180)
nodes/Idle/node = SubResource("AnimationNodeAnimation_knaxl")
nodes/Idle/position = Vector2(-100, -20)
nodes/Idle/position = Vector2(-220, -40)
nodes/OnHit/node = SubResource("AnimationNodeOneShot_1hkum")
nodes/OnHit/position = Vector2(1240, -60)
nodes/hit1/node = SubResource("AnimationNodeAnimation_23rmc")

View File

@@ -76,6 +76,8 @@ public partial class PlayerController : CharacterBody3D,
// Inspector stuff
[Export] public Marker3D TutorialWeaponTarget;
[Export] public bool TutorialDone { get; set; }
[Export] public bool HasSword { get; set; } = true;
[Export] public bool HasParry { get; set; } = true;
// Combat stuff
[ExportCategory("Combat")]
@@ -279,6 +281,7 @@ public partial class PlayerController : CharacterBody3D,
private float _playerHeight;
private float _playerRadius;
private Vector3 _dashDirection = Vector3.Zero;
private Vector3 _postDashThroughPosition = Vector3.Zero;
private Vector3 _preDashVelocity = Vector3.Zero;
private int _empoweredActionsLeft;
public int EmpoweredActionsLeft
@@ -523,8 +526,10 @@ public partial class PlayerController : CharacterBody3D,
EmpoweredActionsLeft = MaxNumberOfEmpoweredActions;
if (!TutorialDone)
PlaceWeaponForTutorial();
// if (!TutorialDone)
// PlaceWeaponForTutorial();
HeadSystem.SetWeaponsVisible(HasSword, HasParry);
///////////////////////////
// Signal setup ///////////
@@ -663,6 +668,21 @@ public partial class PlayerController : CharacterBody3D,
WeaponSystem.CallDeferred(WeaponSystem.MethodName.PlaceWeaponForTutorial, TutorialWeaponTarget.GlobalPosition);
}
///////////////////////////
// Toolbox Utils //
///////////////////////////
public void SetPlayerHealthOverride(float newHealthValue)
{
RHealth.StartingHealth = newHealthValue;
CHealth.CurrentHealth = newHealthValue;
PlayerUi.Initialize(CHealth.CurrentHealth);
}
public void SetPlayerDamageOverride(float newDamageValue)
{
RDamage.DamageDealt = newDamageValue;
}
///////////////////////////
// Grounded management //
///////////////////////////
@@ -826,14 +846,7 @@ public partial class PlayerController : CharacterBody3D,
return;
// Should we start a wall run
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;
if (haveEnoughSpeed && isCoplanarEnough && !isGoingDownwards && isIndeedWall && !_coyoteEnabled.Active)
if (ShouldStartWallRun())
{
SetVerticalVelocity(WallRunUpwardVelocity);
_playerState.SendEvent("wall_run");
@@ -841,12 +854,26 @@ public partial class PlayerController : CharacterBody3D,
}
// If all else fail and we go down, we hug
var wallNormal = WallHugSystem.WallHugNormal.UnwrapOr(Vector3.Zero);
if (Velocity.Y < 0 && IsInputTowardsWall(wallNormal))
{
_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;
var shouldStart = haveEnoughSpeed && isCoplanarEnough && !isGoingDownwards && isIndeedWall;
return shouldStart;
}
public float ComputeVerticalSpeedGravity(float delta)
{
return Velocity.Y - CalculateGravityForce() * delta;
@@ -1080,7 +1107,8 @@ public partial class PlayerController : CharacterBody3D,
{
if (MantleSystem.IsMantlePossible && IsPlayerInputtingForward())
{
_bufferedAction = BufferedActions.MantleDash;
// _bufferedAction = BufferedActions.MantleDash;
_canDash = true; // Restore dash ability
_playerState.SendEvent("mantle");
}
}
@@ -1135,6 +1163,12 @@ public partial class PlayerController : CharacterBody3D,
_canDashAirborne = true;
WallHug(delta);
if (ShouldStartWallRun())
{
SetVerticalVelocity(WallRunUpwardVelocity);
_playerState.SendEvent("wall_run");
return;
}
if (isOnFloorCustom())
_playerState.SendEvent("grounded");
if (!WallHugSystem.IsWallHugging() || !IsInputTowardsWall(_wallHugStartNormal))
@@ -1268,6 +1302,13 @@ public partial class PlayerController : CharacterBody3D,
{
if (IsTryingToMantle()) _playerState.SendEvent("mantle");
// if (ShouldStartWallRun() && Velocity.Y < WallRunUpwardVelocity)
// {
// SetVerticalVelocity(WallRunUpwardVelocity);
// _playerState.SendEvent("wall_run");
// return;
// }
// Update horizontal velocity
var horizontalVelocity = ComputeHVelocityAir(delta);
Velocity = new Vector3(horizontalVelocity.X, Velocity.Y, horizontalVelocity.Z);
@@ -1667,10 +1708,12 @@ public partial class PlayerController : CharacterBody3D,
///////////////////////////
public void OnInputAimPressed()
{
if (!HasSword) return;
_playerState.SendEvent("aim_pressed");
}
public void OnInputAimDown()
{
if (!HasSword) return;
_playerState.SendEvent("aim_down");
}
public void OnInputAimReleased()
@@ -1722,6 +1765,8 @@ public partial class PlayerController : CharacterBody3D,
///////////////////////////
public void OnInputParryPressed()
{
if (!HasParry) return;
var attackToDo = _isEnemyInDashAttackRange ? "dash_parry" : "standard_parry";
_playerState.SendEvent(attackToDo);
}
@@ -1737,20 +1782,32 @@ public partial class PlayerController : CharacterBody3D,
// feet of the capsule
var correction = DashSystem.CollisionNormal == Vector3.Down ? _playerHeight : DashSystem.DashCastRadius;
var correctedLocation = DashSystem.PlannedLocation + Vector3.Down * correction;
var travel = correctedLocation - GlobalPosition;
_dashDirection = travel.Normalized();
var shouldRebound = false;
if (DashSystem.CanDashThroughTarget && DashSystem.CollidedObject is ITargetable targetable)
correctedLocation = ComputePositionAfterTargetedDash(targetable.GetTargetGlobalPosition(), DashSystem.CollisionPoint);
{
var plannedDashLocation = targetable.GetTargetGlobalPosition() + Vector3.Down*_playerHeight/2;
travel = plannedDashLocation - GlobalPosition;
_dashDirection = travel.Normalized();
var postDashLocation = plannedDashLocation + _dashDirection;
var wallBehindQuery = PhysicsRayQueryParameters3D.Create(GlobalPosition + Vector3.Up*HeadSystem.Position.Y, postDashLocation, GroundDetector.CollisionMask);
var wallBehindResult = _spaceState.IntersectRay(wallBehindQuery);
shouldRebound = wallBehindResult.Count > 0;
correctedLocation = shouldRebound ? plannedDashLocation : postDashLocation;
}
// Start invincibility timer for the duration of the dash and a bit more afterwards
OnHitInvincibility();
_preDashVelocity = Velocity;
_dashDirection = (correctedLocation - GlobalPosition).Normalized();
SetupDashDamageDetector(correctedLocation);
var dashTween = CreatePositionTween(correctedLocation, AimedDashTime);
// dashTween.TweenMethod(Callable.From<float>(AimedDashTweenOngoing), 0.0f, 1.0f, AimedDashTime);
dashTween.Finished += AimedDashTweenEnded;
if (shouldRebound) dashTween.Finished += ManualKnockback;
_customMantle = DashSystem.ShouldMantle;
_customMantleCurve = DashSystem.MantleSystem.MantleCurve;
@@ -2049,28 +2106,35 @@ public partial class PlayerController : CharacterBody3D,
}
private PhysicsDirectSpaceState3D _spaceState;
public void StartDashAction(bool isParry)
{
var streamName = isParry ? "parry" : "attacks";
_audioStream!.SwitchToClipByName(streamName);
IsInvincible = true;
var plannedDashLocation = _targetLocation + Vector3.Down*HeadSystem.Position.Y;
var query = PhysicsRayQueryParameters3D.Create(HeadSystem.GlobalPosition, plannedDashLocation, DashSystem.DashCast3D.CollisionMask);
var result = _spaceState.IntersectRay(query);
if (result.Count > 0)
{
plannedDashLocation = (Vector3) result["position"];
}
var plannedDashLocation = _targetLocation + Vector3.Down*_playerHeight/2;
// var enemySurfaceQuery = PhysicsRayQueryParameters3D.Create(HeadSystem.GlobalPosition, plannedDashLocation, DashSystem.DashCast3D.CollisionMask);
// var enemySurfaceResult = _spaceState.IntersectRay(enemySurfaceQuery);
// if (enemySurfaceResult.Count > 0)
// {
// plannedDashLocation = (Vector3) enemySurfaceResult["position"];
// }
var travel = plannedDashLocation - (GlobalPosition + Vector3.Up*_playerHeight/2);
_preDashVelocity = Velocity;
var travel = plannedDashLocation - GlobalPosition;
_dashDirection = travel.Normalized();
var postDashLocation = plannedDashLocation + _dashDirection;
var wallBehindQuery = PhysicsRayQueryParameters3D.Create(GlobalPosition + Vector3.Up*HeadSystem.Position.Y, postDashLocation, GroundDetector.CollisionMask);
var wallBehindResult = _spaceState.IntersectRay(wallBehindQuery);
var shouldRebound = wallBehindResult.Count > 0;
if (!shouldRebound) _postDashThroughPosition = postDashLocation;
var dashTween = CreatePositionTween(plannedDashLocation, AimedDashTime);
if (isParry) dashTween.Finished += OnDashParryEnded;
if (isParry || shouldRebound) dashTween.Finished += OnDashParryEnded;
else dashTween.Finished += OnDashAttackEnded;
}
public void OnDashAttackStarted()
{
StartDashAction(isParry: false);
@@ -2098,13 +2162,18 @@ public partial class PlayerController : CharacterBody3D,
public void OnDashAttackEnded()
{
StopDashAction();
GlobalPosition = ComputePositionAfterTargetedDash(_targetLocation, _targetHitLocation);
GlobalPosition = _postDashThroughPosition;
var postDashVelocity = _preDashVelocity.Length() > PostDashSpeed ? _preDashVelocity.Length() : PostDashSpeed;
Velocity = _dashDirection * postDashVelocity;
}
public void OnDashParryEnded()
{
StopDashAction();
ManualKnockback();
}
public void ManualKnockback()
{
Velocity = -_dashDirection*RKnockback.Modifier;
}
@@ -2115,6 +2184,8 @@ public partial class PlayerController : CharacterBody3D,
public void OnInputHitPressed()
{
if (!HasSword) return;
if (_onWallHanging.Active) return;
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