Move lots of data tables into individual data/ files

(This is not expected to be their final location, but it makes them easier to relocate when necessary, and easier for users to edit until the whole project's file structure is finalized.)
This commit is contained in:
Remy Oukaour
2017-12-11 13:47:58 -05:00
parent c2ad79c4f2
commit 31cce83e9b
86 changed files with 3238 additions and 3154 deletions

View File

@@ -1,212 +1,3 @@
Function_LoadOpponentTrainerAndPokemons: ; 1f8000
ld a, [rSVBK]
push af
ld a, BANK(BT_OTTrainer)
ld [rSVBK], a
; Fill BT_OTTrainer with zeros
xor a
ld hl, BT_OTTrainer
ld bc, BT_OTTrainerEnd - BT_OTTrainer
call ByteFill
; Write $ff into the Item-Slots
ld a, $ff
ld [BT_OTPkmn1Item], a
ld [BT_OTPkmn2Item], a
ld [BT_OTPkmn3Item], a
; Set BT_OTTrainer as start address to write the following data to
ld de, BT_OTTrainer
ld a, [hRandomAdd]
ld b, a
.resample ; loop to find a random trainer
call Random
ld a, [hRandomAdd]
add b
ld b, a ; b contains the nr of the trainer
IF DEF(CRYSTAL11)
and (1 << 7) - 1
cp 70
ELSE
and (1 << 5) - 1
cp 21
ENDC
jr nc, .resample
ld b, a
ld a, BANK(sBTTrainers)
call GetSRAMBank
ld c, BATTLETOWER_NROFTRAINERS
ld hl, sBTTrainers
.next_trainer
ld a, [hli]
cp b
jr z, .resample
dec c
jr nz, .next_trainer ; c <= 7 initialise all 7 trainers?
ld hl, sBTTrainers
ld a, [sNrOfBeatenBattleTowerTrainers]
ld c, a
ld a, b
ld b, 0
add hl, bc
ld [hl], a
call CloseSRAM
push af
; Copy name (10 bytes) and class (1 byte) of trainer
ld hl, BattleTowerTrainers
ld bc, NAME_LENGTH
call AddNTimes
ld bc, NAME_LENGTH
call CopyBytes
call Function_LoadRandomBattleTowerPkmn
pop af
ld hl, BattleTowerTrainerData
ld bc, BATTLETOWER_TRAINERDATALENGTH
call AddNTimes
ld bc, BATTLETOWER_TRAINERDATALENGTH
.copy_bt_trainer_data_loop
ld a, BANK(BattleTowerTrainerData)
call GetFarByte
ld [de], a
inc hl
inc de
dec bc
ld a, b
or c
jr nz, .copy_bt_trainer_data_loop
pop af
ld [rSVBK], a
ret
Function_LoadRandomBattleTowerPkmn: ; 1f8081
ld c, BATTLETOWER_NROFPKMNS
.loop
push bc
ld a, BANK(sBTPkmnPrevTrainer1)
call GetSRAMBank
.FindARandomBattleTowerPkmn:
; From Which LevelGroup are the Pkmn loaded
; a = 1..10
ld a, [wBTChoiceOfLvlGroup] ; [$d800]
dec a
ld hl, BattleTowerMons
ld bc, BattleTowerMons2 - BattleTowerMons1
call AddNTimes
ld a, [hRandomAdd]
ld b, a
.resample
call Random
ld a, [hRandomAdd]
add b
ld b, a
and $1f
cp BATTLETOWER_NRMONSPERLEVELBRACKET
jr nc, .resample
; in register 'a' is the chosen Pkmn of the LevelGroup
; Check if Pkmn was already loaded before
; Check current and the 2 previous teams
; includes check if item is double at the current team
ld bc, PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH
call AddNTimes
ld a, [hli]
ld b, a
ld a, [hld]
ld c, a
ld a, [BT_OTPkmn1]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn1Item]
cp c
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn2]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn2Item]
cp c
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn3]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [BT_OTPkmn3Item]
cp c
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevTrainer1]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevTrainer2]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevTrainer3]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevPrevTrainer1]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevPrevTrainer2]
cp b
jr z, .FindARandomBattleTowerPkmn
ld a, [sBTPkmnPrevPrevTrainer3]
cp b
jr z, .FindARandomBattleTowerPkmn
ld bc, PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH
call CopyBytes
ld a, [wNamedObjectIndexBuffer]
push af
push de
ld hl, - (PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH)
add hl, de
ld a, [hl]
ld [wNamedObjectIndexBuffer], a
ld bc, PARTYMON_STRUCT_LENGTH
add hl, bc
push hl
call GetPokemonName
ld h, d
ld l, e
pop de
ld bc, PKMN_NAME_LENGTH
call CopyBytes
pop de
pop af
ld [wNamedObjectIndexBuffer], a
pop bc
dec c
jp nz, .loop
ld a, [sBTPkmnPrevTrainer1]
ld [sBTPkmnPrevPrevTrainer1], a
ld a, [sBTPkmnPrevTrainer2]
ld [sBTPkmnPrevPrevTrainer2], a
ld a, [sBTPkmnPrevTrainer3]
ld [sBTPkmnPrevPrevTrainer3], a
ld a, [BT_OTPkmn1]
ld [sBTPkmnPrevTrainer1], a
ld a, [BT_OTPkmn2]
ld [sBTPkmnPrevTrainer2], a
ld a, [BT_OTPkmn3]
ld [sBTPkmnPrevTrainer3], a
call CloseSRAM
ret
; 1f814e
BattleTowerTrainers: ; 1f814e
; The trainer class is not used in Crystal 1.0 due to a bug.
; Instead, the sixth character in the trainer's name is used.

View File

@@ -0,0 +1,60 @@
decoration: MACRO
; type, name, command, event flag, tile/sprite
db \1, \2, \3
dw \4
db \5
ENDM
decoration DECO_PLANT, $00, $0, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BED, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_BED, FEATHERY_BED, SET_UP_BED, EVENT_DECO_BED_1, $1b
decoration DECO_BED, PINK_BED, SET_UP_BED, EVENT_DECO_BED_2, $1c
decoration DECO_BED, POLKADOT_BED, SET_UP_BED, EVENT_DECO_BED_3, $1d
decoration DECO_BED, PIKACHU_BED, SET_UP_BED, EVENT_DECO_BED_4, $1e
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CARPET, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_CARPET, RED_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_1, $08
decoration DECO_CARPET, BLUE_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_2, $0b
decoration DECO_CARPET, YELLOW_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_3, $0e
decoration DECO_CARPET, GREEN_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_4, $11
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_PLANT, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, MAGNAPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_1, $20
decoration DECO_PLANT, TROPICPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_2, $21
decoration DECO_PLANT, JUMBOPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_3, $22
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_POSTER, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, TOWN_MAP_D, SET_UP_POSTER, EVENT_DECO_PLANT_4, $1f
decoration DECO_POSTER, PIKACHU, SET_UP_POSTER, EVENT_DECO_POSTER_1, $23
decoration DECO_POSTER, CLEFAIRY, SET_UP_POSTER, EVENT_DECO_POSTER_2, $24
decoration DECO_POSTER, JIGGLYPUFF, SET_UP_POSTER, EVENT_DECO_POSTER_3, $25
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CONSOLE, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_PLANT, FAMICOM, SET_UP_CONSOLE, EVENT_DECO_FAMICOM, SPRITE_FAMICOM
decoration DECO_PLANT, SUPER_NES, SET_UP_CONSOLE, EVENT_DECO_SNES, SPRITE_SNES
decoration DECO_PLANT, NINTENDO_64, SET_UP_CONSOLE, EVENT_DECO_N64, SPRITE_N64
decoration DECO_PLANT, VIRTUAL_BOY, SET_UP_CONSOLE, EVENT_DECO_VIRTUAL_BOY, SPRITE_VIRTUAL_BOY
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BIG_DOLL, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_BIGDOLL, SNORLAX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_SNORLAX_DOLL, SPRITE_BIG_SNORLAX
decoration DECO_BIGDOLL, ONIX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_ONIX_DOLL, SPRITE_BIG_ONIX
decoration DECO_BIGDOLL, LAPRAS, SET_UP_BIG_DOLL, EVENT_DECO_BIG_LAPRAS_DOLL, SPRITE_BIG_LAPRAS
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_DOLL, EVENT_GAVE_KURT_APRICORNS, $00
decoration DECO_DOLL, PIKACHU, SET_UP_DOLL, EVENT_DECO_PIKACHU_DOLL, SPRITE_PIKACHU
decoration DECO_PLANT, SURF_PIKA_DOLL, SET_UP_DOLL, EVENT_DECO_SURFING_PIKACHU_DOLL, SPRITE_SURFING_PIKACHU
decoration DECO_DOLL, CLEFAIRY, SET_UP_DOLL, EVENT_DECO_CLEFAIRY_DOLL, SPRITE_CLEFAIRY
decoration DECO_DOLL, JIGGLYPUFF, SET_UP_DOLL, EVENT_DECO_JIGGLYPUFF_DOLL, SPRITE_JIGGLYPUFF
decoration DECO_DOLL, BULBASAUR, SET_UP_DOLL, EVENT_DECO_BULBASAUR_DOLL, SPRITE_BULBASAUR
decoration DECO_DOLL, CHARMANDER, SET_UP_DOLL, EVENT_DECO_CHARMANDER_DOLL, SPRITE_CHARMANDER
decoration DECO_DOLL, SQUIRTLE, SET_UP_DOLL, EVENT_DECO_SQUIRTLE_DOLL, SPRITE_SQUIRTLE
decoration DECO_DOLL, POLIWAG, SET_UP_DOLL, EVENT_DECO_POLIWAG_DOLL, SPRITE_POLIWAG
decoration DECO_DOLL, DIGLETT, SET_UP_DOLL, EVENT_DECO_DIGLETT_DOLL, SPRITE_DIGLETT
decoration DECO_DOLL, STARYU, SET_UP_DOLL, EVENT_DECO_STARMIE_DOLL, SPRITE_STARMIE
decoration DECO_DOLL, MAGIKARP, SET_UP_DOLL, EVENT_DECO_MAGIKARP_DOLL, SPRITE_MAGIKARP
decoration DECO_DOLL, ODDISH, SET_UP_DOLL, EVENT_DECO_ODDISH_DOLL, SPRITE_ODDISH
decoration DECO_DOLL, GENGAR, SET_UP_DOLL, EVENT_DECO_GENGAR_DOLL, SPRITE_GENGAR
decoration DECO_DOLL, SHELLDER, SET_UP_DOLL, EVENT_DECO_SHELLDER_DOLL, SPRITE_SHELLDER
decoration DECO_DOLL, GRIMER, SET_UP_DOLL, EVENT_DECO_GRIMER_DOLL, SPRITE_GRIMER
decoration DECO_DOLL, VOLTORB, SET_UP_DOLL, EVENT_DECO_VOLTORB_DOLL, SPRITE_VOLTORB
decoration DECO_DOLL, WEEDLE, SET_UP_DOLL, EVENT_DECO_WEEDLE_DOLL, SPRITE_WEEDLE
decoration DECO_DOLL, UNOWN, SET_UP_DOLL, EVENT_DECO_UNOWN_DOLL, SPRITE_UNOWN
decoration DECO_DOLL, GEODUDE, SET_UP_DOLL, EVENT_DECO_GEODUDE_DOLL, SPRITE_GEODUDE
decoration DECO_DOLL, MACHOP, SET_UP_DOLL, EVENT_DECO_MACHOP_DOLL, SPRITE_MACHOP
decoration DECO_DOLL, TENTACOOL, SET_UP_DOLL, EVENT_DECO_TENTACOOL_DOLL, SPRITE_TENTACOOL
decoration DECO_PLANT, GOLD_TROPHY, SET_UP_DOLL, EVENT_DECO_GOLD_TROPHY, SPRITE_GOLD_TROPHY
decoration DECO_PLANT, SILVER_TROPHY, SET_UP_DOLL, EVENT_DECO_SILVER_TROPHY, SPRITE_SILVER_TROPHY

