function RollObj(layer, w, h, speed, msg, stop) {
	this.layer = layer;
	this.w = w;
	this.h = h;
	this.speed = speed;
	this.msg = msg;
	this.next_no = 2;

	if (stop) this.stop = stop;
	else this.stop = speed;
}

function LineLoop(objname) {
	eval("obj = "+objname+";");

	document.writeln('<div id="'+obj.layer+'0" style="font:11px µ¸¿ò;color:#656565;position:relative; left:0px; top:0px; width:'+obj.w+'px; height:'+obj.h+'px;z-index:1; overflow: hidden;">'); 
	document.writeln('<div id="'+obj.layer+'1" style="font:11px µ¸¿ò;color:#656565;position:absolute; left:0px; top:0px; width:'+obj.w+'px; height:'+obj.h+'px;z-index:2"></div>'); 
	document.writeln('<div id="'+obj.layer+'2" style="font:11px µ¸¿ò;color:#656565;position:absolute; left:0px; top:'+obj.h+'px; width:'+obj.w+'px; height:'+obj.h+'px;z-index:3"></div>'); 
	document.writeln('</div>'); 

	eval("document.getElementById('" + obj.layer + "1').innerHTML = "+objname+".msg[0]");
	eval("document.getElementById('" + obj.layer + "2').innerHTML = "+objname+".msg[1]");

	var time1 = (obj.speed*obj.h);
	for (var i=1;i<100;i++) {
		setTimeout("OnelineUp('"+objname+"')",time1);
		time1 = time1 + (obj.stop*obj.h)*2;
	}
}

function slideLineLoop(objname) {
	eval("obj = "+objname+";");
	obj.speed = obj.speed*200;

	document.writeln('<div id="'+obj.layer+'0" style="font:11px µ¸¿ò;color:#656565;position:relative; left:0px; top:0px; width:'+obj.w+'px; height:'+obj.h+'px;z-index:1; overflow: hidden;">'); 
	document.writeln('<div id="'+obj.layer+'1" style="font:11px µ¸¿ò;color:#656565;position:absolute; left:0px; top:0px; width:'+obj.w+'px; height:'+obj.h+'px;z-index:2"></div>'); 
	document.writeln('<div id="'+obj.layer+'2" style="font:11px µ¸¿ò;color:#656565;position:absolute; left:0px; top:'+obj.h+'px; width:'+obj.w+'px; height:'+obj.h+'px;z-index:3"></div>'); 
	document.writeln('</div>'); 

	eval("document.getElementById('" + obj.layer + "1').innerHTML = "+objname+".msg[0]");
	eval("document.getElementById('" + obj.layer + "2').innerHTML = "+objname+".msg[1]");

	var time1 = (obj.speed*obj.h);
	for (var i=1;i<100;i++) {
		setTimeout("SwapLine('"+objname+"')",i*obj.speed);
		time1 = time1 + (obj.speed*obj.h)*2;
	}
}

function OnelineUp(objname) {
	eval("obj = "+objname+";");

	for (var i=1;i<=obj.h;i++) {
		setTimeout("OneStepUp('"+objname+"')",i*obj.speed);
	}
	setTimeout("SwapLine('"+objname+"')",i*obj.speed);
}

function OneStepUp(objname) {
	eval("obj = "+objname+";");

	var t1 = getTop("document.getElementById('" +obj.layer + "1')");
	var t2 = getTop("document.getElementById('" +obj.layer + "2')");

	eval("document.getElementById('" + obj.layer + "1').style.top = t1 - 1 + 'px';");
	eval("document.getElementById('" + obj.layer + "2').style.top = t2 - 1 + 'px';");
	return;
}

function SwapLine(objname) {
	eval("obj = "+objname+";");
	//alert("obj name : " + objname);

	var t1 = getTop("document.getElementById('" +obj.layer + "1')");
	var t2 = getTop("document.getElementById('" +obj.layer + "2')");
	//alert("t2 : " + t2);

	if (t1 < t2) {
		eval("document.getElementById('" + obj.layer + "1').style.top = t1 + (" + obj.h + " * 2) + 'px';");
		eval("document.getElementById('" + obj.layer + "2').style.top = 0 + 'px';");
	}else {
		eval("document.getElementById('" + obj.layer + "2').style.top = t2 + (" + obj.h + " * 2) + 'px';");
		eval("document.getElementById('" + obj.layer + "1').style.top = 0 + 'px';");
	}
	ChgMsg(objname);
	return;
}

function ChgMsg(objname) {
	eval("obj = "+objname+";");

	var t1 = getTop("document.getElementById('" + obj.layer + "1')");
	var t2 = getTop("document.getElementById('" + obj.layer + "2')");

	if (obj.msg.length<=obj.next_no) obj.next_no = 0;

	if (t1 > t2) {
		eval("document.getElementById('" + obj.layer + "1').innerHTML = " + objname+".msg["+obj.next_no+"];");
	}else {
		eval("document.getElementById('" + obj.layer + "2').innerHTML = " + objname+".msg["+obj.next_no+"];");
	}

	obj.next_no = obj.next_no + 1;
}

function getTop(layer) {
		return eval("parseInt("+layer+".style.top.substring(0,"+layer+".style.top.length-2));");
}
