home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / games / volume8 / cutup / part01 / initend.c < prev    next >
C/C++ Source or Header  |  1989-09-18  |  2KB  |  93 lines

  1. #include <curses.h>
  2. #include "consts.h"
  3. #include "types.h"
  4. #include "funcs.h"
  5. #include "macros.h"
  6.  
  7. extern int IComputer;
  8. extern int StopIO;
  9.  
  10. void Welcome(wel_w)
  11.  
  12. WINDOW *wel_w;
  13.  
  14.     {
  15.     static char header[] = "C U T U P";
  16.  
  17.     wstandout(wel_w);
  18.     mvwaddstr(wel_w, 3, CENTRE(header), header);
  19.     wstandend(wel_w);
  20.     wmove(wel_w, 5, 5);
  21.     wprintw(wel_w, "Control the %c character...", S_US_CHAR);
  22.     wmove(wel_w, 7, 5);
  23.     wprintw(wel_w, "Avoid other %c and %c characters...", S_US_CHAR,
  24.         S_THEM_CHAR);
  25.     mvwaddstr(wel_w, 9, 5, "Avoid hitting the border...");
  26.     mvwaddstr(wel_w, 11, 5, "First to crash is the loser...");
  27.     wrefresh(wel_w);
  28.     wstandout(wel_w);
  29.     if (! IComputer)
  30.         {
  31.         mvwaddstr(wel_w, 14, 30, "Controls");
  32.         wstandend(wel_w);
  33.         wmove(wel_w, 16, 5);
  34.         wprintw(wel_w, "Left: '%c'    Right: '%c'", S_LEFT_CH,
  35.             S_RIGHT_CH);
  36.         wmove(wel_w, 18, 5);
  37.         wprintw(wel_w, "Up: '%c'      Down: '%c'", S_UP_CH, S_DOWN_CH);
  38.         mvwaddstr(wel_w, 20, 25, "--press space to start--");
  39.         wrefresh(wel_w);
  40.         while (wgetch(wel_w) != ' ');
  41.         }
  42.     else
  43.         sleep(2);
  44.     werase(wel_w);
  45.     box(wel_w, 0, 0);
  46.     wrefresh(wel_w);
  47.     }
  48.  
  49. void SeedRnd()
  50.  
  51.     {
  52.     extern long time();
  53.  
  54.     srand48(time((long *) 0));
  55.     }
  56.  
  57. void GetReady(win, p_read, p_write, game_count, hom)
  58.  
  59. WINDOW *win;
  60. int p_read;
  61. int p_write;
  62. char *hom;
  63.  
  64.     {
  65.     WINDOW *ready_w;
  66.     char mesg[256];
  67.     char waiting[256];
  68.     char ack;
  69.     int len, wait_len;
  70.  
  71.     if (! IComputer)
  72.         {
  73.         sprintf(mesg, "Game: %d - press space to begin...", game_count);
  74.         sprintf(waiting, "waiting for %s...", hom);
  75.         len = strlen(mesg) + 3;
  76.         wait_len = strlen(waiting) + 3;
  77.         if (wait_len > len)
  78.             len = wait_len;
  79.         ready_w = CreateWindow(win, 3, len, 10, (COLS - len) / 2);
  80.         mvwaddstr(ready_w, 1, 1, mesg);
  81.         wrefresh(ready_w);
  82.         while (wgetch(ready_w) != ' ');
  83.         werase(ready_w);
  84.         box(ready_w, 0, 0);
  85.         mvwaddstr(ready_w, 1, 1, waiting);
  86.         wrefresh(ready_w);
  87.         }
  88.     write(p_write, &ack, sizeof ack);
  89.     read(p_read, &ack, sizeof ack);
  90.     if (! IComputer)
  91.         RemoveWindow(win, ready_w);
  92.     }
  93.