mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-09-09 09:51:34 -07:00
commit
a238e4bd55
@ -3249,6 +3249,8 @@ MUSIC_SUICUNE_BATTLE EQU 100
|
||||
MUSIC_BATTLE_TOWER_LOBBY EQU 101
|
||||
MUSIC_MOBILE_CENTER EQU 102
|
||||
|
||||
MUSIC_MAHOGANY_MART EQU 100 ; grandfathered from gold
|
||||
|
||||
; sound
|
||||
_4CH1 EQU $c0
|
||||
_3CH1 EQU $80
|
||||
@ -3416,6 +3418,30 @@ BATTLETYPE_FORCEITEM EQU $0a
|
||||
BATTLETYPE_SUICUNE EQU $0c
|
||||
|
||||
|
||||
; battle variables
|
||||
BATTLE_VARS_SUBSTATUS1 EQU 0
|
||||
BATTLE_VARS_SUBSTATUS2 EQU 1
|
||||
BATTLE_VARS_SUBSTATUS3 EQU 2
|
||||
BATTLE_VARS_SUBSTATUS4 EQU 3
|
||||
BATTLE_VARS_SUBSTATUS5 EQU 4
|
||||
BATTLE_VARS_SUBSTATUS1_OPP EQU 5
|
||||
BATTLE_VARS_SUBSTATUS2_OPP EQU 6
|
||||
BATTLE_VARS_SUBSTATUS3_OPP EQU 7
|
||||
BATTLE_VARS_SUBSTATUS4_OPP EQU 8
|
||||
BATTLE_VARS_SUBSTATUS5_OPP EQU 9
|
||||
BATTLE_VARS_STATUS EQU 10
|
||||
BATTLE_VARS_STATUS_OPP EQU 11
|
||||
BATTLE_VARS_MOVE_ANIM EQU 12
|
||||
BATTLE_VARS_MOVE_EFFECT EQU 13
|
||||
BATTLE_VARS_MOVE_POWER EQU 14
|
||||
BATTLE_VARS_MOVE_TYPE EQU 15
|
||||
BATTLE_VARS_MOVE EQU 16
|
||||
BATTLE_VARS_LAST_COUNTER_MOVE EQU 17
|
||||
BATTLE_VARS_LAST_COUNTER_MOVE_OPP EQU 18
|
||||
BATTLE_VARS_LAST_MOVE EQU 19
|
||||
BATTLE_VARS_LAST_MOVE_OPP EQU 20
|
||||
|
||||
|
||||
; joypad
|
||||
BUTTONS EQU %00010000
|
||||
D_PAD EQU %00100000
|
||||
|
25
main.asm
25
main.asm
@ -3415,7 +3415,21 @@ GetPartyLocation: ; 3927
|
||||
jp AddNTimes
|
||||
; 392d
|
||||
|
||||
INCBIN "baserom.gbc",$392d,$3b86 - $392d
|
||||
INCBIN "baserom.gbc", $392d, $3985 - $392d
|
||||
|
||||
SetPlayerTurn: ; 3985
|
||||
xor a
|
||||
ld [hBattleTurn], a
|
||||
ret
|
||||
; 3989
|
||||
|
||||
SetEnemyTurn: ; 3989
|
||||
ld a, 1
|
||||
ld [hBattleTurn], a
|
||||
ret
|
||||
; 398e
|
||||
|
||||
INCBIN "baserom.gbc", $398e, $3b86 - $398e
|
||||
|
||||
LoadMusicByte: ; 3b86
|
||||
; load music data into CurMusicByte
|
||||
@ -11200,7 +11214,14 @@ INCBIN "baserom.gbc", $91fff, $92168 - $91fff
|
||||
KantoMap:
|
||||
INCBIN "baserom.gbc", $92168, $922d1 - $92168
|
||||
|
||||
INCBIN "baserom.gbc", $922d1, $93a31 - $922d1
|
||||
|
||||
INCBIN "baserom.gbc", $922d1, $92402 - $922d1
|
||||
|
||||
|
||||
INCLUDE "stats/wild/fish.asm"
|
||||
|
||||
|
||||
INCBIN "baserom.gbc", $926c7, $93a31 - $926c7
|
||||
|
||||
|
||||
SECTION "bank25",DATA,BANK[$25]
|
||||
|
502
stats/wild/fish.asm
Normal file
502
stats/wild/fish.asm
Normal file
@ -0,0 +1,502 @@
|
||||
FishAction: ; 92402
|
||||
; Using a fishing rod.
|
||||
; Fish for monsters with rod e in encounter group d.
|
||||
; Return monster e at level d.
|
||||
|
||||
push af
|
||||
push bc
|
||||
push hl
|
||||
|
||||
; Get the fishing group for this map.
|
||||
ld b, e
|
||||
call GetFishGroupHeader
|
||||
|
||||
ld hl, FishGroupHeaders
|
||||
; encounter chance
|
||||
add hl, de
|
||||
; pointer to old rod data
|
||||
add hl, de
|
||||
add hl, de
|
||||
; pointer to good rod data
|
||||
add hl, de
|
||||
add hl, de
|
||||
; pointer to super rod data
|
||||
add hl, de
|
||||
add hl, de
|
||||
|
||||
call Fish
|
||||
|
||||
pop hl
|
||||
pop bc
|
||||
pop af
|
||||
ret
|
||||
; 9241a
|
||||
|
||||
|
||||
Fish: ; 9241a
|
||||
; Grandfathered from Red.
|
||||
|
||||
; Fish for monsters with rod b from encounter data in FishGroup at hl.
|
||||
; Return monster e at level d.
|
||||
|
||||
call RNG
|
||||
|
||||
; Got a bite?
|
||||
cp [hl]
|
||||
jr nc, .NoBite
|
||||
|
||||
; Get encounter data by rod:
|
||||
; 0: Old
|
||||
; 1: Good
|
||||
; 2: Super
|
||||
inc hl
|
||||
ld e, b
|
||||
ld d, 0
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
|
||||
; Encounter chance for this monster:
|
||||
call RNG
|
||||
|
||||
.CheckEncounter
|
||||
cp [hl]
|
||||
jr z, .ReadMon
|
||||
jr c, .ReadMon
|
||||
|
||||
; Next monster...
|
||||
inc hl
|
||||
inc hl
|
||||
inc hl
|
||||
jr .CheckEncounter
|
||||
|
||||
.ReadMon
|
||||
; We're done with the encounter chance
|
||||
inc hl
|
||||
|
||||
; Species 0 triggers a read from a time-based encounter table.
|
||||
ld a, [hli]
|
||||
ld d, a
|
||||
and a
|
||||
call z, .TimeEncounter
|
||||
|
||||
; Level
|
||||
ld e, [hl]
|
||||
ret
|
||||
|
||||
.NoBite
|
||||
ld de, 0
|
||||
ret
|
||||
|
||||
.TimeEncounter
|
||||
|
||||
; The level byte is repurposed as the index for the new table.
|
||||
ld e, [hl]
|
||||
ld d, 0
|
||||
ld hl, TimeFishGroups
|
||||
add hl, de
|
||||
add hl, de
|
||||
add hl, de
|
||||
add hl, de
|
||||
|
||||
; One nightmon, then one daymon
|
||||
ld a, [TimeOfDay]
|
||||
and 3
|
||||
cp NITE
|
||||
jr c, .TimeSpecies
|
||||
inc hl
|
||||
inc hl
|
||||
|
||||
.TimeSpecies
|
||||
ld d, [hl]
|
||||
inc hl
|
||||
ret
|
||||
; 9245b
|
||||
|
||||
|
||||
|
||||
|
||||
GetFishGroupHeader: ; 9245b
|
||||
; Return fishing encounter group header d in de.
|
||||
|
||||
push hl
|
||||
ld hl, $dc1e
|
||||
bit 2, [hl]
|
||||
pop hl
|
||||
jr z, .end
|
||||
|
||||
; Groups 11 and 12 have special attributes.
|
||||
ld a, d
|
||||
cp 11
|
||||
jr z, .group11
|
||||
cp 12
|
||||
jr z, .group12
|
||||
|
||||
.end
|
||||
dec d
|
||||
ld e, d
|
||||
ld d, 0
|
||||
ret
|
||||
|
||||
.group11
|
||||
ld a, [$dfce]
|
||||
cp 1
|
||||
jr nz, .end
|
||||
ld d, 6
|
||||
jr .end
|
||||
|
||||
.group12
|
||||
ld a, [$dfce]
|
||||
cp 2
|
||||
jr nz, .end
|
||||
ld d, 7
|
||||
jr .end
|
||||
; 92488
|
||||
|
||||
|
||||
FishGroupHeaders:
|
||||
|
||||
FishGroup1Header: ; 92488
|
||||
db $80 ; 50%
|
||||
dw FishGroup1_Old
|
||||
dw FishGroup1_Good
|
||||
dw FishGroup1_Super
|
||||
|
||||
FishGroup2Header: ; 9248f
|
||||
db $80 ; 50%
|
||||
dw FishGroup2_Old
|
||||
dw FishGroup2_Good
|
||||
dw FishGroup2_Super
|
||||
|
||||
FishGroup3Header: ; 92496
|
||||
db $80 ; 50%
|
||||
dw FishGroup3_Old
|
||||
dw FishGroup3_Good
|
||||
dw FishGroup3_Super
|
||||
|
||||
FishGroup4Header: ; 9249d
|
||||
db $80 ; 50%
|
||||
dw FishGroup4_Old
|
||||
dw FishGroup4_Good
|
||||
dw FishGroup4_Super
|
||||
|
||||
FishGroup5Header: ; 924a4
|
||||
db $80 ; 50%
|
||||
dw FishGroup5_Old
|
||||
dw FishGroup5_Good
|
||||
dw FishGroup5_Super
|
||||
|
||||
FishGroup6Header: ; 924ab
|
||||
db $80 ; 50%
|
||||
dw FishGroup6_Old
|
||||
dw FishGroup6_Good
|
||||
dw FishGroup6_Super
|
||||
|
||||
FishGroup7Header: ; 924b2
|
||||
db $80 ; 50%
|
||||
dw FishGroup7_Old
|
||||
dw FishGroup7_Good
|
||||
dw FishGroup7_Super
|
||||
|
||||
FishGroup8Header: ; 924b9
|
||||
db $80 ; 50%
|
||||
dw FishGroup8_Old
|
||||
dw FishGroup8_Good
|
||||
dw FishGroup8_Super
|
||||
|
||||
FishGroup9Header: ; 924c0
|
||||
db $80 ; 50%
|
||||
dw FishGroup9_Old
|
||||
dw FishGroup9_Good
|
||||
dw FishGroup9_Super
|
||||
|
||||
FishGroup10Header: ; 924c7
|
||||
db $80 ; 50%
|
||||
dw FishGroup10_Old
|
||||
dw FishGroup10_Good
|
||||
dw FishGroup10_Super
|
||||
|
||||
FishGroup11Header: ; 924ce
|
||||
db $80 ; 50%
|
||||
dw FishGroup11_Old
|
||||
dw FishGroup11_Good
|
||||
dw FishGroup11_Super
|
||||
|
||||
FishGroup12Header: ; 924d5
|
||||
db $80 ; 50%
|
||||
dw FishGroup12_Old
|
||||
dw FishGroup12_Good
|
||||
dw FishGroup12_Super
|
||||
|
||||
FishGroup13Header: ; 924dc
|
||||
db $80 ; 50%
|
||||
dw FishGroup11_Old
|
||||
dw FishGroup11_Good
|
||||
dw FishGroup11_Super
|
||||
|
||||
FishGroup1:
|
||||
FishGroup1_Old: ; 924e3
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, KRABBY, 10
|
||||
FishGroup1_Good: ; 924ec
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, KRABBY, 20
|
||||
db $e6, KRABBY, 20
|
||||
db $ff, $0, 0
|
||||
FishGroup1_Super: ; 924f8
|
||||
db $66, KRABBY, 40
|
||||
db $b2, $0, 1
|
||||
db $e6, KRABBY, 40
|
||||
db $ff, KINGLER, 40
|
||||
|
||||
FishGroup2:
|
||||
FishGroup2_Old: ; 92504
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, TENTACOOL, 10
|
||||
FishGroup2_Good: ; 9250d
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, TENTACOOL, 20
|
||||
db $e6, CHINCHOU, 20
|
||||
db $ff, $0, 2
|
||||
FishGroup2_Super: ; 92519
|
||||
db $66, CHINCHOU, 40
|
||||
db $b2, $0, 3
|
||||
db $e6, TENTACRUEL, 40
|
||||
db $ff, LANTURN, 40
|
||||
|
||||
FishGroup3:
|
||||
FishGroup3_Old: ; 92525
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, GOLDEEN, 10
|
||||
FishGroup3_Good: ; 9252e
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, GOLDEEN, 20
|
||||
db $e6, GOLDEEN, 20
|
||||
db $ff, $0, 4
|
||||
FishGroup3_Super: ; 9253a
|
||||
db $66, GOLDEEN, 40
|
||||
db $b2, $0, 5
|
||||
db $e6, MAGIKARP, 40
|
||||
db $ff, SEAKING, 40
|
||||
|
||||
FishGroup4:
|
||||
FishGroup4_Old: ; 92546
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, POLIWAG, 10
|
||||
FishGroup4_Good: ; 9254f
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, POLIWAG, 20
|
||||
db $e6, POLIWAG, 20
|
||||
db $ff, $0, 6
|
||||
FishGroup4_Super: ; 9255b
|
||||
db $66, POLIWAG, 40
|
||||
db $b2, $0, 7
|
||||
db $e6, MAGIKARP, 40
|
||||
db $ff, POLIWAG, 40
|
||||
|
||||
FishGroup5:
|
||||
FishGroup5_Old: ; 92567
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, MAGIKARP, 10
|
||||
FishGroup5_Good: ; 92570
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, MAGIKARP, 20
|
||||
db $e6, MAGIKARP, 20
|
||||
db $ff, $0, 8
|
||||
FishGroup5_Super: ; 9257c
|
||||
db $66, MAGIKARP, 40
|
||||
db $b2, $0, 9
|
||||
db $e6, MAGIKARP, 40
|
||||
db $ff, DRAGONAIR, 40
|
||||
|
||||
FishGroup6:
|
||||
FishGroup6_Old: ; 92588
|
||||
db $b3, MAGIKARP, 5
|
||||
db $d9, MAGIKARP, 5
|
||||
db $ff, QWILFISH, 5
|
||||
FishGroup6_Good: ; 92591
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, QWILFISH, 20
|
||||
db $e6, QWILFISH, 20
|
||||
db $ff, $0, 10
|
||||
FishGroup6_Super: ; 9259d
|
||||
db $66, QWILFISH, 40
|
||||
db $b2, $0, 11
|
||||
db $e6, QWILFISH, 40
|
||||
db $ff, QWILFISH, 40
|
||||
|
||||
FishGroup7:
|
||||
FishGroup7_Old: ; 925a9
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, REMORAID, 10
|
||||
FishGroup7_Good: ; 925b2
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, REMORAID, 20
|
||||
db $e6, REMORAID, 20
|
||||
db $ff, $0, 12
|
||||
FishGroup7_Super: ; 925be
|
||||
db $66, REMORAID, 40
|
||||
db $b2, $0, 13
|
||||
db $e6, REMORAID, 40
|
||||
db $ff, REMORAID, 40
|
||||
|
||||
FishGroup8:
|
||||
FishGroup8_Old: ; 925ca
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, MAGIKARP, 10
|
||||
FishGroup8_Good: ; 925d3
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, MAGIKARP, 20
|
||||
db $e6, MAGIKARP, 20
|
||||
db $ff, $0, 14
|
||||
FishGroup8_Super: ; 925df
|
||||
db $66, MAGIKARP, 40
|
||||
db $b2, $0, 15
|
||||
db $e6, MAGIKARP, 40
|
||||
db $ff, MAGIKARP, 40
|
||||
|
||||
FishGroup9:
|
||||
FishGroup9_Old: ; 925eb
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, MAGIKARP, 10
|
||||
FishGroup9_Good: ; 925f4
|
||||
db $59, MAGIKARP, 10
|
||||
db $b2, MAGIKARP, 10
|
||||
db $e6, MAGIKARP, 10
|
||||
db $ff, $0, 16
|
||||
FishGroup9_Super: ; 92600
|
||||
db $66, MAGIKARP, 10
|
||||
db $b2, $0, 17
|
||||
db $e6, MAGIKARP, 10
|
||||
db $ff, DRAGONAIR, 10
|
||||
|
||||
FishGroup10:
|
||||
FishGroup10_Old: ; 9260c
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, KRABBY, 10
|
||||
FishGroup10_Good: ; 92615
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, KRABBY, 20
|
||||
db $e6, KRABBY, 20
|
||||
db $ff, $0, 18
|
||||
FishGroup10_Super: ; 92621
|
||||
db $66, KRABBY, 40
|
||||
db $b2, $0, 19
|
||||
db $e6, KINGLER, 40
|
||||
db $ff, SEADRA, 40
|
||||
|
||||
FishGroup11:
|
||||
FishGroup11_Old: ; 9262d
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, TENTACOOL, 10
|
||||
FishGroup11_Good: ; 92636
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, TENTACOOL, 20
|
||||
db $e6, TENTACOOL, 20
|
||||
db $ff, $0, 20
|
||||
FishGroup11_Super: ; 92642
|
||||
db $66, TENTACOOL, 40
|
||||
db $b2, $0, 21
|
||||
db $e6, MAGIKARP, 40
|
||||
db $ff, QWILFISH, 40
|
||||
|
||||
FishGroup12:
|
||||
FishGroup12_Old: ; 9264e
|
||||
db $b3, MAGIKARP, 10
|
||||
db $d9, MAGIKARP, 10
|
||||
db $ff, POLIWAG, 10
|
||||
FishGroup12_Good: ; 92657
|
||||
db $59, MAGIKARP, 20
|
||||
db $b2, POLIWAG, 20
|
||||
db $e6, POLIWAG, 20
|
||||
db $ff, $0, 6
|
||||
FishGroup12_Super: ; 92663
|
||||
db $66, POLIWAG, 40
|
||||
db $b2, $0, 7
|
||||
db $e6, MAGIKARP, 40
|
||||
db $ff, REMORAID, 40
|
||||
|
||||
; 9266f
|
||||
|
||||
TimeFishGroups: ; 9266f
|
||||
; 0
|
||||
db CORSOLA, 20 ; nite
|
||||
db STARYU, 20 ; day
|
||||
; 1
|
||||
db CORSOLA, 40 ; nite
|
||||
db STARYU, 40 ; day
|
||||
; 2
|
||||
db SHELLDER, 20 ; nite
|
||||
db SHELLDER, 20 ; day
|
||||
; 3
|
||||
db SHELLDER, 40 ; nite
|
||||
db SHELLDER, 40 ; day
|
||||
; 4
|
||||
db GOLDEEN, 20 ; nite
|
||||
db GOLDEEN, 20 ; day
|
||||
; 5
|
||||
db GOLDEEN, 40 ; nite
|
||||
db GOLDEEN, 40 ; day
|
||||
; 6
|
||||
db POLIWAG, 20 ; nite
|
||||
db POLIWAG, 20 ; day
|
||||
; 7
|
||||
db POLIWAG, 40 ; nite
|
||||
db POLIWAG, 40 ; day
|
||||
; 8
|
||||
db DRATINI, 20 ; nite
|
||||
db DRATINI, 20 ; day
|
||||
; 9
|
||||
db DRATINI, 40 ; nite
|
||||
db DRATINI, 40 ; day
|
||||
; 10
|
||||
db QWILFISH, 20 ; nite
|
||||
db QWILFISH, 20 ; day
|
||||
; 11
|
||||
db QWILFISH, 40 ; nite
|
||||
db QWILFISH, 40 ; day
|
||||
; 12
|
||||
db REMORAID, 20 ; nite
|
||||
db REMORAID, 20 ; day
|
||||
; 13
|
||||
db REMORAID, 40 ; nite
|
||||
db REMORAID, 40 ; day
|
||||
; 14
|
||||
db GYARADOS, 20 ; nite
|
||||
db GYARADOS, 20 ; day
|
||||
; 15
|
||||
db GYARADOS, 40 ; nite
|
||||
db GYARADOS, 40 ; day
|
||||
; 16
|
||||
db DRATINI, 10 ; nite
|
||||
db DRATINI, 10 ; day
|
||||
; 17
|
||||
db DRATINI, 10 ; nite
|
||||
db DRATINI, 10 ; day
|
||||
; 18
|
||||
db HORSEA, 20 ; nite
|
||||
db HORSEA, 20 ; day
|
||||
; 19
|
||||
db HORSEA, 40 ; nite
|
||||
db HORSEA, 40 ; day
|
||||
; 20
|
||||
db TENTACOOL, 20 ; nite
|
||||
db TENTACOOL, 20 ; day
|
||||
; 21
|
||||
db TENTACOOL, 40 ; nite
|
||||
db TENTACOOL, 40 ; day
|
||||
|
||||
; 926c7
|
||||
|
11
wram.asm
11
wram.asm
@ -565,10 +565,8 @@ EnemyDamageTaken: ; c684
|
||||
BattleScriptBuffer: ; c68a
|
||||
ds 40
|
||||
|
||||
BattleScriptBufferLocLo: ; c6b2
|
||||
ds 1
|
||||
BattleScriptBufferLocHi: ; c6b3
|
||||
ds 1
|
||||
BattleScriptBufferLoc: ; c6b2
|
||||
ds 2
|
||||
|
||||
ds 25
|
||||
|
||||
@ -1286,6 +1284,11 @@ Box13Name: ; dbe1
|
||||
Box14Name: ; dbea
|
||||
ds 9
|
||||
|
||||
SECTION "steps", BSS[$dc73]
|
||||
StepCount: ; dc73
|
||||
ds 1
|
||||
PoisonStepCount: ; dc74
|
||||
ds 1
|
||||
|
||||
SECTION "FlypointPermissions", BSS[$dca5]
|
||||
FlypointPerms: ; dca5
|
||||
|
Loading…
Reference in New Issue
Block a user