77 lines
1.6 KiB
C++
77 lines
1.6 KiB
C++
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Blueprint/UserWidget.h"
|
|
#include "SharedDef.h"
|
|
#include "MainScreenUserWidget.generated.h"
|
|
|
|
UCLASS()
|
|
class LUCKYROBOTS_API UMainScreenUserWidget : public UUserWidget
|
|
{
|
|
GENERATED_BODY()
|
|
protected:
|
|
virtual void NativeConstruct() override;
|
|
|
|
public:
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
|
TArray<FRobotData> RobotDataList;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
|
TArray<FLevelData> LevelDataList;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
|
int32 CurrentRobotIndex;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
|
int32 CurrentLevelIndex;
|
|
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
|
int32 CurrentQualityIndex;
|
|
|
|
public:
|
|
UFUNCTION(BlueprintCallable)
|
|
void InitData();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void InitRobotData();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void InitLevelData();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
FRobotData GetCurrentRobotData() const;
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
FLevelData GetCurrentLevelData() const;
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void SelectNextRobot();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void SelectPreviousRobot();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void SelectNextLevel();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void SelectPreviousLevel();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void SelectNextQuality();
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void SelectPreviousQuality();
|
|
|
|
void UpdateSelectRobot();
|
|
void UpdateSelectLevel();
|
|
void UpdateSelectQuality();
|
|
|
|
public:
|
|
UFUNCTION(BlueprintImplementableEvent)
|
|
void BPUpdateSelectRobot();
|
|
UFUNCTION(BlueprintImplementableEvent)
|
|
void BPUpdateSelectLevel();
|
|
UFUNCTION(BlueprintImplementableEvent)
|
|
void BPUpdateSelectQuality();
|
|
};
|