forked from KolibriOS/kolibrios
clicks: small update, use scancode keys
git-svn-id: svn://kolibrios.org@6167 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
3e5852cee7
commit
0bf8ef743f
@ -89,8 +89,8 @@ void Draw_List()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DrawBar(0, yyy, list[active].w, list[active].item_h, system.color.grab_button);
|
DrawBar(0, yyy, list[active].w, list[active].item_h, 0x94AECE);
|
||||||
if (i<list[active].count) WriteText(12,yyy+list[active].text_y,0x80,system.color.grab_button_text, #temp_filename);
|
if (i<list[active].count) WriteText(12,yyy+list[active].text_y,0x80,0x000000, #temp_filename);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -2,10 +2,18 @@
|
|||||||
#define INCLUDE_SYSTEM_H
|
#define INCLUDE_SYSTEM_H
|
||||||
#print "[include <system.h>]\n"
|
#print "[include <system.h>]\n"
|
||||||
|
|
||||||
:struct COLORS
|
:struct COLORS {
|
||||||
{
|
dword
|
||||||
dword frame,grab,grab_button,grab_button_text,grab_text,
|
nonset1,
|
||||||
work,work_button,work_button_text,work_text,work_graph;
|
nonset2,
|
||||||
|
work_light,
|
||||||
|
work_dark,
|
||||||
|
nonset3,
|
||||||
|
work,
|
||||||
|
work_button,
|
||||||
|
work_button_text,
|
||||||
|
work_text,
|
||||||
|
work_graph;
|
||||||
void get();
|
void get();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -13,7 +21,7 @@
|
|||||||
{
|
{
|
||||||
EAX = 48;
|
EAX = 48;
|
||||||
EBX = 3;
|
EBX = 3;
|
||||||
ECX = #frame;
|
ECX = #nonset1;
|
||||||
EDX = 40;
|
EDX = 40;
|
||||||
$int 0x40
|
$int 0x40
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,7 @@ system_colors sc;
|
|||||||
|
|
||||||
//óðîâíè ñëîæíîñòè
|
//óðîâíè ñëîæíîñòè
|
||||||
int DIFFICULTY_LEVEL=1; //ïî-óìîë÷àíèþ ñðåäíåå ïîëå
|
int DIFFICULTY_LEVEL=1; //ïî-óìîë÷àíèþ ñðåäíåå ïîëå
|
||||||
char *BOARD_SIZES[]={ "S", "M", "L", 0 };
|
char *BOARD_SIZES[]={ "S\0", "M\0", "L\0", 0 };
|
||||||
int DIFFICULTY_LEV_PARAMS[]={ 9, 12, 16 };
|
int DIFFICULTY_LEV_PARAMS[]={ 9, 12, 16 };
|
||||||
|
|
||||||
int BLOCKS_NUM; //êîëè÷åñòâî êâàäðàòèêîâ ïî Õ è ïî Y
|
int BLOCKS_NUM; //êîëè÷åñòâî êâàäðàòèêîâ ïî Õ è ïî Y
|
||||||
@ -18,7 +18,7 @@ int blocks_matrix[28*28]; //
|
|||||||
#define BLOCK_SIZE 21 //ðàçìåð êâàäðàòèêà
|
#define BLOCK_SIZE 21 //ðàçìåð êâàäðàòèêà
|
||||||
#define MARKED 7
|
#define MARKED 7
|
||||||
#define DELETED_BLOCK 6
|
#define DELETED_BLOCK 6
|
||||||
#define HEADER "Just Clicks v2.1"
|
#define HEADER "Just Clicks v2.2"
|
||||||
|
|
||||||
#ifndef AUTOBUILD
|
#ifndef AUTOBUILD
|
||||||
#include "lang.h--"
|
#include "lang.h--"
|
||||||
@ -38,7 +38,7 @@ int blocks_matrix[28*28]; //
|
|||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
int key, id;
|
int key_scancode, id;
|
||||||
|
|
||||||
BLOCKS_NUM=DIFFICULTY_LEV_PARAMS[DIFFICULTY_LEVEL];
|
BLOCKS_NUM=DIFFICULTY_LEV_PARAMS[DIFFICULTY_LEVEL];
|
||||||
|
|
||||||
@ -75,10 +75,10 @@ void main()
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case evKey:
|
case evKey:
|
||||||
key = GetKey();
|
key_scancode = GetKeyScancode();
|
||||||
if (key==027) //Escape
|
if (key_scancode==001) //Escape
|
||||||
ExitProcess();
|
ExitProcess();
|
||||||
if (key==051) //F2
|
if (key_scancode==060) //F2
|
||||||
{
|
{
|
||||||
_NEW_GAME_MARK:
|
_NEW_GAME_MARK:
|
||||||
new_game();
|
new_game();
|
||||||
@ -181,14 +181,8 @@ void draw_window()
|
|||||||
|
|
||||||
DrawBar(0,PANEL_Y, PANEL_Y, USER_PANEL_HEIGHT, sc.work); //ïàíåëü ñíèçó
|
DrawBar(0,PANEL_Y, PANEL_Y, USER_PANEL_HEIGHT, sc.work); //ïàíåëü ñíèçó
|
||||||
|
|
||||||
//íîâàÿ èãðà
|
DrawCaptButton(10, PANEL_Y+7, 90, 20, 2, sc.work_button, sc.work_button_text,#NEW_GAME_TEXT);
|
||||||
DefineButton(10,PANEL_Y+7, 13*6+6, 20, 2,sc.work_button);
|
DrawCaptButton(105,PANEL_Y+7, 20, 20, 10,sc.work_button, sc.work_button_text,BOARD_SIZES[DIFFICULTY_LEVEL]);
|
||||||
WriteText(10+4,PANEL_Y+14,0x80,sc.work_button_text,#NEW_GAME_TEXT,0);
|
|
||||||
|
|
||||||
|
|
||||||
//êíîïî÷êa âûáîðà óðîâíÿ ñëîæíîñòè
|
|
||||||
DefineButton(95,PANEL_Y+7, 20,20, 10,sc.work_button);
|
|
||||||
WriteText(95+8,PANEL_Y+14,0x80,sc.work_button_text,BOARD_SIZES[DIFFICULTY_LEVEL],0);
|
|
||||||
|
|
||||||
draw_field();
|
draw_field();
|
||||||
|
|
||||||
@ -272,7 +266,7 @@ void draw_field()
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
DefineButton(j*BLOCK_SIZE,i*BLOCK_SIZE,BLOCK_SIZE-1,BLOCK_SIZE-1, current_id+100+BT_HIDE,0);
|
DefineButton(j*BLOCK_SIZE,i*BLOCK_SIZE,BLOCK_SIZE-1,BLOCK_SIZE-1, current_id+100+BT_HIDE,0);
|
||||||
PutImage(blocks_matrix[current_id]*1323+#img,21,21,j*BLOCK_SIZE,i*BLOCK_SIZE);
|
PutImage(blocks_matrix[current_id]*1323+#block,21,21,j*BLOCK_SIZE,i*BLOCK_SIZE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
del lang.h--
|
@del lang.h--
|
||||||
echo #define LANG_ENG 1 >lang.h--
|
@echo #define LANG_ENG 1 >lang.h--
|
||||||
..\C--\C-- clicks.c
|
C-- clicks.c
|
||||||
del clicks
|
@del clicks
|
||||||
rename clicks.com clicks
|
@rename clicks.com clicks
|
||||||
del warning.txt
|
@del warning.txt
|
||||||
del lang.h--
|
@del lang.h--
|
||||||
pause
|
@pause
|
||||||
|
@kpack clicks
|
@ -1,8 +1,9 @@
|
|||||||
del lang.h--
|
@del lang.h--
|
||||||
echo #define LANG_RUS 1 >lang.h--
|
@echo #define LANG_RUS 1 >lang.h--
|
||||||
..\C--\C-- clicks.c
|
c-- clicks.c
|
||||||
del clicks
|
@pause
|
||||||
rename clicks.com clicks
|
@del clicks
|
||||||
del warning.txt
|
@rename clicks.com clicks
|
||||||
del lang.h--
|
@del warning.txt
|
||||||
pause
|
@del lang.h--
|
||||||
|
@kpack clicks
|
@ -1,4 +1,4 @@
|
|||||||
unsigned char img[6615] = {
|
unsigned char block[6615] = {
|
||||||
0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2,
|
0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2,
|
||||||
0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2,
|
0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2,
|
||||||
0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C,
|
0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C, 0xE2, 0xE2, 0x8C,
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.0 KiB |
@ -46,7 +46,17 @@ inline fastcall void GetProcessInfo(dword EBX, ECX)
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct system_colors {
|
struct system_colors {
|
||||||
dword frame,grab,grab_button,grab_button_text,grab_text,work,work_button,work_button_text,work_text,work_graph;
|
dword
|
||||||
|
nonset1,
|
||||||
|
nonset2,
|
||||||
|
work_light,
|
||||||
|
work_dark,
|
||||||
|
nonset3,
|
||||||
|
work,
|
||||||
|
work_button,
|
||||||
|
work_button_text,
|
||||||
|
work_text,
|
||||||
|
work_graph;
|
||||||
void get();
|
void get();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -55,7 +65,7 @@ void system_colors::get()
|
|||||||
$push ecx
|
$push ecx
|
||||||
EAX = 48;
|
EAX = 48;
|
||||||
EBX = 3;
|
EBX = 3;
|
||||||
ECX = #frame;
|
ECX = #nonset1;
|
||||||
EDX = 40;
|
EDX = 40;
|
||||||
$int 0x40
|
$int 0x40
|
||||||
$pop ecx
|
$pop ecx
|
||||||
@ -68,11 +78,12 @@ inline fastcall dword WaitEvent(){
|
|||||||
$int 0x40
|
$int 0x40
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int GetKeyScancode()
|
||||||
inline fastcall word GetKey(){
|
{
|
||||||
EAX = 2; // just read it key from buffer
|
$mov eax,2
|
||||||
$int 0x40
|
$int 0x40
|
||||||
EAX = EAX >> 8;
|
$shr eax,16
|
||||||
|
return AL;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline fastcall word GetButtonID(){
|
inline fastcall word GetButtonID(){
|
||||||
@ -244,3 +255,11 @@ done:
|
|||||||
$pop ecx
|
$pop ecx
|
||||||
$pop ebx
|
$pop ebx
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DrawCaptButton(dword x,y,w,h,id,color_b, color_t,text)
|
||||||
|
{
|
||||||
|
if (id>0) DefineButton(x,y,w,h,id,color_b);
|
||||||
|
WriteText(-strlen(text)*6+w/2+x+1,h/2-3+y,0x80,color_t,text);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user