// Fill out your copyright notice in the Description page of Project Settings. #include "EleriDataAssetDefinitions.h" #include "EleriAssetCategory.h" #include "ProjectEleri/Ai/NpcScheduleAsset.h" #include "ProjectEleri/Animation/AnimationDataAsset.h" #include "ProjectEleri/Data/BazarSettingsDataAsset.h" #include "ProjectEleri/Data/FaceExpressionDataAsset.h" #include "ProjectEleri/Data/Minigames/BaseMinigameDataAsset.h" #include "ProjectEleri/Data/NpcDataAsset.h" #include "ProjectEleri/Data/WeatherPresetDataAsset.h" #include "ProjectEleri/DialogueSystem/QuestDatabase.h" #include "ProjectEleri/DialogueSystem/SpeechDataAsset.h" #include "ProjectEleri/GameEventSystem/GameEventDataAsset.h" #include "ProjectEleri/Items/DataAssets/ItemDataAsset.h" #include "ProjectEleri/Items/ItemContainer.h" #include "ProjectEleri/QuestSystem/QuestDataAsset.h" #define LOCTEXT_NAMESPACE "EleriDataAssetDefinitions" /*----------------------------------------------------------------------------- Shared behaviour -----------------------------------------------------------------------------*/ TConstArrayView UEleriDataAssetDefinition::GetAssetCategories() const { // One entry, the same for every definition in here. It has to outlive the call, because the engine // keeps the view it is handed rather than copying it. static const TArray Categories = { EleriAssetCategory::Get() }; return Categories; } /*----------------------------------------------------------------------------- Items -----------------------------------------------------------------------------*/ FText UEleriItemDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("ItemDataAssetName", "Item"); } FLinearColor UEleriItemDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.86f, 0.33f, 0.10f); } TSoftClassPtr UEleriItemDataAssetDefinition::GetAssetClass() const { return UItemDataAsset::StaticClass(); } FText UEleriItemContainerDefinition::GetAssetDisplayName() const { return LOCTEXT("ItemContainerName", "Item Container"); } FLinearColor UEleriItemContainerDefinition::GetAssetColor() const { return FLinearColor(0.85f, 0.55f, 0.10f); } TSoftClassPtr UEleriItemContainerDefinition::GetAssetClass() const { return UItemContainer::StaticClass(); } /*----------------------------------------------------------------------------- Quests and dialogue -----------------------------------------------------------------------------*/ FText UEleriQuestDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("QuestDataAssetName", "Quest"); } FLinearColor UEleriQuestDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.95f, 0.80f, 0.15f); } TSoftClassPtr UEleriQuestDataAssetDefinition::GetAssetClass() const { return UQuestDataAsset::StaticClass(); } FText UEleriQuestDatabaseDefinition::GetAssetDisplayName() const { return LOCTEXT("QuestDatabaseName", "Quest Database"); } FLinearColor UEleriQuestDatabaseDefinition::GetAssetColor() const { return FLinearColor(0.65f, 0.62f, 0.15f); } TSoftClassPtr UEleriQuestDatabaseDefinition::GetAssetClass() const { return UQuestDatabase::StaticClass(); } FText UEleriSpeechDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("SpeechDataAssetName", "Speech"); } FLinearColor UEleriSpeechDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.35f, 0.70f, 0.85f); } TSoftClassPtr UEleriSpeechDataAssetDefinition::GetAssetClass() const { return USpeechDataAsset::StaticClass(); } /*----------------------------------------------------------------------------- World events and weather -----------------------------------------------------------------------------*/ FText UEleriGameEventDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("GameEventDataAssetName", "Game Event"); } FLinearColor UEleriGameEventDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.60f, 0.35f, 0.85f); } TSoftClassPtr UEleriGameEventDataAssetDefinition::GetAssetClass() const { return UGameEventDataAsset::StaticClass(); } FText UEleriWeatherPresetDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("WeatherPresetDataAssetName", "Weather Preset"); } FLinearColor UEleriWeatherPresetDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.30f, 0.60f, 0.90f); } TSoftClassPtr UEleriWeatherPresetDataAssetDefinition::GetAssetClass() const { return UWeatherPresetDataAsset::StaticClass(); } /*----------------------------------------------------------------------------- Characters -----------------------------------------------------------------------------*/ FText UEleriFaceExpressionDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("FaceExpressionDataAssetName", "Face Expression"); } FLinearColor UEleriFaceExpressionDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.95f, 0.55f, 0.70f); } TSoftClassPtr UEleriFaceExpressionDataAssetDefinition::GetAssetClass() const { return UFaceExpressionDataAsset::StaticClass(); } FText UEleriNpcDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("NpcDataAssetName", "NPC"); } FLinearColor UEleriNpcDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.30f, 0.75f, 0.55f); } TSoftClassPtr UEleriNpcDataAssetDefinition::GetAssetClass() const { return UNpcDataAsset::StaticClass(); } FText UEleriNpcScheduleAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("NpcScheduleAssetName", "NPC Schedule"); } FLinearColor UEleriNpcScheduleAssetDefinition::GetAssetColor() const { return FLinearColor(0.20f, 0.60f, 0.45f); } TSoftClassPtr UEleriNpcScheduleAssetDefinition::GetAssetClass() const { return UNpcScheduleAsset::StaticClass(); } /*----------------------------------------------------------------------------- Settings, animation and minigames -----------------------------------------------------------------------------*/ FText UEleriBazarSettingsDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("BazarSettingsDataAssetName", "Bazar Settings"); } FLinearColor UEleriBazarSettingsDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.80f, 0.45f, 0.25f); } TSoftClassPtr UEleriBazarSettingsDataAssetDefinition::GetAssetClass() const { return UBazarSettingsDataAsset::StaticClass(); } FText UEleriAnimationDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("AnimationDataAssetName", "Animation"); } FLinearColor UEleriAnimationDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.45f, 0.45f, 0.85f); } TSoftClassPtr UEleriAnimationDataAssetDefinition::GetAssetClass() const { return UAnimationDataAsset::StaticClass(); } FText UEleriMinigameDataAssetDefinition::GetAssetDisplayName() const { return LOCTEXT("MinigameDataAssetName", "Minigame"); } FLinearColor UEleriMinigameDataAssetDefinition::GetAssetColor() const { return FLinearColor(0.85f, 0.30f, 0.55f); } TSoftClassPtr UEleriMinigameDataAssetDefinition::GetAssetClass() const { // The base class, deliberately: the engine answers for a class with the definition registered for // its nearest ancestor that has one, so this single entry covers Potion Sort and every minigame // added after it without any of them having to be listed here. return UBaseMinigameDataAsset::StaticClass(); } #undef LOCTEXT_NAMESPACE