diff options
Diffstat (limited to 'main.asm')
-rw-r--r-- | main.asm | 343 |
1 files changed, 24 insertions, 319 deletions
@@ -23,53 +23,9 @@ INCLUDE "engine/pinball_game/menu.asm" INCLUDE "data/collision/collision_deltas.asm" INCLUDE "engine/pokedex/variable_width_font_character.asm" -Func_8ee0: ; 0x8ee0 - ld a, [$ff8d] - ld [$ff90], a - ld a, [$ff8e] - ld [$ff91], a - ld a, [$ff8d] - ld c, a - ld a, [$ff8e] - ld b, a - ld a, [$ff8c] - ld l, a - ld h, $0 - add hl, bc - ld a, l - ld [$ff8d], a - ld a, h - ld [$ff8e], a - srl h - rr l - srl h - rr l - ld a, [$ff8f] - cp l - ret - -Data_8f06: - SECTION "bank2.2", ROMX -Data_9800: - -macro_9800: MACRO -x = 0 -rept \1 -y = 0 -rept $100 / \1 - db (x + y) & $ff -y = y + \1 -endr -x = x + 1 -endr -endm - -w = $100 -rept 8 - macro_9800 w -w = w >> 1 -endr + +INCLUDE "data/unknown/unused_9800.asm" PokedexCharactersGfx: ; 0xa000 INCBIN "gfx/pokedex/characters.interleave.2bpp" @@ -102,32 +58,6 @@ INCLUDE "engine/pinball_game/end_of_ball_bonus.asm" SECTION "bank4", ROMX -CheckSpecialModeColision: ; 0x10000 - ld c, a - ld a, [wInSpecialMode] ;special mode in c - and a - ret z ;if mot in special mode, ret - ld a, c - ld [wSpecialModeCollisionID], a - ld a, [wSpecialMode] - cp SPECIAL_MODE_EVOLUTION ;branch based on mode - jp z, HandleEvoModeCollision ;call evo mode logic - cp SPECIAL_MODE_MAP_MOVE - jr nz, .CatchMode ;call catch mode logic - callba HandleMapModeCollision ;call map move logic - ret - -.CatchMode - ld a, [wCurrentStage] - call CallInFollowingTable -HandleCatchEmCollisionCallTable: ; 0x10027 - padded_dab HandleRedCatchEmCollision ; STAGE_RED_FIELD_TOP - padded_dab HandleRedCatchEmCollision ; STAGE_RED_FIELD_BOTTOM - padded_dab HandleRedCatchEmCollision - padded_dab HandleRedCatchEmCollision - padded_dab HandleBlueCatchEmCollision ; STAGE_BLUE_FIELD_TOP - padded_dab HandleBlueCatchEmCollision ; STAGE_BLUE_FIELD_BOTTOM - INCLUDE "engine/pinball_game/catchem_mode.asm" INCLUDE "engine/pinball_game/evolution_mode.asm" INCLUDE "data/wild_mons.asm" @@ -136,247 +66,12 @@ INCLUDE "data/evolution_lines.asm" INCLUDE "data/evolution_methods.asm" INCLUDE "data/mon_names.asm" INCLUDE "data/mon_initial_indicator_states.asm" - -Data_1298b: ; 0x1298b -; This has to do with which indicators will need to be hit to evolve the pokemon. - db $01 ; BULBASAUR - db $02 ; IVYSAUR - db $03 ; VENUSAUR - db $01 ; CHARMANDER - db $02 ; CHARMELEON - db $03 ; CHARIZARD - db $01 ; SQUIRTLE - db $02 ; WARTORTLE - db $03 ; BLASTOISE - db $01 ; CATERPIE - db $02 ; METAPOD - db $03 ; BUTTERFREE - db $01 ; WEEDLE - db $02 ; KAKUNA - db $03 ; BEEDRILL - db $01 ; PIDGEY - db $02 ; PIDGEOTTO - db $03 ; PIDGEOT - db $01 ; RATTATA - db $03 ; RATICATE - db $01 ; SPEAROW - db $03 ; FEAROW - db $01 ; EKANS - db $03 ; ARBOK - db $01 ; PIKACHU - db $03 ; RAICHU - db $01 ; SANDSHREW - db $03 ; SANDSLASH - db $01 ; NIDORAN_F - db $02 ; NIDORINA - db $04 ; NIDOQUEEN - db $01 ; NIDORAN_M - db $02 ; NIDORINO - db $04 ; NIDOKING - db $02 ; CLEFAIRY - db $03 ; CLEFABLE - db $02 ; VULPIX - db $03 ; NINETALES - db $02 ; JIGGLYPUFF - db $03 ; WIGGLYTUFF - db $02 ; ZUBAT - db $03 ; GOLBAT - db $01 ; ODDISH - db $02 ; GLOOM - db $04 ; VILEPLUME - db $02 ; PARAS - db $03 ; PARASECT - db $02 ; VENONAT - db $03 ; VENOMOTH - db $02 ; DIGLETT - db $03 ; DUGTRIO - db $02 ; MEOWTH - db $03 ; PERSIAN - db $02 ; PSYDUCK - db $03 ; GOLDUCK - db $02 ; MANKEY - db $03 ; PRIMEAPE - db $02 ; GROWLITHE - db $03 ; ARCANINE - db $01 ; POLIWAG - db $02 ; POLIWHIRL - db $04 ; POLIWRATH - db $01 ; ABRA - db $02 ; KADABRA - db $04 ; ALAKAZAM - db $01 ; MACHOP - db $02 ; MACHOKE - db $04 ; MACHAMP - db $01 ; BELLSPROUT - db $02 ; WEEPINBELL - db $04 ; VICTREEBEL - db $02 ; TENTACOOL - db $03 ; TENTACRUEL - db $01 ; GEODUDE - db $02 ; GRAVELER - db $04 ; GOLEM - db $02 ; PONYTA - db $03 ; RAPIDASH - db $02 ; SLOWPOKE - db $03 ; SLOWBRO - db $02 ; MAGNEMITE - db $03 ; MAGNETON - db $04 ; FARFETCH_D - db $02 ; DODUO - db $03 ; DODRIO - db $02 ; SEEL - db $03 ; DEWGONG - db $02 ; GRIMER - db $03 ; MUK - db $02 ; SHELLDER - db $03 ; CLOYSTER - db $01 ; GASTLY - db $02 ; HAUNTER - db $04 ; GENGAR - db $04 ; ONIX - db $02 ; DROWZEE - db $03 ; HYPNO - db $02 ; KRABBY - db $03 ; KINGLER - db $02 ; VOLTORB - db $03 ; ELECTRODE - db $02 ; EXEGGCUTE - db $03 ; EXEGGUTOR - db $02 ; CUBONE - db $03 ; MAROWAK - db $04 ; HITMONLEE - db $04 ; HITMONCHAN - db $04 ; LICKITUNG - db $02 ; KOFFING - db $03 ; WEEZING - db $02 ; RHYHORN - db $03 ; RHYDON - db $04 ; CHANSEY - db $04 ; TANGELA - db $04 ; KANGASKHAN - db $04 ; HORSEA - db $04 ; SEADRA - db $02 ; GOLDEEN - db $03 ; SEAKING - db $02 ; STARYU - db $03 ; STARMIE - db $04 ; MR_MIME - db $04 ; SCYTHER - db $04 ; JYNX - db $04 ; ELECTABUZZ - db $04 ; MAGMAR - db $04 ; PINSIR - db $04 ; TAUROS - db $02 ; MAGIKARP - db $03 ; GYARADOS - db $04 ; LAPRAS - db $04 ; DITTO - db $02 ; EEVEE - db $03 ; VAPOREON - db $03 ; JOLTEON - db $03 ; FLAREON - db $04 ; PORYGON - db $02 ; OMANYTE - db $03 ; OMASTAR - db $02 ; KABUTO - db $03 ; KABUTOPS - db $04 ; AERODACTYL - db $04 ; SNORLAX - db $04 ; ARTICUNO - db $04 ; ZAPDOS - db $04 ; MOLTRES - db $01 ; DRATINI - db $02 ; DRAGONAIR - db $04 ; DRAGONITE - db $04 ; MEWTWO - db $06 ; MEW - +INCLUDE "data/evolution_mode_indicator_sets.asm" INCLUDE "data/catchem_timer_values.asm" INCLUDE "data/mon_gfx/mon_gfx_pointers.asm" INCLUDE "data/mon_animated_sprite_types.asm" INCLUDE "data/collision/mon_collision_mask_pointers.asm" - -CatchSpriteFrameDurations: ; 0x13685 -; Each 3-byte entry is related to an evolution line. Don't know what this is for, yet. - db $12, $12, $10 ; EVOLINE_BULBASAUR - db $10, $10, $10 ; EVOLINE_CHARMANDER - db $12, $12, $0E ; EVOLINE_SQUIRTLE - db $14, $14, $12 ; EVOLINE_CATERPIE - db $14, $14, $10 ; EVOLINE_WEEDLE - db $0A, $0A, $0E ; EVOLINE_PIDGEY - db $11, $13, $10 ; EVOLINE_RATTATA - db $0B, $0B, $10 ; EVOLINE_SPEAROW - db $12, $12, $0E ; EVOLINE_EKANS - db $12, $14, $0E ; EVOLINE_PIKACHU - db $10, $12, $10 ; EVOLINE_SANDSHREW - db $11, $12, $0E ; EVOLINE_NIDORAN_F - db $11, $12, $0E ; EVOLINE_NIDORAN_M - db $12, $13, $10 ; EVOLINE_CLEFAIRY - db $11, $11, $10 ; EVOLINE_VULPIX - db $12, $12, $10 ; EVOLINE_JIGGLYPUFF - db $08, $08, $10 ; EVOLINE_ZUBAT - db $10, $10, $10 ; EVOLINE_ODDISH - db $10, $10, $10 ; EVOLINE_PARAS - db $11, $11, $0E ; EVOLINE_VENONAT - db $10, $10, $0E ; EVOLINE_DIGLETT - db $14, $14, $0E ; EVOLINE_MEOWTH - db $30, $30, $10 ; EVOLINE_PSYDUCK - db $12, $12, $10 ; EVOLINE_MANKEY - db $12, $12, $10 ; EVOLINE_GROWLITHE - db $10, $10, $10 ; EVOLINE_POLIWAG - db $10, $10, $10 ; EVOLINE_ABRA - db $12, $14, $10 ; EVOLINE_MACHOP - db $10, $12, $10 ; EVOLINE_BELLSPROUT - db $0C, $0C, $12 ; EVOLINE_TENTACOOL - db $12, $14, $0C ; EVOLINE_GEODUDE - db $12, $14, $0E ; EVOLINE_PONYTA - db $30, $30, $10 ; EVOLINE_SLOWPOKE - db $14, $14, $10 ; EVOLINE_MAGNEMITE - db $12, $12, $0E ; EVOLINE_FARFETCH_D - db $12, $12, $0E ; EVOLINE_DODUO - db $14, $14, $0E ; EVOLINE_SEEL - db $12, $12, $10 ; EVOLINE_GRIMER - db $14, $14, $0E ; EVOLINE_SHELLDER - db $10, $10, $0E ; EVOLINE_GASTLY - db $12, $12, $10 ; EVOLINE_ONIX - db $14, $14, $10 ; EVOLINE_DROWZEE - db $14, $12, $10 ; EVOLINE_KRABBY - db $02, $02, $10 ; EVOLINE_VOLTORB - db $12, $12, $10 ; EVOLINE_EXEGGCUTE - db $12, $12, $10 ; EVOLINE_CUBONE - db $14, $10, $10 ; EVOLINE_HITMONLEE - db $14, $10, $10 ; EVOLINE_HITMONCHAN - db $14, $12, $10 ; EVOLINE_LICKITUNG - db $11, $11, $10 ; EVOLINE_KOFFING - db $14, $14, $10 ; EVOLINE_RHYHORN - db $12, $12, $10 ; EVOLINE_CHANSEY - db $10, $10, $10 ; EVOLINE_TANGELA - db $12, $12, $10 ; EVOLINE_KANGASKHAN - db $0F, $0F, $0E ; EVOLINE_HORSEA - db $12, $12, $0E ; EVOLINE_GOLDEEN - db $23, $23, $10 ; EVOLINE_STARYU - db $13, $13, $10 ; EVOLINE_MR_MIME - db $13, $13, $10 ; EVOLINE_SCYTHER - db $12, $12, $10 ; EVOLINE_JYNX - db $12, $14, $10 ; EVOLINE_ELECTABUZZ - db $14, $14, $0E ; EVOLINE_MAGMAR - db $12, $12, $0E ; EVOLINE_PINSIR - db $12, $14, $10 ; EVOLINE_TAUROS - db $18, $18, $0C ; EVOLINE_MAGIKARP - db $16, $16, $0C ; EVOLINE_LAPRAS - db $14, $14, $10 ; EVOLINE_DITTO - db $12, $12, $10 ; EVOLINE_EEVEE - db $10, $10, $0E ; EVOLINE_PORYGON - db $12, $12, $0E ; EVOLINE_OMANYTE - db $12, $12, $0E ; EVOLINE_KABUTO - db $0C, $0C, $12 ; EVOLINE_AERODACTYL - db $26, $36, $12 ; EVOLINE_SNORLAX - db $13, $13, $10 ; EVOLINE_ARTICUNO - db $13, $13, $10 ; EVOLINE_ZAPDOS - db $13, $13, $10 ; EVOLINE_MOLTRES - db $12, $12, $0E ; EVOLINE_DRATINI - db $14, $14, $0E ; EVOLINE_MEWTWO - db $14, $14, $0E ; EVOLINE_MEW +INCLUDE "data/mon_animation_durations.asm" SECTION "bank5", ROMX @@ -1198,22 +893,32 @@ SeelBonusTilemap2_GameBoyColor: ; 0xd5c00 Alphabet1Gfx: ; 0xd6000 INCBIN "gfx/stage/alphabet_1.2bpp" -Exclamation_Point_CharacterGfx: INCBIN "gfx/stage/exclamation_point_mono.2bpp" ;DMG excalamation point -Period_CharacterGfx: INCBIN "gfx/stage/period_mono.2bpp" ;DMG period -E_Acute_CharacterGfx: INCBIN "gfx/stage/e_acute_mono.2bpp" -Apostrophe_CharacterGfx: INCBIN "gfx/stage/apostrophe_mono.2bpp" ;DMG apostrophe -Colon_CharacterGfx: INCBIN "gfx/stage/colon_mono.2bpp" ;DMG colon +Exclamation_Point_CharacterGfx: + INCBIN "gfx/stage/exclamation_point_mono.2bpp" ;DMG excalamation point +Period_CharacterGfx: + INCBIN "gfx/stage/period_mono.2bpp" ;DMG period +E_Acute_CharacterGfx: + INCBIN "gfx/stage/e_acute_mono.2bpp" +Apostrophe_CharacterGfx: + INCBIN "gfx/stage/apostrophe_mono.2bpp" ;DMG apostrophe +Colon_CharacterGfx: + INCBIN "gfx/stage/colon_mono.2bpp" ;DMG colon SECTION "bank35.5", ROMX Alphabet2Gfx: ; 0xd6200 INCBIN "gfx/stage/alphabet_2.2bpp" -Exclamation_Point_CharacterGfx_GameboyColor: INCBIN "gfx/stage/exclamation_point_color.2bpp";gbc excalamation point -Period_CharacterGfx_GameboyColor: INCBIN "gfx/stage/period_color.2bpp" ;gbc period -E_Acute_CharacterGfx_GameboyColor: INCBIN "gfx/stage/e_acute_color.2bpp" -Apostrophe_CharacterGfx_GameboyColor: INCBIN "gfx/stage/apostrophe_color.2bpp" ;GBC apostrophe -Colon_CharacterGfx_GameboyColor: INCBIN "gfx/stage/colon_color.2bpp" ;gbc colon +Exclamation_Point_CharacterGfx_GameboyColor: + INCBIN "gfx/stage/exclamation_point_color.2bpp" ; gbc excalamation point +Period_CharacterGfx_GameboyColor: + INCBIN "gfx/stage/period_color.2bpp" ; gbc period +E_Acute_CharacterGfx_GameboyColor: + INCBIN "gfx/stage/e_acute_color.2bpp" +Apostrophe_CharacterGfx_GameboyColor: + INCBIN "gfx/stage/apostrophe_color.2bpp" ; GBC apostrophe +Colon_CharacterGfx_GameboyColor: + INCBIN "gfx/stage/colon_color.2bpp" ; gbc colon SECTION "bank35.6", ROMX |