Add Hud component for UI management; display health, coins, and lives
This commit is contained in:
1
scripts/UI/ChargeProgressBar.cs.uid
Normal file
1
scripts/UI/ChargeProgressBar.cs.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dev2q1228otm2
|
1
scripts/UI/Credits.cs.uid
Normal file
1
scripts/UI/Credits.cs.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://daevj4uootmcw
|
1
scripts/UI/GameOverScreen.cs.uid
Normal file
1
scripts/UI/GameOverScreen.cs.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://u4qfsx4w72dv
|
43
scripts/UI/Hud.cs
Normal file
43
scripts/UI/Hud.cs
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
using Godot;
|
||||||
|
using Mr.BrickAdventures.Autoloads;
|
||||||
|
using Mr.BrickAdventures.scripts.components;
|
||||||
|
|
||||||
|
namespace Mr.BrickAdventures.scripts.UI;
|
||||||
|
|
||||||
|
public partial class Hud : Node
|
||||||
|
{
|
||||||
|
[Export] public HealthComponent Health { get; set; }
|
||||||
|
[Export] public Label CoinsLabel { get; set; }
|
||||||
|
[Export] public ProgressBar HealthBar { get; set; }
|
||||||
|
[Export] public Label LivesLabel { get; set; }
|
||||||
|
|
||||||
|
private GameManager _gameManager;
|
||||||
|
|
||||||
|
public override void _Ready()
|
||||||
|
{
|
||||||
|
_gameManager = GetNode<GameManager>("/root/GameManager");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void _Process(double delta)
|
||||||
|
{
|
||||||
|
SetHealthBar();
|
||||||
|
SetLivesLabel();
|
||||||
|
SetCoinsLabel();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetCoinsLabel()
|
||||||
|
{
|
||||||
|
CoinsLabel.Text = Tr("COINS_LABEL") + ": " + _gameManager.GetCoins();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetLivesLabel()
|
||||||
|
{
|
||||||
|
LivesLabel.Text = Tr("LIVES_LABEL") + ": " + _gameManager.GetLives();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetHealthBar()
|
||||||
|
{
|
||||||
|
HealthBar.Value = Health.Health;
|
||||||
|
HealthBar.MaxValue = Health.MaxHealth;
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user