Implemented Bounty Tab Functionality without Bounty Tracking
This commit is contained in:
parent
e44395a58f
commit
f1b5e5068c
@ -8,15 +8,22 @@
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="dfa3053d-1d51-4dad-9270-4c17e086f627" name="Changes" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/Source/EndlessVendetta/PauseMenu/TabStructs/BountyTabInfo.cpp" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/Source/EndlessVendetta/PauseMenu/TabStructs/BountyTabInfo.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.EndlessVendetta/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/FirstPerson/Blueprints/BP_FirstPersonCharacter.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/BountySystem/ApartmentBounty/MB_Apartment.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/BountySystem/ApartmentBounty/MB_Apartment.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/BountySystem/ControlsTutorial/Bounty/MB_Training.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/BountySystem/ControlsTutorial/Bounty/MB_Training.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/Dialogue/Mayor_tutorial_dialogue_tree.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/Dialogue/Mayor_tutorial_dialogue_tree.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/Levels/MainMenuLevel.umap" beforeDir="false" afterPath="$PROJECT_DIR$/Content/Levels/MainMenuLevel.umap" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/PauseMenu/Tabs/WBP_BountiesTab.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/PauseMenu/Tabs/WBP_BountiesTab.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/PauseMenu/WBP_PauseMenu.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/PauseMenu/WBP_PauseMenu.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/PauseMenu/WBP_TestMenuTab.uasset" beforeDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/StarterContent/Architecture/Floor_400x400.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/StarterContent/Architecture/Floor_400x400.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/StarterContent/Particles/P_Ambient_Dust.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/StarterContent/Particles/P_Ambient_Dust.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset" beforeDir="false" afterPath="$PROJECT_DIR$/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/BountySystem/MainBountyClass.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/BountySystem/MainBountyClass.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/BountySystem/SideBountyClass.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/BountySystem/SideBountyClass.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/Characters/BountyHunterCharacter.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/Characters/BountyHunterCharacter.cpp" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/Characters/BountyHunterCharacter.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/Characters/BountyHunterCharacter.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/PauseMenu/PauseMenuClass.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/PauseMenu/PauseMenuClass.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/Source/EndlessVendetta/PauseMenu/BountiesTab.h" beforeDir="false" afterPath="$PROJECT_DIR$/Source/EndlessVendetta/PauseMenu/BountiesTab.h" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
@ -38,28 +45,28 @@
|
||||
<option name="hideEmptyMiddlePackages" value="true" />
|
||||
<option name="showLibraryContents" value="true" />
|
||||
</component>
|
||||
<component name="PropertiesComponent">{
|
||||
"keyToString": {
|
||||
"C++ Project.EndlessVendetta.executor": "Run",
|
||||
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||
"git-widget-placeholder": "PauseMenu",
|
||||
"ignore.virus.scanning.warn.message": "true",
|
||||
"node.js.detected.package.eslint": "true",
|
||||
"node.js.detected.package.tslint": "true",
|
||||
"node.js.selected.package.eslint": "(autodetect)",
|
||||
"node.js.selected.package.tslint": "(autodetect)",
|
||||
"nodejs_package_manager_path": "npm",
|
||||
"vue.rearranger.settings.migration": "true"
|
||||
<component name="PropertiesComponent"><![CDATA[{
|
||||
"keyToString": {
|
||||
"C++ Project.EndlessVendetta.executor": "Run",
|
||||
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||
"git-widget-placeholder": "PuaseMenuTabs",
|
||||
"ignore.virus.scanning.warn.message": "true",
|
||||
"node.js.detected.package.eslint": "true",
|
||||
"node.js.detected.package.tslint": "true",
|
||||
"node.js.selected.package.eslint": "(autodetect)",
|
||||
"node.js.selected.package.tslint": "(autodetect)",
|
||||
"nodejs_package_manager_path": "npm",
|
||||
"vue.rearranger.settings.migration": "true"
|
||||
},
|
||||
"keyToStringList": {
|
||||
"rider.external.source.directories": [
|
||||
"C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\DecompilerCache",
|
||||
"C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\SourcesCache",
|
||||
"C:\\Users\\Rafal\\AppData\\Local\\Symbols\\src"
|
||||
"keyToStringList": {
|
||||
"rider.external.source.directories": [
|
||||
"C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\DecompilerCache",
|
||||
"C:\\Users\\Rafal\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\SourcesCache",
|
||||
"C:\\Users\\Rafal\\AppData\\Local\\Symbols\\src"
|
||||
]
|
||||
}
|
||||
}</component>
|
||||
}]]></component>
|
||||
<component name="RunManager">
|
||||
<configuration name="EndlessVendetta" type="CppProject" factoryName="C++ Project">
|
||||
<configuration_1>
|
||||
@ -135,6 +142,7 @@
|
||||
<workItem from="1706972179014" duration="11096000" />
|
||||
<workItem from="1707046474738" duration="8878000" />
|
||||
<workItem from="1707103463352" duration="6662000" />
|
||||
<workItem from="1707304148719" duration="10277000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
|
BIN
EndlessVendetta/Content/BountySystem/ApartmentBounty/MB_Apartment.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/BountySystem/ApartmentBounty/MB_Apartment.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/BountySystem/ControlsTutorial/Bounty/MB_Training.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/BountySystem/ControlsTutorial/Bounty/MB_Training.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/Dialogue/Mayor_tutorial_dialogue_tree.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/Dialogue/Mayor_tutorial_dialogue_tree.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/Levels/MainMenuLevel.umap
(Stored with Git LFS)
BIN
EndlessVendetta/Content/Levels/MainMenuLevel.umap
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/PauseMenu/Tabs/WBP_BountiesTab.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/PauseMenu/Tabs/WBP_BountiesTab.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/PauseMenu/WBP_PauseMenu.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/PauseMenu/WBP_PauseMenu.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/StarterContent/Blueprints/Blueprint_CeilingLight.uasset
(Stored with Git LFS)
Binary file not shown.
BIN
EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset
(Stored with Git LFS)
BIN
EndlessVendetta/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset
(Stored with Git LFS)
Binary file not shown.
@ -7,9 +7,36 @@
|
||||
#include "SideBountyClass.h"
|
||||
#include "MainBountyClass.generated.h"
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
USTRUCT(BlueprintType)
|
||||
struct FMainBountyStruct
|
||||
{
|
||||
GENERATED_BODY();
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString TargetName = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString TargetDOB = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString TargetOccupation = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString TargetLocation = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString BountyDescription = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
UTexture2D* TargetPhoto = nullptr;
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
UTexture2D* Floorplan = nullptr;
|
||||
|
||||
UPROPERTY(BlueprintReadOnly)
|
||||
bool Tracked = true;
|
||||
};
|
||||
|
||||
UCLASS()
|
||||
class ENDLESSVENDETTA_API AMainBountyClass : public ABountyClass
|
||||
{
|
||||
@ -31,6 +58,9 @@ protected:
|
||||
|
||||
|
||||
public:
|
||||
// Struct Containing all Data to be Displayed about the Main Bounty
|
||||
UPROPERTY(EditDefaultsOnly, Category = "Bounty")
|
||||
FMainBountyStruct MainBountyStruct;
|
||||
|
||||
// ------------------- METHODS ---------------------------------
|
||||
private:
|
||||
|
@ -6,6 +6,21 @@
|
||||
#include "BountyClass.h"
|
||||
#include "SideBountyClass.generated.h"
|
||||
|
||||
USTRUCT(BlueprintType)
|
||||
struct FSideBountyStruct
|
||||
{
|
||||
GENERATED_BODY();
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString BountyTitle = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly, EditDefaultsOnly)
|
||||
FString BountyDesc = "";
|
||||
|
||||
UPROPERTY(BlueprintReadOnly)
|
||||
bool Tracked = true;
|
||||
};
|
||||
|
||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FCompletedSideBounty, int, FavoursEarned);
|
||||
|
||||
UCLASS()
|
||||
|
@ -26,6 +26,7 @@ void ABountyHunterCharacter::SpawnMainBounty(UEVGameInstance* GI)
|
||||
CurrentMainBounty->AttachToComponent(GetRootComponent(), AttachmentTransformRules);
|
||||
|
||||
UGameplayStatics::GetCurrentLevelName(GetWorld()) == OpenWorldLevelName ? CurrentMainBounty->SpawnOpenWorldCheckpoint() : CurrentMainBounty->SpawnCheckpoints();
|
||||
MainBountyStruct = CurrentMainBounty->MainBountyStruct;
|
||||
}
|
||||
|
||||
void ABountyHunterCharacter::CompleteCurrentMainBounty(UEVGameInstance* GI)
|
||||
@ -107,6 +108,7 @@ void ABountyHunterCharacter::EndPlay(const EEndPlayReason::Type EndPlayReason)
|
||||
void ABountyHunterCharacter::CreatePauseMenuTabs()
|
||||
{
|
||||
BountiesTab = CreateWidget<UBountiesTab>(GetWorld(), BountyTabWidgetClass);
|
||||
UpdateBountyTabInfo();
|
||||
FavoursTab = CreateWidget<UTabWidget>(GetWorld(), FavoursTabWidgetClass);
|
||||
NavigationTab = CreateWidget<UTabWidget>(GetWorld(), NavigationTabWidgetClass);
|
||||
SettingsTab = CreateWidget<UTabWidget>(GetWorld(), SettingsTabWidgetClass);
|
||||
|
@ -6,7 +6,9 @@
|
||||
#include "EndlessVendetta/EndlessVendettaCharacter.h"
|
||||
#include "EndlessVendetta/EVGameInstance.h"
|
||||
#include "EndlessVendetta/MainSaveGameClass.h"
|
||||
#include "EndlessVendetta/PauseMenu/TabStructs/BountyTabInfo.h"
|
||||
#include "EndlessVendetta/BountySystem/MainBountyClass.h"
|
||||
#include "EndlessVendetta/BountySystem/SideBountyClass.h"
|
||||
#include "EndlessVendetta/PauseMenu/BountiesTab.h"
|
||||
#include "EndlessVendetta/PauseMenu/PauseMenuClass.h"
|
||||
#include "EndlessVendetta/PauseMenu/QuitTab.h"
|
||||
@ -160,4 +162,19 @@ private:
|
||||
{
|
||||
PauseMenu->OpenNewTab(QuitTab);
|
||||
}
|
||||
|
||||
FBountyTabInfo BountyTabInfo;
|
||||
|
||||
FMainBountyStruct MainBountyStruct;
|
||||
|
||||
TArray<FSideBountyStruct> SideBountyStruct;
|
||||
|
||||
void UpdateBountyTabInfo()
|
||||
{
|
||||
if (!IsValid(BountiesTab)) return;
|
||||
BountyTabInfo.MainBountyStruct = MainBountyStruct;
|
||||
BountyTabInfo.SideBountyStructs = SideBountyStruct;
|
||||
|
||||
BountiesTab->UpdateBountyTab(BountyTabInfo);
|
||||
}
|
||||
};
|
||||
|
@ -3,6 +3,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "TabStructs/BountyTabInfo.h"
|
||||
#include "TabWidget.h"
|
||||
#include "EndlessVendetta/BountySystem/BountyClass.h"
|
||||
#include "BountiesTab.generated.h"
|
||||
@ -28,4 +29,6 @@ private:
|
||||
protected:
|
||||
|
||||
public:
|
||||
UFUNCTION(BlueprintImplementableEvent)
|
||||
void UpdateBountyTab(FBountyTabInfo BountyTabInfo);
|
||||
};
|
||||
|
@ -0,0 +1 @@
|
||||
#include "BountyTabInfo.h"
|
@ -0,0 +1,17 @@
|
||||
#pragma once
|
||||
|
||||
#include "EndlessVendetta/BountySystem/MainBountyClass.h"
|
||||
#include "EndlessVendetta/BountySystem/SideBountyClass.h"
|
||||
#include "BountyTabInfo.generated.h"
|
||||
|
||||
USTRUCT(BlueprintType)
|
||||
struct FBountyTabInfo
|
||||
{
|
||||
GENERATED_BODY();
|
||||
|
||||
UPROPERTY(BlueprintReadOnly)
|
||||
FMainBountyStruct MainBountyStruct;
|
||||
|
||||
UPROPERTY(BlueprintReadOnly)
|
||||
TArray<FSideBountyStruct> SideBountyStructs;
|
||||
};
|
Loading…
Reference in New Issue
Block a user