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

@ -44,103 +44,103 @@
int
repa(void)
{
struct lonstr loan;
struct natstr *natp;
struct natstr *loaner;
int loan_num;
long payment;
long owe;
long due;
long last_payment;
long normaltime;
long doubletime;
double rate_per_sec,amt;
s_char *cp;
time_t now;
s_char buf[1024];
struct lonstr loan;
struct natstr *natp;
struct natstr *loaner;
int loan_num;
long payment;
long owe;
long due;
long last_payment;
long normaltime;
long doubletime;
double rate_per_sec, amt;
s_char *cp;
time_t now;
s_char buf[1024];
if (!opt_LOANS) {
pr("Loans are not enabled.\n");
return RET_FAIL;
}
natp = getnatp(player->cnum);
cp = getstarg(player->argp[1], "Repay loan #? ", buf);
if (cp == 0)
return RET_SYN;
loan_num = atoi(cp);
if (loan_num < 0)
return RET_SYN;
if (!getloan(loan_num, &loan) || loan.l_lonee != player->cnum
|| loan.l_status != LS_SIGNED) {
pr("You don't owe anything on that loan.\n");
return RET_FAIL;
}
(void) time(&now);
due = loan.l_duedate;
last_payment = loan.l_lastpay;
if (now < due) {
normaltime = now - last_payment;
doubletime = 0;
}
if (last_payment < due && due < now) {
normaltime = due - last_payment;
doubletime = now - due;
}
if (due < last_payment) {
normaltime = 0;
doubletime = now - last_payment;
}
rate_per_sec = loan.l_irate /
((double) loan.l_ldur * SECS_PER_DAY * 100.0);
if (!opt_LOANS) {
pr("Loans are not enabled.\n");
return RET_FAIL;
}
natp = getnatp(player->cnum);
cp = getstarg(player->argp[1], "Repay loan #? ", buf);
if (cp == 0)
return RET_SYN;
loan_num = atoi(cp);
if (loan_num < 0)
return RET_SYN;
if (!getloan(loan_num, &loan) || loan.l_lonee != player->cnum
|| loan.l_status != LS_SIGNED) {
pr("You don't owe anything on that loan.\n");
return RET_FAIL;
}
(void)time(&now);
due = loan.l_duedate;
last_payment = loan.l_lastpay;
if (now < due) {
normaltime = now - last_payment;
doubletime = 0;
}
if (last_payment < due && due < now) {
normaltime = due - last_payment;
doubletime = now - due;
}
if (due < last_payment) {
normaltime = 0;
doubletime = now - last_payment;
}
rate_per_sec = loan.l_irate /
((double)loan.l_ldur * SECS_PER_DAY * 100.0);
owe = (long) (loan.l_amtdue *
((double) normaltime * rate_per_sec + 1.0 +
(double) doubletime * rate_per_sec * 2.0) + 0.5);
amt = ((double) normaltime * rate_per_sec + 1.0 +
(double) doubletime * rate_per_sec * 2.0);
if (((1 << 30) / amt) < loan.l_amtdue)
owe = (1 << 30);
else
owe = (long) (loan.l_amtdue *
((double) normaltime * rate_per_sec + 1.0 +
(double) doubletime * rate_per_sec * 2.0) + 0.5);
if ((cp = getstarg(player->argp[2], "amount? ", buf)) == 0)
return RET_SYN;
if (!check_loan_ok(&loan))
return RET_FAIL;
payment = atoi(cp);
if (payment <= 0)
return RET_SYN;
if (payment > owe) {
pr("You don't owe that much.\n");
return RET_FAIL;
}
if (natp->nat_money < payment) {
pr("You only have $%d.\n", natp->nat_money);
return RET_FAIL;
}
player->dolcost += payment;
loaner = getnatp(loan.l_loner);
loaner->nat_money += payment;
putnat(loaner);
(void) time(&loan.l_lastpay);
if (owe <= payment) {
wu(0, loan.l_loner, "Country #%d paid off loan #%d with $%d\n",
player->cnum, loan_num, payment);
nreport(player->cnum, N_REPAY_LOAN, loan.l_loner, 1);
loan.l_status = LS_FREE;
loan.l_ldur = 0;
pr("Congratulations, you've paid off the loan!\n");
} else {
wu(0, loan.l_loner,
"Country #%d paid $%.2f on loan %d\n", player->cnum,
(double) payment, loan_num);
loan.l_amtdue = owe - payment;
loan.l_amtpaid += payment;
}
if (!putloan(loan_num, &loan)) {
pr("Can't save loan; get help!\n");
return RET_SYS;
}
return RET_OK;
owe = (long)(loan.l_amtdue *
((double)normaltime * rate_per_sec + 1.0 +
(double)doubletime * rate_per_sec * 2.0) + 0.5);
amt = ((double)normaltime * rate_per_sec + 1.0 +
(double)doubletime * rate_per_sec * 2.0);
if (((1 << 30) / amt) < loan.l_amtdue)
owe = (1 << 30);
else
owe = (long)(loan.l_amtdue *
((double)normaltime * rate_per_sec + 1.0 +
(double)doubletime * rate_per_sec * 2.0) + 0.5);
if ((cp = getstarg(player->argp[2], "amount? ", buf)) == 0)
return RET_SYN;
if (!check_loan_ok(&loan))
return RET_FAIL;
payment = atoi(cp);
if (payment <= 0)
return RET_SYN;
if (payment > owe) {
pr("You don't owe that much.\n");
return RET_FAIL;
}
if (natp->nat_money < payment) {
pr("You only have $%d.\n", natp->nat_money);
return RET_FAIL;
}
player->dolcost += payment;
loaner = getnatp(loan.l_loner);
loaner->nat_money += payment;
putnat(loaner);
(void)time(&loan.l_lastpay);
if (owe <= payment) {
wu(0, loan.l_loner, "Country #%d paid off loan #%d with $%d\n",
player->cnum, loan_num, payment);
nreport(player->cnum, N_REPAY_LOAN, loan.l_loner, 1);
loan.l_status = LS_FREE;
loan.l_ldur = 0;
pr("Congratulations, you've paid off the loan!\n");
} else {
wu(0, loan.l_loner,
"Country #%d paid $%.2f on loan %d\n", player->cnum,
(double)payment, loan_num);
loan.l_amtdue = owe - payment;
loan.l_amtpaid += payment;
}
if (!putloan(loan_num, &loan)) {
pr("Can't save loan; get help!\n");
return RET_SYS;
}
return RET_OK;
}