From d8aafba90e29836abf975a6e9ac9a95757c189f4 Mon Sep 17 00:00:00 2001 From: Sara Date: Mon, 21 Jul 2025 17:21:56 +0200 Subject: [PATCH] fix: WretchedPatrolState now works without a path --- .../wave_survival/enemies/enemy_wretched.cpp | 18 +++++---- project/maps/testmap.tscn | 39 +++++++------------ project/objects/enemies/enemy_wretched.tscn | 1 - project/objects/units/unit_4_wretched.tscn | 17 ++++++++ 4 files changed, 42 insertions(+), 33 deletions(-) create mode 100644 project/objects/units/unit_4_wretched.tscn diff --git a/modules/wave_survival/enemies/enemy_wretched.cpp b/modules/wave_survival/enemies/enemy_wretched.cpp index 08831a98..fa975de4 100644 --- a/modules/wave_survival/enemies/enemy_wretched.cpp +++ b/modules/wave_survival/enemies/enemy_wretched.cpp @@ -56,17 +56,21 @@ void WretchedPatrolState::enter_state() { float const max_speed{ get_unit()->get_patrol_speed() }; get_target()->set_movement_speed(max_speed); get_nav()->set_max_speed(max_speed); - Vector3 const nav_target{ this->path->get_closest_point(get_target()->get_global_position(), &this->path_point) }; - set_patrol_target(nav_target); + if (this->path) { + Vector3 const nav_target{ this->path->get_closest_point(get_target()->get_global_position(), &this->path_point) }; + set_patrol_target(nav_target); + } } void WretchedPatrolState::process(double delta) { - if (get_nav()->is_navigation_finished()) { - this->path_point += 1; - set_patrol_target(this->path->point_at(this->path_point)); + if (this->path) { + if (get_nav()->is_navigation_finished()) { + this->path_point += 1; + set_patrol_target(this->path->point_at(this->path_point)); + } + Vector3 const direction{ get_target()->get_global_position().direction_to(get_nav()->get_next_path_position()) }; + get_target()->set_movement_direction(Vector2{ direction.x, direction.z }.normalized()); } - Vector3 const direction{ get_target()->get_global_position().direction_to(get_nav()->get_next_path_position()) }; - get_target()->set_movement_direction(Vector2{ direction.x, direction.z }.normalized()); } String WretchedPatrolState::get_next_state() const { diff --git a/project/maps/testmap.tscn b/project/maps/testmap.tscn index 179bf228..39169044 100644 --- a/project/maps/testmap.tscn +++ b/project/maps/testmap.tscn @@ -2,11 +2,11 @@ [ext_resource type="PackedScene" uid="uid://snjgu4yp5swd" path="res://objects/player.tscn" id="1_6t4yh"] [ext_resource type="Material" uid="uid://b075rlo1f0e4u" path="res://assets/materials/greenish_grid.tres" id="1_ng1ul"] -[ext_resource type="PackedScene" uid="uid://dqlqgk1veyos8" path="res://objects/enemies/enemy_wretched.tscn" id="3_7ng1a"] +[ext_resource type="PackedScene" uid="uid://5hg5eirw7v8n" path="res://objects/units/unit_4_wretched.tscn" id="3_7ng1a"] [sub_resource type="NavigationMesh" id="NavigationMesh_7ng1a"] -vertices = PackedVector3Array(-13.25, 0.24851608, -15, -11.5, 0.24851608, -15.25, -11.75, 0.24851608, -24.5, -24.5, 0.24851608, -24.5, -24.5, 0.24851608, -13.75, -13.25, 0.24851608, -13.5, -2, 0.24851608, -15.25, 2.25, 0.24851608, -15.5, 2.5, 0.24851608, -23.5, 12.25, 0.24851608, -23.5, 12.5, 0.24851608, -24.5, 14, 0.24851608, -23.25, 24.5, 0.24851608, -24.5, 14, 0.24851608, 19.5, 12.25, 0.24851608, 19.75, 12.5, 0.24851608, 24.5, 24.5, 0.24851608, 24.5, 3.25, 6.998516, -22.5, 3.25, 6.998516, 18.75, 13, 6.998516, 18.75, 13, 6.998516, -22.5, 2.25, 0.24851608, 6.75, 3, 0.24851608, 6.5, 3, 0.24851608, 6.25, 2.25, 0.24851608, 6, -1.5, 0.24851608, -9.25, -1.5, 0.24851608, 11.25, 2.25, 0.24851608, -8.75, 3, 0.24851608, -9, 3, 0.24851608, -9.25, 2.25, 0.24851608, -9.5, -1.5, 0.24851608, -10, -1.5, 0.24851608, -15, -2.5, 0.24851608, -9.75, -2.5, 0.24851608, -9.5, -2, 0.24851608, 11.5, 2.25, 0.24851608, 11.75, -12.25, 6.998516, -14.25, -12.25, 6.998516, 10.5, -2.5, 6.998516, 10.5, -2.5, 6.998516, -14.25, -24.5, 0.24851608, 10, -13.25, 0.24851608, 9.75, -10.75, 0.24851608, -6.5, -10.5, 0.24851608, -6.5, -10.25, 0.24851608, -7.25, -11, 0.24851608, -7.25, -3.25, 0.24851608, -10, -3.25, 0.24851608, -9.25, -11.75, 0.24851608, -13.5, -3.25, 0.24851608, -13.5, -3.25, 0.24851608, -7.25, -11.75, 0.24851608, -7.25, -12, 3.498516, -9.25, -11.75, 3.498516, -7.25, -10.75, 3.498516, -7, -3.25, 3.498516, -7.25, -3.25, 3.498516, -13.5, -11.75, 3.498516, -13.5, 3.75, 0.24851608, -8.75, 3.75, 0.24851608, -9.5, 3.75, 0.24851608, -13.25, 6, 0.24851608, -7, 12.5, 0.24851608, -7, 12.5, 0.24851608, -13.25, 5.25, 0.24851608, -7, 5.5, 0.24851608, -6.25, 5.75, 0.24851608, -6.25, 3.75, 0.24851608, -7, 5.5, 3.498516, -6.25, 5.75, 3.498516, -6.25, 6, 3.498516, -7, 5.25, 3.498516, -7, 12.5, 3.498516, -7, 12, 3.498516, -10.25, 7.75, 3.498516, -10.25, 12.5, 3.498516, -13.25, 7.5, 3.498516, -13.25, 3.75, 3.498516, -13.25, 3.75, 3.498516, -7, -10.25, 0.24851608, -6, -11, 0.24851608, -6, -11.75, 0.24851608, 2, -4.5, 0.24851608, 2, -3.25, 0.24851608, 2, -3.25, 0.24851608, -6, -5.25, 0.24851608, 2, -5, 0.24851608, 2.75, -4.75, 0.24851608, 2.75, -11.75, 0.24851608, -6, -5.25, 3.498516, 2, -5, 3.498516, 2.75, -4.75, 3.498516, 2.75, -4.5, 3.498516, 2, -3.25, 3.498516, -6, -11.75, 3.498516, -6, -11.75, 3.498516, 2, -3.25, 3.498516, 2, 11, 0.24851608, 2.5, 11.25, 0.24851608, 3.25, 11.5, 0.24851608, 3.25, 11.75, 0.24851608, 2.5, 12.5, 0.24851608, -5.5, 6, 0.24851608, -5.5, 3.75, 0.24851608, 2.5, 5.25, 0.24851608, -5.5, 3.75, 0.24851608, -5.5, 12.5, 0.24851608, 2.5, 10.75, 3.498516, 2.5, 11, 3.498516, 3.25, 11.25, 3.498516, 3.25, 11.5, 3.498516, 2.5, 12.5, 3.498516, -5.5, 6, 3.498516, -5.5, 3.75, 3.498516, 2.5, 5.25, 3.498516, -5.5, 3.75, 3.498516, -5.5, 12.5, 3.498516, 2.5, -4.5, 0.24851608, 3.75, -5.25, 0.24851608, 3.75, -3.25, 0.24851608, 10, -11.75, 0.24851608, 3.75, -11.75, 0.24851608, 10, -3.25, 0.24851608, 3.75, -5.25, 3.498516, 3.75, -4.5, 3.498516, 3.75, -11.75, 3.498516, 3.75, -11.75, 3.498516, 7.25, -7, 3.498516, 7, -6.75, 3.498516, 10, -3.25, 3.498516, 10, -3.25, 3.498516, 3.75, 12.5, 3.498516, 6, 13, 3.498516, 5.5, 12.5, 3.498516, 5.25, 10.75, 3.498516, 4, 11.5, 3.498516, 4, 12.5, 3.498516, 10.25, 3.75, 3.498516, 4, 3.75, 3.498516, 10.25, 12.5, 3.498516, 4, 3.75, 0.24851608, 6, 3.75, 0.24851608, 6.75, 11, 0.24851608, 4, 12.5, 0.24851608, 10.25, 11.75, 0.24851608, 4, 3.75, 0.24851608, 10.25, 3.75, 0.24851608, 4, 12.5, 0.24851608, 4, -13, 0.24851608, 11.5, -11, 0.24851608, 24.5, -11, 0.24851608, 11.5, -24.5, 0.24851608, 24.5, 3.75, 0.24851608, 24.5, 4, 0.24851608, 19.75, 2.25, 0.24851608, 19.5) -polygons = [PackedInt32Array(1, 0, 2), PackedInt32Array(2, 0, 3), PackedInt32Array(3, 0, 4), PackedInt32Array(0, 5, 4), PackedInt32Array(7, 6, 8), PackedInt32Array(8, 6, 1), PackedInt32Array(8, 1, 2), PackedInt32Array(9, 8, 10), PackedInt32Array(10, 8, 2), PackedInt32Array(9, 10, 11), PackedInt32Array(11, 10, 12), PackedInt32Array(14, 13, 15), PackedInt32Array(15, 13, 16), PackedInt32Array(11, 12, 13), PackedInt32Array(13, 12, 16), PackedInt32Array(20, 19, 17), PackedInt32Array(17, 19, 18), PackedInt32Array(22, 21, 23), PackedInt32Array(23, 21, 24), PackedInt32Array(27, 24, 25), PackedInt32Array(25, 24, 26), PackedInt32Array(28, 27, 29), PackedInt32Array(29, 27, 30), PackedInt32Array(30, 27, 25), PackedInt32Array(30, 25, 31), PackedInt32Array(31, 32, 30), PackedInt32Array(30, 32, 7), PackedInt32Array(33, 31, 34), PackedInt32Array(34, 31, 25), PackedInt32Array(24, 21, 26), PackedInt32Array(36, 35, 26), PackedInt32Array(32, 6, 7), PackedInt32Array(21, 36, 26), PackedInt32Array(40, 39, 37), PackedInt32Array(37, 39, 38), PackedInt32Array(42, 41, 5), PackedInt32Array(5, 41, 4), PackedInt32Array(43, 46, 44), PackedInt32Array(44, 46, 45), PackedInt32Array(33, 34, 47), PackedInt32Array(47, 34, 48), PackedInt32Array(47, 48, 45), PackedInt32Array(46, 49, 45), PackedInt32Array(45, 49, 47), PackedInt32Array(47, 49, 50), PackedInt32Array(48, 51, 45), PackedInt32Array(46, 52, 49), PackedInt32Array(54, 53, 55), PackedInt32Array(55, 53, 58), PackedInt32Array(55, 58, 56), PackedInt32Array(56, 58, 57), PackedInt32Array(29, 60, 28), PackedInt32Array(28, 60, 59), PackedInt32Array(60, 61, 62), PackedInt32Array(62, 61, 63), PackedInt32Array(63, 61, 64), PackedInt32Array(66, 65, 67), PackedInt32Array(67, 65, 62), PackedInt32Array(65, 59, 62), PackedInt32Array(62, 59, 60), PackedInt32Array(65, 68, 59), PackedInt32Array(69, 72, 70), PackedInt32Array(70, 72, 71), PackedInt32Array(74, 73, 75), PackedInt32Array(75, 73, 71), PackedInt32Array(74, 76, 73), PackedInt32Array(72, 79, 75), PackedInt32Array(75, 79, 77), PackedInt32Array(77, 79, 78), PackedInt32Array(75, 71, 72), PackedInt32Array(44, 80, 43), PackedInt32Array(43, 80, 81), PackedInt32Array(81, 80, 82), PackedInt32Array(85, 84, 83), PackedInt32Array(87, 86, 88), PackedInt32Array(88, 86, 83), PackedInt32Array(83, 86, 85), PackedInt32Array(82, 80, 86), PackedInt32Array(86, 80, 85), PackedInt32Array(82, 89, 81), PackedInt32Array(91, 90, 92), PackedInt32Array(92, 90, 93), PackedInt32Array(93, 90, 94), PackedInt32Array(96, 95, 90), PackedInt32Array(90, 95, 94), PackedInt32Array(94, 97, 93), PackedInt32Array(99, 98, 100), PackedInt32Array(100, 98, 101), PackedInt32Array(101, 98, 102), PackedInt32Array(102, 98, 103), PackedInt32Array(103, 98, 104), PackedInt32Array(67, 103, 66), PackedInt32Array(66, 103, 105), PackedInt32Array(105, 103, 104), PackedInt32Array(104, 106, 105), PackedInt32Array(102, 107, 101), PackedInt32Array(109, 108, 110), PackedInt32Array(110, 108, 111), PackedInt32Array(111, 108, 112), PackedInt32Array(112, 108, 113), PackedInt32Array(113, 108, 114), PackedInt32Array(70, 113, 69), PackedInt32Array(69, 113, 115), PackedInt32Array(115, 113, 114), PackedInt32Array(114, 116, 115), PackedInt32Array(112, 117, 111), PackedInt32Array(88, 118, 87), PackedInt32Array(87, 118, 119), PackedInt32Array(119, 118, 120), PackedInt32Array(121, 119, 122), PackedInt32Array(122, 119, 120), PackedInt32Array(118, 123, 120), PackedInt32Array(92, 125, 91), PackedInt32Array(91, 125, 124), PackedInt32Array(127, 126, 128), PackedInt32Array(128, 126, 124), PackedInt32Array(125, 131, 128), PackedInt32Array(128, 131, 129), PackedInt32Array(129, 131, 130), PackedInt32Array(128, 124, 125), PackedInt32Array(134, 133, 132), PackedInt32Array(110, 136, 109), PackedInt32Array(109, 136, 135), PackedInt32Array(132, 137, 135), PackedInt32Array(135, 137, 138), PackedInt32Array(138, 137, 139), PackedInt32Array(136, 140, 134), PackedInt32Array(136, 134, 135), PackedInt32Array(135, 134, 132), PackedInt32Array(23, 141, 22), PackedInt32Array(22, 141, 142), PackedInt32Array(142, 141, 143), PackedInt32Array(145, 144, 143), PackedInt32Array(143, 144, 142), PackedInt32Array(142, 144, 146), PackedInt32Array(100, 145, 99), PackedInt32Array(99, 145, 143), PackedInt32Array(141, 147, 143), PackedInt32Array(145, 148, 144), PackedInt32Array(41, 42, 149), PackedInt32Array(149, 151, 150), PackedInt32Array(41, 149, 152), PackedInt32Array(152, 149, 150), PackedInt32Array(155, 154, 153), PackedInt32Array(35, 36, 155), PackedInt32Array(155, 153, 35), PackedInt32Array(35, 153, 151), PackedInt32Array(151, 153, 150), PackedInt32Array(154, 14, 153), PackedInt32Array(153, 14, 15)] +vertices = PackedVector3Array(-13.25, 0.24851608, -15, -11.5, 0.24851608, -15.25, -11.75, 0.24851608, -24.5, -24.5, 0.24851608, -24.5, -24.5, 0.24851608, -13.75, -13.25, 0.24851608, -13.5, -2, 0.24851608, -15.25, 2.25, 0.24851608, -15.5, 2.5, 0.24851608, -23.5, 12.25, 0.24851608, -23.5, 12.5, 0.24851608, -24.5, 14, 0.24851608, -23.25, 24.5, 0.24851608, -24.5, 14, 0.24851608, 19.5, 12.25, 0.24851608, 19.75, 12.5, 0.24851608, 24.5, 24.5, 0.24851608, 24.5, 3.25, 6.998516, -22.5, 3.25, 6.998516, 18.75, 13, 6.998516, 18.75, 13, 6.998516, -22.5, 2.25, 0.24851608, 6.75, 3, 0.24851608, 6.5, 3, 0.24851608, 6.25, 2.25, 0.24851608, 6, -1.5, 0.24851608, 5.25, -1.5, 0.24851608, 6, -1.5, 0.24851608, 11.25, 2.25, 0.24851608, 11.75, 2.25, 0.24851608, -8.75, 3, 0.24851608, -9, 3, 0.24851608, -9.25, 2.25, 0.24851608, -9.5, -1.5, 0.24851608, -10, -1.5, 0.24851608, -9.25, -1.5, 0.24851608, -15, -2.5, 0.24851608, -9.75, -2.5, 0.24851608, -9.5, -2.5, 0.24851608, 5.5, -2.5, 0.24851608, 5.75, -2, 0.24851608, 11.5, -12.25, 6.998516, -14.25, -12.25, 6.998516, 10.5, -2.5, 6.998516, 10.5, -2.5, 6.998516, -14.25, -24.5, 0.24851608, 10, -13.25, 0.24851608, 9.75, -10.75, 0.24851608, -6.5, -10.5, 0.24851608, -6.5, -10.25, 0.24851608, -7.25, -11, 0.24851608, -7.25, -3.25, 0.24851608, -10, -3.25, 0.24851608, -9.25, -11.75, 0.24851608, -13.5, -3.25, 0.24851608, -13.5, -3.25, 0.24851608, -7.25, -11.75, 0.24851608, -7.25, -11.75, 3.498516, -9.5, -12.25, 3.498516, -9, -11.75, 3.498516, -8.75, -10.75, 3.498516, -6.5, -10.5, 3.498516, -6.5, -10.25, 3.498516, -7.25, -11, 3.498516, -7.25, -11.75, 3.498516, -13.5, -3.25, 3.498516, -7.25, -3.25, 3.498516, -13.5, -11.75, 3.498516, -7.25, 3.75, 0.24851608, -8.75, 3.75, 0.24851608, -9.5, 3.75, 0.24851608, -13.25, 6, 0.24851608, -7, 12.5, 0.24851608, -7, 12.5, 0.24851608, -13.25, 5.25, 0.24851608, -7, 5.5, 0.24851608, -6.25, 5.75, 0.24851608, -6.25, 3.75, 0.24851608, -7, 5.5, 3.498516, -6.25, 5.75, 3.498516, -6.25, 6, 3.498516, -7, 5.25, 3.498516, -7, 12.5, 3.498516, -7, 12, 3.498516, -10.25, 7.75, 3.498516, -10.25, 12.5, 3.498516, -13.25, 7.5, 3.498516, -13.25, 3.75, 3.498516, -13.25, 3.75, 3.498516, -7, -10.25, 0.24851608, -6, -11, 0.24851608, -6, -11.75, 0.24851608, 2, -4.5, 0.24851608, 2, -3.25, 0.24851608, 2, -3.25, 0.24851608, -6, -5.25, 0.24851608, 2, -5, 0.24851608, 2.75, -4.75, 0.24851608, 2.75, -11.75, 0.24851608, -6, -10.25, 3.498516, -6, -11, 3.498516, -6, -11.75, 3.498516, 2, -4.5, 3.498516, 2, -3.25, 3.498516, 2, -3.25, 3.498516, -6, -5.25, 3.498516, 2, -5, 3.498516, 2.75, -4.75, 3.498516, 2.75, -11.75, 3.498516, -6, 11, 0.24851608, 2.5, 11.25, 0.24851608, 3.25, 11.5, 0.24851608, 3.25, 11.75, 0.24851608, 2.5, 12.5, 0.24851608, -5.5, 6, 0.24851608, -5.5, 3.75, 0.24851608, 2.5, 5.25, 0.24851608, -5.5, 3.75, 0.24851608, -5.5, 12.5, 0.24851608, 2.5, 10.75, 3.498516, 2.5, 11, 3.498516, 3.25, 11.25, 3.498516, 3.25, 11.5, 3.498516, 2.5, 12.5, 3.498516, -5.5, 6, 3.498516, -5.5, 3.75, 3.498516, 2.5, 5.25, 3.498516, -5.5, 3.75, 3.498516, -5.5, 12.5, 3.498516, 2.5, -3.25, 0.24851608, 5.25, -3.25, 0.24851608, 6, -4.5, 0.24851608, 3.75, -5.25, 0.24851608, 3.75, -3.25, 0.24851608, 10, -11.75, 0.24851608, 3.75, -11.75, 0.24851608, 10, -3.25, 0.24851608, 3.75, -5.25, 3.498516, 3.75, -4.5, 3.498516, 3.75, -11.75, 3.498516, 3.75, -11.75, 3.498516, 7.25, -7, 3.498516, 7, -6.75, 3.498516, 10, -3.25, 3.498516, 10, -3.25, 3.498516, 3.75, 12.5, 3.498516, 6, 13, 3.498516, 5.5, 12.5, 3.498516, 5.25, 10.75, 3.498516, 4, 11.5, 3.498516, 4, 12.5, 3.498516, 10.25, 3.75, 3.498516, 4, 3.75, 3.498516, 10.25, 12.5, 3.498516, 4, 3.75, 0.24851608, 6, 3.75, 0.24851608, 6.75, 11, 0.24851608, 4, 12.5, 0.24851608, 10.25, 11.75, 0.24851608, 4, 3.75, 0.24851608, 10.25, 3.75, 0.24851608, 4, 12.5, 0.24851608, 4, -13, 0.24851608, 11.5, -11, 0.24851608, 24.5, -11, 0.24851608, 11.5, -24.5, 0.24851608, 24.5, 3.75, 0.24851608, 24.5, 4, 0.24851608, 19.75, 2.25, 0.24851608, 19.5) +polygons = [PackedInt32Array(1, 0, 2), PackedInt32Array(2, 0, 3), PackedInt32Array(3, 0, 4), PackedInt32Array(0, 5, 4), PackedInt32Array(7, 6, 8), PackedInt32Array(8, 6, 1), PackedInt32Array(8, 1, 2), PackedInt32Array(9, 8, 10), PackedInt32Array(10, 8, 2), PackedInt32Array(9, 10, 11), PackedInt32Array(11, 10, 12), PackedInt32Array(14, 13, 15), PackedInt32Array(15, 13, 16), PackedInt32Array(11, 12, 13), PackedInt32Array(13, 12, 16), PackedInt32Array(20, 19, 17), PackedInt32Array(17, 19, 18), PackedInt32Array(22, 21, 23), PackedInt32Array(23, 21, 24), PackedInt32Array(24, 21, 26), PackedInt32Array(24, 26, 25), PackedInt32Array(28, 27, 21), PackedInt32Array(21, 27, 26), PackedInt32Array(30, 29, 31), PackedInt32Array(31, 29, 32), PackedInt32Array(32, 29, 34), PackedInt32Array(32, 34, 33), PackedInt32Array(35, 6, 7), PackedInt32Array(36, 33, 37), PackedInt32Array(37, 33, 34), PackedInt32Array(33, 35, 32), PackedInt32Array(32, 35, 7), PackedInt32Array(38, 25, 39), PackedInt32Array(39, 25, 26), PackedInt32Array(34, 29, 25), PackedInt32Array(25, 29, 24), PackedInt32Array(28, 40, 27), PackedInt32Array(44, 43, 41), PackedInt32Array(41, 43, 42), PackedInt32Array(46, 45, 5), PackedInt32Array(5, 45, 4), PackedInt32Array(47, 50, 48), PackedInt32Array(48, 50, 49), PackedInt32Array(36, 37, 51), PackedInt32Array(51, 37, 52), PackedInt32Array(51, 52, 49), PackedInt32Array(50, 53, 49), PackedInt32Array(49, 53, 51), PackedInt32Array(51, 53, 54), PackedInt32Array(52, 55, 49), PackedInt32Array(50, 56, 53), PackedInt32Array(59, 58, 57), PackedInt32Array(60, 63, 61), PackedInt32Array(61, 63, 62), PackedInt32Array(57, 64, 62), PackedInt32Array(62, 64, 65), PackedInt32Array(65, 64, 66), PackedInt32Array(63, 67, 59), PackedInt32Array(63, 59, 62), PackedInt32Array(62, 59, 57), PackedInt32Array(31, 69, 30), PackedInt32Array(30, 69, 68), PackedInt32Array(69, 70, 71), PackedInt32Array(71, 70, 72), PackedInt32Array(72, 70, 73), PackedInt32Array(75, 74, 76), PackedInt32Array(76, 74, 71), PackedInt32Array(74, 68, 71), PackedInt32Array(71, 68, 69), PackedInt32Array(74, 77, 68), PackedInt32Array(78, 81, 79), PackedInt32Array(79, 81, 80), PackedInt32Array(83, 82, 84), PackedInt32Array(84, 82, 80), PackedInt32Array(83, 85, 82), PackedInt32Array(81, 88, 84), PackedInt32Array(84, 88, 86), PackedInt32Array(86, 88, 87), PackedInt32Array(84, 80, 81), PackedInt32Array(48, 89, 47), PackedInt32Array(47, 89, 90), PackedInt32Array(90, 89, 91), PackedInt32Array(94, 93, 92), PackedInt32Array(96, 95, 97), PackedInt32Array(97, 95, 92), PackedInt32Array(92, 95, 94), PackedInt32Array(91, 89, 95), PackedInt32Array(95, 89, 94), PackedInt32Array(91, 98, 90), PackedInt32Array(61, 99, 60), PackedInt32Array(60, 99, 100), PackedInt32Array(100, 99, 101), PackedInt32Array(104, 103, 102), PackedInt32Array(106, 105, 107), PackedInt32Array(107, 105, 102), PackedInt32Array(102, 105, 104), PackedInt32Array(101, 99, 105), PackedInt32Array(105, 99, 104), PackedInt32Array(101, 108, 100), PackedInt32Array(110, 109, 111), PackedInt32Array(111, 109, 112), PackedInt32Array(112, 109, 113), PackedInt32Array(113, 109, 114), PackedInt32Array(114, 109, 115), PackedInt32Array(76, 114, 75), PackedInt32Array(75, 114, 116), PackedInt32Array(116, 114, 115), PackedInt32Array(115, 117, 116), PackedInt32Array(113, 118, 112), PackedInt32Array(120, 119, 121), PackedInt32Array(121, 119, 122), PackedInt32Array(122, 119, 123), PackedInt32Array(123, 119, 124), PackedInt32Array(124, 119, 125), PackedInt32Array(79, 124, 78), PackedInt32Array(78, 124, 126), PackedInt32Array(126, 124, 125), PackedInt32Array(125, 127, 126), PackedInt32Array(123, 128, 122), PackedInt32Array(39, 130, 38), PackedInt32Array(38, 130, 129), PackedInt32Array(131, 129, 132), PackedInt32Array(132, 129, 130), PackedInt32Array(97, 131, 96), PackedInt32Array(96, 131, 132), PackedInt32Array(130, 133, 132), PackedInt32Array(132, 133, 134), PackedInt32Array(134, 133, 135), PackedInt32Array(131, 136, 129), PackedInt32Array(107, 138, 106), PackedInt32Array(106, 138, 137), PackedInt32Array(140, 139, 141), PackedInt32Array(141, 139, 137), PackedInt32Array(138, 144, 141), PackedInt32Array(141, 144, 142), PackedInt32Array(142, 144, 143), PackedInt32Array(141, 137, 138), PackedInt32Array(147, 146, 145), PackedInt32Array(121, 149, 120), PackedInt32Array(120, 149, 148), PackedInt32Array(145, 150, 148), PackedInt32Array(148, 150, 151), PackedInt32Array(151, 150, 152), PackedInt32Array(149, 153, 147), PackedInt32Array(149, 147, 148), PackedInt32Array(148, 147, 145), PackedInt32Array(23, 154, 22), PackedInt32Array(22, 154, 155), PackedInt32Array(155, 154, 156), PackedInt32Array(158, 157, 156), PackedInt32Array(156, 157, 155), PackedInt32Array(155, 157, 159), PackedInt32Array(111, 158, 110), PackedInt32Array(110, 158, 156), PackedInt32Array(154, 160, 156), PackedInt32Array(158, 161, 157), PackedInt32Array(45, 46, 162), PackedInt32Array(162, 164, 163), PackedInt32Array(45, 162, 165), PackedInt32Array(165, 162, 163), PackedInt32Array(168, 167, 166), PackedInt32Array(40, 28, 168), PackedInt32Array(168, 166, 40), PackedInt32Array(40, 166, 164), PackedInt32Array(164, 166, 163), PackedInt32Array(167, 14, 166), PackedInt32Array(166, 14, 15)] geometry_parsed_geometry_type = 1 [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_ng1ul"] @@ -87,10 +87,10 @@ size = Vector3(9.8421, 3.074, 7.48355) material = ExtResource("1_ng1ul") [node name="CSGBox3D4" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.4902663, 0.843177, 5.73304) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.4902663, 1.1058564, 5.73304) operation = 2 use_collision = true -size = Vector3(1.5039063, 2.81146, 1.43037) +size = Vector3(1.504, 2.286, 1.504) material = ExtResource("1_ng1ul") [node name="CSGBox3D19" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] @@ -195,21 +195,21 @@ material = ExtResource("1_ng1ul") transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -4.9493265, 4.34085, 3.07464) operation = 2 use_collision = true -size = Vector3(1.43066, 2.25876, 1.43037) +size = Vector3(1.504, 2.259, 1.504) material = ExtResource("1_ng1ul") [node name="CSGBox3D26" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] transform = Transform3D(-1, 0, -8.742279e-08, 0, 1, 0, 8.742279e-08, 0, -1, -12.553127, 4.340849, -9.004332) operation = 2 use_collision = true -size = Vector3(1.43066, 2.25876, 1.43037) +size = Vector3(1.504, 2.259, 1.504) material = ExtResource("1_ng1ul") [node name="CSGBox3D25" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -10.515276, 4.34085, -6.63972) operation = 2 use_collision = true -size = Vector3(1.43066, 2.25876, 1.43037) +size = Vector3(1.504, 2.259, 1.504) material = ExtResource("1_ng1ul") [node name="CSGBox3D28" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] @@ -363,7 +363,7 @@ material = ExtResource("1_ng1ul") transform = Transform3D(-4.3711378e-08, 0, -1, 0, 1, 0, 1, 0, -4.3711378e-08, 5.6189175, 4.34085, -6.384443) operation = 2 use_collision = true -size = Vector3(1.43066, 2.25876, 1.43037) +size = Vector3(1.504, 2.25876, 1.504) material = ExtResource("1_ng1ul") [node name="CSGBox3D50" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] @@ -377,7 +377,7 @@ material = ExtResource("1_ng1ul") transform = Transform3D(-4.3711378e-08, 0, -1, 0, 1, 0, 1, 0, -4.3711378e-08, 11.184867, 4.34085, 3.3299174) operation = 2 use_collision = true -size = Vector3(1.43066, 2.25876, 1.43037) +size = Vector3(1.504, 2.25876, 1.504) material = ExtResource("1_ng1ul") [node name="floor" type="CSGBox3D" parent="NavigationRegion3D/CSGCombiner3D"] @@ -397,21 +397,6 @@ shadow_enabled = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.039836764, -0.0014820099, 0.5135803) slide_on_ceiling = false -[node name="NpcUnit" type="NpcUnit" parent="." node_paths=PackedStringArray("patrol_path")] -patrol_path = NodePath("../PatrolPath") - -[node name="EnemyWretched" parent="NpcUnit" instance=ExtResource("3_7ng1a")] -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -0.68063784, 0.023195954, 3.1014705) - -[node name="EnemyWretched2" parent="NpcUnit" instance=ExtResource("3_7ng1a")] -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 1.2873832, 0.023196908, 3.055359) - -[node name="EnemyWretched3" parent="NpcUnit" instance=ExtResource("3_7ng1a")] -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -0.2727146, 0.023196908, 4.665185) - -[node name="EnemyWretched4" parent="NpcUnit" instance=ExtResource("3_7ng1a")] -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 1.5723263, 0.023197861, 4.477292) - [node name="PatrolPath" type="PatrolPath" parent="."] [node name="Node3D2" type="Node3D" parent="PatrolPath"] @@ -425,3 +410,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.351397, -0.0014858246, -1 [node name="Node3D5" type="Node3D" parent="PatrolPath"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.44426918, -0.0014839172, -16.707285) + +[node name="NpcUnit" parent="." node_paths=PackedStringArray("patrol_path") instance=ExtResource("3_7ng1a")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.6569076, -9.536743e-07, 13.002816) +patrol_path = NodePath("../PatrolPath") diff --git a/project/objects/enemies/enemy_wretched.tscn b/project/objects/enemies/enemy_wretched.tscn index 6347b0fd..bd8b1c42 100644 --- a/project/objects/enemies/enemy_wretched.tscn +++ b/project/objects/enemies/enemy_wretched.tscn @@ -18,7 +18,6 @@ unique_name_in_owner = true [node name="NavigationAgent3D" type="NavigationAgent3D" parent="."] unique_name_in_owner = true path_desired_distance = 0.25 -debug_enabled = true [node name="PlayerDetector" type="PlayerDetector" parent="."] unique_name_in_owner = true diff --git a/project/objects/units/unit_4_wretched.tscn b/project/objects/units/unit_4_wretched.tscn new file mode 100644 index 00000000..bc1e47b7 --- /dev/null +++ b/project/objects/units/unit_4_wretched.tscn @@ -0,0 +1,17 @@ +[gd_scene load_steps=2 format=3 uid="uid://5hg5eirw7v8n"] + +[ext_resource type="PackedScene" uid="uid://dqlqgk1veyos8" path="res://objects/enemies/enemy_wretched.tscn" id="1_l77gx"] + +[node name="NpcUnit" type="NpcUnit"] + +[node name="EnemyWretched" parent="." instance=ExtResource("1_l77gx")] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -0.9145346, 0.023195954, -0.63123465) + +[node name="EnemyWretched2" parent="." instance=ExtResource("1_l77gx")] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 1.0534863, 0.023196908, -0.6773462) + +[node name="EnemyWretched3" parent="." instance=ExtResource("1_l77gx")] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -0.5066114, 0.023196908, 0.93247986) + +[node name="EnemyWretched4" parent="." instance=ExtResource("1_l77gx")] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 1.3384295, 0.023197861, 0.74458694)