var toggle=0;
var buttons = null;
var suppress = true;

var BUTTON_A = 13;
var BUTTON_MINUS = 170;
var BUTTON_B = 171;
var BUTTON_1 = 172;
var BUTTON_2 = 173;
var BUTTON_PLUS = 174;
var BUTTON_UP = 175;
var BUTTON_DOWN = 176;
var BUTTON_RIGHT = 177;
var BUTTON_LEFT = 178;

function CreateHTML(pagecolor)
{
    //Make the necessary body mods
    var body = document.body;
    body.onkeypress = 'return OnKeyPress(event)';
    body.onkeydown = 'return OnKeyDown(event)';
    body.onkeyup = 'return OnKeyUp(event)';
    
/*
    //Then hide the optional javascript warning
    document.getElementById('jswarning').style.visibility = 'hidden';
*/
    //Then stuff in the reflector
    var bodyHTML = '<div id="WiiBounce" style="position:absolute;top:0px;left:0px;width:1px;height:1px;">';
    bodyHTML += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="100%" height="100%" id="WiiBounceFlash" align="middle">';
    bodyHTML += '<param name="allowScriptAccess" value="sameDomain" /><param name="movie" value="WiiBounce.swf" /><param name="quality" value="high" /><param name="bgcolor" value="'+pagecolor+'"/></object>';
    bodyHTML += '</div>';
/*
    //Then put in the user's flash file and center it nicely
    var topPos = (500-height)/2;
    var mL = (0-width)/2;
    bodyHTML += '<div id="GameContainer" style="position:absolute;top:'+topPos+'px;left:50%;width:'+width+'px;height:'+height+'px;margin-left:'+mL+'px;">';
    bodyHTML += '<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0"';
    bodyHTML += 'WIDTH="'+width+'" HEIGHT="'+height+'" id="WiiFlashGame"><PARAM NAME=movie VALUE="'+flashgame+'"><PARAM NAME=quality VALUE=high><PARAM NAME=bgcolor VALUE='+bgcolor+'><EMBED src="'+flashgame+'" quality=high bgcolor='+bgcolor+' WIDTH="'+width+'" HEIGHT="'+height+'"';
    bodyHTML += 'NAME="flashgame" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED></OBJECT>';
    bodyHTML += '</div>';
*/
    document.write(bodyHTML);
}

function ParseWiiButton(index,down)
{
    if(index == BUTTON_A)
        buttons[0] = down;
    else
        buttons[index-169] = down;
}

function InitWiiMoteState()
{
    buttons = new Array();
    for(var i = 0; i < 10; i++)
        buttons[i] = false;
}

function StoreWiiMoteState()
{
    var bs = 0;
    var dpad = 0;
    var exp = 2;
    for(var i = 6; i < 10; i++)
    {
        if(buttons[i])
            dpad += exp;
        exp *= 2;
    }
    exp = 2;
    for(var i = 0; i < 6; i++)
    {
        if(buttons[i])
            bs += exp;
        exp *= 2;
    }    
    var div = document.getElementById("WiiBounce");
	div.style.width = bs+"px";
	div.style.height = dpad+"px";
}

InitWiiMoteState();

function OnKeyPress( event )
{
    if(suppress)
    {
        switch(event.which)
        {
            case BUTTON_A:
            case BUTTON_MINUS:
            case BUTTON_B:
            case BUTTON_1:
            case BUTTON_2:
            case BUTTON_PLUS:
            case BUTTON_UP:
            case BUTTON_DOWN:
            case BUTTON_RIGHT:
            case BUTTON_LEFT:
                return false;
        }
    }
};

function OnKeyUp( event ) {
	ParseWiiButton(event.keyCode,false);
	StoreWiiMoteState();
    return false;
}

function OnKeyDown( event ) {
	ParseWiiButton(event.keyCode,true);
	StoreWiiMoteState();
	document.getElementById("WiiFlashGame").focus();
    return false;
}
