summaryrefslogtreecommitdiff
path: root/noncore/games/kcheckers/kcheckers.h
Unidiff
Diffstat (limited to 'noncore/games/kcheckers/kcheckers.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/games/kcheckers/kcheckers.h54
1 files changed, 41 insertions, 13 deletions
diff --git a/noncore/games/kcheckers/kcheckers.h b/noncore/games/kcheckers/kcheckers.h
index e86524f..ccf5bae 100644
--- a/noncore/games/kcheckers/kcheckers.h
+++ b/noncore/games/kcheckers/kcheckers.h
@@ -8,18 +8,21 @@
8#include "field.h" 8#include "field.h"
9#include "checkers.h" 9#include "checkers.h"
10 10
11#define WOOD 1 11#define WOODEN 1
12#define MARBLE 2 12#define GREEN 2
13#define MARBLE 3
13 14
14#define ENGLISH 11 15#define ENGLISH 11
15#define RUSSIAN 12 16#define RUSSIAN 12
16 17
17#define BEGINNER 2 18#define BEGINNER 2
18#define NOVICE 4 19#define NOVICE 4
19#define AVERAGE 5 20#define AVERAGE 6
20#define GOOD 6 21#define GOOD 7
21#define EXPERT 7 22#define EXPERT 8
22#define MASTER 8 23#define MASTER 9
24
25class QToolButton;
23 26
24 27
25class KCheckers:public QMainWindow 28class KCheckers:public QMainWindow
@@ -28,11 +31,18 @@ class KCheckers:public QMainWindow
28 public: 31 public:
29 KCheckers(); 32 KCheckers();
30 33
34 protected:
35 void closeEvent(QCloseEvent*);
36
31 private slots: 37 private slots:
38
39 void help();
32 void about(); 40 void about();
33 void aboutQt(); 41 void aboutQt();
34 void newGame(); 42 void newGame();
35 void click(int); // Processes the mouse clics on fields 43 void undoMove();
44 void click(int);
45 void showNumeration();
36 46
37 void setSkillBeginner() {setSkill(BEGINNER);}; 47 void setSkillBeginner() {setSkill(BEGINNER);};
38 void setSkillNovice() {setSkill(NOVICE);}; 48 void setSkillNovice() {setSkill(NOVICE);};
@@ -41,18 +51,23 @@ class KCheckers:public QMainWindow
41 void setSkillExpert() {setSkill(EXPERT);}; 51 void setSkillExpert() {setSkill(EXPERT);};
42 void setSkillMaster() {setSkill(MASTER);}; 52 void setSkillMaster() {setSkill(MASTER);};
43 53
44 void setPatternWood() {setPattern(WOOD);}; 54 void setPatternWooden() {setPattern(WOODEN);};
55 void setPatternGreen() {setPattern(GREEN);};
45 void setPatternMarble() {setPattern(MARBLE);}; 56 void setPatternMarble() {setPattern(MARBLE);};
46 57
47 void setRulesEnglish() {setRules(ENGLISH);}; 58 void setRulesEnglish() {setRules(ENGLISH);};
48 void setRulesRussian() {setRules(RUSSIAN);}; 59 void setRulesRussian() {setRules(RUSSIAN);};
49 60
50 private: 61 private:
62
51 void compGo(); 63 void compGo();
52 bool userGo(int); 64 bool userGo(int);
53 65
54 void drawBoard(); 66 void drawBoard(int);
67 void drawNumeration();
55 void colorChange(); 68 void colorChange();
69 void unselect();
70 void readConfig();
56 71
57 void setSkill(int); 72 void setSkill(int);
58 void setRules(int); 73 void setRules(int);
@@ -62,6 +77,11 @@ class KCheckers:public QMainWindow
62 int skill; 77 int skill;
63 int rules; 78 int rules;
64 int pattern; 79 int pattern;
80
81 int numID; // Show Numeration
82 int undoID; // Undo Move
83 int undoBoard[32];
84
65 bool gameOver; 85 bool gameOver;
66 bool selected; 86 bool selected;
67 bool userFirst; 87 bool userFirst;
@@ -75,6 +95,9 @@ class KCheckers:public QMainWindow
75 QImage* imageWood1; 95 QImage* imageWood1;
76 QImage* imageWood2; 96 QImage* imageWood2;
77 QImage* imageWood3; 97 QImage* imageWood3;
98 QImage* imageGreen1;
99 QImage* imageGreen2;
100 QImage* imageGreen3;
78 QImage* imageMarble1; 101 QImage* imageMarble1;
79 QImage* imageMarble2; 102 QImage* imageMarble2;
80 QImage* imageMarble3; 103 QImage* imageMarble3;
@@ -84,10 +107,15 @@ class KCheckers:public QMainWindow
84 QImage* imageKing1; 107 QImage* imageKing1;
85 QImage* imageKing2; 108 QImage* imageKing2;
86 109
87 Checkers* game; 110 Checkers* game;
88 QPopupMenu* skillMenu; 111 QPopupMenu* gameMenu;
89 QPopupMenu* optionsMenu; 112 QPopupMenu* skillMenu;
90 QLabel* statusLabel; 113 QPopupMenu* optionsMenu;
114 QToolButton* undoButton;
115 QLabel* statusLabel;
116
117 static QString enNumeration;
118 static QString ruNumeration;
91 119
92 static const int t[32]; // Translate table 120 static const int t[32]; // Translate table
93 121