diff --git a/modules/behaviour_nodes/behaviour_tree.cpp b/modules/behaviour_nodes/behaviour_tree.cpp index 7268f749cf..7b36bc5cbc 100644 --- a/modules/behaviour_nodes/behaviour_tree.cpp +++ b/modules/behaviour_nodes/behaviour_tree.cpp @@ -1,11 +1,14 @@ #include "behaviour_tree.h" #include "behaviour_nodes/behaviour_composite.h" #include "behaviour_nodes/behaviour_node.h" -#include "behaviour_nodes/control_nodes.h" #include "core/config/engine.h" +#include "core/object/class_db.h" +#include "core/object/object.h" #include "core/variant/typed_array.h" -void BehaviourTree::_bind_methods() {} +void BehaviourTree::_bind_methods() { + ADD_SIGNAL(MethodInfo("current_behaviour_changed", PropertyInfo(Variant::OBJECT, "new_behaviour", PROPERTY_HINT_NODE_TYPE, "BehaviourNode"))); +} void BehaviourTree::process() { do { @@ -47,6 +50,7 @@ bool BehaviourTree::execute_next() { } if (this->current->get_parent() != next) { next->enter(); + emit_signal("current_behaviour_changed", next); } this->current = next; return this->current != this->root && (cast_to(this->current) || this->current->get_status() != BehaviourNode::Running); diff --git a/project/assets/characters/bot.blend b/project/assets/characters/bot.blend index 79255067b0..623bcda5a8 100644 Binary files a/project/assets/characters/bot.blend and b/project/assets/characters/bot.blend differ diff --git a/project/assets/characters/bot.blend1 b/project/assets/characters/bot.blend1 index b37fa713f7..b57c03df76 100644 Binary files a/project/assets/characters/bot.blend1 and b/project/assets/characters/bot.blend1 differ diff --git a/project/assets/characters/bot_animations/ko_high.res b/project/assets/characters/bot_animations/ko_high.res index bc871f0389..17b6c88ac4 100644 Binary files a/project/assets/characters/bot_animations/ko_high.res and b/project/assets/characters/bot_animations/ko_high.res differ diff --git a/project/assets/prototype_textures/Red/texture_01.png.import b/project/assets/prototype_textures/Red/texture_01.png.import index 5123c645b0..18470632d2 100644 --- a/project/assets/prototype_textures/Red/texture_01.png.import +++ b/project/assets/prototype_textures/Red/texture_01.png.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://c2uvr1d00euop" -path="res://.godot/imported/texture_01.png-065870243ec51bcadb3ca8607066027c.ctex" +path.s3tc="res://.godot/imported/texture_01.png-065870243ec51bcadb3ca8607066027c.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://assets/prototype_textures/Red/texture_01.png" -dest_files=["res://.godot/imported/texture_01.png-065870243ec51bcadb3ca8607066027c.ctex"] +dest_files=["res://.godot/imported/texture_01.png-065870243ec51bcadb3ca8607066027c.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,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 +38,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 diff --git a/project/behaviours/branches/sequence_find_weapon.tscn b/project/behaviours/branches/sequence_find_weapon.tscn index 85687dad09..48d27852f5 100644 --- a/project/behaviours/branches/sequence_find_weapon.tscn +++ b/project/behaviours/branches/sequence_find_weapon.tscn @@ -17,7 +17,7 @@ script = ExtResource("2_5438c") [node name="BehaviourSequence" type="BehaviourSequence" parent="BehaviourAlwaysSuccess" unique_id=545263859] -[node name="MoveToTarget" type="BehaviourAction" parent="BehaviourAlwaysSuccess/BehaviourSequence" unique_id=1081201512] +[node name="MoveToItem" type="BehaviourAction" parent="BehaviourAlwaysSuccess/BehaviourSequence" unique_id=1081201512] script = ExtResource("3_5438c") [node name="PickupItem" type="BehaviourAction" parent="BehaviourAlwaysSuccess/BehaviourSequence" unique_id=2083134526] diff --git a/project/behaviours/trees/enemy_behaviours.tscn b/project/behaviours/trees/enemy_behaviours.tscn index a3a0d1ab37..7e30fbc861 100644 --- a/project/behaviours/trees/enemy_behaviours.tscn +++ b/project/behaviours/trees/enemy_behaviours.tscn @@ -53,26 +53,26 @@ script = SubResource("GDScript_xqvpn") wait_time = 0.1 one_shot = true -[node name="CombatSequence" type="BehaviourSequence" parent="BehaviourRepeater/BehaviourSelector" unique_id=611769881] +[node name="SequenceCombat" type="BehaviourSequence" parent="BehaviourRepeater/BehaviourSelector" unique_id=611769881] -[node name="SelectTarget" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/CombatSequence" unique_id=56930655] +[node name="SelectTarget" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat" unique_id=56930655] script = ExtResource("2_1p4o0") -[node name="SelectorCombat" type="BehaviourSelector" parent="BehaviourRepeater/BehaviourSelector/CombatSequence" unique_id=460186240] +[node name="SelectorCombat" type="BehaviourSelector" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat" unique_id=460186240] -[node name="SequenceFindWeapon" parent="BehaviourRepeater/BehaviourSelector/CombatSequence/SelectorCombat" unique_id=1379140695 instance=ExtResource("4_d53py")] +[node name="SequenceFindWeapon" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat/SelectorCombat" unique_id=1379140695 instance=ExtResource("4_d53py")] -[node name="AlwaysSuccessAttack" type="BehaviourAlwaysSuccess" parent="BehaviourRepeater/BehaviourSelector/CombatSequence/SelectorCombat" unique_id=1246764318] +[node name="AlwaysSuccessAttack" type="BehaviourAlwaysSuccess" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat/SelectorCombat" unique_id=1246764318] -[node name="SequenceAttack" type="BehaviourSequence" parent="BehaviourRepeater/BehaviourSelector/CombatSequence/SelectorCombat/AlwaysSuccessAttack" unique_id=560445563] +[node name="SequenceAttack" type="BehaviourSequence" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat/SelectorCombat/AlwaysSuccessAttack" unique_id=560445563] -[node name="SelectTarget" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/CombatSequence/SelectorCombat/AlwaysSuccessAttack/SequenceAttack" unique_id=1912259269] +[node name="SelectEnemy" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat/SelectorCombat/AlwaysSuccessAttack/SequenceAttack" unique_id=1912259269] script = ExtResource("2_1p4o0") -[node name="ApproachTarget" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/CombatSequence/SelectorCombat/AlwaysSuccessAttack/SequenceAttack" unique_id=2073752420] +[node name="ApproachEnemy" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat/SelectorCombat/AlwaysSuccessAttack/SequenceAttack" unique_id=2073752420] script = ExtResource("7_tx7q7") -[node name="SelectorAttackAnimation" parent="BehaviourRepeater/BehaviourSelector/CombatSequence/SelectorCombat/AlwaysSuccessAttack/SequenceAttack" unique_id=465551260 instance=ExtResource("7_bmb0k")] +[node name="SelectorAttackAnimation" parent="BehaviourRepeater/BehaviourSelector/SequenceCombat/SelectorCombat/AlwaysSuccessAttack/SequenceAttack" unique_id=465551260 instance=ExtResource("7_bmb0k")] [node name="PatrolSequence" type="BehaviourSequence" parent="BehaviourRepeater/BehaviourSelector" unique_id=92762658] @@ -81,7 +81,7 @@ script = ExtResource("3_1fc8h") [node name="BehaviourAlwaysSuccess" type="BehaviourAlwaysSuccess" parent="BehaviourRepeater/BehaviourSelector/PatrolSequence" unique_id=262177741] -[node name="ApproachTarget" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/PatrolSequence/BehaviourAlwaysSuccess" unique_id=1164066260] +[node name="ApproachPatrolTarget" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector/PatrolSequence/BehaviourAlwaysSuccess" unique_id=1164066260] script = ExtResource("7_tx7q7") [node name="Idle" type="BehaviourAction" parent="BehaviourRepeater/BehaviourSelector" unique_id=2051783162] diff --git a/project/objects/enemy.tscn b/project/objects/enemy.tscn index 5a2590b282..af6a3e8a37 100644 --- a/project/objects/enemy.tscn +++ b/project/objects/enemy.tscn @@ -63,19 +63,50 @@ size = Vector3(0.33496094, 0.5253906, 0.26367188) [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_882u1"] radius = 0.2133789 +[sub_resource type="GDScript" id="GDScript_3hb37"] +resource_name = "DebugLabel" +script/source = "extends Label3D + +var new_text : String = \"\" + +func _behaviour_changed(behaviour : BehaviourNode): + if not new_text.is_empty(): + new_text += \"\\n\" + for i in $\"../BehaviourTree\".get_path_to(behaviour).get_name_count() - 2: + new_text += \"| \" + new_text += \"- > \" + new_text += behaviour.get_name() + if behaviour is BehaviourAction: + match behaviour.get_status(): + BehaviourNode.Fail: + new_text += \" (FAIL)\" + BehaviourNode.Success: + new_text += \" (SUCCESS)\" + BehaviourNode.Running: + new_text += \" (RUNNING)\" + +func _ready(): + $\"../BehaviourTree\".current_behaviour_changed.connect(_behaviour_changed) + +func _process(_delta): + if not new_text.is_empty(): + text = new_text + new_text = \"\" +" + [sub_resource type="CylinderShape3D" id="CylinderShape3D_we7g8"] height = 3.3642578 radius = 9.955078 -[node name="bot" unique_id=1620071502 groups=["EnemyHitbox"] instance=ExtResource("1_882u1")] +[node name="bot" unique_id=1098018666 groups=["EnemyHitbox"] instance=ExtResource("1_882u1")] collision_layer = 2 collision_mask = 3 script = SubResource("GDScript_882u1") -[node name="Mesh" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="0" unique_id=979271948] +[node name="Mesh" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(1205224726) index="0" unique_id=1628401802] material_override = SubResource("StandardMaterial3D_41oev") -[node name="HandR" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="1" unique_id=957498611] +[node name="HandR" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(1205224726) index="1" unique_id=957498611] transform = Transform3D(0.015967373, -0.083946444, 0.9963424, -0.17989334, -0.98045003, -0.07972447, 0.9835564, -0.17796235, -0.030756809, 0.27221423, 0.7951686, 0.024477992) bone_name = "hand.r" bone_idx = 10 @@ -100,7 +131,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.7755576e-16, 0.10578142, 2 script = ExtResource("3_3hb37") damage_group = "PlayerHitbox" -[node name="HandL" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="2" unique_id=1761081841] +[node name="HandL" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(1205224726) index="2" unique_id=1761081841] transform = Transform3D(-0.039434362, 0.07924447, -0.9960749, 0.12679999, -0.9883944, -0.083653376, -0.99114394, -0.12960118, 0.028928574, -0.2710728, 0.7714727, 0.0945672) bone_name = "hand.l" bone_idx = 7 @@ -119,7 +150,7 @@ transform = Transform3D(1.0000169, -1.5795231e-06, -3.874302e-07, 8.046627e-07, shape = SubResource("BoxShape3D_we7g8") debug_color = Color(0.9966913, 0, 0.17880186, 1) -[node name="AnimationPlayer" parent="." index="1" unique_id=741852883] +[node name="AnimationPlayer" parent="." index="1" unique_id=413547776] unique_name_in_owner = true root_motion_track = NodePath("Character/Skeleton3D:root") @@ -127,15 +158,29 @@ root_motion_track = NodePath("Character/Skeleton3D:root") transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) shape = SubResource("CapsuleShape3D_882u1") -[node name="BehaviourTree" parent="." index="3" unique_id=82050956 instance=ExtResource("3_we7g8")] +[node name="Label3D" type="Label3D" parent="." index="3" unique_id=1185308080] +process_mode = 3 +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.2257917, 0) +pixel_size = 0.0005 +billboard = 1 +fixed_size = true +render_priority = 10 +text = "SOMETHING WENT WRONG!!!" +horizontal_alignment = 0 +vertical_alignment = 2 +autowrap_trim_flags = 0 +justification_flags = 0 +script = SubResource("GDScript_3hb37") -[node name="AwarenessArea" parent="." index="4" unique_id=986494999 instance=ExtResource("4_we7g8")] +[node name="BehaviourTree" parent="." index="4" unique_id=82050956 instance=ExtResource("3_we7g8")] + +[node name="AwarenessArea" parent="." index="5" unique_id=986494999 instance=ExtResource("4_we7g8")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.0324535, 0) [node name="CollisionShape3D" parent="AwarenessArea" index="0" unique_id=2035583636] shape = SubResource("CylinderShape3D_we7g8") -[node name="ItemAwareness" parent="." index="5" unique_id=697341779 instance=ExtResource("4_we7g8")] +[node name="ItemAwareness" parent="." index="6" unique_id=697341779 instance=ExtResource("4_we7g8")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.0324535, 0) collision_mask = 1 target_group = "WeaponPickup" diff --git a/project/objects/player.tscn b/project/objects/player.tscn index 8485220be2..e2875ccfd5 100644 --- a/project/objects/player.tscn +++ b/project/objects/player.tscn @@ -132,7 +132,7 @@ size = Vector3(0.33496094, 0.8294678, 0.4711914) height = 1.8466797 radius = 0.89404297 -[node name="bot" unique_id=1620071502 groups=["PlayerHitbox"] instance=ExtResource("1_eqqp1")] +[node name="bot" unique_id=1195498535 groups=["PlayerHitbox"] instance=ExtResource("1_eqqp1")] collision_layer = 2 collision_mask = 3 script = SubResource("GDScript_eqqp1") @@ -162,10 +162,10 @@ transform = Transform3D(0.981895, -5.3638707e-09, -0.18942553, 5.529141e-09, 1, current = true fov = 52.5 -[node name="Mesh" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="0" unique_id=979271948] +[node name="Mesh" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(551696444) index="0" unique_id=625937078] material_override = SubResource("StandardMaterial3D_f46kd") -[node name="HandR" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="1" unique_id=385862689] +[node name="HandR" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(551696444) index="1" unique_id=385862689] transform = Transform3D(0.015967373, -0.083946444, 0.9963424, -0.17989334, -0.98045003, -0.07972447, 0.9835564, -0.17796235, -0.030756809, 0.27221423, 0.7951686, 0.024477992) bone_name = "hand.r" bone_idx = 10 @@ -190,7 +190,7 @@ script = ExtResource("5_f46kd") damage_group = "EnemyHitbox" deal_damage = true -[node name="HandL" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="2" unique_id=279793409] +[node name="HandL" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(551696444) index="2" unique_id=279793409] transform = Transform3D(-0.039434362, 0.07924447, -0.9960749, 0.12679999, -0.9883944, -0.083653376, -0.99114394, -0.12960118, 0.028928574, -0.2710728, 0.7714727, 0.0945672) bone_name = "hand.l" bone_idx = 7 @@ -208,7 +208,7 @@ transform = Transform3D(1.0000169, -1.5944242e-06, -4.04194e-07, 6.556511e-07, 1 shape = SubResource("BoxShape3D_uxov2") debug_color = Color(0.9966913, 0, 0.17880186, 1) -[node name="LegR" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(2131828200) index="3" unique_id=2088257762] +[node name="LegR" type="BoneAttachment3D" parent="Character/Skeleton3D" parent_id_path=PackedInt32Array(551696444) index="3" unique_id=2088257762] transform = Transform3D(0.9947343, 0.10095803, 0.017639676, 0.10222586, -0.98967797, -0.1004331, 0.0073180734, 0.1017075, -0.9947873, 0.14436838, 0.42896914, -0.076926425) bone_name = "leg.lower.r" bone_idx = 14 @@ -226,7 +226,7 @@ transform = Transform3D(1, -5.960372e-07, -1.0579633e-06, 5.960361e-07, 1, -1.03 shape = SubResource("BoxShape3D_nmc1l") debug_color = Color(0.9966913, 0, 0.17880186, 1) -[node name="AnimationPlayer" parent="." index="5" unique_id=741852883] +[node name="AnimationPlayer" parent="." index="5" unique_id=473246272] unique_name_in_owner = true root_motion_track = NodePath("Character/Skeleton3D:root") diff --git a/project/scenes/levels/game_world.tscn b/project/scenes/levels/game_world.tscn index d791cd848a..9ad80fc65e 100644 --- a/project/scenes/levels/game_world.tscn +++ b/project/scenes/levels/game_world.tscn @@ -2,6 +2,7 @@ [ext_resource type="Texture2D" uid="uid://cpsvnjmw5300a" path="res://assets/prototype_textures/Green/texture_01.png" id="1_7y55x"] [ext_resource type="PackedScene" uid="uid://d0yivm54mjib2" path="res://objects/player.tscn" id="1_upt1h"] +[ext_resource type="Texture2D" uid="uid://c2uvr1d00euop" path="res://assets/prototype_textures/Red/texture_01.png" id="2_75bvq"] [ext_resource type="Texture2D" uid="uid://cx3fxgh11s4vh" path="res://assets/prototype_textures/Orange/texture_01.png" id="2_hyc8p"] [ext_resource type="PackedScene" uid="uid://1s2obm2l4f1a" path="res://objects/enemy.tscn" id="2_w0s2s"] [ext_resource type="PackedScene" uid="uid://djv4uhdtykukm" path="res://objects/arming_sword.tscn" id="5_hyc8p"] @@ -25,6 +26,10 @@ albedo_texture = ExtResource("1_7y55x") albedo_texture = ExtResource("1_7y55x") uv1_triplanar = true +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_bg1mu"] +albedo_texture = ExtResource("2_75bvq") +uv1_triplanar = true + [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_cryqq"] albedo_texture = ExtResource("2_hyc8p") uv1_triplanar = true @@ -36,7 +41,7 @@ uv1_triplanar = true [sub_resource type="PrismMesh" id="PrismMesh_hyc8p"] material = SubResource("StandardMaterial3D_hyc8p") left_to_right = 0.0 -size = Vector3(5.374, 2.99, 2.75) +size = Vector3(6.784, 2.99, 6.1) [node name="GameWorld" type="Node3D" unique_id=306009803] @@ -44,7 +49,7 @@ size = Vector3(5.374, 2.99, 2.75) environment = SubResource("Environment_4r7d4") [node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=169512636] -transform = Transform3D(-0.99730414, 0.0635488, -0.03668976, 4.8204853e-08, 0.50000006, 0.86602545, 0.07337971, 0.8636907, -0.49865213, 0, 0, 0) +transform = Transform3D(0.8744706, 0.42009044, -0.24253945, 4.1992894e-08, 0.5000002, 0.86602545, 0.4850787, -0.7573137, 0.4372353, 0, 0, 0) shadow_enabled = true [node name="CSGCombiner3D" type="CSGCombiner3D" parent="." unique_id=1773598072] @@ -56,23 +61,47 @@ material_override = SubResource("StandardMaterial3D_75bvq") size = Vector3(36.41382, 0.25, 50) material = SubResource("StandardMaterial3D_b3nq0") +[node name="CSGBox3D3" type="CSGBox3D" parent="CSGCombiner3D" unique_id=540635528] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 18.670563, 3.0843391, 4.233795) +material_override = SubResource("StandardMaterial3D_75bvq") +size = Vector3(0.35809326, 6.16, 50) +material = SubResource("StandardMaterial3D_bg1mu") + +[node name="CSGBox3D5" type="CSGBox3D" parent="CSGCombiner3D" unique_id=619575778] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.54325104, 3.0843391, -20.536194) +material_override = SubResource("StandardMaterial3D_75bvq") +size = Vector3(36.612717, 6.16, 0.46002197) +material = SubResource("StandardMaterial3D_bg1mu") + +[node name="CSGBox3D6" type="CSGBox3D" parent="CSGCombiner3D" unique_id=980540481] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.54325104, 3.0843391, 29.023724) +material_override = SubResource("StandardMaterial3D_75bvq") +size = Vector3(36.612717, 6.16, 0.3809204) +material = SubResource("StandardMaterial3D_bg1mu") + +[node name="CSGBox3D4" type="CSGBox3D" parent="CSGCombiner3D" unique_id=1348919751] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.639027, 3.0843391, 4.233795) +material_override = SubResource("StandardMaterial3D_75bvq") +size = Vector3(0.35809326, 6.16, 50) +material = SubResource("StandardMaterial3D_bg1mu") + [node name="CSGBox3D2" type="CSGBox3D" parent="CSGCombiner3D" unique_id=1468524701] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.3704069, -16.194504) size = Vector3(11.69043, 3.234253, 9.1625595) material = SubResource("StandardMaterial3D_cryqq") [node name="CSGMesh3D" type="CSGMesh3D" parent="CSGCombiner3D" unique_id=1390383840] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.530771, 1.4929096, -16.254684) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.223477, 1.4929096, -14.654582) mesh = SubResource("PrismMesh_hyc8p") [node name="CSGMesh3D2" type="CSGMesh3D" parent="CSGCombiner3D" unique_id=1881924213] -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -8.5306, 1.4917104, -16.338177) +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -9.232916, 1.4917104, -14.66638) mesh = SubResource("PrismMesh_hyc8p") -[node name="bot" parent="." unique_id=1395504510 instance=ExtResource("1_upt1h")] -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.81944275, 2.9908073, -16.53226) +[node name="bot" parent="." unique_id=1195498535 instance=ExtResource("1_upt1h")] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0, 2.991, -17.607033) -[node name="bot7" parent="." unique_id=161717875 node_paths=PackedStringArray("path") instance=ExtResource("2_w0s2s")] +[node name="bot7" parent="." unique_id=1620071502 node_paths=PackedStringArray("path") instance=ExtResource("2_w0s2s")] transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -9.093315, 0, 1.792202) path = [NodePath("../Marker3D"), NodePath("../Marker3D2"), NodePath("../Marker3D3"), NodePath("../Marker3D4")] @@ -91,7 +120,7 @@ transform = Transform3D(-0.9973041, 0.063548714, -0.036689803, 5.1930144e-08, 0. [node name="Marker3D4" type="Marker3D" parent="." unique_id=1864554328] transform = Transform3D(-0.9973041, 0.063548714, -0.036689803, 5.1930144e-08, 0.5000001, 0.86602545, 0.073379725, 0.86369073, -0.4986521, -7.3572216, 0, -6.262743) -[node name="bot3" parent="." unique_id=186148752 node_paths=PackedStringArray("path") instance=ExtResource("2_w0s2s")] +[node name="bot3" parent="." unique_id=1894010791 node_paths=PackedStringArray("path") instance=ExtResource("2_w0s2s")] transform = Transform3D(0.3496833, 0, -0.93686795, 0, 1, 0, 0.93686795, 0, 0.3496833, -0.5668974, 0, 16.554804) path = [NodePath("../Marker3D5"), NodePath("../Marker3D6"), NodePath("../Marker3D7"), NodePath("../Marker3D8")]