forked from sin365/AxibugEmuOnline
Compare commits
7 Commits
Author | SHA1 | Date | |
---|---|---|---|
5687995315 | |||
9f6d7dba8b | |||
aebdf6824b | |||
8494f67229 | |||
85b175f831 | |||
7b1d97873b | |||
4eb5630356 |
@ -89,8 +89,16 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
OnRomStarStateChanged,
|
OnRomStarStateChanged,
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 网络即时存档列表更新
|
/// 网络即时存档拉取成功
|
||||||
/// </summary>
|
/// </summary>
|
||||||
OnNetGameSavListUpdate,
|
OnNetGameSavListGot,
|
||||||
|
/// <summary>
|
||||||
|
/// 网络即时存档删除
|
||||||
|
/// </summary>
|
||||||
|
OnNetGameSavDeleted,
|
||||||
|
/// <summary>
|
||||||
|
/// 网络即时存档上传成功
|
||||||
|
/// </summary>
|
||||||
|
OnNetUploaded,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,14 +3,12 @@ using AxibugEmuOnline.Client.Common;
|
|||||||
using AxibugEmuOnline.Client.Event;
|
using AxibugEmuOnline.Client.Event;
|
||||||
using AxibugEmuOnline.Client.Network;
|
using AxibugEmuOnline.Client.Network;
|
||||||
using AxibugProtobuf;
|
using AxibugProtobuf;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|
||||||
namespace AxibugEmuOnline.Client.Manager
|
namespace AxibugEmuOnline.Client.Manager
|
||||||
{
|
{
|
||||||
public class AppGameSavMgr
|
public class AppGameSavMgr
|
||||||
{
|
{
|
||||||
Dictionary<int, Protobuf_Mine_GameSavInfo[]> dictRomId2SavInfo = new Dictionary<int, Protobuf_Mine_GameSavInfo[]>();
|
|
||||||
public AppGameSavMgr()
|
public AppGameSavMgr()
|
||||||
{
|
{
|
||||||
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavGetGameSavList, RecvGetGameSavList);
|
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavGetGameSavList, RecvGetGameSavList);
|
||||||
@ -18,20 +16,6 @@ namespace AxibugEmuOnline.Client.Manager
|
|||||||
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavUploadGameSav, RecvUpLoadGameSav);
|
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavUploadGameSav, RecvUpLoadGameSav);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 从数据层取存档列表数据(一般是OnNetGameSavListUpdate事件来了之后来取数据)
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="RomID"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public Protobuf_Mine_GameSavInfo[] GetRomSaveIDList(int RomID)
|
|
||||||
{
|
|
||||||
if (!dictRomId2SavInfo.ContainsKey(RomID))
|
|
||||||
{
|
|
||||||
dictRomId2SavInfo[RomID] = null;
|
|
||||||
}
|
|
||||||
return dictRomId2SavInfo[RomID];
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 发送请求即时存档列表
|
/// 发送请求即时存档列表
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -49,14 +33,13 @@ namespace AxibugEmuOnline.Client.Manager
|
|||||||
void RecvGetGameSavList(byte[] reqData)
|
void RecvGetGameSavList(byte[] reqData)
|
||||||
{
|
{
|
||||||
Protobuf_Mine_GetGameSavList_RESP msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_GetGameSavList_RESP>(reqData);
|
Protobuf_Mine_GetGameSavList_RESP msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_GetGameSavList_RESP>(reqData);
|
||||||
|
Protobuf_Mine_GameSavInfo[] savArr = new Protobuf_Mine_GameSavInfo[4];
|
||||||
Protobuf_Mine_GameSavInfo[] savArr = GetRomSaveIDList(msg.RomID);
|
|
||||||
for (int i = 0; i < savArr.Length; i++)
|
for (int i = 0; i < savArr.Length; i++)
|
||||||
{
|
{
|
||||||
Protobuf_Mine_GameSavInfo info = msg.SavDataList.FirstOrDefault(w => w.SavDataIdx == i);
|
Protobuf_Mine_GameSavInfo info = msg.SavDataList.FirstOrDefault(w => w.SavDataIdx == i);
|
||||||
savArr[i] = info;
|
savArr[i] = info;
|
||||||
}
|
}
|
||||||
Eventer.Instance.PostEvent(EEvent.OnNetGameSavListUpdate, msg.RomID);
|
Eventer.Instance.PostEvent(EEvent.OnNetGameSavListGot, msg.RomID, savArr);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -64,7 +47,7 @@ namespace AxibugEmuOnline.Client.Manager
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="RomID"></param>
|
/// <param name="RomID"></param>
|
||||||
/// <param name="SavDataIdx"></param>
|
/// <param name="SavDataIdx"></param>
|
||||||
public void SendDelGameSavList(int RomID,int SavDataIdx)
|
public void SendDelGameSavList(int RomID, int SavDataIdx)
|
||||||
{
|
{
|
||||||
Protobuf_Mine_DelGameSav req = new Protobuf_Mine_DelGameSav()
|
Protobuf_Mine_DelGameSav req = new Protobuf_Mine_DelGameSav()
|
||||||
{
|
{
|
||||||
@ -78,10 +61,7 @@ namespace AxibugEmuOnline.Client.Manager
|
|||||||
void RecvDelGameSavList(byte[] reqData)
|
void RecvDelGameSavList(byte[] reqData)
|
||||||
{
|
{
|
||||||
Protobuf_Mine_DelGameSav_RESP msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_DelGameSav_RESP>(reqData);
|
Protobuf_Mine_DelGameSav_RESP msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_DelGameSav_RESP>(reqData);
|
||||||
|
Eventer.Instance.PostEvent(EEvent.OnNetGameSavDeleted, msg.RomID, msg.SavDataIdx);
|
||||||
Protobuf_Mine_GameSavInfo[] savArr = GetRomSaveIDList(msg.RomID);
|
|
||||||
savArr[msg.SavDataIdx] = null;
|
|
||||||
Eventer.Instance.PostEvent(EEvent.OnNetGameSavListUpdate, msg.RomID);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -89,7 +69,7 @@ namespace AxibugEmuOnline.Client.Manager
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="RomID"></param>
|
/// <param name="RomID"></param>
|
||||||
/// <param name="SavDataIdx"></param>
|
/// <param name="SavDataIdx"></param>
|
||||||
public void SendUpLoadGameSav(int RomID,int SavDataIdx, byte[] RawData, byte[] SavImgData)
|
public void SendUpLoadGameSav(int RomID, int SavDataIdx, byte[] RawData, byte[] SavImgData)
|
||||||
{
|
{
|
||||||
//压缩
|
//压缩
|
||||||
byte[] compressRawData = Helper.CompressByteArray(RawData);
|
byte[] compressRawData = Helper.CompressByteArray(RawData);
|
||||||
@ -115,10 +95,7 @@ namespace AxibugEmuOnline.Client.Manager
|
|||||||
void RecvUpLoadGameSav(byte[] reqData)
|
void RecvUpLoadGameSav(byte[] reqData)
|
||||||
{
|
{
|
||||||
Protobuf_Mine_UpLoadGameSav_RESP msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_UpLoadGameSav_RESP>(reqData);
|
Protobuf_Mine_UpLoadGameSav_RESP msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_UpLoadGameSav_RESP>(reqData);
|
||||||
|
Eventer.Instance.PostEvent(EEvent.OnNetUploaded, msg.RomID,msg.SavDataIdx, msg.UploadSevInfo);
|
||||||
Protobuf_Mine_GameSavInfo[] savArr = GetRomSaveIDList(msg.RomID);
|
|
||||||
savArr[msg.UploadSevInfo.SavDataIdx] = msg.UploadSevInfo;
|
|
||||||
Eventer.Instance.PostEvent(EEvent.OnNetGameSavListUpdate, msg.RomID);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -109,62 +109,63 @@ namespace AxibugProtobuf {
|
|||||||
"bmVfR2V0R2FtZVNhdkxpc3QSDQoFUm9tSUQYASABKAUicgohUHJvdG9idWZf",
|
"bmVfR2V0R2FtZVNhdkxpc3QSDQoFUm9tSUQYASABKAUicgohUHJvdG9idWZf",
|
||||||
"TWluZV9HZXRHYW1lU2F2TGlzdF9SRVNQEg0KBVJvbUlEGAEgASgFEj4KC1Nh",
|
"TWluZV9HZXRHYW1lU2F2TGlzdF9SRVNQEg0KBVJvbUlEGAEgASgFEj4KC1Nh",
|
||||||
"dkRhdGFMaXN0GAIgAygLMikuQXhpYnVnUHJvdG9idWYuUHJvdG9idWZfTWlu",
|
"dkRhdGFMaXN0GAIgAygLMikuQXhpYnVnUHJvdG9idWYuUHJvdG9idWZfTWlu",
|
||||||
"ZV9HYW1lU2F2SW5mbyLiAQoZUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbxIU",
|
"ZV9HYW1lU2F2SW5mbyL+AQoZUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbxIU",
|
||||||
"CgxiSGFkU2F2ZURhdGEYASABKAgSEgoKU2F2RGF0YUlkeBgCIAEoBRINCgVS",
|
"CgxiSGFkU2F2ZURhdGEYASABKAgSDQoFU2F2SUQYAiABKAMSCwoDdWlkGAMg",
|
||||||
"b21JRBgDIAEoBRI5ChBHYW1lUGxhdGZvcm1UeXBlGAQgASgOMh8uQXhpYnVn",
|
"ASgDEhIKClNhdkRhdGFJZHgYBCABKAUSDQoFUm9tSUQYBSABKAUSOQoQR2Ft",
|
||||||
"UHJvdG9idWYuUm9tUGxhdGZvcm1UeXBlEg8KB1NhdkRhdGUYBSABKAkSDwoH",
|
"ZVBsYXRmb3JtVHlwZRgGIAEoDjIfLkF4aWJ1Z1Byb3RvYnVmLlJvbVBsYXRm",
|
||||||
"U2F2TmFtZRgGIAEoCRIMCgROb3RlGAcgASgJEhEKCVNhdkltZ1VybBgIIAEo",
|
"b3JtVHlwZRIPCgdTYXZEYXRlGAcgASgJEg8KB1Nhdk5hbWUYCCABKAkSDAoE",
|
||||||
"CRIOCgZTYXZVcmwYCSABKAkiPQoYUHJvdG9idWZfTWluZV9EZWxHYW1lU2F2",
|
"Tm90ZRgJIAEoCRIRCglTYXZJbWdVcmwYCiABKAkSDgoGU2F2VXJsGAsgASgJ",
|
||||||
"Eg0KBVJvbUlEGAEgASgFEhIKClNhdkRhdGFJZHgYAiABKAUiQgodUHJvdG9i",
|
"Ij0KGFByb3RvYnVmX01pbmVfRGVsR2FtZVNhdhINCgVSb21JRBgBIAEoBRIS",
|
||||||
"dWZfTWluZV9EZWxHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSEgoKU2F2",
|
"CgpTYXZEYXRhSWR4GAIgASgFIkIKHVByb3RvYnVmX01pbmVfRGVsR2FtZVNh",
|
||||||
"RGF0YUlkeBgCIAEoBSJiChtQcm90b2J1Zl9NaW5lX1VwTG9hZEdhbWVTYXYS",
|
"dl9SRVNQEg0KBVJvbUlEGAEgASgFEhIKClNhdkRhdGFJZHgYAiABKAUifgob",
|
||||||
"DQoFUm9tSUQYASABKAUSEgoKU2F2RGF0YUlkeBgCIAEoBRIOCgZTYXZJbWcY",
|
"UHJvdG9idWZfTWluZV9VcExvYWRHYW1lU2F2Eg0KBVJvbUlEGAEgASgFEhIK",
|
||||||
"AyABKAwSEAoIU3RhdGVSYXcYBCABKAwicwogUHJvdG9idWZfTWluZV9VcExv",
|
"ClNhdkRhdGFJZHgYAiABKAUSDAoETmFtZRgDIAEoCRIMCgROb3RlGAQgASgJ",
|
||||||
"YWRHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSQAoNVXBsb2FkU2V2SW5m",
|
"Eg4KBlNhdkltZxgFIAEoDBIQCghTdGF0ZVJhdxgGIAEoDCKHAQogUHJvdG9i",
|
||||||
"bxgCIAEoCzIpLkF4aWJ1Z1Byb3RvYnVmLlByb3RvYnVmX01pbmVfR2FtZVNh",
|
"dWZfTWluZV9VcExvYWRHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSEgoK",
|
||||||
"dkluZm8q/wUKCUNvbW1hbmRJRBIOCgpDTURfREVGQVVMEAASDAoIQ01EX1BJ",
|
"U2F2RGF0YUlkeBgCIAEoBRJACg1VcGxvYWRTZXZJbmZvGAMgASgLMikuQXhp",
|
||||||
"TkcQARIMCghDTURfUE9ORxACEg4KCUNNRF9MT0dJThDRDxIYChNDTURfVVNF",
|
"YnVnUHJvdG9idWYuUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbyr/BQoJQ29t",
|
||||||
"Ul9PTkxJTkVMSVNUELgXEhIKDUNNRF9VU0VSX0pPSU4Q1xcSEwoOQ01EX1VT",
|
"bWFuZElEEg4KCkNNRF9ERUZBVUwQABIMCghDTURfUElORxABEgwKCENNRF9Q",
|
||||||
"RVJfTEVBVkUQ2BcSGgoVQ01EX1VTRVJfU1RBVEVfVVBEQVRFENkXEhgKE0NN",
|
"T05HEAISDgoJQ01EX0xPR0lOENEPEhgKE0NNRF9VU0VSX09OTElORUxJU1QQ",
|
||||||
"RF9Nb2RpZnlfTmlja05hbWUQnRgSHAoXQ01EX1VwZGF0ZV9TZWxmVXNlcklu",
|
"uBcSEgoNQ01EX1VTRVJfSk9JThDXFxITCg5DTURfVVNFUl9MRUFWRRDYFxIa",
|
||||||
"Zm8QphgSHQoYQ01EX1VwZGF0ZV9PdGhlclVzZXJJbmZvEKgYEhAKC0NNRF9D",
|
"ChVDTURfVVNFUl9TVEFURV9VUERBVEUQ2RcSGAoTQ01EX01vZGlmeV9OaWNr",
|
||||||
"SEFUTVNHEKEfEhIKDUNNRF9Sb29tX0xpc3QQiScSGQoUQ01EX1Jvb21fTGlz",
|
"TmFtZRCdGBIcChdDTURfVXBkYXRlX1NlbGZVc2VySW5mbxCmGBIdChhDTURf",
|
||||||
"dF9VcGRhdGUQiicSGAoTQ01EX1Jvb21fR2V0X1NjcmVlbhCTJxIUCg9DTURf",
|
"VXBkYXRlX090aGVyVXNlckluZm8QqBgSEAoLQ01EX0NIQVRNU0cQoR8SEgoN",
|
||||||
"Um9vbV9DcmVhdGUQ7ScSEgoNQ01EX1Jvb21fSm9pbhDxJxITCg5DTURfUm9v",
|
"Q01EX1Jvb21fTGlzdBCJJxIZChRDTURfUm9vbV9MaXN0X1VwZGF0ZRCKJxIY",
|
||||||
"bV9MZWF2ZRDyJxIiCh1DTURfUm9vbV9NeVJvb21fU3RhdGVfQ2hhbmdlZBD2",
|
"ChNDTURfUm9vbV9HZXRfU2NyZWVuEJMnEhQKD0NNRF9Sb29tX0NyZWF0ZRDt",
|
||||||
"JxIhChxDTURfUm9vbV9DaGFuZ2VQbGF5ZXJXaXRoSm95EIooEhYKEUNNRF9S",
|
"JxISCg1DTURfUm9vbV9Kb2luEPEnEhMKDkNNRF9Sb29tX0xlYXZlEPInEiIK",
|
||||||
"b29tX1dhaXRTdGVwENEoEicKIkNNRF9Sb29tX0hvc3RQbGF5ZXJfVXBkYXRl",
|
"HUNNRF9Sb29tX015Um9vbV9TdGF0ZV9DaGFuZ2VkEPYnEiEKHENNRF9Sb29t",
|
||||||
"U3RhdGVSYXcQ1CgSGgoVQ01EX1Jvb21fUGxheWVyX1JlYWR5ENgoEiAKG0NN",
|
"X0NoYW5nZVBsYXllcldpdGhKb3kQiigSFgoRQ01EX1Jvb21fV2FpdFN0ZXAQ",
|
||||||
"RF9Sb29tX1NpbmdlbF9QbGF5ZXJJbnB1dBD6LhIdChhDTURfUk9PTV9TWU5f",
|
"0SgSJwoiQ01EX1Jvb21fSG9zdFBsYXllcl9VcGRhdGVTdGF0ZVJhdxDUKBIa",
|
||||||
"UGxheWVySW5wdXQQ/y4SDwoKQ01EX1NjcmVlbhDZNhIfChpDTURfR0FNRVNB",
|
"ChVDTURfUm9vbV9QbGF5ZXJfUmVhZHkQ2CgSIAobQ01EX1Jvb21fU2luZ2Vs",
|
||||||
"Vl9HZXRHYW1lU2F2TGlzdBDBPhIbChZDTURfR0FNRVNBVl9EZWxHYW1lU2F2",
|
"X1BsYXllcklucHV0EPouEh0KGENNRF9ST09NX1NZTl9QbGF5ZXJJbnB1dBD/",
|
||||||
"EMU+Eh4KGUNNRF9HQU1FU0FWX1VwbG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dB",
|
"LhIPCgpDTURfU2NyZWVuENk2Eh8KGkNNRF9HQU1FU0FWX0dldEdhbWVTYXZM",
|
||||||
"TUVfTUFSSxD1TirxAQoJRXJyb3JDb2RlEhAKDEVSUk9SX0RFRkFVTBAAEgwK",
|
"aXN0EME+EhsKFkNNRF9HQU1FU0FWX0RlbEdhbWVTYXYQxT4SHgoZQ01EX0dB",
|
||||||
"CEVSUk9SX09LEAESGAoURVJST1JfUk9PTV9OT1RfRk9VTkQQChInCiNFUlJP",
|
"TUVTQVZfVXBsb2FkR2FtZVNhdhDKPhISCg1DTURfR0FNRV9NQVJLEPVOKvEB",
|
||||||
"Ul9ST09NX1NMT1RfQUxSRUFETFlfSEFEX1BMQVlFUhALEiEKHUVSUk9SX1JP",
|
"CglFcnJvckNvZGUSEAoMRVJST1JfREVGQVVMEAASDAoIRVJST1JfT0sQARIY",
|
||||||
"T01fQ0FOVF9ET19DVVJSX1NUQVRFEDISHwobRVJST1JfUk9NX0RPTlRfSEFE",
|
"ChRFUlJPUl9ST09NX05PVF9GT1VORBAKEicKI0VSUk9SX1JPT01fU0xPVF9B",
|
||||||
"X1NBVkVEQVRBEFASHwoaRVJST1JfUk9NX0FMUkVBRFlfSEFEX1NUQVIQkwMS",
|
"TFJFQURMWV9IQURfUExBWUVSEAsSIQodRVJST1JfUk9PTV9DQU5UX0RPX0NV",
|
||||||
"HAoXRVJST1JfUk9NX0RPTlRfSEFEX1NUQVIQlAMqQAoJTG9naW5UeXBlEg0K",
|
"UlJfU1RBVEUQMhIfChtFUlJPUl9ST01fRE9OVF9IQURfU0FWRURBVEEQUBIf",
|
||||||
"CVVzZURldmljZRAAEg4KClVzZUFjY291bnQQARIUChBVc2VIYW9ZdWVBY2Nv",
|
"ChpFUlJPUl9ST01fQUxSRUFEWV9IQURfU1RBUhCTAxIcChdFUlJPUl9ST01f",
|
||||||
"dW50EAIqpQEKCkRldmljZVR5cGUSFgoSRGV2aWNlVHlwZV9EZWZhdWx0EAAS",
|
"RE9OVF9IQURfU1RBUhCUAypACglMb2dpblR5cGUSDQoJVXNlRGV2aWNlEAAS",
|
||||||
"BgoCUEMQARILCgdBbmRyb2lkEAISBwoDSU9TEAMSBwoDUFNWEAQSBwoDUFMz",
|
"DgoKVXNlQWNjb3VudBABEhQKEFVzZUhhb1l1ZUFjY291bnQQAiqlAQoKRGV2",
|
||||||
"EAUSBwoDUFM0EAYSCwoHWEJPWDM2MBAHEgsKB1hCT1hPTkUQCBIICgRXaWlV",
|
"aWNlVHlwZRIWChJEZXZpY2VUeXBlX0RlZmF1bHQQABIGCgJQQxABEgsKB0Fu",
|
||||||
"EAkSDwoLTmludGVuZG8zRFMQChIRCg1BbmRyb2lkQ2FyQXBwEAsqkwIKC0dh",
|
"ZHJvaWQQAhIHCgNJT1MQAxIHCgNQU1YQBBIHCgNQUzMQBRIHCgNQUzQQBhIL",
|
||||||
"bWVQYWRUeXBlEgwKCEtleWJvYXJkEAASEQoNR2xvYmFsR2FtZVBhZBABEg4K",
|
"CgdYQk9YMzYwEAcSCwoHWEJPWE9ORRAIEggKBFdpaVUQCRIPCgtOaW50ZW5k",
|
||||||
"ClRvdWNoUGFuZWwQAhIOCgpEUzNDb250cm9sEAMSDgoKRFM0Q29udHJvbBAE",
|
"bzNEUxAKEhEKDUFuZHJvaWRDYXJBcHAQCyqTAgoLR2FtZVBhZFR5cGUSDAoI",
|
||||||
"Eg4KCkRTNUNvbnRyb2wQBRIUChBTd2l0Y2hQcm9Db250cm9sEAYSEAoMU3dp",
|
"S2V5Ym9hcmQQABIRCg1HbG9iYWxHYW1lUGFkEAESDgoKVG91Y2hQYW5lbBAC",
|
||||||
"dGNoSm95Q29uEAcSEgoOWEJPWDM2MENvbnRyb2wQCBISCg5YQk9YT05FQ29u",
|
"Eg4KCkRTM0NvbnRyb2wQAxIOCgpEUzRDb250cm9sEAQSDgoKRFM1Q29udHJv",
|
||||||
"dHJvbBAJEhEKDVBTVml0YUNvbnRyb2wQChISCg5XaWlVUGFkQ29udHJvbBAL",
|
"bBAFEhQKEFN3aXRjaFByb0NvbnRyb2wQBhIQCgxTd2l0Y2hKb3lDb24QBxIS",
|
||||||
"EhQKEFdpaVJlbW90ZUNvbnRyb2wQDBIWChJOaW50ZW5kbzNEU0NvbnRyb2wQ",
|
"Cg5YQk9YMzYwQ29udHJvbBAIEhIKDlhCT1hPTkVDb250cm9sEAkSEQoNUFNW",
|
||||||
"DSqiAQoPUm9tUGxhdGZvcm1UeXBlEgsKB0ludmFsaWQQABIHCgNOZXMQARIR",
|
"aXRhQ29udHJvbBAKEhIKDldpaVVQYWRDb250cm9sEAsSFAoQV2lpUmVtb3Rl",
|
||||||
"Cg1NYXN0ZXJfU3lzdGVtEAISDQoJR2FtZV9HZWFyEAMSDAoIR2FtZV9Cb3kQ",
|
"Q29udHJvbBAMEhYKEk5pbnRlbmRvM0RTQ29udHJvbBANKqIBCg9Sb21QbGF0",
|
||||||
"BBISCg5HYW1lX0JveV9Db2xvchAFEhEKDUNvbGVjb19WaXNpb24QBhILCgdT",
|
"Zm9ybVR5cGUSCwoHSW52YWxpZBAAEgcKA05lcxABEhEKDU1hc3Rlcl9TeXN0",
|
||||||
"Q18zMDAwEAcSCwoHU0dfMTAwMBAIEggKA0FsbBDnBypwCg1Sb29tR2FtZVN0",
|
"ZW0QAhINCglHYW1lX0dlYXIQAxIMCghHYW1lX0JveRAEEhIKDkdhbWVfQm95",
|
||||||
"YXRlEhIKDk5vbmVfR2FtZVN0YXRlEAASDAoIT25seUhvc3QQARIRCg1XYWl0",
|
"X0NvbG9yEAUSEQoNQ29sZWNvX1Zpc2lvbhAGEgsKB1NDXzMwMDAQBxILCgdT",
|
||||||
"UmF3VXBkYXRlEAISDQoJV2FpdFJlYWR5EAMSCQoFUGF1c2UQBBIQCgxJbk9u",
|
"R18xMDAwEAgSCAoDQWxsEOcHKnAKDVJvb21HYW1lU3RhdGUSEgoOTm9uZV9H",
|
||||||
"bGluZUdhbWUQBSpOChFMb2dpblJlc3VsdFN0YXR1cxIhCh1Mb2dpblJlc3Vs",
|
"YW1lU3RhdGUQABIMCghPbmx5SG9zdBABEhEKDVdhaXRSYXdVcGRhdGUQAhIN",
|
||||||
"dFN0YXR1c19CYXNlRGVmYXVsdBAAEgYKAk9LEAESDgoKQWNjb3VudEVychAC",
|
"CglXYWl0UmVhZHkQAxIJCgVQYXVzZRAEEhAKDEluT25saW5lR2FtZRAFKk4K",
|
||||||
"QgJIAWIGcHJvdG8z"));
|
"EUxvZ2luUmVzdWx0U3RhdHVzEiEKHUxvZ2luUmVzdWx0U3RhdHVzX0Jhc2VE",
|
||||||
|
"ZWZhdWx0EAASBgoCT0sQARIOCgpBY2NvdW50RXJyEAJCAkgBYgZwcm90bzM="));
|
||||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||||
new pbr::FileDescriptor[] { },
|
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[] {
|
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[] {
|
||||||
@ -213,11 +214,11 @@ namespace AxibugProtobuf {
|
|||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Game_Mark_RESP), global::AxibugProtobuf.Protobuf_Game_Mark_RESP.Parser, new[]{ "RomID", "IsStar", "Stars" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Game_Mark_RESP), global::AxibugProtobuf.Protobuf_Game_Mark_RESP.Parser, new[]{ "RomID", "IsStar", "Stars" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList.Parser, new[]{ "RomID" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList.Parser, new[]{ "RomID" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP.Parser, new[]{ "RomID", "SavDataList" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP.Parser, new[]{ "RomID", "SavDataList" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GameSavInfo), global::AxibugProtobuf.Protobuf_Mine_GameSavInfo.Parser, new[]{ "BHadSaveData", "SavDataIdx", "RomID", "GamePlatformType", "SavDate", "SavName", "Note", "SavImgUrl", "SavUrl" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GameSavInfo), global::AxibugProtobuf.Protobuf_Mine_GameSavInfo.Parser, new[]{ "BHadSaveData", "SavID", "Uid", "SavDataIdx", "RomID", "GamePlatformType", "SavDate", "SavName", "Note", "SavImgUrl", "SavUrl" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav), global::AxibugProtobuf.Protobuf_Mine_DelGameSav.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav), global::AxibugProtobuf.Protobuf_Mine_DelGameSav.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav.Parser, new[]{ "RomID", "SavDataIdx", "SavImg", "StateRaw" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav.Parser, new[]{ "RomID", "SavDataIdx", "Name", "Note", "SavImg", "StateRaw" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP.Parser, new[]{ "RomID", "UploadSevInfo" }, null, null, null, null)
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx", "UploadSevInfo" }, null, null, null, null)
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
@ -10191,6 +10192,8 @@ namespace AxibugProtobuf {
|
|||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public Protobuf_Mine_GameSavInfo(Protobuf_Mine_GameSavInfo other) : this() {
|
public Protobuf_Mine_GameSavInfo(Protobuf_Mine_GameSavInfo other) : this() {
|
||||||
bHadSaveData_ = other.bHadSaveData_;
|
bHadSaveData_ = other.bHadSaveData_;
|
||||||
|
savID_ = other.savID_;
|
||||||
|
uid_ = other.uid_;
|
||||||
savDataIdx_ = other.savDataIdx_;
|
savDataIdx_ = other.savDataIdx_;
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
gamePlatformType_ = other.gamePlatformType_;
|
gamePlatformType_ = other.gamePlatformType_;
|
||||||
@ -10221,8 +10224,36 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "SavID" field.</summary>
|
||||||
|
public const int SavIDFieldNumber = 2;
|
||||||
|
private long savID_;
|
||||||
|
/// <summary>
|
||||||
|
///即时存档唯一ID(用于今后分享)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public long SavID {
|
||||||
|
get { return savID_; }
|
||||||
|
set {
|
||||||
|
savID_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "uid" field.</summary>
|
||||||
|
public const int UidFieldNumber = 3;
|
||||||
|
private long uid_;
|
||||||
|
/// <summary>
|
||||||
|
///所属用户UID(用于今后分享)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public long Uid {
|
||||||
|
get { return uid_; }
|
||||||
|
set {
|
||||||
|
uid_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
||||||
public const int SavDataIdxFieldNumber = 2;
|
public const int SavDataIdxFieldNumber = 4;
|
||||||
private int savDataIdx_;
|
private int savDataIdx_;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档下标(其中第0个是自动存档位置)
|
///即时存档下标(其中第0个是自动存档位置)
|
||||||
@ -10236,7 +10267,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "RomID" field.</summary>
|
/// <summary>Field number for the "RomID" field.</summary>
|
||||||
public const int RomIDFieldNumber = 3;
|
public const int RomIDFieldNumber = 5;
|
||||||
private int romID_;
|
private int romID_;
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public int RomID {
|
public int RomID {
|
||||||
@ -10247,7 +10278,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "GamePlatformType" field.</summary>
|
/// <summary>Field number for the "GamePlatformType" field.</summary>
|
||||||
public const int GamePlatformTypeFieldNumber = 4;
|
public const int GamePlatformTypeFieldNumber = 6;
|
||||||
private global::AxibugProtobuf.RomPlatformType gamePlatformType_ = global::AxibugProtobuf.RomPlatformType.Invalid;
|
private global::AxibugProtobuf.RomPlatformType gamePlatformType_ = global::AxibugProtobuf.RomPlatformType.Invalid;
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public global::AxibugProtobuf.RomPlatformType GamePlatformType {
|
public global::AxibugProtobuf.RomPlatformType GamePlatformType {
|
||||||
@ -10258,7 +10289,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavDate" field.</summary>
|
/// <summary>Field number for the "SavDate" field.</summary>
|
||||||
public const int SavDateFieldNumber = 5;
|
public const int SavDateFieldNumber = 7;
|
||||||
private string savDate_ = "";
|
private string savDate_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///存档时间
|
///存档时间
|
||||||
@ -10272,7 +10303,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavName" field.</summary>
|
/// <summary>Field number for the "SavName" field.</summary>
|
||||||
public const int SavNameFieldNumber = 6;
|
public const int SavNameFieldNumber = 8;
|
||||||
private string savName_ = "";
|
private string savName_ = "";
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public string SavName {
|
public string SavName {
|
||||||
@ -10283,7 +10314,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "Note" field.</summary>
|
/// <summary>Field number for the "Note" field.</summary>
|
||||||
public const int NoteFieldNumber = 7;
|
public const int NoteFieldNumber = 9;
|
||||||
private string note_ = "";
|
private string note_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///备注
|
///备注
|
||||||
@ -10297,7 +10328,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavImgUrl" field.</summary>
|
/// <summary>Field number for the "SavImgUrl" field.</summary>
|
||||||
public const int SavImgUrlFieldNumber = 8;
|
public const int SavImgUrlFieldNumber = 10;
|
||||||
private string savImgUrl_ = "";
|
private string savImgUrl_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档截图Url
|
///即时存档截图Url
|
||||||
@ -10311,7 +10342,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavUrl" field.</summary>
|
/// <summary>Field number for the "SavUrl" field.</summary>
|
||||||
public const int SavUrlFieldNumber = 9;
|
public const int SavUrlFieldNumber = 11;
|
||||||
private string savUrl_ = "";
|
private string savUrl_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档下载Url
|
///即时存档下载Url
|
||||||
@ -10338,6 +10369,8 @@ namespace AxibugProtobuf {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (BHadSaveData != other.BHadSaveData) return false;
|
if (BHadSaveData != other.BHadSaveData) return false;
|
||||||
|
if (SavID != other.SavID) return false;
|
||||||
|
if (Uid != other.Uid) return false;
|
||||||
if (SavDataIdx != other.SavDataIdx) return false;
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
if (GamePlatformType != other.GamePlatformType) return false;
|
if (GamePlatformType != other.GamePlatformType) return false;
|
||||||
@ -10353,6 +10386,8 @@ namespace AxibugProtobuf {
|
|||||||
public override int GetHashCode() {
|
public override int GetHashCode() {
|
||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (BHadSaveData != false) hash ^= BHadSaveData.GetHashCode();
|
if (BHadSaveData != false) hash ^= BHadSaveData.GetHashCode();
|
||||||
|
if (SavID != 0L) hash ^= SavID.GetHashCode();
|
||||||
|
if (Uid != 0L) hash ^= Uid.GetHashCode();
|
||||||
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) hash ^= GamePlatformType.GetHashCode();
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) hash ^= GamePlatformType.GetHashCode();
|
||||||
@ -10381,36 +10416,44 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteBool(BHadSaveData);
|
output.WriteBool(BHadSaveData);
|
||||||
}
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavID != 0L) {
|
||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt64(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
output.WriteRawTag(24);
|
||||||
|
output.WriteInt64(Uid);
|
||||||
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(32);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
output.WriteRawTag(24);
|
output.WriteRawTag(40);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
||||||
output.WriteRawTag(32);
|
output.WriteRawTag(48);
|
||||||
output.WriteEnum((int) GamePlatformType);
|
output.WriteEnum((int) GamePlatformType);
|
||||||
}
|
}
|
||||||
if (SavDate.Length != 0) {
|
if (SavDate.Length != 0) {
|
||||||
output.WriteRawTag(42);
|
output.WriteRawTag(58);
|
||||||
output.WriteString(SavDate);
|
output.WriteString(SavDate);
|
||||||
}
|
}
|
||||||
if (SavName.Length != 0) {
|
if (SavName.Length != 0) {
|
||||||
output.WriteRawTag(50);
|
output.WriteRawTag(66);
|
||||||
output.WriteString(SavName);
|
output.WriteString(SavName);
|
||||||
}
|
}
|
||||||
if (Note.Length != 0) {
|
if (Note.Length != 0) {
|
||||||
output.WriteRawTag(58);
|
output.WriteRawTag(74);
|
||||||
output.WriteString(Note);
|
output.WriteString(Note);
|
||||||
}
|
}
|
||||||
if (SavImgUrl.Length != 0) {
|
if (SavImgUrl.Length != 0) {
|
||||||
output.WriteRawTag(66);
|
output.WriteRawTag(82);
|
||||||
output.WriteString(SavImgUrl);
|
output.WriteString(SavImgUrl);
|
||||||
}
|
}
|
||||||
if (SavUrl.Length != 0) {
|
if (SavUrl.Length != 0) {
|
||||||
output.WriteRawTag(74);
|
output.WriteRawTag(90);
|
||||||
output.WriteString(SavUrl);
|
output.WriteString(SavUrl);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -10426,36 +10469,44 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteBool(BHadSaveData);
|
output.WriteBool(BHadSaveData);
|
||||||
}
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavID != 0L) {
|
||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt64(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
output.WriteRawTag(24);
|
||||||
|
output.WriteInt64(Uid);
|
||||||
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(32);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
output.WriteRawTag(24);
|
output.WriteRawTag(40);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
||||||
output.WriteRawTag(32);
|
output.WriteRawTag(48);
|
||||||
output.WriteEnum((int) GamePlatformType);
|
output.WriteEnum((int) GamePlatformType);
|
||||||
}
|
}
|
||||||
if (SavDate.Length != 0) {
|
if (SavDate.Length != 0) {
|
||||||
output.WriteRawTag(42);
|
output.WriteRawTag(58);
|
||||||
output.WriteString(SavDate);
|
output.WriteString(SavDate);
|
||||||
}
|
}
|
||||||
if (SavName.Length != 0) {
|
if (SavName.Length != 0) {
|
||||||
output.WriteRawTag(50);
|
output.WriteRawTag(66);
|
||||||
output.WriteString(SavName);
|
output.WriteString(SavName);
|
||||||
}
|
}
|
||||||
if (Note.Length != 0) {
|
if (Note.Length != 0) {
|
||||||
output.WriteRawTag(58);
|
output.WriteRawTag(74);
|
||||||
output.WriteString(Note);
|
output.WriteString(Note);
|
||||||
}
|
}
|
||||||
if (SavImgUrl.Length != 0) {
|
if (SavImgUrl.Length != 0) {
|
||||||
output.WriteRawTag(66);
|
output.WriteRawTag(82);
|
||||||
output.WriteString(SavImgUrl);
|
output.WriteString(SavImgUrl);
|
||||||
}
|
}
|
||||||
if (SavUrl.Length != 0) {
|
if (SavUrl.Length != 0) {
|
||||||
output.WriteRawTag(74);
|
output.WriteRawTag(90);
|
||||||
output.WriteString(SavUrl);
|
output.WriteString(SavUrl);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -10470,6 +10521,12 @@ namespace AxibugProtobuf {
|
|||||||
if (BHadSaveData != false) {
|
if (BHadSaveData != false) {
|
||||||
size += 1 + 1;
|
size += 1 + 1;
|
||||||
}
|
}
|
||||||
|
if (SavID != 0L) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt64Size(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt64Size(Uid);
|
||||||
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavDataIdx != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
}
|
}
|
||||||
@ -10508,6 +10565,12 @@ namespace AxibugProtobuf {
|
|||||||
if (other.BHadSaveData != false) {
|
if (other.BHadSaveData != false) {
|
||||||
BHadSaveData = other.BHadSaveData;
|
BHadSaveData = other.BHadSaveData;
|
||||||
}
|
}
|
||||||
|
if (other.SavID != 0L) {
|
||||||
|
SavID = other.SavID;
|
||||||
|
}
|
||||||
|
if (other.Uid != 0L) {
|
||||||
|
Uid = other.Uid;
|
||||||
|
}
|
||||||
if (other.SavDataIdx != 0) {
|
if (other.SavDataIdx != 0) {
|
||||||
SavDataIdx = other.SavDataIdx;
|
SavDataIdx = other.SavDataIdx;
|
||||||
}
|
}
|
||||||
@ -10551,34 +10614,42 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 16: {
|
case 16: {
|
||||||
SavDataIdx = input.ReadInt32();
|
SavID = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 24: {
|
case 24: {
|
||||||
RomID = input.ReadInt32();
|
Uid = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 32: {
|
case 32: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 40: {
|
||||||
|
RomID = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 48: {
|
||||||
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 42: {
|
case 58: {
|
||||||
SavDate = input.ReadString();
|
SavDate = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 50: {
|
case 66: {
|
||||||
SavName = input.ReadString();
|
SavName = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 58: {
|
case 74: {
|
||||||
Note = input.ReadString();
|
Note = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 66: {
|
case 82: {
|
||||||
SavImgUrl = input.ReadString();
|
SavImgUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 74: {
|
case 90: {
|
||||||
SavUrl = input.ReadString();
|
SavUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -10601,34 +10672,42 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 16: {
|
case 16: {
|
||||||
SavDataIdx = input.ReadInt32();
|
SavID = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 24: {
|
case 24: {
|
||||||
RomID = input.ReadInt32();
|
Uid = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 32: {
|
case 32: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 40: {
|
||||||
|
RomID = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 48: {
|
||||||
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 42: {
|
case 58: {
|
||||||
SavDate = input.ReadString();
|
SavDate = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 50: {
|
case 66: {
|
||||||
SavName = input.ReadString();
|
SavName = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 58: {
|
case 74: {
|
||||||
Note = input.ReadString();
|
Note = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 66: {
|
case 82: {
|
||||||
SavImgUrl = input.ReadString();
|
SavImgUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 74: {
|
case 90: {
|
||||||
SavUrl = input.ReadString();
|
SavUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11098,6 +11177,8 @@ namespace AxibugProtobuf {
|
|||||||
public Protobuf_Mine_UpLoadGameSav(Protobuf_Mine_UpLoadGameSav other) : this() {
|
public Protobuf_Mine_UpLoadGameSav(Protobuf_Mine_UpLoadGameSav other) : this() {
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
savDataIdx_ = other.savDataIdx_;
|
savDataIdx_ = other.savDataIdx_;
|
||||||
|
name_ = other.name_;
|
||||||
|
note_ = other.note_;
|
||||||
savImg_ = other.savImg_;
|
savImg_ = other.savImg_;
|
||||||
stateRaw_ = other.stateRaw_;
|
stateRaw_ = other.stateRaw_;
|
||||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
||||||
@ -11136,8 +11217,36 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "Name" field.</summary>
|
||||||
|
public const int NameFieldNumber = 3;
|
||||||
|
private string name_ = "";
|
||||||
|
/// <summary>
|
||||||
|
///存档名(留空时,服务器自动)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public string Name {
|
||||||
|
get { return name_; }
|
||||||
|
set {
|
||||||
|
name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "Note" field.</summary>
|
||||||
|
public const int NoteFieldNumber = 4;
|
||||||
|
private string note_ = "";
|
||||||
|
/// <summary>
|
||||||
|
///备注(留空时,服务器自动)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public string Note {
|
||||||
|
get { return note_; }
|
||||||
|
set {
|
||||||
|
note_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavImg" field.</summary>
|
/// <summary>Field number for the "SavImg" field.</summary>
|
||||||
public const int SavImgFieldNumber = 3;
|
public const int SavImgFieldNumber = 5;
|
||||||
private pb::ByteString savImg_ = pb::ByteString.Empty;
|
private pb::ByteString savImg_ = pb::ByteString.Empty;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档截图模拟器原生数据
|
///即时存档截图模拟器原生数据
|
||||||
@ -11151,7 +11260,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "StateRaw" field.</summary>
|
/// <summary>Field number for the "StateRaw" field.</summary>
|
||||||
public const int StateRawFieldNumber = 4;
|
public const int StateRawFieldNumber = 6;
|
||||||
private pb::ByteString stateRaw_ = pb::ByteString.Empty;
|
private pb::ByteString stateRaw_ = pb::ByteString.Empty;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档byte数据
|
///即时存档byte数据
|
||||||
@ -11179,6 +11288,8 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
if (SavDataIdx != other.SavDataIdx) return false;
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
|
if (Name != other.Name) return false;
|
||||||
|
if (Note != other.Note) return false;
|
||||||
if (SavImg != other.SavImg) return false;
|
if (SavImg != other.SavImg) return false;
|
||||||
if (StateRaw != other.StateRaw) return false;
|
if (StateRaw != other.StateRaw) return false;
|
||||||
return Equals(_unknownFields, other._unknownFields);
|
return Equals(_unknownFields, other._unknownFields);
|
||||||
@ -11189,6 +11300,8 @@ namespace AxibugProtobuf {
|
|||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
|
if (Name.Length != 0) hash ^= Name.GetHashCode();
|
||||||
|
if (Note.Length != 0) hash ^= Note.GetHashCode();
|
||||||
if (SavImg.Length != 0) hash ^= SavImg.GetHashCode();
|
if (SavImg.Length != 0) hash ^= SavImg.GetHashCode();
|
||||||
if (StateRaw.Length != 0) hash ^= StateRaw.GetHashCode();
|
if (StateRaw.Length != 0) hash ^= StateRaw.GetHashCode();
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11215,12 +11328,20 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (Name.Length != 0) {
|
||||||
output.WriteRawTag(26);
|
output.WriteRawTag(26);
|
||||||
|
output.WriteString(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
output.WriteRawTag(34);
|
||||||
|
output.WriteString(Note);
|
||||||
|
}
|
||||||
|
if (SavImg.Length != 0) {
|
||||||
|
output.WriteRawTag(42);
|
||||||
output.WriteBytes(SavImg);
|
output.WriteBytes(SavImg);
|
||||||
}
|
}
|
||||||
if (StateRaw.Length != 0) {
|
if (StateRaw.Length != 0) {
|
||||||
output.WriteRawTag(34);
|
output.WriteRawTag(50);
|
||||||
output.WriteBytes(StateRaw);
|
output.WriteBytes(StateRaw);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11240,12 +11361,20 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (Name.Length != 0) {
|
||||||
output.WriteRawTag(26);
|
output.WriteRawTag(26);
|
||||||
|
output.WriteString(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
output.WriteRawTag(34);
|
||||||
|
output.WriteString(Note);
|
||||||
|
}
|
||||||
|
if (SavImg.Length != 0) {
|
||||||
|
output.WriteRawTag(42);
|
||||||
output.WriteBytes(SavImg);
|
output.WriteBytes(SavImg);
|
||||||
}
|
}
|
||||||
if (StateRaw.Length != 0) {
|
if (StateRaw.Length != 0) {
|
||||||
output.WriteRawTag(34);
|
output.WriteRawTag(50);
|
||||||
output.WriteBytes(StateRaw);
|
output.WriteBytes(StateRaw);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11263,6 +11392,12 @@ namespace AxibugProtobuf {
|
|||||||
if (SavDataIdx != 0) {
|
if (SavDataIdx != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
}
|
}
|
||||||
|
if (Name.Length != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeStringSize(Note);
|
||||||
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (SavImg.Length != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeBytesSize(SavImg);
|
size += 1 + pb::CodedOutputStream.ComputeBytesSize(SavImg);
|
||||||
}
|
}
|
||||||
@ -11286,6 +11421,12 @@ namespace AxibugProtobuf {
|
|||||||
if (other.SavDataIdx != 0) {
|
if (other.SavDataIdx != 0) {
|
||||||
SavDataIdx = other.SavDataIdx;
|
SavDataIdx = other.SavDataIdx;
|
||||||
}
|
}
|
||||||
|
if (other.Name.Length != 0) {
|
||||||
|
Name = other.Name;
|
||||||
|
}
|
||||||
|
if (other.Note.Length != 0) {
|
||||||
|
Note = other.Note;
|
||||||
|
}
|
||||||
if (other.SavImg.Length != 0) {
|
if (other.SavImg.Length != 0) {
|
||||||
SavImg = other.SavImg;
|
SavImg = other.SavImg;
|
||||||
}
|
}
|
||||||
@ -11315,10 +11456,18 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 26: {
|
case 26: {
|
||||||
SavImg = input.ReadBytes();
|
Name = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 34: {
|
case 34: {
|
||||||
|
Note = input.ReadString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 42: {
|
||||||
|
SavImg = input.ReadBytes();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 50: {
|
||||||
StateRaw = input.ReadBytes();
|
StateRaw = input.ReadBytes();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11345,10 +11494,18 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 26: {
|
case 26: {
|
||||||
SavImg = input.ReadBytes();
|
Name = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 34: {
|
case 34: {
|
||||||
|
Note = input.ReadString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 42: {
|
||||||
|
SavImg = input.ReadBytes();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 50: {
|
||||||
StateRaw = input.ReadBytes();
|
StateRaw = input.ReadBytes();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11389,6 +11546,7 @@ namespace AxibugProtobuf {
|
|||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public Protobuf_Mine_UpLoadGameSav_RESP(Protobuf_Mine_UpLoadGameSav_RESP other) : this() {
|
public Protobuf_Mine_UpLoadGameSav_RESP(Protobuf_Mine_UpLoadGameSav_RESP other) : this() {
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
|
savDataIdx_ = other.savDataIdx_;
|
||||||
uploadSevInfo_ = other.uploadSevInfo_ != null ? other.uploadSevInfo_.Clone() : null;
|
uploadSevInfo_ = other.uploadSevInfo_ != null ? other.uploadSevInfo_.Clone() : null;
|
||||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
||||||
}
|
}
|
||||||
@ -11412,8 +11570,22 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
||||||
|
public const int SavDataIdxFieldNumber = 2;
|
||||||
|
private int savDataIdx_;
|
||||||
|
/// <summary>
|
||||||
|
///即时存档下标(其中第0个是自动存档位置)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public int SavDataIdx {
|
||||||
|
get { return savDataIdx_; }
|
||||||
|
set {
|
||||||
|
savDataIdx_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "UploadSevInfo" field.</summary>
|
/// <summary>Field number for the "UploadSevInfo" field.</summary>
|
||||||
public const int UploadSevInfoFieldNumber = 2;
|
public const int UploadSevInfoFieldNumber = 3;
|
||||||
private global::AxibugProtobuf.Protobuf_Mine_GameSavInfo uploadSevInfo_;
|
private global::AxibugProtobuf.Protobuf_Mine_GameSavInfo uploadSevInfo_;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///上传成功的存档详情
|
///上传成功的存档详情
|
||||||
@ -11440,6 +11612,7 @@ namespace AxibugProtobuf {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
if (!object.Equals(UploadSevInfo, other.UploadSevInfo)) return false;
|
if (!object.Equals(UploadSevInfo, other.UploadSevInfo)) return false;
|
||||||
return Equals(_unknownFields, other._unknownFields);
|
return Equals(_unknownFields, other._unknownFields);
|
||||||
}
|
}
|
||||||
@ -11448,6 +11621,7 @@ namespace AxibugProtobuf {
|
|||||||
public override int GetHashCode() {
|
public override int GetHashCode() {
|
||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
if (uploadSevInfo_ != null) hash ^= UploadSevInfo.GetHashCode();
|
if (uploadSevInfo_ != null) hash ^= UploadSevInfo.GetHashCode();
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
hash ^= _unknownFields.GetHashCode();
|
hash ^= _unknownFields.GetHashCode();
|
||||||
@ -11469,8 +11643,12 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt32(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
output.WriteRawTag(18);
|
output.WriteRawTag(26);
|
||||||
output.WriteMessage(UploadSevInfo);
|
output.WriteMessage(UploadSevInfo);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11486,8 +11664,12 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt32(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
output.WriteRawTag(18);
|
output.WriteRawTag(26);
|
||||||
output.WriteMessage(UploadSevInfo);
|
output.WriteMessage(UploadSevInfo);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11502,6 +11684,9 @@ namespace AxibugProtobuf {
|
|||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(RomID);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeMessageSize(UploadSevInfo);
|
size += 1 + pb::CodedOutputStream.ComputeMessageSize(UploadSevInfo);
|
||||||
}
|
}
|
||||||
@ -11519,6 +11704,9 @@ namespace AxibugProtobuf {
|
|||||||
if (other.RomID != 0) {
|
if (other.RomID != 0) {
|
||||||
RomID = other.RomID;
|
RomID = other.RomID;
|
||||||
}
|
}
|
||||||
|
if (other.SavDataIdx != 0) {
|
||||||
|
SavDataIdx = other.SavDataIdx;
|
||||||
|
}
|
||||||
if (other.uploadSevInfo_ != null) {
|
if (other.uploadSevInfo_ != null) {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
@ -11543,7 +11731,11 @@ namespace AxibugProtobuf {
|
|||||||
RomID = input.ReadInt32();
|
RomID = input.ReadInt32();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 18: {
|
case 16: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 26: {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
}
|
}
|
||||||
@ -11568,7 +11760,11 @@ namespace AxibugProtobuf {
|
|||||||
RomID = input.ReadInt32();
|
RomID = input.ReadInt32();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 18: {
|
case 16: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 26: {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
}
|
}
|
||||||
|
401
AxibugEmuOnline.Client/Assets/VirtualNes.Core/Mapper/MMC3.cs
Normal file
401
AxibugEmuOnline.Client/Assets/VirtualNes.Core/Mapper/MMC3.cs
Normal file
@ -0,0 +1,401 @@
|
|||||||
|
//MMC3.h
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//// Nintendo MMC3 //
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//class MMC3 : public Mapper
|
||||||
|
//{
|
||||||
|
//public:
|
||||||
|
// MMC3( NES* parent );
|
||||||
|
// //virtual ~MMC3();
|
||||||
|
|
||||||
|
// // For state save
|
||||||
|
// BOOL IsStateSave() { return TRUE; }
|
||||||
|
// void SaveState( LPBYTE p );
|
||||||
|
// void LoadState( LPBYTE p );
|
||||||
|
|
||||||
|
|
||||||
|
// void Reset();
|
||||||
|
|
||||||
|
// void Write( WORD addr, BYTE data );
|
||||||
|
// void HSync( INT scanline );
|
||||||
|
|
||||||
|
// //////////////////////////////////////////////////////////////////////////
|
||||||
|
// // MMC3
|
||||||
|
// //////////////////////////////////////////////////////////////////////////
|
||||||
|
// unsigned int count;
|
||||||
|
// unsigned int latch;
|
||||||
|
// unsigned int reload;
|
||||||
|
// unsigned int enabled;
|
||||||
|
|
||||||
|
// unsigned int ctrl0;
|
||||||
|
// unsigned int ctrl1;
|
||||||
|
|
||||||
|
// unsigned int chr[8];
|
||||||
|
// unsigned int prg[4];
|
||||||
|
|
||||||
|
// //Memory Write 8000~FFFF
|
||||||
|
// //void Mmc3_MemoryWrite(uint32 address, uint8 data);
|
||||||
|
// void Poke_Mmc3_8000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_8001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_A000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_A001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_C000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_C001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_E000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_E001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Nop(uint32,uint8);
|
||||||
|
|
||||||
|
// //³õʼ»¯Mmc3º¯ÊýÖ¸Õë
|
||||||
|
// //void Mmc3_Init();
|
||||||
|
// //void Mmc3_Reset();
|
||||||
|
// void Mmc3_UpdatePrg();
|
||||||
|
// void Mmc3_UpdateChr();
|
||||||
|
// void Mmc3_UpdatePrg2p(unsigned int addr,unsigned int bank);
|
||||||
|
// void Mmc3_UpdateChr2p(unsigned int addr,unsigned int bank);
|
||||||
|
// unsigned int Mmc3_GetChrSource(unsigned int);
|
||||||
|
// void Mmc3_HSync(uint32 scanline);
|
||||||
|
|
||||||
|
// void Mmc3_SwapChr1K(uint8 page,uint32 bank);
|
||||||
|
// void Mmc3_SwapChr2K(uint8 page,uint32 bank);
|
||||||
|
|
||||||
|
// void (MMC3::*UpdateChr)(unsigned int,unsigned int);
|
||||||
|
// void (MMC3::*UpdatePrg)(unsigned int,unsigned int);
|
||||||
|
// unsigned int (MMC3::*GetChrSource)(unsigned int);
|
||||||
|
|
||||||
|
// void (MMC3::*Poke_8000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_8001)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_A000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_A001)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_C000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_C001)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_E000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_E001)(uint32 address,uint8 data);
|
||||||
|
//};//////////////////////////////////////////////////////////////////////////
|
||||||
|
//// Nintendo MMC3 //
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//class MMC3 : public Mapper
|
||||||
|
//{
|
||||||
|
//public:
|
||||||
|
// MMC3( NES* parent );
|
||||||
|
// //virtual ~MMC3();
|
||||||
|
|
||||||
|
// // For state save
|
||||||
|
// BOOL IsStateSave() { return TRUE; }
|
||||||
|
// void SaveState( LPBYTE p );
|
||||||
|
// void LoadState( LPBYTE p );
|
||||||
|
|
||||||
|
|
||||||
|
// void Reset();
|
||||||
|
|
||||||
|
// void Write( WORD addr, BYTE data );
|
||||||
|
// void HSync( INT scanline );
|
||||||
|
|
||||||
|
// //////////////////////////////////////////////////////////////////////////
|
||||||
|
// // MMC3
|
||||||
|
// //////////////////////////////////////////////////////////////////////////
|
||||||
|
// unsigned int count;
|
||||||
|
// unsigned int latch;
|
||||||
|
// unsigned int reload;
|
||||||
|
// unsigned int enabled;
|
||||||
|
|
||||||
|
// unsigned int ctrl0;
|
||||||
|
// unsigned int ctrl1;
|
||||||
|
|
||||||
|
// unsigned int chr[8];
|
||||||
|
// unsigned int prg[4];
|
||||||
|
|
||||||
|
// //Memory Write 8000~FFFF
|
||||||
|
// //void Mmc3_MemoryWrite(uint32 address, uint8 data);
|
||||||
|
// void Poke_Mmc3_8000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_8001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_A000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_A001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_C000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_C001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_E000(uint32 address,uint8 data);
|
||||||
|
// void Poke_Mmc3_E001(uint32 address,uint8 data);
|
||||||
|
// void Poke_Nop(uint32,uint8);
|
||||||
|
|
||||||
|
// //³õʼ»¯Mmc3º¯ÊýÖ¸Õë
|
||||||
|
// //void Mmc3_Init();
|
||||||
|
// //void Mmc3_Reset();
|
||||||
|
// void Mmc3_UpdatePrg();
|
||||||
|
// void Mmc3_UpdateChr();
|
||||||
|
// void Mmc3_UpdatePrg2p(unsigned int addr,unsigned int bank);
|
||||||
|
// void Mmc3_UpdateChr2p(unsigned int addr,unsigned int bank);
|
||||||
|
// unsigned int Mmc3_GetChrSource(unsigned int);
|
||||||
|
// void Mmc3_HSync(uint32 scanline);
|
||||||
|
|
||||||
|
// void Mmc3_SwapChr1K(uint8 page,uint32 bank);
|
||||||
|
// void Mmc3_SwapChr2K(uint8 page,uint32 bank);
|
||||||
|
|
||||||
|
// void (MMC3::*UpdateChr)(unsigned int,unsigned int);
|
||||||
|
// void (MMC3::*UpdatePrg)(unsigned int,unsigned int);
|
||||||
|
// unsigned int (MMC3::*GetChrSource)(unsigned int);
|
||||||
|
|
||||||
|
// void (MMC3::*Poke_8000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_8001)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_A000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_A001)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_C000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_C001)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_E000)(uint32 address,uint8 data);
|
||||||
|
// void (MMC3::*Poke_E001)(uint32 address,uint8 data);
|
||||||
|
//};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//MMC3.cpp
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//// Nintendo MMC3 //
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//using System.Net;
|
||||||
|
//using System;
|
||||||
|
//using Unity.Android.Gradle.Manifest;
|
||||||
|
//using VirtualNes.Core;
|
||||||
|
|
||||||
|
//MMC3::MMC3(NES * parent) : Mapper(parent)
|
||||||
|
//{
|
||||||
|
// UpdateChr = &MMC3::Mmc3_UpdateChr2p;
|
||||||
|
// UpdatePrg = &MMC3::Mmc3_UpdatePrg2p;
|
||||||
|
// GetChrSource = &MMC3::Mmc3_GetChrSource;
|
||||||
|
|
||||||
|
// Poke_8000 = &MMC3::Poke_Mmc3_8000;
|
||||||
|
// Poke_8001 = &MMC3::Poke_Mmc3_8001;
|
||||||
|
// Poke_A000 = &MMC3::Poke_Mmc3_A000;
|
||||||
|
// Poke_A001 = &MMC3::Poke_Mmc3_A001;
|
||||||
|
// Poke_C000 = &MMC3::Poke_Mmc3_C000;
|
||||||
|
// Poke_C001 = &MMC3::Poke_Mmc3_C001;
|
||||||
|
// Poke_E000 = &MMC3::Poke_Mmc3_E000;
|
||||||
|
// Poke_E001 = &MMC3::Poke_Mmc3_E001;
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Reset()
|
||||||
|
//{
|
||||||
|
// int i;
|
||||||
|
|
||||||
|
// ctrl0 = 0;
|
||||||
|
// ctrl1 = 0;
|
||||||
|
|
||||||
|
// for (i = 0; i < 8; ++i)
|
||||||
|
// chr[i] = i;
|
||||||
|
|
||||||
|
// prg[0] = 0x00;
|
||||||
|
// prg[1] = 0x01;
|
||||||
|
// prg[2] = 0x3E;
|
||||||
|
// prg[3] = 0x3F;
|
||||||
|
|
||||||
|
// count = 0;
|
||||||
|
// latch = 0;
|
||||||
|
// reload = 0;
|
||||||
|
// enabled = 0;
|
||||||
|
|
||||||
|
// Mmc3_UpdatePrg();
|
||||||
|
// Mmc3_UpdateChr();
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Write(WORD A, BYTE V)
|
||||||
|
//{
|
||||||
|
// switch (A & 0xE001)
|
||||||
|
// {
|
||||||
|
// case 0x8000: (this->* Poke_8000)(A, V); break;
|
||||||
|
// case 0x8001: (this->* Poke_8001)(A, V); break;
|
||||||
|
// case 0xA000: (this->* Poke_A000)(A, V); break;
|
||||||
|
// case 0xA001: (this->* Poke_A001)(A, V); break;
|
||||||
|
// case 0xC000: (this->* Poke_C000)(A, V); break;
|
||||||
|
// case 0xC001: (this->* Poke_C001)(A, V); break;
|
||||||
|
// case 0xE000: (this->* Poke_E000)(A, V); break;
|
||||||
|
// case 0xE001: (this->* Poke_E001)(A, V); break;
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Poke_Mmc3_8000(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// const unsigned int diff = ctrl0 ^ data;
|
||||||
|
// ctrl0 = data;
|
||||||
|
|
||||||
|
// if (diff & 0x40)
|
||||||
|
// {
|
||||||
|
// const unsigned int v[2] =
|
||||||
|
// {
|
||||||
|
// prg[(data >> 5 & 0x2) ^ 0],
|
||||||
|
// prg[(data >> 5 & 0x2) ^ 2]
|
||||||
|
// };
|
||||||
|
|
||||||
|
// (this->* UpdatePrg)(0x0000, v[0]);
|
||||||
|
// (this->* UpdatePrg)(0x4000, v[1]);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// if (diff & 0x80)
|
||||||
|
// Mmc3_UpdateChr();
|
||||||
|
//}
|
||||||
|
//void MMC3::Poke_Mmc3_8001(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// unsigned int addr = ctrl0 & 0x7;
|
||||||
|
|
||||||
|
// if (addr < 6)
|
||||||
|
// {
|
||||||
|
// unsigned int base = ctrl0 << 5 & 0x1000;
|
||||||
|
|
||||||
|
// if (addr < 2)
|
||||||
|
// {
|
||||||
|
// addr <<= 1;
|
||||||
|
// base |= addr << 10;
|
||||||
|
// (this->* UpdateChr)(base | 0x0000, (chr[addr + 0] = data & 0xFE));
|
||||||
|
// (this->* UpdateChr)(base | 0x0400, (chr[addr + 1] = data | 0x01));
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// (this->* UpdateChr)((base ^ 0x1000) | (addr - 2) << 10, (chr[addr + 2] = data));
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// (this->* UpdatePrg)((addr == 6) ? (ctrl0 << 8 & 0x4000) : 0x2000, (prg[addr - 6] = data & 0x3F));
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
//void MMC3::Poke_Mmc3_A000(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// if (!nes->rom->Is4SCREEN())
|
||||||
|
// {
|
||||||
|
// if (data & 0x01)
|
||||||
|
// SetVRAM_Mirror(VRAM_HMIRROR);
|
||||||
|
// else
|
||||||
|
// SetVRAM_Mirror(VRAM_VMIRROR);
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Poke_Mmc3_A001(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// ctrl1 = data;
|
||||||
|
//}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//// MMC3 IRQ
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//void MMC3::Poke_Mmc3_C000(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// count = data;
|
||||||
|
// reload = 0;
|
||||||
|
//}
|
||||||
|
//void MMC3::Poke_Mmc3_C001(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// latch = data;
|
||||||
|
// reload = 0;
|
||||||
|
//}
|
||||||
|
//void MMC3::Poke_Mmc3_E000(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
//enabled = 0;
|
||||||
|
//reload = 0;
|
||||||
|
// nes->cpu->ClrIRQ(IRQ_MAPPER);
|
||||||
|
//}
|
||||||
|
//void MMC3::Poke_Mmc3_E001(uint32 address, uint8 data)
|
||||||
|
//{
|
||||||
|
// enabled = 1;
|
||||||
|
// reload = 0;
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::HSync(int scanline)
|
||||||
|
////void MMC3::Mmc3_HSync(uint32 scanline)
|
||||||
|
//{
|
||||||
|
// if ((scanline >= 0 && scanline <= 239))
|
||||||
|
// {
|
||||||
|
// if (nes->ppu->IsDispON())
|
||||||
|
// {
|
||||||
|
// if (enabled && !reload)
|
||||||
|
// {
|
||||||
|
// if (scanline == 0)
|
||||||
|
// {
|
||||||
|
// if (count)
|
||||||
|
// {
|
||||||
|
// count -= 1;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// if (!(count))
|
||||||
|
// {
|
||||||
|
// reload = 0xFF;
|
||||||
|
// count = latch;
|
||||||
|
// nes->cpu->SetIRQ(IRQ_MAPPER);
|
||||||
|
// }
|
||||||
|
// count--;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Poke_Nop(uint32 addr, uint8 data)
|
||||||
|
//{
|
||||||
|
// return;
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//void MMC3::Mmc3_SwapChr1K(uint8 page, uint32 bank)
|
||||||
|
//{
|
||||||
|
// if ((this->* GetChrSource)(bank))
|
||||||
|
// {
|
||||||
|
// SetCRAM_1K_Bank(page, bank);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// SetVROM_1K_Bank(page, bank);
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Mmc3_SwapChr2K(uint8 page, uint32 bank)
|
||||||
|
//{
|
||||||
|
// if ((this->* GetChrSource)(bank))
|
||||||
|
// {
|
||||||
|
// SetCRAM_2K_Bank(page, bank);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// SetVROM_2K_Bank(page, bank);
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Mmc3_UpdatePrg2p(unsigned int addr, unsigned int bank)
|
||||||
|
//{
|
||||||
|
// SetPROM_8K_Bank((addr >> 13) + 4, bank);
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Mmc3_UpdateChr2p(unsigned int addr, unsigned int bank)
|
||||||
|
//{
|
||||||
|
// Mmc3_SwapChr1K(addr >> 10, bank);
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
//void MMC3::Mmc3_UpdatePrg()
|
||||||
|
//{
|
||||||
|
// const unsigned int x = ctrl0 >> 5 & 0x2;
|
||||||
|
|
||||||
|
// (this->* UpdatePrg)(0x0000, prg[0 ^ x]);
|
||||||
|
// (this->* UpdatePrg)(0x2000, prg[1 ^ 0]);
|
||||||
|
// (this->* UpdatePrg)(0x4000, prg[2 ^ x]);
|
||||||
|
// (this->* UpdatePrg)(0x6000, prg[3 ^ 0]);
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MMC3::Mmc3_UpdateChr()
|
||||||
|
//{
|
||||||
|
// const unsigned int x = ctrl0 >> 5 & 0x4;
|
||||||
|
// unsigned int i = 0;
|
||||||
|
// for (i = 0; i < 8; ++i)
|
||||||
|
// (this->* UpdateChr)(i * 0x400, chr[i ^ x]);
|
||||||
|
//}
|
||||||
|
|
||||||
|
//unsigned int MMC3::Mmc3_GetChrSource(unsigned int dummy){return 0;}
|
||||||
|
|
||||||
|
|
||||||
|
//void MMC3::SaveState(LPBYTE p)
|
||||||
|
//{
|
||||||
|
// //ûдºÃ
|
||||||
|
//}
|
||||||
|
//void MMC3::LoadState(LPBYTE p)
|
||||||
|
//{
|
||||||
|
// //ûдºÃ
|
||||||
|
//}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0e50dbc25281282468ee112d349c4127
|
@ -236,6 +236,7 @@ namespace VirtualNes.Core
|
|||||||
case 249: return new Mapper249(parent);
|
case 249: return new Mapper249(parent);
|
||||||
case 251: return new Mapper251(parent);
|
case 251: return new Mapper251(parent);
|
||||||
case 252: return new Mapper252(parent);
|
case 252: return new Mapper252(parent);
|
||||||
|
case 253: return new Mapper253(parent);
|
||||||
case 254: return new Mapper254(parent);
|
case 254: return new Mapper254(parent);
|
||||||
case 255: return new Mapper255(parent);
|
case 255: return new Mapper255(parent);
|
||||||
|
|
||||||
|
@ -0,0 +1,98 @@
|
|||||||
|
//TODO VirituaNes097 / NES / Mapper / MapperFDS.cpp
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//// Mapper020 Nintendo Disk System(FDS) //
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//using System;
|
||||||
|
//using Unity.Android.Gradle;
|
||||||
|
//using static VirtualNes.Core.CPU;
|
||||||
|
//using static VirtualNes.MMU;
|
||||||
|
//using BYTE = System.Byte;
|
||||||
|
//using INT = System.Int32;
|
||||||
|
|
||||||
|
|
||||||
|
//namespace VirtualNes.Core
|
||||||
|
//{
|
||||||
|
// public class Mapper020 : Mapper
|
||||||
|
// {
|
||||||
|
// enum enum_1
|
||||||
|
// {
|
||||||
|
// BLOCK_READY = 0,
|
||||||
|
// BLOCK_VOLUME_LABEL,
|
||||||
|
// BLOCK_FILE_AMOUNT,
|
||||||
|
// BLOCK_FILE_HEADER,
|
||||||
|
// BLOCK_FILE_DATA,
|
||||||
|
// };
|
||||||
|
// enum enum_2
|
||||||
|
// {
|
||||||
|
// SIZE_VOLUME_LABEL = 56,
|
||||||
|
// SIZE_FILE_AMOUNT = 2,
|
||||||
|
// SIZE_FILE_HEADER = 16,
|
||||||
|
// };
|
||||||
|
// enum enum_3
|
||||||
|
// {
|
||||||
|
// OFFSET_VOLUME_LABEL = 0,
|
||||||
|
// OFFSET_FILE_AMOUNT = 56,
|
||||||
|
// OFFSET_FILE_HEADER = 58,
|
||||||
|
// OFFSET_FILE_DATA = 74,
|
||||||
|
// };
|
||||||
|
|
||||||
|
// enum enum_4
|
||||||
|
// {
|
||||||
|
// MECHANICAL_SOUND_BOOT = 0,
|
||||||
|
// MECHANICAL_SOUND_SEEKEND,
|
||||||
|
// MECHANICAL_SOUND_MOTOR_ON,
|
||||||
|
// MECHANICAL_SOUND_MOTOR_OFF,
|
||||||
|
// MECHANICAL_SOUND_ALLSTOP,
|
||||||
|
// };
|
||||||
|
|
||||||
|
// bool bDiskThrottle;
|
||||||
|
// bool DiskThrottleTime;
|
||||||
|
|
||||||
|
// LPBYTE disk;
|
||||||
|
// LPBYTE disk_w;
|
||||||
|
|
||||||
|
// INT irq_counter, irq_latch; // $4020-$4021
|
||||||
|
// BYTE irq_enable, irq_repeat; // $4022
|
||||||
|
// BYTE irq_occur; // IRQ発生時に0以外になる
|
||||||
|
// BYTE irq_transfer; // 割り込み転送フラグ
|
||||||
|
|
||||||
|
// BYTE disk_enable; // Disk I/O enable
|
||||||
|
// BYTE sound_enable; // Sound I/O enable
|
||||||
|
// BYTE RW_start; // 読み書き可能になったらIRQ発生
|
||||||
|
// BYTE RW_mode; // 読み書きモード
|
||||||
|
// BYTE disk_motor_mode; // ディスクモーター
|
||||||
|
// BYTE disk_eject; // ディスクカードの挿入/非挿入
|
||||||
|
// BYTE drive_ready; // 読み書き中かどうか
|
||||||
|
// BYTE drive_reset; // ドライブリセット状態
|
||||||
|
|
||||||
|
// INT block_point;
|
||||||
|
// INT block_mode;
|
||||||
|
// INT size_file_data;
|
||||||
|
// INT file_amount;
|
||||||
|
// INT point;
|
||||||
|
// BYTE first_access;
|
||||||
|
|
||||||
|
// BYTE disk_side;
|
||||||
|
// BYTE disk_mount_count;
|
||||||
|
|
||||||
|
// BYTE irq_type;
|
||||||
|
|
||||||
|
// // For mechanical sound
|
||||||
|
// BYTE sound_startup_flag;
|
||||||
|
// INT sound_startup_timer;
|
||||||
|
// INT sound_seekend_timer;
|
||||||
|
// public Mapper020(NES parent) : base(parent)
|
||||||
|
// {
|
||||||
|
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
|
// public override bool IsStateSave()
|
||||||
|
// {
|
||||||
|
// return true;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// override ma
|
||||||
|
// }
|
||||||
|
//}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 18bba5ba2502bfd4394ce01de2fb331c
|
@ -1,8 +1,4 @@
|
|||||||
//////////////////////////////////////////////////////////////////////////
|
using static VirtualNes.MMU;
|
||||||
// Mapper191 SACHEN Super Cartridge Xin1 (Ver.1-9) //
|
|
||||||
// SACHEN Q-BOY Support //
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
|
||||||
using static VirtualNes.MMU;
|
|
||||||
using BYTE = System.Byte;
|
using BYTE = System.Byte;
|
||||||
using INT = System.Int32;
|
using INT = System.Int32;
|
||||||
|
|
||||||
@ -13,95 +9,19 @@ namespace VirtualNes.Core
|
|||||||
{
|
{
|
||||||
BYTE[] reg = new BYTE[8];
|
BYTE[] reg = new BYTE[8];
|
||||||
BYTE prg0, prg1;
|
BYTE prg0, prg1;
|
||||||
BYTE chr0, chr1, chr2, chr3;
|
BYTE[] chr = new BYTE[8];
|
||||||
BYTE highbank;
|
BYTE we_sram;
|
||||||
|
|
||||||
|
BYTE irq_type;
|
||||||
|
BYTE irq_enable;
|
||||||
|
BYTE irq_counter;
|
||||||
|
BYTE irq_latch;
|
||||||
|
BYTE irq_request;
|
||||||
|
|
||||||
|
BYTE patch;
|
||||||
public Mapper191(NES parent) : base(parent)
|
public Mapper191(NES parent) : base(parent)
|
||||||
{
|
{
|
||||||
}
|
|
||||||
|
|
||||||
public override void Reset()
|
|
||||||
|
|
||||||
{
|
|
||||||
for (INT i = 0; i < 8; i++)
|
|
||||||
{
|
|
||||||
reg[i] = 0x00;
|
|
||||||
}
|
|
||||||
|
|
||||||
prg0 = 0;
|
|
||||||
// prg1 = 1;
|
|
||||||
SetBank_CPU();
|
|
||||||
|
|
||||||
chr0 = 0;
|
|
||||||
chr1 = 0;
|
|
||||||
chr2 = 0;
|
|
||||||
chr3 = 0;
|
|
||||||
highbank = 0;
|
|
||||||
SetBank_PPU();
|
|
||||||
}
|
|
||||||
|
|
||||||
//void Mapper191::WriteLow(WORD addr, BYTE data)
|
|
||||||
public override void WriteLow(ushort addr, byte data)
|
|
||||||
{
|
|
||||||
switch (addr)
|
|
||||||
{
|
|
||||||
case 0x4100:
|
|
||||||
reg[0] = data;
|
|
||||||
break;
|
|
||||||
case 0x4101:
|
|
||||||
reg[1] = data;
|
|
||||||
switch (reg[0])
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
chr0 = (byte)(data & 7);
|
|
||||||
SetBank_PPU();
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
chr1 = (byte)(data & 7);
|
|
||||||
SetBank_PPU();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
chr2 = (byte)(data & 7);
|
|
||||||
SetBank_PPU();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
chr3 = (byte)(data & 7);
|
|
||||||
SetBank_PPU();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
highbank = (byte)(data & 7);
|
|
||||||
SetBank_PPU();
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
prg0 = (byte)(data & 7);
|
|
||||||
SetBank_CPU();
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
if ((data & 0x02) != 0) SetVRAM_Mirror(VRAM_HMIRROR);
|
|
||||||
else SetVRAM_Mirror(VRAM_VMIRROR);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetBank_CPU()
|
|
||||||
{
|
|
||||||
SetPROM_32K_Bank(prg0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetBank_PPU()
|
|
||||||
{
|
|
||||||
if (VROM_1K_SIZE != 0)
|
|
||||||
{
|
|
||||||
SetVROM_1K_Bank(0, (((highbank << 3) + chr0) << 2) + 0);
|
|
||||||
SetVROM_1K_Bank(1, (((highbank << 3) + chr0) << 2) + 1);
|
|
||||||
SetVROM_1K_Bank(2, (((highbank << 3) + chr1) << 2) + 2);
|
|
||||||
SetVROM_1K_Bank(3, (((highbank << 3) + chr1) << 2) + 3);
|
|
||||||
SetVROM_1K_Bank(4, (((highbank << 3) + chr2) << 2) + 0);
|
|
||||||
SetVROM_1K_Bank(5, (((highbank << 3) + chr2) << 2) + 1);
|
|
||||||
SetVROM_1K_Bank(6, (((highbank << 3) + chr3) << 2) + 2);
|
|
||||||
SetVROM_1K_Bank(7, (((highbank << 3) + chr3) << 2) + 3);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool IsStateSave()
|
public override bool IsStateSave()
|
||||||
@ -109,28 +29,396 @@ namespace VirtualNes.Core
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override void Reset()
|
||||||
|
{
|
||||||
|
for (INT i = 0; i < 8; i++)
|
||||||
|
{
|
||||||
|
reg[i] = 0x00;
|
||||||
|
}
|
||||||
|
prg0 = 0;
|
||||||
|
prg1 = 1;
|
||||||
|
SetBank_CPU();
|
||||||
|
|
||||||
|
chr[0] = 0;
|
||||||
|
chr[2] = 2;
|
||||||
|
chr[4] = 4;
|
||||||
|
chr[5] = 5;
|
||||||
|
chr[6] = 6;
|
||||||
|
chr[7] = 7;
|
||||||
|
SetBank_PPU();
|
||||||
|
|
||||||
|
we_sram = 0; // Disable
|
||||||
|
irq_enable = 0; // Disable
|
||||||
|
irq_counter = 0;
|
||||||
|
irq_latch = 0;
|
||||||
|
irq_request = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//BYTE Mapper191::ReadLow(WORD addr)
|
||||||
|
public override byte ReadLow(ushort addr)
|
||||||
|
{
|
||||||
|
if (addr >= 0x5000 && addr <= 0x5FFF)
|
||||||
|
{
|
||||||
|
return XRAM[addr - 0x4000];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return base.ReadLow(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper191::WriteLow(WORD addr, BYTE data)
|
||||||
|
public override void WriteLow(ushort addr, byte data)
|
||||||
|
{
|
||||||
|
if (addr >= 0x5000 && addr <= 0x5FFF)
|
||||||
|
{
|
||||||
|
XRAM[addr - 0x4000] = data;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.WriteLow(addr, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper191::Write(WORD addr, BYTE data)
|
||||||
|
public override void Write(ushort addr, byte data)
|
||||||
|
{
|
||||||
|
switch (addr & 0xE001)
|
||||||
|
{
|
||||||
|
case 0x8000:
|
||||||
|
reg[0] = data;
|
||||||
|
SetBank_CPU();
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x8001:
|
||||||
|
reg[1] = data;
|
||||||
|
|
||||||
|
switch (reg[0] & 0x07)
|
||||||
|
{
|
||||||
|
case 0x00:
|
||||||
|
chr[0] = (byte)(data & 0xFE);
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x01:
|
||||||
|
chr[2] = (byte)(data & 0xFE);
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x02:
|
||||||
|
chr[4] = data;
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x03:
|
||||||
|
chr[5] = data;
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x04:
|
||||||
|
chr[6] = data;
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x05:
|
||||||
|
chr[7] = data;
|
||||||
|
SetBank_PPU();
|
||||||
|
break;
|
||||||
|
case 0x06:
|
||||||
|
prg0 = data;
|
||||||
|
SetBank_CPU();
|
||||||
|
break;
|
||||||
|
case 0x07:
|
||||||
|
prg1 = data;
|
||||||
|
SetBank_CPU();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 0xA000:
|
||||||
|
reg[2] = data;
|
||||||
|
if (!nes.rom.Is4SCREEN())
|
||||||
|
{
|
||||||
|
if ((data & 0x01) != 0) SetVRAM_Mirror(VRAM_HMIRROR);
|
||||||
|
else SetVRAM_Mirror(VRAM_VMIRROR);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 0xA001:
|
||||||
|
reg[3] = data;
|
||||||
|
break;
|
||||||
|
case 0xC000:
|
||||||
|
reg[4] = data;
|
||||||
|
irq_counter = data;
|
||||||
|
irq_request = 0;
|
||||||
|
break;
|
||||||
|
case 0xC001:
|
||||||
|
reg[5] = data;
|
||||||
|
irq_latch = data;
|
||||||
|
irq_request = 0;
|
||||||
|
break;
|
||||||
|
case 0xE000:
|
||||||
|
reg[6] = data;
|
||||||
|
irq_enable = 0;
|
||||||
|
irq_request = 0;
|
||||||
|
nes.cpu.ClrIRQ(CPU.IRQ_MAPPER);
|
||||||
|
break;
|
||||||
|
case 0xE001:
|
||||||
|
reg[7] = data;
|
||||||
|
irq_enable = 1;
|
||||||
|
irq_request = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper191::HSync(INT scanline)
|
||||||
|
public override void HSync(int scanline)
|
||||||
|
{
|
||||||
|
if ((scanline >= 0 && scanline <= 239))
|
||||||
|
{
|
||||||
|
if (nes.ppu.IsDispON())
|
||||||
|
{
|
||||||
|
if (irq_enable != 0 && irq_request == 0)
|
||||||
|
{
|
||||||
|
if (scanline == 0)
|
||||||
|
{
|
||||||
|
if (irq_counter != 0)
|
||||||
|
{
|
||||||
|
irq_counter--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((irq_counter--) == 0)
|
||||||
|
{
|
||||||
|
irq_request = 0xFF;
|
||||||
|
irq_counter = irq_latch;
|
||||||
|
nes.cpu.SetIRQ(CPU.IRQ_MAPPER);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper191::SetBank_CPU()
|
||||||
|
|
||||||
|
private void SetBank_CPU()
|
||||||
|
{
|
||||||
|
if ((reg[0] & 0x40) != 0)
|
||||||
|
{
|
||||||
|
SetPROM_32K_Bank(PROM_8K_SIZE - 2, prg1, prg0, PROM_8K_SIZE - 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetPROM_32K_Bank(prg0, prg1, PROM_8K_SIZE - 2, PROM_8K_SIZE - 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper191::SetBank_PPU()
|
||||||
|
private void SetBank_PPU()
|
||||||
|
{
|
||||||
|
chr[1] = (byte)(chr[0] + 1);
|
||||||
|
chr[3] = (byte)(chr[2] + 1);
|
||||||
|
|
||||||
|
if ((reg[0] & 0x80) != 0)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 8; i++)
|
||||||
|
{
|
||||||
|
SetBank_PPUSUB(i, chr[(i + 4) & 7], (chr[(i + 4) & 7] & 0x80) != 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 8; i++)
|
||||||
|
{
|
||||||
|
SetBank_PPUSUB(i, chr[i], (chr[i] & 0x80) != 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper191::SetBank_PPUSUB(int bank, int page, BOOL bRAM)
|
||||||
|
private void SetBank_PPUSUB(int bank, int page, bool bRAM)
|
||||||
|
{
|
||||||
|
if (bRAM)
|
||||||
|
{
|
||||||
|
SetCRAM_1K_Bank((BYTE)bank, page & 7);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetVROM_1K_Bank((BYTE)bank, page);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//void Mapper191::SaveState(LPBYTE p)
|
//void Mapper191::SaveState(LPBYTE p)
|
||||||
public override void SaveState(byte[] p)
|
public override void SaveState(byte[] p)
|
||||||
{
|
{
|
||||||
p[0] = prg0;
|
for (INT i = 0; i < 8; i++)
|
||||||
p[1] = chr0;
|
{
|
||||||
p[2] = chr1;
|
p[i] = reg[i];
|
||||||
p[3] = chr2;
|
}
|
||||||
p[4] = chr3;
|
p[8] = prg0;
|
||||||
p[5] = highbank;
|
p[9] = prg1;
|
||||||
|
p[10] = chr[0];
|
||||||
|
p[11] = chr[2];
|
||||||
|
p[12] = chr[4];
|
||||||
|
p[13] = chr[5];
|
||||||
|
p[14] = chr[6];
|
||||||
|
p[15] = chr[7];
|
||||||
|
p[16] = irq_enable;
|
||||||
|
p[17] = irq_counter;
|
||||||
|
p[18] = irq_latch;
|
||||||
|
p[19] = irq_request;
|
||||||
}
|
}
|
||||||
|
|
||||||
//void Mapper191::LoadState(LPBYTE p)
|
//void Mapper191::LoadState(LPBYTE p)
|
||||||
public override void LoadState(byte[] p)
|
public override void LoadState(byte[] p)
|
||||||
{
|
{
|
||||||
prg0 = p[0];
|
for (INT i = 0; i < 8; i++)
|
||||||
chr0 = p[1];
|
{
|
||||||
chr1 = p[2];
|
reg[i] = p[i];
|
||||||
chr2 = p[3];
|
}
|
||||||
chr3 = p[4];
|
prg0 = p[8];
|
||||||
highbank = p[5];
|
prg1 = p[9];
|
||||||
|
chr[0] = p[10];
|
||||||
|
chr[2] = p[11];
|
||||||
|
chr[4] = p[12];
|
||||||
|
chr[5] = p[13];
|
||||||
|
chr[6] = p[14];
|
||||||
|
chr[7] = p[15];
|
||||||
|
irq_enable = p[16];
|
||||||
|
irq_counter = p[17];
|
||||||
|
irq_latch = p[18];
|
||||||
|
irq_request = p[19];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//// Mapper191 SACHEN Super Cartridge Xin1 (Ver.1-9) //
|
||||||
|
//// SACHEN Q-BOY Support //
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//using static VirtualNes.MMU;
|
||||||
|
//using BYTE = System.Byte;
|
||||||
|
//using INT = System.Int32;
|
||||||
|
|
||||||
|
|
||||||
|
//namespace VirtualNes.Core
|
||||||
|
//{
|
||||||
|
// public class Mapper191 : Mapper
|
||||||
|
// {
|
||||||
|
// BYTE[] reg = new BYTE[8];
|
||||||
|
// BYTE prg0, prg1;
|
||||||
|
// BYTE chr0, chr1, chr2, chr3;
|
||||||
|
// BYTE highbank;
|
||||||
|
// public Mapper191(NES parent) : base(parent)
|
||||||
|
// {
|
||||||
|
// }
|
||||||
|
|
||||||
|
// public override void Reset()
|
||||||
|
|
||||||
|
// {
|
||||||
|
// for (INT i = 0; i < 8; i++)
|
||||||
|
// {
|
||||||
|
// reg[i] = 0x00;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// prg0 = 0;
|
||||||
|
// // prg1 = 1;
|
||||||
|
// SetBank_CPU();
|
||||||
|
|
||||||
|
// chr0 = 0;
|
||||||
|
// chr1 = 0;
|
||||||
|
// chr2 = 0;
|
||||||
|
// chr3 = 0;
|
||||||
|
// highbank = 0;
|
||||||
|
// SetBank_PPU();
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //void Mapper191::WriteLow(WORD addr, BYTE data)
|
||||||
|
// public override void WriteLow(ushort addr, byte data)
|
||||||
|
// {
|
||||||
|
// switch (addr)
|
||||||
|
// {
|
||||||
|
// case 0x4100:
|
||||||
|
// reg[0] = data;
|
||||||
|
// break;
|
||||||
|
// case 0x4101:
|
||||||
|
// reg[1] = data;
|
||||||
|
// switch (reg[0])
|
||||||
|
// {
|
||||||
|
// case 0:
|
||||||
|
// chr0 = (byte)(data & 7);
|
||||||
|
// SetBank_PPU();
|
||||||
|
// break;
|
||||||
|
// case 1:
|
||||||
|
// chr1 = (byte)(data & 7);
|
||||||
|
// SetBank_PPU();
|
||||||
|
// break;
|
||||||
|
// case 2:
|
||||||
|
// chr2 = (byte)(data & 7);
|
||||||
|
// SetBank_PPU();
|
||||||
|
// break;
|
||||||
|
// case 3:
|
||||||
|
// chr3 = (byte)(data & 7);
|
||||||
|
// SetBank_PPU();
|
||||||
|
// break;
|
||||||
|
// case 4:
|
||||||
|
// highbank = (byte)(data & 7);
|
||||||
|
// SetBank_PPU();
|
||||||
|
// break;
|
||||||
|
// case 5:
|
||||||
|
// prg0 = (byte)(data & 7);
|
||||||
|
// SetBank_CPU();
|
||||||
|
// break;
|
||||||
|
// case 7:
|
||||||
|
// if ((data & 0x02) != 0) SetVRAM_Mirror(VRAM_HMIRROR);
|
||||||
|
// else SetVRAM_Mirror(VRAM_VMIRROR);
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// void SetBank_CPU()
|
||||||
|
// {
|
||||||
|
// SetPROM_32K_Bank(prg0);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// void SetBank_PPU()
|
||||||
|
// {
|
||||||
|
// if (VROM_1K_SIZE != 0)
|
||||||
|
// {
|
||||||
|
// SetVROM_1K_Bank(0, (((highbank << 3) + chr0) << 2) + 0);
|
||||||
|
// SetVROM_1K_Bank(1, (((highbank << 3) + chr0) << 2) + 1);
|
||||||
|
// SetVROM_1K_Bank(2, (((highbank << 3) + chr1) << 2) + 2);
|
||||||
|
// SetVROM_1K_Bank(3, (((highbank << 3) + chr1) << 2) + 3);
|
||||||
|
// SetVROM_1K_Bank(4, (((highbank << 3) + chr2) << 2) + 0);
|
||||||
|
// SetVROM_1K_Bank(5, (((highbank << 3) + chr2) << 2) + 1);
|
||||||
|
// SetVROM_1K_Bank(6, (((highbank << 3) + chr3) << 2) + 2);
|
||||||
|
// SetVROM_1K_Bank(7, (((highbank << 3) + chr3) << 2) + 3);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// public override bool IsStateSave()
|
||||||
|
// {
|
||||||
|
// return true;
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// //void Mapper191::SaveState(LPBYTE p)
|
||||||
|
// public override void SaveState(byte[] p)
|
||||||
|
// {
|
||||||
|
// p[0] = prg0;
|
||||||
|
// p[1] = chr0;
|
||||||
|
// p[2] = chr1;
|
||||||
|
// p[3] = chr2;
|
||||||
|
// p[4] = chr3;
|
||||||
|
// p[5] = highbank;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //void Mapper191::LoadState(LPBYTE p)
|
||||||
|
// public override void LoadState(byte[] p)
|
||||||
|
// {
|
||||||
|
// prg0 = p[0];
|
||||||
|
// chr0 = p[1];
|
||||||
|
// chr1 = p[2];
|
||||||
|
// chr2 = p[3];
|
||||||
|
// chr3 = p[4];
|
||||||
|
// highbank = p[5];
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
@ -0,0 +1,246 @@
|
|||||||
|
//////////////////////////////////////////////////////////////////////////
|
||||||
|
// Mapper253 WaiXing LongZhu CN //
|
||||||
|
//////////////////////////////////////////////////////////////////////////
|
||||||
|
using System;
|
||||||
|
using static VirtualNes.Core.CPU;
|
||||||
|
using static VirtualNes.MMU;
|
||||||
|
using BYTE = System.Byte;
|
||||||
|
using INT = System.Int32;
|
||||||
|
|
||||||
|
namespace VirtualNes.Core
|
||||||
|
{
|
||||||
|
public class Mapper253 : Mapper
|
||||||
|
{
|
||||||
|
BYTE VRAM_switch;
|
||||||
|
BYTE rom_type;
|
||||||
|
BYTE[] reg = new BYTE[9];
|
||||||
|
BYTE irq_enable;
|
||||||
|
BYTE irq_counter;
|
||||||
|
BYTE irq_latch;
|
||||||
|
INT irq_clock;
|
||||||
|
public Mapper253(NES parent) : base(parent)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool IsStateSave()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper253::Reset()
|
||||||
|
public override void Reset()
|
||||||
|
{
|
||||||
|
// nes.ppu.SetVromWrite(1);
|
||||||
|
for (INT i = 0; i < 8; i++)
|
||||||
|
{
|
||||||
|
reg[i] = (byte)i;
|
||||||
|
}
|
||||||
|
reg[8] = 0;
|
||||||
|
|
||||||
|
irq_enable = 0;
|
||||||
|
irq_counter = 0;
|
||||||
|
irq_latch = 0;
|
||||||
|
irq_clock = 0;
|
||||||
|
VRAM_switch = 0;
|
||||||
|
rom_type = 0;
|
||||||
|
SetPROM_32K_Bank(0, 1, PROM_8K_SIZE - 2, PROM_8K_SIZE - 1);
|
||||||
|
SetVROM_8K_Bank(0);
|
||||||
|
|
||||||
|
uint crc = nes.rom.GetPROM_CRC();
|
||||||
|
if (crc == 0x0530b26e)
|
||||||
|
{ //[HengGe] Shen Hua Jian Yun III (C)
|
||||||
|
rom_type = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper253::Write(WORD addr, BYTE data)
|
||||||
|
public override void Write(ushort addr, byte data)
|
||||||
|
{
|
||||||
|
Debug.Debuger.Log($"Address={addr & 0xFFFF} Data={data & 0xFF}");
|
||||||
|
|
||||||
|
if (addr == 0x8010)
|
||||||
|
{
|
||||||
|
SetPROM_8K_Bank(4, data);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (addr == 0xA010)
|
||||||
|
{
|
||||||
|
SetPROM_8K_Bank(5, data);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (addr == 0x9400)
|
||||||
|
{
|
||||||
|
data &= 0x03;
|
||||||
|
if (data == 0) SetVRAM_Mirror(VRAM_VMIRROR);
|
||||||
|
else if (data == 1) SetVRAM_Mirror(VRAM_HMIRROR);
|
||||||
|
else if (data == 2) SetVRAM_Mirror(VRAM_MIRROR4L);
|
||||||
|
else SetVRAM_Mirror(VRAM_MIRROR4H);
|
||||||
|
}
|
||||||
|
switch (addr & 0xF00C)
|
||||||
|
{
|
||||||
|
case 0xB000:
|
||||||
|
reg[0] = (byte)((reg[0] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(0, reg[0]);
|
||||||
|
break;
|
||||||
|
case 0xB004:
|
||||||
|
reg[0] = (byte)((reg[0] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(0, reg[0] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xB008:
|
||||||
|
reg[1] = (byte)((reg[1] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(1, reg[1]);
|
||||||
|
break;
|
||||||
|
case 0xB00C:
|
||||||
|
reg[1] = (byte)((reg[1] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(1, reg[1] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xC000:
|
||||||
|
reg[2] = (byte)((reg[2] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(2, reg[2]);
|
||||||
|
break;
|
||||||
|
case 0xC004:
|
||||||
|
reg[2] = (byte)((reg[2] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(2, reg[2] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xC008:
|
||||||
|
reg[3] = (byte)((reg[3] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(3, reg[3]);
|
||||||
|
break;
|
||||||
|
case 0xC00C:
|
||||||
|
reg[3] = (byte)((reg[3] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(3, reg[3] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xD000:
|
||||||
|
reg[4] = (byte)((reg[4] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(4, reg[4]);
|
||||||
|
break;
|
||||||
|
case 0xD004:
|
||||||
|
reg[4] = (byte)((reg[4] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(4, reg[4] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xD008:
|
||||||
|
reg[5] = (byte)((reg[5] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(5, reg[5]);
|
||||||
|
break;
|
||||||
|
case 0xD00C:
|
||||||
|
reg[5] = (byte)((reg[5] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(5, reg[5] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xE000:
|
||||||
|
reg[6] = (byte)((reg[6] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(6, reg[6]);
|
||||||
|
break;
|
||||||
|
case 0xE004:
|
||||||
|
reg[6] = (byte)((reg[6] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(6, reg[6] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xE008:
|
||||||
|
reg[7] = (byte)((reg[7] & 0xF0) | (data & 0x0F));
|
||||||
|
SetBank_PPUSUB(7, reg[7]);
|
||||||
|
break;
|
||||||
|
case 0xE00C:
|
||||||
|
reg[7] = (byte)((reg[7] & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
SetBank_PPUSUB(7, reg[7] + ((data >> 4) * 0x100));
|
||||||
|
break;
|
||||||
|
case 0xF000:
|
||||||
|
irq_latch = (byte)((irq_latch & 0xF0) | (data & 0x0F));
|
||||||
|
break;
|
||||||
|
case 0xF004:
|
||||||
|
irq_latch = (byte)((irq_latch & 0x0F) | ((data & 0x0F) << 4));
|
||||||
|
break;
|
||||||
|
case 0xF008:
|
||||||
|
irq_enable = (byte)(data & 0x03);
|
||||||
|
if ((irq_enable & 0x02) != null)
|
||||||
|
{
|
||||||
|
irq_counter = irq_latch;
|
||||||
|
irq_clock = 0;
|
||||||
|
}
|
||||||
|
nes.cpu.ClrIRQ(IRQ_MAPPER);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper253::SetBank_PPUSUB(int bank, int page)
|
||||||
|
private void SetBank_PPUSUB(int bank, int page)
|
||||||
|
{
|
||||||
|
if (rom_type == 1)
|
||||||
|
{
|
||||||
|
if (page == 0x88)
|
||||||
|
{
|
||||||
|
VRAM_switch = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if (page == 0xc8)
|
||||||
|
{
|
||||||
|
VRAM_switch = 1;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((page == 4) || (page == 5))
|
||||||
|
{
|
||||||
|
if ((VRAM_switch == 0) && (rom_type == 1))
|
||||||
|
{
|
||||||
|
SetVROM_1K_Bank((byte)bank, page);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetCRAM_1K_Bank((byte)bank, page);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetVROM_1K_Bank((byte)bank, page);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper253::Clock(INT cycles)
|
||||||
|
public override void Clock(int cycles)
|
||||||
|
{
|
||||||
|
if ((irq_enable & 0x02)!= null)
|
||||||
|
{
|
||||||
|
if ((irq_clock += cycles) >= 0x72)
|
||||||
|
{
|
||||||
|
irq_clock -= 0x72;
|
||||||
|
if (irq_counter == 0xFF)
|
||||||
|
{
|
||||||
|
irq_counter = irq_latch;
|
||||||
|
irq_enable = (BYTE)((irq_enable & 0x01) * 3);
|
||||||
|
nes.cpu.SetIRQ(IRQ_MAPPER);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
irq_counter++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper253::SaveState(LPBYTE p)
|
||||||
|
public override void SaveState(byte[] p)
|
||||||
|
{
|
||||||
|
for (INT i = 0; i < 9; i++)
|
||||||
|
{
|
||||||
|
p[i] = reg[i];
|
||||||
|
}
|
||||||
|
p[9] = irq_enable;
|
||||||
|
p[10] = irq_counter;
|
||||||
|
p[11] = irq_latch;
|
||||||
|
//*(INT*)&p[12] = irq_clock;
|
||||||
|
p[12] = (byte)irq_clock;
|
||||||
|
}
|
||||||
|
|
||||||
|
//void Mapper253::LoadState(LPBYTE p)
|
||||||
|
public override void LoadState(byte[] p)
|
||||||
|
{
|
||||||
|
for (INT i = 0; i < 9; i++)
|
||||||
|
{
|
||||||
|
reg[i] = p[i];
|
||||||
|
}
|
||||||
|
irq_enable = p[9];
|
||||||
|
irq_counter = p[10];
|
||||||
|
irq_latch = p[11];
|
||||||
|
//irq_clock = *(INT*)&p[12];
|
||||||
|
irq_clock = p[12];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 18997986769512340ba3766e5a555b22
|
@ -0,0 +1,282 @@
|
|||||||
|
//using System;
|
||||||
|
//using VirtualNes.Core;
|
||||||
|
|
||||||
|
//------------------------------.h-------------------------------
|
||||||
|
|
||||||
|
// //////////////////////////////////////////////////////////////////////////
|
||||||
|
// // MapperFk23c WaiXing San Guo Zhi - Xiong Ba Tian Xia (C) //
|
||||||
|
// //////////////////////////////////////////////////////////////////////////
|
||||||
|
//class MapperFk23c : public MMC3
|
||||||
|
//{
|
||||||
|
//public:
|
||||||
|
// MapperFk23c(NES * parent);
|
||||||
|
|
||||||
|
|
||||||
|
//void Reset();
|
||||||
|
//void Write(WORD addr, BYTE data);
|
||||||
|
//void WriteLow(WORD addr, BYTE data);
|
||||||
|
|
||||||
|
//// For state save
|
||||||
|
//BOOL IsStateSave() { return TRUE; }
|
||||||
|
//void SaveState(LPBYTE p);
|
||||||
|
//void LoadState(LPBYTE p);
|
||||||
|
|
||||||
|
//protected:
|
||||||
|
// BYTE exRegs[8];
|
||||||
|
//BYTE unromChr, mode;
|
||||||
|
|
||||||
|
//private:
|
||||||
|
// void fk23c_UpdatePrg2p(unsigned int addr, unsigned int bank);
|
||||||
|
//void fk23c_UpdateChr2p(unsigned int addr, unsigned int bank);
|
||||||
|
//virtual void fk23c_UpdatePrg();
|
||||||
|
//void fk23c_UpdateChr();
|
||||||
|
//};
|
||||||
|
|
||||||
|
//class MapperFk23ca : public MapperFk23c
|
||||||
|
//{
|
||||||
|
//public:
|
||||||
|
// MapperFk23ca(NES * parent);
|
||||||
|
//void Reset();
|
||||||
|
|
||||||
|
//private:
|
||||||
|
// void fk23c_UpdatePrg();
|
||||||
|
//};
|
||||||
|
|
||||||
|
//-----------------------------CPP-------------------------------
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
//// MapperFk23c WaiXing San Guo Zhi - Xiong Ba Tian Xia (C) //
|
||||||
|
////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
//using System;
|
||||||
|
//using VirtualNes.Core;
|
||||||
|
|
||||||
|
//MapperFk23c::MapperFk23c(NES * parent) : MMC3(parent)
|
||||||
|
//{
|
||||||
|
// UpdateChr = (void(__thiscall MMC3::* )(unsigned int, unsigned int)) & MapperFk23c::fk23c_UpdateChr2p;
|
||||||
|
// UpdatePrg = (void(__thiscall MMC3::* )(unsigned int, unsigned int)) & MapperFk23c::fk23c_UpdatePrg2p;
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23c::Reset()
|
||||||
|
//{
|
||||||
|
// uint8 i;
|
||||||
|
// for (i = 0; i < 8; ++i)
|
||||||
|
// exRegs[i] = 0xFF;
|
||||||
|
|
||||||
|
// if (PROM_16K_SIZE <= 32)
|
||||||
|
// {
|
||||||
|
// for (i = 0; i < 4; ++i)
|
||||||
|
// exRegs[i] = 0x00;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// unromChr = 0x0;
|
||||||
|
// mode = 0;
|
||||||
|
|
||||||
|
// MMC3::Reset();
|
||||||
|
// Mmc3_UpdatePrg();
|
||||||
|
// Mmc3_UpdateChr();
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23c::WriteLow(WORD A, BYTE V)
|
||||||
|
//{
|
||||||
|
// if ((A >= 0x5000) && (A <= 0x5fff))
|
||||||
|
// {
|
||||||
|
// if (A & (1U << (mode + 4)))
|
||||||
|
// {
|
||||||
|
// exRegs[A & 0x3] = V;
|
||||||
|
|
||||||
|
// fk23c_UpdatePrg();
|
||||||
|
// fk23c_UpdateChr();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// Mapper::WriteLow(A, V);
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
//void MapperFk23c::Write(WORD A, BYTE V)
|
||||||
|
//{
|
||||||
|
// if (exRegs[0] & 0x40U)
|
||||||
|
// {
|
||||||
|
// unromChr = (exRegs[0] & 0x30U) ? 0x0 : V & 0x3;
|
||||||
|
// fk23c_UpdateChr();
|
||||||
|
// }
|
||||||
|
// else switch (A & 0xE001)
|
||||||
|
// {
|
||||||
|
// case 0x8000: Poke_Mmc3_8000(A, V); break;
|
||||||
|
// case 0x8001:
|
||||||
|
|
||||||
|
// if (exRegs[3] << 2 & (ctrl0 & 0x8))
|
||||||
|
// {
|
||||||
|
// exRegs[4 | (ctrl0 & 0x3)] = V;
|
||||||
|
|
||||||
|
// fk23c_UpdatePrg();
|
||||||
|
// fk23c_UpdateChr();
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// Poke_Mmc3_8001(A, V);
|
||||||
|
// }
|
||||||
|
// break;
|
||||||
|
|
||||||
|
// case 0xA000:
|
||||||
|
// if (V)
|
||||||
|
// SetVRAM_Mirror(VRAM_HMIRROR);
|
||||||
|
// else
|
||||||
|
// SetVRAM_Mirror(VRAM_VMIRROR);
|
||||||
|
// break;
|
||||||
|
// case 0xA001: Poke_Mmc3_A001(A, V); break;
|
||||||
|
// case 0xC000: Poke_Mmc3_C000(A, V); break;
|
||||||
|
// case 0xC001: Poke_Mmc3_C001(A, V); break;
|
||||||
|
// case 0xE000: Poke_Mmc3_E000(A, V); break;
|
||||||
|
// case 0xE001: Poke_Mmc3_E001(A, V); break;
|
||||||
|
|
||||||
|
// default:;
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
//void MapperFk23c::fk23c_UpdatePrg2p(unsigned int A, unsigned int V)
|
||||||
|
//{
|
||||||
|
// if ((exRegs[0] & 0x7U) - 3 > 1 && (!(exRegs[3] & 0x2U) || A < 0x4000))
|
||||||
|
// {
|
||||||
|
// if (exRegs[0] & 0x3U)
|
||||||
|
// V = (V & (0x3FU >> (exRegs[0] & 0x3U))) | (exRegs[1] << 1);
|
||||||
|
|
||||||
|
// SetPROM_8K_Bank((A >> 13) + 4, V);
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23c::fk23c_UpdateChr2p(unsigned int A, unsigned int V)
|
||||||
|
//{
|
||||||
|
// if (VROM_1K_SIZE == 0) return;//ÔÝʱûÓкõĽâ¾ö·½·¨
|
||||||
|
|
||||||
|
// if (!(exRegs[0] & 0x40U) && (!(exRegs[3] & 0x2U) || (A != 0x400 && A != 0xC00)))
|
||||||
|
// SetVROM_1K_Bank(A >> 10, (exRegs[2] & 0x7FU) << 3 | V);
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
//void MapperFk23c::fk23c_UpdatePrg()
|
||||||
|
//{
|
||||||
|
// if ((exRegs[0] & 0x7U) == 4)
|
||||||
|
// {
|
||||||
|
// SetPROM_32K_Bank(exRegs[1] >> 1);
|
||||||
|
// }
|
||||||
|
// else if ((exRegs[0] & 0x7U) == 3)
|
||||||
|
// {
|
||||||
|
// SetPROM_16K_Bank(4, exRegs[1]);
|
||||||
|
// SetPROM_16K_Bank(6, exRegs[1]);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// if (exRegs[3] & 0x2U)
|
||||||
|
// {
|
||||||
|
// SetPROM_8K_Bank(6, exRegs[4]);
|
||||||
|
// SetPROM_8K_Bank(7, exRegs[5]);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Mmc3_UpdatePrg();
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23c::fk23c_UpdateChr()
|
||||||
|
//{
|
||||||
|
// if (exRegs[0] & 0x40U)
|
||||||
|
// {
|
||||||
|
// SetVROM_8K_Bank(exRegs[2] | unromChr);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// if (exRegs[3] & 0x2U)
|
||||||
|
// {
|
||||||
|
// const unsigned int base = (exRegs[2] & 0x7FU) << 3;
|
||||||
|
|
||||||
|
// SetVROM_1K_Bank(1, base | exRegs[6]);
|
||||||
|
// SetVROM_1K_Bank(3, base | exRegs[7]);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Mmc3_UpdateChr();
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23c::SaveState(LPBYTE p)
|
||||||
|
//{/*
|
||||||
|
// for( INT i = 0; i < 8; i++ ) {
|
||||||
|
// p[i] = reg[i];
|
||||||
|
// p[10+i] = chr[i];
|
||||||
|
// }
|
||||||
|
|
||||||
|
// p[ 8] = prg[0];
|
||||||
|
// p[ 9] = prg[1];
|
||||||
|
// p[18] = irq_enable;
|
||||||
|
// p[19] = irq_counter;
|
||||||
|
// p[20] = irq_latch;
|
||||||
|
// p[21] = irq_request;
|
||||||
|
// p[22] = prg[2];
|
||||||
|
// p[23] = prg[3];
|
||||||
|
// */
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23c::LoadState(LPBYTE p)
|
||||||
|
//{
|
||||||
|
// /*for( INT i = 0; i < 8; i++ ) {
|
||||||
|
// reg[i] = p[i];
|
||||||
|
// chr[i] = p[10+i];
|
||||||
|
// }
|
||||||
|
// prg[0] = p[ 8];
|
||||||
|
// prg[1] = p[ 9];
|
||||||
|
// irq_enable = p[18];
|
||||||
|
// irq_counter = p[19];
|
||||||
|
// irq_latch = p[20];
|
||||||
|
// irq_request = p[21];
|
||||||
|
// prg[2] = p[ 22];
|
||||||
|
// prg[3] = p[ 23];*/
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//MapperFk23ca::MapperFk23ca(NES * parent) : MapperFk23c(parent)
|
||||||
|
//{
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23ca::Reset()
|
||||||
|
//{
|
||||||
|
// uint8 i;
|
||||||
|
// for (i = 0; i < 8; ++i)
|
||||||
|
// MapperFk23c::exRegs[i] = 0xFF;
|
||||||
|
|
||||||
|
// for (i = 0; i < 4; ++i)
|
||||||
|
// exRegs[i] = 0x00;
|
||||||
|
|
||||||
|
// MapperFk23c::unromChr = 0x0;
|
||||||
|
// MapperFk23c::mode = 0;
|
||||||
|
|
||||||
|
// MMC3::Reset();
|
||||||
|
// Mmc3_UpdatePrg();
|
||||||
|
// Mmc3_UpdateChr();
|
||||||
|
//}
|
||||||
|
|
||||||
|
//void MapperFk23ca::fk23c_UpdatePrg()
|
||||||
|
//{
|
||||||
|
// uint32 bank = (exRegs[1] & 0x1F);
|
||||||
|
// uint32 block = (exRegs[1] & 0x60);
|
||||||
|
// uint32 extra = (exRegs[3] & 2);
|
||||||
|
|
||||||
|
// if ((exRegs[0] & 0x7U) == 4)
|
||||||
|
// {
|
||||||
|
// SetPROM_32K_Bank((bank + block) >> 1);
|
||||||
|
// }
|
||||||
|
// else if ((exRegs[0] & 0x7U) == 3)
|
||||||
|
// {
|
||||||
|
// SetPROM_16K_Bank(4, (bank + block));
|
||||||
|
// SetPROM_16K_Bank(6, (bank + block));
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// if (extra)
|
||||||
|
// {
|
||||||
|
// SetPROM_8K_Bank(6, exRegs[4]);
|
||||||
|
// SetPROM_8K_Bank(7, exRegs[5]);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ec2612a9819d1f34cb86820bc16cbcc8
|
@ -0,0 +1,253 @@
|
|||||||
|
//using System;
|
||||||
|
//using Unity.Android.Gradle;
|
||||||
|
//using Unity.Android.Gradle.Manifest;
|
||||||
|
//using VirtualNes.Core;
|
||||||
|
|
||||||
|
//namespace VirtualNes.Core
|
||||||
|
//{
|
||||||
|
|
||||||
|
// public class map0_3208cn : Mapper
|
||||||
|
// {
|
||||||
|
// public map0_3208cn(NES parent) : base(parent) { }
|
||||||
|
// //void map0_3208cn::Reset()
|
||||||
|
// public override void Reset()
|
||||||
|
// {
|
||||||
|
// SetPROM_32K_Bank(0);
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
// //void map0_3208cn::Write(WORD addr, BYTE data)
|
||||||
|
// public override void Write(ushort addr, byte data)
|
||||||
|
// {
|
||||||
|
// //addr = 0x8000,Çл» PROM
|
||||||
|
// if (addr == 0x8032)
|
||||||
|
// SetPROM_32K_Bank(data);
|
||||||
|
// if (addr == 0x8416)
|
||||||
|
// SetPROM_16K_Bank(4, data);
|
||||||
|
// if (addr == 0x8616)
|
||||||
|
// SetPROM_16K_Bank(6, data);
|
||||||
|
// if (addr == 0x8408)
|
||||||
|
// SetPROM_8K_Bank(4, data);
|
||||||
|
// if (addr == 0x8508)
|
||||||
|
// SetPROM_8K_Bank(5, data);
|
||||||
|
// if (addr == 0x8608)
|
||||||
|
// SetPROM_8K_Bank(6, data);
|
||||||
|
// if (addr == 0x8708)
|
||||||
|
// SetPROM_8K_Bank(7, data);
|
||||||
|
|
||||||
|
// //addr = 0x8001,Çл» VROM
|
||||||
|
// if (addr == 0x9008)
|
||||||
|
// SetVROM_8K_Bank(data);
|
||||||
|
// if (addr == 0x9004)
|
||||||
|
// SetVROM_4K_Bank(0, data);
|
||||||
|
// if (addr == 0x9404)
|
||||||
|
// SetVROM_4K_Bank(4, data);
|
||||||
|
// if (addr == 0x9001)
|
||||||
|
// SetVROM_1K_Bank(0, data);
|
||||||
|
// if (addr == 0x9101)
|
||||||
|
// SetVROM_1K_Bank(1, data);
|
||||||
|
// if (addr == 0x9201)
|
||||||
|
// SetVROM_1K_Bank(2, data);
|
||||||
|
// if (addr == 0x9301)
|
||||||
|
// SetVROM_1K_Bank(3, data);
|
||||||
|
// if (addr == 0x9401)
|
||||||
|
// SetVROM_1K_Bank(4, data);
|
||||||
|
// if (addr == 0x9501)
|
||||||
|
// SetVROM_1K_Bank(5, data);
|
||||||
|
// if (addr == 0x9601)
|
||||||
|
// SetVROM_1K_Bank(6, data);
|
||||||
|
// if (addr == 0x9701)
|
||||||
|
// SetVROM_1K_Bank(7, data);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// public class GeniusMerioBros : Mapper
|
||||||
|
// {
|
||||||
|
|
||||||
|
// public GeniusMerioBros(NES parent) : base(parent) { }
|
||||||
|
// //void GeniusMerioBros::Reset()
|
||||||
|
// public override void Reset()
|
||||||
|
// {
|
||||||
|
// SetPROM_32K_Bank(0);
|
||||||
|
// memcpy(WRAM, PROM + 0x2000 * 4, 0x800);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //BYTE GeniusMerioBros::ReadLow(WORD A)
|
||||||
|
// public override byte ReadLow(ushort addr)
|
||||||
|
// {
|
||||||
|
// if (A >= 0x6000 && A <= 0x6FFF)
|
||||||
|
// {
|
||||||
|
// return CPU_MEM_BANK[0][A & 0x7FF];
|
||||||
|
// }
|
||||||
|
// else if (A >= 0x7000 && A <= 0x7FFF)
|
||||||
|
// {
|
||||||
|
// return XRAM[A & 0x7FF];
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// return (BYTE)(A >> 8);
|
||||||
|
|
||||||
|
// }
|
||||||
|
// //void GeniusMerioBros::WriteLow(WORD A, BYTE V)
|
||||||
|
// public override void WriteLow(ushort addr, byte data)
|
||||||
|
// {
|
||||||
|
// if (A >= 0x7000 && A <= 0x7FFF)
|
||||||
|
// {
|
||||||
|
// XRAM[A & 0x7FF] = V;
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// if (A >= 0x6000 && A <= 0x6FFF)
|
||||||
|
// {
|
||||||
|
// CPU_MEM_BANK[A >> 13][A & 0x1FFF] = V;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// public class smb2j : Mapper
|
||||||
|
// {
|
||||||
|
|
||||||
|
// BYTE prg, IRQa;
|
||||||
|
// WORD IRQCount;
|
||||||
|
// public smb2j(NES parent) : base(parent) { }
|
||||||
|
// //Super Mario Bros. 2j (Unl) [U][!]
|
||||||
|
// //void smb2j::Reset()
|
||||||
|
// public override void Reset()
|
||||||
|
// {
|
||||||
|
// prg = 0;
|
||||||
|
|
||||||
|
// memcpy(MRAM, &PROMPTR[1][0x1000], 0x1000);
|
||||||
|
// SetPrg8r(1, 0x6000, 1);
|
||||||
|
// SetPROM_32K_Bank(prg);
|
||||||
|
// SetVROM_8K_Bank(0);
|
||||||
|
// SetVRAM_Mirror(VRAM_VMIRROR);
|
||||||
|
// IRQa = 0;
|
||||||
|
// IRQCount = 0;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //void smb2j::Write(WORD A, BYTE V)// (0x4020,0xffff)
|
||||||
|
// public override void Write(ushort addr, byte data)
|
||||||
|
// {
|
||||||
|
// if (A == 0x4022)
|
||||||
|
// {
|
||||||
|
// prg = V & 1;
|
||||||
|
// SetPROM_32K_Bank(prg);
|
||||||
|
// }
|
||||||
|
// if (A == 0x4122)
|
||||||
|
// {
|
||||||
|
// IRQa = V;
|
||||||
|
// IRQCount = 0;
|
||||||
|
// nes->cpu->ClrIRQ(IRQ_MAPPER);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //void smb2j::WriteLow(WORD A, BYTE V)
|
||||||
|
// public override void WriteLow(ushort addr, byte data)
|
||||||
|
// {
|
||||||
|
// Write(A, V);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //void smb2j::Clock(INT a)
|
||||||
|
// public override void Clock(int cycles)
|
||||||
|
// {
|
||||||
|
// if (IRQa)
|
||||||
|
// {
|
||||||
|
// IRQCount += a * 3;
|
||||||
|
// if ((IRQCount >> 12) == IRQa)
|
||||||
|
// nes->cpu->SetIRQ(IRQ_MAPPER);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //BYTE smb2j::ReadLow(WORD A)
|
||||||
|
// public override byte ReadLow(ushort addr)
|
||||||
|
// {
|
||||||
|
// if ((A >= 0x5000) && (A < 0x6000))
|
||||||
|
// return MRAM[A - 0x5000];
|
||||||
|
// return Mapper::ReadLow(A);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// //public class smb2j : Mapper
|
||||||
|
// //{
|
||||||
|
|
||||||
|
// // WORD cmdreg;
|
||||||
|
// // BYTE invalid_data;
|
||||||
|
// // public smb2j(NES parent) : base(parent) { }
|
||||||
|
|
||||||
|
// // void Reset();
|
||||||
|
// // void SoftReset();
|
||||||
|
// // void Write(WORD addr, BYTE data);
|
||||||
|
// // BYTE Read(WORD addr);
|
||||||
|
// // void Sync(void);
|
||||||
|
// //}
|
||||||
|
|
||||||
|
|
||||||
|
// //void Mapper8157::SoftReset()
|
||||||
|
// // {
|
||||||
|
// // cmdreg = 0x200;
|
||||||
|
// // invalid_data ^= 1;
|
||||||
|
// // Sync();
|
||||||
|
// // }
|
||||||
|
|
||||||
|
// // void Mapper8157::Sync(void)
|
||||||
|
// // {
|
||||||
|
// // SetPrg16r((cmdreg & 0x060) >> 5, 0x8000, (cmdreg & 0x01C) >> 2);
|
||||||
|
// // SetPrg16r((cmdreg & 0x060) >> 5, 0xC000, (cmdreg & 0x200) ? (PROM_16K_SIZE / 4 - 1) : 0);
|
||||||
|
// // SetVRAM_Mirror(((cmdreg & 2) >> 1) ^ 1);
|
||||||
|
// // }
|
||||||
|
|
||||||
|
// // BYTE Mapper8157::Read(WORD A)
|
||||||
|
// // {
|
||||||
|
// // if (invalid_data && cmdreg & 0x100)
|
||||||
|
// // return 0xFF;
|
||||||
|
// // else
|
||||||
|
// // return Mapper::Read(A);
|
||||||
|
// // }
|
||||||
|
|
||||||
|
// // void Mapper8157::Write(WORD A, BYTE V)
|
||||||
|
// // {
|
||||||
|
// // cmdreg = A;
|
||||||
|
// // Sync();
|
||||||
|
// // }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// public class MapperT262 : Mapper
|
||||||
|
// {
|
||||||
|
|
||||||
|
// uint16 addrreg;
|
||||||
|
// uint8 datareg;
|
||||||
|
// uint8 busy;
|
||||||
|
// public MapperT262(NES parent) : base(parent) { }
|
||||||
|
|
||||||
|
// //void MapperT262::Reset()
|
||||||
|
// public override void Reset()
|
||||||
|
// {
|
||||||
|
// SetVROM_8K_Bank(0);
|
||||||
|
// busy = 0;
|
||||||
|
// addrreg = 0;
|
||||||
|
// datareg = 0;
|
||||||
|
|
||||||
|
// uint16 base = ((addrreg & 0x60) >> 2) | ((addrreg & 0x100) >> 3);
|
||||||
|
// SetPROM_16K_Bank(0x8000 >> 13, (datareg & 7) | base);
|
||||||
|
// SetPROM_16K_Bank(0xC000 >> 13, 7 | base);
|
||||||
|
// SetVRAM_Mirror(((addrreg & 2) >> 1) ^ 1);
|
||||||
|
// }
|
||||||
|
// //void MapperT262::Write(WORD A, BYTE V)
|
||||||
|
// public override void Write(ushort addr, byte data)
|
||||||
|
// {
|
||||||
|
// if (busy || (A == 0x8000))
|
||||||
|
// datareg = V;
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// addrreg = A;
|
||||||
|
// busy = 1;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// uint16 base = ((addrreg & 0x60) >> 2) | ((addrreg & 0x100) >> 3);
|
||||||
|
// SetPROM_16K_Bank(0x8000 >> 13, (datareg & 7) | base);
|
||||||
|
// SetPROM_16K_Bank(0xC000 >> 13, 7 | base);
|
||||||
|
// SetVRAM_Mirror(((addrreg & 2) >> 1) ^ 1);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c022787531a02234dacffb16e9788d5f
|
@ -42,6 +42,7 @@ namespace AxibugEmuOnline.Server.Common
|
|||||||
|
|
||||||
public static MySqlConnection DequeueSQLConn(string FuncStr)
|
public static MySqlConnection DequeueSQLConn(string FuncStr)
|
||||||
{
|
{
|
||||||
|
Console.WriteLine($"[DequeueSQLConn]{FuncStr}");
|
||||||
lock (_sync)
|
lock (_sync)
|
||||||
{
|
{
|
||||||
if (_DicSqlRunFunNum.ContainsKey(FuncStr))
|
if (_DicSqlRunFunNum.ContainsKey(FuncStr))
|
||||||
|
@ -17,6 +17,7 @@ namespace AxibugEmuOnline.Server
|
|||||||
public static IOCPNetWork g_SocketMgr;
|
public static IOCPNetWork g_SocketMgr;
|
||||||
public static RoomManager g_Room;
|
public static RoomManager g_Room;
|
||||||
public static GameShareManager g_GameShareMgr;
|
public static GameShareManager g_GameShareMgr;
|
||||||
|
private static SavDataManager g_GameSavMgr;
|
||||||
|
|
||||||
public static void InitServer(int port)
|
public static void InitServer(int port)
|
||||||
{
|
{
|
||||||
@ -33,6 +34,7 @@ namespace AxibugEmuOnline.Server
|
|||||||
g_SocketMgr = new IOCPNetWork(1024, 4096 * 2);
|
g_SocketMgr = new IOCPNetWork(1024, 4096 * 2);
|
||||||
g_Room = new RoomManager();
|
g_Room = new RoomManager();
|
||||||
g_GameShareMgr = new GameShareManager();
|
g_GameShareMgr = new GameShareManager();
|
||||||
|
g_GameSavMgr = new SavDataManager();
|
||||||
|
|
||||||
g_SocketMgr.Init();
|
g_SocketMgr.Init();
|
||||||
g_SocketMgr.Start(new IPEndPoint(IPAddress.Any.Address, port));
|
g_SocketMgr.Start(new IPEndPoint(IPAddress.Any.Address, port));
|
||||||
|
@ -11,6 +11,8 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
public SavDataManager()
|
public SavDataManager()
|
||||||
{
|
{
|
||||||
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavGetGameSavList, RecvGetGameSavList);
|
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavGetGameSavList, RecvGetGameSavList);
|
||||||
|
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavDelGameSav, RecvDelGameSav);
|
||||||
|
NetMsg.Instance.RegNetMsgEvent((int)CommandID.CmdGamesavUploadGameSav, RecvUpLoadGameSav);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RecvGetGameSavList(Socket _socket, byte[] reqData)
|
public void RecvGetGameSavList(Socket _socket, byte[] reqData)
|
||||||
@ -29,7 +31,7 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
MySqlConnection conn = SQLPool.DequeueSQLConn("RecvGameMark");
|
MySqlConnection conn = SQLPool.DequeueSQLConn("RecvGameMark");
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
string query = "SELECT `romid`, `savidx`, `savName`,`savNote`, `savUrl`,`savImgUrl`, `savDate` from user_gamesavedata where uid = ?uid and romid = ?romid";
|
string query = "SELECT `id`,`uid`,`romid`, `savidx`, `savName`,`savNote`, `savUrl`,`savImgUrl`, `savDate` from user_gamesavedata where uid = ?uid and romid = ?romid";
|
||||||
bool bHad = false;
|
bool bHad = false;
|
||||||
using (var command = new MySqlCommand(query, conn))
|
using (var command = new MySqlCommand(query, conn))
|
||||||
{
|
{
|
||||||
@ -43,13 +45,16 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
Protobuf_Mine_GameSavInfo resp = new Protobuf_Mine_GameSavInfo()
|
Protobuf_Mine_GameSavInfo resp = new Protobuf_Mine_GameSavInfo()
|
||||||
{
|
{
|
||||||
BHadSaveData = true,
|
BHadSaveData = true,
|
||||||
RomID = reader.GetInt32(0),
|
SavID = reader.GetInt64(0),
|
||||||
SavDataIdx = reader.GetInt32(1),
|
Uid = reader.GetInt64(1),
|
||||||
SavName = reader.GetString(2),
|
RomID = reader.GetInt32(2),
|
||||||
Note = reader.GetString(3),
|
SavDataIdx = reader.GetInt32(3),
|
||||||
SavUrl = reader.GetString(4),
|
SavName = reader.GetString(4),
|
||||||
SavImgUrl = reader.GetString(5),
|
Note = reader.GetString(5),
|
||||||
SavDate = reader.GetDateTime(6).ToString()
|
SavUrl = reader.GetString(6),
|
||||||
|
SavImgUrl = reader.GetString(7),
|
||||||
|
SavDate = reader.GetDateTime(8).ToString(),
|
||||||
|
GamePlatformType = AppSrv.g_GameShareMgr.GetRomPlatformType(msg.RomID)
|
||||||
};
|
};
|
||||||
respData.SavDataList[resp.SavDataIdx] = resp;
|
respData.SavDataList[resp.SavDataIdx] = resp;
|
||||||
}
|
}
|
||||||
@ -65,6 +70,7 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
respData.RomID = msg.RomID;
|
respData.RomID = msg.RomID;
|
||||||
AppSrv.g_ClientMgr.ClientSend(_c, (int)CommandID.CmdGamesavGetGameSavList, (int)ErrorCode.ErrorOk, ProtoBufHelper.Serizlize(respData));
|
AppSrv.g_ClientMgr.ClientSend(_c, (int)CommandID.CmdGamesavGetGameSavList, (int)ErrorCode.ErrorOk, ProtoBufHelper.Serizlize(respData));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RecvDelGameSav(Socket _socket, byte[] reqData)
|
public void RecvDelGameSav(Socket _socket, byte[] reqData)
|
||||||
{
|
{
|
||||||
Protobuf_Mine_DelGameSav msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_DelGameSav>(reqData);
|
Protobuf_Mine_DelGameSav msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_DelGameSav>(reqData);
|
||||||
@ -92,13 +98,11 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (!bHad)
|
if (!bHad)
|
||||||
{
|
{
|
||||||
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
||||||
@ -107,22 +111,128 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
{
|
{
|
||||||
bool bDelSav = FileDelete(Path.Combine(Config.cfg.savDataPath, SavUrl));
|
bool bDelSav = FileDelete(Path.Combine(Config.cfg.savDataPath, SavUrl));
|
||||||
bool bDelImg = FileDelete(Path.Combine(Config.cfg.savDataPath, SavImgUrl));
|
bool bDelImg = FileDelete(Path.Combine(Config.cfg.savDataPath, SavImgUrl));
|
||||||
if (bDelSav || !bDelImg)
|
if (!bDelSav || !bDelImg)
|
||||||
{
|
{
|
||||||
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string query = "delete from user_gamesavedata where uid = ?uid and romid = ?romid and savidx = ?savidx";
|
||||||
|
using (var command = new MySqlCommand(query, conn))
|
||||||
|
{
|
||||||
|
// 设置参数值
|
||||||
|
command.Parameters.AddWithValue("?uid", _c.UID);
|
||||||
|
command.Parameters.AddWithValue("?romid", msg.RomID);
|
||||||
|
if (command.ExecuteNonQuery() < 1)
|
||||||
|
{
|
||||||
|
AppSrv.g_Log.Error("删除即时存档,但是他并没有.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch { }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SQLPool.EnqueueSQLConn(conn);
|
SQLPool.EnqueueSQLConn(conn);
|
||||||
|
|
||||||
respData.RomID = msg.RomID;
|
if (errCode == ErrorCode.ErrorOk)
|
||||||
AppSrv.g_ClientMgr.ClientSend(_c, (int)CommandID.CmdGamesavGetGameSavList, (int)ErrorCode.ErrorOk, ProtoBufHelper.Serizlize(respData));
|
{
|
||||||
|
respData.RomID = msg.RomID;
|
||||||
|
respData.SavDataIdx = msg.SavDataIdx;
|
||||||
|
}
|
||||||
|
|
||||||
|
AppSrv.g_ClientMgr.ClientSend(_c, (int)CommandID.CmdGamesavGetGameSavList, (int)errCode, ProtoBufHelper.Serizlize(respData));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RecvUpLoadGameSav(Socket _socket, byte[] reqData)
|
||||||
|
{
|
||||||
|
Protobuf_Mine_UpLoadGameSav msg = ProtoBufHelper.DeSerizlize<Protobuf_Mine_UpLoadGameSav>(reqData);
|
||||||
|
ClientInfo _c = AppSrv.g_ClientMgr.GetClientForSocket(_socket);
|
||||||
|
Protobuf_Mine_UpLoadGameSav_RESP respData = new Protobuf_Mine_UpLoadGameSav_RESP();
|
||||||
|
ErrorCode errCode = ErrorCode.ErrorOk;
|
||||||
|
respData.RomID = msg.RomID;
|
||||||
|
|
||||||
|
RomPlatformType ptype = AppSrv.g_GameShareMgr.GetRomPlatformType(msg.RomID);
|
||||||
|
|
||||||
|
if (GetProtobufMineGameSavInfo(_c.UID, msg.RomID, msg.SavDataIdx, out Protobuf_Mine_GameSavInfo oldSavInfo))
|
||||||
|
{
|
||||||
|
bool bDelSav = FileDelete(Path.Combine(Config.cfg.savDataPath, oldSavInfo.SavUrl));
|
||||||
|
bool bDelImg = FileDelete(Path.Combine(Config.cfg.savDataPath, oldSavInfo.SavImgUrl));
|
||||||
|
if (!bDelSav || !bDelImg)
|
||||||
|
{
|
||||||
|
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!DeleteProtobufMineGameSavInfo(_c.UID, msg.RomID, msg.SavDataIdx))
|
||||||
|
{
|
||||||
|
//删除失败
|
||||||
|
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (errCode == ErrorCode.ErrorOk)
|
||||||
|
{
|
||||||
|
MySqlConnection conn = SQLPool.DequeueSQLConn("RecvUpLoadGameSav");
|
||||||
|
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);
|
||||||
|
|
||||||
|
if (!CreateFile(Path.Combine(Config.cfg.savDataPath, rompath), StateRawData)
|
||||||
|
||
|
||||||
|
!CreateFile(Path.Combine(Config.cfg.savDataPath, imgpath), StateRawData)
|
||||||
|
)
|
||||||
|
{
|
||||||
|
//INSERT INTO `haoyue_emu`.`user_gamesavedata` ( `uid`, `romid`, `savidx`, `savName`, `savNote`, `savUrl`, `savImgUrl`, `savDate`) VALUES ( 0, 0, 2147483647, '', '', '', '', '0000-00-00 00:00:00');
|
||||||
|
string query = "INSERT INTO `haoyue_emu`.`user_gamesavedata`" +
|
||||||
|
" ( `uid`, `romid`, `savidx`, `savName`, `savNote`, `savUrl`, `savImgUrl`, `savDate`)" +
|
||||||
|
" VALUES ( ?uid, ?romid, ?savidx, ?savName, ?savNote, ?savUrl, ?savImgUrl, ?savDate);";
|
||||||
|
|
||||||
|
using (var command = new MySqlCommand(query, conn))
|
||||||
|
{
|
||||||
|
// 设置参数值
|
||||||
|
command.Parameters.AddWithValue("?uid", _c.UID);
|
||||||
|
command.Parameters.AddWithValue("?romid", msg.RomID);
|
||||||
|
command.Parameters.AddWithValue("?savidx", msg.SavDataIdx);
|
||||||
|
command.Parameters.AddWithValue("?savName", msg.Name);
|
||||||
|
command.Parameters.AddWithValue("?savNote", msg.Note);
|
||||||
|
command.Parameters.AddWithValue("?savUrl", rompath);
|
||||||
|
command.Parameters.AddWithValue("?savImgUrl", imgpath);
|
||||||
|
command.Parameters.AddWithValue("?savDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||||
|
if (command.ExecuteNonQuery() < 1)
|
||||||
|
{
|
||||||
|
AppSrv.g_Log.Error("执行即时存档保存失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SQLPool.EnqueueSQLConn(conn);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (errCode == ErrorCode.ErrorOk)
|
||||||
|
{
|
||||||
|
if (!GetProtobufMineGameSavInfo(_c.UID, msg.RomID, msg.SavDataIdx, out Protobuf_Mine_GameSavInfo protoData))
|
||||||
|
{
|
||||||
|
//不存在
|
||||||
|
errCode = ErrorCode.ErrorRomDontHadSavedata;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
respData.RomID = msg.RomID;
|
||||||
|
respData.SavDataIdx = msg.SavDataIdx;
|
||||||
|
respData.UploadSevInfo = protoData;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
AppSrv.g_ClientMgr.ClientSend(_c, (int)CommandID.CmdGamesavGetGameSavList, (int)errCode, ProtoBufHelper.Serizlize(respData));
|
||||||
|
}
|
||||||
|
public void GetNewRomPath(long uid, RomPlatformType ptype, int romid, int stateIdx, string filename, out string path)
|
||||||
|
{
|
||||||
|
path = Path.Combine(uid.ToString(), ptype.ToString(), romid.ToString(), stateIdx.ToString(), filename);
|
||||||
|
}
|
||||||
public bool FileDelete(string path)
|
public bool FileDelete(string path)
|
||||||
{
|
{
|
||||||
if (!File.Exists(path))
|
if (!File.Exists(path))
|
||||||
@ -138,17 +248,94 @@ namespace AxibugEmuOnline.Server.Manager
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool FileDelete(string path, byte[] data)
|
public bool CreateFile(string path, byte[] data)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
string dir = Path.GetDirectoryName(path);
|
||||||
|
if (!Directory.Exists(dir))
|
||||||
|
{
|
||||||
|
Directory.CreateDirectory(dir);
|
||||||
|
}
|
||||||
|
|
||||||
File.WriteAllBytes(path, data);
|
File.WriteAllBytes(path, data);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
AppSrv.g_Log.Error($"CreeateFile Err =>{ex.ToString()}");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool GetProtobufMineGameSavInfo(long uid, int romid, int savIdx, out Protobuf_Mine_GameSavInfo protoData)
|
||||||
|
{
|
||||||
|
bool bhad = false;
|
||||||
|
protoData = default;
|
||||||
|
RomPlatformType ptype = AppSrv.g_GameShareMgr.GetRomPlatformType(romid);
|
||||||
|
MySqlConnection conn = SQLPool.DequeueSQLConn("GetProtobufMineGameSavInfo");
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string query = "SELECT `id`,`uid`, `romid`, `savidx`, `savName`, `savNote`, `savUrl`, `savImgUrl`, `savDate` from `user_gamesavedata` where uid = ?uid and romid = ?romid and savidx = ?savidx";
|
||||||
|
using (var command = new MySqlCommand(query, conn))
|
||||||
|
{
|
||||||
|
// 设置参数值
|
||||||
|
command.Parameters.AddWithValue("?uid", uid);
|
||||||
|
command.Parameters.AddWithValue("?romid", romid);
|
||||||
|
command.Parameters.AddWithValue("?savidx", savIdx);
|
||||||
|
using (var reader = command.ExecuteReader())
|
||||||
|
{
|
||||||
|
while (reader.Read())
|
||||||
|
{
|
||||||
|
protoData = 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("yyyy-MM-dd HH:mm:ss"),
|
||||||
|
GamePlatformType = ptype
|
||||||
|
};
|
||||||
|
bhad = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
SQLPool.EnqueueSQLConn(conn);
|
||||||
|
return bhad;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool DeleteProtobufMineGameSavInfo(long uid, int romid, int savIdx)
|
||||||
|
{
|
||||||
|
bool bDone = false;
|
||||||
|
RomPlatformType ptype = AppSrv.g_GameShareMgr.GetRomPlatformType(romid);
|
||||||
|
MySqlConnection conn = SQLPool.DequeueSQLConn("DeleteProtobufMineGameSavInfo");
|
||||||
|
try
|
||||||
|
{
|
||||||
|
string query = "delete from `user_gamesavedata` where uid = ?uid and romid = ?romid and savidx = ?savidx";
|
||||||
|
using (var command = new MySqlCommand(query, conn))
|
||||||
|
{
|
||||||
|
// 设置参数值
|
||||||
|
command.Parameters.AddWithValue("?uid", uid);
|
||||||
|
command.Parameters.AddWithValue("?romid", romid);
|
||||||
|
command.Parameters.AddWithValue("?savidx", savIdx);
|
||||||
|
bDone = command.ExecuteNonQuery() > 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
SQLPool.EnqueueSQLConn(conn);
|
||||||
|
return bDone;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -109,62 +109,63 @@ namespace AxibugProtobuf {
|
|||||||
"bmVfR2V0R2FtZVNhdkxpc3QSDQoFUm9tSUQYASABKAUicgohUHJvdG9idWZf",
|
"bmVfR2V0R2FtZVNhdkxpc3QSDQoFUm9tSUQYASABKAUicgohUHJvdG9idWZf",
|
||||||
"TWluZV9HZXRHYW1lU2F2TGlzdF9SRVNQEg0KBVJvbUlEGAEgASgFEj4KC1Nh",
|
"TWluZV9HZXRHYW1lU2F2TGlzdF9SRVNQEg0KBVJvbUlEGAEgASgFEj4KC1Nh",
|
||||||
"dkRhdGFMaXN0GAIgAygLMikuQXhpYnVnUHJvdG9idWYuUHJvdG9idWZfTWlu",
|
"dkRhdGFMaXN0GAIgAygLMikuQXhpYnVnUHJvdG9idWYuUHJvdG9idWZfTWlu",
|
||||||
"ZV9HYW1lU2F2SW5mbyLiAQoZUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbxIU",
|
"ZV9HYW1lU2F2SW5mbyL+AQoZUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbxIU",
|
||||||
"CgxiSGFkU2F2ZURhdGEYASABKAgSEgoKU2F2RGF0YUlkeBgCIAEoBRINCgVS",
|
"CgxiSGFkU2F2ZURhdGEYASABKAgSDQoFU2F2SUQYAiABKAMSCwoDdWlkGAMg",
|
||||||
"b21JRBgDIAEoBRI5ChBHYW1lUGxhdGZvcm1UeXBlGAQgASgOMh8uQXhpYnVn",
|
"ASgDEhIKClNhdkRhdGFJZHgYBCABKAUSDQoFUm9tSUQYBSABKAUSOQoQR2Ft",
|
||||||
"UHJvdG9idWYuUm9tUGxhdGZvcm1UeXBlEg8KB1NhdkRhdGUYBSABKAkSDwoH",
|
"ZVBsYXRmb3JtVHlwZRgGIAEoDjIfLkF4aWJ1Z1Byb3RvYnVmLlJvbVBsYXRm",
|
||||||
"U2F2TmFtZRgGIAEoCRIMCgROb3RlGAcgASgJEhEKCVNhdkltZ1VybBgIIAEo",
|
"b3JtVHlwZRIPCgdTYXZEYXRlGAcgASgJEg8KB1Nhdk5hbWUYCCABKAkSDAoE",
|
||||||
"CRIOCgZTYXZVcmwYCSABKAkiPQoYUHJvdG9idWZfTWluZV9EZWxHYW1lU2F2",
|
"Tm90ZRgJIAEoCRIRCglTYXZJbWdVcmwYCiABKAkSDgoGU2F2VXJsGAsgASgJ",
|
||||||
"Eg0KBVJvbUlEGAEgASgFEhIKClNhdkRhdGFJZHgYAiABKAUiQgodUHJvdG9i",
|
"Ij0KGFByb3RvYnVmX01pbmVfRGVsR2FtZVNhdhINCgVSb21JRBgBIAEoBRIS",
|
||||||
"dWZfTWluZV9EZWxHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSEgoKU2F2",
|
"CgpTYXZEYXRhSWR4GAIgASgFIkIKHVByb3RvYnVmX01pbmVfRGVsR2FtZVNh",
|
||||||
"RGF0YUlkeBgCIAEoBSJiChtQcm90b2J1Zl9NaW5lX1VwTG9hZEdhbWVTYXYS",
|
"dl9SRVNQEg0KBVJvbUlEGAEgASgFEhIKClNhdkRhdGFJZHgYAiABKAUifgob",
|
||||||
"DQoFUm9tSUQYASABKAUSEgoKU2F2RGF0YUlkeBgCIAEoBRIOCgZTYXZJbWcY",
|
"UHJvdG9idWZfTWluZV9VcExvYWRHYW1lU2F2Eg0KBVJvbUlEGAEgASgFEhIK",
|
||||||
"AyABKAwSEAoIU3RhdGVSYXcYBCABKAwicwogUHJvdG9idWZfTWluZV9VcExv",
|
"ClNhdkRhdGFJZHgYAiABKAUSDAoETmFtZRgDIAEoCRIMCgROb3RlGAQgASgJ",
|
||||||
"YWRHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSQAoNVXBsb2FkU2V2SW5m",
|
"Eg4KBlNhdkltZxgFIAEoDBIQCghTdGF0ZVJhdxgGIAEoDCKHAQogUHJvdG9i",
|
||||||
"bxgCIAEoCzIpLkF4aWJ1Z1Byb3RvYnVmLlByb3RvYnVmX01pbmVfR2FtZVNh",
|
"dWZfTWluZV9VcExvYWRHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSEgoK",
|
||||||
"dkluZm8q/wUKCUNvbW1hbmRJRBIOCgpDTURfREVGQVVMEAASDAoIQ01EX1BJ",
|
"U2F2RGF0YUlkeBgCIAEoBRJACg1VcGxvYWRTZXZJbmZvGAMgASgLMikuQXhp",
|
||||||
"TkcQARIMCghDTURfUE9ORxACEg4KCUNNRF9MT0dJThDRDxIYChNDTURfVVNF",
|
"YnVnUHJvdG9idWYuUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbyr/BQoJQ29t",
|
||||||
"Ul9PTkxJTkVMSVNUELgXEhIKDUNNRF9VU0VSX0pPSU4Q1xcSEwoOQ01EX1VT",
|
"bWFuZElEEg4KCkNNRF9ERUZBVUwQABIMCghDTURfUElORxABEgwKCENNRF9Q",
|
||||||
"RVJfTEVBVkUQ2BcSGgoVQ01EX1VTRVJfU1RBVEVfVVBEQVRFENkXEhgKE0NN",
|
"T05HEAISDgoJQ01EX0xPR0lOENEPEhgKE0NNRF9VU0VSX09OTElORUxJU1QQ",
|
||||||
"RF9Nb2RpZnlfTmlja05hbWUQnRgSHAoXQ01EX1VwZGF0ZV9TZWxmVXNlcklu",
|
"uBcSEgoNQ01EX1VTRVJfSk9JThDXFxITCg5DTURfVVNFUl9MRUFWRRDYFxIa",
|
||||||
"Zm8QphgSHQoYQ01EX1VwZGF0ZV9PdGhlclVzZXJJbmZvEKgYEhAKC0NNRF9D",
|
"ChVDTURfVVNFUl9TVEFURV9VUERBVEUQ2RcSGAoTQ01EX01vZGlmeV9OaWNr",
|
||||||
"SEFUTVNHEKEfEhIKDUNNRF9Sb29tX0xpc3QQiScSGQoUQ01EX1Jvb21fTGlz",
|
"TmFtZRCdGBIcChdDTURfVXBkYXRlX1NlbGZVc2VySW5mbxCmGBIdChhDTURf",
|
||||||
"dF9VcGRhdGUQiicSGAoTQ01EX1Jvb21fR2V0X1NjcmVlbhCTJxIUCg9DTURf",
|
"VXBkYXRlX090aGVyVXNlckluZm8QqBgSEAoLQ01EX0NIQVRNU0cQoR8SEgoN",
|
||||||
"Um9vbV9DcmVhdGUQ7ScSEgoNQ01EX1Jvb21fSm9pbhDxJxITCg5DTURfUm9v",
|
"Q01EX1Jvb21fTGlzdBCJJxIZChRDTURfUm9vbV9MaXN0X1VwZGF0ZRCKJxIY",
|
||||||
"bV9MZWF2ZRDyJxIiCh1DTURfUm9vbV9NeVJvb21fU3RhdGVfQ2hhbmdlZBD2",
|
"ChNDTURfUm9vbV9HZXRfU2NyZWVuEJMnEhQKD0NNRF9Sb29tX0NyZWF0ZRDt",
|
||||||
"JxIhChxDTURfUm9vbV9DaGFuZ2VQbGF5ZXJXaXRoSm95EIooEhYKEUNNRF9S",
|
"JxISCg1DTURfUm9vbV9Kb2luEPEnEhMKDkNNRF9Sb29tX0xlYXZlEPInEiIK",
|
||||||
"b29tX1dhaXRTdGVwENEoEicKIkNNRF9Sb29tX0hvc3RQbGF5ZXJfVXBkYXRl",
|
"HUNNRF9Sb29tX015Um9vbV9TdGF0ZV9DaGFuZ2VkEPYnEiEKHENNRF9Sb29t",
|
||||||
"U3RhdGVSYXcQ1CgSGgoVQ01EX1Jvb21fUGxheWVyX1JlYWR5ENgoEiAKG0NN",
|
"X0NoYW5nZVBsYXllcldpdGhKb3kQiigSFgoRQ01EX1Jvb21fV2FpdFN0ZXAQ",
|
||||||
"RF9Sb29tX1NpbmdlbF9QbGF5ZXJJbnB1dBD6LhIdChhDTURfUk9PTV9TWU5f",
|
"0SgSJwoiQ01EX1Jvb21fSG9zdFBsYXllcl9VcGRhdGVTdGF0ZVJhdxDUKBIa",
|
||||||
"UGxheWVySW5wdXQQ/y4SDwoKQ01EX1NjcmVlbhDZNhIfChpDTURfR0FNRVNB",
|
"ChVDTURfUm9vbV9QbGF5ZXJfUmVhZHkQ2CgSIAobQ01EX1Jvb21fU2luZ2Vs",
|
||||||
"Vl9HZXRHYW1lU2F2TGlzdBDBPhIbChZDTURfR0FNRVNBVl9EZWxHYW1lU2F2",
|
"X1BsYXllcklucHV0EPouEh0KGENNRF9ST09NX1NZTl9QbGF5ZXJJbnB1dBD/",
|
||||||
"EMU+Eh4KGUNNRF9HQU1FU0FWX1VwbG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dB",
|
"LhIPCgpDTURfU2NyZWVuENk2Eh8KGkNNRF9HQU1FU0FWX0dldEdhbWVTYXZM",
|
||||||
"TUVfTUFSSxD1TirxAQoJRXJyb3JDb2RlEhAKDEVSUk9SX0RFRkFVTBAAEgwK",
|
"aXN0EME+EhsKFkNNRF9HQU1FU0FWX0RlbEdhbWVTYXYQxT4SHgoZQ01EX0dB",
|
||||||
"CEVSUk9SX09LEAESGAoURVJST1JfUk9PTV9OT1RfRk9VTkQQChInCiNFUlJP",
|
"TUVTQVZfVXBsb2FkR2FtZVNhdhDKPhISCg1DTURfR0FNRV9NQVJLEPVOKvEB",
|
||||||
"Ul9ST09NX1NMT1RfQUxSRUFETFlfSEFEX1BMQVlFUhALEiEKHUVSUk9SX1JP",
|
"CglFcnJvckNvZGUSEAoMRVJST1JfREVGQVVMEAASDAoIRVJST1JfT0sQARIY",
|
||||||
"T01fQ0FOVF9ET19DVVJSX1NUQVRFEDISHwobRVJST1JfUk9NX0RPTlRfSEFE",
|
"ChRFUlJPUl9ST09NX05PVF9GT1VORBAKEicKI0VSUk9SX1JPT01fU0xPVF9B",
|
||||||
"X1NBVkVEQVRBEFASHwoaRVJST1JfUk9NX0FMUkVBRFlfSEFEX1NUQVIQkwMS",
|
"TFJFQURMWV9IQURfUExBWUVSEAsSIQodRVJST1JfUk9PTV9DQU5UX0RPX0NV",
|
||||||
"HAoXRVJST1JfUk9NX0RPTlRfSEFEX1NUQVIQlAMqQAoJTG9naW5UeXBlEg0K",
|
"UlJfU1RBVEUQMhIfChtFUlJPUl9ST01fRE9OVF9IQURfU0FWRURBVEEQUBIf",
|
||||||
"CVVzZURldmljZRAAEg4KClVzZUFjY291bnQQARIUChBVc2VIYW9ZdWVBY2Nv",
|
"ChpFUlJPUl9ST01fQUxSRUFEWV9IQURfU1RBUhCTAxIcChdFUlJPUl9ST01f",
|
||||||
"dW50EAIqpQEKCkRldmljZVR5cGUSFgoSRGV2aWNlVHlwZV9EZWZhdWx0EAAS",
|
"RE9OVF9IQURfU1RBUhCUAypACglMb2dpblR5cGUSDQoJVXNlRGV2aWNlEAAS",
|
||||||
"BgoCUEMQARILCgdBbmRyb2lkEAISBwoDSU9TEAMSBwoDUFNWEAQSBwoDUFMz",
|
"DgoKVXNlQWNjb3VudBABEhQKEFVzZUhhb1l1ZUFjY291bnQQAiqlAQoKRGV2",
|
||||||
"EAUSBwoDUFM0EAYSCwoHWEJPWDM2MBAHEgsKB1hCT1hPTkUQCBIICgRXaWlV",
|
"aWNlVHlwZRIWChJEZXZpY2VUeXBlX0RlZmF1bHQQABIGCgJQQxABEgsKB0Fu",
|
||||||
"EAkSDwoLTmludGVuZG8zRFMQChIRCg1BbmRyb2lkQ2FyQXBwEAsqkwIKC0dh",
|
"ZHJvaWQQAhIHCgNJT1MQAxIHCgNQU1YQBBIHCgNQUzMQBRIHCgNQUzQQBhIL",
|
||||||
"bWVQYWRUeXBlEgwKCEtleWJvYXJkEAASEQoNR2xvYmFsR2FtZVBhZBABEg4K",
|
"CgdYQk9YMzYwEAcSCwoHWEJPWE9ORRAIEggKBFdpaVUQCRIPCgtOaW50ZW5k",
|
||||||
"ClRvdWNoUGFuZWwQAhIOCgpEUzNDb250cm9sEAMSDgoKRFM0Q29udHJvbBAE",
|
"bzNEUxAKEhEKDUFuZHJvaWRDYXJBcHAQCyqTAgoLR2FtZVBhZFR5cGUSDAoI",
|
||||||
"Eg4KCkRTNUNvbnRyb2wQBRIUChBTd2l0Y2hQcm9Db250cm9sEAYSEAoMU3dp",
|
"S2V5Ym9hcmQQABIRCg1HbG9iYWxHYW1lUGFkEAESDgoKVG91Y2hQYW5lbBAC",
|
||||||
"dGNoSm95Q29uEAcSEgoOWEJPWDM2MENvbnRyb2wQCBISCg5YQk9YT05FQ29u",
|
"Eg4KCkRTM0NvbnRyb2wQAxIOCgpEUzRDb250cm9sEAQSDgoKRFM1Q29udHJv",
|
||||||
"dHJvbBAJEhEKDVBTVml0YUNvbnRyb2wQChISCg5XaWlVUGFkQ29udHJvbBAL",
|
"bBAFEhQKEFN3aXRjaFByb0NvbnRyb2wQBhIQCgxTd2l0Y2hKb3lDb24QBxIS",
|
||||||
"EhQKEFdpaVJlbW90ZUNvbnRyb2wQDBIWChJOaW50ZW5kbzNEU0NvbnRyb2wQ",
|
"Cg5YQk9YMzYwQ29udHJvbBAIEhIKDlhCT1hPTkVDb250cm9sEAkSEQoNUFNW",
|
||||||
"DSqiAQoPUm9tUGxhdGZvcm1UeXBlEgsKB0ludmFsaWQQABIHCgNOZXMQARIR",
|
"aXRhQ29udHJvbBAKEhIKDldpaVVQYWRDb250cm9sEAsSFAoQV2lpUmVtb3Rl",
|
||||||
"Cg1NYXN0ZXJfU3lzdGVtEAISDQoJR2FtZV9HZWFyEAMSDAoIR2FtZV9Cb3kQ",
|
"Q29udHJvbBAMEhYKEk5pbnRlbmRvM0RTQ29udHJvbBANKqIBCg9Sb21QbGF0",
|
||||||
"BBISCg5HYW1lX0JveV9Db2xvchAFEhEKDUNvbGVjb19WaXNpb24QBhILCgdT",
|
"Zm9ybVR5cGUSCwoHSW52YWxpZBAAEgcKA05lcxABEhEKDU1hc3Rlcl9TeXN0",
|
||||||
"Q18zMDAwEAcSCwoHU0dfMTAwMBAIEggKA0FsbBDnBypwCg1Sb29tR2FtZVN0",
|
"ZW0QAhINCglHYW1lX0dlYXIQAxIMCghHYW1lX0JveRAEEhIKDkdhbWVfQm95",
|
||||||
"YXRlEhIKDk5vbmVfR2FtZVN0YXRlEAASDAoIT25seUhvc3QQARIRCg1XYWl0",
|
"X0NvbG9yEAUSEQoNQ29sZWNvX1Zpc2lvbhAGEgsKB1NDXzMwMDAQBxILCgdT",
|
||||||
"UmF3VXBkYXRlEAISDQoJV2FpdFJlYWR5EAMSCQoFUGF1c2UQBBIQCgxJbk9u",
|
"R18xMDAwEAgSCAoDQWxsEOcHKnAKDVJvb21HYW1lU3RhdGUSEgoOTm9uZV9H",
|
||||||
"bGluZUdhbWUQBSpOChFMb2dpblJlc3VsdFN0YXR1cxIhCh1Mb2dpblJlc3Vs",
|
"YW1lU3RhdGUQABIMCghPbmx5SG9zdBABEhEKDVdhaXRSYXdVcGRhdGUQAhIN",
|
||||||
"dFN0YXR1c19CYXNlRGVmYXVsdBAAEgYKAk9LEAESDgoKQWNjb3VudEVychAC",
|
"CglXYWl0UmVhZHkQAxIJCgVQYXVzZRAEEhAKDEluT25saW5lR2FtZRAFKk4K",
|
||||||
"QgJIAWIGcHJvdG8z"));
|
"EUxvZ2luUmVzdWx0U3RhdHVzEiEKHUxvZ2luUmVzdWx0U3RhdHVzX0Jhc2VE",
|
||||||
|
"ZWZhdWx0EAASBgoCT0sQARIOCgpBY2NvdW50RXJyEAJCAkgBYgZwcm90bzM="));
|
||||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||||
new pbr::FileDescriptor[] { },
|
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[] {
|
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[] {
|
||||||
@ -213,11 +214,11 @@ namespace AxibugProtobuf {
|
|||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Game_Mark_RESP), global::AxibugProtobuf.Protobuf_Game_Mark_RESP.Parser, new[]{ "RomID", "IsStar", "Stars" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Game_Mark_RESP), global::AxibugProtobuf.Protobuf_Game_Mark_RESP.Parser, new[]{ "RomID", "IsStar", "Stars" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList.Parser, new[]{ "RomID" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList.Parser, new[]{ "RomID" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP.Parser, new[]{ "RomID", "SavDataList" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP.Parser, new[]{ "RomID", "SavDataList" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GameSavInfo), global::AxibugProtobuf.Protobuf_Mine_GameSavInfo.Parser, new[]{ "BHadSaveData", "SavDataIdx", "RomID", "GamePlatformType", "SavDate", "SavName", "Note", "SavImgUrl", "SavUrl" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GameSavInfo), global::AxibugProtobuf.Protobuf_Mine_GameSavInfo.Parser, new[]{ "BHadSaveData", "SavID", "Uid", "SavDataIdx", "RomID", "GamePlatformType", "SavDate", "SavName", "Note", "SavImgUrl", "SavUrl" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav), global::AxibugProtobuf.Protobuf_Mine_DelGameSav.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav), global::AxibugProtobuf.Protobuf_Mine_DelGameSav.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav.Parser, new[]{ "RomID", "SavDataIdx", "SavImg", "StateRaw" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav.Parser, new[]{ "RomID", "SavDataIdx", "Name", "Note", "SavImg", "StateRaw" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP.Parser, new[]{ "RomID", "UploadSevInfo" }, null, null, null, null)
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx", "UploadSevInfo" }, null, null, null, null)
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
@ -10191,6 +10192,8 @@ namespace AxibugProtobuf {
|
|||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public Protobuf_Mine_GameSavInfo(Protobuf_Mine_GameSavInfo other) : this() {
|
public Protobuf_Mine_GameSavInfo(Protobuf_Mine_GameSavInfo other) : this() {
|
||||||
bHadSaveData_ = other.bHadSaveData_;
|
bHadSaveData_ = other.bHadSaveData_;
|
||||||
|
savID_ = other.savID_;
|
||||||
|
uid_ = other.uid_;
|
||||||
savDataIdx_ = other.savDataIdx_;
|
savDataIdx_ = other.savDataIdx_;
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
gamePlatformType_ = other.gamePlatformType_;
|
gamePlatformType_ = other.gamePlatformType_;
|
||||||
@ -10221,8 +10224,36 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "SavID" field.</summary>
|
||||||
|
public const int SavIDFieldNumber = 2;
|
||||||
|
private long savID_;
|
||||||
|
/// <summary>
|
||||||
|
///即时存档唯一ID(用于今后分享)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public long SavID {
|
||||||
|
get { return savID_; }
|
||||||
|
set {
|
||||||
|
savID_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "uid" field.</summary>
|
||||||
|
public const int UidFieldNumber = 3;
|
||||||
|
private long uid_;
|
||||||
|
/// <summary>
|
||||||
|
///所属用户UID(用于今后分享)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public long Uid {
|
||||||
|
get { return uid_; }
|
||||||
|
set {
|
||||||
|
uid_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
||||||
public const int SavDataIdxFieldNumber = 2;
|
public const int SavDataIdxFieldNumber = 4;
|
||||||
private int savDataIdx_;
|
private int savDataIdx_;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档下标(其中第0个是自动存档位置)
|
///即时存档下标(其中第0个是自动存档位置)
|
||||||
@ -10236,7 +10267,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "RomID" field.</summary>
|
/// <summary>Field number for the "RomID" field.</summary>
|
||||||
public const int RomIDFieldNumber = 3;
|
public const int RomIDFieldNumber = 5;
|
||||||
private int romID_;
|
private int romID_;
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public int RomID {
|
public int RomID {
|
||||||
@ -10247,7 +10278,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "GamePlatformType" field.</summary>
|
/// <summary>Field number for the "GamePlatformType" field.</summary>
|
||||||
public const int GamePlatformTypeFieldNumber = 4;
|
public const int GamePlatformTypeFieldNumber = 6;
|
||||||
private global::AxibugProtobuf.RomPlatformType gamePlatformType_ = global::AxibugProtobuf.RomPlatformType.Invalid;
|
private global::AxibugProtobuf.RomPlatformType gamePlatformType_ = global::AxibugProtobuf.RomPlatformType.Invalid;
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public global::AxibugProtobuf.RomPlatformType GamePlatformType {
|
public global::AxibugProtobuf.RomPlatformType GamePlatformType {
|
||||||
@ -10258,7 +10289,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavDate" field.</summary>
|
/// <summary>Field number for the "SavDate" field.</summary>
|
||||||
public const int SavDateFieldNumber = 5;
|
public const int SavDateFieldNumber = 7;
|
||||||
private string savDate_ = "";
|
private string savDate_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///存档时间
|
///存档时间
|
||||||
@ -10272,7 +10303,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavName" field.</summary>
|
/// <summary>Field number for the "SavName" field.</summary>
|
||||||
public const int SavNameFieldNumber = 6;
|
public const int SavNameFieldNumber = 8;
|
||||||
private string savName_ = "";
|
private string savName_ = "";
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public string SavName {
|
public string SavName {
|
||||||
@ -10283,7 +10314,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "Note" field.</summary>
|
/// <summary>Field number for the "Note" field.</summary>
|
||||||
public const int NoteFieldNumber = 7;
|
public const int NoteFieldNumber = 9;
|
||||||
private string note_ = "";
|
private string note_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///备注
|
///备注
|
||||||
@ -10297,7 +10328,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavImgUrl" field.</summary>
|
/// <summary>Field number for the "SavImgUrl" field.</summary>
|
||||||
public const int SavImgUrlFieldNumber = 8;
|
public const int SavImgUrlFieldNumber = 10;
|
||||||
private string savImgUrl_ = "";
|
private string savImgUrl_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档截图Url
|
///即时存档截图Url
|
||||||
@ -10311,7 +10342,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavUrl" field.</summary>
|
/// <summary>Field number for the "SavUrl" field.</summary>
|
||||||
public const int SavUrlFieldNumber = 9;
|
public const int SavUrlFieldNumber = 11;
|
||||||
private string savUrl_ = "";
|
private string savUrl_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档下载Url
|
///即时存档下载Url
|
||||||
@ -10338,6 +10369,8 @@ namespace AxibugProtobuf {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (BHadSaveData != other.BHadSaveData) return false;
|
if (BHadSaveData != other.BHadSaveData) return false;
|
||||||
|
if (SavID != other.SavID) return false;
|
||||||
|
if (Uid != other.Uid) return false;
|
||||||
if (SavDataIdx != other.SavDataIdx) return false;
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
if (GamePlatformType != other.GamePlatformType) return false;
|
if (GamePlatformType != other.GamePlatformType) return false;
|
||||||
@ -10353,6 +10386,8 @@ namespace AxibugProtobuf {
|
|||||||
public override int GetHashCode() {
|
public override int GetHashCode() {
|
||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (BHadSaveData != false) hash ^= BHadSaveData.GetHashCode();
|
if (BHadSaveData != false) hash ^= BHadSaveData.GetHashCode();
|
||||||
|
if (SavID != 0L) hash ^= SavID.GetHashCode();
|
||||||
|
if (Uid != 0L) hash ^= Uid.GetHashCode();
|
||||||
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) hash ^= GamePlatformType.GetHashCode();
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) hash ^= GamePlatformType.GetHashCode();
|
||||||
@ -10381,36 +10416,44 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteBool(BHadSaveData);
|
output.WriteBool(BHadSaveData);
|
||||||
}
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavID != 0L) {
|
||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt64(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
output.WriteRawTag(24);
|
||||||
|
output.WriteInt64(Uid);
|
||||||
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(32);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
output.WriteRawTag(24);
|
output.WriteRawTag(40);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
||||||
output.WriteRawTag(32);
|
output.WriteRawTag(48);
|
||||||
output.WriteEnum((int) GamePlatformType);
|
output.WriteEnum((int) GamePlatformType);
|
||||||
}
|
}
|
||||||
if (SavDate.Length != 0) {
|
if (SavDate.Length != 0) {
|
||||||
output.WriteRawTag(42);
|
output.WriteRawTag(58);
|
||||||
output.WriteString(SavDate);
|
output.WriteString(SavDate);
|
||||||
}
|
}
|
||||||
if (SavName.Length != 0) {
|
if (SavName.Length != 0) {
|
||||||
output.WriteRawTag(50);
|
output.WriteRawTag(66);
|
||||||
output.WriteString(SavName);
|
output.WriteString(SavName);
|
||||||
}
|
}
|
||||||
if (Note.Length != 0) {
|
if (Note.Length != 0) {
|
||||||
output.WriteRawTag(58);
|
output.WriteRawTag(74);
|
||||||
output.WriteString(Note);
|
output.WriteString(Note);
|
||||||
}
|
}
|
||||||
if (SavImgUrl.Length != 0) {
|
if (SavImgUrl.Length != 0) {
|
||||||
output.WriteRawTag(66);
|
output.WriteRawTag(82);
|
||||||
output.WriteString(SavImgUrl);
|
output.WriteString(SavImgUrl);
|
||||||
}
|
}
|
||||||
if (SavUrl.Length != 0) {
|
if (SavUrl.Length != 0) {
|
||||||
output.WriteRawTag(74);
|
output.WriteRawTag(90);
|
||||||
output.WriteString(SavUrl);
|
output.WriteString(SavUrl);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -10426,36 +10469,44 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteBool(BHadSaveData);
|
output.WriteBool(BHadSaveData);
|
||||||
}
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavID != 0L) {
|
||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt64(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
output.WriteRawTag(24);
|
||||||
|
output.WriteInt64(Uid);
|
||||||
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(32);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
output.WriteRawTag(24);
|
output.WriteRawTag(40);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
||||||
output.WriteRawTag(32);
|
output.WriteRawTag(48);
|
||||||
output.WriteEnum((int) GamePlatformType);
|
output.WriteEnum((int) GamePlatformType);
|
||||||
}
|
}
|
||||||
if (SavDate.Length != 0) {
|
if (SavDate.Length != 0) {
|
||||||
output.WriteRawTag(42);
|
output.WriteRawTag(58);
|
||||||
output.WriteString(SavDate);
|
output.WriteString(SavDate);
|
||||||
}
|
}
|
||||||
if (SavName.Length != 0) {
|
if (SavName.Length != 0) {
|
||||||
output.WriteRawTag(50);
|
output.WriteRawTag(66);
|
||||||
output.WriteString(SavName);
|
output.WriteString(SavName);
|
||||||
}
|
}
|
||||||
if (Note.Length != 0) {
|
if (Note.Length != 0) {
|
||||||
output.WriteRawTag(58);
|
output.WriteRawTag(74);
|
||||||
output.WriteString(Note);
|
output.WriteString(Note);
|
||||||
}
|
}
|
||||||
if (SavImgUrl.Length != 0) {
|
if (SavImgUrl.Length != 0) {
|
||||||
output.WriteRawTag(66);
|
output.WriteRawTag(82);
|
||||||
output.WriteString(SavImgUrl);
|
output.WriteString(SavImgUrl);
|
||||||
}
|
}
|
||||||
if (SavUrl.Length != 0) {
|
if (SavUrl.Length != 0) {
|
||||||
output.WriteRawTag(74);
|
output.WriteRawTag(90);
|
||||||
output.WriteString(SavUrl);
|
output.WriteString(SavUrl);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -10470,6 +10521,12 @@ namespace AxibugProtobuf {
|
|||||||
if (BHadSaveData != false) {
|
if (BHadSaveData != false) {
|
||||||
size += 1 + 1;
|
size += 1 + 1;
|
||||||
}
|
}
|
||||||
|
if (SavID != 0L) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt64Size(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt64Size(Uid);
|
||||||
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavDataIdx != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
}
|
}
|
||||||
@ -10508,6 +10565,12 @@ namespace AxibugProtobuf {
|
|||||||
if (other.BHadSaveData != false) {
|
if (other.BHadSaveData != false) {
|
||||||
BHadSaveData = other.BHadSaveData;
|
BHadSaveData = other.BHadSaveData;
|
||||||
}
|
}
|
||||||
|
if (other.SavID != 0L) {
|
||||||
|
SavID = other.SavID;
|
||||||
|
}
|
||||||
|
if (other.Uid != 0L) {
|
||||||
|
Uid = other.Uid;
|
||||||
|
}
|
||||||
if (other.SavDataIdx != 0) {
|
if (other.SavDataIdx != 0) {
|
||||||
SavDataIdx = other.SavDataIdx;
|
SavDataIdx = other.SavDataIdx;
|
||||||
}
|
}
|
||||||
@ -10551,34 +10614,42 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 16: {
|
case 16: {
|
||||||
SavDataIdx = input.ReadInt32();
|
SavID = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 24: {
|
case 24: {
|
||||||
RomID = input.ReadInt32();
|
Uid = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 32: {
|
case 32: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 40: {
|
||||||
|
RomID = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 48: {
|
||||||
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 42: {
|
case 58: {
|
||||||
SavDate = input.ReadString();
|
SavDate = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 50: {
|
case 66: {
|
||||||
SavName = input.ReadString();
|
SavName = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 58: {
|
case 74: {
|
||||||
Note = input.ReadString();
|
Note = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 66: {
|
case 82: {
|
||||||
SavImgUrl = input.ReadString();
|
SavImgUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 74: {
|
case 90: {
|
||||||
SavUrl = input.ReadString();
|
SavUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -10601,34 +10672,42 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 16: {
|
case 16: {
|
||||||
SavDataIdx = input.ReadInt32();
|
SavID = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 24: {
|
case 24: {
|
||||||
RomID = input.ReadInt32();
|
Uid = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 32: {
|
case 32: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 40: {
|
||||||
|
RomID = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 48: {
|
||||||
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 42: {
|
case 58: {
|
||||||
SavDate = input.ReadString();
|
SavDate = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 50: {
|
case 66: {
|
||||||
SavName = input.ReadString();
|
SavName = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 58: {
|
case 74: {
|
||||||
Note = input.ReadString();
|
Note = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 66: {
|
case 82: {
|
||||||
SavImgUrl = input.ReadString();
|
SavImgUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 74: {
|
case 90: {
|
||||||
SavUrl = input.ReadString();
|
SavUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11098,6 +11177,8 @@ namespace AxibugProtobuf {
|
|||||||
public Protobuf_Mine_UpLoadGameSav(Protobuf_Mine_UpLoadGameSav other) : this() {
|
public Protobuf_Mine_UpLoadGameSav(Protobuf_Mine_UpLoadGameSav other) : this() {
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
savDataIdx_ = other.savDataIdx_;
|
savDataIdx_ = other.savDataIdx_;
|
||||||
|
name_ = other.name_;
|
||||||
|
note_ = other.note_;
|
||||||
savImg_ = other.savImg_;
|
savImg_ = other.savImg_;
|
||||||
stateRaw_ = other.stateRaw_;
|
stateRaw_ = other.stateRaw_;
|
||||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
||||||
@ -11136,8 +11217,36 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "Name" field.</summary>
|
||||||
|
public const int NameFieldNumber = 3;
|
||||||
|
private string name_ = "";
|
||||||
|
/// <summary>
|
||||||
|
///存档名(留空时,服务器自动)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public string Name {
|
||||||
|
get { return name_; }
|
||||||
|
set {
|
||||||
|
name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "Note" field.</summary>
|
||||||
|
public const int NoteFieldNumber = 4;
|
||||||
|
private string note_ = "";
|
||||||
|
/// <summary>
|
||||||
|
///备注(留空时,服务器自动)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public string Note {
|
||||||
|
get { return note_; }
|
||||||
|
set {
|
||||||
|
note_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavImg" field.</summary>
|
/// <summary>Field number for the "SavImg" field.</summary>
|
||||||
public const int SavImgFieldNumber = 3;
|
public const int SavImgFieldNumber = 5;
|
||||||
private pb::ByteString savImg_ = pb::ByteString.Empty;
|
private pb::ByteString savImg_ = pb::ByteString.Empty;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档截图模拟器原生数据
|
///即时存档截图模拟器原生数据
|
||||||
@ -11151,7 +11260,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "StateRaw" field.</summary>
|
/// <summary>Field number for the "StateRaw" field.</summary>
|
||||||
public const int StateRawFieldNumber = 4;
|
public const int StateRawFieldNumber = 6;
|
||||||
private pb::ByteString stateRaw_ = pb::ByteString.Empty;
|
private pb::ByteString stateRaw_ = pb::ByteString.Empty;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档byte数据
|
///即时存档byte数据
|
||||||
@ -11179,6 +11288,8 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
if (SavDataIdx != other.SavDataIdx) return false;
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
|
if (Name != other.Name) return false;
|
||||||
|
if (Note != other.Note) return false;
|
||||||
if (SavImg != other.SavImg) return false;
|
if (SavImg != other.SavImg) return false;
|
||||||
if (StateRaw != other.StateRaw) return false;
|
if (StateRaw != other.StateRaw) return false;
|
||||||
return Equals(_unknownFields, other._unknownFields);
|
return Equals(_unknownFields, other._unknownFields);
|
||||||
@ -11189,6 +11300,8 @@ namespace AxibugProtobuf {
|
|||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
|
if (Name.Length != 0) hash ^= Name.GetHashCode();
|
||||||
|
if (Note.Length != 0) hash ^= Note.GetHashCode();
|
||||||
if (SavImg.Length != 0) hash ^= SavImg.GetHashCode();
|
if (SavImg.Length != 0) hash ^= SavImg.GetHashCode();
|
||||||
if (StateRaw.Length != 0) hash ^= StateRaw.GetHashCode();
|
if (StateRaw.Length != 0) hash ^= StateRaw.GetHashCode();
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11215,12 +11328,20 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (Name.Length != 0) {
|
||||||
output.WriteRawTag(26);
|
output.WriteRawTag(26);
|
||||||
|
output.WriteString(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
output.WriteRawTag(34);
|
||||||
|
output.WriteString(Note);
|
||||||
|
}
|
||||||
|
if (SavImg.Length != 0) {
|
||||||
|
output.WriteRawTag(42);
|
||||||
output.WriteBytes(SavImg);
|
output.WriteBytes(SavImg);
|
||||||
}
|
}
|
||||||
if (StateRaw.Length != 0) {
|
if (StateRaw.Length != 0) {
|
||||||
output.WriteRawTag(34);
|
output.WriteRawTag(50);
|
||||||
output.WriteBytes(StateRaw);
|
output.WriteBytes(StateRaw);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11240,12 +11361,20 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (Name.Length != 0) {
|
||||||
output.WriteRawTag(26);
|
output.WriteRawTag(26);
|
||||||
|
output.WriteString(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
output.WriteRawTag(34);
|
||||||
|
output.WriteString(Note);
|
||||||
|
}
|
||||||
|
if (SavImg.Length != 0) {
|
||||||
|
output.WriteRawTag(42);
|
||||||
output.WriteBytes(SavImg);
|
output.WriteBytes(SavImg);
|
||||||
}
|
}
|
||||||
if (StateRaw.Length != 0) {
|
if (StateRaw.Length != 0) {
|
||||||
output.WriteRawTag(34);
|
output.WriteRawTag(50);
|
||||||
output.WriteBytes(StateRaw);
|
output.WriteBytes(StateRaw);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11263,6 +11392,12 @@ namespace AxibugProtobuf {
|
|||||||
if (SavDataIdx != 0) {
|
if (SavDataIdx != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
}
|
}
|
||||||
|
if (Name.Length != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeStringSize(Note);
|
||||||
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (SavImg.Length != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeBytesSize(SavImg);
|
size += 1 + pb::CodedOutputStream.ComputeBytesSize(SavImg);
|
||||||
}
|
}
|
||||||
@ -11286,6 +11421,12 @@ namespace AxibugProtobuf {
|
|||||||
if (other.SavDataIdx != 0) {
|
if (other.SavDataIdx != 0) {
|
||||||
SavDataIdx = other.SavDataIdx;
|
SavDataIdx = other.SavDataIdx;
|
||||||
}
|
}
|
||||||
|
if (other.Name.Length != 0) {
|
||||||
|
Name = other.Name;
|
||||||
|
}
|
||||||
|
if (other.Note.Length != 0) {
|
||||||
|
Note = other.Note;
|
||||||
|
}
|
||||||
if (other.SavImg.Length != 0) {
|
if (other.SavImg.Length != 0) {
|
||||||
SavImg = other.SavImg;
|
SavImg = other.SavImg;
|
||||||
}
|
}
|
||||||
@ -11315,10 +11456,18 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 26: {
|
case 26: {
|
||||||
SavImg = input.ReadBytes();
|
Name = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 34: {
|
case 34: {
|
||||||
|
Note = input.ReadString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 42: {
|
||||||
|
SavImg = input.ReadBytes();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 50: {
|
||||||
StateRaw = input.ReadBytes();
|
StateRaw = input.ReadBytes();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11345,10 +11494,18 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 26: {
|
case 26: {
|
||||||
SavImg = input.ReadBytes();
|
Name = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 34: {
|
case 34: {
|
||||||
|
Note = input.ReadString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 42: {
|
||||||
|
SavImg = input.ReadBytes();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 50: {
|
||||||
StateRaw = input.ReadBytes();
|
StateRaw = input.ReadBytes();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11389,6 +11546,7 @@ namespace AxibugProtobuf {
|
|||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public Protobuf_Mine_UpLoadGameSav_RESP(Protobuf_Mine_UpLoadGameSav_RESP other) : this() {
|
public Protobuf_Mine_UpLoadGameSav_RESP(Protobuf_Mine_UpLoadGameSav_RESP other) : this() {
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
|
savDataIdx_ = other.savDataIdx_;
|
||||||
uploadSevInfo_ = other.uploadSevInfo_ != null ? other.uploadSevInfo_.Clone() : null;
|
uploadSevInfo_ = other.uploadSevInfo_ != null ? other.uploadSevInfo_.Clone() : null;
|
||||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
||||||
}
|
}
|
||||||
@ -11412,8 +11570,22 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
||||||
|
public const int SavDataIdxFieldNumber = 2;
|
||||||
|
private int savDataIdx_;
|
||||||
|
/// <summary>
|
||||||
|
///即时存档下标(其中第0个是自动存档位置)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public int SavDataIdx {
|
||||||
|
get { return savDataIdx_; }
|
||||||
|
set {
|
||||||
|
savDataIdx_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "UploadSevInfo" field.</summary>
|
/// <summary>Field number for the "UploadSevInfo" field.</summary>
|
||||||
public const int UploadSevInfoFieldNumber = 2;
|
public const int UploadSevInfoFieldNumber = 3;
|
||||||
private global::AxibugProtobuf.Protobuf_Mine_GameSavInfo uploadSevInfo_;
|
private global::AxibugProtobuf.Protobuf_Mine_GameSavInfo uploadSevInfo_;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///上传成功的存档详情
|
///上传成功的存档详情
|
||||||
@ -11440,6 +11612,7 @@ namespace AxibugProtobuf {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
if (!object.Equals(UploadSevInfo, other.UploadSevInfo)) return false;
|
if (!object.Equals(UploadSevInfo, other.UploadSevInfo)) return false;
|
||||||
return Equals(_unknownFields, other._unknownFields);
|
return Equals(_unknownFields, other._unknownFields);
|
||||||
}
|
}
|
||||||
@ -11448,6 +11621,7 @@ namespace AxibugProtobuf {
|
|||||||
public override int GetHashCode() {
|
public override int GetHashCode() {
|
||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
if (uploadSevInfo_ != null) hash ^= UploadSevInfo.GetHashCode();
|
if (uploadSevInfo_ != null) hash ^= UploadSevInfo.GetHashCode();
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
hash ^= _unknownFields.GetHashCode();
|
hash ^= _unknownFields.GetHashCode();
|
||||||
@ -11469,8 +11643,12 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt32(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
output.WriteRawTag(18);
|
output.WriteRawTag(26);
|
||||||
output.WriteMessage(UploadSevInfo);
|
output.WriteMessage(UploadSevInfo);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11486,8 +11664,12 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt32(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
output.WriteRawTag(18);
|
output.WriteRawTag(26);
|
||||||
output.WriteMessage(UploadSevInfo);
|
output.WriteMessage(UploadSevInfo);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11502,6 +11684,9 @@ namespace AxibugProtobuf {
|
|||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(RomID);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeMessageSize(UploadSevInfo);
|
size += 1 + pb::CodedOutputStream.ComputeMessageSize(UploadSevInfo);
|
||||||
}
|
}
|
||||||
@ -11519,6 +11704,9 @@ namespace AxibugProtobuf {
|
|||||||
if (other.RomID != 0) {
|
if (other.RomID != 0) {
|
||||||
RomID = other.RomID;
|
RomID = other.RomID;
|
||||||
}
|
}
|
||||||
|
if (other.SavDataIdx != 0) {
|
||||||
|
SavDataIdx = other.SavDataIdx;
|
||||||
|
}
|
||||||
if (other.uploadSevInfo_ != null) {
|
if (other.uploadSevInfo_ != null) {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
@ -11543,7 +11731,11 @@ namespace AxibugProtobuf {
|
|||||||
RomID = input.ReadInt32();
|
RomID = input.ReadInt32();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 18: {
|
case 16: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 26: {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
}
|
}
|
||||||
@ -11568,7 +11760,11 @@ namespace AxibugProtobuf {
|
|||||||
RomID = input.ReadInt32();
|
RomID = input.ReadInt32();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 18: {
|
case 16: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 26: {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
}
|
}
|
||||||
|
@ -109,62 +109,63 @@ namespace AxibugProtobuf {
|
|||||||
"bmVfR2V0R2FtZVNhdkxpc3QSDQoFUm9tSUQYASABKAUicgohUHJvdG9idWZf",
|
"bmVfR2V0R2FtZVNhdkxpc3QSDQoFUm9tSUQYASABKAUicgohUHJvdG9idWZf",
|
||||||
"TWluZV9HZXRHYW1lU2F2TGlzdF9SRVNQEg0KBVJvbUlEGAEgASgFEj4KC1Nh",
|
"TWluZV9HZXRHYW1lU2F2TGlzdF9SRVNQEg0KBVJvbUlEGAEgASgFEj4KC1Nh",
|
||||||
"dkRhdGFMaXN0GAIgAygLMikuQXhpYnVnUHJvdG9idWYuUHJvdG9idWZfTWlu",
|
"dkRhdGFMaXN0GAIgAygLMikuQXhpYnVnUHJvdG9idWYuUHJvdG9idWZfTWlu",
|
||||||
"ZV9HYW1lU2F2SW5mbyLiAQoZUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbxIU",
|
"ZV9HYW1lU2F2SW5mbyL+AQoZUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbxIU",
|
||||||
"CgxiSGFkU2F2ZURhdGEYASABKAgSEgoKU2F2RGF0YUlkeBgCIAEoBRINCgVS",
|
"CgxiSGFkU2F2ZURhdGEYASABKAgSDQoFU2F2SUQYAiABKAMSCwoDdWlkGAMg",
|
||||||
"b21JRBgDIAEoBRI5ChBHYW1lUGxhdGZvcm1UeXBlGAQgASgOMh8uQXhpYnVn",
|
"ASgDEhIKClNhdkRhdGFJZHgYBCABKAUSDQoFUm9tSUQYBSABKAUSOQoQR2Ft",
|
||||||
"UHJvdG9idWYuUm9tUGxhdGZvcm1UeXBlEg8KB1NhdkRhdGUYBSABKAkSDwoH",
|
"ZVBsYXRmb3JtVHlwZRgGIAEoDjIfLkF4aWJ1Z1Byb3RvYnVmLlJvbVBsYXRm",
|
||||||
"U2F2TmFtZRgGIAEoCRIMCgROb3RlGAcgASgJEhEKCVNhdkltZ1VybBgIIAEo",
|
"b3JtVHlwZRIPCgdTYXZEYXRlGAcgASgJEg8KB1Nhdk5hbWUYCCABKAkSDAoE",
|
||||||
"CRIOCgZTYXZVcmwYCSABKAkiPQoYUHJvdG9idWZfTWluZV9EZWxHYW1lU2F2",
|
"Tm90ZRgJIAEoCRIRCglTYXZJbWdVcmwYCiABKAkSDgoGU2F2VXJsGAsgASgJ",
|
||||||
"Eg0KBVJvbUlEGAEgASgFEhIKClNhdkRhdGFJZHgYAiABKAUiQgodUHJvdG9i",
|
"Ij0KGFByb3RvYnVmX01pbmVfRGVsR2FtZVNhdhINCgVSb21JRBgBIAEoBRIS",
|
||||||
"dWZfTWluZV9EZWxHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSEgoKU2F2",
|
"CgpTYXZEYXRhSWR4GAIgASgFIkIKHVByb3RvYnVmX01pbmVfRGVsR2FtZVNh",
|
||||||
"RGF0YUlkeBgCIAEoBSJiChtQcm90b2J1Zl9NaW5lX1VwTG9hZEdhbWVTYXYS",
|
"dl9SRVNQEg0KBVJvbUlEGAEgASgFEhIKClNhdkRhdGFJZHgYAiABKAUifgob",
|
||||||
"DQoFUm9tSUQYASABKAUSEgoKU2F2RGF0YUlkeBgCIAEoBRIOCgZTYXZJbWcY",
|
"UHJvdG9idWZfTWluZV9VcExvYWRHYW1lU2F2Eg0KBVJvbUlEGAEgASgFEhIK",
|
||||||
"AyABKAwSEAoIU3RhdGVSYXcYBCABKAwicwogUHJvdG9idWZfTWluZV9VcExv",
|
"ClNhdkRhdGFJZHgYAiABKAUSDAoETmFtZRgDIAEoCRIMCgROb3RlGAQgASgJ",
|
||||||
"YWRHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSQAoNVXBsb2FkU2V2SW5m",
|
"Eg4KBlNhdkltZxgFIAEoDBIQCghTdGF0ZVJhdxgGIAEoDCKHAQogUHJvdG9i",
|
||||||
"bxgCIAEoCzIpLkF4aWJ1Z1Byb3RvYnVmLlByb3RvYnVmX01pbmVfR2FtZVNh",
|
"dWZfTWluZV9VcExvYWRHYW1lU2F2X1JFU1ASDQoFUm9tSUQYASABKAUSEgoK",
|
||||||
"dkluZm8q/wUKCUNvbW1hbmRJRBIOCgpDTURfREVGQVVMEAASDAoIQ01EX1BJ",
|
"U2F2RGF0YUlkeBgCIAEoBRJACg1VcGxvYWRTZXZJbmZvGAMgASgLMikuQXhp",
|
||||||
"TkcQARIMCghDTURfUE9ORxACEg4KCUNNRF9MT0dJThDRDxIYChNDTURfVVNF",
|
"YnVnUHJvdG9idWYuUHJvdG9idWZfTWluZV9HYW1lU2F2SW5mbyr/BQoJQ29t",
|
||||||
"Ul9PTkxJTkVMSVNUELgXEhIKDUNNRF9VU0VSX0pPSU4Q1xcSEwoOQ01EX1VT",
|
"bWFuZElEEg4KCkNNRF9ERUZBVUwQABIMCghDTURfUElORxABEgwKCENNRF9Q",
|
||||||
"RVJfTEVBVkUQ2BcSGgoVQ01EX1VTRVJfU1RBVEVfVVBEQVRFENkXEhgKE0NN",
|
"T05HEAISDgoJQ01EX0xPR0lOENEPEhgKE0NNRF9VU0VSX09OTElORUxJU1QQ",
|
||||||
"RF9Nb2RpZnlfTmlja05hbWUQnRgSHAoXQ01EX1VwZGF0ZV9TZWxmVXNlcklu",
|
"uBcSEgoNQ01EX1VTRVJfSk9JThDXFxITCg5DTURfVVNFUl9MRUFWRRDYFxIa",
|
||||||
"Zm8QphgSHQoYQ01EX1VwZGF0ZV9PdGhlclVzZXJJbmZvEKgYEhAKC0NNRF9D",
|
"ChVDTURfVVNFUl9TVEFURV9VUERBVEUQ2RcSGAoTQ01EX01vZGlmeV9OaWNr",
|
||||||
"SEFUTVNHEKEfEhIKDUNNRF9Sb29tX0xpc3QQiScSGQoUQ01EX1Jvb21fTGlz",
|
"TmFtZRCdGBIcChdDTURfVXBkYXRlX1NlbGZVc2VySW5mbxCmGBIdChhDTURf",
|
||||||
"dF9VcGRhdGUQiicSGAoTQ01EX1Jvb21fR2V0X1NjcmVlbhCTJxIUCg9DTURf",
|
"VXBkYXRlX090aGVyVXNlckluZm8QqBgSEAoLQ01EX0NIQVRNU0cQoR8SEgoN",
|
||||||
"Um9vbV9DcmVhdGUQ7ScSEgoNQ01EX1Jvb21fSm9pbhDxJxITCg5DTURfUm9v",
|
"Q01EX1Jvb21fTGlzdBCJJxIZChRDTURfUm9vbV9MaXN0X1VwZGF0ZRCKJxIY",
|
||||||
"bV9MZWF2ZRDyJxIiCh1DTURfUm9vbV9NeVJvb21fU3RhdGVfQ2hhbmdlZBD2",
|
"ChNDTURfUm9vbV9HZXRfU2NyZWVuEJMnEhQKD0NNRF9Sb29tX0NyZWF0ZRDt",
|
||||||
"JxIhChxDTURfUm9vbV9DaGFuZ2VQbGF5ZXJXaXRoSm95EIooEhYKEUNNRF9S",
|
"JxISCg1DTURfUm9vbV9Kb2luEPEnEhMKDkNNRF9Sb29tX0xlYXZlEPInEiIK",
|
||||||
"b29tX1dhaXRTdGVwENEoEicKIkNNRF9Sb29tX0hvc3RQbGF5ZXJfVXBkYXRl",
|
"HUNNRF9Sb29tX015Um9vbV9TdGF0ZV9DaGFuZ2VkEPYnEiEKHENNRF9Sb29t",
|
||||||
"U3RhdGVSYXcQ1CgSGgoVQ01EX1Jvb21fUGxheWVyX1JlYWR5ENgoEiAKG0NN",
|
"X0NoYW5nZVBsYXllcldpdGhKb3kQiigSFgoRQ01EX1Jvb21fV2FpdFN0ZXAQ",
|
||||||
"RF9Sb29tX1NpbmdlbF9QbGF5ZXJJbnB1dBD6LhIdChhDTURfUk9PTV9TWU5f",
|
"0SgSJwoiQ01EX1Jvb21fSG9zdFBsYXllcl9VcGRhdGVTdGF0ZVJhdxDUKBIa",
|
||||||
"UGxheWVySW5wdXQQ/y4SDwoKQ01EX1NjcmVlbhDZNhIfChpDTURfR0FNRVNB",
|
"ChVDTURfUm9vbV9QbGF5ZXJfUmVhZHkQ2CgSIAobQ01EX1Jvb21fU2luZ2Vs",
|
||||||
"Vl9HZXRHYW1lU2F2TGlzdBDBPhIbChZDTURfR0FNRVNBVl9EZWxHYW1lU2F2",
|
"X1BsYXllcklucHV0EPouEh0KGENNRF9ST09NX1NZTl9QbGF5ZXJJbnB1dBD/",
|
||||||
"EMU+Eh4KGUNNRF9HQU1FU0FWX1VwbG9hZEdhbWVTYXYQyj4SEgoNQ01EX0dB",
|
"LhIPCgpDTURfU2NyZWVuENk2Eh8KGkNNRF9HQU1FU0FWX0dldEdhbWVTYXZM",
|
||||||
"TUVfTUFSSxD1TirxAQoJRXJyb3JDb2RlEhAKDEVSUk9SX0RFRkFVTBAAEgwK",
|
"aXN0EME+EhsKFkNNRF9HQU1FU0FWX0RlbEdhbWVTYXYQxT4SHgoZQ01EX0dB",
|
||||||
"CEVSUk9SX09LEAESGAoURVJST1JfUk9PTV9OT1RfRk9VTkQQChInCiNFUlJP",
|
"TUVTQVZfVXBsb2FkR2FtZVNhdhDKPhISCg1DTURfR0FNRV9NQVJLEPVOKvEB",
|
||||||
"Ul9ST09NX1NMT1RfQUxSRUFETFlfSEFEX1BMQVlFUhALEiEKHUVSUk9SX1JP",
|
"CglFcnJvckNvZGUSEAoMRVJST1JfREVGQVVMEAASDAoIRVJST1JfT0sQARIY",
|
||||||
"T01fQ0FOVF9ET19DVVJSX1NUQVRFEDISHwobRVJST1JfUk9NX0RPTlRfSEFE",
|
"ChRFUlJPUl9ST09NX05PVF9GT1VORBAKEicKI0VSUk9SX1JPT01fU0xPVF9B",
|
||||||
"X1NBVkVEQVRBEFASHwoaRVJST1JfUk9NX0FMUkVBRFlfSEFEX1NUQVIQkwMS",
|
"TFJFQURMWV9IQURfUExBWUVSEAsSIQodRVJST1JfUk9PTV9DQU5UX0RPX0NV",
|
||||||
"HAoXRVJST1JfUk9NX0RPTlRfSEFEX1NUQVIQlAMqQAoJTG9naW5UeXBlEg0K",
|
"UlJfU1RBVEUQMhIfChtFUlJPUl9ST01fRE9OVF9IQURfU0FWRURBVEEQUBIf",
|
||||||
"CVVzZURldmljZRAAEg4KClVzZUFjY291bnQQARIUChBVc2VIYW9ZdWVBY2Nv",
|
"ChpFUlJPUl9ST01fQUxSRUFEWV9IQURfU1RBUhCTAxIcChdFUlJPUl9ST01f",
|
||||||
"dW50EAIqpQEKCkRldmljZVR5cGUSFgoSRGV2aWNlVHlwZV9EZWZhdWx0EAAS",
|
"RE9OVF9IQURfU1RBUhCUAypACglMb2dpblR5cGUSDQoJVXNlRGV2aWNlEAAS",
|
||||||
"BgoCUEMQARILCgdBbmRyb2lkEAISBwoDSU9TEAMSBwoDUFNWEAQSBwoDUFMz",
|
"DgoKVXNlQWNjb3VudBABEhQKEFVzZUhhb1l1ZUFjY291bnQQAiqlAQoKRGV2",
|
||||||
"EAUSBwoDUFM0EAYSCwoHWEJPWDM2MBAHEgsKB1hCT1hPTkUQCBIICgRXaWlV",
|
"aWNlVHlwZRIWChJEZXZpY2VUeXBlX0RlZmF1bHQQABIGCgJQQxABEgsKB0Fu",
|
||||||
"EAkSDwoLTmludGVuZG8zRFMQChIRCg1BbmRyb2lkQ2FyQXBwEAsqkwIKC0dh",
|
"ZHJvaWQQAhIHCgNJT1MQAxIHCgNQU1YQBBIHCgNQUzMQBRIHCgNQUzQQBhIL",
|
||||||
"bWVQYWRUeXBlEgwKCEtleWJvYXJkEAASEQoNR2xvYmFsR2FtZVBhZBABEg4K",
|
"CgdYQk9YMzYwEAcSCwoHWEJPWE9ORRAIEggKBFdpaVUQCRIPCgtOaW50ZW5k",
|
||||||
"ClRvdWNoUGFuZWwQAhIOCgpEUzNDb250cm9sEAMSDgoKRFM0Q29udHJvbBAE",
|
"bzNEUxAKEhEKDUFuZHJvaWRDYXJBcHAQCyqTAgoLR2FtZVBhZFR5cGUSDAoI",
|
||||||
"Eg4KCkRTNUNvbnRyb2wQBRIUChBTd2l0Y2hQcm9Db250cm9sEAYSEAoMU3dp",
|
"S2V5Ym9hcmQQABIRCg1HbG9iYWxHYW1lUGFkEAESDgoKVG91Y2hQYW5lbBAC",
|
||||||
"dGNoSm95Q29uEAcSEgoOWEJPWDM2MENvbnRyb2wQCBISCg5YQk9YT05FQ29u",
|
"Eg4KCkRTM0NvbnRyb2wQAxIOCgpEUzRDb250cm9sEAQSDgoKRFM1Q29udHJv",
|
||||||
"dHJvbBAJEhEKDVBTVml0YUNvbnRyb2wQChISCg5XaWlVUGFkQ29udHJvbBAL",
|
"bBAFEhQKEFN3aXRjaFByb0NvbnRyb2wQBhIQCgxTd2l0Y2hKb3lDb24QBxIS",
|
||||||
"EhQKEFdpaVJlbW90ZUNvbnRyb2wQDBIWChJOaW50ZW5kbzNEU0NvbnRyb2wQ",
|
"Cg5YQk9YMzYwQ29udHJvbBAIEhIKDlhCT1hPTkVDb250cm9sEAkSEQoNUFNW",
|
||||||
"DSqiAQoPUm9tUGxhdGZvcm1UeXBlEgsKB0ludmFsaWQQABIHCgNOZXMQARIR",
|
"aXRhQ29udHJvbBAKEhIKDldpaVVQYWRDb250cm9sEAsSFAoQV2lpUmVtb3Rl",
|
||||||
"Cg1NYXN0ZXJfU3lzdGVtEAISDQoJR2FtZV9HZWFyEAMSDAoIR2FtZV9Cb3kQ",
|
"Q29udHJvbBAMEhYKEk5pbnRlbmRvM0RTQ29udHJvbBANKqIBCg9Sb21QbGF0",
|
||||||
"BBISCg5HYW1lX0JveV9Db2xvchAFEhEKDUNvbGVjb19WaXNpb24QBhILCgdT",
|
"Zm9ybVR5cGUSCwoHSW52YWxpZBAAEgcKA05lcxABEhEKDU1hc3Rlcl9TeXN0",
|
||||||
"Q18zMDAwEAcSCwoHU0dfMTAwMBAIEggKA0FsbBDnBypwCg1Sb29tR2FtZVN0",
|
"ZW0QAhINCglHYW1lX0dlYXIQAxIMCghHYW1lX0JveRAEEhIKDkdhbWVfQm95",
|
||||||
"YXRlEhIKDk5vbmVfR2FtZVN0YXRlEAASDAoIT25seUhvc3QQARIRCg1XYWl0",
|
"X0NvbG9yEAUSEQoNQ29sZWNvX1Zpc2lvbhAGEgsKB1NDXzMwMDAQBxILCgdT",
|
||||||
"UmF3VXBkYXRlEAISDQoJV2FpdFJlYWR5EAMSCQoFUGF1c2UQBBIQCgxJbk9u",
|
"R18xMDAwEAgSCAoDQWxsEOcHKnAKDVJvb21HYW1lU3RhdGUSEgoOTm9uZV9H",
|
||||||
"bGluZUdhbWUQBSpOChFMb2dpblJlc3VsdFN0YXR1cxIhCh1Mb2dpblJlc3Vs",
|
"YW1lU3RhdGUQABIMCghPbmx5SG9zdBABEhEKDVdhaXRSYXdVcGRhdGUQAhIN",
|
||||||
"dFN0YXR1c19CYXNlRGVmYXVsdBAAEgYKAk9LEAESDgoKQWNjb3VudEVychAC",
|
"CglXYWl0UmVhZHkQAxIJCgVQYXVzZRAEEhAKDEluT25saW5lR2FtZRAFKk4K",
|
||||||
"QgJIAWIGcHJvdG8z"));
|
"EUxvZ2luUmVzdWx0U3RhdHVzEiEKHUxvZ2luUmVzdWx0U3RhdHVzX0Jhc2VE",
|
||||||
|
"ZWZhdWx0EAASBgoCT0sQARIOCgpBY2NvdW50RXJyEAJCAkgBYgZwcm90bzM="));
|
||||||
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
|
||||||
new pbr::FileDescriptor[] { },
|
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[] {
|
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[] {
|
||||||
@ -213,11 +214,11 @@ namespace AxibugProtobuf {
|
|||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Game_Mark_RESP), global::AxibugProtobuf.Protobuf_Game_Mark_RESP.Parser, new[]{ "RomID", "IsStar", "Stars" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Game_Mark_RESP), global::AxibugProtobuf.Protobuf_Game_Mark_RESP.Parser, new[]{ "RomID", "IsStar", "Stars" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList.Parser, new[]{ "RomID" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList.Parser, new[]{ "RomID" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP.Parser, new[]{ "RomID", "SavDataList" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP), global::AxibugProtobuf.Protobuf_Mine_GetGameSavList_RESP.Parser, new[]{ "RomID", "SavDataList" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GameSavInfo), global::AxibugProtobuf.Protobuf_Mine_GameSavInfo.Parser, new[]{ "BHadSaveData", "SavDataIdx", "RomID", "GamePlatformType", "SavDate", "SavName", "Note", "SavImgUrl", "SavUrl" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_GameSavInfo), global::AxibugProtobuf.Protobuf_Mine_GameSavInfo.Parser, new[]{ "BHadSaveData", "SavID", "Uid", "SavDataIdx", "RomID", "GamePlatformType", "SavDate", "SavName", "Note", "SavImgUrl", "SavUrl" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav), global::AxibugProtobuf.Protobuf_Mine_DelGameSav.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav), global::AxibugProtobuf.Protobuf_Mine_DelGameSav.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_DelGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav.Parser, new[]{ "RomID", "SavDataIdx", "SavImg", "StateRaw" }, null, null, null, null),
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav.Parser, new[]{ "RomID", "SavDataIdx", "Name", "Note", "SavImg", "StateRaw" }, null, null, null, null),
|
||||||
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP.Parser, new[]{ "RomID", "UploadSevInfo" }, null, null, null, null)
|
new pbr::GeneratedClrTypeInfo(typeof(global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP), global::AxibugProtobuf.Protobuf_Mine_UpLoadGameSav_RESP.Parser, new[]{ "RomID", "SavDataIdx", "UploadSevInfo" }, null, null, null, null)
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
@ -10191,6 +10192,8 @@ namespace AxibugProtobuf {
|
|||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public Protobuf_Mine_GameSavInfo(Protobuf_Mine_GameSavInfo other) : this() {
|
public Protobuf_Mine_GameSavInfo(Protobuf_Mine_GameSavInfo other) : this() {
|
||||||
bHadSaveData_ = other.bHadSaveData_;
|
bHadSaveData_ = other.bHadSaveData_;
|
||||||
|
savID_ = other.savID_;
|
||||||
|
uid_ = other.uid_;
|
||||||
savDataIdx_ = other.savDataIdx_;
|
savDataIdx_ = other.savDataIdx_;
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
gamePlatformType_ = other.gamePlatformType_;
|
gamePlatformType_ = other.gamePlatformType_;
|
||||||
@ -10221,8 +10224,36 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "SavID" field.</summary>
|
||||||
|
public const int SavIDFieldNumber = 2;
|
||||||
|
private long savID_;
|
||||||
|
/// <summary>
|
||||||
|
///即时存档唯一ID(用于今后分享)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public long SavID {
|
||||||
|
get { return savID_; }
|
||||||
|
set {
|
||||||
|
savID_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "uid" field.</summary>
|
||||||
|
public const int UidFieldNumber = 3;
|
||||||
|
private long uid_;
|
||||||
|
/// <summary>
|
||||||
|
///所属用户UID(用于今后分享)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public long Uid {
|
||||||
|
get { return uid_; }
|
||||||
|
set {
|
||||||
|
uid_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
||||||
public const int SavDataIdxFieldNumber = 2;
|
public const int SavDataIdxFieldNumber = 4;
|
||||||
private int savDataIdx_;
|
private int savDataIdx_;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档下标(其中第0个是自动存档位置)
|
///即时存档下标(其中第0个是自动存档位置)
|
||||||
@ -10236,7 +10267,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "RomID" field.</summary>
|
/// <summary>Field number for the "RomID" field.</summary>
|
||||||
public const int RomIDFieldNumber = 3;
|
public const int RomIDFieldNumber = 5;
|
||||||
private int romID_;
|
private int romID_;
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public int RomID {
|
public int RomID {
|
||||||
@ -10247,7 +10278,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "GamePlatformType" field.</summary>
|
/// <summary>Field number for the "GamePlatformType" field.</summary>
|
||||||
public const int GamePlatformTypeFieldNumber = 4;
|
public const int GamePlatformTypeFieldNumber = 6;
|
||||||
private global::AxibugProtobuf.RomPlatformType gamePlatformType_ = global::AxibugProtobuf.RomPlatformType.Invalid;
|
private global::AxibugProtobuf.RomPlatformType gamePlatformType_ = global::AxibugProtobuf.RomPlatformType.Invalid;
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public global::AxibugProtobuf.RomPlatformType GamePlatformType {
|
public global::AxibugProtobuf.RomPlatformType GamePlatformType {
|
||||||
@ -10258,7 +10289,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavDate" field.</summary>
|
/// <summary>Field number for the "SavDate" field.</summary>
|
||||||
public const int SavDateFieldNumber = 5;
|
public const int SavDateFieldNumber = 7;
|
||||||
private string savDate_ = "";
|
private string savDate_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///存档时间
|
///存档时间
|
||||||
@ -10272,7 +10303,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavName" field.</summary>
|
/// <summary>Field number for the "SavName" field.</summary>
|
||||||
public const int SavNameFieldNumber = 6;
|
public const int SavNameFieldNumber = 8;
|
||||||
private string savName_ = "";
|
private string savName_ = "";
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public string SavName {
|
public string SavName {
|
||||||
@ -10283,7 +10314,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "Note" field.</summary>
|
/// <summary>Field number for the "Note" field.</summary>
|
||||||
public const int NoteFieldNumber = 7;
|
public const int NoteFieldNumber = 9;
|
||||||
private string note_ = "";
|
private string note_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///备注
|
///备注
|
||||||
@ -10297,7 +10328,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavImgUrl" field.</summary>
|
/// <summary>Field number for the "SavImgUrl" field.</summary>
|
||||||
public const int SavImgUrlFieldNumber = 8;
|
public const int SavImgUrlFieldNumber = 10;
|
||||||
private string savImgUrl_ = "";
|
private string savImgUrl_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档截图Url
|
///即时存档截图Url
|
||||||
@ -10311,7 +10342,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavUrl" field.</summary>
|
/// <summary>Field number for the "SavUrl" field.</summary>
|
||||||
public const int SavUrlFieldNumber = 9;
|
public const int SavUrlFieldNumber = 11;
|
||||||
private string savUrl_ = "";
|
private string savUrl_ = "";
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档下载Url
|
///即时存档下载Url
|
||||||
@ -10338,6 +10369,8 @@ namespace AxibugProtobuf {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (BHadSaveData != other.BHadSaveData) return false;
|
if (BHadSaveData != other.BHadSaveData) return false;
|
||||||
|
if (SavID != other.SavID) return false;
|
||||||
|
if (Uid != other.Uid) return false;
|
||||||
if (SavDataIdx != other.SavDataIdx) return false;
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
if (GamePlatformType != other.GamePlatformType) return false;
|
if (GamePlatformType != other.GamePlatformType) return false;
|
||||||
@ -10353,6 +10386,8 @@ namespace AxibugProtobuf {
|
|||||||
public override int GetHashCode() {
|
public override int GetHashCode() {
|
||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (BHadSaveData != false) hash ^= BHadSaveData.GetHashCode();
|
if (BHadSaveData != false) hash ^= BHadSaveData.GetHashCode();
|
||||||
|
if (SavID != 0L) hash ^= SavID.GetHashCode();
|
||||||
|
if (Uid != 0L) hash ^= Uid.GetHashCode();
|
||||||
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) hash ^= GamePlatformType.GetHashCode();
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) hash ^= GamePlatformType.GetHashCode();
|
||||||
@ -10381,36 +10416,44 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteBool(BHadSaveData);
|
output.WriteBool(BHadSaveData);
|
||||||
}
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavID != 0L) {
|
||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt64(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
output.WriteRawTag(24);
|
||||||
|
output.WriteInt64(Uid);
|
||||||
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(32);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
output.WriteRawTag(24);
|
output.WriteRawTag(40);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
||||||
output.WriteRawTag(32);
|
output.WriteRawTag(48);
|
||||||
output.WriteEnum((int) GamePlatformType);
|
output.WriteEnum((int) GamePlatformType);
|
||||||
}
|
}
|
||||||
if (SavDate.Length != 0) {
|
if (SavDate.Length != 0) {
|
||||||
output.WriteRawTag(42);
|
output.WriteRawTag(58);
|
||||||
output.WriteString(SavDate);
|
output.WriteString(SavDate);
|
||||||
}
|
}
|
||||||
if (SavName.Length != 0) {
|
if (SavName.Length != 0) {
|
||||||
output.WriteRawTag(50);
|
output.WriteRawTag(66);
|
||||||
output.WriteString(SavName);
|
output.WriteString(SavName);
|
||||||
}
|
}
|
||||||
if (Note.Length != 0) {
|
if (Note.Length != 0) {
|
||||||
output.WriteRawTag(58);
|
output.WriteRawTag(74);
|
||||||
output.WriteString(Note);
|
output.WriteString(Note);
|
||||||
}
|
}
|
||||||
if (SavImgUrl.Length != 0) {
|
if (SavImgUrl.Length != 0) {
|
||||||
output.WriteRawTag(66);
|
output.WriteRawTag(82);
|
||||||
output.WriteString(SavImgUrl);
|
output.WriteString(SavImgUrl);
|
||||||
}
|
}
|
||||||
if (SavUrl.Length != 0) {
|
if (SavUrl.Length != 0) {
|
||||||
output.WriteRawTag(74);
|
output.WriteRawTag(90);
|
||||||
output.WriteString(SavUrl);
|
output.WriteString(SavUrl);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -10426,36 +10469,44 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteBool(BHadSaveData);
|
output.WriteBool(BHadSaveData);
|
||||||
}
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavID != 0L) {
|
||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt64(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
output.WriteRawTag(24);
|
||||||
|
output.WriteInt64(Uid);
|
||||||
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(32);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
output.WriteRawTag(24);
|
output.WriteRawTag(40);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
if (GamePlatformType != global::AxibugProtobuf.RomPlatformType.Invalid) {
|
||||||
output.WriteRawTag(32);
|
output.WriteRawTag(48);
|
||||||
output.WriteEnum((int) GamePlatformType);
|
output.WriteEnum((int) GamePlatformType);
|
||||||
}
|
}
|
||||||
if (SavDate.Length != 0) {
|
if (SavDate.Length != 0) {
|
||||||
output.WriteRawTag(42);
|
output.WriteRawTag(58);
|
||||||
output.WriteString(SavDate);
|
output.WriteString(SavDate);
|
||||||
}
|
}
|
||||||
if (SavName.Length != 0) {
|
if (SavName.Length != 0) {
|
||||||
output.WriteRawTag(50);
|
output.WriteRawTag(66);
|
||||||
output.WriteString(SavName);
|
output.WriteString(SavName);
|
||||||
}
|
}
|
||||||
if (Note.Length != 0) {
|
if (Note.Length != 0) {
|
||||||
output.WriteRawTag(58);
|
output.WriteRawTag(74);
|
||||||
output.WriteString(Note);
|
output.WriteString(Note);
|
||||||
}
|
}
|
||||||
if (SavImgUrl.Length != 0) {
|
if (SavImgUrl.Length != 0) {
|
||||||
output.WriteRawTag(66);
|
output.WriteRawTag(82);
|
||||||
output.WriteString(SavImgUrl);
|
output.WriteString(SavImgUrl);
|
||||||
}
|
}
|
||||||
if (SavUrl.Length != 0) {
|
if (SavUrl.Length != 0) {
|
||||||
output.WriteRawTag(74);
|
output.WriteRawTag(90);
|
||||||
output.WriteString(SavUrl);
|
output.WriteString(SavUrl);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -10470,6 +10521,12 @@ namespace AxibugProtobuf {
|
|||||||
if (BHadSaveData != false) {
|
if (BHadSaveData != false) {
|
||||||
size += 1 + 1;
|
size += 1 + 1;
|
||||||
}
|
}
|
||||||
|
if (SavID != 0L) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt64Size(SavID);
|
||||||
|
}
|
||||||
|
if (Uid != 0L) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt64Size(Uid);
|
||||||
|
}
|
||||||
if (SavDataIdx != 0) {
|
if (SavDataIdx != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
}
|
}
|
||||||
@ -10508,6 +10565,12 @@ namespace AxibugProtobuf {
|
|||||||
if (other.BHadSaveData != false) {
|
if (other.BHadSaveData != false) {
|
||||||
BHadSaveData = other.BHadSaveData;
|
BHadSaveData = other.BHadSaveData;
|
||||||
}
|
}
|
||||||
|
if (other.SavID != 0L) {
|
||||||
|
SavID = other.SavID;
|
||||||
|
}
|
||||||
|
if (other.Uid != 0L) {
|
||||||
|
Uid = other.Uid;
|
||||||
|
}
|
||||||
if (other.SavDataIdx != 0) {
|
if (other.SavDataIdx != 0) {
|
||||||
SavDataIdx = other.SavDataIdx;
|
SavDataIdx = other.SavDataIdx;
|
||||||
}
|
}
|
||||||
@ -10551,34 +10614,42 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 16: {
|
case 16: {
|
||||||
SavDataIdx = input.ReadInt32();
|
SavID = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 24: {
|
case 24: {
|
||||||
RomID = input.ReadInt32();
|
Uid = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 32: {
|
case 32: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 40: {
|
||||||
|
RomID = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 48: {
|
||||||
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 42: {
|
case 58: {
|
||||||
SavDate = input.ReadString();
|
SavDate = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 50: {
|
case 66: {
|
||||||
SavName = input.ReadString();
|
SavName = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 58: {
|
case 74: {
|
||||||
Note = input.ReadString();
|
Note = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 66: {
|
case 82: {
|
||||||
SavImgUrl = input.ReadString();
|
SavImgUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 74: {
|
case 90: {
|
||||||
SavUrl = input.ReadString();
|
SavUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -10601,34 +10672,42 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 16: {
|
case 16: {
|
||||||
SavDataIdx = input.ReadInt32();
|
SavID = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 24: {
|
case 24: {
|
||||||
RomID = input.ReadInt32();
|
Uid = input.ReadInt64();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 32: {
|
case 32: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 40: {
|
||||||
|
RomID = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 48: {
|
||||||
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
GamePlatformType = (global::AxibugProtobuf.RomPlatformType) input.ReadEnum();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 42: {
|
case 58: {
|
||||||
SavDate = input.ReadString();
|
SavDate = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 50: {
|
case 66: {
|
||||||
SavName = input.ReadString();
|
SavName = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 58: {
|
case 74: {
|
||||||
Note = input.ReadString();
|
Note = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 66: {
|
case 82: {
|
||||||
SavImgUrl = input.ReadString();
|
SavImgUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 74: {
|
case 90: {
|
||||||
SavUrl = input.ReadString();
|
SavUrl = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11098,6 +11177,8 @@ namespace AxibugProtobuf {
|
|||||||
public Protobuf_Mine_UpLoadGameSav(Protobuf_Mine_UpLoadGameSav other) : this() {
|
public Protobuf_Mine_UpLoadGameSav(Protobuf_Mine_UpLoadGameSav other) : this() {
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
savDataIdx_ = other.savDataIdx_;
|
savDataIdx_ = other.savDataIdx_;
|
||||||
|
name_ = other.name_;
|
||||||
|
note_ = other.note_;
|
||||||
savImg_ = other.savImg_;
|
savImg_ = other.savImg_;
|
||||||
stateRaw_ = other.stateRaw_;
|
stateRaw_ = other.stateRaw_;
|
||||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
||||||
@ -11136,8 +11217,36 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "Name" field.</summary>
|
||||||
|
public const int NameFieldNumber = 3;
|
||||||
|
private string name_ = "";
|
||||||
|
/// <summary>
|
||||||
|
///存档名(留空时,服务器自动)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public string Name {
|
||||||
|
get { return name_; }
|
||||||
|
set {
|
||||||
|
name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "Note" field.</summary>
|
||||||
|
public const int NoteFieldNumber = 4;
|
||||||
|
private string note_ = "";
|
||||||
|
/// <summary>
|
||||||
|
///备注(留空时,服务器自动)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public string Note {
|
||||||
|
get { return note_; }
|
||||||
|
set {
|
||||||
|
note_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "SavImg" field.</summary>
|
/// <summary>Field number for the "SavImg" field.</summary>
|
||||||
public const int SavImgFieldNumber = 3;
|
public const int SavImgFieldNumber = 5;
|
||||||
private pb::ByteString savImg_ = pb::ByteString.Empty;
|
private pb::ByteString savImg_ = pb::ByteString.Empty;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档截图模拟器原生数据
|
///即时存档截图模拟器原生数据
|
||||||
@ -11151,7 +11260,7 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "StateRaw" field.</summary>
|
/// <summary>Field number for the "StateRaw" field.</summary>
|
||||||
public const int StateRawFieldNumber = 4;
|
public const int StateRawFieldNumber = 6;
|
||||||
private pb::ByteString stateRaw_ = pb::ByteString.Empty;
|
private pb::ByteString stateRaw_ = pb::ByteString.Empty;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///即时存档byte数据
|
///即时存档byte数据
|
||||||
@ -11179,6 +11288,8 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
if (SavDataIdx != other.SavDataIdx) return false;
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
|
if (Name != other.Name) return false;
|
||||||
|
if (Note != other.Note) return false;
|
||||||
if (SavImg != other.SavImg) return false;
|
if (SavImg != other.SavImg) return false;
|
||||||
if (StateRaw != other.StateRaw) return false;
|
if (StateRaw != other.StateRaw) return false;
|
||||||
return Equals(_unknownFields, other._unknownFields);
|
return Equals(_unknownFields, other._unknownFields);
|
||||||
@ -11189,6 +11300,8 @@ namespace AxibugProtobuf {
|
|||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
|
if (Name.Length != 0) hash ^= Name.GetHashCode();
|
||||||
|
if (Note.Length != 0) hash ^= Note.GetHashCode();
|
||||||
if (SavImg.Length != 0) hash ^= SavImg.GetHashCode();
|
if (SavImg.Length != 0) hash ^= SavImg.GetHashCode();
|
||||||
if (StateRaw.Length != 0) hash ^= StateRaw.GetHashCode();
|
if (StateRaw.Length != 0) hash ^= StateRaw.GetHashCode();
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11215,12 +11328,20 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (Name.Length != 0) {
|
||||||
output.WriteRawTag(26);
|
output.WriteRawTag(26);
|
||||||
|
output.WriteString(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
output.WriteRawTag(34);
|
||||||
|
output.WriteString(Note);
|
||||||
|
}
|
||||||
|
if (SavImg.Length != 0) {
|
||||||
|
output.WriteRawTag(42);
|
||||||
output.WriteBytes(SavImg);
|
output.WriteBytes(SavImg);
|
||||||
}
|
}
|
||||||
if (StateRaw.Length != 0) {
|
if (StateRaw.Length != 0) {
|
||||||
output.WriteRawTag(34);
|
output.WriteRawTag(50);
|
||||||
output.WriteBytes(StateRaw);
|
output.WriteBytes(StateRaw);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11240,12 +11361,20 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(16);
|
output.WriteRawTag(16);
|
||||||
output.WriteInt32(SavDataIdx);
|
output.WriteInt32(SavDataIdx);
|
||||||
}
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (Name.Length != 0) {
|
||||||
output.WriteRawTag(26);
|
output.WriteRawTag(26);
|
||||||
|
output.WriteString(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
output.WriteRawTag(34);
|
||||||
|
output.WriteString(Note);
|
||||||
|
}
|
||||||
|
if (SavImg.Length != 0) {
|
||||||
|
output.WriteRawTag(42);
|
||||||
output.WriteBytes(SavImg);
|
output.WriteBytes(SavImg);
|
||||||
}
|
}
|
||||||
if (StateRaw.Length != 0) {
|
if (StateRaw.Length != 0) {
|
||||||
output.WriteRawTag(34);
|
output.WriteRawTag(50);
|
||||||
output.WriteBytes(StateRaw);
|
output.WriteBytes(StateRaw);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11263,6 +11392,12 @@ namespace AxibugProtobuf {
|
|||||||
if (SavDataIdx != 0) {
|
if (SavDataIdx != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
}
|
}
|
||||||
|
if (Name.Length != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
|
||||||
|
}
|
||||||
|
if (Note.Length != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeStringSize(Note);
|
||||||
|
}
|
||||||
if (SavImg.Length != 0) {
|
if (SavImg.Length != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeBytesSize(SavImg);
|
size += 1 + pb::CodedOutputStream.ComputeBytesSize(SavImg);
|
||||||
}
|
}
|
||||||
@ -11286,6 +11421,12 @@ namespace AxibugProtobuf {
|
|||||||
if (other.SavDataIdx != 0) {
|
if (other.SavDataIdx != 0) {
|
||||||
SavDataIdx = other.SavDataIdx;
|
SavDataIdx = other.SavDataIdx;
|
||||||
}
|
}
|
||||||
|
if (other.Name.Length != 0) {
|
||||||
|
Name = other.Name;
|
||||||
|
}
|
||||||
|
if (other.Note.Length != 0) {
|
||||||
|
Note = other.Note;
|
||||||
|
}
|
||||||
if (other.SavImg.Length != 0) {
|
if (other.SavImg.Length != 0) {
|
||||||
SavImg = other.SavImg;
|
SavImg = other.SavImg;
|
||||||
}
|
}
|
||||||
@ -11315,10 +11456,18 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 26: {
|
case 26: {
|
||||||
SavImg = input.ReadBytes();
|
Name = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 34: {
|
case 34: {
|
||||||
|
Note = input.ReadString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 42: {
|
||||||
|
SavImg = input.ReadBytes();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 50: {
|
||||||
StateRaw = input.ReadBytes();
|
StateRaw = input.ReadBytes();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11345,10 +11494,18 @@ namespace AxibugProtobuf {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 26: {
|
case 26: {
|
||||||
SavImg = input.ReadBytes();
|
Name = input.ReadString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 34: {
|
case 34: {
|
||||||
|
Note = input.ReadString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 42: {
|
||||||
|
SavImg = input.ReadBytes();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 50: {
|
||||||
StateRaw = input.ReadBytes();
|
StateRaw = input.ReadBytes();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -11389,6 +11546,7 @@ namespace AxibugProtobuf {
|
|||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
public Protobuf_Mine_UpLoadGameSav_RESP(Protobuf_Mine_UpLoadGameSav_RESP other) : this() {
|
public Protobuf_Mine_UpLoadGameSav_RESP(Protobuf_Mine_UpLoadGameSav_RESP other) : this() {
|
||||||
romID_ = other.romID_;
|
romID_ = other.romID_;
|
||||||
|
savDataIdx_ = other.savDataIdx_;
|
||||||
uploadSevInfo_ = other.uploadSevInfo_ != null ? other.uploadSevInfo_.Clone() : null;
|
uploadSevInfo_ = other.uploadSevInfo_ != null ? other.uploadSevInfo_.Clone() : null;
|
||||||
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
|
||||||
}
|
}
|
||||||
@ -11412,8 +11570,22 @@ namespace AxibugProtobuf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Field number for the "SavDataIdx" field.</summary>
|
||||||
|
public const int SavDataIdxFieldNumber = 2;
|
||||||
|
private int savDataIdx_;
|
||||||
|
/// <summary>
|
||||||
|
///即时存档下标(其中第0个是自动存档位置)
|
||||||
|
/// </summary>
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
|
||||||
|
public int SavDataIdx {
|
||||||
|
get { return savDataIdx_; }
|
||||||
|
set {
|
||||||
|
savDataIdx_ = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Field number for the "UploadSevInfo" field.</summary>
|
/// <summary>Field number for the "UploadSevInfo" field.</summary>
|
||||||
public const int UploadSevInfoFieldNumber = 2;
|
public const int UploadSevInfoFieldNumber = 3;
|
||||||
private global::AxibugProtobuf.Protobuf_Mine_GameSavInfo uploadSevInfo_;
|
private global::AxibugProtobuf.Protobuf_Mine_GameSavInfo uploadSevInfo_;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///上传成功的存档详情
|
///上传成功的存档详情
|
||||||
@ -11440,6 +11612,7 @@ namespace AxibugProtobuf {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (RomID != other.RomID) return false;
|
if (RomID != other.RomID) return false;
|
||||||
|
if (SavDataIdx != other.SavDataIdx) return false;
|
||||||
if (!object.Equals(UploadSevInfo, other.UploadSevInfo)) return false;
|
if (!object.Equals(UploadSevInfo, other.UploadSevInfo)) return false;
|
||||||
return Equals(_unknownFields, other._unknownFields);
|
return Equals(_unknownFields, other._unknownFields);
|
||||||
}
|
}
|
||||||
@ -11448,6 +11621,7 @@ namespace AxibugProtobuf {
|
|||||||
public override int GetHashCode() {
|
public override int GetHashCode() {
|
||||||
int hash = 1;
|
int hash = 1;
|
||||||
if (RomID != 0) hash ^= RomID.GetHashCode();
|
if (RomID != 0) hash ^= RomID.GetHashCode();
|
||||||
|
if (SavDataIdx != 0) hash ^= SavDataIdx.GetHashCode();
|
||||||
if (uploadSevInfo_ != null) hash ^= UploadSevInfo.GetHashCode();
|
if (uploadSevInfo_ != null) hash ^= UploadSevInfo.GetHashCode();
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
hash ^= _unknownFields.GetHashCode();
|
hash ^= _unknownFields.GetHashCode();
|
||||||
@ -11469,8 +11643,12 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt32(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
output.WriteRawTag(18);
|
output.WriteRawTag(26);
|
||||||
output.WriteMessage(UploadSevInfo);
|
output.WriteMessage(UploadSevInfo);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11486,8 +11664,12 @@ namespace AxibugProtobuf {
|
|||||||
output.WriteRawTag(8);
|
output.WriteRawTag(8);
|
||||||
output.WriteInt32(RomID);
|
output.WriteInt32(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
output.WriteRawTag(16);
|
||||||
|
output.WriteInt32(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
output.WriteRawTag(18);
|
output.WriteRawTag(26);
|
||||||
output.WriteMessage(UploadSevInfo);
|
output.WriteMessage(UploadSevInfo);
|
||||||
}
|
}
|
||||||
if (_unknownFields != null) {
|
if (_unknownFields != null) {
|
||||||
@ -11502,6 +11684,9 @@ namespace AxibugProtobuf {
|
|||||||
if (RomID != 0) {
|
if (RomID != 0) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeInt32Size(RomID);
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(RomID);
|
||||||
}
|
}
|
||||||
|
if (SavDataIdx != 0) {
|
||||||
|
size += 1 + pb::CodedOutputStream.ComputeInt32Size(SavDataIdx);
|
||||||
|
}
|
||||||
if (uploadSevInfo_ != null) {
|
if (uploadSevInfo_ != null) {
|
||||||
size += 1 + pb::CodedOutputStream.ComputeMessageSize(UploadSevInfo);
|
size += 1 + pb::CodedOutputStream.ComputeMessageSize(UploadSevInfo);
|
||||||
}
|
}
|
||||||
@ -11519,6 +11704,9 @@ namespace AxibugProtobuf {
|
|||||||
if (other.RomID != 0) {
|
if (other.RomID != 0) {
|
||||||
RomID = other.RomID;
|
RomID = other.RomID;
|
||||||
}
|
}
|
||||||
|
if (other.SavDataIdx != 0) {
|
||||||
|
SavDataIdx = other.SavDataIdx;
|
||||||
|
}
|
||||||
if (other.uploadSevInfo_ != null) {
|
if (other.uploadSevInfo_ != null) {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
@ -11543,7 +11731,11 @@ namespace AxibugProtobuf {
|
|||||||
RomID = input.ReadInt32();
|
RomID = input.ReadInt32();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 18: {
|
case 16: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 26: {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
}
|
}
|
||||||
@ -11568,7 +11760,11 @@ namespace AxibugProtobuf {
|
|||||||
RomID = input.ReadInt32();
|
RomID = input.ReadInt32();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 18: {
|
case 16: {
|
||||||
|
SavDataIdx = input.ReadInt32();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 26: {
|
||||||
if (uploadSevInfo_ == null) {
|
if (uploadSevInfo_ == null) {
|
||||||
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
UploadSevInfo = new global::AxibugProtobuf.Protobuf_Mine_GameSavInfo();
|
||||||
}
|
}
|
||||||
|
@ -466,14 +466,16 @@ message Protobuf_Mine_GetGameSavList_RESP
|
|||||||
message Protobuf_Mine_GameSavInfo
|
message Protobuf_Mine_GameSavInfo
|
||||||
{
|
{
|
||||||
bool bHadSaveData = 1;//是否有存档
|
bool bHadSaveData = 1;//是否有存档
|
||||||
int32 SavDataIdx = 2;//即时存档下标(其中第0个是自动存档位置)
|
int64 SavID = 2;//即时存档唯一ID(用于今后分享)
|
||||||
int32 RomID = 3;
|
int64 uid = 3;//所属用户UID(用于今后分享)
|
||||||
RomPlatformType GamePlatformType = 4;
|
int32 SavDataIdx = 4;//即时存档下标(其中第0个是自动存档位置)
|
||||||
string SavDate = 5;//存档时间
|
int32 RomID = 5;
|
||||||
string SavName = 6;
|
RomPlatformType GamePlatformType = 6;
|
||||||
string Note = 7;//备注
|
string SavDate = 7;//存档时间
|
||||||
string SavImgUrl = 8;//即时存档截图Url
|
string SavName = 8;
|
||||||
string SavUrl = 9;//即时存档下载Url
|
string Note = 9;//备注
|
||||||
|
string SavImgUrl = 10;//即时存档截图Url
|
||||||
|
string SavUrl = 11;//即时存档下载Url
|
||||||
}
|
}
|
||||||
|
|
||||||
message Protobuf_Mine_DelGameSav
|
message Protobuf_Mine_DelGameSav
|
||||||
@ -492,12 +494,15 @@ message Protobuf_Mine_UpLoadGameSav
|
|||||||
{
|
{
|
||||||
int32 RomID = 1;//RomID
|
int32 RomID = 1;//RomID
|
||||||
int32 SavDataIdx = 2;//即时存档下标(其中第0个是自动存档位置)
|
int32 SavDataIdx = 2;//即时存档下标(其中第0个是自动存档位置)
|
||||||
bytes SavImg = 3;//即时存档截图模拟器原生数据
|
string Name = 3;//存档名(留空时,服务器自动)
|
||||||
bytes StateRaw = 4;//即时存档byte数据
|
string Note = 4;//备注(留空时,服务器自动)
|
||||||
|
bytes SavImg = 5;//即时存档截图模拟器原生数据
|
||||||
|
bytes StateRaw = 6;//即时存档byte数据
|
||||||
}
|
}
|
||||||
|
|
||||||
message Protobuf_Mine_UpLoadGameSav_RESP
|
message Protobuf_Mine_UpLoadGameSav_RESP
|
||||||
{
|
{
|
||||||
int32 RomID = 1;//RomID
|
int32 RomID = 1;//RomID
|
||||||
Protobuf_Mine_GameSavInfo UploadSevInfo = 2;//上传成功的存档详情
|
int32 SavDataIdx = 2;//即时存档下标(其中第0个是自动存档位置)
|
||||||
|
Protobuf_Mine_GameSavInfo UploadSevInfo = 3;//上传成功的存档详情
|
||||||
}
|
}
|
@ -118,6 +118,8 @@ Mapper支持越多,通俗讲就是支持更多卡带。
|
|||||||
|
|
||||||
后续补充二次,修正 Mapper163 175 176 178 192 199 参照叶枫VirtuaNESex_src(20191105)
|
后续补充二次,修正 Mapper163 175 176 178 192 199 参照叶枫VirtuaNESex_src(20191105)
|
||||||
|
|
||||||
|
后续补充第三次,修正Mapper 191 支持madcell大字汉化的《热血时代剧》《热血物语》《快打旋风》《双截龙3》 (参照VirtuaNES Plus 翻译代码)
|
||||||
|
|
||||||
|
|
||||||
### 街机模拟器核心 CPS1 / NEOGEO / PGM / Taito(b) / Tehkan / or other MAME platform
|
### 街机模拟器核心 CPS1 / NEOGEO / PGM / Taito(b) / Tehkan / or other MAME platform
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user