
for(i=1; i<=150; i++)
{
	document.calcForm.A_BaseLV.options[i-1] = new Option(i,i);
}


for(i=1; i<=120; i++)
{
	document.calcForm.A_STR.options[i-1] = new Option(i,i);
	document.calcForm.A_AGI.options[i-1] = new Option(i,i);
	document.calcForm.A_VIT.options[i-1] = new Option(i,i);
	document.calcForm.A_INT.options[i-1] = new Option(i,i);
	document.calcForm.A_DEX.options[i-1] = new Option(i,i);
	document.calcForm.A_LUK.options[i-1] = new Option(i,i);
}


function StCalc()
{
	n_str = eval(document.calcForm.A_STR.value);
	n_agi = eval(document.calcForm.A_AGI.value);
	n_vit = eval(document.calcForm.A_VIT.value);
	n_int = eval(document.calcForm.A_INT.value);
	n_dex = eval(document.calcForm.A_DEX.value);
	n_luk = eval(document.calcForm.A_LUK.value);

	stpoint = 0;

	for(i = 1; i < n_str; i++)
		stpoint += StCalc2(i);
	for(i = 1; i < n_agi; i++)
		stpoint += StCalc2(i);
	for(i = 1; i < n_vit; i++)
		stpoint += StCalc2(i);
	for(i = 1; i < n_int; i++)
		stpoint += StCalc2(i);
	for(i = 1; i < n_dex; i++)
		stpoint += StCalc2(i);
	for(i = 1; i < n_luk; i++)
		stpoint += StCalc2(i);

	//n_baselv = eval(document.calcForm.A_BaseLV.value);

	if(eval(document.calcForm.IsTrans.checked))
		totalstat = 100;
	else
		totalstat = 48;

	for(i = 1; stpoint > totalstat && i < 150; i++)
	{
		if(i < 100)
			totalstat += Math.floor((i) / 5) + 3;
		else
			totalstat += Math.floor((i - 100) / 10) + 23;
	}

	if(i > 150)
		i = 150;

	//set base level and remaining stat values.
	document.calcForm.A_BaseLV.value = i;

	myInnerHtml("A_StPoint",totalstat - stpoint,0);
	myInnerHtml("A_StPointUsed",stpoint,0);
	myInnerHtml("A_StPointTotal",totalstat,0);

	StSubStatCalc();

}

function StCalc2(sp)
{
	if(sp < 100)
		return Math.floor((sp - 1) / 10) + 2;
	else
		return Math.floor((sp - 100) / 5) * 4 + 16;
}

function StSubStatCalc()
{
	n_baselv = eval(document.calcForm.A_BaseLV.value);
	n_str = eval(document.calcForm.A_STR.value);
	n_agi = eval(document.calcForm.A_AGI.value);
	n_vit = eval(document.calcForm.A_VIT.value);
	n_int = eval(document.calcForm.A_INT.value);
	n_dex = eval(document.calcForm.A_DEX.value);
	n_luk = eval(document.calcForm.A_LUK.value);

	atk = n_str + Math.floor(n_baselv / 4) + Math.floor(n_dex / 5) + Math.floor(n_luk / 3);
	matk = Math.floor(n_int * 1.5) + Math.floor(n_dex / 2) + Math.floor(n_luk / 3);
	def_s = Math.floor(n_baselv / 2) + Math.floor(n_agi / 5) + Math.floor(n_vit / 2);
	mdef_s = Math.floor(n_baselv / 4) + Math.floor(n_vit / 5) + Math.floor(n_dex / 5) + n_int;
	hit = 175 + n_baselv + n_dex + Math.floor(n_luk / 3);
	flee = 100 + n_baselv + n_agi + Math.floor(n_luk / 5);
	flee_p = Math.floor(n_luk / 10);
	crit = 1 + Math.floor(n_luk / 3);

	myInnerHtml("A_Atk",atk + " + 0",0);
	myInnerHtml("A_MAtk",matk + " + 0",0);
	myInnerHtml("A_Def",def_s + " + 0",0);
	myInnerHtml("A_MDef",mdef_s + " + 0",0);
	myInnerHtml("A_Hit",hit,0);
	myInnerHtml("A_Flee",flee + " + " + flee_p,0);
	myInnerHtml("A_Crit",crit,0);
	myInnerHtml("A_Aspd","&nbsp;",0);
}

StSubStatCalc();
