game_parts_collection = new Array();
var xml_doc;

loadSoundsOnInit();

function GameParts(shape, coords, page, contentid, linkto){
    this.shape = shape;
    this.coords = coords;
    this.page = page;
    this.contentid = contentid;
    this.linkto = linkto;

    if (typeof(_gameparts_prototype_called) == 'undefined')
	{
	    _gameparts_prototype_called = true;
	    GameParts.prototype.preloadImage = preloadImage;
	    GameParts.prototype.correctClick = correctClick;
	    GameParts.prototype.finalClick = finalClick;
	    GameParts.prototype.wrongClick = wrongClick;
	}
}

function preloadImage() { 
    if(document.images){
	if(!document.array_images) 
	    document.array_images = new Array();
	var i = 0, 
	    size = document.array_images.length, 
	    images_to_load = "images/" + "/" + this.linkto + ".gif";
	for( i = 0; i < images_to_load.length; i++ )
	    if (images_to_load.indexOf("#") != 0){
		document.array_images[size] = new Image; 
		document.array_images[size++].src = images_to_load;
	    }
    }
}	

function correctClick(){
    if (GameParts.counter) 
	Sound.play(sounds_collection['correct']);
    document.getElementById('correct_click').coords = this.coords;
    document.getElementById('source').src = "images/" + "/" + this.page + ".gif";
    document.getElementById('correct_click').shape = this.shape;
    GameParts.counter++;      
}

function finalClick(){
    document.getElementById('correct_click').coords = "0,0,0,0";
    document.getElementById('whole_image').coords = "0,0,0,0";
    document.getElementById('source').src = "images/" + "/" + this.linkto + ".gif";
    Sound.play(sounds_collection['payoff']);
}

function wrongClick(){
    Sound.play(sounds_collection['wrong']);
}

function userClick(click_area){
    if (click_area=='correct'){
	if (game_parts_collection[GameParts.counter]){
	    game_parts_collection[GameParts.counter].correctClick();
	} else {
	    game_parts_collection[GameParts.counter-1].finalClick();
	}
    } else if (click_area=='wrong') {
	wrongClick();
    }
}

function loadGame(){
    GameParts.counter = 0;
    importJs();
    setTimeout("Sound.play(sounds_collection['start'])", 100);
}

