From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../PTC/Process/Process_RpcC2G_Revive.cs | 90 ++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 Client/Assets/Scripts/XMainClient/PTC/Process/Process_RpcC2G_Revive.cs (limited to 'Client/Assets/Scripts/XMainClient/PTC/Process/Process_RpcC2G_Revive.cs') diff --git a/Client/Assets/Scripts/XMainClient/PTC/Process/Process_RpcC2G_Revive.cs b/Client/Assets/Scripts/XMainClient/PTC/Process/Process_RpcC2G_Revive.cs new file mode 100644 index 00000000..4bfcc3d7 --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/PTC/Process/Process_RpcC2G_Revive.cs @@ -0,0 +1,90 @@ +using System; +using System.Reflection; +using KKSG; +using XMainClient.UI; +using XUtliPoolLib; + +namespace XMainClient +{ + internal class Process_RpcC2G_Revive + { + public static void OnReply(ReviveArg oArg, ReviveRes oRes) + { + bool flag = oRes.result == ErrorCode.ERR_INVALID_REQUEST; + if (flag) + { + string fullName = MethodBase.GetCurrentMethod().ReflectedType.FullName; + XSingleton.singleton.OnGetInvalidRequest(fullName); + } + else + { + XSingleton.singleton.AddLog("Revieve Type: " + oArg.type, null, null, null, null, null, XDebugColor.XDebug_None); + XReviveDocument specificDocument = XDocuments.GetSpecificDocument(XReviveDocument.uuID); + specificDocument.ResetAutoReviveData(); + ErrorCode result = oRes.result; + if (result != ErrorCode.ERR_SUCCESS) + { + if (result != ErrorCode.ERR_REVIVE_MAXNUM) + { + ReviveType type = oArg.type; + if (type != ReviveType.ReviveItem) + { + XSingleton.singleton.ShowSystemTip(oRes.result, "fece00"); + } + else + { + bool flag2 = specificDocument.SpecialCostID > 0u; + if (flag2) + { + specificDocument.ShowSpecialRevive(); + } + else + { + XSingleton.singleton.ShowSystemTip(oRes.result, "fece00"); + } + } + } + else + { + XSingleton.singleton.ShowSystemTip(oRes.result, "fece00"); + } + } + else + { + switch (oArg.type) + { + case ReviveType.ReviveItem: + case ReviveType.ReviveMoney: + specificDocument.SetReviveData(specificDocument.ReviveUsedTime + 1, specificDocument.ReviveCostTime + 1, ReviveType.ReviveNone); + break; + case ReviveType.ReviveSprite: + { + bool flag3 = oArg.clientinfo != null && oArg.clientinfo.islimit; + if (flag3) + { + specificDocument.SetReviveData(specificDocument.ReviveUsedTime + 1, specificDocument.ReviveCostTime, ReviveType.ReviveNone); + } + break; + } + case ReviveType.ReviveVIP: + { + bool flag4 = specificDocument.VipReviveCount > 0u; + if (flag4) + { + XReviveDocument xreviveDocument = specificDocument; + uint vipReviveCount = xreviveDocument.VipReviveCount - 1u; + xreviveDocument.VipReviveCount = vipReviveCount; + } + specificDocument.SetReviveData(specificDocument.ReviveUsedTime + 1, specificDocument.ReviveCostTime, ReviveType.ReviveNone); + break; + } + } + } + } + } + + public static void OnTimeout(ReviveArg oArg) + { + } + } +} -- cgit v1.1-26-g67d0