-/* $NetBSD: prop.c,v 1.10 2006/03/19 00:05:05 christos Exp $ */
+/* $NetBSD: prop.c,v 1.20 2012/06/19 05:35:32 dholland Exp $ */
/*
* Copyright (c) 1980, 1993
#if 0
static char sccsid[] = "@(#)prop.c 8.1 (Berkeley) 5/31/93";
#else
-__RCSID("$NetBSD: prop.c,v 1.10 2006/03/19 00:05:05 christos Exp $");
+__RCSID("$NetBSD: prop.c,v 1.20 2012/06/19 05:35:32 dholland Exp $");
#endif
#endif /* not lint */
#include <stdlib.h>
-#include "monop.ext"
+
+#include "monop.h"
static int value(SQUARE *);
* appropriate flags.
*/
void
-buy(player, sqrp)
- int player;
- SQUARE *sqrp;
+buy(int playernum, SQUARE *sqrp)
{
trading = FALSE;
- sqrp->owner = player;
- add_list(player, &(play[player].own_list), cur_p->loc);
+ sqrp->owner = playernum;
+ add_list(playernum, &(play[playernum].own_list), cur_p->loc);
}
/*
* This routine adds an item to the list.
*/
void
-add_list(plr, head, op_sqr)
- int plr;
- OWN **head;
- int op_sqr;
+add_list(int plr, OWN **head, int op_sqr)
{
int val;
OWN *tp, *last_tp;
OWN *op;
- op = (OWN *)calloc(1, sizeof (OWN));
+ op = calloc(1, sizeof (OWN));
if (op == NULL)
errx(1, "out of memory");
op->sqr = &board[op_sqr];
* This routine deletes property from the list.
*/
void
-del_list(plr, head, op_sqr)
- int plr;
- OWN **head;
- short op_sqr;
+del_list(int plr, OWN **head, short op_sqr)
{
OWN *op, *last_op;
break;
else
last_op = op;
- if (op) == NULL)
+ if (op == NULL)
return;
if (last_op == NULL)
*head = op->next;
* given square.
*/
static int
-value(sqp)
- SQUARE *sqp;
+value(SQUARE *sqp)
{
int sqr;
}
/*
- * This routine accepts bids for the current peice
- * of property.
+ * This routine accepts bids for the current piece of property.
*/
void
-bid()
+bid(void)
{
static bool in[MAX_PL];
int i, num_in, cur_max;
- char buf[80];
+ char buf[257];
int cur_bid;
printf("\nSo it goes up for auction. Type your bid after your name\n");
i = (i + 1) % num_play;
if (in[i]) {
do {
- (void)sprintf(buf, "%s: ", name_list[i]);
+ (void)snprintf(buf, sizeof(buf), "%s: ",
+ name_list[i]);
cur_bid = get_int(buf);
if (cur_bid == 0) {
in[i] = FALSE;
if (--num_in == 0)
break;
- }
- else if (cur_bid <= cur_max) {
+ } else if (cur_bid <= cur_max) {
printf("You must bid higher than %d "
"to stay in\n", cur_max);
printf("(bid of 0 drops you out)\n");
+ } else if (cur_bid > play[i].money) {
+ printf("You can't bid more than your cash ($%d)\n",
+ play[i].money);
+ cur_bid = -1;
}
} while (cur_bid != 0 && cur_bid <= cur_max);
cur_max = (cur_bid ? cur_bid : cur_max);
* of given player.
*/
int
-prop_worth(plp)
- PLAY *plp;
+prop_worth(PLAY *plp)
{
OWN *op;
int worth;