using MikuSB.Data.Excel; namespace MikuSB.Data; public static class GameData { public static Dictionary CardData { get; private set; } = []; public static Dictionary WeaponData { get; private set; } = []; public static Dictionary CardSkinData { get; private set; } = []; public static Dictionary SuppliesData { get; private set; } = []; public static List AllSuppliesData { get; private set; } = []; public static Dictionary UpgradeExpData { get; private set; } = []; public static Dictionary BreakLevelLimitData { get; private set; } = []; public static Dictionary RecycleData { get; private set; } = []; public static Dictionary ChapterLevelData { get; private set; } = []; public static Dictionary ArItemData { get; private set; } = []; public static Dictionary ManifestationData { get; private set; } = []; public static Dictionary Rogue3DDifficultData { get; private set; } = []; public static Dictionary Rogue3DSeasonData { get; private set; } = []; public static Dictionary Rogue3DTalentData { get; private set; } = []; public static Dictionary Rogue3DDailyBuffData { get; private set; } = []; public static Dictionary BreakData { get; private set; } = []; public static Dictionary SpineData { get; private set; } = []; public static Dictionary NodeConditionData { get; private set; } = []; public static List SupportCardData { get; private set; } = []; public static Dictionary SupportAffixData { get; private set; } = []; public static Dictionary SupportAffixPoolData { get; private set; } = []; public static Dictionary SupportFixedData { get; private set; } = []; public static Dictionary WeaponSkinData { get; private set; } = []; public static Dictionary DailyLevelData { get; private set; } = []; public static Dictionary ProfileData { get; private set; } = []; public static Dictionary CardSkinPartsData { get; private set; } = []; public static Dictionary CallItemData { get; private set; } = []; public static Dictionary WeaponPartsData { get; private set; } = []; public static Dictionary GuideData { get; private set; } = []; public static Dictionary DormGiftData { get; private set; } = []; public static Dictionary HouseFurniturePosData { get; private set; } = []; } public static class GameResourceTemplateId { public static ulong FromGdpl(uint genre, uint detail, uint particular, uint level) => ((ulong)level << 48) | ((ulong)particular << 32) | ((ulong)detail << 16) | genre; public static ulong FromGdpl(IReadOnlyList gdpl) => gdpl.Count >= 4 ? FromGdpl(gdpl[0], gdpl[1], gdpl[2], gdpl[3]) : 0; }