fadeSpeed = 15


function setOpacity(layerName,value,fadeStep) {
	document.getElementById(layerName).style.opacity = value/fadeStep;
	document.getElementById(layerName).style.filter = 'alpha(opacity=' + value*100/fadeStep + ')';
	}

function fading_on(){
	clearTimeout(this.timer)
	this.setOpacity(this.layerName,this.i,this.fadeStep)
	this.i++
	if (this.i <= this.fadeStep){this.timer = eval('setTimeout("'+this.fadingObj+'.fading_on()",fadeSpeed)');}
	else if (this.expr2!=""){this.timer=eval(this.expr1);}
	}

function fading_off(){
	clearTimeout(this.timer)
	this.setOpacity(this.layerName,this.i,this.fadeStep)
	this.i--
	if (this.i >= 0){this.timer = eval('setTimeout("'+this.fadingObj+'.fading_off()",fadeSpeed)');}
	else if (this.expr2!=""){this.timer=eval(this.expr2);}
	}

function fading_obj(fadingObj,layerName,fadeStep,expr1,expr2){
	this.fadingObj = fadingObj;	
	this.layerName = layerName;	
	this.fadeStep = fadeStep;
	this.expr1 = expr1
	this.expr2 = expr2
	this.i = 0
	this.timer = 0
	this.fading_on = fading_on;
	this.fading_off = fading_off;
	this.setOpacity = setOpacity;
	}


function pose(layer_name, nb_tab, fading, fadeStep, speed, puissance, ordre){
	
	if (ordre == 1){
		indice = 0
		}
	else {
		indice = Math.floor(indice_tab.length*Math.random())
		if (indice == indice_tab.length){indice--;}
		}
	
	choix = indice_tab[indice];
	indice_tab[indice] = -1;
	eval('montre("'+layer_name+choix+'")')
	
	if (fading >= 1){
		eval('fading'+choix+' = new fading_obj("fading'+choix+'","'+layer_name+choix+'",'+fadeStep+',"","")')
		eval('fading'+choix+'.fading_on()')
		}
	else {
		eval('setOpacity("'+layer_name+choix+'",fadeStep,fadeStep)')
		}
	
	indice_tab2 = new Array();
	i = 0;
	for (j=0; j<indice_tab.length; j++){		
		if (indice_tab[j] != -1){
			indice_tab2[i] = indice_tab[j];
			i++;
			}		
		}
	
	indice_tab = indice_tab2	
	speed_val = speed*Math.pow(indice_tab.length/nb_tab,puissance)
			
	if (indice_tab.length>0){setTimeout("pose('"+layer_name+"',"+nb_tab+","+fading+","+fadeStep+","+speed+","+puissance+","+ordre+")",speed_val)}
	
	}	




