Aller en bas

Avez-vous à l'heure actuel envie de faire un CMS grâce à ce tutoriel

12 - 80%
3 - 20%
0 - 0%
0 - 0%
 
Total des votes: 15
 
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 Chapitre 1 - Le menu principal

Sam 10 Jan 2015 - 15:25
Le menu principal

Débutons par le menu principal. Celui-ci sera constitué des bases de tout RPG :
- le déplacement du curseur pour accèder aux sous menus,
- l'affichage des personnages présent dans l'équipe avec les Niveaux, HP et MP,
- le temps de jeu,
- l'argent possédé,
- le lieu de l'équipe.


1 - Quelques remarques

Avant d'entrer dans le vif du sujet je tiens à préciser que les HP et MP des personnages auront un maximum de 200. Je n'ai pas fais jusqu'à 9999 HP et 999 MP car je n'ai pas eu le courage et le fonctionnement restera exactement le même. Je vous afficherais un maximum d'images pour bien que vous compreniez le tutoriel. L'argent sera limité à 999 euros (oui c'est un tutoriel moderne) et, pour finir, le temps de jeu sera de heure passée après 20 minutes de jeu et chaque minute passe après 20 secondes de jeu. Sachant que une seconde de jeu n'est pas une seconde réelle mais une seconde accélérée (une demie seconde réelle). Mon système d'interrupteurs, de variables et d'événement commun n'est pas classé dans un ordre précis vu qu'en faisant la démonstration je pensais à ajouter des choses après d'autres.  Ce tuto est fais à partir de RPG Maker VX Ace donc certaines façon de faire ne seront peut-être pas les meilleurs mais je veux rendre ce tutoriel possible pour tout les RPG Maker. Je zapperais aussi les événements simple du genre "Afficher un message". Et, pour finir, certaines images du tutoriel sont tout simplement les images ressources de la démonstration de fin.


2 - Le fonctionnement du menu

Nous allons faire ça dans un ordre bien précis pour que le tutoriel soit logique. Comme un jeu commence sur une carte et pas sur le menu nous commencerons par l'ajout de membre dans l'équipe. Ensuite nous ferons un événement commun [appel menu]. Cet événement fera appel à trois événement commun qui calculerons l'argent que vous avez, les coordonnées de l'équipe pour que la sortie du menu ne soit pas aléatoire mais l'endroit et le sens exact d'où vous avez ouvert le menu et aussi savoir quels sont vos niveaux, vos points de vie (HP) et vos poins de magie (MP).
Après tout cela vous serais sur le menu. Ici nous afficherons les faceset en fonction des membres de l'équipe présent et nous afficherons aussi les niveaux, les HP et les MP en visuel.
Vous pourrez aussi voir sur le menu qu'il manquera le temps de jeu et le lieu actuel. Donc nous verrons comment faire appel à eux et aussi les afficher dans le menu.
Maintenant vous aurez tout d'affiché correctement mais il restera un grosse partie à faire : le déplacement du curseur sur chaque rubrique de menu (qui seront pas activé dans cette démonstration).
Une fois tous cela fais, le tutoriel sera terminé pour ce chapitre. Je vous souhaite une bonne lecture.


3 - On commence ?

Nous allons préparer notre premier événement. Certaines partie sont cachées car ca ne concerne pas le tutoriel. Dans cette événement nous allons désactiver le l’accès au menu et activer deux interrupteurs et une variable. Voici une image de l’événement en question :

Chapitre 1 - Le menu principal 01_pre10

Voyons un peu plus en détail :
| > Modifier l'accès au menu : Désactiver
Spoiler:

| > Opération : Interrupteur [0001:Temps de jeu] Activé
Spoiler:

| > Opération : Interrupteur [0018:Appel menu OK] Activé
Spoiler:

| > Opération : Variable [0007:Lieu] = 1
Spoiler:


4 - On l'appel ce menu ?

Pas de problème. Si vous vous souvenais de ce que je veux ai dis avant, lors de l'appel de l'ouverture du menu on appel trois événements communs. Nous allons d'abord voir ces trois événements.


4a - J'ai combien sur moi ?

Nous allons voir l'événement commun qui va calculer l'argent possédé. Cet événement le calcul juste mais ne l'affiche pas directement. J'expliquerais plus tard pourquoi j'ai décidé de faire de cette façon.

Chapitre 1 - Le menu principal 02_arg10

Comme je m'arrête à 999 euros, cet événement va nous demander trois variables. Si vous faites un maximum de 999 999 il vous en faudra six, etc...

| > Opération : Variable [0004:Unité argent] = Argent possédé
| > Opération : Variable [0004:Unité argent] %= 10
Spoiler:

| > Opération : Variable [0005:Dixaine argent] = Argent possédé
| > Opération : Variable [0005:Dixaine argent] /= 10
| > Opération : Variable [0005:Dixaine argent] %= 10
Spoiler:

| > Opération : Variable [0006:Centaine argent] = Argent possédé
| > Opération : Variable [0006:Centaine argent] /= 100
Spoiler:

Voilà vous avez donc votre unitée, dixaine et centaine. Pour 123 ca donne unitée égale 3, dixaine égale 2 et centaine égale 1.


4b - J'ouvre le menu d'où ?

Chapitre 1 - Le menu principal 03_coo10

Cet évenement va permettre de connaître vos coordonnées X et Y de la carte, la carte d'où vous avez fais appel au menu et dans quelle direction vous êtes (haut, bas, gauche, droite).

| > Opération : Variable [0008:X_POS_Equipe] = Héros : Coordonée X
Spoiler:

| > Opération : Variable [0009:Y_POS_Equipe] = Héros : Coordonée Y
Spoiler:

| > Opération : Variable [0010:ID_Carte] = ID de la carte
Spoiler:

| > Opération : Variable [0011:Direction_Equipe] = Héros : Direction
Spoiler:


4c - Niveau, HP et MP

Comme la démonstration commence avec un seul personnage dans l'équipe nous allons voir que sa partie à lui.

Chapitre 1 - Le menu principal 04_niv10

| > Opération : Variable [0012:Niv_Perso_1] = [Elisa'] : Niveau
Spoiler:

| > Opération : Variable [0013:Début_HP_Perso_1] = [Elisa'] : PV
| > Opération : Variable [0013:Début_HP_Perso_1] /= 100
Spoiler:

On fera la même chose pour la fin des HP.
| > Opération : Variable [0014:Fin_HP_Perso_1] = [Elisa'] : PV
| > Opération : Variable [0014:Fin_HP_Perso_1] %= 100
Spoiler:

On fera la même chose pour les HP max, les MP et les MP max. Si on partage en deux c'est tout simplement à cause du tileset de chiffre. Je vous montre une image et je vous explique juste après.

Chapitre 1 - Le menu principal 05_chi10

Vous comprenez ? Non ? Bon j'explique. Les chiffres 1 et 2 en haut représente le début des HP, MP (je rappel que je me suis arrêté à 200 donc début HP, MP égale 2). Tout le reste de la partie de gauche de 01 à 99 représente la fin des HP, MP et aussi les niveaux. Par exemple si la variable début HP égale 1 et la variable fin HP égale 56 sa fera 156 HP au total. La partie de droite représent le temps de jeu. Vous pouvez prendre les mêmes si vous le souhaiter mais moi je les ai centrés alors que pour les personnages ils sont allignés soit à gauche (pour les fins), soit à droite (pour les débuts).


5 - On appel le menu cette fois ?

Oui cette fois on va vraiment appeler l'événement qui sera en processus parallèle avec l'interrupteur [0018:Appel menu OK] activé dans le premier événement.

Chapitre 1 - Le menu principal 06_app10

| > Modifier l'accès au menu : Désactiver
Spoiler:

| > Boucle
| >| > Attendre : 10 Frames
Spoiler:

| >| > Condition : la touche B est pressée
Spoiler:

| >| >| > Appeler Événement Commun : [Argent possédé]
| >| >| > Appeler Événement Commun : [Coordonnées équipe]
| >| >| > Appeler Événement Commun : [Niv/HP/MP Equipe]
Spoiler:

| >| >| > Opération : Interrupteur [0002:Menu racine_OK] Activé
Spoiler:

| >| >| > Opération : Interrupteur [0018:Appel menu OK] Désactivé
Spoiler:

| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
Spoiler:

| >| >| > Effacer cet événement
Spoiler:

| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Boucle
| >
Spoiler:

Voilà. Maintenant vous pouvez appeler votre menu pour y aller.


5a - Y aller ? Mais je ne me téléporte pas dessus.

C'est vrai car c'est un autre événement qui gèrera le menu. Allez je vous montre juste le début pour pouvoir le faire vous aussi. C'est un événement commun en processus automatique (mais parallèle c'est possible aussi) avec l'interrupteur [0002:Menu_Racine_OK] qui a été activé dans l'événement précédant.

Chapitre 1 - Le menu principal 07_men10

| > Transparence du héros : Transparent
| > Téléporter l'équipe : [003:Menu racine], (X:000, Y:000)
Spoiler:


5b - Mais c'est tout vide.

Vous avez normalement une carte noire. Pour cela nous allons intégrer l'un des panorama du menu car il y en aura plusieurs. Six pour être précis :
- un pour un personnage avec sauvegarde
- un pour un personnage sans sauvegarde
- un pour deux personnages avec sauvegarde
- un pour deux personnages sans sauvegarde
- un pour trois personnages avec sauvegarde
- un pour trois personnages sans sauvegarde

Il suffit d'en mettre un dans l'éditeur avec un affichage pour plus de facilité de travail. Pas comme sur cette image.

Chapitre 1 - Le menu principal 08_pan10

Mais plutôt comme ça :

Chapitre 1 - Le menu principal 09_pan10

Pour obtenir ça :

Chapitre 1 - Le menu principal 10_pan10

Plus pratique non ?


6 - On affiche ?

On a déjà calculé l'argent, les données du personnage principal et le lieu. Il va peut-être falloir les afficher maintenant.
On va commencer par le niveau du personnage

Chapitre 1 - Le menu principal 11_niv10

Chapitre 1 - Le menu principal 12_niv10

Chapitre 1 - Le menu principal 13_niv10

Rien de bien compliqué. L'affichage sera fais en fonction du calcul fais dans l'événement commun précédent. Cette événement en touche action (car pas besoin de le gérer donc on ne mets pas en parallèle ou automatique) va afficher le niveau en fonction de la variable [0012:Niv_Perso_1]. Un événement pouvant avoir 99 pages ça tombe bien car on peut avoir 99 niveaux au maximum dans RPG Maker. Je pense que les images sont suffisantes pour comprendre. Vous pouvez regarder dans la démonstration pour voir l'événement au complet. Ensuite une page sera si variable [0012:Niv_Perso_1] égale 1 on affiche en characters le chiffre 1 et ça jusqu'à 99.
Maintenant que l'on a les niveaux on va faire les HP, HP max, MP, MP max. Ce sera exactement le même système avec seulement la variable qui change. Donc je ne vais pas m'attarder dessus mais je vais quand même vous montrer des images.

Chapitre 1 - Le menu principal 14_dyb10

Chapitre 1 - Le menu principal 15_dyb10

Chapitre 1 - Le menu principal 16_fin10

Chapitre 1 - Le menu principal 17_dyb10

Chapitre 1 - Le menu principal 18_fin10

Chapitre 1 - Le menu principal 19_dyb10

Chapitre 1 - Le menu principal 20_fin10

Chapitre 1 - Le menu principal 21_fin10

Chapitre 1 - Le menu principal 22_fin10

Grâce à tout ça vous savez maintenant quel est votre niveau, quelles sont vos HP et MP.
Il nous reste donc, pour le moment, à afficher le temps de jeu et le lieu actuel.


6a - Affichage du lieu

Cet événement sera appelé sur la carte du menu dans un processus parallèle.

Chapitre 1 - Le menu principal 23_lie10

Cet événement a déjà été appelé donc maintenant on va juste afficher selon la variable [0007:Lieu1].
| > Condition : Variable [0007:Lieu] == 1
| >| > Afficher une image : 5, '02 - Tuto_CMS_Lieu1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:


6b - Affichage de l'argent

Cet événement sera appelé dans le même événement de lieu.

Chapitre 1 - Le menu principal 29_aff10

Chapitre 1 - Le menu principal 24_aff10

Condition : Variable [0004:Unité argent] == 0 [/color]
| >| > Afficher une image : 2, '07 - Tuto_CMS_Euro_Unité0', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:

| > Condition : Variable [0004:Unité argent] == 1
| >| > Afficher une image : 2, '08 - Tuto_CMS_Euro_Unité1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:
....
| > Condition : Variable [0004:Unité argent] == 6
| >| > Afficher une image : 2, '13 - Tuto_CMS_Euro_Unité6', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:

| > Condition : l'argent possédé est de 10 ou plus
| >| > Condition : Variable [0005:Dixaine argent] == 0
| >| >| > Afficher une image : 3, '17 - Tuto_CMS_Euro_Dixaine0', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
Spoiler:

| > Condition : Variable [0005:Dixaine argent] == 1
| >| > Afficher une image : 3, '18 - Tuto_CMS_Euro_Dixaine1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:
....
| > Condition : Variable [0005:Dixaine argent] == 9
| >| > Afficher une image : 3, '26 - Tuto_CMS_Euro_Dixaine9', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:

Vous ferez la même chose pour les chiffres des centaines. Je vous mets le code en spoiler et je vous demande de chercher avant pour savoir si vous avez compris.
Spoiler:


6c - Affichage du temps de jeu

C'est la même chose pour que les niveaux, HP et MP.

Chapitre 1 - Le menu principal 25_tdj10

Chapitre 1 - Le menu principal 26_tdj10

Chapitre 1 - Le menu principal 27_tdj10


6d - Mais je ne vois que des zéros

Normal on a pas encore vu comment modifier les variables qui affichent les secondes, minutes et heures. Cet événement commun sera en processus parallèle après activation de l'interrupteur [0001:Tems de jeu]. Il se jouera pendant tout le jeu ou jusqu'à ce que vous désactiver l'interrupteur [0001:Temps de jeu].
Voyons cela:

Chapitre 1 - Le menu principal 28_tem10

| > Boucle
| >| > Attendre : 30 Frames
Spoiler:

| >| > Opération : Variable [0001:Secondes] += 1
Spoiler:

| >| > Condition : Variable [0001:Secondes] == 20
| >| >| > Opération : Variable [0001:Secondes] = 0
| >| >| > Opération : Variable [0002:Minutes] += 1
| >| >| >
| >| > Fin - Condition
Spoiler:

| >| > Condition : Variable [0002:Minutes] == 20
| >| >| > Opération : Variable [0002:Minutes] = 0
| >| >| > Opération : Variable [0003:Heures] += 1
| >| >| >
| >| > Fin - Condition
Spoiler:

| >| > Condition : Variable [0001:Secondes] == 20
| >| >| > Condition : Variable [0002:Minutes] == 20
| >| >| >| > Condition : Variable [0003:Heures] == 20
| >| >| >| >| > Opération : Interrupteur [0001:Temps de jeu] Désactivé
Spoiler:

| >| > Fin - Condition
| >| >
| > Fin - Boucle
| >
Spoiler:

Nous avons donc afficher le lieu, le temps de jeu, le niveau, les HP et les MP. Que nous manque t-il ? Afficher le faceset du personnage principal et aussi de savoir qui est le deuxième membre ou le troisième membre de l'équipe. Et pour finir l'affichage les zéros des HP et MP. Bah oui, je ne sais pas si vous vous en êtes rendu compte mais j'ai dis que l'on pouvais mettre 99 pages dans un événement mais, pourtant, de 00 à 99 il y a 100 chiffres (je vous laisse compter). Donc il va falloir afficher les zéros en image. Pourquoi les zéros ? Parce que il y a moins de chance d'avoir 100, 200, 300, ... 9000 points de vie ou de magie.
Voyons déjà comment ajouter un membre dans l'équipe. La méthode utilisée ici n'est pas la plus pratique mais je veux, comme je l'ai déjà dis, que ce tutoriel soit utilisable sur RPG Maker XP, VX et VX Ace.


7 - Ajoutons un membre

Pour ajouter un membre il suffit de faire ajouter membre dans les commandes de RPG Maker me dirait vous. Mais pour un CMS il faudra faire un manipulation supplémentaire.
Regardons ça de plus près :

Chapitre 1 - Le menu principal 30_ajo10

| > Opération : Interrupteur [0018:Appel menu OK] Désactivé
Spoiler:

Je zappe la partie du message et de la proposition.

| >| > Opération : Variable [0039:Taille Equipe] = Nombre de personnage dans l'équipe
Spoiler:

| >| > Condition : Variable [0039:Taille Equipe] < 3
| >| >| > Modifier l'équipe : Ajouter [Korndor]
| >| >| >
Spoiler:

Opération : Variable [0039:Taille Equipe] = Nombre de personnage dans l'équipe
| >| >| > Condition : Variable [0039:Taille Equipe] == 2
| >| >| >| > Opération : Interrupteur [0003:Equipe à 2] Activé
| >| >| >| > Opération : Interrupteur [0012:Korndor_place2] Activé
| >| >| >| >
| >| >| > Fin - Condition
Spoiler:

Condition : Variable [0039:Taille Equipe] == 3
| >| >| >| > Opération : Interrupteur [0004:Equipe à 3] Activé
| >| >| >| > Opération : Interrupteur [0013:Korndor_place3] Activé
| >| >| >| >
| >| >| > Fin - Condition
Spoiler:

Si la variable [0039:Taille Equipe] est égale à trois lors de la première phase le membre ne viendras pas dans l'équipe. Je vous laisse regarder le code mais normalement vous savez déjà faire ce genre de condition.

| > Opération : Interrupteur [0018:Appel menu OK] Activé
Spoiler:


8 - Appel du niveau, HP, MP des deuxième et troisième membre.

Maintenant que vous pouvez ajouter jusqu'à deux membres en plus il va falloir lesquels se sont pour pouvoir calculer leur niveau, HP et MP. Je vous remontre l'image entière cette fois.

Chapitre 1 - Le menu principal 31_niv10

C'est exactement comme avec votre premier membre mais seulement si l'interrupteur qui correspond au membre et à sa place est activé. Ensuite on fais la même chose que précédemment avec le niveau, le début des HP, la fin des HP et idem pour les HP max, MP et MP max. Normalement vous devriez le faire sans aucuns problèmes surtout si vous avez tout compris jusque là.
Ensuite il faudra afficher les données calculées. Pour cela c'est comme précédemment dans la carte du menu principal.

Chapitre 1 - Le menu principal 32_per10

Chapitre 1 - Le menu principal 33_per10

Chapitre 1 - Le menu principal 34_per10

Chapitre 1 - Le menu principal 35_per10

Chapitre 1 - Le menu principal 36_per10

Vous voyez c'est comme avant. Faudra juste modifier les variables et ajouter l'interrupteur [0003:Equipe à 2]. Pour le troisième membre si il y en a un, ca donnera ça :

Chapitre 1 - Le menu principal 37_per10

Chapitre 1 - Le menu principal 38_per10

Chapitre 1 - Le menu principal 39_per10

Chapitre 1 - Le menu principal 40_per10

Chapitre 1 - Le menu principal 41_per10


9 - Dernières fonctions avant le menu.

On a bientôt géré tout l'affichage des différentes images. Il nous reste à gérer le fond du menu (panorama), vérifier la taille de l'équipe, savoir si on peut sauvegarder ou pas, afficher les facesets de l'équipe et afficher les zéros des HP et MP.
Voici une image complète cette fois.

Chapitre 1 - Le menu principal 42_aff10

C'est trop complet non ? Allez on va attaquer.
| > Appeler Événement Commun : [Affichage argent possédé]
| > Appeler Événement Commun : [Lieu]
Spoiler:

| > Opération : Variable [0039:Taille Equipe] = Nombre de personnage dans l'équipe
Spoiler:

| > Condition : Interrupteur [0005:Sauvegarde_OK?] == Activé
| >| > Condition : Variable [0039:Taille Equipe] == 1
| >| >| > Changer de panorama : '01 - Tuto_CMS_Menu racine_Perso1_Sauv_OK'
| >| >| >
| >| > Fin - Condition
Spoiler:

| >| > Condition : Variable [0039:Taille Equipe] == 2
| >| >| > Changer de panorama : '02 - Tuto_CMS_Menu racine_Perso2_Sauv_OK'
| >| >| >
| >| > Fin - Condition
| >| > Condition : Variable [0039:Taille Equipe] == 3
| >| >| > Changer de panorama : '03 - Tuto_CMS_Menu racine_Perso3_Sauv_OK'
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
Spoiler:

| > Condition : Interrupteur [0005:Sauvegarde_OK?] == Désactivé
| >| > Condition : Variable [0039:Taille Equipe] == 1
| >| >| > Changer de panorama : '04 - Tuto_CMS_Menu racine_Perso1_Sauv_KO'
| >| >| >
| >| > Fin - Condition
| >| > Condition : Variable [0039:Taille Equipe] == 2
| >| >| > Changer de panorama : '05 - Tuto_CMS_Menu racine_Perso2_Sauv_KO'
| >| >| >
| >| > Fin - Condition
| >| > Condition : Variable [0039:Taille Equipe] == 3
| >| >| > Changer de panorama : '06 - Tuto_CMS_Menu racine_Perso3_Sauv_KO'
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
Spoiler:

+ 5 pts


Dernière édition par crackerwood le Mer 14 Jan 2015 - 17:08, édité 4 fois
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 Re: Chapitre 1 - Le menu principal

Sam 10 Jan 2015 - 15:25
Maintenant faisons les faceset :
| > Afficher une image : 6, '37 - Tuto_CMS_Elisa'', H.G. (36,36), (100%,100%), 255, Normale
Spoiler:

| > Condition : Interrupteur [0012:Korndor_place2] == Activé
| >| > Afficher une image : 7, '38 - Tuto_CMS_Korndor', H.G. (36,164), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:

| > Condition : Interrupteur [0014:Coco'_place2] == Activé
| >| > Afficher une image : 7, '39 - Tuto_CMS_Coco'', H.G. (36,164), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Interrupteur [0016:Heaven_place2] == Activé
| >| > Afficher une image : 7, '40 - Tuto_CMS_Heaven', H.G. (36,164), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:

| > Condition : Interrupteur [0013:Korndor_place3] == Activé
| >| > Afficher une image : 8, '38 - Tuto_CMS_Korndor', H.G. (36,292), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Interrupteur [0015:Coco'_place3] == Activé
| >| > Afficher une image : 8, '39 - Tuto_CMS_Coco'', H.G. (36,292), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Interrupteur [0017:Heaven_place3] == Activé
| >| > Afficher une image : 8, '40 - Tuto_CMS_Heaven', H.G. (36,292), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
Spoiler:

Maintenant affichons les zéros des HP et MP. Ce sera des conditions classiques. Je pense que vous serez les faire alors je vais vous montrer le code directement.
| > Condition : Variable [0014:Fin_HP_Perso_1] == 0
| >| > Afficher une image : 9, '41 - 00_HP_Perso1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Variable [0016:Fin_MP_Perso_1] == 0
| >| > Afficher une image : 11, '43 - 00_MP_Perso1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Variable [0018:Fin_HP_Max_Perso_1] == 0
| >| > Afficher une image : 10, '42 - 00_HPMAX_Perso1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Variable [0020:Fin_MP_Max_Perso_1] == 0
| >| > Afficher une image : 12, '44 - 00_MPMAX_Perso1', H.G. (0,0), (100%,100%), 255, Normale
| >| >
| > Fin - Condition
| > Condition : Variable [0023:Fin_HP_Perso_2] == 0
| >| > Condition : Interrupteur [0003:Equipe à 2] == Activé
| >| >| > Afficher une image : 13, '45 - 00_HP_Perso2', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0025:Fin_HP_Max_Perso_2] == 0
| >| > Condition : Interrupteur [0003:Equipe à 2] == Activé
| >| >| > Afficher une image : 14, '46 - 00_HPMAX_Perso2', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0027:Fin_MP_Perso_2] == 0
| >| > Condition : Interrupteur [0003:Equipe à 2] == Activé
| >| >| > Afficher une image : 15, '47 - 00_MP_Perso2', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0029:Fin_MP_Max_Perso_2] == 0
| >| > Condition : Interrupteur [0003:Equipe à 2] == Activé
| >| >| > Afficher une image : 16, '48 - 00_MPMAX_Perso2', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0032:Fin_HP_Perso_3] == 0
| >| > Condition : Interrupteur [0004:Equipe à 3] == Activé
| >| >| > Afficher une image : 17, '49 - 00_HP_Perso3', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0034:Fin_HP_Max_Perso_3] == 0
| >| > Condition : Interrupteur [0004:Equipe à 3] == Activé
| >| >| > Afficher une image : 18, '50 - 00_HPMAX_Perso3', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0036:Fin_MP_Perso_3] == 0
| >| > Condition : Interrupteur [0004:Equipe à 3] == Activé
| >| >| > Afficher une image : 19, '51 - 00_MP_Perso3', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition
| > Condition : Variable [0038:Fin_MP_Max_Perso_3] == 0
| >| > Condition : Interrupteur [0004:Equipe à 3] == Activé
| >| >| > Afficher une image : 20, '52 - 00_MPMAX_Perso3', H.G. (0,0), (100%,100%), 255, Normale
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Condition

