-20%
Le deal à ne pas rater :
-20% Récupérateur à eau mural 300 litres (Anthracite)
79 € 99 €
Voir le deal

Aller en bas
crackerwood
crackerwood
Membre

Nombre de messages : 364
Age : 39
Localisation : Derrière son pc y parait
Distinction : aucune
Date d'inscription : 03/08/2008

RPG Maker VX Ace Montre/temps de jeu

Dim 16 Déc 2012 - 14:04
TUTORIAL MONTRE/TEMPS DE JEU


1 – But :
Ce tutorial va avoir pour but de vous montrer comment faire un système de temps dans votre jeu et de pouvoir voir ce temps en appuyant sur un touche et en ayant l’objet nécessaire.
Pour cela nous aurons besoin de :
- Un objet quelconque (montre dans le tuto et la démo)
- Une connaissance des boucles
- Deux interrupteurs (un pour lancer le calcul du temps et l’autre pour le voir)
- Trois variables (pour les secondes, minutes, heures)
- Autant d’images que de temps (pour la démo on aura que 20 secondes, minutes, heures)
- Deux évènements communs

2 – Préparons l’objet + interrupteur de lancement :
Je pense que tout le monde est capable de faire ça. Dans un soupçon de générosité je vous montre une image.
Montre/temps de jeu 1170328461

L’interrupteur de lancement peut s’effectuer soit en automatique des le début du jeu ou quand on le veut. Il faut juste penser à l’activer pour lancer le calcul secondes, minutes, heures.

3- Le coffre :
Montre/temps de jeu 1170328495

Explication : C’est un coffre classique. On va juste ajouter l’interrupteur [0002 :Montre_visuel_OK] = activé dans l’évènement.

4 – Préparons le premier évènement commun :
Le premier évènement commun (Montre_initialisation ici) va permettre de lancer le temps. C’est-à-dire qu’il va calculer une secondes plus une secondes … puis arrivé à 60 secondes (20 dans la démo je le répète) la seconde reviendra à 00 et la minutes à 1.
C’est tout simplement une horloge classique.
Pour ce la voici une image qui montre le code ainsi qu’une explication :
Montre/temps de jeu 1170328526

Une active une boucle pour que l’évènement travail toujours.
On met un [attendre 60 frames] (une seconde réelle).
Toute les 60 frames on ajoutera un à la variable [0001 :Secondes].
Si la variable seconde est égal ou supérieur à 10 on la remet à zéro puis la variable [0002 :Minutes] devient 1.
C’est identique pour les heures.

5 – Préparons le dernier évènement
L’évènement commun deux : [Montre_visuel] dans la démo sera un peu plus long et compliqué. En effet il y a une boucle d’affichage d’image et deux pour arrêter l’évènement « proprement ».
Comme c’est un évènement en processus parallèle il lui faut un interrupteur de démarrage. C’est tout simplement l’interrupteur [0002 :Montre_visuel].
Je vais montrer une image du code complet puis je décortiquerais en réécrivant le code en toutes lettres :
Montre/temps de jeu 1170328599

Explications détaillées :
@>Condition : Interrupteur [0002 :Montre_visuel_OK] == Activé (je pense que la tout va bien)
    @>Condition : La touche Z est pressée (je pense que la tout va bien aussi)
         @>Boucle
    @>Attendre 1 frame
    @>Condition : La touche Z est pressée
@>
     :
@>Sortir de la boucle
@>
: fin de condition

C’est une petite astuce de FoxFiesta sur youtube. Cette boucle dans la condition permet de détecter l’appui touche. En gros tant que ne relâche pas la touche le reste de l’évènement ne joue pas. Penser à toujours mettre attendre 1 frame minimum pour éviter les lags.
@>Boucle
    @>Attendre 1 frame
    @>Jouer un effet sonore (BGS) : ‘Clock’, 100, 100
    @>Afficher une image : n°1, ‘point’, origine : haut-gauche (0,0), etc…
    @>Condition : Variable [0001 : Secondes] == 0
@> Afficher une image : n°2, ’00 – sec_00’, origine : haut-gauche (0,0), etc…
Ici on va tout simplement afficher les images pour les secondes, minutes, heures.
Image 01 pour les points de séparations,
Image 02 pour les secondes,
Image 03 pour les minutes,
Image 04 pour les heures.
Cette boucle ne contient que ça. Condition + variable secondes, minutes, heures + égal à « x » + afficher image correspondante.


    @>Condition : La touche Z est pressée
         @>Boucle
    @>Attendre 1 frame
    @>Condition : La touche Z est pressée
@>
     :
@>Arrêt en fondu du BGS en 1 secondes
@>Effacer image n°1
@>Effacer image n°2
@>Effacer image n°3
@>Effacer image n°4
@>Arrêter les évènements
@>Sortir de la boucle
: fin de condition
C’est le même système qu’au départ. Si on ne relâche pas la touche Z la montre ne s’arrête pas. Si on relâche la touche on arrête le son de l’horloge, on efface les images et on arrête les évènements. Le sortir de la boucle permet de recommençais la manœuvre autant de fois qu’on appuiera sur Z.

6 – Fin :
Pour finir voici le lien de la démo (vous devez avoir RMVX Ace sur votre pc) :
https://mega.nz/#F!PQISFTgA!sYMtv_IsRjVb6OaIKky-SQ
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum