8#include "GameFramework/GameModeBase.h"
19void UGameManager::OnTeleportActivatedRaw_Implementation(EControllerHand Hand,
bool InActivate)
38 if (
GameModeBaseRef->GetClass()->ImplementsInterface(UPixoCoreInterface::StaticClass()))
43 UE_LOG(LogTemp,
Error, TEXT(
"Sound Manager has not been setup for this project!"));
49 UE_LOG(LogTemp,
Error, TEXT(
"Story Manager has not been setup for this project!"));
53 UE_LOG(LogTemp,
Error, TEXT(
"Game mode doesn't implement PixoCore Interface"));
55 PlayerPawnRef = Cast<APixoVRCharacter>(GetWorld()->GetFirstPlayerController()->GetPawn());
61 UE_LOG(LogTemp,
Error, TEXT(
"PlayerPawn reference is invalid!"));
71 UStoryScript* TempScript = NewObject<UStoryScript>(
this, StoryScript.StepScriptClass);
#define DEFINE_EVENT_HANDLER(TEventType)
FOnTeleportationActivated & OnTeleportationActivated()
void HandleEvent_Impl(class UBaseEvent *Event)
FText CurrentStep
UPROPERTY(BlueprintReadWrite, Category = "GameManager")
void OnTeleportActivatedRaw(EControllerHand Hand, bool InActivate)
Function for overriding. Called when teleportation is activated.
AGameModeBase * GameModeBaseRef
UPROPERTY(BlueprintReadWrite, Category = "GameManager")
void OnNewStepLoaded(const FText &StepName)
Function for overriding. Called when a new step is loaded.
TArray< FScriptInstanceData > ScriptInstancesData
UPROPERTY(BlueprintReadOnly, Category = "GamaManager|Script")
APixoVRCharacter * PlayerPawnRef
UPROPERTY(BlueprintReadWrite, Category = "GameManager")
UStoryManager * StoryManagerRef
UPROPERTY(BlueprintReadWrite, Category = "GameManager")
UStoryScriptClassData * StoryScriptClassData
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "GameManager|Script")
bool IsUsingStoryScriptData
UPROPERTY(EditDefaultsOnly, Category = "GameManager|Script")
USoundManager * SoundManagerRef
UPROPERTY(BlueprintReadWrite, Category = "GameManager")
void OnNewStoryLoaded(const FText &StepName)
Function for overriding. Called when a new story is loaded.
Event called when we on init experience.
Event called when new step is loaded.
Event called when new story is loaded.
TArray< FScriptClassData > ScriptData
UPROPERTY(EditAnywhere)
UCLASS(BlueprintType, Blueprintable, meta = (ShowWorldContexPin))
void ScriptInitialization()
UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "Script")
Struct for holding script instance data.