home *** CD-ROM | disk | FTP | other *** search
/ Giga Games 1 / Giga Games.iso / net / usenet / volume4 / conquer3 / patch5 < prev   
Encoding:
Internet Message Format  |  1988-07-30  |  50.2 KB

  1. Path: uunet!peregrine!elroy!ames!mailrus!cornell!uw-beaver!tektronix!tekgen!tekred!games
  2. From: games@tekred.TEK.COM
  3. Newsgroups: comp.sources.games
  4. Subject: v05i054:   conquer3 - middle earth multi-player game (V3), Patch5
  5. Message-ID: <2892@tekred.TEK.COM>
  6. Date: 29 Jul 88 16:10:08 GMT
  7. Sender: billr@tekred.TEK.COM
  8. Lines: 1615
  9. Approved: billr@saab.CNA.TEK.COM
  10.  
  11. Submitted by: ihnp4!homxc!smile
  12. Comp.sources.games: Volume 5, Issue 54
  13. Archive-name: conquer3/Patch5
  14.  
  15.  
  16.  
  17. #! /bin/sh
  18. # This is a shell archive.  Remove anything before this line, then unpack
  19. # it by saving it into a file and typing "sh file".  To overwrite existing
  20. # files, type "sh file -c".  You can also feed this as standard input via
  21. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  22. # will see the following message at the end:
  23. #        "End of shell archive."
  24. # Contents:  patches05
  25. # Wrapped by billr@saab on Fri Jul 29 09:06:31 1988
  26. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  27. if test -f 'patches05' -a "${1}" != "-c" ; then 
  28.   echo shar: Will not clobber existing file \"'patches05'\"
  29. else
  30. echo shar: Extracting \"'patches05'\" \(48426 characters\)
  31. sed "s/^X//" >'patches05' <<'END_OF_FILE'
  32. X*** onpc.c    Thu Jul 28 09:10:33 1988
  33. X--- npc.c    Thu Jul 28 09:11:10 1988
  34. X***************
  35. X*** 123,130
  36. X              }
  37. X          }
  38. X      }
  39. X!     else {
  40. X!         /*place a new Nomad army*/
  41. X          x=(rand()%(MAPX-8))+4;
  42. X          y=(rand()%(MAPY-8))+4;
  43. X          if((rand()%4==0)&&(is_habitable(x,y))) {
  44. X
  45. X--- 123,130 -----
  46. X              }
  47. X          }
  48. X      }
  49. X!     /* place a few new Nomad armies */
  50. X!     for(armynum=0;armynum<MAXARM;armynum++) if(ASOLD<=0){
  51. X          x=(rand()%(MAPX-8))+4;
  52. X          y=(rand()%(MAPY-8))+4;
  53. X          if((rand()%4==0)&&(is_habitable(x,y))) {
  54. X***************
  55. X*** 131,137
  56. X              AXLOC=x;
  57. X              AYLOC=y;
  58. X              ASOLD=100+100*(rand()%10);
  59. X!             ATYPE=A_INFANTRY;
  60. X              ASTAT=ATTACK;
  61. X          }
  62. X      }
  63. X
  64. X--- 131,137 -----
  65. X              AXLOC=x;
  66. X              AYLOC=y;
  67. X              ASOLD=100+100*(rand()%10);
  68. X!             ATYPE=A_LT_CAV;
  69. X              ASTAT=ATTACK;
  70. X          }
  71. X          if(rand()%3==0) break;
  72. X***************
  73. X*** 134,139
  74. X              ATYPE=A_INFANTRY;
  75. X              ASTAT=ATTACK;
  76. X          }
  77. X      }
  78. X      country=NLIZARD;
  79. X      for(armynum=0;armynum<MAXARM;armynum++) if(ASOLD>0){
  80. X
  81. X--- 134,140 -----
  82. X              ATYPE=A_LT_CAV;
  83. X              ASTAT=ATTACK;
  84. X          }
  85. X+         if(rand()%3==0) break;
  86. X      }
  87. X      country=NLIZARD;
  88. X      for(armynum=0;armynum<MAXARM;armynum++) if(ASOLD>0){
  89. X***************
  90. X*** 615,621
  91. X  {
  92. X      int goldthresh,ironthresh,citythresh;
  93. X      int armynum,loop;
  94. X!     int x,y,i;
  95. X      long zz;
  96. X  
  97. X  #ifdef DEBUG
  98. X
  99. X--- 616,622 -----
  100. X  {
  101. X      int goldthresh,ironthresh,citythresh;
  102. X      int armynum,loop;
  103. X!     int x,y,i,p;
  104. X      long zz;
  105. X  
  106. X  #ifdef DEBUG
  107. X***************
  108. X*** 730,737
  109. X          if(ntn[country].jewels > getmgkcost(M_MIL,country)) {
  110. X              ntn[country].jewels-=getmgkcost(M_MIL,country);
  111. X              if((zz=getmagic(M_MIL))!=0){
  112. X!                 fprintf(fnews,"1.\tnation %s gets combat power number %ld\n",ntn[country].name,zz);
  113. X!                 printf("\tnation %s gets combat power number %ld\n",ntn[country].name,zz);
  114. X                  exenewmgk(zz);
  115. X              } else if((zz=getmagic(M_MIL))!=0){
  116. X                  fprintf(fnews,"1.\tnation %s gets combat power number %ld\n",ntn[country].name,zz);
  117. X
  118. X--- 731,741 -----
  119. X          if(ntn[country].jewels > getmgkcost(M_MIL,country)) {
  120. X              ntn[country].jewels-=getmgkcost(M_MIL,country);
  121. X              if((zz=getmagic(M_MIL))!=0){
  122. X!                 for(p=S_MIL;p<=E_MIL;p++) if(powers[p]==zz){
  123. X!                     fprintf(fnews,"1.\tnation %s gets combat power %s\n",ntn[country].name,pwrname[p]);
  124. X!                     printf("\tnation %s gets combat power %s\n",ntn[country].name,pwrname[p]);
  125. X!                     break;
  126. X!                 }
  127. X                  exenewmgk(zz);
  128. X              } else if((zz=getmagic(M_MIL))!=0){
  129. X                  for(p=S_MIL;p<=E_MIL;p++) if(powers[p]==zz){
  130. X***************
  131. X*** 734,741
  132. X                  printf("\tnation %s gets combat power number %ld\n",ntn[country].name,zz);
  133. X                  exenewmgk(zz);
  134. X              } else if((zz=getmagic(M_MIL))!=0){
  135. X!                 fprintf(fnews,"1.\tnation %s gets combat power number %ld\n",ntn[country].name,zz);
  136. X!                 printf("\tnation %s gets combat power number %ld\n",ntn[country].name,zz);
  137. X                  exenewmgk(zz);
  138. X              }
  139. X              else    ntn[country].jewels+=getmgkcost(M_MIL,country);
  140. X
  141. X--- 738,748 -----
  142. X                  }
  143. X                  exenewmgk(zz);
  144. X              } else if((zz=getmagic(M_MIL))!=0){
  145. X!                 for(p=S_MIL;p<=E_MIL;p++) if(powers[p]==zz){
  146. X!                     fprintf(fnews,"1.\tnation %s gets combat power %s\n",ntn[country].name,pwrname[p]);
  147. X!                     printf("\tnation %s gets combat power %s\n",ntn[country].name,pwrname[p]);
  148. X!                     break;
  149. X!                 }
  150. X                  exenewmgk(zz);
  151. X              }
  152. X              else    ntn[country].jewels+=getmgkcost(M_MIL,country);
  153. X***************
  154. X*** 744,751
  155. X          if(ntn[country].jewels > getmgkcost(M_CIV,country)) {
  156. X              ntn[country].jewels-=getmgkcost(M_CIV,country);
  157. X              if((zz=getmagic(M_CIV))!=0){
  158. X!                 fprintf(fnews,"1.\tnation %s gets civilian power number %ld\n",ntn[country].name,zz);
  159. X!                 printf("\tnation %s gets civilian power number %ld\n",ntn[country].name,zz);
  160. X                  exenewmgk(zz);
  161. X              }
  162. X              else if((zz=getmagic(M_CIV))!=0){
  163. X
  164. X--- 751,761 -----
  165. X          if(ntn[country].jewels > getmgkcost(M_CIV,country)) {
  166. X              ntn[country].jewels-=getmgkcost(M_CIV,country);
  167. X              if((zz=getmagic(M_CIV))!=0){
  168. X!                 for(p=S_CIV;p<=E_CIV;p++) if(powers[p]==zz){
  169. X!                     fprintf(fnews,"1.\tnation %s gets civilian power %s\n",ntn[country].name,pwrname[p]);
  170. X!                     printf("\tnation %s gets civilian power %s\n",ntn[country].name,pwrname[p]);
  171. X!                     break;
  172. X!                 }
  173. X                  exenewmgk(zz);
  174. X              }
  175. X              else if((zz=getmagic(M_CIV))!=0){
  176. X***************
  177. X*** 749,756
  178. X                  exenewmgk(zz);
  179. X              }
  180. X              else if((zz=getmagic(M_CIV))!=0){
  181. X!                 fprintf(fnews,"1.\tnation %s gets civilian power number %ld\n",ntn[country].name,zz);
  182. X!                 printf("\tnation %s gets civilian power number %ld\n",ntn[country].name,zz);
  183. X                  exenewmgk(zz);
  184. X              }
  185. X              else    ntn[country].jewels+=getmgkcost(M_CIV,country);
  186. X
  187. X--- 759,769 -----
  188. X                  exenewmgk(zz);
  189. X              }
  190. X              else if((zz=getmagic(M_CIV))!=0){
  191. X!                 for(p=S_CIV;p<=E_CIV;p++) if(powers[p]==zz){
  192. X!                     fprintf(fnews,"1.\tnation %s gets civilian power %s\n",ntn[country].name,pwrname[zz]);
  193. X!                     printf("\tnation %s gets civilian power %s\n",ntn[country].name,pwrname[zz]);
  194. X!                     break;
  195. X!                 }
  196. X                  exenewmgk(zz);
  197. X              }
  198. X              else    ntn[country].jewels+=getmgkcost(M_CIV,country);
  199. X*** oheader.h    Thu Jul 28 09:10:33 1988
  200. X--- header.h    Thu Jul 28 09:11:11 1988
  201. X*** odata.h    Thu Jul 28 09:10:47 1988
  202. X--- data.h    Thu Jul 28 09:11:11 1988
  203. X***************
  204. X*** 426,432
  205. X  extern    void see(),showscore(),update(),updmove(),verifydata(),verify_ntn();
  206. X  extern    void verify_sct(),wmessage(),writedata(),getdstatus(),exit();
  207. X  #ifdef TRADE
  208. X! extern    void trade(),uptrade();
  209. X  #endif TRADE
  210. X  
  211. X  extern    char    *crypt(),*strcpy(),*strncpy(),*strcat(),*strncat();
  212. X
  213. X--- 426,432 -----
  214. X  extern    void see(),showscore(),update(),updmove(),verifydata(),verify_ntn();
  215. X  extern    void verify_sct(),wmessage(),writedata(),getdstatus(),exit();
  216. X  #ifdef TRADE
  217. X! extern    void trade(),uptrade(),checktrade();
  218. X  #endif TRADE
  219. X  
  220. X  extern    char    *crypt(),*strcpy(),*strncpy(),*strcat(),*strncat();
  221. X*** ohelp.txt    Thu Jul 28 09:10:49 1988
  222. X--- help.txt    Thu Jul 28 09:11:12 1988
  223. X***************
  224. X*** 100,107
  225. X                    merging 2 armies, splitting armies, and disbanding armies
  226. X  'c': administration: Report on nation status and then change name, password,
  227. X                    add to combat bonus, or (if god) destroy a nation.
  228. X! 'd': change display: Change display mode.  Numbers in gold screens... are
  229. X!                   relative values of the materials.
  230. X  'f': fleet report:   Report on the status of your fleets.
  231. X  'g': group report:   As army report, but display will only show those armies
  232. X                    in the current sector.
  233. X
  234. X--- 100,107 -----
  235. X                    merging 2 armies, splitting armies, and disbanding armies
  236. X  'c': administration: Report on nation status and then change name, password,
  237. X                    add to combat bonus, or (if god) destroy a nation.
  238. X! 'd': change display: Change display mode.  iron/gold screen #'s are sector 
  239. X!                       value.  Population screen #'s are the closest 100 people
  240. X  'f': fleet report:   Report on the status of your fleets.
  241. X  'g': group report:   As army report, but display will only show those armies
  242. X                    in the current sector.
  243. X***************
  244. X*** 318,327
  245. X  Warship        XSHIPCREW    XWARSHPCOST        XSHIPMAINT        0
  246. X  Merchant    XSHIPCREW    XMERSHPCOST        XSHIPMAINT        XSHIPCP
  247. X  
  248. X! Ships will now have crews - which, in addition to being drafted upon
  249. X! construction, represent the ships current level of damage and are replaced,
  250. X! in harbor, by using the construct ships command.  Movement of
  251. X! a fleet is reduced if the crews are not full.  Marine or Sailor Armies
  252. X  can also be carried by navies with warships.  Each fleet may carry one army
  253. X  in addition to any troops that are ferried - who dont count in combat.
  254. X  Marines add to chances of success in shipboard combat.
  255. X
  256. X--- 318,326 -----
  257. X  Warship        XSHIPCREW    XWARSHPCOST        XSHIPMAINT        0
  258. X  Merchant    XSHIPCREW    XMERSHPCOST        XSHIPMAINT        XSHIPCP
  259. X  
  260. X! Ships require crews - which both represent men on board and the current level 
  261. X! of damage.  Crew is replaced (repairs) in harbor, via <construct ships>. Fleet 
  262. X! movement is reduced if the crews are not full.  Marine or Sailor Armies
  263. X  can also be carried by navies with warships.  Each fleet may carry one army
  264. X  in addition to any troops that are ferried - who dont count in combat.
  265. X  Marines add to chances of success in shipboard combat.
  266. X***************
  267. X*** 405,411
  268. X  NINJA        Can have Ninja units.  Spys show enemy troop/civilian strength
  269. X          exactly (even voids)
  270. X  SAILOR        1/2 price naval units.  Can use marines. +10% ramming.
  271. X! DEMOCRACY  +10% in combat (moralle) +1 Move +1 repro All units eat double.
  272. X  ROADS        +4 to move if unit starts in your nation.
  273. X  SLAVER     you gain 25% of the populace of *any* sector you take over
  274. X  END
  275. X
  276. X--- 404,410 -----
  277. X  NINJA        Can have Ninja units.  Spys show enemy troop/civilian strength
  278. X          exactly (even voids)
  279. X  SAILOR        1/2 price naval units.  Can use marines. +10% ramming.
  280. X! DEMOCRACY  +10% in combat (moralle) +1 Move +1 repro All civilians eat double.
  281. X  ROADS        +4 to move if unit starts in your nation.
  282. X  SLAVER     you gain 25% of the populace of *any* sector you take over
  283. X  END
  284. X***************
  285. X*** 499,504
  286. X     180-190      0%  0%  0%  0%  5% 10% 10% 20% 20% 30% 30% 30% 30% 40% 40%
  287. X     190+++       0%  0%  0%  0%  5% 10% 10% 10% 20% 20% 30% 30% 30% 30% 40%
  288. X  END
  289. X                       FINAL HINTS & OTHER COSTS
  290. X  
  291. X  It is important to initially have a reprorate of 9-10% and a move of ~8-9.
  292. X
  293. X--- 498,536 -----
  294. X     180-190      0%  0%  0%  0%  5% 10% 10% 20% 20% 30% 30% 30% 30% 40% 40%
  295. X     190+++       0%  0%  0%  0%  5% 10% 10% 10% 20% 20% 30% 30% 30% 30% 40%
  296. X  END
  297. X+                          MAIL MESSAGE FROM COMBAT
  298. X+ 
  299. X+ The following is a mail message you might recieve after a combat.  An
  300. X+ explaination of its details follows.
  301. X+ 
  302. X+ BATTLE SUMMARY for sector 22, 29
  303. X+ You are on the Defending Side
  304. X+ edland is attacking with army 17 (type Infantry, men 125, bonus=80)
  305. X+ edland is attacking with army 23 (type Infantry, men 160, bonus=80)
  306. X+ uru is defending with army 9 (type Infantry, men 84, bonus=110)
  307. X+ attacking soldiers=285    modified roll=42-> attackers percent loss 30%
  308. X+ defending soldiers=84    modified roll=100-> defenders percent loss 70%
  309. X+ ODDS are 339 to 100
  310. X+ RESULT: Attackers lose 85 men, Defenders lose 49 men
  311. X+ Additionally, All defenders retreat to 21 28
  312. X+ END
  313. X+                               AN EXAMPLE OF COMBAT
  314. X+ 
  315. X+ A battle occurs in 22,29 (a "good" farm) between your nation "uru" (defender) 
  316. X+ and "edland".  They have 285 infantry vs. 84 of your infantry. Your defensive 
  317. X+ bonus is +70, their attack bonus is +40. Infantry are +0/+0. A movement bonus 
  318. X+ goes to both sides = 5*(9-movecost)=+40.  Their total bonus is 40+40+=+80. 
  319. X+ Yours is 70+40=110. This leads to dice modifier of 30 in your favor.
  320. X+ They roll 22 which +50-30=42; which on the 3:1 table yields 30% losses
  321. X+ you roll 80 which +50-30=100; 200-100 on the 1:3 table yields 70% losses
  322. X+ the actual loss is troops * Percent * divisor / (100+plus), where the divisor
  323. X+ is the least bonus on any side (better troops die less).  For you this leads
  324. X+ to 84*70*1.4 / 100*(1.7) = 49 men. for them it leads to 85 men.  Despite your
  325. X+ awful luck at the dice, you still came out quite well.
  326. X+ 
  327. X+ However, because they did cream you, there was a chance that you were
  328. X+      forced to retreat, which you did to 21 28.
  329. X+ END
  330. X                       FINAL HINTS & OTHER COSTS
  331. X  
  332. X  It is important to initially have a reprorate of 9-10% and a move of ~8-9.
  333. X***************
  334. X*** 528,533
  335. X  If you have too many people in a given non Town, non capitol sector, 
  336. X  reproduction and production is halved for them.  If you have a huge 
  337. X  (>10,000,000) number of people in a sector, they will not reproduce.
  338. X  END
  339. X              OPTIONS OF YOUR VERSION
  340. X  
  341. X
  342. X--- 560,568 -----
  343. X  If you have too many people in a given non Town, non capitol sector, 
  344. X  reproduction and production is halved for them.  If you have a huge 
  345. X  (>10,000,000) number of people in a sector, they will not reproduce.
  346. X+ 
  347. X+ WARNING: The Naval Code has been known to be buggy.  Please pay attention
  348. X+ and send the author notes on discrepancies in the code.
  349. X  END
  350. X              OPTIONS OF YOUR VERSION
  351. X  
  352. X*** otrade.c    Thu Jul 28 09:10:15 1988
  353. X--- trade.c    Thu Jul 28 09:11:13 1988
  354. X***************
  355. X*** 42,48
  356. X  #define    BUY    1
  357. X  #define    NODEAL    2
  358. X  #define    NOSALE    3
  359. X! #define TRADECOST(cost)    ((100-cost)/100)    /* twenty percent cost normal*/
  360. X  
  361. X  extern short country;
  362. X  
  363. X
  364. X--- 42,48 -----
  365. X  #define    BUY    1
  366. X  #define    NODEAL    2
  367. X  #define    NOSALE    3
  368. X! #define TRADECOST(cost)    (100-cost)/100    /* twenty percent cost is normal*/
  369. X  
  370. X  extern short country;
  371. X  
  372. X***************
  373. X*** 54,65
  374. X      "no available armies", "no available navies"};
  375. X  #endif ADMIN
  376. X  #ifdef CONQUER
  377. X! /* Use this when you wish to sell something */
  378. X! char *selllist[NUMPRODUCTS] = { "Sell how many gold talons? ", "Sell how much food? ",
  379. X!     "Sell how much iron? ", "Sell how many jewels? ", "What X location? ",
  380. X!     "How many soldiers? ", "How many ships? "};
  381. X! 
  382. X! /* Use this when you wish to place a bid something */
  383. X  char *buylist[NUMPRODUCTS] = { "Bid how much gold? ", "Bid how much food? ",
  384. X      "Bid how much iron? ", "Bid how many jewels? ", " ",
  385. X      "Bid what army? ", "Bid how many ships? "};
  386. X
  387. X--- 54,60 -----
  388. X      "no available armies", "no available navies"};
  389. X  #endif ADMIN
  390. X  #ifdef CONQUER
  391. X! /* Use this when you wish to bid something */
  392. X  char *buylist[NUMPRODUCTS] = { "Bid how much gold? ", "Bid how much food? ",
  393. X      "Bid how much iron? ", "Bid how many jewels? ", "What X location? ",
  394. X      "Bid what army? ", "Bid what navy? "};
  395. X***************
  396. X*** 61,68
  397. X  
  398. X  /* Use this when you wish to place a bid something */
  399. X  char *buylist[NUMPRODUCTS] = { "Bid how much gold? ", "Bid how much food? ",
  400. X!     "Bid how much iron? ", "Bid how many jewels? ", " ",
  401. X!     "Bid what army? ", "Bid how many ships? "};
  402. X  
  403. X  void
  404. X  trade()
  405. X
  406. X--- 56,63 -----
  407. X  #ifdef CONQUER
  408. X  /* Use this when you wish to bid something */
  409. X  char *buylist[NUMPRODUCTS] = { "Bid how much gold? ", "Bid how much food? ",
  410. X!     "Bid how much iron? ", "Bid how many jewels? ", "What X location? ",
  411. X!     "Bid what army? ", "Bid what navy? "};
  412. X  
  413. X  void
  414. X  trade()
  415. X***************
  416. X*** 121,126
  417. X                          holdlong,
  418. X                          commodities[type1[holdint]]);
  419. X                  }
  420. X                  mvprintw(count,40,"%9ld %s",
  421. X                      lvar2[holdint],
  422. X                      commodities[type2[holdint]]);
  423. X
  424. X--- 116,126 -----
  425. X                          holdlong,
  426. X                          commodities[type1[holdint]]);
  427. X                  }
  428. X+                 if (type2[holdint]==TDLAND) {
  429. X+                     mvprintw(count,40,"(food=%2ld) %s",
  430. X+                         lvar2[holdint],
  431. X+                         commodities[type2[holdint]]);
  432. X+                 } else {
  433. X                  mvprintw(count,40,"%9ld %s",
  434. X                      lvar2[holdint],
  435. X                      commodities[type2[holdint]]);
  436. X***************
  437. X*** 124,129
  438. X                  mvprintw(count,40,"%9ld %s",
  439. X                      lvar2[holdint],
  440. X                      commodities[type2[holdint]]);
  441. X                  if (count>16) {
  442. X                      standout();
  443. X                      mvaddstr(21,30,"Hit Any Key to Continue");
  444. X
  445. X--- 124,130 -----
  446. X                  mvprintw(count,40,"%9ld %s",
  447. X                      lvar2[holdint],
  448. X                      commodities[type2[holdint]]);
  449. X+                 }
  450. X                  if (count>16) {
  451. X                      standout();
  452. X                      mvaddstr(21,30,"Hit Any Key to Continue");
  453. X***************
  454. X*** 135,141
  455. X                      mvaddstr(0,27,"COMMODITIES EXCHANGE");
  456. X                      standend();
  457. X                      mvprintw(2,0,"    Nation\t\tItem\t\tMinimum Price");
  458. X!                     count=3;
  459. X                  }
  460. X              }
  461. X          }
  462. X
  463. X--- 136,142 -----
  464. X                      mvaddstr(0,27,"COMMODITIES EXCHANGE");
  465. X                      standend();
  466. X                      mvprintw(2,0,"    Nation\t\tItem\t\tMinimum Price");
  467. X!                     count=2;
  468. X                  }
  469. X              }
  470. X          }
  471. X***************
  472. X*** 141,146
  473. X          }
  474. X          standout();
  475. X          count++;
  476. X          if (itemnum==0)    mvaddstr(count++,0,"Nothing to Buy.  Do you wish to (S)ell?");
  477. X          else mvaddstr(count++,0,"Do you wish to (B)uy, (S)ell, or (U)nsell?");
  478. X          standend();
  479. X
  480. X--- 142,148 -----
  481. X          }
  482. X          standout();
  483. X          count++;
  484. X+         count++;
  485. X          if (itemnum==0)    mvaddstr(count++,0,"Nothing to Buy.  Do you wish to (S)ell?");
  486. X          else mvaddstr(count++,0,"Do you wish to (B)uy, (S)ell, or (U)nsell?");
  487. X          standend();
  488. X***************
  489. X*** 217,223
  490. X              case TDLAND:
  491. X                  mvaddstr(count++,0,"What Y position? ");
  492. X                  refresh();
  493. X!                 holdlong2 = (long) get_number;
  494. X                  if (checkland(BUY,(int)(holdlong),(int)(holdlong2))==NODEAL) {
  495. X                      buysell=NODEAL;
  496. X                  } else if (tofood(sct[(int)holdlong][(int)holdlong2].vegetation,natn[holdint]) < lvar2[holdint]) {
  497. X
  498. X--- 219,225 -----
  499. X              case TDLAND:
  500. X                  mvaddstr(count++,0,"What Y position? ");
  501. X                  refresh();
  502. X!                 holdlong2 = (long) get_number();
  503. X                  if (checkland(BUY,(int)(holdlong),(int)(holdlong2))==NODEAL) {
  504. X                      buysell=NODEAL;
  505. X                  } else if (tofood(sct[(int)holdlong][(int)holdlong2].vegetation,natn[holdint]) < lvar2[holdint]) {
  506. X***************
  507. X*** 256,262
  508. X                      tradeerr("Error opening file for trading");
  509. X                      abrt();
  510. X                  }
  511. X!                 setaside(country,type2[holdint],holdlong);
  512. X                  fprintf(tfile, "%d %d %d %d %ld %ld %d\n",BUY, country, holdint, 0, holdlong, holdlong2, 0);
  513. X                  fclose(tfile);
  514. X              }
  515. X
  516. X--- 258,264 -----
  517. X                      tradeerr("Error opening file for trading");
  518. X                      abrt();
  519. X                  }
  520. X!                 setaside(country,type2[holdint],holdlong,(int)holdlong,FALSE);
  521. X                  fprintf(tfile, "%d %d %d %d %ld %ld %d\n",BUY, country, holdint, 0, holdlong, holdlong2, 0);
  522. X                  fclose(tfile);
  523. X              }
  524. X***************
  525. X*** 280,286
  526. X                  return;
  527. X              }
  528. X  
  529. X!             mvprintw(count++,0,"%s",selllist[holdint]);
  530. X              refresh();
  531. X              /* find out how much commodities */
  532. X              holdlong = (long) get_number();
  533. X
  534. X--- 282,288 -----
  535. X                  return;
  536. X              }
  537. X  
  538. X!             mvprintw(count++,0,"%s",buylist[holdint]);
  539. X              refresh();
  540. X              /* find out how much commodities */
  541. X              holdlong = (long) get_number();
  542. X***************
  543. X*** 357,363
  544. X                  }
  545. X              } else {
  546. X                  /* find out for what value */
  547. X!                 mvprintw(count++,0,"Minimum %s",selllist[holdint2]);
  548. X                  refresh();
  549. X                  holdlong2 = (long) get_number();
  550. X                  if (holdlong2 == 0L) return;
  551. X
  552. X--- 359,366 -----
  553. X                  }
  554. X              } else {
  555. X                  /* find out for what value */
  556. X!                 mvprintw(count++,0,"Minimum Amount of %s? "
  557. X!                     ,commodities[holdint2]);
  558. X                  refresh();
  559. X                  holdlong2 = (long) get_number();
  560. X                  if (holdlong2 == 0L) return;
  561. X***************
  562. X*** 364,370
  563. X              }
  564. X  
  565. X              /* make sure what was bid is unusable */
  566. X!             setaside(country,holdint,holdlong);
  567. X  
  568. X              /* set up output properly */
  569. X              if (holdint==TDARMY) {
  570. X
  571. X--- 367,373 -----
  572. X              }
  573. X  
  574. X              /* make sure what was bid is unusable */
  575. X!             setaside(country,holdint,holdlong,(int)holdlong,FALSE);
  576. X  
  577. X              /* set up output properly */
  578. X              if (holdint==TDARMY) {
  579. X***************
  580. X*** 416,422
  581. X              }
  582. X              fprintf(tfile, "%d %d %d %d %ld %ld %d\n", NOSALE, natn[holdint], holdint, 0, 0L, 0L, 0);
  583. X              fclose(tfile);
  584. X!             takeback(natn[holdint],type1[holdint],lvar1[holdint]);
  585. X              /*redraw the commodities board so removal is seen*/
  586. X              inloop=FALSE;
  587. X              done=FALSE;
  588. X
  589. X--- 419,425 -----
  590. X              }
  591. X              fprintf(tfile, "%d %d %d %d %ld %ld %d\n", NOSALE, natn[holdint], holdint, 0, 0L, 0L, 0);
  592. X              fclose(tfile);
  593. X!             takeback(natn[holdint],type1[holdint],lvar1[holdint],extra[holdint],FALSE);
  594. X              /*redraw the commodities board so removal is seen*/
  595. X              inloop=FALSE;
  596. X              done=FALSE;
  597. X***************
  598. X*** 486,492
  599. X          &&entered!=WOOD   &&entered!=FOREST
  600. X          &&entered!=SWAMP  &&entered!=ICE) temp=(-1);
  601. X      else temp = tofood(entered,country);
  602. X!     mvprintw((*count)++,0," JUST ENTERED %c so temp is %d", entered,temp);
  603. X      return(temp);
  604. X  }
  605. X  
  606. X
  607. X--- 489,495 -----
  608. X          &&entered!=WOOD   &&entered!=FOREST
  609. X          &&entered!=SWAMP  &&entered!=ICE) temp=(-1);
  610. X      else temp = tofood(entered,country);
  611. X!     mvprintw((*count)++,0," JUST ENTERED %c so food value is %d", entered,temp);
  612. X      return(temp);
  613. X  }
  614. X  
  615. X***************
  616. X*** 533,538
  617. X      }
  618. X      return(hold);
  619. X  }
  620. X  
  621. X  /* set aside things that are up for bid */
  622. X  void
  623. X
  624. X--- 536,542 -----
  625. X      }
  626. X      return(hold);
  627. X  }
  628. X+ #endif CONQUER
  629. X  
  630. X  /* set aside things that are up for bid */
  631. X  void
  632. X***************
  633. X*** 536,543
  634. X  
  635. X  /* set aside things that are up for bid */
  636. X  void
  637. X! setaside(cntry,item,longval)
  638. X! int cntry,item;
  639. X  long longval;
  640. X  {
  641. X      switch(item)
  642. X
  643. X--- 540,547 -----
  644. X  
  645. X  /* set aside things that are up for bid */
  646. X  void
  647. X! setaside(cntry,item,longval,extint,isup)
  648. X! int cntry,item,isup,extint;
  649. X  long longval;
  650. X  {
  651. X      switch(item)
  652. X***************
  653. X*** 543,549
  654. X      switch(item)
  655. X      {
  656. X      case TDGOLD:
  657. X!         ntn[cntry].tgold -= longval;
  658. X          break;
  659. X      case TDFOOD:
  660. X          ntn[cntry].tfood -= longval;
  661. X
  662. X--- 547,553 -----
  663. X      switch(item)
  664. X      {
  665. X      case TDGOLD:
  666. X!         if (isup==FALSE) ntn[cntry].tgold -= longval;
  667. X          break;
  668. X      case TDFOOD:
  669. X          ntn[cntry].tfood -= longval;
  670. X***************
  671. X*** 549,555
  672. X          ntn[cntry].tfood -= longval;
  673. X          break;
  674. X      case TDIRON:
  675. X!         ntn[cntry].tiron -= longval;
  676. X          break;
  677. X      case TDJEWL:
  678. X          ntn[cntry].jewels -= longval;
  679. X
  680. X--- 553,559 -----
  681. X          ntn[cntry].tfood -= longval;
  682. X          break;
  683. X      case TDIRON:
  684. X!         if (isup==FALSE) ntn[cntry].tiron -= longval;
  685. X          break;
  686. X      case TDJEWL:
  687. X          if (isup==FALSE) ntn[cntry].jewels -= longval;
  688. X***************
  689. X*** 552,558
  690. X          ntn[cntry].tiron -= longval;
  691. X          break;
  692. X      case TDJEWL:
  693. X!         ntn[cntry].jewels -= longval;
  694. X          break;
  695. X      case TDLAND:
  696. X          break;
  697. X
  698. X--- 556,562 -----
  699. X          if (isup==FALSE) ntn[cntry].tiron -= longval;
  700. X          break;
  701. X      case TDJEWL:
  702. X!         if (isup==FALSE) ntn[cntry].jewels -= longval;
  703. X          break;
  704. X      case TDLAND:
  705. X          break;
  706. X***************
  707. X*** 557,564
  708. X      case TDLAND:
  709. X          break;
  710. X      case TDARMY:
  711. X!         ntn[cntry].arm[(int)longval].smove = 0;
  712. X!         ntn[cntry].arm[(int)longval].stat = TRADED;
  713. X          break;
  714. X      case TDSHIP:
  715. X          /* use armynum to hold indicator */
  716. X
  717. X--- 561,568 -----
  718. X      case TDLAND:
  719. X          break;
  720. X      case TDARMY:
  721. X!         ntn[cntry].arm[extint].smove = 0;
  722. X!         ntn[cntry].arm[extint].stat = TRADED;
  723. X          break;
  724. X      case TDSHIP:
  725. X          /* use armynum to hold indicator */
  726. X***************
  727. X*** 562,569
  728. X          break;
  729. X      case TDSHIP:
  730. X          /* use armynum to hold indicator */
  731. X!         ntn[cntry].nvy[(int)longval].smove = 0;
  732. X!         ntn[cntry].nvy[(int)longval].armynum = TRADED;
  733. X          break;
  734. X      }
  735. X  }
  736. X
  737. X--- 566,573 -----
  738. X          break;
  739. X      case TDSHIP:
  740. X          /* use armynum to hold indicator */
  741. X!         ntn[cntry].nvy[extint].smove = 0;
  742. X!         ntn[cntry].nvy[extint].armynum = TRADED;
  743. X          break;
  744. X      }
  745. X  }
  746. X***************
  747. X*** 570,577
  748. X  
  749. X  /* regain things that are up for bid */
  750. X  void
  751. X! takeback(cntry,item,longval)
  752. X! int cntry,item;
  753. X  long longval;
  754. X  {
  755. X      switch(item)
  756. X
  757. X--- 574,581 -----
  758. X  
  759. X  /* regain things that are up for bid */
  760. X  void
  761. X! takeback(cntry,item,longval,extint,isup)
  762. X! int cntry,item,isup,extint;
  763. X  long longval;
  764. X  {
  765. X      switch(item)
  766. X***************
  767. X*** 577,583
  768. X      switch(item)
  769. X      {
  770. X      case TDGOLD:
  771. X!         ntn[cntry].tgold += longval;
  772. X          break;
  773. X      case TDFOOD:
  774. X          ntn[cntry].tfood += longval;
  775. X
  776. X--- 581,587 -----
  777. X      switch(item)
  778. X      {
  779. X      case TDGOLD:
  780. X!         if (isup==FALSE) ntn[cntry].tgold += longval;
  781. X          break;
  782. X      case TDFOOD:
  783. X          ntn[cntry].tfood += longval;
  784. X***************
  785. X*** 583,589
  786. X          ntn[cntry].tfood += longval;
  787. X          break;
  788. X      case TDIRON:
  789. X!         ntn[cntry].tiron += longval;
  790. X          break;
  791. X      case TDJEWL:
  792. X          ntn[cntry].jewels += longval;
  793. X
  794. X--- 587,593 -----
  795. X          ntn[cntry].tfood += longval;
  796. X          break;
  797. X      case TDIRON:
  798. X!         if (isup==FALSE) ntn[cntry].tiron += longval;
  799. X          break;
  800. X      case TDJEWL:
  801. X          if (isup==FALSE) ntn[cntry].jewels += longval;
  802. X***************
  803. X*** 586,592
  804. X          ntn[cntry].tiron += longval;
  805. X          break;
  806. X      case TDJEWL:
  807. X!         ntn[cntry].jewels += longval;
  808. X          break;
  809. X      case TDLAND:
  810. X          break;
  811. X
  812. X--- 590,596 -----
  813. X          if (isup==FALSE) ntn[cntry].tiron += longval;
  814. X          break;
  815. X      case TDJEWL:
  816. X!         if (isup==FALSE) ntn[cntry].jewels += longval;
  817. X          break;
  818. X      case TDLAND:
  819. X          break;
  820. X***************
  821. X*** 591,597
  822. X      case TDLAND:
  823. X          break;
  824. X      case TDARMY:
  825. X!         ntn[cntry].arm[(int)longval].stat = DEFEND;
  826. X          break;
  827. X      case TDSHIP:
  828. X          /* use armynum to hold indicator */
  829. X
  830. X--- 595,601 -----
  831. X      case TDLAND:
  832. X          break;
  833. X      case TDARMY:
  834. X!         ntn[cntry].arm[extint].stat = DEFEND;
  835. X          break;
  836. X      case TDSHIP:
  837. X          /* use armynum to hold indicator */
  838. X***************
  839. X*** 595,601
  840. X          break;
  841. X      case TDSHIP:
  842. X          /* use armynum to hold indicator */
  843. X!         ntn[cntry].nvy[(int)longval].armynum = 0;
  844. X          break;
  845. X      }
  846. X  }
  847. X
  848. X--- 599,605 -----
  849. X          break;
  850. X      case TDSHIP:
  851. X          /* use armynum to hold indicator */
  852. X!         ntn[cntry].nvy[extint].armynum = 0;
  853. X          break;
  854. X      }
  855. X  }
  856. X***************
  857. X*** 599,605
  858. X          break;
  859. X      }
  860. X  }
  861. X- #endif CONQUER
  862. X  
  863. X  #ifdef ADMIN
  864. X  /* give things that were purchased from cntry1 to cntry2 */
  865. X
  866. X--- 603,608 -----
  867. X          break;
  868. X      }
  869. X  }
  870. X  
  871. X  #ifdef ADMIN
  872. X  /* give things that were purchased from cntry1 to cntry2 */
  873. X***************
  874. X*** 615,621
  875. X      {
  876. X      case TDGOLD:
  877. X          returnval = longval;
  878. X-         ntn[cntry1].tgold -= longval;
  879. X          ntn[cntry2].tgold += longval * TRADECOST(20);
  880. X          break;
  881. X      case TDFOOD:
  882. X
  883. X--- 618,623 -----
  884. X      {
  885. X      case TDGOLD:
  886. X          returnval = longval;
  887. X          ntn[cntry2].tgold += longval * TRADECOST(20);
  888. X          break;
  889. X      case TDFOOD:
  890. X***************
  891. X*** 619,629
  892. X          ntn[cntry2].tgold += longval * TRADECOST(20);
  893. X          break;
  894. X      case TDFOOD:
  895. X!         if (ntn[cntry1].tfood >= longval) {
  896. X!             returnval = longval;
  897. X!             ntn[cntry1].tfood -= longval;
  898. X!             ntn[cntry2].tfood += longval * TRADECOST(20);
  899. X!         }
  900. X          break;
  901. X      case TDIRON:
  902. X          if (ntn[cntry1].tiron >= longval) {
  903. X
  904. X--- 621,628 -----
  905. X          ntn[cntry2].tgold += longval * TRADECOST(20);
  906. X          break;
  907. X      case TDFOOD:
  908. X!         returnval = longval;
  909. X!         ntn[cntry2].tfood += longval * TRADECOST(20);
  910. X          break;
  911. X      case TDIRON:
  912. X          ntn[cntry2].tiron += longval * TRADECOST(20);
  913. X***************
  914. X*** 626,636
  915. X          }
  916. X          break;
  917. X      case TDIRON:
  918. X!         if (ntn[cntry1].tiron >= longval) {
  919. X!             ntn[cntry1].tiron -= longval;
  920. X!             ntn[cntry2].tiron += longval * TRADECOST(20);
  921. X!             returnval = longval;
  922. X!         }
  923. X          break;
  924. X      case TDJEWL:
  925. X          if (ntn[cntry1].jewels >= longval) {
  926. X
  927. X--- 625,632 -----
  928. X          ntn[cntry2].tfood += longval * TRADECOST(20);
  929. X          break;
  930. X      case TDIRON:
  931. X!         ntn[cntry2].tiron += longval * TRADECOST(20);
  932. X!         returnval = longval;
  933. X          break;
  934. X      case TDJEWL:
  935. X          ntn[cntry2].jewels += longval * TRADECOST(20);
  936. X***************
  937. X*** 633,643
  938. X          }
  939. X          break;
  940. X      case TDJEWL:
  941. X!         if (ntn[cntry1].jewels >= longval) {
  942. X!             ntn[cntry1].jewels -= longval;
  943. X!             ntn[cntry2].jewels += longval * TRADECOST(20);
  944. X!             returnval = longval;
  945. X!         }
  946. X          break;
  947. X      case TDLAND:
  948. X          if (sct[(int)longval][extra].owner==cntry1) {
  949. X
  950. X--- 629,636 -----
  951. X          returnval = longval;
  952. X          break;
  953. X      case TDJEWL:
  954. X!         ntn[cntry2].jewels += longval * TRADECOST(20);
  955. X!         returnval = longval;
  956. X          break;
  957. X      case TDLAND:
  958. X          if (sct[(int)longval][extra].owner==cntry1) {
  959. X***************
  960. X*** 754,760
  961. X      for (count=0;count<2;count++) {
  962. X          fprintf(fp[count],"%s Message to %s from Conquer Commerce Commision\n",cname[count],cname[count]);
  963. X          fprintf(fp[count],"%s \n",cname[count]);
  964. X!         fprintf(fp[count],"%s   Trade transaction between %s and %s completed.",cname[count],cname[0],cname[1]);
  965. X          if (item1<=TDJEWL)
  966. X          fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[0],lvar1,commodities[item1]);
  967. X          else if (item1==TDLAND)
  968. X
  969. X--- 747,753 -----
  970. X      for (count=0;count<2;count++) {
  971. X          fprintf(fp[count],"%s Message to %s from Conquer Commerce Commision\n",cname[count],cname[count]);
  972. X          fprintf(fp[count],"%s \n",cname[count]);
  973. X!         fprintf(fp[count],"%s   Trade transaction between %s and %s completed.\n",cname[count],cname[1],cname[0]);
  974. X          if (item1<=TDJEWL)
  975. X          fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[1],lvar1,commodities[item1]);
  976. X          else if (item1==TDLAND)
  977. X***************
  978. X*** 756,762
  979. X          fprintf(fp[count],"%s \n",cname[count]);
  980. X          fprintf(fp[count],"%s   Trade transaction between %s and %s completed.",cname[count],cname[0],cname[1]);
  981. X          if (item1<=TDJEWL)
  982. X!         fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[0],lvar1,commodities[item1]);
  983. X          else if (item1==TDLAND)
  984. X          fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[0],lvar1,lvar2);
  985. X          else if (item1==TDARMY)
  986. X
  987. X--- 749,755 -----
  988. X          fprintf(fp[count],"%s \n",cname[count]);
  989. X          fprintf(fp[count],"%s   Trade transaction between %s and %s completed.\n",cname[count],cname[1],cname[0]);
  990. X          if (item1<=TDJEWL)
  991. X!         fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[1],lvar1,commodities[item1]);
  992. X          else if (item1==TDLAND)
  993. X          fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[1],lvar1,lvar2);
  994. X          else if (item1==TDARMY)
  995. X***************
  996. X*** 758,764
  997. X          if (item1<=TDJEWL)
  998. X          fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[0],lvar1,commodities[item1]);
  999. X          else if (item1==TDLAND)
  1000. X!         fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[0],lvar1,lvar2);
  1001. X          else if (item1==TDARMY)
  1002. X          fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[0],lvar1);
  1003. X          else if (item1==TDSHIP)
  1004. X
  1005. X--- 751,757 -----
  1006. X          if (item1<=TDJEWL)
  1007. X          fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[1],lvar1,commodities[item1]);
  1008. X          else if (item1==TDLAND)
  1009. X!         fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[1],lvar1,lvar2);
  1010. X          else if (item1==TDARMY)
  1011. X          fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[1],lvar1);
  1012. X          else if (item1==TDSHIP)
  1013. X***************
  1014. X*** 760,766
  1015. X          else if (item1==TDLAND)
  1016. X          fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[0],lvar1,lvar2);
  1017. X          else if (item1==TDARMY)
  1018. X!         fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[0],lvar1);
  1019. X          else if (item1==TDSHIP)
  1020. X          fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[0],lvar1);
  1021. X          if (item2<=TDJEWL)
  1022. X
  1023. X--- 753,759 -----
  1024. X          else if (item1==TDLAND)
  1025. X          fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[1],lvar1,lvar2);
  1026. X          else if (item1==TDARMY)
  1027. X!         fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[1],lvar1);
  1028. X          else if (item1==TDSHIP)
  1029. X          fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[1],lvar1);
  1030. X          if (item2<=TDJEWL)
  1031. X***************
  1032. X*** 762,768
  1033. X          else if (item1==TDARMY)
  1034. X          fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[0],lvar1);
  1035. X          else if (item1==TDSHIP)
  1036. X!         fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[0],lvar1);
  1037. X          if (item2<=TDJEWL)
  1038. X          fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[1],lvar3,commodities[item2]);
  1039. X          else if (item1==TDLAND)
  1040. X
  1041. X--- 755,761 -----
  1042. X          else if (item1==TDARMY)
  1043. X          fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[1],lvar1);
  1044. X          else if (item1==TDSHIP)
  1045. X!         fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[1],lvar1);
  1046. X          if (item2<=TDJEWL)
  1047. X          fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[0],lvar3,commodities[item2]);
  1048. X          else if (item2==TDLAND)
  1049. X***************
  1050. X*** 764,776
  1051. X          else if (item1==TDSHIP)
  1052. X          fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[0],lvar1);
  1053. X          if (item2<=TDJEWL)
  1054. X!         fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[1],lvar3,commodities[item2]);
  1055. X!         else if (item1==TDLAND)
  1056. X!         fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[1],lvar3,lvar4);
  1057. X!         else if (item1==TDARMY)
  1058. X!         fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[1],lvar3);
  1059. X!         else if (item1==TDSHIP)
  1060. X!         fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[1],lvar3);
  1061. X          fclose(fp[count]);
  1062. X      }
  1063. X  }
  1064. X
  1065. X--- 757,770 -----
  1066. X          else if (item1==TDSHIP)
  1067. X          fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[1],lvar1);
  1068. X          if (item2<=TDJEWL)
  1069. X!         fprintf(fp[count],"%s       Nation %s receives %ld %s\n",cname[count],cname[0],lvar3,commodities[item2]);
  1070. X!         else if (item2==TDLAND)
  1071. X!         fprintf(fp[count],"%s       Nation %s receives sector %ld, %ld\n",cname[count],cname[0],lvar3,lvar4);
  1072. X!         else if (item2==TDARMY)
  1073. X!         fprintf(fp[count],"%s       Nation %s receives army #%ld\n",cname[count],cname[0],lvar3);
  1074. X!         else if (item2==TDSHIP)
  1075. X!         fprintf(fp[count],"%s       Nation %s receives navy #%ld\n",cname[count],cname[0],lvar3);
  1076. X!         fprintf(fp[count],"END\n");
  1077. X          fclose(fp[count]);
  1078. X      }
  1079. X  }
  1080. X***************
  1081. X*** 783,790
  1082. X  {
  1083. X      int oldcntry=country,returnval=FALSE;
  1084. X      country=cntry;
  1085. X!     if ( ATYPE==A_MERCENARY || ATYPE==A_SEIGE || ATYPE==A_CATAPULT
  1086. X!         || ATYPE==A_ELEPHANT || ATYPE>=MINMONSTER) returnval=TRUE;
  1087. X      country=oldcntry;
  1088. X      return(returnval);
  1089. X  }
  1090. X
  1091. X--- 777,785 -----
  1092. X  {
  1093. X      int oldcntry=country,returnval=FALSE;
  1094. X      country=cntry;
  1095. X!     if ( (ASTAT!=TRADED) && (ATYPE==A_MERCENARY || ATYPE==A_SEIGE
  1096. X!         || ATYPE==A_CATAPULT || ATYPE==A_ELEPHANT
  1097. X!         || ATYPE>=MINMONSTER) ) returnval=TRUE;
  1098. X      country=oldcntry;
  1099. X      return(returnval);
  1100. X  }
  1101. X***************
  1102. X*** 806,812
  1103. X  }
  1104. X  
  1105. X  void
  1106. X! uptrade()
  1107. X  {
  1108. X      FILE *tfile;
  1109. X      int count, itemnum=0, natn[MAXITM];
  1110. X
  1111. X--- 801,807 -----
  1112. X  }
  1113. X  
  1114. X  void
  1115. X! checktrade()
  1116. X  {
  1117. X      FILE *tfile;
  1118. X      int count, itemnum=0, natn[MAXITM];
  1119. X***************
  1120. X*** 811,816
  1121. X      FILE *tfile;
  1122. X      int count, itemnum=0, natn[MAXITM];
  1123. X      int type1[MAXITM], type2[MAXITM], deal[MAXITM], extra[MAXITM];
  1124. X  #ifdef ADMIN
  1125. X      extern FILE *fnews;
  1126. X      void trademail();
  1127. X
  1128. X--- 806,842 -----
  1129. X      FILE *tfile;
  1130. X      int count, itemnum=0, natn[MAXITM];
  1131. X      int type1[MAXITM], type2[MAXITM], deal[MAXITM], extra[MAXITM];
  1132. X+     long lvar1[MAXITM], lvar2[MAXITM];
  1133. X+     void takeback();
  1134. X+     void setaside();
  1135. X+     /* initialize purchase list */
  1136. X+     for (count=0; count<MAXITM; count++) {
  1137. X+         deal[count]=(-1);
  1138. X+     }
  1139. X+     /* open trading file */
  1140. X+     if ((tfile = fopen(tradefile,"r")) == NULL) {
  1141. X+         /* no commodities - no transactions */
  1142. X+         return;
  1143. X+     }
  1144. X+     /* read in all of the transactions */
  1145. X+     while(!feof(tfile)) {
  1146. X+         fscanf(tfile,"%d %d %d %d %ld %ld %d\n",&deal[itemnum],
  1147. X+             &natn[itemnum],&type1[itemnum],&type2[itemnum],&lvar1[itemnum],&lvar2[itemnum],&extra[itemnum]);
  1148. X+         if (deal[itemnum]==NOSALE) {
  1149. X+             if (natn[itemnum]==country)
  1150. X+             takeback(country,type1[type1[itemnum]],lvar1[type1[itemnum]],extra[type1[itemnum]],TRUE);
  1151. X+         } else if (deal[itemnum]==SELL) {
  1152. X+             if (natn[itemnum]==country)
  1153. X+             setaside(country,type1[itemnum],lvar1[itemnum],extra[itemnum],TRUE);
  1154. X+             itemnum++;
  1155. X+         } else if (deal[itemnum]==BUY) {
  1156. X+             if (natn[itemnum]==country)
  1157. X+             setaside(country,type2[type1[itemnum]],lvar1[itemnum],(int)lvar1[itemnum],TRUE);
  1158. X+         }
  1159. X+     }
  1160. X+     fclose(tfile);
  1161. X+ }
  1162. X+ 
  1163. X  #ifdef ADMIN
  1164. X  void
  1165. X  uptrade()
  1166. X***************
  1167. X*** 812,817
  1168. X      int count, itemnum=0, natn[MAXITM];
  1169. X      int type1[MAXITM], type2[MAXITM], deal[MAXITM], extra[MAXITM];
  1170. X  #ifdef ADMIN
  1171. X      extern FILE *fnews;
  1172. X      void trademail();
  1173. X      int whobuy[MAXITM];
  1174. X
  1175. X--- 838,849 -----
  1176. X  }
  1177. X  
  1178. X  #ifdef ADMIN
  1179. X+ void
  1180. X+ uptrade()
  1181. X+ {
  1182. X+     FILE *tfile;
  1183. X+     int count, itemnum=0, natn[MAXITM];
  1184. X+     int type1[MAXITM], type2[MAXITM], deal[MAXITM], extra[MAXITM];
  1185. X      extern FILE *fnews;
  1186. X      void trademail();
  1187. X      int whobuy[MAXITM];
  1188. X***************
  1189. X*** 817,823
  1190. X      int whobuy[MAXITM];
  1191. X      long tradeit(), buy1[MAXITM], buy2[MAXITM];
  1192. X      long price[MAXITM], gettval(), longval1, longval2;
  1193. X- #endif ADMIN
  1194. X      long lvar1[MAXITM], lvar2[MAXITM];
  1195. X  #ifdef CONQUER
  1196. X      void setaside(),takeback();
  1197. X
  1198. X--- 849,854 -----
  1199. X      int whobuy[MAXITM];
  1200. X      long tradeit(), buy1[MAXITM], buy2[MAXITM];
  1201. X      long price[MAXITM], gettval(), longval1, longval2;
  1202. X      long lvar1[MAXITM], lvar2[MAXITM];
  1203. X      void takeback();
  1204. X  
  1205. X***************
  1206. X*** 819,827
  1207. X      long price[MAXITM], gettval(), longval1, longval2;
  1208. X  #endif ADMIN
  1209. X      long lvar1[MAXITM], lvar2[MAXITM];
  1210. X! #ifdef CONQUER
  1211. X!     void setaside(),takeback();
  1212. X! #endif CONQUER
  1213. X  
  1214. X      /* initialize purchase list */
  1215. X      for (count=0; count<MAXITM; count++) {
  1216. X
  1217. X--- 850,856 -----
  1218. X      long tradeit(), buy1[MAXITM], buy2[MAXITM];
  1219. X      long price[MAXITM], gettval(), longval1, longval2;
  1220. X      long lvar1[MAXITM], lvar2[MAXITM];
  1221. X!     void takeback();
  1222. X  
  1223. X      /* initialize purchase list */
  1224. X      for (count=0; count<MAXITM; count++) {
  1225. X***************
  1226. X*** 826,832
  1227. X      /* initialize purchase list */
  1228. X      for (count=0; count<MAXITM; count++) {
  1229. X          deal[count]=(-1);
  1230. X- #ifdef ADMIN
  1231. X          whobuy[count]=(-1);
  1232. X          price[count]=(-1);
  1233. X  #endif ADMIN
  1234. X
  1235. X--- 855,860 -----
  1236. X      /* initialize purchase list */
  1237. X      for (count=0; count<MAXITM; count++) {
  1238. X          deal[count]=(-1);
  1239. X          whobuy[count]=(-1);
  1240. X          price[count]=(-1);
  1241. X      }
  1242. X***************
  1243. X*** 829,835
  1244. X  #ifdef ADMIN
  1245. X          whobuy[count]=(-1);
  1246. X          price[count]=(-1);
  1247. X- #endif ADMIN
  1248. X      }
  1249. X      /* open trading file */
  1250. X      if ((tfile = fopen(tradefile,"r")) == NULL) {
  1251. X
  1252. X--- 857,862 -----
  1253. X          deal[count]=(-1);
  1254. X          whobuy[count]=(-1);
  1255. X          price[count]=(-1);
  1256. X      }
  1257. X      /* open trading file */
  1258. X      if ((tfile = fopen(tradefile,"r")) == NULL) {
  1259. X***************
  1260. X*** 843,851
  1261. X          if (deal[itemnum]==NOSALE) {
  1262. X              /* remove item from sales list */
  1263. X              deal[type1[itemnum]]=NOSALE;
  1264. X- #ifdef CONQUER
  1265. X-             if (natn[itemnum]==country) takeback(country,type1[type1[itemnum]],lvar1[type1[itemnum]]);
  1266. X- #endif CONQUER
  1267. X          } else if (deal[itemnum]==SELL) {
  1268. X              itemnum++;
  1269. X  #ifdef CONQUER
  1270. X
  1271. X--- 870,875 -----
  1272. X          if (deal[itemnum]==NOSALE) {
  1273. X              /* remove item from sales list */
  1274. X              deal[type1[itemnum]]=NOSALE;
  1275. X          } else if (deal[itemnum]==SELL) {
  1276. X              itemnum++;
  1277. X          } else if (deal[itemnum]==BUY) {
  1278. X***************
  1279. X*** 848,856
  1280. X  #endif CONQUER
  1281. X          } else if (deal[itemnum]==SELL) {
  1282. X              itemnum++;
  1283. X- #ifdef CONQUER
  1284. X-             if (natn[itemnum]==country) setaside(country,type2[itemnum],lvar1[itemnum]);
  1285. X- #endif CONQUER
  1286. X          } else if (deal[itemnum]==BUY) {
  1287. X  #ifdef ADMIN
  1288. X              if (deal[type1[itemnum]]==SELL) deal[type1[itemnum]]==BUY;
  1289. X
  1290. X--- 872,877 -----
  1291. X              deal[type1[itemnum]]=NOSALE;
  1292. X          } else if (deal[itemnum]==SELL) {
  1293. X              itemnum++;
  1294. X          } else if (deal[itemnum]==BUY) {
  1295. X              if (deal[type1[itemnum]]==SELL &&
  1296. X              (price[type1[itemnum]] <
  1297. X***************
  1298. X*** 852,861
  1299. X              if (natn[itemnum]==country) setaside(country,type2[itemnum],lvar1[itemnum]);
  1300. X  #endif CONQUER
  1301. X          } else if (deal[itemnum]==BUY) {
  1302. X! #ifdef ADMIN
  1303. X!             if (deal[type1[itemnum]]==SELL) deal[type1[itemnum]]==BUY;
  1304. X!             /* check for highest price for item */
  1305. X!             if (price[type1[itemnum]]<gettval(natn[type1[itemnum]],natn[itemnum],type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum])) {
  1306. X                  price[type1[itemnum]]=gettval(natn[type1[itemnum]],natn[itemnum],type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum]);
  1307. X                  buy1[type1[itemnum]]=lvar1[itemnum];
  1308. X                  buy2[type1[itemnum]]=lvar2[itemnum];
  1309. X
  1310. X--- 873,884 -----
  1311. X          } else if (deal[itemnum]==SELL) {
  1312. X              itemnum++;
  1313. X          } else if (deal[itemnum]==BUY) {
  1314. X!             if (deal[type1[itemnum]]==SELL &&
  1315. X!             (price[type1[itemnum]] <
  1316. X!             gettval(natn[type1[itemnum]],natn[itemnum],
  1317. X!             type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum]))) {
  1318. X!                 deal[type1[itemnum]]=BUY;
  1319. X!                 /* highest bid so far */
  1320. X                  price[type1[itemnum]]=gettval(natn[type1[itemnum]],natn[itemnum],type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum]);
  1321. X                  /* return bid to loser */
  1322. X                  takeback(whobuy[type1[itemnum]],
  1323. X***************
  1324. X*** 857,862
  1325. X              /* check for highest price for item */
  1326. X              if (price[type1[itemnum]]<gettval(natn[type1[itemnum]],natn[itemnum],type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum])) {
  1327. X                  price[type1[itemnum]]=gettval(natn[type1[itemnum]],natn[itemnum],type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum]);
  1328. X                  buy1[type1[itemnum]]=lvar1[itemnum];
  1329. X                  buy2[type1[itemnum]]=lvar2[itemnum];
  1330. X                  whobuy[type1[itemnum]]=natn[itemnum];
  1331. X
  1332. X--- 880,890 -----
  1333. X                  deal[type1[itemnum]]=BUY;
  1334. X                  /* highest bid so far */
  1335. X                  price[type1[itemnum]]=gettval(natn[type1[itemnum]],natn[itemnum],type2[type1[itemnum]],lvar1[itemnum],(int)lvar2[itemnum]);
  1336. X+                 /* return bid to loser */
  1337. X+                 takeback(whobuy[type1[itemnum]],
  1338. X+                     type2[type1[itemnum]],
  1339. X+                     buy1[type1[itemnum]],extra[type1[itemnum]],FALSE);
  1340. X+                 /* record details of trade */
  1341. X                  buy1[type1[itemnum]]=lvar1[itemnum];
  1342. X                  buy2[type1[itemnum]]=lvar2[itemnum];
  1343. X                  whobuy[type1[itemnum]]=natn[itemnum];
  1344. X***************
  1345. X*** 860,865
  1346. X                  buy1[type1[itemnum]]=lvar1[itemnum];
  1347. X                  buy2[type1[itemnum]]=lvar2[itemnum];
  1348. X                  whobuy[type1[itemnum]]=natn[itemnum];
  1349. X              }
  1350. X  #endif ADMIN
  1351. X  #ifdef CONQUER
  1352. X
  1353. X--- 888,898 -----
  1354. X                  buy1[type1[itemnum]]=lvar1[itemnum];
  1355. X                  buy2[type1[itemnum]]=lvar2[itemnum];
  1356. X                  whobuy[type1[itemnum]]=natn[itemnum];
  1357. X+             } else {
  1358. X+                 /* return bid */
  1359. X+                 takeback(whobuy[itemnum],
  1360. X+                     type2[type1[itemnum]],
  1361. X+                     buy1[itemnum],extra[itemnum],FALSE);
  1362. X              }
  1363. X          }
  1364. X      }
  1365. X***************
  1366. X*** 861,870
  1367. X                  buy2[type1[itemnum]]=lvar2[itemnum];
  1368. X                  whobuy[type1[itemnum]]=natn[itemnum];
  1369. X              }
  1370. X- #endif ADMIN
  1371. X- #ifdef CONQUER
  1372. X-             if (natn[itemnum]==country) setaside(country,type2[type1[itemnum]],lvar1[itemnum]);
  1373. X- #endif CONQUER
  1374. X          }
  1375. X      }
  1376. X      fclose(tfile);
  1377. X
  1378. X--- 894,899 -----
  1379. X                      type2[type1[itemnum]],
  1380. X                      buy1[itemnum],extra[itemnum],FALSE);
  1381. X              }
  1382. X          }
  1383. X      }
  1384. X      unlink(tfile);
  1385. X***************
  1386. X*** 867,874
  1387. X  #endif CONQUER
  1388. X          }
  1389. X      }
  1390. X!     fclose(tfile);
  1391. X! #ifdef ADMIN
  1392. X      /* reopen the file for unsold commodities */
  1393. X      if ((tfile=fopen(tradefile,"w")) == NULL) {
  1394. X          /* error on opening file */
  1395. X
  1396. X--- 896,902 -----
  1397. X              }
  1398. X          }
  1399. X      }
  1400. X!     unlink(tfile);
  1401. X      /* reopen the file for unsold commodities */
  1402. X      if ((tfile=fopen(tradefile,"w")) == NULL) {
  1403. X          /* error on opening file */
  1404. X***************
  1405. X*** 878,884
  1406. X  
  1407. X      /* compute the trading */
  1408. X      for (count=0;count<itemnum;count++) {
  1409. X!         if (deal[count]==SELL)
  1410. X              /* adjust the displayed value */
  1411. X              lvar1[count]=gettval(0,natn[count],type1[count],lvar1[count],extra[count]);
  1412. X              /* keep unsold items up for sale */
  1413. X
  1414. X--- 906,912 -----
  1415. X  
  1416. X      /* compute the trading */
  1417. X      for (count=0;count<itemnum;count++) {
  1418. X!         if (deal[count]==SELL) {
  1419. X              /* adjust the displayed value */
  1420. X              lvar1[count]=gettval(0,natn[count],type1[count],lvar1[count],extra[count]);
  1421. X              /* keep unsold items up for sale */
  1422. X***************
  1423. X*** 883,889
  1424. X              lvar1[count]=gettval(0,natn[count],type1[count],lvar1[count],extra[count]);
  1425. X              /* keep unsold items up for sale */
  1426. X              if(lvar1[count]>=0) fprintf(tfile,"%d %d %d %d %ld %ld %d\n", deal[count], natn[count],type1[count],type2[count],lvar1[count],lvar2[count],extra[count]);
  1427. X!         else if (deal[count]==BUY) {
  1428. X              /* do the trading */
  1429. X              longval1 = tradeit(natn[count],whobuy[count],type1[count],lvar1[count],extra[count]);
  1430. X              if (longval1!=(-1)) longval2 = tradeit(whobuy[count],natn[count],type2[count],buy1[count],(int)buy2[count]);
  1431. X
  1432. X--- 911,917 -----
  1433. X              lvar1[count]=gettval(0,natn[count],type1[count],lvar1[count],extra[count]);
  1434. X              /* keep unsold items up for sale */
  1435. X              if(lvar1[count]>=0) fprintf(tfile,"%d %d %d %d %ld %ld %d\n", deal[count], natn[count],type1[count],type2[count],lvar1[count],lvar2[count],extra[count]);
  1436. X!         } else if (deal[count]==BUY) {
  1437. X              /* do the trading */
  1438. X              longval1 = tradeit(natn[count],whobuy[count],type1[count],lvar1[count],extra[count]);
  1439. X              if (longval1!=(-1)) longval2 = tradeit(whobuy[count],natn[count],type2[count],buy1[count],(int)buy2[count]);
  1440. X***************
  1441. X*** 889,895
  1442. X              if (longval1!=(-1)) longval2 = tradeit(whobuy[count],natn[count],type2[count],buy1[count],(int)buy2[count]);
  1443. X              if (longval1==(-1)) {
  1444. X                  /* abort due to seller */
  1445. X!                 fprintf(fnews,"2.\tTrade between %s and %s breaks down due to %s.",
  1446. X                      ntn[natn[count]].name,ntn[whobuy[count]].name,tradefail[type1[count]]);
  1447. X              } else if (longval2==(-1)) {
  1448. X                  /* abort due to buyer */
  1449. X
  1450. X--- 917,923 -----
  1451. X              if (longval1!=(-1)) longval2 = tradeit(whobuy[count],natn[count],type2[count],buy1[count],(int)buy2[count]);
  1452. X              if (longval1==(-1)) {
  1453. X                  /* abort due to seller */
  1454. X!                 fprintf(fnews,"2.\tTrade between %s and %s breaks down due to %s.\n",
  1455. X                      ntn[natn[count]].name,ntn[whobuy[count]].name,tradefail[type1[count]]);
  1456. X              } else if (longval2==(-1)) {
  1457. X                  /* abort due to buyer */
  1458. X***************
  1459. X*** 894,900
  1460. X              } else if (longval2==(-1)) {
  1461. X                  /* abort due to buyer */
  1462. X                  tradeit(whobuy[count],natn[count],type1[count],longval1,extra[count]);
  1463. X!                 fprintf(fnews,"2.\tTrade between %s and %s breaks down due to %s.",
  1464. X                      ntn[whobuy[count]].name,ntn[natn[count]].name,tradefail[type2[count]]);
  1465. X                  /* place it on the list for next turn */
  1466. X                  /* adjust the displayed value */
  1467. X
  1468. X--- 922,928 -----
  1469. X              } else if (longval2==(-1)) {
  1470. X                  /* abort due to buyer */
  1471. X                  tradeit(whobuy[count],natn[count],type1[count],longval1,extra[count]);
  1472. X!                 fprintf(fnews,"2.\tTrade between %s and %s breaks down due to %s.\n",
  1473. X                      ntn[whobuy[count]].name,ntn[natn[count]].name,tradefail[type2[count]]);
  1474. X                  /* place it on the list for next turn */
  1475. X                  /* adjust the displayed value */
  1476. X***************
  1477. X*** 902,908
  1478. X                  if(lvar1[count]>=0) fprintf(tfile,"%d %d %d %d %ld %ld %d\n", SELL, natn[count],type1[count],type2[count],lvar1[count],lvar2[count],extra[count]);
  1479. X              } else {
  1480. X                  /* trade completed send mail */
  1481. X!                 fprintf(fnews,"2.\tNation %s sells %s to %s for %s"
  1482. X                      ,ntn[natn[count]].name,commodities[type1[count]],ntn[whobuy[count]].name,commodities[type2[count]]);
  1483. X                  trademail(natn[count],whobuy[count],type1[count],
  1484. X                      type2[count],longval1,(long)extra[count],
  1485. X
  1486. X--- 930,936 -----
  1487. X                  if(lvar1[count]>=0) fprintf(tfile,"%d %d %d %d %ld %ld %d\n", SELL, natn[count],type1[count],type2[count],lvar1[count],lvar2[count],extra[count]);
  1488. X              } else {
  1489. X                  /* trade completed send mail */
  1490. X!                 fprintf(fnews,"2.\tNation %s sells %s to %s for %s\n"
  1491. X                      ,ntn[natn[count]].name,commodities[type1[count]],ntn[whobuy[count]].name,commodities[type2[count]]);
  1492. X                  trademail(natn[count],whobuy[count],type1[count],
  1493. X                      type2[count],longval1,(long)extra[count],
  1494. X***************
  1495. X*** 911,916
  1496. X          }
  1497. X      }
  1498. X      fclose(tfile);
  1499. X- #endif ADMIN
  1500. X  }
  1501. X  #endif TRADE
  1502. X
  1503. X--- 939,944 -----
  1504. X          }
  1505. X      }
  1506. X      fclose(tfile);
  1507. X  }
  1508. X  #endif ADMIN
  1509. X  #endif TRADE
  1510. X***************
  1511. X*** 913,916
  1512. X      fclose(tfile);
  1513. X  #endif ADMIN
  1514. X  }
  1515. X  #endif TRADE
  1516. X
  1517. X--- 940,945 -----
  1518. X      }
  1519. X      fclose(tfile);
  1520. X  }
  1521. X+ #endif ADMIN
  1522. X  #endif TRADE
  1523. X  
  1524. X***************
  1525. X*** 914,916
  1526. X  #endif ADMIN
  1527. X  }
  1528. X  #endif TRADE
  1529. X
  1530. X--- 942,945 -----
  1531. X  }
  1532. X  #endif ADMIN
  1533. X  #endif TRADE
  1534. X+ 
  1535. X*** opatchlevel.h    Thu Jul 28 09:10:14 1988
  1536. X--- patchlevel.h    Thu Jul 28 09:11:13 1988
  1537. X***************
  1538. X*** 1,1
  1539. X! #define PATCHLEVEL    4
  1540. X
  1541. X--- 1,1 -----
  1542. X! #define PATCHLEVEL    5
  1543. X*** oMakefile    Thu Jul 28 09:10:48 1988
  1544. X--- Makefile    Thu Jul 28 09:15:57 1988
  1545. X***************
  1546. X*** 24,30
  1547. X  #    if they do not use the -d option.
  1548. X  DEFAULT = /c28/smile/game/default
  1549. X  
  1550. X! #CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -O
  1551. X  #    The following CFLAGS should be used if you wish to debug the game
  1552. X  CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -DDEBUG -g
  1553. X  
  1554. X
  1555. X--- 24,31 -----
  1556. X  #    if they do not use the -d option.
  1557. X  DEFAULT = /c28/smile/game/default
  1558. X  
  1559. X! #    The following CFLAGS should be set by a normal user
  1560. X! CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -O
  1561. X  #    The following CFLAGS should be used if you wish to debug the game
  1562. X  #CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -DDEBUG -g
  1563. X  
  1564. X***************
  1565. X*** 26,32
  1566. X  
  1567. X  #CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -O
  1568. X  #    The following CFLAGS should be used if you wish to debug the game
  1569. X! CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -DDEBUG -g
  1570. X  
  1571. X  #    this is the name of the user executable
  1572. X  #    the user executable contains commands for the games players
  1573. X
  1574. X--- 27,33 -----
  1575. X  #    The following CFLAGS should be set by a normal user
  1576. X  CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -O
  1577. X  #    The following CFLAGS should be used if you wish to debug the game
  1578. X! #CFLAGS  = -DDEFAULTDIR=\"$(DEFAULT)\" -DDEBUG -g
  1579. X  
  1580. X  #    this is the name of the user executable
  1581. X  #    the user executable contains commands for the games players
  1582. X***************
  1583. X*** 211,217
  1584. X      $(CC) $(CFLAGS) -DCONQUER -c forms.c
  1585. X  commands.o:    data.h header.h commands.c
  1586. X      $(CC) $(CFLAGS) -DCONQUER -c commands.c
  1587. X! trade.o:    data.h header.h trade.h trade.c
  1588. X      $(CC) $(CFLAGS) -DCONQUER -c trade.c
  1589. X  tradeA.o:    data.h header.h trade.h trade.c
  1590. X      $(CC) $(CFLAGS) -DADMIN -c trade.c
  1591. X
  1592. X--- 212,218 -----
  1593. X      $(CC) $(CFLAGS) -DCONQUER -c forms.c
  1594. X  commands.o:    data.h header.h commands.c
  1595. X      $(CC) $(CFLAGS) -DCONQUER -c commands.c
  1596. X! trade.o:    data.h header.h trade.c
  1597. X      $(CC) $(CFLAGS) -DCONQUER -c trade.c
  1598. X  tradeA.o:    data.h header.h trade.c
  1599. X      $(CC) $(CFLAGS) -DADMIN -c trade.c
  1600. X***************
  1601. X*** 213,218
  1602. X      $(CC) $(CFLAGS) -DCONQUER -c commands.c
  1603. X  trade.o:    data.h header.h trade.h trade.c
  1604. X      $(CC) $(CFLAGS) -DCONQUER -c trade.c
  1605. X! tradeA.o:    data.h header.h trade.h trade.c
  1606. X      $(CC) $(CFLAGS) -DADMIN -c trade.c
  1607. X      mv trade.o tradeA.o
  1608. X
  1609. X--- 214,219 -----
  1610. X      $(CC) $(CFLAGS) -DCONQUER -c commands.c
  1611. X  trade.o:    data.h header.h trade.c
  1612. X      $(CC) $(CFLAGS) -DCONQUER -c trade.c
  1613. X! tradeA.o:    data.h header.h trade.c
  1614. X      $(CC) $(CFLAGS) -DADMIN -c trade.c
  1615. X      mv trade.o tradeA.o
  1616. X
  1617. X
  1618. END_OF_FILE
  1619. if test 48426 -ne `wc -c <'patches05'`; then
  1620.     echo shar: \"'patches05'\" unpacked with wrong size!
  1621. fi
  1622. # end of 'patches05'
  1623. fi
  1624. echo shar: End of shell archive.
  1625. exit 0
  1626.