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); } }
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; }
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); }
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); }