Start fixing map scrolling by moving TileMapLayer outside of container

This commit is contained in:
Torsten 2025-11-23 14:28:48 +01:00
parent 4b8417ceb6
commit a83692f9d6
4 changed files with 86 additions and 39 deletions

View file

@ -1,23 +1,23 @@
[gd_scene load_steps=24 format=4 uid="uid://li0mfftily5e"]
[ext_resource type="Texture2D" uid="uid://berwv00k5ffjm" path="res://assets/spritesheets/map_hex_terrain_72x72_spritesheet.png" id="1_4oycp"]
[ext_resource type="Script" uid="uid://dnfabi8ksjvm2" path="res://scenes/MainMap/map/map_layer_logic.gd" id="1_74o3d"]
[ext_resource type="Script" uid="uid://rxaxc2114upf" path="res://scenes/MainMap/map/map_manager.gd" id="1_fax2j"]
[ext_resource type="Script" uid="uid://wvdosjbdlsjd" path="res://scenes/MainMap/ui/btn_palette.gd" id="2_fax2j"]
[ext_resource type="Texture2D" uid="uid://cit5dnn6eoun1" path="res://assets/spritesheets/ui_72x72_spritesheet.png" id="3_gpn0d"]
[ext_resource type="Texture2D" uid="uid://bf0ux0t00blb7" path="res://assets/spritesheets/map_buildings_72x72_spritesheet.png" id="3_kyvod"]
[ext_resource type="Script" uid="uid://bcrhouavyrrm" path="res://scenes/MainMap/map/cursor_map_layer.gd" id="4_qib1m"]
[ext_resource type="Script" uid="uid://bqj8p0m6qt43k" path="res://scenes/MainMap/map/cursor_timer.gd" id="5_8wy1m"]
[ext_resource type="Script" uid="uid://csi8if4m6a78v" path="res://scenes/MainMap/map_menu.gd" id="7_cooet"]
[ext_resource type="Script" uid="uid://1nbd6r3bgx6i" path="res://scenes/MainMap/resource_saver.gd" id="8_4uh5x"]
[ext_resource type="Script" uid="uid://b5v0k8cmkbrsr" path="res://scenes/MainMap/startup.gd" id="8_y3acc"]
[ext_resource type="Texture2D" uid="uid://cqb2af3gx5fp6" path="res://assets/ui_images/button_up.png" id="9_e5fbg"]
[ext_resource type="Texture2D" uid="uid://4rr1pyik2cer" path="res://assets/ui_images/button_down.png" id="10_26b7d"]
[ext_resource type="Texture2D" uid="uid://imyg8w7q7edx" path="res://assets/ui_images/button_left.png" id="11_33jd8"]
[ext_resource type="Texture2D" uid="uid://b81ubyqonighc" path="res://assets/ui_images/button_right.png" id="12_myd42"]
[ext_resource type="Texture2D" uid="uid://berwv00k5ffjm" path="res://assets/spritesheets/map_hex_terrain_72x72_spritesheet.png" id="1_b7yd6"]
[ext_resource type="Script" uid="uid://dnfabi8ksjvm2" path="res://scenes/MainMap/map/map_layer_logic.gd" id="2_phmqw"]
[ext_resource type="Texture2D" uid="uid://bf0ux0t00blb7" path="res://assets/spritesheets/map_buildings_72x72_spritesheet.png" id="3_37pm7"]
[ext_resource type="Texture2D" uid="uid://cit5dnn6eoun1" path="res://assets/spritesheets/ui_72x72_spritesheet.png" id="4_hv2ps"]
[ext_resource type="Script" uid="uid://bcrhouavyrrm" path="res://scenes/MainMap/map/cursor_map_layer.gd" id="5_hkmvc"]
[ext_resource type="Script" uid="uid://bqj8p0m6qt43k" path="res://scenes/MainMap/map/cursor_timer.gd" id="6_p0er2"]
[ext_resource type="Script" uid="uid://csi8if4m6a78v" path="res://scenes/MainMap/map_menu.gd" id="7_r14cd"]
[ext_resource type="Script" uid="uid://wvdosjbdlsjd" path="res://scenes/MainMap/ui/btn_palette.gd" id="8_00k7a"]
[ext_resource type="Texture2D" uid="uid://cqb2af3gx5fp6" path="res://assets/ui_images/button_up.png" id="9_02xsc"]
[ext_resource type="Texture2D" uid="uid://4rr1pyik2cer" path="res://assets/ui_images/button_down.png" id="10_tt8tc"]
[ext_resource type="Texture2D" uid="uid://imyg8w7q7edx" path="res://assets/ui_images/button_left.png" id="11_op3rv"]
[ext_resource type="Texture2D" uid="uid://b81ubyqonighc" path="res://assets/ui_images/button_right.png" id="12_vfed4"]
[ext_resource type="Script" uid="uid://1nbd6r3bgx6i" path="res://scenes/MainMap/resource_saver.gd" id="13_pc813"]
[ext_resource type="Script" uid="uid://b5v0k8cmkbrsr" path="res://scenes/MainMap/startup.gd" id="14_j4tso"]
[ext_resource type="Script" uid="uid://rxaxc2114upf" path="res://scenes/MainMap/map/map_manager.gd" id="15_sjwfn"]
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_trqik"]
texture = ExtResource("1_4oycp")
texture = ExtResource("1_b7yd6")
separation = Vector2i(1, 1)
texture_region_size = Vector2i(72, 72)
0:0/0 = 0
@ -86,7 +86,7 @@ sources/1 = SubResource("TileSetAtlasSource_trqik")
tile_proxies/coords_level = [[0, Vector2i(0, 0)], [51, Vector2i(0, 0)], [1, Vector2i(0, 0)], [51, Vector2i(1, 0)], [2, Vector2i(0, 0)], [51, Vector2i(2, 0)], [3, Vector2i(0, 0)], [51, Vector2i(3, 0)], [4, Vector2i(0, 0)], [51, Vector2i(4, 0)], [5, Vector2i(0, 0)], [51, Vector2i(5, 0)], [6, Vector2i(0, 0)], [51, Vector2i(6, 0)], [7, Vector2i(0, 0)], [51, Vector2i(0, 1)], [8, Vector2i(0, 0)], [51, Vector2i(1, 1)], [9, Vector2i(0, 0)], [51, Vector2i(2, 1)], [10, Vector2i(0, 0)], [51, Vector2i(3, 1)], [11, Vector2i(0, 0)], [51, Vector2i(4, 1)], [12, Vector2i(0, 0)], [51, Vector2i(5, 1)], [13, Vector2i(0, 0)], [51, Vector2i(6, 1)], [14, Vector2i(0, 0)], [51, Vector2i(0, 2)], [15, Vector2i(0, 0)], [51, Vector2i(1, 2)], [16, Vector2i(0, 0)], [51, Vector2i(2, 2)], [17, Vector2i(0, 0)], [51, Vector2i(3, 2)], [18, Vector2i(0, 0)], [51, Vector2i(4, 2)], [19, Vector2i(0, 0)], [51, Vector2i(5, 2)], [20, Vector2i(0, 0)], [51, Vector2i(6, 2)], [21, Vector2i(0, 0)], [51, Vector2i(0, 3)], [22, Vector2i(0, 0)], [51, Vector2i(1, 3)], [23, Vector2i(0, 0)], [51, Vector2i(2, 3)], [24, Vector2i(0, 0)], [51, Vector2i(3, 3)], [25, Vector2i(0, 0)], [51, Vector2i(4, 3)], [26, Vector2i(0, 0)], [51, Vector2i(5, 3)], [27, Vector2i(0, 0)], [51, Vector2i(6, 3)], [28, Vector2i(0, 0)], [51, Vector2i(0, 4)], [29, Vector2i(0, 0)], [51, Vector2i(1, 4)], [30, Vector2i(0, 0)], [51, Vector2i(2, 4)], [31, Vector2i(0, 0)], [51, Vector2i(3, 4)], [32, Vector2i(0, 0)], [51, Vector2i(4, 4)], [33, Vector2i(0, 0)], [51, Vector2i(5, 4)], [34, Vector2i(0, 0)], [51, Vector2i(6, 4)], [35, Vector2i(0, 0)], [51, Vector2i(0, 5)], [36, Vector2i(0, 0)], [51, Vector2i(1, 5)], [37, Vector2i(0, 0)], [51, Vector2i(2, 5)], [38, Vector2i(0, 0)], [51, Vector2i(3, 5)], [39, Vector2i(0, 0)], [51, Vector2i(4, 5)], [40, Vector2i(0, 0)], [51, Vector2i(5, 5)], [41, Vector2i(0, 0)], [51, Vector2i(6, 5)], [42, Vector2i(0, 0)], [51, Vector2i(0, 6)], [43, Vector2i(0, 0)], [51, Vector2i(1, 6)], [44, Vector2i(0, 0)], [51, Vector2i(2, 6)], [45, Vector2i(0, 0)], [51, Vector2i(3, 6)], [46, Vector2i(0, 0)], [51, Vector2i(4, 6)], [47, Vector2i(0, 0)], [51, Vector2i(5, 6)], [48, Vector2i(0, 0)], [51, Vector2i(6, 6)], [49, Vector2i(0, 0)], [51, Vector2i(0, 7)], [50, Vector2i(0, 0)], [51, Vector2i(1, 7)]]
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_4uh5x"]
texture = ExtResource("3_kyvod")
texture = ExtResource("3_37pm7")
texture_region_size = Vector2i(72, 72)
0:0/0 = 0
1:0/0 = 0
@ -99,7 +99,7 @@ tile_size = Vector2i(72, 72)
sources/1 = SubResource("TileSetAtlasSource_4uh5x")
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_qib1m"]
texture = ExtResource("3_gpn0d")
texture = ExtResource("4_hv2ps")
texture_region_size = Vector2i(72, 72)
0:0/0 = 0
@ -129,10 +129,20 @@ metadata/_edit_use_anchors_ = true
[node name="Camera2D" type="Camera2D" parent="."]
unique_name_in_owner = true
anchor_mode = 0
drag_horizontal_enabled = true
drag_vertical_enabled = true
editor_draw_limits = true
editor_draw_drag_margin = true
[node name="GroundMapLayer" type="TileMapLayer" parent="."]
unique_name_in_owner = true
position = Vector2(0, 44)
tile_map_data = PackedByteArray("AAAEAAMAAQAHAAEAAAAEAAIAAQAHAAEAAAAFAAIAAQAHAAEAAAAFAAEAAQAHAAEAAAAGAAEAAQAHAAEAAAAGAAAAAQADAAIAAAAHAAAAAQAHAAEAAAAHAP//AQADAAIAAAAIAP//AQAHAAEAAAAIAP7/AQAHAAEAAAAJAP7/AQAHAAEAAAAKAP7/AQAHAAEAAAAKAP3/AQAHAAEAAAALAP3/AQAHAAEAAAALAPz/AQAHAAEAAAAMAPz/AQAHAAEAAAAMAPv/AQAHAAEAAAANAPv/AQAHAAEAAAANAPr/AQAHAAEAAAAOAPr/AQAHAAEAAAAOAPn/AQADAAIAAAAPAPn/AQADAAIAAAAPAPj/AQAFAAAAAAAQAPj/AQADAAIAAAAKAPz/AQADAAIAAAAJAP3/AQADAAIAAAAIAAAAAQAHAAEAAAAJAAAAAQAHAAEAAAAJAP//AQAHAAEAAAAKAP//AQAHAAEAAAALAP7/AQAHAAEAAAAPAPr/AQAHAAEAAAAOAPv/AQAHAAEAAAANAPz/AQAHAAEAAAAMAP3/AQAHAAEAAAALAP//AQAHAAEAAAAMAP//AQAHAAEAAAAMAP7/AQAHAAEAAAAPAPv/AQAHAAEAAAAQAPr/AQADAAIAAAAQAPv/AQAHAAEAAAAOAPz/AQAHAAEAAAANAP3/AQAHAAEAAAAIAAEAAQAHAAEAAAAHAAEAAQAHAAEAAAAIAAIAAQAHAAEAAAAHAAIAAQAHAAEAAAAHAAMAAQAHAAEAAAAGAAMAAQAHAAEAAAAGAAIAAQAHAAEAAAAJAAIAAQAHAAEAAAAJAAEAAQAHAAEAAAAKAAEAAQAHAAEAAAAKAAAAAQAHAAEAAAALAAAAAQAHAAEAAAAIAAMAAQAHAAEAAAAHAAQAAQAHAAEAAAAGAAQAAQAHAAEAAAAGAAUAAQAHAAEAAAAFAAUAAQAHAAEAAAAHAAUAAQAHAAEAAAAIAAUAAQAHAAEAAAAIAAQAAQAHAAEAAAAJAAQAAQAHAAEAAAAJAAMAAQAHAAEAAAAKAAMAAQAHAAEAAAAKAAIAAQAHAAEAAAALAAIAAQAHAAEAAAALAAEAAQAHAAEAAAAMAAEAAQAHAAEAAAAMAAAAAQAHAAEAAAANAAAAAQAHAAEAAAAOAAAAAQAHAAEAAAAOAP//AQAHAAEAAAAPAP//AQAHAAEAAAAQAP//AQAHAAEAAAAQAP7/AQAHAAEAAAARAP7/AQAHAAEAAAARAP3/AQAHAAEAAAASAP3/AQAHAAEAAAASAP7/AQAHAAEAAAARAP//AQAHAAEAAAAQAAAAAQAHAAEAAAAPAAAAAQAHAAEAAAAPAAEAAQAHAAEAAAAOAAEAAQAHAAEAAAANAAEAAQAHAAEAAAANAAIAAQAHAAEAAAAMAAIAAQAHAAEAAAAMAAMAAQAHAAEAAAALAAMAAQAHAAEAAAALAAQAAQAHAAEAAAAKAAQAAQAHAAEAAAAKAAUAAQAHAAEAAAAJAAUAAQAHAAEAAAAJAAYAAQAHAAEAAAAOAAIAAQAHAAEAAAANAAMAAQAHAAEAAAAMAAQAAQAHAAEAAAAPAP7/AQAHAAEAAAAPAP3/AQAHAAEAAAAOAP3/AQAHAAEAAAANAP7/AQAHAAEAAAANAP//AQAHAAEAAAASAPz/AQAHAAEAAAATAPz/AQAHAAEAAAATAPv/AQAHAAEAAAAUAPv/AQAHAAEAAAAUAPr/AQAHAAEAAAAVAPr/AQAHAAEAAAAVAPn/AQAHAAEAAAAWAPn/AQAHAAEAAAAVAPj/AQAHAAEAAAAUAPf/AQAHAAEAAAATAPf/AQADAAIAAAASAPf/AQADAAIAAAARAPf/AQADAAIAAAARAPj/AQADAAIAAAAQAP3/AQAHAAEAAAARAPz/AQAHAAEAAAARAPv/AQAHAAEAAAASAPv/AQAHAAEAAAASAPr/AQAHAAEAAAATAPr/AQAHAAEAAAATAPn/AQAHAAEAAAAQAPz/AQAHAAEAAAAPAPz/AQAHAAEAAAAOAP7/AQAHAAEAAAASAPn/AQADAAIAAAARAPr/AQAHAAEAAAAFAAMAAQAHAAEAAAANAPn/AQAFAAAAAAAMAPr/AQADAAIAAAALAPr/AQADAAIAAAAKAPr/AQAHAAEAAAAKAPv/AQADAAIAAAAJAPv/AQAHAAEAAAAIAPv/AQAHAAEAAAAHAPv/AQAHAAEAAAAHAPz/AQAHAAEAAAAGAPz/AQAHAAEAAAAGAP3/AQADAAIAAAAFAP3/AQAHAAEAAAAFAP7/AQADAAIAAAAEAP7/AQAHAAEAAAAEAP//AQADAAIAAAADAP//AQAHAAEAAAADAAAAAQADAAIAAAAEAAAAAQADAAIAAAAJAPz/AQADAAIAAAAIAPz/AQADAAIAAAAIAP3/AQADAAIAAAAHAP3/AQADAAIAAAAGAP7/AQADAAIAAAAFAP//AQADAAIAAAAEAAEAAQADAAIAAAAFAAAAAQADAAIAAAAGAP//AQADAAIAAAAHAP7/AQADAAIAAAALAPv/AQADAAIAAAAQAPn/AQADAAIAAAARAPn/AQADAAIAAAASAPj/AQADAAIAAAATAPj/AQADAAIAAAAMAPn/AQAFAAAAAAALAPb/AQAFAAAAAAAMAPb/AQAFAAAAAAANAPb/AQAFAAAAAAANAPX/AQAFAAAAAAAOAPX/AQAFAAAAAAAPAPX/AQAFAAAAAAAQAPX/AQAFAAAAAAAPAPT/AQAFAAAAAAAOAPT/AQAFAAAAAAANAPf/AQAFAAAAAAAOAPf/AQAFAAAAAAAOAPb/AQAFAAAAAAAMAPf/AQAFAAAAAAAMAPj/AQAFAAAAAAANAPj/AQAFAAAAAAAOAPj/AQAFAAAAAAAPAPf/AQAFAAAAAAAPAPb/AQAFAAAAAAALAPj/AQAFAAAAAAALAPn/AQAFAAAAAAAQAPf/AQAFAAAAAAAQAPb/AQAFAAAAAAARAPb/AQAFAAAAAAARAPX/AQAFAAAAAAARAPT/AQAFAAAAAAAQAPT/AQAFAAAAAAA=")
tile_set = SubResource("TileSet_oxvhj")
script = ExtResource("2_phmqw")
[node name="VBoxContainer" type="VBoxContainer" parent="."]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
@ -152,12 +162,6 @@ clip_contents = true
layout_mode = 2
size_flags_vertical = 3
[node name="GroundMapLayer" type="TileMapLayer" parent="VBoxContainer/Map"]
unique_name_in_owner = true
tile_map_data = PackedByteArray("AAAEAAMAAQAHAAEAAAAEAAIAAQAHAAEAAAAFAAIAAQAHAAEAAAAFAAEAAQAHAAEAAAAGAAEAAQAHAAEAAAAGAAAAAQADAAIAAAAHAAAAAQAHAAEAAAAHAP//AQADAAIAAAAIAP//AQAHAAEAAAAIAP7/AQAHAAEAAAAJAP7/AQAHAAEAAAAKAP7/AQAHAAEAAAAKAP3/AQAHAAEAAAALAP3/AQAHAAEAAAALAPz/AQAHAAEAAAAMAPz/AQAHAAEAAAAMAPv/AQAHAAEAAAANAPv/AQAHAAEAAAANAPr/AQAHAAEAAAAOAPr/AQAHAAEAAAAOAPn/AQADAAIAAAAPAPn/AQADAAIAAAAPAPj/AQAFAAAAAAAQAPj/AQADAAIAAAAKAPz/AQADAAIAAAAJAP3/AQADAAIAAAAIAAAAAQAHAAEAAAAJAAAAAQAHAAEAAAAJAP//AQAHAAEAAAAKAP//AQAHAAEAAAALAP7/AQAHAAEAAAAPAPr/AQAHAAEAAAAOAPv/AQAHAAEAAAANAPz/AQAHAAEAAAAMAP3/AQAHAAEAAAALAP//AQAHAAEAAAAMAP//AQAHAAEAAAAMAP7/AQAHAAEAAAAPAPv/AQAHAAEAAAAQAPr/AQADAAIAAAAQAPv/AQAHAAEAAAAOAPz/AQAHAAEAAAANAP3/AQAHAAEAAAAIAAEAAQAHAAEAAAAHAAEAAQAHAAEAAAAIAAIAAQAHAAEAAAAHAAIAAQAHAAEAAAAHAAMAAQAHAAEAAAAGAAMAAQAHAAEAAAAGAAIAAQAHAAEAAAAJAAIAAQAHAAEAAAAJAAEAAQAHAAEAAAAKAAEAAQAHAAEAAAAKAAAAAQAHAAEAAAALAAAAAQAHAAEAAAAIAAMAAQAHAAEAAAAHAAQAAQAHAAEAAAAGAAQAAQAHAAEAAAAGAAUAAQAHAAEAAAAFAAUAAQAHAAEAAAAHAAUAAQAHAAEAAAAIAAUAAQAHAAEAAAAIAAQAAQAHAAEAAAAJAAQAAQAHAAEAAAAJAAMAAQAHAAEAAAAKAAMAAQAHAAEAAAAKAAIAAQAHAAEAAAALAAIAAQAHAAEAAAALAAEAAQAHAAEAAAAMAAEAAQAHAAEAAAAMAAAAAQAHAAEAAAANAAAAAQAHAAEAAAAOAAAAAQAHAAEAAAAOAP//AQAHAAEAAAAPAP//AQAHAAEAAAAQAP//AQAHAAEAAAAQAP7/AQAHAAEAAAARAP7/AQAHAAEAAAARAP3/AQAHAAEAAAASAP3/AQAHAAEAAAASAP7/AQAHAAEAAAARAP//AQAHAAEAAAAQAAAAAQAHAAEAAAAPAAAAAQAHAAEAAAAPAAEAAQAHAAEAAAAOAAEAAQAHAAEAAAANAAEAAQAHAAEAAAANAAIAAQAHAAEAAAAMAAIAAQAHAAEAAAAMAAMAAQAHAAEAAAALAAMAAQAHAAEAAAALAAQAAQAHAAEAAAAKAAQAAQAHAAEAAAAKAAUAAQAHAAEAAAAJAAUAAQAHAAEAAAAJAAYAAQAHAAEAAAAOAAIAAQAHAAEAAAANAAMAAQAHAAEAAAAMAAQAAQAHAAEAAAAPAP7/AQAHAAEAAAAPAP3/AQAHAAEAAAAOAP3/AQAHAAEAAAANAP7/AQAHAAEAAAANAP//AQAHAAEAAAASAPz/AQAHAAEAAAATAPz/AQAHAAEAAAATAPv/AQAHAAEAAAAUAPv/AQAHAAEAAAAUAPr/AQAHAAEAAAAVAPr/AQAHAAEAAAAVAPn/AQAHAAEAAAAWAPn/AQAHAAEAAAAVAPj/AQAHAAEAAAAUAPf/AQAHAAEAAAATAPf/AQADAAIAAAASAPf/AQADAAIAAAARAPf/AQADAAIAAAARAPj/AQADAAIAAAAQAP3/AQAHAAEAAAARAPz/AQAHAAEAAAARAPv/AQAHAAEAAAASAPv/AQAHAAEAAAASAPr/AQAHAAEAAAATAPr/AQAHAAEAAAATAPn/AQAHAAEAAAAQAPz/AQAHAAEAAAAPAPz/AQAHAAEAAAAOAP7/AQAHAAEAAAASAPn/AQADAAIAAAARAPr/AQAHAAEAAAAFAAMAAQAHAAEAAAANAPn/AQAFAAAAAAAMAPr/AQADAAIAAAALAPr/AQADAAIAAAAKAPr/AQAHAAEAAAAKAPv/AQADAAIAAAAJAPv/AQAHAAEAAAAIAPv/AQAHAAEAAAAHAPv/AQAHAAEAAAAHAPz/AQAHAAEAAAAGAPz/AQAHAAEAAAAGAP3/AQADAAIAAAAFAP3/AQAHAAEAAAAFAP7/AQADAAIAAAAEAP7/AQAHAAEAAAAEAP//AQADAAIAAAADAP//AQAHAAEAAAADAAAAAQADAAIAAAAEAAAAAQADAAIAAAAJAPz/AQADAAIAAAAIAPz/AQADAAIAAAAIAP3/AQADAAIAAAAHAP3/AQADAAIAAAAGAP7/AQADAAIAAAAFAP//AQADAAIAAAAEAAEAAQADAAIAAAAFAAAAAQADAAIAAAAGAP//AQADAAIAAAAHAP7/AQADAAIAAAALAPv/AQADAAIAAAAQAPn/AQADAAIAAAARAPn/AQADAAIAAAASAPj/AQADAAIAAAATAPj/AQADAAIAAAAMAPn/AQAFAAAAAAALAPb/AQAFAAAAAAAMAPb/AQAFAAAAAAANAPb/AQAFAAAAAAANAPX/AQAFAAAAAAAOAPX/AQAFAAAAAAAPAPX/AQAFAAAAAAAQAPX/AQAFAAAAAAAPAPT/AQAFAAAAAAAOAPT/AQAFAAAAAAANAPf/AQAFAAAAAAAOAPf/AQAFAAAAAAAOAPb/AQAFAAAAAAAMAPf/AQAFAAAAAAAMAPj/AQAFAAAAAAANAPj/AQAFAAAAAAAOAPj/AQAFAAAAAAAPAPf/AQAFAAAAAAAPAPb/AQAFAAAAAAALAPj/AQAFAAAAAAALAPn/AQAFAAAAAAAQAPf/AQAFAAAAAAAQAPb/AQAFAAAAAAARAPb/AQAFAAAAAAARAPX/AQAFAAAAAAARAPT/AQAFAAAAAAAQAPT/AQAFAAAAAAA=")
tile_set = SubResource("TileSet_oxvhj")
script = ExtResource("1_74o3d")
[node name="BuildingMapLayer" type="TileMapLayer" parent="VBoxContainer/Map"]
tile_map_data = PackedByteArray("AAANAAMAAQABAAAAAAAFAP7/AQABAAAAAAAFAP3/AQAAAAAAAAAOAP3/AQABAAAAAAA=")
tile_set = SubResource("TileSet_y3acc")
@ -165,11 +169,11 @@ tile_set = SubResource("TileSet_y3acc")
[node name="CursorMapLayer" type="TileMapLayer" parent="VBoxContainer/Map"]
visible = false
tile_set = SubResource("TileSet_fax2j")
script = ExtResource("4_qib1m")
script = ExtResource("5_hkmvc")
[node name="MapCursorTimer" type="Timer" parent="VBoxContainer/Map"]
unique_name_in_owner = true
script = ExtResource("5_8wy1m")
script = ExtResource("6_p0er2")
[node name="UI" type="CanvasLayer" parent="."]
@ -231,7 +235,7 @@ size_flags_vertical = 0
unique_name_in_owner = true
layout_mode = 2
text = "Karte"
script = ExtResource("7_cooet")
script = ExtResource("7_r14cd")
[node name="MapMenuContainer" type="VBoxContainer" parent="UI/MenuTop/MapMenu"]
unique_name_in_owner = true
@ -261,7 +265,7 @@ item_3/text = "Speichern als"
unique_name_in_owner = true
layout_mode = 2
text = "Palette"
script = ExtResource("2_fax2j")
script = ExtResource("8_00k7a")
[node name="MapName" type="Label" parent="UI/MenuTop"]
unique_name_in_owner = true
@ -278,7 +282,7 @@ clip_contents = true
custom_minimum_size = Vector2(32, 32)
layout_mode = 2
size_flags_horizontal = 3
texture_normal = ExtResource("9_e5fbg")
texture_normal = ExtResource("9_02xsc")
ignore_texture_size = true
stretch_mode = 4
@ -288,7 +292,7 @@ clip_contents = true
custom_minimum_size = Vector2(32, 32)
layout_mode = 2
size_flags_horizontal = 3
texture_normal = ExtResource("10_26b7d")
texture_normal = ExtResource("10_tt8tc")
ignore_texture_size = true
stretch_mode = 4
@ -298,7 +302,7 @@ clip_contents = true
custom_minimum_size = Vector2(32, 32)
layout_mode = 2
size_flags_horizontal = 3
texture_normal = ExtResource("11_33jd8")
texture_normal = ExtResource("11_op3rv")
ignore_texture_size = true
stretch_mode = 4
@ -308,7 +312,7 @@ clip_contents = true
custom_minimum_size = Vector2(32, 32)
layout_mode = 2
size_flags_horizontal = 3
texture_normal = ExtResource("12_myd42")
texture_normal = ExtResource("12_vfed4")
ignore_texture_size = true
stretch_mode = 4
@ -321,13 +325,13 @@ unique_name_in_owner = true
[node name="ResourceSaver" type="Node" parent="Data"]
unique_name_in_owner = true
script = ExtResource("8_4uh5x")
script = ExtResource("13_pc813")
[node name="Logic" type="Node" parent="."]
[node name="Startup" type="Node" parent="Logic"]
script = ExtResource("8_y3acc")
script = ExtResource("14_j4tso")
[node name="MapManager" type="Node" parent="Logic"]
unique_name_in_owner = true
script = ExtResource("1_fax2j")
script = ExtResource("15_sjwfn")

