Files
tech5/source/tungsten/game/entities/gamechallenge.h
T

1713 lines
86 KiB
C++

#pragma once
// Reconstructed C++ declarations from IDA Local Types and PDB/DIA metadata.
// Original PDB header: w:\tech5\tungsten\game\entities\gamechallenge.h
// Recovered logical types: 14
// Signatures retain Xbox 360 ABI evidence and may still require manual review.
// IDA Local Type ordinal 1915; PDB kind: enum.
enum __bitmask idGameChallenge::challengeFailed_t : __int32
{
PLAYER_DISCONNECT = 0x1,
};
// IDA Local Type ordinal 15541; PDB kind: class.
class idGameChallenge : public idEntity
{
public:
// Recovered virtual interface; IDA vtable ordinal 15592.
virtual idTypeInfo *GetType();
virtual ~idGameChallenge();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual void StartPreGame();
virtual void BeginGame();
virtual void EndGame();
virtual void GameOver();
virtual void StartRound();
virtual void EndRound();
virtual void FinishGame();
virtual void SetPlayerState(idGameChallenge::playerData_t *, challengePlayerState_t, int);
virtual void ProcessPlayerStates();
virtual bool Restart();
virtual void RestartPlayer(idPlayer *);
virtual void SetSpectator(idGameChallenge::playerData_t *, bool);
virtual bool RegisterNewPlayer(idGameChallenge::playerData_t *, idPlayer *, bool);
virtual bool IsTeamGame();
virtual bool AllowSpectators();
virtual bool CanScore();
virtual void ForceScoreboardAll(bool);
virtual bool HasPreGame();
virtual int GetPreGameDuration();
virtual void GameLoadingFinished(int);
virtual void SyncMigrationGameDataWithSession(bool);
virtual void SerializeMigrationGameData(idSerializer *);
virtual void SerializeMigrationUserData(idSerializer *, idGameChallenge::playerData_t *);
virtual gameTeam_t GetTeamNumber(const idGameChallenge::playerData_t *);
virtual void SetTeamRenderModel(idGameChallenge::playerData_t *);
virtual bool PlayerStateExpired(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_GAME_MODE_INFO(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_NONE(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void RespawnPlayer(idGameChallenge::playerData_t *, idDoomSpawnManager::commandType_t);
virtual void FinalizeRespawnPlayer(idGameChallenge::playerData_t *, const idVec3 *, const idAngles *);
virtual void DebugAllSpawnPoints();
virtual const idDeclMD6 *GetPlayerModelMD6(const idPlayer *);
virtual bool IsLeaderTied();
virtual int GetLeaderPlayerIndex();
virtual int GetLeaderEntityNumber();
virtual int GetRunnerUpScore();
virtual int GetHighScore();
virtual bool ScoreLimitReached();
virtual int GetPlayerScore(const idGameChallenge::playerData_t *);
virtual void GetScoringData(const idGameChallenge::playerData_t *, int *, int *, int *, int *);
virtual int GetTeamScore(gameTeam_t);
virtual int GetScoreLimit();
virtual bool DidPlayerWin(int);
virtual void BroadcastKillMessage(int, int, const idDeclDamage *, bool, int, int);
virtual bool FriendlyFireEnabled();
virtual bool PlayerReviveEnabled();
virtual void OnTriggerTouched(idTrigger_GameChallenge *, idEntity *, int);
virtual int GetPrimaryScoreboardStat(int);
virtual int GetSecondaryScoreboardStat(int);
virtual void Notify_FlagCaptured(struct idProp_CTF_Flag *, idEntity *);
virtual void PostStatsToLeaderboard();
virtual const leaderboardDefinition_t *GetLeaderboard();
virtual int GetSecondaryLeaderboardStat(int);
virtual void LoadMultiplayerDecls();
bool startActive;
int timeLimit;
int scoreLimit;
int numLives;
bool countupTime;
bool takeDamage;
float respawnDelay;
int baseTime;
idList<idGameChallenge::spawnPoint_t,5> spawnPoints;
int minimumPlayers;
int leaderBoard;
bool useSpectatorCamera;
bool requireLoadoutSelection;
idEntityPtr<idEntity> initialSpectatorCamPos;
idEntityPtr<idEntity> initialSpectatorCamLookAt;
const idSoundShader *gameMusic;
const idSoundShader *gameOverSound;
const idSoundShader *failedGameOverSound;
const idDeclFX *fxDecl;
const idDeclOnlineVOCallout *voCallout;
int killScore;
int suicideScore;
int suicideSpawnDelay;
int spawnTimer;
idList<teamInfo_t,5> teamInfo;
botGameManagerType_t botGameManagerType;
idStaticList<idGameChallenge::playerData_t,6> players;
int startTime;
int endTime;
int originalEndTime;
int endTimeoutDuration;
int preGameTime;
int roundEndTime;
challengeGameMode_t gameMode;
bool bGameFailed;
idStrId gameFailedText;
idGameChallenge::challengeFailed_t failedReason;
bool bFinishGameExit;
bool incapacitated;
int lastReviveThresholdTick;
bool mapLoadFinished;
int forceQuitGameTime;
idStaticList<idGameChallenge::teamData_t,5> teams;
bool gcInitialized;
bool checkWorldCollisionOnSpawn;
idDoomSpawnManager *spawnManager;
idSpawnNodeGroup spawnNodeGroup;
bool wasMigratedGame;
int migratedTime;
idStaticList<int,6> eventConnectList;
idStaticList<int,6> eventDisconnectList;
int fadeInFinishTime;
float reviveThreshold;
};
// IDA Local Type ordinal 15546; PDB kind: struct.
struct idGameChallenge::playerData_t
{
idEntityPtr<idPlayer> player;
int respawnDelay;
unsigned int spawnHandle;
int lastScore;
int score;
int lives;
gameTeam_t team;
bool spectator;
int lastKiller;
challengePlayerState_t state;
int stateTime;
int startTime;
bool needToSendFullSnap;
int timeTillNewPlayerCanTake;
const idDeclVehicleUnlock *loadoutSlot[6];
};
// IDA Local Type ordinal 15549; PDB kind: class.
class idTrigger_GameChallenge : public idTrigger
{
public:
// Recovered virtual interface; IDA vtable ordinal 15550.
virtual idTypeInfo *GetType();
virtual ~idTrigger_GameChallenge();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual bool CanActivate(idEntity *);
};
// IDA Local Type ordinal 15551; PDB kind: struct.
struct idGameChallenge::spawnPoint_t
{
idEntityPtr<idEntity> entity;
int teamNumber;
};
// IDA Local Type ordinal 15560; PDB kind: struct.
struct idGameChallenge::teamData_t
{
idStaticList<int,4> playerIndexList;
int teamScore;
};
// IDA Local Type ordinal 19886; PDB kind: class.
class __declspec(align(8)) idGameChallenge_Coop : public idGameChallenge
{
public:
// Recovered virtual interface; IDA vtable ordinal 19892.
virtual idTypeInfo *GetType();
virtual ~idGameChallenge_Coop();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual void StartPreGame();
virtual void BeginGame();
virtual void EndGame();
virtual void GameOver();
virtual void StartRound();
virtual void EndRound();
virtual void FinishGame();
virtual void SetPlayerState(idGameChallenge::playerData_t *, challengePlayerState_t, int);
virtual void ProcessPlayerStates();
virtual bool Restart();
virtual void RestartPlayer(idPlayer *);
virtual void SetSpectator(idGameChallenge::playerData_t *, bool);
virtual bool RegisterNewPlayer(idGameChallenge::playerData_t *, idPlayer *, bool);
virtual bool IsTeamGame();
virtual bool AllowSpectators();
virtual bool CanScore();
virtual void ForceScoreboardAll(bool);
virtual bool HasPreGame();
virtual int GetPreGameDuration();
virtual void GameLoadingFinished(int);
virtual void SyncMigrationGameDataWithSession(bool);
virtual void SerializeMigrationGameData(idSerializer *);
virtual void SerializeMigrationUserData(idSerializer *, idGameChallenge::playerData_t *);
virtual gameTeam_t GetTeamNumber(const idGameChallenge::playerData_t *);
virtual void SetTeamRenderModel(idGameChallenge::playerData_t *);
virtual bool PlayerStateExpired(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_GAME_MODE_INFO(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_NONE(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void RespawnPlayer(idGameChallenge::playerData_t *, idDoomSpawnManager::commandType_t);
virtual void FinalizeRespawnPlayer(idGameChallenge::playerData_t *, const idVec3 *, const idAngles *);
virtual void DebugAllSpawnPoints();
virtual const idDeclMD6 *GetPlayerModelMD6(const idPlayer *);
virtual bool IsLeaderTied();
virtual int GetLeaderPlayerIndex();
virtual int GetLeaderEntityNumber();
virtual int GetRunnerUpScore();
virtual int GetHighScore();
virtual bool ScoreLimitReached();
virtual int GetPlayerScore(const idGameChallenge::playerData_t *);
virtual void GetScoringData(const idGameChallenge::playerData_t *, int *, int *, int *, int *);
virtual int GetTeamScore(gameTeam_t);
virtual int GetScoreLimit();
virtual bool DidPlayerWin(int);
virtual void BroadcastKillMessage(int, int, const idDeclDamage *, bool, int, int);
virtual bool FriendlyFireEnabled();
virtual bool PlayerReviveEnabled();
virtual void OnTriggerTouched(idTrigger_GameChallenge *, idEntity *, int);
virtual int GetPrimaryScoreboardStat(int);
virtual int GetSecondaryScoreboardStat(int);
virtual void Notify_FlagCaptured(struct idProp_CTF_Flag *, idEntity *);
virtual void PostStatsToLeaderboard();
virtual const leaderboardDefinition_t *GetLeaderboard();
virtual int GetSecondaryLeaderboardStat(int);
virtual void LoadMultiplayerDecls();
virtual int GetTeamScore_2(int);
idList<idGameChallenge_Coop::collectibleData_t,5> collectibleList;
int numCollectiblesToComplete;
idStrId collectibleStatusMessage;
idGameChallenge_Coop::collectibleData_t specialCollectible;
bool useUniqueSpawnpoints;
bool bObjectiveActive;
int objectiveStartTimeMS;
int totalTime;
int objectiveScore;
int objectiveParScore;
int objectiveParTimeMS;
idStrId objectiveText;
idList<idGameChallenge_Coop::ratingTitle_t,5> scoreRating;
const idDeclMD6 *coopModelDefPlayer1;
const idDeclMD6 *coopModelDefPlayer2;
};
// IDA Local Type ordinal 19888; PDB kind: struct.
struct idGameChallenge_Coop::collectibleData_t
{
bool found;
idEntityPtr<idProp_OnlineCollectible> collectible;
};
// IDA Local Type ordinal 19890; PDB kind: struct.
struct idGameChallenge_Coop::ratingTitle_t
{
int points;
idStrId rating;
};
// IDA Local Type ordinal 19895; PDB kind: class.
class idGameChallenge_PVP : public idGameChallenge
{
public:
// Recovered virtual interface; IDA vtable ordinal 19896.
virtual idTypeInfo *GetType();
virtual ~idGameChallenge_PVP();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual void StartPreGame();
virtual void BeginGame();
virtual void EndGame();
virtual void GameOver();
virtual void StartRound();
virtual void EndRound();
virtual void FinishGame();
virtual void SetPlayerState(idGameChallenge::playerData_t *, challengePlayerState_t, int);
virtual void ProcessPlayerStates();
virtual bool Restart();
virtual void RestartPlayer(idPlayer *);
virtual void SetSpectator(idGameChallenge::playerData_t *, bool);
virtual bool RegisterNewPlayer(idGameChallenge::playerData_t *, idPlayer *, bool);
virtual bool IsTeamGame();
virtual bool AllowSpectators();
virtual bool CanScore();
virtual void ForceScoreboardAll(bool);
virtual bool HasPreGame();
virtual int GetPreGameDuration();
virtual void GameLoadingFinished(int);
virtual void SyncMigrationGameDataWithSession(bool);
virtual void SerializeMigrationGameData(idSerializer *);
virtual void SerializeMigrationUserData(idSerializer *, idGameChallenge::playerData_t *);
virtual gameTeam_t GetTeamNumber(const idGameChallenge::playerData_t *);
virtual void SetTeamRenderModel(idGameChallenge::playerData_t *);
virtual bool PlayerStateExpired(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_GAME_MODE_INFO(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_NONE(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void RespawnPlayer(idGameChallenge::playerData_t *, idDoomSpawnManager::commandType_t);
virtual void FinalizeRespawnPlayer(idGameChallenge::playerData_t *, const idVec3 *, const idAngles *);
virtual void DebugAllSpawnPoints();
virtual const idDeclMD6 *GetPlayerModelMD6(const idPlayer *);
virtual bool IsLeaderTied();
virtual int GetLeaderPlayerIndex();
virtual int GetLeaderEntityNumber();
virtual int GetRunnerUpScore();
virtual int GetHighScore();
virtual bool ScoreLimitReached();
virtual int GetPlayerScore(const idGameChallenge::playerData_t *);
virtual void GetScoringData(const idGameChallenge::playerData_t *, int *, int *, int *, int *);
virtual int GetTeamScore(gameTeam_t);
virtual int GetScoreLimit();
virtual bool DidPlayerWin(int);
virtual void BroadcastKillMessage(int, int, const idDeclDamage *, bool, int, int);
virtual bool FriendlyFireEnabled();
virtual bool PlayerReviveEnabled();
virtual void OnTriggerTouched(idTrigger_GameChallenge *, idEntity *, int);
virtual int GetPrimaryScoreboardStat(int);
virtual int GetSecondaryScoreboardStat(int);
virtual void Notify_FlagCaptured(struct idProp_CTF_Flag *, idEntity *);
virtual void PostStatsToLeaderboard();
virtual const leaderboardDefinition_t *GetLeaderboard();
virtual int GetSecondaryLeaderboardStat(int);
virtual void LoadMultiplayerDecls();
virtual void ScorePlayerKill(int, int);
virtual void ScoreTeamKill(int, int);
bool isTeamGame;
const idDeclMD6 *teamNoneModelDef;
const idDeclMD6 *teamRedModelDef;
const idDeclMD6 *teamBlueModelDef;
const idDeclMD6 *teamGreenModelDef;
const idDeclMD6 *teamYellowModelDef;
};
// IDA Local Type ordinal 19897; PDB kind: class.
class idGameChallenge::SyncPlayersWithLobbyUsers::__l2::idSWFScriptFunction_LeaveGame : public idSWFScriptFunction_RefCounted
{
public:
// Recovered virtual interface; IDA vtable ordinal 19898.
virtual ~idSWFScriptFunction_LeaveGame();
virtual idSWFScriptVar *Call(idSWFScriptVar *result, idSWFScriptObject *, const idSWFParmList *);
virtual void AddRef();
virtual void Release();
virtual idSWFScriptObject *GetPrototype();
virtual void SetPrototype(idSWFScriptObject *);
idEntityPtr<idGameChallenge_Coop> gc;
gameDialogMessages_t msg;
};
// IDA Local Type ordinal 19899; PDB kind: class.
class idGameChallenge_DM : public idGameChallenge_PVP
{
public:
// Recovered virtual interface; IDA vtable ordinal 19900.
virtual idTypeInfo *GetType();
virtual ~idGameChallenge_DM();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual void StartPreGame();
virtual void BeginGame();
virtual void EndGame();
virtual void GameOver();
virtual void StartRound();
virtual void EndRound();
virtual void FinishGame();
virtual void SetPlayerState(idGameChallenge::playerData_t *, challengePlayerState_t, int);
virtual void ProcessPlayerStates();
virtual bool Restart();
virtual void RestartPlayer(idPlayer *);
virtual void SetSpectator(idGameChallenge::playerData_t *, bool);
virtual bool RegisterNewPlayer(idGameChallenge::playerData_t *, idPlayer *, bool);
virtual bool IsTeamGame();
virtual bool AllowSpectators();
virtual bool CanScore();
virtual void ForceScoreboardAll(bool);
virtual bool HasPreGame();
virtual int GetPreGameDuration();
virtual void GameLoadingFinished(int);
virtual void SyncMigrationGameDataWithSession(bool);
virtual void SerializeMigrationGameData(idSerializer *);
virtual void SerializeMigrationUserData(idSerializer *, idGameChallenge::playerData_t *);
virtual gameTeam_t GetTeamNumber(const idGameChallenge::playerData_t *);
virtual void SetTeamRenderModel(idGameChallenge::playerData_t *);
virtual bool PlayerStateExpired(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_GAME_MODE_INFO(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_NONE(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void RespawnPlayer(idGameChallenge::playerData_t *, idDoomSpawnManager::commandType_t);
virtual void FinalizeRespawnPlayer(idGameChallenge::playerData_t *, const idVec3 *, const idAngles *);
virtual void DebugAllSpawnPoints();
virtual const idDeclMD6 *GetPlayerModelMD6(const idPlayer *);
virtual bool IsLeaderTied();
virtual int GetLeaderPlayerIndex();
virtual int GetLeaderEntityNumber();
virtual int GetRunnerUpScore();
virtual int GetHighScore();
virtual bool ScoreLimitReached();
virtual int GetPlayerScore(const idGameChallenge::playerData_t *);
virtual void GetScoringData(const idGameChallenge::playerData_t *, int *, int *, int *, int *);
virtual int GetTeamScore(gameTeam_t);
virtual int GetScoreLimit();
virtual bool DidPlayerWin(int);
virtual void BroadcastKillMessage(int, int, const idDeclDamage *, bool, int, int);
virtual bool FriendlyFireEnabled();
virtual bool PlayerReviveEnabled();
virtual void OnTriggerTouched(idTrigger_GameChallenge *, idEntity *, int);
virtual int GetPrimaryScoreboardStat(int);
virtual int GetSecondaryScoreboardStat(int);
virtual void Notify_FlagCaptured(struct idProp_CTF_Flag *, idEntity *);
virtual void PostStatsToLeaderboard();
virtual const leaderboardDefinition_t *GetLeaderboard();
virtual int GetSecondaryLeaderboardStat(int);
virtual void LoadMultiplayerDecls();
virtual void ScorePlayerKill(int, int);
virtual void ScoreTeamKill(int, int);
};
// IDA Local Type ordinal 19901; PDB kind: class.
class idGameChallenge_DM_FFA : public idGameChallenge_DM
{
public:
// Recovered virtual interface; IDA vtable ordinal 19902.
virtual idTypeInfo *GetType();
virtual ~idGameChallenge_DM_FFA();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual void StartPreGame();
virtual void BeginGame();
virtual void EndGame();
virtual void GameOver();
virtual void StartRound();
virtual void EndRound();
virtual void FinishGame();
virtual void SetPlayerState(idGameChallenge::playerData_t *, challengePlayerState_t, int);
virtual void ProcessPlayerStates();
virtual bool Restart();
virtual void RestartPlayer(idPlayer *);
virtual void SetSpectator(idGameChallenge::playerData_t *, bool);
virtual bool RegisterNewPlayer(idGameChallenge::playerData_t *, idPlayer *, bool);
virtual bool IsTeamGame();
virtual bool AllowSpectators();
virtual bool CanScore();
virtual void ForceScoreboardAll(bool);
virtual bool HasPreGame();
virtual int GetPreGameDuration();
virtual void GameLoadingFinished(int);
virtual void SyncMigrationGameDataWithSession(bool);
virtual void SerializeMigrationGameData(idSerializer *);
virtual void SerializeMigrationUserData(idSerializer *, idGameChallenge::playerData_t *);
virtual gameTeam_t GetTeamNumber(const idGameChallenge::playerData_t *);
virtual void SetTeamRenderModel(idGameChallenge::playerData_t *);
virtual bool PlayerStateExpired(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_GAME_MODE_INFO(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_NONE(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void RespawnPlayer(idGameChallenge::playerData_t *, idDoomSpawnManager::commandType_t);
virtual void FinalizeRespawnPlayer(idGameChallenge::playerData_t *, const idVec3 *, const idAngles *);
virtual void DebugAllSpawnPoints();
virtual const idDeclMD6 *GetPlayerModelMD6(const idPlayer *);
virtual bool IsLeaderTied();
virtual int GetLeaderPlayerIndex();
virtual int GetLeaderEntityNumber();
virtual int GetRunnerUpScore();
virtual int GetHighScore();
virtual bool ScoreLimitReached();
virtual int GetPlayerScore(const idGameChallenge::playerData_t *);
virtual void GetScoringData(const idGameChallenge::playerData_t *, int *, int *, int *, int *);
virtual int GetTeamScore(gameTeam_t);
virtual int GetScoreLimit();
virtual bool DidPlayerWin(int);
virtual void BroadcastKillMessage(int, int, const idDeclDamage *, bool, int, int);
virtual bool FriendlyFireEnabled();
virtual bool PlayerReviveEnabled();
virtual void OnTriggerTouched(idTrigger_GameChallenge *, idEntity *, int);
virtual int GetPrimaryScoreboardStat(int);
virtual int GetSecondaryScoreboardStat(int);
virtual void Notify_FlagCaptured(struct idProp_CTF_Flag *, idEntity *);
virtual void PostStatsToLeaderboard();
virtual const leaderboardDefinition_t *GetLeaderboard();
virtual int GetSecondaryLeaderboardStat(int);
virtual void LoadMultiplayerDecls();
virtual void ScorePlayerKill(int, int);
virtual void ScoreTeamKill(int, int);
};
// IDA Local Type ordinal 19903; PDB kind: class.
class idGameChallenge_DM_TDM : public idGameChallenge_DM
{
public:
// Recovered virtual interface; IDA vtable ordinal 19904.
virtual idTypeInfo *GetType();
virtual ~idGameChallenge_DM_TDM();
virtual idEventArg *CallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool RespondsTo(const idEventDef *);
virtual idEventArg *InternalCallEvent(idEventArg *result, const idEventDef *, const idEventArg *);
virtual bool InternalRespondsTo(const idEventDef *);
virtual void PostSpawn();
virtual void Remove();
virtual void DeleteSubEntities();
virtual bool Draw(idPlayer *);
virtual void JobSync();
virtual void Think();
virtual void PauseThink();
virtual bool ShouldEnterDormancy();
virtual bool ShouldLeaveDormancy();
virtual void DormantBegin();
virtual void DormantEnd(const int);
virtual idRenderModelInfo *GetRenderModelInfo();
virtual const idRenderModelInfo *GetRenderModelInfo_2();
virtual void GetScale(idVec3 *);
virtual void SetScale(const idVec3 *);
virtual void SetModelByName(const char *);
virtual void SetModel(idRenderModel *);
virtual const idMaterial *GetCustomMaterial();
virtual void SetColor(const idVec4 *);
virtual void SetColor_2(const idColor *);
virtual void SetColor_3(const idVec3 *);
virtual void SetColor_4(float, float, float);
virtual void SetColor_5(float, float, float, float);
virtual void GetColor(idVec4 *);
virtual void GetColor_2(idColor *);
virtual void GetColor_3(idVec3 *);
virtual void Hide(bool);
virtual void Hide_2();
virtual void Show();
virtual void GetModelTransform(idVec3 *, idMat3 *);
virtual void GetSoundTransform(idVec3 *, idMat3 *);
virtual void UpdateModelTransform();
virtual void UpdateFX();
virtual void ProjectOverlay(const idVec3 *, const idVec3 *, float, const char *);
virtual idPresentable *AllocPresentable(idRenderModel *);
virtual const idComponentTimeLine *GetComponentTimeLine();
virtual idComponentTimeLine *GetComponentTimeLine_2();
virtual bool UpdateAnimationControllers();
virtual void UpdateAttachments();
virtual const idAnimStack *GetAnimStack();
virtual idAnimStack *GetAnimStack_2();
virtual idIndex<short,enum invalidJointIndex_t> *GetJointIndexFromTrace(idIndex<short,enum invalidJointIndex_t> *result, trace_t);
virtual awPathResult_t ChangeAnimWebState(const char *, const char *);
virtual awPathResult_t ChangeAnimWebState_2(const char *);
virtual awPathResult_t ForceAnimWebState(const char *);
virtual awPathResult_t ChangeAnimWebStateVia(const char *, const char *, const char *, const char *);
virtual awPathResult_t ChangeAnimWebStateVia_2(const char *, const char *);
virtual idAnimWebCmdCtx *GetAnimWebCmdCtx();
virtual const idAnimWebCmdCtx *GetAnimWebCmdCtx_2();
virtual const idAnimator_AF *GetAF();
virtual idAnimator_AF *GetAF_2();
virtual void PreBind();
virtual void PostBind();
virtual void PreUnbind();
virtual void PostUnbind();
virtual const splineLocation_t *GetSplineLocation();
virtual void SetAxis(const idMat3 *);
virtual bool CanDisablePhysics(const idEntity *);
virtual collide_t Collide(const int, trace_t *, const idVec3 *);
virtual collide_t Contact(const int, contactInfo_t *);
virtual void ApplyImpulse(const int, const int, const idVec3 *, const idVec3 *);
virtual void ApplyImpulseFromEntity(const idEntity *, const int, const idVec3 *, const idVec3 *);
virtual void ApplyForce(const int, const int, const idVec3 *, const idVec3 *);
virtual bool Crush(const int);
virtual void ApplyDamage(const int, const int, const idDeclDamage *);
virtual void ActivatePhysics(const int);
virtual void DeactivatePhysics(const int);
virtual void ApplyWaterEffects(const int, const int);
virtual void ApplyWaterSplashEffects(const int, const int, surfTypes_t, idPhysicsCallbacks::splashState_t);
virtual bool TakesDamage();
virtual void DamageFeedback(idEntity *, idEntity *, const idDeclDamage *, float *);
virtual void KilledNotification(const idEntity *, const idEntity *, const idDeclDamage *, const float);
virtual float Damage(idEntity *, idEntity *, const idDeclDamage *, const float, const idVec3 *, trace_t *);
virtual bool CalcDamageImpulse(const idEntity *, const idEntity *, const idDeclDamage *, const float, const idVec3 *, const trace_t *, idVec3 *, idVec3 *);
virtual bool IsTargetLockable(const idDeclAmmo *);
virtual void AddProjectileLock();
virtual void RemoveProjectileLock();
virtual const idScriptObject *GetScriptObject();
virtual idScriptObject *GetScriptObject_2();
virtual bool ShouldConstructScriptObjectAtSpawn();
virtual idThread *GetStateThread();
virtual int AddThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual void RemoveThread(const idHandle<int,enum invalidThreadHandle_t,0>);
virtual idHandle<int,enum invalidThreadHandle_t,0> *GetThread(idHandle<int,enum invalidThreadHandle_t,0> *result, const int);
virtual int NumThreads();
virtual int MaxThreads();
virtual void ExecuteThread(idThread *);
virtual void ResetFSMWaitThreadIfPossible(idThread *);
virtual bool HandleGuiEvent(const sysEvent_t *);
virtual void ActivateTargets(idEntity *);
virtual bool GetRcCarCanTarget();
virtual const idBaseHealth *GetHealthComponent();
virtual idBaseHealth *GetHealthComponent_2();
virtual const idSmartLootComponent *GetSmartLootComponent();
virtual idSmartLootComponent *GetSmartLootComponent_2();
virtual void Teleport(const idVec3 *, const idAngles *);
virtual bool IsPusher();
virtual const idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList();
virtual idList<idEntityPtr<idEntity>,5> *GetTriggerTouchList_2();
virtual void TestFunctionality();
virtual float GetUsableDistance();
virtual float GetCrosshairIconDistance();
virtual usableState_t GetUsableState(const idEntity *, const idFocusTrace *);
virtual bool ModifyCrosshairInfo(const idEntity *, const idFocusTrace *, const usableState_t, idCrosshairInfo *);
virtual bool IsCrosshairDisabled(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsCrosshairSubdued(const idEntity *, const idFocusTrace *, const usableState_t);
virtual bool IsEverUsable(const idEntity *);
virtual bool IsCurrentlyUsable(const idEntity *);
virtual bool Use(idEntity *, const usableState_t);
virtual void Dropped(idEntity *, const idDeclInventory *);
virtual const idInventoryCollection *GetInventory();
virtual idInventoryCollection *GetInventory_2();
virtual void InventoryAdded(idInventoryItem *, int);
virtual void InventoryRemoved(idInventoryItem *);
virtual const idAttachmentCollection *GetAttachments();
virtual idAttachmentCollection *GetAttachments_2();
virtual void EnableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual void DisableAIEventResponse(const idAIEvent::aiEventClass_t);
virtual bool CanReceiveAIEvents(const int);
virtual bool RespondsToAIEvent(const idAIEvent *);
virtual void OnAIEvent(const idAIEvent *);
virtual bool IsDead();
virtual bool IsDying();
virtual idFaction *GetFaction();
virtual const idFaction *GetFaction_2();
virtual idEntityAuditor *GetAuditor();
virtual void GetVisibilityPoint(const visPoint_t, idVec3 *);
virtual void GetAimPoint(const aimPoint_t, idVec3 *);
virtual void GetEyePos(idVec3 *);
virtual bool IsVisible();
virtual idDynamicCoverMgr *GetDynamicCoverMgr();
virtual const idDynamicCoverMgr *GetDynamicCoverMgr_2();
virtual const idAAS2 *GetAAS();
virtual void GetViewStateFOV(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual void GetViewStateFOV_2(idVec3 *, unsigned __int8 *, unsigned __int8 *);
virtual int GetNumRepairBotTetherPoints();
virtual bool GetRepairBotTetherPoint(const int, const int, idVec3 *);
virtual idEntityInterface *CreateEntityInterface(idGame *);
virtual void ShowEditingDialog();
virtual void UpdateEditingDialog();
virtual void UpdateModifiedProperties();
virtual inputSettings_t *GetInputSettings(inputSettings_t *result, idPlayer *);
virtual bool EvaluateControls(usercmd_t *, usercmd_t *);
virtual void CheckForErrors(idList<idStr,5> *);
virtual void DebugDrawEntity(const idColor *, int);
virtual void ClientThink();
virtual void Serialize(idSerializer *);
virtual void PostSerializeRead(bool);
virtual void OnActivate(idEntity *);
virtual void OnMakeActivatable(const bool);
virtual void OnNotifyProgressionOwner();
virtual void StartPreGame();
virtual void BeginGame();
virtual void EndGame();
virtual void GameOver();
virtual void StartRound();
virtual void EndRound();
virtual void FinishGame();
virtual void SetPlayerState(idGameChallenge::playerData_t *, challengePlayerState_t, int);
virtual void ProcessPlayerStates();
virtual bool Restart();
virtual void RestartPlayer(idPlayer *);
virtual void SetSpectator(idGameChallenge::playerData_t *, bool);
virtual bool RegisterNewPlayer(idGameChallenge::playerData_t *, idPlayer *, bool);
virtual bool IsTeamGame();
virtual bool AllowSpectators();
virtual bool CanScore();
virtual void ForceScoreboardAll(bool);
virtual bool HasPreGame();
virtual int GetPreGameDuration();
virtual void GameLoadingFinished(int);
virtual void SyncMigrationGameDataWithSession(bool);
virtual void SerializeMigrationGameData(idSerializer *);
virtual void SerializeMigrationUserData(idSerializer *, idGameChallenge::playerData_t *);
virtual gameTeam_t GetTeamNumber(const idGameChallenge::playerData_t *);
virtual void SetTeamRenderModel(idGameChallenge::playerData_t *);
virtual bool PlayerStateExpired(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void EnterState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_GAME_MODE_INFO(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void StateExpired_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_NONE(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_VDM_FORCE_SELECT_LOADOUT(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_WAITING_TO_RESPAWN_FROM_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_SPECTATE_AFTER_DEATH(idGameChallenge::playerData_t *);
virtual void HandleState_PLAYER_STATE_RESPAWNING(idGameChallenge::playerData_t *);
virtual void RespawnPlayer(idGameChallenge::playerData_t *, idDoomSpawnManager::commandType_t);
virtual void FinalizeRespawnPlayer(idGameChallenge::playerData_t *, const idVec3 *, const idAngles *);
virtual void DebugAllSpawnPoints();
virtual const idDeclMD6 *GetPlayerModelMD6(const idPlayer *);
virtual bool IsLeaderTied();
virtual int GetLeaderPlayerIndex();
virtual int GetLeaderEntityNumber();
virtual int GetRunnerUpScore();
virtual int GetHighScore();
virtual bool ScoreLimitReached();
virtual int GetPlayerScore(const idGameChallenge::playerData_t *);
virtual void GetScoringData(const idGameChallenge::playerData_t *, int *, int *, int *, int *);
virtual int GetTeamScore(gameTeam_t);
virtual int GetScoreLimit();
virtual bool DidPlayerWin(int);
virtual void BroadcastKillMessage(int, int, const idDeclDamage *, bool, int, int);
virtual bool FriendlyFireEnabled();
virtual bool PlayerReviveEnabled();
virtual void OnTriggerTouched(idTrigger_GameChallenge *, idEntity *, int);
virtual int GetPrimaryScoreboardStat(int);
virtual int GetSecondaryScoreboardStat(int);
virtual void Notify_FlagCaptured(struct idProp_CTF_Flag *, idEntity *);
virtual void PostStatsToLeaderboard();
virtual const leaderboardDefinition_t *GetLeaderboard();
virtual int GetSecondaryLeaderboardStat(int);
virtual void LoadMultiplayerDecls();
virtual void ScorePlayerKill(int, int);
virtual void ScoreTeamKill(int, int);
};