Contrôle d'un clip a l'aide des touches de direction

Soyez le premier à donner votre avis sur cette source.

Vue 5 334 fois - Téléchargée 550 fois

Description

source sans prétention, le coté graphique n'est pas developper seul l'action script l'est.J'essaie dans cette source de simuler du mieux possible le contrôle d'un bateau ou d'une voiture.

Source / Exemple :


//accélération du bateau
var A:Number = 0;
//vitesse maximum du bateau
var vMax:Number = 5;
//manoeuvrabilité du bateau
var Mano:Number = 0.6;
//fonction de gestion de la vitesse pour le bateau
bateau.setVitesse = function() {
	_y -= (Math.cos(Math.PI/180*this._rotation))*A;
	_x += (Math.sin(Math.PI/180*this._rotation))*A;
};
// evenement appliqué au clip bateau
bateau.onEnterFrame = function() {
	//initialise l'accélération du bateau qui est dans ce cas linéaire et termine son accélération quand celui atteint la vitesse maxi
	if (Key.isDown(Key.UP) && A<=vMax) {
		A += 0.3;
	}
	//permet d'appliquer la fonction vitesse au bateau quand la touche UP est enfoncé
	if (Key.isDown(Key.UP)) {
		this.setVitesse();
	}
	//initialise la décélération du bateau qui est linéaire
	if (!Key.isDown(Key.UP) && A>0) {
		A -= 0.1;
		this.setVitesse();
		if (A<0.1) {
			// evite au bateau de reculer
			A = 0;
		}
	}
	if (Key.isDown(Key.RIGHT)) {
		// rotation fonction de la manoeuvrabilité et de la vitesse
		this._rotation += Mano*A;
	}
	if (Key.isDown(Key.LEFT)) {
		// rotation fonction de la manoeuvrabilité et de la vitesse
		this._rotation -= Mano*A;
	}
};

// Autre action script avec les écouteurs

//accélération du bateau
var A:Number = 0;
//manoeuvrabilité du bateau
var Mano:Number = 0.10;
//vitesse maximum
var vMax:Number = 5;
//fonction de gestion de la vitesse pour le bateau
this.onEnterFrame = bateau_mc.setVitesse=function () {
	_y -= (Math.cos(Math.PI/180*bateau_mc._rotation))*A;
	_x += (Math.sin(Math.PI/180*bateau_mc._rotation))*A;
};
ecoute = new Object();
ecoute.onKeyDown = function() {
	if (Key.isDown(Key.UP) && A<vMax) {
		A += 0.05;
		this.setVitesse();
	}
	if (Key.isDown(Key.DOWN) && A>0) {
		A -= 0.05;
		if (A<0.05) {
			A = 0;
		}
	}
	if (Key.isDown(Key.LEFT)) {
		bateau_mc._rotation -= A*Mano;
	}
	if (Key.isDown(Key.RIGHT)) {
		bateau_mc._rotation += A*Mano;
	}
};
Key.addListener(ecoute);
setInterval (ecoute.onKeyDown,10);

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
293
Date d'inscription
vendredi 26 septembre 2003
Statut
Membre
Dernière intervention
25 septembre 2008

J'ai pas ouvert ton code fla, j'ai juste un peu regarder le code de tes commentaires...
Ptet que je suis tombé à côté de la plaque, j'ai pas l'intention d'aller voir la source, aussi si j'ai été dur je m'en excuse..
Voilà...
Messages postés
11
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
7 novembre 2004

individis-bis j'ai bien regarder l'exemple de la coccinelle et je vois pas le rapport avec mon script.
Messages postés
11
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
7 novembre 2004

Version d'essai.
Messages postés
293
Date d'inscription
vendredi 26 septembre 2003
Statut
Membre
Dernière intervention
25 septembre 2008

Regarde les exemples avec la coccinelle...
Dans les exemples fourni avec flash.. evidement faut que la version de flash soit complête et heuu.. achetée..?
Messages postés
11
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
7 novembre 2004

je n'ai sais pas je l'ai pas vu (d'ailleur cela m'aurait bien fait gagné du temps) ,j'ai posté cela car j'ai beau eu cherché ici aucune source ne fournit ce type de mouvement et encore moins sous le lecteur 7.

Mais comme je l'ai dit c'est une source sans prétention dont le seul but est d'aider des gens comme moi qui debutent :)
Afficher les 10 commentaires

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.