Rev 1535 | Rev 1552 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1535 | Rev 1538 | ||
---|---|---|---|
Line 29... | Line 29... | ||
29 | 29 | ||
30 | BUF_STRUCT_SIZE equ 21 |
30 | BUF_STRUCT_SIZE equ 21 |
31 | buf2d_data equ dword[edi] ;¤ ë¥ ¡ãä¥à ¨§®¡à ¦¥¨ï |
31 | buf2d_data equ dword[edi] ;¤ ë¥ ¡ãä¥à ¨§®¡à ¦¥¨ï |
32 | buf2d_w equ dword[edi+8] ;è¨à¨ ¡ãä¥à |
32 | buf2d_w equ dword[edi+8] ;è¨à¨ ¡ãä¥à |
33 | buf2d_h equ dword[edi+12] ;¢ëá®â ¡ãä¥à |
- | |
34 | buf2d_t equ word[edi+6] ;®âáâ㯠ᢥàåã |
33 | buf2d_h equ dword[edi+12] ;¢ëá®â ¡ãä¥à |
- | 34 | buf2d_l equ word[edi+4] ;®âáâ㯠᫥¢ |
|
35 | buf2d_l equ word[edi+4] ;®âáâ㯠᫥¢ |
35 | buf2d_t equ word[edi+6] ;®âáâ㯠ᢥàåã |
36 | buf2d_size_lt equ dword[edi+4] ;®âáâ㯠᫥¢ ¨ á¯à ¢ ¤«ï ¡ãä¥à |
36 | buf2d_size_lt equ dword[edi+4] ;®âáâ㯠᫥¢ ¨ á¯à ¢ ¤«ï ¡ãä¥à |
37 | buf2d_color equ dword[edi+16] ;梥â ä® ¡ãä¥à |
37 | buf2d_color equ dword[edi+16] ;梥â ä® ¡ãä¥à |
Line 38... | Line 38... | ||
38 | buf2d_bits equ byte[edi+20] ;ª®«¨ç¥á⢮ ¡¨â ¢ 1-© â®çª¥ ¨§®¡à ¦¥¨ï |
38 | buf2d_bits equ byte[edi+20] ;ª®«¨ç¥á⢮ ¡¨â ¢ 1-© â®çª¥ ¨§®¡à ¦¥¨ï |
Line 52... | Line 52... | ||
52 | GAME_POLE_BYTES equ GAME_POLE_W*GAME_POLE_H*3 ;à §¬¥à ä ©« á ¨§®¡à ¦¥¨¥¬ |
52 | GAME_POLE_BYTES equ GAME_POLE_W*GAME_POLE_H*3 ;à §¬¥à ä ©« á ¨§®¡à ¦¥¨¥¬ |
53 | OFFS_SHADOW_X equ 2 ;ᤢ¨£ ⥥© ¯® ®á¨ 'x' |
53 | OFFS_SHADOW_X equ 2 ;ᤢ¨£ ⥥© ¯® ®á¨ 'x' |
54 | OFFS_SHADOW_Y equ 2 ;ᤢ¨£ ⥥© ¯® ®á¨ 'y' |
54 | OFFS_SHADOW_Y equ 2 ;ᤢ¨£ ⥥© ¯® ®á¨ 'y' |
55 | IMAGE_FONT_SIZE equ 128*144*3 |
55 | IMAGE_FONT_SIZE equ 128*144*3 |
Line -... | Line 56... | ||
- | 56 | ||
- | 57 | use_but equ 1 |
|
- | 58 | ||
- | 59 | if use_but eq 1 |
|
- | 60 | BUT1_T equ 10 ;®âáâ㯠ᢥàåã |
|
- | 61 | BUT1_L equ 15 ;®âáâ㯠᫥¢ |
|
- | 62 | BUT1_W equ 50 ;è¨à¨ |
|
- | 63 | BUT1_H equ 20 ;¢ëá®â |
|
- | 64 | BUT1_NEXT_TOP equ (BUT1_T+BUT1_H)*65536 |
|
- | 65 | end if |
|
56 | 66 | ||
57 | fn_icon0 db 'curici.png',0 ;¨¬ï ä ©« á ¤¥ª®à æ¨ï¬¨ |
67 | fn_icon0 db 'curici.png',0 ;¨¬ï ä ©« á ¤¥ª®à æ¨ï¬¨ |
58 | fn_icon1 db 'wolf.png',0 ;¨¬ï ä ©« á ¢®«ª®¬ ¨ § ©æ¥¬ |
68 | fn_icon1 db 'wolf.png',0 ;¨¬ï ä ©« á ¢®«ª®¬ ¨ § ©æ¥¬ |
59 | fn_icon2 db 'eggs.png',0 ;¨¬ï ä ©« á ï©æ ¬¨ |
69 | fn_icon2 db 'eggs.png',0 ;¨¬ï ä ©« á ï©æ ¬¨ |
60 | fn_icon3 db 'chi.png',0 ;¨¬ï ä ©« á 樯«ïâ ¬¨ |
70 | fn_icon3 db 'chi.png',0 ;¨¬ï ä ©« á 樯«ïâ ¬¨ |
Line -... | Line 71... | ||
- | 71 | fn_font db 'font8x9.bmp',0 |
|
61 | fn_font db 'font8x9.bmp',0 |
72 | |
62 | 73 | ;梥⠢ ¨£à¥ |
|
63 | color_fon dd 0xffffff |
74 | color_fon dd 0xffffff |
64 | color_shadows dd 0xd0d0d0 ;梥â ⥥© |
75 | color_shadows dd 0xd0d0d0 ;梥â ⥥© |
65 | color_trees dd 0x008000 ;梥â âà ¢ë |
76 | color_trees dd 0x008000 ;梥â âà ¢ë |
66 | color_wolf dd 0x800000 ;梥⠢®«ª ¨ § ©æ |
77 | color_wolf dd 0x800000 ;梥⠢®«ª ¨ § ©æ |
67 | color_egg dd 0x404080 ;梥â ï©æ |
78 | color_egg dd 0x404080 ;梥â ï©æ |
68 | color_chick dd 0x00d0d0 ;梥â 樯«¥ª |
79 | color_chick dd 0x00d0d0 ;梥â 樯«¥ª |
- | 80 | color_curici dd 0x8080d0 ;梥⠪ãà¨æë |
|
- | 81 | color_perilo dd 0x000080 ;梥⠯¥à¨« (£à¥¡ï) |
|
- | 82 | ;梥⠨â¥à䥩á |
|
Line 69... | Line 83... | ||
69 | color_curici dd 0x8080d0 ;梥⠪ãà¨æë |
83 | color_but_sm dd 0x808080 ;梥⠬ «¥ìª¨å ª®¯®ª |
70 | color_perilo dd 0x000080 ;梥⠯¥à¨« (£à¥¡ï) |
84 | color_but_bi dd 0x8080ff ;梥⠡®«ìè¨å ª®¯®ª |
71 | 85 | ||
Line 111... | Line 125... | ||
111 | mask_chi_right equ 11111000000000000000000000000000b ;¬ ᪠¯à ¢ëå 樯«ïâ |
125 | mask_chi_right equ 11111000000000000000000000000000b ;¬ ᪠¯à ¢ëå 樯«ïâ |
112 | mask_chi_cr_l equ 1000000000000000000000b ;¬ ᪠¤«ï ᮧ¤ ¨ï «¥¢®£® |
126 | mask_chi_cr_l equ 1000000000000000000000b ;¬ ᪠¤«ï ᮧ¤ ¨ï «¥¢®£® |
113 | mask_chi_cr_r equ 1000000000000000000000000000b ;¬ ᪠¤«ï ᮧ¤ ¨ï ¯à ¢®£® |
127 | mask_chi_cr_r equ 1000000000000000000000000000b ;¬ ᪠¤«ï ᮧ¤ ¨ï ¯à ¢®£® |
114 | bit_chi_left equ 21 ;1-© ¡¨â ª®â®àë© ®â¢¥ç ¥â § ¡¥£ã饣® á«¥¢ |
128 | bit_chi_left equ 21 ;1-© ¡¨â ª®â®àë© ®â¢¥ç ¥â § ¡¥£ã饣® á«¥¢ |
115 | bit_chi_right equ 27 ;1-© ¡¨â ª®â®àë© ®â¢¥ç ¥â § ¡¥£ã饣® ¯à ¢ |
129 | bit_chi_right equ 27 ;1-© ¡¨â ª®â®àë© ®â¢¥ç ¥â § ¡¥£ã饣® ¯à ¢ |
- | 130 | val_zaac_time_y equ 5 ;ª®««¨ç¥á⢮ ⠪⮢, ª®â®à®¥ ®¡ï§ â¥«ì® ¤®«¦¥ ¯à®¢¨á¥âì § ïæ |
|
- | 131 | val_zaac_time_n equ 7 ;ª®««¨ç¥á⢮ ⠪⮢, ª®â®à®¥ ®¡ï§ â¥«ì® ¤®«¦¥ ¡ëâì á¯àïâ ë¬ § ïæ |
|
Line -... | Line 132... | ||
- | 132 | ||
116 | 133 | zaac_status db 0 |
|
117 | pos_wolf db 0 ;¯®§¨æ¨ï ¢®«ª 0-© ¡¨â á«¥¢ /á¯à ¢ , 1-© ¡¨â ᢥàåã/¢¨§ |
134 | pos_wolf db 0 ;¯®§¨æ¨ï ¢®«ª 0-© ¡¨â á«¥¢ /á¯à ¢ , 1-© ¡¨â ᢥàåã/¢¨§ |
118 | ;rb 1 |
135 | ;rb 1 |
119 | pos_eggs dd 0 ;¯®§¨æ¨¨ à ᯮ«®¦¥¨ï ï¨æ ¨ 樯«ïâ |
136 | pos_eggs dd 0 ;¯®§¨æ¨¨ à ᯮ«®¦¥¨ï ï¨æ ¨ 樯«ïâ |
120 | eggs_count dw 0 ;ª®««¨ç¥á⢮ ¯®©¬ ëå ï¨æ |
137 | eggs_count dw 0 ;ª®««¨ç¥á⢮ ¯®©¬ ëå ï¨æ |
Line 147... | Line 164... | ||
147 | proc CreateTrapharetBuffer, buf:dword, img_data:dword |
164 | proc CreateTrapharetBuffer, buf:dword, img_data:dword |
148 | push edi |
165 | push edi |
149 | mov edi,dword[buf] |
166 | mov edi,dword[buf] |
150 | stdcall [buf2d_create_f_img], edi,[img_data] ;ᮧ¤ ¥¬ ¡ãä¥à |
167 | stdcall [buf2d_create_f_img], edi,[img_data] ;ᮧ¤ ¥¬ ¡ãä¥à |
151 | stdcall [buf2d_conv_24_to_8], edi,1 ;¤¥« ¥¬ ¡ãä¥à ¯à®§à ç®á⨠8¡¨â |
168 | stdcall [buf2d_conv_24_to_8], edi,1 ;¤¥« ¥¬ ¡ãä¥à ¯à®§à ç®á⨠8¡¨â |
- | 169 | ;®¡à¥§ ¥¬ «¨è¨¥ ªà ï ¡ãä¥à , ¤«ï ¡®«¥¥ ¡ëáâண® à¨á®¢ ¨ï |
|
152 | stdcall [buf2d_crop_color], edi,buf2d_color,BUF2D_OPT_CROP_TOP+BUF2D_OPT_CROP_BOTTOM+BUF2D_OPT_CROP_RIGHT |
170 | stdcall [buf2d_crop_color], edi,buf2d_color,BUF2D_OPT_CROP_TOP+BUF2D_OPT_CROP_BOTTOM+BUF2D_OPT_CROP_RIGHT+BUF2D_OPT_CROP_LEFT |
153 | pop edi |
171 | pop edi |
154 | ret |
172 | ret |
155 | endp |
173 | endp |
Line 156... | Line 174... | ||
156 | 174 | ||
Line 442... | Line 460... | ||
442 | .no_fail: |
460 | .no_fail: |
Line 443... | Line 461... | ||
443 | 461 | ||
Line 444... | Line 462... | ||
444 | and dword[pos_eggs],mask_clear_all ;®ç¨á⪠㯠¢è¨å ï¨æ ¨ ¤®¡¥¦ ¢è¨å ªã३ |
462 | and dword[pos_eggs],mask_clear_all ;®ç¨á⪠㯠¢è¨å ï¨æ ¨ ¤®¡¥¦ ¢è¨å ªã३ |
445 | 463 | ||
446 | call rand_next |
464 | call rand_next |
447 | bt dword[rand_x],6 |
465 | cmp byte[zaac_status],0 |
- | 466 | jle @f |
|
448 | jc @f |
467 | dec byte[zaac_status] |
- | 468 | jmp .no_zaac_move ;§ ïæ ¯®ª ¥ ¤¢¨£ ¥âáï |
|
449 | bt dword[rand_x],8 |
469 | @@: |
450 | jc @f |
470 | |
451 | bt dword[rand_x],9 |
471 | bt dword[rand_x],6 ;§ ïæ ®â ä® àï ¬¥ï¥â áâ âãá |
- | 472 | jc @f |
|
- | 473 | xor byte[pos_wolf],val_zaac ;¢ëá®¢ë¢ ¥¬/§ á®¢ë¢ ¥¬ § ©æ |
|
- | 474 | bt word[pos_wolf],val_zaac |
|
- | 475 | jc .zaac_n |
|
- | 476 | mov byte[zaac_status],val_zaac_time_y ;áâ ¢¨¬ ¬¨¨¬ «ì®¥ ¢à¥¬ï ¤«ï ᬥë áâ âãá |
|
- | 477 | jmp @f |
|
452 | jc @f |
478 | .zaac_n: |
- | 479 | mov byte[zaac_status],val_zaac_time_n ;áâ ¢¨¬ ¬¨¨¬ «ì®¥ ¢à¥¬ï ¤«ï ᬥë áâ âãá |
|
Line 453... | Line 480... | ||
453 | xor byte[pos_wolf],val_zaac ;¢ëá®¢ë¢ ¥¬/§ á®¢ë¢ ¥¬ § ©æ |
480 | @@: |
454 | @@: |
481 | .no_zaac_move: |
455 | 482 | ||
456 | ;ᮧ¤ ¨¥ ®¢ëå ï¨æ |
483 | ;ᮧ¤ ¨¥ ®¢ëå ï¨æ |
Line 484... | Line 511... | ||
484 | mov word[eggs_count],0 ;ª®««¨ç¥á⢮ ¯®©¬ ëå ï¨æ |
511 | mov word[eggs_count],0 ;ª®««¨ç¥á⢮ ¯®©¬ ëå ï¨æ |
485 | mov byte[some_text],'0' |
512 | mov byte[some_text],'0' |
486 | mov byte[some_text+1],0 ;⥪áâ á ç¨á«®¬ ¯®©¬ ëå ï¨æ |
513 | mov byte[some_text+1],0 ;⥪áâ á ç¨á«®¬ ¯®©¬ ëå ï¨æ |
487 | mov byte[count_last],0 |
514 | mov byte[count_last],0 |
488 | mov dword[pos_eggs],0 |
515 | mov dword[pos_eggs],0 |
- | 516 | mov byte[zaac_status],0 |
|
Line 489... | Line 517... | ||
489 | 517 | ||
490 | cmp dword[b],0 |
518 | cmp dword[b],0 |
491 | jne @f |
519 | jne @f |
492 | mov byte[game_text+5],'' |
520 | mov byte[game_text+5],'' |
Line 695... | Line 723... | ||
695 | draw_window: |
723 | draw_window: |
696 | pushad |
724 | pushad |
697 | mcall 12,1 |
725 | mcall 12,1 |
Line 698... | Line 726... | ||
698 | 726 | ||
699 | xor eax,eax |
727 | xor eax,eax |
700 | mov ebx,20*65536+370 |
728 | mov ebx,20*65536+480 |
701 | mov ecx,20*65536+280 |
729 | mov ecx,20*65536+270 |
702 | mov edx,[sc.work] |
730 | mov edx,[sc.work] |
703 | ;or edx,0x33000000 |
731 | ;or edx,0x33000000 |
704 | or edx,0x73000000 |
732 | or edx,0x73000000 |
705 | mov edi,hed |
733 | mov edi,hed |
Line 737... | Line 765... | ||
737 | @@: |
765 | @@: |
738 | mov esi,dword[procinfo.client_box.width] ;ª®£¤ ¯® è¨à¨¥ ¥ ¢« §¨â |
766 | mov esi,dword[procinfo.client_box.width] ;ª®£¤ ¯® è¨à¨¥ ¥ ¢« §¨â |
739 | inc esi |
767 | inc esi |
740 | .draw_s: |
768 | .draw_s: |
Line -... | Line 769... | ||
- | 769 | ||
- | 770 | if use_but eq 1 |
|
- | 771 | ; *** à¨á®¢ ¨¥ ª®¯®ª *** |
|
- | 772 | push esi |
|
- | 773 | mov eax,8 |
|
- | 774 | xor ebx,ebx |
|
- | 775 | mov bx,buf2d_l |
|
- | 776 | add ebx,buf2d_w |
|
- | 777 | add ebx,BUT1_L |
|
- | 778 | shl ebx,16 |
|
- | 779 | mov bx,BUT1_W |
|
- | 780 | mov ecx,BUT1_T*65536+BUT1_H |
|
- | 781 | mov edx,5 |
|
- | 782 | ;or edx,0x40000000 |
|
- | 783 | mov esi,dword[color_but_sm] |
|
- | 784 | int 0x40 |
|
- | 785 | ||
- | 786 | inc edx |
|
- | 787 | add ecx,BUT1_NEXT_TOP |
|
- | 788 | int 0x40 |
|
- | 789 | pop esi |
|
- | 790 | ||
- | 791 | ; *** ¢®ááâ ®¢«¥¨¥ ¯ à ¬¥â஢ *** |
|
- | 792 | mov eax,13 ;à¨á®¢ ¨¥ ¯àאַ㣮«ì¨ª |
|
- | 793 | mov edx,[sc.work] |
|
- | 794 | end if |
|
741 | 795 | ||
742 | mov ebx,esi |
796 | mov ebx,esi |
743 | mov ecx,dword[procinfo.client_box.height] |
797 | mov ecx,dword[procinfo.client_box.height] |
744 | inc ecx |
798 | inc ecx |
745 | mov esi,GAME_POLE_H |
799 | mov esi,GAME_POLE_H |
Line 783... | Line 837... | ||
783 | ret |
837 | ret |
Line 784... | Line 838... | ||
784 | 838 | ||
785 | align 4 |
839 | align 4 |
786 | button: |
840 | button: |
- | 841 | mcall 17 ;¯®«ãç¨âì ª®¤ ¦ ⮩ ª®¯ª¨ |
|
- | 842 | if use_but eq 1 |
|
- | 843 | cmp ah,5 |
|
- | 844 | jne @f |
|
- | 845 | stdcall InitGame,0 |
|
- | 846 | @@: |
|
- | 847 | cmp ah,6 |
|
- | 848 | jne @f |
|
- | 849 | stdcall InitGame,1 |
|
787 | mcall 17 ;¯®«ãç¨âì ª®¤ ¦ ⮩ ª®¯ª¨ |
850 | @@: end if |
788 | cmp ah,1 |
851 | cmp ah,1 |
789 | jne still |
852 | jne still |
790 | .exit: |
853 | .exit: |
791 | stdcall [buf2d_delete],buf_fon ;㤠«ï¥¬ ¡ãä¥à |
854 | stdcall [buf2d_delete],buf_fon ;㤠«ï¥¬ ¡ãä¥à |
Line 885... | Line 948... | ||
885 | last_time dd ? |
948 | last_time dd ? |
886 | image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï ª à⨪¨ äãªæ¨ï¬¨ libimg |
949 | image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï ª à⨪¨ äãªæ¨ï¬¨ libimg |
887 | image_data_gray dd 0 ;¯ ¬ïâì á ¢à¥¬¥ë¬¨ á¥à묨 ¨§®¡à ¦¥¨ï¬¨ ¢ ä®à¬ ⥠24-bit, ¨§ ª®â®àëå ¡ã¤ãâ ᮧ¤ ¢ âìáï âà ä à¥âë |
950 | image_data_gray dd 0 ;¯ ¬ïâì á ¢à¥¬¥ë¬¨ á¥à묨 ¨§®¡à ¦¥¨ï¬¨ ¢ ä®à¬ ⥠24-bit, ¨§ ª®â®àëå ¡ã¤ãâ ᮧ¤ ¢ âìáï âà ä à¥âë |
Line 888... | Line 951... | ||
888 | 951 | ||
889 | run_file_70 FileInfoBlock |
952 | run_file_70 FileInfoBlock |
890 | hed db 'Nu pogodi 29.07.10',0 ;¯®¤¯¨áì ®ª |
953 | hed db 'Nu pogodi 30.07.10',0 ;¯®¤¯¨áì ®ª |
Line 891... | Line 954... | ||
891 | sc system_colors ;á¨áâ¥¬ë¥ æ¢¥â |
954 | sc system_colors ;á¨áâ¥¬ë¥ æ¢¥â |
892 | 955 | ||
893 | align 4 |
956 | align 4 |