home *** CD-ROM | disk | FTP | other *** search
/ The Devil's Doorknob BBS Capture (1996-2003) / devilsdoorknobbbscapture1996-2003.iso / Dloads / WWIVMODS / PRE412.ZIP / LL10.DOC < prev    next >
Text File  |  1988-09-25  |  6KB  |  144 lines

  1.                                 LOGOFF LOTTERY
  2.                                      v1.0
  3.                                 by DOUG FIELDS
  4.                                     9/25/88
  5.  
  6.   This file, LOGLOT10.ARC should contain the following: LL10.DOC, LOTTERY.C,
  7. and INFO.DOC.
  8.  
  9.                                   WHAT IT IS
  10.                                   ----------
  11.  
  12.   This is a small program for WWIV 4.0x (has been tested on 4.04 and 4.05)
  13. which will allow the user, once he has chosen to log off, the option of
  14. playing the pick-4 lottery. It will cost him three gold, and then he will be
  15. prompted for his numbers and told whether he has won anything. The chances of
  16. winning certain amounts are:
  17.  
  18.                         0 gold   : very likely
  19.                         2 gold   : most likely
  20.                         ...      : ...
  21.                         16 gold  : little likely
  22.                         ...      : ...
  23.                         64 gold  : very little likely
  24.                         ...      : ...
  25.                         128 gold : very very very little likely
  26.                         ...      : ...
  27.                         512 gold : never been done
  28.  
  29.   The actual amount of gold the user wins is determined by the following
  30. formula. Gold won = (# matches)^2 * 2. This has proven to be the most workable
  31. formula.
  32.  
  33.                                 IMPLEMENTATION
  34.                                 --------------
  35.  
  36.   This is rather simple to implement. Just follow the directions.
  37.  
  38.                                      FIRST
  39.  
  40.   The first thing you must do is add the following line to the end of the
  41. FCNS.H file:
  42.  
  43. void lottery();
  44.  
  45.   This will tell the compiler about the lottery program.
  46.  
  47.                                     SECOND
  48.  
  49.   Insert this line at the end of the #include statements at the beginning of
  50. BBS.C:
  51.  
  52. #include "lottery.c"
  53.  
  54. and then copy the file lottery.c into your source file directory. This will
  55. put the actual code into the BBS.
  56.  
  57.                                      THIRD
  58.  
  59.   A housekeeping addition. In your BBS.PRJ file, you must add lottery.c to the
  60. list of dependencies for BBS.C. If the old like looked like:
  61.  
  62. bbs.c               (net.h, fcns.h, vardec.h, vars.h)
  63.  
  64. the new line would look like:
  65.  
  66. bbs.c               (net.h, fcns.h, vardec.h, vars.h, lottery.c)
  67.  
  68. Just add lottery.c to the end of the list.
  69.  
  70.                                     FOURTH
  71.  
  72.   In the file BBS.C once again, in the functions mainmenu() and dlmainmenu(),
  73. you must add the following code to the case 'O':. The same code exerpt applies
  74. to both spots.
  75.                                                     LEGEND:   -- orig. lines
  76. -- case 'O':                                                  ** new lines
  77. -- nl();                                                      -* changed lines
  78. -- nl();
  79. -- prt(5, "Log Off? ");
  80. -- helpl=12;
  81. -- if (yn()) {
  82. --   outchr(12);
  83. **   if (thisuser.gold >= 3.0)
  84. **     {
  85. **     prt(2, "Would you like to play the logoff lottery for 3 gold? ");
  86. **     if (ny()) lottery();
  87. **     nl();
  88. **     /* pausescr(); */      /* This line is optional. If you would like the
  89.                                  the screen to be paused after playing the
  90.                                  lottery, remove the /* and */ from around
  91.                                  the pausescr();. Don't type this text into
  92.                                  your code. */
  93. **     }
  94. **   nl(); nl();
  95. --   print("Time on    = ", ctim(timer()-timeon),"");
  96.  
  97.   These additions will allow the user to play the lottery from the main or
  98. transfer menus.
  99.  
  100.                                      FIFTH
  101.  
  102.   Fifth and finally, recompile the BBS! Test it out and if you have any
  103. problems with the code contact me either via voice or on my BBS.
  104.  
  105.                                 A LINKER ERROR
  106.                                 --------------
  107.  
  108.   At some time in your WWIV compiling career, you might get a linker error,
  109. 'Too much global data defined in file.' This is a real pain in the neck. To
  110. get rid of this error, (assuming you are using TC instead of TCC) go to the
  111. options menu, choose compiler options, and choose code generation. In that sub
  112. menu, toggle on the 'Merge Duplicate Strings' option. Save the configuration,
  113. and then go ahead and recompile the whole BBS by going to the compile menu,
  114. and choosing 'Build All'. Relink it, and you should not get that error anymore
  115. (at least not for a while).
  116.  
  117.                                      NOTES
  118.                                      -----
  119.  
  120.   If you like this and/or other mods of mine, please send me a donation. If
  121. you can't afford a donation, then give me a ring either voice or on my BBS. If
  122. you can't afford that donation but can call long distance, then try to make it
  123. a habit to log on once a week or once a month or some other regular schedual.
  124.  
  125.   On my BBS you will find all my mods and utilities with the latest versions.
  126. You will also see differences and other mods which I have not yet written docs
  127. for. Some of these I might not write docs for until someone requests them.
  128. Okay guys, have fun!
  129.  
  130.   All mod/utility requests make on my board or by voice will recieve the
  131. fastest attention, with the highest priority.
  132.  
  133. Doug Fields
  134. 100 Midwood Road
  135. Greenwich, CT  06830-3837
  136. (203) 661-2967 (VOICE)
  137.  
  138.              T H E  G A L A C T I C  H E A D Q U A R T E R S ! ! !
  139.  
  140.               HERE'S THE PLACE TO MAKE ALL MOD/UTILITY REQUESTS!
  141.  
  142.                             300-9600/24 HRS/8 DAYS
  143.  
  144.                                 (203) 324-8960