// Input while in a menu.
class KF2GUIInput extends KFPlayerInput;

var KF2GUIController ControllerOwner;
var PlayerInput BaseInput;

function DrawHUD( HUD H )
{
	//ControllerOwner.RenderMenu(H.Canvas);
}
function PostRender( Canvas Canvas )
{
	if( ControllerOwner.bIsInMenuState )
		ControllerOwner.HandleDrawMenu();
		//ControllerOwner.RenderMenu(Canvas);
}

// Postprocess the player's input.
function PlayerInput( float DeltaTime )
{
	// Do not move.
	ControllerOwner.MenuInput(DeltaTime);

	if( !ControllerOwner.bAbsorbInput )
	{
		aMouseX = 0;
		aMouseY = 0;
		aBaseX = BaseInput.aBaseX;
		aBaseY = BaseInput.aBaseY;
		aBaseZ = BaseInput.aBaseZ;
		aForward = BaseInput.aForward;
		aTurn = BaseInput.aTurn;
		aStrafe = BaseInput.aStrafe;
		aUp = BaseInput.aUp;
		aLookUp = BaseInput.aLookUp;
		Super.PlayerInput(DeltaTime);
	}
	else
	{
		aMouseX = 0;
		aMouseY = 0;
		aBaseX = 0;
		aBaseY = 0;
		aBaseZ = 0;
		aForward = 0;
		aTurn = 0;
		aStrafe = 0;
		aUp = 0;
		aLookUp = 0;
	}
}

function PreClientTravel( string PendingURL, ETravelType TravelType, bool bIsSeamlessTravel)
{
	`Log("PreClientTravel"@PendingURL@TravelType@bIsSeamlessTravel);
	ControllerOwner.BackupInput.PreClientTravel(PendingURL,TravelType,bIsSeamlessTravel); // Let original mod do stuff too!
	ControllerOwner.NotifyLevelChange(); // Close menu NOW!
}

defaultproperties
{
}