mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-17 02:40:50 +12:00
named wram variables
This commit is contained in:
parent
07dd705637
commit
994c2cbf28
|
@ -2500,27 +2500,29 @@ CopyPicTiles: ; 79aae (1e:5aae)
|
|||
ld a, [H_WHOSETURN]
|
||||
and a
|
||||
ld a, $31 ; base tile ID of player mon sprite
|
||||
jr z, .asm_79ab6
|
||||
jr z, .next
|
||||
; enemy turn
|
||||
xor a ; base tile ID of enemy mon sprite
|
||||
.asm_79ab6
|
||||
.next
|
||||
ld [hBaseTileID], a
|
||||
jr asm_79acb
|
||||
jr CopyTileIDs_NoBGTransfer
|
||||
|
||||
; copy the tiles used when a mon is being sent out
|
||||
; and "growing" out of the pokeball
|
||||
CopyGrowingMonTiles: ; 79aba (1e:5aba)
|
||||
; copy the tiles used when a mon is being sent out of or into a pokeball
|
||||
CopyDownscaledMonTiles: ; 79aba (1e:5aba)
|
||||
call GetPredefRegisters
|
||||
ld a, [wcd6c]
|
||||
ld a, [wDownscaledMonSize]
|
||||
and a
|
||||
jr nz, .asm_79ac8
|
||||
ld de, Unknown_79b02 ; 5x5
|
||||
jr asm_79acb
|
||||
.asm_79ac8
|
||||
ld de, Unknown_79b1b ; 3x3
|
||||
asm_79acb: ; 79acb (1e:5acb)
|
||||
jr nz, .smallerSize
|
||||
ld de, DownscaledMonTiles_5x5
|
||||
jr CopyTileIDs_NoBGTransfer
|
||||
.smallerSize
|
||||
ld de, DownscaledMonTiles_3x3
|
||||
; fall through
|
||||
|
||||
CopyTileIDs_NoBGTransfer: ; 79acb (1e:5acb)
|
||||
xor a
|
||||
ld [H_AUTOBGTRANSFERENABLED], a
|
||||
; fall through
|
||||
|
||||
; b = number of rows
|
||||
; c = number of columns
|
||||
|
@ -2567,14 +2569,14 @@ TileIDListPointerTable: ; 79aea (1e:5aea)
|
|||
dw Unknown_79c50
|
||||
db $3C
|
||||
|
||||
Unknown_79b02: ; 79b02 (1e:5b02)
|
||||
DownscaledMonTiles_5x5: ; 79b02 (1e:5b02)
|
||||
db $31,$38,$46,$54,$5B
|
||||
db $32,$39,$47,$55,$5C
|
||||
db $34,$3B,$49,$57,$5E
|
||||
db $36,$3D,$4B,$59,$60
|
||||
db $37,$3E,$4C,$5A,$61
|
||||
|
||||
Unknown_79b1b: ; 79b1b (1e:5b1b)
|
||||
DownscaledMonTiles_3x3: ; 79b1b (1e:5b1b)
|
||||
db $31,$46,$5B
|
||||
db $34,$49,$5E
|
||||
db $37,$4C,$61
|
||||
|
|
|
@ -24,7 +24,7 @@ FormatMovesString: ; 39b87 (e:5b87)
|
|||
jr .copyNameLoop
|
||||
.doneCopyingName
|
||||
ld a, b
|
||||
ld [wcd6c], a
|
||||
ld [wNumMovesMinusOne], a
|
||||
inc b
|
||||
ld a, $4e ; line break
|
||||
ld [de], a
|
||||
|
@ -70,7 +70,7 @@ InitList: ; 39bd5 (e:5bd5)
|
|||
.notPlayer
|
||||
cp INIT_MON_LIST
|
||||
jr nz, .notMonster
|
||||
ld hl, wStringBuffer2 + 11
|
||||
ld hl, wItemList
|
||||
ld de, MonsterNames
|
||||
ld a, MONSTER_NAME
|
||||
jr .done
|
||||
|
@ -82,15 +82,15 @@ InitList: ; 39bd5 (e:5bd5)
|
|||
ld a, ITEM_NAME
|
||||
jr .done
|
||||
.notBag
|
||||
ld hl, wStringBuffer2 + 11
|
||||
ld hl, wItemList
|
||||
ld de, ItemNames
|
||||
ld a, ITEM_NAME
|
||||
.done
|
||||
ld [wNameListType], a
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
ld a, e
|
||||
ld [wcf8d], a
|
||||
ld a, d
|
||||
|
|
|
@ -225,7 +225,7 @@ StartBattle: ; 3c11e (f:411e)
|
|||
xor a
|
||||
ld [wPartyGainExpFlags], a
|
||||
ld [wPartyFoughtCurrentEnemyFlags], a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
inc a
|
||||
ld [wd11d], a
|
||||
ld hl, wEnemyMon1HP
|
||||
|
@ -260,7 +260,7 @@ StartBattle: ; 3c11e (f:411e)
|
|||
.displaySafariZoneBattleMenu
|
||||
call DisplayBattleMenu
|
||||
ret c ; return if the player ran from battle
|
||||
ld a, [wcd6a]
|
||||
ld a, [wActionResultOrTookBattleTurn]
|
||||
and a ; was the item used successfully?
|
||||
jr z, .displaySafariZoneBattleMenu ; if not, display the menu again; XXX does this ever jump?
|
||||
ld a, [W_NUMSAFARIBALLS]
|
||||
|
@ -415,8 +415,8 @@ MainInBattleLoop: ; 3c233 (f:4233)
|
|||
ld [wPlayerSelectedMove], a
|
||||
jr .selectEnemyMove
|
||||
.selectPlayerMove
|
||||
ld a, [wcd6a]
|
||||
and a
|
||||
ld a, [wActionResultOrTookBattleTurn]
|
||||
and a ; has the player already used the turn (e.g. by using an item, trying to run or switching pokemon)
|
||||
jr nz, .selectEnemyMove
|
||||
ld [wMoveMenuType], a
|
||||
inc a
|
||||
|
@ -816,11 +816,11 @@ HandleEnemyMonFainted: ; 3c525 (f:4525)
|
|||
call ChooseNextMon
|
||||
.skipReplacingBattleMon
|
||||
ld a, $1
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
call ReplaceFaintedEnemyMon
|
||||
jp z, EnemyRan
|
||||
xor a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
jp MainInBattleLoop
|
||||
|
||||
FaintEnemyPokemon: ; 0x3c567
|
||||
|
@ -990,7 +990,7 @@ ReplaceFaintedEnemyMon: ; 3c664 (f:4664)
|
|||
call EnemySendOut
|
||||
xor a
|
||||
ld [W_ENEMYMOVENUM], a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
ld [wAILayer2Encouragement], a
|
||||
inc a ; reset Z flag
|
||||
ret
|
||||
|
@ -1075,11 +1075,11 @@ HandlePlayerMonFainted: ; 3c700 (f:4700)
|
|||
jp nz, MainInBattleLoop ; if the enemy mon has more than 0 HP, go back to battle loop
|
||||
; the enemy mon has 0 HP
|
||||
ld a, $1
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
call ReplaceFaintedEnemyMon
|
||||
jp z, EnemyRan ; if enemy ran from battle rather than sending out another mon, jump
|
||||
xor a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
jp MainInBattleLoop
|
||||
|
||||
; resets flags, slides mon's pic down, plays cry, and prints fainted message
|
||||
|
@ -1177,11 +1177,11 @@ ChooseNextMon: ; 3c7d8 (f:47d8)
|
|||
cp LINK_STATE_BATTLING
|
||||
jr nz, .notLinkBattle
|
||||
inc a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
call LinkBattleExchangeData
|
||||
.notLinkBattle
|
||||
xor a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
call ClearSprites
|
||||
ld a, [wWhichPokemon]
|
||||
ld [wPlayerMonNumber], a
|
||||
|
@ -1646,7 +1646,7 @@ TryRunningFromBattle: ; 3cab9 (f:4ab9)
|
|||
; plus 30 times the number of attempts, the player can escape
|
||||
; can't escape
|
||||
ld a, $1
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a ; you lose your turn when you can't escape
|
||||
ld hl, CantEscapeText
|
||||
jr .printCantEscapeOrNoRunningText
|
||||
.trainerBattle
|
||||
|
@ -1666,7 +1666,7 @@ TryRunningFromBattle: ; 3cab9 (f:4ab9)
|
|||
; link battle
|
||||
call SaveScreenTilesToBuffer1
|
||||
xor a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
ld a, $f
|
||||
ld [wPlayerMoveListIndex], a
|
||||
call LinkBattleExchangeData
|
||||
|
@ -1842,7 +1842,7 @@ SendOutMon: ; 3cc91 (f:4c91)
|
|||
call PrintEmptyString
|
||||
jp SaveScreenTilesToBuffer1
|
||||
|
||||
; show 2 stages of the player getting smaller before disappearing
|
||||
; show 2 stages of the player mon getting smaller before disappearing
|
||||
AnimateRetreatingPlayerMon: ; 3ccfa (f:4cfa)
|
||||
hlCoord 1, 5
|
||||
ld bc, $707
|
||||
|
@ -1850,19 +1850,19 @@ AnimateRetreatingPlayerMon: ; 3ccfa (f:4cfa)
|
|||
hlCoord 3, 7
|
||||
ld bc, $505
|
||||
xor a
|
||||
ld [wcd6c], a
|
||||
ld [wDownscaledMonSize], a
|
||||
ld [H_DOWNARROWBLINKCNT1], a
|
||||
predef CopyGrowingMonTiles
|
||||
predef CopyDownscaledMonTiles
|
||||
ld c, 4
|
||||
call DelayFrames
|
||||
call .clearScreenArea
|
||||
hlCoord 4, 9
|
||||
ld bc, $303
|
||||
ld a, $1
|
||||
ld [wcd6c], a
|
||||
ld [wDownscaledMonSize], a
|
||||
xor a
|
||||
ld [H_DOWNARROWBLINKCNT1], a
|
||||
predef CopyGrowingMonTiles
|
||||
predef CopyDownscaledMonTiles
|
||||
call Delay3
|
||||
call .clearScreenArea
|
||||
ld a, $4c
|
||||
|
@ -2276,9 +2276,9 @@ BagWasSelected:
|
|||
jr nz, DisplayPlayerBag ; no, it is a normal battle
|
||||
ld hl, OldManItemList
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
jr DisplayBagMenu
|
||||
|
||||
OldManItemList:
|
||||
|
@ -2290,9 +2290,9 @@ DisplayPlayerBag:
|
|||
; get the pointer to player's bag when in a normal battle
|
||||
ld hl, wNumBagItems
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
|
||||
DisplayBagMenu:
|
||||
xor a
|
||||
|
@ -2326,7 +2326,7 @@ UseBagItem:
|
|||
cp $2 ; is it a safari battle?
|
||||
jr z, .checkIfMonCaptured
|
||||
|
||||
ld a, [wcd6a]
|
||||
ld a, [wActionResultOrTookBattleTurn]
|
||||
and a ; was the item used successfully?
|
||||
jp z, BagWasSelected ; if not, go back to the bag menu
|
||||
|
||||
|
@ -2479,7 +2479,7 @@ PartyMenuOrRockOrRun:
|
|||
call HasMonFainted
|
||||
jp z, .partyMonDeselected ; can't switch to fainted mon
|
||||
ld a, $1
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
call GBPalWhiteOut
|
||||
call ClearSprites
|
||||
call LoadHudTilePatterns
|
||||
|
@ -2525,9 +2525,9 @@ BattleMenu_RunWasSelected: ; 3d1fa (f:51fa)
|
|||
ld a, $0
|
||||
ld [wd11f], a
|
||||
ret c
|
||||
ld a, [wcd6a]
|
||||
ld a, [wActionResultOrTookBattleTurn]
|
||||
and a
|
||||
ret nz
|
||||
ret nz ; return if the player couldn't escape
|
||||
jp DisplayBattleMenu
|
||||
|
||||
MoveSelectionMenu: ; 3d219 (f:5219)
|
||||
|
@ -2604,9 +2604,9 @@ MoveSelectionMenu: ; 3d219 (f:5219)
|
|||
ld a, $7
|
||||
.menuset
|
||||
ld hl, wTopMenuItemY
|
||||
ld [hli], a
|
||||
ld [hli], a ; wTopMenuItemY
|
||||
ld a, b
|
||||
ld [hli], a
|
||||
ld [hli], a ; wTopMenuItemX
|
||||
ld a, [wMoveMenuType]
|
||||
cp $1
|
||||
jr z, .selectedmoveknown
|
||||
|
@ -2615,30 +2615,30 @@ MoveSelectionMenu: ; 3d219 (f:5219)
|
|||
ld a, [wPlayerMoveListIndex]
|
||||
inc a
|
||||
.selectedmoveknown
|
||||
ld [hli], a
|
||||
ld [hli], a ; wCurrentMenuItem
|
||||
inc hl ; wTileBehindCursor untouched
|
||||
ld a, [wcd6c]
|
||||
ld a, [wNumMovesMinusOne]
|
||||
inc a
|
||||
inc a
|
||||
ld [hli], a
|
||||
ld [hli], a ; wMaxMenuItem
|
||||
ld a, [wMoveMenuType]
|
||||
dec a
|
||||
ld b, $c1 ; can't use B
|
||||
ld b, D_UP | D_DOWN | A_BUTTON
|
||||
jr z, .matchedkeyspicked
|
||||
dec a
|
||||
ld b, $c3
|
||||
ld b, D_UP | D_DOWN | A_BUTTON | B_BUTTON
|
||||
jr z, .matchedkeyspicked
|
||||
ld a, [wLinkState]
|
||||
cp LINK_STATE_BATTLING
|
||||
jr z, .matchedkeyspicked
|
||||
ld a, [W_FLAGS_D733]
|
||||
bit 0, a
|
||||
ld b, $c7
|
||||
ld b, D_UP | D_DOWN | A_BUTTON | B_BUTTON | SELECT
|
||||
jr z, .matchedkeyspicked
|
||||
ld b, $ff
|
||||
.matchedkeyspicked
|
||||
ld a, b
|
||||
ld [hli], a
|
||||
ld [hli], a ; wMenuWatchedKeys
|
||||
ld a, [wMoveMenuType]
|
||||
cp $1
|
||||
jr z, .movelistindex1
|
||||
|
@ -2759,7 +2759,7 @@ CursorUp: ; 3d3c9 (f:53c9)
|
|||
and a
|
||||
jp nz, SelectMenuItem
|
||||
call EraseMenuCursor
|
||||
ld a, [wcd6c]
|
||||
ld a, [wNumMovesMinusOne]
|
||||
inc a
|
||||
ld [wCurrentMenuItem], a
|
||||
jp SelectMenuItem
|
||||
|
@ -2767,7 +2767,7 @@ CursorUp: ; 3d3c9 (f:53c9)
|
|||
CursorDown: ; 3d3dd (f:53dd)
|
||||
ld a, [wCurrentMenuItem]
|
||||
ld b, a
|
||||
ld a, [wcd6c]
|
||||
ld a, [wNumMovesMinusOne]
|
||||
inc a
|
||||
inc a
|
||||
cp b
|
||||
|
@ -2983,7 +2983,7 @@ TypeText: ; 3d55f (f:555f)
|
|||
|
||||
SelectEnemyMove: ; 3d564 (f:5564)
|
||||
ld a, [wLinkState]
|
||||
sub $4
|
||||
sub LINK_STATE_BATTLING
|
||||
jr nz, .noLinkBattle
|
||||
; link battle
|
||||
call SaveScreenTilesToBuffer1
|
||||
|
@ -3079,46 +3079,47 @@ LinkBattleExchangeData: ; 3d605 (f:5605)
|
|||
ld [wSerialExchangeNybbleReceiveData], a
|
||||
ld a, [wPlayerMoveListIndex]
|
||||
cp $f ; is the player running from battle?
|
||||
jr z, .asm_3d630
|
||||
ld a, [wcd6a]
|
||||
and a
|
||||
jr nz, .asm_3d629
|
||||
jr z, .doExchange
|
||||
ld a, [wActionResultOrTookBattleTurn]
|
||||
and a ; is the player switching in another mon?
|
||||
jr nz, .switching
|
||||
; the player used a move
|
||||
ld a, [wPlayerSelectedMove]
|
||||
cp STRUGGLE
|
||||
ld b, $e
|
||||
jr z, .asm_3d62f
|
||||
jr z, .next
|
||||
dec b
|
||||
inc a
|
||||
jr z, .asm_3d62f
|
||||
jr z, .next
|
||||
ld a, [wPlayerMoveListIndex]
|
||||
jr .asm_3d630
|
||||
.asm_3d629
|
||||
jr .doExchange
|
||||
.switching
|
||||
ld a, [wWhichPokemon]
|
||||
add $4
|
||||
add 4
|
||||
ld b, a
|
||||
.asm_3d62f
|
||||
.next
|
||||
ld a, b
|
||||
.asm_3d630
|
||||
.doExchange
|
||||
ld [wSerialExchangeNybbleSendData], a
|
||||
callab PrintWaitingText
|
||||
.asm_3d63b
|
||||
.syncLoop1
|
||||
call Serial_ExchangeNybble
|
||||
call DelayFrame
|
||||
ld a, [wSerialExchangeNybbleReceiveData]
|
||||
inc a
|
||||
jr z, .asm_3d63b
|
||||
ld b, $a
|
||||
.asm_3d649
|
||||
jr z, .syncLoop1
|
||||
ld b, 10
|
||||
.syncLoop2
|
||||
call DelayFrame
|
||||
call Serial_ExchangeNybble
|
||||
dec b
|
||||
jr nz, .asm_3d649
|
||||
ld b, $a
|
||||
.asm_3d654
|
||||
jr nz, .syncLoop2
|
||||
ld b, 10
|
||||
.syncLoop3
|
||||
call DelayFrame
|
||||
call Serial_SendZeroByte
|
||||
dec b
|
||||
jr nz, .asm_3d654
|
||||
jr nz, .syncLoop3
|
||||
ret
|
||||
|
||||
ExecutePlayerMove: ; 3d65e (f:565e)
|
||||
|
@ -3133,8 +3134,8 @@ ExecutePlayerMove: ; 3d65e (f:565e)
|
|||
ld [wMoveDidntMiss], a
|
||||
ld a, $a
|
||||
ld [wDamageMultipliers], a
|
||||
ld a, [wcd6a]
|
||||
and a
|
||||
ld a, [wActionResultOrTookBattleTurn]
|
||||
and a ; has the player already used the turn (e.g. by using an item, trying to run or switching pokemon)
|
||||
jp nz, ExecutePlayerMoveDone
|
||||
call PrintGhostText
|
||||
jp z, ExecutePlayerMoveDone
|
||||
|
@ -3324,7 +3325,7 @@ MultiHitText: ; 3d805 (f:5805)
|
|||
|
||||
ExecutePlayerMoveDone: ; 3d80a (f:580a)
|
||||
xor a
|
||||
ld [wcd6a],a
|
||||
ld [wActionResultOrTookBattleTurn],a
|
||||
ld b,1
|
||||
ret
|
||||
|
||||
|
@ -6998,7 +6999,7 @@ ResetCryModifiers: ; 3f069 (f:7069)
|
|||
ld [wc0f2], a
|
||||
jp PlaySound
|
||||
|
||||
; animtes the mon "growing" out of the pokeball
|
||||
; animates the mon "growing" out of the pokeball
|
||||
AnimateSendingOutMon: ; 3f073 (f:7073)
|
||||
ld a, [wPredefRegisters]
|
||||
ld h, a
|
||||
|
@ -7016,17 +7017,17 @@ AnimateSendingOutMon: ; 3f073 (f:7073)
|
|||
ld bc, -41
|
||||
add hl, bc
|
||||
ld a, $1
|
||||
ld [wcd6c], a
|
||||
ld [wDownscaledMonSize], a
|
||||
ld bc, $303
|
||||
predef CopyGrowingMonTiles
|
||||
predef CopyDownscaledMonTiles
|
||||
ld c, 4
|
||||
call DelayFrames
|
||||
ld bc, -41
|
||||
add hl, bc
|
||||
xor a
|
||||
ld [wcd6c], a
|
||||
ld [wDownscaledMonSize], a
|
||||
ld bc, $505
|
||||
predef CopyGrowingMonTiles
|
||||
predef CopyDownscaledMonTiles
|
||||
ld c, 5
|
||||
call DelayFrames
|
||||
ld bc, -41
|
||||
|
|
|
@ -2,7 +2,7 @@ InitBattleVariables: ; 525af (14:65af)
|
|||
ld a, [hTilesetType]
|
||||
ld [wd0d4], a
|
||||
xor a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
ld [wBattleResult], a
|
||||
ld hl, wcc2b
|
||||
ld [hli], a
|
||||
|
|
|
@ -559,7 +559,7 @@ AIPlayRestoringSFX: ; 3a69b (e:669b)
|
|||
AIUseFullRestore: ; 3a6a0 (e:66a0)
|
||||
call AICureStatus
|
||||
ld a,FULL_RESTORE
|
||||
ld [wcf05],a
|
||||
ld [wAIItem],a
|
||||
ld de,wHPBarOldHP
|
||||
ld hl,wEnemyMonHP + 1
|
||||
ld a,[hld]
|
||||
|
@ -600,7 +600,7 @@ AIUseHyperPotion: ; 3a6d6 (e:66d6)
|
|||
|
||||
AIRecoverHP: ; 3a6da (e:66da)
|
||||
; heal b HP and print "trainer used $(a) on pokemon!"
|
||||
ld [wcf05],a
|
||||
ld [wAIItem],a
|
||||
ld hl,wEnemyMonHP + 1
|
||||
ld a,[hl]
|
||||
ld [wHPBarOldHP],a
|
||||
|
@ -797,7 +797,7 @@ AIUseXSpecial: ; 3a804 (e:6804)
|
|||
; fallthrough
|
||||
|
||||
AIIncreaseStat: ; 3a808 (e:6808)
|
||||
ld [wcf05],a
|
||||
ld [wAIItem],a
|
||||
push bc
|
||||
call AIPrintItemUse_
|
||||
pop bc
|
||||
|
@ -819,13 +819,13 @@ AIIncreaseStat: ; 3a808 (e:6808)
|
|||
jp DecrementAICount
|
||||
|
||||
AIPrintItemUse: ; 3a82c (e:682c)
|
||||
ld [wcf05],a
|
||||
ld [wAIItem],a
|
||||
call AIPrintItemUse_
|
||||
jp DecrementAICount
|
||||
|
||||
AIPrintItemUse_: ; 3a835 (e:6835)
|
||||
; print "x used [wcf05] on z!"
|
||||
ld a,[wcf05]
|
||||
; print "x used [wAIItem] on z!"
|
||||
ld a,[wAIItem]
|
||||
ld [wd11e],a
|
||||
call GetItemName
|
||||
ld hl, AIBattleUseItemText
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
UseItem_: ; d5c7 (3:55c7)
|
||||
ld a,1
|
||||
ld [wcd6a],a
|
||||
ld [wActionResultOrTookBattleTurn],a ; initialise to success value
|
||||
ld a,[wcf91] ;contains item_ID
|
||||
cp a,HM_01
|
||||
jp nc,ItemUseTMHM
|
||||
|
@ -661,7 +661,7 @@ ItemUseEvoStone: ; da5b (3:5a5b)
|
|||
call ItemUseNoEffect
|
||||
.canceledItemUse
|
||||
xor a
|
||||
ld [wcd6a],a
|
||||
ld [wActionResultOrTookBattleTurn],a ; item not used
|
||||
pop af
|
||||
ret
|
||||
|
||||
|
@ -691,7 +691,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
.emptyParty
|
||||
ld hl,.emptyPartyText
|
||||
xor a
|
||||
ld [wcd6a],a ; item use failed
|
||||
ld [wActionResultOrTookBattleTurn],a ; item use failed
|
||||
jp PrintText
|
||||
.emptyPartyText
|
||||
text "You don't have"
|
||||
|
@ -706,7 +706,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
ld a,[wWhichPokemon]
|
||||
call AddNTimes
|
||||
ld a,[wWhichPokemon]
|
||||
ld [wcf06],a
|
||||
ld [wUsedItemOnWhichPokemon],a
|
||||
ld d,a
|
||||
ld a,[wcf91]
|
||||
ld e,a
|
||||
|
@ -803,7 +803,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
push hl
|
||||
push de
|
||||
push bc
|
||||
ld a,[wcf06]
|
||||
ld a,[wUsedItemOnWhichPokemon]
|
||||
ld c,a
|
||||
ld hl,wPartyFoughtCurrentEnemyFlags
|
||||
ld b,$02
|
||||
|
@ -811,7 +811,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
ld a,c
|
||||
and a
|
||||
jr z,.next
|
||||
ld a,[wcf06]
|
||||
ld a,[wUsedItemOnWhichPokemon]
|
||||
ld c,a
|
||||
ld hl,wPartyGainExpFlags
|
||||
ld b,$01
|
||||
|
@ -1106,7 +1106,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
jr .done
|
||||
.canceledItemUse
|
||||
xor a
|
||||
ld [wcd6a],a ; item use failed
|
||||
ld [wActionResultOrTookBattleTurn],a ; item use failed
|
||||
pop af
|
||||
pop af
|
||||
.done
|
||||
|
@ -1384,7 +1384,7 @@ ItemUseEscapeRope: ; dfaf (3:5faf)
|
|||
ld [W_SAFARIZONEENTRANCECURSCRIPT],a
|
||||
inc a
|
||||
ld [wEscapedFromBattle],a
|
||||
ld [wcd6a],a ; item used
|
||||
ld [wActionResultOrTookBattleTurn],a ; item used
|
||||
ld a,[wd152]
|
||||
and a ; using Dig?
|
||||
ret nz ; if so, return
|
||||
|
@ -1550,7 +1550,7 @@ ItemUseXStat: ; e104 (3:6104)
|
|||
jr nz,.inBattle
|
||||
call ItemUseNotTime
|
||||
ld a,2
|
||||
ld [wcd6a],a ; item not used
|
||||
ld [wActionResultOrTookBattleTurn],a ; item not used
|
||||
ret
|
||||
.inBattle
|
||||
ld hl,W_PLAYERMOVENUM
|
||||
|
@ -2043,7 +2043,7 @@ ItemUsePPRestore: ; e31e (3:631e)
|
|||
call GoPAL_SET_CF1C
|
||||
pop af
|
||||
xor a
|
||||
ld [wcd6a],a ; item use failed
|
||||
ld [wActionResultOrTookBattleTurn],a ; item use failed
|
||||
ret
|
||||
|
||||
RaisePPWhichTechniqueText: ; e45d (3:645d)
|
||||
|
@ -2104,7 +2104,7 @@ ItemUseTMHM: ; e479 (3:6479)
|
|||
and a
|
||||
jr z,.useMachine
|
||||
ld a,2
|
||||
ld [wcd6a],a ; item not used
|
||||
ld [wActionResultOrTookBattleTurn],a ; item not used
|
||||
ret
|
||||
.useMachine
|
||||
ld a,[wWhichPokemon]
|
||||
|
@ -2234,7 +2234,7 @@ SurfingAttemptFailed: ; e5b6 (3:65b6)
|
|||
|
||||
ItemUseFailed: ; e5b9 (3:65b9)
|
||||
xor a
|
||||
ld [wcd6a],a ; item use failed
|
||||
ld [wActionResultOrTookBattleTurn],a ; item use failed
|
||||
jp PrintText
|
||||
|
||||
ItemUseNotTimeText: ; e5c0 (3:65c0)
|
||||
|
@ -2301,13 +2301,13 @@ RestoreBonusPP: ; e606 (3:6606)
|
|||
ld a,[wWhichPokemon]
|
||||
call AddNTimes
|
||||
push hl
|
||||
ld de,wcd78 - 1
|
||||
predef LoadMovePPs ; loads the normal max PP of each of the pokemon's moves to wcd78
|
||||
ld de,wNormalMaxPPList - 1
|
||||
predef LoadMovePPs ; loads the normal max PP of each of the pokemon's moves to wNormalMaxPPList
|
||||
pop hl
|
||||
ld c,21
|
||||
ld b,0
|
||||
add hl,bc ; hl now points to move 1 PP
|
||||
ld de,wcd78
|
||||
ld de,wNormalMaxPPList
|
||||
ld b,0 ; initialize move counter to zero
|
||||
; loop through the pokemon's moves
|
||||
.loop
|
||||
|
@ -2420,7 +2420,7 @@ GetMaxPP: ; e677 (3:6677)
|
|||
ld de,wcd6d
|
||||
ld a,BANK(Moves)
|
||||
call FarCopyData
|
||||
ld de,wcd72
|
||||
ld de,wcd6d + 5 ; PP is byte 5 of move data
|
||||
ld a,[de]
|
||||
ld b,a ; b = normal max PP
|
||||
pop hl
|
||||
|
|
|
@ -134,18 +134,18 @@ TryingToLearn: ; 6f07 (1:6f07)
|
|||
res 2, a
|
||||
ld [hFlags_0xFFF6], a
|
||||
ld hl, wTopMenuItemY
|
||||
ld a, $8
|
||||
ld [hli], a
|
||||
ld a, $5
|
||||
ld [hli], a
|
||||
ld a, 8
|
||||
ld [hli], a ; wTopMenuItemY
|
||||
ld a, 5
|
||||
ld [hli], a ; wTopMenuItemX
|
||||
xor a
|
||||
ld [hli], a
|
||||
ld [hli], a ; wCurrentMenuItem
|
||||
inc hl
|
||||
ld a, [wcd6c]
|
||||
ld [hli], a
|
||||
ld a, $3
|
||||
ld [hli], a
|
||||
ld [hl], $0
|
||||
ld a, [wNumMovesMinusOne]
|
||||
ld [hli], a ; wMaxMenuItem
|
||||
ld a, A_BUTTON | B_BUTTON
|
||||
ld [hli], a ; wMenuWatchedKeys
|
||||
ld [hl], 0 ; wLastMenuItem
|
||||
ld hl, hFlags_0xFFF6
|
||||
set 1, [hl]
|
||||
call HandleMenuInput
|
||||
|
|
|
@ -325,9 +325,9 @@ Func_216b3: ; 216b3 (8:56b3)
|
|||
|
||||
Func_216be: ; 216be (8:56be)
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
xor a
|
||||
ld [wPrintItemPrices], a
|
||||
ld [wListMenuID], a
|
||||
|
|
|
@ -227,7 +227,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3)
|
|||
ld h,[hl]
|
||||
ld l,a
|
||||
push hl
|
||||
ld a,[wcf06]
|
||||
ld a,[wUsedItemOnWhichPokemon]
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
pop hl
|
||||
|
|
|
@ -97,9 +97,9 @@ Func_79ab: ; 79ab (1:79ab)
|
|||
call PrintText
|
||||
ld hl, wNumBagItems
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
xor a
|
||||
ld [wPrintItemPrices], a
|
||||
ld a, $3
|
||||
|
@ -151,9 +151,9 @@ Func_7a28: ; 7a28 (1:7a28)
|
|||
call PrintText
|
||||
ld hl, wNumBoxItems
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
xor a
|
||||
ld [wPrintItemPrices], a
|
||||
ld a, $3
|
||||
|
@ -205,9 +205,9 @@ Func_7aa5: ; 7aa5 (1:7aa5)
|
|||
call PrintText
|
||||
ld hl, wNumBoxItems
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
xor a
|
||||
ld [wPrintItemPrices], a
|
||||
ld a, $3
|
||||
|
|
|
@ -153,7 +153,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
bit 1,a ; does the player have the Cascade Badge?
|
||||
jp z,.newBadgeRequired
|
||||
predef UsedCut
|
||||
ld a,[wcd6a]
|
||||
ld a,[wActionResultOrTookBattleTurn]
|
||||
and a
|
||||
jp z,.loop
|
||||
jp CloseTextDisplay
|
||||
|
@ -169,7 +169,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
ld [wcf91],a
|
||||
ld [wd152],a
|
||||
call UseItem
|
||||
ld a,[wcd6a]
|
||||
ld a,[wActionResultOrTookBattleTurn]
|
||||
and a
|
||||
jp z,.loop
|
||||
call GBPalWhiteOutWithDelay3
|
||||
|
@ -197,7 +197,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
ld [wcf91],a
|
||||
ld [wd152],a
|
||||
call UseItem
|
||||
ld a,[wcd6a]
|
||||
ld a,[wActionResultOrTookBattleTurn]
|
||||
and a
|
||||
jp z,.loop
|
||||
call GBPalWhiteOutWithDelay3
|
||||
|
@ -308,10 +308,10 @@ StartMenu_Item: ; 13302 (4:7302)
|
|||
jr .exitMenu
|
||||
.notInCableClubRoom
|
||||
ld bc,wNumBagItems
|
||||
ld hl,wList
|
||||
ld hl,wListPointer
|
||||
ld a,c
|
||||
ld [hli],a
|
||||
ld [hl],b ; store item bag pointer at wList (for DisplayListMenuID)
|
||||
ld [hl],b ; store item bag pointer in wListPointer (for DisplayListMenuID)
|
||||
xor a
|
||||
ld [wPrintItemPrices],a
|
||||
ld a,ITEMLISTMENU
|
||||
|
@ -401,7 +401,7 @@ StartMenu_Item: ; 13302 (4:7302)
|
|||
xor a
|
||||
ld [wd152],a
|
||||
call UseItem
|
||||
ld a,[wcd6a]
|
||||
ld a,[wActionResultOrTookBattleTurn]
|
||||
and a
|
||||
jp z,ItemMenuLoop
|
||||
jp CloseStartMenu
|
||||
|
@ -409,7 +409,7 @@ StartMenu_Item: ; 13302 (4:7302)
|
|||
ld a,[wUpdateSpritesEnabled]
|
||||
push af
|
||||
call UseItem
|
||||
ld a,[wcd6a]
|
||||
ld a,[wActionResultOrTookBattleTurn]
|
||||
cp a,$02
|
||||
jp z,.partyMenuNotDisplayed
|
||||
call GBPalWhiteOutWithDelay3
|
||||
|
|
|
@ -316,7 +316,7 @@ StatusScreen2: ; 12b57 (4:6b57)
|
|||
hlCoord 2, 9
|
||||
ld de, wMovesString
|
||||
call PlaceString ; Print moves
|
||||
ld a, [wcd6c]
|
||||
ld a, [wNumMovesMinusOne]
|
||||
inc a
|
||||
ld c, a
|
||||
ld a, $4
|
||||
|
@ -335,7 +335,7 @@ StatusScreen2: ; 12b57 (4:6b57)
|
|||
.InitPP ; 12bbb
|
||||
ld hl, wLoadedMonMoves
|
||||
deCoord 14, 10
|
||||
ld b, $0
|
||||
ld b, 0
|
||||
.PrintPP ; 12bc3
|
||||
ld a, [hli]
|
||||
and a
|
||||
|
@ -356,15 +356,15 @@ StatusScreen2: ; 12b57 (4:6b57)
|
|||
pop de
|
||||
pop hl
|
||||
push hl
|
||||
ld bc, $0014
|
||||
ld bc, wPartyMon1PP - wPartyMon1Moves - 1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and $3f
|
||||
ld [wcd71], a
|
||||
ld [wStatusScreenCurrentPP], a
|
||||
ld h, d
|
||||
ld l, e
|
||||
push hl
|
||||
ld de, wcd71
|
||||
ld de, wStatusScreenCurrentPP
|
||||
ld bc, $0102
|
||||
call PrintNumber
|
||||
ld a, "/"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
UsedCut: ; ef54 (3:6f54)
|
||||
xor a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a ; initialise to failure value
|
||||
ld a, [W_CURMAPTILESET]
|
||||
and a ; OVERWORLD
|
||||
jr z, .asm_ef6b
|
||||
|
@ -28,7 +28,7 @@ UsedCut: ; ef54 (3:6f54)
|
|||
.asm_ef82
|
||||
ld [wCutTile], a
|
||||
ld a, $1
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a ; used cut
|
||||
ld a, [wWhichPokemon]
|
||||
ld hl, wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
|
|
|
@ -57,9 +57,9 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
|
|||
call DisplayTextBoxID ; draw money text box
|
||||
ld hl,wNumBagItems
|
||||
ld a,l
|
||||
ld [wList],a
|
||||
ld [wListPointer],a
|
||||
ld a,h
|
||||
ld [wList + 1],a
|
||||
ld [wListPointer + 1],a
|
||||
xor a
|
||||
ld [wPrintItemPrices],a
|
||||
ld [wCurrentMenuItem],a
|
||||
|
@ -136,11 +136,11 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
|
|||
ld a,MONEY_BOX
|
||||
ld [wTextBoxID],a
|
||||
call DisplayTextBoxID
|
||||
ld hl,wStringBuffer2 + 11
|
||||
ld hl,wItemList
|
||||
ld a,l
|
||||
ld [wList],a
|
||||
ld [wListPointer],a
|
||||
ld a,h
|
||||
ld [wList + 1],a
|
||||
ld [wListPointer + 1],a
|
||||
xor a
|
||||
ld [wCurrentMenuItem],a
|
||||
inc a
|
||||
|
|
|
@ -57,7 +57,7 @@ PredefPointers:: ; 4fe79 (13:7e79)
|
|||
add_predef AnimateSendingOutMon
|
||||
add_predef ScaleSpriteByTwo
|
||||
add_predef LoadMonBackPic
|
||||
add_predef CopyGrowingMonTiles
|
||||
add_predef CopyDownscaledMonTiles
|
||||
add_predef LoadMissableObjects
|
||||
add_predef HealParty
|
||||
add_predef MoveAnimation; 08 play move animation
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
Func_1c9c6: ; 1c9c6 (7:49c6)
|
||||
ld hl, WhichFloorText
|
||||
call PrintText
|
||||
ld hl, wStringBuffer2 + 11
|
||||
ld hl, wItemList
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
ld a, [wListScrollOffset]
|
||||
push af
|
||||
xor a
|
||||
|
|
38
home.asm
38
home.asm
|
@ -1055,7 +1055,7 @@ DisplayTextID:: ; 2920 (0:2920)
|
|||
ld a,[H_LOADEDROMBANK]
|
||||
push af
|
||||
callba DisplayTextIDInit ; initialization
|
||||
ld hl,wcf11
|
||||
ld hl,wTextPredefFlag
|
||||
bit 0,[hl]
|
||||
res 0,[hl]
|
||||
jr nz,.skipSwitchToMapBank
|
||||
|
@ -1225,7 +1225,7 @@ LoadItemList:: ; 2a5a (0:2a5a)
|
|||
ld [wItemListPointer],a
|
||||
ld a,l
|
||||
ld [wItemListPointer + 1],a
|
||||
ld de,wStringBuffer2 + 11
|
||||
ld de,wItemList
|
||||
.loop
|
||||
ld a,[hli]
|
||||
ld [de],a
|
||||
|
@ -1372,7 +1372,7 @@ AddItemToInventory:: ; 2bcf (0:2bcf)
|
|||
|
||||
; INPUT:
|
||||
; [wListMenuID] = list menu ID
|
||||
; [wList] = address of the list (2 bytes)
|
||||
; [wListPointer] = address of the list (2 bytes)
|
||||
DisplayListMenuID:: ; 2be6 (0:2be6)
|
||||
xor a
|
||||
ld [H_AUTOBGTRANSFERENABLED],a ; disable auto-transfer
|
||||
|
@ -1392,9 +1392,9 @@ DisplayListMenuID:: ; 2be6 (0:2be6)
|
|||
xor a
|
||||
ld [wMenuItemToSwap],a ; 0 means no item is currently being swapped
|
||||
ld [wListCount],a
|
||||
ld a,[wList]
|
||||
ld a,[wListPointer]
|
||||
ld l,a
|
||||
ld a,[wList + 1]
|
||||
ld a,[wListPointer + 1]
|
||||
ld h,a ; hl = address of the list
|
||||
ld a,[hl] ; the first byte is the number of entries in the list
|
||||
ld [wListCount],a
|
||||
|
@ -1488,9 +1488,9 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53)
|
|||
; if it's an item menu
|
||||
sla c ; item entries are 2 bytes long, so multiply by 2
|
||||
.skipMultiplying
|
||||
ld a,[wList]
|
||||
ld a,[wListPointer]
|
||||
ld l,a
|
||||
ld a,[wList + 1]
|
||||
ld a,[wListPointer + 1]
|
||||
ld h,a
|
||||
inc hl ; hl = beginning of list entries
|
||||
ld b,0
|
||||
|
@ -1519,7 +1519,7 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53)
|
|||
jr .storeChosenEntry
|
||||
.pokemonList
|
||||
ld hl,wPartyCount
|
||||
ld a,[wList]
|
||||
ld a,[wListPointer]
|
||||
cp l ; is it a list of party pokemon or box pokemon?
|
||||
ld hl,wPartyMonNicks
|
||||
jr z,.getPokemonName
|
||||
|
@ -1710,9 +1710,9 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a)
|
|||
ld b,$09
|
||||
ld c,$0e
|
||||
call ClearScreenArea
|
||||
ld a,[wList]
|
||||
ld a,[wListPointer]
|
||||
ld e,a
|
||||
ld a,[wList + 1]
|
||||
ld a,[wListPointer + 1]
|
||||
ld d,a
|
||||
inc de ; de = beginning of list entries
|
||||
ld a,[wListScrollOffset]
|
||||
|
@ -1756,7 +1756,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a)
|
|||
.pokemonPCMenu
|
||||
push hl
|
||||
ld hl,wPartyCount
|
||||
ld a,[wList]
|
||||
ld a,[wListPointer]
|
||||
cp l ; is it a list of party pokemon or box pokemon?
|
||||
ld hl,wPartyMonNicks
|
||||
jr z,.getPokemonName
|
||||
|
@ -1801,7 +1801,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a)
|
|||
push af
|
||||
push hl
|
||||
ld hl,wPartyCount
|
||||
ld a,[wList]
|
||||
ld a,[wListPointer]
|
||||
cp l ; is it a list of party pokemon or box pokemon?
|
||||
ld a,$00
|
||||
jr z,.next
|
||||
|
@ -1914,7 +1914,7 @@ GetMonName:: ; 2f9e (0:2f9e)
|
|||
push de
|
||||
ld bc,10
|
||||
call CopyData
|
||||
ld hl,wcd77
|
||||
ld hl,wcd6d + 10
|
||||
ld [hl], "@"
|
||||
pop de
|
||||
pop af
|
||||
|
@ -2090,7 +2090,7 @@ DisableWaitingAfterTextDisplay:: ; 30b6 (0:30b6)
|
|||
; INPUT:
|
||||
; [wcf91] = item ID
|
||||
; OUTPUT:
|
||||
; [wcd6a] = success
|
||||
; [wActionResultOrTookBattleTurn] = success
|
||||
; 00: unsucessful
|
||||
; 01: successful
|
||||
; 02: not able to be used right now, no extra menu displayed (only certain items use this)
|
||||
|
@ -2960,17 +2960,17 @@ HasEnoughCoins::
|
|||
BankswitchHome:: ; 35bc (0:35bc)
|
||||
; switches to bank # in a
|
||||
; Only use this when in the home bank!
|
||||
ld [wcf09],a
|
||||
ld [wBankswitchHomeTemp],a
|
||||
ld a,[H_LOADEDROMBANK]
|
||||
ld [wcf08],a
|
||||
ld a,[wcf09]
|
||||
ld [wBankswitchHomeSavedROMBank],a
|
||||
ld a,[wBankswitchHomeTemp]
|
||||
ld [H_LOADEDROMBANK],a
|
||||
ld [MBC1RomBank],a
|
||||
ret
|
||||
|
||||
BankswitchBack:: ; 35cd (0:35cd)
|
||||
; returns from BankswitchHome
|
||||
ld a,[wcf08]
|
||||
ld a,[wBankswitchHomeSavedROMBank]
|
||||
ld [H_LOADEDROMBANK],a
|
||||
ld [MBC1RomBank],a
|
||||
ret
|
||||
|
@ -4656,7 +4656,7 @@ PrintPredefTextID:: ; 3ef5 (0:3ef5)
|
|||
ld [H_DOWNARROWBLINKCNT2], a
|
||||
ld hl, TextPredefs
|
||||
call SetMapTextPointer
|
||||
ld hl, wcf11
|
||||
ld hl, wTextPredefFlag
|
||||
set 0, [hl]
|
||||
call DisplayTextID
|
||||
|
||||
|
|
|
@ -106,7 +106,7 @@ OverworldLoopLessDelay::
|
|||
bit 0,a
|
||||
jr nz,.checkForOpponent
|
||||
aCoord 8, 9
|
||||
ld [wcf0e],a
|
||||
ld [wTilePlayerStandingOn],a ; unused?
|
||||
call DisplayTextID ; display either the start menu or the NPC/sign text
|
||||
ld a,[wcc47]
|
||||
and a
|
||||
|
@ -1280,7 +1280,7 @@ CheckForJumpingAndTilePairCollisions:: ; 0c2a (0:0c2a)
|
|||
|
||||
CheckForTilePairCollisions2:: ; 0c44 (0:0c44)
|
||||
aCoord 8, 9 ; tile the player is on
|
||||
ld [wcf0e],a
|
||||
ld [wTilePlayerStandingOn],a
|
||||
|
||||
CheckForTilePairCollisions:: ; 0c4a (0:0c4a)
|
||||
ld a,[wTileInFrontOfPlayer]
|
||||
|
@ -1298,7 +1298,7 @@ CheckForTilePairCollisions:: ; 0c4a (0:0c4a)
|
|||
inc hl
|
||||
jr .tilePairCollisionLoop
|
||||
.tilesetMatches
|
||||
ld a,[wcf0e] ; tile the player is on
|
||||
ld a,[wTilePlayerStandingOn] ; tile the player is on
|
||||
ld b,a
|
||||
ld a,[hl]
|
||||
cp b
|
||||
|
|
14
main.asm
14
main.asm
|
@ -808,7 +808,7 @@ HandleItemListSwapping: ; 6b44 (1:6b44)
|
|||
cp a,ITEMLISTMENU
|
||||
jp nz,DisplayListMenuIDLoop ; only rearrange item list menus
|
||||
push hl
|
||||
ld hl,wList
|
||||
ld hl,wListPointer
|
||||
ld a,[hli]
|
||||
ld h,[hl]
|
||||
ld l,a
|
||||
|
@ -854,7 +854,7 @@ HandleItemListSwapping: ; 6b44 (1:6b44)
|
|||
call DelayFrames
|
||||
push hl
|
||||
push de
|
||||
ld hl,wList
|
||||
ld hl,wListPointer
|
||||
ld a,[hli]
|
||||
ld h,[hl]
|
||||
ld l,a
|
||||
|
@ -916,7 +916,7 @@ HandleItemListSwapping: ; 6b44 (1:6b44)
|
|||
jr .done
|
||||
.combineItemSlots
|
||||
ld [hl],a ; put the sum in the second item slot
|
||||
ld hl,wList
|
||||
ld hl,wListPointer
|
||||
ld a,[hli]
|
||||
ld h,[hl]
|
||||
ld l,a
|
||||
|
@ -2065,7 +2065,7 @@ ClearVariablesAfterLoadingMapData: ; c335 (3:4335)
|
|||
ld [hJoyPressed], a
|
||||
ld [hJoyReleased], a
|
||||
ld [hJoyHeld], a
|
||||
ld [wcd6a], a
|
||||
ld [wActionResultOrTookBattleTurn], a
|
||||
ld [wd5a3], a
|
||||
ld hl, wCardKeyDoorY
|
||||
ld [hli], a
|
||||
|
@ -3810,7 +3810,7 @@ AddPartyMon_WriteMovePP: ; f476 (3:7476)
|
|||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
ld a, [wcd72] ; sixth move byte = pp
|
||||
ld a, [wcd6d + 5] ; PP is byte 5 of move data
|
||||
.empty
|
||||
inc de
|
||||
ld [de], a
|
||||
|
@ -4167,12 +4167,12 @@ HealParty:
|
|||
push bc
|
||||
|
||||
ld hl, Moves
|
||||
ld bc, $0006
|
||||
ld bc, 6
|
||||
call AddNTimes
|
||||
ld de, wcd6d
|
||||
ld a, BANK(Moves)
|
||||
call FarCopyData
|
||||
ld a, [wcd72] ; default pp
|
||||
ld a, [wcd6d + 5] ; PP is byte 5 of move data
|
||||
|
||||
pop bc
|
||||
pop de
|
||||
|
|
|
@ -20,11 +20,11 @@ CeruleanHouse2Text1: ; 74e15 (1d:4e15)
|
|||
call PrintText
|
||||
ld hl, BadgeItemList
|
||||
call LoadItemList
|
||||
ld hl, wStringBuffer2 + 11
|
||||
ld hl, wItemList
|
||||
ld a, l
|
||||
ld [wList], a
|
||||
ld [wListPointer], a
|
||||
ld a, h
|
||||
ld [wList + 1], a
|
||||
ld [wListPointer + 1], a
|
||||
xor a
|
||||
ld [wPrintItemPrices], a
|
||||
ld [wMenuItemToSwap], a
|
||||
|
|
83
wram.asm
83
wram.asm
|
@ -852,19 +852,42 @@ wFlags_0xcd60:: ; cd60
|
|||
|
||||
ds 9
|
||||
|
||||
wcd6a:: ds 1 ; used as the output of the outcome of an item (successful, unsuccessful, can't be used now, etc.)
|
||||
wActionResultOrTookBattleTurn:: ; cd6a
|
||||
; This has overlapping related uses.
|
||||
; When the player tries to use an item or use certain field moves, 0 is stored
|
||||
; when the attempt fails and 1 is stored when the attempt succeeds.
|
||||
; In addition, some items store 2 for certain types of failures, but this
|
||||
; cannot happen in battle.
|
||||
; In battle, a non-zero value indicates the player has taken their turn using
|
||||
; something other than a move (e.g. using an item or switching pokemon).
|
||||
; So, when an item is successfully used in battle, this value becomes non-zero
|
||||
; and the player is not allowed to make a move and the two uses are compatible.
|
||||
ds 1
|
||||
|
||||
wJoyIgnore:: ; cd6b
|
||||
; Set buttons are ignored.
|
||||
ds 1
|
||||
|
||||
; as well as the said function, these values are used as a buffer for PlaceString
|
||||
wcd6c:: ds 1 ; used in pokemon status screen and battle stuff
|
||||
wcd6d:: ds 4 ; used solely for PlaceString
|
||||
wcd71:: ds 1 ; used with pokemon status screen
|
||||
wcd72:: ds 5 ; used with restoring PP
|
||||
wcd77:: ds 1 ; used as an end terminator for GetMonName: (@ is written to this location)
|
||||
wcd78:: ds 9 ; also used with restoring PP
|
||||
wDownscaledMonSize:: ; cd6c
|
||||
; size of downscaled mon pic used in pokeball entering/exiting animation
|
||||
; $00 = 5×5
|
||||
; $01 = 3×3
|
||||
|
||||
wNumMovesMinusOne:: ; cd6c
|
||||
; FormatMovesString stores the number of moves minus one here
|
||||
ds 1
|
||||
|
||||
wcd6d:: ds 4 ; buffer for various data
|
||||
|
||||
wStatusScreenCurrentPP:: ; cd71
|
||||
; temp variable used to print a move's current PP on the status screen
|
||||
ds 1
|
||||
|
||||
ds 6
|
||||
|
||||
wNormalMaxPPList:: ; cd78
|
||||
; list of normal max PP (without PP up) values
|
||||
ds 9
|
||||
|
||||
wSerialOtherGameboyRandomNumberListBlock:: ; cd81
|
||||
; buffer for transferring the random number list generated by the other gameboy
|
||||
|
@ -895,15 +918,24 @@ wHPBarHPDifference:: ; cefd
|
|||
ds 1
|
||||
ds 7
|
||||
|
||||
wcf05:: ds 1 ; used with enemy using healing moves
|
||||
wcf06:: ds 1 ; used with healing items as a storage value to store wWhichPokemon
|
||||
wAIItem:: ; cf05
|
||||
; the item that the AI used
|
||||
ds 1
|
||||
|
||||
wUsedItemOnWhichPokemon:: ; cf05
|
||||
ds 1
|
||||
|
||||
wAnimSoundID:: ; cf07
|
||||
; sound ID during battle animations
|
||||
ds 1
|
||||
|
||||
wcf08:: ds 1 ; used as a storage value for the bank to return to after a BankswitchHome (bankswitch in homebank)
|
||||
wcf09:: ds 1 ; used as a temp storage value for the bank to switch to
|
||||
wBankswitchHomeSavedROMBank:: ; cf08
|
||||
; used as a storage value for the bank to return to after a BankswitchHome (bankswitch in homebank)
|
||||
ds 1
|
||||
|
||||
wBankswitchHomeTemp:: ; cf09
|
||||
; used as a temp storage value for the bank to switch to
|
||||
ds 1
|
||||
|
||||
wBoughtOrSoldItemInMart:: ; cf0a
|
||||
; 0 = nothing bought or sold in pokemart
|
||||
|
@ -922,7 +954,11 @@ wAutoTextBoxDrawingControl:: ; cf0c
|
|||
ds 1
|
||||
|
||||
wcf0d:: ds 1 ; used with some overworld scripts (not exactly sure what it's used for)
|
||||
wcf0e:: ds 1 ; used with some overworld collison check
|
||||
|
||||
wTilePlayerStandingOn:: ; cf0e
|
||||
; used in CheckForTilePairCollisions2 to store the tile the player is on
|
||||
ds 1
|
||||
|
||||
wcf0f:: ds 1 ; used with moving overworld sprites
|
||||
|
||||
wNPCMovementScriptFunctionNum:: ; cf10
|
||||
|
@ -930,7 +966,10 @@ wNPCMovementScriptFunctionNum:: ; cf10
|
|||
; wNPCMovementScriptPointerTableNum
|
||||
ds 1
|
||||
|
||||
wcf11:: ds 1 ; used as a flag if the game needs to switch to the bank which the map is in when displaying a text id (flag is set during predefs)
|
||||
wTextPredefFlag:: ; cf11
|
||||
; bit 0: set when printing a text predef so that DisplayTextID doesn't switch
|
||||
; to the current map's bank
|
||||
ds 1
|
||||
|
||||
wPredefParentBank:: ; cf12
|
||||
ds 1
|
||||
|
@ -972,15 +1011,15 @@ wGainBoostedExp:: ; cf4d
|
|||
ds 17
|
||||
|
||||
wGymCityName:: ; cf5f
|
||||
wStringBuffer1:: ; cf5f
|
||||
ds 16 + 1
|
||||
wGymLeaderName:: ; cf70
|
||||
wStringBuffer2:: ; cf70
|
||||
ds 16 + 1
|
||||
wStringBuffer3:: ; cf81
|
||||
ds 9 + 1
|
||||
ds 17
|
||||
|
||||
wList:: ; cf8b
|
||||
wGymLeaderName:: ; cf70
|
||||
ds 11
|
||||
|
||||
wItemList:: ; cf7b
|
||||
ds 16
|
||||
|
||||
wListPointer:: ; cf8b
|
||||
ds 2
|
||||
|
||||
wcf8d:: ds 1 ; used in GetMonName
|
||||
|
|
Loading…
Reference in a new issue