Hello guys!
I'm just wondering, when I'm test my mod I'm noticed a strange bug.
There is how that bug work :

1) firstly we crouches and wait while we be sitting absolutely.
2) secondly we just release a IN_DUCK key, then next code block do
action :

// in void CGameMovement::Duck()
{
     ...

     if ( player->m_Local.m_bAllowAutoMovement || bInAir )
    {
          // We released the duck button, we aren't in "duck" and we
...
          if ( ( buttonsReleased & IN_DUCK ) )
          {
           if ( bInDuck && !bDuckJump )
           {     // HERE IS THAT TIME STEMP
                player->m_Local.m_flDucktime = GAMEMOVEMENT_DUCK_TIME;
           }
      }
     ....
}

3) Thirdly when we shall be in transition from "crouch" to "stand"
positions, we just press an IN_DUCK key once again. Like do a Duck
override as it sayed in comment.

As we see, the problem in that when the player has not completely
moved to (normal stay) standing position is available in view of if we
on former are in moving from a sedentary condition to standing and
don't having waited the terminations we shall simply press the IN_DUCK
key one again, ans what? No smooth transitions will work, it will
looks like as simple call of FinishDuck method, and it would be
desirable to do for something like SimpleSpline
(flDuckSeconds/TIME_TO_DUCK) stuff.

Well, if you guys are interested in that to correct sittings as well,
as me, or you already have corrected it, let me know please how I can
add interpolation here, because a code inside duck method is a very
twirled and strange, and I cannot understand where and what there to
add, for do working smooth transition instead of simple FinishDuck
method call....

Thanks!


Vitaly

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to