Subversion Repositories Kolibri OS

Rev

Rev 6166 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6166 Rev 7661
Line 16... Line 16...
16
    You should have received a copy of the GNU General Public License
16
    You should have received a copy of the GNU General Public License
17
    along with this program; if not, write to the Free Software
17
    along with this program; if not, write to the Free Software
18
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
Line 19... Line 19...
19
 
19
 
-
 
20
*******************************************************************************/
-
 
21
?define HEADER_Y 4
-
 
22
?define BTNSIZE 19
Line 20... Line 23...
20
*******************************************************************************/
23
char game_mode[] = "1/3";
21
 
24
 
22
void draw_window() // Ïðîöåäóðà îòðèñîâêè îêíà
25
void draw_window() // Ïðîöåäóðà îòðèñîâêè îêíà
Line 23... Line 26...
23
{
26
{
24
  sys_get_colors(#colors, 40);
27
  sys_get_colors(#colors, 40);
25
 
28
 
26
  // WINDOW
29
  // WINDOW
27
  sys_window_redraw(1);
30
  sys_window_redraw(1);
28
  EBX = xpos << 16 + xsize;
31
  EBX = xpos << 16 + xsize + 9;
Line 29... Line 32...
29
  ECX = ypos << 16 + ysize;
32
  ECX = ypos << 16 + ysize;
30
  sys_draw_window(EBX, ECX, 0x14CCCCCC, colors.w_work | 0x80000000, "MineSweeper");
33
  sys_draw_window(EBX, ECX, 0x34CCCCCC, colors.w_work | 0x80000000, "MineSweeper");
31
  sys_window_redraw(2);
34
  sys_window_redraw(2);
Line 32... Line 35...
32
  
35
  
33
  // Leency ROLLED UP FIX
36
  // Leency ROLLED UP FIX
34
  sys_process_info(#procinfo, -1);
37
  sys_process_info(#procinfo, -1);
35
  IF (procinfo.ysize<70) return;  
38
  IF (procinfo.ysize<70) return;  
-
 
39
 
Line 36... Line 40...
36
 
40
  //  BUTTON (911)
37
   //  BUTTON (911)
41
  EBX = xsize / 2 - 10;
-
 
42
  EBX = EBX << 16 + BTNSIZE;
-
 
43
  sys_draw_button(EBX, HEADER_Y<<16+BTNSIZE, 911+BT_HIDE, clLightGray);
-
 
44
  draw_rectangle(xsize/2-10,HEADER_Y,BTNSIZE,BTNSIZE,clWhite,clDarkGray);
Line 38... Line 45...
38
  EBX = xsize / 2 - 10;
45
 
39
  EBX = EBX << 16 + 20;
46
  //  BUTTON (1001)
Line 40... Line 47...
40
  sys_draw_button(EBX, 25<<16+20, 911, clLightGray);
47
  sys_draw_button(5<<16+32, HEADER_Y<<16+BTNSIZE, 1001+BT_HIDE, clLightGray);
41
 
48
  draw_rectangle(5,HEADER_Y,32,BTNSIZE,clWhite,clDarkGray);
42
  //  BUTTON (1001)
49
  game_mode[0] = mode + '0';
43
  sys_draw_button(10<<16+7, 23<<16+7, 1001, 0x118811);
50
  sys_write_text(9<<16+HEADER_Y+3, 0x90000000+clDarkGray, #game_mode, 3);
Line 44... Line 51...
44
 
51
 
45
  //  BUTTON (1002)
52
  //  BUTTON (1002)
Line 129... Line 136...
129
      sys_draw_line(xl << 16 + xl, yt << 16 + yb, clDarkGray);
136
      sys_draw_line(xl << 16 + xl, yt << 16 + yb, clDarkGray);
130
      sys_draw_line(xl << 16 + xr, yt << 16 + yt, EDX);
137
      sys_draw_line(xl << 16 + xr, yt << 16 + yt, EDX);
131
   }
138
   }
132
}
139
}
Line 133... Line -...
133
 
-
 
134
 
-
 
135
// Òàéìåð
140
 
136
void draw_time()
141
void draw_time()
137
{
142
{
138
  sys_draw_bar(XST<<16+25, 31<<16+14, 0xCCCCCC);
143
  sys_draw_bar(xsize-XST-58<<16+29, HEADER_Y<<16+20, clWhiteGray);
139
  sys_write_number(0x00030000, time, XST<<16+32, 0x10ff0000);
144
  sys_write_number(0x00030000, time, xsize-XST-56<<16+HEADER_Y+3, 0x101166C3);
Line 140... Line -...
140
}
-
 
141
 
145
}
142
 
146
 
143
// Èíäèêàòîð êîëè÷åñòâà íåðàññòàâëåííûõ ìèí
-
 
144
void draw_minesi()
-
 
145
{
-
 
146
  EBX = xsize - XST - 25;
147
 
147
  $PUSH EBX
-
 
148
  EBX = EBX << 16 + 25;
-
 
149
  sys_draw_bar(EBX, 31<<16+14, 0xCCCCCC);
148
void draw_mines_left()
150
  $POP EDX
149
{
Line 151... Line 150...
151
  EDX <<= 16; EDX += 32;
150
  sys_draw_bar(xsize-XST-29<<16+29, HEADER_Y<<16+20, clWhiteGray);
152
  sys_write_number(0x00030000, cmines, EDX, 0x10ff0000);
151
  sys_write_number(0x00030000, cmines, xsize-XST-27<<16+HEADER_Y+3, 0x10ff0000);
Line 160... Line 159...
160
 
159
 
161
  FOR (y=0; y < ncy; y++)
160
  FOR (y=0; y < ncy; y++)
162
    FOR (x=0; x < ncx; x++)
161
    FOR (x=0; x < ncx; x++)
163
      draw_square(x, y);
162
      draw_square(x, y);
-
 
163
}
-
 
164
 
-
 
165
void draw_rectangle(dword x,y,w,h,color1,color2)
-
 
166
{
-
 
167
  sys_draw_bar(x<<16+w+1,y<<16+1,color1);
-
 
168
  sys_draw_bar(x<<16+1,y+1<<16+h-1,color1);
-
 
169
  sys_draw_bar(x+w<<16+1,y+1<<16+h,color2);
-
 
170
  sys_draw_bar(x<<16+w,y+h<<16+1,color2);
164
}
171
}