Lesson 59 - Game Sessions API Data Asset

This commit is contained in:
Norman Lansing
2026-03-15 17:31:56 -04:00
parent 3407b94731
commit d989960b41
8 changed files with 79 additions and 1 deletions

View File

@@ -0,0 +1,38 @@
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Engine/DataAsset.h"
#include "GameplayTags/DedicatedServersTags.h"
#include "APIData.generated.h"
/**
*
*/
UCLASS()
class DEDICATEDSERVERS_API UAPIData : public UDataAsset
{
GENERATED_BODY()
public:
FString GetAPIEndpoint(const FGameplayTag& APIEndpoint);
protected:
// Name of the API - for labeling in the Data Asset; this is not used by any code.
UPROPERTY(EditAnywhere)
FString Name;
UPROPERTY(EditDefaultsOnly)
FString InvokeUrl;
UPROPERTY(EditDefaultsOnly)
FString Stage;
UPROPERTY(EditDefaultsOnly)
TMap<FGameplayTag, FString> Resources;
};

View File

@@ -0,0 +1,12 @@
#pragma once
#include "CoreMinimal.h"
#include "NativeGameplayTags.h"
namespace DedicatedServersTags
{
namespace GameSessionsAPI
{
UE_DECLARE_GAMEPLAY_TAG_EXTERN(ListFleets)
}
}

View File

@@ -6,6 +6,8 @@
#include "UObject/Object.h"
#include "HTTPRequestManager.generated.h"
class UAPIData;
/**
*
*/
@@ -14,5 +16,10 @@ class DEDICATEDSERVERS_API UHTTPRequestManager : public UObject
{
GENERATED_BODY()
protected:
UPROPERTY(EditDefaultsOnly)
TObjectPtr<UAPIData> APIData;
};