From 84413314efc1714cb3dc5e5373bda935c9f02923 Mon Sep 17 00:00:00 2001 From: adtpdn Date: Wed, 22 Oct 2025 11:50:17 +0800 Subject: [PATCH] Add example scene and player for enhanced_gridmap Introduces a new example scene and player script for the enhanced_gridmap addon, including supporting resources and materials. Updates the mesh library, assets, and main scene to integrate new tile types and visual styles. Adjusts project settings for improved resolution and sets the new main scene as the entry point. --- addons/enhanced_gridmap/example/main.tscn | 43 ++++++ addons/enhanced_gridmap/example/player.gd | 129 ++++++++++++++++++ addons/enhanced_gridmap/example/player.gd.uid | 1 + addons/enhanced_gridmap/icon.png.import | 2 +- .../enhanced_gridmap/meshlibrary/default.tres | 100 ++++---------- .../enhanced_gridmap/meshlibrary/mat_end.tres | 4 + .../meshlibrary/mat_hover.tres | 4 + .../meshlibrary/mat_normal.tres | 4 + .../meshlibrary/mat_start.tres | 4 + .../meshlibrary/tile_end.tres | 7 + .../meshlibrary/tile_hover.tres | 7 + .../meshlibrary/tile_normal.tres | 7 + .../meshlibrary/tile_start.tres | 7 + assets/models/meshes/start.res | Bin 3257 -> 2780 bytes assets/models/meshes/tiles_armagedon_a4.res | Bin 14581 -> 7472 bytes assets/models/normal.tres | 2 +- project.godot | 6 +- scenes/main.tscn | 19 ++- 18 files changed, 264 insertions(+), 82 deletions(-) create mode 100644 addons/enhanced_gridmap/example/main.tscn create mode 100644 addons/enhanced_gridmap/example/player.gd create mode 100644 addons/enhanced_gridmap/example/player.gd.uid create mode 100644 addons/enhanced_gridmap/meshlibrary/mat_end.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/mat_hover.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/mat_normal.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/mat_start.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/tile_end.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/tile_hover.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/tile_normal.tres create mode 100644 addons/enhanced_gridmap/meshlibrary/tile_start.tres diff --git a/addons/enhanced_gridmap/example/main.tscn b/addons/enhanced_gridmap/example/main.tscn new file mode 100644 index 0000000..e013c52 --- /dev/null +++ b/addons/enhanced_gridmap/example/main.tscn @@ -0,0 +1,43 @@ +[gd_scene load_steps=6 format=3 uid="uid://dpihcqibm8d4q"] + +[ext_resource type="Script" uid="uid://dudbm0fqk82rm" path="res://addons/enhanced_gridmap/example/player.gd" id="1_ct1x4"] +[ext_resource type="MeshLibrary" uid="uid://kcv6ans86ug7" path="res://addons/enhanced_gridmap/meshlibrary/default.tres" id="2_buqgu"] +[ext_resource type="Script" uid="uid://bja8ixryvthu0" path="res://addons/enhanced_gridmap/enhanced_gridmap.gd" id="3_4dd4k"] + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_ct1x4"] + +[sub_resource type="Environment" id="Environment_ct1x4"] +background_mode = 1 +background_color = Color(1, 1, 1, 1) + +[node name="Main" type="Node3D"] +script = ExtResource("1_ct1x4") +enhanced_gridmap_path = NodePath("EnhancedGridMap") +player_path = NodePath("Player") + +[node name="EnhancedGridMap" type="GridMap" parent="."] +mesh_library = ExtResource("2_buqgu") +data = { +"cells": PackedInt32Array(0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 4, 0, 0, 5, 0, 0, 6, 0, 0, 7, 0, 0, 8, 0, 0, 9, 0, 1, 0, 0, 1, 1, 0, 1, 2, 0, 1, 3, 0, 1, 4, 0, 1, 5, 0, 1, 6, 0, 1, 7, 0, 1, 8, 0, 1, 9, 0, 2, 0, 0, 2, 1, 0, 2, 2, 0, 2, 3, 0, 2, 4, 0, 2, 5, 0, 2, 6, 0, 2, 7, 0, 2, 8, 0, 2, 9, 0, 3, 0, 0, 3, 1, 0, 3, 2, 0, 3, 3, 0, 3, 4, 0, 3, 5, 0, 3, 6, 0, 3, 7, 0, 3, 8, 0, 3, 9, 0, 4, 0, 0, 4, 1, 0, 4, 2, 0, 4, 3, 0, 4, 4, 0, 4, 5, 0, 4, 6, 0, 4, 7, 0, 4, 8, 0, 4, 9, 0, 5, 0, 0, 5, 1, 0, 5, 2, 0, 5, 3, 0, 5, 4, 0, 5, 5, 0, 5, 6, 0, 5, 7, 0, 5, 8, 0, 5, 9, 0, 6, 0, 0, 6, 1, 0, 6, 2, 0, 6, 3, 0, 6, 4, 0, 6, 5, 0, 6, 6, 0, 6, 7, 0, 6, 8, 0, 6, 9, 0, 7, 0, 0, 7, 1, 0, 7, 2, 0, 7, 3, 0, 7, 4, 0, 7, 5, 0, 7, 6, 0, 7, 7, 0, 7, 8, 0, 7, 9, 0, 8, 0, 0, 8, 1, 0, 8, 2, 0, 8, 3, 0, 8, 4, 0, 8, 5, 0, 8, 6, 0, 8, 7, 0, 8, 8, 0, 8, 9, 0, 9, 0, 0, 9, 1, 0, 9, 2, 0, 9, 3, 0, 9, 4, 0, 9, 5, 0, 9, 6, 0, 9, 7, 0, 9, 8, 0, 9, 9, 0) +} +script = ExtResource("3_4dd4k") +floors = 1 +auto_generate = true +obstacle_items = Array[int]([]) +metadata/_custom_type_script = "uid://bja8ixryvthu0" + +[node name="Player" type="Node3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 2, 1) + +[node name="MeshInstance3D" type="MeshInstance3D" parent="Player"] +mesh = SubResource("CapsuleMesh_ct1x4") + +[node name="Camera3D" type="Camera3D" parent="."] +transform = Transform3D(-1, -1.89462e-15, -8.74228e-08, -8.74228e-08, -5.96047e-08, 1, -7.10543e-15, 1, 5.96047e-08, 9.9742, 24.112, 10) +environment = SubResource("Environment_ct1x4") +projection = 1 +size = 26.0 + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 31, 0) +visible = false diff --git a/addons/enhanced_gridmap/example/player.gd b/addons/enhanced_gridmap/example/player.gd new file mode 100644 index 0000000..d203742 --- /dev/null +++ b/addons/enhanced_gridmap/example/player.gd @@ -0,0 +1,129 @@ +extends Node3D + +@export var enhanced_gridmap_path: NodePath +@export var player_path: NodePath + +var enhanced_gridmap: EnhancedGridMap +var player: Node3D +var current_position: Vector2i +var is_player_moving: bool = false + +# Customizable cell size and offset +@export var cell_size: Vector3 = Vector3(2, 2, 2) +@export var cell_offset: Vector3 = Vector3(0, 0, 0) + +# Diagonal movement flag +@export var use_diagonal_movement: bool = false: + set(value): + use_diagonal_movement = value + if enhanced_gridmap: + enhanced_gridmap.set_diagonal_movement(value) + +func _ready(): + enhanced_gridmap = get_node(enhanced_gridmap_path) + player = get_node(player_path) + + if not enhanced_gridmap or not player: + push_error("EnhancedGridMap or Player node not found. Please set the correct paths in the inspector.") + return + + # Ensure the A* graph is initialized + enhanced_gridmap.initialize_astar() + + # Sync diagonal movement setting with the plugin + enhanced_gridmap.set_diagonal_movement(use_diagonal_movement) + + # Position the player at a valid starting position + #current_position = find_valid_starting_position() + current_position = Vector2i(0,2) + update_player_position(current_position) + +func find_valid_starting_position() -> Vector2i: + for x in range(enhanced_gridmap.columns): + for z in range(enhanced_gridmap.rows): + for item in enhanced_gridmap.non_walkable_items.size(): + if enhanced_gridmap.get_cell_item(Vector3i(x, 0, z)) != enhanced_gridmap.non_walkable_items[item]: + return Vector2i(x, z) + return Vector2i(0, 0) # Fallback to (0,0) if no valid position found + +func _unhandled_input(event): + + if is_player_moving: + return # Ignore input if the player is already moving + + if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: + var camera = get_viewport().get_camera_3d() + var from = camera.project_ray_origin(event.position) + var to = from + camera.project_ray_normal(event.position) * 1000 + + var click_position = raycast_to_grid(from, to) + if click_position != Vector2i(-1, -1): + move_player_to_clicked_position(click_position) + +func raycast_to_grid(from: Vector3, to: Vector3) -> Vector2i: + var plane = Plane(Vector3.UP, cell_offset.y) + var intersection = plane.intersects_ray(from, to - from) + + if intersection: + var adjusted_intersection = intersection - cell_offset + var grid_position = Vector2i( + floor(adjusted_intersection.x / cell_size.x), + floor(adjusted_intersection.z / cell_size.z) + ) + + if grid_position.x >= 0 and grid_position.x < enhanced_gridmap.columns and \ + grid_position.y >= 0 and grid_position.y < enhanced_gridmap.rows: + return grid_position + + return Vector2i(-1, -1) + +func move_player_to_clicked_position(grid_position: Vector2i): + var cell_item = enhanced_gridmap.get_cell_item(Vector3i(grid_position.x, 0, grid_position.y)) + + for x in enhanced_gridmap.non_walkable_items.size(): + if cell_item == enhanced_gridmap.non_walkable_items[x]: + print("Cannot move to non-walkable cell") + return + + var path = enhanced_gridmap.find_path(Vector2(current_position), Vector2(grid_position)) + + if path.size() > 1: + path.pop_front() + move_player_along_path(path) + else: + print("No valid path found") + +func move_player_along_path(path: Array): + is_player_moving = true + var tween = create_tween() + tween.set_trans(Tween.TRANS_CUBIC) + tween.set_ease(Tween.EASE_IN_OUT) + + # Visualize the path using the plugin's function + #enhanced_gridmap.visualize_path(path) + + for point in path: + var target_position = grid_to_world(Vector2i(point.x, point.y)) + tween.tween_property(player, "position", target_position, 0.5) + + tween.tween_callback(func(): + current_position = Vector2i(path[-1].x, path[-1].y) + is_player_moving = false + enhanced_gridmap.clear_path_visualization() + ) + +func update_player_position(grid_position: Vector2i): + player.position = grid_to_world(grid_position) + +func grid_to_world(grid_position: Vector2i) -> Vector3: + var world_position = Vector3( + grid_position.x * cell_size.x, + cell_size.y, # Place the player on top of the cell + grid_position.y * cell_size.z + ) + + # Center the player within the cell + world_position.x += cell_size.x * 0.5 + world_position.z += cell_size.z * 0.5 + + return world_position + cell_offset diff --git a/addons/enhanced_gridmap/example/player.gd.uid b/addons/enhanced_gridmap/example/player.gd.uid new file mode 100644 index 0000000..812c59a --- /dev/null +++ b/addons/enhanced_gridmap/example/player.gd.uid @@ -0,0 +1 @@ +uid://dudbm0fqk82rm diff --git a/addons/enhanced_gridmap/icon.png.import b/addons/enhanced_gridmap/icon.png.import index cbbe597..23aec51 100644 --- a/addons/enhanced_gridmap/icon.png.import +++ b/addons/enhanced_gridmap/icon.png.import @@ -2,7 +2,7 @@ importer="texture" type="CompressedTexture2D" -uid="uid://cak1euopkw681" +uid="uid://v4iur5pyy5b5" path="res://.godot/imported/icon.png-55ce7476be277fe78f056db0afa06b3b.ctex" metadata={ "vram_texture": false diff --git a/addons/enhanced_gridmap/meshlibrary/default.tres b/addons/enhanced_gridmap/meshlibrary/default.tres index d4e6d5b..f1d633e 100644 --- a/addons/enhanced_gridmap/meshlibrary/default.tres +++ b/addons/enhanced_gridmap/meshlibrary/default.tres @@ -1,121 +1,81 @@ -[gd_resource type="MeshLibrary" load_steps=12 format=3 uid="uid://54tpx8cmksfc"] +[gd_resource type="MeshLibrary" load_steps=9 format=3 uid="uid://kcv6ans86ug7"] -[ext_resource type="ArrayMesh" uid="uid://dqguomxd16u0i" path="res://assets/models/meshes/start.res" id="1_xdwel"] -[ext_resource type="ArrayMesh" uid="uid://dspusnbkr74hg" path="res://assets/models/meshes/hover.res" id="2_5gp4i"] -[ext_resource type="Material" uid="uid://bsyh0x4cy5qyr" path="res://assets/models/meshes/end.tres" id="3_qi66w"] -[ext_resource type="ArrayMesh" uid="uid://dtr46jmckif0p" path="res://assets/models/meshes/block.res" id="4_8v5xv"] -[ext_resource type="ArrayMesh" uid="uid://d4himvyb81in8" path="res://assets/models/meshes/non-walkable.res" id="4_h83ju"] -[ext_resource type="ArrayMesh" uid="uid://bgvropltcot0q" path="res://assets/models/meshes/normal.res" id="5_san4u"] -[ext_resource type="ArrayMesh" uid="uid://36tgon3b60db" path="res://assets/models/tiles/tile_heart.tres" id="6_r6sve"] -[ext_resource type="ArrayMesh" uid="uid://dr80txgr61irt" path="res://assets/models/tiles/tile_diamond.tres" id="8_rj3ss"] -[ext_resource type="ArrayMesh" uid="uid://b5ta7tcw0iscd" path="res://assets/models/tiles/tile_coin.tres" id="9_44311"] -[ext_resource type="ArrayMesh" uid="uid://cv4bedhida00g" path="res://assets/models/tiles/tile_star.tres" id="9_y8bbi"] - -[sub_resource type="PlaneMesh" id="PlaneMesh_ti6kf"] -material = ExtResource("3_qi66w") -size = Vector2(1, 1) +[ext_resource type="ArrayMesh" uid="uid://cr70nmk8djc1i" path="res://assets/models/meshes/tiles_armagedon_a3.res" id="1_ptqbt"] +[ext_resource type="ArrayMesh" uid="uid://dspusnbkr74hg" path="res://assets/models/meshes/hover.res" id="2_p5epg"] +[ext_resource type="ArrayMesh" uid="uid://dqguomxd16u0i" path="res://assets/models/meshes/start.res" id="3_8v5xv"] +[ext_resource type="ArrayMesh" uid="uid://b5ta7tcw0iscd" path="res://assets/models/tiles/tile_coin.tres" id="4_76xkl"] +[ext_resource type="ArrayMesh" uid="uid://d4himvyb81in8" path="res://assets/models/meshes/non-walkable.res" id="4_sx8rm"] +[ext_resource type="ArrayMesh" uid="uid://dr80txgr61irt" path="res://assets/models/tiles/tile_diamond.tres" id="5_j2mx0"] +[ext_resource type="ArrayMesh" uid="uid://36tgon3b60db" path="res://assets/models/tiles/tile_heart.tres" id="6_ptqbt"] +[ext_resource type="ArrayMesh" uid="uid://cv4bedhida00g" path="res://assets/models/tiles/tile_star.tres" id="7_p5epg"] [resource] item/0/name = "normal" -item/0/mesh = ExtResource("1_xdwel") +item/0/mesh = ExtResource("1_ptqbt") item/0/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/0/mesh_cast_shadow = 1 item/0/shapes = [] item/0/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/0/navigation_layers = 1 item/1/name = "hover" -item/1/mesh = ExtResource("2_5gp4i") +item/1/mesh = ExtResource("2_p5epg") item/1/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/1/mesh_cast_shadow = 1 item/1/shapes = [] item/1/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/1/navigation_layers = 1 item/2/name = "start" -item/2/mesh = ExtResource("1_xdwel") +item/2/mesh = ExtResource("3_8v5xv") item/2/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/2/mesh_cast_shadow = 1 item/2/shapes = [] item/2/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/2/navigation_layers = 1 item/3/name = "end" -item/3/mesh = SubResource("PlaneMesh_ti6kf") +item/3/mesh = ExtResource("3_8v5xv") item/3/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/3/mesh_cast_shadow = 1 item/3/shapes = [] item/3/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/3/navigation_layers = 1 item/4/name = "non-walkable" -item/4/mesh = ExtResource("4_h83ju") +item/4/mesh = ExtResource("4_sx8rm") item/4/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/4/mesh_cast_shadow = 1 item/4/shapes = [] item/4/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/4/navigation_layers = 1 -item/6/name = "grass" -item/6/mesh = ExtResource("5_san4u") +item/5/name = "disable" +item/5/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/5/mesh_cast_shadow = 1 +item/5/shapes = [] +item/5/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +item/5/navigation_layers = 1 +item/6/name = "tile_coin" +item/6/mesh = ExtResource("4_76xkl") item/6/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/6/mesh_cast_shadow = 1 item/6/shapes = [] item/6/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/6/navigation_layers = 1 -item/7/name = "tile_heart" -item/7/mesh = ExtResource("6_r6sve") -item/7/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.9, 0) +item/7/name = "tile_diamond" +item/7/mesh = ExtResource("5_j2mx0") +item/7/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/7/mesh_cast_shadow = 1 item/7/shapes = [] item/7/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/7/navigation_layers = 1 -item/8/name = "tile_diamond" -item/8/mesh = ExtResource("8_rj3ss") -item/8/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.9, 0) +item/8/name = "tile_heart" +item/8/mesh = ExtResource("6_ptqbt") +item/8/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/8/mesh_cast_shadow = 1 item/8/shapes = [] item/8/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/8/navigation_layers = 1 item/9/name = "tile_star" -item/9/mesh = ExtResource("9_y8bbi") -item/9/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.9, 0) +item/9/mesh = ExtResource("7_p5epg") +item/9/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/9/mesh_cast_shadow = 1 item/9/shapes = [] item/9/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) item/9/navigation_layers = 1 -item/10/name = "tile_coin" -item/10/mesh = ExtResource("9_44311") -item/10/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.9, 0) -item/10/mesh_cast_shadow = 1 -item/10/shapes = [] -item/10/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/10/navigation_layers = 1 -item/11/name = "obstacle_block" -item/11/mesh = ExtResource("4_8v5xv") -item/11/mesh_transform = Transform3D(1.65, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2, 0.5) -item/11/mesh_cast_shadow = 1 -item/11/shapes = [] -item/11/navigation_mesh_transform = Transform3D(0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0) -item/11/navigation_layers = 1 -item/12/name = "obstacle_block_h" -item/12/mesh = ExtResource("4_8v5xv") -item/12/mesh_transform = Transform3D(1.65, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.4, 0.5) -item/12/mesh_cast_shadow = 1 -item/12/shapes = [] -item/12/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/12/navigation_layers = 1 -item/13/name = "obstacle_block_v" -item/13/mesh = ExtResource("4_8v5xv") -item/13/mesh_transform = Transform3D(1.65, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2, 0.5) -item/13/mesh_cast_shadow = 1 -item/13/shapes = [] -item/13/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/13/navigation_layers = 1 -item/14/name = "" -item/14/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/14/mesh_cast_shadow = 1 -item/14/shapes = [] -item/14/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/14/navigation_layers = 1 -item/15/name = "" -item/15/mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/15/mesh_cast_shadow = 1 -item/15/shapes = [] -item/15/navigation_mesh_transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) -item/15/navigation_layers = 1 diff --git a/addons/enhanced_gridmap/meshlibrary/mat_end.tres b/addons/enhanced_gridmap/meshlibrary/mat_end.tres new file mode 100644 index 0000000..8490465 --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/mat_end.tres @@ -0,0 +1,4 @@ +[gd_resource type="StandardMaterial3D" load_steps=0 format=3 uid="uid://0fexqt03j3cb"] + +[resource] +albedo_color = Color(0.265987, 0.565787, 0.525347, 1) diff --git a/addons/enhanced_gridmap/meshlibrary/mat_hover.tres b/addons/enhanced_gridmap/meshlibrary/mat_hover.tres new file mode 100644 index 0000000..9710bcd --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/mat_hover.tres @@ -0,0 +1,4 @@ +[gd_resource type="StandardMaterial3D" load_steps=0 format=3 uid="uid://cn1pvqd4gf1u7"] + +[resource] +albedo_color = Color(0.26944, 0.347152, 0.674841, 1) diff --git a/addons/enhanced_gridmap/meshlibrary/mat_normal.tres b/addons/enhanced_gridmap/meshlibrary/mat_normal.tres new file mode 100644 index 0000000..8b4856a --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/mat_normal.tres @@ -0,0 +1,4 @@ +[gd_resource type="StandardMaterial3D" load_steps=0 format=3 uid="uid://dqhmv78u8iy1d"] + +[resource] +albedo_color = Color(0.310617, 0.310617, 0.310617, 1) diff --git a/addons/enhanced_gridmap/meshlibrary/mat_start.tres b/addons/enhanced_gridmap/meshlibrary/mat_start.tres new file mode 100644 index 0000000..1a04362 --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/mat_start.tres @@ -0,0 +1,4 @@ +[gd_resource type="StandardMaterial3D" load_steps=0 format=3 uid="uid://itptgndobbp3"] + +[resource] +albedo_color = Color(0.236107, 0.423377, 0.339105, 1) diff --git a/addons/enhanced_gridmap/meshlibrary/tile_end.tres b/addons/enhanced_gridmap/meshlibrary/tile_end.tres new file mode 100644 index 0000000..80ddbcd --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/tile_end.tres @@ -0,0 +1,7 @@ +[gd_resource type="BoxMesh" load_steps=2 format=3 uid="uid://dcjdwbffgtutt"] + +[ext_resource type="Material" uid="uid://0fexqt03j3cb" path="res://addons/enhanced_gridmap/meshlibrary/mat_end.tres" id="1_dvekp"] + +[resource] +material = ExtResource("1_dvekp") +size = Vector3(1.9, 0.5, 1.9) diff --git a/addons/enhanced_gridmap/meshlibrary/tile_hover.tres b/addons/enhanced_gridmap/meshlibrary/tile_hover.tres new file mode 100644 index 0000000..99a9bb9 --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/tile_hover.tres @@ -0,0 +1,7 @@ +[gd_resource type="BoxMesh" load_steps=2 format=3 uid="uid://c1wa5rjlu0fuo"] + +[ext_resource type="Material" uid="uid://cn1pvqd4gf1u7" path="res://addons/enhanced_gridmap/meshlibrary/mat_hover.tres" id="1_5fptl"] + +[resource] +material = ExtResource("1_5fptl") +size = Vector3(1.9, 0.5, 1.9) diff --git a/addons/enhanced_gridmap/meshlibrary/tile_normal.tres b/addons/enhanced_gridmap/meshlibrary/tile_normal.tres new file mode 100644 index 0000000..9a384a9 --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/tile_normal.tres @@ -0,0 +1,7 @@ +[gd_resource type="BoxMesh" load_steps=2 format=3 uid="uid://bb3b32qso3yab"] + +[ext_resource type="Material" uid="uid://dqhmv78u8iy1d" path="res://addons/enhanced_gridmap/meshlibrary/mat_normal.tres" id="1_4kxai"] + +[resource] +material = ExtResource("1_4kxai") +size = Vector3(1.9, 0.5, 1.9) diff --git a/addons/enhanced_gridmap/meshlibrary/tile_start.tres b/addons/enhanced_gridmap/meshlibrary/tile_start.tres new file mode 100644 index 0000000..ed42e97 --- /dev/null +++ b/addons/enhanced_gridmap/meshlibrary/tile_start.tres @@ -0,0 +1,7 @@ +[gd_resource type="BoxMesh" load_steps=2 format=3 uid="uid://dy5p77cjb3geo"] + +[ext_resource type="Material" uid="uid://cn1pvqd4gf1u7" path="res://addons/enhanced_gridmap/meshlibrary/mat_hover.tres" id="1_nrdsg"] + +[resource] +material = ExtResource("1_nrdsg") +size = Vector3(1.9, 0.5, 1.9) diff --git a/assets/models/meshes/start.res b/assets/models/meshes/start.res index fb431a4e1ab023cb78b9f335e4a02233902ee379..10be0b3b4fed16315056b8d8c0f39e339fe57faf 100644 GIT binary patch literal 2780 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 diff --git a/assets/models/meshes/tiles_armagedon_a4.res b/assets/models/meshes/tiles_armagedon_a4.res index 6345c378f01cabb42f44a90707bcd4b8f212f223..1bd617eaef309b2eb415f1634cc65e544acbd762 100644 GIT binary patch literal 7472 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 literal 14581 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 diff --git a/assets/models/normal.tres b/assets/models/normal.tres index 9495f75..fa04288 100644 --- a/assets/models/normal.tres +++ b/assets/models/normal.tres @@ -3,5 +3,5 @@ [resource] resource_name = "tile_a1" cull_mode = 2 -albedo_color = Color(0.335217, 0.328683, 0.29189, 1) +albedo_color = Color(0.380392, 0.372549, 0.333333, 1) roughness = 0.5 diff --git a/project.godot b/project.godot index 72c4eaf..591d624 100644 --- a/project.godot +++ b/project.godot @@ -11,7 +11,7 @@ config_version=5 [application] config/name="tekton-local" -run/main_scene="res://scenes/main_scene.tscn" +run/main_scene="uid://dxn87yj8qnfpp" config/features=PackedStringArray("4.4", "Forward Plus") config/icon="res://icon.svg" @@ -24,8 +24,8 @@ BeehaveGlobalDebugger="*res://addons/beehave/debug/global_debugger.gd" window/size/viewport_width=1366 window/size/viewport_height=720 -window/size/window_width_override=1024 -window/size/window_height_override=576 +window/size/window_width_override=1920 +window/size/window_height_override=1080 window/stretch/mode="viewport" [editor_plugins] diff --git a/scenes/main.tscn b/scenes/main.tscn index 3726d66..7c7b7ec 100644 --- a/scenes/main.tscn +++ b/scenes/main.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=26 format=3 uid="uid://dxn87yj8qnfpp"] -[ext_resource type="MeshLibrary" uid="uid://54tpx8cmksfc" path="res://addons/enhanced_gridmap/meshlibrary/default.tres" id="1_110wo"] +[ext_resource type="MeshLibrary" uid="uid://kcv6ans86ug7" path="res://addons/enhanced_gridmap/meshlibrary/default.tres" id="1_110wo"] [ext_resource type="Script" uid="uid://co1ads72by6na" path="res://scenes/main.gd" id="1_xcpe3"] [ext_resource type="Script" uid="uid://bja8ixryvthu0" path="res://addons/enhanced_gridmap/enhanced_gridmap.gd" id="2_hbe1v"] [ext_resource type="Environment" uid="uid://jbptgqvstei3" path="res://assets/main-environment.tres" id="4_ky38j"] @@ -33,29 +33,34 @@ texture = ExtResource("13_ahjgs") [node name="Main" type="Node3D"] script = ExtResource("1_xcpe3") enable_bots = false +turn_based_mode = false [node name="EnhancedGridMap" type="GridMap" parent="."] mesh_library = ExtResource("1_110wo") -cell_size = Vector3(1, 1, 1) +cell_size = Vector3(1, 0.2, 1) data = { -"cells": PackedInt32Array(0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 4, 0, 0, 5, 0, 1, 0, 0, 1, 1, 0, 1, 2, 0, 1, 3, 0, 1, 4, 0, 1, 5, 0, 2, 0, 0, 2, 1, 0, 2, 2, 0, 2, 3, 0, 2, 4, 0, 2, 5, 0, 3, 0, 0, 3, 1, 0, 3, 2, 0, 3, 3, 0, 3, 4, 0, 3, 5, 0, 4, 0, 0, 4, 1, 0, 4, 2, 0, 4, 3, 0, 4, 4, 0, 4, 5, 0, 5, 0, 0, 5, 1, 0, 5, 2, 0, 5, 3, 0, 5, 4, 0, 5, 5, 0, 6, 0, 0, 6, 1, 0, 6, 2, 0, 6, 3, 0, 6, 4, 0, 6, 5, 0, 7, 0, 0, 7, 1, 0, 7, 2, 0, 7, 3, 0, 7, 4, 0, 7, 5, 0, 8, 0, 0, 8, 1, 0, 8, 2, 0, 8, 3, 0, 8, 4, 0, 8, 5, 0, 9, 0, 0, 9, 1, 0, 9, 2, 0, 9, 3, 0, 9, 4, 0, 9, 5, 0, 10, 0, 0, 10, 1, 0, 10, 2, 0, 10, 3, 0, 10, 4, 0, 10, 5, 0, 11, 0, 0, 11, 1, 0, 11, 2, 0, 11, 3, 0, 11, 4, 0, 11, 5, 0, 12, 0, 0, 12, 1, 0, 12, 2, 0, 12, 3, 0, 12, 4, 0, 12, 5, 0, 13, 0, 0, 13, 1, 0, 13, 2, 0, 13, 3, 0, 13, 4, 0, 13, 5, 0, 65537, 0, 9, 65537, 1, 10, 65537, 2, 9, 65537, 3, 8, 65537, 4, 10, 65537, 5, 9, 65538, 0, 7, 65538, 1, 8, 65538, 2, 7, 65538, 3, 8, 65538, 4, 7, 65538, 5, 9, 65539, 0, 8, 65539, 1, 10, 65539, 2, 10, 65539, 3, 8, 65539, 4, 10, 65539, 5, 8, 65540, 0, 7, 65540, 1, 8, 65540, 2, 10, 65540, 3, 7, 65540, 4, 8, 65540, 5, 9, 65541, 0, 7, 65541, 1, 8, 65541, 2, 7, 65541, 3, 9, 65541, 4, 8, 65541, 5, 10, 65542, 0, 8, 65542, 1, 7, 65542, 2, 9, 65542, 3, 10, 65542, 4, 8, 65542, 5, 9, 65543, 0, 10, 65543, 1, 8, 65543, 2, 7, 65543, 3, 10, 65543, 4, 8, 65543, 5, 10, 65544, 0, 7, 65544, 1, 10, 65544, 2, 7, 65544, 3, 9, 65544, 4, 8, 65544, 5, 7, 65545, 0, 7, 65545, 1, 8, 65545, 2, 7, 65545, 3, 7, 65545, 4, 7, 65545, 5, 9, 65546, 0, 7, 65546, 1, 7, 65546, 2, 8, 65546, 3, 8, 65546, 4, 10, 65546, 5, 8, 65547, 0, 7, 65547, 1, 10, 65547, 2, 7, 65547, 3, 9, 65547, 4, 10, 65547, 5, 10, 65548, 0, 8, 65548, 1, 9, 65548, 2, 10, 65548, 3, 7, 65548, 4, 8, 65548, 5, 7, 131072, 0, 2031616, 131072, 1, 2031616, 131072, 2, 2031616, 131072, 3, 2031616, 131072, 4, 2031616, 131072, 5, 2031616, 131073, 0, 2031616, 131073, 1, 2031616, 131073, 2, 2031616, 131073, 3, 2031616, 131073, 4, 2031616, 131073, 5, 2031616, 131074, 0, 2031616, 131074, 1, 2031616, 131074, 2, 2031616, 131074, 3, 2031616, 131074, 4, 2031616, 131074, 5, 2031616, 131075, 0, 2031616, 131075, 1, 2031616, 131075, 2, 2031616, 131075, 3, 2031616, 131075, 4, 2031616, 131075, 5, 2031616, 131076, 0, 2031616, 131076, 1, 2031616, 131076, 2, 2031616, 131076, 3, 2031616, 131076, 4, 2031616, 131076, 5, 2031616, 131077, 0, 2031616, 131077, 1, 2031616, 131077, 2, 2031616, 131077, 3, 2031616, 131077, 4, 2031616, 131077, 5, 2031616, 131078, 0, 2031616, 131078, 1, 2031616, 131078, 2, 2031616, 131078, 3, 2031616, 131078, 4, 2031616, 131078, 5, 2031616, 131079, 0, 2031616, 131079, 1, 2031616, 131079, 2, 2031616, 131079, 3, 2031616, 131079, 4, 2031616, 131079, 5, 2031616, 131080, 0, 2031616, 131080, 1, 2031616, 131080, 2, 2031616, 131080, 3, 2031616, 131080, 4, 2031616, 131080, 5, 2031616, 131081, 0, 2031616, 131081, 1, 2031616, 131081, 2, 2031616, 131081, 3, 2031616, 131081, 4, 2031616, 131081, 5, 2031616, 131082, 0, 2031616, 131082, 1, 2031616, 131082, 2, 2031616, 131082, 3, 2031616, 131082, 4, 2031616, 131082, 5, 2031616, 131083, 0, 2031616, 131083, 1, 2031616, 131083, 2, 2031616, 131083, 3, 2031616, 131083, 4, 2031616, 131083, 5, 2031616, 131084, 0, 2031616, 131084, 1, 2031616, 131084, 2, 2031616, 131084, 3, 2031616, 131084, 4, 2031616, 131084, 5, 2031616, 131085, 0, 2031616, 131085, 1, 2031616, 131085, 2, 2031616, 131085, 3, 2031616, 131085, 4, 2031616, 131085, 5, 2031616) +"cells": PackedInt32Array(65537, 0, 8, 65537, 1, 8, 65537, 2, 6, 65537, 3, 7, 65537, 4, 7, 65537, 5, 6, 65537, 6, 8, 65537, 7, 6, 65537, 8, 8, 65537, 9, 7, 65537, 10, 8, 65537, 11, 9, 65537, 12, 7, 65537, 13, 6, 65538, 0, 9, 65538, 1, 7, 65538, 2, 8, 65538, 3, 7, 65538, 4, 8, 65538, 5, 8, 65538, 6, 9, 65538, 7, 7, 65538, 8, 9, 65538, 9, 8, 65538, 10, 9, 65538, 11, 9, 65538, 12, 8, 65538, 13, 8, 65539, 0, 9, 65539, 1, 6, 65539, 2, 8, 65539, 3, 9, 65539, 4, 7, 65539, 5, 7, 65539, 6, 6, 65539, 7, 8, 65539, 8, 8, 65539, 9, 7, 65539, 10, 8, 65539, 11, 6, 65539, 12, 7, 65539, 13, 7, 65540, 0, 6, 65540, 1, 8, 65540, 2, 8, 65540, 3, 7, 65540, 4, 9, 65540, 5, 8, 65540, 6, 9, 65540, 7, 8, 65540, 8, 9, 65540, 9, 7, 65540, 10, 8, 65540, 11, 8, 65540, 12, 7, 65540, 13, 8, 65541, 0, 8, 65541, 1, 8, 65541, 2, 8, 65541, 3, 9, 65541, 4, 6, 65541, 5, 7, 65541, 6, 7, 65541, 7, 8, 65541, 8, 8, 65541, 9, 8, 65541, 10, 6, 65541, 11, 9, 65541, 12, 9, 65541, 13, 9, 65542, 0, 8, 65542, 1, 8, 65542, 2, 9, 65542, 3, 9, 65542, 4, 7, 65542, 5, 6, 65542, 6, 8, 65542, 7, 6, 65542, 8, 9, 65542, 9, 6, 65542, 10, 6, 65542, 11, 7, 65542, 12, 6, 65542, 13, 7, 65543, 0, 6, 65543, 1, 7, 65543, 2, 8, 65543, 3, 7, 65543, 4, 8, 65543, 5, 7, 65543, 6, 6, 65543, 7, 9, 65543, 8, 9, 65543, 9, 6, 65543, 10, 9, 65543, 11, 6, 65543, 12, 8, 65543, 13, 6, 65544, 0, 9, 65544, 1, 8, 65544, 2, 6, 65544, 3, 7, 65544, 4, 8, 65544, 5, 9, 65544, 6, 8, 65544, 7, 9, 65544, 8, 6, 65544, 9, 8, 65544, 10, 6, 65544, 11, 9, 65544, 12, 6, 65544, 13, 7, 65545, 0, 6, 65545, 1, 9, 65545, 2, 9, 65545, 3, 8, 65545, 4, 9, 65545, 5, 8, 65545, 6, 7, 65545, 7, 8, 65545, 8, 7, 65545, 9, 6, 65545, 10, 8, 65545, 11, 8, 65545, 12, 6, 65545, 13, 8, 65546, 0, 8, 65546, 1, 6, 65546, 2, 6, 65546, 3, 7, 65546, 4, 8, 65546, 5, 7, 65546, 6, 9, 65546, 7, 7, 65546, 8, 6, 65546, 9, 7, 65546, 10, 9, 65546, 11, 7, 65546, 12, 7, 65546, 13, 8, 65547, 0, 7, 65547, 1, 9, 65547, 2, 6, 65547, 3, 9, 65547, 4, 8, 65547, 5, 7, 65547, 6, 6, 65547, 7, 6, 65547, 8, 8, 65547, 9, 8, 65547, 10, 8, 65547, 11, 6, 65547, 12, 9, 65547, 13, 6, 65548, 0, 6, 65548, 1, 6, 65548, 2, 7, 65548, 3, 6, 65548, 4, 8, 65548, 5, 8, 65548, 6, 8, 65548, 7, 9, 65548, 8, 9, 65548, 9, 7, 65548, 10, 9, 65548, 11, 7, 65548, 12, 7, 65548, 13, 8, 131072, 0, 5, 131072, 1, 5, 131072, 2, 5, 131072, 3, 5, 131072, 4, 5, 131072, 5, 5, 131072, 6, 5, 131072, 7, 5, 131072, 8, 5, 131072, 9, 5, 131072, 10, 5, 131072, 11, 5, 131072, 12, 5, 131072, 13, 5, 131073, 0, 5, 131073, 1, 5, 131073, 2, 5, 131073, 3, 5, 131073, 4, 5, 131073, 5, 5, 131073, 6, 5, 131073, 7, 5, 131073, 8, 5, 131073, 9, 5, 131073, 10, 5, 131073, 11, 5, 131073, 12, 5, 131073, 13, 5, 131074, 0, 5, 131074, 1, 5, 131074, 2, 5, 131074, 3, 5, 131074, 4, 5, 131074, 5, 5, 131074, 6, 5, 131074, 7, 5, 131074, 8, 5, 131074, 9, 5, 131074, 10, 5, 131074, 11, 5, 131074, 12, 5, 131074, 13, 5, 131075, 0, 5, 131075, 1, 5, 131075, 2, 5, 131075, 3, 5, 131075, 4, 5, 131075, 5, 5, 131075, 6, 5, 131075, 7, 5, 131075, 8, 5, 131075, 9, 5, 131075, 10, 5, 131075, 11, 5, 131075, 12, 5, 131075, 13, 5, 131076, 0, 5, 131076, 1, 5, 131076, 2, 5, 131076, 3, 5, 131076, 4, 5, 131076, 5, 5, 131076, 6, 5, 131076, 7, 5, 131076, 8, 5, 131076, 9, 5, 131076, 10, 5, 131076, 11, 5, 131076, 12, 5, 131076, 13, 5, 131077, 0, 5, 131077, 1, 5, 131077, 2, 5, 131077, 3, 5, 131077, 4, 5, 131077, 5, 5, 131077, 6, 5, 131077, 7, 5, 131077, 8, 5, 131077, 9, 5, 131077, 10, 5, 131077, 11, 5, 131077, 12, 5, 131077, 13, 5, 131078, 0, 5, 131078, 1, 5, 131078, 2, 5, 131078, 3, 5, 131078, 4, 5, 131078, 5, 5, 131078, 6, 5, 131078, 7, 5, 131078, 8, 5, 131078, 9, 5, 131078, 10, 5, 131078, 11, 5, 131078, 12, 5, 131078, 13, 5, 131079, 0, 5, 131079, 1, 5, 131079, 2, 5, 131079, 3, 5, 131079, 4, 5, 131079, 5, 5, 131079, 6, 5, 131079, 7, 5, 131079, 8, 5, 131079, 9, 5, 131079, 10, 5, 131079, 11, 5, 131079, 12, 5, 131079, 13, 5, 131080, 0, 5, 131080, 1, 5, 131080, 2, 5, 131080, 3, 5, 131080, 4, 5, 131080, 5, 5, 131080, 6, 5, 131080, 7, 5, 131080, 8, 5, 131080, 9, 5, 131080, 10, 5, 131080, 11, 5, 131080, 12, 5, 131080, 13, 5, 131081, 0, 5, 131081, 1, 5, 131081, 2, 5, 131081, 3, 5, 131081, 4, 5, 131081, 5, 5, 131081, 6, 5, 131081, 7, 5, 131081, 8, 5, 131081, 9, 5, 131081, 10, 5, 131081, 11, 5, 131081, 12, 5, 131081, 13, 5, 131082, 0, 5, 131082, 1, 5, 131082, 2, 5, 131082, 3, 5, 131082, 4, 5, 131082, 5, 5, 131082, 6, 5, 131082, 7, 5, 131082, 8, 5, 131082, 9, 5, 131082, 10, 5, 131082, 11, 5, 131082, 12, 5, 131082, 13, 5, 131083, 0, 5, 131083, 1, 5, 131083, 2, 5, 131083, 3, 5, 131083, 4, 5, 131083, 5, 5, 131083, 6, 5, 131083, 7, 5, 131083, 8, 5, 131083, 9, 5, 131083, 10, 5, 131083, 11, 5, 131083, 12, 5, 131083, 13, 5, 131084, 0, 5, 131084, 1, 5, 131084, 2, 5, 131084, 3, 5, 131084, 4, 5, 131084, 5, 5, 131084, 6, 5, 131084, 7, 5, 131084, 8, 5, 131084, 9, 5, 131084, 10, 5, 131084, 11, 5, 131084, 12, 5, 131084, 13, 5, 131085, 0, 5, 131085, 1, 5, 131085, 2, 5, 131085, 3, 5, 131085, 4, 5, 131085, 5, 5, 131085, 6, 5, 131085, 7, 5, 131085, 8, 5, 131085, 9, 5, 131085, 10, 5, 131085, 11, 5, 131085, 12, 5, 131085, 13, 5, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 3, 0, 0, 4, 0, 0, 5, 0, 0, 6, 0, 0, 7, 0, 0, 8, 0, 0, 9, 0, 0, 10, 0, 0, 11, 0, 0, 12, 0, 0, 13, 0, 1, 0, 0, 1, 1, 0, 1, 2, 0, 1, 3, 0, 1, 4, 0, 1, 5, 0, 1, 6, 0, 1, 7, 0, 1, 8, 0, 1, 9, 0, 1, 10, 0, 1, 11, 0, 1, 12, 0, 1, 13, 0, 2, 0, 0, 2, 1, 0, 2, 2, 0, 2, 3, 0, 2, 4, 0, 2, 5, 0, 2, 6, 0, 2, 7, 0, 2, 8, 0, 2, 9, 0, 2, 10, 0, 2, 11, 0, 2, 12, 0, 2, 13, 0, 3, 0, 0, 3, 1, 0, 3, 2, 0, 3, 3, 0, 3, 4, 0, 3, 5, 0, 3, 6, 0, 3, 7, 0, 3, 8, 0, 3, 9, 0, 3, 10, 0, 3, 11, 0, 3, 12, 0, 3, 13, 0, 4, 0, 0, 4, 1, 0, 4, 2, 0, 4, 3, 0, 4, 4, 0, 4, 5, 0, 4, 6, 0, 4, 7, 0, 4, 8, 0, 4, 9, 0, 4, 10, 0, 4, 11, 0, 4, 12, 0, 4, 13, 0, 5, 0, 0, 5, 1, 0, 5, 2, 0, 5, 3, 0, 5, 4, 0, 5, 5, 0, 5, 6, 0, 5, 7, 0, 5, 8, 0, 5, 9, 0, 5, 10, 0, 5, 11, 0, 5, 12, 0, 5, 13, 0, 6, 0, 0, 6, 1, 0, 6, 2, 0, 6, 3, 0, 6, 4, 0, 6, 5, 0, 6, 6, 0, 6, 7, 0, 6, 8, 0, 6, 9, 0, 6, 10, 0, 6, 11, 0, 6, 12, 0, 6, 13, 0, 7, 0, 0, 7, 1, 0, 7, 2, 0, 7, 3, 0, 7, 4, 0, 7, 5, 0, 7, 6, 0, 7, 7, 0, 7, 8, 0, 7, 9, 0, 7, 10, 0, 7, 11, 0, 7, 12, 0, 7, 13, 0, 8, 0, 0, 8, 1, 0, 8, 2, 0, 8, 3, 0, 8, 4, 0, 8, 5, 0, 8, 6, 0, 8, 7, 0, 8, 8, 0, 8, 9, 0, 8, 10, 0, 8, 11, 0, 8, 12, 0, 8, 13, 0, 9, 0, 0, 9, 1, 0, 9, 2, 0, 9, 3, 0, 9, 4, 0, 9, 5, 0, 9, 6, 0, 9, 7, 0, 9, 8, 0, 9, 9, 0, 9, 10, 0, 9, 11, 0, 9, 12, 0, 9, 13, 0, 10, 0, 0, 10, 1, 0, 10, 2, 0, 10, 3, 0, 10, 4, 0, 10, 5, 0, 10, 6, 0, 10, 7, 0, 10, 8, 0, 10, 9, 0, 10, 10, 0, 10, 11, 0, 10, 12, 0, 10, 13, 0, 11, 0, 0, 11, 1, 0, 11, 2, 0, 11, 3, 0, 11, 4, 0, 11, 5, 0, 11, 6, 0, 11, 7, 0, 11, 8, 0, 11, 9, 0, 11, 10, 0, 11, 11, 0, 11, 12, 0, 11, 13, 0, 12, 0, 0, 12, 1, 0, 12, 2, 0, 12, 3, 0, 12, 4, 0, 12, 5, 0, 12, 6, 0, 12, 7, 0, 12, 8, 0, 12, 9, 0, 12, 10, 0, 12, 11, 0, 12, 12, 0, 12, 13, 0, 13, 0, 0, 13, 1, 0, 13, 2, 0, 13, 3, 0, 13, 4, 0, 13, 5, 0, 13, 6, 0, 13, 7, 0, 13, 8, 0, 13, 9, 0, 13, 10, 0, 13, 11, 0, 13, 12, 0, 13, 13, 0) } script = ExtResource("2_hbe1v") columns = 14 -rows = 6 +rows = 14 +floors = 2 obstacle_items = Array[int]([12]) metadata/_editor_floor_ = Vector3(0, 1, 0) [node name="Camera3D" type="Camera3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 0.422618, 0.906308, 0, -0.906308, 0.422618, 7, 19, 11.2354) +transform = Transform3D(1, 0, 0, 0, 0.422618, 0.906308, 0, -0.906308, 0.422618, 7, 22.925, 18.4489) environment = ExtResource("4_ky38j") +current = true fov = 35.5 [node name="Camera3D200" type="Camera3D" parent="."] -transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 5, 30, 5) -visible = false +transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 7, 15, 7) environment = ExtResource("4_ky38j") +projection = 1 +current = true fov = 35.5 +size = 23.0 [node name="Panel" type="Panel" parent="."] offset_left = 40.0