[Reverse-engineering] [th04/th05] Midboss HP

Funded by -Tom-.
This commit is contained in:
nmlgc 2018-12-09 01:09:17 +01:00
parent 9fd3f6dbf6
commit f3b6137fe2
2 changed files with 89 additions and 89 deletions

View File

@ -18857,8 +18857,8 @@ loc_1422D:
call sub_13FB2
or si, si
jz short loc_142E4
sub word_26702, si
cmp word_26702, 0
sub _midboss_hp, si
cmp _midboss_hp, 0
jle short loc_142A2
mov byte_26708, 1
push 4
@ -18888,8 +18888,8 @@ loc_142E1:
call sub_1A047
loc_142E4:
push word_26702
push 26Ch
push _midboss_hp
push 620
call sub_19F16
pop si
pop bp
@ -19234,8 +19234,8 @@ loc_14606:
mov si, ax
or si, si
jz short loc_1468D
sub word_26702, si
cmp word_26702, 0
sub _midboss_hp, si
cmp _midboss_hp, 0
jle short loc_14629
mov byte_26708, 1
jmp short loc_1468D
@ -19275,8 +19275,8 @@ loc_1468A:
call sub_1A047
loc_1468D:
push word_26702
push 352h
push _midboss_hp
push 850
call sub_19F16
pop si
leave
@ -19305,7 +19305,7 @@ sub_146AF proc near
mov ax, _midboss_pos.cur.y
mov _midboss_pos.prev.y, ax
push (192 shl 4)
push word_26702
push _midboss_hp
mov al, byte_26709
mov ah, 0
add ax, ax
@ -19314,7 +19314,7 @@ sub_146AF proc near
call vector1_at
mov _midboss_pos.cur.x, ax
push (96 shl 4)
push word_26702
push _midboss_hp
mov al, byte_26709
mov ah, 0
add ax, ax
@ -19363,7 +19363,7 @@ loc_1473F:
loc_14749:
push (96 shl 4)
push word_26702
push _midboss_hp
mov al, byte_26709
mov ah, 0
add ax, ax
@ -19619,9 +19619,9 @@ sub_1494C proc far
loc_14975:
call sub_146AF
inc word_26706
cmp word_26702, 80h
cmp _midboss_hp, 128
jle short loc_14989
sub word_26702, 20h ; ' '
sub _midboss_hp, 32
loc_14989:
cmp word_26706, 80h
@ -19637,9 +19637,9 @@ loc_1498F:
loc_149A3:
call sub_146AF
inc word_26706
cmp word_26702, 380h
cmp _midboss_hp, 896
jge short loc_149B7
add word_26702, 8
add _midboss_hp, 8
loc_149B7:
cmp word_26706, 80h
@ -19653,9 +19653,9 @@ loc_149B7:
loc_149D0:
call sub_146AF
inc word_26706
cmp word_26702, 80h
cmp _midboss_hp, 128
jle short loc_149E4
sub word_26702, 20h ; ' '
sub _midboss_hp, 32
loc_149E4:
cmp word_26706, 80h
@ -19676,9 +19676,9 @@ loc_149FD:
loc_14A0A:
call sub_14700
call sub_147DB
cmp word_26702, 300h
cmp _midboss_hp, 768
jge short loc_14A1D
add word_26702, 8
add _midboss_hp, 8
loc_14A1D:
inc word_26706
@ -20212,8 +20212,8 @@ loc_14E8E:
mov si, ax
or si, si
jz loc_14F57
sub word_26702, si
cmp word_26702, 0
sub _midboss_hp, si
cmp _midboss_hp, 0
jle short loc_14EB5
mov byte_26708, 1
push 4
@ -20261,7 +20261,7 @@ loc_14F16:
cmp _midboss_pos.cur.y, 0
jg short loc_14F38
inc byte_26705
mov word_26702, 0
mov _midboss_hp, 0
loc_14F38:
cmp frame_mod16, 0
@ -20277,8 +20277,8 @@ loc_14F52:
nopcall sub_19EBC
loc_14F57:
push word_26702
push 2EEh
push _midboss_hp
push 750
call sub_19F16
pop si
leave
@ -20814,8 +20814,8 @@ loc_153EE:
mov si, ax
or si, si
jz loc_1552D
sub word_26702, si
cmp word_26702, 0
sub _midboss_hp, si
cmp _midboss_hp, 0
jle short loc_15414
mov byte_26708, 1
jmp loc_1552D
@ -20881,7 +20881,7 @@ loc_15490:
cmp byte_26704, 0Ch
jb short loc_1552D
inc byte_26705
mov word_26702, 0
mov _midboss_hp, 0
jmp short loc_1552D
; ---------------------------------------------------------------------------
@ -20898,15 +20898,15 @@ loc_154D1:
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, (-4 shl 4)
mov _midboss_pos.velocity.y, (2 shl 4)
mov word_26702, 4B0h
mov _midboss_hp, 1200
mov byte_26704, 0
mov word_26706, 0
jmp short loc_15537
; ---------------------------------------------------------------------------
loc_1552D:
push word_26702
push 4B0h
push _midboss_hp
push 1200
call sub_19F16
loc_15537:
@ -29548,7 +29548,7 @@ sub_19EBC proc far
mov fp_259FA, offset nullsub_1
setfarfp farfp_259F6, nullsub_2
mov byte_259F2, 0
mov word_26702, 0
mov _midboss_hp, 0
pop bp
retf
sub_19EBC endp
@ -37713,7 +37713,7 @@ sub_1DFEF proc far
mov _midboss_pos.prev.y, (368 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, (1 shl 4)
mov word_26702, 320h
mov _midboss_hp, 800
call sub_1DF61
mov _boss_pos.cur.x, (192 shl 4)
mov _boss_pos.prev.x, (192 shl 4)
@ -37758,7 +37758,7 @@ sub_1E0B3 proc far
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, (1 shl 4)
mov word_26702, 2EEh
mov _midboss_hp, 750
mov byte_26704, 0
call sub_1DF61
mov _boss_pos.cur.x, (192 shl 4)
@ -37806,7 +37806,7 @@ sub_1E186 proc far
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, (4 shl 4)
mov word_26702, 352h
mov _midboss_hp, 850
mov byte_26704, 0
call sub_1DF61
mov _boss_pos.cur.x, (192 shl 4)
@ -37850,7 +37850,7 @@ sub_1E245 proc far
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, (4 shl 4)
mov _midboss_pos.velocity.y, (2 shl 4)
mov word_26702, 4B0h
mov _midboss_hp, 1200
mov byte_26704, 0
call sub_1DF61
mov _boss_pos.cur.x, (192 shl 4)
@ -38028,7 +38028,7 @@ sub_1E518 proc far
mov _midboss_pos.prev.y, (256 shl 4)
mov _midboss_pos.velocity.x, (4 shl 4)
mov _midboss_pos.velocity.y, (-4 shl 4)
mov word_26702, 1000h
mov _midboss_hp, 4096
mov byte_26704, 0
mov byte_26709, 60h
call sub_1DF61
@ -46899,7 +46899,7 @@ byte_266F2 db ?
db ?
_midboss_pos motion_t <?>
frames_until_midboss dw ?
word_26702 dw ?
_midboss_hp dw ?
byte_26704 db ?
byte_26705 db ?
word_26706 dw ?

View File

@ -20182,7 +20182,7 @@ sub_14544 proc near
mov _midboss_pos.prev.y, (96 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, 0
mov midboss_cur_hp, 1000
mov _midboss_hp, 1000
mov midboss_cur_image, 200
call sub_144CB
mov _boss_pos.cur.x, (192 shl 4)
@ -20229,7 +20229,7 @@ sub_14613 proc near
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, 8
mov midboss_cur_hp, 578h
mov _midboss_hp, 1400
mov midboss_cur_image, 0CAh
call sub_144CB
mov _boss_pos.cur.x, (192 shl 4)
@ -20273,7 +20273,7 @@ sub_146D0 proc near
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, 8
mov midboss_cur_hp, 578h
mov _midboss_hp, 1400
mov midboss_cur_image, 0D0h
call sub_144CB
mov _boss_pos.cur.x, (192 shl 4)
@ -20320,7 +20320,7 @@ sub_1479F proc near
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, 8
mov midboss_cur_hp, 44Ch
mov _midboss_hp, 1100
mov midboss_cur_image, 0D0h
call sub_144CB
mov _boss_pos.cur.x, (96 shl 4)
@ -20369,7 +20369,7 @@ sub_14879 proc near
mov _midboss_pos.prev.y, (-32 shl 4)
mov _midboss_pos.velocity.x, 0
mov _midboss_pos.velocity.y, 8
mov midboss_cur_hp, 60Eh
mov _midboss_hp, 1550
mov midboss_cur_image, 0D4h
call sub_144CB
mov _boss_pos.cur.x, (96 shl 4)
@ -20458,7 +20458,7 @@ sub_14A06 proc near
mov _midboss_pos.cur.y, (-16 shl 4)
mov _midboss_pos.prev.y, (-16 shl 4)
mov byte_26335, 40h
mov midboss_cur_hp, 0BB8h
mov _midboss_hp, 3000
mov midboss_cur_image, 0DCh
call sub_144CB
mov _boss_pos.cur.x, (192 shl 4)
@ -24925,7 +24925,7 @@ sub_172FF proc far
mov fp_2C98E, offset nullsub_2
mov fp_2C994, offset nullsub_2
setfarfp farfp_2C990, nullsub_1
mov midboss_cur_hp, 0
mov _midboss_hp, 0
pop bp
retf
sub_172FF endp
@ -26663,7 +26663,7 @@ sub_18017 proc near
mov bp, sp
push si
mov si, 10h
cmp midboss_cur_hp, 0C8h
cmp _midboss_hp, 200
jg short loc_18029
mov si, 0Ch
@ -26765,9 +26765,9 @@ loc_1812B:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
mov ax, 3E8h
sub ax, midboss_cur_hp
sub _midboss_hp, ax
mov ax, 1000
sub ax, _midboss_hp
cwde
shl eax, 6
shl eax, 4
@ -26778,7 +26778,7 @@ loc_1812B:
call sub_17FC6
cmp word_26332, 5DCh
jge short loc_1818B
cmp midboss_cur_hp, 0
cmp _midboss_hp, 0
jg short loc_181C4
mov byte_2C978, 1
push 5
@ -26802,16 +26802,16 @@ loc_1818B:
loc_181B5:
call sub_17486
push midboss_cur_hp
push 3E8h
push _midboss_hp
push 1000
call sub_17354
pop bp
retf
; ---------------------------------------------------------------------------
loc_181C4:
push midboss_cur_hp
push 3E8h
push _midboss_hp
push 1000
call sub_17354
mov ax, _midboss_pos.cur.x
mov word ptr dword_2C922, ax
@ -27709,14 +27709,14 @@ sub_18987 proc near
mov byte ptr word_25FFA+1, 0
mov byte_26000, 0Dh
mov byte ptr dword_26002, 3
cmp midboss_cur_hp, 258h
cmp _midboss_hp, 600
jg short loc_189DB
mov byte ptr dword_26002, 6
jmp short loc_189E8
; ---------------------------------------------------------------------------
loc_189DB:
cmp midboss_cur_hp, 320h
cmp _midboss_hp, 800
jg short loc_189E8
mov byte ptr dword_26002, 4
@ -27807,10 +27807,10 @@ loc_18A9F:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
sub _midboss_hp, ax
cmp word_26332, 3E8h
jge short loc_18ADC
cmp midboss_cur_hp, 190h
cmp _midboss_hp, 400
jg loc_18BA0
push 5
call sub_173AC
@ -27849,10 +27849,10 @@ loc_18B24:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
sub _midboss_hp, ax
cmp word_26332, 320h
jge short loc_18B67
cmp midboss_cur_hp, 0
cmp _midboss_hp, 0
jg short loc_18BA0
mov byte_2C978, 1
push 0Fh
@ -27876,16 +27876,16 @@ loc_18B67:
loc_18B91:
call sub_17486
push midboss_cur_hp
push 578h
push _midboss_hp
push 1400
call sub_17354
pop bp
retf
; ---------------------------------------------------------------------------
loc_18BA0:
push midboss_cur_hp
push 578h
push _midboss_hp
push 1400
call sub_17354
mov ax, _midboss_pos.cur.x
mov word ptr dword_2C922, ax
@ -29089,10 +29089,10 @@ loc_195A1:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
sub _midboss_hp, ax
loc_195BC:
cmp midboss_cur_hp, 0
cmp _midboss_hp, 0
jg short loc_19613
mov byte_2C978, 1
push 0Fh
@ -29116,16 +29116,16 @@ loc_195DA:
loc_19604:
call sub_17486
push midboss_cur_hp
push 578h
push _midboss_hp
push 1400
call sub_17354
pop bp
retf
; ---------------------------------------------------------------------------
loc_19613:
push midboss_cur_hp
push 578h
push _midboss_hp
push 1400
call sub_17354
mov ax, _midboss_pos.cur.x
mov word ptr dword_2C922, ax
@ -32447,10 +32447,10 @@ loc_1B32F:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
sub _midboss_hp, ax
loc_1B34A:
cmp midboss_cur_hp, 0
cmp _midboss_hp, 0
jg short loc_1B3A1
mov byte_2C978, 1
push 0Fh
@ -32474,16 +32474,16 @@ loc_1B368:
loc_1B392:
call sub_17486
push midboss_cur_hp
push 44Ch
push _midboss_hp
push 1100
call sub_17354
pop bp
retf
; ---------------------------------------------------------------------------
loc_1B3A1:
push midboss_cur_hp
push 44Ch
push _midboss_hp
push 1100
call sub_17354
mov ax, _midboss_pos.cur.x
mov word ptr dword_2C922, ax
@ -38132,7 +38132,7 @@ loc_1E776:
jz short loc_1E7F2
cmp byte_2D082, 0
jnz short loc_1E7AF
cmp midboss_cur_hp, 3E8h
cmp _midboss_hp, 1000
jge short loc_1E7AF
push 0Ah
call sub_173AC
@ -38176,10 +38176,10 @@ loc_1E7F2:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
sub _midboss_hp, ax
cmp byte_2D084, 14h
jnb short loc_1E82B
cmp midboss_cur_hp, 0
cmp _midboss_hp, 0
jg short loc_1E864
mov byte_2C978, 1
push 1Eh
@ -38203,16 +38203,16 @@ loc_1E82B:
loc_1E855:
call sub_17486
push midboss_cur_hp
push 0BB8h
push _midboss_hp
push 3000
call sub_17354
pop bp
retf
; ---------------------------------------------------------------------------
loc_1E864:
push midboss_cur_hp
push 0BB8h
push _midboss_hp
push 3000
call sub_17354
mov ax, _midboss_pos.cur.x
mov word ptr dword_2C922, ax
@ -40148,8 +40148,8 @@ loc_1F936:
call sub_1FA9D
mov byte_26334, al
mov ah, 0
sub midboss_cur_hp, ax
cmp midboss_cur_hp, 0
sub _midboss_hp, ax
cmp _midboss_hp, 0
jg short loc_1F9A1
mov byte_2C978, 1
push 1Eh
@ -40173,16 +40173,16 @@ loc_1F968:
loc_1F992:
call sub_17486
push midboss_cur_hp
push 60Eh
push _midboss_hp
push 1550
call sub_17354
pop bp
retf
; ---------------------------------------------------------------------------
loc_1F9A1:
push midboss_cur_hp
push 60Eh
push _midboss_hp
push 1550
call sub_17354
mov ax, _midboss_pos.cur.x
mov word ptr dword_2C922, ax
@ -46162,7 +46162,7 @@ word_2631A dw ?
dd ?
_midboss_pos motion_t <?>
frames_until_midboss dw ?
midboss_cur_hp dw ?
_midboss_hp dw ?
midboss_cur_image db ?
byte_26331 db ?
word_26332 dw ?