New room and tiles

This commit is contained in:
Marco 2025-04-21 09:47:12 +02:00
commit 963901f098
5 changed files with 125 additions and 6 deletions

View file

@ -0,0 +1,18 @@
[gd_resource type="Resource" script_class="RogueliteRoomResource" load_steps=6 format=3 uid="uid://cc53bb6th33hi"]
[ext_resource type="Resource" uid="uid://cocl3qontm3be" path="res://Resources/Enemies/Base_Fairy.tres" id="1_qpd3i"]
[ext_resource type="Resource" uid="uid://cqfyuurvqb8m6" path="res://Resources/Enemies/Base_Fairy_Special.tres" id="2_wcax6"]
[ext_resource type="Resource" uid="uid://qbo6avc7x64b" path="res://Resources/Enemies/Fairy_Guard.tres" id="3_jwk05"]
[ext_resource type="Resource" uid="uid://cfdvg162u65sr" path="res://Resources/Enemies/Thermathron.tres" id="4_n80ev"]
[ext_resource type="Script" uid="uid://bl2ne8w12e3a" path="res://Scripts/Resources/Roguelite/RogueliteRoomResource.cs" id="5_6i0i5"]
[resource]
script = ExtResource("5_6i0i5")
RoomName = &"TestMapSmall"
Type = 1
ScenePath = &"uid://da7hmajaaiohm"
Size = Vector2i(1, 1)
DoorGridPositions = Array[Vector2i]([Vector2i(0, -1), Vector2i(0, 1), Vector2i(1, 0), Vector2i(-1, 0)])
SpawnableEnemies = Array[Object]([ExtResource("1_qpd3i"), ExtResource("2_wcax6"), ExtResource("3_jwk05"), ExtResource("4_n80ev")])
DoorDirections = 24
metadata/_custom_type_script = "uid://bl2ne8w12e3a"

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=23 format=3 uid="uid://bf1kqr3o6r6d4"]
[gd_scene load_steps=24 format=3 uid="uid://bf1kqr3o6r6d4"]
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_wbqvu"]
[ext_resource type="PackedScene" uid="uid://c4pr2707hbeph" path="res://Scenes/Actors/fsm_player.tscn" id="2_3fyis"]
@ -21,6 +21,7 @@
[ext_resource type="Resource" uid="uid://n6nb5yco60gi" path="res://Resources/RogueliteMaps/BigLarge.tres" id="13_y651a"]
[ext_resource type="Resource" uid="uid://do11fodskgasi" path="res://Resources/RogueliteMaps/RGTestRoom1.tres" id="14_vhvs2"]
[ext_resource type="Resource" uid="uid://cur433g6oevmd" path="res://Resources/RogueliteMaps/RGLongAcidWalk.tres" id="15_6gk3e"]
[ext_resource type="Resource" uid="uid://cc53bb6th33hi" path="res://Resources/RogueliteMaps/RGHorizontal1x1.tres" id="16_4gy5m"]
[ext_resource type="Script" uid="uid://3v6q0p5krqn7" path="res://Scripts/UI/Minimap.cs" id="16_pfafs"]
[node name="GameScene" type="Node2D"]
@ -36,9 +37,8 @@ SpawnMarkers = Dictionary[int, NodePath]({
process_mode = 1
y_sort_enabled = true
script = ExtResource("4_jtlua")
Rooms = Array[Object]([ExtResource("5_gwtv6"), ExtResource("6_gwtv6"), ExtResource("7_wbqvu"), ExtResource("8_3fyis"), ExtResource("9_go1yg"), ExtResource("5_pfafs"), ExtResource("11_68lig"), ExtResource("12_83bvc"), ExtResource("13_y651a"), ExtResource("14_vhvs2"), ExtResource("15_6gk3e")])
Rooms = Array[Object]([ExtResource("5_gwtv6"), ExtResource("6_gwtv6"), ExtResource("7_wbqvu"), ExtResource("8_3fyis"), ExtResource("9_go1yg"), ExtResource("5_pfafs"), ExtResource("11_68lig"), ExtResource("12_83bvc"), ExtResource("13_y651a"), ExtResource("14_vhvs2"), ExtResource("15_6gk3e"), ExtResource("16_4gy5m")])
DungeonLength = 4
Seed = 1
[node name="CameraController" type="Camera2D" parent="."]
process_mode = 1

View file

@ -0,0 +1,89 @@
[gd_scene load_steps=10 format=4 uid="uid://pym646ug0ha6"]
[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_y5eok"]
[ext_resource type="Resource" uid="uid://cc53bb6th33hi" path="res://Resources/RogueliteMaps/RGHorizontal1x1.tres" id="2_y5eok"]
[ext_resource type="PackedScene" uid="uid://l84on3kv2s52" path="res://Scenes/Door_Horizontal.tscn" id="3_kf55v"]
[ext_resource type="PackedScene" uid="uid://b0k2grrc8xp1l" path="res://Scenes/Props/BigTank.tscn" id="4_rxusd"]
[ext_resource type="TileSet" uid="uid://6k28roiljylj" path="res://Tilesets/factory_tileset.tres" id="5_0c8ec"]
[ext_resource type="Script" uid="uid://krean0uywtms" path="res://Scripts/TilemapAvoidance.cs" id="6_e2cwd"]
[ext_resource type="Script" uid="uid://ddry5kjj3fr6c" path="res://Scripts/Controllers/DoorMarker.cs" id="7_skhsf"]
[sub_resource type="NavigationPolygon" id="NavigationPolygon_rlq0q"]
vertices = PackedVector2Array(166, 58, 294, 58, 294, 134, 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(3, 4, 5, 6), PackedInt32Array(0, 3, 6, 7), PackedInt32Array(6, 8, 9, 7), PackedInt32Array(10, 0, 7, 11)])
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_rlq0q"]
size = Vector2(272, 85)
[node name="Map" type="Node2D"]
process_mode = 1
script = ExtResource("1_y5eok")
RoomResource = ExtResource("2_y5eok")
DoorPrefab = ExtResource("3_kf55v")
WallPrefab = ExtResource("4_rxusd")
[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("AAAAAAIAAAAPAAcAAAAAAAMAAAAPAAcAAAAAAAQAAAAPAAcAAAAAAAUAAAAPAAcAAAAAAAYAAAAPAAcAAAAAAAcAAAAPAAcAAAAAAAgAAAAPAAcAAAAAAAkAAAAPAAcAAAABAAIAAAAPAAcAAAABAAMAAAAPAAcAAAABAAQAAAAPAAcAAAABAAUAAAAPAAcAAAABAAYAAAAPAAcAAAABAAcAAAAPAAcAAAABAAgAAAAPAAcAAAABAAkAAAAPAAcAAAACAAIAAAAPAAcAAAACAAMAAAAPAAcAAAACAAQAAAAPAAcAAAACAAUAAAAPAAcAAAACAAYAAAAPAAcAAAACAAcAAAAPAAcAAAACAAgAAAAPAAcAAAACAAkAAAAPAAcAAAADAAIAAAAPAAcAAAADAAMAAAAPAAcAAAADAAQAAAAPAAcAAAADAAUAAAAPAAcAAAADAAYAAAAPAAcAAAADAAcAAAAPAAcAAAADAAgAAAAPAAcAAAADAAkAAAAPAAcAAAAEAAIAAAAPAAcAAAAEAAMAAAAPAAcAAAAEAAQAAAAPAAcAAAAEAAUAAAAPAAcAAAAEAAYAAAAPAAcAAAAEAAcAAAAPAAcAAAAEAAgAAAAPAAcAAAAEAAkAAAAPAAcAAAAFAAIAAAAPAAcAAAAFAAMAAAAPAAcAAAAFAAQAAAAPAAcAAAAFAAUAAAAPAAcAAAAFAAYAAAAPAAcAAAAFAAcAAAAPAAcAAAAFAAgAAAAPAAcAAAAFAAkAAAAPAAcAAAAGAAIAAAAPAAcAAAAGAAMAAAAPAAcAAAAGAAQAAAAPAAcAAAAGAAUAAAAPAAcAAAAGAAYAAAAPAAcAAAAGAAcAAAAPAAcAAAAGAAgAAAAPAAcAAAAGAAkAAAAPAAcAAAAHAAIAAAAPAAcAAAAHAAMAAAAPAAcAAAAHAAQAAAAPAAcAAAAHAAUAAAAPAAcAAAAHAAYAAAAPAAcAAAAHAAcAAAAPAAcAAAAHAAgAAAAPAAcAAAAHAAkAAAAPAAcAAAAIAAIAAAAPAAcAAAAIAAMAAAAPAAcAAAAIAAQAAAAPAAcAAAAIAAUAAAAPAAcAAAAIAAYAAAAPAAcAAAAIAAcAAAAPAAcAAAAIAAgAAAAPAAcAAAAIAAkAAAAPAAcAAAAJAAIAAAAPAAcAAAAJAAMAAAAPAAcAAAAJAAQAAAAPAAcAAAAJAAUAAAAPAAcAAAAJAAYAAAAPAAcAAAAJAAcAAAAPAAcAAAAJAAgAAAAPAAcAAAAJAAkAAAAPAAcAAAAKAAIAAAAPAAcAAAAKAAMAAAAPAAcAAAAKAAQAAAAPAAcAAAAKAAUAAAAPAAcAAAAKAAYAAAAPAAcAAAAKAAcAAAAPAAcAAAAKAAgAAAAPAAcAAAAKAAkAAAAPAAcAAAALAAIAAAAPAAcAAAALAAUAAAAPAAcAAAALAAYAAAAPAAcAAAALAAcAAAAPAAcAAAALAAgAAAAPAAcAAAALAAkAAAAPAAcAAAAMAAIAAAAPAAcAAAAMAAUAAAAPAAcAAAAMAAYAAAAPAAcAAAAMAAcAAAAPAAcAAAAMAAgAAAAPAAcAAAAMAAkAAAAPAAcAAAANAAIAAAAPAAcAAAANAAMAAAAPAAcAAAANAAQAAAAPAAcAAAANAAUAAAAPAAcAAAANAAYAAAAPAAcAAAANAAcAAAAPAAcAAAANAAgAAAAPAAcAAAANAAkAAAAPAAcAAAAOAAIAAAAPAAcAAAAOAAMAAAAPAAcAAAAOAAQAAAAPAAcAAAAOAAUAAAAPAAcAAAAOAAYAAAAPAAcAAAAOAAcAAAAPAAcAAAAOAAgAAAAPAAcAAAAOAAkAAAAPAAcAAAAPAAIAAAAPAAcAAAAPAAMAAAAPAAcAAAAPAAQAAAAPAAcAAAAPAAUAAAAPAAcAAAAPAAYAAAAPAAcAAAAPAAcAAAAPAAcAAAAPAAgAAAAPAAcAAAAPAAkAAAAPAAcAAAAQAAIAAAAPAAcAAAAQAAMAAAAPAAcAAAAQAAQAAAAPAAcAAAAQAAUAAAAPAAcAAAAQAAYAAAAPAAcAAAAQAAcAAAAPAAcAAAAQAAgAAAAPAAcAAAAQAAkAAAAPAAcAAAARAAIAAAAPAAcAAAARAAMAAAAPAAcAAAARAAQAAAAPAAcAAAARAAUAAAAPAAcAAAARAAYAAAAPAAcAAAARAAcAAAAPAAcAAAARAAgAAAAPAAcAAAARAAkAAAAPAAcAAAASAAIAAAAPAAcAAAASAAMAAAAPAAcAAAASAAQAAAAPAAcAAAASAAUAAAAPAAcAAAASAAYAAAAPAAcAAAASAAcAAAAPAAcAAAASAAgAAAAPAAcAAAASAAkAAAAPAAcAAAATAAIAAAAPAAcAAAATAAMAAAAPAAcAAAATAAQAAAAPAAcAAAATAAUAAAAPAAcAAAATAAYAAAAPAAcAAAATAAcAAAAPAAcAAAATAAgAAAAPAAcAAAATAAkAAAAPAAcAAAAAAAAAAAAPAAcAAAAAAAEAAAAPAAcAAAABAAAAAAAPAAcAAAABAAEAAAAPAAcAAAACAAAAAAAPAAcAAAACAAEAAAAPAAcAAAADAAAAAAAPAAcAAAADAAEAAAAPAAcAAAAEAAAAAAAPAAcAAAAEAAEAAAAPAAcAAAAFAAAAAAAPAAcAAAAFAAEAAAAPAAcAAAAGAAAAAAAPAAcAAAAGAAEAAAAPAAcAAAAHAAAAAAAPAAcAAAAHAAEAAAAPAAcAAAAIAAAAAAAPAAcAAAAIAAEAAAAPAAcAAAAJAAAAAAAPAAcAAAAJAAEAAAAPAAcAAAAKAAAAAAAPAAcAAAAKAAEAAAAPAAcAAAALAAAAAAAPAAcAAAALAAEAAAAPAAcAAAALAAMAAAAPAAcAAAALAAQAAAAPAAcAAAAMAAAAAAAPAAcAAAAMAAEAAAAPAAcAAAAMAAMAAAAPAAcAAAAMAAQAAAAPAAcAAAANAAAAAAAPAAcAAAANAAEAAAAPAAcAAAAOAAAAAAAPAAcAAAAOAAEAAAAPAAcAAAAPAAAAAAAPAAcAAAAPAAEAAAAPAAcAAAAQAAAAAAAPAAcAAAAQAAEAAAAPAAcAAAARAAAAAAAPAAcAAAARAAEAAAAPAAcAAAASAAAAAAAPAAcAAAASAAEAAAAPAAcAAAATAAAAAAAPAAcAAAATAAEAAAAPAAcAAAA=")
tile_set = ExtResource("5_0c8ec")
navigation_enabled = false
script = ExtResource("6_e2cwd")
_solidLayers = [NodePath("../Solid"), NodePath("../Props")]
metadata/_edit_lock_ = true
[node name="Solid" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]]
tile_map_data = PackedByteArray("AAATAAAAAAABAAsAAAASAAAAAAABAAQAAAARAAAAAAABAAQAAAAQAAAAAAABAAQAAAAPAAAAAAABAAQAAAAOAAAAAAABAAQAAAANAAAAAAABAAQAAAAMAAAAAAABAAQAAAALAAAAAAABAAQAAAAIAAAAAAABAAQAAAAHAAAAAAABAAQAAAAGAAAAAAABAAQAAAAFAAAAAAABAAQAAAAEAAAAAAABAAQAAAADAAAAAAABAAQAAAACAAAAAAABAAQAAAABAAAAAAABAAQAAAAAAAAAAAAAAAsAAAATAAIAAAAEAAQAAAATAAEAAAAAAAQAAAAAAAIAAAAEAAQAAAAAAAEAAAAAAAQAAAAAAAkAAAAAAAwAAAAAAAgAAAAAAAQAAAAAAAcAAAAAAAQAAAAAAAYAAAAFAAQAAAATAAkAAAABAAwAAAASAAkAAAABAAQAAAARAAkAAAABAAQAAAAQAAkAAAABAAQAAAAPAAkAAAABAAQAAAAOAAkAAAABAAQAAAANAAkAAAABAAQAAAAMAAkAAAABAAQAAAALAAkAAAABAAQAAAAIAAkAAAABAAQAAAAHAAkAAAABAAQAAAAGAAkAAAABAAQAAAAFAAkAAAABAAQAAAAEAAkAAAABAAQAAAADAAkAAAABAAQAAAACAAkAAAABAAQAAAABAAkAAAABAAQAAAATAAgAAAAAAAQAAAATAAcAAAAAAAQAAAATAAYAAAAFAAQAAAATAAMAAAAPAAUAAAATAAQAAAAPAAYAAAALAAEAAAAPAAUAAAALAAIAAAAPAAYAAAAMAAEAAAAPAAUAAAAMAAIAAAAPAAYAAAANAAEAAAAPAAUAAAANAAIAAAAPAAYAAAAOAAEAAAAPAAUAAAAOAAIAAAAPAAYAAAAPAAEAAAAPAAUAAAAPAAIAAAAPAAYAAAAQAAEAAAAPAAUAAAAQAAIAAAAPAAYAAAARAAEAAAAPAAUAAAARAAIAAAAPAAYAAAASAAEAAAAPAAUAAAASAAIAAAAPAAYAAAABAAEAAAAPAAUAAAABAAIAAAAPAAYAAAACAAEAAAAPAAUAAAACAAIAAAAPAAYAAAADAAEAAAAPAAUAAAADAAIAAAAPAAYAAAAEAAEAAAAPAAUAAAAEAAIAAAAPAAYAAAAFAAEAAAAPAAUAAAAFAAIAAAAPAAYAAAAGAAEAAAAPAAUAAAAGAAIAAAAPAAYAAAAHAAEAAAAPAAUAAAAHAAIAAAAPAAYAAAAIAAEAAAAPAAUAAAAIAAIAAAAPAAYAAAAAAAMAAAAPAAUAAAAAAAQAAAAPAAYAAAAJAAEAAAAPAAUAAAAJAAIAAAAPAAYAAAAKAAEAAAAPAAUAAAAKAAIAAAAPAAYAAAAJAAAAAAABAAQAAAAKAAAAAAABAAQAAAAJAAkAAAABAAQAAAAKAAkAAAABAAQAAAA=")
tile_set = ExtResource("5_0c8ec")
navigation_enabled = false
metadata/_edit_lock_ = true
[node name="Props" type="TileMapLayer" parent="Tilemaps" groups=["Solid"]]
tile_map_data = PackedByteArray("AAATAAQAAAAKAA8AAAATAAMAAAAKAA4AAAAAAAMAAAAKAA4AAAAAAAQAAAAKAA8AAAANAAEAAAAPAAAAAAANAAIAAAAPAAEAAAAOAAEAAAAQAAAAAAAOAAIAAAAQAAEAAAAPAAEAAAARAAAAAAAPAAIAAAARAAEAAAACAAEAAAAPAAAAAAACAAIAAAAPAAEAAAADAAEAAAAQAAAAAAADAAIAAAAQAAEAAAAEAAEAAAARAAAAAAAEAAIAAAARAAEAAAA=")
tile_set = ExtResource("5_0c8ec")
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="RogueliteEnemySpawner" type="Marker2D" parent="EnemySpawners"]
position = Vector2(57, 67)
[node name="RogueliteEnemySpawner2" type="Marker2D" parent="EnemySpawners"]
position = Vector2(88, 126)
[node name="RogueliteEnemySpawner3" type="Marker2D" parent="EnemySpawners"]
position = Vector2(266, 122)
[node name="Doors" type="Node2D" parent="."]
[node name="East" type="Marker2D" parent="Doors"]
position = Vector2(312, 87)
script = ExtResource("7_skhsf")
Direction = 2
[node name="West" type="Marker2D" parent="Doors"]
position = Vector2(8.1806, 87.7693)
script = ExtResource("7_skhsf")
Direction = 3
[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(162, 94.5)
shape = SubResource("RectangleShape2D_rlq0q")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

BIN
Tilesets/factory.png (Stored with Git LFS)

Binary file not shown.

View file

@ -1,4 +1,4 @@
[gd_resource type="TileSet" load_steps=62 format=3 uid="uid://6k28roiljylj"]
[gd_resource type="TileSet" load_steps=63 format=3 uid="uid://6k28roiljylj"]
[ext_resource type="Texture2D" uid="uid://bty7p61v46chx" path="res://Resources/Textures/Tilemap_Canvas.tres" id="1_u4jco"]
[ext_resource type="PackedScene" uid="uid://bj28qiai2x2ar" path="res://Scenes/Props/Barrel.tscn" id="2_cxg4b"]
@ -96,6 +96,12 @@ polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
agent_radius = 0.0
[sub_resource type="NavigationPolygon" id="NavigationPolygon_hfdld"]
vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
outlines = Array[PackedVector2Array]([PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)])
agent_radius = 0.0
[sub_resource type="NavigationPolygon" id="NavigationPolygon_ipvrl"]
vertices = PackedVector2Array(8, 8, -8, 8, -8, -8, 8, -8)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
@ -1226,6 +1232,12 @@ texture = ExtResource("1_u4jco")
15:2/0 = 0
15:2/0/physics_layer_1/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
16:2/0 = 0
15:5/0 = 0
15:5/0/physics_layer_1/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
15:6/0 = 0
15:6/0/physics_layer_1/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
15:7/0 = 0
15:7/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_hfdld")
[sub_resource type="TileSetScenesCollectionSource" id="TileSetScenesCollectionSource_qg3vu"]
resource_name = "Props"