begin process at 2012 05 26 18:03:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Collistion des boules dans une sphère


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Collistion des boules dans une sphère

lundi 8 novembre 2010 à 14:40:05 | Collistion des boules dans une sphère

lalach

Bonjour,

je reviens à vous pour m'aider dans la construction d'un scripte que j'ai déjà entamer sous cs4 en as2, je suis en train de faire une sphère dedans, il y aura des boules qui tournent avec des collisions entre elles.

Mon souci est la collision entre les boules à intérieure de la sphère !!!!!


Code ActionScript :
//déclaration des variables  elles servirons pour la direction du mc_boule aprés colision

var coefX:Number = 1;
var coefY:Number =-1;

//créer un onEnterFrame pour écouter la direction de l'objet
this.mc_boule.onEnterFrame = function() {
	deplacemc_boule();
};

//créer la fonction qui déplacera mc_boule
function deplacemc_boule() {
	mc_boule._x += coefX;
	mc_boule._y += coefY;
}
// utilisation de hitTest pout connaitre le moment ou mc_boule est en contact
//avec le clip "bord, le tout est placé dans un onEnterFrame ce qui permet d'utiliser

this.bord.onEnterFrame = function() {
	// tester si il y a colision sur le bas ou a droite du clip "bord
	if (this.hitTest(mc_boule._x+25, mc_boule._y+40, true) == false) {
		coefX = -chiffreAleatoire();
		coefY = -chiffreAleatoire();
	}
	// tester si il y a colision sur le bas ou a gauche du clip "bord
	if (this.hitTest(mc_boule._x-0, mc_boule._y+60, true) == false) {
		coefX = chiffreAleatoire();
		coefY = -chiffreAleatoire();
	}
	// tester si il y a colision sur le haut ou a droite du clip "bord
	if (this.hitTest(mc_boule._x+25, mc_boule._y-60, true) == false) {
		coefX = -chiffreAleatoire();
		coefY = chiffreAleatoire();
	}
	// tester si il y a colision sur le haut ou a gauche du clip "bord
	if (this.hitTest(mc_boule._x-25, mc_boule._y-60, true) == false) {
		coefX = chiffreAleatoire();
		coefY = chiffreAleatoire();
	}
};
	
	//Enfin, nous créer une fonction qui a pour but de créer un chiffre aléatoire

function chiffreAleatoire() {
	var chiffre:Number=(Math.floor(Math.random(123456789)*30));
	if (chiffre >0) {
		chiffre = 1;
	}
	// récupération du resultat
	return chiffre;
}




merci pour votre aide
mercredi 10 novembre 2010 à 16:01:57 | Re : Collistion des boules dans une sphère

dj_ouf

Salut,

A mon humble avis, utiliser la fonction hitTest pour les collisions avec des sphères est puéril.

La tu n'as pas trop le choix, pour avoir des collisions précises, il faut calculer, et même gérer les collisions entre les boules elles-même.

J'ai déjà des tutos sur ça, tu pourras trouver facilement sur le net.
mercredi 10 novembre 2010 à 23:15:08 | Re : Collistion des boules dans une sphère

lalach

Bonjour,

Merci d'avoir pris soin de me répondre, je sais que c'est un peu difficile, les calcules ce n'est pas mon point fort lol mais bon je ferai des efforts.

Sinon j'ai quand même un petit résultat, des boules qui se cognent dans la sphère certes ce n'est pas tellement précis mais c'est déjà ca.

Si tu as des tutos à me proposer, volontiers.

Merci
vendredi 12 novembre 2010 à 12:11:02 | Re : Collistion des boules dans une sphère

dj_ouf

Re

en cherchant vite fait sur le net :

http://www.actionscript.org/resources/articles/146/1/Circle-Collisions/Page1.html


Ah j'ai retrouvé l'excellent tuto sur les collisions, peut-être un poil trop complexe... mais y'a toujours les sources.
http://www.flashxpress.net/ressources-flash/la-detection-de-collision/


Cette discussion est classée dans : mc, boule, coefy, chiffrealeatoire, coefx


Répondre à ce message

Sujets en rapport avec ce message

Delete de movie clip [ par Burnside ] Bonjour,Je cherche comment à partir d'un bouton créer un duplicate movie clip et a partir d'un autre bouton enlever ce movie clip.ex: si je crée 10 mo deplacement [ par parn ] Bonjour ,voila j ai une boule avec un trajectoire sur un repere et en fonction d un autre repere sur lequel se trouve un fleche je doit deplacer la Diaporama-Gallerie + une question pour m'en sortir [ par geilgestorm ] Bonjour,Le travail intial n'est pas de moi mais de John06 qui l'a posté sur le forom. Je lui ai écrit, mais il n'est toujours pas revenu sur le forom prob MC non fini [ par bartoun ] slt tous,je tente de faire entrer en collision 2 clips (ca je gere) et si collision il y a, on voit une explosion à cet endroit de la collision. G deu MC qui en suit un autre [ par cacoubalboa ] Bijour, comment faire pour qu'un MC en suive un autre. Ou alors, pour qu'un MC soit orienté vers un autre ( vu que c le même principe ) ? Merci'ms comment faire pour renverser un mc par l'AS [ par yugo ] salutje cherche a faire le meme effet que renverser verticalement mets dynamiquement(par l'action script).si vous preferer par une rotatation mais une Réinitialiser rapidement des MC [ par tiburce ] Bonjour, J'ai un problème avec des MC.Imaginez une barre contenant 10 boutons. Chacun lance un MC... B1 lance MC1, B2 lance MC2 etc...Le problème est Controle de son sur MC [ par Jeho ] Kikoo tousVoila , jai un SWF que je charge par LOADMOVIENUM au levle 500.Ce SWF c un panel de musique MP3, pourn permettre a lutilisateur de choisir Pb scrollpane [ par phiphou ] Slt a tous....Bon j'vais essayer d'etre clair :J'ai une anim, assez lourde (un site en fait), et certaines frames sur lesquelles on s'arrette contienn


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,546 sec (4)

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