Files
Project-Reboot-3.0/Project Reboot 3.0/FortWeaponItemDefinition.cpp
2024-03-21 18:27:42 -04:00

38 lines
1.0 KiB
C++

#include "FortWeaponItemDefinition.h"
#include "DataTable.h"
#include "SoftObjectPtr.h"
int UFortWeaponItemDefinition::GetClipSize()
{
static auto WeaponStatHandleOffset = GetOffset("WeaponStatHandle");
auto& WeaponStatHandle = Get<FDataTableRowHandle>(WeaponStatHandleOffset);
auto Table = WeaponStatHandle.DataTable;
if (!Table)
return 0;
auto& RowMap = Table->GetRowMap<void>();
void** RowPtr = RowMap.Find(WeaponStatHandle.RowName);
if (!RowPtr)
return 0;
static auto ClipSizeOffset = FindOffsetStruct("/Script/FortniteGame.FortBaseWeaponStats", "ClipSize");
return *(int*)(__int64(*RowPtr) + ClipSizeOffset);
}
UFortWorldItemDefinition* UFortWeaponItemDefinition::GetAmmoData()
{
static auto AmmoDataOffset = GetOffset("AmmoData");
auto AmmoData = GetPtr<TSoftObjectPtr<UFortWorldItemDefinition>>(AmmoDataOffset);
return AmmoData->Get();
}
UClass* UFortWeaponItemDefinition::StaticClass()
{
static auto Class = FindObject<UClass>(L"/Script/FortniteGame.FortWeaponItemDefinition");
return Class;
}