mirror of
http://47.107.252.169:3000/Roguelite-Game-Developing-Team/Gen_Hack-and-Slash-Roguelite.git
synced 2025-11-20 05:27:13 +08:00
(client) feat:实现技能树界面,实现地图生成器,实现维度指定,实现规则瓦片定义,实现逃跑逻辑,实现消息定义,实现武器动画,实现受击动画 fix: 修复单攻击子弹击中多个目标,修复人物属性计算错误 (#56)
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/56
This commit is contained in:
@@ -9,8 +9,8 @@ namespace Managers
|
||||
public class ItemResourceManager : Utils.Singleton<ItemResourceManager>, ILaunchManager
|
||||
{
|
||||
private ItemResource defaultItem;
|
||||
private readonly Dictionary<string, Item.ItemResource> _items = new();
|
||||
private readonly Dictionary<string, List<Item.ItemResource>> _itemsByName = new(); // 保持按显示名称查找的字典
|
||||
private readonly Dictionary<string, ItemResource> _items = new();
|
||||
private readonly Dictionary<string, List<ItemResource>> _itemsByName = new(); // 保持按显示名称查找的字典
|
||||
|
||||
public string StepDescription => "加载物品定义中";
|
||||
|
||||
@@ -39,17 +39,17 @@ namespace Managers
|
||||
continue;
|
||||
}
|
||||
|
||||
Item.ItemResource itemResource;
|
||||
ItemResource itemResource;
|
||||
|
||||
if (def is WeaponDef currentWeaponDef)
|
||||
{
|
||||
itemResource = new Item.WeaponResource(
|
||||
itemResource = new WeaponResource(
|
||||
currentWeaponDef
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
itemResource = new Item.ItemResource(
|
||||
itemResource = new ItemResource(
|
||||
def
|
||||
);
|
||||
}
|
||||
@@ -57,26 +57,26 @@ namespace Managers
|
||||
_items.Add(def.defName, itemResource);
|
||||
if (!_itemsByName.ContainsKey(itemResource.Name))
|
||||
{
|
||||
_itemsByName.Add(itemResource.Name, new List<Item.ItemResource>());
|
||||
_itemsByName.Add(itemResource.Name, new List<ItemResource>());
|
||||
}
|
||||
_itemsByName[itemResource.Name].Add(itemResource);
|
||||
}
|
||||
}
|
||||
|
||||
public Item.ItemResource GetItem(string defName)
|
||||
public ItemResource GetItem(string defName)
|
||||
{
|
||||
return _items.GetValueOrDefault(defName, null);
|
||||
return _items.GetValueOrDefault(defName, defaultItem);
|
||||
}
|
||||
public Item.ItemResource FindItemByName(string itemName)
|
||||
public ItemResource FindItemByName(string itemName)
|
||||
{
|
||||
if (string.IsNullOrEmpty(itemName)) return null;
|
||||
if (string.IsNullOrEmpty(itemName)) return defaultItem;
|
||||
return _itemsByName.GetValueOrDefault(itemName)?.FirstOrDefault();
|
||||
}
|
||||
|
||||
public List<Item.ItemResource> FindAllItemsByName(string itemName)
|
||||
public List<ItemResource> FindAllItemsByName(string itemName)
|
||||
{
|
||||
if (string.IsNullOrEmpty(itemName)) return new List<Item.ItemResource>();
|
||||
return _itemsByName.GetValueOrDefault(itemName, new List<Item.ItemResource>());
|
||||
if (string.IsNullOrEmpty(itemName)) return new List<ItemResource>();
|
||||
return _itemsByName.GetValueOrDefault(itemName, new List<ItemResource>());
|
||||
}
|
||||
|
||||
public void Clear()
|
||||
|
||||
Reference in New Issue
Block a user