Positionner mes briques

Cool, même si le "toute ces condition sont vrai ne sert a rien :smiley:
Pour répondre à Opal si la balle a un angle de 30° faut quel reparte avec un angle de -30 (si je me trompe pas)
pour la barre peut etre la divisé en 3, si la balle tappe sur le coté gauche rajouter de l’angle genre -20° (ca a l’air bête comme ca :smiley: )

Edit:En faite te prend pas a tête avec les angle (c galère pour gérer les coté des briques, dans un rebond normal tu inverses soit x, soit y : rebond contre un mur horizontal tu transformes x en -x, et rebond contre une surface verticale tu transformes y en -y.

Salut les gars!

On continue à bosser donc tranquillement sur ce tout petit projet (très formateur) et ce soir le défis est de taille puisque je souhaite pouvoir mettre en place mes briques! ( bah oui si pas de briques…Baaah…Pas de casse-briques )

Encore une fois je bute sur un problème et comme nos précédentes conversations m’ont permises de régler mon précédent soucis je reviens à nouveau vers vous :wink:

Voila ce que je propose pour afficher une première ligne de briques jaune sur mon écran de jeu :

Je définis ensuite que si la condition suivante est vraie :

Confiant je lance mon test et ma joie fut malheureusement de courte durée puisque de nouvelles briques sont bels et bien créer mais dans ma logique je ne devrais pas avoir plus de 5 briques sur ma scène or ici avec un minimum de 8 briques. :ugeek:

What the hell is that?

edit : Je pense comprendre la situation en fait actuellement si je ne me trompe pas ma variable position n’atteint jamais la valeur 5 ce qui signifie que la condition est toujours vrai d’où la création continue de briques. Une boucle tant que me semble donc la solution ultime à ce problème n’est-ce pas?

Après m’y être essayé avec la solution suivante :

Tant que :

répéter les actions suivantes:

malheureusement pas plus de réussite puisque la boucle ne semble pas se terminer et firefox plante! :nerd: F****

Utilise plutôt la fonction “répéter” puis tu rentre 5 et à chaque tour tu incrémente à variable :slight_smile:

tu utilises une variable d’objet alors qu’une variable de scene serai appropriée.

@ Victor : Qu’entends tu exactement par variable de scène? Quelle est la différence? Un exemple concret d’utilisation? :wink:

@ Loustak : Merci encore de ta participation tout d’abord, je ne suis pas sur d’avoir eu l’occasion encore de rencontrer cette fonction ‘Répéter’ ou se situe-t-elle dans GD? Parles-tu de la fonction Répéter une seul fois si les conditions (X) sont vérifiées?

Autre question relative à la boucle While ( Tant que ) pourquoi dans mon exemple précédent Firefox plante? Concrètement qu’est ce qu’il manque pour que ma boucle soit complète? Merci à vous!

La variable objet est propre a celui ci exemple tu peut avoir une variable “identifiant” pour chaque brique et mettre a 1 pour la premiere 2 pour la 2eme ect…
La variable de la scène concerne la scène (je ne voix pas comment être plus clair
la variable global est global a tout le jeu, même si y a plusieur scène

La fonction “répéter” se trouve dans autre, glisse ta sourie sur un évenement tu va voir un bouton “autre” apparaitre au bas a gauche de celui ci

Je pense que firefox plante car tes objets sont créer à l’infinie, y doit y avoir un souci.

Je vois…Merci Remix! Je vais me remettre au boulot et voir ce que je peux faire avec ça!

Pour ce qui est de la boucle while je me doutais bien que la boucle se répétait sans cesse maintenant je voulais davantage savoir, ce qui concrètement ne fonctionne pas.

La boucle répéter et dans le ruban en haut de l’écran dans l’onglet événement clique sur l’objet “Ajouter” puis sur répéter :wink:
Dans le même onglet tu trouveras peut être d’autre chose qui pourront t’aider :slight_smile:
Sinon firefox plante dans les boucles infini (comme beaucoup de logiciel hein :laughing: )

Il y a un autre élément que je dois valider avec vous. Lorsque j’écris :

Créer un nouvelle objet brique_Jaune à X : brique_Jaune.X()+48 Y 250 cela signifie-t-il effectivement que je demande à la machine de prendre en compte la dernière position de brique_jaune, d’ajouter 48px et de créer un nouvel objet brique_Jaune 48px plus loin donc ( centre à centre ) ?

Je me pose cette question car en effectuant mes tests je me rends compte que plusieurs briques viennent s’empiler les unes sur les autres comme ici :

Et j’en viens à me demander si cela ne provient pas justement d’une erreur du à mon .X()+48

Edit : Le +48 ne rajoute pas 48px a la dernière position mais correspond belle est bien a une position sur l'axe des abscisse :geek: ;) voilà qui est embêtant, comment demander a GD de prendre en considération la dernière position connu de brique jaune a savoir X106;Y250 et de créer un nouvelle objet brique jaune a 48px plus loin centre à centre?

Tu créer une variable positionX à l’aquelle tu ajouter tes pixels à chaque fois :wink:
Donc en gros tu créer tes objets à la position (ta variable) en X

Je ne veux manquer de respect à personne mais tes explications ne sont pas vraiment claires Loustak…Je ne suis pas un utilisateur chevronné ( du moins pas encore ) de GameDevelop et encore moins un initié de la programmation. Il n’y aurait pas moyen d’être plus claire parce que la pour le coup ça m’aide vraiment pas :frowning:

Un petit aperçu de ou j’en suis actuellement. N’hésitez pas je suis pleinement ouvert à la critique, je veux aller au bout de ce projet et faire mes armes tranquillement sur GD et pouvoir passer par la suite à la vitesse supérieur.

:slight_smile:

Après plusieurs essaies infructueux, je décide de mettre les briques de côté un moment pour me concentrer sur un autre élément : la balle
Alors ce soir :

ma balle débute la scène a la même position que la barre
Quand j’appuie sur espace la balle se dirige dans un angle de 315degrés
si la balle entre en collision avec une brique, la brique est détruite

Maintenant je ne comprends absolument pas comment gérer les angles de la balle pour qu’elle revienne de façon réaliste au bon endroit. Je commence à désespérer. Gros coup au moral ce soir, je ne veux pas échouer de nouveau surtout que le projet me semble tout à fait accessible :frowning:

si vous voulez jeter un oeil…

Je t’avais donné la réponse sur la page d’avant, enfin bon, je pense que la methode la plus simple est celle-ci: dans un rebond normal tu inverses soit x, soit y : rebond contre un mur horizontal tu transformes x en -x, et rebond contre une surface verticale tu transformes y en -y.