| > Effacer cet événement
| >
Spoiler:

On arrive à la fin de ce chapitre. On a maintenant affiché toutes les données :
- Faceset des membres de l'équipe,
- Leur niveaux, HP et MP actuel et maximum,
- L'argent possédé,
- Le lieu actuel,
- Le temps de jeu,
- Le fond du menu.

Il nous reste un gros morceau qui, lui, sera développé dans les différents chapitres. On va donc afficher un curseur qui se déplacera sur chaque sous rubrique en appuyant sur haut ou sur bas. On apprendra aussi à quitter le menu car pour le moment vous pouvez entrer mais plus en sortir.


10 - Le curseur avec tous ses déplacements.

Le menu sera programmer en processus automatique.
Voici l'image de la programmation (en trois images à cause de la taille).

Chapitre 1 - Le menu principal 43_men10
Chapitre 1 - Le menu principal 44_men10
Chapitre 1 - Le menu principal 45_men10

Grosse image n'est ce pas ? Voyons le détail.
| > Transparence du héros : Transparent
| > Téléporter l'équipe : [003:Ecran titre], (X:000, Y:000)
Spoiler:

| > Afficher une image : 1, '01 - Tuto_CMS_Curseur', H.G. (425,16), (100%,100%), 255, Normale
Spoiler:

| > Étiquette : Objet
Spoiler:

| > Boucle
| >| > Attendre : 5 Frames
Spoiler:

| >| > Condition : la touche Bas est pressée
Spoiler:

| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
| >| >| > Déplacer une image : 1, '', H.G. (425,48), (100%,100%), 255, Normale, 5 Frames, Attendre
| >| >| > Aller à l'Étiquette : Magie
| >| >| >
| >| > Fin - Condition
Spoiler:

| >| > Condition : la touche Haut est pressée
| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
| >| >| > Afficher une image : 1, '', H.G. (425,208), (100%,100%), 255, Normale, 5 Frames, Attendre
| >| >| > Aller à l'Étiquette : Quitter
| >| >| >
| >| > Fin - Condition
Spoiler:

| >| > Condition : la touche C est pressée
| >| >| > Jouer SE : 'Decision3', Volume : 80, Tempo : 100
| >| >| > Opération : Interrupteur [0006:Menu objet_OK] Activé
| >| >| >
| >| > Fin - Condition
Spoiler:

| >| > Condition : la touche B est pressée
Spoiler:

| >| >| > Jouer SE : 'Decision3', Volume : 80, Tempo : 100
| >| >| > Ton de l'écran : (R:-255,V:-255,B:-255,G:0), 20 Frames, Attendre
| >| >| > Transparence du héros : Opaque
Spoiler:

