Inherited Members
public:
// classes
class InstrumentTransforms;
// fields
TArray<FORamaVR> afterSpawnFunctions;
TMap<AActor*, UAnimSequence*> CharacterAnimationsMap;
TMap<AActor*, UAnimSequence*> CharacterUndoAnimations;
TArray<AActor*> BoundActorCharacterAnimated;
USceneComponent* _rootComp;
int OverrideSetPath = -1;
int AlternativePath = -1;
FString ActionName = TEXT("");
// methods
FString GetActionName();
void SetActioName();
AAction* GetActionNode();
void SetActionNode();
int32 GetAlternativePath();
void SetAlternativePath();
virtual void Perform() = 0;
virtual void Undo() = 0;
virtual void Initialize() = 0;
virtual void InitializeHolograms() = 0;
virtual void DifficultyRestrictions() = 0;
virtual void SetNextModule(FORamaVR action) = 0;
virtual void SetNextModulePath(FORamaVRSetPath Action, int pathToSet) = 0;
virtual void Initialize();
virtual void Perform();
virtual void Undo();
virtual void InitializeHolograms();
void SetAfterSpawn(FORamaVR afterSpawnFunction);
void SetUndoAction(FORamaVR undoActionFunction);
void SetPerformAction(
FORamaVR performActionFunction,
int numOfTriggerToPlay = -1
);
void BindCharacterAnimationToPerform(
TSubclassOf<AActor> Actor,
UAnimSequence* seq
);
void BindCharacterAnimationOnUndo(TSubclassOf<AActor> Actor, UAnimSequence* seq);
virtual void DifficultyRestrictions();
virtual void ActionCall();
void SetEventListener(FString _event);
void SetHologramObject(
TSubclassOf<AActor> Class,
AActor* AttachActor = nullptr,
USceneComponent* AttachParent = nullptr,
FName SocketName = NAME_None
);
virtual void SetNextModule(FORamaVR action);
virtual void SetNextModulePath(FORamaVRSetPath Action, int pathToSet);
FString GetClassName() const;
virtual void Initialize();
virtual void Perform();
virtual void Undo();
void SetUsePrefab(
TSubclassOf<AActor> UseBlueprint,
TSubclassOf<AActor> ColliderBlueprint,
bool UsePrefabAlreadyExists = false,
AActor* UseAttachActor = nullptr,
USceneComponent* UseAttachComponent = nullptr,
FName UseSocketName = NAME_None,
AActor* ColliderAttachActor = nullptr,
USceneComponent* ColliderAttachComponent = nullptr,
FName ColliderSocketName = NAME_None
);