Cleanup, and added new RAM variables (and changed some others).

hg-commit-id: 91fe5cdac0f3
This commit is contained in:
IIMarckus 2011-12-27 20:04:33 -07:00
parent b87848642c
commit fa9c66dc63
2 changed files with 40 additions and 36 deletions

View file

@ -81,12 +81,17 @@ W_OPPONENTSTATUS EQU $CFE9 ; active opponent's status condition
W_TRAINERCLASS EQU $D031 W_TRAINERCLASS EQU $D031
W_BATTLETYPE EQU $D057 ; in a wild battle, this is 1 W_ISINBATTLE EQU $D057 ; no battle, this is 0
; in a trainer battle, this is 2 ; wild battle, this is 1
; trainer battle, this is 2
W_CUROPPONENT EQU $D059 ; in a wild battle, this is the species of pokemon W_CUROPPONENT EQU $D059 ; in a wild battle, this is the species of pokemon
; in a trainer battle, this is the trainer class + $C8 ; 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_LONEATTACKNO EQU $D05C ; which entry in LoneAttacks to use
W_TRAINERNO EQU $D05D ; which instance of [youngster, lass, etc] is this? 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_PLAYERNAME EQU $D158 ; 11 characters, including null
W_NUMINPARTY EQU $D163
W_RIVALNAME EQU $D34A ; 11 characters, including null W_RIVALNAME EQU $D34A ; 11 characters, including null
W_CURMAP EQU $D35E W_CURMAP EQU $D35E
@ -138,6 +145,10 @@ W_ENEMYMON5MOVE3 EQU $D95E
W_ENEMYMON6MOVE3 EQU $D98A W_ENEMYMON6MOVE3 EQU $D98A
W_NUMSAFARIBALLS EQU $DA47
W_NUMINBOX EQU $DA80
H_RAND1 EQU $FFD3 H_RAND1 EQU $FFD3
H_RAND2 EQU $FFD4 H_RAND2 EQU $FFD4

View file

