AccueilAccueil  PortailPortail  FAQFAQ  RechercherRechercher  MembresMembres  GroupesGroupes  S'enregistrerS'enregistrer  ConnexionConnexion  




Partagez | 
 

 [Atelier 1 - Le Menu] Essai d'Olowynd

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Voyageur Lv.10
Voyageur Lv.10
avatar


Masculin Age : 21
Inscrit le : 30/12/2012
Messages : 390

MessageSujet: [Atelier 1 - Le Menu] Essai d'Olowynd   Dim 10 Mar 2013 - 14:34

Voila mon essai de menu, suite a l'atelier de Zangther, et je précise que j'ai reçu la précieuse aide d'Ulis pour pouvoir utiliser les modulos, en fait ce n'est pas si compliqué Smile. Je n'ai juste pas encore mis le curseur en une seule image géré avec des déplacements, mais je vous laisse observer par vous même ce que ça donne.

Résultat final :


Evenement Commun n°1 : Lancer le menu Proccessus parralèle : Interrupteur : Menu Débloqué [ C'est lui qui permet d'afficher mon menu à la place de celui de base grâce à un appuie touche, il faut d'abord désactiver le menu de base, évidemment ]
Code :
|> Attendre : 1 Frames
|> Si la touche B est préssée
    |> Jouer SE : 'Saint7', Volume : 80, Tempo : 100
    |> Opération : Interrupteur [0006:Menu Lancé] Activé
    |>
|   Fin - Condition
|>


Evenement Commun n°2 : Menu Automatique : Interrupteur : Menu Lancé [ C'est donc le coeur du menu, qui affiche les images et gère les déplacements avec le modulo et des variables. ]
Code :
|> Attendre : 1 Frames
|> Afficher Image : 1, 'Menu-Fond', H.G. (0,0), (100%,100%), 255, Normale
|> Afficher Image : 3, 'Menu-Sections', H.G. (0,0), (100%,100%), 255, Normale
|> Afficher Image : 2, 'Menu-Curseur1', H.G. (0,0), (100%,100%), 255, Normale
|> Opération : Interrupteur [0007:Animation du Curseur] Activé
|> Opération : Variable [0005:Position Case Y] = 0
|> Opération : Variable [0006:Position Case X] = 0
|> Attendre : 20 Frames
|> Boucle
    |> Attendre : 1 Frames
    |> Si la touche Bas est préssée
        |> Jouer SE : 'Cursor', Volume : 100, Tempo : 100
        |> Opération : Variable [0005:Position Case Y] += 1
        |> Opération : Variable [0005:Position Case Y] %= 2
        |> Appeler Événement Commun : Menu-Curseur de Selection
        |>
    |   Fin - Condition
    |> Si la touche Droite est préssée
        |> Jouer SE : 'Cursor', Volume : 100, Tempo : 100
        |> Opération : Variable [0006:Position Case X] += 1
        |> Opération : Variable [0006:Position Case X] %= 2
        |> Appeler Événement Commun : Menu-Curseur de Selection
        |>
    |   Fin - Condition
    |> Si la touche Gauche est préssée
        |> Jouer SE : 'Cursor', Volume : 100, Tempo : 100
        |> Opération : Variable [0006:Position Case X] -= 1
        |> Opération : Variable [0006:Position Case X] %= 2
        |> Appeler Événement Commun : Menu-Curseur de Selection
        |>
    |   Fin - Condition
    |> Si la touche Haut est préssée
        |> Jouer SE : 'Cursor', Volume : 100, Tempo : 100
        |> Opération : Variable [0005:Position Case Y] -= 1
        |> Opération : Variable [0005:Position Case Y] %= 2
        |> Appeler Événement Commun : Menu-Curseur de Selection
        |>
    |   Fin - Condition
    |> Si la touche X est préssée
        |> Opération : Interrupteur [0006:Menu Lancé] Activé
        |> Jouer SE : 'Wind8', Volume : 80, Tempo : 150
        |> Déplacer Image : 1, '', H.G. (0,0), (100%,100%), 0, Normale, 60 Frames
        |> Déplacer Image : 2, '', H.G. (0,0), (100%,100%), 0, Normale, 60 Frames
        |> Déplacer Image : 3, '', H.G. (0,0), (100%,100%), 0, Normale, 60 Frames
        |> Attendre : 60 Frames
        |> Effacer Image : 1
        |> Effacer Image : 2
        |> Effacer Image : 3
        |> Sortir de la boucle
        |>
    |   Fin - Condition
    |> Si la touche C est préssée
        |> Jouer SE : 'Decision2', Volume : 80, Tempo : 100
        |> Appeler Événement Commun : Menu-Choix
        |>
    |   Fin - Condition
    |>
|   Fin - Boucle
|> Opération : Interrupteur [0006:Menu Lancé] Activé
|>


Evenement Commun n°3 : Animation de Curseur : Processus Parallèle : Interrupteur : Animation du Curseur [ Permet de changer l'opacité de l'image du curseur pour faire un petit effet sympatoche ]
Code :
|> Attendre : 3 Frames
|> Déplacer Image : 2, '', H.G. (0,0), (100%,100%), 100, Normale, 90 Frames, Attendre
|> Déplacer Image : 2, '', H.G. (0,0), (100%,100%), 255, Normale, 90 Frames, Attendre
|>


Evenement Commun n°4 : Curseur de Selection [ Appeller cet événement commun à chaque déplacement dans le menu, il gérera la position de l'image du curseur ]
Code :
|> Si Variable [0005:Position Case Y] == 0
    |> Si Variable [0006:Position Case X] == 0
        |> Effacer Image : 2
        |> Afficher Image : 2, 'Menu-Curseur1', H.G. (0,0), (100%,100%), 255, Normale
        |> Attendre : 10 Frames
        |>
    |   Fin - Condition
    |> Si Variable [0006:Position Case X] == 1
        |> Effacer Image : 2
        |> Afficher Image : 2, 'Menu-Curseur3', H.G. (0,0), (100%,100%), 255, Normale
        |> Attendre : 10 Frames
        |>
    |   Fin - Condition
    |>
|   Fin - Condition
|> Si Variable [0005:Position Case Y] == 1
    |> Si Variable [0006:Position Case X] == 0
        |> Effacer Image : 2
        |> Afficher Image : 2, 'Menu-Curseur2', H.G. (0,0), (100%,100%), 255, Normale
        |> Attendre : 10 Frames
        |>
    |   Fin - Condition
    |> Si Variable [0006:Position Case X] == 1
        |> Effacer Image : 2
        |> Afficher Image : 2, 'Menu-Curseur4', H.G. (0,0), (100%,100%), 255, Normale
        |> Attendre : 10 Frames
        |>
    |   Fin - Condition
    |>
|   Fin - Condition
|>


Evenement Commun n°5: Choix [ Appeler cet événement commun pour effectuer une action en fonction de la position, j'aurais pu l'intégrer dans "Menu" mais j'ai préféré le séparé pour plus de clarté. ]
Code :
|> Si Variable [0005:Position Case Y] == 0
    |> Si Variable [0006:Position Case X] == 0
        |> Appeler script : $scene = Scene_Item.new
        |>
    |   Fin - Condition
    |> Si Variable [0006:Position Case X] == 1
        |> Message : Ø, Ø, Normal, Milieu
        |                  : Afficher statistiques ici.
        |>
    |   Fin - Condition
    |>
|   Fin - Condition
|> Si Variable [0005:Position Case Y] == 1
    |> Si Variable [0006:Position Case X] == 0
        |> Ouvrir le menu de sauvegarde
        |>
    |   Fin - Condition
    |> Si Variable [0006:Position Case X] == 1
        |> Appeler script : $scene = Scene_End.new
        |>
    |   Fin - Condition
    |>
|   Fin - Condition
|>


Voila maintenant les ressources graphiques nécessaires : [ Faites avec mes mimines sur paint.net et quelques icônes de l'iconset ]
Nommez les bien avec le nom qui est au dessus de l'image !
Spoiler:
 

J'aimerais améliorer dans ce menu :
-Supprimer le fait que lorsqu'on va dans l'inventaire et que l'on appuie sur "Echap" on revienne au menu basique et qu'on puisse accéder aux autres sous-menus du jeu :/
-Gérer l'affichage du curseur avec une seule image, donc avec la position en pixels.

Et je crois que c'est les seuls points qui me dérangent, des suggestions, idées d'améliorations ?

Edit: La transparence de l'image "Menu-Fond" a bugée dans l'hébergement... désolé :/ et j'espère que j'ai été clair aussi, n'hésitez pas à demander des précisions. Sinon pour l'image ce n'est pas grave vous pouvez évidemment mettre n'importe quoi d'autre à la place.

_________________
Mes projets :
*Unacren -> Topic * Etat: Version 1.2 Dispo * Notes: Anciennement "Le Dernier Voyage".
*LAO : L'Aventure Ordicienne -> Topic   *             Etat: Jeu complet !  *  Notes: Possibilité d'une future version "Extended" plus longue si vous aimez bien.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Maître des Duels
Maître des Duels
avatar


Masculin Age : 25
Inscrit le : 29/07/2009
Messages : 7838

MessageSujet: Re: [Atelier 1 - Le Menu] Essai d'Olowynd   Mer 13 Mar 2013 - 23:00

Merci d'avoir participé ! C'est du beau travail, bravo pour avoir réussi.

Maintenant, passons coté conseils et critique, tout d'abord je suis déçu du fait que tu aie utilisé des images de taille max pour éviter d'avoir à faire le placement. C'est quelque chose que tu devrais réellement travailler car cela réduirait le poids de tes futurs projets (si tu fais ce genre de système dans ton projet perso). C'est vrai qu'il s'agit d'un investissement assez conséquent mais tu verra cela te permettra d'être beaucoup plus libre au niveau de l'ajout d'éléments dans ton menu. D'ailleurs, tu utilises deux variables pour ton menu, je pense que tu aurais pu essayer de faire avec une seule. Si tu n'y arrive pas, n'hésite pas à me consulter je t'aiderais volontiers.

Au niveau de l'organisation j'aurais fait autrement. L'idée de faire un "déclencheur" est un bon choix afin de gérer l'activation du menu. Par contre, j'aurais mis toute l’initialisation (la phase de départ) dans le premier évènement. Pour ce qui s'agit du reste, c'est quand même assez correct. L'utilisation de deux variables est dommage, surtout quand Ulis et moi même t'avons parlé de comment le mettre en place avec les modulos.

Sinon je pense que c'est tout, le reste je pense que t'es déjà au courant.

Bon courage si tu décides de l'améliorer !

_________________
Gimme a hell yeah.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
 

[Atelier 1 - Le Menu] Essai d'Olowynd

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Apprentissage :: Programmation: Events & RGSS :: Ateliers-
Créer un forum | © phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit