From ada0ed8e610b239969908d600f86465a034a941e Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sun, 30 Oct 2005 14:33:44 +0000 Subject: [PATCH] (buy, check_market, trad, check_trade): Remove the following virtually undocumented feature: When a buyer didn't have enough money at the time of the trade, the seller *automatically* granted a high-interest, medium term loan for up to 90% of the price. This is just a silly trap for unwary sellers and buyers alike. (N_FIN_TROUBLE, N_CREDIT_JUNK): Unused, remove. (rpt): Update accordingly. --- include/news.h | 4 +-- info/Commands/buy.t | 5 --- info/Commands/newspaper.t | 4 +-- info/Commands/trade.t | 5 --- src/lib/commands/buy.c | 66 --------------------------------------- src/lib/commands/trad.c | 66 --------------------------------------- src/lib/global/news.c | 6 ++-- 7 files changed, 5 insertions(+), 151 deletions(-) diff --git a/include/news.h b/include/news.h index 660ec6d26..24eb3bedc 100644 --- a/include/news.h +++ b/include/news.h @@ -137,8 +137,8 @@ struct rptstr { #define N_PARA_UNOCC 75 #define N_ALOSE_SCT 76 #define N_PLOSE_SCT 77 -#define N_FIN_TROUBLE 78 -#define N_CREDIT_JUNK 79 +/* unused 78 */ +/* unused 79 */ #define N_WELCH_DEAL 80 #define N_LND_LOSE 81 #define N_BOARD_LAND 82 diff --git a/info/Commands/buy.t b/info/Commands/buy.t index 5e601a62e..32db0a53d 100644 --- a/info/Commands/buy.t +++ b/info/Commands/buy.t @@ -25,11 +25,6 @@ Typical output looks like: Looks just like Christmas at K-mart, doesn't it! Which lot are you bidding on: 1 -WARNING! This market issues credit. If you make more - bids than your treasury can cover at the time of sale, - you can potentially go into financial ruin, and see no - gains. You have been warned. - How much per unit: 2 destination sector : 3,1 Your bid is being considered. diff --git a/info/Commands/newspaper.t b/info/Commands/newspaper.t index 94f26be88..0b93aca9e 100644 --- a/info/Commands/newspaper.t +++ b/info/Commands/newspaper.t @@ -24,7 +24,7 @@ Which will print the news for the last two days. You can select whose news to see with the ?actor or ?victim selectors, and what news to see with the ?action selector. Actions are: .nf - 1) Successful Sector attack + 1) Successful sector attack 2) Unsuccessful attack 3) Spy shot 4) Telegram sent @@ -96,8 +96,6 @@ and what news to see with the ?action selector. Actions are: 75) Paradrop into unoccuppied land 76) Failed assault 77) Failed paradrop - 78) Forced loan taken out (by the market) - 79) Forced loan denied (by the market) 80) Failed boarding of a land unit 81) Successful boarding of a land unit .fi diff --git a/info/Commands/trade.t b/info/Commands/trade.t index 087f26074..eb6e27adc 100644 --- a/info/Commands/trade.t +++ b/info/Commands/trade.t @@ -24,11 +24,6 @@ Typical output looks like: 0 $ 1000 2 0.06 hrs ( 2) tech 0 100% inf1 infantry 1 [f:21 ] #3 Which lot to buy: 0 Destination sector: 4,0 -WARNING! This market issues credit. If you make more - bids than your treasury can cover at the time of sale, - you can potentially go into financial ruin, and see no - gains. You have been warned. - How much do you bid: 1100 Your bid on lot #0 is being considered. .FI diff --git a/src/lib/commands/buy.c b/src/lib/commands/buy.c index 270fc715b..29fc833a2 100644 --- a/src/lib/commands/buy.c +++ b/src/lib/commands/buy.c @@ -105,10 +105,6 @@ buy(void) pr("You can't bid on your own lot.\n"); return RET_OK; } - pr("WARNING! This market issues credit. If you make more\n"); - pr(" bids than your treasury can cover at the time of sale,\n"); - pr(" you can potentially go into financial ruin, and see no\n"); - pr(" gains. You have been warned.\n\n"); if ((p = getstarg(player->argp[3], "How much per unit: ", buf)) == 0) return RET_SYN; bid = atof(p); @@ -219,11 +215,6 @@ check_market(void) double monleft; double gain; double price; - struct lonstr loan; - long outstanding; /* Outstanding debt */ - long couval; /* Value of country's goods */ - int foundloan; - int j; /* logerror("Checking the market.\n");*/ for (n = 0; getcomm(n, &comm); n++) { @@ -261,63 +252,6 @@ check_market(void) /* Subtract the amount of money that needs to come out in a loan. */ subleft = monleft; - if (opt_LOANS) { - /* Try to make a loan for the rest from the owner. */ - if (monleft > 0 && tmoney > 0) { - if ((float)((float)price / (float)(price + monleft)) < 0.1) { - wu(0, comm.com_maxbidder, - "You need at least 10 percent down to purchase something on credit.\n"); - } else { - couval = get_couval(comm.com_maxbidder); - outstanding = get_outstand(comm.com_maxbidder); - couval = couval - outstanding; - if (couval > monleft) { - /* Make the loan */ - foundloan = 0; - for (j = 0; getloan(j, &loan); j++) { - if (loan.l_status != LS_FREE) - continue; - foundloan = 1; - break; - } - if (!foundloan) - ef_extend(EF_LOAN, 1); - loan.l_status = LS_SIGNED; - loan.l_loner = comm.com_owner; - loan.l_lonee = comm.com_maxbidder; - loan.l_irate = 25; - loan.l_ldur = 4; - loan.l_amtpaid = 0; - loan.l_amtdue = monleft; - time(&loan.l_lastpay); - loan.l_duedate = - (loan.l_ldur * SECS_PER_DAY) + loan.l_lastpay; - loan.l_uid = j; - if (!putloan(j, &loan)) - logerror("Error writing to the loan file.\n"); - else - monleft = 0; - nreport(comm.com_maxbidder, N_FIN_TROUBLE, - comm.com_owner, 1); - wu(0, comm.com_maxbidder, - "You just took loan #%d for $%ld to cover the cost of your purchase.\n", - j, loan.l_amtdue); - wu(0, comm.com_owner, - "You just extended loan #%d to %s to help with the purchase cose.\n", - j, cname(comm.com_maxbidder)); - } else { - nreport(comm.com_maxbidder, N_CREDIT_JUNK, - comm.com_owner, 1); - wu(0, comm.com_maxbidder, - "You don't have enough credit to get a loan.\n"); - wu(0, comm.com_owner, - "You just turned down a loan to %s.\n", - cname(comm.com_maxbidder)); - } - } - } - } - if (monleft > 0) { nreport(comm.com_maxbidder, N_WELCH_DEAL, comm.com_owner, 1); wu(0, comm.com_maxbidder, diff --git a/src/lib/commands/trad.c b/src/lib/commands/trad.c index 403b15395..4304cc7a3 100644 --- a/src/lib/commands/trad.c +++ b/src/lib/commands/trad.c @@ -257,11 +257,6 @@ trad(void) } } - pr("WARNING! This market issues credit. If you make more\n"); - pr(" bids than your treasury can cover at the time of sale,\n"); - pr(" you can potentially go into financial ruin, and see no\n"); - pr(" gains. You have been warned.\n\n"); - if ((p = getstring("How much do you bid: ", buf)) == 0 || *p == 0) return RET_OK; if (!trade_check_ok(&trade, &tg)) @@ -298,7 +293,6 @@ int check_trade(void) { int n; - int j; struct nstr_item ni; struct plnstr plane; struct lndstr land; @@ -311,10 +305,6 @@ check_trade(void) double tleft; float price; int saveid; - struct lonstr loan; - long outstanding; /* Outstanding debt */ - long couval; /* Value of country's goods */ - int foundloan; /* logerror("Checking the trades.\n");*/ for (n = 0; gettrade(n, &trade); n++) { @@ -368,62 +358,6 @@ check_trade(void) subleft = monleft; - if (opt_LOANS) { - /* Try to make a loan for the rest from the owner. */ - if (monleft > 0 && natp->nat_money > 0) { - if ((float)((float)price / (float)(price + monleft)) < 0.1) { - wu(0, trade.trd_maxbidder, - "You need at least 10 percent down to purchase something on credit.\n"); - } else { - couval = get_couval(trade.trd_maxbidder); - outstanding = get_outstand(trade.trd_maxbidder); - couval = couval - outstanding; - if (couval > monleft) { - /* Make the loan */ - foundloan = 0; - for (j = 0; getloan(j, &loan); j++) { - if (loan.l_status != LS_FREE) - continue; - foundloan = 1; - break; - } - if (!foundloan) - ef_extend(EF_LOAN, 1); - loan.l_status = LS_SIGNED; - loan.l_loner = trade.trd_owner; - loan.l_lonee = trade.trd_maxbidder; - loan.l_irate = 25; - loan.l_ldur = 4; - loan.l_amtpaid = 0; - loan.l_amtdue = monleft; - time(&loan.l_lastpay); - loan.l_duedate = - (loan.l_ldur * SECS_PER_DAY) + loan.l_lastpay; - loan.l_uid = j; - if (!putloan(j, &loan)) - logerror("Error writing to the loan file.\n"); - else - monleft = 0; - nreport(trade.trd_maxbidder, N_FIN_TROUBLE, - trade.trd_owner, 1); - wu(0, trade.trd_maxbidder, - "You just took loan #%d for $%.2f to cover the cost of your purchase.\n", - j, (float)loan.l_amtdue); - wu(0, trade.trd_owner, - "You just extended loan #%d to %s to help with the purchase cost.\n", - j, cname(trade.trd_maxbidder)); - } else { - nreport(trade.trd_maxbidder, N_CREDIT_JUNK, - trade.trd_owner, 1); - wu(0, trade.trd_maxbidder, - "You don't have enough credit to get a loan.\n"); - wu(0, trade.trd_owner, - "You just turned down a loan to %s.\n", - cname(trade.trd_maxbidder)); - } - } - } - } if (monleft > 0) { nreport(trade.trd_maxbidder, N_WELCH_DEAL, trade.trd_owner, 1); wu(0, trade.trd_owner, diff --git a/src/lib/global/news.c b/src/lib/global/news.c index e81ee099c..64e0c3ada 100644 --- a/src/lib/global/news.c +++ b/src/lib/global/news.c @@ -210,10 +210,8 @@ struct rptstr rpt[] = { /* 76*/ "naval forces massacred in failed assault of %s" } }, {-4, N_FRONT, { "paratroopers destroyed in failed air-assault on %s", /* 77*/ "loses parachutists in failed air-assault of %s" } }, - { 0, N_ECON, { "is forced into debt to %s by bad management", -/* 78*/ "shows bad financial planning" } }, - { 0, N_ECON, { "has its credit rating downgraded to unworthy status", -/* 79*/ "is denied credit by %s due to lack of collatoral" } }, +/* 78*/ { 0, 0, { no_news, no_news } }, +/* 79*/ { 0, 0, { no_news, no_news } }, { 0, N_ECON, { "is unable to fulfill its financial obligations to %s", /* 80*/ "welches on a deal with %s" } }, { -3, N_FRONT, { "is repelled by %s while attempting to board a land unit", -- 2.43.0