//#include "mc_tween2.as"
/*
How to use me
Example เลยละกัน










________________________________________________________________________________
easyMove
--------------------------------------------------------------------------------
สมมุตใน  Stage มี mc1 อันนึง ให้ Dupplicate มาอีกตัวนึง แล้วใส่ i('ไอ') ไว้ข้างหลัง เป็น mc1i 
สรุปง่ายๆ มีสองตัว 
ตัวที่ 1 คือ mc1 
ตัวที่ 2 คือ mc1i 
ทดลองด้วยการนำ mc1 ไว้กลาง Stage และนำ mc1i ไว้ตรงไหนก็ได้  ( ทดลองดูแล้วจะเข้าใจ ... ง่ายก่าผมอธิบายนะครับ  ^^)

วิธีใช้
1.) mc1.easyMove();
หรือ
2.) mc1.easyMove(MCtime,MCtween,Delay_ToStart,callBackFunction)

---------------------------------------------------------------------------------









_________________________________________________________________________________
getRandom(min:Number, max:Number)
---------------------------------------------------------------------------------
ตรงตัวเลยแล้วกันครับ
จะ return ค่า random กลับมาให้เรา

วิธีใช้ 
1.) myRandom = getRandom(5,15)
จะได้เลขที่ random ระหว่าง 5 - 15 นะครับบ
---------------------------------------------------------------------------------








_________________________________________________________________________________
addKey(fx, k)
---------------------------------------------------------------------------------
แอดฟังก์ชั่น เพื่อใช้ในการทดสอบ
สมมุติว่ามี 
function hello(){
trace('สวัสดีครับ')
}

วิธีใช้ 
1.) addKey(hello, 1)
เมื่อกด 1 ( Numpad key ) ก้อจะเข้าฟังก์ชั่น hello ให้เลย
หมายเหตุ : เปิดใช้คร่าวๆตอนนี้แค่เลข 1~9 เท่านั้น 
---------------------------------------------------------------------------------








_________________________________________________________________________________
rollEffect()
---------------------------------------------------------------------------------
เป็นฟังก์ชั่นเอาไว้สั่ง ให้มัน  onRollOver และ onRollOut
โดยข้อดีคือ 
A.) ใช้ onEnterFrame
B.) ใช้ rollOut แบบ ย้อนกลับจากเฟรมปัจจุบัน ทำให้ดู smooth สวยงาม
C.) ใน MovieClip จะมีกี่เฟรมก็ได้

วิธีใช้
1.) สร้าง MovieClip ขึ้นมา 1 ตัว ( เป็น symbol แบบ movieClip )
2.) ตั้งชื่อให้มัน ( เช่น  mc1 )
3.) ดับเบิ้ลคลิกเข้าไปข้างใน ... แล้ว tween  เช่น ให้มันใหญ่ขึ้น นิดนึง ( ให้ต่างกับเฟรมแรก )
4.) stop() ไว้ที่เฟรมแรก
เสร็จแล้วออกมาที่หน้า หลัก 
ใช้คำสั่ง  rollEffect(mc1)
ทดสอบโดยการนำเม้าส์ over และ out ดูครับ
---------------------------------------------------------------------------------


_________________________________________________________________________________
rollHitEffect()
---------------------------------------------------------------------------------
เหมือน rollEffect แต่ว่าสั่งจาก(เช่น hit ) แล้วจะถอยไป roll ที่  _parent
---------------------------------------------------------------------------------



_________________________________________________________________________________
rollPressEffect(rollEndKeyFrame)
---------------------------------------------------------------------------------
เป็นฟังก์ชั่นเอาไว้สั่ง ให้มัน  onRollOver และ onRollOut
โดยข้อดีคือ 
1.) ใช้ onEnterFrame
2.) ใช้ rollOut แบบ ย้อนกลับจากเฟรมปัจจุบัน ทำให้ดู smooth สวยงาม
3.) ใน MovieClip จะมีกี่เฟรมก็ได้
4.) # กำหนดเฟรมท้ายได้ ไม่ต้องใช้ _totalframe


วิธีใช้
์์N/A (ขี้เกียจ)
---------------------------------------------------------------------------------





_________________________________________________________________________________
topDepths(MovieClip)
---------------------------------------------------------------------------------
ฟังก์ชั่นนี้ก็เหมือนกับสั่ง mc.swapDepths(this.getNextHighestDepth());
แต่ว่ามันยาวครับ ขี้เกียจพิมพ์ ^^

วิธีใช้ 
1.) topDepths(mc)
---------------------------------------------------------------------------------








_________________________________________________________________________________
getInt(MovieClip)
---------------------------------------------------------------------------------
การเอาตัวเลขจาก ชื่อของ MC 
เช่น 
mc154648.onPress  = function(){
trace(getInt(this))
}

ก็จะได้ค่าออกมาเป็น  154648 

ประโยชน์ ใช้ทำ ballon , ใช้ เรียก movie ตามเลขของปุ่มได้เลย
---------------------------------------------------------------------------------






_________________________________________________________________________________
loadMovieX(__mcLoad:MovieClip, _path:String, _alphaLoad:Boolean)
---------------------------------------------------------------------------------
การ  loadMovie แบบไม่ซ้ำของเก่า
---------------------------------------------------------------------------------





_________________________________________________________________________________
smoothImageLoad(imgURL,targetMovie)
---------------------------------------------------------------------------------
//smoothImageLoad("sample.jpg", mcLoad) // จะโหลดรูปภาพแบบ smooth
หรือ %++
mcLoad.loadImage('sample.jpg')

//mcLoad.loadMovie("sample.jpg")        // แบบโหลดทั่วไป ไม่ smooth ภาพแตก
---------------------------------------------------------------------------------



_________________________________________________________________________________
mc.page.grooveFrame()
---------------------------------------------------------------------------------
การกระจายเฟรมต่างๆ 
เช่น mc ตัวนั้น ข้างใน มีอยู่ 5 เฟรม  ก้อพิมพ์ไปเลย
เหมาะสำหรับพวกปุ่ม / หรือ ballon หรือ tooltips
---------------------------------------------------------------------------------



_________________________________________________________________________________
mc.onDoubleClick
---------------------------------------------------------------------------------
mmm.onDoubleClick = function() {
trace(1)
};
mmm._onPress = function() {
trace(2)
};
monica.onPress = function(){
trace(2)
}
---------------------------------------------------------------------------------


_________________________________________________________________________________
easyFade(clickFrom:MovieClip, mcAlpha:MovieClip, apStart:Number, apStop:Number, alphaSpeed:Number)
---------------------------------------------------------------------------------
เช่นการกดปุ่มที่ mc ที่เป็นปุ่ม
แล้วสั่งให้ mc อีกตัว Fade alpha ขึ้นมา
ที่ต้องใส่ clickFrom เพราะกันการกดซ้ำปุ่มเดิมเอาไว้
---------------------------------------------------------------------------------



_________________________________________________________________________________
getDecimal(num)
---------------------------------------------------------------------------------
แปลงค่าเป็นทศนิยม เหมาะสำหรับเครื่องคิดเลข
เช่น 
13 เท่ากับ 13.00
13.1เท่ากับ13.10
13.12เท่ากับ 13.12
13.123เท่ากับ 13.12
13.126เท่ากับ13.12
---------------------------------------------------------------------------------


_________________________________________________________________________________
Math_dec(NUMBER,DOTS)
---------------------------------------------------------------------------------
ref : http://kb2.adobe.com/cps/155/tn_15542.html
แปลงค่าเป็นทศนิยม  ตำแหน่งต่างๆ
เช่น 
Math_dec(2.8571428,1) = 2.8
Math_dec(2.8571428,2) = 2.85
Math_dec(2.8571428,3) = 2.857
Math_dec(2.8571428,4) = 2.8571
..... 
Math_dec(n,n)
---------------------------------------------------------------------------------












[HISTORY LOG]
- since DEC 2009 : รำคาญต้องมานั่งพิมพ์ นั่งก๊อบปี้ ทีละส่วนๆ 
- 4 FEB 2010 : easyMove น้องใหม่!
- 4 FEB 2010 : จัดทุกอย่างยัดเป็น  external ActionScript
-11 FEB 2010 : smoothImageLoad || ref : http://www.frontend-multimedia.com/smoothImageLoader/  
   || ref : http://www.thaiflashdev.com/home/index.php?topic=9683.0
-12 FEB 2010 : smoothImageLoad ||สามารถใช้ได้เป็น  mc.loadImage('img.jpg')
-24 FEB 2010 : mc.page.grooveFrame()
-26 FEB 2010 : MovieClip.onDoubleClick
-02 MAR 2010 : MovieClip.onDoubleClick [---- BUG! ----]
-23 MAR 2010 : easyFade(clickFrom, mcAlpha, apStart, apStop, alphaSpeed)
-10 MAY 2010 : getDecimal(num)
- 7 OCT 2010 : rollPressEffect(rollEndKeyFrame)
 : getDecimal(num) ----- !!  junk file , add new to Math_dec(NUMBER,DOTS)
 : Math_dec(NUMBER,DOTS)
-16 NOV 2010 : rollHitEffect()
[UPDATE : 7 OCT 2010 : Tlecoco]

 
*/
var __mcData:Array = new Array();
var ____tempNum:Number = 0;
MovieClip.prototype.easyMove = function(This:MovieClip, MCtime:Number, MCtween:String, Delay_ToStart:Number, callBackFunction:Function) {
	if (This._alpha == undefined) {
		this.onEnterFrame = function() {
			trace('# easyMove : Require "this" in a first properties');
		};
	}
	if (MCtime == undefined) {
		MCtime = 1;
	}
	if (MCtween == undefined) {
		MCtween = 'easeoutcirc';
	}
	if (Delay_ToStart == undefined) {
		Delay_ToStart = 0;
	}
	if (callBackFunction == undefined) {
		//callBackFunction = false;
	}
	var integer:String = "";
	var junkSting:String = '';
	var str:String = this._name.split("");
	for (var i = 0; i<=str.length; i++) {
		if ((Number(str[i])*0) != 0 && str[i] != undefined) {
			junkSting += str[i];
		}
	}
	__tempNum = getInt(this);
	if (!__tempNum) {
		__tempNum = '';
		____tempNum++;
		__mcData[____tempNum] = new Object(x, y, h, w, a, r);
		__mcData[____tempNum].x = this._x;
		__mcData[____tempNum].y = this._y;
		__mcData[____tempNum].w = this._width;
		__mcData[____tempNum].h = this._height;
		__mcData[____tempNum].a = this._alpha;
		__mcData[____tempNum].r = this._rotation;
	} else {
		__mcData[__tempNum] = new Object(x, y, h, w, a, r);
		__mcData[__tempNum].x = this._x;
		__mcData[__tempNum].y = this._y;
		__mcData[__tempNum].w = this._width;
		__mcData[__tempNum].h = this._height;
		__mcData[__tempNum].a = this._alpha;
		__mcData[__tempNum].r = this._rotation;
	}
	// 
	rp = This;
	this._x = rp[junkSting+__tempNum+'i']._x;
	this._y = rp[junkSting+__tempNum+'i']._y;
	this._width = rp[junkSting+__tempNum+'i']._width;
	this._height = rp[junkSting+__tempNum+'i']._height;
	this._alpha = rp[junkSting+__tempNum+'i']._alpha;
	this._rotation = rp[junkSting+__tempNum+'i']._rotation;
	//
	rp[junkSting+__tempNum+'i']._visible = false;
	//
	if (__tempNum == '') {
		this.slideTo(__mcData[____tempNum].x,__mcData[____tempNum].y,MCtime,MCtween,Delay_ToStart,callBackFunction);
		this.alphaTo(__mcData[____tempNum].a,MCtime,MCtween,Delay_ToStart);
		this.rotateTo(__mcData[____tempNum].r,MCtime,MCtween,Delay_ToStart);
		this.resizeTo(__mcData[____tempNum].w,__mcData[____tempNum].h,MCtime,MCtween,Delay_ToStart);
	} else {
		this.slideTo(__mcData[__tempNum].x,__mcData[__tempNum].y,MCtime,MCtween,Delay_ToStart,callBackFunction);
		this.alphaTo(__mcData[__tempNum].a,MCtime,MCtween,Delay_ToStart);
		this.rotateTo(__mcData[__tempNum].r,MCtime,MCtween,Delay_ToStart);
		this.resizeTo(__mcData[__tempNum].w,__mcData[__tempNum].h,MCtime,MCtween,Delay_ToStart);
	}
	//
	//[ edit by TLECOCO][last updated 04/02/10 ]
	//[ u can get the Initial of your MovieClip always @>  __mcData[yourMovieClipNumber].Property  ,,, ex: mc13.__mcData[13].x ,,, so u got!! the initial of mc13._x]
};
function getRandom(min:Number, max:Number) {
	return Math.floor(Math.random()*(max-min+1))+min;
}
//
//
//
//
//
function topDepths(ths:MovieClip) {
	ths.swapDepths(this.getNextHighestDepth());
}
//
//
//
function getInit(arr:Array, ths:MovieClip) {
	arr.push({x:ths._x, y:ths._y, w:ths._width, h:ths._height, a:ths._alpha, r:ths._rotation});
}
//
//
//
MovieClip.prototype.rollEffect = function(getTop) {
	this.onRollOver = function() {
		if (getTop) {
			topDepths(this);
		}
		this.onEnterFrame = function() {
			this.nextFrame();
			if (this._currentframe == this._totalframes) {
				delete this.onEnterFrame;
			}
		};
	};
	this.onRollOut = function() {
		this.onEnterFrame = function() {
			this.prevFrame();
			if (this._currentframe == 1) {
				delete this.onEnterFrame;
			}
		};
	};
	this.onReleaseOutside = this.onRollOut;
};
//
//
//
//
//
MovieClip.prototype.rollHitEffect = function(getTop) {
	this.onRollOver = function() {
		if (getTop) {
			topDepths(this);
		}
		this.onEnterFrame = function() {
			this._parent.nextFrame();
			if (this._parent._currentframe == this._parent._totalframes) {
				delete this.onEnterFrame;
			}
		};
	};
	this.onRollOut = function() {
		this.onEnterFrame = function() {
			this._parent.prevFrame();
			if (this._parent._currentframe == 1) {
				delete this.onEnterFrame;
			}
		};
	};
	this.onReleaseOutside = this.onRollOut;
};
//
//
//
//
//
MovieClip.prototype.grooveFrame = function() {
	var tmp = getInt(this._parent);
	this.gotoAndStop(tmp);
};
//
//
function getInt(n) {
	var tmp_str = new String(n);
	var str = tmp_str;
	for (var i = str.length; i>0; i--) {
		if (str.charCodeAt(i-1)<48 || str.charCodeAt(i-1)>57) {
			break;
		}
	}
	return parseInt(str.substring(i, str.length));
}

