using System.Collections.Concurrent; using Newtonsoft.Json; using ServerCore; using ServerBase; namespace ServerCommon.BusinessLogDomain; public class BattleSnapshotLogInfo : ILogInvoker.IInfo { [JsonProperty("room_id")] public string m_room_id { get; set; } = string.Empty; [JsonProperty("snapshot_load_type")] public string m_snapshot_load_type { get; set; } = string.Empty; [JsonProperty("play_mode")] public BattlePlayMode m_play_mode { get; set; } = BattlePlayMode.None; [JsonProperty("event_start_time")] public DateTime m_battle_instance_event_start_time { get; set; } = DateTimeHelper.Current; [JsonProperty("reward_group_id")] public Int32 m_pod_combat_reward_group_id { get; set; } = 1; [JsonProperty("ffa_id")] public Int32 m_pod_combat_ffa_id { get; set; } = 1; [JsonProperty("hot_time")] public Int32 m_hot_time_reward { get; set; } = 1; [JsonProperty("round_count")] public Int32 m_round_count { get; set; } = 8; [JsonProperty("respawns")] public ConcurrentDictionary m_respawns {get; set;} = new (); [JsonProperty("pod_storages")] public ConcurrentDictionary m_pod_storages {get; set;} = new (); [JsonProperty("pod_combat")] public BattleObjectPodCombat m_pod_combat {get; set;} = new (); [JsonProperty("pickup_pods")] public ConcurrentDictionary m_pickup_pods {get; set;} = new (); [JsonProperty("pickup_pods_generation_info")] public List m_pickup_pod_generated_info { get; set; } = new(); [JsonProperty("weapons")] public ConcurrentDictionary m_weapons {get; set;} = new (); [JsonProperty("buffs")] public ConcurrentDictionary m_buffs {get; set;} = new (); [JsonProperty("state")] public BattleRoundStateType m_round_state_type { get; set; } = BattleRoundStateType.Rounding; [JsonProperty("round")] public int m_current_round { get; set; } = 1; [JsonProperty("state_start_time")] public DateTime m_current_state_start_time { get; set; } = DateTimeHelper.Current; [JsonProperty("charged_step")] public int m_charged_step { get; set; } = 0; [JsonProperty("rewarded_step")] public int m_rewarded_step { get; set; } = 0; [JsonProperty("tactical_board")] public ConcurrentDictionary m_tactical_board = new(); public BattleSnapshotLogInfo(ILogInvoker parent, string roomId, string loadType) : base(parent) { m_room_id = roomId; m_snapshot_load_type = loadType; } }