Get Select Weapon Menu mostly working
This commit is contained in:
parent
1fea57b459
commit
1625c0012e
BIN
Content/Widgets/MainMenu/BP_SelectWeaponWidget.uasset
(Stored with Git LFS)
BIN
Content/Widgets/MainMenu/BP_SelectWeaponWidget.uasset
(Stored with Git LFS)
Binary file not shown.
@ -6,7 +6,6 @@
|
||||
#include "CustomButton.h"
|
||||
#include "StarterWeaponButtonDataObject.h"
|
||||
#include "StarterWeaponButtonWidget.h"
|
||||
#include "Components/Button.h"
|
||||
#include "Components/ScrollBox.h"
|
||||
#include "Kismet/GameplayStatics.h"
|
||||
|
||||
@ -17,6 +16,7 @@ void USelectWeaponWidget::NativeConstruct()
|
||||
if (BackButton)
|
||||
{
|
||||
BackButton->OnClicked.AddUniqueDynamic(this, &USelectWeaponWidget::BackButtonClicked);
|
||||
BackButton->OnFocused.AddUniqueDynamic(this, &USelectWeaponWidget::BackButtonFocused);
|
||||
}
|
||||
|
||||
if (StarterWeaponsScrollBox && StarterWeaponButtonWidgetTemplate)
|
||||
@ -41,6 +41,13 @@ void USelectWeaponWidget::NativeConstruct()
|
||||
}
|
||||
}
|
||||
|
||||
FReply USelectWeaponWidget::NativeOnMouseButtonUp(const FGeometry& InGeometry, const FPointerEvent& InMouseEvent)
|
||||
{
|
||||
CurrentFocus->SetKeyboardFocus();
|
||||
|
||||
return Super::NativeOnMouseButtonUp(InGeometry, InMouseEvent);
|
||||
}
|
||||
|
||||
void USelectWeaponWidget::BackButtonClicked()
|
||||
{
|
||||
if (PreviousWidget)
|
||||
@ -56,3 +63,8 @@ void USelectWeaponWidget::BackButtonClicked()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void USelectWeaponWidget::BackButtonFocused(FFocusEvent InFocusEvent)
|
||||
{
|
||||
SetCurrentFocus(BackButton);
|
||||
}
|
||||
|
@ -42,9 +42,14 @@ protected:
|
||||
|
||||
virtual void NativeConstruct() override;
|
||||
|
||||
virtual FReply NativeOnMouseButtonUp(const FGeometry& InGeometry, const FPointerEvent& InMouseEvent) override;
|
||||
|
||||
private:
|
||||
UFUNCTION()
|
||||
void BackButtonClicked();
|
||||
|
||||
UFUNCTION()
|
||||
void BackButtonFocused(FFocusEvent InFocusEvent);
|
||||
|
||||
TArray<TObjectPtr<UStarterWeaponButtonWidget>> Buttons;
|
||||
};
|
||||
|
@ -3,6 +3,7 @@
|
||||
|
||||
#include "StarterWeaponButtonWidget.h"
|
||||
|
||||
#include "SelectWeaponWidget.h"
|
||||
#include "StarterWeaponButtonDataObject.h"
|
||||
#include "Blueprint/WidgetBlueprintLibrary.h"
|
||||
#include "Components/Image.h"
|
||||
@ -10,6 +11,13 @@
|
||||
#include "Kismet/GameplayStatics.h"
|
||||
#include "vampires/VampireGameInstance.h"
|
||||
|
||||
void UStarterWeaponButtonWidget::NativeConstruct()
|
||||
{
|
||||
Super::NativeConstruct();
|
||||
|
||||
OnFocused.AddUniqueDynamic(this, &UStarterWeaponButtonWidget::SetFocusInParent);
|
||||
}
|
||||
|
||||
void UStarterWeaponButtonWidget::SetData(UStarterWeaponButtonDataObject* ListItemObject)
|
||||
{
|
||||
if (UStarterWeaponButtonDataObject* Item = Cast<UStarterWeaponButtonDataObject>(ListItemObject))
|
||||
@ -44,3 +52,11 @@ void UStarterWeaponButtonWidget::OnButtonClicked()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void UStarterWeaponButtonWidget::SetFocusInParent(FFocusEvent InFocusEvent)
|
||||
{
|
||||
if (USelectWeaponWidget* StarterMenu = Cast<USelectWeaponWidget>(Parent))
|
||||
{
|
||||
StarterMenu->SetCurrentFocus(this);
|
||||
}
|
||||
}
|
||||
|
@ -33,9 +33,15 @@ class VAMPIRES_API UStarterWeaponButtonWidget : public UCustomButton, public IUs
|
||||
UPROPERTY()
|
||||
TObjectPtr<UUserWidget> Parent;
|
||||
|
||||
protected:
|
||||
virtual void NativeConstruct() override;
|
||||
|
||||
public:
|
||||
void SetData(UStarterWeaponButtonDataObject* ListItemObject);
|
||||
|
||||
private:
|
||||
virtual void OnButtonClicked() override;
|
||||
|
||||
UFUNCTION()
|
||||
void SetFocusInParent(FFocusEvent InFocusEvent);
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user