Jeu en console C

Fermé
the.co Messages postés 27 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 18 février 2013 - 6 déc. 2011 à 15:21
lucas-84 Messages postés 35 Date d'inscription dimanche 17 octobre 2010 Statut Membre Dernière intervention 7 décembre 2011 - 7 déc. 2011 à 14:35
Bonjour,

voila je dois faire un jeu de labyrinthe en c. Les deux personnages peuvent attraper des fioles et des capes, cela se fait automatiquement dès qu'ils passent dessus.

Seulement dans mon code il y a des erreurs et je n'arrive pas a comprendre lesquels. Deplus, je ne sais pas comme faire disparaître les lettre qui correspondent aux objets quand un jour les prend et qu'elle disparaissent.

j'espère que vous pourrez m'aider je dois le rendre demain je n'aurai jamais le temps !!

Cordialement


 #include <stdio.h>
#include <stdlib.h>
#include "FonctionsPrototype.h"


/*int xA = 0 ;
int yA = 0;
int xB = 0;
int yB = 0;//*/


    // declaration des variables
int objet (int cape, int fiole);
int cape;
int fiole;
C = 0;
F = 0;
Joueur joueurA;
Joueur joueurB;
Fiole;
Cape;
int caractereActuel = 0;


    // Placement des joueurs
int x,y;
joueurA pos.x = 0;
joueurA.pos_y = 0;
joueurB.pos_x = 14;
joueurB.pos_y = 15;


fiole.pos_y = NULL
fiole.pos_x = NULL
cape.pos_y = NULL
cape.pos_x = NULL



    if (joueurA->pos_x && joueurA->pos_y == Fiole->pos_x && Fiole->pos_y)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", objet);

    }



    if (joueurA->pos_x && joueurA->pos_y == Cape->pos_x && Cape->pos_y)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", objet);

    }

 if (joueurB->pos_x && joueurB->pos_y == Fiole->pos_x && Fiole->pos_y)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", objet);

    }

    if (joueurV->pos_x && joueurB->pos_y == Cape->pos_x && Cape->pos_y)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", objet);

    }

    if (objet == C)

    {
        printf ("Vous avez pris une cape d'invisibilité");
    }

    else if (objet == F)

    {
        printf ("Vous avez pris une fiole");
    }


9 réponses

Salut a tous



je suis un jeune en programmation je veux savoir comment est ce que je peut concevooir mon propre jeux video en C++.
0
lucas-84 Messages postés 35 Date d'inscription dimanche 17 octobre 2010 Statut Membre Dernière intervention 7 décembre 2011 6
6 déc. 2011 à 19:29
Hein ? Pas de fonctions, des variables seule (Fiole, Cape), pas de structures, pourtant tu utilises des points...
0
the.co Messages postés 27 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 18 février 2013 1
6 déc. 2011 à 19:32
les structures, sont dans un autre fichier dans le même projet, ce n'est qu'une partie du projet... les variables j'ai oublié de les enlevé en copiant le code
0
lucas-84 Messages postés 35 Date d'inscription dimanche 17 octobre 2010 Statut Membre Dernière intervention 7 décembre 2011 6
6 déc. 2011 à 19:36
Pour les scanf, il manque les esperluettes, déjà.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
the.co Messages postés 27 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 18 février 2013 1
6 déc. 2011 à 19:45
oh oui pas bête merci!! j'ai changé un peu le code, pour les if j'avais fais n'importe quoi

#include <stdio.h>
#include <stdlib.h>
#include "FonctionsPrototype.h"




    // declaration des variables
int objet (int cape, int fiole)
{
{



int cape = 0;
int fiole = 0;
int C = 0;
int F = 0;
Joueur joueurA;
Joueur joueurB;



    // Placement des joueurs
int x,y;
joueurA->pos_x = 0;
joueurA->pos_y = 1;
joueurB->pos_x = 14;
joueurB->pos_y = 15;


fiole->pos_y = NULL;
fiole->pos_x = NULL;
cape->pos_y = NULL;
cape->pos_x = NULL;






    if (joueurA->pos_x == Cape->pos_x)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }

    if (joueurA->pos_y == Cape->pos_y)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }


 if (joueurB->pos_x == Fiole->pos_x )

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }

    if (joueurB->pos_y == Fiole->pos_y )

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }


    if (joueurB->pos_x== Cape->pos_x)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }

    if (joueurB->pos_y == Cape->pos_y)

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }


 if (joueurA->pos_x == Fiole->pos_x )

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }

    if (joueurA->pos_y == Fiole->pos_y )

    {
        printf("Pour prendre cet objet appuyez sur la touche correspondante");
        scanf ("%d", &objet);

    }



    else if (objet == C)

    {
        printf ("Vous avez pris une cape d'invisibilité");
    }

    else if (objet == F)

    {
        printf ("Vous avez pris une fiole");
    }

}
}
0
the.co Messages postés 27 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 18 février 2013 1
6 déc. 2011 à 19:45
(faites pas attention a ce qu'il y'a marqué dans la printf c'est pas le plus important)
0
lucas-84 Messages postés 35 Date d'inscription dimanche 17 octobre 2010 Statut Membre Dernière intervention 7 décembre 2011 6
Modifié par lucas-84 le 6/12/2011 à 19:47
Faut que tu effaces l'écran, non ? Ou alors utilise le retour chariot (\r)
0
the.co Messages postés 27 Date d'inscription mercredi 9 novembre 2011 Statut Membre Dernière intervention 18 février 2013 1
6 déc. 2011 à 19:53
à quoi sert cette commande chariot (\r) ? oui je vais essayer d'effacer l'écran
0
lucas-84 Messages postés 35 Date d'inscription dimanche 17 octobre 2010 Statut Membre Dernière intervention 7 décembre 2011 6
7 déc. 2011 à 14:35
Le retour chariot '\r' est un caractère de contrôle (au même type que '\n' ou '\0' par exemple) qui permet de revenir au début de la ligne courante, même si celle-ci contient déjà des caractères. Mais bon, il est assez compliqué à manipuler, si tu débutes, commence par utiliser un effacement d'écran.
0