maitretarot-devel-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Maitretarot-devel-fr] erreur dans la definition des cartes.


From: Yves Mettier
Subject: Re: [Maitretarot-devel-fr] erreur dans la definition des cartes.
Date: Sun, 10 Mar 2002 20:55:22 +0100

On Sun, 10 Mar 2002 19:25:52 +0100
philippe brochard <address@hidden> wrote:

> 
> salut,
> 
> je vient de finir la definition des cartes dans mt_ncurses_client
> et je me suis rendu compte qu'il y a une erreur dans le protocole :
> 
> le 21 et l'excuse sont decalés d'un cran :
> 
> 
> Ordre des cartes:
> =================
> 
> 00 1 de trefle
> 01 2 de trefle
> 13 roi de trefle
> 14 1 de pique
> 15 2 de pique
> 27 roi de pique
> 28 1 de coeur
> 42 1 de carreau
> 56 atout 1
> 57 atout 2
> 77 atout 21   ->      76 atout 21
> 78 excuse     ->      77 excuse
> 
> 
> sinon, j'ai utilisé les definitions suivantes :
> 
> --------------------------------------------------
> /* Define the card game */
> #define CLUB    0
> #define SPADE   14
> #define HEART   28
> #define DIAMOND 42
> #define TRUMP   56
> #define FOOL    77
> 
> /* K:King, Q:Queen, C:Cavalier, J:Jack, F:Fool */
> #define _(K) K
> #define _(Q) Q
> #define _(C) C
> #define _(J) J
> #define _(F) F
> 
> /* c:Club/Trefle, s:Spade/Pique, h:Heart/Coeur, d:Diamond/Carreau */
> #define _(c) c
> #define _(s) s
> #define _(h) h
> #define _(d) d

Non, faux.
Tu viens de declarer la macro _ une tonne de fois.
Tu fais un seul #define _(a) a
Et apres, quand tu utilises _("coucou"), il remplace ca par "coucou".
Entre
#define _(a) a
et
char * _(char *a) { return a; }
y'a pas beaucoup de difference. Sauf que le #define est moins chiant.

> 
> /* card string name and color */
> extern char card_str[FOOL + 1][4];
> extern int card_color[FOOL + 1];
> --------------------------------------------------
> 
> 
> euh, c'est comme ça qu'il faut déclarer les chaines de caracteres
> pour gettext ?
> 
> je les utilisent comme ça ensuite :
> 
>   ...
>   sprintf (card_str[i+CLUB], "%s%s", _("K"), _("c"));
>   ...

Exact. Tout juste!

lbcv,
Yves

-- 
- Homepage - http://ymettier.free.fr                   -
- GPG key  - http://ymettier.free.fr/gpg.txt           -
- MyAM     - http://www.freesoftware.fsf.org/myam      -
- GTKtalog - http://www.freesoftware.fsf.org/gtktalog  -

Attachment: pgpJ59uewpYfM.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]