Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

checkers.h

Go to the documentation of this file.
00001 #ifndef CHECKERS_H
00002 #define CHECKERS_H
00003 
00004 #define NONE   0
00005 #define MAN1   1
00006 #define KING1  2
00007 #define FREE   3
00008 #define KING2  4
00009 #define MAN2   5
00010 #define FULL   6
00011 
00012 #define UL -6
00013 #define UR -5
00014 #define DL  5
00015 #define DR  6
00016 
00017 
00018 class Checkers
00019 {
00020   public:
00021           Checkers(int);
00022     virtual bool go1(int,int)=0;
00023 
00024     void go2();
00025     bool checkMove1();
00026     bool checkMove2();
00027 
00028     virtual bool checkCapture1()=0;
00029     virtual bool checkCapture2()=0;
00030 
00031     void setLevel(int i) {levelmax=i;};
00032 
00033     int board[54];
00034 
00035   protected:
00036     int level;        // Current level
00037     int levelmax;     // Maximum level
00038 
00039     int  turn();
00040     void turn(int &,bool capture=false);
00041 
00042     int to;
00043     int bestboard[54];
00044     int bestcounter;
00045 
00046     virtual void kingMove2(int,int &)=0;
00047 
00048     virtual bool manCapture2(int,int &)=0;
00049     virtual bool kingCapture2(int,int,int &)=0;
00050 
00051     virtual bool manCapture1(int,int,bool &)=0;
00052     virtual bool kingCapture1(int,int,bool &)=0;
00053 
00054 };
00055 
00056 #endif

Generated on Sat Nov 5 16:17:20 2005 for OPIE by  doxygen 1.4.2