function showHide(inID) {
	if (document.getElementById(inID).style.display == 'none') {
		document.getElementById(inID).style.display = 'block';
	} else {
		document.getElementById(inID).style.display = 'none';
	}
}

var atkLevel=0;
var defLevel=0;
var elementLevel=0;
var hpmpLevel=0;
var point=410;
var bonusString;

function checkButton(buttonID){
	if(buttonID == "atkPlus" && point >= atkPointNeed(atkLevel+1) && atkLevel < 100){
		// deduct point used
		point-=atkPointNeed(atkLevel+1);
		// update/set effect after point inserted (cumulative)
		document.getElementById("atkResult").innerHTML = parseInt(document.getElementById("atkResult").innerHTML) + atkStatGain(atkLevel+1);
		// upgrade to next level
		atkLevel++;
		// set updated level
		document.getElementById("atkLevel").innerHTML = atkLevel;
		// set point need for next level
		document.getElementById("atkPointNeed").innerHTML=atkPointNeed(atkLevel+1);
//		alert(pointLeft);
	} else if(buttonID == "atkMinus" && atkLevel > 0){
		point+=atkPointNeed(atkLevel);
		document.getElementById("atkResult").innerHTML = parseInt(document.getElementById("atkResult").innerHTML) - atkStatGain(atkLevel);
		atkLevel--;
		document.getElementById("atkLevel").innerHTML = atkLevel;	
		document.getElementById("atkPointNeed").innerHTML=atkPointNeed(atkLevel);		
	} else if(buttonID == "defPlus" && point >= defPointNeed(defLevel+1) && defLevel < 100){
		point-=defPointNeed(defLevel+1);
		document.getElementById("defResult").innerHTML = parseInt(document.getElementById("defResult").innerHTML) + defStatGain(defLevel+1);
		defLevel++;
		document.getElementById("defLevel").innerHTML = defLevel;
		document.getElementById("defPointNeed").innerHTML=defPointNeed(defLevel+1);
	} else if(buttonID == "defMinus" && defLevel > 0){
		point+=defPointNeed(defLevel);
		document.getElementById("defResult").innerHTML = parseInt(document.getElementById("defResult").innerHTML) - defStatGain(defLevel);
		defLevel--;
		document.getElementById("defLevel").innerHTML = defLevel;	
		document.getElementById("defPointNeed").innerHTML=defPointNeed(defLevel);	
	} else if(buttonID == "elementPlus" && point >= elementPointNeed(elementLevel+1) && elementLevel < 100){
		point-=elementPointNeed(elementLevel+1);
		document.getElementById("elementResult").innerHTML = parseInt(document.getElementById("elementResult").innerHTML) + elementStatGain(elementLevel+1);
		elementLevel++;
		document.getElementById("elementLevel").innerHTML = elementLevel;
		document.getElementById("elementPointNeed").innerHTML=elementPointNeed(elementLevel+1);
	} else if(buttonID == "elementMinus" && elementLevel > 0){
		point+=elementPointNeed(elementLevel);
		document.getElementById("elementResult").innerHTML = parseInt(document.getElementById("elementResult").innerHTML) - elementStatGain(elementLevel);
		elementLevel--;
		document.getElementById("elementLevel").innerHTML = elementLevel;	
		document.getElementById("elementPointNeed").innerHTML=elementPointNeed(elementLevel);	
	} else if(buttonID == "hpmpPlus" && point >= hpmpPointNeed(hpmpLevel+1) && hpmpLevel < 100){
		point-=hpmpPointNeed(hpmpLevel+1);
		document.getElementById("hpmpResult").innerHTML = parseInt(document.getElementById("hpmpResult").innerHTML) + hpmpStatGain(hpmpLevel+1);
		hpmpLevel++;
		document.getElementById("hpmpLevel").innerHTML = hpmpLevel;
		document.getElementById("hpmpPointNeed").innerHTML=hpmpPointNeed(hpmpLevel+1);
	} else if(buttonID == "hpmpMinus" && hpmpLevel > 0){
		point+=hpmpPointNeed(hpmpLevel);
		document.getElementById("hpmpResult").innerHTML = parseInt(document.getElementById("hpmpResult").innerHTML) - hpmpStatGain(hpmpLevel);
		hpmpLevel--;
		document.getElementById("hpmpLevel").innerHTML = hpmpLevel;	
		document.getElementById("hpmpPointNeed").innerHTML=hpmpPointNeed(hpmpLevel);	
	} else if(buttonID == "reset"){
		point = 410;
		// atk
		atkLevel=0;
		document.getElementById("atkResult").innerHTML = 0;
		document.getElementById("atkLevel").innerHTML = 0;
		document.getElementById("atkPointNeed").innerHTML=1;
		// def
		defLevel=0;
		document.getElementById("defResult").innerHTML = 0;
		document.getElementById("defLevel").innerHTML = 0;
		document.getElementById("defPointNeed").innerHTML=1;
		// ele
		elementLevel=0;
		document.getElementById("elementResult").innerHTML = 0;
		document.getElementById("elementLevel").innerHTML = 0;
		document.getElementById("elementPointNeed").innerHTML=1;
		// hp
		hpmpLevel=0;
		document.getElementById("hpmpResult").innerHTML = 0;
		document.getElementById("hpmpLevel").innerHTML = 0;
		document.getElementById("hpmpPointNeed").innerHTML=1;
	}
	document.getElementById("point").innerHTML=point;
	
	// bonus ability
	bonusString="";
	if(atkLevel < 1) bonusString+= "";
	else if(atkLevel < 10) bonusString+= "พลังโจมตี + 5";
	else if(atkLevel < 20) bonusString+= "พลังโจมตี + 5<br />แม่นยำ + 10";
	else if(atkLevel < 30) bonusString+= "พลังโจมตี + 5<br />แม่นยำ + 10<br />โอกาศ Crirical + 2";
	else if(atkLevel < 40) bonusString+= "พลังโจมตี + 10<br />แม่นยำ + 20<br />โอกาศ Crirical + 2";
	else if(atkLevel < 50) bonusString+= "พลังโจมตี + 10<br />แม่นยำ + 20<br />โอกาศ Critical + 2<br />Critical Damage + 10";
	else if(atkLevel < 60) bonusString+= "พลังโจมตี + 10<br />แม่นยำ + 20<br />โอกาศ Critical + 2<br />Critical Damage + 10<br />HP/MP+200";
	else if(atkLevel < 70) bonusString+= "พลังโจมตี + 10<br />แม่นยำ + 35<br />โอกาศ Critical + 2<br />Critical Damage + 10<br />HP/MP+200";
	else if(atkLevel < 80) bonusString+= "พลังโจมตี + 15<br />แม่นยำ + 50<br />โอกาศ Critical + 2<br />Critical Damage + 10<br />HP/MP+200";
	else if(atkLevel < 90) bonusString+= "พลังโจมตี + 15<br />แม่นยำ + 50<br />โอกาศ Critical + 5<br />Critical Damage + 10<br />HP/MP+200";
	else if(atkLevel < 100) bonusString+= "พลังโจมตี + 15<br />แม่นยำ + 50<br />โอกาศ Critical + 5<br />Critical Damage + 30<br />HP/MP+200";
	else if(atkLevel < 101) bonusString+= "พลังโจมตี + 20<br />แม่นยำ + 70<br />โอกาศ Critical + 8<br />Critical Damage + 50<br />HP/MP+400";
	if(defLevel < 10) bonusString+= "";
	else if(defLevel < 20) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 5";
	else if(defLevel < 30) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 5<br />ลดโอกาศโดนคริ + 2";
	else if(defLevel < 40) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 5<br />ลดโอกาศโดนคริ + 2<br />HP + 100";
	else if(defLevel < 50) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 5<br />ลดโอกาศโดนคริ + 4<br />HP + 100";
	else if(defLevel < 60) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 10<br />ลดโอกาศโดนคริ + 4<br />HP + 100";
	else if(defLevel < 70) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 10<br />ลดโอกาศโดนคริ + 4<br />HP + 300";
	else if(defLevel < 75) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 10<br />ลดโอกาศโดนคริ + 7<br />HP + 300";
	else if(defLevel < 80) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 10<br />ลดโอกาศโดนคริ + 7<br />HP + 300<br />ต้านทุกธาตุ + 2";
	else if(defLevel < 90) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 20<br />ลดโอกาศโดนคริ + 10<br />HP + 300<br />ต้านทุกธาตุ + 2";
	else if(defLevel < 95) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 20<br />ลดโอกาศโดนคริ + 10<br />HP + 300<br />ต้านทุกธาตุ + 5";
	else if(defLevel < 100) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 20<br />ลดโอกาศโดนคริ + 10<br />HP + 600<br />ต้านทุกธาตุ + 5";
	else if(defLevel < 101) bonusString+= "<br />หลบหลีกระยะใกล้/ไกล + 40<br />ลดโอกาศโดนคริ + 10<br />HP + 600<br />ต้านทุกธาตุ + 10";
	if(elementLevel < 1) bonusString+= "";
	else if(elementLevel < 10) bonusString+= "<br />ธาตุ + 2";
	else if(elementLevel < 20) bonusString+= "<br />ธาตุ + 2<br />MP + 100";
	else if(elementLevel < 30) bonusString+= "<br />ธาตุ + 2<br />MP + 100<br />ลดความเสียหายจากเวทย์ + 5";
	else if(elementLevel < 40) bonusString+= "<br />ธาตุ + 4<br />MP + 100<br />ลดความเสียหายจากเวทย์ + 5<br />ต้านทุกธาตุ + 2";
	else if(elementLevel < 50) bonusString+= "<br />ธาตุ + 4<br />MP + 200<br />ลดความเสียหายจากเวทย์ + 5<br />ต้านทุกธาตุ + 2";
	else if(elementLevel < 60) bonusString+= "<br />ธาตุ + 4<br />MP + 200<br />ลดความเสียหายจากเวทย์ + 10<br />ต้านทุกธาตุ + 2";
	else if(elementLevel < 70) bonusString+= "<br />ธาตุ + 6<br />MP + 200<br />ลดความเสียหายจากเวทย์ + 10<br />ต้านทุกธาตุ + 5";
	else if(elementLevel < 80) bonusString+= "<br />ธาตุ + 6<br />MP + 300<br />ลดความเสียหายจากเวทย์ + 10<br />ต้านทุกธาตุ + 5";
	else if(elementLevel < 90) bonusString+= "<br />ธาตุ + 6<br />MP + 300<br />ลดความเสียหายจากเวทย์ + 15<br />ต้านทุกธาตุ + 5";
	else if(elementLevel < 100) bonusString+= "<br />ธาตุ + 8<br />MP + 300<br />ลดความเสียหายจากเวทย์ + 15<br />ต้านทุกธาตุ + 9";
	else if(elementLevel < 101) bonusString+= "<br />ธาตุ + 10<br />MP + 500<br />ลดความเสียหายจากเวทย์ + 20<br />ต้านทุกธาตุ + 15";
	if(hpmpLevel < 5) bonusString+= "";
	else if(hpmpLevel < 10) bonusString+= "<br />เพิ่มพลังการโจมตี + 5";
	else if(hpmpLevel < 15) bonusString+= "<br />เพิ่มพลังการโจมตี + 10";
	else if(hpmpLevel < 20) bonusString+= "<br />เพิ่มพลังการโจมตี + 15";
	else if(hpmpLevel < 25) bonusString+= "<br />เพิ่มพลังการโจมตี + 20<br />ป้องกัน + 10";
	else if(hpmpLevel < 30) bonusString+= "<br />เพิ่มพลังการโจมตี + 25<br />ป้องกัน + 10";
	else if(hpmpLevel < 35) bonusString+= "<br />เพิ่มพลังการโจมตี + 30<br />ป้องกัน + 10";
	else if(hpmpLevel < 40) bonusString+= "<br />เพิ่มพลังการโจมตี + 35<br />ป้องกัน + 10";
	else if(hpmpLevel < 45) bonusString+= "<br />เพิ่มพลังการโจมตี + 40<br />ป้องกัน + 25";
	else if(hpmpLevel < 50) bonusString+= "<br />เพิ่มพลังการโจมตี + 50<br />ป้องกัน + 25";
	else if(hpmpLevel < 55) bonusString+= "<br />เพิ่มพลังการโจมตี + 60<br />ป้องกัน + 25<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 60) bonusString+= "<br />เพิ่มพลังการโจมตี + 70<br />ป้องกัน + 25<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 65) bonusString+= "<br />เพิ่มพลังการโจมตี + 80<br />ป้องกัน + 25<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 70) bonusString+= "<br />เพิ่มพลังการโจมตี + 90<br />ป้องกัน + 25<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 75) bonusString+= "<br />เพิ่มพลังการโจมตี + 100<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 80) bonusString+= "<br />เพิ่มพลังการโจมตี + 115<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 85) bonusString+= "<br />เพิ่มพลังการโจมตี + 130<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2";
	else if(hpmpLevel < 86) bonusString+= "<br />เพิ่มพลังการโจมตี + 145<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 1";
	else if(hpmpLevel < 87) bonusString+= "<br />เพิ่มพลังการโจมตี + 145<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 2";
	else if(hpmpLevel < 88) bonusString+= "<br />เพิ่มพลังการโจมตี + 145<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 3";
	else if(hpmpLevel < 90) bonusString+= "<br />เพิ่มพลังการโจมตี + 145<br />ป้องกัน + 45<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4";
	else if(hpmpLevel < 91) bonusString+= "<br />เพิ่มพลังการโจมตี + 160<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4";
	else if(hpmpLevel < 92) bonusString+= "<br />เพิ่มพลังการโจมตี + 160<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 2";
	else if(hpmpLevel < 93) bonusString+= "<br />เพิ่มพลังการโจมตี + 160<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 4";
	else if(hpmpLevel < 94) bonusString+= "<br />เพิ่มพลังการโจมตี + 160<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 6";
	else if(hpmpLevel < 95) bonusString+= "<br />เพิ่มพลังการโจมตี + 160<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 8";
	else if(hpmpLevel < 96) bonusString+= "<br />เพิ่มพลังการโจมตี + 180<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 10";
	else if(hpmpLevel < 97) bonusString+= "<br />เพิ่มพลังการโจมตี + 180<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 12";
	else if(hpmpLevel < 98) bonusString+= "<br />เพิ่มพลังการโจมตี + 180<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 14";
	else if(hpmpLevel < 99) bonusString+= "<br />เพิ่มพลังการโจมตี + 180<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 16";
	else if(hpmpLevel < 100) bonusString+= "<br />เพิ่มพลังการโจมตี + 180<br />ป้องกัน + 70<br />ต้านทุกธาตุ + 2<br />ลดโอกาศโดนคริ + 4<br />หลบหลีก + 18";
	else if(hpmpLevel < 101) bonusString+= "<br />เพิ่มพลังการโจมตี + 200<br />ป้องกัน + 100<br />ต้านทุกธาตุ + 5<br />ลดโอกาศโดนคริ + 5<br />หลบหลีก + 20";
	if(bonusString.indexOf("<br />") == 0){
		bonusString=bonusString.replace(/<br \/>/,"");
	}
	document.getElementById("bonus").innerHTML=bonusString;
}


