Exemple #1
0
    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;
        }
    }