| >| >| > Opération : Interrupteur [0002:Menu racine_OK] Désactivé
| >| >| > Opération : Interrupteur [0018:Appel menu OK] Activé
Spoiler:

| >| >| > Effacer Image : 1
| >| >| > Effacer Image : 2
| >| >| > Effacer Image : 3
| >| >| > Effacer Image : 4
| >| >| > Effacer Image : 5
| >| >| > Effacer Image : 6
| >| >| > Effacer Image : 7
| >| >| > Effacer Image : 8
| >| >| > Effacer Image : 9
| >| >| > Effacer Image : 10
| >| >| > Effacer Image : 11
| >| >| > Effacer Image : 12
| >| >| > Effacer Image : 13
| >| >| > Effacer Image : 14
| >| >| > Effacer Image : 15
| >| >| > Effacer Image : 16
| >| >| > Effacer Image : 17
| >| >| > Effacer Image : 18
| >| >| > Effacer Image : 19
| >| >| > Effacer Image : 20
Spoiler:

| >| >| > Condition : Variable [0011:Direction_Equipe] == 2
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], le Bas
| >| >| >| >
| >| >| > Fin - Condition
Spoiler:

| >| >| > Condition : Variable [0011:Direction_Equipe] == 4
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], la Gauche
| >| >| >| >
| >| >| > Fin - Condition
Spoiler:

