CBaseAnimating: Difference between revisions

From SigMod
Jump to navigation Jump to search
No edit summary
No edit summary
 
(10 intermediate revisions by 4 users not shown)
Line 3: Line 3:


'''Source location : [https://github.com/sreechar/TF2-Source-Code/blob/master/tf2_src/game/server/baseanimating.h /game/server/baseanimating.h]'''
'''Source location : [https://github.com/sreechar/TF2-Source-Code/blob/master/tf2_src/game/server/baseanimating.h /game/server/baseanimating.h]'''
'''VScript : [https://developer.valvesoftware.com/wiki/Team_Fortress_2/Scripting/Script_Functions#CBaseAnimating Script_Functions#CBaseAnimating]'''


== [[Classes|Class Structure]] ==
== [[Classes|Class Structure]] ==
Line 26: Line 28:
|'''m_nSkin'''
|'''m_nSkin'''
|Integer
|Integer
|The skin for this entity's model.
|The skin for this entity's model. (For players, see: [[CTFPlayer]].m_nForcedSkin)
|-
|-
|'''m_nBody'''
|'''m_nBody'''
|Integer
|Integer
|
|The active [https://developer.valvesoftware.com/wiki/$bodygroup Body Group]
|-
|-
|'''m_nHitboxSet'''
|'''m_nHitboxSet'''
|Integer
|Integer
|
|The active [https://developer.valvesoftware.com/wiki/$hboxset Hitbox Set].
|-
|-
|'''m_flModelScale'''
|'''m_flModelScale'''
Line 46: Line 48:
| style="width: 50%;" |'''000'''
| style="width: 50%;" |'''000'''
| style="width: 15%;" |Float
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |[https://developer.valvesoftware.com/wiki/$poseparameter Pose Parameters]
|-
|-
|'''001'''
|'''001'''
Line 139: Line 141:
|Float
|Float
|
|
|-
| colspan="3" style="padding: 0 auto; margin: 0 auto;" |
{| class="wikitable" style="margin: 0 auto; width: 100%; padding: 0;"
! colspan="3" style="background-color: rgb(45, 62, 97)" |
|}
|}
|}
|-
|-
|'''m_nSequence'''
|'''m_nSequence'''
|Integer
|Integer
|The animation sequence this entity's model is playing.
|The animation sequence this entity's model is playing. (For player viewmodel anims, see [[CBasePlayer]].m_hViewModel.m_nSequence)
|-
|-
|'''m_flPlaybackRate'''
|'''m_flPlaybackRate'''
|Float
|Float
|
|Modifier for how fast this animation will play. (Default: 1)
Changing this value will change the animation point to where it would have been if it were playing at the new playback rate the entire time.
|-
|-
| colspan="3" style="padding: 0; margin: 0;" |
| colspan="3" style="padding: 0; margin: 0;" |
Line 155: Line 163:
| style="width: 50%;" |'''000'''
| style="width: 50%;" |'''000'''
| style="width: 15%;" |Float
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Bone controller setting (0..1)
|-
|-
|'''001'''
|'''001'''
Line 168: Line 176:
|Float
|Float
|
|
|-
| colspan="3" style="padding: 0 auto; margin: 0 auto;" |
{| class="wikitable" style="margin: 0 auto; width: 100%; padding: 0;"
! colspan="3" style="background-color: rgb(45, 62, 97)" |
|}
|}
|}
|-
|-
|'''m_bClientSideAnimation'''
|'''m_bClientSideAnimation'''
|Boolean
|Boolean
|
|Tells whether or not we're using client-side animation. (Useful for looping animation objects)
|-
|-
|'''m_bClientSideFrameReset'''
|'''m_bClientSideFrameReset'''
Line 187: Line 200:
|-
|-
|'''m_nMuzzleFlashParity'''
|'''m_nMuzzleFlashParity'''
|Integer
|Unsigned Char
|
|Incremented each time the entity is told to do a muzzle flash. The client picks up the change and draws the flash.
|-
|-
|'''m_hLightingOrigin'''
|'''m_hLightingOrigin'''
|Integer
|Handle
|
|An [https://developer.valvesoftware.com/wiki/Info_lighting info_lighting] or [https://developer.valvesoftware.com/wiki/Info_target info_target] from which to sample lighting (instead of the model's origin).
|-
|-
|'''m_hLightingOriginRelative'''
|'''m_hLightingOriginRelative'''
|Integer
|Handle
|
|Deprecated. The info_lighting_relative from which to sample lighting instead of the entity's origin. Use Lighting Origin instead.
|-
|-
| colspan="3" style="padding: 0; margin: 0;" |
| colspan="3" style="padding: 0; margin: 0;" |
Line 204: Line 217:
| style="width: 50%;" |'''m_flCycle'''
| style="width: 50%;" |'''m_flCycle'''
| style="width: 15%;" |Float
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |0 - 1 How far along is the animation, 1 being finished. Changing this does nothing.
|-
| colspan="3" style="padding: 0 auto; margin: 0 auto;" |
{| class="wikitable" style="margin: 0 auto; width: 100%; padding: 0;"
! colspan="3" style="background-color: rgb(45, 62, 97)" |
|}
|}
|}
|-
|-
|'''m_fadeMinDist'''
|'''m_fadeMinDist'''
|Float
|Float
|
|Model distance fading. Point at which model is completely faded and ceases to be rendered.
|-
|-
|'''m_fadeMaxDist'''
|'''m_fadeMaxDist'''
|Float
|Float
|
|Model distance fading. Point at which fading is inactive.
|-
|-
|'''m_flFadeScale'''
|'''m_flFadeScale'''
|Float
|Float
|
|Model distance fading. Scale applied to m_fadeMinDist and m_fadeMaxDist.
|}
|}


