begin process at 2010 03 22 02:17:19
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Trucs Amusants

 > VAUTOUR

VAUTOUR


 Information sur la source

Note :
5,33 / 10 - par 3 personnes
5,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Trucs Amusants Niveau :Initié Date de création :27/08/2002 Date de mise à jour :23/12/2002 12:09:31 Vu / téléchargé :8 680 / 275

Auteur : iwaweb

Ecrire un message privé
Site perso
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Un oiseau très collant que votre souris attire beaucoup.

Source

  • <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>
 <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/

@+

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip DUREE - CALCULE LA DUREE PRÉCISE QUI S'EST ÉCOULÉE ENTRE 2 D...
Source avec Zip RACINE CARRÉE
Source avec Zip CALCULATRICE V1.0
Source avec Zip Source avec une capture MORPION
Source avec Zip BARRES DÉROULANTES

 Sources de la même categorie

Source avec Zip Source avec une capture RÉSOUDRE UNE ÉQUATION EN 6 ÉTAPES par Zestyr
Source avec Zip Source avec une capture POST-IT POUR LE WEB par jululu
Source avec Zip Source avec une capture ENIGMES, CASSE-TÊTES À RÉSOUDRE par Bul3
ROTATION DES ÉLÉMENTS D'UN PAGE WEB par yoyo17560
Source avec Zip Source avec une capture GENERATEUR DE PSEUDO MSN (ART-ASCII) par amrounix

Commentaires et avis

Commentaire de NicolleauElise le 30/10/2002 17:29:08

Pas de zip, pas de capture, que dalle !
tu te fous un peu de notre gueule ! c un truc de codes sources ici, pas un écran publicitaire pour ton site !

Commentaire de iwaweb le 23/11/2002 12:10:21

C'est un truc à essayer en ligne et puis avant de m'insulter faudrait peut être essayer car les sources sont disponibles sur le site.

Commentaire de iwaweb le 23/11/2002 12:10:28

C'est un truc à essayer en ligne et puis avant de m'insulter faudrait peut être essayer car les sources sont disponibles sur le site.

Commentaire de pleejulien le 11/05/2003 06:26:23

Un conseil, tu devrais faire attention à la manière d'écrire tes scripts... ils sont très peu lisibles (je pense notamment à un script qui fait afficher des menus dans ton site).
Si programmer ainsi t'aide toi à visualiser ton code rapidement sur l'instant, à long terme, tu dois avoir un peu de mal à t'y retrouver, non ?
A mon avis, en cherchant à allèger la visualisation de ton code (éviter de former un gros pavé), tu en as trop fait... ce qui fait que ton code ressemble à un gros pavé mais dans lequel tu as sauté une ligne sur deux...
Je pense que ceci est plus facile à travailler sur des scripts déjà faits (car en plus, ca te montre qu'il est difficile de les reprendre et recomprendre)... tu voies d'avantage qu'elle disposition est meilleure.

Pour t'aider, sache qu'il est préférable de marquer l'accolade ouvrante à la fin d'une ligne et pas au début de la suivante (c'es la premiere lettre de la fonction qui te donne le niveau d'ascendance...)
ex :
function maFonction { //commentaires très court... 30/40 cars max
// éventuel commentaire plus long, plus détaillé
monAction1;
monAction2;
};

Ensuite, il faut savoir que des accolades ne servent qu'a réunir des instructions ! donc ca ne sert à rien d'en abuser par exemple :
if (maCondition) monInstrucion
else if (maCondition2) {
  monInstruction2_1;
  monInstruction2_2;
}
else alert('aucune condition remplie');

Tu voies déjà le gain de place et de lisibilité que ca engendre si tu imagines ce code de la manière dont tu l'aurais codé...

Pour le troisième conseil, il s'agit de rajouter des espaces... ca parait bizarre, mais quand tu y réfléchis, la typographie des langues (écrites/parlées etc, pas machine) les intègre uniquement pour facilité la lisibilité et la compréhension...

un exemple en copier/coller d'un bout de ton site :
if(eval("document.all."+xr[xs]+".style.pixelLeft")&lt;0){action();}

tu te dis "tout tient sur une ligne, c'est cool", mais est-ce que tu est capable là, de dépouiller rapidement ce code ?
voila mon interprétation :
if (eval("document.all." + xr[xs] + ".style.pixelLeft") &lt; 0)
  action();
c'est sur 2 lignes, ok, mais on sait rapidement que la premiere ligne est la condition, la deuxième l'instrucion... et dans la premiere partie, tu considère plus facilement la chaîne transmise à eval().
lorsqu'il y a de nombreuses parenthèses, il m'arrive aussi de rajouter un espace avant la première, pour distinguer le bloc et comprendre où ca commence et où ca fini... (on passe moins de temps à faire F5 ;) )

Voila, sinon, dans le script, il y a de l'idée, il faut que tu l'aboutisses un peu plus (je pense qu'il est plus utile pout toi de te demander ce qui pourrait-être amélioré plutôt que je te donne une liste de suggestions... dans un premier temps)

Commentaire de zut69 le 28/01/2005 21:10:12

Bon, moi je voudrais savoir comment on fait pour bloquer la vitesse du vautour. tu peux m aider ???

Commentaire de iwaweb le 03/02/2005 13:00:04

il suffit de modifier la variable vitesse pour modifier la vitesse par défaut. Et si tu ne veux plus que la vitesse puisse être changée avec le clavier met un commentaire sur document.onkeydown.

Commentaire de glork le 09/09/2005 03:58:29

C cool... TROP DE PUB DANS TON ZIP !

Commentaire de glork le 09/09/2005 04:00:16

Ah, pis ca marche pas avec Firefox ! hmmm... 7/10

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales