diff --git a/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.cpp b/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.cpp index 86089d57..72c8c4d5 100644 --- a/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.cpp +++ b/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.cpp @@ -52,7 +52,7 @@ namespace CsvSpawner void CsvSpawnerComponent::Deactivate() { - AzFramework::Terrain::TerrainDataNotificationBus::Handler::BusDisconnect(); + OnTerrainDataDestroyBegin(); } void CsvSpawnerComponent::OnTerrainDataCreateEnd() diff --git a/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.h b/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.h index a1a12411..d54c3914 100644 --- a/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.h +++ b/Gems/CsvSpawner/Code/Source/CsvSpawner/CsvSpawnerComponent.h @@ -24,7 +24,7 @@ namespace CsvSpawner //! dependent on a CSV file). class CsvSpawnerComponent : public AZ::Component - , private AzFramework::Terrain::TerrainDataNotificationBus::Handler + , protected AzFramework::Terrain::TerrainDataNotificationBus::Handler { public: AZ_COMPONENT(CsvSpawnerComponent, CsvSpawnerComponentTypeId); @@ -44,6 +44,10 @@ namespace CsvSpawner void Activate() override; void Deactivate() override; + // AzFramework::Terrain::TerrainDataNotificationBus::Handler overrides + void OnTerrainDataCreateEnd() override; + void OnTerrainDataDestroyBegin() override; + private: AZStd::unordered_map m_spawnableAssetConfigurations; //!< List of assets to spawn @@ -53,8 +57,6 @@ namespace CsvSpawner AZStd::unordered_map m_spawnedTickets; // Terrain notify - void OnTerrainDataCreateEnd() override; - void OnTerrainDataDestroyBegin() override; bool m_terrainCreatedOnlyOnce{ false }; //!< Is terrain fully generated once }; } // namespace CsvSpawner