Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zér0 > Les tutoriels > Non-Officiels > Programmation > C > Lecture des commentaires

Vos commentaires sur :
Un "vrai" jeu facile à faire !

Retour au tutoriel

Vous devez être inscrit pour pouvoir poster des messages

Page : 1  2 
Pseudo Commentaire
Page : 1  2 
Hors ligne omedo # Posté le 20/03/2006 17:17:07
Avatar
Groupe : Membres
juste il y a un probleme dans ton code final je ne voit pas quel librairie on doit inclure pour que cela fonctionne.

Image utilisateur
Mon statut MSN:
Image utilisateur
 
Hors ligne Haveo # Posté le 20/03/2006 17:41:21
Avatar
Newsers
Vous cassez pas la tête, prenez pareil que m@teo21
 
Hors ligne dark-lord # Posté le 22/03/2006 13:37:11
Avatar
Groupe : Membres
Juste une petit conseil le code peu etre un peu ammélioré, c'est pas une critique mai sje trovue juste que de tapé 100 fois le nom du tableau ca le fait pas. Tu a quand même entendu que les programmateur sont fainéant.

alors je te propose une ammélioration je ne sais pas si elle fonctionne mais en tout cas dans ma tête c'est le cas :)

Code : C

int i = 0;


//On crée une boucle pour parcourir le tableau
while(i <= 99)
  {
  //on ecrit ce que contien le tableau
  printf("%c", matrice[i]);
 
  //Si on a écrit 10 caractere on saute une ligne
  if((i+1)%10 == 0)
    printf("\n");
 
  i++;
  }
 
Hors ligne Haveo # Posté le 22/03/2006 16:21:31
Avatar
Newsers
Je sais tout le monde me le dit mais maintenant que c'est fait ...
 
En ligne iPoulet # Posté le 25/03/2006 22:09:41
Avatar
Groupe : Membres
Bah c'est bof.

J'adore les gens qui disent que Mac OS X fonctionnerait aussi mal que ses “rivaux” s'il n'était pas strictement cantonné au hardware prévu par Apple. Oui, c'est parfaitement vrai. Et alors ?
 
Hors ligne Haveo # Posté le 27/03/2006 11:55:41
Avatar
Newsers
Mais encore, ...
Précise !
 
Hors ligne Piwaï # Posté le 28/03/2006 17:22:54
Why can't we be friend ?
Avatar
Groupe : Membres
Si le code que ta fourni dark-lord fonctionne, pourquoi ne pas l'utiliser ?

Il permettrait en plus de changer facilement la taille du plateau de jeu.
Et en plus, il est élégant.

Sinon, c'est très interessant, un bon tutoriel, et le code est bien commenté.

http://www.piwai.info
"La violence est le dernier refuge de l'incompétence". Isaac Asimov, Fondation.
Créateur de 2H4U : Too Hard For You et découvrez aussi BisouLand.
 
Hors ligne Elentar # Posté le 03/04/2006 19:42:13
Avatar
Groupe : Membres
Un tutorial n'est pas sacré, vous pouvez y toucher une fois publié si on vous propose des améliorations hein...
Hors ligne Kermi # Posté le 03/04/2006 21:07:01
www.lyokodreamers.com
Avatar
Groupe : Membres
bon tuto, même si je pratique plus C++, mais c'est vrai, quelque défauts :)

le mien aussi en avait plein (mais je l'ai malencontreusement supprimé boulet que je suis ^^ )

sinon, j'ai fait un level02 pour ton jeu aussi, il a l'air simple comme ca mais il est en fait assez technique et faut pas se gourer d'un poil sinon c'est mort ^^

http://benoitcrauet.free.fr/downloads/autres/sdz/tutos/tuto-51-5316/level02.txt

mais personnelement, ne pratiquant plus le char ++ je ne comprend rien aux matrices aux bidules avec les arrays, etc...

12 car il manque des informations mais je monte a 15 car le reste est bien et de + je connais plus C++ ;)

C ++
 
Hors ligne C0c0 # Posté le 04/04/2006 17:53:48
Ca y est j'ai une citation !
Avatar
Groupe : Membres
Une faute si on peut appeler ça une faute dès le début du tuto ça la fou plutôt mal :