View file

@ -33,3 +33,40 @@ func _input(event: InputEvent):
elif event.button_index == MOUSE_BUTTON_RIGHT:
print("Click right")
set_cell(cell_pos, -1) # Erase tile
# Demo code from AI
# Demo funcs from AI
func _draw():
var used_cells = %GroundMapLayer.get_used_cells()
if used_cells.size() == 0:
return
# Calculate bounds of used cells
var min_x = used_cells[0].x
var max_x = used_cells[0].x
var min_y = used_cells[0].y
var max_y = used_cells[0].y
for cell in used_cells:
min_x = min(min_x, cell.x)
max_x = max(max_x, cell.x)
min_y = min(min_y, cell.y)
max_y = max(max_y, cell.y)
var cell_size = %GroundMapLayer.tile_set.tile_size
# Rectangle in pixels to draw border
var rect_pos = Vector2i(min_x, min_y) * cell_size
var rect_size = (Vector2i(max_x - min_x + 1, max_y - min_y + 1)) * cell_size
print(rect_pos,rect_size)
# Draw rectangle border
#draw_rect(Rect2(rect_pos, rect_size), Color(1, 0, 0), false, 2)
draw_rect(Rect2(Vector2(100,100), Vector2i(800,800)), Color(1, 0, 0), false, 2)
#func _process(delta):
# queue_redraw() # Redraw continuously

View file

@ -188,6 +188,8 @@ func scroll_down():
func scroll_left():
var tile_width = ground_map.tile_set.tile_size.x
camera_2d.position.x -= tile_width
%GroundMapLayer.update_internals()
%GroundMapLayer.queue_redraw()
func scroll_right():
var tile_width = ground_map.tile_set.tile_size.x

View file

@ -42,7 +42,11 @@ func loadMap(map_file_name):
%GroundMapLayer.set_cell(cell_pos, source_id, atlas_coords)
## TODO: Set TileMapLayer cells according to loaded info
#for cell in map.cells:
# #%GroundMapLayer.get_used_cells() = map.cells#
# print(cell)
# Set fake cells to ensure map size
#%GroundMapLayer.set_cell(Vector2i(-1000,-1000), 0, Vector2i(0,0))
#%GroundMapLayer.set_cell(Vector2i(1000,-1000), 0, Vector2i(0,0))
#%GroundMapLayer.set_cell(Vector2i(-1000,1000), 0, Vector2i(0,0))
#%GroundMapLayer.set_cell(Vector2i(1000,1000), 0, Vector2i(0,0))
%GroundMapLayer.update_internals()
%GroundMapLayer.queue_redraw()
#