(client)feat:实现子弹定义以及生成,实现初始化动画,实现血条 #43

Merged
TheRedApricot merged 7 commits from zzdxxz/Gen_Hack-and-Slash-Roguelite-zzdxxz:temp811 into main 2025-08-19 20:22:12 +08:00
78 changed files with 2738 additions and 2290 deletions
Showing only changes of commit dea6cd5fa3 - Show all commits

View File

@ -20,6 +20,9 @@ namespace Managers
public EntityPrefab defaultEntityPrefab;
private List<Tuple<string,EntityPrefab>> pendingAdditions;
public LinkedList<EntityPrefab> FindEntitiesByFaction(string factionKey)
{
if (factionEntities.TryGetValue(factionKey, out var entities))
@ -56,6 +59,20 @@ namespace Managers
Destroy(entityToRemove.gameObject);
}
}
if (pendingAdditions.Any())
{
foreach (var entity in pendingAdditions)
{
if (!factionEntities.ContainsKey(entity.Item1))
{
factionEntities[entity.Item1] = new LinkedList<EntityPrefab>();
}
factionEntities[entity.Item1].AddLast(entity.Item2);
}
pendingAdditions.Clear();
}
}
/// <summary>
@ -96,12 +113,14 @@ namespace Managers
// 管理派系列表
var factionKey = def.attributes.label ?? "default";
if (!factionEntities.ContainsKey(factionKey))
{
factionEntities[factionKey] = new LinkedList<EntityPrefab>();
}
pendingAdditions.Add(Tuple.Create(factionKey, entityComponent));
factionEntities[factionKey].AddLast(entityComponent);
// if (!factionEntities.ContainsKey(factionKey))
// {
// factionEntities[factionKey] = new LinkedList<EntityPrefab>();
// }
// factionEntities[factionKey].AddLast(entityComponent);
return entityComponent;
}
@ -219,13 +238,14 @@ namespace Managers
var entityComponent = entity.GetComponent<EntityPrefab>();
const string factionKey = "default";
if (!factionEntities.ContainsKey(factionKey))
{
factionEntities[factionKey] = new LinkedList<EntityPrefab>();
}
pendingAdditions.Add(Tuple.Create(factionKey, entityComponent));
// if (!factionEntities.ContainsKey(factionKey))
// {
// factionEntities[factionKey] = new LinkedList<EntityPrefab>();
// }
entityComponent.DefaultInit();
factionEntities[factionKey].AddLast(entityComponent);
// entityComponent.DefaultInit();
// factionEntities[factionKey].AddLast(entityComponent);
}
protected override void OnStart()