| >| >| > Condition : Variable [0011:Direction_Equipe] == 6
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], la Droite
| >| >| >| >
| >| >| > Fin - Condition
Spoiler:

| >| >| > Condition : Variable [0011:Direction_Equipe] == 8
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], le Haut
| >| >| >| >
| >| >| > Fin - Condition
Spoiler:

| >| >| > Ton de l'écran : (R:0,V:0,B:0,G:0), 20 Frames, Attendre
Spoiler:

| >| >| > Arrêter les évènements
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Boucle
Spoiler:

Tout les codes vont se ressembler maintenant. Il faudra changer le nom des étiquettes et les coordonnées. Voici du menu magie au menu statut.
| > Étiquette : Magie
| > Boucle
| >| > Attendre : 5 Frames
| >| > Condition : la touche Bas est pressée
| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
| >| >| > Afficher une image : 1, '', H.G. (425,80), (100%,100%), 255, Normale, 5 Frames, Attendre
| >| >| > Aller à l'Étiquette : Statut
| >| >| >
| >| > Fin - Condition
| >| > Condition : la touche Haut est pressée
| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
| >| >| > Afficher une image : 1, '', H.G. (425,16), (100%,100%), 255, Normale, 5 Frames, Attendre
| >| >| > Aller à l'Étiquette : Objet
| >| >| >
| >| > Fin - Condition
| >| > Condition : la touche C est pressée
| >| >| > Jouer SE : 'Decision3', Volume : 80, Tempo : 100
| >| >| > Opération : Interrupteur [0007:Menu magie_OK] Activé
| >| >| >
| >| > Fin - Condition
| >| > Condition : la touche B est pressée
| >| >| > Jouer SE : 'Decision3', Volume : 80, Tempo : 100
| >| >| > Ton de l'écran : (R:-255,V:-255,B:-255,G:0), 20 Frames, Attendre
| >| >| > Transparence du héros : Opaque
| >| >| > Opération : Interrupteur [0002:Menu racine_OK] Désactivé
| >| >| > Opération : Interrupteur [0018:Appel menu OK] Activé
| >| >| > Effacer Image : 1
| >| >| > Effacer Image : 2
| >| >| > Effacer Image : 3
| >| >| > Effacer Image : 4
| >| >| > Effacer Image : 5
| >| >| > Effacer Image : 6
| >| >| > Effacer Image : 7
| >| >| > Effacer Image : 8
| >| >| > Effacer Image : 9
| >| >| > Effacer Image : 10
| >| >| > Effacer Image : 11
| >| >| > Effacer Image : 12
| >| >| > Effacer Image : 13
| >| >| > Effacer Image : 14
| >| >| > Effacer Image : 15
| >| >| > Effacer Image : 16
| >| >| > Effacer Image : 17
| >| >| > Effacer Image : 18
| >| >| > Effacer Image : 19
| >| >| > Effacer Image : 20
| >| >| > Condition : Variable [0011:Direction_Equipe] == 2
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], le Bas
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Condition : Variable [0011:Direction_Equipe] == 4
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], la Gauche
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Condition : Variable [0011:Direction_Equipe] == 6
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], la Droite
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Condition : Variable [0011:Direction_Equipe] == 8
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], le Haut
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Ton de l'écran : (R:0,V:0,B:0,G:0), 20 Frames, Attendre
| >| >| > Arrêter les évènements
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Boucle

