Loading screen fixes, transition screen UI fixes

This commit is contained in:
2026-02-03 01:47:42 -08:00
parent 51010c4f7d
commit 34dce8c5a2
14 changed files with 335 additions and 256 deletions

View File

@@ -133,6 +133,7 @@ public partial class BossTypeA : Enemy, IHaveEngagePlayerBehavior, IHaveFollowBe
{
SetPhysicsProcess(false);
_enemyLogic.Input(new EnemyLogic.Input.Defeated());
_collisionShape.SetDeferred(CollisionShape3D.PropertyName.Disabled, true);
EnemyHitbox.SetDeferred(CollisionShape3D.PropertyName.Disabled, true);
_player.ExperiencePointsComponent.Gain(ExpGiven);
EnemyModelView.PlayDeathAnimation();

View File

@@ -14,20 +14,27 @@ public partial class DemonWall : Enemy3D
[Node] private new DemonWallModelView EnemyModelView { get; set; } = default!;
[Node] private Label DemonWallHP { get; set; } = default!;
private Timer _attackTimer;
public void OnReady()
{
_attackTimer = new Timer { WaitTime = 5f };
_attackTimer.Timeout += AttackTimer_Timeout;
AddChild(_attackTimer);
_attackTimer = new Timer { WaitTime = 5f };
_attackTimer.Timeout += AttackTimer_Timeout;
AddChild(_attackTimer);
}
public void OnPhysicsProcess(double delta)
{
DemonWallHP.Text = HealthComponent.CurrentHP.Value + "/" + HealthComponent.MaximumHP.Value;
}
public override void Activate()
{
SetPhysicsProcess(true);
EnemyModelView.PlayActivateAnimation();
_attackTimer.Start();
SetPhysicsProcess(true);
EnemyModelView.PlayActivateAnimation();
_attackTimer.Start();
}
public override void Idle()
@@ -38,11 +45,11 @@ public partial class DemonWall : Enemy3D
private void AttackTimer_Timeout()
{
PerformAction();
PerformAction();
}
public override void PerformAction()
{
EnemyModelView.Attack(_maximumWallMoveAmount);
EnemyModelView.Attack(_maximumWallMoveAmount);
}
}

View File

@@ -8,10 +8,10 @@
[ext_resource type="AudioStream" uid="uid://bn6ns3jxkw03b" path="res://src/audio/sfx/ENEMY_SPROING_death.ogg" id="6_f313b"]
[sub_resource type="BoxShape3D" id="BoxShape3D_5ht6q"]
size = Vector3(28.3283, 10.355, 4.45671)
size = Vector3(29.3551, 17.3836, 4.45671)
[sub_resource type="BoxShape3D" id="BoxShape3D_5gof3"]
size = Vector3(28.4577, 8.476, 8.04248)
size = Vector3(28.4577, 15.2605, 8.04248)
[node name="Demon Wall" type="CharacterBody3D"]
collision_layer = 2
@@ -19,7 +19,7 @@ collision_mask = 2
script = ExtResource("1_dqcrh")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.40558, 8.3319, 2.53654)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.249016, 4.81762, 2.53654)
shape = SubResource("BoxShape3D_5ht6q")
[node name="Area3D6" type="Area3D" parent="."]
@@ -28,12 +28,11 @@ collision_layer = 2048
collision_mask = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.7687, 8.25977, 4.30386)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.7687, 4.86754, 4.30386)
shape = SubResource("BoxShape3D_5gof3")
[node name="EnemyModelView" parent="." instance=ExtResource("4_affkc")]
unique_name_in_owner = true
CanMove = null
[node name="HitSounds" type="Node3D" parent="."]
@@ -60,3 +59,25 @@ bus = &"SFX"
[node name="AggroSFX" type="AudioStreamPlayer3D" parent="HitSounds"]
unique_name_in_owner = true
bus = &"SFX"
[node name="Control" type="Control" parent="."]
layout_mode = 3
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="VFlowContainer" type="VFlowContainer" parent="Control"]
layout_mode = 0
offset_left = 51.0
offset_top = 980.0
offset_right = 659.0
offset_bottom = 1085.0
[node name="Label" type="Label" parent="Control/VFlowContainer"]
layout_mode = 2
text = "Demon Wall HP:"
[node name="DemonWallHP" type="Label" parent="Control/VFlowContainer"]
unique_name_in_owner = true
custom_minimum_size = Vector2(100, 100)
layout_mode = 2