16
data/default_options.asm Normal file
View File

@@ -0,0 +1,16 @@
; Options: med text speed
db TEXT_DELAY_MED
; wSaveFileExists: no
db $00
; TextBoxFrame: frame 1
db FRAME_1
; TextBoxFlags: ??
db $01
; GBPrinter: normal brightness
db GBPRINTER_NORMAL
; Options2: menu account on
db $01
; $cfd2: ??
db $00
; $cfd3: ??
db $00

View File

@@ -1,4 +1,3 @@
EggMovePointers:: ; 0x23b11
dw BulbasaurEggMoves
dw NoEggMoves
dw NoEggMoves

View File

@@ -10,6 +10,7 @@ SECTION "Egg Moves", ROMX
; and can only breed with Ditto.
EggMovePointers:: ; 0x23b11
INCLUDE "data/egg_move_pointers.asm"

20
data/emote_headers.asm Normal file
View File

@@ -0,0 +1,20 @@
emote_header: MACRO
; graphics pointer, length, starting tile
dw \1
db \2 tiles, BANK(\1)
dw VTiles1 tile \3
ENDM
; entries correspond to EMOTE_* constants
emote_header ShockEmote, 4, $78
emote_header QuestionEmote, 4, $78
emote_header HappyEmote, 4, $78
emote_header SadEmote, 4, $78
emote_header HeartEmote, 4, $78
emote_header BoltEmote, 4, $78
emote_header SleepEmote, 4, $78
emote_header FishEmote, 4, $78
emote_header JumpShadowGFX, 1, $7c
emote_header FishingRodGFX, 2, $7c
emote_header BoulderDustGFX, 2, $7e
emote_header GrassRustleGFX, 1, $7e

203
data/engine_flags.asm Normal file
View File

