forked from sin365/AxibugEmuOnline
Merge branch 'master' of http://git.axibug.com/alienjack/AxibugEmuOnline
This commit is contained in:
commit
7d2b80ab55
@ -2,10 +2,7 @@
|
||||
using nn.fs;
|
||||
#endif
|
||||
|
||||
using nn.fs;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
public class AxiNSIO
|
||||
{
|
||||
|
||||
@ -682,9 +682,9 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 25, y: 25}
|
||||
m_SizeDelta: {x: 50, y: 50}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &7825136160635457043
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1171,9 +1171,9 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 25, y: 25}
|
||||
m_SizeDelta: {x: 50, y: 50}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &6387250980529666459
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1377,10 +1377,10 @@ RectTransform:
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1100500336380202360}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 170, y: -333}
|
||||
m_SizeDelta: {x: 300, y: 26}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &7910447946506517051
|
||||
CanvasRenderer:
|
||||
@ -1477,9 +1477,9 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 25, y: 25}
|
||||
m_SizeDelta: {x: 50, y: 50}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &6018890508858230420
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1667,10 +1667,10 @@ RectTransform:
|
||||
- {fileID: 905458728127029103}
|
||||
m_Father: {fileID: 1100500336380202360}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 170, y: -160}
|
||||
m_SizeDelta: {x: 300, y: 300}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &2558056583130529771
|
||||
MonoBehaviour:
|
||||
@ -3058,9 +3058,9 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 25, y: 25}
|
||||
m_SizeDelta: {x: 50, y: 50}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &6969397185295608833
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -3116,7 +3116,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1100500336380202360
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -3134,10 +3134,10 @@ RectTransform:
|
||||
- {fileID: 6878964193873653430}
|
||||
m_Father: {fileID: 4478785627166277610}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 165, y: -443}
|
||||
m_SizeDelta: {x: 330, y: 356}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &20405450890320071
|
||||
MonoBehaviour:
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
using Sony.Vita.Dialog;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace AxiIO
|
||||
{
|
||||
|
||||
@ -40,7 +40,8 @@ namespace AxibugEmuOnline.Client.Filters
|
||||
public FloatParameter hardScan = -8.0f;
|
||||
[Range(-3f, 1f)]
|
||||
public FloatParameter hardPix = -3.0f;
|
||||
public Vector2Parameter warp = new Vector2(0.03125f, 0.04166f);
|
||||
public FloatParameter warpX = 0.03125f;
|
||||
public FloatParameter warpY = 0.04166f;
|
||||
[Range(1f, 16f)]
|
||||
public FloatParameter resScale = 4f;
|
||||
[Range(0.5f, 5f)]
|
||||
@ -131,14 +132,14 @@ namespace AxibugEmuOnline.Client.Filters
|
||||
m_tvEffectMat.EnableKeyword("_CubicDistortion"); break;
|
||||
}
|
||||
|
||||
m_tvEffectMat.SetFloat("maskDark", maskDark.GetValue());
|
||||
m_tvEffectMat.SetFloat("maskLight", maskLight.GetValue());
|
||||
m_tvEffectMat.SetFloat("hardScan", hardScan.GetValue());
|
||||
m_tvEffectMat.SetFloat("hardPix", hardPix.GetValue());
|
||||
m_tvEffectMat.SetVector("warp", warp.GetValue());
|
||||
m_tvEffectMat.SetFloat("resScale", resScale.GetValue());
|
||||
m_tvEffectMat.SetFloat("scale", scale.GetValue());
|
||||
m_tvEffectMat.SetFloat("fade", fade.GetValue());
|
||||
m_tvEffectMat.SetFloat("maskDark", maskDark);
|
||||
m_tvEffectMat.SetFloat("maskLight", maskLight);
|
||||
m_tvEffectMat.SetFloat("hardScan", hardScan);
|
||||
m_tvEffectMat.SetFloat("hardPix", hardPix);
|
||||
m_tvEffectMat.SetVector("warp", new Vector4(warpX, warpY));
|
||||
m_tvEffectMat.SetFloat("resScale", resScale);
|
||||
m_tvEffectMat.SetFloat("scale", scale);
|
||||
m_tvEffectMat.SetFloat("fade", fade);
|
||||
|
||||
Graphics.Blit(src, rt, m_tvEffectMat);
|
||||
|
||||
|
||||
@ -70,7 +70,7 @@ namespace AxibugEmuOnline.Client
|
||||
SavDataIdx = SavDataIdx
|
||||
};
|
||||
App.log.Info($"SendDelGameSavList");
|
||||
App.network.SendToServer((int)CommandID.CmdGamesavGetGameSavList, ProtoBufHelper.Serizlize(req));
|
||||
App.network.SendToServer((int)CommandID.CmdGamesavDelGameSav, ProtoBufHelper.Serizlize(req));
|
||||
}
|
||||
|
||||
void RecvDelGameSavList(byte[] reqData)
|
||||
@ -105,7 +105,7 @@ namespace AxibugEmuOnline.Client
|
||||
App.log.Info($"上传即时存档数据 原数据大小:{RawData.Length},压缩后;{compressRawData.Length}");
|
||||
App.log.Info($"上传截图 原数据大小:{SavImgData.Length},压缩后;{compressImgData.Length}");
|
||||
|
||||
App.network.SendToServer((int)CommandID.CmdGamesavGetGameSavList, ProtoBufHelper.Serizlize(req));
|
||||
App.network.SendToServer((int)CommandID.CmdGamesavUploadGameSav, ProtoBufHelper.Serizlize(req));
|
||||
}
|
||||
|
||||
void RecvUpLoadGameSav(byte[] reqData)
|
||||
|
||||
@ -72,6 +72,7 @@ namespace AxibugEmuOnline.Client
|
||||
SlotIndex = slotIndex;
|
||||
FSM = new SimpleFSM<SaveFile>(this);
|
||||
FSM.AddState<IdleState>();
|
||||
FSM.AddState<CheckingNetworkState>();//?
|
||||
FSM.AddState<CheckingState>();
|
||||
FSM.AddState<DownloadingState>();
|
||||
FSM.AddState<UploadingState>();
|
||||
|
||||
@ -11,7 +11,7 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
public override void OnUpdate()
|
||||
{
|
||||
if (App.network.isConnected)
|
||||
if (App.user.IsLoggedIn)
|
||||
{
|
||||
FSM.ChangeState<CheckingState>();
|
||||
}
|
||||
|
||||
@ -38,7 +38,7 @@ namespace AxibugEmuOnline.Client
|
||||
if (romID != Host.RomID) return;
|
||||
NetData = savSlotData[Host.SlotIndex];
|
||||
|
||||
if (NetData == null) //云存档不存在,上传本地存档
|
||||
if (!NetData.BHadSaveData) //云存档不存在,上传本地存档
|
||||
{
|
||||
FSM.ChangeState<UploadingState>();
|
||||
}
|
||||
|
||||
@ -10,6 +10,11 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
Host.CloudAPI.OnUploadedSavData += Api_OnUploadedSavData;
|
||||
|
||||
if (Host.IsEmpty)
|
||||
{
|
||||
FSM.ChangeState<SyncedState>();
|
||||
return;
|
||||
}
|
||||
Host.GetSavData(out byte[] savData, out byte[] screenData);
|
||||
Host.CloudAPI.SendUpLoadGameSav(Host.RomID, Host.SlotIndex, Host.Sequecen, savData, screenData);
|
||||
}
|
||||
|
||||
@ -46,7 +46,7 @@ namespace AxibugEmuOnline.Client
|
||||
float LastLoopTime_15s;
|
||||
private void Update()
|
||||
{
|
||||
NetMsg.Instance.DequeueNesMsg();
|
||||
NetMsg.Instance.NextNetEvent();
|
||||
|
||||
LoopAction_tick?.Invoke();
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.Event;
|
||||
using AxibugProtobuf;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@ -15,11 +16,15 @@ namespace AxibugEmuOnline.Client.Network
|
||||
private Dictionary<int, List<Delegate>> netEventDic = new Dictionary<int, List<Delegate>>(128);
|
||||
|
||||
private Queue<ValueTuple<int, int, byte[]>> queueNetMsg = new Queue<ValueTuple<int, int, byte[]>>();
|
||||
public static object lockQueueNetMsg = new object();
|
||||
|
||||
private Queue<Action> queueEventFromNet = new Queue<Action>();
|
||||
public static object lockQueueEventFromNet = new object();
|
||||
|
||||
|
||||
private NetMsg() { }
|
||||
|
||||
|
||||
public static object lockQueueObj = new object();
|
||||
|
||||
#region RegisterMsgEvent
|
||||
|
||||
@ -62,10 +67,53 @@ namespace AxibugEmuOnline.Client.Network
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region PostEvent
|
||||
public void EnqueueNesMsg(int cmd, int ERRCODE, byte[] arg)
|
||||
|
||||
public void NextNetEvent()
|
||||
{
|
||||
lock (lockQueueObj)
|
||||
DequeueNesMsg();
|
||||
DequeueEventFromNet();
|
||||
}
|
||||
|
||||
#region PostEventFromNet
|
||||
|
||||
public void EnqueueEventFromNet(Action act)
|
||||
{
|
||||
lock (lockQueueEventFromNet)
|
||||
{
|
||||
queueEventFromNet.Enqueue(act);
|
||||
}
|
||||
}
|
||||
|
||||
public void DequeueEventFromNet()
|
||||
{
|
||||
lock (lockQueueEventFromNet)
|
||||
{
|
||||
while (queueEventFromNet.Count > 0)
|
||||
{
|
||||
var msgData = queueEventFromNet.Dequeue();
|
||||
PostNetEventFromNet(msgData);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void PostNetEventFromNet(Action act)
|
||||
{
|
||||
try
|
||||
{
|
||||
act?.Invoke();
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
App.log.Error(ex.ToString());
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region PostNetMsg
|
||||
|
||||
public void EnqueueNetMsg(int cmd, int ERRCODE, byte[] arg)
|
||||
{
|
||||
lock (lockQueueNetMsg)
|
||||
{
|
||||
queueNetMsg.Enqueue(new ValueTuple<int, int, byte[]>(cmd, ERRCODE, arg));
|
||||
}
|
||||
@ -73,7 +121,7 @@ namespace AxibugEmuOnline.Client.Network
|
||||
|
||||
public void DequeueNesMsg()
|
||||
{
|
||||
lock (lockQueueObj)
|
||||
lock (lockQueueNetMsg)
|
||||
{
|
||||
while (queueNetMsg.Count > 0)
|
||||
{
|
||||
|
||||
@ -15,11 +15,11 @@ namespace AxibugEmuOnline.Client.Network
|
||||
{
|
||||
public NetworkHelper()
|
||||
{
|
||||
OnConnected += NetworkConnected;
|
||||
//指定接收服务器数据事件
|
||||
OnReceiveData += GetDataCallBack;
|
||||
//断开连接
|
||||
OnClose += OnConnectClose;
|
||||
OnConnected += NetworkConnected;
|
||||
//网络库调试信息输出事件,用于打印网络内容
|
||||
OnLogOut += NetworkDeBugLog;
|
||||
}
|
||||
@ -39,7 +39,17 @@ namespace AxibugEmuOnline.Client.Network
|
||||
/// </summary>
|
||||
const int ReConnectTryTime = 1000;
|
||||
|
||||
public void NetworkConnected(bool IsConnect)
|
||||
void NetworkConnected(bool IsConnect)
|
||||
{
|
||||
NetMsg.Instance.EnqueueEventFromNet(() => NetworkConnected_Delegate(IsConnect));
|
||||
}
|
||||
|
||||
void OnConnectClose()
|
||||
{
|
||||
NetMsg.Instance.EnqueueEventFromNet(() => OnConnectClose_Delegate());
|
||||
}
|
||||
|
||||
void NetworkConnected_Delegate(bool IsConnect)
|
||||
{
|
||||
NetworkDeBugLog($"NetworkConnected:{IsConnect}");
|
||||
if (IsConnect)
|
||||
@ -63,7 +73,7 @@ namespace AxibugEmuOnline.Client.Network
|
||||
}
|
||||
}
|
||||
|
||||
public void NetworkDeBugLog(string str)
|
||||
void NetworkDeBugLog(string str)
|
||||
{
|
||||
//用于Unity内的输出
|
||||
//Debug.Log("NetCoreDebug >> "+str);
|
||||
@ -76,7 +86,7 @@ namespace AxibugEmuOnline.Client.Network
|
||||
/// <param name="CMDID">协议ID</param>
|
||||
/// <param name="ERRCODE">错误编号</param>
|
||||
/// <param name="data">业务数据</param>
|
||||
public void GetDataCallBack(int CMDID, int ERRCODE, byte[] data)
|
||||
void GetDataCallBack(int CMDID, int ERRCODE, byte[] data)
|
||||
{
|
||||
//NetworkDeBugLog("收到消息 CMDID =>" + CMDID + " ERRCODE =>" + ERRCODE + " 数据长度=>" + data.Length);
|
||||
try
|
||||
@ -86,7 +96,7 @@ namespace AxibugEmuOnline.Client.Network
|
||||
if (CMDID <= (int)CommandID.CmdPong)
|
||||
NetMsg.Instance.PostNetMsgEvent(CMDID, ERRCODE, data);
|
||||
else//加入队列,主线程来取
|
||||
NetMsg.Instance.EnqueueNesMsg(CMDID, ERRCODE, data);
|
||||
NetMsg.Instance.EnqueueNetMsg(CMDID, ERRCODE, data);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@ -97,7 +107,7 @@ namespace AxibugEmuOnline.Client.Network
|
||||
/// <summary>
|
||||
/// 关闭连接
|
||||
/// </summary>
|
||||
public void OnConnectClose()
|
||||
void OnConnectClose_Delegate()
|
||||
{
|
||||
NetworkDeBugLog("OnConnectClose");
|
||||
Eventer.Instance.PostEvent(EEvent.OnLossLoginState);
|
||||
|
||||
@ -141,34 +141,35 @@ namespace AxibugProtobuf {
|
||||
"bnB1dBD6LhIdChhDTURfUk9PTV9TWU5fUGxheWVySW5wdXQQ/y4SDwoKQ01E",
|
||||
"X1NjcmVlbhDZNhIfChpDTURfR0FNRVNBVl9HZXRHYW1lU2F2TGlzdBDBPhIb",
|
||||
"ChZDTURfR0FNRVNBVl9EZWxHYW1lU2F2EMU+Eh4KGUNNRF9HQU1FU0FWX1Vw",
|
||||
"bG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dBTUVfTUFSSxD1TirxAQoJRXJyb3JD",
|
||||
"bG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dBTUVfTUFSSxD1TiqOAgoJRXJyb3JD",
|
||||
"b2RlEhAKDEVSUk9SX0RFRkFVTBAAEgwKCEVSUk9SX09LEAESGAoURVJST1Jf",
|
||||
"Uk9PTV9OT1RfRk9VTkQQChInCiNFUlJPUl9ST09NX1NMT1RfQUxSRUFETFlf",
|
||||
"SEFEX1BMQVlFUhALEiEKHUVSUk9SX1JPT01fQ0FOVF9ET19DVVJSX1NUQVRF",
|
||||
"EDISHwobRVJST1JfUk9NX0RPTlRfSEFEX1NBVkVEQVRBEFASHwoaRVJST1Jf",
|
||||
"Uk9NX0FMUkVBRFlfSEFEX1NUQVIQkwMSHAoXRVJST1JfUk9NX0RPTlRfSEFE",
|
||||
"X1NUQVIQlAMqQAoJTG9naW5UeXBlEg0KCVVzZURldmljZRAAEg4KClVzZUFj",
|
||||
"Y291bnQQARIUChBVc2VIYW9ZdWVBY2NvdW50EAIqpQEKCkRldmljZVR5cGUS",
|
||||
"FgoSRGV2aWNlVHlwZV9EZWZhdWx0EAASBgoCUEMQARILCgdBbmRyb2lkEAIS",
|
||||
"BwoDSU9TEAMSBwoDUFNWEAQSBwoDUFMzEAUSBwoDUFM0EAYSCwoHWEJPWDM2",
|
||||
"MBAHEgsKB1hCT1hPTkUQCBIICgRXaWlVEAkSDwoLTmludGVuZG8zRFMQChIR",
|
||||
"Cg1BbmRyb2lkQ2FyQXBwEAsqkwIKC0dhbWVQYWRUeXBlEgwKCEtleWJvYXJk",
|
||||
"EAASEQoNR2xvYmFsR2FtZVBhZBABEg4KClRvdWNoUGFuZWwQAhIOCgpEUzND",
|
||||
"b250cm9sEAMSDgoKRFM0Q29udHJvbBAEEg4KCkRTNUNvbnRyb2wQBRIUChBT",
|
||||
"d2l0Y2hQcm9Db250cm9sEAYSEAoMU3dpdGNoSm95Q29uEAcSEgoOWEJPWDM2",
|
||||
"MENvbnRyb2wQCBISCg5YQk9YT05FQ29udHJvbBAJEhEKDVBTVml0YUNvbnRy",
|
||||
"b2wQChISCg5XaWlVUGFkQ29udHJvbBALEhQKEFdpaVJlbW90ZUNvbnRyb2wQ",
|
||||
"DBIWChJOaW50ZW5kbzNEU0NvbnRyb2wQDSqDAgoPUm9tUGxhdGZvcm1UeXBl",
|
||||
"EgsKB0ludmFsaWQQABIHCgNOZXMQARIRCg1NYXN0ZXJfU3lzdGVtEAISDQoJ",
|
||||
"R2FtZV9HZWFyEAMSDAoIR2FtZV9Cb3kQBBISCg5HYW1lX0JveV9Db2xvchAF",
|
||||
"EhEKDUNvbGVjb19WaXNpb24QBhILCgdTQ18zMDAwEAcSCwoHU0dfMTAwMBAI",
|
||||
"EgoKBk5FT0dFTxAUEgcKA0lHUxAVEggKBENQUzEQFhIICgRDUFMyEBcSDgoK",
|
||||
"QXJjYWRlX09MRBAeEg8KC1dvbmRlcl9Td2FuECgSFQoRV29uZGVyX1N3YW5f",
|
||||
"Q29sb3IQKRIICgNBbGwQ5wcqcAoNUm9vbUdhbWVTdGF0ZRISCg5Ob25lX0dh",
|
||||
"bWVTdGF0ZRAAEgwKCE9ubHlIb3N0EAESEQoNV2FpdFJhd1VwZGF0ZRACEg0K",
|
||||
"CVdhaXRSZWFkeRADEgkKBVBhdXNlEAQSEAoMSW5PbmxpbmVHYW1lEAUqTgoR",
|
||||
"TG9naW5SZXN1bHRTdGF0dXMSIQodTG9naW5SZXN1bHRTdGF0dXNfQmFzZURl",
|
||||
"ZmF1bHQQABIGCgJPSxABEg4KCkFjY291bnRFcnIQAkICSAFiBnByb3RvMw=="));
|
||||
"EDISHwobRVJST1JfUk9NX0RPTlRfSEFEX1NBVkVEQVRBEFASGwoXRVJST1Jf",
|
||||
"Uk9NX0ZBSUxfU0FWRURBVEEQURIfChpFUlJPUl9ST01fQUxSRUFEWV9IQURf",
|
||||
"U1RBUhCTAxIcChdFUlJPUl9ST01fRE9OVF9IQURfU1RBUhCUAypACglMb2dp",
|
||||
"blR5cGUSDQoJVXNlRGV2aWNlEAASDgoKVXNlQWNjb3VudBABEhQKEFVzZUhh",
|
||||
"b1l1ZUFjY291bnQQAiqlAQoKRGV2aWNlVHlwZRIWChJEZXZpY2VUeXBlX0Rl",
|
||||
"ZmF1bHQQABIGCgJQQxABEgsKB0FuZHJvaWQQAhIHCgNJT1MQAxIHCgNQU1YQ",
|
||||
"BBIHCgNQUzMQBRIHCgNQUzQQBhILCgdYQk9YMzYwEAcSCwoHWEJPWE9ORRAI",
|
||||
"EggKBFdpaVUQCRIPCgtOaW50ZW5kbzNEUxAKEhEKDUFuZHJvaWRDYXJBcHAQ",
|
||||
"CyqTAgoLR2FtZVBhZFR5cGUSDAoIS2V5Ym9hcmQQABIRCg1HbG9iYWxHYW1l",
|
||||
"UGFkEAESDgoKVG91Y2hQYW5lbBACEg4KCkRTM0NvbnRyb2wQAxIOCgpEUzRD",
|
||||
"b250cm9sEAQSDgoKRFM1Q29udHJvbBAFEhQKEFN3aXRjaFByb0NvbnRyb2wQ",
|
||||
"BhIQCgxTd2l0Y2hKb3lDb24QBxISCg5YQk9YMzYwQ29udHJvbBAIEhIKDlhC",
|
||||
"T1hPTkVDb250cm9sEAkSEQoNUFNWaXRhQ29udHJvbBAKEhIKDldpaVVQYWRD",
|
||||
"b250cm9sEAsSFAoQV2lpUmVtb3RlQ29udHJvbBAMEhYKEk5pbnRlbmRvM0RT",
|
||||
"Q29udHJvbBANKoMCCg9Sb21QbGF0Zm9ybVR5cGUSCwoHSW52YWxpZBAAEgcK",
|
||||
"A05lcxABEhEKDU1hc3Rlcl9TeXN0ZW0QAhINCglHYW1lX0dlYXIQAxIMCghH",
|
||||
"YW1lX0JveRAEEhIKDkdhbWVfQm95X0NvbG9yEAUSEQoNQ29sZWNvX1Zpc2lv",
|
||||
"bhAGEgsKB1NDXzMwMDAQBxILCgdTR18xMDAwEAgSCgoGTkVPR0VPEBQSBwoD",
|
||||
"SUdTEBUSCAoEQ1BTMRAWEggKBENQUzIQFxIOCgpBcmNhZGVfT0xEEB4SDwoL",
|
||||
"V29uZGVyX1N3YW4QKBIVChFXb25kZXJfU3dhbl9Db2xvchApEggKA0FsbBDn",
|
||||
"BypwCg1Sb29tR2FtZVN0YXRlEhIKDk5vbmVfR2FtZVN0YXRlEAASDAoIT25s",
|
||||
"eUhvc3QQARIRCg1XYWl0UmF3VXBkYXRlEAISDQoJV2FpdFJlYWR5EAMSCQoF",
|
||||
"UGF1c2UQBBIQCgxJbk9ubGluZUdhbWUQBSpOChFMb2dpblJlc3VsdFN0YXR1",
|
||||
"cxIhCh1Mb2dpblJlc3VsdFN0YXR1c19CYXNlRGVmYXVsdBAAEgYKAk9LEAES",
|
||||
"DgoKQWNjb3VudEVychACQgJIAWIGcHJvdG8z"));
|
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||
new pbr::FileDescriptor[] { },
|
||||
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::AxibugProtobuf.CommandID), typeof(global::AxibugProtobuf.ErrorCode), typeof(global::AxibugProtobuf.LoginType), typeof(global::AxibugProtobuf.DeviceType), typeof(global::AxibugProtobuf.GamePadType), typeof(global::AxibugProtobuf.RomPlatformType), typeof(global::AxibugProtobuf.RoomGameState), typeof(global::AxibugProtobuf.LoginResultStatus), }, null, new pbr::GeneratedClrTypeInfo[] {
|
||||
@ -395,6 +396,10 @@ namespace AxibugProtobuf {
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_DONT_HAD_SAVEDATA")] ErrorRomDontHadSavedata = 80,
|
||||
/// <summary>
|
||||
///即时存档不存在
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_FAIL_SAVEDATA")] ErrorRomFailSavedata = 81,
|
||||
/// <summary>
|
||||
///已经收藏
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_ALREADY_HAD_STAR")] ErrorRomAlreadyHadStar = 403,
|
||||
|
||||
8
AxibugEmuOnline.Client/Assets/Script/AppMain/Switch.meta
Normal file
8
AxibugEmuOnline.Client/Assets/Script/AppMain/Switch.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e6de7f0cc4868434f96bf3580893e149
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1877afb89575e564abcecf61e28cf7ce
|
||||
@ -1,5 +1,7 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using DG.Tweening;
|
||||
using DG.Tweening.Core;
|
||||
using DG.Tweening.Plugins.Options;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
@ -84,8 +86,34 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
private void UpdateMenuState()
|
||||
{
|
||||
if (!m_bPoped) return;
|
||||
|
||||
if (checkDirty())
|
||||
{
|
||||
Canvas.ForceUpdateCanvases();
|
||||
|
||||
if (m_popTween != null)
|
||||
{
|
||||
Vector2 end = new Vector2(-MenuRoot.rect.width, MenuRoot.anchoredPosition.y);
|
||||
m_popTween.ChangeEndValue(end, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
Vector2 end = new Vector2(-MenuRoot.rect.width, MenuRoot.anchoredPosition.y);
|
||||
var topParent = m_parent;
|
||||
while (topParent != null && topParent.m_parent != null)
|
||||
{
|
||||
topParent = topParent.m_parent;
|
||||
}
|
||||
if (topParent != null)
|
||||
{
|
||||
topParent.MenuRoot.anchoredPosition = end;
|
||||
}
|
||||
else
|
||||
{
|
||||
MenuRoot.anchoredPosition = end;
|
||||
}
|
||||
}
|
||||
RebuildSelectIndex();
|
||||
}
|
||||
}
|
||||
@ -148,6 +176,8 @@ namespace AxibugEmuOnline.Client
|
||||
return dirty;
|
||||
}
|
||||
|
||||
private TweenerCore<Vector2, Vector2, VectorOptions> m_popTween;
|
||||
private TweenerCore<Vector2, Vector2, VectorOptions> m_hideTween;
|
||||
CommandListener.ScheduleType? m_lastCS;
|
||||
private Action m_onClose;
|
||||
|
||||
@ -167,8 +197,14 @@ namespace AxibugEmuOnline.Client
|
||||
SelectBorder.Target = optionUI_MenuItem.transform as RectTransform;
|
||||
}
|
||||
|
||||
|
||||
public void Pop<T>(List<T> menus, int defaultIndex = 0, Action onClose = null) where T : InternalOptionMenu
|
||||
{
|
||||
if (m_hideTween != null)
|
||||
{
|
||||
m_hideTween.Kill(true);
|
||||
}
|
||||
|
||||
m_onClose = onClose;
|
||||
ReleaseRuntimeMenus();
|
||||
foreach (var menu in menus) CreateRuntimeMenuItem(menu);
|
||||
@ -187,10 +223,11 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
if (!m_bPoped)
|
||||
{
|
||||
|
||||
m_bPoped = true;
|
||||
Vector2 start = new Vector2(0, MenuRoot.anchoredPosition.y);
|
||||
Vector2 end = new Vector2(-MenuRoot.rect.width, MenuRoot.anchoredPosition.y);
|
||||
DOTween.To(
|
||||
m_popTween = DOTween.To(
|
||||
() => start,
|
||||
(value) =>
|
||||
{
|
||||
@ -214,6 +251,7 @@ namespace AxibugEmuOnline.Client
|
||||
end,
|
||||
0.3f
|
||||
).SetEase(Ease.OutCubic);
|
||||
m_popTween.onComplete = () => m_popTween = null;
|
||||
|
||||
m_lastCS = CommandDispatcher.Instance.Mode;
|
||||
CommandDispatcher.Instance.Mode = CommandListener.ScheduleType.Normal;
|
||||
@ -236,15 +274,17 @@ namespace AxibugEmuOnline.Client
|
||||
Vector2 start = new Vector2(-MenuRoot.rect.width, MenuRoot.anchoredPosition.y);
|
||||
Vector2 end = new Vector2(0, MenuRoot.anchoredPosition.y);
|
||||
|
||||
ReleaseRuntimeMenus();
|
||||
m_runtimeMenuItems.Clear();
|
||||
|
||||
SelectBorder.gameObject.SetActiveEx(false);
|
||||
|
||||
CommandDispatcher.Instance.UnRegistController(this);
|
||||
Canvas.ForceUpdateCanvases();
|
||||
|
||||
DOTween.To(
|
||||
if (m_popTween != null)
|
||||
{
|
||||
m_popTween.Kill(true);
|
||||
}
|
||||
|
||||
m_hideTween = DOTween.To(
|
||||
() => start,
|
||||
(value) =>
|
||||
{
|
||||
@ -268,6 +308,12 @@ namespace AxibugEmuOnline.Client
|
||||
end,
|
||||
0.3f
|
||||
).SetEase(Ease.OutCubic);
|
||||
m_hideTween.onComplete = () =>
|
||||
{
|
||||
ReleaseRuntimeMenus();
|
||||
m_runtimeMenuItems.Clear();
|
||||
m_hideTween = null;
|
||||
};
|
||||
|
||||
m_bPoped = false;
|
||||
|
||||
|
||||
@ -15,7 +15,6 @@ namespace AxibugEmuOnline.Client
|
||||
private RectTransform m_rect => transform as RectTransform;
|
||||
|
||||
private RectTransform m_target;
|
||||
private TweenerCore<Vector3, Vector3, VectorOptions> m_trackTween;
|
||||
|
||||
public RectTransform Target
|
||||
{
|
||||
@ -37,7 +36,6 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
var itemUIRect = m_target.transform as RectTransform;
|
||||
m_rect.pivot = itemUIRect.pivot;
|
||||
m_rect.sizeDelta = itemUIRect.rect.size;
|
||||
m_rect.SetAsLastSibling();
|
||||
|
||||
animator.SetTrigger("reactive");
|
||||
@ -47,12 +45,30 @@ namespace AxibugEmuOnline.Client
|
||||
m_trackTween.Kill();
|
||||
m_trackTween = null;
|
||||
}
|
||||
m_trackTween = DOTween.To(() => m_rect.position, (_value) => m_rect.position = _value, itemUIRect.position, 0.125f);
|
||||
m_trackTween.onComplete = () => m_trackTween = null;
|
||||
|
||||
var startSize = m_rect.sizeDelta;
|
||||
var startPos = m_rect.position;
|
||||
|
||||
m_trackTween = DOTween.To(
|
||||
() => 0f,
|
||||
(_value) =>
|
||||
{
|
||||
var progress = _value;
|
||||
m_rect.position = Vector3.Lerp(startPos, itemUIRect.position, progress);
|
||||
m_rect.sizeDelta = Vector2.Lerp(startSize, itemUIRect.rect.size, progress);
|
||||
},
|
||||
1f,
|
||||
0.125f);
|
||||
m_trackTween.onComplete = () =>
|
||||
{
|
||||
m_trackTween = null;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
private bool m_active;
|
||||
private TweenerCore<float, float, FloatOptions> m_trackTween;
|
||||
|
||||
public bool Active
|
||||
{
|
||||
get => m_active;
|
||||
@ -73,11 +89,16 @@ namespace AxibugEmuOnline.Client
|
||||
}
|
||||
}
|
||||
|
||||
private void LateUpdate()
|
||||
struct TrackTarget
|
||||
{
|
||||
if (m_trackTween != null && m_trackTween.endValue != Target.position)
|
||||
Vector3 pos;
|
||||
Vector2 size;
|
||||
}
|
||||
|
||||
struct TrackTargetOption : IPlugOptions
|
||||
{
|
||||
public void Reset()
|
||||
{
|
||||
m_trackTween.ChangeEndValue(Target.position, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -21,7 +21,7 @@ namespace AxibugEmuOnline.Server.Common
|
||||
public string ClientVersion { get; set; }
|
||||
public string AesKey { get; set; }
|
||||
public string AesIv { get; set; }
|
||||
public string savDataPath { get; set; }
|
||||
public string savDataPath { get; set; } = "";
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using System.Security.Cryptography;
|
||||
using System.IO.Compression;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
|
||||
namespace AxibugEmuOnline.Server.Common
|
||||
@ -20,6 +21,28 @@ namespace AxibugEmuOnline.Server.Common
|
||||
return Convert.ToInt64(ts.TotalSeconds);
|
||||
}
|
||||
|
||||
|
||||
public static byte[] CompressByteArray(byte[] bytesToCompress)
|
||||
{
|
||||
using (var compressedMemoryStream = new System.IO.MemoryStream())
|
||||
using (var gzipStream = new GZipStream(compressedMemoryStream, CompressionMode.Compress))
|
||||
{
|
||||
gzipStream.Write(bytesToCompress, 0, bytesToCompress.Length);
|
||||
gzipStream.Close();
|
||||
return compressedMemoryStream.ToArray();
|
||||
}
|
||||
}
|
||||
|
||||
public static byte[] DecompressByteArray(byte[] compressedBytes)
|
||||
{
|
||||
using (var compressedMemoryStream = new System.IO.MemoryStream(compressedBytes))
|
||||
using (var gzipStream = new GZipStream(compressedMemoryStream, CompressionMode.Decompress))
|
||||
using (var resultMemoryStream = new System.IO.MemoryStream())
|
||||
{
|
||||
gzipStream.CopyTo(resultMemoryStream);
|
||||
return resultMemoryStream.ToArray();
|
||||
}
|
||||
}
|
||||
public static string FileMD5Hash(string filePath)
|
||||
{
|
||||
using (var md5 = MD5.Create())
|
||||
|
||||
@ -25,11 +25,10 @@ namespace AxibugEmuOnline.Server.Manager
|
||||
Protobuf_Mine_GetGameSavList_RESP respData = new Protobuf_Mine_GetGameSavList_RESP();
|
||||
|
||||
respData.RomID = msg.RomID;
|
||||
Protobuf_Mine_GameSavInfo nulldata = null;
|
||||
respData.SavDataList.Add(nulldata);
|
||||
respData.SavDataList.Add(nulldata);
|
||||
respData.SavDataList.Add(nulldata);
|
||||
respData.SavDataList.Add(nulldata);
|
||||
respData.SavDataList.Add(new Protobuf_Mine_GameSavInfo() { BHadSaveData = false, SavDataIdx = 0 });
|
||||
respData.SavDataList.Add(new Protobuf_Mine_GameSavInfo() { BHadSaveData = false, SavDataIdx = 1 });
|
||||
respData.SavDataList.Add(new Protobuf_Mine_GameSavInfo() { BHadSaveData = false, SavDataIdx = 2 });
|
||||
respData.SavDataList.Add(new Protobuf_Mine_GameSavInfo() { BHadSaveData = false, SavDataIdx = 3 });
|
||||
|
||||
string query = "SELECT `id`,`uid`,`romid`, `savidx`, `savName`,`savNote`, `savUrl`,`savImgUrl`, `savDate`, `savSequence` from user_gamesavedata where uid = ?uid and romid = ?romid";
|
||||
bool bHad = false;
|
||||
@ -44,28 +43,24 @@ namespace AxibugEmuOnline.Server.Manager
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
Protobuf_Mine_GameSavInfo resp = new Protobuf_Mine_GameSavInfo()
|
||||
{
|
||||
BHadSaveData = true,
|
||||
SavID = reader.GetInt64(0),
|
||||
Uid = reader.GetInt64(1),
|
||||
RomID = reader.GetInt32(2),
|
||||
SavDataIdx = reader.GetInt32(3),
|
||||
SavName = reader.GetString(4),
|
||||
Note = reader.GetString(5),
|
||||
SavUrl = reader.GetString(6),
|
||||
SavImgUrl = reader.GetString(7),
|
||||
SavDate = reader.GetDateTime(8).ToString(),
|
||||
Sequence = reader.GetInt32(9),
|
||||
GamePlatformType = AppSrv.g_GameShareMgr.GetRomPlatformType(msg.RomID)
|
||||
};
|
||||
respData.SavDataList[resp.SavDataIdx] = resp;
|
||||
int savidx = reader.GetInt32(3);
|
||||
respData.SavDataList[savidx].BHadSaveData = true;
|
||||
respData.SavDataList[savidx].SavID = reader.GetInt64(0);
|
||||
respData.SavDataList[savidx].Uid = reader.GetInt64(1);
|
||||
respData.SavDataList[savidx].RomID = reader.GetInt32(2);
|
||||
respData.SavDataList[savidx].SavDataIdx = savidx;
|
||||
respData.SavDataList[savidx].SavName = reader.GetString(4);
|
||||
respData.SavDataList[savidx].Note = reader.GetString(5);
|
||||
respData.SavDataList[savidx].SavUrl = reader.GetString(6);
|
||||
respData.SavDataList[savidx].SavImgUrl = reader.GetString(7);
|
||||
respData.SavDataList[savidx].SavDate = reader.GetDateTime(8).ToString();
|
||||
respData.SavDataList[savidx].Sequence = reader.GetInt32(9);
|
||||
respData.SavDataList[savidx].GamePlatformType = AppSrv.g_GameShareMgr.GetRomPlatformType(msg.RomID);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
respData.RomID = msg.RomID;
|
||||
AppSrv.g_ClientMgr.ClientSend(_c, (int)CommandID.CmdGamesavGetGameSavList, (int)ErrorCode.ErrorOk, ProtoBufHelper.Serizlize(respData));
|
||||
}
|
||||
|
||||
@ -170,12 +165,15 @@ namespace AxibugEmuOnline.Server.Manager
|
||||
{
|
||||
byte[] StateRawData = msg.StateRaw.ToArray();
|
||||
byte[] ImgData = msg.SavImg.ToArray();
|
||||
GetNewRomPath(_c.UID, ptype, msg.RomID, msg.SavDataIdx, $"{msg.SavDataIdx}.axisav", out string rompath);
|
||||
GetNewRomPath(_c.UID, ptype, msg.RomID, msg.SavDataIdx, $"{msg.SavDataIdx}.axiimg", out string imgpath);
|
||||
GetNewRomPath(_c.UID, ptype, msg.RomID, msg.SavDataIdx, $"{msg.SavDataIdx}.sav", out string rompath);
|
||||
GetNewRomPath(_c.UID, ptype, msg.RomID, msg.SavDataIdx, $"{msg.SavDataIdx}.jpg", out string imgpath);
|
||||
|
||||
if (!CreateFile(Path.Combine(Config.cfg.savDataPath, rompath), StateRawData)
|
||||
||
|
||||
!CreateFile(Path.Combine(Config.cfg.savDataPath, imgpath), StateRawData)
|
||||
ImgData = Helper.DecompressByteArray(ImgData);
|
||||
|
||||
if (
|
||||
CreateFile(Path.Combine(Config.cfg.savDataPath, rompath), StateRawData)
|
||||
&&
|
||||
CreateFile(Path.Combine(Config.cfg.savDataPath, imgpath), ImgData)
|
||||
)
|
||||
{
|
||||
//INSERT INTO `haoyue_emu`.`user_gamesavedata` ( `uid`, `romid`, `savidx`, `savName`, `savNote`, `savUrl`, `savImgUrl`, `savDate`) VALUES ( 0, 0, 2147483647, '', '', '', '', '0000-00-00 00:00:00');
|
||||
@ -205,6 +203,10 @@ namespace AxibugEmuOnline.Server.Manager
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
errCode = ErrorCode.ErrorRomFailSavedata;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -256,6 +258,7 @@ namespace AxibugEmuOnline.Server.Manager
|
||||
{
|
||||
fs.Write(data, 0, data.Length);
|
||||
}
|
||||
AppSrv.g_Log.Error($"CreeateFile {path}");
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
||||
@ -4,7 +4,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
|
||||
-->
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<History>True|2025-02-25T02:21:20.8779432Z||;False|2025-02-25T10:20:39.1249758+08:00||;False|2025-02-24T23:48:17.6638177+08:00||;True|2025-01-09T14:39:17.5797829+08:00||;True|2025-01-09T14:39:05.6042660+08:00||;True|2025-01-09T14:33:09.1944386+08:00||;</History>
|
||||
<History>True|2025-03-20T03:08:16.2733764Z||;True|2025-02-25T10:21:20.8779432+08:00||;False|2025-02-25T10:20:39.1249758+08:00||;False|2025-02-24T23:48:17.6638177+08:00||;True|2025-01-09T14:39:17.5797829+08:00||;True|2025-01-09T14:39:05.6042660+08:00||;True|2025-01-09T14:33:09.1944386+08:00||;</History>
|
||||
<LastFailureDetails />
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@ -4,7 +4,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
|
||||
-->
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<History>True|2025-02-25T02:21:36.3766073Z||;True|2025-01-13T16:07:43.4441316+08:00||;True|2025-01-09T15:02:05.2160606+08:00||;True|2025-01-09T14:48:42.5299550+08:00||;False|2025-01-09T14:48:02.6306184+08:00||;True|2025-01-09T14:17:00.2185117+08:00||;True|2025-01-08T23:13:47.7309044+08:00||;True|2025-01-08T13:32:52.0590130+08:00||;True|2025-01-08T13:31:56.8589678+08:00||;True|2025-01-07T13:54:02.0272718+08:00||;True|2025-01-07T10:47:36.6196477+08:00||;True|2025-01-07T01:21:34.5863249+08:00||;False|2025-01-07T01:20:39.5344134+08:00||;True|2025-01-07T00:21:47.4863058+08:00||;True|2025-01-07T00:16:42.7998249+08:00||;False|2025-01-07T00:16:02.8107509+08:00||;False|2025-01-02T15:36:18.1906464+08:00||;False|2025-01-02T15:36:06.5622643+08:00||;True|2024-12-27T18:24:49.7554320+08:00||;</History>
|
||||
<History>True|2025-04-08T02:53:45.4627796Z||;True|2025-03-20T11:11:37.9448343+08:00||;True|2025-03-20T11:08:47.5054452+08:00||;True|2025-03-17T16:50:47.6205583+08:00||;True|2025-02-25T10:21:36.3766073+08:00||;True|2025-01-13T16:07:43.4441316+08:00||;True|2025-01-09T15:02:05.2160606+08:00||;True|2025-01-09T14:48:42.5299550+08:00||;False|2025-01-09T14:48:02.6306184+08:00||;True|2025-01-09T14:17:00.2185117+08:00||;True|2025-01-08T23:13:47.7309044+08:00||;True|2025-01-08T13:32:52.0590130+08:00||;True|2025-01-08T13:31:56.8589678+08:00||;True|2025-01-07T13:54:02.0272718+08:00||;True|2025-01-07T10:47:36.6196477+08:00||;True|2025-01-07T01:21:34.5863249+08:00||;False|2025-01-07T01:20:39.5344134+08:00||;True|2025-01-07T00:21:47.4863058+08:00||;True|2025-01-07T00:16:42.7998249+08:00||;False|2025-01-07T00:16:02.8107509+08:00||;False|2025-01-02T15:36:18.1906464+08:00||;False|2025-01-02T15:36:06.5622643+08:00||;True|2024-12-27T18:24:49.7554320+08:00||;</History>
|
||||
<LastFailureDetails />
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@ -141,34 +141,35 @@ namespace AxibugProtobuf {
|
||||
"bnB1dBD6LhIdChhDTURfUk9PTV9TWU5fUGxheWVySW5wdXQQ/y4SDwoKQ01E",
|
||||
"X1NjcmVlbhDZNhIfChpDTURfR0FNRVNBVl9HZXRHYW1lU2F2TGlzdBDBPhIb",
|
||||
"ChZDTURfR0FNRVNBVl9EZWxHYW1lU2F2EMU+Eh4KGUNNRF9HQU1FU0FWX1Vw",
|
||||
"bG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dBTUVfTUFSSxD1TirxAQoJRXJyb3JD",
|
||||
"bG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dBTUVfTUFSSxD1TiqOAgoJRXJyb3JD",
|
||||
"b2RlEhAKDEVSUk9SX0RFRkFVTBAAEgwKCEVSUk9SX09LEAESGAoURVJST1Jf",
|
||||
"Uk9PTV9OT1RfRk9VTkQQChInCiNFUlJPUl9ST09NX1NMT1RfQUxSRUFETFlf",
|
||||
"SEFEX1BMQVlFUhALEiEKHUVSUk9SX1JPT01fQ0FOVF9ET19DVVJSX1NUQVRF",
|
||||
"EDISHwobRVJST1JfUk9NX0RPTlRfSEFEX1NBVkVEQVRBEFASHwoaRVJST1Jf",
|
||||
"Uk9NX0FMUkVBRFlfSEFEX1NUQVIQkwMSHAoXRVJST1JfUk9NX0RPTlRfSEFE",
|
||||
"X1NUQVIQlAMqQAoJTG9naW5UeXBlEg0KCVVzZURldmljZRAAEg4KClVzZUFj",
|
||||
"Y291bnQQARIUChBVc2VIYW9ZdWVBY2NvdW50EAIqpQEKCkRldmljZVR5cGUS",
|
||||
"FgoSRGV2aWNlVHlwZV9EZWZhdWx0EAASBgoCUEMQARILCgdBbmRyb2lkEAIS",
|
||||
"BwoDSU9TEAMSBwoDUFNWEAQSBwoDUFMzEAUSBwoDUFM0EAYSCwoHWEJPWDM2",
|
||||
"MBAHEgsKB1hCT1hPTkUQCBIICgRXaWlVEAkSDwoLTmludGVuZG8zRFMQChIR",
|
||||
"Cg1BbmRyb2lkQ2FyQXBwEAsqkwIKC0dhbWVQYWRUeXBlEgwKCEtleWJvYXJk",
|
||||
"EAASEQoNR2xvYmFsR2FtZVBhZBABEg4KClRvdWNoUGFuZWwQAhIOCgpEUzND",
|
||||
"b250cm9sEAMSDgoKRFM0Q29udHJvbBAEEg4KCkRTNUNvbnRyb2wQBRIUChBT",
|
||||
"d2l0Y2hQcm9Db250cm9sEAYSEAoMU3dpdGNoSm95Q29uEAcSEgoOWEJPWDM2",
|
||||
"MENvbnRyb2wQCBISCg5YQk9YT05FQ29udHJvbBAJEhEKDVBTVml0YUNvbnRy",
|
||||
"b2wQChISCg5XaWlVUGFkQ29udHJvbBALEhQKEFdpaVJlbW90ZUNvbnRyb2wQ",
|
||||
"DBIWChJOaW50ZW5kbzNEU0NvbnRyb2wQDSqDAgoPUm9tUGxhdGZvcm1UeXBl",
|
||||
"EgsKB0ludmFsaWQQABIHCgNOZXMQARIRCg1NYXN0ZXJfU3lzdGVtEAISDQoJ",
|
||||
"R2FtZV9HZWFyEAMSDAoIR2FtZV9Cb3kQBBISCg5HYW1lX0JveV9Db2xvchAF",
|
||||
"EhEKDUNvbGVjb19WaXNpb24QBhILCgdTQ18zMDAwEAcSCwoHU0dfMTAwMBAI",
|
||||
"EgoKBk5FT0dFTxAUEgcKA0lHUxAVEggKBENQUzEQFhIICgRDUFMyEBcSDgoK",
|
||||
"QXJjYWRlX09MRBAeEg8KC1dvbmRlcl9Td2FuECgSFQoRV29uZGVyX1N3YW5f",
|
||||
"Q29sb3IQKRIICgNBbGwQ5wcqcAoNUm9vbUdhbWVTdGF0ZRISCg5Ob25lX0dh",
|
||||
"bWVTdGF0ZRAAEgwKCE9ubHlIb3N0EAESEQoNV2FpdFJhd1VwZGF0ZRACEg0K",
|
||||
"CVdhaXRSZWFkeRADEgkKBVBhdXNlEAQSEAoMSW5PbmxpbmVHYW1lEAUqTgoR",
|
||||
"TG9naW5SZXN1bHRTdGF0dXMSIQodTG9naW5SZXN1bHRTdGF0dXNfQmFzZURl",
|
||||
"ZmF1bHQQABIGCgJPSxABEg4KCkFjY291bnRFcnIQAkICSAFiBnByb3RvMw=="));
|
||||
"EDISHwobRVJST1JfUk9NX0RPTlRfSEFEX1NBVkVEQVRBEFASGwoXRVJST1Jf",
|
||||
"Uk9NX0ZBSUxfU0FWRURBVEEQURIfChpFUlJPUl9ST01fQUxSRUFEWV9IQURf",
|
||||
"U1RBUhCTAxIcChdFUlJPUl9ST01fRE9OVF9IQURfU1RBUhCUAypACglMb2dp",
|
||||
"blR5cGUSDQoJVXNlRGV2aWNlEAASDgoKVXNlQWNjb3VudBABEhQKEFVzZUhh",
|
||||
"b1l1ZUFjY291bnQQAiqlAQoKRGV2aWNlVHlwZRIWChJEZXZpY2VUeXBlX0Rl",
|
||||
"ZmF1bHQQABIGCgJQQxABEgsKB0FuZHJvaWQQAhIHCgNJT1MQAxIHCgNQU1YQ",
|
||||
"BBIHCgNQUzMQBRIHCgNQUzQQBhILCgdYQk9YMzYwEAcSCwoHWEJPWE9ORRAI",
|
||||
"EggKBFdpaVUQCRIPCgtOaW50ZW5kbzNEUxAKEhEKDUFuZHJvaWRDYXJBcHAQ",
|
||||
"CyqTAgoLR2FtZVBhZFR5cGUSDAoIS2V5Ym9hcmQQABIRCg1HbG9iYWxHYW1l",
|
||||
"UGFkEAESDgoKVG91Y2hQYW5lbBACEg4KCkRTM0NvbnRyb2wQAxIOCgpEUzRD",
|
||||
"b250cm9sEAQSDgoKRFM1Q29udHJvbBAFEhQKEFN3aXRjaFByb0NvbnRyb2wQ",
|
||||
"BhIQCgxTd2l0Y2hKb3lDb24QBxISCg5YQk9YMzYwQ29udHJvbBAIEhIKDlhC",
|
||||
"T1hPTkVDb250cm9sEAkSEQoNUFNWaXRhQ29udHJvbBAKEhIKDldpaVVQYWRD",
|
||||
"b250cm9sEAsSFAoQV2lpUmVtb3RlQ29udHJvbBAMEhYKEk5pbnRlbmRvM0RT",
|
||||
"Q29udHJvbBANKoMCCg9Sb21QbGF0Zm9ybVR5cGUSCwoHSW52YWxpZBAAEgcK",
|
||||
"A05lcxABEhEKDU1hc3Rlcl9TeXN0ZW0QAhINCglHYW1lX0dlYXIQAxIMCghH",
|
||||
"YW1lX0JveRAEEhIKDkdhbWVfQm95X0NvbG9yEAUSEQoNQ29sZWNvX1Zpc2lv",
|
||||
"bhAGEgsKB1NDXzMwMDAQBxILCgdTR18xMDAwEAgSCgoGTkVPR0VPEBQSBwoD",
|
||||
"SUdTEBUSCAoEQ1BTMRAWEggKBENQUzIQFxIOCgpBcmNhZGVfT0xEEB4SDwoL",
|
||||
"V29uZGVyX1N3YW4QKBIVChFXb25kZXJfU3dhbl9Db2xvchApEggKA0FsbBDn",
|
||||
"BypwCg1Sb29tR2FtZVN0YXRlEhIKDk5vbmVfR2FtZVN0YXRlEAASDAoIT25s",
|
||||
"eUhvc3QQARIRCg1XYWl0UmF3VXBkYXRlEAISDQoJV2FpdFJlYWR5EAMSCQoF",
|
||||
"UGF1c2UQBBIQCgxJbk9ubGluZUdhbWUQBSpOChFMb2dpblJlc3VsdFN0YXR1",
|
||||
"cxIhCh1Mb2dpblJlc3VsdFN0YXR1c19CYXNlRGVmYXVsdBAAEgYKAk9LEAES",
|
||||
"DgoKQWNjb3VudEVychACQgJIAWIGcHJvdG8z"));
|
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||
new pbr::FileDescriptor[] { },
|
||||
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::AxibugProtobuf.CommandID), typeof(global::AxibugProtobuf.ErrorCode), typeof(global::AxibugProtobuf.LoginType), typeof(global::AxibugProtobuf.DeviceType), typeof(global::AxibugProtobuf.GamePadType), typeof(global::AxibugProtobuf.RomPlatformType), typeof(global::AxibugProtobuf.RoomGameState), typeof(global::AxibugProtobuf.LoginResultStatus), }, null, new pbr::GeneratedClrTypeInfo[] {
|
||||
@ -395,6 +396,10 @@ namespace AxibugProtobuf {
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_DONT_HAD_SAVEDATA")] ErrorRomDontHadSavedata = 80,
|
||||
/// <summary>
|
||||
///即时存档不存在
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_FAIL_SAVEDATA")] ErrorRomFailSavedata = 81,
|
||||
/// <summary>
|
||||
///已经收藏
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_ALREADY_HAD_STAR")] ErrorRomAlreadyHadStar = 403,
|
||||
|
||||
@ -141,34 +141,35 @@ namespace AxibugProtobuf {
|
||||
"bnB1dBD6LhIdChhDTURfUk9PTV9TWU5fUGxheWVySW5wdXQQ/y4SDwoKQ01E",
|
||||
"X1NjcmVlbhDZNhIfChpDTURfR0FNRVNBVl9HZXRHYW1lU2F2TGlzdBDBPhIb",
|
||||
"ChZDTURfR0FNRVNBVl9EZWxHYW1lU2F2EMU+Eh4KGUNNRF9HQU1FU0FWX1Vw",
|
||||
"bG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dBTUVfTUFSSxD1TirxAQoJRXJyb3JD",
|
||||
"bG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dBTUVfTUFSSxD1TiqOAgoJRXJyb3JD",
|
||||
"b2RlEhAKDEVSUk9SX0RFRkFVTBAAEgwKCEVSUk9SX09LEAESGAoURVJST1Jf",
|
||||
"Uk9PTV9OT1RfRk9VTkQQChInCiNFUlJPUl9ST09NX1NMT1RfQUxSRUFETFlf",
|
||||
"SEFEX1BMQVlFUhALEiEKHUVSUk9SX1JPT01fQ0FOVF9ET19DVVJSX1NUQVRF",
|
||||
"EDISHwobRVJST1JfUk9NX0RPTlRfSEFEX1NBVkVEQVRBEFASHwoaRVJST1Jf",
|
||||
"Uk9NX0FMUkVBRFlfSEFEX1NUQVIQkwMSHAoXRVJST1JfUk9NX0RPTlRfSEFE",
|
||||
"X1NUQVIQlAMqQAoJTG9naW5UeXBlEg0KCVVzZURldmljZRAAEg4KClVzZUFj",
|
||||
"Y291bnQQARIUChBVc2VIYW9ZdWVBY2NvdW50EAIqpQEKCkRldmljZVR5cGUS",
|
||||
"FgoSRGV2aWNlVHlwZV9EZWZhdWx0EAASBgoCUEMQARILCgdBbmRyb2lkEAIS",
|
||||
"BwoDSU9TEAMSBwoDUFNWEAQSBwoDUFMzEAUSBwoDUFM0EAYSCwoHWEJPWDM2",
|
||||
"MBAHEgsKB1hCT1hPTkUQCBIICgRXaWlVEAkSDwoLTmludGVuZG8zRFMQChIR",
|
||||
"Cg1BbmRyb2lkQ2FyQXBwEAsqkwIKC0dhbWVQYWRUeXBlEgwKCEtleWJvYXJk",
|
||||
"EAASEQoNR2xvYmFsR2FtZVBhZBABEg4KClRvdWNoUGFuZWwQAhIOCgpEUzND",
|
||||
"b250cm9sEAMSDgoKRFM0Q29udHJvbBAEEg4KCkRTNUNvbnRyb2wQBRIUChBT",
|
||||
"d2l0Y2hQcm9Db250cm9sEAYSEAoMU3dpdGNoSm95Q29uEAcSEgoOWEJPWDM2",
|
||||
"MENvbnRyb2wQCBISCg5YQk9YT05FQ29udHJvbBAJEhEKDVBTVml0YUNvbnRy",
|
||||
"b2wQChISCg5XaWlVUGFkQ29udHJvbBALEhQKEFdpaVJlbW90ZUNvbnRyb2wQ",
|
||||
"DBIWChJOaW50ZW5kbzNEU0NvbnRyb2wQDSqDAgoPUm9tUGxhdGZvcm1UeXBl",
|
||||
"EgsKB0ludmFsaWQQABIHCgNOZXMQARIRCg1NYXN0ZXJfU3lzdGVtEAISDQoJ",
|
||||
"R2FtZV9HZWFyEAMSDAoIR2FtZV9Cb3kQBBISCg5HYW1lX0JveV9Db2xvchAF",
|
||||
"EhEKDUNvbGVjb19WaXNpb24QBhILCgdTQ18zMDAwEAcSCwoHU0dfMTAwMBAI",
|
||||
"EgoKBk5FT0dFTxAUEgcKA0lHUxAVEggKBENQUzEQFhIICgRDUFMyEBcSDgoK",
|
||||
"QXJjYWRlX09MRBAeEg8KC1dvbmRlcl9Td2FuECgSFQoRV29uZGVyX1N3YW5f",
|
||||
"Q29sb3IQKRIICgNBbGwQ5wcqcAoNUm9vbUdhbWVTdGF0ZRISCg5Ob25lX0dh",
|
||||
"bWVTdGF0ZRAAEgwKCE9ubHlIb3N0EAESEQoNV2FpdFJhd1VwZGF0ZRACEg0K",
|
||||
"CVdhaXRSZWFkeRADEgkKBVBhdXNlEAQSEAoMSW5PbmxpbmVHYW1lEAUqTgoR",
|
||||
"TG9naW5SZXN1bHRTdGF0dXMSIQodTG9naW5SZXN1bHRTdGF0dXNfQmFzZURl",
|
||||
"ZmF1bHQQABIGCgJPSxABEg4KCkFjY291bnRFcnIQAkICSAFiBnByb3RvMw=="));
|
||||
"EDISHwobRVJST1JfUk9NX0RPTlRfSEFEX1NBVkVEQVRBEFASGwoXRVJST1Jf",
|
||||
"Uk9NX0ZBSUxfU0FWRURBVEEQURIfChpFUlJPUl9ST01fQUxSRUFEWV9IQURf",
|
||||
"U1RBUhCTAxIcChdFUlJPUl9ST01fRE9OVF9IQURfU1RBUhCUAypACglMb2dp",
|
||||
"blR5cGUSDQoJVXNlRGV2aWNlEAASDgoKVXNlQWNjb3VudBABEhQKEFVzZUhh",
|
||||
"b1l1ZUFjY291bnQQAiqlAQoKRGV2aWNlVHlwZRIWChJEZXZpY2VUeXBlX0Rl",
|
||||
"ZmF1bHQQABIGCgJQQxABEgsKB0FuZHJvaWQQAhIHCgNJT1MQAxIHCgNQU1YQ",
|
||||
"BBIHCgNQUzMQBRIHCgNQUzQQBhILCgdYQk9YMzYwEAcSCwoHWEJPWE9ORRAI",
|
||||
"EggKBFdpaVUQCRIPCgtOaW50ZW5kbzNEUxAKEhEKDUFuZHJvaWRDYXJBcHAQ",
|
||||
"CyqTAgoLR2FtZVBhZFR5cGUSDAoIS2V5Ym9hcmQQABIRCg1HbG9iYWxHYW1l",
|
||||
"UGFkEAESDgoKVG91Y2hQYW5lbBACEg4KCkRTM0NvbnRyb2wQAxIOCgpEUzRD",
|
||||
"b250cm9sEAQSDgoKRFM1Q29udHJvbBAFEhQKEFN3aXRjaFByb0NvbnRyb2wQ",
|
||||
"BhIQCgxTd2l0Y2hKb3lDb24QBxISCg5YQk9YMzYwQ29udHJvbBAIEhIKDlhC",
|
||||
"T1hPTkVDb250cm9sEAkSEQoNUFNWaXRhQ29udHJvbBAKEhIKDldpaVVQYWRD",
|
||||
"b250cm9sEAsSFAoQV2lpUmVtb3RlQ29udHJvbBAMEhYKEk5pbnRlbmRvM0RT",
|
||||
"Q29udHJvbBANKoMCCg9Sb21QbGF0Zm9ybVR5cGUSCwoHSW52YWxpZBAAEgcK",
|
||||
"A05lcxABEhEKDU1hc3Rlcl9TeXN0ZW0QAhINCglHYW1lX0dlYXIQAxIMCghH",
|
||||
"YW1lX0JveRAEEhIKDkdhbWVfQm95X0NvbG9yEAUSEQoNQ29sZWNvX1Zpc2lv",
|
||||
"bhAGEgsKB1NDXzMwMDAQBxILCgdTR18xMDAwEAgSCgoGTkVPR0VPEBQSBwoD",
|
||||
"SUdTEBUSCAoEQ1BTMRAWEggKBENQUzIQFxIOCgpBcmNhZGVfT0xEEB4SDwoL",
|
||||
"V29uZGVyX1N3YW4QKBIVChFXb25kZXJfU3dhbl9Db2xvchApEggKA0FsbBDn",
|
||||
"BypwCg1Sb29tR2FtZVN0YXRlEhIKDk5vbmVfR2FtZVN0YXRlEAASDAoIT25s",
|
||||
"eUhvc3QQARIRCg1XYWl0UmF3VXBkYXRlEAISDQoJV2FpdFJlYWR5EAMSCQoF",
|
||||
"UGF1c2UQBBIQCgxJbk9ubGluZUdhbWUQBSpOChFMb2dpblJlc3VsdFN0YXR1",
|
||||
"cxIhCh1Mb2dpblJlc3VsdFN0YXR1c19CYXNlRGVmYXVsdBAAEgYKAk9LEAES",
|
||||
"DgoKQWNjb3VudEVychACQgJIAWIGcHJvdG8z"));
|
||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||
new pbr::FileDescriptor[] { },
|
||||
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::AxibugProtobuf.CommandID), typeof(global::AxibugProtobuf.ErrorCode), typeof(global::AxibugProtobuf.LoginType), typeof(global::AxibugProtobuf.DeviceType), typeof(global::AxibugProtobuf.GamePadType), typeof(global::AxibugProtobuf.RomPlatformType), typeof(global::AxibugProtobuf.RoomGameState), typeof(global::AxibugProtobuf.LoginResultStatus), }, null, new pbr::GeneratedClrTypeInfo[] {
|
||||
@ -395,6 +396,10 @@ namespace AxibugProtobuf {
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_DONT_HAD_SAVEDATA")] ErrorRomDontHadSavedata = 80,
|
||||
/// <summary>
|
||||
///即时存档不存在
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_FAIL_SAVEDATA")] ErrorRomFailSavedata = 81,
|
||||
/// <summary>
|
||||
///已经收藏
|
||||
/// </summary>
|
||||
[pbr::OriginalName("ERROR_ROM_ALREADY_HAD_STAR")] ErrorRomAlreadyHadStar = 403,
|
||||
|
||||
@ -85,6 +85,7 @@ enum ErrorCode
|
||||
ERROR_ROOM_CANT_DO_CURR_STATE =50;//当前房间状态不允许本操作
|
||||
|
||||
ERROR_ROM_DONT_HAD_SAVEDATA = 80;//即时存档不存在
|
||||
ERROR_ROM_FAIL_SAVEDATA = 81;//即时存档不存在
|
||||
|
||||
ERROR_ROM_ALREADY_HAD_STAR =403;//已经收藏
|
||||
ERROR_ROM_DONT_HAD_STAR =404;//并没有收藏
|
||||
|
||||
Loading…
Reference in New Issue
Block a user