mirror of
https://github.com/pret/pokered.git
synced 2024-10-24 23:37:09 +00:00
89 lines
1.5 KiB
NASM
Executable file
89 lines
1.5 KiB
NASM
Executable file
AnimCut:
|
|
ld a, [wCutTile]
|
|
cp $52
|
|
jr z, .grass
|
|
ld c, $8
|
|
.cutTreeLoop
|
|
push bc
|
|
ld hl, wOAMBuffer + $91
|
|
ld a, 1
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 2
|
|
call AdjustOAMBlockXPos2
|
|
ld hl, wOAMBuffer + $99
|
|
ld a, -1
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 2
|
|
call AdjustOAMBlockXPos2
|
|
ld a, [rOBP1]
|
|
xor $64
|
|
ld [rOBP1], a
|
|
call DelayFrame
|
|
pop bc
|
|
dec c
|
|
jr nz, .cutTreeLoop
|
|
ret
|
|
.grass
|
|
ld c, 2
|
|
.cutGrassLoop
|
|
push bc
|
|
ld c, $8
|
|
call AnimCutGrass_UpdateOAMEntries
|
|
call AnimCutGrass_SwapOAMEntries
|
|
ld c, $8
|
|
call AnimCutGrass_UpdateOAMEntries
|
|
call AnimCutGrass_SwapOAMEntries
|
|
ld hl, wOAMBuffer + $90
|
|
ld a, 2
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 4
|
|
call AdjustOAMBlockYPos2
|
|
pop bc
|
|
dec c
|
|
jr nz, .cutGrassLoop
|
|
ret
|
|
|
|
AnimCutGrass_UpdateOAMEntries:
|
|
push bc
|
|
ld hl, wOAMBuffer + $91
|
|
ld a, 1
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 1
|
|
call AdjustOAMBlockXPos2
|
|
ld hl, wOAMBuffer + $95
|
|
ld a, 2
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 1
|
|
call AdjustOAMBlockXPos2
|
|
ld hl, wOAMBuffer + $99
|
|
ld a, -2
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 1
|
|
call AdjustOAMBlockXPos2
|
|
ld hl, wOAMBuffer + $9d
|
|
ld a, -1
|
|
ld [wCoordAdjustmentAmount], a
|
|
ld c, 1
|
|
call AdjustOAMBlockXPos2
|
|
ld a, [rOBP1]
|
|
xor $64
|
|
ld [rOBP1], a
|
|
call DelayFrame
|
|
pop bc
|
|
dec c
|
|
jr nz, AnimCutGrass_UpdateOAMEntries
|
|
ret
|
|
|
|
AnimCutGrass_SwapOAMEntries:
|
|
ld hl, wOAMBuffer + $90
|
|
ld de, wBuffer
|
|
ld bc, $8
|
|
call CopyData
|
|
ld hl, wOAMBuffer + $98
|
|
ld de, wOAMBuffer + $90
|
|
ld bc, $8
|
|
call CopyData
|
|
ld hl, wBuffer
|
|
ld de, wOAMBuffer + $98
|
|
ld bc, $8
|
|
jp CopyData
|