mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 10:52:22 +01:00
105 lines
5.0 KiB
C++
105 lines
5.0 KiB
C++
#pragma once
|
|
|
|
#include "Object.h"
|
|
|
|
#include "FortResourceItemDefinition.h"
|
|
#include "FortPlayerController.h"
|
|
#include "BuildingSMActor.h"
|
|
#include "FortPickup.h"
|
|
|
|
using UFortInventoryOwnerInterface = UObject;
|
|
|
|
struct FSpawnItemVariantParams
|
|
{
|
|
static UStruct* GetStruct()
|
|
{
|
|
static auto SpawnItemVariantsParamsStruct = FindObject<UStruct>("/Script/FortniteGame.SpawnItemVariantParams");
|
|
return SpawnItemVariantsParamsStruct;
|
|
}
|
|
|
|
static int GetStructSize()
|
|
{
|
|
static auto StructSize = GetStruct()->GetPropertiesSize();
|
|
return StructSize;
|
|
}
|
|
|
|
UFortWorldItemDefinition*& GetWorldItemDefinition()
|
|
{
|
|
static auto WorldItemDefinitionOffset = FindOffsetStruct("/Script/FortniteGame.SpawnItemVariantParams", "WorldItemDefinition");
|
|
return *(UFortWorldItemDefinition**)(__int64(this) + WorldItemDefinitionOffset);
|
|
}
|
|
|
|
int& GetNumberToSpawn()
|
|
{
|
|
static auto NumberToSpawnOffset = FindOffsetStruct("/Script/FortniteGame.SpawnItemVariantParams", "NumberToSpawn");
|
|
return *(int*)(__int64(this) + NumberToSpawnOffset);
|
|
}
|
|
|
|
uint8& GetSourceType()
|
|
{
|
|
static auto SourceTypeOffset = FindOffsetStruct("/Script/FortniteGame.SpawnItemVariantParams", "SourceType");
|
|
return *(uint8*)(__int64(this) + SourceTypeOffset);
|
|
}
|
|
|
|
uint8& GetSource()
|
|
{
|
|
static auto SourceOffset = FindOffsetStruct("/Script/FortniteGame.SpawnItemVariantParams", "Source");
|
|
return *(uint8*)(__int64(this) + SourceOffset);
|
|
}
|
|
|
|
FVector& GetDirection()
|
|
{
|
|
static auto DirectionOffset = FindOffsetStruct("/Script/FortniteGame.SpawnItemVariantParams", "Direction");
|
|
return *(FVector*)(__int64(this) + DirectionOffset);
|
|
}
|
|
|
|
FVector& GetPosition()
|
|
{
|
|
static auto PositionOffset = FindOffsetStruct("/Script/FortniteGame.SpawnItemVariantParams", "Position");
|
|
|
|
if (PositionOffset == -1)
|
|
PositionOffset = 0x2C; // wtf
|
|
|
|
return *(FVector*)(__int64(this) + PositionOffset);
|
|
}
|
|
};
|
|
|
|
class UFortKismetLibrary : public UObject
|
|
{
|
|
public:
|
|
static inline void (*K2_GiveItemToPlayerOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*K2_RemoveItemFromPlayerOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*K2_RemoveItemFromPlayerByGuidOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*GiveItemToInventoryOwnerOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*K2_RemoveFortItemFromPlayerOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline AFortPickup* (*K2_SpawnPickupInWorldOriginal)(UObject* Context, FFrame& Stack, AFortPickup** Ret);
|
|
static inline bool (*PickLootDropsOriginal)(UObject* Context, FFrame& Stack, bool* Ret);
|
|
static inline AFortPickup* (*K2_SpawnPickupInWorldWithClassOriginal)(UObject* Context, FFrame& Stack, AFortPickup** Ret);
|
|
static inline void (*CreateTossAmmoPickupForWeaponItemDefinitionAtLocationOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*K2_SpawnPickupInWorldWithLootTierOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline bool (*SpawnInstancedPickupInWorldOriginal)(UObject* Context, FFrame& Stack, bool* Ret);
|
|
static inline void (*SpawnItemVariantPickupInWorldOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*K2_GiveBuildingResourceOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
static inline void (*PickLootDropsWithNamedWeightsOriginal)(UObject* Context, FFrame& Stack, void* Ret);
|
|
|
|
static UFortResourceItemDefinition* K2_GetResourceItemDefinition(EFortResourceType ResourceType);
|
|
static void ApplyCharacterCosmetics(UObject* WorldContextObject, const TArray<UObject*>& CharacterParts, UObject* PlayerState, bool* bSuccess);
|
|
static FVector FindGroundLocationAt(UWorld* World, AActor* IgnoreActor, FVector InLocation, float TraceStartZ, float TraceEndZ, FName TraceName);
|
|
|
|
static void PickLootDropsWithNamedWeightsHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void SpawnItemVariantPickupInWorldHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static bool SpawnInstancedPickupInWorldHook(UObject* Context, FFrame& Stack, bool* Ret);
|
|
static void K2_SpawnPickupInWorldWithLootTierHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void CreateTossAmmoPickupForWeaponItemDefinitionAtLocationHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void GiveItemToInventoryOwnerHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void K2_RemoveItemFromPlayerHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void K2_RemoveItemFromPlayerByGuidHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void K2_GiveItemToPlayerHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void K2_GiveBuildingResourceHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static void K2_RemoveFortItemFromPlayerHook(UObject* Context, FFrame& Stack, void* Ret);
|
|
static AFortPickup* K2_SpawnPickupInWorldHook(UObject* Context, FFrame& Stack, AFortPickup** Ret);
|
|
static AFortPickup* K2_SpawnPickupInWorldWithClassHook(UObject* Context, FFrame& Stack, AFortPickup** Ret);
|
|
static bool PickLootDropsHook(UObject* Context, FFrame& Stack, bool* Ret);
|
|
|
|
static UClass* StaticClass();
|
|
}; |