Course de voiture avec plusieurs niveaux, gestion des dégats, chrono

Description

- Bienvenue pour la première édition du grand prix "Rhinoféroce" !
- Tout a fait Jacques, nous tenons tout d'abord à noter que son nom vient d'une association de Street Hockey de Tours ( http://rhinoferoce.free.fr ), et que l'utilisation du nom est protégée, mais celle du code & des images est libre.
- Alors après le chargement et la page d'intro, comme vous pouvez le voir sur votre écran, chaque pilote peut choisir les perfommances de sa voiture avant la course selon les critères "vitesse", "accélération", "solidité", "maniabilité" et ces choix son ensuite stockés de façon effective dans des variables globales dont le code se trouve sur le bouton "c'est parti" à l'image 4.
- Bien sûr Jacques. Précisons que les images 5,9,10,11,12 sont les 5 tableaux de cette course et que tout le code se trouve sur le clip "tuture" de l'image 8 (code ci-dessous)
- Notons aussi qu'un peu de code se trouve sur chaque occurence de "Dalle", (placées à chaque fin de piste) pour changer de tableau, et que dans le calque "action" de chaque image il y a deux lignes de code pour jouer les sons d'ambiance et mettre la voiture à sa place initiale.

-Merci d'avoir suivi notre grand prix "Rhinoféroce" et à bientôt !

Source / Exemple :


onClipEvent (enterFrame) {
// action en fonction des touches
	if (Key.isDown(Key.LEFT) && !Key.isDown(Key.RIGHT)) {
		if (speed>0) {_rotation -= rot;}
		else {_rotation += rot;}
	}
	if (Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT)) {
		if (speed>0) {_rotation += rot;}
		else {_rotation -= rot;}
	}
	if (Key.isDown(Key.UP) && !Key.isDown(Key.DOWN)) {
		if (speed<max) {_global.speed+=acc;}
	}
	if (Key.isDown(Key.DOWN) && !Key.isDown(Key.UP)) {
		if (speed>min) {_global.speed-=acc;}
	}
// ralentissement constant de la voiture
	if (speed>0) {_global.speed -=ralenti;}
	if (speed<0) {_global.speed +=ralenti;}
// déplacement de la voiture
	_x += Math.cos(_rotation*Math.PI/180)*speed;
	_y += Math.sin(_rotation*Math.PI/180)*speed;
// déplacement de l'ombre
	_root.ombre._x = _root.voiture._x-1;
	_root.ombre._y = _root.voiture._y+2;
	_root.ombre._rotation = _rotation;
// gestion des colisions
	if (_root.mur.hitTest(getBounds(_root).xMax, _y, true)) {
		_global.speed /= ral;
		_x -= dec;
		deg += pas;	}
	if (_root.mur.hitTest(getBounds(_root).xMin, _y, true)) {
		_global.speed /= ral;
		_x += dec;
		deg += pas; }
	if (_root.mur.hitTest(_x, getBounds(_root).yMax, true)) {
		_global.speed /= ral;
		_y -= dec;
		deg += pas; }
	if (_root.mur.hitTest(_x, getBounds(_root).yMin, true)) {
		_global.speed /= ral;
		_y += dec;
		deg += pas; }
//Mise à jour de l'affichage chrono, dégats et vitesse
	_root.temps = Math.round((getTimer()-debut)/10)/100;
	_root.vitesse = Math.round(speed*15)+" km/h";
	_root.degcpt = Math.round(deg)+" %";
//Vérification que la voiture n'est pas cassée
	if (deg>100) {stopAllSounds();
			_root.gotoAndStop("perdu");}
}

Conclusion :


Le zip ne contient que le fichier .swf mais vous trouverez le .fla à
http://www.chez.com/pikwik/vroum.fla
PS : Je vais essayer de faire un mode multijoueurs. Si vous trouvez des bugs merci de me les signaler.

Codes Sources

A voir également

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.