2020-12-28 01:40:14 +03:00
|
|
|
|
|
|
|
|
|
; Author: RU095@YANDEX.RU
|
|
|
|
|
|
|
|
|
|
use32
|
|
|
|
|
org 0x0
|
|
|
|
|
db 'MENUET01'
|
|
|
|
|
dd 0x01
|
|
|
|
|
dd START
|
|
|
|
|
dd I_END
|
|
|
|
|
dd 0x300000
|
|
|
|
|
dd 0x27fff0
|
|
|
|
|
dd 0x0
|
|
|
|
|
dd 0x0
|
|
|
|
|
|
|
|
|
|
include 'lang.inc'
|
|
|
|
|
include '..\..\macros.inc' ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ᥬ<EFBFBD><E1A5AC><EFBFBD><EFBFBD>騪<EFBFBD><E9A8AA>!
|
|
|
|
|
|
|
|
|
|
include 'ASCL.INC'
|
|
|
|
|
include 'ASCGL.INC'
|
|
|
|
|
|
|
|
|
|
WND_COLOR equ 0x74000000
|
|
|
|
|
|
|
|
|
|
gif_hash_offset = gif_hash_area
|
|
|
|
|
COLOR_ORDER equ MENUETOS
|
|
|
|
|
|
|
|
|
|
DELAY equ 2 ; <20><><EFBFBD><EFBFBD>প<EFBFBD> <20><>। <20><><EFBFBD><EFBFBD>室<EFBFBD><E5AEA4> <20> <><E1ABA5><EFBFBD>饬<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20>ᥪ
|
|
|
|
|
|
|
|
|
|
START:
|
|
|
|
|
;****************
|
|
|
|
|
; <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> 䠨<>
|
|
|
|
|
;****************
|
|
|
|
|
openfile:
|
|
|
|
|
; and [entered],0
|
|
|
|
|
; mov ecx,499*3*4 ;at start
|
|
|
|
|
xor ecx,ecx
|
|
|
|
|
mov ecx,1
|
|
|
|
|
|
|
|
|
|
; Convert gif to animation format
|
|
|
|
|
giftoani workarea,Image,ecx
|
|
|
|
|
bmptoimg bullet_bmp, img_bullet
|
|
|
|
|
bmptoimg level_bmp, img_level
|
|
|
|
|
bmptoimg kirpich, img_area
|
|
|
|
|
bmptoimg kirpich2, img_area2
|
|
|
|
|
bmptoimg kirpich3, img_area3
|
|
|
|
|
bmptoimg lest_bmp, img_lestniza
|
|
|
|
|
bmptoimg water1_bmp, img_water1
|
|
|
|
|
bmptoimg water2_bmp, img_water2
|
|
|
|
|
bmptoimg door1_bmp, img_door1
|
|
|
|
|
bmptoimg door2_bmp, img_door2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
red:
|
|
|
|
|
call timer
|
|
|
|
|
call draw_window
|
|
|
|
|
; call load_level
|
|
|
|
|
; delay 200
|
|
|
|
|
|
|
|
|
|
still:
|
|
|
|
|
timeevent DELAY,no_event, red, key, button
|
|
|
|
|
|
|
|
|
|
no_event:
|
|
|
|
|
call draw_subimage
|
|
|
|
|
jmp still
|
|
|
|
|
|
|
|
|
|
key:
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᮭ<EFBFBD><E1AEAD><EFBFBD>
|
|
|
|
|
mov eax,2
|
|
|
|
|
int 0x40
|
|
|
|
|
cmp ah, 179 ; <20>ࠢ<EFBFBD> 4
|
|
|
|
|
je go_mov
|
|
|
|
|
cmp ah, 176 ; <20><><EFBFBD><EFBFBD> 1
|
|
|
|
|
je go_mov
|
|
|
|
|
cmp ah, 178 ; <20><><EFBFBD><EFBFBD> 3
|
|
|
|
|
je go_mov
|
|
|
|
|
cmp ah, 177 ; <20><><EFBFBD> 2
|
|
|
|
|
je go_mov
|
|
|
|
|
cmp ah, 120 ; <20><><EFBFBD> 2
|
|
|
|
|
je go_fire
|
|
|
|
|
cmp ah, 122 ; <20><><EFBFBD> 2
|
|
|
|
|
je go_fire
|
|
|
|
|
cmp ah, 239 ; <20><><EFBFBD> 2
|
|
|
|
|
je go_fire_left
|
|
|
|
|
cmp ah, 231 ; <20><><EFBFBD> 2
|
|
|
|
|
je go_fire
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jmp no_mov ; if not left, right, up, down, then go NO MOV
|
|
|
|
|
|
|
|
|
|
go_mov:
|
|
|
|
|
;mov ebx, [v_mov2]
|
|
|
|
|
mov [v_mov2], ah
|
|
|
|
|
sub word [v_mov2], 175 ; <20>⭨<EFBFBD><E2ADA8><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 175 <20> <20><>⠥<EFBFBD><E2A0A5><EFBFBD> 1,2,3 <20><><EFBFBD> 4 ᮮ⢥<E1AEAE><E2A2A5>⢥<EFBFBD><E2A2A5><EFBFBD> <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᮭ<EFBFBD><E1AEAD><EFBFBD>
|
|
|
|
|
jmp no_mov ; if not left, right, up, down, then go NO MOV
|
|
|
|
|
|
|
|
|
|
go_fire_left:
|
|
|
|
|
xor eax,eax
|
|
|
|
|
mov ah, 122
|
|
|
|
|
call fire
|
|
|
|
|
jmp no_mov
|
|
|
|
|
go_fire:
|
|
|
|
|
call fire
|
|
|
|
|
no_mov:
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᮭ<EFBFBD><E1AEAD><EFBFBD>
|
|
|
|
|
jmp still
|
|
|
|
|
|
|
|
|
|
button:
|
|
|
|
|
mov eax, 17
|
|
|
|
|
int 0x40
|
|
|
|
|
|
|
|
|
|
cmp ah,1
|
|
|
|
|
jne noclose
|
|
|
|
|
_close:
|
|
|
|
|
or eax,-1
|
|
|
|
|
int 0x40
|
|
|
|
|
noclose:
|
|
|
|
|
jmp still
|
|
|
|
|
|
|
|
|
|
; *********************************************
|
|
|
|
|
; ******* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> *******
|
|
|
|
|
; *********************************************
|
|
|
|
|
|
|
|
|
|
draw_window:
|
|
|
|
|
startwd
|
|
|
|
|
|
|
|
|
|
mcall 48, 4
|
|
|
|
|
mov ecx, 50*65536+516
|
|
|
|
|
add ecx, eax
|
|
|
|
|
mov ebx, 50*65536+521
|
|
|
|
|
mov edx, WND_COLOR
|
|
|
|
|
mov edi, title
|
|
|
|
|
xor eax, eax
|
|
|
|
|
int 0x40
|
|
|
|
|
|
|
|
|
|
xor ecx,ecx
|
|
|
|
|
call draw_subimage
|
|
|
|
|
cmp [imgcount],1
|
|
|
|
|
je .enddraw
|
|
|
|
|
|
|
|
|
|
mov ecx,[img_index]
|
|
|
|
|
|
|
|
|
|
call draw_subimage
|
|
|
|
|
|
|
|
|
|
.enddraw:
|
|
|
|
|
|
|
|
|
|
endwd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; LABIRINT
|
|
|
|
|
;*******************************************
|
|
|
|
|
|
|
|
|
|
labirint:
|
|
|
|
|
|
|
|
|
|
; <20>뢮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
cycle:
|
|
|
|
|
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
shl eax, 5 ; ᤢ<><E1A4A2> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> <20> <20>ࠢ<EFBFBD> <20><> 5 <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> 㬭<><E3ACAD><EFBFBD><EFBFBD><EFBFBD> <20><> 32
|
|
|
|
|
mov [perem1], eax
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
shr eax, 4 ; ᤢ<><E1A4A2> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>
|
|
|
|
|
shl eax, 5 ; ᤢ<><E1A4A2> <20><><EFBFBD><EFBFBD>⭮ (<28><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> 楫<><E6A5AB><EFBFBD><EFBFBD><E1ABA5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 256)
|
|
|
|
|
mov [perem2], eax
|
|
|
|
|
shl eax, 4 ; <20><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> <20>⭨<EFBFBD><E2ADA8><EFBFBD><EFBFBD> <20><> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD> <20><><EFBFBD>㦭<EFBFBD><E3A6AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> -> <20>-256*X
|
|
|
|
|
sbb dword [perem1], eax;
|
|
|
|
|
|
|
|
|
|
mov ebx, [Lab]
|
|
|
|
|
sbb ebx, 1
|
|
|
|
|
mov eax,[Dangeon + ebx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ah, 1 ;
|
|
|
|
|
je go_block
|
|
|
|
|
|
|
|
|
|
cmp ah, 0 ;
|
|
|
|
|
je back_block
|
|
|
|
|
|
|
|
|
|
cmp ah, 12 ; <20><><EFBFBD><EFBFBD><EFBFBD>᪠ 䮭<> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
je back_block
|
|
|
|
|
|
|
|
|
|
cmp ah, 3 ;
|
|
|
|
|
je boom_block
|
|
|
|
|
|
|
|
|
|
cmp ah, 16 ;
|
|
|
|
|
je door_block
|
|
|
|
|
|
|
|
|
|
cmp ah, 2 ; <20><><EFBFBD><EFBFBD><EFBFBD>᪠ 䮭<> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
je cool_block
|
|
|
|
|
|
|
|
|
|
jmp end_block
|
|
|
|
|
go_block:
|
|
|
|
|
imgtoimg img_area,dword [perem1],dword [perem2],canvas
|
|
|
|
|
jmp end_block
|
|
|
|
|
|
|
|
|
|
cool_block:
|
|
|
|
|
imgtoimg img_area3,dword [perem1],dword [perem2],canvas
|
|
|
|
|
jmp end_block
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
back_block:
|
|
|
|
|
imgtoimg img_area2,dword [perem1],dword [perem2],canvas
|
|
|
|
|
jmp end_block
|
|
|
|
|
|
|
|
|
|
door_block:
|
|
|
|
|
imgtoimg img_door1,dword [perem1],dword [perem2],canvas
|
|
|
|
|
|
|
|
|
|
mov eax, [gold]
|
|
|
|
|
cmp ax, 10 ; <20> ᮡ࠭<E1AEA1> <20><><EFBFBD><EFBFBD><EFBFBD> 10 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
jna end_block
|
|
|
|
|
imgtoimg img_door2,dword [perem1],dword [perem2],canvas
|
|
|
|
|
jmp end_block
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
boom_block:
|
|
|
|
|
imgtoimg img_area,dword [perem1],dword [perem2],canvas
|
|
|
|
|
mov ebp,18 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [perem1]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [perem2]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
|
|
|
|
|
mov ecx, [timer1] ;
|
|
|
|
|
and ecx, 15
|
|
|
|
|
cmp ecx, 0
|
|
|
|
|
jne end_block
|
|
|
|
|
|
|
|
|
|
mov ebx, [Lab]
|
|
|
|
|
mov byte [Dangeon + ebx], 0 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
end_block:
|
|
|
|
|
|
|
|
|
|
add word [Lab],1
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
|
|
|
|
|
cmp eax, 256 ; if eax == 0
|
|
|
|
|
je cycle_end ; jump to cycle_end:
|
|
|
|
|
jmp cycle ;
|
|
|
|
|
|
|
|
|
|
cycle_end:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov [Lab],eax
|
|
|
|
|
|
|
|
|
|
ret ; END labirint
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
;*******************************************
|
|
|
|
|
lestniza:
|
|
|
|
|
; <20>뢮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
cycle2:
|
|
|
|
|
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
shl eax, 5 ; ᤢ<><E1A4A2> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> <20> <20>ࠢ<EFBFBD> <20><> 5 <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> 㬭<><E3ACAD><EFBFBD><EFBFBD><EFBFBD> <20><> 32
|
|
|
|
|
mov [perem1], eax
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
shr eax, 4 ; ᤢ<><E1A4A2> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>
|
|
|
|
|
shl eax, 5 ; ᤢ<><E1A4A2> <20><><EFBFBD><EFBFBD>⭮ (<28><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> 楫<><E6A5AB><EFBFBD><EFBFBD><E1ABA5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 256)
|
|
|
|
|
mov [perem2], eax
|
|
|
|
|
shl eax, 4 ; <20><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> <20>⭨<EFBFBD><E2ADA8><EFBFBD><EFBFBD> <20><> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD> <20><><EFBFBD>㦭<EFBFBD><E3A6AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> -> <20>-256*X
|
|
|
|
|
sbb dword [perem1], eax;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mov ebx, [Lab]
|
|
|
|
|
sbb ebx, 1
|
|
|
|
|
mov eax,[Dangeon + ebx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ah, 8 ;
|
|
|
|
|
je go_lestniza
|
|
|
|
|
|
|
|
|
|
jmp end_lestniza
|
|
|
|
|
go_lestniza:
|
|
|
|
|
|
|
|
|
|
imgtoimg img_lestniza,dword [perem1],dword [perem2],canvas
|
|
|
|
|
end_lestniza:
|
|
|
|
|
|
|
|
|
|
add word [Lab],1
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
|
|
|
|
|
cmp eax, 256 ; if eax == 0
|
|
|
|
|
je cycle2_end ; jump to cycle_end:
|
|
|
|
|
jmp cycle2 ;
|
|
|
|
|
|
|
|
|
|
cycle2_end:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov [Lab],eax
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ret ; END lestniza
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; <20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
;*******************************************
|
|
|
|
|
water:
|
|
|
|
|
|
|
|
|
|
; <20>뢮<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
cycle3:
|
|
|
|
|
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
shl eax, 5 ; ᤢ<><E1A4A2> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> <20> <20>ࠢ<EFBFBD> <20><> 5 <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> 㬭<><E3ACAD><EFBFBD><EFBFBD><EFBFBD> <20><> 32
|
|
|
|
|
mov [perem1], eax
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
shr eax, 4 ; ᤢ<><E1A4A2> ॣ<><E0A5A3><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>
|
|
|
|
|
shl eax, 5 ; ᤢ<><E1A4A2> <20><><EFBFBD><EFBFBD>⭮ (<28><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> 楫<><E6A5AB><EFBFBD><EFBFBD><E1ABA5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 256)
|
|
|
|
|
mov [perem2], eax
|
|
|
|
|
shl eax, 4 ; <20><><EFBFBD> ࠢ<><E0A0A2> <20><><EFBFBD> <20>⭨<EFBFBD><E2ADA8><EFBFBD><EFBFBD> <20><> <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD> <20><><EFBFBD>㦭<EFBFBD><E3A6AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> -> <20>-256*X
|
|
|
|
|
sbb dword [perem1], eax;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mov ebx, [Lab]
|
|
|
|
|
sbb ebx, 1
|
|
|
|
|
mov eax,[Dangeon + ebx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ah, 4 ;
|
|
|
|
|
je go_water
|
|
|
|
|
|
|
|
|
|
cmp ah, 12 ; <20><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
je go_almaz
|
|
|
|
|
|
|
|
|
|
jmp end_water
|
|
|
|
|
go_water:
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax, [timer1];
|
|
|
|
|
and eax, 15
|
|
|
|
|
cmp eax, 7 ;
|
|
|
|
|
jb go_water2
|
|
|
|
|
|
|
|
|
|
imgtoimg img_water1,dword [perem1],dword [perem2],canvas
|
|
|
|
|
jmp end_water
|
|
|
|
|
|
|
|
|
|
go_water2:
|
|
|
|
|
imgtoimg img_water2,dword [perem1],dword [perem2],canvas
|
|
|
|
|
|
|
|
|
|
jmp end_water
|
|
|
|
|
go_almaz:
|
|
|
|
|
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax, [timer1];
|
|
|
|
|
and eax, 31
|
|
|
|
|
|
|
|
|
|
cmp eax, 10
|
|
|
|
|
ja almaz2
|
|
|
|
|
|
|
|
|
|
mov ebp,14 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [perem1]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [perem2]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp end_water
|
|
|
|
|
|
|
|
|
|
almaz2:
|
|
|
|
|
cmp eax, 20
|
|
|
|
|
ja almaz3
|
|
|
|
|
|
|
|
|
|
mov ebp,15 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [perem1]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [perem2]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp end_water
|
|
|
|
|
|
|
|
|
|
almaz3:
|
|
|
|
|
mov ebp,16 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [perem1]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [perem2]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
end_water:
|
|
|
|
|
|
|
|
|
|
add word [Lab],1
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
|
|
|
|
|
cmp eax, 256 ; if eax == 0
|
|
|
|
|
je cycle3_end ; jump to cycle_end:
|
|
|
|
|
jmp cycle3 ;
|
|
|
|
|
|
|
|
|
|
cycle3_end:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov [Lab],eax
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ret ; END water
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; <20>뢮<EFBFBD><EBA2AE><EFBFBD> <><E1ABA5><EFBFBD>騩 <20><><EFBFBD><EFBFBD> <20><> ᯨ᪠ <20><><EFBFBD>⨭<EFBFBD><E2A8AD>
|
|
|
|
|
;*******************************************
|
|
|
|
|
draw_subimage:
|
|
|
|
|
;aframetoimg Image,32, 32,canvas,0x00ffffff ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><EFBFBD><E0AEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
call labirint
|
|
|
|
|
call lestniza
|
|
|
|
|
call enemy_mas
|
|
|
|
|
call enemy_mov
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
mov ebx, [gold]
|
|
|
|
|
cmp bx, 5 ;㢥<><E3A2A5>祭<EFBFBD><E7A5AD> <><E1AAAE><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD><E0A0A3> <20> <20><>ࠫ <20><><EFBFBD><EFBFBD><EFBFBD> 9
|
|
|
|
|
jna lov_velo
|
|
|
|
|
call enemy_mas
|
|
|
|
|
call enemy_mov
|
|
|
|
|
lov_velo:
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
mov ebx, [gold]
|
|
|
|
|
cmp bx, 9 ;㢥<><E3A2A5>祭<EFBFBD><E7A5AD> <><E1AAAE><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD><E0A0A3> <20> <20><>ࠫ <20><><EFBFBD><EFBFBD><EFBFBD> 9
|
|
|
|
|
jna lov_velo2
|
|
|
|
|
call enemy_mas
|
|
|
|
|
call enemy_mov
|
|
|
|
|
lov_velo2:
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
; call enemy_mas
|
|
|
|
|
; call enemy_mov
|
|
|
|
|
call hiro
|
|
|
|
|
call hiro_mov
|
|
|
|
|
call water
|
|
|
|
|
|
|
|
|
|
call bullet_mov
|
|
|
|
|
call bullet_mov
|
|
|
|
|
call bullet_mov
|
|
|
|
|
call bullet_mas
|
|
|
|
|
call bullet_mov
|
|
|
|
|
call bullet_mov
|
|
|
|
|
call bullet_mov
|
|
|
|
|
call bullet_mas
|
|
|
|
|
call proverka_gold
|
|
|
|
|
call potop
|
|
|
|
|
|
|
|
|
|
setimg 0,0,canvas
|
|
|
|
|
|
|
|
|
|
call timer
|
|
|
|
|
call tablo
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
;@@@@@@@@@@@@@@@@@@
|
|
|
|
|
animashka:
|
|
|
|
|
;!!!<21><><EFBFBD><EFBFBD><EFBFBD> <20><>। <20>맮<EFBFBD><EBA7AE><EFBFBD> <20><><EFBFBD>楤<EFBFBD><E6A5A4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> ebx[<5B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>] <20> x,y
|
|
|
|
|
|
|
|
|
|
mov edi,coords
|
|
|
|
|
mov esi, Image ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>誠 <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
;
|
|
|
|
|
; mov ebp, dword [edi+8] ;ecx <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20>뢮<EFBFBD><EBA2AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; inc ebp ; 㢥<><E3A2A5>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; cmp ebp,3 ; <20><><EFBFBD>ᨬ<EFBFBD><E1A8AC>쭮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD> !!!!!!!
|
|
|
|
|
; jna ok_fr ; <20> <20>뢮<EFBFBD><EBA2AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᨬ<EFBFBD><E1A8AC>쭮<EFBFBD><ECADAE> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢠ <20><><EFBFBD>
|
|
|
|
|
;!!!!!!!!! mov ebp,2 ;<3B><><EFBFBD>㫥<EFBFBD><E3ABA5><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
ok_fr:
|
|
|
|
|
mov dword [edi+8], ebp ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20>뢮<EFBFBD><EBA2AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
loo:
|
|
|
|
|
cmp ebp,0 ; <20> <20><><EFBFBD><EFBFBD> <20>㫥<EFBFBD><E3ABA5><EFBFBD> <20><> <20>ࠧ<EFBFBD> <20><> <20>뢮<EFBFBD> ?
|
|
|
|
|
je setpic
|
|
|
|
|
movzx eax,word [esi+4] ; <20> <20><><EFBFBD> <20><> 㢥<><E3A2A5>稢<EFBFBD><E7A8A2><EFBFBD> <20> <20> ?
|
|
|
|
|
movzx ebx,word [esi+6]
|
|
|
|
|
mul ebx ;dword [esi+4] 㬭<><E3ACAD><EFBFBD><EFBFBD><EFBFBD> ebx <20><> eax <20> १<><E0A5A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> eax edx
|
|
|
|
|
mov ebx,3 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ <20><><EFBFBD> ???
|
|
|
|
|
mul ebx
|
|
|
|
|
add eax,8
|
|
|
|
|
add esi,eax
|
|
|
|
|
dec ebp
|
|
|
|
|
jmp loo
|
|
|
|
|
setpic:
|
|
|
|
|
|
|
|
|
|
pushad
|
|
|
|
|
; aframetoimg esi,dword [edi], dword [edi+4],canvas,0x00ffffff ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><EFBFBD><E0AEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; aframetoimg esi,32, 32,canvas,0x00ffffff ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><EFBFBD><E0AEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
aframetoimg esi,dword [X_anime],dword [Y_anime],canvas,0x00ffffff ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><EFBFBD><E0AEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
;call enemy_mas
|
|
|
|
|
popad
|
|
|
|
|
ret
|
|
|
|
|
;@@@@@@@@@@@@@@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;-------------- TIMER --------------
|
|
|
|
|
timer:
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax,[timer1] ;
|
|
|
|
|
add eax, 1;
|
|
|
|
|
mov [timer1], eax
|
|
|
|
|
|
|
|
|
|
cmp eax, 64 ; ⠩<><E2A0A9><EFBFBD> <20><> 0 <20><> 64
|
|
|
|
|
je nul_timer
|
|
|
|
|
jmp timer_dalee
|
|
|
|
|
nul_timer :
|
|
|
|
|
mov [timer1], 0
|
|
|
|
|
timer_dalee:
|
|
|
|
|
ret
|
|
|
|
|
;-------------- TIMER --------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; ENEMY
|
|
|
|
|
;*******************************************
|
|
|
|
|
|
|
|
|
|
enemy_mas: ; <20>뢮<EFBFBD> ENEmy ENEMYYYYYYYYYYYYYYY ENEMYYYYYYYYYYYYYY !!!
|
|
|
|
|
|
|
|
|
|
mov word [Lab2], 0 ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> WORD <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> +2 <><E1ABA5><EFBFBD>騩 <20>ࠣ ᮮ<><E1AEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢥<EFBFBD><E2A2A5><EFBFBD> 6*2= + 12
|
|
|
|
|
|
|
|
|
|
cycle4:
|
|
|
|
|
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov ecx, 0
|
|
|
|
|
mov edx, 0
|
|
|
|
|
mov esi, 0
|
|
|
|
|
|
|
|
|
|
mov word bx, [Lab2]
|
|
|
|
|
mov word ax,[Enemy+bx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Enemy + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ax, 1 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ <20><><EFBFBD><EFBFBD><EFBFBD> 1
|
|
|
|
|
je go_enemy
|
|
|
|
|
|
|
|
|
|
jmp end_enemy
|
|
|
|
|
go_enemy:
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + bx]
|
|
|
|
|
mov word [X_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; Y <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [Y_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [lab_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [mov_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; enemy LIFE
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [life_enemy], ax
|
|
|
|
|
|
|
|
|
|
cmp ax, 499; ; <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA6><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
ja enemy_dalee
|
|
|
|
|
mov ebp,2 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [X_enemy]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Y_enemy]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp enemy_bmp_end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
enemy_dalee:
|
|
|
|
|
xor eax,eax ;
|
|
|
|
|
mov eax, [X_enemy] ;
|
|
|
|
|
and eax, 15
|
|
|
|
|
cmp ax, 7;
|
|
|
|
|
ja enemy_1
|
|
|
|
|
|
|
|
|
|
jmp enemy_2
|
|
|
|
|
|
|
|
|
|
enemy_1:
|
|
|
|
|
|
|
|
|
|
mov ebp,0 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [X_enemy]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Y_enemy]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
|
|
|
|
|
jmp enemy_bmp_end
|
|
|
|
|
|
|
|
|
|
enemy_2:
|
|
|
|
|
mov ebp,1 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [X_enemy]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Y_enemy]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
enemy_bmp_end:
|
|
|
|
|
|
|
|
|
|
end_enemy:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov word ax, [Lab2]
|
|
|
|
|
|
|
|
|
|
cmp ax, 96 ; if eax == 0
|
|
|
|
|
je cycle4_end ; jump to cycle_end:
|
|
|
|
|
|
|
|
|
|
add word [Lab2],12
|
|
|
|
|
|
|
|
|
|
jmp cycle4 ;
|
|
|
|
|
|
|
|
|
|
cycle4_end:
|
|
|
|
|
|
|
|
|
|
ret ; END eNEMYYYYYYYYYYYYYYY ENEMYYYYYYYYYYYYYY !!!
|
|
|
|
|
|
|
|
|
|
;$$$$$$$$$$$$$$$$$$$$$$$$$$
|
|
|
|
|
; ENEMY MOV
|
|
|
|
|
;$$$$$$$$$$$$$$$$$$$$$$$$$$
|
|
|
|
|
enemy_mov:
|
|
|
|
|
mov word [Lab2], 0 ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> WORD <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> +2 <><E1ABA5><EFBFBD>騩 <20>ࠣ ᮮ<><E1AEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢥<EFBFBD><E2A2A5><EFBFBD> 6*2= + 12
|
|
|
|
|
|
|
|
|
|
cycle5:
|
|
|
|
|
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov ecx, 0
|
|
|
|
|
mov edx, 0
|
|
|
|
|
mov esi, 0
|
|
|
|
|
|
|
|
|
|
mov word bx, [Lab2]
|
|
|
|
|
mov word ax,[Enemy+bx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Enemy + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ax, 1 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ <20><><EFBFBD><EFBFBD><EFBFBD> 1
|
|
|
|
|
je go_mov_enemy
|
|
|
|
|
|
|
|
|
|
jmp end_mov_enemy
|
|
|
|
|
go_mov_enemy:
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + bx]
|
|
|
|
|
mov word [X_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; Y <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [Y_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [lab_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [mov_enemy], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; enemy LIFE
|
|
|
|
|
mov word ax, [Enemy + ebx]
|
|
|
|
|
mov word [life_enemy], ax
|
|
|
|
|
|
|
|
|
|
cmp ax, 499; ; <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA6><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
ja dalee_enemy_mov
|
|
|
|
|
add ax, 1
|
|
|
|
|
|
|
|
|
|
mov word [Enemy + ebx], ax
|
|
|
|
|
|
|
|
|
|
jmp end_mov_enemy
|
|
|
|
|
|
|
|
|
|
dalee_enemy_mov:
|
|
|
|
|
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov ax, [Xpl]
|
|
|
|
|
add ax, 23
|
|
|
|
|
cmp ax, [X_enemy]
|
|
|
|
|
jna ne_em
|
|
|
|
|
sbb ax, 45
|
|
|
|
|
cmp ax, [X_enemy]
|
|
|
|
|
ja ne_em
|
|
|
|
|
mov ax, [Ypl]
|
|
|
|
|
add ax, 23
|
|
|
|
|
cmp ax, [Y_enemy]
|
|
|
|
|
jna ne_em
|
|
|
|
|
sbb ax, 45
|
|
|
|
|
cmp ax, [Y_enemy]
|
|
|
|
|
ja ne_em
|
|
|
|
|
call load_level ; DEAD HIRO
|
|
|
|
|
delay 150
|
|
|
|
|
|
|
|
|
|
ne_em:
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 <20>㫨
|
|
|
|
|
|
|
|
|
|
mov word bx, 0
|
|
|
|
|
mov word ax,[Bullet + ebx]
|
|
|
|
|
cmp ax, 0
|
|
|
|
|
je no_bullet
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; [Xpl]
|
|
|
|
|
mov word cx, [Bullet + ebx]
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; [Ypl]
|
|
|
|
|
mov word dx, [Bullet + ebx]
|
|
|
|
|
|
|
|
|
|
cmp dx, [Y_enemy]
|
|
|
|
|
jna no_bullet
|
|
|
|
|
sbb dx, 32
|
|
|
|
|
cmp dx, [Y_enemy]
|
|
|
|
|
ja no_bullet
|
|
|
|
|
cmp cx, [X_enemy]
|
|
|
|
|
jna no_bullet
|
|
|
|
|
sbb cx, 32
|
|
|
|
|
cmp cx, [X_enemy]
|
|
|
|
|
ja no_bullet
|
|
|
|
|
mov word bx, [Lab2]
|
|
|
|
|
add word bx, 10 ; enemy LIFE
|
|
|
|
|
mov word [Enemy + ebx],0
|
|
|
|
|
|
|
|
|
|
mov byte [Bullet], 0 ;
|
|
|
|
|
|
|
|
|
|
no_bullet:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
cmp ax, 1 ; left ;
|
|
|
|
|
jne next_2 ;
|
|
|
|
|
sbb word [X_enemy], 1 ;
|
|
|
|
|
mov word ax, [X_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
;
|
|
|
|
|
next_2: ;
|
|
|
|
|
cmp ax, 2 ; down ;
|
|
|
|
|
jne next_3 ;
|
|
|
|
|
add word [Y_enemy], 1 ;
|
|
|
|
|
mov word ax, [Y_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 4 ; Y <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
;
|
|
|
|
|
next_3: ;
|
|
|
|
|
cmp ax, 3 ; up ;
|
|
|
|
|
jne next_4 ;
|
|
|
|
|
sbb word [Y_enemy], 1 ;
|
|
|
|
|
mov word ax, [Y_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 4 ; Y <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
;
|
|
|
|
|
next_4: ;
|
|
|
|
|
cmp ax, 4 ; right ;
|
|
|
|
|
jne next_end
|
|
|
|
|
|
|
|
|
|
;<3B>ࠢ<EFBFBD><E0A0A2><EFBFBD>樮<EFBFBD><E6A8AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⪠ <20><><EFBFBD><EFBFBD><EFBFBD> <20>ࠡ<EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <><E1ABA5> <20><> <20>ࠢ<EFBFBD> <20><> <20><EFBFBD>⠥<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>⮩ <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov word bx, [X_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp bx, 0 ;
|
|
|
|
|
jne n4_dalee ;
|
|
|
|
|
mov bx,[lab_enemy]
|
|
|
|
|
add bx,16
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
and eax,15
|
|
|
|
|
cmp word ax, 0
|
|
|
|
|
je next_end
|
|
|
|
|
cmp word ax, 4
|
|
|
|
|
je next_end
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>⪨
|
|
|
|
|
|
|
|
|
|
n4_dalee:
|
|
|
|
|
;
|
|
|
|
|
add word [X_enemy], 1 ;
|
|
|
|
|
mov word ax, [X_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
;
|
|
|
|
|
next_end:
|
|
|
|
|
;END <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
;
|
|
|
|
|
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>롮<EFBFBD> <20><> <20><>᭨<EFBFBD><E1ADA8>
|
|
|
|
|
mov word bx, [X_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp bx, 0 ;
|
|
|
|
|
jne end_les ;
|
|
|
|
|
mov word bx, [Y_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp bx, 0 ;
|
|
|
|
|
jne end_les ;
|
|
|
|
|
|
|
|
|
|
random 300, eax
|
|
|
|
|
|
|
|
|
|
cmp eax, 150
|
|
|
|
|
ja les2
|
|
|
|
|
jmp end_up_or_down
|
|
|
|
|
les2:
|
|
|
|
|
|
|
|
|
|
mov eax, [Ypl]
|
|
|
|
|
cmp eax, [Y_enemy]
|
|
|
|
|
jna bolee
|
|
|
|
|
mov word [mov_enemy],2 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
jmp end_les
|
|
|
|
|
|
|
|
|
|
bolee:
|
|
|
|
|
mov word [mov_enemy],3 ; up
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
jmp end_les
|
|
|
|
|
|
|
|
|
|
end_up_or_down:
|
|
|
|
|
|
|
|
|
|
random 300, eax
|
|
|
|
|
cmp eax, 150
|
|
|
|
|
ja les22
|
|
|
|
|
jmp end_les
|
|
|
|
|
les22:
|
|
|
|
|
|
|
|
|
|
mov eax, [Xpl]
|
|
|
|
|
cmp eax, [X_enemy]
|
|
|
|
|
jna bolee2
|
|
|
|
|
mov word [mov_enemy],4 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
jmp end_les
|
|
|
|
|
|
|
|
|
|
bolee2:
|
|
|
|
|
mov word [mov_enemy],1 ; up
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
|
|
|
|
|
end_les:
|
|
|
|
|
; end <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>롮<EFBFBD> <20><> <20><>᭨<EFBFBD><E1ADA8>
|
|
|
|
|
|
|
|
|
|
;<3B>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word bx, [X_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp bx, 0 ;
|
|
|
|
|
jne end_grava ;
|
|
|
|
|
|
|
|
|
|
mov bx,[lab_enemy]
|
|
|
|
|
add bx,16
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
|
|
|
|
|
and eax,15
|
|
|
|
|
cmp word ax, 0
|
|
|
|
|
je grava
|
|
|
|
|
cmp word ax, 4
|
|
|
|
|
je grava
|
|
|
|
|
jmp end_grava
|
|
|
|
|
grava:
|
|
|
|
|
mov word [mov_enemy], 2 ; padenie <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
|
|
|
|
|
end_grava:
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD> <20>ࠢ<EFBFBD><E0A0A2><EFBFBD>樨
|
|
|
|
|
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
mov eax, 0 ;
|
|
|
|
|
mov eax, [Y_enemy] ;
|
|
|
|
|
shr eax, 5 ;
|
|
|
|
|
shl eax, 4 ;
|
|
|
|
|
mov ebx, 0 ;
|
|
|
|
|
mov ebx, [X_enemy] ;
|
|
|
|
|
shr ebx, 5 ;
|
|
|
|
|
add eax, ebx ;
|
|
|
|
|
mov [lab_enemy], eax ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 6 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word bx, [Y_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and bx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp bx, 0 ;
|
|
|
|
|
jne end_zapret ;
|
|
|
|
|
mov word ax, [X_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ax, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp ax, 0 ;
|
|
|
|
|
jne end_zapret ;
|
|
|
|
|
|
|
|
|
|
mov word ax, [mov_enemy] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
cmp ax, 0
|
|
|
|
|
jne duma1
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>롮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, [timer1]
|
|
|
|
|
and eax, 3
|
|
|
|
|
cmp eax, 0
|
|
|
|
|
jne dalee_duma1
|
|
|
|
|
add eax, 4
|
|
|
|
|
dalee_duma1:
|
|
|
|
|
|
|
|
|
|
mov word [mov_enemy], ax ;
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
duma1:
|
|
|
|
|
cmp ax, 4
|
|
|
|
|
jne duma2 ; <20>ࢥઠ <20><>ࠢ<EFBFBD>
|
|
|
|
|
mov bx,[lab_enemy]
|
|
|
|
|
add bx,1
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
and eax,3
|
|
|
|
|
cmp ax, 0
|
|
|
|
|
jne duma_stop
|
|
|
|
|
jmp duma_end
|
|
|
|
|
|
|
|
|
|
duma2:
|
|
|
|
|
cmp ax, 1
|
|
|
|
|
jne duma3 ; <><E1ABA5>
|
|
|
|
|
mov bx,[lab_enemy]
|
|
|
|
|
sbb bx,1
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
and eax,3
|
|
|
|
|
cmp ax, 0
|
|
|
|
|
jne duma_stop
|
|
|
|
|
jmp duma_end
|
|
|
|
|
|
|
|
|
|
duma3:
|
|
|
|
|
cmp ax, 2
|
|
|
|
|
jne duma4 ; ᭨<><E1ADA8>
|
|
|
|
|
mov bx,[lab_enemy]
|
|
|
|
|
add bx,16
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
and eax,3
|
|
|
|
|
cmp ax, 0
|
|
|
|
|
jne duma_stop
|
|
|
|
|
jmp duma_end
|
|
|
|
|
|
|
|
|
|
duma4:
|
|
|
|
|
cmp ax, 3
|
|
|
|
|
jne duma_stop ; ᢥ<><E1A2A5><EFBFBD>
|
|
|
|
|
|
|
|
|
|
mov bx,[lab_enemy] ; <20> <20><>௨<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
sbb bx,16
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
and eax,3
|
|
|
|
|
cmp ax, 0 ; <20> <20><>௨<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
jne duma_stop
|
|
|
|
|
|
|
|
|
|
mov bx,[lab_enemy] ; <20> <20>ࠣ <20><> <20><> <20><>᭨<EFBFBD><E1ADA8>
|
|
|
|
|
mov ax, [Dangeon + bx]
|
|
|
|
|
and eax,15
|
|
|
|
|
cmp ax, 8
|
|
|
|
|
jne duma_stop
|
|
|
|
|
|
|
|
|
|
jmp duma_end
|
|
|
|
|
|
|
|
|
|
duma_stop:
|
|
|
|
|
|
|
|
|
|
mov word [mov_enemy], 0 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word ax, [mov_enemy] ;
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
|
|
|
|
|
duma_end:
|
|
|
|
|
|
|
|
|
|
end_zapret:
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
end_mov_enemy:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov word ax, [Lab2]
|
|
|
|
|
|
|
|
|
|
cmp ax, 96 ; if eax == 0
|
|
|
|
|
je cycle5_end ; jump to cycle_end:
|
|
|
|
|
|
|
|
|
|
add word [Lab2],12
|
|
|
|
|
|
|
|
|
|
jmp cycle5 ;
|
|
|
|
|
|
|
|
|
|
cycle5_end:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
;*****************************
|
|
|
|
|
; HIRO
|
|
|
|
|
;*****************************
|
|
|
|
|
|
|
|
|
|
hiro:
|
|
|
|
|
|
|
|
|
|
mov ecx, [v_fire] ;<3B><>५졠
|
|
|
|
|
cmp ecx, 0
|
|
|
|
|
je next_anima
|
|
|
|
|
cmp ecx, 1
|
|
|
|
|
je wprawo
|
|
|
|
|
mov ebp,12 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
mov ecx, [timer1] ;<3B><>५졠
|
|
|
|
|
and ecx, 15
|
|
|
|
|
cmp ecx, 0
|
|
|
|
|
jne end_hiro
|
|
|
|
|
mov dword [v_fire], 0
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
wprawo:
|
|
|
|
|
mov ebp,11 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
mov ecx, [timer1] ;<3B><>५졠
|
|
|
|
|
and ecx, 15
|
|
|
|
|
cmp ecx, 0
|
|
|
|
|
jne end_hiro
|
|
|
|
|
mov dword [v_fire], 0
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
;<3B><>५졠
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_anima:
|
|
|
|
|
mov eax, [v_mov]
|
|
|
|
|
cmp eax, 1
|
|
|
|
|
jne next_r
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax, [Xpl];
|
|
|
|
|
and eax, 15
|
|
|
|
|
cmp eax, 7 ;
|
|
|
|
|
ja next_l1
|
|
|
|
|
|
|
|
|
|
mov ebp,3 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_l1:
|
|
|
|
|
mov ebp,5 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
pusha
|
|
|
|
|
mcall 55, eax, , , Music_mov ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>५<EFBFBD>
|
|
|
|
|
popa
|
|
|
|
|
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_r:
|
|
|
|
|
cmp eax, 4
|
|
|
|
|
jne next_d
|
|
|
|
|
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax, [Xpl];
|
|
|
|
|
and eax, 15
|
|
|
|
|
cmp eax, 7 ;
|
|
|
|
|
ja next_d1
|
|
|
|
|
|
|
|
|
|
mov ebp,4 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
|
|
|
|
|
pusha
|
|
|
|
|
mcall 55, eax, , , Music_mov ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>५<EFBFBD>
|
|
|
|
|
popa
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_d1:
|
|
|
|
|
mov ebp,6 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_d:
|
|
|
|
|
cmp eax, 2
|
|
|
|
|
jne next_u
|
|
|
|
|
mov ebp,13 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, [temp2]
|
|
|
|
|
cmp eax, 8
|
|
|
|
|
jne padaem
|
|
|
|
|
mov ebp,10 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
padaem:
|
|
|
|
|
mov eax, [temp5]
|
|
|
|
|
cmp eax, 8
|
|
|
|
|
jne padaem2
|
|
|
|
|
mov ebp,10 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
padaem2:
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_u:
|
|
|
|
|
cmp eax, 3
|
|
|
|
|
jne next_s
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax, [Ypl];
|
|
|
|
|
and eax, 15
|
|
|
|
|
cmp eax, 7 ;
|
|
|
|
|
ja next_u1
|
|
|
|
|
|
|
|
|
|
mov ebp,10 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_u1:
|
|
|
|
|
mov ebp,9 ; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
next_s:
|
|
|
|
|
cmp eax, 0
|
|
|
|
|
jne next_s
|
|
|
|
|
mov ebp,17; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, dword [Xpl]
|
|
|
|
|
mov dword [X_anime], eax
|
|
|
|
|
mov eax, dword [Ypl]
|
|
|
|
|
mov dword [Y_anime], eax
|
|
|
|
|
call animashka
|
|
|
|
|
jmp end_hiro
|
|
|
|
|
|
|
|
|
|
end_hiro:
|
|
|
|
|
|
|
|
|
|
ret ; END Hiro
|
|
|
|
|
;**************
|
|
|
|
|
; end HIRO
|
|
|
|
|
;**************
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;****************
|
|
|
|
|
; Hiro MOV
|
|
|
|
|
;****************
|
|
|
|
|
hiro_mov:
|
|
|
|
|
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><E1ABA5><EFBFBD> <20><>ᥤ<EFBFBD><E1A5A4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov ebx, [hiro_lab]
|
|
|
|
|
sbb ebx,2
|
|
|
|
|
mov eax,[Dangeon + bx] ; up
|
|
|
|
|
mov [temp1], ah ; temp4
|
|
|
|
|
;
|
|
|
|
|
add ebx,1 ; left hiro right
|
|
|
|
|
mov eax,[Dangeon + bx] ; temp1 temp2 temp3
|
|
|
|
|
mov [temp2], ah ;
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
mov ecx, [Ypl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ecx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
mov edx, [Xpl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and edx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
or edx,ecx ; <20><> <20><>⪮ ᯮ<><E1AFAE>樮<EFBFBD><E6A8AE><EFBFBD><E0AEA2><EFBFBD> <20><> <20> <20> <20>
|
|
|
|
|
cmp edx, 0
|
|
|
|
|
jne no_almaz
|
|
|
|
|
|
|
|
|
|
cmp ah, 12
|
|
|
|
|
jne no_almaz
|
|
|
|
|
xor cx, cx
|
|
|
|
|
add ebx,1 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> !!! <20><><EFBFBD> <20><><EFBFBD> <20><>祬<EFBFBD><E7A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><>ᥤ<EFBFBD><E1A5A4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov [Dangeon + bx], ch
|
|
|
|
|
sbb ebx, 1 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> !!!
|
|
|
|
|
mov ecx, [gold]
|
|
|
|
|
add ecx, 1
|
|
|
|
|
mov [gold], ecx
|
|
|
|
|
pusha
|
|
|
|
|
mcall 55, eax, , , Music_almaz ; <20><><EFBFBD><EFBFBD> Almaz
|
|
|
|
|
popa
|
|
|
|
|
no_almaz:
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
; down
|
|
|
|
|
add ebx,1 ; temp5
|
|
|
|
|
mov eax,[Dangeon + bx] ;
|
|
|
|
|
mov [temp3], ah
|
|
|
|
|
|
|
|
|
|
sbb ebx,17 ; !!!!!!!!!!!!
|
|
|
|
|
mov eax,[Dangeon + bx] ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢨<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> MACROS.INC ebx=17 , <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢨<EFBFBD> ebx=16
|
|
|
|
|
mov [temp4], ah
|
|
|
|
|
|
|
|
|
|
add ebx,32 ;
|
|
|
|
|
mov eax,[Dangeon + bx] ;
|
|
|
|
|
mov [temp5], ah
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><E1ABA5><EFBFBD> <20><>ᥤ<EFBFBD><E1A5A4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;ࠧ<><E0A0A7>襭<EFBFBD><E8A5AD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax,[v_mov2] ;
|
|
|
|
|
and eax,7
|
|
|
|
|
and eax,2
|
|
|
|
|
cmp eax, 2
|
|
|
|
|
je smena
|
|
|
|
|
|
|
|
|
|
mov ebx, [Ypl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp ebx, 0 ;
|
|
|
|
|
jne end_tamgna ;
|
|
|
|
|
smena:
|
|
|
|
|
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax,[v_mov2] ;
|
|
|
|
|
and eax,7
|
|
|
|
|
and eax,2
|
|
|
|
|
cmp eax, 0
|
|
|
|
|
je smena2
|
|
|
|
|
|
|
|
|
|
mov ebx, [Xpl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp ebx, 0 ;
|
|
|
|
|
jne end_tamgna ;
|
|
|
|
|
|
|
|
|
|
smena2:
|
|
|
|
|
mov eax, [v_mov2]
|
|
|
|
|
and eax, 7
|
|
|
|
|
mov [v_mov], eax
|
|
|
|
|
end_tamgna:
|
|
|
|
|
;ࠧ<><E0A0A7>襭<EFBFBD><E8A5AD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov ebx, [Ypl] ;
|
|
|
|
|
and ebx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp ebx, 0 ;
|
|
|
|
|
jne end_stop ;
|
|
|
|
|
mov eax, [Xpl] ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>⮣<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20>뫮 <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> 㯨࠭<E3AFA8><E0A0AD>
|
|
|
|
|
and eax, 31 ; X <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp eax, 0 ;
|
|
|
|
|
jne end_stop ;
|
|
|
|
|
mov eax, [v_mov]
|
|
|
|
|
|
|
|
|
|
cmp eax, 2
|
|
|
|
|
je stop_d
|
|
|
|
|
jmp stop_u
|
|
|
|
|
|
|
|
|
|
stop_d:
|
|
|
|
|
mov ebx, [temp5]
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD>⪠ 2 ࠢ<><E0A0A2> 1 <20> <20><>⮭ <20><> <20><><EFBFBD> <20><><EFBFBD> <20><>௨<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ன <20><><EFBFBD>室<EFBFBD><E5AEA4> ᪢<><E1AAA2><EFBFBD> <20><>⮭
|
|
|
|
|
|
|
|
|
|
cmp ebx, 2
|
|
|
|
|
jne no_zaplat1
|
|
|
|
|
|
|
|
|
|
sbb ebx,1
|
|
|
|
|
|
|
|
|
|
no_zaplat1:
|
|
|
|
|
|
|
|
|
|
and ebx,3
|
|
|
|
|
or eax, ebx
|
|
|
|
|
|
|
|
|
|
cmp eax, 2
|
|
|
|
|
je end_stop
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov [v_mov], ebx
|
|
|
|
|
|
|
|
|
|
stop_u:
|
|
|
|
|
cmp eax, 3
|
|
|
|
|
jne stop_l
|
|
|
|
|
|
|
|
|
|
mov ebx, [temp4]
|
|
|
|
|
and ebx,3
|
|
|
|
|
and eax, ebx
|
|
|
|
|
|
|
|
|
|
; mov ebx, [Ypl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; and ebx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; cmp ebx, 0 ;
|
|
|
|
|
; jne end_stop ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cmp eax, 0
|
|
|
|
|
je end_stop
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov [v_mov], ebx
|
|
|
|
|
|
|
|
|
|
stop_l:
|
|
|
|
|
cmp eax, 1
|
|
|
|
|
jne stop_r
|
|
|
|
|
|
|
|
|
|
mov ebx, [temp1]
|
|
|
|
|
and ebx,3
|
|
|
|
|
|
|
|
|
|
; mov eax, [Xpl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; and eax, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; cmp eax, 0 ;
|
|
|
|
|
; jne end_stop ;
|
|
|
|
|
|
|
|
|
|
cmp ebx, 0
|
|
|
|
|
je end_stop
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov [v_mov], ebx
|
|
|
|
|
|
|
|
|
|
stop_r:
|
|
|
|
|
cmp eax, 4
|
|
|
|
|
jne end_stop
|
|
|
|
|
|
|
|
|
|
mov ebx, [temp3]
|
|
|
|
|
and ebx,3
|
|
|
|
|
|
|
|
|
|
cmp ebx, 0
|
|
|
|
|
je end_stop
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov [v_mov], ebx
|
|
|
|
|
|
|
|
|
|
end_stop:
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;GRAVITACION
|
|
|
|
|
mov ebx, [Ypl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and ebx, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
mov eax, [Xpl] ; <20><><EFBFBD> <20><EFBFBD><E1ABAE><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
and eax, 31 ; Y <20> <20><><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD>⨢ <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
or eax,ebx ; <20><> <20><>⪮ ᯮ<><E1AFAE>樮<EFBFBD><E6A8AE><EFBFBD><E0AEA2><EFBFBD> <20><> <20> <20> <20>
|
|
|
|
|
cmp eax, 0
|
|
|
|
|
jne end_grav
|
|
|
|
|
|
|
|
|
|
mov ebx, [temp2] ;
|
|
|
|
|
cmp ebx, 0 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>릪<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
jne end_grav ;
|
|
|
|
|
mov ebx, [v_mov] ;
|
|
|
|
|
cmp ebx, 3 ;
|
|
|
|
|
jne dalee_gra ;
|
|
|
|
|
mov ebx, 0 ;
|
|
|
|
|
mov [v_mov],ebx ;
|
|
|
|
|
mov ebx, 0 ;
|
|
|
|
|
mov [v_mov2],ebx ;
|
|
|
|
|
|
|
|
|
|
dalee_gra:
|
|
|
|
|
add eax, [temp5] ;
|
|
|
|
|
cmp eax, 0 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
jne dalee_g ;
|
|
|
|
|
mov eax, 2 ;
|
|
|
|
|
mov [v_mov],eax ;
|
|
|
|
|
mov eax, 0 ;
|
|
|
|
|
mov [v_mov2],eax ;
|
|
|
|
|
|
|
|
|
|
dalee_g:
|
|
|
|
|
cmp eax, 4 ;
|
|
|
|
|
jne dalee_g2 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, 2 ;
|
|
|
|
|
mov [v_mov],eax ;
|
|
|
|
|
mov eax, 0 ;
|
|
|
|
|
mov [v_mov2],eax ;
|
|
|
|
|
|
|
|
|
|
dalee_g2:
|
|
|
|
|
cmp eax, 12 ;
|
|
|
|
|
jne end_grav ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax, 2 ;
|
|
|
|
|
mov [v_mov],eax ;
|
|
|
|
|
mov eax, 0 ;
|
|
|
|
|
mov [v_mov2],eax ;
|
|
|
|
|
|
|
|
|
|
end_grav:
|
|
|
|
|
;end GRAVITACION
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov eax,0 ;
|
|
|
|
|
mov eax,[v_mov] ;
|
|
|
|
|
cmp eax, 2 ;
|
|
|
|
|
je h_down ;
|
|
|
|
|
jmp proverka2 ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
h_down: ;
|
|
|
|
|
mov ebx, [Ypl] ;
|
|
|
|
|
add ebx, 2 ; 3
|
|
|
|
|
mov [Ypl], ebx ; 1 4
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
;
|
|
|
|
|
proverka2: ;
|
|
|
|
|
cmp eax, 3 ; ;
|
|
|
|
|
je h_up ; PRIROST X Y
|
|
|
|
|
jmp proverka3 ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
h_up: ;
|
|
|
|
|
mov ebx, [Ypl] ;
|
|
|
|
|
sbb ebx, 2 ;
|
|
|
|
|
mov [Ypl], ebx ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
;
|
|
|
|
|
proverka3: ;
|
|
|
|
|
cmp eax, 1 ; ;
|
|
|
|
|
je h_left ;
|
|
|
|
|
jmp proverka4 ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
h_left: ;
|
|
|
|
|
mov ebx, [Xpl] ;
|
|
|
|
|
sbb ebx, 2 ;
|
|
|
|
|
mov [Xpl], ebx ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
;
|
|
|
|
|
proverka4: ;
|
|
|
|
|
cmp eax, 4 ;
|
|
|
|
|
je h_right ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
jmp hiro_mov_end ;
|
|
|
|
|
h_right: ;
|
|
|
|
|
mov ebx, [Xpl] ;
|
|
|
|
|
add ebx, 2 ;
|
|
|
|
|
mov [Xpl], ebx ;
|
|
|
|
|
jmp hiro_mov_end ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
hiro_mov_end:
|
|
|
|
|
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
mov eax, 0 ;
|
|
|
|
|
mov dword eax, [Ypl] ;
|
|
|
|
|
shr eax, 5 ;
|
|
|
|
|
shl eax, 4 ;
|
|
|
|
|
mov ebx, 0 ;
|
|
|
|
|
mov dword ebx, [Xpl] ;
|
|
|
|
|
shr ebx, 5 ;
|
|
|
|
|
add eax, ebx ;
|
|
|
|
|
mov [hiro_lab], eax ;
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
ret
|
|
|
|
|
;****************
|
|
|
|
|
; end Hiro mov
|
|
|
|
|
;****************
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; BULLET
|
|
|
|
|
;*******************************************
|
|
|
|
|
bullet_mas:
|
|
|
|
|
mov word [Lab3], 0 ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> WORD <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> +2 <><E1ABA5><EFBFBD>騩 <20>ࠣ ᮮ<><E1AEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢥<EFBFBD><E2A2A5><EFBFBD> 6*2= + 12
|
|
|
|
|
cycle7:
|
|
|
|
|
mov word bx, [Lab3]
|
|
|
|
|
mov word ax, [Bullet+bx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Enemy + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ax, 1 ; bullet ok
|
|
|
|
|
je go_bullet
|
|
|
|
|
|
|
|
|
|
jmp end_bullet
|
|
|
|
|
go_bullet:
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Bullet + bx]
|
|
|
|
|
mov word [X_bul], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Bullet + bx]
|
|
|
|
|
mov word [Y_bul], ax
|
|
|
|
|
|
|
|
|
|
imgtoimg img_bullet, dword [X_bul], dword [Y_bul],canvas
|
|
|
|
|
end_bullet:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov word ax, [Lab3]
|
|
|
|
|
|
|
|
|
|
cmp ax, 36 ; if eax == 0
|
|
|
|
|
je cycle7_end ; jump to cycle_end:
|
|
|
|
|
|
|
|
|
|
add word [Lab3],12
|
|
|
|
|
|
|
|
|
|
jmp cycle7 ;
|
|
|
|
|
|
|
|
|
|
cycle7_end:
|
|
|
|
|
ret ; end BULLET
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;*******************************************
|
|
|
|
|
; BULLET MOV
|
|
|
|
|
;*******************************************
|
|
|
|
|
bullet_mov:
|
|
|
|
|
mov word [Lab3], 0 ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> WORD <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> +2 <><E1ABA5><EFBFBD>騩 <20>ࠣ ᮮ<><E1AEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢥<EFBFBD><E2A2A5><EFBFBD> 6*2= + 12
|
|
|
|
|
|
|
|
|
|
cycle8:
|
|
|
|
|
mov word bx, [Lab3]
|
|
|
|
|
mov word ax, [Bullet+bx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Enemy + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
cmp ax, 1 ; bullet ok
|
|
|
|
|
je go_bullet_mov
|
|
|
|
|
|
|
|
|
|
jmp end_bullet_mov
|
|
|
|
|
go_bullet_mov:
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Bullet + bx]
|
|
|
|
|
mov word [X_bul], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word ax, [Bullet + bx]
|
|
|
|
|
mov word [Y_bul], ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ;
|
|
|
|
|
mov word ax, [Bullet + bx]
|
|
|
|
|
mov word [mov_bullet], ax
|
|
|
|
|
|
|
|
|
|
cmp ax, 1
|
|
|
|
|
jne bul_muv_left
|
|
|
|
|
mov word ax, [X_bul]
|
|
|
|
|
sbb ax, 2
|
|
|
|
|
mov word bx, [Lab3]
|
|
|
|
|
add word bx, 2
|
|
|
|
|
mov word [Bullet + bx], ax
|
|
|
|
|
|
|
|
|
|
jmp end_bullet_mov
|
|
|
|
|
bul_muv_left:
|
|
|
|
|
mov word ax, [X_bul]
|
|
|
|
|
add ax, 2
|
|
|
|
|
mov word bx, [Lab3]
|
|
|
|
|
add word bx, 2
|
|
|
|
|
mov word [Bullet + bx], ax
|
|
|
|
|
|
|
|
|
|
end_bullet_mov:
|
|
|
|
|
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BULLET <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
mov eax, 0 ;
|
|
|
|
|
mov eax, [Y_bul] ;
|
|
|
|
|
shr eax, 5 ;
|
|
|
|
|
shl eax, 4 ;
|
|
|
|
|
mov ebx, 0 ;
|
|
|
|
|
mov ebx, [X_bul] ;
|
|
|
|
|
shr ebx, 5 ;
|
|
|
|
|
add eax, ebx ;
|
|
|
|
|
mov [lab_bullet], ax ;
|
|
|
|
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BULLET <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>
|
|
|
|
|
|
|
|
|
|
mov word bx,[lab_bullet]
|
|
|
|
|
mov dx, [Dangeon + bx]
|
|
|
|
|
and edx,3
|
|
|
|
|
cmp dx, 0
|
|
|
|
|
je letit_dalee
|
|
|
|
|
|
|
|
|
|
cmp dx, 2
|
|
|
|
|
je beton
|
|
|
|
|
mov byte [Dangeon + bx], 3 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
beton:
|
|
|
|
|
mov bx, [Lab3]
|
|
|
|
|
mov byte [Bullet + ebx], 0 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Enemy + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
letit_dalee:
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov word ax, [Lab3]
|
|
|
|
|
|
|
|
|
|
cmp ax, 36 ; if eax == 0
|
|
|
|
|
je cycle8_end ; jump to cycle_end:
|
|
|
|
|
|
|
|
|
|
add word [Lab3],12
|
|
|
|
|
|
|
|
|
|
jmp cycle8 ;
|
|
|
|
|
|
|
|
|
|
cycle8_end:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ret ; end BULLET
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
; TABLO TABLO TABLO TABLO TABLO TABLO
|
|
|
|
|
;*****************************************
|
|
|
|
|
tablo:
|
|
|
|
|
; WIWOD CIFR
|
|
|
|
|
;; mov eax, 13
|
|
|
|
|
; mov ebx, 140*65536 + 18
|
|
|
|
|
; mov ecx, 10*65536 + 8
|
|
|
|
|
; mov edx, 0x00ffffff
|
|
|
|
|
; int 0x40
|
|
|
|
|
; outcount [numer_level],140,10,0x224466,3*65536
|
|
|
|
|
|
|
|
|
|
; WIWOD CIFR
|
|
|
|
|
; mov eax, 13
|
|
|
|
|
; mov ebx, 160*65536 + 18
|
|
|
|
|
; mov ecx, 10*65536 + 8
|
|
|
|
|
; mov edx, 0x00ffffff
|
|
|
|
|
; int 0x40
|
|
|
|
|
; outcount [delta_level],160,10,0x224466,3*65536
|
|
|
|
|
|
|
|
|
|
; WIWOD CIFR
|
|
|
|
|
; mov eax, 13
|
|
|
|
|
; mov ebx, 180*65536 + 18
|
|
|
|
|
; mov ecx, 10*65536 + 8
|
|
|
|
|
; mov edx, 0x00ffffff
|
|
|
|
|
; int 0x40
|
|
|
|
|
; outcount [delta_level_end],180,10,0x224466,3*65536
|
|
|
|
|
|
|
|
|
|
ret
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
fire:
|
|
|
|
|
sbb ah, 121
|
|
|
|
|
mov [v_fire], ah
|
|
|
|
|
|
|
|
|
|
mov word bx, 0
|
|
|
|
|
mov cx, [Bullet + ebx]
|
|
|
|
|
cmp cx, 0
|
|
|
|
|
jne end_fire
|
|
|
|
|
pusha
|
|
|
|
|
mcall 55, eax, , , Music_bah ; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>५<EFBFBD>
|
|
|
|
|
popa
|
|
|
|
|
|
|
|
|
|
mov byte [Bullet + ebx], 1
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov ax, [Xpl]
|
|
|
|
|
add ax, 8
|
|
|
|
|
mov word [Bullet + ebx],ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov ax, [Ypl]
|
|
|
|
|
add ax, 16
|
|
|
|
|
mov word [Bullet + ebx],ax
|
|
|
|
|
|
|
|
|
|
add word bx, 2 ;
|
|
|
|
|
mov ax,[v_fire]
|
|
|
|
|
mov word [Bullet + ebx],ax
|
|
|
|
|
|
|
|
|
|
end_fire:
|
|
|
|
|
ret
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;------------------------<2D><><EFBFBD><EFBFBD>㧪<EFBFBD> <20><EFBFBD><E0AEA2><EFBFBD>---------------------------------------
|
|
|
|
|
load_level:
|
|
|
|
|
imgtoimg img_level,32,32,canvas
|
|
|
|
|
setimg 0,0,canvas
|
|
|
|
|
|
|
|
|
|
xor eax,eax
|
|
|
|
|
xor ebx,ebx
|
|
|
|
|
xor edx,edx
|
|
|
|
|
xor ecx,ecx
|
|
|
|
|
mov dword [Bullet], eax
|
|
|
|
|
mov dword [Bullet+2], eax
|
|
|
|
|
mov dword [Bullet+4], eax
|
|
|
|
|
mov dword [Bullet+6], eax
|
|
|
|
|
mov dword [Bullet+8], eax
|
|
|
|
|
mov dword [Bullet+10], eax
|
|
|
|
|
mov byte [Lab], 1
|
|
|
|
|
mov [lab_bullet], eax
|
|
|
|
|
mov [mov_bullet], eax
|
|
|
|
|
mov [X_bul], eax
|
|
|
|
|
mov [Y_bul], eax
|
|
|
|
|
mov [gold], eax
|
|
|
|
|
mov dword [Xpl], 32
|
|
|
|
|
mov dword [Ypl], 448
|
|
|
|
|
mov dword [hiro_lab],0 ; <20><EFBFBD><E0AEA5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD>
|
|
|
|
|
mov dword [v_mov], 0
|
|
|
|
|
mov dword [v_mov2], 0
|
|
|
|
|
mov dword [v_fire], 0
|
|
|
|
|
|
|
|
|
|
xor eax,eax
|
|
|
|
|
mov eax, [numer_level]
|
|
|
|
|
shl eax, 8
|
|
|
|
|
mov dword [delta_level], eax
|
|
|
|
|
add eax, 256
|
|
|
|
|
mov dword [delta_level_end], eax
|
|
|
|
|
|
|
|
|
|
cycleL:
|
|
|
|
|
|
|
|
|
|
xor ebx, ebx
|
|
|
|
|
mov ebx, [Lab]
|
|
|
|
|
add ebx, [delta_level]
|
|
|
|
|
mov ax,[Dangeon2 + ebx] ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
|
|
|
|
|
sbb ebx, [delta_level]
|
|
|
|
|
mov [Dangeon + ebx], ax ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ᬥ饭<E1ACA5><E9A5AD>
|
|
|
|
|
add word [Lab],1
|
|
|
|
|
mov eax, [Lab]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cmp eax, [delta_level_end] ; if eax == 0
|
|
|
|
|
je cycleL_end ; jump to cycle_end:
|
|
|
|
|
jmp cycleL ;
|
|
|
|
|
cycleL_end:
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov [Lab],eax
|
|
|
|
|
|
|
|
|
|
call enemy_plaz
|
|
|
|
|
|
|
|
|
|
ret
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
;************************************
|
|
|
|
|
;GOLD
|
|
|
|
|
proverka_gold:
|
|
|
|
|
mov eax, [gold]
|
|
|
|
|
cmp ax, 10
|
|
|
|
|
jna net_deneg
|
|
|
|
|
mov eax, [temp2] ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp ax, 16
|
|
|
|
|
jne net_deneg
|
|
|
|
|
mov ax, [numer_level] ; 㢥<><E3A2A5>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
add ax, 1
|
|
|
|
|
mov [numer_level], ax
|
|
|
|
|
mov [demon_kolvo], ax ;
|
|
|
|
|
|
|
|
|
|
call load_level
|
|
|
|
|
delay 100
|
|
|
|
|
|
|
|
|
|
net_deneg:
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
; <20><><EFBFBD><EFBFBD>
|
|
|
|
|
potop:
|
|
|
|
|
mov eax, [temp2] ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
cmp ax, 4
|
|
|
|
|
jne jiwoy
|
|
|
|
|
mov dword [gold], 0 ; 㢥<><E3A2A5>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
call load_level
|
|
|
|
|
delay 100
|
|
|
|
|
jiwoy:
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
;************************************
|
|
|
|
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD><E0A0A3> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><E0AEA2>
|
|
|
|
|
enemy_plaz:
|
|
|
|
|
mov word [Lab2], 0 ; <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> WORD <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>ᨢ<EFBFBD> +2 <><E1ABA5><EFBFBD>騩 <20>ࠣ ᮮ<><E1AEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢥<EFBFBD><E2A2A5><EFBFBD> 6*2= + 12
|
|
|
|
|
mov ax, [demon_kolvo]
|
|
|
|
|
mov [demon], ax
|
|
|
|
|
|
|
|
|
|
cycle55:
|
|
|
|
|
mov ebx, 0
|
|
|
|
|
mov ecx, 0
|
|
|
|
|
mov edx, 0
|
|
|
|
|
mov esi, 0
|
|
|
|
|
|
|
|
|
|
mov cx, [demon]
|
|
|
|
|
cmp cx, 0
|
|
|
|
|
je end_demon
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
mov word [Enemy + bx], 1 ;
|
|
|
|
|
sbb cx, 1
|
|
|
|
|
mov [demon], cx
|
|
|
|
|
end_demon:
|
|
|
|
|
|
|
|
|
|
random 14, eax
|
|
|
|
|
add eax, 1
|
|
|
|
|
shl eax,5
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 2 ; X <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
;
|
|
|
|
|
random 12, eax
|
|
|
|
|
add eax, 1
|
|
|
|
|
shl eax,5
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 4 ; Y <20><><EFBFBD>ਤ<EFBFBD><E0A8A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ࠣ<EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], ax ;
|
|
|
|
|
|
|
|
|
|
mov word bx, [Lab2] ;
|
|
|
|
|
add word bx, 8 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], 0 ;
|
|
|
|
|
add word bx, 2 ; <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
mov word [Enemy + bx], 500 ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mov eax, 0
|
|
|
|
|
mov word ax, [Lab2]
|
|
|
|
|
|
|
|
|
|
cmp ax, 96 ; if eax == 0
|
|
|
|
|
je cycle55_end ; jump to cycle_end:
|
|
|
|
|
|
|
|
|
|
add word [Lab2],12
|
|
|
|
|
|
|
|
|
|
jmp cycle55 ;
|
|
|
|
|
|
|
|
|
|
cycle55_end:
|
|
|
|
|
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I_END: ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
|
Xpl: dd 32 ; <20><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Ypl: dd 448
|
|
|
|
|
hiro_lab: dd 0 ; <20><EFBFBD><E0AEA5><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD>
|
|
|
|
|
numer_level: dd 0
|
|
|
|
|
delta_level: dd 0
|
|
|
|
|
delta_level_end: dd 256
|
|
|
|
|
demon: dd 0
|
|
|
|
|
demon_kolvo: dd 1
|
|
|
|
|
|
|
|
|
|
gold: dd 0
|
|
|
|
|
|
|
|
|
|
X_enemy: dd 0
|
|
|
|
|
Y_enemy: dd 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X_bul: dd 0
|
|
|
|
|
Y_bul: dd 0
|
|
|
|
|
|
|
|
|
|
X_anime: dd 0
|
|
|
|
|
Y_anime: dd 0
|
|
|
|
|
|
|
|
|
|
mov_bullet: dw 0
|
|
|
|
|
lab_bullet: dw 0
|
|
|
|
|
mov_enemy: dw 0
|
|
|
|
|
lab_enemy: dw 0
|
|
|
|
|
life_enemy: dw 0
|
|
|
|
|
|
|
|
|
|
anime : dd 0 ; <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><>
|
|
|
|
|
anime2 : dd 0 ; <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><>
|
|
|
|
|
|
|
|
|
|
temp1: dd 0
|
|
|
|
|
temp2: dd 0
|
|
|
|
|
temp3: dd 0
|
|
|
|
|
temp4: dd 0
|
|
|
|
|
temp5: dd 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
v_mov: dd 0 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᮭ<EFBFBD><E1AEAD><EFBFBD>
|
|
|
|
|
v_mov2: dd 0 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᮭ<EFBFBD><E1AEAD><EFBFBD>
|
|
|
|
|
v_fire: dd 0 ; <20><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ᮭ<EFBFBD><E1AEAD><EFBFBD>
|
|
|
|
|
Lab: dd 0
|
|
|
|
|
Lab2: dw 0
|
|
|
|
|
Lab3: dw 0
|
|
|
|
|
perem1: dd 0
|
|
|
|
|
perem2: dd 0
|
|
|
|
|
|
|
|
|
|
timer1 dd 0 ; ⠩<><E2A0A9><EFBFBD> <20>ᯮ<EFBFBD><E1AFAE><EFBFBD>㥬<EFBFBD><E3A5AC> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>樨 <20><><EFBFBD><EFBFBD>, <20>ࠣ<EFBFBD><E0A0A3> --- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 0 <20><> 10
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
;1 <20><><EFBFBD>筠<EFBFBD> <20>⥭<EFBFBD>, 2 <20><><EFBFBD><EFBFBD><E0AEA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 4 <20><><EFBFBD><EFBFBD>, 8 <20><>᭨<EFBFBD><E1ADA8>, 12 <20><><EFBFBD><EFBFBD><EFBFBD>, 0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 16 - exit
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
Dangeon:
|
|
|
|
|
db 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2
|
|
|
|
|
db 2,1,1,1,1,1,1,0,12,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,12,12,0,0,0,8,1,8,1,1,1,0,0,2
|
|
|
|
|
db 2,8,1,1,1,1,1,8,1,8,0,0,0,0,0,2
|
|
|
|
|
db 2,8,0,0,0,0,0,8,1,8,2,4,4,2,0,2
|
|
|
|
|
db 2,8,2,4,4,4,2,8,1,8,2,2,2,2,0,2
|
|
|
|
|
db 2,0,2,2,2,2,2,8,1,8,0,0,0,0,0,2
|
|
|
|
|
db 2,0,1,0,0,0,0,8,1,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,1,1,8,1,1,1,0,0,0,0,0,0,8,2
|
|
|
|
|
db 2,12,1,1,8,0,12,0,1,8,1,1,8,1,1,2
|
|
|
|
|
db 2,0,0,0,8,8,1,8,0,8,0,0,0,0,0,2
|
|
|
|
|
db 2,12,1,8,1,8,1,1,8,1,1,1,1,1,1,2
|
|
|
|
|
db 2,0,1,8,12,12,0,0,0,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,1,1,1,1,1,8,1,1,1,0,0,0,0,2
|
|
|
|
|
db 2,0,0,0,12,0,0,8,0,0,0,16,0,12,12,2
|
|
|
|
|
db 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2
|
|
|
|
|
|
|
|
|
|
Dangeon2:
|
|
|
|
|
db 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2
|
|
|
|
|
db 2,1,1,0,1,1,1,0,12,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,12,12,0,0,0,8,1,8,1,1,1,0,0,2
|
|
|
|
|
db 2,8,1,1,1,1,1,8,1,8,0,0,0,0,0,2
|
|
|
|
|
db 2,8,0,0,0,0,0,8,1,8,2,4,4,2,0,2 ;0
|
|
|
|
|
db 2,8,2,4,4,4,2,8,1,8,2,2,2,2,0,2
|
|
|
|
|
db 2,0,2,2,2,2,2,8,1,8,0,0,0,0,0,2
|
|
|
|
|
db 2,0,1,0,0,0,0,8,1,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,1,1,8,1,1,1,0,0,0,0,0,0,8,2
|
|
|
|
|
db 2,12,1,1,8,0,12,0,1,8,1,1,8,1,1,2
|
|
|
|
|
db 2,0,0,0,8,8,1,8,0,8,0,0,0,0,0,2
|
|
|
|
|
db 2,12,1,8,1,8,1,1,8,1,1,1,1,1,1,2
|
|
|
|
|
db 2,0,1,8,12,12,0,0,0,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,1,1,1,1,1,8,1,1,1,0,0,0,0,2
|
|
|
|
|
db 2,0,0,0,12,0,0,8,0,0,0,16,0,12,12,2
|
|
|
|
|
db 2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,0,0,16,0,0,0,2
|
|
|
|
|
db 2,12,1,8,1,0,0,0,0,0,0,1,8,0,0,2
|
|
|
|
|
db 2,0,1,8,1,0,0,0,0,0,0,1,0,8,0,2 ;1
|
|
|
|
|
db 2,12,1,8,1,1,0,0,0,0,1,1,0,8,0,2
|
|
|
|
|
db 2,0,1,8,1,0,12,12,12,12,0,1,8,8,0,2
|
|
|
|
|
db 2,12,1,8,1,0,1,1,1,1,0,1,8,0,0,2
|
|
|
|
|
db 2,0,1,8,0,0,0,0,0,0,0,0,8,0,0,2
|
|
|
|
|
db 2,0,1,1,1,1,8,1,8,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,0,0,12,0,8,0,8,0,0,0,12,0,8,2
|
|
|
|
|
db 2,0,1,1,1,1,1,0,1,8,1,1,8,1,1,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,8,1,0,8,0,0,2
|
|
|
|
|
db 2,0,1,1,1,1,1,8,1,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,0,12,0,0,0,8,0,0,12,0,0,0,8,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,12,0,12,0,0,0,2
|
|
|
|
|
db 2,0,0,0,0,0,0,8,1,1,1,1,1,1,0,2 ;2
|
|
|
|
|
db 2,0,8,0,12,12,0,8,0,0,0,0,0,2,4,2
|
|
|
|
|
db 2,0,8,1,1,1,1,0,0,0,0,0,0,2,2,2
|
|
|
|
|
db 2,0,8,0,0,0,0,12,1,1,1,1,0,0,0,2
|
|
|
|
|
db 2,0,8,1,0,1,0,12,0,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,8,0,1,1,12,12,0,0,0,8,1,1,1,2
|
|
|
|
|
db 2,0,8,0,12,0,0,12,0,0,0,8,0,12,0,2
|
|
|
|
|
db 2,0,8,0,0,0,8,1,8,0,0,1,8,1,8,2
|
|
|
|
|
db 2,0,8,0,0,8,1,1,1,8,0,0,8,0,8,2
|
|
|
|
|
db 2,0,1,1,1,1,1,1,1,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,16,0,0,0,0,0,8,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,0,0,0,12,0,0,0,0,0,0,16,0,0,2
|
|
|
|
|
db 2,0,8,1,1,1,1,1,1,1,1,1,1,1,0,2
|
|
|
|
|
db 2,0,8,0,0,0,0,0,12,0,0,0,0,0,0,2
|
|
|
|
|
db 2,0,8,0,0,0,0,1,8,1,0,0,0,0,0,2
|
|
|
|
|
db 2,0,8,0,0,0,1,1,8,1,1,0,0,0,0,2
|
|
|
|
|
db 2,0,8,0,12,1,1,1,8,1,1,1,12,0,0,2
|
|
|
|
|
db 2,0,8,0,1,1,12,1,8,1,12,1,1,0,0,2
|
|
|
|
|
db 2,0,0,1,1,1,1,1,8,1,1,1,1,0,0,2 ;3
|
|
|
|
|
db 2,0,1,0,0,0,0,0,8,1,0,0,0,1,0,2
|
|
|
|
|
db 2,0,1,0,1,1,1,1,8,1,1,1,0,1,0,2
|
|
|
|
|
db 2,0,1,1,12,1,12,1,8,1,1,1,0,1,0,2
|
|
|
|
|
db 2,0,1,1,1,1,1,1,8,1,1,1,0,1,0,2
|
|
|
|
|
db 2,0,1,1,12,1,12,1,8,1,1,1,12,1,0,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,8,0,0,0,0,0,0,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,12,0,0,0,0,0,0,0,0,0,16,0,0,2
|
|
|
|
|
db 2,0,1,8,1,1,1,1,1,1,8,1,1,1,8,2
|
|
|
|
|
db 2,0,0,8,0,0,0,0,0,0,8,0,0,0,8,2
|
|
|
|
|
db 2,0,1,1,1,1,1,8,1,1,1,1,1,1,0,2
|
|
|
|
|
db 2,0,0,12,0,0,12,8,0,0,12,0,0,0,0,2
|
|
|
|
|
db 2,12,1,1,1,8,1,1,1,1,8,1,1,1,8,2
|
|
|
|
|
db 2,0,0,0,0,8,0,0,0,0,8,0,0,0,8,2
|
|
|
|
|
db 2,8,1,1,1,1,1,1,8,1,1,1,1,1,0,2 ;4
|
|
|
|
|
db 2,8,0,0,0,12,0,0,8,0,0,12,0,0,0,2
|
|
|
|
|
db 2,0,1,8,1,1,1,1,1,1,1,1,8,1,0,2
|
|
|
|
|
db 2,0,0,8,12,0,0,0,0,12,0,0,8,0,0,2
|
|
|
|
|
db 2,8,1,1,1,1,1,1,8,1,1,1,1,1,8,2
|
|
|
|
|
db 2,8,12,0,0,0,0,0,0,0,0,0,0,12,8,2
|
|
|
|
|
db 2,8,2,4,4,4,4,4,4,4,4,4,4,2,8,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,8,1,8,12,8,1,8,1,8,1,8,1,8,1,2
|
|
|
|
|
db 2,8,2,8,1,8,1,8,1,8,1,8,12,8,12,2
|
|
|
|
|
db 2,8,1,8,1,8,2,8,12,8,1,8,1,8,1,2
|
|
|
|
|
db 2,8,12,8,0,8,0,8,0,8,0,8,0,8,0,2
|
|
|
|
|
db 2,1,8,1,1,1,1,1,8,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,8,0,0,0,0,0,8,0,0,12,0,0,8,2
|
|
|
|
|
db 2,0,8,12,0,2,12,0,8,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,1,1,8,1,1,1,8,0,0,0,0,0,8,2 ;5
|
|
|
|
|
db 2,0,1,0,8,0,0,0,8,0,0,12,0,0,8,2
|
|
|
|
|
db 2,0,1,0,8,0,0,0,8,1,1,1,1,1,8,2
|
|
|
|
|
db 2,0,1,12,8,0,0,2,8,0,0,0,0,0,8,2
|
|
|
|
|
db 2,8,1,1,1,1,8,1,1,1,1,8,1,1,1,2
|
|
|
|
|
db 2,8,0,0,0,0,8,2,0,0,2,8,0,0,0,2
|
|
|
|
|
db 2,0,8,0,12,8,8,2,4,4,2,8,0,0,16,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,8,0,8,0,8,0,8,0,0,8,0,8,16,2
|
|
|
|
|
db 2,1,8,1,8,1,8,1,8,1,1,8,1,8,1,2
|
|
|
|
|
db 2,0,8,0,8,0,8,0,8,8,0,8,0,8,0,2
|
|
|
|
|
db 2,1,1,8,1,1,1,1,1,8,1,1,8,1,1,2
|
|
|
|
|
db 2,0,0,8,8,0,12,8,0,8,8,12,8,8,0,2
|
|
|
|
|
db 2,1,1,1,8,1,1,8,1,1,8,1,1,8,1,2
|
|
|
|
|
db 2,0,8,0,8,0,12,8,0,0,8,0,12,8,0,2 ;6
|
|
|
|
|
db 2,1,8,1,1,1,1,1,8,1,1,1,1,1,1,2
|
|
|
|
|
db 2,0,8,0,12,8,0,0,8,12,0,8,0,0,0,2
|
|
|
|
|
db 2,1,8,1,1,8,1,1,8,1,1,8,1,1,1,2
|
|
|
|
|
db 2,0,0,8,0,8,8,0,8,8,0,8,8,0,0,2
|
|
|
|
|
db 2,1,1,8,1,1,8,1,1,8,1,1,8,1,1,2
|
|
|
|
|
db 2,0,0,8,12,0,8,0,12,8,0,12,8,12,12,2
|
|
|
|
|
db 2,8,8,1,1,1,1,1,1,1,1,1,1,1,1,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,12,0,12,0,12,12,0,12,0,12,0,0,0,2
|
|
|
|
|
db 2,1,1,1,8,1,1,1,1,1,1,8,1,1,1,2
|
|
|
|
|
db 2,0,0,0,8,0,0,12,0,0,0,8,0,0,0,2
|
|
|
|
|
db 2,1,1,1,1,1,1,1,8,1,1,1,1,1,1,2
|
|
|
|
|
db 2,0,0,0,12,0,0,0,8,12,0,0,0,0,0,2
|
|
|
|
|
db 2,1,1,1,8,1,1,1,1,1,1,8,1,1,1,2
|
|
|
|
|
db 2,0,0,0,8,0,0,0,0,0,0,8,0,0,0,2 ; 7
|
|
|
|
|
db 2,1,1,1,1,1,1,1,1,1,1,1,1,8,1,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,0,0,0,0,8,0,2
|
|
|
|
|
db 2,1,1,1,1,1,1,8,1,1,1,1,1,8,1,2
|
|
|
|
|
db 2,0,0,0,0,0,0,8,0,0,0,0,0,8,0,2
|
|
|
|
|
db 2,1,1,8,1,8,1,1,8,1,8,1,1,1,1,2
|
|
|
|
|
db 2,0,0,8,0,8,12,0,8,0,8,12,0,0,16,2
|
|
|
|
|
db 2,8,1,1,1,1,1,1,1,1,1,1,1,1,1,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,0,12,0,0,0,0,0,0,0,0,0,16,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,8,0,8,0,12,0,0,8,0,8,0,0,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,0,8,12,0,0,8,0,0,8,0,0,0,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,0,0,0,0,0,0,0,8,0,0,0,12,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,8,0,0,0,8,12,0,0,8,0,8,12,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,0,8,0,0,0,0,12,8,0,12,8,0,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,0,8,0,8,12,0,0,8,12,0,8,12,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
|
|
|
|
db 2,0,0,16,0,0,0,0,0,16,0,0,0,16,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,8,8,8,8,8,12,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,8,8,8,12,8,8,8,8,8,8,8,8,0,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,12,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,8,8,8,8,8,12,8,8,8,8,8,12,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,8,0,8,8,8,8,8,12,8,0,12,8,8,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,0,8,8,8,8,12,0,0,8,12,0,8,12,0,2
|
|
|
|
|
db 2,8,8,8,8,8,8,8,8,8,8,8,8,8,8,2
|
|
|
|
|
db 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
Bullet: dw 0,0,0,0,0,0
|
|
|
|
|
dw 0,0,0,0,0,0
|
|
|
|
|
dw 0,0,0,0,0,0
|
|
|
|
|
dw 0,0,0,0,0,0
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Enemy: dw 1,448,128,0,0,500 ;<3B>ࠣ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>,<2C>,<2C>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>ਭ<EFBFBD><E0A8AD>,<2C><><EFBFBD>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
dw 0,32,32,0,0,0
|
|
|
|
|
dw 0,64,32,0,0,0
|
|
|
|
|
dw 0,416,32,0,0,0
|
|
|
|
|
dw 0,256,256,0,0,0
|
|
|
|
|
dw 0,256,224,0,0,0
|
|
|
|
|
dw 0,320,192,0,0,0
|
|
|
|
|
dw 0,32,256,0,0,0
|
|
|
|
|
dw 0,448,448,0,0,0
|
|
|
|
|
|
|
|
|
|
;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
|
|
|
|
|
|
if lang eq ru
|
|
|
|
|
title db '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <RU095@YANDEX.RU> z/x <20><>५<EFBFBD><E0A5AB><EFBFBD>',0
|
|
|
|
|
else
|
|
|
|
|
title db 'Dungeon for KolibriOS <RU095@YANDEX.RU> z/x - shoot',0
|
|
|
|
|
endf
|
|
|
|
|
|
|
|
|
|
bullet_bmp:
|
|
|
|
|
file 'bullet.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
level_bmp:
|
|
|
|
|
file 'level2.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
kirpich:
|
|
|
|
|
file 'kirpich.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
kirpich3:
|
|
|
|
|
file 'kirpich2.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
kirpich2:
|
|
|
|
|
file 'oldkirpich.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
lest_bmp:
|
|
|
|
|
file 'lestnica.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
water1_bmp:
|
|
|
|
|
file 'water1.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
water2_bmp:
|
|
|
|
|
file 'water2.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
door1_bmp:
|
|
|
|
|
file 'door1.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
door2_bmp:
|
|
|
|
|
file 'door2.bmp'
|
|
|
|
|
rb 1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
img_level:
|
|
|
|
|
rb 448*448*3+8
|
|
|
|
|
|
|
|
|
|
;img_ded1:
|
|
|
|
|
;rb 448*448*3+8
|
|
|
|
|
|
|
|
|
|
img_area:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_area2:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_area3:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_bullet:
|
|
|
|
|
rb 4*8*3+8
|
|
|
|
|
|
|
|
|
|
img_lestniza:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_water1:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_water2:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_door1:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_door2:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_enemy1:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
img_enemy2:
|
|
|
|
|
rb 32*32*3+8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Music_bah:
|
|
|
|
|
db 0x0f, 0x09, 0
|
|
|
|
|
|
|
|
|
|
Music_mov:
|
|
|
|
|
db 0x00, 0x00, 0
|
|
|
|
|
|
|
|
|
|
Music_almaz:
|
|
|
|
|
db 0x09, 0x03, 0
|
|
|
|
|
|
|
|
|
|
entered rd 1
|
|
|
|
|
|
|
|
|
|
imgcount rd 1 ; <20><><EFBFBD>-<2D><> <20>ᥣ<EFBFBD> <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD>樨
|
|
|
|
|
img_index rd 1 ; <20><><EFBFBD><EFBFBD><EFBFBD> ⥪<>饣<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
;hashtable rd 4096 ; ࠡ<><E0A0A1><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>楤<EFBFBD><E6A5A4><EFBFBD>
|
|
|
|
|
workarea:
|
|
|
|
|
file 'aniall.gif'
|
|
|
|
|
|
|
|
|
|
;temp rb 0x100000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> 䠨<><E4A0A8>
|
|
|
|
|
rb 10
|
|
|
|
|
|
|
|
|
|
canvas:
|
|
|
|
|
xs dd 512
|
|
|
|
|
ys dd 512
|
|
|
|
|
rb 512*512*3
|
|
|
|
|
|
|
|
|
|
gif_hash_area:
|
|
|
|
|
rd 4096+1
|
|
|
|
|
|
|
|
|
|
coords:
|
|
|
|
|
rd 2
|
|
|
|
|
|
|
|
|
|
Image:
|