34 lines
850 B
C
34 lines
850 B
C
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "CoreMinimal.h"
|
||
|
#include "CommonUserWidget.h"
|
||
|
|
||
|
#include "LyraWeaponUserInterface.generated.h"
|
||
|
|
||
|
class ULyraWeaponInstance;
|
||
|
|
||
|
UCLASS()
|
||
|
class ULyraWeaponUserInterface : public UCommonUserWidget
|
||
|
{
|
||
|
GENERATED_BODY()
|
||
|
|
||
|
public:
|
||
|
ULyraWeaponUserInterface(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get());
|
||
|
|
||
|
virtual void NativeConstruct() override;
|
||
|
virtual void NativeDestruct() override;
|
||
|
virtual void NativeTick(const FGeometry& MyGeometry, float InDeltaTime) override;
|
||
|
|
||
|
UFUNCTION(BlueprintImplementableEvent)
|
||
|
void OnWeaponChanged(ULyraWeaponInstance* OldWeapon, ULyraWeaponInstance* NewWeapon);
|
||
|
|
||
|
private:
|
||
|
void RebuildWidgetFromWeapon();
|
||
|
|
||
|
private:
|
||
|
UPROPERTY(Transient)
|
||
|
TObjectPtr<ULyraWeaponInstance> CurrentInstance;
|
||
|
};
|