(Feat) Add MainMenu
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
// Fill out your copyright notice in the Description page of Project Settings.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "Blueprint/UserWidget.h"
|
||||
#include "PauseMenuWidget.generated.h"
|
||||
|
||||
class UButton;
|
||||
|
||||
/**
|
||||
* Le menu de pause : trois boutons par-dessus la partie figee.
|
||||
*
|
||||
* Comme UMainMenuWidget, il ne decide de rien -- il appelle
|
||||
* AFpsPlayerController. Mettre SetPause ou OpenLevel ici serait doublement
|
||||
* faux : un widget n'existe que sur la machine du joueur local, et la mise en
|
||||
* pause appartient a l'autorite.
|
||||
*
|
||||
* Classe Abstract : on cree un WBP_PauseMenu qui en herite.
|
||||
*/
|
||||
UCLASS(Abstract)
|
||||
class SURVIVAL_PROJET_API UPauseMenuWidget : public UUserWidget
|
||||
{
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
virtual void NativeConstruct() override;
|
||||
virtual void NativeDestruct() override;
|
||||
|
||||
protected:
|
||||
/** Reprend la partie. Nomme exactement "ResumeButton" dans le WBP. */
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<UButton> ResumeButton;
|
||||
|
||||
/** Retour au menu principal, apres confirmation. */
|
||||
UPROPERTY(meta = (BindWidget))
|
||||
TObjectPtr<UButton> QuitToMenuButton;
|
||||
|
||||
/**
|
||||
* BindWidgetOptional : un WBP_PauseMenu sans bouton Reglages reste valide.
|
||||
*
|
||||
* Pas de bouton "Quitter le jeu" ici, volontairement : la sortie se fait
|
||||
* depuis le menu principal, ou l'on repasse de toute facon.
|
||||
*/
|
||||
UPROPERTY(meta = (BindWidgetOptional))
|
||||
TObjectPtr<UButton> SettingsButton;
|
||||
|
||||
private:
|
||||
UFUNCTION()
|
||||
void HandleResumeClicked();
|
||||
|
||||
UFUNCTION()
|
||||
void HandleSettingsClicked();
|
||||
|
||||
UFUNCTION()
|
||||
void HandleQuitToMenuClicked();
|
||||
};
|
||||
Reference in New Issue
Block a user