using System.Collections.Generic; using Gameplay.Net; using NLDPB; public partial class LegionManager { /// /// 缓存的服务器下发军团列表信息数据 LegionInfoData /// public List NetLegionInfoDataList = new(); /// /// 缓存服务器下发军团Base数据 /// public Lg_Clt_LegionBase NetLegionBaseData; public readonly List NetLegionApplyDataList = new List(); public readonly List NetLegionMemberList = new(); /// /// 解析服务器下发LegionData数据 /// private Legion _ParseLegionData(MSG_LegionData legionData) { var legion = new Legion(legionData); return legion; } private Legion _ParseLegionData(Lg_Clt_LegionBase legionData) { var legion = new Legion(legionData); return legion; } #region API /// /// 请求自身军团数据部件 /// /// public void ReqMyLegionPart(LegionPart part) { NetHelper.ReqMyLegionData((uint) part); } /// /// 请求军团详细信息 /// public void ReqLegionInfo(uint id) { if (id > 0) { //NetHelper.ReqLegionInfo(id); } } /// /// 请求创建军团 /// public void ReqCreateLegion(Legion legion) { var legionData = _TranslateLegion(legion); if (legionData.Id != 0) { DebugUtil.LogError($"创建军团数据有误,ID:{legionData.Id}"); return; } NetHelper.ReqCreateLegion(legionData); } /// /// 请求存储军团信息,编辑军团信息 /// public void ReqSaveLegionInfo() { if (_myLegion == null) { DebugUtil.LogError("无法存储编辑军团信息,MyLegion为空!!"); return; } // if (_myLegion.ID == 0) // { // DebugUtil.LogError($"编辑军团数据有误,ID:{_myLegion.ID}"); // return; // } var legionData = _TranslateLegion(_myLegion); NetHelper.ReqSaveEditLegion(legionData); } /// /// 根据页数请求军团列表信息 /// /// public void ReqLegionListByPage(int page) { NetHelper.ReqLegionListByPage((uint)page); } /// /// 根据key搜索军团列表信息 /// /// public void ReqLegionListByKey(string key) { NetHelper.ReqLegionListByKey(key); } /// /// 获取军团战绩 /// /// public void ReqLegionRecord(uint id) { } /// /// 请求加入军团 /// /// public void ReqJoinLegion(uint id) { if (id > 0) { NetHelper.ReqJoinLegion(id); } } /// /// 请求退出军团 /// /// public void ReqLeaveLegion() { NetHelper.ReqLeaveLegion(); } /// /// 请求编辑加入申请 /// /// /// public void ReqExamineApply(uint id, LegionExamineStatus status) { NetHelper.ReqExamineApply(id, (uint)status); } /// /// 团长请求申请加入玩家列表 /// public void ReqApplyList() { if (_myLegion != null) { if (IsPresident) { NetHelper.ReqLegionPart((uint)LegionPart.Apply); } } } /// /// 请求 LegionBase 数据 /// public void ReqLegionBase() { NetHelper.ReqLegionPart((uint)LegionPart.Base); } /// /// 请求 MyLegion成员 数据 /// public void ReqLegionMembers() { NetHelper.ReqLegionPart((uint)LegionPart.Member); } /// /// 请求 MyLegion 军团日志 数据 /// public void ReqLegionLogs() { NetHelper.ReqLegionPart((uint)LegionPart.Log); } /// /// 请求编辑成员职位 /// /// /// public void ReqEditMember(uint id, cfg.LegionCfg.Position post) { NetHelper.ReqEditMember(id, (uint)post); } /// /// 管理员踢出团员 /// /// public void DismissMember(uint actorID) { //var actorID = Actor.Instance.Base.GetProp(ActorProp.ActorId); NetHelper.ReqDismissMember(actorID); } #endregion }