Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/05/2006, 12h31   #1
Membre confirmé
 
Avatar de sourivore
 
Développeur Java
Inscription : juin 2005
Messages : 443
Détails du profil
Informations personnelles :
Localisation : France, Somme (Picardie)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : juin 2005
Messages : 443
Points : 278
Points : 278
Par défaut [FLASH MX2004] Gestion de collisions pour plateformes

Bonjour à tous.
Voici mon problème :

J'ai un movieClip qui est en fait un bonhomme et un deuxième clip qui représente une scène avec différentes plateformes ce qui donne quelquechose du style :

<= MC1

--------------*}
***********}
**-----*****}
***********}MC2
****-----***}
***********}
-------------- }

Mon movieclip MC1 est placé sur une des plateformes de MC2.

Dans mon onEnterFrame je détecte la collision entre MC1 et MC2 pour déterminer si je doit lancer l'évenèment "le bonhomme tombe" (_y -= 1)

Toutefois si mon bonhomme se situe sur n'importe quel plateforme il est considéré comme en collision étant donné que la zone prise en compte dans le hitTest est de forme rectangulaire et englobe le clip MC2 dans son entier.

Avez-vous une solution à me proposer autre que celle de découper MC2 par plateforme, ce qui serait une opération longue et fastidieuse ((10 plateformes horizontales+10 plateformes verticales) * 100 niveaux = 2000 movieclip + un test de collision qui serait du coup hyper long.

Merci de votre participation.
__________________
Toi aussi, crée ton armée de soldat de plomb :
http://souris-bleues.minitroopers.fr/
sourivore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 13h05   #2
Rédacteur
 
Avatar de freegreg
 
Inscription : août 2002
Messages : 4 395
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Gard (Languedoc Roussillon)

Informations forums :
Inscription : août 2002
Messages : 4 395
Points : 5 227
Points : 5 227
Salut,

j'ai tout compris (pas grand chose à vrai dire )
Tu peux avoir plusieurs niveaux en même temps ?
Si tu fais un découpage, faudra biensur pas faire un test avec toutes tes zones mais seulement celles qui sont limitrophes.
Imaigine que ton personnage est dans une "case E3", tu testeras les collisons qu'avec les cases D2, D3, D4, E2, E4, F2, F3, F4 par exemple. Bon c'est un exemple ultra simpliste, dans la pratique ce sera forcement car ton personnage ne fera pas un case entière ...
De plus, si tu as peur d'avoir trop de clip, il suffit de charger ceux qui st à proxilité et décharger ceux qui st un peu plus loin


Ps : Peux-tu indiquer la version de Flash que tu utilises dans ton titre ? Merci
__________________
Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
Vous voulez partager des ressources concernant les technologies ci-dessus : contactez-moi
freegreg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 13h08   #3
Membre confirmé
 
Avatar de sourivore
 
Développeur Java
Inscription : juin 2005
Messages : 443
Détails du profil
Informations personnelles :
Localisation : France, Somme (Picardie)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : juin 2005
Messages : 443
Points : 278
Points : 278
Zut j'ai pas précisé en parlant de niveau je parlait de niveaux de jeu car c'est un jeu.

Merci pour ta réponse mais il n'empêche que ça m'oblige à créer pas mal de clips (une par plateforme erf)
__________________
Toi aussi, crée ton armée de soldat de plomb :
http://souris-bleues.minitroopers.fr/
sourivore est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h11.


 
 
 
 
Partenaires

Hébergement Web