@@ -0,0 +1,203 @@
engine_flag: MACRO
dwb \1, 1 << \2
ENDM
; location, bit
; (all locations are in WRAM bank 1)
; pokegear
engine_flag wPokegearFlags, 1 ; radio card ; $0
engine_flag wPokegearFlags, 0 ; map card
engine_flag wPokegearFlags, 2 ; phone card
engine_flag wPokegearFlags, 3 ; expn card
engine_flag wPokegearFlags, 7 ; on/off
; wDayCareMan, 7 ; day-care 1 on
engine_flag wDayCareMan, 6 ; egg is ready
; wDayCareMan, 5 ; monster 1 and 2 are compatible
engine_flag wDayCareMan, 0 ; monster 1 in day-care
; wDayCareLady, 7 = day-care 2 on
engine_flag wDayCareLady, 0 ; monster 2 in day-care
engine_flag wMomSavingMoney, 0 ; mom saving money ; $8
engine_flag wMomSavingMoney, 7 ; dst
engine_flag wUnusedTwoDayTimerOn, 0 ; unused, possibly related to a 2-day timer
engine_flag StatusFlags, 0 ; pokedex
engine_flag StatusFlags, 1 ; unown dex
engine_flag StatusFlags, 3 ; pokerus
engine_flag StatusFlags, 4 ; rocket signal on ch20
engine_flag StatusFlags, 6 ; credits skip
engine_flag StatusFlags, 7 ; bug contest on ; $10
engine_flag StatusFlags2, 2 ; bug contest timer
engine_flag StatusFlags2, 1 ; safari zone?
engine_flag StatusFlags2, 0 ; rockets in radio tower
engine_flag StatusFlags2, 4 ; bike shop call enabled (1024 bike steps reqd)
engine_flag StatusFlags2, 5 ; give pokerus
engine_flag StatusFlags2, 6 ; berry -> berry juice when trading?
engine_flag StatusFlags2, 7 ; rockets in mahogany
engine_flag BikeFlags, 0 ; strength active ; $18
engine_flag BikeFlags, 1 ; always on bike (cant surf)
engine_flag BikeFlags, 2 ; downhill (cycling road)
engine_flag JohtoBadges, 0 ; zephyrbadge
engine_flag JohtoBadges, 1 ; hivebadge
engine_flag JohtoBadges, 2 ; plainbadge
engine_flag JohtoBadges, 3 ; fogbadge
engine_flag JohtoBadges, 4 ; mineralbadge
engine_flag JohtoBadges, 5 ; stormbadge ; $20
engine_flag JohtoBadges, 6 ; glacierbadge
engine_flag JohtoBadges, 7 ; risingbadge
engine_flag KantoBadges, 0 ; boulderbadge
engine_flag KantoBadges, 1 ; cascadebadge
engine_flag KantoBadges, 2 ; thunderbadge
engine_flag KantoBadges, 3 ; rainbowbadge
engine_flag KantoBadges, 4 ; soulbadge
engine_flag KantoBadges, 5 ; marshbadge ; $28
engine_flag KantoBadges, 6 ; volcanobadge
engine_flag KantoBadges, 7 ; earthbadge
; unown sets
engine_flag UnlockedUnowns, 0 ; 1
engine_flag UnlockedUnowns, 1 ; 2
engine_flag UnlockedUnowns, 2 ; 3
engine_flag UnlockedUnowns, 3 ; 4
engine_flag UnlockedUnowns, 4 ; 5
engine_flag UnlockedUnowns, 5 ; 6 ; $30
engine_flag UnlockedUnowns, 6 ; 7
engine_flag UnlockedUnowns, 7 ; 8
; fly
engine_flag VisitedSpawns, 0 ; your house
engine_flag VisitedSpawns, 1 ; viridian pokecenter
engine_flag VisitedSpawns, 2 ; pallet
engine_flag VisitedSpawns, 3 ; viridian
engine_flag VisitedSpawns, 4 ; pewter
engine_flag VisitedSpawns, 5 ; cerulean ; $38
engine_flag VisitedSpawns, 6 ; rock tunnel
engine_flag VisitedSpawns, 7 ; vermilion
engine_flag VisitedSpawns + 1, 0 ; lavender
engine_flag VisitedSpawns + 1, 1 ; saffron
engine_flag VisitedSpawns + 1, 2 ; celadon
engine_flag VisitedSpawns + 1, 3 ; fuchsia
engine_flag VisitedSpawns + 1, 4 ; cinnabar
engine_flag VisitedSpawns + 1, 5 ; indigo plateau ; $40
engine_flag VisitedSpawns + 1, 6 ; new bark
engine_flag VisitedSpawns + 1, 7 ; cherrygrove
engine_flag VisitedSpawns + 2, 0 ; violet
; union cave
engine_flag VisitedSpawns + 2, 2 ; azalea
engine_flag VisitedSpawns + 2, 3 ; cianwood
engine_flag VisitedSpawns + 2, 4 ; goldenrod
engine_flag VisitedSpawns + 2, 5 ; olivine
engine_flag VisitedSpawns + 2, 6 ; ecruteak ; $48
engine_flag VisitedSpawns + 2, 7 ; mahogany
engine_flag VisitedSpawns + 3, 0 ; lake of rage
engine_flag VisitedSpawns + 3, 1 ; blackthorn
engine_flag VisitedSpawns + 3, 2 ; silver cave
; fast ship
engine_flag VisitedSpawns + 3, 4 ; unused
engine_flag wLuckyNumberShowFlag, 0 ; lucky number show
engine_flag StatusFlags2, 3 ; ????
engine_flag DailyFlags, 0 ; kurt making balls ; $50
engine_flag DailyFlags, 1 ; ????
engine_flag DailyFlags, 2 ; special wilddata?
engine_flag DailyFlags, 3 ; time capsule (24h wait)
engine_flag DailyFlags, 4 ; all fruit trees
engine_flag DailyFlags, 5 ; shuckle given
engine_flag DailyFlags, 6 ; goldenrod underground merchant closed
engine_flag DailyFlags, 7 ; fought in trainer hall today
engine_flag WeeklyFlags, 0 ; mt moon square clefairy ; $58
engine_flag WeeklyFlags, 1 ; union cave lapras
engine_flag WeeklyFlags, 2 ; goldenrod underground haircut used
engine_flag WeeklyFlags, 3 ; goldenrod mall happiness event floor05 person07
engine_flag WeeklyFlags, 4 ; tea in blues house
engine_flag WeeklyFlags, 5 ; indigo plateau rival fight
engine_flag WeeklyFlags, 6 ; move tutor
engine_flag WeeklyFlags, 7 ; buenas password
engine_flag SwarmFlags, 0 ; buenas password 2
engine_flag SwarmFlags, 1 ; goldenrod dept store sale is on
engine_flag GameTimerPause, 7 ; $62
engine_flag PlayerGender, 0 ; player is female
engine_flag wCelebiEvent, 2 ; have gs ball after kurt examined it
; rematches
engine_flag wDailyRematchFlags, 0 ; jack
engine_flag wDailyRematchFlags, 1 ; huey
engine_flag wDailyRematchFlags, 2 ; gaven
engine_flag wDailyRematchFlags, 3 ; beth ; $68
engine_flag wDailyRematchFlags, 4 ; jose
engine_flag wDailyRematchFlags, 5 ; reena
engine_flag wDailyRematchFlags, 6 ; joey
engine_flag wDailyRematchFlags, 7 ; wade
engine_flag wDailyRematchFlags + 1, 0 ; ralph
engine_flag wDailyRematchFlags + 1, 1 ; liz
engine_flag wDailyRematchFlags + 1, 2 ; anthony
engine_flag wDailyRematchFlags + 1, 3 ; todd ; $70
engine_flag wDailyRematchFlags + 1, 4 ; gina
engine_flag wDailyRematchFlags + 1, 5 ; arnie
engine_flag wDailyRematchFlags + 1, 6 ; alan
engine_flag wDailyRematchFlags + 1, 7 ; dana
engine_flag wDailyRematchFlags + 2, 0 ; chad
engine_flag wDailyRematchFlags + 2, 1 ; tully
engine_flag wDailyRematchFlags + 2, 2 ; brent
engine_flag wDailyRematchFlags + 2, 3 ; tiffany ; $78
engine_flag wDailyRematchFlags + 2, 4 ; vance
engine_flag wDailyRematchFlags + 2, 5 ; wilton
engine_flag wDailyRematchFlags + 2, 6 ; parry
engine_flag wDailyRematchFlags + 2, 7 ; erin
engine_flag wDailyPhoneItemFlags, 0 ; beverly has nugget
engine_flag wDailyPhoneItemFlags, 1 ; jose has star piece
engine_flag wDailyPhoneItemFlags, 2 ; wade has item (see EVENT_WADE_HAS_*** in constants/event_flags.asm)
engine_flag wDailyPhoneItemFlags, 3 ; gina has leaf stone ; $80
engine_flag wDailyPhoneItemFlags, 4 ; alan has fire stone
engine_flag wDailyPhoneItemFlags, 5 ; liz has thunderstone
engine_flag wDailyPhoneItemFlags, 6 ; derek has nugget
engine_flag wDailyPhoneItemFlags, 7 ; tully has water stone
engine_flag wDailyPhoneItemFlags + 1, 0 ; tiffany has pink bow
engine_flag wDailyPhoneItemFlags + 1, 1 ; wilton has item (see EVENT_WILTON_HAS_*** in constants/event_flags.asm)
engine_flag wDailyPhoneTimeOfDayFlags, 0
engine_flag wDailyPhoneTimeOfDayFlags, 1 ; $88
engine_flag wDailyPhoneTimeOfDayFlags, 2
engine_flag wDailyPhoneTimeOfDayFlags, 3
engine_flag wDailyPhoneTimeOfDayFlags, 4
engine_flag wDailyPhoneTimeOfDayFlags, 5
engine_flag wDailyPhoneTimeOfDayFlags, 6
engine_flag wDailyPhoneTimeOfDayFlags, 7
engine_flag wDailyPhoneTimeOfDayFlags + 1, 0
engine_flag wDailyPhoneTimeOfDayFlags + 1, 1 ; $90
engine_flag wDailyPhoneTimeOfDayFlags + 1, 2
engine_flag wDailyPhoneTimeOfDayFlags + 1, 3
engine_flag wDailyPhoneTimeOfDayFlags + 1, 4
engine_flag wDailyPhoneTimeOfDayFlags + 1, 5
engine_flag wDailyPhoneTimeOfDayFlags + 1, 6
engine_flag wDailyPhoneTimeOfDayFlags + 1, 7
engine_flag wDailyPhoneTimeOfDayFlags + 2, 0
engine_flag wDailyPhoneTimeOfDayFlags + 2, 1 ; $98
engine_flag wDailyPhoneTimeOfDayFlags + 2, 2
engine_flag wDailyPhoneTimeOfDayFlags + 2, 3
engine_flag wDailyPhoneTimeOfDayFlags + 2, 4
engine_flag wDailyPhoneTimeOfDayFlags + 2, 5
engine_flag wDailyPhoneTimeOfDayFlags + 2, 6
engine_flag wDailyPhoneTimeOfDayFlags + 2, 7
engine_flag wPlayerSpriteSetupFlags, 2 ; female player has been transformed into male
engine_flag SwarmFlags, 2 ; dunsparce swarm ; $a0
engine_flag SwarmFlags, 3 ; yanma swarm

View File

@@ -4,6 +4,7 @@ INCLUDE "includes.asm"
SECTION "Evolutions and Attacks", ROMX
EvosAttacksPointers:: ; 0x425b1
INCLUDE "data/evos_attacks_pointers.asm"

View File

@@ -1,8 +1,5 @@
; Pointer table for evolutions and attacks.
; Evolutions and attacks are grouped together since they're both checked at level-up.
; These are grouped together since they're both checked at level-up.
EvosAttacksPointers:: ; 0x425b1
dw BulbasaurEvosAttacks
dw IvysaurEvosAttacks
dw VenusaurEvosAttacks

264
data/facings.asm Normal file
View File

