355 lines
25 KiB
C++
Executable File
355 lines
25 KiB
C++
Executable File
#pragma once
|
|
|
|
//PUBGM(0.13.5)32位SDK
|
|
//作者:清华
|
|
//Telegram:@qinghuanb666
|
|
//生成时间:Fri Apr 18 20:44:40 2025
|
|
|
|
namespace SDK
|
|
{
|
|
//---------------------------------------------------------------------------
|
|
//Classes
|
|
//---------------------------------------------------------------------------
|
|
|
|
// Class Foliage.FoliageInstancedStaticMeshComponent
|
|
// 0x0010 (0x07F0 - 0x07E0)
|
|
class UFoliageInstancedStaticMeshComponent : public UHierarchicalInstancedStaticMeshComponent
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x4]; // 0x07E0(0x0004) MISSED OFFSET
|
|
struct FScriptMulticastDelegate OnInstanceTakeRadialDamage; // 0x07E4(0x000C) (ZeroConstructor, InstancedReference, BlueprintAssignable)
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.FoliageInstancedStaticMeshComponent");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.FoliageStatistics
|
|
// 0x0000 (0x0020 - 0x0020)
|
|
class UFoliageStatistics : public UBlueprintFunctionLibrary
|
|
{
|
|
public:
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.FoliageStatistics");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
static int FoliageOverlappingSphereCount(class UObject* WorldContextObject, class UStaticMesh* StaticMesh, const struct FVector& CenterPosition, float Radius);
|
|
static int FoliageOverlappingBoxCount(class UObject* WorldContextObject, class UStaticMesh* StaticMesh, const struct FBox& Box);
|
|
};
|
|
|
|
|
|
// Class Foliage.FoliageType
|
|
// 0x0394 (0x03B0 - 0x001C)
|
|
class UFoliageType : public UObject
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x10]; // 0x001C(0x0010) MISSED OFFSET
|
|
float Density; // 0x002C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float DensityAdjustmentFactor; // 0x0030(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float Radius; // 0x0034(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
EFoliageScaling Scaling; // 0x0038(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData01[0x3]; // 0x0039(0x0003) MISSED OFFSET
|
|
struct FFloatInterval ScaleX; // 0x003C(0x0008) (Edit)
|
|
struct FFloatInterval ScaleY; // 0x0044(0x0008) (Edit)
|
|
struct FFloatInterval ScaleZ; // 0x004C(0x0008) (Edit)
|
|
struct FFoliageVertexColorChannelMask VertexColorMaskByChannel[0x4]; // 0x0054(0x000C) (Edit)
|
|
TEnumAsByte<EFoliageVertexColorMask> VertexColorMask; // 0x0084(0x0001) (ZeroConstructor, Deprecated, IsPlainOldData)
|
|
unsigned char UnknownData02[0x3]; // 0x0085(0x0003) MISSED OFFSET
|
|
float VertexColorMaskThreshold; // 0x0088(0x0004) (ZeroConstructor, Deprecated, IsPlainOldData)
|
|
unsigned char VertexColorMaskInvert : 1; // 0x008C(0x0001) (Deprecated)
|
|
unsigned char UnknownData03[0x3]; // 0x008D(0x0003) MISSED OFFSET
|
|
struct FFloatInterval ZOffset; // 0x0090(0x0008) (Edit)
|
|
unsigned char AlignToNormal : 1; // 0x0098(0x0001) (Edit)
|
|
unsigned char UnknownData04[0x3]; // 0x0099(0x0003) MISSED OFFSET
|
|
float AlignMaxAngle; // 0x009C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char RandomYaw : 1; // 0x00A0(0x0001) (Edit)
|
|
unsigned char UnknownData05[0x3]; // 0x00A1(0x0003) MISSED OFFSET
|
|
float RandomPitchAngle; // 0x00A4(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
struct FFloatInterval GroundSlopeAngle; // 0x00A8(0x0008) (Edit)
|
|
struct FFloatInterval Height; // 0x00B0(0x0008) (Edit)
|
|
TArray<struct FName> LandscapeLayers; // 0x00B8(0x000C) (Edit, ZeroConstructor)
|
|
unsigned char UnknownData06[0x4]; // 0x00C4(0x0004) MISSED OFFSET
|
|
struct FName LandscapeLayer; // 0x00C8(0x0008) (ZeroConstructor, Deprecated, IsPlainOldData)
|
|
unsigned char CollisionWithWorld : 1; // 0x00D0(0x0001) (Edit)
|
|
unsigned char UnknownData07[0x3]; // 0x00D1(0x0003) MISSED OFFSET
|
|
struct FVector CollisionScale; // 0x00D4(0x000C) (Edit, IsPlainOldData)
|
|
float MinimumLayerWeight; // 0x00E0(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
struct FBoxSphereBounds MeshBounds; // 0x00E4(0x001C) (IsPlainOldData)
|
|
struct FVector LowBoundOriginRadius; // 0x0100(0x000C) (IsPlainOldData)
|
|
TEnumAsByte<EComponentMobility> Mobility; // 0x010C(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData08[0x3]; // 0x010D(0x0003) MISSED OFFSET
|
|
struct FInt32Interval CullDistance; // 0x0110(0x0008) (Edit)
|
|
unsigned char bEnableStaticLighting : 1; // 0x0118(0x0001) (Deprecated)
|
|
unsigned char CastShadow : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bAffectDynamicIndirectLighting : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bAffectDistanceFieldLighting : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bCastDynamicShadow : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bCastStaticShadow : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bCastShadowAsTwoSided : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bReceivesDecals : 1; // 0x0118(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bOverrideLightMapRes : 1; // 0x0119(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char UnknownData09[0x2]; // 0x011A(0x0002) MISSED OFFSET
|
|
int OverriddenLightMapRes; // 0x011C(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
unsigned char bUseAsOccluder : 1; // 0x0120(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char UnknownData10[0xF]; // 0x0121(0x000F) MISSED OFFSET
|
|
struct FBodyInstance BodyInstance; // 0x0130(0x01D0) (Edit)
|
|
TEnumAsByte<EHasCustomNavigableGeometry> CustomNavigableGeometry; // 0x0300(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
struct FLightingChannels LightingChannels; // 0x0301(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char bRenderCustomDepth : 1; // 0x0302(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly)
|
|
unsigned char UnknownData11[0x1]; // 0x0303(0x0001) MISSED OFFSET
|
|
int CustomDepthStencilValue; // 0x0304(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
float CollisionRadius; // 0x0308(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float ShadeRadius; // 0x030C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
int NumSteps; // 0x0310(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float InitialSeedDensity; // 0x0314(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float AverageSpreadDistance; // 0x0318(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float SpreadVariance; // 0x031C(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
int SeedsPerStep; // 0x0320(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
int DistributionSeed; // 0x0324(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float MaxInitialSeedOffset; // 0x0328(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
bool bCanGrowInShade; // 0x032C(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
bool bSpawnsInShade; // 0x032D(0x0001) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData12[0x2]; // 0x032E(0x0002) MISSED OFFSET
|
|
float MaxInitialAge; // 0x0330(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float MaxAge; // 0x0334(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
float OverlapPriority; // 0x0338(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
struct FFloatInterval ProceduralScale; // 0x033C(0x0008) (Edit)
|
|
struct FRuntimeFloatCurve ScaleCurve; // 0x0344(0x0058) (Edit)
|
|
int ChangeCount; // 0x039C(0x0004) (ZeroConstructor, IsPlainOldData)
|
|
unsigned char ReapplyDensity : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyRadius : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyAlignToNormal : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyRandomYaw : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyScaling : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyScaleX : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyScaleY : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyScaleZ : 1; // 0x03A0(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyRandomPitchAngle : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyGroundSlope : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyHeight : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyLandscapeLayers : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyZOffset : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyCollisionWithWorld : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char ReapplyVertexColorMask : 1; // 0x03A1(0x0001) (Edit, DisableEditOnInstance)
|
|
unsigned char bEnableDensityScaling : 1; // 0x03A1(0x0001) (Edit)
|
|
unsigned char UnknownData13[0xE]; // 0x03A2(0x000E) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.FoliageType");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.FoliageType_InstancedStaticMesh
|
|
// 0x0010 (0x03C0 - 0x03B0)
|
|
class UFoliageType_InstancedStaticMesh : public UFoliageType
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x4]; // 0x03B0(0x0004) MISSED OFFSET
|
|
class UClass* ComponentClass; // 0x03B4(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData01[0x8]; // 0x03B8(0x0008) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.FoliageType_InstancedStaticMesh");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.InstancedFoliageActor
|
|
// 0x0040 (0x02F8 - 0x02B8)
|
|
class AInstancedFoliageActor : public AActor
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x40]; // 0x02B8(0x0040) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.InstancedFoliageActor");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.InteractiveFoliageActor
|
|
// 0x0058 (0x0318 - 0x02C0)
|
|
class AInteractiveFoliageActor : public AStaticMeshActor
|
|
{
|
|
public:
|
|
class UCapsuleComponent* CapsuleComponent; // 0x02C0(0x0004) (ExportObject, ZeroConstructor, InstancedReference, IsPlainOldData)
|
|
struct FVector TouchingActorEntryPosition; // 0x02C4(0x000C) (Transient, IsPlainOldData)
|
|
struct FVector FoliageVelocity; // 0x02D0(0x000C) (Transient, IsPlainOldData)
|
|
struct FVector FoliageForce; // 0x02DC(0x000C) (Transient, IsPlainOldData)
|
|
struct FVector FoliagePosition; // 0x02E8(0x000C) (Transient, IsPlainOldData)
|
|
float FoliageDamageImpulseScale; // 0x02F4(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float FoliageTouchImpulseScale; // 0x02F8(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float FoliageStiffness; // 0x02FC(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float FoliageStiffnessQuadratic; // 0x0300(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float FoliageDamping; // 0x0304(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float MaxDamageImpulse; // 0x0308(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float MaxTouchImpulse; // 0x030C(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float MaxForce; // 0x0310(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
float Mass; // 0x0314(0x0004) (ZeroConstructor, IsPlainOldData)
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.InteractiveFoliageActor");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
void CapsuleTouched(class UPrimitiveComponent* OverlappedComp, class AActor* Other, class UPrimitiveComponent* OtherComp, int OtherBodyIndex, bool bFromSweep, const struct FHitResult& OverlapInfo);
|
|
};
|
|
|
|
|
|
// Class Foliage.InteractiveFoliageComponent
|
|
// 0x0000 (0x0660 - 0x0660)
|
|
class UInteractiveFoliageComponent : public UStaticMeshComponent
|
|
{
|
|
public:
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.InteractiveFoliageComponent");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.ProceduralFoliageBlockingVolume
|
|
// 0x0008 (0x02E8 - 0x02E0)
|
|
class AProceduralFoliageBlockingVolume : public AVolume
|
|
{
|
|
public:
|
|
class AProceduralFoliageVolume* ProceduralFoliageVolume; // 0x02E0(0x0004) (Edit, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData00[0x4]; // 0x02E4(0x0004) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.ProceduralFoliageBlockingVolume");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.ProceduralFoliageComponent
|
|
// 0x0018 (0x00D8 - 0x00C0)
|
|
class UProceduralFoliageComponent : public UActorComponent
|
|
{
|
|
public:
|
|
float TileOverlap; // 0x00C0(0x0004) (Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData)
|
|
class AVolume* SpawningVolume; // 0x00C4(0x0004) (ZeroConstructor, IsPlainOldData)
|
|
struct FGuid ProceduralGuid; // 0x00C8(0x0010) (IsPlainOldData)
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.ProceduralFoliageComponent");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.ProceduralFoliageSpawner
|
|
// 0x003C (0x0058 - 0x001C)
|
|
class UProceduralFoliageSpawner : public UObject
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x4]; // 0x001C(0x0004) MISSED OFFSET
|
|
float TileSize; // 0x0020(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
int NumUniqueTiles; // 0x0024(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
float MinimumQuadTreeSize; // 0x0028(0x0004) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData01[0x4]; // 0x002C(0x0004) MISSED OFFSET
|
|
TArray<struct FFoliageTypeObject> FoliageTypes; // 0x0030(0x000C) (Edit, ZeroConstructor)
|
|
bool bNeedsSimulation; // 0x003C(0x0001) (ZeroConstructor, IsPlainOldData)
|
|
unsigned char UnknownData02[0x1B]; // 0x003D(0x001B) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.ProceduralFoliageSpawner");
|
|
return pStaticClass;
|
|
}
|
|
|
|
|
|
void Simulate(int NumSteps);
|
|
};
|
|
|
|
|
|
// Class Foliage.ProceduralFoliageTile
|
|
// 0x00E4 (0x0100 - 0x001C)
|
|
class UProceduralFoliageTile : public UObject
|
|
{
|
|
public:
|
|
unsigned char UnknownData00[0x7C]; // 0x001C(0x007C) MISSED OFFSET
|
|
TArray<struct FProceduralFoliageInstance> InstancesArray; // 0x0098(0x000C) (ZeroConstructor)
|
|
unsigned char UnknownData01[0x5C]; // 0x00A4(0x005C) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.ProceduralFoliageTile");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
// Class Foliage.ProceduralFoliageVolume
|
|
// 0x0008 (0x02E8 - 0x02E0)
|
|
class AProceduralFoliageVolume : public AVolume
|
|
{
|
|
public:
|
|
class UProceduralFoliageComponent* ProceduralComponent; // 0x02E0(0x0004) (Edit, BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, EditConst, InstancedReference, IsPlainOldData)
|
|
unsigned char UnknownData00[0x4]; // 0x02E4(0x0004) MISSED OFFSET
|
|
|
|
static UClass* StaticClass()
|
|
{
|
|
static UClass *pStaticClass = 0;
|
|
if (!pStaticClass)
|
|
pStaticClass = UObject::FindClass("Class Foliage.ProceduralFoliageVolume");
|
|
return pStaticClass;
|
|
}
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|