wOAMBuffer -> wShadowOAM (#370)

This commit is contained in:
Colton G. Rushton 2022-07-09 18:18:18 -03:00 committed by GitHub
parent b045ac4f16
commit cc46b0e510
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
29 changed files with 105 additions and 105 deletions

View file

@ -17,7 +17,7 @@ DEF HP_BAR_GREEN EQU 0
DEF HP_BAR_YELLOW EQU 1
DEF HP_BAR_RED EQU 2
; wOAMBuffer
; wShadowOAM
DEF NUM_SPRITE_OAM_STRUCTS EQU 40
; hAutoBGTransferEnabled

View file

@ -147,7 +147,7 @@ DrawFrameBlock:
jr z, .resetFrameBlockDestAddr
call AnimationCleanOAM
.resetFrameBlockDestAddr
ld hl, wOAMBuffer ; OAM buffer
ld hl, wShadowOAM
ld a, l
ld [wFBDestAddr + 1], a
ld a, h
@ -583,7 +583,7 @@ PlaySubanimation:
call GetMoveSound
call PlaySound
.skipPlayingSound
ld hl, wOAMBuffer ; base address of OAM buffer
ld hl, wShadowOAM
ld a, l
ld [wFBDestAddr + 1], a
ld a, h
@ -855,7 +855,7 @@ TradeShakePokeball:
; if it's the end of the animation, make the ball jump up
ld de, BallMoveDistances1
.loop
ld hl, wOAMBuffer ; OAM buffer
ld hl, wShadowOAM
ld bc, 4
.innerLoop
ld a, [de]
@ -885,7 +885,7 @@ BallMoveDistances1:
TradeJumpPokeball:
ld de, BallMoveDistances2
.loop
ld hl, wOAMBuffer ; OAM buffer
ld hl, wShadowOAM
ld bc, 4
.innerLoop
ld a, [de]
@ -925,8 +925,8 @@ BallMoveDistances2:
; this function copies the current musical note graphic
; so that there are two musical notes flying towards the defending pokemon
DoGrowlSpecialEffects:
ld hl, wOAMBuffer ; OAM buffer
ld de, wOAMBuffer + $10
ld hl, wShadowOAM
ld de, wShadowOAMSprite04
ld bc, $10
call CopyData ; copy the musical note graphic
ld a, [wSubAnimCounter]
@ -1136,7 +1136,7 @@ AnimationWaterDropletsEverywhere:
ret
_AnimationWaterDroplets:
ld hl, wOAMBuffer
ld hl, wShadowOAM
.loop
ld a, [wBaseCoordY]
ld [hli], a ; Y
@ -1264,7 +1264,7 @@ ShakeEnemyHUD_WritePlayerMonPicOAM:
ld [wBaseCoordX], a
ld a, $30
ld [wBaseCoordY], a
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld d, 0
ld c, 7
.loop
@ -1498,7 +1498,7 @@ AnimationSpiralBallsInward:
.loop
push hl
ld c, 3
ld de, wOAMBuffer
ld de, wShadowOAM
.innerLoop
ld a, [hl]
cp $ff
@ -1637,7 +1637,7 @@ _AnimationShootBallsUpward:
call LoadAnimationTileset
pop bc
ld d, $7a ; ball tile
ld hl, wOAMBuffer
ld hl, wShadowOAM
push bc
ld a, [wBaseCoordY]
ld e, a
@ -1651,7 +1651,7 @@ _AnimationShootBallsUpward:
ld [wNumShootingBalls], a
.loop
push bc
ld hl, wOAMBuffer
ld hl, wShadowOAM
.innerLoop
ld a, [wBaseCoordY]
add 8
@ -2080,7 +2080,7 @@ InitMultipleObjectsOAM:
xor a
ld e, a
ld [wBaseCoordX], a
ld hl, wOAMBuffer
ld hl, wShadowOAM
.loop
call BattleAnimWriteOAMEntry
dec c
@ -2336,7 +2336,7 @@ AnimationFallingObjects:
call InitMultipleObjectsOAM
call FallingObjects_InitXCoords
call FallingObjects_InitMovementData
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld [hl], 0
.loop
ld hl, wFallingObjectsMovementData
@ -2363,7 +2363,7 @@ AnimationFallingObjects:
dec c
jr nz, .innerLoop
call Delay3
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld a, [hl] ; Y
cp 104 ; has the top falling object reached 104 yet?
jr nz, .loop ; keep moving the falling objects down until it does
@ -2372,7 +2372,7 @@ AnimationFallingObjects:
FallingObjects_UpdateOAMEntry:
; Increases Y by 2 pixels and adjusts X and X flip based on the falling object's
; movement byte.
ld hl, wOAMBuffer
ld hl, wShadowOAM
add hl, de
ld a, [hl]
inc a
@ -2433,7 +2433,7 @@ FallingObjects_UpdateMovementByte:
ret
FallingObjects_InitXCoords:
ld hl, wOAMBuffer + $01
ld hl, wShadowOAMSprite00XCoord
ld de, FallingObjects_InitialXCoords
ld a, [wNumFallingObjects]
ld c, a

View file

@ -26,7 +26,7 @@ BattleTransition:
jr nz, .loop1
; Clear OAM except for the blocks used by the player and enemy trainer sprites.
ld hl, wOAMBuffer + $10
ld hl, wShadowOAMSprite04
ld c, 9
.loop2
ld a, b

View file

@ -105,7 +105,7 @@ SlidePlayerAndEnemySilhouettesOnScreen:
; instead, the enemy pic is part of the background and uses the scroll register, while the player's head is a sprite and is slid by changing its X coordinates in a loop
SlidePlayerHeadLeft:
push bc
ld hl, wOAMBuffer + $01
ld hl, wShadowOAMSprite00XCoord
ld c, $15 ; number of OAM entries
ld de, $4 ; size of OAM entry
.loop
@ -6327,7 +6327,7 @@ LoadPlayerBackPic:
ASSERT BANK(RedPicBack) == BANK(OldManPicBack)
call UncompressSpriteFromDE
predef ScaleSpriteByTwo
ld hl, wOAMBuffer
ld hl, wShadowOAM
xor a
ldh [hOAMTile], a ; initial tile number
ld b, $7 ; 7 columns

View file

@ -27,7 +27,7 @@ SetupOwnPartyPokeballs:
ld [hl], a
ld a, 8
ld [wHUDPokeballGfxOffsetX], a
ld hl, wOAMBuffer
ld hl, wShadowOAM
jp WritePokeballOAMData
SetupEnemyPartyPokeballs:
@ -41,7 +41,7 @@ SetupEnemyPartyPokeballs:
ld [hl], $20
ld a, -8
ld [wHUDPokeballGfxOffsetX], a
ld hl, wOAMBuffer + PARTY_LENGTH * 4
ld hl, wShadowOAMSprite06
jp WritePokeballOAMData
SetupPokeballs:
@ -174,7 +174,7 @@ SetupPlayerAndEnemyPokeballs:
ld [hl], $40
ld a, 8
ld [wHUDPokeballGfxOffsetX], a
ld hl, wOAMBuffer
ld hl, wShadowOAM
call WritePokeballOAMData
ld hl, wEnemyMons
ld de, wEnemyPartyCount
@ -183,7 +183,7 @@ SetupPlayerAndEnemyPokeballs:
ld a, $50
ld [hli], a
ld [hl], $68
ld hl, wOAMBuffer + $18
ld hl, wShadowOAMSprite06
jp WritePokeballOAMData
; four tiles: pokeball, black pokeball (status ailment), crossed out pokeball (fainted) and pokeball slot (no mon)

View file

@ -58,7 +58,7 @@ CopyMonPicFromBGToSpriteVRAM:
ld [wBaseCoordY], a
ld a, $70
ld [wBaseCoordX], a
ld hl, wOAMBuffer
ld hl, wShadowOAM
lb bc, 6, 6
ld d, $8
.oamLoop

View file

@ -42,7 +42,7 @@ DisplayDiploma::
; Move the player 33 pixels right and set the priority bit so he appears
; behind the background layer.
ld hl, wOAMBuffer + $01
ld hl, wShadowOAMSprite00XCoord
lb bc, $80, $28
.adjustPlayerGfxLoop
ld a, [hl] ; X

View file

@ -43,7 +43,7 @@ GetAnimationSpeed:
.resetSprites
push bc
ld hl, wMonPartySpritesSavedOAM
ld de, wOAMBuffer
ld de, wShadowOAM
ld bc, $60
call CopyData
pop bc
@ -51,7 +51,7 @@ GetAnimationSpeed:
jr .incTimer
.animateSprite
push bc
ld hl, wOAMBuffer + $02 ; OAM tile id
ld hl, wShadowOAMSprite00TileID
ld bc, $10
ld a, [wCurrentMenuItem]
call AddNTimes
@ -236,7 +236,7 @@ WriteMonPartySpriteOAM:
; make a copy at wMonPartySpritesSavedOAM.
push af
ld c, $10
ld h, HIGH(wOAMBuffer)
ld h, HIGH(wShadowOAM)
ldh a, [hPartyMonIndex]
swap a
ld l, a
@ -252,7 +252,7 @@ WriteMonPartySpriteOAM:
; Make a copy of the OAM buffer with the first animation frame written so that
; we can flip back to it from the second frame by copying it back.
.makeCopy
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld de, wMonPartySpritesSavedOAM
ld bc, $60
jp CopyData

View file

@ -16,7 +16,7 @@ DMARoutine:
LOAD "OAM DMA", HRAM
hDMARoutine::
; initiate DMA
ld a, HIGH(wOAMBuffer)
ld a, HIGH(wShadowOAM)
ldh [rDMA], a
; wait for DMA to finish
ld a, $28

View file

@ -1,6 +1,6 @@
PrepareOAMData::
; Determine OAM data for currently visible
; sprites and write it to wOAMBuffer.
; sprites and write it to wShadowOAM.
ld a, [wUpdateSpritesEnabled]
dec a
@ -79,7 +79,7 @@ PrepareOAMData::
ldh a, [hOAMBufferOffset]
ld e, a
ld d, HIGH(wOAMBuffer)
ld d, HIGH(wShadowOAM)
.tileLoop
ldh a, [hSpriteScreenY] ; temp for sprite Y position
@ -147,7 +147,7 @@ PrepareOAMData::
; Clear unused OAM.
ldh a, [hOAMBufferOffset]
ld l, a
ld h, HIGH(wOAMBuffer)
ld h, HIGH(wShadowOAM)
ld de, $4
ld b, $a0
ld a, [wd736]

View file

@ -1175,7 +1175,7 @@ ItemUseMedicine:
xor a
ld [wBattleMonStatus], a ; remove the status ailment in the in-battle pokemon data
.calculateHPBarCoords
ld hl, wOAMBuffer + $90
ld hl, wShadowOAMSprite36
ld bc, 2 * SCREEN_WIDTH
inc d
.calculateHPBarCoordsLoop

View file

@ -16,7 +16,7 @@ DisplayTownMap:
hlcoord 1, 0
ld de, wcd6d
call PlaceString
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld de, wTileMapBackup
ld bc, $10
call CopyData
@ -47,7 +47,7 @@ DisplayTownMap:
call TownMapCoordsToOAMCoords
ld a, $4
ld [wOAMBaseTile], a
ld hl, wOAMBuffer + $10
ld hl, wShadowOAMSprite04
call WriteTownMapSpriteOAM ; town map cursor sprite
pop hl
ld de, wcd6d
@ -60,7 +60,7 @@ DisplayTownMap:
hlcoord 1, 0
ld de, wcd6d
call PlaceString
ld hl, wOAMBuffer + $10
ld hl, wShadowOAMSprite04
ld de, wTileMapBackup + 16
ld bc, $10
call CopyData
@ -362,7 +362,7 @@ DrawPlayerOrBirdSprite:
inc de
cp "@"
jr nz, .loop
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld de, wTileMapBackup
ld bc, $a0
jp CopyData
@ -370,7 +370,7 @@ DrawPlayerOrBirdSprite:
DisplayWildLocations:
farcall FindWildLocationsOfMon
call ZeroOutDuplicatesInList
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld de, wTownMapCoords
.loop
ld a, [de]
@ -410,7 +410,7 @@ DisplayWildLocations:
ld b, $0
call DrawPlayerOrBirdSprite
.done
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld de, wTileMapBackup
ld bc, $a0
jp CopyData
@ -439,9 +439,9 @@ TownMapCoordsToOAMCoords:
WritePlayerOrBirdSpriteOAM:
ld a, [wOAMBaseTile]
and a
ld hl, wOAMBuffer + $90 ; for player sprite
ld hl, wShadowOAMSprite36 ; for player sprite
jr z, WriteTownMapSpriteOAM
ld hl, wOAMBuffer + $80 ; for bird sprite
ld hl, wShadowOAMSprite32 ; for bird sprite
WriteTownMapSpriteOAM:
push hl
@ -600,13 +600,13 @@ TownMapSpriteBlinkingAnimation::
jr nz, .done
; show sprites when the counter reaches 50
ld hl, wTileMapBackup
ld de, wOAMBuffer
ld de, wShadowOAM
ld bc, $90
call CopyData
xor a
jr .done
.hideSprites
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld b, $24
ld de, $4
.hideSpritesLoop

View file

@ -677,7 +677,7 @@ SwitchPartyMon_ClearGfx:
dec c
jr nz, .clearMonBGLoop
pop af
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld bc, $10
call AddNTimes
ld de, $4

View file

@ -158,7 +158,7 @@ AnimateIntroNidorino:
jr AnimateIntroNidorino
UpdateIntroNidorinoOAM:
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld a, [wIntroNidorinoBaseTile]
ld d, a
.loop
@ -177,7 +177,7 @@ UpdateIntroNidorinoOAM:
ret
InitIntroNidorinoOAM:
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld d, 0
.loop
push bc

View file

@ -16,11 +16,11 @@ LoadShootingStarGraphics:
lb bc, BANK(FallingStar), (FallingStarEnd - FallingStar) / $10
call CopyVideoData
ld hl, GameFreakLogoOAMData
ld de, wOAMBuffer + $60
ld de, wShadowOAMSprite24
ld bc, GameFreakLogoOAMDataEnd - GameFreakLogoOAMData
call CopyData
ld hl, GameFreakShootingStarOAMData
ld de, wOAMBuffer
ld de, wShadowOAM
ld bc, GameFreakShootingStarOAMDataEnd - GameFreakShootingStarOAMData
jp CopyData
@ -30,7 +30,7 @@ AnimateShootingStar:
call PlaySound
; Move the big star down and left across the screen.
ld hl, wOAMBuffer
ld hl, wShadowOAM
lb bc, $a0, $4
.bigStarLoop
push hl
@ -60,7 +60,7 @@ AnimateShootingStar:
jr nz, .bigStarLoop
; Clear big star OAM.
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld c, 4
ld de, 4
.clearOAMLoop
@ -83,7 +83,7 @@ AnimateShootingStar:
; Copy 24 instances of the small stars OAM data.
; Note that their coordinates put them off-screen.
ld de, wOAMBuffer
ld de, wShadowOAM
ld a, 24
.initSmallStarsOAMLoop
push af
@ -106,7 +106,7 @@ AnimateShootingStar:
ld d, a
push bc
push hl
ld hl, wOAMBuffer + $50
ld hl, wShadowOAMSprite20
ld c, 4
.smallStarsInnerLoop ; introduce new wave of 4 small stars OAM entries
ld a, [de]
@ -131,8 +131,8 @@ AnimateShootingStar:
push af
; shift the existing OAM entries down to make room for the next wave
ld hl, wOAMBuffer + $10
ld de, wOAMBuffer
ld hl, wShadowOAMSprite04
ld de, wShadowOAM
ld bc, $50
call CopyData
@ -186,7 +186,7 @@ SmallStarsEmptyWave:
MoveDownSmallStars:
ld b, 8
.loop
ld hl, wOAMBuffer + $5c
ld hl, wShadowOAMSprite23
ld a, [wMoveDownSmallStarsOAMCount]
ld de, -4
ld c, a

View file

@ -93,7 +93,7 @@ DisplayTitleScreen:
call DrawPlayerCharacter
; put a pokeball in the player's hand
ld hl, wOAMBuffer + $28
ld hl, wShadowOAMSprite10
ld a, $74
ld [hl], a
@ -322,7 +322,7 @@ DrawPlayerCharacter:
call ClearSprites
xor a
ld [wPlayerCharacterOAMTile], a
ld hl, wOAMBuffer
ld hl, wShadowOAM
lb de, $60, $5a
ld b, 7
.loop

View file

@ -115,6 +115,6 @@ GetTitleBallY:
pop de
and a
ret z
ld [wOAMBuffer + $28], a
ld [wShadowOAMSprite10YCoord], a
inc e
ret

View file

@ -315,7 +315,7 @@ Trade_AnimateBallEnteringLinkCable:
xor $1
ld [wLinkCableAnimBulgeToggle], a
add $7e
ld hl, wOAMBuffer + $02
ld hl, wShadowOAMSprite00TileID
ld de, 4
ld c, e
.cycleLinkCableBulgeTile
@ -599,7 +599,7 @@ Trade_AnimCircledMon:
ldh a, [rBGP]
xor $3c ; make link cable flash
ldh [rBGP], a
ld hl, wOAMBuffer + $02
ld hl, wShadowOAMSprite00TileID
ld de, $4
ld c, $14
.loop
@ -619,7 +619,7 @@ Trade_WriteCircledMonOAM:
call Trade_WriteCircleOAM
Trade_AddOffsetsToOAMCoords:
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld c, $14
.loop
ld a, [wBaseCoordY]

View file

@ -99,7 +99,7 @@ InitCutAnimOAM:
ld hl, vChars1 tile $7f
call LoadCutGrassAnimationTilePattern
call WriteCutOrBoulderDustAnimationOAMBlock
ld hl, wOAMBuffer + $93
ld hl, wShadowOAMSprite36Attributes
ld de, 4
ld a, $30
ld c, e

View file

@ -5,12 +5,12 @@ AnimCut:
ld c, $8
.cutTreeLoop
push bc
ld hl, wOAMBuffer + $91
ld hl, wShadowOAMSprite36XCoord
ld a, 1
ld [wCoordAdjustmentAmount], a
ld c, 2
call AdjustOAMBlockXPos2
ld hl, wOAMBuffer + $99
ld hl, wShadowOAMSprite38XCoord
ld a, -1
ld [wCoordAdjustmentAmount], a
ld c, 2
@ -33,7 +33,7 @@ AnimCut:
ld c, $8
call AnimCutGrass_UpdateOAMEntries
call AnimCutGrass_SwapOAMEntries
ld hl, wOAMBuffer + $90
ld hl, wShadowOAMSprite36YCoord
ld a, 2
ld [wCoordAdjustmentAmount], a
ld c, 4
@ -45,22 +45,22 @@ AnimCut:
AnimCutGrass_UpdateOAMEntries:
push bc
ld hl, wOAMBuffer + $91
ld hl, wShadowOAMSprite36XCoord
ld a, 1
ld [wCoordAdjustmentAmount], a
ld c, 1
call AdjustOAMBlockXPos2
ld hl, wOAMBuffer + $95
ld hl, wShadowOAMSprite37XCoord
ld a, 2
ld [wCoordAdjustmentAmount], a
ld c, 1
call AdjustOAMBlockXPos2
ld hl, wOAMBuffer + $99
ld hl, wShadowOAMSprite38XCoord
ld a, -2
ld [wCoordAdjustmentAmount], a
ld c, 1
call AdjustOAMBlockXPos2
ld hl, wOAMBuffer + $9d
ld hl, wShadowOAMSprite39XCoord
ld a, -1
ld [wCoordAdjustmentAmount], a
ld c, 1
@ -75,15 +75,15 @@ AnimCutGrass_UpdateOAMEntries:
ret
AnimCutGrass_SwapOAMEntries:
ld hl, wOAMBuffer + $90
ld hl, wShadowOAMSprite36
ld de, wBuffer
ld bc, $8
call CopyData
ld hl, wOAMBuffer + $98
ld de, wOAMBuffer + $90
ld hl, wShadowOAMSprite38
ld de, wShadowOAMSprite36
ld bc, $8
call CopyData
ld hl, wBuffer
ld de, wOAMBuffer + $98
ld de, wShadowOAMSprite38
ld bc, $8
jp CopyData

View file

@ -43,7 +43,7 @@ GetMoveBoulderDustFunctionPointer:
ld h, [hl]
ld l, a
push hl
ld hl, wOAMBuffer + $90
ld hl, wShadowOAMSprite36
ld d, $0
add hl, de
ld e, l

View file

@ -17,11 +17,11 @@ EmotionBubble:
ld [wUpdateSpritesEnabled], a
ld a, [wd736]
bit 6, a ; are the last 4 OAM entries reserved for a shadow or fishing rod?
ld hl, wOAMBuffer + 4 * 35 + $3 ; $8f
ld de, wOAMBuffer + 4 * 39 + $3 ; $9f
ld hl, wShadowOAMSprite35Attributes
ld de, wShadowOAMSprite39Attributes
jr z, .next
ld hl, wOAMBuffer + 4 * 31 + $3 ; $7f
ld de, wOAMBuffer + 4 * 35 + $3 ; $8f
ld hl, wShadowOAMSprite31Attributes
ld de, wShadowOAMSprite35Attributes
; Copy OAM data 16 bytes forward to make room for emotion bubble OAM data at the
; start of the OAM buffer.

View file

@ -12,7 +12,7 @@ AnimateHealingMachine:
push af
ld a, $e0
ldh [rOBP1], a
ld hl, wOAMBuffer + $84
ld hl, wShadowOAMSprite33
ld de, PokeCenterOAMData
call CopyHealingMachineOAM
ld a, 4

View file

@ -205,19 +205,19 @@ LeaveMapThroughHoleAnim:
ld a, $ff
ld [wUpdateSpritesEnabled], a ; disable UpdateSprites
; shift upper half of player's sprite down 8 pixels and hide lower half
ld a, [wOAMBuffer + 0 * 4 + 2]
ld [wOAMBuffer + 2 * 4 + 2], a
ld a, [wOAMBuffer + 1 * 4 + 2]
ld [wOAMBuffer + 3 * 4 + 2], a
ld a, [wShadowOAMSprite00TileID]
ld [wShadowOAMSprite02TileID], a
ld a, [wShadowOAMSprite01TileID]
ld [wShadowOAMSprite03TileID], a
ld a, $a0
ld [wOAMBuffer + 0 * 4], a
ld [wOAMBuffer + 1 * 4], a
ld [wShadowOAMSprite00YCoord], a
ld [wShadowOAMSprite01YCoord], a
ld c, 2
call DelayFrames
; hide upper half of player's sprite
ld a, $a0
ld [wOAMBuffer + 2 * 4], a
ld [wOAMBuffer + 3 * 4], a
ld [wShadowOAMSprite02YCoord], a
ld [wShadowOAMSprite03YCoord], a
call GBFadeOutToWhite
ld a, $1
ld [wUpdateSpritesEnabled], a ; enable UpdateSprites
@ -392,7 +392,7 @@ FishingAnim:
ld b, $0
ld hl, FishingRodOAM
add hl, bc
ld de, wOAMBuffer + $9c
ld de, wShadowOAMSprite39
ld bc, $4
call CopyData
ld c, 100
@ -412,7 +412,7 @@ FishingAnim:
.loop
ld hl, wSpritePlayerStateData1YPixels
call .ShakePlayerSprite
ld hl, wOAMBuffer + $9c
ld hl, wShadowOAMSprite39
call .ShakePlayerSprite
call Delay3
dec b
@ -424,7 +424,7 @@ FishingAnim:
cp SPRITE_FACING_UP
jr nz, .skipHidingFishingRod
ld a, $a0
ld [wOAMBuffer + $9c], a
ld [wShadowOAMSprite39YCoord], a
.skipHidingFishingRod
ld hl, wEmotionBubbleSpriteIndex
@ -438,7 +438,7 @@ FishingAnim:
cp SPRITE_FACING_UP
jr nz, .skipUnhidingFishingRod
ld a, $44
ld [wOAMBuffer + $9c], a
ld [wShadowOAMSprite39YCoord], a
.skipUnhidingFishingRod
ld hl, ItsABiteText

View file

@ -757,7 +757,7 @@ SlotMachine_UpdateBallTiles:
SlotMachine_AnimWheel1:
ld bc, SlotMachineWheel1
ld de, wSlotMachineWheel1Offset
ld hl, wOAMBuffer
ld hl, wShadowOAMSprite00
ld a, $30
ld [wBaseCoordX], a
jr SlotMachine_AnimWheel
@ -765,7 +765,7 @@ SlotMachine_AnimWheel1:
SlotMachine_AnimWheel2:
ld bc, SlotMachineWheel2
ld de, wSlotMachineWheel2Offset
ld hl, wOAMBuffer + $30
ld hl, wShadowOAMSprite12
ld a, $50
ld [wBaseCoordX], a
jr SlotMachine_AnimWheel
@ -773,7 +773,7 @@ SlotMachine_AnimWheel2:
SlotMachine_AnimWheel3:
ld bc, SlotMachineWheel3
ld de, wSlotMachineWheel3Offset
ld hl, wOAMBuffer + $60
ld hl, wShadowOAMSprite24
ld a, $70
ld [wBaseCoordX], a

View file

@ -1,7 +1,7 @@
ClearSprites::
xor a
ld hl, wOAMBuffer
ld b, wOAMBufferEnd - wOAMBuffer
ld hl, wShadowOAM
ld b, wShadowOAMEnd - wShadowOAM
.loop
ld [hli], a
dec b
@ -10,7 +10,7 @@ ClearSprites::
HideSprites::
ld a, 160
ld hl, wOAMBuffer
ld hl, wShadowOAM
ld de, 4
ld b, 40
.loop

View file

@ -4,7 +4,7 @@
; c = X coordinate of upper left corner of sprite
; de = base address of 4 tile number and attribute pairs
WriteOAMBlock::
ld h, HIGH(wOAMBuffer)
ld h, HIGH(wShadowOAM)
swap a ; multiply by 16
ld l, a
call .writeOneEntry ; upper left

View file

@ -143,12 +143,12 @@ wSpriteDataEnd::
SECTION "OAM Buffer", WRAM0
; buffer for OAM data. Copied to OAM by DMA
wOAMBuffer::
; wOAMBufferSprite00 - wOAMBufferSprite39
wShadowOAM::
; wShadowOAMSprite00 - wShadowOAMSprite39
FOR n, NUM_SPRITE_OAM_STRUCTS
wOAMBufferSprite{02d:n}:: sprite_oam_struct wOAMBufferSprite{02d:n}
wShadowOAMSprite{02d:n}:: sprite_oam_struct wShadowOAMSprite{02d:n}
ENDR
wOAMBufferEnd::
wShadowOAMEnd::
SECTION "Tilemap", WRAM0

View file

@ -124,7 +124,7 @@ VermilionDock_1db9b:
VermilionDock_AnimSmokePuffDriftRight:
push bc
push de
ld hl, wOAMBuffer + 4 * $4 + 1 ; x coord
ld hl, wShadowOAMSprite04XCoord
ld a, [wSSAnneSmokeDriftAmount]
swap a
ld c, a