fix for double asset registration and multiple outs from loop nodes
Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com>
This commit is contained in:
@@ -191,7 +191,6 @@ namespace GraphCanvas
|
||||
|
||||
void GraphCanvasSystemComponent::Activate()
|
||||
{
|
||||
RegisterAssetHandler();
|
||||
RegisterTranslationBuilder();
|
||||
|
||||
AzFramework::AssetCatalogEventBus::Handler::BusConnect();
|
||||
@@ -386,34 +385,6 @@ namespace GraphCanvas
|
||||
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequestBus::Events::EnumerateAssets, nullptr, collectAssetsCb, postEnumerateCb);
|
||||
}
|
||||
|
||||
void GraphCanvasSystemComponent::RegisterAssetHandler()
|
||||
{
|
||||
AZ::Data::AssetType assetType(azrtti_typeid<TranslationAsset>());
|
||||
if (AZ::Data::AssetManager::Instance().GetHandler(assetType))
|
||||
{
|
||||
return; // Asset Type already handled
|
||||
}
|
||||
|
||||
auto* catalogBus = AZ::Data::AssetCatalogRequestBus::FindFirstHandler();
|
||||
if (catalogBus)
|
||||
{
|
||||
// Register asset types the asset DB should query our catalog for.
|
||||
catalogBus->AddAssetType(assetType);
|
||||
|
||||
// Build the catalog (scan).
|
||||
catalogBus->AddExtension(".names");
|
||||
}
|
||||
|
||||
m_assetHandler = AZStd::make_unique<TranslationAssetHandler>();
|
||||
AZ::Data::AssetManager::Instance().RegisterHandler(m_assetHandler.get(), assetType);
|
||||
|
||||
// Use AssetCatalog service to register ScriptEvent asset type and extension
|
||||
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequests::AddAssetType, assetType);
|
||||
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequests::EnableCatalogForAsset, assetType);
|
||||
AZ::Data::AssetCatalogRequestBus::Broadcast(&AZ::Data::AssetCatalogRequests::AddExtension, TranslationAsset::GetFileFilter());
|
||||
|
||||
}
|
||||
|
||||
void GraphCanvasSystemComponent::UnregisterAssetHandler()
|
||||
{
|
||||
if (m_assetHandler)
|
||||
|
||||
@@ -82,8 +82,6 @@ namespace GraphCanvas
|
||||
AZStd::unique_ptr<TranslationAssetHandler> m_assetHandler;
|
||||
|
||||
void RegisterTranslationBuilder();
|
||||
|
||||
void RegisterAssetHandler();
|
||||
void UnregisterAssetHandler();
|
||||
TranslationAssetWorker m_translationAssetWorker;
|
||||
AZStd::vector<AZ::Data::AssetId> m_translationAssets;
|
||||
|
||||
@@ -3230,7 +3230,7 @@ namespace ScriptCanvas
|
||||
auto valueSlot = forEachNodeSC->GetSlot(forEachNodeSC->GetValueSlotId());
|
||||
AZ_Assert(valueSlot, "no value slot in for each node");
|
||||
|
||||
lastExecution->AddChild({});
|
||||
lastExecution->AddChild({ &loopSlot, {}, nullptr });
|
||||
auto outputValue = CreateOutputData(lastExecution, lastExecution->ModChild(0), *valueSlot);
|
||||
lastExecution->ModChild(0).m_output.push_back({ valueSlot, outputValue });
|
||||
|
||||
|
||||
+2215
File diff suppressed because it is too large
Load Diff
@@ -84,9 +84,9 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
TEST_F(ScriptCanvasTestFixture, ProveError)
|
||||
TEST_F(ScriptCanvasTestFixture, ForEachMultipleOutSyntaxOnEach)
|
||||
{
|
||||
EXPECT_TRUE(false);
|
||||
RunUnitTestGraph("LY_SC_UnitTest_ForEachMultipleOutSyntaxOnEach");
|
||||
}
|
||||
|
||||
TEST_F(ScriptCanvasTestFixture, EntityIdInputForOnGraphStart)
|
||||
|
||||
Reference in New Issue
Block a user