function atkPointNeed(atLevel){
	if(atLevel <= 10){
		pointNeed = 1;
	} else if(atLevel <= 19){
		pointNeed = 2;
	} else if(atLevel <= 39){
		pointNeed = 3;
	} else if(atLevel <= 59){
		pointNeed = 4;
	} else if(atLevel <= 79){
		pointNeed = 5;
	} else {
		pointNeed = 6;
	}
	return pointNeed;
}
function defPointNeed(atLevel){
	if(atLevel <= 10){
		pointNeed = 1;
	} else if(atLevel <= 29){
		pointNeed = 2;
	} else if(atLevel <= 40){
		pointNeed = 3;
	} else if(atLevel <= 60){
		pointNeed = 4;
	} else if(atLevel <= 75){
		pointNeed = 5;
	} else if(atLevel <= 84){
		pointNeed = 6;
	} else {
		pointNeed = 7;
	}
	return pointNeed;
}
function elementPointNeed(atLevel){
	if(atLevel <= 20){
		pointNeed = 1;
	} else if(atLevel <= 30){
		pointNeed = 2;
	} else if(atLevel <= 40){
		pointNeed = 3;
	} else if(atLevel <= 50){
		pointNeed = 4;
	} else if(atLevel <= 70){
		pointNeed = 5;
	} else if(atLevel <= 80){
		pointNeed = 6;
	} else {
		pointNeed = 7;
	}
	return pointNeed;
}
function hpmpPointNeed(atLevel){
	if(atLevel <= 10){
		pointNeed = 1;
	} else if(atLevel <= 30){
		pointNeed = 2;
	} else if(atLevel <= 50){
		pointNeed = 3;
	} else if(atLevel <= 60){
		pointNeed = 4;
	} else if(atLevel <= 70){
		pointNeed = 5;
	} else if(atLevel <= 80){
		pointNeed = 6;
	} else {
		pointNeed = 7;
	}
	return pointNeed;
}

