Rev 6167 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6167 | Rev 7984 | ||
---|---|---|---|
Line 1... | Line -... | ||
1 | //Leency 10.10.2011, JustClicks v2.0, GPL |
- | |
Line 2... | Line 1... | ||
2 | 1 | #include "lib\kolibri.h" |
|
3 | #include "lib\kolibri.h" |
2 | #include "lib\random.h" |
- | 3 | ||
4 | #include "lib\random.h" |
4 | unsigned char block[] = FROM "lib\\boxes.raw"; |
- | 5 | ||
5 | #include "lib\boxes.txt" |
6 | system_colors sc; |
Line 6... | Line 7... | ||
6 | system_colors sc; |
7 | |
7 | 8 | //óðîâíè ñëîæíîñòè |
|
8 | //óðîâíè ñëîæíîñòè |
9 | int DIFFICULTY_LEVEL=1; //ïî-óìîë÷àíèþ ñðåäíåå ïîëå |
9 | int DIFFICULTY_LEVEL=1; //ïî-óìîë÷àíèþ ñðåäíåå ïîëå |
10 | char *BOARD_SIZES[]={ "S", "M", "L", 0 }; |
Line 10... | Line 11... | ||
10 | char *BOARD_SIZES[]={ "S\0", "M\0", "L\0", 0 }; |
11 | int DIFFICULTY_LEV_PARAMS[]={ 9, 12, 16 }; |
11 | int DIFFICULTY_LEV_PARAMS[]={ 9, 12, 16 }; |
12 | |
12 | 13 | int BLOCKS_NUM; //êîëè÷åñòâî êâàäðàòèêîâ ïî Õ è ïî Y |
|
Line 23... | Line 24... | ||
23 | #ifndef AUTOBUILD |
24 | #include "lang.h--" |
24 | #include "lang.h--" |
25 | #endif |
25 | #endif |
26 | |
Line 26... | Line 27... | ||
26 | 27 | #ifdef LANG_RUS |
|
27 | #ifdef LANG_RUS |
28 | #define NEW_GAME_TEXT " ®¢® [F2]" |
28 | char NEW_GAME_TEXT[]=" ®¢® [F2]"; |
29 | #define RESULT_TEXT "¥§ã«ìâ â: " |
29 | char REZULT_TEXT[]="¥§ã«ìâ â: "; |
30 | #elif LANG_EST |
30 | #elif LANG_EST |
31 | #define NEW_GAME_TEXT "Uus mäng [F2]" |
31 | char NEW_GAME_TEXT[]="Uus mäng [F2]"; |
32 | #define RESULT_TEXT "Tulemus: " |
32 | char REZULT_TEXT[]="Tulemus: "; |
33 | #else |
33 | #else |
34 | #define NEW_GAME_TEXT "New Game [F2]" |
34 | char NEW_GAME_TEXT[]="New Game [F2]"; |
35 | #define RESULT_TEXT "Result: " |
35 | char REZULT_TEXT[]="Result: "; |
36 | #endif |
Line 36... | Line 37... | ||
36 | #endif |
37 | |
37 | 38 | ||
38 | 39 | void main() |
|
Line 39... | Line 40... | ||
39 | void main() |
40 | { |
Line 40... | Line 41... | ||
40 | { |
41 | int id; |
Line 41... | Line 42... | ||
41 | int key_scancode, id; |
42 | |
42 | 43 | BLOCKS_NUM=DIFFICULTY_LEV_PARAMS[DIFFICULTY_LEVEL]; |
|
43 | BLOCKS_NUM=DIFFICULTY_LEV_PARAMS[DIFFICULTY_LEVEL]; |
44 | |
44 | 45 | new_game(); |
|
45 | new_game(); |
46 | |
46 | 47 | loop() |
|
47 | loop() |
48 | switch(WaitEvent()) |
48 | switch(WaitEvent()) |
49 | { |
49 | { |
50 | case evButton: |
50 | case evButton: |
51 | id = @GetButtonID(); |
Line 68... | Line 69... | ||
68 | 69 | BLOCKS_NUM = DIFFICULTY_LEV_PARAMS[DIFFICULTY_LEVEL]; //êîëè÷åñòâî êâàäðàòèêîâ ïî Õ è ïî Y |
|
Line 69... | Line 70... | ||
69 | BLOCKS_NUM = DIFFICULTY_LEV_PARAMS[DIFFICULTY_LEVEL]; //êîëè÷åñòâî êâàäðàòèêîâ ïî Õ è ïî Y |
70 | |
Line 70... | Line 71... | ||
70 | 71 | new_game(); |
|
71 | new_game(); |
72 | |
72 | 73 | MoveSize(-1, -1, BLOCK_SIZE*BLOCKS_NUM +9, BLOCK_SIZE*BLOCKS_NUM +GetSkinHeight()+4+USER_PANEL_HEIGHT); |
|
73 | MoveSize(-1, -1, BLOCK_SIZE*BLOCKS_NUM +9, BLOCK_SIZE*BLOCKS_NUM +GetSkinWidth()+4+USER_PANEL_HEIGHT); |
74 | break; |
74 | break; |
75 | } |
75 | } |
76 | break; |
76 | break; |
77 | case evKey: |
77 | case evKey: |
78 | @GetKeyScancode(); |
78 | key_scancode = GetKeyScancode(); |
79 | if (AL==001) //Escape |
79 | if (key_scancode==001) //Escape |
80 | ExitProcess(); |
80 | ExitProcess(); |
81 | if (AL==060) //F2 |
81 | if (key_scancode==060) //F2 |
82 | { |
82 | { |
83 | _NEW_GAME_MARK: |
83 | _NEW_GAME_MARK: |
84 | new_game(); |
Line 167... | Line 168... | ||
167 | { |
168 | int PANEL_Y; |
168 | int PANEL_Y; |
169 | proc_info Form; |
169 | proc_info Form; |
170 | |
Line 170... | Line 171... | ||
170 | 171 | sc.get(); |
|
171 | sc.get(); |
172 | DefineAndDrawWindow(300,176, BLOCK_SIZE*BLOCKS_NUM +9, BLOCK_SIZE*BLOCKS_NUM +GetSkinHeight()+4+USER_PANEL_HEIGHT, |
172 | DefineAndDrawWindow(300,176, BLOCK_SIZE*BLOCKS_NUM +9, BLOCK_SIZE*BLOCKS_NUM +GetSkinWidth()+4+USER_PANEL_HEIGHT, |
173 | 0x74,sc.work,0,0,HEADER); |
Line 173... | Line 174... | ||
173 | 0x74,sc.work,0,0,HEADER); |
174 | |
174 | 175 | //ïðîâåðÿåì íå ñõëîïíóòî ëè îêíî â çàãîëîâîê |
|
175 | //ïðîâåðÿåì íå ñõëîïíóòî ëè îêíî â çàãîëîâîê |
176 | GetProcessInfo(#Form, SelfInfo); |
Line 179... | Line 180... | ||
179 | 180 | PANEL_Y=BLOCK_SIZE*BLOCKS_NUM; |
|
Line 180... | Line 181... | ||
180 | PANEL_Y=BLOCK_SIZE*BLOCKS_NUM; |
181 | |
Line 181... | Line 182... | ||
181 | 182 | DrawBar(0,PANEL_Y, PANEL_Y, USER_PANEL_HEIGHT, sc.work); //ïàíåëü ñíèçó |
|
182 | DrawBar(0,PANEL_Y, PANEL_Y, USER_PANEL_HEIGHT, sc.work); //ïàíåëü ñíèçó |
183 | |
Line 183... | Line 184... | ||
183 | 184 | DrawCaptButton(10, PANEL_Y+7, 90, 20, 2, sc.work_button, sc.work_button_text,NEW_GAME_TEXT); |
|
Line 184... | Line 185... | ||
184 | DrawCaptButton(10, PANEL_Y+7, 90, 20, 2, sc.work_button, sc.work_button_text,#NEW_GAME_TEXT); |
185 | DrawCaptButton(105,PANEL_Y+7, 20, 20, 10,sc.work_button, sc.work_button_text,BOARD_SIZES[DIFFICULTY_LEVEL]); |
Line 227... | Line 228... | ||
227 | DrawBar(TEXT_X, TEXT_Y, 18,9, sc.work); |
228 | WriteText(TEXT_X,TEXT_Y,0x80,sc.work_text,IntToStr(BLOCKS_LEFT),0); |
228 | WriteText(TEXT_X,TEXT_Y,0x80,sc.work_text,IntToStr(BLOCKS_LEFT),0); |
229 | |
Line 229... | Line 230... | ||
229 | 230 | if (check_for_end()) |
|
230 | if (check_for_end()) |
231 | { |
231 | { |
232 | copystr(RESULT_TEXT, #rezult); |
232 | copystr(#REZULT_TEXT, #rezult); |
233 | copystr(IntToStr(BLOCKS_LEFT), #rezult+strlen(#rezult)); |
233 | copystr(IntToStr(BLOCKS_LEFT), #rezult+strlen(#rezult)); |
234 | if (check_for_end()==1) copystr("Epic WIN!!1", #rezult); |
234 | if (check_for_end()==1) copystr("Epic WIN!!1", #rezult); |
235 | DrawFlatButton(BLOCK_SIZE*BLOCKS_NUM/2-70, BLOCK_SIZE*BLOCKS_NUM/2-20, 140, 40, 3, #rezult); |
235 | DrawFlatButton(BLOCK_SIZE*BLOCKS_NUM/2-70, BLOCK_SIZE*BLOCKS_NUM/2-20, 140, 40, 3, #rezult); |
236 | } |
236 | } |
237 | } |
Line 241... | Line 242... | ||
241 | { |
242 | int i; |
242 | int i; |
243 | |
Line 243... | Line 244... | ||
243 | 244 | //ïÿòü öâåòîâ èñïîëüçóåòñÿ â èãðå äëÿ êâàäðàòèêîâ, MARKED äëÿ òîãî, |
|
244 | //ïÿòü öâåòîâ èñïîëüçóåòñÿ â èãðå äëÿ êâàäðàòèêîâ, MARKED äëÿ òîãî, |
245 | //÷òîáû îòìåòèòü êâàäðàòèêè â ïðîöåññå çàëèâêè è DELETED_BLOCK äëÿ èõ óäàëåíèÿ |
245 | //÷òîáû îòìåòèòü êâàäðàòèêè â ïðîöåññå çàëèâêè è DELETED_BLOCK äëÿ èõ óäàëåíèÿ |
246 | for (i=0;i |
246 | for (i=0;i |
247 | blocks_matrix[i] = random(5); |
- | 248 | } |
|
247 | blocks_matrix[i] = random(5); |
249 | DeleteButton(3); |
248 | DeleteButton(3); |
250 | } |
Line 249... | Line 251... | ||
249 | } |
251 |