Menu SDL pour mon jeu

Résolu
Salut!
J'ai un problème, je m'explique, je voudrais créer un menu qui, lorsqu'on appuie sur une touche, lance le jeu (pour l'instant un personnage que l'on peut bouger)
Une simple image qui me servirais de menu, par exemple, je charge exemple.jpg cela me l'affiche et que j'appuie sur ESPACE boum, j'arrive sur le jeu.
Voilà en espérant avoir été assez précis.
Je vous remercie d'avance.

10 réponses

  1. Re Bonsoir,
    Je cherche en vain...
    Je n'arrive toujours pas à inclure la fonction jouer(); dans mon code poir relier le menu au jeu
    Auriez vous une solution ?
    Bonne soirée
    2
    1. Merci à tous mais j'ai trouver comment faire en revoyant quelques cours de programmation en C
      1
      1. Bonsoir,

        Que souhaitez vous que l'on réponde?
        Vous voulez une aide pour votre menu ou bien voulez vous que l'on vous fournisse le code source qui crée un menu?
        0
        1. Bonsoir,
          Dans l'absolu et si cela ne vous dérange pas, le code source.
          Mais si cela vous parait trop long et fastidieux aider moi juste.
          Merci beaucoup de votre réponse
          0
          1. Utilisez vous la bibliothèque SDL?
            Que savez vous faire précisément en C?
            0
            1. J'utilise la SDL,
              Je sais faire bouger un personnage (je préférerais faire mieux mais c'est un début).
              Cela illustre bien mon niveau.
              Merci de votre réponse.
              0
              1. Voila ce que j'ai fait, j'ai essayé de commenter au maximum:

                int main ( int argc, char** argv )
                {
                SDL_Surface *ecran = NULL; ///Initialise un écran sur lequel toutes vos surfaces seront positionnées

                SDL_Surface *menu = NULL; ///Initialise la surface qui servira de menu

                SDL_Event touche; ///Initialise un évnènement qui servira à récupérer la saisie au clavier de la touche entrée

                int compteur = 1; ///Booléen pour la boucle

                /*Crée la position du menu sur l'écran*/
                /*L'image du menu fait la taille de la fenêtre (ici 500*500px)*/
                SDL_Rect MENU;
                MENU.x = 0;
                MENU.y = 0;

                SDL_Init(SDL_INIT_VIDEO); ///Initialise la SDL
                ecran = SDL_SetVideoMode(500, 500, 32, SDL_HWSURFACE); ///Initialise la SDL

                menu = SDL_LoadBMP("menu.bmp"); ///Mets l'image du menu sur la surface menu

                SDL_BlitSurface(menu, NULL, ecran, &MENU); ///Colle le menu sur l'écran

                SDL_Flip(ecran); ///Actualise l'écran

                while(compteur)
                {
                SDL_WaitEvent(&touche); ///Attendre que l'on appuie sur une touche

                switch(touche.type)
                {
                case SDL_QUIT:
                compteur++;
                break;
                case SDL_KEYDOWN: ///Si une touche à été appuyée
                switch(touche.key.keysym.sym)
                {
                case SDLK_SPACE: ///Si la touche appuyée est espace
                //jouer(); ///LANCER LE JEU
                break;
                }
                break;
                }
                }

                return 0;
                }

                Si vous avez une question n'hésitez pas à la poser
                0
                1. Bonjour l'exemple plus haut est donné certes mais ne sert cas blité une surface et appelé une fonction. Il n'y a rien d'un menu qui a la capacité d'être sollicité à tout moment. Bref et en conclusion, ce n'est pas un menu juste un blit avec un appel de fonctions sans d'autre possibilités.
                  Bref, il faut revoir tout l'algorithme de votre menu et aussi l'implémentation avec l'ensemble du code , pour le moment ce n'est qu'un simple blit sans possibilité .

                  à bientôt
                  0
                2. C'est ce que voulait la personne, non?
                  0
                3. Bonsoir
                  peut-être j'en sais rien mais si on vois le menu de cet ongle c'est plus une interface de démarrage qu'un menu qui interagit avec l'application.
                  à bientôt
                  0
              2. Bonjour, tout d'abord mille fois merci!!
                Après cela fonctionne mais je n'arrive pas a quitter ma fenêtre SDL (la croix ne fonctionne pas).
                Dois-je modifier le code qui me permet de diriger le personnage pour relier les deux code?
                Encore merci!
                0
                1. Bonsoir,
                  Votre fonction "jouer();" n'est reliée à rien.
                  Comment la relier? (sous entendu, la relier à mon "jeu")
                  PS: J'ai n'ai pas trouver comment faire pour quitter la fenêtre SDL.
                  Faut-il utiliser SDL_QUIT(); ?
                  Merci ;)
                  0
                  1. La fonction
                    jouer()
                    n'est reliée à rien parceque c'est vous qui devez l'inclure dans votre code
                    0
                  2. Bonjour,
                    Comment l'inclure correctement ?
                    Faut-il passer par un fichier .h ?
                    Merci ;)
                    0