3,8 → 3,9 |
|
#include <kosSyst.h> |
#include <kosFile.h> |
#include <func.h> |
|
char sVersion[] = "¥àá¨ï 0.1"; |
char sVersion[] = "¥àá¨ï 0.2"; |
|
int status=0; |
|
47,8 → 48,6 |
bool drawD = true; |
|
|
|
|
char * tempquestion; |
char * tempanswerA; |
char * tempanswerB; |
62,10 → 61,10 |
int tempanswerDlength=0; |
|
|
const char header[]="â® å®ç¥â ¡ëâì ¬¨««¨®¥à®¬"; |
void app_halt(); |
|
|
const char header[]="â® å®ç¥â ¡ëâì ¬¨««¨®¥à®¬ ¤«ï Kolibri OS"; |
void app_halt(); |
|
char * filepathname; //Îïðåäåëÿåì ïóòü è èìÿ ôàéëà ñ áàçîé âîïðîñîâ |
void getFilePathName(){ |
105,17 → 104,11 |
|
int qcodee; |
|
|
|
int skipsleft; |
|
|
|
regenerate: |
qcodee=(rtlRand()%questioncount)+1; |
|
|
|
Byte inputbyte[1]={0x00}; |
|
//Ïåðâûé ïðîõîä - ïðîâåðÿåì ñëîæíîñòü è ñ÷èòàåì äëèíû ñòðîê |
577,31 → 570,28 |
} |
} |
|
|
|
delete tempquestion; |
delete tempanswerA; |
delete tempanswerB; |
delete tempanswerC; |
delete tempanswerD; |
} |
|
|
|
void draw_window(void){ //Ðèñóåì îêíî |
sProcessInfo sPI; |
|
kos_WindowRedrawStatus(1); |
kos_DefineAndDrawWindow(10,10,619,179+kos_GetSkinHeight(),0x74, 0xDDDDFF, 0,0, (Dword)header); |
kos_WindowRedrawStatus(2); |
|
kos_ProcessInfo( &sPI ); |
if (sPI.rawData[70]&0x04) return; //íè÷åãî íå äåëàòü åñëè îêíî ñõëîïíóòî â çàãîëîâîê |
|
|
|
|
|
} |
|
void draw_window(void){ //Ðèñóåì îêíî |
kos_WindowRedrawStatus(1); |
kos_DefineAndDrawWindow(10,10,620,200,0x34, 0xDDDDFF, 0,0, (Dword)header); |
|
if (status==0){ //Ìåíþ |
kos_DrawBar(0,0,610,174,0xFFFFBB); |
kos_DrawBar(0,0,610,175,0xFFFFBB); |
kos_WriteTextToWindow (10,10,0x80,0x000000, "â® å®ç¥â ¡ëâì ¬¨««¨®¥à®¬?", 3); |
|
kos_WriteTextToWindow (10,25,0x80,0x000000, sVersion, 3); |
614,7 → 604,7 |
} |
if (status==1){ //Èãðà |
|
kos_DrawBar(0,0,610,174,0xEEEEFF); |
kos_DrawBar(0,0,610,175,0xEEEEFF); |
|
kos_WriteTextToWindow (10,10,0x0,0x000000, question, questionlength-1); |
|
650,24 → 640,24 |
|
} |
if (status==2){ //Îêíî "Ýòî - ïðàâèëüíûé îòâåò" |
kos_DrawBar(0,0,610,174,0xDDFFDD); |
kos_DrawBar(0,0,610,175,0xDDFFDD); |
kos_WriteTextToWindow (10,10,0x80,0x000000, " , íâ® ¯à ¢¨«ìë© ®â¢¥â!", 0); |
|
kos_WriteTextToWindow (10,150,0x80,0x000000, "<ENTER> - ¯à®¤®«¦¨âì", 0); |
} |
if (status==3){ //Âû âûèãðàëè ìèëëèîí, îäíàêî æ!!! |
kos_DrawBar(0,0,610,174,0x00FF00); |
kos_DrawBar(0,0,610,175,0x00FF00); |
kos_WriteTextToWindow (10,10,0x80,0x000000, "ë ¢ë¨£à «¨ ¬¨««¨®!!!", 0); |
kos_WriteTextToWindow (10,150,0x80,0x000000, "<ESC> - ¢ë室", 0); |
} |
if (status==4){ //Çâîíîê äðóãó |
kos_DrawBar(0,0,610,174,0xAAFFFF); |
kos_DrawBar(0,0,610,175,0xAAFFFF); |
kos_WriteTextToWindow (10,10,0x80,0x000000, "à㣠ᮢ¥âã¥â ¢ ¬ ®â¢¥â", 0); |
kos_WriteTextToWindow (165,10,0x80,0x000000, friendsAdvice, 0); |
kos_WriteTextToWindow (10,150,0x80,0x000000, "<ENTER> - ¯à®¤®«¦¨âì", 0); |
} |
if (status==5){ //Ïîäñêàçêà çàëà |
kos_DrawBar(0,0,610,174,0xAAFFFF); |
kos_DrawBar(0,0,610,175,0xAAFFFF); |
kos_WriteTextToWindow (10,10,0x80,0x000000, "¥¨¥ 㤨â®à¨¨ à á¯à¥¤¥«¨«®áì â ª:", 0); |
if (drawA==true){ |
kos_WriteTextToWindow (10,30,0x80,0x000000, "⢥â A: ", 0); |
698,13 → 688,13 |
} |
|
if (status==6){ //Âû çàáðàëè äåíüãè ;-) |
kos_DrawBar(0,0,610,174,0xBBFFBB); |
kos_DrawBar(0,0,610,175,0xBBFFBB); |
kos_WriteTextToWindow (10,10,0x80,0x000000, "ë § ¡à «¨ ¤¥ì£¨ ¨ ã諨. è ¢ë¨£àëè á®áâ ¢¨«:", 0); |
kos_WriteTextToWindow (10,20,0x80,0x000000, summs[currentquestion-1], 0); |
kos_WriteTextToWindow (10,150,0x80,0x000000, "<ESC> - ¢ë室", 0); |
} |
if (status==-1){ //Âû îøèáëèñü :-( |
kos_DrawBar(0,0,610,174,0xFF8888); |
kos_DrawBar(0,0,610,175,0xFF8888); |
kos_WriteTextToWindow (10,10,0x80,0x000000, " ᮦ «¥¨î, ¢ë ®è¨¡«¨áì... à ¢¨«ìë© ®â¢¥â -", 0); |
|
switch (correctanswer){ |
737,8 → 727,6 |
kos_WriteTextToWindow (10,150,0x80,0x000000, "<ESC> - ¢ë室", 0); |
} |
|
kos_WindowRedrawStatus(2); |
|
} |
|
|
970,6 → 958,7 |
|
void kos_Main(){ |
rtlSrand(kos_GetSystemClock() / 10000); |
kos_InitHeap(); |
getFilePathName(); |
prepareFileData(); |
draw_window(); |