903 lines
36 KiB
C#
903 lines
36 KiB
C#
//////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// 文件:Assets/Code/Scripts/Gameplay/Net/Client/NetHelper.cs
|
||
// 作者:Xoen Xie
|
||
// 时间:2023/07/19
|
||
// 描述:网络相关接口
|
||
// 说明:
|
||
//
|
||
//////////////////////////////////////////////////////////////////////////
|
||
|
||
|
||
using Framework;
|
||
using Gameplay.FirstTimeFlow;
|
||
using Gameplay.LegionBattle;
|
||
using Google.Protobuf;
|
||
using NLDMID;
|
||
using NLDPB;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Diagnostics;
|
||
using UnityEngine;
|
||
//using static CriWare.CriAtomExBeatSync;
|
||
|
||
namespace Gameplay.Net
|
||
{
|
||
public static class NetHelper
|
||
{
|
||
// 发送服务器消息,请求角色养成
|
||
public static void CharacterUpgrade(uint nCharacterID, UpgradeType type, uint nTargetLevel, bool addAllExp = false)
|
||
{
|
||
MSG_Clt_G_CharacterUpgrade msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGCharacterUpgrade) as MSG_Clt_G_CharacterUpgrade;
|
||
msg.mPB.CharacterId = nCharacterID;
|
||
msg.mPB.UpgradeType = (uint)type;
|
||
msg.mPB.TargetLevel = nTargetLevel;
|
||
msg.mPB.AddAllExp = addAllExp;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
// 进入关卡
|
||
public static void EnterLevel(uint nLevelID, uint nTeamIndex)
|
||
{
|
||
MSG_Clt_G_EnterLevel msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGEnterLevel) as MSG_Clt_G_EnterLevel;
|
||
msg.mPB.LevelId = nLevelID;
|
||
msg.mPB.TeamIndex = nTeamIndex;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
DebugUtil.Log($"C->S send message EnterLevel,levelID:{nLevelID} nTeamIndex:{nTeamIndex}");
|
||
}
|
||
|
||
// 退出关卡,关卡结算
|
||
public static void ExitLevel(bool isSuccess, List<uint> nStar)
|
||
{
|
||
MSG_Clt_G_ExitLevel msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGExitLevel) as MSG_Clt_G_ExitLevel;
|
||
msg.mPB.IsSuccess = isSuccess;
|
||
msg.mPB.StarIndex.Clear();
|
||
msg.mPB.StarIndex.AddRange(nStar);
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
DebugUtil.Log($"ExitLevel PB:{msg.mPB}");
|
||
DebugUtil.Log($"C->S TryExitLevel isSuccess:{isSuccess} StarResult:{string.Join(",", nStar)}");
|
||
}
|
||
|
||
/// <summary>
|
||
/// 领取章节宝箱
|
||
/// </summary>
|
||
/// <param name="nGroupID"></param>
|
||
/// <param name="nIndex"></param>
|
||
public static void LevelGroupReward(uint nGroupID)
|
||
{
|
||
MSG_Clt_G_GroupReward msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGGroupReward) as MSG_Clt_G_GroupReward;
|
||
msg.mPB.GroupId = nGroupID;
|
||
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
// 载具升级
|
||
public static void VehicleUpgrade(uint nVehicleID, uint[] upgrade_type, uint[] upgrade_count)
|
||
{
|
||
MSG_Clt_G_VehicleUpgrade msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGVehicleUpgrade) as MSG_Clt_G_VehicleUpgrade;
|
||
msg.mPB.VehicleId = nVehicleID;
|
||
msg.mPB.UpgradeType.Clear();
|
||
msg.mPB.UpgradeType.AddRange(upgrade_type);
|
||
msg.mPB.UpgradeCount.Clear();
|
||
msg.mPB.UpgradeCount.AddRange(upgrade_count);
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 新协议 创建队伍
|
||
/// </summary>
|
||
public static void CreateTeam(uint nIndex, string name, uint nIcon, uint conductor, List<uint> characterIDs, uint[] playerSkillIds, bool isLegionBattle = false)
|
||
{
|
||
// TODO 更新服务器协议
|
||
MSG_Clt_G_CreateTeam msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGCreateTeam) as MSG_Clt_G_CreateTeam;
|
||
msg.mPB.Name = name;
|
||
msg.mPB.Icon = nIcon;
|
||
msg.mPB.Index = nIndex;
|
||
msg.mPB.Commander = conductor;
|
||
|
||
msg.mPB.UnitIds.Clear();
|
||
msg.mPB.UnitIds.AddRange(characterIDs);
|
||
|
||
msg.mPB.PlayerSkills.Clear();
|
||
for (int i = 0; i < playerSkillIds.Length; ++i)
|
||
msg.mPB.PlayerSkills.Add(playerSkillIds[i]);
|
||
|
||
msg.mPB.Page = isLegionBattle? (uint)1 : 0;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 抽卡
|
||
/// </summary>
|
||
/// <param name="id"></param>
|
||
/// <param name="raffleType"></param>
|
||
/// <param name="isFree"></param>
|
||
/// <param name="useTicketCounr"></param>
|
||
public static void Raffle(uint id, bool isFree, uint count)
|
||
{
|
||
MSG_Clt_G_Raffle msg = NetManager.Instance.GetMessage(MSGID.CltGRaffle) as MSG_Clt_G_Raffle;
|
||
msg.mPB.Id = id;
|
||
msg.mPB.IsFree = isFree;
|
||
msg.mPB.Count = count;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
// 机器人初始化
|
||
public static void RobotTestInit()
|
||
{
|
||
MSG_Clt_G_TestInit msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGTestInit) as MSG_Clt_G_TestInit;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void GiftCode(string code)
|
||
{
|
||
MSG_Clt_G_GiftCode msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGGiftCode) as MSG_Clt_G_GiftCode;
|
||
msg.mPB.Code = code;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void Relogin()
|
||
{
|
||
MSG_Clt_G_Relogin msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGRelogin) as MSG_Clt_G_Relogin;
|
||
msg.mPB.ActorId = Actor.Instance.Base.GetProp(ActorProp.ActorId);
|
||
msg.mPB.LoginKey = Actor.Instance.Login.LoginKey;
|
||
NetManager.Instance.mClient.SendMessage(msg, Actor.Instance.Login.ServerID);
|
||
}
|
||
|
||
// 请求邮件列表
|
||
public static void RequestMailList(bool NeedAll)
|
||
{
|
||
MSG_Clt_Ml_MailRequest msg = NetManager.Instance.GetMessage(MSGID.CltMlMailRequest) as MSG_Clt_Ml_MailRequest;
|
||
msg.mPB.NeedAll = NeedAll;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
// 打开一封邮件
|
||
public static void OpenMail(ulong id)
|
||
{
|
||
MSG_Clt_Ml_OpenMail msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltMlOpenMail) as MSG_Clt_Ml_OpenMail;
|
||
msg.mPB.Id = id;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
// 领取邮件附件,如果id为0,则领取所有
|
||
public static void CliamMail(params ulong[] ids)
|
||
{
|
||
MSG_Clt_Ml_ClaimMailItems msg = NetManager.Instance.GetMessage(MSGID.CltMlClaimMailItems) as MSG_Clt_Ml_ClaimMailItems;
|
||
msg.mPB.MailId.Clear();
|
||
for (int i = 0; i < ids.Length; i++)
|
||
{
|
||
msg.mPB.MailId.Add(ids[i]);
|
||
}
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void DeleteMail(ulong id)
|
||
{
|
||
MSG_Clt_Ml_DeleteMail msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltMlDeleteMail) as MSG_Clt_Ml_DeleteMail;
|
||
msg.mPB.MailId = id;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 升级指挥官技能
|
||
/// </summary>
|
||
/// <param name="nSkillID"></param>
|
||
public static void PlayerSkillUpgrade(uint nSkillID, uint toLevel)
|
||
{
|
||
MSG_Clt_G_PlayerSkillUpgrade msg =
|
||
NetManager.Instance.GetMessage(MSGID.CltGPlayerSkillUpgrade) as MSG_Clt_G_PlayerSkillUpgrade;
|
||
msg.mPB.SkillId = nSkillID;
|
||
msg.mPB.Level = toLevel;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
//领取任务奖励
|
||
public static void ClaimTaskReward(uint[] taskIds)
|
||
{
|
||
MSG_Clt_G_TaskClaim msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGTaskClaim) as MSG_Clt_G_TaskClaim;
|
||
msg.mPB.TaskId.Clear();
|
||
for (int i = 0; i < taskIds.Length; i++)
|
||
{
|
||
msg.mPB.TaskId.Add(taskIds[i]);
|
||
}
|
||
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void GetShopData(uint nShopId)
|
||
{
|
||
MSG_Clt_G_GetShopContent msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGGetShopContent) as MSG_Clt_G_GetShopContent;
|
||
msg.mPB.ShopId = nShopId;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void ShopBuySth(uint nShopId, int index, int count)
|
||
{
|
||
MSG_Clt_G_ShopPurchase msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGShopPurchase) as MSG_Clt_G_ShopPurchase;
|
||
msg.mPB.ShopId = nShopId;
|
||
msg.mPB.Index = (uint)index;
|
||
msg.mPB.Count = (uint)count;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void RefreshShop(int shopID, int cost)
|
||
{
|
||
MSG_Clt_G_RefreshShop msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGRefreshShop) as MSG_Clt_G_RefreshShop;
|
||
msg.mPB.ShopId = (uint)shopID;
|
||
msg.mPB.Cost = (uint)cost;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void InAppPurchaseTest(uint id)
|
||
{
|
||
MSG_Clt_G_InAppPurchaseTest msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGInAppPurchaseTest) as MSG_Clt_G_InAppPurchaseTest;
|
||
msg.mPB.Id = id;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void SetDefenceTeamForPvp(uint[] characterIDs, uint[] vehicleIDs, uint[] buildingIDs, byte[] teamData)
|
||
{
|
||
DebugUtil.LogG("SetDefenceTeamForPvp");
|
||
MSG_Clt_G_SetDefenceTeamForPvp msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGSetDefenceTeamForPvp) as MSG_Clt_G_SetDefenceTeamForPvp;
|
||
msg.mPB.CharacterId.Clear();
|
||
foreach (var characterID in characterIDs)
|
||
{
|
||
msg.mPB.CharacterId.Add(characterID);
|
||
}
|
||
|
||
msg.mPB.VehicleId.Clear();
|
||
foreach (var vehicleID in vehicleIDs)
|
||
{
|
||
msg.mPB.VehicleId.Add(vehicleID);
|
||
}
|
||
|
||
msg.mPB.BuildingId.Clear();
|
||
foreach (var bulidingID in buildingIDs)
|
||
{
|
||
msg.mPB.BuildingId.Add(bulidingID);
|
||
}
|
||
msg.mPB.TeamData = ByteString.CopyFrom(teamData);
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void StartPVPFight(uint actorID)
|
||
{
|
||
MSG_Clt_G_PvpStart msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGPvpStart) as MSG_Clt_G_PvpStart;
|
||
msg.mPB.ActorId = actorID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void GetPVPInformation()
|
||
{
|
||
MSG_Clt_Mg_PvpInformation msg =
|
||
NetManager.Instance.GetMessage(MSGID.CltMgPvpInformation) as MSG_Clt_Mg_PvpInformation;
|
||
NetManager.Instance.SendMessage(msg);
|
||
}
|
||
|
||
public static void FinishPVPFight(bool isWin, uint key)
|
||
{
|
||
MSG_Clt_G_PvpResult msg = NetManager.Instance.GetMessage(NLDMID.MSGID.CltGPvpResult) as MSG_Clt_G_PvpResult;
|
||
msg.mPB.IsWin = isWin;
|
||
msg.mPB.Key = key;
|
||
|
||
NetManager.Instance.SendMessage(msg);
|
||
}
|
||
|
||
public static void GetPvpOrderList(uint page)
|
||
{
|
||
MSG_Clt_Mg_PvpOrderList msg =
|
||
NetManager.Instance.GetMessage(MSGID.CltMgPvpOrderList) as MSG_Clt_Mg_PvpOrderList;
|
||
msg.mPB.Page = page;
|
||
|
||
NetManager.Instance.SendMessage(msg);
|
||
}
|
||
public static void PatioExchange(uint gachaId, uint index)
|
||
{
|
||
MSG_Clt_G_PatioExchange msg = NetManager.Instance.GetMessage(MSGID.CltGPatioExchange) as MSG_Clt_G_PatioExchange;
|
||
msg.mPB.GachaId = gachaId;
|
||
msg.mPB.Index = index;
|
||
NetManager.Instance.SendMessage(msg);
|
||
}
|
||
|
||
public static void InAppPurchase(string transaction_id, string product_id)
|
||
{
|
||
MSG_Clt_G_InAppPurchase msg = NetManager.Instance.GetMessage(MSGID.CltGInAppPurchase) as MSG_Clt_G_InAppPurchase;
|
||
msg.mPB.Platform = (int)PurchasePlatform.Ios;
|
||
msg.mPB.IsSandbox = true;
|
||
msg.mPB.TransactionId = transaction_id;
|
||
msg.mPB.ProductId = product_id;
|
||
NetManager.Instance.SendMessage(msg);
|
||
|
||
}
|
||
/// <summary>
|
||
/// 物品转化(如使用物品,打开宝箱等
|
||
/// </summary>
|
||
/// <param name="consumeID">使用物品id</param>
|
||
/// <param name="consumeAmount">使用份数</param>
|
||
/// <param name="receivedID">获得物品id</param>
|
||
public static void ConvertResources(uint consumeID, uint consumeAmount, uint receivedID)
|
||
{
|
||
MSG_Clt_G_ExchangeItem msg = NetManager.Instance.GetMessage(MSGID.CltGExchangeItem) as MSG_Clt_G_ExchangeItem;
|
||
msg.mPB.Id = consumeID;
|
||
msg.mPB.Count = consumeAmount;
|
||
msg.mPB.TargetId = receivedID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void UseItem(uint consumeID, uint consumeAmount, uint receivedID = default)
|
||
{
|
||
MSG_Clt_G_UseItem msg = NetManager.Instance.GetMessage(MSGID.CltGUseItem) as MSG_Clt_G_UseItem;
|
||
msg.mPB.Id = consumeID;
|
||
msg.mPB.Count = consumeAmount;
|
||
msg.mPB.Param = receivedID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void BuyAlbum(uint AlbumItemID)
|
||
{
|
||
MSG_Clt_G_BuyAlbum msg = NetManager.Instance.GetMessage(MSGID.CltGBuyAlbum) as MSG_Clt_G_BuyAlbum;
|
||
msg.mPB.Id = AlbumItemID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 关卡扫荡
|
||
/// </summary>
|
||
/// <param name="levelId"></param>
|
||
/// <param name="count"></param>
|
||
public static void LevelSweep(uint teamIndex, uint levelId, uint count)
|
||
{
|
||
MSG_Clt_G_LevelSweep msg = NetManager.Instance.GetMessage(MSGID.CltGLevelSweep) as MSG_Clt_G_LevelSweep;
|
||
msg.mPB.TeamIndex = teamIndex;
|
||
msg.mPB.LevelId = levelId;
|
||
msg.mPB.Count = count;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 保存已经完成的引导组id
|
||
/// </summary>
|
||
/// <param name="guideId"></param>
|
||
public static void SaveGuideProgress(LogicID logicID, int value)
|
||
{
|
||
MSG_Clt_G_NewGuideProgress msg = NetManager.Instance.GetMessage(MSGID.CltGNewGuideProgress) as MSG_Clt_G_NewGuideProgress;
|
||
msg.mPB.Id = (uint)logicID;
|
||
msg.mPB.Value = (uint)value;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置玩家头像
|
||
/// </summary>
|
||
public static void SetPlayeHead(uint id)
|
||
{
|
||
MSG_Clt_G_SetHeadicon msg = NetManager.Instance.GetMessage(MSGID.CltGSetHeadicon) as MSG_Clt_G_SetHeadicon;
|
||
msg.mPB.Id = id;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置玩家形象
|
||
/// </summary>
|
||
public static void SetPlayeAvatar(int id)
|
||
{
|
||
MSG_Clt_G_SetAvatar msg = NetManager.Instance.GetMessage(MSGID.CltGSetAvatar) as MSG_Clt_G_SetAvatar;
|
||
msg.mPB.Id = (uint)id;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置玩家名
|
||
/// </summary>
|
||
/// <param name="name"></param>
|
||
public static void SetPlayerName(string name)
|
||
{
|
||
MSG_Clt_G_SetNickname msg = NetManager.Instance.GetMessage(MSGID.CltGSetNickname) as MSG_Clt_G_SetNickname;
|
||
msg.mPB.Nickname = name;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
/// <summary>
|
||
/// 设置玩家简介
|
||
/// </summary>
|
||
/// <param name="text"></param>
|
||
public static void SetPlayerIntroduction(string text)
|
||
{
|
||
MSG_Clt_G_SetActorBase msg = NetManager.Instance.GetMessage(MSGID.CltGSetActorBase) as MSG_Clt_G_SetActorBase;
|
||
msg.mPB.Desc = text;
|
||
msg.mPB.Birthday = Actor.Instance.Base.GetProp(ActorProp.Birthday);
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
/// <summary>
|
||
/// 设置玩家生日
|
||
/// </summary>
|
||
/// <param name="date"></param>
|
||
public static void SetPlayerBirthday(DateTime time)
|
||
{
|
||
MSG_Clt_G_SetActorBase msg = NetManager.Instance.GetMessage(MSGID.CltGSetActorBase) as MSG_Clt_G_SetActorBase;
|
||
msg.mPB.Desc = Actor.Instance.Base.Description;
|
||
msg.mPB.Birthday = (uint)(CommonUtils.GetTimeStamp(time) / 1000);
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 实名认证信息
|
||
/// </summary>
|
||
/// <param name="name"></param>
|
||
/// <param name="ID"></param>
|
||
public static void SendAdultAuth(string name, string ID)
|
||
{
|
||
MSG_Clt_G_AdultAuth msg = NetManager.Instance.GetMessage(MSGID.CltGAdultAuth) as MSG_Clt_G_AdultAuth;
|
||
msg.mPB.Name = name;
|
||
msg.mPB.Id = ID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 验证字符串是否包含屏蔽字库
|
||
/// </summary>
|
||
public static void CheckString(string text)
|
||
{
|
||
MSG_Clt_G_StringCheck msg = NetManager.Instance.GetMessage(MSGID.CltGStringCheck) as MSG_Clt_G_StringCheck;
|
||
msg.mPB.Content = text;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 载具升级
|
||
/// </summary>
|
||
/// <param name="vehicleIDs">升级路线上的所有载具</param>
|
||
/// <param name="componentIDs">升级路线上的所有部件</param>
|
||
/// <param name="type">路线起点类型:1-载具,2-部件</param>
|
||
public static void VehicleUpgrade(List<long> vehicleIDs, List<long> componentIDs, uint type)
|
||
{
|
||
MSG_Clt_G_VehicleDevelopment msg = NetManager.Instance.GetMessage(MSGID.CltGVehicleDevelopment) as MSG_Clt_G_VehicleDevelopment;
|
||
msg.mPB.VehicleIds.Clear();
|
||
msg.mPB.VehicleIds.AddRange(vehicleIDs);
|
||
msg.mPB.ComponentIds.Clear();
|
||
msg.mPB.ComponentIds.AddRange(componentIDs);
|
||
msg.mPB.FirstNodeType = type;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 购买载具涂装
|
||
/// </summary>
|
||
/// <param name="vehicleID"></param>
|
||
/// <param name="paintID"></param>
|
||
public static void VehicleBuyPaint(uint vehicleID, uint paintID)
|
||
{
|
||
MSG_Clt_G_VehicleBuyPaint msg = NetManager.Instance.GetMessage(MSGID.CltGVehicleBuyPaint) as MSG_Clt_G_VehicleBuyPaint;
|
||
msg.mPB.VehicleId = vehicleID;
|
||
msg.mPB.PaintId = paintID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置载具涂装
|
||
/// </summary>
|
||
/// <param name="vehicleID"></param>
|
||
/// <param name="paintID"></param>
|
||
public static void VehicleSetPaint(uint vehicleID, uint paintID)
|
||
{
|
||
MSG_Clt_G_VehicleSetPaint msg = NetManager.Instance.GetMessage(MSGID.CltGVehicleSetPaint) as MSG_Clt_G_VehicleSetPaint;
|
||
msg.mPB.VehicleId = vehicleID;
|
||
msg.mPB.PaintId = paintID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 通过页数获取军团列表数据
|
||
/// </summary>
|
||
/// <param name="page"></param>
|
||
public static void ReqLegionListByPage(uint page)
|
||
{
|
||
MSG_Clt_Lg_LegionList msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionList) as MSG_Clt_Lg_LegionList;
|
||
msg.mPB.SearchKey = "";
|
||
msg.mPB.Page = page;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 通过Key搜索军团列表数据
|
||
/// </summary>
|
||
/// <param name="page"></param>
|
||
public static void ReqLegionListByKey(string key)
|
||
{
|
||
MSG_Clt_Lg_LegionList msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionList) as MSG_Clt_Lg_LegionList;
|
||
msg.mPB.SearchKey = key;
|
||
msg.mPB.Page = 0;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 创建军团
|
||
/// </summary>
|
||
/// <param name="legionData"></param>
|
||
public static void ReqCreateLegion(MSG_LegionData legionData)
|
||
{
|
||
MSG_Clt_Lg_CreateLegion msg = NetManager.Instance.GetMessage(MSGID.CltLgCreateLegion) as MSG_Clt_Lg_CreateLegion;
|
||
msg.mPB.Info = legionData;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 保存编辑军团信息
|
||
/// </summary>
|
||
/// <param name="legionData"></param>
|
||
public static void ReqSaveEditLegion(MSG_LegionData legionData)
|
||
{
|
||
MSG_Clt_Lg_UpdateLegion msg = NetManager.Instance.GetMessage(MSGID.CltLgUpdateLegion) as MSG_Clt_Lg_UpdateLegion;
|
||
msg.mPB.Info = legionData;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求军团详细信息
|
||
/// </summary>
|
||
/// <param name="legionID"></param>
|
||
// public static void ReqLegionInfo(uint legionID)
|
||
// {
|
||
// MSG_Clt_Lg_LegionInfo msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionInfo) as MSG_Clt_Lg_LegionInfo;
|
||
// msg.mPB.LegionId = legionID;
|
||
// NetManager.Instance.mClient.SendMessage(msg);
|
||
// }
|
||
|
||
/// <summary>
|
||
/// 请求加入军团
|
||
/// </summary>
|
||
/// <param name="id"></param>
|
||
public static void ReqJoinLegion(uint id)
|
||
{
|
||
MSG_Clt_Lg_JoinLegion msg = NetManager.Instance.GetMessage(MSGID.CltLgJoinLegion) as MSG_Clt_Lg_JoinLegion;
|
||
msg.mPB.LegionId = id;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求退出军团,团长请求退出时,无成员会解散军团
|
||
/// </summary>
|
||
public static void ReqLeaveLegion()
|
||
{
|
||
MSG_Clt_Lg_QuitLegion msg = NetManager.Instance.GetMessage(MSGID.CltLgQuitLegion) as MSG_Clt_Lg_QuitLegion;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 审批加入申请
|
||
/// </summary>
|
||
/// <param name="uid"></param>
|
||
/// <param name="status"></param>
|
||
public static void ReqExamineApply(uint uid, uint status)
|
||
{
|
||
MSG_Clt_Lg_ExamineJoinLegion msg = NetManager.Instance.GetMessage(MSGID.CltLgExamineJoinLegion) as MSG_Clt_Lg_ExamineJoinLegion;
|
||
msg.mPB.ActorId = uid;
|
||
msg.mPB.Status = status;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 团长请求申请加入列表
|
||
/// </summary>
|
||
public static void ReqLegionPart(uint partType)
|
||
{
|
||
//MSG_Clt_Lg_ApplyList msg = NetManager.Instance.GetMessage(MSGID.CltLgApplyList) as MSG_Clt_Lg_ApplyList;
|
||
MSG_Clt_Lg_LegionPart msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionPart) as MSG_Clt_Lg_LegionPart;
|
||
msg.mPB.PartType = partType;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求编辑成员
|
||
/// </summary>
|
||
public static void ReqEditMember(uint id, uint post)
|
||
{
|
||
MSG_Clt_Lg_UpdateMember msg = NetManager.Instance.GetMessage(MSGID.CltLgUpdateMember) as MSG_Clt_Lg_UpdateMember;
|
||
msg.mPB.ActorId = id;
|
||
msg.mPB.Position = post;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求踢出成员
|
||
/// </summary>
|
||
/// <param name="uid"></param>
|
||
public static void ReqDismissMember(uint uid)
|
||
{
|
||
MSG_Clt_Lg_DismissMember msg =
|
||
NetManager.Instance.GetMessage(MSGID.CltLgDismissMember) as MSG_Clt_Lg_DismissMember;
|
||
msg.mPB.ActorId = uid;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求自身Legion数据部件
|
||
/// </summary>
|
||
/// <param name="part"></param>
|
||
public static void ReqMyLegionData(uint part)
|
||
{
|
||
MSG_Clt_Lg_LegionPart msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionPart) as MSG_Clt_Lg_LegionPart;
|
||
msg.mPB.PartType = part;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void CheckCharacter(int characterID)
|
||
{
|
||
MSG_Clt_G_CheckCharacter msg = NetManager.Instance.GetMessage(MSGID.CltGCheckCharacter) as MSG_Clt_G_CheckCharacter;
|
||
msg.mPB.CharacterId = (uint)characterID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 通行证购买等级
|
||
/// </summary>
|
||
public static void BattlePassBuyLevel(int level, int cost)
|
||
{
|
||
MSG_Clt_G_BuyBattlePassLevel msg = NetManager.Instance.GetMessage(MSGID.CltGBuyBattlePassLevel) as MSG_Clt_G_BuyBattlePassLevel;
|
||
msg.mPB.BuyLevel = (uint)level;
|
||
msg.mPB.BuyCost = (uint)cost;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 领取通行证奖励
|
||
/// </summary>
|
||
public static void BattlePassGetReward()
|
||
{
|
||
MSG_Clt_G_BattlePassReward msg = NetManager.Instance.GetMessage(MSGID.CltGBattlePassReward) as MSG_Clt_G_BattlePassReward;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 月卡每日奖励
|
||
/// </summary>
|
||
public static void MonthlyPassGetReward(uint ID)
|
||
{
|
||
MSG_Clt_G_ClaimMonthlyPassReward msg = NetManager.Instance.GetMessage(MSGID.CltGClaimMonthlyPassReward) as MSG_Clt_G_ClaimMonthlyPassReward;
|
||
msg.mPB.PassId = ID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void RedeemCodeChange(string code)
|
||
{
|
||
MSG_Clt_G_PhxhGiftCode msg =
|
||
NetManager.Instance.GetMessage(NLDMID.MSGID.CltGPhxhGiftCode) as MSG_Clt_G_PhxhGiftCode;
|
||
msg.mPB.Code = code;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
#region 军团战外部
|
||
|
||
/// <summary>
|
||
/// 军团战报名
|
||
/// </summary>
|
||
public static void LegionBattleSignUp()
|
||
{
|
||
MSG_Clt_Lg_LegionBattleSignUp msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionBattleSignUp) as MSG_Clt_Lg_LegionBattleSignUp;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求军团战编队数据
|
||
/// </summary>
|
||
public static void ReqLegionBattleMemberInfos()
|
||
{
|
||
MSG_Clt_B_GetLegionBattleTeams msg = NetManager.Instance.GetMessage(MSGID.CltBGetLegionBattleTeams) as MSG_Clt_B_GetLegionBattleTeams;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 上阵某成员
|
||
/// </summary>
|
||
public static void ReqLegionSelectLegionBattleTeam(uint actorID, bool isSelect)
|
||
{
|
||
MSG_Clt_B_SelectLegionBattleTeam msg =
|
||
NetManager.Instance.GetMessage(MSGID.CltBSelectLegionBattleTeam) as MSG_Clt_B_SelectLegionBattleTeam;
|
||
msg.mPB.ActorId = actorID;
|
||
msg.mPB.IsSelect = isSelect;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求锁定编队
|
||
/// </summary>
|
||
public static void ReqLegionBattleTeamLock()
|
||
{
|
||
MSG_Clt_B_SetLegionBattleTeamLock msg = NetManager.Instance.GetMessage(MSGID.CltBSetLegionBattleTeamLock) as MSG_Clt_B_SetLegionBattleTeamLock;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求所有招募信息
|
||
/// </summary>
|
||
/// <param name="page"></param>
|
||
public static void ReqMercenaryHireData(uint page, LegionHireSortType sortType)
|
||
{
|
||
MSG_Clt_Lg_LegionMercenaryHireDatas msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenaryHireDatas) as MSG_Clt_Lg_LegionMercenaryHireDatas;
|
||
msg.mPB.Page = page;
|
||
msg.mPB.SortType = (uint)sortType;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求注册的雇佣兵数据
|
||
/// </summary>
|
||
/// <param name="page"></param>
|
||
/// <param name="sortType"></param>
|
||
public static void ReqMercenarySignUpData(uint page, MercenaryDataSortType sortType)
|
||
{
|
||
MSG_Clt_Lg_LegionMercenarySignUpDatas msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenarySignUpDatas) as MSG_Clt_Lg_LegionMercenarySignUpDatas;
|
||
msg.mPB.Page = page;
|
||
msg.mPB.SortType = (uint)sortType;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 注册成为雇佣兵
|
||
/// </summary>
|
||
public static void ReqMercenarySignUp(uint cost)
|
||
{
|
||
MSG_Clt_Lg_MercenarySignUp msg = NetManager.Instance.GetMessage(MSGID.CltLgMercenarySignUp) as MSG_Clt_Lg_MercenarySignUp;
|
||
msg.mPB.HireCost = cost;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
public static void ReqLegionPostHiring(MercenaryHire hireData)
|
||
{
|
||
MSG_Clt_Lg_LegionPostHiring msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionPostHiring) as MSG_Clt_Lg_LegionPostHiring;
|
||
msg.mPB.Count = (uint)hireData.Count;
|
||
msg.mPB.Level = (uint)hireData.LimitLevel;
|
||
msg.mPB.Cost = (uint)hireData.Cost;
|
||
msg.mPB.AutoApprove = hireData.AutoApprove;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 查找佣兵ID
|
||
/// </summary>
|
||
/// <param name="mercenaryID"></param>
|
||
public static void ReqMercenarySignUpDataSearch(uint mercenaryID)
|
||
{
|
||
MSG_Clt_Lg_LegionMercenarySearch msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenarySearch) as MSG_Clt_Lg_LegionMercenarySearch;
|
||
msg.mPB.ActorId = mercenaryID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 雇佣兵申请加入军团
|
||
/// </summary>
|
||
/// <param name="legionID"></param>
|
||
public static void ReqMercenaryApplyJoin(uint legionID)
|
||
{
|
||
MSG_Clt_Lg_LegionMercenaryApply msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenaryApply) as MSG_Clt_Lg_LegionMercenaryApply;
|
||
msg.mPB.LegionId = legionID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 请求招募雇佣兵
|
||
/// </summary>
|
||
/// <param name="mercenaryID"></param>
|
||
public static void ReqLegionMercenaryHire(uint mercenaryID)
|
||
{
|
||
MSG_Clt_Lg_LegionMercenaryHire msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenaryHire) as MSG_Clt_Lg_LegionMercenaryHire;
|
||
msg.mPB.ActorId = mercenaryID;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 军团长批准雇佣兵加入
|
||
/// </summary>
|
||
/// <param name="mercenaryID"></param>
|
||
/// <param name="isPass"></param>
|
||
public static void ReqLegionMercenaryApprove(uint mercenaryID, bool isPass)
|
||
{
|
||
MSG_Clt_Lg_LegionMercenaryApprove msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenaryApprove) as MSG_Clt_Lg_LegionMercenaryApprove;
|
||
msg.mPB.ActorId = mercenaryID;
|
||
msg.mPB.Accept = isPass;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 查看军团雇佣兵招募情况
|
||
/// </summary>
|
||
public static void ReqLegionMercenaryData()
|
||
{
|
||
MSG_Clt_Lg_LegionMercenaryDatas msg = NetManager.Instance.GetMessage(MSGID.CltLgLegionMercenaryDatas) as MSG_Clt_Lg_LegionMercenaryDatas;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
|
||
#endregion
|
||
|
||
#region 军团战战斗消息
|
||
/// <summary>
|
||
/// 进入军团战
|
||
/// </summary>
|
||
public static void EnterLegionBattle()
|
||
{
|
||
LegionBattleManager.Debug("发送进入军团战消息");
|
||
MSG_Clt_B_EnterLegionBattlefield msg = NetManager.Instance.GetMessage(MSGID.CltBEnterLegionBattlefield) as MSG_Clt_B_EnterLegionBattlefield;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 进入军团战完成
|
||
/// </summary>
|
||
public static void EnterLegionBattleOK()
|
||
{
|
||
LegionBattleManager.Debug("发送进入军团战完成消息");
|
||
MSG_Clt_B_EnterLegionBattlefieldOk msg = NetManager.Instance.GetMessage(MSGID.CltBEnterLegionBattlefieldOk) as MSG_Clt_B_EnterLegionBattlefieldOk;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 退出军团战
|
||
/// </summary>
|
||
public static void ExitLegionBattle()
|
||
{
|
||
LegionBattleManager.Debug("发送退出军团战消息");
|
||
MSG_Clt_B_ExitLegionBattlefield msg = NetManager.Instance.GetMessage(MSGID.CltBExitLegionBattlefield) as MSG_Clt_B_ExitLegionBattlefield;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 军团战玩家操作指令
|
||
/// </summary>
|
||
public static void LegionBattleCommand(BattlefieldActorCommand command, uint actorId, Vector2Int pos)
|
||
{
|
||
if (!LegionBattleManager.Instance.IsSendNet)
|
||
{
|
||
UITipsManager.ShowTips("操作太频繁了");
|
||
return;
|
||
}
|
||
|
||
LegionBattleManager.Debug($"发送军团战操作消息,actorId:{actorId},类型:{command}");
|
||
MSG_Clt_B_LegionBattleCommand msg = NetManager.Instance.GetMessage(MSGID.CltBLegionBattleCommand) as MSG_Clt_B_LegionBattleCommand;
|
||
msg.mPB.Command = (uint)command;
|
||
msg.mPB.Nx = (uint)pos.y;
|
||
msg.mPB.Nz = (uint)pos.x;
|
||
msg.mPB.ActorId = actorId;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
LegionBattleManager.Instance.SetNetCD();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 军团长命令
|
||
/// </summary>
|
||
/// <param name="pos"></param>
|
||
/// <param name="type"></param>
|
||
public static void LegionBattleCaptainOrder(Vector2Int pos, E_LegionBattleNotice notice)
|
||
{
|
||
if (!LegionBattleManager.Instance.IsSendNet)
|
||
{
|
||
UITipsManager.ShowTips("操作太频繁了");
|
||
return;
|
||
}
|
||
|
||
LegionBattleManager.Debug($"发送军团战军团长操作消息");
|
||
MSG_Clt_B_LegionBattleCaptainOrder msg = NetManager.Instance.GetMessage(MSGID.CltBLegionBattleCaptainOrder) as MSG_Clt_B_LegionBattleCaptainOrder;
|
||
msg.mPB.X = (uint)pos.y;
|
||
msg.mPB.Z = (uint)pos.x;
|
||
msg.mPB.OrderType = (uint)notice;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
LegionBattleManager.Instance.SetNetCD();
|
||
}
|
||
#endregion
|
||
|
||
public static void ReqAccumulateSignUp()
|
||
{
|
||
MSG_Clt_G_Sign msg = NetManager.Instance.GetMessage(MSGID.CltGSign) as MSG_Clt_G_Sign;
|
||
NetManager.Instance.mClient.SendMessage(msg);
|
||
}
|
||
}
|
||
} |