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
+6 -3
View File
@@ -56,9 +56,12 @@ public abstract partial class Enemy2D : Enemy
protected void OnVelocityComputed(Vector3 safeVelocity)
{
Velocity = new Vector3(safeVelocity.X, 0, safeVelocity.Z);
LookAtTarget(safeVelocity);
MoveAndSlide();
if (_enemyModelView.CanMove)
{
Velocity = new Vector3(safeVelocity.X, 0, safeVelocity.Z);
LookAtTarget(safeVelocity);
MoveAndSlide();
}
}
protected void EngagePlayerBehavior_TakeAction()
@@ -80,8 +80,12 @@ ATK = ""
DEF = ""
Affinity = ""
Weakness = ""
Drop1 = ""
Drop2 = ""
PrimaryAttackName = ""
PrimaryAttackType = 0
SecondaryAttackName = ""
SecondaryAttackType = 0
TertiaryAttackName = ""
TertiaryAttackType = 0
metadata/_custom_type_script = "uid://dlsgyx4i1jmp3"
[sub_resource type="ViewportTexture" id="ViewportTexture_h1kaf"]
@@ -3842,14 +3846,17 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_oh25a")
CanMove = true
EnemyLoreInfo = SubResource("Resource_ivy74")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 2.05501, 0)
cast_shadow = 0
modulate = Color(0.83, 0.83, 0.83, 1)
pixel_size = 0.001
billboard = 2
shaded = true
alpha_cut = 1
texture_filter = 0
render_priority = 100
@@ -4015,3 +4022,32 @@ libraries = {
[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="."]
bus = &"SFX"
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0.00325984, 2.75088, 0.773075)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.1912, 2.95882, -1.04038)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.901541, 2.75088, -0.392173)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.013747, 0.89876, 2.87897, -0.00373673)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
@@ -31,7 +31,6 @@ collision_mask = 11
axis_lock_linear_y = true
axis_lock_angular_x = true
axis_lock_angular_z = true
motion_mode = 1
script = ExtResource("1_lb5oy")
AeolicResistance = -20.0
HydricResistance = -20.0
@@ -4350,13 +4350,16 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_o4cc2")
CanMove = true
EnemyLoreInfo = ExtResource("2_pqohf")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.98924, 0)
modulate = Color(0.68, 0.68, 0.68, 1)
cast_shadow = 0
gi_mode = 0
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -4439,6 +4442,35 @@ scale = Vector2(2.005, 2.005)
sprite_frames = SubResource("SpriteFrames_kp6q4")
animation = &"WATER DAMAGE"
[node name="SpotLight3D" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 0.895226, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 1.10317, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.619848, -0.663442, -0.419087, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 0.895226, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.0137471, 0.8955, 1.02332, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="Hitbox" type="Area3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 1.34076, 0)
@@ -1,6 +1,7 @@
[gd_scene load_steps=18 format=3 uid="uid://bl426uws0i86l"]
[gd_scene load_steps=19 format=3 uid="uid://bl426uws0i86l"]
[ext_resource type="Script" uid="uid://cohal8w5ceneg" path="res://src/enemy/enemy_types/03. filth_eater/FilthEater.cs" id="1_p438s"]
[ext_resource type="Script" uid="uid://b6vgwsjlshci" path="res://src/items/InventoryItemStats.cs" id="2_m7220"]
[ext_resource type="Script" uid="uid://bei3s7yr6xkc0" path="res://src/enemy/EnemyLootTable.cs" id="3_g602r"]
[ext_resource type="PackedScene" uid="uid://b6sa6ntu4rbrm" path="res://src/enemy/enemy_types/03. filth_eater/FilthEaterModelView.tscn" id="3_rrwed"]
[ext_resource type="Script" uid="uid://dlsgyx4i1jmp3" path="res://src/enemy/EnemyLoreInfo.cs" id="4_5eid5"]
@@ -14,7 +15,7 @@
[sub_resource type="Resource" id="Resource_06aiy"]
script = ExtResource("3_g602r")
Items = []
Items = Array[ExtResource("2_m7220")]([])
metadata/_custom_type_script = "uid://bei3s7yr6xkc0"
[sub_resource type="Resource" id="Resource_fv5vf"]
@@ -46,7 +47,7 @@ height = 6.0
radius = 4.0
[sub_resource type="SphereShape3D" id="SphereShape3D_ebx6c"]
radius = 0.552847
radius = 2.64628
[node name="FilthEater" type="CharacterBody3D" groups=["enemy"]]
process_mode = 1
@@ -3790,6 +3790,18 @@ tracks/5/keys = {
"update": 1,
"values": [0]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath(".:CanMove")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
[sub_resource type="Animation" id="Animation_b1kem"]
resource_name = "idle_back"
@@ -4217,6 +4229,18 @@ tracks/6/keys = {
"times": PackedFloat32Array(0.426553)
}
tracks/6/use_blend = true
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath(".:CanMove")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 1.16667),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_krqul"]
resource_name = "primary_attack_back"
@@ -4273,6 +4297,18 @@ tracks/3/keys = {
"times": PackedFloat32Array(0.333333)
}
tracks/3/use_blend = true
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:CanMove")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 1.08333),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_hsn02"]
resource_name = "primary_attack_left"
@@ -4341,6 +4377,18 @@ tracks/4/keys = {
"times": PackedFloat32Array(0.333333)
}
tracks/4/use_blend = true
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath(".:CanMove")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 1.16667),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_eslbn"]
resource_name = "primary_attack_right"
@@ -4409,6 +4457,18 @@ tracks/4/keys = {
"times": PackedFloat32Array(0.333333)
}
tracks/4/use_blend = true
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath(".:CanMove")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 1.16667),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_usgpm"]
resource_name = "secondary_attack"
@@ -4539,6 +4599,18 @@ tracks/7/keys = {
"times": PackedFloat32Array(0.015234, 0.984766, 1.42112, 1.91667)
}
tracks/7/use_blend = true
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath(".:CanMove")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0, 3.25),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_7a6is"]
resource_name = "secondary_attack_back"
@@ -4580,6 +4652,18 @@ tracks/2/keys = {
"update": 1,
"values": [true, false, true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:CanMove")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 3),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_pyy2h"]
resource_name = "secondary_attack_left"
@@ -4633,6 +4717,18 @@ tracks/3/keys = {
"update": 1,
"values": [false]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:CanMove")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 3),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="Animation" id="Animation_smxxh"]
resource_name = "secondary_attack_right"
@@ -4686,6 +4782,18 @@ tracks/3/keys = {
"update": 1,
"values": [true]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath(".:CanMove")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 3),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_tbr0l"]
_data = {
@@ -5744,12 +5852,15 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_718m1")
CanMove = true
EnemyLoreInfo = ExtResource("2_p4ilm")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.088, 0)
cast_shadow = 0
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5839,6 +5950,35 @@ modulate = Color(1, 1, 1, 0.591)
texture_filter = 0
texture = ExtResource("193_e5pq0")
[node name="SpotLight3D" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 0.895226, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 1.10317, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.619848, -0.663442, -0.419087, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 0.895226, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.0137471, 0.8955, 1.02332, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="Hitbox" type="Area3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 0.901429, 0)
@@ -4990,14 +4990,17 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_oh25a")
CanMove = true
EnemyLoreInfo = ExtResource("2_cftgd")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0.88609, 0)
cast_shadow = 0
modulate = Color(0.91, 0.91, 0.91, 1)
pixel_size = 0.005
billboard = 1
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5078,6 +5081,35 @@ scale = Vector2(2.605, 2.605)
sprite_frames = SubResource("SpriteFrames_bsjfy")
animation = &"WATER DAMAGE"
[node name="SpotLight3D" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 0.895226, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 1.10317, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.619848, -0.663442, -0.419087, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 0.895226, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.0137471, 0.8955, 1.02332, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="Hitbox" type="Area3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 0.72758, 0)
@@ -4696,13 +4696,16 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_ueqp5")
CanMove = true
EnemyLoreInfo = ExtResource("2_ice28")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.76027, 0)
cast_shadow = 0
pixel_size = 0.015
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -4878,3 +4881,32 @@ libraries = {
[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="."]
max_distance = 518.62
bus = &"SFX"
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.752335, 0.658781, 0, -0.658781, 0.752335, 0, 3.48249, 1.68408)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 3.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 3.69043, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 3.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.598758, -0.502743, -0.623489, 0.160314, -0.687474, 0.708293, -0.784722, -0.524049, -0.331034, -1.69846, 4.04564, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.25
light_cull_mask = 4293918721
spot_range = 3.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.013747, 0.8955, 3.61058, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 3.0
@@ -5907,8 +5907,10 @@ libraries = {
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)
cast_shadow = 0
pixel_size = 0.006
billboard = 2
shaded = true
alpha_cut = 1
texture_filter = 0
render_priority = 100
@@ -5987,6 +5989,35 @@ scale = Vector2(4.28, 4.28)
sprite_frames = SubResource("SpriteFrames_6tam3")
animation = &"WATER DAMAGE"
[node name="SpotLight3D" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 0.895226, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 1.10317, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.619848, -0.663442, -0.419087, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 0.895226, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.0137471, 0.8955, 1.02332, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.705, 0, 0, 0, 0.705, 0, 0, 0, 0.705, 0, 2.86141, 0.0472305)
modulate = Color(1, 1, 1, 0.627451)
@@ -6666,9 +6666,11 @@ texture = ExtResource("392_sgkk0")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0, 0)
cast_shadow = 0
offset = Vector2(0, 200)
pixel_size = 0.005
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -6749,6 +6751,35 @@ scale = Vector2(4, 4)
sprite_frames = SubResource("SpriteFrames_8u7he")
animation = &"EARTH DAMAGE"
[node name="SpotLight3D" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.666667, 0, 0, 0, 0.244637, 0.620159, 0, -0.620159, 0.244637, 0, 1.56588, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.666667, 0, 0, 0, -0.356038, 0.563632, 0, -0.563632, -0.356038, -0.19446, 1.77382, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.413232, -0.442295, -0.279391, 0, -0.356038, 0.563632, -0.523148, -0.349366, -0.220689, -0.904801, 1.56588, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(-0.0171605, 0.563446, 0.35592, 1.23153e-08, -0.356038, 0.563632, 0.666446, 0.0145083, 0.00916469, 0.8955, 1.69397, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="Hitbox" type="Area3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 1.39797, 0)
@@ -5245,14 +5245,17 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_h27bt")
CanMove = true
EnemyLoreInfo = ExtResource("2_vh04b")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0.345, 0)
cast_shadow = 0
offset = Vector2(0, 75)
pixel_size = 0.02
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5417,3 +5420,32 @@ unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_0tqwp")
}
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 2.92278, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 3.13073, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 2.92278, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.013747, 0.8955, 3.05088, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
@@ -5223,8 +5223,10 @@ EnemyLoreInfo = SubResource("Resource_f45wt")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(0.49, 0, 0, 0, 0.49, 0, 0, 0, 0.49, 0, 0.405037, 0)
cast_shadow = 0
offset = Vector2(0, 75)
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5392,3 +5394,32 @@ unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_0tqwp")
}
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 1.65106, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 1.859, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, -4.66887e-08, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 1.65106, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 8.06404e-08, -0.534057, 0.845448, 0.999669, 0.0217626, 0.013747, 0.8955, 1.77915, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
@@ -286,8 +286,12 @@ ATK = ""
DEF = ""
Affinity = ""
Weakness = ""
Drop1 = ""
Drop2 = ""
PrimaryAttackName = ""
PrimaryAttackType = 0
SecondaryAttackName = ""
SecondaryAttackType = 0
TertiaryAttackName = ""
TertiaryAttackType = 0
metadata/_custom_type_script = "uid://dlsgyx4i1jmp3"
[sub_resource type="ViewportTexture" id="ViewportTexture_h1kaf"]
@@ -5336,8 +5340,10 @@ EnemyLoreInfo = SubResource("Resource_f45wt")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.239283, 0)
cast_shadow = 0
offset = Vector2(0, 85)
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5412,6 +5418,35 @@ scale = Vector2(2.005, 2.005)
sprite_frames = SubResource("SpriteFrames_wm1r6")
animation = &"WATER DAMAGE"
[node name="SpotLight3D" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 2.85206, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 3.06, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(0.619848, -0.663442, -0.419086, -4.66887e-08, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 2.85206, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="Sprite3D"]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 8.06404e-08, -0.534057, 0.845448, 0.999669, 0.0217626, 0.013747, 0.8955, 2.98015, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="Hitbox" type="Area3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 1.2867, 0)
@@ -5288,13 +5288,16 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_wl7dh")
CanMove = true
EnemyLoreInfo = ExtResource("2_ypc6s")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0250915, 2.95966, 0)
cast_shadow = 0
pixel_size = 0.015
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5475,3 +5478,32 @@ unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_0tqwp")
}
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 3.23049, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 3.43844, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, -4.66887e-08, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 3.23049, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 8.06404e-08, -0.534057, 0.845448, 0.999669, 0.0217626, 0.013747, 0.8955, 3.35859, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
@@ -4454,7 +4454,7 @@ states/Idle/position = Vector2(386, 100)
states/Walking/node = ExtResource("206_1bumx")
states/Walking/position = Vector2(705, 100)
transitions = ["Start", "Idle", SubResource("AnimationNodeStateMachineTransition_0yqqu"), "Primary Attack", "Idle", SubResource("AnimationNodeStateMachineTransition_r6aec"), "Secondary Attack", "Idle", SubResource("AnimationNodeStateMachineTransition_lid5r"), "Idle", "Walking", SubResource("AnimationNodeStateMachineTransition_au0i1"), "Walking", "Idle", SubResource("AnimationNodeStateMachineTransition_jbc40"), "Idle", "Primary Attack", SubResource("AnimationNodeStateMachineTransition_0qt6f"), "Idle", "Secondary Attack", SubResource("AnimationNodeStateMachineTransition_2bn25"), "Walking", "Secondary Attack", SubResource("AnimationNodeStateMachineTransition_h2ml5"), "Walking", "Primary Attack", SubResource("AnimationNodeStateMachineTransition_uma8i")]
graph_offset = Vector2(-36, 110)
graph_offset = Vector2(-31, 11)
[sub_resource type="AtlasTexture" id="AtlasTexture_ycu4d"]
atlas = ExtResource("207_klhid")
@@ -5474,8 +5474,10 @@ EnemyLoreInfo = ExtResource("2_xmbum")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 2.64295, 0)
cast_shadow = 0
pixel_size = 0.0085
billboard = 1
shaded = true
alpha_cut = 1
alpha_antialiasing_mode = 2
texture_filter = 0
@@ -5614,7 +5616,6 @@ alpha_cut = 3
alpha_antialiasing_mode = 2
texture_filter = 0
sprite_frames = SubResource("SpriteFrames_skutu")
frame = 15
[node name="Primary Attack" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.275, 0, 0, 0, 0.275, 0, 0, 0, 0.275, -0.0490866, 4.80316, -0.317864)
@@ -5671,3 +5672,32 @@ unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_0tqwp")
}
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 1.29717, 3.79157, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 4.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 4.44458, -2.70957)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 4.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, -4.66887e-08, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -2.06052, 4.30817, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 4.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 8.06404e-08, -0.534057, 0.845448, 0.999669, 0.0217626, 0.013747, 0.8955, 4.67976, 1.96692)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 4.0
@@ -6601,13 +6601,16 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_h8pla")
CanMove = true
EnemyLoreInfo = ExtResource("2_428gt")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 2.56856, 0)
cast_shadow = 0
pixel_size = 0.007
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -6781,3 +6784,32 @@ unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_0tqwp")
}
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0.030368, 4.65646, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 4.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 5.33922, -2.70957)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 4.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.545192, -0.329435, -0.770869, 0.294919, -0.785395, 0.544222, -0.784722, -0.52405, -0.331034, -2.87564, 4.44274, -0.618148)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 4.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 8.06404e-08, -0.534057, 0.845448, 0.999669, 0.0217626, 0.013747, 0.8955, 4.67976, 1.96692)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 4.0
@@ -3758,13 +3758,16 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_7w22e")
CanMove = true
EnemyLoreInfo = ExtResource("2_ofrux")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(6, 0, 0, 0, 6, 0, 0, 0, 6, 0, 1.95606, 0)
cast_shadow = 0
pixel_size = 0.001
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -3928,3 +3931,32 @@ unique_name_in_owner = true
libraries = {
&"": SubResource("AnimationLibrary_0tqwp")
}
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0.00325984, 2.75088, 0.773075)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.1912, 2.95882, -1.04038)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, 0, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.901541, 2.75088, -0.392173)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 1.84729e-08, -0.534057, 0.845448, 0.999669, 0.0217625, 0.013747, 0.89876, 2.87897, -0.00373673)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
@@ -5263,12 +5263,15 @@ _data = {
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_vf7er")
CanMove = true
EnemyLoreInfo = ExtResource("2_ejhrk")
[node name="Sprite3D" type="Sprite3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.6405, 0)
cast_shadow = 0
billboard = 2
shaded = true
alpha_cut = 2
alpha_antialiasing_mode = 1
texture_filter = 0
@@ -5445,3 +5448,32 @@ libraries = {
}
[node name="AgniSounds" type="AudioStreamPlayer3D" parent="."]
[node name="SpotLight3D" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.366956, 0.930238, 0, -0.930238, 0.366956, 0, 2.08424, 0.771256)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.534057, 0.845448, 0, -0.845448, -0.534057, -0.19446, 2.29218, -1.0422)
light_energy = 0.25
light_indirect_energy = 0.0
light_bake_mode = 0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
transform = Transform3D(0.619848, -0.663442, -0.419086, -4.66887e-08, -0.534057, 0.845448, -0.784722, -0.524049, -0.331034, -0.904801, 2.08424, -0.393992)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
transform = Transform3D(-0.0257408, 0.845168, 0.53388, 8.06404e-08, -0.534057, 0.845448, 0.999669, 0.0217626, 0.013747, 0.8955, 2.21233, -0.00555617)
light_energy = 0.25
light_indirect_energy = 0.0
light_cull_mask = 4293918721
spot_range = 2.0
@@ -31,6 +31,7 @@ unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.370004, 0)
pixel_size = 0.005
billboard = 2
shaded = true
texture_filter = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pickup"]
@@ -30,6 +30,7 @@ collision_mask = 0
unique_name_in_owner = true
pixel_size = 0.005
billboard = 2
shaded = true
double_sided = false
alpha_cut = 1
texture_filter = 0
@@ -81,6 +81,7 @@ shape = SubResource("CapsuleShape3D_eat5q")
[node name="Sprite3D" type="Sprite3D" parent="."]
pixel_size = 0.005
billboard = 2
shaded = true
texture_filter = 0
texture = SubResource("ViewportTexture_x5q15")
@@ -31,6 +31,7 @@ unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.370004, 0)
pixel_size = 0.005
billboard = 2
shaded = true
texture_filter = 0
render_priority = 100
@@ -22,6 +22,7 @@ public partial class Restorative : Node3D, IHealthPack
{
_despawnTimer = new Timer();
AddChild(_despawnTimer);
_despawnTimer.ProcessMode = ProcessModeEnum.Pausable;
_despawnTimer.Timeout += _despawnTimer_Timeout;
_despawnTimer.WaitTime = 30;
_despawnTimer.Start();
@@ -78,13 +78,23 @@ shape = SubResource("CapsuleShape3D_o8f22")
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."]
pixel_size = 0.0075
billboard = 1
shaded = true
texture_filter = 0
render_priority = 127
sprite_frames = SubResource("SpriteFrames_mejdx")
autoplay = "default"
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
process_mode = 1
libraries = {
&"": SubResource("AnimationLibrary_wrrxk")
}
autoplay = "FadeOut"
[node name="OmniLight3D" type="OmniLight3D" parent="."]
process_mode = 1
light_energy = 0.05
light_indirect_energy = 0.2
light_size = 0.19
light_cull_mask = 4293918721
omni_range = 0.533775
@@ -33,6 +33,7 @@ shape = SubResource("BoxShape3D_03cqg")
unique_name_in_owner = true
pixel_size = 0.005
billboard = 2
shaded = true
alpha_cut = 1
texture_filter = 0
render_priority = 100
@@ -30,7 +30,9 @@ collision_mask = 0
unique_name_in_owner = true
pixel_size = 0.005
billboard = 2
shaded = true
texture_filter = 0
render_priority = 100
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pickup"]
shape = SubResource("CapsuleShape3D_wll7p")
@@ -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)