Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1767 → Rev 1768

/programs/games/clicks/trunk/compile.bat
File deleted
\ No newline at end of file
/programs/games/clicks/trunk/History.txt
1,9 → 1,17
********************************************************************************
********************************************************************************
Just Clicks
Copyright (C) 2008 Leency
Copyright (C) 2008-2009 Leency
Èñòîðèÿ âåðñèé:
 
Just Clicks v0.77 (08.09.2009)
- ñóùåñòâåííî óìåíüøåíî ïîòðåáëÿåìîå ïðîãðàììîé êîëè÷åñòâî ïàìÿòè
- êíîïêè ïîä ñòèëü ñèñòåìû
- íåáîëüøèå îïòèìèçàöèè
 
Just Clicks v0.76 (28.01.2009)
- îïòèìèçàöèè
 
Just Clicks v0.75 (20.11.2008)
- òðè áàãôèêñà, íåáîëüøèå îïòèìèçàöèè
 
/programs/games/clicks/trunk/clicks.c--
12,8 → 12,12
#include "files\boxes.txt"
#include "files\cups.txt"
 
#ifndef AUTOBUILD
#include "lang.h--"
#endif
 
byte i,j, XX, YY;
system_colors sc;
 
struct
{
125,37 → 129,59
{
DefineButton(j*21,y-22, 20, 20, num+BT_HIDE, 0);
PutImage(matrix[num].color-1*1323+#img,21,21,j*21,y-22);
} ELSE DrawBar(j*21,y-22,21,21, 0xB2B4BF);
}
ELSE
DrawBar(j*21,y-22,21,21, 0xB2B4BF);
num++;
}
y=y+21;
}
DrawBar(90,178,71,8,0xE4DFE1);
IF (check_for_end()==1) WriteText(90,178,0x80,0,"¥§ã«ìâ â:",10);
ELSE WriteText(96,178,0x80,0,"Žáâ «®áì:",10);
#ifdef LANG_RUS
DrawBar(90,178,71,8,sc.work);
IF (check_for_end()==1) WriteText(90,178,0x80,sc.work_text,"¥§ã«ìâ â:",10);
ELSE WriteText(96,178,0x80,sc.work_text,"Žáâ «®áì:",10);
#else
DrawBar(108,178,60,8,sc.work);
IF (check_for_end()==1) WriteText(108,178,0x80,sc.work_text,"Result:",10);
ELSE WriteText(108,178,0x80,sc.work_text,"Blocks:",10);
#endif
FOR (i=0;i<8;i++) FOR (j=0;j<8;j++) IF (matrix[j*8+i].mark==0) count_blocks++;
WriteNumber(150,178,0x80,0,count_blocks);
WriteNumber(150,178,0x80,sc.work_text,count_blocks);
//
if (check_for_end()==1) && (count_blocks<8)
{
DrawFlatButton(21,42,125,62,0,0xE4DFE1,"");
DrawFlatButton();
#ifdef LANG_RUS
IF (count_blocks==0) copystr(" ‹ãçè¥ ¢á¥å!", #temp);
IF (count_blocks==1) copystr(" à¥ªà á­®", #temp);
IF (count_blocks==2) copystr("Žç¥­ì å®à®è®!", #temp);
#else
IF (count_blocks==0) copystr("The best!", #temp);
IF (count_blocks==1) copystr("Wonderful", #temp);
IF (count_blocks==2) copystr("Very good", #temp);
#endif
IF (count_blocks>=3) //¡ £!!!
{
#ifdef LANG_RUS
copystr(" ¥¯«®å®", #temp);
#else
copystr(" Not bed", #temp);
#endif
count_blocks=3;
}
PutImage(count_blocks*42*37*3+#cups,42,37,63,48);
PutImage(count_blocks*4662+#cups,42,37,63,48);
#ifdef LANG_RUS
WriteText(46,91,0x80,0x0,#temp,0);
#else
WriteText(58,91,0x80,0x0,#temp,0);
#endif
}
}
 
 
void main()
{ byte id, skin_width;
randomize();
{ byte id;
//randomize();
ReDraw_Blocks(1);
loop()
{
183,16 → 209,35
break;
case evReDraw:
WindowRedrawStatus(1);
skin_width = GetSkinWidth();
DefineAndDrawWindow(400,276,177,201+skin_width,0x74,0x10B2B4BF,0,0,"Just Clicks v0.76");
DefineButton(150,2-skin_width,18,18,255+BT_HIDE+BT_NOFRAME,0x0866CC00);
DrawBar(0,168,168,29,0xE4DFE1);
//DrawFlatButton(9,172,84,19,254,0xE4DFE1,"New game (F2)");
DrawFlatButton(4,172,80,19,254,0xE4DFE1,"‡ ­®¢® (F2)");
DefineAndDrawWindow(400,276,177,201+GetSkinWidth(),0x74,0x10B2B4BF,0,0,"Just Clicks v0.77");
WindowRedrawStatus(2);
sc.get();
DefineButton(150,-18,18,18,255+BT_HIDE+BT_NOFRAME,0); //ª­®¯®çª  § ªàëâ¨ï :]
DrawBar(0,168,168,29,sc.work); //¯ ­¥«ìª  á­¨§ã
#ifdef LANG_RUS
DefineButton(9,172,76,19,254,sc.work_button);
WriteText(16,178,0x80,sc.work_button_text,"‡ ­®¢® (F2)",0);
#else
DefineButton(9,172,86,19,254,sc.work_button);
WriteText(15,178,0x80,sc.work_button_text,"New game (F2)",0);
#endif
ReDraw_Blocks(0);
WindowRedrawStatus(2);
}
}
}
 
 
void DrawFlatButton()
{
DrawBar(21,42,125,1,0x94AECE); //¯®«®á  £®à ᢥàåã
DrawBar(21,104,125,1,0x94AECE); //¯®«®á  £®à á­¨§ã
DrawBar(21,42,1,62,0x94AECE); //¯®«®á  ¢¥àâ á«¥¢ 
DrawBar(146,42,1,63,0x94AECE); //¯®«®á  ¢¥àâ á¯à ¢ 
DrawBar(22,43,124,1,0xFFFFFF); //¯®«®á  £®à ¡¥« ï
DrawBar(22,103,123,1,0xC7C7C7); //â¥­ì ¢¥àâ
DrawBar(22,43,1,61,0xFFFFFF); //¯®«®á  ¢¥àâ ¡¥« ï
DrawBar(145,44,1,60,0xC7C7C7); //â¥­ì ¢¥àâ
DrawBar(23,44,122,59,0xE4DFE1); //§ «¨¢ª 
}
 
stop:
/programs/games/clicks/trunk/compile_eng.bat
0,0 → 1,6
echo #define LANG_ENG 1 >lang.h--
c--\c-- clicks.c--
del clicks.kex
rename clicks.com clicks.kex
rem rename clicks clicks.kex
pause
/programs/games/clicks/trunk/compile_rus.bat
0,0 → 1,6
echo #define LANG_RUS 1 >lang.h--
c--\c-- clicks.c--
del clicks.kex
rename clicks.com clicks.kex
rem rename clicks clicks.kex
pause
/programs/games/clicks/trunk/lib/kolibri.h--
4,8 → 4,8
dword os_version = 0x00000001;
dword start_addr = #main;
dword final_addr = #stop+32;
dword alloc_mem = 0x00100000;
dword x86esp_reg = 0x0007fff0;
dword alloc_mem = 0x00004096;
dword x86esp_reg = 0x00004096;
dword I_Param = 0x0;
dword I_Icon = 0x0;
 
18,6 → 18,18
#define BT_NOFRAME 0x20000000
 
 
struct system_colors{
dword frame,grab,grab_button,grab_button_text,grab_text,work,work_button,work_button_text,work_text,work_graph;
void get();
};
void system_colors::get()
{
EAX = 48;
EBX = 3;
ECX = #frame;
EDX = 40;
$int 0x40
}
 
inline fastcall dword WaitEvent(){
EAX = 10; // wait here for event
30,13 → 42,13
$int 0x40
}
 
inline fastcall word GetKey(){
inline fastcall byte GetKey(){
EAX = 2; // just read it key from buffer
$int 0x40
EAX = EAX >> 8;
}
 
inline fastcall word GetButtonID(){
inline fastcall byte GetButtonID(){
EAX = 17; // Get ID
$int 0x40
EAX = EAX >> 8;
56,14 → 68,7
$int 0x40;
}
 
inline fastcall dword strlen(dword EDI){
ECX=EAX=0;
ECX--;
$REPNE $SCASB
EAX-=2+ECX;
}
 
 
inline fastcall void WindowRedrawStatus(dword EBX){
EAX = 12;
$int 0x40
72,11 → 77,11
 
void DefineAndDrawWindow(dword x,y,sizeX,sizeY,byte mainAreaType,dword mainAreaColour,byte headerType,dword headerColour,EDI)
{
EAX = 0;
EBX = x << 16 + sizeX;
ECX = y << 16 + sizeY;
EDX = mainAreaType << 24 | mainAreaColour;
ESI = headerType << 24 | headerColour;
$xor eax,eax
$int 0x40
}
 
106,27 → 111,6
}
 
 
void DrawRegion(dword x,y,width,height,color1)
{
DrawBar(x,y,width,1,color1); //ïîëîñà ãîð ñâåðõó
DrawBar(x,y+height,width,1,color1); //ïîëîñà ãîð ñíèçó
DrawBar(x,y,1,height,color1); //ïîëîñà âåðò ñëåâà
DrawBar(x+width,y,1,height+1,color1); //ïîëîñà âåðò ñïðàâà
}
 
void DrawFlatButton(dword x,y,width,height,id,color,text)
{
DrawRegion(x,y,width,height,0x94AECE);
DrawBar(x+1,y+1,width-1,1,0xFFFFFF); //ïîëîñà ãîð áåëàÿ
DrawBar(x+1,y+height-1,width-2,1,0xC7C7C7); //òåíü âåðò
DrawBar(x+1,y+1,1,height-1,0xFFFFFF); //ïîëîñà âåðò áåëàÿ
DrawBar(x+width-1,y+2,1,height-2,0xC7C7C7); //òåíü âåðò
DrawBar(x+2,y+2,width-3,height-3,color); //çàëèâêà
IF (id<>0) DefineButton(x,y,width,height,id+BT_HIDE,0xEFEBEF); //îïðåäåëÿåì êíîïêó
WriteText(-strlen(text)*6+width/2+x+1,height/2-3+y,0x80,0,text,0);
}
 
 
void PutImage(dword EBX,w,h,x,y)
{
EAX = 7;
152,12 → 136,6
{
EAX = 47;
EBX = 2<<16;
/*ecx = 0
while(eax>10)
{
ecx ++;
eax /= 10;
}*/
EDX = x<<16+y;
ESI = fontType<<24+ESI;
$int 0x40;