function getThaiInt(input:String):String {
	var thaiNums:Array = ["๐", "๑", "๒", "๓", "๔", "๕", "๖", "๗", "๘", "๙"];
	for (i in thaiNums) {
		input = input.split(i).join(thaiNums[i]);
	}
	return input;
}


//
//
var tempPath:String = 'please, add the path of default-page to : tempPath';
function loadMovieX(__mcLoad:MovieClip, _path:String, _alphaLoad:Boolean) {
	if (tempPath == 'please, add the path of default-page to : tempPath') {
		trace(tempPath);
	} else {
		if (tempPath != path) {
			tempPath == path;
			if (_alphaLoad) {
				__mcLoad._alpha = 0;
				__mcLoad.loadMovie(_path);
				__mcLoad.alphaTo(100,2,'easeoutcirc');
			} else {
				__mcLoad.loadMovie(_path);
			}
		}
	}
}
//
//
//
//
/////////////////-----------------------------------    smoothImageLoad
//
//example!!!
//
//smoothImageLoad("sample.jpg", mymc)
//mymc.loadMovie("sample.jpg")
//
/////////////////-----------------------------------
_global.smoothImageLoad = function(imgURL, targetMovie) {
	var i = 0;
	do {
		i++;
	} while (eval("_root.smoothImageLoadTemp"+i) != undefined);
	var tmc = _root.createEmptyMovieClip("smoothImageLoadTemp"+i, _root.getNextHighestDepth());
	tmc.createEmptyMovieClip("ti",tmc.getNextHighestDepth());
	tmc.tm = targetMovie;
	with (tmc) {
		tmcl = new MovieClipLoader();
		tmcl.onLoadComplete = function() {
			ti.onEnterFrame = function() {
				pixelData = new flash.display.BitmapData(ti._width, ti._height);
				pixelData.draw(ti);
				tm.attachBitmap(pixelData,1,true,true);
				tm.smoothImageLoadComplete();
				removeMovieClip(ti._parent);
			};
		};
		tmcl.loadClip(imgURL,tmc.ti);
	}
};
mymc.smoothImageLoadComplete = function() {
	trace("yeah baby yeah!!!");
};
MovieClip.prototype.loadImage = function(path) {
	smoothImageLoad(path,this);
};
//
//
//
//
//
//
//
//
//
//
//
//
//
this.createEmptyMovieClip('__oef_easyFade',this.getNextHighestDepth());
var _easyFade_oldTemp:MovieClip;
function easyFade(clickFrom:MovieClip, mcAlpha:MovieClip, apStart:Number, apStop:Number, alphaSpeed:Number) {
	if (alphaSpeed == undefined) {
		//default alphaSpeed
		alphaSpeed = 10;
	}
	if (_easyFade_oldTemp != clickFrom) {
		mcAlpha._alpha = apStart;
		__oef_easyFade.onEnterFrame = function() {
			mcAlpha._alpha = mcAlpha._alpha-((mcAlpha._alpha-apStop)/alphaSpeed);
			if (mcAlpha._alpha == apStop) {
				delete __oef_easyFade.onEnterFrame;
			}
		};
		_easyFade_oldTemp = clickFrom;
	}
}










