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

#include <GetCurrentPlayers.h>

Inheritance diagram for UGetCurrentPlayers:

Static Public Member Functions

static UGetCurrentPlayersGetNumberOfCurrentPlayers ()
 

Public Attributes

FResponseGetPlayersDelegate OnSuccess
 
FResponseGetPlayersDelegate OnFailure
 

Private Member Functions

virtual void Activate () override
 
void GetTotalPlayers ()
 
void OnGetTotalPlayers (NumberOfCurrentPlayers_t *pGetCurrentPlayersResult, bool bIOFailure)
 

Private Attributes

FOnlineSubsystemSteam * SteamSubsystem
 
int32 TotalCurrentPlayers
 
CCallResult< UGetCurrentPlayers, NumberOfCurrentPlayers_t > m_callGetCurrentPlayersResult
 

Member Function Documentation

◆ Activate()

void UGetCurrentPlayers::Activate ( )
overrideprivatevirtual
14{
15 if(SteamAPI_Init())
16 {
18 }
19 else
20 {
21 GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("Failed to initialize the Steam API!"));
22 OnFailure.Broadcast(0, EResult::k_EResultFail);
23 RemoveFromRoot();
24 }
25}
void GetTotalPlayers()
Definition GetCurrentPlayers.cpp:27
FResponseGetPlayersDelegate OnFailure
Definition GetCurrentPlayers.h:44

◆ GetNumberOfCurrentPlayers()

UGetCurrentPlayers * UGetCurrentPlayers::GetNumberOfCurrentPlayers ( )
static
7{
8 UGetCurrentPlayers* SelfRef = NewObject<UGetCurrentPlayers>();
9 SelfRef->SteamSubsystem = static_cast<FOnlineSubsystemSteam*>(IOnlineSubsystem::Get());
10 return SelfRef;
11}
Definition GetCurrentPlayers.h:37
FOnlineSubsystemSteam * SteamSubsystem
Definition GetCurrentPlayers.h:53

◆ GetTotalPlayers()

void UGetCurrentPlayers::GetTotalPlayers ( )
private
28{
29 SteamAPICall_t hSteamAPICall = SteamUserStats()->GetNumberOfCurrentPlayers();
31}
void OnGetTotalPlayers(NumberOfCurrentPlayers_t *pGetCurrentPlayersResult, bool bIOFailure)
Definition GetCurrentPlayers.cpp:33
CCallResult< UGetCurrentPlayers, NumberOfCurrentPlayers_t > m_callGetCurrentPlayersResult
Definition GetCurrentPlayers.h:61

◆ OnGetTotalPlayers()

void UGetCurrentPlayers::OnGetTotalPlayers ( NumberOfCurrentPlayers_t * pGetCurrentPlayersResult,
bool bIOFailure )
private
34{
35 if(!bIOFailure)
36 {
37 TotalCurrentPlayers = pGetCurrentPlayersResult->m_cPlayers;
38 AsyncTask(ENamedThreads::GameThread, [this]()
39 {
40 OnSuccess.Broadcast(TotalCurrentPlayers, EResult::k_EResultOK);
41 }
42 );
43 GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, TEXT("GetTotalPlayers Downloaded!"));
44 UE_LOG(LogTemp, Warning, TEXT("Total Current Players: %i"), TotalCurrentPlayers);
45 if(pGetCurrentPlayersResult->m_bSuccess)
46 {
47 GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, TEXT("GetTotalPlayers Passed!"));
48 }
49 }
50 else
51 {
52 GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Red, TEXT("GetTotalPlayers Failed!"));
53 OnFailure.Broadcast(0, 99);
54 }
55 RemoveFromRoot();
56}
FResponseGetPlayersDelegate OnSuccess
Definition GetCurrentPlayers.h:42
int32 TotalCurrentPlayers
Definition GetCurrentPlayers.h:58

Member Data Documentation

◆ m_callGetCurrentPlayersResult

CCallResult<UGetCurrentPlayers, NumberOfCurrentPlayers_t> UGetCurrentPlayers::m_callGetCurrentPlayersResult
private

◆ OnFailure

FResponseGetPlayersDelegate UGetCurrentPlayers::OnFailure

◆ OnSuccess

FResponseGetPlayersDelegate UGetCurrentPlayers::OnSuccess

◆ SteamSubsystem

FOnlineSubsystemSteam* UGetCurrentPlayers::SteamSubsystem
private

◆ TotalCurrentPlayers

int32 UGetCurrentPlayers::TotalCurrentPlayers
private

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