@ -735,7 +735,8 @@ Char55Text:
db "@" db "@"
Char5F: Char5F:
ld [hl],$E8 ; . ; ends a Pokédex entry
ld [hl],"."
pop hl pop hl
ret ret
@ -1823,7 +1824,7 @@ MainMenu:
ld a,[$D5A2] ld a,[$D5A2]
and a and a
jp z,$5D5F jp z,$5D5F
ld a,[$D35E] ; map ID ld a,[W_CURMAP] ; map ID
cp a,$76 ; Hall of Fame cp a,$76 ; Hall of Fame
jp nz,$5D5F jp nz,$5D5F
xor a xor a
@ -4224,38 +4225,30 @@ ItemUsePtrTable: ;$D5E1
dw $631E dw $631E
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 ItemUseBall: ;03:5687
ld a,[$d057] ld a,[W_ISINBATTLE]
and a and a
jp z,$6581 jp z,ItemUseNotTime ; not in battle
dec a dec a
jp nz,$658b jp nz,$658b ; in trainer battle
ld a,[$d05a] ld a,[W_BATTLETYPE]
dec a dec a
jr z,.next\@ jr z,.UseBall\@
ld a,[$d163] ;is Party full? ld a,[W_NUMINPARTY] ;is Party full?
cp a,6 cp a,6
jr nz,.next\@ jr nz,.UseBall\@
ld a,[$da80] ;is Box full? ld a,[W_NUMINBOX] ;is Box full?
cp a,20 cp a,20
jp z,$65b1 jp z,$65b1
.next\@ ;$56a7 .UseBall\@ ;$56a7
;ok, you can use a ball ;ok, you can use a ball
xor a xor a
ld [$d11c],a ld [$d11c],a
ld a,[$d05a] ld a,[W_BATTLETYPE]
cp a,2 ;SafariBattle cp a,2 ;SafariBattle
jr nz,.next2\@ jr nz,.next2\@
ld hl,$da47 ;dec SafariBall's num ; remove a Safari Ball from inventory
ld hl,W_NUMSAFARIBALLS
dec [hl] dec [hl]
.next2\@ ;$56b6 .next2\@ ;$56b6
call GoPAL_SET_CF1C call GoPAL_SET_CF1C
@ -4269,16 +4262,16 @@ ItemUseBall: ;03:5687
call Bankswitch call Bankswitch
ld b,$10 ld b,$10
jp z,$5801 jp z,$5801
ld a,[$d05a] ld a,[W_BATTLETYPE]
dec a dec a
jr nz,.next3\@ jr nz,.next3\@
ld hl,W_GRASSRATE ;backups wildMon data ld hl,W_GRASSRATE ;backups wildMon data
ld de,$d158 ld de,W_PLAYERNAME
ld bc,11 ld bc,11
call CopyData call CopyData
jp .BallSuccess\@ ;$578b jp .BallSuccess\@ ;$578b
.next3\@ ;$56e9 .next3\@ ;$56e9
ld a,[$d35e] ld a,[W_CURMAP]
cp a,$93 ;MonTower 6F cp a,$93 ;MonTower 6F
jr nz,.next4\@ jr nz,.next4\@
ld a,[$cfd8] ld a,[$cfd8]
@ -4516,7 +4509,7 @@ ItemUseBall: ;03:5687
ld [$d11c],a ld [$d11c],a
ld [$cf91],a ld [$cf91],a
ld [$d11e],a ld [$d11e],a
ld a,[$d05a] ld a,[W_BATTLETYPE]
dec a dec a
jr z,.printText1\@ jr z,.printText1\@
ld hl,ItemUseBallText05 ld hl,ItemUseBallText05
@ -4549,7 +4542,7 @@ ItemUseBall: ;03:5687
ld a,$3d ld a,$3d
call Predef call Predef
.checkParty\@ ;$58f4 .checkParty\@ ;$58f4
ld a,[$d163] ;nbr of mon in party ld a,[W_NUMINPARTY]
cp a,6 ;is party full? cp a,6 ;is party full?
jr z,.sendToBox\@ jr z,.sendToBox\@
xor a xor a
@ -4574,7 +4567,7 @@ ItemUseBall: ;03:5687
call PrintText call PrintText
call CleanLCD_OAM call CleanLCD_OAM
.End\@ ;$5928 .End\@ ;$5928
ld a,[$d05a] ld a,[W_BATTLETYPE]
and a and a
ret nz ret nz
ld hl,$d31d ld hl,$d31d
@ -4625,7 +4618,7 @@ ItemUseBallText06:
db "@" db "@"
ItemUseTownMap: ;03:5968 ItemUseTownMap: ;03:5968
ld a,[$d057] ;in-battle or outside ld a,[W_ISINBATTLE] ;in-battle or outside
and a and a
jp nz,ItemUseNotTime ;OAK: "this isn't the time..." jp nz,ItemUseNotTime ;OAK: "this isn't the time..."
@ -4633,7 +4626,7 @@ INCBIN "baserom.gbc",$D96F,$E259 - $D96F
GoodRodCode: ; 6259 GoodRodCode: ; 6259
call $62B4 call $62B4
jp c,$6581 jp c,ItemUseNotTime
Next625F: Next625F:
call GenRandom call GenRandom
srl a srl a
@ -4663,7 +4656,7 @@ GoodRodMons:
Next6283: Next6283:
call $62B4 call $62B4
jp c,$6581 jp c,ItemUseNotTime
Next6289: Next6289:
call $68EA call $68EA
ld a,e ld a,e
@ -7148,7 +7141,7 @@ LanceData:
TrainerAI: ; 652E TrainerAI: ; 652E
;XXX called at 34964, 3c342, 3c398 ;XXX called at 34964, 3c342, 3c398
and a and a
ld a,[W_BATTLETYPE] ld a,[W_ISINBATTLE]
dec a dec a
ret z ; if not a trainer, we're done here ret z ; if not a trainer, we're done here
ld a,[W_ISLINKBATTLE] ld a,[W_ISLINKBATTLE]
@ -9922,7 +9915,7 @@ EnemySendOut: ; 490E
ld a,[$D11D] ld a,[$D11D]
dec a dec a
jr z,.next4\@ jr z,.next4\@
ld a,[$D163] ld a,[W_NUMINPARTY]
dec a dec a
jr z,.next4\@ jr z,.next4\@
ld a,[$D12B] ld a,[$D12B]
@ -13473,7 +13466,7 @@ MoveSoundTable:
INCBIN "baserom.gbc",$79AAE,$79E16 - $79AAE INCBIN "baserom.gbc",$79AAE,$79E16 - $79AAE
TossBallAnimation: ; 5E16 TossBallAnimation: ; 5E16
ld a,[W_BATTLETYPE] ld a,[W_ISINBATTLE]
cp a,2 cp a,2
jr z,.BlockBall\@ ; if in trainer battle, play different animation jr z,.BlockBall\@ ; if in trainer battle, play different animation
ld a,[$D11E] ld a,[$D11E]