From f41c0ec025fb7f7a1872f9574b859fa376c727f9 Mon Sep 17 00:00:00 2001 From: Zenny Date: Thu, 27 Feb 2025 20:28:24 -0800 Subject: [PATCH] Cleanup --- CharacterBody3d.cs | 44 ----------- CharacterBody3d.cs.uid | 1 - README.md | 25 ------- ThrowableTest.tscn | 56 -------------- dungeon_test/dungeon_generator_3d.tscn | 38 ---------- dungeon_test/dungeon_room.tscn | 26 ------- dungeon_test/node_3d.tscn | 39 ---------- icon.svg | 75 ------------------- icon.svg.import | 37 --------- new_script.gd | 22 ------ new_script.gd.uid | 1 - project.godot | 2 +- src/app/state/AppLogic.g.puml | 2 +- .../10. Eden Pillar/Eden Pillar.tscn | 9 +-- .../enemy_types/10. Eden Pillar/EdenPillar.cs | 4 - src/enemy/state/EnemyLogic.g.puml | 4 +- src/game/GameLogic.g.puml | 8 +- src/player/state/PlayerLogic.g.puml | 10 +-- src/test/NavigationTestScene.tscn | 36 --------- 19 files changed, 16 insertions(+), 423 deletions(-) delete mode 100644 CharacterBody3d.cs delete mode 100644 CharacterBody3d.cs.uid delete mode 100644 README.md delete mode 100644 ThrowableTest.tscn delete mode 100644 dungeon_test/dungeon_generator_3d.tscn delete mode 100644 dungeon_test/dungeon_room.tscn delete mode 100644 dungeon_test/node_3d.tscn delete mode 100644 icon.svg delete mode 100644 icon.svg.import delete mode 100644 new_script.gd delete mode 100644 new_script.gd.uid delete mode 100644 src/test/NavigationTestScene.tscn diff --git a/CharacterBody3d.cs b/CharacterBody3d.cs deleted file mode 100644 index 4d8ec4f4..00000000 --- a/CharacterBody3d.cs +++ /dev/null @@ -1,44 +0,0 @@ -using Godot; - -namespace GameJamDungeon; - -public partial class CharacterBody3d : CharacterBody3D -{ - public const float Speed = 5.0f; - public const float JumpVelocity = 4.5f; - - public override void _PhysicsProcess(double delta) - { - Vector3 velocity = Velocity; - - // Add the gravity. - if (!IsOnFloor()) - { - velocity += GetGravity() * (float)delta; - } - - // Handle Jump. - if (Input.IsActionJustPressed("ui_accept") && IsOnFloor()) - { - velocity.Y = JumpVelocity; - } - - // Get the input direction and handle the movement/deceleration. - // As good practice, you should replace UI actions with custom gameplay actions. - Vector2 inputDir = Input.GetVector("ui_left", "ui_right", "ui_up", "ui_down"); - Vector3 direction = (Transform.Basis * new Vector3(inputDir.X, 0, inputDir.Y)).Normalized(); - if (direction != Vector3.Zero) - { - velocity.X = direction.X * Speed; - velocity.Z = direction.Z * Speed; - } - else - { - velocity.X = Mathf.MoveToward(Velocity.X, 0, Speed); - velocity.Z = Mathf.MoveToward(Velocity.Z, 0, Speed); - } - - Velocity = velocity; - MoveAndSlide(); - } -} diff --git a/CharacterBody3d.cs.uid b/CharacterBody3d.cs.uid deleted file mode 100644 index 6aeea6dd..00000000 --- a/CharacterBody3d.cs.uid +++ /dev/null @@ -1 +0,0 @@ -uid://364ees35b0ou diff --git a/README.md b/README.md deleted file mode 100644 index d04ab32d..00000000 --- a/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# Dialogue Engine - - - -A minimalistic dialogue engine for the Godot Game Engine. - -## ✨ Features - -- 🌲 Create dialogue trees with multiple choices and conditions -- 📚 Simple to use -- just write the dialogue in GDScript -- 🎨 Easy to customize -- bring your own GUI nodes -- 🛠️ Automated dialogue graphing for easy debugging - -## ⚡️ Requirements - -- Godot 4.2.1+ - -## 🚀 Getting Started - -- Clone/[download](https://github.com/Rubonnek/godot-dialogue-engine/archive/refs/heads/master.zip) the repository and check out the demos! - -## 📦 Installation - -[Download](https://github.com/Rubonnek/godot-dialogue-engine/archive/refs/heads/master.zip) or clone this repository and copy the contents of the -`addons` folder to your own project's `addons` folder, and enable the `Dialogue Engine Viewer` plugin in the Project Settings. diff --git a/ThrowableTest.tscn b/ThrowableTest.tscn deleted file mode 100644 index bc687f06..00000000 --- a/ThrowableTest.tscn +++ /dev/null @@ -1,56 +0,0 @@ -[gd_scene load_steps=7 format=3 uid="uid://b2ajdl2vgn3vp"] - -[ext_resource type="Script" path="res://src/items/throwable/ThrowableItem.cs" id="1_ranve"] -[ext_resource type="Texture2D" uid="uid://mi70lolgtf3n" path="res://src/items/throwable/textures/GEOMANCER-DICE.png" id="2_q51af"] -[ext_resource type="Script" path="res://src/items/throwable/ThrowableItemStats.cs" id="3_dyytt"] - -[sub_resource type="Resource" id="Resource_rt4sj"] -script = ExtResource("3_dyytt") -Damage = 0 -ThrowableItemTags = [] -Name = "Test" -Description = "" -Texture = ExtResource("2_q51af") -SpawnRate = 0.5 - -[sub_resource type="BoxShape3D" id="BoxShape3D_qihtb"] -size = Vector3(0.371643, 0.289612, 0.286743) - -[sub_resource type="BoxShape3D" id="BoxShape3D_03cqg"] -size = Vector3(0.778381, 0.929947, 0.731567) - -[node name="Node3D" type="Node3D"] - -[node name="ThrowableItem" type="Node3D" parent="."] -script = ExtResource("1_ranve") -ThrowableItemInfo = SubResource("Resource_rt4sj") - -[node name="Hitbox" type="RigidBody3D" parent="ThrowableItem"] -unique_name_in_owner = true -collision_mask = 17 - -[node name="Sprite" type="Sprite3D" parent="ThrowableItem/Hitbox"] -unique_name_in_owner = true -pixel_size = 0.0005 -billboard = 2 -shaded = true -texture_filter = 0 -render_priority = 100 -texture = ExtResource("2_q51af") - -[node name="CollisionShape3D" type="CollisionShape3D" parent="ThrowableItem/Hitbox"] -shape = SubResource("BoxShape3D_qihtb") - -[node name="Pickup" type="Area3D" parent="ThrowableItem/Hitbox"] -unique_name_in_owner = true -collision_layer = 0 -collision_mask = 4 - -[node name="CollisionShape3D" type="CollisionShape3D" parent="ThrowableItem/Hitbox/Pickup"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0600509, 0.26725, 0.180481) -shape = SubResource("BoxShape3D_03cqg") - -[node name="CSGBox3D" type="CSGBox3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.10045, 0) -use_collision = true -size = Vector3(1, 1.28931, 1) diff --git a/dungeon_test/dungeon_generator_3d.tscn b/dungeon_test/dungeon_generator_3d.tscn deleted file mode 100644 index ed164cbd..00000000 --- a/dungeon_test/dungeon_generator_3d.tscn +++ /dev/null @@ -1,38 +0,0 @@ -[gd_scene load_steps=6 format=3 uid="uid://xneiqls2cte6"] - -[ext_resource type="Script" path="res://addons/SimpleDungeons/DungeonGenerator3D.gd" id="1_2rl20"] -[ext_resource type="PackedScene" uid="uid://bs25ojrv57lvf" path="res://dungeon_test/dungeon_room.tscn" id="2_gw3xb"] -[ext_resource type="PackedScene" uid="uid://cf3eviiwpqb5r" path="res://dungeon_test/node_3d.tscn" id="3_08u4w"] -[ext_resource type="Script" path="res://CharacterBody3d.cs" id="4_02x0n"] - -[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1hq3o"] -height = 1.5 - -[node name="DungeonGenerator3D" type="Node3D"] -script = ExtResource("1_2rl20") -room_scenes = Array[PackedScene]([ExtResource("2_gw3xb")]) -corridor_room_scene = ExtResource("3_08u4w") -dungeon_size = Vector3i(10, 1, 10) -voxel_scale = Vector3(2, 2, 4) -generate_on_ready = false - -[node name="CharacterBody3D" type="CharacterBody3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.710277, -0.335599, 2.8987) -axis_lock_linear_x = true -axis_lock_linear_y = true -axis_lock_linear_z = true -axis_lock_angular_x = true -axis_lock_angular_y = true -axis_lock_angular_z = true -motion_mode = 1 -platform_on_leave = 2 -script = ExtResource("4_02x0n") - -[node name="CollisionShape3D" type="CollisionShape3D" parent="CharacterBody3D"] -shape = SubResource("CapsuleShape3D_1hq3o") - -[node name="OmniLight3D" type="OmniLight3D" parent="CharacterBody3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.43104, 0, 0.890184) - -[node name="Camera3D" type="Camera3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.710277, -0.0942499, 2.5558) diff --git a/dungeon_test/dungeon_room.tscn b/dungeon_test/dungeon_room.tscn deleted file mode 100644 index a016ee50..00000000 --- a/dungeon_test/dungeon_room.tscn +++ /dev/null @@ -1,26 +0,0 @@ -[gd_scene load_steps=2 format=3 uid="uid://bs25ojrv57lvf"] - -[ext_resource type="Script" path="res://addons/SimpleDungeons/DungeonRoom3D.gd" id="1_el8eh"] - -[node name="DungeonRoom3D" type="Node3D"] -script = ExtResource("1_el8eh") -size_in_voxels = Vector3i(4, 1, 4) -voxel_scale = Vector3(2, 2, 4) - -[node name="CSGBox3D" type="CSGBox3D" parent="."] -use_collision = true -size = Vector3(8, 2, 16) - -[node name="DOOR" type="CSGBox3D" parent="CSGBox3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.05512, -0.38466, 7.81272) -operation = 2 -size = Vector3(0.938965, 1.02429, 1.09424) - -[node name="DOOR2" type="CSGBox3D" parent="CSGBox3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.05512, -0.487854, -8.40126) -operation = 2 -size = Vector3(0.938965, 1.02429, 1.09424) - -[node name="CSGBox3D" type="CSGBox3D" parent="CSGBox3D"] -operation = 2 -size = Vector3(7, 1.8, 15) diff --git a/dungeon_test/node_3d.tscn b/dungeon_test/node_3d.tscn deleted file mode 100644 index 5e307ce9..00000000 --- a/dungeon_test/node_3d.tscn +++ /dev/null @@ -1,39 +0,0 @@ -[gd_scene load_steps=3 format=3 uid="uid://cf3eviiwpqb5r"] - -[ext_resource type="Script" uid="uid://ce73fuh74l81l" path="res://addons/SimpleDungeons/DungeonRoom3D.gd" id="1_xrnk3"] -[ext_resource type="Script" uid="uid://yl7wyeo5m725" path="res://src/map/dungeon/code/remove_unused_doors.gd" id="2_w6qw3"] - -[node name="Node3D" type="Node3D"] -script = ExtResource("1_xrnk3") -voxel_scale = Vector3(2, 2, 4) - -[node name="CSGBox3D" type="CSGBox3D" parent="."] -use_collision = true -size = Vector3(2, 2, 4) - -[node name="CSGBox3D" type="CSGBox3D" parent="CSGBox3D"] -operation = 2 -size = Vector3(1.8, 1.8, 3) - -[node name="DOOR?1" type="CSGBox3D" parent="CSGBox3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.777139, -0.424666, -0.00854689) -operation = 2 -size = Vector3(1.41699, 0.9375, 0.851501) - -[node name="DOOR?2" type="CSGBox3D" parent="CSGBox3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.13129, -0.424666, -0.00854689) -operation = 2 -size = Vector3(1.41699, 0.9375, 0.851501) - -[node name="DOOR?3" type="CSGBox3D" parent="CSGBox3D"] -transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -0.0484848, -0.424666, 2.16393) -operation = 2 -size = Vector3(1.41699, 0.9375, 0.851501) - -[node name="DOOR?4" type="CSGBox3D" parent="CSGBox3D"] -transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.1513, -0.424666, -1.79225) -operation = 2 -size = Vector3(1.41699, 0.9375, 0.851501) - -[node name="RemoveUnusedDoors" type="Node" parent="."] -script = ExtResource("2_w6qw3") diff --git a/icon.svg b/icon.svg deleted file mode 100644 index bad28e0f..00000000 --- a/icon.svg +++ /dev/null @@ -1,75 +0,0 @@ - - diff --git a/icon.svg.import b/icon.svg.import deleted file mode 100644 index 7a1cbb0a..00000000 --- a/icon.svg.import +++ /dev/null @@ -1,37 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://cr0rdb3ab8xwg" -path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://icon.svg" -dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 -svg/scale=1.0 -editor/scale_with_editor_scale=false -editor/convert_colors_with_editor_theme=false diff --git a/new_script.gd b/new_script.gd deleted file mode 100644 index a62eb21b..00000000 --- a/new_script.gd +++ /dev/null @@ -1,22 +0,0 @@ -@tool -extends EditorScript - -var files: Array[String] - -func _run() -> void: - files = [] - - add_files("res://") - - for file in files: - print(file) - var res = load(file) - ResourceSaver.save(res) - -func add_files(dir: String): - for file in DirAccess.get_files_at(dir): - if file.get_extension() == "tscn" or file.get_extension() == "tres": - files.append(dir.path_join(file)) - - for dr in DirAccess.get_directories_at(dir): - add_files(dir.path_join(dr)) diff --git a/new_script.gd.uid b/new_script.gd.uid deleted file mode 100644 index 9f67d1c4..00000000 --- a/new_script.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://dwpjl4sng8ney diff --git a/project.godot b/project.godot index 8bd8a937..33266eef 100644 --- a/project.godot +++ b/project.godot @@ -11,7 +11,7 @@ config_version=5 [application] config/name="GameJamDungeon" -run/main_scene="uid://bc1sp6xwe0j65" +run/main_scene="uid://d1gjaijijd5ot" config/features=PackedStringArray("4.4", "C#", "GL Compatibility") boot_splash/show_image=false diff --git a/src/app/state/AppLogic.g.puml b/src/app/state/AppLogic.g.puml index 885c336b..cb0fa1fc 100644 --- a/src/app/state/AppLogic.g.puml +++ b/src/app/state/AppLogic.g.puml @@ -1,8 +1,8 @@ @startuml AppLogic state "AppLogic State" as GameJamDungeon_AppLogic_State { state "SetupGameScene" as GameJamDungeon_AppLogic_State_SetupGameScene - state "InGame" as GameJamDungeon_AppLogic_State_InGame state "LoadingScreen" as GameJamDungeon_AppLogic_State_LoadingScreen + state "InGame" as GameJamDungeon_AppLogic_State_InGame state "MainMenu" as GameJamDungeon_AppLogic_State_MainMenu } diff --git a/src/enemy/enemy_types/10. Eden Pillar/Eden Pillar.tscn b/src/enemy/enemy_types/10. Eden Pillar/Eden Pillar.tscn index 6ceb921f..a4fb0e80 100644 --- a/src/enemy/enemy_types/10. Eden Pillar/Eden Pillar.tscn +++ b/src/enemy/enemy_types/10. Eden Pillar/Eden Pillar.tscn @@ -102,6 +102,7 @@ disabled = true [node name="MeshInstance3D" type="MeshInstance3D" parent="PrimaryHitbox"] transform = Transform3D(0.998663, 0.0516911, -2.25949e-09, 0, -4.37114e-08, -1, -0.0516911, 0.998663, -4.3653e-08, 0.176435, 0, -12.0372) +visible = false mesh = SubResource("CylinderMesh_xqm7x") [node name="SecondaryHitbox" type="Area3D" parent="."] @@ -118,6 +119,7 @@ disabled = true [node name="MeshInstance3D" type="MeshInstance3D" parent="SecondaryHitbox"] transform = Transform3D(0.991132, -0.132879, 5.80834e-09, 0, -4.37114e-08, -1, 0.132879, 0.991132, -4.33238e-08, -6.30106, 0, -0.622331) +visible = false mesh = SubResource("CylinderMesh_nveg0") [node name="TertiaryHitbox" type="Area3D" parent="."] @@ -134,13 +136,8 @@ disabled = true [node name="MeshInstance3D" type="MeshInstance3D" parent="TertiaryHitbox"] transform = Transform3D(0.995479, 0.0949771, -4.15158e-09, 0, -4.37114e-08, -1, -0.0949771, 0.995479, -4.35138e-08, 6.95263, 0, -1.22368) +visible = false mesh = SubResource("CylinderMesh_nc31c") -[node name="RayCast3D2" type="RayCast3D" parent="."] -target_position = Vector3(3, 1, -1.85) - -[node name="RayCast3D" type="RayCast3D" parent="."] -target_position = Vector3(-3, 1, -1.85) - [node name="Rotation" type="Node3D" parent="."] unique_name_in_owner = true diff --git a/src/enemy/enemy_types/10. Eden Pillar/EdenPillar.cs b/src/enemy/enemy_types/10. Eden Pillar/EdenPillar.cs index 8344bb57..de24542e 100644 --- a/src/enemy/enemy_types/10. Eden Pillar/EdenPillar.cs +++ b/src/enemy/enemy_types/10. Eden Pillar/EdenPillar.cs @@ -23,10 +23,6 @@ public partial class EdenPillar : Enemy, IHasPrimaryAttack, IHasSecondaryAttack, [Export] public double TertiaryAttackElementalDamageBonus { get; set; } = 1.15f; - [Node] private IHitbox _primaryHitbox { get; set; } = default!; - [Node] private IHitbox _secondaryHitbox { get; set; } = default!; - [Node] private IHitbox _tertiaryHitbox { get; set; } = default!; - [Node] private Node3D _rotation { get; set; } = default!; private float _primaryAngle = 0; diff --git a/src/enemy/state/EnemyLogic.g.puml b/src/enemy/state/EnemyLogic.g.puml index 72ff7d28..c1bfac23 100644 --- a/src/enemy/state/EnemyLogic.g.puml +++ b/src/enemy/state/EnemyLogic.g.puml @@ -1,12 +1,12 @@ @startuml EnemyLogic state "EnemyLogic State" as GameJamDungeon_EnemyLogic_State { state "Alive" as GameJamDungeon_EnemyLogic_State_Alive { + state "Idle" as GameJamDungeon_EnemyLogic_State_Idle state "Activated" as GameJamDungeon_EnemyLogic_State_Activated { - state "Attacking" as GameJamDungeon_EnemyLogic_State_Attacking state "FollowPlayer" as GameJamDungeon_EnemyLogic_State_FollowPlayer state "Patrolling" as GameJamDungeon_EnemyLogic_State_Patrolling + state "Attacking" as GameJamDungeon_EnemyLogic_State_Attacking } - state "Idle" as GameJamDungeon_EnemyLogic_State_Idle } state "Defeated" as GameJamDungeon_EnemyLogic_State_Defeated } diff --git a/src/game/GameLogic.g.puml b/src/game/GameLogic.g.puml index 1b460d73..e84a9b39 100644 --- a/src/game/GameLogic.g.puml +++ b/src/game/GameLogic.g.puml @@ -1,14 +1,14 @@ @startuml GameLogic state "GameLogic State" as GameJamDungeon_GameLogic_State { - state "GameStarted" as GameJamDungeon_GameLogic_State_GameStarted state "Playing" as GameJamDungeon_GameLogic_State_Playing { state "AskForTeleport" as GameJamDungeon_GameLogic_State_AskForTeleport - state "FloorClearedDecisionState" as GameJamDungeon_GameLogic_State_FloorClearedDecisionState - state "InventoryOpened" as GameJamDungeon_GameLogic_State_InventoryOpened state "MinimapOpen" as GameJamDungeon_GameLogic_State_MinimapOpen - state "Paused" as GameJamDungeon_GameLogic_State_Paused + state "FloorClearedDecisionState" as GameJamDungeon_GameLogic_State_FloorClearedDecisionState state "Resuming" as GameJamDungeon_GameLogic_State_Resuming + state "Paused" as GameJamDungeon_GameLogic_State_Paused + state "InventoryOpened" as GameJamDungeon_GameLogic_State_InventoryOpened } + state "GameStarted" as GameJamDungeon_GameLogic_State_GameStarted state "Quit" as GameJamDungeon_GameLogic_State_Quit } diff --git a/src/player/state/PlayerLogic.g.puml b/src/player/state/PlayerLogic.g.puml index 8f57bf9d..aaad8680 100644 --- a/src/player/state/PlayerLogic.g.puml +++ b/src/player/state/PlayerLogic.g.puml @@ -1,11 +1,11 @@ @startuml PlayerLogic state "PlayerLogic State" as GameJamDungeon_PlayerLogic_State { - state "Alive" as GameJamDungeon_PlayerLogic_State_Alive { - state "Attacking" as GameJamDungeon_PlayerLogic_State_Attacking - state "Idle" as GameJamDungeon_PlayerLogic_State_Idle - } - state "Dead" as GameJamDungeon_PlayerLogic_State_Dead state "Disabled" as GameJamDungeon_PlayerLogic_State_Disabled + state "Dead" as GameJamDungeon_PlayerLogic_State_Dead + state "Alive" as GameJamDungeon_PlayerLogic_State_Alive { + state "Idle" as GameJamDungeon_PlayerLogic_State_Idle + state "Attacking" as GameJamDungeon_PlayerLogic_State_Attacking + } } GameJamDungeon_PlayerLogic_State_Alive --> GameJamDungeon_PlayerLogic_State_Alive : PhysicsTick diff --git a/src/test/NavigationTestScene.tscn b/src/test/NavigationTestScene.tscn deleted file mode 100644 index c337891c..00000000 --- a/src/test/NavigationTestScene.tscn +++ /dev/null @@ -1,36 +0,0 @@ -[gd_scene load_steps=5 format=3 uid="uid://010r1fbkbooa"] - -[ext_resource type="PackedScene" uid="uid://cfecvvav8kkp6" path="res://src/player/Player.tscn" id="1_7xhku"] -[ext_resource type="PackedScene" uid="uid://bksq62muhk3h5" path="res://src/enemy/enemy_types/01. sproingy/Sproingy.tscn" id="2_3keei"] - -[sub_resource type="NavigationMesh" id="NavigationMesh_3keei"] -vertices = PackedVector3Array(-2.96237, 1.33137, -10.8745, -1.71237, 1.33137, -10.8745, -1.71237, 1.33137, -22.6245, -5.46237, 1.33137, -9.12453, -21.7124, 1.33137, -6.12453, -6.46237, 1.33137, -6.12453, -21.7124, 1.33137, -22.6245, 3.03763, 1.33137, -7.62453, 3.28763, 1.33137, -6.12453, 10.0376, 1.33137, -6.12453, 1.53763, 1.33137, -9.87453, -0.462372, 1.33137, -10.8745, 10.0376, 1.33137, -22.6245, -1.71237, 1.33137, 9.37547, -1.71237, 1.33137, -1.37453, -2.71237, 1.33137, -1.37453, -5.46237, 1.33137, -3.12453, -21.7124, 1.33137, 9.37547, 1.53763, 1.33137, -2.37453, -0.462372, 1.33137, -1.37453, 10.0376, 1.33137, 9.37547) -polygons = [PackedInt32Array(2, 1, 0), PackedInt32Array(2, 0, 3), PackedInt32Array(3, 5, 2), PackedInt32Array(2, 5, 4), PackedInt32Array(2, 4, 6), PackedInt32Array(9, 8, 7), PackedInt32Array(9, 7, 10), PackedInt32Array(10, 11, 9), PackedInt32Array(9, 11, 2), PackedInt32Array(9, 2, 12), PackedInt32Array(11, 1, 2), PackedInt32Array(15, 14, 13), PackedInt32Array(16, 15, 13), PackedInt32Array(16, 13, 5), PackedInt32Array(5, 13, 4), PackedInt32Array(4, 13, 17), PackedInt32Array(18, 8, 9), PackedInt32Array(13, 14, 19), PackedInt32Array(18, 9, 19), PackedInt32Array(19, 9, 13), PackedInt32Array(13, 9, 20)] -cell_height = 0.5 -agent_radius = 3.0 - -[sub_resource type="CylinderShape3D" id="CylinderShape3D_3keei"] -height = 4.74658 -radius = 1.71777 - -[node name="Node3D" type="Node3D"] - -[node name="Player" parent="." instance=ExtResource("1_7xhku")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.791832, 0) - -[node name="Sproingy" parent="." instance=ExtResource("2_3keei")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.64783, -11.9575) -motion_mode = 1 - -[node name="NavigationRegion3D" type="NavigationRegion3D" parent="."] -navigation_mesh = SubResource("NavigationMesh_3keei") - -[node name="CSGBox3D" type="CSGBox3D" parent="NavigationRegion3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.79317, 0, -6.66189) -size = Vector3(37.8384, 1, 37.9253) - -[node name="StaticBody3D" type="StaticBody3D" parent="NavigationRegion3D"] - -[node name="CollisionShape3D" type="CollisionShape3D" parent="NavigationRegion3D/StaticBody3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.61432, 1.20466, -6.13947) -shape = SubResource("CylinderShape3D_3keei")