(client) feat:健康给予,路径优化,结算界面,商店界面 (#60)

Co-authored-by: m0_75251201 <m0_75251201@noreply.gitcode.com>
Reviewed-on: http://47.107.252.169:3000/Roguelite-Game-Developing-Team/Gen_Hack-and-Slash-Roguelite/pulls/60
This commit is contained in:
2025-10-10 14:08:23 +08:00
parent 9a797479ff
commit 16b49f3d3a
1900 changed files with 114053 additions and 34157 deletions

View File

@@ -0,0 +1,52 @@
using System.Collections.Generic;
using System.Linq;
using Base;
using Entity;
using Managers;
using UnityEngine;
namespace UI
{
public class BaseBuildingHPBarUI:MonoBehaviour,ITickUI
{
public BarUI baseBuildingHPBar;
private List<Building> playerBuildings = new();
public void Init()
{
var entities= EntityManager.Instance.FindEntitiesByFaction(Program.Instance.FocusedDimensionId,
AffiliationManager.Instance.PlayerAffiliation);
if (entities is not { Length: > 0 }) return;
foreach (var entity in entities)
{
if(entity.entity is Building playerBuilding)
{
playerBuildings.Add(playerBuilding);
}
}
}
private void OnEnable()
{
Clock.AddTickUI(this);
}
private void OnDisable()
{
Clock.RemoveTickUI(this);
}
public void TickUI()
{
if (!playerBuildings.Any()) return;
float tHp=0;
float nHp=0;
foreach (var playerBuilding in playerBuildings)
{
tHp=playerBuilding.BaseAttributes.health;
nHp=playerBuilding.AttributesNow.health;
}
baseBuildingHPBar.Progress = nHp / tHp;
}
}
}