public void Exit() { _dispatcher.RemoveListener(GameplayEventType.DAMAGE_TAKEN, onDamageTaken); _dispatcher.RemoveListener(GameplayEventType.GAME_COMPLETE, onGameComplete); _dispatcher.RemoveListener(GameplayEventType.GAME_RETRY, onGameRetry); _hudController.RemoveView(); _buildSystem.CleanUp(); _lootSystem.Dispose(); _inventorySystem.Dispose(); }