@@ -0,0 +1,264 @@
Facings: ; 4049
; entries correspond to FACING_* constants
dw FacingStepDown0
dw FacingStepDown1
dw FacingStepDown2
dw FacingStepDown3
dw FacingStepUp0
dw FacingStepUp1
dw FacingStepUp2
dw FacingStepUp3
dw FacingStepLeft0
dw FacingStepLeft1
dw FacingStepLeft2
dw FacingStepLeft3
dw FacingStepRight0
dw FacingStepRight1
dw FacingStepRight2
dw FacingStepRight3
dw FacingFishDown
dw FacingFishUp
dw FacingFishLeft
dw FacingFishRight
dw FacingEmote
dw FacingShadow
dw FacingBigDollAsymmetric
dw FacingBigDollSymmetric
dw FacingWeirdTree0
dw FacingWeirdTree1
dw FacingWeirdTree2
dw FacingWeirdTree3
dw FacingBoulderDust1
dw FacingBoulderDust2
dw FacingGrass1
dw FacingGrass2
FacingsEnd:
dw 0
NUM_FACINGS EQU (FacingsEnd - Facings) / 2
; Tables used as a reference to transform OAM data.
; Format:
; db y, x, attributes, tile index
FacingStepDown0:
FacingStepDown2:
FacingWeirdTree0:
FacingWeirdTree2: ; standing down
db 4 ; #
db 0, 0, 0, $00
db 0, 8, 0, $01
db 8, 0, 2, $02
db 8, 8, 2, $03
; 409c
FacingStepDown1: ; walking down 1
db 4 ; #
db 0, 0, 0, $80
db 0, 8, 0, $81
db 8, 0, 2, $82
db 8, 8, 2, $83
; 40ad
FacingStepDown3: ; walking down 2
db 4 ; #
db 0, 8, X_FLIP, $80
db 0, 0, X_FLIP, $81
db 8, 8, 2 | X_FLIP, $82
db 8, 0, 2 | X_FLIP, $83
; 40be
FacingStepUp0:
FacingStepUp2: ; standing up
db 4 ; #
db 0, 0, 0, $04
db 0, 8, 0, $05
db 8, 0, 2, $06
db 8, 8, 2, $07
; 40cf
FacingStepUp1: ; walking up 1
db 4 ; #
db 0, 0, 0, $84
db 0, 8, 0, $85
db 8, 0, 2, $86
db 8, 8, 2, $87
; 40e0
FacingStepUp3: ; walking up 2
db 4 ; #
db 0, 8, X_FLIP, $84
db 0, 0, X_FLIP, $85
db 8, 8, 2 | X_FLIP, $86
db 8, 0, 2 | X_FLIP, $87
; 40f1
FacingStepLeft0:
FacingStepLeft2: ; standing left
db 4 ; #
db 0, 0, 0, $08
db 0, 8, 0, $09
db 8, 0, 2, $0a
db 8, 8, 2, $0b
; 4102
FacingStepRight0:
FacingStepRight2: ; standing right
db 4 ; #
db 0, 8, X_FLIP, $08
db 0, 0, X_FLIP, $09
db 8, 8, 2 | X_FLIP, $0a
db 8, 0, 2 | X_FLIP, $0b
; 4113
FacingStepLeft1:
FacingStepLeft3: ; walking left
db 4 ; #
db 0, 0, 0, $88
db 0, 8, 0, $89
db 8, 0, 2, $8a
db 8, 8, 2, $8b
; 4124
FacingStepRight1:
FacingStepRight3: ; walking right
db 4 ; #
db 0, 8, X_FLIP, $88
db 0, 0, X_FLIP, $89
db 8, 8, 2 | X_FLIP, $8a
db 8, 0, 2 | X_FLIP, $8b
; 4135
FacingFishDown: ; fishing down
db 5 ; #
db 0, 0, 0, $00
db 0, 8, 0, $01
db 8, 0, 2, $02
db 8, 8, 2, $03
db 16, 0, 4, $fc
; 414a
FacingFishUp: ; fishing up
db 5 ; #
db 0, 0, 0, $04
db 0, 8, 0, $05
db 8, 0, 2, $06
db 8, 8, 2, $07
db -8, 0, 4, $fc
; 415f
FacingFishLeft: ; fishing left
db 5 ; #
db 0, 0, 0, $08
db 0, 8, 0, $09
db 8, 0, 2, $0a
db 8, 8, 2, $0b
db 5, -8, 4 | X_FLIP, $fd
; 4174
FacingFishRight: ; fishing right
db 5 ; #
db 0, 8, X_FLIP, $08
db 0, 0, X_FLIP, $09
db 8, 8, 2 | X_FLIP, $0a
db 8, 0, 2 | X_FLIP, $0b
db 5, 16, 4, $fd
; 4189
FacingEmote: ; emote
db 4 ; #
db 0, 0, 4, $f8
db 0, 8, 4, $f9
db 8, 0, 4, $fa
db 8, 8, 4, $fb
; 419a
FacingShadow: ; shadow
db 2 ; #
db 0, 0, 4, $fc
db 0, 8, 4 | X_FLIP, $fc
; 41a3
FacingBigDollSymmetric: ; big snorlax or lapras doll
db 16 ; #
db 0, 0, 0, $00
db 0, 8, 0, $01
db 8, 0, 0, $02
db 8, 8, 0, $03
db 16, 0, 0, $04
db 16, 8, 0, $05
db 24, 0, 0, $06
db 24, 8, 0, $07
db 0, 24, X_FLIP, $00
db 0, 16, X_FLIP, $01
db 8, 24, X_FLIP, $02
db 8, 16, X_FLIP, $03
db 16, 24, X_FLIP, $04
db 16, 16, X_FLIP, $05
db 24, 24, X_FLIP, $06
db 24, 16, X_FLIP, $07
; 41e4
FacingWeirdTree1: ; 41e4
db 4 ; #
db 0, 0, 0, $04
db 0, 8, 0, $05
db 8, 0, 0, $06
db 8, 8, 0, $07
; 41f5
FacingWeirdTree3: ; 41f5
db 4 ; #
db 0, 8, X_FLIP, $04
db 0, 0, X_FLIP, $05
db 8, 8, X_FLIP, $06
db 8, 0, X_FLIP, $07
; 4206
FacingBigDollAsymmetric: ; big doll other than snorlax or lapras
db 14 ; #
db 0, 0, 0, $00
db 0, 8, 0, $01
db 8, 0, 0, $04
db 8, 8, 0, $05
db 16, 8, 0, $07
db 24, 8, 0, $0a
db 0, 24, 0, $03
db 0, 16, 0, $02
db 8, 24, X_FLIP, $02
db 8, 16, 0, $06
db 16, 24, 0, $09
db 16, 16, 0, $08
db 24, 24, X_FLIP, $04
db 24, 16, 0, $0b
; 423f
FacingBoulderDust1: ; boulder dust 1
db 4 ; #
db 0, 0, 4, $fe
db 0, 8, 4, $fe
db 8, 0, 4, $fe
db 8, 8, 4, $fe
; 4250
FacingBoulderDust2: ; boulder dust 2
db 4 ; #
db 0, 0, 4, $ff
db 0, 8, 4, $ff
db 8, 0, 4, $ff
db 8, 8, 4, $ff
; 4261
FacingGrass1: ; 4261
db 2 ; #
db 8, 0, 4, $fe
db 8, 8, 4 | X_FLIP, $fe
; 426a
FacingGrass2: ; 426a
db 2 ; #
db 9, -1, 4, $fe
db 9, 9, 4 | X_FLIP, $fe
; 4273

32
data/fruit_tree_items.asm Normal file
View File

@@ -0,0 +1,32 @@
; entries correspond to FRUITTREE_* constants
db BERRY ; ROUTE_29
db BERRY ; ROUTE_30_1
db BERRY ; ROUTE_38
db BERRY ; ROUTE_46_1
db PSNCUREBERRY ; ROUTE_30_2
db PSNCUREBERRY ; ROUTE_33
db BITTER_BERRY ; ROUTE_31
db BITTER_BERRY ; ROUTE_43
db PRZCUREBERRY ; VIOLET_CITY
db PRZCUREBERRY ; ROUTE_46_2
db MYSTERYBERRY ; ROUTE_35
db MYSTERYBERRY ; ROUTE_45
db ICE_BERRY ; ROUTE_36
db ICE_BERRY ; ROUTE_26
db MINT_BERRY ; ROUTE_39
db BURNT_BERRY ; ROUTE_44
db RED_APRICORN ; ROUTE_37_1
db BLU_APRICORN ; ROUTE_37_2
db BLK_APRICORN ; ROUTE_37_3
db WHT_APRICORN ; AZALEA_TOWN
db PNK_APRICORN ; ROUTE_42_1
db GRN_APRICORN ; ROUTE_42_2
db YLW_APRICORN ; ROUTE_42_3
db BERRY ; ROUTE_11
db PSNCUREBERRY ; ROUTE_2
db BITTER_BERRY ; ROUTE_1
db PRZCUREBERRY ; ROUTE_8
db ICE_BERRY ; PEWTER_CITY_1
db MINT_BERRY ; PEWTER_CITY_2
db BURNT_BERRY ; FUCHSIA_CITY

View File

@@ -0,0 +1,22 @@
; entries correspond to HAPPINESS_* constants
; change if happiness < 100, change if happiness < 200, change otherwise
db +5, +3, +2 ; Gained a level
db +5, +3, +2 ; Vitamin
db +1, +1, +0 ; X Item
db +3, +2, +1 ; Battled a Gym Leader
db +1, +1, +0 ; Learned a move
db -1, -1, -1 ; Lost to an enemy
db -5, -5, -10 ; Fainted due to poison
db -5, -5, -10 ; Lost to a much stronger enemy
db +1, +1, +1 ; Haircut (Y1)
db +3, +3, +1 ; Haircut (Y2)
db +5, +5, +2 ; Haircut (Y3)
db +1, +1, +1 ; Haircut (O1)
db +3, +3, +1 ; Haircut (O2)
db +10, +10, +4 ; Haircut (O3)
db -5, -5, -10 ; Used Heal Powder or Energypowder (bitter)
db -10, -10, -15 ; Used Energy Root (bitter)
db -15, -15, -20 ; Used Revival Herb (bitter)
db +3, +3, +1 ; Grooming
db +10, +6, +4 ; Gained a level in the place where it was caught

