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 SetRemovePrefab(
TSubclassOf<AActor> RemoveBlueprint,
TSubclassOf<AActor> ToolBlueprint,
AActor* RemoveAttachActor = nullptr,
USceneComponent* RemoveAttachComponent = nullptr,
FName RemoveSocketName = NAME_None,
AActor* ToolAttachActor = nullptr,
USceneComponent* ToolAttachComponent = nullptr,
FName ToolSocketName = NAME_None
);
FRemoveGroup SetRemovePrefabLong(
FString grabbablePrefabPath,
FString removePrefabPath,
AActor* removePrefabParent = nullptr,
FString _toolPrefabPath = "",
InheritTransformFrom _inheritTransformGrabbale = none,
InheritTransformFrom _inheritTransformRemove = none
);