home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / games / volume5 / wanderer / part02 / display.c next >
C/C++ Source or Header  |  1988-07-05  |  2KB  |  101 lines

  1. #include "wand_head.h"
  2.  
  3. void map(row_ptr)
  4. char (*row_ptr)[ROWLEN+1];
  5. {
  6. int  x,y;
  7. char ch;
  8. move(0,0);
  9. addch('+');
  10. for(x = 0;x < ROWLEN; x++)
  11.     addch('-');
  12. addch('+');
  13. for(y = 0;y < NOOFROWS; y++)
  14.     {
  15.     move(y+1,0);
  16.     addch('|');
  17.     for(x = 0; x<= ROWLEN; x++)
  18.     {
  19.     ch = (*row_ptr)[x];
  20.     if((ch == 'M')||(ch == 'S'))
  21.         ch = ' ';
  22.     addch(ch);
  23.     }
  24.     addch('|');
  25.     row_ptr++;
  26.     }
  27. move(y+1,0);
  28. addch('+');
  29. for(x = 0;x < ROWLEN; x++)
  30.     addch('-');
  31. addch('+');
  32. move(18,0);
  33. addstr("Press any key to return to the game.");
  34. refresh();
  35. (void) getchar();
  36. move(18,0);
  37. addstr("                                    ");
  38. refresh();
  39. for(y=0;y<=(NOOFROWS+1);y++)
  40.     {
  41.     move(y,0);
  42.     for(x=0;x<=(ROWLEN+2);x++)
  43.     addch(' ');
  44.     }
  45.  
  46. }
  47.  
  48. void display(cx,cy,row_ptr,score)
  49. char (*row_ptr)[ROWLEN+1];
  50. int  cx,cy,score;
  51. {
  52.     int  x,y = 0,
  53.          x_coord,y_coord;
  54.     char ch;
  55.     while(y<(cy-3))
  56.     {
  57.         y++;
  58.         row_ptr++;
  59.     };
  60.     move(0,0);
  61.     addstr("+---------------------------------+");
  62.     move(15,0);
  63.     addstr("+---------------------------------+");
  64.     for(y=(cy-3);y<=(cy+3);y++)
  65.     {
  66.         y_coord = (y+3-cy)*2;
  67.         if ((y<0) || (y>=NOOFROWS))
  68.         {
  69.             move(y_coord+1,0);
  70.             addstr("|#################################|");
  71.             move(y_coord+2,0);
  72.             addstr("|#################################|");
  73.         }
  74.         else
  75.     {
  76.         move(y_coord+1,0);
  77.             addch('|');
  78.         move(y_coord+1,34);
  79.             addch('|');
  80.         move(y_coord+2,0);
  81.             addch('|');
  82.         move(y_coord+2,34);
  83.             addch('|');
  84.             for(x=(cx-5);x<=(cx+5);x++)
  85.             {
  86.                 x_coord = (x+5-cx)*3;
  87.                 if ((x<0) || (x>ROWLEN-1))
  88.                     draw_symbol(x_coord,y_coord,'#');
  89.                 else
  90.                 {
  91.                     ch = (*row_ptr)[x];
  92.                     draw_symbol(x_coord,y_coord,ch);
  93.                 }
  94.             };
  95.         row_ptr++;
  96.         }                   /*   end if   */
  97.     }                       /* end y loop */
  98.     move(16,0);
  99.     refresh();
  100. }
  101.