Merge pull request #254 from yenatch/master

Better compression, macro cleanup, use MAX_LEVEL everywhere.

- move stats -> data (like pokered).
- remove FuncCoord and use {hl,bc,de}coord for all tilemap loads.
- use MAX_LEVEL where needed.
- update pokemontools for better compression, and recomment related code.
- growth rate constants
This commit is contained in:
yenatch 2014-06-04 17:23:57 -04:00
commit dfe221b9d1
303 changed files with 2011 additions and 2022 deletions

View File

@ -23,9 +23,9 @@ engine/events.o \
engine/scripting_crystal.o \
engine/events_2.o \
engine/credits_crystal.o \
stats/egg_moves_crystal.o \
stats/evos_attacks_crystal.o \
stats/pokedex/entries_crystal.o \
data/egg_moves_crystal.o \
data/evos_attacks_crystal.o \
data/pokedex/entries_crystal.o \
misc/crystal_misc.o \
gfx/pics.o

View File

@ -353,11 +353,11 @@ Functionc81c0: ; c81c0 (32:41c0)
push bc
call Functionc9038
jr nz, .asm_c81d1
ld hl, $c4ac
hlcoord 12, 0
ld bc, $707
jr .asm_c81d7
.asm_c81d1
ld hl, $c51a
hlcoord 2, 6
ld bc, $606
.asm_c81d7
call ClearBox
@ -458,11 +458,11 @@ Functionc825a: ; c825a (32:425a)
push bc
call Functionc9038
jr nz, .asm_c826b
ld hl, $c524
hlcoord 12, 6
ld bc, $107
jr .asm_c8271
.asm_c826b
ld hl, $c51a
hlcoord 2, 6
ld bc, $106
.asm_c8271
call ClearBox
@ -529,11 +529,11 @@ Functionc82c7: ; c82c7 (32:42c7)
push bc
call Functionc9038
jr nz, .asm_c82d8
ld hl, $c510
hlcoord 12, 5
ld bc, $207
jr .asm_c82de
.asm_c82d8
ld hl, $c51a
hlcoord 2, 6
ld bc, $206
.asm_c82de
call ClearBox
@ -594,7 +594,7 @@ Functionc831d: ; c831d (32:431d)
ld a, [hl]
and a
jr z, .asm_c833e
ld hl, $c518
hlcoord 0, 6
ld de, $806
.asm_c832b
push de
@ -613,7 +613,7 @@ Functionc831d: ; c831d (32:431d)
jr nz, .asm_c832b
jr .asm_c8355
.asm_c833e
ld hl, $c4b3
hlcoord 19, 0
ld de, $807
.asm_c8344
push de

View File

