refactor(pack): type PackChildGachaEntry.TypeDetail as CardPackType enum

This commit is contained in:
gamer147
2026-06-09 08:48:16 -04:00
parent 833bd85d36
commit 7118b92522
10 changed files with 84 additions and 58 deletions

View File

@@ -0,0 +1,24 @@
namespace SVSim.Database.Enums;
/// <summary>
/// Mirrors <c>GachaUI.CardPackType</c> in the decompiled client
/// (<c>Shadowverse_Code/GachaUI.cs</c> line 11). Wire value = (int)enum, carried on
/// /pack/info as <c>child_gacha_info[].type_detail</c>.
/// </summary>
public enum CardPackType
{
None = 0,
Crystal = 1,
CrystalMulti = 2,
Daily = 3,
Ticket = 4,
TicketMulti = 5,
Rupy = 6,
RupyMulti = 7,
CrystalSpecial = 8,
CrystalSelectSkin = 9,
FreePacks = 10,
FreePackWithSkin = 11,
RotationStarterPack = 12,
CrystalAcquireSkinCardPack = 13,
}

View File

@@ -1,20 +1,17 @@
using Microsoft.EntityFrameworkCore;
using SVSim.Database.Enums;
namespace SVSim.Database.Models;
/// <summary>
/// One sub-option inside a pack (single-open / 10-open / ticket / daily-free).
/// Wire shape: one entry of <c>child_gacha_info</c> in /pack/info. Owned by PackConfigEntry.
/// <c>TypeDetail</c> corresponds to <c>GachaUI.CardPackType</c>:
/// 1=CRYSTAL, 2=CRYSTAL_MULTI, 3=DAILY, 4=TICKET, 5=TICKET_MULTI, 6=RUPY, 7=RUPY_MULTI,
/// 8=CRYSTAL_SPECIAL, 9=CRYSTAL_SELECT_SKIN, 10=FREE_PACKS, 11=FREE_PACK_WITH_SKIN,
/// 12=ROTATION_STARTER_PACK, 13=CRYSTAL_ACQUIRE_SKIN_CARD_PACK.
/// </summary>
[Owned]
public class PackChildGachaEntry
{
public int GachaId { get; set; }
public int TypeDetail { get; set; }
public CardPackType TypeDetail { get; set; }
public int Cost { get; set; }
public int CardCount { get; set; }
public long? ItemId { get; set; }