IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH MX2004] Diamond Mine problème suivant, faire tomber les boules


Sujet :

Flash

  1. #1
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut [FLASH MX2004] Diamond Mine problème suivant, faire tomber les boules
    Bonjour vous qui suivez l'avancement de mon petit projet.

    Je pense que je suis coincé là au réél dernier gros problème pour achever le fonctionnement.

    Voilà donc mes boules s'éliminent bien entre elle.

    Or quand il y a un espace dans le plateau il faut bien sûr que les boules supérieures tombent à la nouvelle place.

    Donc voilà j'ai réussi à récupérer le nom de toutes les instances qui doivent descendre d'un cran.

    Ce que je peux faire :

    Pour chaque instance faire
    instance._y += 40
    Fin pour

    Or j'ai peur que cette solution soit sacadée (c'est à dire les boules vont tomber l'une après l'autre).

    Comment faire pour que plusieurs clips se déplacent en même temps (en AS)?

    Merci de votre réponse qui me permettra d'achever ce petit jeu (bien sûr je vais pas refaire Diamond Mine, je vais y ajouter ma sauce).

    Vous serez les premiers prévenus de la fin de mon projet (bien que d'autres mini-jeux sont à prévoir)

    Bon allez je répète ma question comme je me suis égaré :

    Comment faire pour que plusieurs clips se déplacent en même temps (en AS)? Ou qu'il y ait simulation de déplacement en même temps au pire.
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  2. #2
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    bonjour,

    soit une boucle for pour tous tes obejts en simultané, ou bien tu applique le code de dpélacement à chaque objet qui devient donc individuel.

    Dans les deux cas tu ne verra rien, par contre un psa de 40 elles vont vite tomber tes boules.

    Bien à toi

  3. #3
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Pas de souci pour ça j'ai une fonction qui permet de temporiser les déplacements qui marchent dans tous les cas (fait maison et secret défense )

    soit une boucle for pour tous tes obejts en simultané,
    Dans une fonction c'est pas vraiment possible de faire une boucle pour des objets en simultané

    ou bien tu applique le code de dpélacement à chaque objet qui devient donc individuel.
    Je comprends pas trop mais c'est la solution que j'ai proposé je crois => on verrait les objets tomber les uns après les autres.

    Merci en tout cas de ta réponse même si c'était pas super clair (en algo ça aurait été mieux)

    Je vais résumer mon problème :

    J'ai une fonction avec en paramètre le nom des instances qui doivent se déplacer.
    Je dois faire en sorte que toutes ces instances se déplacent en même temps et non les unes après les autres.

    Comment faire?
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  4. #4
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    bonjour,

    si tu as une temporisation, alors utilise la , et place y une boucle et ça marchera.

    birn à toi.

  5. #5
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Je crois que tu ne saisis pas le problème , une boucle celà s'effectue en série.
    Et je voudrais que mes boules tombent en parallèle.
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  6. #6
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Bon j'ai résolu le problème (en partie) car vu le nombre de boules l'illusion que les boules tombent en même temps (malgré le for) est faite.

    Cependant j'ai quelques problèmes concernant la temporisation pour faire tomber la boule.

    Voilà mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    [...tout plein d'actions]
    Boule.yDepart = Boule.y
    pour chaque boule qui doit tomber faire
      Tant que Boule.y < Boule.yDepart + 40 faire
          Boule.y = Boule.y + 2
      Fin Tant que
      [...tout plein d'actions]
    Fin Pour
    [...Encore plein d'actions]
    Or les boules tombent d'un coup car le Tant que est trop rapide

    J'ai essayé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Tant que Boule.y < Boule.yDepart + 40 faire
        Boule.y = Boule.y + 2
        myTempo = setInterval(tempo,1000)
    Fin Tant que
     
    Fonction tempo =
        clearInterval(myTempo)
    Fin Fonction
    Même résultats les boules tombent instantanément.

    Avez-vous une solution?

    [Edit] J'ai également essayé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    this.onEnterFrame = function() {
    				eval("boule"+idBouleTombe)._y += 2;
    				if (eval("boule"+idBouleTombe)._y >= yDepart+40){
    					this.onEnterFrame = null;
    				}
    			}
    Mais celà ne fonctionne pas non plus.
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  7. #7
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    Bonjour,


    Citation Envoyé par sourivore
    Je crois que tu ne saisis pas le problème , une boucle celà s'effectue en série.
    Et je voudrais que mes boules tombent en parallèle.

    coté prog oui, coté graph NON !

    Si je t'écoutais je devrais refaire tous mes jeux alors.

    Bien à toi.

  8. #8
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Ce que tu veux dire c'est que calà simule bien. Il suffisait d'expliquer clairement.

    Par contre celà ne fait pas avancer le schmilblick.
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  9. #9
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    re,

    pièce jointe.

    je pense que c'est clair.


    Bien à toi
    Fichiers attachés Fichiers attachés

  10. #10
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    "Unexpected file format"
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  11. #11
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    bonjour,

    voici la version en FMX2004,

    La prog n'a rien à voir avec la gestion d'affichage de la carte video.

    Passe le fla à 1fr par seconde et tu verra que ça marche très, tes objets , quels qu'ils soient, changent simultanément leur positions respectives, ce qui tu désires avec les deux variantes de base, gestion globale des objets, ou bien objet indépendants.

    Bien à toi
    Fichiers attachés Fichiers attachés

  12. #12
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Merci bien

    En fait c'est ce que j'ai fait si tu lis plus haut mais je ne sais pas pourquoi ce que j'ai fait ne fonctionne pas.

    Aurais-tu une idée très cher?
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  13. #13
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    En fait si dans ma boucle je fait un Boule.gotoAndPlay ou un this.onEnterframe, celà s'exécutera tout à la fin et je ne sais pas pourquoi.

    Une idée?
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  14. #14
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    bonjour,

    Je veux bien te donner une idée mais ... :
    Quel est ton problème clairement ?

    Parce que là on navigue en plein délire :
    - tu poses une question.
    - on te donne la réponse et le code basique.
    et tu continue encore à te poser la même question.

    Moi je veux bien jouer à ce jeu là mais on va jamais aller loin, hormis dans la profondeur du thread.

    Flash n'a rien à voir avec du PHP de l'ASP ou du JAVAS ou du JAVASCROPT.

    Bien à toi.

  15. #15
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Bon donc (loin des personnes qui me prennent pour un débutant en Flash alors que ça fait 20 ans que je programme) nous disions:

    Voilà j'ai simplifié mon problème pour le cerner dans le fla suivant.

    testTombe.fla

    J'aimerais que les actions s'effectuent après le onEnterFrame.
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  16. #16
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    stop();
    yDepart = bouleTest._y;
    this.onEnterFrame = function() {
    	bouleTest._y += 2;
    	trace("Dans le onEnterFrame // on le sait déjà");
    	if (bouleTest._y>=yDepart+40) {
    		//this.onEnterFrame = null;
    		delete this.onEnterFrame
    		trace("Et la j'effectue ce que je veux après le onEnterFrame");
    	}
    };
    et pour exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    function determine_chemin(mouseX, mouseY) {
     
     
    //... plein de tsoin tsoin avant
    _root.map.mc_perso.onEnterFrame = function() {
    		for (n=0; n<_root.profondeurs.length; n++) {
    			if (_root.profondeurs[n].y>this._y) {
    				this.swapDepths((n)*10+2);
    				break;
    			}
    		}
    		if (this.chemin.length == 0) {
    			delete this.onEnterFrame;
    			//trace("je susi arrivé");
    			if (this.faire == "monter") {
    				this.faire = "monte";
    				// doit positionner le perso au boin endroit
    				this._x = this.gox;
    				this._y = this.goy;
    				this.gotoAndStop(3);
    				this.n = 0;
    				this.onEnterFrame = function() {
    					this._y--;
    					this.n++;
    					if (this.n == 50) {
    						trace("je bosse");
    						this.gotoAndStop(2);
    						delete this.onEnterFrame;
    						this.faire = "repare";
    						_root.reparer_maison(this.n);
    					}
    				};
    			} else {
    				this.gotoAndStop(1);
    			}
    		} else {
    			if (this.chemin[0][0] == 0) {
    				// deplacement sur ase Y
    				this.pas++;
    				this.pas++;
    				if (this.chemin[0][1]>0) {
    					this._y++;
    					this._y++;
    				} else {
    					this._y--;
    					this._y--;
    				}
    			} else {
    				// deplacement sur axe X
    				this.pas++;
    				this.pas++;
    				if (this.chemin[0][0]>0) {
    					this._x++;
    					this._x++;
    				} else {
    					this._x--;
    					this._x--;
    				}
    			}
    			if (this.pas == 10) {
    				//trace("ça change");
    				this.chemin.splice(0, 1);
    				this.pas = 0;
    				// on applique au personnage son orientation.
    				if (this.chemin[0][0] == 0) {
    					//haut ou bas
    					if (this.chemin[0][1] == 1) {
    						//haut
    						this.gotoAndStop(6);
    					} else {
    						//bas
    						this.gotoAndStop(7);
    					}
    Les enterFrame peuvent être imbriqués les uns dans les autres.
    Et pas besoin d'avoir 20 ans de prog pour le faire, seulement appréhender Flash d'une autre manière en ce cas précis.

    Bien à toi.

  17. #17
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Ok merci bien.
    En fait je venais de trouver la solution

    Maintenant le problème que j'ai c'est dans l'explosion de mes boules. En effet je n'arrive pas à faire un gotoAndPlay dans un clip que j'ai créé par un attachMovie.

    Comme le démontre ce fichier :

    testExplose.fla

    Ca doit être tout con l'explication mais je ne la vois pas. Et vous?
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

  18. #18
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    bonjour,

    cela est logique, quand tu passes un ordre via le onPress, l'ordre vient du bouton et non pas de la scène où il est placé. Donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Boule.onPress = function(){
    this.play();
    // en références relatives
    // ou bien
    _root.Boule.play();
    // en absolue sur le root.
    }
    Bien à toi.

  19. #19
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    J'aimerais que ça marche sans le OnPress.
    J'ai vu sur un forum qu'il y avait un problème entre le attachMovie et gotoAndPlay car le clip n'est pas totallement chargé.

    Problème que j'ai contourné avec un setInterval de quelques millisecondes.

    Donc c'est bon pour le moment.

    Merci pour ton aide.
    Toi aussi, crée ton armée de soldat de plomb :
    http://souris-bleues.minitroopers.fr/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/09/2006, 12h49
  2. Réponses: 8
    Dernier message: 17/08/2006, 15h02
  3. [FLASH MX2004] Rectangle suivant souris...
    Par mohican13 dans le forum Flash
    Réponses: 3
    Dernier message: 25/02/2005, 16h58
  4. [FLASH MX2004] Hierarchisation des actions
    Par bolo dans le forum Flash
    Réponses: 9
    Dernier message: 06/11/2003, 16h02
  5. [FLASH MX2004] Personnaliser les scrollbars
    Par stephane eyskens dans le forum Flash
    Réponses: 10
    Dernier message: 09/10/2003, 12h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo