RMenu
Class RuneSlidingWindow

source: c:\runehov\RMenu\Classes\RuneSlidingWindow.uc
Core.Object
   |
   +--UWindow.UWindowBase
      |
      +--UWindow.UWindowWindow
         |
         +--UWindow.UWindowClientWindow
            |
            +--UWindow.UWindowDialogClientWindow
               |
               +--RMenu.RuneWindow
                  |
                  +--RMenu.RuneSlidingWindow
Direct Known Subclasses:None

class RuneSlidingWindow
extends RMenu.RuneWindow

//============================================================================= // RuneSlidingWindow -> For implementing Windows that 'slide' in and out of view //=============================================================================

Function Summary
 void PreSize()
 void SetupMove(int aDistanceDesired, float aTimeDesired)
     
//=============================================================================
// Class Functions
//=============================================================================
 void Tick(float DeltaTime)
     
//=============================================================================
// Superclass Function Overrides
//=============================================================================



Source Code


00001	//=============================================================================
00002	// RuneSlidingWindow	-> For implementing Windows that 'slide' in and out of view
00003	//=============================================================================
00004	class RuneSlidingWindow extends RuneWindow;
00005	
00006	
00007	
00008	//==ISSUES============
00009	//
00010	// *Need to junk all this, goto X,Y version and Ramp UP/DOWN
00011	//
00012	//====================
00013	
00014	
00015	
00016	var		float	Vstart;
00017	var		float	Vend;		//Should always be Zero!
00018	var		float	Vdelta;
00019	
00020	var		int		Dtotal;
00021	var		int		Dcurrent;
00022	
00023	var		float	Ttotal;
00024	var		float	Tpassed;
00025	
00026	
00027	var		bool	bMove;
00028	
00029	
00030	var		int		Yoffset,Xoffset;
00031	
00032	
00033	//=============================================================================
00034	// Class Functions
00035	//=============================================================================
00036	
00037	
00038	function	SetupMove(int	aDistanceDesired,float aTimeDesired)
00039	{
00040		Dtotal=aDistanceDesired;
00041		Ttotal=aTimeDesired;
00042		Tpassed=0;
00043	
00044		Vend=0;		//Always
00045		Vstart=((2*Dtotal)/Ttotal)+Vend;
00046		Vdelta=(Vend-Vstart)/Ttotal;
00047		
00048		bMove=true;
00049	}
00050	
00051	//=============================================================================
00052	// Superclass Function Overrides
00053	//=============================================================================
00054	
00055	
00056	function	Tick(float	DeltaTime)
00057	{
00058	
00059		if(bMove)
00060		{
00061			Tpassed+=DeltaTime;		//Assumption
00062			Dcurrent=((Vdelta*(Tpassed*Tpassed))/2)+(Vstart*Tpassed);			//Simple Integration
00063			//Dcurrent=(Vstart*Tpassed)-((Vdelta*(Tpassed*Tpassed))/2);
00064			if(TPassed>=Ttotal)
00065			{
00066				bMove=false;
00067				Dcurrent=Dtotal;
00068			}
00069		}
00070	}
00071	
00072	
00073	
00074	
00075	function	PreSize()
00076	{
00077		Yoffset=WinHeight-DefaultHeight;
00078		Xoffset=WinWidth-DefaultWidth;
00079	}
00080	
00081	defaultproperties
00082	{
00083	}

End Source Code