40 lines
1.3 KiB
C++
40 lines
1.3 KiB
C++
// Copyright 2026 PHY. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Kismet/BlueprintFunctionLibrary.h"
|
|
#include "Items/PHYItemFragment_PropertySet.h"
|
|
#include "PHYItemBlueprintLibrary.generated.h"
|
|
|
|
class UGIS_ItemInstance;
|
|
|
|
UCLASS()
|
|
class UPHYItemBlueprintLibrary : public UBlueprintFunctionLibrary
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
UFUNCTION(BlueprintCallable, BlueprintPure, Category="PHY|Item")
|
|
static EPHYItemArchetype GetItemArchetype(const UGIS_ItemInstance* ItemInstance);
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure, Category="PHY|Item")
|
|
static EPHYEquipSlotType GetEquipSlotType(const UGIS_ItemInstance* ItemInstance);
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure, Category="PHY|Item")
|
|
static bool IsWeaponItem(const UGIS_ItemInstance* ItemInstance);
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure, Category="PHY|Item")
|
|
static bool IsEquipmentItem(const UGIS_ItemInstance* ItemInstance);
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure, Category="PHY|Item")
|
|
static bool IsConsumableItem(const UGIS_ItemInstance* ItemInstance);
|
|
|
|
UFUNCTION(BlueprintCallable, BlueprintPure, Category="PHY|Item")
|
|
static FPHYConsumablePayload GetConsumablePayload(const UGIS_ItemInstance* ItemInstance);
|
|
|
|
private:
|
|
static const UPHYItemFragment_PropertySet* FindPropertyFragment(const UGIS_ItemInstance* ItemInstance);
|
|
};
|
|
|