using System.Collections.Generic; namespace EventPartnerGatherRequests { public class EventPartnerGatherDetail { public List Partners { get; set; } public List InvitePartners { get; set; } public List RequestPartners { get; set; } public List> Scores { get; set; } public List RecommendInfoList { get; set; } } public class EventPartnerGatherDetailRequest { public int EventId { get; set; } } public class EventPartnerGatherDetailResp { public EEventBuildState State { get; set; } public string Message { get; set; } public EventPartnerGatherDetail Detail { get; set; } } public class EventPartnerGatherOperationResp { public EEventBuildState State { get; set; } public int? SlotId { get; set; } public string ErrorMessage { get; set; } } public class EventPartnerGatherRecommendPlayerRequest { public List Exclude { get; set; } public int? MaxLevel { get; set; } public int? MinLevel { get; set; } public int Count = 10; } public class EventPartnerGatherRecommendPlayerResp { public EEventBuildState State { get; set; } public string ErrorMessage { get; set; } public IList Players { get; set; } } public class EventPartnerGatherChangeScoreRequest { public string PartnerId { get; set; } public int SlotId { get; set; } public int Score { get; set; } public int EventId { get; set; } } public class EventPartnerGatherPartnerRequest { public string PartnerId { get; set; } public int EventId { get; set; } } public class EventPartnerGatherPartnerEvt { // 0 = invite 1 = accept -1 = reject public int EvtType { get; set; } public PlayerInfo PartnerInfo { get; set; } public int SlotId { get; set; } } public class EventPartnerGatherScoreEvt { public string PartnerId { get; set; } public int Score { get; set; } } public class EventPartnerGatherRecentPlayerInfoRequest { public IEnumerable playerPrefabs { get; set; } } public class EventPartnerGatherRecentPlayerInfoResponse { public EEventBuildState State { get; set; } public string Message { get; set; } public List playerInfos { get; set; } public IEnumerable leftOvers { get; set; } } public class EventPartnerGatherPlayerDisplayInfoRequest { public IEnumerable PlayfabIds { get; set; } } public class EventPartnerGatherPlayerDisplayInfoResp { public EEventBuildState State { get; set; } public string Message { get; set; } public IList PlayerInfos { get; set; } } public class EventPartnerGatherBuildRequest { public string PartnerId { get; set; } public int NewScore { get; set; } public int EventId { get; set; } } public class EventPartnerGatherBuildResponse { public EEventBuildBuildState State { get; set; } public string Message { get; set; } } // Accept 返回 public class EventPartnerGatherAcceptResponse { public EEventBuildState State { get; set; } public List PartnerList { get; set; } public string Message { get; set; } } public enum EEventBuildState : byte { Success = 0, Failed = 1, InviteNotFound = 2, AlreadyExist = 3, NoActiveEvent = 4, Full = 5 } public enum EEventBuildBuildState { Success = 0, ScoreError = 2, PlayerInfoNotFound = 3, Failed = 4 } // 自动匹配控制请求 public class AutoMatchToggleRequest { public int EventId { get; set; } public bool Enabled { get; set; } } // 自动匹配控制响应 public class AutoMatchToggleResponse { public EEventBuildState State { get; set; } public string Message { get; set; } public bool IsInMatching { get; set; } } // 自动匹配结果请求 public class AutoMatchStatusRequest { public int EventId { get; set; } } // 自动匹配结果响应 // public class AutoMatchResultResponse // { // public AutoMatchStatus Status { get; set; } // Pending/Success/Timeout/Failed // public PlayerInfo MatchedPartner { get; set; } // public string Message { get; set; } // } public class AutoMatchStatusResponse { public EEventBuildState State { get; set; } public string Message { get; set; } public bool IsInMatching { get; set; } public int CurrentPartnerCount { get; set; } public int MaxPartnerCount { get; set; } public int RemainingSlots { get; set; } public List Partners { get; set; } } // // 自动匹配状态枚举 // public enum AutoMatchStatus // { // Pending, // 匹配中 // Success, // 匹配成功 // Timeout, // 超时 // Failed // 失败 // } }