CARD
sorthand(CARD h[], int n)
CARD *cp, *endp;
CARD c;
makedeck(CARD d[])
shuffle(CARD d[])
CARD c;
eq(CARD a, CARD b)
isone(CARD a, CARD b[], int n)
cremove(CARD a, CARD d[], int n)
CARD crd;
static CARD Table[14];
static CARD ch[CINHAND], ph[CINHAND];
CARD crd;
int pegscore(CARD, CARD [], int, int);
int plyrhand(CARD [], char *);
void prcard(WINDOW *, int, int, CARD, bool);
void prhand(CARD [], int, WINDOW *, bool);
void printcard(WINDOW *, int, CARD, bool);
int scorehand(CARD [], CARD, int, bool, bool);
void shuffle(CARD []);
void sorthand(CARD [], int);
extern CARD deck[ CARDS ]; /* a deck */
extern CARD phand[ FULLHAND ]; /* player's hand */
extern CARD chand[ FULLHAND ]; /* computer's hand */
extern CARD crib[ CINHAND ]; /* the crib */
extern CARD turnover; /* the starter */
extern CARD known[ CARDS ]; /* cards we have seen */
int adjust(CARD [], CARD);
int anymove(CARD [], int, int);
int anysumto(CARD [], int, int, int);
int cchose(CARD [], int, int);
int comphand(CARD [], char *);
void cremove(CARD, CARD [], int);
int eq(CARD, CARD);
int fifteens(CARD [], int);
int incard(CARD *);
int infrom(CARD [], int, char *);
int isone(CARD, CARD [], int);
void makedeck(CARD []);
void makeknown(CARD [], int);
int msgcard(CARD, bool);
int msgcrd(CARD, bool, char *, bool);
int numofval(CARD [], int, int);
int pairuns(CARD [], int);
CARD chand[FULLHAND]; /* computer's hand */
CARD crib[CINHAND]; /* the crib */
CARD deck[CARDS]; /* a deck */
CARD known[CARDS]; /* cards we have seen */
CARD phand[FULLHAND]; /* player's hand */
CARD turnover; /* the starter */
printcard(WINDOW *win, int cardno, CARD c, bool blank)
prcard(WINDOW *win, int y, int x, CARD c, bool blank)
prhand(CARD h[], int n, WINDOW *win, bool blank)
infrom(CARD hand[], int n, char *prompt)
CARD crd;
incard(CARD *crd)
msgcard(CARD c, bool brief)
msgcrd(CARD c, bool brfrank, char *mid, bool brfsuit)
CARD h[(CINHAND + 1)];
fifteens(CARD hand[], int n)
CARD *endp;
pairuns(CARD h[], int n)
pegscore(CARD crd, CARD tbl[], int n, int sum)
adjust(CARD cb[], CARD tnv)
scorehand(CARD hand[], CARD starter, int n, bool crb, bool do_explain)
plyrhand(CARD hand[], char *s)
comphand(CARD h[], char *s)
CARD d[CARDS], h[FULLHAND], cb[2];
anymove(CARD hand[], int n, int sum)
anysumto(CARD hand[], int n, int s, int t)
numofval(CARD h[], int n, int v)
makeknown(CARD h[], int n)
cchose(CARD h[], int n, int s)
CARD bat, spd, card;
canplay(const PLAY *pp, const PLAY *op, CARD card)
CARD card;
CARD safe, oppos;
const CARD Opposite[NUM_CARDS] = { /* Opposites of each card */
CARD Discard, /* Top of discard pile */
CARD card;
CARD temp;
CARD hand[HAND_SZ];
CARD sh_hand[HAND_SZ];
CARD battle;
CARD sh_battle;
CARD speed;
CARD sh_speed;
extern CARD Deck[DECK_SZ], Discard, Sh_discard, *Topcard;
extern const CARD Opposite[NUM_CARDS];
void account(CARD);
int canplay(const PLAY *, const PLAY *, CARD);
CARD getcard(void);
int is_repair(CARD);
int safety(CARD);
void show_card(int, int, CARD, CARD *);
void sort(CARD *);
CARD
CARD card;
CARD card;
account(CARD card)
CARD oppos;
sort(CARD *hand)
CARD *cp, *tp;
CARD temp;
show_card(int y, int x, CARD c, CARD *lc)
is_repair(CARD card)
safety(CARD card)