haxis/Source/UnrealProject/Effects/EffectFunctionLibrary.h

43 lines
2.3 KiB
C++

// Project Lab - NHTV Igad
#pragma once
#include "Kismet/BlueprintFunctionLibrary.h"
#include "EffectFunctionLibrary.generated.h"
/**
*
*/
UCLASS()
class UNREALPROJECT_API UEffectFunctionLibrary : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
UFUNCTION(BlueprintCallable, Category = "Effect", meta = (WorldContext="worldContextObject"))
static class AEffect* CreateEffect(UObject* worldContextObject, TSubclassOf<class AEffect> effectClass,
class AActor* followObject = nullptr, float startTime = 0.0f, float durationOverride = 0.0f, bool clientSideOnly = false);
UFUNCTION(BlueprintCallable, Category = "Effect", meta = (WorldContext = "worldContextObject"))
static class AEffect* CreateEffectAt(UObject* worldContextObject, TSubclassOf<class AEffect> effectClass,
const FTransform& transform, float startTime = 0.0f, float durationOverride = 0.0f, bool clientSideOnly = false);
UFUNCTION(BlueprintCallable, Category = "Effect", meta = (WorldContext = "worldContextObject"))
static class AEffect* CreateEffectAttached(UObject* worldContextObject, TSubclassOf<class AEffect> effectClass,
const FTransform& transform, USceneComponent* InParent, FName InSocketName, EAttachLocation::Type AttachLocationType, float startTime = 0.0f, float durationOverride = 0.0f, bool clientSideOnly = false);
UFUNCTION(BlueprintCallable, Category = "Effect")
static class AAbilityIndicator* CreateAbilityIndicator(TSubclassOf<class AAbilityIndicator> AAbilityIndicatorClass,
class ANetworkCharacter* spawner, class AActor* followObject, FVector scale, float durationOverride = 0.0f, bool center = true);
UFUNCTION(BlueprintCallable, Category = "Effect")
static class AAbilityIndicator* CreateAbilityIndicatorAt(TSubclassOf<class AAbilityIndicator> AAbilityIndicatorClass, ANetworkCharacter * spawner, const FTransform& transform, FVector scale, float durationOverride, bool center);
UFUNCTION(BlueprintCallable, Category = "Effect", meta = (WorldContext="worldContextObject"))
static void PlaySoundEffect2D(UObject* worldContextObject, USoundBase* sound);
//from is the character who's skeleton is cloned, to is who gets the cloned skeleton
UFUNCTION(BlueprintCallable, Category = "Effect")
static void DuplicateAppearance(class ACharacterBase* from, class ACharacterBase* to);
};