Line 228: Line 246:
|-
|-
| style="width: 50%;" |'''InputBecomeRagdoll'''
| style="width: 50%;" |'''InputBecomeRagdoll'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputIgnite'''
| style="width: 50%;" |'''InputIgnite'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputIgniteHitboxFireScale'''
| style="width: 50%;" |'''InputIgniteHitboxFireScale'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputIgniteLifetime'''
| style="width: 50%;" |'''InputIgniteLifetime'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputIgniteNumHitboxFires'''
| style="width: 50%;" |'''InputIgniteNumHitboxFires'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputSetLightingOrigin'''
| style="width: 50%;" |'''InputSetLightingOrigin'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputSetLightingOriginRelative'''
| style="width: 50%;" |'''InputSetLightingOriginRelative'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
|-
| style="width: 50%;" |'''InputSetModel'''
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''InputSetModelScale'''
| style="width: 50%;" |'''InputSetModelScale'''
| style="width: 15%;" |
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
|-
| style="width: 50%;" |'''InputSetCycle'''
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
|-
| style="width: 50%;" |'''InputSetPlaybackRate'''
| style="width: 15%;" |Input (Void)
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''m_OnIgnite'''
| style="width: 50%;" |'''m_OnIgnite'''
| style="width: 15%;" |
| style="width: 15%;" |Output
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''m_bClientSideAnimation'''
| style="width: 50%;" |'''m_bClientSideAnimation'''
| style="width: 15%;" |
| style="width: 15%;" |Boolean
| style="width: 35%;" |
| style="width: 35%;" |Tells whether or not we're using client-side animation. (Useful for looping animation objects)
|-
|-
| style="width: 50%;" |'''m_bClientSideFrameReset'''
| style="width: 50%;" |'''m_bClientSideFrameReset'''
| style="width: 15%;" |
| style="width: 15%;" |Boolean
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''m_bSequenceFinished'''
| style="width: 50%;" |'''m_bSequenceFinished'''
| style="width: 15%;" |
| style="width: 15%;" |Boolean
| style="width: 35%;" |
| style="width: 35%;" |Flag set when StudioAdvanceFrame moves across a frame boundry
|-
|-
| style="width: 50%;" |'''m_bSequenceLoops'''
| style="width: 50%;" |'''m_bSequenceLoops'''
| style="width: 15%;" |
| style="width: 15%;" |Boolean
| style="width: 35%;" |
| style="width: 35%;" |Does our sequence loop?
|-
|-
| style="width: 50%;" |'''m_fBoneCacheFlags'''
| style="width: 50%;" |'''m_fBoneCacheFlags'''
| style="width: 15%;" |
| style="width: 15%;" |Unsigned short
| style="width: 35%;" |
| style="width: 35%;" |Used for bone cache state on model
|-
|-
| style="width: 50%;" |'''m_fadeMaxDist'''
| style="width: 50%;" |'''m_fadeMaxDist'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Model distance fading. Point at which fading is inactive.
|-
|-
| style="width: 50%;" |'''m_fadeMinDist'''
| style="width: 50%;" |'''m_fadeMinDist'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Model distance fading. Point at which model is completely faded and ceases to be rendered.
|-
|-
| style="width: 50%;" |'''m_flCycle'''
| style="width: 50%;" |'''m_flCycle'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |0 - 1 How far along is the animation, 1 being finished. Changing this does nothing.
|-
|-
| style="width: 50%;" |'''m_flDissolveStartTime'''
| style="width: 50%;" |'''m_flDissolveStartTime'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |When did we start dissolving?
|-
|-
| style="width: 50%;" |'''m_flEncodedController'''
| style="width: 50%;" |'''m_flEncodedController'''
| style="width: 15%;" |
| style="width: 15%;" |Array (Float)
| style="width: 35%;" |
| style="width: 35%;" |Bone controller setting (0..1)
|-
|-
| style="width: 50%;" |'''m_flFadeScale'''
| style="width: 50%;" |'''m_flFadeScale'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Model distance fading. Scale applied to m_fadeMinDist and m_fadeMaxDist.
|-
|-
| style="width: 50%;" |'''m_flGroundSpeed'''
| style="width: 50%;" |'''m_flGroundSpeed'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Computed linear movement rate for current sequence
|-
|-
| style="width: 50%;" |'''m_flLastEventCheck'''
| style="width: 50%;" |'''m_flLastEventCheck'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Cycle index of when events were last checked
|-
|-
| style="width: 50%;" |'''m_flModelScale'''
| style="width: 50%;" |'''m_flModelScale'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |The scale of this entity's model.
|-
|-
| style="width: 50%;" |'''m_flPlaybackRate'''
| style="width: 50%;" |'''m_flPlaybackRate'''
| style="width: 15%;" |
| style="width: 15%;" |Float
| style="width: 35%;" |
| style="width: 35%;" |Modifier for how fast this animation will play. (Default: 1)
Changing this value will change the animation point to where it would have been if it were playing at the new playback rate the entire time.
|-
|-
| style="width: 50%;" |'''m_flPoseParameter'''
| style="width: 50%;" |'''m_flPoseParameter'''
| style="width: 15%;" |
| style="width: 15%;" |Array (Float)
| style="width: 35%;" |
| style="width: 35%;" |[https://developer.valvesoftware.com/wiki/$poseparameter Pose Parameters]
|-
|-
| style="width: 50%;" |'''m_hLightingOrigin'''
| style="width: 50%;" |'''m_hLightingOrigin'''
| style="width: 15%;" |
| style="width: 15%;" |Handle
| style="width: 35%;" |
| style="width: 35%;" |An [https://developer.valvesoftware.com/wiki/Info_lighting info_lighting] or [https://developer.valvesoftware.com/wiki/Info_target info_target] from which to sample lighting (instead of the model's origin).
|-
|-
| style="width: 50%;" |'''m_hLightingOriginRelative'''
| style="width: 50%;" |'''m_hLightingOriginRelative'''
| style="width: 15%;" |
| style="width: 15%;" |Handle
| style="width: 35%;" |
| style="width: 35%;" |Deprecated. The info_lighting_relative from which to sample lighting instead of the entity's origin. Use Lighting Origin instead.
|-
|-
| style="width: 50%;" |'''m_iIKCounter'''
| style="width: 50%;" |'''m_iIKCounter'''
| style="width: 15%;" |
| style="width: 15%;" |Integer
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''m_iszLightingOrigin'''
| style="width: 50%;" |'''m_iszLightingOrigin'''
| style="width: 15%;" |
| style="width: 15%;" |String
| style="width: 35%;" |
| style="width: 35%;" |Targetname for the m_hLightingOrigin entity.
|-
|-
| style="width: 50%;" |'''m_iszLightingOriginRelative'''
| style="width: 50%;" |'''m_iszLightingOriginRelative'''
| style="width: 15%;" |
| style="width: 15%;" |String
| style="width: 35%;" |
| style="width: 35%;" |Targetname for the m_hLightingOriginRelative entity.
|-
|-
| style="width: 50%;" |'''m_nBody'''
| style="width: 50%;" |'''m_nBody'''
| style="width: 15%;" |
| style="width: 15%;" |Integer
| style="width: 35%;" |
| style="width: 35%;" |The active [https://developer.valvesoftware.com/wiki/$bodygroup Body Group]
|-
|-
| style="width: 50%;" |'''m_nHitboxSet'''
| style="width: 50%;" |'''m_nHitboxSet'''
| style="width: 15%;" |
| style="width: 15%;" |Integer
| style="width: 35%;" |
| style="width: 35%;" |The active [https://developer.valvesoftware.com/wiki/$hboxset Hitbox Set]
|-
|-
| style="width: 50%;" |'''m_nMuzzleFlashParity'''
| style="width: 50%;" |'''m_nMuzzleFlashParity'''
| style="width: 15%;" |
| style="width: 15%;" |Unsigned Char
| style="width: 35%;" |
| style="width: 35%;" |Incremented each time the entity is told to do a muzzle flash. The client picks up the change and draws the flash.
|-
|-
| style="width: 50%;" |'''m_nNewSequenceParity'''
| style="width: 50%;" |'''m_nNewSequenceParity'''
| style="width: 15%;" |
| style="width: 15%;" |Unsigned Char
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''m_nResetEventsParity'''
| style="width: 50%;" |'''m_nResetEventsParity'''
| style="width: 15%;" |
| style="width: 15%;" |Unsigned Char
| style="width: 35%;" |
| style="width: 35%;" |
|-
|-
| style="width: 50%;" |'''m_nSequence'''
| style="width: 50%;" |'''m_nSequence'''
| style="width: 15%;" |
| style="width: 15%;" |Integer
| style="width: 35%;" |
| style="width: 35%;" |The animation sequence this entity's model is playing. (For player viewmodel anims, see [[CBasePlayer]].m_hViewModel.m_nSequence)
|-
|-
| style="width: 50%;" |'''m_nSkin'''
| style="width: 50%;" |'''m_nSkin'''
| style="width: 15%;" |
| style="width: 15%;" |Integer
| style="width: 35%;" |
| style="width: 35%;" |The skin for this entity's model. (For players, see: [[CTFPlayer]].m_nForcedSkin)
|-
|-
| style="width: 50%;" |'''m_pIk'''
| style="width: 50%;" |'''m_pIk'''
| style="width: 15%;" |
| style="width: 15%;" |CIKContext
| style="width: 35%;" |
| style="width: 35%;" |
|}
|}

Latest revision as of 18:57, 7 October 2023

Overview[edit | edit source]

All entities with models inherit from this class, even if they don't have any animations.

Source location : /game/server/baseanimating.h

VScript : Script_Functions#CBaseAnimating

Class Structure[edit | edit source]

SendProps[edit | edit source]

CBaseAnimating
Name Type Description
m_nForceBone Integer
m_vecForce Vector
m_nSkin Integer The skin for this entity's model. (For players, see: CTFPlayer.m_nForcedSkin)
m_nBody Integer The active Body Group
m_nHitboxSet Integer The active Hitbox Set.
m_flModelScale Float The scale of this entity's model.
m_flPoseParameter
000 Float Pose Parameters
001 Float
002 Float
003 Float
004 Float
005 Float
006 Float
007 Float
008 Float
009 Float
010 Float
011 Float
012 Float
013 Float
014 Float
015 Float
016 Float
017 Float
018 Float
019 Float
020 Float
021 Float
022 Float
023 Float
m_nSequence Integer The animation sequence this entity's model is playing. (For player viewmodel anims, see CBasePlayer.m_hViewModel.m_nSequence)
m_flPlaybackRate Float Modifier for how fast this animation will play. (Default: 1)

Changing this value will change the animation point to where it would have been if it were playing at the new playback rate the entire time.

m_flEncodedController
000 Float Bone controller setting (0..1)
001 Float
002 Float
003 Float
m_bClientSideAnimation Boolean Tells whether or not we're using client-side animation. (Useful for looping animation objects)
m_bClientSideFrameReset Boolean
m_nNewSequenceParity Integer
m_nResetEventsParity Integer
m_nMuzzleFlashParity Unsigned Char Incremented each time the entity is told to do a muzzle flash. The client picks up the change and draws the flash.
m_hLightingOrigin Handle An info_lighting or info_target from which to sample lighting (instead of the model's origin).
m_hLightingOriginRelative Handle Deprecated. The info_lighting_relative from which to sample lighting instead of the entity's origin. Use Lighting Origin instead.
serveranimdata
m_flCycle Float 0 - 1 How far along is the animation, 1 being finished. Changing this does nothing.
m_fadeMinDist Float Model distance fading. Point at which model is completely faded and ceases to be rendered.
m_fadeMaxDist Float Model distance fading. Point at which fading is inactive.
m_flFadeScale Float Model distance fading. Scale applied to m_fadeMinDist and m_fadeMaxDist.

Entity DataMaps[edit | edit source]

CBaseAnimating
Name Type Description
InputBecomeRagdoll Input (Void)
InputIgnite Input (Void)
InputIgniteHitboxFireScale Input (Void)
InputIgniteLifetime Input (Void)
InputIgniteNumHitboxFires Input (Void)
InputSetLightingOrigin Input (Void)
InputSetLightingOriginRelative Input (Void)
InputSetModel Input (Void)
InputSetModelScale Input (Void)
InputSetCycle Input (Void)
InputSetPlaybackRate Input (Void)
m_OnIgnite Output
m_bClientSideAnimation Boolean Tells whether or not we're using client-side animation. (Useful for looping animation objects)
m_bClientSideFrameReset Boolean
m_bSequenceFinished Boolean Flag set when StudioAdvanceFrame moves across a frame boundry
m_bSequenceLoops Boolean Does our sequence loop?
m_fBoneCacheFlags Unsigned short Used for bone cache state on model
m_fadeMaxDist Float Model distance fading. Point at which fading is inactive.
m_fadeMinDist Float Model distance fading. Point at which model is completely faded and ceases to be rendered.
m_flCycle Float 0 - 1 How far along is the animation, 1 being finished. Changing this does nothing.
m_flDissolveStartTime Float When did we start dissolving?
m_flEncodedController Array (Float) Bone controller setting (0..1)
m_flFadeScale Float Model distance fading. Scale applied to m_fadeMinDist and m_fadeMaxDist.
m_flGroundSpeed Float Computed linear movement rate for current sequence
m_flLastEventCheck Float Cycle index of when events were last checked
m_flModelScale Float The scale of this entity's model.
m_flPlaybackRate Float Modifier for how fast this animation will play. (Default: 1)

Changing this value will change the animation point to where it would have been if it were playing at the new playback rate the entire time.

m_flPoseParameter Array (Float) Pose Parameters
m_hLightingOrigin Handle An info_lighting or info_target from which to sample lighting (instead of the model's origin).
m_hLightingOriginRelative Handle Deprecated. The info_lighting_relative from which to sample lighting instead of the entity's origin. Use Lighting Origin instead.
m_iIKCounter Integer
m_iszLightingOrigin String Targetname for the m_hLightingOrigin entity.
m_iszLightingOriginRelative String Targetname for the m_hLightingOriginRelative entity.
m_nBody Integer The active Body Group
m_nHitboxSet Integer The active Hitbox Set
m_nMuzzleFlashParity Unsigned Char Incremented each time the entity is told to do a muzzle flash. The client picks up the change and draws the flash.
m_nNewSequenceParity Unsigned Char
m_nResetEventsParity Unsigned Char
m_nSequence Integer The animation sequence this entity's model is playing. (For player viewmodel anims, see CBasePlayer.m_hViewModel.m_nSequence)
m_nSkin Integer The skin for this entity's model. (For players, see: CTFPlayer.m_nForcedSkin)
m_pIk CIKContext