53
data/hm_blocks.asm Normal file
View File

@@ -0,0 +1,53 @@
CutTreeBlockPointers: ; c862
; tileset, block list pointer
dbw TILESET_JOHTO_1, .johto1
dbw TILESET_JOHTO_2, .johto2
dbw TILESET_KANTO, .kanto
dbw TILESET_PARK, .park
dbw TILESET_ILEX_FOREST, .ilex
db -1
.johto1 ; Johto OW
; facing block, replacement block, animation
db $03, $02, $01 ; grass
db $5b, $3c, $00 ; tree
db $5f, $3d, $00 ; tree
db $63, $3f, $00 ; tree
db $67, $3e, $00 ; tree
db -1
.johto2 ; Goldenrod area
; facing block, replacement block, animation
db $03, $02, $01 ; grass
db -1
.kanto ; Kanto OW
; facing block, replacement block, animation
db $0b, $0a, $01 ; grass
db $32, $6d, $00 ; tree
db $33, $6c, $00 ; tree
db $34, $6f, $00 ; tree
db $35, $4c, $00 ; tree
db $60, $6e, $00 ; tree
db -1
.park ; National Park
; facing block, replacement block, animation
db $13, $03, $01 ; grass
db $03, $04, $01 ; grass
db -1
.ilex ; Ilex Forest
; facing block, replacement block, animation
db $0f, $17, $00
db -1
WhirlpoolBlockPointers: ; c8a4
dbw TILESET_JOHTO_1, .johto
db -1
.johto ; c8a8
; facing block, replacement block, animation
db $07, $36, $00
db -1

207
data/landmarks.asm Normal file
View File

@@ -0,0 +1,207 @@
landmark: MACRO
; x, y, name
db \1, \2
dw \3
ENDM
; entries correspond to constants/landmark_constants.asm
landmark 0, 0, SpecialMapName
landmark 148, 116, NewBarkTownName
landmark 136, 116, Route29Name
landmark 108, 116, CherrygroveCityName
landmark 108, 96, Route30Name
landmark 104, 76, Route31Name
landmark 92, 76, VioletCityName
landmark 93, 74, SproutTowerName
landmark 92, 108, Route32Name
landmark 84, 92, RuinsOfAlphName
landmark 92, 140, UnionCaveName
landmark 90, 140, Route33Name
landmark 76, 140, AzaleaTownName
landmark 78, 138, SlowpokeWellName
landmark 60, 136, IlexForestName
landmark 60, 128, Route34Name
landmark 60, 108, GoldenrodCityName
landmark 58, 108, RadioTowerName
landmark 60, 92, Route35Name
landmark 60, 76, NationalParkName
landmark 72, 76, Route36Name
landmark 76, 68, Route37Name
landmark 76, 60, EcruteakCityName
landmark 78, 58, TinTowerName
landmark 74, 58, BurnedTowerName
landmark 60, 60, Route38Name
landmark 44, 64, Route39Name
landmark 44, 76, OlivineCityName
landmark 46, 78, LighthouseName
landmark 36, 72, BattleTowerName
landmark 36, 80, Route40Name
landmark 36, 108, WhirlIslandsName
landmark 36, 116, Route41Name
landmark 28, 116, CianwoodCityName
landmark 100, 60, Route42Name
landmark 92, 60, MtMortarName
landmark 116, 60, MahoganyTownName
landmark 116, 52, Route43Name
landmark 116, 44, LakeOfRageName
landmark 128, 60, Route44Name
landmark 138, 54, IcePathName
landmark 140, 60, BlackthornCityName
landmark 140, 52, DragonsDenName
landmark 140, 80, Route45Name
landmark 120, 88, DarkCaveName
landmark 132, 104, Route46Name
landmark 156, 84, SilverCaveName
landmark 60, 124, PalletTownName
landmark 60, 108, Route1Name
landmark 60, 92, ViridianCityName
landmark 60, 80, Route2Name
landmark 60, 68, PewterCityName
landmark 72, 68, Route3Name
landmark 84, 68, MtMoonName
landmark 96, 68, Route4Name
landmark 108, 68, CeruleanCityName
landmark 108, 60, Route24Name
landmark 116, 52, Route25Name
landmark 108, 76, Route5Name
landmark 116, 92, UndergroundName
landmark 108, 92, Route6Name
landmark 108, 100, VermilionCityName
landmark 96, 76, DiglettsCaveName
landmark 96, 84, Route7Name
landmark 124, 84, Route8Name
landmark 124, 68, Route9Name
landmark 140, 68, RockTunnelName
landmark 140, 72, Route10Name
landmark 140, 76, PowerPlantName
landmark 140, 84, LavenderTownName
landmark 148, 84, LavRadioTowerName
landmark 84, 84, CeladonCityName
landmark 108, 84, SaffronCityName
landmark 124, 100, Route11Name
landmark 140, 96, Route12Name
landmark 132, 116, Route13Name
landmark 124, 128, Route14Name
landmark 112, 132, Route15Name
landmark 76, 84, Route16Name
landmark 76, 108, Route17Name
landmark 88, 132, Route18Name
landmark 100, 132, FuchsiaCityName
landmark 100, 144, Route19Name
landmark 84, 148, Route20Name
landmark 76, 148, SeafoamIslandsName
landmark 60, 148, CinnabarIslandName
landmark 60, 136, Route21Name
landmark 44, 84, Route22Name
landmark 36, 68, VictoryRoadName
landmark 36, 60, Route23Name
landmark 36, 52, IndigoPlateauName
landmark 36, 108, Route26Name
landmark 28, 116, Route27Name
landmark 20, 116, TohjoFallsName
landmark 28, 84, Route28Name
landmark 148, 132, FastShipName
NewBarkTownName: db "NEW BARK¯TOWN@"
CherrygroveCityName: db "CHERRYGROVE¯CITY@"
VioletCityName: db "VIOLET CITY@"
AzaleaTownName: db "AZALEA TOWN@"
GoldenrodCityName: db "GOLDENROD¯CITY@"
EcruteakCityName: db "ECRUTEAK¯CITY@"
OlivineCityName: db "OLIVINE¯CITY@"
CianwoodCityName: db "CIANWOOD¯CITY@"
MahoganyTownName: db "MAHOGANY¯TOWN@"
BlackthornCityName: db "BLACKTHORN¯CITY@"
LakeOfRageName: db "LAKE OF¯RAGE@"
SilverCaveName: db "SILVER CAVE@"
SproutTowerName: db "SPROUT¯TOWER@"
RuinsOfAlphName: db "RUINS¯OF ALPH@"
UnionCaveName: db "UNION CAVE@"
SlowpokeWellName: db "SLOWPOKE¯WELL@"
RadioTowerName: db "RADIO TOWER@"
PowerPlantName: db "POWER PLANT@"
NationalParkName: db "NATIONAL¯PARK@"
TinTowerName: db "TIN TOWER@"
LighthouseName: db "LIGHTHOUSE@"
WhirlIslandsName: db "WHIRL¯ISLANDS@"
MtMortarName: db "MT.MORTAR@"
DragonsDenName: db "DRAGON'S¯DEN@"
IcePathName: db "ICE PATH@"
NotApplicableName: db "N/A@"
PalletTownName: db "PALLET TOWN@"
ViridianCityName: db "VIRIDIAN¯CITY@"
PewterCityName: db "PEWTER CITY@"
CeruleanCityName: db "CERULEAN¯CITY@"
LavenderTownName: db "LAVENDER¯TOWN@"
VermilionCityName: db "VERMILION¯CITY@"
CeladonCityName: db "CELADON¯CITY@"
SaffronCityName: db "SAFFRON¯CITY@"
FuchsiaCityName: db "FUCHSIA¯CITY@"
CinnabarIslandName: db "CINNABAR¯ISLAND@"
IndigoPlateauName: db "INDIGO¯PLATEAU@"
VictoryRoadName: db "VICTORY¯ROAD@"
MtMoonName: db "MT.MOON@"
RockTunnelName: db "ROCK TUNNEL@"
LavRadioTowerName: db "LAV¯RADIO TOWER@"
SilphCoName: db "SILPH CO.@"
SafariZoneName: db "SAFARI ZONE@"
SeafoamIslandsName: db "SEAFOAM¯ISLANDS@"
PokemonMansionName: db "#MON¯MANSION@"
CeruleanCaveName: db "CERULEAN¯CAVE@"
Route1Name: db "ROUTE 1@"
Route2Name: db "ROUTE 2@"
Route3Name: db "ROUTE 3@"
Route4Name: db "ROUTE 4@"
Route5Name: db "ROUTE 5@"
Route6Name: db "ROUTE 6@"
Route7Name: db "ROUTE 7@"
Route8Name: db "ROUTE 8@"
Route9Name: db "ROUTE 9@"
Route10Name: db "ROUTE 10@"
Route11Name: db "ROUTE 11@"
Route12Name: db "ROUTE 12@"
Route13Name: db "ROUTE 13@"
Route14Name: db "ROUTE 14@"
Route15Name: db "ROUTE 15@"
Route16Name: db "ROUTE 16@"
Route17Name: db "ROUTE 17@"
Route18Name: db "ROUTE 18@"
Route19Name: db "ROUTE 19@"
Route20Name: db "ROUTE 20@"
Route21Name: db "ROUTE 21@"
Route22Name: db "ROUTE 22@"
Route23Name: db "ROUTE 23@"
Route24Name: db "ROUTE 24@"
Route25Name: db "ROUTE 25@"
Route26Name: db "ROUTE 26@"
Route27Name: db "ROUTE 27@"
Route28Name: db "ROUTE 28@"
Route29Name: db "ROUTE 29@"
Route30Name: db "ROUTE 30@"
Route31Name: db "ROUTE 31@"
Route32Name: db "ROUTE 32@"
Route33Name: db "ROUTE 33@"
Route34Name: db "ROUTE 34@"
Route35Name: db "ROUTE 35@"
Route36Name: db "ROUTE 36@"
Route37Name: db "ROUTE 37@"
Route38Name: db "ROUTE 38@"
Route39Name: db "ROUTE 39@"
Route40Name: db "ROUTE 40@"
Route41Name: db "ROUTE 41@"
Route42Name: db "ROUTE 42@"
Route43Name: db "ROUTE 43@"
Route44Name: db "ROUTE 44@"
Route45Name: db "ROUTE 45@"
Route46Name: db "ROUTE 46@"
DarkCaveName: db "DARK CAVE@"
IlexForestName: db "ILEX¯FOREST@"
BurnedTowerName: db "BURNED¯TOWER@"
FastShipName: db "FAST SHIP@"
ViridianForestName: db "VIRIDIAN¯FOREST@"
DiglettsCaveName: db "DIGLETT'S¯CAVE@"
TohjoFallsName: db "TOHJO FALLS@"
UndergroundName: db "UNDERGROUND@"
BattleTowerName: db "BATTLE¯TOWER@"
SpecialMapName: db "SPECIAL@"

