diff --git a/Cirno.sln.DotSettings.user b/Cirno.sln.DotSettings.user index 88d78c0d..f913af17 100644 --- a/Cirno.sln.DotSettings.user +++ b/Cirno.sln.DotSettings.user @@ -22,6 +22,7 @@ ForceIncluded ForceIncluded ForceIncluded + ForceIncluded ForceIncluded ForceIncluded ForceIncluded diff --git a/Resources/RogueliteMaps/Corridor_1x2.tres b/Resources/RogueliteMaps/Corridor_1x2.tres new file mode 100644 index 00000000..0cedf8f7 --- /dev/null +++ b/Resources/RogueliteMaps/Corridor_1x2.tres @@ -0,0 +1,19 @@ +[gd_resource type="Resource" script_class="RogueliteRoomResource" load_steps=6 format=3 uid="uid://q1ugy8nvmvsd"] + +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="1_odkhu"] +[ext_resource type="Resource" uid="uid://cqfyuurvqb8m6" path="res://Resources/Enemies/Base_Fairy_Special.tres" id="2_a3aid"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="3_23niv"] +[ext_resource type="Resource" uid="uid://cfdvg162u65sr" path="res://Resources/Enemies/Thermathron.tres" id="4_cqpv8"] +[ext_resource type="Script" uid="uid://bl2ne8w12e3a" path="res://Scripts/Resources/Roguelite/RogueliteRoomResource.cs" id="5_cqqot"] + +[resource] +script = ExtResource("5_cqqot") +RoomName = &"LongMap" +Type = 1 +ScenePath = &"uid://cr8mtm0gfbpub" +Size = Vector2i(1, 2) +StartShrouded = true +DoorGridPositions = Array[Vector2i]([Vector2i(0, -1), Vector2i(0, 1), Vector2i(1, 0), Vector2i(-1, 0)]) +SpawnableEnemies = Array[Object]([ExtResource("1_odkhu"), ExtResource("2_a3aid"), ExtResource("3_23niv"), ExtResource("4_cqpv8")]) +DoorDirections = 30 +metadata/_custom_type_script = "uid://bl2ne8w12e3a" diff --git a/Resources/RogueliteMaps/Corridor_3x2.tres b/Resources/RogueliteMaps/Corridor_3x2.tres new file mode 100644 index 00000000..d16f7aa3 --- /dev/null +++ b/Resources/RogueliteMaps/Corridor_3x2.tres @@ -0,0 +1,19 @@ +[gd_resource type="Resource" script_class="RogueliteRoomResource" load_steps=6 format=3 uid="uid://c1lxymqnucaas"] + +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="1_bium7"] +[ext_resource type="Resource" uid="uid://cqfyuurvqb8m6" path="res://Resources/Enemies/Base_Fairy_Special.tres" id="2_rya56"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="3_1g85j"] +[ext_resource type="Resource" uid="uid://cfdvg162u65sr" path="res://Resources/Enemies/Thermathron.tres" id="4_uel5e"] +[ext_resource type="Script" uid="uid://bl2ne8w12e3a" path="res://Scripts/Resources/Roguelite/RogueliteRoomResource.cs" id="5_sg6hg"] + +[resource] +script = ExtResource("5_sg6hg") +RoomName = &"LargeMap" +Type = 1 +ScenePath = &"uid://d06oxglp06qyt" +Size = Vector2i(3, 1) +StartShrouded = true +DoorGridPositions = Array[Vector2i]([Vector2i(0, -1), Vector2i(0, 1), Vector2i(1, 0), Vector2i(-1, 0)]) +SpawnableEnemies = Array[Object]([ExtResource("1_bium7"), ExtResource("2_rya56"), ExtResource("3_1g85j"), ExtResource("4_uel5e")]) +DoorDirections = 30 +metadata/_custom_type_script = "uid://bl2ne8w12e3a" diff --git a/Resources/RogueliteMaps/Factory_Theme.tres b/Resources/RogueliteMaps/Factory_Theme.tres index 30bf14df..1b80a860 100644 --- a/Resources/RogueliteMaps/Factory_Theme.tres +++ b/Resources/RogueliteMaps/Factory_Theme.tres @@ -1,4 +1,4 @@ -[gd_resource type="Resource" script_class="RogueliteMapTheme" load_steps=57 format=3 uid="uid://cw6868vuvuynh"] +[gd_resource type="Resource" script_class="RogueliteMapTheme" load_steps=60 format=3 uid="uid://cw6868vuvuynh"] [ext_resource type="Script" uid="uid://bwtif3if3ea0u" path="res://Scripts/Resources/RogueliteMapTheme.cs" id="1_2rtdw"] [ext_resource type="Resource" uid="uid://cltxhkrqp055v" path="res://Resources/Items/Money_Pickup.tres" id="1_ae3bb"] @@ -35,6 +35,7 @@ [ext_resource type="Resource" uid="uid://cwtma7mxged8a" path="res://Resources/RogueliteMaps/ShopRoom1.tres" id="18_gh41q"] [ext_resource type="Resource" uid="uid://crqgvauqarfaq" path="res://Resources/RogueliteMaps/TreasureRoom1.tres" id="19_bn1n6"] [ext_resource type="Resource" uid="uid://bo4efv7rwowuh" path="res://Resources/RogueliteMaps/SecretRoom1.tres" id="20_0on7r"] +[ext_resource type="PackedScene" uid="uid://dx1urm7nttkqk" path="res://Scenes/Actors/level_teleporter.tscn" id="22_eegnh"] [ext_resource type="Resource" uid="uid://bxvv82vno8ub1" path="res://Resources/RogueliteMaps/1x1_1.tres" id="23_p3lfl"] [ext_resource type="Resource" uid="uid://d01146n5uo0gd" path="res://Resources/RogueliteMaps/1x2_1.tres" id="24_tsgja"] [ext_resource type="PackedScene" uid="uid://cl7s06sk106uo" path="res://Scenes/Props/VendingMachine.tscn" id="30_exyjy"] @@ -45,8 +46,10 @@ [ext_resource type="PackedScene" uid="uid://dff3lrk4srymb" path="res://Scenes/Misc/Vertical_Solid_Wall.tscn" id="40_tsgja"] [ext_resource type="Resource" uid="uid://cqlh2k4fndgg1" path="res://Resources/RogueliteMaps/Acid_Horizontal_Walkway.tres" id="40_w335g"] [ext_resource type="Resource" uid="uid://bdpbekqhuuq4l" path="res://Resources/Items/Shield_Extend_Pickup.tres" id="41_tsgja"] +[ext_resource type="Resource" uid="uid://q1ugy8nvmvsd" path="res://Resources/RogueliteMaps/Corridor_1x2.tres" id="42_nnvxo"] [ext_resource type="Resource" uid="uid://ciybnocjfpshh" path="res://Resources/Items/Heart_Extend_Pickup.tres" id="42_qo6vk"] [ext_resource type="PackedScene" uid="uid://c21m7w5ahpsd0" path="res://Scenes/Activable/Shroud.tscn" id="43_3kwn2"] +[ext_resource type="Resource" uid="uid://c1lxymqnucaas" path="res://Resources/RogueliteMaps/Corridor_3x2.tres" id="43_11cll"] [ext_resource type="PackedScene" uid="uid://byms2dhliyux0" path="res://Scenes/Actors/teleporter.tscn" id="43_to7mi"] [ext_resource type="Resource" uid="uid://bgcgeg187vg1h" path="res://Resources/Items/IcicleRepeater.tres" id="45_f7mru"] [ext_resource type="Resource" uid="uid://dau0s8ob7qnpc" path="res://Resources/Items/IceShotgun.tres" id="46_3kwn2"] @@ -90,11 +93,13 @@ KeyCardsPrefabs = Array[PackedScene]([ExtResource("5_0lwa1"), ExtResource("6_03i ShroudPrefab = ExtResource("43_3kwn2") PointItemResource = ExtResource("5_ga54h") TeleporterPrefab = ExtResource("43_to7mi") +LevelTeleporterPrefab = ExtResource("22_eegnh") +LevelTeleporterDestinationPath = &"uid://bf1kqr3o6r6d4" ChestChance = 15.0 EnemyDropChance = 40.0 ChestLootTable = SubResource("Resource_nnvxo") ShopLootTable = SubResource("Resource_11cll") EnemiesLootTable = SubResource("Resource_tsgja") WeaponsLootTable = SubResource("Resource_eegnh") -Rooms = Array[Object]([ExtResource("5_sludw"), ExtResource("6_b3pjl"), ExtResource("7_nil27"), ExtResource("8_pmfuo"), ExtResource("9_0lwa1"), ExtResource("14_rjphh"), ExtResource("15_2gg5d"), ExtResource("16_402ix"), ExtResource("17_52l5g"), ExtResource("18_gh41q"), ExtResource("19_bn1n6"), ExtResource("20_0on7r"), ExtResource("23_p3lfl"), ExtResource("24_tsgja"), ExtResource("36_ga54h"), ExtResource("37_cxv74"), ExtResource("38_f7mru"), ExtResource("39_3kwn2"), ExtResource("40_w335g")]) +Rooms = Array[Object]([ExtResource("5_sludw"), ExtResource("6_b3pjl"), ExtResource("7_nil27"), ExtResource("8_pmfuo"), ExtResource("9_0lwa1"), ExtResource("14_rjphh"), ExtResource("15_2gg5d"), ExtResource("16_402ix"), ExtResource("17_52l5g"), ExtResource("18_gh41q"), ExtResource("19_bn1n6"), ExtResource("20_0on7r"), ExtResource("23_p3lfl"), ExtResource("24_tsgja"), ExtResource("36_ga54h"), ExtResource("37_cxv74"), ExtResource("38_f7mru"), ExtResource("39_3kwn2"), ExtResource("40_w335g"), ExtResource("42_nnvxo"), ExtResource("43_11cll")]) metadata/_custom_type_script = "uid://bwtif3if3ea0u" diff --git a/Resources/RogueliteMaps/Generic_3x2.tres b/Resources/RogueliteMaps/Generic_3x2.tres new file mode 100644 index 00000000..a55e635d --- /dev/null +++ b/Resources/RogueliteMaps/Generic_3x2.tres @@ -0,0 +1,19 @@ +[gd_resource type="Resource" script_class="RogueliteRoomResource" load_steps=6 format=3 uid="uid://c5lwk3cho2f4s"] + +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="1_mnnmw"] +[ext_resource type="Resource" uid="uid://cqfyuurvqb8m6" path="res://Resources/Enemies/Base_Fairy_Special.tres" id="2_m6mrv"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="3_qfomp"] +[ext_resource type="Resource" uid="uid://cfdvg162u65sr" path="res://Resources/Enemies/Thermathron.tres" id="4_oqn6u"] +[ext_resource type="Script" uid="uid://bl2ne8w12e3a" path="res://Scripts/Resources/Roguelite/RogueliteRoomResource.cs" id="5_0ho8j"] + +[resource] +script = ExtResource("5_0ho8j") +RoomName = &"LargeMap" +Type = 1 +ScenePath = &"uid://c36nvk7cw3emg" +Size = Vector2i(3, 1) +StartShrouded = true +DoorGridPositions = Array[Vector2i]([Vector2i(0, -1), Vector2i(0, 1), Vector2i(1, 0), Vector2i(-1, 0)]) +SpawnableEnemies = Array[Object]([ExtResource("1_mnnmw"), ExtResource("2_m6mrv"), ExtResource("3_qfomp"), ExtResource("4_oqn6u")]) +DoorDirections = 30 +metadata/_custom_type_script = "uid://bl2ne8w12e3a" diff --git a/Scenes/Maps/RogueliteMaps/Beginner1.tscn b/Scenes/Maps/RogueliteMaps/Beginner1.tscn index e796d4ff..b2eaf6be 100644 --- a/Scenes/Maps/RogueliteMaps/Beginner1.tscn +++ b/Scenes/Maps/RogueliteMaps/Beginner1.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=15 format=4 uid="uid://24wh7h2dbljf"] +[gd_scene load_steps=18 format=4 uid="uid://24wh7h2dbljf"] [ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_vhsym"] [ext_resource type="Resource" uid="uid://dn3ai56rrxfnk" path="res://Resources/RogueliteMaps/Beginner1.tres" id="2_vhsym"] @@ -9,6 +9,8 @@ [ext_resource type="PackedScene" uid="uid://djf0y08ix66fn" path="res://Scenes/Interactable/Chest.tscn" id="7_kublc"] [ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="8_dbn5e"] [ext_resource type="Resource" uid="uid://cltxhkrqp055v" path="res://Resources/Items/Money_Pickup.tres" id="9_5yebg"] +[ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="10_c0yr1"] +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="11_5rt6n"] [ext_resource type="Script" uid="uid://g6oraxgd87ij" path="res://Scripts/Actors/TeleporterMarker.cs" id="12_f3e1d"] [ext_resource type="Texture2D" uid="uid://d3e762pxublbt" path="res://Sprites/teleporter.png" id="13_c0yr1"] [ext_resource type="LabelSettings" uid="uid://buk3e7bbwmnv1" path="res://Resources/Styles/Hud_Text_Style.tres" id="14_c0yr1"] @@ -20,6 +22,10 @@ size = Vector2(272, 85) atlas = ExtResource("13_c0yr1") region = Rect2(0, 0, 16, 16) +[sub_resource type="AtlasTexture" id="AtlasTexture_5yebg"] +atlas = ExtResource("13_c0yr1") +region = Rect2(0, 0, 16, 16) + [node name="Tilemaps" type="Node2D" node_paths=PackedStringArray("RoomClearActivation")] process_mode = 1 script = ExtResource("1_vhsym") @@ -61,6 +67,11 @@ LootTable = Array[ExtResource("8_dbn5e")]([ExtResource("9_5yebg"), ExtResource(" [node name="EnemySpawners" type="Node2D" parent="."] +[node name="RogueliteEnemySpawner3" type="Marker2D" parent="EnemySpawners"] +position = Vector2(293, 58) +script = ExtResource("10_c0yr1") +Enemy = ExtResource("11_5rt6n") + [node name="PlayerEnterDetector" type="Area2D" parent="."] visible = false collision_layer = 0 @@ -92,4 +103,19 @@ script = ExtResource("12_f3e1d") Type = 2 MarkerTexture = SubResource("AtlasTexture_5rt6n") +[node name="Exit" type="Marker2D" parent="Features"] +position = Vector2(40, 136) +script = ExtResource("12_f3e1d") +Type = 5 +MarkerTexture = SubResource("AtlasTexture_5yebg") + +[node name="Label2" type="Label" parent="Features/Exit"] +z_index = 1 +offset_left = -15.0 +offset_top = 12.0 +offset_right = 37.0 +offset_bottom = 35.0 +text = "Exit test" +label_settings = ExtResource("14_c0yr1") + [connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scenes/Maps/RogueliteMaps/Boss1.tscn b/Scenes/Maps/RogueliteMaps/Boss1.tscn index 48889c9d..16947e2b 100644 --- a/Scenes/Maps/RogueliteMaps/Boss1.tscn +++ b/Scenes/Maps/RogueliteMaps/Boss1.tscn @@ -82,4 +82,10 @@ script = ExtResource("7_5nx6x") Type = 1 MarkerTexture = SubResource("AtlasTexture_5nx6x") +[node name="Exit" type="Marker2D" parent="Features"] +position = Vector2(161, 112) +script = ExtResource("7_5nx6x") +Type = 5 +MarkerTexture = SubResource("AtlasTexture_5nx6x") + [connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scenes/Maps/RogueliteMaps/Corridor_3x2.tscn b/Scenes/Maps/RogueliteMaps/Corridor_3x2.tscn new file mode 100644 index 00000000..b6792b25 --- /dev/null +++ b/Scenes/Maps/RogueliteMaps/Corridor_3x2.tscn @@ -0,0 +1,144 @@ +[gd_scene load_steps=15 format=4 uid="uid://d06oxglp06qyt"] + +[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_oj14n"] +[ext_resource type="Resource" uid="uid://c1lxymqnucaas" path="res://Resources/RogueliteMaps/Corridor_3x2.tres" id="2_oj14n"] +[ext_resource type="TileSet" uid="uid://6k28roiljylj" path="res://Tilesets/factory_tileset.tres" id="3_wmiud"] +[ext_resource type="Script" uid="uid://krean0uywtms" path="res://Scripts/TilemapAvoidance.cs" id="4_8clrf"] +[ext_resource type="PackedScene" uid="uid://dcbcyp1qogcl0" path="res://Scenes/Props/BigTankHorizontal.tscn" id="5_0tpnm"] +[ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="5_j6t4s"] +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="6_ko1fq"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="7_4efvr"] +[ext_resource type="Script" uid="uid://umyqgyxjiaig" path="res://Scripts/Actors/ChestMarker.cs" id="8_nhpte"] +[ext_resource type="Texture2D" uid="uid://qeh4ai8h6sw5" path="res://Sprites/Chest.png" id="9_7q6f1"] +[ext_resource type="PackedScene" uid="uid://dqr6myj0yaqvd" path="res://Scenes/Interactable/ScriptableMovementSensorLonger.tscn" id="11_wmiud"] + +[sub_resource type="NavigationPolygon" id="NavigationPolygon_rlq0q"] +vertices = PackedVector2Array(474, 58, 474, 10, 486, 10, 486, 58, 794, 58, 794, 10, 806, 10, 806, 58, 934, 58, 934, 134, 806, 134, 794, 134, 806, 150, 794, 150, 486, 134, 474, 134, 486, 150, 474, 150, 166, 58, 166, 134, 166, 150, 154, 150, 154, 134, 154, 58, 26, 134, 26, 58, 166, 10, 154, 10) +polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(4, 5, 6, 7), PackedInt32Array(7, 8, 9, 10), PackedInt32Array(4, 7, 10, 11), PackedInt32Array(10, 12, 13, 11), PackedInt32Array(3, 4, 11, 14), PackedInt32Array(0, 3, 14, 15), PackedInt32Array(14, 16, 17, 15), PackedInt32Array(18, 0, 15, 19), PackedInt32Array(19, 20, 21, 22), PackedInt32Array(18, 19, 22, 23), PackedInt32Array(22, 24, 25, 23), PackedInt32Array(26, 18, 23, 27)]) +outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15, 49, 34)]) +parsed_collision_mask = 353 +source_geometry_mode = 1 + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_5bd7y"] +size = Vector2(909, 245) + +[sub_resource type="AtlasTexture" id="AtlasTexture_wvfe8"] +atlas = ExtResource("9_7q6f1") +region = Rect2(0, 0, 16, 16) + +[node name="Map" type="Node2D" node_paths=PackedStringArray("RoomClearActivation")] +process_mode = 1 +script = ExtResource("1_oj14n") +RoomResource = ExtResource("2_oj14n") +RoomClearActivation = [] + +[node name="Tilemaps" type="Node2D" parent="." groups=["navigation_polygon_source_geometry_group"]] + +[node name="Liquids" type="TileMapLayer" parent="Tilemaps"] +tile_map_data = PackedByteArray("AAASAAoAAAAJAAcAAAASAAsAAAAEAAMAAAASAAwAAAAEAAMAAAATAAoAAAAJAAcAAAATAAsAAAAEAAMAAAATAAwAAAAEAAMAAAAUAAoAAAAJAAcAAAAUAAsAAAAEAAMAAAAUAAwAAAAEAAMAAAAVAAoAAAAJAAcAAAAVAAsAAAAEAAMAAAAVAAwAAAAEAAMAAAA=") +tile_set = ExtResource("3_wmiud") + +[node name="Floor" type="TileMapLayer" parent="Tilemaps" node_paths=PackedStringArray("_solidLayers") groups=["Solid"]] +tile_map_data = PackedByteArray("AAAAAAIAAAALAAcAAAAAAAMAAAALAAcAAAAAAAQAAAALAAcAAAAAAAUAAAALAAcAAAAAAAYAAAALAAcAAAAAAAcAAAALAAcAAAAAAAgAAAALAAcAAAAAAAkAAAALAAcAAAABAAIAAAALAAcAAAABAAMAAAALAAcAAAABAAQAAAALAAcAAAABAAUAAAALAAcAAAABAAYAAAALAAcAAAABAAcAAAALAAcAAAABAAgAAAALAAcAAAABAAkAAAALAAcAAAACAAIAAAALAAcAAAACAAMAAAALAAcAAAACAAQAAAALAAcAAAACAAUAAAALAAcAAAACAAYAAAALAAcAAAACAAcAAAALAAcAAAACAAgAAAALAAcAAAACAAkAAAALAAcAAAADAAIAAAALAAcAAAADAAMAAAALAAcAAAADAAQAAAALAAcAAAADAAUAAAALAAcAAAADAAYAAAALAAcAAAADAAcAAAALAAcAAAADAAgAAAALAAcAAAADAAkAAAALAAcAAAAEAAIAAAALAAcAAAAEAAMAAAALAAcAAAAEAAQAAAALAAcAAAAEAAUAAAALAAcAAAAEAAYAAAALAAcAAAAEAAcAAAALAAcAAAAEAAgAAAALAAcAAAAEAAkAAAALAAcAAAAFAAIAAAALAAcAAAAFAAMAAAALAAcAAAAFAAQAAAALAAcAAAAFAAUAAAALAAcAAAAFAAYAAAALAAcAAAAFAAcAAAALAAcAAAAFAAgAAAALAAcAAAAFAAkAAAALAAcAAAAGAAIAAAALAAcAAAAGAAMAAAALAAcAAAAGAAQAAAALAAcAAAAGAAUAAAALAAcAAAAGAAYAAAALAAcAAAAGAAcAAAALAAcAAAAGAAgAAAALAAcAAAAGAAkAAAALAAcAAAAHAAIAAAALAAcAAAAHAAMAAAALAAcAAAAHAAQAAAALAAcAAAAHAAUAAAALAAcAAAAHAAYAAAALAAcAAAAHAAcAAAALAAcAAAAHAAgAAAALAAcAAAAHAAkAAAALAAcAAAAIAAIAAAALAAcAAAAIAAMAAAALAAcAAAAIAAQAAAALAAcAAAAIAAUAAAALAAcAAAAIAAYAAAALAAcAAAAIAAcAAAALAAcAAAAIAAgAAAALAAcAAAAIAAkAAAALAAcAAAAJAAIAAAALAAcAAAAJAAMAAAALAAcAAAAJAAQAAAALAAcAAAAJAAUAAAALAAcAAAAJAAYAAAALAAcAAAAJAAcAAAALAAcAAAAJAAgAAAALAAcAAAAJAAkAAAALAAcAAAAKAAIAAAALAAcAAAAKAAMAAAALAAcAAAAKAAQAAAALAAcAAAAKAAUAAAALAAcAAAAKAAYAAAALAAcAAAAKAAcAAAALAAcAAAAKAAgAAAALAAcAAAAKAAkAAAALAAcAAAALAAIAAAALAAcAAAALAAUAAAALAAcAAAALAAYAAAALAAcAAAALAAcAAAALAAcAAAALAAgAAAALAAcAAAALAAkAAAALAAcAAAAMAAIAAAALAAcAAAAMAAUAAAALAAcAAAAMAAYAAAALAAcAAAAMAAcAAAALAAcAAAAMAAgAAAALAAcAAAAMAAkAAAALAAcAAAANAAIAAAALAAcAAAANAAMAAAALAAcAAAANAAQAAAALAAcAAAANAAUAAAALAAcAAAANAAYAAAALAAcAAAANAAcAAAALAAcAAAANAAgAAAALAAcAAAANAAkAAAALAAcAAAAOAAIAAAALAAcAAAAOAAMAAAALAAcAAAAOAAQAAAALAAcAAAAOAAUAAAALAAcAAAAOAAYAAAALAAcAAAAOAAcAAAALAAcAAAAOAAgAAAALAAcAAAAOAAkAAAALAAcAAAAPAAIAAAALAAcAAAAPAAMAAAALAAcAAAAPAAQAAAALAAcAAAAPAAUAAAALAAcAAAAPAAYAAAALAAcAAAAPAAcAAAALAAcAAAAPAAgAAAALAAcAAAAPAAkAAAALAAcAAAAQAAIAAAALAAcAAAAQAAMAAAALAAcAAAAQAAQAAAALAAcAAAAQAAUAAAALAAcAAAAQAAYAAAALAAcAAAAQAAcAAAALAAcAAAAQAAgAAAALAAcAAAAQAAkAAAALAAcAAAARAAIAAAALAAcAAAARAAMAAAALAAcAAAARAAQAAAALAAcAAAARAAUAAAALAAcAAAARAAYAAAALAAcAAAARAAcAAAALAAcAAAARAAgAAAALAAcAAAARAAkAAAALAAcAAAASAAIAAAALAAcAAAASAAMAAAALAAcAAAASAAQAAAALAAcAAAASAAUAAAALAAcAAAASAAYAAAALAAcAAAASAAcAAAALAAcAAAASAAgAAAALAAcAAAASAAkAAAALAAcAAAATAAIAAAALAAcAAAATAAMAAAALAAcAAAATAAQAAAALAAcAAAATAAUAAAALAAcAAAATAAYAAAALAAcAAAATAAcAAAALAAcAAAATAAgAAAALAAcAAAATAAkAAAALAAcAAAAAAAAAAAALAAcAAAAAAAEAAAALAAcAAAABAAAAAAALAAcAAAABAAEAAAALAAcAAAACAAAAAAALAAcAAAACAAEAAAALAAcAAAADAAAAAAALAAcAAAADAAEAAAALAAcAAAAEAAAAAAALAAcAAAAEAAEAAAALAAcAAAAFAAAAAAALAAcAAAAFAAEAAAALAAcAAAAGAAAAAAALAAcAAAAGAAEAAAALAAcAAAAHAAAAAAALAAcAAAAHAAEAAAALAAcAAAAIAAAAAAALAAcAAAAIAAEAAAALAAcAAAAJAAAAAAALAAcAAAAJAAEAAAALAAcAAAAKAAAAAAALAAcAAAAKAAEAAAALAAcAAAALAAAAAAALAAcAAAALAAEAAAALAAcAAAALAAMAAAALAAcAAAALAAQAAAALAAcAAAAMAAAAAAALAAcAAAAMAAEAAAALAAcAAAAMAAMAAAALAAcAAAAMAAQAAAALAAcAAAANAAAAAAALAAcAAAANAAEAAAALAAcAAAAOAAAAAAALAAcAAAAOAAEAAAALAAcAAAAPAAAAAAALAAcAAAAPAAEAAAALAAcAAAAQAAAAAAALAAcAAAAQAAEAAAALAAcAAAARAAAAAAALAAcAAAARAAEAAAALAAcAAAASAAAAAAALAAcAAAASAAEAAAALAAcAAAATAAAAAAALAAcAAAATAAEAAAALAAcAAAAUAAAAAAALAAcAAAAUAAEAAAALAAcAAAAUAAIAAAALAAcAAAAUAAMAAAALAAcAAAAUAAQAAAALAAcAAAAUAAUAAAALAAcAAAAUAAYAAAALAAcAAAAUAAcAAAALAAcAAAAUAAgAAAALAAcAAAAUAAkAAAALAAcAAAAVAAAAAAALAAcAAAAVAAEAAAALAAcAAAAVAAIAAAALAAcAAAAVAAMAAAALAAcAAAAVAAQAAAALAAcAAAAVAAUAAAALAAcAAAAVAAYAAAALAAcAAAAVAAcAAAALAAcAAAAVAAgAAAALAAcAAAAVAAkAAAALAAcAAAAWAAAAAAALAAcAAAAWAAEAAAALAAcAAAAWAAIAAAALAAcAAAAWAAMAAAALAAcAAAAWAAQAAAALAAcAAAAWAAUAAAALAAcAAAAWAAYAAAALAAcAAAAWAAcAAAALAAcAAAAWAAgAAAALAAcAAAAWAAkAAAALAAcAAAAXAAAAAAALAAcAAAAXAAEAAAALAAcAAAAXAAIAAAALAAcAAAAXAAMAAAALAAcAAAAXAAQAAAALAAcAAAAXAAUAAAALAAcAAAAXAAYAAAALAAcAAAAXAAcAAAALAAcAAAAXAAgAAAALAAcAAAAXAAkAAAALAAcAAAAYAAAAAAALAAcAAAAYAAEAAAALAAcAAAAYAAIAAAALAAcAAAAYAAMAAAALAAcAAAAYAAQAAAALAAcAAAAYAAUAAAALAAcAAAAYAAYAAAALAAcAAAAYAAcAAAALAAcAAAAYAAgAAAALAAcAAAAYAAkAAAALAAcAAAAZAAAAAAALAAcAAAAZAAEAAAALAAcAAAAZAAIAAAALAAcAAAAZAAMAAAALAAcAAAAZAAQAAAALAAcAAAAZAAUAAAALAAcAAAAZAAYAAAALAAcAAAAZAAcAAAALAAcAAAAZAAgAAAALAAcAAAAZAAkAAAALAAcAAAAaAAAAAAALAAcAAAAaAAEAAAALAAcAAAAaAAIAAAALAAcAAAAaAAMAAAALAAcAAAAaAAQAAAALAAcAAAAaAAUAAAALAAcAAAAaAAYAAAALAAcAAAAaAAcAAAALAAcAAAAaAAgAAAALAAcAAAAaAAkAAAALAAcAAAAbAAAAAAALAAcAAAAbAAEAAAALAAcAAAAbAAIAAAALAAcAAAAbAAMAAAALAAcAAAAbAAQAAAALAAcAAAAbAAUAAAALAAcAAAAbAAYAAAALAAcAAAAbAAcAAAALAAcAAAAbAAgAAAALAAcAAAAbAAkAAAALAAcAAAAcAAAAAAALAAcAAAAcAAEAAAALAAcAAAAcAAIAAAALAAcAAAAcAAMAAAACAAMAAAAcAAQAAAACAAMAAAAcAAUAAAACAAMAAAAcAAYAAAACAAMAAAAcAAcAAAALAAcAAAAcAAgAAAALAAcAAAAcAAkAAAALAAcAAAAdAAAAAAALAAcAAAAdAAEAAAALAAcAAAAdAAIAAAALAAcAAAAdAAMAAAACAAMAAAAdAAQAAAACAAMAAAAdAAUAAAACAAMAAAAdAAYAAAACAAMAAAAdAAcAAAALAAcAAAAdAAgAAAALAAcAAAAdAAkAAAALAAcAAAAeAAAAAAALAAcAAAAeAAEAAAALAAcAAAAeAAIAAAALAAcAAAAeAAMAAAACAAMAAAAeAAQAAAACAAMAAAAeAAUAAAACAAMAAAAeAAYAAAACAAMAAAAeAAcAAAALAAcAAAAeAAgAAAALAAcAAAAeAAkAAAALAAcAAAAfAAAAAAALAAcAAAAfAAEAAAALAAcAAAAfAAIAAAALAAcAAAAfAAMAAAACAAMAAAAfAAQAAAACAAMAAAAfAAUAAAACAAMAAAAfAAYAAAACAAMAAAAfAAcAAAALAAcAAAAfAAgAAAALAAcAAAAfAAkAAAALAAcAAAAgAAAAAAALAAcAAAAgAAEAAAALAAcAAAAgAAIAAAALAAcAAAAgAAMAAAACAAMAAAAgAAQAAAACAAMAAAAgAAUAAAACAAMAAAAgAAYAAAACAAMAAAAgAAcAAAALAAcAAAAgAAgAAAALAAcAAAAgAAkAAAALAAcAAAAhAAAAAAALAAcAAAAhAAEAAAALAAcAAAAhAAIAAAALAAcAAAAhAAMAAAALAAcAAAAhAAQAAAALAAcAAAAhAAUAAAALAAcAAAAhAAYAAAALAAcAAAAhAAcAAAALAAcAAAAhAAgAAAALAAcAAAAhAAkAAAALAAcAAAAiAAAAAAALAAcAAAAiAAEAAAALAAcAAAAiAAIAAAALAAcAAAAiAAMAAAALAAcAAAAiAAQAAAALAAcAAAAiAAUAAAALAAcAAAAiAAYAAAALAAcAAAAiAAcAAAALAAcAAAAiAAgAAAALAAcAAAAiAAkAAAALAAcAAAAjAAAAAAALAAcAAAAjAAEAAAALAAcAAAAjAAIAAAALAAcAAAAjAAMAAAALAAcAAAAjAAQAAAALAAcAAAAjAAUAAAALAAcAAAAjAAYAAAALAAcAAAAjAAcAAAALAAcAAAAjAAgAAAALAAcAAAAjAAkAAAALAAcAAAAkAAAAAAALAAcAAAAkAAEAAAALAAcAAAAkAAIAAAALAAcAAAAkAAMAAAALAAcAAAAkAAQAAAALAAcAAAAkAAUAAAALAAcAAAAkAAYAAAALAAcAAAAkAAcAAAALAAcAAAAkAAgAAAALAAcAAAAkAAkAAAALAAcAAAAlAAAAAAALAAcAAAAlAAEAAAALAAcAAAAlAAIAAAALAAcAAAAlAAMAAAALAAcAAAAlAAQAAAALAAcAAAAlAAUAAAALAAcAAAAlAAYAAAALAAcAAAAlAAcAAAALAAcAAAAlAAgAAAALAAcAAAAlAAkAAAALAAcAAAAmAAAAAAALAAcAAAAmAAEAAAALAAcAAAAmAAIAAAALAAcAAAAmAAMAAAALAAcAAAAmAAQAAAALAAcAAAAmAAUAAAALAAcAAAAmAAYAAAALAAcAAAAmAAcAAAALAAcAAAAmAAgAAAALAAcAAAAmAAkAAAALAAcAAAAnAAAAAAALAAcAAAAnAAEAAAALAAcAAAAnAAIAAAALAAcAAAAnAAMAAAALAAcAAAAnAAQAAAALAAcAAAAnAAUAAAALAAcAAAAnAAYAAAALAAcAAAAnAAcAAAALAAcAAAAnAAgAAAALAAcAAAAnAAkAAAALAAcAAAAoAAAAAAALAAcAAAAoAAEAAAALAAcAAAAoAAIAAAALAAcAAAAoAAMAAAALAAcAAAAoAAQAAAALAAcAAAAoAAUAAAALAAcAAAAoAAYAAAALAAcAAAAoAAcAAAALAAcAAAAoAAgAAAALAAcAAAAoAAkAAAALAAcAAAApAAAAAAALAAcAAAApAAEAAAALAAcAAAApAAIAAAALAAcAAAApAAMAAAALAAcAAAApAAQAAAALAAcAAAApAAUAAAALAAcAAAApAAYAAAALAAcAAAApAAcAAAALAAcAAAApAAgAAAALAAcAAAApAAkAAAALAAcAAAAqAAAAAAALAAcAAAAqAAEAAAALAAcAAAAqAAIAAAALAAcAAAAqAAMAAAALAAcAAAAqAAQAAAALAAcAAAAqAAUAAAALAAcAAAAqAAYAAAALAAcAAAAqAAcAAAALAAcAAAAqAAgAAAALAAcAAAAqAAkAAAALAAcAAAArAAAAAAALAAcAAAArAAEAAAALAAcAAAArAAIAAAALAAcAAAArAAMAAAALAAcAAAArAAQAAAALAAcAAAArAAUAAAALAAcAAAArAAYAAAALAAcAAAArAAcAAAALAAcAAAArAAgAAAALAAcAAAArAAkAAAALAAcAAAAsAAAAAAALAAcAAAAsAAEAAAALAAcAAAAsAAIAAAALAAcAAAAsAAMAAAALAAcAAAAsAAQAAAALAAcAAAAsAAUAAAALAAcAAAAsAAYAAAALAAcAAAAsAAcAAAALAAcAAAAsAAgAAAALAAcAAAAsAAkAAAALAAcAAAAtAAAAAAALAAcAAAAtAAEAAAALAAcAAAAtAAIAAAALAAcAAAAtAAMAAAALAAcAAAAtAAQAAAALAAcAAAAtAAUAAAALAAcAAAAtAAYAAAALAAcAAAAtAAcAAAALAAcAAAAtAAgAAAALAAcAAAAtAAkAAAALAAcAAAAuAAAAAAALAAcAAAAuAAEAAAALAAcAAAAuAAIAAAALAAcAAAAuAAMAAAALAAcAAAAuAAQAAAALAAcAAAAuAAUAAAALAAcAAAAuAAYAAAALAAcAAAAuAAcAAAALAAcAAAAuAAgAAAALAAcAAAAuAAkAAAALAAcAAAAvAAAAAAALAAcAAAAvAAEAAAALAAcAAAAvAAIAAAALAAcAAAAvAAMAAAALAAcAAAAvAAQAAAALAAcAAAAvAAUAAAALAAcAAAAvAAYAAAALAAcAAAAvAAcAAAALAAcAAAAvAAgAAAALAAcAAAAvAAkAAAALAAcAAAAwAAAAAAALAAcAAAAwAAEAAAALAAcAAAAwAAIAAAALAAcAAAAwAAMAAAALAAcAAAAwAAQAAAALAAcAAAAwAAUAAAALAAcAAAAwAAYAAAALAAcAAAAwAAcAAAALAAcAAAAwAAgAAAALAAcAAAAwAAkAAAALAAcAAAAxAAAAAAALAAcAAAAxAAEAAAALAAcAAAAxAAIAAAALAAcAAAAxAAMAAAALAAcAAAAxAAQAAAALAAcAAAAxAAUAAAALAAcAAAAxAAYAAAALAAcAAAAxAAcAAAALAAcAAAAxAAgAAAALAAcAAAAxAAkAAAALAAcAAAAyAAAAAAALAAcAAAAyAAEAAAALAAcAAAAyAAIAAAALAAcAAAAyAAMAAAALAAcAAAAyAAQAAAALAAcAAAAyAAUAAAALAAcAAAAyAAYAAAALAAcAAAAyAAcAAAALAAcAAAAyAAgAAAALAAcAAAAyAAkAAAALAAcAAAAzAAAAAAALAAcAAAAzAAEAAAALAAcAAAAzAAIAAAALAAcAAAAzAAMAAAALAAcAAAAzAAQAAAALAAcAAAAzAAUAAAALAAcAAAAzAAYAAAALAAcAAAAzAAcAAAALAAcAAAAzAAgAAAALAAcAAAAzAAkAAAALAAcAAAA0AAAAAAALAAcAAAA0AAEAAAALAAcAAAA0AAIAAAALAAcAAAA0AAMAAAALAAcAAAA0AAQAAAALAAcAAAA0AAUAAAALAAcAAAA0AAYAAAALAAcAAAA0AAcAAAALAAcAAAA0AAgAAAALAAcAAAA0AAkAAAALAAcAAAA1AAAAAAALAAcAAAA1AAEAAAALAAcAAAA1AAIAAAALAAcAAAA1AAMAAAALAAcAAAA1AAQAAAALAAcAAAA1AAUAAAALAAcAAAA1AAYAAAALAAcAAAA1AAcAAAALAAcAAAA1AAgAAAALAAcAAAA1AAkAAAALAAcAAAA2AAAAAAALAAcAAAA2AAEAAAALAAcAAAA2AAIAAAALAAcAAAA2AAMAAAALAAcAAAA2AAQAAAALAAcAAAA2AAUAAAALAAcAAAA2AAYAAAALAAcAAAA2AAcAAAALAAcAAAA2AAgAAAALAAcAAAA2AAkAAAALAAcAAAA3AAAAAAALAAcAAAA3AAEAAAALAAcAAAA3AAIAAAALAAcAAAA3AAMAAAALAAcAAAA3AAQAAAALAAcAAAA3AAUAAAALAAcAAAA3AAYAAAALAAcAAAA3AAcAAAALAAcAAAA3AAgAAAALAAcAAAA3AAkAAAALAAcAAAA4AAAAAAALAAcAAAA4AAEAAAALAAcAAAA4AAIAAAALAAcAAAA4AAMAAAALAAcAAAA4AAQAAAALAAcAAAA4AAUAAAALAAcAAAA4AAYAAAALAAcAAAA4AAcAAAALAAcAAAA4AAgAAAALAAcAAAA4AAkAAAALAAcAAAA5AAAAAAALAAcAAAA5AAEAAAALAAcAAAA5AAIAAAALAAcAAAA5AAMAAAALAAcAAAA5AAQAAAALAAcAAAA5AAUAAAALAAcAAAA5AAYAAAALAAcAAAA5AAcAAAALAAcAAAA5AAgAAAALAAcAAAA5AAkAAAALAAcAAAA6AAAAAAALAAcAAAA6AAEAAAALAAcAAAA6AAIAAAALAAcAAAA6AAMAAAALAAcAAAA6AAQAAAALAAcAAAA6AAUAAAALAAcAAAA6AAYAAAALAAcAAAA6AAcAAAALAAcAAAA6AAgAAAALAAcAAAA6AAkAAAALAAcAAAA7AAAAAAALAAcAAAA7AAEAAAALAAcAAAA7AAIAAAALAAcAAAA7AAMAAAALAAcAAAA7AAQAAAALAAcAAAA7AAUAAAALAAcAAAA7AAYAAAALAAcAAAA7AAcAAAALAAcAAAA7AAgAAAALAAcAAAA7AAkAAAALAAcAAAAAAAoAAAALAAcAAAAAAAsAAAALAAcAAAAAAAwAAAALAAcAAAAAAA0AAAALAAcAAAAAAA4AAAALAAcAAAAAAA8AAAALAAcAAAAAABAAAAALAAcAAAAAABEAAAALAAcAAAAAABIAAAALAAcAAAAAABMAAAALAAcAAAABAAoAAAALAAcAAAABAAsAAAALAAcAAAABAAwAAAALAAcAAAABAA0AAAALAAcAAAABAA4AAAALAAcAAAABAA8AAAALAAcAAAABABAAAAALAAcAAAABABEAAAALAAcAAAABABIAAAALAAcAAAABABMAAAALAAcAAAACAAoAAAALAAcAAAACAAsAAAALAAcAAAACAAwAAAALAAcAAAACAA0AAAALAAcAAAACAA4AAAALAAcAAAACAA8AAAALAAcAAAACABAAAAALAAcAAAACABEAAAALAAcAAAACABIAAAALAAcAAAACABMAAAALAAcAAAADAAoAAAALAAcAAAADAAsAAAALAAcAAAADAAwAAAALAAcAAAADAA0AAAALAAcAAAADAA4AAAALAAcAAAADAA8AAAALAAcAAAADABAAAAALAAcAAAADABEAAAALAAcAAAADABIAAAALAAcAAAADABMAAAALAAcAAAAEAAoAAAALAAcAAAAEAAsAAAALAAcAAAAEAAwAAAALAAcAAAAEAA0AAAALAAcAAAAEAA4AAAALAAcAAAAEAA8AAAALAAcAAAAEABAAAAALAAcAAAAEABEAAAALAAcAAAAEABIAAAALAAcAAAAEABMAAAALAAcAAAAFAAoAAAALAAcAAAAFAAsAAAALAAcAAAAFAAwAAAALAAcAAAAFAA0AAAALAAcAAAAFAA4AAAALAAcAAAAFAA8AAAALAAcAAAAFABAAAAALAAcAAAAFABEAAAALAAcAAAAFABIAAAALAAcAAAAFABMAAAALAAcAAAAGAAoAAAALAAcAAAAGAAsAAAALAAcAAAAGAAwAAAALAAcAAAAGAA0AAAALAAcAAAAGAA4AAAALAAcAAAAGAA8AAAALAAcAAAAGABAAAAALAAcAAAAGABEAAAALAAcAAAAGABIAAAALAAcAAAAGABMAAAALAAcAAAAHAAoAAAALAAcAAAAHAAsAAAALAAcAAAAHAAwAAAALAAcAAAAHAA0AAAALAAcAAAAHAA4AAAALAAcAAAAHAA8AAAALAAcAAAAHABAAAAALAAcAAAAHABEAAAALAAcAAAAHABIAAAALAAcAAAAHABMAAAALAAcAAAAIAAoAAAALAAcAAAAIAAsAAAALAAcAAAAIAAwAAAALAAcAAAAIAA0AAAALAAcAAAAIAA4AAAALAAcAAAAIAA8AAAALAAcAAAAIABAAAAALAAcAAAAIABEAAAALAAcAAAAIABIAAAALAAcAAAAIABMAAAALAAcAAAAJAAoAAAALAAcAAAAJAAsAAAALAAcAAAAJAAwAAAALAAcAAAAJAA0AAAALAAcAAAAJAA4AAAALAAcAAAAJAA8AAAALAAcAAAAJABAAAAALAAcAAAAJABEAAAALAAcAAAAJABIAAAALAAcAAAAJABMAAAALAAcAAAAKAAoAAAALAAcAAAAKAAsAAAALAAcAAAAKAAwAAAALAAcAAAAKAA0AAAALAAcAAAAKAA4AAAALAAcAAAAKAA8AAAALAAcAAAAKABAAAAALAAcAAAAKABEAAAALAAcAAAAKABIAAAALAAcAAAAKABMAAAALAAcAAAALAAoAAAALAAcAAAALAAsAAAALAAcAAAALAAwAAAALAAcAAAALAA0AAAALAAcAAAALAA4AAAALAAcAAAALAA8AAAALAAcAAAALABAAAAALAAcAAAALABEAAAALAAcAAAALABIAAAALAAcAAAALABMAAAALAAcAAAAMAAoAAAALAAcAAAAMAAsAAAALAAcAAAAMAAwAAAALAAcAAAAMAA0AAAALAAcAAAAMAA4AAAALAAcAAAAMAA8AAAALAAcAAAAMABAAAAALAAcAAAAMABEAAAALAAcAAAAMABIAAAALAAcAAAAMABMAAAALAAcAAAANAAoAAAALAAcAAAANAAsAAAALAAcAAAANAAwAAAALAAcAAAANAA0AAAALAAcAAAANAA4AAAALAAcAAAANAA8AAAALAAcAAAANABAAAAALAAcAAAANABEAAAALAAcAAAANABIAAAALAAcAAAANABMAAAALAAcAAAAOAAoAAAALAAcAAAAOAAsAAAALAAcAAAAOAAwAAAALAAcAAAAOAA0AAAALAAcAAAAOAA4AAAALAAcAAAAOAA8AAAALAAcAAAAOABAAAAALAAcAAAAOABEAAAALAAcAAAAOABIAAAALAAcAAAAOABMAAAALAAcAAAAPAAoAAAALAAcAAAAPAAsAAAALAAcAAAAPAAwAAAALAAcAAAAPAA0AAAALAAcAAAAPAA4AAAALAAcAAAAPAA8AAAALAAcAAAAPABAAAAALAAcAAAAPABEAAAALAAcAAAAPABIAAAALAAcAAAAPABMAAAALAAcAAAAQAAoAAAALAAcAAAAQAAsAAAALAAcAAAAQAAwAAAALAAcAAAAQAA0AAAALAAcAAAAQAA4AAAALAAcAAAAQAA8AAAALAAcAAAAQABAAAAALAAcAAAAQABEAAAALAAcAAAAQABIAAAALAAcAAAAQABMAAAALAAcAAAARAAoAAAALAAcAAAARAAsAAAALAAcAAAARAAwAAAALAAcAAAARAA0AAAALAAcAAAARAA4AAAALAAcAAAARAA8AAAALAAcAAAARABAAAAALAAcAAAARABEAAAALAAcAAAARABIAAAALAAcAAAARABMAAAALAAcAAAASAA0AAAALAAcAAAASAA4AAAALAAcAAAASAA8AAAALAAcAAAASABAAAAALAAcAAAASABEAAAALAAcAAAASABIAAAALAAcAAAASABMAAAALAAcAAAATAA0AAAALAAcAAAATAA4AAAALAAcAAAATAA8AAAALAAcAAAATABAAAAALAAcAAAATABEAAAALAAcAAAATABIAAAALAAcAAAATABMAAAALAAcAAAAUAA0AAAALAAcAAAAUAA4AAAALAAcAAAAUAA8AAAALAAcAAAAUABAAAAALAAcAAAAUABEAAAALAAcAAAAUABIAAAALAAcAAAAUABMAAAALAAcAAAAVAA0AAAALAAcAAAAVAA4AAAALAAcAAAAVAA8AAAALAAcAAAAVABAAAAALAAcAAAAVABEAAAALAAcAAAAVABIAAAALAAcAAAAVABMAAAALAAcAAAAWAAoAAAALAAcAAAAWAAsAAAALAAcAAAAWAAwAAAALAAcAAAAWAA0AAAALAAcAAAAWAA4AAAALAAcAAAAWAA8AAAALAAcAAAAWABAAAAALAAcAAAAWABEAAAALAAcAAAAWABIAAAALAAcAAAAWABMAAAALAAcAAAAXAAoAAAALAAcAAAAXAAsAAAALAAcAAAAXAAwAAAALAAcAAAAXAA0AAAALAAcAAAAXAA4AAAALAAcAAAAXAA8AAAALAAcAAAAXABAAAAALAAcAAAAXABEAAAALAAcAAAAXABIAAAALAAcAAAAXABMAAAALAAcAAAAYAAoAAAALAAcAAAAYAAsAAAALAAcAAAAYAAwAAAALAAcAAAAYAA0AAAALAAcAAAAYAA4AAAALAAcAAAAYAA8AAAALAAcAAAAYABAAAAALAAcAAAAYABEAAAALAAcAAAAYABIAAAALAAcAAAAYABMAAAALAAcAAAAZAAoAAAALAAcAAAAZAAsAAAALAAcAAAAZAAwAAAALAAcAAAAZAA0AAAALAAcAAAAZAA4AAAALAAcAAAAZAA8AAAALAAcAAAAZABAAAAALAAcAAAAZABEAAAALAAcAAAAZABIAAAALAAcAAAAZABMAAAALAAcAAAAaAAoAAAALAAcAAAAaAAsAAAALAAcAAAAaAAwAAAALAAcAAAAaAA0AAAALAAcAAAAaAA4AAAALAAcAAAAaAA8AAAALAAcAAAAaABAAAAALAAcAAAAaABEAAAALAAcAAAAaABIAAAALAAcAAAAaABMAAAALAAcAAAAbAAoAAAALAAcAAAAbAAsAAAALAAcAAAAbAAwAAAALAAcAAAAbAA0AAAALAAcAAAAbAA4AAAALAAcAAAAbAA8AAAALAAcAAAAbABAAAAALAAcAAAAbABEAAAALAAcAAAAbABIAAAALAAcAAAAbABMAAAALAAcAAAAcAAoAAAALAAcAAAAcAAsAAAALAAcAAAAcAAwAAAALAAcAAAAcAA0AAAALAAcAAAAcAA4AAAALAAcAAAAcAA8AAAALAAcAAAAcABAAAAALAAcAAAAcABEAAAALAAcAAAAcABIAAAALAAcAAAAcABMAAAALAAcAAAAdAAoAAAALAAcAAAAdAAsAAAALAAcAAAAdAAwAAAALAAcAAAAdAA0AAAALAAcAAAAdAA4AAAALAAcAAAAdAA8AAAALAAcAAAAdABAAAAALAAcAAAAdABEAAAALAAcAAAAdABIAAAALAAcAAAAdABMAAAALAAcAAAAeAAoAAAALAAcAAAAeAAsAAAALAAcAAAAeAAwAAAALAAcAAAAeAA0AAAALAAcAAAAeAA4AAAALAAcAAAAeAA8AAAALAAcAAAAeABAAAAALAAcAAAAeABEAAAALAAcAAAAeABIAAAALAAcAAAAeABMAAAALAAcAAAAfAAoAAAALAAcAAAAfAAsAAAALAAcAAAAfAAwAAAALAAcAAAAfAA0AAAALAAcAAAAfAA4AAAALAAcAAAAfAA8AAAALAAcAAAAfABAAAAALAAcAAAAfABEAAAALAAcAAAAfABIAAAALAAcAAAAfABMAAAALAAcAAAAgAAoAAAALAAcAAAAgAAsAAAALAAcAAAAgAAwAAAALAAcAAAAgAA0AAAALAAcAAAAgAA4AAAALAAcAAAAgAA8AAAALAAcAAAAgABAAAAALAAcAAAAgABEAAAALAAcAAAAgABIAAAALAAcAAAAgABMAAAALAAcAAAAhAAoAAAALAAcAAAAhAAsAAAALAAcAAAAhAAwAAAALAAcAAAAhAA0AAAALAAcAAAAhAA4AAAALAAcAAAAhAA8AAAALAAcAAAAhABAAAAALAAcAAAAhABEAAAALAAcAAAAhABIAAAALAAcAAAAhABMAAAALAAcAAAAiAAoAAAALAAcAAAAiAAsAAAALAAcAAAAiAAwAAAALAAcAAAAiAA0AAAALAAcAAAAiAA4AAAALAAcAAAAiAA8AAAALAAcAAAAiABAAAAALAAcAAAAiABEAAAALAAcAAAAiABIAAAALAAcAAAAiABMAAAALAAcAAAAjAAoAAAALAAcAAAAjAAsAAAALAAcAAAAjAAwAAAALAAcAAAAjAA0AAAALAAcAAAAjAA4AAAALAAcAAAAjAA8AAAALAAcAAAAjABAAAAALAAcAAAAjABEAAAALAAcAAAAjABIAAAALAAcAAAAjABMAAAALAAcAAAAkAAoAAAALAAcAAAAkAAsAAAALAAcAAAAkAAwAAAALAAcAAAAkAA0AAAALAAcAAAAkAA4AAAALAAcAAAAkAA8AAAALAAcAAAAkABAAAAALAAcAAAAkABEAAAALAAcAAAAkABIAAAALAAcAAAAkABMAAAALAAcAAAAlAAoAAAALAAcAAAAlAAsAAAALAAcAAAAlAAwAAAALAAcAAAAlAA0AAAALAAcAAAAlAA4AAAALAAcAAAAlAA8AAAALAAcAAAAlABAAAAALAAcAAAAlABEAAAALAAcAAAAlABIAAAALAAcAAAAlABMAAAALAAcAAAAmAAoAAAALAAcAAAAmAAsAAAALAAcAAAAmAAwAAAALAAcAAAAmAA0AAAALAAcAAAAmAA4AAAALAAcAAAAmAA8AAAALAAcAAAAmABAAAAALAAcAAAAmABEAAAALAAcAAAAmABIAAAALAAcAAAAmABMAAAALAAcAAAAnAAoAAAALAAcAAAAnAAsAAAALAAcAAAAnAAwAAAALAAcAAAAnAA0AAAALAAcAAAAnAA4AAAALAAcAAAAnAA8AAAALAAcAAAAnABAAAAALAAcAAAAnABEAAAALAAcAAAAnABIAAAALAAcAAAAnABMAAAALAAcAAAAoAAoAAAALAAcAAAAoAAsAAAALAAcAAAAoAAwAAAALAAcAAAAoAA0AAAALAAcAAAAoAA4AAAALAAcAAAAoAA8AAAALAAcAAAAoABAAAAALAAcAAAAoABEAAAALAAcAAAAoABIAAAALAAcAAAAoABMAAAALAAcAAAApAAoAAAALAAcAAAApAAsAAAALAAcAAAApAAwAAAALAAcAAAApAA0AAAALAAcAAAApAA4AAAALAAcAAAApAA8AAAALAAcAAAApABAAAAALAAcAAAApABEAAAALAAcAAAApABIAAAALAAcAAAApABMAAAALAAcAAAAqAAoAAAALAAcAAAAqAAsAAAALAAcAAAAqAAwAAAALAAcAAAAqAA0AAAALAAcAAAAqAA4AAAALAAcAAAAqAA8AAAALAAcAAAAqABAAAAALAAcAAAAqABEAAAALAAcAAAAqABIAAAALAAcAAAAqABMAAAALAAcAAAArAAoAAAALAAcAAAArAAsAAAALAAcAAAArAAwAAAALAAcAAAArAA0AAAALAAcAAAArAA4AAAALAAcAAAArAA8AAAALAAcAAAArABAAAAALAAcAAAArABEAAAALAAcAAAArABIAAAALAAcAAAArABMAAAALAAcAAAAsAAoAAAALAAcAAAAsAAsAAAALAAcAAAAsAAwAAAALAAcAAAAsAA0AAAALAAcAAAAsAA4AAAALAAcAAAAsAA8AAAALAAcAAAAsABAAAAALAAcAAAAsABEAAAALAAcAAAAsABIAAAALAAcAAAAsABMAAAALAAcAAAAtAAoAAAALAAcAAAAtAAsAAAALAAcAAAAtAAwAAAALAAcAAAAtAA0AAAALAAcAAAAtAA4AAAALAAcAAAAtAA8AAAALAAcAAAAtABAAAAALAAcAAAAtABEAAAALAAcAAAAtABIAAAALAAcAAAAtABMAAAALAAcAAAAuAAoAAAALAAcAAAAuAAsAAAALAAcAAAAuAAwAAAALAAcAAAAuAA0AAAALAAcAAAAuAA4AAAALAAcAAAAuAA8AAAALAAcAAAAuABAAAAALAAcAAAAuABEAAAALAAcAAAAuABIAAAALAAcAAAAuABMAAAALAAcAAAAvAAoAAAALAAcAAAAvAAsAAAALAAcAAAAvAAwAAAALAAcAAAAvAA0AAAALAAcAAAAvAA4AAAALAAcAAAAvAA8AAAALAAcAAAAvABAAAAALAAcAAAAvABEAAAALAAcAAAAvABIAAAALAAcAAAAvABMAAAALAAcAAAAwAAoAAAALAAcAAAAwAAsAAAALAAcAAAAwAAwAAAALAAcAAAAwAA0AAAALAAcAAAAwAA4AAAALAAcAAAAwAA8AAAALAAcAAAAwABAAAAALAAcAAAAwABEAAAALAAcAAAAwABIAAAALAAcAAAAwABMAAAALAAcAAAAxAAoAAAALAAcAAAAxAAsAAAALAAcAAAAxAAwAAAALAAcAAAAxAA0AAAALAAcAAAAxAA4AAAALAAcAAAAxAA8AAAALAAcAAAAxABAAAAALAAcAAAAxABEAAAALAAcAAAAxABIAAAALAAcAAAAxABMAAAALAAcAAAAyAAoAAAALAAcAAAAyAAsAAAALAAcAAAAyAAwAAAALAAcAAAAyAA0AAAALAAcAAAAyAA4AAAALAAcAAAAyAA8AAAALAAcAAAAyABAAAAALAAcAAAAyABEAAAALAAcAAAAyABIAAAALAAcAAAAyABMAAAALAAcAAAAzAAoAAAALAAcAAAAzAAsAAAALAAcAAAAzAAwAAAALAAcAAAAzAA0AAAALAAcAAAAzAA4AAAALAAcAAAAzAA8AAAALAAcAAAAzABAAAAALAAcAAAAzABEAAAALAAcAAAAzABIAAAALAAcAAAAzABMAAAALAAcAAAA0AAoAAAALAAcAAAA0AAsAAAALAAcAAAA0AAwAAAALAAcAAAA0AA0AAAALAAcAAAA0AA4AAAALAAcAAAA0AA8AAAALAAcAAAA0ABAAAAALAAcAAAA0ABEAAAALAAcAAAA0ABIAAAALAAcAAAA0ABMAAAALAAcAAAA1AAoAAAALAAcAAAA1AAsAAAALAAcAAAA1AAwAAAALAAcAAAA1AA0AAAALAAcAAAA1AA4AAAALAAcAAAA1AA8AAAALAAcAAAA1ABAAAAALAAcAAAA1ABEAAAALAAcAAAA1ABIAAAALAAcAAAA1ABMAAAALAAcAAAA2AAoAAAALAAcAAAA2AAsAAAALAAcAAAA2AAwAAAALAAcAAAA2AA0AAAALAAcAAAA2AA4AAAALAAcAAAA2AA8AAAALAAcAAAA2ABAAAAALAAcAAAA2ABEAAAALAAcAAAA2ABIAAAALAAcAAAA2ABMAAAALAAcAAAA3AAoAAAALAAcAAAA3AAsAAAALAAcAAAA3AAwAAAALAAcAAAA3AA0AAAALAAcAAAA3AA4AAAALAAcAAAA3AA8AAAALAAcAAAA3ABAAAAALAAcAAAA3ABEAAAALAAcAAAA3ABIAAAALAAcAAAA3ABMAAAALAAcAAAA4AAoAAAALAAcAAAA4AAsAAAALAAcAAAA4AAwAAAALAAcAAAA4AA0AAAALAAcAAAA4AA4AAAALAAcAAAA4AA8AAAALAAcAAAA4ABAAAAALAAcAAAA4ABEAAAALAAcAAAA4ABIAAAALAAcAAAA4ABMAAAALAAcAAAA5AAoAAAALAAcAAAA5AAsAAAALAAcAAAA5AAwAAAALAAcAAAA5AA0AAAALAAcAAAA5AA4AAAALAAcAAAA5AA8AAAALAAcAAAA5ABAAAAALAAcAAAA5ABEAAAALAAcAAAA5ABIAAAALAAcAAAA5ABMAAAALAAcAAAA6AAoAAAALAAcAAAA6AAsAAAALAAcAAAA6AAwAAAALAAcAAAA6AA0AAAALAAcAAAA6AA4AAAALAAcAAAA6AA8AAAALAAcAAAA6ABAAAAALAAcAAAA6ABEAAAALAAcAAAA6ABIAAAALAAcAAAA6ABMAAAALAAcAAAA7AAoAAAALAAcAAAA7AAsAAAALAAcAAAA7AAwAAAALAAcAAAA7AA0AAAALAAcAAAA7AA4AAAALAAcAAAA7AA8AAAALAAcAAAA7ABAAAAALAAcAAAA7ABEAAAALAAcAAAA7ABIAAAALAAcAAAA7ABMAAAALAAcAAAAVAAwAAAANABAAAAAVAAsAAAANAA8AAAAVAAoAAAANAA4AAAAUAAwAAAAMABAAAAAUAAsAAAAMAA8AAAAUAAoAAAAMAA4AAAATAAwAAAAMABAAAAATAAsAAAAMAA8AAAATAAoAAAAMAA4AAAASAAwAAAALABAAAAASAAsAAAALAA8AAAASAAoAAAALAA4AAAA=") +tile_set = ExtResource("3_wmiud") +navigation_enabled = false +script = ExtResource("4_8clrf") +_solidLayers = [NodePath("../Solid"), NodePath("../Props")] +metadata/_edit_lock_ = true + +[node name="Solid" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]] +tile_map_data = PackedByteArray("AAATAAAAAAACAAUAAAASAAAAAAABAAUAAAARAAAAAAABAAUAAAAQAAAAAAABAAUAAAAPAAAAAAABAAUAAAAOAAAAAAABAAUAAAANAAAAAAAFAAsAAAAMAAAAAAABAAQAAAALAAAAAAACAAQAAAAIAAAAAAADAAQAAAAHAAAAAAAEAAsAAAAGAAAAAAABAAUAAAAFAAAAAAABAAUAAAAEAAAAAAABAAUAAAADAAAAAAABAAUAAAACAAAAAAABAAUAAAABAAAAAAABAAUAAAAAAAAAAAAAAAUAAAATAAIAAAABAAcAAAATAAEAAAACAAgAAAAAAAIAAAAEAAQAAAAAAAEAAAACAAsAAAAAAAkAAAAAAAcAAAAAAAgAAAACAAwAAAAAAAcAAAAAAAQAAAAAAAYAAAAFAAQAAAALAAEAAAAKAAgAAAALAAIAAAAKAAkAAAAMAAEAAAAKAAgAAAAMAAIAAAAKAAkAAAANAAEAAAAAAAYAAAANAAIAAAAAAAYAAAAOAAEAAAACAAgAAAAOAAIAAAACAAgAAAAPAAEAAAACAAgAAAAPAAIAAAACAAgAAAAQAAEAAAACAAgAAAAQAAIAAAACAAgAAAARAAEAAAACAAgAAAARAAIAAAAAAAgAAAASAAEAAAACAAgAAAASAAIAAAABAAcAAAABAAEAAAABAAcAAAACAAEAAAABAAcAAAADAAEAAAABAAcAAAAEAAEAAAABAAcAAAAFAAEAAAABAAcAAAAGAAEAAAABAAcAAAAHAAEAAAACAAcAAAAIAAEAAAAKAAgAAAAIAAIAAAAKAAkAAAAAAAMAAAAKAAgAAAAAAAQAAAAKAAkAAAAUAAAAAAAAAAUAAAAUAAEAAAACAAgAAAAUAAIAAAABAAcAAAAVAAAAAAABAAUAAAAVAAEAAAACAAgAAAAVAAIAAAABAAcAAAAWAAAAAAABAAUAAAAWAAEAAAACAAgAAAAWAAIAAAABAAgAAAAXAAAAAAABAAUAAAAXAAEAAAACAAgAAAAXAAIAAAACAAgAAAAYAAAAAAABAAUAAAAYAAEAAAACAAgAAAAYAAIAAAACAAgAAAAZAAAAAAABAAUAAAAZAAEAAAACAAgAAAAZAAIAAAACAAgAAAAaAAAAAAABAAUAAAAaAAEAAAACAAgAAAAaAAIAAAACAAgAAAAbAAAAAAAEAAsAAAAbAAEAAAACAAYAAAAbAAIAAAACAAYAAAAcAAAAAAADAAQAAAAcAAEAAAAKAAgAAAAcAAIAAAAKAAkAAAAfAAAAAAACAAQAAAAfAAEAAAAKAAgAAAAfAAIAAAAKAAkAAAAgAAAAAAABAAQAAAAgAAEAAAAKAAgAAAAgAAIAAAAKAAkAAAAhAAAAAAAFAAsAAAAhAAEAAAAAAAYAAAAhAAIAAAAAAAYAAAAiAAAAAAABAAUAAAAiAAEAAAACAAgAAAAiAAIAAAACAAgAAAAjAAAAAAABAAUAAAAjAAEAAAACAAgAAAAjAAIAAAACAAgAAAAkAAAAAAABAAUAAAAkAAEAAAACAAgAAAAkAAIAAAACAAgAAAAlAAAAAAABAAUAAAAlAAEAAAACAAgAAAAlAAIAAAACAAgAAAAmAAAAAAABAAUAAAAmAAEAAAACAAgAAAAmAAIAAAACAAgAAAAnAAAAAAACAAUAAAAnAAEAAAACAAgAAAAnAAIAAAACAAgAAAAoAAAAAAAAAAUAAAAoAAEAAAACAAgAAAAoAAIAAAACAAgAAAApAAAAAAABAAUAAAApAAEAAAACAAgAAAApAAIAAAACAAgAAAAqAAAAAAABAAUAAAAqAAEAAAACAAgAAAAqAAIAAAACAAgAAAArAAAAAAABAAUAAAArAAEAAAACAAgAAAArAAIAAAACAAgAAAAsAAAAAAABAAUAAAAsAAEAAAACAAgAAAAsAAIAAAACAAgAAAAtAAAAAAABAAUAAAAtAAEAAAACAAgAAAAtAAIAAAACAAgAAAAuAAAAAAAEAAsAAAAuAAEAAAACAAYAAAAuAAIAAAACAAYAAAAvAAAAAAABAAQAAAAvAAEAAAAKAAgAAAAvAAIAAAAKAAkAAAAwAAAAAAADAAQAAAAwAAEAAAAKAAgAAAAwAAIAAAAKAAkAAAAzAAAAAAACAAQAAAAzAAEAAAAKAAgAAAAzAAIAAAAKAAkAAAA0AAAAAAAFAAsAAAA0AAEAAAAAAAcAAAA1AAAAAAABAAUAAAA1AAEAAAABAAcAAAA2AAAAAAABAAUAAAA2AAEAAAABAAcAAAA3AAAAAAABAAUAAAA3AAEAAAABAAcAAAA4AAAAAAABAAUAAAA4AAEAAAABAAcAAAA5AAAAAAABAAUAAAA5AAEAAAABAAcAAAA6AAAAAAABAAUAAAA6AAEAAAABAAcAAAA7AAAAAAACAAUAAAA7AAEAAAADAAsAAAA7AAIAAAAEAAQAAAA7AAMAAAAKAAgAAAA7AAQAAAAKAAkAAAA7AAYAAAAFAAQAAAA7AAcAAAAAAAQAAAA7AAgAAAADAAwAAAA7AAkAAAACAAcAAAAAAAoAAAAAAAUAAAAAAAsAAAACAAsAAAAAAAwAAAAEAAQAAAAAAA0AAAAKAAgAAAAAAA4AAAAKAAkAAAAAABAAAAAFAAQAAAAAABEAAAACAAwAAAAAABIAAAAAAAYAAAAAABMAAAAAAAcAAAABABMAAAABAAcAAAACABMAAAABAAcAAAADABMAAAABAAcAAAAEABMAAAABAAcAAAAFABMAAAABAAcAAAAGABMAAAABAAcAAAAHABMAAAAEAAwAAAAIABMAAAADAAQAAAALABMAAAACAAQAAAAMABMAAAAFAAwAAAANABMAAAABAAcAAAAOABMAAAABAAcAAAAPABMAAAABAAcAAAAQABMAAAABAAcAAAARABMAAAABAAcAAAASABMAAAABAAcAAAATABMAAAACAAcAAAAUABMAAAAAAAcAAAAVABMAAAABAAcAAAAWABMAAAABAAcAAAAXABMAAAABAAcAAAAYABMAAAABAAcAAAAZABMAAAABAAcAAAAaABMAAAAEAAwAAAAbABMAAAABAAQAAAAcABMAAAADAAQAAAAfABMAAAACAAQAAAAgABMAAAABAAQAAAAhABMAAAAFAAwAAAAiABMAAAABAAcAAAAjABMAAAABAAcAAAAkABMAAAABAAcAAAAlABMAAAABAAcAAAAmABMAAAABAAcAAAAnABMAAAACAAcAAAAoABMAAAAAAAcAAAApABMAAAABAAcAAAAqABMAAAABAAcAAAArABMAAAABAAcAAAAsABMAAAABAAcAAAAtABMAAAABAAcAAAAuABMAAAAEAAwAAAAvABMAAAABAAQAAAAwABMAAAADAAQAAAAzABMAAAACAAQAAAA0ABMAAAAFAAwAAAA1ABMAAAABAAcAAAA2ABMAAAABAAcAAAA3ABMAAAABAAcAAAA4ABMAAAABAAcAAAA5ABMAAAABAAcAAAA6ABMAAAABAAcAAAA7AAoAAAACAAUAAAA7AAsAAAADAAsAAAA7AAwAAAAEAAQAAAA7AA0AAAAKAAgAAAA7AA4AAAAKAAkAAAA7ABAAAAAFAAQAAAA7ABEAAAADAAwAAAA7ABIAAAACAAYAAAA7ABMAAAACAAcAAAAFAAsAAAACAAcAAAAFAAoAAAACAAYAAAAFAAkAAAACAAYAAAAFAAgAAAACAAUAAAAEAAsAAAABAAcAAAAEAAoAAAACAAgAAAAEAAkAAAACAAgAAAAEAAgAAAABAAUAAAADAAsAAAABAAcAAAADAAoAAAACAAgAAAADAAkAAAACAAgAAAADAAgAAAABAAUAAAACAAsAAAABAAcAAAACAAoAAAACAAgAAAACAAkAAAACAAgAAAACAAgAAAABAAUAAAABAAsAAAABAAcAAAABAAoAAAACAAgAAAABAAkAAAACAAgAAAABAAgAAAABAAUAAAAHABIAAAACAAYAAAAHABEAAAACAAUAAAAGABIAAAACAAgAAAAGABEAAAABAAUAAAAFABIAAAACAAgAAAAFABEAAAABAAUAAAAEABIAAAACAAgAAAAEABEAAAABAAUAAAADABIAAAACAAgAAAADABEAAAABAAUAAAACABIAAAACAAgAAAACABEAAAABAAUAAAABABIAAAACAAgAAAABABEAAAABAAUAAAAaABIAAAACAAYAAAAaABEAAAACAAYAAAAaABAAAAACAAYAAAAaAA8AAAACAAYAAAAaAA4AAAACAAUAAAAZABIAAAACAAgAAAAZABEAAAACAAgAAAAZABAAAAACAAgAAAAZAA8AAAACAAgAAAAZAA4AAAABAAUAAAAYABIAAAACAAgAAAAYABEAAAACAAgAAAAYABAAAAACAAgAAAAYAA8AAAACAAgAAAAYAA4AAAABAAUAAAAXABIAAAACAAgAAAAXABEAAAACAAgAAAAXABAAAAACAAgAAAAXAA8AAAACAAgAAAAXAA4AAAABAAUAAAAWABIAAAACAAgAAAAWABEAAAACAAgAAAAWABAAAAACAAgAAAAWAA8AAAACAAgAAAAWAA4AAAABAAUAAAAVABIAAAACAAgAAAAVABEAAAACAAgAAAAVABAAAAACAAgAAAAVAA8AAAACAAgAAAAVAA4AAAABAAUAAAAUABIAAAACAAgAAAAUABEAAAACAAgAAAAUABAAAAACAAgAAAAUAA8AAAACAAgAAAAUAA4AAAABAAUAAAATABIAAAACAAgAAAATABEAAAACAAgAAAATABAAAAACAAgAAAATAA8AAAACAAgAAAATAA4AAAABAAUAAAASABIAAAACAAgAAAASABEAAAACAAgAAAASABAAAAACAAgAAAASAA8AAAACAAgAAAASAA4AAAABAAUAAAARABIAAAACAAgAAAARABEAAAACAAgAAAARABAAAAACAAgAAAARAA8AAAACAAgAAAARAA4AAAABAAUAAAAQABIAAAACAAgAAAAQABEAAAACAAgAAAAQABAAAAACAAgAAAAQAA8AAAACAAgAAAAQAA4AAAABAAUAAAAPABIAAAACAAgAAAAPABEAAAACAAgAAAAPABAAAAACAAgAAAAPAA8AAAACAAgAAAAPAA4AAAAAAAkAAAAOABIAAAACAAgAAAAOABEAAAACAAgAAAAOABAAAAACAAgAAAAOAA8AAAACAAgAAAAOAA4AAAACAAgAAAANABIAAAACAAgAAAANABEAAAACAAgAAAANABAAAAACAAgAAAANAA8AAAACAAgAAAANAA4AAAACAAgAAAAMABIAAAAAAAYAAAAMABEAAAAAAAYAAAAMABAAAAAAAAYAAAAMAA8AAAAAAAYAAAAMAA4AAAAAAAYAAAAuABIAAAACAAYAAAAuABEAAAACAAYAAAAuABAAAAACAAYAAAAuAA8AAAACAAYAAAAuAA4AAAACAAUAAAAtABIAAAACAAgAAAAtABEAAAACAAgAAAAtABAAAAACAAgAAAAtAA8AAAACAAgAAAAtAA4AAAABAAUAAAAsABIAAAACAAgAAAAsABEAAAACAAgAAAAsABAAAAACAAgAAAAsAA8AAAACAAgAAAAsAA4AAAABAAUAAAArABIAAAACAAgAAAArABEAAAACAAgAAAArABAAAAACAAgAAAArAA8AAAACAAgAAAArAA4AAAABAAUAAAAqABIAAAACAAgAAAAqABEAAAACAAgAAAAqABAAAAACAAgAAAAqAA8AAAACAAgAAAAqAA4AAAABAAUAAAApABIAAAACAAgAAAApABEAAAACAAgAAAApABAAAAACAAgAAAApAA8AAAACAAgAAAApAA4AAAABAAUAAAAoABIAAAACAAgAAAAoABEAAAACAAgAAAAoABAAAAACAAgAAAAoAA8AAAACAAgAAAAoAA4AAAABAAUAAAAnABIAAAACAAgAAAAnABEAAAACAAgAAAAnABAAAAACAAgAAAAnAA8AAAACAAgAAAAnAA4AAAABAAUAAAAmABIAAAACAAgAAAAmABEAAAACAAgAAAAmABAAAAACAAgAAAAmAA8AAAACAAgAAAAmAA4AAAABAAUAAAAlABIAAAACAAgAAAAlABEAAAACAAgAAAAlABAAAAACAAgAAAAlAA8AAAACAAgAAAAlAA4AAAABAAUAAAAkABIAAAACAAgAAAAkABEAAAACAAgAAAAkABAAAAACAAgAAAAkAA8AAAACAAgAAAAkAA4AAAABAAUAAAAjABIAAAACAAgAAAAjABEAAAACAAgAAAAjABAAAAACAAgAAAAjAA8AAAACAAgAAAAjAA4AAAABAAUAAAAiABIAAAACAAgAAAAiABEAAAACAAgAAAAiABAAAAACAAgAAAAiAA8AAAACAAgAAAAiAA4AAAABAAUAAAAhABIAAAAAAAYAAAAhABEAAAAAAAYAAAAhABAAAAAAAAYAAAAhAA8AAAAAAAYAAAAhAA4AAAAAAAUAAAA6ABIAAAACAAgAAAA6ABEAAAABAAUAAAA5ABIAAAACAAgAAAA5ABEAAAABAAUAAAA4ABIAAAACAAgAAAA4ABEAAAABAAUAAAA3ABIAAAACAAgAAAA3ABEAAAABAAUAAAA2ABIAAAACAAgAAAA2ABEAAAABAAUAAAA1ABIAAAACAAgAAAA1ABEAAAABAAUAAAA0ABIAAAAAAAYAAAA0ABEAAAAAAAUAAAA6AAoAAAACAAgAAAA6AAkAAAACAAgAAAA6AAgAAAABAAUAAAA5AAoAAAACAAgAAAA5AAkAAAACAAgAAAA5AAgAAAABAAUAAAA4AAoAAAACAAgAAAA4AAkAAAACAAgAAAA4AAgAAAABAAUAAAA3AAoAAAACAAgAAAA3AAkAAAACAAgAAAA3AAgAAAABAAUAAAA2AAoAAAACAAgAAAA2AAkAAAACAAgAAAA2AAgAAAABAAUAAAA1AAoAAAACAAgAAAA1AAkAAAACAAgAAAA1AAgAAAABAAUAAAA0AAoAAAACAAgAAAA0AAkAAAACAAgAAAA0AAgAAAABAAUAAAAzAAoAAAACAAgAAAAzAAkAAAACAAgAAAAzAAgAAAABAAUAAAAyAAoAAAAAAAYAAAAyAAkAAAAAAAYAAAAyAAgAAAAAAAUAAAA6AAsAAAABAAcAAAA5AAsAAAABAAcAAAA4AAsAAAABAAcAAAA3AAsAAAABAAcAAAA2AAsAAAABAAcAAAA1AAsAAAABAAcAAAA0AAsAAAABAAcAAAAzAAsAAAABAAcAAAAyAAsAAAAAAAcAAAARAAUAAAACAAcAAAARAAQAAAACAAYAAAARAAMAAAACAAYAAAAQAAUAAAABAAcAAAAQAAQAAAACAAgAAAAQAAMAAAACAAgAAAAPAAUAAAABAAcAAAAPAAQAAAACAAgAAAAPAAMAAAACAAgAAAAOAAUAAAABAAcAAAAOAAQAAAACAAgAAAAOAAMAAAACAAgAAAANAAUAAAAAAAcAAAANAAQAAAAAAAYAAAANAAMAAAAAAAYAAAAbAAUAAAACAAcAAAAbAAQAAAACAAYAAAAbAAMAAAACAAYAAAAaAAUAAAABAAcAAAAaAAQAAAACAAgAAAAaAAMAAAACAAgAAAAZAAUAAAABAAcAAAAZAAQAAAACAAgAAAAZAAMAAAACAAgAAAAYAAUAAAABAAcAAAAYAAQAAAACAAgAAAAYAAMAAAACAAgAAAAXAAUAAAABAAcAAAAXAAQAAAACAAgAAAAXAAMAAAACAAgAAAAWAAUAAAAAAAcAAAAWAAQAAAAAAAYAAAAWAAMAAAAAAAYAAAAuAAUAAAACAAcAAAAuAAQAAAACAAYAAAAuAAMAAAACAAYAAAAtAAUAAAABAAcAAAAtAAQAAAACAAgAAAAtAAMAAAACAAgAAAAsAAUAAAABAAcAAAAsAAQAAAACAAgAAAAsAAMAAAACAAgAAAArAAUAAAABAAcAAAArAAQAAAACAAgAAAArAAMAAAACAAgAAAAqAAUAAAABAAcAAAAqAAQAAAACAAgAAAAqAAMAAAACAAgAAAApAAUAAAABAAcAAAApAAQAAAACAAgAAAApAAMAAAACAAgAAAAoAAUAAAABAAcAAAAoAAQAAAACAAgAAAAoAAMAAAACAAgAAAAnAAUAAAABAAcAAAAnAAQAAAACAAgAAAAnAAMAAAACAAgAAAAmAAUAAAABAAcAAAAmAAQAAAACAAgAAAAmAAMAAAACAAgAAAAlAAUAAAABAAcAAAAlAAQAAAACAAgAAAAlAAMAAAACAAgAAAAkAAUAAAABAAcAAAAkAAQAAAACAAgAAAAkAAMAAAACAAgAAAAjAAUAAAABAAcAAAAjAAQAAAACAAgAAAAjAAMAAAACAAgAAAAiAAUAAAABAAcAAAAiAAQAAAACAAgAAAAiAAMAAAACAAgAAAAhAAUAAAAAAAcAAAAhAAQAAAAAAAYAAAAhAAMAAAAAAAYAAAABAAIAAAAKAAgAAAABAAMAAAAKAAkAAAACAAIAAAAKAAgAAAACAAMAAAAKAAkAAAADAAIAAAAKAAgAAAADAAMAAAAKAAkAAAAEAAIAAAAKAAgAAAAEAAMAAAAKAAkAAAAFAAIAAAAKAAgAAAAFAAMAAAAKAAkAAAAGAAIAAAAKAAgAAAAGAAMAAAAKAAkAAAAHAAIAAAAKAAgAAAAHAAMAAAAKAAkAAAANAAYAAAAKAAgAAAANAAcAAAAKAAkAAAAOAAYAAAAKAAgAAAAOAAcAAAAKAAkAAAAPAAYAAAAJAAoAAAAPAAcAAAAJAAsAAAAQAAYAAAAJAAoAAAAQAAcAAAAJAAsAAAARAAYAAAAJAAoAAAARAAcAAAAJAAsAAAAWAAYAAAAJAAoAAAAWAAcAAAAJAAsAAAAXAAYAAAAJAAoAAAAXAAcAAAAJAAsAAAAYAAYAAAAJAAoAAAAYAAcAAAAJAAsAAAAZAAYAAAAKAAgAAAAZAAcAAAAKAAkAAAAaAAYAAAAKAAgAAAAaAAcAAAAKAAkAAAAbAAYAAAAKAAgAAAAbAAcAAAAKAAkAAAAhAAYAAAAJAAIAAAAhAAcAAAAJAAMAAAAiAAYAAAAKAAIAAAAiAAcAAAAKAAMAAAAjAAYAAAAKAAAAAAAjAAcAAAAKAAEAAAAkAAYAAAAKAAAAAAAkAAcAAAAKAAEAAAAlAAYAAAAKAAoAAAAlAAcAAAAKAAsAAAAmAAYAAAAKAAoAAAAmAAcAAAAKAAsAAAAnAAYAAAAKAAoAAAAnAAcAAAAKAAsAAAAoAAYAAAAKAAAAAAAoAAcAAAAKAAEAAAApAAYAAAAKAAAAAAApAAcAAAAKAAEAAAAqAAYAAAAJAAIAAAAqAAcAAAAJAAMAAAArAAYAAAAKAAIAAAArAAcAAAAKAAMAAAAsAAYAAAAKAAAAAAAsAAcAAAAKAAEAAAAtAAYAAAAJAAIAAAAtAAcAAAAJAAMAAAAuAAYAAAAKAAIAAAAuAAcAAAAKAAMAAAABAAwAAAAKAAgAAAABAA0AAAAKAAkAAAACAAwAAAAKAAgAAAACAA0AAAAKAAkAAAADAAwAAAAKAAgAAAADAA0AAAAKAAkAAAAEAAwAAAAKAAgAAAAEAA0AAAAKAAkAAAAFAAwAAAAKAAgAAAAFAA0AAAAKAAkAAAAyAAwAAAAKAAgAAAAyAA0AAAAKAAkAAAAzAAwAAAAKAAgAAAAzAA0AAAAKAAkAAAA0AAwAAAAKAAgAAAA0AA0AAAAKAAkAAAA1AAwAAAAKAAgAAAA1AA0AAAAKAAkAAAA2AAwAAAAKAAgAAAA2AA0AAAAKAAkAAAA3AAwAAAAKAAgAAAA3AA0AAAAKAAkAAAA4AAwAAAAKAAgAAAA4AA0AAAAKAAkAAAA5AAwAAAAKAAgAAAA5AA0AAAAKAAkAAAA6AAwAAAAKAAgAAAA6AA0AAAAKAAkAAAA0AAIAAAAKAAgAAAA0AAMAAAAKAAkAAAA1AAIAAAAKAAgAAAA1AAMAAAAKAAkAAAA2AAIAAAAKAAgAAAA2AAMAAAAKAAkAAAA3AAIAAAAKAAgAAAA3AAMAAAAKAAkAAAA4AAIAAAAKAAgAAAA4AAMAAAAKAAkAAAA5AAIAAAAKAAgAAAA5AAMAAAAKAAkAAAA6AAIAAAAKAAgAAAA6AAMAAAAKAAkAAAAdAAcAAAABAAMAAAAeAAcAAAABAAMAAAAcAAcAAAAJAAQAAAAfAAcAAAAJAAQAAAAgAAcAAAAJAAQAAAASAAMAAAAJAAoAAAASAAQAAAAJAAsAAAATAAMAAAAJAAoAAAATAAQAAAAJAAsAAAAUAAMAAAAJAAoAAAAUAAQAAAAJAAsAAAAVAAMAAAAJAAoAAAAVAAQAAAAJAAsAAAAPAA0AAAACAAYAAAAPAAwAAAACAAYAAAAOAA0AAAACAAgAAAAOAAwAAAACAAgAAAANAA0AAAACAAgAAAANAAwAAAACAAgAAAAMAA0AAAAAAAYAAAAMAAwAAAAAAAYAAAAPAAsAAAACAAUAAAAOAAsAAAABAAUAAAANAAsAAAABAAUAAAAMAAsAAAAAAAUAAAA=") +tile_set = ExtResource("3_wmiud") +navigation_enabled = false +metadata/_edit_lock_ = true + +[node name="Props" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]] +tile_map_data = PackedByteArray("AAAmAAkAAAAIAAoAAAAmAAgAAAAGAAgAAAAjAAkAAAAIAAoAAAAjAAgAAAAGAAgAAAApAAkAAAAIAAoAAAApAAgAAAAGAAgAAAAlAAgAAQAAAAAAEAAnAAgAAQAAAAAAEAAjAAoAAAAHAAUAAAAkAAoAAAAHAAUAAAAlAAoAAAAHAAUAAAAmAAoAAAAHAAUAAAAnAAoAAAAHAAUAAAAoAAoAAAAHAAUAAAApAAoAAAAHAAUAAAAiAAgAAAAIAAYAAAAiAAkAAAAIAAYAAAAqAAgAAAAGAAYAAAAqAAkAAAAGAAYAAAAqAAoAAAAFAA8AAAAiAAoAAAAEAA8AAAAgAAYAAAAHAAsAAAAfAAYAAAAHAAsAAAAcAAYAAAAHAAsAAAANAAYAAAAJAAwAAAANAAcAAAAJAA0AAAALAAEAAAAJAAwAAAALAAIAAAAJAA0AAAAWAAYAAAAJAAwAAAAWAAcAAAAJAA0AAAAhAAYAAAAJAAwAAAAhAAcAAAAJAA0AAAAyAAwAAAAJAAwAAAAyAA0AAAAJAA0AAAA0AAIAAAAJAAwAAAA0AAMAAAAJAA0AAAAzAAEAAAAJAAwAAAAzAAIAAAAJAA0AAAAFAAwAAAAKAAwAAAAFAA0AAAAKAA0AAAAHAAIAAAAKAAwAAAAHAAMAAAAKAA0AAAAIAAEAAAAKAAwAAAAIAAIAAAAKAA0AAAAbAAYAAAAKAAwAAAAbAAcAAAAKAA0AAAAcAAEAAAAKAAwAAAAcAAIAAAAKAA0AAAAwAAEAAAAKAAwAAAAwAAIAAAAKAA0AAAAuAAYAAAAKAAwAAAAuAAcAAAAKAA0AAAAfAAEAAAAJAAwAAAAfAAIAAAAJAAwAAAAAAA0AAAAKAA4AAAAAAA4AAAAKAA8AAAAAAAMAAAAKAA4AAAAAAAQAAAAKAA8AAAA7AAMAAAAKAA4AAAA7AAQAAAAKAA8AAAA7AA0AAAAKAA4AAAA7AA4AAAAKAA8AAAA=") +tile_set = ExtResource("3_wmiud") +navigation_enabled = false +metadata/_edit_lock_ = true + +[node name="Actors" type="Node2D" parent="Tilemaps"] +metadata/_edit_lock_ = true + +[node name="BigTankHorizontal" parent="Tilemaps/Actors" instance=ExtResource("5_0tpnm")] +position = Vector2(304, 81) + +[node name="BigTankHorizontal2" parent="Tilemaps/Actors" instance=ExtResource("5_0tpnm")] +position = Vector2(338, 81) + +[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."] +visible = false +navigation_polygon = SubResource("NavigationPolygon_rlq0q") + +[node name="PlayerEnterDetector" type="Area2D" parent="."] +visible = false +collision_layer = 0 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerEnterDetector"] +position = Vector2(480.5, 174.5) +shape = SubResource("RectangleShape2D_5bd7y") + +[node name="EnemySpawners" type="Node2D" parent="."] + +[node name="RogueliteEnemySpawner6" type="Marker2D" parent="EnemySpawners"] +position = Vector2(161, 170) +script = ExtResource("5_j6t4s") +Enemy = ExtResource("6_ko1fq") + +[node name="RogueliteEnemySpawner7" type="Marker2D" parent="EnemySpawners"] +position = Vector2(387, 203) +script = ExtResource("5_j6t4s") +Enemy = ExtResource("7_4efvr") + +[node name="RogueliteEnemySpawner10" type="Marker2D" parent="EnemySpawners"] +position = Vector2(321, 151) +script = ExtResource("5_j6t4s") +Enemy = ExtResource("7_4efvr") + +[node name="RogueliteEnemySpawner8" type="Marker2D" parent="EnemySpawners"] +position = Vector2(423, 142) +script = ExtResource("5_j6t4s") +Enemy = ExtResource("6_ko1fq") + +[node name="RogueliteEnemySpawner9" type="Marker2D" parent="EnemySpawners"] +position = Vector2(584, 198) +script = ExtResource("5_j6t4s") +Enemy = ExtResource("7_4efvr") + +[node name="RogueliteEnemySpawner11" type="Marker2D" parent="EnemySpawners"] +position = Vector2(715, 146) +script = ExtResource("5_j6t4s") +Enemy = ExtResource("7_4efvr") + +[node name="Features" type="Node2D" parent="."] + +[node name="Chest" type="Marker2D" parent="Features"] +position = Vector2(344, 103) +script = ExtResource("8_nhpte") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest2" type="Marker2D" parent="Features"] +position = Vector2(653, 136) +script = ExtResource("8_nhpte") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest4" type="Marker2D" parent="Features"] +position = Vector2(296, 104) +script = ExtResource("8_nhpte") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest3" type="Marker2D" parent="Features"] +position = Vector2(580, 136) +script = ExtResource("8_nhpte") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="MovementSensorLonger" parent="Features" instance=ExtResource("11_wmiud")] +position = Vector2(216, 119) + +[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scenes/Maps/RogueliteMaps/Generic_3x2.tscn b/Scenes/Maps/RogueliteMaps/Generic_3x2.tscn new file mode 100644 index 00000000..91842651 --- /dev/null +++ b/Scenes/Maps/RogueliteMaps/Generic_3x2.tscn @@ -0,0 +1,117 @@ +[gd_scene load_steps=13 format=4 uid="uid://b3rgcwf0irjop"] + +[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_l3yeg"] +[ext_resource type="Resource" uid="uid://c5lwk3cho2f4s" path="res://Resources/RogueliteMaps/Generic_3x2.tres" id="2_l3yeg"] +[ext_resource type="TileSet" uid="uid://6k28roiljylj" path="res://Tilesets/factory_tileset.tres" id="3_udqrd"] +[ext_resource type="Script" uid="uid://krean0uywtms" path="res://Scripts/TilemapAvoidance.cs" id="4_otlq5"] +[ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="5_n4t0a"] +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="6_7lvyp"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="7_8ci4b"] +[ext_resource type="Script" uid="uid://umyqgyxjiaig" path="res://Scripts/Actors/ChestMarker.cs" id="8_ngj2q"] +[ext_resource type="Texture2D" uid="uid://qeh4ai8h6sw5" path="res://Sprites/Chest.png" id="9_2nite"] + +[sub_resource type="NavigationPolygon" id="NavigationPolygon_rlq0q"] +vertices = PackedVector2Array(474, 58, 474, 10, 486, 10, 486, 58, 794, 58, 794, 10, 806, 10, 806, 58, 934, 58, 934, 134, 806, 134, 794, 134, 806, 150, 794, 150, 486, 134, 474, 134, 486, 150, 474, 150, 166, 58, 166, 134, 166, 150, 154, 150, 154, 134, 154, 58, 26, 134, 26, 58, 166, 10, 154, 10) +polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(4, 5, 6, 7), PackedInt32Array(7, 8, 9, 10), PackedInt32Array(4, 7, 10, 11), PackedInt32Array(10, 12, 13, 11), PackedInt32Array(3, 4, 11, 14), PackedInt32Array(0, 3, 14, 15), PackedInt32Array(14, 16, 17, 15), PackedInt32Array(18, 0, 15, 19), PackedInt32Array(19, 20, 21, 22), PackedInt32Array(18, 19, 22, 23), PackedInt32Array(22, 24, 25, 23), PackedInt32Array(26, 18, 23, 27)]) +outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15, 49, 34)]) +parsed_collision_mask = 353 +source_geometry_mode = 1 + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_5bd7y"] +size = Vector2(909, 245) + +[sub_resource type="AtlasTexture" id="AtlasTexture_wvfe8"] +atlas = ExtResource("9_2nite") +region = Rect2(0, 0, 16, 16) + +[node name="Map" type="Node2D" node_paths=PackedStringArray("RoomClearActivation")] +process_mode = 1 +script = ExtResource("1_l3yeg") +RoomResource = ExtResource("2_l3yeg") +RoomClearActivation = [] + +[node name="Tilemaps" type="Node2D" parent="." groups=["navigation_polygon_source_geometry_group"]] + +[node name="Floor" type="TileMapLayer" parent="Tilemaps" node_paths=PackedStringArray("_solidLayers") groups=["Solid"]] +tile_map_data = PackedByteArray("AAAAAAIAAAALAAcAAAAAAAMAAAALAAcAAAAAAAQAAAALAAcAAAAAAAUAAAALAAcAAAAAAAYAAAALAAcAAAAAAAcAAAALAAcAAAAAAAgAAAALAAcAAAAAAAkAAAALAAcAAAABAAIAAAALAAcAAAABAAMAAAALAAcAAAABAAQAAAALAAcAAAABAAUAAAALAAcAAAABAAYAAAALAAcAAAABAAcAAAALAAcAAAABAAgAAAALAAcAAAABAAkAAAALAAcAAAACAAIAAAALAAcAAAACAAMAAAALAAcAAAACAAQAAAALAAcAAAACAAUAAAALAAcAAAACAAYAAAALAAcAAAACAAcAAAALAAcAAAACAAgAAAALAAcAAAACAAkAAAALAAcAAAADAAIAAAALAAcAAAADAAMAAAALAAcAAAADAAQAAAALAAcAAAADAAUAAAALAAcAAAADAAYAAAALAAcAAAADAAcAAAALAAcAAAADAAgAAAALAAcAAAADAAkAAAALAAcAAAAEAAIAAAALAAcAAAAEAAMAAAALAAcAAAAEAAQAAAALAAcAAAAEAAUAAAALAAcAAAAEAAYAAAALAAcAAAAEAAcAAAALAAcAAAAEAAgAAAALAAcAAAAEAAkAAAALAAcAAAAFAAIAAAALAAcAAAAFAAMAAAALAAcAAAAFAAQAAAALAAcAAAAFAAUAAAALAAcAAAAFAAYAAAALAAcAAAAFAAcAAAALAAcAAAAFAAgAAAALAAcAAAAFAAkAAAALAAcAAAAGAAIAAAALAAcAAAAGAAMAAAALAAcAAAAGAAQAAAALAAcAAAAGAAUAAAALAAcAAAAGAAYAAAALAAcAAAAGAAcAAAALAAcAAAAGAAgAAAALAAcAAAAGAAkAAAALAAcAAAAHAAIAAAALAAcAAAAHAAMAAAALAAcAAAAHAAQAAAALAAcAAAAHAAUAAAALAAcAAAAHAAYAAAALAAcAAAAHAAcAAAALAAcAAAAHAAgAAAALAAcAAAAHAAkAAAALAAcAAAAIAAIAAAALAAcAAAAIAAMAAAALAAcAAAAIAAQAAAALAAcAAAAIAAUAAAALAAcAAAAIAAYAAAALAAcAAAAIAAcAAAALAAcAAAAIAAgAAAALAAcAAAAIAAkAAAALAAcAAAAJAAIAAAALAAcAAAAJAAMAAAALAAcAAAAJAAQAAAALAAcAAAAJAAUAAAALAAcAAAAJAAYAAAALAAcAAAAJAAcAAAALAAcAAAAJAAgAAAALAAcAAAAJAAkAAAALAAcAAAAKAAIAAAALAAcAAAAKAAMAAAALAAcAAAAKAAQAAAALAAcAAAAKAAUAAAALAAcAAAAKAAYAAAALAAcAAAAKAAcAAAALAAcAAAAKAAgAAAALAAcAAAAKAAkAAAALAAcAAAALAAIAAAALAAcAAAALAAUAAAALAAcAAAALAAYAAAALAAcAAAALAAcAAAALAAcAAAALAAgAAAALAAcAAAALAAkAAAALAAcAAAAMAAIAAAALAAcAAAAMAAUAAAALAAcAAAAMAAYAAAALAAcAAAAMAAcAAAALAAcAAAAMAAgAAAALAAcAAAAMAAkAAAALAAcAAAANAAIAAAALAAcAAAANAAMAAAALAAcAAAANAAQAAAALAAcAAAANAAUAAAALAAcAAAANAAYAAAALAAcAAAANAAcAAAALAAcAAAANAAgAAAALAAcAAAANAAkAAAALAAcAAAAOAAIAAAALAAcAAAAOAAMAAAALAAcAAAAOAAQAAAALAAcAAAAOAAUAAAALAAcAAAAOAAYAAAALAAcAAAAOAAcAAAALAAcAAAAOAAgAAAALAAcAAAAOAAkAAAALAAcAAAAPAAIAAAALAAcAAAAPAAMAAAALAAcAAAAPAAQAAAALAAcAAAAPAAUAAAALAAcAAAAPAAYAAAALAAcAAAAPAAcAAAALAAcAAAAPAAgAAAALAAcAAAAPAAkAAAALAAcAAAAQAAIAAAALAAcAAAAQAAMAAAALAAcAAAAQAAQAAAALAAcAAAAQAAUAAAALAAcAAAAQAAYAAAALAAcAAAAQAAcAAAALAAcAAAAQAAgAAAALAAcAAAAQAAkAAAALAAcAAAARAAIAAAALAAcAAAARAAMAAAALAAcAAAARAAQAAAALAAcAAAARAAUAAAALAAcAAAARAAYAAAALAAcAAAARAAcAAAALAAcAAAARAAgAAAALAAcAAAARAAkAAAALAAcAAAASAAIAAAALAAcAAAASAAMAAAALAAcAAAASAAQAAAALAAcAAAASAAUAAAALAAcAAAASAAYAAAALAAcAAAASAAcAAAALAAcAAAASAAgAAAALAAcAAAASAAkAAAALAAcAAAATAAIAAAALAAcAAAATAAMAAAALAAcAAAATAAQAAAALAAcAAAATAAUAAAALAAcAAAATAAYAAAALAAcAAAATAAcAAAALAAcAAAATAAgAAAALAAcAAAATAAkAAAALAAcAAAAAAAAAAAALAAcAAAAAAAEAAAALAAcAAAABAAAAAAALAAcAAAABAAEAAAALAAcAAAACAAAAAAALAAcAAAACAAEAAAALAAcAAAADAAAAAAALAAcAAAADAAEAAAALAAcAAAAEAAAAAAALAAcAAAAEAAEAAAALAAcAAAAFAAAAAAALAAcAAAAFAAEAAAALAAcAAAAGAAAAAAALAAcAAAAGAAEAAAALAAcAAAAHAAAAAAALAAcAAAAHAAEAAAALAAcAAAAIAAAAAAALAAcAAAAIAAEAAAALAAcAAAAJAAAAAAALAAcAAAAJAAEAAAALAAcAAAAKAAAAAAALAAcAAAAKAAEAAAALAAcAAAALAAAAAAALAAcAAAALAAEAAAALAAcAAAALAAMAAAALAAcAAAALAAQAAAALAAcAAAAMAAAAAAALAAcAAAAMAAEAAAALAAcAAAAMAAMAAAALAAcAAAAMAAQAAAALAAcAAAANAAAAAAALAAcAAAANAAEAAAALAAcAAAAOAAAAAAALAAcAAAAOAAEAAAALAAcAAAAPAAAAAAALAAcAAAAPAAEAAAALAAcAAAAQAAAAAAALAAcAAAAQAAEAAAALAAcAAAARAAAAAAALAAcAAAARAAEAAAALAAcAAAASAAAAAAALAAcAAAASAAEAAAALAAcAAAATAAAAAAALAAcAAAATAAEAAAALAAcAAAAUAAAAAAALAAcAAAAUAAEAAAALAAcAAAAUAAIAAAALAAcAAAAUAAMAAAALAAcAAAAUAAQAAAALAAcAAAAUAAUAAAALAAcAAAAUAAYAAAALAAcAAAAUAAcAAAALAAcAAAAUAAgAAAALAAcAAAAUAAkAAAALAAcAAAAVAAAAAAALAAcAAAAVAAEAAAALAAcAAAAVAAIAAAALAAcAAAAVAAMAAAALAAcAAAAVAAQAAAALAAcAAAAVAAUAAAALAAcAAAAVAAYAAAALAAcAAAAVAAcAAAALAAcAAAAVAAgAAAALAAcAAAAVAAkAAAALAAcAAAAWAAAAAAALAAcAAAAWAAEAAAALAAcAAAAWAAIAAAALAAcAAAAWAAMAAAALAAcAAAAWAAQAAAALAAcAAAAWAAUAAAALAAcAAAAWAAYAAAALAAcAAAAWAAcAAAALAAcAAAAWAAgAAAALAAcAAAAWAAkAAAALAAcAAAAXAAAAAAALAAcAAAAXAAEAAAALAAcAAAAXAAIAAAALAAcAAAAXAAMAAAALAAcAAAAXAAQAAAALAAcAAAAXAAUAAAALAAcAAAAXAAYAAAALAAcAAAAXAAcAAAALAAcAAAAXAAgAAAALAAcAAAAXAAkAAAALAAcAAAAYAAAAAAALAAcAAAAYAAEAAAALAAcAAAAYAAIAAAALAAcAAAAYAAMAAAALAAcAAAAYAAQAAAALAAcAAAAYAAUAAAALAAcAAAAYAAYAAAALAAcAAAAYAAcAAAALAAcAAAAYAAgAAAALAAcAAAAYAAkAAAALAAcAAAAZAAAAAAALAAcAAAAZAAEAAAALAAcAAAAZAAIAAAALAAcAAAAZAAMAAAALAAcAAAAZAAQAAAALAAcAAAAZAAUAAAALAAcAAAAZAAYAAAALAAcAAAAZAAcAAAALAAcAAAAZAAgAAAALAAcAAAAZAAkAAAALAAcAAAAaAAAAAAALAAcAAAAaAAEAAAALAAcAAAAaAAIAAAALAAcAAAAaAAMAAAALAAcAAAAaAAQAAAALAAcAAAAaAAUAAAALAAcAAAAaAAYAAAALAAcAAAAaAAcAAAALAAcAAAAaAAgAAAALAAcAAAAaAAkAAAALAAcAAAAbAAAAAAALAAcAAAAbAAEAAAALAAcAAAAbAAIAAAALAAcAAAAbAAMAAAALAAcAAAAbAAQAAAALAAcAAAAbAAUAAAALAAcAAAAbAAYAAAALAAcAAAAbAAcAAAALAAcAAAAbAAgAAAALAAcAAAAbAAkAAAALAAcAAAAcAAAAAAALAAcAAAAcAAEAAAALAAcAAAAcAAIAAAALAAcAAAAcAAMAAAALAAcAAAAcAAQAAAALAAcAAAAcAAUAAAALAAcAAAAcAAYAAAALAAcAAAAcAAcAAAALAAcAAAAcAAgAAAALAAcAAAAcAAkAAAALAAcAAAAdAAAAAAALAAcAAAAdAAEAAAALAAcAAAAdAAIAAAALAAcAAAAdAAMAAAALAAcAAAAdAAQAAAALAAcAAAAdAAUAAAALAAcAAAAdAAYAAAALAAcAAAAdAAcAAAALAAcAAAAdAAgAAAALAAcAAAAdAAkAAAALAAcAAAAeAAAAAAALAAcAAAAeAAEAAAALAAcAAAAeAAIAAAALAAcAAAAeAAMAAAALAAcAAAAeAAQAAAALAAcAAAAeAAUAAAALAAcAAAAeAAYAAAALAAcAAAAeAAcAAAALAAcAAAAeAAgAAAALAAcAAAAeAAkAAAALAAcAAAAfAAAAAAALAAcAAAAfAAEAAAALAAcAAAAfAAIAAAALAAcAAAAfAAMAAAALAAcAAAAfAAQAAAALAAcAAAAfAAUAAAALAAcAAAAfAAYAAAALAAcAAAAfAAcAAAALAAcAAAAfAAgAAAALAAcAAAAfAAkAAAALAAcAAAAgAAAAAAALAAcAAAAgAAEAAAALAAcAAAAgAAIAAAALAAcAAAAgAAMAAAALAAcAAAAgAAQAAAALAAcAAAAgAAUAAAALAAcAAAAgAAYAAAALAAcAAAAgAAcAAAALAAcAAAAgAAgAAAALAAcAAAAgAAkAAAALAAcAAAAhAAAAAAALAAcAAAAhAAEAAAALAAcAAAAhAAIAAAALAAcAAAAhAAMAAAALAAcAAAAhAAQAAAALAAcAAAAhAAUAAAALAAcAAAAhAAYAAAALAAcAAAAhAAcAAAALAAcAAAAhAAgAAAALAAcAAAAhAAkAAAALAAcAAAAiAAAAAAALAAcAAAAiAAEAAAALAAcAAAAiAAIAAAALAAcAAAAiAAMAAAALAAcAAAAiAAQAAAALAAcAAAAiAAUAAAALAAcAAAAiAAYAAAALAAcAAAAiAAcAAAALAAcAAAAiAAgAAAALAAcAAAAiAAkAAAALAAcAAAAjAAAAAAALAAcAAAAjAAEAAAALAAcAAAAjAAIAAAALAAcAAAAjAAMAAAALAAcAAAAjAAQAAAALAAcAAAAjAAUAAAALAAcAAAAjAAYAAAALAAcAAAAjAAcAAAALAAcAAAAjAAgAAAALAAcAAAAjAAkAAAALAAcAAAAkAAAAAAALAAcAAAAkAAEAAAALAAcAAAAkAAIAAAALAAcAAAAkAAMAAAALAAcAAAAkAAQAAAALAAcAAAAkAAUAAAALAAcAAAAkAAYAAAALAAcAAAAkAAcAAAALAAcAAAAkAAgAAAALAAcAAAAkAAkAAAALAAcAAAAlAAAAAAALAAcAAAAlAAEAAAALAAcAAAAlAAIAAAALAAcAAAAlAAMAAAALAAcAAAAlAAQAAAALAAcAAAAlAAUAAAALAAcAAAAlAAYAAAALAAcAAAAlAAcAAAALAAcAAAAlAAgAAAALAAcAAAAlAAkAAAALAAcAAAAmAAAAAAALAAcAAAAmAAEAAAALAAcAAAAmAAIAAAALAAcAAAAmAAMAAAALAAcAAAAmAAQAAAALAAcAAAAmAAUAAAALAAcAAAAmAAYAAAALAAcAAAAmAAcAAAALAAcAAAAmAAgAAAALAAcAAAAmAAkAAAALAAcAAAAnAAAAAAALAAcAAAAnAAEAAAALAAcAAAAnAAIAAAALAAcAAAAnAAMAAAALAAcAAAAnAAQAAAALAAcAAAAnAAUAAAALAAcAAAAnAAYAAAALAAcAAAAnAAcAAAALAAcAAAAnAAgAAAALAAcAAAAnAAkAAAALAAcAAAAoAAAAAAALAAcAAAAoAAEAAAALAAcAAAAoAAIAAAALAAcAAAAoAAMAAAALAAcAAAAoAAQAAAALAAcAAAAoAAUAAAALAAcAAAAoAAYAAAALAAcAAAAoAAcAAAALAAcAAAAoAAgAAAALAAcAAAAoAAkAAAALAAcAAAApAAAAAAALAAcAAAApAAEAAAALAAcAAAApAAIAAAALAAcAAAApAAMAAAALAAcAAAApAAQAAAALAAcAAAApAAUAAAALAAcAAAApAAYAAAALAAcAAAApAAcAAAALAAcAAAApAAgAAAALAAcAAAApAAkAAAALAAcAAAAqAAAAAAALAAcAAAAqAAEAAAALAAcAAAAqAAIAAAALAAcAAAAqAAMAAAALAAcAAAAqAAQAAAALAAcAAAAqAAUAAAALAAcAAAAqAAYAAAALAAcAAAAqAAcAAAALAAcAAAAqAAgAAAALAAcAAAAqAAkAAAALAAcAAAArAAAAAAALAAcAAAArAAEAAAALAAcAAAArAAIAAAALAAcAAAArAAMAAAALAAcAAAArAAQAAAALAAcAAAArAAUAAAALAAcAAAArAAYAAAALAAcAAAArAAcAAAALAAcAAAArAAgAAAALAAcAAAArAAkAAAALAAcAAAAsAAAAAAALAAcAAAAsAAEAAAALAAcAAAAsAAIAAAALAAcAAAAsAAMAAAALAAcAAAAsAAQAAAALAAcAAAAsAAUAAAALAAcAAAAsAAYAAAALAAcAAAAsAAcAAAALAAcAAAAsAAgAAAALAAcAAAAsAAkAAAALAAcAAAAtAAAAAAALAAcAAAAtAAEAAAALAAcAAAAtAAIAAAALAAcAAAAtAAMAAAALAAcAAAAtAAQAAAALAAcAAAAtAAUAAAALAAcAAAAtAAYAAAALAAcAAAAtAAcAAAALAAcAAAAtAAgAAAALAAcAAAAtAAkAAAALAAcAAAAuAAAAAAALAAcAAAAuAAEAAAALAAcAAAAuAAIAAAALAAcAAAAuAAMAAAALAAcAAAAuAAQAAAALAAcAAAAuAAUAAAALAAcAAAAuAAYAAAALAAcAAAAuAAcAAAALAAcAAAAuAAgAAAALAAcAAAAuAAkAAAALAAcAAAAvAAAAAAALAAcAAAAvAAEAAAALAAcAAAAvAAIAAAALAAcAAAAvAAMAAAALAAcAAAAvAAQAAAALAAcAAAAvAAUAAAALAAcAAAAvAAYAAAALAAcAAAAvAAcAAAALAAcAAAAvAAgAAAALAAcAAAAvAAkAAAALAAcAAAAwAAAAAAALAAcAAAAwAAEAAAALAAcAAAAwAAIAAAALAAcAAAAwAAMAAAALAAcAAAAwAAQAAAALAAcAAAAwAAUAAAALAAcAAAAwAAYAAAALAAcAAAAwAAcAAAALAAcAAAAwAAgAAAALAAcAAAAwAAkAAAALAAcAAAAxAAAAAAALAAcAAAAxAAEAAAALAAcAAAAxAAIAAAALAAcAAAAxAAMAAAALAAcAAAAxAAQAAAALAAcAAAAxAAUAAAALAAcAAAAxAAYAAAALAAcAAAAxAAcAAAALAAcAAAAxAAgAAAALAAcAAAAxAAkAAAALAAcAAAAyAAAAAAALAAcAAAAyAAEAAAALAAcAAAAyAAIAAAALAAcAAAAyAAMAAAALAAcAAAAyAAQAAAALAAcAAAAyAAUAAAALAAcAAAAyAAYAAAALAAcAAAAyAAcAAAALAAcAAAAyAAgAAAALAAcAAAAyAAkAAAALAAcAAAAzAAAAAAALAAcAAAAzAAEAAAALAAcAAAAzAAIAAAALAAcAAAAzAAMAAAALAAcAAAAzAAQAAAALAAcAAAAzAAUAAAALAAcAAAAzAAYAAAALAAcAAAAzAAcAAAALAAcAAAAzAAgAAAALAAcAAAAzAAkAAAALAAcAAAA0AAAAAAALAAcAAAA0AAEAAAALAAcAAAA0AAIAAAALAAcAAAA0AAMAAAALAAcAAAA0AAQAAAALAAcAAAA0AAUAAAALAAcAAAA0AAYAAAALAAcAAAA0AAcAAAALAAcAAAA0AAgAAAALAAcAAAA0AAkAAAALAAcAAAA1AAAAAAALAAcAAAA1AAEAAAALAAcAAAA1AAIAAAALAAcAAAA1AAMAAAALAAcAAAA1AAQAAAALAAcAAAA1AAUAAAALAAcAAAA1AAYAAAALAAcAAAA1AAcAAAALAAcAAAA1AAgAAAALAAcAAAA1AAkAAAALAAcAAAA2AAAAAAALAAcAAAA2AAEAAAALAAcAAAA2AAIAAAALAAcAAAA2AAMAAAALAAcAAAA2AAQAAAALAAcAAAA2AAUAAAALAAcAAAA2AAYAAAALAAcAAAA2AAcAAAALAAcAAAA2AAgAAAALAAcAAAA2AAkAAAALAAcAAAA3AAAAAAALAAcAAAA3AAEAAAALAAcAAAA3AAIAAAALAAcAAAA3AAMAAAALAAcAAAA3AAQAAAALAAcAAAA3AAUAAAALAAcAAAA3AAYAAAALAAcAAAA3AAcAAAALAAcAAAA3AAgAAAALAAcAAAA3AAkAAAALAAcAAAA4AAAAAAALAAcAAAA4AAEAAAALAAcAAAA4AAIAAAALAAcAAAA4AAMAAAALAAcAAAA4AAQAAAALAAcAAAA4AAUAAAALAAcAAAA4AAYAAAALAAcAAAA4AAcAAAALAAcAAAA4AAgAAAALAAcAAAA4AAkAAAALAAcAAAA5AAAAAAALAAcAAAA5AAEAAAALAAcAAAA5AAIAAAALAAcAAAA5AAMAAAALAAcAAAA5AAQAAAALAAcAAAA5AAUAAAALAAcAAAA5AAYAAAALAAcAAAA5AAcAAAALAAcAAAA5AAgAAAALAAcAAAA5AAkAAAALAAcAAAA6AAAAAAALAAcAAAA6AAEAAAALAAcAAAA6AAIAAAALAAcAAAA6AAMAAAALAAcAAAA6AAQAAAALAAcAAAA6AAUAAAALAAcAAAA6AAYAAAALAAcAAAA6AAcAAAALAAcAAAA6AAgAAAALAAcAAAA6AAkAAAALAAcAAAA7AAAAAAALAAcAAAA7AAEAAAALAAcAAAA7AAIAAAALAAcAAAA7AAMAAAALAAcAAAA7AAQAAAALAAcAAAA7AAUAAAALAAcAAAA7AAYAAAALAAcAAAA7AAcAAAALAAcAAAA7AAgAAAALAAcAAAA7AAkAAAALAAcAAAAAAAoAAAALAAcAAAAAAAsAAAALAAcAAAAAAAwAAAALAAcAAAAAAA0AAAALAAcAAAAAAA4AAAALAAcAAAAAAA8AAAALAAcAAAAAABAAAAALAAcAAAAAABEAAAALAAcAAAAAABIAAAALAAcAAAAAABMAAAALAAcAAAABAAoAAAALAAcAAAABAAsAAAALAAcAAAABAAwAAAALAAcAAAABAA0AAAALAAcAAAABAA4AAAALAAcAAAABAA8AAAALAAcAAAABABAAAAALAAcAAAABABEAAAALAAcAAAABABIAAAALAAcAAAABABMAAAALAAcAAAACAAoAAAALAAcAAAACAAsAAAALAAcAAAACAAwAAAALAAcAAAACAA0AAAALAAcAAAACAA4AAAALAAcAAAACAA8AAAALAAcAAAACABAAAAALAAcAAAACABEAAAALAAcAAAACABIAAAALAAcAAAACABMAAAALAAcAAAADAAoAAAALAAcAAAADAAsAAAALAAcAAAADAAwAAAALAAcAAAADAA0AAAALAAcAAAADAA4AAAALAAcAAAADAA8AAAALAAcAAAADABAAAAALAAcAAAADABEAAAALAAcAAAADABIAAAALAAcAAAADABMAAAALAAcAAAAEAAoAAAALAAcAAAAEAAsAAAALAAcAAAAEAAwAAAALAAcAAAAEAA0AAAALAAcAAAAEAA4AAAALAAcAAAAEAA8AAAALAAcAAAAEABAAAAALAAcAAAAEABEAAAALAAcAAAAEABIAAAALAAcAAAAEABMAAAALAAcAAAAFAAoAAAALAAcAAAAFAAsAAAALAAcAAAAFAAwAAAALAAcAAAAFAA0AAAALAAcAAAAFAA4AAAALAAcAAAAFAA8AAAALAAcAAAAFABAAAAALAAcAAAAFABEAAAALAAcAAAAFABIAAAALAAcAAAAFABMAAAALAAcAAAAGAAoAAAALAAcAAAAGAAsAAAALAAcAAAAGAAwAAAALAAcAAAAGAA0AAAALAAcAAAAGAA4AAAALAAcAAAAGAA8AAAALAAcAAAAGABAAAAALAAcAAAAGABEAAAALAAcAAAAGABIAAAALAAcAAAAGABMAAAALAAcAAAAHAAoAAAALAAcAAAAHAAsAAAALAAcAAAAHAAwAAAALAAcAAAAHAA0AAAALAAcAAAAHAA4AAAALAAcAAAAHAA8AAAALAAcAAAAHABAAAAALAAcAAAAHABEAAAALAAcAAAAHABIAAAALAAcAAAAHABMAAAALAAcAAAAIAAoAAAALAAcAAAAIAAsAAAALAAcAAAAIAAwAAAALAAcAAAAIAA0AAAALAAcAAAAIAA4AAAALAAcAAAAIAA8AAAALAAcAAAAIABAAAAALAAcAAAAIABEAAAALAAcAAAAIABIAAAALAAcAAAAIABMAAAALAAcAAAAJAAoAAAALAAcAAAAJAAsAAAALAAcAAAAJAAwAAAALAAcAAAAJAA0AAAALAAcAAAAJAA4AAAALAAcAAAAJAA8AAAALAAcAAAAJABAAAAALAAcAAAAJABEAAAALAAcAAAAJABIAAAALAAcAAAAJABMAAAALAAcAAAAKAAoAAAALAAcAAAAKAAsAAAALAAcAAAAKAAwAAAALAAcAAAAKAA0AAAALAAcAAAAKAA4AAAALAAcAAAAKAA8AAAALAAcAAAAKABAAAAALAAcAAAAKABEAAAALAAcAAAAKABIAAAALAAcAAAAKABMAAAALAAcAAAALAAoAAAALAAcAAAALAAsAAAALAAcAAAALAAwAAAALAAcAAAALAA0AAAALAAcAAAALAA4AAAALAAcAAAALAA8AAAALAAcAAAALABAAAAALAAcAAAALABEAAAALAAcAAAALABIAAAALAAcAAAALABMAAAALAAcAAAAMAAoAAAALAAcAAAAMAAsAAAALAAcAAAAMAAwAAAALAAcAAAAMAA0AAAALAAcAAAAMAA4AAAALAAcAAAAMAA8AAAALAAcAAAAMABAAAAALAAcAAAAMABEAAAALAAcAAAAMABIAAAALAAcAAAAMABMAAAALAAcAAAANAAoAAAALAAcAAAANAAsAAAALAAcAAAANAAwAAAALAAcAAAANAA0AAAALAAcAAAANAA4AAAALAAcAAAANAA8AAAALAAcAAAANABAAAAALAAcAAAANABEAAAALAAcAAAANABIAAAALAAcAAAANABMAAAALAAcAAAAOAAoAAAALAAcAAAAOAAsAAAALAAcAAAAOAAwAAAALAAcAAAAOAA0AAAALAAcAAAAOAA4AAAALAAcAAAAOAA8AAAALAAcAAAAOABAAAAALAAcAAAAOABEAAAALAAcAAAAOABIAAAALAAcAAAAOABMAAAALAAcAAAAPAAoAAAALAAcAAAAPAAsAAAALAAcAAAAPAAwAAAALAAcAAAAPAA0AAAALAAcAAAAPAA4AAAALAAcAAAAPAA8AAAALAAcAAAAPABAAAAALAAcAAAAPABEAAAALAAcAAAAPABIAAAALAAcAAAAPABMAAAALAAcAAAAQAAoAAAALAAcAAAAQAAsAAAALAAcAAAAQAAwAAAALAAcAAAAQAA0AAAALAAcAAAAQAA4AAAALAAcAAAAQAA8AAAALAAcAAAAQABAAAAALAAcAAAAQABEAAAALAAcAAAAQABIAAAALAAcAAAAQABMAAAALAAcAAAARAAoAAAALAAcAAAARAAsAAAALAAcAAAARAAwAAAALAAcAAAARAA0AAAALAAcAAAARAA4AAAALAAcAAAARAA8AAAALAAcAAAARABAAAAALAAcAAAARABEAAAALAAcAAAARABIAAAALAAcAAAARABMAAAALAAcAAAASAAoAAAALAAcAAAASAAsAAAALAAcAAAASAAwAAAALAAcAAAASAA0AAAALAAcAAAASAA4AAAALAAcAAAASAA8AAAALAAcAAAASABAAAAALAAcAAAASABEAAAALAAcAAAASABIAAAALAAcAAAASABMAAAALAAcAAAATAAoAAAALAAcAAAATAAsAAAALAAcAAAATAAwAAAALAAcAAAATAA0AAAALAAcAAAATAA4AAAALAAcAAAATAA8AAAALAAcAAAATABAAAAALAAcAAAATABEAAAALAAcAAAATABIAAAALAAcAAAATABMAAAALAAcAAAAUAAoAAAALAAcAAAAUAAsAAAALAAcAAAAUAAwAAAALAAcAAAAUAA0AAAALAAcAAAAUAA4AAAALAAcAAAAUAA8AAAALAAcAAAAUABAAAAALAAcAAAAUABEAAAALAAcAAAAUABIAAAALAAcAAAAUABMAAAALAAcAAAAVAAoAAAALAAcAAAAVAAsAAAALAAcAAAAVAAwAAAALAAcAAAAVAA0AAAALAAcAAAAVAA4AAAALAAcAAAAVAA8AAAALAAcAAAAVABAAAAALAAcAAAAVABEAAAALAAcAAAAVABIAAAALAAcAAAAVABMAAAALAAcAAAAWAAoAAAALAAcAAAAWAAsAAAALAAcAAAAWAAwAAAALAAcAAAAWAA0AAAALAAcAAAAWAA4AAAALAAcAAAAWAA8AAAALAAcAAAAWABAAAAALAAcAAAAWABEAAAALAAcAAAAWABIAAAALAAcAAAAWABMAAAALAAcAAAAXAAoAAAALAAcAAAAXAAsAAAALAAcAAAAXAAwAAAALAAcAAAAXAA0AAAALAAcAAAAXAA4AAAALAAcAAAAXAA8AAAALAAcAAAAXABAAAAALAAcAAAAXABEAAAALAAcAAAAXABIAAAALAAcAAAAXABMAAAALAAcAAAAYAAoAAAALAAcAAAAYAAsAAAALAAcAAAAYAAwAAAALAAcAAAAYAA0AAAALAAcAAAAYAA4AAAALAAcAAAAYAA8AAAALAAcAAAAYABAAAAALAAcAAAAYABEAAAALAAcAAAAYABIAAAALAAcAAAAYABMAAAALAAcAAAAZAAoAAAALAAcAAAAZAAsAAAALAAcAAAAZAAwAAAALAAcAAAAZAA0AAAALAAcAAAAZAA4AAAALAAcAAAAZAA8AAAALAAcAAAAZABAAAAALAAcAAAAZABEAAAALAAcAAAAZABIAAAALAAcAAAAZABMAAAALAAcAAAAaAAoAAAALAAcAAAAaAAsAAAALAAcAAAAaAAwAAAALAAcAAAAaAA0AAAALAAcAAAAaAA4AAAALAAcAAAAaAA8AAAALAAcAAAAaABAAAAALAAcAAAAaABEAAAALAAcAAAAaABIAAAALAAcAAAAaABMAAAALAAcAAAAbAAoAAAALAAcAAAAbAAsAAAALAAcAAAAbAAwAAAALAAcAAAAbAA0AAAALAAcAAAAbAA4AAAALAAcAAAAbAA8AAAALAAcAAAAbABAAAAALAAcAAAAbABEAAAALAAcAAAAbABIAAAALAAcAAAAbABMAAAALAAcAAAAcAAoAAAALAAcAAAAcAAsAAAALAAcAAAAcAAwAAAALAAcAAAAcAA0AAAALAAcAAAAcAA4AAAALAAcAAAAcAA8AAAALAAcAAAAcABAAAAALAAcAAAAcABEAAAALAAcAAAAcABIAAAALAAcAAAAcABMAAAALAAcAAAAdAAoAAAALAAcAAAAdAAsAAAALAAcAAAAdAAwAAAALAAcAAAAdAA0AAAALAAcAAAAdAA4AAAALAAcAAAAdAA8AAAALAAcAAAAdABAAAAALAAcAAAAdABEAAAALAAcAAAAdABIAAAALAAcAAAAdABMAAAALAAcAAAAeAAoAAAALAAcAAAAeAAsAAAALAAcAAAAeAAwAAAALAAcAAAAeAA0AAAALAAcAAAAeAA4AAAALAAcAAAAeAA8AAAALAAcAAAAeABAAAAALAAcAAAAeABEAAAALAAcAAAAeABIAAAALAAcAAAAeABMAAAALAAcAAAAfAAoAAAALAAcAAAAfAAsAAAALAAcAAAAfAAwAAAALAAcAAAAfAA0AAAALAAcAAAAfAA4AAAALAAcAAAAfAA8AAAALAAcAAAAfABAAAAALAAcAAAAfABEAAAALAAcAAAAfABIAAAALAAcAAAAfABMAAAALAAcAAAAgAAoAAAALAAcAAAAgAAsAAAALAAcAAAAgAAwAAAALAAcAAAAgAA0AAAALAAcAAAAgAA4AAAALAAcAAAAgAA8AAAALAAcAAAAgABAAAAALAAcAAAAgABEAAAALAAcAAAAgABIAAAALAAcAAAAgABMAAAALAAcAAAAhAAoAAAALAAcAAAAhAAsAAAALAAcAAAAhAAwAAAALAAcAAAAhAA0AAAALAAcAAAAhAA4AAAALAAcAAAAhAA8AAAALAAcAAAAhABAAAAALAAcAAAAhABEAAAALAAcAAAAhABIAAAALAAcAAAAhABMAAAALAAcAAAAiAAoAAAALAAcAAAAiAAsAAAALAAcAAAAiAAwAAAALAAcAAAAiAA0AAAALAAcAAAAiAA4AAAALAAcAAAAiAA8AAAALAAcAAAAiABAAAAALAAcAAAAiABEAAAALAAcAAAAiABIAAAALAAcAAAAiABMAAAALAAcAAAAjAAoAAAALAAcAAAAjAAsAAAALAAcAAAAjAAwAAAALAAcAAAAjAA0AAAALAAcAAAAjAA4AAAALAAcAAAAjAA8AAAALAAcAAAAjABAAAAALAAcAAAAjABEAAAALAAcAAAAjABIAAAALAAcAAAAjABMAAAALAAcAAAAkAAoAAAALAAcAAAAkAAsAAAALAAcAAAAkAAwAAAALAAcAAAAkAA0AAAALAAcAAAAkAA4AAAALAAcAAAAkAA8AAAALAAcAAAAkABAAAAALAAcAAAAkABEAAAALAAcAAAAkABIAAAALAAcAAAAkABMAAAALAAcAAAAlAAoAAAALAAcAAAAlAAsAAAALAAcAAAAlAAwAAAALAAcAAAAlAA0AAAALAAcAAAAlAA4AAAALAAcAAAAlAA8AAAALAAcAAAAlABAAAAALAAcAAAAlABEAAAALAAcAAAAlABIAAAALAAcAAAAlABMAAAALAAcAAAAmAAoAAAALAAcAAAAmAAsAAAALAAcAAAAmAAwAAAALAAcAAAAmAA0AAAALAAcAAAAmAA4AAAALAAcAAAAmAA8AAAALAAcAAAAmABAAAAALAAcAAAAmABEAAAALAAcAAAAmABIAAAALAAcAAAAmABMAAAALAAcAAAAnAAoAAAALAAcAAAAnAAsAAAALAAcAAAAnAAwAAAALAAcAAAAnAA0AAAALAAcAAAAnAA4AAAALAAcAAAAnAA8AAAALAAcAAAAnABAAAAALAAcAAAAnABEAAAALAAcAAAAnABIAAAALAAcAAAAnABMAAAALAAcAAAAoAAoAAAALAAcAAAAoAAsAAAALAAcAAAAoAAwAAAALAAcAAAAoAA0AAAALAAcAAAAoAA4AAAALAAcAAAAoAA8AAAALAAcAAAAoABAAAAALAAcAAAAoABEAAAALAAcAAAAoABIAAAALAAcAAAAoABMAAAALAAcAAAApAAoAAAALAAcAAAApAAsAAAALAAcAAAApAAwAAAALAAcAAAApAA0AAAALAAcAAAApAA4AAAALAAcAAAApAA8AAAALAAcAAAApABAAAAALAAcAAAApABEAAAALAAcAAAApABIAAAALAAcAAAApABMAAAALAAcAAAAqAAoAAAALAAcAAAAqAAsAAAALAAcAAAAqAAwAAAALAAcAAAAqAA0AAAALAAcAAAAqAA4AAAALAAcAAAAqAA8AAAALAAcAAAAqABAAAAALAAcAAAAqABEAAAALAAcAAAAqABIAAAALAAcAAAAqABMAAAALAAcAAAArAAoAAAALAAcAAAArAAsAAAALAAcAAAArAAwAAAALAAcAAAArAA0AAAALAAcAAAArAA4AAAALAAcAAAArAA8AAAALAAcAAAArABAAAAALAAcAAAArABEAAAALAAcAAAArABIAAAALAAcAAAArABMAAAALAAcAAAAsAAoAAAALAAcAAAAsAAsAAAALAAcAAAAsAAwAAAALAAcAAAAsAA0AAAALAAcAAAAsAA4AAAALAAcAAAAsAA8AAAALAAcAAAAsABAAAAALAAcAAAAsABEAAAALAAcAAAAsABIAAAALAAcAAAAsABMAAAALAAcAAAAtAAoAAAALAAcAAAAtAAsAAAALAAcAAAAtAAwAAAALAAcAAAAtAA0AAAALAAcAAAAtAA4AAAALAAcAAAAtAA8AAAALAAcAAAAtABAAAAALAAcAAAAtABEAAAALAAcAAAAtABIAAAALAAcAAAAtABMAAAALAAcAAAAuAAoAAAALAAcAAAAuAAsAAAALAAcAAAAuAAwAAAALAAcAAAAuAA0AAAALAAcAAAAuAA4AAAALAAcAAAAuAA8AAAALAAcAAAAuABAAAAALAAcAAAAuABEAAAALAAcAAAAuABIAAAALAAcAAAAuABMAAAALAAcAAAAvAAoAAAALAAcAAAAvAAsAAAALAAcAAAAvAAwAAAALAAcAAAAvAA0AAAALAAcAAAAvAA4AAAALAAcAAAAvAA8AAAALAAcAAAAvABAAAAALAAcAAAAvABEAAAALAAcAAAAvABIAAAALAAcAAAAvABMAAAALAAcAAAAwAAoAAAALAAcAAAAwAAsAAAALAAcAAAAwAAwAAAALAAcAAAAwAA0AAAALAAcAAAAwAA4AAAALAAcAAAAwAA8AAAALAAcAAAAwABAAAAALAAcAAAAwABEAAAALAAcAAAAwABIAAAALAAcAAAAwABMAAAALAAcAAAAxAAoAAAALAAcAAAAxAAsAAAALAAcAAAAxAAwAAAALAAcAAAAxAA0AAAALAAcAAAAxAA4AAAALAAcAAAAxAA8AAAALAAcAAAAxABAAAAALAAcAAAAxABEAAAALAAcAAAAxABIAAAALAAcAAAAxABMAAAALAAcAAAAyAAoAAAALAAcAAAAyAAsAAAALAAcAAAAyAAwAAAALAAcAAAAyAA0AAAALAAcAAAAyAA4AAAALAAcAAAAyAA8AAAALAAcAAAAyABAAAAALAAcAAAAyABEAAAALAAcAAAAyABIAAAALAAcAAAAyABMAAAALAAcAAAAzAAoAAAALAAcAAAAzAAsAAAALAAcAAAAzAAwAAAALAAcAAAAzAA0AAAALAAcAAAAzAA4AAAALAAcAAAAzAA8AAAALAAcAAAAzABAAAAALAAcAAAAzABEAAAALAAcAAAAzABIAAAALAAcAAAAzABMAAAALAAcAAAA0AAoAAAALAAcAAAA0AAsAAAALAAcAAAA0AAwAAAALAAcAAAA0AA0AAAALAAcAAAA0AA4AAAALAAcAAAA0AA8AAAALAAcAAAA0ABAAAAALAAcAAAA0ABEAAAALAAcAAAA0ABIAAAALAAcAAAA0ABMAAAALAAcAAAA1AAoAAAALAAcAAAA1AAsAAAALAAcAAAA1AAwAAAALAAcAAAA1AA0AAAALAAcAAAA1AA4AAAALAAcAAAA1AA8AAAALAAcAAAA1ABAAAAALAAcAAAA1ABEAAAALAAcAAAA1ABIAAAALAAcAAAA1ABMAAAALAAcAAAA2AAoAAAALAAcAAAA2AAsAAAALAAcAAAA2AAwAAAALAAcAAAA2AA0AAAALAAcAAAA2AA4AAAALAAcAAAA2AA8AAAALAAcAAAA2ABAAAAALAAcAAAA2ABEAAAALAAcAAAA2ABIAAAALAAcAAAA2ABMAAAALAAcAAAA3AAoAAAALAAcAAAA3AAsAAAALAAcAAAA3AAwAAAALAAcAAAA3AA0AAAALAAcAAAA3AA4AAAALAAcAAAA3AA8AAAALAAcAAAA3ABAAAAALAAcAAAA3ABEAAAALAAcAAAA3ABIAAAALAAcAAAA3ABMAAAALAAcAAAA4AAoAAAALAAcAAAA4AAsAAAALAAcAAAA4AAwAAAALAAcAAAA4AA0AAAALAAcAAAA4AA4AAAALAAcAAAA4AA8AAAALAAcAAAA4ABAAAAALAAcAAAA4ABEAAAALAAcAAAA4ABIAAAALAAcAAAA4ABMAAAALAAcAAAA5AAoAAAALAAcAAAA5AAsAAAALAAcAAAA5AAwAAAALAAcAAAA5AA0AAAALAAcAAAA5AA4AAAALAAcAAAA5AA8AAAALAAcAAAA5ABAAAAALAAcAAAA5ABEAAAALAAcAAAA5ABIAAAALAAcAAAA5ABMAAAALAAcAAAA6AAoAAAALAAcAAAA6AAsAAAALAAcAAAA6AAwAAAALAAcAAAA6AA0AAAALAAcAAAA6AA4AAAALAAcAAAA6AA8AAAALAAcAAAA6ABAAAAALAAcAAAA6ABEAAAALAAcAAAA6ABIAAAALAAcAAAA6ABMAAAALAAcAAAA7AAoAAAALAAcAAAA7AAsAAAALAAcAAAA7AAwAAAALAAcAAAA7AA0AAAALAAcAAAA7AA4AAAALAAcAAAA7AA8AAAALAAcAAAA7ABAAAAALAAcAAAA7ABEAAAALAAcAAAA7ABIAAAALAAcAAAA7ABMAAAALAAcAAAA=") +tile_set = ExtResource("3_udqrd") +navigation_enabled = false +script = ExtResource("4_otlq5") +_solidLayers = [NodePath("../Solid"), NodePath("../Props")] +metadata/_edit_lock_ = true + +[node name="Solid" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]] +tile_map_data = PackedByteArray("AAATAAAAAAABAAsAAAASAAAAAAABAAQAAAARAAAAAAABAAQAAAAQAAAAAAABAAQAAAAPAAAAAAABAAQAAAAOAAAAAAABAAQAAAANAAAAAAABAAQAAAAMAAAAAAABAAQAAAALAAAAAAACAAQAAAAIAAAAAAADAAQAAAAHAAAAAAABAAQAAAAGAAAAAAABAAQAAAAFAAAAAAABAAQAAAAEAAAAAAABAAQAAAADAAAAAAABAAQAAAACAAAAAAABAAQAAAABAAAAAAABAAQAAAAAAAAAAAAAAAsAAAATAAIAAAAEAAQAAAATAAEAAAAAAAQAAAAAAAIAAAAEAAQAAAAAAAEAAAAAAAQAAAAAAAkAAAAAAAwAAAAAAAgAAAAAAAQAAAAAAAcAAAAAAAQAAAAAAAYAAAAFAAQAAAALAAEAAAAKAAgAAAALAAIAAAAKAAkAAAAMAAEAAAAKAAgAAAAMAAIAAAAKAAkAAAANAAEAAAAKAAgAAAANAAIAAAAKAAkAAAAOAAEAAAAKAAgAAAAOAAIAAAAKAAkAAAAPAAEAAAAKAAgAAAAPAAIAAAAKAAkAAAAQAAEAAAAKAAgAAAAQAAIAAAAKAAkAAAARAAEAAAAKAAgAAAARAAIAAAAKAAkAAAASAAEAAAAKAAgAAAASAAIAAAAKAAkAAAABAAEAAAAKAAgAAAABAAIAAAAKAAkAAAACAAEAAAAKAAgAAAACAAIAAAAKAAkAAAADAAEAAAAKAAgAAAADAAIAAAAKAAkAAAAEAAEAAAAKAAgAAAAEAAIAAAAKAAkAAAAFAAEAAAAKAAgAAAAFAAIAAAAKAAkAAAAGAAEAAAAKAAgAAAAGAAIAAAAKAAkAAAAHAAEAAAAKAAgAAAAHAAIAAAAKAAkAAAAIAAEAAAAKAAgAAAAIAAIAAAAKAAkAAAAAAAMAAAAKAAgAAAAAAAQAAAAKAAkAAAAUAAAAAAAAAAsAAAAUAAEAAAAAAAQAAAAUAAIAAAAEAAQAAAAVAAAAAAABAAQAAAAVAAEAAAAKAAgAAAAVAAIAAAAKAAkAAAAWAAAAAAABAAQAAAAWAAEAAAAKAAgAAAAWAAIAAAAKAAkAAAAXAAAAAAABAAQAAAAXAAEAAAAKAAgAAAAXAAIAAAAKAAkAAAAYAAAAAAABAAQAAAAYAAEAAAAKAAgAAAAYAAIAAAAKAAkAAAAZAAAAAAABAAQAAAAZAAEAAAAKAAgAAAAZAAIAAAAKAAkAAAAaAAAAAAABAAQAAAAaAAEAAAAKAAgAAAAaAAIAAAAKAAkAAAAbAAAAAAABAAQAAAAbAAEAAAAKAAgAAAAbAAIAAAAKAAkAAAAcAAAAAAADAAQAAAAcAAEAAAAKAAgAAAAcAAIAAAAKAAkAAAAfAAAAAAACAAQAAAAfAAEAAAAKAAgAAAAfAAIAAAAKAAkAAAAgAAAAAAABAAQAAAAgAAEAAAAKAAgAAAAgAAIAAAAKAAkAAAAhAAAAAAABAAQAAAAhAAEAAAAKAAgAAAAhAAIAAAAKAAkAAAAiAAAAAAABAAQAAAAiAAEAAAAKAAgAAAAiAAIAAAAKAAkAAAAjAAAAAAABAAQAAAAjAAEAAAAKAAgAAAAjAAIAAAAKAAkAAAAkAAAAAAABAAQAAAAkAAEAAAAKAAgAAAAkAAIAAAAKAAkAAAAlAAAAAAABAAQAAAAlAAEAAAAKAAgAAAAlAAIAAAAKAAkAAAAmAAAAAAABAAQAAAAmAAEAAAAKAAgAAAAmAAIAAAAKAAkAAAAnAAAAAAABAAsAAAAnAAEAAAAAAAQAAAAnAAIAAAAEAAQAAAAoAAAAAAAAAAsAAAAoAAEAAAAAAAQAAAAoAAIAAAAEAAQAAAApAAAAAAABAAQAAAApAAEAAAAKAAgAAAApAAIAAAAKAAkAAAAqAAAAAAABAAQAAAAqAAEAAAAKAAgAAAAqAAIAAAAKAAkAAAArAAAAAAABAAQAAAArAAEAAAAKAAgAAAArAAIAAAAKAAkAAAAsAAAAAAABAAQAAAAsAAEAAAAKAAgAAAAsAAIAAAAKAAkAAAAtAAAAAAABAAQAAAAtAAEAAAAKAAgAAAAtAAIAAAAKAAkAAAAuAAAAAAABAAQAAAAuAAEAAAAKAAgAAAAuAAIAAAAKAAkAAAAvAAAAAAABAAQAAAAvAAEAAAAKAAgAAAAvAAIAAAAKAAkAAAAwAAAAAAADAAQAAAAwAAEAAAAKAAgAAAAwAAIAAAAKAAkAAAAzAAAAAAACAAQAAAAzAAEAAAAKAAgAAAAzAAIAAAAKAAkAAAA0AAAAAAABAAQAAAA0AAEAAAAKAAgAAAA0AAIAAAAKAAkAAAA1AAAAAAABAAQAAAA1AAEAAAAKAAgAAAA1AAIAAAAKAAkAAAA2AAAAAAABAAQAAAA2AAEAAAAKAAgAAAA2AAIAAAAKAAkAAAA3AAAAAAABAAQAAAA3AAEAAAAKAAgAAAA3AAIAAAAKAAkAAAA4AAAAAAABAAQAAAA4AAEAAAAKAAgAAAA4AAIAAAAKAAkAAAA5AAAAAAABAAQAAAA5AAEAAAAKAAgAAAA5AAIAAAAKAAkAAAA6AAAAAAABAAQAAAA6AAEAAAAKAAgAAAA6AAIAAAAKAAkAAAA7AAAAAAABAAsAAAA7AAEAAAAAAAQAAAA7AAIAAAAEAAQAAAA7AAMAAAAKAAgAAAA7AAQAAAAKAAkAAAA7AAYAAAAFAAQAAAA7AAcAAAAAAAQAAAA7AAgAAAAAAAQAAAA7AAkAAAABAAwAAAAAAAoAAAAAAAsAAAAAAAsAAAAAAAQAAAAAAAwAAAAEAAQAAAAAAA0AAAAKAAgAAAAAAA4AAAAKAAkAAAAAABAAAAAFAAQAAAAAABEAAAAAAAQAAAAAABIAAAAAAAQAAAAAABMAAAAAAAwAAAABABMAAAABAAQAAAACABMAAAABAAQAAAADABMAAAABAAQAAAAEABMAAAABAAQAAAAFABMAAAABAAQAAAAGABMAAAABAAQAAAAHABMAAAABAAQAAAAIABMAAAADAAQAAAALABMAAAACAAQAAAAMABMAAAABAAQAAAANABMAAAABAAQAAAAOABMAAAABAAQAAAAPABMAAAABAAQAAAAQABMAAAABAAQAAAARABMAAAABAAQAAAASABMAAAABAAQAAAATABMAAAADAAQAAAAUABMAAAACAAQAAAAVABMAAAABAAQAAAAWABMAAAABAAQAAAAXABMAAAABAAQAAAAYABMAAAABAAQAAAAZABMAAAABAAQAAAAaABMAAAABAAQAAAAbABMAAAABAAQAAAAcABMAAAADAAQAAAAfABMAAAACAAQAAAAgABMAAAABAAQAAAAhABMAAAABAAQAAAAiABMAAAABAAQAAAAjABMAAAABAAQAAAAkABMAAAABAAQAAAAlABMAAAABAAQAAAAmABMAAAABAAQAAAAnABMAAAADAAQAAAAoABMAAAACAAQAAAApABMAAAABAAQAAAAqABMAAAABAAQAAAArABMAAAABAAQAAAAsABMAAAABAAQAAAAtABMAAAABAAQAAAAuABMAAAABAAQAAAAvABMAAAABAAQAAAAwABMAAAADAAQAAAAzABMAAAACAAQAAAA0ABMAAAABAAQAAAA1ABMAAAABAAQAAAA2ABMAAAABAAQAAAA3ABMAAAABAAQAAAA4ABMAAAABAAQAAAA5ABMAAAABAAQAAAA6ABMAAAABAAQAAAA7AAoAAAABAAsAAAA7AAsAAAAAAAQAAAA7AAwAAAAEAAQAAAA7AA0AAAAKAAgAAAA7AA4AAAAKAAkAAAA7ABAAAAAFAAQAAAA7ABEAAAAAAAQAAAA7ABIAAAAAAAQAAAA7ABMAAAABAAwAAAA=") +tile_set = ExtResource("3_udqrd") +navigation_enabled = false +metadata/_edit_lock_ = true + +[node name="Props" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]] +tile_set = ExtResource("3_udqrd") +navigation_enabled = false +metadata/_edit_lock_ = true + +[node name="Actors" type="Node2D" parent="Tilemaps"] +metadata/_edit_lock_ = true + +[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."] +visible = false +navigation_polygon = SubResource("NavigationPolygon_rlq0q") + +[node name="PlayerEnterDetector" type="Area2D" parent="."] +collision_layer = 0 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerEnterDetector"] +position = Vector2(480.5, 174.5) +shape = SubResource("RectangleShape2D_5bd7y") + +[node name="EnemySpawners" type="Node2D" parent="."] + +[node name="RogueliteEnemySpawner6" type="Marker2D" parent="EnemySpawners"] +position = Vector2(281, 102) +script = ExtResource("5_n4t0a") +Enemy = ExtResource("6_7lvyp") + +[node name="RogueliteEnemySpawner7" type="Marker2D" parent="EnemySpawners"] +position = Vector2(362, 94) +script = ExtResource("5_n4t0a") +Enemy = ExtResource("7_8ci4b") + +[node name="RogueliteEnemySpawner8" type="Marker2D" parent="EnemySpawners"] +position = Vector2(437, 119) +script = ExtResource("5_n4t0a") +Enemy = ExtResource("6_7lvyp") + +[node name="RogueliteEnemySpawner9" type="Marker2D" parent="EnemySpawners"] +position = Vector2(232, 60) +script = ExtResource("5_n4t0a") +Enemy = ExtResource("7_8ci4b") + +[node name="Features" type="Node2D" parent="."] + +[node name="Chest" type="Marker2D" parent="Features"] +position = Vector2(171, 80) +script = ExtResource("8_ngj2q") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest2" type="Marker2D" parent="Features"] +position = Vector2(314, 84) +script = ExtResource("8_ngj2q") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest4" type="Marker2D" parent="Features"] +position = Vector2(118, 137) +script = ExtResource("8_ngj2q") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest3" type="Marker2D" parent="Features"] +position = Vector2(81, 83) +script = ExtResource("8_ngj2q") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scenes/Maps/RogueliteMaps/LongSidePassage.tscn b/Scenes/Maps/RogueliteMaps/LongSidePassage.tscn index d8ac1d5f..6a11f968 100644 --- a/Scenes/Maps/RogueliteMaps/LongSidePassage.tscn +++ b/Scenes/Maps/RogueliteMaps/LongSidePassage.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=17 format=4 uid="uid://o2bbndsuqj28"] +[gd_scene load_steps=16 format=4 uid="uid://o2bbndsuqj28"] [ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_mfwx1"] [ext_resource type="Resource" uid="uid://fa7jvapga27y" path="res://Scenes/Maps/RogueliteMaps/LongSidePassage.tres" id="2_d1uiv"] @@ -7,7 +7,6 @@ [ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="5_oxby7"] [ext_resource type="PackedScene" uid="uid://bc64lr3vlwchq" path="res://Scenes/Door_Vertical.tscn" id="5_w63wm"] [ext_resource type="PackedScene" uid="uid://crph24e6e0v0q" path="res://Scenes/Interactable/Control_Pad.tscn" id="6_570qx"] -[ext_resource type="Resource" uid="uid://ysd6wl2gmdhn" path="res://Resources/Enemies/Turret360.tres" id="6_w63wm"] [ext_resource type="PackedScene" uid="uid://dcbcyp1qogcl0" path="res://Scenes/Props/BigTankHorizontal.tscn" id="7_570qx"] [ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="10_kagm8"] [ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="11_04mp4"] @@ -75,11 +74,6 @@ position = Vector2(255, 224) [node name="EnemySpawners" type="Node2D" parent="."] -[node name="RogueliteEnemySpawner6" type="Marker2D" parent="EnemySpawners"] -position = Vector2(174, 40) -script = ExtResource("5_oxby7") -Enemy = ExtResource("6_w63wm") - [node name="RogueliteEnemySpawner7" type="Marker2D" parent="EnemySpawners"] position = Vector2(169, 288) script = ExtResource("5_oxby7") diff --git a/Scenes/Maps/RogueliteMaps/RgLarge.tscn b/Scenes/Maps/RogueliteMaps/RgLarge.tscn index cce63fe0..33c3d3ab 100644 --- a/Scenes/Maps/RogueliteMaps/RgLarge.tscn +++ b/Scenes/Maps/RogueliteMaps/RgLarge.tscn @@ -1,9 +1,14 @@ -[gd_scene load_steps=7 format=4 uid="uid://c36nvk7cw3emg"] +[gd_scene load_steps=13 format=4 uid="uid://c36nvk7cw3emg"] [ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_5bd7y"] [ext_resource type="Resource" uid="uid://cjtcksew0qy6d" path="res://Resources/RogueliteMaps/TestRGMapLarge.tres" id="2_5bd7y"] [ext_resource type="TileSet" uid="uid://6k28roiljylj" path="res://Tilesets/factory_tileset.tres" id="5_2mndj"] +[ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="5_4pnhf"] [ext_resource type="Script" uid="uid://krean0uywtms" path="res://Scripts/TilemapAvoidance.cs" id="6_1dlui"] +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="6_1w61p"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="7_2mndj"] +[ext_resource type="Script" uid="uid://umyqgyxjiaig" path="res://Scripts/Actors/ChestMarker.cs" id="8_1dlui"] +[ext_resource type="Texture2D" uid="uid://qeh4ai8h6sw5" path="res://Sprites/Chest.png" id="9_d57gj"] [sub_resource type="NavigationPolygon" id="NavigationPolygon_rlq0q"] vertices = PackedVector2Array(474, 58, 474, 10, 486, 10, 486, 58, 794, 58, 794, 10, 806, 10, 806, 58, 934, 58, 934, 134, 806, 134, 794, 134, 806, 150, 794, 150, 486, 134, 474, 134, 486, 150, 474, 150, 166, 58, 166, 134, 166, 150, 154, 150, 154, 134, 154, 58, 26, 134, 26, 58, 166, 10, 154, 10) @@ -15,6 +20,10 @@ source_geometry_mode = 1 [sub_resource type="RectangleShape2D" id="RectangleShape2D_5bd7y"] size = Vector2(909, 85) +[sub_resource type="AtlasTexture" id="AtlasTexture_wvfe8"] +atlas = ExtResource("9_d57gj") +region = Rect2(0, 0, 16, 16) + [node name="Map" type="Node2D" node_paths=PackedStringArray("RoomClearActivation")] process_mode = 1 script = ExtResource("1_5bd7y") @@ -45,17 +54,6 @@ metadata/_edit_lock_ = true [node name="Actors" type="Node2D" parent="Tilemaps"] metadata/_edit_lock_ = true -[node name="EnemySpawners" type="Node2D" parent="."] - -[node name="RogueliteEnemySpawner" type="Marker2D" parent="EnemySpawners"] -position = Vector2(57, 67) - -[node name="RogueliteEnemySpawner2" type="Marker2D" parent="EnemySpawners"] -position = Vector2(373, 75) - -[node name="RogueliteEnemySpawner3" type="Marker2D" parent="EnemySpawners"] -position = Vector2(739, 101) - [node name="NavigationRegion2D" type="NavigationRegion2D" parent="."] visible = false navigation_polygon = SubResource("NavigationPolygon_rlq0q") @@ -69,4 +67,52 @@ collision_mask = 2 position = Vector2(480.5, 94.5) shape = SubResource("RectangleShape2D_5bd7y") +[node name="EnemySpawners" type="Node2D" parent="."] + +[node name="RogueliteEnemySpawner6" type="Marker2D" parent="EnemySpawners"] +position = Vector2(281, 102) +script = ExtResource("5_4pnhf") +Enemy = ExtResource("6_1w61p") + +[node name="RogueliteEnemySpawner7" type="Marker2D" parent="EnemySpawners"] +position = Vector2(362, 94) +script = ExtResource("5_4pnhf") +Enemy = ExtResource("7_2mndj") + +[node name="RogueliteEnemySpawner8" type="Marker2D" parent="EnemySpawners"] +position = Vector2(437, 119) +script = ExtResource("5_4pnhf") +Enemy = ExtResource("6_1w61p") + +[node name="RogueliteEnemySpawner9" type="Marker2D" parent="EnemySpawners"] +position = Vector2(232, 60) +script = ExtResource("5_4pnhf") +Enemy = ExtResource("7_2mndj") + +[node name="Features" type="Node2D" parent="."] + +[node name="Chest" type="Marker2D" parent="Features"] +position = Vector2(171, 80) +script = ExtResource("8_1dlui") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest2" type="Marker2D" parent="Features"] +position = Vector2(314, 84) +script = ExtResource("8_1dlui") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest4" type="Marker2D" parent="Features"] +position = Vector2(118, 137) +script = ExtResource("8_1dlui") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + +[node name="Chest3" type="Marker2D" parent="Features"] +position = Vector2(81, 83) +script = ExtResource("8_1dlui") +MarkerTexture = SubResource("AtlasTexture_wvfe8") +SpawnChance = 10.0 + [connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scenes/Maps/RogueliteMaps/RgLong.tscn b/Scenes/Maps/RogueliteMaps/RgLong.tscn index a8888606..ea874240 100644 --- a/Scenes/Maps/RogueliteMaps/RgLong.tscn +++ b/Scenes/Maps/RogueliteMaps/RgLong.tscn @@ -1,9 +1,13 @@ -[gd_scene load_steps=7 format=4 uid="uid://hmu4dw62c10t"] +[gd_scene load_steps=12 format=4 uid="uid://hmu4dw62c10t"] [ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_4lag8"] [ext_resource type="Resource" uid="uid://ryfk7g1wqypk" path="res://Resources/RogueliteMaps/TestRGMapLong.tres" id="2_4lag8"] +[ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="5_ehmby"] [ext_resource type="TileSet" uid="uid://6k28roiljylj" path="res://Tilesets/factory_tileset.tres" id="5_upf1e"] +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="6_112g0"] [ext_resource type="Script" uid="uid://krean0uywtms" path="res://Scripts/TilemapAvoidance.cs" id="6_kwstq"] +[ext_resource type="Script" uid="uid://umyqgyxjiaig" path="res://Scripts/Actors/ChestMarker.cs" id="7_wcv20"] +[ext_resource type="Texture2D" uid="uid://qeh4ai8h6sw5" path="res://Sprites/Chest.png" id="8_upf1e"] [sub_resource type="NavigationPolygon" id="NavigationPolygon_rlq0q"] vertices = PackedVector2Array(166, 58, 294, 58, 294, 294, 166, 294, 166, 310, 154, 310, 154, 294, 154, 58, 26, 294, 26, 58, 166, 10, 154, 10) @@ -15,10 +19,15 @@ source_geometry_mode = 1 [sub_resource type="RectangleShape2D" id="RectangleShape2D_4lag8"] size = Vector2(272, 247) -[node name="Map" type="Node2D"] +[sub_resource type="AtlasTexture" id="AtlasTexture_kwstq"] +atlas = ExtResource("8_upf1e") +region = Rect2(0, 0, 16, 16) + +[node name="Map" type="Node2D" node_paths=PackedStringArray("RoomClearActivation")] process_mode = 1 script = ExtResource("1_4lag8") RoomResource = ExtResource("2_4lag8") +RoomClearActivation = [] [node name="Tilemaps" type="Node2D" parent="." groups=["navigation_polygon_source_geometry_group"]] @@ -46,14 +55,10 @@ metadata/_edit_lock_ = true [node name="EnemySpawners" type="Node2D" parent="."] -[node name="RogueliteEnemySpawner" type="Marker2D" parent="EnemySpawners"] -position = Vector2(57, 67) - -[node name="RogueliteEnemySpawner2" type="Marker2D" parent="EnemySpawners"] -position = Vector2(82, 185) - -[node name="RogueliteEnemySpawner3" type="Marker2D" parent="EnemySpawners"] -position = Vector2(261, 248) +[node name="RogueliteEnemySpawner6" type="Marker2D" parent="EnemySpawners"] +position = Vector2(99, 118) +script = ExtResource("5_ehmby") +Enemy = ExtResource("6_112g0") [node name="NavigationRegion2D" type="NavigationRegion2D" parent="."] visible = false @@ -69,4 +74,24 @@ collision_mask = 2 position = Vector2(162, 175.5) shape = SubResource("RectangleShape2D_4lag8") +[node name="Features" type="Node2D" parent="."] + +[node name="Chest" type="Marker2D" parent="Features"] +position = Vector2(185, 136) +script = ExtResource("7_wcv20") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + +[node name="Chest2" type="Marker2D" parent="Features"] +position = Vector2(105, 55) +script = ExtResource("7_wcv20") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + +[node name="Chest3" type="Marker2D" parent="Features"] +position = Vector2(185, 56) +script = ExtResource("7_wcv20") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + [connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scenes/Maps/RogueliteMaps/corridor_1x2.tscn b/Scenes/Maps/RogueliteMaps/corridor_1x2.tscn new file mode 100644 index 00000000..0a8f4315 --- /dev/null +++ b/Scenes/Maps/RogueliteMaps/corridor_1x2.tscn @@ -0,0 +1,120 @@ +[gd_scene load_steps=13 format=4 uid="uid://cr8mtm0gfbpub"] + +[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_1yrmj"] +[ext_resource type="Resource" uid="uid://q1ugy8nvmvsd" path="res://Resources/RogueliteMaps/Corridor_1x2.tres" id="2_1yrmj"] +[ext_resource type="TileSet" uid="uid://6k28roiljylj" path="res://Tilesets/factory_tileset.tres" id="3_uulda"] +[ext_resource type="Script" uid="uid://krean0uywtms" path="res://Scripts/TilemapAvoidance.cs" id="4_uhnmd"] +[ext_resource type="Script" uid="uid://8umfjejbkcsm" path="res://Scripts/Actors/RogueliteEnemySpawner.cs" id="5_2gcep"] +[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="6_gwxu4"] +[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="7_e75fk"] +[ext_resource type="Script" uid="uid://umyqgyxjiaig" path="res://Scripts/Actors/ChestMarker.cs" id="7_k2por"] +[ext_resource type="Texture2D" uid="uid://qeh4ai8h6sw5" path="res://Sprites/Chest.png" id="8_o17h4"] + +[sub_resource type="NavigationPolygon" id="NavigationPolygon_rlq0q"] +vertices = PackedVector2Array(282, 234, 294, 58, 294, 278, 280, 278, 282, 70, 166, 58, 166, 70, 230, 234, 232, 246, 166, 234, 184, 234, 184, 244, 166, 294, 154, 294, 120, 278, 154, 234, 184, 278, 154, 70, 154, 58, 90, 166, 88, 166, 88, 150, 104, 148, 74, 150, 74, 148, 104, 138, 118, 138, 118, 166, 102, 166, 90, 234, 102, 234, 216, 244, 216, 234, 218, 234, 218, 166, 202, 166, 202, 148, 246, 148, 246, 166, 230, 166, 280, 294, 216, 294, 232, 280, 216, 280, 201, 246, 201, 278, 184, 294, 166, 310, 154, 310, 120, 294, 57, 278, 57, 294, 56, 294, 56, 278, 40, 278, 40, 262, 154, 10, 166, 10, 38, 70, 26, 58, 26, 262, 38, 234) +polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(1, 0, 4), PackedInt32Array(5, 1, 4, 6), PackedInt32Array(7, 0, 3, 8), PackedInt32Array(9, 10, 11), PackedInt32Array(12, 13, 14, 15, 9, 11, 16), PackedInt32Array(6, 9, 15, 17), PackedInt32Array(5, 6, 17, 18), PackedInt32Array(19, 20, 21, 22), PackedInt32Array(21, 23, 24, 22), PackedInt32Array(22, 25, 26, 27), PackedInt32Array(22, 27, 28), PackedInt32Array(19, 22, 28, 29), PackedInt32Array(29, 28, 30), PackedInt32Array(31, 32, 33), PackedInt32Array(34, 35, 36, 37), PackedInt32Array(37, 38, 39), PackedInt32Array(34, 37, 39), PackedInt32Array(33, 34, 39, 7), PackedInt32Array(3, 40, 41, 42), PackedInt32Array(41, 43, 42), PackedInt32Array(3, 42, 8), PackedInt32Array(44, 45, 16, 11), PackedInt32Array(16, 46, 12), PackedInt32Array(12, 47, 48, 13), PackedInt32Array(13, 49, 14), PackedInt32Array(50, 51, 52, 53), PackedInt32Array(53, 54, 55, 29), PackedInt32Array(18, 56, 57, 5), PackedInt32Array(18, 17, 58, 59), PackedInt32Array(60, 59, 58, 61), PackedInt32Array(55, 60, 61, 29), PackedInt32Array(50, 53, 29), PackedInt32Array(14, 50, 29, 30), PackedInt32Array(14, 30, 15), PackedInt32Array(44, 11, 31, 8), PackedInt32Array(7, 8, 31, 33)]) +outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15, 49, 34)]) +parsed_collision_mask = 353 +source_geometry_mode = 1 + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_4lag8"] +size = Vector2(272, 247) + +[sub_resource type="AtlasTexture" id="AtlasTexture_kwstq"] +atlas = ExtResource("8_o17h4") +region = Rect2(0, 0, 16, 16) + +[node name="Map" type="Node2D" node_paths=PackedStringArray("RoomClearActivation")] +process_mode = 1 +script = ExtResource("1_1yrmj") +RoomResource = ExtResource("2_1yrmj") +RoomClearActivation = [] + +[node name="Tilemaps" type="Node2D" parent="." groups=["navigation_polygon_source_geometry_group"]] + +[node name="Floor" type="TileMapLayer" parent="Tilemaps" node_paths=PackedStringArray("_solidLayers") groups=["Solid"]] +tile_map_data = PackedByteArray("AAAAAAIAAAALAAcAAAAAAAMAAAALAAcAAAAAAAQAAAALAAcAAAAAAAUAAAALAAcAAAAAAAYAAAALAAcAAAAAAAcAAAALAAcAAAAAAAgAAAALAAcAAAAAAAkAAAALAAcAAAABAAIAAAALAAcAAAABAAMAAAALAAcAAAABAAQAAAALAAcAAAABAAUAAAALAAcAAAABAAYAAAALAAcAAAABAAcAAAALAAcAAAABAAgAAAALAAcAAAABAAkAAAALAAcAAAACAAIAAAALAAcAAAACAAMAAAALAAcAAAACAAQAAAALAAcAAAACAAUAAAALAAcAAAACAAYAAAALAAcAAAACAAcAAAALAAcAAAACAAgAAAALAAcAAAACAAkAAAALAAcAAAADAAIAAAALAAcAAAADAAMAAAALAAcAAAADAAQAAAALAAcAAAADAAUAAAALAAcAAAADAAYAAAALAAcAAAADAAcAAAALAAcAAAADAAgAAAALAAcAAAADAAkAAAALAAcAAAAEAAIAAAALAAcAAAAEAAMAAAALAAcAAAAEAAQAAAALAAcAAAAEAAUAAAALAAcAAAAEAAYAAAALAAcAAAAEAAcAAAALAAcAAAAEAAgAAAALAAcAAAAEAAkAAAALAAcAAAAFAAIAAAALAAcAAAAFAAMAAAALAAcAAAAFAAQAAAALAAcAAAAFAAUAAAALAAcAAAAFAAYAAAALAAcAAAAFAAcAAAALAAcAAAAFAAkAAAALAAcAAAAGAAIAAAALAAcAAAAGAAMAAAALAAcAAAAGAAQAAAALAAcAAAAGAAUAAAALAAcAAAAGAAYAAAALAAcAAAAGAAcAAAALAAcAAAAGAAgAAAALAAcAAAAGAAkAAAALAAcAAAAHAAIAAAALAAcAAAAHAAMAAAALAAcAAAAHAAQAAAALAAcAAAAHAAUAAAALAAcAAAAHAAYAAAALAAcAAAAHAAcAAAALAAcAAAAHAAgAAAALAAcAAAAHAAkAAAALAAcAAAAIAAIAAAALAAcAAAAIAAMAAAALAAcAAAAIAAQAAAALAAcAAAAIAAUAAAALAAcAAAAIAAYAAAALAAcAAAAIAAcAAAALAAcAAAAIAAgAAAALAAcAAAAIAAkAAAALAAcAAAAJAAIAAAALAAcAAAAJAAMAAAALAAcAAAAJAAQAAAALAAcAAAAJAAUAAAALAAcAAAAJAAYAAAALAAcAAAAJAAcAAAALAAcAAAAJAAgAAAALAAcAAAAJAAkAAAALAAcAAAAKAAIAAAALAAcAAAAKAAMAAAALAAcAAAAKAAQAAAALAAcAAAAKAAUAAAALAAcAAAAKAAYAAAALAAcAAAAKAAcAAAALAAcAAAAKAAgAAAALAAcAAAAKAAkAAAALAAcAAAALAAIAAAALAAcAAAALAAUAAAALAAcAAAALAAYAAAALAAcAAAALAAcAAAALAAcAAAALAAgAAAALAAcAAAALAAkAAAALAAcAAAAMAAIAAAALAAcAAAAMAAUAAAALAAcAAAAMAAYAAAALAAcAAAAMAAcAAAALAAcAAAAMAAgAAAALAAcAAAAMAAkAAAALAAcAAAANAAIAAAALAAcAAAANAAMAAAALAAcAAAANAAQAAAALAAcAAAANAAUAAAALAAcAAAANAAYAAAALAAcAAAANAAcAAAALAAcAAAANAAkAAAALAAcAAAAOAAIAAAALAAcAAAAOAAMAAAALAAcAAAAOAAQAAAALAAcAAAAOAAUAAAALAAcAAAAOAAYAAAALAAcAAAAOAAcAAAALAAcAAAAOAAgAAAALAAcAAAAOAAkAAAALAAcAAAAPAAIAAAALAAcAAAAPAAMAAAALAAcAAAAPAAQAAAALAAcAAAAPAAUAAAALAAcAAAAPAAYAAAALAAcAAAAPAAcAAAALAAcAAAAPAAgAAAALAAcAAAAPAAkAAAALAAcAAAAQAAIAAAALAAcAAAAQAAMAAAALAAcAAAAQAAQAAAALAAcAAAAQAAUAAAALAAcAAAAQAAYAAAALAAcAAAAQAAcAAAALAAcAAAAQAAgAAAALAAcAAAAQAAkAAAALAAcAAAARAAIAAAALAAcAAAARAAMAAAALAAcAAAARAAQAAAALAAcAAAARAAUAAAALAAcAAAARAAYAAAALAAcAAAARAAcAAAALAAcAAAARAAgAAAALAAcAAAARAAkAAAALAAcAAAASAAIAAAALAAcAAAASAAMAAAALAAcAAAASAAQAAAALAAcAAAASAAUAAAALAAcAAAASAAYAAAALAAcAAAASAAcAAAALAAcAAAASAAgAAAALAAcAAAASAAkAAAALAAcAAAATAAIAAAALAAcAAAATAAMAAAALAAcAAAATAAQAAAALAAcAAAATAAUAAAALAAcAAAATAAYAAAALAAcAAAATAAcAAAALAAcAAAATAAgAAAALAAcAAAATAAkAAAALAAcAAAAAAAAAAAALAAcAAAAAAAEAAAALAAcAAAABAAAAAAALAAcAAAABAAEAAAALAAcAAAACAAAAAAALAAcAAAACAAEAAAALAAcAAAADAAAAAAALAAcAAAADAAEAAAALAAcAAAAEAAAAAAALAAcAAAAEAAEAAAALAAcAAAAFAAAAAAALAAcAAAAFAAEAAAALAAcAAAAGAAAAAAALAAcAAAAGAAEAAAALAAcAAAAHAAAAAAALAAcAAAAHAAEAAAALAAcAAAAIAAAAAAALAAcAAAAIAAEAAAALAAcAAAAJAAAAAAALAAcAAAAJAAEAAAALAAcAAAAKAAAAAAALAAcAAAAKAAEAAAALAAcAAAALAAAAAAALAAcAAAALAAEAAAALAAcAAAALAAMAAAALAAcAAAALAAQAAAALAAcAAAAMAAAAAAALAAcAAAAMAAEAAAALAAcAAAAMAAMAAAALAAcAAAAMAAQAAAALAAcAAAANAAAAAAALAAcAAAANAAEAAAALAAcAAAAOAAAAAAALAAcAAAAOAAEAAAALAAcAAAAPAAAAAAALAAcAAAAPAAEAAAALAAcAAAAQAAAAAAALAAcAAAAQAAEAAAALAAcAAAARAAAAAAALAAcAAAARAAEAAAALAAcAAAASAAAAAAALAAcAAAASAAEAAAALAAcAAAATAAAAAAALAAcAAAATAAEAAAALAAcAAAAAAAoAAAALAAcAAAAAAAsAAAALAAcAAAABAAoAAAALAAcAAAABAAsAAAALAAcAAAACAAoAAAALAAcAAAACAAsAAAALAAcAAAADAAoAAAALAAcAAAADAAsAAAALAAcAAAAEAAoAAAALAAcAAAAEAAsAAAALAAcAAAAAAAwAAAALAAcAAAAAAA0AAAALAAcAAAAAAA4AAAALAAcAAAAAAA8AAAALAAcAAAABAAwAAAALAAcAAAABAA0AAAALAAcAAAABAA4AAAALAAcAAAABAA8AAAALAAcAAAACAAwAAAALAAcAAAACAA0AAAALAAcAAAACAA4AAAALAAcAAAACAA8AAAALAAcAAAADAAwAAAALAAcAAAADAA0AAAALAAcAAAADAA4AAAALAAcAAAADAA8AAAALAAcAAAAEAAwAAAALAAcAAAAEAA0AAAALAAcAAAAEAA4AAAALAAcAAAAEAA8AAAALAAcAAAAAABAAAAALAAcAAAAAABEAAAALAAcAAAAAABIAAAALAAcAAAAAABMAAAALAAcAAAABABAAAAALAAcAAAABABEAAAALAAcAAAABABIAAAALAAcAAAABABMAAAALAAcAAAACABAAAAALAAcAAAACABEAAAALAAcAAAACABIAAAALAAcAAAACABMAAAALAAcAAAADABAAAAALAAcAAAADABEAAAALAAcAAAADABIAAAALAAcAAAADABMAAAALAAcAAAAEABAAAAALAAcAAAAEABEAAAALAAcAAAAEABIAAAALAAcAAAAEABMAAAALAAcAAAAFAAoAAAALAAcAAAAFAAsAAAALAAcAAAAGAAoAAAALAAcAAAAGAAsAAAALAAcAAAAHAAoAAAALAAcAAAAHAAsAAAALAAcAAAAIAAoAAAALAAcAAAAIAAsAAAALAAcAAAAJAAoAAAALAAcAAAAJAAsAAAALAAcAAAAKAAoAAAALAAcAAAAKAAsAAAALAAcAAAALAAoAAAALAAcAAAALAAsAAAALAAcAAAAMAAoAAAALAAcAAAAMAAsAAAALAAcAAAANAAoAAAALAAcAAAANAAsAAAALAAcAAAAOAAoAAAALAAcAAAAOAAsAAAALAAcAAAAPAAoAAAALAAcAAAAPAAsAAAALAAcAAAAQAAoAAAALAAcAAAAQAAsAAAALAAcAAAARAAoAAAALAAcAAAARAAsAAAALAAcAAAASAAoAAAALAAcAAAASAAsAAAALAAcAAAATAAoAAAALAAcAAAATAAsAAAALAAcAAAAFAAwAAAALAAcAAAAFAA0AAAALAAcAAAAFAA4AAAALAAcAAAAFAA8AAAALAAcAAAAGAAwAAAALAAcAAAAGAA0AAAALAAcAAAAGAA4AAAALAAcAAAAGAA8AAAALAAcAAAAHAAwAAAALAAcAAAAHAA0AAAALAAcAAAAHAA4AAAALAAcAAAAHAA8AAAALAAcAAAAIAAwAAAALAAcAAAAIAA0AAAALAAcAAAAIAA4AAAALAAcAAAAIAA8AAAALAAcAAAAJAAwAAAALAAcAAAAJAA0AAAALAAcAAAAJAA4AAAALAAcAAAAJAA8AAAALAAcAAAAKAAwAAAALAAcAAAAKAA0AAAALAAcAAAAKAA4AAAALAAcAAAAKAA8AAAALAAcAAAALAAwAAAALAAcAAAALAA0AAAALAAcAAAALAA4AAAALAAcAAAALAA8AAAALAAcAAAAMAAwAAAALAAcAAAAMAA0AAAALAAcAAAAMAA4AAAALAAcAAAAMAA8AAAALAAcAAAANAAwAAAALAAcAAAANAA0AAAALAAcAAAANAA4AAAALAAcAAAANAA8AAAALAAcAAAAOAAwAAAALAAcAAAAOAA0AAAALAAcAAAAOAA4AAAALAAcAAAAOAA8AAAALAAcAAAAPAAwAAAALAAcAAAAPAA0AAAALAAcAAAAPAA4AAAALAAcAAAAPAA8AAAALAAcAAAAQAAwAAAALAAcAAAAQAA0AAAALAAcAAAAQAA4AAAALAAcAAAAQAA8AAAALAAcAAAARAAwAAAALAAcAAAARAA0AAAALAAcAAAARAA4AAAALAAcAAAARAA8AAAALAAcAAAASAAwAAAALAAcAAAASAA0AAAALAAcAAAASAA4AAAALAAcAAAASAA8AAAALAAcAAAATAAwAAAALAAcAAAATAA0AAAALAAcAAAATAA4AAAALAAcAAAATAA8AAAALAAcAAAAFABAAAAALAAcAAAAFABEAAAALAAcAAAAFABIAAAALAAcAAAAFABMAAAALAAcAAAAGABAAAAALAAcAAAAGABEAAAALAAcAAAAGABIAAAALAAcAAAAGABMAAAALAAcAAAAHABAAAAALAAcAAAAHABEAAAALAAcAAAAHABIAAAALAAcAAAAHABMAAAALAAcAAAAIABAAAAALAAcAAAAIABEAAAALAAcAAAAIABIAAAALAAcAAAAIABMAAAALAAcAAAAJABAAAAALAAcAAAAJABEAAAALAAcAAAAJABIAAAALAAcAAAAJABMAAAALAAcAAAAKABAAAAALAAcAAAAKABEAAAALAAcAAAAKABIAAAALAAcAAAAKABMAAAALAAcAAAALABAAAAALAAcAAAALABEAAAALAAcAAAALABIAAAALAAcAAAALABMAAAALAAcAAAAMABEAAAALAAcAAAAMABIAAAALAAcAAAAMABMAAAALAAcAAAANABAAAAALAAcAAAANABEAAAALAAcAAAANABIAAAALAAcAAAANABMAAAALAAcAAAAOABAAAAALAAcAAAAOABEAAAALAAcAAAAOABIAAAALAAcAAAAOABMAAAALAAcAAAAPABAAAAALAAcAAAAPABEAAAALAAcAAAAPABIAAAALAAcAAAAPABMAAAALAAcAAAAQABAAAAALAAcAAAAQABEAAAALAAcAAAAQABIAAAALAAcAAAAQABMAAAALAAcAAAARABAAAAALAAcAAAARABEAAAALAAcAAAARABIAAAALAAcAAAARABMAAAALAAcAAAASABAAAAALAAcAAAASABEAAAALAAcAAAASABIAAAALAAcAAAASABMAAAALAAcAAAATABAAAAALAAcAAAATABEAAAALAAcAAAATABIAAAALAAcAAAATABMAAAALAAcAAAAFAAgAAAALAAcAAAAMABAAAAALAAcAAAANAAgAAAALAAcAAAA=") +tile_set = ExtResource("3_uulda") +navigation_enabled = false +script = ExtResource("4_uhnmd") +_solidLayers = [NodePath("../Solid"), NodePath("../Props")] +metadata/_edit_lock_ = true + +[node name="Solid" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]] +tile_map_data = PackedByteArray("AAATAAAAAAABAAsAAAASAAAAAAABAAQAAAARAAAAAAABAAQAAAAQAAAAAAABAAQAAAAPAAAAAAABAAQAAAAOAAAAAAABAAQAAAANAAAAAAABAAQAAAAMAAAAAAABAAQAAAALAAAAAAACAAQAAAAIAAAAAAADAAQAAAAHAAAAAAABAAQAAAAGAAAAAAABAAQAAAAFAAAAAAABAAQAAAAEAAAAAAABAAQAAAADAAAAAAABAAQAAAACAAAAAAABAAQAAAABAAAAAAABAAQAAAAAAAAAAAAAAAsAAAATAAIAAAAEAAQAAAATAAEAAAAAAAQAAAAAAAIAAAAEAAQAAAAAAAEAAAAAAAQAAAAAAAkAAAAEAAQAAAAAAAgAAAAAAAQAAAAAAAcAAAAAAAQAAAAAAAYAAAAFAAQAAAATAAkAAAAEAAQAAAATAAgAAAAAAAQAAAATAAcAAAAAAAQAAAATAAYAAAAFAAQAAAATAAMAAAAKAAgAAAATAAQAAAAKAAkAAAALAAEAAAAKAAgAAAALAAIAAAAKAAkAAAAMAAEAAAAKAAgAAAAMAAIAAAAKAAkAAAANAAEAAAAKAAgAAAANAAIAAAAKAAkAAAAOAAEAAAAKAAgAAAAOAAIAAAAKAAkAAAAPAAEAAAAKAAgAAAAPAAIAAAAKAAkAAAAQAAEAAAAKAAgAAAAQAAIAAAAKAAkAAAARAAEAAAAKAAgAAAARAAIAAAAKAAkAAAASAAEAAAAKAAgAAAASAAIAAAAKAAkAAAABAAEAAAAKAAgAAAABAAIAAAAKAAkAAAACAAEAAAAKAAgAAAACAAIAAAAKAAkAAAADAAEAAAAKAAgAAAADAAIAAAAKAAkAAAAEAAEAAAAKAAgAAAAEAAIAAAAKAAkAAAAFAAEAAAAKAAgAAAAFAAIAAAAKAAkAAAAGAAEAAAAKAAgAAAAGAAIAAAAKAAkAAAAHAAEAAAAKAAgAAAAHAAIAAAAKAAkAAAAIAAEAAAAKAAgAAAAIAAIAAAAKAAkAAAAAAAMAAAAKAAgAAAAAAAQAAAAKAAkAAAAAAAoAAAAFAAQAAAAAAAsAAAAAAAQAAAAAAAwAAAAEAAQAAAAAAA0AAAAKAAgAAAAAAA4AAAAKAAkAAAAAABAAAAAFAAQAAAAAABEAAAAAAAQAAAAAABIAAAAAAAQAAAAAABMAAAAAAAwAAAABABMAAAABAAQAAAACABMAAAABAAQAAAADABMAAAABAAQAAAAEABMAAAABAAQAAAAFABMAAAABAAQAAAAGABMAAAABAAQAAAAHABMAAAABAAQAAAAIABMAAAADAAQAAAALABMAAAACAAQAAAAMABMAAAABAAQAAAANABMAAAABAAQAAAAOABMAAAABAAQAAAAPABMAAAABAAQAAAAQABMAAAABAAQAAAARABMAAAABAAQAAAASABMAAAABAAQAAAATAAoAAAAFAAQAAAATAAsAAAAAAAQAAAATAAwAAAAEAAQAAAATAA0AAAAKAAgAAAATAA4AAAAKAAkAAAATABAAAAAFAAQAAAATABEAAAAAAAQAAAATABIAAAAAAAQAAAATABMAAAABAAwAAAADAAUAAAAAAAsAAAADAAYAAAAAAAQAAAADAAcAAAAAAAQAAAADAAgAAAAAAAQAAAAEAAUAAAABAAQAAAAFAAUAAAABAAQAAAAGAAUAAAABAAQAAAAHAAUAAAABAAQAAAAIAAUAAAABAAsAAAAIAAYAAAAAAAQAAAAIAAcAAAAAAAQAAAAIAAgAAAAAAAQAAAADAAkAAAAAAAQAAAAIAAkAAAAAAAQAAAAIAAoAAAAAAAQAAAADAAoAAAAAAAQAAAAEAAsAAAADAAQAAAADAAsAAAAAAAwAAAAHAAsAAAACAAQAAAAIAAsAAAABAAwAAAALAAUAAAAAAAsAAAALAAYAAAAAAAQAAAALAAcAAAAAAAQAAAALAAgAAAAAAAQAAAALAAkAAAAAAAQAAAALAAoAAAAAAAQAAAALAAsAAAAAAAwAAAAMAAsAAAADAAQAAAAMAAUAAAABAAQAAAANAAUAAAABAAQAAAAOAAUAAAABAAQAAAAPAAUAAAABAAQAAAAQAAUAAAABAAsAAAAQAAYAAAAAAAQAAAAQAAcAAAAAAAQAAAAQAAgAAAAAAAQAAAAQAAkAAAAAAAQAAAAQAAoAAAAAAAQAAAAQAAsAAAABAAwAAAAPAAsAAAACAAQAAAADAAwAAAAKAAgAAAADAA0AAAAKAAkAAAAEAAwAAAAKAAgAAAAEAA0AAAAKAAkAAAAHAAwAAAAKAAgAAAAHAA0AAAAKAAkAAAAIAAwAAAAKAAgAAAAIAA0AAAAKAAkAAAAHAAYAAAAKAAgAAAAHAAcAAAAKAAkAAAAGAAYAAAAKAAgAAAAGAAcAAAAKAAkAAAAFAAYAAAAKAAgAAAAFAAcAAAAKAAkAAAAEAAYAAAAKAAgAAAAEAAcAAAAKAAkAAAAMAAYAAAAKAAgAAAAMAAcAAAAKAAkAAAANAAYAAAAKAAgAAAANAAcAAAAKAAkAAAAOAAYAAAAKAAgAAAAOAAcAAAAKAAkAAAAPAAYAAAAKAAgAAAAPAAcAAAAKAAkAAAALAAwAAAAKAAgAAAALAA0AAAAKAAkAAAAMAAwAAAAKAAgAAAAMAA0AAAAKAAkAAAAPAAwAAAAKAAgAAAAPAA0AAAAKAAkAAAAQAAwAAAAKAAgAAAAQAA0AAAAKAAkAAAA=") +tile_set = ExtResource("3_uulda") +navigation_enabled = false +metadata/_edit_lock_ = true + +[node name="Props" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]] +tile_map_data = PackedByteArray("AAAGAAgAAQAAAAAAEQAFAAgAAQAAAAAADQANAAgAAQAAAAAADQAOAAgAAQAAAAAADQABABIAAQAAAAAADQACABIAAQAAAAAADQABABEAAQAAAAAADQASABIAAQAAAAAADQAGABIAAQAAAAAADgAMAA4AAQAAAAAADgAEABIAAQAAAAAAAQANABAAAQAAAAAAAQAEAAoAAQAAAAAAEAAMABIAAQAAAAAAEAALAAEAAAAJAAwAAAALAAIAAAAJAA0AAAALAAwAAAAJAAwAAAALAA0AAAAJAA0AAAAPAAwAAAAJAAwAAAAPAA0AAAAJAA0AAAAHAAwAAAAJAAwAAAAHAA0AAAAJAA0AAAAEAAwAAAAKAAwAAAAEAA0AAAAKAA0AAAAIAAEAAAAKAAwAAAAIAAIAAAAKAA0AAAAQAAwAAAAKAAwAAAAQAA0AAAAKAA0AAAAIAAwAAAAKAAwAAAAIAA0AAAAKAA0AAAADAAwAAAAJAAwAAAADAA0AAAAJAA0AAAAAAA0AAAAKAA4AAAAAAA4AAAAKAA8AAAAAAAMAAAAKAA4AAAAAAAQAAAAKAA8AAAATAA0AAAAKAA4AAAATAA4AAAAKAA8AAAATAAMAAAAKAA4AAAATAAQAAAAKAA8AAAA=") +tile_set = ExtResource("3_uulda") +navigation_enabled = false +metadata/_edit_lock_ = true + +[node name="Actors" type="Node2D" parent="Tilemaps"] +metadata/_edit_lock_ = true + +[node name="EnemySpawners" type="Node2D" parent="."] + +[node name="RogueliteEnemySpawner6" type="Marker2D" parent="EnemySpawners"] +position = Vector2(97, 266) +script = ExtResource("5_2gcep") +Enemy = ExtResource("6_gwxu4") + +[node name="RogueliteEnemySpawner7" type="Marker2D" parent="EnemySpawners"] +position = Vector2(158, 171) +script = ExtResource("5_2gcep") +Enemy = ExtResource("7_e75fk") + +[node name="RogueliteEnemySpawner8" type="Marker2D" parent="EnemySpawners"] +position = Vector2(253, 283) +script = ExtResource("5_2gcep") +Enemy = ExtResource("6_gwxu4") + +[node name="RogueliteEnemySpawner9" type="Marker2D" parent="EnemySpawners"] +position = Vector2(232, 60) +script = ExtResource("5_2gcep") +Enemy = ExtResource("7_e75fk") + +[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."] +visible = false +navigation_polygon = SubResource("NavigationPolygon_rlq0q") +use_edge_connections = false + +[node name="PlayerEnterDetector" type="Area2D" parent="."] +visible = false +collision_layer = 0 +collision_mask = 2 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerEnterDetector"] +position = Vector2(162, 175.5) +shape = SubResource("RectangleShape2D_4lag8") + +[node name="Features" type="Node2D" parent="."] + +[node name="Chest" type="Marker2D" parent="Features"] +position = Vector2(202, 138) +script = ExtResource("7_k2por") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + +[node name="Chest2" type="Marker2D" parent="Features"] +position = Vector2(247, 139) +script = ExtResource("7_k2por") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + +[node name="Chest4" type="Marker2D" parent="Features"] +position = Vector2(118, 137) +script = ExtResource("7_k2por") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + +[node name="Chest3" type="Marker2D" parent="Features"] +position = Vector2(73, 137) +script = ExtResource("7_k2por") +MarkerTexture = SubResource("AtlasTexture_kwstq") +SpawnChance = 10.0 + +[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"] diff --git a/Scripts/Activables/LevelTeleporter.cs b/Scripts/Activables/LevelTeleporter.cs index 2582d6fb..4b66bbd5 100644 --- a/Scripts/Activables/LevelTeleporter.cs +++ b/Scripts/Activables/LevelTeleporter.cs @@ -2,6 +2,7 @@ using System; using System.Collections; using System.Threading.Tasks; using Cirno.Scripts.Components.FSM; +using Cirno.Scripts.Enums; using Cirno.Scripts.Resources; using Godot; @@ -9,7 +10,7 @@ namespace Cirno.Scripts.Activables; public partial class LevelTeleporter : Teleporter { - [Export] public string LevelPath { get; private set; } + [Export] public string LevelPath { get; set; } [Export] public MapResource Map { get; private set; } [Export] public bool SaveInventory { get; private set; } @@ -38,6 +39,11 @@ public partial class LevelTeleporter : Teleporter if (!string.IsNullOrWhiteSpace(LevelPath)) { + if (GlobalState.Instance.SessionSettings.GameMode is GameMode.Roguelite) + { + GlobalState.Instance.SessionSettings.LevelNumber += 1; + } + GlobalState.Instance.GotoScene(LevelPath); } else diff --git a/Scripts/Actors/TeleporterMarker.cs b/Scripts/Actors/TeleporterMarker.cs index fc3eaac6..630f238d 100644 --- a/Scripts/Actors/TeleporterMarker.cs +++ b/Scripts/Actors/TeleporterMarker.cs @@ -41,9 +41,9 @@ public partial class TeleporterMarker : FeatureMarker if (Engine.IsEditorHint()) return null; if (_spawnedTeleporter is not null) return this; - _spawnedTeleporter = this.CreateSibling(mapTheme.TeleporterPrefab); + _spawnedTeleporter = this.CreateSibling(Type is TeleporterMarkerType.NextLevel ? mapTheme.LevelTeleporterPrefab : mapTheme.TeleporterPrefab); - if (Type is TeleporterMarkerType.Receiver or TeleporterMarkerType.Start) + if (Type is TeleporterMarkerType.Receiver or TeleporterMarkerType.Start or TeleporterMarkerType.NextLevel) { _spawnedTeleporter.IsEnabled = false; } @@ -52,11 +52,16 @@ public partial class TeleporterMarker : FeatureMarker _spawnedTeleporter.IsEnabled = true; } - if (Type is TeleporterMarkerType.InvisibleReceiver) + if (Type is TeleporterMarkerType.InvisibleReceiver or TeleporterMarkerType.NextLevel) { _spawnedTeleporter.Invisible = true; } + if (Type is TeleporterMarkerType.NextLevel && _spawnedTeleporter is LevelTeleporter levelTeleporter) + { + levelTeleporter.LevelPath = mapTheme.LevelTeleporterDestinationPath; + } + return this; } } diff --git a/Scripts/Controllers/RogueliteRoom.cs b/Scripts/Controllers/RogueliteRoom.cs index e78f91a1..35bbcf28 100644 --- a/Scripts/Controllers/RogueliteRoom.cs +++ b/Scripts/Controllers/RogueliteRoom.cs @@ -21,8 +21,8 @@ namespace Cirno.Scripts.Controllers; public partial class RogueliteRoom : Node2D { [Export] public RogueliteRoomResource RoomResource { get; set; } - - [Export] public Array RoomClearActivation { get; set; } + + [Export] public Array RoomClearActivation { get; set; } public RogueliteMapTheme MapTheme { get; set; } @@ -35,8 +35,9 @@ public partial class RogueliteRoom : Node2D public Vector2 RoomSize => BaseRoomSize * RoomResource.Size; - [Signal] public delegate void RoomClearedEventHandler(); - + [Signal] + public delegate void RoomClearedEventHandler(); + public Vector2I RandomBottomExit() { return BottomLeft + new Vector2I(GD.RandRange(0, RoomResource.Size.X - 1), 0); @@ -68,7 +69,7 @@ public partial class RogueliteRoom : Node2D private List _enemies = []; public List Teleporters { get; private set; } = []; - + private Array SpawnableEnemies => RoomResource.SpawnableEnemies; private BlackCover _shroud; @@ -224,15 +225,15 @@ public partial class RogueliteRoom : Node2D // Move marker based on direction var newMarkerPosition = marker.Direction switch { - DoorDirections.East => marker.GlobalPosition + new Vector2(-4,0), - DoorDirections.West => marker.GlobalPosition + new Vector2(-12,0), - DoorDirections.North => marker.GlobalPosition + new Vector2(0,0), - DoorDirections.South => marker.GlobalPosition + new Vector2(0,-2), + DoorDirections.East => marker.GlobalPosition + new Vector2(-4, 0), + DoorDirections.West => marker.GlobalPosition + new Vector2(-12, 0), + DoorDirections.North => marker.GlobalPosition + new Vector2(0, 0), + DoorDirections.South => marker.GlobalPosition + new Vector2(0, -2), _ => marker.GlobalPosition }; marker.GlobalPosition = newMarkerPosition; - + var wall = this.CreateChildOf(marker, marker.Direction switch { DoorDirections.North => MapTheme.HorizontalNorthWallPrefab, @@ -337,23 +338,22 @@ public partial class RogueliteRoom : Node2D double chance = chestMarker.OverrideChance ? chestMarker.SpawnChance : MapTheme.ChestChance; if (roll <= chance) { - var hasLoot = MapTheme.ChestLootQueue.TryDequeue(out var loot); if (!hasLoot) { GD.Print("Ran out of loot to spawn"); continue; } - + var chest = marker.CreateChild(MapTheme.ChestPrefab); - + chest.LootTable.Add(loot); } } else if (markerNode is TeleporterMarker teleporterMarker) { var tp = teleporterMarker.Spawn(MapTheme); - + MapTheme.TeleportersList.Add(tp); Teleporters.Add(tp); } @@ -368,10 +368,21 @@ public partial class RogueliteRoom : Node2D if (_enemies.Count == 0) { OpenDoors(); + EnableLevelExitTeleporter(); EmitSignalRoomCleared(); } } + private void EnableLevelExitTeleporter() + { + var teleporter = Teleporters.FirstOrDefault(x => x.Type is TeleporterMarkerType.NextLevel); + + if (teleporter is null) return; + + teleporter.SpawnedTeleporter.IsEnabled = true; + teleporter.SpawnedTeleporter.Invisible = false; + } + public void OpenDoors() { foreach (var connection in _connections) @@ -421,6 +432,8 @@ public partial class RogueliteRoom : Node2D if (_enemies.Count <= 0) { OpenDoors(); + // TODO: Just for testing + EnableLevelExitTeleporter(); } else { diff --git a/Scripts/Controllers/RogueliteRoomManager.cs b/Scripts/Controllers/RogueliteRoomManager.cs index 877e023e..7b316c15 100644 --- a/Scripts/Controllers/RogueliteRoomManager.cs +++ b/Scripts/Controllers/RogueliteRoomManager.cs @@ -59,6 +59,7 @@ public partial class RogueliteRoomManager : Node2D public void InitSpawning() { + GlobalState.Instance.SessionSettings.GameMode = GameMode.Roguelite; GenerateStraightLineDungeon(); } @@ -109,6 +110,7 @@ public partial class RogueliteRoomManager : Node2D rng.Dispose(); } + GD.Seed(_seed); GD.Print($"Seed: {_seed}"); } @@ -209,7 +211,7 @@ public partial class RogueliteRoomManager : Node2D if (!offshootsQueue.TryDequeue(out var offshootTypeToSpawn)) { - GD.Print("Ran out of offshoot types, add more"); + GD.Print("Ran out of offshoot types"); break; } @@ -240,14 +242,20 @@ public partial class RogueliteRoomManager : Node2D lockNext = true; } - if (offshootTypeToSpawn is RoomType.Key && - offshootsQueue.Peek() is RoomType.Key) + if (offshootTypeToSpawn is RoomType.Key) { + bool hasNextRoom = offshootsQueue.TryPeek(out var nextRoom); + if (!hasNextRoom || nextRoom is RoomType.Key) + // Stop if next room is a key break; } //break; } + else + { + offshootsQueue.Enqueue(offshootTypeToSpawn); + } } // Add more dungeon if not enough rooms are generated diff --git a/Scripts/Resources/RogueliteMapTheme.cs b/Scripts/Resources/RogueliteMapTheme.cs index f25b3b56..97b37f0c 100644 --- a/Scripts/Resources/RogueliteMapTheme.cs +++ b/Scripts/Resources/RogueliteMapTheme.cs @@ -33,6 +33,8 @@ public partial class RogueliteMapTheme : Resource [Export] public LootItem PointItemResource { get; set; } [Export] public PackedScene TeleporterPrefab { get; set; } + [Export] public PackedScene LevelTeleporterPrefab { get; set; } + [Export] public StringName LevelTeleporterDestinationPath { get; set; } [ExportGroup("Chances")]