Élément pause

Ne me dites pas qu’on en a déjà parlé, cette suggestion est différente des autres déjà postées !

Voici donc une suggestion, la fonction mettre le jeu en pause. Comme cité dans le message que je viens de trouver par recherche, on place le code voulu en sous-condition dont la condition générale est du genre “si VariableDuJeuenPause == 0”

Mais ce genre de système ne fonctionne pas si on a des objets qui changent de direction lorsqu’ils en heurtent d’autres ou dont une force ne s’applique sur eux qu’au début du jeu. Ces objets ne repartiront pas vu qu’il ne touchent plus d’objets de redirection lors de la reprise du jeu. De plus, les chronomètres ne se mettent pas d’eux-même en pause. Comme lorsque l’on clique sur mettre le jeu en pause lors de l’aperçu, mais en affichant un calque pas en pause par-dessus.

Voici mon idée: Ajouter la fonction pause.

Idée 1(la première que j’ai eue): La fonction pause s’exécuterait sur un calque. Lorsque cette fonction est activée, tous les éléments du calque restent figés avec leurs propriétés, y compris les chronomètres.
Idée 2(après réfection sur les difficultées pour mettre au point la première): Tout le jeu est mis en pause. Seul les sous-conditions de “quand le jeu est en pause” s’exécuteraient. (la meilleure à mon avis)

D’après moi, il faut les ajouts suivants (solution 1)

Condition “Le calque X est en pause”
Action “Mettre le calque X en pause”
Action “Enlever la pause du claque X”

(solution 2)

Condition “Le jeu est en pause”
Action “Mettre le jeu en pause”
Action “Enlever la pause du jeu”

Un petit exemple, fait à l’aide d’un logiciel de retouche d’image, est ci-dessous en fichier joint. (selon la première idée, mais qui fonctionnerait aussi avec la deuxième. Remplacez “le calque X” par “le jeu”)


Cet exemple contient:

cinq objets:

  • oiseau
  • go_right
  • go_left
  • reprendre
  • quitter

deux calques:

  • Jeu, il contient les objets oiseau, go_right et go_left
  • Menu, il contient les objets reprendre et quitter

go_right et go_left sont deux obstacles sur lesquels l’oiseau va rebondir
reprendre et quitter sont deux boutons

lorsque l’on clique sur ESC, l’oiseau s’arrête et le menu apparaît. Si l’on clique sur quitter, le jeu s’arrête, si l’on clique sur reprendre, l’oiseau continuera son vol.

J’y reflechis mais la technique de mettre tous les evenements du jeu en sous evenement d’un evenement unique avec une condition et de mettre l’echelle du temps a 0 fonctionne parfaitement dans toutes les situations.
Elle est decrite sur le forum et/ou le wiki.

Ah c’est donc ça l’échelle du temps ! :smiley: Je ne l’ai jamais utilisée…

Mais si on met l’échelle du temps à 0, on ne peut pas afficher de menu par-dessus ! (car c’est là le vrai problème)

LeZoulou

Si, mais tu pourra pas vraiment utiliser les chronomètre (vu qu’ils seront en pause).

OK. Donc avec échelle du temps = 0 on ne pourrait pas mettre d’animation dans les menus… (si je comprends bien)
Je te laisse méditer sur ma proposition et je regarde ce que je peux faire pour mon jeu. Car je suis évidemment en train de développer un jeu qui a besoin d’un menu pause…

LeZoulou

La solution est pourtant très simple, si on réfléchit un peu…
Personnellement, je l’ai trouvée. Mais je vais quand même vous laisser chercher un peu… :wink:

Euh, je pense pas que poster de tels messages soit dans l’esprit du forum : Si on a une meilleure solution, autant la partager avec tout le monde plutôt que de sous entendre qu’on a une mais qu’on la dit pas : Ça n’apporte pas grand chose à la discussion. :wink: