Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les forums > Programmation > Langage C > Super 42 > Lecture du sujet

Super 42

A vous de le tester

Vous devez être inscrit pour pouvoir poster des messages

Page : 1  2  Suivante
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : 1  2  Suivante
Hors ligne nono42 # Posté le 02/07/2008 à 16:38:52
Avatar
Groupe : Membres
Salut, comme vous le voyez dans le titre, le nouveau jeu Super 42 est téléchargeable. Il n'est pas fini mais c'est juste pour voir si je continue ou pas...
Vous pouvez le télécharger ici (Windows et linux, .zip )
cliquer sur Request Ticket puis sur Download.
Y'a déjà des bugs: on tape une lettre et c'est une boucle infinie (j'ai pas réussi a régler le problème et j'ai lis le tuto sur les entrer sécurisée ), et les autres je vous les laisse... Devinette :D
Enfin je vous dirais de commencer par lire les règles du jeu.

@++
Édité le 07/07/2008 à 17:18:33 par nono42

Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne Revan76 # Posté le 02/07/2008 à 20:38:59
Avatar
Groupe : Membres
Hors ligne spontex # Posté le 02/07/2008 à 20:40:35
Do I look like a human ?
Avatar
Groupe : Membres
C'est marrant. On joue pas vraiment mais c'est quand même marrant, on dirait un peu une bd, mais sans les images (et en console :euh: ).

Et je me suis loupé :lol: .

edit : Revan76, elles sont dans le fichier à télécharger...
Édité le 02/07/2008 à 20:41:59 par spontex

Mon projet : Un big jeu de bourrin ou il faut tirer sur tout ce qui bouge.
Avancement de la démo : ■■■■■■■■■■■■■■■■■■■■ 53%
_____________________________________________________________________
NE PAS cliquer ici.
 
Hors ligne Revan76 # Posté le 02/07/2008 à 20:42:55
Avatar
Groupe : Membres
Oui mais j'aurais aimé les voir dans le post c'est tout. (en plus je peux pas décompresser l'archive)
Édité le 02/07/2008 à 20:43:45 par Revan76
 
Hors ligne noob4ever # Posté le 02/07/2008 à 20:46:58
I aim for the middle.
Avatar
Groupe : Membres
Ouais, les .rar pour ceux qui sont sur Linux...

Mets ta bouche contre le trottoir tout de suite.
 
Hors ligne aiii # Posté le 02/07/2008 à 21:10:59
Avatar
Groupe : Membres
En général quand on publie un "jeu", on essaie de sécuriser les entrée. Ca m'a bien fait chier de devoir relancer ton jeu car j'avais fait une mauvaise saisie ... :)
C'est assez dommage de lire les règles et d'avoir sa fenêtre qui se ferme.
Ah, et puis pas cool le:
Code : C
1
system("PAUSE");

T'es un anti-Linux/anti-Mac ? Préfère un code portable ...

PS: C'est vrai que c'est fun, tellement c'est con ! X)
Édité le 02/07/2008 à 21:13:29 par aiii
 
Hors ligne Pole # Posté le 02/07/2008 à 21:16:28
Chieur professionnel
Avatar
Groupe : Membres
Enlève les fôtes d'orthographe ;)

noob4ever : unrar e fichier.rar
D'ailleurs, c'est sympa de mettre le dossier dans l'archive.
Ca évite d'avoir des fichiers de partout.
 
Hors ligne noob4ever # Posté le 02/07/2008 à 21:28:37
I aim for the middle.
Avatar
Groupe : Membres
Citation : Pole
Enlève les fôtes d'orthographe ;)

noob4ever : unrar e fichier.rar
D'ailleurs, c'est sympa de mettre le dossier dans l'archive.
Ca évite d'avoir des fichiers de partout.


ça m'embête d'installer quelque chose alors qu'un zip aurait très bien march" ( et ça lui coûte rien ).

Mets ta bouche contre le trottoir tout de suite.
 
Hors ligne aska990 # Posté le 03/07/2008 à 11:15:15
Je vais manger moult frites !
Avatar
Groupe : Membres
bah le lien fonctionne pas chez moi...
 
Hors ligne Le Taoiste # Posté le 03/07/2008 à 17:39:40
Avatar
Groupe : Membres
Moi non plus, le lien semble être mort :euh:
Édité le 03/07/2008 à 17:40:06 par Le Taoiste

Image utilisateur
 
Hors ligne nono42 # Posté le 03/07/2008 à 17:51:54
Avatar
Groupe : Membres
Salut,

aiii: Pour les entrée sécurisée j'ai lu le tuto mais je comprend pas si je dois utiliser scanf(); ou fgets.
Alors le problème est réglé pour fenêtres qui se ferme, mais pourquoi tu dit que le Code : C
1
system ("PAUSE");
est chiant ?? C'est pour les dialogues ou on doit a chaque fois appuyer sur une touche ???
JE suis pas anti-linux je les :D
Heu... c'est quoi un projet portable ?? :euh:
Et oui je sais c'est con... ^^

@++

A oui, juste pour savoir; je le continu ou j'arrête ???
Édité le 07/07/2008 à 17:17:41 par nono42

Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne Le Taoiste # Posté le 03/07/2008 à 20:56:26
Avatar
Groupe : Membres
Pour ton deuxième lien, il est écrit que le fichier a été supprimé.

Sinon, un code portable est un code qui réagit de la même manière sous différents OS.

Pour system("PAUSE");, je te conseille l'utilisation de getchar(); qui est portable et qui te permet d'écrire la phrase de ton choix alors que system("PAUSE"); en inscrit une en anglais que tu ne peux modifier. (Et aussi, getchar(); est plus rapide à écrire que system("PAUSE3); ^^ Après à toi de choisir :p ).
Édité le 03/07/2008 à 20:57:03 par Le Taoiste

Image utilisateur
 
Hors ligne Dark Patate # Posté le 03/07/2008 à 21:07:50
Longue vie à Dark patate!
Avatar
Groupe : Membres
Le lien de téléchargement marche pas

VIVE LA REPUBLIQUE ET VIVE LA FRANCE, allons enfants de la patriiiiie le jour de gloire est arrivé...

Image utilisateur
Piquée à Vodka Orange (Merci pour cette superbe usebar)

 
Hors ligne nono42 # Posté le 03/07/2008 à 21:12:40
Avatar
Groupe : Membres
Salut
Oui voilà je faisais une mise a jour (niveau 3 ajouté ) le téléchargement marche
Donc je doit remplacer mes system("PAUSE"); par getchar("PAUSE");
???
@++

Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne rayan007 # Posté le 03/07/2008 à 21:15:30
Groupe : Membres
Prototype de getchar :
int getchar(void);
Hors ligne Dark Patate # Posté le 03/07/2008 à 21:19:54
Longue vie à Dark patate!
Avatar
Groupe : Membres
OU la vilaine fautes !! J'arrive plus a à allumer m'a ma télé (le rouge sont les fautes et en vert les fautes corrigées
Édité le 03/07/2008 à 21:25:21 par Dark Patate

VIVE LA REPUBLIQUE ET VIVE LA FRANCE, allons enfants de la patriiiiie le jour de gloire est arrivé...

Image utilisateur
Piquée à Vodka Orange (Merci pour cette superbe usebar)

 
Hors ligne nono42 # Posté le 03/07/2008 à 21:28:07
Avatar
Groupe : Membres
Salut,
alors je dois includer getchar.h (pour moi ) et y mettre getchar(void);
après getchar("PAUSE"); marchera (là j'ai vu qu'il me dit une erreur )
et pi la vilaine faute, le "ma" est corrigé (j'ai du tapé trop vite, et donc un point virgule est entré en douce :p ) mais essaye de mettre à dans une console, sa donnerais j'arrive plus o allumer ma tele. le o avec un accent grave (ou aigüe ) :D :D

Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne Dark Patate # Posté le 03/07/2008 à 21:31:16
Longue vie à Dark patate!
Avatar
Groupe : Membres
Ah oui c'est vrai, au fait on arrive pas à voir le code pour passer au 3ème niveau.

VIVE LA REPUBLIQUE ET VIVE LA FRANCE, allons enfants de la patriiiiie le jour de gloire est arrivé...

Image utilisateur
Piquée à Vodka Orange (Merci pour cette superbe usebar)

 
Hors ligne Nab # Posté le 03/07/2008 à 22:22:59
KISS
Avatar
Groupe : Membres
Citation : nono42
Salut,
alors je dois includer getchar.h (pour moi ) et y mettre getchar(void);
après getchar("PAUSE"); marchera (là j'ai vu qu'il me dit une erreur )
et pi la vilaine faute, le "ma" est corrigé (j'ai du tapé trop vite, et donc un point virgule est entré en douce :p ) mais essaye de mettre à dans une console, sa donnerais j'arrive plus o allumer ma tele. le o avec un accent grave (ou aigüe ) :D :D


Tss tss…

getchar() est comme dit une fonction standard définie par la norme C, que tu peux utiliser à partir du moment ou t'a inclus stdio.h.
Le prototype de la fonction qui t'a été donné te permet de savoir comment l'utiliser, pas qu'il te faut le créer.

getchar() s'utilise sans argument ; il attends simplement que l'utilisateur presse une touche, et renvoie le code ASCII du caractère entré, rien de plus.
Tu l'utilise donc sans argument, tout seul, à la place de système("PAUSE").

Image utilisateurGNU/Image utilisateurLinux - Image utilisateurDebian - Image utilisateurGNOME - Image utilisateurGTK+ - C - BaSH - Image utilisateurPython - Image utilisateur GIMP - Image utilisateur Blender

Ma bannière est inspirée de celle de iKs. D'ailleurs, si ça te dérange fais-le moi savoir, j'en changerai.
 
Hors ligne yoch # Posté le 03/07/2008 à 22:35:14
Avatar
Groupe : Membres
La fonction getchar peut poser quelque soucis si stdin (tampon clavier) n'est pas vide...
De plus, pas de message personnalisé comme system("pause")

C'est pourquoi, personnellement, j'utilise ne petite fonction pour remplacer system("pause") :

Code : C
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#include <stdio.h>

/* fonction pour remplacer system("pause");*/
void pause (void)
{
    int c;
    /* mange le tampon clavier par securite */
    while ((c = getchar()) != '\n' && c != EOF); 
    puts("Appuyez sur [Entree] pour continuer...");
    /* attends une entrée clavier terminée par la touche [Entree] */
    getchar();  
}
 
Hors ligne Mikechaos # Posté le 04/07/2008 à 06:58:04
Zah
Avatar
Groupe : Membres
Le problème avec cette fonction, c'est que si le tampon stdin est vide, il y a deux getchar qui nécessite l'appuie de la touche entrée. Le premier, celui dans le boucle et le deuxième, comme normalement.

Normalement, le tampon stdin doit toujours être vide. S'il ne l'est pas, c'est que les entrées sont mal gérées.

Citation : Le P.O.
Pour les entrée sécurisée j'ai lu le tuto mais je comprend pas si je dois utiliser scanf(); ou fgets.

Ce n'est même pas une question. Dans tous les cas, tu utilises fgets.
Le jour où tu sauras utiliser scanf correctement (ce qui peut être plutôt compliqué), tu pourras alors te poser cette question. Mais rendu à ce point, tu devrais être capable d'y répondre seul.

Bonne continuation.

Citation : Einstein
Il y a deux choses d'infinies.
-L'univers
-La bêtise humaine
Bien que pour l'univers, rien n'est encore sûr.

Citation : Socrate
Le premier pas vers la connaissance,
c'est d'admettre qu'on ne sait rien
 
Hors ligne -ed- # Posté le 04/07/2008 à 08:50:56
C is a sharp tool
Avatar
Groupe : Membres
Citation : Mikechaos
Le problème avec cette fonction, c'est que si le tampon stdin est vide, il y a deux getchar qui nécessite l'appuie de la touche entrée. Le premier, celui dans le boucle et le deuxième, comme normalement.

Normalement, le tampon stdin doit toujours être vide. S'il ne l'est pas, c'est que les entrées sont mal gérées.

réponse intelligente détectée
Édité le 04/07/2008 à 08:51:09 par -ed-

Emmanuel Delahaye.
Non à la pub sur l'alcool sur Internet.

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


Image utilisateur
 
Hors ligne nono42 # Posté le 04/07/2008 à 17:23:01
Avatar
Groupe : Membres
Salut,
Alors déjà le niveau 3 n'est pas tout a fait terminé... :D
Autrement pour Getchar je dois faire
Code : C
1
2
3
4
int c;
while ((c = getchar()) != '\n' && c != EOF); 
puts("Appuyez sur Entree pour continuer...");
getchar();
(c'est bien plus long que system ("PAUSE"); ... ) et en plus tout marche bien pour la première fois mais après quand je met une deuxième fois int c; y'a une erreur. Donc je le met une fois et donc sa fait l'erreur... :( :(
Mais je comprend toujours pas comment remplacer system ("CLS"); par getchar(); :(
@++ et merci d'avance.





Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne Mikechaos # Posté le 04/07/2008 à 17:42:18
Zah
Avatar
Groupe : Membres
Citation : nono42
Autrement pour Getchar je dois faire
Code : C
1
2
3
4
int c;
while ((c = getchar()) != '\n' && c != EOF); 
puts("Appuyez sur Entree pour continuer...");
getchar();
(c'est bien plus long que system ("PAUSE"); ... ) et en plus tout marche bien pour la première fois mais après quand je met une deuxième fois int c; y'a une erreur. Donc je le met une fois et donc sa fait l'erreur... :( :(

Bon arrête de faire n'importe quoi et réfléchit deux secondes.
Que fait c = getchar()?
Réponse : (tu devrais l'avoir trouvé seul...) la même chose que c = fgetc(stdin) ou encore scanf("%c", &c).

Les deux premières servent à manger tout caractère étant resté dans le tampon stdin.
Par contre, comme je l'ai mentionné, s'il reste un caractère dans stdin, c'est que les entrées ont été mal gérées. Tu peux donc supprimer ces deux lignes.
Si tu ne savais pas à quoi elle servait, je te conseil fortement d'aller lire, au moins, l'annexe 3 du tuto.

Ce qui donne :
Code : C
1
2
printf("Appuyez sur la touche [Entree] pour continuer\n");
getchar();


Citation : nono42
Mais je comprend toujours pas comment remplacer system ("CLS"); par getchar(); :(

....
Qui t'a dit que getchar pouvait remplacé system("CLS"); ?...
Pour efface l'écran de façon portable, le plus simple reste une boucle for qui s'exécute une vingtaine de fois (une centaine pour un effacement plus complet...) et contenant l'instruction printf("\n");
Cela va rajouter des lignes vides qui donneront presque le même effet.

Sinon, fait une recherche sur le forum. Il est mentionné de nombreuse fois comment effacer l'écran de façon portable...

Citation : Einstein
Il y a deux choses d'infinies.
-L'univers
-La bêtise humaine
Bien que pour l'univers, rien n'est encore sûr.

Citation : Socrate
Le premier pas vers la connaissance,
c'est d'admettre qu'on ne sait rien
 
Hors ligne nono42 # Posté le 04/07/2008 à 22:33:30
Avatar
Groupe : Membres
Salut :) ,
Alors oui j'ai fait comme tu m'a dit et tout marche :D
Franchement ce que j'ai compris dans ce code y'a que puts("Appuyez sur Entree pour continuer..."); ... et un piti peu c != EOF); (moi je pense que EOF = Entrée... )
Pour CLS j'ai trouver Sleep() pour windows, sleep() pour linux et mac et voilà... donc j'ai pour l'instant laissé system("CLS"); ...
A l'heure ou je vous parle je suis en train de faire la Partie 4: Chance ou pas ? Le loto vous le dira. :D :D
Qui cependant a un bug:
Code : C
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
while (!reponsequestion)
{
printf("Vous choisissez -=> ");
int c;
scanf("%1d", &question1);
switch (question1)
{
       case 1 :
            printf("\n\n\n-Ah, dommage monsieur 42 ! Recommencez!\n\n");
            break;
       case 2 :
            printf("\n\n\n-Bof! Tu pouvais faire mieux. Allez Zouuu recommence !!!\n\n");
            break;
       case 3 :
            printf("\n\n\n-Bravo!\n\n\n");
            puts("Appuyez sur Entree pour continuer...");
            getchar(); 
            reponsequestion = 1;
            break;
       default :
               printf("-\n\n\nLoupez monsieur 42, en plus t'as tape n'importe quoi !\n\n");
               break;
               }
}

Je ne vous montre pas ça pour que vous le corrigiez, pour vous dire que je vais juste bloquer ici pendant un bout de temps :D

Bon allé @++ :)
Édité le 05/07/2008 à 13:32:28 par nono42

Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne Dark Patate # Posté le 05/07/2008 à 12:01:32
Longue vie à Dark patate!
Avatar
Groupe : Membres
déjà il y a une faute de conjugaison "t'a" au lieu de "t'as"

VIVE LA REPUBLIQUE ET VIVE LA FRANCE, allons enfants de la patriiiiie le jour de gloire est arrivé...

Image utilisateur
Piquée à Vodka Orange (Merci pour cette superbe usebar)

 
Hors ligne Le Taoiste # Posté le 05/07/2008 à 20:12:16
Avatar
Groupe : Membres
Citation : nono42
Pour CLS j'ai trouver Sleep() pour windows, sleep() pour linux et mac et voilà...

Euh... il n'y a aucun rapport entre la commande system("CLS"); et la commande Sleep. La première permettant d'effacer le contenu de la console, la deuxième permettant de faire une pause d'un temps définit.
Citation : nono42
Mais je comprend toujours pas comment remplacer system ("CLS"); par getchar();

Sinon, la commande getchar permet de faire une pause tant que l'utilisateur n'a pas appuyé sur une touche.
Alors ne met pas non plus la commande CLS et la commande getchar en rapport, il n'y en a aucun.

Prends garde lorsque tu apprends des nouvelles fonctions, à ne pas les mélanger. Quand je t'ai parlé de getchar, c'était pour remplacer ta fonction system("PAUSE"); [en passant getchar s'utilise comme ceci : getchar();]. Ce n'était en aucun cas pour effacer la console.

Image utilisateur
 
Hors ligne Lewis123 # Posté le 05/07/2008 à 20:26:43
Avatar
Groupe : Membres
Ton lien est aussi mort qu'un poisson rouge de 28 ans. ^^

Keyboard not found, press any key to continue...

 
Hors ligne nono42 # Posté le 05/07/2008 à 21:40:14
Avatar
Groupe : Membres
Salut,
Ok la prochaine je ferrais attention :D
Mais mon lien n'est pas mort comme un poisson panné
Édité le 07/07/2008 à 17:19:26 par nono42

Projet en cour: Super 42
Avancement |||||||||| 29%
(Bloqué à la partie 4 )
 
Hors ligne plebraly # Posté le 05/07/2008 à 21:52:35
Planète Verte avance !
Avatar
Groupe : Membres
les poissons rouges vivent jusqu' a 37 ans!

Image utilisateur
 

Retour au forum "Langage C" ou à la liste des forums

Vous devez être inscrit pour pouvoir poster des messages

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | 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 141 Zéros connectés | Requêtes SQL 7 requêtes | Temps de génération de la page : Total (SQL) 0.1742s (0.1575s)