home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_progs / prog_oth / monopoly.lzh / monopoly_source.LZH / f6.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-01-06  |  6.0 KB  |  260 lines

  1. /* f6.c contains these functions for monopoly:
  2.         passgo(),  fixmenu(),  fixodmenu(),  fixpropmenu()  */
  3.  
  4. #include "mono:defines"
  5. #include "mono:xvariables"
  6.  
  7.  
  8. VOID passgo()
  9. {
  10. struct IntuiText msg0, msg1, msg2, msg3;
  11. USHORT test;
  12.  
  13. msg0.BackPen=0;
  14. msg0.DrawMode=JAM1;
  15. msg0.LeftEdge=37;
  16. msg0.TopEdge=30;
  17. msg0.ITextFont=NULL;
  18. msg0.NextText=&msg1;
  19. msg0.IText=(UBYTE *)"YOU ARE PASSING";
  20. msg0.FrontPen=brite_green;
  21.  
  22. msg1.BackPen=0;
  23. msg1.DrawMode=JAM1;
  24. msg1.LeftEdge=85;
  25. msg1.TopEdge=45;
  26. msg1.ITextFont=NULL;
  27. msg1.NextText=&msg2;
  28. msg1.IText=(UBYTE *)"GO!";
  29. msg1.FrontPen=brite_green;
  30.  
  31. msg3.BackPen=0;
  32. msg3.DrawMode=JAM1;
  33. msg3.TopEdge=95;
  34. msg3.ITextFont=NULL;
  35. msg3.NextText=NULL;
  36.  
  37. msg2.BackPen=0;
  38. msg2.DrawMode=JAM1;
  39. msg2.LeftEdge=48;
  40. msg2.TopEdge=60;
  41. msg2.ITextFont=NULL;
  42. msg2.IText=(UBYTE *)"COLLECT $200.";
  43. msg2.FrontPen=green;
  44. msg2.NextText=NULL;
  45. if (ran16() > 13)
  46.    {
  47.    msg2.NextText=&msg3;
  48.    test=ran16();
  49.    if (test == 0)
  50.       {
  51.       msg3.FrontPen=yellow;
  52.       msg3.IText=(UBYTE *)"GOOD LUCK!";
  53.       msg3.LeftEdge=57;
  54.       }
  55.    if (test == 1)
  56.       {
  57.       msg3.FrontPen=lt_blue;
  58.       msg3.IText=(UBYTE *)"HAVE A NICE DAY!";
  59.       msg3.LeftEdge=33;
  60.       }
  61.    if (test == 2)
  62.       {
  63.       msg3.FrontPen=red;
  64.       msg3.IText=(UBYTE *)"PLEASE FASTEN SEATBELTS";
  65.       msg3.LeftEdge=5;
  66.       }
  67.    if (test == 3)
  68.       {
  69.       msg3.FrontPen=purple;
  70.       msg3.IText=(UBYTE *)"HAVE A SAFE TRIP";
  71.       msg3.LeftEdge=33;
  72.       }
  73.    if (test == 4)
  74.       {
  75.       msg3.FrontPen=orange;
  76.       msg3.IText=(UBYTE *)"SPEED LIMIT 55 MPH";
  77.       msg3.LeftEdge=25;
  78.       }
  79.    if (test == 5)
  80.       {
  81.       msg3.FrontPen=flesh;
  82.       msg3.IText=(UBYTE *)"SHADYREST HOTEL AHEAD";
  83.       msg3.LeftEdge=13;
  84.       }
  85.    if (test == 6)
  86.       {
  87.       msg3.FrontPen=maroon;
  88.       msg3.IText=(UBYTE *)"NEW HOME LOANS 3.4%";
  89.       msg3.LeftEdge=21;
  90.       }
  91.    if (test == 7)
  92.       {
  93.       msg3.FrontPen=dk_maroon;
  94.       msg3.IText=(UBYTE *)"ROAD CONSTRUCTION AHEAD";
  95.       msg3.LeftEdge=5;
  96.       }
  97.    if (test == 8)
  98.       {
  99.       msg3.FrontPen=yellow;
  100.       msg3.IText=(UBYTE *)"SLOW CHILDREN AT PLAY";
  101.       msg3.LeftEdge=13;
  102.       }
  103.    if (test == 9)
  104.       {
  105.       msg3.FrontPen=dk_blue;
  106.       msg3.IText=(UBYTE *)"TIME FOR A TUNE-UP";
  107.       msg3.LeftEdge=25;
  108.       }
  109.    if (test == 10)
  110.       {
  111.       msg3.FrontPen=red;
  112.       msg3.IText=(UBYTE *)"TAX FORMS PREPARED HERE";
  113.       msg3.LeftEdge=5;
  114.       }
  115.    if (test == 11)
  116.       {
  117.       msg3.FrontPen=chance_orange;
  118.       msg3.IText=(UBYTE *)"RAILROAD CROSSING AHEAD";
  119.       msg3.LeftEdge=5;
  120.       }
  121.    if (test == 12)
  122.       {
  123.       msg3.FrontPen=brite_green;
  124.       msg3.IText=(UBYTE *)"HELP SUPPORT CHARITY";
  125.       msg3.LeftEdge=17;
  126.       }
  127.    if (test == 13)
  128.       {
  129.       msg3.FrontPen=red;
  130.       msg3.IText=(UBYTE *)"TRADE IN YOUR OLD TOKEN";
  131.       msg3.LeftEdge=5;
  132.       }
  133.    if (test == 14)
  134.       {
  135.       msg3.FrontPen=dk_gray;
  136.       msg3.IText=(UBYTE *)"REPAINT YOUR TOKEN";
  137.       msg3.LeftEdge=25;
  138.       }
  139.    if (test == 15)
  140.       {
  141.       msg3.FrontPen=lt_gray;
  142.       msg3.IText=(UBYTE *)"INVEST IN REAL ESTATE";
  143.       msg3.LeftEdge=13;
  144.       }
  145.    }
  146.  
  147. ngow.LeftEdge=63;
  148. ngow.TopEdge=29;
  149. ngow.Width=194;
  150. ngow.Height=143;
  151. ngow.DetailPen=white;
  152. ngow.BlockPen=green;
  153. ngow.Title=NULL;
  154. ngow.Flags=SMART_REFRESH | ACTIVATE | BORDERLESS;
  155. ngow.IDCMPFlags=NULL;
  156. ngow.FirstGadget=NULL;
  157. ngow.Screen=screen1;
  158.  
  159. if ((gowindow=(struct Window *)OpenWindow(&ngow))==NULL) cleanup();
  160. rportgo=gowindow->RPort;
  161.  
  162. PrintIText(rportgo, &cname, 0, 0);   
  163. PrintIText(rportgo, &msg0, 0, 0);   
  164.  
  165. Delay(125);
  166. CloseWindow(gowindow);
  167. }
  168.  
  169.  
  170.  
  171. VOID drawdice()
  172. {
  173. SetAPen(rportboard, white);
  174. RectFill(rportboard, 299, 81, 314, 96);
  175. RectFill(rportboard, 299, 101, 314, 116);
  176. SetAPen(rportboard, 23);  /*  bd_gray  */
  177. WritePixel(rportboard, 299, 81); 
  178. WritePixel(rportboard, 299, 96); 
  179. WritePixel(rportboard, 314, 81); 
  180. WritePixel(rportboard, 314, 96);
  181. WritePixel(rportboard, 299, 101);
  182. WritePixel(rportboard, 314, 101);
  183. WritePixel(rportboard, 299, 116);
  184. WritePixel(rportboard, 314, 116);
  185.  
  186. SetAPen(rportboard, black);
  187. if (dice0 == 1)  RectFill(rportboard, 305, 87, 308, 90);
  188. if (dice1 == 1)  RectFill(rportboard, 305, 107, 308, 110);
  189. if (dice0 == 2)
  190.   {
  191.   RectFill(rportboard, 301, 87, 304, 90);
  192.   RectFill(rportboard, 309, 87, 312, 90);
  193.   }
  194. if (dice1 == 2)
  195.   {
  196.   RectFill(rportboard, 301, 107, 304, 110);
  197.   RectFill(rportboard, 309, 107, 312, 110);
  198.   }
  199. if (dice0 == 3)
  200.    {
  201.    RectFill(rportboard, 301, 83, 304, 86);
  202.    RectFill(rportboard, 305, 87, 308, 90);
  203.    RectFill(rportboard, 309, 91, 312, 94);
  204.    }
  205. if (dice1 == 3)
  206.    {
  207.    RectFill(rportboard, 301, 103, 304, 106);
  208.    RectFill(rportboard, 305, 107, 308, 110);
  209.    RectFill(rportboard, 309, 111, 312, 114);
  210.    }
  211. if (dice0 == 4)
  212.    {
  213.    RectFill(rportboard, 302, 84, 305, 87);
  214.    RectFill(rportboard, 309, 84, 312, 87);
  215.    RectFill(rportboard, 302, 90, 305, 93);
  216.    RectFill(rportboard, 309, 90, 312, 93);
  217.    }
  218. if (dice1 == 4)
  219.    {
  220.    RectFill(rportboard, 302, 104, 305, 107);
  221.    RectFill(rportboard, 309, 104, 312, 107);
  222.    RectFill(rportboard, 302, 110, 305, 113);
  223.    RectFill(rportboard, 309, 110, 312, 113);
  224.    }
  225. if (dice0 == 5)
  226.    {
  227.    RectFill(rportboard, 301, 83, 304, 86);
  228.    RectFill(rportboard, 309, 83, 312, 86);
  229.    RectFill(rportboard, 305, 87, 308, 90);
  230.    RectFill(rportboard, 301, 91, 304, 94);
  231.    RectFill(rportboard, 309, 91, 312, 94);
  232.    }
  233. if (dice1 == 5)
  234.    {
  235.    RectFill(rportboard, 301, 103, 304, 106);
  236.    RectFill(rportboard, 309, 103, 312, 106);
  237.    RectFill(rportboard, 305, 107, 308, 110);
  238.    RectFill(rportboard, 301, 111, 304, 114);
  239.    RectFill(rportboard, 309, 111, 312, 114);
  240.    }
  241. if (dice0 == 6)
  242.    {
  243.    RectFill(rportboard, 302, 82, 305, 85);
  244.    RectFill(rportboard, 308, 82, 311, 85);
  245.    RectFill(rportboard, 302, 87, 305, 90);
  246.    RectFill(rportboard, 308, 87, 311, 90);
  247.    RectFill(rportboard, 302, 92, 305, 95);
  248.    RectFill(rportboard, 308, 92, 311, 95);
  249.    }
  250. if (dice1 == 6)
  251.    {
  252.    RectFill(rportboard, 302, 102, 305, 105);
  253.    RectFill(rportboard, 308, 102, 311, 105);
  254.    RectFill(rportboard, 302, 107, 305, 110);
  255.    RectFill(rportboard, 308, 107, 311, 110);
  256.    RectFill(rportboard, 302, 112, 305, 115);
  257.    RectFill(rportboard, 308, 112, 311, 115);
  258.    }
  259. }
  260.