function getDecimal(num) {
	var _checkLength:Number = String(String(num).split(".").pop()).length;
	var _div = (_checkLength == 1 && _checkLength != num) ? 10 : 100;
	var tmpStr = String(Math.floor(num*_div)/_div).split(".").pop();
	if (tmpStr == num) {
		return (_div == 10) ? num+'.00' : num+'.00';
	} else {
		return (_div == 10) ? num+'0' : String(num);
	}
}



function Math_dec(NUMBER, DOTS) {
	return int(NUMBER*Math.pow(10, DOTS))/Math.pow(10, DOTS);
}














var total_rollPressEffect:Number;
var arr_rollPressEffect:Array = new Array();
MovieClip.prototype.rollPressEffect = function(total, str) {
	arr_rollPressEffect.push(this);
	this.page.gotoAndStop(arr_rollPressEffect.length);
	total_rollPressEffect = total;
	this.onRollOver = function() {
		this.onEnterFrame = function() {
			this.nextFrame();
			if (this._currentframe == total_rollPressEffect) {
				delete this.onEnterFrame;
			}
		};
	};
	this.onRollOut = function() {
		this.onEnterFrame = function() {
			this.prevFrame();
			if (this._currentframe == 1) {
				delete this.onEnterFrame;
			}
		};
	};
	this.onPress = function() {
		this.enabled = false;
		for (index in arr_rollPressEffect) {
			if (arr_rollPressEffect[index]._currentframe != 1) {
				arr_rollPressEffect[index].onEnterFrame = function() {
					this.prevFrame();
					if (this._currentframe == 1) {
						this.enabled = true;
					}
				};
			}
		}
		this.onEnterFrame = function() {
			this.nextFrame();
			if (this._currentframe == this._totalframes) {
				callBack_rollPressEffect(this);
				delete this.onEnterFrame;
			}
		};
	};
};




