@ -82,7 +82,7 @@ Function3c000: ; 3c000
ld a, [hl]
ld [CurPartySpecies], a
ld [TempBattleMonSpecies], a
ld hl, $c505
hlcoord 1, 5
ld a, $9
call Function3d490
call Function309d
@ -2063,12 +2063,12 @@ Function3cd36: ; 3cd36
Function3cd3c: ; 3cd3c
ld hl, $c55e
hlcoord 10, 9
ld a, [hBattleTurn]
and a
ld a, $1
jr z, .asm_3cd4a
ld hl, $c4ca
hlcoord 2, 2
xor a
.asm_3cd4a
@ -2146,7 +2146,7 @@ Function3cdca: ; 3cdca
cp $1
jr z, .asm_3cde6
call ClearSprites
ld hl, $c4a1
hlcoord 1, 0
ld bc, $040a
call ClearBox
call Function3d2b3
@ -2330,7 +2330,7 @@ Function3cef1: ; 3cef1
ld a, [BattleMonSpecies]
call Function37b6
call Function3d43b
ld hl, $c535
hlcoord 9, 7
ld bc, $050b
call ClearBox
ld hl, BattleText_0x80a75
@ -3140,14 +3140,14 @@ LostBattle: ; 3d38e
Function3d432: ; 3d432
ld hl, $c510
ld de, $c524
hlcoord 12, 5
decoord 12, 6
jp Function3d444
; 3d43b
Function3d43b: ; 3d43b
ld hl, $c569
ld de, $c57d
hlcoord 1, 10
decoord 1, 11
jp Function3d444
; 3d444
@ -3348,7 +3348,7 @@ Function3d557: ; 3d557
ld [$c6e6], a
xor a
ld [$c730], a
ld hl, $c4b2
hlcoord 18, 0
ld a, $8
call Function3d490
call EmptyBattleTextBox
@ -3675,7 +3675,7 @@ Function3d7a0: ; 3d7a0
ld [hBGMapMode], a
call Function1c07
call ClearSprites
ld hl, $c4a1
hlcoord 1, 0
ld bc, $040a
call ClearBox
call WaitBGMap
@ -3718,7 +3718,7 @@ Function3d7c7: ; 3d7c7
jr c, .asm_3d82c
callba CheckBattleScene
jr c, .asm_3d821
ld hl, $c4ac
hlcoord 12, 0
ld d, $0
ld e, $0
ld a, $47
@ -4180,7 +4180,7 @@ Function3db5f: ; 3db5f
ld hl, BattleMonAtkDefDV
ld a, $2d
call Predef
ld hl, $c505
hlcoord 1, 5
ld b, $7
ld c, $8
call ClearBox
@ -4496,9 +4496,9 @@ Function3dd2f: ; 3dd2f
ld a, [hBattleTurn]
ld [$d10a], a
and a
ld hl, $c4ca
hlcoord 2, 2
jr z, .asm_3dda4
ld hl, $c55e
hlcoord 10, 9
.asm_3dda4
ld [$d10a], a
@ -4885,9 +4885,9 @@ PrintPlayerHUD: ; 3dfbf
ld a, $f5
.asm_3e013
ld hl, $c551
hlcoord 17, 8
ld [hl], a
ld hl, $c54e
hlcoord 14, 8
push af
push hl
ld de, BattleMonStatus
@ -4922,7 +4922,7 @@ Function3e036:: ; 3e036
Function3e043: ; 3e043
xor a
ld [hBGMapMode], a
ld hl, $c4a1
hlcoord 1, 0
ld bc, $040b
call ClearBox
callba Function2c0c5
@ -4931,7 +4931,7 @@ Function3e043: ; 3e043
ld [CurPartySpecies], a
call GetBaseData
ld de, EnemyMonNick
ld hl, $c4a1
hlcoord 1, 0
call Function3e138
call PlaceString
ld h, b
@ -4960,9 +4960,9 @@ Function3e043: ; 3e043
ld a, $f5
.asm_3e09a
ld hl, $c4bd
hlcoord 9, 1
ld [hl], a
ld hl, $c4ba
hlcoord 6, 1
push af
push hl
ld de, EnemyMonStatus
@ -5041,7 +5041,7 @@ Function3e043: ; 3e043
.asm_3e11a
xor a
ld [$d10a], a
ld hl, $c4ca
hlcoord 2, 2
ld b, $0
call DrawHPBar
ret
@ -5552,23 +5552,23 @@ Function3e4bc: ; 3e4bc
call CopyBytes
xor a
ld [hBGMapMode], a
ld hl, $c594
hlcoord 4, 12
ld b, $4
ld c, $e
ld a, [$d235]
cp $2
jr nz, .asm_3e503
ld hl, $c544
hlcoord 4, 8
ld b, $4
ld c, $e
.asm_3e503
call TextBox
ld hl, $c5aa
hlcoord 6, 13
ld a, [$d235]
cp $2
jr nz, .asm_3e513
ld hl, $c55a
hlcoord 6, 9
.asm_3e513
ld a, $14
@ -5630,7 +5630,7 @@ Function3e4bc: ; 3e4bc
jr z, .asm_3e58e
dec a
jr nz, .asm_3e5a3
ld hl, $c5c3
hlcoord 11, 14
ld de, .string_3e61c
call PlaceString
jr .asm_3e5a3
@ -5640,7 +5640,7 @@ Function3e4bc: ; 3e4bc
ld a, [$d0e3]
and a
jr z, .asm_3e5a3
ld hl, $c5a9
hlcoord 5, 13
ld bc, $0014
dec a
call AddNTimes
@ -6796,7 +6796,7 @@ Function3ebd8: ; 3ebd8
ld [TrainerClass], a
ld de, VTiles2
callab Function5120d
ld hl, $c4b3
hlcoord 19, 0
ld c, $0
.asm_3ebf3
inc c
@ -7296,6 +7296,7 @@ Function3ee27: ; 3ee27
Function3ee3b: ; 3ee3b
; Give experience.
ld a, [InLinkBattle]
and a
ret nz
@ -7329,7 +7330,7 @@ Function3ee3b: ; 3ee3b
add hl, bc
ld d, h
ld e, l
ld hl, EnemyMonType2
ld hl, EnemyMonBaseStats - 1
push bc
ld c, $5
.asm_3ee7c
@ -7403,20 +7404,20 @@ Function3ee3b: ; 3ee3b
jr z, .asm_3eee2
.asm_3eedd
call Function3f106
call DoubleExp
ld a, $1
.asm_3eee2
ld [$d088], a
ld a, [IsInBattle]
dec a
call nz, Function3f106
call nz, DoubleExp
push bc
ld a, $1
ld a, PartyMon1Item - PartyMon1
call GetPartyParamLocation
ld a, [hl]
cp $7e
call z, Function3f106
cp LUCKY_EGG
call z, DoubleExp
ld a, [$ffb6]
ld [$d087], a
ld a, [$ffb5]
@ -7464,7 +7465,7 @@ Function3ee3b: ; 3ee3b
ld [CurSpecies], a
call GetBaseData
push bc
ld d, $64
ld d, MAX_LEVEL
callab Function50e47
pop bc
ld hl, $000a
@ -7497,10 +7498,10 @@ Function3ee3b: ; 3ee3b
call Predef
callab Function50e1b
pop bc
ld hl, $001f
ld hl, PartyMon1Level - PartyMon1
add hl, bc
ld a, [hl]
cp $64
cp MAX_LEVEL
jp nc, .asm_3f0b9
cp d
jp z, .asm_3f0b9
@ -7510,7 +7511,7 @@ Function3ee3b: ; 3ee3b
ld a, d
ld [CurPartyLevel], a
ld [hl], a
ld hl, $0000
ld hl, PartyMon1Species - PartyMon1
add hl, bc
ld a, [hl]
ld [CurSpecies], a
@ -7609,11 +7610,11 @@ Function3ee3b: ; 3ee3b
ld [MonType], a
ld a, $1f
call Predef
ld hl, $c4a9
hlcoord 9, 0
ld b, $a
ld c, $9
call TextBox
ld hl, $c4bf
hlcoord 11, 1
ld bc, $0004
ld a, $28
call Predef
@ -7704,7 +7705,7 @@ Function3f0d4: ; 3f0d4
ret
; 3f106
Function3f106: ; 3f106
DoubleExp: ; 3f106
push bc
ld a, [$ffb5]
ld b, a
@ -7791,7 +7792,7 @@ Function3f136: ; 3f136
ld [hl], a
.asm_3f186
ld d, $64
ld d, MAX_LEVEL
callab Function50e47
ld a, [hMultiplicand]
ld b, a
@ -7895,7 +7896,7 @@ Function3f22c: ; 3f22c
inc b
push bc
push de
ld hl, $c58d
hlcoord 17, 11
call Function3f41c
pop de
ld a, $1
@ -7911,7 +7912,7 @@ Function3f22c: ; 3f22c
inc b
push bc
push de
ld hl, $c58d
hlcoord 17, 11
call Function3f41c
pop de
ld a, $1
@ -8478,7 +8479,7 @@ Function3f594: ; 3f594
ld [$ffad], a
dec a
ld [$c6e6], a
ld hl, $c4ac
hlcoord 12, 0
ld bc, $0707
ld a, $13
call Predef
@ -8546,7 +8547,7 @@ Function3f607: ; 3f607
xor a
ld [TrainerClass], a
ld [$ffad], a
ld hl, $c4ac
hlcoord 12, 0
ld bc, $0707
ld a, $13
call Predef
@ -8748,7 +8749,7 @@ Function3f77c: ; 3f77c
jr .asm_3f7c3
.asm_3f7c3
ld hl, $c546
hlcoord 6, 8
call PlaceString
callba Function106187
ld c, $c8
@ -8781,7 +8782,7 @@ Function3f77c: ; 3f77c
Function3f80f: ; 3f80f
ld hl, $c546
hlcoord 6, 8
ld de, .Invalid
call PlaceString
ld c, $c8
@ -8826,7 +8827,7 @@ Function3f85f: ; 3f85f
call ClearTileMap
call ClearSprites
call .asm_3f8e0
ld hl, $c540
hlcoord 0, 8
ld b, $5
ld de, $b268
.asm_3f870
@ -8895,19 +8896,19 @@ Function3f85f: ; 3f85f
ret
.asm_3f8e0
ld hl, $c4a1
hlcoord 1, 0
ld de, .Record
call PlaceString
ld hl, $c518
hlcoord 0, 6
ld de, .Result
call PlaceString
ld hl, $c4c8
hlcoord 0, 2
ld de, .Total
call PlaceString
ld hl, $c4f6
hlcoord 6, 4
ld de, $b260
call .asm_3f92b
jr c, .asm_3f92a
@ -8915,14 +8916,14 @@ Function3f85f: ; 3f85f
ld bc, $0204
call PrintNum
ld hl, $c4fb
hlcoord 11, 4
ld de, $b262
call .asm_3f92b
ld bc, $0204
call PrintNum
ld hl, $c500
hlcoord 16, 4
ld de, $b264
call .asm_3f92b
@ -9277,12 +9278,12 @@ Function3fb54: ; 3fb54
Function3fb6c: ; 3fb6c
call Function3fbf8
ld hl, $c590
hlcoord 0, 12
ld b, $4
ld c, $12
call TextBox
callba MobileTextBorder
ld hl, $c505
hlcoord 1, 5
ld bc, $0307
call ClearBox
call Functione51
@ -9302,7 +9303,7 @@ Function3fb6c: ; 3fb6c
ld [hBGMapMode], a
ld a, $31
ld [$ffad], a
ld hl, $c51a
hlcoord 2, 6
ld bc, $0606
ld a, $13
call Predef
@ -9398,7 +9399,7 @@ Function3fc30: ; 3fc30
call Function3fc5b
ld a, $31
ld [$ffad], a
ld hl, $c51a
hlcoord 2, 6
ld bc, $0606
ld a, $13
call Predef

