author | leseb <leseb> | 2002-03-14 10:31:39 (UTC) |
---|---|---|
committer | leseb <leseb> | 2002-03-14 10:31:39 (UTC) |
commit | 1003de6f3b0c508960e0e717333a64603fffb133 (patch) (side-by-side diff) | |
tree | dbc1c56f0644f0348e35e6e5856ef07110f7fcb7 /noncore/games/kcheckers/checkers.h | |
parent | 13d8ac43bf8d4c6e492e57d2ab3c7353935a9365 (diff) | |
download | opie-1003de6f3b0c508960e0e717333a64603fffb133.zip opie-1003de6f3b0c508960e0e717333a64603fffb133.tar.gz opie-1003de6f3b0c508960e0e717333a64603fffb133.tar.bz2 |
Initial commit
Diffstat (limited to 'noncore/games/kcheckers/checkers.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/games/kcheckers/checkers.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/noncore/games/kcheckers/checkers.h b/noncore/games/kcheckers/checkers.h new file mode 100644 index 0000000..bd2be08 --- a/dev/null +++ b/noncore/games/kcheckers/checkers.h @@ -0,0 +1,56 @@ +#ifndef CHECKERS_H +#define CHECKERS_H + +#define NONE 0 +#define MAN1 1 +#define KING1 2 +#define FREE 3 +#define KING2 4 +#define MAN2 5 +#define FULL 6 + +#define UL -6 +#define UR -5 +#define DL 5 +#define DR 6 + + +class Checkers +{ + public: + Checkers(int); + virtual bool go1(int,int)=0; + + void go2(); + bool checkMove1(); + bool checkMove2(); + + virtual bool checkCapture1()=0; + virtual bool checkCapture2()=0; + + void setLevel(int i) {levelmax=i;}; + int getBoard(int i) {return board[i];}; + + protected: + int level; // Current level + int levelmax; // Maximum level + + int turn(); + void turn(int &,bool capture=false); + + int to; + int board[54]; + int bestboard[54]; + int bestcounter; + + virtual void kingMove2(int,int &)=0; + + virtual bool manCapture2(int,int &)=0; + virtual bool kingCapture2(int,int,int &)=0; + + virtual bool manCapture1(int,int,bool &)=0; + virtual bool kingCapture1(int,int,bool &)=0; + +}; + +#endif |