class AttackData_t{ void* __vftable;public: // MPropertyDescription = When this attack is used, pause weapon reloads for this long float32 m_flReloadPauseDuration; // MPropertyDescription = When this attack is used, pause shooting for this long float32 m_flPrimaryAttackPauseDuration; // MPropertyDescription = Enemies are slowed for this duration when hit by this attack float32 m_flEnemySlowOnHitDuration; // MPropertyDescription = Enemies are slowed to this speed when hit by this attack float32 m_flEnemySlowOnHitSpeed; // MPropertyDescription = Is this a Heavy melee attack? Otherwise it's considered light. bool bIsHeavyAttack; // MPropertyDescription = When true, this attack can be parried bool m_bCanBeParried; // MPropertyDescription = How long after triggering until we can perform another melee attack float32 m_flCooldownOnMiss; float32 m_flCooldownOnHit; // MPropertyDescription = Half width of the cone at the player float32 m_flTraceConeHalfWidth; // MPropertyDescription = How much force to apply upward on hit float32 m_flKnockUpStrength; // MPropertyDescription = Trigger a big screen shake when this attack hits bool m_bApplyScreenShake; // MPropertyDescription = The curve defining move speed bonus/penalty. This is how we apply the post-movement controller movement slow. CPiecewiseCurve m_SpeedBonusCurve; // MPropertyDescription = The curve defining movement controller target speed. This is what defines the speed boost CPiecewiseCurve m_MovementSpeedCurve; // MPropertyDescription = How much acceleration to apply to use when following the movement speed curve float32 m_flMovementAcc; // MPropertyDescription = How long to be in the attacking state once the attack triggers float32 m_flAttackStateTime; // MPropertyDescription = Animgraph trigger parameter for this attack CGlobalSymbol m_Trigger; // MPropertyStartGroup = Sounds // MPropertyDescription = Sound to play when this attack activates CSoundEventName m_strActivateSound; // MPropertyDescription = Sound to play if this attack hits CSoundEventName m_strHitSound; CSoundEventName m_strHitHeroSound; CSoundEventName m_strHitDebrisSound; // MPropertyDescription = Sound to play if this attack misses CSoundEventName m_strMissSound; // MPropertyDescription = Sound to play when starting the movement dash of this attack CSoundEventName m_strMeleeDashSound; // MPropertyStartGroup = Visuals CResourceNameTyped<CWeakHandle<InfoForResourceTypeIParticleSystemDefinition>> m_MeleeActivateParticle; CResourceNameTyped<CWeakHandle<InfoForResourceTypeIParticleSystemDefinition>> m_MeleeSwingParticle; CResourceNameTyped<CWeakHandle<InfoForResourceTypeIParticleSystemDefinition>> m_MeleeAttackParticle; CResourceNameTyped<CWeakHandle<InfoForResourceTypeIParticleSystemDefinition>> m_MeleeImpactParticle; // MPropertyStartGroup = CameraCitadelCameraOperationsSequence_t m_cameraSequenceAttackStart;};