r5sdk/r5dev/game/shared/takedamageinfo.h

59 lines
1.4 KiB
C
Raw Normal View History

//====== Copyright <20> 1996-2005, Valve Corporation, All rights reserved. =======//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef TAKEDAMAGEINFO_H
#define TAKEDAMAGEINFO_H
#ifdef _WIN32
#pragma once
#endif
#include "mathlib/mathlib.h"
// Used to initialize m_flBaseDamage to something that we know pretty much for sure
// hasn't been modified by a user.
#define BASEDAMAGE_NOT_SPECIFIED FLT_MAX // !TODO: check if this is correct for r5.
struct ScriptOriginatedDamageInfo
{
int m_scriptDamageType;
int m_damageSourceIdentifier;
};
/* 1426 */
class CTakeDamageInfo
{
float m_vecDamageForceMagnitude;
Vector3D m_vecDamageForceDirection;
Vector3D m_vecDamagePosition;
Vector3D m_vecReportedPosition;
int m_hInflictor;
int m_hAttacker;
int m_hWeapon;
__int16 m_hWeaponFileInfo;
bool m_forceKill;
char gap_37[1];
float m_flDamage;
float m_damageCriticalScale;
float m_damageShieldScale;
float m_flMaxDamage;
float m_flHeavyArmorDamageScale;
int m_bitsDamageType;
float m_flRadius;
int m_hitGroup;
int m_hitBox;
ScriptOriginatedDamageInfo m_scriptDamageInfo;
int m_deathPackage;
float m_distanceFromAttackOrigin;
float m_distanceFromExplosionCenter;
bool m_doDeathForce;
char gap_71[3];
int m_damageFlags;
int m_projectilePredictableId;
int m_flinchDirection;
};
#endif // TAKEDAMAGEINFO_H