var ran4ImgW = 450;
var ran4MouseX = -1;
var ran4MouseY = -1;
var ran4MouseL = 0;
var ran4MouseR = 0;
var ran4MouseU = 0;
var ran4MouseD = 0;
var ran4MouseMv = 0;
var ran4MouseMvTime = 0;
var ran4NameFade = 'ran4Fade';
var ran4NameImgA = 'ran4a';
var ran4NameImgB = 'ran4b';
var ran4ImgArray = new Array(12);
ran4ImgArray[0] = new Image();
ran4ImgArray[0].src = 'cg/ran4a1.png';
ran4ImgArray[1] = new Image();
ran4ImgArray[1].src = 'cg/ran4b1.png';
ran4ImgArray[2] = new Image();
ran4ImgArray[2].src = 'cg/ran4c1.png';
ran4ImgArray[3] = new Image();
ran4ImgArray[3].src = 'cg/ran4d1.png';
ran4ImgArray[4] = new Image();
ran4ImgArray[4].src = 'cg/ran4e1.png';
ran4ImgArray[5] = new Image();
ran4ImgArray[5].src = 'cg/ran4a2.png';
ran4ImgArray[6] = new Image();
ran4ImgArray[6].src = 'cg/ran4b2.png';
ran4ImgArray[7] = new Image();
ran4ImgArray[7].src = 'cg/ran4c2.png';
ran4ImgArray[8] = new Image();
ran4ImgArray[8].src = 'cg/ran4d2.png';
ran4ImgArray[9] = new Image();
ran4ImgArray[9].src = 'cg/ran4e2.png';
ran4ImgArray[10] = new Image();
ran4ImgArray[10].src = 'cg/ran4f1.png';
ran4ImgArray[11] = new Image();
ran4ImgArray[11].src = 'cg/ran4f2.png';
var ran4Md = 0;
var ran4UpdateExec = 0;
var ran4ImgNo = 0;
var ran4ImgOfs = 0;
var ran4ImgA = 0;
var ran4ImgB = 0;
var ran4ImgCur = 0;
var ran4ImgRate = 0;
var ran4ImgSpd = 0;
var ran4ImgSpdMax = 10;
var ran4FadeRate = 0;
var ran4ImgLastInc = 0;

function ran4Init(){
	if (document.images[ran4NameImgB].filters)
	{
		document.images[ran4NameFade].width = 
		document.images[ran4NameImgB].width = ran4ImgW;
	}
	else
	{
		document.images[ran4NameFade].style.width = 
		document.images[ran4NameImgB].style.width = ran4ImgW;
	}
}

function ran4Mouse(x,y){
	if (x < ran4MouseX)
	{
		ran4MouseL -= x - ran4MouseX;
		ran4MouseMv -= x - ran4MouseX;
	}
	else
	{
		ran4MouseR += x - ran4MouseX;
		ran4MouseMv += x - ran4MouseX;
	}
	if (y < ran4MouseY)
	{
		ran4MouseU -= y - ran4MouseY;
		ran4MouseMv -= y - ran4MouseY;
	}
	else
	{
		ran4MouseD += y - ran4MouseY;
		ran4MouseMv += y - ran4MouseY;
	}
	
	if (ran4Md == 1)
	{
		if (ran4MouseU > 60)
			ran4ImgNoInc(1);
		else if (ran4MouseD > 60)
			ran4ImgNoInc(-1);
		
		if (ran4ImgNo != 0)
		{
			ran4Md = 2;
			ran4MouseMv = ran4MouseMvTime = 0;
			setTimeout("ran4Update()", 50);
		}
	}
	ran4MouseX = x;
	ran4MouseY = y;
}

function ran4Click() {
	if (ran4Md == 0)
	{
		ran4Md = 1;
		ran4MouseL = ran4MouseR = ran4MouseU = ran4MouseD = 0;
		ran4ImgLastInc = 0;
		if (cmn_OP){							// OP?
			document.getElementById("ran4msg").style.left = -200;
		}else if (cmn_IE){					// IE?
			document.all["ran4msg"].style.left = -200;
		}else if (cmn_N6){					// N6?
			document.getElementById("ran4msg").style.left = -200;
		}else if (cmn_N4){					// N4?
			document["ran4msg"].left = -200;
		}
	}
}

function ran4ImgNoInc(inc) {
	if (inc > 0)
	{
		ran4ImgNo++;
		if (ran4ImgNo > 4)
			ran4ImgNo = 1;
	}
	else
	{
		ran4ImgNo--;
		if (ran4ImgNo < 1)
			ran4ImgNo = 4;
	}
	if (ran4ImgSpdMax < 34)
	{
		if (ran4ImgLastInc == inc)
			ran4ImgSpdMax += 0.3;
		else
			ran4ImgSpdMax += 0.1;
	}
	ran4ImgLastInc = inc;
	if ((ran4Md == 2)&&(ran4ImgSpdMax >= 31)&&(ran4MouseU > 425))
	{
		ran4Md = 3;
		ran4ImgNo = 5
		ran4ImgOfs = 5;
		ran4ImgSpd = 10;
		ran4ImgSpdMax = 10;
		ran4UpdateExec = 100;
		ran4FadeRate = 100;
	}
	else
	{
		if (ran4ImgOfs == 0)
		{
			if (ran4ImgSpdMax > 23)
				ran4ImgOfs = 5;
		}
		else
		{
			if (ran4ImgSpdMax < 20)
				ran4ImgOfs = 0;
		}
		
		ran4MouseL = ran4MouseR = ran4MouseU = ran4MouseD = 0;
		ran4UpdateExec = 60;
	}
}