87
data/map_triggers.asm Normal file
View File

@@ -0,0 +1,87 @@
trigger_def: MACRO
; db group, map
; dw address
map \1
dw \2
ENDM
trigger_def POKECENTER_2F, wPokecenter2FTrigger
trigger_def TRADE_CENTER, wTradeCenterTrigger
trigger_def COLOSSEUM, wColosseumTrigger
trigger_def TIME_CAPSULE, wTimeCapsuleTrigger
trigger_def POWER_PLANT, wPowerPlantTrigger
trigger_def CERULEAN_GYM, wCeruleanGymTrigger
trigger_def ROUTE_25, wRoute25Trigger
trigger_def TRAINER_HOUSE_B1F, wTrainerHouseB1FTrigger
trigger_def VICTORY_ROAD_GATE, wVictoryRoadGateTrigger
trigger_def SAFFRON_TRAIN_STATION, wSaffronTrainStationTrigger
trigger_def ROUTE_16_GATE, wRoute16GateTrigger
trigger_def ROUTE_17_18_GATE, wRoute1718GateTrigger
trigger_def INDIGO_PLATEAU_POKECENTER_1F, wIndigoPlateauPokecenter1FTrigger
trigger_def WILLS_ROOM, wWillsRoomTrigger
trigger_def KOGAS_ROOM, wKogasRoomTrigger
trigger_def BRUNOS_ROOM, wBrunosRoomTrigger
trigger_def KARENS_ROOM, wKarensRoomTrigger
trigger_def LANCES_ROOM, wLancesRoomTrigger
trigger_def HALL_OF_FAME, wHallOfFameTrigger
trigger_def ROUTE_27, wRoute27Trigger
trigger_def NEW_BARK_TOWN, wNewBarkTownTrigger
trigger_def ELMS_LAB, wElmsLabTrigger
trigger_def KRISS_HOUSE_1F, wKrissHouse1FTrigger
trigger_def ROUTE_29, wRoute29Trigger
trigger_def CHERRYGROVE_CITY, wCherrygroveCityTrigger
trigger_def MR_POKEMONS_HOUSE, wMrPokemonsHouseTrigger
trigger_def ROUTE_32, wRoute32Trigger
trigger_def ROUTE_35_NATIONAL_PARK_GATE, wRoute35NationalParkGateTrigger
trigger_def ROUTE_36, wRoute36Trigger
trigger_def ROUTE_36_NATIONAL_PARK_GATE, wRoute36NationalParkGateTrigger
trigger_def AZALEA_TOWN, wAzaleaTownTrigger
trigger_def GOLDENROD_GYM, wGoldenrodGymTrigger
trigger_def GOLDENROD_MAGNET_TRAIN_STATION, wGoldenrodMagnetTrainStationTrigger
trigger_def GOLDENROD_POKECENTER_1F, wGoldenrodPokecenter1FTrigger
trigger_def OLIVINE_CITY, wOlivineCityTrigger
trigger_def ROUTE_34, wRoute34Trigger
trigger_def ROUTE_34_ILEX_FOREST_GATE, wRoute34IlexForestGateTrigger
trigger_def ECRUTEAK_HOUSE, wEcruteakHouseTrigger
trigger_def WISE_TRIOS_ROOM, wWiseTriosRoomTrigger
trigger_def ECRUTEAK_POKECENTER_1F, wEcruteakPokecenter1FTrigger
trigger_def ECRUTEAK_GYM, wEcruteakGymTrigger
trigger_def MAHOGANY_TOWN, wMahoganyTownTrigger
trigger_def ROUTE_42, wRoute42Trigger
trigger_def CIANWOOD_CITY, wCianwoodCityTrigger
trigger_def BATTLE_TOWER_1F, wBattleTower1FTrigger
trigger_def BATTLE_TOWER_BATTLE_ROOM, wBattleTowerBattleRoomTrigger
trigger_def BATTLE_TOWER_ELEVATOR, wBattleTowerElevatorTrigger
trigger_def BATTLE_TOWER_HALLWAY, wBattleTowerHallwayTrigger
trigger_def BATTLE_TOWER_OUTSIDE, wBattleTowerOutsideTrigger
trigger_def ROUTE_43_GATE, wRoute43GateTrigger
trigger_def MOUNT_MOON, wMountMoonTrigger
trigger_def SPROUT_TOWER_3F, wSproutTower3FTrigger
trigger_def TIN_TOWER_1F, wTinTower1FTrigger
trigger_def BURNED_TOWER_1F, wBurnedTower1FTrigger
trigger_def BURNED_TOWER_B1F, wBurnedTowerB1FTrigger
trigger_def RADIO_TOWER_5F, wRadioTower5FTrigger
trigger_def RUINS_OF_ALPH_OUTSIDE, wRuinsOfAlphOutsideTrigger
trigger_def RUINS_OF_ALPH_RESEARCH_CENTER, wRuinsOfAlphResearchCenterTrigger
trigger_def RUINS_OF_ALPH_HO_OH_CHAMBER, wRuinsOfAlphHoOhChamberTrigger
trigger_def RUINS_OF_ALPH_KABUTO_CHAMBER, wRuinsOfAlphKabutoChamberTrigger
trigger_def RUINS_OF_ALPH_OMANYTE_CHAMBER, wRuinsOfAlphOmanyteChamberTrigger
trigger_def RUINS_OF_ALPH_AERODACTYL_CHAMBER, wRuinsOfAlphAerodactylChamberTrigger
trigger_def RUINS_OF_ALPH_INNER_CHAMBER, wRuinsOfAlphInnerChamberTrigger
trigger_def MAHOGANY_MART_1F, wMahoganyMart1FTrigger
trigger_def TEAM_ROCKET_BASE_B1F, wTeamRocketBaseB1FTrigger
trigger_def TEAM_ROCKET_BASE_B2F, wTeamRocketBaseB2FTrigger
trigger_def TEAM_ROCKET_BASE_B3F, wTeamRocketBaseB3FTrigger
trigger_def UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, wUndergroundPathSwitchRoomEntrancesTrigger
trigger_def SILVER_CAVE_ROOM_3, wSilverCaveRoom3Trigger
trigger_def VICTORY_ROAD, wVictoryRoadTrigger
trigger_def DRAGONS_DEN_B1F, wDragonsDenB1FTrigger
trigger_def DRAGON_SHRINE, wDragonShrineTrigger
trigger_def OLIVINE_PORT, wOlivinePortTrigger
trigger_def VERMILION_PORT, wVermilionPortTrigger
trigger_def FAST_SHIP_1F, wFastShip1FTrigger
trigger_def FAST_SHIP_B1F, wFastShipB1FTrigger
trigger_def MOUNT_MOON_SQUARE, wMountMoonSquareTrigger
trigger_def MOBILE_TRADE_ROOM_MOBILE, wMobileTradeRoomMobileTrigger
trigger_def MOBILE_BATTLE_ROOM, wMobileBattleRoomTrigger
db -1

27
data/mom_phone_items.asm Normal file
View File

