// Project Lab - NHTV Igad #pragma once #include "MenuItemBase.h" #include "SplashScreenItem.generated.h" /** * */ UCLASS() class UNREALPROJECT_API USplashScreenItem : public UMenuItemBase { GENERATED_BODY() public: USplashScreenItem(const FObjectInitializer& init); virtual void NativeConstruct() override; virtual void NativeTick(const FGeometry& MyGeometry, float InDeltaTime) override; UFUNCTION(BlueprintNativeEvent, Category = "SplashItem") void OnStarted(); UFUNCTION(BlueprintNativeEvent, Category = "SplashItem") void OnEnd(); UFUNCTION(BlueprintCallable, Category = "SplashItem") void Skip(); void Start(); void End(); UFUNCTION(BlueprintCallable, Category="Media") FVector2D GetMediaSize(class UMediaTexture* mediaTexture) const; UFUNCTION(BlueprintCallable, Category="SplashItem") float GetFade() const; UFUNCTION(BlueprintCallable, Category = "SplashItem") float GetFadeOut() const; UFUNCTION(BlueprintCallable, Category="SplashItem") float GetRate() const; UPROPERTY(BlueprintReadWrite, EditDefaultsOnly, Category = "SplashItem") float fadeDuration; UPROPERTY(BlueprintReadWrite, EditAnywhere, Category="SplashItem") float duration; UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "SplashItem") bool fadeEnabled; private: bool m_started; float m_lifetime; };