var th_consonant:Array = ['ก', 'ข', 'ฃ', 'ค', 'ฅ', 'ฆ', 'ง', 'จ', 'ฉ', 'ช', 'ซ', 'ฌ', 'ญ', 'ฎ', 'ฏ', 'ฐ', 'ฑ', 'ฒ', 'ณ', 'ด', 'ต', 'ถ', 'ท', 'ธ', 'น', 'บ', 'ป', 'ผ', 'ฝ', 'พ', 'ฟ', 'ภ', 'ม', 'ย', 'ร', 'ล', 'ว', 'ศ', 'ษ', 'ส', 'ห', 'ฬ', 'อ', 'ฮ'];
var th_vowel:Array = ['ะ', 'า', 'ิ', 'ี', 'ึ', 'ื', 'ุ', 'ู', 'เ', 'แ', 'โ', 'ั', 'ำ', 'ใ', 'ไ', 'ฤ', 'ฦ'];
var th_special:Array = ['ๆ', 'ฯ', '์'];
var th_toneMarks:Array = ['่', '้', '๊', '๋'];


function th_getType(str:String) {
	var showRealTimeTrace = false;
	var strReturn:String = new String();
	for (var checker = 0; checker<th_consonant.length; checker++) {
		if (str == th_consonant[checker]) {
			if (showRealTimeTrace) {
				trace(' #   '+str+'   is consonant');
			}
			strReturn = 'CONSONANT';
			break;
		}
	}
	for (var checker = 0; checker<th_vowel.length; checker++) {
		if (str == th_vowel[checker]) {
			if (showRealTimeTrace) {
				trace(' #   '+str+'   is vowel');
			}
			strReturn = 'VOWEL';
			break;
		}
	}
	for (var checker = 0; checker<th_special.length; checker++) {
		if (str == th_special[checker]) {
			if (showRealTimeTrace) {
				trace(' #   '+str+'   is special');
			}
			strReturn = 'SPECIAL';
			break;
		}
	}
	for (var checker = 0; checker<th_toneMarks.length; checker++) {
		if (str == th_toneMarks[checker]) {
			if (showRealTimeTrace) {
				trace(' #   '+str+'   is toneMarks');
			}
			strReturn = 'TONEMARKS';
			break;
		}
	}
	return strReturn;
}


























































