Exemplo n.º 1
0
        public void AddToMessage(NetOutgoingMessage msg)
        {
            msg.Write(playerName);
            msg.Write(playerId);

            msg.Write(playerNameColor.r);
            msg.Write(playerNameColor.g);
            msg.Write(playerNameColor.b);

            msg.Write((byte)playerState);

            msg.Write(fullBodyTracking);
            msg.WriteVariableUInt32(playerScore);
            msg.WriteVariableUInt32(playerCutBlocks);
            msg.WriteVariableUInt32(playerComboBlocks);
            msg.WriteVariableUInt32(playerTotalBlocks);
            msg.WritePadBits();
            msg.Write(playerEnergy);
            msg.Write(playerProgress);

            if (playerLevelOptions == null)
            {
                new LevelOptionsInfo(BeatmapDifficulty.Hard, GameplayModifiers.defaultModifiers, "Standard").AddToMessage(msg);
            }
            else
            {
                playerLevelOptions.AddToMessage(msg);
            }

            rightHandPos.AddToMessage(msg);
            leftHandPos.AddToMessage(msg);
            headPos.AddToMessage(msg);

            rightHandRot.AddToMessage(msg);
            leftHandRot.AddToMessage(msg);
            headRot.AddToMessage(msg);

            if (fullBodyTracking)
            {
                pelvisPos.AddToMessage(msg);
                leftLegPos.AddToMessage(msg);
                rightLegPos.AddToMessage(msg);

                pelvisRot.AddToMessage(msg);
                leftLegRot.AddToMessage(msg);
                rightLegRot.AddToMessage(msg);
            }

            msg.Write(HexConverter.ConvertHexToBytesX(avatarHash));

            msg.Write((byte)hitsLastUpdate.Count);

            for (int i = 0; i < (byte)hitsLastUpdate.Count; i++)
            {
                hitsLastUpdate[i].AddToMessage(msg);
            }

            hitsLastUpdate.Clear();
        }
        public void AddToMessage(NetOutgoingMessage msg)
        {
            msg.Write(playerName);
            msg.Write(playerId);

            msg.Write(playerNameColor.r);
            msg.Write(playerNameColor.g);
            msg.Write(playerNameColor.b);

            msg.Write((byte)playerState);

            msg.Write(fullBodyTracking);
            msg.WriteVariableUInt32(playerScore);
            msg.WriteVariableUInt32(playerCutBlocks);
            msg.WriteVariableUInt32(playerComboBlocks);
            msg.WriteVariableUInt32(playerTotalBlocks);
            msg.WritePadBits();
            msg.Write(playerEnergy);
            msg.Write(playerProgress);

            rightHandPos.AddToMessage(msg);
            leftHandPos.AddToMessage(msg);
            headPos.AddToMessage(msg);

            rightHandRot.AddToMessage(msg);
            leftHandRot.AddToMessage(msg);
            headRot.AddToMessage(msg);

            if (fullBodyTracking)
            {
                Vector3.zero.AddToMessage(msg);        //Pelvis Pos
                Vector3.zero.AddToMessage(msg);        //Left Leg Pos
                Vector3.zero.AddToMessage(msg);        //Right Leg Pos

                Quaternion.identity.AddToMessage(msg); //Pelvis Rot
                Quaternion.identity.AddToMessage(msg); //Left Leg Rot
                Quaternion.identity.AddToMessage(msg); //Left Leg Pos
            }

            msg.Write(HexConverter.ConvertHexToBytesX(avatarHash));

            msg.Write((byte)hitsLastUpdate.Count);

            for (int i = 0; i < (byte)hitsLastUpdate.Count; i++)
            {
                hitsLastUpdate[i].AddToMessage(msg);
            }

            hitsLastUpdate.Clear();
        }
Exemplo n.º 3
0
        public void AddToMessage(NetOutgoingMessage msg)
        {
            msg.Write(playerNameColor.r);
            msg.Write(playerNameColor.g);
            msg.Write(playerNameColor.b);

            msg.Write((byte)playerState);

            msg.Write(fullBodyTracking ? (byte)1 : (byte)0);
            msg.WriteVariableUInt32(playerScore);
            msg.WriteVariableUInt32(playerCutBlocks);
            msg.WriteVariableUInt32(playerComboBlocks);
            msg.WriteVariableUInt32(playerTotalBlocks);
            msg.Write(playerEnergy);
            msg.Write(playerProgress);

            if (playerLevelOptions == default)
            {
                new LevelOptionsInfo(BeatmapDifficulty.Hard, GameplayModifiers.defaultModifiers, "Standard").AddToMessage(msg);
            }
            else
            {
                playerLevelOptions.AddToMessage(msg);
            }

            playerFlags.AddToMessage(msg);

            rightHandPos.AddToMessage(msg);
            leftHandPos.AddToMessage(msg);
            headPos.AddToMessage(msg);

            rightHandRot.AddToMessage(msg);
            leftHandRot.AddToMessage(msg);
            headRot.AddToMessage(msg);

            if (fullBodyTracking)
            {
                pelvisPos.AddToMessage(msg);
                leftLegPos.AddToMessage(msg);
                rightLegPos.AddToMessage(msg);

                pelvisRot.AddToMessage(msg);
                leftLegRot.AddToMessage(msg);
                rightLegRot.AddToMessage(msg);
            }
        }