Indented with src/scripts/indent-emp.

This commit is contained in:
Markus Armbruster 2003-09-02 20:48:48 +00:00
parent 5f263a7753
commit 9b7adfbecc
437 changed files with 52211 additions and 51052 deletions

View file

@ -47,18 +47,18 @@
* Things common to a loan or treaty.
*/
struct ltcomstr {
int type; /* EF_LOAN or EF_TREATY */
int num; /* number */
s_char *name; /* "loan" or "treaty" */
s_char *Name; /* "Loan" or "Treaty" */
natid proposer; /* country offering */
natid proposee; /* country offered to */
natid mailee; /* who gets mail about it */
s_char op; /* 'a', 'd', or 'p' */
union {
struct lonstr l; /* the loan */
struct trtstr t; /* the treaty */
} u;
int type; /* EF_LOAN or EF_TREATY */
int num; /* number */
s_char *name; /* "loan" or "treaty" */
s_char *Name; /* "Loan" or "Treaty" */
natid proposer; /* country offering */
natid proposee; /* country offered to */
natid mailee; /* who gets mail about it */
s_char op; /* 'a', 'd', or 'p' */
union {
struct lonstr l; /* the loan */
struct trtstr t; /* the treaty */
} u;
};
static int cons_choose(struct ltcomstr *ltcp);
@ -75,32 +75,31 @@ static void prev_signed(struct ltcomstr *ltcp);
int
cons(void)
{
int rv;
struct ltcomstr ltc;
rv = cons_choose(&ltc);
if (rv != RET_OK)
return rv;
switch (ltc.op) {
case 'a':
rv = (ltc.type == EF_TREATY) ? treaty_accept(&ltc)
: loan_accept(&ltc);
break;
case 'd':
rv = (ltc.type == EF_TREATY) ? treaty_decline(&ltc)
: loan_decline(&ltc);
break;
case 'p':
rv = postpone(&ltc);
break;
default:
pr("Bad operation %c from cons_choose; get help!\n",
ltc.op);
break;
};
int rv;
struct ltcomstr ltc;
rv = cons_choose(&ltc);
if (rv != RET_OK)
return rv;
switch (ltc.op) {
case 'a':
rv = (ltc.type == EF_TREATY) ? treaty_accept(&ltc)
: loan_accept(&ltc);
break;
case 'd':
rv = (ltc.type == EF_TREATY) ? treaty_decline(&ltc)
: loan_decline(&ltc);
break;
case 'p':
rv = postpone(&ltc);
break;
default:
pr("Bad operation %c from cons_choose; get help!\n", ltc.op);
break;
};
return rv;
}
/*
@ -111,83 +110,83 @@ cons(void)
static int
cons_choose(struct ltcomstr *ltcp)
{
s_char *p;
extern int disloan();
extern int distrea();
int (*dis)();
struct lonstr *lp;
struct trtstr *tp;
s_char prompt[128];
s_char buf[1024];
s_char *p;
extern int disloan();
extern int distrea();
int (*dis) ();
struct lonstr *lp;
struct trtstr *tp;
s_char prompt[128];
s_char buf[1024];
bzero((s_char *)ltcp, sizeof (*ltcp));
if (getstarg(player->argp[1], "loan or treaty? ", buf) == 0)
return RET_SYN;
ltcp->type = ef_byname(buf);
switch (ltcp->type) {
case EF_TREATY:
if (!opt_TREATIES) {
pr("Treaties are not enabled.\n");
return RET_FAIL;
}
ltcp->name = "treaty";
ltcp->Name = "Treaty";
dis = distrea;
break;
case EF_LOAN:
if (!opt_LOANS) {
pr("Loans are not enabled.\n");
return RET_FAIL;
}
ltcp->name = "loan";
ltcp->Name = "Loan";
dis = disloan;
break;
default:
pr("You must specify \"loan\" or \"treaty\".\n");
return RET_SYN;
bzero((s_char *)ltcp, sizeof(*ltcp));
if (getstarg(player->argp[1], "loan or treaty? ", buf) == 0)
return RET_SYN;
ltcp->type = ef_byname(buf);
switch (ltcp->type) {
case EF_TREATY:
if (!opt_TREATIES) {
pr("Treaties are not enabled.\n");
return RET_FAIL;
}
sprintf(prompt, "%s number? ", ltcp->Name);
if ((ltcp->num = onearg(player->argp[2], prompt)) < 0)
return RET_SYN;
if (!ef_read(ltcp->type, ltcp->num, (caddr_t)&ltcp->u) ||
!(*dis)(ltcp->num, &ltcp->u)) {
pr("%s #%d is not being offered to you!\n",
ltcp->Name, ltcp->num);
return RET_SYN;
ltcp->name = "treaty";
ltcp->Name = "Treaty";
dis = distrea;
break;
case EF_LOAN:
if (!opt_LOANS) {
pr("Loans are not enabled.\n");
return RET_FAIL;
}
switch (ltcp->type) {
case EF_LOAN:
lp = &ltcp->u.l;
if (lp->l_status == LS_SIGNED) {
pr("That loan has already been accepted!\n");
return RET_FAIL;
}
ltcp->proposer = lp->l_loner;
ltcp->proposee = lp->l_lonee;
break;
case EF_TREATY:
tp = &ltcp->u.t;
if (tp->trt_status == TS_SIGNED) {
pr("That treaty has already been accepted!\n");
return RET_FAIL;
}
ltcp->proposer = tp->trt_cna;
ltcp->proposee = tp->trt_cnb;
break;
ltcp->name = "loan";
ltcp->Name = "Loan";
dis = disloan;
break;
default:
pr("You must specify \"loan\" or \"treaty\".\n");
return RET_SYN;
}
sprintf(prompt, "%s number? ", ltcp->Name);
if ((ltcp->num = onearg(player->argp[2], prompt)) < 0)
return RET_SYN;
if (!ef_read(ltcp->type, ltcp->num, (caddr_t)&ltcp->u) ||
!(*dis) (ltcp->num, &ltcp->u)) {
pr("%s #%d is not being offered to you!\n", ltcp->Name, ltcp->num);
return RET_SYN;
}
switch (ltcp->type) {
case EF_LOAN:
lp = &ltcp->u.l;
if (lp->l_status == LS_SIGNED) {
pr("That loan has already been accepted!\n");
return RET_FAIL;
}
ltcp->mailee = (ltcp->proposer == player->cnum)
? ltcp->proposee : ltcp->proposer;
while ((p = getstarg(player->argp[3], "Accept, decline or postpone? ", buf)) && *p)
{
if (*p == 'a' || *p == 'd' || *p == 'p')
break;
player->argp[3] = 0;
ltcp->proposer = lp->l_loner;
ltcp->proposee = lp->l_lonee;
break;
case EF_TREATY:
tp = &ltcp->u.t;
if (tp->trt_status == TS_SIGNED) {
pr("That treaty has already been accepted!\n");
return RET_FAIL;
}
if (p == 0 || *p == 0)
return RET_SYN;
ltcp->op = *p;
return RET_OK;
ltcp->proposer = tp->trt_cna;
ltcp->proposee = tp->trt_cnb;
break;
}
ltcp->mailee = (ltcp->proposer == player->cnum)
? ltcp->proposee : ltcp->proposer;
while ((p =
getstarg(player->argp[3], "Accept, decline or postpone? ",
buf)) && *p) {
if (*p == 'a' || *p == 'd' || *p == 'p')
break;
player->argp[3] = 0;
}
if (p == 0 || *p == 0)
return RET_SYN;
ltcp->op = *p;
return RET_OK;
}
/*
@ -198,60 +197,59 @@ cons_choose(struct ltcomstr *ltcp)
static int
loan_accept(struct ltcomstr *ltcp)
{
struct lonstr *lp;
struct natstr *lender;
struct nstr_item nstr;
struct lonstr loan;
struct lonstr *lp;
struct natstr *lender;
struct nstr_item nstr;
struct lonstr loan;
lp = &ltcp->u.l;
if (ltcp->proposee != player->cnum) {
pr("%s %d is still pending.\n", ltcp->Name, ltcp->num);
return RET_OK;
}
if (!getloan(ltcp->num, (caddr_t)lp)) {
pr("loan_accept: can't read loan; get help!\n");
return RET_SYS;
}
if (lp->l_status == LS_FREE) { /* other guy retratcted already */
late(ltcp);
return RET_OK;
}
if (lp->l_status == LS_SIGNED) { /* already signed somehow */
prev_signed(ltcp);
return RET_OK;
}
/* check to see if a loan already exists */
snxtitem_all(&nstr, EF_LOAN);
while (nxtitem(&nstr, (s_char *) &loan)) {
if (loan.l_status == LS_SIGNED && loan.l_lonee == lp->l_loner
&& (loan.l_loner == lp->l_lonee)) {
pr("He already owes you money - make him repay his loan!\n");
return RET_OK;
}
}
lender = getnatp(ltcp->proposer);
if (lender->nat_money < lp->l_amtdue) { /* other guy is poor */
lp->l_amtdue = lender->nat_money - 100;
pr("%s no longer has the funds.\n", cname(ltcp->proposer));
if (lp->l_amtdue <= 0)
return RET_FAIL;
pr("You may borrow $%d at the same terms.\n",
lp->l_amtdue);
}
lender->nat_money -= lp->l_amtdue;
putnat(lender);
player->dolcost -= lp->l_amtdue;
lp->l_amtpaid = 0;
(void) time(&lp->l_lastpay);
lp->l_duedate = lp->l_ldur * 86400 + lp->l_lastpay;
lp->l_status = LS_SIGNED;
if (!putloan(ltcp->num, (s_char *)lp)) {
pr("Problem writing lp->to disk; get help!\n");
return RET_FAIL;
}
accpt(ltcp);
pr("You are now $%d richer (sort of).\n", lp->l_amtdue);
lp = &ltcp->u.l;
if (ltcp->proposee != player->cnum) {
pr("%s %d is still pending.\n", ltcp->Name, ltcp->num);
return RET_OK;
}
if (!getloan(ltcp->num, (caddr_t)lp)) {
pr("loan_accept: can't read loan; get help!\n");
return RET_SYS;
}
if (lp->l_status == LS_FREE) { /* other guy retratcted already */
late(ltcp);
return RET_OK;
}
if (lp->l_status == LS_SIGNED) { /* already signed somehow */
prev_signed(ltcp);
return RET_OK;
}
/* check to see if a loan already exists */
snxtitem_all(&nstr, EF_LOAN);
while (nxtitem(&nstr, (s_char *)&loan)) {
if (loan.l_status == LS_SIGNED && loan.l_lonee == lp->l_loner
&& (loan.l_loner == lp->l_lonee)) {
pr("He already owes you money - make him repay his loan!\n");
return RET_OK;
}
}
lender = getnatp(ltcp->proposer);
if (lender->nat_money < lp->l_amtdue) { /* other guy is poor */
lp->l_amtdue = lender->nat_money - 100;
pr("%s no longer has the funds.\n", cname(ltcp->proposer));
if (lp->l_amtdue <= 0)
return RET_FAIL;
pr("You may borrow $%d at the same terms.\n", lp->l_amtdue);
}
lender->nat_money -= lp->l_amtdue;
putnat(lender);
player->dolcost -= lp->l_amtdue;
lp->l_amtpaid = 0;
(void)time(&lp->l_lastpay);
lp->l_duedate = lp->l_ldur * 86400 + lp->l_lastpay;
lp->l_status = LS_SIGNED;
if (!putloan(ltcp->num, (s_char *)lp)) {
pr("Problem writing lp->to disk; get help!\n");
return RET_FAIL;
}
accpt(ltcp);
pr("You are now $%d richer (sort of).\n", lp->l_amtdue);
return RET_OK;
}
/*
@ -260,25 +258,25 @@ loan_accept(struct ltcomstr *ltcp)
static int
loan_decline(struct ltcomstr *ltcp)
{
struct lonstr *lp;
struct lonstr *lp;
lp = &ltcp->u.l;
if (!getloan(ltcp->num, lp)) {
pr("Decline: can't read loan; get help!\n");
return RET_SYS;
}
/* loan got accepted somehow between now and last time we checked */
if (lp->l_status == LS_SIGNED) {
late(ltcp);
return RET_OK;
}
lp->l_status = LS_FREE;
if (!putloan(ltcp->num, lp)) {
pr("loan_decline: can't write loan; get help!\n");
return RET_SYS;
}
decline(ltcp);
lp = &ltcp->u.l;
if (!getloan(ltcp->num, lp)) {
pr("Decline: can't read loan; get help!\n");
return RET_SYS;
}
/* loan got accepted somehow between now and last time we checked */
if (lp->l_status == LS_SIGNED) {
late(ltcp);
return RET_OK;
}
lp->l_status = LS_FREE;
if (!putloan(ltcp->num, lp)) {
pr("loan_decline: can't write loan; get help!\n");
return RET_SYS;
}
decline(ltcp);
return RET_OK;
}
/*
@ -287,33 +285,33 @@ loan_decline(struct ltcomstr *ltcp)
static int
treaty_accept(struct ltcomstr *ltcp)
{
struct trtstr *tp;
struct trtstr *tp;
tp = &ltcp->u.t;
if (ltcp->proposee != player->cnum) {
pr("%s %d is still pending.\n", ltcp->Name, ltcp->num);
return RET_OK;
}
if (!gettre(ltcp->num, tp)) {
pr("Accept: can't read treaty; get help!\n");
return RET_SYS;
}
if (tp->trt_status == TS_FREE) { /* treaty offer withdrawn */
late(ltcp);
return RET_OK;
}
if (tp->trt_status == TS_SIGNED) { /* somehow got accepted */
prev_signed(ltcp);
return RET_OK;
}
tp->trt_status = TS_SIGNED;
if (!puttre(ltcp->num, tp)) {
pr("Problem saving treaty; get help!\n");
return RET_SYS;
}
accpt(ltcp);
pr("Treaty in effect until %s", ctime(&tp->trt_exp));
tp = &ltcp->u.t;
if (ltcp->proposee != player->cnum) {
pr("%s %d is still pending.\n", ltcp->Name, ltcp->num);
return RET_OK;
}
if (!gettre(ltcp->num, tp)) {
pr("Accept: can't read treaty; get help!\n");
return RET_SYS;
}
if (tp->trt_status == TS_FREE) { /* treaty offer withdrawn */
late(ltcp);
return RET_OK;
}
if (tp->trt_status == TS_SIGNED) { /* somehow got accepted */
prev_signed(ltcp);
return RET_OK;
}
tp->trt_status = TS_SIGNED;
if (!puttre(ltcp->num, tp)) {
pr("Problem saving treaty; get help!\n");
return RET_SYS;
}
accpt(ltcp);
pr("Treaty in effect until %s", ctime(&tp->trt_exp));
return RET_OK;
}
/*
@ -322,25 +320,25 @@ treaty_accept(struct ltcomstr *ltcp)
static int
treaty_decline(struct ltcomstr *ltcp)
{
struct trtstr *tp;
struct trtstr *tp;
tp = &ltcp->u.t;
if (!gettre(ltcp->num, tp)) {
pr("Decline: can't read treaty; get help!\n");
return RET_SYS;
}
/* treaty got signed somehow between now and last time we read it */
if (tp->trt_status == TS_SIGNED) {
late(ltcp);
return RET_OK;
}
tp->trt_status = TS_FREE;
if (!puttre(ltcp->num, tp)) {
pr("Problem saving treaty; get help!\n");
return RET_SYS;
}
decline(ltcp);
tp = &ltcp->u.t;
if (!gettre(ltcp->num, tp)) {
pr("Decline: can't read treaty; get help!\n");
return RET_SYS;
}
/* treaty got signed somehow between now and last time we read it */
if (tp->trt_status == TS_SIGNED) {
late(ltcp);
return RET_OK;
}
tp->trt_status = TS_FREE;
if (!puttre(ltcp->num, tp)) {
pr("Problem saving treaty; get help!\n");
return RET_SYS;
}
decline(ltcp);
return RET_OK;
}
/*
@ -349,11 +347,11 @@ treaty_decline(struct ltcomstr *ltcp)
static int
postpone(struct ltcomstr *ltcp)
{
pr("%s %d is still pending.\n", ltcp->Name, ltcp->num);
if (ltcp->proposee == player->cnum)
wu(0, ltcp->proposer, "%s %d considered by %s\n",
ltcp->name, ltcp->num, cname(player->cnum));
return RET_OK;
pr("%s %d is still pending.\n", ltcp->Name, ltcp->num);
if (ltcp->proposee == player->cnum)
wu(0, ltcp->proposer, "%s %d considered by %s\n",
ltcp->name, ltcp->num, cname(player->cnum));
return RET_OK;
}
/*
@ -363,9 +361,9 @@ postpone(struct ltcomstr *ltcp)
static void
late(struct ltcomstr *ltcp)
{
pr("Too late; that %s %s!\n", ltcp->name,
(ltcp->op == 'a') ? "is no longer being offered"
: "has already been accepted");
pr("Too late; that %s %s!\n", ltcp->name,
(ltcp->op == 'a') ? "is no longer being offered"
: "has already been accepted");
}
/*
@ -374,7 +372,7 @@ late(struct ltcomstr *ltcp)
static void
prev_signed(struct ltcomstr *ltcp)
{
pr("%s #%d is already in effect.\n", ltcp->Name, ltcp->num);
pr("%s #%d is already in effect.\n", ltcp->Name, ltcp->num);
}
/*
@ -384,17 +382,16 @@ prev_signed(struct ltcomstr *ltcp)
static void
decline(struct ltcomstr *ltcp)
{
if (ltcp->proposee == player->cnum) {
wu(0, ltcp->proposer, "%s %d refused by %s\n",
ltcp->Name, ltcp->num, cname(player->cnum));
pr("%s %d refused.\n", ltcp->Name, ltcp->num);
} else {
wu(0, ltcp->proposee,
"%s offer %d retracted by %s\n",
ltcp->Name, ltcp->num, cname(player->cnum));
pr("%s offer %d retracted.\n",
ltcp->Name, ltcp->num);
}
if (ltcp->proposee == player->cnum) {
wu(0, ltcp->proposer, "%s %d refused by %s\n",
ltcp->Name, ltcp->num, cname(player->cnum));
pr("%s %d refused.\n", ltcp->Name, ltcp->num);
} else {
wu(0, ltcp->proposee,
"%s offer %d retracted by %s\n",
ltcp->Name, ltcp->num, cname(player->cnum));
pr("%s offer %d retracted.\n", ltcp->Name, ltcp->num);
}
}
/*
@ -405,10 +402,10 @@ decline(struct ltcomstr *ltcp)
static void
accpt(struct ltcomstr *ltcp)
{
if (ltcp->type == EF_LOAN)
nreport(ltcp->proposer, N_MAKE_LOAN, player->cnum, 1);
else
nreport(player->cnum, N_SIGN_TRE, ltcp->mailee, 1);
wu(0, ltcp->mailee, "%s #%d accepted by %s\n",
ltcp->Name, ltcp->num, cname(player->cnum));
if (ltcp->type == EF_LOAN)
nreport(ltcp->proposer, N_MAKE_LOAN, player->cnum, 1);
else
nreport(player->cnum, N_SIGN_TRE, ltcp->mailee, 1);
wu(0, ltcp->mailee, "%s #%d accepted by %s\n",
ltcp->Name, ltcp->num, cname(player->cnum));
}