CARD
is_one(CARD a, const CARD b[], int n)
cremove(CARD a, CARD d[], int n)
sorthand(CARD h[], int n)
CARD *cp, *endp;
CARD c;
makedeck(CARD d[])
shuffle(CARD d[])
CARD c;
eq(CARD a, CARD b)
CARD crd;
static CARD Table[14];
static CARD ch[CINHAND], ph[CINHAND];
CARD crd;
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(const CARD [], CARD);
int anymove(const CARD [], int, int);
int cchose(const CARD [], int, int);
int comphand(const CARD [], const char *);
void cremove(CARD, CARD [], int);
int infrom(const CARD [], int, const char *);
int is_one(CARD, const CARD [], int);
void makedeck(CARD []);
void makeknown(const CARD [], int);
int msgcard(CARD, BOOLEAN);
int pegscore(CARD, const CARD [], unsigned, int);
int plyrhand(const CARD [], const char *);
void prcard(WINDOW *, int, int, CARD, BOOLEAN);
void prhand(const CARD [], unsigned, WINDOW *, BOOLEAN);
int scorehand(const CARD [], CARD, int, BOOLEAN, BOOLEAN);
void shuffle(CARD []);
void sorthand(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 */
msgcrd(CARD c, BOOLEAN brfrank, const char *mid, BOOLEAN brfsuit)
printcard(WINDOW *win, unsigned cardno, CARD c, BOOLEAN blank)
prcard(WINDOW *win, int y, int x, CARD c, BOOLEAN blank)
prhand(const CARD h[], unsigned n, WINDOW *win, BOOLEAN blank)
infrom(const CARD hand[], int n, const char *prompt)
CARD crd;
incard(CARD *crd)
static int msgcrd(CARD, BOOLEAN, const char *, BOOLEAN);
static void printcard(WINDOW *, unsigned, CARD, BOOLEAN);
static int incard(CARD *);
msgcard(CARD c, BOOLEAN brief)
scorehand(const CARD hand[], CARD starter, int n, BOOLEAN crb,
CARD h[(CINHAND + 1)];
fifteens(const CARD hand[], int n)
const CARD *endp;
pairuns(const CARD h[], int n)
pegscore(CARD crd, const CARD tbl[], unsigned n, int sum)
adjust(const CARD cb[], CARD tnv __unused)
static int fifteens(const CARD [], int);
static int pairuns(const CARD [], int);
plyrhand(const CARD hand[], const char *s)
comphand(const CARD h[], const char *s)
CARD d[CARDS], h[FULLHAND], cb[2];
anymove(const CARD hand[], int n, int sum)
anysumto(const CARD hand[], int n, int s, int t)
numofval(const CARD h[], int n, int v)
makeknown(const CARD h[], int n)
static int anysumto(const CARD[], int, int, int);
static int numofval(const CARD[], int, int);
cchose(const CARD h[], int n, int s)
CARD bat, spd, card;
canplay(const PLAY *pp, const PLAY *op, CARD card)
CARD card;
CARD safe, oppos;
CARD Discard, /* Top of discard pile */
const CARD Opposite[NUM_CARDS] = { /* Opposites of each card */
CARD Deck[DECK_SZ] = { /* Current deck */
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 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)
static void show_card(int, int, CARD, CARD *);
is_repair(CARD card)
safety(CARD card)