Rev 1805 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1805 | Rev 2830 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | // Èñõîäíèê èãðû "Êòî õî÷åò áûòü ìèëëèîíåðîì?" äëÿ Êîëèáðè ÎÑ |
1 | // Èñõîäíèê èãðû "Êòî õî÷åò áûòü ìèëëèîíåðîì?" äëÿ Êîëèáðè ÎÑ |
2 | // by Àíäðåé Ìèõàéëîâè÷ (Dron2004) |
2 | // by Àíäðåé Ìèõàéëîâè÷ (Dron2004) |
Line 3... | Line 3... | ||
3 | 3 | ||
4 | #include |
4 | #include |
- | 5 | #include |
|
Line 5... | Line 6... | ||
5 | #include |
6 | #include |
Line 6... | Line 7... | ||
6 | 7 | ||
Line 7... | Line 8... | ||
7 | char sVersion[] = "¥àá¨ï 0.1"; |
8 | char sVersion[] = "¥àá¨ï 0.2"; |
8 | 9 | ||
Line 45... | Line 46... | ||
45 | bool drawB = true; |
46 | bool drawB = true; |
46 | bool drawC = true; |
47 | bool drawC = true; |
47 | bool drawD = true; |
48 | bool drawD = true; |
Line 48... | Line -... | ||
48 | - | ||
49 | - | ||
50 | 49 | ||
51 | 50 | ||
52 | char * tempquestion; |
51 | char * tempquestion; |
53 | char * tempanswerA; |
52 | char * tempanswerA; |
54 | char * tempanswerB; |
53 | char * tempanswerB; |
Line 60... | Line 59... | ||
60 | int tempanswerBlength=0; |
59 | int tempanswerBlength=0; |
61 | int tempanswerClength=0; |
60 | int tempanswerClength=0; |
62 | int tempanswerDlength=0; |
61 | int tempanswerDlength=0; |
Line -... | Line 62... | ||
- | 62 | ||
- | 63 | ||
Line 63... | Line -... | ||
63 | - | ||
64 | - | ||
Line 65... | Line 64... | ||
65 | 64 | const char header[]="â® å®ç¥â ¡ëâì ¬¨««¨®¥à®¬"; |
|
66 | 65 | void app_halt(); |
|
67 | const char header[]="â® å®ç¥â ¡ëâì ¬¨««¨®¥à®¬ ¤«ï Kolibri OS"; |
66 | |
68 | void app_halt(); |
67 | |
Line 103... | Line 102... | ||
103 | //Ñòðàøíî êîðÿâàÿ ïðîöåäóðà ãåíåðàöèè ñëó÷àéíîãî íîìåðà âîïðîñà |
102 | //Ñòðàøíî êîðÿâàÿ ïðîöåäóðà ãåíåðàöèè ñëó÷àéíîãî íîìåðà âîïðîñà |
104 | // rtlSrand(kos_GetSystemClock() / 100000); |
103 | // rtlSrand(kos_GetSystemClock() / 100000); |
Line 105... | Line 104... | ||
105 | 104 | ||
Line 106... | Line -... | ||
106 | int qcodee; |
- | |
107 | - | ||
108 | 105 | int qcodee; |
|
Line 109... | Line -... | ||
109 | - | ||
110 | int skipsleft; |
- | |
111 | 106 | ||
112 | 107 | int skipsleft; |
|
Line 113... | Line -... | ||
113 | - | ||
114 | regenerate: |
- | |
115 | qcodee=(rtlRand()%questioncount)+1; |
108 | |
Line 116... | Line 109... | ||
116 | 109 | regenerate: |
|
117 | 110 | qcodee=(rtlRand()%questioncount)+1; |
|
118 | 111 | ||
Line 575... | Line 568... | ||
575 | { |
568 | { |
576 | goto regenD; |
569 | goto regenD; |
577 | } |
570 | } |
578 | } |
571 | } |
Line 579... | Line -... | ||
579 | - | ||
580 | - | ||
581 | 572 | ||
582 | delete tempquestion; |
573 | delete tempquestion; |
583 | delete tempanswerA; |
574 | delete tempanswerA; |
584 | delete tempanswerB; |
575 | delete tempanswerB; |
585 | delete tempanswerC; |
576 | delete tempanswerC; |
- | 577 | delete tempanswerD; |
|
Line -... | Line 578... | ||
- | 578 | } |
|
- | 579 | ||
Line -... | Line 580... | ||
- | 580 | ||
- | 581 | ||
- | 582 | void draw_window(void){ //Ðèñóåì îêíî |
|
Line -... | Line 583... | ||
- | 583 | sProcessInfo sPI; |
|
- | 584 | ||
Line 586... | Line -... | ||
586 | delete tempanswerD; |
- | |
587 | - | ||
588 | - | ||
589 | - | ||
590 | - | ||
591 | - | ||
592 | - | ||
593 | - | ||
594 | - | ||
595 | 585 | kos_WindowRedrawStatus(1); |
|
596 | 586 | kos_DefineAndDrawWindow(10,10,619,179+kos_GetSkinHeight(),0x74, 0xDDDDFF, 0,0, (Dword)header); |
|
597 | } |
587 | kos_WindowRedrawStatus(2); |
Line 598... | Line 588... | ||
598 | 588 | ||
Line 599... | Line 589... | ||
599 | void draw_window(void){ //Ðèñóåì îêíî |
589 | kos_ProcessInfo( &sPI ); |
Line 612... | Line 602... | ||
612 | kos_WriteTextToWindow (10,150,0x80,0x000000, "(C) 2008 ¤à¥© ¨å ©«®¢¨ç aka Dron2004", 0); |
602 | kos_WriteTextToWindow (10,150,0x80,0x000000, "(C) 2008 ¤à¥© ¨å ©«®¢¨ç aka Dron2004", 0); |
613 | //kos_DisplayNumberToWindow (questioncount,3,40,60,0x000000, nbDecimal, false); |
603 | //kos_DisplayNumberToWindow (questioncount,3,40,60,0x000000, nbDecimal, false); |
614 | } |
604 | } |
615 | if (status==1){ //Èãðà |
605 | if (status==1){ //Èãðà |
Line 616... | Line 606... | ||
616 | 606 | ||
Line 617... | Line 607... | ||
617 | kos_DrawBar(0,0,610,174,0xEEEEFF); |
607 | kos_DrawBar(0,0,610,175,0xEEEEFF); |
Line 618... | Line 608... | ||
618 | 608 | ||
619 | kos_WriteTextToWindow (10,10,0x0,0x000000, question, questionlength-1); |
609 | kos_WriteTextToWindow (10,10,0x0,0x000000, question, questionlength-1); |
Line 648... | Line 638... | ||
648 | 638 | ||
649 | 639 | ||
650 | 640 | ||
651 | } |
641 | } |
Line 652... | Line 642... | ||
652 | if (status==2){ //Îêíî "Ýòî - ïðàâèëüíûé îòâåò" |
642 | if (status==2){ //Îêíî "Ýòî - ïðàâèëüíûé îòâåò" |
653 | kos_DrawBar(0,0,610,174,0xDDFFDD); |
643 | kos_DrawBar(0,0,610,175,0xDDFFDD); |
654 | kos_WriteTextToWindow (10,10,0x80,0x000000, " , íâ® ¯à ¢¨«ìë© ®â¢¥â!", 0); |
644 | kos_WriteTextToWindow (10,10,0x80,0x000000, " , íâ® ¯à ¢¨«ìë© ®â¢¥â!", 0); |
655 | 645 | ||
656 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
646 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
657 | } |
647 | } |
658 | if (status==3){ //Âû âûèãðàëè ìèëëèîí, îäíàêî æ!!! |
648 | if (status==3){ //Âû âûèãðàëè ìèëëèîí, îäíàêî æ!!! |
659 | kos_DrawBar(0,0,610,174,0x00FF00); |
649 | kos_DrawBar(0,0,610,175,0x00FF00); |
660 | kos_WriteTextToWindow (10,10,0x80,0x000000, "ë ¢ë¨£à «¨ ¬¨««¨®!!!", 0); |
650 | kos_WriteTextToWindow (10,10,0x80,0x000000, "ë ¢ë¨£à «¨ ¬¨««¨®!!!", 0); |
661 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
651 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
662 | } |
652 | } |
663 | if (status==4){ //Çâîíîê äðóãó |
653 | if (status==4){ //Çâîíîê äðóãó |
664 | kos_DrawBar(0,0,610,174,0xAAFFFF); |
654 | kos_DrawBar(0,0,610,175,0xAAFFFF); |
665 | kos_WriteTextToWindow (10,10,0x80,0x000000, "à㣠ᮢ¥âã¥â ¢ ¬ ®â¢¥â", 0); |
655 | kos_WriteTextToWindow (10,10,0x80,0x000000, "à㣠ᮢ¥âã¥â ¢ ¬ ®â¢¥â", 0); |
666 | kos_WriteTextToWindow (165,10,0x80,0x000000, friendsAdvice, 0); |
656 | kos_WriteTextToWindow (165,10,0x80,0x000000, friendsAdvice, 0); |
667 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
657 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
668 | } |
658 | } |
669 | if (status==5){ //Ïîäñêàçêà çàëà |
659 | if (status==5){ //Ïîäñêàçêà çàëà |
670 | kos_DrawBar(0,0,610,174,0xAAFFFF); |
660 | kos_DrawBar(0,0,610,175,0xAAFFFF); |
671 | kos_WriteTextToWindow (10,10,0x80,0x000000, "¥¨¥ 㤨â®à¨¨ à á¯à¥¤¥«¨«®áì â ª:", 0); |
661 | kos_WriteTextToWindow (10,10,0x80,0x000000, "¥¨¥ 㤨â®à¨¨ à á¯à¥¤¥«¨«®áì â ª:", 0); |
Line 696... | Line 686... | ||
696 | 686 | ||
697 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
687 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
Line 698... | Line 688... | ||
698 | } |
688 | } |
699 | 689 | ||
700 | if (status==6){ //Âû çàáðàëè äåíüãè ;-) |
690 | if (status==6){ //Âû çàáðàëè äåíüãè ;-) |
701 | kos_DrawBar(0,0,610,174,0xBBFFBB); |
691 | kos_DrawBar(0,0,610,175,0xBBFFBB); |
702 | kos_WriteTextToWindow (10,10,0x80,0x000000, "ë § ¡à «¨ ¤¥ì£¨ ¨ ã諨. è ¢ë¨£àëè á®áâ ¢¨«:", 0); |
692 | kos_WriteTextToWindow (10,10,0x80,0x000000, "ë § ¡à «¨ ¤¥ì£¨ ¨ ã諨. è ¢ë¨£àëè á®áâ ¢¨«:", 0); |
703 | kos_WriteTextToWindow (10,20,0x80,0x000000, summs[currentquestion-1], 0); |
693 | kos_WriteTextToWindow (10,20,0x80,0x000000, summs[currentquestion-1], 0); |
704 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
694 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
705 | } |
695 | } |
706 | if (status==-1){ //Âû îøèáëèñü :-( |
696 | if (status==-1){ //Âû îøèáëèñü :-( |
Line 707... | Line 697... | ||
707 | kos_DrawBar(0,0,610,174,0xFF8888); |
697 | kos_DrawBar(0,0,610,175,0xFF8888); |
708 | kos_WriteTextToWindow (10,10,0x80,0x000000, " ᮦ «¥¨î, ¢ë ®è¨¡«¨áì... à ¢¨«ìë© ®â¢¥â -", 0); |
698 | kos_WriteTextToWindow (10,10,0x80,0x000000, " ᮦ «¥¨î, ¢ë ®è¨¡«¨áì... à ¢¨«ìë© ®â¢¥â -", 0); |
709 | 699 | ||
Line 735... | Line 725... | ||
735 | 725 | ||
736 | 726 | ||
Line 737... | Line -... | ||
737 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
- | |
738 | } |
- | |
739 | 727 | kos_WriteTextToWindow (10,150,0x80,0x000000, " |
|
Line 740... | Line 728... | ||
740 | kos_WindowRedrawStatus(2); |
728 | } |
Line 968... | Line 956... | ||
968 | } |
956 | } |
969 | } |
957 | } |
Line 970... | Line 958... | ||
970 | 958 | ||
971 | void kos_Main(){ |
959 | void kos_Main(){ |
- | 960 | rtlSrand(kos_GetSystemClock() / 10000); |
|
972 | rtlSrand(kos_GetSystemClock() / 10000); |
961 | kos_InitHeap(); |
973 | getFilePathName(); |
962 | getFilePathName(); |
974 | prepareFileData(); |
963 | prepareFileData(); |
975 | draw_window(); |
964 | draw_window(); |