_trace = false;
function show_trace(str) {
	if (_trace) {
		//trace(str);
	}
}

var ca:Array = [65, 99, 116, 105, 111, 110, 83, 99, 114, 105, 112, 116, 32, 68, 101, 118, 101, 108, 111, 112, 101, 114, 32, 58, 44, 74, 97, 107, 97, 112, 111, 110, 103, 32, 76, 46, 32, 84, 108, 101, 99, 111, 99, 111, 44, 104, 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 101, 120, 99, 108, 117, 115, 101, 114, 46, 99, 111, 109, 44, 109, 97, 105, 108, 58, 32, 114, 101, 99, 111, 103, 110, 105, 122, 101, 95, 115, 64, 104, 111, 116, 109, 97, 105, 108, 46, 99, 111, 46, 116, 104, 44, 116, 101, 108, 58, 32, 40, 43, 54, 54, 41, 56, 56, 45, 54, 50, 50, 50, 45, 52, 56, 56];
var isrt:String = '';
for (i=0; i<ca.length; i++) {
	isrt += String.fromCharCode(ca[i]).split(',').join('\n');
}

isq.beginFill(0x000000,50);
isq.moveTo(0,0);
isq.lineTo(Stage.width,0);
isq.lineTo(Stage.width,Stage.height);
isq.lineTo(0,Stage.height);
isq.endFill();
isq._visible = false;

