home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / games / volume5 / suicide / suicide2.c < prev   
C/C++ Source or Header  |  1988-09-21  |  2KB  |  95 lines

  1. /*
  2. To compile:
  3.  
  4.     cc suicide2.c -lcurses -ltermcap -o suicide2
  5.  
  6. Those flags are necessary if the graphics are to work properly.
  7. */
  8. /************************** BEGIN SUICIDE PROGRAM *****************************/
  9.  
  10. /*
  11. #include <curses.h>
  12. */
  13. #include "curses.h"
  14. main()
  15. {
  16.     int i, j;
  17.  
  18.     static int cx[] = {
  19.         20, 25, 30, 40, 44, 48, 57 };
  20.     
  21.  
  22.     static char *road[] = {
  23.         "------------------------------------------------------------------------------",
  24.         " ",
  25.         " ",
  26.         " ---   ---   ---   ---   ---   ---   ---   ---   ---   ---   ---   ---   ---",
  27.         " ",
  28.         " ",
  29.         "-----------------------------------------------------------------------------" };
  30.  
  31.     static char *car[] = {
  32.         " _/-\__",
  33.         " =o--o+"};
  34.  
  35.     static char *guy[] = {
  36.         "o",
  37.         "X",
  38.         " "};
  39.  
  40.     static char *boom[] = {
  41.         "    . *  . ",
  42.         "   ^  : .o . ",
  43.         "  =  \'$-# .  ",
  44.         "   . /=./\ ",
  45.         "     . v .  "};
  46.  
  47.     static char *cry[] = {
  48.         "Hey!",
  49.         "You!",
  50.         "Watch out",
  51.         "for",
  52.         "the",
  53.         "CAR !!!!"};
  54.  
  55.     static char *bye[] = {
  56.         " ",
  57.         " ",
  58.         " ",
  59.         "Bye",
  60.         "sick",
  61.         " world !!"};
  62.  
  63.     initscr();
  64.     clear();
  65.     printpic(road, 7, 8, 0);
  66.     for(i=0; i < 60; i++) {
  67.         printpic(car, 2, 12, i);
  68.         if(i%10 == 0) {
  69.             j = i/10;
  70.             printpic(guy, 3, 17-(j), 65);
  71.             mvprintw(3, cx[j], cry[j]);
  72.             mvprintw(20, cx[j]+18, bye[j]);
  73.             if(j == 5)
  74.                 mvprintw(14, 64, "---");
  75.         }    
  76.     }
  77.     printpic(boom, 4, 11, 60);
  78.     refresh();
  79.     endwin();
  80.     getchar();
  81.     
  82. }
  83.  
  84. printpic(pic, len, y, x)
  85. char **pic;
  86. int len, x, y;
  87. {
  88.     int i;
  89.     for (i=0; i < len; i++)
  90.         mvprintw(i + y, x, pic[i]);
  91.     refresh();
  92. }
  93.  
  94. /****************** END OF SUICIDE PROGRAM ************************************/
  95.