Si vous regardais de plus près vous voyez que c'est la même chose à par les coordonnées et les étiquettes. Je vous laisse donc regarder ça de vous même car vous le décrire serait trop répétitif. Je vous montre quand même la partie du code du menu quitter.
| > Étiquette : Quitter
| > Boucle
| >| > Attendre : 5 Frames
| >| > Condition : la touche Bas est pressée
| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
| >| >| > Afficher une image : 1, '', H.G. (425,16), (100%,100%), 255, Normale, 5 Frames, Attendre
| >| >| > Aller à l'Étiquette : Objet
| >| >| >
| >| > Fin - Condition
| >| > Condition : la touche Haut est pressée
| >| >| > Jouer SE : 'Cursor2', Volume : 80, Tempo : 100
| >| >| > Afficher une image : 1, '', H.G. (425,176), (100%,100%), 255, Normale, 5 Frames, Attendre
| >| >| > Aller à l'Étiquette : Config
| >| >| >
| >| > Fin - Condition
| >| > Condition : la touche C est pressée
| >| >| > Jouer SE : 'Decision3', Volume : 80, Tempo : 100
| >| >| >
| >| > Fin - Condition
| >| > Condition : la touche B est pressée
| >| >| > Jouer SE : 'Decision3', Volume : 80, Tempo : 100
| >| >| > Ton de l'écran : (R:-255,V:-255,B:-255,G:0), 20 Frames, Attendre
| >| >| > Transparence du héros : Opaque
| >| >| > Opération : Interrupteur [0002:Menu racine_OK] Désactivé
| >| >| > Opération : Interrupteur [0018:Appel menu OK] Activé
| >| >| > Effacer Image : 1
| >| >| > Effacer Image : 2
| >| >| > Effacer Image : 3
| >| >| > Effacer Image : 4
| >| >| > Effacer Image : 5
| >| >| > Effacer Image : 6
| >| >| > Effacer Image : 7
| >| >| > Effacer Image : 8
| >| >| > Effacer Image : 9
| >| >| > Effacer Image : 10
| >| >| > Effacer Image : 11
| >| >| > Effacer Image : 12
| >| >| > Effacer Image : 13
| >| >| > Effacer Image : 14
| >| >| > Effacer Image : 15
| >| >| > Effacer Image : 16
| >| >| > Effacer Image : 17
| >| >| > Effacer Image : 18
| >| >| > Effacer Image : 19
| >| >| > Effacer Image : 20
| >| >| > Condition : Variable [0011:Direction_Equipe] == 2
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], le Bas
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Condition : Variable [0011:Direction_Equipe] == 4
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], la Gauche
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Condition : Variable [0011:Direction_Equipe] == 6
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], la Droite
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Condition : Variable [0011:Direction_Equipe] == 8
| >| >| >| > Téléporter l'équipe : ID:[0010], X:[0008], Y:[0009], le Haut
| >| >| >| >
| >| >| > Fin - Condition
| >| >| > Ton de l'écran : (R:0,V:0,B:0,G:0), 20 Frames, Attendre
| >| >| > Arrêter les évènements
| >| >| >
| >| > Fin - Condition
| >| >
| > Fin - Boucle
| >


11 - Conclusion

Voilà ce tutoriel pour le menu principal est terminé. A partir de maintenant chaque sous rubrique sera un tutoriel à lui tout seul. Donc le prochain chapitre sera sur le menu objet.
Si vous avez des problèmes il ne faudra pas hésiter à me demander. Si vous avez également des méthodes beaucoups plus simple n'hésitez pas à les donner.
J'espère que vous aurez tout compris et que ce tutoriel vous plaira. Je vous retrouve donc la semaine prochaine pour le prochain chapitre :

- Chapitre 2 : Le menu objet

Et, bien sur, le lien de la démonstration : https://mega.nz/#F!yNYRlTqJ!oSAS5JBS_Y3t9GmyXYfxYw


Dernière édition par crackerwood le Sam 2 Juin 2018 - 10:24, édité 1 fois
PlayNoox
PlayNoox
Membre

Nombre de messages : 361
Age : 23
Localisation : Essonne
Distinction : aucune
Date d'inscription : 31/03/2015
https://www.youtube.com/channel/UCmW4gZ5LBxPysL1sLSFjhgg

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 13:32
Super tuto, bien expliqué Wink.
Par contre je n'ai pas le tile où il y a les chiffres, tu te rappelle où tu l'as trouver ? (je suis sur VX Ace, c'est peut-être pour ça que je ne l'ai pas je sais pas).
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 Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 17:15
J'ai fais le tuto avec ace. Le tile est normalement dans la démo. Je ne l'ai pas trouvé mais fais moi même.
PlayNoox
PlayNoox
Membre