View File

@ -4657,7 +4657,7 @@ BattleCommand42: ; 35926
call .asm_3597d
ld a, $1
ld [$d10a], a
ld hl, $c55e
hlcoord 10, 9
ld a, $b
call Predef
ld hl, EnemyMonHPHi
@ -4673,7 +4673,7 @@ BattleCommand42: ; 35926
xor a
ld [$d10a], a
call ResetDamage
ld hl, $c4ca
hlcoord 2, 2
ld a, $b
call Predef
callba Function178000
@ -5383,7 +5383,7 @@ Function35d1c: ; 35d1c
ld [$d1ef], a
ld a, [hl]
ld [$d1ee], a
ld hl, $c4ca
hlcoord 2, 2
xor a
ld [$d10a], a
ld a, $b
@ -5441,7 +5441,7 @@ Function35d7e: ; 35d7e
ld [$d1eb], a
ld a, [hl]
ld [$d1ea], a
ld hl, $c55e
hlcoord 10, 9
ld a, $1
ld [$d10a], a
ld a, $b
@ -5884,10 +5884,10 @@ Function36011: ; 36011
.asm_36070
ld a, [hBattleTurn]
and a
ld hl, $c55e
hlcoord 10, 9
ld a, $1
jr z, .asm_3607e ; 0x36078 $4
ld hl, $c4ca
hlcoord 2, 2
xor a
.asm_3607e
ld [$d10a], a
@ -7268,7 +7268,7 @@ BattleCommand23: ; 3680f
call AnimateCurrentMove
ld c, $14
call DelayFrames
ld hl, $c4a1
hlcoord 1, 0
ld bc, $040a
call ClearBox
ld c, $14
@ -7362,7 +7362,7 @@ BattleCommand23: ; 3680f
call AnimateCurrentMove
ld c, $14
call DelayFrames
ld hl, $c535
hlcoord 9, 7
ld bc, $050b
call ClearBox
ld c, $14
@ -8029,12 +8029,12 @@ BattleCommand27: ; 36cb2
ld [hli], a
ld [hl], a
.asm_36cfe
ld hl, $c55e
hlcoord 10, 9
ld a, [hBattleTurn]
and a
ld a, $1
jr z, .asm_36d0c ; 36d06 $4
ld hl, $c4ca
hlcoord 2, 2
xor a
.asm_36d0c
ld [$d10a], a

