Space Plunder
Loading...
Searching...
No Matches
ACampaignGameState Class Reference

#include <CampaignGameState.h>

Inheritance diagram for ACampaignGameState:
AOnlineGameState IAIData IOnlineGS ISaveLoad

Public Member Functions

 ACampaignGameState ()
 
virtual UDataTable * GetFactionRelationshipDataTable () override
 
virtual bool SaveGame () override
 
virtual bool LoadGame () override
 
virtual int32 GetNumLocalPlayers () const
 
virtual void AddPlayerState (APlayerState *PlayerState) override
 
virtual void RemovePlayerState (APlayerState *PlayerState) override
 
- Public Member Functions inherited from AOnlineGameState
 AOnlineGameState ()
 
virtual void MatchOver () override
 
virtual void UpdatePlayerList () override
 
virtual void SetOnlineMatchState (const FMatchState &State) override
 
virtual void SetMultiplayerMode (const EMultiplayerMode Mode) override
 
virtual EMultiplayerMode GetMultiplayerMode () const override
 
virtual void SetScoreGoal (const int32 Goal) override
 

Protected Member Functions

virtual void BeginPlay () override
 
virtual void OnMatchStateUpdated () override
 
- Protected Member Functions inherited from AOnlineGameState
virtual bool SavePlayer (APlayerState *PlayerState)
 
virtual bool LoadPlayer (APlayerState *PlayerState)
 
virtual void Client_SetScoreGoal (const int32 Goal)
 
virtual void Client_MatchOver ()
 
virtual void OnPlayersReplicated ()
 
void OnUpdatePlayerStates (const TArray< APlayerState * > &States)
 

Protected Attributes

UQuestGameStateComponent * QuestGameComponent
 
UDataTable * FactionRelationshipDataTable = nullptr
 
int32 PlayerSaveIndex = 0
 
- Protected Attributes inherited from AOnlineGameState
int32 GoalScore = 0
 
TArray< APlayerState * > AllPlayerStates
 
EMultiplayerMode MultiplayerMode = EMultiplayerMode::Default
 
TArray< FTeamScoreDataTotalScores
 
FMatchState MultiplayerMatchState
 

Private Attributes

bool bLoadQuests = false
 

Additional Inherited Members

- Public Attributes inherited from AOnlineGameState
FOnGameStateUpdated OnGameStateUpdated
 
FOnMultiplayerStateUpdated OnMultiplayerStateUpdated
 

Constructor & Destructor Documentation

◆ ACampaignGameState()

ACampaignGameState::ACampaignGameState ( )
22{
24 QuestGameComponent = CreateDefaultSubobject<UQuestGameStateComponent>(TEXT("QuestGameComponent"));
25}
UQuestGameStateComponent * QuestGameComponent
Definition CampaignGameState.h:51
EMultiplayerMode MultiplayerMode
Definition OnlineGameState.h:92

Member Function Documentation

◆ AddPlayerState()

void ACampaignGameState::AddPlayerState ( APlayerState * PlayerState)
overridevirtual

Reimplemented from AOnlineGameState.

47{
48 Super::AddPlayerState(PlayerState);
49 if(QuestGameComponent == nullptr){UE_LOG(LogQuestSystem, Warning, TEXT("AQuestExampleGameState::AddPlayerState QuestGameComponent "));return;}
50 if(PlayerState == nullptr){UE_LOG(LogQuestSystem, Warning, TEXT("AQuestExampleGameState::AddPlayerState PlayerState "));return;}
51 UObject* QuestPlayer = UQuestBPLib::GetPlayerQuestComponentObject(PlayerState);
52 if(QuestPlayer == nullptr)
53 {
54 UE_LOG(LogQuestSystem, Warning, TEXT("AQuestExampleGameState::AddPlayerState QuestPlayer nullptr"));
55 return;
56 }
57 QuestGameComponent->AddQuestPlayer(QuestPlayer);
58 LoadPlayer(PlayerState);
59}
virtual bool LoadPlayer(APlayerState *PlayerState)
Definition OnlineGameState.cpp:47
static UObject * GetPlayerQuestComponentObject(const AActor *Actor)
Definition QuestBPLib.cpp:53

