function UnityProgress (dom) { this.progress = 0.0; this.message = ""; this.dom = dom; var parent = dom.parentNode; var funMessages = ["Waxing the Lane...", "Setting Pins...", "Balancing Reels...", "Stacking Chips...", "Making Snowballs..."]; if (templateFunMessages) { funMessages = templateFunMessages; } this.SetProgress = function (progress) { if (this.progress < progress) { this.progress = progress; // determine which message to show in proportion to progress var increment = 1 / funMessages.length; var messageIndex = Math.floor( (progress / increment) ); if (messageIndex < funMessages.length) { //console.log("messageIndex = " + messageIndex); this.SetMessage(funMessages[messageIndex]); } //this.SetMessage("Wheezing...") } if (progress == 1) { this.SetMessage("Preparing..."); document.getElementById("bgBar").style.display = "none"; document.getElementById("progressBar").style.display = "none"; } this.Update(); } this.SetMessage = function (message) { //console.log("Progress = " + progress); //this.message = funMessages[Math.floor(Math.random()*funMessages.length)]; this.message = message; this.Update(); } this.Clear = function() { document.getElementById("loadingBG").style.display = "none"; } this.Update = function() { //console.log("Updating"); var length = 200 * Math.min(this.progress, 1); bar = document.getElementById("progressBar") bar.style.width = length + "px"; document.getElementById("loadingInfo").innerHTML = this.message; } this.Update (); }