private void UnTrackDevice(OxStationController device, string prefabId)
 {
     QuickLogger.Debug($"Removing device: {prefabId} || Device: {device}");
     TrackedDevices.Remove(prefabId);
     device.HealthManager.OnDamaged  -= OnDeviceDamaged;
     device.HealthManager.OnRepaired -= OnDeviceRepaired;
 }
        private void AlertedDeviceDestroyed(OxStationController obj)
        {
            var prefabId = obj?.GetPrefabIDString();

            if (!string.IsNullOrEmpty(prefabId))
            {
                if (TrackedDevices.ContainsKey(prefabId))
                {
                    UnTrackDevice(obj, prefabId);
                    DisplayManager?.UpdateDisplay();
                }
            }
        }
        private void AlertedNewDevicePlaced(OxStationController obj)
        {
            if (!FindManager())
            {
                return;
            }

            var prefabId = obj?.GetPrefabIDString();

            if (!string.IsNullOrEmpty(prefabId))
            {
                if (obj.Manager == Manager && !TrackedDevices.ContainsKey(prefabId))
                {
                    TrackDevice(obj, prefabId);
                    DisplayManager?.UpdateDisplay();
                }
            }
        }
 private void TrackDevice(OxStationController device, string prefabId)
 {
     device.HealthManager.OnDamaged  += OnDeviceDamaged;
     device.HealthManager.OnRepaired += OnDeviceRepaired;
     TrackedDevices.Add(prefabId, device);
 }