Ce tutorial nécessitera l'utilisation de plusieurs variables:
- une pour les secondes
- une pour les minutes
- une pour les heures
Le raisonnement de ce tutorial est simple: en permanence, la variables des secondes se verra ajouter 1 point dès qu'une seconde sera écoulée. Arrivée à 60, elle repart à zéro et rajoute 1 aux minutes, puis lorsque les minutes sont à 60, elles reviennent à zéro et rajoutent 1 aux heures.
Pour cela, ouvrez la base de données (F8) et allez dans les évènements fréquents.
Créez un évènement en Processus Parallèle.
Sachez que je ne vais pas vous mâcher le travail en vous indiquant tout ligne par ligne en recopiant le code texto, c'est débile. Je vais vous passer le raisonnement en expliquant concrètement.
Dans ce processus parallèle donc, mettez un évènement "Attendre" et choisissez la valeur 10 (10 dixièmes de seconde=1 seconde): mettez à la suite de cette ligne la fonction "Changer Variable" et mettez "+1" en choisissant bien la variable qui désigne les secondes.
Nous avons là configuré un système qui compte les secondes, mais sans s'arrêter! Nous allons fixer la barre à 60, puisqu'il s'agît des secondes:
ajoutez une fourchette de conditions avec pour condition que la variable des Secondes est égale à 60.
Mettez dans cette fourchette la fonction Changer Variable une fois de plus pour réinitialiser la variable des secondes à zéro, et ajouter 1 à celle des minutes.
Nous avons presque terminé! Ouvrez une nouvelle fourchette de condition avec cette fois-ci pour condition la valeur 60 aux minutes: on remettra les minutes à zéro, et on ajoutera 1 aux heures!
Le jeu est désormais capable de gérer un système de temps en heures, en minutes et en secondes.
Vous pouvez afficher le temps comme vous le souhaitez, par l'intermédiaire d'un message de texte (provoqué, par exemple, par un objet), en lui faisant afficher le texte suivant: "Vous avez joué \V[0001]h \V[0002]min et \V[0003] secondes" en admettant bien sûr que votre variable 0001 est celle des heures, la 0002 des minutes et la 0003 des secondes: remplacez ces nombres par les numéros de vos variables. Utiliser le texte \V[xxxx] permet d'afficher en texte la valeur de la variable du numéro précisé dans les crochets.
Ce système marche aussi très bien en images, ou avec des évènements, dans un menu par exemple, mais un affichage de ce type requiert de bonnes connaissances et a fait l'objet de nombreux tutoriaux.
ELARGISSEMENTS
Il y a toujours des élargissements à des techniques aussi basiques mais aussi vastes: ce système, par exemple, gère à merveille les jours de la semaine (à condition d'insérer une variable pour les jours et de la remettre à zéro à partir d'un certain nombre de jours): vous pourrez ainsi par exemple personnaliser les jours en leur mettant certains habitants, en fermant des magasins, etc... (rappelez-vous Seiken Densetsu 3!)
Il est également tout à fait possible de configurer ce système à l'envers pour en faire un compte à rebours: vous donnez une valeur de base (par exemple 5 aux minutes, 0 aux secondes et 0 aux heures), et établissez la démarche inverse: à chaque seconde, -1 aux secondes. Quand les secondes arrivent à 0, on retire 1 aux minutes, et on remonte les secondes à 60. Si les minutes et les secondes arrivent à 0, eh bien... Le compte à rebours est terminé, vous mettez ce que vous voulez!
Enfin, un système d'alternance jour/nuit fonctionne exactement de la même manière, simplement avec des durées différentes (mais vous allez avoir besoin de boutons, des tutoriaux sont disponibles pour ce genre de procédé). Sachez toutefois qu'on est là encore dans la même démarche.
Vous voyez ici que ce genre de compte interne du temps est universel et pourra affecter tous les moments de vos jeux où le temps sera concerné.
____________