public virtual void ResponseMatch(byte[] buffer) { try { ProtoGateServer.Match responseMatch = ProtoHelper.ToProto <ProtoGateServer.Match>(buffer); mErrorCode = responseMatch.err; if (mErrorCode == ProtoGateServer.ERROR_CODE.ERR_NONE) { if (onResponseMatch != null) { onResponseMatch(responseMatch.ip, responseMatch.port, responseMatch.gameid); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }
public virtual void ResponseLogin(byte[] buffer) { try { ProtoGameServer.Login responseLogin = ProtoHelper.ToProto <ProtoGameServer.Login>(buffer); mErrorCode = responseLogin.err; if (mErrorCode == ProtoGameServer.ERROR_CODE.ERR_NONE) { mGUID = responseLogin.guid; mFlags = (uint)ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_LOGIN; if (onResponseLogin != null) { onResponseLogin(); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }
public virtual void ResponseCreateGame(byte[] buffer) { try { ProtoGameServer.CreateGame responseCreateGame = ProtoHelper.ToProto <ProtoGameServer.CreateGame>(buffer); mErrorCode = responseCreateGame.err; if (mErrorCode == ProtoGameServer.ERROR_CODE.ERR_NONE) { mGameID = responseCreateGame.gameid; mHostGUID = responseCreateGame.host; DisableFlag(ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_READY); DisableFlag(ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_GAMING); if (onResponseCreateGame != null) { onResponseCreateGame(); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }
public virtual void ResponseListGame(byte[] buffer) { try { ProtoGameServer.ListGame responseListGame = ProtoHelper.ToProto <ProtoGameServer.ListGame>(buffer); mErrorCode = responseListGame.err; if (mErrorCode == ProtoGameServer.ERROR_CODE.ERR_NONE) { if (onResponseListGame != null) { onResponseListGame(responseListGame); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }
public virtual void ResponseLogin(byte[] buffer) { try { ProtoGateServer.Login responseLogin = ProtoHelper.ToProto <ProtoGateServer.Login>(buffer); mErrorCode = responseLogin.err; if (mErrorCode == ProtoGateServer.ERROR_CODE.ERR_NONE) { mGUID = responseLogin.guid; mbLogin = true; if (onResponseLogin != null) { onResponseLogin(); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }
public virtual void ResponseFlags(byte[] buffer) { try { ProtoGameServer.Flags responseFlags = ProtoHelper.ToProto <ProtoGameServer.Flags>(buffer); mFlags = (mFlags & 0xffff0000) | (responseFlags.flags & 0x0000ffff); } catch (Exception) { } }
public virtual void ResponseHeart(byte[] buffer) { try { ProtoGameServer.Heart responseHeart = ProtoHelper.ToProto <ProtoGameServer.Heart>(buffer); int timestamp = (int)(DateTime.Now.Ticks / 10000); mPing = timestamp - responseHeart.timestamp; } catch (Exception) { } }
public virtual void ResponseSendToPlayer(byte[] buffer) { try { ProtoGameServer.SendToPlayer responseSendToPlayer = ProtoHelper.ToProto <ProtoGameServer.SendToPlayer>(buffer); if (onResponseSendToPlayer != null) { onResponseSendToPlayer(responseSendToPlayer.size, responseSendToPlayer.data); } } catch (Exception) { } }
public virtual void ResponseCancelMatch(byte[] buffer) { try { ProtoGateServer.CancelMatch responseCancelMatch = ProtoHelper.ToProto <ProtoGateServer.CancelMatch>(buffer); if (onResponseCancelMatch != null) { onResponseCancelMatch(); } } catch (Exception) { } }
public virtual void ResponseExitGame(byte[] buffer) { try { ProtoGameServer.ExitGame responseExitGame = ProtoHelper.ToProto <ProtoGameServer.ExitGame>(buffer); mErrorCode = responseExitGame.err; if (mErrorCode == ProtoGameServer.ERROR_CODE.ERR_NONE) { if (mGUID == responseExitGame.guid) { mPlayers.Clear(); mGameID = 0xcccccccc; mHostGUID = 0xcccccccc; DisableFlag(ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_READY); DisableFlag(ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_GAMING); } else { mHostGUID = responseExitGame.host; int index = 0; while ((index = mPlayers.IndexOf(responseExitGame.guid)) >= 0) { mPlayers.RemoveAt(index); } } if (onResponseExitGame != null) { onResponseExitGame(responseExitGame.guid); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }
public virtual void ResponseEnterGame(byte[] buffer) { try { ProtoGameServer.EnterGame responseEnterGame = ProtoHelper.ToProto <ProtoGameServer.EnterGame>(buffer); mErrorCode = responseEnterGame.err; if (mErrorCode == ProtoGameServer.ERROR_CODE.ERR_NONE) { if (mGUID == responseEnterGame.guid) { mGameID = responseEnterGame.gameid; mHostGUID = responseEnterGame.host; DisableFlag(ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_READY); DisableFlag(ProtoGameServer.FLAGS_CODE.PLAYER_FLAGS_GAMING); } else { if (mPlayers.IndexOf(responseEnterGame.guid) < 0) { mPlayers.Add(responseEnterGame.guid); } } if (onResposneEnterGame != null) { onResposneEnterGame(responseEnterGame.guid); } } else { if (onResponseError != null) { onResponseError(mErrorCode); } } } catch (Exception) { } }