Thread: Pev Research
View Single Post
Anggara_nothing
Veteran Member
Join Date: Jan 2009
Location: Indonesia
Old 08-17-2016 , 21:18   Re: Pev Research
Reply With Quote #38

Quote:
Originally Posted by Solokiller View Post
I've documented entvars_t, though i need to check them again to make sure i didn't miss anything: https://github.com/SamVanheer/HLEnha...progdefs.h#L58

I'm not sure if skin has any special behavior. There's code in the engine that does this:

Code:
if ( ent->v.flags & FL_NOTARGET && ent->v.waterlevel > 0 )
  {
    float v4 = SV_Submerged(ent) * (long double)ent->v.skin * host_frametime;
    float flGravity = 1.0;
    if ( ent->v.gravity != 0.0 )
      flGravity = ent->v.gravity;
    float waterLevel = ent->v.velocity[2] - flGravity * sv_gravity.value * host_frametime;
    ent->v.velocity[2] = waterLevel + host_frametime * ent->v.basevelocity[2];
    ent->v.basevelocity[2] = 0;
    SV_CheckVelocity(ent);
    ent->v.velocity[2] = v4 + ent->v.velocity[2];
  }
I don't know why it's checking FL_NOTARGET ( 128 ) here. This code was once the player physics code, but that was moved to the game so it only runs when an entity uses MOVETYPE_STEP or MOVETYPE_PUSHSTEP. I suppose this could be the bobbing-in-water behavior, but unless the disassembler is wrong it's using skin for this.
For func_ladder, it's used for storing CONTENT enum (CONTeNT_LADDER, CONTENT_SOLID, etc)
Anggara_nothing is offline