A Demo Project for the UnrealEngineSDK
Loading...
Searching...
No Matches
StoryScript.h
Go to the documentation of this file.
1// Copyright(c) 2018 PixoVR, LLC. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "GameFramework/GameMode.h"
8#include "UObject/Object.h"
9#include "StoryScript.generated.h"
10
11class UStoryScript;
12class UGameManager;
13
17USTRUCT(BlueprintType)
19{
22 UPROPERTY(EditAnywhere, BlueprintReadWrite)
24 UPROPERTY(EditAnywhere, BlueprintReadWrite)
25 TSubclassOf<UStoryScript> StepScriptClass;
26};
27
31USTRUCT(BlueprintType)
33{
35
37 {
38 StepName = FText::GetEmpty();
39 StepScriptInstance = nullptr;
40 }
41
42 FScriptInstanceData(FText StepName_1, UStoryScript* StepScriptInstance_1)
43 {
44 StepName = StepName_1;
45 StepScriptInstance = StepScriptInstance_1;
46 }
47
48 UPROPERTY(EditAnywhere, BlueprintReadWrite)
50 UPROPERTY(EditAnywhere, BlueprintReadWrite)
51 UStoryScript* StepScriptInstance;
52};
53
57UCLASS()
58class PIXOCORE_API UStoryScriptClassData : public UDataAsset
59{
61
62public:
63 UPROPERTY(EditAnywhere)
64 TArray<FScriptClassData> ScriptData; //<! Array of script class data.
65};
66
70UCLASS(BlueprintType, Blueprintable, meta = (ShowWorldContexPin))
71class PIXOCORE_API UStoryScript : public UObject
72{
73 GENERATED_BODY()
74
75public:
80 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "Script")
81 void ExecuteScript(AActor* Instigator);
83 UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "Script")
84 void ScriptInitialization();
85
91 UFUNCTION(BlueprintCallable, Category = "Script")
92 void GetAllActorsOfClass (TSubclassOf<AActor> ActorClass, TArray<AActor*>& OutActors);
93
94 UPROPERTY(BlueprintReadWrite, Category = "Script")
95 AActor* CurrentInstigator;
96
97 UPROPERTY(BlueprintReadWrite, Category = "Script")
98 AGameModeBase* GameModeRef;
99
100 UPROPERTY(BlueprintReadWrite, Category = "Script")
101 UGameManager* GameManagerRef;
103 UPROPERTY(BlueprintReadWrite, Category = "Script")
104 APawn* PlayerPawnRef;
105
114 UFUNCTION(BlueprintCallable)
115 ABaseStoryActor* SpawnStoryActorWithSpecificSteps(
116 TSubclassOf<ABaseStoryActor> ActorClass,
117 FTransform SpawnTransform,
118 TArray<FText> ActiveSteps,
119 TArray<FText> HighlightSteps);
120};
Base class for story actors.
Manager for managing player experience, accepts various events such as player teleportation,...
Definition GameManager.h:21
Data asset class for storing story script class data.
Definition StoryScript.h:83
GENERATED_BODY()
TArray< FScriptClassData > ScriptData
UPROPERTY(EditAnywhere)
Definition StoryScript.h:91
UCLASS(BlueprintType, Blueprintable, meta = (ShowWorldContexPin))
AActor * CurrentInstigator
UPROPERTY(BlueprintReadWrite, Category = "Script")
void ExecuteScript(AActor *Instigator)
Executes the script logic. Will be called by all actors active on current step.
APawn * PlayerPawnRef
UPROPERTY(BlueprintReadWrite, Category = "Script")
UGameManager * GameManagerRef
UPROPERTY(BlueprintReadWrite, Category = "Script")
AGameModeBase * GameModeRef
UPROPERTY(BlueprintReadWrite, Category = "Script")
GENERATED_BODY()
void ScriptInitialization()
UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "Script")
Struct for holding script class data.
Definition StoryScript.h:22
TSubclassOf< UStoryScript > StepScriptClass
UPROPERTY(EditAnywhere, BlueprintReadWrite)
Definition StoryScript.h:36
FText StepName
UPROPERTY(EditAnywhere, BlueprintReadWrite)
Definition StoryScript.h:30
Struct for holding script instance data.
Definition StoryScript.h:47
FText StepName
UPROPERTY(EditAnywhere, BlueprintReadWrite)
Definition StoryScript.h:67
FScriptInstanceData(FText StepName_1, UStoryScript *StepScriptInstance_1)
Definition StoryScript.h:56
UStoryScript * StepScriptInstance
UPROPERTY(EditAnywhere, BlueprintReadWrite)
Definition StoryScript.h:73