Add small light to every 2D enemy, utilize CanMove tag to prevent some enemies (like Filth Eater) from moving while attacking (if it makes sense to do so)

This commit is contained in:
2026-06-14 01:53:31 -07:00
parent cdfb7e95a9
commit 03d6957d3b
30 changed files with 649 additions and 24 deletions
@@ -14,7 +14,7 @@ public partial class BadEnd : SpecialFloor
[Dependency] protected IGame _game => this.DependOn<IGame>();
[Export] public float ShakeAmount = 50;
[Export] public int SpawnTimer = 5;
[Export] public int SpawnTimer = 15;
[Node] public Node3D EnemySpawnPoints { get; set; } = default!;
@@ -26,7 +26,7 @@ public partial class BadEnd : SpecialFloor
public void OnReady()
{
SpawnEnemies(10);
SpawnEnemies(3);
_spawnTimer = new Timer
{
WaitTime = SpawnTimer
@@ -41,6 +41,9 @@ public partial class BadEnd : SpecialFloor
public async void StartEndGameCutscene()
{
_player.Deactivate();
var enemies = GetTree().GetNodesInGroup("enemy").Cast<Enemy>().ToList();
foreach (var enemy in enemies)
enemy.CallDeferred(MethodName.QueueFree);
_spawnTimer.Stop();
_player.ShowCamera(false);
Camera3D.Current = true;
@@ -1,4 +1,4 @@
[gd_scene load_steps=238 format=4 uid="uid://dvnc26rebk6o0"]
[gd_scene load_steps=239 format=4 uid="uid://dvnc26rebk6o0"]
[ext_resource type="Script" uid="uid://cuhfkyh3d7noa" path="res://src/map/dungeon/code/Overworld.cs" id="1_5hmt3"]
[ext_resource type="Texture2D" uid="uid://co6h8vyi11sl2" path="res://src/map/overworld/Models/Overworld_CLOUD_RINGS_INNER_63.png" id="2_g6b7b"]
@@ -744,6 +744,9 @@ size = Vector3(4.24915, 15.9039, 1)
height = 13.8284
radius = 1.76855
[sub_resource type="BoxShape3D" id="BoxShape3D_1b363"]
size = Vector3(5.06068, 4.06201, 4.32288)
[sub_resource type="BoxShape3D" id="BoxShape3D_b53dq"]
size = Vector3(7.76668, 5.73663, 7.88136)
@@ -2500,6 +2503,10 @@ shape = SubResource("CylinderShape3D_v60tm")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -287.947, 5.07643, 87.4924)
shape = SubResource("CylinderShape3D_v60tm")
[node name="CollisionShape3D54" type="CollisionShape3D" parent="Collisions/StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -281.158, 4.40251, 90.2048)
shape = SubResource("BoxShape3D_1b363")
[node name="Spawn Points" type="Node3D" parent="."]
transform = Transform3D(0.99, 0, 0, 0, 0.99, 0, 0, 0, 0.99, -132.777, 0, -5.09045)
@@ -872,14 +872,17 @@ unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.516256, -0.306861, -0.364995)
[node name="ItemSpawnPoint" type="Marker3D" parent="Spawn Points/ItemSpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.751074, -0.889025, 0.745985)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.751074, -5.55769, 0.745984)
[node name="ItemSpawnPoint2" type="Marker3D" parent="Spawn Points/ItemSpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.88313, -5.55769, 0.745984)
[node name="EnemySpawnPoints" type="Node3D" parent="Spawn Points"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.516256, -0.306861, -0.364995)
[node name="EnemySpawn1" type="Marker3D" parent="Spawn Points/EnemySpawnPoints"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.346, -0.5, -3.546)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.346, -6.40398, -3.546)
[node name="Room" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2, 0)
@@ -1,7 +1,7 @@
[gd_scene load_steps=30 format=3 uid="uid://b6akxaacr8jd2"]
[ext_resource type="Script" uid="uid://bccyfmj8ikewh" path="res://src/map/dungeon/code/SpecialRoom.cs" id="1_r0ujh"]
[ext_resource type="PackedScene" uid="uid://dl7xg3y4kupq0" path="res://src/map/dungeon/models/Area 2/Puer/a2-puer.glb" id="2_r0ujh"]
[ext_resource type="PackedScene" uid="uid://c233j840gre81" path="res://src/map/dungeon/models/Area 2/Puer/a2-puer.glb" id="2_r0ujh"]
[ext_resource type="PackedScene" uid="uid://kbrt3cos7udm" path="res://src/map/Placeables/A2-Socket.tscn" id="8_pycw7"]
[ext_resource type="Texture2D" uid="uid://dw50ys561j8no" path="res://src/map/assets/DUST_1.png" id="20_7etq1"]
[ext_resource type="Shader" uid="uid://blrcjqdo7emhs" path="res://src/map/overworld/Models/water.gdshader" id="22_p2jw2"]
@@ -92,8 +92,9 @@ radius = 6.11182
height = 11.6984
radius = 2.65576
[sub_resource type="BoxShape3D" id="BoxShape3D_o6uge"]
size = Vector3(3.77737, 13.2483, 7.50493)
[sub_resource type="CylinderShape3D" id="CylinderShape3D_pycw7"]
height = 14.4299
radius = 2.46338
[sub_resource type="BoxShape3D" id="BoxShape3D_p2jw2"]
size = Vector3(16.0153, 8.34869, 0.344238)
@@ -221,8 +222,8 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15.2753, -0.878723, 2.52198)
shape = SubResource("CylinderShape3D_o6uge")
[node name="CollisionShape3D14" type="CollisionShape3D" parent="Collisions/StaticBody3D2"]
transform = Transform3D(0.689797, 0.723853, -0.0147328, 6.42564e-10, 0.0203491, 0.999793, 0.724003, -0.689654, 0.0140368, -12.1034, -3.73691, 5.21405)
shape = SubResource("BoxShape3D_o6uge")
transform = Transform3D(0.694745, 0.718036, 0.0418797, -0.0395703, -0.0199814, 0.999017, 0.718167, -0.695719, 0.014531, -11.8706, -3.70834, 4.45527)
shape = SubResource("CylinderShape3D_pycw7")
[node name="CollisionShape3D13" type="CollisionShape3D" parent="Collisions/StaticBody3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.0187, -1.66674, 10.5949)