private void on(MatchSuccess message) { Debug.Log("MatchSuccess received, OpponentId " + message.OpponentUserId); matchInfoDisplay.TickRate = message.TickRate; matchInfoDisplay.UserId = UserData.Instance.CurrentPlayerId.ToString(); matchInfoDisplay.OpponentId = message.OpponentUserId.ToString(); matchInfoDisplay.GameState = "Playing"; }
public static Offset <MatchSuccess> CreateMatchSuccess(FlatBufferBuilder builder, short opcode = 6, StringOffset registeredMatchIdOffset = default(StringOffset), int tick_rate = 0, long opponentUserId = 0, StringOffset serverVersionOffset = default(StringOffset), short serverVersionCode = 0) { builder.StartTable(6); MatchSuccess.AddOpponentUserId(builder, opponentUserId); MatchSuccess.AddServerVersion(builder, serverVersionOffset); MatchSuccess.AddTickRate(builder, tick_rate); MatchSuccess.AddRegisteredMatchId(builder, registeredMatchIdOffset); MatchSuccess.AddServerVersionCode(builder, serverVersionCode); MatchSuccess.AddOpcode(builder, opcode); return(MatchSuccess.EndMatchSuccess(builder)); }
public static MatchSuccess GetRootAsMatchSuccess(ByteBuffer _bb, MatchSuccess obj) { return(obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
private void Update() { if (doAbort) { doAbort = false; AbortGame(); } if (didConnectSuccessfully) { didConnectSuccessfully = false; OnConnected(); } if (doAttemptConnect) { doAttemptConnect = false; OnAttemptingReconnect(); } if (!client.IsConnected && tickCount > 0 && !UserData.Instance.IsGameOver) { matchInfoDisplay.GameState = "Disconnected"; } // Process all packets that have been received by the server thus far byte[] data; while (client.GetNextPacket(out data)) { if (UserData.Instance.IsGameOver) { return; } var packet = PacketFactory.BytesToPacket(data); var byteBuffer = new ByteBuffer(data); // Uncomment for logs containing which packet type you receive // Debug.Log("SyncGameController: Received packet: " + (Opcode)packet.Opcode); switch ((Opcode)packet.Opcode) { case Opcode.MatchSuccess: client.ResetReadTimer(); on(MatchSuccess.GetRootAsMatchSuccess(byteBuffer)); client.SetReadTimeout(2000); break; case Opcode.GameState: on(GameState.GetRootAsGameState(byteBuffer)); break; case Opcode.MatchOver: on(MatchOver.GetRootAsMatchOver(byteBuffer)); break; case Opcode.OpponentConnectionStatus: on(OpponentConnectionStatus.GetRootAsOpponentConnectionStatus(byteBuffer)); break; case Opcode.PlayerReconnected: on(PlayerReconnected.GetRootAsPlayerReconnected(byteBuffer)); break; case Opcode.OpponentPaused: on(OpponentPaused.GetRootAsOpponentPaused(byteBuffer)); break; case Opcode.OpponentResumed: on(OpponentResumed.GetRootAsOpponentResumed(byteBuffer)); break; case Opcode.Chat: on(Chat.GetRootAsChat(byteBuffer)); break; case Opcode.KeepAlive: break; default: Debug.Log("SyncGameController: Received packet with unimplemented/unsupported authcode: " + packet.Opcode); break; } } }