View File

@ -1,8 +1,10 @@
; name length
; strings
PLAYER_NAME_LENGTH EQU 8
PKMN_NAME_LENGTH EQU 11
NAME_LENGTH EQU 11
LV_CHAR EQU $6e
; boxes
NUM_BOXES EQU 14

View File

@ -1,3 +1,8 @@
; growth rate
MEDIUM_FAST EQU 0
MEDIUM_SLOW EQU 3
SLOW EQU 4
FAST EQU 5
; egg group constants

View File

@ -13,17 +13,17 @@ TILESETS_7 EQU $77
TILESETS_8 EQU $78
; stats/egg_moves.o
; data/egg_moves.o
EGG_MOVES EQU $8
; stats/evos_attacks.o
; data/evos_attacks.o
EVOS_ATTACKS EQU $10
; stats/pokedex/entries.o
; data/pokedex/entries.o
POKEDEX_ENTRIES_1 EQU $60
POKEDEX_ENTRIES_2 EQU $6E

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,7 @@ SECTION "Egg Moves", ROMX, BANK[EGG_MOVES]
; and can only breed with Ditto.
INCLUDE "stats/egg_move_pointers.asm"
INCLUDE "data/egg_move_pointers.asm"
EggMoves::

View File

@ -0,0 +1,3 @@
INCLUDE "pokecrystal.asm"
INCLUDE "data/egg_moves.asm"

