Partially fix boss room A, only one guy moves though

This commit is contained in:
2026-02-02 00:27:11 -08:00
parent 836b9eb26d
commit 6e4a4d605c
16 changed files with 3648 additions and 158 deletions

View File

@@ -15,13 +15,13 @@ public partial class BossRoomA : Node3D, IBossRoom, IDungeonFloor
[Node] public Marker3D PlayerSpawn { get; set; } = default!;
//[Node] public Node3D HorseHeadStatue { get; set; } = default!;
[Node] public Node3D HorseHeadStatue { get; set; } = default!;
[Node] public Node3D OxFaceStatue { get; set; } = default!;
[Node] public BossTypeA OxFace { get; set; } = default!;
//[Node] public BossTypeA HorseFace { get; set; } = default!;
[Node] public BossTypeA HorseHead { get; set; } = default!;
[Node] public Area3D ActivateTrap { get; set; } = default!;
@@ -36,7 +36,7 @@ public partial class BossRoomA : Node3D, IBossRoom, IDungeonFloor
ActivateTrap.BodyEntered += ActivateTrap_BodyEntered;
_exit.AreaEntered += Exit_AreaEntered;
OxFace.HealthComponent.HealthReachedZero += CheckForBossFightEnd;
//HorseFace.HealthComponent.HealthReachedZero += CheckForBossFightEnd;
HorseHead.HealthComponent.HealthReachedZero += CheckForBossFightEnd;
}
private void ActivateTrap_BodyEntered(Node3D body)
@@ -48,14 +48,14 @@ public partial class BossRoomA : Node3D, IBossRoom, IDungeonFloor
public void StartBossFight()
{
OxFaceStatue.Hide();
//HorseHeadStatue.Hide();
HorseHeadStatue.Hide();
OxFace.StartFight();
//HorseFace.StartFight();
HorseHead.StartFight();
}
private void CheckForBossFightEnd()
{
if (OxFace.HealthComponent.CurrentHP.Value <= 0) //&& HorseFace.HealthComponent.CurrentHP.Value <= 0)
if (OxFace.HealthComponent.CurrentHP.Value <= 0 && HorseHead.HealthComponent.CurrentHP.Value <= 0)
OnBossFightEnded();
}
@@ -78,5 +78,5 @@ public partial class BossRoomA : Node3D, IBossRoom, IDungeonFloor
}
public Transform3D GetPlayerSpawnPoint() => PlayerSpawn.GlobalTransform;
public Transform3D GetPlayerSpawnPoint() => new Transform3D(PlayerSpawn.GlobalBasis, new Vector3(PlayerSpawn.GlobalPosition.X, -2.5f, PlayerSpawn.GlobalPosition.Z));
}

View File

@@ -20,7 +20,7 @@ public partial class BossRoomB : Node3D, IBossRoom, IDungeonFloor
public void OnReady()
{
ActivateTrap.BodyEntered += ActivateTrap_AreaEntered;
ActivateTrap.BodyEntered += ActivateTrap_AreaEntered;
}
private void ActivateTrap_AreaEntered(Node3D area) => StartBossFight();
@@ -32,7 +32,7 @@ public partial class BossRoomB : Node3D, IBossRoom, IDungeonFloor
public void StartBossFight()
{
DemonWall.Activate();
DemonWall.Activate();
}
public void InitializeDungeon()
@@ -40,5 +40,5 @@ public partial class BossRoomB : Node3D, IBossRoom, IDungeonFloor
}
public Transform3D GetPlayerSpawnPoint() => PlayerSpawn.GlobalTransform;
public Transform3D GetPlayerSpawnPoint() => new Transform3D(PlayerSpawn.Basis, new Vector3(PlayerSpawn.Position.X, 0f, PlayerSpawn.Position.Z));
}

View File

