using System.Collections.Generic;
using cfg.LegionCfg;
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();
public readonly List NetMyApplyLegionList = new();
///
/// 解析服务器下发LegionData数据
///
private Legion _ParseLegionData(MSG_LegionData legionData)
{
var legion = new Legion(legionData);
return legion;
}
private Legion _GetParseLegionData(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(Legion legion)
{
if (legion == null)
{
DebugUtil.LogError("无法存储编辑军团信息,MyLegion为空!!");
return;
}
// if (_myLegion.ID == 0)
// {
// DebugUtil.LogError($"编辑军团数据有误,ID:{_myLegion.ID}");
// return;
// }
var legionData = _TranslateLegion(legion);
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 (CheckIsPermission(Permission.ExamineApply))
{
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
}