// JavaScript Document

function CalculateSwingSpeed()
{
	var iWeaponSpeed1 = parseFloat(document.Variables.WeaponSpeed1.value);
	var iWeaponSpeed2 = parseFloat(document.Variables.WeaponSpeed2.value);
	var iQuickness = parseFloat(document.Variables.Quickness.value);
	var iMoa = parseFloat(document.Variables.Moa.value);
	var iSHaste = parseFloat(document.Variables.SHaste.value);
	var iIHaste = parseFloat(document.Variables.IHaste.value);

	if (iQuickness > 250) {
		iQuickness = 250;
		document.Variables.Quickness.value = iQuickness;
	}

	iQuickModifier = (1 - ((iQuickness - 60)/500));

	if(iIHaste > 10) {
		iIHaste = 10;
		document.Variables.IHaste.value = 10;
	}

	iMoAModifier = (1 - ((iMoa * 3)/100));

	if (iSHaste >= 0) {
		iSHasteModifier = (1 - (iSHaste / 100));
	}

	if (iIHaste >= 0) {
		iIHasteModifier = (1 - (iIHaste / 100));
	}


	//if (iMoa > 0) {
	// 	iHasteModifier = (1 - ((iHaste / 100) + ((iMoa * 3)/100))); 
	//} else {
 	//	iHasteModifier = (1 - (iHaste / 100)); 
	//}

	iHasteModifier = iMoAModifier * iIHasteModifier * iSHasteModifier;

	if (iWeaponSpeed1 > 0) {
		swingspeed1 = iWeaponSpeed1 * iQuickModifier * iHasteModifier;
		if (swingspeed1 < 1.5) {
			swingspeed1 = 1.5;
		}
	} else {
		swingspeed1 = 0;
	}

	if (iWeaponSpeed2 > 0) {
		swingspeed2 = iWeaponSpeed2 * iQuickModifier * iHasteModifier;
		//if (swingspeed2 < 1.5) {
		//	swingspeed2 = 1.5;
		//}
	} else {
		swingspeed2 = 0;
	}

	if (iWeaponSpeed1 > 0) {
		document.Variables.ActualSpeed1.value = swingspeed1;
		document.Variables.HasteModifier.value = iHasteModifier;
		document.Variables.QuickModifier.value = iQuickModifier;
	} else {
		document.Variables.ActualSpeed1.value = 'Not Calculated';
		document.Variables.HasteModifier.value = iHasteModifier;
		document.Variables.QuickModifier.value = iQuickModifier;
	}


	if (iWeaponSpeed2 > 0 && iWeaponSpeed1 > 0) {
		document.Variables.ActualSpeed2.value = swingspeed2;
		document.Variables.HasteModifier.value = iHasteModifier;
		document.Variables.QuickModifier.value = iQuickModifier;
	} else {
		document.Variables.ActualSpeed2.value = 'Not Calculated';
		document.Variables.HasteModifier.value = iHasteModifier;
		document.Variables.QuickModifier.value = iQuickModifier;
	}

	if (swingspeed1 >= 1.5 && swingspeed2 > 0) {
		iDualWieldSwingSpeed = ((swingspeed1+swingspeed2) / 2);
	        if (iDualWieldSwingSpeed < 1.5) {
	                iDualWieldSwingSpeed = 1.5;
	        }
		document.Variables.DualWieldSwingSpeed.value = iDualWieldSwingSpeed;
	} else {
		document.Variables.DualWieldSwingSpeed.value = 'Not Calculated';
	}
}