## Engine
Class SavedMove

source: C:\XIII\Engine\Classes\SavedMove.uc

    Core.Object
       |
       +--Engine.Actor
          |
          +--Engine.Info
             |
             +--Engine.SavedMove

Direct Known Subclasses:None

class SavedMove
extends Engine.Info

    //=============================================================================
    // SavedMove is used during network play to buffer recent client moves,
    // for use when the server modifies the clients actual position, etc.
    // This is a built-in Unreal class and it shouldn't be modified.
    // CHANGENOTE: All Changes in this class are related to the Weapon code update.
    //=============================================================================

Variables
`float` | `Delta` Distance moved.
`EDoubleClickDir` | `DoubleClickMove` Double click info.
`SavedMove` | `NextMove` Next move in linked list.
`float` | `TimeStamp` Time of this move.
`bool` | `bDuck` Distance moved.
`bool` | `bPressedJump` Distance moved.
`bool` | `bRun` Distance moved.

Function Summary
`void` | `Clear()`
`void` | `SetMoveFor(PlayerController P, float DeltaTime, vector NewAccel, EDoubleClickDir InDoubleClick)`

Source Code

    00001	//=============================================================================
    00002	// SavedMove is used during network play to buffer recent client moves,
    00003	// for use when the server modifies the clients actual position, etc.
    00004	// This is a built-in Unreal class and it shouldn't be modified.
    00005	// CHANGENOTE: All Changes in this class are related to the Weapon code update.
    00006	//=============================================================================
    00007	class SavedMove extends Info;
    00008
    00009	// also stores info in Acceleration attribute
    00010	var SavedMove NextMove;		// Next move in linked list.
    00011	var float TimeStamp;		// Time of this move.
    00012	var float Delta;			// Distance moved.
    00013	var bool	bRun;
    00014	var bool	bDuck;
    00015	var bool	bPressedJump;
    00016	var EDoubleClickDir DoubleClickMove;	// Double click info.
    00017
    00018	final function Clear()
    00019	{
    00020		TimeStamp = 0;
    00021		Delta = 0;
    00022		DoubleClickMove = DCLICK_None;
    00023		Acceleration = vect(0,0,0);
    00024		bRun = false;
    00025		bDuck = false;
    00026		bPressedJump = false;
    00027	}
    00028
    00029	final function SetMoveFor(PlayerController P, float DeltaTime, vector NewAccel, EDoubleClickDir InDoubleClick)
    00030	{
    00031		if ( VSize(NewAccel) > 3072 )
    00032			NewAccel = 3072 * Normal(NewAccel);
    00033		if ( Delta > 0 )
    00034			Acceleration = (DeltaTime * NewAccel + Delta * Acceleration)/(Delta + DeltaTime);
    00035		else
    00036			Acceleration = NewAccel;
    00037		Delta += DeltaTime;
    00038
    00039		if ( DoubleClickMove == eDoubleClickDir.DCLICK_None )
    00040			DoubleClickMove = InDoubleClick;
    00041		bRun = (P.bRun > 0);
    00042		bDuck = (P.bDuck > 0);
    00043		bPressedJump = P.bPressedJump || bPressedJump;
    00044		TimeStamp = Level.TimeSeconds;
    00045	}
    00046
    00047	defaultproperties
    00048	{
    00049	}

End Source Code