提交示例代码

This commit is contained in:
Bob.Song
2026-03-05 11:39:06 +08:00
commit 25958f58c3
2534 changed files with 209593 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
#pragma warning disable CS8601 // Possible null reference assignment.
#pragma warning disable CS8603 // Possible null reference return.
namespace Fantasy;
public sealed partial class ContainerConfigData
{
private readonly Dictionary<int, ContainerConfig> _configsByType = new Dictionary<int, ContainerConfig>();
public override void EndInit()
{
foreach (var containerConfig in List)
{
_configsByType.Add(containerConfig.Type, containerConfig);
}
}
public ContainerConfig GetConfig(ContainerType containerType)
{
if (!_configsByType.TryGetValue((int)containerType, out var config))
{
Log.Error($"containerType {containerType} not found!");
return null;
}
return config;
}
public bool TryGetConfig(ContainerType containerType, out ContainerConfig containerConfig)
{
if (!_configsByType.TryGetValue((int)containerType, out containerConfig))
{
Log.Error($"containerType {containerType} not found!");
return false;
}
return true;
}
}

View File

@@ -0,0 +1,33 @@
#pragma warning disable CS8601 // Possible null reference assignment.
namespace Fantasy;
public partial class EquipValueConfigData
{
private readonly Dictionary<ulong, EquipValueConfig> _equipValueDic = new Dictionary<ulong, EquipValueConfig>();
public override void EndInit()
{
foreach (var equipValueConfig in List)
{
var equipValueKey = GetEquipValueKey(equipValueConfig.ItemConfigId, equipValueConfig.Quality);
_equipValueDic.Add(equipValueKey, equipValueConfig);
}
}
public bool TryGetValue(uint itemConfigId, int quality, out EquipValueConfig value)
{
var equipValueKey = GetEquipValueKey(itemConfigId, quality);
if (!_equipValueDic.TryGetValue(equipValueKey, out value))
{
Log.Error($"itemConfigId: {itemConfigId} and quality: {quality} not found in EquipValueConfig!");
return false;
}
return true;
}
private ulong GetEquipValueKey(uint itemConfigId, int quality)
{
return ((ulong)itemConfigId << 32) | (uint)quality;
}
}