Voilà c'est on premier tuto
Voilà c'est mon premier tuto
Sinon je n'ai pas lu le reste désolé c'est pourquoi je ne note pas... :-°
Hors ligne magik-orion # Posté le 06/05/2006 17:37:27
I love Hewitt
Avatar
Groupe : Membres
salut,
Je suis au début de la deuxieme partie, j'ai deja fais 2 calculettes intelligente, un jeu ... et je trouve que ton jeu est superbe (pour un débutant comme moi). Cependant, il faudrais rafiner la présentation et faire d'autres niveaux lol
a+

PHP5 - SQL - AS3 - ASP.NET - JS (prototype) - xHTML - CSS2 - Java 2
 
Hors ligne Haveo # Posté le 07/05/2006 16:35:06
Avatar
Newsers
Ca fait plaisir un commentaire comme cela !!!
 
Hors ligne Le N@in Vert # Posté le 11/05/2006 19:28:47
Il est urgent de rire !
Avatar
Groupe : Membres
que appelle tu une calculette intelligente cisland ??? (sa m'intéresse car j'en est fait une mais je voie pas du tout ce que tu veut dire par intelligente)

Sinon le tuto du jeux est pas mal(j'ai un peu lu en diagonal) enfaîte sa ressemble une peu a un sokoban mais en console si j'ai bien compris c'est génial comme idée :D .
J'ai hésité a le noté vu que je l'ai lu un peu en diagonal finalement j'ai mit 14 / 20 mais c'est pas une note super significative ...
 
Hors ligne Haveo # Posté le 11/05/2006 19:48:41
Avatar
Newsers
C'est as un sudoku mais un sokoban en plus je l'ai fait avant m@teo, je suis sur qu'il a copié sur mon idée lol !!!
 
Hors ligne Le N@in Vert # Posté le 17/05/2006 08:45:30
Il est urgent de rire !
Avatar
Groupe : Membres
dsl erreur de frape corrigée
 
Hors ligne YellowMan # Posté le 09/06/2006 19:56:45

Avatar
Groupe : Membres
Pas mal du tout!
je mets 15/20.
je me servirais des bases de ton code sources pour essayer de faire un "Space invader"! ;)
 
Hors ligne Haveo # Posté le 09/06/2006 20:07:36
Avatar
Newsers
Tu pourras m'envoyer la source de ton space invader ?
 
En ligne SubX # Posté le 21/08/2006 22:04:19
Modelisateur amateur
Avatar
Groupe : Membres
ton jeu est bien mais le probleme evidemment c'est les antislash, car quand je teste ton code le niveau s'affiche sous forme de ligne et aps comme un cadres ou on se deplace sinon 18/20

EDIT: j'ai resolu le probleme, je vais essayer de faire d'autre niveau( ça m'a pas l'ai bien dur ;) )

EDIT2: j'ai voulu faire ce niveau :
Image utilisateur
et je me suis dit je vais le refaire mais sur un ligne et je remplace la ligne du code par celle que j'ai faite. Je l'ai fait mais la ligne se colore en rouge(erreur) pendant la compilation. Est-Ce normal?? :(

Mon site
Image utilisateurEven if you're not with me I'm with you

Pour toute demande d'engagement dans un projet (quel qu'il soit), la reponse est non, jusqu'au changement de cette phrase ;)
 
