CBaseAnimating: Difference between revisions
mNo edit summary |
m (Reverted edits by Breakin' Benny (talk) to last revision by Alexiscoutinho) Tag: Rollback |
||
(50 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
# | {{LanguageBar}} | ||
{{stub}} | |||
{{TabsBar|main=gs|base=CBaseAnimating}} | |||
{{CD|CBaseAnimating|base=CBaseEntity|file1=[https://github.com/ValveSoftware/source-sdk-2013/blob/master/src/game/server/baseanimating.cpp baseanimating.cpp]}} | |||
{{seealso|[[:Category:CBaseAnimating]]}} | |||
'''<code>CBaseAnimating</code>''' is the C++ class from which all entities with [[model]]s inherit, even if they don't actually move. | |||
{{important|Following Keyvalues / Inputs / Outputs are available for all entities that inherit this class, but may be overwritten by game code.}} | |||
{{toc-right}} | |||
{{Seealso|[[Model entity/Generic Keyvalues, Inputs and Outputs|More mapping friendly listing for generic KIO of all model entities]]}} | |||
== Keyvalues == | |||
=== KeyValue method === | |||
Doesn't override [[CBaseEntity#::KeyValue_method|CBaseEntity]]'s KeyValue method so no special keys are present. | |||
{{↓|Keyfields}}, {{↓|Input keys}}, {{↓|Outputs}} | |||
=== Keyfields === | |||
{{DEFINE_KEYFIELD|m_nBody|FIELD_INTEGER|body|the active [[$bodygroup]]}} | |||
{{DEFINE_KEYFIELD|m_nHitboxSet|FIELD_INTEGER|hitboxset|the active [[$hboxset]] {{confirm}}{{elaborate}}}} | |||
{{DEFINE_KEYFIELD|m_nSequence|FIELD_INTEGER|sequence}} | |||
{{DEFINE_KEYFIELD|m_flPlaybackRate|FIELD_FLOAT|playbackrate}} | |||
{{DEFINE_KEYFIELD|m_flCycle|FIELD_FLOAT|cycle}} | |||
{{DEFINE_KEYFIELD|m_iszLightingOrigin|FIELD_STRING|LightingOrigin}} | |||
{{DEFINE_KEYFIELD|m_iszLightingOriginRelative|FIELD_STRING|LightingOriginHack|game={{not|{{l4ds}}}}}} | |||
{{DEFINE_KEYFIELD|m_bSuppressAnimSounds|FIELD_BOOLEAN|SuppressAnimSounds|game={{Portal 2|in}}}} | |||
{{DEFINE_KEYFIELD|m_flModelScale|FIELD_FLOAT|modelscale|game={{since|{{l4d2}}{{src13}}}}}} | |||
:{{Note|No key is linked to this field in {{l4d2}}, <code>modelscale</code> is in {{src13}}-based branches and <code>ModelScale</code> since {{as}}}} | |||
:{{confirm|Verify somehow whether it exists in {{src09}} or {{srcmp}}. It doesn't exist in {{src07}} or earlier.}} | |||
{{DEFINE_KEYFIELD|m_flFadeScale|FIELD_FLOAT|fadescale|game={{l4d|removed}}}} | |||
:{{Note|m_flFadeScale along with m_fadeMinDist/m_fadeMaxDist were removed from CBaseAnimating and moved to CBaseEntity class so they are available to all entities}} | |||
== Inputs == | |||
=== Input keys === | |||
{{DEFINE_INPUT|m_nSkin|FIELD_INTEGER|skin|The active [[skin]]}} | |||
{{DEFINE_INPUT|m_nBody|FIELD_INTEGER|SetBodyGroup|{{↑|m_nBody}}}} | |||
{{Note|m_fadeMinDist/m_fadeMaxDist were removed from CBaseAnimating and moved to CBaseEntity class so they are available to all entities}} | |||
{{DEFINE_INPUT|m_fadeMinDist|FIELD_FLOAT|fademindist|game={{l4d|removed}}}} | |||
{{DEFINE_INPUT|m_fadeMaxDist|FIELD_FLOAT|fademaxdist|game={{l4d|removed}}}} | |||
=== Input functions === | |||
{{DEFINE_INPUTFUNC|FIELD_VOID|Ignite|InputIgnite}} | |||
{{DEFINE_INPUTFUNC|FIELD_FLOAT|IgniteLifetime|InputIgniteLifetime}} | |||
{{DEFINE_INPUTFUNC|FIELD_INTEGER|IgniteNumHitboxFires|InputIgniteNumHitboxFires|game={{l4d2|removed}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_FLOAT|IgniteHitboxFireScale|InputIgniteHitboxFireScale|game={{l4d2|removed}}}} | |||
{{note|Since {{l4d2}} following two inputs call the same function that <code>Ignite</code> input calls }} | |||
{{DEFINE_INPUTFUNC|FIELD_INTEGER|IgniteNumHitboxFires|InputIgnite|game={{l4d2|since}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_FLOAT|IgniteHitboxFireScale|InputIgnite|game={{l4d2|since}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_VOID|BecomeRagdoll|InputBecomeRagdoll}} | |||
{{DEFINE_INPUTFUNC|FIELD_STRING|SetModel|InputSetModel|game={{tf2|only}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_FLOAT|SetCycle|InputSetCycle|game={{tf2|only}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_FLOAT|SetPlaybackRate|InputSetPlaybackRate|game={{tf2|only}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_STRING|SetLightingOriginHack|InputSetLightingOriginRelative|game={{l4ds|not}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_VECTOR|SetModelScale|InputSetModelScale|game={{l4d|removed}}}} | |||
{{DEFINE_INPUTFUNC|FIELD_STRING|SetLightingOrigin|InputSetLightingOrigin}} | |||
== Outputs == | |||
{{DEFINE_OUTPUT|m_OnIgnite|OnIgnite|COutputEvent}} | |||
{{DEFINE_OUTPUT|m_OnFizzled|OnFizzled|COutputEvent|game={{Portal 2|in}}}} | |||
== Other fields == | |||
=== Keyless fields === | |||
{{DEFINE_FIELD|m_flGroundSpeed|FIELD_FLOAT}} | |||
{{DEFINE_FIELD|m_flLastEventCheck|FIELD_TIME}} | |||
{{DEFINE_FIELD|m_bSequenceFinished|FIELD_BOOLEAN}} | |||
{{DEFINE_FIELD|m_bSequenceLoops|FIELD_BOOLEAN}} | |||
{{DEFINE_FIELD|m_iIKCounter|FIELD_INTEGER}} | |||
{{DEFINE_FIELD|m_bClientSideAnimation|FIELD_BOOLEAN}} | |||
{{DEFINE_FIELD|m_bClientSideFrameReset|FIELD_BOOLEAN}} | |||
{{DEFINE_FIELD|m_nNewSequenceParity|FIELD_INTEGER}} | |||
{{DEFINE_FIELD|m_nResetEventsParity|FIELD_INTEGER}} | |||
{{DEFINE_FIELD|m_nMuzzleFlashParity|FIELD_CHARACTER}} | |||
{{DEFINE_FIELD|m_hLightingOrigin|FIELD_EHANDLE}} | |||
{{DEFINE_FIELD|m_flDissolveStartTime|FIELD_TIME}} | |||
{{DEFINE_FIELD|m_fBoneCacheFlags|FIELD_SHORT}} | |||
{{DEFINE_FIELD|m_flFrozen|FIELD_FLOAT|game={{l4d2|since}}}} | |||
{{DEFINE_FIELD|m_flFrozenThawRate|FIELD_FLOAT|game={{l4d2|since}}}} | |||
{{DEFINE_FIELD|m_flFrozenMax|FIELD_FLOAT|game={{l4d2|since}}}} | |||
{{DEFINE_FIELD|m_hLightingOriginRelative|FIELD_EHANDLE|game={{l4ds|not}}}} | |||
{{DEFINE_FIELD|m_flModelWidthScale|FIELD_FLOAT|game={{l4d|only}}}} | |||
=== Array fields === | |||
{{DEFINE_ARRAY|m_flPoseParameter|FIELD_FLOAT|24}} | |||
{{DEFINE_ARRAY|m_flEncodedController|FIELD_FLOAT|4}} | |||
=== Custom fields === | |||
{{DEFINE_FIELD|m_pIk|FIELD_CUSTOM}} <!-- DEFINE_CUSTOM_FIELD --> | |||
== Entity debugging == | |||
{{Seealso|[[CBaseEntity#Entity debugging]]}} | |||
=== {{cmd|ent_text}} === | |||
Additional information added to ent_text overlay by this class | |||
* Sequence: (<sequence number>) <sequence name> | |||
* Activity: <activity name> (only if there is one) | |||
* Cycle: <cycle> (<animation time>) | |||
exact format: <!-- just pseudo code kinda --> <pre> | |||
"Sequence: (%3d) %s",GetSequence(), GetSequenceName( GetSequence() ) | |||
"Activity %s", GetSequenceActivityName(GetSequence()) (only if there is one) | |||
"Cycle: %.5f (%.5f)", (float)GetCycle(), m_flAnimTime.Get() | |||
</pre> | |||
[[Category:Classes|B]] |
Latest revision as of 12:04, 30 July 2025


![]() |
---|
CBaseAnimating |
![]() |
CBaseAnimating
is the C++ class from which all entities with models inherit, even if they don't actually move.

Keyvalues
KeyValue method
Doesn't override CBaseEntity's KeyValue method so no special keys are present. Keyfields ↓, Input keys ↓, Outputs ↓
Keyfields
m_nBody <FIELD_INTEGER> (body)
- the active $bodygroup
m_nHitboxSet <FIELD_INTEGER> (hitboxset)
- the active $hboxset [confirm][Elaborate?]
m_nSequence <FIELD_INTEGER> (sequence)
m_flPlaybackRate <FIELD_FLOAT> (playbackrate)
m_flCycle <FIELD_FLOAT> (cycle)
m_iszLightingOrigin <FIELD_STRING> (LightingOrigin)
m_iszLightingOriginRelative (not in )<FIELD_STRING>
(LightingOriginHack)
m_bSuppressAnimSounds (in )<FIELD_BOOLEAN>
(SuppressAnimSounds)
m_flModelScale (in all games since )<FIELD_FLOAT>
(modelscale)
m_flFadeScale (removed since )<FIELD_FLOAT>
(fadescale)
Note:m_flFadeScale along with m_fadeMinDist/m_fadeMaxDist were removed from CBaseAnimating and moved to CBaseEntity class so they are available to all entities
Inputs
Input keys
m_nSkin <FIELD_INTEGER> (skin)
- The active skin
m_nBody <FIELD_INTEGER> (SetBodyGroup)

m_fadeMinDist (removed since )<FIELD_FLOAT>
(fademindist)
m_fadeMaxDist (removed since )<FIELD_FLOAT>
(fademaxdist)
Input functions
Ignite <FIELD_VOID> linked function: InputIgnite
- description todo
IgniteLifetime <FIELD_FLOAT> linked function: InputIgniteLifetime
- description todo
IgniteNumHitboxFires (removed since )<FIELD_INTEGER> linked function: InputIgniteNumHitboxFires
- description todo
IgniteHitboxFireScale (removed since )<FIELD_FLOAT> linked function: InputIgniteHitboxFireScale
- description todo
IgniteNumHitboxFires (in all games since )<FIELD_INTEGER> linked function: InputIgnite
- description todo
IgniteHitboxFireScale (in all games since )<FIELD_FLOAT> linked function: InputIgnite
- description todo
BecomeRagdoll <FIELD_VOID> linked function: InputBecomeRagdoll
- description todo
SetModel (only in )<FIELD_STRING> linked function: InputSetModel
- description todo
SetCycle (only in )<FIELD_FLOAT> linked function: InputSetCycle
- description todo
SetPlaybackRate (only in )<FIELD_FLOAT> linked function: InputSetPlaybackRate
- description todo
SetLightingOriginHack (not in )<FIELD_STRING> linked function: InputSetLightingOriginRelative
- description todo
SetModelScale (removed since )<FIELD_VECTOR> linked function: InputSetModelScale
- description todo
SetLightingOrigin <FIELD_STRING> linked function: InputSetLightingOrigin
- description todo
Outputs
m_OnIgnite <COutputEvent> (OnIgnite)
m_OnFizzled (in )<COutputEvent>
(OnFizzled)
Other fields
Keyless fields
m_flGroundSpeed <FIELD_FLOAT>
m_flLastEventCheck <FIELD_TIME>
m_bSequenceFinished <FIELD_BOOLEAN>
m_bSequenceLoops <FIELD_BOOLEAN>
m_iIKCounter <FIELD_INTEGER>
m_bClientSideAnimation <FIELD_BOOLEAN>
m_bClientSideFrameReset <FIELD_BOOLEAN>
m_nNewSequenceParity <FIELD_INTEGER>
m_nResetEventsParity <FIELD_INTEGER>
m_nMuzzleFlashParity <FIELD_CHARACTER>
m_hLightingOrigin <FIELD_EHANDLE>
m_flDissolveStartTime <FIELD_TIME>
m_fBoneCacheFlags <FIELD_SHORT>
m_flFrozen (in all games since )<FIELD_FLOAT>
m_flFrozenThawRate (in all games since )<FIELD_FLOAT>
m_flFrozenMax (in all games since )<FIELD_FLOAT>
m_hLightingOriginRelative (not in )<FIELD_EHANDLE>
m_flModelWidthScale (only in )<FIELD_FLOAT>
Array fields
m_flPoseParameter[24] <FIELD_FLOAT>
m_flEncodedController[4] <FIELD_FLOAT>
Custom fields
m_pIk <FIELD_CUSTOM>
Entity debugging
ent_text
Additional information added to ent_text overlay by this class
- Sequence: (<sequence number>) <sequence name>
- Activity: <activity name> (only if there is one)
- Cycle: <cycle> (<animation time>)
exact format:
"Sequence: (%3d) %s",GetSequence(), GetSequenceName( GetSequence() ) "Activity %s", GetSequenceActivityName(GetSequence()) (only if there is one) "Cycle: %.5f (%.5f)", (float)GetCycle(), m_flAnimTime.Get()