// Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "Subsystems/GameInstanceSubsystem.h" #include "UISubsystem.generated.h" DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnStartTracing); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnEndTracing); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnStartCapture); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnStopCapture); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnReset); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnOpenMenuStateChanged, bool, Open); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnAllRandomMenuStateChanged, bool, Open); /** * */ UCLASS() class LUCKYWORLDV2_API UUISubsystem : public UGameInstanceSubsystem { GENERATED_BODY() public: UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnStartTracing OnStartTracing; UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnEndTracing OnEndTracing; UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnStartCapture OnStartCapture; UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnStopCapture OnStopCapture; UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnReset OnReset; UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnOpenMenuStateChanged OnOpenMenuStateChanged; UPROPERTY(BlueprintCallable, BlueprintAssignable) FOnAllRandomMenuStateChanged OnAllRandomMenuStateChanged; };