/* Syntax: whenTrueDo("booleanVariableName1", ["booleanVariableName2", "...3", "...4", ...], "commandToPerform")

This function requires at least 2 arguments in order to work correctly.
All arguments need to be sent as string literals, and cannot reference members of an array.
The last arugment sent is a command executed when all boolean variables evaluate to true. */

function whenTrueDo ()
	{
		if (arguments.length > 1)
		{
			var intervalCall = "whenTrueDoer('";
			
			for (var i=0; i<arguments.length-1; i++)
				{
					intervalCall += arguments[i]+"', '";
				}
				
			intervalCall += arguments[arguments.length-1]+"')";
			window[arguments[arguments.length-1] + "TestInterval"] = setInterval(intervalCall, 50);
		}
	}
	
function whenTrueDoer ()
	{
		var allTrue = true;
		
		for (var i=0; i<arguments.length-1; i++)
			{
				(window[arguments[i]] == true) ? null : allTrue = false;
			}
	
		if (allTrue == true)
			{
				eval(arguments[arguments.length-1]);
				clearInterval(window[arguments[arguments.length-1] + "TestInterval"]);
			}
	}
