using System.Text.Json.Serialization; using MessagePack; using SVSim.EmulatedEntrypoint.Models.Dtos.Common; namespace SVSim.EmulatedEntrypoint.Models.Dtos.Responses.ArenaTwoPick; [MessagePackObject] public sealed class DoMatchingResponseDto { [JsonPropertyName("matching_state")] [Key("matching_state")] public int MatchingState { get; set; } = 3004; // SUCCEEDED [JsonPropertyName("timeout_period")] [JsonConverter(typeof(StringifiedIntConverter))] [Key("timeout_period")] public int TimeoutPeriod { get; set; } = 30; [JsonPropertyName("retry_period")] [JsonConverter(typeof(StringifiedIntConverter))] [Key("retry_period")] public int RetryPeriod { get; set; } = 3; [JsonPropertyName("battle_id")] [Key("battle_id")] public string BattleId { get; set; } = ""; [JsonPropertyName("node_server_url")] [Key("node_server_url")] public string NodeServerUrl { get; set; } = ""; [JsonPropertyName("room_param")] [Key("room_param")] public string RoomParam { get; set; } = ""; [JsonPropertyName("mission_parameter")] [Key("mission_parameter")] public Dictionary MissionParameter { get; set; } = new() { ["follower_play_count_for_mission"] = "{me.game_play_cards_other_self.unit.count}", }; }