function atkStatGain(atLevel){
	if(atLevel <= 10){
		statGain=5;
	} else if(atLevel <= 20){
		statGain=6;
	} else if(atLevel <= 30){
		statGain=7;
	} else if(atLevel <= 40){
		statGain=8;
	} else if(atLevel <= 50){
		statGain=9;
	} else if(atLevel <= 60){
		statGain=10;
	} else if(atLevel <= 70){
		statGain=11;
	} else if(atLevel <= 80){
		statGain=13;
	} else {
		statGain=14;
	}
	return statGain;
}
function defStatGain(atLevel){
	if(atLevel <= 10){
		statGain=1;
	} else if(atLevel <= 20){
		statGain=2;
	} else if(atLevel <= 30){
		statGain=3;
	} else if(atLevel <= 40){
		statGain=4;
	} else if(atLevel <= 50){
		statGain=5;
	} else if(atLevel <= 60){
		statGain=6;
	} else if(atLevel <= 70){
		statGain=7;
	} else if(atLevel <= 80){
		statGain=8;
	} else {
		statGain=9;
	}
	return statGain;
}
function elementStatGain(atLevel){
	if(atLevel <= 50){
		statGain=1;
	} else {
		statGain=2;
	}
	return statGain;
}
function hpmpStatGain(atLevel){
	if(atLevel <= 50){
		statGain=1;
	} else {
		statGain=2;
	}
	return statGain;
}