diff options
author | IIMarckus <iimarckus@gmail.com> | 2011-12-27 20:04:33 -0700 |
---|---|---|
committer | IIMarckus <iimarckus@gmail.com> | 2011-12-27 20:04:33 -0700 |
commit | fa9c66dc639cbbbd8809fcd98f6be6cde731e1f0 (patch) | |
tree | db69b7507ba846de97664fef87798afafb76cca3 | |
parent | b87848642c3ca215c5cd2ea3f28a5c977d7b1af6 (diff) |
Cleanup, and added new RAM variables (and changed some others).
hg-commit-id: 91fe5cdac0f3
-rw-r--r-- | constants.asm | 15 | ||||
-rw-r--r-- | pokered.asm | 61 |
2 files changed, 40 insertions, 36 deletions
diff --git a/constants.asm b/constants.asm index df508113..ddd11f8b 100644 --- a/constants.asm +++ b/constants.asm @@ -81,12 +81,17 @@ W_OPPONENTSTATUS EQU $CFE9 ; active opponent's status condition W_TRAINERCLASS EQU $D031 -W_BATTLETYPE EQU $D057 ; in a wild battle, this is 1 - ; in a trainer battle, this is 2 +W_ISINBATTLE EQU $D057 ; no battle, this is 0 + ; wild battle, this is 1 + ; trainer battle, this is 2 W_CUROPPONENT EQU $D059 ; in a wild battle, this is the species of pokemon ; in a trainer battle, this is the trainer class + $C8 +W_BATTLETYPE EQU $D05A ; in normal battle, this is 0 + ; in old man battle, this is 1 + ; in safari battle, this is 2 + W_LONEATTACKNO EQU $D05C ; which entry in LoneAttacks to use W_TRAINERNO EQU $D05D ; which instance of [youngster, lass, etc] is this? @@ -106,6 +111,8 @@ W_ISLINKBATTLE EQU $D12B W_PLAYERNAME EQU $D158 ; 11 characters, including null +W_NUMINPARTY EQU $D163 + W_RIVALNAME EQU $D34A ; 11 characters, including null W_CURMAP EQU $D35E @@ -138,6 +145,10 @@ W_ENEMYMON5MOVE3 EQU $D95E W_ENEMYMON6MOVE3 EQU $D98A +W_NUMSAFARIBALLS EQU $DA47 + +W_NUMINBOX EQU $DA80 + H_RAND1 EQU $FFD3 H_RAND2 EQU $FFD4 diff --git a/pokered.asm b/pokered.asm index 62b7574e..1cc6a733 100644 --- a/pokered.asm +++ b/pokered.asm @@ -735,7 +735,8 @@ Char55Text: db "@" Char5F: - ld [hl],$E8 ; . +; ends a Pokédex entry + ld [hl],"." pop hl ret @@ -1823,7 +1824,7 @@ MainMenu: ld a,[$D5A2] and a jp z,$5D5F - ld a,[$D35E] ; map ID + ld a,[W_CURMAP] ; map ID cp a,$76 ; Hall of Fame jp nz,$5D5F xor a @@ -4224,38 +4225,30 @@ ItemUsePtrTable: ;$D5E1 dw $631E dw $631E - -;[$D057]==0 -> OutsideBattle -;[$D057]==1 -> WildBattle -;[$D057]==2 -> TrainerBattle - -;[$D05A]==0 -> NormalBattle -;[$D05A]==1 -> OldManExampleBattle -;[$D05A]==2 -> SafariBattle - ItemUseBall: ;03:5687 - ld a,[$d057] + ld a,[W_ISINBATTLE] and a - jp z,$6581 + jp z,ItemUseNotTime ; not in battle dec a - jp nz,$658b - ld a,[$d05a] + jp nz,$658b ; in trainer battle + ld a,[W_BATTLETYPE] dec a - jr z,.next\@ - ld a,[$d163] ;is Party full? + jr z,.UseBall\@ + ld a,[W_NUMINPARTY] ;is Party full? cp a,6 - jr nz,.next\@ - ld a,[$da80] ;is Box full? + jr nz,.UseBall\@ + ld a,[W_NUMINBOX] ;is Box full? cp a,20 jp z,$65b1 -.next\@ ;$56a7 +.UseBall\@ ;$56a7 ;ok, you can use a ball xor a ld [$d11c],a - ld a,[$d05a] + ld a,[W_BATTLETYPE] cp a,2 ;SafariBattle jr nz,.next2\@ - ld hl,$da47 ;dec SafariBall's num + ; remove a Safari Ball from inventory + ld hl,W_NUMSAFARIBALLS dec [hl] .next2\@ ;$56b6 call GoPAL_SET_CF1C @@ -4269,16 +4262,16 @@ ItemUseBall: ;03:5687 call Bankswitch ld b,$10 jp z,$5801 - ld a,[$d05a] + ld a,[W_BATTLETYPE] dec a jr nz,.next3\@ ld hl,W_GRASSRATE ;backups wildMon data - ld de,$d158 + ld de,W_PLAYERNAME ld bc,11 call CopyData jp .BallSuccess\@ ;$578b .next3\@ ;$56e9 - ld a,[$d35e] + ld a,[W_CURMAP] cp a,$93 ;MonTower 6F jr nz,.next4\@ ld a,[$cfd8] @@ -4516,7 +4509,7 @@ ItemUseBall: ;03:5687 ld [$d11c],a ld [$cf91],a ld [$d11e],a - ld a,[$d05a] + ld a,[W_BATTLETYPE] dec a jr z,.printText1\@ ld hl,ItemUseBallText05 @@ -4549,7 +4542,7 @@ ItemUseBall: ;03:5687 ld a,$3d call Predef .checkParty\@ ;$58f4 - ld a,[$d163] ;nbr of mon in party + ld a,[W_NUMINPARTY] cp a,6 ;is party full? jr z,.sendToBox\@ xor a @@ -4574,7 +4567,7 @@ ItemUseBall: ;03:5687 call PrintText call CleanLCD_OAM .End\@ ;$5928 - ld a,[$d05a] + ld a,[W_BATTLETYPE] and a ret nz ld hl,$d31d @@ -4625,7 +4618,7 @@ ItemUseBallText06: db "@" ItemUseTownMap: ;03:5968 - ld a,[$d057] ;in-battle or outside + ld a,[W_ISINBATTLE] ;in-battle or outside and a jp nz,ItemUseNotTime ;OAK: "this isn't the time..." @@ -4633,7 +4626,7 @@ INCBIN "baserom.gbc",$D96F,$E259 - $D96F GoodRodCode: ; 6259 call $62B4 - jp c,$6581 + jp c,ItemUseNotTime Next625F: call GenRandom srl a @@ -4663,7 +4656,7 @@ GoodRodMons: Next6283: call $62B4 - jp c,$6581 + jp c,ItemUseNotTime Next6289: call $68EA ld a,e @@ -7148,7 +7141,7 @@ LanceData: TrainerAI: ; 652E ;XXX called at 34964, 3c342, 3c398 and a - ld a,[W_BATTLETYPE] + ld a,[W_ISINBATTLE] dec a ret z ; if not a trainer, we're done here ld a,[W_ISLINKBATTLE] @@ -9922,7 +9915,7 @@ EnemySendOut: ; 490E ld a,[$D11D] dec a jr z,.next4\@ - ld a,[$D163] + ld a,[W_NUMINPARTY] dec a jr z,.next4\@ ld a,[$D12B] @@ -13473,7 +13466,7 @@ MoveSoundTable: INCBIN "baserom.gbc",$79AAE,$79E16 - $79AAE TossBallAnimation: ; 5E16 - ld a,[W_BATTLETYPE] + ld a,[W_ISINBATTLE] cp a,2 jr z,.BlockBall\@ ; if in trainer battle, play different animation ld a,[$D11E] |