| Optimisation de mon .gmk | |
|
|
Auteur | Message |
---|
Invité Invité
| Sujet: Optimisation de mon .gmk Sam 10 Sep 2011 - 23:01 | |
| J'ai créé un petit menu tant bien que mal mais je suis sûr qu'il peut être optimisé. Non pas qu'il est lent, loin de là, mais j'aimerais bien réduire le code pour le fun. invasion.gmkMerci par avance ! |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: Optimisation de mon .gmk Sam 10 Sep 2011 - 23:26 | |
| Bon, c'est vachement modifié, j'ai utilisé pas mal d'astuces pour réduire la taille du code. Si tu ne comprends pas quelque chose, feel free to ask - Spoiler:
Create : - Code:
-
// Initialisation du menu choixMenu = 0; tailleMenu = 3; menu[0] = "Commencer"; menu[1] = "Continuer"; menu[2] = "Quitter"; Draw : - Code:
-
draw_set_halign(fa_center); draw_set_color(make_color_rgb(88,76,63)); draw_set_alpha(1);
// Titre draw_set_font(fntMenuTitre); draw_text(room_width/2,25,"Invasion");
// Choix draw_set_font(fntMenuChoix); draw_set_color(c_white);
for(i=0;i<tailleMenu;i+=1) { if(i==choixMenu) draw_set_alpha(1); else draw_set_alpha(.5); draw_text(room_width/2,80+i*20,menu[i]); } Key Pressed Space : - Code:
-
switch(choixMenu) { case 0: show_message("Commencer"); break; case 1: show_message("Continuer"); break; case 2: show_message("Quitter"); break; } Key Pressed Up : - Code:
-
sound_play(sndSelection); choixMenu = (choixMenu-1) mod tailleMenu; Key Pressed Down : - Code:
-
sound_play(sndSelection); choixMenu = (choixMenu+1) mod tailleMenu;
_________________ Home is not a place, it's a feeling.
|
|
| |
Invité Invité
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:02 | |
| Ah oui, c'est autre chose là, merci beaucoup d'avoir consacré ton temps pour moi. Le code me paraît clair sauf : choixMenu = (choixMenu-1) mod tailleMenu;What's mod ? |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:09 | |
| a mod b = le reste de la division de a par b. C'est très utile pour délimiter un entier a dans un rayon de 0 à b En gros, quand a atteint ou dépasse b, on retranche b (donc a=b -> a=0). Même chose en sens inverse. _________________ Home is not a place, it's a feeling.
|
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:13 | |
| Et ça s'appelle le modulo. En c/c++ c'est %. En math c'est utilisé dans les congruences, avec le égal a trois barres qui signifie congrue, et les crochets qui signifient modulo.
Par exemple 15 congru 0[5] (jpeut pas noter le = chelou)
Sinon rien a redire sur ce que Deezee a fait, mis a part que tout aurais pu tenir dans le Draw (pas très lisible), ou dans le draw et le create. |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:16 | |
| J'ai failli le dire pour ce qui est de tout mettre dans le Draw, mais je trouve ça utile uniquement quand il faut avoir un contrôle total sur l'ordre des events (entrée clavier pour un moteur de jeu par exemple) _________________ Home is not a place, it's a feeling.
|
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:20 | |
| Perso je trouve que c'est une bonne habitude a prendre de pas utiliser tous ces events D&D like. Ça permet de pas avoir a fermer/ouvrir pleins de pages a chaque fois qu'on veux modifier un truc. Surtout qu'avec GM, quand on ouvre un 'piece of code', on peut rien faire d'autre.
Bon après jsuis un extrémiste de la fainéantise, surtout quand il s'agit de coder. Je comprendrais que les avis soient partagés. |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:33 | |
| Je dis ça, je n'utilise jamais autre chose que Create, Step et Draw... Mais GM me gonfle, vivement qu'on arrive assez loin en Java pour aborder les librairies graphiques et sonores (oui, je sais, je peux faire les tutos LWJGL moi-même mais j'ai un peu la flemme ) _________________ Home is not a place, it's a feeling.
|
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 0:55 | |
| De toute façon Java aussi deviens vite gonflant. Mais c'est sur que ça va moins vite que GM pour ça |
|
| |
Invité Invité
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 9:42 | |
| Ok merci, j'ai un peu regardé la doc de PHP (oui je compare souvent à ce que je connais) et je viens de comprendre son fonctionnement. Ceci dit, il y a une erreur sur le menu que je ne comprends pas. Quand je descends, ça va mais quand je monte, ça foire : http://api.ge.tt/0/8eUV2e7/0/blob/download |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 12:30 | |
| Mince, on dirait que le mod de GM tolère les restes négatifs... Bon ben : Key Pressed Up : - Code:
-
sound_play(sndSelection); choixMenu = (choixMenu+tailleMenu-1) mod tailleMenu; _________________ Home is not a place, it's a feeling.
|
|
| |
Invité Invité
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 12:51 | |
| |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: Optimisation de mon .gmk Dim 11 Sep 2011 - 13:06 | |
| On dit "merci" que si c'est compris, hein ? _________________ Home is not a place, it's a feeling.
|
|
| |
Contenu sponsorisé
| Sujet: Re: Optimisation de mon .gmk | |
| |
|
| |
| Optimisation de mon .gmk | |
|