IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

probléme et questions sur mon premier jeu.


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Mars 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mars 2012
    Messages : 17
    Par défaut probléme et questions sur mon premier jeu.
    Bon , j'ai commencé le jeu (Oui j'ai pas encore beaucoup bossé dessus mais c'est justement pour sa que j'écris)

    j'ai deux question et un problème.

    Questions:Est-il possible de faire un menu en console pour mon jeu (histoire de gagner un peu de temp vu que ce serait du coup plus simple a faire) et si oui comment faire ma boucle qui me permetrait de rester sur le menu tant que je ne choisisse pas le sous menu qui fait quitter le jeu (que j'ai intéligement nommé "Fin du jeu" )

    problème:Vu que pour l'instant je suis partit dans une idée de menu en console, j'ai décidé que la fenêtre SDL ne s'ouvrirait que lorsque on en aurait finit avec les menus mais le problème c'est que cela me marque le message d'erreur :" undefined reference to 'SDL_Main' " alors qu'est ce que je doit faire, sachant qu'avec un programme de test de la fenetre SDL sa marche?

    Voici le code source (au cas ou ^^):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    #include <stdio.h>
    #include <stdlib.h>
    #include <SDL/SDL.h>
     
    void pause();
     
    int main()
    {
        printf("Bienvenue sur le jeux : One Piece , Luffy contre les zombies !\n\n");
        printf("Quel mode de jeux choisi tu, pirate ?\n\n");
        printf("1. Aventure\n");
        printf("2. Multijoueur\n");
        printf("3. Regles\n");
        printf("4. Option\n");
        printf("5. Fin du jeu\n");
        int ChoixModeMenu;
        scanf("%d", &ChoixModeMenu);
        if(ChoixModeMenu == 1)
        {
            printf("WOUAH, tu veux donc jouer en mode Aventure, c'est cool !\n\n");
            printf("Bon, il me faut ton nom, sa ferait bizarre un avis de recherche avec aucun nom !\n\n");
            char* nomPersonnage[100];
            scanf("%s", &nomPersonnage);
            printf("Ah, tu t'apelle donc %s, bien j'envoie a la Marine !\n\n", nomPersonnage);
            printf("Et oui, tu es deja rechercher pour le vol d'un fruit du demon, ta tete est mise a prix a 10 000 berry !\n\n");
            printf("Bon, allez je vais te laisser, %s . Bonne chance pour ton aventure !", nomPersonnage);
            SDL_Init(SDL_INIT_VIDEO);
            SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE);
            SDL_WM_SetCaption("One piece : Luffy conter les zombies", NULL);
            pause();
            SDL_Quit();
        }
        else if(ChoixModeMenu == 2)
        {
            printf("Hein, tu fais partie d'un equipage, en-est tu le capitaine ?\n\n");
            printf("1. Oui\n");
            printf("2. Non\n");
            int ChoixSiTuEsLeCapitaine;
            scanf("%d", &ChoixSiTuEsLeCapitaine);
            if (ChoixSiTuEsLeCapitaine == 1)
            {
                printf("\nAh ben en plus !\n\n");
            }
            else if (ChoixSiTuEsLeCapitaine == 2)
            {
                printf("\nOhhh....Dommages que tu ne sois pas le capitaine, on aurrait pu combattre!\n\n");
            }
            else
            {
                printf("\nQUOI? TU NE SAIS PAS SI TU ES LE CAPITAINE DE TON EQUIPAGE, MAIS TU EN FAIT EXPRES ?\n\n");
            }
            printf("Bon, je vais lancer le jeux et tu pourras choisir la partie que tu souhaite rejoindre et commencer a jouer avec tes amis .\n\n");
     
        }
        else if(ChoixModeMenu == 3)
        {
            printf("Bienvenue dans le menu des regles !\n\n\n");
            printf("Pour jouer a ce jeu il te faut un ordinateur, un clavier et une souris, si t'as pas ca, tu peux commencer a t'inquieter !\n");
            printf("Bon, le but de ce jeux est de tuer un max de zombies pour que toi et les autres membres de ton equipage puisse survivre .\n");
            printf("Pour les controls, utilise le pave numerique pour te deplacer et les differentestouches qui te servent au attaques .\n\n");
            printf("---FIN DU MENU DES OPTIONS---\n\n\n\n");
        }
        else if(ChoixModeMenu == 4)
        {
            printf("---MENU DES OPTIONS---\n\n");
            printf("Bienvenue dans le menu des options !");
        }
        else if(ChoixModeMenu == 5)
        {
            printf("Aurevoir et merci d'avoir joue.\nA bientot !\n\n\n");
            printf("Appuyer sur n'importe quelle touche et faite enter pour terminer le jeux .");
            int findujeu;
            scanf("%d", &findujeu);
        }
     
        return 0;
    }
     
     
    void pause()
    {
        int continuer = 1;
        SDL_Event event;
     
        while (continuer)
        {
            SDL_WaitEvent(&event);
            switch(event.type)
            {
                case SDL_QUIT:
                    continuer = 0;
            }
        }
    }
    (par pitié pas de commentaire sur le titre du jeu et sur les menus j'était pas tres inspiré alors je l'ai fait a la "One Piece".)
    c'est possible qu'il y est quelques fautes d'orthographes ^^

    Ps:j'utilise quelle commande pour faire une pause en attendant d'appuez sur entrer pour quitter le programme ( je sai qu'il y aura un événement mais je l'utilise avec quoi?)

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 315
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par LittleBitOne Voir le message
    Bon , j'ai commencé le jeu (Oui j'ai pas encore beaucoup bossé dessus mais c'est justement pour sa que j'écris)

    j'ai deux question et un problème.

    Questions:Est-il possible de faire un menu en console pour mon jeu (histoire de gagner un peu de temp vu que ce serait du coup plus simple a faire) et si oui comment faire ma boucle qui me permetrait de rester sur le menu tant que je ne choisisse pas le sous menu qui fait quitter le jeu (que j'ai intéligement nommé "Fin du jeu" )
    Tu fais une boucle while (1) dans laquelle tu insères ton menu. Si l'utilisateur choisi de quitter tu fais break;. Tu sors ainsi de la boucle et fin de programme.

  3. #3
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 315
    Billets dans le blog
    5
    Par défaut
    Autre remarque pendant qu'on y est. ChoixModeMenu est un int. Donc plutôt que de faire if (ChoixModeMenu==...) utilises switch (ChoixModeMenu);. C'est plus propre et beaucoup plus lisible.

  4. #4
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Mars 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mars 2012
    Messages : 17
    Par défaut
    ok, mais comme je suis pas spécialement doué avec les boucles, tu peux m'indiquer ou la placer ainsi que le break.


  5. #5
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 315
    Billets dans le blog
    5
    Par défaut
    Ca pourrait donner ce genre de chose
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
     
    int main()
    {
      int ChoixModeMenu;
     
      while (1)
        {
          printf("Bienvenue sur le jeux : One Piece , Luffy contre les zombies !\n\n");
          printf("Quel mode de jeux choisi tu, pirate ?\n\n");
          printf("1. Aventure\n");
          printf("2. Multijoueur\n");
          printf("3. Regles\n");
          printf("4. Option\n");
          printf("5. Fin du jeu\n");
     
          scanf("%d", &ChoixModeMenu);
     
          switch (ChoixModeMenu)
    	{
    	case 1 :
    	  {
    	    printf("WOUAH, tu veux donc jouer en mode Aventure, c'est cool !\n\n");
    	    printf("Bon, il me faut ton nom, sa ferait bizarre un avis de recherche avec aucun nom !\n\n");
    	    char* nomPersonnage[100];
    	    scanf("%s", &nomPersonnage);
    	    printf("Ah, tu t'apelle donc %s, bien j'envoie a la Marine !\n\n", nomPersonnage);
    	    printf("Et oui, tu es deja rechercher pour le vol d'un fruit du demon, ta tete est mise a prix a 10 000 berry !\n\n");
    	    printf("Bon, allez je vais te laisser, %s . Bonne chance pour ton aventure !", nomPersonnage);
    	    SDL_Init(SDL_INIT_VIDEO);
    	    SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE);
    	    SDL_WM_SetCaption("One piece : Luffy conter les zombies", NULL);
    	    pause();
    	    SDL_Quit();
    	    break;
    	  }
    	case 2 :
    	  {
    	    printf("Hein, tu fais partie d'un equipage, en-est tu le capitaine ?\n\n");
    	    printf("1. Oui\n");
    	    printf("2. Non\n");
    	    int ChoixSiTuEsLeCapitaine;
    	    scanf("%d", &ChoixSiTuEsLeCapitaine);
    	    if (ChoixSiTuEsLeCapitaine == 1)
    	      {
    		printf("\nAh ben en plus !\n\n");
    	      }
    	    else if (ChoixSiTuEsLeCapitaine == 2)
    	      {
    		printf("\nOhhh....Dommages que tu ne sois pas le capitaine, on aurrait pu combattre!\n\n");
    	      }
    	    else
    	      {
    		printf("\nQUOI? TU NE SAIS PAS SI TU ES LE CAPITAINE DE TON EQUIPAGE, MAIS TU EN FAIT EXPRES ?\n\n");
    	      }
    	    printf("Bon, je vais lancer le jeux et tu pourras choisir la partie que tu souhaite rejoindre et commencer a jouer avec tes amis .\n\n");
    	    break;
    	  }
    	case 3 :
    	  {
    	    printf("Bienvenue dans le menu des regles !\n\n\n");
    	    printf("Pour jouer a ce jeu il te faut un ordinateur, un clavier et une souris, si t'as pas ca, tu peux commencer a t'inquieter !\n");
    	    printf("Bon, le but de ce jeux est de tuer un max de zombies pour que toi et les autres membres de ton equipage puisse survivre .\n");
    	    printf("Pour les controls, utilise le pave numerique pour te deplacer et les differentestouches qui te servent au attaques .\n\n");
    	    printf("---FIN DU MENU DES OPTIONS---\n\n\n\n");
    	    break;
    	  }
    	case 4 :
    	  {
    	    printf("---MENU DES OPTIONS---\n\n");
    	    printf("Bienvenue dans le menu des options !");
    	    break;
    	  }
    	default :
    	  {
    	    printf("Aurevoir et merci d'avoir joue.\nA bientot !\n\n\n");
    	    printf("Appuyer sur n'importe quelle touche et faite enter pour terminer le jeux .");
    	    int findujeu;
    	    scanf("%d", &findujeu);
                break;
    	  }
    	}
        }
     
      return 0;
    }

  6. #6
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Mars 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mars 2012
    Messages : 17
    Par défaut
    merchi, je vais bosser avec ca et puis je verais si il y a d'autre bug que le "undefined reference to sdl_main"

    edit:Nan sa marche toujour pas, y'a toujour le "undefined reference to SDL_MAIN"

Discussions similaires

  1. [Android] Paddles: Mon premier jeu gratuit sur Android
    Par zsalloum dans le forum Mon application mobile
    Réponses: 11
    Dernier message: 22/09/2014, 17h10
  2. Problème sur mon premier exemple SSIS
    Par mouradsi dans le forum SSIS
    Réponses: 7
    Dernier message: 23/12/2010, 13h49
  3. Question sur mon formulaire de contact
    Par Analfabete dans le forum Langage
    Réponses: 3
    Dernier message: 24/04/2006, 18h12
  4. question sur mon futur processeur
    Par loveflower dans le forum Composants
    Réponses: 13
    Dernier message: 12/01/2006, 00h10
  5. [Language] Aide sur mon premier programme Java?
    Par hash2zo dans le forum Langage
    Réponses: 15
    Dernier message: 27/09/2005, 19h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo