diff --git a/Content/Character/BP_BazarStaticCustomer.uasset b/Content/Character/BP_BazarStaticCustomer.uasset index cea77159..463fcd24 100644 --- a/Content/Character/BP_BazarStaticCustomer.uasset +++ b/Content/Character/BP_BazarStaticCustomer.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e35099f14f096a4905c04f891b8d9c4f3a02ea1c3972c77ac9ca7f27c5384ef4 -size 273306 +oid sha256:8960cad6eaea75798f40ad452256424f469146e125079f4e8eaf33d5603a8794 +size 225619 diff --git a/Content/GameData/CSV/PotionDatabase.csv b/Content/GameData/CSV/PotionDatabase.csv index d34fe3ff..531fd461 100644 --- a/Content/GameData/CSV/PotionDatabase.csv +++ b/Content/GameData/CSV/PotionDatabase.csv @@ -1,11 +1,11 @@ Id,Name,Heal,Poison,Enhance,Conjure,Celestial,Element,Cost,Effectiveness -P_Healing Tonic,Healing Tonic,4.00,,,,,Light,,4.00 -P_Potion of Purging,Potion of Purging,9.00,,2.00,,,Light,,11.00 -P_Grand Potion of Cleansing,Grand Potion of Cleansing,15.00,,6.00,,,Light,,21.00 -P_Potion of Bad Luck,Potion of Bad Luck,,5.00,,1.00,,Dark,,6.00 -P_Cast Fireball,Cast Fireball,,,2.00,8.00,1.00,Light,,11.00 -P_Starlight Spark,Starlight Spark,5.00,,5.00,2.00,10.00,Light,,22.00 -P_Widow's Kiss,Widow's Kiss,,4.00,,1.00,,Dark,,5.00 -P_Withered Tree's Sap,Withered Tree's Sap,,8.00,,4.00,,Dark,,12.00 -P_Anti Gravity Field Potion,Anti Gravity Field Potion,,,,10.00,12.00,Dark,,22.00 -P_Serpent's Kiss,Serpent's Kiss,,6.00,,,,WInd,,6.00 \ No newline at end of file +P_Healing Tonic,Healing Tonic,4,,,,,Light,35,4 +P_Potion of Purging,Potion of Purging,9,,2,,,Light,50,11 +P_Grand Potion of Cleansing,Grand Potion of Cleansing,15,,6,,,Light,150,21 +P_Potion of Bad Luck,Potion of Bad Luck,,5,,1,,Dark,300,6 +P_Cast Fireball,Cast Fireball,,,2,8,1,Light,450,11 +P_Starlight Spark,Starlight Spark,5,,5,2,10,Light,800,22 +P_Widow's Kiss,Widow's Kiss,,4,,1,,Dark,250,5 +P_Withered Tree's Sap,Withered Tree's Sap,,8,,4,,Dark,120,12 +P_Anti Gravity Field Potion,Anti Gravity Field Potion,,,,10,12,Dark,650,22 +P_Serpent's Kiss,Serpent's Kiss,,6,,,,Dark,170,6 diff --git a/Content/GameData/CSV/PotionDatabase.uasset b/Content/GameData/CSV/PotionDatabase.uasset index 25ee6f9f..e0ebc05e 100644 --- a/Content/GameData/CSV/PotionDatabase.uasset +++ b/Content/GameData/CSV/PotionDatabase.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:396037f963edd72c664e8f24a687a3d203f72fe76684404620455ba550de6ad5 -size 5982 +oid sha256:c68db0427bb878b1a5c203acecefb37fe81b5c696430faac7fc5387a244c968d +size 5764 diff --git a/Content/GameData/DA_BazaarSettings.uasset b/Content/GameData/DA_BazaarSettings.uasset index ba4be15b..34bf2016 100644 --- a/Content/GameData/DA_BazaarSettings.uasset +++ b/Content/GameData/DA_BazaarSettings.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:50ac6734674f5cca57e5fefccba6d0c197d7cb3b379e15fcceafa10688c0d10a -size 5547 +oid sha256:44af01a4af3af107d80e405054e9f4df846f30ff571cbc8de2c805b9331a1a8c +size 6179 diff --git a/Content/GameData/Dialogue/Bazaar/DA_BazaarCustomerIntro.uasset b/Content/GameData/Dialogue/Bazaar/DA_BazaarCustomerIntro.uasset new file mode 100644 index 00000000..839b8351 --- /dev/null +++ b/Content/GameData/Dialogue/Bazaar/DA_BazaarCustomerIntro.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8590cd1c1d49deadf17ded18acb52efcc933aaa8718dee9ef8ad5c9ff011a78c +size 3736 diff --git a/Content/GameData/Dialogue/Bazaar/DA_BazaarEndHaggle.uasset b/Content/GameData/Dialogue/Bazaar/DA_BazaarEndHaggle.uasset index f57159a0..ecd2c244 100644 --- a/Content/GameData/Dialogue/Bazaar/DA_BazaarEndHaggle.uasset +++ b/Content/GameData/Dialogue/Bazaar/DA_BazaarEndHaggle.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:feb8be8e6d59fedd07b10589b32c27188526e48715ccca107472f017367c0169 -size 3289 +oid sha256:fd4829c9a7dac634c644239f4196f174fa2a7e1233ee8dd47ce0bf967dd6c0f6 +size 2347 diff --git a/Content/Scripts/Bazar/BP_BazarSellingStand.uasset b/Content/Scripts/Bazar/BP_BazarSellingStand.uasset index ca9cde0b..a6e95acb 100644 --- a/Content/Scripts/Bazar/BP_BazarSellingStand.uasset +++ b/Content/Scripts/Bazar/BP_BazarSellingStand.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5961c4c98747ff18a832c752d79f55c2f7b98cf475cb119c15eb1bb3dcdf5d31 -size 982474 +oid sha256:384ec178610dbbac692307b95b3351affe9fa98b7e3ddd7328a4490ffa44736d +size 1110244 diff --git a/Content/Scripts/Bazar/WBP_BazaarHaggleCard.uasset b/Content/Scripts/Bazar/WBP_BazaarHaggleCard.uasset new file mode 100644 index 00000000..3081b8ec --- /dev/null +++ b/Content/Scripts/Bazar/WBP_BazaarHaggleCard.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aa191131eb01ecbfaab6ac87ee5ed769647af44e17236b193162503a8322152 +size 223458 diff --git a/Content/Scripts/Bazar/WBP_BazarScreen.uasset b/Content/Scripts/Bazar/WBP_BazarScreen.uasset index 95e6e64e..ecee2f9b 100644 --- a/Content/Scripts/Bazar/WBP_BazarScreen.uasset +++ b/Content/Scripts/Bazar/WBP_BazarScreen.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5a1029dc3dbd5a545675d27528de003ec87c963fd06654dc1c117bbc4b27ffe6 -size 112514 +oid sha256:6c58d2d8df3b8f65545edc077f778ca104e2528ab31787d9f2710581290182fd +size 546509 diff --git a/Content/Textures/UI/Dice/T_D20.png b/Content/Textures/UI/Dice/T_D20.png new file mode 100644 index 00000000..9aa7afd2 --- /dev/null +++ b/Content/Textures/UI/Dice/T_D20.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd083545d8d44aa37e8e3273f5375abd34da292ff23ad7a6352ed3c8c8ffb66b +size 393 diff --git a/Content/Textures/UI/Dice/T_D20.uasset b/Content/Textures/UI/Dice/T_D20.uasset new file mode 100644 index 00000000..7dc2ced1 --- /dev/null +++ b/Content/Textures/UI/Dice/T_D20.uasset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b827c204f37996ba7c2260bd32c224fe6ff3b8cec423807f1979332f4fcc8d41 +size 12048 diff --git a/Content/__ExternalActors__/Maps/Persistent_GameWorld/7/1H/8FRC7HVBN4R8ZU9AAM1N1W.uasset b/Content/__ExternalActors__/Maps/Persistent_GameWorld/7/1H/8FRC7HVBN4R8ZU9AAM1N1W.uasset index 7fa7942c..a07ed1f6 100644 --- a/Content/__ExternalActors__/Maps/Persistent_GameWorld/7/1H/8FRC7HVBN4R8ZU9AAM1N1W.uasset +++ b/Content/__ExternalActors__/Maps/Persistent_GameWorld/7/1H/8FRC7HVBN4R8ZU9AAM1N1W.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:61cbb8ce7cf759d7611e4c597c806b6913be4f62bb5c17cdb56cabac44064255 -size 13431 +oid sha256:737eeffcb35ca26076bca0d8a190e6357ae56af9987e46fd1a189fd25cede7e4 +size 16861 diff --git a/Source/ProjectEleri/Data/BazarSettingsDataAsset.cpp b/Source/ProjectEleri/Data/BazarSettingsDataAsset.cpp index cf7c8f4e..72640ef7 100644 --- a/Source/ProjectEleri/Data/BazarSettingsDataAsset.cpp +++ b/Source/ProjectEleri/Data/BazarSettingsDataAsset.cpp @@ -3,23 +3,9 @@ #include "BazarSettingsDataAsset.h" -void UBazarSettingsDataAsset::GetModifiersFromEmotionData(const FBazarDialogueEmotionData& InData, int32& OutAnger, - int32& OutFear, int32& OutSadness) + +void UBazarSettingsDataAsset::PostLoad() { - for (const FBazarEmotionModifier& Mod : InData.EmotionModifiers) - { - switch (Mod.Emotion) - { - case EBazarNpcEmotion::Anger: - OutAnger = FMath::RandRange(Mod.ValueMin, Mod.ValueMax); - break; - case EBazarNpcEmotion::Fear: - OutFear = FMath::RandRange(Mod.ValueMin, Mod.ValueMax); - break; - case EBazarNpcEmotion::Sadness: - OutSadness = FMath::RandRange(Mod.ValueMin, Mod.ValueMax); - break; - default: ; - } - } + Super::PostLoad(); + } diff --git a/Source/ProjectEleri/Data/BazarSettingsDataAsset.h b/Source/ProjectEleri/Data/BazarSettingsDataAsset.h index 20295b30..5aa0991f 100644 --- a/Source/ProjectEleri/Data/BazarSettingsDataAsset.h +++ b/Source/ProjectEleri/Data/BazarSettingsDataAsset.h @@ -9,10 +9,11 @@ UENUM(BlueprintType) enum class EBazarNpcEmotion: uint8 { - None, - Anger, - Fear, - Sadness, + Trust, + Excitement, + Comfort, + Pride, + Curiosity, MAX UMETA(Hidden) }; @@ -41,10 +42,38 @@ struct FBazarDialogueEmotionData UPROPERTY(BlueprintReadWrite, EditAnywhere) TArray EmotionModifiers; + UPROPERTY(BlueprintReadOnly, VisibleAnywhere) + FString EmotionsData; + UPROPERTY(BlueprintReadWrite, EditAnywhere) FText DialogueText; }; +USTRUCT(BlueprintType) +struct FBazaarHaggleCardData +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite) + FText CardName; + UPROPERTY(EditAnywhere, BlueprintReadWrite) + FText CardDescription; + + UPROPERTY(EditAnywhere, BlueprintReadWrite) + int32 TrustModifier; + UPROPERTY(EditAnywhere, BlueprintReadWrite) + int32 ExcitementModifier; + UPROPERTY(EditAnywhere, BlueprintReadWrite) + int32 ComfortModifier; + UPROPERTY(EditAnywhere, BlueprintReadWrite) + int32 PrideModifier; + UPROPERTY(EditAnywhere, BlueprintReadWrite) + int32 CuriosityModifier; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, meta = (UIMin = "0", ClampMin = "0", UIMax = "20", ClampMax = "20")) + int32 CardDifficulty; +}; + /** * */ @@ -53,9 +82,19 @@ class PROJECTELERI_API UBazarSettingsDataAsset : public UDataAsset { GENERATED_BODY() public: - UPROPERTY(BlueprintReadWrite, EditAnywhere) + + UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Eleri|Bazaar|Tresholds") + int32 HappyThreshold = 50; + UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Eleri|Bazaar|Tresholds") + int32 EmotionLowerThreshold = 65; + UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Eleri|Bazaar|Tresholds") + int32 EmotionUpperThreshold = 80; + + UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Eleri|Bazaar") TArray AvailableDialogueEmotionData; - UFUNCTION(BlueprintPure, Category = "Eleri|Bazaar") - static void GetModifiersFromEmotionData(const FBazarDialogueEmotionData& InData, int32& OutAnger, int32& OutFear, int32& OutSadness); + UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "Eleri|Bazaar") + TArray HaggleCards; + + virtual void PostLoad() override; }; diff --git a/Source/ProjectEleri/DialogueSystem/DialogueComponent.cpp b/Source/ProjectEleri/DialogueSystem/DialogueComponent.cpp index 7059e56a..b7778fc1 100644 --- a/Source/ProjectEleri/DialogueSystem/DialogueComponent.cpp +++ b/Source/ProjectEleri/DialogueSystem/DialogueComponent.cpp @@ -99,11 +99,8 @@ void UDialogueComponent::TriggerDialogue(USpeechDataAsset* DialogueAssetPath, co bDialogueSelectOpen = false; } - if (!DialogueWidget) - { - DialogueWidget = Cast(EleriPlayerController->ToggleDialogueWindow(true)); - DialogueWidget->AssignDialogueComponent(this); - } + DialogueWidget = Cast(EleriPlayerController->ToggleDialogueWindow(true)); + DialogueWidget->AssignDialogueComponent(this); CurrentLineIndex = 0; CurrentActiveDialogue = DialogueAssetPath; diff --git a/Source/ProjectEleri/Items/DataAssets/ItemDataAsset.h b/Source/ProjectEleri/Items/DataAssets/ItemDataAsset.h index ccd7daf4..d20ff923 100644 --- a/Source/ProjectEleri/Items/DataAssets/ItemDataAsset.h +++ b/Source/ProjectEleri/Items/DataAssets/ItemDataAsset.h @@ -127,8 +127,9 @@ public: FSoftClassPath DecorationActorClassPath; - /** Base cost of the item that's used to form buying and selling prices */ - UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Info", AssetRegistrySearchable, meta = (AssetBundles = "Inventory, Book")) + // Base cost of the item that's used to form buying and selling prices + // EDIT IT THE CSV + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Info", AssetRegistrySearchable, meta = (AssetBundles = "Inventory, Book")) int32 BaseCost; UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Info", AssetRegistrySearchable, meta = (AssetBundles = "Inventory, Book")) @@ -188,8 +189,9 @@ public: int32 ProfessionLevelNeeded; /** The item element describes what type of crystal goes into creating - a potion of the same element type*/ - UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) + a potion of the same element type + EDIT IN CSV*/ + UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) Element ItemElement; /** The chemical alignment of item, coresponds to a clock */ @@ -199,8 +201,10 @@ public: UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Craftable") EChemicalAlignment ChemicalAlignment; - /** What are the main properties of the ingredient/potion */ - UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) + /** What are the main properties of the ingredient/potion + * EDIT IN CSV + */ + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) TArray Properties; UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) @@ -210,8 +214,10 @@ public: UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) TArray Defects; - /*Item effectiveness is it's ability to effect the body in various ways, 1 being least effective and 4 most effective*/ - UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) + /*Item effectiveness is it's ability to effect the body in various ways, 1 being least effective and 4 most effective + * EDIT IN CSV + */ + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Craftable", AssetRegistrySearchable, meta = (AssetBundles = "Book")) int32 Effectiveness; UPROPERTY(EditDefaultsOnly, BlueprintReadWrite, Category = "Craftable", meta = (ClampMin = 1.f, ClampMax = 2.f, UIMin = 1.f, UIMax = 2.f, Delta = 0.01f))