Hors ligne zaglet # Posté le 18/09/2006 09:28:33
e=mc²
Avatar
Groupe : Membres
cool comme debutant :p (surtout l'idee) ;)
Secret (cliquez pour afficher)
20/20

Mon blog : Gagner le l'argent facilment - Mon site : Blaguers Clip :ANA EDITEUR
--------------------------------------------------------
-Un peu dégouté on avait rien a faire. :( | -Réfléchie un peu. :-° |-Une idee? o_O |
-Un pc 1.4 ghz et 256 de ram. :euh: | -After effects et movie maker. :D | Voila ce que sa donne
--------------------------------------------------------

Image utilisateur
 
Hors ligne Koral # Posté le 04/11/2006 10:19:11
Ni dieu ni maitre
Avatar
Groupe : Membres
Je trouve très dommage que le jeu ne soit pas portable, c'est quand même incroyable de ne pas pouvoir pourter un truc comme ça.
11/20 et je suis gentil.
Hors ligne Haveo # Posté le 04/11/2006 15:25:22
Avatar
Newsers
Si tu sais pas changer une fonction c'est pas mon problème...
Donc, oui on peut porter ce "truc" suffit de réfléchir un peu.
 
Hors ligne -ed- # Posté le 24/11/2006 11:06:52
C is a sharp tool
Avatar
Groupe : Membres
La 'solution' est améliorable...
Code : Console

Project : Forums
Compiler : GNU GCC Compiler (called directly)
Directory : C:\dev\forums2\
--------------------------------------------------------------------------------
Switching to target: default
Compiling: main.c
main.c: In function `main':
main.c:71: warning: implicit declaration of function `getch'
main.c:94: warning: array subscript has type `char'
main.c:94: warning: array subscript has type `char'
main.c:129:10: warning: no newline at end of file
main.c: At top level:
main.c:42: warning: unused parameter 'argc'
main.c:42: warning: unused parameter 'argv'
Linking console executable: C:\dev\forums2\console.exe
Process terminated with status 0 (0 minutes, 5 seconds)
0 errors, 6 warnings

Emmanuel Delahaye. Image utilisateur
Des infos sur la programmation et le langage C:
http://bien-programmer.blogspot.com/
http://mapage.noos.fr/emdel/

 
Hors ligne Schin # Posté le 12/04/2007 19:57:28
Avatar
Groupe : Membres
J'arrive un peu tard mais pour que le jeu marche il faut inclure "conio.h"
donc rajouter la ligne : #include <conio.h>
car sinon les "getch()" ne marche pas !

Sinon le tuto est bien bravo !
Hors ligne Botman # Posté le 03/05/2007 18:40:01
Avatar
Groupe : Membres
Bonjour à tous ! :)

Je trouve ce tuto vraiment bien, très ineteressant pour un débutant comme moi ! :p Je me suis permi de modifier un peu le jeu en améliorant le texte et en remplacant joueur/bloc/trou par voleur/argent/sac à argent (en remplacant les symboles !) ^^ Sinon, il serait pas mal que tu continues sur ta lancée et que tu fasse un tuto sur les matrices :-°

Bonne chance ! :D Secret (cliquez pour afficher)
18/20

Tousse pour un, rhume pour tous !!! :'(

J'envie les rivières : elles peuvent suivre leur cours tout en restant dans leur lit !!! :p
 
Hors ligne Snigle # Posté le 11/05/2007 23:12:10
¡¡¡ Vive linux !!!
Avatar
Groupe : Membres
Ba moi je n'ai pas lu le tuto, je voulais juste voir le code finale pour tester, mais ton code ne marche pas lors de la compilation:
Code : Autre

//Avec conio.h, ce qui est écrit dans un commantaire
ludodu64@ludodu64-laptop:~$ gcc main.c -o exectutable
main.c:3:19: erreur: conio.h : Aucun fichier ou répertoire de ce type
//Sans conio.h
ludodu64@ludodu64-laptop:~$ gcc main.c -o exectutable
/tmp/cc5XjQar.o: In function `main':
main.c:(.text+0x1d1): undefined reference to `getch'
main.c:(.text+0x88b): undefined reference to `getch'
main.c:(.text+0x9f9): undefined reference to `getch'
collect2: ld a retourné 1 code d'état d'exécution

Longue vie à linux ^^
 
Hors ligne Haveo # Posté le 12/05/2007 15:43:38
Avatar
Newsers
>_< C'est normal que ca ne marche pas tu es sous Linux donc il n'y a ni conio.h ni getch().
 
Hors ligne spider-mario # Posté le 13/05/2007 19:53:54
Kubuntu, c'est karrément bien.
Avatar
Groupe : Membres
Sur cppfrance.com, j'ai trouvé une implémentation Linux de getch.

Le poulet n'est pas laid mais le pou l'est.
 
Hors ligne ~rom15~@ # Posté le 27/05/2007 17:16:42
I love chimie
Avatar
Groupe : Membres
Je mets un 20/20 car faire un jeu en console est très difficile.

J'ai amélioré ton jeu, voici le code:
Code : C
#include <stdio.h>
#include <stdlib.h>                                   
int DeterminerDirection(char ToucheAppuyee) //On associe la touche appuyée au nombre qu'il faut ajouter à la position
        {
        switch(ToucheAppuyee)
                {
                case 'z':
                        return -10;
                        break;
                case 'q':
                        return -1;
                        break;
                case 's':
                        return 10;
                        break;
                case 'd':
                        return 1;
                        break;
                }
        return 0;
        }
int TypeMouvement(char PositionNext,char PositionNextNext) //Qu'y a-t-il devant et peut-on avancer ?
        {
        if (PositionNext == ' ' ) //Si il y a rien devant
                {
                return 1; //Cas numéro 1
                }
        if (PositionNext == '#' ) //Si il y a un bloc devant
                {
                if (PositionNextNext == ' ' ) //Et qu'après c'est libre
                        {
                        return 2;
                        }
                if ( PositionNextNext == 'O' )
                        {
                        return 3;
                        }
                }
        return 0;
        }
int main(int argc, char *argv[])
        {
        //Déclaration et initialistaion des variables
        char Matrice[100] = {'_','_','_','_','_','_','_','_','_','_','|',' ',' ',' ',' ',' ','X',' ',' ','|','|',' ','J',' ',' ',' ','X',' ',' ','|','|',' ','X','#',' ',' ',' ',' ',' ','|','|',' ',' ',' ',' ',' ',' ',' ',' ','|','|',' ',' ',' ',' ',' ',' ',' ',' ','|','|',' ',' ',' ',' ','X','X','#','X','|','|',' ',' ','#',' ',' ',' ',' ','O','|','|',' ',' ',' ',' ',' ',' ',' ',' ','|','_','_','_','_','_','_','_','_','_','_'}; //On initialise le niveau
        long PositionDuJoueur;
        int NombreDeCubesRestants,Quitter,Direction,Mouvement;
        char ToucheAppuyee,i,j;
        NombreDeCubesRestants = 3;
        Quitter = 1;
        PositionDuJoueur = 22;//On initialise la position du joueur
        //Présentation
        printf("                                                             \n");
        printf("                              _____________________          \n");
        printf("                             |                     |         \n");
        printf("                             |   PushBlocConsole   |         \n");
        printf("                             |_____________________|         \n");
        printf("                                                             \n\n");

        printf("          Appuyer sur 'q' pour aller a gauche.\n");
        printf("                 -sur 'z' pour aller en haut.\n");
        printf("                 -sur 's' pour aller en bas.\n");
        printf("                 -sur 'd' pour aller a droite.\n\n");
        printf("Poussez les Blocs dans le trou.\n\n");

        printf("Le Joueur    -> 'J'\n");
        printf("Les Blocs    -> '#'\n");
        printf("Le Trou      -> 'O'\n");
        printf("Les Murs     -> '|', '_' et 'X'\n\n");
       
        printf("Appuyez sur n'importe quelle touche pour jouer");
        getch();
        //InitialiserJeu();
        //Début de la boucle de jeu
        while (NombreDeCubesRestants != 0 && Quitter == 1)
                {
                system("CLS");//On efface l'écran
                //On affiche le niveau
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[0],Matrice[1],Matrice[2],Matrice[3],Matrice[4],Matrice[5],Matrice[6],Matrice[7],Matrice[8],Matrice[9]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[10],Matrice[11],Matrice[12],Matrice[13],Matrice[14],Matrice[15],Matrice[16],Matrice[17],Matrice[18],Matrice[19]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[20],Matrice[21],Matrice[22],Matrice[23],Matrice[24],Matrice[25],Matrice[26],Matrice[27],Matrice[28],Matrice[29]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[30],Matrice[31],Matrice[32],Matrice[33],Matrice[34],Matrice[35],Matrice[36],Matrice[37],Matrice[38],Matrice[39]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[40],Matrice[41],Matrice[42],Matrice[43],Matrice[44],Matrice[45],Matrice[46],Matrice[47],Matrice[48],Matrice[49]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[50],Matrice[51],Matrice[52],Matrice[53],Matrice[54],Matrice[55],Matrice[56],Matrice[57],Matrice[58],Matrice[59]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[60],Matrice[61],Matrice[62],Matrice[63],Matrice[64],Matrice[65],Matrice[66],Matrice[67],Matrice[68],Matrice[69]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[70],Matrice[71],Matrice[72],Matrice[73],Matrice[74],Matrice[75],Matrice[76],Matrice[77],Matrice[78],Matrice[79]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[80],Matrice[81],Matrice[82],Matrice[83],Matrice[84],Matrice[85],Matrice[86],Matrice[87],Matrice[88],Matrice[89]);
                printf("%c%c%c%c%c%c%c%c%c%c \n",Matrice[90],Matrice[91],Matrice[92],Matrice[93],Matrice[94],Matrice[95],Matrice[96],Matrice[97],Matrice[98],Matrice[99]);
                ToucheAppuyee = getch();//Détermination de la touche appuyée
                if (ToucheAppuyee != '0') //Si la touche appuyée n'est pas celle qui permet de quitter le jeu
                        {
                        Direction = DeterminerDirection(ToucheAppuyee);
                        i = PositionDuJoueur + Direction;
                        j = PositionDuJoueur + Direction * 2;
                        Mouvement = TypeMouvement(Matrice[i],Matrice[j]);
                        if (Mouvement != 0)
                                {
                                if (Mouvement == 1) //Y a rien de vant, le chemin est libre
                                        {
                                        Matrice[PositionDuJoueur] = ' ';
                                        Matrice[PositionDuJoueur + Direction] = 'J';
                                        PositionDuJoueur = i;
                                        }
                                if (Mouvement == 2) //On pousse le bloc
                                        {
                                        Matrice[PositionDuJoueur + Direction * 2] = '#';
                                        Matrice[PositionDuJoueur + Direction] = 'J';
                                        Matrice[PositionDuJoueur] = ' ';
                                        PositionDuJoueur = i;
                                        }
                                if (Mouvement == 3) //On pousse le bloc dans le trou
                                        {
                                        Matrice[PositionDuJoueur] = ' ';
                                        Matrice[PositionDuJoueur + Direction] = 'J';
                                        PositionDuJoueur = i;
                                        NombreDeCubesRestants--;
                                        }
                                }
                        }
                else //Si tu ne veux pas ne pas quitter, c'est que tu veux quitter !!!
                        {
                        Quitter = 0;
                        }
                }
        system("CLS");// On fait le champ libre
        if (NombreDeCubesRestants == 0) printf("Bravo tu a reussi !");
        else printf("Bye Bye !");
        getch();
        return 0;
        }

