private void OnPacket(RTPacket rtPacket) { if (packetsProcessor == null) { Debug.LogErrorFormat("[ERROR] Missing PacketsProcessor component"); return; } OpCodes opCodeType = (OpCodes)rtPacket.OpCode; switch (opCodeType) { case OpCodes.PlayerTransform: packetsProcessor.UpdateOtherPlayerTransforms(rtPacket); break; case OpCodes.PlayerShoot: packetsProcessor.OtherPlayerShoot(rtPacket); break; case OpCodes.UpdatePlayerShoots: packetsProcessor.UpdateOpponentShoots(rtPacket); break; case OpCodes.RegisterShootHit: packetsProcessor.RegisterOtherPlayerHit(rtPacket); break; case OpCodes.AllPlayersConnected: AllPlayersConnected(); break; case OpCodes.TimeStamp: RTClock.Instance.ProcessTimeStampPacket(rtPacket); break; case OpCodes.Countdown: if (RTClock.Instance != null) { RTClock.Instance.SyncClock(rtPacket); } break; default: Debug.LogErrorFormat("[ERROR] Unrecognized OpCode: {0} ", rtPacket.OpCode); break; } }