View File

@ -4,7 +4,7 @@ INCLUDE "includes.asm"
SECTION "Evolutions and Attacks", ROMX, BANK[EVOS_ATTACKS]
INCLUDE "stats/evos_attacks_pointers.asm"
INCLUDE "data/evos_attacks_pointers.asm"
EvosAttacks::

View File

@ -0,0 +1,3 @@
INCLUDE "pokecrystal.asm"
INCLUDE "data/evos_attacks.asm"

View File

@ -4,23 +4,23 @@ INCLUDE "includes.asm"
SECTION "Pokedex Entries 001-064", ROMX, BANK[POKEDEX_ENTRIES_1]
PokedexEntries1::
INCLUDE "stats/pokedex/entries_1.asm"
INCLUDE "data/pokedex/entries_1.asm"
SECTION "Pokedex Entries 065-128", ROMX, BANK[POKEDEX_ENTRIES_2]
PokedexEntries2::
INCLUDE "stats/pokedex/entries_2.asm"
INCLUDE "data/pokedex/entries_2.asm"
SECTION "Pokedex Entries 129-192", ROMX, BANK[POKEDEX_ENTRIES_3]
PokedexEntries3::
INCLUDE "stats/pokedex/entries_3.asm"
INCLUDE "data/pokedex/entries_3.asm"
SECTION "Pokedex Entries 193-251", ROMX, BANK[POKEDEX_ENTRIES_4]
PokedexEntries4::
INCLUDE "stats/pokedex/entries_4.asm"
INCLUDE "data/pokedex/entries_4.asm"

Some files were not shown because too many files have changed in this diff Show More