diff --git a/QSB/SectorSync/SectorSync.cs b/QSB/SectorSync/SectorSync.cs index 382dd5bd..7347a169 100644 --- a/QSB/SectorSync/SectorSync.cs +++ b/QSB/SectorSync/SectorSync.cs @@ -14,6 +14,15 @@ namespace QSB.SectorSync private SectorDetector _sectorDetector; + private void OnDestroy() + { + if (_sectorDetector != null) + { + _sectorDetector.OnEnterSector -= AddSector; + _sectorDetector.OnExitSector -= RemoveSector; + } + } + public void SetSectorDetector(SectorDetector detector) { if (_sectorDetector != null) diff --git a/QSB/TransformSync/TransformSync.cs b/QSB/TransformSync/TransformSync.cs index 8d147318..bb58979d 100644 --- a/QSB/TransformSync/TransformSync.cs +++ b/QSB/TransformSync/TransformSync.cs @@ -47,6 +47,10 @@ namespace QSB.TransformSync Destroy(SyncedTransform.gameObject); } QSBSceneManager.OnSceneLoaded -= OnSceneLoaded; + if (SectorSync != null) + { + Destroy(SectorSync); + } } private void OnSceneLoaded(OWScene scene, bool isInUniverse) =>