Vautour

Description

Un oiseau très collant que votre souris attire beaucoup.

Source / Exemple :


<html>
<head>
<title>Iwaweb - Vautour</title>
<script language="javascript">
posiX=0; //position en X de la souris
posiY=0; //position en Y de la souris
img=0;
var x=new Array();
var y=new Array();
var instruction=new Array();
t=0;
t1=0;
vitesse=5; //vitesse à laquelle l'oiseau se déplace
function autre()
{
	if(posiX && posiY)
	{
		posibirdX=document.all.calque_oiseau.style.pixelLeft; //position de l'image
		posibirdY=document.all.calque_oiseau.style.pixelTop;
		if(posiX>posibirdX+141 || posiX<posibirdX)
		{
			calcul();
			if(t!=posiX || t1!=posiY)
			{
				t=posiX;
				t1=posiY;
				instruction[0]=Math.abs(diffX/vitesse);
				instruction[1]=0;
				if(diffX<0){instruction[2]=-vitesse;}
				else{instruction[2]=vitesse;}
				instruction[3]=Math.abs(diffY/vitesse);
				instruction[4]=0;
				if(diffY<0){instruction[5]=-vitesse;}
				else{instruction[5]=vitesse;}
			}
			if(instruction[1]<instruction[0])
			{	
				document.all.calque_oiseau.style.pixelLeft=document.all.calque_oiseau.style.pixelLeft+instruction[2];
				instruction[1]++;
			}
			if(instruction[4]<instruction[3])
			{
				document.all.calque_oiseau.style.pixelTop=document.all.calque_oiseau.style.pixelTop+instruction[5];
				instruction[4]++;
			}
		}
		if(posiX<=posibirdX+141 && posiX>=posibirdX)
		{
			calcul();
			if(t1!=posiY)
			{
				t1=posiY;
				instruction[3]=Math.abs(diffY/vitesse);
				instruction[4]=0;
				if(diffY<0){instruction[5]=-vitesse;}
				else{instruction[5]=vitesse;}
			}
			if(instruction[4]<instruction[3])
			{
				document.all.calque_oiseau.style.pixelTop=document.all.calque_oiseau.style.pixelTop+instruction[5];
				instruction[4]++;
			}
		}
		//charge les images pour que l'oiseau tourne la tête vers la gauche ou la droite
		if((posiX-(posibirdX+70))>0 && img){document.images[0].src="images/oiseau.gif";img=0;}
		if((posiX-(posibirdX+70))<0 && !img){document.images[0].src="images/oiseau2.gif";img=1;}		
	}
	document.onmousemove=deplacement;
	document.onkeydown=changement_vitesse;
	function changement_vitesse() //la fonction changement de vitesse est appelée quand on appuie sur + ou -
	{
		code=event.keyCode;
		if(code==109 && vitesse>1)
		{
			vitesse--;
		}
		if(code==107 && vitesse<20)
		{
			vitesse++;
		}		
		
	}
	function deplacement() //au changement de position de la souris, cette fonction est appelée
	{
		posiX=window.event.clientX;
		posiY=window.event.clientY;
	}
	function calcul()//cette fonction détermine le coin de l'image qui est le plus pres de la souris
	{
		x[1]=posiX-posibirdX;
		y[1]=posiY-posibirdY;
		x[2]=posiX-(posibirdX+141);
		y[2]=posiY-posibirdY;
		x[3]=posiX-(posibirdX+141);
		y[3]=posiY-(posibirdY+113);
		x[4]=posiX-posibirdX;
		y[4]=posiY-(posibirdY+113);
		temp=1000000000;

		for(i=0;i<5;i++)
		{
			if(Math.sqrt(Math.pow(x[i],2)+Math.pow(y[i],2))<temp)
			{
				temp=Math.sqrt(Math.pow(x[i],2)+Math.pow(y[i],2));
				val=i;
			}
		}
		diffX=x[val];
		diffY=y[val];
		return diffX,diffY;
	}
	setTimeout("autre()",20); //rappelle la fonction toutes les 20ms pour un affichage de 50fps
	
}
</script>
</head>
<body onload="autre()" onclick="effacer()">
<p align="center"><font face="verdana" size="2">Appuyez sur + ou - pour modifier la vitesse</font></p>
<div id="calque_oiseau" style="position:absolute;height:113px;width:141px;top:100px;left:179px"><img src="images/oiseau.gif" height="113" width="141" name="oiseau"></div>
</body>
</html>

Conclusion :


Retrouvez toutes les MAJ de ce script sur http://www.iwaweb.net/

@+

Codes Sources

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.