private static void SendVoice(ulong user, BitReaderWriter data)
 {
     data.ReadData(Recievebuffer, false);
     if (user != Sync.MyId)
     {
         MyMultiplayer.RaiseStaticEvent(x => SendVoicePlayer, user, (BitReaderWriter)Recievebuffer, new EndpointId(user));
     }
     else
     {
         MyVoiceChatSessionComponent.Static.VoiceMessageReceived((ulong)Recievebuffer.SenderUserId);
     }
 }
Exemplo n.º 2
0
        private void TerminalValueChanged_Implementation(byte propertyIndex, BitReaderWriter reader)
        {
            var state  = MyEventContext.Current.ClientState;
            var client = state.GetClient();

            if (!HasRights(client))
            {
                return;
            }

            bool isValid = reader.ReadData(m_properties[propertyIndex], true);

            // Validation succeded, mark property as clean
            m_clientData[state].DirtyProperties[propertyIndex] = !isValid;
        }
Exemplo n.º 3
0
        public void ProcessRpc(BitReaderWriter reader)
        {
            reader.ReadData(m_sender, false);
            MyPacket packet;

            packet.Data   = m_sender.ReceiveStream.Data;
            packet.Sender = MyEventContext.Current.Sender;
            if (packet.Sender.IsNull)
            {
                packet.Sender = new EndpointId(Sync.MyId);
            }
            packet.Timestamp     = TimeSpan.Zero;
            packet.PayloadOffset = 0;
            packet.PayloadLength = (int)m_sender.ReceiveStream.Position;
            TransportLayer.HandleOldGameEvent(packet);
        }
Exemplo n.º 4
0
        private void SyncPropertyChanged_Implementation(byte propertyIndex, BitReaderWriter reader)
        {
            if (!GlobalValidate(MyEventContext.Current))
            {
                return;
            }

            if (propertyIndex >= m_properties.Count) // Client data validation
            {
                return;
            }

            bool isValid = reader.ReadData(m_properties[propertyIndex], true);

            // Validation succeeded, mark property as clean
            if (MyEventContext.Current.ClientState != null && m_clientData.ContainsKey(MyEventContext.Current.ClientState.EndpointId))
            {
                m_clientData[MyEventContext.Current.ClientState.EndpointId].DirtyProperties[propertyIndex] = !isValid;
            }
        }
 private static void SendVoicePlayer(ulong user, BitReaderWriter data)
 {
     data.ReadData(Recievebuffer, false);
     MyVoiceChatSessionComponent.Static.VoiceMessageReceived((ulong)Recievebuffer.SenderUserId);
 }