function ran4Update() {
	if (ran4ImgA != (ran4ImgNo + ran4ImgOfs))
	{
		ran4ImgB = ran4ImgA;
		ran4ImgA = (ran4ImgNo + ran4ImgOfs);
		if (ran4ImgCur == 0)
		{
			ran4ImgCur = 1;
			document.images[ran4NameImgB].src = ran4ImgArray[ran4ImgA].src;
		}
		else
		{
			ran4ImgCur = 0;
			document.images[ran4NameImgA].src = ran4ImgArray[ran4ImgA].src;
		}
		ran4ImgRate = 100;
	}
	else if (ran4ImgRate <= 40)
	{
		if (ran4ImgNo == 1)
		{
			if (ran4MouseR > 60)
				ran4ImgNoInc(1);
			else if (ran4MouseD > 60)
				ran4ImgNoInc(-1);
		}
		else if (ran4ImgNo == 2)
		{
			if (ran4MouseD > 60)
				ran4ImgNoInc(1);
			else if (ran4MouseL > 60)
				ran4ImgNoInc(-1);
		}
		else if (ran4ImgNo == 3)
		{
			if (ran4MouseL > 60)
				ran4ImgNoInc(1);
			else if (ran4MouseU > 60)
				ran4ImgNoInc(-1);
		}
		else if (ran4ImgNo == 4)
		{
			if (ran4MouseU > 60)
				ran4ImgNoInc(1);
			else if (ran4MouseR > 60)
				ran4ImgNoInc(-1);
		}
		else if (ran4ImgNo == 5)
			ran4ImgNo++;
		else if (ran4ImgNo == 6)
			ran4ImgNo--;
	}
	
	if (ran4ImgRate > 0)
	{
		if (ran4Md == 2)
		{
			ran4MouseMvTime++;
			if (ran4MouseMv > 40)
			{
				ran4ImgSpd = ran4MouseMv/(ran4MouseMvTime*3);
				if (ran4ImgSpd > ran4ImgSpdMax)
					ran4ImgSpd = ran4ImgSpdMax;
				else if (ran4ImgSpd < 10)
					ran4ImgSpd = 10;
				ran4MouseMv = ran4MouseMvTime = 0;
			}
		}
		
		ran4ImgRate -= ran4ImgSpd;
		if (ran4ImgRate <= 0)
			ran4ImgRate = 0;
		
		var ran4ImgRate2;
		if (ran4ImgRate < 28)
			ran4ImgRate2 = 0;
		else if (ran4ImgRate > 72)
			ran4ImgRate2 = 100;
		else
			ran4ImgRate2 = ran4ImgRate;
		
		if (ran4ImgCur == 0)
		{
			if (document.images[ran4NameImgB].filters)
				document.images[ran4NameImgB].filters.alpha.opacity = ran4ImgRate2;
			else
			{
				document.images[ran4NameImgB].style.MozOpacity = 
				document.images[ran4NameImgB].style.opacity = ran4ImgRate2/100;
			}
		}
		else
		{
			if (document.images[ran4NameImgB].filters)
				document.images[ran4NameImgB].filters.alpha.opacity = 100-ran4ImgRate2;
			else
			{
				document.images[ran4NameImgB].style.MozOpacity = 
				document.images[ran4NameImgB].style.opacity = (100-ran4ImgRate2)/100;
			}
		}
	}
	else
	{
		ran4ImgSpdMax -= 0.05;
		if (ran4ImgSpdMax < 10)
			ran4ImgSpdMax = 10;
	}
	
	if (ran4FadeRate > 0)
	{
		ran4FadeRate -= 3;
		if (ran4FadeRate <= 0)
			ran4FadeRate = 0;
		if (document.images[ran4NameFade].filters)
			document.images[ran4NameFade].filters.alpha.opacity = ran4FadeRate;
		else
		{
			document.images[ran4NameFade].style.MozOpacity = 
			document.images[ran4NameFade].style.opacity = ran4FadeRate/100;
		}
	}
	
	if (ran4UpdateExec > 0)
	{
		ran4UpdateExec--;
		setTimeout("ran4Update()", 50);
	}
	else if (ran4ImgNo != 0)
	{
		if (ran4Md == 3)
		{	// なんかFireFoxだと描画タイミングが変になるから保険
			document.images[ran4NameImgA].src = 
			document.images[ran4NameImgB].src = ran4ImgArray[10].src;
			ran4ImgCur = 0;
			if (document.images[ran4NameImgB].filters)
				document.images[ran4NameImgB].filters.alpha.opacity = 0;
			else
			{
				document.images[ran4NameImgB].style.MozOpacity = 
				document.images[ran4NameImgB].style.opacity = 0;
			}
		}
		ran4ImgNo = 0;
		ran4ImgSpd = 15;
		setTimeout("ran4Update()", 300);
	}
	else if (ran4ImgRate <= 0)
	{
		ran4Md = 0;
		if (cmn_OP){							// OP?
			document.getElementById("ran4msg").style.left = 30;
		}else if (cmn_IE){					// IE?
			document.all["ran4msg"].style.left = 30;
		}else if (cmn_N6){					// N6?
			document.getElementById("ran4msg").style.left = 30;
		}else if (cmn_N4){					// N4?
			document["ran4msg"].left = 30;
		}
	}
	else
		setTimeout("ran4Update()", 50);
}