@@ -106,6 +106,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -59.9126, 0.0301168, 12.1208)
[node name="Minimap2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -28.017, 0.373, 36.8768)
layers = 2
mesh = SubResource("PlaneMesh_wji58")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap2"]

View File

@@ -102,6 +102,7 @@ transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -35.27
[node name="Minimap2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -22.0145, 0.373, 49.5146)
layers = 2
mesh = SubResource("PlaneMesh_54mxl")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap2"]

View File

@@ -167,6 +167,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -49.0813, 0.0171744, 4.04785)
[node name="Minimap2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.81506, 0.373, -3.07342)
layers = 2
mesh = SubResource("PlaneMesh_5v5l6")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap2"]

View File

@@ -111,6 +111,7 @@ transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 62, 0,
[node name="Minimap2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 77.1591, 0.373, -6.01604)
layers = 2
mesh = SubResource("PlaneMesh_7j2in")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap2"]

View File

@@ -143,6 +143,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 63, 0, -34)
[node name="Minimap2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 28.9476, 0.373, 36.4698)
layers = 2
mesh = SubResource("PlaneMesh_gw6gx")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap2"]

View File

@@ -164,6 +164,7 @@ transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -48.46
[node name="Minimap2" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.3474, 0.373, -36.0745)
layers = 2
mesh = SubResource("PlaneMesh_ckihq")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Minimap2"]

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=64 format=4 uid="uid://5ja3qxn8h7iw"]
[gd_scene load_steps=67 format=4 uid="uid://5ja3qxn8h7iw"]
[ext_resource type="Script" uid="uid://tqyybt313web" path="res://src/map/dungeon/code/BossRoomA.cs" id="1_0h3lb"]
[ext_resource type="Texture2D" uid="uid://clc5f6yyc7sdw" path="res://src/map/assets/Jomon Bells/BELL ANIMATIONS_concrete_0003_color_1k.png" id="2_lqw6r"]
@@ -7,6 +7,8 @@
[ext_resource type="Texture2D" uid="uid://dipyrtjclqae1" path="res://src/map/assets/Jomon Bells/BELL ANIMATIONS_COLUMN.jpg" id="3_ucaw1"]
[ext_resource type="Texture2D" uid="uid://d1xdvf8awh4bi" path="res://src/map/assets/Jomon Bells/BELL ANIMATIONS_CHAIN_TEX.png" id="4_i4jo4"]
[ext_resource type="Texture2D" uid="uid://d3e37dca0j8r4" path="res://src/map/dungeon/models/Special Floors & Rooms/Boss Floor A/15_A1_BOSS FLOOR A_VER_CEILING_1.jpg" id="11_1hwdv"]
[ext_resource type="PackedScene" uid="uid://2wibfnu2jvlv" path="res://src/enemy/enemy_types/14. horse_head/HorseFace.tscn" id="14_jb41f"]
[ext_resource type="PackedScene" uid="uid://8yaqqojv4nuv" path="res://src/enemy/enemy_types/14. horse_head/HorseHeadStatue.tscn" id="15_1ijgn"]
[ext_resource type="PackedScene" uid="uid://bvv5giqyrhtl1" path="res://src/enemy/enemy_types/15. ox_face/OxFaceStatue.tscn" id="26_futcf"]
[ext_resource type="PackedScene" uid="uid://6dnsw37d1uw4" path="res://src/enemy/enemy_types/15. ox_face/OxFace.tscn" id="27_g6y6v"]
[ext_resource type="Shader" uid="uid://dr68ani6ouefm" path="res://src/map/map shaders/B1 Cloud Roll.gdshader" id="30_lmjp4"]
@@ -605,6 +607,10 @@ size = Vector3(2.37085, 8.23395, 7.05534)
[sub_resource type="BoxShape3D" id="BoxShape3D_1ijgn"]
size = Vector3(1.5415, 7.38159, 1.81665)
[sub_resource type="CylinderShape3D" id="CylinderShape3D_1ijgn"]
height = 8.80884
radius = 1.56006
[sub_resource type="BoxShape3D" id="BoxShape3D_pkvyy"]
size = Vector3(6.25977, 15.6429, 37.6357)
@@ -824,6 +830,10 @@ shape = SubResource("BoxShape3D_1ijgn")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 68.86, 17.0536, -22.0851)
shape = SubResource("BoxShape3D_1ijgn")
[node name="CollisionShape3D16" type="CollisionShape3D" parent="Collision/NavigationRegion3D/StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 65.7999, 16.8505, -17.951)
shape = SubResource("CylinderShape3D_1ijgn")
[node name="Spawn Points" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -52.6848, 0, 16.939)
@@ -836,13 +846,11 @@ transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 1.7279
[node name="ActivateTrap" type="Area3D" parent="Room"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 117.392, -35.0626, -17.4901)
visible = false
collision_layer = 2
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/ActivateTrap"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -240.071, 36.4279, 34.624)
visible = false
shape = SubResource("BoxShape3D_pkvyy")
[node name="Exit" type="Area3D" parent="Room"]
@@ -858,17 +866,29 @@ shape = SubResource("BoxShape3D_1qa0g")
[node name="Bosses" type="Node3D" parent="."]
[node name="OxFace" type="Node3D" parent="Bosses"]
transform = Transform3D(-6.55671e-09, 0, -0.15, 0, 0.15, 0, 0.15, 0, -6.55671e-09, -102.157, -0.510939, 13.3664)
transform = Transform3D(-6.55671e-09, 0, -0.15, 0, 0.15, 0, 0.15, 0, -6.55671e-09, -103.103, -0.510939, 13.3065)
[node name="OxFaceStatue" parent="Bosses/OxFace" instance=ExtResource("26_futcf")]
unique_name_in_owner = true
transform = Transform3D(6.66667, 0, 0, 0, 6.66667, 0, 0, 0, 6.66667, 54.7793, -11.9846, -4.01331)
transform = Transform3D(6.66667, 0, 2.84217e-14, 0, 6.66667, 0, -2.84217e-14, 0, 6.66667, 54.7793, -14.4037, -4.01331)
[node name="OxFace" parent="Bosses/OxFace" instance=ExtResource("27_g6y6v")]
unique_name_in_owner = true
transform = Transform3D(1, 0, 3.55271e-15, 0, 1, 0, -3.55271e-15, 0, 1, 58.194, -12.7983, -3.02698)
transform = Transform3D(1, 0, 3.55271e-15, 0, 1, 0, -3.55271e-15, 0, 1, 58.194, -15.2174, -3.02698)
visible = false
[node name="HorseHead" type="Node3D" parent="Bosses"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.862301, 0, 2.20054)
[node name="HorseHead" parent="Bosses/HorseHead" instance=ExtResource("14_jb41f")]
unique_name_in_owner = true
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -101.714, -0.54814, 10.8406)
visible = false
[node name="HorseHeadStatue" parent="Bosses/HorseHead" instance=ExtResource("15_1ijgn")]
unique_name_in_owner = true
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -101.651, -2.53702, 10.6128)
[node name="Lights" type="Node3D" parent="."]
[node name="Outside Sun" type="DirectionalLight3D" parent="Lights"]