feat(pack): gacha-point endpoint DTOs

This commit is contained in:
gamer147
2026-05-28 22:56:33 -04:00
parent 96f1d73e35
commit ef1af8259e
6 changed files with 130 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
using System.Text.Json.Serialization;
using MessagePack;
namespace SVSim.EmulatedEntrypoint.Models.Dtos;
/// <summary>
/// One row of <c>gacha_point_rewards[]</c>. The client groups by <see cref="ClassId"/>
/// (CardBasePrm.ClanType, stringified on the wire) inside GachaPointExchangeInfoTask.Parse.
/// </summary>
[MessagePackObject]
public class GachaPointRewardDto
{
/// <summary>Stringified on the wire (e.g. "0", "1"). CardBasePrm.ClanType value.</summary>
[JsonPropertyName("class_id")]
[Key("class_id")]
public string ClassId { get; set; } = "0";
[JsonPropertyName("card_id")]
[Key("card_id")]
public long CardId { get; set; }
[JsonPropertyName("reward_list")]
[Key("reward_list")]
public List<GachaPointRewardDetailEntry> RewardList { get; set; } = new();
[JsonPropertyName("is_received")]
[Key("is_received")]
public bool IsReceived { get; set; }
[JsonPropertyName("is_display_prize")]
[Key("is_display_prize")]
public bool IsDisplayPrize { get; set; }
}