◆ BeginPlay()

void ACampaignGameState::BeginPlay ( )
overrideprotectedvirtual

Reimplemented from AOnlineGameState.

67{
68 Super::BeginPlay();
69 // if(PlayerArray.IsValidIndex(0) && PlayerArray[0]->GetPlayerController() != nullptr && PlayerArray[0]->GetPlayerController()->GetPawn() != nullptr)
70 // {
71 // UQuestComponent* QuestComponentRef = PlayerArray[0]->GetPlayerController()->GetPawn()->GetComponentByClass<UQuestComponent>();
72 // if(QuestComponentRef == nullptr){UE_LOG(LogCustomALS, Error, TEXT("Failed to get Quest Comp in Game State"));return;}
73 // PrimaryQuestComponent = QuestComponentRef;
74 // //- Cast to Quest Interface //
75 // // IQuestInterface* QuestPlayer = Cast<IQuestInterface>(PlayerArray[0]->GetPlayerController()->GetPawn());
76 // // if(QuestPlayer != nullptr)
77 // // {
78 // // //- Get Player Quest Status, then set in Game State //
79 // // // QuestPlayer-
80 // // SetPlayerQuestStatus(QuestPlayer->GetPlayerQuestStatus());
81 // // }
82 // PrimaryQuestComponent->OnQuestLoaded.AddUniqueDynamic(this, &ACampaignGameState::QuestsLoaded);
83 // PrimaryQuestComponent->LoadQuests();
84 // }
85}

◆ GetFactionRelationshipDataTable()

UDataTable * ACampaignGameState::GetFactionRelationshipDataTable ( )
overridevirtual

Implements IAIData.

28{
29 if(FactionRelationshipDataTable == nullptr){UE_LOG(LogCustomALS, Error, TEXT("FactionRelationshipDataTable Null In GameState")); return nullptr;}
31}
UDataTable * FactionRelationshipDataTable
Definition CampaignGameState.h:55

◆ GetNumLocalPlayers()

int32 ACampaignGameState::GetNumLocalPlayers ( ) const
virtual
34{
35 int32 LocalPlayers = 0;
36 for(const auto& Player: PlayerArray)
37 {
38 if(Player->GetPlayerController() != nullptr && Player->GetPlayerController()->IsLocalPlayerController())
39 {
40 LocalPlayers++;
41 }
42 }
43 return LocalPlayers;
44}

◆ LoadGame()

bool ACampaignGameState::LoadGame ( )
overridevirtual

Reimplemented from AOnlineGameState.

215{
216 return Super::LoadGame();
217}

◆ OnMatchStateUpdated()

void ACampaignGameState::OnMatchStateUpdated ( )
overrideprotectedvirtual

Reimplemented from AOnlineGameState.

88{
89 Super::OnMatchStateUpdated();
90 // if(State.MatchState == EMatchState::InProgress && bLoadQuests == false)
91 // {
92 // LoadQuests();
93 // bLoadQuests = true;
94 // }
95}

◆ RemovePlayerState()

void ACampaignGameState::RemovePlayerState ( APlayerState * PlayerState)
overridevirtual

Reimplemented from AOnlineGameState.

62{
63 Super::RemovePlayerState(PlayerState);
64}

◆ SaveGame()

bool ACampaignGameState::SaveGame ( )
overridevirtual

Reimplemented from AOnlineGameState.

210{
211 return Super::SaveGame();
212}

Member Data Documentation

◆ bLoadQuests

bool ACampaignGameState::bLoadQuests = false
private

◆ FactionRelationshipDataTable

UDataTable* ACampaignGameState::FactionRelationshipDataTable = nullptr
protected

◆ PlayerSaveIndex

int32 ACampaignGameState::PlayerSaveIndex = 0
protected

◆ QuestGameComponent

UQuestGameStateComponent* ACampaignGameState::QuestGameComponent
protected

The documentation for this class was generated from the following files: