//var FileLocation = "http://bgomps01.vizky.com:8031/cardemo/";//Change to the downloading location file
//var FileLocation = "http://bgomps02.vizky.com/cardemo/";//Change to the downloading location file
//var FileLocation = VizkyGetPathOfHtmlPage() + "cardemo/"
var FileLocation = "http://BGOMPS02.vizky.com/Demo/cardemo/"
var PublishstationID = 123456789;
var Tmpchannel = 999;
var tmpstationID = 99999;//use StationId = 0 to cancel download//
var extIDMain = 0;//MainScene Intro SceneID 
var instIDMain = 0;//MainScene Intro InstantID
var extIDBack = 0;//Back Intro SceneID 
var instIDBack = 0;//Back Intro InstantID
var extIDFront = 0;//Front Intro SceneID 
var instIDFront = 0;//Front Intro InstantID
//Photo
var extIDPhotoBack = 0;//PhotoBack Intro SceneID 
var instIDPhotoBack = 0;//PhotoBack Intro InstantID
var extIDPhotoFront = 0;//PhotoFront Intro SceneID 
var instIDPhotoFront = 0;//PhotoFront Intro InstantID
//Photo
//Suspension//
var	extIDSusBack = 0;
var	instIDSusBack = 0;
var	extIDSusFront =  0;
var	instIDSusFront = 0;
//Suspension//
var	crrInstIDBack = 0;//Temp For instIDBack
var	crrInstIDFront = 0;//Temp For instIDFront
var ColorApp = 0;//Check for color Appear Director in Front Layer//
var Jumpto = 0;//Check for color JumpToLocation Director in Front Layer//
var SuspenStatus = 0;
var	EngineState = 0;
var	PhotoState = 0;
//Loading Scene//
var extIDLoad = 0;
var InstIDLoad = 0;
//Loading Scene//
var	extIDPhotoBFirst = 0
var	instIDPhotoBFirst = 0
var	extIDPhotoFFirst = 0
var	instIDPhotoFFirst = 0

var extIDEngineBFirst = 0;	
var instIDEngineBFirst = 0;
var	extIDEngineFFirst = 0;	
var instIDEngineFFirst = 0

var extIDSusBFirst = 0;	
var instIDSusBFirst = 0;
var extIDSusFFirst = 0;	
var instIDSusFFirst = 0;

//Full Window button scene
var extIDFull = 0;
var instIDFull = 0;
var fullflag = false

function Fullscreen(ControlObject)
{
	ControlObject.SetCommandPipeline(9);
	ControlObject.ClearCommandPipeline();
	ControlObject.ToggleFullscreen();
	if (fullflag)
	{
		ControlObject.ShowDirectorTag(instIDFull,"full","max");
		fullflag = false
	}else
		{
		   ControlObject.ShowDirectorTag(instIDFull,"full","min");
		   fullflag = true
		}
	ControlObject.SetCommandPipeline(0);
}
function Preview(ControlObject)
{
	extIDLoad = ControlObject.Import(PublishstationID, FileLocation + "LoadScreenX.mps.idx");
	InstIDLoad = ControlObject.Load(PublishstationID, extIDLoad);
	extIdFull = ControlObject.Import(PublishstationID, "http://BGOMPS02.vizky.com/Demo/full/full.mps.idx");
	instIDFull = ControlObject.Load(PublishstationID, extIdFull);
	ControlObject.TakeIn(PublishstationID,72,0,InstIDLoad);
	ControlObject.TakeIn(PublishstationID, 73, 0, instIDFull);
	
	extIDPhotoBFirst = ControlObject.Import(PublishstationID, FileLocation + "PhotoShootMiddleX.mps.idx");
	instIDPhotoBFirst = ControlObject.Load(PublishstationID, extIDPhotoBFirst);
	extIDPhotoFFirst = ControlObject.Import(PublishstationID, FileLocation + "PhotoShootFrontX.mps.idx");
	instIDPhotoFFirst = ControlObject.Load(PublishstationID, extIDPhotoFFirst);
	ControlObject.PlayDirectorToTag(InstIDLoad,"Bar","25");
	ControlObject.WaitBySecond(0.3);
	ControlObject.ShowDirectorTag(InstIDLoad,"Percent","25");
	
	extIDEngineBFirst = ControlObject.Import(PublishstationID, FileLocation + "TuneMiddleX.mps.idx");	
    instIDEngineBFirst = ControlObject.Load(PublishstationID, extIDEngineBFirst);;
	extIDEngineFFirst = ControlObject.Import(PublishstationID, FileLocation + "TuneFrontX.mps.idx");	
    instIDEngineFFirst = ControlObject.Load(PublishstationID, extIDEngineFFirst);
	ControlObject.PlayDirectorToTag(InstIDLoad,"Bar","50");
	ControlObject.WaitBySecond(0.3);
	ControlObject.ShowDirectorTag(InstIDLoad,"Percent","50");

	extIDSusBFirst = ControlObject.Import(PublishstationID, FileLocation + "SuspensionMiddleX.mps.idx");	
	instIDSusBFirst = ControlObject.Load(PublishstationID, extIDSusBFirst);
	extIDSusFFirst = ControlObject.Import(PublishstationID, FileLocation + "SuspensionFrontX.mps.idx");	
	instIDSusFFirst = ControlObject.Load(PublishstationID, extIDSusFFirst);
	ControlObject.PlayDirectorToTag(InstIDLoad,"Bar","75");
	ControlObject.WaitBySecond(0.3);
	ControlObject.ShowDirectorTag(InstIDLoad,"Percent","75");

	extIDMain = ControlObject.Import(PublishstationID, FileLocation + "MainMenuX.mps.idx");
	instIDMain = ControlObject.Load(PublishstationID, extIDMain);

	
	ControlObject.PlayDirectorToTag(InstIDLoad,"Bar","100");
	ControlObject.WaitBySecond(0.3);
	ControlObject.ShowDirectorTag(InstIDLoad,"Percent","100");
	ControlObject.WaitBySecond(1.5);
	
	ControlObject.ResetDirector(instIDMain,"*")
	ControlObject.TakeIn(PublishstationID, 72,0,instIDMain);
	ControlObject.ResetDirector(instIDFull,"*")

	
}
function OnVizkyInit(ControlObject)
{
	ControlObject.CreateViewport(4);
	ControlObject.SetConsoleActive(0);
	ControlObject.SetDisplayDownloading(0);
	PublishstationID = ControlObject.GenerateStationID(window.location);
	//------LayerBack Intro Layer Viewport---------Viewport:0; Channel:70 Layer: 0-------//
	ControlObject.SetViewportPercentPositionAndSize(0, 0, 0, 100, 100);
	ControlObject.SetViewportStationAndChannelID(0, PublishstationID, 70);
	ControlObject.SetViewportPriorityLevel(0,2);  //--viewport Priority:1--// 
	//ControlObject.SetViewportActive(0,0);

	//------LayerFront Intro Layer Viewport---------Viewport:0; Channel:71 Layer: 0-------//
	ControlObject.SetViewportPercentPositionAndSize(1, 0, 0, 100, 100);
	ControlObject.SetViewportStationAndChannelID(1, PublishstationID, 71);
	ControlObject.SetViewportPriorityLevel(1,3);  //--viewport Priority:1--// 
	//ControlObject.SetViewportActive(1,0);	
	
	//------MainScene Intro Layer Viewport---------Viewport:0; Channel:69-------//
	ControlObject.SetViewportPercentPositionAndSize(2, 0, 0, 100, 100);
	ControlObject.SetViewportStationAndChannelID(2, PublishstationID, 72);
	//ControlObject.SetViewportActive(2,1);
	ControlObject.SetViewportPriorityLevel(2,4);  //--viewport Priority:1--// 

	ControlObject.SetViewportPercentPositionAndSize(3, 0, 0, 100, 100);
	ControlObject.SetViewportStationAndChannelID(3, PublishstationID, 73);
	//ControlObject.SetViewportActive(2,1);
	ControlObject.SetViewportPriorityLevel(3,10);  //--viewport Priority:1--// 
	
	ControlObject.CommitAllViewportStationAndChannelChanges();
	var VizkyVersion = ControlObject.GetVersion();
	var VersionArray = VizkyVersion.split(".");
	var currentVersion = ((parseInt(VersionArray[0]) << 28) | (parseInt(VersionArray[1]) << 24) | (parseInt(VersionArray[2]) << 16) | parseInt(VersionArray[3]));
	var requiredVersion = ((1 << 28) | (5 << 24) | (8 << 16) | 0);
	if(currentVersion >= requiredVersion)
	{	
		Preview(ControlObject);
		//Start the animation of Menu scene and download other scenes too//
	}
	else
		{
			//---------------Vizky Checkversion Text---------class="viz01"----//			
			//alert("Your current Vizky Client version is " + VizkyVersion + ". This page require at least Vizky version 1.3.56.0, Please install new version to preview this page");
			var pleaseInstall2 = '<div class="tv2_millionaer_content millionaer_download" style="font-family: arial; font-size: 12px; padding-right: 200px;"><h2>Please upgrade your Vizky plug-in</h2><p style="font-size: 12px;">Your Vizky version is&nbsp;'+ VizkyVersion +'&nbsp;This page require at least Vizky version 1.3.56.0<br>We now add up more functions in the new version.<br /> Please update your Vizky to experience new enhancement of 3D Graphics.<br /><br /> <a target="_blank" style="color: #ff9000;" href="http://www.vizky.com/download/"><strong>Click to update your Vizky </strong></a><br />The program is developed from Vizrt, the world\'s leader in real-time 3D graphic render for broadcasting which has several major TV channels on the customer lists, including CNN and BBC.<br /></p><p style="font-size: 12px;"><a target="_blank" style="color: #ff9000;" href="http://mps2.vizky.com/node/68">Basic Troubleshooting</a><br /></p><p style="font-size: 12px;">When the program is installed, <strong>Restart the Browser</strong>.</p></div>';
/*
			var pleaseInstall2 = '<div class="tv2_millionaer_content millionaer_download"style="font-family: arial; font-size: 12px; padding-right: 200px;"><h2 align="left" style="color: #ff9000;">Please upgrade your Vizky plug-in.</h2><p align="left" style="font-size: 12px; color: #ffC030; padding-top: 200px; padding-left: 500px; padding-right: 50px;"> Your Vizky is quite old, we now add up more functions in the new version.<br /> Please update your Vizky to experience new enhancement of 3D Graphics.<br /><br /> <a target="_blank" style="color: #ff9000;" href="http://www.vizky.com/download/"><strong>Click to update your Vizky </strong></a><br />  The program is developed from Vizrt, the world\'s leader in real-time 3D graphic render for broadcasting which has several major TV channels on the customer lists, including CNN and BBC.</p><p align="right" style="font-size: 12px;color: #C08030;padding-right: 50px;"><a target="_blank" style="color: #ff9000;" href="http://mps2.vizky.com/faq">Basic Troubleshooting</a><br /><br />When the program is installed, <strong>Restart the Browser</strong>.</p><p >.</p></div>';
			*/
			//---------------Vizky Checkversion Text-------------//			
			//alert("Your current Vizky Client version is " + VizkyVersion + ". This page require at least Vizky version 1.3.56.0, Please install new version to preview this page");
			document.write(pleaseInstall2);
			//document.getElementById("check").innerHTML = pleaseInstall2;

			//document.write("Your current Vizky Client version is " + VizkyVersion + ". This page require at least Vizky version 1.3.56.0, Please install new version to preview this page")
			//document.write('<H1><a href = "http://da5nvap6twti1.cloudfront.net/installers/windows/VizkySetup1_3_56_1296a.msi">Please install MPS viewer.</a></H1>')
		}
}
// Engine Scene Part//
function EngineUsage(ControlObject)
{
	ControlObject.ResetDirector(crrInstIDFront,"UsageClick");
	ControlObject.ResetDirector(crrInstIDBack,"UsageClick");
	ControlObject.ReverseDirector(crrInstIDFront,"PowerClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"PowerClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"DynoClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"DynoClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"SpecClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"SpecClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"PowerClick");
	ControlObject.ContinueDirector(crrInstIDBack,"PowerClick");
	ControlObject.ContinueDirector(crrInstIDFront,"DynoClick");
	ControlObject.ContinueDirector(crrInstIDBack,"DynoClick");
	ControlObject.ContinueDirector(crrInstIDFront,"SpecClick");
	ControlObject.ContinueDirector(crrInstIDBack,"SpecClick");
	ControlObject.ContinueDirector(crrInstIDFront,"UsageClick")
	ControlObject.ContinueDirector(crrInstIDBack,"UsageClick")
}
function EnginePower(ControlObject) 
{
	ControlObject.ResetDirector(crrInstIDFront,"PowerClick");
	ControlObject.ResetDirector(crrInstIDBack,"PowerClick");
	ControlObject.ReverseDirector(crrInstIDFront,"UsageClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"UsageClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"DynoClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"DynoClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"SpecClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"SpecClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"UsageClick");
	ControlObject.ContinueDirector(crrInstIDBack,"UsageClick");
	ControlObject.ContinueDirector(crrInstIDFront,"DynoClick");
	ControlObject.ContinueDirector(crrInstIDBack,"DynoClick");
	ControlObject.ContinueDirector(crrInstIDFront,"SpecClick");
	ControlObject.ContinueDirector(crrInstIDBack,"SpecClick");
	ControlObject.ContinueDirector(crrInstIDFront,"PowerClick")
	ControlObject.ContinueDirector(crrInstIDBack,"PowerClick")	
}
function EngineSpec(ControlObject) 
{
	ControlObject.ResetDirector(crrInstIDFront,"SpecClick");
	ControlObject.ResetDirector(crrInstIDBack,"SpecClick");
	ControlObject.ReverseDirector(crrInstIDFront,"UsageClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"UsageClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"DynoClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"DynoClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"PowerClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"PowerClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"UsageClick");
	ControlObject.ContinueDirector(crrInstIDBack,"UsageClick");
	ControlObject.ContinueDirector(crrInstIDFront,"DynoClick");
	ControlObject.ContinueDirector(crrInstIDBack,"DynoClick");
	ControlObject.ContinueDirector(crrInstIDFront,"PowerClick");
	ControlObject.ContinueDirector(crrInstIDBack,"PowerClick");
	ControlObject.ContinueDirector(crrInstIDFront,"SpecClick")
	ControlObject.ContinueDirector(crrInstIDBack,"SpecClick")
}
function EngineDyno(ControlObject) 
{
	ControlObject.ResetDirector(crrInstIDFront,"DynoClick");
	ControlObject.ResetDirector(crrInstIDBack,"DynoClick");
	ControlObject.ReverseDirector(crrInstIDFront,"UsageClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"UsageClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"SpecClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"SpecClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"PowerClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"PowerClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"UsageClick");
	ControlObject.ContinueDirector(crrInstIDBack,"UsageClick");
	ControlObject.ContinueDirector(crrInstIDFront,"SpecClick");
	ControlObject.ContinueDirector(crrInstIDBack,"SpecClick");
	ControlObject.ContinueDirector(crrInstIDFront,"PowerClick");
	ControlObject.ContinueDirector(crrInstIDBack,"PowerClick");
	ControlObject.ContinueDirector(crrInstIDFront,"DynoClick")
	ControlObject.ContinueDirector(crrInstIDBack,"DynoClick")
}
function Restart(ControlObject)
{	
	ControlObject.ReverseDirector(crrInstIDFront,"*",0);
	ControlObject.ResetDirector(crrInstIDFront, "*");
	ControlObject.ReverseDirector(crrInstIDBack,"*",0);
	ControlObject.ResetDirector(crrInstIDBack, "*");
	ColorApp = 0;
	Jumpto = 0;
}
// Engine Scene Part//
//Photo Scene Part//
function resetgallery(ControlObject)
{
	for(var i = 1; i <= 12; i++)
	{
		var change = "0";		
		if (i <= 9)
		{
			var s = i.toString();//Change integer to string//
			change = (change.concat(s));
			ControlObject.ResetDirector(crrInstIDFront,"Pic"+ change +"Click");
		}else
			{
				ControlObject.ResetDirector(crrInstIDFront,"Pic"+ i +"Click");
			}
		
	}
}
function DimensionPhoto(ControlObject)
{
	resetgallery(ControlObject)
	ControlObject.ResetDirector(crrInstIDFront,"DimensionClick");
	ControlObject.ResetDirector(crrInstIDBack,"DimensionClick");
	ControlObject.ReverseDirector(crrInstIDFront,"GalleryClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"GalleryClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"BackdropClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"BackdropClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"GalleryClick");
	ControlObject.ContinueDirector(crrInstIDBack,"GalleryClick");
	ControlObject.ContinueDirector(crrInstIDFront,"BackdropClick");
	ControlObject.ContinueDirector(crrInstIDBack,"BackdropClick");
	ControlObject.ContinueDirector(crrInstIDFront,"DimensionClick")
	ControlObject.ContinueDirector(crrInstIDBack,"DimensionClick")
}
function GalleryPhoto(ControlObject)
{
	//resetgallery(ControlObject)
	ControlObject.ResetDirector(crrInstIDFront,"GalleryClick");
	ControlObject.ResetDirector(crrInstIDBack,"GalleryClick");
	ControlObject.ReverseDirector(crrInstIDFront,"DimensionClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"DimensionClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"BackdropClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"BackdropClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"DimensionClick");
	ControlObject.ContinueDirector(crrInstIDBack,"DimensionClick");
	ControlObject.ContinueDirector(crrInstIDFront,"BackdropClick");
	ControlObject.ContinueDirector(crrInstIDBack,"BackdropClick");
	ControlObject.ContinueDirector(crrInstIDFront,"GalleryClick")
	ControlObject.ContinueDirector(crrInstIDBack,"GalleryClick")
}
function BackdropPhoto(ControlObject)
{
	resetgallery(ControlObject)
	ControlObject.ResetDirector(crrInstIDFront,"BackdropClick");
	ControlObject.ResetDirector(crrInstIDBack,"BackdropClick");
	ControlObject.ReverseDirector(crrInstIDFront,"DimensionClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"DimensionClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"GalleryClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"GalleryClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"DimensionClick");
	ControlObject.ContinueDirector(crrInstIDBack,"DimensionClick");
	ControlObject.ContinueDirector(crrInstIDFront,"GalleryClick");
	ControlObject.ContinueDirector(crrInstIDBack,"GalleryClick");
	ControlObject.ContinueDirector(crrInstIDFront,"BackdropClick")
	ControlObject.ContinueDirector(crrInstIDBack,"BackdropClick")
	//
}
//Photo Scene Part//

//Suspension Part//StrutSus(ControlObject)
function StrutSus(ControlObject)
{
	ControlObject.ResetDirector(crrInstIDFront,"StrutClick");
	ControlObject.ResetDirector(crrInstIDBack,"StrutClick");
	ControlObject.ReverseDirector(crrInstIDFront,"WheelClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"WheelClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"MonocoqueClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"MonocoqueClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"WheelClick");
	ControlObject.ContinueDirector(crrInstIDBack,"WheelClick");
	ControlObject.ContinueDirector(crrInstIDFront,"MonocoqueClick");
	ControlObject.ContinueDirector(crrInstIDBack,"MonocoqueClick");
	ControlObject.ContinueDirector(crrInstIDFront,"StrutClick")
	ControlObject.ContinueDirector(crrInstIDBack,"StrutClick")
}
function WheelSus(ControlObject)
{
	ControlObject.ResetDirector(crrInstIDFront,"WheelClick");
	ControlObject.ResetDirector(crrInstIDBack,"WheelClick");
	ControlObject.ReverseDirector(crrInstIDFront,"StrutClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"StrutClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"MonocoqueClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"MonocoqueClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"StrutClick");
	ControlObject.ContinueDirector(crrInstIDBack,"StrutClick");
	ControlObject.ContinueDirector(crrInstIDFront,"MonocoqueClick");
	ControlObject.ContinueDirector(crrInstIDBack,"MonocoqueClick");
	ControlObject.ContinueDirector(crrInstIDFront,"WheelClick")
	ControlObject.ContinueDirector(crrInstIDBack,"WheelClick")
}
function MonocoqueSus(ControlObject)
{
	ControlObject.ResetDirector(crrInstIDFront,"MonocoqueClick");
	ControlObject.ResetDirector(crrInstIDBack,"MonocoqueClick");
	ControlObject.ReverseDirector(crrInstIDFront,"StrutClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"StrutClick",1);
	ControlObject.ReverseDirector(crrInstIDFront,"WheelClick",1);
	ControlObject.ReverseDirector(crrInstIDBack,"WheelClick",1);
	ControlObject.ContinueDirector(crrInstIDFront,"StrutClick");
	ControlObject.ContinueDirector(crrInstIDBack,"StrutClick");
	ControlObject.ContinueDirector(crrInstIDFront,"WheelClick");
	ControlObject.ContinueDirector(crrInstIDBack,"WheelClick");
	ControlObject.ContinueDirector(crrInstIDFront,"MonocoqueClick")
	ControlObject.ContinueDirector(crrInstIDBack,"MonocoqueClick")
}
//Suspension Part//
function ChangeColor(ControlObject,Colorset)
{
	var color = Colorset
	ControlObject.ShowDirectorTag(crrInstIDBack ,"ColorSet",color)
}
function ColorAppear(ControlObject)
{
	if(ColorApp == 0)
	{
		ControlObject.PlayDirectorToTag(crrInstIDFront ,"ColorAppear","End")
		ColorApp = 1;
	}else
		{
			ControlObject.PlayDirectorToTag(crrInstIDFront ,"ColorAppear","Show")
			ColorApp = 0;
		}	
}
function JumpToLocation(ControlObject)
{
	if(Jumpto == 0)
	{
		ControlObject.PlayDirectorToTag(crrInstIDFront ,"JumpToLocation","End")
		Jumpto = 1;
	}else
		{
			ControlObject.PlayDirectorToTag(crrInstIDFront ,"JumpToLocation","Show")
			Jumpto = 0;
		}
}
function ReverseRight(ControlObject)
{
	ControlObject.ReverseDirector(crrInstIDBack,"RightClick",1)
	ControlObject.ContinueDirector(crrInstIDBack,"RightClick")
	ControlObject.ReverseDirector(crrInstIDBack,"HideIcon",1)
	ControlObject.ContinueDirector(crrInstIDBack,"HideIcon")
}
function ReverseLeft(ControlObject)
{
	ControlObject.ReverseDirector(crrInstIDBack,"LeftClick",1)
	ControlObject.ContinueDirector(crrInstIDBack,"LeftClick")
	ControlObject.ReverseDirector(crrInstIDBack,"HideIcon",1)
	ControlObject.ContinueDirector(crrInstIDBack,"HideIcon")
}
function Wall(ControlObject,wallset)
{
	var wall = wallset
	ControlObject.PlayDirectorToTag(crrInstIDBack,"WallTexture",wall)

}
function OnVizkyLMouseUp(ControlObject)
{
	var aUObject = ControlObject.GetInteractivityObject();
	var Colorset = 0;
	var wallset = 0;
	switch(aUObject)
	{
		//Engine Part//
		case("Tune"):
			if(EngineState != 1)
			{
			TakeOut(ControlObject)
			TakeEngine(ControlObject)
			}
		break;
		case("Usage"):
			EngineUsage(ControlObject)
		break;
		case("Power"):
			EnginePower(ControlObject)
		break;
		case("Spec"):
			EngineSpec(ControlObject)
		break;
		case("Dyno"):
			EngineDyno(ControlObject)
		break;
		case("Restart"):
			Restart(ControlObject)
		break;
		case("CColor"):
			ColorAppear(ControlObject);
		break;
		case("C1")://orange
			Colorset = "Orange"
			ChangeColor(ControlObject,Colorset)
		break;
		case("C2")://Green
			Colorset = "Green"
			ChangeColor(ControlObject,Colorset)
		break;
		case("C3")://red
			Colorset = "Red"
			ChangeColor(ControlObject,Colorset)
		break;
		case("C4")://blue
			Colorset = "Blue"
			ChangeColor(ControlObject,Colorset)
		break;
		case("C5")://smoke
			Colorset = "Smoke"
			ChangeColor(ControlObject,Colorset)
		break;
		case("C6")://white
			Colorset = "White"
			ChangeColor(ControlObject,Colorset)
		break;
		case("Jump"):
			JumpToLocation(ControlObject)
		break;
		case("Right"):
			ReverseRight(ControlObject)
		break;
		case("Left"):
			ReverseLeft(ControlObject)
		break;	
		case("Photo")://on each scene;These copy from Engine front
			if(PhotoState != 1)
			{	
			TakeOut(ControlObject)
			TakePhoto(ControlObject)
			}
		break;
		//Photo Part//
		case("Dimension"):
			DimensionPhoto(ControlObject)
		break;
		case("Gallery"):
			GalleryPhoto(ControlObject)
		break;
		case("Backdrop"):
			BackdropPhoto(ControlObject)
		break;
			//wall selection
		case("CliffRoad")://BG2
			wallset = "BG2"
			Wall(ControlObject,wallset)
		break;
		case("ColorfulForest")://BG1
			wallset = "BG1"
			Wall(ControlObject,wallset)
		break;
		case("LonelyWay")://BG3
			wallset = "BG3"
			Wall(ControlObject,wallset)
		break;
		case("GrayCity")://BG4
			wallset = "BG4"
			Wall(ControlObject,wallset)
		break;
			//wall selection
		//Photo Part//

		//Suspension Part//
		case("Suspen"):
			if(SuspenStatus != 1)
			{
			TakeOut(ControlObject)
			TakeSus(ControlObject)
			}
		break;
		case("Strut"):
			StrutSus(ControlObject)
		break;
		case("Wheel"):
			WheelSus(ControlObject)
		break;
		case("Monocoque"):
			MonocoqueSus(ControlObject)
		break;
		//Suspension Part//
		//Back To Main
		case("BackMenu"):
			TakeOutMain(ControlObject)
			TakeMain(ControlObject)
		break;
		//Main Menu//
		case("1PhotoShoot"):
			TakeOutAll(ControlObject)
			TakePhoto(ControlObject)
		break;
		case("1Suspension"):
			TakeOutAll(ControlObject)
			TakeSus(ControlObject)
		break;
		case("1Tuning"):
			TakeOutAll(ControlObject)
			TakeEngine(ControlObject)
		break;
		//Main Menu//
	}
}
function OnVizkyLMouseDown(ControlObject)
{
	var aDObject = ControlObject.GetInteractivityObject();
	switch(aDObject)
	{	
		//Full Screen Window//
		case ("Full"):
			Fullscreen(ControlObject); 
		break;
		//Full Screen Window//
		case("Right"):
			ControlObject.ReverseDirector(crrInstIDBack,"RightClick",0)
			ControlObject.ReverseDirector(crrInstIDBack,"HideIcon",0)
			ControlObject.ContinueDirector(crrInstIDBack,"RightClick")
			ControlObject.ContinueDirector(crrInstIDBack,"HideIcon")
		break;
		case("Left"):
			ControlObject.ReverseDirector(crrInstIDBack,"LeftClick",0)
			ControlObject.ReverseDirector(crrInstIDBack,"HideIcon",0)
			ControlObject.ContinueDirector(crrInstIDBack,"LeftClick")
			ControlObject.ContinueDirector(crrInstIDBack,"HideIcon")
		break;
	}
}
function TakeOutAll(ControlObject)
{
	ControlObject.TakeIn(PublishstationID, 70, 0, 0);
	ControlObject.TakeIn(PublishstationID, 71, 0, 0);
	ControlObject.TakeIn(PublishstationID, 72, 0, 0);

	ControlObject.SetViewportPriorityLevel(0,0);
	ControlObject.SetViewportPriorityLevel(1,0);
	ControlObject.SetViewportPriorityLevel(2,0);

	ControlObject.Log("EngineState = "+EngineState)
	ControlObject.Log("PhotoState = "+PhotoState)
	ControlObject.Log("SuspenStatus = "+SuspenStatus)
	crrInstIDBack = 0;
	crrInstIDFront = 0;
	SuspenStatus = 0;
	EngineState = 0;
	PhotoState = 0;
	ColorApp = 0;
	Jumpto = 0;
}
function TakeOutMain(ControlObject)
{
	ControlObject.ResetDirector(crrInstIDBack,"*")
	ControlObject.ResetDirector(crrInstIDFront,"*")
	ControlObject.TakeIn(PublishstationID, 70, 0, 0);
	ControlObject.TakeIn(PublishstationID, 71, 0, 0);
	ControlObject.TakeIn(PublishstationID, 72, 0, 0);

	ControlObject.SetViewportPriorityLevel(0,0);
	ControlObject.SetViewportPriorityLevel(1,0);
	ControlObject.SetViewportPriorityLevel(2,0);

	ControlObject.ResetDirector(instIDMain,"*")
	ControlObject.ResetDirector(crrInstIDBack,"*")
	ControlObject.ResetDirector(crrInstIDFront,"*")
	crrInstIDBack = 0;
	crrInstIDFront = 0;
	SuspenStatus = 0;
	EngineState = 0;
	PhotoState = 0;
}
function TakeOut(ControlObject)
{	
	ControlObject.SetViewportPriorityLevel(0,0);
	ControlObject.SetViewportPriorityLevel(1,0);
	ControlObject.SetViewportPriorityLevel(2,0);

	ControlObject.ResetDirector(crrInstIDBack,"*")
	ControlObject.ResetDirector(crrInstIDFront,"*")
	ControlObject.ResetDirector(instIDMain,"*")
	SuspenStatus = 0;
	EngineState = 0;
	PhotoState = 0;
}
function TakeEngine(ControlObject)
{
	ControlObject.ClearCommandPipeline();
	ControlObject.TakeIn(PublishstationID, 70, 0, 0);//Take Out everything On Viewport3 Out//
	ControlObject.TakeIn(PublishstationID, 71, 0, 0);
	ControlObject.TakeIn(PublishstationID, 72, 0, 0);
	ControlObject.SetCommandPipeline(2);

	ColorApp = 0;
	Jumpto = 0;

	extIDBack =	extIDEngineBFirst
	instIDBack = instIDEngineBFirst;

	ControlObject.ResetDirector(instIDBack,"*")//reset before Take

	extIDFront =  extIDEngineFFirst
	instIDFront = instIDEngineFFirst;

	ControlObject.ResetDirector(instIDFront,"*")//reset before Take

	ControlObject.TakeIn(PublishstationID, 70,0,instIDBack);
	ControlObject.TakeIn(PublishstationID, 71,0,instIDFront);

	ControlObject.SetViewportPriorityLevel(0,2);
	ControlObject.SetViewportPriorityLevel(1,3); 
	crrInstIDBack = instIDBack;
	crrInstIDFront = instIDFront;
	EngineState = 1;
	ControlObject.Log("EngineState = "+EngineState)
	ControlObject.Log("PhotoState = "+PhotoState)
	ControlObject.Log("SuspenStatus = "+SuspenStatus)
}
function TakePhoto(ControlObject)
{
	ControlObject.ClearCommandPipeline();
	ControlObject.TakeIn(PublishstationID, 70, 0, 0);//Take Out everything On Viewport3 Out//
	ControlObject.TakeIn(PublishstationID, 71, 0, 0);
	ControlObject.TakeIn(PublishstationID, 72, 0, 0);
	ControlObject.SetCommandPipeline(3);

 	ColorApp = 0;
	Jumpto = 0;

	extIDPhotoBack = extIDPhotoBFirst
	instIDPhotoBack = instIDPhotoBFirst

	ControlObject.ResetDirector(instIDPhotoBack,"*")//reset before Take

	extIDPhotoFront =  extIDPhotoFFirst
	instIDPhotoFront = instIDPhotoFFirst

	ControlObject.ResetDirector(instIDPhotoFront,"*")//reset before Take
	
	ControlObject.TakeIn(PublishstationID, 70,0,instIDPhotoBack);
	ControlObject.TakeIn(PublishstationID, 71,0,instIDPhotoFront);

	ControlObject.SetViewportPriorityLevel(0,2);
	ControlObject.SetViewportPriorityLevel(1,3);
	crrInstIDBack = instIDPhotoBack;
	crrInstIDFront = instIDPhotoFront;
	PhotoState = 1;
	ControlObject.Log("EngineState = "+EngineState)
	ControlObject.Log("PhotoState = "+PhotoState)
	ControlObject.Log("SuspenStatus = "+SuspenStatus)
}
function TakeSus(ControlObject)
{
	ControlObject.ClearCommandPipeline();
	ControlObject.TakeIn(PublishstationID, 70, 0, 0);//Take Out everything On Viewport3 Out//
	ControlObject.TakeIn(PublishstationID, 71, 0, 0);
	ControlObject.TakeIn(PublishstationID, 72, 0, 0);
	ControlObject.SetCommandPipeline(4);

 	ColorApp = 0;
	Jumpto = 0;

	extIDSusBack = extIDSusBFirst
	instIDSusBack = instIDSusBFirst;
	
	ControlObject.ResetDirector(instIDSusBack,"*")//reset before Take

	extIDSusFront =  extIDSusFFirst;
	instIDSusFront = instIDSusFFirst;

	ControlObject.ResetDirector(instIDSusFront,"*")//reset before Take
	
	ControlObject.TakeIn(PublishstationID, 70,0,instIDSusBack);
	ControlObject.TakeIn(PublishstationID, 71,0,instIDSusFront);

	ControlObject.SetViewportPriorityLevel(0,2);
	ControlObject.SetViewportPriorityLevel(1,3);

	crrInstIDBack = instIDSusBack;
	crrInstIDFront = instIDSusFront;
	SuspenStatus = 1;
	ControlObject.Log("EngineState = "+EngineState)
	ControlObject.Log("PhotoState = "+PhotoState)
	ControlObject.Log("SuspenStatus = "+SuspenStatus)
}
function TakeMain(ControlObject)
{
	ControlObject.ClearCommandPipeline();
	ControlObject.TakeIn(PublishstationID, 70, 0, 0);//Take Out everything On Viewport3 Out//
	ControlObject.TakeIn(PublishstationID, 71, 0, 0);
	ControlObject.TakeIn(PublishstationID, 72, 0, 0);
	ControlObject.SetCommandPipeline(1);

	extIDFMain = extIDMain
	instIDFMain = instIDMain
	ControlObject.ResetDirector(instIDFMain,"*")
	ControlObject.TakeIn(PublishstationID, 72,0,instIDFMain);

	ControlObject.SetViewportPriorityLevel(2,4);
}


