Does anyone know why the unity web player does not use the load screen properly?
http://dl.dropbox.com/u/52270474/WebPlayer.html

I’ve been hunting all over hells half acre trying to find a good load method… how the hell do you do this… this is what I’ve been trying and it’s clearly NOT frackin working!!

var progress : float = 0;
var pos : Vector2 = new Vector2(20,40);
var size : Vector2 = new Vector2(247,13);
var progressBarEmpty : Texture2D;
var progressBarFull : Texture2D;

private var loading : boolean = false;
var levelName : String;

function OnGUI()
{
    GUI.DrawTexture(Rect(pos.x, pos.y, size.x, size.y), progressBarEmpty);
    GUI.DrawTexture(Rect(pos.x, pos.y, size.x * Mathf.Clamp01(progress), size.y), progressBarFull);
} 

function Update()
{
	if(!loading && Application.GetStreamProgressForLevel(levelName) == 1)
        progress = Time.time * 0.05;
	Application.LoadLevel(levelName);
}

I’ve formated your code mess and indent the code the way you’ve programmed it. As you can see the if statement only covers the progress = Time.time * 0.05; line.

Actually this line should be executed without any condition since it just fakes the progress and it doesn’t make much sense to do this when the level is loaded.

All this is useless since Application.LoadLevel is outside of your if-condition so it will be executed right away in the first frame.

The most important thing is: Have you build a streamed webplayer and considered all streaming-tips here ?

edit
Here how your Update function might should look like:

function Update()
{
    progress = Time.time * 0.05;
    if(!loading && Application.GetStreamProgressForLevel(levelName) == 1)
    {
        Application.LoadLevel(levelName);
    }
}

It’s ok to omit the brackets as long as you only want a single statement in the if-body, but it seems you’re not that familiar with the common syntax.