@@ -53,6 +53,17 @@ enum TTakeDamageFlags_t : uint32_t
5353 DFLAG_IGNORE_ARMOR = 0x800 ,
5454};
5555
56+ struct AttackerInfo_t
57+ {
58+ bool m_bNeedInit;
59+ bool m_bIsPawn;
60+ bool m_bIsWorld;
61+ CHandle<CCSPlayerPawn> m_hAttackerPawn;
62+ uint16_t m_nAttackerPlayerSlot;
63+ int m_iTeamChecked;
64+ int m_nTeam;
65+ };
66+
5667struct CTakeDamageInfoContainer
5768{
5869 CTakeDamageInfo *pInfo;
@@ -64,6 +75,11 @@ class CTakeDamageInfo
6475 [[maybe_unused]] uint8_t __pad0000[0x8 ];
6576
6677public:
78+ CTakeDamageInfo (CBaseEntity* pInflictor, CBaseEntity* pAttacker, CBaseEntity* pAbility, float flDamage, DDamageTypes_t bitsDamageType)
79+ {
80+ g_Signatures->FetchSignature <CTakeDamageInfo_Constructor>(" CTakeDamageInfo_Constructor" )(this , pInflictor, pAttacker, pAbility, &vec3_origin, &vec3_origin, flDamage, bitsDamageType, 0 , nullptr );
81+ }
82+
6783 Vector m_vecDamageForce;
6884 Vector m_vecDamagePosition;
6985 Vector m_vecReportedPosition;
@@ -73,32 +89,41 @@ class CTakeDamageInfo
7389 CHandle<CBaseEntity> m_hAbility;
7490 float m_flDamage;
7591 float m_flTotalledDamage;
92+ float m_flTotalledDamageAbsorbed;
7693 DDamageTypes_t m_bitsDamageType;
7794 int32_t m_iDamageCustom;
7895 uint8_t m_iAmmoType;
7996
8097private:
81- [[maybe_unused]] uint8_t __pad0051 [0xf ];
98+ [[maybe_unused]] uint8_t __pad0059 [0xf ];
8299
83100public:
84101 float m_flOriginalDamage;
85102 bool m_bShouldBleed;
86103 bool m_bShouldSpark;
87104
88105private:
89- [[maybe_unused]] uint8_t __pad0066[0xa ];
106+ [[maybe_unused]] uint8_t __pad006e[0x2 ];
107+
108+ public:
109+ float m_flDamageAbsorbed;
110+
111+ private:
112+ [[maybe_unused]] uint8_t __pad0074[0x8 ];
90113
91114public:
92115 TTakeDamageFlags_t m_nDamageFlags;
93- int32_t m_nNumObjectsPenetrated;
94- uint64_t m_hScriptInstance;
95116
96117private:
97- [[maybe_unused]] uint8_t __pad0080[ 0x14 ];
118+ [[maybe_unused]] uint8_t __pad0084[ 0x4 ];
98119
99120public:
121+ int32_t m_nNumObjectsPenetrated;
122+ float m_flFriendlyFireDamageReductionRatio;
123+ uint64_t m_hScriptInstance;
124+ AttackerInfo_t m_AttackerInfo;
100125 bool m_bInTakeDamageFlow;
101126
102127private:
103- [[maybe_unused]] uint8_t __pad009d[ 0x8 ];
128+ [[maybe_unused]] uint8_t __pad00ad[ 0x4 ];
104129};
0 commit comments