Player detection for rooms

This commit is contained in:
Marco 2025-04-17 17:42:24 +02:00
commit 1b31428752
7 changed files with 87 additions and 7 deletions

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=4 uid="uid://da7hmajaaiohm"]
[gd_scene load_steps=10 format=4 uid="uid://da7hmajaaiohm"]
[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_dm6kf"]
[ext_resource type="Resource" uid="uid://b5x83li01qrav" path="res://Resources/RogueliteMaps/TestRGMap.tres" id="2_5s4nm"]
@ -15,6 +15,9 @@ outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15,
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_dm6kf")
@ -80,3 +83,13 @@ Direction = 3
[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."]
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(162, 94.5)
shape = SubResource("RectangleShape2D_rlq0q")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=10 format=4 uid="uid://dngwjgs5bhnx7"]
[gd_scene load_steps=11 format=4 uid="uid://dngwjgs5bhnx7"]
[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_xsqjb"]
[ext_resource type="Resource" uid="uid://bv0mr43vcfrdh" path="res://Resources/RogueliteMaps/BigMap.tres" id="2_xsqjb"]
@ -16,6 +16,9 @@ outlines = Array[PackedVector2Array]([PackedVector2Array(32, 42, 30, 31, 62, 27,
parsed_collision_mask = 353
source_geometry_mode = 1
[sub_resource type="RectangleShape2D" id="RectangleShape2D_cgxuy"]
size = Vector2(588, 243)
[node name="Map" type="Node2D"]
process_mode = 1
script = ExtResource("1_xsqjb")
@ -125,3 +128,13 @@ position = Vector2(288, 184)
[node name="BigTank4" parent="." instance=ExtResource("8_tyndx")]
position = Vector2(352, 184)
[node name="PlayerEnterDetector" type="Area2D" parent="."]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerEnterDetector"]
position = Vector2(320, 173.5)
shape = SubResource("RectangleShape2D_cgxuy")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=4 uid="uid://c3x64n451f3mk"]
[gd_scene load_steps=10 format=4 uid="uid://c3x64n451f3mk"]
[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_u4oyu"]
[ext_resource type="Resource" uid="uid://n6nb5yco60gi" path="res://Resources/RogueliteMaps/BigLarge.tres" id="2_u4oyu"]
@ -9,12 +9,15 @@
[ext_resource type="Script" uid="uid://ddry5kjj3fr6c" path="res://Scripts/Controllers/DoorMarker.cs" id="7_67kci"]
[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)
vertices = PackedVector2Array(474, 58, 474, 10, 486, 10, 486, 58, 794, 58, 794, 10, 806, 10, 806, 58, 934, 58, 934, 294, 806, 294, 794, 294, 806, 310, 794, 310, 486, 294, 474, 294, 486, 310, 474, 310, 166, 58, 166, 294, 166, 310, 154, 310, 154, 294, 154, 58, 26, 294, 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_u4oyu"]
size = Vector2(915, 245)
[node name="Map" type="Node2D"]
process_mode = 1
script = ExtResource("1_u4oyu")
@ -102,3 +105,13 @@ Direction = 3
[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."]
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(483.5, 174.5)
shape = SubResource("RectangleShape2D_u4oyu")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=4 uid="uid://c36nvk7cw3emg"]
[gd_scene load_steps=10 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"]
@ -15,6 +15,9 @@ outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15,
parsed_collision_mask = 353
source_geometry_mode = 1
[sub_resource type="RectangleShape2D" id="RectangleShape2D_5bd7y"]
size = Vector2(909, 85)
[node name="Map" type="Node2D"]
process_mode = 1
script = ExtResource("1_5bd7y")
@ -102,3 +105,13 @@ Direction = 3
[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."]
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, 94.5)
shape = SubResource("RectangleShape2D_5bd7y")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=4 uid="uid://hmu4dw62c10t"]
[gd_scene load_steps=10 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"]
@ -15,6 +15,9 @@ outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15,
parsed_collision_mask = 353
source_geometry_mode = 1
[sub_resource type="RectangleShape2D" id="RectangleShape2D_4lag8"]
size = Vector2(272, 247)
[node name="Map" type="Node2D"]
process_mode = 1
script = ExtResource("1_4lag8")
@ -93,3 +96,13 @@ WallIndex = 1
[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."]
navigation_polygon = SubResource("NavigationPolygon_rlq0q")
use_edge_connections = false
[node name="PlayerEnterDetector" type="Area2D" parent="."]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerEnterDetector"]
position = Vector2(162, 175.5)
shape = SubResource("RectangleShape2D_4lag8")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=4 uid="uid://ss7hm1utnvn1"]
[gd_scene load_steps=10 format=4 uid="uid://ss7hm1utnvn1"]
[ext_resource type="Script" uid="uid://b2j00riayxkit" path="res://Scripts/Controllers/RogueliteRoom.cs" id="1_g0xrw"]
[ext_resource type="Resource" uid="uid://cmgiqsmujujss" path="res://Resources/RogueliteMaps/TestMapLongX3.tres" id="2_g0xrw"]
@ -15,6 +15,9 @@ outlines = Array[PackedVector2Array]([PackedVector2Array(17, 36, 14, 12, 47, 15,
parsed_collision_mask = 353
source_geometry_mode = 1
[sub_resource type="RectangleShape2D" id="RectangleShape2D_g0xrw"]
size = Vector2(272, 406)
[node name="Map" type="Node2D"]
process_mode = 1
script = ExtResource("1_g0xrw")
@ -93,3 +96,13 @@ WallIndex = 1
[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."]
navigation_polygon = SubResource("NavigationPolygon_rlq0q")
use_edge_connections = false
[node name="PlayerEnterDetector" type="Area2D" parent="."]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerEnterDetector"]
position = Vector2(162, 255)
shape = SubResource("RectangleShape2D_g0xrw")
[connection signal="area_entered" from="PlayerEnterDetector" to="." method="OnRoomEntered"]

View file

@ -34,6 +34,8 @@ public partial class Dead : EnemyStateBase
GameManager.Instance.AddMotivation(StorageModule.EnemyData.MotivationReward);
StorageModule.Root.TriggerDeath();
StorageModule.Root.QueueFree();
}
}