home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / OPENSTEP / Games / NeXTGo-3.0-MIS / sethand.c < prev    next >
Encoding:
C/C++ Source or Header  |  1997-07-06  |  1.7 KB  |  89 lines

  1. #include "comment.header"
  2.  
  3. /* $Id: sethand.c,v 1.3 1997/07/06 19:35:08 ergo Exp $ */
  4.  
  5. /*
  6.  * $Log: sethand.c,v $
  7.  * Revision 1.3  1997/07/06 19:35:08  ergo
  8.  * actual version
  9.  *
  10.  * Revision 1.2  1997/05/04 18:57:12  ergo
  11.  * added time control for moves
  12.  *
  13.  */
  14.  
  15. #define BLACKSTONE 2
  16.  
  17. extern unsigned char p[19][19];
  18. extern int MAXX, MAXY;
  19.  
  20. void sethand(int i)
  21.      /* set up handicap pieces */
  22. {
  23.   int half, q;
  24.   
  25.   half = (MAXX + 1)/2 - 1;
  26.   if (MAXX < 13)
  27.     q = 2;
  28.   else
  29.     q = 3;
  30.   
  31.   if (i > 0)
  32.     {
  33.       p[q][MAXY - q - 1] = BLACKSTONE;
  34.       if (i > 1)
  35.     {
  36.       p[MAXX - q - 1][q] = BLACKSTONE;
  37.       if (i > 2)
  38.         {
  39.           p[q][q] = BLACKSTONE;
  40.           if (i > 3)
  41.         {
  42.           p[MAXX - q - 1][MAXY - q - 1] = BLACKSTONE;
  43.           if (i == 5)
  44.             p[half][half] = BLACKSTONE;
  45.           else
  46.             if (i > 5)
  47.               {
  48.             p[q][half] = BLACKSTONE;
  49.             p[MAXX - q - 1][half] = BLACKSTONE;
  50.             if (i == 7)
  51.               p[half][half] = BLACKSTONE;
  52.             else
  53.               if (i > 7)
  54.                 {
  55.                   p[half][MAXY - q - 1] = BLACKSTONE;
  56.                   p[half][q] = BLACKSTONE;
  57.                   if (i > 8)
  58.                 p[half][half] = BLACKSTONE;
  59.                   if (i > 9)
  60.                 {p[q - 1][q - 1] = BLACKSTONE;
  61.                  if (i > 10)
  62.                    {p[MAXX - q][MAXY - q] = BLACKSTONE;
  63.                     if (i > 11)
  64.                       {p[q - 1][MAXY - q] = BLACKSTONE;
  65.                        if (i > 12)
  66.                      {p[MAXX - q][q - 1] = BLACKSTONE;
  67.                       if (i > 13)
  68.                         {p[(q + half)/2][(q + half)/2] = BLACKSTONE;
  69.                          if (i > 14)
  70.                            {p[(MAXX - q + half)/2][(MAXY - q + half)/2] = BLACKSTONE;
  71.                         if (i > 15)
  72.                           {p[(q + half)/2][(MAXY - q + half)/2] = BLACKSTONE;
  73.                            if (i > 16)
  74.                              p[(MAXX - q + half)/2][(q + half)/2] = BLACKSTONE;
  75.                          }
  76.                           }
  77.                        }
  78.                     }
  79.                      }
  80.                   }
  81.                    }
  82.                 }
  83.               }
  84.         }
  85.         }
  86.     }
  87.     }
  88. }  /* end sethand */
  89.