This repository has been archived on 2024-06-13. You can view files and clone it, but cannot push or open issues or pull requests.
2020-08-04 13:13:01 -04:00

821 lines
28 KiB
C++

/*
#############################################################################################
# Killing Floor 2 (1.8787) SDK
# Generated with TheFeckless UE3 SDK Generator v1.4_Beta-Rev.51
#
=========================================================================================
# # File: BaseAI_classes.h #
=========================================================================================
# # Credits: uNrEaL, Tamimego, SystemFiles, R00T88, _silencer, the1domo, K@N@VEL
# Thanks: HOOAH07, lowHertz
# Forums: www.uc-forum.com, www.gamedeception.net
#############################################################################################
*/
#ifdef _MSC_VER
#pragma pack(push, 0x4)
#endif
/*
#
=========================================================================================
# # Constants #
=========================================================================================
#
*/
#define CONST_kBreadCrumbsMax 10
/*
#
=========================================================================================
# # Enums #
=========================================================================================
#
*/
// Enum BaseAI.AIDebugTool.ELogDrawingMode
/*enum ELogDrawingMode
{
AIDH_DrawAll = 0,
AIDH_EntryDetails = 1,
AIDH_BlackBoard = 2,
AIDH_Preconditions = 3,
AIDH_SquadEnemy = 4,
AIDH_Animation = 5,
AIDH_Weapon = 6,
AIDH_MAX = 7
};*/
// Enum BaseAI.BaseAITypes.EDebugLineType
/*enum EDebugLineType
{
DLT_Generic = 0,
DLT_InstantFire = 1,
DLT_NoPath = 2,
DLT_LeaderFollowing = 3,
DLT_Failed = 4,
DLT_Red = 5,
DLT_Green = 6,
DLT_Blue = 7,
DLT_MAX = 8
};*/
// Enum BaseAI.BaseAITypes.EBTResult
/*enum EBTResult
{
BTR_Error = 0,
BTR_Abort = 1,
BTR_Fail = 2,
BTR_Success = 3,
BTR_NotFinished = 4,
BTR_MAX = 5
};*/
// Enum BaseAI.BaseAITypes.EWSSymbolicAngle
/*enum EWSSymbolicAngle
{
WSSA_Front = 0,
WSSA_Side = 1,
WSSA_Back = 2,
WSSA_Unknown = 3,
WSSA_MAX = 4
};*/
// Enum BaseAI.BaseAITypes.EWSPerceptionMode
/*enum EWSPerceptionMode
{
WSPM_None = 0,
WSPM_Memory = 1,
WSPM_Belief = 2,
WSPM_Hearing = 3,
WSPM_Sight = 4,
WSPM_MAX = 5
};*/
// Enum BaseAI.BaseAITypes.EBaseMoveType
/*enum EBaseMoveType
{
BMT_Invalid = 0,
BMT_Normal = 1,
BMT_Combat = 2,
BMT_Careful = 3,
BMT_Pain = 4,
BMT_MAX = 5
};*/
// Enum BaseAI.BaseAITypes.EBaseMoveMood
/*enum EBaseMoveMood
{
BMM_Invalid = 0,
BMM_Static = 1,
BMM_Slow = 2,
BMM_Normal = 3,
BMM_Fast = 4,
BMM_MAX = 5
};*/
// Enum BaseAI.BaseAITypes.EActionPriority
/*enum EActionPriority
{
AP_Invalid = 0,
AP_Logic = 1,
AP_Kismet = 2,
AP_Reaction = 3,
AP_MAX = 4
};*/
// Enum BaseAI.AIPluginMovement.EMoveRequestDestinationType
/*enum EMoveRequestDestinationType
{
MRDT_Invalid = 0,
MRDT_Vector = 1,
MRDT_Actor = 2,
MRDT_MAX = 3
};*/
/*
#
=========================================================================================
# # Classes #
=========================================================================================
#
*/
// Class BaseAI.BaseAIController
// 0x00A4 (0x054C - 0x04A8)
class ABaseAIController : public AGameAIController {
public:
class ABaseAIPawn* MyBaseAIPawn; // 0x04A8 (0x0008) [0x0000000000000000]
class ABaseAISquad* BaseSquad; // 0x04B0 (0x0008) [0x0000000000000000]
TArray<class UAITickablePlugin*>
TickablePlugins; // 0x04B8 (0x0010) [0x0000000000000000]
class UPluginSquad* SquadPlugin; // 0x04C8 (0x0008) [0x0000000000000000]
class UAIPluginMovement*
MovementPlugin; // 0x04D0 (0x0008) [0x0000000000000000]
class UClass* MovementPluginClass; // 0x04D8 (0x0008) [0x0000000000000000]
class UAIPluginLeap* LeapPlugin; // 0x04E0 (0x0008) [0x0000000000000000]
class UClass* LeapPluginClass; // 0x04E8 (0x0008) [0x0000000000000000]
class UAIPluginStuckFix*
StuckFixPlugin; // 0x04F0 (0x0008) [0x0000000000000000]
class UClass* StuckFixPluginClass; // 0x04F8 (0x0008) [0x0000000000000000]
class UBaseAiPlugInHistory*
MyAiPlugInHistory; // 0x0500 (0x0008) [0x0000000000000000]
DWORD bUsePerceptionHearing : 1; // 0x0508 (0x0004) [0x0000000000000000]
// [0x00000001]
DWORD bAlwaysAssignEnemy : 1; // 0x0508 (0x0004) [0x0000000000000000]
// [0x00000002]
DWORD bUseNavMesh : 1; // 0x0508 (0x0004) [0x0000000000000000] [0x00000004]
DWORD bUsePluginsForMovement : 1; // 0x0508 (0x0004) [0x0000000000000000]
// [0x00000008]
float LastEnemySightedTime; // 0x050C (0x0004) [0x0000000000000000]
TArray<class AActor*> TargetList; // 0x0510 (0x0010) [0x0000000000000000]
TArray<class AActor*>
ProhibitedTargetList; // 0x0520 (0x0010) [0x0000000000000000]
class ABaseAIPawn*
SquadAssignedTarget; // 0x0530 (0x0008) [0x0000000000000000]
TArray<struct FLocalEnemyInfo>
LocalEnemyList; // 0x0538 (0x0010) [0x0000000000000000]
int PlugInHistoryNum; // 0x0548 (0x0004) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2825];
return pClassPointer;
};
void DrawDebugTextToHud();
void DrawEnemyPerception();
void StopMovement();
void NotifyKilled();
void SelectTarget();
void SelectEnemy();
void eventSetEnemy();
void SelectTargetInternal();
void UpdateEnemyPerception();
void IsFriendly();
void IsFriendlyPawn();
void RemoveAllEnemies();
void RemoveEnemy();
void BroadcastEnemyKnowledge();
void GetTimeSince();
void GetAiPlugInHistory();
void Cleanup();
void UpdateEnemyAngle();
void UpdateEnemyRange();
void PawnDied();
void eventPossess();
void eventInitializeAIClass();
};
UClass* ABaseAIController::pClassPointer = NULL;
// Class BaseAI.BaseAIPawn
// 0x00B8 (0x0614 - 0x055C)
class ABaseAIPawn : public AGamePawn {
public:
class ABaseAIController* MyBaseAI; // 0x055C (0x0008) [0x0000000000000000]
unsigned char LastTeamNum; // 0x0564 (0x0001) [0x0000000000000000]
unsigned char MyAIType; // 0x0565 (0x0001) [0x0000000000000000]
struct FBreadcrumbs MyBreadCrumbs; // 0x0568 (0x0080) [0x0000000000000000]
TArray<class ABaseAIPawn*>
Attackers; // 0x05E8 (0x0010) [0x0000000000000000]
TArray<int> AttackersPerTypeCount; // 0x05F8 (0x0010) [0x0000000000000000]
DWORD bLeaping : 1; // 0x0608 (0x0004) [0x0000000000000000] [0x00000001]
float TimeStartedLeap; // 0x060C (0x0004) [0x0000000000000000]
float TimeImmuneWhileLeaping; // 0x0610 (0x0004) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2829];
return pClassPointer;
};
void DrawCrumbs();
void RemoveAttacker();
void GetAttackerCount();
void NotifyTeamChanged();
void UnPossessed();
void PossessedBy();
void Died();
};
UClass* ABaseAIPawn::pClassPointer = NULL;
// Class BaseAI.BaseAISquad
// 0x001C (0x0260 - 0x0244)
class ABaseAISquad : public AInfo {
public:
class AController* Leader; // 0x0244 (0x0008) [0x0000000000000000]
class AActor* FormationCenter; // 0x024C (0x0008) [0x0000000000000000]
DWORD
bPlayerSquad : 1; // 0x0254 (0x0004) [0x0000000000000000] [0x00000001]
DWORD bIsMP : 1; // 0x0254 (0x0004) [0x0000000000000000] [0x00000002]
DWORD bSquadInCombat : 1; // 0x0254 (0x0004) [0x0000000000000000]
// [0x00000004]
float NextEnemySelectionTimestamp; // 0x0258 (0x0004) [0x0000000000000000]
float EnemySelectionInterval; // 0x025C (0x0004) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2831];
return pClassPointer;
};
void UpdateEnemySelection();
void GetSquadCenterPawn();
void GetSquadMembers();
void GetSquadMemberCount();
void UpdateLeader();
void EnemyPerceivedBy();
void NotifyKilled();
void eventDestroyed();
void eventPostBeginPlay();
};
UClass* ABaseAISquad::pClassPointer = NULL;
// Class BaseAI.BaseAISubsystem
// 0x0038 (0x00A4 - 0x006C)
class UBaseAISubsystem : public UAISubsystem {
public:
struct FPointer
VfTable_FCallbackEventDevice; // 0x006C (0x0008) [0x0000000000000000]
struct FPointer
VfTable_FTickableObject; // 0x0074 (0x0008) [0x0000000000000000]
class UAIDebugTool* AIDebug; // 0x007C (0x0008) [0x0000000000000000]
TArray<class ABaseAISquad*> Squads; // 0x0084 (0x0010) [0x0000000000000000]
TArray<int> TeamSizes; // 0x0094 (0x0010) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2833];
return pClassPointer;
};
void NotifyKilled();
void GetEnemyTeamsSize();
void GetTeamSize();
void DecreaseTeamSize();
void IncreaseTeamSize();
void UnRegisterSquad();
void RegisterSquad();
void GetAIDebugTool();
void GetInstance();
};
UClass* UBaseAISubsystem::pClassPointer = NULL;
// Class BaseAI.CodeSpeedTestCommandlet
// 0x0008 (0x00BC - 0x00B4)
class UCodeSpeedTestCommandlet : public UCommandlet {
public:
class UObject* CurrentPackage; // 0x00B4 (0x0008) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2835];
return pClassPointer;
};
};
UClass* UCodeSpeedTestCommandlet::pClassPointer = NULL;
// Class BaseAI.LatentActionObserver
// 0x0000 (0x0060 - 0x0060)
class ULatentActionObserver : public UInterface {
public:
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2837];
return pClassPointer;
};
void OnLatentFinished();
};
UClass* ULatentActionObserver::pClassPointer = NULL;
// Class BaseAI.BaseAITypes
// 0x0000 (0x0060 - 0x0060)
class UBaseAITypes : public UObject {
public:
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2839];
return pClassPointer;
};
};
UClass* UBaseAITypes::pClassPointer = NULL;
// Class BaseAI.BaseAiPlugInHistory
// 0x001C (0x007C - 0x0060)
class UBaseAiPlugInHistory : public UObject {
public:
TArray<struct FBaseAIPlugInHistoryItem>
PlugInHistory; // 0x0060 (0x0010) [0x0000000000000000]
int PlugInHistoryNum; // 0x0070 (0x0004) [0x0000000000000000]
class ABaseAIController* CtrlOwner; // 0x0074 (0x0008) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2841];
return pClassPointer;
};
void DrawDebugToHud();
void eventSetup();
};
UClass* UBaseAiPlugInHistory::pClassPointer = NULL;
// Class BaseAI.PluginBase
// 0x003C (0x009C - 0x0060)
class UPluginBase : public UObject {
public:
class UPlugInOwnerInterface*
PlugInOwner; // 0x0060 (0x0010) [0x0000000000000000]
unsigned char UnknownData00[0x8]; // 0x0068 (0x0008) FIX WRONG TYPE SIZE OF
// PREVIUS PROPERTY
DWORD bIsPluginEnabled : 1; // 0x0070 (0x0004) [0x0000000000000000]
// [0x00000001]
DWORD bAborted : 1; // 0x0070 (0x0004) [0x0000000000000000] [0x00000002]
DWORD bFailure : 1; // 0x0070 (0x0004) [0x0000000000000000] [0x00000004]
DWORD bSuccess : 1; // 0x0070 (0x0004) [0x0000000000000000] [0x00000008]
class UBaseAiPlugInHistory*
OwnersAiPlugInHistory; // 0x0074 (0x0008) [0x0000000000000000]
struct FString HistoryString; // 0x007C (0x0010) [0x0000000000000000]
struct FString StatusStr; // 0x008C (0x0010) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2843];
return pClassPointer;
};
void eventGetDebugVerboseText();
void UpdateHistoryString();
void UpdateCommandHistory();
void eventDrawDebug();
void eventScriptInitialize();
void DrawDebugToHud();
void EnablePlugin();
void DisablePlugin();
};
UClass* UPluginBase::pClassPointer = NULL;
// Class BaseAI.AIPlugin
// 0x000C (0x00A8 - 0x009C)
class UAIPlugin : public UPluginBase {
public:
class ABaseAIController*
MyBaseAIController; // 0x009C (0x0008) [0x0000000000000000]
DWORD bCustomSetupController : 1; // 0x00A4 (0x0004) [0x0000000000000000]
// [0x00000001]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2845];
return pClassPointer;
};
void eventScriptSetUp();
};
UClass* UAIPlugin::pClassPointer = NULL;
// Class BaseAI.AITickablePlugin
// 0x0008 (0x00B0 - 0x00A8)
class UAITickablePlugin : public UAIPlugin {
public:
float LatentTime; // 0x00A8 (0x0004) [0x0000000000000000]
DWORD bTickingEnabled : 1; // 0x00AC (0x0004) [0x0000000000000000]
// [0x00000001]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2847];
return pClassPointer;
};
void NotifyNpcInGrannyMode();
void NotifyNpcTerminallyStuck();
void eventScriptTick();
void Sleep();
};
UClass* UAITickablePlugin::pClassPointer = NULL;
// Class BaseAI.AIPluginLeap
// 0x008C (0x013C - 0x00B0)
class UAIPluginLeap : public UAITickablePlugin {
public:
class AActor* BaseForLanding; // 0x00B0 (0x0008) [0x0000000000000000]
struct FVector LeapDirection; // 0x00B8 (0x000C) [0x0000000000000000]
struct FVector
LocationAtStartOfLeap; // 0x00C4 (0x000C) [0x0000000000000000]
struct FVector ClosestLocOnEdge; // 0x00D0 (0x000C) [0x0000000000000000]
struct FVector ExpectedLandingLoc; // 0x00DC (0x000C) [0x0000000000000000]
unsigned char ActionPriority; // 0x00E8 (0x0001) [0x0000000000000000]
DWORD bObserverNotified : 1; // 0x00EC (0x0004) [0x0000000000000000]
// [0x00000001]
DWORD bDontNotifyObserver : 1; // 0x00EC (0x0004) [0x0000000000000000]
// [0x00000002]
DWORD bDontRestartByKismet : 1; // 0x00EC (0x0004) [0x0000000000000000]
// [0x00000004]
DWORD bCollisionOffPhase : 1; // 0x00EC (0x0004) [0x0000000000000000]
// [0x00000008]
DWORD bConfigOnlyTraceUp : 1; // 0x00EC (0x0004) [0x0000000000000000]
// [0x00000010]
DWORD bWantTotalMovementControl : 1; // 0x00EC (0x0004)
// [0x0000000000000000] [0x00000020]
float ConfigFactorToIncreaseCalcedLeapVolBy; // 0x00F0 (0x0004)
// [0x0000000000000000]
float ConfigFactorToIncreasePlottedLeapVolBy; // 0x00F4 (0x0004)
// [0x0000000000000000]
float ConfigFactorToReduceLeapProjectionSizeBy; // 0x00F8 (0x0004)
// [0x0000000000000000]
float ConfigDistanceOutFromDropEdgeToCalcDropLoc; // 0x00FC (0x0004)
// [0x0000000000000000]
float PercentageOfLeapImmuneFromCollision; // 0x0100 (0x0004)
// [0x0000000000000000]
float ConfigPercentageOfLeapImmuneFromCollision; // 0x0104 (0x0004)
// [0x0000000000000000]
float ConfigDesiredLeapSpeed; // 0x0108 (0x0004) [0x0000000000000000]
float ConfigMinSpeedAllowed; // 0x010C (0x0004) [0x0000000000000000]
float ConfigMaxSpeedAllowed; // 0x0110 (0x0004) [0x0000000000000000]
float ConfigBaseLeapZ; // 0x0114 (0x0004) [0x0000000000000000]
float ConfigDesiredZPct; // 0x0118 (0x0004) [0x0000000000000000]
struct FLeapRequest MyLeapRequest; // 0x011C (0x0020) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2849];
return pClassPointer;
};
void NotifyLanded();
void GetJumpVelForUsingJumpDownNavPointPathObject();
void GetJumpVelForDropEdge();
void TurnMeOn();
void HasPercentOfZDiffBeenCovered();
void TestForTimeToTurnCollisionBackOn();
void AbortMove();
void Failure();
void Success();
void eventScriptCleanUp();
void eventScriptCommonMovePreparation();
void eventGetDumpString();
void Leap();
};
UClass* UAIPluginLeap::pClassPointer = NULL;
// Class BaseAI.AIPluginMovement
// 0x0078 (0x0128 - 0x00B0)
class UAIPluginMovement : public UAITickablePlugin {
public:
struct FMovementRequest
MoveRequest; // 0x00B0 (0x0068) [0x0000000000000000]
float GoalDistanceSq; // 0x0118 (0x0004) [0x0000000000000000]
unsigned char ActionPriority; // 0x011C (0x0001) [0x0000000000000000]
unsigned char MovementLock; // 0x011D (0x0001) [0x0000000000000000]
DWORD bObserverNotified : 1; // 0x0120 (0x0004) [0x0000000000000000]
// [0x00000001]
DWORD bDontNotifyObserver : 1; // 0x0120 (0x0004) [0x0000000000000000]
// [0x00000002]
DWORD bDontRestartByKismet : 1; // 0x0120 (0x0004) [0x0000000000000000]
// [0x00000004]
float MinimumSuccessDistance; // 0x0124 (0x0004) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2851];
return pClassPointer;
};
void MoveUnreachable();
void StopMovement();
void GetDestinationType();
void GetDestination();
void RePath();
void Failure();
void Success();
void SetMovementLock();
void AbortMove();
void FollowPlugInsPath();
void MoveToActorRequest();
void MoveToPointRequest();
void MoveToRequest();
};
UClass* UAIPluginMovement::pClassPointer = NULL;
// Class BaseAI.AIPluginStuckFix
// 0x005C (0x010C - 0x00B0)
class UAIPluginStuckFix : public UAITickablePlugin {
public:
struct FFixStuckRequest
MoveRequest; // 0x00B0 (0x0054) [0x0000000000000000]
unsigned char ActionPriority; // 0x0104 (0x0001) [0x0000000000000000]
unsigned char MovementLock; // 0x0105 (0x0001) [0x0000000000000000]
DWORD bObserverNotified : 1; // 0x0108 (0x0004) [0x0000000000000000]
// [0x00000001]
DWORD bDontNotifyObserver : 1; // 0x0108 (0x0004) [0x0000000000000000]
// [0x00000002]
DWORD bDontRestartByKismet : 1; // 0x0108 (0x0004) [0x0000000000000000]
// [0x00000004]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2853];
return pClassPointer;
};
void MoveUnreachable();
void StopMovement();
void GetDestinationType();
void GetDestination();
void Failure();
void Success();
void SetMovementLock();
void eventAbortMove();
void StuckFixToActorRequest();
void StuckFixToPointRequest();
};
UClass* UAIPluginStuckFix::pClassPointer = NULL;
// Class BaseAI.PluginSquad
// 0x0008 (0x00B0 - 0x00A8)
class UPluginSquad : public UAIPlugin {
public:
class ABaseAISquad* Squad; // 0x00A8 (0x0008) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2855];
return pClassPointer;
};
void EnemyPerceived();
};
UClass* UPluginSquad::pClassPointer = NULL;
// Class BaseAI.PlayerInputRecorder
// 0x0000 (0x0060 - 0x0060)
class UPlayerInputRecorder : public UObject {
public:
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2857];
return pClassPointer;
};
void StopReplay();
void Replay();
void StopRecording();
void StartRecording();
};
UClass* UPlayerInputRecorder::pClassPointer = NULL;
// Class BaseAI.AIDebugTool
// 0x00D0 (0x0130 - 0x0060)
class UAIDebugTool : public UObject {
public:
float GameFrameTime; // 0x0060 (0x0004) [0x0000000000000000]
int BTPersonalLogSize; // 0x0064 (0x0004) [0x0000000000000000]
TArray<struct FString>
BTPersonalLog; // 0x0068 (0x0010) [0x0000000000000000]
class ABaseAIController*
DebugTarget; // 0x0078 (0x0008) [0x0000000000000000]
int EntryToDisplay; // 0x0080 (0x0004) [0x0000000000000000]
TArray<struct FName> Filters; // 0x0084 (0x0010) [0x0000000000000000]
TArray<struct FName>
ColorCategories; // 0x0094 (0x0010) [0x0000000000000000]
TArray<class AActor*>
UnreachableActors; // 0x00A4 (0x0010) [0x0000000000000000]
int DrawingFlags; // 0x00B4 (0x0004) [0x0000000000000000]
struct FETQDebugEntry
CurrentETQLog; // 0x00B8 (0x0014) [0x0000000000000000]
TArray<struct FETQDebugEntry>
ETQLogHistory; // 0x00CC (0x0010) [0x0000000000000000]
DWORD
bLoadOldLogs : 1; // 0x00DC (0x0004) [0x0000000000000000] [0x00000001]
class AActor* LoggingContext; // 0x00E0 (0x0008) [0x0000000000000000]
struct FMap_Mirror Logs; // 0x00E8 (0x0048) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[2859];
return pClassPointer;
};
void DumpNativeCallStack();
void GetActorEntryLocation();
void AddBTLogEntry();
void FlushETQHistory();
void AddETQLog();
void FlushUnreachableActors();
void LogUnreachableActor();
void ClearHistoryColor();
void ColorHistory();
void ClearHistoryFilter();
void SetHistoryFilter();
void ToggleLogDrawingMode();
void DisplayNextEntry();
void SetContext();
void LogSpaceLine();
void Log();
void SetDebugTarget();
void FlushLogs();
void LoadLogFile();
void DrawLog();
};
UClass* UAIDebugTool::pClassPointer = NULL;
// Class BaseAI.PlugInOwnerInterface
// 0x0000 (0x0060 - 0x0060)
class UPlugInOwnerInterface : public UInterface {
public:
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[48000];
return pClassPointer;
};
void GetTimeSince();
void GetAiPlugInHistory();
};
UClass* UPlugInOwnerInterface::pClassPointer = NULL;
// Class BaseAI.NavigationPath
// 0x0134 (0x0194 - 0x0060)
class UNavigationPath : public UObject {
public:
TArray<struct FPathPoint>
PathPoints; // 0x0060 (0x0010) [0x0000000000000000]
struct FPolyArray_Mirror PolysUsed; // 0x0070 (0x0010) [0x0000000000000000]
struct FBaseTransform Base; // 0x0080 (0x0100) [0x0000000000000000]
struct FVector LocalDestination; // 0x0180 (0x000C) [0x0000000000000000]
DWORD bDynamic : 1; // 0x018C (0x0004) [0x0000000000000000] [0x00000001]
int Version; // 0x0190 (0x0004) [0x0000000000000000]
private:
static UClass* pClassPointer;
public:
static UClass* StaticClass() {
if (!pClassPointer)
pClassPointer = (UClass*)UObject::GObjObjects()->Data[48214];
return pClassPointer;
};
void DrawPath();
void WorldToLocal();
void SetRoute();
void GetElementPos();
};
UClass* UNavigationPath::pClassPointer = NULL;
#ifdef _MSC_VER
#pragma pack(pop)
#endif