diff --git a/Source/SenseGlove/Private/SenseGlove/Components/SGTouchComponent.cpp b/Source/SenseGlove/Private/SenseGlove/Components/SGTouchComponent.cpp index 75662e1c..64e1b452 100644 --- a/Source/SenseGlove/Private/SenseGlove/Components/SGTouchComponent.cpp +++ b/Source/SenseGlove/Private/SenseGlove/Components/SGTouchComponent.cpp @@ -87,6 +87,17 @@ USGTouchComponent::USGTouchComponent(const FObjectInitializer& ObjectInitializer : Super(ObjectInitializer), Pimpl(TUniquePtr(new FImpl{this}, PimplDeleter)) { + ThumbBuzzLevel = 0; + IndexBuzzLevel = 0; + MiddleBuzzLevel = 0; + RingBuzzLevel = 0; + PinkyBuzzLevel = 0; + + ThumbForceFeedbackLevel = 100; + IndexForceFeedbackLevel = 100; + MiddleForceFeedbackLevel = 100; + RingForceFeedbackLevel = 100; + PinkyForceFeedbackLevel = 100; } USGTouchComponent::FImpl::FImpl(USGTouchComponent* InOwner) diff --git a/Source/SenseGlove/Public/SenseGlove/Components/SGTouchComponent.h b/Source/SenseGlove/Public/SenseGlove/Components/SGTouchComponent.h index 90516b18..ab32fbb2 100644 --- a/Source/SenseGlove/Public/SenseGlove/Components/SGTouchComponent.h +++ b/Source/SenseGlove/Public/SenseGlove/Components/SGTouchComponent.h @@ -50,6 +50,47 @@ class SENSEGLOVE_API USGTouchComponent : public USceneComponent public: static bool IsTouchable(const AActor* Actor); +private: + UPROPERTY(EditAnywhere, Category="SenseGlove | Buzz Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 ThumbBuzzLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Buzz Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 IndexBuzzLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Buzz Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 MiddleBuzzLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Buzz Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 RingBuzzLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Buzz Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 PinkyBuzzLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Force Feedback Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 ThumbForceFeedbackLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Force Feedback Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 IndexForceFeedbackLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Force Feedback Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 MiddleForceFeedbackLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Force Feedback Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 RingForceFeedbackLevel; + + UPROPERTY(EditAnywhere, Category="SenseGlove | Force Feedback Level", + meta=(AllowPrivateAccess="false", ClampMin = "0", ClampMax = "100", UIMin = "0", UIMax = "100")) + int32 PinkyForceFeedbackLevel; + private: struct FImpl; @@ -62,4 +103,103 @@ private: FImplDeleter PimplDeleter; public: + FORCEINLINE int32 GetThumbBuzzLevel() const + { + return ThumbBuzzLevel; + } + + FORCEINLINE void SetThumbBuzzLevel(const int32 Level) + { + ThumbBuzzLevel = Level; + } + + FORCEINLINE int32 GetIndexBuzzLevel() const + { + return IndexBuzzLevel; + } + + FORCEINLINE void SetIndexBuzzLevel(const int32 Level) + { + IndexBuzzLevel = Level; + } + + FORCEINLINE int32 GetMiddleBuzzLevel() const + { + return MiddleBuzzLevel; + } + + FORCEINLINE void SetMiddleBuzzLevel(const int32 Level) + { + MiddleBuzzLevel = Level; + } + + FORCEINLINE int32 GetRingBuzzLevel() const + { + return RingBuzzLevel; + } + + FORCEINLINE void SetRingBuzzLevel(const int32 Level) + { + RingBuzzLevel = Level; + } + + FORCEINLINE int32 GetPinkyBuzzLevel() const + { + return PinkyBuzzLevel; + } + + FORCEINLINE void SetPinkyBuzzLevel(const int32 Level) + { + PinkyBuzzLevel = Level; + } + + FORCEINLINE int32 GetThumbForceFeedbackLevel() const + { + return ThumbForceFeedbackLevel; + } + + FORCEINLINE void SetThumbForceFeedbackLevel(const int32 Level) + { + ThumbForceFeedbackLevel = Level; + } + + FORCEINLINE int32 GetIndexForceFeedbackLevel() const + { + return IndexForceFeedbackLevel; + } + + FORCEINLINE void SetIndexForceFeedbackLevel(const int32 Level) + { + IndexForceFeedbackLevel = Level; + } + + FORCEINLINE int32 GetMiddleForceFeedbackLevel() const + { + return MiddleForceFeedbackLevel; + } + + FORCEINLINE void SetMiddleForceFeedbackLevel(const int32 Level) + { + MiddleForceFeedbackLevel = Level; + } + + FORCEINLINE int32 GetRingForceFeedbackLevel() const + { + return RingForceFeedbackLevel; + } + + FORCEINLINE void SetRingForceFeedbackLevel(const int32 Level) + { + RingForceFeedbackLevel = Level; + } + + FORCEINLINE int32 GetPinkyForceFeedbackLevel() const + { + return PinkyForceFeedbackLevel; + } + + FORCEINLINE void SetPinkyForceFeedbackLevel(const int32 Level) + { + PinkyForceFeedbackLevel = Level; + } }; \ No newline at end of file diff --git a/Source/SenseGloveKismet/Private/SGKismet/SGTouchComponentKismetLibrary.cpp b/Source/SenseGloveKismet/Private/SGKismet/SGTouchComponentKismetLibrary.cpp index 3a29e24a..ac738145 100644 --- a/Source/SenseGloveKismet/Private/SGKismet/SGTouchComponentKismetLibrary.cpp +++ b/Source/SenseGloveKismet/Private/SGKismet/SGTouchComponentKismetLibrary.cpp @@ -43,4 +43,104 @@ bool UTouchComponentKismetLibrary::IsTouchable(const AActor* Actor) { return USGTouchComponent::IsTouchable(Actor); +} + +int32 UTouchComponentKismetLibrary::GetThumbBuzzLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetThumbBuzzLevel(); +} + +void UTouchComponentKismetLibrary::SetThumbBuzzLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetThumbBuzzLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetIndexBuzzLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetIndexBuzzLevel(); +} + +void UTouchComponentKismetLibrary::SetIndexBuzzLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetIndexBuzzLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetMiddleBuzzLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetMiddleBuzzLevel(); +} + +void UTouchComponentKismetLibrary::SetMiddleBuzzLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetMiddleBuzzLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetRingBuzzLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetRingBuzzLevel(); +} + +void UTouchComponentKismetLibrary::SetRingBuzzLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetRingBuzzLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetPinkyBuzzLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetPinkyBuzzLevel(); +} + +void UTouchComponentKismetLibrary::SetPinkyBuzzLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetPinkyBuzzLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetThumbForceFeedbackLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetThumbForceFeedbackLevel(); +} + +void UTouchComponentKismetLibrary::SetThumbForceFeedbackLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetThumbForceFeedbackLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetIndexForceFeedbackLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetIndexForceFeedbackLevel(); +} + +void UTouchComponentKismetLibrary::SetIndexForceFeedbackLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetIndexForceFeedbackLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetMiddleForceFeedbackLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetMiddleForceFeedbackLevel(); +} + +void UTouchComponentKismetLibrary::SetMiddleForceFeedbackLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetMiddleForceFeedbackLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetRingForceFeedbackLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetRingForceFeedbackLevel(); +} + +void UTouchComponentKismetLibrary::SetRingForceFeedbackLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetRingForceFeedbackLevel(Level); +} + +int32 UTouchComponentKismetLibrary::GetPinkyForceFeedbackLevel(const USGTouchComponent* TouchComponent) +{ + return TouchComponent->GetPinkyForceFeedbackLevel(); +} + +void UTouchComponentKismetLibrary::SetPinkyForceFeedbackLevel(USGTouchComponent* TouchComponent, const int32 Level) +{ + TouchComponent->SetPinkyForceFeedbackLevel(Level); } \ No newline at end of file diff --git a/Source/SenseGloveKismet/Public/SGKismet/SGTouchComponentKismetLibrary.h b/Source/SenseGloveKismet/Public/SGKismet/SGTouchComponentKismetLibrary.h index 482d5a96..44619d03 100644 --- a/Source/SenseGloveKismet/Public/SGKismet/SGTouchComponentKismetLibrary.h +++ b/Source/SenseGloveKismet/Public/SGKismet/SGTouchComponentKismetLibrary.h @@ -42,7 +42,7 @@ #include "SGTouchComponentKismetLibrary.generated.h" class AActor; -class UTouchComponent; +class USGTouchComponent; UCLASS(meta=(ScriptName = "SesneGloveTouchComponentKismetLibrary")) class SENSEGLOVEKISMET_API UTouchComponentKismetLibrary final : public USGBlueprintFunctionLibrary @@ -52,4 +52,64 @@ class SENSEGLOVEKISMET_API UTouchComponentKismetLibrary final : public USGBluepr public: UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") static bool IsTouchable(const AActor* Actor); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetThumbBuzzLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetThumbBuzzLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetIndexBuzzLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetIndexBuzzLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetMiddleBuzzLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetMiddleBuzzLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetRingBuzzLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetRingBuzzLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetPinkyBuzzLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetPinkyBuzzLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetThumbForceFeedbackLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetThumbForceFeedbackLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetIndexForceFeedbackLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetIndexForceFeedbackLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetMiddleForceFeedbackLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetMiddleForceFeedbackLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetRingForceFeedbackLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetRingForceFeedbackLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); + + UFUNCTION(BlueprintPure, Category="SenseGlove | Components | Touch Component") + static int32 GetPinkyForceFeedbackLevel(const USGTouchComponent* TouchComponent); + + UFUNCTION(BlueprintCallable, Category="SenseGlove | Components | Touch Component") + static void SetPinkyForceFeedbackLevel(UPARAM(ref) USGTouchComponent* TouchComponent, int32 Level); }; \ No newline at end of file