2023-03-19 22:49:22 +00:00
|
|
|
B6BF_FREE = 0
|
|
|
|
B6BF_CLOUD = 1
|
|
|
|
|
2022-04-01 16:44:50 +00:00
|
|
|
public @SHINKI_CUSTOMBULLETS_RENDER$QV
|
|
|
|
@shinki_custombullets_render$qv proc near
|
2020-02-28 21:40:34 +00:00
|
|
|
push bp
|
|
|
|
mov bp, sp
|
|
|
|
push si
|
|
|
|
push di
|
|
|
|
mov si, offset b6balls
|
|
|
|
mov di, 1
|
|
|
|
jmp short @@more?
|
|
|
|
; ---------------------------------------------------------------------------
|
|
|
|
|
|
|
|
@@loop:
|
2023-03-19 22:49:22 +00:00
|
|
|
cmp [si+b6ball_t.flag], B6BF_FREE
|
2020-02-28 21:40:34 +00:00
|
|
|
jz short @@next
|
2023-03-19 22:49:22 +00:00
|
|
|
cmp [si+b6ball_t.flag], B6BF_CLOUD
|
2020-02-28 21:40:34 +00:00
|
|
|
jnz short @@no_cloud
|
2022-11-09 13:25:27 +00:00
|
|
|
mov ah, V_WHITE
|
2022-04-24 18:01:47 +00:00
|
|
|
call @grcg_setcolor_direct_raw$qv
|
2020-02-28 21:40:34 +00:00
|
|
|
mov ax, [si+b6ball_t.pos.cur.x]
|
|
|
|
sar ax, 4
|
2020-08-25 18:29:24 +00:00
|
|
|
add ax, PLAYFIELD_LEFT
|
2020-02-28 21:40:34 +00:00
|
|
|
push ax
|
|
|
|
mov ax, [si+b6ball_t.pos.cur.y]
|
|
|
|
sar ax, 4
|
2020-08-25 18:29:24 +00:00
|
|
|
add ax, PLAYFIELD_TOP
|
2020-02-28 21:40:34 +00:00
|
|
|
push ax
|
|
|
|
mov ax, [si+b6ball_t.cloud_radius]
|
|
|
|
mov bx, 16
|
|
|
|
cwd
|
|
|
|
idiv bx
|
|
|
|
push ax
|
|
|
|
call grcg_circlefill
|
|
|
|
jmp short @@next
|
|
|
|
; ---------------------------------------------------------------------------
|
|
|
|
|
|
|
|
@@no_cloud:
|
|
|
|
mov ax, GRAM_400
|
|
|
|
mov es, ax
|
|
|
|
mov ax, [si+b6ball_t.pos.cur.y]
|
|
|
|
sar ax, 4
|
|
|
|
mov dx, ax
|
|
|
|
mov ax, [si+b6ball_t.pos.cur.x]
|
|
|
|
sar ax, 4
|
2020-08-25 18:29:24 +00:00
|
|
|
add ax, (PLAYFIELD_LEFT - (B6BALL_W / 2))
|
2020-02-28 21:40:34 +00:00
|
|
|
or dx, dx
|
|
|
|
jl short @@next
|
|
|
|
call z_super_roll_put_tiny_32x32_raw pascal, [si+b6ball_t.B6B_patnum_tiny]
|
|
|
|
|
|
|
|
@@next:
|
|
|
|
inc di
|
|
|
|
add si, size b6ball_t
|
|
|
|
|
|
|
|
@@more?:
|
|
|
|
cmp di, 1 + B6BALL_COUNT
|
|
|
|
jl short @@loop
|
2022-04-01 16:44:50 +00:00
|
|
|
call cheetos_render
|
2020-02-28 21:40:34 +00:00
|
|
|
pop di
|
|
|
|
pop si
|
|
|
|
pop bp
|
|
|
|
retn
|
2022-04-01 16:44:50 +00:00
|
|
|
@shinki_custombullets_render$qv endp
|