class ABPParallelAction

#include <BPParallelAction.h>

class ABPParallelAction: public AParallelAction
{
public:
    // methods

    virtual void Initialize();
    virtual void Perform();
    virtual void Undo();
    void InitializeBP();
    void PerformBP();
    void UndoBP();
};

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("");
    TMap<int, FIActionGroup> iActionMap;

    // 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;
    UPROPERTY();
    void InsertActionToMap(int numberOfPath, ABasePrototype* iAction);
    void InsertIActionToMap(int numberOfPath, IIAction* iAction);
    UFUNCTION(BlueprintCallable, Category = "Mages|Actions");
    UFUNCTION();
    virtual void Initialize();
    virtual void Perform();
    virtual void Undo();
    virtual void DifficultyRestrictions();
    void OnSetPath(int PathNum);