Site finit à :
|||||||||||||||||||

Jeu Vidéo fini à :
||||||||||||||||||||
 
Hors ligne Squ@bad' # Posté le 10/06/2007 19:35:53
Rock and roll !
Avatar
Groupe : Membres
Bravo!

grâce à ton tuto, j'ai pu, en m'inspirant de ton code source faire un jeu de labyrinthe etc. :D on voit grâce à ton tuto qu'on peu malgrès tout être débutant et faire des jeux en console dingne de ce nom!!

Encore merci et bravo! :D

Secret (cliquez pour afficher)
18/20 ;)
Hors ligne Mafyou # Posté le 12/06/2007 23:42:28
Born to be Zéro!
Avatar
Groupe : Membres
Bonjour !!
Je voudrais savoir ce que veux dire Haveo dans l'introduction, à propos de:

"Le système de repérage"

L'espace de jeu est compris dans un tableau de taille 100 contenant des int et dans une variable qui contient la position du joueur sous forme de nombre de 0 à 99. Comme c'est un tableau de 10*10 il suffit d'ajouter un à la position du joueur pour qu'ilavance vers la gauche, dix pour qu'il descende, etc ...

Help :o
 

Vous devez être inscrit pour pouvoir poster des messages

Retour au tutoriel

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | Fil RSS | XHTML 1.0 | CSS 2.0
Édité par Simple IT SARL : Nous contacter | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 348 Zéros connectés | Requêtes SQL 6 requêtes | Temps de génération de la page : Total (SQL) 0.3355s (0.324s)