Subversion Repositories Kolibri OS

Rev

Rev 1573 | Rev 1609 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1573 Rev 1577
Line 64... Line 64...
64
 
64
 
65
FILE_NAME_MAX equ 20 ;¬ ªá¨¬ «ì­ ï ¤«¨­­  ¨¬¥­¨ ä ©«  (¡¥§ ¯ ¯®ª, ®â­®á¨â¥«ì­® ⥪ã饩)
65
FILE_NAME_MAX equ 20 ;¬ ªá¨¬ «ì­ ï ¤«¨­­  ¨¬¥­¨ ä ©«  (¡¥§ ¯ ¯®ª, ®â­®á¨â¥«ì­® ⥪ã饩)
66
;§­ ç¥­¨ï ¨¬¥­ ¯® 㬮«ç ­¨î
66
;§­ ç¥­¨ï ¨¬¥­ ¯® 㬮«ç ­¨î
67
ini_def_decorat_file db 'curici.png',0
67
ini_def_decorat_file db 'curici.png',0
-
 
68
ini_def_unit_file db 'wolf.png',0
68
ini_def_unit_file db 'wolf.png',0
69
ini_def_objects_file db 'eggs.png',0
69
;¨¬¥­  ä ©«®¢
70
;¨¬¥­  ä ©«®¢
70
fn_icon0 rb FILE_NAME_MAX ;¨¬ï ä ©«  á ¤¥ª®à æ¨ï¬¨
71
fn_icon0 rb FILE_NAME_MAX ;¨¬ï ä ©«  á ¤¥ª®à æ¨ï¬¨
71
fn_icon1 rb FILE_NAME_MAX ;¨¬ï ä ©«  á ¢®«ª®¬ ¨ § ©æ¥¬
72
fn_icon1 rb FILE_NAME_MAX ;¨¬ï ä ©«  á ¢®«ª®¬ ¨ § ©æ¥¬
72
fn_icon2 db 'eggs.png',0 ;¨¬ï ä ©«  á ï©æ ¬¨
73
fn_icon2 rb FILE_NAME_MAX ;¨¬ï ä ©«  á ï©æ ¬¨
73
fn_icon3 db 'chi.png',0 ;¨¬ï ä ©«  á 樯«ïâ ¬¨
74
fn_icon3 db 'chi.png',0 ;¨¬ï ä ©«  á 樯«ïâ ¬¨
Line 74... Line 75...
74
fn_font db 'font8x9.bmp',0
75
fn_font db 'font8x9.bmp',0
75
 
76
 
76
ini_name db 'nu_pogod.ini',0
77
ini_name db 'nu_pogod.ini',0
77
ini_sec_files db 'Files',0
78
ini_sec_files db 'Files',0
-
 
79
key_file_decorat db 'file_decorat',0
78
key_file_decorat db 'file_decorat',0
80
key_file_unit db 'file_unit',0
79
key_file_unit db 'file_unit',0
81
key_file_objects db 'file_objects',0
80
key_displ_w db 'displ_w',0
82
key_displ_w db 'displ_w',0
81
key_displ_h db 'displ_h',0
83
key_displ_h db 'displ_h',0
Line -... Line 84...
-
 
84
key_shadow_x db 'offs_shadow_x',0
-
 
85
key_shadow_y db 'offs_shadow_y',0
-
 
86
 
-
 
87
ini_sec_game db 'Game',0
-
 
88
key_delay_a db 'delay_a',0
82
key_shadow_x db 'offs_shadow_x',0
89
key_delay_b db 'delay_b',0
83
key_shadow_y db 'offs_shadow_y',0
90
key_delay_min db 'delay_min',0
84
 
91
 
85
ini_sec_color db 'Colors',0
92
ini_sec_color db 'Colors',0
86
;ª«îç¨ ¤«ï áç¨â뢠­¨ï 梥⮢ ¨§ *.ini ä ©« 
93
;ª«îç¨ ¤«ï áç¨â뢠­¨ï 梥⮢ ¨§ *.ini ä ©« 
Line 164... Line 171...
164
game_text db 'ˆ£à  _',13
171
game_text db 'ˆ£à  _',13
165
some_text db '0'
172
some_text db '0'
166
	rb 8 ;⥪áâ á ç¨á«®¬ ¯®©¬ ­­ëå ï¨æ
173
	rb 8 ;⥪áâ á ç¨á«®¬ ¯®©¬ ­­ëå ï¨æ
167
count_last db 0 ;áç¥â稪 ¯à®¯ã饭­ëå ï¨æ
174
count_last db 0 ;áç¥â稪 ¯à®¯ã饭­ëå ï¨æ
168
game_spd dd 0 ;§ ¤¥à¦ª  ¨£àë
175
game_spd dd 0 ;§ ¤¥à¦ª  ¨£àë
-
 
176
game_delay_a dd ? ;¯¥à¢®­ ç «ì­ ï § ¤¥à¦ª  ¤«ï ¨£àë €
-
 
177
game_delay_b dd ? ;¯¥à¢®­ ç «ì­ ï § ¤¥à¦ª  ¤«ï ¨£àë 
-
 
