Compare commits

..

No commits in common. "4c727e4a1560c49bc64ffd6b0e217b113dd57eec" and "4ff8d8eca31d10487842cedcdb2bc8a3b9aea476" have entirely different histories.

12 changed files with 8 additions and 192 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -49,10 +49,10 @@ UBehaviorTree* AEnemyCharacter::GetBehaviorTree()
void AEnemyCharacter::OnDamaged(FDamageInfo damageInfo)
{
// if (OnDamagedSound)
// {
if (OnDamagedSound)
{
UGameplayStatics::PlaySoundAtLocation(GetWorld(), OnDamagedSound, GetActorLocation());
// }
}
if (OnDamagedNiagaraSystem)
{

View File

@ -4,10 +4,7 @@
#include "SelectWeaponWidget.h"
#include "MainMenuWidget.h"
#include "StarterWeaponButtonDataObject.h"
#include "UpgradeButtonDataObject.h"
#include "Components/Button.h"
#include "Components/ListView.h"
#include "Kismet/GameplayStatics.h"
void USelectWeaponWidget::NativeConstruct()
@ -18,17 +15,6 @@ void USelectWeaponWidget::NativeConstruct()
{
BackButton->OnClicked.AddUniqueDynamic(this, &USelectWeaponWidget::BackButtonClicked);
}
if (UpgradesListView)
{
// Get a list of weapons that the player owns that can be upgraded
for (TSubclassOf<AWeapon> weapon : starterWeapons)
{
UStarterWeaponButtonDataObject* Temp = NewObject<UStarterWeaponButtonDataObject>(this);
Temp->SetData(weapon, this);
UpgradesListView->AddItem(Temp);
}
}
}
void USelectWeaponWidget::BackButtonClicked()

View File

@ -7,7 +7,6 @@
#include "SelectWeaponWidget.generated.h"
class AWeapon;
class UListView;
class UButton;
/**
@ -24,9 +23,6 @@ public:
UPROPERTY(BlueprintReadWrite, meta=(BindWidget))
UListView* UpgradesListView;
UPROPERTY(EditDefaultsOnly)
TArray<TSubclassOf<AWeapon>> starterWeapons;
UPROPERTY(EditDefaultsOnly, BlueprintReadWrite)
TSubclassOf<class UUserWidget> PreviousWidget;

View File

@ -1,37 +0,0 @@
// Louis Hobbs | 2024-2025
#include "StarterWeaponButtonDataObject.h"
#include "vampires/Weapon.h"
void UStarterWeaponButtonDataObject::SetData(AWeapon* Weapon, UUserWidget* parent)
{
WeaponName = Weapon->Name;
Description = Weapon->UpgradeDescriptions[Weapon->CurrentLevel];
WeaponIcon = Weapon->Icon;
WeaponInstance = Weapon;
Parent = parent;
}
void UStarterWeaponButtonDataObject::SetData(TSubclassOf<AWeapon> Weapon, UUserWidget* parent)
{
AWeapon* temp = NewObject<AWeapon>(this, Weapon);
if (temp)
{
WeaponName = temp->Name;
Description = temp->Description;
WeaponIcon = temp->Icon;
WeaponTemplate = Weapon;
Parent = parent;
}
}
void UStarterWeaponButtonDataObject::SetData(FText weaponName, FText description, TObjectPtr<UTexture2D> weaponIcon,
UUserWidget* parent)
{
WeaponName = weaponName;
Description = description;
WeaponIcon = weaponIcon;
Parent = parent;
}

View File

@ -1,39 +0,0 @@
// Louis Hobbs | 2024-2025
#pragma once
#include "CoreMinimal.h"
#include "UObject/Object.h"
#include "StarterWeaponButtonDataObject.generated.h"
class AWeapon;
/**
*
*/
UCLASS()
class VAMPIRES_API UStarterWeaponButtonDataObject : public UObject
{
GENERATED_BODY()
public:
UPROPERTY(EditAnywhere, BlueprintReadWrite)
FText WeaponName;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
FText Description;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<UTexture2D> WeaponIcon;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TSubclassOf<AWeapon> WeaponTemplate;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<AWeapon> WeaponInstance;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<UUserWidget> Parent;
void SetData(AWeapon* Weapon, UUserWidget* parent);
void SetData(TSubclassOf<AWeapon> Weapon, UUserWidget* parent);
void SetData(FText weaponName, FText description, TObjectPtr<UTexture2D> weaponIcon, UUserWidget* parent);
};

View File

@ -1,37 +0,0 @@
// Louis Hobbs | 2024-2025
#include "StarterWeaponButtonWidget.h"
#include "StarterWeaponButtonDataObject.h"
#include "Components/Button.h"
#include "Components/Image.h"
#include "Components/TextBlock.h"
void UStarterWeaponButtonWidget::NativeConstruct()
{
Super::NativeConstruct();
}
void UStarterWeaponButtonWidget::NativeOnListItemObjectSet(UObject* ListItemObject)
{
UStarterWeaponButtonDataObject* Item = Cast<UStarterWeaponButtonDataObject>(ListItemObject);
if (Item)
{
WeaponNameTextBlock->SetText(Item->WeaponName);
DescriptionTextBlock->SetText(Item->Description);
WeaponIcon->SetBrushFromTexture(Item->WeaponIcon);
Parent = Item->Parent;
WeaponTemplate = Item->WeaponTemplate;
if (Body)
{
Body->OnClicked.AddUniqueDynamic(this, &UStarterWeaponButtonWidget::OnClicked);
}
}
}
void UStarterWeaponButtonWidget::OnClicked()
{
}

View File

@ -1,49 +0,0 @@
// Louis Hobbs | 2024-2025
#pragma once
#include "CoreMinimal.h"
#include "Blueprint/IUserObjectListEntry.h"
#include "Blueprint/UserWidget.h"
#include "StarterWeaponButtonWidget.generated.h"
class AWeapon;
class UTextBlock;
class UImage;
class UButton;
/**
*
*/
UCLASS()
class VAMPIRES_API UStarterWeaponButtonWidget : public UUserWidget, public IUserObjectListEntry
{
GENERATED_BODY()
public:
UPROPERTY(EditDefaultsOnly, meta=(BindWidget))
TObjectPtr<UButton> Body;
UPROPERTY(EditDefaultsOnly, meta=(BindWidget))
TObjectPtr<UImage> WeaponIcon;
UPROPERTY(EditDefaultsOnly, meta=(BindWidget))
TObjectPtr<UTextBlock> WeaponNameTextBlock;
UPROPERTY(EditDefaultsOnly, meta=(BindWidget))
TObjectPtr<UTextBlock> DescriptionTextBlock;
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TSubclassOf<AWeapon> WeaponTemplate;
UPROPERTY()
TObjectPtr<UUserWidget> Parent;
protected:
virtual void NativeConstruct() override;
virtual void NativeOnListItemObjectSet(UObject* ListItemObject) override;
private:
UFUNCTION()
virtual void OnClicked();
};

View File

@ -64,7 +64,6 @@ public:
UPROPERTY(EditAnywhere, BlueprintReadWrite)
TObjectPtr<AWeapon> WeaponInstance;
UPROPERTY()
TObjectPtr<UUserWidget> Parent;
private: