备份CatanBuilding瘦身独立工程
This commit is contained in:
@@ -0,0 +1,426 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using com.fpnn.livedata;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using com.fpnn.proto;
|
||||
|
||||
namespace com.fpnn.rtm
|
||||
{
|
||||
public partial class RTMClient
|
||||
{
|
||||
//===========================[ IMLIB_AddFriend ]=========================//
|
||||
public bool IMLIB_AddFriend(DoneDelegate callback, long uid, string extra = null, string attrs = null, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_addfriend");
|
||||
quest.Param("ouid", uid);
|
||||
if (extra != null)
|
||||
quest.Param("extra", extra);
|
||||
if (attrs != null)
|
||||
quest.Param("attrs", attrs);
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
callback(errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_AddFriend(long uid, string extra = null, string attrs = null, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_addfriend");
|
||||
quest.Param("ouid", uid);
|
||||
if (extra != null)
|
||||
quest.Param("extra", extra);
|
||||
if (attrs != null)
|
||||
quest.Param("attrs", attrs);
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
return answer.ErrorCode();
|
||||
}
|
||||
|
||||
//===========================[ IMLIB_AckAddFriend ]=========================//
|
||||
public bool IMLIB_AckAddFriend(DoneDelegate callback, long uid, bool agree, string attrs = null, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_ackaddfriend");
|
||||
quest.Param("ouid", uid);
|
||||
quest.Param("agree", agree);
|
||||
if (attrs != null)
|
||||
quest.Param("attrs", attrs);
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
callback(errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_AckAddFriend(long uid, bool agree, string attrs = null, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_ackaddfriend");
|
||||
quest.Param("ouid", uid);
|
||||
quest.Param("agree", agree);
|
||||
if (attrs != null)
|
||||
quest.Param("attrs", attrs);
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
return answer.ErrorCode();
|
||||
}
|
||||
|
||||
//===========================[ IMLIB_SetFriendAlias ]=========================//
|
||||
public bool IMLIB_SetFriendAlias(DoneDelegate callback, long uid, string alias, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_setfriendalias");
|
||||
quest.Param("target_uid", uid);
|
||||
quest.Param("alias", alias);
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
callback(errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_SetFriendAlias(long uid, string alias, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_setfriendalias");
|
||||
quest.Param("target_uid", uid);
|
||||
quest.Param("alias", alias);
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
return answer.ErrorCode();
|
||||
}
|
||||
|
||||
//===========================[ IMLIB_GetFriendAlias ]=========================//
|
||||
public bool IMLIB_GetFriendAlias(Action<string, int> callback, long uid, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_getfriendalias");
|
||||
quest.Param("target_uid", uid);
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
string val = null;
|
||||
if (errorCode == fpnn.ErrorCode.FPNN_EC_OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
val = answer.Want<string>("val");
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
errorCode = fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
callback(val, errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_GetFriendAlias(out string alias, long uid, int timeout = 0)
|
||||
{
|
||||
alias = null;
|
||||
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_getfriendalias");
|
||||
quest.Param("target_uid", uid);
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
|
||||
if (answer.IsException())
|
||||
return answer.ErrorCode();
|
||||
|
||||
try
|
||||
{
|
||||
alias = answer.Want<string>("val");
|
||||
return fpnn.ErrorCode.FPNN_EC_OK;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
|
||||
//===========================[ IMLIB_GetFriendApplyList ]=========================//
|
||||
public bool IMLIB_GetFriendApplyList(Action<List<IMLIB_FriendApply>, int> callback, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_getfriendapplylist");
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
List<IMLIB_FriendApply> applyList = new List<IMLIB_FriendApply>();
|
||||
if (errorCode == fpnn.ErrorCode.FPNN_EC_OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<long> fromUid = GetLongList(answer, "fromUid");
|
||||
List<int> status = GetIntList(answer, "status");
|
||||
List<string> grantExtra = GetStringList(answer, "grantExtra");
|
||||
List<long> createTime = GetLongList(answer, "createTime");
|
||||
List<string> attrs = GetStringList(answer, "attrs");
|
||||
for (int i = 0; i < fromUid.Count && i < status.Count && i < grantExtra.Count && i < createTime.Count && i < attrs.Count; ++i)
|
||||
{
|
||||
IMLIB_FriendApply friendApply = new IMLIB_FriendApply();
|
||||
friendApply.uid = fromUid[i];
|
||||
friendApply.status = status[i];
|
||||
friendApply.extra = grantExtra[i];
|
||||
friendApply.createTime = createTime[i];
|
||||
friendApply.attrs = attrs[i];
|
||||
applyList.Add(friendApply);
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
errorCode = fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
callback(applyList, errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_GetFriendApplyList(out List<IMLIB_FriendApply> applyList, int timeout = 0)
|
||||
{
|
||||
applyList = new List<IMLIB_FriendApply>();
|
||||
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_getfriendapplylist");
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
|
||||
if (answer.IsException())
|
||||
return answer.ErrorCode();
|
||||
|
||||
try
|
||||
{
|
||||
List<long> fromUid = GetLongList(answer, "fromUid");
|
||||
List<int> status = GetIntList(answer, "status");
|
||||
List<string> grantExtra = GetStringList(answer, "grantExtra");
|
||||
List<long> createTime = GetLongList(answer, "createTime");
|
||||
List<string> attrs = GetStringList(answer, "attrs");
|
||||
for (int i = 0; i < fromUid.Count && i < status.Count && i < grantExtra.Count && i < createTime.Count && i < attrs.Count; ++i)
|
||||
{
|
||||
IMLIB_FriendApply friendApply = new IMLIB_FriendApply();
|
||||
friendApply.uid = fromUid[i];
|
||||
friendApply.status = status[i];
|
||||
friendApply.extra = grantExtra[i];
|
||||
friendApply.createTime = createTime[i];
|
||||
friendApply.attrs = attrs[i];
|
||||
applyList.Add(friendApply);
|
||||
}
|
||||
return fpnn.ErrorCode.FPNN_EC_OK;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
|
||||
//===========================[ IMLIB_GetFriendRequestList ]=========================//
|
||||
public bool IMLIB_GetFriendRequestList(Action<List<IMLIB_FriendRequest>, int> callback, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_getfriendrequestlist");
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
List<IMLIB_FriendRequest> requestList = new List<IMLIB_FriendRequest>();
|
||||
if (errorCode == fpnn.ErrorCode.FPNN_EC_OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<long> targetXid = GetLongList(answer, "targetXid");
|
||||
List<long> createTime = GetLongList(answer, "createTime");
|
||||
List<string> attrs = GetStringList(answer, "attrs");
|
||||
for (int i = 0; i < targetXid.Count && i < createTime.Count && i < attrs.Count; ++i)
|
||||
{
|
||||
IMLIB_FriendRequest friendRequest = new IMLIB_FriendRequest();
|
||||
friendRequest.uid = targetXid[i];
|
||||
friendRequest.createTime = createTime[i];
|
||||
friendRequest.attrs = attrs[i];
|
||||
requestList.Add(friendRequest);
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
errorCode = fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
callback(requestList, errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_GetFriendRequestList(out List<IMLIB_FriendRequest> requestList, int timeout = 0)
|
||||
{
|
||||
requestList = new List<IMLIB_FriendRequest>();
|
||||
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_getfriendrequestlist");
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
|
||||
if (answer.IsException())
|
||||
return answer.ErrorCode();
|
||||
|
||||
try
|
||||
{
|
||||
List<long> targetXid = GetLongList(answer, "targetXid");
|
||||
List<long> createTime = GetLongList(answer, "createTime");
|
||||
List<string> attrs = GetStringList(answer, "attrs");
|
||||
for (int i = 0; i < targetXid.Count && i < createTime.Count && i < attrs.Count; ++i)
|
||||
{
|
||||
IMLIB_FriendRequest friendRequest = new IMLIB_FriendRequest();
|
||||
friendRequest.uid = targetXid[i];
|
||||
friendRequest.createTime = createTime[i];
|
||||
friendRequest.attrs = attrs[i];
|
||||
requestList.Add(friendRequest);
|
||||
}
|
||||
return fpnn.ErrorCode.FPNN_EC_OK;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4a87a81a17c23f74280b3a827382bc60
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b45f71c7818dcae409fe51a67379e19c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,208 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using com.fpnn.livedata;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using com.fpnn.proto;
|
||||
|
||||
namespace com.fpnn.rtm
|
||||
{
|
||||
public partial class RTMClient
|
||||
{
|
||||
//===========================[ IMLIB_GetUserInfos ]=========================//
|
||||
public bool IMLIB_GetUserInfos(Action<List<IMLIB_UserInfo>, int> callback, HashSet<long> uids, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_getuserinfos");
|
||||
quest.Param("uids", uids);
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
|
||||
List<IMLIB_UserInfo> infos = null;
|
||||
|
||||
if (errorCode == fpnn.ErrorCode.FPNN_EC_OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
infos = new List<IMLIB_UserInfo>();
|
||||
List<long> uids = GetLongList(answer, "uid");
|
||||
List<string> names = GetStringList(answer, "name");
|
||||
List<string> portraitUrls = GetStringList(answer, "portraitUrl");
|
||||
List<string> profiles = GetStringList(answer, "profile");
|
||||
List<string> attrs = GetStringList(answer, "attrs");
|
||||
List<int> applyGrants = GetIntList(answer, "applyGrant");
|
||||
for (int i = 0; i < uids.Count && i < names.Count && i < portraitUrls.Count && i < profiles.Count && i < attrs.Count && i < applyGrants.Count; ++i)
|
||||
{
|
||||
IMLIB_UserInfo info = new IMLIB_UserInfo();
|
||||
info.uid = uids[i];
|
||||
info.name = names[i];
|
||||
info.portraitUrl = portraitUrls[i];
|
||||
info.profile = profiles[i];
|
||||
info.attrs = attrs[i];
|
||||
info.applyGrant = (IMLIB_ApplyGrant)applyGrants[i];
|
||||
infos.Add(info);
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
errorCode = fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
callback(infos, errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_GetUserInfos(out List<IMLIB_UserInfo> infos, HashSet<long> uids, int timeout = 0)
|
||||
{
|
||||
infos = null;
|
||||
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_getuserinfos");
|
||||
quest.Param("uids", uids);
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
|
||||
if (answer.IsException())
|
||||
return answer.ErrorCode();
|
||||
|
||||
try
|
||||
{
|
||||
infos = new List<IMLIB_UserInfo>();
|
||||
List<long> uid = GetLongList(answer, "uid");
|
||||
List<string> names = GetStringList(answer, "name");
|
||||
List<string> portraitUrls = GetStringList(answer, "portraitUrl");
|
||||
List<string> profiles = GetStringList(answer, "profile");
|
||||
List<string> attrs = GetStringList(answer, "attrs");
|
||||
List<int> applyGrants = GetIntList(answer, "applyGrant");
|
||||
for (int i = 0; i < uid.Count && i < names.Count && i < portraitUrls.Count && i < profiles.Count && i < attrs.Count && i < applyGrants.Count; ++i)
|
||||
{
|
||||
IMLIB_UserInfo info = new IMLIB_UserInfo();
|
||||
info.uid = uid[i];
|
||||
info.name = names[i];
|
||||
info.portraitUrl = portraitUrls[i];
|
||||
info.profile = profiles[i];
|
||||
info.attrs = attrs[i];
|
||||
info.applyGrant = (IMLIB_ApplyGrant)applyGrants[i];
|
||||
infos.Add(info);
|
||||
}
|
||||
return fpnn.ErrorCode.FPNN_EC_OK;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
|
||||
//===========================[ IMLIB_GetUserInfo ]=========================//
|
||||
public bool IMLIB_GetUserInfo(Action<IMLIB_UserInfo, int> callback, long uid, int timeout = 0)
|
||||
{
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
{
|
||||
if (RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
Quest quest = new Quest("imclient_getuserinfo");
|
||||
quest.Param("other_uid", uid);
|
||||
|
||||
bool asyncStarted = client.SendQuest(quest, (Answer answer, int errorCode) =>
|
||||
{
|
||||
IMLIB_UserInfo info = null;
|
||||
|
||||
if (errorCode == fpnn.ErrorCode.FPNN_EC_OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
info = new IMLIB_UserInfo();
|
||||
info.uid = uid;
|
||||
info.name = answer.Want<string>("name");
|
||||
info.portraitUrl = answer.Want<string>("portraitUrl");
|
||||
info.profile = answer.Want<string>("profile");
|
||||
info.attrs = answer.Want<string>("attrs");
|
||||
info.applyGrant = (IMLIB_ApplyGrant)(answer.Want<int>("applyGrant"));
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
errorCode = fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
callback(info, errorCode);
|
||||
}, timeout);
|
||||
|
||||
|
||||
if (!asyncStarted && RTMConfig.triggerCallbackIfAsyncMethodReturnFalse)
|
||||
ClientEngine.RunTask(() =>
|
||||
{
|
||||
callback(null, fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION);
|
||||
});
|
||||
|
||||
return asyncStarted;
|
||||
}
|
||||
|
||||
public int IMLIB_GetUserInfo(out IMLIB_UserInfo info, long uid, int timeout = 0)
|
||||
{
|
||||
info = null;
|
||||
|
||||
TCPClient client = GetCoreClient();
|
||||
if (client == null)
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_CONNECTION;
|
||||
|
||||
Quest quest = new Quest("imclient_getuserinfo");
|
||||
quest.Param("other_uid", uid);
|
||||
|
||||
Answer answer = client.SendQuest(quest, timeout);
|
||||
|
||||
if (answer.IsException())
|
||||
return answer.ErrorCode();
|
||||
|
||||
try
|
||||
{
|
||||
info = new IMLIB_UserInfo();
|
||||
info.uid = uid;
|
||||
info.name = answer.Want<string>("name");
|
||||
info.portraitUrl = answer.Want<string>("portraitUrl");
|
||||
info.profile = answer.Want<string>("profile");
|
||||
info.attrs = answer.Want<string>("attrs");
|
||||
info.applyGrant = (IMLIB_ApplyGrant)(answer.Want<int>("applyGrant"));
|
||||
return fpnn.ErrorCode.FPNN_EC_OK;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return fpnn.ErrorCode.FPNN_EC_CORE_INVALID_PACKAGE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a2032554247f960439c5db97af5c0dec
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: df886620a86dd2a468d2893ebff298fb
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user