Nombre de messages : 361
Age : 23
Localisation : Essonne
Distinction : aucune
Date d'inscription : 31/03/2015
https://www.youtube.com/channel/UCmW4gZ5LBxPysL1sLSFjhgg

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 17:19
Euh... quelle démo ? ^^
LordManzarek
LordManzarek
Membre

Nombre de messages : 69
Age : 26
Localisation : Paris
Distinction : aucune
Date d'inscription : 22/04/2013

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 17:48
Joli tutoriel ! Il y a des scripts qui permettent de faire des menus mais comme tout script ils ne sont pas entièrement personnalisables et ont leurs limites. Limites qui peuvent être franchies grâce à un menu en événements comme celui-ci !
En plus c'est bien rédigé et expliqué, que demande le peuple.

PlayNoox a écrit:Euh... quelle démo ? ^^

Il faut lire jusqu'au bout :3

crackerwood a écrit:Et, bien sur, le lien de la démonstration : mega.co.nz #!OFBjkBBI!43fTPlwKj6VYqnF-XBTd04FYRqF_lZbCoz6Z2sBXa4Q
PlayNoox
PlayNoox
Membre

Nombre de messages : 361
Age : 23
Localisation : Essonne
Distinction : aucune
Date d'inscription : 31/03/2015
https://www.youtube.com/channel/UCmW4gZ5LBxPysL1sLSFjhgg

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 18:32
J'ai lu jusqu'au bout, mais je crois que je l'ai zappé ^^
Merci pour le lien Smile
Gold Baron
Gold Baron
Membre

Nombre de messages : 89
Distinction : aucune
Date d'inscription : 14/04/2015

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 18:43
Merci a PlayNoox d'avoir fait un up sur le sujet car... Waouh, je pensais qu'on ne pouvais faire un menu de jeu que grâce aux scripts ( suis nul en script :p ) franchement j'ai envie de tenter en voyant ça.

Donc que demande le peuple The Geek Fun ? L'essayer et réussir Wink

J'ai gardé le meilleur pour la fin, chapeau et respect total a CrakerWood si jamais j'y arrive je te mettrai en crédit sur un de mes jeux pour le menu, si je n'y arrive pas j’achèterai une poupée gourou pour me venger :p
Et très sérieusement, ça ce voit que tu as bien bossé dessus, simple clair, précis ( enfin je dis simple j'ai pas encore testé :p ) donc merci beaucoup.
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 Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 18:49
Merci de vos remerciement. Ca me fais plaisir de lire ca.
Gold Baron
Gold Baron
Membre

Nombre de messages : 89
Distinction : aucune
Date d'inscription : 14/04/2015

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Jeu 30 Avr 2015 - 19:19
J''ai pas tout lu, comme c'est long, mais je me fait la totalité des tutos ce soir et je m'entraine comme un porc ^^
Quelques petites questions comme ça, elles seront en deux catégories, celles ou je pense ou je pense ou j'ai la réponse et je ferais une question réponse, non pas parce que je suis scyzo mais pour t'éviter de dire oui si jamais j'ai la bonne réponse, histoire de faire gagner du temps. Si j'ai faux ou pas compris merci de me corriger.
Les autres sont de vrais questions ^^

Si toutes les réponses sont dans les tutos, je ne prendrai pas mal si on me snob ;D

Questions Scyzos :

Si j'ai bien suivi, concernant le design on peut tout placer ou on veux et avec la police qu'on veux ?
On peut aussi créer des menus supplémentaires comme quête, mêtier et les relier a des scripts ou d'autres events de notre conception aussi complexe que des scripts ? Il n'y a pas de limite a ce qu'on peux faire du coup ?

Pas scyzo :

Le jeu est mis en pause quand on va sur ces menus personalisés ?
Si il est mis en pause, si on ne veux pas qu'il soit mise en pause avec l'ouverture d'un sous menu par exemple  il faut le déclencher en événement parallèle ?
Sur la démo il y'a un temps pour que le menu s'affiche contrairement à l'habituel, est ce normal ? C'est un event qui le ralenti volontairement ou c'est un temps de ''chargement de lecture'' obligatoire ?
Concernant l'intérieur et la gestion de du menu objet par exemple, on est obligé de le refaire ? Car à part l'esthétisme il est pas si mal et c'est super long à faire j'ai l'impression.

Edit : Bon ça commence bien... je ne trouve pas comment on désactive l'acces au menu -_- ( Je l'ai trouvé :p )
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 Re: Chapitre 1 - Le menu principal

Lun 4 Mai 2015 - 21:43
Salut. Oui tu fais ton menu comme tu veux. C'est toi qui créer des panorama avec un logiciel. Pareil pour la police. Les sous menu en event sont entièrement libre par contre en script faut voir si le script peut être appelé. si c'est le cas aucune problème.



Le jeu est mis en "pause" seulement en automatique. Si tu fais le menu en parallèle le jeu continu. Sachant que ce n'est pas une vrai pause en sois. Si dans la démo c'est long c'est que j'ai pris l'appui touche x. Cette touche peut servir pour les dialogues choix etc... J'ai donc ajouté un interrupteur en fin d'événement quelconque d'où La petite attente. Tu peux choisir une autre touche bien sur.



Pour le menu objet l'événement est long a causé du tri. C'est la meilleur solution que j'ai trouvé mais je suis ouvert à toute proposition pour faire mieux. Je n'ai pas la "solution ultime".



Si tu as d'autres question posent les et désolé de l'attente je déménage en même temps.
Contenu sponsorisé

RPG Maker VX Ace Re: Chapitre 1 - Le menu principal

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum