just reorganised files thats it
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
[ext_resource type="Script" uid="uid://bivtfdl3p1brv" path="res://Scenes/CardPrinter/card_printer.gd" id="1_qft15"]
|
||||
[ext_resource type="Script" uid="uid://dkfswql8ui0bt" path="res://Scripts/interact_button.gd" id="4_eavi1"]
|
||||
[ext_resource type="PackedScene" uid="uid://b6i5w3mowcfcs" path="res://drafting_table.glb" id="4_kpujb"]
|
||||
[ext_resource type="PackedScene" uid="uid://b6i5w3mowcfcs" path="res://Scenes/DraftingTable/drafting_table.glb" id="4_kpujb"]
|
||||
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://Audio/shot1.wav" id="5_m033a"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_0ebt5"]
|
||||
|
||||
BIN
Scenes/DraftingTable/drafting_table.glb
Normal file
BIN
Scenes/DraftingTable/drafting_table.glb
Normal file
Binary file not shown.
37
Scenes/DraftingTable/drafting_table.glb.import
Normal file
37
Scenes/DraftingTable/drafting_table.glb.import
Normal file
@@ -0,0 +1,37 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://b6i5w3mowcfcs"
|
||||
path="res://.godot/imported/drafting_table.glb-9a5f41e6bf4edcc8c042380f52a70575.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Scenes/DraftingTable/drafting_table.glb"
|
||||
dest_files=["res://.godot/imported/drafting_table.glb-9a5f41e6bf4edcc8c042380f52a70575.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=1
|
||||
gltf/embedded_image_handling=1
|
||||
BIN
Scenes/DraftingTable/drafting_table_plan_tex.png
Normal file
BIN
Scenes/DraftingTable/drafting_table_plan_tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 80 KiB |
38
Scenes/DraftingTable/drafting_table_plan_tex.png.import
Normal file
38
Scenes/DraftingTable/drafting_table_plan_tex.png.import
Normal file
@@ -0,0 +1,38 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cx3u2fj5cniac"
|
||||
path.s3tc="res://.godot/imported/drafting_table_plan_tex.png-7b1786af0562d78c6bd0327df564d184.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
generator_parameters={
|
||||
"md5": "f6894ba0243c1df76fb5fa0fd58f104b"
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Scenes/DraftingTable/drafting_table_plan_tex.png"
|
||||
dest_files=["res://.godot/imported/drafting_table_plan_tex.png-7b1786af0562d78c6bd0327df564d184.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
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=0
|
||||
BIN
Scenes/FlowField/cube.glb
Normal file
BIN
Scenes/FlowField/cube.glb
Normal file
Binary file not shown.
37
Scenes/FlowField/cube.glb.import
Normal file
37
Scenes/FlowField/cube.glb.import
Normal file
@@ -0,0 +1,37 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://bkokjrjns7l6j"
|
||||
path="res://.godot/imported/cube.glb-8c7fddad925be67dc400ce95d4de5b99.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Scenes/FlowField/cube.glb"
|
||||
dest_files=["res://.godot/imported/cube.glb-8c7fddad925be67dc400ce95d4de5b99.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=1
|
||||
gltf/embedded_image_handling=1
|
||||
11
Scenes/FlowField/cube2.tscn
Normal file
11
Scenes/FlowField/cube2.tscn
Normal file
@@ -0,0 +1,11 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://ravcalfsha76"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bkokjrjns7l6j" path="res://Scenes/FlowField/cube.glb" id="1_7p7qy"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_d8upr"]
|
||||
resource_local_to_scene = true
|
||||
|
||||
[node name="cube" instance=ExtResource("1_7p7qy")]
|
||||
|
||||
[node name="Cube" parent="." index="0"]
|
||||
material_override = SubResource("StandardMaterial3D_d8upr")
|
||||
213
Scenes/FlowField/flow_field.gd
Normal file
213
Scenes/FlowField/flow_field.gd
Normal file
@@ -0,0 +1,213 @@
|
||||
class_name FlowField
|
||||
extends Node3D
|
||||
|
||||
signal path_updated()
|
||||
|
||||
@export var flow_node_scene: PackedScene
|
||||
@export var nodes: Array[FlowNode] = []
|
||||
@export var goals: Array[FlowNode] = []
|
||||
@export var starts: Array[FlowNode] = []
|
||||
@export var nodes_visible: bool = false
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
if !nodes_visible:
|
||||
for node: FlowNode in nodes:
|
||||
node.visible = false
|
||||
|
||||
|
||||
@warning_ignore("unused_parameter")
|
||||
func _process(delta: float) -> void:
|
||||
if !nodes_visible:
|
||||
return
|
||||
for node: FlowNode in nodes:
|
||||
if node.traversable and node.buildable:
|
||||
node.set_color(Color.WEB_GRAY)
|
||||
elif node.traversable and !node.buildable:
|
||||
node.set_color(Color.CORAL)
|
||||
else:
|
||||
node.set_color(Color.BLACK)
|
||||
if goals.has(node):
|
||||
node.set_color(Color.BLUE)
|
||||
if starts.has(node):
|
||||
node.set_color(Color.PINK)
|
||||
if magic_node:
|
||||
magic_node.set_color(Color.DEEP_PINK)
|
||||
|
||||
|
||||
func get_closest_traversable_point(pos: Vector3) -> FlowNode:
|
||||
var closest_point: FlowNode = null
|
||||
var closest_dist: float = 100000.0
|
||||
for node: FlowNode in nodes:
|
||||
if node.traversable and node.global_position.distance_to(pos) < closest_dist:
|
||||
closest_dist = node.global_position.distance_to(pos)
|
||||
closest_point = node
|
||||
return closest_point
|
||||
|
||||
|
||||
func get_closest_point_point(pos: Vector3) -> FlowNode:
|
||||
var closest_point: FlowNode = null
|
||||
var closest_dist: float = 100000.0
|
||||
for node: FlowNode in nodes:
|
||||
if node.global_position.distance_to(pos) < closest_dist:
|
||||
closest_dist = node.global_position.distance_to(pos)
|
||||
closest_point = node
|
||||
return closest_point
|
||||
|
||||
|
||||
func get_closest_buildable_point(pos: Vector3) -> FlowNode:
|
||||
var closest_point: FlowNode = null
|
||||
var closest_dist: float = 100000.0
|
||||
for node: FlowNode in nodes:
|
||||
if node.buildable and node.global_position.distance_to(pos) < closest_dist:
|
||||
closest_dist = node.global_position.distance_to(pos)
|
||||
closest_point = node
|
||||
return closest_point
|
||||
|
||||
|
||||
func test_traversability() -> bool:
|
||||
for node: FlowNode in starts:
|
||||
while node.best_path != null:
|
||||
if node.best_path.traversable:
|
||||
node = node.best_path
|
||||
else:
|
||||
return false
|
||||
return true
|
||||
|
||||
|
||||
func iterate_search(search_frontier: Array[FlowNode], reached: Array[FlowNode]) -> void:
|
||||
var current: FlowNode = search_frontier.pop_front()
|
||||
for node: FlowNode in current.connections:
|
||||
if !reached.has(node):
|
||||
reached.append(node)
|
||||
if node.traversable:
|
||||
search_frontier.append(node)
|
||||
node.best_path = current
|
||||
|
||||
|
||||
func calculate() -> void:
|
||||
var reached: Array[FlowNode] = []
|
||||
var search_frontier: Array[FlowNode] = []
|
||||
for node: FlowNode in goals:
|
||||
node.best_path = null
|
||||
reached.append(node)
|
||||
search_frontier.append(node)
|
||||
while search_frontier.size() > 0:
|
||||
iterate_search(search_frontier, reached)
|
||||
|
||||
|
||||
var magic_node: FlowNode = null
|
||||
func traversable_after_blocking_point(point: FlowNode) -> bool:
|
||||
magic_node = null
|
||||
var reached: Array[FlowNode] = [point]
|
||||
var search_frontier: Array[FlowNode] = []
|
||||
for node: FlowNode in point.connections:
|
||||
if node.best_path == point and node.traversable:
|
||||
reached.append(node)
|
||||
search_frontier.append(node)
|
||||
if search_frontier.size() == 0: # if no neighbors rely on this node, then we're all good
|
||||
return true
|
||||
while search_frontier.size() > 0:
|
||||
var current: FlowNode = search_frontier.pop_front()
|
||||
for node: FlowNode in current.connections:
|
||||
if !reached.has(node):
|
||||
if node.traversable and node.best_path != node and !reached.has(node.best_path):
|
||||
#if we havent already seen the node this neighbor goes to,
|
||||
#then all our searched nodes could swap to go this direction
|
||||
#and the path would still be traversable
|
||||
magic_node = node
|
||||
return true
|
||||
reached.append(node)
|
||||
if node.traversable:
|
||||
search_frontier.append(node)
|
||||
return false
|
||||
|
||||
|
||||
## Connects many nodes to a single single node, if any connections already
|
||||
## exist, this function disconnects them instead
|
||||
func connect_many_nodes(common_node: FlowNode, child_nodes: Array[FlowNode]) -> void:
|
||||
for node: FlowNode in child_nodes:
|
||||
if common_node.connections.has(node):
|
||||
disconnect_nodes(common_node, node)
|
||||
else:
|
||||
connect_nodes(common_node, node)
|
||||
|
||||
|
||||
func toggle_goal(nodes_to_toggle: Array[FlowNode]) -> void:
|
||||
for node: FlowNode in nodes_to_toggle:
|
||||
if goals.has(node):
|
||||
goals.erase(node)
|
||||
else:
|
||||
goals.append(node)
|
||||
|
||||
|
||||
func toggle_start(nodes_to_toggle: Array[FlowNode]) -> void:
|
||||
for node: FlowNode in nodes_to_toggle:
|
||||
if starts.has(node):
|
||||
starts.erase(node)
|
||||
else:
|
||||
starts.append(node)
|
||||
|
||||
|
||||
func toggle_traversable(node: FlowNode) -> bool:
|
||||
node.traversable = !node.traversable
|
||||
calculate()
|
||||
#TODO: technically the path only changed if the new path IS traversable
|
||||
path_updated.emit()
|
||||
return test_traversability()
|
||||
|
||||
|
||||
func toggle_buildable(node: FlowNode) -> void:
|
||||
node.buildable = !node.buildable
|
||||
|
||||
|
||||
func create_node(pos: Vector3 = Vector3.ZERO) -> FlowNode:
|
||||
var node: FlowNode = flow_node_scene.instantiate()
|
||||
node.position = pos
|
||||
node.set_color(Color.WEB_GRAY)
|
||||
nodes.append(node)
|
||||
add_child(node)
|
||||
node.owner = self
|
||||
return node
|
||||
|
||||
|
||||
func delete_node(node: FlowNode) -> void:
|
||||
for neighbor: FlowNode in node.connections:
|
||||
node.remove_connection(neighbor)
|
||||
nodes.erase(node)
|
||||
node.queue_free()
|
||||
|
||||
|
||||
func connect_nodes(node1: FlowNode, node2: FlowNode) -> void:
|
||||
if node1 != node2:
|
||||
node1.add_connection(node2)
|
||||
node2.add_connection(node1)
|
||||
|
||||
|
||||
func disconnect_nodes(node1: FlowNode, node2: FlowNode) -> void:
|
||||
if node1 != node2:
|
||||
node1.remove_connection(node2)
|
||||
node2.remove_connection(node1)
|
||||
|
||||
|
||||
func create_grid(x_size: int, y_size: int, gap: float) -> void:
|
||||
var grid: Array[Array] = []
|
||||
for x: int in x_size:
|
||||
var row: Array[FlowNode] = []
|
||||
for y: int in y_size:
|
||||
#var start_pos: Vector3 = Vector3.ZERO - (Vector3(gap * x_size, 0, gap * y_size) / 2.0)
|
||||
var point_position: Vector3 = Vector3((x - floori(x_size / 2.0)) * gap, 0, (y - floori(y_size / 2.0)) * gap)
|
||||
#point_position += global_position
|
||||
#row.append(create_node(start_pos + Vector3(gap * x, 0, gap * y)))
|
||||
row.append(create_node(point_position))
|
||||
grid.append(row)
|
||||
for x: int in grid.size():
|
||||
for y: int in grid[x].size():
|
||||
if y > 0:
|
||||
connect_nodes(grid[x][y], grid[x][y - 1])
|
||||
if x > 0:
|
||||
connect_nodes(grid[x][y], grid[x - 1][y])
|
||||
if y < grid[x].size() - 1:
|
||||
connect_nodes(grid[x][y], grid[x][y + 1])
|
||||
if x < grid.size() - 1:
|
||||
connect_nodes(grid[x][y], grid[x + 1][y])
|
||||
1
Scenes/FlowField/flow_field.gd.uid
Normal file
1
Scenes/FlowField/flow_field.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://r4nmfr8jfcjx
|
||||
12
Scenes/FlowField/flow_field.tscn
Normal file
12
Scenes/FlowField/flow_field.tscn
Normal file
@@ -0,0 +1,12 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://b7dwsqfmdqr8"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://r4nmfr8jfcjx" path="res://Scenes/FlowField/flow_field.gd" id="1_l46ob"]
|
||||
[ext_resource type="PackedScene" uid="uid://bssfvyxv5uo1f" path="res://Scenes/FlowField/flow_node.tscn" id="2_d6vkn"]
|
||||
[ext_resource type="PackedScene" uid="uid://cccowrgelgswj" path="res://Scenes/FlowField/flow_field_tool.tscn" id="3_apokv"]
|
||||
|
||||
[node name="FlowField" type="Node3D"]
|
||||
script = ExtResource("1_l46ob")
|
||||
flow_node_scene = ExtResource("2_d6vkn")
|
||||
|
||||
[node name="FlowFieldTool" parent="." node_paths=PackedStringArray("flow_field") instance=ExtResource("3_apokv")]
|
||||
flow_field = NodePath("..")
|
||||
140
Scenes/FlowField/flow_field_tool.tscn
Normal file
140
Scenes/FlowField/flow_field_tool.tscn
Normal file
@@ -0,0 +1,140 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://cccowrgelgswj"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://05c5q1v2nv8p" path="res://Scripts/flow_field_tool.gd" id="1_e7pmn"]
|
||||
|
||||
[sub_resource type="Environment" id="Environment_e7pmn"]
|
||||
ambient_light_source = 2
|
||||
ambient_light_color = Color(0.728822, 0.728822, 0.728822, 1)
|
||||
|
||||
[node name="FlowFieldTool" type="Node" node_paths=PackedStringArray("raycast", "project_raycast", "camera", "camera_pivot", "position_field", "x_field", "y_field", "z_field", "x_size_field", "y_size_field", "gap_field")]
|
||||
script = ExtResource("1_e7pmn")
|
||||
raycast = NodePath("CameraFocus/Camera3D/RayCast3D")
|
||||
project_raycast = NodePath("RayCast3D")
|
||||
camera = NodePath("CameraFocus/Camera3D")
|
||||
camera_pivot = NodePath("CameraFocus")
|
||||
position_field = NodePath("Position")
|
||||
x_field = NodePath("Position/x")
|
||||
y_field = NodePath("Position/y")
|
||||
z_field = NodePath("Position/z")
|
||||
x_size_field = NodePath("VBoxContainer/HBoxContainer/x_size")
|
||||
y_size_field = NodePath("VBoxContainer/HBoxContainer/y_size")
|
||||
gap_field = NodePath("VBoxContainer/HBoxContainer/gap")
|
||||
metadata/_custom_type_script = "uid://05c5q1v2nv8p"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
offset_right = 296.0
|
||||
offset_bottom = 572.0
|
||||
|
||||
[node name="Create" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Create Node"
|
||||
|
||||
[node name="Delete" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Remove Node"
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="GenerateGrid" type="Button" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Generate Grid"
|
||||
|
||||
[node name="x_size" type="LineEdit" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "15"
|
||||
placeholder_text = "x_size"
|
||||
|
||||
[node name="y_size" type="LineEdit" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "7"
|
||||
placeholder_text = "y_size"
|
||||
|
||||
[node name="gap" type="LineEdit" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "2.5"
|
||||
placeholder_text = "gap"
|
||||
|
||||
[node name="Connect" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Connect Nodes"
|
||||
|
||||
[node name="ProjectDownwards" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Stick node to floor"
|
||||
|
||||
[node name="MarkGoal" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Toggle Goal"
|
||||
|
||||
[node name="MarkStart" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Toggle Start"
|
||||
|
||||
[node name="ToggleTraversable" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Toggle Traversable"
|
||||
|
||||
[node name="ToggleBuildable" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Toggle Buildable"
|
||||
|
||||
[node name="Extrude" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Extrude"
|
||||
|
||||
[node name="Calculate" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Calculate"
|
||||
|
||||
[node name="Finalize" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Finalize"
|
||||
|
||||
[node name="Position" type="HBoxContainer" parent="."]
|
||||
visible = false
|
||||
anchors_preset = 1
|
||||
anchor_left = 1.0
|
||||
anchor_right = 1.0
|
||||
offset_left = -323.0
|
||||
offset_bottom = 41.0
|
||||
grow_horizontal = 0
|
||||
|
||||
[node name="x" type="LineEdit" parent="Position"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="y" type="LineEdit" parent="Position"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="z" type="LineEdit" parent="Position"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="CameraFocus" type="Node3D" parent="."]
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="CameraFocus"]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.34202, 0.939693, 0, -0.939693, 0.34202, 0, 8.50452, 3.40739)
|
||||
environment = SubResource("Environment_e7pmn")
|
||||
|
||||
[node name="RayCast3D" type="RayCast3D" parent="CameraFocus/Camera3D"]
|
||||
collision_mask = 64
|
||||
|
||||
[node name="RayCast3D" type="RayCast3D" parent="."]
|
||||
|
||||
[connection signal="pressed" from="VBoxContainer/Create" to="." method="_on_create_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Delete" to="." method="_on_create_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/HBoxContainer/GenerateGrid" to="." method="_on_generate_grid_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Connect" to="." method="_on_connect_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/ProjectDownwards" to="." method="_on_project_downwards_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/MarkGoal" to="." method="_on_mark_goal_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/MarkStart" to="." method="_on_mark_start_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/ToggleTraversable" to="." method="_on_toggle_traversable_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/ToggleBuildable" to="." method="_on_toggle_buildable_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Extrude" to="." method="_on_extrude_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Calculate" to="." method="_on_calculate_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Finalize" to="." method="_on_finalize_button_pressed"]
|
||||
[connection signal="text_changed" from="Position/x" to="." method="_on_x_field_changed"]
|
||||
[connection signal="text_changed" from="Position/y" to="." method="_on_y_field_changed"]
|
||||
[connection signal="text_changed" from="Position/z" to="." method="_on_z_field_changed"]
|
||||
662
Scenes/FlowField/flow_field_tool_output.tscn
Normal file
662
Scenes/FlowField/flow_field_tool_output.tscn
Normal file
@@ -0,0 +1,662 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://2vv6mrxiwibf"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://r4nmfr8jfcjx" path="res://Scenes/FlowField/flow_field.gd" id="1_ca7vt"]
|
||||
[ext_resource type="PackedScene" uid="uid://bssfvyxv5uo1f" path="res://Scenes/FlowField/flow_node.tscn" id="2_s6hwk"]
|
||||
|
||||
[node name="FlowField" type="Node3D" node_paths=PackedStringArray("nodes", "goals")]
|
||||
script = ExtResource("1_ca7vt")
|
||||
flow_node_scene = ExtResource("2_s6hwk")
|
||||
nodes = [NodePath("FlowNode"), NodePath("@StaticBody3D@10"), NodePath("@StaticBody3D@11"), NodePath("@StaticBody3D@12"), NodePath("@StaticBody3D@13"), NodePath("@StaticBody3D@14"), NodePath("@StaticBody3D@15"), NodePath("@StaticBody3D@16"), NodePath("@StaticBody3D@17"), NodePath("@StaticBody3D@18"), NodePath("@StaticBody3D@19"), NodePath("@StaticBody3D@20"), NodePath("@StaticBody3D@21"), NodePath("@StaticBody3D@22"), NodePath("@StaticBody3D@23"), NodePath("@StaticBody3D@24"), NodePath("@StaticBody3D@25"), NodePath("@StaticBody3D@26"), NodePath("@StaticBody3D@27"), NodePath("@StaticBody3D@28"), NodePath("@StaticBody3D@29"), NodePath("@StaticBody3D@30"), NodePath("@StaticBody3D@31"), NodePath("@StaticBody3D@32"), NodePath("@StaticBody3D@33"), NodePath("@StaticBody3D@34"), NodePath("@StaticBody3D@35"), NodePath("@StaticBody3D@36"), NodePath("@StaticBody3D@37"), NodePath("@StaticBody3D@38"), NodePath("@StaticBody3D@39"), NodePath("@StaticBody3D@40"), NodePath("@StaticBody3D@41"), NodePath("@StaticBody3D@42"), NodePath("@StaticBody3D@43"), NodePath("@StaticBody3D@44"), NodePath("@StaticBody3D@45"), NodePath("@StaticBody3D@46"), NodePath("@StaticBody3D@47"), NodePath("@StaticBody3D@48"), NodePath("@StaticBody3D@49"), NodePath("@StaticBody3D@50"), NodePath("@StaticBody3D@51"), NodePath("@StaticBody3D@52"), NodePath("@StaticBody3D@53"), NodePath("@StaticBody3D@54"), NodePath("@StaticBody3D@55"), NodePath("@StaticBody3D@56"), NodePath("@StaticBody3D@57"), NodePath("@StaticBody3D@58"), NodePath("@StaticBody3D@59"), NodePath("@StaticBody3D@60"), NodePath("@StaticBody3D@61"), NodePath("@StaticBody3D@62"), NodePath("@StaticBody3D@63"), NodePath("@StaticBody3D@64"), NodePath("@StaticBody3D@65"), NodePath("@StaticBody3D@66"), NodePath("@StaticBody3D@67"), NodePath("@StaticBody3D@68"), NodePath("@StaticBody3D@69"), NodePath("@StaticBody3D@70"), NodePath("@StaticBody3D@71"), NodePath("@StaticBody3D@72"), NodePath("@StaticBody3D@73"), NodePath("@StaticBody3D@74"), NodePath("@StaticBody3D@75"), NodePath("@StaticBody3D@76"), NodePath("@StaticBody3D@77"), NodePath("@StaticBody3D@78"), NodePath("@StaticBody3D@79"), NodePath("@StaticBody3D@80"), NodePath("@StaticBody3D@81"), NodePath("@StaticBody3D@82"), NodePath("@StaticBody3D@83"), NodePath("@StaticBody3D@84"), NodePath("@StaticBody3D@85"), NodePath("@StaticBody3D@86"), NodePath("@StaticBody3D@87"), NodePath("@StaticBody3D@88"), NodePath("@StaticBody3D@89"), NodePath("@StaticBody3D@90"), NodePath("@StaticBody3D@91"), NodePath("@StaticBody3D@92"), NodePath("@StaticBody3D@93"), NodePath("@StaticBody3D@94"), NodePath("@StaticBody3D@95"), NodePath("@StaticBody3D@96"), NodePath("@StaticBody3D@97"), NodePath("@StaticBody3D@98"), NodePath("@StaticBody3D@99"), NodePath("@StaticBody3D@100"), NodePath("@StaticBody3D@101"), NodePath("@StaticBody3D@102"), NodePath("@StaticBody3D@103"), NodePath("@StaticBody3D@104"), NodePath("@StaticBody3D@105"), NodePath("@StaticBody3D@106"), NodePath("@StaticBody3D@107"), NodePath("@StaticBody3D@108"), NodePath("@StaticBody3D@109"), NodePath("@StaticBody3D@110"), NodePath("@StaticBody3D@111"), NodePath("@StaticBody3D@112"), NodePath("@StaticBody3D@113"), NodePath("@StaticBody3D@385"), NodePath("@StaticBody3D@387"), NodePath("@StaticBody3D@389"), NodePath("@StaticBody3D@391"), NodePath("@StaticBody3D@393"), NodePath("@StaticBody3D@395"), NodePath("@StaticBody3D@397"), NodePath("@StaticBody3D@411"), NodePath("@StaticBody3D@414"), NodePath("@StaticBody3D@416"), NodePath("@StaticBody3D@458"), NodePath("@StaticBody3D@464"), NodePath("@StaticBody3D@466"), NodePath("@StaticBody3D@468"), NodePath("@StaticBody3D@470"), NodePath("@StaticBody3D@472"), NodePath("@StaticBody3D@474"), NodePath("@StaticBody3D@476"), NodePath("@StaticBody3D@490"), NodePath("@StaticBody3D@493"), NodePath("@StaticBody3D@495")]
|
||||
goals = [NodePath("@StaticBody3D@458")]
|
||||
metadata/_custom_type_script = "uid://r4nmfr8jfcjx"
|
||||
|
||||
[node name="FlowNode" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@10"), NodePath("../@StaticBody3D@16"), NodePath("../@StaticBody3D@464")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@10" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, -0.0404969, -5)
|
||||
connections = [NodePath("../FlowNode"), NodePath("../@StaticBody3D@11"), NodePath("../@StaticBody3D@17"), NodePath("../@StaticBody3D@466")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@11" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@10"), NodePath("../@StaticBody3D@12"), NodePath("../@StaticBody3D@18"), NodePath("../@StaticBody3D@468")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@12" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, -0.0404969, 2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@11"), NodePath("../@StaticBody3D@13"), NodePath("../@StaticBody3D@19"), NodePath("../@StaticBody3D@470")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@13" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@12"), NodePath("../@StaticBody3D@14"), NodePath("../@StaticBody3D@20"), NodePath("../@StaticBody3D@472")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@14" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@13"), NodePath("../@StaticBody3D@15"), NodePath("../@StaticBody3D@21"), NodePath("../@StaticBody3D@474")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@15" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@14"), NodePath("../@StaticBody3D@22"), NodePath("../@StaticBody3D@476")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@16" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, 0.0017556, -7.5)
|
||||
connections = [NodePath("../FlowNode"), NodePath("../@StaticBody3D@17"), NodePath("../@StaticBody3D@23")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@17" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, -0.0404969, -5)
|
||||
connections = [NodePath("../@StaticBody3D@10"), NodePath("../@StaticBody3D@16"), NodePath("../@StaticBody3D@18"), NodePath("../@StaticBody3D@24")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@18" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@11"), NodePath("../@StaticBody3D@17"), NodePath("../@StaticBody3D@19"), NodePath("../@StaticBody3D@25")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@19" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, -0.0404969, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@12"), NodePath("../@StaticBody3D@18"), NodePath("../@StaticBody3D@20"), NodePath("../@StaticBody3D@26")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@20" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@13"), NodePath("../@StaticBody3D@19"), NodePath("../@StaticBody3D@21"), NodePath("../@StaticBody3D@27")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@21" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@14"), NodePath("../@StaticBody3D@20"), NodePath("../@StaticBody3D@22"), NodePath("../@StaticBody3D@28")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@22" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@15"), NodePath("../@StaticBody3D@21"), NodePath("../@StaticBody3D@29")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@23" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, 0.0017556, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@16"), NodePath("../@StaticBody3D@24"), NodePath("../@StaticBody3D@30")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@24" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, -0.0404971, -5)
|
||||
connections = [NodePath("../@StaticBody3D@17"), NodePath("../@StaticBody3D@23"), NodePath("../@StaticBody3D@25"), NodePath("../@StaticBody3D@31")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@25" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@18"), NodePath("../@StaticBody3D@24"), NodePath("../@StaticBody3D@26"), NodePath("../@StaticBody3D@32")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@26" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, -0.0404969, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@19"), NodePath("../@StaticBody3D@25"), NodePath("../@StaticBody3D@27"), NodePath("../@StaticBody3D@33")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@27" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@20"), NodePath("../@StaticBody3D@26"), NodePath("../@StaticBody3D@28"), NodePath("../@StaticBody3D@34")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@28" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@21"), NodePath("../@StaticBody3D@27"), NodePath("../@StaticBody3D@29"), NodePath("../@StaticBody3D@35")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@29" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@22"), NodePath("../@StaticBody3D@28"), NodePath("../@StaticBody3D@36")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@30" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.0017556, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@23"), NodePath("../@StaticBody3D@31"), NodePath("../@StaticBody3D@37")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@31" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, -0.0404971, -5)
|
||||
connections = [NodePath("../@StaticBody3D@24"), NodePath("../@StaticBody3D@30"), NodePath("../@StaticBody3D@32"), NodePath("../@StaticBody3D@38")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@32" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@25"), NodePath("../@StaticBody3D@31"), NodePath("../@StaticBody3D@33"), NodePath("../@StaticBody3D@39")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@33" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, -0.0404969, 2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@26"), NodePath("../@StaticBody3D@32"), NodePath("../@StaticBody3D@34"), NodePath("../@StaticBody3D@40")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@34" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@27"), NodePath("../@StaticBody3D@33"), NodePath("../@StaticBody3D@35"), NodePath("../@StaticBody3D@41")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@35" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@28"), NodePath("../@StaticBody3D@34"), NodePath("../@StaticBody3D@36"), NodePath("../@StaticBody3D@42")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@36" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0.00175571, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@29"), NodePath("../@StaticBody3D@35"), NodePath("../@StaticBody3D@43")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@37" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, 0.0017556, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@30"), NodePath("../@StaticBody3D@38"), NodePath("../@StaticBody3D@44")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@38" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, -0.0404971, -5)
|
||||
connections = [NodePath("../@StaticBody3D@31"), NodePath("../@StaticBody3D@37"), NodePath("../@StaticBody3D@39"), NodePath("../@StaticBody3D@45")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@39" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@32"), NodePath("../@StaticBody3D@38"), NodePath("../@StaticBody3D@40"), NodePath("../@StaticBody3D@46")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@40" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, -0.0404969, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@33"), NodePath("../@StaticBody3D@39"), NodePath("../@StaticBody3D@41"), NodePath("../@StaticBody3D@47")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@41" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@34"), NodePath("../@StaticBody3D@40"), NodePath("../@StaticBody3D@42"), NodePath("../@StaticBody3D@48")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@42" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@35"), NodePath("../@StaticBody3D@41"), NodePath("../@StaticBody3D@43"), NodePath("../@StaticBody3D@49")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@43" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.5, 0.00175571, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@36"), NodePath("../@StaticBody3D@42"), NodePath("../@StaticBody3D@50")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@44" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.0017556, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@37"), NodePath("../@StaticBody3D@45"), NodePath("../@StaticBody3D@51")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@45" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, -0.0404971, -5)
|
||||
connections = [NodePath("../@StaticBody3D@38"), NodePath("../@StaticBody3D@44"), NodePath("../@StaticBody3D@46"), NodePath("../@StaticBody3D@52")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@46" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@39"), NodePath("../@StaticBody3D@45"), NodePath("../@StaticBody3D@47"), NodePath("../@StaticBody3D@53")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@47" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, -0.0404969, 0)
|
||||
connections = [NodePath("../@StaticBody3D@40"), NodePath("../@StaticBody3D@46"), NodePath("../@StaticBody3D@48"), NodePath("../@StaticBody3D@54")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@48" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@41"), NodePath("../@StaticBody3D@47"), NodePath("../@StaticBody3D@49"), NodePath("../@StaticBody3D@55")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@49" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@42"), NodePath("../@StaticBody3D@48"), NodePath("../@StaticBody3D@50"), NodePath("../@StaticBody3D@56")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@50" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 0.00175571, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@43"), NodePath("../@StaticBody3D@49"), NodePath("../@StaticBody3D@57")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@51" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, 0.0017556, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@44"), NodePath("../@StaticBody3D@52"), NodePath("../@StaticBody3D@58")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@52" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, -0.0404971, -5)
|
||||
connections = [NodePath("../@StaticBody3D@45"), NodePath("../@StaticBody3D@51"), NodePath("../@StaticBody3D@53"), NodePath("../@StaticBody3D@59")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@53" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@46"), NodePath("../@StaticBody3D@52"), NodePath("../@StaticBody3D@54"), NodePath("../@StaticBody3D@60")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@54" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, -0.0404969, 0)
|
||||
connections = [NodePath("../@StaticBody3D@47"), NodePath("../@StaticBody3D@53"), NodePath("../@StaticBody3D@55"), NodePath("../@StaticBody3D@61")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@55" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@48"), NodePath("../@StaticBody3D@54"), NodePath("../@StaticBody3D@56"), NodePath("../@StaticBody3D@62")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@56" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@49"), NodePath("../@StaticBody3D@55"), NodePath("../@StaticBody3D@57"), NodePath("../@StaticBody3D@63")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@57" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.5, 0.00175571, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@50"), NodePath("../@StaticBody3D@56"), NodePath("../@StaticBody3D@64")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@58" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0017556, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@51"), NodePath("../@StaticBody3D@59"), NodePath("../@StaticBody3D@65")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@59" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0404971, -5)
|
||||
connections = [NodePath("../@StaticBody3D@52"), NodePath("../@StaticBody3D@58"), NodePath("../@StaticBody3D@60"), NodePath("../@StaticBody3D@66")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@60" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0404969, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@53"), NodePath("../@StaticBody3D@59"), NodePath("../@StaticBody3D@61"), NodePath("../@StaticBody3D@67")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@61" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0404969, 0)
|
||||
connections = [NodePath("../@StaticBody3D@54"), NodePath("../@StaticBody3D@60"), NodePath("../@StaticBody3D@62"), NodePath("../@StaticBody3D@68")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@62" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0404972, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@55"), NodePath("../@StaticBody3D@61"), NodePath("../@StaticBody3D@63"), NodePath("../@StaticBody3D@69")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@63" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.0404972, 5)
|
||||
connections = [NodePath("../@StaticBody3D@56"), NodePath("../@StaticBody3D@62"), NodePath("../@StaticBody3D@64"), NodePath("../@StaticBody3D@70")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@64" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.00175571, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@57"), NodePath("../@StaticBody3D@63"), NodePath("../@StaticBody3D@71")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@65" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@58"), NodePath("../@StaticBody3D@66"), NodePath("../@StaticBody3D@72")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@66" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@59"), NodePath("../@StaticBody3D@65"), NodePath("../@StaticBody3D@67"), NodePath("../@StaticBody3D@73")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@67" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@60"), NodePath("../@StaticBody3D@66"), NodePath("../@StaticBody3D@68"), NodePath("../@StaticBody3D@74")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@68" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, -0.0404972, 0)
|
||||
connections = [NodePath("../@StaticBody3D@61"), NodePath("../@StaticBody3D@67"), NodePath("../@StaticBody3D@69"), NodePath("../@StaticBody3D@75")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@69" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@62"), NodePath("../@StaticBody3D@68"), NodePath("../@StaticBody3D@70"), NodePath("../@StaticBody3D@76")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@70" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, -0.0404971, 5)
|
||||
connections = [NodePath("../@StaticBody3D@63"), NodePath("../@StaticBody3D@69"), NodePath("../@StaticBody3D@71"), NodePath("../@StaticBody3D@77")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@71" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@64"), NodePath("../@StaticBody3D@70"), NodePath("../@StaticBody3D@78")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@72" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@65"), NodePath("../@StaticBody3D@73"), NodePath("../@StaticBody3D@79")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@73" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@66"), NodePath("../@StaticBody3D@72"), NodePath("../@StaticBody3D@74"), NodePath("../@StaticBody3D@80")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@74" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@67"), NodePath("../@StaticBody3D@73"), NodePath("../@StaticBody3D@75"), NodePath("../@StaticBody3D@81")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@75" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, -0.0404969, -1.42109e-14)
|
||||
connections = [NodePath("../@StaticBody3D@68"), NodePath("../@StaticBody3D@74"), NodePath("../@StaticBody3D@76"), NodePath("../@StaticBody3D@82")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@76" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@69"), NodePath("../@StaticBody3D@75"), NodePath("../@StaticBody3D@77"), NodePath("../@StaticBody3D@83")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@77" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, -0.0404971, 5)
|
||||
connections = [NodePath("../@StaticBody3D@70"), NodePath("../@StaticBody3D@76"), NodePath("../@StaticBody3D@78"), NodePath("../@StaticBody3D@84")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@78" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@71"), NodePath("../@StaticBody3D@77"), NodePath("../@StaticBody3D@85")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@79" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@72"), NodePath("../@StaticBody3D@80"), NodePath("../@StaticBody3D@86")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@80" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@73"), NodePath("../@StaticBody3D@79"), NodePath("../@StaticBody3D@81"), NodePath("../@StaticBody3D@87")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@81" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@74"), NodePath("../@StaticBody3D@80"), NodePath("../@StaticBody3D@82"), NodePath("../@StaticBody3D@88")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@82" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, -0.0404969, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@75"), NodePath("../@StaticBody3D@81"), NodePath("../@StaticBody3D@83"), NodePath("../@StaticBody3D@89")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@83" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@76"), NodePath("../@StaticBody3D@82"), NodePath("../@StaticBody3D@84"), NodePath("../@StaticBody3D@90")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@84" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, -0.0404971, 5)
|
||||
connections = [NodePath("../@StaticBody3D@77"), NodePath("../@StaticBody3D@83"), NodePath("../@StaticBody3D@85"), NodePath("../@StaticBody3D@91")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@85" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@78"), NodePath("../@StaticBody3D@84"), NodePath("../@StaticBody3D@92")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@86" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@79"), NodePath("../@StaticBody3D@87"), NodePath("../@StaticBody3D@93")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@87" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@80"), NodePath("../@StaticBody3D@86"), NodePath("../@StaticBody3D@88"), NodePath("../@StaticBody3D@94")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@88" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@81"), NodePath("../@StaticBody3D@87"), NodePath("../@StaticBody3D@89"), NodePath("../@StaticBody3D@95")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@89" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, -0.0404969, 0)
|
||||
connections = [NodePath("../@StaticBody3D@82"), NodePath("../@StaticBody3D@88"), NodePath("../@StaticBody3D@90"), NodePath("../@StaticBody3D@96")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@90" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@83"), NodePath("../@StaticBody3D@89"), NodePath("../@StaticBody3D@91"), NodePath("../@StaticBody3D@97")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@91" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, -0.0404971, 5)
|
||||
connections = [NodePath("../@StaticBody3D@84"), NodePath("../@StaticBody3D@90"), NodePath("../@StaticBody3D@92"), NodePath("../@StaticBody3D@98")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@92" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@85"), NodePath("../@StaticBody3D@91"), NodePath("../@StaticBody3D@99")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@93" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@86"), NodePath("../@StaticBody3D@94"), NodePath("../@StaticBody3D@100")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@94" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@87"), NodePath("../@StaticBody3D@93"), NodePath("../@StaticBody3D@95"), NodePath("../@StaticBody3D@101")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@95" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@88"), NodePath("../@StaticBody3D@94"), NodePath("../@StaticBody3D@96"), NodePath("../@StaticBody3D@102")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@96" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, -0.0404969, 0)
|
||||
connections = [NodePath("../@StaticBody3D@89"), NodePath("../@StaticBody3D@95"), NodePath("../@StaticBody3D@97"), NodePath("../@StaticBody3D@103")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@97" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@90"), NodePath("../@StaticBody3D@96"), NodePath("../@StaticBody3D@98"), NodePath("../@StaticBody3D@104")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@98" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, -0.0404971, 5)
|
||||
connections = [NodePath("../@StaticBody3D@91"), NodePath("../@StaticBody3D@97"), NodePath("../@StaticBody3D@99"), NodePath("../@StaticBody3D@105")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@99" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@92"), NodePath("../@StaticBody3D@98"), NodePath("../@StaticBody3D@106")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@100" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@93"), NodePath("../@StaticBody3D@101"), NodePath("../@StaticBody3D@107")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@101" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@94"), NodePath("../@StaticBody3D@100"), NodePath("../@StaticBody3D@102"), NodePath("../@StaticBody3D@108")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@102" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@95"), NodePath("../@StaticBody3D@101"), NodePath("../@StaticBody3D@103"), NodePath("../@StaticBody3D@109")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@103" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, -0.0404969, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@96"), NodePath("../@StaticBody3D@102"), NodePath("../@StaticBody3D@104"), NodePath("../@StaticBody3D@110")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@104" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@97"), NodePath("../@StaticBody3D@103"), NodePath("../@StaticBody3D@105"), NodePath("../@StaticBody3D@111")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@105" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, -0.0404969, 5)
|
||||
connections = [NodePath("../@StaticBody3D@98"), NodePath("../@StaticBody3D@104"), NodePath("../@StaticBody3D@106"), NodePath("../@StaticBody3D@112")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@106" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15, 0.00175571, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@99"), NodePath("../@StaticBody3D@105"), NodePath("../@StaticBody3D@113")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@107" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, 0.00175571, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@100"), NodePath("../@StaticBody3D@108"), NodePath("../@StaticBody3D@397")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@108" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, -0.0404972, -5)
|
||||
connections = [NodePath("../@StaticBody3D@101"), NodePath("../@StaticBody3D@107"), NodePath("../@StaticBody3D@109"), NodePath("../@StaticBody3D@395")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@109" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, -0.0404972, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@102"), NodePath("../@StaticBody3D@108"), NodePath("../@StaticBody3D@110"), NodePath("../@StaticBody3D@393")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@110" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, -0.0404969, 2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@103"), NodePath("../@StaticBody3D@109"), NodePath("../@StaticBody3D@111"), NodePath("../@StaticBody3D@391")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@111" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, -0.0404969, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@104"), NodePath("../@StaticBody3D@110"), NodePath("../@StaticBody3D@112"), NodePath("../@StaticBody3D@389")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@112" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, -0.0404969, 5)
|
||||
connections = [NodePath("../@StaticBody3D@105"), NodePath("../@StaticBody3D@111"), NodePath("../@StaticBody3D@113"), NodePath("../@StaticBody3D@387")]
|
||||
visualisers = [null, null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@113" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.5, 0.0017556, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@106"), NodePath("../@StaticBody3D@112"), NodePath("../@StaticBody3D@385")]
|
||||
visualisers = [null, null, null]
|
||||
|
||||
[node name="@StaticBody3D@385" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, 0.0945654, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@113"), NodePath("../@StaticBody3D@387"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@416")]
|
||||
visualisers = [null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@387" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, -0.0885693, 5)
|
||||
connections = [NodePath("../@StaticBody3D@112"), NodePath("../@StaticBody3D@385"), NodePath("../@StaticBody3D@389"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@416")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@389" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, -0.0848544, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@111"), NodePath("../@StaticBody3D@391"), NodePath("../@StaticBody3D@387"), NodePath("../@StaticBody3D@416"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@414")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@391" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, -0.0806967, 2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@110"), NodePath("../@StaticBody3D@393"), NodePath("../@StaticBody3D@389"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@416")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@393" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, -0.0848545, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@109"), NodePath("../@StaticBody3D@395"), NodePath("../@StaticBody3D@391"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@416")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@395" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, -0.0885694, -5)
|
||||
connections = [NodePath("../@StaticBody3D@108"), NodePath("../@StaticBody3D@397"), NodePath("../@StaticBody3D@393"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@416")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@397" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20.215, 0.0945654, -7.5)
|
||||
connections = [NodePath("../@StaticBody3D@107"), NodePath("../@StaticBody3D@395"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@416")]
|
||||
visualisers = [null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@411" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 27.215, -1.0593, 0)
|
||||
connections = [NodePath("../@StaticBody3D@391"), NodePath("../@StaticBody3D@416"), NodePath("../@StaticBody3D@414"), NodePath("../@StaticBody3D@385"), NodePath("../@StaticBody3D@387"), NodePath("../@StaticBody3D@389"), NodePath("../@StaticBody3D@393"), NodePath("../@StaticBody3D@395"), NodePath("../@StaticBody3D@397"), NodePath("../@StaticBody3D@458")]
|
||||
visualisers = [null, null, null, null, null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@414" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 27.215, -1.05915, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@393"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@397"), NodePath("../@StaticBody3D@395"), NodePath("../@StaticBody3D@391"), NodePath("../@StaticBody3D@389"), NodePath("../@StaticBody3D@387"), NodePath("../@StaticBody3D@385"), NodePath("../@StaticBody3D@458")]
|
||||
visualisers = [null, null, null, null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@416" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 27.215, -1.05945, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@389"), NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@385"), NodePath("../@StaticBody3D@387"), NodePath("../@StaticBody3D@391"), NodePath("../@StaticBody3D@393"), NodePath("../@StaticBody3D@395"), NodePath("../@StaticBody3D@397"), NodePath("../@StaticBody3D@458")]
|
||||
visualisers = [null, null, null, null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@458" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 44.215, -1.05955, 0)
|
||||
connections = [NodePath("../@StaticBody3D@411"), NodePath("../@StaticBody3D@416"), NodePath("../@StaticBody3D@414")]
|
||||
visualisers = [null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@464" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, 0.10004, -7.5)
|
||||
connections = [NodePath("../FlowNode"), NodePath("../@StaticBody3D@466"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@493")]
|
||||
visualisers = [null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@466" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, -0.079766, -5)
|
||||
connections = [NodePath("../@StaticBody3D@10"), NodePath("../@StaticBody3D@468"), NodePath("../@StaticBody3D@464"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@493")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@468" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, -0.0764061, -2.5)
|
||||
connections = [NodePath("../@StaticBody3D@11"), NodePath("../@StaticBody3D@470"), NodePath("../@StaticBody3D@466"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@493")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@470" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, -0.0730402, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@12"), NodePath("../@StaticBody3D@472"), NodePath("../@StaticBody3D@468"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@493")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@472" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, -0.0764062, 2.5)
|
||||
connections = [NodePath("../@StaticBody3D@13"), NodePath("../@StaticBody3D@474"), NodePath("../@StaticBody3D@470"), NodePath("../@StaticBody3D@493"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@495")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@474" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, -0.0797663, 5)
|
||||
connections = [NodePath("../@StaticBody3D@14"), NodePath("../@StaticBody3D@472"), NodePath("../@StaticBody3D@476"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@493")]
|
||||
visualisers = [null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@476" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.285, 0.10004, 7.5)
|
||||
connections = [NodePath("../@StaticBody3D@15"), NodePath("../@StaticBody3D@474"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@493")]
|
||||
visualisers = [null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@490" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26.385, -1.0444, -2.84217e-14)
|
||||
connections = [NodePath("../@StaticBody3D@470"), NodePath("../@StaticBody3D@493"), NodePath("../@StaticBody3D@495"), NodePath("../@StaticBody3D@472"), NodePath("../@StaticBody3D@474"), NodePath("../@StaticBody3D@476"), NodePath("../@StaticBody3D@468"), NodePath("../@StaticBody3D@466"), NodePath("../@StaticBody3D@464")]
|
||||
visualisers = [null, null, null, null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@493" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26.385, -1.05029, 4)
|
||||
connections = [NodePath("../@StaticBody3D@472"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@476"), NodePath("../@StaticBody3D@474"), NodePath("../@StaticBody3D@470"), NodePath("../@StaticBody3D@468"), NodePath("../@StaticBody3D@466"), NodePath("../@StaticBody3D@464")]
|
||||
visualisers = [null, null, null, null, null, null, null, null]
|
||||
buildable = false
|
||||
|
||||
[node name="@StaticBody3D@495" parent="." node_paths=PackedStringArray("connections", "visualisers") instance=ExtResource("2_s6hwk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26.385, -1.05029, -4)
|
||||
connections = [NodePath("../@StaticBody3D@468"), NodePath("../@StaticBody3D@490"), NodePath("../@StaticBody3D@464"), NodePath("../@StaticBody3D@466"), NodePath("../@StaticBody3D@470"), NodePath("../@StaticBody3D@472"), NodePath("../@StaticBody3D@474"), NodePath("../@StaticBody3D@476")]
|
||||
visualisers = [null, null, null, null, null, null, null, null]
|
||||
buildable = false
|
||||
BIN
Scenes/FlowField/flow_node.glb
Normal file
BIN
Scenes/FlowField/flow_node.glb
Normal file
Binary file not shown.
37
Scenes/FlowField/flow_node.glb.import
Normal file
37
Scenes/FlowField/flow_node.glb.import
Normal file
@@ -0,0 +1,37 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://bs4en6twugqjl"
|
||||
path="res://.godot/imported/flow_node.glb-6ba2ba2afb1294cefafdb385a7532688.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Scenes/FlowField/flow_node.glb"
|
||||
dest_files=["res://.godot/imported/flow_node.glb-6ba2ba2afb1294cefafdb385a7532688.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=1
|
||||
gltf/embedded_image_handling=1
|
||||
18
Scenes/FlowField/flow_node.tscn
Normal file
18
Scenes/FlowField/flow_node.tscn
Normal file
@@ -0,0 +1,18 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://bssfvyxv5uo1f"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c86ygtor5tksd" path="res://Scripts/flow_node.gd" id="1_ng65h"]
|
||||
[ext_resource type="PackedScene" uid="uid://h7el2c2awv6" path="res://Scenes/FlowField/flow_node2.tscn" id="2_bmgs5"]
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_bmgs5"]
|
||||
radius = 0.4
|
||||
|
||||
[node name="FlowNode" type="StaticBody3D"]
|
||||
collision_layer = 64
|
||||
collision_mask = 0
|
||||
script = ExtResource("1_ng65h")
|
||||
metadata/_custom_type_script = "uid://c86ygtor5tksd"
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
shape = SubResource("SphereShape3D_bmgs5")
|
||||
|
||||
[node name="flow_node" parent="." instance=ExtResource("2_bmgs5")]
|
||||
11
Scenes/FlowField/flow_node2.tscn
Normal file
11
Scenes/FlowField/flow_node2.tscn
Normal file
@@ -0,0 +1,11 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://h7el2c2awv6"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bs4en6twugqjl" path="res://Scenes/FlowField/flow_node.glb" id="1_tnepb"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_16gtg"]
|
||||
resource_local_to_scene = true
|
||||
|
||||
[node name="flow_node" instance=ExtResource("1_tnepb")]
|
||||
|
||||
[node name="Sphere" parent="." index="0"]
|
||||
material_override = SubResource("StandardMaterial3D_16gtg")
|
||||
12
Scenes/Ladder/ladder.gd
Normal file
12
Scenes/Ladder/ladder.gd
Normal file
@@ -0,0 +1,12 @@
|
||||
class_name Ladder
|
||||
extends Area3D
|
||||
|
||||
|
||||
func _on_body_entered(body: Node3D) -> void:
|
||||
if body is Hero:
|
||||
body.movement.enable_climbing()
|
||||
|
||||
|
||||
func _on_body_exited(body: Node3D) -> void:
|
||||
if body is Hero:
|
||||
body.movement.disable_climbing()
|
||||
1
Scenes/Ladder/ladder.gd.uid
Normal file
1
Scenes/Ladder/ladder.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://7pd2edvb845w
|
||||
10
Scenes/Ladder/ladder.tscn
Normal file
10
Scenes/Ladder/ladder.tscn
Normal file
@@ -0,0 +1,10 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cx8f6tsipvmls"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://7pd2edvb845w" path="res://Scenes/Ladder/ladder.gd" id="1_cq4ai"]
|
||||
|
||||
[node name="Ladder" type="Area3D"]
|
||||
collision_mask = 2
|
||||
script = ExtResource("1_cq4ai")
|
||||
|
||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="." to="." method="_on_body_exited"]
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
[ext_resource type="Theme" uid="uid://b6a0ip4p72tgx" path="res://UI/new_theme.tres" id="1_p1cib"]
|
||||
[ext_resource type="Script" uid="uid://ci8vq73u23viy" path="res://Scenes/Menus/MainMenu/main_menu.gd" id="2_ivytu"]
|
||||
[ext_resource type="PackedScene" uid="uid://y1qa1g3ic8sp" path="res://Worlds/GreenPlanet/Levels/first_level.tscn" id="3_l8r4a"]
|
||||
[ext_resource type="PackedScene" uid="uid://y1qa1g3ic8sp" path="res://Worlds/GreenPlanet/Levels/Bridge/bridge.tscn" id="3_l8r4a"]
|
||||
[ext_resource type="AudioStream" uid="uid://cp6ph4ra7u5rk" path="res://Scenes/UI/drop_003.ogg" id="5_cwn2i"]
|
||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="5_u514r"]
|
||||
[ext_resource type="Texture2D" uid="uid://cdnhe2mi5c5ln" path="res://Assets/Textures/dead_eye_dog.png" id="6_rsxwm"]
|
||||
@@ -17,7 +17,7 @@
|
||||
[ext_resource type="Script" uid="uid://cjr0pbqisd51v" path="res://Scenes/Menus/MainMenu/achievements_menu.gd" id="15_sv1gy"]
|
||||
[ext_resource type="Texture2D" uid="uid://cpa1hl36xfplg" path="res://Assets/Textures/first_scroll_seen.png" id="16_sv1gy"]
|
||||
[ext_resource type="Texture2D" uid="uid://ctbi3gm1me1t5" path="res://Assets/Textures/unlock_mage_achievement.png" id="17_6t4jd"]
|
||||
[ext_resource type="Script" uid="uid://cxrm2naq75jo1" path="res://mod_menu.gd" id="19_6t4jd"]
|
||||
[ext_resource type="Script" uid="uid://cxrm2naq75jo1" path="res://Scripts/mod_menu.gd" id="19_6t4jd"]
|
||||
[ext_resource type="FontFile" uid="uid://c3hwdjscf2hnk" path="res://Assets/Fonts/OpenType (.otf)/Kaph-Regular.otf" id="20_y5bw6"]
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_5u75i"]
|
||||
|
||||
Binary file not shown.
@@ -3,7 +3,7 @@
|
||||
[ext_resource type="Script" uid="uid://si58bm4r7r2i" path="res://Scenes/TowerBase/tower_base.gd" id="1_kalmg"]
|
||||
[ext_resource type="Script" uid="uid://do24iuot0j7d7" path="res://Scripts/inventory.gd" id="2_m0oxx"]
|
||||
[ext_resource type="Material" uid="uid://bi0grduhgdma4" path="res://Scenes/TowerBase/new_shader_material.tres" id="3_ueedj"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://cm5xjp442ew0y" path="res://textmesh.res" id="4_8j8ue"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://cr83c74ys8rll" path="res://Scenes/TowerBase/textmesh.res" id="4_8j8ue"]
|
||||
[ext_resource type="Texture2D" uid="uid://ba85u6i558x4w" path="res://Assets/Textures/minimap_node.png" id="4_lbvtm"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_lc72v"]
|
||||
|
||||
@@ -1,20 +1,14 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://d2yv447trxkwt"]
|
||||
[gd_scene load_steps=4 format=3 uid="uid://d2yv447trxkwt"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dkuxg6ek5us4f" path="res://Scripts/enemy_spawner.gd" id="1_23wuv"]
|
||||
[ext_resource type="PackedScene" uid="uid://b0nady5xm88bo" path="res://Worlds/GreenPlanet/Enemies/land_enemy.tscn" id="2_muaoj"]
|
||||
[ext_resource type="PackedScene" uid="uid://bjo2q6vca5qlv" path="res://Worlds/GreenPlanet/Enemies/air_enemy.tscn" id="3_nh55v"]
|
||||
[ext_resource type="Script" uid="uid://cd500cyj1tdyw" path="res://Scripts/visualized_path.gd" id="4_tdwud"]
|
||||
|
||||
[node name="Node3D" type="Node3D" node_paths=PackedStringArray("path")]
|
||||
[node name="Node3D" type="Node3D"]
|
||||
script = ExtResource("1_23wuv")
|
||||
land_enemy_scene = ExtResource("2_muaoj")
|
||||
air_enemy_scene = ExtResource("3_nh55v")
|
||||
path = NodePath("VisualizedPath")
|
||||
|
||||
[node name="CSGBox3D" type="CSGBox3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||
visible = false
|
||||
|
||||
[node name="VisualizedPath" type="Path3D" parent="."]
|
||||
script = ExtResource("4_tdwud")
|
||||
metadata/_custom_type_script = "uid://cd500cyj1tdyw"
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://clbw3osqy2ww2"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cr3sfjjo6l6n2" path="res://Scripts/path_visual_thing.gd" id="1_pgun7"]
|
||||
[ext_resource type="Texture2D" uid="uid://cy786nrpcdr5o" path="res://Assets/Textures/minimap_path_visual.png" id="2_0gsds"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_lutld"]
|
||||
albedo_color = Color(0.0509804, 0.337255, 0.709804, 1)
|
||||
|
||||
[node name="PathFollow3D" type="PathFollow3D" node_paths=PackedStringArray("world_model", "minimap_model")]
|
||||
use_model_front = true
|
||||
script = ExtResource("1_pgun7")
|
||||
world_model = NodePath("CSGSphere3D")
|
||||
minimap_model = NodePath("Sprite3D")
|
||||
|
||||
[node name="CSGSphere3D" type="CSGSphere3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.401382, 0)
|
||||
radius = 0.05
|
||||
material = SubResource("StandardMaterial3D_lutld")
|
||||
|
||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0.620933, 0)
|
||||
layers = 4
|
||||
texture_filter = 0
|
||||
texture = ExtResource("2_0gsds")
|
||||
@@ -1,14 +0,0 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://dtfw0tefhb6qq"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cd500cyj1tdyw" path="res://Scripts/visualized_path.gd" id="1_34oex"]
|
||||
|
||||
[sub_resource type="Curve3D" id="Curve3D_tcut2"]
|
||||
_data = {
|
||||
"points": PackedVector3Array(0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, -0.894202, 0.687927, -2.77275, 0, 0, -2),
|
||||
"tilts": PackedFloat32Array(0, 0)
|
||||
}
|
||||
point_count = 2
|
||||
|
||||
[node name="Node3D" type="Path3D"]
|
||||
curve = SubResource("Curve3D_tcut2")
|
||||
script = ExtResource("1_34oex")
|
||||
Reference in New Issue
Block a user