178
game_delay_min dd ? ;¬¨­¨¬ «ì­ ï § ¤¥à¦ª 
Line 169... Line 179...
169
 
179
 
170
;¤«ï £¥­¥à æ¨¨ á«ãç ©­ëå ç¨á¥«
180
;¤«ï £¥­¥à æ¨¨ á«ãç ©­ëå ç¨á¥«
Line 171... Line 181...
171
rand_x dd 0
181
rand_x dd 0
Line 408... Line 418...
408
		mov edi,some_text
418
		mov edi,some_text
409
		call convert_to_str ;®¡­®¢«ï¥¬ ⥪á⮢ãî áâபã
419
		call convert_to_str ;®¡­®¢«ï¥¬ ⥪á⮢ãî áâபã
410
		and ax,0xf ;ç¥à¥§ ª ¦¤ë¥ 16 ï¨æ 㬥­ìè ¥¬ ¢à¥¬ï
420
		and ax,0xf ;ç¥à¥§ ª ¦¤ë¥ 16 ï¨æ 㬥­ìè ¥¬ ¢à¥¬ï
411
		cmp ax,0
421
		cmp ax,0
412
		jne @f
422
		jne @f
413
			cmp dword[game_spd],15 ;¬¨­¨¬ «ì­ ï § ¤¥à¦ª 
423
			mov edi,dword[game_delay_min] ;¬¨­¨¬ «ì­ ï § ¤¥à¦ª 
-
 
424
			cmp dword[game_spd],edi
414
			jle @f
425
			jle @f
415
				dec dword[game_spd]
426
				dec dword[game_spd]
416
		@@:
427
		@@:
417
	pop edi eax
428
	pop edi eax
418
	ret
429
	ret
Line 552... Line 563...
552
align 4
563
align 4
553
proc InitGame, b:dword ;¯¥à¢®­ ç «ì­ë¥ ­ áâனª¨ ¨£àë
564
proc InitGame, b:dword ;¯¥à¢®­ ç «ì­ë¥ ­ áâனª¨ ¨£àë
554
	mov word[eggs_count],0 ;ª®««¨ç¥á⢮ ¯®©¬ ­ëå ï¨æ
565
	mov word[eggs_count],0 ;ª®««¨ç¥á⢮ ¯®©¬ ­ëå ï¨æ
555
	mov byte[some_text],'0'
566
	mov byte[some_text],'0'
556
	mov byte[some_text+1],0 ;⥪áâ á ç¨á«®¬ ¯®©¬ ­­ëå ï¨æ
567
	mov byte[some_text+1],0 ;⥪áâ á ç¨á«®¬ ¯®©¬ ­­ëå ï¨æ
557
	mov byte[count_last],0
568
	mov byte[count_last],0 ;èâà ä­ë¥ ®çª¨
558
	mov dword[pos_eggs],0
569
	mov dword[pos_eggs],0
559
	mov byte[zaac_status],0
570
	mov byte[zaac_status],0
Line -... Line 571...
-
 
571
 
560
 
572
	push eax ebx
561
	cmp dword[b],0
573
	cmp dword[b],0
562
	jne @f
574
	jne @f
-
 
575
		mov byte[game_text+5],'€'
563
		mov byte[game_text+5],'€'
576
		mov eax,dword[game_delay_a]
564
		mov dword[game_spd],65 ;§ ¤¥à¦ª  ¨£àë
577
		mov dword[game_spd],eax ;§ ¤¥à¦ª  ¨£àë
565
		jmp .end_init
578
		jmp .end_init
566
	@@:
579
	@@:
-
 
580
		mov byte[game_text+5],''
567
		mov byte[game_text+5],''
581
		mov eax,dword[game_delay_b]
568
		mov dword[game_spd],35 ;§ ¤¥à¦ª  ¨£àë
582
		mov dword[game_spd],eax ;§ ¤¥à¦ª  ¨£àë
Line 569... Line -...
569
	.end_init:
-
 
570
 
583
	.end_init:
571
	push eax ebx
584
 
572
		mcall 26,9
585
	mcall 26,9
Line 573... Line 586...
573
		mov dword[rand_x],eax ;§ ¯®«­ï¥¬ 1-¥ á«ãç ©­®¥ ç¨á«®
586
	mov dword[rand_x],eax ;§ ¯®«­ï¥¬ 1-¥ á«ãç ©­®¥ ç¨á«®
Line 624... Line 637...
624
	mov	dword[displ_w],eax
637
	mov	dword[displ_w],eax
625
	stdcall dword[ini_get_int],file_name,ini_sec_files,key_displ_h,140
638
	stdcall dword[ini_get_int],file_name,ini_sec_files,key_displ_h,140
626
	mov	dword[displ_h],eax
639
	mov	dword[displ_h],eax
627
	stdcall dword[ini_get_str],file_name,ini_sec_files,key_file_decorat,fn_icon0,FILE_NAME_MAX,ini_def_decorat_file
640
	stdcall dword[ini_get_str],file_name,ini_sec_files,key_file_decorat,fn_icon0,FILE_NAME_MAX,ini_def_decorat_file
628
	stdcall dword[ini_get_str],file_name,ini_sec_files,key_file_unit,fn_icon1,FILE_NAME_MAX,ini_def_unit_file
641
	stdcall dword[ini_get_str],file_name,ini_sec_files,key_file_unit,fn_icon1,FILE_NAME_MAX,ini_def_unit_file
-
 
642
	stdcall dword[ini_get_str],file_name,ini_sec_files,key_file_objects,fn_icon2,FILE_NAME_MAX,ini_def_objects_file
629
	stdcall dword[ini_get_int],file_name,ini_sec_files,key_shadow_x,2
643
	stdcall dword[ini_get_int],file_name,ini_sec_files,key_shadow_x,2
630
	mov	dword[offs_shadow_x],eax
644
	mov	dword[offs_shadow_x],eax
631
	stdcall dword[ini_get_int],file_name,ini_sec_files,key_shadow_y,2
645
	stdcall dword[ini_get_int],file_name,ini_sec_files,key_shadow_y,2
632
	mov	dword[offs_shadow_y],eax
646
	mov	dword[offs_shadow_y],eax
Line -... Line 647...
-
 
647
 
-
 
648
	;áç¨â뢠­¨¥ ­ áâ஥ª ¢«¨ïîé¨å ­  ᪮àáâì ¨£àë
-
 
649
	stdcall dword[ini_get_int],file_name,ini_sec_game,key_delay_a,65
-
 
650
	mov	dword[game_delay_a],eax
-
 
651
	stdcall dword[ini_get_int],file_name,ini_sec_game,key_delay_b,35
-
 
652
	mov	dword[game_delay_b],eax
-
 
653
	stdcall dword[ini_get_int],file_name,ini_sec_game,key_delay_min,15
-
 
654
	mov	dword[game_delay_min],eax
633
 
655
	
634
	stdcall dword[ini_get_color],file_name,ini_sec_color,key_color_fon,0xffffff
656
	stdcall dword[ini_get_color],file_name,ini_sec_color,key_color_fon,0xffffff
635
	mov	dword[color_fon],eax
657
	mov	dword[color_fon],eax
636
	stdcall dword[ini_get_color],file_name,ini_sec_color,key_color_shadows,0xd0d0d0
658
	stdcall dword[ini_get_color],file_name,ini_sec_color,key_color_shadows,0xd0d0d0
637
	mov	dword[color_shadows],eax
659
	mov	dword[color_shadows],eax
Line 645... Line 667...
645
	mov ebx,color_decorat
667
	mov ebx,color_decorat
646
	mov byte[key_color_decorat.ind],'0'
668
	mov byte[key_color_decorat.ind],'0'
647
	mov ecx,3
669
	mov ecx,3
648
	cld
670
	cld
649
	@@:
671
	@@:
-
 
672
		push ecx ;äã­ªæ¨ï ini_get_color ¨¬¥¥â ¯à ¢® ¬ ­ïâì ॣ¨áâà ecx
650
		stdcall dword[ini_get_color],file_name,ini_sec_color,key_color_decorat,0x000080
673
		stdcall dword[ini_get_color],file_name,ini_sec_color,key_color_decorat,0x000080
-
 
674
		pop ecx
651
		mov dword[ebx],eax
675
		mov dword[ebx],eax
652
		add ebx,4
676
		add ebx,4
653
		inc byte[key_color_decorat.ind]
677
		inc byte[key_color_decorat.ind]
654
		loop @b
678
		loop @b
Line 1024... Line 1048...
1024
last_time dd ?
1048
last_time dd ?
1025
image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ­¨ï ª à⨭ª¨ äã­ªæ¨ï¬¨ libimg
1049
image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ­¨ï ª à⨭ª¨ äã­ªæ¨ï¬¨ libimg
1026
image_data_gray dd 0 ;¯ ¬ïâì á ¢à¥¬¥­­ë¬¨ á¥à묨 ¨§®¡à ¦¥­¨ï¬¨ ¢ ä®à¬ â¥ 24-bit, ¨§ ª®â®àëå ¡ã¤ãâ ᮧ¤ ¢ âìáï âà ä à¥âë
1050
image_data_gray dd 0 ;¯ ¬ïâì á ¢à¥¬¥­­ë¬¨ á¥à묨 ¨§®¡à ¦¥­¨ï¬¨ ¢ ä®à¬ â¥ 24-bit, ¨§ ª®â®àëå ¡ã¤ãâ ᮧ¤ ¢ âìáï âà ä à¥âë
Line 1027... Line 1051...
1027
 
1051
 
1028
run_file_70 FileInfoBlock
1052
run_file_70 FileInfoBlock
1029
hed db 'Nu pogodi 20.08.10',0 ;¯®¤¯¨áì ®ª­ 
1053
hed db 'Nu pogodi 22.08.10',0 ;¯®¤¯¨áì ®ª­ 
Line 1030... Line 1054...
1030
sc system_colors  ;á¨á⥬­ë¥ 梥â 
1054
sc system_colors  ;á¨á⥬­ë¥ 梥â 
1031
 
1055
 
1032
align 4
1056
align 4