@@ -0,0 +1,27 @@
momitem: macro
; money to trigger, cost, kind, item
dt \1
dt \2
db \3, \4
ENDM
MomItems_1: ; fd136
momitem 0, 600, MOM_ITEM, SUPER_POTION
momitem 0, 90, MOM_ITEM, ANTIDOTE
momitem 0, 180, MOM_ITEM, POKE_BALL
momitem 0, 450, MOM_ITEM, ESCAPE_ROPE
momitem 0, 500, MOM_ITEM, GREAT_BALL
MomItems_1End: ; fd15e
MomItems_2: ; fd15e
momitem 900, 600, MOM_ITEM, SUPER_POTION
momitem 4000, 270, MOM_ITEM, REPEL
momitem 7000, 600, MOM_ITEM, SUPER_POTION
momitem 10000, 1800, MOM_DOLL, DECO_CHARMANDER_DOLL
momitem 15000, 3000, MOM_ITEM, MOON_STONE
momitem 19000, 600, MOM_ITEM, SUPER_POTION
momitem 30000, 4800, MOM_DOLL, DECO_CLEFAIRY_DOLL
momitem 40000, 900, MOM_ITEM, HYPER_POTION
momitem 50000, 8000, MOM_DOLL, DECO_PIKACHU_DOLL
momitem 100000, 22800, MOM_DOLL, DECO_BIG_SNORLAX_DOLL
MomItems_2End: ; fd1ae

252
data/mon_menu_icons.asm Normal file
View File

@@ -0,0 +1,252 @@
; party menu icons
db ICON_BULBASAUR ; BULBASAUR
db ICON_BULBASAUR ; IVYSAUR
db ICON_BULBASAUR ; VENUSAUR
db ICON_CHARMANDER ; CHARMANDER
db ICON_CHARMANDER ; CHARMELEON
db ICON_BIGMON ; CHARIZARD
db ICON_SQUIRTLE ; SQUIRTLE
db ICON_SQUIRTLE ; WARTORTLE
db ICON_SQUIRTLE ; BLASTOISE
db ICON_CATERPILLAR ; CATERPIE
db ICON_CATERPILLAR ; METAPOD
db ICON_MOTH ; BUTTERFREE
db ICON_CATERPILLAR ; WEEDLE
db ICON_CATERPILLAR ; KAKUNA
db ICON_BUG ; BEEDRILL
db ICON_BIRD ; PIDGEY
db ICON_BIRD ; PIDGEOTTO
db ICON_BIRD ; PIDGEOT
db ICON_FOX ; RATTATA
db ICON_FOX ; RATICATE
db ICON_BIRD ; SPEAROW
db ICON_BIRD ; FEAROW
db ICON_SERPENT ; EKANS
db ICON_SERPENT ; ARBOK
db ICON_PIKACHU ; PIKACHU
db ICON_PIKACHU ; RAICHU
db ICON_MONSTER ; SANDSHREW
db ICON_MONSTER ; SANDSLASH
db ICON_FOX ; NIDORAN_F
db ICON_FOX ; NIDORINA
db ICON_MONSTER ; NIDOQUEEN
db ICON_FOX ; NIDORAN_M
db ICON_FOX ; NIDORINO
db ICON_MONSTER ; NIDOKING
db ICON_CLEFAIRY ; CLEFAIRY
db ICON_CLEFAIRY ; CLEFABLE
db ICON_FOX ; VULPIX
db ICON_FOX ; NINETALES
db ICON_JIGGLYPUFF ; JIGGLYPUFF
db ICON_JIGGLYPUFF ; WIGGLYTUFF
db ICON_BAT ; ZUBAT
db ICON_BAT ; GOLBAT
db ICON_ODDISH ; ODDISH
db ICON_ODDISH ; GLOOM
db ICON_ODDISH ; VILEPLUME
db ICON_BUG ; PARAS
db ICON_BUG ; PARASECT
db ICON_CATERPILLAR ; VENONAT
db ICON_MOTH ; VENOMOTH
db ICON_DIGLETT ; DIGLETT
db ICON_DIGLETT ; DUGTRIO
db ICON_FOX ; MEOWTH
db ICON_FOX ; PERSIAN
db ICON_MONSTER ; PSYDUCK
db ICON_MONSTER ; GOLDUCK
db ICON_FIGHTER ; MANKEY
db ICON_FIGHTER ; PRIMEAPE
db ICON_FOX ; GROWLITHE
db ICON_FOX ; ARCANINE
db ICON_POLIWAG ; POLIWAG
db ICON_POLIWAG ; POLIWHIRL
db ICON_POLIWAG ; POLIWRATH
db ICON_HUMANSHAPE ; ABRA
db ICON_HUMANSHAPE ; KADABRA
db ICON_HUMANSHAPE ; ALAKAZAM
db ICON_FIGHTER ; MACHOP
db ICON_FIGHTER ; MACHOKE
db ICON_FIGHTER ; MACHAMP
db ICON_ODDISH ; BELLSPROUT
db ICON_ODDISH ; WEEPINBELL
db ICON_ODDISH ; VICTREEBEL
db ICON_JELLYFISH ; TENTACOOL
db ICON_JELLYFISH ; TENTACRUEL
db ICON_GEODUDE ; GEODUDE
db ICON_GEODUDE ; GRAVELER
db ICON_GEODUDE ; GOLEM
db ICON_EQUINE ; PONYTA
db ICON_EQUINE ; RAPIDASH
db ICON_SLOWPOKE ; SLOWPOKE
db ICON_SLOWPOKE ; SLOWBRO
db ICON_VOLTORB ; MAGNEMITE
db ICON_VOLTORB ; MAGNETON
db ICON_BIRD ; FARFETCH_D
db ICON_BIRD ; DODUO
db ICON_BIRD ; DODRIO
db ICON_LAPRAS ; SEEL
db ICON_LAPRAS ; DEWGONG
db ICON_BLOB ; GRIMER
db ICON_BLOB ; MUK
db ICON_SHELL ; SHELLDER
db ICON_SHELL ; CLOYSTER
db ICON_GHOST ; GASTLY
db ICON_GHOST ; HAUNTER
db ICON_GHOST ; GENGAR
db ICON_SERPENT ; ONIX
db ICON_HUMANSHAPE ; DROWZEE
db ICON_HUMANSHAPE ; HYPNO
db ICON_SHELL ; KRABBY
db ICON_SHELL ; KINGLER
db ICON_VOLTORB ; VOLTORB
db ICON_VOLTORB ; ELECTRODE
db ICON_ODDISH ; EXEGGCUTE
db ICON_ODDISH ; EXEGGUTOR
db ICON_MONSTER ; CUBONE
db ICON_MONSTER ; MAROWAK
db ICON_FIGHTER ; HITMONLEE
db ICON_FIGHTER ; HITMONCHAN
db ICON_MONSTER ; LICKITUNG
db ICON_BLOB ; KOFFING
db ICON_BLOB ; WEEZING
db ICON_EQUINE ; RHYHORN
db ICON_MONSTER ; RHYDON
db ICON_CLEFAIRY ; CHANSEY
db ICON_ODDISH ; TANGELA
db ICON_MONSTER ; KANGASKHAN
db ICON_FISH ; HORSEA
db ICON_FISH ; SEADRA
db ICON_FISH ; GOLDEEN
db ICON_FISH ; SEAKING
db ICON_STARYU ; STARYU
db ICON_STARYU ; STARMIE
db ICON_HUMANSHAPE ; MR__MIME
db ICON_BUG ; SCYTHER
db ICON_HUMANSHAPE ; JYNX
db ICON_HUMANSHAPE ; ELECTABUZZ
db ICON_HUMANSHAPE ; MAGMAR
db ICON_BUG ; PINSIR
db ICON_EQUINE ; TAUROS
db ICON_FISH ; MAGIKARP
db ICON_GYARADOS ; GYARADOS
db ICON_LAPRAS ; LAPRAS
db ICON_BLOB ; DITTO
db ICON_FOX ; EEVEE
db ICON_FOX ; VAPOREON
db ICON_FOX ; JOLTEON
db ICON_FOX ; FLAREON
db ICON_VOLTORB ; PORYGON
db ICON_SHELL ; OMANYTE
db ICON_SHELL ; OMASTAR
db ICON_SHELL ; KABUTO
db ICON_SHELL ; KABUTOPS
db ICON_BIRD ; AERODACTYL
db ICON_SNORLAX ; SNORLAX
db ICON_BIRD ; ARTICUNO
db ICON_BIRD ; ZAPDOS
db ICON_BIRD ; MOLTRES
db ICON_SERPENT ; DRATINI
db ICON_SERPENT ; DRAGONAIR
db ICON_BIGMON ; DRAGONITE
db ICON_HUMANSHAPE ; MEWTWO
db ICON_HUMANSHAPE ; MEW
db ICON_ODDISH ; CHIKORITA
db ICON_ODDISH ; BAYLEEF
db ICON_ODDISH ; MEGANIUM
db ICON_FOX ; CYNDAQUIL
db ICON_FOX ; QUILAVA
db ICON_FOX ; TYPHLOSION
db ICON_MONSTER ; TOTODILE
db ICON_MONSTER ; CROCONAW
db ICON_MONSTER ; FERALIGATR
db ICON_FOX ; SENTRET
db ICON_FOX ; FURRET
db ICON_BIRD ; HOOTHOOT
db ICON_BIRD ; NOCTOWL
db ICON_BUG ; LEDYBA
db ICON_BUG ; LEDIAN
db ICON_BUG ; SPINARAK
db ICON_BUG ; ARIADOS
db ICON_BAT ; CROBAT
db ICON_FISH ; CHINCHOU
db ICON_FISH ; LANTURN
db ICON_PIKACHU ; PICHU
db ICON_CLEFAIRY ; CLEFFA
db ICON_JIGGLYPUFF ; IGGLYBUFF
db ICON_CLEFAIRY ; TOGEPI
db ICON_BIRD ; TOGETIC
db ICON_BIRD ; NATU
db ICON_BIRD ; XATU
db ICON_FOX ; MAREEP
db ICON_MONSTER ; FLAAFFY
db ICON_MONSTER ; AMPHAROS
db ICON_ODDISH ; BELLOSSOM
db ICON_JIGGLYPUFF ; MARILL
db ICON_JIGGLYPUFF ; AZUMARILL
db ICON_SUDOWOODO ; SUDOWOODO
db ICON_POLIWAG ; POLITOED
db ICON_ODDISH ; HOPPIP
db ICON_ODDISH ; SKIPLOOM
db ICON_ODDISH ; JUMPLUFF
db ICON_MONSTER ; AIPOM
db ICON_ODDISH ; SUNKERN
db ICON_ODDISH ; SUNFLORA
db ICON_BUG ; YANMA
db ICON_MONSTER ; WOOPER
db ICON_MONSTER ; QUAGSIRE
db ICON_FOX ; ESPEON
db ICON_FOX ; UMBREON
db ICON_BIRD ; MURKROW
db ICON_SLOWPOKE ; SLOWKING
db ICON_GHOST ; MISDREAVUS
db ICON_UNOWN ; UNOWN
db ICON_GHOST ; WOBBUFFET
db ICON_EQUINE ; GIRAFARIG
db ICON_BUG ; PINECO
db ICON_BUG ; FORRETRESS
db ICON_SERPENT ; DUNSPARCE
db ICON_BUG ; GLIGAR
db ICON_SERPENT ; STEELIX
db ICON_MONSTER ; SNUBBULL
db ICON_MONSTER ; GRANBULL
db ICON_FISH ; QWILFISH
db ICON_BUG ; SCIZOR
db ICON_BUG ; SHUCKLE
db ICON_BUG ; HERACROSS
db ICON_FOX ; SNEASEL
db ICON_MONSTER ; TEDDIURSA
db ICON_MONSTER ; URSARING
db ICON_BLOB ; SLUGMA
db ICON_BLOB ; MAGCARGO
db ICON_EQUINE ; SWINUB
db ICON_EQUINE ; PILOSWINE
db ICON_SHELL ; CORSOLA
db ICON_FISH ; REMORAID
db ICON_FISH ; OCTILLERY
db ICON_MONSTER ; DELIBIRD
db ICON_FISH ; MANTINE
db ICON_BIRD ; SKARMORY
db ICON_FOX ; HOUNDOUR
db ICON_FOX ; HOUNDOOM
db ICON_BIGMON ; KINGDRA
db ICON_EQUINE ; PHANPY
db ICON_EQUINE ; DONPHAN
db ICON_VOLTORB ; PORYGON2
db ICON_EQUINE ; STANTLER
db ICON_MONSTER ; SMEARGLE
db ICON_FIGHTER ; TYROGUE
db ICON_FIGHTER ; HITMONTOP
db ICON_HUMANSHAPE ; SMOOCHUM
db ICON_HUMANSHAPE ; ELEKID
db ICON_HUMANSHAPE ; MAGBY
db ICON_EQUINE ; MILTANK
db ICON_CLEFAIRY ; BLISSEY
db ICON_FOX ; RAIKOU
db ICON_FOX ; ENTEI
db ICON_FOX ; SUICUNE
db ICON_MONSTER ; LARVITAR
db ICON_MONSTER ; PUPITAR
db ICON_MONSTER ; TYRANITAR
db ICON_LUGIA ; LUGIA
db ICON_HO_OH ; HO_OH
db ICON_HUMANSHAPE ; CELEBI