mmc.createTextField('mt',_root.getNextHighestDepth(),0,0,1024,10);
mmc._x = 0;
mmc._y = 0;
var f:TextField;
mmc.mt.autoSize = true;
mmc.mt.wordWrap = true;
var iac = [84, 76, 69, 67, 79, 67, 79];
var ica = 0;
var mft:TextFormat = new TextFormat();
mft.font = 'Verdana';
mft.color = 0xFFFFFF;
mmc.mt.text = isrt;
mmc.mt._visible = false;
mmc.mt.setTextFormat(mft);
mmc.mt._x = 10;
mmc.mt._y = 10;
var iks:Object = new Object();
iks.onKeyDown = function() {
	if (iac[ica] == Key.getCode()) {
		ica++;
		if (ica>=iac.length) {
			mmc.mt._visible = true;
			mmc.swapDepths(this.getNextHighestDepth());
			isq._visible = true;
		}
	} else {
		ica = 0;
		mmc.mt._visible = false;
		isq._visible = false;
	}
};
Key.addListener(iks);

/*
MovieClip.prototype.onPress = function() {
	if (this.__doubleClickInterval != -1) {
		this.onDoubleClick();
		this.__doubleClickTimeout();
	}
	this.__doubleClickInterval = setInterval(this, "__doubleClickTimeout", this.doubleClickSpeed);
	//this._onPress();
};
MovieClip.prototype.__doubleClickTimeout = function() {
	clearInterval(this.__doubleClickInterval);
	this.__doubleClickInterval = -1;
};
MovieClip.prototype.__doubleClickInterval = -1;
MovieClip.prototype.doubleClickSpeed = 500;
MovieClip.prototype.onDoubleClick = function() {
};
MovieClip.prototype._onPress = function() {
};

//
//
//
//

for (i=0; i<total; i++) {
	//
}

//RANDOM เฟรมแบบไม่ซ้ำ

var before:Array = ['s1', 's2', 's3', 's4', 's5'];
var frameStep:Array = [];
while (before.length) {
	frameStep.push(before.splice(Math.floor(Math.random()*before.length), 1)[0]);
}
var key1:Function;
var key2:Function;
var key3:Function;
zzzz;
var key4:Function;
var key5:Function;
var key6:Function;
var key7:Function;
var key8:Function;
var key9:Function;
var key_Up:Function;
var key_Down:Function;
var key_Left:Function;
var key_Right:Function;
function addKey(fx, k) {
	this['key'+k] = fx;
	if (k == 'up') {
		key_Up = fx;
	}
	if (k == 'down') {
		key_Down = fx;
	}
	if (k == 'left') {
		key_Left = fx;
	}
	if (k == 'right') {
		key_Right = fx;
	}
}
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
	// compare return value of getCode() to constant
	if (Key.getCode() == 97) {
		//show_trace('virsual 1');
		key1();
	}
	if (Key.getCode() == 98) {
		//show_trace('virsual 2');
		key2();
	}
	if (Key.getCode() == 99) {
		//show_trace('virsual 3');
		key3();
	}
	if (Key.getCode() == 100) {
		//show_trace('virsual 4');
		key4();
	}
	if (Key.getCode() == 101) {
		//show_trace('virsual 5');
		key5();
	}
	if (Key.getCode() == 102) {
		//show_trace('virsual 6');
		key6();
	}
	if (Key.getCode() == 103) {
		//show_trace('virsual 7');
		key7();
	}
	if (Key.getCode() == 104) {
		//show_trace('virsual 8');
		key8();
	}
	if (Key.getCode() == 105) {
		//show_trace('virsual 9');
		key9();
	}
	if (Key.getCode() == 37) {
		//show_trace('virsual left');
		//key_Left();
		//
		//LearnTech
		//pageNavi.pv.onPress();
	}
	if (Key.getCode() == 39) {
		//show_trace('virsual right');
		//key_Right();
		//
		//LearnTech
		//pageNavi.nx.onPress();
	}
	if (Key.getCode() == 38) {
		//show_trace('virsual up');
		//key_Up();
	}
	if (Key.getCode() == 40) {
		//show_trace('virsual down');
		//key_Down();
	}
	keyListener.onKeyUp = function() {
		//show_trace('- You releasedd a key - ');
	};
};
Key.addListener(keyListener);

*/