13class WEAPONSYSTEM_API
UWeaponBPLib : public UBlueprintFunctionLibrary
20 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System")
21 static UDataTable* LoadDefaultWeaponDataTable();
23 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
24 static UDataTable* LoadWeaponDataTableFromGameState(
const UObject* WorldContextObject);
27 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
28 static UDataTable* LoadWeaponEffectsDataTableFromGameState(
const UObject* WorldContextObject);
31 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System")
32 static UDataTable* LoadDefaultWeaponPickupDataTable();
34 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
35 static UDataTable* LoadWeaponPickupDataTableFromGameState(
const UObject* WorldContextObject);
38 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System")
39 static UDataTable* LoadDefaultWeaponAttachmentDataTable();
40 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
41 static UDataTable* LoadWeaponAttachmentDataTableFromGameState(
const UObject* WorldContextObject);
44 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
45 static FWeaponData_T GetDefaultWeaponData(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
48 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
49 static FWeaponStats_T GetWeaponStats(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
51 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
52 static FWeaponEffects_T GetWeaponEffects(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
54 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
55 static FWeaponAttachment GetWeaponAttachment(
const UObject* WorldContextObject,
const FString& WeaponAttachmentID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
57 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
58 static TArray<EAttachmentType> GetWeaponAttachmentTypes(
const UObject* WorldContextObject,
const TArray<FString>& WeaponAttachmentIDs, UDataTable* DataTable =
nullptr);
60 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
61 static FString GetWeaponDisplayName(
const UObject* WorldContextObject,
const FString& WeaponID, UDataTable* DataTable =
nullptr);
63 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
64 static UTexture2D* GetWeaponThumbnail(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
66 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
67 static USkeletalMesh* GetWeaponMesh(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
69 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
70 static bool GetIsWeaponNonLethal(
const UObject* WorldContextObject,
const FString& WeaponID, UDataTable* DataTable =
nullptr);
72 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
73 static bool GetDoesWeaponHaveAutoMode(
const UObject* WorldContextObject,
const FString& WeaponID, UDataTable* DataTable =
nullptr);
75 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
76 static bool GetDoesWeaponHaveBurstMode(
const UObject* WorldContextObject,
const FString& WeaponID, UDataTable* DataTable =
nullptr);
78 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
79 static float GetWeaponReloadTime(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
81 UFUNCTION(BlueprintPure, BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
82 static int32 GetWeaponMaxAmmo(
const UObject* WorldContextObject,
const FString& WeaponID,
bool& bSuccess, UDataTable* DataTable =
nullptr);
85 UFUNCTION(BlueprintCallable, Category=
"Weapon System", meta=(WorldContext=
"WorldContextObject"))
86 static int32 AddWeaponAmmo(
const UObject* WorldContextObject,
const FString& WeaponID, int32 AmmoToAdd, int32& TotalAmmo,
bool& bSuccess, UDataTable* DataTable =
nullptr);