/**
 * Copyright 1998-2013 Epic Games, Inc. All Rights Reserved.
 */
class MobileMenuControls extends MobileMenuScene;

var float FadeTime, FadeDuration;
var float AnimTime;
var bool bFadeOut;

var bool bAnimate;
var MobileMenuImage Icon;
var MobileMenuImage Msg;
var float Scale;

function FadeOut()
{
	FadeTime = 0;
	FadeDuration = 0.5;
	bFadeOut = true;
}

function Setup(bool bTap)
{

	Icon = MobileMenuImage(MenuObjects[0]);
	Msg = MobileMenuImage(MenuObjects[1]);

	Scale = Width / 960;

	FadeTime = 0;
	FadeDuration = 0.5;
	bFadeOut = false;

	if (bTap)
	{	
		bAnimate = true;
		Icon.Width = 84 * Scale;
		Icon.Height = 84 * Scale;
		Icon.Left = (Width * 0.5) - (Icon.Width * 0.5);
		Icon.Top = Height * 0.50;
		Icon.ImageUVs.U  = 1306;
		Icon.ImageUVs.V  = 634;
		Icon.ImageUVs.UL = 168;
		Icon.ImageUVs.VL = 168;

		Msg.Width = 373 * Scale;
		Msg.Height = 59 * Scale;
		Msg.Left = Width * 0.5 - Msg.Width * 0.5;
		Msg.Top = Height - Msg.Height * 2;
		Msg.ImageUVs.U = 1076;
		Msg.ImageUVs.V = 1836;
		Msg.ImageUVs.UL = 746;
		Msg.ImageUVs.VL = 118;
	}
	else
	{
		bAnimate = false;
		Icon.Width = 586 * Scale;
		Icon.Height = 133 * Scale;
		Icon.Left = (Width * 0.5) - (Icon.Width * 0.5);
		Icon.Top = Height * 0.25;
		Icon.ImageUVs.U  = 492; 
		Icon.ImageUVs.V  = 856;
		Icon.ImageUVs.UL = 1172;
		Icon.ImageUVs.VL = 266;

		Msg.Width = 373 * Scale;
		Msg.Height = 59 * Scale;
		Msg.Left = (Width * 0.5) - (Msg.Width * 0.5);
		Msg.Top = Height - (Msg.Height * 2);
		Msg.ImageUVs.U = 256;
		Msg.ImageUVs.V = 1836;
		Msg.ImageUVs.UL = 746;
		Msg.ImageUVs.VL = 118;
	}
}

function RenderScene(Canvas Canvas,float RenderDelta)
{
	local float alpha;
	if (bAnimate)
	{
		Alpha = 1 - AnimTime/0.75;
		AnimTime += RenderDelta;
		if (AnimTime > 0.75)
		{
			AnimTime = 0;
		}

		Icon.Width = 84 * Scale * (1 + 1-Alpha);
		Icon.Height = 84 * Scale * (1 + 1-Alpha);
		Icon.Left = (Width * 0.5) - (Icon.Width * 0.5);
		Icon.Top = Height * 0.50 - (Icon.Height * 0.5);
		Icon.Opacity = Alpha;
	}

	if (FadeDuration > 0)
	{
		Opacity = bFadeOut ? FInterpEaseIn(1,0,FadeTime/FadeDuration,2.0) : FInterpEaseOut(0,1,FadeTime/FadeDuration,2.0);
		FadeTime += RenderDelta;

		if (FadeTime > FadeDuration)
		{
			FadeDuration = 0;
			if (bFadeOut)
			{
				InputOwner.CloseMenuScene(self);
			}
		}
	}

	Super.RenderScene(Canvas,RenderDelta);
}


defaultproperties
{
	Left=0
	Top=0
	Width=1.0
	Height=1.0
	bRelativeLeft=true
	bRelativeTop=true
	bRelativeWidth=true
	bRelativeHeight=true

	Begin Object Class=MobileMenuImage Name=Icon
		Tag="Background"
		Left=0
		Top=0
		Width=1
		Height=1
		bRelativeWidth=true
		bRelativeHeight=true
		Image=Texture2D'CastleUI.menus.T_CastleMenu2'
		ImageDrawStyle=IDS_Stretched
		ImageUVs=(bCustomCoords=true,U=0,V=0,UL=1920,VL=1280)
		bIsActive=false
	End Object
	MenuObjects(0)=Icon

	Begin Object Class=MobileMenuImage Name=Msg
		Tag="Background"
		Left=0
		Top=0
		Width=1
		Height=1
		bRelativeWidth=true
		bRelativeHeight=true
		Image=Texture2D'CastleUI.menus.T_CastleMenu2'
		ImageDrawStyle=IDS_Stretched
		ImageUVs=(bCustomCoords=true,U=0,V=0,UL=1920,VL=1280)
		bIsActive=false
	End Object
	MenuObjects(1)=Msg
	bSceneDoesNotRequireInput=true
	Opacity=0
}