private void ReceiveAllSensorInfo(MessageReader reader)
        {
            foreach (NuiSensor sensor in _sensors.Values)
            {
                sensor.ChangeStatus(SensorState.UNKNOWN);
                if (OnSensorDisconnected != null)
                {
                    OnSensorDisconnected.Invoke(sensor);
                }
            }
            _sensors.Clear();

            int sensorCount = reader.ReadInt();

            for (int i = 0; i < sensorCount; i++)
            {
                NuiSensor sensor = MakeSensor(reader);

                sensor.ChangeStatus(SensorState.OPENED);

                if (OnSensorConnected != null)
                {
                    OnSensorConnected.Invoke(sensor);
                }

                _sensors.Add(sensor.Id, sensor);
            }
        }
        private void ReceiveChangedSensorInfo(MessageReader reader)
        {
            int sensorId = reader.ReadInt();

            if (_sensors.ContainsKey(sensorId))
            {
                _sensors[sensorId].ChangeStatus((SensorState)reader.ReadInt());
                if (OnSensorDisconnected != null)
                {
                    OnSensorDisconnected.Invoke(_sensors[sensorId]);
                }
                _sensors.Remove(sensorId);
            }
        }