ref: 04ff45ee4efdd934699ac659eb6e29de5a165965
parent: eac73b32e62b232f1a39e1e9efc86b4d7bc97148
author: IIMarckus <iimarckus@gmail.com>
date: Tue Dec 20 22:08:33 EST 2011
Add Pokedex number ↔ index number conversion functions. hg-commit-id: 39d1a9be9251
--- a/pokered.asm
+++ b/pokered.asm
@@ -10438,7 +10438,42 @@
db 100 ; 10.0 kg
db 0,"コメント さくせいちゅう@" ; コメント作成中 (Comment to be written)
-INCBIN "baserom.gbc",$40FF9,$1024 - $FF9
+PokedexToIndex:
+ ; converts the Pokédex number at $D11E to an index
+ push bc
+ push hl
+ ld a,[$D11E]
+ ld b,a
+ ld c,0
+ ld hl,PokedexOrder
+
+.loop\@ ; go through the list until we find an entry with a matching dex number
+ inc c
+ ld a,[hli]
+ cp b
+ jr nz,.loop\@
+
+ ld a,c
+ ld [$D11E],a
+ pop hl
+ pop bc
+ ret
+
+IndexToPokedex:
+ ; converts the indexédex number at $D11E to a Pokédex number
+ push bc
+ push hl
+ ld a,[$D11E]
+ dec a
+ ld hl,PokedexOrder
+ ld b,0
+ ld c,a
+ add hl,bc
+ ld a,[hl]
+ ld [$D11E],a
+ pop hl
+ pop bc
+ ret
PokedexOrder: ; 5024
db DEX_RHYDON