View File

@@ -0,0 +1,37 @@
db DECOFLAG_PIKACHU_DOLL
db DECOFLAG_BULBASAUR_DOLL
db DECOFLAG_CHARMANDER_DOLL
db DECOFLAG_SQUIRTLE_DOLL
db DECOFLAG_POLIWAG_DOLL
db DECOFLAG_DIGLETT_DOLL
db DECOFLAG_STARMIE_DOLL
db DECOFLAG_MAGIKARP_DOLL
db DECOFLAG_ODDISH_DOLL
db DECOFLAG_GENGAR_DOLL
db DECOFLAG_CLEFAIRY_POSTER
db DECOFLAG_JIGGLYPUFF_POSTER
db DECOFLAG_SNES
db DECOFLAG_SHELLDER_DOLL
db DECOFLAG_VOLTORB_DOLL
db DECOFLAG_WEEDLE_DOLL
db DECOFLAG_MAGNAPLANT
db DECOFLAG_TROPICPLANT
db DECOFLAG_FAMICOM
db DECOFLAG_N64
db DECOFLAG_SURF_PIKACHU_DOLL
db DECOFLAG_JIGGLYPUFF_DOLL
db DECOFLAG_PINK_BED
db DECOFLAG_POLKADOT_BED
db DECOFLAG_RED_CARPET
db DECOFLAG_BLUE_CARPET
db DECOFLAG_YELLOW_CARPET
db DECOFLAG_GREEN_CARPET
db DECOFLAG_JUMBOPLANT
db DECOFLAG_VIRTUAL_BOY
db DECOFLAG_MACHOP_DOLL
db DECOFLAG_PIKACHU_POSTER
db DECOFLAG_TENTACOOL_DOLL
db DECOFLAG_BIG_ONIX_DOLL
db DECOFLAG_PIKACHU_BED
db DECOFLAG_GRIMER_DOLL
db DECOFLAG_UNOWN_DOLL

View File

@@ -0,0 +1,37 @@
db BERRY
db PRZCUREBERRY
db MINT_BERRY
db ICE_BERRY
db BURNT_BERRY
db PSNCUREBERRY
db GUARD_SPEC
db X_DEFEND
db X_ATTACK
db BITTER_BERRY
db DIRE_HIT
db X_SPECIAL
db X_ACCURACY
db EON_MAIL
db MORPH_MAIL
db MUSIC_MAIL
db MIRACLEBERRY
db GOLD_BERRY
db REVIVE
db GREAT_BALL
db SUPER_REPEL
db MAX_REPEL
db ELIXER
db ETHER
db WATER_STONE
db FIRE_STONE
db LEAF_STONE
db THUNDERSTONE
db MAX_ETHER
db MAX_ELIXER
db MAX_REVIVE
db SCOPE_LENS
db HP_UP
db PP_UP
db RARE_CANDY
db BLUESKY_MAIL
db MIRAGE_MAIL

20
data/npc_trades.asm Normal file
View File

@@ -0,0 +1,20 @@
npctrade: MACRO
; dialog set, requested mon, offered mon, nickname, dvs, item, OT ID, OT name, gender requested
db \1, \2, \3, \4, \5, \6, \7
shift
dw \7
db \8, \9, 0
ENDM
TRADE_EITHER_GENDER EQU 0
TRADE_MALE_ONLY EQU 1
TRADE_FEMALE_ONLY EQU 2
; entries correspond to NPCTRADE_* constants
npctrade 0, ABRA, MACHOP, "MUSCLE@@@@@", $37, $66, GOLD_BERRY, 37460, "MIKE@@@@@@@", TRADE_EITHER_GENDER
npctrade 0, BELLSPROUT, ONIX, "ROCKY@@@@@@", $96, $66, BITTER_BERRY, 48926, "KYLE@@@@@@@", TRADE_EITHER_GENDER
npctrade 1, KRABBY, VOLTORB, "VOLTY@@@@@@", $98, $88, PRZCUREBERRY, 29189, "TIM@@@@@@@@", TRADE_EITHER_GENDER
npctrade 3, DRAGONAIR, DODRIO, "DORIS@@@@@@", $77, $66, SMOKE_BALL, 00283, "EMY@@@@@@@@", TRADE_FEMALE_ONLY
npctrade 2, HAUNTER, XATU, "PAUL@@@@@@@", $96, $86, MYSTERYBERRY, 15616, "CHRIS@@@@@@", TRADE_EITHER_GENDER
npctrade 3, CHANSEY, AERODACTYL, "AEROY@@@@@@", $96, $66, GOLD_BERRY, 26491, "KIM@@@@@@@@", TRADE_EITHER_GENDER
npctrade 0, DUGTRIO, MAGNETON, "MAGGIE@@@@@", $96, $66, METAL_COAT, 50082, "FOREST@@@@@", TRADE_EITHER_GENDER

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