summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--constants/palette_constants.asm6
-rwxr-xr-xdata/animations.asm3628
-rwxr-xr-xdata/baseStats/abra.asm29
-rwxr-xr-xdata/baseStats/aerodactyl.asm29
-rwxr-xr-xdata/baseStats/alakazam.asm35
-rwxr-xr-xdata/baseStats/arbok.asm29
-rwxr-xr-xdata/baseStats/arcanine.asm29
-rwxr-xr-xdata/baseStats/articuno.asm29
-rwxr-xr-xdata/baseStats/beedrill.asm29
-rwxr-xr-xdata/baseStats/bellsprout.asm29
-rwxr-xr-xdata/baseStats/blastoise.asm29
-rwxr-xr-xdata/baseStats/bulbasaur.asm29
-rwxr-xr-xdata/baseStats/butterfree.asm34
-rwxr-xr-xdata/baseStats/caterpie.asm29
-rwxr-xr-xdata/baseStats/chansey.asm34
-rwxr-xr-xdata/baseStats/charizard.asm34
-rwxr-xr-xdata/baseStats/charmander.asm29
-rwxr-xr-xdata/baseStats/charmeleon.asm29
-rwxr-xr-xdata/baseStats/clefable.asm29
-rwxr-xr-xdata/baseStats/clefairy.asm29
-rwxr-xr-xdata/baseStats/cloyster.asm29
-rwxr-xr-xdata/baseStats/cubone.asm29
-rwxr-xr-xdata/baseStats/dewgong.asm29
-rwxr-xr-xdata/baseStats/diglett.asm34
-rwxr-xr-xdata/baseStats/ditto.asm29
-rwxr-xr-xdata/baseStats/dodrio.asm29
-rwxr-xr-xdata/baseStats/doduo.asm29
-rwxr-xr-xdata/baseStats/dragonair.asm29
-rwxr-xr-xdata/baseStats/dragonite.asm29
-rwxr-xr-xdata/baseStats/dratini.asm29
-rwxr-xr-xdata/baseStats/drowzee.asm29
-rwxr-xr-xdata/baseStats/dugtrio.asm34
-rwxr-xr-xdata/baseStats/eevee.asm34
-rwxr-xr-xdata/baseStats/ekans.asm29
-rwxr-xr-xdata/baseStats/electabuzz.asm29
-rwxr-xr-xdata/baseStats/electrode.asm29
-rwxr-xr-xdata/baseStats/exeggcute.asm29
-rwxr-xr-xdata/baseStats/exeggutor.asm29
-rwxr-xr-xdata/baseStats/farfetchd.asm29
-rwxr-xr-xdata/baseStats/fearow.asm29
-rwxr-xr-xdata/baseStats/flareon.asm34
-rwxr-xr-xdata/baseStats/gastly.asm29
-rwxr-xr-xdata/baseStats/gengar.asm29
-rwxr-xr-xdata/baseStats/geodude.asm29
-rwxr-xr-xdata/baseStats/gloom.asm29
-rwxr-xr-xdata/baseStats/golbat.asm29
-rwxr-xr-xdata/baseStats/goldeen.asm29
-rwxr-xr-xdata/baseStats/golduck.asm29
-rwxr-xr-xdata/baseStats/golem.asm29
-rwxr-xr-xdata/baseStats/graveler.asm29
-rwxr-xr-xdata/baseStats/grimer.asm29
-rwxr-xr-xdata/baseStats/growlithe.asm29
-rwxr-xr-xdata/baseStats/gyarados.asm37
-rwxr-xr-xdata/baseStats/haunter.asm29
-rwxr-xr-xdata/baseStats/hitmonchan.asm29
-rwxr-xr-xdata/baseStats/hitmonlee.asm29
-rwxr-xr-xdata/baseStats/horsea.asm29
-rwxr-xr-xdata/baseStats/hypno.asm29
-rwxr-xr-xdata/baseStats/ivysaur.asm29
-rwxr-xr-xdata/baseStats/jigglypuff.asm29
-rwxr-xr-xdata/baseStats/jolteon.asm34
-rwxr-xr-xdata/baseStats/jynx.asm29
-rwxr-xr-xdata/baseStats/kabuto.asm29
-rwxr-xr-xdata/baseStats/kabutops.asm29
-rwxr-xr-xdata/baseStats/kadabra.asm35
-rwxr-xr-xdata/baseStats/kakuna.asm29
-rwxr-xr-xdata/baseStats/kangaskhan.asm29
-rwxr-xr-xdata/baseStats/kingler.asm29
-rwxr-xr-xdata/baseStats/koffing.asm29
-rwxr-xr-xdata/baseStats/krabby.asm29
-rwxr-xr-xdata/baseStats/lapras.asm29
-rwxr-xr-xdata/baseStats/lickitung.asm29
-rwxr-xr-xdata/baseStats/machamp.asm29
-rwxr-xr-xdata/baseStats/machoke.asm29
-rwxr-xr-xdata/baseStats/machop.asm29
-rwxr-xr-xdata/baseStats/magikarp.asm29
-rwxr-xr-xdata/baseStats/magmar.asm29
-rwxr-xr-xdata/baseStats/magnemite.asm29
-rwxr-xr-xdata/baseStats/magneton.asm29
-rwxr-xr-xdata/baseStats/mankey.asm29
-rwxr-xr-xdata/baseStats/marowak.asm36
-rwxr-xr-xdata/baseStats/meowth.asm29
-rwxr-xr-xdata/baseStats/metapod.asm29
-rwxr-xr-xdata/baseStats/mew.asm29
-rwxr-xr-xdata/baseStats/mewtwo.asm29
-rwxr-xr-xdata/baseStats/moltres.asm29
-rwxr-xr-xdata/baseStats/mrmime.asm29
-rwxr-xr-xdata/baseStats/muk.asm29
-rwxr-xr-xdata/baseStats/nidoking.asm29
-rwxr-xr-xdata/baseStats/nidoqueen.asm29
-rwxr-xr-xdata/baseStats/nidoranf.asm29
-rwxr-xr-xdata/baseStats/nidoranm.asm29
-rwxr-xr-xdata/baseStats/nidorina.asm29
-rwxr-xr-xdata/baseStats/nidorino.asm29
-rwxr-xr-xdata/baseStats/ninetails.asm29
-rwxr-xr-xdata/baseStats/oddish.asm29
-rwxr-xr-xdata/baseStats/omanyte.asm29
-rwxr-xr-xdata/baseStats/omastar.asm29
-rwxr-xr-xdata/baseStats/onix.asm29
-rwxr-xr-xdata/baseStats/paras.asm29
-rwxr-xr-xdata/baseStats/parasect.asm29
-rwxr-xr-xdata/baseStats/persian.asm29
-rwxr-xr-xdata/baseStats/pidgeot.asm29
-rwxr-xr-xdata/baseStats/pidgeotto.asm29
-rwxr-xr-xdata/baseStats/pidgey.asm29
-rwxr-xr-xdata/baseStats/pikachu.asm29
-rwxr-xr-xdata/baseStats/pinsir.asm29
-rwxr-xr-xdata/baseStats/poliwag.asm29
-rwxr-xr-xdata/baseStats/poliwhirl.asm29
-rwxr-xr-xdata/baseStats/poliwrath.asm29
-rwxr-xr-xdata/baseStats/ponyta.asm29
-rwxr-xr-xdata/baseStats/porygon.asm29
-rwxr-xr-xdata/baseStats/primeape.asm34
-rwxr-xr-xdata/baseStats/psyduck.asm29
-rwxr-xr-xdata/baseStats/raichu.asm29
-rwxr-xr-xdata/baseStats/rapidash.asm29
-rwxr-xr-xdata/baseStats/raticate.asm29
-rwxr-xr-xdata/baseStats/rattata.asm29
-rwxr-xr-xdata/baseStats/rhydon.asm29
-rwxr-xr-xdata/baseStats/rhyhorn.asm29
-rwxr-xr-xdata/baseStats/sandshrew.asm29
-rwxr-xr-xdata/baseStats/sandslash.asm29
-rwxr-xr-xdata/baseStats/scyther.asm29
-rwxr-xr-xdata/baseStats/seadra.asm29
-rwxr-xr-xdata/baseStats/seaking.asm29
-rwxr-xr-xdata/baseStats/seel.asm29
-rwxr-xr-xdata/baseStats/shellder.asm29
-rwxr-xr-xdata/baseStats/slowbro.asm29
-rwxr-xr-xdata/baseStats/slowpoke.asm29
-rwxr-xr-xdata/baseStats/snorlax.asm29
-rwxr-xr-xdata/baseStats/spearow.asm29
-rwxr-xr-xdata/baseStats/squirtle.asm29
-rwxr-xr-xdata/baseStats/starmie.asm29
-rwxr-xr-xdata/baseStats/staryu.asm29
-rwxr-xr-xdata/baseStats/tangela.asm29
-rwxr-xr-xdata/baseStats/tauros.asm29
-rwxr-xr-xdata/baseStats/tentacool.asm29
-rwxr-xr-xdata/baseStats/tentacruel.asm29
-rwxr-xr-xdata/baseStats/vaporeon.asm34
-rwxr-xr-xdata/baseStats/venomoth.asm35
-rwxr-xr-xdata/baseStats/venonat.asm38
-rwxr-xr-xdata/baseStats/venusaur.asm29
-rwxr-xr-xdata/baseStats/vicctreebel.asm29
-rwxr-xr-xdata/baseStats/victreebel.asm29
-rwxr-xr-xdata/baseStats/vileplume.asm29
-rwxr-xr-xdata/baseStats/voltorb.asm29
-rwxr-xr-xdata/baseStats/vulpix.asm29
-rwxr-xr-xdata/baseStats/wartortle.asm29
-rwxr-xr-xdata/baseStats/weedle.asm29
-rwxr-xr-xdata/baseStats/weepinbell.asm29
-rwxr-xr-xdata/baseStats/weezing.asm29
-rwxr-xr-xdata/baseStats/wigglytuff.asm29
-rwxr-xr-xdata/baseStats/zapdos.asm29
-rwxr-xr-xdata/baseStats/zubat.asm29
-rwxr-xr-xdata/base_stats.asm150
-rwxr-xr-xdata/bike_riding_tilesets.asm2
-rwxr-xr-xdata/credit_mons.asm16
-rwxr-xr-xdata/credits_order.asm39
-rwxr-xr-xdata/cries.asm192
-rwxr-xr-xdata/dungeon_tilesets.asm2
-rwxr-xr-xdata/evos_moves.asm2171
-rwxr-xr-xdata/force_bike_surf.asm11
-rwxr-xr-xdata/good_rod.asm3
-rwxr-xr-xdata/hidden_coins.asm14
-rwxr-xr-xdata/hidden_item_coords.asm57
-rwxr-xr-xdata/hidden_objects.asm781
-rwxr-xr-xdata/hide_show_data.asm577
-rwxr-xr-xdata/item_prices.asm98
-rwxr-xr-xdata/key_items.asm12
-rwxr-xr-xdata/mapHeaders/agatha.asm6
-rwxr-xr-xdata/mapHeaders/battlecenterm.asm6
-rwxr-xr-xdata/mapHeaders/bikeshop.asm6
-rwxr-xr-xdata/mapHeaders/billshouse.asm6
-rwxr-xr-xdata/mapHeaders/blueshouse.asm6
-rwxr-xr-xdata/mapHeaders/bruno.asm6
-rwxr-xr-xdata/mapHeaders/celadoncity.asm8
-rwxr-xr-xdata/mapHeaders/celadondiner.asm6
-rwxr-xr-xdata/mapHeaders/celadongamecorner.asm6
-rwxr-xr-xdata/mapHeaders/celadongym.asm6
-rwxr-xr-xdata/mapHeaders/celadonhotel.asm6
-rwxr-xr-xdata/mapHeaders/celadonhouse.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion1.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion2.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion3.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion4.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion5.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart1.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart2.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart3.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart4.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart5.asm6
-rwxr-xr-xdata/mapHeaders/celadonmartelevator.asm6
-rwxr-xr-xdata/mapHeaders/celadonmartroof.asm6
-rwxr-xr-xdata/mapHeaders/celadonpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/celadonprizeroom.asm6
-rwxr-xr-xdata/mapHeaders/ceruleancity.asm10
-rwxr-xr-xdata/mapHeaders/ceruleangym.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanhouse1.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanhouse2.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanhousetrashed.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanmart.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/cinnabargym.asm6
-rwxr-xr-xdata/mapHeaders/cinnabarisland.asm8
-rwxr-xr-xdata/mapHeaders/cinnabarmart.asm6
-rwxr-xr-xdata/mapHeaders/cinnabarpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/copycatshouse1f.asm6
-rwxr-xr-xdata/mapHeaders/copycatshouse2f.asm6
-rwxr-xr-xdata/mapHeaders/daycarem.asm6
-rwxr-xr-xdata/mapHeaders/diglettscave.asm6
-rwxr-xr-xdata/mapHeaders/diglettscaveroute11.asm6
-rwxr-xr-xdata/mapHeaders/diglettscaveroute2.asm6
-rwxr-xr-xdata/mapHeaders/fanclub.asm6
-rwxr-xr-xdata/mapHeaders/fightingdojo.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiacity.asm9
-rwxr-xr-xdata/mapHeaders/fuchsiagym.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiahouse1.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiahouse2.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiahouse3.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiamart.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiameetingroom.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiapokecenter.asm6
-rwxr-xr-xdata/mapHeaders/gary.asm6
-rwxr-xr-xdata/mapHeaders/halloffameroom.asm6
-rwxr-xr-xdata/mapHeaders/indigoplateau.asm7
-rwxr-xr-xdata/mapHeaders/indigoplateaulobby.asm6
-rwxr-xr-xdata/mapHeaders/lab1.asm6
-rwxr-xr-xdata/mapHeaders/lab2.asm6
-rwxr-xr-xdata/mapHeaders/lab3.asm6
-rwxr-xr-xdata/mapHeaders/lab4.asm6
-rwxr-xr-xdata/mapHeaders/lance.asm6
-rwxr-xr-xdata/mapHeaders/lavenderhouse1.asm6
-rwxr-xr-xdata/mapHeaders/lavenderhouse2.asm6
-rwxr-xr-xdata/mapHeaders/lavendermart.asm6
-rwxr-xr-xdata/mapHeaders/lavenderpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/lavendertown.asm9
-rwxr-xr-xdata/mapHeaders/lorelei.asm6
-rwxr-xr-xdata/mapHeaders/mansion1.asm6
-rwxr-xr-xdata/mapHeaders/mansion2.asm6
-rwxr-xr-xdata/mapHeaders/mansion3.asm6
-rwxr-xr-xdata/mapHeaders/mansion4.asm6
-rwxr-xr-xdata/mapHeaders/mtmoon1.asm6
-rwxr-xr-xdata/mapHeaders/mtmoon2.asm6
-rwxr-xr-xdata/mapHeaders/mtmoon3.asm6
-rwxr-xr-xdata/mapHeaders/mtmoonpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/museum1f.asm6
-rwxr-xr-xdata/mapHeaders/museum2f.asm6
-rwxr-xr-xdata/mapHeaders/namerater.asm6
-rwxr-xr-xdata/mapHeaders/oakslab.asm6
-rwxr-xr-xdata/mapHeaders/pallettown.asm8
-rwxr-xr-xdata/mapHeaders/pewtercity.asm10
-rwxr-xr-xdata/mapHeaders/pewtergym.asm6
-rwxr-xr-xdata/mapHeaders/pewterhouse1.asm6
-rwxr-xr-xdata/mapHeaders/pewterhouse2.asm6
-rwxr-xr-xdata/mapHeaders/pewtermart.asm6
-rwxr-xr-xdata/mapHeaders/pewterpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower1.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower2.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower3.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower4.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower5.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower6.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower7.asm6
-rwxr-xr-xdata/mapHeaders/powerplant.asm6
-rwxr-xr-xdata/mapHeaders/redshouse1f.asm6
-rwxr-xr-xdata/mapHeaders/redshouse2f.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout1.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout2.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout3.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout4.asm6
-rwxr-xr-xdata/mapHeaders/rockethideoutelevator.asm6
-rwxr-xr-xdata/mapHeaders/rocktunnel1.asm6
-rwxr-xr-xdata/mapHeaders/rocktunnel2.asm6
-rwxr-xr-xdata/mapHeaders/rocktunnelpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/route1.asm8
-rwxr-xr-xdata/mapHeaders/route10.asm8
-rwxr-xr-xdata/mapHeaders/route11.asm8
-rwxr-xr-xdata/mapHeaders/route11gate.asm6
-rwxr-xr-xdata/mapHeaders/route11gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route12.asm9
-rwxr-xr-xdata/mapHeaders/route12gate.asm6
-rwxr-xr-xdata/mapHeaders/route12gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route12house.asm6
-rwxr-xr-xdata/mapHeaders/route13.asm8
-rwxr-xr-xdata/mapHeaders/route14.asm8
-rwxr-xr-xdata/mapHeaders/route15.asm8
-rwxr-xr-xdata/mapHeaders/route15gate.asm6
-rwxr-xr-xdata/mapHeaders/route15gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route16.asm8
-rwxr-xr-xdata/mapHeaders/route16gate.asm6
-rwxr-xr-xdata/mapHeaders/route16gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route16house.asm6
-rwxr-xr-xdata/mapHeaders/route17.asm8
-rwxr-xr-xdata/mapHeaders/route18.asm8
-rwxr-xr-xdata/mapHeaders/route18gate.asm6
-rwxr-xr-xdata/mapHeaders/route18gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route19.asm8
-rwxr-xr-xdata/mapHeaders/route2.asm8
-rwxr-xr-xdata/mapHeaders/route20.asm8
-rwxr-xr-xdata/mapHeaders/route21.asm8
-rwxr-xr-xdata/mapHeaders/route22.asm8
-rwxr-xr-xdata/mapHeaders/route22gate.asm6
-rwxr-xr-xdata/mapHeaders/route23.asm8
-rwxr-xr-xdata/mapHeaders/route24.asm8
-rwxr-xr-xdata/mapHeaders/route25.asm7
-rwxr-xr-xdata/mapHeaders/route2gate.asm6
-rwxr-xr-xdata/mapHeaders/route2house.asm6
-rwxr-xr-xdata/mapHeaders/route3.asm8
-rwxr-xr-xdata/mapHeaders/route4.asm8
-rwxr-xr-xdata/mapHeaders/route5.asm8
-rwxr-xr-xdata/mapHeaders/route5gate.asm6
-rwxr-xr-xdata/mapHeaders/route6.asm8
-rwxr-xr-xdata/mapHeaders/route6gate.asm6
-rwxr-xr-xdata/mapHeaders/route7.asm8
-rwxr-xr-xdata/mapHeaders/route7gate.asm6
-rwxr-xr-xdata/mapHeaders/route8.asm8
-rwxr-xr-xdata/mapHeaders/route8gate.asm6
-rwxr-xr-xdata/mapHeaders/route9.asm8
-rwxr-xr-xdata/mapHeaders/safarizonecenter.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneeast.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneentrance.asm6
-rwxr-xr-xdata/mapHeaders/safarizonenorth.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse1.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse2.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse3.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse4.asm6
-rwxr-xr-xdata/mapHeaders/safarizonesecrethouse.asm6
-rwxr-xr-xdata/mapHeaders/safarizonewest.asm6
-rwxr-xr-xdata/mapHeaders/saffroncity.asm10
-rwxr-xr-xdata/mapHeaders/saffrongym.asm6
-rwxr-xr-xdata/mapHeaders/saffronhouse1.asm6
-rwxr-xr-xdata/mapHeaders/saffronhouse2.asm6
-rwxr-xr-xdata/mapHeaders/saffronmart.asm6
-rwxr-xr-xdata/mapHeaders/saffronpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/school.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands1.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands2.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands3.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands4.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands5.asm6
-rwxr-xr-xdata/mapHeaders/silphco1.asm6
-rwxr-xr-xdata/mapHeaders/silphco10.asm6
-rwxr-xr-xdata/mapHeaders/silphco11.asm6
-rwxr-xr-xdata/mapHeaders/silphco2.asm6
-rwxr-xr-xdata/mapHeaders/silphco3.asm6
-rwxr-xr-xdata/mapHeaders/silphco4.asm6
-rwxr-xr-xdata/mapHeaders/silphco5.asm6
-rwxr-xr-xdata/mapHeaders/silphco6.asm6
-rwxr-xr-xdata/mapHeaders/silphco7.asm6
-rwxr-xr-xdata/mapHeaders/silphco8.asm6
-rwxr-xr-xdata/mapHeaders/silphco9.asm6
-rwxr-xr-xdata/mapHeaders/silphcoelevator.asm6
-rwxr-xr-xdata/mapHeaders/ssanne1.asm6
-rwxr-xr-xdata/mapHeaders/ssanne10.asm6
-rwxr-xr-xdata/mapHeaders/ssanne2.asm6
-rwxr-xr-xdata/mapHeaders/ssanne3.asm6
-rwxr-xr-xdata/mapHeaders/ssanne4.asm6
-rwxr-xr-xdata/mapHeaders/ssanne5.asm6
-rwxr-xr-xdata/mapHeaders/ssanne6.asm6
-rwxr-xr-xdata/mapHeaders/ssanne7.asm6
-rwxr-xr-xdata/mapHeaders/ssanne8.asm6
-rwxr-xr-xdata/mapHeaders/ssanne9.asm6
-rwxr-xr-xdata/mapHeaders/tradecenterm.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute5.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute6.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute7.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute7copy.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute8.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathns.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathwe.asm6
-rwxr-xr-xdata/mapHeaders/unknowndungeon1.asm6
-rwxr-xr-xdata/mapHeaders/unknowndungeon2.asm6
-rwxr-xr-xdata/mapHeaders/unknowndungeon3.asm6
-rwxr-xr-xdata/mapHeaders/vermilioncity.asm8
-rwxr-xr-xdata/mapHeaders/vermiliondock.asm6
-rwxr-xr-xdata/mapHeaders/vermiliongym.asm6
-rwxr-xr-xdata/mapHeaders/vermilionhouse1.asm6
-rwxr-xr-xdata/mapHeaders/vermilionhouse2.asm6
-rwxr-xr-xdata/mapHeaders/vermilionhouse3.asm6
-rwxr-xr-xdata/mapHeaders/vermilionmart.asm6
-rwxr-xr-xdata/mapHeaders/vermilionpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/victoryroad1.asm6
-rwxr-xr-xdata/mapHeaders/victoryroad2.asm6
-rwxr-xr-xdata/mapHeaders/victoryroad3.asm6
-rwxr-xr-xdata/mapHeaders/viridiancity.asm9
-rwxr-xr-xdata/mapHeaders/viridianforest.asm6
-rwxr-xr-xdata/mapHeaders/viridianforestentrance.asm6
-rwxr-xr-xdata/mapHeaders/viridianforestexit.asm6
-rwxr-xr-xdata/mapHeaders/viridiangym.asm6
-rwxr-xr-xdata/mapHeaders/viridianhouse.asm8
-rwxr-xr-xdata/mapHeaders/viridianmart.asm6
-rwxr-xr-xdata/mapHeaders/viridianpokecenter.asm6
-rwxr-xr-xdata/mapObjects/agatha.asm19
-rwxr-xr-xdata/mapObjects/battlecenterm.asm9
-rwxr-xr-xdata/mapObjects/bikeshop.asm17
-rwxr-xr-xdata/mapObjects/billshouse.asm17
-rwxr-xr-xdata/mapObjects/blueshouse.asm17
-rwxr-xr-xdata/mapObjects/bruno.asm19
-rwxr-xr-xdata/mapObjects/celadoncity.asm54
-rwxr-xr-xdata/mapObjects/celadondiner.asm19
-rwxr-xr-xdata/mapObjects/celadongamecorner.asm28
-rwxr-xr-xdata/mapObjects/celadongym.asm22
-rwxr-xr-xdata/mapObjects/celadonhotel.asm17
-rwxr-xr-xdata/mapObjects/celadonhouse.asm17
-rwxr-xr-xdata/mapObjects/celadonmansion1.asm25
-rwxr-xr-xdata/mapObjects/celadonmansion2.asm19
-rwxr-xr-xdata/mapObjects/celadonmansion3.asm26
-rwxr-xr-xdata/mapObjects/celadonmansion4.asm17
-rwxr-xr-xdata/mapObjects/celadonmansion5.asm16
-rwxr-xr-xdata/mapObjects/celadonmart1.asm25
-rwxr-xr-xdata/mapObjects/celadonmart2.asm21
-rwxr-xr-xdata/mapObjects/celadonmart3.asm33
-rwxr-xr-xdata/mapObjects/celadonmart4.asm20
-rwxr-xr-xdata/mapObjects/celadonmart5.asm21
-rwxr-xr-xdata/mapObjects/celadonmartelevator.asm15
-rwxr-xr-xdata/mapObjects/celadonmartroof.asm18
-rwxr-xr-xdata/mapObjects/celadonpokecenter.asm18
-rwxr-xr-xdata/mapObjects/celadonprizeroom.asm19
-rwxr-xr-xdata/mapObjects/ceruleancity.asm47
-rwxr-xr-xdata/mapObjects/ceruleangym.asm18
-rwxr-xr-xdata/mapObjects/ceruleanhouse1.asm16
-rwxr-xr-xdata/mapObjects/ceruleanhouse2.asm17
-rwxr-xr-xdata/mapObjects/ceruleanhousetrashed.asm19
-rwxr-xr-xdata/mapObjects/ceruleanmart.asm17
-rwxr-xr-xdata/mapObjects/ceruleanpokecenter.asm18
-rwxr-xr-xdata/mapObjects/cinnabargym.asm23
-rwxr-xr-xdata/mapObjects/cinnabarisland.asm27
-rwxr-xr-xdata/mapObjects/cinnabarmart.asm17
-rwxr-xr-xdata/mapObjects/cinnabarpokecenter.asm18
-rwxr-xr-xdata/mapObjects/copycatshouse1f.asm19
-rwxr-xr-xdata/mapObjects/copycatshouse2f.asm19
-rwxr-xr-xdata/mapObjects/daycarem.asm15
-rwxr-xr-xdata/mapObjects/diglettscave.asm14
-rwxr-xr-xdata/mapObjects/diglettscaveroute11.asm17
-rwxr-xr-xdata/mapObjects/diglettscaveroute2.asm17
-rwxr-xr-xdata/mapObjects/fanclub.asm22
-rwxr-xr-xdata/mapObjects/fightingdojo.asm21
-rwxr-xr-xdata/mapObjects/fuchsiacity.asm52
-rwxr-xr-xdata/mapObjects/fuchsiagym.asm22
-rwxr-xr-xdata/mapObjects/fuchsiahouse1.asm17
-rwxr-xr-xdata/mapObjects/fuchsiahouse2.asm19
-rwxr-xr-xdata/mapObjects/fuchsiahouse3.asm17
-rwxr-xr-xdata/mapObjects/fuchsiamart.asm17
-rwxr-xr-xdata/mapObjects/fuchsiameetingroom.asm17
-rwxr-xr-xdata/mapObjects/fuchsiapokecenter.asm18
-rwxr-xr-xdata/mapObjects/gary.asm20
-rwxr-xr-xdata/mapObjects/halloffameroom.asm15
-rwxr-xr-xdata/mapObjects/indigoplateau.asm14
-rwxr-xr-xdata/mapObjects/indigoplateaulobby.asm21
-rwxr-xr-xdata/mapObjects/lab1.asm25
-rwxr-xr-xdata/mapObjects/lab2.asm17
-rwxr-xr-xdata/mapObjects/lab3.asm19
-rwxr-xr-xdata/mapObjects/lab4.asm16
-rwxr-xr-xdata/mapObjects/lance.asm17
-rwxr-xr-xdata/mapObjects/lavenderhouse1.asm20
-rwxr-xr-xdata/mapObjects/lavenderhouse2.asm16
-rwxr-xr-xdata/mapObjects/lavendermart.asm17
-rwxr-xr-xdata/mapObjects/lavenderpokecenter.asm18
-rwxr-xr-xdata/mapObjects/lavendertown.asm31
-rwxr-xr-xdata/mapObjects/lorelei.asm19
-rwxr-xr-xdata/mapObjects/mansion1.asm29
-rwxr-xr-xdata/mapObjects/mansion2.asm22
-rwxr-xr-xdata/mapObjects/mansion3.asm21
-rwxr-xr-xdata/mapObjects/mansion4.asm20
-rwxr-xr-xdata/mapObjects/mtmoon1.asm34
-rwxr-xr-xdata/mapObjects/mtmoon2.asm26
-rwxr-xr-xdata/mapObjects/mtmoon3.asm27
-rwxr-xr-xdata/mapObjects/mtmoonpokecenter.asm20
-rwxr-xr-xdata/mapObjects/museum1f.asm25
-rwxr-xr-xdata/mapObjects/museum2f.asm19
-rwxr-xr-xdata/mapObjects/namerater.asm15
-rwxr-xr-xdata/mapObjects/oakslab.asm25
-rwxr-xr-xdata/mapObjects/pallettown.asm23
-rwxr-xr-xdata/mapObjects/pewtercity.asm36
-rwxr-xr-xdata/mapObjects/pewtergym.asm17
-rwxr-xr-xdata/mapObjects/pewterhouse1.asm17
-rwxr-xr-xdata/mapObjects/pewterhouse2.asm16
-rwxr-xr-xdata/mapObjects/pewtermart.asm17
-rwxr-xr-xdata/mapObjects/pewterpokecenter.asm18
-rwxr-xr-xdata/mapObjects/pokemontower1.asm21
-rwxr-xr-xdata/mapObjects/pokemontower2.asm16
-rwxr-xr-xdata/mapObjects/pokemontower3.asm18
-rwxr-xr-xdata/mapObjects/pokemontower4.asm20
-rwxr-xr-xdata/mapObjects/pokemontower5.asm20
-rwxr-xr-xdata/mapObjects/pokemontower6.asm19
-rwxr-xr-xdata/mapObjects/pokemontower7.asm16
-rwxr-xr-xdata/mapObjects/powerplant.asm30
-rwxr-xr-xdata/mapObjects/redshouse1f.asm18
-rwxr-xr-xdata/mapObjects/redshouse2f.asm12
-rwxr-xr-xdata/mapObjects/rockethideout1.asm27
-rwxr-xr-xdata/mapObjects/rockethideout2.asm25
-rwxr-xr-xdata/mapObjects/rockethideout3.asm18
-rwxr-xr-xdata/mapObjects/rockethideout4.asm25
-rwxr-xr-xdata/mapObjects/rockethideoutelevator.asm15
-rwxr-xr-xdata/mapObjects/rocktunnel1.asm34
-rwxr-xr-xdata/mapObjects/rocktunnel2.asm26
-rwxr-xr-xdata/mapObjects/rocktunnelpokecenter.asm18
-rwxr-xr-xdata/mapObjects/route1.asm14
-rwxr-xr-xdata/mapObjects/route10.asm28
-rwxr-xr-xdata/mapObjects/route11.asm31
-rwxr-xr-xdata/mapObjects/route11gate.asm21
-rwxr-xr-xdata/mapObjects/route11gateupstairs.asm16
-rwxr-xr-xdata/mapObjects/route12.asm30
-rwxr-xr-xdata/mapObjects/route12gate.asm21
-rwxr-xr-xdata/mapObjects/route12gateupstairs.asm15
-rwxr-xr-xdata/mapObjects/route12house.asm15
-rwxr-xr-xdata/mapObjects/route13.asm21
-rwxr-xr-xdata/mapObjects/route14.asm19
-rwxr-xr-xdata/mapObjects/route15.asm30
-rwxr-xr-xdata/mapObjects/route15gate.asm21
-rwxr-xr-xdata/mapObjects/route15gateupstairs.asm14
-rwxr-xr-xdata/mapObjects/route16.asm37
-rwxr-xr-xdata/mapObjects/route16gate.asm30
-rwxr-xr-xdata/mapObjects/route16gateupstairs.asm16
-rwxr-xr-xdata/mapObjects/route16house.asm16
-rwxr-xr-xdata/mapObjects/route17.asm24
-rwxr-xr-xdata/mapObjects/route18.asm23
-rwxr-xr-xdata/mapObjects/route18gate.asm21
-rwxr-xr-xdata/mapObjects/route18gateupstairs.asm15
-rwxr-xr-xdata/mapObjects/route19.asm30
-rwxr-xr-xdata/mapObjects/route2.asm33
-rwxr-xr-xdata/mapObjects/route20.asm26
-rwxr-xr-xdata/mapObjects/route21.asm17
-rwxr-xr-xdata/mapObjects/route22.asm15
-rwxr-xr-xdata/mapObjects/route22gate.asm19
-rwxr-xr-xdata/mapObjects/route23.asm26
-rwxr-xr-xdata/mapObjects/route24.asm16
-rwxr-xr-xdata/mapObjects/route25.asm23
-rwxr-xr-xdata/mapObjects/route2gate.asm20
-rwxr-xr-xdata/mapObjects/route2house.asm16
-rwxr-xr-xdata/mapObjects/route3.asm18
-rwxr-xr-xdata/mapObjects/route4.asm22
-rwxr-xr-xdata/mapObjects/route5.asm21
-rwxr-xr-xdata/mapObjects/route5gate.asm19
-rwxr-xr-xdata/mapObjects/route6.asm25
-rwxr-xr-xdata/mapObjects/route6gate.asm19
-rwxr-xr-xdata/mapObjects/route7.asm21
-rwxr-xr-xdata/mapObjects/route7gate.asm19
-rwxr-xr-xdata/mapObjects/route8.asm30
-rwxr-xr-xdata/mapObjects/route8gate.asm19
-rwxr-xr-xdata/mapObjects/route9.asm19
-rwxr-xr-xdata/mapObjects/safarizonecenter.asm31
-rwxr-xr-xdata/mapObjects/safarizoneeast.asm27
-rwxr-xr-xdata/mapObjects/safarizoneentrance.asm20
-rwxr-xr-xdata/mapObjects/safarizonenorth.asm35
-rwxr-xr-xdata/mapObjects/safarizoneresthouse1.asm16
-rwxr-xr-xdata/mapObjects/safarizoneresthouse2.asm17
-rwxr-xr-xdata/mapObjects/safarizoneresthouse3.asm17
-rwxr-xr-xdata/mapObjects/safarizoneresthouse4.asm17
-rwxr-xr-xdata/mapObjects/safarizonesecrethouse.asm15
-rwxr-xr-xdata/mapObjects/safarizonewest.asm34
-rwxr-xr-xdata/mapObjects/saffroncity.asm51
-rwxr-xr-xdata/mapObjects/saffrongym.asm83
-rwxr-xr-xdata/mapObjects/saffronhouse1.asm18
-rwxr-xr-xdata/mapObjects/saffronhouse2.asm15
-rwxr-xr-xdata/mapObjects/saffronmart.asm17
-rwxr-xr-xdata/mapObjects/saffronpokecenter.asm18
-rwxr-xr-xdata/mapObjects/school.asm16
-rwxr-xr-xdata/mapObjects/seafoamislands1.asm30
-rwxr-xr-xdata/mapObjects/seafoamislands2.asm26
-rwxr-xr-xdata/mapObjects/seafoamislands3.asm26
-rwxr-xr-xdata/mapObjects/seafoamislands4.asm30
-rwxr-xr-xdata/mapObjects/seafoamislands5.asm23
-rwxr-xr-xdata/mapObjects/silphco1.asm21
-rwxr-xr-xdata/mapObjects/silphco10.asm28
-rwxr-xr-xdata/mapObjects/silphco11.asm23
-rwxr-xr-xdata/mapObjects/silphco2.asm29
-rwxr-xr-xdata/mapObjects/silphco3.asm34
-rwxr-xr-xdata/mapObjects/silphco4.asm31
-rwxr-xr-xdata/mapObjects/silphco5.asm35
-rwxr-xr-xdata/mapObjects/silphco6.asm30
-rwxr-xr-xdata/mapObjects/silphco7.asm33
-rwxr-xr-xdata/mapObjects/silphco8.asm28
-rwxr-xr-xdata/mapObjects/silphco9.asm24
-rwxr-xr-xdata/mapObjects/silphcoelevator.asm15
-rwxr-xr-xdata/mapObjects/ssanne1.asm34
-rwxr-xr-xdata/mapObjects/ssanne10.asm41
-rwxr-xr-xdata/mapObjects/ssanne2.asm30
-rwxr-xr-xdata/mapObjects/ssanne3.asm15
-rwxr-xr-xdata/mapObjects/ssanne4.asm22
-rwxr-xr-xdata/mapObjects/ssanne5.asm19
-rwxr-xr-xdata/mapObjects/ssanne6.asm19
-rwxr-xr-xdata/mapObjects/ssanne7.asm15
-rwxr-xr-xdata/mapObjects/ssanne8.asm33
-rwxr-xr-xdata/mapObjects/ssanne9.asm47
-rwxr-xr-xdata/mapObjects/tradecenterm.asm9
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute5.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute6.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute7.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute7copy.asm18
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute8.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathns.asm14
-rwxr-xr-xdata/mapObjects/undergroundpathwe.asm14
-rwxr-xr-xdata/mapObjects/unknowndungeon1.asm31
-rwxr-xr-xdata/mapObjects/unknowndungeon2.asm25
-rwxr-xr-xdata/mapObjects/unknowndungeon3.asm15
-rwxr-xr-xdata/mapObjects/vermilioncity.asm41
-rwxr-xr-xdata/mapObjects/vermiliondock.asm14
-rwxr-xr-xdata/mapObjects/vermiliongym.asm19
-rwxr-xr-xdata/mapObjects/vermilionhouse1.asm17
-rwxr-xr-xdata/mapObjects/vermilionhouse2.asm15
-rwxr-xr-xdata/mapObjects/vermilionhouse3.asm15
-rwxr-xr-xdata/mapObjects/vermilionmart.asm17
-rwxr-xr-xdata/mapObjects/vermilionpokecenter.asm18
-rwxr-xr-xdata/mapObjects/victoryroad1.asm23
-rwxr-xr-xdata/mapObjects/victoryroad2.asm37
-rwxr-xr-xdata/mapObjects/victoryroad3.asm28
-rwxr-xr-xdata/mapObjects/viridiancity.asm33
-rwxr-xr-xdata/mapObjects/viridianforest.asm36
-rwxr-xr-xdata/mapObjects/viridianforestentrance.asm20
-rwxr-xr-xdata/mapObjects/viridianforestexit.asm20
-rwxr-xr-xdata/mapObjects/viridiangym.asm25
-rwxr-xr-xdata/mapObjects/viridianhouse.asm18
-rwxr-xr-xdata/mapObjects/viridianmart.asm17
-rwxr-xr-xdata/mapObjects/viridianpokecenter.asm18
-rwxr-xr-xdata/map_songs.asm249
-rwxr-xr-xdata/mart_inventories.asm75
-rwxr-xr-xdata/mon_palettes.asm153
-rwxr-xr-xdata/mon_party_sprites.asm77
-rwxr-xr-xdata/moves.asm168
-rwxr-xr-xdata/pokedex_entries.asm1259
-rwxr-xr-xdata/pokedex_order.asm191
-rwxr-xr-xdata/prize_mon_levels.asm19
-rwxr-xr-xdata/prizes.asm69
-rwxr-xr-xdata/sgb_border.asm62
-rwxr-xr-xdata/sgb_packets.asm142
-rwxr-xr-xdata/slot_machine_wheels.asm59
-rwxr-xr-xdata/special_warps.asm116
-rwxr-xr-xdata/sprite_sets.asm551
-rwxr-xr-xdata/super_palettes.asm174
-rwxr-xr-xdata/super_rod.asm101
-rwxr-xr-xdata/tileset_headers.asm25
-rwxr-xr-xdata/title_mons.asm56
-rwxr-xr-xdata/tm_prices.asm7
-rwxr-xr-xdata/tms.asm56
-rwxr-xr-xdata/town_map_entries.asm101
-rwxr-xr-xdata/town_map_order.asm48
-rwxr-xr-xdata/trades.asm12
-rwxr-xr-xdata/trainer_moves.asm194
-rwxr-xr-xdata/trainer_parties.asm592
-rwxr-xr-xdata/trainer_types.asm17
-rwxr-xr-xdata/type_effects.asm89
-rwxr-xr-xdata/warp_tile_ids.asm85
-rwxr-xr-xdata/wildPokemon/diglettscave.asm14
-rwxr-xr-xdata/wildPokemon/fishinggroup1.asm4
-rwxr-xr-xdata/wildPokemon/fishinggroup10.asm6
-rwxr-xr-xdata/wildPokemon/fishinggroup2.asm4
-rwxr-xr-xdata/wildPokemon/fishinggroup3.asm5
-rwxr-xr-xdata/wildPokemon/fishinggroup4.asm4
-rwxr-xr-xdata/wildPokemon/fishinggroup5.asm4
-rwxr-xr-xdata/wildPokemon/fishinggroup6.asm6
-rwxr-xr-xdata/wildPokemon/fishinggroup7.asm6
-rwxr-xr-xdata/wildPokemon/fishinggroup8.asm6
-rwxr-xr-xdata/wildPokemon/fishinggroup9.asm6
-rwxr-xr-xdata/wildPokemon/mansion1.asm43
-rwxr-xr-xdata/wildPokemon/mansion2.asm56
-rwxr-xr-xdata/wildPokemon/mansion3.asm56
-rwxr-xr-xdata/wildPokemon/mansionb1.asm56
-rwxr-xr-xdata/wildPokemon/mtmoon1.asm28
-rwxr-xr-xdata/wildPokemon/mtmoonb1.asm28
-rwxr-xr-xdata/wildPokemon/mtmoonb2.asm28
-rwxr-xr-xdata/wildPokemon/nomons.asm4
-rwxr-xr-xdata/wildPokemon/pokemontower1.asm4
-rwxr-xr-xdata/wildPokemon/pokemontower2.asm4
-rwxr-xr-xdata/wildPokemon/pokemontower3.asm31
-rwxr-xr-xdata/wildPokemon/pokemontower4.asm31
-rwxr-xr-xdata/wildPokemon/pokemontower5.asm31
-rwxr-xr-xdata/wildPokemon/pokemontower6.asm31
-rwxr-xr-xdata/wildPokemon/pokemontower7.asm32
-rwxr-xr-xdata/wildPokemon/powerplant.asm37
-rwxr-xr-xdata/wildPokemon/rocktunnel1.asm36
-rwxr-xr-xdata/wildPokemon/rocktunnel2.asm35
-rwxr-xr-xdata/wildPokemon/route1.asm28
-rwxr-xr-xdata/wildPokemon/route10.asm44
-rwxr-xr-xdata/wildPokemon/route11.asm44
-rwxr-xr-xdata/wildPokemon/route12.asm56
-rwxr-xr-xdata/wildPokemon/route13.asm57
-rwxr-xr-xdata/wildPokemon/route14.asm43
-rwxr-xr-xdata/wildPokemon/route15.asm43
-rwxr-xr-xdata/wildPokemon/route16.asm30
-rwxr-xr-xdata/wildPokemon/route17.asm30
-rwxr-xr-xdata/wildPokemon/route18.asm30
-rwxr-xr-xdata/wildPokemon/route2.asm40
-rwxr-xr-xdata/wildPokemon/route21.asm40
-rwxr-xr-xdata/wildPokemon/route22.asm40
-rwxr-xr-xdata/wildPokemon/route23.asm40
-rwxr-xr-xdata/wildPokemon/route24.asm57
-rwxr-xr-xdata/wildPokemon/route25.asm57
-rwxr-xr-xdata/wildPokemon/route3.asm28
-rwxr-xr-xdata/wildPokemon/route4.asm44
-rwxr-xr-xdata/wildPokemon/route5.asm57
-rwxr-xr-xdata/wildPokemon/route6.asm70
-rwxr-xr-xdata/wildPokemon/route7.asm57
-rwxr-xr-xdata/wildPokemon/route8.asm57
-rwxr-xr-xdata/wildPokemon/route9.asm44
-rwxr-xr-xdata/wildPokemon/safarizone1.asm48
-rwxr-xr-xdata/wildPokemon/safarizone2.asm50
-rwxr-xr-xdata/wildPokemon/safarizone3.asm56
-rwxr-xr-xdata/wildPokemon/safarizonecenter.asm56
-rwxr-xr-xdata/wildPokemon/seafoamisland1.asm56
-rwxr-xr-xdata/wildPokemon/seafoamislandb1.asm56
-rwxr-xr-xdata/wildPokemon/seafoamislandb2.asm56
-rwxr-xr-xdata/wildPokemon/seafoamislandb3.asm68
-rwxr-xr-xdata/wildPokemon/seafoamislandb4.asm68
-rwxr-xr-xdata/wildPokemon/unknowndungeon1.asm40
-rwxr-xr-xdata/wildPokemon/unknowndungeon2.asm35
-rwxr-xr-xdata/wildPokemon/unknowndungeonb1.asm35
-rwxr-xr-xdata/wildPokemon/victoryroad1.asm30
-rwxr-xr-xdata/wildPokemon/victoryroad2.asm30
-rwxr-xr-xdata/wildPokemon/victoryroad3.asm30
-rwxr-xr-xdata/wildPokemon/viridianforest.asm44
-rwxr-xr-xdata/wildPokemon/waterpokemon.asm15
-rwxr-xr-xdata/wild_mons.asm324
-rwxr-xr-xmain.asm60630
-rw-r--r--maps/ceruleanhouse1.blk (renamed from maps/ceruleanhouse.blk)0
-rw-r--r--maps/undergroundpathentranceroute5.blk (renamed from maps/undergroundtunnelentranceroute5.blk)bin16 -> 16 bytes
-rw-r--r--maps/undergroundpathentranceroute6.blk (renamed from maps/undergroundtunnelentranceroute6.blk)bin16 -> 16 bytes
-rw-r--r--menu/pc.asm4
-rwxr-xr-xscripts/agatha.asm157
-rwxr-xr-xscripts/battlecenterm.asm38
-rwxr-xr-xscripts/bikeshop.asm151
-rwxr-xr-xscripts/billshouse.asm208
-rwxr-xr-xscripts/blueshouse.asm90
-rwxr-xr-xscripts/bruno.asm154
-rwxr-xr-xscripts/celadoncity.asm136
-rwxr-xr-xscripts/celadondiner.asm67
-rwxr-xr-xscripts/celadongamecorner.asm536
-rwxr-xr-xscripts/celadongym.asm343
-rwxr-xr-xscripts/celadonhotel.asm19
-rwxr-xr-xscripts/celadonhouse.asm20
-rwxr-xr-xscripts/celadonmansion1.asm39
-rwxr-xr-xscripts/celadonmansion2.asm10
-rwxr-xr-xscripts/celadonmansion3.asm71
-rwxr-xr-xscripts/celadonmansion4.asm9
-rwxr-xr-xscripts/celadonmansion5.asm22
-rwxr-xr-xscripts/celadonmart1.asm19
-rwxr-xr-xscripts/celadonmart2.asm21
-rwxr-xr-xscripts/celadonmart3.asm109
-rwxr-xr-xscripts/celadonmart4.asm20
-rwxr-xr-xscripts/celadonmart5.asm21
-rwxr-xr-xscripts/celadonmartelevator.asm71
-rwxr-xr-xscripts/celadonmartroof.asm263
-rwxr-xr-xscripts/celadonpokecenter.asm23
-rwxr-xr-xscripts/celadonprizeroom.asm20
-rwxr-xr-xscripts/ceruleancity.asm444
-rwxr-xr-xscripts/ceruleangym.asm224
-rwxr-xr-xscripts/ceruleanhouse1.asm18
-rwxr-xr-xscripts/ceruleanhouse2.asm109
-rwxr-xr-xscripts/ceruleanhousetrashed.asm40
-rwxr-xr-xscripts/ceruleanmart.asm15
-rwxr-xr-xscripts/ceruleanpokecenter.asm23
-rwxr-xr-xscripts/cinnabargym.asm483
-rwxr-xr-xscripts/cinnabarisland.asm87
-rwxr-xr-xscripts/cinnabarmart.asm15
-rwxr-xr-xscripts/cinnabarpokecenter.asm23
-rwxr-xr-xscripts/copycatshouse1f.asm22
-rwxr-xr-xscripts/copycatshouse2f.asm102
-rwxr-xr-xscripts/daycarem.asm268
-rwxr-xr-xscripts/diglettscave.asm5
-rwxr-xr-xscripts/diglettscaveroute11.asm12
-rwxr-xr-xscripts/diglettscaveroute2.asm11
-rwxr-xr-xscripts/fanclub.asm181
-rwxr-xr-xscripts/fightingdojo.asm337
-rwxr-xr-xscripts/fuchsiacity.asm170
-rwxr-xr-xscripts/fuchsiagym.asm336
-rwxr-xr-xscripts/fuchsiahouse1.asm20
-rwxr-xr-xscripts/fuchsiahouse2.asm116
-rwxr-xr-xscripts/fuchsiahouse3.asm75
-rwxr-xr-xscripts/fuchsiamart.asm15
-rwxr-xr-xscripts/fuchsiameetingroom.asm20
-rwxr-xr-xscripts/fuchsiapokecenter.asm23
-rwxr-xr-xscripts/gary.asm295
-rwxr-xr-xscripts/halloffameroom.asm115
-rwxr-xr-xscripts/indigoplateau.asm4
-rwxr-xr-xscripts/indigoplateaulobby.asm41
-rwxr-xr-xscripts/lab1.asm30
-rwxr-xr-xscripts/lab2.asm26
-rwxr-xr-xscripts/lab3.asm63
-rwxr-xr-xscripts/lab4.asm115
-rwxr-xr-xscripts/lance.asm166
-rwxr-xr-xscripts/lavenderhouse1.asm116
-rwxr-xr-xscripts/lavenderhouse2.asm36
-rwxr-xr-xscripts/lavendermart.asm33
-rwxr-xr-xscripts/lavenderpokecenter.asm23
-rwxr-xr-xscripts/lavendertown.asm63
-rwxr-xr-xscripts/lorelei.asm153
-rwxr-xr-xscripts/mansion1.asm139
-rwxr-xr-xscripts/mansion2.asm145
-rwxr-xr-xscripts/mansion3.asm153
-rwxr-xr-xscripts/mansion4.asm132
-rwxr-xr-xscripts/mtmoon1.asm225
-rwxr-xr-xscripts/mtmoon2.asm10
-rwxr-xr-xscripts/mtmoon3.asm414
-rwxr-xr-xscripts/mtmoonpokecenter.asm97
-rwxr-xr-xscripts/museum1f.asm253
-rwxr-xr-xscripts/museum2f.asm39
-rwxr-xr-xscripts/namerater.asm107
-rwxr-xr-xscripts/oakslab.asm1238
-rwxr-xr-xscripts/pallettown.asm228
-rwxr-xr-xscripts/pewtercity.asm321
-rwxr-xr-xscripts/pewtergym.asm237
-rwxr-xr-xscripts/pewterhouse1.asm23
-rwxr-xr-xscripts/pewterhouse2.asm14
-rwxr-xr-xscripts/pewtermart.asm30
-rwxr-xr-xscripts/pewterpokecenter.asm75
-rwxr-xr-xscripts/pokemontower1.asm29
-rwxr-xr-xscripts/pokemontower2.asm178
-rwxr-xr-xscripts/pokemontower3.asm102
-rwxr-xr-xscripts/pokemontower4.asm105
-rwxr-xr-xscripts/pokemontower5.asm181
-rwxr-xr-xscripts/pokemontower6.asm215
-rwxr-xr-xscripts/pokemontower7.asm282
-rwxr-xr-xscripts/powerplant.asm176
-rwxr-xr-xscripts/redshouse1f.asm69
-rwxr-xr-xscripts/redshouse2f.asm24
-rwxr-xr-xscripts/rockethideout1.asm193
-rwxr-xr-xscripts/rockethideout2.asm501
-rwxr-xr-xscripts/rockethideout3.asm211
-rwxr-xr-xscripts/rockethideout4.asm232
-rwxr-xr-xscripts/rockethideoutelevator.asm82
-rwxr-xr-xscripts/rocktunnel1.asm214
-rwxr-xr-xscripts/rocktunnel2.asm242
-rwxr-xr-xscripts/rocktunnelpokecenter.asm23
-rwxr-xr-xscripts/route1.asm53
-rwxr-xr-xscripts/route10.asm199
-rwxr-xr-xscripts/route11.asm303
-rwxr-xr-xscripts/route11gate.asm9
-rwxr-xr-xscripts/route11gateupstairs.asm81
-rwxr-xr-xscripts/route12.asm292
-rwxr-xr-xscripts/route12gate.asm9
-rwxr-xr-xscripts/route12gateupstairs.asm79
-rwxr-xr-xscripts/route12house.asm57
-rwxr-xr-xscripts/route13.asm313
-rwxr-xr-xscripts/route14.asm303
-rwxr-xr-xscripts/route15.asm296
-rwxr-xr-xscripts/route15gate.asm9
-rwxr-xr-xscripts/route15gateupstairs.asm47
-rwxr-xr-xscripts/route16.asm263
-rwxr-xr-xscripts/route16gate.asm121
-rwxr-xr-xscripts/route16gateupstairs.asm46
-rwxr-xr-xscripts/route16house.asm56
-rwxr-xr-xscripts/route17.asm328
-rwxr-xr-xscripts/route18.asm112
-rwxr-xr-xscripts/route18gate.asm112
-rwxr-xr-xscripts/route18gateupstairs.asm33
-rwxr-xr-xscripts/route19.asm303
-rwxr-xr-xscripts/route2.asm16
-rwxr-xr-xscripts/route20.asm356
-rwxr-xr-xscripts/route21.asm270
-rwxr-xr-xscripts/route22.asm435
-rwxr-xr-xscripts/route22gate.asm92
-rwxr-xr-xscripts/route23.asm245
-rwxr-xr-xscripts/route24.asm326
-rwxr-xr-xscripts/route25.asm309
-rwxr-xr-xscripts/route2gate.asm42
-rwxr-xr-xscripts/route2house.asm18
-rwxr-xr-xscripts/route3.asm252
-rwxr-xr-xscripts/route4.asm63
-rwxr-xr-xscripts/route5.asm9
-rwxr-xr-xscripts/route5gate.asm117
-rwxr-xr-xscripts/route6.asm187
-rwxr-xr-xscripts/route6gate.asm70
-rwxr-xr-xscripts/route7.asm9
-rwxr-xr-xscripts/route7gate.asm73
-rwxr-xr-xscripts/route8.asm275
-rwxr-xr-xscripts/route8gate.asm70
-rwxr-xr-xscripts/route9.asm269
-rwxr-xr-xscripts/safarizonecenter.asm15
-rwxr-xr-xscripts/safarizoneeast.asm23
-rwxr-xr-xscripts/safarizoneentrance.asm300
-rwxr-xr-xscripts/safarizonenorth.asm31
-rwxr-xr-xscripts/safarizoneresthouse1.asm14
-rwxr-xr-xscripts/safarizoneresthouse2.asm20
-rwxr-xr-xscripts/safarizoneresthouse3.asm20
-rwxr-xr-xscripts/safarizoneresthouse4.asm20
-rwxr-xr-xscripts/safarizonesecrethouse.asm46
-rwxr-xr-xscripts/safarizonewest.asm28
-rwxr-xr-xscripts/saffroncity.asm121
-rwxr-xr-xscripts/saffrongym.asm367
-rwxr-xr-xscripts/saffronhouse1.asm27
-rwxr-xr-xscripts/saffronhouse2.asm46
-rwxr-xr-xscripts/saffronmart.asm15
-rwxr-xr-xscripts/saffronpokecenter.asm23
-rwxr-xr-xscripts/school.asm14
-rwxr-xr-xscripts/seafoamislands1.asm50
-rwxr-xr-xscripts/seafoamislands2.asm48
-rwxr-xr-xscripts/seafoamislands3.asm48
-rwxr-xr-xscripts/seafoamislands4.asm148
-rwxr-xr-xscripts/seafoamislands5.asm178
-rwxr-xr-xscripts/silphco1.asm20
-rwxr-xr-xscripts/silphco10.asm126
-rwxr-xr-xscripts/silphco11.asm369
-rwxr-xr-xscripts/silphco2.asm248
-rwxr-xr-xscripts/silphco3.asm139
-rwxr-xr-xscripts/silphco4.asm201
-rwxr-xr-xscripts/silphco5.asm223
-rwxr-xr-xscripts/silphco6.asm225
-rwxr-xr-xscripts/silphco7.asm523
-rwxr-xr-xscripts/silphco8.asm187
-rwxr-xr-xscripts/silphco9.asm248
-rwxr-xr-xscripts/silphcoelevator.asm78
-rwxr-xr-xscripts/ssanne1.asm15
-rwxr-xr-xscripts/ssanne10.asm202
-rwxr-xr-xscripts/ssanne2.asm208
-rwxr-xr-xscripts/ssanne3.asm9
-rwxr-xr-xscripts/ssanne4.asm5
-rwxr-xr-xscripts/ssanne5.asm89
-rwxr-xr-xscripts/ssanne6.asm72
-rwxr-xr-xscripts/ssanne7.asm96
-rwxr-xr-xscripts/ssanne8.asm164
-rwxr-xr-xscripts/ssanne9.asm216
-rwxr-xr-xscripts/tradecenterm.asm9
-rwxr-xr-xscripts/undergroundpathentranceroute5.asm19
-rwxr-xr-xscripts/undergroundpathentranceroute6.asm11
-rwxr-xr-xscripts/undergroundpathentranceroute7.asm11
-rwxr-xr-xscripts/undergroundpathentranceroute7copy.asm24
-rwxr-xr-xscripts/undergroundpathentranceroute8.asm11
-rwxr-xr-xscripts/undergroundpathns.asm5
-rwxr-xr-xscripts/undergroundpathwe.asm5
-rwxr-xr-xscripts/unknowndungeon1.asm7
-rwxr-xr-xscripts/unknowndungeon2.asm7
-rwxr-xr-xscripts/unknowndungeon3.asm44
-rwxr-xr-xscripts/vermilioncity.asm263
-rwxr-xr-xscripts/vermiliondock.asm208
-rwxr-xr-xscripts/vermiliongym.asm275
-rwxr-xr-xscripts/vermilionhouse1.asm24
-rwxr-xr-xscripts/vermilionhouse2.asm57
-rwxr-xr-xscripts/vermilionhouse3.asm13
-rwxr-xr-xscripts/vermilionmart.asm15
-rwxr-xr-xscripts/vermilionpokecenter.asm23
-rwxr-xr-xscripts/victoryroad1.asm108
-rwxr-xr-xscripts/victoryroad2.asm248
-rwxr-xr-xscripts/victoryroad3.asm205
-rwxr-xr-xscripts/viridiancity.asm333
-rwxr-xr-xscripts/viridianforest.asm145
-rwxr-xr-xscripts/viridianforestentrance.asm14
-rwxr-xr-xscripts/viridianforestexit.asm14
-rwxr-xr-xscripts/viridiangym.asm514
-rwxr-xr-xscripts/viridianhouse.asm33
-rwxr-xr-xscripts/viridianmart.asm95
-rwxr-xr-xscripts/viridianpokecenter.asm23
-rw-r--r--text.asm356
-rwxr-xr-xtext/credits_text.asm199
-rwxr-xr-xtext/item_names.asm98
-rwxr-xr-xtext/map_names.asm107
-rw-r--r--text/maps/bike_shop.asm22
-rw-r--r--text/maps/bills_house.asm10
-rw-r--r--text/maps/celadon_dept_store_roof.asm24
-rw-r--r--text/maps/celadon_diner.asm4
-rw-r--r--text/maps/celadon_game_corner.asm46
-rw-r--r--text/maps/celadon_gym.asm8
-rw-r--r--text/maps/cerulean_badge_house.asm22
-rw-r--r--text/maps/cerulean_city.asm28
-rw-r--r--text/maps/cerulean_gym.asm14
-rw-r--r--text/maps/cerulean_trashed_house.asm4
-rw-r--r--text/maps/champion.asm14
-rw-r--r--text/maps/cinnabar_gym.asm46
-rw-r--r--text/maps/cinnabar_lab_fossil_room.asm16
-rw-r--r--text/maps/copycats_house_2f.asm6
-rw-r--r--text/maps/daycare_1.asm18
-rw-r--r--text/maps/daycare_2.asm14
-rw-r--r--text/maps/fighting_dojo.asm8
-rw-r--r--text/maps/fuchsia_city.asm2
-rw-r--r--text/maps/fuchsia_fishing_house.asm10
-rw-r--r--text/maps/fujis_house.asm10
-rw-r--r--text/maps/lavender_house.asm4
-rw-r--r--text/maps/lavender_mart.asm4
-rw-r--r--text/maps/lavender_town.asm6
-rw-r--r--text/maps/lorelei.asm2
-rw-r--r--text/maps/mansion_2f.asm6
-rw-r--r--text/maps/mt_moon_b1f.asm2
-rw-r--r--text/maps/mt_moon_b2f.asm18
-rw-r--r--text/maps/mt_moon_pokecenter.asm8
-rw-r--r--text/maps/museum_1f.asm30
-rw-r--r--text/maps/name_rater.asm14
-rw-r--r--text/maps/oaks_lab.asm52
-rw-r--r--text/maps/pewter_city.asm16
-rw-r--r--text/maps/pewter_gym_1.asm2
-rw-r--r--text/maps/pewter_gym_2.asm16
-rw-r--r--text/maps/pewter_mart.asm4
-rw-r--r--text/maps/pokemon_league_gate.asm6
-rw-r--r--text/maps/pokemon_tower_2f.asm8
-rw-r--r--text/maps/pokemon_tower_5f.asm2
-rw-r--r--text/maps/pokemon_tower_6f.asm6
-rw-r--r--text/maps/pokemon_tower_7f.asm2
-rw-r--r--text/maps/rocket_hideout_b4f.asm8
-rw-r--r--text/maps/rocket_hideout_elevator.asm2
-rw-r--r--text/maps/route_1.asm6
-rw-r--r--text/maps/route_11_gate_upstairs.asm4
-rw-r--r--text/maps/route_12.asm4
-rw-r--r--text/maps/route_12_gate_upstairs.asm4
-rw-r--r--text/maps/route_12_house.asm12
-rw-r--r--text/maps/route_15_gate_upstairs.asm4
-rw-r--r--text/maps/route_16.asm4
-rw-r--r--text/maps/route_16_gate.asm6
-rw-r--r--text/maps/route_16_gate_upstairs.asm8
-rw-r--r--text/maps/route_16_house.asm2
-rw-r--r--text/maps/route_18_gate.asm6
-rw-r--r--text/maps/route_18_gate_upstairs.asm4
-rw-r--r--text/maps/route_22.asm4
-rw-r--r--text/maps/route_23.asm2
-rw-r--r--text/maps/route_24_1.asm14
-rw-r--r--text/maps/route_2_gate.asm2
-rw-r--r--text/maps/safari_zone_entrance.asm24
-rw-r--r--text/maps/safari_zone_secret_house.asm2
-rw-r--r--text/maps/saffron_gates.asm8
-rw-r--r--text/maps/saffron_gym.asm12
-rw-r--r--text/maps/silph_co_10f.asm4
-rw-r--r--text/maps/silph_co_11f.asm8
-rw-r--r--text/maps/silph_co_2f.asm2
-rw-r--r--text/maps/silph_co_3f.asm4
-rw-r--r--text/maps/silph_co_4f.asm4
-rw-r--r--text/maps/silph_co_5f_1.asm4
-rw-r--r--text/maps/silph_co_6f.asm20
-rw-r--r--text/maps/silph_co_7f.asm74
-rw-r--r--text/maps/silph_co_8f.asm68
-rw-r--r--text/maps/silph_co_9f.asm6
-rw-r--r--text/maps/ss_anne_5.asm12
-rw-r--r--text/maps/ss_anne_6.asm8
-rw-r--r--text/maps/ss_anne_7.asm2
-rw-r--r--text/maps/ss_anne_8.asm2
-rw-r--r--text/maps/ss_anne_9.asm14
-rw-r--r--text/maps/vermilion_city.asm4
-rw-r--r--text/maps/vermilion_fishing_house.asm12
-rw-r--r--text/maps/vermilion_gym_1.asm2
-rw-r--r--text/maps/vermilion_gym_2.asm8
-rw-r--r--text/maps/viridian_city.asm26
-rw-r--r--text/maps/viridian_gym.asm10
-rw-r--r--text/maps/viridian_house.asm2
-rw-r--r--text/maps/wardens_house.asm4
-rwxr-xr-xtext/monster_names.asm191
-rwxr-xr-xtext/trainer_names.asm48
-rwxr-xr-xtext/type_names.asm61
1033 files changed, 58300 insertions, 59531 deletions
diff --git a/constants/palette_constants.asm b/constants/palette_constants.asm
index 56e48080..669c5296 100644
--- a/constants/palette_constants.asm
+++ b/constants/palette_constants.asm
@@ -13,8 +13,8 @@ PAL_INDIGO EQU $0A
PAL_SAFFRON EQU $0B
PAL_TOWNMAP EQU $0C
PAL_LOGO1 EQU $0D
-; XXX
-PAL_LOGO2 EQU $0F
+PAL_LOGO2 EQU $0E
+;PAL_0F EQU $0F
PAL_MEWMON EQU $10
PAL_BLUEMON EQU $11
PAL_REDMON EQU $12
@@ -35,4 +35,4 @@ PAL_YELLOWBAR EQU $20
PAL_REDBAR EQU $21
PAL_BADGE EQU $22
PAL_CAVE EQU $23
-; XXX \ No newline at end of file
+PAL_GAMEFREAK EQU $24 \ No newline at end of file
diff --git a/data/animations.asm b/data/animations.asm
new file mode 100755
index 00000000..a9d22e54
--- /dev/null
+++ b/data/animations.asm
@@ -0,0 +1,3628 @@
+AttackAnimationPointers: ; 7a07d (1e:607d)
+ dw PoundAnim
+ dw KarateChopAnim
+ dw DoubleSlapAnim
+ dw CometPunchAnim
+ dw MegaPunchAnim
+ dw PayDayAnim
+ dw FirePunchAnim
+ dw IcePunchAnim
+ dw ThunderPunchAnim
+ dw ScratchAnim
+ dw VicegripAnim
+ dw GuillotineAnim
+ dw RazorWindAnim
+ dw SwordsDanceAnim
+ dw CutAnim
+ dw GustAnim
+ dw WingAttackAnim
+ dw WhirlwindAnim
+ dw FlyAnim
+ dw BindAnim
+ dw SlamAnim
+ dw VineWhipAnim
+ dw StompAnim
+ dw DoubleKickAnim
+ dw MegaKickAnim
+ dw JumpKickAnim
+ dw RollingKickAnim
+ dw SandAttackAnim
+ dw HeatButtAnim
+ dw HornAttackAnim
+ dw FuryAttackAnim
+ dw HornDrillAnim
+ dw TackleAnim
+ dw BodySlamAnim
+ dw WrapAnim
+ dw TakeDownAnim
+ dw ThrashAnim
+ dw DoubleEdgeAnim
+ dw TailWhipAnim
+ dw PoisonStingAnim
+ dw TwineedleAnim
+ dw PinMissileAnim
+ dw LeerAnim
+ dw BiteAnim
+ dw GrowlAnim
+ dw RoarAnim
+ dw SingAnim
+ dw SupersonicAnim
+ dw SonicBoomAnim
+ dw DisableAnim
+ dw AcidAnim
+ dw EmberAnim
+ dw FlamethrowerAnim
+ dw MistAnim
+ dw WaterGunAnim
+ dw HydroPumpAnim
+ dw SurfAnim
+ dw IceBeamAnim
+ dw BlizzardAnim
+ dw PsyBeamAnim
+ dw BubbleBeamAnim
+ dw AuroraBeamAnim
+ dw HyperBeamAnim
+ dw PeckAnim
+ dw DrillPeckAnim
+ dw SubmissionAnim
+ dw LowKickAnim
+ dw CounterAnim
+ dw SeismicTossAnim
+ dw StrengthAnim
+ dw AbsorbAnim
+ dw MegaDrainAnim
+ dw LeechSeedAnim
+ dw GrowthAnim
+ dw RazorLeafAnim
+ dw SolarBeamAnim
+ dw PoisonPowderAnim
+ dw StunSporeAnim
+ dw SleepPowderAnim
+ dw PedalDanceAnim
+ dw StringShotAnim
+ dw DragonRageAnim
+ dw FireSpinAnim
+ dw ThunderShockAnim
+ dw ThunderBoltAnim
+ dw ThunderWaveAnim
+ dw ThunderAnim
+ dw RockThrowAnim
+ dw EarthquakeAnim
+ dw FissureAnim
+ dw DigAnim
+ dw ToxicAnim
+ dw ConfusionAnim
+ dw PsychicAnim
+ dw HypnosisAnim
+ dw MeditateAnim
+ dw AgilityAnim
+ dw QuickAttackAnim
+ dw RageAnim
+ dw TeleportAnim
+ dw NightShadeAnim
+ dw MimicAnim
+ dw ScreechAnim
+ dw DoubleTeamAnim
+ dw RecoverAnim
+ dw HardenAnim
+ dw MinimizeAnim
+ dw SmokeScreenAnim
+ dw ConfuseRayAnim
+ dw WithdrawAnim
+ dw DefenseCurlAnim
+ dw BarrierAnim
+ dw LightScreenAnim
+ dw HazeAnim
+ dw ReflectAnim
+ dw FocusEnergyAnim
+ dw BideAnim
+ dw MetronomeAnim
+ dw MirrorMoveAnim
+ dw SelfdestructAnim
+ dw EggBombAnim
+ dw LickAnim
+ dw SmogAnim
+ dw SludgeAnim
+ dw BoneClubAnim
+ dw FireBlastAnim
+ dw WaterfallAnim
+ dw ClampAnim
+ dw SwiftAnim
+ dw SkullBashAnim
+ dw SpikeCannonAnim
+ dw ConstrictAnim
+ dw AmnesiaAnim
+ dw KinesisAnim
+ dw SoftboiledAnim
+ dw HiJumpKickAnim
+ dw GlareAnim
+ dw DreamEaterAnim
+ dw PoisonGasAnim
+ dw BarrageAnim
+ dw LeechLifeAnim
+ dw LovelyKissAnim
+ dw SkyAttackAnim
+ dw TransformAnim
+ dw BubbleAnim
+ dw DizzyPunchAnim
+ dw SporeAnim
+ dw FlashAnim
+ dw PsywaveAnim
+ dw SplashAnim
+ dw AcidArmorAnim
+ dw CrabHammerAnim
+ dw ExplosionAnim
+ dw FurySwipesAnim
+ dw BonemerangAnim
+ dw RestAnim
+ dw RockSlideAnim
+ dw HyperFangAnim
+ dw SharpenAnim
+ dw ConversionAnim
+ dw TriAttackAnim
+ dw SuperFangAnim
+ dw SlashAnim
+ dw SubstituteAnim
+ dw StruggleAnim
+ dw ShowPicAnim
+ dw EnemyFlashAnim
+ dw PlayerFlashAnim
+ dw EnemyHUDShakeAnim
+ dw TradeBallDropAnim
+ dw TradeBallAppear1Anim
+ dw TradeBallAppear2Anim
+ dw TradeBallPoofAnim
+ dw XStatItemAnim
+ dw XStatItemAnim
+ dw ShrinkingSquareAnim
+ dw ShrinkingSquareAnim
+ dw XStatItemBlackAnim
+ dw XStatItemBlackAnim
+ dw ShrinkingSquareBlackAnim
+ dw ShrinkingSquareBlackAnim
+ dw UnusedAnim
+ dw UnusedAnim
+ dw ParalyzeAnim
+ dw ParalyzeAnim
+ dw PoisonAnim
+ dw PoisonAnim
+ dw SleepPlayerAnim
+ dw SleepEnemyAnim
+ dw ConfusedPlayerAnim
+ dw ConfusedEnemyAnim
+ dw FaintAnim
+ dw BallTossAnim
+ dw BallShakeAnim
+ dw BallPoofAnim
+ dw BallBlockAnim
+ dw GreatTossAnim
+ dw UltraTossAnim
+ dw ShakeScreenAnim
+ dw HidePicAnim
+ dw ThrowRockAnim
+ dw ThrowBaitAnim
+ dw ZigZagScreenAnim
+
+; each animation is a list of subanimations and special effects
+; if first byte < $56
+; db tileset_and_delay, sound_id, subanimation_id
+; if first byte >= $D8
+; db special_effect_id, sound_id
+; $FF terminated
+ZigZagScreenAnim: ; 7a213 (1e:6213)
+ db SE_WAVY_SCREEN, $FF
+ db $FF
+
+PoundAnim: ; 7a216 (1e:6216)
+StruggleAnim: ; 7a216 (1e:6216)
+ db $08,$00,$01
+ db $FF
+
+KarateChopAnim: ; 7a21a (1e:621a)
+ db $08,$01,$03
+ db $FF
+
+DoubleSlapAnim: ; 7a21e (1e:621e)
+ db $05,$02,$01
+ db $05,$02,$01
+ db $FF
+
+CometPunchAnim: ; 7a225 (1e:6225)
+ db $04,$03,$02
+ db $04,$03,$02
+ db $FF
+
+MegaPunchAnim: ; 7a22c (1e:622c)
+ db $46,$04,$04
+ db $FF
+
+PayDayAnim: ; 7a230 (1e:6230)
+ db $08,$00,$01
+ db $04,$05,$52
+ db $FF
+
+FirePunchAnim: ; 7a237 (1e:6237)
+ db $06,$06,$02
+ db $46,$FF,$11
+ db $FF
+
+IcePunchAnim: ; 7a23e (1e:623e)
+ db $06,$07,$02
+ db $10,$FF,$2F
+ db $FF
+
+ThunderPunchAnim: ; 7a245 (1e:6245)
+ db $06,$08,$02
+ db SE_DARK_SCREEN_PALETTE, $FF
+ db $46,$FF,$2B
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ScratchAnim: ; 7a250 (1e:6250)
+ db $06,$09,$0F
+ db $FF
+
+VicegripAnim: ; 7a254 (1e:6254)
+ db $08,$0A,$2A
+ db $FF
+
+GuillotineAnim: ; 7a258 (1e:6258)
+ db $06,$0B,$2A
+ db $FF
+
+RazorWindAnim: ; 7a25c (1e:625c)
+ db $04,$0C,$16
+ db $FF
+
+SwordsDanceAnim: ; 7a260 (1e:6260)
+ db $46,$0D,$18
+ db $46,$0D,$18
+ db $46,$0D,$18
+ db $FF
+
+CutAnim: ; 7a26a (1e:626a)
+ db SE_DARK_SCREEN_FLASH, $0E
+ db $04,$FF,$16
+ db $FF
+
+GustAnim: ; 7a270 (1e:6270)
+ db $46,$0F,$10
+ db $06,$FF,$02
+ db $FF
+
+WingAttackAnim: ; 7a277 (1e:6277)
+ db $46,$10,$04
+ db $FF
+
+WhirlwindAnim: ; 7a27b (1e:627b)
+ db $46,$11,$10
+ db SE_SLIDE_ENEMY_MON_OUT, $FF
+ db $FF
+
+FlyAnim: ; 7a281 (1e:6281)
+ db $46,$12,$04
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+BindAnim: ; 7a287 (1e:6287)
+ db $04,$13,$23
+ db $04,$13,$23
+ db $FF
+
+SlamAnim: ; 7a28e (1e:628e)
+ db $06,$14,$02
+ db $FF
+
+VineWhipAnim: ; 7a292 (1e:6292)
+ db $01,$15,$16
+ db $08,$FF,$01
+ db $FF
+
+StompAnim: ; 7a299 (1e:6299)
+ db $48,$16,$05
+ db $FF
+
+DoubleKickAnim: ; 7a29d (1e:629d)
+ db $08,$17,$01
+ db $08,$17,$01
+ db $FF
+
+MegaKickAnim: ; 7a2a4 (1e:62a4)
+ db $46,$18,$04
+ db $FF
+
+JumpKickAnim: ; 7a2a8 (1e:62a8)
+ db $46,$19,$04
+ db $FF
+
+RollingKickAnim: ; 7a2ac (1e:62ac)
+ db SE_DARK_SCREEN_FLASH, $1A
+ db $46,$FF,$04
+ db $FF
+
+SandAttackAnim: ; 7a2b2 (1e:62b2)
+ db $46,$1B,$28
+ db $FF
+
+HeatButtAnim: ; 7a2b6 (1e:62b6)
+ db $46,$1C,$05
+ db $FF
+
+HornAttackAnim: ; 7a2ba (1e:62ba)
+ db $06,$1D,$45
+ db $46,$FF,$05
+ db $FF
+
+FuryAttackAnim: ; 7a2c1 (1e:62c1)
+ db $02,$1E,$46
+ db $02,$FF,$46
+ db $FF
+
+HornDrillAnim: ; 7a2c8 (1e:62c8)
+ db $42,$1F,$05
+ db $42,$FF,$05
+ db $42,$FF,$05
+ db $42,$FF,$05
+ db $42,$FF,$05
+ db $FF
+
+TackleAnim: ; 7a2d8 (1e:62d8)
+ db SE_MOVE_MON_HORIZONTALLY, $48
+ db SE_RESET_MON_POSITION, $FF
+ db $FF
+
+BodySlamAnim: ; 7a2dd (1e:62dd)
+ db SE_MOVE_MON_HORIZONTALLY, $48
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_MON_POSITION, $FF
+ db $FF
+
+WrapAnim: ; 7a2e6 (1e:62e6)
+ db $04,$22,$23
+ db $04,$22,$23
+ db $04,$22,$23
+ db $FF
+
+TakeDownAnim: ; 7a2f0 (1e:62f0)
+ db SE_MOVE_MON_HORIZONTALLY, $48
+ db SE_DARK_SCREEN_FLASH, $23
+ db SE_RESET_MON_POSITION, $FF
+ db $FF
+
+ThrashAnim: ; 7a2f7 (1e:62f7)
+ db $46,$24,$04
+ db $FF
+
+DoubleEdgeAnim: ; 7a2fb (1e:62fb)
+ db SE_LIGHT_SCREEN_PALETTE, $48
+ db $06,$FF,$2D
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db SE_MOVE_MON_HORIZONTALLY, $FF
+ db SE_DARK_SCREEN_FLASH, $25
+ db SE_RESET_MON_POSITION, $FF
+ db $FF
+
+TailWhipAnim: ; 7a309 (1e:6309)
+ db SE_MOVE_MON_HORIZONTALLY, $84
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_RESET_MON_POSITION, $84
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_MOVE_MON_HORIZONTALLY, $84
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_RESET_MON_POSITION, $84
+ db $FF
+
+PoisonStingAnim: ; 7a318 (1e:6318)
+ db $06,$27,$00
+ db $FF
+
+TwineedleAnim: ; 7a31c (1e:631c)
+ db $05,$28,$01
+ db $05,$28,$01
+ db $FF
+
+PinMissileAnim: ; 7a323 (1e:6323)
+ db $03,$29,$01
+ db $FF
+
+LeerAnim: ; 7a327 (1e:6327)
+ db SE_DARK_SCREEN_PALETTE, $48
+ db SE_DARK_SCREEN_FLASH, $2A
+ db SE_DARK_SCREEN_FLASH, $2A
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+BiteAnim: ; 7a330 (1e:6330)
+ db $08,$2B,$02
+ db $FF
+
+GrowlAnim: ; 7a334 (1e:6334)
+ db $46,$2C,$12
+ db $FF
+
+RoarAnim: ; 7a338 (1e:6338)
+ db $46,$2D,$15
+ db $46,$2D,$15
+ db $46,$2D,$15
+ db $FF
+
+SingAnim: ; 7a342 (1e:6342)
+ db $46,$2E,$12
+ db $50,$FF,$40
+ db $50,$FF,$40
+ db $FF
+
+SupersonicAnim: ; 7a34c (1e:634c)
+ db $06,$2F,$31
+ db $FF
+
+SonicBoomAnim: ; 7a350 (1e:6350)
+ db $46,$2D,$15
+ db $46,$2D,$15
+ db $46,$0F,$10
+ db $46,$FF,$05
+ db $FF
+
+DisableAnim: ; 7a35d (1e:635d)
+ db SE_DARK_SCREEN_PALETTE, $48
+ db SE_DARK_SCREEN_FLASH, $2A
+ db SE_DARK_SCREEN_FLASH, $2A
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+AcidAnim: ; 7a366 (1e:6366)
+ db $46,$32,$13
+ db $46,$32,$14
+ db $FF
+
+EmberAnim: ; 7a36d (1e:636d)
+ db $46,$33,$11
+ db $FF
+
+FlamethrowerAnim: ; 7a371 (1e:6371)
+ db $46,$34,$1F
+ db $46,$34,$0C
+ db $46,$34,$0D
+ db $FF
+
+MistAnim: ; 7a37b (1e:637b)
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db SE_WATER_DROPLETS_EVERYWHERE, $38
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+WaterGunAnim: ; 7a382 (1e:6382)
+ db $06,$36,$2C
+ db $FF
+
+HydroPumpAnim: ; 7a386 (1e:6386)
+ db $06,$37,$1A
+ db $06,$37,$1A
+ db $FF
+
+SurfAnim: ; 7a38d (1e:638d)
+ db SE_WATER_DROPLETS_EVERYWHERE, $38
+ db $06,$37,$1A
+ db $FF
+
+IceBeamAnim: ; 7a393 (1e:6393)
+ db $03,$39,$2E
+ db $10,$FF,$2F
+ db $FF
+
+BlizzardAnim: ; 7a39a (1e:639a)
+ db $04,$3A,$38
+ db $04,$37,$38
+ db $FF
+
+PsyBeamAnim: ; 7a3a1 (1e:63a1)
+ db $03,$3B,$2E
+ db SE_FLASH_SCREEN_LONG, $FF
+ db $FF
+
+BubbleBeamAnim: ; 7a3a7 (1e:63a7)
+ db $12,$3C,$35
+ db $FF
+
+AuroraBeamAnim: ; 7a3ab (1e:63ab)
+ db $03,$3D,$2E
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db $FF
+
+HyperBeamAnim: ; 7a3b3 (1e:63b3)
+ db SE_DARK_SCREEN_PALETTE, $48
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db $02,$3E,$2E
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $46,$04,$04
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+PeckAnim: ; 7a3c4 (1e:63c4)
+ db $08,$3F,$01
+ db $FF
+
+DrillPeckAnim: ; 7a3c8 (1e:63c8)
+ db $46,$40,$04
+ db $FF
+
+SubmissionAnim: ; 7a3cc (1e:63cc)
+ db SE_SLIDE_MON_OUT, $41
+ db $06,$FF,$01
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+LowKickAnim: ; 7a3d4 (1e:63d4)
+ db SE_SLIDE_MON_OUT, $42
+ db $46,$FF,$04
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+CounterAnim: ; 7a3dc (1e:63dc)
+ db SE_SLIDE_MON_OUT, $43
+ db $46,$FF,$04
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+SeismicTossAnim: ; 7a3e4 (1e:63e4)
+ db SE_BLINK_ENEMY_MON, $FF
+ db $41,$8B,$4E
+ db SE_HIDE_ENEMY_MON_PIC, $FF
+ db SE_SLIDE_MON_OUT, $FF
+ db $42,$44,$4F
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_SHOW_MON_PIC, $FF
+ db $41,$44,$50
+ db SE_SHOW_ENEMY_MON_PIC, $FF
+ db SE_SHAKE_SCREEN, $FF
+ db $FF
+
+StrengthAnim: ; 7a3fe (1e:63fe)
+ db SE_MOVE_MON_HORIZONTALLY, $48
+ db SE_RESET_MON_POSITION, $FF
+ db $46,$06,$04
+ db $FF
+
+AbsorbAnim: ; 7a406 (1e:6406)
+ db SE_LIGHT_SCREEN_PALETTE, $46
+ db $06,$FF,$21
+ db $06,$FF,$22
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+MegaDrainAnim: ; 7a411 (1e:6411)
+ db SE_LIGHT_SCREEN_PALETTE, $47
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $06,$FF,$21
+ db $06,$FF,$22
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+LeechSeedAnim: ; 7a420 (1e:6420)
+ db $46,$48,$1B
+ db $55,$4D,$1C
+ db $FF
+
+GrowthAnim: ; 7a427 (1e:6427)
+ db SE_LIGHT_SCREEN_PALETTE, $49
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+RazorLeafAnim: ; 7a42e (1e:642e)
+ db SE_LEAVES_FALLING, $4A
+ db $41,$80,$44
+ db $01,$0C,$16
+ db $FF
+
+SolarBeamAnim: ; 7a437 (1e:6437)
+ db $06,$4B,$2E
+ db $06,$FF,$01
+ db $FF
+
+PoisonPowderAnim: ; 7a43e (1e:643e)
+ db $06,$4C,$36
+ db $FF
+
+StunSporeAnim: ; 7a442 (1e:6442)
+ db $06,$4D,$36
+ db $FF
+
+SleepPowderAnim: ; 7a446 (1e:6446)
+ db $06,$4E,$36
+ db $FF
+
+PedalDanceAnim: ; 7a44a (1e:644a)
+ db SE_LIGHT_SCREEN_PALETTE, $4F
+ db SE_PETALS_FALLING, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+StringShotAnim: ; 7a451 (1e:6451)
+ db $08,$50,$37
+ db $FF
+
+DragonRageAnim: ; 7a455 (1e:6455)
+ db $46,$51,$1F
+ db $46,$FF,$0C
+ db $46,$FF,$0D
+ db $46,$FF,$0E
+ db $FF
+
+FireSpinAnim: ; 7a462 (1e:6462)
+ db $46,$52,$0C
+ db $46,$FF,$0D
+ db $46,$FF,$0E
+ db $FF
+
+ThunderShockAnim: ; 7a46c (1e:646c)
+ db $42,$53,$29
+ db $FF
+
+ThunderBoltAnim: ; 7a470 (1e:6470)
+ db $41,$54,$29
+ db $41,$54,$29
+ db $FF
+
+ThunderWaveAnim: ; 7a477 (1e:6477)
+ db $42,$55,$29
+ db $02,$FF,$23
+ db $04,$FF,$23
+ db $FF
+
+ThunderAnim: ; 7a481 (1e:6481)
+ db SE_DARK_SCREEN_PALETTE, $56
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $46,$FF,$2B
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $42,$54,$29
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+RockThrowAnim: ; 7a490 (1e:6490)
+ db $04,$57,$30
+ db $FF
+
+EarthquakeAnim: ; 7a494 (1e:6494)
+ db SE_SHAKE_SCREEN, $58
+ db SE_SHAKE_SCREEN, $58
+ db $FF
+
+FissureAnim: ; 7a499 (1e:6499)
+ db SE_DARK_SCREEN_FLASH, $59
+ db SE_SHAKE_SCREEN, $FF
+ db SE_DARK_SCREEN_FLASH, $59
+ db SE_SHAKE_SCREEN, $FF
+ db $FF
+
+DigAnim: ; 7a4a2 (1e:64a2)
+ db $46,$5A,$04
+ db SE_SLIDE_MON_UP, $FF
+ db $FF
+
+ToxicAnim: ; 7a4a8 (1e:64a8)
+ db SE_WATER_DROPLETS_EVERYWHERE, $38
+ db $46,$5B,$14
+ db $FF
+
+ConfusionAnim: ; 7a4ae (1e:64ae)
+ db SE_FLASH_SCREEN_LONG, $5C
+ db $FF
+
+PsychicAnim: ; 7a4b1 (1e:64b1)
+ db SE_FLASH_SCREEN_LONG, $5D
+ db SE_WAVY_SCREEN, $FF
+ db $FF
+
+HypnosisAnim: ; 7a4b6 (1e:64b6)
+ db SE_FLASH_SCREEN_LONG, $5E
+ db $FF
+
+MeditateAnim: ; 7a4b9 (1e:64b9)
+ db SE_LIGHT_SCREEN_PALETTE, $5F
+ db $46,$FF,$43
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+AgilityAnim: ; 7a4c3 (1e:64c3)
+ db SE_LIGHT_SCREEN_PALETTE, $60
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+QuickAttackAnim: ; 7a4c8 (1e:64c8)
+ db SE_SLIDE_MON_OUT, $61
+ db $46,$FF,$04
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+RageAnim: ; 7a4d0 (1e:64d0)
+ db $06,$62,$01
+ db $FF
+
+TeleportAnim: ; 7a4d4 (1e:64d4)
+ db SE_SQUISH_MON_PIC, $63
+ db SE_SHOOT_BALLS_UPWARD, $FF
+ db $FF
+
+NightShadeAnim: ; 7a4d9 (1e:64d9)
+ db SE_FLASH_SCREEN_LONG, $5C
+ db SE_WAVY_SCREEN, $FF
+ db $FF
+
+MimicAnim: ; 7a4de (1e:64de)
+ db $46,$65,$21
+ db $46,$65,$22
+ db $FF
+
+ScreechAnim: ; 7a4e5 (1e:64e5)
+ db $46,$66,$12
+ db $FF
+
+DoubleTeamAnim: ; 7a4e9 (1e:64e9)
+ db SE_DARK_SCREEN_PALETTE, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db SE_SHAKE_BACK_AND_FORTH, $67
+ db SE_SHOW_MON_PIC, $FF
+ db $46,$6F,$33
+ db $FF
+
+RecoverAnim: ; 7a4fd (1e:64fd)
+ db SE_BLINK_MON, $68
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+HardenAnim: ; 7a506 (1e:6506)
+ db SE_LIGHT_SCREEN_PALETTE, $69
+ db $46,$FF,$43
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+MinimizeAnim: ; 7a510 (1e:6510)
+ db SE_LIGHT_SCREEN_PALETTE, $6A
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db SE_MINIMIZE_MON, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+SmokeScreenAnim: ; 7a519 (1e:6519)
+ db $46,$6B,$28
+ db $04,$FF,$0A
+ db SE_DARKEN_MON_PALETTE, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DARK_SCREEN_PALETTE, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_DARKEN_MON_PALETTE, $FF
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ConfuseRayAnim: ; 7a53a (1e:653a)
+ db SE_DARK_SCREEN_PALETTE, $6C
+ db $46,$FF,$3E
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+WithdrawAnim: ; 7a542 (1e:6542)
+ db SE_LIGHT_SCREEN_PALETTE, $6E
+ db SE_SLIDE_MON_DOWN, $FF
+ db $06,$FF,$51
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+DefenseCurlAnim: ; 7a54e (1e:654e)
+ db SE_LIGHT_SCREEN_PALETTE, $6E
+ db $06,$FF,$43
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+BarrierAnim: ; 7a558 (1e:6558)
+ db $46,$6F,$33
+ db $46,$6F,$33
+ db $FF
+
+LightScreenAnim: ; 7a55f (1e:655f)
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db $46,$70,$33
+ db $46,$70,$33
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+HazeAnim: ; 7a56a (1e:656a)
+ db SE_DARKEN_MON_PALETTE, $FF
+ db SE_WATER_DROPLETS_EVERYWHERE, $38
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ReflectAnim: ; 7a571 (1e:6571)
+ db SE_DARK_SCREEN_PALETTE, $FF
+ db $46,$72,$33
+ db $46,$72,$33
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+FocusEnergyAnim: ; 7a57c (1e:657c)
+ db SE_SPIRAL_BALLS_INWARD, $73
+ db $FF
+
+BideAnim: ; 7a57f (1e:657f)
+ db $46,$74,$04
+ db $FF
+
+MetronomeAnim: ; 7a583 (1e:6583)
+ db SE_MOVE_MON_HORIZONTALLY, $84
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_RESET_MON_POSITION, $84
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_MOVE_MON_HORIZONTALLY, $84
+ db SE_DELAY_ANIMATION_10, $FF
+ db SE_RESET_MON_POSITION, $84
+ db $FF
+
+MirrorMoveAnim: ; 7a592 (1e:6592)
+ db $08,$76,$01
+ db $FF
+
+SelfdestructAnim: ; 7a596 (1e:6596)
+ db $43,$77,$34
+ db $FF
+
+EggBombAnim: ; 7a59a (1e:659a)
+ db $44,$78,$41
+ db $44,$78,$42
+ db $FF
+
+LickAnim: ; 7a5a1 (1e:65a1)
+ db $46,$7B,$14
+ db $FF
+
+SmogAnim: ; 7a5a5 (1e:65a5)
+ db SE_DARKEN_MON_PALETTE, $48
+ db $46,$7A,$19
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+SludgeAnim: ; 7a5ad (1e:65ad)
+ db $46,$7B,$13
+ db $46,$7B,$14
+ db $FF
+
+BoneClubAnim: ; 7a5b4 (1e:65b4)
+ db $08,$7C,$02
+ db $FF
+
+FireBlastAnim: ; 7a5b8 (1e:65b8)
+ db $46,$7D,$1F
+ db $46,$FF,$20
+ db $46,$FF,$20
+ db $46,$FF,$0C
+ db $46,$FF,$0D
+ db $FF
+
+WaterfallAnim: ; 7a5c8 (1e:65c8)
+ db SE_SLIDE_MON_DOWN, $48
+ db $06,$37,$1A
+ db $08,$FF,$02
+ db SE_SLIDE_MON_UP, $FF
+ db $FF
+
+ClampAnim: ; 7a5d3 (1e:65d3)
+ db $08,$7F,$2A
+ db $06,$83,$23
+ db $06,$83,$23
+ db $FF
+
+SwiftAnim: ; 7a5dd (1e:65dd)
+ db $43,$80,$3F
+ db $FF
+
+SkullBashAnim: ; 7a5e1 (1e:65e1)
+ db $46,$81,$05
+ db $FF
+
+SpikeCannonAnim: ; 7a5e5 (1e:65e5)
+ db $44,$82,$04
+ db $FF
+
+ConstrictAnim: ; 7a5e9 (1e:65e9)
+ db $06,$83,$23
+ db $06,$83,$23
+ db $06,$83,$23
+ db $FF
+
+AmnesiaAnim: ; 7a5f3 (1e:65f3)
+ db $08,$84,$25
+ db $08,$84,$25
+ db $FF
+
+KinesisAnim: ; 7a5fa (1e:65fa)
+ db $08,$85,$01
+ db $FF
+
+SoftboiledAnim: ; 7a5fe (1e:65fe)
+ db SE_SLIDE_MON_HALF_LEFT, $48
+ db $08,$86,$4C
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+HiJumpKickAnim: ; 7a6 (1e:660c)
+ db $46,$87,$04
+ db $FF
+
+GlareAnim: ; 7a610 (1e:6610)
+ db SE_DARK_SCREEN_PALETTE, $48
+ db SE_DARK_SCREEN_FLASH, $88
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+DreamEaterAnim: ; 7a619 (1e:6619)
+ db SE_FLASH_SCREEN_LONG, $89
+ db SE_DARK_SCREEN_PALETTE, $89
+ db $08,$89,$02
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+PoisonGasAnim: ; 7a623 (1e:6623)
+ db $46,$8A,$19
+ db $FF
+
+BarrageAnim: ; 7a627 (1e:6627)
+ db $43,$8B,$41
+ db $05,$FF,$55
+ db $FF
+
+LeechLifeAnim: ; 7a62e (1e:662e)
+ db $08,$8C,$02
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $06,$FF,$21
+ db $06,$FF,$22
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $FF
+
+LovelyKissAnim: ; 7a63c (1e:663c)
+ db $06,$8D,$12
+ db $FF
+
+SkyAttackAnim: ; 7a640 (1e:6640)
+ db SE_SQUISH_MON_PIC, $8E
+ db SE_SHOOT_BALLS_UPWARD, $FF
+ db $46,$87,$04
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+TransformAnim: ; 7a64a (1e:664a)
+ db $46,$8F,$21
+ db $44,$8F,$22
+ db $08,$FF,$47
+ db SE_TRANSFORM_MON, $FF
+ db $FF
+
+BubbleAnim: ; 7a656 (1e:6656)
+ db $16,$90,$35
+ db $FF
+
+DizzyPunchAnim: ; 7a65a (1e:665a)
+ db $06,$91,$17
+ db $06,$91,$17
+ db $06,$91,$17
+ db $06,$02,$02
+ db $FF
+
+SporeAnim: ; 7a667 (1e:6667)
+ db $06,$92,$36
+ db $FF
+
+FlashAnim: ; 7a66b (1e:666b)
+ db SE_LIGHT_SCREEN_PALETTE, $48
+ db SE_DARK_SCREEN_FLASH, $88
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+PsywaveAnim: ; 7a674 (1e:6674)
+ db $06,$2F,$31
+ db SE_WAVY_SCREEN, $5C
+ db $FF
+
+SplashAnim: ; 7a67a (1e:667a)
+ db SE_BOUNCE_UP_AND_DOWN, $95
+ db $FF
+
+AcidArmorAnim: ; 7a67d (1e:667d)
+ db SE_SLIDE_MON_DOWN_AND_HIDE, $96
+ db $FF
+
+CrabHammerAnim: ; 7a680 (1e:6680)
+ db $46,$97,$05
+ db $06,$FF,$2A
+ db $FF
+
+ExplosionAnim: ; 7a687 (1e:6687)
+ db $43,$98,$34
+ db $FF
+
+FurySwipesAnim: ; 7a68b (1e:668b)
+ db $04,$99,$0F
+ db $FF
+
+BonemerangAnim: ; 7a68f (1e:668f)
+ db $06,$9A,$02
+ db $FF
+
+RestAnim: ; 7a693 (1e:6693)
+ db $10,$9B,$3A
+ db $10,$9B,$3A
+ db $FF
+
+RockSlideAnim: ; 7a69a (1e:669a)
+ db $04,$9C,$1D
+ db $03,$9C,$1E
+ db $46,$9D,$04
+ db $FF
+
+HyperFangAnim: ; 7a6a4 (1e:66a4)
+ db $06,$9D,$02
+ db $FF
+
+SharpenAnim: ; 7a6a8 (1e:66a8)
+ db SE_LIGHT_SCREEN_PALETTE, $9E
+ db $46,$FF,$43
+ db SE_DARK_SCREEN_FLASH, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ConversionAnim: ; 7a6b2 (1e:66b2)
+ db SE_DARK_SCREEN_FLASH, $9F
+ db $46,$FF,$21
+ db $46,$FF,$22
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $FF
+
+TriAttackAnim: ; 7a6bd (1e:66bd)
+ db SE_DARK_SCREEN_FLASH, $A0
+ db $46,$FF,$4D
+ db SE_DARK_SCREEN_FLASH, $FF
+ db $FF
+
+SuperFangAnim: ; 7a6c5 (1e:66c5)
+ db SE_DARK_SCREEN_PALETTE, $48
+ db $46,$A1,$04
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+SlashAnim: ; 7a6cd (1e:66cd)
+ db $06,$A2,$0F
+ db $FF
+
+SubstituteAnim: ; 7a6d1 (1e:66d1)
+ db SE_SLIDE_MON_OUT, $A3
+ db $08,$FF,$47
+ db SE_SUBSTITUTE_MON, $FF
+ db $FF
+
+BallTossAnim: ; 7a6d9 (1e:66d9)
+ db $03,$FF,$06
+ db $FF
+
+GreatTossAnim: ; 7a6dd (1e:66dd)
+ db $03,$FF,$07
+ db $FF
+
+UltraTossAnim: ; 7a6e1 (1e:66e1)
+ db $02,$FF,$08
+ db $FF
+
+BallShakeAnim: ; 7a6e5 (1e:66e5)
+ db $04,$FF,$09
+ db $FF
+
+BallPoofAnim: ; 7a6e9 (1e:66e9)
+ db $04,$FF,$0A
+ db $FF
+
+ShowPicAnim: ; 7a6ed (1e:66ed)
+ db SE_SHOW_ENEMY_MON_PIC, $FF
+ db $FF
+
+HidePicAnim: ; 7a6f0 (1e:66f0)
+ db SE_HIDE_ENEMY_MON_PIC, $FF
+ db $FF
+
+EnemyFlashAnim: ; 7a6f3 (1e:66f3)
+ db SE_SHOW_MON_PIC, $FF
+ db $FF
+
+PlayerFlashAnim: ; 7a6f6 (1e:66f6)
+ db SE_FLASH_MON_PIC, $FF
+ db $FF
+
+EnemyHUDShakeAnim: ; 7a6f9 (1e:66f9)
+ db SE_SHAKE_ENEMY_HUD, $FF
+ db $FF
+
+TradeBallDropAnim: ; 7a6fc (1e:66fc)
+ db $86,$FF,$48
+ db $FF
+
+TradeBallAppear1Anim: ; 7a700 (1e:6700)
+ db $84,$FF,$49
+ db $FF
+
+TradeBallAppear2Anim: ; 7a704 (1e:6704)
+ db $86,$FF,$4A
+ db $FF
+
+TradeBallPoofAnim: ; 7a708 (1e:6708)
+ db $86,$FF,$4B
+ db $FF
+
+XStatItemAnim: ; 7a7c0 (1e:670c)
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ShrinkingSquareAnim: ; 7a713 (1e:6713)
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db $46,$FF,$43
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+XStatItemBlackAnim: ; 7a71b (1e:671b)
+ db SE_DARKEN_MON_PALETTE, $FF
+ db SE_SPIRAL_BALLS_INWARD, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ShrinkingSquareBlackAnim: ; 7a722 (1e:6722)
+ db SE_DARKEN_MON_PALETTE, $FF
+ db $46,$FF,$43
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+UnusedAnim: ; 7a72a (1e:672a)
+ db SE_LIGHT_SCREEN_PALETTE, $FF
+ db SE_SHOOT_MANY_BALLS_UPWARD, $FF
+ db SE_RESET_SCREEN_PALETTE, $FF
+ db $FF
+
+ParalyzeAnim: ; 7a731 (1e:6731)
+ db $04,$13,$24
+ db $04,$13,$24
+ db $FF
+
+PoisonAnim: ; 7a738 (1e:6738)
+ db $08,$13,$27
+ db $08,$13,$27
+ db $FF
+
+SleepPlayerAnim: ; 7a73f (1e:673f)
+ db $10,$9B,$3A
+ db $10,$9B,$3A
+ db $FF
+
+SleepEnemyAnim: ; 7a746 (1e:6746)
+ db $10,$9B,$3B
+ db $10,$9B,$3B
+ db $FF
+
+ConfusedPlayerAnim: ; 7a74d (1e:674d)
+ db $08,$84,$25
+ db $08,$84,$25
+ db $FF
+
+ConfusedEnemyAnim: ; 7a754 (1e:6754)
+ db $08,$84,$26
+ db $08,$84,$26
+ db $FF
+
+BallBlockAnim: ; 7a75b (1e:675b)
+ db $03,$FF,$0B
+ db $FF
+
+FaintAnim: ; 7a75f (1e:675f)
+ db SE_SLIDE_MON_DOWN, $5A
+ db $FF
+
+ShakeScreenAnim: ; 7a762 (1e:6762)
+ db SE_SHAKE_SCREEN, $FF
+ db $FF
+
+ThrowRockAnim: ; 7a765 (1e:6765)
+ db $03,$8B,$53
+ db $FF
+
+ThrowBaitAnim: ; 7a769 (1e:6769)
+ db $03,$8B,$54
+ db $FF
+
+SubanimationPointers: ; 7a76d (1e:676d)
+ dw Subanimation00
+ dw Subanimation01
+ dw Subanimation02
+ dw Subanimation03
+ dw Subanimation04
+ dw Subanimation05
+ dw Subanimation06
+ dw Subanimation07
+ dw Subanimation08
+ dw Subanimation09
+ dw Subanimation0a
+ dw Subanimation0b
+ dw Subanimation0c
+ dw Subanimation0d
+ dw Subanimation0e
+ dw Subanimation0f
+ dw Subanimation10
+ dw Subanimation11
+ dw Subanimation12
+ dw Subanimation13
+ dw Subanimation14
+ dw Subanimation15
+ dw Subanimation16
+ dw Subanimation17
+ dw Subanimation18
+ dw Subanimation19
+ dw Subanimation1a
+ dw Subanimation1b
+ dw Subanimation1c
+ dw Subanimation1d
+ dw Subanimation1e
+ dw Subanimation1f
+ dw Subanimation20
+ dw Subanimation21
+ dw Subanimation22
+ dw Subanimation23
+ dw Subanimation24
+ dw Subanimation25
+ dw Subanimation26
+ dw Subanimation27
+ dw Subanimation28
+ dw Subanimation29
+ dw Subanimation2a
+ dw Subanimation2b
+ dw Subanimation2c
+ dw Subanimation2d
+ dw Subanimation2e
+ dw Subanimation2f
+ dw Subanimation30
+ dw Subanimation31
+ dw Subanimation32
+ dw Subanimation33
+ dw Subanimation34
+ dw Subanimation35
+ dw Subanimation36
+ dw Subanimation37
+ dw Subanimation38
+ dw Subanimation39
+ dw Subanimation3a
+ dw Subanimation3b
+ dw Subanimation3c
+ dw Subanimation3d
+ dw Subanimation3e
+ dw Subanimation3f
+ dw Subanimation40
+ dw Subanimation41
+ dw Subanimation42
+ dw Subanimation43
+ dw Subanimation44
+ dw Subanimation45
+ dw Subanimation46
+ dw Subanimation47
+ dw Subanimation48
+ dw Subanimation49
+ dw Subanimation4a
+ dw Subanimation4b
+ dw Subanimation4c
+ dw Subanimation4d
+ dw Subanimation4e
+ dw Subanimation4f
+ dw Subanimation50
+ dw Subanimation51
+ dw Subanimation52
+ dw Subanimation53
+ dw Subanimation54
+ dw Subanimation55
+
+Subanimation04: ; 7a819 (1e:6819)
+ db $43
+ db $02,$1a,$00
+ db $02,$10,$00
+ db $02,$03,$00
+
+Subanimation05: ; 7a823 (1e:6823)
+ db $41
+ db $02,$10,$00
+
+Subanimation08: ; 7a827 (1e:6827)
+ db $0b
+ db $03,$30,$00
+ db $03,$44,$00
+ db $03,$94,$00
+ db $03,$60,$00
+ db $03,$76,$00
+ db $03,$9f,$00
+ db $03,$8d,$00
+ db $03,$a0,$00
+ db $03,$1a,$00
+ db $03,$a1,$00
+ db $03,$34,$00
+
+Subanimation07: ; 7a849 (1e:6849)
+ db $0b
+ db $03,$30,$00
+ db $03,$a2,$00
+ db $03,$31,$00
+ db $03,$a3,$00
+ db $03,$32,$00
+ db $03,$a4,$00
+ db $03,$92,$00
+ db $03,$a5,$00
+ db $03,$15,$00
+ db $03,$a6,$00
+ db $03,$34,$00
+
+Subanimation06: ; 7a86b (1e:686b)
+ db $0b
+ db $03,$30,$00
+ db $03,$a2,$00
+ db $03,$93,$00
+ db $03,$61,$00
+ db $03,$73,$00
+ db $03,$a7,$00
+ db $03,$33,$00
+ db $03,$a8,$00
+ db $03,$0e,$00
+ db $03,$a9,$00
+ db $03,$34,$00
+
+Subanimation09: ; 7a88d (1e:688d)
+ db $04
+ db $03,$21,$04
+ db $04,$21,$04
+ db $03,$21,$04
+ db $05,$21,$04
+
+Subanimation0a: ; 7a89a (1e:689a)
+ db $46
+ db $06,$1b,$00
+ db $07,$1b,$00
+ db $08,$36,$00
+ db $09,$36,$00
+ db $0a,$15,$00
+ db $0a,$15,$00
+
+Subanimation0b: ; 7a8ad (1e:68ad)
+ db $04
+ db $01,$2d,$00
+ db $03,$2f,$00
+ db $03,$35,$00
+ db $03,$4d,$00
+
+Subanimation55: ; 7a8ba (1e:68ba)
+ db $41
+ db $01,$9d,$00
+
+Subanimation11: ; 7a8be (1e:68be)
+ db $4c
+ db $0b,$26,$00
+ db $0c,$26,$00
+ db $0b,$26,$00
+ db $0c,$26,$00
+ db $0b,$28,$00
+ db $0c,$28,$00
+ db $0b,$28,$00
+ db $0c,$28,$00
+ db $0b,$27,$00
+ db $0c,$27,$00
+ db $0b,$27,$00
+ db $0c,$27,$00
+
+Subanimation2b: ; 7a8e3 (1e:68e3)
+ db $4b
+ db $0d,$03,$03
+ db $0e,$03,$03
+ db $0f,$03,$00
+ db $0d,$11,$00
+ db $0d,$11,$00
+ db $0d,$37,$00
+ db $0d,$37,$00
+ db $10,$21,$00
+ db $10,$21,$00
+ db $11,$1b,$00
+ db $11,$1b,$00
+
+Subanimation2c: ; 7a905 (1e:6905)
+ db $4c
+ db $12,$01,$00
+ db $12,$0f,$00
+ db $12,$1b,$00
+ db $12,$25,$00
+ db $13,$38,$00
+ db $13,$38,$02
+ db $14,$38,$00
+ db $14,$38,$02
+ db $15,$38,$00
+ db $15,$38,$00
+ db $16,$38,$00
+ db $16,$38,$00
+
+Subanimation12: ; 7a92a (1e:692a)
+ db $69
+ db $17,$30,$00
+ db $17,$39,$00
+ db $17,$3a,$00
+ db $17,$3b,$00
+ db $17,$3c,$00
+ db $17,$3d,$00
+ db $17,$3e,$00
+ db $17,$3f,$00
+ db $17,$1f,$00
+
+Subanimation00: ; 7a946 (1e:6946)
+ db $41
+ db $01,$17,$00
+
+Subanimation01: ; 7a94a (1e:694a)
+ db $42
+ db $01,$0f,$00
+ db $01,$1d,$00
+
+Subanimation02: ; 7a951 (1e:6951)
+ db $43
+ db $01,$12,$00
+ db $01,$15,$00
+ db $01,$1c,$00
+
+Subanimation03: ; 7a95b (1e:695b)
+ db $44
+ db $01,$0b,$00
+ db $01,$11,$00
+ db $01,$18,$00
+ db $01,$1d,$00
+
+Subanimation0c: ; 7a968 (1e:6968)
+ db $43
+ db $0c,$20,$00
+ db $0c,$21,$00
+ db $0c,$23,$00
+
+Subanimation0d: ; 7a972 (1e:6972)
+ db $46
+ db $0c,$20,$02
+ db $0c,$15,$00
+ db $0c,$21,$02
+ db $0c,$17,$00
+ db $0c,$23,$02
+ db $0c,$19,$00
+
+Subanimation0e: ; 7a985 (1e:6985)
+ db $49
+ db $0c,$20,$02
+ db $0c,$15,$02
+ db $0c,$07,$00
+ db $0c,$21,$02
+ db $0c,$17,$02
+ db $0c,$09,$00
+ db $0c,$23,$02
+ db $0c,$19,$02
+ db $0c,$0c,$00
+
+Subanimation1f: ; 7a9a1 (1e:69a1)
+ db $85
+ db $0c,$30,$03
+ db $0c,$40,$03
+ db $0c,$41,$03
+ db $0c,$42,$03
+ db $0c,$21,$00
+
+Subanimation2e: ; 7a9b1 (1e:69b1)
+ db $2e
+ db $18,$43,$02
+ db $75,$52,$04
+ db $19,$43,$02
+ db $75,$63,$04
+ db $1a,$43,$02
+ db $75,$4d,$04
+ db $1b,$43,$02
+ db $75,$97,$04
+ db $1c,$43,$02
+ db $75,$98,$04
+ db $1d,$43,$02
+ db $75,$58,$04
+ db $1e,$43,$02
+ db $75,$1b,$00
+
+Subanimation2f: ; 7a9dc (1e:69dc)
+ db $44
+ db $1f,$24,$00
+ db $20,$20,$00
+ db $21,$1a,$00
+ db $22,$15,$00
+
+Subanimation30: ; 7a9e9 (1e:69e9)
+ db $52
+ db $23,$00,$02
+ db $23,$02,$02
+ db $23,$04,$00
+ db $23,$07,$02
+ db $23,$02,$02
+ db $23,$04,$00
+ db $23,$0e,$02
+ db $23,$02,$02
+ db $23,$0c,$00
+ db $25,$07,$00
+ db $25,$0e,$00
+ db $25,$15,$00
+ db $24,$24,$02
+ db $23,$1c,$02
+ db $23,$23,$00
+ db $23,$21,$02
+ db $24,$28,$00
+ db $24,$28,$00
+
+Subanimation0f: ; 7aa20 (1e:6a20)
+ db $4c
+ db $26,$0e,$02
+ db $26,$16,$02
+ db $26,$1c,$00
+ db $27,$0e,$02
+ db $27,$16,$02
+ db $27,$1c,$00
+ db $28,$0e,$02
+ db $28,$16,$02
+ db $28,$1c,$00
+ db $29,$0e,$02
+ db $29,$16,$02
+ db $29,$1c,$00
+
+Subanimation16: ; 7aa45 (1e:6a45)
+ db $4c
+ db $2a,$05,$00
+ db $2b,$05,$02
+ db $2b,$0c,$02
+ db $2a,$11,$04
+ db $2b,$11,$02
+ db $2b,$17,$02
+ db $2a,$1b,$04
+ db $2b,$1b,$02
+ db $2b,$20,$02
+ db $2a,$2f,$04
+ db $2c,$00,$02
+ db $2c,$00,$00
+
+Subanimation10: ; 7aa6a (1e:6a6a)
+ db $88
+ db $2d,$44,$00
+ db $2e,$45,$00
+ db $2d,$46,$00
+ db $2e,$47,$00
+ db $2d,$48,$00
+ db $2e,$49,$00
+ db $2d,$2f,$00
+ db $2e,$1a,$00
+
+Subanimation31: ; 7aa83 (1e:6a83)
+ db $2a
+ db $2f,$46,$00
+ db $2f,$4a,$00
+ db $2f,$4b,$00
+ db $2f,$4c,$00
+ db $2f,$4d,$00
+ db $2f,$4e,$00
+ db $2f,$4f,$00
+ db $2f,$50,$00
+ db $2f,$2e,$00
+ db $2f,$51,$00
+
+Subanimation13: ; 7aaa2 (1e:6aa2)
+ db $86
+ db $30,$31,$00
+ db $30,$32,$00
+ db $30,$92,$00
+ db $30,$0e,$00
+ db $30,$0f,$00
+ db $30,$10,$00
+
+Subanimation14: ; 7aab5 (1e:6ab5)
+ db $49
+ db $30,$10,$00
+ db $30,$10,$03
+ db $31,$1c,$04
+ db $31,$21,$04
+ db $31,$26,$00
+ db $30,$10,$02
+ db $31,$1d,$04
+ db $31,$22,$04
+ db $31,$27,$00
+
+Subanimation41: ; 7aad1 (1e:6ad1)
+ db $85
+ db $03,$31,$00
+ db $03,$32,$00
+ db $03,$92,$00
+ db $03,$0e,$00
+ db $03,$10,$00
+
+Subanimation42: ; 7aae1 (1e:6ae1)
+ db $43
+ db $48,$08,$00
+ db $49,$08,$00
+ db $5a,$08,$00
+
+Subanimation15: ; 7aaeb (1e:6aeb)
+ db $22
+ db $35,$52,$00
+ db $35,$53,$00
+
+Subanimation17: ; 7aaf2 (1e:6af2)
+ db $44
+ db $36,$54,$00
+ db $36,$55,$00
+ db $37,$56,$00
+ db $37,$57,$00
+
+Subanimation18: ; 7aaff (1e:6aff)
+ db $a4
+ db $36,$54,$00
+ db $36,$55,$00
+ db $37,$56,$00
+ db $37,$57,$00
+
+Subanimation40: ; 7ab0c (1e:6b0c)
+ db $46
+ db $17,$54,$00
+ db $17,$55,$00
+ db $17,$0e,$00
+ db $17,$56,$00
+ db $17,$57,$00
+ db $17,$13,$00
+
+Subanimation19: ; 7ab1f (1e:6b1f)
+ db $8c
+ db $38,$31,$00
+ db $39,$31,$00
+ db $38,$32,$00
+ db $39,$32,$00
+ db $38,$92,$00
+ db $39,$92,$00
+ db $38,$0e,$00
+ db $39,$0e,$00
+ db $38,$0f,$00
+ db $39,$0f,$00
+ db $38,$10,$00
+ db $39,$10,$00
+
+Subanimation1a: ; 7ab44 (1e:6b44)
+ db $50
+ db $3a,$08,$00
+ db $3b,$08,$00
+ db $3c,$08,$00
+ db $3d,$08,$00
+ db $3e,$08,$00
+ db $3f,$08,$00
+ db $3e,$08,$00
+ db $3f,$08,$00
+ db $3a,$0b,$00
+ db $3b,$0b,$00
+ db $3c,$0b,$00
+ db $3d,$0b,$00
+ db $3e,$0b,$00
+ db $3f,$0b,$00
+ db $3e,$0b,$00
+ db $3f,$0b,$00
+
+Subanimation1b: ; 7ab75 (1e:6b75)
+ db $84
+ db $40,$31,$00
+ db $40,$32,$00
+ db $40,$92,$00
+ db $40,$15,$00
+
+Subanimation1c: ; 7ab82 (1e:6b82)
+ db $43
+ db $41,$58,$00
+ db $41,$59,$00
+ db $41,$21,$00
+
+Subanimation1d: ; 7ab8c (1e:6b8c)
+ db $af
+ db $24,$9a,$00
+ db $23,$1b,$02
+ db $24,$22,$00
+ db $23,$16,$02
+ db $23,$1d,$02
+ db $24,$98,$00
+ db $25,$2c,$04
+ db $25,$2a,$04
+ db $25,$99,$04
+ db $25,$62,$04
+ db $25,$99,$04
+ db $25,$62,$04
+ db $25,$99,$04
+ db $25,$62,$04
+ db $25,$99,$03
+
+Subanimation1e: ; 7abba (1e:6bba)
+ db $01
+ db $25,$75,$00
+
+Subanimation20: ; 7abbe (1e:6bbe)
+ db $42
+ db $42,$07,$00
+ db $43,$07,$00
+
+Subanimation21: ; 7abc5 (1e:6bc5)
+ db $43
+ db $44,$00,$00
+ db $45,$08,$00
+ db $46,$10,$02
+
+Subanimation22: ; 7abcf (1e:6bcf)
+ db $8b
+ db $47,$10,$00
+ db $47,$56,$00
+ db $47,$07,$00
+ db $47,$aa,$00
+ db $47,$ab,$00
+ db $47,$ac,$00
+ db $47,$ad,$00
+ db $47,$ae,$00
+ db $47,$af,$00
+ db $47,$89,$00
+ db $47,$b0,$00
+
+Subanimation2d: ; 7abf1 (1e:6bf1)
+ db $66
+ db $44,$64,$00
+ db $45,$65,$00
+ db $46,$66,$00
+ db $47,$66,$00
+ db $47,$66,$00
+ db $47,$66,$00
+
+Subanimation39: ; 7ac04 (1e:6c04)
+ db $61
+ db $47,$67,$00
+
+Subanimation4e: ; 7ac08 (1e:6c08)
+ db $41
+ db $71,$0f,$03
+
+Subanimation4f: ; 7ac0c (1e:6c0c)
+ db $47
+ db $71,$0f,$00
+ db $71,$08,$00
+ db $71,$01,$00
+ db $71,$95,$00
+ db $72,$95,$00
+ db $73,$95,$00
+ db $74,$95,$00
+
+Subanimation50: ; 7ac22 (1e:6c22)
+ db $48
+ db $74,$95,$00
+ db $73,$95,$00
+ db $72,$95,$00
+ db $71,$95,$00
+ db $71,$01,$00
+ db $71,$08,$00
+ db $71,$0f,$00
+ db $71,$16,$00
+
+Subanimation29: ; 7ac3b (1e:6c3b)
+ db $5d
+ db $48,$0f,$00
+ db $4a,$68,$03
+ db $4b,$2a,$03
+ db $49,$0f,$00
+ db $4a,$68,$03
+ db $4b,$2a,$00
+ db $4c,$6a,$03
+ db $4d,$69,$03
+ db $49,$6b,$00
+ db $4c,$6a,$03
+ db $4d,$69,$00
+ db $4a,$68,$03
+ db $4b,$2a,$03
+ db $49,$6c,$00
+ db $4a,$68,$03
+ db $4b,$2a,$00
+ db $4c,$6a,$03
+ db $4d,$69,$03
+ db $49,$6d,$00
+ db $4c,$6a,$03
+ db $4d,$2a,$00
+ db $4a,$68,$03
+ db $4b,$2a,$03
+ db $49,$0f,$00
+ db $4a,$68,$03
+ db $4b,$2a,$00
+ db $4c,$6a,$03
+ db $4d,$2a,$03
+ db $49,$6b,$00
+
+Subanimation2a: ; 7ac93 (1e:6c93)
+ db $44
+ db $4e,$2b,$00
+ db $4f,$2b,$00
+ db $50,$2b,$00
+ db $50,$2b,$00
+
+Subanimation23: ; 7aca0 (1e:6ca0)
+ db $42
+ db $51,$2d,$00
+ db $51,$6e,$00
+
+Subanimation24: ; 7aca7 (1e:6ca7)
+ db $a2
+ db $51,$2d,$00
+ db $51,$6e,$00
+
+Subanimation25: ; 7acae (1e:6cae)
+ db $62
+ db $52,$71,$00
+ db $52,$72,$00
+
+Subanimation26: ; 7acb5 (1e:6cb5)
+ db $02
+ db $52,$01,$00
+ db $52,$2c,$00
+
+Subanimation3a: ; 7acbc (1e:6cbc)
+ db $63
+ db $53,$71,$00
+ db $53,$7f,$00
+ db $53,$81,$00
+
+Subanimation3b: ; 7acc6 (1e:6cc6)
+ db $03
+ db $53,$01,$00
+ db $53,$15,$00
+ db $53,$2c,$00
+
+Subanimation27: ; 7acd0 (1e:6cd0)
+ db $a2
+ db $54,$01,$00
+ db $54,$2c,$00
+
+Subanimation28: ; 7acd7 (1e:6cd7)
+ db $23
+ db $55,$73,$03
+ db $56,$73,$03
+ db $57,$73,$00
+
+Subanimation32: ; 7ace1 (1e:6ce1)
+ db $63
+ db $47,$74,$00
+ db $47,$43,$00
+ db $47,$75,$00
+
+Subanimation33: ; 7aceb (1e:6ceb)
+ db $26
+ db $58,$76,$00
+ db $34,$76,$00
+ db $58,$76,$00
+ db $34,$76,$00
+ db $58,$76,$00
+ db $34,$76,$00
+
+Subanimation3c: ; 7acfe (1e:6cfe)
+ db $67
+ db $59,$79,$03
+ db $59,$7b,$03
+ db $59,$77,$03
+ db $59,$7a,$03
+ db $59,$78,$03
+ db $59,$7c,$03
+ db $59,$76,$00
+
+Subanimation3d: ; 7ad14 (1e:6d14)
+ db $08
+ db $3a,$4d,$00
+ db $3b,$4d,$00
+ db $3c,$4d,$00
+ db $3d,$4d,$00
+ db $3e,$4d,$00
+ db $3f,$4d,$00
+ db $3e,$4d,$00
+ db $3f,$4d,$00
+
+Subanimation34: ; 7ad2d (1e:6d2d)
+ db $35
+ db $48,$7d,$00
+ db $49,$7d,$00
+ db $5a,$7d,$00
+ db $48,$30,$00
+ db $49,$30,$00
+ db $5a,$30,$00
+ db $48,$7e,$00
+ db $49,$7e,$00
+ db $5a,$7e,$00
+ db $48,$7f,$00
+ db $49,$7f,$00
+ db $5a,$7f,$00
+ db $48,$80,$00
+ db $49,$80,$00
+ db $5a,$80,$00
+ db $48,$81,$00
+ db $49,$81,$00
+ db $5a,$81,$00
+ db $48,$82,$00
+ db $49,$82,$00
+ db $5a,$82,$00
+
+Subanimation35: ; 7ad6d (1e:6d6d)
+ db $24
+ db $5b,$83,$03
+ db $5c,$84,$03
+ db $5d,$85,$03
+ db $5e,$09,$00
+
+Subanimation36: ; 7ad7a (1e:6d7a)
+ db $48
+ db $5f,$2a,$00
+ db $5f,$00,$00
+ db $60,$2a,$00
+ db $60,$00,$00
+ db $61,$2a,$00
+ db $61,$00,$00
+ db $62,$2a,$00
+ db $62,$00,$00
+
+Subanimation37: ; 7ad93 (1e:6d93)
+ db $2a
+ db $63,$89,$00
+ db $64,$75,$00
+ db $63,$76,$00
+ db $65,$0d,$00
+ db $65,$86,$00
+ db $65,$12,$00
+ db $65,$87,$00
+ db $65,$17,$00
+ db $65,$88,$00
+ db $65,$1a,$00
+
+Subanimation38: ; 7adb2 (1e:6db2)
+ db $50
+ db $66,$8a,$00
+ db $66,$33,$00
+ db $66,$2e,$00
+ db $67,$24,$03
+ db $66,$01,$04
+ db $66,$10,$04
+ db $66,$1d,$04
+ db $67,$28,$03
+ db $66,$2a,$04
+ db $66,$0e,$04
+ db $66,$1b,$04
+ db $67,$26,$03
+ db $66,$03,$04
+ db $66,$12,$04
+ db $66,$1e,$04
+ db $67,$29,$00
+
+Subanimation3e: ; 7ade3 (1e:6de3)
+ db $92
+ db $02,$31,$00
+ db $34,$31,$00
+ db $02,$31,$00
+ db $02,$32,$00
+ db $34,$32,$00
+ db $02,$32,$00
+ db $02,$92,$00
+ db $34,$92,$00
+ db $02,$92,$00
+ db $02,$0e,$00
+ db $34,$0e,$00
+ db $02,$0e,$00
+ db $02,$0f,$00
+ db $34,$0f,$00
+ db $02,$0f,$00
+ db $02,$10,$00
+ db $34,$10,$00
+ db $02,$10,$00
+
+Subanimation3f: ; 7ae1a (1e:6e1a)
+ db $72
+ db $68,$4b,$00
+ db $68,$8c,$00
+ db $68,$20,$00
+ db $68,$1c,$00
+ db $68,$19,$00
+ db $68,$14,$00
+ db $68,$76,$00
+ db $68,$8d,$00
+ db $68,$15,$00
+ db $68,$10,$00
+ db $68,$0c,$00
+ db $68,$06,$00
+ db $68,$8e,$00
+ db $68,$8f,$00
+ db $68,$90,$00
+ db $68,$26,$00
+ db $68,$23,$00
+ db $68,$1f,$00
+
+Subanimation44: ; 7ae51 (1e:6e51)
+ db $2c
+ db $69,$4b,$00
+ db $69,$8c,$00
+ db $69,$20,$00
+ db $69,$1c,$00
+ db $69,$19,$00
+ db $69,$14,$00
+ db $69,$76,$00
+ db $69,$8d,$00
+ db $69,$15,$00
+ db $69,$10,$00
+ db $69,$0c,$00
+ db $69,$06,$00
+
+Subanimation43: ; 7ae76 (1e:6e76)
+ db $a3
+ db $6a,$07,$00
+ db $6b,$0f,$00
+ db $6c,$17,$00
+
+Subanimation45: ; 7ae80 (1e:6e80)
+ db $24
+ db $6d,$8b,$00
+ db $6d,$84,$00
+ db $6d,$63,$00
+ db $6d,$8c,$00
+
+Subanimation46: ; 7ae8d (1e:6e8d)
+ db $26
+ db $6d,$8b,$00
+ db $6d,$84,$00
+ db $6d,$63,$00
+ db $6d,$8c,$00
+ db $6d,$0a,$00
+ db $6d,$89,$00
+
+Subanimation47: ; 7aea0 (1e:6ea0)
+ db $23
+ db $06,$82,$00
+ db $07,$82,$00
+ db $08,$96,$00
+
+Subanimation48: ; 7aeaa (1e:6eaa)
+ db $06
+ db $03,$41,$04
+ db $03,$48,$04
+ db $04,$48,$04
+ db $03,$48,$04
+ db $05,$48,$04
+ db $03,$48,$03
+
+Subanimation49: ; 7aebd (1e:6ebd)
+ db $04
+ db $04,$48,$04
+ db $03,$48,$04
+ db $05,$48,$04
+ db $03,$48,$03
+
+Subanimation4a: ; 7aeca (1e:6eca)
+ db $01
+ db $04,$84,$03
+
+Subanimation4b: ; 7aece (1e:6ece)
+ db $03
+ db $06,$72,$00
+ db $07,$72,$00
+ db $08,$72,$00
+
+Subanimation4c: ; 7aed8 (1e:6ed8)
+ db $68
+ db $6f,$30,$00
+ db $6e,$30,$00
+ db $70,$30,$00
+ db $6e,$30,$00
+ db $6f,$30,$00
+ db $6e,$30,$00
+ db $70,$30,$00
+ db $6e,$30,$00
+
+Subanimation4d: ; 7aef1 (1e:6ef1)
+ db $26
+ db $32,$4b,$00
+ db $33,$4f,$00
+ db $32,$20,$00
+ db $33,$16,$00
+ db $32,$19,$00
+ db $33,$0d,$00
+
+Subanimation51: ; 7af04 (1e:6f04)
+ db $a6
+ db $76,$1b,$00
+ db $34,$1b,$00
+ db $76,$1b,$00
+ db $34,$1b,$00
+ db $76,$1b,$00
+ db $34,$1b,$00
+
+Subanimation52: ; 7af17 (1e:6f17)
+ db $47
+ db $77,$25,$00
+ db $77,$9b,$00
+ db $77,$1a,$00
+ db $77,$9c,$00
+ db $77,$2f,$00
+ db $77,$50,$00
+ db $77,$8c,$00
+
+Subanimation53: ; 7af2d (1e:6f2d)
+ db $0c
+ db $78,$30,$00
+ db $78,$a2,$00
+ db $78,$93,$00
+ db $78,$61,$00
+ db $78,$73,$00
+ db $78,$a7,$00
+ db $78,$33,$00
+ db $78,$a8,$00
+ db $78,$0e,$00
+ db $78,$a9,$00
+ db $78,$34,$00
+ db $01,$9e,$00
+
+Subanimation54: ; 7af52 (1e:6f52)
+ db $0b
+ db $79,$30,$00
+ db $79,$a2,$00
+ db $79,$93,$00
+ db $79,$61,$00
+ db $79,$73,$00
+ db $79,$a7,$00
+ db $79,$33,$00
+ db $79,$a8,$00
+ db $79,$0e,$00
+ db $79,$a9,$00
+ db $79,$34,$00
+
+FrameBlockPointers: ; 7af74 (1e:6f74)
+ dw FrameBlock00
+ dw FrameBlock01
+ dw FrameBlock02
+ dw FrameBlock03
+ dw FrameBlock04
+ dw FrameBlock05
+ dw FrameBlock06
+ dw FrameBlock07
+ dw FrameBlock08
+ dw FrameBlock09
+ dw FrameBlock0a
+ dw FrameBlock0b
+ dw FrameBlock0c
+ dw FrameBlock0d
+ dw FrameBlock0e
+ dw FrameBlock0f
+ dw FrameBlock10
+ dw FrameBlock11
+ dw FrameBlock12
+ dw FrameBlock13
+ dw FrameBlock14
+ dw FrameBlock15
+ dw FrameBlock16
+ dw FrameBlock17
+ dw FrameBlock18
+ dw FrameBlock19
+ dw FrameBlock1a
+ dw FrameBlock1b
+ dw FrameBlock1c
+ dw FrameBlock1d
+ dw FrameBlock1e
+ dw FrameBlock1f
+ dw FrameBlock20
+ dw FrameBlock21
+ dw FrameBlock22
+ dw FrameBlock23
+ dw FrameBlock24
+ dw FrameBlock25
+ dw FrameBlock26
+ dw FrameBlock27
+ dw FrameBlock28
+ dw FrameBlock29
+ dw FrameBlock2a
+ dw FrameBlock2b
+ dw FrameBlock2c
+ dw FrameBlock2d
+ dw FrameBlock2e
+ dw FrameBlock2f
+ dw FrameBlock30
+ dw FrameBlock31
+ dw FrameBlock32
+ dw FrameBlock33
+ dw FrameBlock34
+ dw FrameBlock35
+ dw FrameBlock36
+ dw FrameBlock37
+ dw FrameBlock38
+ dw FrameBlock39
+ dw FrameBlock3a
+ dw FrameBlock3b
+ dw FrameBlock3c
+ dw FrameBlock3d
+ dw FrameBlock3e
+ dw FrameBlock3f
+ dw FrameBlock40
+ dw FrameBlock41
+ dw FrameBlock42
+ dw FrameBlock43
+ dw FrameBlock44
+ dw FrameBlock45
+ dw FrameBlock46
+ dw FrameBlock47
+ dw SmallBlackCircleFrameBlock
+ dw LargeBlockCircleFrameBlock
+ dw FrameBlock4a
+ dw FrameBlock4b
+ dw FrameBlock4c
+ dw FrameBlock4d
+ dw FrameBlock4e
+ dw FrameBlock4f
+ dw FrameBlock50
+ dw FrameBlock51
+ dw FrameBlock52
+ dw FrameBlock53
+ dw FrameBlock54
+ dw FrameBlock55
+ dw FrameBlock56
+ dw FrameBlock57
+ dw FrameBlock58
+ dw FrameBlock59
+ dw FrameBlock5a
+ dw FrameBlock5b
+ dw FrameBlock5c
+ dw FrameBlock5d
+ dw FrameBlock5e
+ dw FrameBlock5f
+ dw FrameBlock60
+ dw FrameBlock61
+ dw FrameBlock62
+ dw FrameBlock63
+ dw FrameBlock64
+ dw FrameBlock65
+ dw FrameBlock66
+ dw FrameBlock67
+ dw FrameBlock68
+ dw FrameBlock69
+ dw FrameBlock6a
+ dw FrameBlock6b
+ dw FrameBlock6c
+ dw FrameBlock6d
+ dw FrameBlock6e
+ dw FrameBlock6f
+ dw FrameBlock70
+ dw FrameBlock71
+ dw FrameBlock72
+ dw FrameBlock73
+ dw FrameBlock74
+ dw FrameBlock75
+ dw FrameBlock76
+ dw FrameBlock77
+ dw FrameBlock78
+ dw FrameBlock79
+
+; FrameBlock format is as follows:
+; first byte = number of tiles in FrameBlock
+;
+; Next, each group of 4 bytes describes a tile in the FrameBlock
+; first byte = y offset
+; second byte = x offset
+; third byte = tile id (it's actually tile id - $31)
+; fourth byte = tile properties (xflip/yflip/etc.)
+FrameBlock01: ; 7b068 (1e:7068)
+ db $09
+ db $00,$00,$2c,$00
+ db $00,$08,$2d,$00
+ db $00,$10,$2c,$20
+ db $08,$00,$3c,$00
+ db $08,$08,$3d,$00
+ db $08,$10,$3c,$20
+ db $10,$00,$2c,$40
+ db $10,$08,$2d,$40
+ db $10,$10,$2c,$60
+
+FrameBlock02: ; 7b08d (1e:708d)
+ db $10
+ db $00,$00,$20,$00
+ db $00,$08,$21,$00
+ db $00,$10,$21,$20
+ db $00,$18,$20,$20
+ db $08,$00,$30,$00
+ db $08,$08,$31,$00
+ db $08,$10,$31,$20
+ db $08,$18,$30,$20
+ db $10,$00,$30,$40
+ db $10,$08,$31,$40
+ db $10,$10,$31,$60
+ db $10,$18,$30,$60
+ db $18,$00,$20,$40
+ db $18,$08,$21,$40
+ db $18,$10,$21,$60
+ db $18,$18,$20,$60
+
+FrameBlock03: ; 7b0ce (1e:70ce)
+ db $04
+ db $00,$00,$02,$00
+ db $00,$08,$02,$20
+ db $08,$00,$12,$00
+ db $08,$08,$12,$20
+
+FrameBlock04: ; 7b0df (1e:70df)
+ db $04
+ db $00,$00,$06,$00
+ db $00,$08,$07,$00
+ db $08,$00,$16,$00
+ db $08,$08,$17,$00
+
+FrameBlock05: ; 7b0f0 (1e:70f0)
+ db $04
+ db $00,$00,$07,$20
+ db $00,$08,$06,$20
+ db $08,$00,$17,$20
+ db $08,$08,$16,$20
+
+FrameBlock06: ; 7b101 (1e:7101)
+ db $0c
+ db $00,$08,$23,$00
+ db $08,$00,$32,$00
+ db $08,$08,$33,$00
+ db $00,$10,$23,$20
+ db $08,$10,$33,$20
+ db $08,$18,$32,$20
+ db $10,$00,$32,$40
+ db $10,$08,$33,$40
+ db $18,$08,$23,$40
+ db $10,$10,$33,$60
+ db $10,$18,$32,$60
+ db $18,$10,$23,$60
+
+FrameBlock07: ; 7b132 (1e:7132)
+ db $10
+ db $00,$00,$20,$00
+ db $00,$08,$21,$00
+ db $08,$00,$30,$00
+ db $08,$08,$31,$00
+ db $00,$10,$21,$20
+ db $00,$18,$20,$20
+ db $08,$10,$31,$20
+ db $08,$18,$30,$20
+ db $10,$00,$30,$40
+ db $10,$08,$31,$40
+ db $18,$00,$20,$40
+ db $18,$08,$21,$40
+ db $10,$10,$31,$60
+ db $10,$18,$30,$60
+ db $18,$10,$21,$60
+ db $18,$18,$20,$60
+
+FrameBlock08: ; 7b173 (1e:7173)
+ db $10
+ db $00,$00,$20,$00
+ db $00,$08,$21,$00
+ db $08,$00,$30,$00
+ db $08,$08,$31,$00
+ db $00,$18,$21,$20
+ db $00,$20,$20,$20
+ db $08,$18,$31,$20
+ db $08,$20,$30,$20
+ db $18,$00,$30,$40
+ db $18,$08,$31,$40
+ db $20,$00,$20,$40
+ db $20,$08,$21,$40
+ db $18,$18,$31,$60
+ db $18,$20,$30,$60
+ db $20,$18,$21,$60
+ db $20,$20,$20,$60
+
+FrameBlock09: ; 7b1b4 (1e:71b4)
+ db $0c
+ db $00,$00,$24,$00
+ db $00,$08,$25,$00
+ db $08,$00,$34,$00
+ db $00,$18,$25,$20
+ db $00,$20,$24,$20
+ db $08,$20,$34,$20
+ db $18,$00,$34,$40
+ db $20,$00,$24,$40
+ db $20,$08,$25,$40
+ db $18,$20,$34,$60
+ db $20,$18,$25,$60
+ db $20,$20,$24,$60
+
+FrameBlock0a: ; 7b1e5 (1e:71e5)
+ db $0c
+ db $00,$00,$24,$00
+ db $00,$08,$25,$00
+ db $08,$00,$34,$00
+ db $00,$20,$25,$20
+ db $00,$28,$24,$20
+ db $08,$28,$34,$20
+ db $20,$00,$34,$40
+ db $28,$00,$24,$40
+ db $28,$08,$25,$40
+ db $20,$28,$34,$60
+ db $28,$20,$25,$60
+ db $28,$28,$24,$60
+
+FrameBlock0b: ; 7b216 (1e:7216)
+ db $04
+ db $00,$00,$05,$00
+ db $00,$08,$05,$20
+ db $08,$00,$15,$00
+ db $08,$08,$15,$20
+
+FrameBlock0c: ; 7b227 (1e:7227)
+ db $04
+ db $00,$00,$04,$00
+ db $00,$08,$04,$20
+ db $08,$00,$14,$00
+ db $08,$08,$14,$20
+
+FrameBlock0d: ; 7b238 (1e:7238)
+ db $08
+ db $00,$00,$0c,$00
+ db $00,$08,$0d,$00
+ db $08,$00,$1c,$00
+ db $08,$08,$1d,$00
+ db $10,$00,$1d,$60
+ db $10,$08,$1c,$60
+ db $18,$00,$0d,$60
+ db $18,$08,$0c,$60
+
+FrameBlock0e: ; 7b259 (1e:7259)
+ db $04
+ db $20,$00,$0c,$00
+ db $20,$08,$0d,$00
+ db $28,$00,$1c,$00
+ db $28,$08,$1d,$00
+
+FrameBlock0f: ; 7b26a (1e:726a)
+ db $04
+ db $30,$00,$1d,$60
+ db $30,$08,$1c,$60
+ db $38,$00,$0d,$60
+ db $38,$08,$0c,$60
+
+FrameBlock10: ; 7b27b (1e:727b)
+ db $08
+ db $00,$00,$0e,$00
+ db $00,$08,$0f,$00
+ db $08,$00,$1e,$00
+ db $08,$08,$1f,$00
+ db $00,$10,$0f,$20
+ db $00,$18,$0e,$20
+ db $08,$10,$1f,$20
+ db $08,$18,$1e,$20
+
+FrameBlock11: ; 7b29c (1e:729c)
+ db $08
+ db $00,$00,$0e,$00
+ db $00,$08,$0f,$00
+ db $08,$00,$1e,$00
+ db $08,$08,$1f,$00
+ db $00,$20,$0f,$20
+ db $00,$28,$0e,$20
+ db $08,$20,$1f,$20
+ db $08,$28,$1e,$20
+
+FrameBlock12: ; 7b2bd (1e:72bd)
+ db $03
+ db $00,$00,$37,$00
+ db $08,$10,$37,$00
+ db $00,$20,$37,$00
+
+FrameBlock13: ; 7b2ca (1e:72ca)
+ db $04
+ db $00,$00,$36,$00
+ db $00,$08,$36,$20
+ db $08,$00,$36,$40
+ db $08,$08,$36,$60
+
+FrameBlock14: ; 7b2db (1e:72db)
+ db $08
+ db $00,$10,$28,$00
+ db $00,$18,$28,$20
+ db $08,$10,$38,$00
+ db $08,$18,$38,$20
+ db $00,$20,$36,$00
+ db $00,$28,$36,$20
+ db $08,$20,$36,$40
+ db $08,$28,$36,$60
+
+FrameBlock15: ; 7b2fc (1e:72fc)
+ db $0c
+ db $00,$00,$28,$00
+ db $00,$08,$28,$20
+ db $08,$00,$38,$00
+ db $08,$08,$38,$20
+ db $00,$10,$29,$00
+ db $00,$18,$29,$20
+ db $08,$10,$39,$00
+ db $08,$18,$39,$20
+ db $00,$20,$28,$00
+ db $00,$28,$28,$20
+ db $08,$20,$38,$00
+ db $08,$28,$38,$20
+
+FrameBlock16: ; 7b32d (1e:732d)
+ db $08
+ db $00,$00,$29,$00
+ db $00,$08,$29,$20
+ db $08,$00,$39,$00
+ db $08,$08,$39,$20
+ db $00,$20,$29,$00
+ db $00,$28,$29,$20
+ db $08,$20,$39,$00
+ db $08,$28,$39,$20
+
+FrameBlock17: ; 7b34e (1e:734e)
+ db $04
+ db $00,$00,$08,$00
+ db $00,$08,$09,$00
+ db $08,$00,$18,$00
+ db $08,$08,$19,$00
+
+FrameBlock18: ; 7b35f (1e:735f)
+ db $01
+ db $18,$00,$45,$60
+
+FrameBlock19: ; 7b364 (1e:7364)
+ db $02
+ db $18,$08,$45,$00
+ db $10,$08,$46,$60
+
+FrameBlock1a: ; 7b36d (1e:736d)
+ db $02
+ db $10,$10,$45,$60
+ db $18,$10,$46,$00
+
+FrameBlock1b: ; 7b376 (1e:7376)
+ db $02
+ db $10,$18,$45,$00
+ db $08,$18,$46,$60
+
+FrameBlock1c: ; 7b37f (1e:737f)
+ db $02
+ db $08,$20,$45,$60
+ db $10,$20,$46,$00
+
+FrameBlock1d: ; 7b388 (1e:7388)
+ db $02
+ db $08,$28,$45,$00
+ db $00,$28,$46,$60
+
+FrameBlock1e: ; 7b391 (1e:7391)
+ db $02
+ db $00,$30,$45,$60
+ db $08,$30,$46,$00
+
+FrameBlock75: ; 7b39a (1e:739a)
+ db $04
+ db $00,$00,$43,$00
+ db $00,$08,$43,$20
+ db $08,$00,$22,$00
+ db $08,$08,$43,$60
+
+FrameBlock1f: ; 7b3ab (1e:73ab)
+ db $02
+ db $00,$00,$03,$00
+ db $00,$30,$03,$20
+
+FrameBlock20: ; 7b3b4 (1e:73b4)
+ db $06
+ db $00,$00,$03,$00
+ db $00,$30,$03,$20
+ db $08,$08,$03,$00
+ db $08,$28,$03,$20
+ db $08,$00,$13,$00
+ db $08,$30,$13,$20
+
+FrameBlock21: ; 7b3cd (1e:73cd)
+ db $0c
+ db $00,$00,$03,$00
+ db $00,$30,$03,$20
+ db $08,$08,$03,$00
+ db $08,$28,$03,$20
+ db $08,$00,$13,$00
+ db $08,$30,$13,$20
+ db $10,$10,$03,$00
+ db $10,$20,$03,$20
+ db $10,$08,$13,$00
+ db $10,$28,$13,$20
+ db $10,$00,$03,$00
+ db $10,$30,$03,$20
+
+FrameBlock22: ; 7b3fe (1e:73fe)
+ db $13
+ db $00,$00,$03,$00
+ db $08,$00,$13,$00
+ db $10,$00,$03,$00
+ db $18,$00,$13,$00
+ db $08,$08,$03,$00
+ db $10,$08,$13,$00
+ db $18,$08,$03,$00
+ db $10,$10,$03,$00
+ db $18,$10,$13,$00
+ db $18,$18,$03,$00
+ db $10,$20,$03,$20
+ db $18,$20,$13,$20
+ db $08,$28,$03,$20
+ db $10,$28,$13,$20
+ db $18,$28,$03,$20
+ db $00,$30,$03,$20
+ db $08,$30,$13,$20
+ db $10,$30,$03,$20
+ db $18,$30,$13,$20
+
+FrameBlock23: ; 7b44b (1e:744b)
+ db $04
+ db $00,$00,$0a,$00
+ db $00,$08,$0b,$00
+ db $08,$00,$1a,$00
+ db $08,$08,$1b,$00
+
+FrameBlock24: ; 7b45c (1e:745c)
+ db $02
+ db $08,$00,$0a,$00
+ db $08,$08,$0b,$00
+
+FrameBlock25: ; 7b465 (1e:7465)
+ db $0c
+ db $10,$00,$0a,$00
+ db $10,$08,$0b,$00
+ db $18,$00,$1a,$00
+ db $18,$08,$1b,$00
+ db $00,$10,$0a,$00
+ db $00,$18,$0b,$00
+ db $08,$10,$1a,$00
+ db $08,$18,$1b,$00
+ db $08,$20,$0a,$00
+ db $08,$28,$0b,$00
+ db $10,$20,$1a,$00
+ db $10,$28,$1b,$00
+
+FrameBlock26: ; 7b496 (1e:7496)
+ db $04
+ db $00,$10,$44,$00
+ db $00,$18,$44,$20
+ db $08,$10,$44,$40
+ db $08,$18,$44,$60
+
+FrameBlock27: ; 7b4a7 (1e:74a7)
+ db $05
+ db $08,$08,$44,$00
+ db $08,$10,$44,$20
+ db $10,$08,$44,$40
+ db $10,$10,$44,$60
+ db $00,$18,$47,$00
+
+FrameBlock28: ; 7b4bc (1e:74bc)
+ db $06
+ db $10,$00,$44,$00
+ db $10,$08,$44,$20
+ db $18,$00,$44,$40
+ db $18,$08,$44,$60
+ db $08,$10,$47,$00
+ db $02,$16,$47,$00
+
+FrameBlock29: ; 7b4d5 (1e:74d5)
+ db $04
+ db $18,$00,$47,$00
+ db $12,$06,$47,$00
+ db $0c,$0c,$47,$00
+ db $06,$12,$47,$00
+
+FrameBlock2a: ; 7b4e6 (1e:74e6)
+ db $04
+ db $00,$00,$44,$00
+ db $00,$08,$44,$20
+ db $08,$00,$44,$40
+ db $08,$08,$44,$60
+
+FrameBlock2b: ; 7b4f7 (1e:74f7)
+ db $02
+ db $06,$02,$47,$00
+ db $00,$08,$47,$00
+
+FrameBlock2c: ; 7b500 (1e:7500)
+ db $01
+ db $a0,$00,$4d,$00
+
+FrameBlock2d: ; 7b505 (1e:7505)
+ db $08
+ db $00,$00,$26,$00
+ db $00,$08,$27,$00
+ db $08,$00,$36,$00
+ db $08,$08,$37,$00
+ db $10,$00,$28,$00
+ db $10,$08,$29,$00
+ db $18,$00,$38,$00
+ db $18,$08,$39,$00
+
+FrameBlock2e: ; 7b526 (1e:7526)
+ db $08
+ db $00,$00,$27,$20
+ db $00,$08,$26,$20
+ db $08,$00,$37,$20
+ db $08,$08,$36,$20
+ db $10,$00,$29,$20
+ db $10,$08,$28,$20
+ db $18,$00,$39,$20
+ db $18,$08,$38,$20
+
+FrameBlock2f: ; 7b547 (1e:7547)
+ db $04
+ db $00,$00,$0c,$00
+ db $00,$08,$0d,$00
+ db $08,$00,$0c,$40
+ db $08,$08,$0d,$40
+
+FrameBlock30: ; 7b558 (1e:7558)
+ db $04
+ db $00,$00,$44,$00
+ db $00,$08,$44,$20
+ db $08,$00,$44,$40
+ db $08,$08,$44,$60
+
+FrameBlock31: ; 7b569 (1e:7569)
+ db $01
+ db $00,$00,$45,$00
+
+FrameBlock32: ; 7b56e (1e:756e)
+ db $07
+ db $00,$00,$4d,$00
+ db $00,$08,$2f,$00
+ db $00,$10,$4d,$20
+ db $08,$00,$4e,$00
+ db $08,$08,$07,$00
+ db $08,$10,$4e,$20
+ db $10,$08,$3f,$00
+
+FrameBlock33: ; 7b58b (1e:758b)
+ db $07
+ db $00,$08,$3f,$40
+ db $08,$00,$4e,$40
+ db $08,$08,$07,$40
+ db $08,$10,$4e,$60
+ db $10,$00,$4d,$40
+ db $10,$08,$2f,$40
+ db $10,$10,$4d,$60
+
+FrameBlock34: ; 7b5a8 (1e:75a8)
+ db $01
+ db $a0,$00,$00,$10
+
+FrameBlock35: ; 7b5ad (1e:75ad)
+ db $06
+ db $00,$00,$2a,$00
+ db $00,$08,$2b,$00
+ db $08,$00,$3a,$00
+ db $10,$00,$3a,$40
+ db $18,$00,$2a,$40
+ db $18,$08,$2b,$40
+
+FrameBlock36: ; 7b5c6 (1e:75c6)
+ db $04
+ db $00,$00,$00,$00
+ db $00,$08,$01,$00
+ db $08,$00,$10,$00
+ db $08,$08,$11,$00
+
+FrameBlock37: ; 7b5d7 (1e:75d7)
+ db $04
+ db $00,$00,$01,$a0
+ db $00,$08,$00,$a0
+ db $08,$00,$11,$a0
+ db $08,$08,$10,$a0
+
+FrameBlock38: ; 7b5e8 (1e:75e8)
+ db $04
+ db $00,$00,$0a,$00
+ db $00,$08,$0b,$00
+ db $08,$00,$1a,$00
+ db $08,$08,$1b,$00
+
+FrameBlock39: ; 7b5f9 (1e:75f9)
+ db $04
+ db $00,$00,$0b,$20
+ db $00,$08,$0a,$20
+ db $08,$00,$1b,$20
+ db $08,$08,$1a,$20
+
+FrameBlock3a: ; 7b60a (1e:760a)
+ db $04
+ db $20,$00,$05,$00
+ db $20,$08,$05,$20
+ db $28,$00,$15,$00
+ db $28,$08,$15,$20
+
+FrameBlock3b: ; 7b61b (1e:761b)
+ db $05
+ db $18,$00,$04,$00
+ db $18,$08,$04,$20
+ db $20,$00,$14,$00
+ db $20,$08,$14,$20
+ db $28,$04,$41,$00
+
+FrameBlock3c: ; 7b630 (1e:7630)
+ db $06
+ db $10,$00,$05,$00
+ db $10,$08,$05,$20
+ db $18,$00,$15,$00
+ db $18,$08,$15,$20
+ db $20,$04,$42,$00
+ db $28,$04,$42,$00
+
+FrameBlock3d: ; 7b649 (1e:7649)
+ db $07
+ db $08,$00,$04,$00
+ db $08,$08,$04,$20
+ db $10,$00,$14,$00
+ db $10,$08,$14,$20
+ db $18,$04,$41,$00
+ db $20,$04,$41,$00
+ db $28,$04,$41,$00
+
+FrameBlock3e: ; 7b666 (1e:7666)
+ db $08
+ db $00,$00,$05,$00
+ db $00,$08,$05,$20
+ db $08,$00,$15,$00
+ db $08,$08,$15,$20
+ db $10,$04,$42,$00
+ db $18,$04,$42,$00
+ db $20,$04,$42,$00
+ db $28,$04,$42,$00
+
+FrameBlock3f: ; 7b687 (1e:7687)
+ db $08
+ db $00,$00,$04,$00
+ db $00,$08,$04,$20
+ db $08,$00,$14,$00
+ db $08,$08,$14,$20
+ db $10,$04,$41,$00
+ db $18,$04,$41,$00
+ db $20,$04,$41,$00
+ db $28,$04,$41,$00
+
+FrameBlock40: ; 7b6a8 (1e:76a8)
+ db $03
+ db $00,$00,$3d,$00
+ db $00,$08,$3d,$00
+ db $08,$08,$3d,$00
+
+FrameBlock41: ; 7b6b5 (1e:76b5)
+ db $04
+ db $00,$00,$06,$00
+ db $00,$08,$06,$20
+ db $08,$00,$16,$00
+ db $08,$08,$17,$00
+
+FrameBlock42: ; 7b6c6 (1e:76c6)
+ db $0b
+ db $00,$10,$42,$00
+ db $08,$00,$42,$00
+ db $08,$08,$42,$00
+ db $08,$10,$42,$00
+ db $08,$18,$42,$00
+ db $08,$20,$42,$00
+ db $10,$10,$42,$00
+ db $18,$08,$42,$00
+ db $18,$18,$42,$00
+ db $20,$00,$42,$00
+ db $20,$20,$42,$00
+
+FrameBlock43: ; 7b6f3 (1e:76f3)
+ db $0b
+ db $00,$10,$41,$00
+ db $08,$00,$41,$00
+ db $08,$08,$41,$00
+ db $08,$10,$41,$00
+ db $08,$18,$41,$00
+ db $08,$20,$41,$00
+ db $10,$10,$41,$00
+ db $18,$08,$41,$00
+ db $18,$18,$41,$00
+ db $20,$00,$41,$00
+ db $20,$20,$41,$00
+
+FrameBlock44: ; 7b720 (1e:7720)
+ db $04
+ db $00,$00,$49,$00
+ db $00,$28,$49,$00
+ db $28,$00,$49,$00
+ db $28,$28,$49,$00
+
+FrameBlock45: ; 7b731 (1e:7731)
+ db $04
+ db $00,$00,$49,$00
+ db $00,$18,$49,$00
+ db $18,$00,$49,$00
+ db $18,$18,$49,$00
+
+FrameBlock46: ; 7b742 (1e:7742)
+ db $04
+ db $00,$00,$49,$00
+ db $00,$08,$49,$00
+ db $08,$00,$49,$00
+ db $08,$08,$49,$00
+
+FrameBlock47: ; 7b753 (1e:7753)
+ db $04
+ db $00,$00,$43,$00
+ db $00,$08,$43,$20
+ db $08,$00,$43,$40
+ db $08,$08,$43,$60
+
+SmallBlackCircleFrameBlock: ; 7b764 (1e:7764)
+ db $04
+ db $08,$08,$33,$00
+ db $08,$10,$33,$20
+ db $10,$08,$33,$40
+ db $10,$10,$33,$60
+
+LargeBlockCircleFrameBlock: ; 7b775 (1e:7775)
+ db $10
+ db $00,$00,$22,$00
+ db $00,$08,$23,$00
+ db $00,$10,$23,$20
+ db $00,$18,$22,$20
+ db $08,$00,$32,$00
+ db $08,$08,$43,$00
+ db $08,$10,$43,$20
+ db $08,$18,$32,$20
+ db $10,$00,$32,$40
+ db $10,$08,$43,$40
+ db $10,$10,$43,$60
+ db $10,$18,$32,$60
+ db $18,$00,$22,$40
+ db $18,$08,$23,$40
+ db $18,$10,$23,$60
+ db $18,$18,$22,$60
+
+FrameBlock71: ; 7b7b6 (1e:77b6)
+ db $10
+ db $00,$00,$22,$00
+ db $00,$08,$3b,$00
+ db $00,$10,$23,$20
+ db $00,$18,$22,$20
+ db $08,$00,$32,$00
+ db $08,$08,$43,$00
+ db $08,$10,$43,$20
+ db $08,$18,$32,$20
+ db $10,$00,$32,$40
+ db $10,$08,$43,$40
+ db $10,$10,$43,$60
+ db $10,$18,$32,$60
+ db $18,$00,$22,$40
+ db $18,$08,$23,$40
+ db $18,$10,$23,$60
+ db $18,$18,$22,$60
+
+FrameBlock72: ; 7b7f7 (1e:77f7)
+ db $0c
+ db $00,$00,$32,$00
+ db $00,$08,$43,$00
+ db $00,$10,$43,$20
+ db $00,$18,$32,$20
+ db $08,$00,$32,$40
+ db $08,$08,$43,$40
+ db $08,$10,$43,$60
+ db $08,$18,$32,$60
+ db $10,$00,$22,$40
+ db $10,$08,$23,$40
+ db $10,$10,$23,$60
+ db $10,$18,$22,$60
+
+FrameBlock73: ; 7b828 (1e:7828)
+ db $08
+ db $00,$00,$32,$40
+ db $00,$08,$43,$40
+ db $00,$10,$43,$60
+ db $00,$18,$32,$60
+ db $08,$00,$22,$40
+ db $08,$08,$23,$40
+ db $08,$10,$23,$60
+ db $08,$18,$22,$60
+
+FrameBlock74: ; 7b849 (1e:7849)
+ db $04
+ db $00,$00,$22,$40
+ db $00,$08,$23,$40
+ db $00,$10,$23,$60
+ db $00,$18,$22,$60
+
+FrameBlock4a: ; 7b85a (1e:785a)
+ db $04
+ db $08,$18,$4c,$20
+ db $20,$08,$4b,$00
+ db $30,$20,$4c,$00
+ db $18,$30,$4b,$40
+
+FrameBlock4b: ; 7b86b (1e:786b)
+ db $04
+ db $00,$18,$4c,$00
+ db $20,$00,$4b,$40
+ db $38,$20,$4c,$20
+ db $18,$38,$4b,$00
+
+FrameBlock4c: ; 7b87c (1e:787c)
+ db $04
+ db $10,$08,$4a,$40
+ db $30,$10,$4a,$00
+ db $28,$30,$4a,$20
+ db $08,$28,$4a,$60
+
+FrameBlock4d: ; 7b88d (1e:788d)
+ db $04
+ db $08,$00,$4a,$20
+ db $38,$08,$4a,$60
+ db $30,$38,$4a,$40
+ db $00,$30,$4a,$00
+
+FrameBlock4e: ; 7b89e (1e:789e)
+ db $08
+ db $00,$30,$44,$00
+ db $00,$38,$44,$20
+ db $08,$30,$44,$40
+ db $08,$38,$44,$60
+ db $26,$0a,$44,$00
+ db $26,$12,$44,$20
+ db $2e,$0a,$44,$40
+ db $2e,$12,$44,$60
+
+FrameBlock4f: ; 7b8bf (1e:78bf)
+ db $0c
+ db $0e,$22,$44,$00
+ db $0e,$2a,$44,$20
+ db $16,$22,$44,$40
+ db $16,$2a,$44,$60
+ db $06,$32,$47,$00
+ db $00,$38,$47,$00
+ db $1a,$16,$44,$00
+ db $1a,$1e,$44,$20
+ db $22,$16,$44,$40
+ db $22,$1e,$44,$60
+ db $30,$08,$47,$00
+ db $2a,$0e,$47,$00
+
+FrameBlock50: ; 7b8f0 (1e:78f0)
+ db $08
+ db $06,$32,$47,$00
+ db $00,$38,$47,$00
+ db $12,$26,$47,$00
+ db $0c,$2c,$47,$00
+ db $1e,$1a,$47,$00
+ db $18,$20,$47,$00
+ db $2a,$0e,$47,$00
+ db $24,$14,$47,$00
+
+FrameBlock51: ; 7b911 (1e:7911)
+ db $08
+ db $00,$00,$35,$20
+ db $08,$00,$35,$40
+ db $10,$00,$35,$00
+ db $18,$00,$35,$60
+ db $00,$40,$35,$00
+ db $08,$40,$35,$60
+ db $10,$40,$35,$20
+ db $18,$40,$35,$40
+
+FrameBlock52: ; 7b932 (1e:7932)
+ db $04
+ db $00,$00,$2a,$00
+ db $00,$08,$2b,$00
+ db $08,$00,$3a,$00
+ db $08,$08,$3b,$00
+
+FrameBlock53: ; 7b943 (1e:7943)
+ db $03
+ db $00,$00,$3f,$00
+ db $00,$08,$3f,$00
+ db $08,$06,$3f,$00
+
+FrameBlock54: ; 7b950 (1e:7950)
+ db $04
+ db $00,$00,$0e,$00
+ db $00,$08,$0e,$20
+ db $08,$00,$0f,$00
+ db $08,$08,$0f,$20
+
+FrameBlock55: ; 7b961 (1e:7961)
+ db $03
+ db $10,$00,$2c,$00
+ db $10,$08,$3c,$00
+ db $10,$10,$2d,$00
+
+FrameBlock56: ; 7b96e (1e:796e)
+ db $06
+ db $10,$10,$31,$00
+ db $10,$18,$31,$00
+ db $08,$10,$2c,$00
+ db $08,$18,$3c,$00
+ db $08,$20,$2d,$00
+ db $10,$20,$2d,$00
+
+FrameBlock57: ; 7b987 (1e:7987)
+ db $09
+ db $08,$20,$31,$00
+ db $10,$20,$31,$00
+ db $08,$28,$31,$00
+ db $10,$28,$31,$00
+ db $00,$20,$2c,$00
+ db $00,$28,$3c,$00
+ db $00,$30,$2d,$00
+ db $08,$30,$2d,$00
+ db $10,$30,$2d,$00
+
+FrameBlock58: ; 7b9ac (1e:79ac)
+ db $07
+ db $00,$00,$46,$00
+ db $08,$02,$47,$00
+ db $10,$03,$48,$00
+ db $18,$04,$48,$00
+ db $20,$05,$48,$00
+ db $28,$05,$48,$00
+ db $30,$05,$48,$00
+
+FrameBlock59: ; 7b9c9 (1e:79c9)
+ db $01
+ db $00,$00,$42,$00
+
+FrameBlock5a: ; 7b9ce (1e:79ce)
+ db $0c
+ db $00,$00,$24,$00
+ db $00,$08,$25,$00
+ db $08,$00,$34,$00
+ db $00,$10,$25,$20
+ db $00,$18,$24,$20
+ db $08,$18,$34,$20
+ db $10,$00,$34,$40
+ db $18,$00,$24,$40
+ db $18,$08,$25,$40
+ db $10,$18,$34,$60
+ db $18,$10,$25,$60
+ db $18,$18,$24,$60
+
+FrameBlock5b: ; 7b9ff (1e:79ff)
+ db $04
+ db $00,$00,$43,$00
+ db $00,$08,$43,$20
+ db $08,$00,$43,$40
+ db $08,$08,$43,$60
+
+FrameBlock5c: ; 7ba10 (1e:7a10)
+ db $08
+ db $00,$00,$49,$00
+ db $02,$08,$49,$00
+ db $18,$00,$49,$00
+ db $10,$10,$49,$00
+ db $08,$00,$43,$00
+ db $08,$08,$43,$20
+ db $10,$00,$43,$40
+ db $10,$08,$43,$60
+
+FrameBlock5d: ; 7ba31 (1e:7a31)
+ db $0b
+ db $00,$00,$49,$00
+ db $18,$02,$49,$00
+ db $14,$10,$49,$00
+ db $08,$00,$43,$00
+ db $00,$08,$43,$20
+ db $10,$00,$43,$40
+ db $10,$08,$43,$60
+ db $04,$08,$43,$00
+ db $04,$10,$43,$20
+ db $0c,$08,$43,$40
+ db $0c,$10,$43,$60
+
+FrameBlock5e: ; 7ba5e (1e:7a5e)
+ db $0f
+ db $00,$08,$49,$00
+ db $08,$10,$49,$00
+ db $20,$00,$49,$00
+ db $08,$00,$43,$00
+ db $08,$08,$43,$20
+ db $10,$00,$43,$40
+ db $10,$08,$43,$60
+ db $10,$10,$43,$00
+ db $10,$18,$43,$20
+ db $18,$10,$43,$40
+ db $18,$18,$43,$60
+ db $20,$08,$43,$00
+ db $20,$10,$43,$20
+ db $28,$08,$43,$40
+ db $28,$10,$43,$60
+
+FrameBlock5f: ; 7ba9b (1e:7a9b)
+ db $04
+ db $00,$00,$49,$00
+ db $00,$10,$49,$00
+ db $00,$20,$49,$00
+ db $00,$30,$49,$00
+
+FrameBlock60: ; 7baac (1e:7aac)
+ db $08
+ db $00,$00,$49,$00
+ db $00,$10,$49,$00
+ db $00,$20,$49,$00
+ db $00,$30,$49,$00
+ db $08,$08,$49,$00
+ db $08,$18,$49,$00
+ db $08,$28,$49,$00
+ db $08,$38,$49,$00
+
+FrameBlock61: ; 7bacd (1e:7acd)
+ db $0c
+ db $00,$00,$49,$00
+ db $00,$10,$49,$00
+ db $00,$20,$49,$00
+ db $00,$30,$49,$00
+ db $08,$08,$49,$00
+ db $08,$18,$49,$00
+ db $08,$28,$49,$00
+ db $08,$38,$49,$00
+ db $10,$00,$49,$00
+ db $10,$10,$49,$00
+ db $10,$20,$49,$00
+ db $10,$30,$49,$00
+
+FrameBlock62: ; 7bafe (1e:7afe)
+ db $0f
+ db $00,$00,$49,$00
+ db $00,$10,$49,$00
+ db $00,$20,$49,$00
+ db $00,$30,$49,$00
+ db $08,$08,$49,$00
+ db $08,$18,$49,$00
+ db $08,$28,$49,$00
+ db $08,$38,$49,$00
+ db $10,$00,$49,$00
+ db $10,$10,$49,$00
+ db $10,$20,$49,$00
+ db $10,$30,$49,$00
+ db $18,$08,$49,$00
+ db $18,$18,$49,$00
+ db $18,$28,$49,$00
+ db $18,$38,$49,$00 ; unused
+
+FrameBlock63: ; 7bb3f (1e:7b3f)
+ db $06
+ db $10,$00,$26,$00
+ db $10,$08,$27,$00
+ db $08,$10,$26,$00
+ db $08,$18,$27,$00
+ db $00,$20,$26,$00
+ db $00,$28,$27,$00
+
+FrameBlock64: ; 7bb58 (1e:7b58)
+ db $06
+ db $18,$00,$27,$00
+ db $10,$08,$26,$00
+ db $10,$10,$27,$00
+ db $08,$18,$26,$00
+ db $08,$20,$27,$00
+ db $00,$28,$26,$00
+
+FrameBlock65: ; 7bb71 (1e:7b71)
+ db $06
+ db $00,$00,$1c,$00
+ db $00,$08,$1d,$00
+ db $10,$00,$1c,$00
+ db $10,$08,$1d,$00
+ db $20,$00,$1c,$00
+ db $20,$08,$1d,$00
+
+FrameBlock66: ; 7bb8a (1e:7b8a)
+ db $02
+ db $00,$00,$03,$00
+ db $08,$00,$13,$00
+
+FrameBlock67: ; 7bb93 (1e:7b93)
+ db $01
+ db $00,$00,$03,$00
+
+FrameBlock68: ; 7bb98 (1e:7b98)
+ db $04
+ db $00,$00,$03,$00
+ db $00,$08,$03,$20
+ db $08,$00,$13,$00
+ db $08,$08,$13,$20
+
+FrameBlock69: ; 7bba9 (1e:7ba9)
+ db $01
+ db $00,$00,$06,$00
+
+FrameBlock6a: ; 7bbae (1e:7bae)
+ db $08
+ db $00,$00,$2e,$00
+ db $00,$30,$2e,$20
+ db $30,$00,$2e,$40
+ db $30,$30,$2e,$60
+ db $00,$18,$2f,$00
+ db $30,$18,$2f,$40
+ db $18,$00,$3e,$00
+ db $18,$30,$3e,$20
+
+FrameBlock6b: ; 7bbcf (1e:7bcf)
+ db $08
+ db $00,$00,$2e,$00
+ db $00,$20,$2e,$20
+ db $20,$00,$2e,$40
+ db $20,$20,$2e,$60
+ db $00,$10,$2f,$00
+ db $20,$10,$2f,$40
+ db $10,$00,$3e,$00
+ db $10,$20,$3e,$20
+
+FrameBlock6c: ; 7bbf0 (1e:7bf0)
+ db $08
+ db $00,$00,$2e,$00
+ db $00,$10,$2e,$20
+ db $10,$00,$2e,$40
+ db $10,$10,$2e,$60
+ db $00,$08,$2f,$00
+ db $10,$08,$2f,$40
+ db $08,$00,$3e,$00
+ db $08,$10,$3e,$20
+
+FrameBlock6d: ; 7bc11 (1e:7c11)
+ db $02
+ db $00,$00,$1e,$00
+ db $00,$08,$1f,$00
+
+FrameBlock6e: ; 7bc1a (1e:7c1a)
+ db $04
+ db $00,$00,$48,$00
+ db $00,$08,$48,$20
+ db $08,$00,$12,$00
+ db $08,$08,$12,$20
+
+FrameBlock6f: ; 7bc2b (1e:7c2b)
+ db $04
+ db $00,$00,$4a,$00
+ db $00,$08,$07,$00
+ db $08,$00,$16,$00
+ db $08,$08,$17,$00
+
+FrameBlock70: ; 7bc3c (1e:7c3c)
+ db $04
+ db $00,$00,$07,$20
+ db $00,$08,$4a,$20
+ db $08,$00,$17,$20
+ db $08,$08,$16,$20
+
+FrameBlock76: ; 7bc4d (1e:7c4d)
+ db $07
+ db $00,$10,$2f,$00
+ db $01,$08,$2f,$00
+ db $01,$18,$2f,$00
+ db $02,$00,$2e,$00
+ db $02,$20,$2e,$20
+ db $0a,$00,$3e,$00
+ db $0a,$20,$3e,$20
+
+FrameBlock77: ; 7bc6a (1e:7c6a)
+ db $04
+ db $00,$02,$4b,$00
+ db $00,$0a,$4c,$00
+ db $08,$00,$4c,$60
+ db $08,$08,$4b,$60
+
+FrameBlock78: ; 7bc7b (1e:7c7b)
+ db $01
+ db $00,$00,$4d,$00
+
+FrameBlock79: ; 7bc80 (1e:7c80)
+ db $01
+ db $00,$00,$4e,$00
+
+FrameBlockBaseCoords: ; 7bc85 (1e:7c85)
+ db $10,$68
+ db $10,$70
+ db $10,$78
+ db $10,$80
+ db $10,$88
+ db $10,$90
+ db $10,$98
+ db $18,$68
+ db $18,$70
+ db $18,$78
+ db $34,$28
+ db $18,$80
+ db $18,$88
+ db $18,$98
+ db $20,$68
+ db $20,$70
+ db $20,$78
+ db $20,$80
+ db $20,$88
+ db $20,$90
+ db $20,$98
+ db $28,$68
+ db $28,$70
+ db $28,$78
+ db $28,$80
+ db $28,$88
+ db $30,$68
+ db $30,$70
+ db $30,$78
+ db $30,$80
+ db $30,$90
+ db $30,$98
+ db $38,$68
+ db $38,$78
+ db $38,$80
+ db $38,$88
+ db $40,$68
+ db $40,$70
+ db $40,$78
+ db $40,$80
+ db $40,$88
+ db $40,$98
+ db $10,$60
+ db $18,$60
+ db $20,$60
+ db $28,$60
+ db $30,$60
+ db $40,$60
+ db $58,$28
+ db $43,$38
+ db $33,$48
+ db $20,$58
+ db $32,$78
+ db $58,$58
+ db $2C,$6C
+ db $34,$80
+ db $48,$70
+ db $42,$36
+ db $38,$44
+ db $40,$52
+ db $48,$60
+ db $3E,$6E
+ db $28,$7C
+ db $28,$8A
+ db $50,$3C
+ db $48,$50
+ db $40,$64
+ db $38,$38
+ db $50,$30
+ db $50,$38
+ db $50,$40
+ db $50,$48
+ db $50,$50
+ db $48,$58
+ db $50,$44
+ db $48,$48
+ db $48,$4C
+ db $40,$50
+ db $40,$54
+ db $38,$58
+ db $38,$5C
+ db $30,$64
+ db $48,$40
+ db $48,$39
+ db $24,$88
+ db $24,$70
+ db $1C,$70
+ db $1C,$88
+ db $34,$68
+ db $34,$88
+ db $68,$50
+ db $60,$50
+ db $68,$60
+ db $58,$50
+ db $60,$60
+ db $68,$40
+ db $40,$40
+ db $38,$40
+ db $0B,$60
+ db $44,$48
+ db $40,$14
+ db $48,$1C
+ db $50,$24
+ db $4C,$24
+ db $10,$62
+ db $12,$62
+ db $12,$60
+ db $20,$72
+ db $22,$72
+ db $22,$70
+ db $28,$62
+ db $50,$0A
+ db $52,$0A
+ db $38,$30
+ db $40,$48
+ db $30,$48
+ db $40,$30
+ db $30,$40
+ db $38,$48
+ db $40,$4A
+ db $48,$4B
+ db $50,$4C
+ db $58,$4D
+ db $60,$4D
+ db $68,$4D
+ db $38,$10
+ db $50,$10
+ db $38,$28
+ db $48,$18
+ db $40,$20
+ db $48,$20
+ db $40,$3C
+ db $38,$50
+ db $28,$64
+ db $1C,$90
+ db $24,$80
+ db $2C,$70
+ db $30,$38
+ db $10,$50
+ db $3C,$40
+ db $40,$58
+ db $30,$58
+ db $58,$48
+ db $50,$58
+ db $48,$68
+ db $40,$18
+ db $28,$58
+ db $40,$38
+ db $48,$38
+ db $08,$70
+ db $44,$1C
+ db $3C,$58
+ db $38,$60
+ db $08,$60
+ db $38,$70
+ db $38,$6C
+ db $38,$64
+ db $1C,$74
+ db $2E,$74
+ db $34,$50
+ db $2F,$60
+ db $31,$70
+ db $4C,$30
+ db $3B,$40
+ db $2D,$50
+ db $26,$60
+ db $2D,$70
+ db $28,$50
+ db $1E,$60
+ db $29,$70
+ db $16,$60
+ db $14,$58
+ db $12,$54
+ db $14,$50
+ db $18,$4C
+ db $1C,$48
+ db $48,$28
+
+FrameBlock00: ; 7bde7 (1e:7de7)
+ db $00,$00
diff --git a/data/baseStats/abra.asm b/data/baseStats/abra.asm
new file mode 100755
index 00000000..4aceb5a8
--- /dev/null
+++ b/data/baseStats/abra.asm
@@ -0,0 +1,29 @@
+AbraBaseStats: ; 38aa6 (e:4aa6)
+db DEX_ABRA ; pokedex id
+db 25 ; base hp
+db 20 ; base attack
+db 15 ; base defense
+db 90 ; base speed
+db 105 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 200 ; catch rate
+db 73 ; base exp yield
+db $55 ; sprite dimensions
+dw AbraPicFront
+dw AbraPicBack
+; attacks known at lvl 0
+db TELEPORT
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11110000
+db %10000111
+db %00111000
+db %01000011
+db 0 ; padding
diff --git a/data/baseStats/aerodactyl.asm b/data/baseStats/aerodactyl.asm
new file mode 100755
index 00000000..72e4def1
--- /dev/null
+++ b/data/baseStats/aerodactyl.asm
@@ -0,0 +1,29 @@
+AerodactylBaseStats: ; 3934a (e:534a)
+db DEX_AERODACTYL ; pokedex id
+db 80 ; base hp
+db 105 ; base attack
+db 65 ; base defense
+db 130 ; base speed
+db 60 ; base special
+db ROCK ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 202 ; base exp yield
+db $77 ; sprite dimensions
+dw AerodactylPicFront
+dw AerodactylPicBack
+; attacks known at lvl 0
+db WING_ATTACK
+db AGILITY
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %01001000
+db %11000000
+db %01100011
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/alakazam.asm b/data/baseStats/alakazam.asm
new file mode 100755
index 00000000..67efbf50
--- /dev/null
+++ b/data/baseStats/alakazam.asm
@@ -0,0 +1,35 @@
+AlakazamBaseStats: ; 38ade (e:4ade)
+db DEX_ALAKAZAM ; pokedex id
+db 55 ; base hp
+db 50 ; base attack
+db 45 ; base defense
+db 120 ; base speed
+db 135 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 50 ; catch rate
+db 186 ; base exp yield
+db $77 ; sprite dimensions
+dw AlakazamPicFront
+dw AlakazamPicBack
+; attacks known at lvl 0
+db TELEPORT
+IF !_YELLOW
+ db CONFUSION
+ db DISABLE
+ENDC
+IF _YELLOW
+ db KINESIS
+ db 0
+ENDC
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %00001111
+db %11111000
+db %10000111
+db %00111000
+db %01000011
+db 0 ; padding
diff --git a/data/baseStats/arbok.asm b/data/baseStats/arbok.asm
new file mode 100755
index 00000000..682d9f5e
--- /dev/null
+++ b/data/baseStats/arbok.asm
@@ -0,0 +1,29 @@
+ArbokBaseStats: ; 38662 (e:4662)
+db DEX_ARBOK ; pokedex id
+db 60 ; base hp
+db 85 ; base attack
+db 69 ; base defense
+db 80 ; base speed
+db 65 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 90 ; catch rate
+db 147 ; base exp yield
+db $77 ; sprite dimensions
+dw ArbokPicFront
+dw ArbokPicBack
+; attacks known at lvl 0
+db WRAP
+db LEER
+db POISON_STING
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01000011
+db %00011000
+db %11001110
+db %10000010
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/arcanine.asm b/data/baseStats/arcanine.asm
new file mode 100755
index 00000000..6ee9b195
--- /dev/null
+++ b/data/baseStats/arcanine.asm
@@ -0,0 +1,29 @@
+ArcanineBaseStats: ; 38a36 (e:4a36)
+db DEX_ARCANINE ; pokedex id
+db 90 ; base hp
+db 110 ; base attack
+db 80 ; base defense
+db 95 ; base speed
+db 80 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 75 ; catch rate
+db 213 ; base exp yield
+db $77 ; sprite dimensions
+dw ArcaninePicFront
+dw ArcaninePicBack
+; attacks known at lvl 0
+db ROAR
+db EMBER
+db LEER
+db TAKE_DOWN
+db 5 ; growth rate
+; learnset
+db %10100000
+db %01000011
+db %01001000
+db %11101000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/articuno.asm b/data/baseStats/articuno.asm
new file mode 100755
index 00000000..749c99d1
--- /dev/null
+++ b/data/baseStats/articuno.asm
@@ -0,0 +1,29 @@
+ArticunoBaseStats: ; 39382 (e:5382)
+db DEX_ARTICUNO ; pokedex id
+db 90 ; base hp
+db 85 ; base attack
+db 100 ; base defense
+db 85 ; base speed
+db 125 ; base special
+db ICE ; species type 1
+db FLYING ; species type 2
+db 3 ; catch rate
+db 215 ; base exp yield
+db $77 ; sprite dimensions
+dw ArticunoPicFront
+dw ArticunoPicBack
+; attacks known at lvl 0
+db PECK
+db ICE_BEAM
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00101010
+db %01111111
+db %00001000
+db %11000000
+db %01000011
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/beedrill.asm b/data/baseStats/beedrill.asm
new file mode 100755
index 00000000..ba7d9f96
--- /dev/null
+++ b/data/baseStats/beedrill.asm
@@ -0,0 +1,29 @@
+BeedrillBaseStats: ; 38566 (e:4566)
+db DEX_BEEDRILL ; pokedex id
+db 65 ; base hp
+db 80 ; base attack
+db 40 ; base defense
+db 75 ; base speed
+db 45 ; base special
+db BUG ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 159 ; base exp yield
+db $77 ; sprite dimensions
+dw BeedrillPicFront
+dw BeedrillPicBack
+; attacks known at lvl 0
+db FURY_ATTACK
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100100
+db %01000011
+db %00011000
+db %11000000
+db %11000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/bellsprout.asm b/data/baseStats/bellsprout.asm
new file mode 100755
index 00000000..5393c1c9
--- /dev/null
+++ b/data/baseStats/bellsprout.asm
@@ -0,0 +1,29 @@
+BellsproutBaseStats: ; 38b4e (e:4b4e)
+db DEX_BELLSPROUT ; pokedex id
+db 50 ; base hp
+db 75 ; base attack
+db 35 ; base defense
+db 40 ; base speed
+db 70 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 255 ; catch rate
+db 84 ; base exp yield
+db $55 ; sprite dimensions
+dw BellsproutPicFront
+dw BellsproutPicBack
+; attacks known at lvl 0
+db VINE_WHIP
+db GROWTH
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %00100100
+db %00000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/blastoise.asm b/data/baseStats/blastoise.asm
new file mode 100755
index 00000000..088ac257
--- /dev/null
+++ b/data/baseStats/blastoise.asm
@@ -0,0 +1,29 @@
+BlastoiseBaseStats: ; 384be (e:44be)
+db DEX_BLASTOISE ; pokedex id
+db 79 ; base hp
+db 83 ; base attack
+db 100 ; base defense
+db 78 ; base speed
+db 85 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 210 ; base exp yield
+db $77 ; sprite dimensions
+dw BlastoisePicFront
+dw BlastoisePicBack
+; attacks known at lvl 0
+db TACKLE
+db TAIL_WHIP
+db BUBBLE
+db WATER_GUN
+db 3 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %00001111
+db %11001110
+db %10000011
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/bulbasaur.asm b/data/baseStats/bulbasaur.asm
new file mode 100755
index 00000000..cc9db19f
--- /dev/null
+++ b/data/baseStats/bulbasaur.asm
@@ -0,0 +1,29 @@
+BulbasaurBaseStats: ; 383de (e:43de)
+db DEX_BULBASAUR ; pokedex id
+db 45 ; base hp
+db 49 ; base attack
+db 49 ; base defense
+db 45 ; base speed
+db 65 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 64 ; base exp yield
+db $55 ; sprite dimensions
+dw BulbasaurPicFront
+dw BulbasaurPicBack
+; attacks known at lvl 0
+db TACKLE
+db GROWL
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10100100
+db %00000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/butterfree.asm b/data/baseStats/butterfree.asm
new file mode 100755
index 00000000..0573f878
--- /dev/null
+++ b/data/baseStats/butterfree.asm
@@ -0,0 +1,34 @@
+ButterfreeBaseStats: ; 38512 (e:4512)
+db DEX_BUTTERFREE ; pokedex id
+db 60 ; base hp
+db 45 ; base attack
+db 50 ; base defense
+db 70 ; base speed
+db 80 ; base special
+db BUG ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 160 ; base exp yield
+db $77 ; sprite dimensions
+dw ButterfreePicFront
+dw ButterfreePicBack
+; attacks known at lvl 0
+db CONFUSION
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %00111000
+db %11110000
+db %01000011
+db %00101000
+IF !_YELLOW
+ db %00000010
+ENDC
+IF _YELLOW
+ db %01000010
+ENDC
+db 0 ; padding
diff --git a/data/baseStats/caterpie.asm b/data/baseStats/caterpie.asm
new file mode 100755
index 00000000..fce47780
--- /dev/null
+++ b/data/baseStats/caterpie.asm
@@ -0,0 +1,29 @@
+CaterpieBaseStats: ; 384da (e:44da)
+db DEX_CATERPIE ; pokedex id
+db 45 ; base hp
+db 30 ; base attack
+db 35 ; base defense
+db 45 ; base speed
+db 20 ; base special
+db BUG ; species type 1
+db BUG ; species type 2
+db 255 ; catch rate
+db 53 ; base exp yield
+db $55 ; sprite dimensions
+dw CaterpiePicFront
+dw CaterpiePicBack
+; attacks known at lvl 0
+db TACKLE
+db STRING_SHOT
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db 0 ; padding
diff --git a/data/baseStats/chansey.asm b/data/baseStats/chansey.asm
new file mode 100755
index 00000000..eceb5491
--- /dev/null
+++ b/data/baseStats/chansey.asm
@@ -0,0 +1,34 @@
+ChanseyBaseStats: ; 3901e (e:501e)
+db DEX_CHANSEY ; pokedex id
+db 250 ; base hp
+db 5 ; base attack
+db 5 ; base defense
+db 50 ; base speed
+db 105 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 30 ; catch rate
+db 255 ; base exp yield
+db $66 ; sprite dimensions
+dw ChanseyPicFront
+dw ChanseyPicBack
+; attacks known at lvl 0
+db POUND
+IF !_YELLOW
+ db DOUBLESLAP
+ENDC
+IF _YELLOW
+ db TAIL_WHIP
+ENDC
+db 0
+db 0
+db 4 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %10101111
+db %11110001
+db %10110111
+db %00111001
+db %01100011
+db 0 ; padding
diff --git a/data/baseStats/charizard.asm b/data/baseStats/charizard.asm
new file mode 100755
index 00000000..280ce4ab
--- /dev/null
+++ b/data/baseStats/charizard.asm
@@ -0,0 +1,34 @@
+CharizardBaseStats: ; 3846a (e:446a)
+db DEX_CHARIZARD ; pokedex id
+db 78 ; base hp
+db 84 ; base attack
+db 78 ; base defense
+db 100 ; base speed
+db 85 ; base special
+db FIRE ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 209 ; base exp yield
+db $77 ; sprite dimensions
+dw CharizardPicFront
+dw CharizardPicBack
+; attacks known at lvl 0
+db SCRATCH
+db GROWL
+db EMBER
+db LEER
+db 3 ; growth rate
+; learnset
+db %10110101
+db %01000011
+db %01001111
+db %11001110
+db %11100011
+db %00001000
+IF !_YELLOW
+ db %00100110
+ENDC
+IF _YELLOW
+ db %00101110
+ENDC
+db 0 ; padding
diff --git a/data/baseStats/charmander.asm b/data/baseStats/charmander.asm
new file mode 100755
index 00000000..1cb1a623
--- /dev/null
+++ b/data/baseStats/charmander.asm
@@ -0,0 +1,29 @@
+CharmanderBaseStats: ; 38432 (e:4432)
+db DEX_CHARMANDER ; pokedex id
+db 39 ; base hp
+db 52 ; base attack
+db 43 ; base defense
+db 65 ; base speed
+db 50 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 45 ; catch rate
+db 65 ; base exp yield
+db $55 ; sprite dimensions
+dw CharmanderPicFront
+dw CharmanderPicBack
+; attacks known at lvl 0
+db SCRATCH
+db GROWL
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10110101
+db %00000011
+db %01001111
+db %11001000
+db %11100011
+db %00001000
+db %00100110
+db 0 ; padding
diff --git a/data/baseStats/charmeleon.asm b/data/baseStats/charmeleon.asm
new file mode 100755
index 00000000..e4b1ee3f
--- /dev/null
+++ b/data/baseStats/charmeleon.asm
@@ -0,0 +1,29 @@
+CharmeleonBaseStats: ; 3844e (e:444e)
+db DEX_CHARMELEON ; pokedex id
+db 58 ; base hp
+db 64 ; base attack
+db 58 ; base defense
+db 80 ; base speed
+db 65 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 45 ; catch rate
+db 142 ; base exp yield
+db $66 ; sprite dimensions
+dw CharmeleonPicFront
+dw CharmeleonPicBack
+; attacks known at lvl 0
+db SCRATCH
+db GROWL
+db EMBER
+db 0
+db 3 ; growth rate
+; learnset
+db %10110101
+db %00000011
+db %01001111
+db %11001000
+db %11100011
+db %00001000
+db %00100110
+db 0 ; padding
diff --git a/data/baseStats/clefable.asm b/data/baseStats/clefable.asm
new file mode 100755
index 00000000..76267cc9
--- /dev/null
+++ b/data/baseStats/clefable.asm
@@ -0,0 +1,29 @@
+ClefableBaseStats: ; 387b2 (e:47b2)
+db DEX_CLEFABLE ; pokedex id
+db 95 ; base hp
+db 70 ; base attack
+db 73 ; base defense
+db 60 ; base speed
+db 85 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 25 ; catch rate
+db 129 ; base exp yield
+db $66 ; sprite dimensions
+dw ClefablePicFront
+dw ClefablePicBack
+; attacks known at lvl 0
+db SING
+db DOUBLESLAP
+db MINIMIZE
+db METRONOME
+db 4 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %10101111
+db %11110001
+db %10100111
+db %00111000
+db %01100011
+db 0 ; padding
diff --git a/data/baseStats/clefairy.asm b/data/baseStats/clefairy.asm
new file mode 100755
index 00000000..6585357e
--- /dev/null
+++ b/data/baseStats/clefairy.asm
@@ -0,0 +1,29 @@
+ClefairyBaseStats: ; 38796 (e:4796)
+db DEX_CLEFAIRY ; pokedex id
+db 70 ; base hp
+db 45 ; base attack
+db 48 ; base defense
+db 35 ; base speed
+db 60 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 150 ; catch rate
+db 68 ; base exp yield
+db $55 ; sprite dimensions
+dw ClefairyPicFront
+dw ClefairyPicBack
+; attacks known at lvl 0
+db POUND
+db GROWL
+db 0
+db 0
+db 4 ; growth rate
+; learnset
+db %10110001
+db %00111111
+db %10101111
+db %11110001
+db %10100111
+db %00111000
+db %01100011
+db 0 ; padding
diff --git a/data/baseStats/cloyster.asm b/data/baseStats/cloyster.asm
new file mode 100755
index 00000000..c32af3dc
--- /dev/null
+++ b/data/baseStats/cloyster.asm
@@ -0,0 +1,29 @@
+CloysterBaseStats: ; 38db6 (e:4db6)
+db DEX_CLOYSTER ; pokedex id
+db 50 ; base hp
+db 95 ; base attack
+db 180 ; base defense
+db 70 ; base speed
+db 85 ; base special
+db WATER ; species type 1
+db ICE ; species type 2
+db 60 ; catch rate
+db 203 ; base exp yield
+db $77 ; sprite dimensions
+dw CloysterPicFront
+dw CloysterPicBack
+; attacks known at lvl 0
+db WITHDRAW
+db SUPERSONIC
+db CLAMP
+db AURORA_BEAM
+db 5 ; growth rate
+; learnset
+db %00100000
+db %01111111
+db %00001000
+db %11100000
+db %01001011
+db %01001000
+db %00010011
+db 0 ; padding
diff --git a/data/baseStats/cubone.asm b/data/baseStats/cubone.asm
new file mode 100755
index 00000000..0a9f0ece
--- /dev/null
+++ b/data/baseStats/cubone.asm
@@ -0,0 +1,29 @@
+CuboneBaseStats: ; 38f22 (e:4f22)
+db DEX_CUBONE ; pokedex id
+db 50 ; base hp
+db 50 ; base attack
+db 95 ; base defense
+db 35 ; base speed
+db 40 ; base special
+db GROUND ; species type 1
+db GROUND ; species type 2
+db 190 ; catch rate
+db 87 ; base exp yield
+db $55 ; sprite dimensions
+dw CubonePicFront
+dw CubonePicBack
+; attacks known at lvl 0
+db BONE_CLUB
+db GROWL
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %00111111
+db %00001111
+db %11001110
+db %10100010
+db %00001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/dewgong.asm b/data/baseStats/dewgong.asm
new file mode 100755
index 00000000..3558b34c
--- /dev/null
+++ b/data/baseStats/dewgong.asm
@@ -0,0 +1,29 @@
+DewgongBaseStats: ; 38d46 (e:4d46)
+db DEX_DEWGONG ; pokedex id
+db 90 ; base hp
+db 70 ; base attack
+db 80 ; base defense
+db 70 ; base speed
+db 95 ; base special
+db WATER ; species type 1
+db ICE ; species type 2
+db 75 ; catch rate
+db 176 ; base exp yield
+db $66 ; sprite dimensions
+dw DewgongPicFront
+dw DewgongPicBack
+; attacks known at lvl 0
+db HEADBUTT
+db GROWL
+db AURORA_BEAM
+db 0
+db 0 ; growth rate
+; learnset
+db %11100000
+db %11111111
+db %00001000
+db %11000000
+db %10000010
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/diglett.asm b/data/baseStats/diglett.asm
new file mode 100755
index 00000000..f227463e
--- /dev/null
+++ b/data/baseStats/diglett.asm
@@ -0,0 +1,34 @@
+DiglettBaseStats: ; 3893a (e:493a)
+db DEX_DIGLETT ; pokedex id
+db 10 ; base hp
+db 55 ; base attack
+db 25 ; base defense
+db 95 ; base speed
+db 45 ; base special
+db GROUND ; species type 1
+db GROUND ; species type 2
+db 255 ; catch rate
+db 81 ; base exp yield
+db $55 ; sprite dimensions
+dw DiglettPicFront
+dw DiglettPicBack
+; attacks known at lvl 0
+db SCRATCH
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00000011
+db %00001000
+db %11001110
+db %00000010
+db %10001000
+IF !_YELLOW
+ db %00000010
+ENDC
+IF _YELLOW
+ db %00000110
+ENDC
+db 0 ; padding
diff --git a/data/baseStats/ditto.asm b/data/baseStats/ditto.asm
new file mode 100755
index 00000000..f377a373
--- /dev/null
+++ b/data/baseStats/ditto.asm
@@ -0,0 +1,29 @@
+DittoBaseStats: ; 39232 (e:5232)
+db DEX_DITTO ; pokedex id
+db 48 ; base hp
+db 48 ; base attack
+db 48 ; base defense
+db 48 ; base speed
+db 48 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 35 ; catch rate
+db 61 ; base exp yield
+db $55 ; sprite dimensions
+dw DittoPicFront
+dw DittoPicBack
+; attacks known at lvl 0
+db TRANSFORM
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db 0 ; padding
diff --git a/data/baseStats/dodrio.asm b/data/baseStats/dodrio.asm
new file mode 100755
index 00000000..fd104196
--- /dev/null
+++ b/data/baseStats/dodrio.asm
@@ -0,0 +1,29 @@
+DodrioBaseStats: ; 38d0e (e:4d0e)
+db DEX_DODRIO ; pokedex id
+db 60 ; base hp
+db 110 ; base attack
+db 70 ; base defense
+db 100 ; base speed
+db 60 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 158 ; base exp yield
+db $77 ; sprite dimensions
+dw DodrioPicFront
+dw DodrioPicBack
+; attacks known at lvl 0
+db PECK
+db GROWL
+db FURY_ATTACK
+db 0
+db 0 ; growth rate
+; learnset
+db %10101000
+db %01000011
+db %00001000
+db %11000000
+db %10000011
+db %00001100
+db %00001011
+db 0 ; padding
diff --git a/data/baseStats/doduo.asm b/data/baseStats/doduo.asm
new file mode 100755
index 00000000..239214a7
--- /dev/null
+++ b/data/baseStats/doduo.asm
@@ -0,0 +1,29 @@
+DoduoBaseStats: ; 38cf2 (e:4cf2)
+db DEX_DODUO ; pokedex id
+db 35 ; base hp
+db 85 ; base attack
+db 45 ; base defense
+db 75 ; base speed
+db 35 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 190 ; catch rate
+db 96 ; base exp yield
+db $55 ; sprite dimensions
+dw DoduoPicFront
+dw DoduoPicBack
+; attacks known at lvl 0
+db PECK
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10101000
+db %00000011
+db %00001000
+db %11000000
+db %10000011
+db %00001100
+db %00001011
+db 0 ; padding
diff --git a/data/baseStats/dragonair.asm b/data/baseStats/dragonair.asm
new file mode 100755
index 00000000..92380dce
--- /dev/null
+++ b/data/baseStats/dragonair.asm
@@ -0,0 +1,29 @@
+DragonairBaseStats: ; 393f2 (e:53f2)
+db DEX_DRAGONAIR ; pokedex id
+db 61 ; base hp
+db 84 ; base attack
+db 65 ; base defense
+db 70 ; base speed
+db 70 ; base special
+db DRAGON ; species type 1
+db DRAGON ; species type 2
+db 45 ; catch rate
+db 144 ; base exp yield
+db $66 ; sprite dimensions
+dw DragonairPicFront
+dw DragonairPicBack
+; attacks known at lvl 0
+db WRAP
+db LEER
+db THUNDER_WAVE
+db 0
+db 5 ; growth rate
+; learnset
+db %11100000
+db %00111111
+db %11001000
+db %11000001
+db %11100011
+db %00011000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/dragonite.asm b/data/baseStats/dragonite.asm
new file mode 100755
index 00000000..7a68d129
--- /dev/null
+++ b/data/baseStats/dragonite.asm
@@ -0,0 +1,29 @@
+DragoniteBaseStats: ; 3940e (e:540e)
+db DEX_DRAGONITE ; pokedex id
+db 91 ; base hp
+db 134 ; base attack
+db 95 ; base defense
+db 80 ; base speed
+db 100 ; base special
+db DRAGON ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 218 ; base exp yield
+db $77 ; sprite dimensions
+dw DragonitePicFront
+dw DragonitePicBack
+; attacks known at lvl 0
+db WRAP
+db LEER
+db THUNDER_WAVE
+db AGILITY
+db 5 ; growth rate
+; learnset
+db %11100010
+db %01111111
+db %11001000
+db %11000001
+db %11100011
+db %00011000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/dratini.asm b/data/baseStats/dratini.asm
new file mode 100755
index 00000000..f3f66803
--- /dev/null
+++ b/data/baseStats/dratini.asm
@@ -0,0 +1,29 @@
+DratiniBaseStats: ; 393d6 (e:53d6)
+db DEX_DRATINI ; pokedex id
+db 41 ; base hp
+db 64 ; base attack
+db 45 ; base defense
+db 50 ; base speed
+db 50 ; base special
+db DRAGON ; species type 1
+db DRAGON ; species type 2
+db 45 ; catch rate
+db 67 ; base exp yield
+db $55 ; sprite dimensions
+dw DratiniPicFront
+dw DratiniPicBack
+; attacks known at lvl 0
+db WRAP
+db LEER
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %10100000
+db %00111111
+db %11001000
+db %11000001
+db %11100011
+db %00011000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/drowzee.asm b/data/baseStats/drowzee.asm
new file mode 100755
index 00000000..14c1aca1
--- /dev/null
+++ b/data/baseStats/drowzee.asm
@@ -0,0 +1,29 @@
+DrowzeeBaseStats: ; 38e42 (e:4e42)
+db DEX_DROWZEE ; pokedex id
+db 60 ; base hp
+db 48 ; base attack
+db 45 ; base defense
+db 42 ; base speed
+db 90 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 190 ; catch rate
+db 102 ; base exp yield
+db $66 ; sprite dimensions
+dw DrowzeePicFront
+dw DrowzeePicBack
+; attacks known at lvl 0
+db POUND
+db HYPNOSIS
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11110000
+db %10000111
+db %00111010
+db %01000011
+db 0 ; padding
diff --git a/data/baseStats/dugtrio.asm b/data/baseStats/dugtrio.asm
new file mode 100755
index 00000000..dbea18df
--- /dev/null
+++ b/data/baseStats/dugtrio.asm
@@ -0,0 +1,34 @@
+DugtrioBaseStats: ; 38956 (e:4956)
+db DEX_DUGTRIO ; pokedex id
+db 35 ; base hp
+db 80 ; base attack
+db 50 ; base defense
+db 120 ; base speed
+db 70 ; base special
+db GROUND ; species type 1
+db GROUND ; species type 2
+db 50 ; catch rate
+db 153 ; base exp yield
+db $66 ; sprite dimensions
+dw DugtrioPicFront
+dw DugtrioPicBack
+; attacks known at lvl 0
+db SCRATCH
+db GROWL
+db DIG
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01000011
+db %00001000
+db %11001110
+db %00000010
+db %10001000
+IF !_YELLOW
+ db %00000010
+ENDC
+IF _YELLOW
+ db %00000110
+ENDC
+db 0 ; padding
diff --git a/data/baseStats/eevee.asm b/data/baseStats/eevee.asm
new file mode 100755
index 00000000..9f5935ef
--- /dev/null
+++ b/data/baseStats/eevee.asm
@@ -0,0 +1,34 @@
+EeveeBaseStats: ; 3924e (e:524e)
+db DEX_EEVEE ; pokedex id
+db 55 ; base hp
+db 55 ; base attack
+db 50 ; base defense
+db 55 ; base speed
+db 65 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 45 ; catch rate
+db 92 ; base exp yield
+db $55 ; sprite dimensions
+dw EeveePicFront
+dw EeveePicBack
+; attacks known at lvl 0
+db TACKLE
+IF !_YELLOW
+ db SAND_ATTACK
+ENDC
+IF _YELLOW
+ db TAIL_WHIP
+ENDC
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00000011
+db %00001000
+db %11000000
+db %11000011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/ekans.asm b/data/baseStats/ekans.asm
new file mode 100755
index 00000000..00bdcb25
--- /dev/null
+++ b/data/baseStats/ekans.asm
@@ -0,0 +1,29 @@
+EkansBaseStats: ; 38646 (e:4646)
+db DEX_EKANS ; pokedex id
+db 35 ; base hp
+db 60 ; base attack
+db 44 ; base defense
+db 55 ; base speed
+db 40 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 255 ; catch rate
+db 62 ; base exp yield
+db $55 ; sprite dimensions
+dw EkansPicFront
+dw EkansPicBack
+; attacks known at lvl 0
+db WRAP
+db LEER
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00000011
+db %00011000
+db %11001110
+db %10000010
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/electabuzz.asm b/data/baseStats/electabuzz.asm
new file mode 100755
index 00000000..340e0eb0
--- /dev/null
+++ b/data/baseStats/electabuzz.asm
@@ -0,0 +1,29 @@
+ElectabuzzBaseStats: ; 3916e (e:516e)
+db DEX_ELECTABUZZ ; pokedex id
+db 65 ; base hp
+db 83 ; base attack
+db 57 ; base defense
+db 105 ; base speed
+db 85 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 45 ; catch rate
+db 156 ; base exp yield
+db $66 ; sprite dimensions
+dw ElectabuzzPicFront
+dw ElectabuzzPicBack
+; attacks known at lvl 0
+db QUICK_ATTACK
+db LEER
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %10001111
+db %11110001
+db %11000111
+db %00111000
+db %01100010
+db 0 ; padding
diff --git a/data/baseStats/electrode.asm b/data/baseStats/electrode.asm
new file mode 100755
index 00000000..3e738692
--- /dev/null
+++ b/data/baseStats/electrode.asm
@@ -0,0 +1,29 @@
+ElectrodeBaseStats: ; 38ece (e:4ece)
+db DEX_ELECTRODE ; pokedex id
+db 60 ; base hp
+db 50 ; base attack
+db 70 ; base defense
+db 140 ; base speed
+db 80 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 60 ; catch rate
+db 150 ; base exp yield
+db $55 ; sprite dimensions
+dw ElectrodePicFront
+dw ElectrodePicBack
+; attacks known at lvl 0
+db TACKLE
+db SCREECH
+db SONICBOOM
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %01000001
+db %10001000
+db %11100001
+db %11001011
+db %01011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/exeggcute.asm b/data/baseStats/exeggcute.asm
new file mode 100755
index 00000000..aba88c7f
--- /dev/null
+++ b/data/baseStats/exeggcute.asm
@@ -0,0 +1,29 @@
+ExeggcuteBaseStats: ; 38eea (e:4eea)
+db DEX_EXEGGCUTE ; pokedex id
+db 60 ; base hp
+db 40 ; base attack
+db 80 ; base defense
+db 40 ; base speed
+db 60 ; base special
+db GRASS ; species type 1
+db PSYCHIC ; species type 2
+db 90 ; catch rate
+db 98 ; base exp yield
+db $77 ; sprite dimensions
+dw ExeggcutePicFront
+dw ExeggcutePicBack
+; attacks known at lvl 0
+db BARRAGE
+db HYPNOSIS
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00100000
+db %00000011
+db %00001000
+db %11110000
+db %00011011
+db %01101000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/exeggutor.asm b/data/baseStats/exeggutor.asm
new file mode 100755
index 00000000..4e2820c2
--- /dev/null
+++ b/data/baseStats/exeggutor.asm
@@ -0,0 +1,29 @@
+ExeggutorBaseStats: ; 38f06 (e:4f06)
+db DEX_EXEGGUTOR ; pokedex id
+db 95 ; base hp
+db 95 ; base attack
+db 85 ; base defense
+db 55 ; base speed
+db 125 ; base special
+db GRASS ; species type 1
+db PSYCHIC ; species type 2
+db 45 ; catch rate
+db 212 ; base exp yield
+db $77 ; sprite dimensions
+dw ExeggutorPicFront
+dw ExeggutorPicBack
+; attacks known at lvl 0
+db BARRAGE
+db HYPNOSIS
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00100000
+db %01000011
+db %00111000
+db %11110000
+db %00011011
+db %01101000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/farfetchd.asm b/data/baseStats/farfetchd.asm
new file mode 100755
index 00000000..ee9770a8
--- /dev/null
+++ b/data/baseStats/farfetchd.asm
@@ -0,0 +1,29 @@
+FarfetchdBaseStats: ; 38cd6 (e:4cd6)
+db DEX_FARFETCH_D ; pokedex id
+db 52 ; base hp
+db 65 ; base attack
+db 55 ; base defense
+db 60 ; base speed
+db 58 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 94 ; base exp yield
+db $66 ; sprite dimensions
+dw FarfetchdPicFront
+dw FarfetchdPicBack
+; attacks known at lvl 0
+db PECK
+db SAND_ATTACK
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10101110
+db %00000011
+db %00001000
+db %11000000
+db %11000011
+db %00001000
+db %00001110
+db 0 ; padding
diff --git a/data/baseStats/fearow.asm b/data/baseStats/fearow.asm
new file mode 100755
index 00000000..398c32fb
--- /dev/null
+++ b/data/baseStats/fearow.asm
@@ -0,0 +1,29 @@
+FearowBaseStats: ; 3862a (e:462a)
+db DEX_FEAROW ; pokedex id
+db 65 ; base hp
+db 90 ; base attack
+db 65 ; base defense
+db 100 ; base speed
+db 61 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 90 ; catch rate
+db 162 ; base exp yield
+db $77 ; sprite dimensions
+dw FearowPicFront
+dw FearowPicBack
+; attacks known at lvl 0
+db PECK
+db GROWL
+db LEER
+db 0
+db 0 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %00001000
+db %11000000
+db %01000010
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/flareon.asm b/data/baseStats/flareon.asm
new file mode 100755
index 00000000..91a4b955
--- /dev/null
+++ b/data/baseStats/flareon.asm
@@ -0,0 +1,34 @@
+FlareonBaseStats: ; 392a2 (e:52a2)
+db DEX_FLAREON ; pokedex id
+db 65 ; base hp
+db 130 ; base attack
+db 60 ; base defense
+db 65 ; base speed
+db 110 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 45 ; catch rate
+db 198 ; base exp yield
+db $66 ; sprite dimensions
+dw FlareonPicFront
+dw FlareonPicBack
+; attacks known at lvl 0
+db TACKLE
+IF !_YELLOW
+ db SAND_ATTACK
+ENDC
+IF _YELLOW
+ db TAIL_WHIP
+ENDC
+db QUICK_ATTACK
+db EMBER
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01000011
+db %00001000
+db %11000000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/gastly.asm b/data/baseStats/gastly.asm
new file mode 100755
index 00000000..f60d7f6d
--- /dev/null
+++ b/data/baseStats/gastly.asm
@@ -0,0 +1,29 @@
+GastlyBaseStats: ; 38dd2 (e:4dd2)
+db DEX_GASTLY ; pokedex id
+db 30 ; base hp
+db 35 ; base attack
+db 30 ; base defense
+db 80 ; base speed
+db 100 ; base special
+db GHOST ; species type 1
+db POISON ; species type 2
+db 190 ; catch rate
+db 95 ; base exp yield
+db $77 ; sprite dimensions
+dw GastlyPicFront
+dw GastlyPicBack
+; attacks known at lvl 0
+db LICK
+db CONFUSE_RAY
+db NIGHT_SHADE
+db 0
+db 3 ; growth rate
+; learnset
+db %00100000
+db %00000000
+db %10011000
+db %11010001
+db %00001010
+db %01101010
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/gengar.asm b/data/baseStats/gengar.asm
new file mode 100755
index 00000000..905fdc19
--- /dev/null
+++ b/data/baseStats/gengar.asm
@@ -0,0 +1,29 @@
+GengarBaseStats: ; 38e0a (e:4e0a)
+db DEX_GENGAR ; pokedex id
+db 60 ; base hp
+db 65 ; base attack
+db 60 ; base defense
+db 110 ; base speed
+db 130 ; base special
+db GHOST ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 190 ; base exp yield
+db $66 ; sprite dimensions
+dw GengarPicFront
+dw GengarPicBack
+; attacks known at lvl 0
+db LICK
+db CONFUSE_RAY
+db NIGHT_SHADE
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %10011111
+db %11010001
+db %10001110
+db %01101010
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/geodude.asm b/data/baseStats/geodude.asm
new file mode 100755
index 00000000..a07fca42
--- /dev/null
+++ b/data/baseStats/geodude.asm
@@ -0,0 +1,29 @@
+GeodudeBaseStats: ; 38bda (e:4bda)
+db DEX_GEODUDE ; pokedex id
+db 40 ; base hp
+db 80 ; base attack
+db 100 ; base defense
+db 20 ; base speed
+db 30 ; base special
+db ROCK ; species type 1
+db GROUND ; species type 2
+db 255 ; catch rate
+db 86 ; base exp yield
+db $55 ; sprite dimensions
+dw GeodudePicFront
+dw GeodudePicBack
+; attacks known at lvl 0
+db TACKLE
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10100001
+db %00000011
+db %00001111
+db %11001110
+db %00101110
+db %11001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/gloom.asm b/data/baseStats/gloom.asm
new file mode 100755
index 00000000..388b5bdc
--- /dev/null
+++ b/data/baseStats/gloom.asm
@@ -0,0 +1,29 @@
+GloomBaseStats: ; 38892 (e:4892)
+db DEX_GLOOM ; pokedex id
+db 60 ; base hp
+db 65 ; base attack
+db 70 ; base defense
+db 40 ; base speed
+db 85 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 120 ; catch rate
+db 132 ; base exp yield
+db $66 ; sprite dimensions
+dw GloomPicFront
+dw GloomPicBack
+; attacks known at lvl 0
+db ABSORB
+db POISONPOWDER
+db STUN_SPORE
+db 0
+db 3 ; growth rate
+; learnset
+db %00100100
+db %00000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/golbat.asm b/data/baseStats/golbat.asm
new file mode 100755
index 00000000..d4b0d6c0
--- /dev/null
+++ b/data/baseStats/golbat.asm
@@ -0,0 +1,29 @@
+GolbatBaseStats: ; 3885a (e:485a)
+db DEX_GOLBAT ; pokedex id
+db 75 ; base hp
+db 80 ; base attack
+db 70 ; base defense
+db 90 ; base speed
+db 75 ; base special
+db POISON ; species type 1
+db FLYING ; species type 2
+db 90 ; catch rate
+db 171 ; base exp yield
+db $77 ; sprite dimensions
+dw GolbatPicFront
+dw GolbatPicBack
+; attacks known at lvl 0
+db LEECH_LIFE
+db SCREECH
+db BITE
+db 0
+db 0 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %00011000
+db %11000000
+db %01000010
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/goldeen.asm b/data/baseStats/goldeen.asm
new file mode 100755
index 00000000..87401de1
--- /dev/null
+++ b/data/baseStats/goldeen.asm
@@ -0,0 +1,29 @@
+GoldeenBaseStats: ; 390aa (e:50aa)
+db DEX_GOLDEEN ; pokedex id
+db 45 ; base hp
+db 67 ; base attack
+db 60 ; base defense
+db 63 ; base speed
+db 50 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 225 ; catch rate
+db 111 ; base exp yield
+db $66 ; sprite dimensions
+dw GoldeenPicFront
+dw GoldeenPicBack
+; attacks known at lvl 0
+db PECK
+db TAIL_WHIP
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %01100000
+db %00111111
+db %00001000
+db %11000000
+db %11000010
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/golduck.asm b/data/baseStats/golduck.asm
new file mode 100755
index 00000000..52f544c5
--- /dev/null
+++ b/data/baseStats/golduck.asm
@@ -0,0 +1,29 @@
+GolduckBaseStats: ; 389c6 (e:49c6)
+db DEX_GOLDUCK ; pokedex id
+db 80 ; base hp
+db 82 ; base attack
+db 78 ; base defense
+db 85 ; base speed
+db 80 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 75 ; catch rate
+db 174 ; base exp yield
+db $77 ; sprite dimensions
+dw GolduckPicFront
+dw GolduckPicBack
+; attacks known at lvl 0
+db SCRATCH
+db TAIL_WHIP
+db DISABLE
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %11111111
+db %00001111
+db %11001000
+db %11000010
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/golem.asm b/data/baseStats/golem.asm
new file mode 100755
index 00000000..0cfc1077
--- /dev/null
+++ b/data/baseStats/golem.asm
@@ -0,0 +1,29 @@
+GolemBaseStats: ; 38c12 (e:4c12)
+db DEX_GOLEM ; pokedex id
+db 80 ; base hp
+db 110 ; base attack
+db 130 ; base defense
+db 45 ; base speed
+db 55 ; base special
+db ROCK ; species type 1
+db GROUND ; species type 2
+db 45 ; catch rate
+db 177 ; base exp yield
+db $66 ; sprite dimensions
+dw GolemPicFront
+dw GolemPicBack
+; attacks known at lvl 0
+db TACKLE
+db DEFENSE_CURL
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %00001111
+db %11001110
+db %00101110
+db %11001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/graveler.asm b/data/baseStats/graveler.asm
new file mode 100755
index 00000000..c3e2b03f
--- /dev/null
+++ b/data/baseStats/graveler.asm
@@ -0,0 +1,29 @@
+GravelerBaseStats: ; 38bf6 (e:4bf6)
+db DEX_GRAVELER ; pokedex id
+db 55 ; base hp
+db 95 ; base attack
+db 115 ; base defense
+db 35 ; base speed
+db 45 ; base special
+db ROCK ; species type 1
+db GROUND ; species type 2
+db 120 ; catch rate
+db 134 ; base exp yield
+db $66 ; sprite dimensions
+dw GravelerPicFront
+dw GravelerPicBack
+; attacks known at lvl 0
+db TACKLE
+db DEFENSE_CURL
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10100001
+db %00000011
+db %00001111
+db %11001110
+db %00101110
+db %11001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/grimer.asm b/data/baseStats/grimer.asm
new file mode 100755
index 00000000..dcfda99d
--- /dev/null
+++ b/data/baseStats/grimer.asm
@@ -0,0 +1,29 @@
+GrimerBaseStats: ; 38d62 (e:4d62)
+db DEX_GRIMER ; pokedex id
+db 80 ; base hp
+db 80 ; base attack
+db 50 ; base defense
+db 25 ; base speed
+db 40 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 190 ; catch rate
+db 90 ; base exp yield
+db $55 ; sprite dimensions
+dw GrimerPicFront
+dw GrimerPicBack
+; attacks known at lvl 0
+db POUND
+db DISABLE
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00000000
+db %10011000
+db %11000001
+db %00101010
+db %01001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/growlithe.asm b/data/baseStats/growlithe.asm
new file mode 100755
index 00000000..715b0f73
--- /dev/null
+++ b/data/baseStats/growlithe.asm
@@ -0,0 +1,29 @@
+GrowlitheBaseStats: ; 38a1a (e:4a1a)
+db DEX_GROWLITHE ; pokedex id
+db 55 ; base hp
+db 70 ; base attack
+db 45 ; base defense
+db 60 ; base speed
+db 50 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 190 ; catch rate
+db 91 ; base exp yield
+db $55 ; sprite dimensions
+dw GrowlithePicFront
+dw GrowlithePicBack
+; attacks known at lvl 0
+db BITE
+db ROAR
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %10100000
+db %00000011
+db %01001000
+db %11001000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/gyarados.asm b/data/baseStats/gyarados.asm
new file mode 100755
index 00000000..0c74a43b
--- /dev/null
+++ b/data/baseStats/gyarados.asm
@@ -0,0 +1,37 @@
+GyaradosBaseStats: ; 391fa (e:51fa)
+db DEX_GYARADOS ; pokedex id
+db 95 ; base hp
+db 125 ; base attack
+db 79 ; base defense
+db 81 ; base speed
+db 100 ; base special
+db WATER ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 214 ; base exp yield
+db $77 ; sprite dimensions
+dw GyaradosPicFront
+dw GyaradosPicBack
+; attacks known at lvl 0
+IF !_YELLOW
+db BITE
+db DRAGON_RAGE
+db LEER
+db HYDRO_PUMP
+ENDC
+IF _YELLOW
+db TACKLE
+db 0
+db 0
+db 0
+ENDC
+db 5 ; growth rate
+; learnset
+db %10100000
+db %01111111
+db %11001000
+db %11000001
+db %10100011
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/haunter.asm b/data/baseStats/haunter.asm
new file mode 100755
index 00000000..ef46ea39
--- /dev/null
+++ b/data/baseStats/haunter.asm
@@ -0,0 +1,29 @@
+HaunterBaseStats: ; 38dee (e:4dee)
+db DEX_HAUNTER ; pokedex id
+db 45 ; base hp
+db 50 ; base attack
+db 45 ; base defense
+db 95 ; base speed
+db 115 ; base special
+db GHOST ; species type 1
+db POISON ; species type 2
+db 90 ; catch rate
+db 126 ; base exp yield
+db $66 ; sprite dimensions
+dw HaunterPicFront
+dw HaunterPicBack
+; attacks known at lvl 0
+db LICK
+db CONFUSE_RAY
+db NIGHT_SHADE
+db 0
+db 3 ; growth rate
+; learnset
+db %00100000
+db %00000000
+db %10011000
+db %11010001
+db %00001010
+db %01101010
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/hitmonchan.asm b/data/baseStats/hitmonchan.asm
new file mode 100755
index 00000000..25026ed4
--- /dev/null
+++ b/data/baseStats/hitmonchan.asm
@@ -0,0 +1,29 @@
+HitmonchanBaseStats: ; 38f76 (e:4f76)
+db DEX_HITMONCHAN ; pokedex id
+db 50 ; base hp
+db 105 ; base attack
+db 79 ; base defense
+db 76 ; base speed
+db 35 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 45 ; catch rate
+db 140 ; base exp yield
+db $66 ; sprite dimensions
+dw HitmonchanPicFront
+dw HitmonchanPicBack
+; attacks known at lvl 0
+db COMET_PUNCH
+db AGILITY
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11000000
+db %11000110
+db %00001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/hitmonlee.asm b/data/baseStats/hitmonlee.asm
new file mode 100755
index 00000000..11c69508
--- /dev/null
+++ b/data/baseStats/hitmonlee.asm
@@ -0,0 +1,29 @@
+HitmonleeBaseStats: ; 38f5a (e:4f5a)
+db DEX_HITMONLEE ; pokedex id
+db 50 ; base hp
+db 120 ; base attack
+db 53 ; base defense
+db 87 ; base speed
+db 35 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 45 ; catch rate
+db 139 ; base exp yield
+db $77 ; sprite dimensions
+dw HitmonleePicFront
+dw HitmonleePicBack
+; attacks known at lvl 0
+db DOUBLE_KICK
+db MEDITATE
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11000000
+db %11000110
+db %00001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/horsea.asm b/data/baseStats/horsea.asm
new file mode 100755
index 00000000..22d0824c
--- /dev/null
+++ b/data/baseStats/horsea.asm
@@ -0,0 +1,29 @@
+HorseaBaseStats: ; 39072 (e:5072)
+db DEX_HORSEA ; pokedex id
+db 30 ; base hp
+db 40 ; base attack
+db 70 ; base defense
+db 60 ; base speed
+db 70 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 225 ; catch rate
+db 83 ; base exp yield
+db $55 ; sprite dimensions
+dw HorseaPicFront
+dw HorseaPicBack
+; attacks known at lvl 0
+db BUBBLE
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %00111111
+db %00001000
+db %11000000
+db %11000010
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/hypno.asm b/data/baseStats/hypno.asm
new file mode 100755
index 00000000..269656d8
--- /dev/null
+++ b/data/baseStats/hypno.asm
@@ -0,0 +1,29 @@
+HypnoBaseStats: ; 38e5e (e:4e5e)
+db DEX_HYPNO ; pokedex id
+db 85 ; base hp
+db 73 ; base attack
+db 70 ; base defense
+db 67 ; base speed
+db 115 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 75 ; catch rate
+db 165 ; base exp yield
+db $77 ; sprite dimensions
+dw HypnoPicFront
+dw HypnoPicBack
+; attacks known at lvl 0
+db POUND
+db HYPNOSIS
+db DISABLE
+db CONFUSION
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %00001111
+db %11110000
+db %10000111
+db %00111010
+db %01000011
+db 0 ; padding
diff --git a/data/baseStats/ivysaur.asm b/data/baseStats/ivysaur.asm
new file mode 100755
index 00000000..16d75207
--- /dev/null
+++ b/data/baseStats/ivysaur.asm
@@ -0,0 +1,29 @@
+IvysaurBaseStats: ; 383fa (e:43fa)
+db DEX_IVYSAUR ; pokedex id
+db 60 ; base hp
+db 62 ; base attack
+db 63 ; base defense
+db 60 ; base speed
+db 80 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 141 ; base exp yield
+db $66 ; sprite dimensions
+dw IvysaurPicFront
+dw IvysaurPicBack
+; attacks known at lvl 0
+db TACKLE
+db GROWL
+db LEECH_SEED
+db 0
+db 3 ; growth rate
+; learnset
+db %10100100
+db %00000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/jigglypuff.asm b/data/baseStats/jigglypuff.asm
new file mode 100755
index 00000000..444e195c
--- /dev/null
+++ b/data/baseStats/jigglypuff.asm
@@ -0,0 +1,29 @@
+JigglypuffBaseStats: ; 38806 (e:4806)
+db DEX_JIGGLYPUFF ; pokedex id
+db 115 ; base hp
+db 45 ; base attack
+db 20 ; base defense
+db 20 ; base speed
+db 25 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 170 ; catch rate
+db 76 ; base exp yield
+db $55 ; sprite dimensions
+dw JigglypuffPicFront
+dw JigglypuffPicBack
+; attacks known at lvl 0
+db SING
+db 0
+db 0
+db 0
+db 4 ; growth rate
+; learnset
+db %10110001
+db %00111111
+db %10101111
+db %11110001
+db %10100011
+db %00111000
+db %01100011
+db 0 ; padding
diff --git a/data/baseStats/jolteon.asm b/data/baseStats/jolteon.asm
new file mode 100755
index 00000000..6cf004e3
--- /dev/null
+++ b/data/baseStats/jolteon.asm
@@ -0,0 +1,34 @@
+JolteonBaseStats: ; 39286 (e:5286)
+db DEX_JOLTEON ; pokedex id
+db 65 ; base hp
+db 65 ; base attack
+db 60 ; base defense
+db 130 ; base speed
+db 110 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 45 ; catch rate
+db 197 ; base exp yield
+db $66 ; sprite dimensions
+dw JolteonPicFront
+dw JolteonPicBack
+; attacks known at lvl 0
+db TACKLE
+IF !_YELLOW
+ db SAND_ATTACK
+ENDC
+IF _YELLOW
+ db TAIL_WHIP
+ENDC
+db QUICK_ATTACK
+db THUNDERSHOCK
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01000011
+db %10001000
+db %11000001
+db %11000011
+db %00011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/jynx.asm b/data/baseStats/jynx.asm
new file mode 100755
index 00000000..a6fe671e
--- /dev/null
+++ b/data/baseStats/jynx.asm
@@ -0,0 +1,29 @@
+JynxBaseStats: ; 39152 (e:5152)
+db DEX_JYNX ; pokedex id
+db 65 ; base hp
+db 50 ; base attack
+db 35 ; base defense
+db 95 ; base speed
+db 95 ; base special
+db ICE ; species type 1
+db PSYCHIC ; species type 2
+db 45 ; catch rate
+db 137 ; base exp yield
+db $66 ; sprite dimensions
+dw JynxPicFront
+dw JynxPicBack
+; attacks known at lvl 0
+db POUND
+db LOVELY_KISS
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %00001111
+db %11110000
+db %10000111
+db %00101000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/kabuto.asm b/data/baseStats/kabuto.asm
new file mode 100755
index 00000000..74f7539c
--- /dev/null
+++ b/data/baseStats/kabuto.asm
@@ -0,0 +1,29 @@
+KabutoBaseStats: ; 39312 (e:5312)
+db DEX_KABUTO ; pokedex id
+db 30 ; base hp
+db 80 ; base attack
+db 90 ; base defense
+db 55 ; base speed
+db 45 ; base special
+db ROCK ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 119 ; base exp yield
+db $55 ; sprite dimensions
+dw KabutoPicFront
+dw KabutoPicBack
+; attacks known at lvl 0
+db SCRATCH
+db HARDEN
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00111111
+db %00001000
+db %11000000
+db %00000011
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/kabutops.asm b/data/baseStats/kabutops.asm
new file mode 100755
index 00000000..7cf7ccb1
--- /dev/null
+++ b/data/baseStats/kabutops.asm
@@ -0,0 +1,29 @@
+KabutopsBaseStats: ; 3932e (e:532e)
+db DEX_KABUTOPS ; pokedex id
+db 60 ; base hp
+db 115 ; base attack
+db 105 ; base defense
+db 80 ; base speed
+db 70 ; base special
+db ROCK ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 201 ; base exp yield
+db $66 ; sprite dimensions
+dw KabutopsPicFront
+dw KabutopsPicBack
+; attacks known at lvl 0
+db SCRATCH
+db HARDEN
+db ABSORB
+db 0
+db 0 ; growth rate
+; learnset
+db %10110110
+db %01111111
+db %00001101
+db %11000000
+db %10000011
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/kadabra.asm b/data/baseStats/kadabra.asm
new file mode 100755
index 00000000..eecfb266
--- /dev/null
+++ b/data/baseStats/kadabra.asm
@@ -0,0 +1,35 @@
+KadabraBaseStats: ; 38ac2 (e:4ac2)
+db DEX_KADABRA ; pokedex id
+db 40 ; base hp
+db 35 ; base attack
+db 30 ; base defense
+db 105 ; base speed
+db 120 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 100 ; catch rate
+db 145 ; base exp yield
+db $66 ; sprite dimensions
+dw KadabraPicFront
+dw KadabraPicBack
+; attacks known at lvl 0
+db TELEPORT
+IF !_YELLOW
+ db CONFUSION
+ db DISABLE
+ENDC
+IF _YELLOW
+ DB KINESIS
+ db 0
+ENDC
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11111000
+db %10000111
+db %00111000
+db %01000011
+db 0 ; padding
diff --git a/data/baseStats/kakuna.asm b/data/baseStats/kakuna.asm
new file mode 100755
index 00000000..b503a8a9
--- /dev/null
+++ b/data/baseStats/kakuna.asm
@@ -0,0 +1,29 @@
+KakunaBaseStats: ; 3854a (e:454a)
+db DEX_KAKUNA ; pokedex id
+db 45 ; base hp
+db 25 ; base attack
+db 50 ; base defense
+db 35 ; base speed
+db 25 ; base special
+db BUG ; species type 1
+db POISON ; species type 2
+db 120 ; catch rate
+db 71 ; base exp yield
+db $55 ; sprite dimensions
+dw KakunaPicFront
+dw KakunaPicBack
+; attacks known at lvl 0
+db HARDEN
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db 0 ; padding
diff --git a/data/baseStats/kangaskhan.asm b/data/baseStats/kangaskhan.asm
new file mode 100755
index 00000000..7bc066f4
--- /dev/null
+++ b/data/baseStats/kangaskhan.asm
@@ -0,0 +1,29 @@
+KangaskhanBaseStats: ; 39056 (e:5056)
+db DEX_KANGASKHAN ; pokedex id
+db 105 ; base hp
+db 95 ; base attack
+db 80 ; base defense
+db 90 ; base speed
+db 40 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 45 ; catch rate
+db 175 ; base exp yield
+db $77 ; sprite dimensions
+dw KangaskhanPicFront
+dw KangaskhanPicBack
+; attacks known at lvl 0
+db COMET_PUNCH
+db RAGE
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %10001111
+db %11000111
+db %10100010
+db %10001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/kingler.asm b/data/baseStats/kingler.asm
new file mode 100755
index 00000000..8d4d7c56
--- /dev/null
+++ b/data/baseStats/kingler.asm
@@ -0,0 +1,29 @@
+KinglerBaseStats: ; 38e96 (e:4e96)
+db DEX_KINGLER ; pokedex id
+db 55 ; base hp
+db 130 ; base attack
+db 115 ; base defense
+db 75 ; base speed
+db 50 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 60 ; catch rate
+db 206 ; base exp yield
+db $77 ; sprite dimensions
+dw KinglerPicFront
+dw KinglerPicBack
+; attacks known at lvl 0
+db BUBBLE
+db LEER
+db VICEGRIP
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %01111111
+db %00001000
+db %11000000
+db %00000010
+db %00001000
+db %00110110
+db 0 ; padding
diff --git a/data/baseStats/koffing.asm b/data/baseStats/koffing.asm
new file mode 100755
index 00000000..7f86c2ef
--- /dev/null
+++ b/data/baseStats/koffing.asm
@@ -0,0 +1,29 @@
+KoffingBaseStats: ; 38fae (e:4fae)
+db DEX_KOFFING ; pokedex id
+db 40 ; base hp
+db 65 ; base attack
+db 95 ; base defense
+db 35 ; base speed
+db 60 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 190 ; catch rate
+db 114 ; base exp yield
+db $66 ; sprite dimensions
+dw KoffingPicFront
+dw KoffingPicBack
+; attacks known at lvl 0
+db TACKLE
+db SMOG
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %00000000
+db %10001000
+db %11000001
+db %00101010
+db %01001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/krabby.asm b/data/baseStats/krabby.asm
new file mode 100755
index 00000000..64ce47a0
--- /dev/null
+++ b/data/baseStats/krabby.asm
@@ -0,0 +1,29 @@
+KrabbyBaseStats: ; 38e7a (e:4e7a)
+db DEX_KRABBY ; pokedex id
+db 30 ; base hp
+db 105 ; base attack
+db 90 ; base defense
+db 50 ; base speed
+db 25 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 225 ; catch rate
+db 115 ; base exp yield
+db $55 ; sprite dimensions
+dw KrabbyPicFront
+dw KrabbyPicBack
+; attacks known at lvl 0
+db BUBBLE
+db LEER
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %00111111
+db %00001000
+db %11000000
+db %00000010
+db %00001000
+db %00110110
+db 0 ; padding
diff --git a/data/baseStats/lapras.asm b/data/baseStats/lapras.asm
new file mode 100755
index 00000000..1dfc3f7b
--- /dev/null
+++ b/data/baseStats/lapras.asm
@@ -0,0 +1,29 @@
+LaprasBaseStats: ; 39216 (e:5216)
+db DEX_LAPRAS ; pokedex id
+db 130 ; base hp
+db 85 ; base attack
+db 80 ; base defense
+db 60 ; base speed
+db 95 ; base special
+db WATER ; species type 1
+db ICE ; species type 2
+db 45 ; catch rate
+db 219 ; base exp yield
+db $77 ; sprite dimensions
+dw LaprasPicFront
+dw LaprasPicBack
+; attacks known at lvl 0
+db WATER_GUN
+db GROWL
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %11100000
+db %01111111
+db %11101000
+db %11010001
+db %10000011
+db %00101000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/lickitung.asm b/data/baseStats/lickitung.asm
new file mode 100755
index 00000000..810936ee
--- /dev/null
+++ b/data/baseStats/lickitung.asm
@@ -0,0 +1,29 @@
+LickitungBaseStats: ; 38f92 (e:4f92)
+db DEX_LICKITUNG ; pokedex id
+db 90 ; base hp
+db 55 ; base attack
+db 75 ; base defense
+db 30 ; base speed
+db 60 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 45 ; catch rate
+db 127 ; base exp yield
+db $77 ; sprite dimensions
+dw LickitungPicFront
+dw LickitungPicBack
+; attacks known at lvl 0
+db WRAP
+db SUPERSONIC
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110101
+db %01111111
+db %10001111
+db %11000111
+db %10100010
+db %00001000
+db %00110110
+db 0 ; padding
diff --git a/data/baseStats/machamp.asm b/data/baseStats/machamp.asm
new file mode 100755
index 00000000..9d105d0b
--- /dev/null
+++ b/data/baseStats/machamp.asm
@@ -0,0 +1,29 @@
+MachampBaseStats: ; 38b32 (e:4b32)
+db DEX_MACHAMP ; pokedex id
+db 90 ; base hp
+db 130 ; base attack
+db 80 ; base defense
+db 55 ; base speed
+db 65 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 45 ; catch rate
+db 193 ; base exp yield
+db $77 ; sprite dimensions
+dw MachampPicFront
+dw MachampPicBack
+; attacks known at lvl 0
+db KARATE_CHOP
+db LOW_KICK
+db LEER
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %00001111
+db %11001110
+db %10100110
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/machoke.asm b/data/baseStats/machoke.asm
new file mode 100755
index 00000000..4fd97567
--- /dev/null
+++ b/data/baseStats/machoke.asm
@@ -0,0 +1,29 @@
+MachokeBaseStats: ; 38b16 (e:4b16)
+db DEX_MACHOKE ; pokedex id
+db 80 ; base hp
+db 100 ; base attack
+db 70 ; base defense
+db 45 ; base speed
+db 50 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 90 ; catch rate
+db 146 ; base exp yield
+db $77 ; sprite dimensions
+dw MachokePicFront
+dw MachokePicBack
+; attacks known at lvl 0
+db KARATE_CHOP
+db LOW_KICK
+db LEER
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11001110
+db %10100110
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/machop.asm b/data/baseStats/machop.asm
new file mode 100755
index 00000000..2b9250f1
--- /dev/null
+++ b/data/baseStats/machop.asm
@@ -0,0 +1,29 @@
+MachopBaseStats: ; 38afa (e:4afa)
+db DEX_MACHOP ; pokedex id
+db 70 ; base hp
+db 80 ; base attack
+db 50 ; base defense
+db 35 ; base speed
+db 35 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 180 ; catch rate
+db 88 ; base exp yield
+db $55 ; sprite dimensions
+dw MachopPicFront
+dw MachopPicBack
+; attacks known at lvl 0
+db KARATE_CHOP
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00000011
+db %00001111
+db %11001110
+db %10100110
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/magikarp.asm b/data/baseStats/magikarp.asm
new file mode 100755
index 00000000..a8a0ee13
--- /dev/null
+++ b/data/baseStats/magikarp.asm
@@ -0,0 +1,29 @@
+MagikarpBaseStats: ; 391de (e:51de)
+db DEX_MAGIKARP ; pokedex id
+db 20 ; base hp
+db 10 ; base attack
+db 55 ; base defense
+db 80 ; base speed
+db 20 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 255 ; catch rate
+db 20 ; base exp yield
+db $66 ; sprite dimensions
+dw MagikarpPicFront
+dw MagikarpPicBack
+; attacks known at lvl 0
+db SPLASH
+db 0
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db 0 ; padding
diff --git a/data/baseStats/magmar.asm b/data/baseStats/magmar.asm
new file mode 100755
index 00000000..915ed593
--- /dev/null
+++ b/data/baseStats/magmar.asm
@@ -0,0 +1,29 @@
+MagmarBaseStats: ; 3918a (e:518a)
+db DEX_MAGMAR ; pokedex id
+db 65 ; base hp
+db 95 ; base attack
+db 57 ; base defense
+db 93 ; base speed
+db 85 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 45 ; catch rate
+db 167 ; base exp yield
+db $66 ; sprite dimensions
+dw MagmarPicFront
+dw MagmarPicBack
+; attacks known at lvl 0
+db EMBER
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %00001111
+db %11110000
+db %10100110
+db %00101000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/magnemite.asm b/data/baseStats/magnemite.asm
new file mode 100755
index 00000000..d6f5d802
--- /dev/null
+++ b/data/baseStats/magnemite.asm
@@ -0,0 +1,29 @@
+MagnemiteBaseStats: ; 38c9e (e:4c9e)
+db DEX_MAGNEMITE ; pokedex id
+db 25 ; base hp
+db 35 ; base attack
+db 70 ; base defense
+db 45 ; base speed
+db 95 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 190 ; catch rate
+db 89 ; base exp yield
+db $55 ; sprite dimensions
+dw MagnemitePicFront
+dw MagnemitePicBack
+; attacks known at lvl 0
+db TACKLE
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %00000011
+db %10001000
+db %11100001
+db %01000011
+db %00011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/magneton.asm b/data/baseStats/magneton.asm
new file mode 100755
index 00000000..4cc2ad79
--- /dev/null
+++ b/data/baseStats/magneton.asm
@@ -0,0 +1,29 @@
+MagnetonBaseStats: ; 38cba (e:4cba)
+db DEX_MAGNETON ; pokedex id
+db 50 ; base hp
+db 60 ; base attack
+db 95 ; base defense
+db 70 ; base speed
+db 120 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 60 ; catch rate
+db 161 ; base exp yield
+db $66 ; sprite dimensions
+dw MagnetonPicFront
+dw MagnetonPicBack
+; attacks known at lvl 0
+db TACKLE
+db SONICBOOM
+db THUNDERSHOCK
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %01000011
+db %10001000
+db %11100001
+db %01000011
+db %00011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/mankey.asm b/data/baseStats/mankey.asm
new file mode 100755
index 00000000..6177c52f
--- /dev/null
+++ b/data/baseStats/mankey.asm
@@ -0,0 +1,29 @@
+MankeyBaseStats: ; 389e2 (e:49e2)
+db DEX_MANKEY ; pokedex id
+db 40 ; base hp
+db 80 ; base attack
+db 35 ; base defense
+db 70 ; base speed
+db 35 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 190 ; catch rate
+db 74 ; base exp yield
+db $55 ; sprite dimensions
+dw MankeyPicFront
+dw MankeyPicBack
+; attacks known at lvl 0
+db SCRATCH
+db LEER
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %10000011
+db %10001111
+db %11001001
+db %11000110
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/marowak.asm b/data/baseStats/marowak.asm
new file mode 100755
index 00000000..6a209361
--- /dev/null
+++ b/data/baseStats/marowak.asm
@@ -0,0 +1,36 @@
+MarowakBaseStats: ; 38f3e (e:4f3e)
+db DEX_MAROWAK ; pokedex id
+db 60 ; base hp
+db 80 ; base attack
+db 110 ; base defense
+db 45 ; base speed
+db 50 ; base special
+db GROUND ; species type 1
+db GROUND ; species type 2
+db 75 ; catch rate
+db 124 ; base exp yield
+db $66 ; sprite dimensions
+dw MarowakPicFront
+dw MarowakPicBack
+; attacks known at lvl 0
+db BONE_CLUB
+IF !_YELLOW
+ db GROWL
+ db LEER
+ db FOCUS_ENERGY
+ENDC
+IF _YELLOW
+ db TAIL_WHIP
+ db 0
+ db 0
+ENDC
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %00001111
+db %11001110
+db %10100010
+db %00001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/meowth.asm b/data/baseStats/meowth.asm
new file mode 100755
index 00000000..89ccdf2f
--- /dev/null
+++ b/data/baseStats/meowth.asm
@@ -0,0 +1,29 @@
+MeowthBaseStats: ; 38972 (e:4972)
+db DEX_MEOWTH ; pokedex id
+db 40 ; base hp
+db 45 ; base attack
+db 35 ; base defense
+db 90 ; base speed
+db 40 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 255 ; catch rate
+db 69 ; base exp yield
+db $55 ; sprite dimensions
+dw MeowthPicFront
+dw MeowthPicBack
+; attacks known at lvl 0
+db SCRATCH
+db GROWL
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %10001111
+db %10001000
+db %11000001
+db %11000010
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/metapod.asm b/data/baseStats/metapod.asm
new file mode 100755
index 00000000..2a75ff55
--- /dev/null
+++ b/data/baseStats/metapod.asm
@@ -0,0 +1,29 @@
+MetapodBaseStats: ; 384f6 (e:44f6)
+db DEX_METAPOD ; pokedex id
+db 50 ; base hp
+db 20 ; base attack
+db 55 ; base defense
+db 30 ; base speed
+db 25 ; base special
+db BUG ; species type 1
+db BUG ; species type 2
+db 120 ; catch rate
+db 72 ; base exp yield
+db $55 ; sprite dimensions
+dw MetapodPicFront
+dw MetapodPicBack
+; attacks known at lvl 0
+db HARDEN
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db 0 ; padding
diff --git a/data/baseStats/mew.asm b/data/baseStats/mew.asm
new file mode 100755
index 00000000..3a6d3327
--- /dev/null
+++ b/data/baseStats/mew.asm
@@ -0,0 +1,29 @@
+MewBaseStats: ; 425b (1:425b)
+db DEX_MEW ; pokedex id
+db 100 ; base hp
+db 100 ; base attack
+db 100 ; base defense
+db 100 ; base speed
+db 100 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 45 ; catch rate
+db 64 ; base exp yield
+db $55 ; sprite dimensions
+dw MewPicFront
+dw MewPicBack
+; attacks known at lvl 0
+db POUND
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; include learnset directly
+db %11111111
+db %11111111
+db %11111111
+db %11111111
+db %11111111
+db %11111111
+db %11111111
+db %11111111 ; usually spacing
diff --git a/data/baseStats/mewtwo.asm b/data/baseStats/mewtwo.asm
new file mode 100755
index 00000000..a5ddc958
--- /dev/null
+++ b/data/baseStats/mewtwo.asm
@@ -0,0 +1,29 @@
+MewtwoBaseStats: ; 3942a (e:542a)
+db DEX_MEWTWO ; pokedex id
+db 106 ; base hp
+db 110 ; base attack
+db 90 ; base defense
+db 130 ; base speed
+db 154 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 3 ; catch rate
+db 220 ; base exp yield
+db $77 ; sprite dimensions
+dw MewtwoPicFront
+dw MewtwoPicBack
+; attacks known at lvl 0
+db CONFUSION
+db DISABLE
+db SWIFT
+db PSYCHIC_M
+db 5 ; growth rate
+; learnset
+db %10110001
+db %11111111
+db %10101111
+db %11110001
+db %10101111
+db %00111000
+db %01100011
+db 0 ; padding
diff --git a/data/baseStats/moltres.asm b/data/baseStats/moltres.asm
new file mode 100755
index 00000000..85699f6e
--- /dev/null
+++ b/data/baseStats/moltres.asm
@@ -0,0 +1,29 @@
+MoltresBaseStats: ; 393ba (e:53ba)
+db DEX_MOLTRES ; pokedex id
+db 90 ; base hp
+db 100 ; base attack
+db 90 ; base defense
+db 90 ; base speed
+db 125 ; base special
+db FIRE ; species type 1
+db FLYING ; species type 2
+db 3 ; catch rate
+db 217 ; base exp yield
+db $77 ; sprite dimensions
+dw MoltresPicFront
+dw MoltresPicBack
+; attacks known at lvl 0
+db PECK
+db FIRE_SPIN
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %00001000
+db %11000000
+db %01100011
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/mrmime.asm b/data/baseStats/mrmime.asm
new file mode 100755
index 00000000..8d3d8bd7
--- /dev/null
+++ b/data/baseStats/mrmime.asm
@@ -0,0 +1,29 @@
+MrMimeBaseStats: ; 3911a (e:511a)
+db DEX_MR_MIME ; pokedex id
+db 40 ; base hp
+db 45 ; base attack
+db 65 ; base defense
+db 90 ; base speed
+db 100 ; base special
+db PSYCHIC ; species type 1
+db PSYCHIC ; species type 2
+db 45 ; catch rate
+db 136 ; base exp yield
+db $66 ; sprite dimensions
+dw MrMimePicFront
+dw MrMimePicBack
+; attacks known at lvl 0
+db CONFUSION
+db BARRIER
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %01000011
+db %10101111
+db %11110001
+db %10000111
+db %00111000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/muk.asm b/data/baseStats/muk.asm
new file mode 100755
index 00000000..79c1e1be
--- /dev/null
+++ b/data/baseStats/muk.asm
@@ -0,0 +1,29 @@
+MukBaseStats: ; 38d7e (e:4d7e)
+db DEX_MUK ; pokedex id
+db 105 ; base hp
+db 105 ; base attack
+db 75 ; base defense
+db 50 ; base speed
+db 65 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 75 ; catch rate
+db 157 ; base exp yield
+db $77 ; sprite dimensions
+dw MukPicFront
+dw MukPicBack
+; attacks known at lvl 0
+db POUND
+db DISABLE
+db POISON_GAS
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01000000
+db %10011000
+db %11000001
+db %00101010
+db %01001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/nidoking.asm b/data/baseStats/nidoking.asm
new file mode 100755
index 00000000..55cd235d
--- /dev/null
+++ b/data/baseStats/nidoking.asm
@@ -0,0 +1,29 @@
+NidokingBaseStats: ; 3877a (e:477a)
+db DEX_NIDOKING ; pokedex id
+db 81 ; base hp
+db 92 ; base attack
+db 77 ; base defense
+db 85 ; base speed
+db 75 ; base special
+db POISON ; species type 1
+db GROUND ; species type 2
+db 45 ; catch rate
+db 195 ; base exp yield
+db $77 ; sprite dimensions
+dw NidokingPicFront
+dw NidokingPicBack
+; attacks known at lvl 0
+db TACKLE
+db HORN_ATTACK
+db POISON_STING
+db THRASH
+db 3 ; growth rate
+; learnset
+db %11110001
+db %11111111
+db %10001111
+db %11000111
+db %10100011
+db %10001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/nidoqueen.asm b/data/baseStats/nidoqueen.asm
new file mode 100755
index 00000000..12054109
--- /dev/null
+++ b/data/baseStats/nidoqueen.asm
@@ -0,0 +1,29 @@
+NidoqueenBaseStats: ; 38726 (e:4726)
+db DEX_NIDOQUEEN ; pokedex id
+db 90 ; base hp
+db 82 ; base attack
+db 87 ; base defense
+db 76 ; base speed
+db 75 ; base special
+db POISON ; species type 1
+db GROUND ; species type 2
+db 45 ; catch rate
+db 194 ; base exp yield
+db $77 ; sprite dimensions
+dw NidoqueenPicFront
+dw NidoqueenPicBack
+; attacks known at lvl 0
+db TACKLE
+db SCRATCH
+db TAIL_WHIP
+db BODY_SLAM
+db 3 ; growth rate
+; learnset
+db %11110001
+db %11111111
+db %10001111
+db %11000111
+db %10100011
+db %10001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/nidoranf.asm b/data/baseStats/nidoranf.asm
new file mode 100755
index 00000000..9a399a15
--- /dev/null
+++ b/data/baseStats/nidoranf.asm
@@ -0,0 +1,29 @@
+NidoranFBaseStats: ; 386ee (e:46ee)
+db DEX_NIDORAN_F ; pokedex id
+db 55 ; base hp
+db 47 ; base attack
+db 52 ; base defense
+db 41 ; base speed
+db 40 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 235 ; catch rate
+db 59 ; base exp yield
+db $55 ; sprite dimensions
+dw NidoranFPicFront
+dw NidoranFPicBack
+; attacks known at lvl 0
+db GROWL
+db TACKLE
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10100000
+db %00100011
+db %10001000
+db %11000001
+db %10000011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/nidoranm.asm b/data/baseStats/nidoranm.asm
new file mode 100755
index 00000000..646c94d3
--- /dev/null
+++ b/data/baseStats/nidoranm.asm
@@ -0,0 +1,29 @@
+NidoranMBaseStats: ; 38742 (e:4742)
+db DEX_NIDORAN_M ; pokedex id
+db 46 ; base hp
+db 57 ; base attack
+db 40 ; base defense
+db 50 ; base speed
+db 40 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 235 ; catch rate
+db 60 ; base exp yield
+db $55 ; sprite dimensions
+dw NidoranMPicFront
+dw NidoranMPicBack
+; attacks known at lvl 0
+db LEER
+db TACKLE
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %11100000
+db %00100011
+db %10001000
+db %11000001
+db %10000011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/nidorina.asm b/data/baseStats/nidorina.asm
new file mode 100755
index 00000000..6787022d
--- /dev/null
+++ b/data/baseStats/nidorina.asm
@@ -0,0 +1,29 @@
+NidorinaBaseStats: ; 3870a (e:470a)
+db DEX_NIDORINA ; pokedex id
+db 70 ; base hp
+db 62 ; base attack
+db 67 ; base defense
+db 56 ; base speed
+db 55 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 120 ; catch rate
+db 117 ; base exp yield
+db $66 ; sprite dimensions
+dw NidorinaPicFront
+dw NidorinaPicBack
+; attacks known at lvl 0
+db GROWL
+db TACKLE
+db SCRATCH
+db 0
+db 3 ; growth rate
+; learnset
+db %11100000
+db %00111111
+db %10001000
+db %11000001
+db %10000011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/nidorino.asm b/data/baseStats/nidorino.asm
new file mode 100755
index 00000000..ee64fdaf
--- /dev/null
+++ b/data/baseStats/nidorino.asm
@@ -0,0 +1,29 @@
+NidorinoBaseStats: ; 3875e (e:475e)
+db DEX_NIDORINO ; pokedex id
+db 61 ; base hp
+db 72 ; base attack
+db 57 ; base defense
+db 65 ; base speed
+db 55 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 120 ; catch rate
+db 118 ; base exp yield
+db $66 ; sprite dimensions
+dw NidorinoPicFront
+dw NidorinoPicBack
+; attacks known at lvl 0
+db LEER
+db TACKLE
+db HORN_ATTACK
+db 0
+db 3 ; growth rate
+; learnset
+db %11100000
+db %00111111
+db %10001000
+db %11000001
+db %10000011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/ninetails.asm b/data/baseStats/ninetails.asm
new file mode 100755
index 00000000..a79adb03
--- /dev/null
+++ b/data/baseStats/ninetails.asm
@@ -0,0 +1,29 @@
+NinetalesBaseStats: ; 387ea (e:47ea)
+db DEX_NINETALES ; pokedex id
+db 73 ; base hp
+db 76 ; base attack
+db 75 ; base defense
+db 100 ; base speed
+db 100 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 75 ; catch rate
+db 178 ; base exp yield
+db $77 ; sprite dimensions
+dw NinetalesPicFront
+dw NinetalesPicBack
+; attacks known at lvl 0
+db EMBER
+db TAIL_WHIP
+db QUICK_ATTACK
+db ROAR
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01000011
+db %00001000
+db %11001000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/oddish.asm b/data/baseStats/oddish.asm
new file mode 100755
index 00000000..fa4b42ae
--- /dev/null
+++ b/data/baseStats/oddish.asm
@@ -0,0 +1,29 @@
+OddishBaseStats: ; 38876 (e:4876)
+db DEX_ODDISH ; pokedex id
+db 45 ; base hp
+db 50 ; base attack
+db 55 ; base defense
+db 30 ; base speed
+db 75 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 255 ; catch rate
+db 78 ; base exp yield
+db $55 ; sprite dimensions
+dw OddishPicFront
+dw OddishPicBack
+; attacks known at lvl 0
+db ABSORB
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %00100100
+db %00000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/omanyte.asm b/data/baseStats/omanyte.asm
new file mode 100755
index 00000000..49deceeb
--- /dev/null
+++ b/data/baseStats/omanyte.asm
@@ -0,0 +1,29 @@
+OmanyteBaseStats: ; 392da (e:52da)
+db DEX_OMANYTE ; pokedex id
+db 35 ; base hp
+db 40 ; base attack
+db 100 ; base defense
+db 35 ; base speed
+db 90 ; base special
+db ROCK ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 120 ; base exp yield
+db $55 ; sprite dimensions
+dw OmanytePicFront
+dw OmanytePicBack
+; attacks known at lvl 0
+db WATER_GUN
+db WITHDRAW
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00111111
+db %00001000
+db %11000000
+db %00000011
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/omastar.asm b/data/baseStats/omastar.asm
new file mode 100755
index 00000000..d1462ac3
--- /dev/null
+++ b/data/baseStats/omastar.asm
@@ -0,0 +1,29 @@
+OmastarBaseStats: ; 392f6 (e:52f6)
+db DEX_OMASTAR ; pokedex id
+db 70 ; base hp
+db 60 ; base attack
+db 125 ; base defense
+db 55 ; base speed
+db 115 ; base special
+db ROCK ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 199 ; base exp yield
+db $66 ; sprite dimensions
+dw OmastarPicFront
+dw OmastarPicBack
+; attacks known at lvl 0
+db WATER_GUN
+db WITHDRAW
+db HORN_ATTACK
+db 0
+db 0 ; growth rate
+; learnset
+db %11100000
+db %01111111
+db %00001101
+db %11000000
+db %10000011
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/onix.asm b/data/baseStats/onix.asm
new file mode 100755
index 00000000..2fd6d6d2
--- /dev/null
+++ b/data/baseStats/onix.asm
@@ -0,0 +1,29 @@
+OnixBaseStats: ; 38e26 (e:4e26)
+db DEX_ONIX ; pokedex id
+db 35 ; base hp
+db 45 ; base attack
+db 160 ; base defense
+db 70 ; base speed
+db 30 ; base special
+db ROCK ; species type 1
+db GROUND ; species type 2
+db 45 ; catch rate
+db 108 ; base exp yield
+db $77 ; sprite dimensions
+dw OnixPicFront
+dw OnixPicBack
+; attacks known at lvl 0
+db TACKLE
+db SCREECH
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00000011
+db %00001000
+db %11001110
+db %10001010
+db %11001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/paras.asm b/data/baseStats/paras.asm
new file mode 100755
index 00000000..8fbb729c
--- /dev/null
+++ b/data/baseStats/paras.asm
@@ -0,0 +1,29 @@
+ParasBaseStats: ; 388ca (e:48ca)
+db DEX_PARAS ; pokedex id
+db 35 ; base hp
+db 70 ; base attack
+db 55 ; base defense
+db 25 ; base speed
+db 55 ; base special
+db BUG ; species type 1
+db GRASS ; species type 2
+db 190 ; catch rate
+db 70 ; base exp yield
+db $55 ; sprite dimensions
+dw ParasPicFront
+dw ParasPicBack
+; attacks known at lvl 0
+db SCRATCH
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %00000011
+db %00111000
+db %11001000
+db %10000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/parasect.asm b/data/baseStats/parasect.asm
new file mode 100755
index 00000000..81231c0f
--- /dev/null
+++ b/data/baseStats/parasect.asm
@@ -0,0 +1,29 @@
+ParasectBaseStats: ; 388e6 (e:48e6)
+db DEX_PARASECT ; pokedex id
+db 60 ; base hp
+db 95 ; base attack
+db 80 ; base defense
+db 30 ; base speed
+db 80 ; base special
+db BUG ; species type 1
+db GRASS ; species type 2
+db 75 ; catch rate
+db 128 ; base exp yield
+db $77 ; sprite dimensions
+dw ParasectPicFront
+dw ParasectPicBack
+; attacks known at lvl 0
+db SCRATCH
+db STUN_SPORE
+db LEECH_LIFE
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00111000
+db %11001000
+db %10000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/persian.asm b/data/baseStats/persian.asm
new file mode 100755
index 00000000..ddf889b9
--- /dev/null
+++ b/data/baseStats/persian.asm
@@ -0,0 +1,29 @@
+PersianBaseStats: ; 3898e (e:498e)
+db DEX_PERSIAN ; pokedex id
+db 65 ; base hp
+db 70 ; base attack
+db 60 ; base defense
+db 115 ; base speed
+db 65 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 90 ; catch rate
+db 148 ; base exp yield
+db $77 ; sprite dimensions
+dw PersianPicFront
+dw PersianPicBack
+; attacks known at lvl 0
+db SCRATCH
+db GROWL
+db BITE
+db SCREECH
+db 0 ; growth rate
+; learnset
+db %10100000
+db %11001111
+db %10001000
+db %11000001
+db %11000010
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/pidgeot.asm b/data/baseStats/pidgeot.asm
new file mode 100755
index 00000000..6367cd24
--- /dev/null
+++ b/data/baseStats/pidgeot.asm
@@ -0,0 +1,29 @@
+PidgeotBaseStats: ; 385ba (e:45ba)
+db DEX_PIDGEOT ; pokedex id
+db 83 ; base hp
+db 80 ; base attack
+db 75 ; base defense
+db 91 ; base speed
+db 70 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 172 ; base exp yield
+db $77 ; sprite dimensions
+dw PidgeotPicFront
+dw PidgeotPicBack
+; attacks known at lvl 0
+db GUST
+db SAND_ATTACK
+db QUICK_ATTACK
+db 0
+db 3 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %00001000
+db %11000000
+db %01000011
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/pidgeotto.asm b/data/baseStats/pidgeotto.asm
new file mode 100755
index 00000000..65a39130
--- /dev/null
+++ b/data/baseStats/pidgeotto.asm
@@ -0,0 +1,29 @@
+PidgeottoBaseStats: ; 3859e (e:459e)
+db DEX_PIDGEOTTO ; pokedex id
+db 63 ; base hp
+db 60 ; base attack
+db 55 ; base defense
+db 71 ; base speed
+db 50 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 120 ; catch rate
+db 113 ; base exp yield
+db $66 ; sprite dimensions
+dw PidgeottoPicFront
+dw PidgeottoPicBack
+; attacks known at lvl 0
+db GUST
+db SAND_ATTACK
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %00101010
+db %00000011
+db %00001000
+db %11000000
+db %01000011
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/pidgey.asm b/data/baseStats/pidgey.asm
new file mode 100755
index 00000000..81bbb12a
--- /dev/null
+++ b/data/baseStats/pidgey.asm
@@ -0,0 +1,29 @@
+PidgeyBaseStats: ; 38582 (e:4582)
+db DEX_PIDGEY ; pokedex id
+db 40 ; base hp
+db 45 ; base attack
+db 40 ; base defense
+db 56 ; base speed
+db 35 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 255 ; catch rate
+db 55 ; base exp yield
+db $55 ; sprite dimensions
+dw PidgeyPicFront
+dw PidgeyPicBack
+; attacks known at lvl 0
+db GUST
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %00101010
+db %00000011
+db %00001000
+db %11000000
+db %01000011
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/pikachu.asm b/data/baseStats/pikachu.asm
new file mode 100755
index 00000000..21e4d32d
--- /dev/null
+++ b/data/baseStats/pikachu.asm
@@ -0,0 +1,29 @@
+PikachuBaseStats: ; 3867e (e:467e)
+db DEX_PIKACHU ; pokedex id
+db 35 ; base hp
+db 55 ; base attack
+db 30 ; base defense
+db 90 ; base speed
+db 50 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 190 ; catch rate
+db 82 ; base exp yield
+db $55 ; sprite dimensions
+dw PikachuPicFront
+dw PikachuPicBack
+; attacks known at lvl 0
+db THUNDERSHOCK
+db GROWL
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %10000011
+db %10001101
+db %11000001
+db %11000011
+db %00011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/pinsir.asm b/data/baseStats/pinsir.asm
new file mode 100755
index 00000000..1e57fcc4
--- /dev/null
+++ b/data/baseStats/pinsir.asm
@@ -0,0 +1,29 @@
+PinsirBaseStats: ; 391a6 (e:51a6)
+db DEX_PINSIR ; pokedex id
+db 65 ; base hp
+db 125 ; base attack
+db 100 ; base defense
+db 85 ; base speed
+db 55 ; base special
+db BUG ; species type 1
+db BUG ; species type 2
+db 45 ; catch rate
+db 200 ; base exp yield
+db $77 ; sprite dimensions
+dw PinsirPicFront
+dw PinsirPicBack
+; attacks known at lvl 0
+db VICEGRIP
+db 0
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00001101
+db %11000000
+db %00000010
+db %00001000
+db %00100110
+db 0 ; padding
diff --git a/data/baseStats/poliwag.asm b/data/baseStats/poliwag.asm
new file mode 100755
index 00000000..3d1e9534
--- /dev/null
+++ b/data/baseStats/poliwag.asm
@@ -0,0 +1,29 @@
+PoliwagBaseStats: ; 38a52 (e:4a52)
+db DEX_POLIWAG ; pokedex id
+db 40 ; base hp
+db 50 ; base attack
+db 40 ; base defense
+db 90 ; base speed
+db 40 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 255 ; catch rate
+db 77 ; base exp yield
+db $55 ; sprite dimensions
+dw PoliwagPicFront
+dw PoliwagPicBack
+; attacks known at lvl 0
+db BUBBLE
+db 0
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10100000
+db %00111111
+db %00001000
+db %11010000
+db %10000010
+db %00101000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/poliwhirl.asm b/data/baseStats/poliwhirl.asm
new file mode 100755
index 00000000..1b9cc03d
--- /dev/null
+++ b/data/baseStats/poliwhirl.asm
@@ -0,0 +1,29 @@
+PoliwhirlBaseStats: ; 38a6e (e:4a6e)
+db DEX_POLIWHIRL ; pokedex id
+db 65 ; base hp
+db 65 ; base attack
+db 65 ; base defense
+db 90 ; base speed
+db 50 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 120 ; catch rate
+db 131 ; base exp yield
+db $66 ; sprite dimensions
+dw PoliwhirlPicFront
+dw PoliwhirlPicBack
+; attacks known at lvl 0
+db BUBBLE
+db HYPNOSIS
+db WATER_GUN
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00111111
+db %00001111
+db %11010110
+db %10000110
+db %00101000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/poliwrath.asm b/data/baseStats/poliwrath.asm
new file mode 100755
index 00000000..3a891209
--- /dev/null
+++ b/data/baseStats/poliwrath.asm
@@ -0,0 +1,29 @@
+PoliwrathBaseStats: ; 38a8a (e:4a8a)
+db DEX_POLIWRATH ; pokedex id
+db 90 ; base hp
+db 85 ; base attack
+db 95 ; base defense
+db 70 ; base speed
+db 70 ; base special
+db WATER ; species type 1
+db FIGHTING ; species type 2
+db 45 ; catch rate
+db 185 ; base exp yield
+db $77 ; sprite dimensions
+dw PoliwrathPicFront
+dw PoliwrathPicBack
+; attacks known at lvl 0
+db HYPNOSIS
+db WATER_GUN
+db DOUBLESLAP
+db BODY_SLAM
+db 3 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %00001111
+db %11010110
+db %10000110
+db %00101000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/ponyta.asm b/data/baseStats/ponyta.asm
new file mode 100755
index 00000000..2b99f4b1
--- /dev/null
+++ b/data/baseStats/ponyta.asm
@@ -0,0 +1,29 @@
+PonytaBaseStats: ; 38c2e (e:4c2e)
+db DEX_PONYTA ; pokedex id
+db 50 ; base hp
+db 85 ; base attack
+db 55 ; base defense
+db 90 ; base speed
+db 65 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 190 ; catch rate
+db 152 ; base exp yield
+db $66 ; sprite dimensions
+dw PonytaPicFront
+dw PonytaPicBack
+; attacks known at lvl 0
+db EMBER
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %11100000
+db %00000011
+db %00001000
+db %11000000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/porygon.asm b/data/baseStats/porygon.asm
new file mode 100755
index 00000000..37a25174
--- /dev/null
+++ b/data/baseStats/porygon.asm
@@ -0,0 +1,29 @@
+PorygonBaseStats: ; 392be (e:52be)
+db DEX_PORYGON ; pokedex id
+db 65 ; base hp
+db 60 ; base attack
+db 70 ; base defense
+db 40 ; base speed
+db 75 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 45 ; catch rate
+db 130 ; base exp yield
+db $66 ; sprite dimensions
+dw PorygonPicFront
+dw PorygonPicBack
+; attacks known at lvl 0
+db TACKLE
+db SHARPEN
+db CONVERSION
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %01110011
+db %10001000
+db %11110001
+db %11000011
+db %00111000
+db %01000011
+db 0 ; padding
diff --git a/data/baseStats/primeape.asm b/data/baseStats/primeape.asm
new file mode 100755
index 00000000..ea649a6f
--- /dev/null
+++ b/data/baseStats/primeape.asm
@@ -0,0 +1,34 @@
+PrimeapeBaseStats: ; 389fe (e:49fe)
+db DEX_PRIMEAPE ; pokedex id
+db 65 ; base hp
+db 105 ; base attack
+db 60 ; base defense
+db 95 ; base speed
+db 60 ; base special
+db FIGHTING ; species type 1
+db FIGHTING ; species type 2
+db 75 ; catch rate
+db 149 ; base exp yield
+db $77 ; sprite dimensions
+dw PrimeapePicFront
+dw PrimeapePicBack
+; attacks known at lvl 0
+db SCRATCH
+IF !_YELLOW
+ db LEER
+ENDC
+db KARATE_CHOP
+db FURY_SWIPES
+IF _YELLOW
+ db LOW_KICK
+ENDC
+db 0 ; growth rate
+; learnset
+db %10110001
+db %11000011
+db %10001111
+db %11001001
+db %11000110
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/psyduck.asm b/data/baseStats/psyduck.asm
new file mode 100755
index 00000000..921fd7e8
--- /dev/null
+++ b/data/baseStats/psyduck.asm
@@ -0,0 +1,29 @@
+PsyduckBaseStats: ; 389aa (e:49aa)
+db DEX_PSYDUCK ; pokedex id
+db 50 ; base hp
+db 52 ; base attack
+db 48 ; base defense
+db 55 ; base speed
+db 50 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 190 ; catch rate
+db 80 ; base exp yield
+db $55 ; sprite dimensions
+dw PsyduckPicFront
+dw PsyduckPicBack
+; attacks known at lvl 0
+db SCRATCH
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %10111111
+db %00001111
+db %11001000
+db %11000010
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/raichu.asm b/data/baseStats/raichu.asm
new file mode 100755
index 00000000..6bd2f940
--- /dev/null
+++ b/data/baseStats/raichu.asm
@@ -0,0 +1,29 @@
+RaichuBaseStats: ; 3869a (e:469a)
+db DEX_RAICHU ; pokedex id
+db 60 ; base hp
+db 90 ; base attack
+db 55 ; base defense
+db 100 ; base speed
+db 90 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 75 ; catch rate
+db 122 ; base exp yield
+db $77 ; sprite dimensions
+dw RaichuPicFront
+dw RaichuPicBack
+; attacks known at lvl 0
+db THUNDERSHOCK
+db GROWL
+db THUNDER_WAVE
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %11000011
+db %10001101
+db %11000001
+db %11000011
+db %00011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/rapidash.asm b/data/baseStats/rapidash.asm
new file mode 100755
index 00000000..7d6064ab
--- /dev/null
+++ b/data/baseStats/rapidash.asm
@@ -0,0 +1,29 @@
+RapidashBaseStats: ; 38c4a (e:4c4a)
+db DEX_RAPIDASH ; pokedex id
+db 65 ; base hp
+db 100 ; base attack
+db 70 ; base defense
+db 105 ; base speed
+db 80 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 60 ; catch rate
+db 192 ; base exp yield
+db $77 ; sprite dimensions
+dw RapidashPicFront
+dw RapidashPicBack
+; attacks known at lvl 0
+db EMBER
+db TAIL_WHIP
+db STOMP
+db GROWL
+db 0 ; growth rate
+; learnset
+db %11100000
+db %01000011
+db %00001000
+db %11000000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/raticate.asm b/data/baseStats/raticate.asm
new file mode 100755
index 00000000..301b7b21
--- /dev/null
+++ b/data/baseStats/raticate.asm
@@ -0,0 +1,29 @@
+RaticateBaseStats: ; 385f2 (e:45f2)
+db DEX_RATICATE ; pokedex id
+db 55 ; base hp
+db 81 ; base attack
+db 60 ; base defense
+db 97 ; base speed
+db 50 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 90 ; catch rate
+db 116 ; base exp yield
+db $66 ; sprite dimensions
+dw RaticatePicFront
+dw RaticatePicBack
+; attacks known at lvl 0
+db TACKLE
+db TAIL_WHIP
+db QUICK_ATTACK
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01111111
+db %10001000
+db %11001001
+db %11000010
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/rattata.asm b/data/baseStats/rattata.asm
new file mode 100755
index 00000000..72dbd8ef
--- /dev/null
+++ b/data/baseStats/rattata.asm
@@ -0,0 +1,29 @@
+RattataBaseStats: ; 385d6 (e:45d6)
+db DEX_RATTATA ; pokedex id
+db 30 ; base hp
+db 56 ; base attack
+db 35 ; base defense
+db 72 ; base speed
+db 25 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 255 ; catch rate
+db 57 ; base exp yield
+db $55 ; sprite dimensions
+dw RattataPicFront
+dw RattataPicBack
+; attacks known at lvl 0
+db TACKLE
+db TAIL_WHIP
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00101111
+db %10001000
+db %11001001
+db %11000010
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/rhydon.asm b/data/baseStats/rhydon.asm
new file mode 100755
index 00000000..4a867c05
--- /dev/null
+++ b/data/baseStats/rhydon.asm
@@ -0,0 +1,29 @@
+RhydonBaseStats: ; 39002 (e:5002)
+db DEX_RHYDON ; pokedex id
+db 105 ; base hp
+db 130 ; base attack
+db 120 ; base defense
+db 40 ; base speed
+db 45 ; base special
+db GROUND ; species type 1
+db ROCK ; species type 2
+db 60 ; catch rate
+db 204 ; base exp yield
+db $77 ; sprite dimensions
+dw RhydonPicFront
+dw RhydonPicBack
+; attacks known at lvl 0
+db HORN_ATTACK
+db STOMP
+db TAIL_WHIP
+db FURY_ATTACK
+db 5 ; growth rate
+; learnset
+db %11110001
+db %11111111
+db %10001111
+db %11001111
+db %10100010
+db %10001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/rhyhorn.asm b/data/baseStats/rhyhorn.asm
new file mode 100755
index 00000000..5ae2a56b
--- /dev/null
+++ b/data/baseStats/rhyhorn.asm
@@ -0,0 +1,29 @@
+RhyhornBaseStats: ; 38fe6 (e:4fe6)
+db DEX_RHYHORN ; pokedex id
+db 80 ; base hp
+db 85 ; base attack
+db 95 ; base defense
+db 25 ; base speed
+db 30 ; base special
+db GROUND ; species type 1
+db ROCK ; species type 2
+db 120 ; catch rate
+db 135 ; base exp yield
+db $77 ; sprite dimensions
+dw RhyhornPicFront
+dw RhyhornPicBack
+; attacks known at lvl 0
+db HORN_ATTACK
+db 0
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %11100000
+db %00000011
+db %10001000
+db %11001111
+db %10100010
+db %10001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/sandshrew.asm b/data/baseStats/sandshrew.asm
new file mode 100755
index 00000000..07df1cf2
--- /dev/null
+++ b/data/baseStats/sandshrew.asm
@@ -0,0 +1,29 @@
+SandshrewBaseStats: ; 386b6 (e:46b6)
+db DEX_SANDSHREW ; pokedex id
+db 50 ; base hp
+db 75 ; base attack
+db 85 ; base defense
+db 40 ; base speed
+db 30 ; base special
+db GROUND ; species type 1
+db GROUND ; species type 2
+db 255 ; catch rate
+db 93 ; base exp yield
+db $55 ; sprite dimensions
+dw SandshrewPicFront
+dw SandshrewPicBack
+; attacks known at lvl 0
+db SCRATCH
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %00000011
+db %00001101
+db %11001110
+db %11000010
+db %10001000
+db %00100110
+db 0 ; padding
diff --git a/data/baseStats/sandslash.asm b/data/baseStats/sandslash.asm
new file mode 100755
index 00000000..25e1e200
--- /dev/null
+++ b/data/baseStats/sandslash.asm
@@ -0,0 +1,29 @@
+SandslashBaseStats: ; 386d2 (e:46d2)
+db DEX_SANDSLASH ; pokedex id
+db 75 ; base hp
+db 100 ; base attack
+db 110 ; base defense
+db 65 ; base speed
+db 55 ; base special
+db GROUND ; species type 1
+db GROUND ; species type 2
+db 90 ; catch rate
+db 163 ; base exp yield
+db $66 ; sprite dimensions
+dw SandslashPicFront
+dw SandslashPicBack
+; attacks known at lvl 0
+db SCRATCH
+db SAND_ATTACK
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00001101
+db %11001110
+db %11000010
+db %10001000
+db %00100110
+db 0 ; padding
diff --git a/data/baseStats/scyther.asm b/data/baseStats/scyther.asm
new file mode 100755
index 00000000..a2f1cc73
--- /dev/null
+++ b/data/baseStats/scyther.asm
@@ -0,0 +1,29 @@
+ScytherBaseStats: ; 39136 (e:5136)
+db DEX_SCYTHER ; pokedex id
+db 70 ; base hp
+db 110 ; base attack
+db 80 ; base defense
+db 105 ; base speed
+db 55 ; base special
+db BUG ; species type 1
+db FLYING ; species type 2
+db 45 ; catch rate
+db 187 ; base exp yield
+db $77 ; sprite dimensions
+dw ScytherPicFront
+dw ScytherPicBack
+; attacks known at lvl 0
+db QUICK_ATTACK
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100100
+db %01000011
+db %00001000
+db %11000000
+db %11000010
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/seadra.asm b/data/baseStats/seadra.asm
new file mode 100755
index 00000000..a824bde9
--- /dev/null
+++ b/data/baseStats/seadra.asm
@@ -0,0 +1,29 @@
+SeadraBaseStats: ; 3908e (e:508e)
+db DEX_SEADRA ; pokedex id
+db 55 ; base hp
+db 65 ; base attack
+db 95 ; base defense
+db 85 ; base speed
+db 95 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 75 ; catch rate
+db 155 ; base exp yield
+db $66 ; sprite dimensions
+dw SeadraPicFront
+dw SeadraPicBack
+; attacks known at lvl 0
+db BUBBLE
+db SMOKESCREEN
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %01111111
+db %00001000
+db %11000000
+db %11000010
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/seaking.asm b/data/baseStats/seaking.asm
new file mode 100755
index 00000000..0b0d40dc
--- /dev/null
+++ b/data/baseStats/seaking.asm
@@ -0,0 +1,29 @@
+SeakingBaseStats: ; 390c6 (e:50c6)
+db DEX_SEAKING ; pokedex id
+db 80 ; base hp
+db 92 ; base attack
+db 65 ; base defense
+db 68 ; base speed
+db 80 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 60 ; catch rate
+db 170 ; base exp yield
+db $77 ; sprite dimensions
+dw SeakingPicFront
+dw SeakingPicBack
+; attacks known at lvl 0
+db PECK
+db TAIL_WHIP
+db SUPERSONIC
+db 0
+db 0 ; growth rate
+; learnset
+db %01100000
+db %01111111
+db %00001000
+db %11000000
+db %11000010
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/seel.asm b/data/baseStats/seel.asm
new file mode 100755
index 00000000..d721d246
--- /dev/null
+++ b/data/baseStats/seel.asm
@@ -0,0 +1,29 @@
+SeelBaseStats: ; 38d2a (e:4d2a)
+db DEX_SEEL ; pokedex id
+db 65 ; base hp
+db 45 ; base attack
+db 55 ; base defense
+db 45 ; base speed
+db 70 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 190 ; catch rate
+db 100 ; base exp yield
+db $66 ; sprite dimensions
+dw SeelPicFront
+dw SeelPicBack
+; attacks known at lvl 0
+db HEADBUTT
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %11100000
+db %10111111
+db %00001000
+db %11000000
+db %10000010
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/shellder.asm b/data/baseStats/shellder.asm
new file mode 100755
index 00000000..085674b3
--- /dev/null
+++ b/data/baseStats/shellder.asm
@@ -0,0 +1,29 @@
+ShellderBaseStats: ; 38d9a (e:4d9a)
+db DEX_SHELLDER ; pokedex id
+db 30 ; base hp
+db 65 ; base attack
+db 100 ; base defense
+db 40 ; base speed
+db 45 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 190 ; catch rate
+db 97 ; base exp yield
+db $55 ; sprite dimensions
+dw ShellderPicFront
+dw ShellderPicBack
+; attacks known at lvl 0
+db TACKLE
+db WITHDRAW
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00100000
+db %00111111
+db %00001000
+db %11100000
+db %01001011
+db %01001000
+db %00010011
+db 0 ; padding
diff --git a/data/baseStats/slowbro.asm b/data/baseStats/slowbro.asm
new file mode 100755
index 00000000..37e445a2
--- /dev/null
+++ b/data/baseStats/slowbro.asm
@@ -0,0 +1,29 @@
+SlowbroBaseStats: ; 38c82 (e:4c82)
+db DEX_SLOWBRO ; pokedex id
+db 95 ; base hp
+db 75 ; base attack
+db 110 ; base defense
+db 30 ; base speed
+db 80 ; base special
+db WATER ; species type 1
+db PSYCHIC ; species type 2
+db 75 ; catch rate
+db 164 ; base exp yield
+db $77 ; sprite dimensions
+dw SlowbroPicFront
+dw SlowbroPicBack
+; attacks known at lvl 0
+db CONFUSION
+db DISABLE
+db HEADBUTT
+db 0
+db 0 ; growth rate
+; learnset
+db %10110001
+db %11111111
+db %00001111
+db %11111110
+db %11100011
+db %00111000
+db %01110011
+db 0 ; padding
diff --git a/data/baseStats/slowpoke.asm b/data/baseStats/slowpoke.asm
new file mode 100755
index 00000000..61755e54
--- /dev/null
+++ b/data/baseStats/slowpoke.asm
@@ -0,0 +1,29 @@
+SlowpokeBaseStats: ; 38c66 (e:4c66)
+db DEX_SLOWPOKE ; pokedex id
+db 90 ; base hp
+db 65 ; base attack
+db 65 ; base defense
+db 15 ; base speed
+db 40 ; base special
+db WATER ; species type 1
+db PSYCHIC ; species type 2
+db 190 ; catch rate
+db 99 ; base exp yield
+db $55 ; sprite dimensions
+dw SlowpokePicFront
+dw SlowpokePicBack
+; attacks known at lvl 0
+db CONFUSION
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %10111111
+db %00001000
+db %11111110
+db %11100011
+db %00111000
+db %01110011
+db 0 ; padding
diff --git a/data/baseStats/snorlax.asm b/data/baseStats/snorlax.asm
new file mode 100755
index 00000000..c3f0a928
--- /dev/null
+++ b/data/baseStats/snorlax.asm
@@ -0,0 +1,29 @@
+SnorlaxBaseStats: ; 39366 (e:5366)
+db DEX_SNORLAX ; pokedex id
+db 160 ; base hp
+db 110 ; base attack
+db 65 ; base defense
+db 30 ; base speed
+db 65 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 25 ; catch rate
+db 154 ; base exp yield
+db $77 ; sprite dimensions
+dw SnorlaxPicFront
+dw SnorlaxPicBack
+; attacks known at lvl 0
+db HEADBUTT
+db AMNESIA
+db REST
+db 0
+db 5 ; growth rate
+; learnset
+db %10110001
+db %11111111
+db %10101111
+db %11010111
+db %10101111
+db %10101000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/spearow.asm b/data/baseStats/spearow.asm
new file mode 100755
index 00000000..351a9c35
--- /dev/null
+++ b/data/baseStats/spearow.asm
@@ -0,0 +1,29 @@
+SpearowBaseStats: ; 3860e (e:460e)
+db DEX_SPEAROW ; pokedex id
+db 40 ; base hp
+db 60 ; base attack
+db 30 ; base defense
+db 70 ; base speed
+db 31 ; base special
+db NORMAL ; species type 1
+db FLYING ; species type 2
+db 255 ; catch rate
+db 58 ; base exp yield
+db $55 ; sprite dimensions
+dw SpearowPicFront
+dw SpearowPicBack
+; attacks known at lvl 0
+db PECK
+db GROWL
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00101010
+db %00000011
+db %00001000
+db %11000000
+db %01000010
+db %00001100
+db %00001010
+db 0 ; padding
diff --git a/data/baseStats/squirtle.asm b/data/baseStats/squirtle.asm
new file mode 100755
index 00000000..aa7406a6
--- /dev/null
+++ b/data/baseStats/squirtle.asm
@@ -0,0 +1,29 @@
+SquirtleBaseStats: ; 38486 (e:4486)
+db DEX_SQUIRTLE ; pokedex id
+db 44 ; base hp
+db 48 ; base attack
+db 65 ; base defense
+db 43 ; base speed
+db 50 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 66 ; base exp yield
+db $55 ; sprite dimensions
+dw SquirtlePicFront
+dw SquirtlePicBack
+; attacks known at lvl 0
+db TACKLE
+db TAIL_WHIP
+db 0
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00111111
+db %00001111
+db %11001000
+db %10000011
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/starmie.asm b/data/baseStats/starmie.asm
new file mode 100755
index 00000000..f20bebb6
--- /dev/null
+++ b/data/baseStats/starmie.asm
@@ -0,0 +1,29 @@
+StarmieBaseStats: ; 390fe (e:50fe)
+db DEX_STARMIE ; pokedex id
+db 60 ; base hp
+db 75 ; base attack
+db 85 ; base defense
+db 115 ; base speed
+db 100 ; base special
+db WATER ; species type 1
+db PSYCHIC ; species type 2
+db 60 ; catch rate
+db 207 ; base exp yield
+db $66 ; sprite dimensions
+dw StarmiePicFront
+dw StarmiePicBack
+; attacks known at lvl 0
+db TACKLE
+db WATER_GUN
+db HARDEN
+db 0
+db 5 ; growth rate
+; learnset
+db %00100000
+db %01111111
+db %10001000
+db %11110001
+db %11000011
+db %00111000
+db %01010011
+db 0 ; padding
diff --git a/data/baseStats/staryu.asm b/data/baseStats/staryu.asm
new file mode 100755
index 00000000..e0208fc5
--- /dev/null
+++ b/data/baseStats/staryu.asm
@@ -0,0 +1,29 @@
+StaryuBaseStats: ; 390e2 (e:50e2)
+db DEX_STARYU ; pokedex id
+db 30 ; base hp
+db 45 ; base attack
+db 55 ; base defense
+db 85 ; base speed
+db 70 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 225 ; catch rate
+db 106 ; base exp yield
+db $66 ; sprite dimensions
+dw StaryuPicFront
+dw StaryuPicBack
+; attacks known at lvl 0
+db TACKLE
+db 0
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00100000
+db %00111111
+db %10001000
+db %11110001
+db %11000011
+db %00111000
+db %01010011
+db 0 ; padding
diff --git a/data/baseStats/tangela.asm b/data/baseStats/tangela.asm
new file mode 100755
index 00000000..d140fe5a
--- /dev/null
+++ b/data/baseStats/tangela.asm
@@ -0,0 +1,29 @@
+TangelaBaseStats: ; 3903a (e:503a)
+db DEX_TANGELA ; pokedex id
+db 65 ; base hp
+db 55 ; base attack
+db 115 ; base defense
+db 60 ; base speed
+db 100 ; base special
+db GRASS ; species type 1
+db GRASS ; species type 2
+db 45 ; catch rate
+db 166 ; base exp yield
+db $66 ; sprite dimensions
+dw TangelaPicFront
+dw TangelaPicBack
+; attacks known at lvl 0
+db CONSTRICT
+db BIND
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00111000
+db %11000000
+db %10000010
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/tauros.asm b/data/baseStats/tauros.asm
new file mode 100755
index 00000000..6d6841cf
--- /dev/null
+++ b/data/baseStats/tauros.asm
@@ -0,0 +1,29 @@
+TaurosBaseStats: ; 391c2 (e:51c2)
+db DEX_TAUROS ; pokedex id
+db 75 ; base hp
+db 100 ; base attack
+db 95 ; base defense
+db 110 ; base speed
+db 70 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 45 ; catch rate
+db 211 ; base exp yield
+db $77 ; sprite dimensions
+dw TaurosPicFront
+dw TaurosPicBack
+; attacks known at lvl 0
+db TACKLE
+db 0
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %11100000
+db %01110011
+db %10001000
+db %11000111
+db %10100010
+db %00001000
+db %00100010
+db 0 ; padding
diff --git a/data/baseStats/tentacool.asm b/data/baseStats/tentacool.asm
new file mode 100755
index 00000000..0bb1ff93
--- /dev/null
+++ b/data/baseStats/tentacool.asm
@@ -0,0 +1,29 @@
+TentacoolBaseStats: ; 38ba2 (e:4ba2)
+db DEX_TENTACOOL ; pokedex id
+db 40 ; base hp
+db 40 ; base attack
+db 35 ; base defense
+db 70 ; base speed
+db 100 ; base special
+db WATER ; species type 1
+db POISON ; species type 2
+db 190 ; catch rate
+db 105 ; base exp yield
+db $55 ; sprite dimensions
+dw TentacoolPicFront
+dw TentacoolPicBack
+; attacks known at lvl 0
+db ACID
+db 0
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00100100
+db %00111111
+db %00011000
+db %11000000
+db %10000011
+db %00001000
+db %00010110
+db 0 ; padding
diff --git a/data/baseStats/tentacruel.asm b/data/baseStats/tentacruel.asm
new file mode 100755
index 00000000..25dff714
--- /dev/null
+++ b/data/baseStats/tentacruel.asm
@@ -0,0 +1,29 @@
+TentacruelBaseStats: ; 38bbe (e:4bbe)
+db DEX_TENTACRUEL ; pokedex id
+db 80 ; base hp
+db 70 ; base attack
+db 65 ; base defense
+db 100 ; base speed
+db 120 ; base special
+db WATER ; species type 1
+db POISON ; species type 2
+db 60 ; catch rate
+db 205 ; base exp yield
+db $66 ; sprite dimensions
+dw TentacruelPicFront
+dw TentacruelPicBack
+; attacks known at lvl 0
+db ACID
+db SUPERSONIC
+db WRAP
+db 0
+db 5 ; growth rate
+; learnset
+db %00100100
+db %01111111
+db %00011000
+db %11000000
+db %10000011
+db %00001000
+db %00010110
+db 0 ; padding
diff --git a/data/baseStats/vaporeon.asm b/data/baseStats/vaporeon.asm
new file mode 100755
index 00000000..f03808fe
--- /dev/null
+++ b/data/baseStats/vaporeon.asm
@@ -0,0 +1,34 @@
+VaporeonBaseStats: ; 3926a (e:526a)
+db DEX_VAPOREON ; pokedex id
+db 130 ; base hp
+db 65 ; base attack
+db 60 ; base defense
+db 65 ; base speed
+db 110 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 196 ; base exp yield
+db $66 ; sprite dimensions
+dw VaporeonPicFront
+dw VaporeonPicBack
+; attacks known at lvl 0
+db TACKLE
+IF !_YELLOW
+ db SAND_ATTACK
+ENDC
+IF _YELLOW
+ db TAIL_WHIP
+ENDC
+db QUICK_ATTACK
+db WATER_GUN
+db 0 ; growth rate
+; learnset
+db %10100000
+db %01111111
+db %00001000
+db %11000000
+db %11000011
+db %00001000
+db %00010010
+db 0 ; padding
diff --git a/data/baseStats/venomoth.asm b/data/baseStats/venomoth.asm
new file mode 100755
index 00000000..c975ee6e
--- /dev/null
+++ b/data/baseStats/venomoth.asm
@@ -0,0 +1,35 @@
+VenomothBaseStats: ; 3891e (e:491e)
+db DEX_VENOMOTH ; pokedex id
+db 70 ; base hp
+db 65 ; base attack
+db 60 ; base defense
+db 90 ; base speed
+db 90 ; base special
+db BUG ; species type 1
+db POISON ; species type 2
+db 75 ; catch rate
+db 138 ; base exp yield
+db $77 ; sprite dimensions
+dw VenomothPicFront
+dw VenomothPicBack
+; attacks known at lvl 0
+db TACKLE
+db DISABLE
+IF !_YELLOW
+ db POISONPOWDER
+ db LEECH_LIFE
+ENDC
+IF _YELLOW
+ db SUPERSONIC
+ db CONFUSION
+ENDC
+db 0 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %00111000
+db %11110000
+db %01000011
+db %00101000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/venonat.asm b/data/baseStats/venonat.asm
new file mode 100755
index 00000000..cc4a6cb2
--- /dev/null
+++ b/data/baseStats/venonat.asm
@@ -0,0 +1,38 @@
+VenonatBaseStats: ; 38902 (e:4902)
+db DEX_VENONAT ; pokedex id
+db 60 ; base hp
+db 55 ; base attack
+db 50 ; base defense
+db 45 ; base speed
+db 40 ; base special
+db BUG ; species type 1
+db POISON ; species type 2
+db 190 ; catch rate
+db 75 ; base exp yield
+db $55 ; sprite dimensions
+dw VenonatPicFront
+dw VenonatPicBack
+; attacks known at lvl 0
+db TACKLE
+db DISABLE
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %00000011
+db %00111000
+IF !_YELLOW
+ db %11010000
+ db %00000011
+ db %00101000
+ db %00000010
+ENDC
+IF _YELLOW
+ db %11110000
+ db %01000011
+ db %00101000
+ db %00100010
+ENDC
+
+db 0 ; padding
diff --git a/data/baseStats/venusaur.asm b/data/baseStats/venusaur.asm
new file mode 100755
index 00000000..7b861914
--- /dev/null
+++ b/data/baseStats/venusaur.asm
@@ -0,0 +1,29 @@
+VenusaurBaseStats: ; 38416 (e:4416)
+db DEX_VENUSAUR ; pokedex id
+db 80 ; base hp
+db 82 ; base attack
+db 83 ; base defense
+db 80 ; base speed
+db 100 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 208 ; base exp yield
+db $77 ; sprite dimensions
+dw VenusaurPicFront
+dw VenusaurPicBack
+; attacks known at lvl 0
+db TACKLE
+db GROWL
+db LEECH_SEED
+db VINE_WHIP
+db 3 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/vicctreebel.asm b/data/baseStats/vicctreebel.asm
new file mode 100755
index 00000000..98e40bb1
--- /dev/null
+++ b/data/baseStats/vicctreebel.asm
@@ -0,0 +1,29 @@
+ BaseStats: ; 38b86 (e:4b86)
+db DEX_ ; pokedex id
+db 80 ; base hp
+db 105 ; base attack
+db 65 ; base defense
+db 70 ; base speed
+db 100 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 191 ; base exp yield
+db $77 ; sprite dimensions
+dw PicFront
+dw PicBack
+; attacks known at lvl 0
+db SLEEP_POWDER
+db STUN_SPORE
+db ACID
+db RAZOR_LEAF
+db 3 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/victreebel.asm b/data/baseStats/victreebel.asm
new file mode 100755
index 00000000..39051f4f
--- /dev/null
+++ b/data/baseStats/victreebel.asm
@@ -0,0 +1,29 @@
+VictreebelBaseStats: ; 38b86 (e:4b86)
+db DEX_VICTREEBEL ; pokedex id
+db 80 ; base hp
+db 105 ; base attack
+db 65 ; base defense
+db 70 ; base speed
+db 100 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 191 ; base exp yield
+db $77 ; sprite dimensions
+dw VictreebelPicFront
+dw VictreebelPicBack
+; attacks known at lvl 0
+db SLEEP_POWDER
+db STUN_SPORE
+db ACID
+db RAZOR_LEAF
+db 3 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/vileplume.asm b/data/baseStats/vileplume.asm
new file mode 100755
index 00000000..60b58098
--- /dev/null
+++ b/data/baseStats/vileplume.asm
@@ -0,0 +1,29 @@
+VileplumeBaseStats: ; 388ae (e:48ae)
+db DEX_VILEPLUME ; pokedex id
+db 75 ; base hp
+db 80 ; base attack
+db 85 ; base defense
+db 50 ; base speed
+db 100 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 45 ; catch rate
+db 184 ; base exp yield
+db $77 ; sprite dimensions
+dw VileplumePicFront
+dw VileplumePicBack
+; attacks known at lvl 0
+db STUN_SPORE
+db SLEEP_POWDER
+db ACID
+db PETAL_DANCE
+db 3 ; growth rate
+; learnset
+db %10100100
+db %01000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/voltorb.asm b/data/baseStats/voltorb.asm
new file mode 100755
index 00000000..33cf8fe5
--- /dev/null
+++ b/data/baseStats/voltorb.asm
@@ -0,0 +1,29 @@
+VoltorbBaseStats: ; 38eb2 (e:4eb2)
+db DEX_VOLTORB ; pokedex id
+db 40 ; base hp
+db 30 ; base attack
+db 50 ; base defense
+db 100 ; base speed
+db 55 ; base special
+db ELECTRIC ; species type 1
+db ELECTRIC ; species type 2
+db 190 ; catch rate
+db 103 ; base exp yield
+db $55 ; sprite dimensions
+dw VoltorbPicFront
+dw VoltorbPicBack
+; attacks known at lvl 0
+db TACKLE
+db SCREECH
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %00000001
+db %10001000
+db %11100001
+db %01001011
+db %01011000
+db %01000010
+db 0 ; padding
diff --git a/data/baseStats/vulpix.asm b/data/baseStats/vulpix.asm
new file mode 100755
index 00000000..c01a64fc
--- /dev/null
+++ b/data/baseStats/vulpix.asm
@@ -0,0 +1,29 @@
+VulpixBaseStats: ; 387ce (e:47ce)
+db DEX_VULPIX ; pokedex id
+db 38 ; base hp
+db 41 ; base attack
+db 40 ; base defense
+db 65 ; base speed
+db 65 ; base special
+db FIRE ; species type 1
+db FIRE ; species type 2
+db 190 ; catch rate
+db 63 ; base exp yield
+db $66 ; sprite dimensions
+dw VulpixPicFront
+dw VulpixPicBack
+; attacks known at lvl 0
+db EMBER
+db TAIL_WHIP
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %10100000
+db %00000011
+db %00001000
+db %11001000
+db %11100011
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/wartortle.asm b/data/baseStats/wartortle.asm
new file mode 100755
index 00000000..9b2253a4
--- /dev/null
+++ b/data/baseStats/wartortle.asm
@@ -0,0 +1,29 @@
+WartortleBaseStats: ; 384a2 (e:44a2)
+db DEX_WARTORTLE ; pokedex id
+db 59 ; base hp
+db 63 ; base attack
+db 80 ; base defense
+db 58 ; base speed
+db 65 ; base special
+db WATER ; species type 1
+db WATER ; species type 2
+db 45 ; catch rate
+db 143 ; base exp yield
+db $66 ; sprite dimensions
+dw WartortlePicFront
+dw WartortlePicBack
+; attacks known at lvl 0
+db TACKLE
+db TAIL_WHIP
+db BUBBLE
+db 0
+db 3 ; growth rate
+; learnset
+db %10110001
+db %00111111
+db %00001111
+db %11001000
+db %10000011
+db %00001000
+db %00110010
+db 0 ; padding
diff --git a/data/baseStats/weedle.asm b/data/baseStats/weedle.asm
new file mode 100755
index 00000000..683fa06d
--- /dev/null
+++ b/data/baseStats/weedle.asm
@@ -0,0 +1,29 @@
+WeedleBaseStats: ; 3852e (e:452e)
+db DEX_WEEDLE ; pokedex id
+db 40 ; base hp
+db 35 ; base attack
+db 30 ; base defense
+db 50 ; base speed
+db 20 ; base special
+db BUG ; species type 1
+db POISON ; species type 2
+db 255 ; catch rate
+db 52 ; base exp yield
+db $55 ; sprite dimensions
+dw WeedlePicFront
+dw WeedlePicBack
+; attacks known at lvl 0
+db POISON_STING
+db STRING_SHOT
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db %00000000
+db 0 ; padding
diff --git a/data/baseStats/weepinbell.asm b/data/baseStats/weepinbell.asm
new file mode 100755
index 00000000..52263505
--- /dev/null
+++ b/data/baseStats/weepinbell.asm
@@ -0,0 +1,29 @@
+WeepinbellBaseStats: ; 38b6a (e:4b6a)
+db DEX_WEEPINBELL ; pokedex id
+db 65 ; base hp
+db 90 ; base attack
+db 50 ; base defense
+db 55 ; base speed
+db 85 ; base special
+db GRASS ; species type 1
+db POISON ; species type 2
+db 120 ; catch rate
+db 151 ; base exp yield
+db $66 ; sprite dimensions
+dw WeepinbellPicFront
+dw WeepinbellPicBack
+; attacks known at lvl 0
+db VINE_WHIP
+db GROWTH
+db WRAP
+db 0
+db 3 ; growth rate
+; learnset
+db %00100100
+db %00000011
+db %00111000
+db %11000000
+db %00000011
+db %00001000
+db %00000110
+db 0 ; padding
diff --git a/data/baseStats/weezing.asm b/data/baseStats/weezing.asm
new file mode 100755
index 00000000..72c37340
--- /dev/null
+++ b/data/baseStats/weezing.asm
@@ -0,0 +1,29 @@
+WeezingBaseStats: ; 38fca (e:4fca)
+db DEX_WEEZING ; pokedex id
+db 65 ; base hp
+db 90 ; base attack
+db 120 ; base defense
+db 60 ; base speed
+db 85 ; base special
+db POISON ; species type 1
+db POISON ; species type 2
+db 60 ; catch rate
+db 173 ; base exp yield
+db $77 ; sprite dimensions
+dw WeezingPicFront
+dw WeezingPicBack
+; attacks known at lvl 0
+db TACKLE
+db SMOG
+db SLUDGE
+db 0
+db 0 ; growth rate
+; learnset
+db %00100000
+db %01000000
+db %10001000
+db %11000001
+db %00101010
+db %01001000
+db %00000010
+db 0 ; padding
diff --git a/data/baseStats/wigglytuff.asm b/data/baseStats/wigglytuff.asm
new file mode 100755
index 00000000..f9c50c69
--- /dev/null
+++ b/data/baseStats/wigglytuff.asm
@@ -0,0 +1,29 @@
+WigglytuffBaseStats: ; 38822 (e:4822)
+db DEX_WIGGLYTUFF ; pokedex id
+db 140 ; base hp
+db 70 ; base attack
+db 45 ; base defense
+db 45 ; base speed
+db 50 ; base special
+db NORMAL ; species type 1
+db NORMAL ; species type 2
+db 50 ; catch rate
+db 109 ; base exp yield
+db $66 ; sprite dimensions
+dw WigglytuffPicFront
+dw WigglytuffPicBack
+; attacks known at lvl 0
+db SING
+db DISABLE
+db DEFENSE_CURL
+db DOUBLESLAP
+db 4 ; growth rate
+; learnset
+db %10110001
+db %01111111
+db %10101111
+db %11110001
+db %10100011
+db %00111000
+db %01100011
+db 0 ; padding
diff --git a/data/baseStats/zapdos.asm b/data/baseStats/zapdos.asm
new file mode 100755
index 00000000..32cc0fa6
--- /dev/null
+++ b/data/baseStats/zapdos.asm
@@ -0,0 +1,29 @@
+ZapdosBaseStats: ; 3939e (e:539e)
+db DEX_ZAPDOS ; pokedex id
+db 90 ; base hp
+db 90 ; base attack
+db 85 ; base defense
+db 100 ; base speed
+db 125 ; base special
+db ELECTRIC ; species type 1
+db FLYING ; species type 2
+db 3 ; catch rate
+db 216 ; base exp yield
+db $77 ; sprite dimensions
+dw ZapdosPicFront
+dw ZapdosPicBack
+; attacks known at lvl 0
+db THUNDERSHOCK
+db DRILL_PECK
+db 0
+db 0
+db 5 ; growth rate
+; learnset
+db %00101010
+db %01000011
+db %10001000
+db %11000001
+db %01000011
+db %00011100
+db %01001010
+db 0 ; padding
diff --git a/data/baseStats/zubat.asm b/data/baseStats/zubat.asm
new file mode 100755
index 00000000..f80ff419
--- /dev/null
+++ b/data/baseStats/zubat.asm
@@ -0,0 +1,29 @@
+ZubatBaseStats: ; 3883e (e:483e)
+db DEX_ZUBAT ; pokedex id
+db 40 ; base hp
+db 45 ; base attack
+db 35 ; base defense
+db 55 ; base speed
+db 40 ; base special
+db POISON ; species type 1
+db FLYING ; species type 2
+db 255 ; catch rate
+db 54 ; base exp yield
+db $55 ; sprite dimensions
+dw ZubatPicFront
+dw ZubatPicBack
+; attacks known at lvl 0
+db LEECH_LIFE
+db 0
+db 0
+db 0
+db 0 ; growth rate
+; learnset
+db %00101010
+db %00000011
+db %00011000
+db %11000000
+db %01000010
+db %00001000
+db %00000010
+db 0 ; padding
diff --git a/data/base_stats.asm b/data/base_stats.asm
new file mode 100755
index 00000000..562f7c29
--- /dev/null
+++ b/data/base_stats.asm
@@ -0,0 +1,150 @@
+INCLUDE "data/baseStats/bulbasaur.asm"
+INCLUDE "data/baseStats/ivysaur.asm"
+INCLUDE "data/baseStats/venusaur.asm"
+INCLUDE "data/baseStats/charmander.asm"
+INCLUDE "data/baseStats/charmeleon.asm"
+INCLUDE "data/baseStats/charizard.asm"
+INCLUDE "data/baseStats/squirtle.asm"
+INCLUDE "data/baseStats/wartortle.asm"
+INCLUDE "data/baseStats/blastoise.asm"
+INCLUDE "data/baseStats/caterpie.asm"
+INCLUDE "data/baseStats/metapod.asm"
+INCLUDE "data/baseStats/butterfree.asm"
+INCLUDE "data/baseStats/weedle.asm"
+INCLUDE "data/baseStats/kakuna.asm"
+INCLUDE "data/baseStats/beedrill.asm"
+INCLUDE "data/baseStats/pidgey.asm"
+INCLUDE "data/baseStats/pidgeotto.asm"
+INCLUDE "data/baseStats/pidgeot.asm"
+INCLUDE "data/baseStats/rattata.asm"
+INCLUDE "data/baseStats/raticate.asm"
+INCLUDE "data/baseStats/spearow.asm"
+INCLUDE "data/baseStats/fearow.asm"
+INCLUDE "data/baseStats/ekans.asm"
+INCLUDE "data/baseStats/arbok.asm"
+INCLUDE "data/baseStats/pikachu.asm"
+INCLUDE "data/baseStats/raichu.asm"
+INCLUDE "data/baseStats/sandshrew.asm"
+INCLUDE "data/baseStats/sandslash.asm"
+INCLUDE "data/baseStats/nidoranF.asm"
+INCLUDE "data/baseStats/nidorina.asm"
+INCLUDE "data/baseStats/nidoqueen.asm"
+INCLUDE "data/baseStats/nidoranM.asm"
+INCLUDE "data/baseStats/nidorino.asm"
+INCLUDE "data/baseStats/nidoking.asm"
+INCLUDE "data/baseStats/clefairy.asm"
+INCLUDE "data/baseStats/clefable.asm"
+INCLUDE "data/baseStats/vulpix.asm"
+INCLUDE "data/baseStats/ninetails.asm"
+INCLUDE "data/baseStats/jigglypuff.asm"
+INCLUDE "data/baseStats/wigglytuff.asm"
+INCLUDE "data/baseStats/zubat.asm"
+INCLUDE "data/baseStats/golbat.asm"
+INCLUDE "data/baseStats/oddish.asm"
+INCLUDE "data/baseStats/gloom.asm"
+INCLUDE "data/baseStats/vileplume.asm"
+INCLUDE "data/baseStats/paras.asm"
+INCLUDE "data/baseStats/parasect.asm"
+INCLUDE "data/baseStats/venonat.asm"
+INCLUDE "data/baseStats/venomoth.asm"
+INCLUDE "data/baseStats/diglett.asm"
+INCLUDE "data/baseStats/dugtrio.asm"
+INCLUDE "data/baseStats/meowth.asm"
+INCLUDE "data/baseStats/persian.asm"
+INCLUDE "data/baseStats/psyduck.asm"
+INCLUDE "data/baseStats/golduck.asm"
+INCLUDE "data/baseStats/mankey.asm"
+INCLUDE "data/baseStats/primeape.asm"
+INCLUDE "data/baseStats/growlithe.asm"
+INCLUDE "data/baseStats/arcanine.asm"
+INCLUDE "data/baseStats/poliwag.asm"
+INCLUDE "data/baseStats/poliwhirl.asm"
+INCLUDE "data/baseStats/poliwrath.asm"
+INCLUDE "data/baseStats/abra.asm"
+INCLUDE "data/baseStats/kadabra.asm"
+INCLUDE "data/baseStats/alakazam.asm"
+INCLUDE "data/baseStats/machop.asm"
+INCLUDE "data/baseStats/machoke.asm"
+INCLUDE "data/baseStats/machamp.asm"
+INCLUDE "data/baseStats/bellsprout.asm"
+INCLUDE "data/baseStats/weepinbell.asm"
+INCLUDE "data/baseStats/victreebel.asm"
+INCLUDE "data/baseStats/tentacool.asm"
+INCLUDE "data/baseStats/tentacruel.asm"
+INCLUDE "data/baseStats/geodude.asm"
+INCLUDE "data/baseStats/graveler.asm"
+INCLUDE "data/baseStats/golem.asm"
+INCLUDE "data/baseStats/ponyta.asm"
+INCLUDE "data/baseStats/rapidash.asm"
+INCLUDE "data/baseStats/slowpoke.asm"
+INCLUDE "data/baseStats/slowbro.asm"
+INCLUDE "data/baseStats/magnemite.asm"
+INCLUDE "data/baseStats/magneton.asm"
+INCLUDE "data/baseStats/farfetchd.asm"
+INCLUDE "data/baseStats/doduo.asm"
+INCLUDE "data/baseStats/dodrio.asm"
+INCLUDE "data/baseStats/seel.asm"
+INCLUDE "data/baseStats/dewgong.asm"
+INCLUDE "data/baseStats/grimer.asm"
+INCLUDE "data/baseStats/muk.asm"
+INCLUDE "data/baseStats/shellder.asm"
+INCLUDE "data/baseStats/cloyster.asm"
+INCLUDE "data/baseStats/gastly.asm"
+INCLUDE "data/baseStats/haunter.asm"
+INCLUDE "data/baseStats/gengar.asm"
+INCLUDE "data/baseStats/onix.asm"
+INCLUDE "data/baseStats/drowzee.asm"
+INCLUDE "data/baseStats/hypno.asm"
+INCLUDE "data/baseStats/krabby.asm"
+INCLUDE "data/baseStats/kingler.asm"
+INCLUDE "data/baseStats/voltorb.asm"
+INCLUDE "data/baseStats/electrode.asm"
+INCLUDE "data/baseStats/exeggcute.asm"
+INCLUDE "data/baseStats/exeggutor.asm"
+INCLUDE "data/baseStats/cubone.asm"
+INCLUDE "data/baseStats/marowak.asm"
+INCLUDE "data/baseStats/hitmonlee.asm"
+INCLUDE "data/baseStats/hitmonchan.asm"
+INCLUDE "data/baseStats/lickitung.asm"
+INCLUDE "data/baseStats/koffing.asm"
+INCLUDE "data/baseStats/weezing.asm"
+INCLUDE "data/baseStats/rhyhorn.asm"
+INCLUDE "data/baseStats/rhydon.asm"
+INCLUDE "data/baseStats/chansey.asm"
+INCLUDE "data/baseStats/tangela.asm"
+INCLUDE "data/baseStats/kangaskhan.asm"
+INCLUDE "data/baseStats/horsea.asm"
+INCLUDE "data/baseStats/seadra.asm"
+INCLUDE "data/baseStats/goldeen.asm"
+INCLUDE "data/baseStats/seaking.asm"
+INCLUDE "data/baseStats/staryu.asm"
+INCLUDE "data/baseStats/starmie.asm"
+INCLUDE "data/baseStats/mrMime.asm"
+INCLUDE "data/baseStats/scyther.asm"
+INCLUDE "data/baseStats/jynx.asm"
+INCLUDE "data/baseStats/electabuzz.asm"
+INCLUDE "data/baseStats/magmar.asm"
+INCLUDE "data/baseStats/pinsir.asm"
+INCLUDE "data/baseStats/tauros.asm"
+INCLUDE "data/baseStats/magikarp.asm"
+INCLUDE "data/baseStats/gyarados.asm"
+INCLUDE "data/baseStats/lapras.asm"
+INCLUDE "data/baseStats/ditto.asm"
+INCLUDE "data/baseStats/eevee.asm"
+INCLUDE "data/baseStats/vaporeon.asm"
+INCLUDE "data/baseStats/jolteon.asm"
+INCLUDE "data/baseStats/flareon.asm"
+INCLUDE "data/baseStats/porygon.asm"
+INCLUDE "data/baseStats/omanyte.asm"
+INCLUDE "data/baseStats/omastar.asm"
+INCLUDE "data/baseStats/kabuto.asm"
+INCLUDE "data/baseStats/kabutops.asm"
+INCLUDE "data/baseStats/aerodactyl.asm"
+INCLUDE "data/baseStats/snorlax.asm"
+INCLUDE "data/baseStats/articuno.asm"
+INCLUDE "data/baseStats/zapdos.asm"
+INCLUDE "data/baseStats/moltres.asm"
+INCLUDE "data/baseStats/dratini.asm"
+INCLUDE "data/baseStats/dragonair.asm"
+INCLUDE "data/baseStats/dragonite.asm"
+INCLUDE "data/baseStats/mewtwo.asm"
diff --git a/data/bike_riding_tilesets.asm b/data/bike_riding_tilesets.asm
new file mode 100755
index 00000000..f0fc922d
--- /dev/null
+++ b/data/bike_riding_tilesets.asm
@@ -0,0 +1,2 @@
+BikeRidingTilesets:: ; 09e2 (0:09e2)
+ db OVERWORLD, FOREST, UNDERGROUND, SHIP_PORT, CAVERN, $FF
diff --git a/data/credit_mons.asm b/data/credit_mons.asm
new file mode 100755
index 00000000..6a8bb416
--- /dev/null
+++ b/data/credit_mons.asm
@@ -0,0 +1,16 @@
+CreditsMons: ; 74131 (1d:4131)
+ db VENUSAUR
+ db ARBOK
+ db RHYHORN
+ db FEAROW
+ db ABRA
+ db GRAVELER
+ db HITMONLEE
+ db TANGELA
+ db STARMIE
+ db GYARADOS
+ db DITTO
+ db OMASTAR
+ db VILEPLUME
+ db NIDOKING
+ db PARASECT
diff --git a/data/credits_order.asm b/data/credits_order.asm
new file mode 100755
index 00000000..5a71a26a
--- /dev/null
+++ b/data/credits_order.asm
@@ -0,0 +1,39 @@
+CreditsOrder: ; 74243 (1d:4243)
+; subsequent credits elements will be displayed on separate lines.
+; $FF, $FE, $FD, $FC, $FB, and $FA are commands that are used
+; to go to the next set of credits texts.
+ db CRED_MON, CRED_VERSION, $FF
+ db CRED_DIRECTOR, CRED_TAJIRI, $FF
+ db CRED_PROGRAMMERS, CRED_TA_OOTA, CRED_MORIMOTO, $FD
+ db CRED_PROGRAMMERS, CRED_WATANABE, CRED_MASUDE, CRED_TAMADA, $FE
+ db CRED_CHAR_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, $FF
+ db CRED_MUSIC, CRED_MASUDE, $FD
+ db CRED_SOUND_EFFECTS, CRED_MASUDE, $FE
+ db CRED_GAME_DESIGN, CRED_TAJIRI, $FF
+ db CRED_MONSTER_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, CRED_FUZIWARA, $FD
+ db CRED_MONSTER_DESIGN, CRED_MORIMOTO, CRED_SA_OOTA, CRED_YOSHIKAWA, $FE
+ db CRED_GAME_SCENE, CRED_TAJIRI, $FD
+ db CRED_GAME_SCENE, CRED_TANIGUCHI, CRED_NONOMURA, CRED_ZINNAI, $FE
+ db CRED_PARAM, CRED_NISINO, CRED_TA_NAKAMURA, $FF
+ db CRED_MAP, CRED_TAJIRI, CRED_NISINO, $FD
+ db CRED_MAP, CRED_MATSUSIMA, CRED_NONOMURA, CRED_TANIGUCHI, $FE
+ db CRED_TEST, CRED_KAKEI, CRED_TSUCHIYA, $FD
+ db CRED_TEST, CRED_TA_NAKAMURA, CRED_YUDA, $FE
+ db CRED_SPECIAL, CRED_HISHIDA, CRED_SAKAI, $FD
+ db CRED_SPECIAL, CRED_YAMAGUCHI, CRED_YAMAMOTO, $FC
+ db CRED_SPECIAL, CRED_TOMISAWA, CRED_KAWAMOTO, CRED_TO_OOTA, $FE
+ db CRED_PRODUCERS, CRED_MIYAMOTO, $FD
+ db CRED_PRODUCERS, CRED_KAWAGUCHI, $FC
+ db CRED_PRODUCERS, CRED_ISHIHARA, $FE
+ db CRED_US_STAFF, $FD
+ db CRED_US_COORD, CRED_TILDEN, $FD
+ db CRED_US_COORD, CRED_KAWAKAMI, CRED_HI_NAKAMURA, $FC
+ db CRED_US_COORD, CRED_GIESE, CRED_OSBORNE, $FC
+ db CRED_TRANS, CRED_OGASAWARA, $FD
+ db CRED_PROGRAMMERS, CRED_MURAKAWA, CRED_FUKUI, $FD
+ db CRED_SPECIAL, CRED_IWATA, $FD
+ db CRED_SPECIAL, CRED_HARADA, $FC
+ db CRED_TEST, CRED_PAAD, CRED_CLUB, $FD
+ db CRED_PRODUCER, CRED_IZUSHI, $FD
+ db CRED_EXECUTIVE, CRED_YAMAUCHI, $FF
+ db $FB, $FF, $FA
diff --git a/data/cries.asm b/data/cries.asm
new file mode 100755
index 00000000..7d03b831
--- /dev/null
+++ b/data/cries.asm
@@ -0,0 +1,192 @@
+CryData: ; 39446 (e:5446)
+ ;$BaseCry, $Pitch, $Length
+ db $11, $00, $80; Rhydon
+ db $03, $00, $80; Kangaskhan
+ db $00, $00, $80; Nidoran♂
+ db $19, $CC, $01; Clefairy
+ db $10, $00, $80; Spearow
+ db $06, $ED, $80; Voltorb
+ db $09, $00, $80; Nidoking
+ db $1F, $00, $80; Slowbro
+ db $0F, $20, $80; Ivysaur
+ db $0D, $00, $80; Exeggutor
+ db $0C, $00, $80; Lickitung
+ db $0B, $00, $80; Exeggcute
+ db $05, $00, $80; Grimer
+ db $07, $00, $FF; Gengar
+ db $01, $00, $80; Nidoran♀
+ db $0A, $00, $80; Nidoqueen
+ db $19, $00, $80; Cubone
+ db $04, $00, $80; Rhyhorn
+ db $1B, $00, $80; Lapras
+ db $15, $00, $80; Arcanine
+ db $1E, $EE, $FF; Mew
+ db $17, $00, $80; Gyarados
+ db $18, $00, $80; Shellder
+ db $1A, $00, $80; Tentacool
+ db $1C, $00, $80; Gastly
+ db $16, $00, $80; Scyther
+ db $1E, $02, $20; Staryu
+ db $13, $00, $80; Blastoise
+ db $14, $00, $80; Pinsir
+ db $12, $00, $80; Tangela
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $1F, $20, $40; Growlithe
+ db $17, $FF, $C0; Onix
+ db $18, $40, $A0; Fearow
+ db $0E, $DF, $04; Pidgey
+ db $02, $00, $80; Slowpoke
+ db $1C, $A8, $C0; Kadabra
+ db $24, $00, $80; Graveler
+ db $14, $0A, $C0; Chansey
+ db $1F, $48, $60; Machoke
+ db $20, $08, $40; Mr.Mime
+ db $12, $80, $C0; Hitmonlee
+ db $0C, $EE, $C0; Hitmonchan
+ db $17, $E0, $10; Arbok
+ db $1E, $42, $FF; Parasect
+ db $21, $20, $60; Psyduck
+ db $0D, $88, $20; Drowzee
+ db $12, $E0, $40; Golem
+ db $00, $00, $00; MissingNo.
+ db $04, $FF, $30; Magmar
+ db $00, $00, $00; MissingNo.
+ db $06, $8F, $FF; Electabuzz
+ db $1C, $20, $C0; Magneton
+ db $12, $E6, $DD; Koffing
+ db $00, $00, $00; MissingNo.
+ db $0A, $DD, $60; Mankey
+ db $0C, $88, $C0; Seel
+ db $0B, $AA, $01; Diglett
+ db $1D, $11, $40; Tauros
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $10, $DD, $01; Farfetch'd
+ db $1A, $44, $40; Venonat
+ db $0F, $3C, $C0; Dragonite
+ db $00, $80, $10; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $1D, $E0, $80; MissingNo.
+ db $0B, $BB, $01; Doduo
+ db $0E, $FF, $FF; Poliwag
+ db $0D, $FF, $FF; Jynx
+ db $09, $F8, $40; Moltres
+ db $09, $80, $40; Articuno
+ db $18, $FF, $80; Zapdos
+ db $0E, $FF, $FF; Ditto
+ db $19, $77, $10; Meowth
+ db $20, $20, $E0; Krabby
+ db $22, $FF, $40; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $0E, $E0, $60; MissingNo.
+ db $24, $4F, $10; Vulpix
+ db $24, $88, $60; Ninetales
+ db $0F, $EE, $01; Pikachu
+ db $09, $EE, $08; Raichu
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $0F, $60, $40; Dratini
+ db $0F, $40, $80; Dragonair
+ db $16, $BB, $40; Kabuto
+ db $18, $EE, $01; Kabutops
+ db $19, $99, $10; Horsea
+ db $19, $3C, $01; Seadra
+ db $0F, $40, $C0; MissingNo.
+ db $0F, $20, $C0; MissingNo.
+ db $00, $20, $40; Sandshrew
+ db $00, $FF, $FF; Sandslash
+ db $1F, $F0, $01; Omanyte
+ db $1F, $FF, $40; Omastar
+ db $0E, $FF, $35; Jigglypuff
+ db $0E, $68, $60; Wigglytuff
+ db $1A, $88, $60; Eevee
+ db $1A, $10, $20; Flareon
+ db $1A, $3D, $80; Jolteon
+ db $1A, $AA, $FF; Vaporeon
+ db $1F, $EE, $01; Machop
+ db $1D, $E0, $80; Zubat
+ db $17, $12, $40; Ekans
+ db $1E, $20, $E0; Paras
+ db $0E, $77, $60; Poliwhirl
+ db $0E, $00, $FF; Poliwrath
+ db $15, $EE, $01; Weedle
+ db $13, $FF, $01; Kakuna
+ db $13, $60, $80; Beedrill
+ db $00, $00, $00; MissingNo.
+ db $0B, $99, $20; Dodrio
+ db $0A, $AF, $40; Primeape
+ db $0B, $2A, $10; Dugtrio
+ db $1A, $29, $80; Venomoth
+ db $0C, $23, $FF; Dewgong
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $16, $80, $20; Caterpie
+ db $1C, $CC, $01; Metapod
+ db $16, $77, $40; Butterfree
+ db $1F, $08, $C0; Machamp
+ db $11, $20, $10; MissingNo.
+ db $21, $FF, $40; Golduck
+ db $0D, $EE, $40; Hypno
+ db $1D, $FA, $80; Golbat
+ db $1E, $99, $FF; Mewtwo
+ db $05, $55, $01; Snorlax
+ db $17, $80, $00; Magikarp
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $07, $EF, $FF; Muk
+ db $0F, $40, $80; MissingNo.
+ db $20, $EE, $E0; Kingler
+ db $18, $6F, $E0; Cloyster
+ db $00, $00, $00; MissingNo.
+ db $06, $A8, $90; Electrode
+ db $19, $AA, $20; Clefable
+ db $12, $FF, $FF; Weezing
+ db $19, $99, $FF; Persian
+ db $08, $4F, $60; Marowak
+ db $00, $00, $00; MissingNo.
+ db $1C, $30, $40; Haunter
+ db $1C, $C0, $01; Abra
+ db $1C, $98, $FF; Alakazam
+ db $14, $28, $C0; Pidgeotto
+ db $14, $11, $FF; Pidgeot
+ db $1E, $00, $80; Starmie
+ db $0F, $80, $01; Bulbasaur
+ db $0F, $00, $C0; Venusaur
+ db $1A, $EE, $FF; Tentacruel
+ db $00, $00, $00; MissingNo.
+ db $16, $80, $40; Goldeen
+ db $16, $10, $FF; Seaking
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $25, $00, $80; Ponyta
+ db $25, $20, $C0; Rapidash
+ db $22, $00, $80; Rattata
+ db $22, $20, $FF; Raticate
+ db $00, $2C, $C0; Nidorino
+ db $01, $2C, $E0; Nidorina
+ db $24, $F0, $10; Geodude
+ db $25, $AA, $FF; Porygon
+ db $23, $20, $F0; Aerodactyl
+ db $00, $00, $00; MissingNo.
+ db $1C, $80, $60; Magnemite
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $04, $60, $40; Charmander
+ db $1D, $60, $40; Squirtle
+ db $04, $20, $40; Charmeleon
+ db $1D, $20, $40; Wartortle
+ db $04, $00, $80; Charizard
+ db $1D, $00, $80; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $00, $00, $00; MissingNo.
+ db $08, $DD, $01; Oddish
+ db $08, $AA, $40; Gloom
+ db $23, $22, $FF; Vileplume
+ db $21, $55, $01; Bellsprout
+ db $25, $44, $20; Weepinbell
+ db $25, $66, $CC; Victreebel
diff --git a/data/dungeon_tilesets.asm b/data/dungeon_tilesets.asm
new file mode 100755
index 00000000..3501f2b9
--- /dev/null
+++ b/data/dungeon_tilesets.asm
@@ -0,0 +1,2 @@
+DungeonTilesets: ; c7b2 (3:47b2)
+ db FOREST, MUSEUM, SHIP, CAVERN, LOBBY, MANSION, GATE, LAB, FACILITY, CEMETERY, GYM, $FF
diff --git a/data/evos_moves.asm b/data/evos_moves.asm
new file mode 100755
index 00000000..cdbec0d8
--- /dev/null
+++ b/data/evos_moves.asm
@@ -0,0 +1,2171 @@
+EvosMovesPointerTable: ; 3b05c (e:705c)
+ dw Mon112_EvosMoves
+ dw Mon115_EvosMoves
+ dw Mon032_EvosMoves
+ dw Mon035_EvosMoves
+ dw Mon021_EvosMoves
+ dw Mon100_EvosMoves
+ dw Mon034_EvosMoves
+ dw Mon080_EvosMoves
+ dw Mon002_EvosMoves
+ dw Mon103_EvosMoves
+ dw Mon108_EvosMoves
+ dw Mon102_EvosMoves
+ dw Mon088_EvosMoves
+ dw Mon094_EvosMoves
+ dw Mon029_EvosMoves
+ dw Mon031_EvosMoves
+ dw Mon104_EvosMoves
+ dw Mon111_EvosMoves
+ dw Mon131_EvosMoves
+ dw Mon059_EvosMoves
+ dw Mon151_EvosMoves
+ dw Mon130_EvosMoves
+ dw Mon090_EvosMoves
+ dw Mon072_EvosMoves
+ dw Mon092_EvosMoves
+ dw Mon123_EvosMoves
+ dw Mon120_EvosMoves
+ dw Mon009_EvosMoves
+ dw Mon127_EvosMoves
+ dw Mon114_EvosMoves
+ dw Mon152_EvosMoves ;MissingNo
+ dw Mon153_EvosMoves ;MissingNo
+ dw Mon058_EvosMoves
+ dw Mon095_EvosMoves
+ dw Mon022_EvosMoves
+ dw Mon016_EvosMoves
+ dw Mon079_EvosMoves
+ dw Mon064_EvosMoves
+ dw Mon075_EvosMoves
+ dw Mon113_EvosMoves
+ dw Mon067_EvosMoves
+ dw Mon122_EvosMoves
+ dw Mon106_EvosMoves
+ dw Mon107_EvosMoves
+ dw Mon024_EvosMoves
+ dw Mon047_EvosMoves
+ dw Mon054_EvosMoves
+ dw Mon096_EvosMoves
+ dw Mon076_EvosMoves
+ dw Mon154_EvosMoves ;MissingNo
+ dw Mon126_EvosMoves
+ dw Mon155_EvosMoves ;MissingNo
+ dw Mon125_EvosMoves
+ dw Mon082_EvosMoves
+ dw Mon109_EvosMoves
+ dw Mon156_EvosMoves ;MissingNo
+ dw Mon056_EvosMoves
+ dw Mon086_EvosMoves
+ dw Mon050_EvosMoves
+ dw Mon128_EvosMoves
+ dw Mon157_EvosMoves ;MissingNo
+ dw Mon158_EvosMoves ;MissingNo
+ dw Mon159_EvosMoves ;MissingNo
+ dw Mon083_EvosMoves
+ dw Mon048_EvosMoves
+ dw Mon149_EvosMoves
+ dw Mon160_EvosMoves ;MissingNo
+ dw Mon161_EvosMoves ;MissingNo
+ dw Mon162_EvosMoves ;MissingNo
+ dw Mon084_EvosMoves
+ dw Mon060_EvosMoves
+ dw Mon124_EvosMoves
+ dw Mon146_EvosMoves
+ dw Mon144_EvosMoves
+ dw Mon145_EvosMoves
+ dw Mon132_EvosMoves
+ dw Mon052_EvosMoves
+ dw Mon098_EvosMoves
+ dw Mon163_EvosMoves ;MissingNo
+ dw Mon164_EvosMoves ;MissingNo
+ dw Mon165_EvosMoves ;MissingNo
+ dw Mon037_EvosMoves
+ dw Mon038_EvosMoves
+ dw Mon025_EvosMoves
+ dw Mon026_EvosMoves
+ dw Mon166_EvosMoves ;MissingNo
+ dw Mon167_EvosMoves ;MissingNo
+ dw Mon147_EvosMoves
+ dw Mon148_EvosMoves
+ dw Mon140_EvosMoves
+ dw Mon141_EvosMoves
+ dw Mon116_EvosMoves
+ dw Mon117_EvosMoves
+ dw Mon168_EvosMoves ;MissingNo
+ dw Mon169_EvosMoves ;MissingNo
+ dw Mon027_EvosMoves
+ dw Mon028_EvosMoves
+ dw Mon138_EvosMoves
+ dw Mon139_EvosMoves
+ dw Mon039_EvosMoves
+ dw Mon040_EvosMoves
+ dw Mon133_EvosMoves
+ dw Mon136_EvosMoves
+ dw Mon135_EvosMoves
+ dw Mon134_EvosMoves
+ dw Mon066_EvosMoves
+ dw Mon041_EvosMoves
+ dw Mon023_EvosMoves
+ dw Mon046_EvosMoves
+ dw Mon061_EvosMoves
+ dw Mon062_EvosMoves
+ dw Mon013_EvosMoves
+ dw Mon014_EvosMoves
+ dw Mon015_EvosMoves
+ dw Mon170_EvosMoves ;MissingNo
+ dw Mon085_EvosMoves
+ dw Mon057_EvosMoves
+ dw Mon051_EvosMoves
+ dw Mon049_EvosMoves
+ dw Mon087_EvosMoves
+ dw Mon171_EvosMoves ;MissingNo
+ dw Mon172_EvosMoves ;MissingNo
+ dw Mon010_EvosMoves
+ dw Mon011_EvosMoves
+ dw Mon012_EvosMoves
+ dw Mon068_EvosMoves
+ dw Mon173_EvosMoves ;MissingNo
+ dw Mon055_EvosMoves
+ dw Mon097_EvosMoves
+ dw Mon042_EvosMoves
+ dw Mon150_EvosMoves
+ dw Mon143_EvosMoves
+ dw Mon129_EvosMoves
+ dw Mon174_EvosMoves ;MissingNo
+ dw Mon175_EvosMoves ;MissingNo
+ dw Mon089_EvosMoves
+ dw Mon176_EvosMoves ;MissingNo
+ dw Mon099_EvosMoves
+ dw Mon091_EvosMoves
+ dw Mon177_EvosMoves ;MissingNo
+ dw Mon101_EvosMoves
+ dw Mon036_EvosMoves
+ dw Mon110_EvosMoves
+ dw Mon053_EvosMoves
+ dw Mon105_EvosMoves
+ dw Mon178_EvosMoves ;MissingNo
+ dw Mon093_EvosMoves
+ dw Mon063_EvosMoves
+ dw Mon065_EvosMoves
+ dw Mon017_EvosMoves
+ dw Mon018_EvosMoves
+ dw Mon121_EvosMoves
+ dw Mon001_EvosMoves
+ dw Mon003_EvosMoves
+ dw Mon073_EvosMoves
+ dw Mon179_EvosMoves ;MissingNo
+ dw Mon118_EvosMoves
+ dw Mon119_EvosMoves
+ dw Mon180_EvosMoves ;MissingNo
+ dw Mon181_EvosMoves ;MissingNo
+ dw Mon182_EvosMoves ;MissingNo
+ dw Mon183_EvosMoves ;MissingNo
+ dw Mon077_EvosMoves
+ dw Mon078_EvosMoves
+ dw Mon019_EvosMoves
+ dw Mon020_EvosMoves
+ dw Mon033_EvosMoves
+ dw Mon030_EvosMoves
+ dw Mon074_EvosMoves
+ dw Mon137_EvosMoves
+ dw Mon142_EvosMoves
+ dw Mon184_EvosMoves ;MissingNo
+ dw Mon081_EvosMoves
+ dw Mon185_EvosMoves ;MissingNo
+ dw Mon186_EvosMoves ;MissingNo
+ dw Mon004_EvosMoves
+ dw Mon007_EvosMoves
+ dw Mon005_EvosMoves
+ dw Mon008_EvosMoves
+ dw Mon006_EvosMoves
+ dw Mon187_EvosMoves ;MissingNo
+ dw Mon188_EvosMoves ;MissingNo
+ dw Mon189_EvosMoves ;MissingNo
+ dw Mon190_EvosMoves ;MissingNo
+ dw Mon043_EvosMoves
+ dw Mon044_EvosMoves
+ dw Mon045_EvosMoves
+ dw Mon069_EvosMoves
+ dw Mon070_EvosMoves
+ dw Mon071_EvosMoves
+
+Mon112_EvosMoves: ; 3b1d8 (e:71d8)
+;RHYDON
+;Evolutions
+ db 0
+;Learnset
+ db 30,STOMP
+ db 35,TAIL_WHIP
+ db 40,FURY_ATTACK
+ db 48,HORN_DRILL
+ db 55,LEER
+ db 64,TAKE_DOWN
+ db 0
+Mon115_EvosMoves: ; 3b1e6 (e:71e6)
+;KANGASKHAN
+;Evolutions
+ db 0
+;Learnset
+ db 26,BITE
+ db 31,TAIL_WHIP
+ db 36,MEGA_PUNCH
+ db 41,LEER
+ db 46,DIZZY_PUNCH
+ db 0
+Mon032_EvosMoves: ; 3b1f2 (e:71f2)
+;NIDORAN_M
+;Evolutions
+ db EV_LEVEL,16,NIDORINO
+ db 0
+;Learnset
+ db 8,HORN_ATTACK
+ db 14,POISON_STING
+ db 21,FOCUS_ENERGY
+ db 29,FURY_ATTACK
+ db 36,HORN_DRILL
+ db 43,DOUBLE_KICK
+ db 0
+Mon035_EvosMoves: ; 3b203 (e:7203)
+;CLEFAIRY
+;Evolutions
+ db EV_ITEM,MOON_STONE,1,CLEFABLE
+ db 0
+;Learnset
+ db 13,SING
+ db 18,DOUBLESLAP
+ db 24,MINIMIZE
+ db 31,METRONOME
+ db 39,DEFENSE_CURL
+ db 48,LIGHT_SCREEN
+ db 0
+Mon021_EvosMoves: ; 3b215 (e:7215)
+;SPEAROW
+;Evolutions
+ db EV_LEVEL,20,FEAROW
+ db 0
+;Learnset
+ db 9,LEER
+ db 15,FURY_ATTACK
+ db 22,MIRROR_MOVE
+ db 29,DRILL_PECK
+ db 36,AGILITY
+ db 0
+Mon100_EvosMoves: ; 3b224 (e:7224)
+;VOLTORB
+;Evolutions
+ db EV_LEVEL,30,ELECTRODE
+ db 0
+;Learnset
+ db 17,SONICBOOM
+ db 22,SELFDESTRUCT
+ db 29,LIGHT_SCREEN
+ db 36,SWIFT
+ db 43,EXPLOSION
+ db 0
+Mon034_EvosMoves: ; 3b233 (e:7233)
+;NIDOKING
+;Evolutions
+ db 0
+;Learnset
+ db 8,HORN_ATTACK
+ db 14,POISON_STING
+ db 23,THRASH
+ db 0
+Mon080_EvosMoves: ; 3b23b (e:723b)
+;SLOWBRO
+;Evolutions
+ db 0
+;Learnset
+ db 18,DISABLE
+ db 22,HEADBUTT
+ db 27,GROWL
+ db 33,WATER_GUN
+ db 37,WITHDRAW
+ db 44,AMNESIA
+ db 55,PSYCHIC_M
+ db 0
+Mon002_EvosMoves: ; 3b24b (e:724b)
+;IVYSAUR
+;Evolutions
+ db EV_LEVEL,32,VENUSAUR
+ db 0
+;Learnset
+ db 7,LEECH_SEED
+ db 13,VINE_WHIP
+ db 22,POISONPOWDER
+ db 30,RAZOR_LEAF
+ db 38,GROWTH
+ db 46,SLEEP_POWDER
+ db 54,SOLARBEAM
+ db 0
+Mon103_EvosMoves: ; 3b25e (e:725e)
+;EXEGGUTOR
+;Evolutions
+ db 0
+;Learnset
+ db 28,STOMP
+ db 0
+Mon108_EvosMoves: ; 3b262 (e:7262)
+;LICKITUNG
+;Evolutions
+ db 0
+;Learnset
+ db 7,STOMP
+ db 15,DISABLE
+ db 23,DEFENSE_CURL
+ db 31,SLAM
+ db 39,SCREECH
+ db 0
+Mon102_EvosMoves: ; 3b26e (e:726e)
+;EXEGGCUTE
+;Evolutions
+ db EV_ITEM,LEAF_STONE ,1,EXEGGUTOR
+ db 0
+;Learnset
+ db 25,REFLECT
+ db 28,LEECH_SEED
+ db 32,STUN_SPORE
+ db 37,POISONPOWDER
+ db 42,SOLARBEAM
+ db 48,SLEEP_POWDER
+ db 0
+Mon088_EvosMoves: ; 3b280 (e:7280)
+;GRIMER
+;Evolutions
+ db EV_LEVEL,38,MUK
+ db 0
+;Learnset
+ db 30,POISON_GAS
+ db 33,MINIMIZE
+ db 37,SLUDGE
+ db 42,HARDEN
+ db 48,SCREECH
+ db 55,ACID_ARMOR
+ db 0
+Mon094_EvosMoves: ; 3b291 (e:7291)
+;GENGAR
+;Evolutions
+ db 0
+;Learnset
+ db 29,HYPNOSIS
+ db 38,DREAM_EATER
+ db 0
+Mon029_EvosMoves: ; 3b297 (e:7297)
+;NIDORAN_F
+;Evolutions
+ db EV_LEVEL,16,NIDORINA
+ db 0
+;Learnset
+ db 8,SCRATCH
+ db 14,POISON_STING
+ db 21,TAIL_WHIP
+ db 29,BITE
+ db 36,FURY_SWIPES
+ db 43,DOUBLE_KICK
+ db 0
+Mon031_EvosMoves: ; 3b2a8 (e:72a8)
+;NIDOQUEEN
+;Evolutions
+ db 0
+;Learnset
+ db 8,SCRATCH
+ db 14,POISON_STING
+ db 23,BODY_SLAM
+ db 0
+Mon104_EvosMoves: ; 3b2b0 (e:72b0)
+;CUBONE
+;Evolutions
+ db EV_LEVEL,28,MAROWAK
+ db 0
+;Learnset
+ db 25,LEER
+ db 31,FOCUS_ENERGY
+ db 38,THRASH
+ db 43,BONEMERANG
+ db 46,RAGE
+ db 0
+Mon111_EvosMoves: ; 3b2bf (e:72bf)
+;RHYHORN
+;Evolutions
+ db EV_LEVEL,42,RHYDON
+ db 0
+;Learnset
+ db 30,STOMP
+ db 35,TAIL_WHIP
+ db 40,FURY_ATTACK
+ db 45,HORN_DRILL
+ db 50,LEER
+ db 55,TAKE_DOWN
+ db 0
+Mon131_EvosMoves: ; 3b2d0 (e:72d0)
+;LAPRAS
+;Evolutions
+ db 0
+;Learnset
+ db 16,SING
+ db 20,MIST
+ db 25,BODY_SLAM
+ db 31,CONFUSE_RAY
+ db 38,ICE_BEAM
+ db 46,HYDRO_PUMP
+ db 0
+Mon059_EvosMoves: ; 3b2de (e:72de)
+;ARCANINE
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon151_EvosMoves: ; 3b2e0 (e:72e0)
+;MEW
+;Evolutions
+ db 0
+;Learnset
+ db 10,TRANSFORM
+ db 20,MEGA_PUNCH
+ db 30,METRONOME
+ db 40,PSYCHIC_M
+ db 0
+Mon130_EvosMoves: ; 3b2ea (e:72ea)
+;GYARADOS
+;Evolutions
+ db 0
+;Learnset
+ db 20,BITE
+ db 25,DRAGON_RAGE
+ db 32,LEER
+ db 41,HYDRO_PUMP
+ db 52,HYPER_BEAM
+ db 0
+Mon090_EvosMoves: ; 3b2f6 (e:72f6)
+;SHELLDER
+;Evolutions
+ db EV_ITEM,WATER_STONE ,1,CLOYSTER
+ db 0
+;Learnset
+ db 18,SUPERSONIC
+ db 23,CLAMP
+ db 30,AURORA_BEAM
+ db 39,LEER
+ db 50,ICE_BEAM
+ db 0
+Mon072_EvosMoves: ; 3b306 (e:7306)
+;TENTACOOL
+;Evolutions
+ db EV_LEVEL,30,TENTACRUEL
+ db 0
+;Learnset
+ db 7,SUPERSONIC
+ db 13,WRAP
+ db 18,POISON_STING
+ db 22,WATER_GUN
+ db 27,CONSTRICT
+ db 33,BARRIER
+ db 40,SCREECH
+ db 48,HYDRO_PUMP
+ db 0
+Mon092_EvosMoves: ; 3b31b (e:731b)
+;GASTLY
+;Evolutions
+ db EV_LEVEL,25,HAUNTER
+ db 0
+;Learnset
+ db 27,HYPNOSIS
+ db 35,DREAM_EATER
+ db 0
+Mon123_EvosMoves: ; 3b324 (e:7324)
+;SCYTHER
+;Evolutions
+ db 0
+;Learnset
+ db 17,LEER
+ db 20,FOCUS_ENERGY
+ db 24,DOUBLE_TEAM
+ db 29,SLASH
+ db 35,SWORDS_DANCE
+ db 42,AGILITY
+ db 0
+Mon120_EvosMoves: ; 3b332 (e:7332)
+;STARYU
+;Evolutions
+ db EV_ITEM,WATER_STONE ,1,STARMIE
+ db 0
+;Learnset
+ db 17,WATER_GUN
+ db 22,HARDEN
+ db 27,RECOVER
+ db 32,SWIFT
+ db 37,MINIMIZE
+ db 42,LIGHT_SCREEN
+ db 47,HYDRO_PUMP
+ db 0
+Mon009_EvosMoves: ; 3b346 (e:7346)
+;BLASTOISE
+;Evolutions
+ db 0
+;Learnset
+ db 8,BUBBLE
+ db 15,WATER_GUN
+ db 24,BITE
+ db 31,WITHDRAW
+ db 42,SKULL_BASH
+ db 52,HYDRO_PUMP
+ db 0
+Mon127_EvosMoves: ; 3b354 (e:7354)
+;PINSIR
+;Evolutions
+ db 0
+;Learnset
+ db 25,SEISMIC_TOSS
+ db 30,GUILLOTINE
+ db 36,FOCUS_ENERGY
+ db 43,HARDEN
+ db 49,SLASH
+ db 54,SWORDS_DANCE
+ db 0
+Mon114_EvosMoves: ; 3b362 (e:7362)
+;TANGELA
+;Evolutions
+ db 0
+;Learnset
+ db 29,ABSORB
+ db 32,POISONPOWDER
+ db 36,STUN_SPORE
+ db 39,SLEEP_POWDER
+ db 45,SLAM
+ db 49,GROWTH
+ db 0
+
+Mon152_EvosMoves: ; 3b370 (e:7370)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon153_EvosMoves: ; 3b372 (e:7372)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon058_EvosMoves: ; 3b374 (e:7374)
+;GROWLITHE
+;Evolutions
+ db EV_ITEM,FIRE_STONE,1,ARCANINE
+ db 0
+;Learnset
+ db 18,EMBER
+ db 23,LEER
+ db 30,TAKE_DOWN
+ db 39,AGILITY
+ db 50,FLAMETHROWER
+ db 0
+Mon095_EvosMoves: ; 3b384 (e:7384)
+;ONIX
+;Evolutions
+ db 0
+;Learnset
+ db 15,BIND
+ db 19,ROCK_THROW
+ db 25,RAGE
+ db 33,SLAM
+ db 43,HARDEN
+ db 0
+Mon022_EvosMoves: ; 3b390 (e:7390)
+;FEAROW
+;Evolutions
+ db 0
+;Learnset
+ db 9,LEER
+ db 15,FURY_ATTACK
+ db 25,MIRROR_MOVE
+ db 34,DRILL_PECK
+ db 43,AGILITY
+ db 0
+Mon016_EvosMoves: ; 3b39c (e:739c)
+;PIDGEY
+;Evolutions
+ db EV_LEVEL,18,PIDGEOTTO
+ db 0
+;Learnset
+ db 5,SAND_ATTACK
+ db 12,QUICK_ATTACK
+ db 19,WHIRLWIND
+ db 28,WING_ATTACK
+ db 36,AGILITY
+ db 44,MIRROR_MOVE
+ db 0
+Mon079_EvosMoves: ; 3b3ad (e:73ad)
+;SLOWPOKE
+;Evolutions
+ db EV_LEVEL,37,SLOWBRO
+ db 0
+;Learnset
+ db 18,DISABLE
+ db 22,HEADBUTT
+ db 27,GROWL
+ db 33,WATER_GUN
+ db 40,AMNESIA
+ db 48,PSYCHIC_M
+ db 0
+Mon064_EvosMoves: ; 3b3be (e:73be)
+;KADABRA
+;Evolutions
+ db EV_TRADE,1,ALAKAZAM
+ db 0
+;Learnset
+ db 16,CONFUSION
+ db 20,DISABLE
+ db 27,PSYBEAM
+ db 31,RECOVER
+ db 38,PSYCHIC_M
+ db 42,REFLECT
+ db 0
+Mon075_EvosMoves: ; 3b3cf (e:73cf)
+;GRAVELER
+;Evolutions
+ db EV_TRADE,1,GOLEM
+ db 0
+;Learnset
+ db 11,DEFENSE_CURL
+ db 16,ROCK_THROW
+ db 21,SELFDESTRUCT
+ db 29,HARDEN
+ db 36,EARTHQUAKE
+ db 43,EXPLOSION
+ db 0
+Mon113_EvosMoves: ; 3b3e0 (e:73e0)
+;CHANSEY
+;Evolutions
+ db 0
+;Learnset
+ db 24,SING
+ db 30,GROWL
+ db 38,MINIMIZE
+ db 44,DEFENSE_CURL
+ db 48,LIGHT_SCREEN
+ db 54,DOUBLE_EDGE
+ db 0
+Mon067_EvosMoves: ; 3b3ee (e:73ee)
+;MACHOKE
+;Evolutions
+ db EV_TRADE,1,MACHAMP
+ db 0
+;Learnset
+ db 20,LOW_KICK
+ db 25,LEER
+ db 36,FOCUS_ENERGY
+ db 44,SEISMIC_TOSS
+ db 52,SUBMISSION
+ db 0
+Mon122_EvosMoves: ; 3b3fd (e:73fd)
+;MR_MIME
+;Evolutions
+ db 0
+;Learnset
+ db 15,CONFUSION
+ db 23,LIGHT_SCREEN
+ db 31,DOUBLESLAP
+ db 39,MEDITATE
+ db 47,SUBSTITUTE
+ db 0
+Mon106_EvosMoves: ; 3b409 (e:7409)
+;HITMONLEE
+;Evolutions
+ db 0
+;Learnset
+ db 33,ROLLING_KICK
+ db 38,JUMP_KICK
+ db 43,FOCUS_ENERGY
+ db 48,HI_JUMP_KICK
+ db 53,MEGA_KICK
+ db 0
+Mon107_EvosMoves: ; 3b415 (e:7415)
+;HITMONCHAN
+;Evolutions
+ db 0
+;Learnset
+ db 33,FIRE_PUNCH
+ db 38,ICE_PUNCH
+ db 43,THUNDERPUNCH
+ db 48,MEGA_PUNCH
+ db 53,COUNTER
+ db 0
+Mon024_EvosMoves: ; 3b421 (e:7421)
+;ARBOK
+;Evolutions
+ db 0
+;Learnset
+ db 10,POISON_STING
+ db 17,BITE
+ db 27,GLARE
+ db 36,SCREECH
+ db 47,ACID
+ db 0
+Mon047_EvosMoves: ; 3b42d (e:742d)
+;PARASECT
+;Evolutions
+ db 0
+;Learnset
+ db 13,STUN_SPORE
+ db 20,LEECH_LIFE
+ db 30,SPORE
+ db 39,SLASH
+ db 48,GROWTH
+ db 0
+Mon054_EvosMoves: ; 3b439 (e:7439)
+;PSYDUCK
+;Evolutions
+ db EV_LEVEL,33,GOLDUCK
+ db 0
+;Learnset
+ db 28,TAIL_WHIP
+ db 31,DISABLE
+ db 36,CONFUSION
+ db 43,FURY_SWIPES
+ db 52,HYDRO_PUMP
+ db 0
+Mon096_EvosMoves: ; 3b448 (e:7448)
+;DROWZEE
+;Evolutions
+ db EV_LEVEL,26,HYPNO
+ db 0
+;Learnset
+ db 12,DISABLE
+ db 17,CONFUSION
+ db 24,HEADBUTT
+ db 29,POISON_GAS
+ db 32,PSYCHIC_M
+ db 37,MEDITATE
+ db 0
+Mon076_EvosMoves: ; 3b459 (e:7459)
+;GOLEM
+;Evolutions
+ db 0
+;Learnset
+ db 11,DEFENSE_CURL
+ db 16,ROCK_THROW
+ db 21,SELFDESTRUCT
+ db 29,HARDEN
+ db 36,EARTHQUAKE
+ db 43,EXPLOSION
+ db 0
+
+Mon154_EvosMoves: ; 3b467 (e:7467)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon126_EvosMoves: ; 3b469 (e:7469)
+;MAGMAR
+;Evolutions
+ db 0
+;Learnset
+ db 36,LEER
+ db 39,CONFUSE_RAY
+ db 43,FIRE_PUNCH
+ db 48,SMOKESCREEN
+ db 52,SMOG
+ db 55,FLAMETHROWER
+ db 0
+
+Mon155_EvosMoves: ; 3b477 (e:7477)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon125_EvosMoves: ; 3b479 (e:7479)
+;ELECTABUZZ
+;Evolutions
+ db 0
+;Learnset
+ db 34,THUNDERSHOCK
+ db 37,SCREECH
+ db 42,THUNDERPUNCH
+ db 49,LIGHT_SCREEN
+ db 54,THUNDER
+ db 0
+Mon082_EvosMoves: ; 3b485 (e:7485)
+;MAGNETON
+;Evolutions
+ db 0
+;Learnset
+ db 21,SONICBOOM
+ db 25,THUNDERSHOCK
+ db 29,SUPERSONIC
+ db 38,THUNDER_WAVE
+ db 46,SWIFT
+ db 54,SCREECH
+ db 0
+Mon109_EvosMoves: ; 3b493 (e:7493)
+;KOFFING
+;Evolutions
+ db EV_LEVEL,35,WEEZING
+ db 0
+;Learnset
+ db 32,SLUDGE
+ db 37,SMOKESCREEN
+ db 40,SELFDESTRUCT
+ db 45,HAZE
+ db 48,EXPLOSION
+ db 0
+
+Mon156_EvosMoves: ; 3b4a2 (e:74a2)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon056_EvosMoves: ; 3b4a4 (e:74a4)
+;MANKEY
+;Evolutions
+ db EV_LEVEL,28,PRIMEAPE
+ db 0
+;Learnset
+ db 15,KARATE_CHOP
+ db 21,FURY_SWIPES
+ db 27,FOCUS_ENERGY
+ db 33,SEISMIC_TOSS
+ db 39,THRASH
+ db 0
+Mon086_EvosMoves: ; 3b4b3 (e:74b3)
+;SEEL
+;Evolutions
+ db EV_LEVEL,34,DEWGONG
+ db 0
+;Learnset
+ db 30,GROWL
+ db 35,AURORA_BEAM
+ db 40,REST
+ db 45,TAKE_DOWN
+ db 50,ICE_BEAM
+ db 0
+Mon050_EvosMoves: ; 3b4c2 (e:74c2)
+;DIGLETT
+;Evolutions
+ db EV_LEVEL,26,DUGTRIO
+ db 0
+;Learnset
+ db 15,GROWL
+ db 19,DIG
+ db 24,SAND_ATTACK
+ db 31,SLASH
+ db 40,EARTHQUAKE
+ db 0
+Mon128_EvosMoves: ; 3b4d1 (e:74d1)
+;TAUROS
+;Evolutions
+ db 0
+;Learnset
+ db 21,STOMP
+ db 28,TAIL_WHIP
+ db 35,LEER
+ db 44,RAGE
+ db 51,TAKE_DOWN
+ db 0
+
+Mon157_EvosMoves: ; 3b4dd (e:74dd)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon158_EvosMoves: ; 3b4df (e:74df)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon159_EvosMoves: ; 3b4e1 (e:74e1)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon083_EvosMoves: ; 3b4e3 (e:74e3)
+;FARFETCH_D
+;Evolutions
+ db 0
+;Learnset
+ db 7,LEER
+ db 15,FURY_ATTACK
+ db 23,SWORDS_DANCE
+ db 31,AGILITY
+ db 39,SLASH
+ db 0
+Mon048_EvosMoves: ; 3b4ef (e:74ef)
+;VENONAT
+;Evolutions
+ db EV_LEVEL,31,VENOMOTH
+ db 0
+;Learnset
+ db 24,POISONPOWDER
+ db 27,LEECH_LIFE
+ db 30,STUN_SPORE
+ db 35,PSYBEAM
+ db 38,SLEEP_POWDER
+ db 43,PSYCHIC_M
+ db 0
+Mon149_EvosMoves: ; 3b500 (e:7500)
+;DRAGONITE
+;Evolutions
+ db 0
+;Learnset
+ db 10,THUNDER_WAVE
+ db 20,AGILITY
+ db 35,SLAM
+ db 45,DRAGON_RAGE
+ db 60,HYPER_BEAM
+ db 0
+
+Mon160_EvosMoves: ; 3b50c (e:750c)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon161_EvosMoves: ; 3b50e (e:750e)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon162_EvosMoves: ; 3b510 (e:7510)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon084_EvosMoves: ; 3b512 (e:7512)
+;DODUO
+;Evolutions
+ db EV_LEVEL,31,DODRIO
+ db 0
+;Learnset
+ db 20,GROWL
+ db 24,FURY_ATTACK
+ db 30,DRILL_PECK
+ db 36,RAGE
+ db 40,TRI_ATTACK
+ db 44,AGILITY
+ db 0
+Mon060_EvosMoves: ; 3b523 (e:7523)
+;POLIWAG
+;Evolutions
+ db EV_LEVEL,25,POLIWHIRL
+ db 0
+;Learnset
+ db 16,HYPNOSIS
+ db 19,WATER_GUN
+ db 25,DOUBLESLAP
+ db 31,BODY_SLAM
+ db 38,AMNESIA
+ db 45,HYDRO_PUMP
+ db 0
+Mon124_EvosMoves: ; 3b534 (e:7534)
+;JYNX
+;Evolutions
+ db 0
+;Learnset
+ db 18,LICK
+ db 23,DOUBLESLAP
+ db 31,ICE_PUNCH
+ db 39,BODY_SLAM
+ db 47,THRASH
+ db 58,BLIZZARD
+ db 0
+Mon146_EvosMoves: ; 3b542 (e:7542)
+;MOLTRES
+;Evolutions
+ db 0
+;Learnset
+ db 51,LEER
+ db 55,AGILITY
+ db 60,SKY_ATTACK
+ db 0
+Mon144_EvosMoves: ; 3b54a (e:754a)
+;ARTICUNO
+;Evolutions
+ db 0
+;Learnset
+ db 51,BLIZZARD
+ db 55,AGILITY
+ db 60,MIST
+ db 0
+Mon145_EvosMoves: ; 3b552 (e:7552)
+;ZAPDOS
+;Evolutions
+ db 0
+;Learnset
+ db 51,THUNDER
+ db 55,AGILITY
+ db 60,LIGHT_SCREEN
+ db 0
+Mon132_EvosMoves: ; 3b55a (e:755a)
+;DITTO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon052_EvosMoves: ; 3b55c (e:755c)
+;MEOWTH
+;Evolutions
+ db EV_LEVEL,28,PERSIAN
+ db 0
+;Learnset
+ db 12,BITE
+ db 17,PAY_DAY
+ db 24,SCREECH
+ db 33,FURY_SWIPES
+ db 44,SLASH
+ db 0
+Mon098_EvosMoves: ; 3b56b (e:756b)
+;KRABBY
+;Evolutions
+ db EV_LEVEL,28,KINGLER
+ db 0
+;Learnset
+ db 20,VICEGRIP
+ db 25,GUILLOTINE
+ db 30,STOMP
+ db 35,CRABHAMMER
+ db 40,HARDEN
+ db 0
+
+Mon163_EvosMoves: ; 3b57a (e:757a)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon164_EvosMoves: ; 3b57c (e:757c)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon165_EvosMoves: ; 3b57e (e:757e)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon037_EvosMoves: ; 3b580 (e:7580)
+;VULPIX
+;Evolutions
+ db EV_ITEM,FIRE_STONE,1,NINETALES
+ db 0
+;Learnset
+ db 16,QUICK_ATTACK
+ db 21,ROAR
+ db 28,CONFUSE_RAY
+ db 35,FLAMETHROWER
+ db 42,FIRE_SPIN
+ db 0
+Mon038_EvosMoves: ; 3b590 (e:7590)
+;NINETALES
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon025_EvosMoves: ; 3b592 (e:7592)
+;PIKACHU
+;Evolutions
+ db EV_ITEM,THUNDER_STONE ,1,RAICHU
+ db 0
+;Learnset
+ db 9,THUNDER_WAVE
+ db 16,QUICK_ATTACK
+ db 26,SWIFT
+ db 33,AGILITY
+ db 43,THUNDER
+ db 0
+Mon026_EvosMoves: ; 3b5a2 (e:75a2)
+;RAICHU
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon166_EvosMoves: ; 3b5a4 (e:75a4)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon167_EvosMoves: ; 3b5a6 (e:75a6)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon147_EvosMoves: ; 3b5a8 (e:75a8)
+;DRATINI
+;Evolutions
+ db EV_LEVEL,30,DRAGONAIR
+ db 0
+;Learnset
+ db 10,THUNDER_WAVE
+ db 20,AGILITY
+ db 30,SLAM
+ db 40,DRAGON_RAGE
+ db 50,HYPER_BEAM
+ db 0
+Mon148_EvosMoves: ; 3b5b7 (e:75b7)
+;DRAGONAIR
+;Evolutions
+ db EV_LEVEL,55,DRAGONITE
+ db 0
+;Learnset
+ db 10,THUNDER_WAVE
+ db 20,AGILITY
+ db 35,SLAM
+ db 45,DRAGON_RAGE
+ db 55,HYPER_BEAM
+ db 0
+Mon140_EvosMoves: ; 3b5c6 (e:75c6)
+;KABUTO
+;Evolutions
+ db EV_LEVEL,40,KABUTOPS
+ db 0
+;Learnset
+ db 34,ABSORB
+ db 39,SLASH
+ db 44,LEER
+ db 49,HYDRO_PUMP
+ db 0
+Mon141_EvosMoves: ; 3b5d3 (e:75d3)
+;KABUTOPS
+;Evolutions
+ db 0
+;Learnset
+ db 34,ABSORB
+ db 39,SLASH
+ db 46,LEER
+ db 53,HYDRO_PUMP
+ db 0
+Mon116_EvosMoves: ; 3b5dd (e:75dd)
+;HORSEA
+;Evolutions
+ db EV_LEVEL,32,SEADRA
+ db 0
+;Learnset
+ db 19,SMOKESCREEN
+ db 24,LEER
+ db 30,WATER_GUN
+ db 37,AGILITY
+ db 45,HYDRO_PUMP
+ db 0
+Mon117_EvosMoves: ; 3b5ec (e:75ec)
+;SEADRA
+;Evolutions
+ db 0
+;Learnset
+ db 19,SMOKESCREEN
+ db 24,LEER
+ db 30,WATER_GUN
+ db 41,AGILITY
+ db 52,HYDRO_PUMP
+ db 0
+
+Mon168_EvosMoves: ; 3b5f8 (e:75f8)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon169_EvosMoves: ; 3b5fa (e:75fa)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon027_EvosMoves: ; 3b5fc (e:75fc)
+;SANDSHREW
+;Evolutions
+ db EV_LEVEL,22,SANDSLASH
+ db 0
+;Learnset
+ db 10,SAND_ATTACK
+ db 17,SLASH
+ db 24,POISON_STING
+ db 31,SWIFT
+ db 38,FURY_SWIPES
+ db 0
+Mon028_EvosMoves: ; 3b60b (e:760b)
+;SANDSLASH
+;Evolutions
+ db 0
+;Learnset
+ db 10,SAND_ATTACK
+ db 17,SLASH
+ db 27,POISON_STING
+ db 36,SWIFT
+ db 47,FURY_SWIPES
+ db 0
+Mon138_EvosMoves: ; 3b617 (e:7617)
+;OMANYTE
+;Evolutions
+ db EV_LEVEL,40,OMASTAR
+ db 0
+;Learnset
+ db 34,HORN_ATTACK
+ db 39,LEER
+ db 46,SPIKE_CANNON
+ db 53,HYDRO_PUMP
+ db 0
+Mon139_EvosMoves: ; 3b624 (e:7624)
+;OMASTAR
+;Evolutions
+ db 0
+;Learnset
+ db 34,HORN_ATTACK
+ db 39,LEER
+ db 44,SPIKE_CANNON
+ db 49,HYDRO_PUMP
+ db 0
+Mon039_EvosMoves: ; 3b62e (e:762e)
+;JIGGLYPUFF
+;Evolutions
+ db EV_ITEM,MOON_STONE,1,WIGGLYTUFF
+ db 0
+;Learnset
+ db 9,POUND
+ db 14,DISABLE
+ db 19,DEFENSE_CURL
+ db 24,DOUBLESLAP
+ db 29,REST
+ db 34,BODY_SLAM
+ db 39,DOUBLE_EDGE
+ db 0
+Mon040_EvosMoves: ; 3b642 (e:7642)
+;WIGGLYTUFF
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon133_EvosMoves: ; 3b644 (e:7644)
+;EEVEE
+;Evolutions
+ db EV_ITEM,FIRE_STONE,1,FLAREON
+ db EV_ITEM,THUNDER_STONE ,1,JOLTEON
+ db EV_ITEM,WATER_STONE ,1,VAPOREON
+ db 0
+;Learnset
+ db 27,QUICK_ATTACK
+ db 31,TAIL_WHIP
+ db 37,BITE
+ db 45,TAKE_DOWN
+ db 0
+Mon136_EvosMoves: ; 3b65a (e:765a)
+;FLAREON
+;Evolutions
+ db 0
+;Learnset
+ db 27,QUICK_ATTACK
+ db 31,EMBER
+ db 37,TAIL_WHIP
+ db 40,BITE
+ db 42,LEER
+ db 44,FIRE_SPIN
+ db 48,RAGE
+ db 54,FLAMETHROWER
+ db 0
+Mon135_EvosMoves: ; 3b66c (e:766c)
+;JOLTEON
+;Evolutions
+ db 0
+;Learnset
+ db 27,QUICK_ATTACK
+ db 31,THUNDERSHOCK
+ db 37,TAIL_WHIP
+ db 40,THUNDER_WAVE
+ db 42,DOUBLE_KICK
+ db 44,AGILITY
+ db 48,PIN_MISSILE
+ db 54,THUNDER
+ db 0
+Mon134_EvosMoves: ; 3b67e (e:767e)
+;VAPOREON
+;Evolutions
+ db 0
+;Learnset
+ db 27,QUICK_ATTACK
+ db 31,WATER_GUN
+ db 37,TAIL_WHIP
+ db 40,BITE
+ db 42,ACID_ARMOR
+ db 44,HAZE
+ db 48,MIST
+ db 54,HYDRO_PUMP
+ db 0
+Mon066_EvosMoves: ; 3b690 (e:7690)
+;MACHOP
+;Evolutions
+ db EV_LEVEL,28,MACHOKE
+ db 0
+;Learnset
+ db 20,LOW_KICK
+ db 25,LEER
+ db 32,FOCUS_ENERGY
+ db 39,SEISMIC_TOSS
+ db 46,SUBMISSION
+ db 0
+Mon041_EvosMoves: ; 3b69f (e:769f)
+;ZUBAT
+;Evolutions
+ db EV_LEVEL,22,GOLBAT
+ db 0
+;Learnset
+ db 10,SUPERSONIC
+ db 15,BITE
+ db 21,CONFUSE_RAY
+ db 28,WING_ATTACK
+ db 36,HAZE
+ db 0
+Mon023_EvosMoves: ; 3b6ae (e:76ae)
+;EKANS
+;Evolutions
+ db EV_LEVEL,22,ARBOK
+ db 0
+;Learnset
+ db 10,POISON_STING
+ db 17,BITE
+ db 24,GLARE
+ db 31,SCREECH
+ db 38,ACID
+ db 0
+Mon046_EvosMoves: ; 3b6bd (e:76bd)
+;PARAS
+;Evolutions
+ db EV_LEVEL,24,PARASECT
+ db 0
+;Learnset
+ db 13,STUN_SPORE
+ db 20,LEECH_LIFE
+ db 27,SPORE
+ db 34,SLASH
+ db 41,GROWTH
+ db 0
+Mon061_EvosMoves: ; 3b6cc (e:76cc)
+;POLIWHIRL
+;Evolutions
+ db EV_ITEM,WATER_STONE ,1,POLIWRATH
+ db 0
+;Learnset
+ db 16,HYPNOSIS
+ db 19,WATER_GUN
+ db 26,DOUBLESLAP
+ db 33,BODY_SLAM
+ db 41,AMNESIA
+ db 49,HYDRO_PUMP
+ db 0
+Mon062_EvosMoves: ; 3b6de (e:76de)
+;POLIWRATH
+;Evolutions
+ db 0
+;Learnset
+ db 16,HYPNOSIS
+ db 19,WATER_GUN
+ db 0
+Mon013_EvosMoves: ; 3b6e4 (e:76e4)
+;WEEDLE
+;Evolutions
+ db EV_LEVEL,7,KAKUNA
+ db 0
+;Learnset
+ db 0
+Mon014_EvosMoves: ; 3b6e9 (e:76e9)
+;KAKUNA
+;Evolutions
+ db EV_LEVEL,10,BEEDRILL
+ db 0
+;Learnset
+ db 0
+Mon015_EvosMoves: ; 3b6ee (e:76ee)
+;BEEDRILL
+;Evolutions
+ db 0
+;Learnset
+ db 12,FURY_ATTACK
+ db 16,FOCUS_ENERGY
+ db 20,TWINEEDLE
+ db 25,RAGE
+ db 30,PIN_MISSILE
+ db 35,AGILITY
+ db 0
+
+Mon170_EvosMoves: ; 3b6fc (e:76fc)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon085_EvosMoves: ; 3b6fe (e:76fe)
+;DODRIO
+;Evolutions
+ db 0
+;Learnset
+ db 20,GROWL
+ db 24,FURY_ATTACK
+ db 30,DRILL_PECK
+ db 39,RAGE
+ db 45,TRI_ATTACK
+ db 51,AGILITY
+ db 0
+Mon057_EvosMoves: ; 3b70c (e:770c)
+;PRIMEAPE
+;Evolutions
+ db 0
+;Learnset
+ db 15,KARATE_CHOP
+ db 21,FURY_SWIPES
+ db 27,FOCUS_ENERGY
+ db 37,SEISMIC_TOSS
+ db 46,THRASH
+ db 0
+Mon051_EvosMoves: ; 3b718 (e:7718)
+;DUGTRIO
+;Evolutions
+ db 0
+;Learnset
+ db 15,GROWL
+ db 19,DIG
+ db 24,SAND_ATTACK
+ db 35,SLASH
+ db 47,EARTHQUAKE
+ db 0
+Mon049_EvosMoves: ; 3b724 (e:7724)
+;VENOMOTH
+;Evolutions
+ db 0
+;Learnset
+ db 24,POISONPOWDER
+ db 27,LEECH_LIFE
+ db 30,STUN_SPORE
+ db 38,PSYBEAM
+ db 43,SLEEP_POWDER
+ db 50,PSYCHIC_M
+ db 0
+Mon087_EvosMoves: ; 3b732 (e:7732)
+;DEWGONG
+;Evolutions
+ db 0
+;Learnset
+ db 30,GROWL
+ db 35,AURORA_BEAM
+ db 44,REST
+ db 50,TAKE_DOWN
+ db 56,ICE_BEAM
+ db 0
+
+Mon171_EvosMoves: ; 3b73e (e:773e)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon172_EvosMoves: ; 3b740 (e:7740)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon010_EvosMoves: ; 3b742 (e:7742)
+;CATERPIE
+;Evolutions
+ db EV_LEVEL,7,METAPOD
+ db 0
+;Learnset
+ db 0
+Mon011_EvosMoves: ; 3b747 (e:7747)
+;METAPOD
+;Evolutions
+ db EV_LEVEL,10,BUTTERFREE
+ db 0
+;Learnset
+ db 0
+Mon012_EvosMoves: ; 3b74c (e:774c)
+;BUTTERFREE
+;Evolutions
+ db 0
+;Learnset
+ db 12,CONFUSION
+ db 15,POISONPOWDER
+ db 16,STUN_SPORE
+ db 17,SLEEP_POWDER
+ db 21,SUPERSONIC
+ db 26,WHIRLWIND
+ db 32,PSYBEAM
+ db 0
+Mon068_EvosMoves: ; 3b75c (e:775c)
+;MACHAMP
+;Evolutions
+ db 0
+;Learnset
+ db 20,LOW_KICK
+ db 25,LEER
+ db 36,FOCUS_ENERGY
+ db 44,SEISMIC_TOSS
+ db 52,SUBMISSION
+ db 0
+
+Mon173_EvosMoves: ; 3b768 (e:7768)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon055_EvosMoves: ; 3b76a (e:776a)
+;GOLDUCK
+;Evolutions
+ db 0
+;Learnset
+ db 28,TAIL_WHIP
+ db 31,DISABLE
+ db 39,CONFUSION
+ db 48,FURY_SWIPES
+ db 59,HYDRO_PUMP
+ db 0
+Mon097_EvosMoves: ; 3b776 (e:7776)
+;HYPNO
+;Evolutions
+ db 0
+;Learnset
+ db 12,DISABLE
+ db 17,CONFUSION
+ db 24,HEADBUTT
+ db 33,POISON_GAS
+ db 37,PSYCHIC_M
+ db 43,MEDITATE
+ db 0
+Mon042_EvosMoves: ; 3b784 (e:7784)
+;GOLBAT
+;Evolutions
+ db 0
+;Learnset
+ db 10,SUPERSONIC
+ db 15,BITE
+ db 21,CONFUSE_RAY
+ db 32,WING_ATTACK
+ db 43,HAZE
+ db 0
+Mon150_EvosMoves: ; 3b790 (e:7790)
+;MEWTWO
+;Evolutions
+ db 0
+;Learnset
+ db 63,BARRIER
+ db 66,PSYCHIC_M
+ db 70,RECOVER
+ db 75,MIST
+ db 81,AMNESIA
+ db 0
+Mon143_EvosMoves: ; 3b79c (e:779c)
+;SNORLAX
+;Evolutions
+ db 0
+;Learnset
+ db 35,BODY_SLAM
+ db 41,HARDEN
+ db 48,DOUBLE_EDGE
+ db 56,HYPER_BEAM
+ db 0
+Mon129_EvosMoves: ; 3b7a6 (e:77a6)
+;MAGIKARP
+;Evolutions
+ db EV_LEVEL,20,GYARADOS
+ db 0
+;Learnset
+ db 15,TACKLE
+ db 0
+
+Mon174_EvosMoves: ; 3b7ad (e:77ad)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon175_EvosMoves: ; 3b7af (e:77af)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon089_EvosMoves: ; 3b7b1 (e:77b1)
+;MUK
+;Evolutions
+ db 0
+;Learnset
+ db 30,POISON_GAS
+ db 33,MINIMIZE
+ db 37,SLUDGE
+ db 45,HARDEN
+ db 53,SCREECH
+ db 60,ACID_ARMOR
+ db 0
+
+Mon176_EvosMoves: ; 3b7bf (e:77bf)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon099_EvosMoves: ; 3b7c1 (e:77c1)
+;KINGLER
+;Evolutions
+ db 0
+;Learnset
+ db 20,VICEGRIP
+ db 25,GUILLOTINE
+ db 34,STOMP
+ db 42,CRABHAMMER
+ db 49,HARDEN
+ db 0
+Mon091_EvosMoves: ; 3b7cd (e:77cd)
+;CLOYSTER
+;Evolutions
+ db 0
+;Learnset
+ db 50,SPIKE_CANNON
+ db 0
+
+Mon177_EvosMoves: ; 3b7d1 (e:77d1)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon101_EvosMoves: ; 3b7d3 (e:77d3)
+;ELECTRODE
+;Evolutions
+ db 0
+;Learnset
+ db 17,SONICBOOM
+ db 22,SELFDESTRUCT
+ db 29,LIGHT_SCREEN
+ db 40,SWIFT
+ db 50,EXPLOSION
+ db 0
+Mon036_EvosMoves: ; 3b7df (e:77df)
+;CLEFABLE
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon110_EvosMoves: ; 3b7e1 (e:77e1)
+;WEEZING
+;Evolutions
+ db 0
+;Learnset
+ db 32,SLUDGE
+ db 39,SMOKESCREEN
+ db 43,SELFDESTRUCT
+ db 49,HAZE
+ db 53,EXPLOSION
+ db 0
+Mon053_EvosMoves: ; 3b7ed (e:77ed)
+;PERSIAN
+;Evolutions
+ db 0
+;Learnset
+ db 12,BITE
+ db 17,PAY_DAY
+ db 24,SCREECH
+ db 37,FURY_SWIPES
+ db 51,SLASH
+ db 0
+Mon105_EvosMoves: ; 3b7f9 (e:77f9)
+;MAROWAK
+;Evolutions
+ db 0
+;Learnset
+ db 25,LEER
+ db 33,FOCUS_ENERGY
+ db 41,THRASH
+ db 48,BONEMERANG
+ db 55,RAGE
+ db 0
+
+Mon178_EvosMoves: ; 3b805 (e:7805)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon093_EvosMoves: ; 3b807 (e:7807)
+;HAUNTER
+;Evolutions
+ db EV_TRADE,1,GENGAR
+ db 0
+;Learnset
+ db 29,HYPNOSIS
+ db 38,DREAM_EATER
+ db 0
+Mon063_EvosMoves: ; 3b810 (e:7810)
+;ABRA
+;Evolutions
+ db EV_LEVEL,16,KADABRA
+ db 0
+;Learnset
+ db 0
+Mon065_EvosMoves: ; 3b815 (e:7815)
+;ALAKAZAM
+;Evolutions
+ db 0
+;Learnset
+ db 16,CONFUSION
+ db 20,DISABLE
+ db 27,PSYBEAM
+ db 31,RECOVER
+ db 38,PSYCHIC_M
+ db 42,REFLECT
+ db 0
+Mon017_EvosMoves: ; 3b823 (e:7823)
+;PIDGEOTTO
+;Evolutions
+ db EV_LEVEL,36,PIDGEOT
+ db 0
+;Learnset
+ db 5,SAND_ATTACK
+ db 12,QUICK_ATTACK
+ db 21,WHIRLWIND
+ db 31,WING_ATTACK
+ db 40,AGILITY
+ db 49,MIRROR_MOVE
+ db 0
+Mon018_EvosMoves: ; 3b834 (e:7834)
+;PIDGEOT
+;Evolutions
+ db 0
+;Learnset
+ db 5,SAND_ATTACK
+ db 12,QUICK_ATTACK
+ db 21,WHIRLWIND
+ db 31,WING_ATTACK
+ db 44,AGILITY
+ db 54,MIRROR_MOVE
+ db 0
+Mon121_EvosMoves: ; 3b842 (e:7842)
+;STARMIE
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon001_EvosMoves: ; 3b844 (e:7844)
+;BULBASAUR
+;Evolutions
+ db EV_LEVEL,16,IVYSAUR
+ db 0
+;Learnset
+ db 7,LEECH_SEED
+ db 13,VINE_WHIP
+ db 20,POISONPOWDER
+ db 27,RAZOR_LEAF
+ db 34,GROWTH
+ db 41,SLEEP_POWDER
+ db 48,SOLARBEAM
+ db 0
+Mon003_EvosMoves: ; 3b857 (e:7857)
+;VENUSAUR
+;Evolutions
+ db 0
+;Learnset
+ db 7,LEECH_SEED
+ db 13,VINE_WHIP
+ db 22,POISONPOWDER
+ db 30,RAZOR_LEAF
+ db 43,GROWTH
+ db 55,SLEEP_POWDER
+ db 65,SOLARBEAM
+ db 0
+Mon073_EvosMoves: ; 3b867 (e:7867)
+;TENTACRUEL
+;Evolutions
+ db 0
+;Learnset
+ db 7,SUPERSONIC
+ db 13,WRAP
+ db 18,POISON_STING
+ db 22,WATER_GUN
+ db 27,CONSTRICT
+ db 35,BARRIER
+ db 43,SCREECH
+ db 50,HYDRO_PUMP
+ db 0
+
+Mon179_EvosMoves: ; 3b879 (e:7879)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon118_EvosMoves: ; 3b87b (e:787b)
+;GOLDEEN
+;Evolutions
+ db EV_LEVEL,33,SEAKING
+ db 0
+;Learnset
+ db 19,SUPERSONIC
+ db 24,HORN_ATTACK
+ db 30,FURY_ATTACK
+ db 37,WATERFALL
+ db 45,HORN_DRILL
+ db 54,AGILITY
+ db 0
+Mon119_EvosMoves: ; 3b88c (e:788c)
+;SEAKING
+;Evolutions
+ db 0
+;Learnset
+ db 19,SUPERSONIC
+ db 24,HORN_ATTACK
+ db 30,FURY_ATTACK
+ db 39,WATERFALL
+ db 48,HORN_DRILL
+ db 54,AGILITY
+ db 0
+
+Mon180_EvosMoves: ; 3b89a (e:789a)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon181_EvosMoves: ; 3b89c (e:789c)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon182_EvosMoves: ; 3b89e (e:789e)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon183_EvosMoves: ; 3b8a0 (e:78a0)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon077_EvosMoves: ; 3b8a2 (e:78a2)
+;PONYTA
+;Evolutions
+ db EV_LEVEL,40,RAPIDASH
+ db 0
+;Learnset
+ db 30,TAIL_WHIP
+ db 32,STOMP
+ db 35,GROWL
+ db 39,FIRE_SPIN
+ db 43,TAKE_DOWN
+ db 48,AGILITY
+ db 0
+Mon078_EvosMoves: ; 3b8b3 (e:78b3)
+;RAPIDASH
+;Evolutions
+ db 0
+;Learnset
+ db 30,TAIL_WHIP
+ db 32,STOMP
+ db 35,GROWL
+ db 39,FIRE_SPIN
+ db 47,TAKE_DOWN
+ db 55,AGILITY
+ db 0
+Mon019_EvosMoves: ; 3b8c1 (e:78c1)
+;RATTATA
+;Evolutions
+ db EV_LEVEL,20,RATICATE
+ db 0
+;Learnset
+ db 7,QUICK_ATTACK
+ db 14,HYPER_FANG
+ db 23,FOCUS_ENERGY
+ db 34,SUPER_FANG
+ db 0
+Mon020_EvosMoves: ; 3b8ce (e:78ce)
+;RATICATE
+;Evolutions
+ db 0
+;Learnset
+ db 7,QUICK_ATTACK
+ db 14,HYPER_FANG
+ db 27,FOCUS_ENERGY
+ db 41,SUPER_FANG
+ db 0
+Mon033_EvosMoves: ; 3b8d8 (e:78d8)
+;NIDORINO
+;Evolutions
+ db EV_ITEM,MOON_STONE,1,NIDOKING
+ db 0
+;Learnset
+ db 8,HORN_ATTACK
+ db 14,POISON_STING
+ db 23,FOCUS_ENERGY
+ db 32,FURY_ATTACK
+ db 41,HORN_DRILL
+ db 50,DOUBLE_KICK
+ db 0
+Mon030_EvosMoves: ; 3b8ea (e:78ea)
+;NIDORINA
+;Evolutions
+ db EV_ITEM,MOON_STONE,1,NIDOQUEEN
+ db 0
+;Learnset
+ db 8,SCRATCH
+ db 14,POISON_STING
+ db 23,TAIL_WHIP
+ db 32,BITE
+ db 41,FURY_SWIPES
+ db 50,DOUBLE_KICK
+ db 0
+Mon074_EvosMoves: ; 3b8fc (e:78fc)
+;GEODUDE
+;Evolutions
+ db EV_LEVEL,25,GRAVELER
+ db 0
+;Learnset
+ db 11,DEFENSE_CURL
+ db 16,ROCK_THROW
+ db 21,SELFDESTRUCT
+ db 26,HARDEN
+ db 31,EARTHQUAKE
+ db 36,EXPLOSION
+ db 0
+Mon137_EvosMoves: ; 3b90d (e:790d)
+;PORYGON
+;Evolutions
+ db 0
+;Learnset
+ db 23,PSYBEAM
+ db 28,RECOVER
+ db 35,AGILITY
+ db 42,TRI_ATTACK
+ db 0
+Mon142_EvosMoves: ; 3b917 (e:7917)
+;AERODACTYL
+;Evolutions
+ db 0
+;Learnset
+ db 33,SUPERSONIC
+ db 38,BITE
+ db 45,TAKE_DOWN
+ db 54,HYPER_BEAM
+ db 0
+
+Mon184_EvosMoves: ; 3b921 (e:7921)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon081_EvosMoves: ; 3b923 (e:7923)
+;MAGNEMITE
+;Evolutions
+ db EV_LEVEL,30,MAGNETON
+ db 0
+;Learnset
+ db 21,SONICBOOM
+ db 25,THUNDERSHOCK
+ db 29,SUPERSONIC
+ db 35,THUNDER_WAVE
+ db 41,SWIFT
+ db 47,SCREECH
+ db 0
+
+Mon185_EvosMoves: ; 3b934 (e:7934)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon186_EvosMoves: ; 3b936 (e:7936)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon004_EvosMoves: ; 3b938 (e:7938)
+;CHARMANDER
+;Evolutions
+ db EV_LEVEL,16,CHARMELEON
+ db 0
+;Learnset
+ db 9,EMBER
+ db 15,LEER
+ db 22,RAGE
+ db 30,SLASH
+ db 38,FLAMETHROWER
+ db 46,FIRE_SPIN
+ db 0
+Mon007_EvosMoves: ; 3b949 (e:7949)
+;SQUIRTLE
+;Evolutions
+ db EV_LEVEL,16,WARTORTLE
+ db 0
+;Learnset
+ db 8,BUBBLE
+ db 15,WATER_GUN
+ db 22,BITE
+ db 28,WITHDRAW
+ db 35,SKULL_BASH
+ db 42,HYDRO_PUMP
+ db 0
+Mon005_EvosMoves: ; 3b95a (e:795a)
+;CHARMELEON
+;Evolutions
+ db EV_LEVEL,36,CHARIZARD
+ db 0
+;Learnset
+ db 9,EMBER
+ db 15,LEER
+ db 24,RAGE
+ db 33,SLASH
+ db 42,FLAMETHROWER
+ db 56,FIRE_SPIN
+ db 0
+Mon008_EvosMoves: ; 3b96b (e:796b)
+;WARTORTLE
+;Evolutions
+ db EV_LEVEL,36,BLASTOISE
+ db 0
+;Learnset
+ db 8,BUBBLE
+ db 15,WATER_GUN
+ db 24,BITE
+ db 31,WITHDRAW
+ db 39,SKULL_BASH
+ db 47,HYDRO_PUMP
+ db 0
+Mon006_EvosMoves: ; 3b97c (e:797c)
+;CHARIZARD
+;Evolutions
+ db 0
+;Learnset
+ db 9,EMBER
+ db 15,LEER
+ db 24,RAGE
+ db 36,SLASH
+ db 46,FLAMETHROWER
+ db 55,FIRE_SPIN
+ db 0
+
+Mon187_EvosMoves: ; 3b98a (e:798a)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon188_EvosMoves: ; 3b98c (e:798c)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon189_EvosMoves: ; 3b98e (e:798e)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+
+Mon190_EvosMoves: ; 3b990 (e:7990)
+;MISSINGNO
+;Evolutions
+ db 0
+;Learnset
+ db 0
+Mon043_EvosMoves: ; 3b992 (e:7992)
+;ODDISH
+;Evolutions
+ db EV_LEVEL,21,GLOOM
+ db 0
+;Learnset
+ db 15,POISONPOWDER
+ db 17,STUN_SPORE
+ db 19,SLEEP_POWDER
+ db 24,ACID
+ db 33,PETAL_DANCE
+ db 46,SOLARBEAM
+ db 0
+Mon044_EvosMoves: ; 3b9a3 (e:79a3)
+;GLOOM
+;Evolutions
+ db EV_ITEM,LEAF_STONE ,1,VILEPLUME
+ db 0
+;Learnset
+ db 15,POISONPOWDER
+ db 17,STUN_SPORE
+ db 19,SLEEP_POWDER
+ db 28,ACID
+ db 38,PETAL_DANCE
+ db 52,SOLARBEAM
+ db 0
+Mon045_EvosMoves: ; 3b9b5 (e:79b5)
+;VILEPLUME
+;Evolutions
+ db 0
+;Learnset
+ db 15,POISONPOWDER
+ db 17,STUN_SPORE
+ db 19,SLEEP_POWDER
+ db 0
+Mon069_EvosMoves: ; 3b9bd (e:79bd)
+;BELLSPROUT
+;Evolutions
+ db EV_LEVEL,21,WEEPINBELL
+ db 0
+;Learnset
+ db 13,WRAP
+ db 15,POISONPOWDER
+ db 18,SLEEP_POWDER
+ db 21,STUN_SPORE
+ db 26,ACID
+ db 33,RAZOR_LEAF
+ db 42,SLAM
+ db 0
+Mon070_EvosMoves: ; 3b9d0 (e:79d0)
+;WEEPINBELL
+;Evolutions
+ db EV_ITEM,LEAF_STONE ,1,VICTREEBEL
+ db 0
+;Learnset
+ db 13,WRAP
+ db 15,POISONPOWDER
+ db 18,SLEEP_POWDER
+ db 23,STUN_SPORE
+ db 29,ACID
+ db 38,RAZOR_LEAF
+ db 49,SLAM
+ db 0
+Mon071_EvosMoves: ; 3b9e4 (e:79e4)
+;VICTREEBEL
+;Evolutions
+ db 0
+;Learnset
+ db 13,WRAP
+ db 15,POISONPOWDER
+ db 18,SLEEP_POWDER
+ db 0
diff --git a/data/force_bike_surf.asm b/data/force_bike_surf.asm
new file mode 100755
index 00000000..66cae0a4
--- /dev/null
+++ b/data/force_bike_surf.asm
@@ -0,0 +1,11 @@
+ForcedBikeOrSurfMaps: ; c3e6 (3:43e6)
+; map id, y, x
+ db ROUTE_16,$0A,$11
+ db ROUTE_16,$0B,$11
+ db ROUTE_18,$08,$21
+ db ROUTE_18,$09,$21
+ db SEAFOAM_ISLANDS_4,$07,$12
+ db SEAFOAM_ISLANDS_4,$07,$13
+ db SEAFOAM_ISLANDS_5,$0E,$04
+ db SEAFOAM_ISLANDS_5,$0E,$05
+ db $FF ;end
diff --git a/data/good_rod.asm b/data/good_rod.asm
new file mode 100755
index 00000000..f1785737
--- /dev/null
+++ b/data/good_rod.asm
@@ -0,0 +1,3 @@
+GoodRodMons: ; e27f (3:627f)
+ db 10,GOLDEEN
+ db 10,POLIWAG
diff --git a/data/hidden_coins.asm b/data/hidden_coins.asm
new file mode 100755
index 00000000..e444bf28
--- /dev/null
+++ b/data/hidden_coins.asm
@@ -0,0 +1,14 @@
+HiddenCoinCoords: ; 76822 (1d:6822)
+ db GAME_CORNER,$08,$00
+ db GAME_CORNER,$10,$01
+ db GAME_CORNER,$0b,$03
+ db GAME_CORNER,$0e,$03
+ db GAME_CORNER,$0c,$04
+ db GAME_CORNER,$0c,$09
+ db GAME_CORNER,$0f,$09
+ db GAME_CORNER,$0e,$10
+ db GAME_CORNER,$10,$0a
+ db GAME_CORNER,$07,$0b
+ db GAME_CORNER,$08,$0f
+ db GAME_CORNER,$0f,$0c
+ db $ff
diff --git a/data/hidden_item_coords.asm b/data/hidden_item_coords.asm
new file mode 100755
index 00000000..54c785f5
--- /dev/null
+++ b/data/hidden_item_coords.asm
@@ -0,0 +1,57 @@
+HiddenItemCoords: ; 766b8 (1d:66b8)
+; map ID, then coords
+ db VIRIDIAN_FOREST,$12,$01
+ db VIRIDIAN_FOREST,$2a,$10
+ db MT_MOON_3,$0c,$12
+ db ROUTE_25,$03,$26
+ db ROUTE_9,$07,$0e
+ db SS_ANNE_6,$09,$0d
+ db SS_ANNE_10,$01,$03
+ db ROUTE_10,$11,$09
+ db ROUTE_10,$35,$10
+ db ROCKET_HIDEOUT_1,$0f,$15
+ db ROCKET_HIDEOUT_3,$11,$1b
+ db ROCKET_HIDEOUT_4,$01,$19
+ db POKEMONTOWER_5,$0c,$04
+ db ROUTE_13,$0e,$01
+ db ROUTE_13,$0d,$10
+ db MANSION_4,$09,$01
+ db SAFARI_ZONE_ENTRANCE,$01,$0a
+ db SAFARI_ZONE_WEST,$05,$06
+ db SILPH_CO_5F,$03,$0c
+ db SILPH_CO_9F,$0f,$02
+ db COPYCATS_HOUSE_2F,$01,$01
+ db UNKNOWN_DUNGEON_1,$0b,$0e
+ db UNKNOWN_DUNGEON_3,$03,$1b
+ db POWER_PLANT,$10,$11
+ db POWER_PLANT,$01,$0c
+ db SEAFOAM_ISLANDS_3,$0f,$0f
+ db SEAFOAM_ISLANDS_5,$11,$19
+ db MANSION_1,$10,$08
+ db MANSION_3,$09,$01
+ db ROUTE_23,$2c,$09
+ db ROUTE_23,$46,$13
+ db ROUTE_23,$5a,$08
+ db VICTORY_ROAD_2,$02,$05
+ db VICTORY_ROAD_2,$07,$1a
+ db $6f,$0b,$0e
+ db VIRIDIAN_CITY,$04,$0e
+ db ROUTE_11,$05,$30
+ db ROUTE_12,$3f,$02
+ db ROUTE_17,$0e,$0f
+ db ROUTE_17,$2d,$08
+ db ROUTE_17,$48,$11
+ db ROUTE_17,$5b,$04
+ db ROUTE_17,$79,$08
+ db UNDERGROUND_PATH_NS,$04,$03
+ db UNDERGROUND_PATH_NS,$22,$04
+ db UNDERGROUND_PATH_WE,$02,$0c
+ db UNDERGROUND_PATH_WE,$05,$15
+ db CELADON_CITY,$0f,$30
+ db ROUTE_25,$01,$0a
+ db MT_MOON_3,$09,$21
+ db SEAFOAM_ISLANDS_4,$10,$09
+ db VERMILION_CITY,$0b,$0e
+ db CERULEAN_CITY,$08,$0f
+ db ROUTE_4,$03,$28
+ db $ff
diff --git a/data/hidden_objects.asm b/data/hidden_objects.asm
new file mode 100755
index 00000000..54326b35
--- /dev/null
+++ b/data/hidden_objects.asm
@@ -0,0 +1,781 @@
+HiddenObjectMaps: ; 46a40 (11:6a40)
+ db REDS_HOUSE_2F
+ db BLUES_HOUSE
+ db OAKS_LAB
+ db VIRIDIAN_POKECENTER
+ db VIRIDIAN_MART
+ db VIRIDIAN_SCHOOL
+ db VIRIDIAN_GYM
+ db MUSEUM_1F
+ db PEWTER_GYM
+ db PEWTER_MART
+ db PEWTER_POKECENTER
+ db CERULEAN_POKECENTER
+ db CERULEAN_GYM
+ db CERULEAN_MART
+ db LAVENDER_POKECENTER
+ db VERMILION_POKECENTER
+ db VERMILION_GYM
+ db CELADON_MANSION_2
+ db CELADON_POKECENTER
+ db CELADON_GYM
+ db GAME_CORNER
+ db CELADON_HOTEL
+ db FUCHSIA_POKECENTER
+ db FUCHSIA_GYM
+ db CINNABAR_GYM
+ db CINNABAR_POKECENTER
+ db SAFFRON_GYM
+ db MT_MOON_POKECENTER
+ db ROCK_TUNNEL_POKECENTER
+ db BATTLE_CENTER
+ db TRADE_CENTER
+ db VIRIDIAN_FOREST
+ db MT_MOON_3
+ db INDIGO_PLATEAU
+ db ROUTE_25
+ db ROUTE_9
+ db SS_ANNE_6
+ db SS_ANNE_10
+ db ROCKET_HIDEOUT_1
+ db ROCKET_HIDEOUT_3
+ db ROCKET_HIDEOUT_4
+ db SAFFRON_POKECENTER
+ db POKEMONTOWER_5
+ db ROUTE_13
+ db SAFARI_ZONE_ENTRANCE
+ db SAFARI_ZONE_WEST
+ db SILPH_CO_5F
+ db SILPH_CO_9F
+ db COPYCATS_HOUSE_2F
+ db UNKNOWN_DUNGEON_1
+ db UNKNOWN_DUNGEON_3
+ db POWER_PLANT
+ db SEAFOAM_ISLANDS_3
+ db SEAFOAM_ISLANDS_5
+ db MANSION_1
+ db MANSION_3
+ db ROUTE_23
+ db VICTORY_ROAD_2
+ db $6F
+ db BILLS_HOUSE
+ db VIRIDIAN_CITY
+ db SAFARI_ZONE_REST_HOUSE_2
+ db SAFARI_ZONE_REST_HOUSE_3
+ db SAFARI_ZONE_REST_HOUSE_4
+ db $B9
+ db LAVENDER_HOUSE_1
+ db CELADON_MANSION_5
+ db FIGHTING_DOJO
+ db ROUTE_10
+ db INDIGO_PLATEAU_LOBBY
+ db CINNABAR_LAB_4
+ db BIKE_SHOP
+ db ROUTE_11
+ db ROUTE_12
+ db MANSION_2
+ db MANSION_4
+ db SILPH_CO_11F
+ db ROUTE_17
+ db UNDERGROUND_PATH_NS
+ db UNDERGROUND_PATH_WE
+ db CELADON_CITY
+ db SEAFOAM_ISLANDS_4
+ db VERMILION_CITY
+ db CERULEAN_CITY
+ db ROUTE_4
+ db $FF
+
+HiddenObjectPointers: ; 46a96 (11:6a96)
+; each of these pointers is for the corresponding map in HiddenObjectMaps
+ dw RedsHouse2FHiddenObjects
+ dw BluesHouseHiddenObjects
+ dw OaksLabHiddenObjects
+ dw ViridianPokecenterHiddenObjects
+ dw ViridianMartHiddenObjects
+ dw ViridianSchoolHiddenObjects
+ dw ViridianGymHiddenObjects
+ dw Museum1FHiddenObjects
+ dw PewterGymHiddenObjects
+ dw PewterMartHiddenObjects
+ dw PewterPokecenterHiddenObjects
+ dw CeruleanPokecenterHiddenObjects
+ dw CeruleanGymHiddenObjects
+ dw CeruleanMartHiddenObjects
+ dw LavenderPokecenterHiddenObjects
+ dw VermilionPokecenterHiddenObjects
+ dw VermilionGymHiddenObjects
+ dw CeladonMansion2HiddenObjects
+ dw CeladonPokecenterHiddenObjects
+ dw CeladonGymHiddenObjects
+ dw GameCornerHiddenObjects
+ dw CeladonHotelHiddenObjects
+ dw FuchsiaPokecenterHiddenObjects
+ dw FuchsiaGymHiddenObjects
+ dw CinnabarGymHiddenObjects
+ dw CinnabarPokecenterHiddenObjects
+ dw SaffronGymHiddenObjects
+ dw MtMoonPokecenterHiddenObjects
+ dw RockTunnelPokecenterHiddenObjects
+ dw BattleCenterHiddenObjects
+ dw TradeCenterHiddenObjects
+ dw ViridianForestHiddenObjects
+ dw MtMoon3HiddenObjects
+ dw IndigoPlateauHiddenObjects
+ dw Route25HiddenObjects
+ dw Route9HiddenObjects
+ dw SSAnne6HiddenObjects
+ dw SSAnne10HiddenObjects
+ dw RocketHideout1HiddenObjects
+ dw RocketHideout3HiddenObjects
+ dw RocketHideout4HiddenObjects
+ dw SaffronPokecenterHiddenObjects
+ dw PokemonTower5HiddenObjects
+ dw Route13HiddenObjects
+ dw SafariZoneEntranceHiddenObjects
+ dw SafariZoneWestHiddenObjects
+ dw SilphCo5FHiddenObjects
+ dw SilphCo9FHiddenObjects
+ dw CopycatsHouse2FHiddenObjects
+ dw UnknownDungeon1HiddenObjects
+ dw UnknownDungeon3HiddenObjects
+ dw PowerPlantHiddenObjects
+ dw SeafoamIslands3HiddenObjects
+ dw SeafoamIslands5HiddenObjects
+ dw Mansion1HiddenObjects
+ dw Mansion3HiddenObjects
+ dw Route23HiddenObjects
+ dw VictoryRoad2HiddenObjects
+ dw Unused6FHiddenObjects
+ dw BillsHouseHiddenObjects
+ dw ViridianCityHiddenObjects
+ dw SafariZoneRestHouse2HiddenObjects
+ dw SafariZoneRestHouse3HiddenObjects
+ dw SafariZoneRestHouse4HiddenObjects
+ dw UnusedB9HiddenObjects
+ dw LavenderHouse1HiddenObjects
+ dw CeladonMansion5HiddenObjects
+ dw FightingDojoHiddenObjects
+ dw Route10HiddenObjects
+ dw IndigoPlateauLobbyHiddenObjects
+ dw CinnabarLab4HiddenObjects
+ dw BikeShopHiddenObjects
+ dw Route11HiddenObjects
+ dw Route12HiddenObjects
+ dw Mansion2HiddenObjects
+ dw Mansion4HiddenObjects
+ dw SilphCo11FHiddenObjects
+ dw Route17HiddenObjects
+ dw UndergroundPathNsHiddenObjects
+ dw UndergroundPathWeHiddenObjects
+ dw CeladonCityHiddenObjects
+ dw SeafoamIslands4HiddenObjects
+ dw VermilionCityHiddenObjects
+ dw CeruleanCityHiddenObjects
+ dw Route4HiddenObjects
+
+BattleCenterHiddenObjects: ; 46b40 (11:6b40)
+ db $04,$05,$d0 ; XXX, y, x
+ dbw Bank(Func_21845), Func_21845
+ db $04,$04,$d0 ; XXX, y, x
+ dbw Bank(Func_21825), Func_21825
+ db $FF
+TradeCenterHiddenObjects: ; 46b4d (11:6b4d)
+ db $04,$05,$d0 ; XXX, y, x
+ dbw Bank(Func_21845), Func_21845
+ db $04,$04,$d0 ; XXX, y, x
+ dbw Bank(Func_21825), Func_21825
+ db $FF
+RedsHouse2FHiddenObjects: ; 46b5a (11:6b5a)
+ db $01,$00,$04 ; XXX, y, x
+ dbw Bank(Func_5db86), Func_5db86
+ db $05,$03,$d0 ; XXX, y, x
+ dbw Bank(Func_5db79), Func_5db79
+ db $FF
+BluesHouseHiddenObjects: ; 46b67 (11:6b67)
+ db $01,$00,$04 ; XXX, y, x
+ dbw Bank(Func_62509), Func_62509
+ db $01,$01,$04 ; XXX, y, x
+ dbw Bank(Func_62509), Func_62509
+ db $01,$07,$04 ; XXX, y, x
+ dbw Bank(Func_62509), Func_62509
+ db $FF
+OaksLabHiddenObjects: ; 46b7a (11:6b7a)
+ db $00,$04,$04 ; XXX, y, x
+ dbw Bank(Func_1e958), Func_1e958
+ db $00,$05,$04 ; XXX, y, x
+ dbw Bank(Func_1e965), Func_1e965
+ db $01,$00,$04 ; XXX, y, x
+ dbw Bank(Func_1ecaf), Func_1ecaf
+ db $01,$01,$04 ; XXX, y, x
+ dbw Bank(Func_1ecaf), Func_1ecaf
+ db $FF
+ViridianPokecenterHiddenObjects: ; 46b93 (11:6b93)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+ViridianMartHiddenObjects: ; 46ba0 (11:6ba0)
+ db $FF
+ViridianSchoolHiddenObjects: ; 46ba1 (11:6ba1)
+ db $04,$03,$20 ; XXX, y, x
+ dbw Bank(Func_52996), Func_52996
+ db $00,$03,$21 ; XXX, y, x
+ dbw Bank(Func_5dc1a), Func_5dc1a
+ db $FF
+ViridianGymHiddenObjects: ; 46bae (11:6bae)
+ db $0f,$0f,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $0f,$12,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $FF
+Museum1FHiddenObjects: ; 46bbb (11:6bbb)
+ db $03,$02,$04 ; XXX, y, x
+ dbw Bank(AerodactylFossil), AerodactylFossil
+ db $06,$02,$04 ; XXX, y, x
+ dbw Bank(KabutopsFossil), KabutopsFossil
+ db $FF
+PewterGymHiddenObjects: ; 46bc8 (11:6bc8)
+ db $0a,$03,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $0a,$06,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $FF
+PewterMartHiddenObjects: ; 46bd5 (11:6bd5)
+ db $FF
+PewterPokecenterHiddenObjects: ; 46bd6 (11:6bd6)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+CeruleanPokecenterHiddenObjects: ; 46be3 (11:6be3)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+CeruleanGymHiddenObjects: ; 46bf0 (11:6bf0)
+ db $0b,$03,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $0b,$06,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $FF
+CeruleanMartHiddenObjects: ; 46bfd (11:6bfd)
+ db $FF
+LavenderPokecenterHiddenObjects: ; 46bfe (11:6bfe)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+VermilionPokecenterHiddenObjects: ; 46c0b (11:6c0b)
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $04,$00,$04 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $FF
+VermilionGymHiddenObjects: ; 46c18 (11:6c18)
+ db $0e,$03,$04 ; XXX, y, x
+ dbw BANK(GymStatues), GymStatues
+ db $0e,$06,$04 ; XXX, y, x
+ dbw BANK(GymStatues), GymStatues
+ db $01,$06,$00 ; XXX, y, x
+ dbw Bank(Func_5ddef), Func_5ddef
+ db $07,$01,$00 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $09,$01,$01 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $0b,$01,$02 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $07,$03,$03 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $09,$03,$04 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $0b,$03,$05 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $07,$05,$06 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $09,$05,$07 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $0b,$05,$08 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $07,$07,$09 ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $09,$07,$0a ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $0b,$07,$0b ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $07,$09,$0c ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $09,$09,$0d ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $0b,$09,$0e ; XXX, y, x
+ dbw Bank(GymTrashScript), GymTrashScript
+ db $FF
+CeladonMansion2HiddenObjects: ; 46c85 (11:6c85)
+ db $05,$00,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+CeladonPokecenterHiddenObjects: ; 46c8c (11:6c8c)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+CeladonGymHiddenObjects: ; 46c99 (11:6c99)
+ db $0f,$03,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $0f,$06,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $FF
+GameCornerHiddenObjects: ; 46ca6 (11:6ca6)
+ db $0f,$12,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0e,$12,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0d,$12,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0c,$12,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0b,$12,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0a,$12,$ff ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0a,$0d,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0b,$0d,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0c,$0d,$fe ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0d,$0d,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0e,$0d,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0f,$0d,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0f,$0c,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0e,$0c,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0d,$0c,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0c,$0c,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0b,$0c,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0a,$0c,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0a,$07,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0b,$07,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0c,$07,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0d,$07,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0e,$07,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0f,$07,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0f,$06,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0e,$06,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0d,$06,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0c,$06,$fd ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0b,$06,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0a,$06,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0a,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0b,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0c,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0d,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0e,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $0f,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_37e2d), Func_37e2d
+ db $08,$00,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $10,$01,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0b,$03,COIN+20
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0e,$03,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0c,$04,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0c,$09,COIN+20
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0f,$09,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0e,$10,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $10,$0a,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $07,$0b,COIN+40
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $08,$0f,COIN+100
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $0f,$0c,COIN+10
+ dbw BANK(HiddenCoins),HiddenCoins
+ db $FF
+CeladonHotelHiddenObjects: ; 46dc7 (11:6dc7)
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $FF
+FuchsiaPokecenterHiddenObjects: ; 46dd4 (11:6dd4)
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $04,$00,$04 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $FF
+FuchsiaGymHiddenObjects: ; 46de1 (11:6de1)
+ db $0f,$03,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $0f,$06,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $FF
+CinnabarGymHiddenObjects: ; 46dee (11:6dee)
+ db $0d,$11,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $07,$0f,$01 ; XXX, y, x
+ dbw Bank(Func_1eaa17), Func_1eaa17
+ db $01,$0a,$12 ; XXX, y, x
+ dbw Bank(Func_1eaa17), Func_1eaa17
+ db $07,$09,$13 ; XXX, y, x
+ dbw Bank(Func_1eaa17), Func_1eaa17
+ db $0d,$09,$14 ; XXX, y, x
+ dbw Bank(Func_1eaa17), Func_1eaa17
+ db $0d,$01,$05 ; XXX, y, x
+ dbw Bank(Func_1eaa17), Func_1eaa17
+ db $07,$01,$16 ; XXX, y, x
+ dbw Bank(Func_1eaa17), Func_1eaa17
+ db $FF
+CinnabarPokecenterHiddenObjects: ; 46e19 (11:6e19)
+ db $04,$00,$04 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+SaffronGymHiddenObjects: ; 46e26 (11:6e26)
+ db $0f,$09,$04 ; XXX, y, x
+ dbw BANK(GymStatues),GymStatues
+ db $FF
+MtMoonPokecenterHiddenObjects: ; 46e2d (11:6e2d)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+RockTunnelPokecenterHiddenObjects: ; 46e3a (11:6e3a)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+ViridianForestHiddenObjects: ; 46e47 (11:6e47)
+ db $12,$01,POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $2a,$10,ANTIDOTE
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+MtMoon3HiddenObjects: ; 46e54 (11:6e54)
+ db $0c,$12,MOON_STONE
+ dbw BANK(HiddenItems),HiddenItems
+ db $09,$21,ETHER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+IndigoPlateauHiddenObjects: ; 46e61 (11:6e61)
+ db $0d,$08,$ff ; XXX, y, x
+ dbw Bank(Func_52a2f), Func_52a2f
+ db $0d,$0b,$00 ; XXX, y, x
+ dbw Bank(Func_52a2f), Func_52a2f
+ db $FF
+Route25HiddenObjects: ; 46e6e (11:6e6e)
+ db $03,$26,ETHER
+ dbw BANK(HiddenItems),HiddenItems
+ db $01,$0a,ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Route9HiddenObjects: ; 46e7b (11:6e7b)
+ db $07,$0e,ETHER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SSAnne6HiddenObjects: ; 46e82 (11:6e82)
+ db $05,$0d,$00 ; XXX, y, x
+ dbw Bank(Func_5ddef), Func_5ddef
+ db $07,$0d,$00 ; XXX, y, x
+ dbw Bank(Func_5ddef), Func_5ddef
+ db $09,$0d,GREAT_BALL
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SSAnne10HiddenObjects: ; 46e95 (11:6e95)
+ db $01,$03,HYPER_POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Route10HiddenObjects: ; 46e9c (11:6e9c)
+ db $11,$09,SUPER_POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $35,$10,MAX_ETHER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+RocketHideout1HiddenObjects: ; 46ea9 (11:6ea9)
+ db $0f,$15,PP_UP
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+RocketHideout3HiddenObjects: ; 46eb0 (11:6eb0)
+ db $11,$1b,NUGGET
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+RocketHideout4HiddenObjects: ; 46eb7 (11:6eb7)
+ db $01,$19,SUPER_POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SaffronPokecenterHiddenObjects: ; 46ebe (11:6ebe)
+ db $04,$00,$04 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+PokemonTower5HiddenObjects: ; 46ecb (11:6ecb)
+ db $0c,$04,ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Route13HiddenObjects: ; 46ed2 (11:6ed2)
+ db $0e,$01,PP_UP
+ dbw BANK(HiddenItems),HiddenItems
+ db $0d,$10,CALCIUM
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SafariZoneEntranceHiddenObjects: ; 46edf (11:6edf)
+ db $01,$0a,NUGGET
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SafariZoneWestHiddenObjects: ; 46ee6 (11:6ee6)
+ db $05,$06,REVIVE
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SilphCo5FHiddenObjects: ; 46eed (11:6eed)
+ db $03,$0c,ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SilphCo9FHiddenObjects: ; 46ef4 (11:6ef4)
+ db $0f,$02,MAX_POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+CopycatsHouse2FHiddenObjects: ; 46efb (11:6efb)
+ db $01,$01,NUGGET
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+UnknownDungeon1HiddenObjects: ; 46f02 (11:6f02)
+ db $0b,$0e,RARE_CANDY
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+UnknownDungeon3HiddenObjects: ; 46f09 (11:6f09)
+ db $03,$1b,ULTRA_BALL
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+PowerPlantHiddenObjects: ; 46f10 (11:6f10)
+ db $10,$11,MAX_ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $01,$0c,PP_UP
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SeafoamIslands3HiddenObjects: ; 46f1d (11:6f1d)
+ db $0f,$0f,NUGGET
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SeafoamIslands5HiddenObjects: ; 46f24 (11:6f24)
+ db $11,$19,ULTRA_BALL
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Mansion1HiddenObjects: ; 46f2b (11:6f2b)
+ db $10,$08,MOON_STONE
+ dbw BANK(HiddenItems),HiddenItems
+ db $05,$02,$04 ; XXX, y, x
+ dbw BANK(Func_44316),Func_44316
+ db $FF
+Mansion2HiddenObjects: ; 46f38 (11:6f38)
+ db $0b,$02,$04 ; XXX, y, x
+ db Bank(Mansion2Script_52037)
+ dw Mansion2Script_52037
+ db $FF
+Mansion3HiddenObjects: ; 46f3f (11:6f3f)
+ db $09,$01,MAX_REVIVE
+ dbw BANK(HiddenItems),HiddenItems
+ db $05,$0a,$04 ; XXX, y, x
+ dbw Bank(Func_5227a), Func_5227a
+ db $FF
+Mansion4HiddenObjects: ; 46f4c (11:6f4c)
+ db $09,$01,RARE_CANDY
+ dbw BANK(HiddenItems),HiddenItems
+ db $03,$14,$04 ; XXX, y, x
+ dbw Bank(Func_52420), Func_52420
+ db $19,$12,$04 ; XXX, y, x
+ dbw Bank(Func_52420), Func_52420
+ db $FF
+Route23HiddenObjects: ; 46f5f (11:6f5f)
+ db $2c,$09,FULL_RESTORE
+ dbw BANK(HiddenItems),HiddenItems
+ db $46,$13,ULTRA_BALL
+ dbw BANK(HiddenItems),HiddenItems
+ db $5a,$08,MAX_ETHER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+VictoryRoad2HiddenObjects: ; 46f72 (11:6f72)
+ db $02,$05,ULTRA_BALL
+ dbw BANK(HiddenItems),HiddenItems
+ db $07,$1a,FULL_RESTORE
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Unused6FHiddenObjects: ; 46f7f (11:6f7f)
+ db $0b,$0e,MAX_ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+BillsHouseHiddenObjects: ; 46f86 (11:6f86)
+ db $04,$01,$04 ; XXX, y, x
+ dbw Bank(Func_1eb6e), Func_1eb6e
+ db $FF
+ViridianCityHiddenObjects: ; 46f8d (11:6f8d)
+ db $04,$0e,POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SafariZoneRestHouse2HiddenObjects: ; 46f94 (11:6f94)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+SafariZoneRestHouse3HiddenObjects: ; 46fa1 (11:6fa1)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+SafariZoneRestHouse4HiddenObjects: ; 46fae (11:6fae)
+ db $04,$00,$08 ; XXX, y, x
+ dbw Bank(Func_6245d), Func_6245d
+ db $03,$0d,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+UnusedB9HiddenObjects: ; 46fbb (11:6fbb)
+ db $02,$01,$04 ; XXX, y, x
+ dbw Bank(Func_5db8f), Func_5db8f
+ db $FF
+LavenderHouse1HiddenObjects: ; 46fc2 (11:6fc2)
+ db $01,$00,$00 ; XXX, y, x
+ dbw Bank(Func_1eb60), Func_1eb60
+ db $01,$01,$00 ; XXX, y, x
+ dbw Bank(Func_1eb60), Func_1eb60
+ db $01,$07,$00 ; XXX, y, x
+ dbw Bank(Func_1eb60), Func_1eb60
+ db $FF
+CeladonMansion5HiddenObjects: ; 46fd5 (11:6fd5)
+ db $00,$03,$34 ; XXX, y, x
+ dbw Bank(Func_5dc1a), Func_5dc1a
+ db $00,$04,$34 ; XXX, y, x
+ dbw Bank(Func_5dc1a), Func_5dc1a
+ db $04,$03,$35 ; XXX, y, x
+ dbw Bank(Func_52996), Func_52996
+ db $FF
+FightingDojoHiddenObjects: ; 46fe8 (11:6fe8)
+ db $09,$03,$04 ; XXX, y, x
+ dbw Bank(Func_52a22), Func_52a22
+ db $09,$06,$04 ; XXX, y, x
+ dbw Bank(Func_52a22), Func_52a22
+ db $00,$04,$04 ; XXX, y, x
+ dbw Bank(Func_52a08), Func_52a08
+ db $00,$05,$04 ; XXX, y, x
+ dbw Bank(Func_52a15), Func_52a15
+ db $FF
+IndigoPlateauLobbyHiddenObjects: ; 47001 (11:7001)
+ db $07,$0f,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+CinnabarLab4HiddenObjects: ; 47008 (11:7008)
+ db $04,$00,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $04,$02,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+BikeShopHiddenObjects: ; 47015 (11:7015)
+ db $00,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_1e94b), Func_1e94b
+ db $01,$02,$d0 ; XXX, y, x
+ dbw Bank(Func_1e94b), Func_1e94b
+ db $02,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_1e94b), Func_1e94b
+ db $02,$03,$d0 ; XXX, y, x
+ dbw Bank(Func_1e94b), Func_1e94b
+ db $04,$00,$d0 ; XXX, y, x
+ dbw Bank(Func_1e94b), Func_1e94b
+ db $05,$01,$d0 ; XXX, y, x
+ dbw Bank(Func_1e94b), Func_1e94b
+ db $FF
+Route11HiddenObjects: ; 4703a (11:703a)
+ db $05,$30,ESCAPE_ROPE
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Route12HiddenObjects: ; 47041 (11:7041)
+ db $3f,$02,HYPER_POTION
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SilphCo11FHiddenObjects: ; 47048 (11:7048)
+ db $0c,$0a,$04 ; XXX, y, x
+ dbw Bank(Func_62516), Func_62516
+ db $FF
+Route17HiddenObjects: ; 4704f (11:704f)
+ db $0e,$0f,RARE_CANDY
+ dbw BANK(HiddenItems),HiddenItems
+ db $2d,$08,FULL_RESTORE
+ dbw BANK(HiddenItems),HiddenItems
+ db $48,$11,PP_UP
+ dbw BANK(HiddenItems),HiddenItems
+ db $5b,$04,MAX_REVIVE
+ dbw BANK(HiddenItems),HiddenItems
+ db $79,$08,MAX_ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+UndergroundPathNsHiddenObjects: ; 4706e (11:706e)
+ db $04,$03,FULL_RESTORE
+ dbw BANK(HiddenItems),HiddenItems
+ db $22,$04,X_SPECIAL
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+UndergroundPathWeHiddenObjects: ; 4707b (11:707b)
+ db $02,$0c,NUGGET
+ dbw BANK(HiddenItems),HiddenItems
+ db $05,$15,ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+CeladonCityHiddenObjects: ; 47088 (11:7088)
+ db $0f,$30,PP_UP
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+SeafoamIslands4HiddenObjects: ; 4708f (11:708f)
+ db $10,$09,MAX_ELIXER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+VermilionCityHiddenObjects: ; 47096 (11:7096)
+ db $0b,$0e,MAX_ETHER
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+CeruleanCityHiddenObjects: ; 4709d (11:709d)
+ db $08,$0f,RARE_CANDY
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
+Route4HiddenObjects: ; 470a4 (11:70a4)
+ db $03,$28,GREAT_BALL
+ dbw BANK(HiddenItems),HiddenItems
+ db $FF
diff --git a/data/hide_show_data.asm b/data/hide_show_data.asm
new file mode 100755
index 00000000..11a5cf5a
--- /dev/null
+++ b/data/hide_show_data.asm
@@ -0,0 +1,577 @@
+; data for default hidden/shown
+; objects for each map ($00-$F8)
+
+; Table of 2-Byte pointers, one pointer per map,
+; goes up to Map_F7, ends with $FFFF.
+; points to table listing all missable object in the area
+MapHSPointers: ; c8f5 (3:48f5)
+ dw MapHS00
+ dw MapHS01
+ dw MapHS02
+ dw MapHS03
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS0A
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS0D
+ dw MapHSXX
+ dw MapHS0F
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS14
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS17
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS1A
+ dw MapHS1B
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS21
+ dw MapHSXX
+ dw MapHS23
+ dw MapHS24
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS27
+ dw MapHS28
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS2D
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS33
+ dw MapHS34
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS3B
+ dw MapHSXX
+ dw MapHS3D
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS53
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS58
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS60
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS66
+ dw MapHS67
+ dw MapHS68
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS6C
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS78
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS84
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS87
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS8F
+ dw MapHS90
+ dw MapHS91
+ dw MapHS92
+ dw MapHS93
+ dw MapHS94
+ dw MapHS95
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS9B
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHS9F
+ dw MapHSA0
+ dw MapHSA1
+ dw MapHSA2
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSA5
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSB1
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSB5
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSC0
+ dw MapHSXX
+ dw MapHSC2
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSC6
+ dw MapHSC7
+ dw MapHSC8
+ dw MapHSC9
+ dw MapHSCA
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSCF
+ dw MapHSD0
+ dw MapHSD1
+ dw MapHSD2
+ dw MapHSD3
+ dw MapHSD4
+ dw MapHSD5
+ dw MapHSD6
+ dw MapHSD7
+ dw MapHSD8
+ dw MapHSD9
+ dw MapHSDA
+ dw MapHSDB
+ dw MapHSDC
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSE2
+ dw MapHSE3
+ dw MapHSE4
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSE9
+ dw MapHSEA
+ dw MapHSEB
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSF4
+ dw MapHSXX
+ dw MapHSXX
+ dw MapHSXX
+ dw $FFFF
+
+; Structure:
+; 3 bytes per object
+; [Map_ID][Object_ID][H/S]
+;
+; Program stops reading when either:
+; a) Map_ID = $FF
+; b) Map_ID ≠ currentMapID
+;
+; This Data is loaded into RAM at $D5CE-$D5F?. (W_MISSABLEOBJECTLIST)
+
+; These constants come from the bytes for Predef functions:
+Hide equ $11
+Show equ $15
+
+MapHSXX: ; cae7 (3:4ae7)
+ db $FF,$FF,$FF
+MapHS00: ; caea (3:4aea)
+ db PALLET_TOWN,$01,Hide
+MapHS01: ; caed (3:4aed)
+ db VIRIDIAN_CITY,$05,Show
+ db VIRIDIAN_CITY,$07,Hide
+MapHS02: ; caf3 (3:4af3)
+ db PEWTER_CITY,$03,Show
+ db PEWTER_CITY,$05,Show
+MapHS03: ; caf9 (3:4af9)
+ db CERULEAN_CITY,$01,Hide
+ db CERULEAN_CITY,$02,Show
+ db CERULEAN_CITY,$06,Hide
+ db CERULEAN_CITY,$0A,Show
+ db CERULEAN_CITY,$0B,Show
+MapHS0A: ; cb08 (3:4b08)
+ db SAFFRON_CITY,$01,Show
+ db SAFFRON_CITY,$02,Show
+ db SAFFRON_CITY,$03,Show
+ db SAFFRON_CITY,$04,Show
+ db SAFFRON_CITY,$05,Show
+ db SAFFRON_CITY,$06,Show
+ db SAFFRON_CITY,$07,Show
+ db SAFFRON_CITY,$08,Hide
+ db SAFFRON_CITY,$09,Hide
+ db SAFFRON_CITY,$0A,Hide
+ db SAFFRON_CITY,$0B,Hide
+ db SAFFRON_CITY,$0C,Hide
+ db SAFFRON_CITY,$0D,Hide
+ db SAFFRON_CITY,$0E,Show
+ db SAFFRON_CITY,$0F,Hide
+MapHS0D: ; cb35 (3:4b35)
+ db ROUTE_2,$01,Show
+ db ROUTE_2,$02,Show
+MapHS0F: ; cb3b (3:4b3b)
+ db ROUTE_4,$03,Show
+MapHS14: ; cb3e (3:4b3e)
+ db ROUTE_9,$0A,Show
+MapHS17: ; cb41 (3:4b41)
+ db ROUTE_12,$01,Show
+ db ROUTE_12,$09,Show
+ db ROUTE_12,$0A,Show
+MapHS1A: ; cb4a (3:4b4a)
+ db ROUTE_15,$0B,Show
+MapHS1B: ; cb4d (3:4b4d)
+ db ROUTE_16,$07,Show
+MapHS21: ; cb50 (3:4b50)
+ db ROUTE_22,$01,Hide
+ db ROUTE_22,$02,Hide
+MapHS23: ; cb56 (3:4b56)
+ db ROUTE_24,$01,Show
+ db ROUTE_24,$08,Show
+MapHS24: ; cb5c (3:4b5c)
+ db ROUTE_25,$0A,Show
+MapHS27: ; cb5f (3:4b5f)
+ db BLUES_HOUSE,$01,Show
+ db BLUES_HOUSE,$02,Hide
+ db BLUES_HOUSE,$03,Show
+MapHS28: ; cb68 (3:4b68)
+ db OAKS_LAB,$01,Show
+ db OAKS_LAB,$02,Show
+ db OAKS_LAB,$03,Show
+ db OAKS_LAB,$04,Show
+ db OAKS_LAB,$05,Hide
+ db OAKS_LAB,$06,Show
+ db OAKS_LAB,$07,Show
+ db OAKS_LAB,$08,Hide
+MapHS2D: ; cb80 (3:4b80)
+ db VIRIDIAN_GYM,$01,Show
+ db VIRIDIAN_GYM,$0B,Show
+MapHS34: ; cb86 (3:4b86)
+ db MUSEUM_1F,$05,Show
+MapHSE4: ; cb89 (3:4b89)
+ db UNKNOWN_DUNGEON_1,$01,Show
+ db UNKNOWN_DUNGEON_1,$02,Show
+ db UNKNOWN_DUNGEON_1,$03,Show
+MapHS8F: ; cb92 (3:4b92)
+ db POKEMONTOWER_2,$01,Show
+MapHS90: ; cb95 (3:4b95)
+ db POKEMONTOWER_3,$04,Show
+MapHS91: ; cb98 (3:4b98)
+ db POKEMONTOWER_4,$04,Show
+ db POKEMONTOWER_4,$05,Show
+ db POKEMONTOWER_4,$06,Show
+MapHS92: ; cba1 (3:4ba1)
+ db POKEMONTOWER_5,$06,Show
+MapHS93: ; cba4 (3:4ba4)
+ db POKEMONTOWER_6,$04,Show
+ db POKEMONTOWER_6,$05,Show
+MapHS94: ; cbaa (3:4baa)
+ db POKEMONTOWER_7,$01,Show
+ db POKEMONTOWER_7,$02,Show
+ db POKEMONTOWER_7,$03,Show
+ db POKEMONTOWER_7,$04,Show
+MapHS95: ; cbb6 (3:4bb6)
+ db LAVENDER_HOUSE_1,$05,Hide
+MapHS84: ; cbb9 (3:4bb9)
+ db CELADON_MANSION_5,$02,Show
+MapHS87: ; cbbc (3:4bbc)
+ db GAME_CORNER,$0B,Show
+MapHS9B: ; cbbf (3:4bbf)
+ db FUCHSIA_HOUSE_2,$02,Show
+MapHSA5: ; cbc2 (3:4bc2)
+ db MANSION_1,$02,Show
+ db MANSION_1,$03,Show
+MapHSB1: ; cbc8 (3:4bc8)
+ db FIGHTING_DOJO,$06,Show
+ db FIGHTING_DOJO,$07,Show
+MapHSB5: ; cbce (3:4bce)
+ db SILPH_CO_1F,$01,Hide
+MapHS53: ; cbd1 (3:4bd1)
+ db POWER_PLANT,$01,Show
+ db POWER_PLANT,$02,Show
+ db POWER_PLANT,$03,Show
+ db POWER_PLANT,$04,Show
+ db POWER_PLANT,$05,Show
+ db POWER_PLANT,$06,Show
+ db POWER_PLANT,$07,Show
+ db POWER_PLANT,$08,Show
+ db POWER_PLANT,$09,Show
+ db POWER_PLANT,$0A,Show
+ db POWER_PLANT,$0B,Show
+ db POWER_PLANT,$0C,Show
+ db POWER_PLANT,$0D,Show
+ db POWER_PLANT,$0E,Show
+MapHSC2: ; cbfb (3:4bfb)
+ db VICTORY_ROAD_2,$06,Show
+ db VICTORY_ROAD_2,$07,Show
+ db VICTORY_ROAD_2,$08,Show
+ db VICTORY_ROAD_2,$09,Show
+ db VICTORY_ROAD_2,$0A,Show
+ db VICTORY_ROAD_2,$0D,Show
+MapHS58: ; cc0d (3:4c0d)
+ db BILLS_HOUSE,$01,Show
+ db BILLS_HOUSE,$02,Hide
+ db BILLS_HOUSE,$03,Hide
+MapHS33: ; cc16 (3:4c16)
+ db VIRIDIAN_FOREST,$05,Show
+ db VIRIDIAN_FOREST,$06,Show
+ db VIRIDIAN_FOREST,$07,Show
+MapHS3B: ; cc1f (3:4c1f)
+ db MT_MOON_1,$08,Show
+ db MT_MOON_1,$09,Show
+ db MT_MOON_1,$0A,Show
+ db MT_MOON_1,$0B,Show
+ db MT_MOON_1,$0C,Show
+ db MT_MOON_1,$0D,Show
+MapHS3D: ; cc31 (3:4c31)
+ db MT_MOON_3,$06,Show
+ db MT_MOON_3,$07,Show
+ db MT_MOON_3,$08,Show
+ db MT_MOON_3,$09,Show
+MapHS60: ; cc3d (3:4c3d)
+ db SS_ANNE_2,$02,Hide
+MapHS66: ; cc40 (3:4c40)
+ db SS_ANNE_8,$0A,Show
+MapHS67: ; cc43 (3:4c43)
+ db SS_ANNE_9,$06,Show
+ db SS_ANNE_9,$09,Show
+MapHS68: ; cc49 (3:4c49)
+ db SS_ANNE_10,$09,Show
+ db SS_ANNE_10,$0A,Show
+ db SS_ANNE_10,$0B,Show
+MapHSC6: ; cc52 (3:4c52)
+ db VICTORY_ROAD_3,$05,Show
+ db VICTORY_ROAD_3,$06,Show
+ db VICTORY_ROAD_3,$0A,Show
+MapHSC7: ; cc5b (3:4c5b)
+ db ROCKET_HIDEOUT_1,$06,Show
+ db ROCKET_HIDEOUT_1,$07,Show
+MapHSC8: ; cc61 (3:4c61)
+ db ROCKET_HIDEOUT_2,$02,Show
+ db ROCKET_HIDEOUT_2,$03,Show
+ db ROCKET_HIDEOUT_2,$04,Show
+ db ROCKET_HIDEOUT_2,$05,Show
+MapHSC9: ; cc6d (3:4c6d)
+ db ROCKET_HIDEOUT_3,$03,Show
+ db ROCKET_HIDEOUT_3,$04,Show
+MapHSCA: ; cc73 (3:4c73)
+ db ROCKET_HIDEOUT_4,$01,Show
+ db ROCKET_HIDEOUT_4,$05,Show
+ db ROCKET_HIDEOUT_4,$06,Show
+ db ROCKET_HIDEOUT_4,$07,Show
+ db ROCKET_HIDEOUT_4,$08,Hide
+ db ROCKET_HIDEOUT_4,$09,Hide
+MapHSCF: ; cc85 (3:4c85)
+ db SILPH_CO_2F,$01,Show
+ db SILPH_CO_2F,$02,Show
+ db SILPH_CO_2F,$03,Show
+ db SILPH_CO_2F,$04,Show
+ db SILPH_CO_2F,$05,Show
+MapHSD0: ; cc94 (3:4c94)
+ db SILPH_CO_3F,$02,Show
+ db SILPH_CO_3F,$03,Show
+ db SILPH_CO_3F,$04,Show
+MapHSD1: ; cc9d (3:4c9d)
+ db SILPH_CO_4F,$02,Show
+ db SILPH_CO_4F,$03,Show
+ db SILPH_CO_4F,$04,Show
+ db SILPH_CO_4F,$05,Show
+ db SILPH_CO_4F,$06,Show
+ db SILPH_CO_4F,$07,Show
+MapHSD2: ; ccaf (3:4caf)
+ db SILPH_CO_5F,$02,Show
+ db SILPH_CO_5F,$03,Show
+ db SILPH_CO_5F,$04,Show
+ db SILPH_CO_5F,$05,Show
+ db SILPH_CO_5F,$06,Show
+ db SILPH_CO_5F,$07,Show
+ db SILPH_CO_5F,$08,Show
+MapHSD3: ; ccc4 (3:4cc4)
+ db SILPH_CO_6F,$06,Show
+ db SILPH_CO_6F,$07,Show
+ db SILPH_CO_6F,$08,Show
+ db SILPH_CO_6F,$09,Show
+ db SILPH_CO_6F,$0A,Show
+MapHSD4: ; ccd3 (3:4cd3)
+ db SILPH_CO_7F,$05,Show
+ db SILPH_CO_7F,$06,Show
+ db SILPH_CO_7F,$07,Show
+ db SILPH_CO_7F,$08,Show
+ db SILPH_CO_7F,$09,Show
+ db SILPH_CO_7F,$0A,Show
+ db SILPH_CO_7F,$0B,Show
+ db SILPH_CO_7F,$0C,Show
+MapHSD5: ; cceb (3:4ceb)
+ db SILPH_CO_8F,$02,Show
+ db SILPH_CO_8F,$03,Show
+ db SILPH_CO_8F,$04,Show
+MapHSE9: ; ccf4 (3:4cf4)
+ db SILPH_CO_9F,$02,Show
+ db SILPH_CO_9F,$03,Show
+ db SILPH_CO_9F,$04,Show
+MapHSEA: ; ccfd (3:4cfd)
+ db SILPH_CO_10F,$01,Show
+ db SILPH_CO_10F,$02,Show
+ db SILPH_CO_10F,$03,Show
+ db SILPH_CO_10F,$04,Show
+ db SILPH_CO_10F,$05,Show
+ db SILPH_CO_10F,$06,Show
+MapHSEB: ; cd0f (3:4d0f)
+ db SILPH_CO_11F,$03,Show
+ db SILPH_CO_11F,$04,Show
+ db SILPH_CO_11F,$05,Show
+MapHSF4: ; cd18 (3:4d18)
+ db $F4,$02,Show
+MapHSD6: ; cd1b (3:4d1b)
+ db MANSION_2,$02,Show
+MapHSD7: ; cd1e (3:4d1e)
+ db MANSION_3,$03,Show
+ db MANSION_3,$04,Show
+MapHSD8: ; cd24 (3:4d24)
+ db MANSION_4,$03,Show
+ db MANSION_4,$04,Show
+ db MANSION_4,$05,Show
+ db MANSION_4,$06,Show
+ db MANSION_4,$08,Show
+MapHSD9: ; cd33 (3:4d33)
+ db SAFARI_ZONE_EAST,$01,Show
+ db SAFARI_ZONE_EAST,$02,Show
+ db SAFARI_ZONE_EAST,$03,Show
+ db SAFARI_ZONE_EAST,$04,Show
+MapHSDA: ; cd3f (3:4d3f)
+ db SAFARI_ZONE_NORTH,$01,Show
+ db SAFARI_ZONE_NORTH,$02,Show
+MapHSDB: ; cd45 (3:4d45)
+ db SAFARI_ZONE_WEST,$01,Show
+ db SAFARI_ZONE_WEST,$02,Show
+ db SAFARI_ZONE_WEST,$03,Show
+ db SAFARI_ZONE_WEST,$04,Show
+MapHSDC: ; cd51 (3:4d51)
+ db SAFARI_ZONE_CENTER,$01,Show
+MapHSE2: ; cd54 (3:4d54)
+ db UNKNOWN_DUNGEON_2,$01,Show
+ db UNKNOWN_DUNGEON_2,$02,Show
+ db UNKNOWN_DUNGEON_2,$03,Show
+MapHSE3: ; cd5d (3:4d5d)
+ db UNKNOWN_DUNGEON_3,$01,Show
+ db UNKNOWN_DUNGEON_3,$02,Show
+ db UNKNOWN_DUNGEON_3,$03,Show
+MapHS6C: ; cd66 (3:4d66)
+ db VICTORY_ROAD_1,$03,Show
+ db VICTORY_ROAD_1,$04,Show
+MapHS78: ; cd6c (3:4d6c)
+ db CHAMPIONS_ROOM,$02,Hide
+MapHSC0: ; cd6f (3:4d6f)
+ db SEAFOAM_ISLANDS_1,$01,Show
+ db SEAFOAM_ISLANDS_1,$02,Show
+MapHS9F: ; cd75 (3:4d75)
+ db SEAFOAM_ISLANDS_2,$01,Hide
+ db SEAFOAM_ISLANDS_2,$02,Hide
+MapHSA0: ; cd7b (3:4d7b)
+ db SEAFOAM_ISLANDS_3,$01,Hide
+ db SEAFOAM_ISLANDS_3,$02,Hide
+MapHSA1: ; cd81 (3:4d81)
+ db SEAFOAM_ISLANDS_4,$02,Show
+ db SEAFOAM_ISLANDS_4,$03,Show
+ db SEAFOAM_ISLANDS_4,$05,Hide
+ db SEAFOAM_ISLANDS_4,$06,Hide
+MapHSA2: ; cd8d (3:4d8d)
+ db SEAFOAM_ISLANDS_5,$01,Hide
+ db SEAFOAM_ISLANDS_5,$02,Hide
+ db SEAFOAM_ISLANDS_5,$03,Show
+
+ db $FF,$01,Show
diff --git a/data/item_prices.asm b/data/item_prices.asm
new file mode 100755
index 00000000..45537ded
--- /dev/null
+++ b/data/item_prices.asm
@@ -0,0 +1,98 @@
+ItemPrices: ; 4608 (1:4608)
+ db $00,$00,$00
+ db $00,$12,$00
+ db $00,$06,$00
+ db $00,$02,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$10,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$01,$00
+ db $00,$02,$50
+ db $00,$02,$50
+ db $00,$02,$00
+ db $00,$02,$00
+ db $00,$30,$00
+ db $00,$25,$00
+ db $00,$15,$00
+ db $00,$07,$00
+ db $00,$03,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$05,$50
+ db $00,$03,$50
+ db $00,$00,$00
+ db $00,$21,$00
+ db $00,$21,$00
+ db $00,$21,$00
+ db $00,$98,$00
+ db $00,$98,$00
+ db $00,$98,$00
+ db $00,$98,$00
+ db $00,$98,$00
+ db $00,$48,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$09,$50
+ db $00,$21,$00
+ db $00,$00,$00
+ db $01,$00,$00
+ db $00,$98,$00
+ db $00,$10,$00
+ db $00,$06,$00
+ db $00,$15,$00
+ db $00,$40,$00
+ db $00,$07,$00
+ db $00,$05,$00
+ db $00,$07,$00
+ db $00,$06,$50
+ db $00,$00,$10
+ db $00,$02,$00
+ db $00,$03,$00
+ db $00,$03,$50
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$05,$00
+ db $00,$05,$50
+ db $00,$03,$50
+ db $00,$03,$50
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
+ db $00,$00,$00
diff --git a/data/key_items.asm b/data/key_items.asm
new file mode 100755
index 00000000..9e2d16fe
--- /dev/null
+++ b/data/key_items.asm
@@ -0,0 +1,12 @@
+KeyItemBitfield: ; e799 (3:6799)
+ db %11110000
+ db %00000001
+ db %11110000
+ db %01001111
+ db %00000000
+ db %10011111
+ db %00000000
+ db %11000000
+ db %11110000
+ db %00111011
+ db %00000000
diff --git a/data/mapHeaders/agatha.asm b/data/mapHeaders/agatha.asm
new file mode 100755
index 00000000..dcfe0231
--- /dev/null
+++ b/data/mapHeaders/agatha.asm
@@ -0,0 +1,6 @@
+Agatha_h: ; 0x76421 to 0x7642d (12 bytes) (id=247)
+ db CEMETERY ; tileset
+ db AGATHAS_ROOM_HEIGHT, AGATHAS_ROOM_WIDTH ; dimensions (y, x)
+ dw AgathaBlocks, AgathaTextPointers, AgathaScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw AgathaObject ; objects
diff --git a/data/mapHeaders/battlecenterm.asm b/data/mapHeaders/battlecenterm.asm
new file mode 100755
index 00000000..984f7e38
--- /dev/null
+++ b/data/mapHeaders/battlecenterm.asm
@@ -0,0 +1,6 @@
+BattleCenterM_h: ; 0x4fd04 to 0x4fd10 (12 bytes) (id=239)
+ db CLUB ; tileset
+ db BATTLE_CENTER_HEIGHT, BATTLE_CENTER_WIDTH ; dimensions (y, x)
+ dw BattleCenterMBlocks, BattleCenterMTextPointers, BattleCenterMScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw BattleCenterMObject ; objects
diff --git a/data/mapHeaders/bikeshop.asm b/data/mapHeaders/bikeshop.asm
new file mode 100755
index 00000000..958e9fd4
--- /dev/null
+++ b/data/mapHeaders/bikeshop.asm
@@ -0,0 +1,6 @@
+BikeShop_h: ; 0x1d730 to 0x1d73c (12 bytes) (bank=7) (id=66)
+ db CLUB ; tileset
+ db BIKE_SHOP_HEIGHT, BIKE_SHOP_WIDTH ; dimensions (y, x)
+ dw BikeShopBlocks, BikeShopTextPointers, BikeShopScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw BikeShopObject ; objects
diff --git a/data/mapHeaders/billshouse.asm b/data/mapHeaders/billshouse.asm
new file mode 100755
index 00000000..5218c5f3
--- /dev/null
+++ b/data/mapHeaders/billshouse.asm
@@ -0,0 +1,6 @@
+BillsHouse_h: ; 0x1e75e to 0x1e76a (12 bytes) (bank=7) (id=88)
+ db INTERIOR ; tileset
+ db BILLS_HOUSE_HEIGHT, BILLS_HOUSE_WIDTH ; dimensions (y, x)
+ dw BillsHouseBlocks, BillsHouseTextPointers, BillsHouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw BillsHouseObject ; objects
diff --git a/data/mapHeaders/blueshouse.asm b/data/mapHeaders/blueshouse.asm
new file mode 100755
index 00000000..24564da5
--- /dev/null
+++ b/data/mapHeaders/blueshouse.asm
@@ -0,0 +1,6 @@
+BluesHouse_h: ; 0x19b2f id=39
+ db HOUSE ; tileset
+ db BLUES_HOUSE_HEIGHT, BLUES_HOUSE_WIDTH ; dimensions
+ dw BluesHouseBlocks, BluesHouseTextPointers, BluesHouseScript
+ db 0
+ dw BluesHouseObject
diff --git a/data/mapHeaders/bruno.asm b/data/mapHeaders/bruno.asm
new file mode 100755
index 00000000..19536501
--- /dev/null
+++ b/data/mapHeaders/bruno.asm
@@ -0,0 +1,6 @@
+Bruno_h: ; 0x762ca to 0x762d6 (12 bytes) (id=246)
+ db GYM ; tileset
+ db BRUNOS_ROOM_HEIGHT, BRUNOS_ROOM_WIDTH ; dimensions (y, x)
+ dw BrunoBlocks, BrunoTextPointers, BrunoScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw BrunoObject ; objects
diff --git a/data/mapHeaders/celadoncity.asm b/data/mapHeaders/celadoncity.asm
new file mode 100755
index 00000000..12a1731a
--- /dev/null
+++ b/data/mapHeaders/celadoncity.asm
@@ -0,0 +1,8 @@
+CeladonCity_h: ; 18000 (6:4000)
+ db OVERWORLD ; tileset
+ db CELADON_CITY_HEIGHT, CELADON_CITY_WIDTH ; dimensions (y, x)
+ dw CeladonCityBlocks, CeladonCityTextPointers, CeladonCityScript ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, 4, 0, ROUTE_16_HEIGHT, Route16Blocks, CELADON_CITY_WIDTH
+ EAST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, CELADON_CITY_WIDTH
+ dw CeladonCityObject ; objects
diff --git a/data/mapHeaders/celadondiner.asm b/data/mapHeaders/celadondiner.asm
new file mode 100755
index 00000000..cc2b6075
--- /dev/null
+++ b/data/mapHeaders/celadondiner.asm
@@ -0,0 +1,6 @@
+CeladonDiner_h: ; 0x49145 to 0x49151 (12 bytes) (bank=12) (id=138)
+ db LOBBY ; tileset
+ db CELADON_DINER_HEIGHT, CELADON_DINER_WIDTH ; dimensions (y, x)
+ dw CeladonDinerBlocks, CeladonDinerTextPointers, CeladonDinerScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonDinerObject ; objects
diff --git a/data/mapHeaders/celadongamecorner.asm b/data/mapHeaders/celadongamecorner.asm
new file mode 100755
index 00000000..f211b930
--- /dev/null
+++ b/data/mapHeaders/celadongamecorner.asm
@@ -0,0 +1,6 @@
+CeladonGameCorner_h: ; 0x48bb1 to 0x48bbd (12 bytes) (bank=12) (id=135)
+ db LOBBY ; tileset
+ db GAME_CORNER_HEIGHT, GAME_CORNER_WIDTH ; dimensions (y, x)
+ dw CeladonGameCornerBlocks, CeladonGameCornerTextPointers, CeladonGameCornerScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonGameCornerObject ; objects
diff --git a/data/mapHeaders/celadongym.asm b/data/mapHeaders/celadongym.asm
new file mode 100755
index 00000000..b54aa76c
--- /dev/null
+++ b/data/mapHeaders/celadongym.asm
@@ -0,0 +1,6 @@
+CeladonGym_h: ; 0x488fe to 0x4890a (12 bytes) (bank=12) (id=134)
+ db GYM ; tileset
+ db CELADON_GYM_HEIGHT, CELADON_GYM_WIDTH ; dimensions (y, x)
+ dw CeladonGymBlocks, CeladonGymTextPointers, CeladonGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonGymObject ; objects
diff --git a/data/mapHeaders/celadonhotel.asm b/data/mapHeaders/celadonhotel.asm
new file mode 100755
index 00000000..6bb908fb
--- /dev/null
+++ b/data/mapHeaders/celadonhotel.asm
@@ -0,0 +1,6 @@
+CeladonHotel_h: ; 0x4925d to 0x49269 (12 bytes) (bank=12) (id=140)
+ db POKECENTER ; tileset
+ db CELADON_HOTEL_HEIGHT, CELADON_HOTEL_WIDTH ; dimensions (y, x)
+ dw CeladonHotelBlocks, CeladonHotelTextPointers, CeladonHotelScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonHotelObject ; objects
diff --git a/data/mapHeaders/celadonhouse.asm b/data/mapHeaders/celadonhouse.asm
new file mode 100755
index 00000000..fee3fa15
--- /dev/null
+++ b/data/mapHeaders/celadonhouse.asm
@@ -0,0 +1,6 @@
+CeladonHouse_h: ; 0x49202 to 0x4920e (12 bytes) (bank=12) (id=139)
+ db MANSION ; tileset
+ db CELADON_HOUSE_HEIGHT, CELADON_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeladonHouseBlocks, CeladonHouseTextPointers, CeladonHouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonHouseObject ; objects
diff --git a/data/mapHeaders/celadonmansion1.asm b/data/mapHeaders/celadonmansion1.asm
new file mode 100755
index 00000000..8b2d9856
--- /dev/null
+++ b/data/mapHeaders/celadonmansion1.asm
@@ -0,0 +1,6 @@
+CeladonMansion1_h: ; 0x48688 to 0x48694 (12 bytes) (bank=12) (id=128)
+ db MANSION ; tileset
+ db CELADON_MANSION_1_HEIGHT, CELADON_MANSION_1_WIDTH ; dimensions (y, x)
+ dw CeladonMansion1Blocks, CeladonMansion1TextPointers, CeladonMansion1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMansion1Object ; objects
diff --git a/data/mapHeaders/celadonmansion2.asm b/data/mapHeaders/celadonmansion2.asm
new file mode 100755
index 00000000..e5afd96e
--- /dev/null
+++ b/data/mapHeaders/celadonmansion2.asm
@@ -0,0 +1,6 @@
+CeladonMansion2_h: ; 0x4872e to 0x4873a (12 bytes) (bank=12) (id=129)
+ db MANSION ; tileset
+ db CELADON_MANSION_2_HEIGHT, CELADON_MANSION_2_WIDTH ; dimensions (y, x)
+ dw CeladonMansion2Blocks, CeladonMansion2TextPointers, CeladonMansion2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMansion2Object ; objects
diff --git a/data/mapHeaders/celadonmansion3.asm b/data/mapHeaders/celadonmansion3.asm
new file mode 100755
index 00000000..8b290e42
--- /dev/null
+++ b/data/mapHeaders/celadonmansion3.asm
@@ -0,0 +1,6 @@
+CeladonMansion3_h: ; 0x48784 to 0x48790 (12 bytes) (bank=12) (id=130)
+ db MANSION ; tileset
+ db CELADON_MANSION_3_HEIGHT, CELADON_MANSION_3_WIDTH ; dimensions (y, x)
+ dw CeladonMansion3Blocks, CeladonMansion3TextPointers, CeladonMansion3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMansion3Object ; objects
diff --git a/data/mapHeaders/celadonmansion4.asm b/data/mapHeaders/celadonmansion4.asm
new file mode 100755
index 00000000..e7277d66
--- /dev/null
+++ b/data/mapHeaders/celadonmansion4.asm
@@ -0,0 +1,6 @@
+CeladonMansion4_h: ; 0x4885f to 0x4886b (12 bytes) (bank=12) (id=131)
+ db MANSION ; tileset
+ db CELADON_MANSION_4_HEIGHT, CELADON_MANSION_4_WIDTH ; dimensions (y, x)
+ dw CeladonMansion4Blocks, CeladonMansion4TextPointers, CeladonMansion4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMansion4Object ; objects
diff --git a/data/mapHeaders/celadonmansion5.asm b/data/mapHeaders/celadonmansion5.asm
new file mode 100755
index 00000000..06c5ce09
--- /dev/null
+++ b/data/mapHeaders/celadonmansion5.asm
@@ -0,0 +1,6 @@
+CeladonMansion5_h: ; 0x1dd2e to 0x1dd3a (12 bytes) (bank=7) (id=132)
+ db HOUSE ; tileset
+ db CELADON_MANSION_5_HEIGHT, CELADON_MANSION_5_WIDTH ; dimensions (y, x)
+ dw CeladonMansion5Blocks, CeladonMansion5TextPointers, CeladonMansion5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMansion5Object ; objects
diff --git a/data/mapHeaders/celadonmart1.asm b/data/mapHeaders/celadonmart1.asm
new file mode 100755
index 00000000..2a5dc6ad
--- /dev/null
+++ b/data/mapHeaders/celadonmart1.asm
@@ -0,0 +1,6 @@
+CeladonMart1_h: ; 0x60f7a to 0x60f86 (12 bytes) (id=122)
+ db LOBBY ; tileset
+ db CELADON_MART_1_HEIGHT, CELADON_MART_1_WIDTH ; dimensions (y, x)
+ dw CeladonMart1Blocks, CeladonMart1TextPointers, CeladonMart1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMart1Object ; objects
diff --git a/data/mapHeaders/celadonmart2.asm b/data/mapHeaders/celadonmart2.asm
new file mode 100755
index 00000000..9bcd63bf
--- /dev/null
+++ b/data/mapHeaders/celadonmart2.asm
@@ -0,0 +1,6 @@
+CeladonMart2_h: ; 0x560e9 to 0x560f5 (12 bytes) (id=123)
+ db LOBBY ; tileset
+ db CELADON_MART_2_HEIGHT, CELADON_MART_2_WIDTH ; dimensions (y, x)
+ dw CeladonMart2Blocks, CeladonMart2TextPointers, CeladonMart2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMart2Object ; objects
diff --git a/data/mapHeaders/celadonmart3.asm b/data/mapHeaders/celadonmart3.asm
new file mode 100755
index 00000000..bb847159
--- /dev/null
+++ b/data/mapHeaders/celadonmart3.asm
@@ -0,0 +1,6 @@
+CeladonMart3_h: ; 0x48219 to 0x48225 (12 bytes) (bank=12) (id=124)
+ db LOBBY ; tileset
+ db CELADON_MART_3_HEIGHT, CELADON_MART_3_WIDTH ; dimensions (y, x)
+ dw CeladonMart3Blocks, CeladonMart3TextPointers, CeladonMart3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMart3Object ; objects
diff --git a/data/mapHeaders/celadonmart4.asm b/data/mapHeaders/celadonmart4.asm
new file mode 100755
index 00000000..12e7cc12
--- /dev/null
+++ b/data/mapHeaders/celadonmart4.asm
@@ -0,0 +1,6 @@
+CeladonMart4_h: ; 0x4834a to 0x48356 (12 bytes) (bank=12) (id=125)
+ db LOBBY ; tileset
+ db CELADON_MART_4_HEIGHT, CELADON_MART_4_WIDTH ; dimensions (y, x)
+ dw CeladonMart4Blocks, CeladonMart4TextPointers, CeladonMart4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMart4Object ; objects
diff --git a/data/mapHeaders/celadonmart5.asm b/data/mapHeaders/celadonmart5.asm
new file mode 100755
index 00000000..c16207ca
--- /dev/null
+++ b/data/mapHeaders/celadonmart5.asm
@@ -0,0 +1,6 @@
+CeladonMart5_h: ; 0x4905d to 0x49069 (12 bytes) (bank=12) (id=136)
+ db LOBBY ; tileset
+ db CELADON_MART_5_HEIGHT, CELADON_MART_5_WIDTH ; dimensions (y, x)
+ dw CeladonMart5Blocks, CeladonMart5TextPointers, CeladonMart5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMart5Object ; objects
diff --git a/data/mapHeaders/celadonmartelevator.asm b/data/mapHeaders/celadonmartelevator.asm
new file mode 100755
index 00000000..1e51a262
--- /dev/null
+++ b/data/mapHeaders/celadonmartelevator.asm
@@ -0,0 +1,6 @@
+CeladonMartElevator_h: ; 0x485f4 to 0x48600 (12 bytes) (bank=12) (id=127)
+ db LOBBY ; tileset
+ db CELADON_MART_ELEVATOR_HEIGHT, CELADON_MART_ELEVATOR_WIDTH ; dimensions (y, x)
+ dw CeladonMartElevatorBlocks, CeladonMartElevatorTextPointers, CeladonMartElevatorScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMartElevatorObject ; objects
diff --git a/data/mapHeaders/celadonmartroof.asm b/data/mapHeaders/celadonmartroof.asm
new file mode 100755
index 00000000..9654ef3d
--- /dev/null
+++ b/data/mapHeaders/celadonmartroof.asm
@@ -0,0 +1,6 @@
+CeladonMartRoof_h: ; 0x483c9 to 0x483d5 (12 bytes) (bank=12) (id=126)
+ db LOBBY ; tileset
+ db CELADON_MART_ROOF_HEIGHT, CELADON_MART_ROOF_WIDTH ; dimensions (y, x)
+ dw CeladonMartRoofBlocks, CeladonMartRoofTextPointers, CeladonMartRoofScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonMartRoofObject ; objects
diff --git a/data/mapHeaders/celadonpokecenter.asm b/data/mapHeaders/celadonpokecenter.asm
new file mode 100755
index 00000000..e2164223
--- /dev/null
+++ b/data/mapHeaders/celadonpokecenter.asm
@@ -0,0 +1,6 @@
+CeladonPokecenter_h: ; 0x488ac to 0x488b8 (12 bytes) (bank=12) (id=133)
+ db POKECENTER ; tileset
+ db CELADON_POKECENTER_HEIGHT, CELADON_POKECENTER_WIDTH ; dimensions (y, x)
+ dw CeladonPokecenterBlocks, CeladonPokecenterTextPointers, CeladonPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonPokecenterObject ; objects
diff --git a/data/mapHeaders/celadonprizeroom.asm b/data/mapHeaders/celadonprizeroom.asm
new file mode 100755
index 00000000..96951df0
--- /dev/null
+++ b/data/mapHeaders/celadonprizeroom.asm
@@ -0,0 +1,6 @@
+CeladonPrizeRoom_h: ; 0x490e4 to 0x490f0 (12 bytes) (bank=12) (id=137)
+ db LOBBY ; tileset
+ db CELADON_PRIZE_ROOM_HEIGHT, CELADON_PRIZE_ROOM_WIDTH ; dimensions (y, x)
+ dw CeladonPrizeRoomBlocks, CeladonPrizeRoomTextPointers, CeladonPrizeRoomScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeladonPrizeRoomObject ; objects
diff --git a/data/mapHeaders/ceruleancity.asm b/data/mapHeaders/ceruleancity.asm
new file mode 100755
index 00000000..61b04719
--- /dev/null
+++ b/data/mapHeaders/ceruleancity.asm
@@ -0,0 +1,10 @@
+CeruleanCity_h: ; 0x1874e to 0x18786 (56 bytes) (bank=6) (id=3)
+ db OVERWORLD ; tileset
+ db CERULEAN_CITY_HEIGHT, CERULEAN_CITY_WIDTH ; dimensions (y, x)
+ dw CeruleanCityBlocks, CeruleanCityTextPointers, CeruleanCityScript ; blocks, texts, scripts
+ db NORTH | SOUTH | WEST | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, ROUTE_24_HEIGHT, 5, 0, ROUTE_24_WIDTH, Route24Blocks
+ SOUTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, 5, 0, ROUTE_5_WIDTH, Route5Blocks, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, 4, 0, ROUTE_4_HEIGHT, Route4Blocks, CERULEAN_CITY_WIDTH
+ EAST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 4, 0, ROUTE_9_HEIGHT, Route9Blocks, CERULEAN_CITY_WIDTH
+ dw CeruleanCityObject ; objects
diff --git a/data/mapHeaders/ceruleangym.asm b/data/mapHeaders/ceruleangym.asm
new file mode 100755
index 00000000..7296a2a7
--- /dev/null
+++ b/data/mapHeaders/ceruleangym.asm
@@ -0,0 +1,6 @@
+CeruleanGym_h: ; 0x5c6a7 to 0x5c6b3 (12 bytes) (id=65)
+ db GYM ; tileset
+ db CERULEAN_GYM_HEIGHT, CERULEAN_GYM_WIDTH ; dimensions (y, x)
+ dw CeruleanGymBlocks, CeruleanGymTextPointers, CeruleanGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeruleanGymObject ; objects
diff --git a/data/mapHeaders/ceruleanhouse1.asm b/data/mapHeaders/ceruleanhouse1.asm
new file mode 100755
index 00000000..879ceb23
--- /dev/null
+++ b/data/mapHeaders/ceruleanhouse1.asm
@@ -0,0 +1,6 @@
+CeruleanHouse1_h: ; 0x1d6ea to 0x1d6f6 (12 bytes) (bank=7) (id=63)
+ db HOUSE ; tileset
+ db CERULEAN_HOUSE_1_HEIGHT, CERULEAN_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw CeruleanHouse1Blocks, CeruleanHouse1TextPointers, CeruleanHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeruleanHouse1Object ; objects
diff --git a/data/mapHeaders/ceruleanhouse2.asm b/data/mapHeaders/ceruleanhouse2.asm
new file mode 100755
index 00000000..d2c44a47
--- /dev/null
+++ b/data/mapHeaders/ceruleanhouse2.asm
@@ -0,0 +1,6 @@
+CeruleanHouse2_h: ; 0x74dfd to 0x74e09 (12 bytes) (id=230)
+ db SHIP ; tileset
+ db CERULEAN_HOUSE_2_HEIGHT, CERULEAN_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw CeruleanHouse2Blocks, CeruleanHouse2TextPointers, CeruleanHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeruleanHouse2Object ; objects
diff --git a/data/mapHeaders/ceruleanhousetrashed.asm b/data/mapHeaders/ceruleanhousetrashed.asm
new file mode 100755
index 00000000..60c6dc94
--- /dev/null
+++ b/data/mapHeaders/ceruleanhousetrashed.asm
@@ -0,0 +1,6 @@
+CeruleanHouseTrashed_h: ; 0x1d679 to 0x1d685 (12 bytes) (bank=7) (id=62)
+ db HOUSE ; tileset
+ db TRASHED_HOUSE_HEIGHT, TRASHED_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeruleanHouseTrashedBlocks, CeruleanHouseTrashedTextPointers, CeruleanHouseTrashedScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeruleanHouseTrashedObject ; objects
diff --git a/data/mapHeaders/ceruleanmart.asm b/data/mapHeaders/ceruleanmart.asm
new file mode 100755
index 00000000..a2e112fd
--- /dev/null
+++ b/data/mapHeaders/ceruleanmart.asm
@@ -0,0 +1,6 @@
+CeruleanMart_h: ; 0x5c889 to 0x5c895 (12 bytes) (id=67)
+ db MART ; tileset
+ db CERULEAN_MART_HEIGHT, CERULEAN_MART_WIDTH ; dimensions (y, x)
+ dw CeruleanMartBlocks, CeruleanMartTextPointers, CeruleanMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeruleanMartObject ; objects
diff --git a/data/mapHeaders/ceruleanpokecenter.asm b/data/mapHeaders/ceruleanpokecenter.asm
new file mode 100755
index 00000000..908229fe
--- /dev/null
+++ b/data/mapHeaders/ceruleanpokecenter.asm
@@ -0,0 +1,6 @@
+CeruleanPokecenter_h: ; 0x5c639 to 0x5c645 (12 bytes) (id=64)
+ db POKECENTER ; tileset
+ db CERULEAN_POKECENTER_HEIGHT, CERULEAN_POKECENTER_WIDTH ; dimensions (y, x)
+ dw CeruleanPokecenterBlocks, CeruleanPokecenterTextPointers, CeruleanPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CeruleanPokecenterObject ; objects
diff --git a/data/mapHeaders/cinnabargym.asm b/data/mapHeaders/cinnabargym.asm
new file mode 100755
index 00000000..1902fe5d
--- /dev/null
+++ b/data/mapHeaders/cinnabargym.asm
@@ -0,0 +1,6 @@
+CinnabarGym_h: ; 0x7573e to 0x7574a (12 bytes) (id=166)
+ db FACILITY ; tileset
+ db CINNABAR_GYM_HEIGHT, CINNABAR_GYM_WIDTH ; dimensions (y, x)
+ dw CinnabarGymBlocks, CinnabarGymTextPointers, CinnabarGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CinnabarGymObject ; objects
diff --git a/data/mapHeaders/cinnabarisland.asm b/data/mapHeaders/cinnabarisland.asm
new file mode 100755
index 00000000..f0da170f
--- /dev/null
+++ b/data/mapHeaders/cinnabarisland.asm
@@ -0,0 +1,8 @@
+CinnabarIsland_h: ; 0x1c000 to 0x1c022 (34 bytes) (bank=7) (id=8)
+ db OVERWORLD ; tileset
+ db CINNABAR_ISLAND_HEIGHT, CINNABAR_ISLAND_WIDTH ; dimensions (y, x)
+ dw CinnabarIslandBlocks, CinnabarIslandTextPointers, CinnabarIslandScript ; blocks, texts, scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, ROUTE_21_HEIGHT, 0, 0, ROUTE_21_WIDTH, Route21Blocks
+ EAST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 0, 0, ROUTE_20_HEIGHT, Route20Blocks, CINNABAR_ISLAND_WIDTH
+ dw CinnabarIslandObject ; objects
diff --git a/data/mapHeaders/cinnabarmart.asm b/data/mapHeaders/cinnabarmart.asm
new file mode 100755
index 00000000..dd9fc116
--- /dev/null
+++ b/data/mapHeaders/cinnabarmart.asm
@@ -0,0 +1,6 @@
+CinnabarMart_h: ; 0x75e72 to 0x75e7e (12 bytes) (id=172)
+ db MART ; tileset
+ db CINNABAR_MART_HEIGHT, CINNABAR_MART_WIDTH ; dimensions (y, x)
+ dw CinnabarMartBlocks, CinnabarMartTextPointers, CinnabarMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CinnabarMartObject ; objects
diff --git a/data/mapHeaders/cinnabarpokecenter.asm b/data/mapHeaders/cinnabarpokecenter.asm
new file mode 100755
index 00000000..2d00d498
--- /dev/null
+++ b/data/mapHeaders/cinnabarpokecenter.asm
@@ -0,0 +1,6 @@
+CinnabarPokecenter_h: ; 0x75e20 to 0x75e2c (12 bytes) (id=171)
+ db POKECENTER ; tileset
+ db CINNABAR_POKECENTER_HEIGHT, CINNABAR_POKECENTER_WIDTH ; dimensions (y, x)
+ dw CinnabarPokecenterBlocks, CinnabarPokecenterTextPointers, CinnabarPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CinnabarPokecenterObject ; objects
diff --git a/data/mapHeaders/copycatshouse1f.asm b/data/mapHeaders/copycatshouse1f.asm
new file mode 100755
index 00000000..a8d171d7
--- /dev/null
+++ b/data/mapHeaders/copycatshouse1f.asm
@@ -0,0 +1,6 @@
+CopycatsHouse1F_h: ; 0x75eb7 to 0x75ec3 (12 bytes) (id=175)
+ db REDS_HOUSE_1 ; tileset
+ db COPYCATS_HOUSE_1F_HEIGHT, COPYCATS_HOUSE_1F_WIDTH ; dimensions (y, x)
+ dw CopycatsHouse1FBlocks, CopycatsHouse1FTextPointers, CopycatsHouse1FScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CopycatsHouse1FObject ; objects
diff --git a/data/mapHeaders/copycatshouse2f.asm b/data/mapHeaders/copycatshouse2f.asm
new file mode 100755
index 00000000..46be1f54
--- /dev/null
+++ b/data/mapHeaders/copycatshouse2f.asm
@@ -0,0 +1,6 @@
+CopycatsHouse2F_h: ; 0x5cc65 to 0x5cc71 (12 bytes) (id=176)
+ db REDS_HOUSE_2 ; tileset
+ db COPYCATS_HOUSE_2F_HEIGHT, COPYCATS_HOUSE_2F_WIDTH ; dimensions (y, x)
+ dw CopycatsHouse2FBlocks, CopycatsHouse2FTextPointers, CopycatsHouse2FScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw CopycatsHouse2FObject ; objects
diff --git a/data/mapHeaders/daycarem.asm b/data/mapHeaders/daycarem.asm
new file mode 100755
index 00000000..2677b51c
--- /dev/null
+++ b/data/mapHeaders/daycarem.asm
@@ -0,0 +1,6 @@
+DayCareM_h: ; 0x56243 to 0x5624f (12 bytes) (id=72)
+ db HOUSE ; tileset
+ db DAYCAREM_HEIGHT, DAYCAREM_WIDTH ; dimensions (y, x)
+ dw DayCareMBlocks, DayCareMTextPointers, DayCareMScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw DayCareMObject ; objects
diff --git a/data/mapHeaders/diglettscave.asm b/data/mapHeaders/diglettscave.asm
new file mode 100755
index 00000000..3cd5a651
--- /dev/null
+++ b/data/mapHeaders/diglettscave.asm
@@ -0,0 +1,6 @@
+DiglettsCave_h: ; 0x61f62 to 0x61f6e (12 bytes) (id=197)
+ db CAVERN ; tileset
+ db DIGLETTS_CAVE_HEIGHT, DIGLETTS_CAVE_WIDTH ; dimensions (y, x)
+ dw DiglettsCaveBlocks, DiglettsCaveTextPointers, DiglettsCaveScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw DiglettsCaveObject ; objects
diff --git a/data/mapHeaders/diglettscaveroute11.asm b/data/mapHeaders/diglettscaveroute11.asm
new file mode 100755
index 00000000..8d9acd49
--- /dev/null
+++ b/data/mapHeaders/diglettscaveroute11.asm
@@ -0,0 +1,6 @@
+DiglettsCaveEntranceRoute11_h: ; 0x1e5ae to 0x1e5ba (12 bytes) (bank=7) (id=85)
+ db CAVERN ; tileset
+ db DIGLETTS_CAVE_ENTRANCE_HEIGHT, DIGLETTS_CAVE_ENTRANCE_WIDTH ; dimensions (y, x)
+ dw DiglettsCaveEntranceRoute11Blocks, DiglettsCaveEntranceRoute11TextPointers, DiglettsCaveEntranceRoute11Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw DiglettsCaveEntranceRoute11Object ; objects
diff --git a/data/mapHeaders/diglettscaveroute2.asm b/data/mapHeaders/diglettscaveroute2.asm
new file mode 100755
index 00000000..b81d48a6
--- /dev/null
+++ b/data/mapHeaders/diglettscaveroute2.asm
@@ -0,0 +1,6 @@
+DiglettsCaveRoute2_h: ; 0x1dea4 to 0x1deb0 (12 bytes) (bank=7) (id=46)
+ db CAVERN ; tileset
+ db DIGLETTS_CAVE_EXIT_HEIGHT, DIGLETTS_CAVE_EXIT_WIDTH ; dimensions (y, x)
+ dw DiglettsCaveRoute2Blocks, DiglettsCaveRoute2TextPointers, DiglettsCaveRoute2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw DiglettsCaveRoute2Object ; objects
diff --git a/data/mapHeaders/fanclub.asm b/data/mapHeaders/fanclub.asm
new file mode 100755
index 00000000..603ec53b
--- /dev/null
+++ b/data/mapHeaders/fanclub.asm
@@ -0,0 +1,6 @@
+FanClub_h: ; 0x59b64 to 0x59b70 (12 bytes) (id=90)
+ db INTERIOR ; tileset
+ db POKEMON_FAN_CLUB_HEIGHT, POKEMON_FAN_CLUB_WIDTH ; dimensions (y, x)
+ dw FanClubBlocks, FanClubTextPointers, FanClubScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw FanClubObject ; objects
diff --git a/data/mapHeaders/fightingdojo.asm b/data/mapHeaders/fightingdojo.asm
new file mode 100755
index 00000000..d981d816
--- /dev/null
+++ b/data/mapHeaders/fightingdojo.asm
@@ -0,0 +1,6 @@
+FightingDojo_h: ; 0x5cd51 to 0x5cd5d (12 bytes) (id=177)
+ db DOJO ; tileset
+ db FIGHTING_DOJO_HEIGHT, FIGHTING_DOJO_WIDTH ; dimensions (y, x)
+ dw FightingDojoBlocks, FightingDojoTextPointers, FightingDojoScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw FightingDojoObject ; objects
diff --git a/data/mapHeaders/fuchsiacity.asm b/data/mapHeaders/fuchsiacity.asm
new file mode 100755
index 00000000..7a3e4f66
--- /dev/null
+++ b/data/mapHeaders/fuchsiacity.asm
@@ -0,0 +1,9 @@
+FuchsiaCity_h: ; 0x18ba7 to 0x18bd4 (45 bytes) (bank=6) (id=7)
+ db OVERWORLD ; tileset
+ db FUCHSIA_CITY_HEIGHT, FUCHSIA_CITY_WIDTH ; dimensions (y, x)
+ dw FuchsiaCityBlocks, FuchsiaCityTextPointers, FuchsiaCityScript ; blocks, texts, scripts
+ db SOUTH | WEST | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, 5, 0, ROUTE_19_WIDTH, Route19Blocks, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 4, 0, ROUTE_18_HEIGHT, Route18Blocks, FUCHSIA_CITY_WIDTH
+ EAST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 4, 0, ROUTE_15_HEIGHT, Route15Blocks, FUCHSIA_CITY_WIDTH
+ dw FuchsiaCityObject ; objects
diff --git a/data/mapHeaders/fuchsiagym.asm b/data/mapHeaders/fuchsiagym.asm
new file mode 100755
index 00000000..4c6f083f
--- /dev/null
+++ b/data/mapHeaders/fuchsiagym.asm
@@ -0,0 +1,6 @@
+FuchsiaGym_h: ; 0x75431 to 0x7543d (12 bytes) (id=157)
+ db GYM ; tileset
+ db FUCHSIA_GYM_HEIGHT, FUCHSIA_GYM_WIDTH ; dimensions (y, x)
+ dw FuchsiaGymBlocks, FuchsiaGymTextPointers, FuchsiaGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaGymObject ; objects
diff --git a/data/mapHeaders/fuchsiahouse1.asm b/data/mapHeaders/fuchsiahouse1.asm
new file mode 100755
index 00000000..98974fee
--- /dev/null
+++ b/data/mapHeaders/fuchsiahouse1.asm
@@ -0,0 +1,6 @@
+FuchsiaHouse1_h: ; 0x7500c to 0x75018 (12 bytes) (id=153)
+ db HOUSE ; tileset
+ db FUCHSIA_HOUSE_1_HEIGHT, FUCHSIA_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw FuchsiaHouse1Blocks, FuchsiaHouse1TextPointers, FuchsiaHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaHouse1Object ; objects
diff --git a/data/mapHeaders/fuchsiahouse2.asm b/data/mapHeaders/fuchsiahouse2.asm
new file mode 100755
index 00000000..f4d05eeb
--- /dev/null
+++ b/data/mapHeaders/fuchsiahouse2.asm
@@ -0,0 +1,6 @@
+FuchsiaHouse2_h: ; 0x750a9 to 0x750b5 (12 bytes) (id=155)
+ db LAB ; tileset
+ db FUCHSIA_HOUSE_2_HEIGHT, FUCHSIA_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw FuchsiaHouse2Blocks, FuchsiaHouse2TextPointers, FuchsiaHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaHouse2Object ; objects
diff --git a/data/mapHeaders/fuchsiahouse3.asm b/data/mapHeaders/fuchsiahouse3.asm
new file mode 100755
index 00000000..92b4d96d
--- /dev/null
+++ b/data/mapHeaders/fuchsiahouse3.asm
@@ -0,0 +1,6 @@
+FuchsiaHouse3_h: ; 0x56170 to 0x5617c (12 bytes) (id=164)
+ db SHIP ; tileset
+ db FUCHSIA_HOUSE_3_HEIGHT, FUCHSIA_HOUSE_3_WIDTH ; dimensions (y, x)
+ dw FuchsiaHouse3Blocks, FuchsiaHouse3TextPointers, FuchsiaHouse3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaHouse3Object ; objects
diff --git a/data/mapHeaders/fuchsiamart.asm b/data/mapHeaders/fuchsiamart.asm
new file mode 100755
index 00000000..a9f00150
--- /dev/null
+++ b/data/mapHeaders/fuchsiamart.asm
@@ -0,0 +1,6 @@
+FuchsiaMart_h: ; 0x1dd7c to 0x1dd88 (12 bytes) (bank=7) (id=152)
+ db MART ; tileset
+ db FUCHSIA_MART_HEIGHT, FUCHSIA_MART_WIDTH ; dimensions (y, x)
+ dw FuchsiaMartBlocks, FuchsiaMartTextPointers, FuchsiaMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaMartObject ; objects
diff --git a/data/mapHeaders/fuchsiameetingroom.asm b/data/mapHeaders/fuchsiameetingroom.asm
new file mode 100755
index 00000000..48d4c7fc
--- /dev/null
+++ b/data/mapHeaders/fuchsiameetingroom.asm
@@ -0,0 +1,6 @@
+FuchsiaMeetingRoom_h: ; 0x756d7 to 0x756e3 (12 bytes) (id=158)
+ db LAB ; tileset
+ db FUCHSIA_MEETING_ROOM_HEIGHT, FUCHSIA_MEETING_ROOM_WIDTH ; dimensions (y, x)
+ dw FuchsiaMeetingRoomBlocks, FuchsiaMeetingRoomTextPointers, FuchsiaMeetingRoomScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaMeetingRoomObject ; objects
diff --git a/data/mapHeaders/fuchsiapokecenter.asm b/data/mapHeaders/fuchsiapokecenter.asm
new file mode 100755
index 00000000..aec7f455
--- /dev/null
+++ b/data/mapHeaders/fuchsiapokecenter.asm
@@ -0,0 +1,6 @@
+FuchsiaPokecenter_h: ; 0x75057 to 0x75063 (12 bytes) (id=154)
+ db POKECENTER ; tileset
+ db FUCHSIA_POKECENTER_HEIGHT, FUCHSIA_POKECENTER_WIDTH ; dimensions (y, x)
+ dw FuchsiaPokecenterBlocks, FuchsiaPokecenterTextPointers, FuchsiaPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw FuchsiaPokecenterObject ; objects
diff --git a/data/mapHeaders/gary.asm b/data/mapHeaders/gary.asm
new file mode 100755
index 00000000..5b1a1f98
--- /dev/null
+++ b/data/mapHeaders/gary.asm
@@ -0,0 +1,6 @@
+Gary_h: ; 75f11 (1d:5f11)
+ db GYM ;tileset
+ db CHAMPIONS_ROOM_HEIGHT, CHAMPIONS_ROOM_WIDTH ; Height, Width
+ dw GaryBlocks, GaryTextPointers, GaryScript
+ db $0 ;No Connections
+ dw GaryObject
diff --git a/data/mapHeaders/halloffameroom.asm b/data/mapHeaders/halloffameroom.asm
new file mode 100755
index 00000000..63cd6419
--- /dev/null
+++ b/data/mapHeaders/halloffameroom.asm
@@ -0,0 +1,6 @@
+HallofFameRoom_h: ; 0x5a492 to 0x5a49e (12 bytes) (id=118)
+ db GYM ; tileset
+ db HALL_OF_FAME_HEIGHT, HALL_OF_FAME_WIDTH ; dimensions (y, x)
+ dw HallofFameRoomBlocks, HallofFameRoomTextPointers, HallofFameRoomScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw HallofFameRoomObject ; objects
diff --git a/data/mapHeaders/indigoplateau.asm b/data/mapHeaders/indigoplateau.asm
new file mode 100755
index 00000000..9705e3ee
--- /dev/null
+++ b/data/mapHeaders/indigoplateau.asm
@@ -0,0 +1,7 @@
+IndigoPlateau_h: ; 0x5091e to 0x50935 (23 bytes) (id=9)
+ db PLATEAU ; tileset
+ db INDIGO_PLATEAU_HEIGHT, INDIGO_PLATEAU_WIDTH ; dimensions (y, x)
+ dw IndigoPlateauBlocks, IndigoPlateauTextPointers, IndigoPlateauScript ; blocks, texts, scripts
+ db SOUTH ; connections
+ SOUTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, 0, 0, ROUTE_23_WIDTH, Route23Blocks, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT
+ dw IndigoPlateauObject ; objects
diff --git a/data/mapHeaders/indigoplateaulobby.asm b/data/mapHeaders/indigoplateaulobby.asm
new file mode 100755
index 00000000..d0e056ac
--- /dev/null
+++ b/data/mapHeaders/indigoplateaulobby.asm
@@ -0,0 +1,6 @@
+IndigoPlateauLobby_h: ; 0x19c4f to 0x19c5b (12 bytes) (bank=6) (id=174)
+ db MART ; tileset
+ db INDIGO_PLATEAU_LOBBY_HEIGHT, INDIGO_PLATEAU_LOBBY_WIDTH ; dimensions (y, x)
+ dw IndigoPlateauLobbyBlocks, IndigoPlateauLobbyTextPointers, IndigoPlateauLobbyScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw IndigoPlateauLobbyObject ; objects
diff --git a/data/mapHeaders/lab1.asm b/data/mapHeaders/lab1.asm
new file mode 100755
index 00000000..512373c4
--- /dev/null
+++ b/data/mapHeaders/lab1.asm
@@ -0,0 +1,6 @@
+Lab1_h: ; 0x75b80 to 0x75b8c (12 bytes) (id=167)
+ db LAB ; tileset
+ db CINNABAR_LAB_1_HEIGHT, CINNABAR_LAB_1_WIDTH ; dimensions (y, x)
+ dw Lab1Blocks, Lab1TextPointers, Lab1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Lab1Object ; objects
diff --git a/data/mapHeaders/lab2.asm b/data/mapHeaders/lab2.asm
new file mode 100755
index 00000000..a3c2ccf6
--- /dev/null
+++ b/data/mapHeaders/lab2.asm
@@ -0,0 +1,6 @@
+Lab2_h: ; 0x75c15 to 0x75c21 (12 bytes) (id=168)
+ db LAB ; tileset
+ db CINNABAR_LAB_2_HEIGHT, CINNABAR_LAB_2_WIDTH ; dimensions (y, x)
+ dw Lab2Blocks, Lab2TextPointers, Lab2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Lab2Object ; objects
diff --git a/data/mapHeaders/lab3.asm b/data/mapHeaders/lab3.asm
new file mode 100755
index 00000000..c9709e83
--- /dev/null
+++ b/data/mapHeaders/lab3.asm
@@ -0,0 +1,6 @@
+Lab3_h: ; 0x75c7b to 0x75c87 (12 bytes) (id=169)
+ db LAB ; tileset
+ db CINNABAR_LAB_3_HEIGHT, CINNABAR_LAB_3_WIDTH ; dimensions (y, x)
+ dw Lab3Blocks, Lab3TextPointers, Lab3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Lab3Object ; objects
diff --git a/data/mapHeaders/lab4.asm b/data/mapHeaders/lab4.asm
new file mode 100755
index 00000000..82ced4a3
--- /dev/null
+++ b/data/mapHeaders/lab4.asm
@@ -0,0 +1,6 @@
+Lab4_h: ; 0x75d25 to 0x75d31 (12 bytes) (id=170)
+ db LAB ; tileset
+ db CINNABAR_LAB_4_HEIGHT, CINNABAR_LAB_4_WIDTH ; dimensions (y, x)
+ dw Lab4Blocks, Lab4TextPointers, Lab4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Lab4Object ; objects
diff --git a/data/mapHeaders/lance.asm b/data/mapHeaders/lance.asm
new file mode 100755
index 00000000..464fd0d7
--- /dev/null
+++ b/data/mapHeaders/lance.asm
@@ -0,0 +1,6 @@
+Lance_h: ; 0x5a2a2 to 0x5a2ae (12 bytes) (id=113)
+ db DOJO ; tileset
+ db LANCES_ROOM_HEIGHT, LANCES_ROOM_WIDTH ; dimensions (y, x)
+ dw LanceBlocks, LanceTextPointers, LanceScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw LanceObject ; objects
diff --git a/data/mapHeaders/lavenderhouse1.asm b/data/mapHeaders/lavenderhouse1.asm
new file mode 100755
index 00000000..e9531fff
--- /dev/null
+++ b/data/mapHeaders/lavenderhouse1.asm
@@ -0,0 +1,6 @@
+LavenderHouse1_h: ; 0x1d89c to 0x1d8a8 (12 bytes) (bank=7) (id=149)
+ db HOUSE ; tileset
+ db LAVENDER_HOUSE_1_HEIGHT, LAVENDER_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw LavenderHouse1Blocks, LavenderHouse1TextPointers, LavenderHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw LavenderHouse1Object ; objects
diff --git a/data/mapHeaders/lavenderhouse2.asm b/data/mapHeaders/lavenderhouse2.asm
new file mode 100755
index 00000000..ea6c00c1
--- /dev/null
+++ b/data/mapHeaders/lavenderhouse2.asm
@@ -0,0 +1,6 @@
+LavenderHouse2_h: ; 0x1d9a2 to 0x1d9ae (12 bytes) (bank=7) (id=151)
+ db HOUSE ; tileset
+ db LAVENDER_HOUSE_2_HEIGHT, LAVENDER_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw LavenderHouse2Blocks, LavenderHouse2TextPointers, LavenderHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw LavenderHouse2Object ; objects
diff --git a/data/mapHeaders/lavendermart.asm b/data/mapHeaders/lavendermart.asm
new file mode 100755
index 00000000..95f448e5
--- /dev/null
+++ b/data/mapHeaders/lavendermart.asm
@@ -0,0 +1,6 @@
+LavenderMart_h: ; 0x5c920 to 0x5c92c (12 bytes) (id=150)
+ db MART ; tileset
+ db LAVENDER_MART_HEIGHT, LAVENDER_MART_WIDTH ; dimensions (y, x)
+ dw LavenderMartBlocks, LavenderMartTextPointers, LavenderMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw LavenderMartObject ; objects
diff --git a/data/mapHeaders/lavenderpokecenter.asm b/data/mapHeaders/lavenderpokecenter.asm
new file mode 100755
index 00000000..ce6630bf
--- /dev/null
+++ b/data/mapHeaders/lavenderpokecenter.asm
@@ -0,0 +1,6 @@
+LavenderPokecenter_h: ; 0x5c8ce to 0x5c8da (12 bytes) (id=141)
+ db POKECENTER ; tileset
+ db LAVENDER_POKECENTER_HEIGHT, LAVENDER_POKECENTER_WIDTH ; dimensions (y, x)
+ dw LavenderPokecenterBlocks, LavenderPokecenterTextPointers, LavenderPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw LavenderPokecenterObject ; objects
diff --git a/data/mapHeaders/lavendertown.asm b/data/mapHeaders/lavendertown.asm
new file mode 100755
index 00000000..2880dc60
--- /dev/null
+++ b/data/mapHeaders/lavendertown.asm
@@ -0,0 +1,9 @@
+LavenderTown_h: ; 0x44000 to 0x4402d (45 bytes) (bank=11) (id=4)
+ db OVERWORLD ; tileset
+ db LAVENDER_TOWN_HEIGHT, LAVENDER_TOWN_WIDTH ; dimensions (y, x)
+ dw LavenderTownBlocks, LavenderTownTextPointers, LavenderTownScript ; blocks, texts, scripts
+ db NORTH | SOUTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, ROUTE_10_HEIGHT, 0, 0, ROUTE_10_WIDTH, Route10Blocks
+ SOUTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, 0, 0, ROUTE_12_WIDTH, Route12Blocks, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 0, 0, ROUTE_8_HEIGHT, Route8Blocks, LAVENDER_TOWN_WIDTH
+ dw LavenderTownObject ; objects
diff --git a/data/mapHeaders/lorelei.asm b/data/mapHeaders/lorelei.asm
new file mode 100755
index 00000000..e1261c3e
--- /dev/null
+++ b/data/mapHeaders/lorelei.asm
@@ -0,0 +1,6 @@
+Lorelei_h: ; 0x7616f to 0x7617b (12 bytes) (id=245)
+ db GYM ; tileset
+ db LORELEIS_ROOM_HEIGHT, LORELEIS_ROOM_WIDTH ; dimensions (y, x)
+ dw LoreleiBlocks, LoreleiTextPointers, LoreleiScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw LoreleiObject ; objects
diff --git a/data/mapHeaders/mansion1.asm b/data/mapHeaders/mansion1.asm
new file mode 100755
index 00000000..e7110698
--- /dev/null
+++ b/data/mapHeaders/mansion1.asm
@@ -0,0 +1,6 @@
+Mansion1_h: ; 0x442a3 to 0x442af (12 bytes) (bank=11) (id=165)
+ db FACILITY ; tileset
+ db MANSION_1_HEIGHT, MANSION_1_WIDTH ; dimensions (y, x)
+ dw Mansion1Blocks, Mansion1TextPointers, Mansion1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Mansion1Object ; objects
diff --git a/data/mapHeaders/mansion2.asm b/data/mapHeaders/mansion2.asm
new file mode 100755
index 00000000..e888b243
--- /dev/null
+++ b/data/mapHeaders/mansion2.asm
@@ -0,0 +1,6 @@
+Mansion2_h: ; 0x51fcc to 0x51fd8 (12 bytes) (id=214)
+ db FACILITY ; tileset
+ db MANSION_2_HEIGHT, MANSION_2_WIDTH ; dimensions (y, x)
+ dw Mansion2Blocks, Mansion2TextPointers, Mansion2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Mansion2Object ; objects
diff --git a/data/mapHeaders/mansion3.asm b/data/mapHeaders/mansion3.asm
new file mode 100755
index 00000000..a1b6c95f
--- /dev/null
+++ b/data/mapHeaders/mansion3.asm
@@ -0,0 +1,6 @@
+Mansion3_h: ; 0x521e2 to 0x521ee (12 bytes) (id=215)
+ db FACILITY ; tileset
+ db MANSION_3_HEIGHT, MANSION_3_WIDTH ; dimensions (y, x)
+ dw Mansion3Blocks, Mansion3TextPointers, Mansion3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Mansion3Object ; objects
diff --git a/data/mapHeaders/mansion4.asm b/data/mapHeaders/mansion4.asm
new file mode 100755
index 00000000..63f138e7
--- /dev/null
+++ b/data/mapHeaders/mansion4.asm
@@ -0,0 +1,6 @@
+Mansion4_h: ; 0x523ad to 0x523b9 (12 bytes) (id=216)
+ db FACILITY ; tileset
+ db MANSION_4_HEIGHT, MANSION_4_WIDTH ; dimensions (y, x)
+ dw Mansion4Blocks, Mansion4TextPointers, Mansion4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw Mansion4Object ; objects
diff --git a/data/mapHeaders/mtmoon1.asm b/data/mapHeaders/mtmoon1.asm
new file mode 100755
index 00000000..f5b52f37
--- /dev/null
+++ b/data/mapHeaders/mtmoon1.asm
@@ -0,0 +1,6 @@
+MtMoon1_h: ; 0x499bc to 0x499c8 (12 bytes) (id=59)
+ db CAVERN ; tileset
+ db MT_MOON_1_HEIGHT, MT_MOON_1_WIDTH ; dimensions (y, x)
+ dw MtMoon1Blocks, MtMoon1TextPointers, MtMoon1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw MtMoon1Object ; objects
diff --git a/data/mapHeaders/mtmoon2.asm b/data/mapHeaders/mtmoon2.asm
new file mode 100755
index 00000000..5e53bc20
--- /dev/null
+++ b/data/mapHeaders/mtmoon2.asm
@@ -0,0 +1,6 @@
+MtMoon2_h: ; 0x51a36 to 0x51a42 (12 bytes) (id=60)
+ db CAVERN ; tileset
+ db MT_MOON_2_HEIGHT, MT_MOON_2_WIDTH ; dimensions (y, x)
+ dw MtMoon2Blocks, MtMoon2TextPointers, MtMoon2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw MtMoon2Object ; objects
diff --git a/data/mapHeaders/mtmoon3.asm b/data/mapHeaders/mtmoon3.asm
new file mode 100755
index 00000000..95331007
--- /dev/null
+++ b/data/mapHeaders/mtmoon3.asm
@@ -0,0 +1,6 @@
+MtMoon3_h: ; 0x49cff to 0x49d0b (12 bytes) (id=61)
+ db CAVERN ; tileset
+ db MT_MOON_3_HEIGHT, MT_MOON_3_WIDTH ; dimensions (y, x)
+ dw MtMoon3Blocks, MtMoon3TextPointers, MtMoon3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw MtMoon3Object ; objects
diff --git a/data/mapHeaders/mtmoonpokecenter.asm b/data/mapHeaders/mtmoonpokecenter.asm
new file mode 100755
index 00000000..52f002cc
--- /dev/null
+++ b/data/mapHeaders/mtmoonpokecenter.asm
@@ -0,0 +1,6 @@
+MtMoonPokecenter_h: ; 0x492c3 to 0x492cf (12 bytes) (bank=12) (id=68)
+ db POKECENTER ; tileset
+ db MT_MOON_POKECENTER_HEIGHT, MT_MOON_POKECENTER_WIDTH ; dimensions (y, x)
+ dw MtMoonPokecenterBlocks, MtMoonPokecenterTextPointers, MtMoonPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw MtMoonPokecenterObject ; objects
diff --git a/data/mapHeaders/museum1f.asm b/data/mapHeaders/museum1f.asm
new file mode 100755
index 00000000..dacdb50e
--- /dev/null
+++ b/data/mapHeaders/museum1f.asm
@@ -0,0 +1,6 @@
+Museum1F_h: ; 0x5c0eb to 0x5c0f7 (12 bytes) (id=52)
+ db MUSEUM ; tileset
+ db MUSEUM_1F_HEIGHT, MUSEUM_1F_WIDTH ; dimensions (y, x)
+ dw Museum1FBlocks, Museum1FTextPointers, Museum1FScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Museum1FObject ; objects
diff --git a/data/mapHeaders/museum2f.asm b/data/mapHeaders/museum2f.asm
new file mode 100755
index 00000000..15997573
--- /dev/null
+++ b/data/mapHeaders/museum2f.asm
@@ -0,0 +1,6 @@
+Museum2F_h: ; 0x5c30b to 0x5c317 (12 bytes) (id=53)
+ db MUSEUM ; tileset
+ db MUSEUM_2F_HEIGHT, MUSEUM_2F_WIDTH ; dimensions (y, x)
+ dw Museum2FBlocks, Museum2FTextPointers, Museum2FScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Museum2FObject ; objects
diff --git a/data/mapHeaders/namerater.asm b/data/mapHeaders/namerater.asm
new file mode 100755
index 00000000..f43493d4
--- /dev/null
+++ b/data/mapHeaders/namerater.asm
@@ -0,0 +1,6 @@
+NameRater_h: ; 0x1da06 to 0x1da12 (12 bytes) (bank=7) (id=229)
+ db HOUSE ; tileset
+ db NAME_RATERS_HOUSE_HEIGHT, NAME_RATERS_HOUSE_WIDTH ; dimensions (y, x)
+ dw NameRaterBlocks, NameRaterTextPointers, NameRaterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw NameRaterObject ; objects
diff --git a/data/mapHeaders/oakslab.asm b/data/mapHeaders/oakslab.asm
new file mode 100755
index 00000000..ab41ef4d
--- /dev/null
+++ b/data/mapHeaders/oakslab.asm
@@ -0,0 +1,6 @@
+OaksLab_h: ; 0x1cb02 to 0x1cb0e (12 bytes) (bank=7) (id=40)
+ db DOJO ; tileset
+ db OAKS_LAB_HEIGHT, OAKS_LAB_WIDTH ; dimensions (y, x)
+ dw OaksLabBlocks, OaksLabTextPointers, OaksLabScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw OaksLabObject ; objects
diff --git a/data/mapHeaders/pallettown.asm b/data/mapHeaders/pallettown.asm
new file mode 100755
index 00000000..248c49b4
--- /dev/null
+++ b/data/mapHeaders/pallettown.asm
@@ -0,0 +1,8 @@
+PalletTown_h: ; 182a1 (6:42a1)
+ db OVERWORLD ; tileset
+ db PALLET_TOWN_HEIGHT, PALLET_TOWN_WIDTH ; dimensions
+ dw PalletTownBlocks, PalletTownTextPointers, PalletTownScript
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, ROUTE_1_HEIGHT, 0, 0, ROUTE_1_WIDTH, Route1Blocks
+ SOUTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, 0, 0, ROUTE_21_WIDTH, Route21Blocks, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT
+ dw PalletTownObject
diff --git a/data/mapHeaders/pewtercity.asm b/data/mapHeaders/pewtercity.asm
new file mode 100755
index 00000000..b5e68adc
--- /dev/null
+++ b/data/mapHeaders/pewtercity.asm
@@ -0,0 +1,10 @@
+PewterCity_h: ; 0x18554 to 0x18576 (34 bytes) (bank=6) (id=2)
+ db OVERWORLD ; tileset
+ db PEWTER_CITY_HEIGHT, PEWTER_CITY_WIDTH ; dimensions (y, x)
+ dw PewterCityBlocks, PewterCityTextPointers, PewterCityScript ; blocks, texts, scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, 5, 0, ROUTE_2_WIDTH, Route2Blocks, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT
+ EAST_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, 4, 0, ROUTE_3_HEIGHT, Route3Blocks, PEWTER_CITY_WIDTH
+ dw PewterCityObject ; objects
+
+ db $0
diff --git a/data/mapHeaders/pewtergym.asm b/data/mapHeaders/pewtergym.asm
new file mode 100755
index 00000000..ac159b16
--- /dev/null
+++ b/data/mapHeaders/pewtergym.asm
@@ -0,0 +1,6 @@
+PewterGym_h: ; 0x5c37b to 0x5c387 (12 bytes) (id=54)
+ db GYM ; tileset
+ db PEWTER_GYM_HEIGHT, PEWTER_GYM_WIDTH ; dimensions (y, x)
+ dw PewterGymBlocks, PewterGymTextPointers, PewterGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw PewterGymObject ; objects
diff --git a/data/mapHeaders/pewterhouse1.asm b/data/mapHeaders/pewterhouse1.asm
new file mode 100755
index 00000000..b9d11d98
--- /dev/null
+++ b/data/mapHeaders/pewterhouse1.asm
@@ -0,0 +1,6 @@
+PewterHouse1_h: ; 0x1d5e7 to 0x1d5f3 (12 bytes) (bank=7) (id=55)
+ db HOUSE ; tileset
+ db PEWTER_HOUSE_1_HEIGHT, PEWTER_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw PewterHouse1Blocks, PewterHouse1TextPointers, PewterHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PewterHouse1Object ; objects
diff --git a/data/mapHeaders/pewterhouse2.asm b/data/mapHeaders/pewterhouse2.asm
new file mode 100755
index 00000000..abcb409b
--- /dev/null
+++ b/data/mapHeaders/pewterhouse2.asm
@@ -0,0 +1,6 @@
+PewterHouse2_h: ; 0x1d63c to 0x1d648 (12 bytes) (bank=7) (id=57)
+ db HOUSE ; tileset
+ db PEWTER_HOUSE_2_HEIGHT, PEWTER_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw PewterHouse2Blocks, PewterHouse2TextPointers, PewterHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PewterHouse2Object ; objects
diff --git a/data/mapHeaders/pewtermart.asm b/data/mapHeaders/pewtermart.asm
new file mode 100755
index 00000000..673dc1cf
--- /dev/null
+++ b/data/mapHeaders/pewtermart.asm
@@ -0,0 +1,6 @@
+PewterMart_h: ; 0x74ca1 to 0x74cad (12 bytes) (id=56)
+ db MART ; tileset
+ db PEWTER_MART_HEIGHT, PEWTER_MART_WIDTH ; dimensions (y, x)
+ dw PewterMartBlocks, PewterMartTextPointers, PewterMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw PewterMartObject ; objects
diff --git a/data/mapHeaders/pewterpokecenter.asm b/data/mapHeaders/pewterpokecenter.asm
new file mode 100755
index 00000000..4fd426c5
--- /dev/null
+++ b/data/mapHeaders/pewterpokecenter.asm
@@ -0,0 +1,6 @@
+PewterPokecenter_h: ; 0x5c57b to 0x5c587 (12 bytes) (id=58)
+ db POKECENTER ; tileset
+ db PEWTER_POKECENTER_HEIGHT, PEWTER_POKECENTER_WIDTH ; dimensions (y, x)
+ dw PewterPokecenterBlocks, PewterPokecenterTextPointers, PewterPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw PewterPokecenterObject ; objects
diff --git a/data/mapHeaders/pokemontower1.asm b/data/mapHeaders/pokemontower1.asm
new file mode 100755
index 00000000..d7c2849e
--- /dev/null
+++ b/data/mapHeaders/pokemontower1.asm
@@ -0,0 +1,6 @@
+PokemonTower1_h: ; 0x60420 to 0x6042c (12 bytes) (id=142)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_1_HEIGHT, POKEMONTOWER_1_WIDTH ; dimensions (y, x)
+ dw PokemonTower1Blocks, PokemonTower1TextPointers, PokemonTower1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower1Object ; objects
diff --git a/data/mapHeaders/pokemontower2.asm b/data/mapHeaders/pokemontower2.asm
new file mode 100755
index 00000000..30493d08
--- /dev/null
+++ b/data/mapHeaders/pokemontower2.asm
@@ -0,0 +1,6 @@
+PokemonTower2_h: ; 0x604e6 to 0x604f2 (12 bytes) (id=143)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_2_HEIGHT, POKEMONTOWER_2_WIDTH ; dimensions (y, x)
+ dw PokemonTower2Blocks, PokemonTower2TextPointers, PokemonTower2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower2Object ; objects
diff --git a/data/mapHeaders/pokemontower3.asm b/data/mapHeaders/pokemontower3.asm
new file mode 100755
index 00000000..bb3f2318
--- /dev/null
+++ b/data/mapHeaders/pokemontower3.asm
@@ -0,0 +1,6 @@
+PokemonTower3_h: ; 0x606c0 to 0x606cc (12 bytes) (id=144)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_3_HEIGHT, POKEMONTOWER_3_WIDTH ; dimensions (y, x)
+ dw PokemonTower3Blocks, PokemonTower3TextPointers, PokemonTower3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower3Object ; objects
diff --git a/data/mapHeaders/pokemontower4.asm b/data/mapHeaders/pokemontower4.asm
new file mode 100755
index 00000000..bf405a76
--- /dev/null
+++ b/data/mapHeaders/pokemontower4.asm
@@ -0,0 +1,6 @@
+PokemonTower4_h: ; 0x607ea to 0x607f6 (12 bytes) (id=145)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_4_HEIGHT, POKEMONTOWER_4_WIDTH ; dimensions (y, x)
+ dw PokemonTower4Blocks, PokemonTower4TextPointers, PokemonTower4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower4Object ; objects
diff --git a/data/mapHeaders/pokemontower5.asm b/data/mapHeaders/pokemontower5.asm
new file mode 100755
index 00000000..662c32d2
--- /dev/null
+++ b/data/mapHeaders/pokemontower5.asm
@@ -0,0 +1,6 @@
+PokemonTower5_h: ; 0x60926 to 0x60932 (12 bytes) (id=146)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_5_HEIGHT, POKEMONTOWER_5_WIDTH ; dimensions (y, x)
+ dw PokemonTower5Blocks, PokemonTower5TextPointers, PokemonTower5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower5Object ; objects
diff --git a/data/mapHeaders/pokemontower6.asm b/data/mapHeaders/pokemontower6.asm
new file mode 100755
index 00000000..a6d0ff9d
--- /dev/null
+++ b/data/mapHeaders/pokemontower6.asm
@@ -0,0 +1,6 @@
+PokemonTower6_h: ; 0x60ae3 to 0x60aef (12 bytes) (id=147)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_6_HEIGHT, POKEMONTOWER_6_WIDTH ; dimensions (y, x)
+ dw PokemonTower6Blocks, PokemonTower6TextPointers, PokemonTower6Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower6Object ; objects
diff --git a/data/mapHeaders/pokemontower7.asm b/data/mapHeaders/pokemontower7.asm
new file mode 100755
index 00000000..c366006b
--- /dev/null
+++ b/data/mapHeaders/pokemontower7.asm
@@ -0,0 +1,6 @@
+PokemonTower7_h: ; 0x60cf9 to 0x60d05 (12 bytes) (id=148)
+ db CEMETERY ; tileset
+ db POKEMONTOWER_7_HEIGHT, POKEMONTOWER_7_WIDTH ; dimensions (y, x)
+ dw PokemonTower7Blocks, PokemonTower7TextPointers, PokemonTower7Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw PokemonTower7Object ; objects
diff --git a/data/mapHeaders/powerplant.asm b/data/mapHeaders/powerplant.asm
new file mode 100755
index 00000000..36c07d3f
--- /dev/null
+++ b/data/mapHeaders/powerplant.asm
@@ -0,0 +1,6 @@
+PowerPlant_h: ; 0x1e2ba to 0x1e2c6 (12 bytes) (bank=7) (id=83)
+ db FACILITY ; tileset
+ db POWER_PLANT_HEIGHT, POWER_PLANT_WIDTH ; dimensions (y, x)
+ dw PowerPlantBlocks, PowerPlantTextPointers, PowerPlantScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw PowerPlantObject ; objects
diff --git a/data/mapHeaders/redshouse1f.asm b/data/mapHeaders/redshouse1f.asm
new file mode 100755
index 00000000..02dcc082
--- /dev/null
+++ b/data/mapHeaders/redshouse1f.asm
@@ -0,0 +1,6 @@
+RedsHouse1F_h: ; 4815c (12:415c)
+ db REDS_HOUSE_1 ; tileset
+ db REDS_HOUSE_1F_HEIGHT, REDS_HOUSE_1F_WIDTH ; dimensions
+ dw RedsHouse1FBlocks, RedsHouse1FTextPointers, RedsHouse1FScript
+ db 0 ; no connections
+ dw RedsHouse1FObject
diff --git a/data/mapHeaders/redshouse2f.asm b/data/mapHeaders/redshouse2f.asm
new file mode 100755
index 00000000..6b72d7db
--- /dev/null
+++ b/data/mapHeaders/redshouse2f.asm
@@ -0,0 +1,6 @@
+RedsHouse2F_h: ; 5c0a4 (17:40a4)
+ db REDS_HOUSE_2 ; tileset
+ db REDS_HOUSE_2F_HEIGHT, REDS_HOUSE_2F_WIDTH ; dimensions
+ dw RedsHouse2FBlocks, RedsHouse2FTextPointers, RedsHouse2FScript
+ db $00 ; no connections
+ dw RedsHouse2FObject
diff --git a/data/mapHeaders/rockethideout1.asm b/data/mapHeaders/rockethideout1.asm
new file mode 100755
index 00000000..9af33f1d
--- /dev/null
+++ b/data/mapHeaders/rockethideout1.asm
@@ -0,0 +1,6 @@
+RocketHideout1_h: ; 0x44bbe to 0x44bca (12 bytes) (bank=11) (id=199)
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_1_HEIGHT, ROCKET_HIDEOUT_1_WIDTH ; dimensions (y, x)
+ dw RocketHideout1Blocks, RocketHideout1TextPointers, RocketHideout1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw RocketHideout1Object ; objects
diff --git a/data/mapHeaders/rockethideout2.asm b/data/mapHeaders/rockethideout2.asm
new file mode 100755
index 00000000..b4629ccb
--- /dev/null
+++ b/data/mapHeaders/rockethideout2.asm
@@ -0,0 +1,6 @@
+RocketHideout2_h: ; 0x44e1b to 0x44e27 (12 bytes) (bank=11) (id=200)
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_2_HEIGHT, ROCKET_HIDEOUT_2_WIDTH ; dimensions (y, x)
+ dw RocketHideout2Blocks, RocketHideout2TextPointers, RocketHideout2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw RocketHideout2Object ; objects
diff --git a/data/mapHeaders/rockethideout3.asm b/data/mapHeaders/rockethideout3.asm
new file mode 100755
index 00000000..1ec94195
--- /dev/null
+++ b/data/mapHeaders/rockethideout3.asm
@@ -0,0 +1,6 @@
+RocketHideout3_h: ; 0x45219 to 0x45225 (12 bytes) (bank=11) (id=201)
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_3_HEIGHT, ROCKET_HIDEOUT_3_WIDTH ; dimensions (y, x)
+ dw RocketHideout3Blocks, RocketHideout3TextPointers, RocketHideout3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw RocketHideout3Object ; objects
diff --git a/data/mapHeaders/rockethideout4.asm b/data/mapHeaders/rockethideout4.asm
new file mode 100755
index 00000000..9ee9ec58
--- /dev/null
+++ b/data/mapHeaders/rockethideout4.asm
@@ -0,0 +1,6 @@
+RocketHideout4_h: ; 0x45451 to 0x4545d (12 bytes) (bank=11) (id=202)
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_4_HEIGHT, ROCKET_HIDEOUT_4_WIDTH ; dimensions (y, x)
+ dw RocketHideout4Blocks, RocketHideout4TextPointers, RocketHideout4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw RocketHideout4Object ; objects
diff --git a/data/mapHeaders/rockethideoutelevator.asm b/data/mapHeaders/rockethideoutelevator.asm
new file mode 100755
index 00000000..209c2ba8
--- /dev/null
+++ b/data/mapHeaders/rockethideoutelevator.asm
@@ -0,0 +1,6 @@
+RocketHideoutElevator_h: ; 0x45704 to 0x45710 (12 bytes) (bank=11) (id=203)
+ db LOBBY ; tileset
+ db ROCKET_HIDEOUT_ELEVATOR_HEIGHT, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; dimensions (y, x)
+ dw RocketHideoutElevatorBlocks, RocketHideoutElevatorTextPointers, RocketHideoutElevatorScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw RocketHideoutElevatorObject ; objects
diff --git a/data/mapHeaders/rocktunnel1.asm b/data/mapHeaders/rocktunnel1.asm
new file mode 100755
index 00000000..cc734b28
--- /dev/null
+++ b/data/mapHeaders/rocktunnel1.asm
@@ -0,0 +1,6 @@
+RockTunnel1_h: ; 0x444d0 to 0x444dc (12 bytes) (bank=11) (id=82)
+ db CAVERN ; tileset
+ db ROCK_TUNNEL_1_HEIGHT, ROCK_TUNNEL_1_WIDTH ; dimensions (y, x)
+ dw RockTunnel1Blocks, RockTunnel1TextPointers, RockTunnel1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw RockTunnel1Object ; objects
diff --git a/data/mapHeaders/rocktunnel2.asm b/data/mapHeaders/rocktunnel2.asm
new file mode 100755
index 00000000..ec43cddc
--- /dev/null
+++ b/data/mapHeaders/rocktunnel2.asm
@@ -0,0 +1,6 @@
+RockTunnel2_h: ; 0x45fdf to 0x45feb (12 bytes) (bank=11) (id=232)
+ db CAVERN ; tileset
+ db ROCK_TUNNEL_2_HEIGHT, ROCK_TUNNEL_2_WIDTH ; dimensions (y, x)
+ dw RockTunnel2Blocks, RockTunnel2TextPointers, RockTunnel2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw RockTunnel2Object ; objects
diff --git a/data/mapHeaders/rocktunnelpokecenter.asm b/data/mapHeaders/rocktunnelpokecenter.asm
new file mode 100755
index 00000000..390cc20e
--- /dev/null
+++ b/data/mapHeaders/rocktunnelpokecenter.asm
@@ -0,0 +1,6 @@
+RockTunnelPokecenter_h: ; 0x493ae to 0x493ba (12 bytes) (id=81)
+ db POKECENTER ; tileset
+ db ROCK_TUNNEL_POKECENTER_HEIGHT, ROCK_TUNNEL_POKECENTER_WIDTH ; dimensions (y, x)
+ dw RockTunnelPokecenterBlocks, RockTunnelPokecenterTextPointers, RockTunnelPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw RockTunnelPokecenterObject ; objects
diff --git a/data/mapHeaders/route1.asm b/data/mapHeaders/route1.asm
new file mode 100755
index 00000000..cd849504
--- /dev/null
+++ b/data/mapHeaders/route1.asm
@@ -0,0 +1,8 @@
+Route1_h: ; 0x1c0c3 to 0x1c0e5 (34 bytes) (bank=7) (id=12)
+ db OVERWORLD ; tileset
+ db ROUTE_1_HEIGHT, ROUTE_1_WIDTH ; dimensions (y, x)
+ dw Route1Blocks, Route1TextPointers, Route1Script ; blocks, texts, scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks
+ SOUTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks, ROUTE_1_WIDTH, ROUTE_1_HEIGHT
+ dw Route1Object ; objects
diff --git a/data/mapHeaders/route10.asm b/data/mapHeaders/route10.asm
new file mode 100755
index 00000000..9d41ff76
--- /dev/null
+++ b/data/mapHeaders/route10.asm
@@ -0,0 +1,8 @@
+Route10_h: ; 0x582d4 to 0x582f6 (34 bytes) (id=21)
+ db OVERWORLD ; tileset
+ db ROUTE_10_HEIGHT, ROUTE_10_WIDTH ; dimensions (y, x)
+ dw Route10Blocks, Route10TextPointers, Route10Script ; blocks, texts, scripts
+ db SOUTH | WEST ; connections
+ SOUTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks, ROUTE_10_WIDTH, ROUTE_10_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 0, 0, ROUTE_9_HEIGHT, Route9Blocks, ROUTE_10_WIDTH
+ dw Route10Object ; objects
diff --git a/data/mapHeaders/route11.asm b/data/mapHeaders/route11.asm
new file mode 100755
index 00000000..7ab3a478
--- /dev/null
+++ b/data/mapHeaders/route11.asm
@@ -0,0 +1,8 @@
+Route11_h: ; 0x584be to 0x584e0 (34 bytes) (id=22)
+ db OVERWORLD ; tileset
+ db ROUTE_11_HEIGHT, ROUTE_11_WIDTH ; dimensions (y, x)
+ dw Route11Blocks, Route11TextPointers, Route11Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 1, VERMILION_CITY_HEIGHT - 3, VermilionCityBlocks, ROUTE_11_WIDTH
+ EAST_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, -3, 24, ROUTE_12_HEIGHT - 39, Route12Blocks, ROUTE_11_WIDTH
+ dw Route11Object ; objects
diff --git a/data/mapHeaders/route11gate.asm b/data/mapHeaders/route11gate.asm
new file mode 100755
index 00000000..56b9381c
--- /dev/null
+++ b/data/mapHeaders/route11gate.asm
@@ -0,0 +1,6 @@
+Route11Gate_h: ; 0x49400 to 0x4940c (12 bytes) (id=84)
+ db GATE ; tileset
+ db ROUTE_11_GATE_1F_HEIGHT, ROUTE_11_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route11GateBlocks, Route11GateTextPointers, Route11GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route11GateObject ; objects
diff --git a/data/mapHeaders/route11gateupstairs.asm b/data/mapHeaders/route11gateupstairs.asm
new file mode 100755
index 00000000..3428de6a
--- /dev/null
+++ b/data/mapHeaders/route11gateupstairs.asm
@@ -0,0 +1,6 @@
+Route11GateUpstairs_h: ; 0x49448 to 0x49454 (12 bytes) (id=86)
+ db GATE ; tileset
+ db ROUTE_11_GATE_2F_HEIGHT, ROUTE_11_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route11GateUpstairsBlocks, Route11GateUpstairsTextPointers, Route11GateUpstairsScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route11GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route12.asm b/data/mapHeaders/route12.asm
new file mode 100755
index 00000000..44e9e731
--- /dev/null
+++ b/data/mapHeaders/route12.asm
@@ -0,0 +1,9 @@
+Route12_h: ; 0x5866d to 0x5869a (45 bytes) (id=23)
+ db OVERWORLD ; tileset
+ db ROUTE_12_HEIGHT, ROUTE_12_WIDTH ; dimensions (y, x)
+ dw Route12Blocks, Route12TextPointers, Route12Script ; blocks, texts, scripts
+ db NORTH | SOUTH | WEST ; connections
+ NORTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks
+ SOUTH_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, -3, 17, ROUTE_13_WIDTH - 17, Route13Blocks, ROUTE_12_WIDTH, ROUTE_12_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 27, 0, ROUTE_11_HEIGHT, Route11Blocks, ROUTE_12_WIDTH
+ dw Route12Object ; objects
diff --git a/data/mapHeaders/route12gate.asm b/data/mapHeaders/route12gate.asm
new file mode 100755
index 00000000..0afcf06b
--- /dev/null
+++ b/data/mapHeaders/route12gate.asm
@@ -0,0 +1,6 @@
+Route12Gate_h: ; 0x494f8 to 0x49504 (12 bytes) (id=87)
+ db GATE ; tileset
+ db ROUTE_12_GATE_1F_HEIGHT, ROUTE_12_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route12GateBlocks, Route12GateTextPointers, Route12GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route12GateObject ; objects
diff --git a/data/mapHeaders/route12gateupstairs.asm b/data/mapHeaders/route12gateupstairs.asm
new file mode 100755
index 00000000..acad7e9f
--- /dev/null
+++ b/data/mapHeaders/route12gateupstairs.asm
@@ -0,0 +1,6 @@
+Route12GateUpstairs_h: ; 0x49554 to 0x49560 (12 bytes) (id=195)
+ db GATE ; tileset
+ db ROUTE_12_GATE_2F_HEIGHT, ROUTE_12_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route12GateUpstairsBlocks, Route12GateUpstairsTextPointers, Route12GateUpstairsScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route12GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route12house.asm b/data/mapHeaders/route12house.asm
new file mode 100755
index 00000000..0116270c
--- /dev/null
+++ b/data/mapHeaders/route12house.asm
@@ -0,0 +1,6 @@
+Route12House_h: ; 0x56473 to 0x5647f (12 bytes) (id=189)
+ db HOUSE ; tileset
+ db ROUTE_12_HOUSE_HEIGHT, ROUTE_12_HOUSE_WIDTH ; dimensions (y, x)
+ dw Route12HouseBlocks, Route12HouseTextPointers, Route12HouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route12HouseObject ; objects
diff --git a/data/mapHeaders/route13.asm b/data/mapHeaders/route13.asm
new file mode 100755
index 00000000..7720e9b7
--- /dev/null
+++ b/data/mapHeaders/route13.asm
@@ -0,0 +1,8 @@
+Route13_h: ; 0x5480c to 0x5482e (34 bytes) (id=24)
+ db OVERWORLD ; tileset
+ db ROUTE_13_HEIGHT, ROUTE_13_WIDTH ; dimensions (y, x)
+ dw Route13Blocks, Route13TextPointers, Route13Script ; blocks, texts, scripts
+ db NORTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, ROUTE_12_HEIGHT, 20, 0, ROUTE_12_WIDTH, Route12Blocks
+ WEST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, 0, 0, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_13_WIDTH
+ dw Route13Object ; objects
diff --git a/data/mapHeaders/route14.asm b/data/mapHeaders/route14.asm
new file mode 100755
index 00000000..1ae75932
--- /dev/null
+++ b/data/mapHeaders/route14.asm
@@ -0,0 +1,8 @@
+Route14_h: ; 0x54999 to 0x549bb (34 bytes) (id=25)
+ db OVERWORLD ; tileset
+ db ROUTE_14_HEIGHT, ROUTE_14_WIDTH ; dimensions (y, x)
+ dw Route14Blocks, Route14TextPointers, Route14Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 18, 0, ROUTE_15_HEIGHT, Route15Blocks, ROUTE_14_WIDTH
+ EAST_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, 0, 0, ROUTE_13_HEIGHT, Route13Blocks, ROUTE_14_WIDTH
+ dw Route14Object ; objects
diff --git a/data/mapHeaders/route15.asm b/data/mapHeaders/route15.asm
new file mode 100755
index 00000000..579dada0
--- /dev/null
+++ b/data/mapHeaders/route15.asm
@@ -0,0 +1,8 @@
+Route15_h: ; 0x5892c to 0x5894e (34 bytes) (id=26)
+ db OVERWORLD ; tileset
+ db ROUTE_15_HEIGHT, ROUTE_15_WIDTH ; dimensions (y, x)
+ dw Route15Blocks, Route15TextPointers, Route15Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_15_WIDTH
+ EAST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, -3, 15, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_15_WIDTH
+ dw Route15Object ; objects
diff --git a/data/mapHeaders/route15gate.asm b/data/mapHeaders/route15gate.asm
new file mode 100755
index 00000000..55ee5cc9
--- /dev/null
+++ b/data/mapHeaders/route15gate.asm
@@ -0,0 +1,6 @@
+Route15Gate_h: ; 0x495f6 to 0x49602 (12 bytes) (id=184)
+ db GATE ; tileset
+ db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route15GateBlocks, Route15GateTextPointers, Route15GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route15GateObject ; objects
diff --git a/data/mapHeaders/route15gateupstairs.asm b/data/mapHeaders/route15gateupstairs.asm
new file mode 100755
index 00000000..0687ab28
--- /dev/null
+++ b/data/mapHeaders/route15gateupstairs.asm
@@ -0,0 +1,6 @@
+Route15GateUpstairs_h: ; 4963e (12:563e)
+ db GATE ; tileset
+ db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route15GateUpstairsBlocks, Route15GateUpstairsTextPointers, Route15GateUpstairsScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route15GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route16.asm b/data/mapHeaders/route16.asm
new file mode 100755
index 00000000..4f1d8325
--- /dev/null
+++ b/data/mapHeaders/route16.asm
@@ -0,0 +1,8 @@
+Route16_h: ; 0x58ada to 0x58afc (34 bytes) (id=27)
+ db OVERWORLD ; tileset
+ db ROUTE_16_HEIGHT, ROUTE_16_WIDTH ; dimensions (y, x)
+ dw Route16Blocks, Route16TextPointers, Route16Script ; blocks, texts, scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, 0, 0, ROUTE_17_WIDTH, Route17Blocks, ROUTE_16_WIDTH, ROUTE_16_HEIGHT
+ EAST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_16_WIDTH
+ dw Route16Object ; objects
diff --git a/data/mapHeaders/route16gate.asm b/data/mapHeaders/route16gate.asm
new file mode 100755
index 00000000..a155125e
--- /dev/null
+++ b/data/mapHeaders/route16gate.asm
@@ -0,0 +1,6 @@
+Route16Gate_h: ; 0x496b2 to 0x496be (12 bytes) (id=186)
+ db GATE ; tileset
+ db ROUTE_16_GATE_1F_HEIGHT, ROUTE_16_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route16GateBlocks, Route16GateTextPointers, Route16GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route16GateObject ; objects
diff --git a/data/mapHeaders/route16gateupstairs.asm b/data/mapHeaders/route16gateupstairs.asm
new file mode 100755
index 00000000..878c4eca
--- /dev/null
+++ b/data/mapHeaders/route16gateupstairs.asm
@@ -0,0 +1,6 @@
+Route16GateUpstairs_h: ; 0x497ff to 0x4980b (12 bytes) (id=187)
+ db GATE ; tileset
+ db ROUTE_16_GATE_2F_HEIGHT, ROUTE_16_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route16GateUpstairsBlocks, Route16GateUpstairsTextPointers, Route16GateUpstairsScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route16GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route16house.asm b/data/mapHeaders/route16house.asm
new file mode 100755
index 00000000..c3649b84
--- /dev/null
+++ b/data/mapHeaders/route16house.asm
@@ -0,0 +1,6 @@
+Route16House_h: ; 0x1e5ec to 0x1e5f8 (12 bytes) (bank=7) (id=188)
+ db HOUSE ; tileset
+ db ROUTE_16_HOUSE_HEIGHT, ROUTE_16_HOUSE_WIDTH ; dimensions (y, x)
+ dw Route16HouseBlocks, Route16HouseTextPointers, Route16HouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route16HouseObject ; objects
diff --git a/data/mapHeaders/route17.asm b/data/mapHeaders/route17.asm
new file mode 100755
index 00000000..4f7f2d33
--- /dev/null
+++ b/data/mapHeaders/route17.asm
@@ -0,0 +1,8 @@
+Route17_h: ; 0x54b20 to 0x54b42 (34 bytes) (id=28)
+ db OVERWORLD ; tileset
+ db ROUTE_17_HEIGHT, ROUTE_17_WIDTH ; dimensions (y, x)
+ dw Route17Blocks, Route17TextPointers, Route17Script ; blocks, texts, scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, ROUTE_16_HEIGHT, 0, 0, ROUTE_16_WIDTH - 7, Route16Blocks
+ SOUTH_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 0, 0, ROUTE_18_WIDTH - 12, Route18Blocks, ROUTE_17_WIDTH, ROUTE_17_HEIGHT
+ dw Route17Object ; objects
diff --git a/data/mapHeaders/route18.asm b/data/mapHeaders/route18.asm
new file mode 100755
index 00000000..d37ebcf9
--- /dev/null
+++ b/data/mapHeaders/route18.asm
@@ -0,0 +1,8 @@
+Route18_h: ; 0x58c38 to 0x58c5a (34 bytes) (id=29)
+ db OVERWORLD ; tileset
+ db ROUTE_18_HEIGHT, ROUTE_18_WIDTH ; dimensions (y, x)
+ dw Route18Blocks, Route18TextPointers, Route18Script ; blocks, texts, scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, ROUTE_17_HEIGHT, 0, 0, ROUTE_17_WIDTH, Route17Blocks
+ EAST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_18_WIDTH
+ dw Route18Object ; objects
diff --git a/data/mapHeaders/route18gate.asm b/data/mapHeaders/route18gate.asm
new file mode 100755
index 00000000..a0e463e8
--- /dev/null
+++ b/data/mapHeaders/route18gate.asm
@@ -0,0 +1,6 @@
+Route18Gate_h: ; 0x4986a to 0x49876 (12 bytes) (id=190)
+ db GATE ; tileset
+ db ROUTE_18_GATE_1F_HEIGHT, ROUTE_18_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route18GateBlocks, Route18GateTextPointers, Route18GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route18GateObject ; objects
diff --git a/data/mapHeaders/route18gateupstairs.asm b/data/mapHeaders/route18gateupstairs.asm
new file mode 100755
index 00000000..2043c2ef
--- /dev/null
+++ b/data/mapHeaders/route18gateupstairs.asm
@@ -0,0 +1,6 @@
+Route18GateUpstairs_h: ; 0x49969 to 0x49975 (12 bytes) (id=191)
+ db GATE ; tileset
+ db ROUTE_18_GATE_2F_HEIGHT, ROUTE_18_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route18GateUpstairsBlocks, Route18GateUpstairsTextPointers, Route18GateUpstairsScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route18GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route19.asm b/data/mapHeaders/route19.asm
new file mode 100755
index 00000000..f1185425
--- /dev/null
+++ b/data/mapHeaders/route19.asm
@@ -0,0 +1,8 @@
+Route19_h: ; 0x54e78 to 0x54e9a (34 bytes) (id=30)
+ db OVERWORLD ; tileset
+ db ROUTE_19_HEIGHT, ROUTE_19_WIDTH ; dimensions (y, x)
+ dw Route19Blocks, Route19TextPointers, Route19Script ; blocks, texts, scripts
+ db NORTH | WEST ; connections
+ NORTH_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT, -3, 2, FUCHSIA_CITY_WIDTH - 4, FuchsiaCityBlocks
+ WEST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 18, 0, ROUTE_20_HEIGHT, Route20Blocks, ROUTE_19_WIDTH
+ dw Route19Object ; objects
diff --git a/data/mapHeaders/route2.asm b/data/mapHeaders/route2.asm
new file mode 100755
index 00000000..28db1a1b
--- /dev/null
+++ b/data/mapHeaders/route2.asm
@@ -0,0 +1,8 @@
+Route2_h: ; 54000 (15:4000)
+ db 00 ; Tileset
+ db ROUTE_2_HEIGHT,ROUTE_2_WIDTH ;Height,Width blocks (1 block = 4x4 tiles)
+ dw Route2Blocks, Route2TextPointers, Route2Script
+ db NORTH | SOUTH ;Connection Byte
+ NORTH_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT, -3, 2, PEWTER_CITY_WIDTH - 4, PewterCityBlocks
+ SOUTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks, ROUTE_2_WIDTH, ROUTE_2_HEIGHT
+ dw Route2Object ;Object Data Pointer
diff --git a/data/mapHeaders/route20.asm b/data/mapHeaders/route20.asm
new file mode 100755
index 00000000..4f96906f
--- /dev/null
+++ b/data/mapHeaders/route20.asm
@@ -0,0 +1,8 @@
+Route20_h: ; 0x500f1 to 0x50113 (34 bytes) (id=31)
+ db OVERWORLD ; tileset
+ db ROUTE_20_HEIGHT, ROUTE_20_WIDTH ; dimensions (y, x)
+ dw Route20Blocks, Route20TextPointers, Route20Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_HEIGHT, CinnabarIslandBlocks, ROUTE_20_WIDTH
+ EAST_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, -3, 15, ROUTE_19_HEIGHT - 15, Route19Blocks, ROUTE_20_WIDTH
+ dw Route20Object ; objects
diff --git a/data/mapHeaders/route21.asm b/data/mapHeaders/route21.asm
new file mode 100755
index 00000000..f3160814
--- /dev/null
+++ b/data/mapHeaders/route21.asm
@@ -0,0 +1,8 @@
+Route21_h: ; 0x54fff to 0x55021 (34 bytes) (id=32)
+ db OVERWORLD ; tileset
+ db ROUTE_21_HEIGHT, ROUTE_21_WIDTH ; dimensions (y, x)
+ dw Route21Blocks, Route21TextPointers, Route21Script ; blocks, texts, scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks
+ SOUTH_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_WIDTH, CinnabarIslandBlocks, ROUTE_21_WIDTH, ROUTE_21_HEIGHT
+ dw Route21Object ; objects
diff --git a/data/mapHeaders/route22.asm b/data/mapHeaders/route22.asm
new file mode 100755
index 00000000..566a5cbe
--- /dev/null
+++ b/data/mapHeaders/route22.asm
@@ -0,0 +1,8 @@
+Route22_h: ; 0x50000 to 0x50022 (34 bytes) (id=33)
+ db OVERWORLD ; tileset
+ db ROUTE_22_HEIGHT, ROUTE_22_WIDTH ; dimensions (y, x)
+ dw Route22Blocks, Route22TextPointers, Route22Script ; blocks, texts, scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, ROUTE_23_HEIGHT, 0, 0, ROUTE_23_WIDTH, Route23Blocks
+ EAST_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 1, VIRIDIAN_CITY_HEIGHT - 3, ViridianCityBlocks, ROUTE_22_WIDTH
+ dw Route22Object ; objects
diff --git a/data/mapHeaders/route22gate.asm b/data/mapHeaders/route22gate.asm
new file mode 100755
index 00000000..3daa30a3
--- /dev/null
+++ b/data/mapHeaders/route22gate.asm
@@ -0,0 +1,6 @@
+Route22Gate_h: ; 0x1e677 to 0x1e683 (12 bytes) (bank=7) (id=193)
+ db GATE ; tileset
+ db ROUTE_22_GATE_HEIGHT, ROUTE_22_GATE_WIDTH ; dimensions (y, x)
+ dw Route22GateBlocks, Route22GateTextPointers, Route22GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route22GateObject ; objects
diff --git a/data/mapHeaders/route23.asm b/data/mapHeaders/route23.asm
new file mode 100755
index 00000000..2e469096
--- /dev/null
+++ b/data/mapHeaders/route23.asm
@@ -0,0 +1,8 @@
+Route23_h: ; 0x5033f to 0x50361 (34 bytes) (id=34)
+ db PLATEAU ; tileset
+ db ROUTE_23_HEIGHT, ROUTE_23_WIDTH ; dimensions (y, x)
+ dw Route23Blocks, Route23TextPointers, Route23Script ; blocks, texts, scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION INDIGO_PLATEAU, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT, 0, 0, INDIGO_PLATEAU_WIDTH, IndigoPlateauBlocks
+ SOUTH_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 0, 0, ROUTE_22_WIDTH - 7, Route22Blocks, ROUTE_23_WIDTH, ROUTE_23_HEIGHT
+ dw Route23Object ; objects
diff --git a/data/mapHeaders/route24.asm b/data/mapHeaders/route24.asm
new file mode 100755
index 00000000..3194be91
--- /dev/null
+++ b/data/mapHeaders/route24.asm
@@ -0,0 +1,8 @@
+Route24_h: ; 0x50682 to 0x506a4 (34 bytes) (id=35)
+ db OVERWORLD ; tileset
+ db ROUTE_24_HEIGHT, ROUTE_24_WIDTH ; dimensions (y, x)
+ dw Route24Blocks, Route24TextPointers, Route24Script ; blocks, texts, scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks, ROUTE_24_WIDTH, ROUTE_24_HEIGHT
+ EAST_MAP_CONNECTION ROUTE_25, ROUTE_25_WIDTH, 0, 0, ROUTE_25_HEIGHT, Route25Blocks, ROUTE_24_WIDTH
+ dw Route24Object ; objects
diff --git a/data/mapHeaders/route25.asm b/data/mapHeaders/route25.asm
new file mode 100755
index 00000000..2e86f6d5
--- /dev/null
+++ b/data/mapHeaders/route25.asm
@@ -0,0 +1,7 @@
+Route25_h: ; 0x5079b to 0x507b2 (23 bytes) (id=36)
+ db OVERWORLD ; tileset
+ db ROUTE_25_HEIGHT, ROUTE_25_WIDTH ; dimensions (y, x)
+ dw Route25Blocks, Route25TextPointers, Route25Script ; blocks, texts, scripts
+ db WEST ; connections
+ WEST_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, 0, 0, ROUTE_24_HEIGHT - 6, Route24Blocks, ROUTE_25_WIDTH
+ dw Route25Object ; objects
diff --git a/data/mapHeaders/route2gate.asm b/data/mapHeaders/route2gate.asm
new file mode 100755
index 00000000..343c0f09
--- /dev/null
+++ b/data/mapHeaders/route2gate.asm
@@ -0,0 +1,6 @@
+Route2Gate_h: ; 0x5d5c8 to 0x5d5d4 (12 bytes) (id=49)
+ db GATE ; tileset
+ db ROUTE_2_GATE_HEIGHT, ROUTE_2_GATE_WIDTH ; dimensions (y, x)
+ dw Route2GateBlocks, Route2GateTextPointers, Route2GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route2GateObject ; objects
diff --git a/data/mapHeaders/route2house.asm b/data/mapHeaders/route2house.asm
new file mode 100755
index 00000000..f99a365d
--- /dev/null
+++ b/data/mapHeaders/route2house.asm
@@ -0,0 +1,6 @@
+Route2House_h: ; 0x1dee1 to 0x1deed (12 bytes) (bank=7) (id=48)
+ db HOUSE ; tileset
+ db ROUTE_2_HOUSE_HEIGHT, ROUTE_2_HOUSE_WIDTH ; dimensions (y, x)
+ dw Route2HouseBlocks, Route2HouseTextPointers, Route2HouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route2HouseObject ; objects
diff --git a/data/mapHeaders/route3.asm b/data/mapHeaders/route3.asm
new file mode 100755
index 00000000..942e9e54
--- /dev/null
+++ b/data/mapHeaders/route3.asm
@@ -0,0 +1,8 @@
+Route3_h: ; 0x541e6 to 0x54208 (34 bytes) (id=14)
+ db OVERWORLD ; tileset
+ db ROUTE_3_HEIGHT, ROUTE_3_WIDTH ; dimensions (y, x)
+ dw Route3Blocks, Route3TextPointers, Route3Script ; blocks, texts, scripts
+ db NORTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, ROUTE_4_HEIGHT, 25, 0, ROUTE_4_WIDTH - 32, Route4Blocks
+ WEST_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, -3, 1, PEWTER_CITY_HEIGHT - 3, PewterCityBlocks, ROUTE_3_WIDTH
+ dw Route3Object ; objects
diff --git a/data/mapHeaders/route4.asm b/data/mapHeaders/route4.asm
new file mode 100755
index 00000000..c2fe6379
--- /dev/null
+++ b/data/mapHeaders/route4.asm
@@ -0,0 +1,8 @@
+Route4_h: ; 0x54390 to 0x543b2 (34 bytes) (id=15)
+ db OVERWORLD ; tileset
+ db ROUTE_4_HEIGHT, ROUTE_4_WIDTH ; dimensions (y, x)
+ dw Route4Blocks, Route4TextPointers, Route4Script; blocks, texts, scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, -3, 22, ROUTE_3_WIDTH - 22, Route3Blocks, ROUTE_4_WIDTH, ROUTE_4_HEIGHT
+ EAST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_4_WIDTH
+ dw Route4Object ; objects
diff --git a/data/mapHeaders/route5.asm b/data/mapHeaders/route5.asm
new file mode 100755
index 00000000..148eeb8d
--- /dev/null
+++ b/data/mapHeaders/route5.asm
@@ -0,0 +1,8 @@
+Route5_h: ; 0x54581 to 0x545a3 (34 bytes) (id=16)
+ db OVERWORLD ; tileset
+ db ROUTE_5_HEIGHT, ROUTE_5_WIDTH ; dimensions (y, x)
+ dw Route5Blocks, Route5TextPointers, Route5Script ; blocks, texts, scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks
+ SOUTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks, ROUTE_5_WIDTH, ROUTE_5_HEIGHT
+ dw Route5Object ; objects
diff --git a/data/mapHeaders/route5gate.asm b/data/mapHeaders/route5gate.asm
new file mode 100755
index 00000000..79a44874
--- /dev/null
+++ b/data/mapHeaders/route5gate.asm
@@ -0,0 +1,6 @@
+Route5Gate_h: ; 0x1df27 to 0x1df33 (12 bytes) (bank=7) (id=70)
+ db GATE ; tileset
+ db ROUTE_5_GATE_HEIGHT, ROUTE_5_GATE_WIDTH ; dimensions (y, x)
+ dw Route5GateBlocks, Route5GateTextPointers, Route5GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route5GateObject ; objects
diff --git a/data/mapHeaders/route6.asm b/data/mapHeaders/route6.asm
new file mode 100755
index 00000000..b6f5fe70
--- /dev/null
+++ b/data/mapHeaders/route6.asm
@@ -0,0 +1,8 @@
+Route6_h: ; 0x58000 to 0x58022 (34 bytes) (id=17)
+ db OVERWORLD ; tileset
+ db ROUTE_6_HEIGHT, ROUTE_6_WIDTH ; dimensions (y, x)
+ dw Route6Blocks, Route6TextPointers, Route6Script ; blocks, texts, scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks
+ SOUTH_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 2, VERMILION_CITY_WIDTH - 4, VermilionCityBlocks, ROUTE_6_WIDTH, ROUTE_6_HEIGHT
+ dw Route6Object ; objects
diff --git a/data/mapHeaders/route6gate.asm b/data/mapHeaders/route6gate.asm
new file mode 100755
index 00000000..3bafb448
--- /dev/null
+++ b/data/mapHeaders/route6gate.asm
@@ -0,0 +1,6 @@
+Route6Gate_h: ; 0x1e031 to 0x1e03d (12 bytes) (bank=7) (id=73)
+ db GATE ; tileset
+ db ROUTE_6_GATE_HEIGHT, ROUTE_6_GATE_WIDTH ; dimensions (y, x)
+ dw Route6GateBlocks, Route6GateTextPointers, Route6GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route6GateObject ; objects
diff --git a/data/mapHeaders/route7.asm b/data/mapHeaders/route7.asm
new file mode 100755
index 00000000..b90004e6
--- /dev/null
+++ b/data/mapHeaders/route7.asm
@@ -0,0 +1,8 @@
+Route7_h: ; 0x48000 to 0x48022 (34 bytes) (bank=12) (id=18)
+ db OVERWORLD ; tileset
+ db ROUTE_7_HEIGHT, ROUTE_7_WIDTH ; dimensions (y, x)
+ dw Route7Blocks, Route7TextPointers, Route7Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_7_WIDTH
+ EAST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_7_WIDTH
+ dw Route7Object ; objects
diff --git a/data/mapHeaders/route7gate.asm b/data/mapHeaders/route7gate.asm
new file mode 100755
index 00000000..b5d26672
--- /dev/null
+++ b/data/mapHeaders/route7gate.asm
@@ -0,0 +1,6 @@
+Route7Gate_h: ; 0x1e0f4 to 0x1e100 (12 bytes) (bank=7) (id=76)
+ db GATE ; tileset
+ db ROUTE_7_GATE_HEIGHT, ROUTE_7_GATE_WIDTH ; dimensions (y, x)
+ dw Route7GateBlocks, Route7GateTextPointers, Route7GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route7GateObject ; objects
diff --git a/data/mapHeaders/route8.asm b/data/mapHeaders/route8.asm
new file mode 100755
index 00000000..dd9a717b
--- /dev/null
+++ b/data/mapHeaders/route8.asm
@@ -0,0 +1,8 @@
+Route8_h: ; 0x5812d to 0x5814f (34 bytes) (id=19)
+ db OVERWORLD ; tileset
+ db ROUTE_8_HEIGHT, ROUTE_8_WIDTH ; dimensions (y, x)
+ dw Route8Blocks, Route8TextPointers, Route8Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_8_WIDTH
+ EAST_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_HEIGHT, LavenderTownBlocks, ROUTE_8_WIDTH
+ dw Route8Object ; objects
diff --git a/data/mapHeaders/route8gate.asm b/data/mapHeaders/route8gate.asm
new file mode 100755
index 00000000..2bd505a2
--- /dev/null
+++ b/data/mapHeaders/route8gate.asm
@@ -0,0 +1,6 @@
+Route8Gate_h: ; 0x1e1bb to 0x1e1c7 (12 bytes) (bank=7) (id=79)
+ db GATE ; tileset
+ db ROUTE_8_GATE_HEIGHT, ROUTE_8_GATE_WIDTH ; dimensions (y, x)
+ dw Route8GateBlocks, Route8GateTextPointers, Route8GateScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw Route8GateObject ; objects
diff --git a/data/mapHeaders/route9.asm b/data/mapHeaders/route9.asm
new file mode 100755
index 00000000..f6cbd9af
--- /dev/null
+++ b/data/mapHeaders/route9.asm
@@ -0,0 +1,8 @@
+Route9_h: ; 0x54686 to 0x546a8 (34 bytes) (id=20)
+ db OVERWORLD ; tileset
+ db ROUTE_9_HEIGHT, ROUTE_9_WIDTH ; dimensions (y, x)
+ dw Route9Blocks, Route9TextPointers, Route9Script ; blocks, texts, scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_9_WIDTH
+ EAST_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, 0, 0, ROUTE_10_HEIGHT - 24, Route10Blocks, ROUTE_9_WIDTH
+ dw Route9Object ; objects
diff --git a/data/mapHeaders/safarizonecenter.asm b/data/mapHeaders/safarizonecenter.asm
new file mode 100755
index 00000000..a1388fa1
--- /dev/null
+++ b/data/mapHeaders/safarizonecenter.asm
@@ -0,0 +1,6 @@
+SafariZoneCenter_h: ; 0x45ba6 to 0x45bb2 (12 bytes) (bank=11) (id=220)
+ db FOREST ; tileset
+ db SAFARI_ZONE_CENTER_HEIGHT, SAFARI_ZONE_CENTER_WIDTH ; dimensions (y, x)
+ dw SafariZoneCenterBlocks, SafariZoneCenterTextPointers, SafariZoneCenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneCenterObject ; objects
diff --git a/data/mapHeaders/safarizoneeast.asm b/data/mapHeaders/safarizoneeast.asm
new file mode 100755
index 00000000..dec95d2a
--- /dev/null
+++ b/data/mapHeaders/safarizoneeast.asm
@@ -0,0 +1,6 @@
+SafariZoneEast_h: ; 0x4585f to 0x4586b (12 bytes) (bank=11) (id=217)
+ db FOREST ; tileset
+ db SAFARI_ZONE_EAST_HEIGHT, SAFARI_ZONE_EAST_WIDTH ; dimensions (y, x)
+ dw SafariZoneEastBlocks, SafariZoneEastTextPointers, SafariZoneEastScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneEastObject ; objects
diff --git a/data/mapHeaders/safarizoneentrance.asm b/data/mapHeaders/safarizoneentrance.asm
new file mode 100755
index 00000000..e7340c4a
--- /dev/null
+++ b/data/mapHeaders/safarizoneentrance.asm
@@ -0,0 +1,6 @@
+SafariZoneEntrance_h: ; 0x751c1 to 0x751cd (12 bytes) (id=156)
+ db GATE ; tileset
+ db SAFARI_ZONE_ENTRANCE_HEIGHT, SAFARI_ZONE_ENTRANCE_WIDTH ; dimensions (y, x)
+ dw SafariZoneEntranceBlocks, SafariZoneEntranceTextPointers, SafariZoneEntranceScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneEntranceObject ; objects
diff --git a/data/mapHeaders/safarizonenorth.asm b/data/mapHeaders/safarizonenorth.asm
new file mode 100755
index 00000000..310ead4c
--- /dev/null
+++ b/data/mapHeaders/safarizonenorth.asm
@@ -0,0 +1,6 @@
+SafariZoneNorth_h: ; 0x4599f to 0x459ab (12 bytes) (bank=11) (id=218)
+ db FOREST ; tileset
+ db SAFARI_ZONE_NORTH_HEIGHT, SAFARI_ZONE_NORTH_WIDTH ; dimensions (y, x)
+ dw SafariZoneNorthBlocks, SafariZoneNorthTextPointers, SafariZoneNorthScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneNorthObject ; objects
diff --git a/data/mapHeaders/safarizoneresthouse1.asm b/data/mapHeaders/safarizoneresthouse1.asm
new file mode 100755
index 00000000..f788b6c4
--- /dev/null
+++ b/data/mapHeaders/safarizoneresthouse1.asm
@@ -0,0 +1,6 @@
+SafariZoneRestHouse1_h: ; 0x45ce1 to 0x45ced (12 bytes) (bank=11) (id=221)
+ db GATE ; tileset
+ db SAFARI_ZONE_REST_HOUSE_1_HEIGHT, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw SafariZoneRestHouse1Blocks, SafariZoneRestHouse1TextPointers, SafariZoneRestHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneRestHouse1Object ; objects
diff --git a/data/mapHeaders/safarizoneresthouse2.asm b/data/mapHeaders/safarizoneresthouse2.asm
new file mode 100755
index 00000000..5ccdb947
--- /dev/null
+++ b/data/mapHeaders/safarizoneresthouse2.asm
@@ -0,0 +1,6 @@
+SafariZoneRestHouse2_h: ; 0x45d1e to 0x45d2a (12 bytes) (bank=11) (id=223)
+ db GATE ; tileset
+ db SAFARI_ZONE_REST_HOUSE_2_HEIGHT, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw SafariZoneRestHouse2Blocks, SafariZoneRestHouse2TextPointers, SafariZoneRestHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneRestHouse2Object ; objects
diff --git a/data/mapHeaders/safarizoneresthouse3.asm b/data/mapHeaders/safarizoneresthouse3.asm
new file mode 100755
index 00000000..acf87854
--- /dev/null
+++ b/data/mapHeaders/safarizoneresthouse3.asm
@@ -0,0 +1,6 @@
+SafariZoneRestHouse3_h: ; 0x45d69 to 0x45d75 (12 bytes) (bank=11) (id=224)
+ db GATE ; tileset
+ db SAFARI_ZONE_REST_HOUSE_3_HEIGHT, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; dimensions (y, x)
+ dw SafariZoneRestHouse3Blocks, SafariZoneRestHouse3TextPointers, SafariZoneRestHouse3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneRestHouse3Object ; objects
diff --git a/data/mapHeaders/safarizoneresthouse4.asm b/data/mapHeaders/safarizoneresthouse4.asm
new file mode 100755
index 00000000..8a1ad30f
--- /dev/null
+++ b/data/mapHeaders/safarizoneresthouse4.asm
@@ -0,0 +1,6 @@
+SafariZoneRestHouse4_h: ; 0x45db4 to 0x45dc0 (12 bytes) (bank=11) (id=225)
+ db GATE ; tileset
+ db SAFARI_ZONE_REST_HOUSE_4_HEIGHT, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; dimensions (y, x)
+ dw SafariZoneRestHouse4Blocks, SafariZoneRestHouse4TextPointers, SafariZoneRestHouse4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneRestHouse4Object ; objects
diff --git a/data/mapHeaders/safarizonesecrethouse.asm b/data/mapHeaders/safarizonesecrethouse.asm
new file mode 100755
index 00000000..7fa71fe4
--- /dev/null
+++ b/data/mapHeaders/safarizonesecrethouse.asm
@@ -0,0 +1,6 @@
+SafariZoneSecretHouse_h: ; 0x4a30b to 0x4a317 (12 bytes) (id=222)
+ db LAB ; tileset
+ db SAFARI_ZONE_SECRET_HOUSE_HEIGHT, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; dimensions (y, x)
+ dw SafariZoneSecretHouseBlocks, SafariZoneSecretHouseTextPointers, SafariZoneSecretHouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneSecretHouseObject ; objects
diff --git a/data/mapHeaders/safarizonewest.asm b/data/mapHeaders/safarizonewest.asm
new file mode 100755
index 00000000..590ae21d
--- /dev/null
+++ b/data/mapHeaders/safarizonewest.asm
@@ -0,0 +1,6 @@
+SafariZoneWest_h: ; 0x4a1a9 to 0x4a1b5 (12 bytes) (id=219)
+ db FOREST ; tileset
+ db SAFARI_ZONE_WEST_HEIGHT, SAFARI_ZONE_WEST_WIDTH ; dimensions (y, x)
+ dw SafariZoneWestBlocks, SafariZoneWestTextPointers, SafariZoneWestScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SafariZoneWestObject ; objects
diff --git a/data/mapHeaders/saffroncity.asm b/data/mapHeaders/saffroncity.asm
new file mode 100755
index 00000000..4c1d2d61
--- /dev/null
+++ b/data/mapHeaders/saffroncity.asm
@@ -0,0 +1,10 @@
+SaffronCity_h: ; 0x509a4 to 0x509dc (56 bytes) (id=10)
+ db OVERWORLD ; tileset
+ db SAFFRON_CITY_HEIGHT, SAFFRON_CITY_WIDTH ; dimensions (y, x)
+ dw SaffronCityBlocks, SaffronCityTextPointers, SaffronCityScript ; blocks, texts, scripts
+ db NORTH | SOUTH | WEST | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, ROUTE_5_HEIGHT, 5, 0, ROUTE_5_WIDTH, Route5Blocks
+ SOUTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, 5, 0, ROUTE_6_WIDTH, Route6Blocks, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, SAFFRON_CITY_WIDTH
+ EAST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 4, 0, ROUTE_8_HEIGHT, Route8Blocks, SAFFRON_CITY_WIDTH
+ dw SaffronCityObject ; objects
diff --git a/data/mapHeaders/saffrongym.asm b/data/mapHeaders/saffrongym.asm
new file mode 100755
index 00000000..23601c75
--- /dev/null
+++ b/data/mapHeaders/saffrongym.asm
@@ -0,0 +1,6 @@
+SaffronGym_h: ; 0x5d001 to 0x5d00d (12 bytes) (id=178)
+ db FACILITY ; tileset
+ db SAFFRON_GYM_HEIGHT, SAFFRON_GYM_WIDTH ; dimensions (y, x)
+ dw SaffronGymBlocks, SaffronGymTextPointers, SaffronGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SaffronGymObject ; objects
diff --git a/data/mapHeaders/saffronhouse1.asm b/data/mapHeaders/saffronhouse1.asm
new file mode 100755
index 00000000..71cd5395
--- /dev/null
+++ b/data/mapHeaders/saffronhouse1.asm
@@ -0,0 +1,6 @@
+SaffronHouse1_h: ; 0x1ddd1 to 0x1dddd (12 bytes) (bank=7) (id=179)
+ db HOUSE ; tileset
+ db SAFFRON_HOUSE_1_HEIGHT, SAFFRON_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw SaffronHouse1Blocks, SaffronHouse1TextPointers, SaffronHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SaffronHouse1Object ; objects
diff --git a/data/mapHeaders/saffronhouse2.asm b/data/mapHeaders/saffronhouse2.asm
new file mode 100755
index 00000000..a91bcaec
--- /dev/null
+++ b/data/mapHeaders/saffronhouse2.asm
@@ -0,0 +1,6 @@
+SaffronHouse2_h: ; 0x1de30 to 0x1de3c (12 bytes) (bank=7) (id=183)
+ db HOUSE ; tileset
+ db SAFFRON_HOUSE_2_HEIGHT, SAFFRON_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw SaffronHouse2Blocks, SaffronHouse2TextPointers, SaffronHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SaffronHouse2Object ; objects
diff --git a/data/mapHeaders/saffronmart.asm b/data/mapHeaders/saffronmart.asm
new file mode 100755
index 00000000..0c6fc1d8
--- /dev/null
+++ b/data/mapHeaders/saffronmart.asm
@@ -0,0 +1,6 @@
+SaffronMart_h: ; 0x5d3fd to 0x5d409 (12 bytes) (id=180)
+ db MART ; tileset
+ db SAFFRON_MART_HEIGHT, SAFFRON_MART_WIDTH ; dimensions (y, x)
+ dw SaffronMartBlocks, SaffronMartTextPointers, SaffronMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SaffronMartObject ; objects
diff --git a/data/mapHeaders/saffronpokecenter.asm b/data/mapHeaders/saffronpokecenter.asm
new file mode 100755
index 00000000..341b415a
--- /dev/null
+++ b/data/mapHeaders/saffronpokecenter.asm
@@ -0,0 +1,6 @@
+SaffronPokecenter_h: ; 0x5d529 to 0x5d535 (12 bytes) (id=182)
+ db POKECENTER ; tileset
+ db SAFFRON_POKECENTER_HEIGHT, SAFFRON_POKECENTER_WIDTH ; dimensions (y, x)
+ dw SaffronPokecenterBlocks, SaffronPokecenterTextPointers, SaffronPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SaffronPokecenterObject ; objects
diff --git a/data/mapHeaders/school.asm b/data/mapHeaders/school.asm
new file mode 100755
index 00000000..336ce26e
--- /dev/null
+++ b/data/mapHeaders/school.asm
@@ -0,0 +1,6 @@
+School_h: ; 0x1d540 to 0x1d54c (12 bytes) (bank=7) (id=43)
+ db HOUSE ; tileset
+ db VIRIDIAN_SCHOOL_HEIGHT, VIRIDIAN_SCHOOL_WIDTH ; dimensions (y, x)
+ dw SchoolBlocks, SchoolTextPointers, SchoolScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SchoolObject ; objects
diff --git a/data/mapHeaders/seafoamislands1.asm b/data/mapHeaders/seafoamislands1.asm
new file mode 100755
index 00000000..8cb1c847
--- /dev/null
+++ b/data/mapHeaders/seafoamislands1.asm
@@ -0,0 +1,6 @@
+SeafoamIslands1_h: ; 0x447dd to 0x447e9 (12 bytes) (bank=11) (id=192)
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_1_HEIGHT, SEAFOAM_ISLANDS_1_WIDTH ; dimensions (y, x)
+ dw SeafoamIslands1Blocks, SeafoamIslands1TextPointers, SeafoamIslands1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SeafoamIslands1Object ; objects
diff --git a/data/mapHeaders/seafoamislands2.asm b/data/mapHeaders/seafoamislands2.asm
new file mode 100755
index 00000000..9edbcc72
--- /dev/null
+++ b/data/mapHeaders/seafoamislands2.asm
@@ -0,0 +1,6 @@
+SeafoamIslands2_h: ; 0x46309 to 0x46315 (12 bytes) (bank=11) (id=159)
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_2_HEIGHT, SEAFOAM_ISLANDS_2_WIDTH ; dimensions (y, x)
+ dw SeafoamIslands2Blocks, SeafoamIslands2TextPointers, SeafoamIslands2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SeafoamIslands2Object ; objects
diff --git a/data/mapHeaders/seafoamislands3.asm b/data/mapHeaders/seafoamislands3.asm
new file mode 100755
index 00000000..6ff1d8ff
--- /dev/null
+++ b/data/mapHeaders/seafoamislands3.asm
@@ -0,0 +1,6 @@
+SeafoamIslands3_h: ; 0x46445 to 0x46451 (12 bytes) (bank=11) (id=160)
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_3_HEIGHT, SEAFOAM_ISLANDS_3_WIDTH ; dimensions (y, x)
+ dw SeafoamIslands3Blocks, SeafoamIslands3TextPointers, SeafoamIslands3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SeafoamIslands3Object ; objects
diff --git a/data/mapHeaders/seafoamislands4.asm b/data/mapHeaders/seafoamislands4.asm
new file mode 100755
index 00000000..d3b6fca0
--- /dev/null
+++ b/data/mapHeaders/seafoamislands4.asm
@@ -0,0 +1,6 @@
+SeafoamIslands4_h: ; 0x46581 to 0x4658d (12 bytes) (bank=11) (id=161)
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_4_HEIGHT, SEAFOAM_ISLANDS_4_WIDTH ; dimensions (y, x)
+ dw SeafoamIslands4Blocks, SeafoamIslands4TextPointers, SeafoamIslands4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SeafoamIslands4Object ; objects
diff --git a/data/mapHeaders/seafoamislands5.asm b/data/mapHeaders/seafoamislands5.asm
new file mode 100755
index 00000000..330b1d0e
--- /dev/null
+++ b/data/mapHeaders/seafoamislands5.asm
@@ -0,0 +1,6 @@
+SeafoamIslands5_h: ; 0x4678d to 0x46799 (12 bytes) (bank=11) (id=162)
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_5_HEIGHT, SEAFOAM_ISLANDS_5_WIDTH ; dimensions (y, x)
+ dw SeafoamIslands5Blocks, SeafoamIslands5TextPointers, SeafoamIslands5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SeafoamIslands5Object ; objects
diff --git a/data/mapHeaders/silphco1.asm b/data/mapHeaders/silphco1.asm
new file mode 100755
index 00000000..eecb49b6
--- /dev/null
+++ b/data/mapHeaders/silphco1.asm
@@ -0,0 +1,6 @@
+SilphCo1_h: ; 0x5d442 to 0x5d44e (12 bytes) (id=181)
+ db FACILITY ; tileset
+ db SILPH_CO_1F_HEIGHT, SILPH_CO_1F_WIDTH ; dimensions (y, x)
+ dw SilphCo1Blocks, SilphCo1TextPointers, SilphCo1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo1Object ; objects
diff --git a/data/mapHeaders/silphco10.asm b/data/mapHeaders/silphco10.asm
new file mode 100755
index 00000000..efef2235
--- /dev/null
+++ b/data/mapHeaders/silphco10.asm
@@ -0,0 +1,6 @@
+SilphCo10_h: ; 0x5a12d to 0x5a139 (12 bytes) (id=234)
+ db FACILITY ; tileset
+ db SILPH_CO_10F_HEIGHT, SILPH_CO_10F_WIDTH ; dimensions (y, x)
+ dw SilphCo10Blocks, SilphCo10TextPointers, SilphCo10Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo10Object ; objects
diff --git a/data/mapHeaders/silphco11.asm b/data/mapHeaders/silphco11.asm
new file mode 100755
index 00000000..829fc9de
--- /dev/null
+++ b/data/mapHeaders/silphco11.asm
@@ -0,0 +1,6 @@
+SilphCo11_h: ; 0x620ee to 0x620fa (12 bytes) (id=235)
+ db INTERIOR ; tileset
+ db SILPH_CO_11F_HEIGHT, SILPH_CO_11F_WIDTH ; dimensions (y, x)
+ dw SilphCo11Blocks, SilphCo11TextPointers, SilphCo11Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo11Object ; objects
diff --git a/data/mapHeaders/silphco2.asm b/data/mapHeaders/silphco2.asm
new file mode 100755
index 00000000..1f345127
--- /dev/null
+++ b/data/mapHeaders/silphco2.asm
@@ -0,0 +1,6 @@
+SilphCo2_h: ; 0x59ce5 to 0x59cf1 (12 bytes) (id=207)
+ db FACILITY ; tileset
+ db SILPH_CO_2F_HEIGHT, SILPH_CO_2F_WIDTH ; dimensions (y, x)
+ dw SilphCo2Blocks, SilphCo2TextPointers, SilphCo2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo2Object ; objects
diff --git a/data/mapHeaders/silphco3.asm b/data/mapHeaders/silphco3.asm
new file mode 100755
index 00000000..56119f41
--- /dev/null
+++ b/data/mapHeaders/silphco3.asm
@@ -0,0 +1,6 @@
+SilphCo3_h: ; 0x59f4f to 0x59f5b (12 bytes) (id=208)
+ db FACILITY ; tileset
+ db SILPH_CO_3F_HEIGHT, SILPH_CO_3F_WIDTH ; dimensions (y, x)
+ dw SilphCo3Blocks, SilphCo3TextPointers, SilphCo3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo3Object ; objects
diff --git a/data/mapHeaders/silphco4.asm b/data/mapHeaders/silphco4.asm
new file mode 100755
index 00000000..3d6289cf
--- /dev/null
+++ b/data/mapHeaders/silphco4.asm
@@ -0,0 +1,6 @@
+SilphCo4_h: ; 0x19cff to 0x19d0b (12 bytes) (bank=6) (id=209)
+ db FACILITY ; tileset
+ db SILPH_CO_4F_HEIGHT, SILPH_CO_4F_WIDTH ; dimensions (y, x)
+ dw SilphCo4Blocks, SilphCo4TextPointers, SilphCo4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo4Object ; objects
diff --git a/data/mapHeaders/silphco5.asm b/data/mapHeaders/silphco5.asm
new file mode 100755
index 00000000..aa40ca2f
--- /dev/null
+++ b/data/mapHeaders/silphco5.asm
@@ -0,0 +1,6 @@
+SilphCo5_h: ; 0x19f2b to 0x19f37 (12 bytes) (bank=6) (id=210)
+ db FACILITY ; tileset
+ db SILPH_CO_5F_HEIGHT, SILPH_CO_5F_WIDTH ; dimensions (y, x)
+ dw SilphCo5Blocks, SilphCo5TextPointers, SilphCo5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo5Object ; objects
diff --git a/data/mapHeaders/silphco6.asm b/data/mapHeaders/silphco6.asm
new file mode 100755
index 00000000..af9b3d6b
--- /dev/null
+++ b/data/mapHeaders/silphco6.asm
@@ -0,0 +1,6 @@
+SilphCo6_h: ; 0x1a19d to 0x1a1a9 (12 bytes) (bank=6) (id=211)
+ db FACILITY ; tileset
+ db SILPH_CO_6F_HEIGHT, SILPH_CO_6F_WIDTH ; dimensions (y, x)
+ dw SilphCo6Blocks, SilphCo6TextPointers, SilphCo6Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo6Object ; objects
diff --git a/data/mapHeaders/silphco7.asm b/data/mapHeaders/silphco7.asm
new file mode 100755
index 00000000..335d3b6b
--- /dev/null
+++ b/data/mapHeaders/silphco7.asm
@@ -0,0 +1,6 @@
+SilphCo7_h: ; 0x51b55 to 0x51b61 (12 bytes) (id=212)
+ db FACILITY ; tileset
+ db SILPH_CO_7F_HEIGHT, SILPH_CO_7F_WIDTH ; dimensions (y, x)
+ dw SilphCo7Blocks, SilphCo7TextPointers, SilphCo7Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo7Object ; objects
diff --git a/data/mapHeaders/silphco8.asm b/data/mapHeaders/silphco8.asm
new file mode 100755
index 00000000..31c9617c
--- /dev/null
+++ b/data/mapHeaders/silphco8.asm
@@ -0,0 +1,6 @@
+SilphCo8_h: ; 0x564f8 to 0x56504 (12 bytes) (id=213)
+ db FACILITY ; tileset
+ db SILPH_CO_8F_HEIGHT, SILPH_CO_8F_WIDTH ; dimensions (y, x)
+ dw SilphCo8Blocks, SilphCo8TextPointers, SilphCo8Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo8Object ; objects
diff --git a/data/mapHeaders/silphco9.asm b/data/mapHeaders/silphco9.asm
new file mode 100755
index 00000000..1cc8b3f2
--- /dev/null
+++ b/data/mapHeaders/silphco9.asm
@@ -0,0 +1,6 @@
+SilphCo9_h: ; 0x5d7af to 0x5d7bb (12 bytes) (id=233)
+ db FACILITY ; tileset
+ db SILPH_CO_9F_HEIGHT, SILPH_CO_9F_WIDTH ; dimensions (y, x)
+ dw SilphCo9Blocks, SilphCo9TextPointers, SilphCo9Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCo9Object ; objects
diff --git a/data/mapHeaders/silphcoelevator.asm b/data/mapHeaders/silphcoelevator.asm
new file mode 100755
index 00000000..b8a59b7a
--- /dev/null
+++ b/data/mapHeaders/silphcoelevator.asm
@@ -0,0 +1,6 @@
+SilphCoElevator_h: ; 0x457b4 to 0x457c0 (12 bytes) (bank=11) (id=236)
+ db LOBBY ; tileset
+ db SILPH_CO_ELEVATOR_HEIGHT, SILPH_CO_ELEVATOR_WIDTH ; dimensions (y, x)
+ dw SilphCoElevatorBlocks, SilphCoElevatorTextPointers, SilphCoElevatorScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw SilphCoElevatorObject ; objects
diff --git a/data/mapHeaders/ssanne1.asm b/data/mapHeaders/ssanne1.asm
new file mode 100755
index 00000000..c31de5d4
--- /dev/null
+++ b/data/mapHeaders/ssanne1.asm
@@ -0,0 +1,6 @@
+SSAnne1_h: ; 0x61259 to 0x61265 (12 bytes) (id=95)
+ db SHIP ; tileset
+ db SS_ANNE_1_HEIGHT, SS_ANNE_1_WIDTH ; dimensions (y, x)
+ dw SSAnne1Blocks, SSAnne1TextPointers, SSAnne1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne1Object ; objects
diff --git a/data/mapHeaders/ssanne10.asm b/data/mapHeaders/ssanne10.asm
new file mode 100755
index 00000000..e0e5c6a7
--- /dev/null
+++ b/data/mapHeaders/ssanne10.asm
@@ -0,0 +1,6 @@
+SSAnne10_h: ; 0x61d49 to 0x61d55 (12 bytes) (id=104)
+ db SHIP ; tileset
+ db SS_ANNE_10_HEIGHT, SS_ANNE_10_WIDTH ; dimensions (y, x)
+ dw SSAnne10Blocks, SSAnne10TextPointers, SSAnne10Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne10Object ; objects
diff --git a/data/mapHeaders/ssanne2.asm b/data/mapHeaders/ssanne2.asm
new file mode 100755
index 00000000..50ca0562
--- /dev/null
+++ b/data/mapHeaders/ssanne2.asm
@@ -0,0 +1,6 @@
+SSAnne2_h: ; 0x61393 to 0x6139f (12 bytes) (id=96)
+ db SHIP ; tileset
+ db SS_ANNE_2_HEIGHT, SS_ANNE_2_WIDTH ; dimensions (y, x)
+ dw SSAnne2Blocks, SSAnne2TextPointers, SSAnne2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne2Object ; objects
diff --git a/data/mapHeaders/ssanne3.asm b/data/mapHeaders/ssanne3.asm
new file mode 100755
index 00000000..acde90a2
--- /dev/null
+++ b/data/mapHeaders/ssanne3.asm
@@ -0,0 +1,6 @@
+SSAnne3_h: ; 0x44926 to 0x44932 (12 bytes) (bank=11) (id=97)
+ db SHIP ; tileset
+ db SS_ANNE_3_HEIGHT, SS_ANNE_3_WIDTH ; dimensions (y, x)
+ dw SSAnne3Blocks, SSAnne3TextPointers, SSAnne3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne3Object ; objects
diff --git a/data/mapHeaders/ssanne4.asm b/data/mapHeaders/ssanne4.asm
new file mode 100755
index 00000000..7f3e9ab2
--- /dev/null
+++ b/data/mapHeaders/ssanne4.asm
@@ -0,0 +1,6 @@
+SSAnne4_h: ; 0x61622 to 0x6162e (12 bytes) (id=98)
+ db SHIP ; tileset
+ db SS_ANNE_4_HEIGHT, SS_ANNE_4_WIDTH ; dimensions (y, x)
+ dw SSAnne4Blocks, SSAnne4TextPointers, SSAnne4Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne4Object ; objects
diff --git a/data/mapHeaders/ssanne5.asm b/data/mapHeaders/ssanne5.asm
new file mode 100755
index 00000000..7da4a6bf
--- /dev/null
+++ b/data/mapHeaders/ssanne5.asm
@@ -0,0 +1,6 @@
+SSAnne5_h: ; 0x616a2 to 0x616ae (12 bytes) (id=99)
+ db SHIP ; tileset
+ db SS_ANNE_5_HEIGHT, SS_ANNE_5_WIDTH ; dimensions (y, x)
+ dw SSAnne5Blocks, SSAnne5TextPointers, SSAnne5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne5Object ; objects
diff --git a/data/mapHeaders/ssanne6.asm b/data/mapHeaders/ssanne6.asm
new file mode 100755
index 00000000..6d27509e
--- /dev/null
+++ b/data/mapHeaders/ssanne6.asm
@@ -0,0 +1,6 @@
+SSAnne6_h: ; 0x617a7 to 0x617b3 (12 bytes) (id=100)
+ db SHIP ; tileset
+ db SS_ANNE_6_HEIGHT, SS_ANNE_6_WIDTH ; dimensions (y, x)
+ dw SSAnne6Blocks, SSAnne6TextPointers, SSAnne6Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne6Object ; objects
diff --git a/data/mapHeaders/ssanne7.asm b/data/mapHeaders/ssanne7.asm
new file mode 100755
index 00000000..66da59c0
--- /dev/null
+++ b/data/mapHeaders/ssanne7.asm
@@ -0,0 +1,6 @@
+SSAnne7_h: ; 0x61889 to 0x61895 (12 bytes) (id=101)
+ db SHIP ; tileset
+ db SS_ANNE_7_HEIGHT, SS_ANNE_7_WIDTH ; dimensions (y, x)
+ dw SSAnne7Blocks, SSAnne7TextPointers, SSAnne7Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne7Object ; objects
diff --git a/data/mapHeaders/ssanne8.asm b/data/mapHeaders/ssanne8.asm
new file mode 100755
index 00000000..dcb12993
--- /dev/null
+++ b/data/mapHeaders/ssanne8.asm
@@ -0,0 +1,6 @@
+SSAnne8_h: ; 0x6196a to 0x61976 (12 bytes) (id=102)
+ db SHIP ; tileset
+ db SS_ANNE_8_HEIGHT, SS_ANNE_8_WIDTH ; dimensions (y, x)
+ dw SSAnne8Blocks, SSAnne8TextPointers, SSAnne8Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne8Object ; objects
diff --git a/data/mapHeaders/ssanne9.asm b/data/mapHeaders/ssanne9.asm
new file mode 100755
index 00000000..5a293576
--- /dev/null
+++ b/data/mapHeaders/ssanne9.asm
@@ -0,0 +1,6 @@
+SSAnne9_h: ; 0x61b3f to 0x61b4b (12 bytes) (id=103)
+ db SHIP ; tileset
+ db SS_ANNE_9_HEIGHT, SS_ANNE_9_WIDTH ; dimensions (y, x)
+ dw SSAnne9Blocks, SSAnne9TextPointers, SSAnne9Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw SSAnne9Object ; objects
diff --git a/data/mapHeaders/tradecenterm.asm b/data/mapHeaders/tradecenterm.asm
new file mode 100755
index 00000000..59eb5095
--- /dev/null
+++ b/data/mapHeaders/tradecenterm.asm
@@ -0,0 +1,6 @@
+TradeCenterM_h: ; 0x4fd71 to 0x4fd7d (12 bytes) (id=240)
+ db CLUB ; tileset
+ db TRADE_CENTER_HEIGHT, TRADE_CENTER_WIDTH ; dimensions (y, x)
+ dw TradeCenterMBlocks, TradeCenterMTextPointers, TradeCenterMScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw TradeCenterMObject ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute5.asm b/data/mapHeaders/undergroundpathentranceroute5.asm
new file mode 100755
index 00000000..75e881ba
--- /dev/null
+++ b/data/mapHeaders/undergroundpathentranceroute5.asm
@@ -0,0 +1,6 @@
+UndergroundPathEntranceRoute5_h: ; 0x5d69d to 0x5d6a9 (12 bytes) (id=71)
+ db GATE ; tileset
+ db PATH_ENTRANCE_ROUTE_5_HEIGHT, PATH_ENTRANCE_ROUTE_5_WIDTH ; dimensions (y, x)
+ dw UndergroundPathEntranceRoute5Blocks, UndergroundPathEntranceRoute5TextPointers, UndergroundPathEntranceRoute5Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathEntranceRoute5Object ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute6.asm b/data/mapHeaders/undergroundpathentranceroute6.asm
new file mode 100755
index 00000000..91835507
--- /dev/null
+++ b/data/mapHeaders/undergroundpathentranceroute6.asm
@@ -0,0 +1,6 @@
+UndergroundPathEntranceRoute6_h: ; 0x5d6e3 to 0x5d6ef (12 bytes) (id=74)
+ db GATE ; tileset
+ db PATH_ENTRANCE_ROUTE_6_HEIGHT, PATH_ENTRANCE_ROUTE_6_WIDTH ; dimensions (y, x)
+ dw UndergroundPathEntranceRoute6Blocks, UndergroundPathEntranceRoute6TextPointers, UndergroundPathEntranceRoute6Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathEntranceRoute6Object ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute7.asm b/data/mapHeaders/undergroundpathentranceroute7.asm
new file mode 100755
index 00000000..1ad53899
--- /dev/null
+++ b/data/mapHeaders/undergroundpathentranceroute7.asm
@@ -0,0 +1,6 @@
+UndergroundPathEntranceRoute7_h: ; 0x5d720 to 0x5d72c (12 bytes) (id=77)
+ db GATE ; tileset
+ db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x)
+ dw UndergroundPathEntranceRoute7Blocks, UndergroundPathEntranceRoute7TextPointers, UndergroundPathEntranceRoute7Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathEntranceRoute7Object ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute7copy.asm b/data/mapHeaders/undergroundpathentranceroute7copy.asm
new file mode 100755
index 00000000..e5e6cfa0
--- /dev/null
+++ b/data/mapHeaders/undergroundpathentranceroute7copy.asm
@@ -0,0 +1,6 @@
+UndergroundPathEntranceRoute7Copy_h: ; 5d75d (17:575d)
+ db GATE ; tileset
+ db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x)
+ dw UndergroundPathEntranceRoute7CopyBlocks, UndergroundPathEntranceRoute7CopyTextPointers, UndergroundPathEntranceRoute7CopyScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathEntranceRoute7CopyObject ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute8.asm b/data/mapHeaders/undergroundpathentranceroute8.asm
new file mode 100755
index 00000000..ac6fd87d
--- /dev/null
+++ b/data/mapHeaders/undergroundpathentranceroute8.asm
@@ -0,0 +1,6 @@
+UndergroundPathEntranceRoute8_h: ; 0x1e27d to 0x1e289 (12 bytes) (bank=7) (id=80)
+ db GATE ; tileset
+ db PATH_ENTRANCE_ROUTE_8_HEIGHT, PATH_ENTRANCE_ROUTE_8_WIDTH ; dimensions (y, x)
+ dw UndergroundPathEntranceRoute8Blocks, UndergroundPathEntranceRoute8TextPointers, UndergroundPathEntranceRoute8Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathEntranceRoute8Object ; objects
diff --git a/data/mapHeaders/undergroundpathns.asm b/data/mapHeaders/undergroundpathns.asm
new file mode 100755
index 00000000..78a02053
--- /dev/null
+++ b/data/mapHeaders/undergroundpathns.asm
@@ -0,0 +1,6 @@
+UndergroundPathNS_h: ; 0x61f1a to 0x61f26 (12 bytes) (id=119)
+ db UNDERGROUND ; tileset
+ db UNDERGROUND_PATH_NS_HEIGHT, UNDERGROUND_PATH_NS_WIDTH ; dimensions (y, x)
+ dw UndergroundPathNSBlocks, UndergroundPathNSTextPointers, UndergroundPathNSScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathNSObject ; objects
diff --git a/data/mapHeaders/undergroundpathwe.asm b/data/mapHeaders/undergroundpathwe.asm
new file mode 100755
index 00000000..e5561767
--- /dev/null
+++ b/data/mapHeaders/undergroundpathwe.asm
@@ -0,0 +1,6 @@
+UndergroundPathWE_h: ; 0x61f3e to 0x61f4a (12 bytes) (id=121)
+ db UNDERGROUND ; tileset
+ db UNDERGROUND_PATH_WE_HEIGHT, UNDERGROUND_PATH_WE_WIDTH ; dimensions (y, x)
+ dw UndergroundPathWEBlocks, UndergroundPathWETextPointers, UndergroundPathWEScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw UndergroundPathWEObject ; objects
diff --git a/data/mapHeaders/unknowndungeon1.asm b/data/mapHeaders/unknowndungeon1.asm
new file mode 100755
index 00000000..8bac389a
--- /dev/null
+++ b/data/mapHeaders/unknowndungeon1.asm
@@ -0,0 +1,6 @@
+UnknownDungeon1_h: ; 0x74d00 to 0x74d0c (12 bytes) (id=228)
+ db CAVERN ; tileset
+ db UNKNOWN_DUNGEON_1_HEIGHT, UNKNOWN_DUNGEON_1_WIDTH ; dimensions (y, x)
+ dw UnknownDungeon1Blocks, UnknownDungeon1TextPointers, UnknownDungeon1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UnknownDungeon1Object ; objects
diff --git a/data/mapHeaders/unknowndungeon2.asm b/data/mapHeaders/unknowndungeon2.asm
new file mode 100755
index 00000000..0bea5b16
--- /dev/null
+++ b/data/mapHeaders/unknowndungeon2.asm
@@ -0,0 +1,6 @@
+UnknownDungeon2_h: ; 0x45dff to 0x45e0b (12 bytes) (bank=11) (id=226)
+ db CAVERN ; tileset
+ db UNKNOWN_DUNGEON_2_HEIGHT, UNKNOWN_DUNGEON_2_WIDTH ; dimensions (y, x)
+ dw UnknownDungeon2Blocks, UnknownDungeon2TextPointers, UnknownDungeon2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UnknownDungeon2Object ; objects
diff --git a/data/mapHeaders/unknowndungeon3.asm b/data/mapHeaders/unknowndungeon3.asm
new file mode 100755
index 00000000..a29d39dd
--- /dev/null
+++ b/data/mapHeaders/unknowndungeon3.asm
@@ -0,0 +1,6 @@
+UnknownDungeon3_h: ; 0x45ee4 to 0x45ef0 (12 bytes) (bank=11) (id=227)
+ db CAVERN ; tileset
+ db UNKNOWN_DUNGEON_3_HEIGHT, UNKNOWN_DUNGEON_3_WIDTH ; dimensions (y, x)
+ dw UnknownDungeon3Blocks, UnknownDungeon3TextPointers, UnknownDungeon3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw UnknownDungeon3Object ; objects
diff --git a/data/mapHeaders/vermilioncity.asm b/data/mapHeaders/vermilioncity.asm
new file mode 100755
index 00000000..b7a41967
--- /dev/null
+++ b/data/mapHeaders/vermilioncity.asm
@@ -0,0 +1,8 @@
+VermilionCity_h: ; 0x18998 to 0x189ba (34 bytes) (bank=6) (id=5)
+ db OVERWORLD ; tileset
+ db VERMILION_CITY_HEIGHT, VERMILION_CITY_WIDTH ; dimensions (y, x)
+ dw VermilionCityBlocks, VermilionCityTextPointers, VermilionCityScript ; blocks, texts, scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, ROUTE_6_HEIGHT, 5, 0, ROUTE_6_WIDTH, Route6Blocks
+ EAST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 4, 0, ROUTE_11_HEIGHT, Route11Blocks, VERMILION_CITY_WIDTH
+ dw VermilionCityObject ; objects
diff --git a/data/mapHeaders/vermiliondock.asm b/data/mapHeaders/vermiliondock.asm
new file mode 100755
index 00000000..d8d2993c
--- /dev/null
+++ b/data/mapHeaders/vermiliondock.asm
@@ -0,0 +1,6 @@
+VermilionDock_h: ; 0x1db46 to 0x1db52 (12 bytes) (bank=7) (id=94)
+ db SHIP_PORT ; tileset
+ db VERMILION_DOCK_HEIGHT, VERMILION_DOCK_WIDTH ; dimensions (y, x)
+ dw VermilionDockBlocks, VermilionDockTextPointers, VermilionDockScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionDockObject ; objects
diff --git a/data/mapHeaders/vermiliongym.asm b/data/mapHeaders/vermiliongym.asm
new file mode 100755
index 00000000..5627257e
--- /dev/null
+++ b/data/mapHeaders/vermiliongym.asm
@@ -0,0 +1,6 @@
+VermilionGym_h: ; 0x5ca1a to 0x5ca26 (12 bytes) (id=92)
+ db GYM ; tileset
+ db VERMILION_GYM_HEIGHT, VERMILION_GYM_WIDTH ; dimensions (y, x)
+ dw VermilionGymBlocks, VermilionGymTextPointers, VermilionGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionGymObject ; objects
diff --git a/data/mapHeaders/vermilionhouse1.asm b/data/mapHeaders/vermilionhouse1.asm
new file mode 100755
index 00000000..34f99023
--- /dev/null
+++ b/data/mapHeaders/vermilionhouse1.asm
@@ -0,0 +1,6 @@
+VermilionHouse1_h: ; 0x1daf0 to 0x1dafc (12 bytes) (bank=7) (id=93)
+ db HOUSE ; tileset
+ db VERMILION_HOUSE_1_HEIGHT, VERMILION_HOUSE_1_WIDTH ; dimensions (y, x)
+ dw VermilionHouse1Blocks, VermilionHouse1TextPointers, VermilionHouse1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionHouse1Object ; objects
diff --git a/data/mapHeaders/vermilionhouse2.asm b/data/mapHeaders/vermilionhouse2.asm
new file mode 100755
index 00000000..ce810bb4
--- /dev/null
+++ b/data/mapHeaders/vermilionhouse2.asm
@@ -0,0 +1,6 @@
+VermilionHouse2_h: ; 0x56064 to 0x56070 (12 bytes) (id=163)
+ db HOUSE ; tileset
+ db VERMILION_HOUSE_2_HEIGHT, VERMILION_HOUSE_2_WIDTH ; dimensions (y, x)
+ dw VermilionHouse2Blocks, VermilionHouse2TextPointers, VermilionHouse2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionHouse2Object ; objects
diff --git a/data/mapHeaders/vermilionhouse3.asm b/data/mapHeaders/vermilionhouse3.asm
new file mode 100755
index 00000000..62651a4f
--- /dev/null
+++ b/data/mapHeaders/vermilionhouse3.asm
@@ -0,0 +1,6 @@
+VermilionHouse3_h: ; 0x19c06 to 0x19c12 (12 bytes) (bank=6) (id=196)
+ db HOUSE ; tileset
+ db VERMILION_HOUSE_3_HEIGHT, VERMILION_HOUSE_3_WIDTH ; dimensions (y, x)
+ dw VermilionHouse3Blocks, VermilionHouse3TextPointers, VermilionHouse3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionHouse3Object ; objects
diff --git a/data/mapHeaders/vermilionmart.asm b/data/mapHeaders/vermilionmart.asm
new file mode 100755
index 00000000..ecf71946
--- /dev/null
+++ b/data/mapHeaders/vermilionmart.asm
@@ -0,0 +1,6 @@
+VermilionMart_h: ; 0x5c9d5 to 0x5c9e1 (12 bytes) (id=91)
+ db MART ; tileset
+ db VERMILION_MART_HEIGHT, VERMILION_MART_WIDTH ; dimensions (y, x)
+ dw VermilionMartBlocks, VermilionMartTextPointers, VermilionMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionMartObject ; objects
diff --git a/data/mapHeaders/vermilionpokecenter.asm b/data/mapHeaders/vermilionpokecenter.asm
new file mode 100755
index 00000000..6033585f
--- /dev/null
+++ b/data/mapHeaders/vermilionpokecenter.asm
@@ -0,0 +1,6 @@
+VermilionPokecenter_h: ; 0x5c983 to 0x5c98f (12 bytes) (id=89)
+ db POKECENTER ; tileset
+ db VERMILION_POKECENTER_HEIGHT, VERMILION_POKECENTER_WIDTH ; dimensions (y, x)
+ dw VermilionPokecenterBlocks, VermilionPokecenterTextPointers, VermilionPokecenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw VermilionPokecenterObject ; objects
diff --git a/data/mapHeaders/victoryroad1.asm b/data/mapHeaders/victoryroad1.asm
new file mode 100755
index 00000000..972d3866
--- /dev/null
+++ b/data/mapHeaders/victoryroad1.asm
@@ -0,0 +1,6 @@
+VictoryRoad1_h: ; 0x5d9fe to 0x5da0a (12 bytes) (id=108)
+ db CAVERN ; tileset
+ db VICTORY_ROAD_1_HEIGHT, VICTORY_ROAD_1_WIDTH ; dimensions (y, x)
+ dw VictoryRoad1Blocks, VictoryRoad1TextPointers, VictoryRoad1Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw VictoryRoad1Object ; objects
diff --git a/data/mapHeaders/victoryroad2.asm b/data/mapHeaders/victoryroad2.asm
new file mode 100755
index 00000000..3fb24eee
--- /dev/null
+++ b/data/mapHeaders/victoryroad2.asm
@@ -0,0 +1,6 @@
+VictoryRoad2_h: ; 0x51791 to 0x5179d (12 bytes) (id=194)
+ db CAVERN ; tileset
+ db VICTORY_ROAD_2_HEIGHT, VICTORY_ROAD_2_WIDTH ; dimensions (y, x)
+ dw VictoryRoad2Blocks, VictoryRoad2TextPointers, VictoryRoad2Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw VictoryRoad2Object ; objects
diff --git a/data/mapHeaders/victoryroad3.asm b/data/mapHeaders/victoryroad3.asm
new file mode 100755
index 00000000..e35c32c1
--- /dev/null
+++ b/data/mapHeaders/victoryroad3.asm
@@ -0,0 +1,6 @@
+VictoryRoad3_h: ; 0x44974 to 0x44980 (12 bytes) (bank=11) (id=198)
+ db CAVERN ; tileset
+ db VICTORY_ROAD_3_HEIGHT, VICTORY_ROAD_3_WIDTH ; dimensions (y, x)
+ dw VictoryRoad3Blocks, VictoryRoad3TextPointers, VictoryRoad3Script ; blocks, texts, scripts
+ db $00 ; connections
+ dw VictoryRoad3Object ; objects
diff --git a/data/mapHeaders/viridiancity.asm b/data/mapHeaders/viridiancity.asm
new file mode 100755
index 00000000..96aac7ca
--- /dev/null
+++ b/data/mapHeaders/viridiancity.asm
@@ -0,0 +1,9 @@
+ViridianCity_h: ; 0x18357 to 0x18384 (45 bytes) (bank=6) (id=1)
+ db OVERWORLD ; tileset
+ db VIRIDIAN_CITY_HEIGHT, VIRIDIAN_CITY_WIDTH ; dimensions (y, x)
+ dw ViridianCityBlocks, ViridianCityTextPointers, ViridianCityScript ; blocks, texts, scripts
+ db NORTH | SOUTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, ROUTE_2_HEIGHT, 5, 0, ROUTE_2_WIDTH, Route2Blocks
+ SOUTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, 5, 0, ROUTE_1_WIDTH, Route1Blocks, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT
+ WEST_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 4, 0, ROUTE_22_HEIGHT, Route22Blocks, VIRIDIAN_CITY_WIDTH
+ dw ViridianCityObject ; objects
diff --git a/data/mapHeaders/viridianforest.asm b/data/mapHeaders/viridianforest.asm
new file mode 100755
index 00000000..43433c9e
--- /dev/null
+++ b/data/mapHeaders/viridianforest.asm
@@ -0,0 +1,6 @@
+ViridianForest_h: ; 0x61101 to 0x6110d (12 bytes) (id=51)
+ db FOREST ; tileset
+ db VIRIDIAN_FOREST_HEIGHT, VIRIDIAN_FOREST_WIDTH ; dimensions (y, x)
+ dw ViridianForestBlocks, ViridianForestTextPointers, ViridianForestScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianForestObject ; objects
diff --git a/data/mapHeaders/viridianforestentrance.asm b/data/mapHeaders/viridianforestentrance.asm
new file mode 100755
index 00000000..21fdc56b
--- /dev/null
+++ b/data/mapHeaders/viridianforestentrance.asm
@@ -0,0 +1,6 @@
+ViridianForestEntrance_h: ; 0x5d650 to 0x5d65c (12 bytes) (id=50)
+ db FOREST_GATE ; tileset
+ db VIRIDIAN_FOREST_ENTRANCE_HEIGHT, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; dimensions (y, x)
+ dw ViridianForestEntranceBlocks, ViridianForestEntranceTextPointers, ViridianForestEntranceScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianForestEntranceObject ; objects
diff --git a/data/mapHeaders/viridianforestexit.asm b/data/mapHeaders/viridianforestexit.asm
new file mode 100755
index 00000000..285e6416
--- /dev/null
+++ b/data/mapHeaders/viridianforestexit.asm
@@ -0,0 +1,6 @@
+ViridianForestExit_h: ; 0x5d57b to 0x5d587 (12 bytes) (id=47)
+ db FOREST_GATE ; tileset
+ db VIRIDIAN_FOREST_EXIT_HEIGHT, VIRIDIAN_FOREST_EXIT_WIDTH ; dimensions (y, x)
+ dw ViridianForestExitBlocks, ViridianForestExitTextPointers, ViridianForestExitScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianForestExitObject ; objects
diff --git a/data/mapHeaders/viridiangym.asm b/data/mapHeaders/viridiangym.asm
new file mode 100755
index 00000000..c983ab71
--- /dev/null
+++ b/data/mapHeaders/viridiangym.asm
@@ -0,0 +1,6 @@
+ViridianGym_h: ; 0x74897 to 0x748a3 (12 bytes) (id=45)
+ db GYM ; tileset
+ db VIRIDIAN_GYM_HEIGHT, VIRIDIAN_GYM_WIDTH ; dimensions (y, x)
+ dw ViridianGymBlocks, ViridianGymTextPointers, ViridianGymScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianGymObject ; objects
diff --git a/data/mapHeaders/viridianhouse.asm b/data/mapHeaders/viridianhouse.asm
new file mode 100755
index 00000000..392c6a20
--- /dev/null
+++ b/data/mapHeaders/viridianhouse.asm
@@ -0,0 +1,8 @@
+ViridianHouse_h: ; 0x1d57d to 0x1d589 (12 bytes) (bank=7) (id=44)
+ db HOUSE ; tileset
+ db VIRIDIAN_HOUSE_HEIGHT, VIRIDIAN_HOUSE_WIDTH ; dimensions (y, x)
+ dw ViridianHouseBlocks, ViridianHouseTextPointers, ViridianHouseScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianHouseObject ; objects
+
+ db $0
diff --git a/data/mapHeaders/viridianmart.asm b/data/mapHeaders/viridianmart.asm
new file mode 100755
index 00000000..1bbe80f0
--- /dev/null
+++ b/data/mapHeaders/viridianmart.asm
@@ -0,0 +1,6 @@
+ViridianMart_h: ; 0x1d462 to 0x1d46e (12 bytes) (bank=7) (id=42)
+ db MART ; tileset
+ db VIRIDIAN_MART_HEIGHT, VIRIDIAN_MART_WIDTH ; dimensions (y, x)
+ dw ViridianMartBlocks, ViridianMartTextPointers, ViridianMartScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianMartObject ; objects
diff --git a/data/mapHeaders/viridianpokecenter.asm b/data/mapHeaders/viridianpokecenter.asm
new file mode 100755
index 00000000..673be44e
--- /dev/null
+++ b/data/mapHeaders/viridianpokecenter.asm
@@ -0,0 +1,6 @@
+ViridianPokecenter_h: ; 0x44251 to 0x4425d (12 bytes) (bank=11) (id=41)
+ db POKECENTER ; tileset
+ db VIRIDIAN_POKECENTER_HEIGHT, VIRIDIAN_POKECENTER_WIDTH ; dimensions (y, x)
+ dw ViridianPokecenterBlocks, ViridianPokecenterTextPointers, ViridianPokeCenterScript ; blocks, texts, scripts
+ db $00 ; connections
+ dw ViridianPokecenterObject ; objects
diff --git a/data/mapObjects/agatha.asm b/data/mapObjects/agatha.asm
new file mode 100755
index 00000000..6c9278ce
--- /dev/null
+++ b/data/mapObjects/agatha.asm
@@ -0,0 +1,19 @@
+AgathaObject: ; 0x76534 (size=44)
+ db $0 ; border block
+
+ db $4 ; warps
+ db $b, $4, $2, BRUNOS_ROOM
+ db $b, $5, $3, BRUNOS_ROOM
+ db $0, $4, $0, LANCES_ROOM
+ db $0, $5, $0, LANCES_ROOM
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_AGATHA, $2 + 4, $5 + 4, $ff, $d0, $41, AGATHA + $C8, $1 ; trainer
+
+ ; warp-to
+ EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $4 ; BRUNOS_ROOM
+ EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $5 ; BRUNOS_ROOM
+ EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $4 ; LANCES_ROOM
+ EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $5 ; LANCES_ROOM
diff --git a/data/mapObjects/battlecenterm.asm b/data/mapObjects/battlecenterm.asm
new file mode 100755
index 00000000..45d88590
--- /dev/null
+++ b/data/mapObjects/battlecenterm.asm
@@ -0,0 +1,9 @@
+BattleCenterMObject: ; 0x4fd53 (size=10)
+ db $e ; border block
+
+ db $0 ; warps
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person
diff --git a/data/mapObjects/bikeshop.asm b/data/mapObjects/bikeshop.asm
new file mode 100755
index 00000000..5803e3fb
--- /dev/null
+++ b/data/mapObjects/bikeshop.asm
@@ -0,0 +1,17 @@
+BikeShopObject: ; 0x1d866 (size=38)
+ db $e ; border block
+
+ db $2 ; warps
+ db $7, $2, $4, $ff
+ db $7, $3, $4, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_BIKE_SHOP_GUY, $2 + 4, $6 + 4, $ff, $ff, $1 ; person
+ db SPRITE_MOM_GEISHA, $6 + 4, $5 + 4, $fe, $1, $2 ; person
+ db SPRITE_BUG_CATCHER, $3 + 4, $1 + 4, $ff, $d1, $3 ; person
+
+ ; warp-to
+ EVENT_DISP BIKE_SHOP_WIDTH, $7, $2
+ EVENT_DISP BIKE_SHOP_WIDTH, $7, $3
diff --git a/data/mapObjects/billshouse.asm b/data/mapObjects/billshouse.asm
new file mode 100755
index 00000000..2c032bf2
--- /dev/null
+++ b/data/mapObjects/billshouse.asm
@@ -0,0 +1,17 @@
+BillsHouseObject: ; 0x1e8df (size=38)
+ db $d ; border block
+
+ db $2 ; warps
+ db $7, $2, $0, $ff
+ db $7, $3, $0, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_SLOWBRO, $5 + 4, $6 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $4 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $6 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP BILLS_HOUSE_WIDTH, $7, $2
+ EVENT_DISP BILLS_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/blueshouse.asm b/data/mapObjects/blueshouse.asm
new file mode 100755
index 00000000..6e801ea6
--- /dev/null
+++ b/data/mapObjects/blueshouse.asm
@@ -0,0 +1,17 @@
+BluesHouseObject: ; 19bce (6:5bce)
+ db $0A ; border block
+
+ db 2 ; warps
+ db 7,2,1,$FF
+ db 7,3,1,$FF
+
+ db 0 ; signs
+
+ db 3 ; people
+ db $11,4+3,4+2,$FF,$D3,1 ; Daisy, sitting by map
+ db $11,4+4,4+6,$FE,1,ITEM|2,0 ; map on table
+ db $41,4+3,4+3,$FF,$FF,ITEM|3,0 ; Daisy, walking around
+
+ ; warp-to
+ EVENT_DISP BLUES_HOUSE_WIDTH, 7, 2
+ EVENT_DISP BLUES_HOUSE_WIDTH, 7, 3
diff --git a/data/mapObjects/bruno.asm b/data/mapObjects/bruno.asm
new file mode 100755
index 00000000..b8577ac1
--- /dev/null
+++ b/data/mapObjects/bruno.asm
@@ -0,0 +1,19 @@
+BrunoObject: ; 0x763d7 (size=44)
+ db $3 ; border block
+
+ db $4 ; warps
+ db $b, $4, $2, LORELEIS_ROOM
+ db $b, $5, $3, LORELEIS_ROOM
+ db $0, $4, $0, AGATHAS_ROOM
+ db $0, $5, $1, AGATHAS_ROOM
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_BRUNO, $2 + 4, $5 + 4, $ff, $d0, $41, BRUNO + $C8, $1 ; trainer
+
+ ; warp-to
+ EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $4 ; LORELEIS_ROOM
+ EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $5 ; LORELEIS_ROOM
+ EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $4 ; AGATHAS_ROOM
+ EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $5 ; AGATHAS_ROOM
diff --git a/data/mapObjects/celadoncity.asm b/data/mapObjects/celadoncity.asm
new file mode 100755
index 00000000..b19e2f87
--- /dev/null
+++ b/data/mapObjects/celadoncity.asm
@@ -0,0 +1,54 @@
+CeladonCityObject: ; 0x18022 (size=189)
+ db $f ; border block
+
+ db $d ; warps
+ db $d, $8, $0, CELADON_MART_1
+ db $d, $a, $2, CELADON_MART_1
+ db $9, $18, $0, CELADON_MANSION_1
+ db $3, $18, $2, CELADON_MANSION_1
+ db $3, $19, $2, CELADON_MANSION_1
+ db $9, $29, $0, CELADON_POKECENTER
+ db $1b, $c, $0, CELADON_GYM
+ db $13, $1c, $0, GAME_CORNER
+ db $13, $27, $0, CELADON_MART_5 ; beta warp! no longer used
+ db $13, $21, $0, CELADON_PRIZE_ROOM
+ db $1b, $1f, $0, CELADON_DINER
+ db $1b, $23, $0, CELADON_HOUSE
+ db $1b, $2b, $0, CELADON_HOTEL
+
+ db $9 ; signs
+ db $f, $1b, $a ; CeladonCityText10
+ db $f, $13, $b ; CeladonCityText11
+ db $9, $2a, $c ; PokeCenterSignText
+ db $1d, $d, $d ; CeladonCityText13
+ db $9, $15, $e ; CeladonCityText14
+ db $d, $c, $f ; CeladonCityText15
+ db $15, $27, $10 ; CeladonCityText16
+ db $15, $21, $11 ; CeladonCityText17
+ db $15, $1b, $12 ; CeladonCityText18
+
+ db $9 ; people
+ db SPRITE_LITTLE_GIRL, $11 + 4, $8 + 4, $fe, $0, $1 ; person
+ db SPRITE_OLD_PERSON, $1c + 4, $b + 4, $ff, $d1, $2 ; person
+ db SPRITE_GIRL, $13 + 4, $e + 4, $fe, $1, $3 ; person
+ db SPRITE_OLD_PERSON, $16 + 4, $19 + 4, $ff, $d0, $4 ; person
+ db SPRITE_OLD_PERSON, $10 + 4, $16 + 4, $ff, $d0, $5 ; person
+ db SPRITE_FISHER2, $c + 4, $20 + 4, $ff, $d2, $6 ; person
+ db SPRITE_SLOWBRO, $c + 4, $1e + 4, $ff, $d3, $7 ; person
+ db SPRITE_ROCKET, $1d + 4, $20 + 4, $fe, $2, $8 ; person
+ db SPRITE_ROCKET, $e + 4, $2a + 4, $fe, $2, $9 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_CITY_WIDTH, $d, $8 ; CELADON_MART_1
+ EVENT_DISP CELADON_CITY_WIDTH, $d, $a ; CELADON_MART_1
+ EVENT_DISP CELADON_CITY_WIDTH, $9, $18 ; CELADON_MANSION_1
+ EVENT_DISP CELADON_CITY_WIDTH, $3, $18 ; CELADON_MANSION_1
+ EVENT_DISP CELADON_CITY_WIDTH, $3, $19 ; CELADON_MANSION_1
+ EVENT_DISP CELADON_CITY_WIDTH, $9, $29 ; CELADON_POKECENTER
+ EVENT_DISP CELADON_CITY_WIDTH, $1b, $c ; CELADON_GYM
+ EVENT_DISP CELADON_CITY_WIDTH, $13, $1c ; GAME_CORNER
+ EVENT_DISP CELADON_CITY_WIDTH, $13, $27 ; CELADON_MART_5
+ EVENT_DISP CELADON_CITY_WIDTH, $13, $21 ; CELADON_PRIZE_ROOM
+ EVENT_DISP CELADON_CITY_WIDTH, $1b, $1f ; CELADON_DINER
+ EVENT_DISP CELADON_CITY_WIDTH, $1b, $23 ; CELADON_HOUSE
+ EVENT_DISP CELADON_CITY_WIDTH, $1b, $2b ; CELADON_HOTEL
diff --git a/data/mapObjects/celadondiner.asm b/data/mapObjects/celadondiner.asm
new file mode 100755
index 00000000..ffb47d50
--- /dev/null
+++ b/data/mapObjects/celadondiner.asm
@@ -0,0 +1,19 @@
+CeladonDinerObject: ; 0x491bc (size=50)
+ db $f ; border block
+
+ db $2 ; warps
+ db $7, $3, $a, $ff
+ db $7, $4, $a, $ff
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_COOK, $5 + 4, $8 + 4, $fe, $2, $1 ; person
+ db SPRITE_MOM_GEISHA, $2 + 4, $7 + 4, $ff, $ff, $2 ; person
+ db SPRITE_FAT_BALD_GUY, $4 + 4, $1 + 4, $ff, $d0, $3 ; person
+ db SPRITE_FISHER2, $3 + 4, $5 + 4, $ff, $d3, $4 ; person
+ db SPRITE_GYM_HELPER, $1 + 4, $0 + 4, $ff, $d0, $5 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_DINER_WIDTH, $7, $3
+ EVENT_DISP CELADON_DINER_WIDTH, $7, $4
diff --git a/data/mapObjects/celadongamecorner.asm b/data/mapObjects/celadongamecorner.asm
new file mode 100755
index 00000000..26722b76
--- /dev/null
+++ b/data/mapObjects/celadongamecorner.asm
@@ -0,0 +1,28 @@
+CeladonGameCornerObject: ; 0x48fa0 (size=99)
+ db $f ; border block
+
+ db $3 ; warps
+ db $11, $f, $7, $ff
+ db $11, $10, $7, $ff
+ db $4, $11, $1, ROCKET_HIDEOUT_1
+
+ db $1 ; signs
+ db $4, $9, $c ; CeladonGameCornerText12
+
+ db $b ; people
+ db SPRITE_FOULARD_WOMAN, $6 + 4, $2 + 4, $ff, $d0, $1 ; person
+ db SPRITE_MART_GUY, $6 + 4, $5 + 4, $ff, $d0, $2 ; person
+ db SPRITE_FAT_BALD_GUY, $a + 4, $2 + 4, $ff, $d2, $3 ; person
+ db SPRITE_FOULARD_WOMAN, $d + 4, $2 + 4, $ff, $d2, $4 ; person
+ db SPRITE_FISHER, $b + 4, $5 + 4, $ff, $d3, $5 ; person
+ db SPRITE_MOM_GEISHA, $b + 4, $8 + 4, $ff, $d2, $6 ; person
+ db SPRITE_GYM_HELPER, $e + 4, $8 + 4, $ff, $d2, $7 ; person
+ db SPRITE_GAMBLER, $f + 4, $b + 4, $ff, $d3, $8 ; person
+ db SPRITE_MART_GUY, $b + 4, $e + 4, $ff, $d2, $9 ; person
+ db SPRITE_GENTLEMAN, $d + 4, $11 + 4, $ff, $d3, $a ; person
+ db SPRITE_ROCKET, $5 + 4, $9 + 4, $ff, $d1, $4b, ROCKET + $C8, $7 ; trainer
+
+ ; warp-to
+ EVENT_DISP GAME_CORNER_WIDTH, $11, $f
+ EVENT_DISP GAME_CORNER_WIDTH, $11, $10
+ EVENT_DISP GAME_CORNER_WIDTH, $4, $11 ; ROCKET_HIDEOUT_1
diff --git a/data/mapObjects/celadongym.asm b/data/mapObjects/celadongym.asm
new file mode 100755
index 00000000..df3f14bc
--- /dev/null
+++ b/data/mapObjects/celadongym.asm
@@ -0,0 +1,22 @@
+CeladonGymObject: ; 0x48b30 (size=84)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $11, $4, $6, $ff
+ db $11, $5, $6, $ff
+
+ db $0 ; signs
+
+ db $8 ; people
+ db SPRITE_ERIKA, $3 + 4, $4 + 4, $ff, $d0, $41, ERIKA + $C8, $1 ; trainer
+ db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d3, $42, LASS + $C8, $11 ; trainer
+ db SPRITE_FOULARD_WOMAN, $a + 4, $7 + 4, $ff, $d2, $43, BEAUTY + $C8, $1 ; trainer
+ db SPRITE_LASS, $5 + 4, $9 + 4, $ff, $d0, $44, JR__TRAINER_F + $C8, $b ; trainer
+ db SPRITE_FOULARD_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $45, BEAUTY + $C8, $2 ; trainer
+ db SPRITE_LASS, $3 + 4, $6 + 4, $ff, $d0, $46, LASS + $C8, $12 ; trainer
+ db SPRITE_FOULARD_WOMAN, $3 + 4, $3 + 4, $ff, $d0, $47, BEAUTY + $C8, $3 ; trainer
+ db SPRITE_LASS, $3 + 4, $5 + 4, $ff, $d0, $48, COOLTRAINER_F + $C8, $1 ; trainer
+
+ ; warp-to
+ EVENT_DISP CELADON_GYM_WIDTH, $11, $4
+ EVENT_DISP CELADON_GYM_WIDTH, $11, $5
diff --git a/data/mapObjects/celadonhotel.asm b/data/mapObjects/celadonhotel.asm
new file mode 100755
index 00000000..b1052def
--- /dev/null
+++ b/data/mapObjects/celadonhotel.asm
@@ -0,0 +1,17 @@
+CeladonHotelObject: ; 0x49281 (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $c, $ff
+ db $7, $4, $c, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_OLD_MEDIUM_WOMAN, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_FOULARD_WOMAN, $4 + 4, $2 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $8 + 4, $fe, $2, $3 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_HOTEL_WIDTH, $7, $3
+ EVENT_DISP CELADON_HOTEL_WIDTH, $7, $4
diff --git a/data/mapObjects/celadonhouse.asm b/data/mapObjects/celadonhouse.asm
new file mode 100755
index 00000000..19be473b
--- /dev/null
+++ b/data/mapObjects/celadonhouse.asm
@@ -0,0 +1,17 @@
+CeladonHouseObject: ; 0x49227 (size=38)
+ db $f ; border block
+
+ db $2 ; warps
+ db $7, $2, $b, $ff
+ db $7, $3, $b, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_OLD_PERSON, $2 + 4, $4 + 4, $ff, $d0, $1 ; person
+ db SPRITE_ROCKET, $4 + 4, $1 + 4, $fe, $0, $2 ; person
+ db SPRITE_SAILOR, $6 + 4, $5 + 4, $ff, $d2, $3 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_HOUSE_WIDTH, $7, $2
+ EVENT_DISP CELADON_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/celadonmansion1.asm b/data/mapObjects/celadonmansion1.asm
new file mode 100755
index 00000000..decb14e7
--- /dev/null
+++ b/data/mapObjects/celadonmansion1.asm
@@ -0,0 +1,25 @@
+CeladonMansion1Object: ; 0x486cf (size=71)
+ db $f ; border block
+
+ db $5 ; warps
+ db $b, $4, $2, $ff
+ db $b, $5, $2, $ff
+ db $0, $4, $4, $ff
+ db $1, $7, $1, CELADON_MANSION_2
+ db $1, $2, $2, CELADON_MANSION_2
+
+ db $1 ; signs
+ db $9, $4, $5 ; CeladonMansion1Text5
+
+ db $4 ; people
+ db SPRITE_SLOWBRO, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_OLD_MEDIUM_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $2 ; person
+ db SPRITE_CLEFAIRY, $8 + 4, $1 + 4, $fe, $2, $3 ; person
+ db SPRITE_SLOWBRO, $4 + 4, $4 + 4, $fe, $1, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $4
+ EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $5
+ EVENT_DISP CELADON_MANSION_1_WIDTH, $0, $4
+ EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $7 ; CELADON_MANSION_2
+ EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $2 ; CELADON_MANSION_2
diff --git a/data/mapObjects/celadonmansion2.asm b/data/mapObjects/celadonmansion2.asm
new file mode 100755
index 00000000..3ed15a66
--- /dev/null
+++ b/data/mapObjects/celadonmansion2.asm
@@ -0,0 +1,19 @@
+CeladonMansion2Object: ; 0x48745 (size=39)
+ db $f ; border block
+
+ db $4 ; warps
+ db $1, $6, $0, CELADON_MANSION_3
+ db $1, $7, $3, CELADON_MANSION_1
+ db $1, $2, $4, CELADON_MANSION_1
+ db $1, $4, $3, CELADON_MANSION_3
+
+ db $1 ; signs
+ db $9, $4, $1 ; CeladonMansion2Text1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $6 ; CELADON_MANSION_3
+ EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $7 ; CELADON_MANSION_1
+ EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $2 ; CELADON_MANSION_1
+ EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $4 ; CELADON_MANSION_3
diff --git a/data/mapObjects/celadonmansion3.asm b/data/mapObjects/celadonmansion3.asm
new file mode 100755
index 00000000..e64bac61
--- /dev/null
+++ b/data/mapObjects/celadonmansion3.asm
@@ -0,0 +1,26 @@
+CeladonMansion3Object: ; 0x487ff (size=72)
+ db $f ; border block
+
+ db $4 ; warps
+ db $1, $6, $0, CELADON_MANSION_2
+ db $1, $7, $0, CELADON_MANSION_4
+ db $1, $2, $1, CELADON_MANSION_4
+ db $1, $4, $3, CELADON_MANSION_2
+
+ db $4 ; signs
+ db $3, $1, $5 ; CeladonMansion3Text5
+ db $3, $4, $6 ; CeladonMansion3Text6
+ db $6, $1, $7 ; CeladonMansion3Text7
+ db $9, $4, $8 ; CeladonMansion3Text8
+
+ db $4 ; people
+ db SPRITE_BIKE_SHOP_GUY, $4 + 4, $0 + 4, $ff, $d1, $1 ; person
+ db SPRITE_MART_GUY, $4 + 4, $3 + 4, $ff, $d1, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $0 + 4, $ff, $d1, $3 ; person
+ db SPRITE_LAPRAS_GIVER, $3 + 4, $2 + 4, $ff, $ff, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $6 ; CELADON_MANSION_2
+ EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $7 ; CELADON_MANSION_4
+ EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $2 ; CELADON_MANSION_4
+ EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $4 ; CELADON_MANSION_2
diff --git a/data/mapObjects/celadonmansion4.asm b/data/mapObjects/celadonmansion4.asm
new file mode 100755
index 00000000..4181bd17
--- /dev/null
+++ b/data/mapObjects/celadonmansion4.asm
@@ -0,0 +1,17 @@
+CeladonMansion4Object: ; 0x48875 (size=31)
+ db $9 ; border block
+
+ db $3 ; warps
+ db $1, $6, $1, CELADON_MANSION_3
+ db $1, $2, $2, CELADON_MANSION_3
+ db $7, $2, $0, CELADON_MANSION_5
+
+ db $1 ; signs
+ db $7, $3, $1 ; CeladonMansion4Text1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $6 ; CELADON_MANSION_3
+ EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $2 ; CELADON_MANSION_3
+ EVENT_DISP CELADON_MANSION_4_WIDTH, $7, $2 ; CELADON_MANSION_5
diff --git a/data/mapObjects/celadonmansion5.asm b/data/mapObjects/celadonmansion5.asm
new file mode 100755
index 00000000..efc74275
--- /dev/null
+++ b/data/mapObjects/celadonmansion5.asm
@@ -0,0 +1,16 @@
+CeladonMansion5Object: ; 0x1dd5c (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $2, CELADON_MANSION_4
+ db $7, $3, $2, CELADON_MANSION_4
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_HIKER, $2 + 4, $2 + 4, $ff, $d0, $1 ; person
+ db SPRITE_BALL, $3 + 4, $4 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $2 ; CELADON_MANSION_4
+ EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $3 ; CELADON_MANSION_4
diff --git a/data/mapObjects/celadonmart1.asm b/data/mapObjects/celadonmart1.asm
new file mode 100755
index 00000000..10593f46
--- /dev/null
+++ b/data/mapObjects/celadonmart1.asm
@@ -0,0 +1,25 @@
+CeladonMart1Object: ; 0x60f9e (size=64)
+ db $f ; border block
+
+ db $6 ; warps
+ db $7, $2, $0, $ff
+ db $7, $3, $0, $ff
+ db $7, $10, $1, $ff
+ db $7, $11, $1, $ff
+ db $1, $c, $0, CELADON_MART_2
+ db $1, $1, $0, CELADON_MART_ELEVATOR
+
+ db $2 ; signs
+ db $4, $b, $2 ; CeladonMart1Text2
+ db $1, $e, $3 ; CeladonMart1Text3
+
+ db $1 ; people
+ db SPRITE_CABLE_CLUB_WOMAN, $3 + 4, $8 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_1_WIDTH, $7, $2
+ EVENT_DISP CELADON_MART_1_WIDTH, $7, $3
+ EVENT_DISP CELADON_MART_1_WIDTH, $7, $10
+ EVENT_DISP CELADON_MART_1_WIDTH, $7, $11
+ EVENT_DISP CELADON_MART_1_WIDTH, $1, $c ; CELADON_MART_2
+ EVENT_DISP CELADON_MART_1_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart2.asm b/data/mapObjects/celadonmart2.asm
new file mode 100755
index 00000000..6b40ed11
--- /dev/null
+++ b/data/mapObjects/celadonmart2.asm
@@ -0,0 +1,21 @@
+CeladonMart2Object: ; 0x56111 (size=55)
+ db $f ; border block
+
+ db $3 ; warps
+ db $1, $c, $4, CELADON_MART_1
+ db $1, $10, $1, CELADON_MART_3
+ db $1, $1, $0, CELADON_MART_ELEVATOR
+
+ db $1 ; signs
+ db $1, $e, $5 ; CeladonMart2Text5
+
+ db $4 ; people
+ db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $1 ; person
+ db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $2 ; person
+ db SPRITE_FAT_BALD_GUY, $5 + 4, $13 + 4, $ff, $ff, $3 ; person
+ db SPRITE_GIRL, $4 + 4, $e + 4, $fe, $1, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_2_WIDTH, $1, $c ; CELADON_MART_1
+ EVENT_DISP CELADON_MART_2_WIDTH, $1, $10 ; CELADON_MART_3
+ EVENT_DISP CELADON_MART_2_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart3.asm b/data/mapObjects/celadonmart3.asm
new file mode 100755
index 00000000..8ffbf823
--- /dev/null
+++ b/data/mapObjects/celadonmart3.asm
@@ -0,0 +1,33 @@
+CeladonMart3Object: ; 0x482c4 (size=94)
+ db $f ; border block
+
+ db $3 ; warps
+ db $1, $c, $0, CELADON_MART_4
+ db $1, $10, $1, CELADON_MART_2
+ db $1, $1, $0, CELADON_MART_ELEVATOR
+
+ db $c ; signs
+ db $4, $2, $6 ; CeladonMart3Text6
+ db $4, $3, $7 ; CeladonMart3Text7
+ db $4, $5, $8 ; CeladonMart3Text8
+ db $4, $6, $9 ; CeladonMart3Text9
+ db $6, $2, $a ; CeladonMart3Text10
+ db $6, $3, $b ; CeladonMart3Text11
+ db $6, $5, $c ; CeladonMart3Text12
+ db $6, $6, $d ; CeladonMart3Text13
+ db $1, $e, $e ; CeladonMart3Text14
+ db $1, $4, $f ; CeladonMart3Text15
+ db $1, $6, $10 ; CeladonMart3Text16
+ db $1, $a, $11 ; CeladonMart3Text17
+
+ db $5 ; people
+ db SPRITE_MART_GUY, $5 + 4, $10 + 4, $ff, $ff, $1 ; person
+ db SPRITE_GAMEBOY_KID_COPY, $6 + 4, $b + 4, $ff, $d3, $2 ; person
+ db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $7 + 4, $ff, $d0, $3 ; person
+ db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $8 + 4, $ff, $d0, $4 ; person
+ db SPRITE_YOUNG_BOY, $5 + 4, $2 + 4, $ff, $d1, $5 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_3_WIDTH, $1, $c ; CELADON_MART_4
+ EVENT_DISP CELADON_MART_3_WIDTH, $1, $10 ; CELADON_MART_2
+ EVENT_DISP CELADON_MART_3_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart4.asm b/data/mapObjects/celadonmart4.asm
new file mode 100755
index 00000000..5bdbbf4a
--- /dev/null
+++ b/data/mapObjects/celadonmart4.asm
@@ -0,0 +1,20 @@
+CeladonMart4Object: ; 0x48370 (size=49)
+ db $f ; border block
+
+ db $3 ; warps
+ db $1, $c, $0, CELADON_MART_3
+ db $1, $10, $1, CELADON_MART_5
+ db $1, $1, $0, CELADON_MART_ELEVATOR
+
+ db $1 ; signs
+ db $1, $e, $4 ; CeladonMart4Text4
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $7 + 4, $5 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $f + 4, $fe, $2, $2 ; person
+ db SPRITE_BUG_CATCHER, $2 + 4, $5 + 4, $fe, $2, $3 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_4_WIDTH, $1, $c ; CELADON_MART_3
+ EVENT_DISP CELADON_MART_4_WIDTH, $1, $10 ; CELADON_MART_5
+ EVENT_DISP CELADON_MART_4_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart5.asm b/data/mapObjects/celadonmart5.asm
new file mode 100755
index 00000000..9914d51b
--- /dev/null
+++ b/data/mapObjects/celadonmart5.asm
@@ -0,0 +1,21 @@
+CeladonMart5Object: ; 0x49085 (size=55)
+ db $f ; border block
+
+ db $3 ; warps
+ db $1, $c, $0, CELADON_MART_ROOF
+ db $1, $10, $1, CELADON_MART_4
+ db $1, $1, $0, CELADON_MART_ELEVATOR
+
+ db $1 ; signs
+ db $1, $e, $5 ; CeladonMart5Text5
+
+ db $4 ; people
+ db SPRITE_GENTLEMAN, $5 + 4, $e + 4, $fe, $1, $1 ; person
+ db SPRITE_SAILOR, $6 + 4, $2 + 4, $ff, $ff, $2 ; person
+ db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $3 ; person
+ db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_5_WIDTH, $1, $c ; CELADON_MART_ROOF
+ EVENT_DISP CELADON_MART_5_WIDTH, $1, $10 ; CELADON_MART_4
+ EVENT_DISP CELADON_MART_5_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmartelevator.asm b/data/mapObjects/celadonmartelevator.asm
new file mode 100755
index 00000000..ca9a8f08
--- /dev/null
+++ b/data/mapObjects/celadonmartelevator.asm
@@ -0,0 +1,15 @@
+CeladonMartElevatorObject: ; 0x4866d (size=23)
+ db $f ; border block
+
+ db $2 ; warps
+ db $3, $1, $5, CELADON_MART_1
+ db $3, $2, $5, CELADON_MART_1
+
+ db $1 ; signs
+ db $0, $3, $1 ; CeladonMartElevatorText1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $1 ; CELADON_MART_1
+ EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $2 ; CELADON_MART_1
diff --git a/data/mapObjects/celadonmartroof.asm b/data/mapObjects/celadonmartroof.asm
new file mode 100755
index 00000000..119eb4f8
--- /dev/null
+++ b/data/mapObjects/celadonmartroof.asm
@@ -0,0 +1,18 @@
+CeladonMartRoofObject: ; 0x485a8 (size=36)
+ db $42 ; border block
+
+ db $1 ; warps
+ db $2, $f, $0, CELADON_MART_5
+
+ db $4 ; signs
+ db $1, $a, $3 ; CeladonMartRoofText3
+ db $1, $b, $4 ; CeladonMartRoofText4
+ db $2, $c, $5 ; CeladonMartRoofText5
+ db $2, $d, $6 ; CeladonMartRoofText6
+
+ db $2 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $a + 4, $ff, $d2, $1 ; person
+ db SPRITE_LITTLE_GIRL, $5 + 4, $5 + 4, $fe, $0, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_MART_ROOF_WIDTH, $2, $f ; CELADON_MART_5
diff --git a/data/mapObjects/celadonpokecenter.asm b/data/mapObjects/celadonpokecenter.asm
new file mode 100755
index 00000000..dcfeceb7
--- /dev/null
+++ b/data/mapObjects/celadonpokecenter.asm
@@ -0,0 +1,18 @@
+CeladonPokecenterObject: ; 0x488d2 (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $5, $ff
+ db $7, $4, $5, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person
+ db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $fe, $0, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/celadonprizeroom.asm b/data/mapObjects/celadonprizeroom.asm
new file mode 100755
index 00000000..f280b050
--- /dev/null
+++ b/data/mapObjects/celadonprizeroom.asm
@@ -0,0 +1,19 @@
+CeladonPrizeRoomObject: ; 0x49108 (size=41)
+ db $f ; border block
+
+ db $2 ; warps
+ db $7, $4, $9, $ff
+ db $7, $5, $9, $ff
+
+ db $3 ; signs
+ db $2, $2, $3 ; CeladonPrizeRoomText3
+ db $2, $4, $4 ; CeladonPrizeRoomText4
+ db $2, $6, $5 ; CeladonPrizeRoomText5
+
+ db $2 ; people
+ db SPRITE_BALDING_GUY, $4 + 4, $1 + 4, $ff, $ff, $1 ; person
+ db SPRITE_GAMBLER, $3 + 4, $7 + 4, $fe, $2, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $4
+ EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $5
diff --git a/data/mapObjects/ceruleancity.asm b/data/mapObjects/ceruleancity.asm
new file mode 100755
index 00000000..950e45e1
--- /dev/null
+++ b/data/mapObjects/ceruleancity.asm
@@ -0,0 +1,47 @@
+CeruleanCityObject: ; 0x18786 (size=170)
+ db $f ; border block
+
+ db $a ; warps
+ db $b, $1b, $0, TRASHED_HOUSE
+ db $f, $d, $0, CERULEAN_HOUSE
+ db $11, $13, $0, CERULEAN_POKECENTER
+ db $13, $1e, $0, CERULEAN_GYM
+ db $19, $d, $0, BIKE_SHOP
+ db $19, $19, $0, CERULEAN_MART
+ db $b, $4, $0, UNKNOWN_DUNGEON_1
+ db $9, $1b, $2, TRASHED_HOUSE
+ db $b, $9, $1, CERULEAN_HOUSE_3
+ db $9, $9, $0, CERULEAN_HOUSE_3
+
+ db $6 ; signs
+ db $13, $17, $c ; CeruleanCityText12
+ db $1d, $11, $d ; CeruleanCityText13
+ db $19, $1a, $e ; MartSignText
+ db $11, $14, $f ; PokeCenterSignText
+ db $19, $b, $10 ; CeruleanCityText16
+ db $15, $1b, $11 ; CeruleanCityText17
+
+ db $b ; people
+ db SPRITE_BLUE, $2 + 4, $14 + 4, $ff, $d0, $1 ; person
+ db SPRITE_ROCKET, $8 + 4, $1e + 4, $ff, $ff, $42, ROCKET + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $1f + 4, $ff, $d0, $3 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $12 + 4, $f + 4, $fe, $1, $4 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $9 + 4, $fe, $2, $5 ; person
+ db SPRITE_GUARD, $c + 4, $1c + 4, $ff, $d0, $6 ; person
+ db SPRITE_LASS, $1a + 4, $1d + 4, $ff, $d2, $7 ; person
+ db SPRITE_SLOWBRO, $1a + 4, $1c + 4, $ff, $d0, $8 ; person
+ db SPRITE_LASS, $1b + 4, $9 + 4, $fe, $2, $9 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $c + 4, $4 + 4, $ff, $d0, $a ; person
+ db SPRITE_GUARD, $c + 4, $1b + 4, $ff, $d0, $b ; person
+
+ ; warp-to
+ EVENT_DISP CERULEAN_CITY_WIDTH, $b, $1b ; TRASHED_HOUSE
+ EVENT_DISP CERULEAN_CITY_WIDTH, $f, $d ; CERULEAN_HOUSE
+ EVENT_DISP CERULEAN_CITY_WIDTH, $11, $13 ; CERULEAN_POKECENTER
+ EVENT_DISP CERULEAN_CITY_WIDTH, $13, $1e ; CERULEAN_GYM
+ EVENT_DISP CERULEAN_CITY_WIDTH, $19, $d ; BIKE_SHOP
+ EVENT_DISP CERULEAN_CITY_WIDTH, $19, $19 ; CERULEAN_MART
+ EVENT_DISP CERULEAN_CITY_WIDTH, $b, $4 ; UNKNOWN_DUNGEON_1
+ EVENT_DISP CERULEAN_CITY_WIDTH, $9, $1b ; TRASHED_HOUSE
+ EVENT_DISP CERULEAN_CITY_WIDTH, $b, $9 ; CERULEAN_HOUSE_3
+ EVENT_DISP CERULEAN_CITY_WIDTH, $9, $9 ; CERULEAN_HOUSE_3
diff --git a/data/mapObjects/ceruleangym.asm b/data/mapObjects/ceruleangym.asm
new file mode 100755
index 00000000..8edb90fa
--- /dev/null
+++ b/data/mapObjects/ceruleangym.asm
@@ -0,0 +1,18 @@
+CeruleanGymObject: ; 0x5c834 (size=50)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $d, $4, $3, $ff
+ db $d, $5, $3, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_BRUNETTE_GIRL, $2 + 4, $4 + 4, $ff, $d0, $41, MISTY + $C8, $1 ; trainer
+ db SPRITE_LASS, $3 + 4, $2 + 4, $ff, $d3, $42, JR__TRAINER_F + $C8, $1 ; trainer
+ db SPRITE_SWIMMER, $7 + 4, $8 + 4, $ff, $d2, $43, SWIMMER + $C8, $1 ; trainer
+ db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CERULEAN_GYM_WIDTH, $d, $4
+ EVENT_DISP CERULEAN_GYM_WIDTH, $d, $5
diff --git a/data/mapObjects/ceruleanhouse1.asm b/data/mapObjects/ceruleanhouse1.asm
new file mode 100755
index 00000000..a5d10033
--- /dev/null
+++ b/data/mapObjects/ceruleanhouse1.asm
@@ -0,0 +1,16 @@
+CeruleanHouse1Object: ; 0x1d710 (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $1, $ff
+ db $7, $3, $1, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_OLD_MEDIUM_WOMAN, $4 + 4, $5 + 4, $ff, $d2, $1 ; person
+ db SPRITE_GAMBLER, $2 + 4, $1 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $2
+ EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $3
diff --git a/data/mapObjects/ceruleanhouse2.asm b/data/mapObjects/ceruleanhouse2.asm
new file mode 100755
index 00000000..c8c4ee51
--- /dev/null
+++ b/data/mapObjects/ceruleanhouse2.asm
@@ -0,0 +1,17 @@
+CeruleanHouse2Object: ; 0x74ebe (size=34)
+ db $c ; border block
+
+ db $3 ; warps
+ db $0, $2, $9, $ff
+ db $7, $2, $8, $ff
+ db $7, $3, $8, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FAT_BALD_GUY, $3 + 4, $5 + 4, $ff, $d3, $1 ; person
+
+ ; warp-to
+ EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $0, $2
+ EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $2
+ EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $3
diff --git a/data/mapObjects/ceruleanhousetrashed.asm b/data/mapObjects/ceruleanhousetrashed.asm
new file mode 100755
index 00000000..ce5e0e69
--- /dev/null
+++ b/data/mapObjects/ceruleanhousetrashed.asm
@@ -0,0 +1,19 @@
+CeruleanHouseTrashedObject: ; 0x1d6bf (size=43)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $2, $0, $ff
+ db $7, $3, $0, $ff
+ db $0, $3, $7, $ff
+
+ db $1 ; signs
+ db $0, $3, $3 ; CeruleanHouseTrashedText3
+
+ db $2 ; people
+ db SPRITE_FISHER, $1 + 4, $2 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GIRL, $6 + 4, $5 + 4, $fe, $2, $2 ; person
+
+ ; warp-to
+ EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $2
+ EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $3
+ EVENT_DISP TRASHED_HOUSE_WIDTH, $0, $3
diff --git a/data/mapObjects/ceruleanmart.asm b/data/mapObjects/ceruleanmart.asm
new file mode 100755
index 00000000..bc8c4818
--- /dev/null
+++ b/data/mapObjects/ceruleanmart.asm
@@ -0,0 +1,17 @@
+CeruleanMartObject: ; 0x5c8a8 (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $5, $ff
+ db $7, $4, $5, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $3 + 4, $fe, $1, $2 ; person
+ db SPRITE_LASS, $2 + 4, $6 + 4, $fe, $2, $3 ; person
+
+ ; warp-to
+ EVENT_DISP CERULEAN_MART_WIDTH, $7, $3
+ EVENT_DISP CERULEAN_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/ceruleanpokecenter.asm b/data/mapObjects/ceruleanpokecenter.asm
new file mode 100755
index 00000000..c7e8cb8b
--- /dev/null
+++ b/data/mapObjects/ceruleanpokecenter.asm
@@ -0,0 +1,18 @@
+CeruleanPokecenterObject: ; 0x5c65f (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $2, $ff
+ db $7, $4, $2, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $a + 4, $fe, $0, $2 ; person
+ db SPRITE_GENTLEMAN, $3 + 4, $4 + 4, $ff, $d0, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/cinnabargym.asm b/data/mapObjects/cinnabargym.asm
new file mode 100755
index 00000000..3965272a
--- /dev/null
+++ b/data/mapObjects/cinnabargym.asm
@@ -0,0 +1,23 @@
+CinnabarGymObject: ; 0x75acc (size=90)
+ db $2e ; border block
+
+ db $2 ; warps
+ db $11, $10, $1, $ff
+ db $11, $11, $1, $ff
+
+ db $0 ; signs
+
+ db $9 ; people
+ db SPRITE_FAT_BALD_GUY, $3 + 4, $3 + 4, $ff, $d0, $41, BLAINE + $C8, $1 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $11 + 4, $ff, $d0, $42, SUPER_NERD + $C8, $9 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $11 + 4, $ff, $d0, $43, BURGLAR + $C8, $4 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $b + 4, $ff, $d0, $44, SUPER_NERD + $C8, $a ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $b + 4, $ff, $d0, $45, BURGLAR + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $b + 4, $ff, $d0, $46, SUPER_NERD + $C8, $b ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $3 + 4, $ff, $d0, $47, BURGLAR + $C8, $6 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d0, $48, SUPER_NERD + $C8, $c ; trainer
+ db SPRITE_GYM_HELPER, $d + 4, $10 + 4, $ff, $d0, $9 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_GYM_WIDTH, $11, $10
+ EVENT_DISP CINNABAR_GYM_WIDTH, $11, $11
diff --git a/data/mapObjects/cinnabarisland.asm b/data/mapObjects/cinnabarisland.asm
new file mode 100755
index 00000000..f2a53d7c
--- /dev/null
+++ b/data/mapObjects/cinnabarisland.asm
@@ -0,0 +1,27 @@
+CinnabarIslandObject: ; 0x1c022 (size=71)
+ db $43 ; border block
+
+ db $5 ; warps
+ db $3, $6, $1, MANSION_1
+ db $3, $12, $0, CINNABAR_GYM
+ db $9, $6, $0, CINNABAR_LAB_1
+ db $b, $b, $0, CINNABAR_POKECENTER
+ db $b, $f, $0, CINNABAR_MART
+
+ db $5 ; signs
+ db $5, $9, $3 ; CinnabarIslandText3
+ db $b, $10, $4 ; MartSignText
+ db $b, $c, $5 ; PokeCenterSignText
+ db $b, $9, $6 ; CinnabarIslandText6
+ db $3, $d, $7 ; CinnabarIslandText7
+
+ db $2 ; people
+ db SPRITE_GIRL, $5 + 4, $c + 4, $fe, $2, $1 ; person
+ db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $6 ; MANSION_1
+ EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $12 ; CINNABAR_GYM
+ EVENT_DISP CINNABAR_ISLAND_WIDTH, $9, $6 ; CINNABAR_LAB_1
+ EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $b ; CINNABAR_POKECENTER
+ EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $f ; CINNABAR_MART
diff --git a/data/mapObjects/cinnabarmart.asm b/data/mapObjects/cinnabarmart.asm
new file mode 100755
index 00000000..b976d0be
--- /dev/null
+++ b/data/mapObjects/cinnabarmart.asm
@@ -0,0 +1,17 @@
+CinnabarMartObject: ; 0x75e91 (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $4, $ff
+ db $7, $4, $4, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $ff, $2 ; person
+ db SPRITE_OAK_AIDE, $4 + 4, $3 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_MART_WIDTH, $7, $3
+ EVENT_DISP CINNABAR_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/cinnabarpokecenter.asm b/data/mapObjects/cinnabarpokecenter.asm
new file mode 100755
index 00000000..35a344e2
--- /dev/null
+++ b/data/mapObjects/cinnabarpokecenter.asm
@@ -0,0 +1,18 @@
+CinnabarPokecenterObject: ; 0x75e46 (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $3, $ff
+ db $7, $4, $3, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_LASS, $4 + 4, $9 + 4, $fe, $0, $2 ; person
+ db SPRITE_GENTLEMAN, $6 + 4, $2 + 4, $ff, $ff, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/copycatshouse1f.asm b/data/mapObjects/copycatshouse1f.asm
new file mode 100755
index 00000000..ccd839f8
--- /dev/null
+++ b/data/mapObjects/copycatshouse1f.asm
@@ -0,0 +1,19 @@
+CopycatsHouse1FObject: ; 0x75ee3 (size=46)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $2, $0, $ff
+ db $7, $3, $0, $ff
+ db $1, $7, $0, COPYCATS_HOUSE_2F
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MOM_GEISHA, $2 + 4, $2 + 4, $ff, $d0, $1 ; person
+ db SPRITE_FAT_BALD_GUY, $4 + 4, $5 + 4, $ff, $d2, $2 ; person
+ db SPRITE_CLEFAIRY, $4 + 4, $1 + 4, $fe, $1, $3 ; person
+
+ ; warp-to
+ EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $2
+ EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $3
+ EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $1, $7 ; COPYCATS_HOUSE_2F
diff --git a/data/mapObjects/copycatshouse2f.asm b/data/mapObjects/copycatshouse2f.asm
new file mode 100755
index 00000000..3d0432c6
--- /dev/null
+++ b/data/mapObjects/copycatshouse2f.asm
@@ -0,0 +1,19 @@
+CopycatsHouse2FObject: ; 0x5cd21 (size=48)
+ db $a ; border block
+
+ db $1 ; warps
+ db $1, $7, $2, COPYCATS_HOUSE_1F
+
+ db $2 ; signs
+ db $5, $3, $6 ; CopycatsHouse2FText6
+ db $1, $0, $7 ; CopycatsHouse2FText7
+
+ db $5 ; people
+ db SPRITE_BRUNETTE_GIRL, $3 + 4, $4 + 4, $fe, $0, $1 ; person
+ db SPRITE_BIRD, $6 + 4, $4 + 4, $fe, $2, $2 ; person
+ db SPRITE_SLOWBRO, $1 + 4, $5 + 4, $ff, $d0, $3 ; person
+ db SPRITE_BIRD, $0 + 4, $2 + 4, $ff, $d0, $4 ; person
+ db SPRITE_CLEFAIRY, $6 + 4, $1 + 4, $ff, $d3, $5 ; person
+
+ ; warp-to
+ EVENT_DISP COPYCATS_HOUSE_2F_WIDTH, $1, $7 ; COPYCATS_HOUSE_1F
diff --git a/data/mapObjects/daycarem.asm b/data/mapObjects/daycarem.asm
new file mode 100755
index 00000000..8311853a
--- /dev/null
+++ b/data/mapObjects/daycarem.asm
@@ -0,0 +1,15 @@
+DayCareMObject: ; 0x56459 (size=26)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $4, $ff
+ db $7, $3, $4, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
+
+ ; warp-to
+ EVENT_DISP DAYCAREM_WIDTH, $7, $2
+ EVENT_DISP DAYCAREM_WIDTH, $7, $3
diff --git a/data/mapObjects/diglettscave.asm b/data/mapObjects/diglettscave.asm
new file mode 100755
index 00000000..858005ce
--- /dev/null
+++ b/data/mapObjects/diglettscave.asm
@@ -0,0 +1,14 @@
+DiglettsCaveObject: ; 0x61f72 (size=20)
+ db $19 ; border block
+
+ db $2 ; warps
+ db $5, $5, $2, DIGLETTS_CAVE_EXIT
+ db $1f, $25, $2, DIGLETTS_CAVE_ENTRANCE
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP DIGLETTS_CAVE_WIDTH, $5, $5 ; DIGLETTS_CAVE_EXIT
+ EVENT_DISP DIGLETTS_CAVE_WIDTH, $1f, $25 ; DIGLETTS_CAVE_ENTRANCE
diff --git a/data/mapObjects/diglettscaveroute11.asm b/data/mapObjects/diglettscaveroute11.asm
new file mode 100755
index 00000000..e232b1cc
--- /dev/null
+++ b/data/mapObjects/diglettscaveroute11.asm
@@ -0,0 +1,17 @@
+DiglettsCaveEntranceRoute11Object: ; 0x1e5ca (size=34)
+ db $7d ; border block
+
+ db $3 ; warps
+ db $7, $2, $4, $ff
+ db $7, $3, $4, $ff
+ db $4, $4, $1, DIGLETTS_CAVE
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $2
+ EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $3
+ EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $4, $4 ; DIGLETTS_CAVE
diff --git a/data/mapObjects/diglettscaveroute2.asm b/data/mapObjects/diglettscaveroute2.asm
new file mode 100755
index 00000000..2e86600f
--- /dev/null
+++ b/data/mapObjects/diglettscaveroute2.asm
@@ -0,0 +1,17 @@
+DiglettsCaveRoute2Object: ; 0x1debf (size=34)
+ db $7d ; border block
+
+ db $3 ; warps
+ db $7, $2, $0, $ff
+ db $7, $3, $0, $ff
+ db $4, $4, $0, DIGLETTS_CAVE
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $2
+ EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $3
+ EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $4, $4 ; DIGLETTS_CAVE
diff --git a/data/mapObjects/fanclub.asm b/data/mapObjects/fanclub.asm
new file mode 100755
index 00000000..15b9a89f
--- /dev/null
+++ b/data/mapObjects/fanclub.asm
@@ -0,0 +1,22 @@
+FanClubObject: ; 0x59c97 (size=62)
+ db $d ; border block
+
+ db $2 ; warps
+ db $7, $2, $1, $ff
+ db $7, $3, $1, $ff
+
+ db $2 ; signs
+ db $0, $1, $7 ; FanClubText7
+ db $0, $6, $8 ; FanClubText8
+
+ db $6 ; people
+ db SPRITE_FISHER2, $3 + 4, $6 + 4, $ff, $d2, $1 ; person
+ db SPRITE_GIRL, $3 + 4, $1 + 4, $ff, $d3, $2 ; person
+ db SPRITE_CLEFAIRY, $4 + 4, $6 + 4, $ff, $d2, $3 ; person
+ db SPRITE_SEEL, $4 + 4, $1 + 4, $ff, $d3, $4 ; person
+ db SPRITE_GENTLEMAN, $1 + 4, $3 + 4, $ff, $d0, $5 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $1 + 4, $5 + 4, $ff, $d0, $6 ; person
+
+ ; warp-to
+ EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $2
+ EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $3
diff --git a/data/mapObjects/fightingdojo.asm b/data/mapObjects/fightingdojo.asm
new file mode 100755
index 00000000..2a82c12c
--- /dev/null
+++ b/data/mapObjects/fightingdojo.asm
@@ -0,0 +1,21 @@
+FightingDojoObject: ; 0x5cf9b (size=72)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $b, $4, $1, $ff
+ db $b, $5, $1, $ff
+
+ db $0 ; signs
+
+ db $7 ; people
+ db SPRITE_HIKER, $3 + 4, $5 + 4, $ff, $d0, $41, BLACKBELT + $C8, $1 ; trainer
+ db SPRITE_HIKER, $4 + 4, $3 + 4, $ff, $d3, $42, BLACKBELT + $C8, $2 ; trainer
+ db SPRITE_HIKER, $6 + 4, $3 + 4, $ff, $d3, $43, BLACKBELT + $C8, $3 ; trainer
+ db SPRITE_HIKER, $5 + 4, $5 + 4, $ff, $d2, $44, BLACKBELT + $C8, $4 ; trainer
+ db SPRITE_HIKER, $7 + 4, $5 + 4, $ff, $d2, $45, BLACKBELT + $C8, $5 ; trainer
+ db SPRITE_BALL, $1 + 4, $4 + 4, $ff, $ff, $6 ; person
+ db SPRITE_BALL, $1 + 4, $5 + 4, $ff, $ff, $7 ; person
+
+ ; warp-to
+ EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $4
+ EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $5
diff --git a/data/mapObjects/fuchsiacity.asm b/data/mapObjects/fuchsiacity.asm
new file mode 100755
index 00000000..f6ce2ec3
--- /dev/null
+++ b/data/mapObjects/fuchsiacity.asm
@@ -0,0 +1,52 @@
+FuchsiaCityObject: ; 0x18bd4 (size=178)
+ db $f ; border block
+
+ db $9 ; warps
+ db $d, $5, $0, FUCHSIA_MART
+ db $1b, $b, $0, FUCHSIA_HOUSE_1
+ db $1b, $13, $0, FUCHSIA_POKECENTER
+ db $1b, $1b, $0, FUCHSIA_HOUSE_2
+ db $3, $12, $0, SAFARI_ZONE_ENTRANCE
+ db $1b, $5, $0, FUCHSIA_GYM
+ db $d, $16, $0, FUCHSIA_MEETING_ROOM
+ db $1b, $1f, $1, FUCHSIA_HOUSE_3
+ db $18, $1f, $0, FUCHSIA_HOUSE_3
+
+ db $e ; signs
+ db $17, $f, $b ; FuchsiaCityText11
+ db $f, $19, $c ; FuchsiaCityText12
+ db $5, $11, $d ; FuchsiaCityText13
+ db $d, $6, $e ; MartSignText
+ db $1b, $14, $f ; PokeCenterSignText
+ db $1d, $1b, $10 ; FuchsiaCityText16
+ db $f, $15, $11 ; FuchsiaCityText17
+ db $1d, $5, $12 ; FuchsiaCityText18
+ db $7, $21, $13 ; FuchsiaCityText19
+ db $7, $1b, $14 ; FuchsiaCityText20
+ db $7, $d, $15 ; FuchsiaCityText21
+ db $d, $1f, $16 ; FuchsiaCityText22
+ db $f, $d, $17 ; FuchsiaCityText23
+ db $7, $7, $18 ; FuchsiaCityText24
+
+ db $a ; people
+ db SPRITE_BUG_CATCHER, $c + 4, $a + 4, $fe, $2, $1 ; person
+ db SPRITE_GAMBLER, $11 + 4, $1c + 4, $fe, $2, $2 ; person
+ db SPRITE_FISHER2, $e + 4, $1e + 4, $ff, $d0, $3 ; person
+ db SPRITE_BUG_CATCHER, $8 + 4, $18 + 4, $ff, $d1, $4 ; person
+ db SPRITE_CLEFAIRY, $5 + 4, $1f + 4, $fe, $0, $5 ; person
+ db SPRITE_BALL, $6 + 4, $19 + 4, $ff, $ff, $6 ; person
+ db SPRITE_SLOWBRO, $6 + 4, $c + 4, $fe, $2, $7 ; person
+ db SPRITE_SLOWBRO, $c + 4, $1e + 4, $fe, $2, $8 ; person
+ db SPRITE_SEEL, $11 + 4, $8 + 4, $fe, $0, $9 ; person
+ db SPRITE_OMANYTE, $5 + 4, $6 + 4, $ff, $ff, $a ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $5 ; FUCHSIA_MART
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $b ; FUCHSIA_HOUSE_1
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $13 ; FUCHSIA_POKECENTER
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1b ; FUCHSIA_HOUSE_2
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $3, $12 ; SAFARI_ZONE_ENTRANCE
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $5 ; FUCHSIA_GYM
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $16 ; FUCHSIA_MEETING_ROOM
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1f ; FUCHSIA_HOUSE_3
+ EVENT_DISP FUCHSIA_CITY_WIDTH, $18, $1f ; FUCHSIA_HOUSE_3
diff --git a/data/mapObjects/fuchsiagym.asm b/data/mapObjects/fuchsiagym.asm
new file mode 100755
index 00000000..2ee62951
--- /dev/null
+++ b/data/mapObjects/fuchsiagym.asm
@@ -0,0 +1,22 @@
+FuchsiaGymObject: ; 0x75658 (size=82)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $11, $4, $5, $ff
+ db $11, $5, $5, $ff
+
+ db $0 ; signs
+
+ db $8 ; people
+ db SPRITE_BLACKBELT, $a + 4, $4 + 4, $ff, $d0, $41, KOGA + $C8, $1 ; trainer
+ db SPRITE_ROCKER, $d + 4, $8 + 4, $ff, $d0, $42, JUGGLER + $C8, $7 ; trainer
+ db SPRITE_ROCKER, $8 + 4, $7 + 4, $ff, $d3, $43, JUGGLER + $C8, $3 ; trainer
+ db SPRITE_ROCKER, $c + 4, $1 + 4, $ff, $d0, $44, JUGGLER + $C8, $8 ; trainer
+ db SPRITE_ROCKER, $5 + 4, $3 + 4, $ff, $d1, $45, TAMER + $C8, $1 ; trainer
+ db SPRITE_ROCKER, $2 + 4, $8 + 4, $ff, $d0, $46, TAMER + $C8, $2 ; trainer
+ db SPRITE_ROCKER, $7 + 4, $2 + 4, $ff, $d2, $47, JUGGLER + $C8, $4 ; trainer
+ db SPRITE_GYM_HELPER, $f + 4, $7 + 4, $ff, $d0, $8 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $4
+ EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $5
diff --git a/data/mapObjects/fuchsiahouse1.asm b/data/mapObjects/fuchsiahouse1.asm
new file mode 100755
index 00000000..4e3ec676
--- /dev/null
+++ b/data/mapObjects/fuchsiahouse1.asm
@@ -0,0 +1,17 @@
+FuchsiaHouse1Object: ; 0x75031 (size=38)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $1, $ff
+ db $7, $3, $1, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MOM_GEISHA, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
+ db SPRITE_GAMBLER, $2 + 4, $7 + 4, $ff, $d1, $2 ; person
+ db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $2
+ EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $3
diff --git a/data/mapObjects/fuchsiahouse2.asm b/data/mapObjects/fuchsiahouse2.asm
new file mode 100755
index 00000000..0f32eebe
--- /dev/null
+++ b/data/mapObjects/fuchsiahouse2.asm
@@ -0,0 +1,19 @@
+FuchsiaHouse2Object: ; 0x75180 (size=45)
+ db $17 ; border block
+
+ db $2 ; warps
+ db $7, $4, $3, $ff
+ db $7, $5, $3, $ff
+
+ db $2 ; signs
+ db $3, $4, $4 ; FuchsiaHouse2Text4
+ db $3, $5, $5 ; FuchsiaHouse2Text5
+
+ db $3 ; people
+ db SPRITE_WARDEN, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $82, RARE_CANDY ; item
+ db SPRITE_BOULDER, $4 + 4, $8 + 4, $ff, $10, $3 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $4
+ EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $5
diff --git a/data/mapObjects/fuchsiahouse3.asm b/data/mapObjects/fuchsiahouse3.asm
new file mode 100755
index 00000000..141f895f
--- /dev/null
+++ b/data/mapObjects/fuchsiahouse3.asm
@@ -0,0 +1,17 @@
+FuchsiaHouse3Object: ; 0x56221 (size=34)
+ db $c ; border block
+
+ db $3 ; warps
+ db $0, $2, $8, $ff
+ db $7, $2, $7, $ff
+ db $7, $3, $7, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d3, $1 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $0, $2
+ EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $2
+ EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $3
diff --git a/data/mapObjects/fuchsiamart.asm b/data/mapObjects/fuchsiamart.asm
new file mode 100755
index 00000000..cb859734
--- /dev/null
+++ b/data/mapObjects/fuchsiamart.asm
@@ -0,0 +1,17 @@
+FuchsiaMartObject: ; 0x1dd9b (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $0, $ff
+ db $7, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_FAT_BALD_GUY, $2 + 4, $4 + 4, $ff, $ff, $2 ; person
+ db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $1, $3 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_MART_WIDTH, $7, $3
+ EVENT_DISP FUCHSIA_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/fuchsiameetingroom.asm b/data/mapObjects/fuchsiameetingroom.asm
new file mode 100755
index 00000000..fb243f4b
--- /dev/null
+++ b/data/mapObjects/fuchsiameetingroom.asm
@@ -0,0 +1,17 @@
+FuchsiaMeetingRoomObject: ; 0x756fc (size=38)
+ db $17 ; border block
+
+ db $2 ; warps
+ db $7, $4, $6, $ff
+ db $7, $5, $6, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_WHITE_PLAYER, $1 + 4, $4 + 4, $ff, $d0, $1 ; person
+ db SPRITE_WHITE_PLAYER, $2 + 4, $0 + 4, $ff, $d1, $2 ; person
+ db SPRITE_WHITE_PLAYER, $1 + 4, $a + 4, $ff, $d0, $3 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $4
+ EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $5
diff --git a/data/mapObjects/fuchsiapokecenter.asm b/data/mapObjects/fuchsiapokecenter.asm
new file mode 100755
index 00000000..1efcd255
--- /dev/null
+++ b/data/mapObjects/fuchsiapokecenter.asm
@@ -0,0 +1,18 @@
+FuchsiaPokecenterObject: ; 0x7507d (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $2, $ff
+ db $7, $4, $2, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_ROCKER, $3 + 4, $2 + 4, $ff, $ff, $2 ; person
+ db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $2, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/gary.asm b/data/mapObjects/gary.asm
new file mode 100755
index 00000000..e94ad9b3
--- /dev/null
+++ b/data/mapObjects/gary.asm
@@ -0,0 +1,20 @@
+GaryObject: ; 0x7612f (size=48)
+ db $3 ; border block
+
+ db $4 ; warps
+ db $7, $3, $1, LANCES_ROOM
+ db $7, $4, $2, LANCES_ROOM
+ db $0, $3, $0, HALL_OF_FAME
+ db $0, $4, $0, HALL_OF_FAME
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BLUE, $2 + 4, $4 + 4, $ff, $d0, $1 ; person
+ db SPRITE_OAK, $7 + 4, $3 + 4, $ff, $d1, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $3 ; LANCES_ROOM
+ EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $4 ; LANCES_ROOM
+ EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $3 ; HALL_OF_FAME
+ EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $4 ; HALL_OF_FAME
diff --git a/data/mapObjects/halloffameroom.asm b/data/mapObjects/halloffameroom.asm
new file mode 100755
index 00000000..6d528135
--- /dev/null
+++ b/data/mapObjects/halloffameroom.asm
@@ -0,0 +1,15 @@
+HallofFameRoomObject: ; 0x5a571 (size=26)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $7, $4, $2, CHAMPIONS_ROOM
+ db $7, $5, $3, CHAMPIONS_ROOM
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP HALL_OF_FAME_WIDTH, $7, $4 ; CHAMPIONS_ROOM
+ EVENT_DISP HALL_OF_FAME_WIDTH, $7, $5 ; CHAMPIONS_ROOM
diff --git a/data/mapObjects/indigoplateau.asm b/data/mapObjects/indigoplateau.asm
new file mode 100755
index 00000000..6970963f
--- /dev/null
+++ b/data/mapObjects/indigoplateau.asm
@@ -0,0 +1,14 @@
+IndigoPlateauObject: ; 0x50936 (size=20)
+ db $e ; border block
+
+ db $2 ; warps
+ db $5, $9, $0, INDIGO_PLATEAU_LOBBY
+ db $5, $a, $0, INDIGO_PLATEAU_LOBBY
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $9 ; INDIGO_PLATEAU_LOBBY
+ EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $a ; INDIGO_PLATEAU_LOBBY
diff --git a/data/mapObjects/indigoplateaulobby.asm b/data/mapObjects/indigoplateaulobby.asm
new file mode 100755
index 00000000..6b9c1e99
--- /dev/null
+++ b/data/mapObjects/indigoplateaulobby.asm
@@ -0,0 +1,21 @@
+IndigoPlateauLobbyObject: ; 0x19c95 (size=58)
+ db $0 ; border block
+
+ db $3 ; warps
+ db $b, $7, $0, $ff
+ db $b, $8, $1, $ff
+ db $0, $8, $0, LORELEIS_ROOM
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_NURSE, $5 + 4, $7 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GYM_HELPER, $9 + 4, $4 + 4, $ff, $d3, $2 ; person
+ db SPRITE_LASS, $1 + 4, $5 + 4, $ff, $d0, $3 ; person
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $4 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $6 + 4, $d + 4, $ff, $d0, $5 ; person
+
+ ; warp-to
+ EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $7
+ EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $8
+ EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $0, $8 ; LORELEIS_ROOM
diff --git a/data/mapObjects/lab1.asm b/data/mapObjects/lab1.asm
new file mode 100755
index 00000000..52db2e24
--- /dev/null
+++ b/data/mapObjects/lab1.asm
@@ -0,0 +1,25 @@
+Lab1Object: ; 0x75bb3 (size=62)
+ db $17 ; border block
+
+ db $5 ; warps
+ db $7, $2, $2, $ff
+ db $7, $3, $2, $ff
+ db $4, $8, $0, CINNABAR_LAB_2
+ db $4, $c, $0, CINNABAR_LAB_3
+ db $4, $10, $0, CINNABAR_LAB_4
+
+ db $4 ; signs
+ db $2, $3, $2 ; Lab1Text2
+ db $4, $9, $3 ; Lab1Text3
+ db $4, $d, $4 ; Lab1Text4
+ db $4, $11, $5 ; Lab1Text5
+
+ db $1 ; people
+ db SPRITE_FISHER, $3 + 4, $1 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $2
+ EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $3
+ EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $8 ; CINNABAR_LAB_2
+ EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $c ; CINNABAR_LAB_3
+ EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $10 ; CINNABAR_LAB_4
diff --git a/data/mapObjects/lab2.asm b/data/mapObjects/lab2.asm
new file mode 100755
index 00000000..52556c69
--- /dev/null
+++ b/data/mapObjects/lab2.asm
@@ -0,0 +1,17 @@
+Lab2Object: ; 0x75c45 (size=38)
+ db $17 ; border block
+
+ db $2 ; warps
+ db $7, $2, $2, CINNABAR_LAB_1
+ db $7, $3, $2, CINNABAR_LAB_1
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_OLD_PERSON, $4 + 4, $1 + 4, $ff, $ff, $2 ; person
+ db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $d1, $3 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $2 ; CINNABAR_LAB_1
+ EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $3 ; CINNABAR_LAB_1
diff --git a/data/mapObjects/lab3.asm b/data/mapObjects/lab3.asm
new file mode 100755
index 00000000..8b4396cc
--- /dev/null
+++ b/data/mapObjects/lab3.asm
@@ -0,0 +1,19 @@
+Lab3Object: ; 0x75cec (size=41)
+ db $17 ; border block
+
+ db $2 ; warps
+ db $7, $2, $3, CINNABAR_LAB_1
+ db $7, $3, $3, CINNABAR_LAB_1
+
+ db $3 ; signs
+ db $4, $0, $3 ; Lab3Text3
+ db $4, $1, $4 ; Lab3Text4
+ db $1, $2, $5 ; Lab3Text5
+
+ db $2 ; people
+ db SPRITE_OAK_AIDE, $2 + 4, $7 + 4, $ff, $d0, $1 ; person
+ db SPRITE_OAK_AIDE, $3 + 4, $2 + 4, $fe, $2, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $2 ; CINNABAR_LAB_1
+ EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $3 ; CINNABAR_LAB_1
diff --git a/data/mapObjects/lab4.asm b/data/mapObjects/lab4.asm
new file mode 100755
index 00000000..66b73ebd
--- /dev/null
+++ b/data/mapObjects/lab4.asm
@@ -0,0 +1,16 @@
+Lab4Object: ; 0x75df0 (size=32)
+ db $17 ; border block
+
+ db $2 ; warps
+ db $7, $2, $4, CINNABAR_LAB_1
+ db $7, $3, $4, CINNABAR_LAB_1
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_OAK_AIDE, $2 + 4, $5 + 4, $fe, $2, $1 ; person
+ db SPRITE_OAK_AIDE, $6 + 4, $7 + 4, $ff, $d1, $2 ; person
+
+ ; warp-to
+ EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $2 ; CINNABAR_LAB_1
+ EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $3 ; CINNABAR_LAB_1
diff --git a/data/mapObjects/lance.asm b/data/mapObjects/lance.asm
new file mode 100755
index 00000000..60d8815a
--- /dev/null
+++ b/data/mapObjects/lance.asm
@@ -0,0 +1,17 @@
+LanceObject: ; 0x5a3c5 (size=36)
+ db $3 ; border block
+
+ db $3 ; warps
+ db $10, $18, $2, AGATHAS_ROOM
+ db $0, $5, $0, CHAMPIONS_ROOM
+ db $0, $6, $0, CHAMPIONS_ROOM
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_LANCE, $1 + 4, $6 + 4, $ff, $d0, $41, LANCE + $C8, $1 ; trainer
+
+ ; warp-to
+ EVENT_DISP LANCES_ROOM_WIDTH, $10, $18 ; AGATHAS_ROOM
+ EVENT_DISP LANCES_ROOM_WIDTH, $0, $5 ; CHAMPIONS_ROOM
+ EVENT_DISP LANCES_ROOM_WIDTH, $0, $6 ; CHAMPIONS_ROOM
diff --git a/data/mapObjects/lavenderhouse1.asm b/data/mapObjects/lavenderhouse1.asm
new file mode 100755
index 00000000..4472c7ed
--- /dev/null
+++ b/data/mapObjects/lavenderhouse1.asm
@@ -0,0 +1,20 @@
+LavenderHouse1Object: ; 0x1d96a (size=56)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $2, $ff
+ db $7, $3, $2, $ff
+
+ db $0 ; signs
+
+ db $6 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $ff, $1 ; person
+ db SPRITE_LITTLE_GIRL, $3 + 4, $6 + 4, $ff, $d0, $2 ; person
+ db SPRITE_SLOWBRO, $4 + 4, $6 + 4, $ff, $d1, $3 ; person
+ db SPRITE_SLOWBRO, $3 + 4, $1 + 4, $ff, $ff, $4 ; person
+ db SPRITE_MR_FUJI, $1 + 4, $3 + 4, $ff, $ff, $5 ; person
+ db SPRITE_BOOK_MAP_DEX, $3 + 4, $3 + 4, $ff, $ff, $6 ; person
+
+ ; warp-to
+ EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $2
+ EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $3
diff --git a/data/mapObjects/lavenderhouse2.asm b/data/mapObjects/lavenderhouse2.asm
new file mode 100755
index 00000000..cbb7dda7
--- /dev/null
+++ b/data/mapObjects/lavenderhouse2.asm
@@ -0,0 +1,16 @@
+LavenderHouse2Object: ; 0x1d9e6 (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $4, $ff
+ db $7, $3, $4, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_SLOWBRO, $5 + 4, $3 + 4, $ff, $d1, $1 ; person
+ db SPRITE_BRUNETTE_GIRL, $4 + 4, $2 + 4, $ff, $d3, $2 ; person
+
+ ; warp-to
+ EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $2
+ EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $3
diff --git a/data/mapObjects/lavendermart.asm b/data/mapObjects/lavendermart.asm
new file mode 100755
index 00000000..79d80c35
--- /dev/null
+++ b/data/mapObjects/lavendermart.asm
@@ -0,0 +1,17 @@
+LavenderMartObject: ; 0x5c95d (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $3, $ff
+ db $7, $4, $3, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BALDING_GUY, $4 + 4, $3 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $7 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP LAVENDER_MART_WIDTH, $7, $3
+ EVENT_DISP LAVENDER_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/lavenderpokecenter.asm b/data/mapObjects/lavenderpokecenter.asm
new file mode 100755
index 00000000..a35bf4dc
--- /dev/null
+++ b/data/mapObjects/lavenderpokecenter.asm
@@ -0,0 +1,18 @@
+LavenderPokecenterObject: ; 0x5c8f4 (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $0, $ff
+ db $7, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GENTLEMAN, $3 + 4, $5 + 4, $ff, $ff, $2 ; person
+ db SPRITE_LITTLE_GIRL, $6 + 4, $2 + 4, $fe, $1, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/lavendertown.asm b/data/mapObjects/lavendertown.asm
new file mode 100755
index 00000000..7dc75512
--- /dev/null
+++ b/data/mapObjects/lavendertown.asm
@@ -0,0 +1,31 @@
+LavenderTownObject: ; 0x4402d (size=88)
+ db $2c ; border block
+
+ db $6 ; warps
+ db $5, $3, $0, LAVENDER_POKECENTER
+ db $5, $e, $0, POKEMONTOWER_1
+ db $9, $7, $0, LAVENDER_HOUSE_1
+ db $d, $f, $0, LAVENDER_MART
+ db $d, $3, $0, LAVENDER_HOUSE_2
+ db $d, $7, $0, NAME_RATERS_HOUSE
+
+ db $6 ; signs
+ db $9, $b, $4 ; LavenderTownText4
+ db $3, $9, $5 ; LavenderTownText5
+ db $d, $10, $6 ; MartSignText
+ db $5, $4, $7 ; PokeCenterSignText
+ db $9, $5, $8 ; LavenderTownText8
+ db $7, $11, $9 ; LavenderTownText9
+
+ db $3 ; people
+ db SPRITE_LITTLE_GIRL, $9 + 4, $f + 4, $fe, $0, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $9 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $8 + 4, $fe, $2, $3 ; person
+
+ ; warp-to
+ EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $3 ; LAVENDER_POKECENTER
+ EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $e ; POKEMONTOWER_1
+ EVENT_DISP LAVENDER_TOWN_WIDTH, $9, $7 ; LAVENDER_HOUSE_1
+ EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $f ; LAVENDER_MART
+ EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $3 ; LAVENDER_HOUSE_2
+ EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $7 ; NAME_RATERS_HOUSE
diff --git a/data/mapObjects/lorelei.asm b/data/mapObjects/lorelei.asm
new file mode 100755
index 00000000..3cf1f450
--- /dev/null
+++ b/data/mapObjects/lorelei.asm
@@ -0,0 +1,19 @@
+LoreleiObject: ; 0x76280 (size=44)
+ db $3 ; border block
+
+ db $4 ; warps
+ db $b, $4, $2, INDIGO_PLATEAU_LOBBY
+ db $b, $5, $2, INDIGO_PLATEAU_LOBBY
+ db $0, $4, $0, BRUNOS_ROOM
+ db $0, $5, $1, BRUNOS_ROOM
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_LORELEI, $2 + 4, $5 + 4, $ff, $d0, $41, LORELEI + $C8, $1 ; trainer
+
+ ; warp-to
+ EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $4 ; INDIGO_PLATEAU_LOBBY
+ EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $5 ; INDIGO_PLATEAU_LOBBY
+ EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $4 ; BRUNOS_ROOM
+ EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $5 ; BRUNOS_ROOM
diff --git a/data/mapObjects/mansion1.asm b/data/mapObjects/mansion1.asm
new file mode 100755
index 00000000..426be00b
--- /dev/null
+++ b/data/mapObjects/mansion1.asm
@@ -0,0 +1,29 @@
+Mansion1Object: ; 0x443a4 (size=90)
+ db $2e ; border block
+
+ db $8 ; warps
+ db $1b, $4, $0, $ff
+ db $1b, $5, $0, $ff
+ db $1b, $6, $0, $ff
+ db $1b, $7, $0, $ff
+ db $a, $5, $0, MANSION_2
+ db $17, $15, $0, MANSION_4
+ db $1b, $1a, $0, $ff
+ db $1b, $1b, $0, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_OAK_AIDE, $11 + 4, $11 + 4, $ff, $d2, $41, SCIENTIST + $C8, $4 ; trainer
+ db SPRITE_BALL, $3 + 4, $e + 4, $ff, $ff, $82, ESCAPE_ROPE ; item
+ db SPRITE_BALL, $15 + 4, $12 + 4, $ff, $ff, $83, CARBOS ; item
+
+ ; warp-to
+ EVENT_DISP MANSION_1_WIDTH, $1b, $4
+ EVENT_DISP MANSION_1_WIDTH, $1b, $5
+ EVENT_DISP MANSION_1_WIDTH, $1b, $6
+ EVENT_DISP MANSION_1_WIDTH, $1b, $7
+ EVENT_DISP MANSION_1_WIDTH, $a, $5 ; MANSION_2
+ EVENT_DISP MANSION_1_WIDTH, $17, $15 ; MANSION_4
+ EVENT_DISP MANSION_1_WIDTH, $1b, $1a
+ EVENT_DISP MANSION_1_WIDTH, $1b, $1b
diff --git a/data/mapObjects/mansion2.asm b/data/mapObjects/mansion2.asm
new file mode 100755
index 00000000..c8621ba4
--- /dev/null
+++ b/data/mapObjects/mansion2.asm
@@ -0,0 +1,22 @@
+Mansion2Object: ; 0x520d1 (size=63)
+ db $1 ; border block
+
+ db $4 ; warps
+ db $a, $5, $4, MANSION_1
+ db $a, $7, $0, MANSION_3
+ db $e, $19, $2, MANSION_3
+ db $1, $6, $1, MANSION_3
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $3 + 4, $fe, $2, $41, BURGLAR + $C8, $7 ; trainer
+ db SPRITE_BALL, $7 + 4, $1c + 4, $ff, $ff, $82, CALCIUM ; item
+ db SPRITE_BOOK_MAP_DEX, $2 + 4, $12 + 4, $ff, $ff, $3 ; person
+ db SPRITE_BOOK_MAP_DEX, $16 + 4, $3 + 4, $ff, $ff, $4 ; person
+
+ ; warp-to
+ EVENT_DISP MANSION_2_WIDTH, $a, $5 ; MANSION_1
+ EVENT_DISP MANSION_2_WIDTH, $a, $7 ; MANSION_3
+ EVENT_DISP MANSION_2_WIDTH, $e, $19 ; MANSION_3
+ EVENT_DISP MANSION_2_WIDTH, $1, $6 ; MANSION_3
diff --git a/data/mapObjects/mansion3.asm b/data/mapObjects/mansion3.asm
new file mode 100755
index 00000000..b8eb7b5c
--- /dev/null
+++ b/data/mapObjects/mansion3.asm
@@ -0,0 +1,21 @@
+Mansion3Object: ; 0x522e6 (size=64)
+ db $1 ; border block
+
+ db $3 ; warps
+ db $a, $7, $1, MANSION_2
+ db $1, $6, $3, MANSION_2
+ db $e, $19, $2, MANSION_2
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $5 + 4, $fe, $2, $41, BURGLAR + $C8, $8 ; trainer
+ db SPRITE_OAK_AIDE, $b + 4, $14 + 4, $ff, $d2, $42, SCIENTIST + $C8, $c ; trainer
+ db SPRITE_BALL, $10 + 4, $1 + 4, $ff, $ff, $83, MAX_POTION ; item
+ db SPRITE_BALL, $5 + 4, $19 + 4, $ff, $ff, $84, IRON ; item
+ db SPRITE_BOOK_MAP_DEX, $c + 4, $6 + 4, $ff, $ff, $5 ; person
+
+ ; warp-to
+ EVENT_DISP MANSION_3_WIDTH, $a, $7 ; MANSION_2
+ EVENT_DISP MANSION_3_WIDTH, $1, $6 ; MANSION_2
+ EVENT_DISP MANSION_3_WIDTH, $e, $19 ; MANSION_2
diff --git a/data/mapObjects/mansion4.asm b/data/mapObjects/mansion4.asm
new file mode 100755
index 00000000..03f226d0
--- /dev/null
+++ b/data/mapObjects/mansion4.asm
@@ -0,0 +1,20 @@
+Mansion4Object: ; 0x52498 (size=69)
+ db $1 ; border block
+
+ db $1 ; warps
+ db $16, $17, $5, MANSION_1
+
+ db $0 ; signs
+
+ db $8 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $17 + 4, $10 + 4, $ff, $ff, $41, BURGLAR + $C8, $9 ; trainer
+ db SPRITE_OAK_AIDE, $b + 4, $1b + 4, $ff, $d0, $42, SCIENTIST + $C8, $d ; trainer
+ db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $83, RARE_CANDY ; item
+ db SPRITE_BALL, $16 + 4, $1 + 4, $ff, $ff, $84, FULL_RESTORE ; item
+ db SPRITE_BALL, $19 + 4, $13 + 4, $ff, $ff, $85, TM_14 ; item
+ db SPRITE_BALL, $4 + 4, $5 + 4, $ff, $ff, $86, TM_22 ; item
+ db SPRITE_BOOK_MAP_DEX, $14 + 4, $10 + 4, $ff, $ff, $7 ; person
+ db SPRITE_BALL, $d + 4, $5 + 4, $ff, $ff, $88, SECRET_KEY ; item
+
+ ; warp-to
+ EVENT_DISP MANSION_4_WIDTH, $16, $17 ; MANSION_1
diff --git a/data/mapObjects/mtmoon1.asm b/data/mapObjects/mtmoon1.asm
new file mode 100755
index 00000000..afb83686
--- /dev/null
+++ b/data/mapObjects/mtmoon1.asm
@@ -0,0 +1,34 @@
+MtMoon1Object: ; 0x49b06 (size=145)
+ db $3 ; border block
+
+ db $5 ; warps
+ db $23, $e, $1, $ff
+ db $23, $f, $1, $ff
+ db $5, $5, $0, MT_MOON_2
+ db $b, $11, $2, MT_MOON_2
+ db $f, $19, $3, MT_MOON_2
+
+ db $1 ; signs
+ db $17, $f, $e ; MtMoon1Text14
+
+ db $d ; people
+ db SPRITE_HIKER, $6 + 4, $5 + 4, $ff, $d0, $41, HIKER + $C8, $1 ; trainer
+ db SPRITE_BUG_CATCHER, $10 + 4, $c + 4, $ff, $d3, $42, YOUNGSTER + $C8, $3 ; trainer
+ db SPRITE_LASS, $4 + 4, $1e + 4, $ff, $d0, $43, LASS + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $1f + 4, $18 + 4, $ff, $d1, $44, SUPER_NERD + $C8, $1 ; trainer
+ db SPRITE_LASS, $17 + 4, $10 + 4, $ff, $d0, $45, LASS + $C8, $6 ; trainer
+ db SPRITE_BUG_CATCHER, $16 + 4, $7 + 4, $ff, $d0, $46, BUG_CATCHER + $C8, $7 ; trainer
+ db SPRITE_BUG_CATCHER, $1b + 4, $1e + 4, $ff, $d3, $47, BUG_CATCHER + $C8, $8 ; trainer
+ db SPRITE_BALL, $14 + 4, $2 + 4, $ff, $ff, $88, POTION ; item
+ db SPRITE_BALL, $2 + 4, $2 + 4, $ff, $ff, $89, MOON_STONE ; item
+ db SPRITE_BALL, $1f + 4, $23 + 4, $ff, $ff, $8a, RARE_CANDY ; item
+ db SPRITE_BALL, $17 + 4, $24 + 4, $ff, $ff, $8b, ESCAPE_ROPE ; item
+ db SPRITE_BALL, $21 + 4, $14 + 4, $ff, $ff, $8c, POTION ; item
+ db SPRITE_BALL, $20 + 4, $5 + 4, $ff, $ff, $8d, TM_12 ; item
+
+ ; warp-to
+ EVENT_DISP MT_MOON_1_WIDTH, $23, $e
+ EVENT_DISP MT_MOON_1_WIDTH, $23, $f
+ EVENT_DISP MT_MOON_1_WIDTH, $5, $5 ; MT_MOON_2
+ EVENT_DISP MT_MOON_1_WIDTH, $b, $11 ; MT_MOON_2
+ EVENT_DISP MT_MOON_1_WIDTH, $f, $19 ; MT_MOON_2
diff --git a/data/mapObjects/mtmoon2.asm b/data/mapObjects/mtmoon2.asm
new file mode 100755
index 00000000..33313f17
--- /dev/null
+++ b/data/mapObjects/mtmoon2.asm
@@ -0,0 +1,26 @@
+MtMoon2Object: ; 0x51a4d (size=68)
+ db $3 ; border block
+
+ db $8 ; warps
+ db $5, $5, $2, MT_MOON_1
+ db $b, $11, $0, MT_MOON_3
+ db $9, $19, $3, MT_MOON_1
+ db $f, $19, $4, MT_MOON_1
+ db $11, $15, $1, MT_MOON_3
+ db $1b, $d, $2, MT_MOON_3
+ db $3, $17, $3, MT_MOON_3
+ db $3, $1b, $2, $ff
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP MT_MOON_2_WIDTH, $5, $5 ; MT_MOON_1
+ EVENT_DISP MT_MOON_2_WIDTH, $b, $11 ; MT_MOON_3
+ EVENT_DISP MT_MOON_2_WIDTH, $9, $19 ; MT_MOON_1
+ EVENT_DISP MT_MOON_2_WIDTH, $f, $19 ; MT_MOON_1
+ EVENT_DISP MT_MOON_2_WIDTH, $11, $15 ; MT_MOON_3
+ EVENT_DISP MT_MOON_2_WIDTH, $1b, $d ; MT_MOON_3
+ EVENT_DISP MT_MOON_2_WIDTH, $3, $17 ; MT_MOON_3
+ EVENT_DISP MT_MOON_2_WIDTH, $3, $1b
diff --git a/data/mapObjects/mtmoon3.asm b/data/mapObjects/mtmoon3.asm
new file mode 100755
index 00000000..7872c9db
--- /dev/null
+++ b/data/mapObjects/mtmoon3.asm
@@ -0,0 +1,27 @@
+MtMoon3Object: ; 0x49fdb (size=102)
+ db $3 ; border block
+
+ db $4 ; warps
+ db $9, $19, $1, MT_MOON_2
+ db $11, $15, $4, MT_MOON_2
+ db $1b, $f, $5, MT_MOON_2
+ db $7, $5, $6, MT_MOON_2
+
+ db $0 ; signs
+
+ db $9 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $c + 4, $ff, $d3, $41, SUPER_NERD + $C8, $2 ; trainer
+ db SPRITE_ROCKET, $10 + 4, $b + 4, $ff, $d0, $42, ROCKET + $C8, $1 ; trainer
+ db SPRITE_ROCKET, $16 + 4, $f + 4, $ff, $d0, $43, ROCKET + $C8, $2 ; trainer
+ db SPRITE_ROCKET, $b + 4, $1d + 4, $ff, $d1, $44, ROCKET + $C8, $3 ; trainer
+ db SPRITE_ROCKET, $11 + 4, $1d + 4, $ff, $d2, $45, ROCKET + $C8, $4 ; trainer
+ db SPRITE_OMANYTE, $6 + 4, $c + 4, $ff, $ff, $6 ; person
+ db SPRITE_OMANYTE, $6 + 4, $d + 4, $ff, $ff, $7 ; person
+ db SPRITE_BALL, $15 + 4, $19 + 4, $ff, $ff, $88, HP_UP ; item
+ db SPRITE_BALL, $5 + 4, $1d + 4, $ff, $ff, $89, TM_01 ; item
+
+ ; warp-to
+ EVENT_DISP MT_MOON_3_WIDTH, $9, $19 ; MT_MOON_2
+ EVENT_DISP MT_MOON_3_WIDTH, $11, $15 ; MT_MOON_2
+ EVENT_DISP MT_MOON_3_WIDTH, $1b, $f ; MT_MOON_2
+ EVENT_DISP MT_MOON_3_WIDTH, $7, $5 ; MT_MOON_2
diff --git a/data/mapObjects/mtmoonpokecenter.asm b/data/mapObjects/mtmoonpokecenter.asm
new file mode 100755
index 00000000..f5f52f65
--- /dev/null
+++ b/data/mapObjects/mtmoonpokecenter.asm
@@ -0,0 +1,20 @@
+MtMoonPokecenterObject: ; 0x49376 (size=56)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $0, $ff
+ db $7, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $6 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_BUG_CATCHER, $3 + 4, $4 + 4, $ff, $d1, $2 ; person
+ db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $ff, $d1, $3 ; person
+ db SPRITE_FAT_BALD_GUY, $6 + 4, $a + 4, $fe, $2, $4 ; person
+ db SPRITE_CLIPBOARD, $2 + 4, $7 + 4, $ff, $ff, $5 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $6 ; person
+
+ ; warp-to
+ EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/museum1f.asm b/data/mapObjects/museum1f.asm
new file mode 100755
index 00000000..c6fb4b5a
--- /dev/null
+++ b/data/mapObjects/museum1f.asm
@@ -0,0 +1,25 @@
+Museum1FObject: ; 0x5c2c1 (size=74)
+ db $a ; border block
+
+ db $5 ; warps
+ db $7, $a, $0, $ff
+ db $7, $b, $0, $ff
+ db $7, $10, $1, $ff
+ db $7, $11, $1, $ff
+ db $7, $7, $0, MUSEUM_2F
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_OAK_AIDE, $4 + 4, $c + 4, $ff, $d2, $1 ; person
+ db SPRITE_GAMBLER, $4 + 4, $1 + 4, $ff, $ff, $2 ; person
+ db SPRITE_OAK_AIDE, $2 + 4, $f + 4, $ff, $d0, $3 ; person
+ db SPRITE_OAK_AIDE, $4 + 4, $11 + 4, $ff, $ff, $4 ; person
+ db SPRITE_OLD_AMBER, $2 + 4, $10 + 4, $ff, $ff, $5 ; person
+
+ ; warp-to
+ EVENT_DISP MUSEUM_1F_WIDTH, $7, $a
+ EVENT_DISP MUSEUM_1F_WIDTH, $7, $b
+ EVENT_DISP MUSEUM_1F_WIDTH, $7, $10
+ EVENT_DISP MUSEUM_1F_WIDTH, $7, $11
+ EVENT_DISP MUSEUM_1F_WIDTH, $7, $7 ; MUSEUM_2F
diff --git a/data/mapObjects/museum2f.asm b/data/mapObjects/museum2f.asm
new file mode 100755
index 00000000..88ee827c
--- /dev/null
+++ b/data/mapObjects/museum2f.asm
@@ -0,0 +1,19 @@
+Museum2FObject: ; 0x5c34b (size=48)
+ db $a ; border block
+
+ db $1 ; warps
+ db $7, $7, $4, MUSEUM_1F
+
+ db $2 ; signs
+ db $2, $b, $6 ; Museum2FText6
+ db $5, $2, $7 ; Museum2FText7
+
+ db $5 ; people
+ db SPRITE_BUG_CATCHER, $7 + 4, $1 + 4, $fe, $2, $1 ; person
+ db SPRITE_OLD_PERSON, $5 + 4, $0 + 4, $ff, $d0, $2 ; person
+ db SPRITE_OAK_AIDE, $5 + 4, $7 + 4, $ff, $d0, $3 ; person
+ db SPRITE_BRUNETTE_GIRL, $5 + 4, $b + 4, $ff, $ff, $4 ; person
+ db SPRITE_HIKER, $5 + 4, $c + 4, $ff, $d0, $5 ; person
+
+ ; warp-to
+ EVENT_DISP MUSEUM_2F_WIDTH, $7, $7 ; MUSEUM_1F
diff --git a/data/mapObjects/namerater.asm b/data/mapObjects/namerater.asm
new file mode 100755
index 00000000..b0999d61
--- /dev/null
+++ b/data/mapObjects/namerater.asm
@@ -0,0 +1,15 @@
+NameRaterObject: ; 0x1dad6 (size=26)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $5, $ff
+ db $7, $3, $5, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_MR_MASTERBALL, $3 + 4, $5 + 4, $ff, $d2, $1 ; person
+
+ ; warp-to
+ EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $2
+ EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/oakslab.asm b/data/mapObjects/oakslab.asm
new file mode 100755
index 00000000..917c24e2
--- /dev/null
+++ b/data/mapObjects/oakslab.asm
@@ -0,0 +1,25 @@
+OaksLabObject: ; 0x1d40a (size=88)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $b, $4, $2, $ff
+ db $b, $5, $2, $ff
+
+ db $0 ; signs
+
+ db $b ; people
+ db SPRITE_BLUE, $3 + 4, $4 + 4, $ff, $ff, $41, SONY1 + $C8, $1 ; trainer
+ db SPRITE_BALL, $3 + 4, $6 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BALL, $3 + 4, $7 + 4, $ff, $ff, $3 ; person
+ db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $4 ; person
+ db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $5 ; person
+ db SPRITE_BOOK_MAP_DEX, $1 + 4, $2 + 4, $ff, $ff, $6 ; person
+ db SPRITE_BOOK_MAP_DEX, $1 + 4, $3 + 4, $ff, $ff, $7 ; person
+ db SPRITE_OAK, $a + 4, $5 + 4, $ff, $d1, $8 ; person
+ db SPRITE_GIRL, $9 + 4, $1 + 4, $fe, $1, $9 ; person
+ db SPRITE_OAK_AIDE, $a + 4, $2 + 4, $ff, $ff, $a ; person
+ db SPRITE_OAK_AIDE, $a + 4, $8 + 4, $ff, $ff, $b ; person
+
+ ; warp-to
+ EVENT_DISP OAKS_LAB_WIDTH, $b, $4
+ EVENT_DISP OAKS_LAB_WIDTH, $b, $5
diff --git a/data/mapObjects/pallettown.asm b/data/mapObjects/pallettown.asm
new file mode 100755
index 00000000..cef66431
--- /dev/null
+++ b/data/mapObjects/pallettown.asm
@@ -0,0 +1,23 @@
+PalletTownObject: ; 0x182c3 (size=58)
+ db $b ; border block
+
+ db $3 ; warps
+ db $5, $5, $0, REDS_HOUSE_1F
+ db $5, $d, $0, BLUES_HOUSE
+ db $b, $c, $1, OAKS_LAB
+
+ db $4 ; signs
+ db $d, $d, $4 ; PalletTownText4
+ db $9, $7, $5 ; PalletTownText5
+ db $5, $3, $6 ; PalletTownText6
+ db $5, $b, $7 ; PalletTownText7
+
+ db $3 ; people
+ db SPRITE_OAK, $5 + 4, $8 + 4, $ff, $ff, $1 ; person
+ db SPRITE_GIRL, $8 + 4, $3 + 4, $fe, $0, $2 ; person
+ db SPRITE_FISHER2, $e + 4, $b + 4, $fe, $0, $3 ; person
+
+ ; warp-to
+ EVENT_DISP PALLET_TOWN_WIDTH, $5, $5 ; REDS_HOUSE_1F
+ EVENT_DISP PALLET_TOWN_WIDTH, $5, $d ; BLUES_HOUSE
+ EVENT_DISP PALLET_TOWN_WIDTH, $b, $c ; OAKS_LAB
diff --git a/data/mapObjects/pewtercity.asm b/data/mapObjects/pewtercity.asm
new file mode 100755
index 00000000..e971ad50
--- /dev/null
+++ b/data/mapObjects/pewtercity.asm
@@ -0,0 +1,36 @@
+PewterCityObject: ; 0x18577 (size=111)
+ db $a ; border block
+
+ db $7 ; warps
+ db $7, $e, $0, MUSEUM_1F
+ db $5, $13, $2, MUSEUM_1F
+ db $11, $10, $0, PEWTER_GYM
+ db $d, $1d, $0, PEWTER_HOUSE_1
+ db $11, $17, $0, PEWTER_MART
+ db $1d, $7, $0, PEWTER_HOUSE_2
+ db $19, $d, $0, PEWTER_POKECENTER
+
+ db $7 ; signs
+ db $1d, $13, $6 ; PewterCityText6
+ db $13, $21, $7 ; PewterCityText7
+ db $11, $18, $8 ; MartSignText
+ db $19, $e, $9 ; PokeCenterSignText
+ db $9, $f, $a ; PewterCityText10
+ db $11, $b, $b ; PewterCityText11
+ db $17, $19, $c ; PewterCityText12
+
+ db $5 ; people
+ db SPRITE_LASS, $f + 4, $8 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $19 + 4, $11 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $1b + 4, $ff, $ff, $3 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $19 + 4, $1a + 4, $fe, $2, $4 ; person
+ db SPRITE_BUG_CATCHER, $10 + 4, $23 + 4, $ff, $d0, $5 ; person
+
+ ; warp-to
+ EVENT_DISP PEWTER_CITY_WIDTH, $7, $e ; MUSEUM_1F
+ EVENT_DISP PEWTER_CITY_WIDTH, $5, $13 ; MUSEUM_1F
+ EVENT_DISP PEWTER_CITY_WIDTH, $11, $10 ; PEWTER_GYM
+ EVENT_DISP PEWTER_CITY_WIDTH, $d, $1d ; PEWTER_HOUSE_1
+ EVENT_DISP PEWTER_CITY_WIDTH, $11, $17 ; PEWTER_MART
+ EVENT_DISP PEWTER_CITY_WIDTH, $1d, $7 ; PEWTER_HOUSE_2
+ EVENT_DISP PEWTER_CITY_WIDTH, $19, $d ; PEWTER_POKECENTER
diff --git a/data/mapObjects/pewtergym.asm b/data/mapObjects/pewtergym.asm
new file mode 100755
index 00000000..32694fd1
--- /dev/null
+++ b/data/mapObjects/pewtergym.asm
@@ -0,0 +1,17 @@
+PewterGymObject: ; 0x5c52e (size=42)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $d, $4, $2, $ff
+ db $d, $5, $2, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $1 + 4, $4 + 4, $ff, $d0, $41, BROCK + $C8, $1 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $3 + 4, $ff, $d3, $42, JR__TRAINER_M + $C8, $1 ; trainer
+ db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $3 ; person
+
+ ; warp-to
+ EVENT_DISP PEWTER_GYM_WIDTH, $d, $4
+ EVENT_DISP PEWTER_GYM_WIDTH, $d, $5
diff --git a/data/mapObjects/pewterhouse1.asm b/data/mapObjects/pewterhouse1.asm
new file mode 100755
index 00000000..9af4d71b
--- /dev/null
+++ b/data/mapObjects/pewterhouse1.asm
@@ -0,0 +1,17 @@
+PewterHouse1Object: ; 0x1d616 (size=38)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $3, $ff
+ db $7, $3, $3, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_SLOWBRO, $5 + 4, $4 + 4, $ff, $d2, $1 ; person
+ db SPRITE_YOUNG_BOY, $5 + 4, $3 + 4, $ff, $d3, $2 ; person
+ db SPRITE_FAT_BALD_GUY, $2 + 4, $1 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $2
+ EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $3
diff --git a/data/mapObjects/pewterhouse2.asm b/data/mapObjects/pewterhouse2.asm
new file mode 100755
index 00000000..aa48c5bc
--- /dev/null
+++ b/data/mapObjects/pewterhouse2.asm
@@ -0,0 +1,16 @@
+PewterHouse2Object: ; 0x1d659 (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $5, $ff
+ db $7, $3, $5, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BUG_CATCHER, $5 + 4, $4 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $2
+ EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $3
diff --git a/data/mapObjects/pewtermart.asm b/data/mapObjects/pewtermart.asm
new file mode 100755
index 00000000..343f70c1
--- /dev/null
+++ b/data/mapObjects/pewtermart.asm
@@ -0,0 +1,17 @@
+PewterMartObject: ; 0x74cda (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $4, $ff
+ db $7, $4, $4, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BUG_CATCHER, $3 + 4, $3 + 4, $fe, $1, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $5 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP PEWTER_MART_WIDTH, $7, $3
+ EVENT_DISP PEWTER_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/pewterpokecenter.asm b/data/mapObjects/pewterpokecenter.asm
new file mode 100755
index 00000000..a9a03272
--- /dev/null
+++ b/data/mapObjects/pewterpokecenter.asm
@@ -0,0 +1,18 @@
+PewterPokecenterObject: ; 0x5c60d (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $6, $ff
+ db $7, $4, $6, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GENTLEMAN, $7 + 4, $b + 4, $ff, $d2, $2 ; person
+ db SPRITE_CLEFAIRY, $3 + 4, $1 + 4, $ff, $d0, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/pokemontower1.asm b/data/mapObjects/pokemontower1.asm
new file mode 100755
index 00000000..30fb9cbc
--- /dev/null
+++ b/data/mapObjects/pokemontower1.asm
@@ -0,0 +1,21 @@
+PokemonTower1Object: ; 0x60452 (size=58)
+ db $1 ; border block
+
+ db $3 ; warps
+ db $11, $a, $1, $ff
+ db $11, $b, $1, $ff
+ db $9, $12, $1, POKEMONTOWER_2
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_CABLE_CLUB_WOMAN, $d + 4, $f + 4, $ff, $d1, $1 ; person
+ db SPRITE_MOM_GEISHA, $8 + 4, $6 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BALDING_GUY, $c + 4, $8 + 4, $ff, $ff, $3 ; person
+ db SPRITE_GIRL, $7 + 4, $d + 4, $ff, $ff, $4 ; person
+ db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $5 ; person
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $a
+ EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $b
+ EVENT_DISP POKEMONTOWER_1_WIDTH, $9, $12 ; POKEMONTOWER_2
diff --git a/data/mapObjects/pokemontower2.asm b/data/mapObjects/pokemontower2.asm
new file mode 100755
index 00000000..a255065f
--- /dev/null
+++ b/data/mapObjects/pokemontower2.asm
@@ -0,0 +1,16 @@
+PokemonTower2Object: ; 0x60646 (size=32)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $9, $3, $0, POKEMONTOWER_3
+ db $9, $12, $2, POKEMONTOWER_1
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BLUE, $5 + 4, $e + 4, $ff, $ff, $1 ; person
+ db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d3, $2 ; person
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $3 ; POKEMONTOWER_3
+ EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $12 ; POKEMONTOWER_1
diff --git a/data/mapObjects/pokemontower3.asm b/data/mapObjects/pokemontower3.asm
new file mode 100755
index 00000000..f2341155
--- /dev/null
+++ b/data/mapObjects/pokemontower3.asm
@@ -0,0 +1,18 @@
+PokemonTower3Object: ; 0x6075d (size=51)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $9, $3, $0, POKEMONTOWER_2
+ db $9, $12, $1, POKEMONTOWER_4
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_MEDIUM, $3 + 4, $c + 4, $ff, $d2, $41, CHANNELER + $C8, $5 ; trainer
+ db SPRITE_MEDIUM, $8 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $6 ; trainer
+ db SPRITE_MEDIUM, $d + 4, $a + 4, $ff, $d0, $43, CHANNELER + $C8, $8 ; trainer
+ db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $84, ESCAPE_ROPE ; item
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $3 ; POKEMONTOWER_2
+ EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $12 ; POKEMONTOWER_4
diff --git a/data/mapObjects/pokemontower4.asm b/data/mapObjects/pokemontower4.asm
new file mode 100755
index 00000000..e2328243
--- /dev/null
+++ b/data/mapObjects/pokemontower4.asm
@@ -0,0 +1,20 @@
+PokemonTower4Object: ; 0x6088b (size=65)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $9, $3, $0, POKEMONTOWER_5
+ db $9, $12, $1, POKEMONTOWER_3
+
+ db $0 ; signs
+
+ db $6 ; people
+ db SPRITE_MEDIUM, $a + 4, $5 + 4, $ff, $d3, $41, CHANNELER + $C8, $9 ; trainer
+ db SPRITE_MEDIUM, $7 + 4, $f + 4, $ff, $d0, $42, CHANNELER + $C8, $a ; trainer
+ db SPRITE_MEDIUM, $c + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $c ; trainer
+ db SPRITE_BALL, $a + 4, $c + 4, $ff, $ff, $84, ELIXER ; item
+ db SPRITE_BALL, $a + 4, $9 + 4, $ff, $ff, $85, AWAKENING ; item
+ db SPRITE_BALL, $10 + 4, $c + 4, $ff, $ff, $86, HP_UP ; item
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $3 ; POKEMONTOWER_5
+ EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $12 ; POKEMONTOWER_3
diff --git a/data/mapObjects/pokemontower5.asm b/data/mapObjects/pokemontower5.asm
new file mode 100755
index 00000000..16d09771
--- /dev/null
+++ b/data/mapObjects/pokemontower5.asm
@@ -0,0 +1,20 @@
+PokemonTower5Object: ; 0x60a48 (size=65)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $9, $3, $0, POKEMONTOWER_4
+ db $9, $12, $0, POKEMONTOWER_6
+
+ db $0 ; signs
+
+ db $6 ; people
+ db SPRITE_MEDIUM, $8 + 4, $c + 4, $ff, $ff, $1 ; person
+ db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $42, CHANNELER + $C8, $e ; trainer
+ db SPRITE_MEDIUM, $3 + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $10 ; trainer
+ db SPRITE_MEDIUM, $a + 4, $6 + 4, $ff, $d3, $44, CHANNELER + $C8, $11 ; trainer
+ db SPRITE_MEDIUM, $10 + 4, $9 + 4, $ff, $d3, $45, CHANNELER + $C8, $12 ; trainer
+ db SPRITE_BALL, $e + 4, $6 + 4, $ff, $ff, $86, NUGGET ; item
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $3 ; POKEMONTOWER_4
+ EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $12 ; POKEMONTOWER_6
diff --git a/data/mapObjects/pokemontower6.asm b/data/mapObjects/pokemontower6.asm
new file mode 100755
index 00000000..3e9839e3
--- /dev/null
+++ b/data/mapObjects/pokemontower6.asm
@@ -0,0 +1,19 @@
+PokemonTower6Object: ; 0x60c5b (size=58)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $9, $12, $1, POKEMONTOWER_5
+ db $10, $9, $0, POKEMONTOWER_7
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_MEDIUM, $a + 4, $c + 4, $ff, $d3, $41, CHANNELER + $C8, $13 ; trainer
+ db SPRITE_MEDIUM, $5 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $14 ; trainer
+ db SPRITE_MEDIUM, $5 + 4, $10 + 4, $ff, $d2, $43, CHANNELER + $C8, $15 ; trainer
+ db SPRITE_BALL, $8 + 4, $6 + 4, $ff, $ff, $84, RARE_CANDY ; item
+ db SPRITE_BALL, $e + 4, $e + 4, $ff, $ff, $85, X_ACCURACY ; item
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_6_WIDTH, $9, $12 ; POKEMONTOWER_5
+ EVENT_DISP POKEMONTOWER_6_WIDTH, $10, $9 ; POKEMONTOWER_7
diff --git a/data/mapObjects/pokemontower7.asm b/data/mapObjects/pokemontower7.asm
new file mode 100755
index 00000000..b6815a64
--- /dev/null
+++ b/data/mapObjects/pokemontower7.asm
@@ -0,0 +1,16 @@
+PokemonTower7Object: ; 0x60ef6 (size=42)
+ db $1 ; border block
+
+ db $1 ; warps
+ db $10, $9, $1, POKEMONTOWER_6
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_ROCKET, $b + 4, $9 + 4, $ff, $d3, $41, ROCKET + $C8, $13 ; trainer
+ db SPRITE_ROCKET, $9 + 4, $c + 4, $ff, $d2, $42, ROCKET + $C8, $14 ; trainer
+ db SPRITE_ROCKET, $7 + 4, $9 + 4, $ff, $d3, $43, ROCKET + $C8, $15 ; trainer
+ db SPRITE_MR_FUJI, $3 + 4, $a + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP POKEMONTOWER_7_WIDTH, $10, $9 ; POKEMONTOWER_6
diff --git a/data/mapObjects/powerplant.asm b/data/mapObjects/powerplant.asm
new file mode 100755
index 00000000..b5d656ff
--- /dev/null
+++ b/data/mapObjects/powerplant.asm
@@ -0,0 +1,30 @@
+PowerPlantObject: ; 0x1e3bf (size=135)
+ db $2e ; border block
+
+ db $3 ; warps
+ db $23, $4, $3, $ff
+ db $23, $5, $3, $ff
+ db $b, $0, $3, $ff
+
+ db $0 ; signs
+
+ db $e ; people
+ db SPRITE_BALL, $14 + 4, $9 + 4, $ff, $ff, $41, VOLTORB, 40 ; trainer
+ db SPRITE_BALL, $12 + 4, $20 + 4, $ff, $ff, $42, VOLTORB, 40 ; trainer
+ db SPRITE_BALL, $19 + 4, $15 + 4, $ff, $ff, $43, VOLTORB, 40 ; trainer
+ db SPRITE_BALL, $12 + 4, $19 + 4, $ff, $ff, $44, ELECTRODE, 43 ; trainer
+ db SPRITE_BALL, $22 + 4, $17 + 4, $ff, $ff, $45, VOLTORB, 40 ; trainer
+ db SPRITE_BALL, $1c + 4, $1a + 4, $ff, $ff, $46, VOLTORB, 40 ; trainer
+ db SPRITE_BALL, $e + 4, $15 + 4, $ff, $ff, $47, ELECTRODE, 43 ; trainer
+ db SPRITE_BALL, $20 + 4, $25 + 4, $ff, $ff, $48, VOLTORB, 40 ; trainer
+ db SPRITE_BIRD, $9 + 4, $4 + 4, $ff, $d1, $49, ZAPDOS, 50 ; trainer
+ db SPRITE_BALL, $19 + 4, $7 + 4, $ff, $ff, $8a, CARBOS ; item
+ db SPRITE_BALL, $3 + 4, $1c + 4, $ff, $ff, $8b, HP_UP ; item
+ db SPRITE_BALL, $3 + 4, $22 + 4, $ff, $ff, $8c, RARE_CANDY ; item
+ db SPRITE_BALL, $20 + 4, $1a + 4, $ff, $ff, $8d, TM_25 ; item
+ db SPRITE_BALL, $20 + 4, $14 + 4, $ff, $ff, $8e, TM_33 ; item
+
+ ; warp-to
+ EVENT_DISP POWER_PLANT_WIDTH, $23, $4
+ EVENT_DISP POWER_PLANT_WIDTH, $23, $5
+ EVENT_DISP POWER_PLANT_WIDTH, $b, $0
diff --git a/data/mapObjects/redshouse1f.asm b/data/mapObjects/redshouse1f.asm
new file mode 100755
index 00000000..41ebb709
--- /dev/null
+++ b/data/mapObjects/redshouse1f.asm
@@ -0,0 +1,18 @@
+RedsHouse1FObject: ; 481e4 (12:41e4)
+ db $0A ; border block
+
+ db 3 ; warps
+ db 7,2,0,$FF ; exit1
+ db 7,3,0,$FF ; exit2
+ db 1,7,0,$26 ; staircase
+
+ db 1 ; signs
+ db 1,3,2 ; TV
+
+ db 1 ; people
+ db $33,4+4,5+4,$FF,$D2,1 ; Mom
+
+ ; warp-to
+ EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 2
+ EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 3
+ EVENT_DISP REDS_HOUSE_1F_WIDTH, 1, 7
diff --git a/data/mapObjects/redshouse2f.asm b/data/mapObjects/redshouse2f.asm
new file mode 100755
index 00000000..5d59f8e5
--- /dev/null
+++ b/data/mapObjects/redshouse2f.asm
@@ -0,0 +1,12 @@
+RedsHouse2FObject: ; 0x5c0d0 ?
+ db $0A ; border block
+
+ db 1 ; warps
+ db 1, 7, 2, REDS_HOUSE_1F
+
+ db 0 ; signs
+
+ db 0 ; people
+
+ ; warp-to
+ EVENT_DISP REDS_HOUSE_2F_WIDTH, 1, 7
diff --git a/data/mapObjects/rockethideout1.asm b/data/mapObjects/rockethideout1.asm
new file mode 100755
index 00000000..5ae38850
--- /dev/null
+++ b/data/mapObjects/rockethideout1.asm
@@ -0,0 +1,27 @@
+RocketHideout1Object: ; 0x44ce7 (size=98)
+ db $2e ; border block
+
+ db $5 ; warps
+ db $2, $17, $0, ROCKET_HIDEOUT_2
+ db $2, $15, $2, GAME_CORNER
+ db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR
+ db $18, $15, $3, ROCKET_HIDEOUT_2
+ db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR
+
+ db $0 ; signs
+
+ db $7 ; people
+ db SPRITE_ROCKET, $8 + 4, $1a + 4, $ff, $d2, $41, ROCKET + $C8, $8 ; trainer
+ db SPRITE_ROCKET, $6 + 4, $c + 4, $ff, $d3, $42, ROCKET + $C8, $9 ; trainer
+ db SPRITE_ROCKET, $11 + 4, $12 + 4, $ff, $d0, $43, ROCKET + $C8, $a ; trainer
+ db SPRITE_ROCKET, $19 + 4, $f + 4, $ff, $d3, $44, ROCKET + $C8, $b ; trainer
+ db SPRITE_ROCKET, $12 + 4, $1c + 4, $ff, $d2, $45, ROCKET + $C8, $c ; trainer
+ db SPRITE_BALL, $e + 4, $b + 4, $ff, $ff, $86, ESCAPE_ROPE ; item
+ db SPRITE_BALL, $11 + 4, $9 + 4, $ff, $ff, $87, HYPER_POTION ; item
+
+ ; warp-to
+ EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $17 ; ROCKET_HIDEOUT_2
+ EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $15 ; GAME_CORNER
+ EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR
+ EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $18, $15 ; ROCKET_HIDEOUT_2
+ EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/rockethideout2.asm b/data/mapObjects/rockethideout2.asm
new file mode 100755
index 00000000..6c374654
--- /dev/null
+++ b/data/mapObjects/rockethideout2.asm
@@ -0,0 +1,25 @@
+RocketHideout2Object: ; 0x450f7 (size=80)
+ db $2e ; border block
+
+ db $5 ; warps
+ db $8, $1b, $0, ROCKET_HIDEOUT_1
+ db $8, $15, $0, ROCKET_HIDEOUT_3
+ db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR
+ db $16, $15, $3, ROCKET_HIDEOUT_1
+ db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_ROCKET, $c + 4, $14 + 4, $ff, $d0, $41, ROCKET + $C8, $d ; trainer
+ db SPRITE_BALL, $b + 4, $1 + 4, $ff, $ff, $82, MOON_STONE ; item
+ db SPRITE_BALL, $8 + 4, $10 + 4, $ff, $ff, $83, NUGGET ; item
+ db SPRITE_BALL, $c + 4, $6 + 4, $ff, $ff, $84, TM_07 ; item
+ db SPRITE_BALL, $15 + 4, $3 + 4, $ff, $ff, $85, SUPER_POTION ; item
+
+ ; warp-to
+ EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $1b ; ROCKET_HIDEOUT_1
+ EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $15 ; ROCKET_HIDEOUT_3
+ EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR
+ EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $16, $15 ; ROCKET_HIDEOUT_1
+ EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/rockethideout3.asm b/data/mapObjects/rockethideout3.asm
new file mode 100755
index 00000000..105abea0
--- /dev/null
+++ b/data/mapObjects/rockethideout3.asm
@@ -0,0 +1,18 @@
+RocketHideout3Object: ; 0x4534d (size=50)
+ db $2e ; border block
+
+ db $2 ; warps
+ db $6, $19, $1, ROCKET_HIDEOUT_2
+ db $12, $13, $0, ROCKET_HIDEOUT_4
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_ROCKET, $16 + 4, $a + 4, $ff, $d3, $41, ROCKET + $C8, $e ; trainer
+ db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d1, $42, ROCKET + $C8, $f ; trainer
+ db SPRITE_BALL, $11 + 4, $1a + 4, $ff, $ff, $83, TM_10 ; item
+ db SPRITE_BALL, $e + 4, $14 + 4, $ff, $ff, $84, RARE_CANDY ; item
+
+ ; warp-to
+ EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $6, $19 ; ROCKET_HIDEOUT_2
+ EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $12, $13 ; ROCKET_HIDEOUT_4
diff --git a/data/mapObjects/rockethideout4.asm b/data/mapObjects/rockethideout4.asm
new file mode 100755
index 00000000..3f9ecc62
--- /dev/null
+++ b/data/mapObjects/rockethideout4.asm
@@ -0,0 +1,25 @@
+RocketHideout4Object: ; 0x455f1 (size=95)
+ db $2e ; border block
+
+ db $3 ; warps
+ db $a, $13, $1, ROCKET_HIDEOUT_3
+ db $f, $18, $0, ROCKET_HIDEOUT_ELEVATOR
+ db $f, $19, $1, ROCKET_HIDEOUT_ELEVATOR
+
+ db $0 ; signs
+
+ db $9 ; people
+ db SPRITE_GIOVANNI, $3 + 4, $19 + 4, $ff, $d0, $41, GIOVANNI + $C8, $1 ; trainer
+ db SPRITE_ROCKET, $c + 4, $17 + 4, $ff, $d0, $42, ROCKET + $C8, $10 ; trainer
+ db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d0, $43, ROCKET + $C8, $11 ; trainer
+ db SPRITE_ROCKET, $2 + 4, $b + 4, $ff, $d0, $44, ROCKET + $C8, $12 ; trainer
+ db SPRITE_BALL, $c + 4, $a + 4, $ff, $ff, $85, HP_UP ; item
+ db SPRITE_BALL, $4 + 4, $9 + 4, $ff, $ff, $86, TM_02 ; item
+ db SPRITE_BALL, $14 + 4, $c + 4, $ff, $ff, $87, IRON ; item
+ db SPRITE_BALL, $2 + 4, $19 + 4, $ff, $ff, $88, SILPH_SCOPE ; item
+ db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $89, LIFT_KEY ; item
+
+ ; warp-to
+ EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $a, $13 ; ROCKET_HIDEOUT_3
+ EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $18 ; ROCKET_HIDEOUT_ELEVATOR
+ EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $19 ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/rockethideoutelevator.asm b/data/mapObjects/rockethideoutelevator.asm
new file mode 100755
index 00000000..e4653a4c
--- /dev/null
+++ b/data/mapObjects/rockethideoutelevator.asm
@@ -0,0 +1,15 @@
+RocketHideoutElevatorObject: ; 0x45791 (size=23)
+ db $f ; border block
+
+ db $2 ; warps
+ db $1, $2, $2, ROCKET_HIDEOUT_1
+ db $1, $3, $4, ROCKET_HIDEOUT_1
+
+ db $1 ; signs
+ db $1, $1, $1 ; RocketHideoutElevatorText1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $2 ; ROCKET_HIDEOUT_1
+ EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $3 ; ROCKET_HIDEOUT_1
diff --git a/data/mapObjects/rocktunnel1.asm b/data/mapObjects/rocktunnel1.asm
new file mode 100755
index 00000000..2701b3e0
--- /dev/null
+++ b/data/mapObjects/rocktunnel1.asm
@@ -0,0 +1,34 @@
+RockTunnel1Object: ; 0x445f6 (size=127)
+ db $3 ; border block
+
+ db $8 ; warps
+ db $3, $f, $1, $ff
+ db $0, $f, $1, $ff
+ db $21, $f, $2, $ff
+ db $23, $f, $2, $ff
+ db $3, $25, $0, ROCK_TUNNEL_2
+ db $3, $5, $1, ROCK_TUNNEL_2
+ db $b, $11, $2, ROCK_TUNNEL_2
+ db $11, $25, $3, ROCK_TUNNEL_2
+
+ db $1 ; signs
+ db $1d, $b, $8 ; RockTunnel1Text8
+
+ db $7 ; people
+ db SPRITE_HIKER, $5 + 4, $7 + 4, $ff, $d0, $41, HIKER + $C8, $c ; trainer
+ db SPRITE_HIKER, $10 + 4, $5 + 4, $ff, $d0, $42, HIKER + $C8, $d ; trainer
+ db SPRITE_HIKER, $f + 4, $11 + 4, $ff, $d2, $43, HIKER + $C8, $e ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $17 + 4, $ff, $d2, $44, POKEMANIAC + $C8, $7 ; trainer
+ db SPRITE_LASS, $15 + 4, $25 + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $11 ; trainer
+ db SPRITE_LASS, $18 + 4, $16 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $12 ; trainer
+ db SPRITE_LASS, $18 + 4, $20 + 4, $ff, $d3, $47, JR__TRAINER_F + $C8, $13 ; trainer
+
+ ; warp-to
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $f
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $0, $f
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $21, $f
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $23, $f
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $25 ; ROCK_TUNNEL_2
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $5 ; ROCK_TUNNEL_2
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $b, $11 ; ROCK_TUNNEL_2
+ EVENT_DISP ROCK_TUNNEL_1_WIDTH, $11, $25 ; ROCK_TUNNEL_2
diff --git a/data/mapObjects/rocktunnel2.asm b/data/mapObjects/rocktunnel2.asm
new file mode 100755
index 00000000..e98f581a
--- /dev/null
+++ b/data/mapObjects/rocktunnel2.asm
@@ -0,0 +1,26 @@
+RockTunnel2Object: ; 0x4613d (size=100)
+ db $3 ; border block
+
+ db $4 ; warps
+ db $19, $21, $4, ROCK_TUNNEL_1
+ db $3, $1b, $5, ROCK_TUNNEL_1
+ db $b, $17, $6, ROCK_TUNNEL_1
+ db $3, $3, $7, ROCK_TUNNEL_1
+
+ db $0 ; signs
+
+ db $8 ; people
+ db SPRITE_LASS, $d + 4, $b + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $9 ; trainer
+ db SPRITE_HIKER, $a + 4, $6 + 4, $ff, $d0, $42, HIKER + $C8, $9 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $d0, $43, POKEMANIAC + $C8, $3 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $14 + 4, $ff, $d3, $44, POKEMANIAC + $C8, $4 ; trainer
+ db SPRITE_HIKER, $a + 4, $1e + 4, $ff, $d0, $45, HIKER + $C8, $a ; trainer
+ db SPRITE_LASS, $1c + 4, $e + 4, $ff, $d3, $46, JR__TRAINER_F + $C8, $a ; trainer
+ db SPRITE_HIKER, $5 + 4, $21 + 4, $ff, $d3, $47, HIKER + $C8, $b ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $1e + 4, $1a + 4, $ff, $d0, $48, POKEMANIAC + $C8, $5 ; trainer
+
+ ; warp-to
+ EVENT_DISP ROCK_TUNNEL_2_WIDTH, $19, $21 ; ROCK_TUNNEL_1
+ EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $1b ; ROCK_TUNNEL_1
+ EVENT_DISP ROCK_TUNNEL_2_WIDTH, $b, $17 ; ROCK_TUNNEL_1
+ EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $3 ; ROCK_TUNNEL_1
diff --git a/data/mapObjects/rocktunnelpokecenter.asm b/data/mapObjects/rocktunnelpokecenter.asm
new file mode 100755
index 00000000..2dd7b71d
--- /dev/null
+++ b/data/mapObjects/rocktunnelpokecenter.asm
@@ -0,0 +1,18 @@
+RockTunnelPokecenterObject: ; 0x493d4 (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $0, $ff
+ db $7, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person
+ db SPRITE_FISHER2, $5 + 4, $2 + 4, $ff, $ff, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/route1.asm b/data/mapObjects/route1.asm
new file mode 100755
index 00000000..c16738f3
--- /dev/null
+++ b/data/mapObjects/route1.asm
@@ -0,0 +1,14 @@
+Route1Object: ; 0x1c0e5 (size=19)
+ db $b ; border block
+
+ db $0 ; warps
+
+ db $1 ; signs
+ db $1b, $9, $3 ; Route1Text3
+
+ db $2 ; people
+ db SPRITE_BUG_CATCHER, $18 + 4, $5 + 4, $fe, $1, $1 ; person
+ db SPRITE_BUG_CATCHER, $d + 4, $f + 4, $fe, $2, $2 ; person
+
+ ; warp-to (unused)
+ EVENT_DISP $4, $7, $2
diff --git a/data/mapObjects/route10.asm b/data/mapObjects/route10.asm
new file mode 100755
index 00000000..32e568dd
--- /dev/null
+++ b/data/mapObjects/route10.asm
@@ -0,0 +1,28 @@
+Route10Object: ; 0x582f6 (size=96)
+ db $2c ; border block
+
+ db $4 ; warps
+ db $13, $b, $0, ROCK_TUNNEL_POKECENTER
+ db $11, $8, $0, ROCK_TUNNEL_1
+ db $35, $8, $2, ROCK_TUNNEL_1
+ db $27, $6, $0, POWER_PLANT
+
+ db $4 ; signs
+ db $13, $7, $7 ; Route10Text7
+ db $13, $c, $8 ; PokeCenterSignText
+ db $37, $9, $9 ; Route10Text9
+ db $29, $5, $a ; Route10Text10
+
+ db $6 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $2c + 4, $a + 4, $ff, $d2, $41, POKEMANIAC + $C8, $1 ; trainer
+ db SPRITE_HIKER, $39 + 4, $3 + 4, $ff, $d1, $42, HIKER + $C8, $7 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $40 + 4, $e + 4, $ff, $d2, $43, POKEMANIAC + $C8, $2 ; trainer
+ db SPRITE_LASS, $19 + 4, $7 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $7 ; trainer
+ db SPRITE_HIKER, $3d + 4, $3 + 4, $ff, $d0, $45, HIKER + $C8, $8 ; trainer
+ db SPRITE_LASS, $36 + 4, $7 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $8 ; trainer
+
+ ; warp-to
+ EVENT_DISP ROUTE_10_WIDTH, $13, $b ; ROCK_TUNNEL_POKECENTER
+ EVENT_DISP ROUTE_10_WIDTH, $11, $8 ; ROCK_TUNNEL_1
+ EVENT_DISP ROUTE_10_WIDTH, $35, $8 ; ROCK_TUNNEL_1
+ EVENT_DISP ROUTE_10_WIDTH, $27, $6 ; POWER_PLANT
diff --git a/data/mapObjects/route11.asm b/data/mapObjects/route11.asm
new file mode 100755
index 00000000..88fda61f
--- /dev/null
+++ b/data/mapObjects/route11.asm
@@ -0,0 +1,31 @@
+Route11Object: ; 0x584e0 (size=127)
+ db $f ; border block
+
+ db $5 ; warps
+ db $8, $31, $0, ROUTE_11_GATE_1F
+ db $9, $31, $1, ROUTE_11_GATE_1F
+ db $8, $3a, $2, ROUTE_11_GATE_1F
+ db $9, $3a, $3, ROUTE_11_GATE_1F
+ db $5, $4, $0, DIGLETTS_CAVE_ENTRANCE
+
+ db $1 ; signs
+ db $5, $1, $b ; Route11Text11
+
+ db $a ; people
+ db SPRITE_GAMBLER, $e + 4, $a + 4, $ff, $d0, $41, GAMBLER + $C8, $1 ; trainer
+ db SPRITE_GAMBLER, $9 + 4, $1a + 4, $ff, $d0, $42, GAMBLER + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $5 + 4, $d + 4, $ff, $d2, $43, YOUNGSTER + $C8, $9 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $24 + 4, $ff, $d0, $44, ENGINEER + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $4 + 4, $16 + 4, $ff, $d1, $45, YOUNGSTER + $C8, $a ; trainer
+ db SPRITE_GAMBLER, $7 + 4, $2d + 4, $ff, $d0, $46, GAMBLER + $C8, $3 ; trainer
+ db SPRITE_GAMBLER, $3 + 4, $21 + 4, $ff, $d1, $47, GAMBLER + $C8, $4 ; trainer
+ db SPRITE_BUG_CATCHER, $5 + 4, $2b + 4, $ff, $d3, $48, YOUNGSTER + $C8, $b ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $10 + 4, $2d + 4, $ff, $d2, $49, ENGINEER + $C8, $3 ; trainer
+ db SPRITE_BUG_CATCHER, $c + 4, $16 + 4, $ff, $d1, $4a, YOUNGSTER + $C8, $c ; trainer
+
+ ; warp-to
+ EVENT_DISP ROUTE_11_WIDTH, $8, $31 ; ROUTE_11_GATE_1F
+ EVENT_DISP ROUTE_11_WIDTH, $9, $31 ; ROUTE_11_GATE_1F
+ EVENT_DISP ROUTE_11_WIDTH, $8, $3a ; ROUTE_11_GATE_1F
+ EVENT_DISP ROUTE_11_WIDTH, $9, $3a ; ROUTE_11_GATE_1F
+ EVENT_DISP ROUTE_11_WIDTH, $5, $4 ; DIGLETTS_CAVE_ENTRANCE
diff --git a/data/mapObjects/route11gate.asm b/data/mapObjects/route11gate.asm
new file mode 100755
index 00000000..5ebfb13d
--- /dev/null
+++ b/data/mapObjects/route11gate.asm
@@ -0,0 +1,21 @@
+Route11GateObject: ; 0x49416 (size=50)
+ db $a ; border block
+
+ db $5 ; warps
+ db $4, $0, $0, $ff
+ db $5, $0, $1, $ff
+ db $4, $7, $2, $ff
+ db $5, $7, $3, $ff
+ db $8, $6, $0, ROUTE_11_GATE_2F
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $0
+ EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $0
+ EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $7
+ EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $7
+ EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $8, $6 ; ROUTE_11_GATE_2F
diff --git a/data/mapObjects/route11gateupstairs.asm b/data/mapObjects/route11gateupstairs.asm
new file mode 100755
index 00000000..8ee0f8fa
--- /dev/null
+++ b/data/mapObjects/route11gateupstairs.asm
@@ -0,0 +1,16 @@
+Route11GateUpstairsObject: ; 0x494da (size=30)
+ db $a ; border block
+
+ db $1 ; warps
+ db $7, $7, $4, ROUTE_11_GATE_1F
+
+ db $2 ; signs
+ db $2, $1, $3 ; Route11GateUpstairsText3
+ db $2, $6, $4 ; Route11GateUpstairsText4
+
+ db $2 ; people
+ db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person
+ db SPRITE_OAK_AIDE, $6 + 4, $2 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_11_GATE_2F_WIDTH, $7, $7 ; ROUTE_11_GATE_1F
diff --git a/data/mapObjects/route12.asm b/data/mapObjects/route12.asm
new file mode 100755
index 00000000..75d1907f
--- /dev/null
+++ b/data/mapObjects/route12.asm
@@ -0,0 +1,30 @@
+Route12Object: ; 0x5869a (size=118)
+ db $43 ; border block
+
+ db $4 ; warps
+ db $f, $a, $0, ROUTE_12_GATE_1F
+ db $f, $b, $1, ROUTE_12_GATE_1F
+ db $15, $a, $2, ROUTE_12_GATE_1F
+ db $4d, $b, $0, ROUTE_12_HOUSE
+
+ db $2 ; signs
+ db $d, $d, $b ; Route12Text11
+ db $3f, $b, $c ; Route12Text12
+
+ db $a ; people
+ db SPRITE_SNORLAX, $3e + 4, $a + 4, $ff, $d0, $1 ; person
+ db SPRITE_FISHER2, $1f + 4, $e + 4, $ff, $d2, $42, FISHER + $C8, $3 ; trainer
+ db SPRITE_FISHER2, $27 + 4, $5 + 4, $ff, $d1, $43, FISHER + $C8, $4 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $5c + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $9 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $4c + 4, $e + 4, $ff, $d1, $45, ROCKER + $C8, $2 ; trainer
+ db SPRITE_FISHER2, $28 + 4, $c + 4, $ff, $d2, $46, FISHER + $C8, $5 ; trainer
+ db SPRITE_FISHER2, $34 + 4, $9 + 4, $ff, $d3, $47, FISHER + $C8, $6 ; trainer
+ db SPRITE_FISHER2, $57 + 4, $6 + 4, $ff, $d0, $48, FISHER + $C8, $b ; trainer
+ db SPRITE_BALL, $23 + 4, $e + 4, $ff, $ff, $89, TM_16 ; item
+ db SPRITE_BALL, $59 + 4, $5 + 4, $ff, $ff, $8a, IRON ; item
+
+ ; warp-to
+ EVENT_DISP ROUTE_12_WIDTH, $f, $a ; ROUTE_12_GATE_1F
+ EVENT_DISP ROUTE_12_WIDTH, $f, $b ; ROUTE_12_GATE_1F
+ EVENT_DISP ROUTE_12_WIDTH, $15, $a ; ROUTE_12_GATE_1F
+ EVENT_DISP ROUTE_12_WIDTH, $4d, $b ; ROUTE_12_HOUSE
diff --git a/data/mapObjects/route12gate.asm b/data/mapObjects/route12gate.asm
new file mode 100755
index 00000000..fc70b763
--- /dev/null
+++ b/data/mapObjects/route12gate.asm
@@ -0,0 +1,21 @@
+Route12GateObject: ; 0x4950e (size=50)
+ db $a ; border block
+
+ db $5 ; warps
+ db $0, $4, $0, $ff
+ db $0, $5, $1, $ff
+ db $7, $4, $2, $ff
+ db $7, $5, $2, $ff
+ db $6, $8, $0, ROUTE_12_GATE_2F
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $4
+ EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $5
+ EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $4
+ EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $5
+ EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $6, $8 ; ROUTE_12_GATE_2F
diff --git a/data/mapObjects/route12gateupstairs.asm b/data/mapObjects/route12gateupstairs.asm
new file mode 100755
index 00000000..012dedda
--- /dev/null
+++ b/data/mapObjects/route12gateupstairs.asm
@@ -0,0 +1,15 @@
+Route12GateUpstairsObject: ; 0x495de (size=24)
+ db $a ; border block
+
+ db $1 ; warps
+ db $7, $7, $4, ROUTE_12_GATE_1F
+
+ db $2 ; signs
+ db $2, $1, $2 ; Route12GateUpstairsText2
+ db $2, $6, $3 ; Route12GateUpstairsText3
+
+ db $1 ; people
+ db SPRITE_BRUNETTE_GIRL, $4 + 4, $3 + 4, $fe, $1, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_12_GATE_2F_WIDTH, $7, $7 ; ROUTE_12_GATE_1F
diff --git a/data/mapObjects/route12house.asm b/data/mapObjects/route12house.asm
new file mode 100755
index 00000000..74ae5bc7
--- /dev/null
+++ b/data/mapObjects/route12house.asm
@@ -0,0 +1,15 @@
+Route12HouseObject: ; 0x564de (size=26)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $3, $ff
+ db $7, $3, $3, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $2
+ EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/route13.asm b/data/mapObjects/route13.asm
new file mode 100755
index 00000000..2c83847a
--- /dev/null
+++ b/data/mapObjects/route13.asm
@@ -0,0 +1,21 @@
+Route13Object: ; 0x5482e (size=93)
+ db $43 ; border block
+
+ db $0 ; warps
+
+ db $3 ; signs
+ db $d, $f, $b ; Route13Text11
+ db $5, $21, $c ; Route13Text12
+ db $b, $1f, $d ; Route13Text13
+
+ db $a ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $31 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $1 ; trainer
+ db SPRITE_LASS, $a + 4, $30 + 4, $ff, $d0, $42, JR__TRAINER_F + $C8, $c ; trainer
+ db SPRITE_LASS, $9 + 4, $1b + 4, $ff, $d0, $43, JR__TRAINER_F + $C8, $d ; trainer
+ db SPRITE_LASS, $a + 4, $17 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $e ; trainer
+ db SPRITE_LASS, $5 + 4, $32 + 4, $ff, $d0, $45, JR__TRAINER_F + $C8, $f ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $c + 4, $ff, $d3, $46, BIRD_KEEPER + $C8, $2 ; trainer
+ db SPRITE_FOULARD_WOMAN, $6 + 4, $21 + 4, $ff, $d0, $47, BEAUTY + $C8, $4 ; trainer
+ db SPRITE_FOULARD_WOMAN, $6 + 4, $20 + 4, $ff, $d0, $48, BEAUTY + $C8, $5 ; trainer
+ db SPRITE_BIKER, $7 + 4, $a + 4, $ff, $d1, $49, BIKER + $C8, $1 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $7 + 4, $ff, $d1, $4a, BIRD_KEEPER + $C8, $3 ; trainer
diff --git a/data/mapObjects/route14.asm b/data/mapObjects/route14.asm
new file mode 100755
index 00000000..eb397a16
--- /dev/null
+++ b/data/mapObjects/route14.asm
@@ -0,0 +1,19 @@
+Route14Object: ; 0x549bb (size=87)
+ db $43 ; border block
+
+ db $0 ; warps
+
+ db $1 ; signs
+ db $d, $11, $b ; Route14Text11
+
+ db $a ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $4 + 4, $ff, $d0, $41, BIRD_KEEPER + $C8, $e ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $f + 4, $ff, $d0, $42, BIRD_KEEPER + $C8, $f ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $c + 4, $ff, $d0, $43, BIRD_KEEPER + $C8, $10 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $e + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $11 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $f + 4, $ff, $d2, $45, BIRD_KEEPER + $C8, $4 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $31 + 4, $6 + 4, $ff, $d1, $46, BIRD_KEEPER + $C8, $5 ; trainer
+ db SPRITE_BIKER, $27 + 4, $5 + 4, $ff, $d0, $47, BIKER + $C8, $d ; trainer
+ db SPRITE_BIKER, $1e + 4, $4 + 4, $ff, $d3, $48, BIKER + $C8, $e ; trainer
+ db SPRITE_BIKER, $1e + 4, $f + 4, $ff, $d2, $49, BIKER + $C8, $f ; trainer
+ db SPRITE_BIKER, $1f + 4, $4 + 4, $ff, $d3, $4a, BIKER + $C8, $2 ; trainer
diff --git a/data/mapObjects/route15.asm b/data/mapObjects/route15.asm
new file mode 100755
index 00000000..de91b7d9
--- /dev/null
+++ b/data/mapObjects/route15.asm
@@ -0,0 +1,30 @@
+Route15Object: ; 0x5894e (size=126)
+ db $43 ; border block
+
+ db $4 ; warps
+ db $8, $7, $0, ROUTE_15_GATE_1F
+ db $9, $7, $1, ROUTE_15_GATE_1F
+ db $8, $e, $2, ROUTE_15_GATE_1F
+ db $9, $e, $3, ROUTE_15_GATE_1F
+
+ db $1 ; signs
+ db $9, $27, $c ; Route15Text12
+
+ db $b ; people
+ db SPRITE_LASS, $b + 4, $29 + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $14 ; trainer
+ db SPRITE_LASS, $a + 4, $35 + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $15 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $1f + 4, $ff, $d1, $43, BIRD_KEEPER + $C8, $6 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $23 + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $7 ; trainer
+ db SPRITE_FOULARD_WOMAN, $b + 4, $35 + 4, $ff, $d0, $45, BEAUTY + $C8, $9 ; trainer
+ db SPRITE_FOULARD_WOMAN, $a + 4, $29 + 4, $ff, $d3, $46, BEAUTY + $C8, $a ; trainer
+ db SPRITE_BIKER, $a + 4, $30 + 4, $ff, $d0, $47, BIKER + $C8, $3 ; trainer
+ db SPRITE_BIKER, $a + 4, $2e + 4, $ff, $d0, $48, BIKER + $C8, $4 ; trainer
+ db SPRITE_LASS, $5 + 4, $25 + 4, $ff, $d3, $49, JR__TRAINER_F + $C8, $16 ; trainer
+ db SPRITE_LASS, $d + 4, $12 + 4, $ff, $d1, $4a, JR__TRAINER_F + $C8, $17 ; trainer
+ db SPRITE_BALL, $5 + 4, $12 + 4, $ff, $ff, $8b, TM_20 ; item
+
+ ; warp-to
+ EVENT_DISP ROUTE_15_WIDTH, $8, $7 ; ROUTE_15_GATE_1F
+ EVENT_DISP ROUTE_15_WIDTH, $9, $7 ; ROUTE_15_GATE_1F
+ EVENT_DISP ROUTE_15_WIDTH, $8, $e ; ROUTE_15_GATE_1F
+ EVENT_DISP ROUTE_15_WIDTH, $9, $e ; ROUTE_15_GATE_1F
diff --git a/data/mapObjects/route15gate.asm b/data/mapObjects/route15gate.asm
new file mode 100755
index 00000000..e0278fbe
--- /dev/null
+++ b/data/mapObjects/route15gate.asm
@@ -0,0 +1,21 @@
+Route15GateObject: ; 0x4960c (size=50)
+ db $a ; border block
+
+ db $5 ; warps
+ db $4, $0, $0, $ff
+ db $5, $0, $1, $ff
+ db $4, $7, $2, $ff
+ db $5, $7, $3, $ff
+ db $8, $6, $0, ROUTE_15_GATE_2F
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $0
+ EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $0
+ EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $7
+ EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $7
+ EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $8, $6 ; ROUTE_15_GATE_2F
diff --git a/data/mapObjects/route15gateupstairs.asm b/data/mapObjects/route15gateupstairs.asm
new file mode 100755
index 00000000..dd7a0b2c
--- /dev/null
+++ b/data/mapObjects/route15gateupstairs.asm
@@ -0,0 +1,14 @@
+Route15GateUpstairsObject: ; 4969d (12:569d)
+ db $a ; border block
+
+ db $1 ; warps
+ db $7, $7, $4, ROUTE_15_GATE_1F
+
+ db $1 ; signs
+ db $2, $6, $2 ; Route15GateUpstairsText2
+
+ db $1 ; people
+ db SPRITE_OAK_AIDE, $2 + 4, $4 + 4, $ff, $d0, $1
+
+ ; warp-to
+ EVENT_DISP ROUTE_15_GATE_2F_WIDTH, $7, $7 ; ROUTE_15_GATE_1F
diff --git a/data/mapObjects/route16.asm b/data/mapObjects/route16.asm
new file mode 100755
index 00000000..323ce018
--- /dev/null
+++ b/data/mapObjects/route16.asm
@@ -0,0 +1,37 @@
+Route16Object: ; 0x58afc (size=136)
+ db $f ; border block
+
+ db $9 ; warps
+ db $a, $11, $0, ROUTE_16_GATE_1F
+ db $b, $11, $1, ROUTE_16_GATE_1F
+ db $a, $18, $2, ROUTE_16_GATE_1F
+ db $b, $18, $3, ROUTE_16_GATE_1F
+ db $4, $11, $4, ROUTE_16_GATE_1F
+ db $5, $11, $5, ROUTE_16_GATE_1F
+ db $4, $18, $6, ROUTE_16_GATE_1F
+ db $5, $18, $7, ROUTE_16_GATE_1F
+ db $5, $7, $0, ROUTE_16_HOUSE
+
+ db $2 ; signs
+ db $b, $1b, $8 ; Route16Text8
+ db $11, $5, $9 ; Route16Text9
+
+ db $7 ; people
+ db SPRITE_BIKER, $c + 4, $11 + 4, $ff, $d2, $41, BIKER + $C8, $5 ; trainer
+ db SPRITE_BIKER, $d + 4, $e + 4, $ff, $d3, $42, CUE_BALL + $C8, $1 ; trainer
+ db SPRITE_BIKER, $c + 4, $b + 4, $ff, $d1, $43, CUE_BALL + $C8, $2 ; trainer
+ db SPRITE_BIKER, $b + 4, $9 + 4, $ff, $d2, $44, BIKER + $C8, $6 ; trainer
+ db SPRITE_BIKER, $a + 4, $6 + 4, $ff, $d3, $45, CUE_BALL + $C8, $3 ; trainer
+ db SPRITE_BIKER, $c + 4, $3 + 4, $ff, $d3, $46, BIKER + $C8, $7 ; trainer
+ db SPRITE_SNORLAX, $a + 4, $1a + 4, $ff, $d0, $7 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_16_WIDTH, $a, $11 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $b, $11 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $a, $18 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $b, $18 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $4, $11 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $5, $11 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $4, $18 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $5, $18 ; ROUTE_16_GATE_1F
+ EVENT_DISP ROUTE_16_WIDTH, $5, $7 ; ROUTE_16_HOUSE
diff --git a/data/mapObjects/route16gate.asm b/data/mapObjects/route16gate.asm
new file mode 100755
index 00000000..3b493cca
--- /dev/null
+++ b/data/mapObjects/route16gate.asm
@@ -0,0 +1,30 @@
+Route16GateObject: ; 0x4978b (size=88)
+ db $a ; border block
+
+ db $9 ; warps
+ db $8, $0, $0, $ff
+ db $9, $0, $1, $ff
+ db $8, $7, $2, $ff
+ db $9, $7, $2, $ff
+ db $2, $0, $4, $ff
+ db $3, $0, $5, $ff
+ db $2, $7, $6, $ff
+ db $3, $7, $7, $ff
+ db $c, $6, $0, ROUTE_16_GATE_2F
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_GUARD, $5 + 4, $4 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GAMBLER, $3 + 4, $4 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $0
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $0
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $7
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $7
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $0
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $0
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $7
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $7
+ EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $c, $6 ; ROUTE_16_GATE_2F
diff --git a/data/mapObjects/route16gateupstairs.asm b/data/mapObjects/route16gateupstairs.asm
new file mode 100755
index 00000000..ee9df620
--- /dev/null
+++ b/data/mapObjects/route16gateupstairs.asm
@@ -0,0 +1,16 @@
+Route16GateUpstairsObject: ; 0x4984c (size=30)
+ db $a ; border block
+
+ db $1 ; warps
+ db $7, $7, $8, ROUTE_16_GATE_1F
+
+ db $2 ; signs
+ db $2, $1, $3 ; Route16GateUpstairsText3
+ db $2, $6, $4 ; Route16GateUpstairsText4
+
+ db $2 ; people
+ db SPRITE_YOUNG_BOY, $2 + 4, $4 + 4, $ff, $ff, $1 ; person
+ db SPRITE_LITTLE_GIRL, $5 + 4, $2 + 4, $fe, $2, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_16_GATE_2F_WIDTH, $7, $7 ; ROUTE_16_GATE_1F
diff --git a/data/mapObjects/route16house.asm b/data/mapObjects/route16house.asm
new file mode 100755
index 00000000..816c0e69
--- /dev/null
+++ b/data/mapObjects/route16house.asm
@@ -0,0 +1,16 @@
+Route16HouseObject: ; 0x1e657 (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $8, $ff
+ db $7, $3, $8, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BIRD, $4 + 4, $6 + 4, $fe, $0, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $2
+ EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/route17.asm b/data/mapObjects/route17.asm
new file mode 100755
index 00000000..2957d2db
--- /dev/null
+++ b/data/mapObjects/route17.asm
@@ -0,0 +1,24 @@
+Route17Object: ; 0x54b42 (size=102)
+ db $43 ; border block
+
+ db $0 ; warps
+
+ db $6 ; signs
+ db $33, $9, $b ; Route17Text11
+ db $3f, $9, $c ; Route17Text12
+ db $4b, $9, $d ; Route17Text13
+ db $57, $9, $e ; Route17Text14
+ db $6f, $9, $f ; Route17Text15
+ db $8d, $9, $10 ; Route17Text16
+
+ db $a ; people
+ db SPRITE_BIKER, $13 + 4, $c + 4, $ff, $d2, $41, CUE_BALL + $C8, $4 ; trainer
+ db SPRITE_BIKER, $10 + 4, $b + 4, $ff, $d3, $42, CUE_BALL + $C8, $5 ; trainer
+ db SPRITE_BIKER, $12 + 4, $4 + 4, $ff, $d1, $43, BIKER + $C8, $8 ; trainer
+ db SPRITE_BIKER, $20 + 4, $7 + 4, $ff, $d2, $44, BIKER + $C8, $9 ; trainer
+ db SPRITE_BIKER, $22 + 4, $e + 4, $ff, $d3, $45, BIKER + $C8, $a ; trainer
+ db SPRITE_BIKER, $3a + 4, $11 + 4, $ff, $d2, $46, CUE_BALL + $C8, $6 ; trainer
+ db SPRITE_BIKER, $44 + 4, $2 + 4, $ff, $d3, $47, CUE_BALL + $C8, $7 ; trainer
+ db SPRITE_BIKER, $62 + 4, $e + 4, $ff, $d3, $48, CUE_BALL + $C8, $8 ; trainer
+ db SPRITE_BIKER, $62 + 4, $5 + 4, $ff, $d2, $49, BIKER + $C8, $b ; trainer
+ db SPRITE_BIKER, $76 + 4, $a + 4, $ff, $d0, $4a, BIKER + $C8, $c ; trainer
diff --git a/data/mapObjects/route18.asm b/data/mapObjects/route18.asm
new file mode 100755
index 00000000..68fd4298
--- /dev/null
+++ b/data/mapObjects/route18.asm
@@ -0,0 +1,23 @@
+Route18Object: ; 0x58c5a (size=66)
+ db $43 ; border block
+
+ db $4 ; warps
+ db $8, $21, $0, ROUTE_18_GATE_1F
+ db $9, $21, $1, ROUTE_18_GATE_1F
+ db $8, $28, $2, ROUTE_18_GATE_1F
+ db $9, $28, $3, ROUTE_18_GATE_1F
+
+ db $2 ; signs
+ db $7, $2b, $4 ; Route18Text4
+ db $5, $21, $5 ; Route18Text5
+
+ db $3 ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $24 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $8 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $28 + 4, $ff, $d2, $42, BIRD_KEEPER + $C8, $9 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $2a + 4, $ff, $d2, $43, BIRD_KEEPER + $C8, $a ; trainer
+
+ ; warp-to
+ EVENT_DISP ROUTE_18_WIDTH, $8, $21 ; ROUTE_18_GATE_1F
+ EVENT_DISP ROUTE_18_WIDTH, $9, $21 ; ROUTE_18_GATE_1F
+ EVENT_DISP ROUTE_18_WIDTH, $8, $28 ; ROUTE_18_GATE_1F
+ EVENT_DISP ROUTE_18_WIDTH, $9, $28 ; ROUTE_18_GATE_1F
diff --git a/data/mapObjects/route18gate.asm b/data/mapObjects/route18gate.asm
new file mode 100755
index 00000000..62816061
--- /dev/null
+++ b/data/mapObjects/route18gate.asm
@@ -0,0 +1,21 @@
+Route18GateObject: ; 0x49937 (size=50)
+ db $a ; border block
+
+ db $5 ; warps
+ db $4, $0, $0, $ff
+ db $5, $0, $1, $ff
+ db $4, $7, $2, $ff
+ db $5, $7, $3, $ff
+ db $8, $6, $0, ROUTE_18_GATE_2F
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $0
+ EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $0
+ EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $7
+ EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $7
+ EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $8, $6 ; ROUTE_18_GATE_2F
diff --git a/data/mapObjects/route18gateupstairs.asm b/data/mapObjects/route18gateupstairs.asm
new file mode 100755
index 00000000..d2b55e7f
--- /dev/null
+++ b/data/mapObjects/route18gateupstairs.asm
@@ -0,0 +1,15 @@
+Route18GateUpstairsObject: ; 0x499a4 (size=24)
+ db $a ; border block
+
+ db $1 ; warps
+ db $7, $7, $4, ROUTE_18_GATE_1F
+
+ db $2 ; signs
+ db $2, $1, $2 ; Route18GateUpstairsText2
+ db $2, $6, $3 ; Route18GateUpstairsText3
+
+ db $1 ; people
+ db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_18_GATE_2F_WIDTH, $7, $7 ; ROUTE_18_GATE_1F
diff --git a/data/mapObjects/route19.asm b/data/mapObjects/route19.asm
new file mode 100755
index 00000000..037d7702
--- /dev/null
+++ b/data/mapObjects/route19.asm
@@ -0,0 +1,30 @@
+Route19Object: ; 0x54e9a (size=87)
+ db $43 ; border block
+
+ IF _YELLOW
+ db $1 ; warps
+ db $9, $5, $0, $f8 ; SURF_HOUSE
+ ENDC
+ IF !_YELLOW
+ db $0 ; warps
+ ENDC
+
+ db $1 ; signs
+ db $9, $b, $b ; Route19Text11
+
+ db $a ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $8 + 4, $ff, $d2, $41, SWIMMER + $C8, $2 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $d + 4, $ff, $d2, $42, SWIMMER + $C8, $3 ; trainer
+ db SPRITE_SWIMMER, $19 + 4, $d + 4, $ff, $d2, $43, SWIMMER + $C8, $4 ; trainer
+ db SPRITE_SWIMMER, $1b + 4, $4 + 4, $ff, $d3, $44, SWIMMER + $C8, $5 ; trainer
+ db SPRITE_SWIMMER, $1f + 4, $10 + 4, $ff, $d1, $45, SWIMMER + $C8, $6 ; trainer
+ db SPRITE_SWIMMER, $b + 4, $9 + 4, $ff, $d0, $46, SWIMMER + $C8, $7 ; trainer
+ db SPRITE_SWIMMER, $2b + 4, $8 + 4, $ff, $d2, $47, BEAUTY + $C8, $c ; trainer
+ db SPRITE_SWIMMER, $2b + 4, $b + 4, $ff, $d3, $48, BEAUTY + $C8, $d ; trainer
+ db SPRITE_SWIMMER, $2a + 4, $9 + 4, $ff, $d1, $49, SWIMMER + $C8, $8 ; trainer
+ db SPRITE_SWIMMER, $2c + 4, $a + 4, $ff, $d0, $4a, BEAUTY + $C8, $e ; trainer
+
+ ; warp-to
+ IF _YELLOW
+ EVENT_DISP ROUTE_19_WIDTH, $9, $5 ; SURF_HOUSE
+ ENDC
diff --git a/data/mapObjects/route2.asm b/data/mapObjects/route2.asm
new file mode 100755
index 00000000..385c9825
--- /dev/null
+++ b/data/mapObjects/route2.asm
@@ -0,0 +1,33 @@
+Route2Object: ; 0x54022 (size=72)
+ db $f ; border block
+
+ db $6 ; warps
+ db $9, $c, $0, DIGLETTS_CAVE_EXIT
+ db $b, $3, $1, VIRIDIAN_FOREST_EXIT
+ db $13, $f, $0, ROUTE_2_HOUSE
+ db $23, $10, $1, ROUTE_2_GATE
+ db $27, $f, $2, ROUTE_2_GATE
+ db $2b, $3, $2, VIRIDIAN_FOREST_ENTRANCE
+
+ db $2 ; signs
+ db $41, $5, $3 ; Route2Text3
+ db $b, $b, $4 ; Route2Text4
+
+ db $2 ; people
+ db SPRITE_BALL, $36 + 4, $d + 4, $ff, $ff, $81, MOON_STONE ; item
+ db SPRITE_BALL, $2d + 4, $d + 4, $ff, $ff, $82, HP_UP ; item
+
+ ; warp-to
+ EVENT_DISP ROUTE_2_WIDTH, $9, $c ; DIGLETTS_CAVE_EXIT
+ EVENT_DISP ROUTE_2_WIDTH, $b, $3 ; VIRIDIAN_FOREST_EXIT
+ EVENT_DISP ROUTE_2_WIDTH, $13, $f ; ROUTE_2_HOUSE
+ EVENT_DISP ROUTE_2_WIDTH, $23, $10 ; ROUTE_2_GATE
+ EVENT_DISP ROUTE_2_WIDTH, $27, $f ; ROUTE_2_GATE
+ EVENT_DISP ROUTE_2_WIDTH, $2b, $3 ; VIRIDIAN_FOREST_ENTRANCE
+
+ ; unused
+ EVENT_DISP $4, $7, $2
+ db $12, $c7, $9, $7
+ EVENT_DISP $4, $7, $2
+ EVENT_DISP $4, $7, $2
+ EVENT_DISP $4, $7, $2
diff --git a/data/mapObjects/route20.asm b/data/mapObjects/route20.asm
new file mode 100755
index 00000000..89fa4ad4
--- /dev/null
+++ b/data/mapObjects/route20.asm
@@ -0,0 +1,26 @@
+Route20Object: ; 0x50113 (size=106)
+ db $43 ; border block
+
+ db $2 ; warps
+ db $5, $30, $0, SEAFOAM_ISLANDS_1
+ db $9, $3a, $2, SEAFOAM_ISLANDS_1
+
+ db $2 ; signs
+ db $7, $33, $b ; Route20Text11
+ db $b, $39, $c ; Route20Text12
+
+ db $a ; people
+ db SPRITE_SWIMMER, $8 + 4, $57 + 4, $ff, $d1, $41, SWIMMER + $C8, $9 ; trainer
+ db SPRITE_SWIMMER, $b + 4, $44 + 4, $ff, $d1, $42, BEAUTY + $C8, $f ; trainer
+ db SPRITE_SWIMMER, $a + 4, $2d + 4, $ff, $d0, $43, BEAUTY + $C8, $6 ; trainer
+ db SPRITE_SWIMMER, $e + 4, $37 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $18 ; trainer
+ db SPRITE_SWIMMER, $d + 4, $26 + 4, $ff, $d0, $45, SWIMMER + $C8, $a ; trainer
+ db SPRITE_SWIMMER, $d + 4, $57 + 4, $ff, $d1, $46, SWIMMER + $C8, $b ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $9 + 4, $22 + 4, $ff, $d1, $47, BIRD_KEEPER + $C8, $b ; trainer
+ db SPRITE_SWIMMER, $7 + 4, $19 + 4, $ff, $d1, $48, BEAUTY + $C8, $7 ; trainer
+ db SPRITE_SWIMMER, $c + 4, $18 + 4, $ff, $d0, $49, JR__TRAINER_F + $C8, $10 ; trainer
+ db SPRITE_SWIMMER, $8 + 4, $f + 4, $ff, $d1, $4a, BEAUTY + $C8, $8 ; trainer
+
+ ; warp-to
+ EVENT_DISP ROUTE_20_WIDTH, $5, $30 ; SEAFOAM_ISLANDS_1
+ EVENT_DISP ROUTE_20_WIDTH, $9, $3a ; SEAFOAM_ISLANDS_1
diff --git a/data/mapObjects/route21.asm b/data/mapObjects/route21.asm
new file mode 100755
index 00000000..9bb6d92f
--- /dev/null
+++ b/data/mapObjects/route21.asm
@@ -0,0 +1,17 @@
+Route21Object: ; 0x55021 (size=76)
+ db $43 ; border block
+
+ db $0 ; warps
+
+ db $0 ; signs
+
+ db $9 ; people
+ db SPRITE_FISHER2, $18 + 4, $4 + 4, $ff, $d2, $41, FISHER + $C8, $7 ; trainer
+ db SPRITE_FISHER2, $19 + 4, $6 + 4, $ff, $d0, $42, FISHER + $C8, $9 ; trainer
+ db SPRITE_SWIMMER, $1f + 4, $a + 4, $ff, $d1, $43, SWIMMER + $C8, $c ; trainer
+ db SPRITE_SWIMMER, $1e + 4, $c + 4, $ff, $d3, $44, CUE_BALL + $C8, $9 ; trainer
+ db SPRITE_SWIMMER, $3f + 4, $10 + 4, $ff, $d0, $45, SWIMMER + $C8, $d ; trainer
+ db SPRITE_SWIMMER, $47 + 4, $5 + 4, $ff, $d3, $46, SWIMMER + $C8, $e ; trainer
+ db SPRITE_SWIMMER, $47 + 4, $f + 4, $ff, $d2, $47, SWIMMER + $C8, $f ; trainer
+ db SPRITE_FISHER2, $38 + 4, $e + 4, $ff, $d2, $48, FISHER + $C8, $8 ; trainer
+ db SPRITE_FISHER2, $39 + 4, $11 + 4, $ff, $d3, $49, FISHER + $C8, $a ; trainer
diff --git a/data/mapObjects/route22.asm b/data/mapObjects/route22.asm
new file mode 100755
index 00000000..ac67ed9f
--- /dev/null
+++ b/data/mapObjects/route22.asm
@@ -0,0 +1,15 @@
+Route22Object: ; 0x50022 (size=27)
+ db $2c ; border block
+
+ db $1 ; warps
+ db $5, $8, $0, ROUTE_22_GATE
+
+ db $1 ; signs
+ db $b, $7, $3 ; Route22FrontGateText
+
+ db $2 ; people
+ db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_22_WIDTH, $5, $8 ; ROUTE_22_GATE
diff --git a/data/mapObjects/route22gate.asm b/data/mapObjects/route22gate.asm
new file mode 100755
index 00000000..cafc47ce
--- /dev/null
+++ b/data/mapObjects/route22gate.asm
@@ -0,0 +1,19 @@
+Route22GateObject: ; 0x1e720 (size=42)
+ db $a ; border block
+
+ db $4 ; warps
+ db $7, $4, $0, $ff
+ db $7, $5, $0, $ff
+ db $0, $4, $0, $ff
+ db $0, $5, $1, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $4
+ EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $5
+ EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $4
+ EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $5
diff --git a/data/mapObjects/route23.asm b/data/mapObjects/route23.asm
new file mode 100755
index 00000000..15591ae1
--- /dev/null
+++ b/data/mapObjects/route23.asm
@@ -0,0 +1,26 @@
+Route23Object: ; 0x50361 (size=81)
+ db $f ; border block
+
+ db $4 ; warps
+ db $8b, $7, $2, ROUTE_22_GATE
+ db $8b, $8, $3, ROUTE_22_GATE
+ db $1f, $4, $0, VICTORY_ROAD_1
+ db $1f, $e, $1, VICTORY_ROAD_2
+
+ db $1 ; signs
+ db $21, $3, $8 ; Route23Text8
+
+ db $7 ; people
+ db SPRITE_GUARD, $23 + 4, $4 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GUARD, $38 + 4, $a + 4, $ff, $d0, $2 ; person
+ db SPRITE_SWIMMER, $55 + 4, $8 + 4, $ff, $d0, $3 ; person
+ db SPRITE_SWIMMER, $60 + 4, $b + 4, $ff, $d0, $4 ; person
+ db SPRITE_GUARD, $69 + 4, $c + 4, $ff, $d0, $5 ; person
+ db SPRITE_GUARD, $77 + 4, $8 + 4, $ff, $d0, $6 ; person
+ db SPRITE_GUARD, $88 + 4, $8 + 4, $ff, $d0, $7 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_23_WIDTH, $8b, $7 ; ROUTE_22_GATE
+ EVENT_DISP ROUTE_23_WIDTH, $8b, $8 ; ROUTE_22_GATE
+ EVENT_DISP ROUTE_23_WIDTH, $1f, $4 ; VICTORY_ROAD_1
+ EVENT_DISP ROUTE_23_WIDTH, $1f, $e ; VICTORY_ROAD_2
diff --git a/data/mapObjects/route24.asm b/data/mapObjects/route24.asm
new file mode 100755
index 00000000..69764d3d
--- /dev/null
+++ b/data/mapObjects/route24.asm
@@ -0,0 +1,16 @@
+Route24Object: ; 0x506a4 (size=67)
+ db $2c ; border block
+
+ db $0 ; warps
+
+ db $0 ; signs
+
+ db $8 ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $b + 4, $ff, $d2, $41, ROCKET + $C8, $6 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $5 + 4, $ff, $d1, $42, JR__TRAINER_M + $C8, $2 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $13 + 4, $b + 4, $ff, $d2, $43, JR__TRAINER_M + $C8, $3 ; trainer
+ db SPRITE_LASS, $16 + 4, $a + 4, $ff, $d3, $44, LASS + $C8, $7 ; trainer
+ db SPRITE_BUG_CATCHER, $19 + 4, $b + 4, $ff, $d2, $45, YOUNGSTER + $C8, $4 ; trainer
+ db SPRITE_LASS, $1c + 4, $a + 4, $ff, $d3, $46, LASS + $C8, $8 ; trainer
+ db SPRITE_BUG_CATCHER, $1f + 4, $b + 4, $ff, $d2, $47, BUG_CATCHER + $C8, $9 ; trainer
+ db SPRITE_BALL, $5 + 4, $a + 4, $ff, $ff, $88, TM_45 ; item
diff --git a/data/mapObjects/route25.asm b/data/mapObjects/route25.asm
new file mode 100755
index 00000000..8040d7e0
--- /dev/null
+++ b/data/mapObjects/route25.asm
@@ -0,0 +1,23 @@
+Route25Object: ; 0x507b2 (size=94)
+ db $2c ; border block
+
+ db $1 ; warps
+ db $3, $2d, $0, BILLS_HOUSE
+
+ db $1 ; signs
+ db $3, $2b, $b ; Route25Text11
+
+ db $a ; people
+ db SPRITE_BUG_CATCHER, $2 + 4, $e + 4, $ff, $d0, $41, YOUNGSTER + $C8, $5 ; trainer
+ db SPRITE_BUG_CATCHER, $5 + 4, $12 + 4, $ff, $d1, $42, YOUNGSTER + $C8, $6 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $18 + 4, $ff, $d0, $43, JR__TRAINER_M + $C8, $2 ; trainer
+ db SPRITE_LASS, $8 + 4, $12 + 4, $ff, $d3, $44, LASS + $C8, $9 ; trainer
+ db SPRITE_BUG_CATCHER, $3 + 4, $20 + 4, $ff, $d2, $45, YOUNGSTER + $C8, $7 ; trainer
+ db SPRITE_LASS, $4 + 4, $25 + 4, $ff, $d0, $46, LASS + $C8, $a ; trainer
+ db SPRITE_HIKER, $4 + 4, $8 + 4, $ff, $d3, $47, HIKER + $C8, $2 ; trainer
+ db SPRITE_HIKER, $9 + 4, $17 + 4, $ff, $d1, $48, HIKER + $C8, $3 ; trainer
+ db SPRITE_HIKER, $7 + 4, $d + 4, $ff, $d3, $49, HIKER + $C8, $4 ; trainer
+ db SPRITE_BALL, $2 + 4, $16 + 4, $ff, $ff, $8a, TM_19 ; item
+
+ ; warp-to
+ EVENT_DISP ROUTE_25_WIDTH, $3, $2d ; BILLS_HOUSE
diff --git a/data/mapObjects/route2gate.asm b/data/mapObjects/route2gate.asm
new file mode 100755
index 00000000..a1bcc687
--- /dev/null
+++ b/data/mapObjects/route2gate.asm
@@ -0,0 +1,20 @@
+Route2GateObject: ; 0x5d620 (size=48)
+ db $a ; border block
+
+ db $4 ; warps
+ db $0, $4, $3, $ff
+ db $0, $5, $3, $ff
+ db $7, $4, $4, $ff
+ db $7, $5, $4, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $ff, $d2, $1 ; person
+ db SPRITE_BUG_CATCHER, $4 + 4, $5 + 4, $fe, $2, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $4
+ EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $5
+ EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $4
+ EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $5
diff --git a/data/mapObjects/route2house.asm b/data/mapObjects/route2house.asm
new file mode 100755
index 00000000..26adfcf4
--- /dev/null
+++ b/data/mapObjects/route2house.asm
@@ -0,0 +1,16 @@
+Route2HouseObject: ; 0x1df07 (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $2, $ff
+ db $7, $3, $2, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_OAK_AIDE, $4 + 4, $2 + 4, $ff, $d3, $1 ; person
+ db SPRITE_GAMEBOY_KID_COPY, $1 + 4, $4 + 4, $ff, $d0, $2 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $2
+ EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/route3.asm b/data/mapObjects/route3.asm
new file mode 100755
index 00000000..1a8f1ce8
--- /dev/null
+++ b/data/mapObjects/route3.asm
@@ -0,0 +1,18 @@
+Route3Object: ; 0x54208 (size=77)
+ db $2c ; border block
+
+ db $0 ; warps
+
+ db $1 ; signs
+ db $9, $3b, $a ; Route3Text10
+
+ db $9 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $39 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BUG_CATCHER, $6 + 4, $a + 4, $ff, $d3, $42, BUG_CATCHER + $C8, $4 ; trainer
+ db SPRITE_BUG_CATCHER, $4 + 4, $e + 4, $ff, $d0, $43, YOUNGSTER + $C8, $1 ; trainer
+ db SPRITE_LASS, $9 + 4, $10 + 4, $ff, $d2, $44, LASS + $C8, $1 ; trainer
+ db SPRITE_BUG_CATCHER, $5 + 4, $13 + 4, $ff, $d0, $45, BUG_CATCHER + $C8, $5 ; trainer
+ db SPRITE_LASS, $4 + 4, $17 + 4, $ff, $d2, $46, LASS + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $9 + 4, $16 + 4, $ff, $d2, $47, YOUNGSTER + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $6 + 4, $18 + 4, $ff, $d3, $48, BUG_CATCHER + $C8, $6 ; trainer
+ db SPRITE_LASS, $a + 4, $21 + 4, $ff, $d1, $49, LASS + $C8, $3 ; trainer
diff --git a/data/mapObjects/route4.asm b/data/mapObjects/route4.asm
new file mode 100755
index 00000000..f8d70476
--- /dev/null
+++ b/data/mapObjects/route4.asm
@@ -0,0 +1,22 @@
+Route4Object: ; 0x543b2 (size=58)
+ db $2c ; border block
+
+ db $3 ; warps
+ db $5, $b, $0, MT_MOON_POKECENTER
+ db $5, $12, $0, MT_MOON_1
+ db $5, $18, $7, MT_MOON_2
+
+ db $3 ; signs
+ db $5, $c, $4 ; PokeCenterSignText
+ db $7, $11, $5 ; Route4Text5
+ db $7, $1b, $6 ; Route4Text6
+
+ db $3 ; people
+ db SPRITE_LASS, $8 + 4, $9 + 4, $fe, $0, $1 ; person
+ db SPRITE_LASS, $3 + 4, $3f + 4, $ff, $d3, $42, LASS + $C8, $4 ; trainer
+ db SPRITE_BALL, $3 + 4, $39 + 4, $ff, $ff, $83, TM_04 ; item
+
+ ; warp-to
+ EVENT_DISP ROUTE_4_WIDTH, $5, $b ; MT_MOON_POKECENTER
+ EVENT_DISP ROUTE_4_WIDTH, $5, $12 ; MT_MOON_1
+ EVENT_DISP ROUTE_4_WIDTH, $5, $18 ; MT_MOON_2
diff --git a/data/mapObjects/route5.asm b/data/mapObjects/route5.asm
new file mode 100755
index 00000000..c7481faa
--- /dev/null
+++ b/data/mapObjects/route5.asm
@@ -0,0 +1,21 @@
+Route5Object: ; 0x545a3 (size=47)
+ db $a ; border block
+
+ db $5 ; warps
+ db $1d, $a, $3, ROUTE_5_GATE
+ db $1d, $9, $2, ROUTE_5_GATE
+ db $21, $a, $0, ROUTE_5_GATE
+ db $1b, $11, $0, PATH_ENTRANCE_ROUTE_5
+ db $15, $a, $0, DAYCAREM
+
+ db $1 ; signs
+ db $1d, $11, $1 ; Route5Text1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP ROUTE_5_WIDTH, $1d, $a ; ROUTE_5_GATE
+ EVENT_DISP ROUTE_5_WIDTH, $1d, $9 ; ROUTE_5_GATE
+ EVENT_DISP ROUTE_5_WIDTH, $21, $a ; ROUTE_5_GATE
+ EVENT_DISP ROUTE_5_WIDTH, $1b, $11 ; PATH_ENTRANCE_ROUTE_5
+ EVENT_DISP ROUTE_5_WIDTH, $15, $a ; DAYCAREM
diff --git a/data/mapObjects/route5gate.asm b/data/mapObjects/route5gate.asm
new file mode 100755
index 00000000..f71e3e64
--- /dev/null
+++ b/data/mapObjects/route5gate.asm
@@ -0,0 +1,19 @@
+Route5GateObject: ; 0x1dffb (size=42)
+ db $a ; border block
+
+ db $4 ; warps
+ db $5, $3, $2, $ff
+ db $5, $4, $2, $ff
+ db $0, $3, $1, $ff
+ db $0, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $d3, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $3
+ EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $4
+ EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $3
+ EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $4
diff --git a/data/mapObjects/route6.asm b/data/mapObjects/route6.asm
new file mode 100755
index 00000000..bca89fb5
--- /dev/null
+++ b/data/mapObjects/route6.asm
@@ -0,0 +1,25 @@
+Route6Object: ; 0x58022 (size=87)
+ db $f ; border block
+
+ db $4 ; warps
+ db $1, $9, $2, ROUTE_6_GATE
+ db $1, $a, $2, ROUTE_6_GATE
+ db $7, $a, $0, ROUTE_6_GATE
+ db $d, $11, $0, PATH_ENTRANCE_ROUTE_6
+
+ db $1 ; signs
+ db $f, $13, $7 ; Route6Text7
+
+ db $6 ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $15 + 4, $a + 4, $ff, $d3, $41, JR__TRAINER_M + $C8, $4 ; trainer
+ db SPRITE_LASS, $15 + 4, $b + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $f + 4, $0 + 4, $ff, $d3, $43, BUG_CATCHER + $C8, $a ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $5 ; trainer
+ db SPRITE_LASS, $1e + 4, $b + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $3 ; trainer
+ db SPRITE_BUG_CATCHER, $1a + 4, $13 + 4, $ff, $d2, $46, BUG_CATCHER + $C8, $b ; trainer
+
+ ; warp-to
+ EVENT_DISP ROUTE_6_WIDTH, $1, $9 ; ROUTE_6_GATE
+ EVENT_DISP ROUTE_6_WIDTH, $1, $a ; ROUTE_6_GATE
+ EVENT_DISP ROUTE_6_WIDTH, $7, $a ; ROUTE_6_GATE
+ EVENT_DISP ROUTE_6_WIDTH, $d, $11 ; PATH_ENTRANCE_ROUTE_6
diff --git a/data/mapObjects/route6gate.asm b/data/mapObjects/route6gate.asm
new file mode 100755
index 00000000..068b1cc3
--- /dev/null
+++ b/data/mapObjects/route6gate.asm
@@ -0,0 +1,19 @@
+Route6GateObject: ; 0x1e0be (size=42)
+ db $a ; border block
+
+ db $4 ; warps
+ db $5, $3, $2, $ff
+ db $5, $4, $2, $ff
+ db $0, $3, $1, $ff
+ db $0, $4, $1, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $3
+ EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $4
+ EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $3
+ EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $4
diff --git a/data/mapObjects/route7.asm b/data/mapObjects/route7.asm
new file mode 100755
index 00000000..43425a11
--- /dev/null
+++ b/data/mapObjects/route7.asm
@@ -0,0 +1,21 @@
+Route7Object: ; 0x48022 (size=47)
+ db $f ; border block
+
+ db $5 ; warps
+ db $9, $12, $2, ROUTE_7_GATE
+ db $a, $12, $3, ROUTE_7_GATE
+ db $9, $b, $0, ROUTE_7_GATE
+ db $a, $b, $1, ROUTE_7_GATE
+ db $d, $5, $0, PATH_ENTRANCE_ROUTE_7
+
+ db $1 ; signs
+ db $d, $3, $1 ; Route7Text1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP ROUTE_7_WIDTH, $9, $12 ; ROUTE_7_GATE
+ EVENT_DISP ROUTE_7_WIDTH, $a, $12 ; ROUTE_7_GATE
+ EVENT_DISP ROUTE_7_WIDTH, $9, $b ; ROUTE_7_GATE
+ EVENT_DISP ROUTE_7_WIDTH, $a, $b ; ROUTE_7_GATE
+ EVENT_DISP ROUTE_7_WIDTH, $d, $5 ; PATH_ENTRANCE_ROUTE_7
diff --git a/data/mapObjects/route7gate.asm b/data/mapObjects/route7gate.asm
new file mode 100755
index 00000000..752b53f9
--- /dev/null
+++ b/data/mapObjects/route7gate.asm
@@ -0,0 +1,19 @@
+Route7GateObject: ; 0x1e185 (size=42)
+ db $a ; border block
+
+ db $4 ; warps
+ db $3, $0, $3, $ff
+ db $4, $0, $3, $ff
+ db $3, $5, $0, $ff
+ db $4, $5, $1, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $0
+ EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $0
+ EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $5
+ EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $5
diff --git a/data/mapObjects/route8.asm b/data/mapObjects/route8.asm
new file mode 100755
index 00000000..f0e2434b
--- /dev/null
+++ b/data/mapObjects/route8.asm
@@ -0,0 +1,30 @@
+Route8Object: ; 0x5814f (size=119)
+ db $2c ; border block
+
+ db $5 ; warps
+ db $9, $1, $0, ROUTE_8_GATE
+ db $a, $1, $1, ROUTE_8_GATE
+ db $9, $8, $2, ROUTE_8_GATE
+ db $a, $8, $3, ROUTE_8_GATE
+ db $3, $d, $0, PATH_ENTRANCE_ROUTE_8
+
+ db $1 ; signs
+ db $3, $11, $a ; Route8Text10
+
+ db $9 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $8 + 4, $ff, $d3, $41, SUPER_NERD + $C8, $3 ; trainer
+ db SPRITE_GAMBLER, $9 + 4, $d + 4, $ff, $d1, $42, GAMBLER + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $6 + 4, $2a + 4, $ff, $d1, $43, SUPER_NERD + $C8, $4 ; trainer
+ db SPRITE_LASS, $3 + 4, $1a + 4, $ff, $d2, $44, LASS + $C8, $d ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $1a + 4, $ff, $d3, $45, SUPER_NERD + $C8, $5 ; trainer
+ db SPRITE_LASS, $5 + 4, $1a + 4, $ff, $d2, $46, LASS + $C8, $e ; trainer
+ db SPRITE_LASS, $6 + 4, $1a + 4, $ff, $d3, $47, LASS + $C8, $f ; trainer
+ db SPRITE_GAMBLER, $d + 4, $2e + 4, $ff, $d0, $48, GAMBLER + $C8, $7 ; trainer
+ db SPRITE_LASS, $c + 4, $33 + 4, $ff, $d2, $49, LASS + $C8, $10 ; trainer
+
+ ; warp-to
+ EVENT_DISP ROUTE_8_WIDTH, $9, $1 ; ROUTE_8_GATE
+ EVENT_DISP ROUTE_8_WIDTH, $a, $1 ; ROUTE_8_GATE
+ EVENT_DISP ROUTE_8_WIDTH, $9, $8 ; ROUTE_8_GATE
+ EVENT_DISP ROUTE_8_WIDTH, $a, $8 ; ROUTE_8_GATE
+ EVENT_DISP ROUTE_8_WIDTH, $3, $d ; PATH_ENTRANCE_ROUTE_8
diff --git a/data/mapObjects/route8gate.asm b/data/mapObjects/route8gate.asm
new file mode 100755
index 00000000..c38eed26
--- /dev/null
+++ b/data/mapObjects/route8gate.asm
@@ -0,0 +1,19 @@
+Route8GateObject: ; 0x1e247 (size=42)
+ db $a ; border block
+
+ db $4 ; warps
+ db $3, $0, $0, $ff
+ db $4, $0, $1, $ff
+ db $3, $5, $2, $ff
+ db $4, $5, $3, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GUARD, $1 + 4, $2 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $0
+ EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $0
+ EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $5
+ EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $5
diff --git a/data/mapObjects/route9.asm b/data/mapObjects/route9.asm
new file mode 100755
index 00000000..f0fc9eeb
--- /dev/null
+++ b/data/mapObjects/route9.asm
@@ -0,0 +1,19 @@
+Route9Object: ; 0x546a8 (size=86)
+ db $2c ; border block
+
+ db $0 ; warps
+
+ db $1 ; signs
+ db $7, $19, $b ; Route9Text11
+
+ db $a ; people
+ db SPRITE_LASS, $a + 4, $d + 4, $ff, $d2, $41, JR__TRAINER_F + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $18 + 4, $ff, $d2, $42, JR__TRAINER_M + $C8, $7 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $1f + 4, $ff, $d3, $43, JR__TRAINER_M + $C8, $8 ; trainer
+ db SPRITE_LASS, $8 + 4, $30 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $6 ; trainer
+ db SPRITE_HIKER, $f + 4, $10 + 4, $ff, $d2, $45, HIKER + $C8, $b ; trainer
+ db SPRITE_HIKER, $3 + 4, $2b + 4, $ff, $d2, $46, HIKER + $C8, $6 ; trainer
+ db SPRITE_BUG_CATCHER, $2 + 4, $16 + 4, $ff, $d0, $47, BUG_CATCHER + $C8, $d ; trainer
+ db SPRITE_HIKER, $f + 4, $2d + 4, $ff, $d3, $48, HIKER + $C8, $5 ; trainer
+ db SPRITE_BUG_CATCHER, $8 + 4, $28 + 4, $ff, $d3, $49, BUG_CATCHER + $C8, $e ; trainer
+ db SPRITE_BALL, $f + 4, $a + 4, $ff, $ff, $8a, TM_30 ; item
diff --git a/data/mapObjects/safarizonecenter.asm b/data/mapObjects/safarizonecenter.asm
new file mode 100755
index 00000000..1dbcd567
--- /dev/null
+++ b/data/mapObjects/safarizonecenter.asm
@@ -0,0 +1,31 @@
+SafariZoneCenterObject: ; 0x45bc5 (size=89)
+ db $0 ; border block
+
+ db $9 ; warps
+ db $19, $e, $2, SAFARI_ZONE_ENTRANCE
+ db $19, $f, $3, SAFARI_ZONE_ENTRANCE
+ db $a, $0, $4, SAFARI_ZONE_WEST
+ db $b, $0, $5, SAFARI_ZONE_WEST
+ db $0, $e, $4, SAFARI_ZONE_NORTH
+ db $0, $f, $5, SAFARI_ZONE_NORTH
+ db $a, $1d, $2, SAFARI_ZONE_EAST
+ db $b, $1d, $3, SAFARI_ZONE_EAST
+ db $13, $11, $0, SAFARI_ZONE_REST_HOUSE_1
+
+ db $2 ; signs
+ db $14, $12, $2 ; SafariZoneCenterText2
+ db $16, $e, $3 ; SafariZoneCenterText3
+
+ db $1 ; people
+ db SPRITE_BALL, $a + 4, $e + 4, $ff, $ff, $81, NUGGET ; item
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $e ; SAFARI_ZONE_ENTRANCE
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $f ; SAFARI_ZONE_ENTRANCE
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $0 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $0 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $e ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $f ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $1d ; SAFARI_ZONE_EAST
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $1d ; SAFARI_ZONE_EAST
+ EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $13, $11 ; SAFARI_ZONE_REST_HOUSE_1
diff --git a/data/mapObjects/safarizoneeast.asm b/data/mapObjects/safarizoneeast.asm
new file mode 100755
index 00000000..678276a9
--- /dev/null
+++ b/data/mapObjects/safarizoneeast.asm
@@ -0,0 +1,27 @@
+SafariZoneEastObject: ; 0x4588b (size=81)
+ db $0 ; border block
+
+ db $5 ; warps
+ db $4, $0, $6, SAFARI_ZONE_NORTH
+ db $5, $0, $7, SAFARI_ZONE_NORTH
+ db $16, $0, $6, SAFARI_ZONE_CENTER
+ db $17, $0, $6, SAFARI_ZONE_CENTER
+ db $9, $19, $0, SAFARI_ZONE_REST_HOUSE_3
+
+ db $3 ; signs
+ db $a, $1a, $5 ; SafariZoneEastText5
+ db $4, $6, $6 ; SafariZoneEastText6
+ db $17, $5, $7 ; SafariZoneEastText7
+
+ db $4 ; people
+ db SPRITE_BALL, $a + 4, $15 + 4, $ff, $ff, $81, FULL_RESTORE ; item
+ db SPRITE_BALL, $7 + 4, $3 + 4, $ff, $ff, $82, MAX_POTION ; item
+ db SPRITE_BALL, $d + 4, $14 + 4, $ff, $ff, $83, CARBOS ; item
+ db SPRITE_BALL, $c + 4, $f + 4, $ff, $ff, $84, TM_37 ; item
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $4, $0 ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $5, $0 ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $16, $0 ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $17, $0 ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $9, $19 ; SAFARI_ZONE_REST_HOUSE_3
diff --git a/data/mapObjects/safarizoneentrance.asm b/data/mapObjects/safarizoneentrance.asm
new file mode 100755
index 00000000..c252109c
--- /dev/null
+++ b/data/mapObjects/safarizoneentrance.asm
@@ -0,0 +1,20 @@
+SafariZoneEntranceObject: ; 0x753f5 (size=48)
+ db $a ; border block
+
+ db $4 ; warps
+ db $5, $3, $4, $ff
+ db $5, $4, $4, $ff
+ db $0, $3, $0, SAFARI_ZONE_CENTER
+ db $0, $4, $1, SAFARI_ZONE_CENTER
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_WHITE_PLAYER, $2 + 4, $6 + 4, $ff, $d2, $1 ; person
+ db SPRITE_WHITE_PLAYER, $4 + 4, $1 + 4, $ff, $d3, $2 ; person
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $3
+ EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $4
+ EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $3 ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $4 ; SAFARI_ZONE_CENTER
diff --git a/data/mapObjects/safarizonenorth.asm b/data/mapObjects/safarizonenorth.asm
new file mode 100755
index 00000000..4b9a4786
--- /dev/null
+++ b/data/mapObjects/safarizonenorth.asm
@@ -0,0 +1,35 @@
+SafariZoneNorthObject: ; 0x459d5 (size=105)
+ db $0 ; border block
+
+ db $9 ; warps
+ db $23, $2, $0, SAFARI_ZONE_WEST
+ db $23, $3, $1, SAFARI_ZONE_WEST
+ db $23, $8, $2, SAFARI_ZONE_WEST
+ db $23, $9, $3, SAFARI_ZONE_WEST
+ db $23, $14, $4, SAFARI_ZONE_CENTER
+ db $23, $15, $5, SAFARI_ZONE_CENTER
+ db $1e, $27, $0, SAFARI_ZONE_EAST
+ db $1f, $27, $1, SAFARI_ZONE_EAST
+ db $3, $23, $0, SAFARI_ZONE_REST_HOUSE_4
+
+ db $5 ; signs
+ db $4, $24, $3 ; SafariZoneNorthText3
+ db $19, $4, $4 ; SafariZoneNorthText4
+ db $1f, $d, $5 ; SafariZoneNorthText5
+ db $21, $13, $6 ; SafariZoneNorthText6
+ db $1c, $1a, $7 ; SafariZoneNorthText7
+
+ db $2 ; people
+ db SPRITE_BALL, $1 + 4, $19 + 4, $ff, $ff, $81, PROTEIN ; item
+ db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $82, TM_40 ; item
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $2 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $3 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $8 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $9 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $14 ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $15 ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1e, $27 ; SAFARI_ZONE_EAST
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1f, $27 ; SAFARI_ZONE_EAST
+ EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $3, $23 ; SAFARI_ZONE_REST_HOUSE_4
diff --git a/data/mapObjects/safarizoneresthouse1.asm b/data/mapObjects/safarizoneresthouse1.asm
new file mode 100755
index 00000000..492f8f38
--- /dev/null
+++ b/data/mapObjects/safarizoneresthouse1.asm
@@ -0,0 +1,16 @@
+SafariZoneRestHouse1Object: ; 0x45cfe (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $8, SAFARI_ZONE_CENTER
+ db $7, $3, $8, SAFARI_ZONE_CENTER
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $fe, $1, $2 ; person
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $2 ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $3 ; SAFARI_ZONE_CENTER
diff --git a/data/mapObjects/safarizoneresthouse2.asm b/data/mapObjects/safarizoneresthouse2.asm
new file mode 100755
index 00000000..f6918eed
--- /dev/null
+++ b/data/mapObjects/safarizoneresthouse2.asm
@@ -0,0 +1,17 @@
+SafariZoneRestHouse2Object: ; 0x45d43 (size=38)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $7, SAFARI_ZONE_WEST
+ db $7, $3, $7, SAFARI_ZONE_WEST
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_OAK_AIDE, $4 + 4, $4 + 4, $fe, $0, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $0 + 4, $ff, $d3, $2 ; person
+ db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $d0, $3 ; person
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $2 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $3 ; SAFARI_ZONE_WEST
diff --git a/data/mapObjects/safarizoneresthouse3.asm b/data/mapObjects/safarizoneresthouse3.asm
new file mode 100755
index 00000000..70365365
--- /dev/null
+++ b/data/mapObjects/safarizoneresthouse3.asm
@@ -0,0 +1,17 @@
+SafariZoneRestHouse3Object: ; 0x45d8e (size=38)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $4, SAFARI_ZONE_EAST
+ db $7, $3, $4, SAFARI_ZONE_EAST
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_OAK_AIDE, $3 + 4, $1 + 4, $fe, $1, $1 ; person
+ db SPRITE_ROCKER, $2 + 4, $4 + 4, $ff, $ff, $2 ; person
+ db SPRITE_LAPRAS_GIVER, $2 + 4, $5 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $2 ; SAFARI_ZONE_EAST
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $3 ; SAFARI_ZONE_EAST
diff --git a/data/mapObjects/safarizoneresthouse4.asm b/data/mapObjects/safarizoneresthouse4.asm
new file mode 100755
index 00000000..53beef42
--- /dev/null
+++ b/data/mapObjects/safarizoneresthouse4.asm
@@ -0,0 +1,17 @@
+SafariZoneRestHouse4Object: ; 0x45dd9 (size=38)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $8, SAFARI_ZONE_NORTH
+ db $7, $3, $8, SAFARI_ZONE_NORTH
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_OAK_AIDE, $3 + 4, $6 + 4, $fe, $2, $1 ; person
+ db SPRITE_WHITE_PLAYER, $4 + 4, $3 + 4, $ff, $ff, $2 ; person
+ db SPRITE_GENTLEMAN, $5 + 4, $1 + 4, $fe, $1, $3 ; person
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $2 ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $3 ; SAFARI_ZONE_NORTH
diff --git a/data/mapObjects/safarizonesecrethouse.asm b/data/mapObjects/safarizonesecrethouse.asm
new file mode 100755
index 00000000..79032c70
--- /dev/null
+++ b/data/mapObjects/safarizonesecrethouse.asm
@@ -0,0 +1,15 @@
+SafariZoneSecretHouseObject: ; 0x4a365 (size=26)
+ db $17 ; border block
+
+ db $2 ; warps
+ db $7, $2, $6, SAFARI_ZONE_WEST
+ db $7, $3, $6, SAFARI_ZONE_WEST
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $2 ; SAFARI_ZONE_WEST
+ EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $3 ; SAFARI_ZONE_WEST
diff --git a/data/mapObjects/safarizonewest.asm b/data/mapObjects/safarizonewest.asm
new file mode 100755
index 00000000..5cdae65c
--- /dev/null
+++ b/data/mapObjects/safarizonewest.asm
@@ -0,0 +1,34 @@
+SafariZoneWestObject: ; 0x4a1dc (size=108)
+ db $0 ; border block
+
+ db $8 ; warps
+ db $0, $14, $0, SAFARI_ZONE_NORTH
+ db $0, $15, $1, SAFARI_ZONE_NORTH
+ db $0, $1a, $2, SAFARI_ZONE_NORTH
+ db $0, $1b, $3, SAFARI_ZONE_NORTH
+ db $16, $1d, $2, SAFARI_ZONE_CENTER
+ db $17, $1d, $3, SAFARI_ZONE_CENTER
+ db $3, $3, $0, SAFARI_ZONE_SECRET_HOUSE
+ db $b, $b, $0, SAFARI_ZONE_REST_HOUSE_2
+
+ db $4 ; signs
+ db $c, $c, $5 ; SafariZoneWestText5
+ db $3, $11, $6 ; SafariZoneWestText6
+ db $4, $1a, $7 ; SafariZoneWestText7
+ db $16, $18, $8 ; SafariZoneWestText8
+
+ db $4 ; people
+ db SPRITE_BALL, $14 + 4, $8 + 4, $ff, $ff, $81, MAX_POTION ; item
+ db SPRITE_BALL, $7 + 4, $9 + 4, $ff, $ff, $82, TM_32 ; item
+ db SPRITE_BALL, $12 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item
+ db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $84, GOLD_TEETH ; item
+
+ ; warp-to
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $14 ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $15 ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1a ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1b ; SAFARI_ZONE_NORTH
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $16, $1d ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $17, $1d ; SAFARI_ZONE_CENTER
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $3, $3 ; SAFARI_ZONE_SECRET_HOUSE
+ EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $b, $b ; SAFARI_ZONE_REST_HOUSE_2
diff --git a/data/mapObjects/saffroncity.asm b/data/mapObjects/saffroncity.asm
new file mode 100755
index 00000000..5ec54aff
--- /dev/null
+++ b/data/mapObjects/saffroncity.asm
@@ -0,0 +1,51 @@
+SaffronCityObject: ; 0x509dc (size=188)
+ db $f ; border block
+
+ db $8 ; warps
+ db $5, $7, $0, COPYCATS_HOUSE_1F
+ db $3, $1a, $0, FIGHTING_DOJO
+ db $3, $22, $0, SAFFRON_GYM
+ db $b, $d, $0, SAFFRON_HOUSE_1
+ db $b, $19, $0, SAFFRON_MART
+ db $15, $12, $0, SILPH_CO_1F
+ db $1d, $9, $0, SAFFRON_POKECENTER
+ db $1d, $1d, $0, SAFFRON_HOUSE_2
+
+ db $a ; signs
+ db $5, $11, $10 ; SaffronCityText16
+ db $5, $1b, $11 ; SaffronCityText17
+ db $5, $23, $12 ; SaffronCityText18
+ db $b, $1a, $13 ; MartSignText
+ db $13, $27, $14 ; SaffronCityText20
+ db $15, $5, $15 ; SaffronCityText21
+ db $15, $f, $16 ; SaffronCityText22
+ db $1d, $a, $17 ; PokeCenterSignText
+ db $1d, $1b, $18 ; SaffronCityText24
+ db $13, $1, $19 ; SaffronCityText25
+
+ db $f ; people
+ db SPRITE_ROCKET, $6 + 4, $7 + 4, $ff, $ff, $1 ; person
+ db SPRITE_ROCKET, $8 + 4, $14 + 4, $fe, $2, $2 ; person
+ db SPRITE_ROCKET, $4 + 4, $22 + 4, $ff, $ff, $3 ; person
+ db SPRITE_ROCKET, $c + 4, $d + 4, $ff, $ff, $4 ; person
+ db SPRITE_ROCKET, $19 + 4, $b + 4, $fe, $2, $5 ; person
+ db SPRITE_ROCKET, $d + 4, $20 + 4, $fe, $2, $6 ; person
+ db SPRITE_ROCKET, $1e + 4, $12 + 4, $fe, $2, $7 ; person
+ db SPRITE_OAK_AIDE, $e + 4, $8 + 4, $fe, $0, $8 ; person
+ db SPRITE_LAPRAS_GIVER, $17 + 4, $17 + 4, $ff, $ff, $9 ; person
+ db SPRITE_ERIKA, $1e + 4, $11 + 4, $fe, $2, $a ; person
+ db SPRITE_GENTLEMAN, $c + 4, $1e + 4, $ff, $d0, $b ; person
+ db SPRITE_BIRD, $c + 4, $1f + 4, $ff, $d0, $c ; person
+ db SPRITE_ROCKER, $8 + 4, $12 + 4, $ff, $d1, $d ; person
+ db SPRITE_ROCKET, $16 + 4, $12 + 4, $ff, $d0, $e ; person
+ db SPRITE_ROCKET, $16 + 4, $13 + 4, $ff, $d0, $f ; person
+
+ ; warp-to
+ EVENT_DISP SAFFRON_CITY_WIDTH, $5, $7 ; COPYCATS_HOUSE_1F
+ EVENT_DISP SAFFRON_CITY_WIDTH, $3, $1a ; FIGHTING_DOJO
+ EVENT_DISP SAFFRON_CITY_WIDTH, $3, $22 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_CITY_WIDTH, $b, $d ; SAFFRON_HOUSE_1
+ EVENT_DISP SAFFRON_CITY_WIDTH, $b, $19 ; SAFFRON_MART
+ EVENT_DISP SAFFRON_CITY_WIDTH, $15, $12 ; SILPH_CO_1F
+ EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $9 ; SAFFRON_POKECENTER
+ EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $1d ; SAFFRON_HOUSE_2
diff --git a/data/mapObjects/saffrongym.asm b/data/mapObjects/saffrongym.asm
new file mode 100755
index 00000000..b7d8d0f6
--- /dev/null
+++ b/data/mapObjects/saffrongym.asm
@@ -0,0 +1,83 @@
+SaffronGymObject: ; 0x5d259 (size=330)
+ db $2e ; border block
+
+ db $20 ; warps
+ db $11, $8, $2, $ff
+ db $11, $9, $2, $ff
+ db $3, $1, $16, SAFFRON_GYM
+ db $3, $5, $f, SAFFRON_GYM
+ db $5, $1, $12, SAFFRON_GYM
+ db $5, $5, $8, SAFFRON_GYM
+ db $9, $1, $1b, SAFFRON_GYM
+ db $9, $5, $10, SAFFRON_GYM
+ db $b, $1, $5, SAFFRON_GYM
+ db $b, $5, $d, SAFFRON_GYM
+ db $f, $1, $17, SAFFRON_GYM
+ db $f, $5, $1e, SAFFRON_GYM
+ db $11, $1, $11, SAFFRON_GYM
+ db $11, $5, $9, SAFFRON_GYM
+ db $3, $9, $1a, SAFFRON_GYM
+ db $3, $b, $3, SAFFRON_GYM
+ db $5, $9, $7, SAFFRON_GYM
+ db $5, $b, $c, SAFFRON_GYM
+ db $b, $b, $4, SAFFRON_GYM
+ db $f, $b, $1f, SAFFRON_GYM
+ db $3, $f, $18, SAFFRON_GYM
+ db $3, $13, $1c, SAFFRON_GYM
+ db $5, $f, $2, SAFFRON_GYM
+ db $5, $13, $a, SAFFRON_GYM
+ db $9, $f, $14, SAFFRON_GYM
+ db $9, $13, $1d, SAFFRON_GYM
+ db $b, $f, $e, SAFFRON_GYM
+ db $b, $13, $6, SAFFRON_GYM
+ db $f, $f, $15, SAFFRON_GYM
+ db $f, $13, $19, SAFFRON_GYM
+ db $11, $f, $b, SAFFRON_GYM
+ db $11, $13, $13, SAFFRON_GYM
+
+ db $0 ; signs
+
+ db $9 ; people
+ db SPRITE_GIRL, $8 + 4, $9 + 4, $ff, $d0, $41, SABRINA + $C8, $1 ; trainer
+ db SPRITE_MEDIUM, $1 + 4, $a + 4, $ff, $d0, $42, CHANNELER + $C8, $16 ; trainer
+ db SPRITE_BUG_CATCHER, $1 + 4, $11 + 4, $ff, $d0, $43, PSYCHIC_TR + $C8, $1 ; trainer
+ db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d0, $44, CHANNELER + $C8, $17 ; trainer
+ db SPRITE_BUG_CATCHER, $7 + 4, $11 + 4, $ff, $d0, $45, PSYCHIC_TR + $C8, $2 ; trainer
+ db SPRITE_MEDIUM, $d + 4, $3 + 4, $ff, $d0, $46, CHANNELER + $C8, $18 ; trainer
+ db SPRITE_BUG_CATCHER, $d + 4, $11 + 4, $ff, $d0, $47, PSYCHIC_TR + $C8, $3 ; trainer
+ db SPRITE_BUG_CATCHER, $1 + 4, $3 + 4, $ff, $d0, $48, PSYCHIC_TR + $C8, $4 ; trainer
+ db SPRITE_GYM_HELPER, $f + 4, $a + 4, $ff, $d0, $9 ; person
+
+ ; warp-to
+ EVENT_DISP SAFFRON_GYM_WIDTH, $11, $8
+ EVENT_DISP SAFFRON_GYM_WIDTH, $11, $9
+ EVENT_DISP SAFFRON_GYM_WIDTH, $3, $1 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $3, $5 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $5, $1 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $5, $5 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $9, $1 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $9, $5 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $b, $1 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $b, $5 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $f, $1 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $f, $5 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $11, $1 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $11, $5 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $3, $9 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $3, $b ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $5, $9 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $5, $b ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $b, $b ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $f, $b ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $3, $f ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $3, $13 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $5, $f ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $5, $13 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $9, $f ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $9, $13 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $b, $f ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $b, $13 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $f, $f ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $f, $13 ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $11, $f ; SAFFRON_GYM
+ EVENT_DISP SAFFRON_GYM_WIDTH, $11, $13 ; SAFFRON_GYM
diff --git a/data/mapObjects/saffronhouse1.asm b/data/mapObjects/saffronhouse1.asm
new file mode 100755
index 00000000..991caa7d
--- /dev/null
+++ b/data/mapObjects/saffronhouse1.asm
@@ -0,0 +1,18 @@
+SaffronHouse1Object: ; 0x1de04 (size=44)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $3, $ff
+ db $7, $3, $3, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BIRD, $4 + 4, $0 + 4, $fe, $1, $2 ; person
+ db SPRITE_BUG_CATCHER, $1 + 4, $4 + 4, $ff, $d0, $3 ; person
+ db SPRITE_PAPER_SHEET, $3 + 4, $3 + 4, $ff, $ff, $4 ; person
+
+ ; warp-to
+ EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $2
+ EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $3
diff --git a/data/mapObjects/saffronhouse2.asm b/data/mapObjects/saffronhouse2.asm
new file mode 100755
index 00000000..e9b68e7c
--- /dev/null
+++ b/data/mapObjects/saffronhouse2.asm
@@ -0,0 +1,15 @@
+SaffronHouse2Object: ; 0x1de8a (size=26)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $7, $ff
+ db $7, $3, $7, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person
+
+ ; warp-to
+ EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $2
+ EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $3
diff --git a/data/mapObjects/saffronmart.asm b/data/mapObjects/saffronmart.asm
new file mode 100755
index 00000000..30951c12
--- /dev/null
+++ b/data/mapObjects/saffronmart.asm
@@ -0,0 +1,17 @@
+SaffronMartObject: ; 0x5d41c (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $4, $ff
+ db $7, $4, $4, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $ff, $2 ; person
+ db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $0, $3 ; person
+
+ ; warp-to
+ EVENT_DISP SAFFRON_MART_WIDTH, $7, $3
+ EVENT_DISP SAFFRON_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/saffronpokecenter.asm b/data/mapObjects/saffronpokecenter.asm
new file mode 100755
index 00000000..251aeea5
--- /dev/null
+++ b/data/mapObjects/saffronpokecenter.asm
@@ -0,0 +1,18 @@
+SaffronPokecenterObject: ; 0x5d54f (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $6, $ff
+ db $7, $4, $6, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $ff, $2 ; person
+ db SPRITE_GENTLEMAN, $3 + 4, $8 + 4, $ff, $d0, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/school.asm b/data/mapObjects/school.asm
new file mode 100755
index 00000000..c26844a4
--- /dev/null
+++ b/data/mapObjects/school.asm
@@ -0,0 +1,16 @@
+SchoolObject: ; 0x1d55d (size=32)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $2, $ff
+ db $7, $3, $2, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BRUNETTE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person
+ db SPRITE_LASS, $1 + 4, $4 + 4, $ff, $d0, $2 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $2
+ EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $3
diff --git a/data/mapObjects/seafoamislands1.asm b/data/mapObjects/seafoamislands1.asm
new file mode 100755
index 00000000..85f344e8
--- /dev/null
+++ b/data/mapObjects/seafoamislands1.asm
@@ -0,0 +1,30 @@
+SeafoamIslands1Object: ; 0x4484f (size=72)
+ db $7d ; border block
+
+ db $7 ; warps
+ db $11, $4, $0, $ff
+ db $11, $5, $0, $ff
+ db $11, $1a, $1, $ff
+ db $11, $1b, $1, $ff
+ db $5, $7, $1, SEAFOAM_ISLANDS_2
+ db $3, $19, $6, SEAFOAM_ISLANDS_2
+ db $f, $17, $4, SEAFOAM_ISLANDS_2
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BOULDER, $a + 4, $12 + 4, $ff, $10, $1 ; person
+ db SPRITE_BOULDER, $7 + 4, $1a + 4, $ff, $10, $2 ; person
+
+ ; warp-to
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $4
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $5
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1a
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1b
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_2
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_2
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_2
+
+ ; holes
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $11
+ EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $18
diff --git a/data/mapObjects/seafoamislands2.asm b/data/mapObjects/seafoamislands2.asm
new file mode 100755
index 00000000..56251d1c
--- /dev/null
+++ b/data/mapObjects/seafoamislands2.asm
@@ -0,0 +1,26 @@
+SeafoamIslands2Object: ; 0x46376 (size=72)
+ db $7d ; border block
+
+ db $7 ; warps
+ db $2, $4, $0, SEAFOAM_ISLANDS_3
+ db $5, $7, $4, SEAFOAM_ISLANDS_1
+ db $7, $d, $2, SEAFOAM_ISLANDS_3
+ db $f, $13, $3, SEAFOAM_ISLANDS_3
+ db $f, $17, $6, SEAFOAM_ISLANDS_1
+ db $b, $19, $5, SEAFOAM_ISLANDS_3
+ db $3, $19, $5, SEAFOAM_ISLANDS_1
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BOULDER, $6 + 4, $11 + 4, $ff, $10, $1 ; person
+ db SPRITE_BOULDER, $6 + 4, $16 + 4, $ff, $10, $2 ; person
+
+ ; warp-to
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $2, $4 ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_1
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $7, $d ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_1
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_1
diff --git a/data/mapObjects/seafoamislands3.asm b/data/mapObjects/seafoamislands3.asm
new file mode 100755
index 00000000..82d963a1
--- /dev/null
+++ b/data/mapObjects/seafoamislands3.asm
@@ -0,0 +1,26 @@
+SeafoamIslands3Object: ; 0x464b2 (size=72)
+ db $7d ; border block
+
+ db $7 ; warps
+ db $3, $5, $0, SEAFOAM_ISLANDS_2
+ db $d, $5, $0, SEAFOAM_ISLANDS_4
+ db $7, $d, $2, SEAFOAM_ISLANDS_2
+ db $f, $13, $3, SEAFOAM_ISLANDS_2
+ db $3, $19, $3, SEAFOAM_ISLANDS_4
+ db $b, $19, $5, SEAFOAM_ISLANDS_2
+ db $e, $19, $4, SEAFOAM_ISLANDS_4
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $10, $1 ; person
+ db SPRITE_BOULDER, $6 + 4, $17 + 4, $ff, $10, $2 ; person
+
+ ; warp-to
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $5 ; SEAFOAM_ISLANDS_2
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $d, $5 ; SEAFOAM_ISLANDS_4
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $7, $d ; SEAFOAM_ISLANDS_2
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_2
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_4
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_2
+ EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_4
diff --git a/data/mapObjects/seafoamislands4.asm b/data/mapObjects/seafoamislands4.asm
new file mode 100755
index 00000000..aa18110a
--- /dev/null
+++ b/data/mapObjects/seafoamislands4.asm
@@ -0,0 +1,30 @@
+SeafoamIslands4Object: ; 0x466a6 (size=96)
+ db $7d ; border block
+
+ db $7 ; warps
+ db $c, $5, $1, SEAFOAM_ISLANDS_3
+ db $6, $8, $2, SEAFOAM_ISLANDS_5
+ db $4, $19, $3, SEAFOAM_ISLANDS_5
+ db $3, $19, $4, SEAFOAM_ISLANDS_3
+ db $e, $19, $6, SEAFOAM_ISLANDS_3
+ db $11, $14, $0, SEAFOAM_ISLANDS_5
+ db $11, $15, $1, SEAFOAM_ISLANDS_5
+
+ db $0 ; signs
+
+ db $6 ; people
+ db SPRITE_BOULDER, $e + 4, $5 + 4, $ff, $10, $1 ; person
+ db SPRITE_BOULDER, $f + 4, $3 + 4, $ff, $10, $2 ; person
+ db SPRITE_BOULDER, $e + 4, $8 + 4, $ff, $10, $3 ; person
+ db SPRITE_BOULDER, $e + 4, $9 + 4, $ff, $10, $4 ; person
+ db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $ff, $5 ; person
+ db SPRITE_BOULDER, $6 + 4, $13 + 4, $ff, $ff, $6 ; person
+
+ ; warp-to
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $c, $5 ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $6, $8 ; SEAFOAM_ISLANDS_5
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_5
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_3
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_5
+ EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_5
diff --git a/data/mapObjects/seafoamislands5.asm b/data/mapObjects/seafoamislands5.asm
new file mode 100755
index 00000000..27246d20
--- /dev/null
+++ b/data/mapObjects/seafoamislands5.asm
@@ -0,0 +1,23 @@
+SeafoamIslands5Object: ; 0x468bc (size=62)
+ db $7d ; border block
+
+ db $4 ; warps
+ db $11, $14, $5, SEAFOAM_ISLANDS_4
+ db $11, $15, $6, SEAFOAM_ISLANDS_4
+ db $7, $b, $1, SEAFOAM_ISLANDS_4
+ db $4, $19, $2, SEAFOAM_ISLANDS_4
+
+ db $2 ; signs
+ db $f, $9, $4 ; SeafoamIslands5Text4
+ db $1, $17, $5 ; SeafoamIslands5Text5
+
+ db $3 ; people
+ db SPRITE_BOULDER, $f + 4, $4 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BIRD, $1 + 4, $6 + 4, $ff, $d0, $43, ARTICUNO, 50 ; trainer
+
+ ; warp-to
+ EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_4
+ EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_4
+ EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $7, $b ; SEAFOAM_ISLANDS_4
+ EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_4
diff --git a/data/mapObjects/silphco1.asm b/data/mapObjects/silphco1.asm
new file mode 100755
index 00000000..0d599ca6
--- /dev/null
+++ b/data/mapObjects/silphco1.asm
@@ -0,0 +1,21 @@
+SilphCo1Object: ; 0x5d470 (size=50)
+ db $2e ; border block
+
+ db $5 ; warps
+ db $11, $a, $5, $ff
+ db $11, $b, $5, $ff
+ db $0, $1a, $0, SILPH_CO_2F
+ db $0, $14, $0, SILPH_CO_ELEVATOR
+ db $a, $10, $6, SILPH_CO_3F
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $4 + 4, $ff, $d0, $1 ; person
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_1F_WIDTH, $11, $a
+ EVENT_DISP SILPH_CO_1F_WIDTH, $11, $b
+ EVENT_DISP SILPH_CO_1F_WIDTH, $0, $1a ; SILPH_CO_2F
+ EVENT_DISP SILPH_CO_1F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_1F_WIDTH, $a, $10 ; SILPH_CO_3F
diff --git a/data/mapObjects/silphco10.asm b/data/mapObjects/silphco10.asm
new file mode 100755
index 00000000..50e84b79
--- /dev/null
+++ b/data/mapObjects/silphco10.asm
@@ -0,0 +1,28 @@
+SilphCo10Object: ; 0x5a1fb (size=95)
+ db $2e ; border block
+
+ db $6 ; warps
+ db $0, $8, $0, SILPH_CO_9F
+ db $0, $a, $0, SILPH_CO_11F
+ db $0, $c, $0, SILPH_CO_ELEVATOR
+ db $b, $9, $3, SILPH_CO_4F
+ db $f, $d, $5, SILPH_CO_4F
+ db $7, $d, $6, SILPH_CO_4F
+
+ db $0 ; signs
+
+ db $6 ; people
+ db SPRITE_ROCKET, $9 + 4, $1 + 4, $ff, $d3, $41, ROCKET + $C8, $27 ; trainer
+ db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d2, $42, SCIENTIST + $C8, $b ; trainer
+ db SPRITE_ERIKA, $f + 4, $9 + 4, $fe, $0, $3 ; person
+ db SPRITE_BALL, $c + 4, $2 + 4, $ff, $ff, $84, TM_26 ; item
+ db SPRITE_BALL, $e + 4, $4 + 4, $ff, $ff, $85, RARE_CANDY ; item
+ db SPRITE_BALL, $b + 4, $5 + 4, $ff, $ff, $86, CARBOS ; item
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_10F_WIDTH, $0, $8 ; SILPH_CO_9F
+ EVENT_DISP SILPH_CO_10F_WIDTH, $0, $a ; SILPH_CO_11F
+ EVENT_DISP SILPH_CO_10F_WIDTH, $0, $c ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_10F_WIDTH, $b, $9 ; SILPH_CO_4F
+ EVENT_DISP SILPH_CO_10F_WIDTH, $f, $d ; SILPH_CO_4F
+ EVENT_DISP SILPH_CO_10F_WIDTH, $7, $d ; SILPH_CO_4F
diff --git a/data/mapObjects/silphco11.asm b/data/mapObjects/silphco11.asm
new file mode 100755
index 00000000..c575d10f
--- /dev/null
+++ b/data/mapObjects/silphco11.asm
@@ -0,0 +1,23 @@
+SilphCo11Object: ; 0x62380 (size=72)
+ db $d ; border block
+
+ db $4 ; warps
+ db $0, $9, $1, SILPH_CO_10F
+ db $0, $d, $0, SILPH_CO_ELEVATOR
+ db $5, $5, $9, $ff
+ db $2, $3, $3, SILPH_CO_7F
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_MR_MASTERBALL, $5 + 4, $7 + 4, $ff, $d0, $1 ; person
+ db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $ff, $d0, $2 ; person
+ db SPRITE_GIOVANNI, $9 + 4, $6 + 4, $ff, $d0, $43, GIOVANNI + $C8, $2 ; trainer
+ db SPRITE_ROCKET, $10 + 4, $3 + 4, $ff, $d1, $44, ROCKET + $C8, $29 ; trainer
+ db SPRITE_ROCKET, $9 + 4, $f + 4, $ff, $d1, $45, ROCKET + $C8, $28 ; trainer
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_11F_WIDTH, $0, $9 ; SILPH_CO_10F
+ EVENT_DISP SILPH_CO_11F_WIDTH, $0, $d ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_11F_WIDTH, $5, $5
+ EVENT_DISP SILPH_CO_11F_WIDTH, $2, $3 ; SILPH_CO_7F
diff --git a/data/mapObjects/silphco2.asm b/data/mapObjects/silphco2.asm
new file mode 100755
index 00000000..78c175a6
--- /dev/null
+++ b/data/mapObjects/silphco2.asm
@@ -0,0 +1,29 @@
+SilphCo2Object: ; 0x59e66 (size=98)
+ db $2e ; border block
+
+ db $7 ; warps
+ db $0, $18, $2, SILPH_CO_1F
+ db $0, $1a, $0, SILPH_CO_3F
+ db $0, $14, $0, SILPH_CO_ELEVATOR
+ db $3, $3, $6, SILPH_CO_3F
+ db $3, $d, $4, SILPH_CO_8F
+ db $f, $1b, $5, SILPH_CO_8F
+ db $f, $9, $4, SILPH_CO_6F
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_ERIKA, $1 + 4, $a + 4, $ff, $d1, $1 ; person
+ db SPRITE_OAK_AIDE, $c + 4, $5 + 4, $ff, $d0, $42, SCIENTIST + $C8, $2 ; trainer
+ db SPRITE_OAK_AIDE, $d + 4, $18 + 4, $ff, $d2, $43, SCIENTIST + $C8, $3 ; trainer
+ db SPRITE_ROCKET, $b + 4, $10 + 4, $ff, $d1, $44, ROCKET + $C8, $17 ; trainer
+ db SPRITE_ROCKET, $7 + 4, $18 + 4, $ff, $d1, $45, ROCKET + $C8, $18 ; trainer
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_2F_WIDTH, $0, $18 ; SILPH_CO_1F
+ EVENT_DISP SILPH_CO_2F_WIDTH, $0, $1a ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_2F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_2F_WIDTH, $3, $3 ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_2F_WIDTH, $3, $d ; SILPH_CO_8F
+ EVENT_DISP SILPH_CO_2F_WIDTH, $f, $1b ; SILPH_CO_8F
+ EVENT_DISP SILPH_CO_2F_WIDTH, $f, $9 ; SILPH_CO_6F
diff --git a/data/mapObjects/silphco3.asm b/data/mapObjects/silphco3.asm
new file mode 100755
index 00000000..af7d0aa2
--- /dev/null
+++ b/data/mapObjects/silphco3.asm
@@ -0,0 +1,34 @@
+SilphCo3Object: ; 0x5a035 (size=113)
+ db $2e ; border block
+
+ db $a ; warps
+ db $0, $1a, $1, SILPH_CO_2F
+ db $0, $18, $0, SILPH_CO_4F
+ db $0, $14, $0, SILPH_CO_ELEVATOR
+ db $b, $17, $9, SILPH_CO_3F
+ db $3, $3, $5, SILPH_CO_5F
+ db $f, $3, $6, SILPH_CO_5F
+ db $3, $1b, $3, SILPH_CO_2F
+ db $b, $3, $3, SILPH_CO_9F
+ db $b, $b, $4, SILPH_CO_7F
+ db $f, $1b, $3, SILPH_CO_3F
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_LAPRAS_GIVER, $8 + 4, $18 + 4, $ff, $ff, $1 ; person
+ db SPRITE_ROCKET, $7 + 4, $14 + 4, $ff, $d2, $42, ROCKET + $C8, $19 ; trainer
+ db SPRITE_OAK_AIDE, $9 + 4, $7 + 4, $ff, $d0, $43, SCIENTIST + $C8, $4 ; trainer
+ db SPRITE_BALL, $5 + 4, $8 + 4, $ff, $ff, $84, HYPER_POTION ; item
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_3F_WIDTH, $0, $1a ; SILPH_CO_2F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $0, $18 ; SILPH_CO_4F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_3F_WIDTH, $b, $17 ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $3, $3 ; SILPH_CO_5F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $f, $3 ; SILPH_CO_5F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $3, $1b ; SILPH_CO_2F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $b, $3 ; SILPH_CO_9F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $b, $b ; SILPH_CO_7F
+ EVENT_DISP SILPH_CO_3F_WIDTH, $f, $1b ; SILPH_CO_3F
diff --git a/data/mapObjects/silphco4.asm b/data/mapObjects/silphco4.asm
new file mode 100755
index 00000000..4677d302
--- /dev/null
+++ b/data/mapObjects/silphco4.asm
@@ -0,0 +1,31 @@
+SilphCo4Object: ; 0x19e35 (size=111)
+ db $2e ; border block
+
+ db $7 ; warps
+ db $0, $18, $1, SILPH_CO_3F
+ db $0, $1a, $1, SILPH_CO_5F
+ db $0, $14, $0, SILPH_CO_ELEVATOR
+ db $7, $b, $3, SILPH_CO_10F
+ db $3, $11, $3, SILPH_CO_6F
+ db $f, $3, $4, SILPH_CO_10F
+ db $b, $11, $5, SILPH_CO_10F
+
+ db $0 ; signs
+
+ db $7 ; people
+ db SPRITE_LAPRAS_GIVER, $2 + 4, $6 + 4, $ff, $ff, $1 ; person
+ db SPRITE_ROCKET, $e + 4, $9 + 4, $ff, $d3, $42, ROCKET + $C8, $1a ; trainer
+ db SPRITE_OAK_AIDE, $6 + 4, $e + 4, $ff, $d2, $43, SCIENTIST + $C8, $5 ; trainer
+ db SPRITE_ROCKET, $a + 4, $1a + 4, $ff, $d1, $44, ROCKET + $C8, $1b ; trainer
+ db SPRITE_BALL, $9 + 4, $3 + 4, $ff, $ff, $85, FULL_HEAL ; item
+ db SPRITE_BALL, $7 + 4, $4 + 4, $ff, $ff, $86, MAX_REVIVE ; item
+ db SPRITE_BALL, $8 + 4, $5 + 4, $ff, $ff, $87, ESCAPE_ROPE ; item
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_4F_WIDTH, $0, $18 ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_4F_WIDTH, $0, $1a ; SILPH_CO_5F
+ EVENT_DISP SILPH_CO_4F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_4F_WIDTH, $7, $b ; SILPH_CO_10F
+ EVENT_DISP SILPH_CO_4F_WIDTH, $3, $11 ; SILPH_CO_6F
+ EVENT_DISP SILPH_CO_4F_WIDTH, $f, $3 ; SILPH_CO_10F
+ EVENT_DISP SILPH_CO_4F_WIDTH, $b, $11 ; SILPH_CO_10F
diff --git a/data/mapObjects/silphco5.asm b/data/mapObjects/silphco5.asm
new file mode 100755
index 00000000..f5874371
--- /dev/null
+++ b/data/mapObjects/silphco5.asm
@@ -0,0 +1,35 @@
+SilphCo5Object: ; 0x1a08d (size=137)
+ db $2e ; border block
+
+ db $7 ; warps
+ db $0, $18, $1, SILPH_CO_6F
+ db $0, $1a, $1, SILPH_CO_4F
+ db $0, $14, $0, SILPH_CO_ELEVATOR
+ db $3, $1b, $5, SILPH_CO_7F
+ db $f, $9, $4, SILPH_CO_9F
+ db $5, $b, $4, SILPH_CO_3F
+ db $f, $3, $5, SILPH_CO_3F
+
+ db $0 ; signs
+
+ db $b ; people
+ db SPRITE_LAPRAS_GIVER, $9 + 4, $d + 4, $ff, $ff, $1 ; person
+ db SPRITE_ROCKET, $10 + 4, $8 + 4, $ff, $d3, $42, ROCKET + $C8, $1c ; trainer
+ db SPRITE_OAK_AIDE, $3 + 4, $8 + 4, $ff, $d3, $43, SCIENTIST + $C8, $6 ; trainer
+ db SPRITE_ROCKER, $a + 4, $12 + 4, $ff, $d1, $44, JUGGLER + $C8, $1 ; trainer
+ db SPRITE_ROCKET, $4 + 4, $1c + 4, $ff, $d1, $45, ROCKET + $C8, $1d ; trainer
+ db SPRITE_BALL, $d + 4, $2 + 4, $ff, $ff, $86, TM_09 ; item
+ db SPRITE_BALL, $6 + 4, $4 + 4, $ff, $ff, $87, PROTEIN ; item
+ db SPRITE_BALL, $10 + 4, $15 + 4, $ff, $ff, $88, CARD_KEY ; item
+ db SPRITE_CLIPBOARD, $c + 4, $16 + 4, $ff, $ff, $9 ; person
+ db SPRITE_CLIPBOARD, $a + 4, $19 + 4, $ff, $ff, $a ; person
+ db SPRITE_CLIPBOARD, $6 + 4, $18 + 4, $ff, $ff, $b ; person
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_5F_WIDTH, $0, $18 ; SILPH_CO_6F
+ EVENT_DISP SILPH_CO_5F_WIDTH, $0, $1a ; SILPH_CO_4F
+ EVENT_DISP SILPH_CO_5F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_5F_WIDTH, $3, $1b ; SILPH_CO_7F
+ EVENT_DISP SILPH_CO_5F_WIDTH, $f, $9 ; SILPH_CO_9F
+ EVENT_DISP SILPH_CO_5F_WIDTH, $5, $b ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_5F_WIDTH, $f, $3 ; SILPH_CO_3F
diff --git a/data/mapObjects/silphco6.asm b/data/mapObjects/silphco6.asm
new file mode 100755
index 00000000..89239aa1
--- /dev/null
+++ b/data/mapObjects/silphco6.asm
@@ -0,0 +1,30 @@
+SilphCo6Object: ; 0x1a2fb (size=112)
+ db $2e ; border block
+
+ db $5 ; warps
+ db $0, $10, $1, SILPH_CO_7F
+ db $0, $e, $0, SILPH_CO_5F
+ db $0, $12, $0, SILPH_CO_ELEVATOR
+ db $3, $3, $4, SILPH_CO_4F
+ db $3, $17, $6, SILPH_CO_2F
+
+ db $0 ; signs
+
+ db $a ; people
+ db SPRITE_LAPRAS_GIVER, $6 + 4, $a + 4, $ff, $ff, $1 ; person
+ db SPRITE_LAPRAS_GIVER, $6 + 4, $14 + 4, $ff, $ff, $2 ; person
+ db SPRITE_ERIKA, $6 + 4, $15 + 4, $ff, $d0, $3 ; person
+ db SPRITE_ERIKA, $a + 4, $b + 4, $ff, $d3, $4 ; person
+ db SPRITE_LAPRAS_GIVER, $d + 4, $12 + 4, $ff, $d1, $5 ; person
+ db SPRITE_ROCKET, $3 + 4, $11 + 4, $ff, $d3, $46, ROCKET + $C8, $1e ; trainer
+ db SPRITE_OAK_AIDE, $8 + 4, $7 + 4, $ff, $d0, $47, SCIENTIST + $C8, $7 ; trainer
+ db SPRITE_ROCKET, $f + 4, $e + 4, $ff, $d2, $48, ROCKET + $C8, $1f ; trainer
+ db SPRITE_BALL, $c + 4, $3 + 4, $ff, $ff, $89, HP_UP ; item
+ db SPRITE_BALL, $f + 4, $2 + 4, $ff, $ff, $8a, X_ACCURACY ; item
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_6F_WIDTH, $0, $10 ; SILPH_CO_7F
+ EVENT_DISP SILPH_CO_6F_WIDTH, $0, $e ; SILPH_CO_5F
+ EVENT_DISP SILPH_CO_6F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_6F_WIDTH, $3, $3 ; SILPH_CO_4F
+ EVENT_DISP SILPH_CO_6F_WIDTH, $3, $17 ; SILPH_CO_2F
diff --git a/data/mapObjects/silphco7.asm b/data/mapObjects/silphco7.asm
new file mode 100755
index 00000000..de97b8de
--- /dev/null
+++ b/data/mapObjects/silphco7.asm
@@ -0,0 +1,33 @@
+SilphCo7Object: ; 0x51ed7 (size=128)
+ db $2e ; border block
+
+ db $6 ; warps
+ db $0, $10, $1, SILPH_CO_8F
+ db $0, $16, $0, SILPH_CO_6F
+ db $0, $12, $0, SILPH_CO_ELEVATOR
+ db $7, $5, $3, SILPH_CO_11F
+ db $3, $5, $8, SILPH_CO_3F
+ db $f, $15, $3, SILPH_CO_5F
+
+ db $0 ; signs
+
+ db $b ; people
+ db SPRITE_LAPRAS_GIVER, $5 + 4, $1 + 4, $ff, $ff, $1 ; person
+ db SPRITE_LAPRAS_GIVER, $d + 4, $d + 4, $ff, $d1, $2 ; person
+ db SPRITE_LAPRAS_GIVER, $a + 4, $7 + 4, $ff, $ff, $3 ; person
+ db SPRITE_ERIKA, $8 + 4, $a + 4, $ff, $ff, $4 ; person
+ db SPRITE_ROCKET, $1 + 4, $d + 4, $ff, $d0, $45, ROCKET + $C8, $20 ; trainer
+ db SPRITE_OAK_AIDE, $d + 4, $2 + 4, $ff, $d0, $46, SCIENTIST + $C8, $8 ; trainer
+ db SPRITE_ROCKET, $2 + 4, $14 + 4, $ff, $d2, $47, ROCKET + $C8, $21 ; trainer
+ db SPRITE_ROCKET, $e + 4, $13 + 4, $ff, $d3, $48, ROCKET + $C8, $22 ; trainer
+ db SPRITE_BLUE, $7 + 4, $3 + 4, $ff, $d1, $9 ; person
+ db SPRITE_BALL, $9 + 4, $1 + 4, $ff, $ff, $8a, CALCIUM ; item
+ db SPRITE_BALL, $b + 4, $18 + 4, $ff, $ff, $8b, TM_03 ; item
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_7F_WIDTH, $0, $10 ; SILPH_CO_8F
+ EVENT_DISP SILPH_CO_7F_WIDTH, $0, $16 ; SILPH_CO_6F
+ EVENT_DISP SILPH_CO_7F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_7F_WIDTH, $7, $5 ; SILPH_CO_11F
+ EVENT_DISP SILPH_CO_7F_WIDTH, $3, $5 ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_7F_WIDTH, $f, $15 ; SILPH_CO_5F
diff --git a/data/mapObjects/silphco8.asm b/data/mapObjects/silphco8.asm
new file mode 100755
index 00000000..92d9d061
--- /dev/null
+++ b/data/mapObjects/silphco8.asm
@@ -0,0 +1,28 @@
+SilphCo8Object: ; 0x56613 (size=90)
+ db $2e ; border block
+
+ db $7 ; warps
+ db $0, $10, $1, SILPH_CO_9F
+ db $0, $e, $0, SILPH_CO_7F
+ db $0, $12, $0, SILPH_CO_ELEVATOR
+ db $b, $3, $6, SILPH_CO_8F
+ db $f, $3, $4, SILPH_CO_2F
+ db $5, $b, $5, SILPH_CO_2F
+ db $9, $b, $3, SILPH_CO_8F
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_LAPRAS_GIVER, $2 + 4, $4 + 4, $ff, $ff, $1 ; person
+ db SPRITE_ROCKET, $2 + 4, $13 + 4, $ff, $d2, $42, ROCKET + $C8, $23 ; trainer
+ db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d0, $43, SCIENTIST + $C8, $9 ; trainer
+ db SPRITE_ROCKET, $f + 4, $c + 4, $ff, $d3, $44, ROCKET + $C8, $24 ; trainer
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_8F_WIDTH, $0, $10 ; SILPH_CO_9F
+ EVENT_DISP SILPH_CO_8F_WIDTH, $0, $e ; SILPH_CO_7F
+ EVENT_DISP SILPH_CO_8F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_8F_WIDTH, $b, $3 ; SILPH_CO_8F
+ EVENT_DISP SILPH_CO_8F_WIDTH, $f, $3 ; SILPH_CO_2F
+ EVENT_DISP SILPH_CO_8F_WIDTH, $5, $b ; SILPH_CO_2F
+ EVENT_DISP SILPH_CO_8F_WIDTH, $9, $b ; SILPH_CO_8F_WIDTH
diff --git a/data/mapObjects/silphco9.asm b/data/mapObjects/silphco9.asm
new file mode 100755
index 00000000..c4047708
--- /dev/null
+++ b/data/mapObjects/silphco9.asm
@@ -0,0 +1,24 @@
+SilphCo9Object: ; 0x5d93f (size=74)
+ db $2e ; border block
+
+ db $5 ; warps
+ db $0, $e, $0, SILPH_CO_10F
+ db $0, $10, $0, SILPH_CO_8F
+ db $0, $12, $0, SILPH_CO_ELEVATOR
+ db $3, $9, $7, SILPH_CO_3F
+ db $f, $11, $4, SILPH_CO_5F
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $e + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_ROCKET, $4 + 4, $2 + 4, $ff, $d1, $42, ROCKET + $C8, $25 ; trainer
+ db SPRITE_OAK_AIDE, $d + 4, $15 + 4, $ff, $d0, $43, SCIENTIST + $C8, $a ; trainer
+ db SPRITE_ROCKET, $10 + 4, $d + 4, $ff, $d1, $44, ROCKET + $C8, $26 ; trainer
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_9F_WIDTH, $0, $e ; SILPH_CO_10F
+ EVENT_DISP SILPH_CO_9F_WIDTH, $0, $10 ; SILPH_CO_8F
+ EVENT_DISP SILPH_CO_9F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
+ EVENT_DISP SILPH_CO_9F_WIDTH, $3, $9 ; SILPH_CO_3F
+ EVENT_DISP SILPH_CO_9F_WIDTH, $f, $11 ; SILPH_CO_5F
diff --git a/data/mapObjects/silphcoelevator.asm b/data/mapObjects/silphcoelevator.asm
new file mode 100755
index 00000000..ced554eb
--- /dev/null
+++ b/data/mapObjects/silphcoelevator.asm
@@ -0,0 +1,15 @@
+SilphCoElevatorObject: ; 0x45844 (size=23)
+ db $f ; border block
+
+ db $2 ; warps
+ db $3, $1, $0, $ed
+ db $3, $2, $0, $ed
+
+ db $1 ; signs
+ db $0, $3, $1 ; SilphCoElevatorText1
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $1
+ EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $2
diff --git a/data/mapObjects/ssanne1.asm b/data/mapObjects/ssanne1.asm
new file mode 100755
index 00000000..a1688f5c
--- /dev/null
+++ b/data/mapObjects/ssanne1.asm
@@ -0,0 +1,34 @@
+SSAnne1Object: ; 0x61277 (size=104)
+ db $c ; border block
+
+ db $b ; warps
+ db $0, $1a, $1, VERMILION_DOCK
+ db $0, $1b, $1, VERMILION_DOCK
+ db $8, $1f, $0, SS_ANNE_8
+ db $8, $17, $1, SS_ANNE_8
+ db $8, $13, $2, SS_ANNE_8
+ db $8, $f, $3, SS_ANNE_8
+ db $8, $b, $4, SS_ANNE_8
+ db $8, $7, $5, SS_ANNE_8
+ db $6, $2, $6, SS_ANNE_2
+ db $f, $25, $5, SS_ANNE_4
+ db $10, $3, $0, SS_ANNE_6
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_WAITER, $6 + 4, $c + 4, $fe, $2, $1 ; person
+ db SPRITE_SAILOR, $5 + 4, $1b + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_1_WIDTH, $0, $1a ; VERMILION_DOCK
+ EVENT_DISP SS_ANNE_1_WIDTH, $0, $1b ; VERMILION_DOCK
+ EVENT_DISP SS_ANNE_1_WIDTH, $8, $1f ; SS_ANNE_8
+ EVENT_DISP SS_ANNE_1_WIDTH, $8, $17 ; SS_ANNE_8
+ EVENT_DISP SS_ANNE_1_WIDTH, $8, $13 ; SS_ANNE_8
+ EVENT_DISP SS_ANNE_1_WIDTH, $8, $f ; SS_ANNE_8
+ EVENT_DISP SS_ANNE_1_WIDTH, $8, $b ; SS_ANNE_8
+ EVENT_DISP SS_ANNE_1_WIDTH, $8, $7 ; SS_ANNE_8
+ EVENT_DISP SS_ANNE_1_WIDTH, $6, $2 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_1_WIDTH, $f, $25 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_1_WIDTH, $10, $3 ; SS_ANNE_6
diff --git a/data/mapObjects/ssanne10.asm b/data/mapObjects/ssanne10.asm
new file mode 100755
index 00000000..3a190cf4
--- /dev/null
+++ b/data/mapObjects/ssanne10.asm
@@ -0,0 +1,41 @@
+SSAnne10Object: ; 0x61e75 (size=165)
+ db $c ; border block
+
+ db $a ; warps
+ db $5, $2, $4, SS_ANNE_4
+ db $5, $3, $4, SS_ANNE_4
+ db $5, $c, $3, SS_ANNE_4
+ db $5, $d, $3, SS_ANNE_4
+ db $5, $16, $2, SS_ANNE_4
+ db $5, $17, $2, SS_ANNE_4
+ db $f, $2, $1, SS_ANNE_4
+ db $f, $3, $1, SS_ANNE_4
+ db $f, $c, $0, SS_ANNE_4
+ db $f, $d, $0, SS_ANNE_4
+
+ db $0 ; signs
+
+ db $b ; people
+ db SPRITE_SAILOR, $d + 4, $0 + 4, $ff, $d0, $41, SAILOR + $C8, $3 ; trainer
+ db SPRITE_SAILOR, $b + 4, $2 + 4, $ff, $d0, $42, SAILOR + $C8, $4 ; trainer
+ db SPRITE_SAILOR, $3 + 4, $c + 4, $ff, $d2, $43, SAILOR + $C8, $5 ; trainer
+ db SPRITE_SAILOR, $2 + 4, $16 + 4, $ff, $d0, $44, SAILOR + $C8, $6 ; trainer
+ db SPRITE_SAILOR, $2 + 4, $0 + 4, $ff, $d3, $45, SAILOR + $C8, $7 ; trainer
+ db SPRITE_FISHER2, $4 + 4, $0 + 4, $ff, $d3, $46, FISHER + $C8, $2 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $a + 4, $ff, $d3, $7 ; person
+ db SPRITE_SLOWBRO, $c + 4, $b + 4, $ff, $ff, $8 ; person
+ db SPRITE_BALL, $2 + 4, $14 + 4, $ff, $ff, $89, ETHER ; item
+ db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $8a, TM_44 ; item
+ db SPRITE_BALL, $b + 4, $c + 4, $ff, $ff, $8b, MAX_POTION ; item
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_10_WIDTH, $5, $2 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $5, $3 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $5, $c ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $5, $d ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $5, $16 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $5, $17 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $f, $2 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $f, $3 ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $f, $c ; SS_ANNE_4
+ EVENT_DISP SS_ANNE_10_WIDTH, $f, $d ; SS_ANNE_4
diff --git a/data/mapObjects/ssanne2.asm b/data/mapObjects/ssanne2.asm
new file mode 100755
index 00000000..74b18262
--- /dev/null
+++ b/data/mapObjects/ssanne2.asm
@@ -0,0 +1,30 @@
+SSAnne2Object: ; 0x61514 (size=90)
+ db $c ; border block
+
+ db $9 ; warps
+ db $b, $9, $0, SS_ANNE_9
+ db $b, $d, $2, SS_ANNE_9
+ db $b, $11, $4, SS_ANNE_9
+ db $b, $15, $6, SS_ANNE_9
+ db $b, $19, $8, SS_ANNE_9
+ db $b, $1d, $a, SS_ANNE_9
+ db $4, $2, $8, SS_ANNE_1
+ db $c, $2, $1, SS_ANNE_3
+ db $4, $24, $0, SS_ANNE_7
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_WAITER, $7 + 4, $3 + 4, $fe, $1, $1 ; person
+ db SPRITE_BLUE, $4 + 4, $24 + 4, $ff, $d0, $42, SONY1 + $C8, $1 ; trainer
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_2_WIDTH, $b, $9 ; SS_ANNE_9
+ EVENT_DISP SS_ANNE_2_WIDTH, $b, $d ; SS_ANNE_9
+ EVENT_DISP SS_ANNE_2_WIDTH, $b, $11 ; SS_ANNE_9
+ EVENT_DISP SS_ANNE_2_WIDTH, $b, $15 ; SS_ANNE_9
+ EVENT_DISP SS_ANNE_2_WIDTH, $b, $19 ; SS_ANNE_9
+ EVENT_DISP SS_ANNE_2_WIDTH, $b, $1d ; SS_ANNE_9
+ EVENT_DISP SS_ANNE_2_WIDTH, $4, $2 ; SS_ANNE_1
+ EVENT_DISP SS_ANNE_2_WIDTH, $c, $2 ; SS_ANNE_3
+ EVENT_DISP SS_ANNE_2_WIDTH, $4, $24 ; SS_ANNE_7
diff --git a/data/mapObjects/ssanne3.asm b/data/mapObjects/ssanne3.asm
new file mode 100755
index 00000000..2068304d
--- /dev/null
+++ b/data/mapObjects/ssanne3.asm
@@ -0,0 +1,15 @@
+SSAnne3Object: ; 0x4493c (size=26)
+ db $c ; border block
+
+ db $2 ; warps
+ db $3, $0, $0, SS_ANNE_5
+ db $3, $13, $7, SS_ANNE_2
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_SAILOR, $3 + 4, $9 + 4, $fe, $2, $1 ; person
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_3_WIDTH, $3, $0 ; SS_ANNE_5
+ EVENT_DISP SS_ANNE_3_WIDTH, $3, $13 ; SS_ANNE_2
diff --git a/data/mapObjects/ssanne4.asm b/data/mapObjects/ssanne4.asm
new file mode 100755
index 00000000..a2abc2cf
--- /dev/null
+++ b/data/mapObjects/ssanne4.asm
@@ -0,0 +1,22 @@
+SSAnne4Object: ; 0x61632 (size=52)
+ db $c ; border block
+
+ db $6 ; warps
+ db $3, $17, $8, SS_ANNE_10
+ db $3, $13, $6, SS_ANNE_10
+ db $3, $f, $4, SS_ANNE_10
+ db $3, $b, $2, SS_ANNE_10
+ db $3, $7, $0, SS_ANNE_10
+ db $5, $1b, $9, SS_ANNE_1
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_4_WIDTH, $3, $17 ; SS_ANNE_10
+ EVENT_DISP SS_ANNE_4_WIDTH, $3, $13 ; SS_ANNE_10
+ EVENT_DISP SS_ANNE_4_WIDTH, $3, $f ; SS_ANNE_10
+ EVENT_DISP SS_ANNE_4_WIDTH, $3, $b ; SS_ANNE_10
+ EVENT_DISP SS_ANNE_4_WIDTH, $3, $7 ; SS_ANNE_10
+ EVENT_DISP SS_ANNE_4_WIDTH, $5, $1b ; SS_ANNE_1
diff --git a/data/mapObjects/ssanne5.asm b/data/mapObjects/ssanne5.asm
new file mode 100755
index 00000000..b9ce302b
--- /dev/null
+++ b/data/mapObjects/ssanne5.asm
@@ -0,0 +1,19 @@
+SSAnne5Object: ; 0x6172b (size=54)
+ db $23 ; border block
+
+ db $2 ; warps
+ db $6, $d, $0, SS_ANNE_3
+ db $7, $d, $0, SS_ANNE_3
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $5 + 4, $ff, $d1, $1 ; person
+ db SPRITE_SAILOR, $9 + 4, $4 + 4, $ff, $ff, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $7 + 4, $ff, $ff, $3 ; person
+ db SPRITE_SAILOR, $4 + 4, $4 + 4, $ff, $d0, $44, SAILOR + $C8, $1 ; trainer
+ db SPRITE_SAILOR, $8 + 4, $a + 4, $ff, $d1, $45, SAILOR + $C8, $2 ; trainer
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_5_WIDTH, $6, $d ; SS_ANNE_3
+ EVENT_DISP SS_ANNE_5_WIDTH, $7, $d ; SS_ANNE_3
diff --git a/data/mapObjects/ssanne6.asm b/data/mapObjects/ssanne6.asm
new file mode 100755
index 00000000..7724ab5c
--- /dev/null
+++ b/data/mapObjects/ssanne6.asm
@@ -0,0 +1,19 @@
+SSAnne6Object: ; 0x6181b (size=54)
+ db $c ; border block
+
+ db $1 ; warps
+ db $0, $6, $a, SS_ANNE_1
+
+ db $0 ; signs
+
+ db $7 ; people
+ db SPRITE_COOK, $8 + 4, $1 + 4, $fe, $1, $1 ; person
+ db SPRITE_COOK, $8 + 4, $5 + 4, $fe, $1, $2 ; person
+ db SPRITE_COOK, $7 + 4, $9 + 4, $fe, $1, $3 ; person
+ db SPRITE_COOK, $6 + 4, $d + 4, $ff, $ff, $4 ; person
+ db SPRITE_COOK, $8 + 4, $d + 4, $ff, $ff, $5 ; person
+ db SPRITE_COOK, $a + 4, $d + 4, $ff, $ff, $6 ; person
+ db SPRITE_COOK, $d + 4, $b + 4, $ff, $d1, $7 ; person
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_6_WIDTH, $0, $6 ; SS_ANNE_1
diff --git a/data/mapObjects/ssanne7.asm b/data/mapObjects/ssanne7.asm
new file mode 100755
index 00000000..c40bcfec
--- /dev/null
+++ b/data/mapObjects/ssanne7.asm
@@ -0,0 +1,15 @@
+SSAnne7Object: ; 0x61946 (size=24)
+ db $c ; border block
+
+ db $1 ; warps
+ db $7, $0, $8, SS_ANNE_2
+
+ db $2 ; signs
+ db $1, $4, $2 ; SSAnne7Text2
+ db $2, $1, $3 ; SSAnne7Text3
+
+ db $1 ; people
+ db SPRITE_SS_CAPTAIN, $2 + 4, $4 + 4, $ff, $d1, $1 ; person
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_7_WIDTH, $7, $0 ; SS_ANNE_2
diff --git a/data/mapObjects/ssanne8.asm b/data/mapObjects/ssanne8.asm
new file mode 100755
index 00000000..f3d081eb
--- /dev/null
+++ b/data/mapObjects/ssanne8.asm
@@ -0,0 +1,33 @@
+SSAnne8Object: ; 0x61a60 (size=127)
+ db $c ; border block
+
+ db $6 ; warps
+ db $0, $0, $2, SS_ANNE_1
+ db $0, $a, $3, SS_ANNE_1
+ db $0, $14, $4, SS_ANNE_1
+ db $a, $0, $5, SS_ANNE_1
+ db $a, $a, $6, SS_ANNE_1
+ db $a, $14, $7, SS_ANNE_1
+
+ db $0 ; signs
+
+ db $b ; people
+ db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d2, $41, GENTLEMAN + $C8, $1 ; trainer
+ db SPRITE_GENTLEMAN, $4 + 4, $b + 4, $ff, $d1, $42, GENTLEMAN + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $e + 4, $b + 4, $ff, $d1, $43, YOUNGSTER + $C8, $8 ; trainer
+ db SPRITE_LASS, $b + 4, $d + 4, $ff, $d2, $44, LASS + $C8, $b ; trainer
+ db SPRITE_GIRL, $3 + 4, $16 + 4, $fe, $1, $5 ; person
+ db SPRITE_FAT_BALD_GUY, $e + 4, $0 + 4, $ff, $ff, $6 ; person
+ db SPRITE_LITTLE_GIRL, $b + 4, $2 + 4, $ff, $d0, $7 ; person
+ db SPRITE_CLEFAIRY, $b + 4, $3 + 4, $ff, $d0, $8 ; person
+ db SPRITE_GIRL, $d + 4, $a + 4, $ff, $d3, $9 ; person
+ db SPRITE_BALL, $f + 4, $c + 4, $ff, $ff, $8a, TM_08 ; item
+ db SPRITE_GENTLEMAN, $d + 4, $15 + 4, $fe, $2, $b ; person
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_8_WIDTH, $0, $0 ; SS_ANNE_1
+ EVENT_DISP SS_ANNE_8_WIDTH, $0, $a ; SS_ANNE_1
+ EVENT_DISP SS_ANNE_8_WIDTH, $0, $14 ; SS_ANNE_1
+ EVENT_DISP SS_ANNE_8_WIDTH, $a, $0 ; SS_ANNE_1
+ EVENT_DISP SS_ANNE_8_WIDTH, $a, $a ; SS_ANNE_1
+ EVENT_DISP SS_ANNE_8_WIDTH, $a, $14 ; SS_ANNE_1
diff --git a/data/mapObjects/ssanne9.asm b/data/mapObjects/ssanne9.asm
new file mode 100755
index 00000000..6c5b5fc1
--- /dev/null
+++ b/data/mapObjects/ssanne9.asm
@@ -0,0 +1,47 @@
+SSAnne9Object: ; 0x61c8d (size=188)
+ db $c ; border block
+
+ db $c ; warps
+ db $5, $2, $0, SS_ANNE_2
+ db $5, $3, $0, SS_ANNE_2
+ db $5, $c, $1, SS_ANNE_2
+ db $5, $d, $1, SS_ANNE_2
+ db $5, $16, $2, SS_ANNE_2
+ db $5, $17, $2, SS_ANNE_2
+ db $f, $2, $3, SS_ANNE_2
+ db $f, $3, $3, SS_ANNE_2
+ db $f, $c, $4, SS_ANNE_2
+ db $f, $d, $4, SS_ANNE_2
+ db $f, $16, $5, SS_ANNE_2
+ db $f, $17, $5, SS_ANNE_2
+
+ db $0 ; signs
+
+ db $d ; people
+ db SPRITE_GENTLEMAN, $2 + 4, $a + 4, $ff, $d3, $41, GENTLEMAN + $C8, $3 ; trainer
+ db SPRITE_FISHER2, $4 + 4, $d + 4, $ff, $d2, $42, FISHER + $C8, $1 ; trainer
+ db SPRITE_GENTLEMAN, $e + 4, $0 + 4, $ff, $d3, $43, GENTLEMAN + $C8, $5 ; trainer
+ db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d0, $44, LASS + $C8, $c ; trainer
+ db SPRITE_GENTLEMAN, $2 + 4, $1 + 4, $ff, $d0, $5 ; person
+ db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $86, MAX_ETHER ; item
+ db SPRITE_GENTLEMAN, $2 + 4, $15 + 4, $ff, $d0, $7 ; person
+ db SPRITE_OLD_PERSON, $1 + 4, $16 + 4, $ff, $d0, $8 ; person
+ db SPRITE_BALL, $c + 4, $0 + 4, $ff, $ff, $89, RARE_CANDY ; item
+ db SPRITE_GENTLEMAN, $c + 4, $c + 4, $ff, $d0, $a ; person
+ db SPRITE_YOUNG_BOY, $e + 4, $b + 4, $ff, $ff, $b ; person
+ db SPRITE_BRUNETTE_GIRL, $c + 4, $16 + 4, $ff, $d2, $c ; person
+ db SPRITE_FOULARD_WOMAN, $c + 4, $14 + 4, $ff, $d3, $d ; person
+
+ ; warp-to
+ EVENT_DISP SS_ANNE_9_WIDTH, $5, $2 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $5, $3 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $5, $c ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $5, $d ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $5, $16 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $5, $17 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $f, $2 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $f, $3 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $f, $c ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $f, $d ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $f, $16 ; SS_ANNE_2
+ EVENT_DISP SS_ANNE_9_WIDTH, $f, $17 ; SS_ANNE_2
diff --git a/data/mapObjects/tradecenterm.asm b/data/mapObjects/tradecenterm.asm
new file mode 100755
index 00000000..104b9c0b
--- /dev/null
+++ b/data/mapObjects/tradecenterm.asm
@@ -0,0 +1,9 @@
+TradeCenterMObject: ; 0x4fd87 (size=10)
+ db $e ; border block
+
+ db $0 ; warps
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person
diff --git a/data/mapObjects/undergroundpathentranceroute5.asm b/data/mapObjects/undergroundpathentranceroute5.asm
new file mode 100755
index 00000000..f782636c
--- /dev/null
+++ b/data/mapObjects/undergroundpathentranceroute5.asm
@@ -0,0 +1,17 @@
+UndergroundPathEntranceRoute5Object: ; 0x5d6c1 (size=34)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $3, $3, $ff
+ db $7, $4, $3, $ff
+ db $4, $4, $0, UNDERGROUND_PATH_NS
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_LITTLE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $3
+ EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $4
+ EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS
diff --git a/data/mapObjects/undergroundpathentranceroute6.asm b/data/mapObjects/undergroundpathentranceroute6.asm
new file mode 100755
index 00000000..624381a9
--- /dev/null
+++ b/data/mapObjects/undergroundpathentranceroute6.asm
@@ -0,0 +1,17 @@
+UndergroundPathEntranceRoute6Object: ; 0x5d6fe (size=34)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $3, $3, $ff
+ db $7, $4, $3, $ff
+ db $4, $4, $1, UNDERGROUND_PATH_NS
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $3
+ EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $4
+ EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS
diff --git a/data/mapObjects/undergroundpathentranceroute7.asm b/data/mapObjects/undergroundpathentranceroute7.asm
new file mode 100755
index 00000000..d0e51c8a
--- /dev/null
+++ b/data/mapObjects/undergroundpathentranceroute7.asm
@@ -0,0 +1,17 @@
+UndergroundPathEntranceRoute7Object: ; 0x5d73b (size=34)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $3, $4, $ff
+ db $7, $4, $4, $ff
+ db $4, $4, $0, UNDERGROUND_PATH_WE
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $3
+ EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $4
+ EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE
diff --git a/data/mapObjects/undergroundpathentranceroute7copy.asm b/data/mapObjects/undergroundpathentranceroute7copy.asm
new file mode 100755
index 00000000..53972ce9
--- /dev/null
+++ b/data/mapObjects/undergroundpathentranceroute7copy.asm
@@ -0,0 +1,18 @@
+UndergroundPathEntranceRoute7CopyObject: ; 5d787 (17:5787)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $3, $5, $ff
+ db $7, $4, $5, $ff
+ db $4, $4, $0, UNDERGROUND_PATH_WE
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $ff, $1 ; person
+ db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $3
+ EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $4
+ EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE
diff --git a/data/mapObjects/undergroundpathentranceroute8.asm b/data/mapObjects/undergroundpathentranceroute8.asm
new file mode 100755
index 00000000..a59e017b
--- /dev/null
+++ b/data/mapObjects/undergroundpathentranceroute8.asm
@@ -0,0 +1,17 @@
+UndergroundPathEntranceRoute8Object: ; 0x1e298 (size=34)
+ db $a ; border block
+
+ db $3 ; warps
+ db $7, $3, $4, $ff
+ db $7, $4, $4, $ff
+ db $4, $4, $1, UNDERGROUND_PATH_WE
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_GIRL, $4 + 4, $3 + 4, $ff, $ff, $1 ; person
+
+ ; warp-to
+ EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $3
+ EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $4
+ EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE
diff --git a/data/mapObjects/undergroundpathns.asm b/data/mapObjects/undergroundpathns.asm
new file mode 100755
index 00000000..7dac9b95
--- /dev/null
+++ b/data/mapObjects/undergroundpathns.asm
@@ -0,0 +1,14 @@
+UndergroundPathNSObject: ; 0x61f2a (size=20)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $4, $5, $2, PATH_ENTRANCE_ROUTE_5
+ db $29, $2, $2, PATH_ENTRANCE_ROUTE_6
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $4, $5 ; PATH_ENTRANCE_ROUTE_5
+ EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $29, $2 ; PATH_ENTRANCE_ROUTE_6
diff --git a/data/mapObjects/undergroundpathwe.asm b/data/mapObjects/undergroundpathwe.asm
new file mode 100755
index 00000000..ad3c51f7
--- /dev/null
+++ b/data/mapObjects/undergroundpathwe.asm
@@ -0,0 +1,14 @@
+UndergroundPathWEObject: ; 0x61f4e (size=20)
+ db $1 ; border block
+
+ db $2 ; warps
+ db $5, $2, $2, PATH_ENTRANCE_ROUTE_7
+ db $2, $2f, $2, PATH_ENTRANCE_ROUTE_8
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $5, $2 ; PATH_ENTRANCE_ROUTE_7
+ EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $2, $2f ; PATH_ENTRANCE_ROUTE_8
diff --git a/data/mapObjects/unknowndungeon1.asm b/data/mapObjects/unknowndungeon1.asm
new file mode 100755
index 00000000..af686897
--- /dev/null
+++ b/data/mapObjects/unknowndungeon1.asm
@@ -0,0 +1,31 @@
+UnknownDungeon1Object: ; 0x74d15 (size=97)
+ db $7d ; border block
+
+ db $9 ; warps
+ db $11, $18, $6, $ff
+ db $11, $19, $6, $ff
+ db $1, $1b, $0, UNKNOWN_DUNGEON_2
+ db $7, $17, $1, UNKNOWN_DUNGEON_2
+ db $9, $12, $2, UNKNOWN_DUNGEON_2
+ db $1, $7, $3, UNKNOWN_DUNGEON_2
+ db $3, $1, $4, UNKNOWN_DUNGEON_2
+ db $b, $3, $5, UNKNOWN_DUNGEON_2
+ db $6, $0, $0, UNKNOWN_DUNGEON_3
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_BALL, $d + 4, $7 + 4, $ff, $ff, $81, FULL_RESTORE ; item
+ db SPRITE_BALL, $3 + 4, $13 + 4, $ff, $ff, $82, MAX_ELIXER ; item
+ db SPRITE_BALL, $0 + 4, $5 + 4, $ff, $ff, $83, NUGGET ; item
+
+ ; warp-to
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $18
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $19
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $1b ; UNKNOWN_DUNGEON_2
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $7, $17 ; UNKNOWN_DUNGEON_2
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $9, $12 ; UNKNOWN_DUNGEON_2
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $7 ; UNKNOWN_DUNGEON_2
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_2
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_2
+ EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $6, $0 ; UNKNOWN_DUNGEON_3
diff --git a/data/mapObjects/unknowndungeon2.asm b/data/mapObjects/unknowndungeon2.asm
new file mode 100755
index 00000000..4900c450
--- /dev/null
+++ b/data/mapObjects/unknowndungeon2.asm
@@ -0,0 +1,25 @@
+UnknownDungeon2Object: ; 0x45e14 (size=73)
+ db $7d ; border block
+
+ db $6 ; warps
+ db $1, $1d, $2, UNKNOWN_DUNGEON_1
+ db $6, $16, $3, UNKNOWN_DUNGEON_1
+ db $7, $13, $4, UNKNOWN_DUNGEON_1
+ db $1, $9, $5, UNKNOWN_DUNGEON_1
+ db $3, $1, $6, UNKNOWN_DUNGEON_1
+ db $b, $3, $7, UNKNOWN_DUNGEON_1
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_BALL, $9 + 4, $1d + 4, $ff, $ff, $81, PP_UP ; item
+ db SPRITE_BALL, $f + 4, $4 + 4, $ff, $ff, $82, ULTRA_BALL ; item
+ db SPRITE_BALL, $6 + 4, $d + 4, $ff, $ff, $83, FULL_RESTORE ; item
+
+ ; warp-to
+ EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $1d ; UNKNOWN_DUNGEON_1
+ EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $6, $16 ; UNKNOWN_DUNGEON_1
+ EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $7, $13 ; UNKNOWN_DUNGEON_1
+ EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $9 ; UNKNOWN_DUNGEON_1
+ EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_1
+ EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_1
diff --git a/data/mapObjects/unknowndungeon3.asm b/data/mapObjects/unknowndungeon3.asm
new file mode 100755
index 00000000..ce5bab57
--- /dev/null
+++ b/data/mapObjects/unknowndungeon3.asm
@@ -0,0 +1,15 @@
+UnknownDungeon3Object: ; 0x45f36 (size=34)
+ db $7d ; border block
+
+ db $1 ; warps
+ db $6, $3, $8, UNKNOWN_DUNGEON_1
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_SLOWBRO, $d + 4, $1b + 4, $ff, $d0, $41, MEWTWO, 70 ; trainer
+ db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $82, ULTRA_BALL ; item
+ db SPRITE_BALL, $1 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item
+
+ ; warp-to
+ EVENT_DISP UNKNOWN_DUNGEON_3_WIDTH, $6, $3 ; UNKNOWN_DUNGEON_1
diff --git a/data/mapObjects/vermilioncity.asm b/data/mapObjects/vermilioncity.asm
new file mode 100755
index 00000000..a7a6a6b4
--- /dev/null
+++ b/data/mapObjects/vermilioncity.asm
@@ -0,0 +1,41 @@
+VermilionCityObject: ; 0x189ba (size=133)
+ db $43 ; border block
+
+ db $9 ; warps
+ db $3, $b, $0, VERMILION_POKECENTER
+ db $d, $9, $0, POKEMON_FAN_CLUB
+ db $d, $17, $0, VERMILION_MART
+ db $13, $c, $0, VERMILION_GYM
+ db $13, $17, $0, VERMILION_HOUSE_1
+ db $1f, $12, $0, VERMILION_DOCK
+ db $1f, $13, $0, VERMILION_DOCK
+ db $d, $f, $0, VERMILION_HOUSE_3
+ db $3, $7, $0, VERMILION_HOUSE_2
+
+ db $7 ; signs
+ db $3, $1b, $7 ; VermilionCityText7
+ db $d, $25, $8 ; VermilionCityText8
+ db $d, $18, $9 ; MartSignText
+ db $3, $c, $a ; PokeCenterSignText
+ db $d, $7, $b ; VermilionCityText11
+ db $13, $7, $c ; VermilionCityText12
+ db $f, $1d, $d ; VermilionCityText13
+
+ db $6 ; people
+ db SPRITE_FOULARD_WOMAN, $7 + 4, $13 + 4, $fe, $2, $1 ; person
+ db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person
+ db SPRITE_SAILOR, $1e + 4, $13 + 4, $ff, $d1, $3 ; person
+ db SPRITE_GAMBLER, $7 + 4, $1e + 4, $ff, $ff, $4 ; person
+ db SPRITE_SLOWBRO, $9 + 4, $1d + 4, $fe, $1, $5 ; person
+ db SPRITE_SAILOR, $1b + 4, $19 + 4, $fe, $2, $6 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_CITY_WIDTH, $3, $b ; VERMILION_POKECENTER
+ EVENT_DISP VERMILION_CITY_WIDTH, $d, $9 ; POKEMON_FAN_CLUB
+ EVENT_DISP VERMILION_CITY_WIDTH, $d, $17 ; VERMILION_MART
+ EVENT_DISP VERMILION_CITY_WIDTH, $13, $c ; VERMILION_GYM
+ EVENT_DISP VERMILION_CITY_WIDTH, $13, $17 ; VERMILION_HOUSE_1
+ EVENT_DISP VERMILION_CITY_WIDTH, $1f, $12 ; VERMILION_DOCK
+ EVENT_DISP VERMILION_CITY_WIDTH, $1f, $13 ; VERMILION_DOCK
+ EVENT_DISP VERMILION_CITY_WIDTH, $d, $f ; VERMILION_HOUSE_3
+ EVENT_DISP VERMILION_CITY_WIDTH, $3, $7 ; VERMILION_HOUSE_2
diff --git a/data/mapObjects/vermiliondock.asm b/data/mapObjects/vermiliondock.asm
new file mode 100755
index 00000000..4c49e966
--- /dev/null
+++ b/data/mapObjects/vermiliondock.asm
@@ -0,0 +1,14 @@
+VermilionDockObject: ; 0x1dcc6 (size=20)
+ db $f ; border block
+
+ db $2 ; warps
+ db $0, $e, $5, $ff
+ db $2, $e, $1, SS_ANNE_1
+
+ db $0 ; signs
+
+ db $0 ; people
+
+ ; warp-to
+ EVENT_DISP VERMILION_DOCK_WIDTH, $0, $e
+ EVENT_DISP VERMILION_DOCK_WIDTH, $2, $e ; SS_ANNE_1
diff --git a/data/mapObjects/vermiliongym.asm b/data/mapObjects/vermiliongym.asm
new file mode 100755
index 00000000..e90602ab
--- /dev/null
+++ b/data/mapObjects/vermiliongym.asm
@@ -0,0 +1,19 @@
+VermilionGymObject: ; 0x5cbfe (size=58)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $11, $4, $3, $ff
+ db $11, $5, $3, $ff
+
+ db $0 ; signs
+
+ db $5 ; people
+ db SPRITE_ROCKER, $1 + 4, $5 + 4, $ff, $d0, $41, LT__SURGE + $C8, $1 ; trainer
+ db SPRITE_GENTLEMAN, $6 + 4, $9 + 4, $ff, $d2, $42, GENTLEMAN + $C8, $3 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d2, $43, ROCKER + $C8, $1 ; trainer
+ db SPRITE_SAILOR, $a + 4, $0 + 4, $ff, $d3, $44, SAILOR + $C8, $8 ; trainer
+ db SPRITE_GYM_HELPER, $e + 4, $4 + 4, $ff, $d0, $5 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_GYM_WIDTH, $11, $4
+ EVENT_DISP VERMILION_GYM_WIDTH, $11, $5
diff --git a/data/mapObjects/vermilionhouse1.asm b/data/mapObjects/vermilionhouse1.asm
new file mode 100755
index 00000000..e6104944
--- /dev/null
+++ b/data/mapObjects/vermilionhouse1.asm
@@ -0,0 +1,17 @@
+VermilionHouse1Object: ; 0x1db20 (size=38)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $4, $ff
+ db $7, $3, $4, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_BUG_CATCHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person
+ db SPRITE_BIRD, $5 + 4, $3 + 4, $fe, $2, $2 ; person
+ db SPRITE_PAPER_SHEET, $3 + 4, $4 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $2
+ EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $3
diff --git a/data/mapObjects/vermilionhouse2.asm b/data/mapObjects/vermilionhouse2.asm
new file mode 100755
index 00000000..aab505cb
--- /dev/null
+++ b/data/mapObjects/vermilionhouse2.asm
@@ -0,0 +1,15 @@
+VermilionHouse2Object: ; 0x560cf (size=26)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $8, $ff
+ db $7, $3, $8, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $2
+ EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $3
diff --git a/data/mapObjects/vermilionhouse3.asm b/data/mapObjects/vermilionhouse3.asm
new file mode 100755
index 00000000..b23a741b
--- /dev/null
+++ b/data/mapObjects/vermilionhouse3.asm
@@ -0,0 +1,15 @@
+VermilionHouse3Object: ; 0x19c25 (size=26)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $7, $ff
+ db $7, $3, $7, $ff
+
+ db $0 ; signs
+
+ db $1 ; people
+ db SPRITE_LITTLE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $2
+ EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $3
diff --git a/data/mapObjects/vermilionmart.asm b/data/mapObjects/vermilionmart.asm
new file mode 100755
index 00000000..f57adde8
--- /dev/null
+++ b/data/mapObjects/vermilionmart.asm
@@ -0,0 +1,17 @@
+VermilionMartObject: ; 0x5c9f4 (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $2, $ff
+ db $7, $4, $2, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $5 + 4, $ff, $ff, $2 ; person
+ db SPRITE_LASS, $3 + 4, $3 + 4, $fe, $2, $3 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_MART_WIDTH, $7, $3
+ EVENT_DISP VERMILION_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/vermilionpokecenter.asm b/data/mapObjects/vermilionpokecenter.asm
new file mode 100755
index 00000000..97b86520
--- /dev/null
+++ b/data/mapObjects/vermilionpokecenter.asm
@@ -0,0 +1,18 @@
+VermilionPokecenterObject: ; 0x5c9a9 (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $0, $ff
+ db $7, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_FISHER, $5 + 4, $a + 4, $ff, $ff, $2 ; person
+ db SPRITE_SAILOR, $4 + 4, $5 + 4, $ff, $ff, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $4
diff --git a/data/mapObjects/victoryroad1.asm b/data/mapObjects/victoryroad1.asm
new file mode 100755
index 00000000..35b13bd3
--- /dev/null
+++ b/data/mapObjects/victoryroad1.asm
@@ -0,0 +1,23 @@
+VictoryRoad1Object: ; 0x5dab8 (size=76)
+ db $7d ; border block
+
+ db $3 ; warps
+ db $11, $8, $2, $ff
+ db $11, $9, $2, $ff
+ db $1, $1, $0, VICTORY_ROAD_2
+
+ db $0 ; signs
+
+ db $7 ; people
+ db SPRITE_LASS, $5 + 4, $7 + 4, $ff, $d3, $41, COOLTRAINER_F + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $3 + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $5 ; trainer
+ db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $83, TM_43 ; item
+ db SPRITE_BALL, $2 + 4, $9 + 4, $ff, $ff, $84, RARE_CANDY ; item
+ db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $10, $5 ; person
+ db SPRITE_BOULDER, $2 + 4, $e + 4, $ff, $10, $6 ; person
+ db SPRITE_BOULDER, $a + 4, $2 + 4, $ff, $10, $7 ; person
+
+ ; warp-to
+ EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $8
+ EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $9
+ EVENT_DISP VICTORY_ROAD_1_WIDTH, $1, $1 ; VICTORY_ROAD_2
diff --git a/data/mapObjects/victoryroad2.asm b/data/mapObjects/victoryroad2.asm
new file mode 100755
index 00000000..ff6bac82
--- /dev/null
+++ b/data/mapObjects/victoryroad2.asm
@@ -0,0 +1,37 @@
+VictoryRoad2Object: ; 0x51915 (size=154)
+ db $7d ; border block
+
+ db $7 ; warps
+ db $8, $0, $2, VICTORY_ROAD_1
+ db $7, $1d, $3, $ff
+ db $8, $1d, $3, $ff
+ db $7, $17, $0, VICTORY_ROAD_3
+ db $e, $19, $2, VICTORY_ROAD_3
+ db $7, $1b, $1, VICTORY_ROAD_3
+ db $1, $1, $3, VICTORY_ROAD_3
+
+ db $0 ; signs
+
+ db $d ; people
+ db SPRITE_HIKER, $9 + 4, $c + 4, $ff, $d2, $41, BLACKBELT + $C8, $9 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $15 + 4, $ff, $d2, $42, JUGGLER + $C8, $2 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $8 + 4, $13 + 4, $ff, $d0, $43, TAMER + $C8, $5 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $d0, $44, POKEMANIAC + $C8, $6 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_2, $3 + 4, $1a + 4, $ff, $d2, $45, JUGGLER + $C8, $5 ; trainer
+ db SPRITE_BIRD, $5 + 4, $b + 4, $ff, $d1, $46, MOLTRES, 50 ; trainer
+ db SPRITE_BALL, $5 + 4, $1b + 4, $ff, $ff, $87, TM_17 ; item
+ db SPRITE_BALL, $9 + 4, $12 + 4, $ff, $ff, $88, FULL_HEAL ; item
+ db SPRITE_BALL, $b + 4, $9 + 4, $ff, $ff, $89, TM_05 ; item
+ db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $8a, GUARD_SPEC_ ; item
+ db SPRITE_BOULDER, $e + 4, $4 + 4, $ff, $10, $b ; person
+ db SPRITE_BOULDER, $5 + 4, $5 + 4, $ff, $10, $c ; person
+ db SPRITE_BOULDER, $10 + 4, $17 + 4, $ff, $10, $d ; person
+
+ ; warp-to
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $0 ; VICTORY_ROAD_1
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1d
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $1d
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $17 ; VICTORY_ROAD_3
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $e, $19 ; VICTORY_ROAD_3
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1b ; VICTORY_ROAD_3
+ EVENT_DISP VICTORY_ROAD_2_WIDTH, $1, $1 ; VICTORY_ROAD_3
diff --git a/data/mapObjects/victoryroad3.asm b/data/mapObjects/victoryroad3.asm
new file mode 100755
index 00000000..44f0f2ca
--- /dev/null
+++ b/data/mapObjects/victoryroad3.asm
@@ -0,0 +1,28 @@
+VictoryRoad3Object: ; 0x44acd (size=106)
+ db $7d ; border block
+
+ db $4 ; warps
+ db $7, $17, $3, VICTORY_ROAD_2
+ db $8, $1a, $5, VICTORY_ROAD_2
+ db $f, $1b, $4, VICTORY_ROAD_2
+ db $0, $2, $6, VICTORY_ROAD_2
+
+ db $0 ; signs
+
+ db $a ; people
+ db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $1c + 4, $ff, $d2, $41, COOLTRAINER_M + $C8, $2 ; trainer
+ db SPRITE_LASS, $d + 4, $7 + 4, $ff, $d3, $42, COOLTRAINER_F + $C8, $2 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $e + 4, $6 + 4, $ff, $d2, $43, COOLTRAINER_M + $C8, $3 ; trainer
+ db SPRITE_LASS, $3 + 4, $d + 4, $ff, $d3, $44, COOLTRAINER_F + $C8, $3 ; trainer
+ db SPRITE_BALL, $5 + 4, $1a + 4, $ff, $ff, $85, MAX_REVIVE ; item
+ db SPRITE_BALL, $7 + 4, $7 + 4, $ff, $ff, $86, TM_47 ; item
+ db SPRITE_BOULDER, $3 + 4, $16 + 4, $ff, $10, $7 ; person
+ db SPRITE_BOULDER, $c + 4, $d + 4, $ff, $10, $8 ; person
+ db SPRITE_BOULDER, $a + 4, $18 + 4, $ff, $10, $9 ; person
+ db SPRITE_BOULDER, $f + 4, $16 + 4, $ff, $10, $a ; person
+
+ ; warp-to
+ EVENT_DISP VICTORY_ROAD_3_WIDTH, $7, $17 ; VICTORY_ROAD_2
+ EVENT_DISP VICTORY_ROAD_3_WIDTH, $8, $1a ; VICTORY_ROAD_2
+ EVENT_DISP VICTORY_ROAD_3_WIDTH, $f, $1b ; VICTORY_ROAD_2
+ EVENT_DISP VICTORY_ROAD_3_WIDTH, $0, $2 ; VICTORY_ROAD_2
diff --git a/data/mapObjects/viridiancity.asm b/data/mapObjects/viridiancity.asm
new file mode 100755
index 00000000..37cb42e2
--- /dev/null
+++ b/data/mapObjects/viridiancity.asm
@@ -0,0 +1,33 @@
+ViridianCityObject: ; 0x18384 (size=104)
+ db $f ; border block
+
+ db $5 ; warps
+ db $19, $17, $0, VIRIDIAN_POKECENTER
+ db $13, $1d, $0, VIRIDIAN_MART
+ db $f, $15, $0, VIRIDIAN_SCHOOL
+ db $9, $15, $0, VIRIDIAN_HOUSE
+ db $7, $20, $0, VIRIDIAN_GYM
+
+ db $6 ; signs
+ db $11, $11, $8 ; ViridianCityText8
+ db $1, $13, $9 ; ViridianCityText9
+ db $1d, $15, $a ; ViridianCityText10
+ db $13, $1e, $b ; MartSignText
+ db $19, $18, $c ; PokeCenterSignText
+ db $7, $1b, $d ; ViridianCityText13
+
+ db $7 ; people
+ db SPRITE_BUG_CATCHER, $14 + 4, $d + 4, $fe, $0, $1 ; person
+ db SPRITE_GAMBLER, $8 + 4, $1e + 4, $ff, $ff, $2 ; person
+ db SPRITE_BUG_CATCHER, $19 + 4, $1e + 4, $fe, $0, $3 ; person
+ db SPRITE_GIRL, $9 + 4, $11 + 4, $ff, $d3, $4 ; person
+ db SPRITE_LYING_OLD_MAN, $9 + 4, $12 + 4, $ff, $ff, $5 ; person
+ db SPRITE_FISHER2, $17 + 4, $6 + 4, $ff, $d0, $6 ; person
+ db SPRITE_GAMBLER, $5 + 4, $11 + 4, $fe, $2, $7 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_CITY_WIDTH, $19, $17 ; VIRIDIAN_POKECENTER
+ EVENT_DISP VIRIDIAN_CITY_WIDTH, $13, $1d ; VIRIDIAN_MART
+ EVENT_DISP VIRIDIAN_CITY_WIDTH, $f, $15 ; VIRIDIAN_SCHOOL
+ EVENT_DISP VIRIDIAN_CITY_WIDTH, $9, $15 ; VIRIDIAN_HOUSE
+ EVENT_DISP VIRIDIAN_CITY_WIDTH, $7, $20 ; VIRIDIAN_GYM
diff --git a/data/mapObjects/viridianforest.asm b/data/mapObjects/viridianforest.asm
new file mode 100755
index 00000000..f6008e21
--- /dev/null
+++ b/data/mapObjects/viridianforest.asm
@@ -0,0 +1,36 @@
+ViridianForestObject: ; 0x611da (size=127)
+ db $3 ; border block
+
+ db $6 ; warps
+ db $0, $1, $2, VIRIDIAN_FOREST_EXIT
+ db $0, $2, $3, VIRIDIAN_FOREST_EXIT
+ db $2f, $f, $1, VIRIDIAN_FOREST_ENTRANCE
+ db $2f, $10, $1, VIRIDIAN_FOREST_ENTRANCE
+ db $2f, $11, $1, VIRIDIAN_FOREST_ENTRANCE
+ db $2f, $12, $1, VIRIDIAN_FOREST_ENTRANCE
+
+ db $6 ; signs
+ db $28, $18, $9 ; ViridianForestText9
+ db $20, $10, $a ; ViridianForestText10
+ db $11, $1a, $b ; ViridianForestText11
+ db $18, $4, $c ; ViridianForestText12
+ db $2d, $12, $d ; ViridianForestText13
+ db $1, $2, $e ; ViridianForestText14
+
+ db $8 ; people
+ db SPRITE_BUG_CATCHER, $2b + 4, $10 + 4, $ff, $ff, $1 ; person
+ db SPRITE_BUG_CATCHER, $21 + 4, $1e + 4, $ff, $d2, $42, BUG_CATCHER + $C8, $1 ; trainer
+ db SPRITE_BUG_CATCHER, $13 + 4, $1e + 4, $ff, $d2, $43, BUG_CATCHER + $C8, $2 ; trainer
+ db SPRITE_BUG_CATCHER, $12 + 4, $2 + 4, $ff, $d2, $44, BUG_CATCHER + $C8, $3 ; trainer
+ db SPRITE_BALL, $b + 4, $19 + 4, $ff, $ff, $85, ANTIDOTE ; item
+ db SPRITE_BALL, $1d + 4, $c + 4, $ff, $ff, $86, POTION ; item
+ db SPRITE_BALL, $1f + 4, $1 + 4, $ff, $ff, $87, POKE_BALL ; item
+ db SPRITE_BUG_CATCHER, $28 + 4, $1b + 4, $ff, $ff, $8 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $1 ; VIRIDIAN_FOREST_EXIT
+ EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $2 ; VIRIDIAN_FOREST_EXIT
+ EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $f ; VIRIDIAN_FOREST_ENTRANCE
+ EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $10 ; VIRIDIAN_FOREST_ENTRANCE
+ EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $11 ; VIRIDIAN_FOREST_ENTRANCE
+ EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $12 ; VIRIDIAN_FOREST_ENTRANCE
diff --git a/data/mapObjects/viridianforestentrance.asm b/data/mapObjects/viridianforestentrance.asm
new file mode 100755
index 00000000..ce0aaae5
--- /dev/null
+++ b/data/mapObjects/viridianforestentrance.asm
@@ -0,0 +1,20 @@
+ViridianForestEntranceObject: ; 0x5d66d (size=48)
+ db $a ; border block
+
+ db $4 ; warps
+ db $0, $4, $3, VIRIDIAN_FOREST
+ db $0, $5, $4, VIRIDIAN_FOREST
+ db $7, $4, $5, $ff
+ db $7, $5, $5, $ff
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_GIRL, $4 + 4, $8 + 4, $ff, $d2, $1 ; person
+ db SPRITE_LITTLE_GIRL, $4 + 4, $2 + 4, $fe, $1, $2 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $4 ; VIRIDIAN_FOREST
+ EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $5 ; VIRIDIAN_FOREST
+ EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $4
+ EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $5
diff --git a/data/mapObjects/viridianforestexit.asm b/data/mapObjects/viridianforestexit.asm
new file mode 100755
index 00000000..a96d5270
--- /dev/null
+++ b/data/mapObjects/viridianforestexit.asm
@@ -0,0 +1,20 @@
+ViridianForestExitObject: ; 0x5d598 (size=48)
+ db $a ; border block
+
+ db $4 ; warps
+ db $0, $4, $1, $ff
+ db $0, $5, $1, $ff
+ db $7, $4, $0, VIRIDIAN_FOREST
+ db $7, $5, $0, VIRIDIAN_FOREST
+
+ db $0 ; signs
+
+ db $2 ; people
+ db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $ff, $1 ; person
+ db SPRITE_OLD_PERSON, $5 + 4, $2 + 4, $ff, $ff, $2 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $4
+ EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $5
+ EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $4 ; VIRIDIAN_FOREST
+ EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $5 ; VIRIDIAN_FOREST
diff --git a/data/mapObjects/viridiangym.asm b/data/mapObjects/viridiangym.asm
new file mode 100755
index 00000000..b6ec5140
--- /dev/null
+++ b/data/mapObjects/viridiangym.asm
@@ -0,0 +1,25 @@
+ViridianGymObject: ; 0x74bde (size=105)
+ db $3 ; border block
+
+ db $2 ; warps
+ db $11, $10, $4, $ff
+ db $11, $11, $4, $ff
+
+ db $0 ; signs
+
+ db $b ; people
+ db SPRITE_GIOVANNI, $1 + 4, $2 + 4, $ff, $d0, $41, GIOVANNI + $C8, $3 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $c + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $9 ; trainer
+ db SPRITE_HIKER, $b + 4, $b + 4, $ff, $d1, $43, BLACKBELT + $C8, $6 ; trainer
+ db SPRITE_ROCKER, $7 + 4, $a + 4, $ff, $d0, $44, TAMER + $C8, $3 ; trainer
+ db SPRITE_HIKER, $7 + 4, $3 + 4, $ff, $d2, $45, BLACKBELT + $C8, $7 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $d + 4, $ff, $d3, $46, COOLTRAINER_M + $C8, $a ; trainer
+ db SPRITE_HIKER, $1 + 4, $a + 4, $ff, $d0, $47, BLACKBELT + $C8, $8 ; trainer
+ db SPRITE_ROCKER, $10 + 4, $2 + 4, $ff, $d3, $48, TAMER + $C8, $4 ; trainer
+ db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $6 + 4, $ff, $d0, $49, COOLTRAINER_M + $C8, $1 ; trainer
+ db SPRITE_GYM_HELPER, $f + 4, $10 + 4, $ff, $d0, $a ; person
+ db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $8b, REVIVE ; item
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $10
+ EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $11
diff --git a/data/mapObjects/viridianhouse.asm b/data/mapObjects/viridianhouse.asm
new file mode 100755
index 00000000..dd2d6069
--- /dev/null
+++ b/data/mapObjects/viridianhouse.asm
@@ -0,0 +1,18 @@
+ViridianHouseObject: ; 0x1d5bb (size=44)
+ db $a ; border block
+
+ db $2 ; warps
+ db $7, $2, $3, $ff
+ db $7, $3, $3, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_BALDING_GUY, $3 + 4, $5 + 4, $ff, $ff, $1 ; person
+ db SPRITE_LITTLE_GIRL, $4 + 4, $1 + 4, $fe, $1, $2 ; person
+ db SPRITE_BIRD, $5 + 4, $5 + 4, $fe, $2, $3 ; person
+ db SPRITE_CLIPBOARD, $0 + 4, $4 + 4, $ff, $ff, $4 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $2
+ EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $3
diff --git a/data/mapObjects/viridianmart.asm b/data/mapObjects/viridianmart.asm
new file mode 100755
index 00000000..b1b367c7
--- /dev/null
+++ b/data/mapObjects/viridianmart.asm
@@ -0,0 +1,17 @@
+ViridianMartObject: ; 0x1d50a (size=38)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $1, $ff
+ db $7, $4, $1, $ff
+
+ db $0 ; signs
+
+ db $3 ; people
+ db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
+ db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $fe, $1, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $3 + 4, $ff, $ff, $3 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $3
+ EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $4
diff --git a/data/mapObjects/viridianpokecenter.asm b/data/mapObjects/viridianpokecenter.asm
new file mode 100755
index 00000000..6631a814
--- /dev/null
+++ b/data/mapObjects/viridianpokecenter.asm
@@ -0,0 +1,18 @@
+ViridianPokecenterObject: ; 0x44277 (size=44)
+ db $0 ; border block
+
+ db $2 ; warps
+ db $7, $3, $0, $ff
+ db $7, $4, $0, $ff
+
+ db $0 ; signs
+
+ db $4 ; people
+ db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
+ db SPRITE_GENTLEMAN, $5 + 4, $a + 4, $fe, $1, $2 ; person
+ db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $4 + 4, $ff, $ff, $3 ; person
+ db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+
+ ; warp-to
+ EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $3
+ EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $4
diff --git a/data/map_songs.asm b/data/map_songs.asm
new file mode 100755
index 00000000..c551a76d
--- /dev/null
+++ b/data/map_songs.asm
@@ -0,0 +1,249 @@
+MapSongBanks: ; c04d (3:404d)
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY
+ db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; unused
+ db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1
+ db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10
+ db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11
+ db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12
+ db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13
+ db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14
+ db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23
+ db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24
+ db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse
+ db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; School
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse
+ db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F
+ db MUSIC_GYM, BANK(Music_Gym) ; PewterGym
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter
+ db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7
+ db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart
+ db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom
+ db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary
+ db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter
+ db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym
+ db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7
+ db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart
+ db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance
+ db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1
+ db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar)
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo
+ db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs
+ db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House
+ db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar)
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo)
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo)
+ db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM
+ db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo)
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo)
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo)
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo)
+ db MUSIC_GYM, BANK(Music_Gym) ; Lorelei
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha
diff --git a/data/mart_inventories.asm b/data/mart_inventories.asm
new file mode 100755
index 00000000..4389a1a3
--- /dev/null
+++ b/data/mart_inventories.asm
@@ -0,0 +1,75 @@
+; mart inventories are below
+; they are texts
+; first byte $FE, next byte # of items, last byte $FF
+
+; Viridian
+ViridianMartText6:: ; 2442 (0:2442)
+ db $FE,4,POKE_BALL,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF
+
+; Pewter
+PewterMartText1:: ; 2449 (0:2449)
+ db $FE,7,POKE_BALL,POTION,ESCAPE_ROPE,ANTIDOTE,BURN_HEAL,AWAKENING
+ db PARLYZ_HEAL,$FF
+
+; Cerulean
+CeruleanMartText1:: ; 2453 (0:2453)
+ db $FE,7,POKE_BALL,POTION,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING
+ db PARLYZ_HEAL,$FF
+
+; Bike shop
+ db $FE,1,BICYCLE,$FF
+
+; Vermilion
+VermilionMartText1:: ; 2461 (0:2461)
+ db $FE,6,POKE_BALL,SUPER_POTION,ICE_HEAL,AWAKENING,PARLYZ_HEAL
+ db REPEL,$FF
+
+; Lavender
+LavenderMartText1:: ; 246a (0:246a)
+ db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,ESCAPE_ROPE,SUPER_REPEL
+ db ANTIDOTE,BURN_HEAL,ICE_HEAL,PARLYZ_HEAL,$FF
+
+; Celadon Dept. Store 2F (1)
+CeladonMart2Text1:: ; 2476 (0:2476)
+ db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,SUPER_REPEL,ANTIDOTE
+ db BURN_HEAL,ICE_HEAL,AWAKENING,PARLYZ_HEAL,$FF
+
+; Celadon Dept. Store 2F (2)
+CeladonMart2Text2:: ; 2482 (0:2482)
+ db $FE,9,TM_32,TM_33,TM_02,TM_07,TM_37,TM_01,TM_05,TM_09,TM_17,$FF
+
+; Celadon Dept. Store 4F
+CeladonMart4Text1:: ; 248e (0:248e)
+ db $FE,5,POKE_DOLL,FIRE_STONE,THUNDER_STONE,WATER_STONE,LEAF_STONE,$FF
+
+; Celadon Dept. Store 5F (1)
+CeladonMart5Text3:: ; 2496 (0:2496)
+ db $FE,7,X_ACCURACY,GUARD_SPEC_,DIRE_HIT,X_ATTACK,X_DEFEND,X_SPEED
+ db X_SPECIAL,$FF
+
+; Celadon Dept. Store 5F (2)
+CeladonMart5Text4:: ; 24a0 (0:24a0)
+ db $FE,5,HP_UP,PROTEIN,IRON,CARBOS,CALCIUM,$FF
+
+; Fuchsia
+FuchsiaMartText1:: ; 24a8 (0:24a8)
+ db $FE,6,ULTRA_BALL,GREAT_BALL,SUPER_POTION,REVIVE,FULL_HEAL
+ db SUPER_REPEL,$FF
+
+; unused? 24b1
+ db $FE,5,GREAT_BALL,HYPER_POTION,SUPER_POTION,FULL_HEAL,REVIVE,$FF
+
+; Cinnabar
+CinnabarMartText1:: ; 24b9 (0:24b9)
+ db $FE,7,ULTRA_BALL,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE
+ db FULL_HEAL,REVIVE,$FF
+
+; Saffron
+SaffronMartText1:: ; 24c3 (0:24c3)
+ db $FE,6,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE,FULL_HEAL
+ db REVIVE,$FF
+
+; Indigo
+IndigoPlateauLobbyText4:: ; 24cc (0:24cc)
+ db $FE,7,ULTRA_BALL,GREAT_BALL,FULL_RESTORE,MAX_POTION,FULL_HEAL
+ db REVIVE,MAX_REPEL,$FF
diff --git a/data/mon_palettes.asm b/data/mon_palettes.asm
new file mode 100755
index 00000000..f6763d7d
--- /dev/null
+++ b/data/mon_palettes.asm
@@ -0,0 +1,153 @@
+MonsterPalettes: ; 725c8 (1c:65c8)
+ db PAL_MEWMON ; MISSINGNO
+ db PAL_GREENMON ; BULBASAUR
+ db PAL_GREENMON ; IVYSAUR
+ db PAL_GREENMON ; VENUSAUR
+ db PAL_REDMON ; CHARMANDER
+ db PAL_REDMON ; CHARMELEON
+ db PAL_REDMON ; CHARIZARD
+ db PAL_CYANMON ; SQUIRTLE
+ db PAL_CYANMON ; WARTORTLE
+ db PAL_CYANMON ; BLASTOISE
+ db PAL_GREENMON ; CATERPIE
+ db PAL_GREENMON ; METAPOD
+ db PAL_CYANMON ; BUTTERFREE
+ db PAL_YELLOWMON ; WEEDLE
+ db PAL_YELLOWMON ; KAKUNA
+ db PAL_YELLOWMON ; BEEDRILL
+ db PAL_BROWNMON ; PIDGEY
+ db PAL_BROWNMON ; PIDGEOTTO
+ db PAL_BROWNMON ; PIDGEOT
+ db PAL_GREYMON ; RATTATA
+ db PAL_GREYMON ; RATICATE
+ db PAL_BROWNMON ; SPEAROW
+ db PAL_BROWNMON ; FEAROW
+ db PAL_PURPLEMON ; EKANS
+ db PAL_PURPLEMON ; ARBOK
+ db PAL_YELLOWMON ; PIKACHU
+ db PAL_YELLOWMON ; RAICHU
+ db PAL_BROWNMON ; SANDSHREW
+ db PAL_BROWNMON ; SANDSLASH
+ db PAL_BLUEMON ; NIDORAN_F
+ db PAL_BLUEMON ; NIDORINA
+ db PAL_BLUEMON ; NIDOQUEEN
+ db PAL_PURPLEMON ; NIDORAN_M
+ db PAL_PURPLEMON ; NIDORINO
+ db PAL_PURPLEMON ; NIDOKING
+ db PAL_PINKMON ; CLEFAIRY
+ db PAL_PINKMON ; CLEFABLE
+ db PAL_REDMON ; VULPIX
+ db PAL_YELLOWMON ; NINETALES
+ db PAL_PINKMON ; JIGGLYPUFF
+ db PAL_PINKMON ; WIGGLYTUFF
+ db PAL_BLUEMON ; ZUBAT
+ db PAL_BLUEMON ; GOLBAT
+ db PAL_GREENMON ; ODDISH
+ db PAL_REDMON ; GLOOM
+ db PAL_REDMON ; VILEPLUME
+ db PAL_REDMON ; PARAS
+ db PAL_REDMON ; PARASECT
+ db PAL_PURPLEMON ; VENONAT
+ db PAL_PURPLEMON ; VENOMOTH
+ db PAL_BROWNMON ; DIGLETT
+ db PAL_BROWNMON ; DUGTRIO
+ db PAL_YELLOWMON ; MEOWTH
+ db PAL_YELLOWMON ; PERSIAN
+ db PAL_YELLOWMON ; PSYDUCK
+ db PAL_CYANMON ; GOLDUCK
+ db PAL_BROWNMON ; MANKEY
+ db PAL_BROWNMON ; PRIMEAPE
+ db PAL_BROWNMON ; GROWLITHE
+ db PAL_REDMON ; ARCANINE
+ db PAL_BLUEMON ; POLIWAG
+ db PAL_BLUEMON ; POLIWHIRL
+ db PAL_BLUEMON ; POLIWRATH
+ db PAL_YELLOWMON ; ABRA
+ db PAL_YELLOWMON ; KADABRA
+ db PAL_YELLOWMON ; ALAKAZAM
+ db PAL_GREYMON ; MACHOP
+ db PAL_GREYMON ; MACHOKE
+ db PAL_GREYMON ; MACHAMP
+ db PAL_GREENMON ; BELLSPROUT
+ db PAL_GREENMON ; WEEPINBELL
+ db PAL_GREENMON ; VICTREEBEL
+ db PAL_CYANMON ; TENTACOOL
+ db PAL_CYANMON ; TENTACRUEL
+ db PAL_GREYMON ; GEODUDE
+ db PAL_GREYMON ; GRAVELER
+ db PAL_GREYMON ; GOLEM
+ db PAL_REDMON ; PONYTA
+ db PAL_REDMON ; RAPIDASH
+ db PAL_PINKMON ; SLOWPOKE
+ db PAL_PINKMON ; SLOWBRO
+ db PAL_GREYMON ; MAGNEMITE
+ db PAL_GREYMON ; MAGNETON
+ db PAL_BROWNMON ; FARFETCH_D
+ db PAL_BROWNMON ; DODUO
+ db PAL_BROWNMON ; DODRIO
+ db PAL_BLUEMON ; SEEL
+ db PAL_BLUEMON ; DEWGONG
+ db PAL_PURPLEMON ; GRIMER
+ db PAL_PURPLEMON ; MUK
+ db PAL_GREYMON ; SHELLDER
+ db PAL_GREYMON ; CLOYSTER
+ db PAL_PURPLEMON ; GASTLY
+ db PAL_PURPLEMON ; HAUNTER
+ db PAL_PURPLEMON ; GENGAR
+ db PAL_GREYMON ; ONIX
+ db PAL_YELLOWMON ; DROWZEE
+ db PAL_YELLOWMON ; HYPNO
+ db PAL_REDMON ; KRABBY
+ db PAL_REDMON ; KINGLER
+ db PAL_YELLOWMON ; VOLTORB
+ db PAL_YELLOWMON ; ELECTRODE
+ db PAL_PINKMON ; EXEGGCUTE
+ db PAL_GREENMON ; EXEGGUTOR
+ db PAL_GREYMON ; CUBONE
+ db PAL_GREYMON ; MAROWAK
+ db PAL_BROWNMON ; HITMONLEE
+ db PAL_BROWNMON ; HITMONCHAN
+ db PAL_PINKMON ; LICKITUNG
+ db PAL_PURPLEMON ; KOFFING
+ db PAL_PURPLEMON ; WEEZING
+ db PAL_GREYMON ; RHYHORN
+ db PAL_GREYMON ; RHYDON
+ db PAL_PINKMON ; CHANSEY
+ db PAL_BLUEMON ; TANGELA
+ db PAL_BROWNMON ; KANGASKHAN
+ db PAL_CYANMON ; HORSEA
+ db PAL_CYANMON ; SEADRA
+ db PAL_REDMON ; GOLDEEN
+ db PAL_REDMON ; SEAKING
+ db PAL_REDMON ; STARYU
+ db PAL_GREYMON ; STARMIE
+ db PAL_PINKMON ; MR_MIME
+ db PAL_GREENMON ; SCYTHER
+ db PAL_MEWMON ; JYNX
+ db PAL_YELLOWMON ; ELECTABUZZ
+ db PAL_REDMON ; MAGMAR
+ db PAL_BROWNMON ; PINSIR
+ db PAL_GREYMON ; TAUROS
+ db PAL_REDMON ; MAGIKARP
+ db PAL_BLUEMON ; GYARADOS
+ db PAL_CYANMON ; LAPRAS
+ db PAL_GREYMON ; DITTO
+ db PAL_GREYMON ; EEVEE
+ db PAL_CYANMON ; VAPOREON
+ db PAL_YELLOWMON ; JOLTEON
+ db PAL_REDMON ; FLAREON
+ db PAL_GREYMON ; PORYGON
+ db PAL_BLUEMON ; OMANYTE
+ db PAL_BLUEMON ; OMASTAR
+ db PAL_BROWNMON ; KABUTO
+ db PAL_BROWNMON ; KABUTOPS
+ db PAL_GREYMON ; AERODACTYL
+ db PAL_PINKMON ; SNORLAX
+ db PAL_BLUEMON ; ARTICUNO
+ db PAL_YELLOWMON ; ZAPDOS
+ db PAL_REDMON ; MOLTRES
+ db PAL_GREYMON ; DRATINI
+ db PAL_BLUEMON ; DRAGONAIR
+ db PAL_BROWNMON ; DRAGONITE
+ db PAL_MEWMON ; MEWTWO
+ db PAL_MEWMON ; MEW
diff --git a/data/mon_party_sprites.asm b/data/mon_party_sprites.asm
new file mode 100755
index 00000000..b7839570
--- /dev/null
+++ b/data/mon_party_sprites.asm
@@ -0,0 +1,77 @@
+MonOverworldData: ; 7190d (1c:590d)
+ dn SPRITE_GRASS, SPRITE_GRASS ;Bulbasaur/Ivysaur
+ dn SPRITE_GRASS, SPRITE_MON ;Venusaur/Charmander
+ dn SPRITE_MON, SPRITE_MON ;Charmeleon/Charizard
+ dn SPRITE_WATER, SPRITE_WATER ;Squirtle/Wartortle
+ dn SPRITE_WATER, SPRITE_BUG ;Blastoise/Caterpie
+ dn SPRITE_BUG, SPRITE_BUG ;Metapod/Butterfree
+ dn SPRITE_BUG, SPRITE_BUG ;Weedle/Kakuna
+ dn SPRITE_BUG, SPRITE_BIRD_M ;Beedrill/Pidgey
+ dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Pidgeotto/Pidgeot
+ dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Rattata/Raticate
+ dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Spearow/Fearow
+ dn SPRITE_SNAKE, SPRITE_SNAKE ;Ekans/Arbok
+ dn SPRITE_FAIRY, SPRITE_FAIRY ;Pikachu/Raichu
+ dn SPRITE_MON, SPRITE_MON ;Sandshrew/Sandslash
+ dn SPRITE_MON, SPRITE_MON ;Nidoran?/Nidorina
+ dn SPRITE_MON, SPRITE_MON ;Nidoqueen/Nidoran?
+ dn SPRITE_MON, SPRITE_MON ;Nidorino/Nidoking
+ dn SPRITE_FAIRY, SPRITE_FAIRY ;Clefairy/Clefable
+ dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Vulpix/Ninetales
+ dn SPRITE_FAIRY, SPRITE_FAIRY ;Jigglypuff/Wigglytuff
+ dn SPRITE_MON, SPRITE_MON ;Zubat/Golbat
+ dn SPRITE_GRASS, SPRITE_GRASS ;Oddish/Gloom
+ dn SPRITE_GRASS, SPRITE_BUG ;Vileplume/Paras
+ dn SPRITE_BUG, SPRITE_BUG ;Parasect/Venonat
+ dn SPRITE_BUG, SPRITE_MON ;Venomoth/Diglett
+ dn SPRITE_MON, SPRITE_MON ;Dugtrio/Meowth
+ dn SPRITE_MON, SPRITE_MON ;Persian/Psyduck
+ dn SPRITE_MON, SPRITE_MON ;Golduck/Mankey
+ dn SPRITE_MON, SPRITE_QUADRUPED ;Primeape/Growlithe
+ dn SPRITE_QUADRUPED, SPRITE_MON ;Arcanine/Poliwag
+ dn SPRITE_MON, SPRITE_MON ;Poliwhirl/Poliwrath
+ dn SPRITE_MON, SPRITE_MON ;Abra/Kadabra
+ dn SPRITE_MON, SPRITE_MON ;Alakazam/Machop
+ dn SPRITE_MON, SPRITE_MON ;Machoke/Machamp
+ dn SPRITE_GRASS, SPRITE_GRASS ;Bellsprout/Weepinbell
+ dn SPRITE_GRASS, SPRITE_WATER ;Victreebel/Tentacool
+ dn SPRITE_WATER, SPRITE_MON ;Tentacruel/Geodude
+ dn SPRITE_MON, SPRITE_MON ;Graveler/Golem
+ dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Ponyta/Rapidash
+ dn SPRITE_QUADRUPED, SPRITE_MON ;Slowpoke/Slowbro
+ dn SPRITE_BALL_M, SPRITE_BALL_M ;Magnemite/Magneton
+ dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Farfetch'd/Doduo
+ dn SPRITE_BIRD_M, SPRITE_WATER ;Dodrio/Seel
+ dn SPRITE_WATER, SPRITE_MON ;Dewgong/Grimer
+ dn SPRITE_MON, SPRITE_HELIX ;Muk/Shellder
+ dn SPRITE_HELIX, SPRITE_MON ;Cloyster/Gastly
+ dn SPRITE_MON, SPRITE_MON ;Haunter/Gengar
+ dn SPRITE_SNAKE, SPRITE_MON ;Onix/Drowzee
+ dn SPRITE_MON, SPRITE_WATER ;Hypno/Krabby
+ dn SPRITE_WATER, SPRITE_BALL_M ;Kingler/Voltorb
+ dn SPRITE_BALL_M, SPRITE_GRASS ;Electrode/Exeggcute
+ dn SPRITE_GRASS, SPRITE_MON ;Exeggutor/Cubone
+ dn SPRITE_MON, SPRITE_MON ;Marowak/Hitmonlee
+ dn SPRITE_MON, SPRITE_MON ;Hitmonchan/Lickitung
+ dn SPRITE_MON, SPRITE_MON ;Koffing/Weezing
+ dn SPRITE_QUADRUPED, SPRITE_MON ;Rhyhorn/Rhydon
+ dn SPRITE_FAIRY, SPRITE_GRASS ;Chansey/Tangela
+ dn SPRITE_MON, SPRITE_WATER ;Kangaskhan/Horsea
+ dn SPRITE_WATER, SPRITE_WATER ;Seadra/Goldeen
+ dn SPRITE_WATER, SPRITE_HELIX ;Seaking/Staryu
+ dn SPRITE_HELIX, SPRITE_MON ;Starmie/Mr.Mime
+ dn SPRITE_BUG, SPRITE_MON ;Scyther/Jynx
+ dn SPRITE_MON, SPRITE_MON ;Electabuzz/Magmar
+ dn SPRITE_BUG, SPRITE_QUADRUPED ;Pinsir/Tauros
+ dn SPRITE_WATER, SPRITE_SNAKE ;Magikarp/Gyarados
+ dn SPRITE_WATER, SPRITE_MON ;Lapras/Ditto
+ dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Eevee/Vaporeon
+ dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Jolteon/Flareon
+ dn SPRITE_MON, SPRITE_HELIX ;Porygon/Omanyte
+ dn SPRITE_HELIX, SPRITE_HELIX ;Omastar/Kabuto
+ dn SPRITE_HELIX, SPRITE_BIRD_M ;Kabutops/Aerodactyl
+ dn SPRITE_MON, SPRITE_BIRD_M ;Snorlax/Articuno
+ dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Zapdos/Moltres
+ dn SPRITE_SNAKE, SPRITE_SNAKE ;Dratini/Dragonair
+ dn SPRITE_SNAKE, SPRITE_MON ;Dragonite/Mewtwo
+ dn SPRITE_MON, 0 ;Mew/Padding
diff --git a/data/moves.asm b/data/moves.asm
new file mode 100755
index 00000000..08da533d
--- /dev/null
+++ b/data/moves.asm
@@ -0,0 +1,168 @@
+Moves: ; 38000 (e:4000)
+; characteristics of each move
+; animation, effect, power, type, accuracy, PP
+ db POUND ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35
+ db KARATE_CHOP ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $FF,25
+ db DOUBLESLAP ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,10
+ db COMET_PUNCH ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $D8,15
+ db MEGA_PUNCH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $D8,20
+ db PAY_DAY ,PAY_DAY_EFFECT ,$28,NORMAL, $FF,20
+ db FIRE_PUNCH ,BURN_SIDE_EFFECT1 ,$4B,FIRE, $FF,15
+ db ICE_PUNCH ,FREEZE_SIDE_EFFECT ,$4B,ICE, $FF,15
+ db THUNDERPUNCH,PARALYZE_SIDE_EFFECT1 ,$4B,ELECTRIC,$FF,15
+ db SCRATCH ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35
+ db VICEGRIP ,NO_ADDITIONAL_EFFECT ,$37,NORMAL, $FF,30
+ db GUILLOTINE ,OHKO_EFFECT ,$01,NORMAL, $4C,5
+ db RAZOR_WIND ,CHARGE_EFFECT ,$50,NORMAL, $BF,10
+ db SWORDS_DANCE,ATTACK_UP2_EFFECT ,$00,NORMAL, $FF,30
+ db CUT ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $F2,30
+ db GUST ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35
+ db WING_ATTACK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35
+ db WHIRLWIND ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $D8,20
+ db FLY ,FLY_EFFECT ,$46,FLYING, $F2,15
+ db BIND ,TRAPPING_EFFECT ,$0F,NORMAL, $BF,20
+ db SLAM ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $BF,20
+ db VINE_WHIP ,NO_ADDITIONAL_EFFECT ,$23,GRASS, $FF,10
+ db STOMP ,FLINCH_SIDE_EFFECT2 ,$41,NORMAL, $FF,20
+ db DOUBLE_KICK ,ATTACK_TWICE_EFFECT ,$1E,FIGHTING,$FF,30
+ db MEGA_KICK ,NO_ADDITIONAL_EFFECT ,$78,NORMAL, $BF,5
+ db JUMP_KICK ,JUMP_KICK_EFFECT ,$46,FIGHTING,$F2,25
+ db ROLLING_KICK,FLINCH_SIDE_EFFECT2 ,$3C,FIGHTING,$D8,15
+ db SAND_ATTACK ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,15
+ db HEADBUTT ,FLINCH_SIDE_EFFECT2 ,$46,NORMAL, $FF,15
+ db HORN_ATTACK ,NO_ADDITIONAL_EFFECT ,$41,NORMAL, $FF,25
+ db FURY_ATTACK ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20
+ db HORN_DRILL ,OHKO_EFFECT ,$01,NORMAL, $4C,5
+ db TACKLE ,NO_ADDITIONAL_EFFECT ,$23,NORMAL, $F2,35
+ db BODY_SLAM ,PARALYZE_SIDE_EFFECT2 ,$55,NORMAL, $FF,15
+ db WRAP ,TRAPPING_EFFECT ,$0F,NORMAL, $D8,20
+ db TAKE_DOWN ,RECOIL_EFFECT ,$5A,NORMAL, $D8,20
+ db THRASH ,THRASH_PETAL_DANCE_EFFECT ,$5A,NORMAL, $FF,20
+ db DOUBLE_EDGE ,RECOIL_EFFECT ,$64,NORMAL, $FF,15
+ db TAIL_WHIP ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30
+ db POISON_STING,POISON_SIDE_EFFECT1 ,$0F,POISON, $FF,35
+ db TWINEEDLE ,TWINEEDLE_EFFECT ,$19,BUG, $FF,20
+ db PIN_MISSILE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0E,BUG, $D8,20
+ db LEER ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30
+ db BITE ,FLINCH_SIDE_EFFECT1 ,$3C,NORMAL, $FF,25
+ db GROWL ,ATTACK_DOWN1_EFFECT ,$00,NORMAL, $FF,40
+ db ROAR ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $FF,20
+ db SING ,SLEEP_EFFECT ,$00,NORMAL, $8C,15
+ db SUPERSONIC ,CONFUSION_EFFECT ,$00,NORMAL, $8C,20
+ db SONICBOOM ,SPECIAL_DAMAGE_EFFECT ,$01,NORMAL, $E5,20
+ db DISABLE ,DISABLE_EFFECT ,$00,NORMAL, $8C,20
+ db ACID ,DEFENSE_DOWN_SIDE_EFFECT ,$28,POISON, $FF,30
+ db EMBER ,BURN_SIDE_EFFECT1 ,$28,FIRE, $FF,25
+ db FLAMETHROWER,BURN_SIDE_EFFECT1 ,$5F,FIRE, $FF,15
+ db MIST ,MIST_EFFECT ,$00,ICE, $FF,30
+ db WATER_GUN ,NO_ADDITIONAL_EFFECT ,$28,WATER, $FF,25
+ db HYDRO_PUMP ,NO_ADDITIONAL_EFFECT ,$78,WATER, $CC,5
+ db SURF ,NO_ADDITIONAL_EFFECT ,$5F,WATER, $FF,15
+ db ICE_BEAM ,FREEZE_SIDE_EFFECT ,$5F,ICE, $FF,10
+ db BLIZZARD ,FREEZE_SIDE_EFFECT ,$78,ICE, $E5,5
+ db PSYBEAM ,CONFUSION_SIDE_EFFECT ,$41,PSYCHIC, $FF,20
+ db BUBBLEBEAM ,SPEED_DOWN_SIDE_EFFECT ,$41,WATER, $FF,20
+ db AURORA_BEAM ,ATTACK_DOWN_SIDE_EFFECT ,$41,ICE, $FF,20
+ db HYPER_BEAM ,HYPER_BEAM_EFFECT ,$96,NORMAL, $E5,5
+ db PECK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35
+ db DRILL_PECK ,NO_ADDITIONAL_EFFECT ,$50,FLYING, $FF,20
+ db SUBMISSION ,RECOIL_EFFECT ,$50,FIGHTING,$CC,25
+ db LOW_KICK ,FLINCH_SIDE_EFFECT2 ,$32,FIGHTING,$E5,20
+ db COUNTER ,NO_ADDITIONAL_EFFECT ,$01,FIGHTING,$FF,20
+ db SEISMIC_TOSS,SPECIAL_DAMAGE_EFFECT ,$01,FIGHTING,$FF,20
+ db STRENGTH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,15
+ db ABSORB ,DRAIN_HP_EFFECT ,$14,GRASS, $FF,20
+ db MEGA_DRAIN ,DRAIN_HP_EFFECT ,$28,GRASS, $FF,10
+ db LEECH_SEED ,LEECH_SEED_EFFECT ,$00,GRASS, $E5,10
+ db GROWTH ,SPECIAL_UP1_EFFECT ,$00,NORMAL, $FF,40
+ db RAZOR_LEAF ,NO_ADDITIONAL_EFFECT ,$37,GRASS, $F2,25
+ db SOLARBEAM ,CHARGE_EFFECT ,$78,GRASS, $FF,10
+ db POISONPOWDER,POISON_EFFECT ,$00,POISON, $BF,35
+ db STUN_SPORE ,PARALYZE_EFFECT ,$00,GRASS, $BF,30
+ db SLEEP_POWDER,SLEEP_EFFECT ,$00,GRASS, $BF,15
+ db PETAL_DANCE ,THRASH_PETAL_DANCE_EFFECT ,$46,GRASS, $FF,20
+ db STRING_SHOT ,SPEED_DOWN1_EFFECT ,$00,BUG, $F2,40
+ db DRAGON_RAGE ,SPECIAL_DAMAGE_EFFECT ,$01,DRAGON, $FF,10
+ db FIRE_SPIN ,TRAPPING_EFFECT ,$0F,FIRE, $B2,15
+ db THUNDERSHOCK,PARALYZE_SIDE_EFFECT1 ,$28,ELECTRIC,$FF,30
+ db THUNDERBOLT ,PARALYZE_SIDE_EFFECT1 ,$5F,ELECTRIC,$FF,15
+ db THUNDER_WAVE,PARALYZE_EFFECT ,$00,ELECTRIC,$FF,20
+ db THUNDER ,PARALYZE_SIDE_EFFECT1 ,$78,ELECTRIC,$B2,10
+ db ROCK_THROW ,NO_ADDITIONAL_EFFECT ,$32,ROCK, $A5,15
+ db EARTHQUAKE ,NO_ADDITIONAL_EFFECT ,$64,GROUND, $FF,10
+ db FISSURE ,OHKO_EFFECT ,$01,GROUND, $4C,5
+ db DIG ,CHARGE_EFFECT ,$64,GROUND, $FF,10
+ db TOXIC ,POISON_EFFECT ,$00,POISON, $D8,10
+ db CONFUSION ,CONFUSION_SIDE_EFFECT ,$32,PSYCHIC, $FF,25
+ db PSYCHIC_M ,SPECIAL_DOWN_SIDE_EFFECT ,$5A,PSYCHIC, $FF,10
+ db HYPNOSIS ,SLEEP_EFFECT ,$00,PSYCHIC, $99,20
+ db MEDITATE ,ATTACK_UP1_EFFECT ,$00,PSYCHIC, $FF,40
+ db AGILITY ,SPEED_UP2_EFFECT ,$00,PSYCHIC, $FF,30
+ db QUICK_ATTACK,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,30
+ db RAGE ,RAGE_EFFECT ,$14,NORMAL, $FF,20
+ db TELEPORT ,SWITCH_AND_TELEPORT_EFFECT,$00,PSYCHIC, $FF,20
+ db NIGHT_SHADE ,SPECIAL_DAMAGE_EFFECT ,$00,GHOST, $FF,15
+ db MIMIC ,MIMIC_EFFECT ,$00,NORMAL, $FF,10
+ db SCREECH ,DEFENSE_DOWN2_EFFECT ,$00,NORMAL, $D8,40
+ db DOUBLE_TEAM ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,15
+ db RECOVER ,HEAL_EFFECT ,$00,NORMAL, $FF,20
+ db HARDEN ,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,30
+ db MINIMIZE ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,20
+ db SMOKESCREEN ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,20
+ db CONFUSE_RAY ,CONFUSION_EFFECT ,$00,GHOST, $FF,10
+ db WITHDRAW ,DEFENSE_UP1_EFFECT ,$00,WATER, $FF,40
+ db DEFENSE_CURL,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,40
+ db BARRIER ,DEFENSE_UP2_EFFECT ,$00,PSYCHIC, $FF,30
+ db LIGHT_SCREEN,LIGHT_SCREEN_EFFECT ,$00,PSYCHIC, $FF,30
+ db HAZE ,HAZE_EFFECT ,$00,ICE, $FF,30
+ db REFLECT ,REFLECT_EFFECT ,$00,PSYCHIC, $FF,20
+ db FOCUS_ENERGY,FOCUS_ENERGY_EFFECT ,$00,NORMAL, $FF,30
+ db BIDE ,BIDE_EFFECT ,$00,NORMAL, $FF,10
+ db METRONOME ,METRONOME_EFFECT ,$00,NORMAL, $FF,10
+ db MIRROR_MOVE ,MIRROR_MOVE_EFFECT ,$00,FLYING, $FF,20
+ db SELFDESTRUCT,EXPLODE_EFFECT ,$82,NORMAL, $FF,5
+ db EGG_BOMB ,NO_ADDITIONAL_EFFECT ,$64,NORMAL, $BF,10
+ db LICK ,PARALYZE_SIDE_EFFECT2 ,$14,GHOST, $FF,30
+ db SMOG ,POISON_SIDE_EFFECT2 ,$14,POISON, $B2,20
+ db SLUDGE ,POISON_SIDE_EFFECT2 ,$41,POISON, $FF,20
+ db BONE_CLUB ,FLINCH_SIDE_EFFECT1 ,$41,GROUND, $D8,20
+ db FIRE_BLAST ,BURN_SIDE_EFFECT2 ,$78,FIRE, $D8,5
+ db WATERFALL ,NO_ADDITIONAL_EFFECT ,$50,WATER, $FF,15
+ db CLAMP ,TRAPPING_EFFECT ,$23,WATER, $BF,10
+ db SWIFT ,SWIFT_EFFECT ,$3C,NORMAL, $FF,20
+ db SKULL_BASH ,CHARGE_EFFECT ,$64,NORMAL, $FF,15
+ db SPIKE_CANNON,TWO_TO_FIVE_ATTACKS_EFFECT,$14,NORMAL, $FF,15
+ db CONSTRICT ,SPEED_DOWN_SIDE_EFFECT ,$0A,NORMAL, $FF,35
+ db AMNESIA ,SPECIAL_UP2_EFFECT ,$00,PSYCHIC, $FF,20
+ db KINESIS ,ACCURACY_DOWN1_EFFECT ,$00,PSYCHIC, $CC,15
+ db SOFTBOILED ,HEAL_EFFECT ,$00,NORMAL, $FF,10
+ db HI_JUMP_KICK,JUMP_KICK_EFFECT ,$55,FIGHTING,$E5,20
+ db GLARE ,PARALYZE_EFFECT ,$00,NORMAL, $BF,30
+ db DREAM_EATER ,DREAM_EATER_EFFECT ,$64,PSYCHIC, $FF,15
+ db POISON_GAS ,POISON_EFFECT ,$00,POISON, $8C,40
+ db BARRAGE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20
+ db LEECH_LIFE ,DRAIN_HP_EFFECT ,$14,BUG, $FF,15
+ db LOVELY_KISS ,SLEEP_EFFECT ,$00,NORMAL, $BF,10
+ db SKY_ATTACK ,CHARGE_EFFECT ,$8C,FLYING, $E5,5
+ db TRANSFORM ,TRANSFORM_EFFECT ,$00,NORMAL, $FF,10
+ db BUBBLE ,SPEED_DOWN_SIDE_EFFECT ,$14,WATER, $FF,30
+ db DIZZY_PUNCH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,10
+ db SPORE ,SLEEP_EFFECT ,$00,GRASS, $FF,15
+ db FLASH ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $B2,20
+ db PSYWAVE ,SPECIAL_DAMAGE_EFFECT ,$01,PSYCHIC, $CC,15
+ db SPLASH ,SPLASH_EFFECT ,$00,NORMAL, $FF,40
+ db ACID_ARMOR ,DEFENSE_UP2_EFFECT ,$00,POISON, $FF,40
+ db CRABHAMMER ,NO_ADDITIONAL_EFFECT ,$5A,WATER, $D8,10
+ db EXPLOSION ,EXPLODE_EFFECT ,$AA,NORMAL, $FF,5
+ db FURY_SWIPES ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $CC,15
+ db BONEMERANG ,ATTACK_TWICE_EFFECT ,$32,GROUND, $E5,10
+ db REST ,HEAL_EFFECT ,$00,PSYCHIC, $FF,10
+ db ROCK_SLIDE ,NO_ADDITIONAL_EFFECT ,$4B,ROCK, $E5,10
+ db HYPER_FANG ,FLINCH_SIDE_EFFECT1 ,$50,NORMAL, $E5,15
+ db SHARPEN ,ATTACK_UP1_EFFECT ,$00,NORMAL, $FF,30
+ db CONVERSION ,CONVERSION_EFFECT ,$00,NORMAL, $FF,30
+ db TRI_ATTACK ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,10
+ db SUPER_FANG ,SUPER_FANG_EFFECT ,$01,NORMAL, $E5,10
+ db SLASH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,20
+ db SUBSTITUTE ,SUBSTITUTE_EFFECT ,$00,NORMAL, $FF,10
+ db STRUGGLE ,RECOIL_EFFECT ,$32,NORMAL, $FF,10
diff --git a/data/pokedex_entries.asm b/data/pokedex_entries.asm
new file mode 100755
index 00000000..6f06d699
--- /dev/null
+++ b/data/pokedex_entries.asm
@@ -0,0 +1,1259 @@
+PokedexEntryPointers: ; 4047e (10:447e)
+ dw RhydonDexEntry
+ dw KangaskhanDexEntry
+ dw NidoranMDexEntry
+ dw ClefairyDexEntry
+ dw SpearowDexEntry
+ dw VoltorbDexEntry
+ dw NidokingDexEntry
+ dw SlowbroDexEntry
+ dw IvysaurDexEntry
+ dw ExeggutorDexEntry
+ dw LickitungDexEntry
+ dw ExeggcuteDexEntry
+ dw GrimerDexEntry
+ dw GengarDexEntry
+ dw NidoranFDexEntry
+ dw NidoqueenDexEntry
+ dw CuboneDexEntry
+ dw RhyhornDexEntry
+ dw LaprasDexEntry
+ dw ArcanineDexEntry
+ dw MewDexEntry
+ dw GyaradosDexEntry
+ dw ShellderDexEntry
+ dw TentacoolDexEntry
+ dw GastlyDexEntry
+ dw ScytherDexEntry
+ dw StaryuDexEntry
+ dw BlastoiseDexEntry
+ dw PinsirDexEntry
+ dw TangelaDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw GrowlitheDexEntry
+ dw OnixDexEntry
+ dw FearowDexEntry
+ dw PidgeyDexEntry
+ dw SlowpokeDexEntry
+ dw KadabraDexEntry
+ dw GravelerDexEntry
+ dw ChanseyDexEntry
+ dw MachokeDexEntry
+ dw MrMimeDexEntry
+ dw HitmonleeDexEntry
+ dw HitmonchanDexEntry
+ dw ArbokDexEntry
+ dw ParasectDexEntry
+ dw PsyduckDexEntry
+ dw DrowzeeDexEntry
+ dw GolemDexEntry
+ dw MissingNoDexEntry
+ dw MagmarDexEntry
+ dw MissingNoDexEntry
+ dw ElectabuzzDexEntry
+ dw MagnetonDexEntry
+ dw KoffingDexEntry
+ dw MissingNoDexEntry
+ dw MankeyDexEntry
+ dw SeelDexEntry
+ dw DiglettDexEntry
+ dw TaurosDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw FarfetchdDexEntry
+ dw VenonatDexEntry
+ dw DragoniteDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw DoduoDexEntry
+ dw PoliwagDexEntry
+ dw JynxDexEntry
+ dw MoltresDexEntry
+ dw ArticunoDexEntry
+ dw ZapdosDexEntry
+ dw DittoDexEntry
+ dw MeowthDexEntry
+ dw KrabbyDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw VulpixDexEntry
+ dw NinetalesDexEntry
+ dw PikachuDexEntry
+ dw RaichuDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw DratiniDexEntry
+ dw DragonairDexEntry
+ dw KabutoDexEntry
+ dw KabutopsDexEntry
+ dw HorseaDexEntry
+ dw SeadraDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw SandshrewDexEntry
+ dw SandslashDexEntry
+ dw OmanyteDexEntry
+ dw OmastarDexEntry
+ dw JigglypuffDexEntry
+ dw WigglytuffDexEntry
+ dw EeveeDexEntry
+ dw FlareonDexEntry
+ dw JolteonDexEntry
+ dw VaporeonDexEntry
+ dw MachopDexEntry
+ dw ZubatDexEntry
+ dw EkansDexEntry
+ dw ParasDexEntry
+ dw PoliwhirlDexEntry
+ dw PoliwrathDexEntry
+ dw WeedleDexEntry
+ dw KakunaDexEntry
+ dw BeedrillDexEntry
+ dw MissingNoDexEntry
+ dw DodrioDexEntry
+ dw PrimeapeDexEntry
+ dw DugtrioDexEntry
+ dw VenomothDexEntry
+ dw DewgongDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw CaterpieDexEntry
+ dw MetapodDexEntry
+ dw ButterfreeDexEntry
+ dw MachampDexEntry
+ dw MissingNoDexEntry
+ dw GolduckDexEntry
+ dw HypnoDexEntry
+ dw GolbatDexEntry
+ dw MewtwoDexEntry
+ dw SnorlaxDexEntry
+ dw MagikarpDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MukDexEntry
+ dw MissingNoDexEntry
+ dw KinglerDexEntry
+ dw CloysterDexEntry
+ dw MissingNoDexEntry
+ dw ElectrodeDexEntry
+ dw ClefableDexEntry
+ dw WeezingDexEntry
+ dw PersianDexEntry
+ dw MarowakDexEntry
+ dw MissingNoDexEntry
+ dw HaunterDexEntry
+ dw AbraDexEntry
+ dw AlakazamDexEntry
+ dw PidgeottoDexEntry
+ dw PidgeotDexEntry
+ dw StarmieDexEntry
+ dw BulbasaurDexEntry
+ dw VenusaurDexEntry
+ dw TentacruelDexEntry
+ dw MissingNoDexEntry
+ dw GoldeenDexEntry
+ dw SeakingDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw PonytaDexEntry
+ dw RapidashDexEntry
+ dw RattataDexEntry
+ dw RaticateDexEntry
+ dw NidorinoDexEntry
+ dw NidorinaDexEntry
+ dw GeodudeDexEntry
+ dw PorygonDexEntry
+ dw AerodactylDexEntry
+ dw MissingNoDexEntry
+ dw MagnemiteDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw CharmanderDexEntry
+ dw SquirtleDexEntry
+ dw CharmeleonDexEntry
+ dw WartortleDexEntry
+ dw CharizardDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw MissingNoDexEntry
+ dw OddishDexEntry
+ dw GloomDexEntry
+ dw VileplumeDexEntry
+ dw BellsproutDexEntry
+ dw WeepinbellDexEntry
+ dw VictreebelDexEntry
+
+; string: species name
+; height in feet, inches
+; weight in pounds
+; text entry
+
+RhydonDexEntry: ; 405fa (10:45fa)
+ db "DRILL@"
+ db 6,3
+ dw 2650
+ TX_FAR _RhydonDexEntry
+ db "@"
+
+KangaskhanDexEntry: ; 40609 (10:4609)
+ db "PARENT@"
+ db 7,3
+ dw 1760
+ TX_FAR _KangaskhanDexEntry
+ db "@"
+
+NidoranMDexEntry: ; 40619 (10:4619)
+ db "POISON PIN@"
+ db 1,8
+ dw 200
+ TX_FAR _NidoranMDexEntry
+ db "@"
+
+ClefairyDexEntry: ; 4062d (10:462d)
+ db "FAIRY@"
+ db 2,0
+ dw 170
+ TX_FAR _ClefairyDexEntry
+ db "@"
+
+SpearowDexEntry: ; 4063c (10:463c)
+ db "TINY BIRD@"
+ db 1,0
+ dw 40
+ TX_FAR _SpearowDexEntry
+ db "@"
+
+VoltorbDexEntry: ; 4064f (10:464f)
+ db "BALL@"
+ db 1,8
+ dw 230
+ TX_FAR _VoltorbDexEntry
+ db "@"
+
+NidokingDexEntry: ; 4065d (10:465d)
+ db "DRILL@"
+ db 4,7
+ dw 1370
+ TX_FAR _NidokingDexEntry
+ db "@"
+
+SlowbroDexEntry: ; 4066c (10:466c)
+ db "HERMITCRAB@"
+ db 5,3
+ dw 1730
+ TX_FAR _SlowbroDexEntry
+ db "@"
+
+IvysaurDexEntry: ; 40680 (10:4680)
+ db "SEED@"
+ db 3,3
+ dw 290
+ TX_FAR _IvysaurDexEntry
+ db "@"
+
+ExeggutorDexEntry: ; 4068e (10:468e)
+ db "COCONUT@"
+ db 6,7
+ dw 2650
+ TX_FAR _ExeggutorDexEntry
+ db "@"
+
+LickitungDexEntry: ; 4069f (10:469f)
+ db "LICKING@"
+ db 3,11
+ dw 1440
+ TX_FAR _LickitungDexEntry
+ db "@"
+
+ExeggcuteDexEntry: ; 406b0 (10:46b0)
+ db "EGG@"
+ db 1,4
+ dw 60
+ TX_FAR _ExeggcuteDexEntry
+ db "@"
+
+GrimerDexEntry: ; 406bd (10:46bd)
+ db "SLUDGE@"
+ db 2,11
+ dw 660
+ TX_FAR _GrimerDexEntry
+ db "@"
+
+GengarDexEntry: ; 406cd (10:46cd)
+ db "SHADOW@"
+ db 4,11
+ dw 890
+ TX_FAR _GengarDexEntry
+ db "@"
+
+NidoranFDexEntry: ; 406dd (10:46dd)
+ db "POISON PIN@"
+ db 1,4
+ dw 150
+ TX_FAR _NidoranFDexEntry
+ db "@"
+
+NidoqueenDexEntry: ; 406f1 (10:46f1)
+ db "DRILL@"
+ db 4,3
+ dw 1320
+ TX_FAR _NidoqueenDexEntry
+ db "@"
+
+CuboneDexEntry: ; 40700 (10:4700)
+ db "LONELY@"
+ db 1,4
+ dw 140
+ TX_FAR _CuboneDexEntry
+ db "@"
+
+RhyhornDexEntry: ; 40710 (10:4710)
+ db "SPIKES@"
+ db 3,3
+ dw 2540
+ TX_FAR _RhyhornDexEntry
+ db "@"
+
+LaprasDexEntry: ; 40720 (10:4720)
+ db "TRANSPORT@"
+ db 8,2
+ dw 4850
+ TX_FAR _LaprasDexEntry
+ db "@"
+
+ArcanineDexEntry: ; 40733 (10:4733)
+ db "LEGENDARY@"
+ db 6,3
+ dw 3420
+ TX_FAR _ArcanineDexEntry
+ db "@"
+
+MewDexEntry: ; 40746 (10:4746)
+ db "NEW SPECIE@"
+ db 1,4
+ dw 90
+ TX_FAR _MewDexEntry
+ db "@"
+
+GyaradosDexEntry: ; 4075a (10:475a)
+ db "ATROCIOUS@"
+ db 21,4
+ dw 5180
+ TX_FAR _GyaradosDexEntry
+ db "@"
+
+ShellderDexEntry: ; 4076d (10:476d)
+ db "BIVALVE@"
+ db 1,0
+ dw 90
+ TX_FAR _ShellderDexEntry
+ db "@"
+
+TentacoolDexEntry: ; 4077e (10:477e)
+ db "JELLYFISH@"
+ db 2,11
+ dw 1000
+ TX_FAR _TentacoolDexEntry
+ db "@"
+
+GastlyDexEntry: ; 40791 (10:4791)
+ db "GAS@"
+ db 4,3
+ dw 2
+ TX_FAR _GastlyDexEntry
+ db "@"
+
+ScytherDexEntry: ; 4079e (10:479e)
+ db "MANTIS@"
+ db 4,11
+ dw 1230
+ TX_FAR _ScytherDexEntry
+ db "@"
+
+StaryuDexEntry: ; 407ae (10:47ae)
+ db "STARSHAPE@"
+ db 2,7
+ dw 760
+ TX_FAR _StaryuDexEntry
+ db "@"
+
+BlastoiseDexEntry: ; 407c1 (10:47c1)
+ db "SHELLFISH@"
+ db 5,3
+ dw 1890
+ TX_FAR _BlastoiseDexEntry
+ db "@"
+
+PinsirDexEntry: ; 407d4 (10:47d4)
+ db "STAGBEETLE@"
+ db 4,11
+ dw 1210
+ TX_FAR _PinsirDexEntry
+ db "@"
+
+TangelaDexEntry: ; 407e8 (10:47e8)
+ db "VINE@"
+ db 3,3
+ dw 770
+ TX_FAR _TangelaDexEntry
+ db "@"
+
+GrowlitheDexEntry: ; 407f6 (10:47f6)
+ db "PUPPY@"
+ db 2,4
+ dw 420
+ TX_FAR _GrowlitheDexEntry
+ db "@"
+
+OnixDexEntry: ; 40805 (10:4805)
+ db "ROCK SNAKE@"
+ db 28,10
+ dw 4630
+ TX_FAR _OnixDexEntry
+ db "@"
+
+FearowDexEntry: ; 40819 (10:4819)
+ db "BEAK@"
+ db 3,11
+ dw 840
+ TX_FAR _FearowDexEntry
+ db "@"
+
+PidgeyDexEntry: ; 40827 (10:4827)
+ db "TINY BIRD@"
+ db 1,0
+ dw 40
+ TX_FAR _PidgeyDexEntry
+ db "@"
+
+SlowpokeDexEntry: ; 4083a (10:483a)
+ db "DOPEY@"
+ db 3,11
+ dw 790
+ TX_FAR _SlowpokeDexEntry
+ db "@"
+
+KadabraDexEntry: ; 40849 (10:4849)
+ db "PSI@"
+ db 4,3
+ dw 1250
+ TX_FAR _KadabraDexEntry
+ db "@"
+
+GravelerDexEntry: ; 40856 (10:4856)
+ db "ROCK@"
+ db 3,3
+ dw 2320
+ TX_FAR _GravelerDexEntry
+ db "@"
+
+ChanseyDexEntry: ; 40864 (10:4864)
+ db "EGG@"
+ db 3,7
+ dw 760
+ TX_FAR _ChanseyDexEntry
+ db "@"
+
+MachokeDexEntry: ; 40871 (10:4871)
+ db "SUPERPOWER@"
+ db 4,11
+ dw 1550
+ TX_FAR _MachokeDexEntry
+ db "@"
+
+MrMimeDexEntry: ; 40885 (10:4885)
+ db "BARRIER@"
+ db 4,3
+ dw 1200
+ TX_FAR _MrMimeDexEntry
+ db "@"
+
+HitmonleeDexEntry: ; 40896 (10:4896)
+ db "KICKING@"
+ db 4,11
+ dw 1100
+ TX_FAR _HitmonleeDexEntry
+ db "@"
+
+HitmonchanDexEntry: ; 408a7 (10:48a7)
+ db "PUNCHING@"
+ db 4,7
+ dw 1110
+ TX_FAR _HitmonchanDexEntry
+ db "@"
+
+ArbokDexEntry: ; 408b9 (10:48b9)
+ db "COBRA@"
+ db 11,6
+ dw 1430
+ TX_FAR _ArbokDexEntry
+ db "@"
+
+ParasectDexEntry: ; 408c8 (10:48c8)
+ db "MUSHROOM@"
+ db 3,3
+ dw 650
+ TX_FAR _ParasectDexEntry
+ db "@"
+
+PsyduckDexEntry: ; 408da (10:48da)
+ db "DUCK@"
+ db 2,7
+ dw 430
+ TX_FAR _PsyduckDexEntry
+ db "@"
+
+DrowzeeDexEntry: ; 408e8 (10:48e8)
+ db "HYPNOSIS@"
+ db 3,3
+ dw 710
+ TX_FAR _DrowzeeDexEntry
+ db "@"
+
+GolemDexEntry: ; 408fa (10:48fa)
+ db "MEGATON@"
+ db 4,7
+ dw 6620
+ TX_FAR _GolemDexEntry
+ db "@"
+
+MagmarDexEntry: ; 4090b (10:490b)
+ db "SPITFIRE@"
+ db 4,3
+ dw 980
+ TX_FAR _MagmarDexEntry
+ db "@"
+
+ElectabuzzDexEntry: ; 4091d (10:491d)
+ db "ELECTRIC@"
+ db 3,7
+ dw 660
+ TX_FAR _ElectabuzzDexEntry
+ db "@"
+
+MagnetonDexEntry: ; 4092f (10:492f)
+ db "MAGNET@"
+ db 3,3
+ dw 1320
+ TX_FAR _MagnetonDexEntry
+ db "@"
+
+KoffingDexEntry: ; 4093f (10:493f)
+ db "POISON GAS@"
+ db 2,0
+ dw 20
+ TX_FAR _KoffingDexEntry
+ db "@"
+
+MankeyDexEntry: ; 40953 (10:4953)
+ db "PIG MONKEY@"
+ db 1,8
+ dw 620
+ TX_FAR _MankeyDexEntry
+ db "@"
+
+SeelDexEntry: ; 40967 (10:4967)
+ db "SEA LION@"
+ db 3,7
+ dw 1980
+ TX_FAR _SeelDexEntry
+ db "@"
+
+DiglettDexEntry: ; 40979 (10:4979)
+ db "MOLE@"
+ db 0,8
+ dw 20
+ TX_FAR _DiglettDexEntry
+ db "@"
+
+TaurosDexEntry: ; 40987 (10:4987)
+ db "WILD BULL@"
+ db 4,7
+ dw 1950
+ TX_FAR _TaurosDexEntry
+ db "@"
+
+FarfetchdDexEntry: ; 4099a (10:499a)
+ db "WILD DUCK@"
+ db 2,7
+ dw 330
+ TX_FAR _FarfetchdDexEntry
+ db "@"
+
+VenonatDexEntry: ; 409ad (10:49ad)
+ db "INSECT@"
+ db 3,3
+ dw 660
+ TX_FAR _VenonatDexEntry
+ db "@"
+
+DragoniteDexEntry: ; 409bd (10:49bd)
+ db "DRAGON@"
+ db 7,3
+ dw 4630
+ TX_FAR _DragoniteDexEntry
+ db "@"
+
+DoduoDexEntry: ; 409cd (10:49cd)
+ db "TWIN BIRD@"
+ db 4,7
+ dw 860
+ TX_FAR _DoduoDexEntry
+ db "@"
+
+PoliwagDexEntry: ; 409e0 (10:49e0)
+ db "TADPOLE@"
+ db 2,0
+ dw 270
+ TX_FAR _PoliwagDexEntry
+ db "@"
+
+JynxDexEntry: ; 409f1 (10:49f1)
+ db "HUMANSHAPE@"
+ db 4,7
+ dw 900
+ TX_FAR _JynxDexEntry
+ db "@"
+
+MoltresDexEntry: ; 40a05 (10:4a05)
+ db "FLAME@"
+ db 6,7
+ dw 1320
+ TX_FAR _MoltresDexEntry
+ db "@"
+
+ArticunoDexEntry: ; 40a14 (10:4a14)
+ db "FREEZE@"
+ db 5,7
+ dw 1220
+ TX_FAR _ArticunoDexEntry
+ db "@"
+
+ZapdosDexEntry: ; 40a24 (10:4a24)
+ db "ELECTRIC@"
+ db 5,3
+ dw 1160
+ TX_FAR _ZapdosDexEntry
+ db "@"
+
+DittoDexEntry: ; 40a36 (10:4a36)
+ db "TRANSFORM@"
+ db 1,0
+ dw 90
+ TX_FAR _DittoDexEntry
+ db "@"
+
+MeowthDexEntry: ; 40a49 (10:4a49)
+ db "SCRATCHCAT@"
+ db 1,4
+ dw 90
+ TX_FAR _MeowthDexEntry
+ db "@"
+
+KrabbyDexEntry: ; 40a5d (10:4a5d)
+ db "RIVER CRAB@"
+ db 1,4
+ dw 140
+ TX_FAR _KrabbyDexEntry
+ db "@"
+
+VulpixDexEntry: ; 40a71 (10:4a71)
+ db "FOX@"
+ db 2,0
+ dw 220
+ TX_FAR _VulpixDexEntry
+ db "@"
+
+NinetalesDexEntry: ; 40a7e (10:4a7e)
+ db "FOX@"
+ db 3,7
+ dw 440
+ TX_FAR _NinetalesDexEntry
+ db "@"
+
+PikachuDexEntry: ; 40a8b (10:4a8b)
+ db "MOUSE@"
+ db 1,4
+ dw 130
+ TX_FAR _PikachuDexEntry
+ db "@"
+
+RaichuDexEntry: ; 40a9a (10:4a9a)
+ db "MOUSE@"
+ db 2,7
+ dw 660
+ TX_FAR _RaichuDexEntry
+ db "@"
+
+DratiniDexEntry: ; 40aa9 (10:4aa9)
+ db "DRAGON@"
+ db 5,11
+ dw 70
+ TX_FAR _DratiniDexEntry
+ db "@"
+
+DragonairDexEntry: ; 40ab9 (10:4ab9)
+ db "DRAGON@"
+ db 13,1
+ dw 360
+ TX_FAR _DragonairDexEntry
+ db "@"
+
+KabutoDexEntry: ; 40ac9 (10:4ac9)
+ db "SHELLFISH@"
+ db 1,8
+ dw 250
+ TX_FAR _KabutoDexEntry
+ db "@"
+
+KabutopsDexEntry: ; 40adc (10:4adc)
+ db "SHELLFISH@"
+ db 4,3
+ dw 890
+ TX_FAR _KabutopsDexEntry
+ db "@"
+
+HorseaDexEntry: ; 40aef (10:4aef)
+ db "DRAGON@"
+ db 1,4
+ dw 180
+ TX_FAR _HorseaDexEntry
+ db "@"
+
+SeadraDexEntry: ; 40aff (10:4aff)
+ db "DRAGON@"
+ db 3,11
+ dw 550
+ TX_FAR _SeadraDexEntry
+ db "@"
+
+SandshrewDexEntry: ; 40b0f (10:4b0f)
+ db "MOUSE@"
+ db 2,0
+ dw 260
+ TX_FAR _SandshrewDexEntry
+ db "@"
+
+SandslashDexEntry: ; 40b1e (10:4b1e)
+ db "MOUSE@"
+ db 3,3
+ dw 650
+ TX_FAR _SandslashDexEntry
+ db "@"
+
+OmanyteDexEntry: ; 40b2d (10:4b2d)
+ db "SPIRAL@"
+ db 1,4
+ dw 170
+ TX_FAR _OmanyteDexEntry
+ db "@"
+
+OmastarDexEntry: ; 40b3d (10:4b3d)
+ db "SPIRAL@"
+ db 3,3
+ dw 770
+ TX_FAR _OmastarDexEntry
+ db "@"
+
+JigglypuffDexEntry: ; 40b4d (10:4b4d)
+ db "BALLOON@"
+ db 1,8
+ dw 120
+ TX_FAR _JigglypuffDexEntry
+ db "@"
+
+WigglytuffDexEntry: ; 40b5e (10:4b5e)
+ db "BALLOON@"
+ db 3,3
+ dw 260
+ TX_FAR _WigglytuffDexEntry
+ db "@"
+
+EeveeDexEntry: ; 40b6f (10:4b6f)
+ db "EVOLUTION@"
+ db 1,0
+ dw 140
+ TX_FAR _EeveeDexEntry
+ db "@"
+
+FlareonDexEntry: ; 40b82 (10:4b82)
+ db "FLAME@"
+ db 2,11
+ dw 550
+ TX_FAR _FlareonDexEntry
+ db "@"
+
+JolteonDexEntry: ; 40b91 (10:4b91)
+ db "LIGHTNING@"
+ db 2,7
+ dw 540
+ TX_FAR _JolteonDexEntry
+ db "@"
+
+VaporeonDexEntry: ; 40ba4 (10:4ba4)
+ db "BUBBLE JET@"
+ db 3,3
+ dw 640
+ TX_FAR _VaporeonDexEntry
+ db "@"
+
+MachopDexEntry: ; 40bb8 (10:4bb8)
+ db "SUPERPOWER@"
+ db 2,7
+ dw 430
+ TX_FAR _MachopDexEntry
+ db "@"
+
+ZubatDexEntry: ; 40bcc (10:4bcc)
+ db "BAT@"
+ db 2,7
+ dw 170
+ TX_FAR _ZubatDexEntry
+ db "@"
+
+EkansDexEntry: ; 40bd9 (10:4bd9)
+ db "SNAKE@"
+ db 6,7
+ dw 150
+ TX_FAR _EkansDexEntry
+ db "@"
+
+ParasDexEntry: ; 40be8 (10:4be8)
+ db "MUSHROOM@"
+ db 1,0
+ dw 120
+ TX_FAR _ParasDexEntry
+ db "@"
+
+PoliwhirlDexEntry: ; 40bfa (10:4bfa)
+ db "TADPOLE@"
+ db 3,3
+ dw 440
+ TX_FAR _PoliwhirlDexEntry
+ db "@"
+
+PoliwrathDexEntry: ; 40c0b (10:4c0b)
+ db "TADPOLE@"
+ db 4,3
+ dw 1190
+ TX_FAR _PoliwrathDexEntry
+ db "@"
+
+WeedleDexEntry: ; 40c1c (10:4c1c)
+ db "HAIRY BUG@"
+ db 1,0
+ dw 70
+ TX_FAR _WeedleDexEntry
+ db "@"
+
+KakunaDexEntry: ; 40c2f (10:4c2f)
+ db "COCOON@"
+ db 2,0
+ dw 220
+ TX_FAR _KakunaDexEntry
+ db "@"
+
+BeedrillDexEntry: ; 40c3f (10:4c3f)
+ db "POISON BEE@"
+ db 3,3
+ dw 650
+ TX_FAR _BeedrillDexEntry
+ db "@"
+
+DodrioDexEntry: ; 40c53 (10:4c53)
+ db "TRIPLEBIRD@"
+ db 5,11
+ dw 1880
+ TX_FAR _DodrioDexEntry
+ db "@"
+
+PrimeapeDexEntry: ; 40c67 (10:4c67)
+ db "PIG MONKEY@"
+ db 3,3
+ dw 710
+ TX_FAR _PrimeapeDexEntry
+ db "@"
+
+DugtrioDexEntry: ; 40c7b (10:4c7b)
+ db "MOLE@"
+ db 2,4
+ dw 730
+ TX_FAR _DugtrioDexEntry
+ db "@"
+
+VenomothDexEntry: ; 40c89 (10:4c89)
+ db "POISONMOTH@"
+ db 4,11
+ dw 280
+ TX_FAR _VenomothDexEntry
+ db "@"
+
+DewgongDexEntry: ; 40c9d (10:4c9d)
+ db "SEA LION@"
+ db 5,7
+ dw 2650
+ TX_FAR _DewgongDexEntry
+ db "@"
+
+CaterpieDexEntry: ; 40caf (10:4caf)
+ db "WORM@"
+ db 1,0
+ dw 60
+ TX_FAR _CaterpieDexEntry
+ db "@"
+
+MetapodDexEntry: ; 40cbd (10:4cbd)
+ db "COCOON@"
+ db 2,4
+ dw 220
+ TX_FAR _MetapodDexEntry
+ db "@"
+
+ButterfreeDexEntry: ; 40ccd (10:4ccd)
+ db "BUTTERFLY@"
+ db 3,7
+ dw 710
+ TX_FAR _ButterfreeDexEntry
+ db "@"
+
+MachampDexEntry: ; 40ce0 (10:4ce0)
+ db "SUPERPOWER@"
+ db 5,3
+ dw 2870
+ TX_FAR _MachampDexEntry
+ db "@"
+
+GolduckDexEntry: ; 40cf4 (10:4cf4)
+ db "DUCK@"
+ db 5,7
+ dw 1690
+ TX_FAR _GolduckDexEntry
+ db "@"
+
+HypnoDexEntry: ; 40d02 (10:4d02)
+ db "HYPNOSIS@"
+ db 5,3
+ dw 1670
+ TX_FAR _HypnoDexEntry
+ db "@"
+
+GolbatDexEntry: ; 40d14 (10:4d14)
+ db "BAT@"
+ db 5,3
+ dw 1210
+ TX_FAR _GolbatDexEntry
+ db "@"
+
+MewtwoDexEntry: ; 40d21 (10:4d21)
+ db "GENETIC@"
+ db 6,7
+ dw 2690
+ TX_FAR _MewtwoDexEntry
+ db "@"
+
+SnorlaxDexEntry: ; 40d32 (10:4d32)
+ db "SLEEPING@"
+ db 6,11
+ dw 10140
+ TX_FAR _SnorlaxDexEntry
+ db "@"
+
+MagikarpDexEntry: ; 40d44 (10:4d44)
+ db "FISH@"
+ db 2,11
+ dw 220
+ TX_FAR _MagikarpDexEntry
+ db "@"
+
+MukDexEntry: ; 40d52 (10:4d52)
+ db "SLUDGE@"
+ db 3,11
+ dw 660
+ TX_FAR _MukDexEntry
+ db "@"
+
+KinglerDexEntry: ; 40d62 (10:4d62)
+ db "PINCER@"
+ db 4,3
+ dw 1320
+ TX_FAR _KinglerDexEntry
+ db "@"
+
+CloysterDexEntry: ; 40d72 (10:4d72)
+ db "BIVALVE@"
+ db 4,11
+ dw 2920
+ TX_FAR _CloysterDexEntry
+ db "@"
+
+ElectrodeDexEntry: ; 40d83 (10:4d83)
+ db "BALL@"
+ db 3,11
+ dw 1470
+ TX_FAR _ElectrodeDexEntry
+ db "@"
+
+ClefableDexEntry: ; 40d91 (10:4d91)
+ db "FAIRY@"
+ db 4,3
+ dw 880
+ TX_FAR _ClefableDexEntry
+ db "@"
+
+WeezingDexEntry: ; 40da0 (10:4da0)
+ db "POISON GAS@"
+ db 3,11
+ dw 210
+ TX_FAR _WeezingDexEntry
+ db "@"
+
+PersianDexEntry: ; 40db4 (10:4db4)
+ db "CLASSY CAT@"
+ db 3,3
+ dw 710
+ TX_FAR _PersianDexEntry
+ db "@"
+
+MarowakDexEntry: ; 40dc8 (10:4dc8)
+ db "BONEKEEPER@"
+ db 3,3
+ dw 990
+ TX_FAR _MarowakDexEntry
+ db "@"
+
+HaunterDexEntry: ; 40ddc (10:4ddc)
+ db "GAS@"
+ db 5,3
+ dw 2
+ TX_FAR _HaunterDexEntry
+ db "@"
+
+AbraDexEntry: ; 40de9 (10:4de9)
+ db "PSI@"
+ db 2,11
+ dw 430
+ TX_FAR _AbraDexEntry
+ db "@"
+
+AlakazamDexEntry: ; 40df6 (10:4df6)
+ db "PSI@"
+ db 4,11
+ dw 1060
+ TX_FAR _AlakazamDexEntry
+ db "@"
+
+PidgeottoDexEntry: ; 40e03 (10:4e03)
+ db "BIRD@"
+ db 3,7
+ dw 660
+ TX_FAR _PidgeottoDexEntry
+ db "@"
+
+PidgeotDexEntry: ; 40e11 (10:4e11)
+ db "BIRD@"
+ db 4,11
+ dw 870
+ TX_FAR _PidgeotDexEntry
+ db "@"
+
+StarmieDexEntry: ; 40e1f (10:4e1f)
+ db "MYSTERIOUS@"
+ db 3,7
+ dw 1760
+ TX_FAR _StarmieDexEntry
+ db "@"
+
+BulbasaurDexEntry: ; 40e33 (10:4e33)
+ db "SEED@"
+ db 2,4
+ dw 150
+ TX_FAR _BulbasaurDexEntry
+ db "@"
+
+VenusaurDexEntry: ; 40e41 (10:4e41)
+ db "SEED@"
+ db 6,7
+ dw 2210
+ TX_FAR _VenusaurDexEntry
+ db "@"
+
+TentacruelDexEntry: ; 40e4f (10:4e4f)
+ db "JELLYFISH@"
+ db 5,3
+ dw 1210
+ TX_FAR _TentacruelDexEntry
+ db "@"
+
+GoldeenDexEntry: ; 40e62 (10:4e62)
+ db "GOLDFISH@"
+ db 2,0
+ dw 330
+ TX_FAR _GoldeenDexEntry
+ db "@"
+
+SeakingDexEntry: ; 40e74 (10:4e74)
+ db "GOLDFISH@"
+ db 4,3
+ dw 860
+ TX_FAR _SeakingDexEntry
+ db "@"
+
+PonytaDexEntry: ; 40e86 (10:4e86)
+ db "FIRE HORSE@"
+ db 3,3
+ dw 660
+ TX_FAR _PonytaDexEntry
+ db "@"
+
+RapidashDexEntry: ; 40e9a (10:4e9a)
+ db "FIRE HORSE@"
+ db 5,7
+ dw 2090
+ TX_FAR _RapidashDexEntry
+ db "@"
+
+RattataDexEntry: ; 40eae (10:4eae)
+ db "RAT@"
+ db 1,0
+ dw 80
+ TX_FAR _RattataDexEntry
+ db "@"
+
+RaticateDexEntry: ; 40ebb (10:4ebb)
+ db "RAT@"
+ db 2,4
+ dw 410
+ TX_FAR _RaticateDexEntry
+ db "@"
+
+NidorinoDexEntry: ; 40ec8 (10:4ec8)
+ db "POISON PIN@"
+ db 2,11
+ dw 430
+ TX_FAR _NidorinoDexEntry
+ db "@"
+
+NidorinaDexEntry: ; 40edc (10:4edc)
+ db "POISON PIN@"
+ db 2,7
+ dw 440
+ TX_FAR _NidorinaDexEntry
+ db "@"
+
+GeodudeDexEntry: ; 40ef0 (10:4ef0)
+ db "ROCK@"
+ db 1,4
+ dw 440
+ TX_FAR _GeodudeDexEntry
+ db "@"
+
+PorygonDexEntry: ; 40efe (10:4efe)
+ db "VIRTUAL@"
+ db 2,7
+ dw 800
+ TX_FAR _PorygonDexEntry
+ db "@"
+
+AerodactylDexEntry: ; 40f0f (10:4f0f)
+ db "FOSSIL@"
+ db 5,11
+ dw 1300
+ TX_FAR _AerodactylDexEntry
+ db "@"
+
+MagnemiteDexEntry: ; 40f1f (10:4f1f)
+ db "MAGNET@"
+ db 1,0
+ dw 130
+ TX_FAR _MagnemiteDexEntry
+ db "@"
+
+CharmanderDexEntry: ; 40f2f (10:4f2f)
+ db "LIZARD@"
+ db 2,0
+ dw 190
+ TX_FAR _CharmanderDexEntry
+ db "@"
+
+SquirtleDexEntry: ; 40f3f (10:4f3f)
+ db "TINYTURTLE@"
+ db 1,8
+ dw 200
+ TX_FAR _SquirtleDexEntry
+ db "@"
+
+CharmeleonDexEntry: ; 40f53 (10:4f53)
+ db "FLAME@"
+ db 3,7
+ dw 420
+ TX_FAR _CharmeleonDexEntry
+ db "@"
+
+WartortleDexEntry: ; 40f62 (10:4f62)
+ db "TURTLE@"
+ db 3,3
+ dw 500
+ TX_FAR _WartortleDexEntry
+ db "@"
+
+CharizardDexEntry: ; 40f72 (10:4f72)
+ db "FLAME@"
+ db 5,7
+ dw 2000
+ TX_FAR _CharizardDexEntry
+ db "@"
+
+OddishDexEntry: ; 40f81 (10:4f81)
+ db "WEED@"
+ db 1,8
+ dw 120
+ TX_FAR _OddishDexEntry
+ db "@"
+
+GloomDexEntry: ; 40f8f (10:4f8f)
+ db "WEED@"
+ db 2,7
+ dw 190
+ TX_FAR _GloomDexEntry
+ db "@"
+
+VileplumeDexEntry: ; 40f9d (10:4f9d)
+ db "FLOWER@"
+ db 3,11
+ dw 410
+ TX_FAR _VileplumeDexEntry
+ db "@"
+
+BellsproutDexEntry: ; 40fad (10:4fad)
+ db "FLOWER@"
+ db 2,4
+ dw 90
+ TX_FAR _BellsproutDexEntry
+ db "@"
+
+WeepinbellDexEntry: ; 40fbd (10:4fbd)
+ db "FLYCATCHER@"
+ db 3,3
+ dw 140
+ TX_FAR _WeepinbellDexEntry
+ db "@"
+
+VictreebelDexEntry: ; 40fd1 (10:4fd1)
+ db "FLYCATCHER@"
+ db 5,7
+ dw 340
+ TX_FAR _VictreebelDexEntry
+ db "@"
+
+MissingNoDexEntry: ; 40fe5 (10:4fe5)
+ db "???@"
+ db 10 ; 1.0 m
+ db 100 ; 10.0 kg
+ db 0,"コメント さくせいちゅう@" ; コメント作成中 (Comment to be written)
diff --git a/data/pokedex_order.asm b/data/pokedex_order.asm
new file mode 100755
index 00000000..46a1717a
--- /dev/null
+++ b/data/pokedex_order.asm
@@ -0,0 +1,191 @@
+PokedexOrder: ; 41024 (10:5024)
+ db DEX_RHYDON
+ db DEX_KANGASKHAN
+ db DEX_NIDORAN_M
+ db DEX_CLEFAIRY
+ db DEX_SPEAROW
+ db DEX_VOLTORB
+ db DEX_NIDOKING
+ db DEX_SLOWBRO
+ db DEX_IVYSAUR
+ db DEX_EXEGGUTOR
+ db DEX_LICKITUNG
+ db DEX_EXEGGCUTE
+ db DEX_GRIMER
+ db DEX_GENGAR
+ db DEX_NIDORAN_F
+ db DEX_NIDOQUEEN
+ db DEX_CUBONE
+ db DEX_RHYHORN
+ db DEX_LAPRAS
+ db DEX_ARCANINE
+ db DEX_MEW
+ db DEX_GYARADOS
+ db DEX_SHELLDER
+ db DEX_TENTACOOL
+ db DEX_GASTLY
+ db DEX_SCYTHER
+ db DEX_STARYU
+ db DEX_BLASTOISE
+ db DEX_PINSIR
+ db DEX_TANGELA
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_GROWLITHE
+ db DEX_ONIX
+ db DEX_FEAROW
+ db DEX_PIDGEY
+ db DEX_SLOWPOKE
+ db DEX_KADABRA
+ db DEX_GRAVELER
+ db DEX_CHANSEY
+ db DEX_MACHOKE
+ db DEX_MR_MIME
+ db DEX_HITMONLEE
+ db DEX_HITMONCHAN
+ db DEX_ARBOK
+ db DEX_PARASECT
+ db DEX_PSYDUCK
+ db DEX_DROWZEE
+ db DEX_GOLEM
+ db 0 ; MISSINGNO.
+ db DEX_MAGMAR
+ db 0 ; MISSINGNO.
+ db DEX_ELECTABUZZ
+ db DEX_MAGNETON
+ db DEX_KOFFING
+ db 0 ; MISSINGNO.
+ db DEX_MANKEY
+ db DEX_SEEL
+ db DEX_DIGLETT
+ db DEX_TAUROS
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_FARFETCH_D
+ db DEX_VENONAT
+ db DEX_DRAGONITE
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_DODUO
+ db DEX_POLIWAG
+ db DEX_JYNX
+ db DEX_MOLTRES
+ db DEX_ARTICUNO
+ db DEX_ZAPDOS
+ db DEX_DITTO
+ db DEX_MEOWTH
+ db DEX_KRABBY
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_VULPIX
+ db DEX_NINETALES
+ db DEX_PIKACHU
+ db DEX_RAICHU
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_DRATINI
+ db DEX_DRAGONAIR
+ db DEX_KABUTO
+ db DEX_KABUTOPS
+ db DEX_HORSEA
+ db DEX_SEADRA
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_SANDSHREW
+ db DEX_SANDSLASH
+ db DEX_OMANYTE
+ db DEX_OMASTAR
+ db DEX_JIGGLYPUFF
+ db DEX_WIGGLYTUFF
+ db DEX_EEVEE
+ db DEX_FLAREON
+ db DEX_JOLTEON
+ db DEX_VAPOREON
+ db DEX_MACHOP
+ db DEX_ZUBAT
+ db DEX_EKANS
+ db DEX_PARAS
+ db DEX_POLIWHIRL
+ db DEX_POLIWRATH
+ db DEX_WEEDLE
+ db DEX_KAKUNA
+ db DEX_BEEDRILL
+ db 0 ; MISSINGNO.
+ db DEX_DODRIO
+ db DEX_PRIMEAPE
+ db DEX_DUGTRIO
+ db DEX_VENOMOTH
+ db DEX_DEWGONG
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_CATERPIE
+ db DEX_METAPOD
+ db DEX_BUTTERFREE
+ db DEX_MACHAMP
+ db 0 ; MISSINGNO.
+ db DEX_GOLDUCK
+ db DEX_HYPNO
+ db DEX_GOLBAT
+ db DEX_MEWTWO
+ db DEX_SNORLAX
+ db DEX_MAGIKARP
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_MUK
+ db 0 ; MISSINGNO.
+ db DEX_KINGLER
+ db DEX_CLOYSTER
+ db 0 ; MISSINGNO.
+ db DEX_ELECTRODE
+ db DEX_CLEFABLE
+ db DEX_WEEZING
+ db DEX_PERSIAN
+ db DEX_MAROWAK
+ db 0 ; MISSINGNO.
+ db DEX_HAUNTER
+ db DEX_ABRA
+ db DEX_ALAKAZAM
+ db DEX_PIDGEOTTO
+ db DEX_PIDGEOT
+ db DEX_STARMIE
+ db DEX_BULBASAUR
+ db DEX_VENUSAUR
+ db DEX_TENTACRUEL
+ db 0 ; MISSINGNO.
+ db DEX_GOLDEEN
+ db DEX_SEAKING
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_PONYTA
+ db DEX_RAPIDASH
+ db DEX_RATTATA
+ db DEX_RATICATE
+ db DEX_NIDORINO
+ db DEX_NIDORINA
+ db DEX_GEODUDE
+ db DEX_PORYGON
+ db DEX_AERODACTYL
+ db 0 ; MISSINGNO.
+ db DEX_MAGNEMITE
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_CHARMANDER
+ db DEX_SQUIRTLE
+ db DEX_CHARMELEON
+ db DEX_WARTORTLE
+ db DEX_CHARIZARD
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db 0 ; MISSINGNO.
+ db DEX_ODDISH
+ db DEX_GLOOM
+ db DEX_VILEPLUME
+ db DEX_BELLSPROUT
+ db DEX_WEEPINBELL
+ db DEX_VICTREEBEL
diff --git a/data/prize_mon_levels.asm b/data/prize_mon_levels.asm
new file mode 100755
index 00000000..6b10eb2f
--- /dev/null
+++ b/data/prize_mon_levels.asm
@@ -0,0 +1,19 @@
+PrizeMonLevelDictionary: ; 5298a (14:698a)
+IF _RED
+ db ABRA,9
+ db CLEFAIRY,8
+ db NIDORINA,17
+
+ db DRATINI,18
+ db SCYTHER,25
+ db PORYGON,26
+ENDC
+IF _BLUE
+ db ABRA,6
+ db CLEFAIRY,12
+ db NIDORINO,17
+
+ db PINSIR,20
+ db DRATINI,24
+ db PORYGON,18
+ENDC
diff --git a/data/prizes.asm b/data/prizes.asm
new file mode 100755
index 00000000..1fab54fc
--- /dev/null
+++ b/data/prizes.asm
@@ -0,0 +1,69 @@
+PrizeDifferentMenuPtrs: ; 52843 (14:6843)
+ dw PrizeMenuMon1Entries
+ dw PrizeMenuMon1Cost
+
+ dw PrizeMenuMon2Entries
+ dw PrizeMenuMon2Cost
+
+ dw PrizeMenuTMsEntries
+ dw PrizeMenuTMsCost
+
+NoThanksText: ; 5284f (14:684f)
+ db "NO THANKS@"
+
+PrizeMenuMon1Entries: ; 52859 (14:6859)
+ db ABRA
+ db CLEFAIRY
+IF _RED
+ db NIDORINA
+ENDC
+IF _BLUE
+ db NIDORINO
+ENDC
+ db "@"
+PrizeMenuMon1Cost: ; 5285d (14:685d)
+IF _RED
+ db $01,$80
+ db $05,$00
+ENDC
+IF _BLUE
+ db $01,$20
+ db $07,$50
+ENDC
+ db $12,$00
+ db "@"
+
+PrizeMenuMon2Entries: ; 52864 (14:6864)
+IF _RED
+ db DRATINI
+ db SCYTHER
+ENDC
+IF _BLUE
+ db PINSIR
+ db DRATINI
+ENDC
+ db PORYGON
+ db "@"
+PrizeMenuMon2Cost: ; 52868 (14:6868)
+IF _RED
+ db $28,$00
+ db $55,$00
+ db $99,$99
+ENDC
+IF _BLUE
+ db $25,$00
+ db $46,$00
+ db $65,$00
+ENDC
+ db "@"
+
+PrizeMenuTMsEntries: ; 5286f (14:686f)
+ db TM_23
+ db TM_15
+ db TM_50
+ db "@"
+PrizeMenuTMsCost: ; 52873 (14:6873)
+ db $33,$00 ; 3300 Coins
+ db $55,$00 ; 5500 Coins
+ db $77,$00 ; 7700 Coins
+ db "@"
diff --git a/data/sgb_border.asm b/data/sgb_border.asm
new file mode 100755
index 00000000..716a991e
--- /dev/null
+++ b/data/sgb_border.asm
@@ -0,0 +1,62 @@
+BorderPalettes: ; 72788 (1c:6788)
+IF _RED
+ INCBIN "gfx/red/sgbborder.map"
+ENDC
+IF _BLUE
+ INCBIN "gfx/blue/sgbborder.map"
+ENDC
+
+ ds $100
+
+IF _RED
+ RGB 30,29,29 ; PAL_SGB1
+ RGB 25,22,25
+ RGB 25,17,21
+ RGB 24,14,12
+ENDC
+IF _BLUE
+ RGB 0,0,0 ; PAL_SGB1 (the first color is not defined, but if used, turns up as 30,29,29... o_O)
+ RGB 10,17,26
+ RGB 5,9,20
+ RGB 16,20,27
+ENDC
+
+ ds $18
+
+IF _RED
+ RGB 30,29,29 ; PAL_SGB2
+ RGB 22,31,16
+ RGB 27,20,6
+ RGB 15,15,15
+ENDC
+IF _BLUE
+ RGB 30,29,29 ; PAL_SGB2
+ RGB 27,11,6
+ RGB 5,9,20
+ RGB 28,25,15
+ENDC
+
+ ds $18
+
+IF _RED
+ RGB 30,29,29 ; PAL_SGB3
+ RGB 31,31,17
+ RGB 18,21,29
+ RGB 15,15,15
+ENDC
+IF _BLUE
+ RGB 30,29,29 ; PAL_SGB3
+ RGB 12,15,11
+ RGB 5,9,20
+ RGB 14,22,17
+ENDC
+
+ ds $18
+
+SGBBorderGraphics: ; 72fe8 (1c:6fe8)
+IF _RED
+ INCBIN "gfx/red/sgbborder.w128.2bpp"
+ENDC
+IF _BLUE
+ INCBIN "gfx/blue/sgbborder.w128.2bpp"
+ENDC
diff --git a/data/sgb_packets.asm b/data/sgb_packets.asm
new file mode 100755
index 00000000..92bea812
--- /dev/null
+++ b/data/sgb_packets.asm
@@ -0,0 +1,142 @@
+BlkPacket_WholeScreen: ; 7219e (1c:619e)
+ db $21,$01,$03,$00,$00,$00,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00
+ db $03,$00,$00,$13,$11,$00,$00
+
+BlkPacket_Battle: ; 721b5 (1c:61b5)
+ db $22,$05,$07,$0a,$00,$0c,$13,$11,$03,$05,$01,$00,$0a,$03,$03,$00
+ db $0a,$07,$13,$0a,$03,$0a,$00,$04,$08,$0b,$03,$0f,$0b,$00,$13,$06
+ db $03,$00,$00,$13,$0b,$00,$03,$00,$0c,$13,$11,$02,$03,$01,$00,$0a
+ db $03,$01,$03,$0a,$08,$13,$0a,$00,$03,$00,$04,$08,$0b,$02,$03,$0b
+ db $00,$13,$07,$03,$00
+
+BlkPacket_StatusScreen: ; 721fa (1c:61fa)
+ db $21,$01,$07,$05,$01,$00,$07,$06,$00,$00,$00,$00,$00,$00,$00,$00
+ db $02,$00,$00,$11,$00,$03,$01,$00,$07,$06,$01,$03,$01,$07,$13,$11
+ db $00,$03,$08,$00,$13,$06,$00,$00
+
+BlkPacket_Pokedex: ; 72222 (1c:6222)
+ db $21,$01,$07,$05,$01,$01,$08,$08,$00,$00,$00,$00,$00,$00,$00,$00
+ db $02,$00,$00,$11,$00,$01,$00,$01,$13,$00,$03,$01,$01,$08,$08,$01
+ db $03,$01,$09,$08,$11,$00,$03,$09,$01,$13,$11,$00,$00
+
+BlkPacket_Slots: ; 7224f (1c:624f)
+ db $22,$05,$03,$05,$00,$00,$13,$0b,$03,$0a,$00,$04,$13,$09,$02,$0f
+ db $00,$06,$13,$07,$03,$00,$04,$04,$0f,$09,$03,$00,$00,$0c,$13,$11
+ db $03,$00,$00,$13,$0b,$01,$03,$00,$04,$13,$09,$02,$03,$00,$06,$13
+ db $07,$03,$03,$04,$04,$0f,$09,$00,$03,$00,$0c,$13,$11,$00,$00
+
+BlkPacket_Titlescreen: ; 7228e (1c:628e)
+ db $22,$03,$03,$00,$00,$00,$13,$07,$02,$05,$00,$08,$13,$09,$03,$0a
+ db $00,$0a,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ db $03,$00,$00,$13,$07,$00,$03,$00,$08,$13,$09,$01,$03,$00,$0a,$13
+ db $11,$02,$00
+
+BlkPacket_NidorinoIntro: ; 722c1 (1c:62c1)
+ db $22,$03,$03,$05,$00,$00,$13,$03,$03,$00,$00,$04,$13,$0d,$03,$05
+ db $00,$0e,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ db $03,$00,$00,$13,$03,$01,$03,$00,$04,$13,$0d,$00,$03,$00,$0e,$13
+ db $11,$01,$00
+
+BlkPacket_PartyMenu: ; 722f4 (1c:62f4)
+ db $23,$07,$06,$10,$01,$00,$02,$0c,$02,$00,$05,$01,$0b,$01,$02,$00
+ db $05,$03,$0b,$03,$02,$00,$05,$05,$0b,$05,$02,$00,$05,$07,$0b,$07
+ db $02,$00,$05,$09,$0b,$09,$02,$00,$05,$0b,$0b,$0b,$00,$00,$00,$00
+ db $02,$00,$00,$11,$01,$03,$01,$00,$02,$0c,$00,$03,$01,$0d,$02,$11
+ db $01,$03,$03,$00,$13,$11,$01,$03,$0c,$00,$12,$01,$00,$03,$0c,$02
+ db $12,$03,$00,$03,$0c,$04,$12,$05,$00,$03,$0c,$06,$12,$07,$00,$03
+ db $0c,$08,$12,$09,$00,$03,$0c,$0a,$12,$0b,$00,$00
+
+BlkPacket_TrainerCard: ; 72360 (1c:6360)
+ db $24,$0a,$02,$00,$03,$0c,$04,$0d,$02,$05,$07,$0c,$08,$0d,$02,$0f
+ db $0b,$0c,$0c,$0d,$02,$0a,$10,$0b,$11,$0c,$02,$05,$0e,$0d,$0f,$0e
+ db $02,$0f,$10,$0d,$11,$0e,$02,$0a,$03,$0f,$04,$10,$02,$0f,$07,$0f
+ db $08,$10,$02,$0a,$0b,$0f,$0c,$10,$02,$05,$0f,$0f,$10,$10,$00,$00
+ db $03,$03,$0c,$04,$0d,$00,$03,$07,$0c,$08,$0d,$01,$03,$0b,$0c,$0c
+ db $0d,$03,$03,$10,$0b,$11,$0c,$02,$03,$0e,$0d,$0f,$0e,$01,$03,$10
+ db $0d,$11,$0e,$03,$03,$03,$0f,$04,$10,$02,$03,$07,$0f,$08,$10,$03
+ db $03,$0b,$0f,$0c,$10,$02,$03,$0f,$0f,$10,$10,$01,$00
+
+BlkPacket_GameFreakIntro: ; 723dd (1c:63dd)
+ db $22,$03,$07,$05,$05,$0b,$07,$0d,$02,$0a,$08,$0b,$09,$0d,$03,$0f
+ db $0c,$0b,$0e,$0d,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+ db $03,$00,$00,$13,$0a,$00,$03,$00,$0b,$04,$0d,$00,$03,$05,$0b,$07
+ db $0d,$01,$03,$08,$0b,$13,$0d,$00,$03,$00,$0e,$13,$11,$00,$03,$08
+ db $0b,$09,$0d,$02,$03,$0c,$0b,$0e,$0d,$03,$00
+
+PalPacket_Empty: ; 72428 (1c:6428)
+ db $51,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_PartyMenu: ; 72438 (1c:6438)
+ db $51,PAL_MEWMON,$00,PAL_GREENBAR,$00,PAL_YELLOWBAR,$00,PAL_REDBAR,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_Black: ; 72448 (1c:6448)
+ db $51,PAL_BLACK,$00,PAL_BLACK,$00,PAL_BLACK,$00,PAL_BLACK,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_TownMap: ; 72458 (1c:6458)
+ db $51,PAL_TOWNMAP,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_Pokedex: ; 72468 (1c:6468)
+ db $51,PAL_BROWNMON,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_Slots: ; 72478 (1c:6478)
+ db $51,PAL_SLOTS1,$00,PAL_SLOTS2,$00,PAL_SLOTS3,$00,PAL_SLOTS4,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_Titlescreen: ; 72488 (1c:6488)
+ db $51,PAL_LOGO2,$00,PAL_LOGO1,$00,PAL_MEWMON,$00,PAL_PURPLEMON,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_TrainerCard: ; 72498 (1c:6498)
+ db $51,PAL_MEWMON,$00,PAL_BADGE,$00,PAL_REDMON,$00,PAL_YELLOWMON,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_Generic: ; 724a8 (1c:64a8)
+ db $51,PAL_MEWMON,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_NidorinoIntro: ; 724b8 (1c:64b8)
+ db $51,PAL_PURPLEMON,$00,PAL_BLACK,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_GameFreakIntro: ; 724c8 (1c:64c8)
+ db $51,PAL_GAMEFREAK,$00,PAL_REDMON,$00,PAL_VIRIDIAN,$00,PAL_BLUEMON,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_724d8: ; 724d8 (1c:64d8)
+ db $59,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_724e8: ; 724e8 (1c:64e8)
+ db $89,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_724f8: ; 724f8 (1c:64f8)
+ db $89,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_72508: ; 72508 (1c:6508)
+ db $99,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_72518: ; 72518 (1c:6518)
+ db $A1,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_72528: ; 72528 (1c:6528)
+ db $B9,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_72538: ; 72538 (1c:6538)
+ db $B9,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_72548: ; 72548 (1c:6548)
+ db $79,$5D,$08,$00,$0B,$8C,$D0,$F4,$60,$00,$00,$00,$00,$00,$00,$00
+
+PalPacket_72558: ; 72558 (1c:6558)
+ db $79,$52,$08,$00,$0B,$A9,$E7,$9F,$01,$C0,$7E,$E8,$E8,$E8,$E8,$E0
+
+PalPacket_72568: ; 72568 (1c:6568)
+ db $79,$47,$08,$00,$0B,$C4,$D0,$16,$A5,$CB,$C9,$05,$D0,$10,$A2,$28
+
+PalPacket_72578: ; 72578 (1c:6578)
+ db $79,$3C,$08,$00,$0B,$F0,$12,$A5,$C9,$C9,$C8,$D0,$1C,$A5,$CA,$C9
+
+PalPacket_72588: ; 72588 (1c:6588)
+ db $79,$31,$08,$00,$0B,$0C,$A5,$CA,$C9,$7E,$D0,$06,$A5,$CB,$C9,$7E
+
+PalPacket_72598: ; 72598 (1c:6598)
+ db $79,$26,$08,$00,$0B,$39,$CD,$48,$0C,$D0,$34,$A5,$C9,$C9,$80,$D0
+
+PalPacket_725a8: ; 725a8 (1c:65a8)
+ db $79,$1B,$08,$00,$0B,$EA,$EA,$EA,$EA,$EA,$A9,$01,$CD,$4F,$0C,$D0
+
+PalPacket_725b8: ; 725b8 (1c:65b8)
+ db $79,$10,$08,$00,$0B,$4C,$20,$08,$EA,$EA,$EA,$EA,$EA,$60,$EA,$EA
diff --git a/data/slot_machine_wheels.asm b/data/slot_machine_wheels.asm
new file mode 100755
index 00000000..8f300152
--- /dev/null
+++ b/data/slot_machine_wheels.asm
@@ -0,0 +1,59 @@
+SlotMachineWheel1: ; 379e5 (d:79e5)
+ dw SLOTS7
+ dw SLOTSMOUSE
+ dw SLOTSFISH
+ dw SLOTSBAR
+ dw SLOTSCHERRY
+ dw SLOTS7
+ dw SLOTSFISH
+ dw SLOTSBIRD
+ dw SLOTSBAR
+ dw SLOTSCHERRY
+ dw SLOTS7
+ dw SLOTSMOUSE
+ dw SLOTSBIRD
+ dw SLOTSBAR
+ dw SLOTSCHERRY
+ dw SLOTS7
+ dw SLOTSMOUSE
+ dw SLOTSFISH
+
+SlotMachineWheel2: ; 37a09 (d:7a09)
+ dw SLOTS7
+ dw SLOTSFISH
+ dw SLOTSCHERRY
+ dw SLOTSBIRD
+ dw SLOTSMOUSE
+ dw SLOTSBAR
+ dw SLOTSCHERRY
+ dw SLOTSFISH
+ dw SLOTSBIRD
+ dw SLOTSCHERRY
+ dw SLOTSBAR
+ dw SLOTSFISH
+ dw SLOTSBIRD
+ dw SLOTSCHERRY
+ dw SLOTSMOUSE
+ dw SLOTS7
+ dw SLOTSFISH
+ dw SLOTSCHERRY
+
+SlotMachineWheel3: ; 37a2d (d:7a2d)
+ dw SLOTS7
+ dw SLOTSBIRD
+ dw SLOTSFISH
+ dw SLOTSCHERRY
+ dw SLOTSMOUSE
+ dw SLOTSBIRD
+ dw SLOTSFISH
+ dw SLOTSCHERRY
+ dw SLOTSMOUSE
+ dw SLOTSBIRD
+ dw SLOTSFISH
+ dw SLOTSCHERRY
+ dw SLOTSMOUSE
+ dw SLOTSBIRD
+ dw SLOTSBAR
+ dw SLOTS7
+ dw SLOTSBIRD
+ dw SLOTSFISH
diff --git a/data/special_warps.asm b/data/special_warps.asm
new file mode 100755
index 00000000..418b57f2
--- /dev/null
+++ b/data/special_warps.asm
@@ -0,0 +1,116 @@
+DungeonWarpList: ; 63bf (1:63bf)
+ db SEAFOAM_ISLANDS_2,$01
+ db SEAFOAM_ISLANDS_2,$02
+ db SEAFOAM_ISLANDS_3,$01
+ db SEAFOAM_ISLANDS_3,$02
+ db SEAFOAM_ISLANDS_4,$01
+ db SEAFOAM_ISLANDS_4,$02
+ db SEAFOAM_ISLANDS_5,$01
+ db SEAFOAM_ISLANDS_5,$02
+ db VICTORY_ROAD_2,$02
+ db MANSION_1,$01
+ db MANSION_1,$02
+ db MANSION_2,$03
+ db $FF
+
+DungeonWarpData: ; 63d8 (1:63d8)
+ FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,18
+ FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,23
+ FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,19
+ FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,22
+ FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,18
+ FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,19
+ FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,4
+ FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,5
+ FLYWARP_DATA VICTORY_ROAD_2_WIDTH,16,22
+ FLYWARP_DATA MANSION_1_WIDTH,14,16
+ FLYWARP_DATA MANSION_1_WIDTH,14,16
+ FLYWARP_DATA MANSION_2_WIDTH,14,18
+
+;Format:
+; db Map_id
+; FLYWARP_DATA [Map Width][Y-pos][X-pos]
+; db Tileset_id
+FirstMapSpec: ; 6420 (1:6420)
+ db REDS_HOUSE_2F
+ FLYWARP_DATA REDS_HOUSE_2F_WIDTH,6,3
+ db REDS_HOUSE_2
+
+BattleCenterSpec1: ; 6428 (1:6428)
+ db BATTLE_CENTER
+ FLYWARP_DATA BATTLE_CENTER_WIDTH,4,3
+ db CLUB
+
+BattleCenterSpec2: ; 6430 (1:6430)
+ db BATTLE_CENTER
+ FLYWARP_DATA BATTLE_CENTER_WIDTH,4,6
+ db CLUB
+
+TradeCenterSpec1: ; 6438 (1:6438)
+ db TRADE_CENTER
+ FLYWARP_DATA TRADE_CENTER_WIDTH,4,3
+ db CLUB
+
+TradeCenterSpec2: ; 6440 (1:6440)
+ db TRADE_CENTER
+ FLYWARP_DATA TRADE_CENTER_WIDTH,4,6
+ db CLUB
+
+FlyWarpDataPtr: ; 6448 (1:6448)
+ db PALLET_TOWN, 0
+ dw PalletTownFlyWarp
+ db VIRIDIAN_CITY, 0
+ dw ViridianCityFlyWarp
+ db PEWTER_CITY, 0
+ dw PewterCityFlyWarp
+ db CERULEAN_CITY, 0
+ dw CeruleanCityFlyWarp
+ db LAVENDER_TOWN, 0
+ dw LavenderTownFlyWarp
+ db VERMILION_CITY, 0
+ dw VermilionCityFlyWarp
+ db CELADON_CITY, 0
+ dw CeladonCityFlyWarp
+ db FUCHSIA_CITY, 0
+ dw FuchsiaCityFlyWarp
+ db CINNABAR_ISLAND, 0
+ dw CinnabarIslandFlyWarp
+ db INDIGO_PLATEAU, 0
+ dw IndigoPlateauFlyWarp
+ db SAFFRON_CITY, 0
+ dw SaffronCityFlyWarp
+ db ROUTE_4, 0
+ dw Route4FlyWarp
+ db ROUTE_10, 0
+ dw Route10FlyWarp
+
+; Original Format:
+; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block]
+; Macro Format:
+; FLYWARP_DATA [Map Width][Y-pos][X-pos]
+PalletTownFlyWarp: ; 647c (1:647c)
+ FLYWARP_DATA PALLET_TOWN_WIDTH, 6, 5
+ViridianCityFlyWarp: ; 6482 (1:6482)
+ FLYWARP_DATA VIRIDIAN_CITY_WIDTH, 26, 23
+PewterCityFlyWarp: ; 6488 (1:6488)
+ FLYWARP_DATA PEWTER_CITY_WIDTH, 26, 13
+CeruleanCityFlyWarp: ; 648e (1:648e)
+ FLYWARP_DATA CERULEAN_CITY_WIDTH, 18, 19
+LavenderTownFlyWarp: ; 6494 (1:6494)
+ FLYWARP_DATA LAVENDER_TOWN_WIDTH, 6, 3
+VermilionCityFlyWarp: ; 649a (1:649a)
+ FLYWARP_DATA VERMILION_CITY_WIDTH, 4, 11
+CeladonCityFlyWarp: ; 64a0 (1:64a0)
+ FLYWARP_DATA CELADON_CITY_WIDTH, 10, 41
+FuchsiaCityFlyWarp: ; 64a6 (1:64a6)
+ FLYWARP_DATA FUCHSIA_CITY_WIDTH, 28, 19
+CinnabarIslandFlyWarp: ; 64ac (1:64ac)
+ FLYWARP_DATA CINNABAR_ISLAND_WIDTH, 12, 11
+IndigoPlateauFlyWarp: ; 64b2 (1:64b2)
+ FLYWARP_DATA INDIGO_PLATEAU_WIDTH, 6, 9
+SaffronCityFlyWarp: ; 64b8 (1:64b8)
+ FLYWARP_DATA SAFFRON_CITY_WIDTH, 30, 9
+Route4FlyWarp: ; 64be (1:64be)
+ FLYWARP_DATA ROUTE_4_WIDTH, 6, 11
+Route10FlyWarp: ; 64c4 (1:64c4)
+ FLYWARP_DATA ROUTE_10_WIDTH, 20, 11
diff --git a/data/sprite_sets.asm b/data/sprite_sets.asm
new file mode 100755
index 00000000..c5e2d29e
--- /dev/null
+++ b/data/sprite_sets.asm
@@ -0,0 +1,551 @@
+MapSpriteSets: ; 17a64 (5:7a64)
+ db $01 ; PALLET_TOWN
+ db $01 ; VIRIDIAN_CITY
+ db $02 ; PEWTER_CITY
+ db $02 ; CERULEAN_CITY
+ db $03 ; LAVENDER_TOWN
+ db $04 ; VERMILION_CITY
+ db $05 ; CELADON_CITY
+ db $0a ; FUCHSIA_CITY
+ db $01 ; CINNABAR_ISLAND
+ db $06 ; INDIGO_PLATEAU
+ db $07 ; SAFFRON_CITY
+ db $01 ; unused map ID
+ db $01 ; ROUTE_1
+ db $f1 ; ROUTE_2
+ db $02 ; ROUTE_3
+ db $02 ; ROUTE_4
+ db $f9 ; ROUTE_5
+ db $fa ; ROUTE_6
+ db $fb ; ROUTE_7
+ db $fc ; ROUTE_8
+ db $02 ; ROUTE_9
+ db $f2 ; ROUTE_10
+ db $f3 ; ROUTE_11
+ db $f4 ; ROUTE_12
+ db $08 ; ROUTE_13
+ db $08 ; ROUTE_14
+ db $f5 ; ROUTE_15
+ db $f6 ; ROUTE_16
+ db $09 ; ROUTE_17
+ db $f7 ; ROUTE_18
+ db $0a ; ROUTE_19
+ db $f8 ; ROUTE_20
+ db $01 ; ROUTE_21
+ db $01 ; ROUTE_22
+ db $06 ; ROUTE_23
+ db $02 ; ROUTE_24
+ db $02 ; ROUTE_25
+
+; Format:
+; 00: determines whether the map is split East/West or North/South
+; $01 = East/West divide
+; $02 = North/South divide
+; 01: coordinate of dividing line
+; 02: sprite set ID if in the West or North side
+; 03: sprite set ID if in the East or South side
+SplitMapSpriteSets: ; 17a89 (5:7a89)
+ db $02,$25,$02,$01 ; $f1
+ db $02,$32,$02,$03 ; $f2
+ db $01,$39,$04,$08 ; $f3
+ db $02,$15,$03,$08 ; $f4
+ db $01,$08,$0A,$08 ; $f5
+ db $01,$18,$09,$05 ; $f6
+ db $01,$22,$09,$0A ; $f7
+ db $01,$35,$01,$0A ; $f8
+ db $02,$21,$02,$07 ; $f9
+ db $02,$02,$07,$04 ; $fa
+ db $01,$11,$05,$07 ; $fb
+ db $01,$03,$07,$03 ; $fc
+
+SpriteSets: ; 17ab9 (5:7ab9)
+; sprite set $01
+ db SPRITE_BLUE
+ db SPRITE_BUG_CATCHER
+ db SPRITE_GIRL
+ db SPRITE_FISHER2
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_GAMBLER
+ db SPRITE_SEEL
+ db SPRITE_OAK
+ db SPRITE_SWIMMER
+ db SPRITE_BALL
+ db SPRITE_LYING_OLD_MAN
+
+; sprite set $02
+ db SPRITE_BUG_CATCHER
+ db SPRITE_ROCKET
+ db SPRITE_BLACK_HAIR_BOY_2
+ db SPRITE_HIKER
+ db SPRITE_SLOWBRO
+ db SPRITE_BLUE
+ db SPRITE_GUARD
+ db SPRITE_LASS
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_BALL
+ db SPRITE_LYING_OLD_MAN_UNUSED_2
+
+; sprite set $03
+ db SPRITE_LITTLE_GIRL
+ db SPRITE_GIRL
+ db SPRITE_BLACK_HAIR_BOY_2
+ db SPRITE_HIKER
+ db SPRITE_GAMBLER
+ db SPRITE_SLOWBRO
+ db SPRITE_LASS
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_GUARD
+ db SPRITE_BALL
+ db SPRITE_LYING_OLD_MAN_UNUSED_2
+
+; sprite set $04
+ db SPRITE_FOULARD_WOMAN
+ db SPRITE_BLACK_HAIR_BOY_2
+ db SPRITE_BUG_CATCHER
+ db SPRITE_GAMBLER
+ db SPRITE_SLOWBRO
+ db SPRITE_GUARD
+ db SPRITE_SAILOR
+ db SPRITE_LASS
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_BALL
+ db SPRITE_LYING_OLD_MAN_UNUSED_2
+
+; sprite set $05
+ db SPRITE_LITTLE_GIRL
+ db SPRITE_YOUNG_BOY
+ db SPRITE_GIRL
+ db SPRITE_FISHER2
+ db SPRITE_FAT_BALD_GUY
+ db SPRITE_OLD_PERSON
+ db SPRITE_SLOWBRO
+ db SPRITE_GUARD
+ db SPRITE_ROCKET
+ db SPRITE_BALL
+ db SPRITE_SNORLAX
+
+; sprite set $06
+ db SPRITE_BUG_CATCHER
+ db SPRITE_GYM_HELPER
+ db SPRITE_SLOWBRO
+ db SPRITE_BLUE
+ db SPRITE_LASS
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_SWIMMER
+ db SPRITE_GUARD
+ db SPRITE_GAMBLER
+ db SPRITE_BALL
+ db SPRITE_LYING_OLD_MAN_UNUSED_2
+
+; sprite set $07
+ db SPRITE_ROCKET
+ db SPRITE_OAK_AIDE
+ db SPRITE_LAPRAS_GIVER
+ db SPRITE_ERIKA
+ db SPRITE_GENTLEMAN
+ db SPRITE_BIRD
+ db SPRITE_ROCKER
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_SLOWBRO
+ db SPRITE_BALL
+ db SPRITE_LYING_OLD_MAN_UNUSED_2
+
+; sprite set $08
+ db SPRITE_BIKER
+ db SPRITE_BLACK_HAIR_BOY_2
+ db SPRITE_FAT_BALD_GUY
+ db SPRITE_LASS
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_FOULARD_WOMAN
+ db SPRITE_FISHER2
+ db SPRITE_ROCKER
+ db SPRITE_SLOWBRO
+ db SPRITE_BALL
+ db SPRITE_SNORLAX
+
+; sprite set $09
+ db SPRITE_BIKER
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_LAPRAS_GIVER
+ db SPRITE_FISHER2
+ db SPRITE_ROCKER
+ db SPRITE_HIKER
+ db SPRITE_GAMBLER
+ db SPRITE_FAT_BALD_GUY
+ db SPRITE_BLACK_HAIR_BOY_2
+ db SPRITE_BALL
+ db SPRITE_SNORLAX
+
+; sprite set $0a
+ db SPRITE_BIRD
+ db SPRITE_BLACK_HAIR_BOY_1
+ db SPRITE_CLEFAIRY
+ db SPRITE_FISHER2
+ db SPRITE_GAMBLER
+ db SPRITE_SLOWBRO
+ db SPRITE_SEEL
+ db SPRITE_SWIMMER
+ db SPRITE_BUG_CATCHER
+ db SPRITE_BALL
+ db SPRITE_OMANYTE
+
+SpriteSheetPointerTable: ; 17b27 (5:7b27)
+ ; SPRITE_RED
+ dw RedSprite
+ db $c0 ; byte count
+ db BANK(RedSprite)
+
+ ; SPRITE_BLUE
+ dw BlueSprite
+ db $c0 ; byte count
+ db BANK(BlueSprite)
+
+ ; SPRITE_OAK
+ dw OakSprite
+ db $c0 ; byte count
+ db BANK(OakSprite)
+
+ ; SPRITE_BUG_CATCHER
+ dw BugCatcherSprite
+ db $c0 ; byte count
+ db BANK(BugCatcherSprite)
+
+ ; SPRITE_SLOWBRO
+ dw SlowbroSprite
+ db $c0 ; byte count
+ db BANK(SlowbroSprite)
+
+ ; SPRITE_LASS
+ dw LassSprite
+ db $c0 ; byte count
+ db BANK(LassSprite)
+
+ ; SPRITE_BLACK_HAIR_BOY_1
+ dw BlackHairBoy1Sprite
+ db $c0 ; byte count
+ db BANK(BlackHairBoy1Sprite)
+
+ ; SPRITE_LITTLE_GIRL
+ dw LittleGirlSprite
+ db $c0 ; byte count
+ db BANK(LittleGirlSprite)
+
+ ; SPRITE_BIRD
+ dw BirdSprite
+ db $c0 ; byte count
+ db BANK(BirdSprite)
+
+ ; SPRITE_FAT_BALD_GUY
+ dw FatBaldGuySprite
+ db $c0 ; byte count
+ db BANK(FatBaldGuySprite)
+
+ ; SPRITE_GAMBLER
+ dw GamblerSprite
+ db $c0 ; byte count
+ db BANK(GamblerSprite)
+
+ ; SPRITE_BLACK_HAIR_BOY_2
+ dw BlackHairBoy2Sprite
+ db $c0 ; byte count
+ db BANK(BlackHairBoy2Sprite)
+
+ ; SPRITE_GIRL
+ dw GirlSprite
+ db $c0 ; byte count
+ db BANK(GirlSprite)
+
+ ; SPRITE_HIKER
+ dw HikerSprite
+ db $c0 ; byte count
+ db BANK(HikerSprite)
+
+ ; SPRITE_FOULARD_WOMAN
+ dw FoulardWomanSprite
+ db $c0 ; byte count
+ db BANK(FoulardWomanSprite)
+
+ ; SPRITE_GENTLEMAN
+ dw GentlemanSprite
+ db $c0 ; byte count
+ db BANK(GentlemanSprite)
+
+ ; SPRITE_DAISY
+ dw DaisySprite
+ db $c0 ; byte count
+ db BANK(DaisySprite)
+
+ ; SPRITE_BIKER
+ dw BikerSprite
+ db $c0 ; byte count
+ db BANK(BikerSprite)
+
+ ; SPRITE_SAILOR
+ dw SailorSprite
+ db $c0 ; byte count
+ db BANK(SailorSprite)
+
+ ; SPRITE_COOK
+ dw CookSprite
+ db $c0 ; byte count
+ db BANK(CookSprite)
+
+ ; SPRITE_BIKE_SHOP_GUY
+ dw BikeShopGuySprite
+ db $c0 ; byte count
+ db BANK(BikeShopGuySprite)
+
+ ; SPRITE_MR_FUJI
+ dw MrFujiSprite
+ db $c0 ; byte count
+ db BANK(MrFujiSprite)
+
+ ; SPRITE_GIOVANNI
+ dw GiovanniSprite
+ db $c0 ; byte count
+ db BANK(GiovanniSprite)
+
+ ; SPRITE_ROCKET
+ dw RocketSprite
+ db $c0 ; byte count
+ db BANK(RocketSprite)
+
+ ; SPRITE_MEDIUM
+ dw MediumSprite
+ db $c0 ; byte count
+ db BANK(MediumSprite)
+
+ ; SPRITE_WAITER
+ dw WaiterSprite
+ db $c0 ; byte count
+ db BANK(WaiterSprite)
+
+ ; SPRITE_ERIKA
+ dw ErikaSprite
+ db $c0 ; byte count
+ db BANK(ErikaSprite)
+
+ ; SPRITE_MOM_GEISHA
+ dw MomGeishaSprite
+ db $c0 ; byte count
+ db BANK(MomGeishaSprite)
+
+ ; SPRITE_BRUNETTE_GIRL
+ dw BrunetteGirlSprite
+ db $c0 ; byte count
+ db BANK(BrunetteGirlSprite)
+
+ ; SPRITE_LANCE
+ dw LanceSprite
+ db $c0 ; byte count
+ db BANK(LanceSprite)
+
+ ; SPRITE_OAK_SCIENTIST_AIDE
+ dw OakAideSprite
+ db $c0 ; byte count
+ db BANK(OakAideSprite)
+
+ ; SPRITE_OAK_AIDE
+ dw OakAideSprite
+ db $c0 ; byte count
+ db BANK(OakAideSprite)
+
+ ; SPRITE_ROCKER
+ dw RockerSprite
+ db $c0 ; byte count
+ db BANK(RockerSprite)
+
+ ; SPRITE_SWIMMER
+ dw SwimmerSprite
+ db $c0 ; byte count
+ db BANK(SwimmerSprite)
+
+ ; SPRITE_WHITE_PLAYER
+ dw WhitePlayerSprite
+ db $c0 ; byte count
+ db BANK(WhitePlayerSprite)
+
+ ; SPRITE_GYM_HELPER
+ dw GymHelperSprite
+ db $c0 ; byte count
+ db BANK(GymHelperSprite)
+
+ ; SPRITE_OLD_PERSON
+ dw OldPersonSprite
+ db $c0 ; byte count
+ db BANK(OldPersonSprite)
+
+ ; SPRITE_MART_GUY
+ dw MartGuySprite
+ db $c0 ; byte count
+ db BANK(MartGuySprite)
+
+ ; SPRITE_FISHER
+ dw FisherSprite
+ db $c0 ; byte count
+ db BANK(FisherSprite)
+
+ ; SPRITE_OLD_MEDIUM_WOMAN
+ dw OldMediumWomanSprite
+ db $c0 ; byte count
+ db BANK(OldMediumWomanSprite)
+
+ ; SPRITE_NURSE
+ dw NurseSprite
+ db $c0 ; byte count
+ db BANK(NurseSprite)
+
+ ; SPRITE_CABLE_CLUB_WOMAN
+ dw CableClubWomanSprite
+ db $c0 ; byte count
+ db BANK(CableClubWomanSprite)
+
+ ; SPRITE_MR_MASTERBALL
+ dw MrMasterballSprite
+ db $c0 ; byte count
+ db BANK(MrMasterballSprite)
+
+ ; SPRITE_LAPRAS_GIVER
+ dw LaprasGiverSprite
+ db $c0 ; byte count
+ db BANK(LaprasGiverSprite)
+
+ ; SPRITE_WARDEN
+ dw WardenSprite
+ db $c0 ; byte count
+ db BANK(WardenSprite)
+
+ ; SPRITE_SS_CAPTAIN
+ dw SsCaptainSprite
+ db $c0 ; byte count
+ db BANK(SsCaptainSprite)
+
+ ; SPRITE_FISHER2
+ dw Fisher2Sprite
+ db $c0 ; byte count
+ db BANK(Fisher2Sprite)
+
+ ; SPRITE_BLACKBELT
+ dw BlackbeltSprite
+ db $c0 ; byte count
+ db BANK(BlackbeltSprite)
+
+ ; SPRITE_GUARD
+ dw GuardSprite
+ db $c0 ; byte count
+ db BANK(GuardSprite)
+
+ ; $32
+ dw GuardSprite
+ db $c0 ; byte count
+ db BANK(GuardSprite)
+
+ ; SPRITE_MOM
+ dw MomSprite
+ db $c0 ; byte count
+ db BANK(MomSprite)
+
+ ; SPRITE_BALDING_GUY
+ dw BaldingGuySprite
+ db $c0 ; byte count
+ db BANK(BaldingGuySprite)
+
+ ; SPRITE_YOUNG_BOY
+ dw YoungBoySprite
+ db $c0 ; byte count
+ db BANK(YoungBoySprite)
+
+ ; SPRITE_GAMEBOY_KID
+ dw GameboyKidSprite
+ db $c0 ; byte count
+ db BANK(GameboyKidSprite)
+
+ ; SPRITE_GAMEBOY_KID_COPY
+ dw GameboyKidSprite
+ db $c0 ; byte count
+ db BANK(GameboyKidSprite)
+
+ ; SPRITE_CLEFAIRY
+ dw ClefairySprite
+ db $c0 ; byte count
+ db BANK(ClefairySprite)
+
+ ; SPRITE_AGATHA
+ dw AgathaSprite
+ db $c0 ; byte count
+ db BANK(AgathaSprite)
+
+ ; SPRITE_BRUNO
+ dw BrunoSprite
+ db $c0 ; byte count
+ db BANK(BrunoSprite)
+
+ ; SPRITE_LORELEI
+ dw LoreleiSprite
+ db $c0 ; byte count
+ db BANK(LoreleiSprite)
+
+ ; SPRITE_SEEL
+ dw SeelSprite
+ db $c0 ; byte count
+ db BANK(SeelSprite)
+
+ ; SPRITE_BALL
+ dw BallSprite
+ db $40 ; byte count
+ db BANK(BallSprite)
+
+ ; SPRITE_OMANYTE
+ dw OmanyteSprite
+ db $40 ; byte count
+ db BANK(OmanyteSprite)
+
+ ; SPRITE_BOULDER
+ dw BoulderSprite
+ db $40 ; byte count
+ db BANK(BoulderSprite)
+
+ ; SPRITE_PAPER_SHEET
+ dw PaperSheetSprite
+ db $40 ; byte count
+ db BANK(PaperSheetSprite)
+
+ ; SPRITE_BOOK_MAP_DEX
+ dw BookMapDexSprite
+ db $40 ; byte count
+ db BANK(BookMapDexSprite)
+
+ ; SPRITE_CLIPBOARD
+ dw ClipboardSprite
+ db $40 ; byte count
+ db BANK(ClipboardSprite)
+
+ ; SPRITE_SNORLAX
+ dw SnorlaxSprite
+ db $40 ; byte count
+ db BANK(SnorlaxSprite)
+
+ ; SPRITE_OLD_AMBER_COPY
+ dw OldAmberSprite
+ db $40 ; byte count
+ db BANK(OldAmberSprite)
+
+ ; SPRITE_OLD_AMBER
+ dw OldAmberSprite
+ db $40 ; byte count
+ db BANK(OldAmberSprite)
+
+ ; SPRITE_LYING_OLD_MAN_UNUSED_1
+ dw LyingOldManSprite
+ db $40 ; byte count
+ db BANK(LyingOldManSprite)
+
+ ; SPRITE_LYING_OLD_MAN_UNUSED_2
+ dw LyingOldManSprite
+ db $40 ; byte count
+ db BANK(LyingOldManSprite)
+
+ ; SPRITE_LYING_OLD_MAN
+ dw LyingOldManSprite
+ db $40 ; byte count
+ db BANK(LyingOldManSprite)
diff --git a/data/super_palettes.asm b/data/super_palettes.asm
new file mode 100755
index 00000000..6ab708be
--- /dev/null
+++ b/data/super_palettes.asm
@@ -0,0 +1,174 @@
+; palettes for overworlds, title screen, monsters
+SuperPalettes: ; 72660 (1c:6660)
+ RGB 31,29,31 ; PAL_ROUTE
+ RGB 21,28,11
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_PALLET
+ RGB 25,28,27
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_VIRIDIAN
+ RGB 17,26,3
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_PEWTER
+ RGB 23,25,16
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_CERULEAN
+ RGB 17,20,30
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_LAVENDER
+ RGB 27,20,27
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_VERMILION
+ RGB 30,18,0
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_CELADON
+ RGB 16,30,22
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_FUCHSIA
+ RGB 31,15,22
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_CINNABAR
+ RGB 26,10,6
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_INDIGO
+ RGB 22,14,24
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_SAFFRON
+ RGB 27,27,3
+ RGB 20,26,31
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_TOWNMAP
+ RGB 20,26,31
+ RGB 17,23,10
+ RGB 3,2,2
+IF _RED
+ RGB 31,29,31 ; PAL_LOGO1
+ RGB 30,30,17
+ RGB 17,23,10
+ RGB 21,0,4
+ENDC
+IF _BLUE
+ RGB 31,29,31 ; PAL_LOGO1
+ RGB 30,30,17
+ RGB 21,0,4
+ RGB 14,19,29
+ENDC
+ RGB 31,29,31 ; PAL_LOGO2
+ RGB 30,30,17
+ RGB 18,18,24
+ RGB 7,7,16
+ RGB 31,29,31 ; PAL_0F
+ RGB 24,20,30
+ RGB 11,20,30
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_MEWMON
+ RGB 30,22,17
+ RGB 16,14,19
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_BLUEMON
+ RGB 18,20,27
+ RGB 11,15,23
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_REDMON
+ RGB 31,20,10
+ RGB 26,10,6
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_CYANMON
+ RGB 21,25,29
+ RGB 14,19,25
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_PURPLEMON
+ RGB 27,22,24
+ RGB 21,15,23
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_BROWNMON
+ RGB 28,20,15
+ RGB 21,14,9
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_GREENMON
+ RGB 20,26,16
+ RGB 9,20,11
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_PINKMON
+ RGB 30,22,24
+ RGB 28,15,21
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_YELLOWMON
+ RGB 31,28,14
+ RGB 26,20,0
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_GREYMON
+ RGB 26,21,22
+ RGB 15,15,18
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_SLOTS1
+ RGB 26,21,22
+ RGB 27,20,6
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_SLOTS2
+ RGB 31,31,17
+IF _RED
+ RGB 25,17,21
+ENDC
+IF _BLUE
+ RGB 16,19,29
+ENDC
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_SLOTS3
+ RGB 22,31,16
+IF _RED
+ RGB 25,17,21
+ENDC
+IF _BLUE
+ RGB 16,19,29
+ENDC
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_SLOTS4
+IF _RED
+ RGB 16,19,29
+ RGB 25,17,21
+ENDC
+IF _BLUE
+ RGB 25,17,21
+ RGB 16,19,29
+ENDC
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_BLACK
+ RGB 7,7,7
+ RGB 2,3,3
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_GREENBAR
+ RGB 30,26,15
+ RGB 9,20,11
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_YELLOWBAR
+ RGB 30,26,15
+ RGB 26,20,0
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_REDBAR
+ RGB 30,26,15
+ RGB 26,10,6
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_BADGE
+ RGB 30,22,17
+ RGB 11,15,23
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_CAVE
+ RGB 21,14,9
+ RGB 18,24,22
+ RGB 3,2,2
+ RGB 31,29,31 ; PAL_GAMEFREAK
+ RGB 31,28,14
+ RGB 24,20,10
+ RGB 3,2,2
diff --git a/data/super_rod.asm b/data/super_rod.asm
new file mode 100755
index 00000000..ead970d8
--- /dev/null
+++ b/data/super_rod.asm
@@ -0,0 +1,101 @@
+; super rod data
+; format: map, pointer to fishing group
+SuperRodData: ; e919 (3:6919)
+ dbw PALLET_TOWN, FishingGroup1
+ dbw VIRIDIAN_CITY, FishingGroup1
+ dbw CERULEAN_CITY, FishingGroup3
+ dbw VERMILION_CITY, FishingGroup4
+ dbw CELADON_CITY, FishingGroup5
+ dbw FUCHSIA_CITY, FishingGroup10
+ dbw CINNABAR_ISLAND, FishingGroup8
+ dbw ROUTE_4, FishingGroup3
+ dbw ROUTE_6, FishingGroup4
+ dbw ROUTE_10, FishingGroup5
+ dbw ROUTE_11, FishingGroup4
+ dbw ROUTE_12, FishingGroup7
+ dbw ROUTE_13, FishingGroup7
+ dbw ROUTE_17, FishingGroup7
+ dbw ROUTE_18, FishingGroup7
+ dbw ROUTE_19, FishingGroup8
+ dbw ROUTE_20, FishingGroup8
+ dbw ROUTE_21, FishingGroup8
+ dbw ROUTE_22, FishingGroup2
+ dbw ROUTE_23, FishingGroup9
+ dbw ROUTE_24, FishingGroup3
+ dbw ROUTE_25, FishingGroup3
+ dbw CERULEAN_GYM, FishingGroup3
+ dbw VERMILION_DOCK, FishingGroup4
+;XXX syntax errors on the rest?
+ dbw $A1, FishingGroup8 ; SEAFOAM_ISLANDS_4
+ dbw $A2, FishingGroup8 ; SEAFOAM_ISLANDS_5
+ dbw SAFARI_ZONE_EAST, FishingGroup6
+ dbw $DA, FishingGroup6 ; SAFARI_ZONE_NORTH
+ dbw SAFARI_ZONE_WEST, FishingGroup6
+ dbw $DC, FishingGroup6 ; SAFARI_ZONE_CENTER
+ dbw $E2, FishingGroup9 ; UNKNOWN_DUNGEON_2
+ dbw $E3, FishingGroup9 ; UNKNOWN_DUNGEON_3
+ dbw $E4, FishingGroup9 ; UNKNOWN_DUNGEON_1
+ db $FF
+
+; fishing groups
+; number of monsters, followed by level/monster pairs
+FishingGroup1: ; e97d (3:697d)
+ db 2
+ db 15,TENTACOOL
+ db 15,POLIWAG
+
+FishingGroup2: ; e982 (3:6982)
+ db 2
+ db 15,GOLDEEN
+ db 15,POLIWAG
+
+FishingGroup3: ; e987 (3:6987)
+ db 3
+ db 15,PSYDUCK
+ db 15,GOLDEEN
+ db 15,KRABBY
+
+FishingGroup4: ; e98e (3:698e)
+ db 2
+ db 15,KRABBY
+ db 15,SHELLDER
+
+FishingGroup5: ; e993 (3:6993)
+ db 2
+ db 23,POLIWHIRL
+ db 15,SLOWPOKE
+
+FishingGroup6: ; e998 (3:6998)
+ db 4
+ db 15,DRATINI
+ db 15,KRABBY
+ db 15,PSYDUCK
+ db 15,SLOWPOKE
+
+FishingGroup7: ; e9a1 (3:69a1)
+ db 4
+ db 5,TENTACOOL
+ db 15,KRABBY
+ db 15,GOLDEEN
+ db 15,MAGIKARP
+
+FishingGroup8: ; e9aa (3:69aa)
+ db 4
+ db 15,STARYU
+ db 15,HORSEA
+ db 15,SHELLDER
+ db 15,GOLDEEN
+
+FishingGroup9: ; e9b3 (3:69b3)
+ db 4
+ db 23,SLOWBRO
+ db 23,SEAKING
+ db 23,KINGLER
+ db 23,SEADRA
+
+FishingGroup10: ; e9bc (3:69bc)
+ db 4
+ db 23,SEAKING
+ db 15,KRABBY
+ db 15,GOLDEEN
+ db 15,MAGIKARP
diff --git a/data/tileset_headers.asm b/data/tileset_headers.asm
new file mode 100755
index 00000000..84cfaffd
--- /dev/null
+++ b/data/tileset_headers.asm
@@ -0,0 +1,25 @@
+Tilesets: ; c7be (3:47be)
+ tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR
+ tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset Mart_Block, Mart_GFX, Mart_Coll, $18,$19,$1E, $FF, INDOOR
+ tileset Forest_Block, Forest_GFX, Forest_Coll, $FF,$FF,$FF, $20, CAVE
+ tileset RedsHouse2_Block, RedsHouse2_GFX, RedsHouse2_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset Dojo_Block, Dojo_GFX, Dojo_Coll, $3A,$FF,$FF, $FF, OUTDOOR
+ tileset Pokecenter_Block, Pokecenter_GFX, Pokecenter_Coll, $18,$19,$1E, $FF, INDOOR
+ tileset Gym_Block, Gym_GFX, Gym_Coll, $3A,$FF,$FF, $FF, OUTDOOR
+ tileset House_Block, House_GFX, House_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset ForestGate_Block, ForestGate_GFX, ForestGate_Coll, $17,$32,$FF, $FF, INDOOR
+ tileset Museum_Block, Museum_GFX, Museum_Coll, $17,$32,$FF, $FF, INDOOR
+ tileset Underground_Block, Underground_GFX, Underground_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset Gate_Block, Gate_GFX, Gate_Coll, $17,$32,$FF, $FF, INDOOR
+ tileset Ship_Block, Ship_GFX, Ship_Coll, $FF,$FF,$FF, $FF, CAVE
+ tileset ShipPort_Block, ShipPort_GFX, ShipPort_Coll, $FF,$FF,$FF, $FF, CAVE
+ tileset Cemetery_Block, Cemetery_GFX, Cemetery_Coll, $12,$FF,$FF, $FF, INDOOR
+ tileset Interior_Block, Interior_GFX, Interior_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset Cavern_Block, Cavern_GFX, Cavern_Coll, $FF,$FF,$FF, $FF, CAVE
+ tileset Lobby_Block, Lobby_GFX, Lobby_Coll, $15,$36,$FF, $FF, INDOOR
+ tileset Mansion_Block, Mansion_GFX, Mansion_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset Lab_Block, Lab_GFX, Lab_Coll, $FF,$FF,$FF, $FF, INDOOR
+ tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR
+ tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE
+ tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE
diff --git a/data/title_mons.asm b/data/title_mons.asm
new file mode 100755
index 00000000..2781b78d
--- /dev/null
+++ b/data/title_mons.asm
@@ -0,0 +1,56 @@
+TitleMons: ; 4588 (1:4588)
+; mons on the title screen are randomly chosen from here
+IF _RED
+ db CHARMANDER
+ db SQUIRTLE
+ db BULBASAUR
+ db WEEDLE
+ db NIDORAN_M
+ db SCYTHER
+ db PIKACHU
+ db CLEFAIRY
+ db RHYDON
+ db ABRA
+ db GASTLY
+ db DITTO
+ db PIDGEOTTO
+ db ONIX
+ db PONYTA
+ db MAGIKARP
+ENDC
+IF _GREEN
+ db BULBASAUR
+ db CHARMANDER
+ db SQUIRTLE
+ db CATERPIE
+ db NIDORAN_F
+ db PINSIR
+ db PIKACHU
+ db CLEFAIRY
+ db RHYDON
+ db ABRA
+ db GASTLY
+ db DITTO
+ db PIDGEOTTO
+ db ONIX
+ db PONYTA
+ db MAGIKARP
+ENDC
+IF _BLUE
+ db SQUIRTLE
+ db CHARMANDER
+ db BULBASAUR
+ db MANKEY
+ db HITMONLEE
+ db VULPIX
+ db CHANSEY
+ db AERODACTYL
+ db JOLTEON
+ db SNORLAX
+ db GLOOM
+ db POLIWAG
+ db DODUO
+ db PORYGON
+ db GENGAR
+ db RAICHU
+ENDC
diff --git a/data/tm_prices.asm b/data/tm_prices.asm
new file mode 100755
index 00000000..4fce3f60
--- /dev/null
+++ b/data/tm_prices.asm
@@ -0,0 +1,7 @@
+TechnicalMachinePrices: ; 7bfa7 (1e:7fa7)
+; In thousands (nybbles).
+ db $32, $21, $34, $24, $34
+ db $21, $45, $55, $32, $32
+ db $55, $52, $54, $52, $41
+ db $21, $12, $42, $25, $24
+ db $22, $52, $24, $34, $42
diff --git a/data/tms.asm b/data/tms.asm
new file mode 100755
index 00000000..23630691
--- /dev/null
+++ b/data/tms.asm
@@ -0,0 +1,56 @@
+TechnicalMachines: ; 13773 (4:7773)
+ db MEGA_PUNCH
+ db RAZOR_WIND
+ db SWORDS_DANCE
+ db WHIRLWIND
+ db MEGA_KICK
+ db TOXIC
+ db HORN_DRILL
+ db BODY_SLAM
+ db TAKE_DOWN
+ db DOUBLE_EDGE
+ db BUBBLEBEAM
+ db WATER_GUN
+ db ICE_BEAM
+ db BLIZZARD
+ db HYPER_BEAM
+ db PAY_DAY
+ db SUBMISSION
+ db COUNTER
+ db SEISMIC_TOSS
+ db RAGE
+ db MEGA_DRAIN
+ db SOLARBEAM
+ db DRAGON_RAGE
+ db THUNDERBOLT
+ db THUNDER
+ db EARTHQUAKE
+ db FISSURE
+ db DIG
+ db PSYCHIC_M
+ db TELEPORT
+ db MIMIC
+ db DOUBLE_TEAM
+ db REFLECT
+ db BIDE
+ db METRONOME
+ db SELFDESTRUCT
+ db EGG_BOMB
+ db FIRE_BLAST
+ db SWIFT
+ db SKULL_BASH
+ db SOFTBOILED
+ db DREAM_EATER
+ db SKY_ATTACK
+ db REST
+ db THUNDER_WAVE
+ db PSYWAVE
+ db EXPLOSION
+ db ROCK_SLIDE
+ db TRI_ATTACK
+ db SUBSTITUTE
+ db CUT
+ db FLY
+ db SURF
+ db STRENGTH
+ db FLASH
diff --git a/data/town_map_entries.asm b/data/town_map_entries.asm
new file mode 100755
index 00000000..d2edd949
--- /dev/null
+++ b/data/town_map_entries.asm
@@ -0,0 +1,101 @@
+ExternalMapEntries: ; 71313 (1c:5313)
+ EMAP $2,$B,PalletTownName
+ EMAP $2,$8,ViridianCityName
+ EMAP $2,$3,PewterCityName
+ EMAP $A,$2,CeruleanCityName
+ EMAP $E,$5,LavenderTownName
+ EMAP $A,$9,VermilionCityName
+ EMAP $7,$5,CeladonCityName
+ EMAP $8,$D,FuchsiaCityName
+ EMAP $2,$F,CinnabarIslandName
+ EMAP $0,$2,IndigoPlateauName
+ EMAP $A,$5,SaffronCityName
+ EMAP $0,$0,PalletTownName ; unused
+ EMAP $2,$A,Route1Name
+ EMAP $2,$6,Route2Name
+ EMAP $4,$3,Route3Name
+ EMAP $8,$2,Route4Name
+ EMAP $A,$3,Route5Name
+ EMAP $A,$8,Route6Name
+ EMAP $8,$5,Route7Name
+ EMAP $D,$5,Route8Name
+ EMAP $D,$2,Route9Name
+ EMAP $E,$4,Route10Name
+ EMAP $C,$9,Route11Name
+ EMAP $E,$9,Route12Name
+ EMAP $D,$B,Route13Name
+ EMAP $B,$C,Route14Name
+ EMAP $A,$D,Route15Name
+ EMAP $5,$5,Route16Name
+ EMAP $4,$8,Route17Name
+ EMAP $6,$D,Route18Name
+ EMAP $6,$F,Route19Name
+ EMAP $4,$F,Route20Name
+ EMAP $2,$D,Route21Name
+ EMAP $0,$8,Route22Name
+ EMAP $0,$6,Route23Name
+ EMAP $A,$1,Route24Name
+ EMAP $B,$0,Route25Name
+
+InternalMapEntries: ; 71382 (1c:5382)
+ IMAP $29,$2,$B,PalletTownName
+ IMAP $2E,$2,$8,ViridianCityName
+ IMAP $33,$2,$6,Route2Name
+ IMAP $34,$2,$4,ViridianForestName
+ IMAP $3B,$2,$3,PewterCityName
+ IMAP $3E,$6,$2,MountMoonName
+ IMAP $44,$A,$2,CeruleanCityName
+ IMAP $45,$5,$2,Route4Name
+ IMAP $46,$A,$2,CeruleanCityName
+ IMAP $49,$A,$4,Route5Name
+ IMAP $4C,$A,$6,Route6Name
+ IMAP $4F,$9,$5,Route7Name
+ IMAP $51,$B,$5,Route8Name
+ IMAP $53,$E,$3,RockTunnelName
+ IMAP $54,$F,$4,PowerPlantName
+ IMAP $57,$D,$9,Route11Name
+ IMAP $58,$E,$7,Route12Name
+ IMAP $59,$C,$0,SeaCottageName
+ IMAP $5F,$A,$9,VermilionCityName
+ IMAP $69,$9,$A,SSAnneName
+ IMAP $6D,$0,$4,VictoryRoadName
+ IMAP $77,$0,$2,PokemonLeagueName
+ IMAP $78,$A,$5,UndergroundPathName
+ IMAP $79,$0,$2,PokemonLeagueName
+ IMAP $7A,$A,$5,UndergroundPathName
+ IMAP $8D,$7,$5,CeladonCityName
+ IMAP $8E,$E,$5,LavenderTownName
+ IMAP $95,$F,$5,PokemonTowerName
+ IMAP $98,$E,$5,LavenderTownName
+ IMAP $9C,$8,$D,FuchsiaCityName
+ IMAP $9D,$8,$C,SafariZoneName
+ IMAP $9F,$8,$D,FuchsiaCityName
+ IMAP $A3,$5,$F,SeafoamIslandsName
+ IMAP $A4,$A,$9,VermilionCityName
+ IMAP $A5,$8,$D,FuchsiaCityName
+ IMAP $A6,$2,$F,PokemonMansionName
+ IMAP $AE,$2,$F,CinnabarIslandName
+ IMAP $AF,$0,$2,IndigoPlateauName
+ IMAP $B8,$A,$5,SaffronCityName
+ IMAP $BA,$9,$D,Route15Name
+ IMAP $BD,$4,$5,Route16Name
+ IMAP $BE,$E,$A,Route12Name
+ IMAP $C0,$7,$D,Route18Name
+ IMAP $C1,$5,$F,SeafoamIslandsName
+ IMAP $C2,$0,$7,Route22Name
+ IMAP $C3,$0,$4,VictoryRoadName
+ IMAP $C4,$E,$7,Route12Name
+ IMAP $C5,$A,$9,VermilionCityName
+ IMAP $C6,$3,$4,DiglettsCaveName
+ IMAP $C7,$0,$4,VictoryRoadName
+ IMAP $CF,$7,$5,RocketHQName
+ IMAP $D6,$A,$5,SilphCoName
+ IMAP $D9,$2,$F,PokemonMansionName
+ IMAP $E2,$8,$C,SafariZoneName
+ IMAP $E5,$9,$1,CeruleanCaveName
+ IMAP $E6,$E,$5,LavenderTownName
+ IMAP $E7,$A,$2,CeruleanCityName
+ IMAP $E9,$E,$3,RockTunnelName
+ IMAP $ED,$A,$5,SilphCoName
+ IMAP $F8,$0,$2,PokemonLeagueName
+ db $FF
diff --git a/data/town_map_order.asm b/data/town_map_order.asm
new file mode 100755
index 00000000..3bd8c223
--- /dev/null
+++ b/data/town_map_order.asm
@@ -0,0 +1,48 @@
+TownMapOrder: ; 70f11 (1c:4f11)
+ db PALLET_TOWN
+ db ROUTE_1
+ db VIRIDIAN_CITY
+ db ROUTE_2
+ db VIRIDIAN_FOREST
+ db DIGLETTS_CAVE
+ db PEWTER_CITY
+ db ROUTE_3
+ db MT_MOON_1
+ db ROUTE_4
+ db CERULEAN_CITY
+ db ROUTE_24
+ db ROUTE_25
+ db BILLS_HOUSE
+ db ROUTE_5
+ db ROUTE_6
+ db VERMILION_CITY
+ db SS_ANNE_1
+ db ROUTE_9
+ db ROCK_TUNNEL_POKECENTER
+ db ROUTE_10
+ db LAVENDER_TOWN
+ db POKEMONTOWER_2
+ db ROUTE_8
+ db ROUTE_7
+ db CELADON_CITY
+ db SAFFRON_CITY
+ db ROUTE_11
+ db ROUTE_12
+ db ROUTE_13
+ db ROUTE_14
+ db ROUTE_15
+ db ROUTE_16
+ db ROUTE_17
+ db ROUTE_18
+ db FUCHSIA_CITY
+ db SAFARI_ZONE_EAST
+ db ROUTE_19
+ db SEAFOAM_ISLANDS_2
+ db ROUTE_20
+ db CINNABAR_ISLAND
+ db ROUTE_21
+ db ROUTE_22
+ db ROUTE_23
+ db VICTORY_ROAD_3
+ db INDIGO_PLATEAU
+ db POWER_PLANT
diff --git a/data/trades.asm b/data/trades.asm
new file mode 100755
index 00000000..2593f01c
--- /dev/null
+++ b/data/trades.asm
@@ -0,0 +1,12 @@
+TradeMons: ; 71b7b (1c:5b7b)
+; givemonster, getmonster, textstring, nickname (11 bytes), 14 bytes total
+ db NIDORINO, NIDORINA, 0,"TERRY@@@@@@"
+ db ABRA, MR_MIME, 0,"MARCEL@@@@@"
+ db BUTTERFREE,BEEDRILL, 2,"CHIKUCHIKU@"
+ db PONYTA, SEEL, 0,"SAILOR@@@@@"
+ db SPEAROW, FARFETCH_D,2,"DUX@@@@@@@@"
+ db SLOWBRO, LICKITUNG, 0,"MARC@@@@@@@"
+ db POLIWHIRL, JYNX, 1,"LOLA@@@@@@@"
+ db RAICHU, ELECTRODE, 1,"DORIS@@@@@@"
+ db VENONAT, TANGELA, 2,"CRINKLES@@@"
+ db NIDORAN_M, NIDORAN_F, 2,"SPOT@@@@@@@"
diff --git a/data/trainer_moves.asm b/data/trainer_moves.asm
new file mode 100755
index 00000000..61a3d650
--- /dev/null
+++ b/data/trainer_moves.asm
@@ -0,0 +1,194 @@
+LoneMoves: ; 39d22 (e:5d22)
+; these are used for gym leaders.
+; this is not automatic! you have to write the number you want to W_LONEATTACKNO
+; first. e.g., erika's script writes 4 to W_LONEATTACKNO to get mega drain,
+; the fourth entry in the list.
+
+; first byte: pokemon in the trainer's party that gets the move
+; second byte: move
+; unterminated
+ db 1,BIDE
+ db 1,BUBBLEBEAM
+ db 2,THUNDERBOLT
+ db 2,MEGA_DRAIN
+ db 3,TOXIC
+ db 3,PSYWAVE
+ db 3,FIRE_BLAST
+ db 4,FISSURE
+
+TeamMoves: ; 39d32 (e:5d32)
+; these are used for elite four.
+; this is automatic, based on trainer class.
+; don't be confused by LoneMoves above, the two data structures are
+ ; _completely_ unrelated.
+
+; first byte: trainer (all trainers in this class have this move)
+; second byte: move
+; ff-terminated
+ db LORELEI,BLIZZARD
+ db BRUNO,FISSURE
+ db AGATHA,TOXIC
+ db LANCE,BARRIER
+ db $FF
+
+if _YELLOW
+; different format from above.
+
+; entry ≔ trainerclass, trainerid, moveset+, 0
+; moveset ≔ partymon, partymon'smove, moveid
+
+ db BUG_CATCHER,$f
+ db 2,2,TACKLE
+ db 2,3,STRING_SHOT
+ db 0
+
+ db YOUNGSTER,$e
+ db 1,4,FISSURE
+ db 0
+
+ db BROCK,$1
+ db 2,3,BIND
+ db 2,4,BIDE
+ db 0
+
+ db MISTY,$1
+ db 2,4,BUBBLEBEAM
+ db 0
+
+ db LT__SURGE,$1
+ db 1,1,THUNDERBOLT
+ db 1,2,MEGA_PUNCH
+ db 1,3,MEGA_KICK
+ db 1,4,GROWL
+ db 0
+
+ db ERIKA,$1
+ db 1,3,MEGA_DRAIN
+ db 2,1,RAZOR_LEAF
+ db 3,1,PETAL_DANCE
+ db 0
+
+ db KOGA,$1
+ db 1,1,TOXIC
+ db 1,2,TACKLE
+ db 2,1,TOXIC
+ db 2,3,SUPERSONIC
+ db 3,1,TOXIC
+ db 3,2,DOUBLE_EDGE
+ db 4,1,LEECH_LIFE
+ db 4,2,DOUBLE_TEAM
+ db 4,3,PSYCHIC_M
+ db 4,4,TOXIC
+ db 0
+
+ db BLAINE,$1
+ db 1,1,FLAMETHROWER
+ db 1,4,CONFUSE_RAY
+ db 3,1,FLAMETHROWER
+ db 3,2,FIRE_BLAST
+ db 3,3,REFLECT
+ db 0
+
+ db SABRINA,$1
+ db 1,1,FLASH
+ db 2,1,KINESIS
+ db 2,4,PSYWAVE
+ db 3,1,PSYWAVE
+ db 0
+
+ db GIOVANNI,$3
+ db 1,3,FISSURE
+ db 2,2,DOUBLE_TEAM
+ db 3,1,EARTHQUAKE
+ db 3,3,THUNDER
+ db 4,1,EARTHQUAKE
+ db 4,2,LEER
+ db 4,3,THUNDER
+ db 5,1,ROCK_SLIDE
+ db 5,4,EARTHQUAKE
+ db 0
+
+ db LORELEI,$1
+ db 1,1,BUBBLEBEAM
+ db 2,3,ICE_BEAM
+ db 3,1,PSYCHIC_M
+ db 3,2,SURF
+ db 4,3,LOVELY_KISS
+ db 5,3,BLIZZARD
+ db 0
+
+ db BRUNO,$1
+ db 1,1,ROCK_SLIDE
+ db 1,2,SCREECH
+ db 1,4,DIG
+ db 2,3,FIRE_PUNCH
+ db 2,4,DOUBLE_TEAM
+ db 3,1,DOUBLE_KICK
+ db 3,2,MEGA_KICK
+ db 3,4,DOUBLE_TEAM
+ db 4,1,ROCK_SLIDE
+ db 4,2,SCREECH
+ db 4,4,EARTHQUAKE
+ db 5,2,KARATE_CHOP
+ db 5,3,STRENGTH
+ db 0
+
+ db AGATHA,$1
+ db 1,2,SUBSTITUTE
+ db 1,3,LICK
+ db 1,4,MEGA_DRAIN
+ db 2,2,TOXIC
+ db 2,4,LEECH_LIFE
+ db 3,2,LICK
+ db 4,1,WRAP
+ db 5,2,PSYCHIC_M
+ db 0
+
+ db LANCE,$1
+ db 1,1,DRAGON_RAGE
+ db 2,1,THUNDER_WAVE
+ db 2,3,THUNDERBOLT
+ db 3,1,BUBBLEBEAM
+ db 3,2,WRAP
+ db 3,3,ICE_BEAM
+ db 4,1,WING_ATTACK
+ db 4,2,SWIFT
+ db 4,3,FLY
+ db 5,1,BLIZZARD
+ db 5,2,FIRE_BLAST
+ db 5,3,THUNDER
+ db 0
+
+ db SONY3,$1
+ db 1,3,EARTHQUAKE
+ db 2,4,KINESIS
+ db 3,4,LEECH_SEED
+ db 4,1,ICE_BEAM
+ db 5,1,CONFUSE_RAY
+ db 5,4,FIRE_SPIN
+ db 6,3,QUICK_ATTACK
+ db 0
+
+ db SONY3,$2
+ db 1,3,EARTHQUAKE
+ db 2,4,KINESIS
+ db 3,4,LEECH_SEED
+ db 4,1,THUNDERBOLT
+ db 5,1,ICE_BEAM
+ db 6,2,REFLECT
+ db 6,3,QUICK_ATTACK
+ db 0
+
+ db SONY3,$3
+ db 1,3,EARTHQUAKE
+ db 2,4,KINESIS
+ db 3,4,LEECH_SEED
+ db 4,1,CONFUSE_RAY
+ db 4,4,FIRE_SPIN
+ db 5,1,THUNDERBOLT
+ db 6,1,AURORA_BEAM
+ db 6,3,QUICK_ATTACK
+ db 0
+
+ db $ff
+endc
diff --git a/data/trainer_parties.asm b/data/trainer_parties.asm
new file mode 100755
index 00000000..5b60bb29
--- /dev/null
+++ b/data/trainer_parties.asm
@@ -0,0 +1,592 @@
+TrainerDataPointers: ; 39d3b (e:5d3b)
+ dw YoungsterData,BugCatcherData,LassData,SailorData,JrTrainerMData
+ dw JrTrainerFData,PokemaniacData,SuperNerdData,HikerData,BikerData
+ dw BurglarData,EngineerData,Juggler1Data,FisherData,SwimmerData
+ dw CueBallData,GamblerData,BeautyData,PsychicData,RockerData
+ dw JugglerData,TamerData,BirdKeeperData,BlackbeltData,Green1Data
+ dw ProfOakData,ChiefData,ScientistData,GiovanniData,RocketData
+ dw CooltrainerMData,CooltrainerFData,BrunoData,BrockData,MistyData
+ dw LtSurgeData,ErikaData,KogaData,BlaineData,SabrinaData
+ dw GentlemanData,Green2Data,Green3Data,LoreleiData,ChannelerData
+ dw AgathaData,LanceData
+
+; if first byte != FF, then
+ ; first byte is level (of all pokemon on this team)
+ ; all the next bytes are pokemon species
+ ; null-terminated
+; if first byte == FF, then
+ ; first byte is FF (obviously)
+ ; every next two bytes are a level and species
+ ; null-terminated
+
+YoungsterData: ; 39d99 (e:5d99)
+ db 11,RATTATA,EKANS,0
+ db 14,SPEAROW,0
+ db 10,RATTATA,RATTATA,ZUBAT,0
+ db 14,RATTATA,EKANS,ZUBAT,0
+ db 15,RATTATA,SPEAROW,0
+ db 17,SLOWPOKE,0
+ db 14,EKANS,SANDSHREW,0
+ db 21,NIDORAN_M,0
+ db 21,EKANS,0
+ db 19,SANDSHREW,ZUBAT,0
+ db 17,RATTATA,RATTATA,RATICATE,0
+ db 18,NIDORAN_M,NIDORINO,0
+ db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0
+if _YELLOW
+ db 24,SANDSHREW,0
+endc
+BugCatcherData: ; 39dce (e:5dce)
+if _YELLOW
+ db 7,CATERPIE,CATERPIE,0
+ db 6,METAPOD,CATERPIE,METAPOD,0
+ db 10,CATERPIE,0
+else
+ db 6,WEEDLE,CATERPIE,0
+ db 7,WEEDLE,KAKUNA,WEEDLE,0
+ db 9,WEEDLE,0
+endc
+ db 10,CATERPIE,WEEDLE,CATERPIE,0
+ db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0
+ db 11,CATERPIE,METAPOD,0
+ db 11,WEEDLE,KAKUNA,0
+ db 10,CATERPIE,METAPOD,CATERPIE,0
+ db 14,CATERPIE,WEEDLE,0
+ db 16,WEEDLE,CATERPIE,WEEDLE,0
+ db 20,BUTTERFREE,0
+ db 18,METAPOD,CATERPIE,VENONAT,0
+ db 19,BEEDRILL,BEEDRILL,0
+ db 20,CATERPIE,WEEDLE,VENONAT,0
+if _YELLOW
+ db 8,CATERPIE,METAPOD,0
+endc
+LassData: ; 39e0c (e:5e0c)
+ db 9,PIDGEY,PIDGEY,0
+ db 10,RATTATA,NIDORAN_M,0
+ db 14,JIGGLYPUFF,0
+ db 31,PARAS,PARAS,PARASECT,0
+ db 11,ODDISH,BELLSPROUT,0
+ db 14,CLEFAIRY,0
+ db 16,PIDGEY,NIDORAN_F,0
+ db 14,PIDGEY,NIDORAN_F,0
+ db 15,NIDORAN_M,NIDORAN_F,0
+ db 13,ODDISH,PIDGEY,ODDISH,0
+ db 18,PIDGEY,NIDORAN_F,0
+if _YELLOW
+ db 20,JIGGLYPUFF,0
+else
+ db 18,RATTATA,PIKACHU,0
+endc
+ db 23,NIDORAN_F,NIDORINA,0
+ db 24,MEOWTH,MEOWTH,MEOWTH,0
+if _YELLOW
+ db 19,PIDGEY,RATTATA,NIDORAN_F,MEOWTH,NIDORAN_M,0
+else
+ db 19,PIDGEY,RATTATA,NIDORAN_M,MEOWTH,PIKACHU,0
+endc
+ db 22,CLEFAIRY,CLEFAIRY,0
+ db 23,BELLSPROUT,WEEPINBELL,0
+ db 23,ODDISH,GLOOM,0
+if _YELLOW
+ db 6,NIDORAN_F,NIDORAN_M,0
+endc
+SailorData: ; 39e58 (e:5e58)
+ db 18,MACHOP,SHELLDER,0
+ db 17,MACHOP,TENTACOOL,0
+ db 21,SHELLDER,0
+ db 17,HORSEA,SHELLDER,TENTACOOL,0
+ db 18,TENTACOOL,STARYU,0
+ db 17,HORSEA,HORSEA,HORSEA,0
+ db 20,MACHOP,0
+if _YELLOW
+ db 24,MAGNEMITE,0
+else
+ db 21,PIKACHU,PIKACHU,0
+endc
+JrTrainerMData: ; 39e78 (e:5e78)
+if _YELLOW
+ db 9,DIGLETT,SANDSHREW,0
+else
+ db 11,DIGLETT,SANDSHREW,0
+endc
+ db 14,RATTATA,EKANS,0
+ db 18,MANKEY,0
+ db 20,SQUIRTLE,0
+ db 16,SPEAROW,RATICATE,0
+ db 18,DIGLETT,DIGLETT,SANDSHREW,0
+ db 21,GROWLITHE,CHARMANDER,0
+ db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0
+ db 29,NIDORAN_M,NIDORINO,0
+if _YELLOW
+ db 16,WEEPINBELL,0
+endc
+JrTrainerFData: ; 39e9d (e:5e9d)
+ db 19,GOLDEEN,0
+if _YELLOW
+ db 16,ODDISH,BELLSPROUT,0
+else
+ db 16,RATTATA,PIKACHU,0
+endc
+ db 16,PIDGEY,PIDGEY,PIDGEY,0
+ db 22,BULBASAUR,0
+ db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0
+ db 23,MEOWTH,0
+if _YELLOW
+ db 20,JIGGLYPUFF,CLEFAIRY,0
+else
+ db 20,PIKACHU,CLEFAIRY,0
+endc
+ db 21,PIDGEY,PIDGEOTTO,0
+ db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0
+ db 22,ODDISH,BULBASAUR,0
+ db 24,BULBASAUR,IVYSAUR,0
+if _YELLOW
+ db 24,PIDGEY,MEOWTH,RATTATA,PIDGEY,MEOWTH,0
+else
+ db 24,PIDGEY,MEOWTH,RATTATA,PIKACHU,MEOWTH,0
+endc
+ db 30,POLIWAG,POLIWAG,0
+ db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0
+ db 28,GOLDEEN,POLIWAG,HORSEA,0
+ db 31,GOLDEEN,SEAKING,0
+ db 22,BELLSPROUT,CLEFAIRY,0
+ db 20,MEOWTH,ODDISH,PIDGEY,0
+ db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0
+ db 28,GLOOM,ODDISH,ODDISH,0
+if _YELLOW
+ db 29,PIDGEY,PIDGEOTTO,0
+else
+ db 29,PIKACHU,RAICHU,0
+endc
+ db 33,CLEFAIRY,0
+ db 29,BELLSPROUT,ODDISH,TANGELA,0
+ db 30,TENTACOOL,HORSEA,SEEL,0
+if _YELLOW
+ db 20,CUBONE,0
+endc
+PokemaniacData: ; 39f09 (e:5f09)
+ db 30,RHYHORN,LICKITUNG,0
+ db 20,CUBONE,SLOWPOKE,0
+ db 20,SLOWPOKE,SLOWPOKE,SLOWPOKE,0
+ db 22,CHARMANDER,CUBONE,0
+ db 25,SLOWPOKE,0
+ db 40,CHARMELEON,LAPRAS,LICKITUNG,0
+ db 23,CUBONE,SLOWPOKE,0
+SuperNerdData: ; 39f26 (e:5f26)
+ db 11,MAGNEMITE,VOLTORB,0
+ db 12,GRIMER,VOLTORB,KOFFING,0
+ db 20,VOLTORB,KOFFING,VOLTORB,MAGNEMITE,0
+ db 22,GRIMER,MUK,GRIMER,0
+ db 26,KOFFING,0
+ db 22,KOFFING,MAGNEMITE,WEEZING,0
+ db 20,MAGNEMITE,MAGNEMITE,KOFFING,MAGNEMITE,0
+ db 24,MAGNEMITE,VOLTORB,0
+ db 36,VULPIX,VULPIX,NINETALES,0
+ db 34,PONYTA,CHARMANDER,VULPIX,GROWLITHE,0
+ db 41,RAPIDASH,0
+ db 37,GROWLITHE,VULPIX,0
+HikerData: ; 39f5e (e:5f5e)
+ db 10,GEODUDE,GEODUDE,ONIX,0
+ db 15,MACHOP,GEODUDE,0
+ db 13,GEODUDE,GEODUDE,MACHOP,GEODUDE,0
+ db 17,ONIX,0
+ db 21,GEODUDE,ONIX,0
+ db 20,GEODUDE,MACHOP,GEODUDE,0
+ db 21,GEODUDE,ONIX,0
+ db 19,ONIX,GRAVELER,0
+ db 21,GEODUDE,GEODUDE,GRAVELER,0
+ db 25,GEODUDE,0
+ db 20,MACHOP,ONIX,0
+ db 19,GEODUDE,MACHOP,GEODUDE,GEODUDE,0
+ db 20,ONIX,ONIX,GEODUDE,0
+ db 21,GEODUDE,GRAVELER,0
+BikerData: ; 39f9c (e:5f9c)
+ db 28,KOFFING,KOFFING,KOFFING,0
+ db 29,KOFFING,GRIMER,0
+ db 25,KOFFING,KOFFING,WEEZING,KOFFING,GRIMER,0
+ db 28,KOFFING,GRIMER,WEEZING,0
+ db 29,GRIMER,KOFFING,0
+ db 33,WEEZING,0
+ db 26,GRIMER,GRIMER,GRIMER,GRIMER,0
+ db 28,WEEZING,KOFFING,WEEZING,0
+ db 33,MUK,0
+ db 29,VOLTORB,VOLTORB,0
+ db 29,WEEZING,MUK,0
+ db 25,KOFFING,WEEZING,KOFFING,KOFFING,WEEZING,0
+ db 26,KOFFING,KOFFING,GRIMER,KOFFING,0
+ db 28,GRIMER,GRIMER,KOFFING,0
+ db 29,KOFFING,MUK,0
+BurglarData: ; 39fe4 (e:5fe4)
+ db 29,GROWLITHE,VULPIX,0
+ db 33,GROWLITHE,0
+ db 28,VULPIX,CHARMANDER,PONYTA,0
+ db 36,GROWLITHE,VULPIX,NINETALES,0
+ db 41,PONYTA,0
+ db 37,VULPIX,GROWLITHE,0
+ db 34,CHARMANDER,CHARMELEON,0
+ db 38,NINETALES,0
+ db 34,GROWLITHE,PONYTA,0
+EngineerData: ; 3a007 (e:6007)
+ db 21,VOLTORB,MAGNEMITE,0
+ db 21,MAGNEMITE,0
+ db 18,MAGNEMITE,MAGNEMITE,MAGNETON,0
+Juggler1Data: ; 3a013 (e:6013)
+; none
+FisherData: ; 3a013 (e:6013)
+ db 17,GOLDEEN,TENTACOOL,GOLDEEN,0
+ db 17,TENTACOOL,STARYU,SHELLDER,0
+ db 22,GOLDEEN,POLIWAG,GOLDEEN,0
+ db 24,TENTACOOL,GOLDEEN,0
+ db 27,GOLDEEN,0
+ db 21,POLIWAG,SHELLDER,GOLDEEN,HORSEA,0
+ db 28,SEAKING,GOLDEEN,SEAKING,SEAKING,0
+ db 31,SHELLDER,CLOYSTER,0
+ db 27,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,0
+ db 33,SEAKING,GOLDEEN,0
+ db 24,MAGIKARP,MAGIKARP,0
+SwimmerData: ; 3a049 (e:6049)
+ db 16,HORSEA,SHELLDER,0
+ db 30,TENTACOOL,SHELLDER,0
+ db 29,GOLDEEN,HORSEA,STARYU,0
+ db 30,POLIWAG,POLIWHIRL,0
+ db 27,HORSEA,TENTACOOL,TENTACOOL,GOLDEEN,0
+ db 29,GOLDEEN,SHELLDER,SEAKING,0
+ db 30,HORSEA,HORSEA,0
+ db 27,TENTACOOL,TENTACOOL,STARYU,HORSEA,TENTACRUEL,0
+ db 31,SHELLDER,CLOYSTER,0
+ db 35,STARYU,0
+ db 28,HORSEA,HORSEA,SEADRA,HORSEA,0
+ db 33,SEADRA,TENTACRUEL,0
+ db 37,STARMIE,0
+ db 33,STARYU,WARTORTLE,0
+ db 32,POLIWHIRL,TENTACOOL,SEADRA,0
+CueBallData: ; 3a08d (e:608d)
+ db 28,MACHOP,MANKEY,MACHOP,0
+ db 29,MANKEY,MACHOP,0
+ db 33,MACHOP,0
+ db 29,MANKEY,PRIMEAPE,0
+ db 29,MACHOP,MACHOKE,0
+ db 33,MACHOKE,0
+ db 26,MANKEY,MANKEY,MACHOKE,MACHOP,0
+ db 29,PRIMEAPE,MACHOKE,0
+ db 31,TENTACOOL,TENTACOOL,TENTACRUEL,0
+GamblerData: ; 3a0b3 (e:60b3)
+ db 18,POLIWAG,HORSEA,0
+ db 18,BELLSPROUT,ODDISH,0
+ db 18,VOLTORB,MAGNEMITE,0
+ db 18,GROWLITHE,VULPIX,0
+ db 22,POLIWAG,POLIWAG,POLIWHIRL,0
+ db 22,ONIX,GEODUDE,GRAVELER,0
+ db 24,GROWLITHE,VULPIX,0
+BeautyData: ; 3a0d1 (e:60d1)
+ db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0
+ db 24,BELLSPROUT,BELLSPROUT,0
+ db 26,EXEGGCUTE,0
+if _YELLOW
+ db 27,RATTATA,VULPIX,RATTATA,0
+else
+ db 27,RATTATA,PIKACHU,RATTATA,0
+endc
+ db 29,CLEFAIRY,MEOWTH,0
+ db 35,SEAKING,0
+ db 30,SHELLDER,SHELLDER,CLOYSTER,0
+ db 31,POLIWAG,SEAKING,0
+ db 29,PIDGEOTTO,WIGGLYTUFF,0
+ db 29,BULBASAUR,IVYSAUR,0
+ db 33,WEEPINBELL,BELLSPROUT,WEEPINBELL,0
+ db 27,POLIWAG,GOLDEEN,SEAKING,GOLDEEN,POLIWAG,0
+ db 30,GOLDEEN,SEAKING,0
+ db 29,STARYU,STARYU,STARYU,0
+ db 30,SEADRA,HORSEA,SEADRA,0
+PsychicData: ; 3a115 (e:6115)
+ db 31,KADABRA,SLOWPOKE,MR_MIME,KADABRA,0
+ db 34,MR_MIME,KADABRA,0
+ db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0
+ db 38,SLOWBRO,0
+RockerData: ; 3a127 (e:6127)
+if _YELLOW
+ db 20,VOLTORB,VOLTORB,VOLTORB,0
+else
+ db 20,VOLTORB,MAGNEMITE,VOLTORB,0
+endc
+ db 29,VOLTORB,ELECTRODE,0
+JugglerData: ; 3a130 (e:6130)
+ db 29,KADABRA,MR_MIME,0
+ db 41,DROWZEE,HYPNO,KADABRA,KADABRA,0
+ db 31,DROWZEE,DROWZEE,KADABRA,DROWZEE,0
+ db 34,DROWZEE,HYPNO,0
+ db 48,MR_MIME,0
+ db 33,HYPNO,0
+ db 38,HYPNO,0
+ db 34,DROWZEE,KADABRA,0
+TamerData: ; 3a151 (e:6151)
+ db 34,SANDSLASH,ARBOK,0
+ db 33,ARBOK,SANDSLASH,ARBOK,0
+ db 43,RHYHORN,0
+ db 39,ARBOK,TAUROS,0
+ db 44,PERSIAN,GOLDUCK,0
+ db 42,RHYHORN,PRIMEAPE,ARBOK,TAUROS,0
+BirdKeeperData: ; 3a16b (e:616b)
+ db 29,PIDGEY,PIDGEOTTO,0
+ db 25,SPEAROW,PIDGEY,PIDGEY,SPEAROW,SPEAROW,0
+ db 26,PIDGEY,PIDGEOTTO,SPEAROW,FEAROW,0
+ db 33,FARFETCH_D,0
+ db 29,SPEAROW,FEAROW,0
+ db 26,PIDGEOTTO,FARFETCH_D,DODUO,PIDGEY,0
+ db 28,DODRIO,DODUO,DODUO,0
+ db 29,SPEAROW,FEAROW,0
+ db 34,DODRIO,0
+ db 26,SPEAROW,SPEAROW,FEAROW,SPEAROW,0
+ db 30,FEAROW,FEAROW,PIDGEOTTO,0
+ db 39,PIDGEOTTO,PIDGEOTTO,PIDGEY,PIDGEOTTO,0
+ db 42,FARFETCH_D,FEAROW,0
+ db 28,PIDGEY,DODUO,PIDGEOTTO,0
+ db 26,PIDGEY,SPEAROW,PIDGEY,FEAROW,0
+ db 29,PIDGEOTTO,FEAROW,0
+ db 28,SPEAROW,DODUO,FEAROW,0
+BlackbeltData: ; 3a1be (e:61be)
+ db 37,HITMONLEE,HITMONCHAN,0
+ db 31,MANKEY,MANKEY,PRIMEAPE,0
+ db 32,MACHOP,MACHOKE,0
+ db 36,PRIMEAPE,0
+ db 31,MACHOP,MANKEY,PRIMEAPE,0
+ db 40,MACHOP,MACHOKE,0
+ db 43,MACHOKE,0
+ db 38,MACHOKE,MACHOP,MACHOKE,0
+ db 43,MACHOKE,MACHOP,MACHOKE,0
+Green1Data: ; 3a1e4 (e:61e4)
+if _YELLOW
+ db 5,EEVEE,0
+ db $FF,9,SPEAROW,8,EEVEE,0
+ db $FF,18,SPEAROW,15,SANDSHREW,15,RATTATA,17,EEVEE,0
+else
+ db 5,SQUIRTLE,0
+ db 5,BULBASAUR,0
+ db 5,CHARMANDER,0
+ db $FF,9,PIDGEY,8,SQUIRTLE,0
+ db $FF,9,PIDGEY,8,BULBASAUR,0
+ db $FF,9,PIDGEY,8,CHARMANDER,0
+ db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,SQUIRTLE,0
+ db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,BULBASAUR,0
+ db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,CHARMANDER,0
+endc
+ProfOakData: ; 3a21d (e:621d)
+ db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,BLASTOISE,70,GYARADOS,0
+ db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,VENUSAUR,70,GYARADOS,0
+ db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,CHARIZARD,70,GYARADOS,0
+ChiefData: ; 3a241 (e:6241)
+; none
+ScientistData: ; 3a241 (e:6241)
+ db 34,KOFFING,VOLTORB,0
+ db 26,GRIMER,WEEZING,KOFFING,WEEZING,0
+ db 28,MAGNEMITE,VOLTORB,MAGNETON,0
+ db 29,ELECTRODE,WEEZING,0
+ db 33,ELECTRODE,0
+ db 26,MAGNETON,KOFFING,WEEZING,MAGNEMITE,0
+ db 25,VOLTORB,KOFFING,MAGNETON,MAGNEMITE,KOFFING,0
+ db 29,ELECTRODE,MUK,0
+ db 29,GRIMER,ELECTRODE,0
+ db 28,VOLTORB,KOFFING,MAGNETON,0
+ db 29,MAGNEMITE,KOFFING,0
+ db 33,MAGNEMITE,MAGNETON,VOLTORB,0
+ db 34,MAGNEMITE,ELECTRODE,0
+GiovanniData: ; 3a27e (e:627e)
+if _YELLOW
+ db $FF,25,ONIX,24,RHYHORN,29,PERSIAN,0
+ db $FF,37,NIDORINO,35,PERSIAN,37,RHYHORN,41,NIDOQUEEN,0
+ db $FF,50,DUGTRIO,53,PERSIAN,53,NIDOQUEEN,55,NIDOKING,55,RHYDON,0
+else
+ db $FF,25,ONIX,24,RHYHORN,29,KANGASKHAN,0
+ db $FF,37,NIDORINO,35,KANGASKHAN,37,RHYHORN,41,NIDOQUEEN,0
+ db $FF,45,RHYHORN,42,DUGTRIO,44,NIDOQUEEN,45,NIDOKING,50,RHYDON,0
+endc
+RocketData: ; 3a29c (e:629c)
+ db 13,RATTATA,ZUBAT,0
+ db 11,SANDSHREW,RATTATA,ZUBAT,0
+ db 12,ZUBAT,EKANS,0
+ db 16,RATICATE,0
+ db 17,MACHOP,DROWZEE,0
+ db 15,EKANS,ZUBAT,0
+ db 20,RATICATE,ZUBAT,0
+ db 21,DROWZEE,MACHOP,0
+ db 21,RATICATE,RATICATE,0
+ db 20,GRIMER,KOFFING,KOFFING,0
+ db 19,RATTATA,RATICATE,RATICATE,RATTATA,0
+ db 22,GRIMER,KOFFING,0
+ db 17,ZUBAT,KOFFING,GRIMER,ZUBAT,RATICATE,0
+ db 20,RATTATA,RATICATE,DROWZEE,0
+ db 21,MACHOP,MACHOP,0
+ db 23,SANDSHREW,EKANS,SANDSLASH,0
+ db 23,EKANS,SANDSHREW,ARBOK,0
+ db 21,KOFFING,ZUBAT,0
+ db 25,ZUBAT,ZUBAT,GOLBAT,0
+ db 26,KOFFING,DROWZEE,0
+ db 23,ZUBAT,RATTATA,RATICATE,ZUBAT,0
+ db 26,DROWZEE,KOFFING,0
+ db 29,CUBONE,ZUBAT,0
+ db 25,GOLBAT,ZUBAT,ZUBAT,RATICATE,ZUBAT,0
+ db 28,RATICATE,HYPNO,RATICATE,0
+ db 29,MACHOP,DROWZEE,0
+ db 28,EKANS,ZUBAT,CUBONE,0
+ db 33,ARBOK,0
+ db 33,HYPNO,0
+ db 29,MACHOP,MACHOKE,0
+ db 28,ZUBAT,ZUBAT,GOLBAT,0
+ db 26,RATICATE,ARBOK,KOFFING,GOLBAT,0
+ db 29,CUBONE,CUBONE,0
+ db 29,SANDSHREW,SANDSLASH,0
+ db 26,RATICATE,ZUBAT,GOLBAT,RATTATA,0
+ db 28,WEEZING,GOLBAT,KOFFING,0
+ db 28,DROWZEE,GRIMER,MACHOP,0
+ db 28,GOLBAT,DROWZEE,HYPNO,0
+ db 33,MACHOKE,0
+ db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0
+ db 32,CUBONE,DROWZEE,MAROWAK,0
+if _YELLOW
+JessieJamesData:
+ db 14,EKANS,MEOWTH,KOFFING,0
+ db 25,KOFFING,MEOWTH,EKANS,0
+ db 27,MEOWTH,ARBOK,WEEZING,0
+ db 31,WEEZING,ARBOK,MEOWTH,0
+ db 16,KOFFING,0
+ db 27,KOFFING,0
+ db 29,WEEZING,0
+ db 33,WEEZING,0
+endc
+CooltrainerMData: ; 3a35a (e:635a)
+ db 39,NIDORINO,NIDOKING,0
+ db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0
+ db 43,KINGLER,TENTACRUEL,BLASTOISE,0
+ db 45,KINGLER,STARMIE,0
+ db 42,IVYSAUR,WARTORTLE,CHARMELEON,CHARIZARD,0
+ db 44,IVYSAUR,WARTORTLE,CHARMELEON,0
+ db 49,NIDOKING,0
+ db 44,KINGLER,CLOYSTER,0
+ db 39,SANDSLASH,DUGTRIO,0
+ db 43,RHYHORN,0
+CooltrainerFData: ; 3a385 (e:6385)
+ db 24,WEEPINBELL,GLOOM,IVYSAUR,0
+ db 43,BELLSPROUT,WEEPINBELL,VICTREEBEL,0
+ db 43,PARASECT,DEWGONG,CHANSEY,0
+ db 46,VILEPLUME,BUTTERFREE,0
+ db 44,PERSIAN,NINETALES,0
+ db 45,IVYSAUR,VENUSAUR,0
+ db 45,NIDORINA,NIDOQUEEN,0
+ db 43,PERSIAN,NINETALES,RAICHU,0
+BrunoData: ; 3a3a9 (e:63a9)
+ db $FF,53,ONIX,55,HITMONCHAN,55,HITMONLEE,56,ONIX,58,MACHAMP,0
+BrockData: ; 3a3b5 (e:63b5)
+if _YELLOW
+ db $FF,10,GEODUDE,12,ONIX,0
+else
+ db $FF,12,GEODUDE,14,ONIX,0
+endc
+MistyData: ; 3a3bb (e:63bb)
+ db $FF,18,STARYU,21,STARMIE,0
+LtSurgeData: ; 3a3c1 (e:63c1)
+if _YELLOW
+ db $FF,28,RAICHU,0
+else
+ db $FF,21,VOLTORB,18,PIKACHU,24,RAICHU,0
+endc
+ErikaData: ; 3a3c9 (e:63c9)
+if _YELLOW
+ db $FF,30,TANGELA,32,WEEPINBELL,32,GLOOM,0
+else
+ db $FF,29,VICTREEBEL,24,TANGELA,29,VILEPLUME,0
+endc
+KogaData: ; 3a3d1 (e:63d1)
+if _YELLOW
+ db $FF,44,VENONAT,46,VENONAT,48,VENONAT,50,VENOMOTH,0
+else
+ db $FF,37,KOFFING,39,MUK,37,KOFFING,43,WEEZING,0
+endc
+BlaineData: ; 3a3db (e:63db)
+if _YELLOW
+ db $FF,48,NINETALES,50,RAPIDASH,54,ARCANINE,0
+else
+ db $FF,42,GROWLITHE,40,PONYTA,42,RAPIDASH,47,ARCANINE,0
+endc
+SabrinaData: ; 3a3e5 (e:63e5)
+if _YELLOW
+ db $FF,50,ABRA,50,KADABRA,50,ALAKAZAM,0
+else
+ db $FF,38,KADABRA,37,MR_MIME,38,VENOMOTH,43,ALAKAZAM,0
+endc
+GentlemanData: ; 3a3ef (e:63ef)
+ db 18,GROWLITHE,GROWLITHE,0
+ db 19,NIDORAN_M,NIDORAN_F,0
+if _YELLOW
+ db 22,VOLTORB,MAGNEMITE,0
+else
+ db 23,PIKACHU,0
+endc
+ db 48,PRIMEAPE,0
+ db 17,GROWLITHE,PONYTA,0
+Green2Data: ; 3a401 (e:6401)
+if _YELLOW
+ db $FF,19,SPEAROW,16,RATTATA,18,SANDSHREW,20,EEVEE,0
+ db $FF,25,FEAROW,23,SHELLDER,22,VULPIX,20,SANDSHREW,25,EEVEE,0
+ db $FF,25,FEAROW,23,MAGNEMITE,22,SHELLDER,20,SANDSHREW,25,EEVEE,0
+ db $FF,25,FEAROW,23,VULPIX,22,MAGNEMITE,20,SANDSHREW,25,EEVEE,0
+ db $FF,38,SANDSLASH,35,NINETALES,37,CLOYSTER,35,KADABRA,40,JOLTEON,0
+ db $FF,38,SANDSLASH,35,CLOYSTER,37,MAGNETON,35,KADABRA,40,FLAREON,0
+ db $FF,38,SANDSLASH,35,MAGNETON,37,NINETALES,35,KADABRA,40,VAPOREON,0
+ db $FF,47,SANDSLASH,45,EXEGGCUTE,45,NINETALES,47,CLOYSTER,50,KADABRA,53,JOLTEON,0
+ db $FF,47,SANDSLASH,45,EXEGGCUTE,45,CLOYSTER,47,MAGNETON,50,KADABRA,53,FLAREON,0
+ db $FF,47,SANDSLASH,45,EXEGGCUTE,45,MAGNETON,47,NINETALES,50,KADABRA,53,VAPOREON,0
+else
+ db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,WARTORTLE,0
+ db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,IVYSAUR,0
+ db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,CHARMELEON,0
+ db $FF,25,PIDGEOTTO,23,GROWLITHE,22,EXEGGCUTE,20,KADABRA,25,WARTORTLE,0
+ db $FF,25,PIDGEOTTO,23,GYARADOS,22,GROWLITHE,20,KADABRA,25,IVYSAUR,0
+ db $FF,25,PIDGEOTTO,23,EXEGGCUTE,22,GYARADOS,20,KADABRA,25,CHARMELEON,0
+ db $FF,37,PIDGEOT,38,GROWLITHE,35,EXEGGCUTE,35,ALAKAZAM,40,BLASTOISE,0
+ db $FF,37,PIDGEOT,38,GYARADOS,35,GROWLITHE,35,ALAKAZAM,40,VENUSAUR,0
+ db $FF,37,PIDGEOT,38,EXEGGCUTE,35,GYARADOS,35,ALAKAZAM,40,CHARIZARD,0
+ db $FF,47,PIDGEOT,45,RHYHORN,45,GROWLITHE,47,EXEGGCUTE,50,ALAKAZAM,53,BLASTOISE,0
+ db $FF,47,PIDGEOT,45,RHYHORN,45,GYARADOS,47,GROWLITHE,50,ALAKAZAM,53,VENUSAUR,0
+ db $FF,47,PIDGEOT,45,RHYHORN,45,EXEGGCUTE,47,GYARADOS,50,ALAKAZAM,53,CHARIZARD,0
+endc
+Green3Data: ; 3a491 (e:6491)
+if _YELLOW
+ db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,CLOYSTER,63,NINETALES,65,JOLTEON,0
+ db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,MAGNETON,63,CLOYSTER,65,FLAREON,0
+ db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,NINETALES,63,MAGNETON,65,VAPOREON,0
+else
+ db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,ARCANINE,63,EXEGGUTOR,65,BLASTOISE,0
+ db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,GYARADOS,63,ARCANINE,65,VENUSAUR,0
+ db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,EXEGGUTOR,63,GYARADOS,65,CHARIZARD,0
+endc
+LoreleiData: ; 3a4bb (e:64bb)
+ db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0
+ChannelerData: ; 3a4c7 (e:64c7)
+ db 22,GASTLY,0
+ db 24,GASTLY,0
+ db 23,GASTLY,GASTLY,0
+ db 24,GASTLY,0
+ db 23,GASTLY,0
+ db 24,GASTLY,0
+ db 24,HAUNTER,0
+ db 22,GASTLY,0
+ db 24,GASTLY,0
+ db 23,GASTLY,GASTLY,0
+ db 24,GASTLY,0
+ db 22,GASTLY,0
+ db 24,GASTLY,0
+ db 23,HAUNTER,0
+ db 24,GASTLY,0
+ db 22,GASTLY,0
+ db 24,GASTLY,0
+ db 22,HAUNTER,0
+ db 22,GASTLY,GASTLY,GASTLY,0
+ db 24,GASTLY,0
+ db 24,GASTLY,0
+ db 34,GASTLY,HAUNTER,0
+ db 38,HAUNTER,0
+ db 33,GASTLY,GASTLY,HAUNTER,0
+AgathaData: ; 3a516 (e:6516)
+ db $FF,56,GENGAR,56,GOLBAT,55,HAUNTER,58,ARBOK,60,GENGAR,0
+LanceData: ; 3a522 (e:6522)
+ db $FF,58,GYARADOS,56,DRAGONAIR,56,DRAGONAIR,60,AERODACTYL,62,DRAGONITE,0
diff --git a/data/trainer_types.asm b/data/trainer_types.asm
new file mode 100755
index 00000000..5ad1dbd0
--- /dev/null
+++ b/data/trainer_types.asm
@@ -0,0 +1,17 @@
+FemaleTrainerList:: ; 3434 (0:3434)
+ db $c8+LASS
+ db $c8+JR__TRAINER_F
+ db $c8+BEAUTY
+ db $c8+COOLTRAINER_F
+ db $FF
+
+EvilTrainerList:: ; 3439 (0:3439)
+ db $c8+JUGGLER_X
+ db $c8+GAMBLER
+ db $c8+ROCKER
+ db $c8+JUGGLER
+ db $c8+CHIEF
+ db $c8+SCIENTIST
+ db $c8+GIOVANNI
+ db $c8+ROCKET
+ db $FF
diff --git a/data/type_effects.asm b/data/type_effects.asm
new file mode 100755
index 00000000..b3207c84
--- /dev/null
+++ b/data/type_effects.asm
@@ -0,0 +1,89 @@
+TypeEffects: ; 3e474 (f:6474)
+; format: attacking type, defending type, damage multiplier
+; the multiplier is a (decimal) fixed-point number:
+; 20 is ×2.0
+; 05 is ×0.5
+; 00 is ×0
+ db WATER,FIRE,20
+ db FIRE,GRASS,20
+ db FIRE,ICE,20
+ db GRASS,WATER,20
+ db ELECTRIC,WATER,20
+ db WATER,ROCK,20
+ db GROUND,FLYING,00
+ db WATER,WATER,05
+ db FIRE,FIRE,05
+ db ELECTRIC,ELECTRIC,05
+ db ICE,ICE,05
+ db GRASS,GRASS,05
+ db PSYCHIC,PSYCHIC,05
+ db FIRE,WATER,05
+ db GRASS,FIRE,05
+ db WATER,GRASS,05
+ db ELECTRIC,GRASS,05
+ db NORMAL,ROCK,05
+ db NORMAL,GHOST,00
+ db GHOST,GHOST,20
+ db FIRE,BUG,20
+ db FIRE,ROCK,05
+ db WATER,GROUND,20
+ db ELECTRIC,GROUND,00
+ db ELECTRIC,FLYING,20
+ db GRASS,GROUND,20
+ db GRASS,BUG,05
+ db GRASS,POISON,05
+ db GRASS,ROCK,20
+ db GRASS,FLYING,05
+ db ICE,WATER,05
+ db ICE,GRASS,20
+ db ICE,GROUND,20
+ db ICE,FLYING,20
+ db FIGHTING,NORMAL,20
+ db FIGHTING,POISON,05
+ db FIGHTING,FLYING,05
+ db FIGHTING,PSYCHIC,05
+ db FIGHTING,BUG,05
+ db FIGHTING,ROCK,20
+ db FIGHTING,ICE,20
+ db FIGHTING,GHOST,00
+ db POISON,GRASS,20
+ db POISON,POISON,05
+ db POISON,GROUND,05
+ db POISON,BUG,20
+ db POISON,ROCK,05
+ db POISON,GHOST,05
+ db GROUND,FIRE,20
+ db GROUND,ELECTRIC,20
+ db GROUND,GRASS,05
+ db GROUND,BUG,05
+ db GROUND,ROCK,20
+ db GROUND,POISON,20
+ db FLYING,ELECTRIC,05
+ db FLYING,FIGHTING,20
+ db FLYING,BUG,20
+ db FLYING,GRASS,20
+ db FLYING,ROCK,05
+ db PSYCHIC,FIGHTING,20
+ db PSYCHIC,POISON,20
+ db BUG,FIRE,05
+ db BUG,GRASS,20
+ db BUG,FIGHTING,05
+ db BUG,FLYING,05
+ db BUG,PSYCHIC,20
+ db BUG,GHOST,05
+ db BUG,POISON,20
+ db ROCK,FIRE,20
+ db ROCK,FIGHTING,05
+ db ROCK,GROUND,05
+ db ROCK,FLYING,20
+ db ROCK,BUG,20
+ db ROCK,ICE,20
+ db GHOST,NORMAL,00
+ db GHOST,PSYCHIC,00
+ db FIRE,DRAGON,05
+ db WATER,DRAGON,05
+ db ELECTRIC,DRAGON,05
+ db GRASS,DRAGON,05
+ db ICE,DRAGON,20
+ db DRAGON,DRAGON,20
+ db $FF
diff --git a/data/warp_tile_ids.asm b/data/warp_tile_ids.asm
new file mode 100755
index 00000000..aa725d00
--- /dev/null
+++ b/data/warp_tile_ids.asm
@@ -0,0 +1,85 @@
+WarpTileIDPointers: ; c4cc (3:44cc)
+ dw OverworldWarpTileIDs
+ dw RedsHouse1WarpTileIDs
+ dw MartWarpTileIDs
+ dw ForestWarpTileIDs
+ dw RedsHouse2WarpTileIDs
+ dw DojoWarpTileIDs
+ dw PokecenterWarpTileIDs
+ dw GymWarpTileIDs
+ dw HouseWarpTileIDs
+ dw ForestGateWarpTileIDs
+ dw MuseumWarpTileIDs
+ dw UndergroundWarpTileIDs
+ dw GateWarpTileIDs
+ dw ShipWarpTileIDs
+ dw ShipPortWarpTileIDs
+ dw CemeteryWarpTileIDs
+ dw InteriorWarpTileIDs
+ dw CavernWarpTileIDs
+ dw LobbyWarpTileIDs
+ dw MansionWarpTileIDs
+ dw LabWarpTileIDs
+ dw ClubWarpTileIDs
+ dw FacilityWarpTileIDs
+ dw PlateauWarpTileIDs
+
+OverworldWarpTileIDs: ; c4fc (3:44fc)
+ db $1B,$58,$FF
+
+ForestGateWarpTileIDs: ; c4ff (3:44ff)
+MuseumWarpTileIDs: ; c4ff (3:44ff)
+GateWarpTileIDs: ; c4ff (3:44ff)
+ db $3B
+
+RedsHouse1WarpTileIDs: ; c500 (3:4500)
+RedsHouse2WarpTileIDs: ; c500 (3:4500)
+ db $1A,$1C,$FF
+
+MartWarpTileIDs: ; c503 (3:4503)
+PokecenterWarpTileIDs: ; c503 (3:4503)
+ db $5E,$FF
+
+ForestWarpTileIDs: ; c505 (3:4505)
+ db $5A,$5C,$3A,$FF
+
+DojoWarpTileIDs: ; c509 (3:4509)
+GymWarpTileIDs: ; c509 (3:4509)
+ db $4A,$FF
+
+HouseWarpTileIDs: ; c50b (3:450b)
+ db $54,$5C,$32,$FF
+
+ShipWarpTileIDs: ; c50f (3:450f)
+ db $37,$39,$1E,$4A,$FF
+
+InteriorWarpTileIDs: ; c514 (3:4514)
+ db $15,$55,$04,$FF
+
+CavernWarpTileIDs: ; c518 (3:4518)
+ db $18,$1A,$22,$FF
+
+LobbyWarpTileIDs: ; c51c (3:451c)
+ db $1A,$1C,$38,$FF
+
+MansionWarpTileIDs: ; c520 (3:4520)
+ db $1A,$1C,$53,$FF
+
+LabWarpTileIDs: ; c524 (3:4524)
+ db $34,$FF
+
+FacilityWarpTileIDs: ; c526 (3:4526)
+ db $43,$58,$20
+
+CemeteryWarpTileIDs: ; c529 (3:4529)
+ db $1B
+
+UndergroundWarpTileIDs: ; c52a (3:452a)
+ db $13,$FF
+
+PlateauWarpTileIDs: ; c52c (3:452c)
+ db $1B,$3B
+
+ShipPortWarpTileIDs: ; c52e (3:452e)
+ClubWarpTileIDs: ; c52e (3:452e)
+ db $FF
diff --git a/data/wildPokemon/diglettscave.asm b/data/wildPokemon/diglettscave.asm
new file mode 100755
index 00000000..0b8ec1c7
--- /dev/null
+++ b/data/wildPokemon/diglettscave.asm
@@ -0,0 +1,14 @@
+CaveMons:
+ db $14
+ db 18,DIGLETT
+ db 19,DIGLETT
+ db 17,DIGLETT
+ db 20,DIGLETT
+ db 16,DIGLETT
+ db 15,DIGLETT
+ db 21,DIGLETT
+ db 22,DIGLETT
+ db 29,DUGTRIO
+ db 31,DUGTRIO
+ db $00
+
diff --git a/data/wildPokemon/fishinggroup1.asm b/data/wildPokemon/fishinggroup1.asm
new file mode 100755
index 00000000..32dacef7
--- /dev/null
+++ b/data/wildPokemon/fishinggroup1.asm
@@ -0,0 +1,4 @@
+FishingGroup1: ; e97d (3:697d)
+ db 2
+ db 15,TENTACOOL
+ db 15,POLIWAG
diff --git a/data/wildPokemon/fishinggroup10.asm b/data/wildPokemon/fishinggroup10.asm
new file mode 100755
index 00000000..5b815af4
--- /dev/null
+++ b/data/wildPokemon/fishinggroup10.asm
@@ -0,0 +1,6 @@
+FishingGroup10: ; e9bc (3:69bc)
+ db 4
+ db 23,SEAKING
+ db 15,KRABBY
+ db 15,GOLDEEN
+ db 15,MAGIKARP
diff --git a/data/wildPokemon/fishinggroup2.asm b/data/wildPokemon/fishinggroup2.asm
new file mode 100755
index 00000000..758db30a
--- /dev/null
+++ b/data/wildPokemon/fishinggroup2.asm
@@ -0,0 +1,4 @@
+FishingGroup2: ; e982 (3:6982)
+ db 2
+ db 15,GOLDEEN
+ db 15,POLIWAG
diff --git a/data/wildPokemon/fishinggroup3.asm b/data/wildPokemon/fishinggroup3.asm
new file mode 100755
index 00000000..2c1911fa
--- /dev/null
+++ b/data/wildPokemon/fishinggroup3.asm
@@ -0,0 +1,5 @@
+FishingGroup3: ; e987 (3:6987)
+ db 3
+ db 15,PSYDUCK
+ db 15,GOLDEEN
+ db 15,KRABBY
diff --git a/data/wildPokemon/fishinggroup4.asm b/data/wildPokemon/fishinggroup4.asm
new file mode 100755
index 00000000..ae9a73ed
--- /dev/null
+++ b/data/wildPokemon/fishinggroup4.asm
@@ -0,0 +1,4 @@
+FishingGroup4: ; e98e (3:698e)
+ db 2
+ db 15,KRABBY
+ db 15,SHELLDER
diff --git a/data/wildPokemon/fishinggroup5.asm b/data/wildPokemon/fishinggroup5.asm
new file mode 100755
index 00000000..ad856b27
--- /dev/null
+++ b/data/wildPokemon/fishinggroup5.asm
@@ -0,0 +1,4 @@
+FishingGroup5: ; e993 (3:6993)
+ db 2
+ db 23,POLIWHIRL
+ db 15,SLOWPOKE
diff --git a/data/wildPokemon/fishinggroup6.asm b/data/wildPokemon/fishinggroup6.asm
new file mode 100755
index 00000000..581060d4
--- /dev/null
+++ b/data/wildPokemon/fishinggroup6.asm
@@ -0,0 +1,6 @@
+FishingGroup6: ; e998 (3:6998)
+ db 4
+ db 15,DRATINI
+ db 15,KRABBY
+ db 15,PSYDUCK
+ db 15,SLOWPOKE
diff --git a/data/wildPokemon/fishinggroup7.asm b/data/wildPokemon/fishinggroup7.asm
new file mode 100755
index 00000000..69c3fc25
--- /dev/null
+++ b/data/wildPokemon/fishinggroup7.asm
@@ -0,0 +1,6 @@
+FishingGroup7: ; e9a1 (3:69a1)
+ db 4
+ db 5,TENTACOOL
+ db 15,KRABBY
+ db 15,GOLDEEN
+ db 15,MAGIKARP
diff --git a/data/wildPokemon/fishinggroup8.asm b/data/wildPokemon/fishinggroup8.asm
new file mode 100755
index 00000000..04cc1632
--- /dev/null
+++ b/data/wildPokemon/fishinggroup8.asm
@@ -0,0 +1,6 @@
+FishingGroup8: ; e9aa (3:69aa)
+ db 4
+ db 15,STARYU
+ db 15,HORSEA
+ db 15,SHELLDER
+ db 15,GOLDEEN
diff --git a/data/wildPokemon/fishinggroup9.asm b/data/wildPokemon/fishinggroup9.asm
new file mode 100755
index 00000000..8c02cd00
--- /dev/null
+++ b/data/wildPokemon/fishinggroup9.asm
@@ -0,0 +1,6 @@
+FishingGroup9: ; e9b3 (3:69b3)
+ db 4
+ db 23,SLOWBRO
+ db 23,SEAKING
+ db 23,KINGLER
+ db 23,SEADRA
diff --git a/data/wildPokemon/mansion1.asm b/data/wildPokemon/mansion1.asm
new file mode 100755
index 00000000..0a333398
--- /dev/null
+++ b/data/wildPokemon/mansion1.asm
@@ -0,0 +1,43 @@
+MansionMons1:
+ db $0A
+ IF _RED
+ db 32,KOFFING
+ db 30,KOFFING
+ db 34,PONYTA
+ db 30,PONYTA
+ db 34,GROWLITHE
+ db 32,PONYTA
+ db 30,GRIMER
+ db 28,PONYTA
+ db 37,WEEZING
+ db 39,MUK
+ ENDC
+
+ IF _GREEN || _BLUE
+ db 32,GRIMER
+ db 30,GRIMER
+ db 34,PONYTA
+ db 30,PONYTA
+ db 34,VULPIX
+ db 32,PONYTA
+ db 30,KOFFING
+ db 28,PONYTA
+ db 37,MUK
+ db 39,WEEZING
+ ENDC
+
+ IF _YELLOW
+ db 34,RATTATA
+ db 34,RATICATE
+ db 23,GRIMER
+ db 26,GROWLITHE
+ db 37,RATTATA
+ db 37,RATICATE
+ db 30,GROWLITHE
+ db 26,GRIMER
+ db 34,GROWLITHE
+ db 38,GROWLITHE
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/mansion2.asm b/data/wildPokemon/mansion2.asm
new file mode 100755
index 00000000..07ddc947
--- /dev/null
+++ b/data/wildPokemon/mansion2.asm
@@ -0,0 +1,56 @@
+MansionMons2:
+ db $0A
+ IF _RED
+ db 32,GROWLITHE
+ db 34,KOFFING
+ db 34,KOFFING
+ db 30,PONYTA
+ db 30,KOFFING
+ db 32,PONYTA
+ db 30,GRIMER
+ db 28,PONYTA
+ db 39,WEEZING
+ db 37,MUK
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 32,VULPIX
+ db 34,GRIMER
+ db 34,GRIMER
+ db 30,PONYTA
+ db 30,GRIMER
+ db 32,PONYTA
+ db 30,KOFFING
+ db 28,PONYTA
+ db 39,MUK
+ db 37,WEEZING
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 32,GROWLITHE
+ db 34,GRIMER
+ db 34,GRIMER
+ db 30,PONYTA
+ db 30,GRIMER
+ db 32,PONYTA
+ db 30,KOFFING
+ db 28,PONYTA
+ db 39,MUK
+ db 37,WEEZING
+ ENDC
+
+ IF _YELLOW
+ db 37,RATTATA
+ db 37,RATICATE
+ db 26,GRIMER
+ db 29,GRIMER
+ db 40,RATTATA
+ db 40,RATICATE
+ db 32,GRIMER
+ db 35,GRIMER
+ db 35,MUK
+ db 38,MUK
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/mansion3.asm b/data/wildPokemon/mansion3.asm
new file mode 100755
index 00000000..c0df4020
--- /dev/null
+++ b/data/wildPokemon/mansion3.asm
@@ -0,0 +1,56 @@
+MansionMons3:
+ db $0A
+ IF _RED
+ db 31,KOFFING
+ db 33,GROWLITHE
+ db 35,KOFFING
+ db 32,PONYTA
+ db 34,PONYTA
+ db 40,WEEZING
+ db 34,GRIMER
+ db 38,WEEZING
+ db 36,PONYTA
+ db 42,MUK
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 31,GRIMER
+ db 33,VULPIX
+ db 35,GRIMER
+ db 32,PONYTA
+ db 34,MAGMAR
+ db 40,MUK
+ db 34,KOFFING
+ db 38,MUK
+ db 36,PONYTA
+ db 42,WEEZING
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 31,GRIMER
+ db 33,GROWLITHE
+ db 35,GRIMER
+ db 32,PONYTA
+ db 34,PONYTA
+ db 40,MUK
+ db 34,KOFFING
+ db 38,MUK
+ db 36,PONYTA
+ db 42,WEEZING
+ ENDC
+
+ IF _YELLOW
+ db 40,RATTATA
+ db 40,RATICATE
+ db 32,GRIMER
+ db 35,GRIMER
+ db 43,RATTATA
+ db 43,RATICATE
+ db 38,GRIMER
+ db 38,GRIMER
+ db 38,MUK
+ db 41,MUK
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/mansionb1.asm b/data/wildPokemon/mansionb1.asm
new file mode 100755
index 00000000..9b90d211
--- /dev/null
+++ b/data/wildPokemon/mansionb1.asm
@@ -0,0 +1,56 @@
+MansionMonsB1:
+ db $0A
+ IF _RED
+ db 33,KOFFING
+ db 31,KOFFING
+ db 35,GROWLITHE
+ db 32,PONYTA
+ db 31,KOFFING
+ db 40,WEEZING
+ db 34,PONYTA
+ db 35,GRIMER
+ db 42,WEEZING
+ db 42,MUK
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 33,GRIMER
+ db 31,GRIMER
+ db 35,VULPIX
+ db 32,PONYTA
+ db 31,GRIMER
+ db 40,MUK
+ db 34,PONYTA
+ db 35,KOFFING
+ db 38,MAGMAR
+ db 42,WEEZING
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 33,GRIMER
+ db 31,GRIMER
+ db 35,GROWLITHE
+ db 32,PONYTA
+ db 31,GRIMER
+ db 40,MUK
+ db 34,PONYTA
+ db 35,KOFFING
+ db 38,MUK
+ db 42,WEEZING
+ ENDC
+
+ IF _YELLOW
+ db 35,GRIMER
+ db 38,GRIMER
+ db 37,RATICATE
+ db 40,RATICATE
+ db 41,MUK
+ db 43,RATICATE
+ db 24,DITTO
+ db 46,RATICATE
+ db 18,DITTO
+ db 12,DITTO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/mtmoon1.asm b/data/wildPokemon/mtmoon1.asm
new file mode 100755
index 00000000..3f69ae3f
--- /dev/null
+++ b/data/wildPokemon/mtmoon1.asm
@@ -0,0 +1,28 @@
+MoonMons1:
+ db $0A
+ IF !_YELLOW
+ db 8,ZUBAT
+ db 7,ZUBAT
+ db 9,ZUBAT
+ db 8,GEODUDE
+ db 6,ZUBAT
+ db 10,ZUBAT
+ db 10,GEODUDE
+ db 8,PARAS
+ db 11,ZUBAT
+ db 8,CLEFAIRY
+ ENDC
+ IF _YELLOW
+ db 8,ZUBAT
+ db 9,ZUBAT
+ db 10,GEODUDE
+ db 6,ZUBAT
+ db 7,ZUBAT
+ db 10,ZUBAT
+ db 10,GEODUDE
+ db 11,ZUBAT
+ db 12,SANDSHREW
+ db 11,CLEFAIRY
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/mtmoonb1.asm b/data/wildPokemon/mtmoonb1.asm
new file mode 100755
index 00000000..30d9a4ce
--- /dev/null
+++ b/data/wildPokemon/mtmoonb1.asm
@@ -0,0 +1,28 @@
+MoonMonsB1:
+ db $0A
+ IF !_YELLOW
+ db 8,ZUBAT
+ db 7,ZUBAT
+ db 7,GEODUDE
+ db 8,GEODUDE
+ db 9,ZUBAT
+ db 10,PARAS
+ db 10,ZUBAT
+ db 11,ZUBAT
+ db 9,CLEFAIRY
+ db 9,GEODUDE
+ ENDC
+ IF _YELLOW
+ db 8,ZUBAT
+ db 9,ZUBAT
+ db 10,GEODUDE
+ db 6,ZUBAT
+ db 7,ZUBAT
+ db 10,ZUBAT
+ db 10,GEODUDE
+ db 11,ZUBAT
+ db 12,SANDSHREW
+ db 11,CLEFAIRY
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/mtmoonb2.asm b/data/wildPokemon/mtmoonb2.asm
new file mode 100755
index 00000000..36266724
--- /dev/null
+++ b/data/wildPokemon/mtmoonb2.asm
@@ -0,0 +1,28 @@
+MoonMonsB2:
+ db $0A
+ IF !_YELLOW
+ db 9,ZUBAT
+ db 9,GEODUDE
+ db 10,ZUBAT
+ db 10,GEODUDE
+ db 11,ZUBAT
+ db 10,PARAS
+ db 12,PARAS
+ db 10,CLEFAIRY
+ db 12,ZUBAT
+ db 12,CLEFAIRY
+ ENDC
+ IF _YELLOW
+ db 10,ZUBAT
+ db 11,GEODUDE
+ db 13,PARAS
+ db 11,ZUBAT
+ db 11,ZUBAT
+ db 12,ZUBAT
+ db 13,ZUBAT
+ db 9,CLEFAIRY
+ db 11,CLEFAIRY
+ db 13,CLEFAIRY
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/nomons.asm b/data/wildPokemon/nomons.asm
new file mode 100755
index 00000000..895cf2e0
--- /dev/null
+++ b/data/wildPokemon/nomons.asm
@@ -0,0 +1,4 @@
+NoMons:
+ db $00
+ db $00
+
diff --git a/data/wildPokemon/pokemontower1.asm b/data/wildPokemon/pokemontower1.asm
new file mode 100755
index 00000000..bdf0abc1
--- /dev/null
+++ b/data/wildPokemon/pokemontower1.asm
@@ -0,0 +1,4 @@
+TowerMons1:
+ db $00
+ db $00
+
diff --git a/data/wildPokemon/pokemontower2.asm b/data/wildPokemon/pokemontower2.asm
new file mode 100755
index 00000000..1d0eddaf
--- /dev/null
+++ b/data/wildPokemon/pokemontower2.asm
@@ -0,0 +1,4 @@
+TowerMons2:
+ db $00
+ db $00
+
diff --git a/data/wildPokemon/pokemontower3.asm b/data/wildPokemon/pokemontower3.asm
new file mode 100755
index 00000000..7d1abf59
--- /dev/null
+++ b/data/wildPokemon/pokemontower3.asm
@@ -0,0 +1,31 @@
+TowerMons3:
+ db $0A
+
+ IF !_YELLOW
+ db 20,GASTLY
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 19,GASTLY
+ db 18,GASTLY
+ db 24,GASTLY
+ db 20,CUBONE
+ db 22,CUBONE
+ db 25,HAUNTER
+ ENDC
+
+ IF _YELLOW
+ db 20,GASTLY
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 24,GASTLY
+ db 19,GASTLY
+ db 18,GASTLY
+ db 25,GASTLY
+ db 20,HAUNTER
+ db 25,HAUNTER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/pokemontower4.asm b/data/wildPokemon/pokemontower4.asm
new file mode 100755
index 00000000..462e5034
--- /dev/null
+++ b/data/wildPokemon/pokemontower4.asm
@@ -0,0 +1,31 @@
+TowerMons4:
+ db $0A
+
+ IF !_YELLOW
+ db 20,GASTLY
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 19,GASTLY
+ db 18,GASTLY
+ db 25,HAUNTER
+ db 20,CUBONE
+ db 22,CUBONE
+ db 24,GASTLY
+ ENDC
+
+ IF _YELLOW
+ db 20,GASTLY
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 24,GASTLY
+ db 19,GASTLY
+ db 18,GASTLY
+ db 25,GASTLY
+ db 20,HAUNTER
+ db 25,HAUNTER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/pokemontower5.asm b/data/wildPokemon/pokemontower5.asm
new file mode 100755
index 00000000..6976937a
--- /dev/null
+++ b/data/wildPokemon/pokemontower5.asm
@@ -0,0 +1,31 @@
+TowerMons5:
+ db $0A
+
+ IF !_YELLOW
+ db 20,GASTLY
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 19,GASTLY
+ db 18,GASTLY
+ db 25,HAUNTER
+ db 20,CUBONE
+ db 22,CUBONE
+ db 24,GASTLY
+ ENDC
+
+ IF _YELLOW
+ db 22,GASTLY
+ db 23,GASTLY
+ db 24,GASTLY
+ db 25,GASTLY
+ db 26,GASTLY
+ db 21,GASTLY
+ db 20,CUBONE
+ db 27,GASTLY
+ db 22,HAUNTER
+ db 27,HAUNTER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/pokemontower6.asm b/data/wildPokemon/pokemontower6.asm
new file mode 100755
index 00000000..4f2d9594
--- /dev/null
+++ b/data/wildPokemon/pokemontower6.asm
@@ -0,0 +1,31 @@
+TowerMons6:
+ db $0F
+
+ IF !_YELLOW
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 24,GASTLY
+ db 20,GASTLY
+ db 19,GASTLY
+ db 26,HAUNTER
+ db 22,CUBONE
+ db 24,CUBONE
+ db 28,HAUNTER
+ ENDC
+
+ IF _YELLOW
+ db 22,GASTLY
+ db 23,GASTLY
+ db 24,GASTLY
+ db 25,GASTLY
+ db 26,GASTLY
+ db 21,GASTLY
+ db 22,CUBONE
+ db 27,GASTLY
+ db 22,HAUNTER
+ db 27,HAUNTER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/pokemontower7.asm b/data/wildPokemon/pokemontower7.asm
new file mode 100755
index 00000000..6c9afbd4
--- /dev/null
+++ b/data/wildPokemon/pokemontower7.asm
@@ -0,0 +1,32 @@
+TowerMons7:
+ db $0F
+
+ IF !_YELLOW
+ db 21,GASTLY
+ db 22,GASTLY
+ db 23,GASTLY
+ db 24,GASTLY
+ db 20,GASTLY
+ db 28,HAUNTER
+ db 22,CUBONE
+ db 24,CUBONE
+ db 28,HAUNTER
+ db 30,HAUNTER
+
+ ENDC
+
+ IF _YELLOW
+ db 24,GASTLY
+ db 25,GASTLY
+ db 26,GASTLY
+ db 27,GASTLY
+ db 28,GASTLY
+ db 23,GASTLY
+ db 24,CUBONE
+ db 29,GASTLY
+ db 24,HAUNTER
+ db 29,HAUNTER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/powerplant.asm b/data/wildPokemon/powerplant.asm
new file mode 100755
index 00000000..741232c3
--- /dev/null
+++ b/data/wildPokemon/powerplant.asm
@@ -0,0 +1,37 @@
+PowerPlantMons:
+ db $0A
+ IF !_YELLOW
+
+ db 21,VOLTORB
+ db 21,MAGNEMITE
+ db 20,PIKACHU
+ db 24,PIKACHU
+ db 23,MAGNEMITE
+ db 23,VOLTORB
+ db 32,MAGNETON
+ db 35,MAGNETON
+ IF _RED
+ db 33,ELECTABUZZ
+ db 36,ELECTABUZZ
+ ENDC
+ IF _GREEN || _BLUE
+ db 33,RAICHU
+ db 36,RAICHU
+ ENDC
+ ENDC
+
+ IF _YELLOW
+ db 30,MAGNEMITE
+ db 35,MAGNEMITE
+ db 33,MAGNETON
+ db 33,VOLTORB
+ db 37,VOLTORB
+ db 33,GRIMER
+ db 37,GRIMER
+ db 38,MAGNETON
+ db 33,MUK
+ db 37,MUK
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/rocktunnel1.asm b/data/wildPokemon/rocktunnel1.asm
new file mode 100755
index 00000000..20416c5f
--- /dev/null
+++ b/data/wildPokemon/rocktunnel1.asm
@@ -0,0 +1,36 @@
+TunnelMonsB1:
+ db $0F
+
+ IF !_YELLOW
+ db 16,ZUBAT
+ db 17,ZUBAT
+ db 17,GEODUDE
+ db 15,MACHOP
+ db 16,GEODUDE
+ IF _RED || _GREEN || (_BLUE && !_JAPAN)
+ db 18,ZUBAT
+ ENDC
+ IF (_BLUE && _JAPAN)
+ db 18,DITTO
+ ENDC
+ db 15,ZUBAT
+ db 17,MACHOP
+ db 13,ONIX
+ db 15,ONIX
+ ENDC
+
+ IF _YELLOW
+ db 15,ZUBAT
+ db 16,GEODUDE
+ db 17,ZUBAT
+ db 19,ZUBAT
+ db 18,GEODUDE
+ db 20,GEODUDE
+ db 21,ZUBAT
+ db 17,MACHOP
+ db 19,MACHOP
+ db 21,MACHOP
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/rocktunnel2.asm b/data/wildPokemon/rocktunnel2.asm
new file mode 100755
index 00000000..b1ca24fd
--- /dev/null
+++ b/data/wildPokemon/rocktunnel2.asm
@@ -0,0 +1,35 @@
+TunnelMonsB2:
+ db $0F
+ IF !_YELLOW
+ db 16,ZUBAT
+ db 17,ZUBAT
+ db 17,GEODUDE
+ db 15,MACHOP
+ db 16,GEODUDE
+ IF _RED || _GREEN || (_BLUE && !_JAPAN)
+ db 18,ZUBAT
+ ENDC
+ IF (_BLUE && _JAPAN)
+ db 18,DITTO
+ ENDC
+ db 17,MACHOP
+ db 17,ONIX
+ db 13,ONIX
+ db 18,GEODUDE
+ ENDC
+
+ IF _YELLOW
+ db 20,ZUBAT
+ db 17,GEODUDE
+ db 18,MACHOP
+ db 21,ZUBAT
+ db 22,ZUBAT
+ db 21,GEODUDE
+ db 20,MACHOP
+ db 14,ONIX
+ db 18,ONIX
+ db 22,ONIX
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route1.asm b/data/wildPokemon/route1.asm
new file mode 100755
index 00000000..94469880
--- /dev/null
+++ b/data/wildPokemon/route1.asm
@@ -0,0 +1,28 @@
+Route1Mons:
+ db $19
+ IF !_YELLOW
+ db 3,PIDGEY
+ db 3,RATTATA
+ db 3,RATTATA
+ db 2,RATTATA
+ db 2,PIDGEY
+ db 3,PIDGEY
+ db 3,PIDGEY
+ db 4,RATTATA
+ db 4,PIDGEY
+ db 5,PIDGEY
+ ENDC
+ IF _YELLOW
+ db 3,PIDGEY
+ db 4,PIDGEY
+ db 2,RATTATA
+ db 3,RATTATA
+ db 2,PIDGEY
+ db 3,PIDGEY
+ db 5,PIDGEY
+ db 4,RATTATA
+ db 6,PIDGEY
+ db 7,PIDGEY
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/route10.asm b/data/wildPokemon/route10.asm
new file mode 100755
index 00000000..69651380
--- /dev/null
+++ b/data/wildPokemon/route10.asm
@@ -0,0 +1,44 @@
+Route10Mons:
+ db $0F
+
+ IF _RED
+ db 16,VOLTORB
+ db 16,SPEAROW
+ db 14,VOLTORB
+ db 11,EKANS
+ db 13,SPEAROW
+ db 15,EKANS
+ db 17,VOLTORB
+ db 17,SPEAROW
+ db 13,EKANS
+ db 17,EKANS
+ ENDC
+
+ IF !_RED
+ db 16,VOLTORB
+ db 16,SPEAROW
+ db 14,VOLTORB
+ db 11,SANDSHREW
+ db 13,SPEAROW
+ db 15,SANDSHREW
+ db 17,VOLTORB
+ db 17,SPEAROW
+ db 13,SANDSHREW
+ db 17,SANDSHREW
+ ENDC
+
+ IF _YELLOW
+ db 16,MAGNEMITE
+ db 18,RATTATA
+ db 18,MAGNEMITE
+ db 20,MAGNEMITE
+ db 17,NIDORAN_M
+ db 17,NIDORAN_F
+ db 22,MAGNEMITE
+ db 20,RATICATE
+ db 16,MACHOP
+ db 18,MACHOP
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route11.asm b/data/wildPokemon/route11.asm
new file mode 100755
index 00000000..afe72dd2
--- /dev/null
+++ b/data/wildPokemon/route11.asm
@@ -0,0 +1,44 @@
+Route11Mons:
+ db $0F
+
+ IF _RED
+ db 14,EKANS
+ db 15,SPEAROW
+ db 12,EKANS
+ db 9,DROWZEE
+ db 13,SPEAROW
+ db 13,DROWZEE
+ db 15,EKANS
+ db 17,SPEAROW
+ db 11,DROWZEE
+ db 15,DROWZEE
+ ENDC
+
+ IF _GREEN || _BLUE
+ db 14,SANDSHREW
+ db 15,SPEAROW
+ db 12,SANDSHREW
+ db 9,DROWZEE
+ db 13,SPEAROW
+ db 13,DROWZEE
+ db 15,SANDSHREW
+ db 17,SPEAROW
+ db 11,DROWZEE
+ db 15,DROWZEE
+ ENDC
+
+ IF _YELLOW
+ db 16,PIDGEY
+ db 15,RATTATA
+ db 18,PIDGEY
+ db 15,DROWZEE
+ db 17,RATTATA
+ db 17,DROWZEE
+ db 18,PIDGEOTTO
+ db 20,PIDGEOTTO
+ db 19,DROWZEE
+ db 17,RATICATE
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route12.asm b/data/wildPokemon/route12.asm
new file mode 100755
index 00000000..e16b407b
--- /dev/null
+++ b/data/wildPokemon/route12.asm
@@ -0,0 +1,56 @@
+Route12Mons:
+ db $0F
+
+ IF _RED || (_JAPAN && _BLUE)
+ db 24,ODDISH
+ db 25,PIDGEY
+ db 23,PIDGEY
+ db 24,VENONAT
+ db 22,ODDISH
+ db 26,VENONAT
+ db 26,ODDISH
+ db 27,PIDGEY
+ db 28,GLOOM
+ db 30,GLOOM
+ db $00
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 24,BELLSPROUT
+ db 25,PIDGEY
+ db 23,PIDGEY
+ db 24,VENONAT
+ db 22,BELLSPROUT
+ db 26,VENONAT
+ db 26,BELLSPROUT
+ db 27,PIDGEY
+ db 28,WEEPINBELL
+ db 30,WEEPINBELL
+ db $00
+ ENDC
+
+ IF _YELLOW
+ db 25,ODDISH
+ db 25,BELLSPROUT
+ db 28,PIDGEY
+ db 28,PIDGEOTTO
+ db 27,ODDISH
+ db 27,BELLSPROUT
+ db 29,GLOOM
+ db 29,WEEPINBELL
+ db 26,FARFETCH_D
+ db 31,FARFETCH_D
+
+ db $03
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWBRO
+ db 20,SLOWBRO
+ ENDC
+
diff --git a/data/wildPokemon/route13.asm b/data/wildPokemon/route13.asm
new file mode 100755
index 00000000..96e53229
--- /dev/null
+++ b/data/wildPokemon/route13.asm
@@ -0,0 +1,57 @@
+Route13Mons:
+ IF _RED || (_JAPAN && _BLUE)
+ db $14
+ db 24,ODDISH
+ db 25,PIDGEY
+ db 27,PIDGEY
+ db 24,VENONAT
+ db 22,ODDISH
+ db 26,VENONAT
+ db 26,ODDISH
+ db 25,DITTO
+ db 28,GLOOM
+ db 30,GLOOM
+ db $00
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db $14
+ db 24,BELLSPROUT
+ db 25,PIDGEY
+ db 27,PIDGEY
+ db 24,VENONAT
+ db 22,BELLSPROUT
+ db 26,VENONAT
+ db 26,BELLSPROUT
+ db 25,DITTO
+ db 28,WEEPINBELL
+ db 30,WEEPINBELL
+ db $00
+ ENDC
+
+ IF _YELLOW
+ db $0F
+ db 25,ODDISH
+ db 25,BELLSPROUT
+ db 28,PIDGEOTTO
+ db 28,PIDGEY
+ db 27,ODDISH
+ db 27,BELLSPROUT
+ db 29,GLOOM
+ db 29,WEEPINBELL
+ db 26,FARFETCH_D
+ db 31,FARFETCH_D
+
+ db $03
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWPOKE
+ db 15,SLOWBRO
+ db 20,SLOWBRO
+ ENDC
+
diff --git a/data/wildPokemon/route14.asm b/data/wildPokemon/route14.asm
new file mode 100755
index 00000000..c3e0743b
--- /dev/null
+++ b/data/wildPokemon/route14.asm
@@ -0,0 +1,43 @@
+Route14Mons:
+ db $0F
+ IF _RED || (_JAPAN && _BLUE)
+ db 24,ODDISH
+ db 26,PIDGEY
+ db 23,DITTO
+ db 24,VENONAT
+ db 22,ODDISH
+ db 26,VENONAT
+ db 26,ODDISH
+ db 30,GLOOM
+ db 28,PIDGEOTTO
+ db 30,PIDGEOTTO
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 24,BELLSPROUT
+ db 26,PIDGEY
+ db 23,DITTO
+ db 24,VENONAT
+ db 22,BELLSPROUT
+ db 26,VENONAT
+ db 26,BELLSPROUT
+ db 30,WEEPINBELL
+ db 28,PIDGEOTTO
+ db 30,PIDGEOTTO
+ ENDC
+
+ IF _YELLOW
+ db 26,ODDISH
+ db 26,BELLSPROUT
+ db 24,VENONAT
+ db 30,PIDGEOTTO
+ db 28,ODDISH
+ db 28,BELLSPROUT
+ db 30,GLOOM
+ db 30,WEEPINBELL
+ db 27,VENONAT
+ db 30,VENOMOTH
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route15.asm b/data/wildPokemon/route15.asm
new file mode 100755
index 00000000..a8215cd3
--- /dev/null
+++ b/data/wildPokemon/route15.asm
@@ -0,0 +1,43 @@
+Route15Mons:
+ db $0F
+ IF _RED || (_JAPAN && _BLUE)
+ db 24,ODDISH
+ db 26,DITTO
+ db 23,PIDGEY
+ db 26,VENONAT
+ db 22,ODDISH
+ db 28,VENONAT
+ db 26,ODDISH
+ db 30,GLOOM
+ db 28,PIDGEOTTO
+ db 30,PIDGEOTTO
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 24,BELLSPROUT
+ db 26,DITTO
+ db 23,PIDGEY
+ db 26,VENONAT
+ db 22,BELLSPROUT
+ db 28,VENONAT
+ db 26,BELLSPROUT
+ db 30,WEEPINBELL
+ db 28,PIDGEOTTO
+ db 30,PIDGEOTTO
+ ENDC
+
+ IF _YELLOW
+ db 26,ODDISH
+ db 26,BELLSPROUT
+ db 24,VENONAT
+ db 32,PIDGEOTTO
+ db 28,ODDISH
+ db 28,BELLSPROUT
+ db 30,GLOOM
+ db 30,WEEPINBELL
+ db 27,VENONAT
+ db 30,VENOMOTH
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route16.asm b/data/wildPokemon/route16.asm
new file mode 100755
index 00000000..23aadb6c
--- /dev/null
+++ b/data/wildPokemon/route16.asm
@@ -0,0 +1,30 @@
+Route16Mons:
+ db $19
+ IF !_YELLOW
+ db 20,SPEAROW
+ db 22,SPEAROW
+ db 18,RATTATA
+ db 20,DODUO
+ db 20,RATTATA
+ db 18,DODUO
+ db 22,DODUO
+ db 22,RATTATA
+ db 23,RATICATE
+ db 25,RATICATE
+ ENDC
+
+ IF _YELLOW
+ db 22,SPEAROW
+ db 22,DODUO
+ db 23,RATTATA
+ db 24,DODUO
+ db 24,RATTATA
+ db 26,DODUO
+ db 23,SPEAROW
+ db 24,FEAROW
+ db 25,RATICATE
+ db 26,RATICATE
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route17.asm b/data/wildPokemon/route17.asm
new file mode 100755
index 00000000..9cdb18b3
--- /dev/null
+++ b/data/wildPokemon/route17.asm
@@ -0,0 +1,30 @@
+Route17Mons:
+ db $19
+ IF !_YELLOW
+ db 20,SPEAROW
+ db 22,SPEAROW
+ db 25,RATICATE
+ db 24,DODUO
+ db 27,RATICATE
+ db 26,DODUO
+ db 28,DODUO
+ db 29,RATICATE
+ db 25,FEAROW
+ db 27,FEAROW
+ ENDC
+
+ IF _YELLOW
+ db 26,DODUO
+ db 27,FEAROW
+ db 27,DODUO
+ db 28,DODUO
+ db 28,PONYTA
+ db 30,PONYTA
+ db 29,FEAROW
+ db 28,DODUO
+ db 32,PONYTA
+ db 29,DODRIO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route18.asm b/data/wildPokemon/route18.asm
new file mode 100755
index 00000000..9d2b08cf
--- /dev/null
+++ b/data/wildPokemon/route18.asm
@@ -0,0 +1,30 @@
+Route18Mons:
+ db $19
+ IF !_YELLOW
+ db 20,SPEAROW
+ db 22,SPEAROW
+ db 25,RATICATE
+ db 24,DODUO
+ db 25,FEAROW
+ db 26,DODUO
+ db 28,DODUO
+ db 29,RATICATE
+ db 27,FEAROW
+ db 29,FEAROW
+ ENDC
+
+ IF _YELLOW
+ db 22,SPEAROW
+ db 22,DODUO
+ db 23,RATTATA
+ db 24,DODUO
+ db 24,RATTATA
+ db 26,DODUO
+ db 23,SPEAROW
+ db 24,FEAROW
+ db 25,RATICATE
+ db 26,RATICATE
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route2.asm b/data/wildPokemon/route2.asm
new file mode 100755
index 00000000..e63f5028
--- /dev/null
+++ b/data/wildPokemon/route2.asm
@@ -0,0 +1,40 @@
+Route2Mons:
+ db $19
+
+ IF !_YELLOW
+ db 3,RATTATA
+ db 3,PIDGEY
+ db 4,PIDGEY
+ db 4,RATTATA
+ db 5,PIDGEY
+ if _RED
+ db 3,WEEDLE
+ ENDC
+ if _BLUE
+ db 3,CATERPIE
+ ENDC
+ db 2,RATTATA
+ db 5,RATTATA
+ if _RED
+ db 4,WEEDLE
+ db 5,WEEDLE
+ ENDC
+ if _BLUE
+ db 4,CATERPIE
+ db 5,CATERPIE
+ ENDC
+ ENDC
+ IF _YELLOW
+ db 3,RATTATA
+ db 3,PIDGEY
+ db 4,RATTATA
+ db 4,NIDORAN_M
+ db 4,NIDORAN_F
+ db 5,PIDGEY
+ db 6,NIDORAN_M
+ db 6,NIDORAN_F
+ db 7,PIDGEY
+ db 7,PIDGEY
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/route21.asm b/data/wildPokemon/route21.asm
new file mode 100755
index 00000000..26a590da
--- /dev/null
+++ b/data/wildPokemon/route21.asm
@@ -0,0 +1,40 @@
+Route21Mons:
+ db $19
+ IF !_YELLOW
+ db 21,RATTATA
+ db 23,PIDGEY
+ db 30,RATICATE
+ db 23,RATTATA
+ db 21,PIDGEY
+ db 30,PIDGEOTTO
+ db 32,PIDGEOTTO
+ db 28,TANGELA
+ db 30,TANGELA
+ db 32,TANGELA
+ ENDC
+
+ IF _YELLOW
+ db 15,PIDGEY
+ db 13,RATTATA
+ db 13,PIDGEY
+ db 11,PIDGEY
+ db 17,PIDGEY
+ db 15,RATTATA
+ db 15,RATICATE
+ db 17,PIDGEOTTO
+ db 19,PIDGEOTTO
+ db 15,PIDGEOTTO
+ ENDC
+
+ db $05
+ db 5,TENTACOOL
+ db 10,TENTACOOL
+ db 15,TENTACOOL
+ db 5,TENTACOOL
+ db 10,TENTACOOL
+ db 15,TENTACOOL
+ db 20,TENTACOOL
+ db 30,TENTACOOL
+ db 35,TENTACOOL
+ db 40,TENTACOOL
+
diff --git a/data/wildPokemon/route22.asm b/data/wildPokemon/route22.asm
new file mode 100755
index 00000000..e78c02c9
--- /dev/null
+++ b/data/wildPokemon/route22.asm
@@ -0,0 +1,40 @@
+Route22Mons:
+ db $19
+ IF _RED || (_JAPAN && _BLUE)
+ db 3,RATTATA
+ db 3,NIDORAN_M
+ db 4,RATTATA
+ db 4,NIDORAN_M
+ db 2,RATTATA
+ db 2,NIDORAN_M
+ db 3,SPEAROW
+ db 5,SPEAROW
+ db 3,NIDORAN_F
+ db 4,NIDORAN_F
+ ENDC
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 3,RATTATA
+ db 3,NIDORAN_F
+ db 4,RATTATA
+ db 4,NIDORAN_F
+ db 2,RATTATA
+ db 2,NIDORAN_F
+ db 3,SPEAROW
+ db 5,SPEAROW
+ db 3,NIDORAN_M
+ db 4,NIDORAN_M
+ ENDC
+ IF _YELLOW
+ db 2,NIDORAN_M
+ db 2,NIDORAN_F
+ db 3,MANKEY
+ db 3,RATTATA
+ db 4,NIDORAN_M
+ db 4,NIDORAN_F
+ db 5,MANKEY
+ db 2,SPEAROW
+ db 4,SPEAROW
+ db 6,SPEAROW
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/route23.asm b/data/wildPokemon/route23.asm
new file mode 100755
index 00000000..3cd2ca9d
--- /dev/null
+++ b/data/wildPokemon/route23.asm
@@ -0,0 +1,40 @@
+Route23Mons:
+ db $0A
+ IF !_YELLOW
+ IF _RED
+ db 26,EKANS
+ ENDC
+ IF !_RED
+ db 26,SANDSHREW
+ ENDC
+ db 33,DITTO
+ db 26,SPEAROW
+ db 38,FEAROW
+ db 38,DITTO
+ db 38,FEAROW
+ IF _RED
+ db 41,ARBOK
+ ENDC
+ IF !_RED
+ db 41,SANDSLASH
+ ENDC
+ db 43,DITTO
+ db 41,FEAROW
+ db 43,FEAROW
+ ENDC
+
+ IF _YELLOW
+ db 41,NIDORINO
+ db 41,NIDORINA
+ db 36,MANKEY
+ db 44,NIDORINO
+ db 44,NIDORINA
+ db 40,FEAROW
+ db 41,MANKEY
+ db 45,FEAROW
+ db 41,PRIMEAPE
+ db 46,PRIMEAPE
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route24.asm b/data/wildPokemon/route24.asm
new file mode 100755
index 00000000..28af9916
--- /dev/null
+++ b/data/wildPokemon/route24.asm
@@ -0,0 +1,57 @@
+Route24Mons:
+ db $19
+
+ IF _RED
+ db 7,WEEDLE
+ db 8,KAKUNA
+ db 12,PIDGEY
+ db 12,ODDISH
+ db 13,ODDISH
+ db 10,ABRA
+ db 14,ODDISH
+ db 13,PIDGEY
+ db 8,ABRA
+ db 12,ABRA
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 7,CATERPIE
+ db 8,METAPOD
+ db 12,PIDGEY
+ db 12,BELLSPROUT
+ db 13,BELLSPROUT
+ db 10,ABRA
+ db 14,BELLSPROUT
+ db 13,PIDGEY
+ db 8,ABRA
+ db 12,ABRA
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 7,CATERPIE
+ db 8,METAPOD
+ db 12,PIDGEY
+ db 12,ODDISH
+ db 13,ODDISH
+ db 10,ABRA
+ db 14,ODDISH
+ db 13,PIDGEY
+ db 8,ABRA
+ db 12,ABRA
+ ENDC
+
+ IF _YELLOW
+ db 12,ODDISH
+ db 12,BELLSPROUT
+ db 13,PIDGEY
+ db 14,ODDISH
+ db 14,BELLSPROUT
+ db 15,PIDGEY
+ db 13,VENONAT
+ db 16,VENONAT
+ db 17,PIDGEY
+ db 17,PIDGEOTTO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route25.asm b/data/wildPokemon/route25.asm
new file mode 100755
index 00000000..1aac115f
--- /dev/null
+++ b/data/wildPokemon/route25.asm
@@ -0,0 +1,57 @@
+Route25Mons:
+ db $0F
+
+ IF _RED
+ db 8,WEEDLE
+ db 9,KAKUNA
+ db 13,PIDGEY
+ db 12,ODDISH
+ db 13,ODDISH
+ db 12,ABRA
+ db 14,ODDISH
+ db 10,ABRA
+ db 7,METAPOD
+ db 8,CATERPIE
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 8,CATERPIE
+ db 9,METAPOD
+ db 13,PIDGEY
+ db 12,BELLSPROUT
+ db 13,BELLSPROUT
+ db 12,ABRA
+ db 14,BELLSPROUT
+ db 10,ABRA
+ db 7,KAKUNA
+ db 8,WEEDLE
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 8,CATERPIE
+ db 9,METAPOD
+ db 13,PIDGEY
+ db 12,ODDISH
+ db 13,ODDISH
+ db 12,ABRA
+ db 14,ODDISH
+ db 10,ABRA
+ db 7,KAKUNA
+ db 8,WEEDLE
+ ENDC
+
+ IF _YELLOW
+ db 12,ODDISH
+ db 12,BELLSPROUT
+ db 13,PIDGEY
+ db 14,ODDISH
+ db 14,BELLSPROUT
+ db 15,PIDGEY
+ db 13,VENONAT
+ db 16,VENONAT
+ db 17,PIDGEY
+ db 17,PIDGEOTTO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route3.asm b/data/wildPokemon/route3.asm
new file mode 100755
index 00000000..1b555138
--- /dev/null
+++ b/data/wildPokemon/route3.asm
@@ -0,0 +1,28 @@
+Route3Mons:
+ db $14
+ IF !_YELLOW
+ db 6,PIDGEY
+ db 5,SPEAROW
+ db 7,PIDGEY
+ db 6,SPEAROW
+ db 7,SPEAROW
+ db 8,PIDGEY
+ db 8,SPEAROW
+ db 3,JIGGLYPUFF
+ db 5,JIGGLYPUFF
+ db 7,JIGGLYPUFF
+ ENDC
+ IF _YELLOW
+ db 8,SPEAROW
+ db 9,SPEAROW
+ db 9,MANKEY
+ db 10,SPEAROW
+ db 8,SANDSHREW
+ db 10,RATTATA
+ db 10,SANDSHREW
+ db 12,RATTATA
+ db 11,SPEAROW
+ db 12,SPEAROW
+ ENDC
+ db $00
+
diff --git a/data/wildPokemon/route4.asm b/data/wildPokemon/route4.asm
new file mode 100755
index 00000000..22610dc6
--- /dev/null
+++ b/data/wildPokemon/route4.asm
@@ -0,0 +1,44 @@
+Route4Mons:
+ db $14
+
+ IF _RED
+ db 10,RATTATA
+ db 10,SPEAROW
+ db 8,RATTATA
+ db 6,EKANS
+ db 8,SPEAROW
+ db 10,EKANS
+ db 12,RATTATA
+ db 12,SPEAROW
+ db 8,EKANS
+ db 12,EKANS
+ ENDC
+
+ IF !_RED
+ db 10,RATTATA
+ db 10,SPEAROW
+ db 8,RATTATA
+ db 6,SANDSHREW
+ db 8,SPEAROW
+ db 10,SANDSHREW
+ db 12,RATTATA
+ db 12,SPEAROW
+ db 8,SANDSHREW
+ db 12,SANDSHREW
+ ENDC
+
+ IF _YELLOW
+ db 8,SPEAROW
+ db 9,SPEAROW
+ db 9,MANKEY
+ db 10,SPEAROW
+ db 8,SANDSHREW
+ db 10,RATTATA
+ db 10,SANDSHREW
+ db 12,RATTATA
+ db 11,SPEAROW
+ db 12,SPEAROW
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route5.asm b/data/wildPokemon/route5.asm
new file mode 100755
index 00000000..c08b51a4
--- /dev/null
+++ b/data/wildPokemon/route5.asm
@@ -0,0 +1,57 @@
+Route5Mons:
+ db $0F
+
+ IF _RED
+ db 13,ODDISH
+ db 13,PIDGEY
+ db 15,PIDGEY
+ db 10,MANKEY
+ db 12,MANKEY
+ db 15,ODDISH
+ db 16,ODDISH
+ db 16,PIDGEY
+ db 14,MANKEY
+ db 16,MANKEY
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 13,BELLSPROUT
+ db 13,PIDGEY
+ db 15,PIDGEY
+ db 10,MEOWTH
+ db 12,MEOWTH
+ db 15,BELLSPROUT
+ db 16,BELLSPROUT
+ db 16,PIDGEY
+ db 14,MEOWTH
+ db 16,MEOWTH
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 13,ODDISH
+ db 13,PIDGEY
+ db 15,PIDGEY
+ db 10,MEOWTH
+ db 12,MEOWTH
+ db 15,ODDISH
+ db 16,ODDISH
+ db 16,PIDGEY
+ db 14,MEOWTH
+ db 16,MEOWTH
+ ENDC
+
+ IF _YELLOW
+ db 15,PIDGEY
+ db 14,RATTATA
+ db 7,ABRA
+ db 16,PIDGEY
+ db 16,RATTATA
+ db 17,PIDGEY
+ db 17,PIDGEOTTO
+ db 3,JIGGLYPUFF
+ db 5,JIGGLYPUFF
+ db 7,JIGGLYPUFF
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route6.asm b/data/wildPokemon/route6.asm
new file mode 100755
index 00000000..a2e0f4d0
--- /dev/null
+++ b/data/wildPokemon/route6.asm
@@ -0,0 +1,70 @@
+Route6Mons:
+ db $0F
+
+ IF _RED
+ db 13,ODDISH
+ db 13,PIDGEY
+ db 15,PIDGEY
+ db 10,MANKEY
+ db 12,MANKEY
+ db 15,ODDISH
+ db 16,ODDISH
+ db 16,PIDGEY
+ db 14,MANKEY
+ db 16,MANKEY
+ db $00
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 13,BELLSPROUT
+ db 13,PIDGEY
+ db 15,PIDGEY
+ db 10,MEOWTH
+ db 12,MEOWTH
+ db 15,BELLSPROUT
+ db 16,BELLSPROUT
+ db 16,PIDGEY
+ db 14,MEOWTH
+ db 16,MEOWTH
+ db $00
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 13,ODDISH
+ db 13,PIDGEY
+ db 15,PIDGEY
+ db 10,MEOWTH
+ db 12,MEOWTH
+ db 15,ODDISH
+ db 16,ODDISH
+ db 16,PIDGEY
+ db 14,MEOWTH
+ db 16,MEOWTH
+ db $00
+ ENDC
+
+ IF _YELLOW
+ db 15,PIDGEY
+ db 14,RATTATA
+ db 7,ABRA
+ db 16,PIDGEY
+ db 16,RATTATA
+ db 17,PIDGEY
+ db 17,PIDGEOTTO
+ db 3,JIGGLYPUFF
+ db 5,JIGGLYPUFF
+ db 7,JIGGLYPUFF
+
+ db $03
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,PSYDUCK
+ db 15,GOLDUCK
+ db 20,GOLDUCK
+ ENDC
+
diff --git a/data/wildPokemon/route7.asm b/data/wildPokemon/route7.asm
new file mode 100755
index 00000000..ecda56aa
--- /dev/null
+++ b/data/wildPokemon/route7.asm
@@ -0,0 +1,57 @@
+Route7Mons:
+ db $0F
+
+ IF _RED
+ db 19,PIDGEY
+ db 19,ODDISH
+ db 17,MANKEY
+ db 22,ODDISH
+ db 22,PIDGEY
+ db 18,MANKEY
+ db 18,GROWLITHE
+ db 20,GROWLITHE
+ db 19,MANKEY
+ db 20,MANKEY
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 19,PIDGEY
+ db 19,BELLSPROUT
+ db 17,MEOWTH
+ db 22,BELLSPROUT
+ db 22,PIDGEY
+ db 18,MEOWTH
+ db 18,VULPIX
+ db 20,VULPIX
+ db 19,MEOWTH
+ db 20,MEOWTH
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 19,PIDGEY
+ db 19,ODDISH
+ db 17,MEOWTH
+ db 22,ODDISH
+ db 22,PIDGEY
+ db 18,MEOWTH
+ db 18,GROWLITHE
+ db 20,GROWLITHE
+ db 19,MEOWTH
+ db 20,MEOWTH
+ ENDC
+
+ IF _YELLOW
+ db 20,PIDGEY
+ db 22,PIDGEY
+ db 20,RATTATA
+ db 15,ABRA
+ db 19,ABRA
+ db 24,PIDGEOTTO
+ db 26,ABRA
+ db 19,JIGGLYPUFF
+ db 24,JIGGLYPUFF
+ db 24,JIGGLYPUFF
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route8.asm b/data/wildPokemon/route8.asm
new file mode 100755
index 00000000..97260649
--- /dev/null
+++ b/data/wildPokemon/route8.asm
@@ -0,0 +1,57 @@
+Route8Mons:
+ db $0F
+
+ IF _RED
+ db 18,PIDGEY
+ db 18,MANKEY
+ db 17,EKANS
+ db 16,GROWLITHE
+ db 20,PIDGEY
+ db 20,MANKEY
+ db 19,EKANS
+ db 17,GROWLITHE
+ db 15,GROWLITHE
+ db 18,GROWLITHE
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 18,PIDGEY
+ db 18,MEOWTH
+ db 17,SANDSHREW
+ db 16,VULPIX
+ db 20,PIDGEY
+ db 20,MEOWTH
+ db 19,SANDSHREW
+ db 17,VULPIX
+ db 15,VULPIX
+ db 18,VULPIX
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 18,PIDGEY
+ db 18,MEOWTH
+ db 17,SANDSHREW
+ db 16,GROWLITHE
+ db 20,PIDGEY
+ db 20,MEOWTH
+ db 19,SANDSHREW
+ db 17,GROWLITHE
+ db 15,GROWLITHE
+ db 18,GROWLITHE
+ ENDC
+
+ IF _YELLOW
+ db 20,PIDGEY
+ db 22,PIDGEY
+ db 20,RATTATA
+ db 15,ABRA
+ db 19,ABRA
+ db 24,PIDGEOTTO
+ db 19,JIGGLYPUFF
+ db 24,JIGGLYPUFF
+ db 20,KADABRA
+ db 27,KADABRA
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/route9.asm b/data/wildPokemon/route9.asm
new file mode 100755
index 00000000..c7c65186
--- /dev/null
+++ b/data/wildPokemon/route9.asm
@@ -0,0 +1,44 @@
+Route9Mons:
+ db $0F
+
+ IF _RED
+ db 16,RATTATA
+ db 16,SPEAROW
+ db 14,RATTATA
+ db 11,EKANS
+ db 13,SPEAROW
+ db 15,EKANS
+ db 17,RATTATA
+ db 17,SPEAROW
+ db 13,EKANS
+ db 17,EKANS
+ ENDC
+
+ IF !_RED && !_YELLOW
+ db 16,RATTATA
+ db 16,SPEAROW
+ db 14,RATTATA
+ db 11,SANDSHREW
+ db 13,SPEAROW
+ db 15,SANDSHREW
+ db 17,RATTATA
+ db 17,SPEAROW
+ db 13,SANDSHREW
+ db 17,SANDSHREW
+ ENDC
+
+ IF _YELLOW
+ db 16,NIDORAN_M
+ db 16,NIDORAN_F
+ db 18,RATTATA
+ db 18,NIDORAN_M
+ db 18,NIDORAN_F
+ db 17,SPEAROW
+ db 18,NIDORINO
+ db 18,NIDORINA
+ db 20,RATICATE
+ db 19,FEAROW
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/safarizone1.asm b/data/wildPokemon/safarizone1.asm
new file mode 100755
index 00000000..1e2f463c
--- /dev/null
+++ b/data/wildPokemon/safarizone1.asm
@@ -0,0 +1,48 @@
+ZoneMons1:
+ db $1E
+ IF _RED || (_JAPAN && _BLUE)
+ db 24,NIDORAN_M
+ db 26,DODUO
+ db 22,PARAS
+ db 25,EXEGGCUTE
+ db 33,NIDORINO
+ db 23,EXEGGCUTE
+ db 24,NIDORAN_F
+ db 25,PARASECT
+ IF _RED
+ db 25,KANGASKHAN
+ ENDC
+ IF _JAPAN && _BLUE
+ db 25,LICKITUNG
+ ENDC
+ db 28,SCYTHER
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 24,NIDORAN_F
+ db 26,DODUO
+ db 22,PARAS
+ db 25,EXEGGCUTE
+ db 33,NIDORINA
+ db 23,EXEGGCUTE
+ db 24,NIDORAN_M
+ db 25,PARASECT
+ db 25,KANGASKHAN
+ db 28,PINSIR
+ ENDC
+
+ IF _YELLOW
+ db 21,NIDORAN_M
+ db 29,NIDORAN_F
+ db 22,EXEGGCUTE
+ db 21,TAUROS
+ db 32,NIDORINA
+ db 19,CUBONE
+ db 26,EXEGGCUTE
+ db 24,MAROWAK
+ db 21,CHANSEY
+ db 15,SCYTHER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/safarizone2.asm b/data/wildPokemon/safarizone2.asm
new file mode 100755
index 00000000..ac35d4e4
--- /dev/null
+++ b/data/wildPokemon/safarizone2.asm
@@ -0,0 +1,50 @@
+ZoneMons2:
+ db $1E
+ IF !_YELLOW
+ IF _RED || (_JAPAN && _BLUE)
+ db 22,NIDORAN_M
+ ENDC
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 22,NIDORAN_F
+ ENDC
+ db 26,RHYHORN
+ db 23,PARAS
+ db 25,EXEGGCUTE
+ IF _RED || (_JAPAN && _BLUE)
+ db 30,NIDORINO
+ ENDC
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 30,NIDORINA
+ ENDC
+ db 27,EXEGGCUTE
+ IF _RED || (_JAPAN && _BLUE)
+ db 30,NIDORINA
+ ENDC
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 30,NIDORINO
+ ENDC
+ db 32,VENOMOTH
+ db 26,CHANSEY
+ IF _RED || _GREEN || (!_JAPAN && _BLUE)
+ db 28,TAUROS
+ ENDC
+ IF (_JAPAN && _BLUE)
+ db 28,PINSIR
+ ENDC
+ ENDC
+
+ IF _YELLOW
+ db 36,NIDORAN_M
+ db 14,NIDORAN_F
+ db 20,EXEGGCUTE
+ db 25,RHYHORN
+ db 23,NIDORINA
+ db 28,KANGASKHAN
+ db 16,CUBONE
+ db 33,KANGASKHAN
+ db 25,SCYTHER
+ db 15,PINSIR
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/safarizone3.asm b/data/wildPokemon/safarizone3.asm
new file mode 100755
index 00000000..497efd24
--- /dev/null
+++ b/data/wildPokemon/safarizone3.asm
@@ -0,0 +1,56 @@
+ZoneMons3:
+ db $1E
+ IF _RED
+ db 25,NIDORAN_M
+ db 26,DODUO
+ db 23,VENONAT
+ db 24,EXEGGCUTE
+ db 33,NIDORINO
+ db 26,EXEGGCUTE
+ db 25,NIDORAN_F
+ db 31,VENOMOTH
+ db 26,TAUROS
+ db 28,KANGASKHAN
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 25,NIDORAN_F
+ db 26,DODUO
+ db 23,VENONAT
+ db 24,EXEGGCUTE
+ db 33,NIDORINA
+ db 26,EXEGGCUTE
+ db 25,NIDORAN_M
+ db 31,VENOMOTH
+ db 26,TAUROS
+ db 28,KANGASKHAN
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 25,NIDORAN_M
+ db 26,DODUO
+ db 23,VENONAT
+ db 24,EXEGGCUTE
+ db 33,NIDORINO
+ db 26,EXEGGCUTE
+ db 25,NIDORAN_F
+ db 31,VENOMOTH
+ db 26,PINSIR
+ db 28,LICKITUNG
+ ENDC
+
+ IF _YELLOW
+ db 29,NIDORAN_M
+ db 21,NIDORAN_F
+ db 22,EXEGGCUTE
+ db 21,TAUROS
+ db 32,NIDORINO
+ db 19,CUBONE
+ db 26,EXEGGCUTE
+ db 24,MAROWAK
+ db 25,PINSIR
+ db 27,TANGELA
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/safarizonecenter.asm b/data/wildPokemon/safarizonecenter.asm
new file mode 100755
index 00000000..d8c74a76
--- /dev/null
+++ b/data/wildPokemon/safarizonecenter.asm
@@ -0,0 +1,56 @@
+ZoneMonsCenter:
+ db $1E
+ IF _RED
+ db 22,NIDORAN_M
+ db 25,RHYHORN
+ db 22,VENONAT
+ db 24,EXEGGCUTE
+ db 31,NIDORINO
+ db 25,EXEGGCUTE
+ db 31,NIDORINA
+ db 30,PARASECT
+ db 23,SCYTHER
+ db 23,CHANSEY
+ ENDC
+
+ IF _GREEN || (!_JAPAN && _BLUE)
+ db 22,NIDORAN_F
+ db 25,RHYHORN
+ db 22,VENONAT
+ db 24,EXEGGCUTE
+ db 31,NIDORINA
+ db 25,EXEGGCUTE
+ db 31,NIDORINO
+ db 30,PARASECT
+ db 23,PINSIR
+ db 23,CHANSEY
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 22,NIDORAN_M
+ db 25,RHYHORN
+ db 22,VENONAT
+ db 24,EXEGGCUTE
+ db 31,NIDORINO
+ db 25,EXEGGCUTE
+ db 31,NIDORINA
+ db 30,PARASECT
+ db 23,SCYTHER
+ db 23,CHANSEY
+ ENDC
+
+ IF _YELLOW
+ db 14,NIDORAN_M
+ db 36,NIDORAN_F
+ db 24,EXEGGCUTE
+ db 20,RHYHORN
+ db 23,NIDORINO
+ db 27,PARASECT
+ db 27,PARAS
+ db 32,PARASECT
+ db 22,TANGELA
+ db 7,CHANSEY
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/seafoamisland1.asm b/data/wildPokemon/seafoamisland1.asm
new file mode 100755
index 00000000..472af2e1
--- /dev/null
+++ b/data/wildPokemon/seafoamisland1.asm
@@ -0,0 +1,56 @@
+IslandMons1:
+ db $0F
+ IF _RED
+ db 30,SEEL
+ db 30,SLOWPOKE
+ db 30,SHELLDER
+ db 30,HORSEA
+ db 28,HORSEA
+ db 21,ZUBAT
+ db 29,GOLBAT
+ db 28,PSYDUCK
+ db 28,SHELLDER
+ db 38,GOLDUCK
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 30,SEEL
+ db 30,PSYDUCK
+ db 30,STARYU
+ db 30,KRABBY
+ db 28,KRABBY
+ db 21,ZUBAT
+ db 29,GOLBAT
+ db 28,SLOWPOKE
+ db 28,STARYU
+ db 38,SLOWBRO
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 30,SEEL
+ db 30,HORSEA
+ db 30,STARYU
+ db 30,KRABBY
+ db 28,KRABBY
+ db 21,ZUBAT
+ db 29,GOLBAT
+ db 28,SLOWPOKE
+ db 28,STARYU
+ db 38,SLOWBRO
+ ENDC
+
+ IF _YELLOW
+ db 18,ZUBAT
+ db 25,KRABBY
+ db 27,KRABBY
+ db 27,ZUBAT
+ db 36,ZUBAT
+ db 28,SLOWPOKE
+ db 30,SLOWPOKE
+ db 9,ZUBAT
+ db 27,GOLBAT
+ db 36,GOLBAT
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/seafoamislandb1.asm b/data/wildPokemon/seafoamislandb1.asm
new file mode 100755
index 00000000..9b49bc46
--- /dev/null
+++ b/data/wildPokemon/seafoamislandb1.asm
@@ -0,0 +1,56 @@
+IslandMonsB1:
+ db $0A
+ IF _RED
+ db 30,STARYU
+ db 30,HORSEA
+ db 32,SHELLDER
+ db 32,HORSEA
+ db 28,SLOWPOKE
+ db 30,SEEL
+ db 30,SLOWPOKE
+ db 28,SEEL
+ db 38,DEWGONG
+ db 37,SEADRA
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 30,SHELLDER
+ db 30,KRABBY
+ db 32,STARYU
+ db 32,KRABBY
+ db 28,PSYDUCK
+ db 30,SEEL
+ db 30,PSYDUCK
+ db 28,SEEL
+ db 38,DEWGONG
+ db 37,KINGLER
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 30,SHELLDER
+ db 30,KRABBY
+ db 32,STARYU
+ db 32,KRABBY
+ db 28,HORSEA
+ db 30,SEEL
+ db 30,HORSEA
+ db 28,SEEL
+ db 38,DEWGONG
+ db 37,KINGLER
+ ENDC
+
+ IF _YELLOW
+ db 27,ZUBAT
+ db 26,KRABBY
+ db 36,ZUBAT
+ db 28,KRABBY
+ db 27,GOLBAT
+ db 29,SLOWPOKE
+ db 18,ZUBAT
+ db 28,KINGLER
+ db 22,SEEL
+ db 26,SEEL
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/seafoamislandb2.asm b/data/wildPokemon/seafoamislandb2.asm
new file mode 100755
index 00000000..4cad1012
--- /dev/null
+++ b/data/wildPokemon/seafoamislandb2.asm
@@ -0,0 +1,56 @@
+IslandMonsB2:
+ db $0A
+ IF _RED
+ db 30,SEEL
+ db 30,SLOWPOKE
+ db 32,SEEL
+ db 32,SLOWPOKE
+ db 28,HORSEA
+ db 30,STARYU
+ db 30,HORSEA
+ db 28,SHELLDER
+ db 30,GOLBAT
+ db 37,SLOWBRO
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 30,SEEL
+ db 30,PSYDUCK
+ db 32,SEEL
+ db 32,PSYDUCK
+ db 28,KRABBY
+ db 30,SHELLDER
+ db 30,KRABBY
+ db 28,STARYU
+ db 30,GOLBAT
+ db 37,GOLDUCK
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 30,SEEL
+ db 30,HORSEA
+ db 32,SEEL
+ db 32,HORSEA
+ db 28,KRABBY
+ db 30,SHELLDER
+ db 30,KRABBY
+ db 28,STARYU
+ db 30,GOLBAT
+ db 37,JYNX
+ ENDC
+
+ IF _YELLOW
+ db 27,ZUBAT
+ db 27,KRABBY
+ db 36,ZUBAT
+ db 27,GOLBAT
+ db 28,KINGLER
+ db 24,SEEL
+ db 29,KRABBY
+ db 36,GOLBAT
+ db 31,SLOWPOKE
+ db 31,SLOWBRO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/seafoamislandb3.asm b/data/wildPokemon/seafoamislandb3.asm
new file mode 100755
index 00000000..55d806a9
--- /dev/null
+++ b/data/wildPokemon/seafoamislandb3.asm
@@ -0,0 +1,68 @@
+IslandMonsB3:
+ db $0A
+ IF _RED
+ db 31,SLOWPOKE
+ db 31,SEEL
+ db 33,SLOWPOKE
+ db 33,SEEL
+ db 29,HORSEA
+ db 31,SHELLDER
+ db 31,HORSEA
+ db 29,SHELLDER
+ db 39,SEADRA
+ db 37,DEWGONG
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 31,PSYDUCK
+ db 31,SEEL
+ db 33,PSYDUCK
+ db 33,SEEL
+ db 29,KRABBY
+ db 31,STARYU
+ db 31,KRABBY
+ db 29,STARYU
+ db 39,KINGLER
+ db 37,DEWGONG
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 31,HORSEA
+ db 31,SEEL
+ db 33,HORSEA
+ db 33,SEEL
+ db 29,KRABBY
+ db 31,STARYU
+ db 31,KRABBY
+ db 29,STARYU
+ db 39,KINGLER
+ db 37,DEWGONG
+ ENDC
+
+ IF _YELLOW
+ db 27,GOLBAT
+ db 36,ZUBAT
+ db 29,KRABBY
+ db 27,ZUBAT
+ db 30,KINGLER
+ db 26,SEEL
+ db 31,KRABBY
+ db 30,SEEL
+ db 28,DEWGONG
+ db 32,DEWGONG
+
+ db $05
+ db 25,TENTACOOL
+ db 30,TENTACOOL
+ db 20,TENTACOOL
+ db 30,STARYU
+ db 35,TENTACOOL
+ db 30,STARYU
+ db 40,TENTACOOL
+ db 30,STARYU
+ db 30,STARYU
+ db 30,STARYU
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/seafoamislandb4.asm b/data/wildPokemon/seafoamislandb4.asm
new file mode 100755
index 00000000..9596ab5b
--- /dev/null
+++ b/data/wildPokemon/seafoamislandb4.asm
@@ -0,0 +1,68 @@
+IslandMonsB4:
+ db $0A
+ IF _RED
+ db 31,HORSEA
+ db 31,SHELLDER
+ db 33,HORSEA
+ db 33,SHELLDER
+ db 29,SLOWPOKE
+ db 31,SEEL
+ db 31,SLOWPOKE
+ db 29,SEEL
+ db 39,SLOWBRO
+ db 32,GOLBAT
+ ENDC
+
+ IF _GREEN || !_JAPAN && _BLUE
+ db 31,KRABBY
+ db 31,STARYU
+ db 33,KRABBY
+ db 33,STARYU
+ db 29,PSYDUCK
+ db 31,SEEL
+ db 31,PSYDUCK
+ db 29,SEEL
+ db 39,GOLDUCK
+ db 32,GOLBAT
+ ENDC
+
+ IF _JAPAN && _BLUE
+ db 31,KRABBY
+ db 31,STARYU
+ db 33,KRABBY
+ db 33,STARYU
+ db 29,HORSEA
+ db 31,SEEL
+ db 31,HORSEA
+ db 29,SEEL
+ db 39,JYNX
+ db 32,GOLBAT
+ ENDC
+
+ IF _YELLOW
+ db 36,GOLBAT
+ db 36,ZUBAT
+ db 30,KRABBY
+ db 32,KINGLER
+ db 28,SEEL
+ db 32,SEEL
+ db 27,GOLBAT
+ db 45,ZUBAT
+ db 30,DEWGONG
+ db 34,DEWGONG
+
+ db $05
+ db 25,TENTACOOL
+ db 30,TENTACOOL
+ db 20,TENTACOOL
+ db 30,STARYU
+ db 35,TENTACOOL
+ db 30,STARYU
+ db 40,TENTACOOL
+ db 30,STARYU
+ db 30,STARYU
+ db 30,STARYU
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/unknowndungeon1.asm b/data/wildPokemon/unknowndungeon1.asm
new file mode 100755
index 00000000..2c23dcc8
--- /dev/null
+++ b/data/wildPokemon/unknowndungeon1.asm
@@ -0,0 +1,40 @@
+DungeonMons1:
+ db $0A
+ IF !_YELLOW
+ db 46,GOLBAT
+ db 46,HYPNO
+ db 46,MAGNETON
+ IF _RED || _GREEN || (!_JAPAN && _BLUE)
+ db 49,DODRIO
+ ENDC
+ IF _JAPAN && _BLUE
+ db 49,RAPIDASH
+ ENDC
+ db 49,VENOMOTH
+ IF _RED
+ db 52,ARBOK
+ ENDC
+ IF !_RED
+ db 52,SANDSLASH
+ ENDC
+ db 49,KADABRA
+ db 52,PARASECT
+ db 53,RAICHU
+ db 53,DITTO
+ ENDC
+
+ IF _YELLOW
+ db 50,GOLBAT
+ db 55,GOLBAT
+ db 45,GRAVELER
+ db 55,GLOOM
+ db 55,WEEPINBELL
+ db 52,SANDSLASH
+ db 54,VENOMOTH
+ db 54,PARASECT
+ db 55,DITTO
+ db 60,DITTO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/unknowndungeon2.asm b/data/wildPokemon/unknowndungeon2.asm
new file mode 100755
index 00000000..c3971b86
--- /dev/null
+++ b/data/wildPokemon/unknowndungeon2.asm
@@ -0,0 +1,35 @@
+DungeonMons2:
+ db $0F
+ IF !_YELLOW
+ db 51,DODRIO
+ db 51,VENOMOTH
+ db 51,KADABRA
+ db 52,RHYDON
+ IF _RED || _GREEN || (_BLUE && !_JAPAN)
+ db 52,MAROWAK
+ ENDC
+ IF (_BLUE && _JAPAN)
+ db 52,MAROWAK
+ ENDC
+ db 52,ELECTRODE
+ db 56,CHANSEY
+ db 54,WIGGLYTUFF
+ db 55,DITTO
+ db 60,DITTO
+ ENDC
+
+ IF _YELLOW
+ db 52,GOLBAT
+ db 57,GOLBAT
+ db 50,GRAVELER
+ db 56,SANDSLASH
+ db 50,RHYHORN
+ db 60,DITTO
+ db 58,GLOOM
+ db 58,WEEPINBELL
+ db 60,RHYDON
+ db 58,RHYDON
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/unknowndungeonb1.asm b/data/wildPokemon/unknowndungeonb1.asm
new file mode 100755
index 00000000..8a66d2a9
--- /dev/null
+++ b/data/wildPokemon/unknowndungeonb1.asm
@@ -0,0 +1,35 @@
+DungeonMonsB1:
+ db $19
+ IF !_YELLOW
+ db 55,RHYDON
+ db 55,MAROWAK
+ db 55,ELECTRODE
+ db 64,CHANSEY
+ db 64,PARASECT
+ db 64,RAICHU
+ IF _RED
+ db 57,ARBOK
+ ENDC
+ IF !_RED
+ db 57,SANDSLASH
+ ENDC
+ db 65,DITTO
+ db 63,DITTO
+ db 67,DITTO
+ ENDC
+
+ IF _YELLOW
+ db 54,GOLBAT
+ db 59,GOLBAT
+ db 55,GRAVELER
+ db 52,RHYHORN
+ db 62,RHYDON
+ db 60,DITTO
+ db 56,CHANSEY
+ db 65,DITTO
+ db 55,LICKITUNG
+ db 50,LICKITUNG
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/victoryroad1.asm b/data/wildPokemon/victoryroad1.asm
new file mode 100755
index 00000000..c39d1ff5
--- /dev/null
+++ b/data/wildPokemon/victoryroad1.asm
@@ -0,0 +1,30 @@
+PlateauMons1:
+ db $0F
+ IF !_YELLOW
+ db 24,MACHOP
+ db 26,GEODUDE
+ db 22,ZUBAT
+ db 36,ONIX
+ db 39,ONIX
+ db 42,ONIX
+ db 41,GRAVELER
+ db 41,GOLBAT
+ db 42,MACHOKE
+ db 43,MAROWAK
+ ENDC
+
+ IF _YELLOW
+ db 26,GEODUDE
+ db 31,GEODUDE
+ db 36,GEODUDE
+ db 39,ZUBAT
+ db 44,ZUBAT
+ db 41,GEODUDE
+ db 43,ONIX
+ db 45,ONIX
+ db 41,GRAVELER
+ db 47,GRAVELER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/victoryroad2.asm b/data/wildPokemon/victoryroad2.asm
new file mode 100755
index 00000000..1832b83b
--- /dev/null
+++ b/data/wildPokemon/victoryroad2.asm
@@ -0,0 +1,30 @@
+PlateauMons2:
+ db $0A
+ IF !_YELLOW
+ db 22,MACHOP
+ db 24,GEODUDE
+ db 26,ZUBAT
+ db 36,ONIX
+ db 39,ONIX
+ db 42,ONIX
+ db 41,MACHOKE
+ db 40,GOLBAT
+ db 40,MAROWAK
+ db 43,GRAVELER
+ ENDC
+
+ IF _YELLOW
+ db 31,GEODUDE
+ db 36,GEODUDE
+ db 41,GEODUDE
+ db 44,ZUBAT
+ db 39,GOLBAT
+ db 44,GRAVELER
+ db 45,ONIX
+ db 47,ONIX
+ db 39,MACHOKE
+ db 42,MACHOKE
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/victoryroad3.asm b/data/wildPokemon/victoryroad3.asm
new file mode 100755
index 00000000..e2ebf0db
--- /dev/null
+++ b/data/wildPokemon/victoryroad3.asm
@@ -0,0 +1,30 @@
+PlateauMons3:
+ db $0F
+ IF !_YELLOW
+ db 24,MACHOP
+ db 26,GEODUDE
+ db 22,ZUBAT
+ db 42,ONIX
+ db 40,VENOMOTH
+ db 45,ONIX
+ db 43,GRAVELER
+ db 41,GOLBAT
+ db 42,MACHOKE
+ db 45,MACHOKE
+ ENDC
+
+ IF _YELLOW
+ db 36,GEODUDE
+ db 44,GOLBAT
+ db 41,GEODUDE
+ db 49,ONIX
+ db 46,GEODUDE
+ db 41,GRAVELER
+ db 42,MACHOKE
+ db 45,MACHOKE
+ db 47,GRAVELER
+ db 47,GRAVELER
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/viridianforest.asm b/data/wildPokemon/viridianforest.asm
new file mode 100755
index 00000000..e80ba681
--- /dev/null
+++ b/data/wildPokemon/viridianforest.asm
@@ -0,0 +1,44 @@
+ForestMons: ;
+ IF !_YELLOW
+ db $08
+ IF _RED
+ db 4,WEEDLE
+ db 5,KAKUNA
+ db 3,WEEDLE
+ db 5,WEEDLE
+ db 4,KAKUNA
+ db 6,KAKUNA
+ db 4,METAPOD
+ db 3,CATERPIE
+ ENDC
+ IF _BLUE || _GREEN
+ db 4,CATERPIE
+ db 5,METAPOD
+ db 3,CATERPIE
+ db 5,CATERPIE
+ db 4,METAPOD
+ db 6,METAPOD
+ db 4,KAKUNA
+ db 3,WEEDLE
+ ENDC
+
+ db 3,PIKACHU
+ db 5,PIKACHU
+ ENDC
+
+ IF _YELLOW
+ db $19
+ db 3,CATERPIE
+ db 4,METAPOD
+ db 4,CATERPIE
+ db 5,CATERPIE
+ db 4,PIDGEY
+ db 6,PIDGEY
+ db 6,CATERPIE
+ db 6,METAPOD
+ db 8,PIDGEY
+ db 9,PIDGEOTTO
+ ENDC
+
+ db $00
+
diff --git a/data/wildPokemon/waterpokemon.asm b/data/wildPokemon/waterpokemon.asm
new file mode 100755
index 00000000..b45a94d6
--- /dev/null
+++ b/data/wildPokemon/waterpokemon.asm
@@ -0,0 +1,15 @@
+WaterMons: ;
+ db $00
+
+ db $05
+ db 5,TENTACOOL
+ db 10,TENTACOOL
+ db 15,TENTACOOL
+ db 5,TENTACOOL
+ db 10,TENTACOOL
+ db 15,TENTACOOL
+ db 20,TENTACOOL
+ db 30,TENTACOOL
+ db 35,TENTACOOL
+ db 40,TENTACOOL
+
diff --git a/data/wild_mons.asm b/data/wild_mons.asm
new file mode 100755
index 00000000..2bc062f3
--- /dev/null
+++ b/data/wild_mons.asm
@@ -0,0 +1,324 @@
+WildDataPointers: ; ceeb (3:4eeb)
+ dw NoMons ; PALLET_TOWN
+ dw NoMons ; VIRIDIAN_CITY
+ dw NoMons ; PEWTER_CITY
+ dw NoMons ; CERULEAN_CITY
+ dw NoMons ; LAVENDER_TOWN
+ dw NoMons ; VERMILION_CITY
+ dw NoMons ; CELADON_CITY
+ dw NoMons ; FUCHSIA_CITY
+ dw NoMons ; CINNABAR_ISLAND
+ dw NoMons ; INDIGO_PLATEAU
+ dw NoMons ; SAFFRON_CITY
+ dw NoMons ; unused
+ dw Route1Mons ; ROUTE_1
+ dw Route2Mons ; ROUTE_2
+ dw Route3Mons ; ROUTE_3
+ dw Route4Mons ; ROUTE_4
+ dw Route5Mons ; ROUTE_5
+ dw Route6Mons ; ROUTE_6
+ dw Route7Mons ; ROUTE_7
+ dw Route8Mons ; ROUTE_8
+ dw Route9Mons ; ROUTE_9
+ dw Route10Mons ; ROUTE_10
+ dw Route11Mons ; ROUTE_11
+ dw Route12Mons ; ROUTE_12
+ dw Route13Mons ; ROUTE_13
+ dw Route14Mons ; ROUTE_14
+ dw Route15Mons ; ROUTE_15
+ dw Route16Mons ; ROUTE_16
+ dw Route17Mons ; ROUTE_17
+ dw Route18Mons ; ROUTE_18
+ dw WaterMons ; ROUTE_19
+ dw WaterMons ; ROUTE_20
+ dw Route21Mons ; ROUTE_21
+ dw Route22Mons ; ROUTE_22
+ dw Route23Mons ; ROUTE_23
+ dw Route24Mons ; ROUTE_24
+ dw Route25Mons ; ROUTE_25
+ dw NoMons ; REDS_HOUSE_1F
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw ForestMons ; ViridianForest
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw MoonMons1
+ dw MoonMonsB1
+ dw MoonMonsB2
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw TunnelMonsB1
+ dw PowerPlantMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw PlateauMons1
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw TowerMons1
+ dw TowerMons2
+ dw TowerMons3
+ dw TowerMons4
+ dw TowerMons5
+ dw TowerMons6
+ dw TowerMons7
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw IslandMonsB1
+ dw IslandMonsB2
+ dw IslandMonsB3
+ dw IslandMonsB4
+ dw NoMons
+ dw NoMons
+ dw MansionMons1
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw IslandMons1
+ dw NoMons
+ dw PlateauMons2
+ dw NoMons
+ dw NoMons
+ dw CaveMons
+ dw PlateauMons3
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw MansionMons2
+ dw MansionMons3
+ dw MansionMonsB1
+ dw ZoneMons1
+ dw ZoneMons2
+ dw ZoneMons3
+ dw ZoneMonsCenter
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw DungeonMons2
+ dw DungeonMonsB1
+ dw DungeonMons1
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw TunnelMonsB2
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ dw NoMons
+ IF _YELLOW
+ dw NoMons
+ ENDC
+ dw $FFFF
+
+; wild pokemon data is divided into two parts.
+; first part: pokemon found in grass
+; second part: pokemon found while surfing
+; each part goes as follows:
+ ; if first byte == 00, then
+ ; no wild pokemon on this map
+ ; if first byte != 00, then
+ ; first byte is encounter rate
+ ; followed by 20 bytes:
+ ; level, species (ten times)
+
+INCLUDE "data/wildPokemon/nomons.asm"
+INCLUDE "data/wildPokemon/route1.asm"
+INCLUDE "data/wildPokemon/route2.asm"
+INCLUDE "data/wildPokemon/route22.asm"
+INCLUDE "data/wildPokemon/viridianforest.asm"
+INCLUDE "data/wildPokemon/route3.asm"
+INCLUDE "data/wildPokemon/mtmoon1.asm"
+INCLUDE "data/wildPokemon/mtmoonb1.asm"
+INCLUDE "data/wildPokemon/mtmoonb2.asm"
+INCLUDE "data/wildPokemon/route4.asm"
+INCLUDE "data/wildPokemon/route24.asm"
+INCLUDE "data/wildPokemon/route25.asm"
+INCLUDE "data/wildPokemon/route9.asm"
+INCLUDE "data/wildPokemon/route5.asm"
+INCLUDE "data/wildPokemon/route6.asm"
+INCLUDE "data/wildPokemon/route11.asm"
+INCLUDE "data/wildPokemon/rocktunnel1.asm"
+INCLUDE "data/wildPokemon/rocktunnel2.asm"
+INCLUDE "data/wildPokemon/route10.asm"
+INCLUDE "data/wildPokemon/route12.asm"
+INCLUDE "data/wildPokemon/route8.asm"
+INCLUDE "data/wildPokemon/route7.asm"
+INCLUDE "data/wildPokemon/pokemontower1.asm"
+INCLUDE "data/wildPokemon/pokemontower2.asm"
+INCLUDE "data/wildPokemon/pokemontower3.asm"
+INCLUDE "data/wildPokemon/pokemontower4.asm"
+INCLUDE "data/wildPokemon/pokemontower5.asm"
+INCLUDE "data/wildPokemon/pokemontower6.asm"
+INCLUDE "data/wildPokemon/pokemontower7.asm"
+INCLUDE "data/wildPokemon/route13.asm"
+INCLUDE "data/wildPokemon/route14.asm"
+INCLUDE "data/wildPokemon/route15.asm"
+INCLUDE "data/wildPokemon/route16.asm"
+INCLUDE "data/wildPokemon/route17.asm"
+INCLUDE "data/wildPokemon/route18.asm"
+INCLUDE "data/wildPokemon/safarizonecenter.asm"
+INCLUDE "data/wildPokemon/safarizone1.asm"
+INCLUDE "data/wildPokemon/safarizone2.asm"
+INCLUDE "data/wildPokemon/safarizone3.asm"
+INCLUDE "data/wildPokemon/waterpokemon.asm"
+INCLUDE "data/wildPokemon/seafoamisland1.asm"
+INCLUDE "data/wildPokemon/seafoamislandb1.asm"
+INCLUDE "data/wildPokemon/seafoamislandb2.asm"
+INCLUDE "data/wildPokemon/seafoamislandb3.asm"
+INCLUDE "data/wildPokemon/seafoamislandb4.asm"
+INCLUDE "data/wildPokemon/mansion1.asm"
+INCLUDE "data/wildPokemon/mansion2.asm"
+INCLUDE "data/wildPokemon/mansion3.asm"
+INCLUDE "data/wildPokemon/mansionb1.asm"
+INCLUDE "data/wildPokemon/route21.asm"
+INCLUDE "data/wildPokemon/unknowndungeon1.asm"
+INCLUDE "data/wildPokemon/unknowndungeon2.asm"
+INCLUDE "data/wildPokemon/unknowndungeonb1.asm"
+INCLUDE "data/wildPokemon/powerplant.asm"
+INCLUDE "data/wildPokemon/route23.asm"
+INCLUDE "data/wildPokemon/victoryroad2.asm"
+INCLUDE "data/wildPokemon/victoryroad3.asm"
+INCLUDE "data/wildPokemon/victoryroad1.asm"
+INCLUDE "data/wildPokemon/diglettscave.asm"
diff --git a/main.asm b/main.asm
index 986a2ef5..946fe4b8 100755
--- a/main.asm
+++ b/main.asm
@@ -254,11 +254,11 @@ MapHeaderPointers:: ; 01ae (0:01ae)
dw MtMoonPokecenter_h
dw CeruleanHouseTrashed_h ; copy
dw Route5Gate_h
- dw UndergroundTunnelEntranceRoute5_h
+ dw UndergroundPathEntranceRoute5_h
dw DayCareM_h
dw Route6Gate_h
- dw UndergroundTunnelEntranceRoute6_h
- dw UndergroundTunnelEntranceRoute6_h ; unused
+ dw UndergroundPathEntranceRoute6_h
+ dw UndergroundPathEntranceRoute6_h ; unused
dw Route7Gate_h
dw UndergroundPathEntranceRoute7_h
dw UndergroundPathEntranceRoute7Copy_h
@@ -692,7 +692,7 @@ OverworldLoopLessDelay:: ; 0402 (0:0402)
ld a,[$d736]
bit 7,a
jr z,.noSpinning
- callba Func_44fd7 ; spin while moving
+ callba LoadSpinnerArrowTiles ; spin while moving
.noSpinning
call UpdateSprites ; move sprites
.moveAhead2
@@ -1276,8 +1276,7 @@ IsBikeRidingAllowed:: ; 09c5 (0:09c5)
scf
ret
-BikeRidingTilesets:: ; 09e2 (0:09e2)
- db OVERWORLD, FOREST, UNDERGROUND, SHIP_PORT, CAVERN, $FF
+INCLUDE "data/bike_riding_tilesets.asm"
; load the tile pattern data of the current tileset into VRAM
LoadTilesetTilePatternData:: ; 09e8 (0:09e8)
@@ -3664,7 +3663,6 @@ Facility_Coll:: ; 17dd (0:17dd)
INCBIN "gfx/tilesets/facility.tilecoll"
Plateau_Coll:: ; 17f0 (0:17f0)
INCBIN "gfx/tilesets/plateau.tilecoll"
-;Tile Collision ends 0x17f7
; does the same thing as FarCopyData at 009D
; only difference is that it uses [$ff8b] instead of [$cee9] for a temp value
@@ -5936,81 +5934,7 @@ UpdateSprites:: ; 2429 (0:2429)
ld [$2000], a
ret
-; mart inventories are below
-; they are texts
-; first byte $FE, next byte # of items, last byte $FF
-
-; Viridian
-ViridianMartText6:: ; 2442 (0:2442)
- db $FE,4,POKE_BALL,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF
-
-; Pewter
-PewterMartText1:: ; 2449 (0:2449)
- db $FE,7,POKE_BALL,POTION,ESCAPE_ROPE,ANTIDOTE,BURN_HEAL,AWAKENING
- db PARLYZ_HEAL,$FF
-
-; Cerulean
-CeruleanMartText1:: ; 2453 (0:2453)
- db $FE,7,POKE_BALL,POTION,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING
- db PARLYZ_HEAL,$FF
-
-; Bike shop
- db $FE,1,BICYCLE,$FF
-
-; Vermilion
-VermilionMartText1:: ; 2461 (0:2461)
- db $FE,6,POKE_BALL,SUPER_POTION,ICE_HEAL,AWAKENING,PARLYZ_HEAL
- db REPEL,$FF
-
-; Lavender
-LavenderMartText1:: ; 246a (0:246a)
- db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,ESCAPE_ROPE,SUPER_REPEL
- db ANTIDOTE,BURN_HEAL,ICE_HEAL,PARLYZ_HEAL,$FF
-
-; Celadon Dept. Store 2F (1)
-CeladonMart2Text1:: ; 2476 (0:2476)
- db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,SUPER_REPEL,ANTIDOTE
- db BURN_HEAL,ICE_HEAL,AWAKENING,PARLYZ_HEAL,$FF
-
-; Celadon Dept. Store 2F (2)
-CeladonMart2Text2:: ; 2482 (0:2482)
- db $FE,9,TM_32,TM_33,TM_02,TM_07,TM_37,TM_01,TM_05,TM_09,TM_17,$FF
-
-; Celadon Dept. Store 4F
-CeladonMart4Text1:: ; 248e (0:248e)
- db $FE,5,POKE_DOLL,FIRE_STONE,THUNDER_STONE,WATER_STONE,LEAF_STONE,$FF
-
-; Celadon Dept. Store 5F (1)
-CeladonMart5Text3:: ; 2496 (0:2496)
- db $FE,7,X_ACCURACY,GUARD_SPEC_,DIRE_HIT,X_ATTACK,X_DEFEND,X_SPEED
- db X_SPECIAL,$FF
-
-; Celadon Dept. Store 5F (2)
-CeladonMart5Text4:: ; 24a0 (0:24a0)
- db $FE,5,HP_UP,PROTEIN,IRON,CARBOS,CALCIUM,$FF
-
-; Fuchsia
-FuchsiaMartText1:: ; 24a8 (0:24a8)
- db $FE,6,ULTRA_BALL,GREAT_BALL,SUPER_POTION,REVIVE,FULL_HEAL
- db SUPER_REPEL,$FF
-
-; unused? 24b1
- db $FE,5,GREAT_BALL,HYPER_POTION,SUPER_POTION,FULL_HEAL,REVIVE,$FF
-
-; Cinnabar
-CinnabarMartText1:: ; 24b9 (0:24b9)
- db $FE,7,ULTRA_BALL,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE
- db FULL_HEAL,REVIVE,$FF
-
-; Saffron
-SaffronMartText1:: ; 24c3 (0:24c3)
- db $FE,6,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE,FULL_HEAL
- db REVIVE,$FF
-
-; Indigo
-IndigoPlateauLobbyText4:: ; 24cc (0:24cc)
- db $FE,7,ULTRA_BALL,GREAT_BALL,FULL_RESTORE,MAX_POTION,FULL_HEAL
- db REVIVE,MAX_REPEL,$FF
+INCLUDE "data/mart_inventories.asm"
TextScriptEndingChar:: ; 24d6 (0:24d6)
db "@"
@@ -6018,12 +5942,12 @@ TextScriptEnd:: ; 24d7 (0:24d7)
ld hl,TextScriptEndingChar
ret
-UnnamedText_24db:: ; 24db (0:24db)
- TX_FAR _UnnamedText_24db
+ExclamationText:: ; 24db (0:24db)
+ TX_FAR _ExclamationText
db "@"
-UnnamedText_24e0:: ; 24e0 (0:24e0)
- TX_FAR _UnnamedText_24e0
+GroundRoseText:: ; 24e0 (0:24e0)
+ TX_FAR _GroundRoseText
db "@"
BoulderText:: ; 24e5 (0:24e5)
@@ -6121,7 +6045,7 @@ UncompressSpriteDataLoop:: ; 2556 (0:2556)
.unpackingMode0
ld [W_SPRITEUNPACKMODE], a
.startDecompression
- call ReadNextInputBit
+ call ReadNextInputBit
and a
jr z, .readRLEncodedZeros ; if first bit is 0, the input starts with zeroes, otherwise with (non-zero) input
.readNextInput
@@ -6153,7 +6077,7 @@ UncompressSpriteDataLoop:: ; 2556 (0:2556)
inc h
.noCarry
ld a, [hli] ; read offset that is added to the number later on
- ld e, a ; adding an offset of 2^length - 1 makes every integer uniquely
+ ld e, a ; adding an offset of 2^length - 1 makes every integer uniquely
ld d, [hl] ; representable in the length encoding and saves bits
push de
inc c
@@ -7830,8 +7754,8 @@ ReloadTilesetTilePatterns:: ; 3090 (0:3090)
ChooseFlyDestination:: ; 30a9 (0:30a9)
ld hl,$d72e
res 4,[hl]
- ld b, BANK(Func_70f90)
- ld hl, Func_70f90
+ ld b, BANK(LoadTownMap_Fly)
+ ld hl, LoadTownMap_Fly
jp Bankswitch
; causes the text box to close waithout waiting for a button press after displaying text
@@ -8314,7 +8238,7 @@ Func_3381:: ; 3381 (0:3381)
ld [$2000], a
push hl
callba SaveTrainerName
- ld hl, UnnamedText_33cf
+ ld hl, TrainerNameText
call PrintText
pop hl
pop af
@@ -8339,8 +8263,8 @@ Func_33b7:: ; 33b7 (0:33b7)
ld l, a
ret
-UnnamedText_33cf:: ; 33cf (0:33cf)
- TX_FAR _UnnamedText_33cf
+TrainerNameText:: ; 33cf (0:33cf)
+ TX_FAR _TrainerNameText
db $08
Func_33d4:: ; 33d4 (0:33d4)
@@ -8401,23 +8325,7 @@ PlayTrainerMusic:: ; 33e8 (0:33e8)
ld [$c0ee], a
jp PlaySound
-FemaleTrainerList:: ; 3434 (0:3434)
- db $c8+LASS
- db $c8+JR__TRAINER_F
- db $c8+BEAUTY
- db $c8+COOLTRAINER_F
- db $FF
-
-EvilTrainerList:: ; 3439 (0:3439)
- db $c8+JUGGLER_X
- db $c8+GAMBLER
- db $c8+ROCKER
- db $c8+JUGGLER
- db $c8+CHIEF
- db $c8+SCIENTIST
- db $c8+GIOVANNI
- db $c8+ROCKET
- db $FF
+INCLUDE "data/trainer_types.asm"
Func_3442:: ; 3442 (0:3442)
ld a, [hli]
@@ -8928,7 +8836,7 @@ FillMemory:: ; 36e0 (0:36e0)
dec bc
ld a, b
or c
- jr nz, .loop
+ jr nz, .loop
pop de
ret
@@ -9208,7 +9116,7 @@ GetJoypadStateLowSensitivity:: ; 3831 (0:3831)
and a
jr nz,.setShortDelay
xor a
- ld [$ffb5],a
+ ld [$ffb5],a
.setShortDelay
ld a,5 ; 1/12 of a second delay
ld [H_FRAMECOUNTER],a
@@ -9700,7 +9608,7 @@ HandleMenuInputPokemonSelection:: ; 3ac2 (0:3ac2)
ld a,[$d09b]
and a ; is it a pokemon selection menu?
jr z,.getJoypadState
- callba Func_716ff ; shake mini sprite of selected pokemon
+ callba AnimatePartyMon ; shake mini sprite of selected pokemon
.getJoypadState
pop hl
call GetJoypadStateLowSensitivity
@@ -10355,8 +10263,8 @@ GivePokemon:: ; 3e48 (0:3e48)
ld [$d127], a
xor a
ld [$cc49], a
- ld b, BANK(Func_4fda5)
- ld hl, Func_4fda5
+ ld b, BANK(_GivePokemon)
+ ld hl, _GivePokemon
jp Bankswitch
GenRandom:: ; 3e5c (0:3e5c)
@@ -10492,9 +10400,9 @@ PointerTable_3f22:: ; 3f22 (0:3f22)
dw CardKeyFailText ; id = 02
dw Route15UpstairsLeftBinoculars ; id = 03
dw RedBedroomSNESText ; id = 04
- dw UnnamedText_1e960 ; id = 05
- dw UnnamedText_1e97e ; id = 06
- dw UnnamedText_1e983 ; id = 07
+ dw PushStartText ; id = 05
+ dw SaveOptionText ; id = 06
+ dw StrengthsAndWeaknessesText ; id = 07
dw OakLabEmailText ; id = 08
dw AerodactylFossilText ; id = 09
dw Route15UpstairsBinocularsText ; id = 0A
@@ -10517,11 +10425,11 @@ PointerTable_3f22:: ; 3f22 (0:3f22)
dw UnnamedText_624c1 ; id = 1B
dw UnnamedText_624c6 ; id = 1C
dw UnnamedText_624cb ; id = 1D
- dw Unknown_62508 ; id = 1E
+ dw TerminatorText_62508 ; id = 1E
dw Unknown_62529 ; id = 1F
dw ViridianSchoolNotebook ; id = 20
dw ViridianSchoolBlackboard ; id = 21
- dw UnnamedText_21865 ; id = 22
+ dw JustAMomentText ; id = 22
dw Unknown_21878 ; id = 23
dw FoundHiddenItemText ; id = 24
dw HiddenItemBagFullText ; id = 25
@@ -10535,7 +10443,7 @@ PointerTable_3f22:: ; 3f22 (0:3f22)
dw BillsHouseMonitorText ; id = 2D
dw BillsHouseInitiatedText ; id = 2E
dw BillsHousePokemonList ; id = 2F
- dw UnnamedText_1eb69 ; id = 30
+ dw MagazinesText ; id = 30
dw CinnabarGymQuiz ; id = 31
dw GameCornerNoCoinsText ; id = 32
dw GameCornerCoinCaseText ; id = 33
@@ -10664,41 +10572,7 @@ MewPicFront: ; 4112 (1:4112)
MewPicBack: ; 4205 (1:4205)
INCBIN "pic/monback/mewb.pic"
-MewBaseStats: ; 425b (1:425b)
- db DEX_MEW ; pokedex id
- db 100 ; base hp
- db 100 ; base attack
- db 100 ; base defense
- db 100 ; base speed
- db 100 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 45 ; catch rate
- db 64 ; base exp yield
- db $55 ; sprite dimensions
-
- dw MewPicFront
- dw MewPicBack
-
- ; attacks known at lvl 0
- db POUND
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; include learnset directly
- db %11111111
- db %11111111
- db %11111111
- db %11111111
- db %11111111
- db %11111111
- db %11111111
- db %11111111 ; usually spacing
+INCLUDE "data/baseStats/mew.asm"
Func_4277: ; 4277 (1:4277)
ld hl, $cce9
@@ -10706,7 +10580,7 @@ Func_4277: ; 4277 (1:4277)
and a
jr z, .asm_4284
dec [hl]
- ld hl, UnnamedText_42a7 ; $42a7
+ ld hl, SafariZoneEatingText
jr .asm_429f
.asm_4284
dec hl
@@ -10714,7 +10588,7 @@ Func_4277: ; 4277 (1:4277)
and a
ret z
dec [hl]
- ld hl, UnnamedText_42ac ; $42ac
+ ld hl, SafariZoneAngryText
jr nz, .asm_429f
push hl
ld a, [$cfe5]
@@ -10729,12 +10603,12 @@ Func_4277: ; 4277 (1:4277)
pop hl
jp PrintText
-UnnamedText_42a7: ; 42a7 (1:42a7)
- TX_FAR SafariZoneEatingText
+SafariZoneEatingText: ; 42a7 (1:42a7)
+ TX_FAR _SafariZoneEatingText
db "@"
-UnnamedText_42ac: ; 42ac (1:42ac)
- TX_FAR SafariZoneAngryText
+SafariZoneAngryText: ; 42ac (1:42ac)
+ TX_FAR _SafariZoneAngryText
db "@"
; copy text of fixed length $b (like player name, rival name, mon names, ...)
@@ -10760,7 +10634,7 @@ Func_42b7: ; 42b7 (1:42b7)
ld [$c0ef], a
ld [$c0f0], a
-Func_42dd: ; 42dd (1:42dd)
+LoadTitlescreenGraphics: ; 42dd (1:42dd)
call GBPalWhiteOut
ld a, $1
ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
@@ -11116,68 +10990,13 @@ CopyrightTextString: ; 4556 (1:4556)
next $60,$61,$62,$61,$63,$61,$64,$7F,$73,$74,$75,$76,$77,$78,$79,$7A,$7B ; ©'95.'96.'98 GAME FREAK inc.
db "@"
-TitleMons: ; 4588 (1:4588)
-; mons on the title screen are randomly chosen from here
-IF _RED
- db CHARMANDER
- db SQUIRTLE
- db BULBASAUR
- db WEEDLE
- db NIDORAN_M
- db SCYTHER
- db PIKACHU
- db CLEFAIRY
- db RHYDON
- db ABRA
- db GASTLY
- db DITTO
- db PIDGEOTTO
- db ONIX
- db PONYTA
- db MAGIKARP
-ENDC
-IF _GREEN
- db BULBASAUR
- db CHARMANDER
- db SQUIRTLE
- db CATERPIE
- db NIDORAN_F
- db PINSIR
- db PIKACHU
- db CLEFAIRY
- db RHYDON
- db ABRA
- db GASTLY
- db DITTO
- db PIDGEOTTO
- db ONIX
- db PONYTA
- db MAGIKARP
-ENDC
-IF _BLUE
- db SQUIRTLE
- db CHARMANDER
- db BULBASAUR
- db MANKEY
- db HITMONLEE
- db VULPIX
- db CHANSEY
- db AERODACTYL
- db JOLTEON
- db SNORLAX
- db GLOOM
- db POLIWAG
- db DODUO
- db PORYGON
- db GENGAR
- db RAICHU
-ENDC
+INCLUDE "data/title_mons.asm"
; prints version text (red, blue)
PrintGameVersionOnTitleScreen: ; 4598 (1:4598)
FuncCoord 7, 8 ; $c447
ld hl, Coord
- ld de, VersionOnTitleScreenText ; $45a1
+ ld de, VersionOnTitleScreenText
jp PlaceString
; these point to special tiles specifically loaded for that purpose and are not usual text
@@ -11242,203 +11061,9 @@ LoadMonData_: ; 45b6 (1:45b6)
ld bc,44
jp CopyData
-ItemPrices: ; 4608 (1:4608)
- db $00,$00,$00
- db $00,$12,$00
- db $00,$06,$00
- db $00,$02,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$10,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$01,$00
- db $00,$02,$50
- db $00,$02,$50
- db $00,$02,$00
- db $00,$02,$00
- db $00,$30,$00
- db $00,$25,$00
- db $00,$15,$00
- db $00,$07,$00
- db $00,$03,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$05,$50
- db $00,$03,$50
- db $00,$00,$00
- db $00,$21,$00
- db $00,$21,$00
- db $00,$21,$00
- db $00,$98,$00
- db $00,$98,$00
- db $00,$98,$00
- db $00,$98,$00
- db $00,$98,$00
- db $00,$48,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$09,$50
- db $00,$21,$00
- db $00,$00,$00
- db $01,$00,$00
- db $00,$98,$00
- db $00,$10,$00
- db $00,$06,$00
- db $00,$15,$00
- db $00,$40,$00
- db $00,$07,$00
- db $00,$05,$00
- db $00,$07,$00
- db $00,$06,$50
- db $00,$00,$10
- db $00,$02,$00
- db $00,$03,$00
- db $00,$03,$50
- db $00,$00,$00
- db $00,$00,$00
- db $00,$05,$00
- db $00,$05,$50
- db $00,$03,$50
- db $00,$03,$50
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
- db $00,$00,$00
-
-ItemNames: ; 472b (1:472b)
- db "MASTER BALL@"
- db "ULTRA BALL@"
- db "GREAT BALL@"
- db "POKé BALL@"
- db "TOWN MAP@"
- db "BICYCLE@"
- db "?????@"
- db "SAFARI BALL@"
- db "POKéDEX@"
- db "MOON STONE@"
- db "ANTIDOTE@"
- db "BURN HEAL@"
- db "ICE HEAL@"
- db "AWAKENING@"
- db "PARLYZ HEAL@"
- db "FULL RESTORE@"
- db "MAX POTION@"
- db "HYPER POTION@"
- db "SUPER POTION@"
- db "POTION@"
- db "BOULDERBADGE@"
- db "CASCADEBADGE@"
- db "THUNDERBADGE@"
- db "RAINBOWBADGE@"
- db "SOULBADGE@"
- db "MARSHBADGE@"
- db "VOLCANOBADGE@"
- db "EARTHBADGE@"
- db "ESCAPE ROPE@"
- db "REPEL@"
- db "OLD AMBER@"
- db "FIRE STONE@"
- db "THUNDERSTONE@"
- db "WATER STONE@"
- db "HP UP@"
- db "PROTEIN@"
- db "IRON@"
- db "CARBOS@"
- db "CALCIUM@"
- db "RARE CANDY@"
- db "DOME FOSSIL@"
- db "HELIX FOSSIL@"
- db "SECRET KEY@"
- db "?????@"
- db "BIKE VOUCHER@"
- db "X ACCURACY@"
- db "LEAF STONE@"
- db "CARD KEY@"
- db "NUGGET@"
- db "PP UP@"
- db "POKé DOLL@"
- db "FULL HEAL@"
- db "REVIVE@"
- db "MAX REVIVE@"
- db "GUARD SPEC.@"
- db "SUPER REPEL@"
- db "MAX REPEL@"
- db "DIRE HIT@"
- db "COIN@"
- db "FRESH WATER@"
- db "SODA POP@"
- db "LEMONADE@"
- db "S.S.TICKET@"
- db "GOLD TEETH@"
- db "X ATTACK@"
- db "X DEFEND@"
- db "X SPEED@"
- db "X SPECIAL@"
- db "COIN CASE@"
- db "OAK's PARCEL@"
- db "ITEMFINDER@"
- db "SILPH SCOPE@"
- db "POKé FLUTE@"
- db "LIFT KEY@"
- db "EXP.ALL@"
- db "OLD ROD@"
- db "GOOD ROD@"
- db "SUPER ROD@"
- db "PP UP@"
- db "ETHER@"
- db "MAX ETHER@"
- db "ELIXER@"
- db "MAX ELIXER@"
- db "B2F@"
- db "B1F@"
- db "1F@"
- db "2F@"
- db "3F@"
- db "4F@"
- db "5F@"
- db "6F@"
- db "7F@"
- db "8F@"
- db "9F@"
- db "10F@"
- db "11F@"
- db "B4F@"
+INCLUDE "data/item_prices.asm"
+
+INCLUDE "text/item_names.asm"
UnusedNames: ; 4a92 (1:4a92)
db "かみなりバッヂ@"
@@ -11654,7 +11279,7 @@ Func_4c05: ; 4c05 (1:4c05)
.asm_4c1a
FuncCoord 4, 11 ; $c480
ld hl, Coord
- ld de, WaitingText ; $4c28
+ ld de, WaitingText
call PlaceString
ld c, $32
jp DelayFrames
@@ -11929,13 +11554,13 @@ Func_4da6: ; 4da6 (1:4da6)
ld [hl], a
ld a, $1
ld [$cf91], a
- ld a, $14
+ ld a, 20
ld [W_CURENEMYLVL], a
xor a
ld [$cc49], a
ld [W_CURMAP], a
call AddPokemonToParty
- ld a, $1
+ ld a, RHYDON
ld [W_CUROPPONENT], a
ld a, $2c
call Predef
@@ -12618,7 +12243,7 @@ CanWalkOntoTile: ; 516e (1:516e)
add $2
ld l, a
ld a, [hli] ; c2x2 (sprite Y displacement, initialized at $8, keep track of where a sprite did go)
- bit 7, d ; check if going upwards (d=$ff)
+ bit 7, d ; check if going upwards (d=$ff)
jr nz, .upwards
add d
cp $5
@@ -12630,7 +12255,7 @@ CanWalkOntoTile: ; 516e (1:516e)
.checkHorizontal
ld d, a
ld a, [hl] ; c2x3 (sprite X displacement, initialized at $8, keep track of where a sprite did go)
- bit 7, e ; check if going left (e=$ff)
+ bit 7, e ; check if going left (e=$ff)
jr nz, .left
add e
cp $5 ; compare, but no conditional jump like in the vertical check above (bug?)
@@ -12861,7 +12486,7 @@ Func_5317: ; 5317 (1:5317)
call UpdateSprites
call LoadFontTilePatterns
call LoadHpBarAndStatusTilePatterns
- call Func_5ae6
+ call LoadTrainerInfoTextBoxTiles
FuncCoord 3, 8 ; $c443
ld hl, Coord
ld b, $2
@@ -13123,7 +12748,7 @@ Func_5345: ; 5345
jr nz, .asm_5506
ld a, $4
ld [W_ISLINKBATTLE], a ; $d12b
- ld a, $e1
+ ld a, SONY1 + $c8
ld [W_CUROPPONENT], a ; $d059
call ClearScreen
call Delay3
@@ -13148,7 +12773,7 @@ Func_551c:
ld b, $0
ld a, [$cc38]
cp $ff
- jp z, Func_42dd
+ jp z, LoadTitlescreenGraphics
add a
ld c, a
add hl, bc
@@ -13159,7 +12784,7 @@ Func_551c:
Func_5530
call ClearScreen
- call Func_5ae6
+ call LoadTrainerInfoTextBoxTiles
call Func_57f2
call Func_57a2
xor a
@@ -13471,7 +13096,7 @@ Func_57d6:
ld a, $37
call Predef
call GBPalNormal
- call Func_5ae6
+ call LoadTrainerInfoTextBoxTiles
call Func_57f2
jp Func_57a2
@@ -13692,7 +13317,7 @@ Func_5849:
.asm_59de
callab Func_3ad0e
call ClearScreen
- call Func_5ae6
+ call LoadTrainerInfoTextBoxTiles
call Func_226e
ld c, $28
call DelayFrames
@@ -13815,7 +13440,7 @@ Func_5ae0: ; 5ae0 (1:5ae0)
jr nz, .asm_5ae1
ret
-Func_5ae6: ; 5ae6 (1:5ae6)
+LoadTrainerInfoTextBoxTiles: ; 5ae6 (1:5ae6)
ld de, TrainerInfoTextBoxTileGraphics ; $7b98
ld hl, $9760
ld bc, (BANK(TrainerInfoTextBoxTileGraphics) << 8) +$09
@@ -13864,7 +13489,7 @@ MainMenu: ; 5af2 (1:5af2)
call TextBoxBorder
FuncCoord 2,2
ld hl,Coord
- ld de,ContinueText ; $5d7e
+ ld de,ContinueText
call PlaceString
jr .next2
.next1
@@ -13875,7 +13500,7 @@ MainMenu: ; 5af2 (1:5af2)
call TextBoxBorder
FuncCoord 2,2
ld hl,Coord
- ld de,NewGameText ; $5d87
+ ld de,NewGameText
call PlaceString
.next2
ld hl,$D730
@@ -13895,7 +13520,7 @@ MainMenu: ; 5af2 (1:5af2)
ld [$CC28],a
call HandleMenuInput
bit 1,a
- jp nz,Func_42dd ; load title screen (gfx and arrangement)
+ jp nz,LoadTitlescreenGraphics ; load title screen (gfx and arrangement)
ld c,20
call DelayFrames
ld a,[$CC26]
@@ -13964,7 +13589,7 @@ Func_5c0a: ; 5c0a (1:5c0a)
ld hl, TextTerminator_6b20 ; $6b20
call PrintText
call SaveScreenTilesToBuffer1
- ld hl, UnnamedText_5d43 ; $5d43
+ ld hl, WhereWouldYouLikeText
call PrintText
FuncCoord 5, 5 ; $c409
ld hl, Coord
@@ -13974,7 +13599,7 @@ Func_5c0a: ; 5c0a (1:5c0a)
call UpdateSprites
FuncCoord 7, 7 ; $c433
ld hl, Coord
- ld de, TradeCenterText ; $5d97
+ ld de, TradeCenterText
call PlaceString
xor a
ld [$cd37], a
@@ -14088,7 +13713,7 @@ Func_5c0a: ; 5c0a (1:5c0a)
ld a, BATTLE_CENTER
.asm_5cfc
ld [$d72d], a
- ld hl, UnnamedText_5d48 ; $5d48
+ ld hl, PleaseWaitText
call PrintText
ld c, $32
call DelayFrames
@@ -14111,22 +13736,22 @@ Func_5c0a: ; 5c0a (1:5c0a)
ld [wMenuJoypadPollCount], a ; $cc34
call Delay3
call Func_72d7
- ld hl, UnnamedText_5d4d ; $5d4d
+ ld hl, LinkCanceledText
call PrintText
ld hl, $d72e
res 6, [hl]
ret
-UnnamedText_5d43: ; 5d43 (1:5d43)
- TX_FAR _UnnamedText_5d43
+WhereWouldYouLikeText: ; 5d43 (1:5d43)
+ TX_FAR _WhereWouldYouLikeText
db "@"
-UnnamedText_5d48: ; 5d48 (1:5d48)
- TX_FAR _UnnamedText_5d48
+PleaseWaitText: ; 5d48 (1:5d48)
+ TX_FAR _PleaseWaitText
db "@"
-UnnamedText_5d4d: ; 5d4d (1:5d4d)
- TX_FAR _UnnamedText_5d4d
+LinkCanceledText: ; 5d4d (1:5d4d)
+ TX_FAR _LinkCanceledText
db "@"
Func_5d52: ; 5d52 (1:5d52)
@@ -14174,7 +13799,7 @@ Func_5db5: ; 5db5 (1:5db5)
call TextBoxBorder
FuncCoord 5, 9 ; $c459
ld hl, Coord
- ld de, SaveScreenInfoText ; $5e6a
+ ld de, SaveScreenInfoText
call PlaceString
FuncCoord 12, 9 ; $c460
ld hl, Coord
@@ -14572,11 +14197,11 @@ Func_60ca: ; 60ca (1:60ca)
ld a, [$d08a]
and a
call z, Func_5bff
- ld hl, NintenText ; $45aa
+ ld hl, NintenText
ld de, W_PLAYERNAME ; $d158
ld bc, $b
call CopyData
- ld hl, SonyText ; $45b1
+ ld hl, SonyText
ld de, W_RIVALNAME ; $d34a
ld bc, $b
jp CopyData
@@ -14813,7 +14438,7 @@ Func_62ce: ; 62ce (1:62ce)
ld hl,$D732
bit 4,[hl]
ret nz
- ld [$D365],a
+ ld [wLastMap],a
ret
Func_62ff: ; 62ff (1:62ff)
@@ -14932,122 +14557,7 @@ Func_62ff: ; 62ff (1:62ff)
ld [$d42f], a
ret
-DungeonWarpList: ; 63bf (1:63bf)
- db SEAFOAM_ISLANDS_2,$01
- db SEAFOAM_ISLANDS_2,$02
- db SEAFOAM_ISLANDS_3,$01
- db SEAFOAM_ISLANDS_3,$02
- db SEAFOAM_ISLANDS_4,$01
- db SEAFOAM_ISLANDS_4,$02
- db SEAFOAM_ISLANDS_5,$01
- db SEAFOAM_ISLANDS_5,$02
- db VICTORY_ROAD_2,$02
- db MANSION_1,$01
- db MANSION_1,$02
- db MANSION_2,$03
- db $FF
-
-DungeonWarpData: ; 63d8 (1:63d8)
- FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,18
- FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,23
- FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,19
- FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,22
- FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,18
- FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,19
- FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,4
- FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,5
- FLYWARP_DATA VICTORY_ROAD_2_WIDTH,16,22
- FLYWARP_DATA MANSION_1_WIDTH,14,16
- FLYWARP_DATA MANSION_1_WIDTH,14,16
- FLYWARP_DATA MANSION_2_WIDTH,14,18
-
-;Format:
-; db Map_id
-; FLYWARP_DATA [Map Width][Y-pos][X-pos]
-; db Tileset_id
-FirstMapSpec: ; 6420 (1:6420)
- db REDS_HOUSE_2F
- FLYWARP_DATA REDS_HOUSE_2F_WIDTH,6,3
- db REDS_HOUSE_2
-
-BattleCenterSpec1: ; 6428 (1:6428)
- db BATTLE_CENTER
- FLYWARP_DATA BATTLE_CENTER_WIDTH,4,3
- db CLUB
-
-BattleCenterSpec2: ; 6430 (1:6430)
- db BATTLE_CENTER
- FLYWARP_DATA BATTLE_CENTER_WIDTH,4,6
- db CLUB
-
-TradeCenterSpec1: ; 6438 (1:6438)
- db TRADE_CENTER
- FLYWARP_DATA TRADE_CENTER_WIDTH,4,3
- db CLUB
-
-TradeCenterSpec2: ; 6440 (1:6440)
- db TRADE_CENTER
- FLYWARP_DATA TRADE_CENTER_WIDTH,4,6
- db CLUB
-
-FlyWarpDataPtr: ; 6448 (1:6448)
- db PALLET_TOWN, 0
- dw PalletTownFlyWarp
- db VIRIDIAN_CITY, 0
- dw ViridianCityFlyWarp
- db PEWTER_CITY, 0
- dw PewterCityFlyWarp
- db CERULEAN_CITY, 0
- dw CeruleanCityFlyWarp
- db LAVENDER_TOWN, 0
- dw LavenderTownFlyWarp
- db VERMILION_CITY, 0
- dw VermilionCityFlyWarp
- db CELADON_CITY, 0
- dw CeladonCityFlyWarp
- db FUCHSIA_CITY, 0
- dw FuchsiaCityFlyWarp
- db CINNABAR_ISLAND, 0
- dw CinnabarIslandFlyWarp
- db INDIGO_PLATEAU, 0
- dw IndigoPlateauFlyWarp
- db SAFFRON_CITY, 0
- dw SaffronCityFlyWarp
- db ROUTE_4, 0
- dw Route4FlyWarp
- db ROUTE_10, 0
- dw Route10FlyWarp
-
-; Original Format:
-; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block]
-; Macro Format:
-; FLYWARP_DATA [Map Width][Y-pos][X-pos]
-PalletTownFlyWarp: ; 647c (1:647c)
- FLYWARP_DATA PALLET_TOWN_WIDTH, 6, 5
-ViridianCityFlyWarp: ; 6482 (1:6482)
- FLYWARP_DATA VIRIDIAN_CITY_WIDTH, 26, 23
-PewterCityFlyWarp: ; 6488 (1:6488)
- FLYWARP_DATA PEWTER_CITY_WIDTH, 26, 13
-CeruleanCityFlyWarp: ; 648e (1:648e)
- FLYWARP_DATA CERULEAN_CITY_WIDTH, 18, 19
-LavenderTownFlyWarp: ; 6494 (1:6494)
- FLYWARP_DATA LAVENDER_TOWN_WIDTH, 6, 3
-VermilionCityFlyWarp: ; 649a (1:649a)
- FLYWARP_DATA VERMILION_CITY_WIDTH, 4, 11
-CeladonCityFlyWarp: ; 64a0 (1:64a0)
- FLYWARP_DATA CELADON_CITY_WIDTH, 10, 41
-FuchsiaCityFlyWarp: ; 64a6 (1:64a6)
- FLYWARP_DATA FUCHSIA_CITY_WIDTH, 28, 19
-CinnabarIslandFlyWarp: ; 64ac (1:64ac)
- FLYWARP_DATA CINNABAR_ISLAND_WIDTH, 12, 11
-IndigoPlateauFlyWarp: ; 64b2 (1:64b2)
- FLYWARP_DATA INDIGO_PLATEAU_WIDTH, 6, 9
-SaffronCityFlyWarp: ; 64b8 (1:64b8)
- FLYWARP_DATA SAFFRON_CITY_WIDTH, 30, 9
-Route4FlyWarp: ; 64be (1:64be)
- FLYWARP_DATA ROUTE_4_WIDTH, 6, 11
-Route10FlyWarp: ; 64c4 (1:64c4)
- FLYWARP_DATA ROUTE_10_WIDTH, 20, 11
+INCLUDE "data/special_warps.asm"
; This function appears to never be used.
; It is likely a debugging feature to give the player Tsunekazu Ishihara's
@@ -15096,7 +14606,7 @@ AskForMonNickname: ; 64eb (1:64eb)
ld a, [$cf91]
ld [$d11e], a
call GetMonName
- ld hl, DoYouWantToNicknameText ; $6557
+ ld hl, DoYouWantToNicknameText
call PrintText
FuncCoord 14, 7 ; $c43a
ld hl, Coord
@@ -15115,7 +14625,7 @@ AskForMonNickname: ; 64eb (1:64eb)
push hl
ld a, $2
ld [$d07d], a
- call Func_6596
+ call DisplayNamingScreen
ld a, [W_ISINBATTLE] ; $d057
and a
jr nz, .asm_653e
@@ -15145,7 +14655,7 @@ Func_655c: ; 655c (1:655c)
ld [$cfcb], a
ld a, $2
ld [$d07d], a
- call Func_6596
+ call DisplayNamingScreen
call GBPalWhiteOutWithDelay3
call Func_3dbe
call LoadGBPal
@@ -15167,7 +14677,7 @@ Func_655c: ; 655c (1:655c)
scf
ret
-Func_6596: ; 6596 (1:6596)
+DisplayNamingScreen: ; 6596 (1:6596)
push hl
ld hl, $d730
set 6, [hl]
@@ -15177,14 +14687,14 @@ Func_6596: ; 6596 (1:6596)
ld b, $8
call GoPAL_SET
call LoadHpBarAndStatusTilePatterns
- call Func_675b
+ call LoadEDTile
callba Func_7176c
FuncCoord 0, 4 ; $c3f0
ld hl, Coord
ld b, $9
ld c, $12
call TextBoxBorder
- call Func_68f8
+ call PrintNamingText
ld a, $3
ld [wTopMenuItemY], a ; $cc24
ld a, $1
@@ -15203,7 +14713,7 @@ Func_6596: ; 6596 (1:6596)
ld [hli], a
ld [W_SUBANIMTRANSFORM], a ; $d08b
.asm_65ed
- call Func_676f
+ call PrintAlphabet
call GBPalNormal
.asm_65f3
ld a, [$ceea]
@@ -15215,7 +14725,7 @@ Func_6596: ; 6596 (1:6596)
.asm_65ff
ld a, [wCurrentMenuItem] ; $cc26
push af
- callba Func_716f7
+ callba AnimatePartyMon_ForceSpeed1
pop af
ld [wCurrentMenuItem], a ; $cc26
call GetJoypadStateLowSensitivity
@@ -15315,7 +14825,7 @@ Func_6596: ; 6596 (1:6596)
inc hl
ld a, [hl]
ld [$ceed], a
- call Func_68eb
+ call CalcStringLength
ld a, [$ceed]
cp $e5
ld de, Dakutens ; $6885
@@ -15352,7 +14862,7 @@ Func_6596: ; 6596 (1:6596)
ld a, [$cee9]
and a
ret z
- call Func_68eb
+ call CalcStringLength
dec hl
ld [hl], $50
ret
@@ -15408,7 +14918,7 @@ Func_6596: ; 6596 (1:6596)
ld [wTopMenuItemX], a ; $cc25
jp EraseMenuCursor
-Func_675b: ; 675b (1:675b)
+LoadEDTile: ; 675b (1:675b)
ld de, ED_Tile
ld hl, $8f00
ld bc, $1
@@ -15417,7 +14927,7 @@ Func_675b: ; 675b (1:675b)
ED_Tile: ; 6767 (1:6767)
INCBIN "gfx/ED_tile.1bpp"
-Func_676f: ; 676f (1:676f)
+PrintAlphabet: ; 676f (1:676f)
xor a
ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
ld a, [$ceeb]
@@ -15455,7 +14965,7 @@ UpperCaseAlphabet: ; 67d6 (1:67d6)
db "ABCDEFGHIJKLMNOPQRSTUVWXYZ ×():;[]",$e1,$e2,"-?!♂♀/",$f2,",¥lower case@"
Func_680e: ; 680e (1:680e)
- call Func_68eb
+ call CalcStringLength
ld a, c
ld [$cee9], a
FuncCoord 10, 2 ; $c3d2
@@ -15512,7 +15022,7 @@ Func_680e: ; 680e (1:680e)
Func_6871: ; 6871 (1:6871)
push de
- call Func_68eb
+ call CalcStringLength
dec hl
ld a, [hl]
pop hl
@@ -15540,7 +15050,8 @@ Handakutens: ; 68d6 (1:68d6)
db "ハパ", "ヒピ", "フプ", "へぺ", "ホポ"
db $ff
-Func_68eb: ; 68eb (1:68eb)
+; calculates the length of the string at $cf4b and stores it in c
+CalcStringLength: ; 68eb (1:68eb)
ld hl, $cf4b
ld c, $0
.asm_68f0
@@ -15551,16 +15062,16 @@ Func_68eb: ; 68eb (1:68eb)
inc c
jr .asm_68f0
-Func_68f8: ; 68f8 (1:68f8)
+PrintNamingText: ; 68f8 (1:68f8)
FuncCoord 0, 1 ; $c3b4
ld hl, Coord
ld a, [$d07d]
ld de, YourTextString ; $693f
and a
- jr z, .asm_6934
+ jr z, .notNickname
ld de, RivalsTextString ; $6945
dec a
- jr z, .asm_6934
+ jr z, .notNickname
ld a, [$cf91]
ld [$cd5d], a
push af
@@ -15577,13 +15088,13 @@ Func_68f8: ; 68f8 (1:68f8)
FuncCoord 1, 3 ; $c3dd
ld hl, Coord
ld de, NicknameTextString ; $6953
- jr .asm_693c
-.asm_6934
+ jr .placeString
+.notNickname
call PlaceString
ld l, c
ld h, b
ld de, NameTextString ; $694d
-.asm_693c
+.placeString
jp PlaceString
YourTextString: ; 693f (1:693f)
@@ -15614,7 +15125,7 @@ Func_695d: ; 695d (1:695d)
ld hl, W_PLAYERNAME ; $d158
xor a
ld [$d07d], a
- call Func_6596
+ call DisplayNamingScreen
ld a, [$cf4b]
cp $50
jr z, .asm_697a
@@ -15624,11 +15135,11 @@ Func_695d: ; 695d (1:695d)
ld b, BANK(RedPicFront)
call IntroPredef3B
.asm_6999
- ld hl, UnnamedText_699f ; $699f
+ ld hl, YourNameIsText
jp PrintText
-UnnamedText_699f: ; 699f (1:699f)
- TX_FAR _UnnamedText_699f
+YourNameIsText: ; 699f (1:699f)
+ TX_FAR _YourNameIsText
db "@"
Func_69a4: ; 69a4 (1:69a4)
@@ -15647,7 +15158,7 @@ Func_69a4: ; 69a4 (1:69a4)
ld hl, W_RIVALNAME ; $d34a
ld a, $1
ld [$d07d], a
- call Func_6596
+ call DisplayNamingScreen
ld a, [$cf4b]
cp $50
jr z, .asm_69c1
@@ -15657,11 +15168,11 @@ Func_69a4: ; 69a4 (1:69a4)
ld b, $13
call IntroPredef3B
.asm_69e1
- ld hl, UnnamedText_69e7 ; $69e7
+ ld hl, HisNameIsText
jp PrintText
-UnnamedText_69e7: ; 69e7 (1:69e7)
- TX_FAR _UnnamedText_69e7
+HisNameIsText: ; 69e7 (1:69e7)
+ TX_FAR _HisNameIsText
db "@"
Func_69ec: ; 69ec (1:69ec)
@@ -16099,7 +15610,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
call DisplayChooseQuantityMenu
inc a
jr z,.sellMenuLoop ; if the player closed the choose quantity menu with the B button
- ld hl,PokemartTellSellPrice
+ ld hl,PokemartTellSellPriceText
ld bc,$0e01
call PrintText
FuncCoord 14,7
@@ -16172,7 +15683,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
ld [$d11e],a ; store item ID for GetItemName
call GetItemName
call CopyStringToCF4B ; copy name to $cf4b
- ld hl,PokemartTellBuyPrice
+ ld hl,PokemartTellBuyPriceText
call PrintText
FuncCoord 14,7
ld hl,Coord
@@ -16240,8 +15751,8 @@ PokemartBuyingGreetingText: ; 6e0c (1:6e0c)
TX_FAR _PokemartBuyingGreetingText
db "@"
-PokemartTellBuyPrice: ; 6e11 (1:6e11)
- TX_FAR _PokemartTellBuyPrice
+PokemartTellBuyPriceText: ; 6e11 (1:6e11)
+ TX_FAR _PokemartTellBuyPriceText
db "@"
PokemartBoughtItemText: ; 6e16 (1:6e16)
@@ -16260,8 +15771,8 @@ PokemonSellingGreetingText: ; 6e25 (1:6e25)
TX_FAR _PokemonSellingGreetingText
db "@"
-PokemartTellSellPrice: ; 6e2a (1:6e2a)
- TX_FAR _PokemartTellSellPrice
+PokemartTellSellPriceText: ; 6e2a (1:6e2a)
+ TX_FAR _PokemartTellSellPriceText
db "@"
PokemartItemBagEmptyText: ; 6e2f (1:6e2f)
@@ -16313,7 +15824,7 @@ Func_6e5b: ; 6e5b (1:6e5b)
push de
ld [$d11e], a
call GetMoveName
- ld hl, UnnamedText_6fc8 ; $6fc8
+ ld hl, OneTwoAndText
call PrintText
pop de
pop hl
@@ -16356,7 +15867,7 @@ Func_6e5b: ; 6e5b (1:6e5b)
jp Func_6efe
Func_6eda: ; 6eda (1:6eda)
- ld hl, UnnamedText_6fb9 ; $6fb9
+ ld hl, AbandonLearningText
call PrintText
FuncCoord 14, 7 ; $c43a
ld hl, Coord
@@ -16367,20 +15878,20 @@ Func_6eda: ; 6eda (1:6eda)
ld a, [wCurrentMenuItem] ; $cc26
and a
jp nz, Func_6e5b
- ld hl, UnnamedText_6fbe ; $6fbe
+ ld hl, DidNotLearnText
call PrintText
ld b, $0
ret
Func_6efe: ; 6efe (1:6efe)
- ld hl, UnnamedText_6fad ; $6fad
+ ld hl, LearnedMove1Text
call PrintText
ld b, $1
ret
Func_6f07: ; 6f07 (1:6f07)
push hl
- ld hl, UnnamedText_6fc3 ; $6fc3
+ ld hl, TryingToLearnText
call PrintText
FuncCoord 14, 7 ; $c43a
ld hl, Coord
@@ -16402,7 +15913,7 @@ Func_6f07: ; 6f07 (1:6f07)
pop hl
.asm_6f39
push hl
- ld hl, UnnamedText_6fb4 ; $6fb4
+ ld hl, WhichMoveToForgetText
call PrintText
FuncCoord 4, 7 ; $c430
ld hl, Coord
@@ -16461,7 +15972,7 @@ Func_6f07: ; 6f07 (1:6f07)
and a
ret
.asm_6fa2
- ld hl, UnnamedText_6fe1 ; $6fe1
+ ld hl, HMCantDeleteText
call PrintText
pop hl
jr .asm_6f39
@@ -16469,44 +15980,44 @@ Func_6f07: ; 6f07 (1:6f07)
scf
ret
-UnnamedText_6fad: ; 6fb4 (1:6fb4)
- TX_FAR UnnamedText_a273b
+LearnedMove1Text: ; 6fb4 (1:6fb4)
+ TX_FAR _LearnedMove1Text
db $b,6,"@"
-UnnamedText_6fb4: ; 6fb4 (1:6fb4)
- TX_FAR _UnnamedText_6fb4
+WhichMoveToForgetText: ; 6fb4 (1:6fb4)
+ TX_FAR _WhichMoveToForgetText
db "@"
-UnnamedText_6fb9: ; 6fb9 (1:6fb9)
- TX_FAR _UnnamedText_6fb9
+AbandonLearningText: ; 6fb9 (1:6fb9)
+ TX_FAR _AbandonLearningText
db "@"
-UnnamedText_6fbe: ; 6fbe (1:6fbe)
- TX_FAR _UnnamedText_6fbe
+DidNotLearnText: ; 6fbe (1:6fbe)
+ TX_FAR _DidNotLearnText
db "@"
-UnnamedText_6fc3: ; 6fc3 (1:6fc3)
- TX_FAR _UnnamedText_6fc3
+TryingToLearnText: ; 6fc3 (1:6fc3)
+ TX_FAR _TryingToLearnText
db "@"
-UnnamedText_6fc8: ; 6fc8 (1:6fc8)
- TX_FAR _UnnamedText_6fc8 ; 0xa2819
+OneTwoAndText: ; 6fc8 (1:6fc8)
+ TX_FAR _OneTwoAndText
db $a
db $8
ld a, (SFX_02_58 - SFX_Headers_02) / 3
call PlaySoundWaitForCurrent
- ld hl, UnnamedText_6fd7 ; $6fd7
+ ld hl, PoofText
ret
-UnnamedText_6fd7: ; 6fd7 (1:6fd7)
- TX_FAR _UnnamedText_6fd7 ; 0xa2827
- db $a ; 0x6fdb
-UnnamedText_6fdc: ; 6fdc (1:6fdc)
- TX_FAR _UnnamedText_6fdc
+PoofText: ; 6fd7 (1:6fd7)
+ TX_FAR _PoofText
+ db $a
+ForgotAndText: ; 6fdc (1:6fdc)
+ TX_FAR _ForgotAndText
db "@"
-UnnamedText_6fe1: ; 6fe1 (1:6fe1)
- TX_FAR _UnnamedText_6fe1
+HMCantDeleteText: ; 6fe1 (1:6fe1)
+ TX_FAR _HMCantDeleteText
db "@"
DisplayPokemonCenterDialogue_: ; 6fe6 (1:6fe6)
@@ -16533,7 +16044,7 @@ DisplayPokemonCenterDialogue_: ; 6fe6 (1:6fe6)
ld [$c112], a ; make the nurse turn to face the machine
call Delay3
PREDEF HealPartyPredef
- callba Func_70433 ; do the healing machine animation
+ callba AnimateHealingMachine ; do the healing machine animation
xor a
ld [wMusicHeaderPointer], a
ld a, [$c0f0]
@@ -16787,14 +16298,14 @@ PrintStartMenuItem: ; 71bb (1:71bb)
ret
CableClubNPC: ; 71c5 (1:71c5)
- ld hl, CableClubNPCText1 ; $72b8
+ ld hl, CableClubNPCText1
call PrintText
ld a, [$d74b]
bit 5, a
jp nz, Func_71e1
ld c, $3c
call DelayFrames
- ld hl, CableClubNPCText6 ; $72d2
+ ld hl, CableClubNPCText6
call PrintText
jp Func_7298
@@ -16833,7 +16344,7 @@ Func_71e1: ; 71e1 (1:71e1)
call Func_22ed
ld c, $32
call DelayFrames
- ld hl, CableClubNPCText2 ; $72bd
+ ld hl, CableClubNPCText2
call PrintText
xor a
ld [$cc34], a
@@ -16847,7 +16358,7 @@ Func_71e1: ; 71e1 (1:71e1)
call WaitForSoundToFinish
ld a, (SFX_02_5d - SFX_Headers_02) / 3
call PlaySoundWaitForCurrent
- ld hl, CableClubNPCText3 ; $72c2
+ ld hl, CableClubNPCText3
call PrintText
ld hl, $cc47
ld a, $3
@@ -16871,16 +16382,16 @@ Func_71e1: ; 71e1 (1:71e1)
dec b
jr nz, .asm_7273 ; 0x727a $f7
call Func_72d7
- ld hl, CableClubNPCText4 ; $72c8
+ ld hl, CableClubNPCText4
call PrintText
jr Func_7298 ; 0x7285 $11
.asm_7287
- ld hl, CableClubNPCText7 ; $72b3
+ ld hl, CableClubNPCText7
call PrintText
jr Func_7298 ; 0x728d $9
.asm_728f
call Func_72d7
- ld hl, CableClubNPCText5 ; $72cd
+ ld hl, CableClubNPCText5
call PrintText
; fall through
@@ -17668,14 +17179,14 @@ GetMonFieldMoves: ; 77d6 (1:77d6)
; "SOFTBOILED" is $08 because it has 4 more letters than "SURF", for example, whose value is $0C
FieldMoveDisplayData: ; 7823 (1:7823)
db CUT, $01, $0C
- db FLY, $02, $0C
+ db FLY, $02, $0C
db $B4, $03, $0C ; unused field move
- db SURF, $04, $0C
- db STRENGTH, $05, $0A
- db FLASH, $06, $0C
- db DIG, $07, $0C
- db TELEPORT, $08, $0A
- db SOFTBOILED, $09, $08
+ db SURF, $04, $0C
+ db STRENGTH, $05, $0A
+ db FLASH, $06, $0C
+ db DIG, $07, $0C
+ db TELEPORT, $08, $0A
+ db SOFTBOILED, $09, $08
db $ff ; list terminator
@@ -17773,7 +17284,7 @@ Func_7861: ; 7861 (1:7861)
.asm_78d2
cp DREAM_EATER_EFFECT
jr nz, .asm_78d9
- ld hl, DreamEatenText ; $78e1
+ ld hl, DreamWasEatenText
.asm_78d9
jp PrintText
@@ -17781,8 +17292,8 @@ SuckedHealthText: ; 78dc (1:78dc)
TX_FAR _SuckedHealthText
db "@"
-DreamEatenText: ; 78e1 (1:78e1)
- TX_FAR _DreamEatenText
+DreamWasEatenText: ; 78e1 (1:78e1)
+ TX_FAR _DreamWasEatenText
db "@"
Func_78e6: ; 78e6 (1:78e6)
@@ -17799,7 +17310,7 @@ Func_78e6: ; 78e6 (1:78e6)
jr nz, Func_790c
ld a, (SFX_02_45 - SFX_Headers_02) / 3
call PlaySound
- ld hl, UnnamedText_7b22 ; $7b22
+ ld hl, TurnedOnPC2Text
call PrintText
Func_790c: ; 790c (1:790c)
@@ -17834,7 +17345,7 @@ Func_790c: ; 790c (1:790c)
ld [hli], a
ld [hl], a
ld [wPlayerMonNumber], a ; $cc2f
- ld hl, UnnamedText_7b27 ; $7b27
+ ld hl, WhatDoYouWantText
call PrintText
call HandleMenuInput
bit 1, a
@@ -17876,12 +17387,12 @@ Func_7995: ; 7995 (1:7995)
ld a, [wNumBagItems] ; $d31d
and a
jr nz, Func_79ab
- ld hl, UnnamedText_7b3b ; $7b3b
+ ld hl, NothingToDepositText
call PrintText
jp Func_790c
Func_79ab: ; 79ab (1:79ab)
- ld hl, UnnamedText_7b2c ; $7b2c
+ ld hl, WhatToDepositText
call PrintText
ld hl, wNumBagItems ; $d31d
ld a, l
@@ -17900,7 +17411,7 @@ Func_79ab: ; 79ab (1:79ab)
ld a, [$d124]
and a
jr nz, .asm_79e7
- ld hl, UnnamedText_7b31 ; $7b31
+ ld hl, DepositHowManyText
call PrintText
call DisplayChooseQuantityMenu
cp $ff
@@ -17909,7 +17420,7 @@ Func_79ab: ; 79ab (1:79ab)
ld hl, wNumBoxItems ; $d53a
call AddItemToInventory
jr c, .asm_79f8
- ld hl, UnnamedText_7b40 ; $7b40
+ ld hl, NoRoomToStoreText
call PrintText
jp Func_79ab
.asm_79f8
@@ -17919,7 +17430,7 @@ Func_79ab: ; 79ab (1:79ab)
ld a, (SFX_02_55 - SFX_Headers_02) / 3
call PlaySound
call WaitForSoundToFinish
- ld hl, UnnamedText_7b36 ; $7b36
+ ld hl, ItemWasStoredText
call PrintText
jp Func_79ab
@@ -17930,12 +17441,12 @@ Func_7a12: ; 7a12 (1:7a12)
ld a, [wNumBoxItems] ; $d53a
and a
jr nz, Func_7a28
- ld hl, UnnamedText_7b54 ; $7b54
+ ld hl, NothingStoredText
call PrintText
jp Func_790c
Func_7a28: ; 7a28 (1:7a28)
- ld hl, UnnamedText_7b45 ; $7b45
+ ld hl, WhatToWithdrawText
call PrintText
ld hl, wNumBoxItems ; $d53a
ld a, l
@@ -17954,7 +17465,7 @@ Func_7a28: ; 7a28 (1:7a28)
ld a, [$d124]
and a
jr nz, .asm_7a64
- ld hl, UnnamedText_7b4a ; $7b4a
+ ld hl, WithdrawHowManyText
call PrintText
call DisplayChooseQuantityMenu
cp $ff
@@ -17963,7 +17474,7 @@ Func_7a28: ; 7a28 (1:7a28)
ld hl, wNumBagItems ; $d31d
call AddItemToInventory
jr c, .asm_7a75
- ld hl, UnnamedText_7b59 ; $7b59
+ ld hl, CantCarryMoreText
call PrintText
jp Func_7a28
.asm_7a75
@@ -17973,7 +17484,7 @@ Func_7a28: ; 7a28 (1:7a28)
ld a, (SFX_02_55 - SFX_Headers_02) / 3
call PlaySound
call WaitForSoundToFinish
- ld hl, UnnamedText_7b4f ; $7b4f
+ ld hl, WithdrewItemText
call PrintText
jp Func_7a28
@@ -17984,12 +17495,12 @@ Func_7a8f: ; 7a8f (1:7a8f)
ld a, [wNumBoxItems] ; $d53a
and a
jr nz, Func_7aa5
- ld hl, UnnamedText_7b54 ; $7b54
+ ld hl, NothingStoredText
call PrintText
jp Func_790c
Func_7aa5: ; 7aa5 (1:7aa5)
- ld hl, UnnamedText_7b5e ; $7b5e
+ ld hl, WhatToTossText
call PrintText
ld hl, wNumBoxItems ; $d53a
ld a, l
@@ -18016,7 +17527,7 @@ Func_7aa5: ; 7aa5 (1:7aa5)
call IsItemHM
jr c, .asm_7aef
push hl
- ld hl, UnnamedText_7b63 ; $7b63
+ ld hl, TossHowManyText
call PrintText
call DisplayChooseQuantityMenu
pop hl
@@ -18032,60 +17543,60 @@ PlayersPCMenuEntries: ; 7af5 (1:7af5)
next "TOSS ITEM"
next "LOG OFF@"
-UnnamedText_7b22: ; 7b22 (1:7b22)
- TX_FAR _UnnamedText_7b22
+TurnedOnPC2Text: ; 7b22 (1:7b22)
+ TX_FAR _TurnedOnPC2Text
db "@"
-UnnamedText_7b27: ; 7b27 (1:7b27)
- TX_FAR _UnnamedText_7b27
+WhatDoYouWantText: ; 7b27 (1:7b27)
+ TX_FAR _WhatDoYouWantText
db "@"
-UnnamedText_7b2c: ; 7b2c (1:7b2c)
- TX_FAR _UnnamedText_7b2c
+WhatToDepositText: ; 7b2c (1:7b2c)
+ TX_FAR _WhatToDepositText
db "@"
-UnnamedText_7b31: ; 7b31 (1:7b31)
- TX_FAR _UnnamedText_7b31
+DepositHowManyText: ; 7b31 (1:7b31)
+ TX_FAR _DepositHowManyText
db "@"
-UnnamedText_7b36: ; 7b36 (1:7b36)
- TX_FAR _UnnamedText_7b36
+ItemWasStoredText: ; 7b36 (1:7b36)
+ TX_FAR _ItemWasStoredText
db "@"
-UnnamedText_7b3b: ; 7b3b (1:7b3b)
- TX_FAR _UnnamedText_7b3b
+NothingToDepositText: ; 7b3b (1:7b3b)
+ TX_FAR _NothingToDepositText
db "@"
-UnnamedText_7b40: ; 7b40 (1:7b40)
- TX_FAR _UnnamedText_7b40
+NoRoomToStoreText: ; 7b40 (1:7b40)
+ TX_FAR _NoRoomToStoreText
db "@"
-UnnamedText_7b45: ; 7b45 (1:7b45)
- TX_FAR _UnnamedText_7b45
+WhatToWithdrawText: ; 7b45 (1:7b45)
+ TX_FAR _WhatToWithdrawText
db "@"
-UnnamedText_7b4a: ; 7b4a (1:7b4a)
- TX_FAR _UnnamedText_7b4a
+WithdrawHowManyText: ; 7b4a (1:7b4a)
+ TX_FAR _WithdrawHowManyText
db "@"
-UnnamedText_7b4f: ; 7b4f (1:7b4f)
- TX_FAR _UnnamedText_7b4f
+WithdrewItemText: ; 7b4f (1:7b4f)
+ TX_FAR _WithdrewItemText
db "@"
-UnnamedText_7b54: ; 7b54 (1:7b54)
- TX_FAR _UnnamedText_7b54
+NothingStoredText: ; 7b54 (1:7b54)
+ TX_FAR _NothingStoredText
db "@"
-UnnamedText_7b59: ; 7b59 (1:7b59)
- TX_FAR _UnnamedText_7b59
+CantCarryMoreText: ; 7b59 (1:7b59)
+ TX_FAR _CantCarryMoreText
db "@"
-UnnamedText_7b5e: ; 7b5e (1:7b5e)
- TX_FAR _UnnamedText_7b5e
+WhatToTossText: ; 7b5e (1:7b5e)
+ TX_FAR _WhatToTossText
db "@"
-UnnamedText_7b63: ; 7b63 (1:7b63)
- TX_FAR _UnnamedText_7b63
+TossHowManyText: ; 7b63 (1:7b63)
+ TX_FAR _TossHowManyText
db "@"
_RemovePokemon: ; 7b68 (1:7b68)
@@ -18261,255 +17772,7 @@ HandleJoypadResetButtons: ; c03c (3:403c)
jp z, SoftReset
jp GetJoypadState
-MapSongBanks: ; c04d (3:404d)
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN
- db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY
- db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY
- db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY
- db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY
- db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU
- db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY
- db MUSIC_CITIES1, BANK(Music_Cities1) ; unused
- db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1
- db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10
- db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11
- db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12
- db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13
- db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14
- db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23
- db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24
- db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse
- db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart
- db MUSIC_CITIES1, BANK(Music_Cities1) ; School
- db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse
- db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2
- db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F
- db MUSIC_GYM, BANK(Music_Gym) ; PewterGym
- db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart
- db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3
- db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed
- db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter
- db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym
- db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5
- db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7
- db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate
- db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart
- db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom
- db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary
- db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter
- db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym
- db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7
- db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart
- db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2
- db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance
- db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5
- db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1
- db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart
- db MUSIC_CINNABAR, BANK(Music_Cinnabar)
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby
- db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F
- db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F
- db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo
- db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym
- db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter
- db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs
- db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House
- db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1
- db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater
- db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2
- db MUSIC_CINNABAR, BANK(Music_Cinnabar)
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM
- db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_GYM, BANK(Music_Gym) ; Lorelei
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha
+INCLUDE "data/map_songs.asm"
; see also MapHeaderPointers
MapHeaderBanks: ; c23d (3:423d)
@@ -18584,11 +17847,11 @@ MapHeaderBanks: ; c23d (3:423d)
db BANK(MtMoonPokecenter_h)
db BANK(CeruleanHouseTrashed_h)
db BANK(Route5Gate_h)
- db BANK(UndergroundTunnelEntranceRoute5_h)
+ db BANK(UndergroundPathEntranceRoute5_h)
db BANK(DayCareM_h)
db BANK(Route6Gate_h)
- db BANK(UndergroundTunnelEntranceRoute6_h)
- db BANK(UndergroundTunnelEntranceRoute6_h) ;FREEZE
+ db BANK(UndergroundPathEntranceRoute6_h)
+ db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE
db BANK(Route7Gate_h)
db BANK(UndergroundPathEntranceRoute7_h)
db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE
@@ -18866,17 +18129,7 @@ CheckForceBikeOrSurf: ; c38b (3:438b)
ld [$d11a], a
jp ForceBikeOrSurf
-ForcedBikeOrSurfMaps: ; c3e6 (3:43e6)
-; map id, y, x
- db ROUTE_16,$0A,$11
- db ROUTE_16,$0B,$11
- db ROUTE_18,$08,$21
- db ROUTE_18,$09,$21
- db SEAFOAM_ISLANDS_4,$07,$12
- db SEAFOAM_ISLANDS_4,$07,$13
- db SEAFOAM_ISLANDS_5,$0E,$04
- db SEAFOAM_ISLANDS_5,$0E,$05
- db $FF ;end
+INCLUDE "data/force_bike_surf.asm"
Func_c3ff: ; c3ff (3:43ff)
push hl
@@ -19026,91 +18279,7 @@ Func_c49d: ; c49d (3:449d)
pop hl
ret
-WarpTileIDPointers: ; c4cc (3:44cc)
- dw OverworldWarpTileIDs
- dw RedsHouse1WarpTileIDs
- dw MartWarpTileIDs
- dw ForestWarpTileIDs
- dw RedsHouse2WarpTileIDs
- dw DojoWarpTileIDs
- dw PokecenterWarpTileIDs
- dw GymWarpTileIDs
- dw HouseWarpTileIDs
- dw ForestGateWarpTileIDs
- dw MuseumWarpTileIDs
- dw UndergroundWarpTileIDs
- dw GateWarpTileIDs
- dw ShipWarpTileIDs
- dw ShipPortWarpTileIDs
- dw CemeteryWarpTileIDs
- dw InteriorWarpTileIDs
- dw CavernWarpTileIDs
- dw LobbyWarpTileIDs
- dw MansionWarpTileIDs
- dw LabWarpTileIDs
- dw ClubWarpTileIDs
- dw FacilityWarpTileIDs
- dw PlateauWarpTileIDs
-
-OverworldWarpTileIDs: ; c4fc (3:44fc)
- db $1B,$58,$FF
-
-ForestGateWarpTileIDs: ; c4ff (3:44ff)
-MuseumWarpTileIDs: ; c4ff (3:44ff)
-GateWarpTileIDs: ; c4ff (3:44ff)
- db $3B
-
-RedsHouse1WarpTileIDs: ; c500 (3:4500)
-RedsHouse2WarpTileIDs: ; c500 (3:4500)
- db $1A,$1C,$FF
-
-MartWarpTileIDs: ; c503 (3:4503)
-PokecenterWarpTileIDs: ; c503 (3:4503)
- db $5E,$FF
-
-ForestWarpTileIDs: ; c505 (3:4505)
- db $5A,$5C,$3A,$FF
-
-DojoWarpTileIDs: ; c509 (3:4509)
-GymWarpTileIDs: ; c509 (3:4509)
- db $4A,$FF
-
-HouseWarpTileIDs: ; c50b (3:450b)
- db $54,$5C,$32,$FF
-
-ShipWarpTileIDs: ; c50f (3:450f)
- db $37,$39,$1E,$4A,$FF
-
-InteriorWarpTileIDs: ; c514 (3:4514)
- db $15,$55,$04,$FF
-
-CavernWarpTileIDs: ; c518 (3:4518)
- db $18,$1A,$22,$FF
-
-LobbyWarpTileIDs: ; c51c (3:451c)
- db $1A,$1C,$38,$FF
-
-MansionWarpTileIDs: ; c520 (3:4520)
- db $1A,$1C,$53,$FF
-
-LabWarpTileIDs: ; c524 (3:4524)
- db $34,$FF
-
-FacilityWarpTileIDs: ; c526 (3:4526)
- db $43,$58,$20
-
-CemeteryWarpTileIDs: ; c529 (3:4529)
- db $1B
-
-UndergroundWarpTileIDs: ; c52a (3:452a)
- db $13,$FF
-
-PlateauWarpTileIDs: ; c52c (3:452c)
- db $1B,$3B
-
-ShipPortWarpTileIDs: ; c52e (3:452e)
-ClubWarpTileIDs: ; c52e (3:452e)
- db $FF
+INCLUDE "data/warp_tile_ids.asm"
Func_c52f: ; c52f (3:452f)
ld a, [W_CURMAP] ; $d35e
@@ -19133,7 +18302,7 @@ Func_c52f: ; c52f (3:452f)
call PlaceString
FuncCoord 1, 3 ; $c3dd
ld hl, Coord
- ld de, SafariBallText ; $457e
+ ld de, SafariBallText
call PlaceString
ld a, [W_NUMSAFARIBALLS] ; $da47
cp $a
@@ -19512,34 +18681,9 @@ Func_c754: ; c754 (3:4754)
.asm_c7b1
ret
-DungeonTilesets: ; c7b2 (3:47b2)
- db FOREST, MUSEUM, SHIP, CAVERN, LOBBY, MANSION, GATE, LAB, FACILITY, CEMETERY, GYM, $FF
-
-Tilesets: ; c7be (3:47be)
- tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR
- tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset Mart_Block, Mart_GFX, Mart_Coll, $18,$19,$1E, $FF, INDOOR
- tileset Forest_Block, Forest_GFX, Forest_Coll, $FF,$FF,$FF, $20, CAVE
- tileset RedsHouse2_Block, RedsHouse2_GFX, RedsHouse2_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset Dojo_Block, Dojo_GFX, Dojo_Coll, $3A,$FF,$FF, $FF, OUTDOOR
- tileset Pokecenter_Block, Pokecenter_GFX, Pokecenter_Coll, $18,$19,$1E, $FF, INDOOR
- tileset Gym_Block, Gym_GFX, Gym_Coll, $3A,$FF,$FF, $FF, OUTDOOR
- tileset House_Block, House_GFX, House_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset ForestGate_Block, ForestGate_GFX, ForestGate_Coll, $17,$32,$FF, $FF, INDOOR
- tileset Museum_Block, Museum_GFX, Museum_Coll, $17,$32,$FF, $FF, INDOOR
- tileset Underground_Block, Underground_GFX, Underground_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset Gate_Block, Gate_GFX, Gate_Coll, $17,$32,$FF, $FF, INDOOR
- tileset Ship_Block, Ship_GFX, Ship_Coll, $FF,$FF,$FF, $FF, CAVE
- tileset ShipPort_Block, ShipPort_GFX, ShipPort_Coll, $FF,$FF,$FF, $FF, CAVE
- tileset Cemetery_Block, Cemetery_GFX, Cemetery_Coll, $12,$FF,$FF, $FF, INDOOR
- tileset Interior_Block, Interior_GFX, Interior_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset Cavern_Block, Cavern_GFX, Cavern_Coll, $FF,$FF,$FF, $FF, CAVE
- tileset Lobby_Block, Lobby_GFX, Lobby_Coll, $15,$36,$FF, $FF, INDOOR
- tileset Mansion_Block, Mansion_GFX, Mansion_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset Lab_Block, Lab_GFX, Lab_Coll, $FF,$FF,$FF, $FF, INDOOR
- tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR
- tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE
- tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE
+INCLUDE "data/dungeon_tilesets.asm"
+
+INCLUDE "data/tileset_headers.asm"
Func_c8de: ; c8de (3:48de)
ld a, [W_DAYCARE_IN_USE]
@@ -19560,590 +18704,14 @@ Func_c8de: ; c8de (3:48de)
ld [hl], a
ret
-; data for default hidden/shown
-; objects for each map ($00-$F8)
-
-; Table of 2-Byte pointers, one pointer per map,
-; goes up to Map_F7, ends with $FFFF.
-; points to table listing all missable object in the area
-MapHSPointers: ; c8f5 (3:48f5)
- dw MapHS00
- dw MapHS01
- dw MapHS02
- dw MapHS03
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS0A
- dw MapHSXX
- dw MapHSXX
- dw MapHS0D
- dw MapHSXX
- dw MapHS0F
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS14
- dw MapHSXX
- dw MapHSXX
- dw MapHS17
- dw MapHSXX
- dw MapHSXX
- dw MapHS1A
- dw MapHS1B
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS21
- dw MapHSXX
- dw MapHS23
- dw MapHS24
- dw MapHSXX
- dw MapHSXX
- dw MapHS27
- dw MapHS28
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS2D
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS33
- dw MapHS34
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS3B
- dw MapHSXX
- dw MapHS3D
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS53
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS58
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS60
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS66
- dw MapHS67
- dw MapHS68
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS6C
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS78
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS84
- dw MapHSXX
- dw MapHSXX
- dw MapHS87
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS8F
- dw MapHS90
- dw MapHS91
- dw MapHS92
- dw MapHS93
- dw MapHS94
- dw MapHS95
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS9B
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHS9F
- dw MapHSA0
- dw MapHSA1
- dw MapHSA2
- dw MapHSXX
- dw MapHSXX
- dw MapHSA5
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSB1
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSB5
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSC0
- dw MapHSXX
- dw MapHSC2
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSC6
- dw MapHSC7
- dw MapHSC8
- dw MapHSC9
- dw MapHSCA
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSCF
- dw MapHSD0
- dw MapHSD1
- dw MapHSD2
- dw MapHSD3
- dw MapHSD4
- dw MapHSD5
- dw MapHSD6
- dw MapHSD7
- dw MapHSD8
- dw MapHSD9
- dw MapHSDA
- dw MapHSDB
- dw MapHSDC
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSE2
- dw MapHSE3
- dw MapHSE4
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSE9
- dw MapHSEA
- dw MapHSEB
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw MapHSF4
- dw MapHSXX
- dw MapHSXX
- dw MapHSXX
- dw $FFFF
-
-; Structure:
-; 3 bytes per object
-; [Map_ID][Object_ID][H/S]
-;
-; Program stops reading when either:
-; a) Map_ID = $FF
-; b) Map_ID ≠ currentMapID
-;
-; This Data is loaded into RAM at $D5CE-$D5F?. (W_MISSABLEOBJECTLIST)
-
-; These constants come from the bytes for Predef functions:
-Hide equ $11
-Show equ $15
-
-MapHSXX: ; cae7 (3:4ae7)
- db $FF,$FF,$FF
-MapHS00: ; caea (3:4aea)
- db PALLET_TOWN,$01,Hide
-MapHS01: ; caed (3:4aed)
- db VIRIDIAN_CITY,$05,Show
- db VIRIDIAN_CITY,$07,Hide
-MapHS02: ; caf3 (3:4af3)
- db PEWTER_CITY,$03,Show
- db PEWTER_CITY,$05,Show
-MapHS03: ; caf9 (3:4af9)
- db CERULEAN_CITY,$01,Hide
- db CERULEAN_CITY,$02,Show
- db CERULEAN_CITY,$06,Hide
- db CERULEAN_CITY,$0A,Show
- db CERULEAN_CITY,$0B,Show
-MapHS0A: ; cb08 (3:4b08)
- db SAFFRON_CITY,$01,Show
- db SAFFRON_CITY,$02,Show
- db SAFFRON_CITY,$03,Show
- db SAFFRON_CITY,$04,Show
- db SAFFRON_CITY,$05,Show
- db SAFFRON_CITY,$06,Show
- db SAFFRON_CITY,$07,Show
- db SAFFRON_CITY,$08,Hide
- db SAFFRON_CITY,$09,Hide
- db SAFFRON_CITY,$0A,Hide
- db SAFFRON_CITY,$0B,Hide
- db SAFFRON_CITY,$0C,Hide
- db SAFFRON_CITY,$0D,Hide
- db SAFFRON_CITY,$0E,Show
- db SAFFRON_CITY,$0F,Hide
-MapHS0D: ; cb35 (3:4b35)
- db ROUTE_2,$01,Show
- db ROUTE_2,$02,Show
-MapHS0F: ; cb3b (3:4b3b)
- db ROUTE_4,$03,Show
-MapHS14: ; cb3e (3:4b3e)
- db ROUTE_9,$0A,Show
-MapHS17: ; cb41 (3:4b41)
- db ROUTE_12,$01,Show
- db ROUTE_12,$09,Show
- db ROUTE_12,$0A,Show
-MapHS1A: ; cb4a (3:4b4a)
- db ROUTE_15,$0B,Show
-MapHS1B: ; cb4d (3:4b4d)
- db ROUTE_16,$07,Show
-MapHS21: ; cb50 (3:4b50)
- db ROUTE_22,$01,Hide
- db ROUTE_22,$02,Hide
-MapHS23: ; cb56 (3:4b56)
- db ROUTE_24,$01,Show
- db ROUTE_24,$08,Show
-MapHS24: ; cb5c (3:4b5c)
- db ROUTE_25,$0A,Show
-MapHS27: ; cb5f (3:4b5f)
- db BLUES_HOUSE,$01,Show
- db BLUES_HOUSE,$02,Hide
- db BLUES_HOUSE,$03,Show
-MapHS28: ; cb68 (3:4b68)
- db OAKS_LAB,$01,Show
- db OAKS_LAB,$02,Show
- db OAKS_LAB,$03,Show
- db OAKS_LAB,$04,Show
- db OAKS_LAB,$05,Hide
- db OAKS_LAB,$06,Show
- db OAKS_LAB,$07,Show
- db OAKS_LAB,$08,Hide
-MapHS2D: ; cb80 (3:4b80)
- db VIRIDIAN_GYM,$01,Show
- db VIRIDIAN_GYM,$0B,Show
-MapHS34: ; cb86 (3:4b86)
- db MUSEUM_1F,$05,Show
-MapHSE4: ; cb89 (3:4b89)
- db UNKNOWN_DUNGEON_1,$01,Show
- db UNKNOWN_DUNGEON_1,$02,Show
- db UNKNOWN_DUNGEON_1,$03,Show
-MapHS8F: ; cb92 (3:4b92)
- db POKEMONTOWER_2,$01,Show
-MapHS90: ; cb95 (3:4b95)
- db POKEMONTOWER_3,$04,Show
-MapHS91: ; cb98 (3:4b98)
- db POKEMONTOWER_4,$04,Show
- db POKEMONTOWER_4,$05,Show
- db POKEMONTOWER_4,$06,Show
-MapHS92: ; cba1 (3:4ba1)
- db POKEMONTOWER_5,$06,Show
-MapHS93: ; cba4 (3:4ba4)
- db POKEMONTOWER_6,$04,Show
- db POKEMONTOWER_6,$05,Show
-MapHS94: ; cbaa (3:4baa)
- db POKEMONTOWER_7,$01,Show
- db POKEMONTOWER_7,$02,Show
- db POKEMONTOWER_7,$03,Show
- db POKEMONTOWER_7,$04,Show
-MapHS95: ; cbb6 (3:4bb6)
- db LAVENDER_HOUSE_1,$05,Hide
-MapHS84: ; cbb9 (3:4bb9)
- db CELADON_MANSION_5,$02,Show
-MapHS87: ; cbbc (3:4bbc)
- db GAME_CORNER,$0B,Show
-MapHS9B: ; cbbf (3:4bbf)
- db FUCHSIA_HOUSE_2,$02,Show
-MapHSA5: ; cbc2 (3:4bc2)
- db MANSION_1,$02,Show
- db MANSION_1,$03,Show
-MapHSB1: ; cbc8 (3:4bc8)
- db FIGHTING_DOJO,$06,Show
- db FIGHTING_DOJO,$07,Show
-MapHSB5: ; cbce (3:4bce)
- db SILPH_CO_1F,$01,Hide
-MapHS53: ; cbd1 (3:4bd1)
- db POWER_PLANT,$01,Show
- db POWER_PLANT,$02,Show
- db POWER_PLANT,$03,Show
- db POWER_PLANT,$04,Show
- db POWER_PLANT,$05,Show
- db POWER_PLANT,$06,Show
- db POWER_PLANT,$07,Show
- db POWER_PLANT,$08,Show
- db POWER_PLANT,$09,Show
- db POWER_PLANT,$0A,Show
- db POWER_PLANT,$0B,Show
- db POWER_PLANT,$0C,Show
- db POWER_PLANT,$0D,Show
- db POWER_PLANT,$0E,Show
-MapHSC2: ; cbfb (3:4bfb)
- db VICTORY_ROAD_2,$06,Show
- db VICTORY_ROAD_2,$07,Show
- db VICTORY_ROAD_2,$08,Show
- db VICTORY_ROAD_2,$09,Show
- db VICTORY_ROAD_2,$0A,Show
- db VICTORY_ROAD_2,$0D,Show
-MapHS58: ; cc0d (3:4c0d)
- db BILLS_HOUSE,$01,Show
- db BILLS_HOUSE,$02,Hide
- db BILLS_HOUSE,$03,Hide
-MapHS33: ; cc16 (3:4c16)
- db VIRIDIAN_FOREST,$05,Show
- db VIRIDIAN_FOREST,$06,Show
- db VIRIDIAN_FOREST,$07,Show
-MapHS3B: ; cc1f (3:4c1f)
- db MT_MOON_1,$08,Show
- db MT_MOON_1,$09,Show
- db MT_MOON_1,$0A,Show
- db MT_MOON_1,$0B,Show
- db MT_MOON_1,$0C,Show
- db MT_MOON_1,$0D,Show
-MapHS3D: ; cc31 (3:4c31)
- db MT_MOON_3,$06,Show
- db MT_MOON_3,$07,Show
- db MT_MOON_3,$08,Show
- db MT_MOON_3,$09,Show
-MapHS60: ; cc3d (3:4c3d)
- db SS_ANNE_2,$02,Hide
-MapHS66: ; cc40 (3:4c40)
- db SS_ANNE_8,$0A,Show
-MapHS67: ; cc43 (3:4c43)
- db SS_ANNE_9,$06,Show
- db SS_ANNE_9,$09,Show
-MapHS68: ; cc49 (3:4c49)
- db SS_ANNE_10,$09,Show
- db SS_ANNE_10,$0A,Show
- db SS_ANNE_10,$0B,Show
-MapHSC6: ; cc52 (3:4c52)
- db VICTORY_ROAD_3,$05,Show
- db VICTORY_ROAD_3,$06,Show
- db VICTORY_ROAD_3,$0A,Show
-MapHSC7: ; cc5b (3:4c5b)
- db ROCKET_HIDEOUT_1,$06,Show
- db ROCKET_HIDEOUT_1,$07,Show
-MapHSC8: ; cc61 (3:4c61)
- db ROCKET_HIDEOUT_2,$02,Show
- db ROCKET_HIDEOUT_2,$03,Show
- db ROCKET_HIDEOUT_2,$04,Show
- db ROCKET_HIDEOUT_2,$05,Show
-MapHSC9: ; cc6d (3:4c6d)
- db ROCKET_HIDEOUT_3,$03,Show
- db ROCKET_HIDEOUT_3,$04,Show
-MapHSCA: ; cc73 (3:4c73)
- db ROCKET_HIDEOUT_4,$01,Show
- db ROCKET_HIDEOUT_4,$05,Show
- db ROCKET_HIDEOUT_4,$06,Show
- db ROCKET_HIDEOUT_4,$07,Show
- db ROCKET_HIDEOUT_4,$08,Hide
- db ROCKET_HIDEOUT_4,$09,Hide
-MapHSCF: ; cc85 (3:4c85)
- db SILPH_CO_2F,$01,Show
- db SILPH_CO_2F,$02,Show
- db SILPH_CO_2F,$03,Show
- db SILPH_CO_2F,$04,Show
- db SILPH_CO_2F,$05,Show
-MapHSD0: ; cc94 (3:4c94)
- db SILPH_CO_3F,$02,Show
- db SILPH_CO_3F,$03,Show
- db SILPH_CO_3F,$04,Show
-MapHSD1: ; cc9d (3:4c9d)
- db SILPH_CO_4F,$02,Show
- db SILPH_CO_4F,$03,Show
- db SILPH_CO_4F,$04,Show
- db SILPH_CO_4F,$05,Show
- db SILPH_CO_4F,$06,Show
- db SILPH_CO_4F,$07,Show
-MapHSD2: ; ccaf (3:4caf)
- db SILPH_CO_5F,$02,Show
- db SILPH_CO_5F,$03,Show
- db SILPH_CO_5F,$04,Show
- db SILPH_CO_5F,$05,Show
- db SILPH_CO_5F,$06,Show
- db SILPH_CO_5F,$07,Show
- db SILPH_CO_5F,$08,Show
-MapHSD3: ; ccc4 (3:4cc4)
- db SILPH_CO_6F,$06,Show
- db SILPH_CO_6F,$07,Show
- db SILPH_CO_6F,$08,Show
- db SILPH_CO_6F,$09,Show
- db SILPH_CO_6F,$0A,Show
-MapHSD4: ; ccd3 (3:4cd3)
- db SILPH_CO_7F,$05,Show
- db SILPH_CO_7F,$06,Show
- db SILPH_CO_7F,$07,Show
- db SILPH_CO_7F,$08,Show
- db SILPH_CO_7F,$09,Show
- db SILPH_CO_7F,$0A,Show
- db SILPH_CO_7F,$0B,Show
- db SILPH_CO_7F,$0C,Show
-MapHSD5: ; cceb (3:4ceb)
- db SILPH_CO_8F,$02,Show
- db SILPH_CO_8F,$03,Show
- db SILPH_CO_8F,$04,Show
-MapHSE9: ; ccf4 (3:4cf4)
- db SILPH_CO_9F,$02,Show
- db SILPH_CO_9F,$03,Show
- db SILPH_CO_9F,$04,Show
-MapHSEA: ; ccfd (3:4cfd)
- db SILPH_CO_10F,$01,Show
- db SILPH_CO_10F,$02,Show
- db SILPH_CO_10F,$03,Show
- db SILPH_CO_10F,$04,Show
- db SILPH_CO_10F,$05,Show
- db SILPH_CO_10F,$06,Show
-MapHSEB: ; cd0f (3:4d0f)
- db SILPH_CO_11F,$03,Show
- db SILPH_CO_11F,$04,Show
- db SILPH_CO_11F,$05,Show
-MapHSF4: ; cd18 (3:4d18)
- db $F4,$02,Show
-MapHSD6: ; cd1b (3:4d1b)
- db MANSION_2,$02,Show
-MapHSD7: ; cd1e (3:4d1e)
- db MANSION_3,$03,Show
- db MANSION_3,$04,Show
-MapHSD8: ; cd24 (3:4d24)
- db MANSION_4,$03,Show
- db MANSION_4,$04,Show
- db MANSION_4,$05,Show
- db MANSION_4,$06,Show
- db MANSION_4,$08,Show
-MapHSD9: ; cd33 (3:4d33)
- db SAFARI_ZONE_EAST,$01,Show
- db SAFARI_ZONE_EAST,$02,Show
- db SAFARI_ZONE_EAST,$03,Show
- db SAFARI_ZONE_EAST,$04,Show
-MapHSDA: ; cd3f (3:4d3f)
- db SAFARI_ZONE_NORTH,$01,Show
- db SAFARI_ZONE_NORTH,$02,Show
-MapHSDB: ; cd45 (3:4d45)
- db SAFARI_ZONE_WEST,$01,Show
- db SAFARI_ZONE_WEST,$02,Show
- db SAFARI_ZONE_WEST,$03,Show
- db SAFARI_ZONE_WEST,$04,Show
-MapHSDC: ; cd51 (3:4d51)
- db SAFARI_ZONE_CENTER,$01,Show
-MapHSE2: ; cd54 (3:4d54)
- db UNKNOWN_DUNGEON_2,$01,Show
- db UNKNOWN_DUNGEON_2,$02,Show
- db UNKNOWN_DUNGEON_2,$03,Show
-MapHSE3: ; cd5d (3:4d5d)
- db UNKNOWN_DUNGEON_3,$01,Show
- db UNKNOWN_DUNGEON_3,$02,Show
- db UNKNOWN_DUNGEON_3,$03,Show
-MapHS6C: ; cd66 (3:4d66)
- db VICTORY_ROAD_1,$03,Show
- db VICTORY_ROAD_1,$04,Show
-MapHS78: ; cd6c (3:4d6c)
- db CHAMPIONS_ROOM,$02,Hide
-MapHSC0: ; cd6f (3:4d6f)
- db SEAFOAM_ISLANDS_1,$01,Show
- db SEAFOAM_ISLANDS_1,$02,Show
-MapHS9F: ; cd75 (3:4d75)
- db SEAFOAM_ISLANDS_2,$01,Hide
- db SEAFOAM_ISLANDS_2,$02,Hide
-MapHSA0: ; cd7b (3:4d7b)
- db SEAFOAM_ISLANDS_3,$01,Hide
- db SEAFOAM_ISLANDS_3,$02,Hide
-MapHSA1: ; cd81 (3:4d81)
- db SEAFOAM_ISLANDS_4,$02,Show
- db SEAFOAM_ISLANDS_4,$03,Show
- db SEAFOAM_ISLANDS_4,$05,Hide
- db SEAFOAM_ISLANDS_4,$06,Hide
-MapHSA2: ; cd8d (3:4d8d)
- db SEAFOAM_ISLANDS_5,$01,Hide
- db SEAFOAM_ISLANDS_5,$02,Hide
- db SEAFOAM_ISLANDS_5,$03,Show
-
- db $FF,$01,Show
+INCLUDE "data/hide_show_data.asm"
Func_cd99: ; cd99 (3:4d99)
ld hl, $d728
set 0, [hl]
- ld hl, UsedStrengthText ; $4daa
+ ld hl, UsedStrengthText
call PrintText
- ld hl, UnnamedText_cdbb ; $4dbb
+ ld hl, CanMoveBouldersText
jp PrintText
UsedStrengthText: ; cdaa (3:4daa)
@@ -20154,8 +18722,8 @@ UsedStrengthText: ; cdaa (3:4daa)
call Delay3
jp TextScriptEnd
-UnnamedText_cdbb: ; cdbb (3:4dbb)
- TX_FAR _UnnamedText_cdbb
+CanMoveBouldersText: ; cdbb (3:4dbb)
+ TX_FAR _CanMoveBouldersText
db "@"
Func_cdc0: ; cdc0 (3:4dc0)
@@ -20176,23 +18744,23 @@ Func_cdc0: ; cdc0 (3:4dc0)
ret nc
ld hl, $d728
res 1, [hl]
- ld hl, UnnamedText_cdfa ; $4dfa
+ ld hl, CurrentTooFastText
jp PrintText
.asm_cdec
ld hl, $d728
res 1, [hl]
- ld hl, UnnamedText_cdff ; $4dff
+ ld hl, CyclingIsFunText
jp PrintText
CoordsData_cdf7: ; cdf7 (3:4df7)
db $0B,$07,$FF
-UnnamedText_cdfa: ; cdfa (3:4dfa)
- TX_FAR _UnnamedText_cdfa
+CurrentTooFastText: ; cdfa (3:4dfa)
+ TX_FAR _CurrentTooFastText
db "@"
-UnnamedText_cdff: ; cdff (3:4dff)
- TX_FAR _UnnamedText_cdff
+CyclingIsFunText: ; cdff (3:4dff)
+ TX_FAR _CyclingIsFunText
db "@"
; function to add an item (in varying quantities) to the player's bag or PC box
@@ -20380,3816 +18948,7 @@ LoadWildData: ; ceb8 (3:4eb8)
ld bc,$0014
jp CopyData
-WildDataPointers: ; ceeb (3:4eeb)
- dw NoMons ; PALLET_TOWN
- dw NoMons ; VIRIDIAN_CITY
- dw NoMons ; PEWTER_CITY
- dw NoMons ; CERULEAN_CITY
- dw NoMons ; LAVENDER_TOWN
- dw NoMons ; VERMILION_CITY
- dw NoMons ; CELADON_CITY
- dw NoMons ; FUCHSIA_CITY
- dw NoMons ; CINNABAR_ISLAND
- dw NoMons ; INDIGO_PLATEAU
- dw NoMons ; SAFFRON_CITY
- dw NoMons ; unused
- dw Route1Mons ; ROUTE_1
- dw Route2Mons ; ROUTE_2
- dw Route3Mons ; ROUTE_3
- dw Route4Mons ; ROUTE_4
- dw Route5Mons ; ROUTE_5
- dw Route6Mons ; ROUTE_6
- dw Route7Mons ; ROUTE_7
- dw Route8Mons ; ROUTE_8
- dw Route9Mons ; ROUTE_9
- dw Route10Mons ; ROUTE_10
- dw Route11Mons ; ROUTE_11
- dw Route12Mons ; ROUTE_12
- dw Route13Mons ; ROUTE_13
- dw Route14Mons ; ROUTE_14
- dw Route15Mons ; ROUTE_15
- dw Route16Mons ; ROUTE_16
- dw Route17Mons ; ROUTE_17
- dw Route18Mons ; ROUTE_18
- dw WaterMons ; ROUTE_19
- dw WaterMons ; ROUTE_20
- dw Route21Mons ; ROUTE_21
- dw Route22Mons ; ROUTE_22
- dw Route23Mons ; ROUTE_23
- dw Route24Mons ; ROUTE_24
- dw Route25Mons ; ROUTE_25
- dw NoMons ; REDS_HOUSE_1F
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw ForestMons ; ViridianForest
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw MoonMons1
- dw MoonMonsB1
- dw MoonMonsB2
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw TunnelMonsB1
- dw PowerPlantMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw PlateauMons1
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw TowerMons1
- dw TowerMons2
- dw TowerMons3
- dw TowerMons4
- dw TowerMons5
- dw TowerMons6
- dw TowerMons7
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw IslandMonsB1
- dw IslandMonsB2
- dw IslandMonsB3
- dw IslandMonsB4
- dw NoMons
- dw NoMons
- dw MansionMons1
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw IslandMons1
- dw NoMons
- dw PlateauMons2
- dw NoMons
- dw NoMons
- dw CaveMons
- dw PlateauMons3
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw MansionMons2
- dw MansionMons3
- dw MansionMonsB1
- dw ZoneMons1
- dw ZoneMons2
- dw ZoneMons3
- dw ZoneMonsCenter
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw DungeonMons2
- dw DungeonMonsB1
- dw DungeonMons1
- dw NoMons
- dw NoMons
- dw NoMons
- dw TunnelMonsB2
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw NoMons
- dw $FFFF
-
-; wild pokemon data is divided into two parts.
-; first part: pokemon found in grass
-; second part: pokemon found while surfing
-; each part goes as follows:
- ; if first byte == 00, then
- ; no wild pokemon on this map
- ; if first byte != 00, then
- ; first byte is encounter rate
- ; followed by 20 bytes:
- ; level, species (ten times)
-
-IF _RED
-NoMons: ; d0dd (3:50dd)
- db $00
-
- db $00
-
-Route1Mons: ; d0df (3:50df)
- db $19
- db 3,PIDGEY
- db 3,RATTATA
- db 3,RATTATA
- db 2,RATTATA
- db 2,PIDGEY
- db 3,PIDGEY
- db 3,PIDGEY
- db 4,RATTATA
- db 4,PIDGEY
- db 5,PIDGEY
-
- db $00
-
-Route2Mons: ; d0f5 (3:50f5)
- db $19
- db 3,RATTATA
- db 3,PIDGEY
- db 4,PIDGEY
- db 4,RATTATA
- db 5,PIDGEY
- db 3,WEEDLE
- db 2,RATTATA
- db 5,RATTATA
- db 4,WEEDLE
- db 5,WEEDLE
-
- db $00
-
-Route22Mons: ; d10b (3:510b)
- db $19
- db 3,RATTATA
- db 3,NIDORAN_M
- db 4,RATTATA
- db 4,NIDORAN_M
- db 2,RATTATA
- db 2,NIDORAN_M
- db 3,SPEAROW
- db 5,SPEAROW
- db 3,NIDORAN_F
- db 4,NIDORAN_F
-
- db $00
-
-ForestMons: ; d121 (3:5121)
- db $08
- db 4,WEEDLE
- db 5,KAKUNA
- db 3,WEEDLE
- db 5,WEEDLE
- db 4,KAKUNA
- db 6,KAKUNA
- db 4,METAPOD
- db 3,CATERPIE
- db 3,PIKACHU
- db 5,PIKACHU
-
- db $00
-
-Route3Mons: ; d137 (3:5137)
- db $14
- db 6,PIDGEY
- db 5,SPEAROW
- db 7,PIDGEY
- db 6,SPEAROW
- db 7,SPEAROW
- db 8,PIDGEY
- db 8,SPEAROW
- db 3,JIGGLYPUFF
- db 5,JIGGLYPUFF
- db 7,JIGGLYPUFF
-
- db $00
-
-MoonMons1: ; d14d (3:514d)
- db $0A
- db 8,ZUBAT
- db 7,ZUBAT
- db 9,ZUBAT
- db 8,GEODUDE
- db 6,ZUBAT
- db 10,ZUBAT
- db 10,GEODUDE
- db 8,PARAS
- db 11,ZUBAT
- db 8,CLEFAIRY
-
- db $00
-
-MoonMonsB1: ; d163 (3:5163)
- db $0A
- db 8,ZUBAT
- db 7,ZUBAT
- db 7,GEODUDE
- db 8,GEODUDE
- db 9,ZUBAT
- db 10,PARAS
- db 10,ZUBAT
- db 11,ZUBAT
- db 9,CLEFAIRY
- db 9,GEODUDE
-
- db $00
-
-MoonMonsB2: ; d179 (3:5179)
- db $0A
- db 9,ZUBAT
- db 9,GEODUDE
- db 10,ZUBAT
- db 10,GEODUDE
- db 11,ZUBAT
- db 10,PARAS
- db 12,PARAS
- db 10,CLEFAIRY
- db 12,ZUBAT
- db 12,CLEFAIRY
-
- db $00
-
-Route4Mons: ; d18f (3:518f)
- db $14
- db 10,RATTATA
- db 10,SPEAROW
- db 8,RATTATA
- db 6,EKANS
- db 8,SPEAROW
- db 10,EKANS
- db 12,RATTATA
- db 12,SPEAROW
- db 8,EKANS
- db 12,EKANS
-
- db $00
-
-Route24Mons: ; d1a5 (3:51a5)
- db $19
- db 7,WEEDLE
- db 8,KAKUNA
- db 12,PIDGEY
- db 12,ODDISH
- db 13,ODDISH
- db 10,ABRA
- db 14,ODDISH
- db 13,PIDGEY
- db 8,ABRA
- db 12,ABRA
-
- db $00
-
-Route25Mons: ; d1bb (3:51bb)
- db $0F
- db 8,WEEDLE
- db 9,KAKUNA
- db 13,PIDGEY
- db 12,ODDISH
- db 13,ODDISH
- db 12,ABRA
- db 14,ODDISH
- db 10,ABRA
- db 7,METAPOD
- db 8,CATERPIE
-
- db $00
-
-Route9Mons: ; d1d1 (3:51d1)
- db $0F
- db 16,RATTATA
- db 16,SPEAROW
- db 14,RATTATA
- db 11,EKANS
- db 13,SPEAROW
- db 15,EKANS
- db 17,RATTATA
- db 17,SPEAROW
- db 13,EKANS
- db 17,EKANS
-
- db $00
-
-Route5Mons: ; d1e7 (3:51e7)
- db $0F
- db 13,ODDISH
- db 13,PIDGEY
- db 15,PIDGEY
- db 10,MANKEY
- db 12,MANKEY
- db 15,ODDISH
- db 16,ODDISH
- db 16,PIDGEY
- db 14,MANKEY
- db 16,MANKEY
-
- db $00
-
-Route6Mons: ; d1fd (3:51fd)
- db $0F
- db 13,ODDISH
- db 13,PIDGEY
- db 15,PIDGEY
- db 10,MANKEY
- db 12,MANKEY
- db 15,ODDISH
- db 16,ODDISH
- db 16,PIDGEY
- db 14,MANKEY
- db 16,MANKEY
-
- db $00
-
-Route11Mons: ; d213 (3:5213)
- db $0F
- db 14,EKANS
- db 15,SPEAROW
- db 12,EKANS
- db 9,DROWZEE
- db 13,SPEAROW
- db 13,DROWZEE
- db 15,EKANS
- db 17,SPEAROW
- db 11,DROWZEE
- db 15,DROWZEE
-
- db $00
-
-TunnelMonsB1: ; d229 (3:5229)
- db $0F
- db 16,ZUBAT
- db 17,ZUBAT
- db 17,GEODUDE
- db 15,MACHOP
- db 16,GEODUDE
- db 18,ZUBAT
- db 15,ZUBAT
- db 17,MACHOP
- db 13,ONIX
- db 15,ONIX
-
- db $00
-
-TunnelMonsB2: ; d23f (3:523f)
- db $0F
- db 16,ZUBAT
- db 17,ZUBAT
- db 17,GEODUDE
- db 15,MACHOP
- db 16,GEODUDE
- db 18,ZUBAT
- db 17,MACHOP
- db 17,ONIX
- db 13,ONIX
- db 18,GEODUDE
-
- db $00
-
-Route10Mons: ; d255 (3:5255)
- db $0F
- db 16,VOLTORB
- db 16,SPEAROW
- db 14,VOLTORB
- db 11,EKANS
- db 13,SPEAROW
- db 15,EKANS
- db 17,VOLTORB
- db 17,SPEAROW
- db 13,EKANS
- db 17,EKANS
-
- db $00
-
-Route12Mons: ; d26b (3:526b)
- db $0F
- db 24,ODDISH
- db 25,PIDGEY
- db 23,PIDGEY
- db 24,VENONAT
- db 22,ODDISH
- db 26,VENONAT
- db 26,ODDISH
- db 27,PIDGEY
- db 28,GLOOM
- db 30,GLOOM
-
- db $00
-
-Route8Mons: ; d281 (3:5281)
- db $0F
- db 18,PIDGEY
- db 18,MANKEY
- db 17,EKANS
- db 16,GROWLITHE
- db 20,PIDGEY
- db 20,MANKEY
- db 19,EKANS
- db 17,GROWLITHE
- db 15,GROWLITHE
- db 18,GROWLITHE
-
- db $00
-
-Route7Mons: ; d297 (3:5297)
- db $0F
- db 19,PIDGEY
- db 19,ODDISH
- db 17,MANKEY
- db 22,ODDISH
- db 22,PIDGEY
- db 18,MANKEY
- db 18,GROWLITHE
- db 20,GROWLITHE
- db 19,MANKEY
- db 20,MANKEY
-
- db $00
-
-TowerMons1: ; d2ad (3:52ad)
- db $00
-
- db $00
-
-TowerMons2: ; d2af (3:52af)
- db $00
-
- db $00
-
-TowerMons3: ; d2b1 (3:52b1)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 24,GASTLY
- db 20,CUBONE
- db 22,CUBONE
- db 25,HAUNTER
-
- db $00
-
-TowerMons4: ; d2c7 (3:52c7)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,HAUNTER
- db 20,CUBONE
- db 22,CUBONE
- db 24,GASTLY
-
- db $00
-
-TowerMons5: ; d2dd (3:52dd)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,HAUNTER
- db 20,CUBONE
- db 22,CUBONE
- db 24,GASTLY
-
- db $00
-
-TowerMons6: ; d2f3 (3:52f3)
- db $0F
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 20,GASTLY
- db 19,GASTLY
- db 26,HAUNTER
- db 22,CUBONE
- db 24,CUBONE
- db 28,HAUNTER
-
- db $00
-
-TowerMons7: ; d309 (3:5309)
- db $0F
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 20,GASTLY
- db 28,HAUNTER
- db 22,CUBONE
- db 24,CUBONE
- db 28,HAUNTER
- db 30,HAUNTER
-
- db $00
-
-Route13Mons: ; d31f (3:531f)
- db $14
- db 24,ODDISH
- db 25,PIDGEY
- db 27,PIDGEY
- db 24,VENONAT
- db 22,ODDISH
- db 26,VENONAT
- db 26,ODDISH
- db 25,DITTO
- db 28,GLOOM
- db 30,GLOOM
-
- db $00
-
-Route14Mons: ; d335 (3:5335)
- db $0F
- db 24,ODDISH
- db 26,PIDGEY
- db 23,DITTO
- db 24,VENONAT
- db 22,ODDISH
- db 26,VENONAT
- db 26,ODDISH
- db 30,GLOOM
- db 28,PIDGEOTTO
- db 30,PIDGEOTTO
-
- db $00
-
-Route15Mons: ; d34b (3:534b)
- db $0F
- db 24,ODDISH
- db 26,DITTO
- db 23,PIDGEY
- db 26,VENONAT
- db 22,ODDISH
- db 28,VENONAT
- db 26,ODDISH
- db 30,GLOOM
- db 28,PIDGEOTTO
- db 30,PIDGEOTTO
-
- db $00
-
-Route16Mons: ; d361 (3:5361)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 18,RATTATA
- db 20,DODUO
- db 20,RATTATA
- db 18,DODUO
- db 22,DODUO
- db 22,RATTATA
- db 23,RATICATE
- db 25,RATICATE
-
- db $00
-
-Route17Mons: ; d377 (3:5377)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 25,RATICATE
- db 24,DODUO
- db 27,RATICATE
- db 26,DODUO
- db 28,DODUO
- db 29,RATICATE
- db 25,FEAROW
- db 27,FEAROW
-
- db $00
-
-Route18Mons: ; d38d (3:538d)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 25,RATICATE
- db 24,DODUO
- db 25,FEAROW
- db 26,DODUO
- db 28,DODUO
- db 29,RATICATE
- db 27,FEAROW
- db 29,FEAROW
-
- db $00
-
-ZoneMonsCenter: ; d3a3 (3:53a3)
- db $1E
- db 22,NIDORAN_M
- db 25,RHYHORN
- db 22,VENONAT
- db 24,EXEGGCUTE
- db 31,NIDORINO
- db 25,EXEGGCUTE
- db 31,NIDORINA
- db 30,PARASECT
- db 23,SCYTHER
- db 23,CHANSEY
-
- db $00
-
-ZoneMons1: ; d3b9 (3:53b9)
- db $1E
- db 24,NIDORAN_M
- db 26,DODUO
- db 22,PARAS
- db 25,EXEGGCUTE
- db 33,NIDORINO
- db 23,EXEGGCUTE
- db 24,NIDORAN_F
- db 25,PARASECT
- db 25,KANGASKHAN
- db 28,SCYTHER
-
- db $00
-
-ZoneMons2: ; d3cf (3:53cf)
- db $1E
- db 22,NIDORAN_M
- db 26,RHYHORN
- db 23,PARAS
- db 25,EXEGGCUTE
- db 30,NIDORINO
- db 27,EXEGGCUTE
- db 30,NIDORINA
- db 32,VENOMOTH
- db 26,CHANSEY
- db 28,TAUROS
-
- db $00
-
-ZoneMons3: ; d3e5 (3:53e5)
- db $1E
- db 25,NIDORAN_M
- db 26,DODUO
- db 23,VENONAT
- db 24,EXEGGCUTE
- db 33,NIDORINO
- db 26,EXEGGCUTE
- db 25,NIDORAN_F
- db 31,VENOMOTH
- db 26,TAUROS
- db 28,KANGASKHAN
-
- db $00
-
-WaterMons: ; d3fb (3:53fb)
- db $00
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-IslandMons1: ; d411 (3:5411)
- db $0F
- db 30,SEEL
- db 30,SLOWPOKE
- db 30,SHELLDER
- db 30,HORSEA
- db 28,HORSEA
- db 21,ZUBAT
- db 29,GOLBAT
- db 28,PSYDUCK
- db 28,SHELLDER
- db 38,GOLDUCK
-
- db $00
-
-IslandMonsB1: ; d427 (3:5427)
- db $0A
- db 30,STARYU
- db 30,HORSEA
- db 32,SHELLDER
- db 32,HORSEA
- db 28,SLOWPOKE
- db 30,SEEL
- db 30,SLOWPOKE
- db 28,SEEL
- db 38,DEWGONG
- db 37,SEADRA
-
- db $00
-
-IslandMonsB2: ; d43d (3:543d)
- db $0A
- db 30,SEEL
- db 30,SLOWPOKE
- db 32,SEEL
- db 32,SLOWPOKE
- db 28,HORSEA
- db 30,STARYU
- db 30,HORSEA
- db 28,SHELLDER
- db 30,GOLBAT
- db 37,SLOWBRO
-
- db $00
-
-IslandMonsB3: ; d453 (3:5453)
- db $0A
- db 31,SLOWPOKE
- db 31,SEEL
- db 33,SLOWPOKE
- db 33,SEEL
- db 29,HORSEA
- db 31,SHELLDER
- db 31,HORSEA
- db 29,SHELLDER
- db 39,SEADRA
- db 37,DEWGONG
-
- db $00
-
-IslandMonsB4: ; d469 (3:5469)
- db $0A
- db 31,HORSEA
- db 31,SHELLDER
- db 33,HORSEA
- db 33,SHELLDER
- db 29,SLOWPOKE
- db 31,SEEL
- db 31,SLOWPOKE
- db 29,SEEL
- db 39,SLOWBRO
- db 32,GOLBAT
-
- db $00
-
-MansionMons1: ; d47f (3:547f)
- db $0A
- db 32,KOFFING
- db 30,KOFFING
- db 34,PONYTA
- db 30,PONYTA
- db 34,GROWLITHE
- db 32,PONYTA
- db 30,GRIMER
- db 28,PONYTA
- db 37,WEEZING
- db 39,MUK
-
- db $00
-
-MansionMons2: ; d495 (3:5495)
- db $0A
- db 32,GROWLITHE
- db 34,KOFFING
- db 34,KOFFING
- db 30,PONYTA
- db 30,KOFFING
- db 32,PONYTA
- db 30,GRIMER
- db 28,PONYTA
- db 39,WEEZING
- db 37,MUK
-
- db $00
-
-MansionMons3: ; d4ab (3:54ab)
- db $0A
- db 31,KOFFING
- db 33,GROWLITHE
- db 35,KOFFING
- db 32,PONYTA
- db 34,PONYTA
- db 40,WEEZING
- db 34,GRIMER
- db 38,WEEZING
- db 36,PONYTA
- db 42,MUK
-
- db $00
-
-MansionMonsB1: ; d4c1 (3:54c1)
- db $0A
- db 33,KOFFING
- db 31,KOFFING
- db 35,GROWLITHE
- db 32,PONYTA
- db 31,KOFFING
- db 40,WEEZING
- db 34,PONYTA
- db 35,GRIMER
- db 42,WEEZING
- db 42,MUK
-
- db $00
-
-Route21Mons: ; d4d7 (3:54d7)
- db $19
- db 21,RATTATA
- db 23,PIDGEY
- db 30,RATICATE
- db 23,RATTATA
- db 21,PIDGEY
- db 30,PIDGEOTTO
- db 32,PIDGEOTTO
- db 28,TANGELA
- db 30,TANGELA
- db 32,TANGELA
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-DungeonMons1: ; d501 (3:5501)
- db $0A
- db 46,GOLBAT
- db 46,HYPNO
- db 46,MAGNETON
- db 49,DODRIO
- db 49,VENOMOTH
- db 52,ARBOK
- db 49,KADABRA
- db 52,PARASECT
- db 53,RAICHU
- db 53,DITTO
-
- db $00
-
-DungeonMons2: ; d517 (3:5517)
- db $0F
- db 51,DODRIO
- db 51,VENOMOTH
- db 51,KADABRA
- db 52,RHYDON
- db 52,MAROWAK
- db 52,ELECTRODE
- db 56,CHANSEY
- db 54,WIGGLYTUFF
- db 55,DITTO
- db 60,DITTO
-
- db $00
-
-DungeonMonsB1: ; d52d (3:552d)
- db $19
- db 55,RHYDON
- db 55,MAROWAK
- db 55,ELECTRODE
- db 64,CHANSEY
- db 64,PARASECT
- db 64,RAICHU
- db 57,ARBOK
- db 65,DITTO
- db 63,DITTO
- db 67,DITTO
-
- db $00
-
-PowerPlantMons: ; d543 (3:5543)
- db $0A
- db 21,VOLTORB
- db 21,MAGNEMITE
- db 20,PIKACHU
- db 24,PIKACHU
- db 23,MAGNEMITE
- db 23,VOLTORB
- db 32,MAGNETON
- db 35,MAGNETON
- db 33,ELECTABUZZ
- db 36,ELECTABUZZ
-
- db $00
-
-Route23Mons: ; d559 (3:5559)
- db $0A
- db 26,EKANS
- db 33,DITTO
- db 26,SPEAROW
- db 38,FEAROW
- db 38,DITTO
- db 38,FEAROW
- db 41,ARBOK
- db 43,DITTO
- db 41,FEAROW
- db 43,FEAROW
-
- db $00
-
-PlateauMons2: ; d56f (3:556f)
- db $0A
- db 22,MACHOP
- db 24,GEODUDE
- db 26,ZUBAT
- db 36,ONIX
- db 39,ONIX
- db 42,ONIX
- db 41,MACHOKE
- db 40,GOLBAT
- db 40,MAROWAK
- db 43,GRAVELER
-
- db $00
-
-PlateauMons3: ; d585 (3:5585)
- db $0F
- db 24,MACHOP
- db 26,GEODUDE
- db 22,ZUBAT
- db 42,ONIX
- db 40,VENOMOTH
- db 45,ONIX
- db 43,GRAVELER
- db 41,GOLBAT
- db 42,MACHOKE
- db 45,MACHOKE
-
- db $00
-
-PlateauMons1: ; d59b (3:559b)
- db $0F
- db 24,MACHOP
- db 26,GEODUDE
- db 22,ZUBAT
- db 36,ONIX
- db 39,ONIX
- db 42,ONIX
- db 41,GRAVELER
- db 41,GOLBAT
- db 42,MACHOKE
- db 43,MAROWAK
-
- db $00
-
-CaveMons: ; d5b1 (3:55b1)
- db $14
- db 18,DIGLETT
- db 19,DIGLETT
- db 17,DIGLETT
- db 20,DIGLETT
- db 16,DIGLETT
- db 15,DIGLETT
- db 21,DIGLETT
- db 22,DIGLETT
- db 29,DUGTRIO
- db 31,DUGTRIO
-
- db $00
-
-ENDC
-IF _GREEN || !_JAPAN && _BLUE
-NoMons: ; d0dd (3:50dd)
- db $00
-
- db $00
-
-Route1Mons: ; d0df (3:50df)
- db $19
- db 3,PIDGEY
- db 3,RATTATA
- db 3,RATTATA
- db 2,RATTATA
- db 2,PIDGEY
- db 3,PIDGEY
- db 3,PIDGEY
- db 4,RATTATA
- db 4,PIDGEY
- db 5,PIDGEY
-
- db $00
-
-Route2Mons: ; d0f5 (3:50f5)
- db $19
- db 3,RATTATA
- db 3,PIDGEY
- db 4,PIDGEY
- db 4,RATTATA
- db 5,PIDGEY
- db 3,CATERPIE
- db 2,RATTATA
- db 5,RATTATA
- db 4,CATERPIE
- db 5,CATERPIE
-
- db $00
-
-Route22Mons: ; d10b (3:510b)
- db $19
- db 3,RATTATA
- db 3,NIDORAN_F
- db 4,RATTATA
- db 4,NIDORAN_F
- db 2,RATTATA
- db 2,NIDORAN_F
- db 3,SPEAROW
- db 5,SPEAROW
- db 3,NIDORAN_M
- db 4,NIDORAN_M
-
- db $00
-
-ForestMons: ; d121 (3:5121)
- db $08
- db 4,CATERPIE
- db 5,METAPOD
- db 3,CATERPIE
- db 5,CATERPIE
- db 4,METAPOD
- db 6,METAPOD
- db 4,KAKUNA
- db 3,WEEDLE
- db 3,PIKACHU
- db 5,PIKACHU
-
- db $00
-
-Route3Mons: ; d137 (3:5137)
- db $14
- db 6,PIDGEY
- db 5,SPEAROW
- db 7,PIDGEY
- db 6,SPEAROW
- db 7,SPEAROW
- db 8,PIDGEY
- db 8,SPEAROW
- db 3,JIGGLYPUFF
- db 5,JIGGLYPUFF
- db 7,JIGGLYPUFF
-
- db $00
-
-MoonMons1: ; d14d (3:514d)
- db $0A
- db 8,ZUBAT
- db 7,ZUBAT
- db 9,ZUBAT
- db 8,GEODUDE
- db 6,ZUBAT
- db 10,ZUBAT
- db 10,GEODUDE
- db 8,PARAS
- db 11,ZUBAT
- db 8,CLEFAIRY
-
- db $00
-
-MoonMonsB1: ; d163 (3:5163)
- db $0A
- db 8,ZUBAT
- db 7,ZUBAT
- db 7,GEODUDE
- db 8,GEODUDE
- db 9,ZUBAT
- db 10,PARAS
- db 10,ZUBAT
- db 11,ZUBAT
- db 9,CLEFAIRY
- db 9,GEODUDE
-
- db $00
-
-MoonMonsB2: ; d179 (3:5179)
- db $0A
- db 9,ZUBAT
- db 9,GEODUDE
- db 10,ZUBAT
- db 10,GEODUDE
- db 11,ZUBAT
- db 10,PARAS
- db 12,PARAS
- db 10,CLEFAIRY
- db 12,ZUBAT
- db 12,CLEFAIRY
-
- db $00
-
-Route4Mons: ; d18f (3:518f)
- db $14
- db 10,RATTATA
- db 10,SPEAROW
- db 8,RATTATA
- db 6,SANDSHREW
- db 8,SPEAROW
- db 10,SANDSHREW
- db 12,RATTATA
- db 12,SPEAROW
- db 8,SANDSHREW
- db 12,SANDSHREW
-
- db $00
-
-Route24Mons: ; d1a5 (3:51a5)
- db $19
- db 7,CATERPIE
- db 8,METAPOD
- db 12,PIDGEY
- db 12,BELLSPROUT
- db 13,BELLSPROUT
- db 10,ABRA
- db 14,BELLSPROUT
- db 13,PIDGEY
- db 8,ABRA
- db 12,ABRA
-
- db $00
-
-Route25Mons: ; d1bb (3:51bb)
- db $0F
- db 8,CATERPIE
- db 9,METAPOD
- db 13,PIDGEY
- db 12,BELLSPROUT
- db 13,BELLSPROUT
- db 12,ABRA
- db 14,BELLSPROUT
- db 10,ABRA
- db 7,KAKUNA
- db 8,WEEDLE
-
- db $00
-
-Route9Mons: ; d1d1 (3:51d1)
- db $0F
- db 16,RATTATA
- db 16,SPEAROW
- db 14,RATTATA
- db 11,SANDSHREW
- db 13,SPEAROW
- db 15,SANDSHREW
- db 17,RATTATA
- db 17,SPEAROW
- db 13,SANDSHREW
- db 17,SANDSHREW
-
- db $00
-
-Route5Mons: ; d1e7 (3:51e7)
- db $0F
- db 13,BELLSPROUT
- db 13,PIDGEY
- db 15,PIDGEY
- db 10,MEOWTH
- db 12,MEOWTH
- db 15,BELLSPROUT
- db 16,BELLSPROUT
- db 16,PIDGEY
- db 14,MEOWTH
- db 16,MEOWTH
-
- db $00
-
-Route6Mons: ; d1fd (3:51fd)
- db $0F
- db 13,BELLSPROUT
- db 13,PIDGEY
- db 15,PIDGEY
- db 10,MEOWTH
- db 12,MEOWTH
- db 15,BELLSPROUT
- db 16,BELLSPROUT
- db 16,PIDGEY
- db 14,MEOWTH
- db 16,MEOWTH
-
- db $00
-
-Route11Mons: ; d213 (3:5213)
- db $0F
- db 14,SANDSHREW
- db 15,SPEAROW
- db 12,SANDSHREW
- db 9,DROWZEE
- db 13,SPEAROW
- db 13,DROWZEE
- db 15,SANDSHREW
- db 17,SPEAROW
- db 11,DROWZEE
- db 15,DROWZEE
-
- db $00
-
-TunnelMonsB1: ; d229 (3:5229)
- db $0F
- db 16,ZUBAT
- db 17,ZUBAT
- db 17,GEODUDE
- db 15,MACHOP
- db 16,GEODUDE
- db 18,ZUBAT
- db 15,ZUBAT
- db 17,MACHOP
- db 13,ONIX
- db 15,ONIX
-
- db $00
-
-TunnelMonsB2: ; d23f (3:523f)
- db $0F
- db 16,ZUBAT
- db 17,ZUBAT
- db 17,GEODUDE
- db 15,MACHOP
- db 16,GEODUDE
- db 18,ZUBAT
- db 17,MACHOP
- db 17,ONIX
- db 13,ONIX
- db 18,GEODUDE
-
- db $00
-
-Route10Mons: ; d255 (3:5255)
- db $0F
- db 16,VOLTORB
- db 16,SPEAROW
- db 14,VOLTORB
- db 11,SANDSHREW
- db 13,SPEAROW
- db 15,SANDSHREW
- db 17,VOLTORB
- db 17,SPEAROW
- db 13,SANDSHREW
- db 17,SANDSHREW
-
- db $00
-
-Route12Mons: ; d26b (3:526b)
- db $0F
- db 24,BELLSPROUT
- db 25,PIDGEY
- db 23,PIDGEY
- db 24,VENONAT
- db 22,BELLSPROUT
- db 26,VENONAT
- db 26,BELLSPROUT
- db 27,PIDGEY
- db 28,WEEPINBELL
- db 30,WEEPINBELL
-
- db $00
-
-Route8Mons: ; d281 (3:5281)
- db $0F
- db 18,PIDGEY
- db 18,MEOWTH
- db 17,SANDSHREW
- db 16,VULPIX
- db 20,PIDGEY
- db 20,MEOWTH
- db 19,SANDSHREW
- db 17,VULPIX
- db 15,VULPIX
- db 18,VULPIX
-
- db $00
-
-Route7Mons: ; d297 (3:5297)
- db $0F
- db 19,PIDGEY
- db 19,BELLSPROUT
- db 17,MEOWTH
- db 22,BELLSPROUT
- db 22,PIDGEY
- db 18,MEOWTH
- db 18,VULPIX
- db 20,VULPIX
- db 19,MEOWTH
- db 20,MEOWTH
-
- db $00
-
-TowerMons1: ; d2ad (3:52ad)
- db $00
-
- db $00
-
-TowerMons2: ; d2af (3:52af)
- db $00
-
- db $00
-
-TowerMons3: ; d2b1 (3:52b1)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 24,GASTLY
- db 20,CUBONE
- db 22,CUBONE
- db 25,HAUNTER
-
- db $00
-
-TowerMons4: ; d2c7 (3:52c7)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,HAUNTER
- db 20,CUBONE
- db 22,CUBONE
- db 24,GASTLY
-
- db $00
-
-TowerMons5: ; d2dd (3:52dd)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,HAUNTER
- db 20,CUBONE
- db 22,CUBONE
- db 24,GASTLY
-
- db $00
-
-TowerMons6: ; d2f3 (3:52f3)
- db $0F
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 20,GASTLY
- db 19,GASTLY
- db 26,HAUNTER
- db 22,CUBONE
- db 24,CUBONE
- db 28,HAUNTER
-
- db $00
-
-TowerMons7: ; d309 (3:5309)
- db $0F
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 20,GASTLY
- db 28,HAUNTER
- db 22,CUBONE
- db 24,CUBONE
- db 28,HAUNTER
- db 30,HAUNTER
-
- db $00
-
-Route13Mons: ; d31f (3:531f)
- db $14
- db 24,BELLSPROUT
- db 25,PIDGEY
- db 27,PIDGEY
- db 24,VENONAT
- db 22,BELLSPROUT
- db 26,VENONAT
- db 26,BELLSPROUT
- db 25,DITTO
- db 28,WEEPINBELL
- db 30,WEEPINBELL
-
- db $00
-
-Route14Mons: ; d335 (3:5335)
- db $0F
- db 24,BELLSPROUT
- db 26,PIDGEY
- db 23,DITTO
- db 24,VENONAT
- db 22,BELLSPROUT
- db 26,VENONAT
- db 26,BELLSPROUT
- db 30,WEEPINBELL
- db 28,PIDGEOTTO
- db 30,PIDGEOTTO
-
- db $00
-
-Route15Mons: ; d34b (3:534b)
- db $0F
- db 24,BELLSPROUT
- db 26,DITTO
- db 23,PIDGEY
- db 26,VENONAT
- db 22,BELLSPROUT
- db 28,VENONAT
- db 26,BELLSPROUT
- db 30,WEEPINBELL
- db 28,PIDGEOTTO
- db 30,PIDGEOTTO
-
- db $00
-
-Route16Mons: ; d361 (3:5361)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 18,RATTATA
- db 20,DODUO
- db 20,RATTATA
- db 18,DODUO
- db 22,DODUO
- db 22,RATTATA
- db 23,RATICATE
- db 25,RATICATE
-
- db $00
-
-Route17Mons: ; d377 (3:5377)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 25,RATICATE
- db 24,DODUO
- db 27,RATICATE
- db 26,DODUO
- db 28,DODUO
- db 29,RATICATE
- db 25,FEAROW
- db 27,FEAROW
-
- db $00
-
-Route18Mons: ; d38d (3:538d)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 25,RATICATE
- db 24,DODUO
- db 25,FEAROW
- db 26,DODUO
- db 28,DODUO
- db 29,RATICATE
- db 27,FEAROW
- db 29,FEAROW
-
- db $00
-
-ZoneMonsCenter: ; d3a3 (3:53a3)
- db $1E
- db 22,NIDORAN_F
- db 25,RHYHORN
- db 22,VENONAT
- db 24,EXEGGCUTE
- db 31,NIDORINA
- db 25,EXEGGCUTE
- db 31,NIDORINO
- db 30,PARASECT
- db 23,PINSIR
- db 23,CHANSEY
-
- db $00
-
-ZoneMons1: ; d3b9 (3:53b9)
- db $1E
- db 24,NIDORAN_F
- db 26,DODUO
- db 22,PARAS
- db 25,EXEGGCUTE
- db 33,NIDORINA
- db 23,EXEGGCUTE
- db 24,NIDORAN_M
- db 25,PARASECT
- db 25,KANGASKHAN
- db 28,PINSIR
-
- db $00
-
-ZoneMons2: ; d3cf (3:53cf)
- db $1E
- db 22,NIDORAN_F
- db 26,RHYHORN
- db 23,PARAS
- db 25,EXEGGCUTE
- db 30,NIDORINA
- db 27,EXEGGCUTE
- db 30,NIDORINO
- db 32,VENOMOTH
- db 26,CHANSEY
- db 28,TAUROS
-
- db $00
-
-ZoneMons3: ; d3e5 (3:53e5)
- db $1E
- db 25,NIDORAN_F
- db 26,DODUO
- db 23,VENONAT
- db 24,EXEGGCUTE
- db 33,NIDORINA
- db 26,EXEGGCUTE
- db 25,NIDORAN_M
- db 31,VENOMOTH
- db 26,TAUROS
- db 28,KANGASKHAN
-
- db $00
-
-WaterMons: ; d3fb (3:53fb)
- db $00
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-IslandMons1: ; d411 (3:5411)
- db $0F
- db 30,SEEL
- db 30,PSYDUCK
- db 30,STARYU
- db 30,KRABBY
- db 28,KRABBY
- db 21,ZUBAT
- db 29,GOLBAT
- db 28,SLOWPOKE
- db 28,STARYU
- db 38,SLOWBRO
-
- db $00
-
-IslandMonsB1: ; d427 (3:5427)
- db $0A
- db 30,SHELLDER
- db 30,KRABBY
- db 32,STARYU
- db 32,KRABBY
- db 28,PSYDUCK
- db 30,SEEL
- db 30,PSYDUCK
- db 28,SEEL
- db 38,DEWGONG
- db 37,KINGLER
-
- db $00
-
-IslandMonsB2: ; d43d (3:543d)
- db $0A
- db 30,SEEL
- db 30,PSYDUCK
- db 32,SEEL
- db 32,PSYDUCK
- db 28,KRABBY
- db 30,SHELLDER
- db 30,KRABBY
- db 28,STARYU
- db 30,GOLBAT
- db 37,GOLDUCK
-
- db $00
-
-IslandMonsB3: ; d453 (3:5453)
- db $0A
- db 31,PSYDUCK
- db 31,SEEL
- db 33,PSYDUCK
- db 33,SEEL
- db 29,KRABBY
- db 31,STARYU
- db 31,KRABBY
- db 29,STARYU
- db 39,KINGLER
- db 37,DEWGONG
-
- db $00
-
-IslandMonsB4: ; d469 (3:5469)
- db $0A
- db 31,KRABBY
- db 31,STARYU
- db 33,KRABBY
- db 33,STARYU
- db 29,PSYDUCK
- db 31,SEEL
- db 31,PSYDUCK
- db 29,SEEL
- db 39,GOLDUCK
- db 32,GOLBAT
-
- db $00
-
-MansionMons1: ; d47f (3:547f)
- db $0A
- db 32,GRIMER
- db 30,GRIMER
- db 34,PONYTA
- db 30,PONYTA
- db 34,VULPIX
- db 32,PONYTA
- db 30,KOFFING
- db 28,PONYTA
- db 37,MUK
- db 39,WEEZING
-
- db $00
-
-MansionMons2: ; d495 (3:5495)
- db $0A
- db 32,VULPIX
- db 34,GRIMER
- db 34,GRIMER
- db 30,PONYTA
- db 30,GRIMER
- db 32,PONYTA
- db 30,KOFFING
- db 28,PONYTA
- db 39,MUK
- db 37,WEEZING
-
- db $00
-
-MansionMons3: ; d4ab (3:54ab)
- db $0A
- db 31,GRIMER
- db 33,VULPIX
- db 35,GRIMER
- db 32,PONYTA
- db 34,MAGMAR
- db 40,MUK
- db 34,KOFFING
- db 38,MUK
- db 36,PONYTA
- db 42,WEEZING
-
- db $00
-
-MansionMonsB1: ; d4c1 (3:54c1)
- db $0A
- db 33,GRIMER
- db 31,GRIMER
- db 35,VULPIX
- db 32,PONYTA
- db 31,GRIMER
- db 40,MUK
- db 34,PONYTA
- db 35,KOFFING
- db 38,MAGMAR
- db 42,WEEZING
-
- db $00
-
-Route21Mons: ; d4d7 (3:54d7)
- db $19
- db 21,RATTATA
- db 23,PIDGEY
- db 30,RATICATE
- db 23,RATTATA
- db 21,PIDGEY
- db 30,PIDGEOTTO
- db 32,PIDGEOTTO
- db 28,TANGELA
- db 30,TANGELA
- db 32,TANGELA
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-DungeonMons1: ; d501 (3:5501)
- db $0A
- db 46,GOLBAT
- db 46,HYPNO
- db 46,MAGNETON
- db 49,DODRIO
- db 49,VENOMOTH
- db 52,SANDSLASH
- db 49,KADABRA
- db 52,PARASECT
- db 53,RAICHU
- db 53,DITTO
-
- db $00
-
-DungeonMons2: ; d517 (3:5517)
- db $0F
- db 51,DODRIO
- db 51,VENOMOTH
- db 51,KADABRA
- db 52,RHYDON
- db 52,MAROWAK
- db 52,ELECTRODE
- db 56,CHANSEY
- db 54,WIGGLYTUFF
- db 55,DITTO
- db 60,DITTO
-
- db $00
-
-DungeonMonsB1: ; d52d (3:552d)
- db $19
- db 55,RHYDON
- db 55,MAROWAK
- db 55,ELECTRODE
- db 64,CHANSEY
- db 64,PARASECT
- db 64,RAICHU
- db 57,SANDSLASH
- db 65,DITTO
- db 63,DITTO
- db 67,DITTO
-
- db $00
-
-PowerPlantMons: ; d543 (3:5543)
- db $0A
- db 21,VOLTORB
- db 21,MAGNEMITE
- db 20,PIKACHU
- db 24,PIKACHU
- db 23,MAGNEMITE
- db 23,VOLTORB
- db 32,MAGNETON
- db 35,MAGNETON
- db 33,RAICHU
- db 36,RAICHU
-
- db $00
-
-Route23Mons: ; d559 (3:5559)
- db $0A
- db 26,SANDSHREW
- db 33,DITTO
- db 26,SPEAROW
- db 38,FEAROW
- db 38,DITTO
- db 38,FEAROW
- db 41,SANDSLASH
- db 43,DITTO
- db 41,FEAROW
- db 43,FEAROW
-
- db $00
-
-PlateauMons2: ; d56f (3:556f)
- db $0A
- db 22,MACHOP
- db 24,GEODUDE
- db 26,ZUBAT
- db 36,ONIX
- db 39,ONIX
- db 42,ONIX
- db 41,MACHOKE
- db 40,GOLBAT
- db 40,MAROWAK
- db 43,GRAVELER
-
- db $00
-
-PlateauMons3: ; d585 (3:5585)
- db $0F
- db 24,MACHOP
- db 26,GEODUDE
- db 22,ZUBAT
- db 42,ONIX
- db 40,VENOMOTH
- db 45,ONIX
- db 43,GRAVELER
- db 41,GOLBAT
- db 42,MACHOKE
- db 45,MACHOKE
-
- db $00
-
-PlateauMons1: ; d59b (3:559b)
- db $0F
- db 24,MACHOP
- db 26,GEODUDE
- db 22,ZUBAT
- db 36,ONIX
- db 39,ONIX
- db 42,ONIX
- db 41,GRAVELER
- db 41,GOLBAT
- db 42,MACHOKE
- db 43,MAROWAK
-
- db $00
-
-CaveMons: ; d5b1 (3:55b1)
- db $14
- db 18,DIGLETT
- db 19,DIGLETT
- db 17,DIGLETT
- db 20,DIGLETT
- db 16,DIGLETT
- db 15,DIGLETT
- db 21,DIGLETT
- db 22,DIGLETT
- db 29,DUGTRIO
- db 31,DUGTRIO
-
- db $00
-
-ENDC
-IF _JAPAN && _BLUE
-NoMons: ; d0dd (3:50dd)
- db $00
-
- db $00
-
-Route1Mons: ; d0df (3:50df)
- db $19
- db 3,PIDGEY
- db 3,RATTATA
- db 3,RATTATA
- db 2,RATTATA
- db 2,PIDGEY
- db 3,PIDGEY
- db 3,PIDGEY
- db 4,RATTATA
- db 4,PIDGEY
- db 5,PIDGEY
-
- db $00
-
-Route2Mons: ; d0f5 (3:50f5)
- db $19
- db 3,RATTATA
- db 3,PIDGEY
- db 4,PIDGEY
- db 4,RATTATA
- db 5,PIDGEY
- db 3,CATERPIE
- db 2,RATTATA
- db 5,RATTATA
- db 4,CATERPIE
- db 5,CATERPIE
-
- db $00
-
-Route22Mons: ; d10b (3:510b)
- db $19
- db 3,RATTATA
- db 3,NIDORAN_M
- db 4,RATTATA
- db 4,NIDORAN_M
- db 2,RATTATA
- db 2,NIDORAN_M
- db 3,SPEAROW
- db 5,SPEAROW
- db 3,NIDORAN_F
- db 4,NIDORAN_F
-
- db $00
-
-ForestMons: ; d121 (3:5121)
- db $08
- db 4,CATERPIE
- db 5,METAPOD
- db 3,CATERPIE
- db 5,CATERPIE
- db 4,METAPOD
- db 6,METAPOD
- db 4,KAKUNA
- db 3,WEEDLE
- db 3,PIKACHU
- db 5,PIKACHU
-
- db $00
-
-Route3Mons: ; d137 (3:5137)
- db $14
- db 6,PIDGEY
- db 5,SPEAROW
- db 7,PIDGEY
- db 6,SPEAROW
- db 7,SPEAROW
- db 8,PIDGEY
- db 8,SPEAROW
- db 3,JIGGLYPUFF
- db 5,JIGGLYPUFF
- db 7,JIGGLYPUFF
-
- db $00
-
-MoonMons1: ; d14d (3:514d)
- db $0A
- db 8,ZUBAT
- db 7,ZUBAT
- db 9,ZUBAT
- db 8,GEODUDE
- db 6,ZUBAT
- db 10,ZUBAT
- db 10,GEODUDE
- db 8,PARAS
- db 11,ZUBAT
- db 8,CLEFAIRY
-
- db $00
-
-MoonMonsB1: ; d163 (3:5163)
- db $0A
- db 8,ZUBAT
- db 7,ZUBAT
- db 7,GEODUDE
- db 8,GEODUDE
- db 9,ZUBAT
- db 10,PARAS
- db 10,ZUBAT
- db 11,ZUBAT
- db 9,CLEFAIRY
- db 9,GEODUDE
-
- db $00
-
-MoonMonsB2: ; d179 (3:5179)
- db $0A
- db 9,ZUBAT
- db 9,GEODUDE
- db 10,ZUBAT
- db 10,GEODUDE
- db 11,ZUBAT
- db 10,PARAS
- db 12,PARAS
- db 10,CLEFAIRY
- db 12,ZUBAT
- db 12,CLEFAIRY
-
- db $00
-
-Route4Mons: ; d18f (3:518f)
- db $14
- db 10,RATTATA
- db 10,SPEAROW
- db 8,RATTATA
- db 6,SANDSHREW
- db 8,SPEAROW
- db 10,SANDSHREW
- db 12,RATTATA
- db 12,SPEAROW
- db 8,SANDSHREW
- db 12,SANDSHREW
-
- db $00
-
-Route24Mons: ; d1a5 (3:51a5)
- db $19
- db 7,CATERPIE
- db 8,METAPOD
- db 12,PIDGEY
- db 12,ODDISH
- db 13,ODDISH
- db 10,ABRA
- db 14,ODDISH
- db 13,PIDGEY
- db 8,ABRA
- db 12,ABRA
-
- db $00
-
-Route25Mons: ; d1bb (3:51bb)
- db $0F
- db 8,CATERPIE
- db 9,METAPOD
- db 13,PIDGEY
- db 12,ODDISH
- db 13,ODDISH
- db 12,ABRA
- db 14,ODDISH
- db 10,ABRA
- db 7,KAKUNA
- db 8,WEEDLE
-
- db $00
-
-Route9Mons: ; d1d1 (3:51d1)
- db $0F
- db 16,RATTATA
- db 16,SPEAROW
- db 14,RATTATA
- db 11,SANDSHREW
- db 13,SPEAROW
- db 15,SANDSHREW
- db 17,RATTATA
- db 17,SPEAROW
- db 13,SANDSHREW
- db 17,SANDSHREW
-
- db $00
-
-Route5Mons: ; d1e7 (3:51e7)
- db $0F
- db 13,ODDISH
- db 13,PIDGEY
- db 15,PIDGEY
- db 10,MEOWTH
- db 12,MEOWTH
- db 15,ODDISH
- db 16,ODDISH
- db 16,PIDGEY
- db 14,MEOWTH
- db 16,MEOWTH
-
- db $00
-
-Route6Mons: ; d1fd (3:51fd)
- db $0F
- db 13,ODDISH
- db 13,PIDGEY
- db 15,PIDGEY
- db 10,MEOWTH
- db 12,MEOWTH
- db 15,ODDISH
- db 16,ODDISH
- db 16,PIDGEY
- db 14,MEOWTH
- db 16,MEOWTH
-
- db $00
-
-Route11Mons: ; d213 (3:5213)
- db $0F
- db 14,SANDSHREW
- db 15,SPEAROW
- db 12,SANDSHREW
- db 9,DROWZEE
- db 13,SPEAROW
- db 13,DROWZEE
- db 15,SANDSHREW
- db 17,SPEAROW
- db 11,DROWZEE
- db 15,DROWZEE
-
- db $00
-
-TunnelMonsB1: ; d229 (3:5229)
- db $0F
- db 16,ZUBAT
- db 17,ZUBAT
- db 17,GEODUDE
- db 15,MACHOP
- db 16,GEODUDE
- db 18,DITTO
- db 15,ZUBAT
- db 17,MACHOP
- db 13,ONIX
- db 15,ONIX
-
- db $00
-
-TunnelMonsB2: ; d23f (3:523f)
- db $0F
- db 16,ZUBAT
- db 17,ZUBAT
- db 17,GEODUDE
- db 15,MACHOP
- db 16,GEODUDE
- db 18,DITTO
- db 17,MACHOP
- db 17,ONIX
- db 13,ONIX
- db 18,GEODUDE
-
- db $00
-
-Route10Mons: ; d255 (3:5255)
- db $0F
- db 16,VOLTORB
- db 16,SPEAROW
- db 14,VOLTORB
- db 11,SANDSHREW
- db 13,SPEAROW
- db 15,SANDSHREW
- db 17,VOLTORB
- db 17,SPEAROW
- db 13,SANDSHREW
- db 17,SANDSHREW
-
- db $00
-
-Route12Mons: ; d26b (3:526b)
- db $0F
- db 24,ODDISH
- db 25,PIDGEY
- db 23,PIDGEY
- db 24,VENONAT
- db 22,ODDISH
- db 26,VENONAT
- db 26,ODDISH
- db 27,PIDGEY
- db 28,GLOOM
- db 30,GLOOM
-
- db $00
-
-Route8Mons: ; d281 (3:5281)
- db $0F
- db 18,PIDGEY
- db 18,MEOWTH
- db 17,SANDSHREW
- db 16,GROWLITHE
- db 20,PIDGEY
- db 20,MEOWTH
- db 19,SANDSHREW
- db 17,GROWLITHE
- db 15,GROWLITHE
- db 18,GROWLITHE
-
- db $00
-
-Route7Mons: ; d297 (3:5297)
- db $0F
- db 19,PIDGEY
- db 19,ODDISH
- db 17,MEOWTH
- db 22,ODDISH
- db 22,PIDGEY
- db 18,MEOWTH
- db 18,GROWLITHE
- db 20,GROWLITHE
- db 19,MEOWTH
- db 20,MEOWTH
-
- db $00
-
-TowerMons1: ; d2ad (3:52ad)
- db $00
-
- db $00
-
-TowerMons2: ; d2af (3:52af)
- db $00
-
- db $00
-
-TowerMons3: ; d2b1 (3:52b1)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 24,GASTLY
- db 20,CUBONE
- db 22,CUBONE
- db 25,HAUNTER
-
- db $00
-
-TowerMons4: ; d2c7 (3:52c7)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,HAUNTER
- db 20,CUBONE
- db 22,CUBONE
- db 24,GASTLY
-
- db $00
-
-TowerMons5: ; d2dd (3:52dd)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,HAUNTER
- db 20,CUBONE
- db 22,CUBONE
- db 24,GASTLY
-
- db $00
-
-TowerMons6: ; d2f3 (3:52f3)
- db $0F
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 20,GASTLY
- db 19,GASTLY
- db 26,HAUNTER
- db 22,CUBONE
- db 24,CUBONE
- db 28,HAUNTER
-
- db $00
-
-TowerMons7: ; d309 (3:5309)
- db $0F
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 20,GASTLY
- db 28,HAUNTER
- db 22,CUBONE
- db 24,CUBONE
- db 28,HAUNTER
- db 30,HAUNTER
-
- db $00
-
-Route13Mons: ; d31f (3:531f)
- db $14
- db 24,ODDISH
- db 25,PIDGEY
- db 27,PIDGEY
- db 24,VENONAT
- db 22,ODDISH
- db 26,VENONAT
- db 26,ODDISH
- db 25,DITTO
- db 28,GLOOM
- db 30,GLOOM
-
- db $00
-
-Route14Mons: ; d335 (3:5335)
- db $0F
- db 24,ODDISH
- db 26,PIDGEY
- db 23,DITTO
- db 24,VENONAT
- db 22,ODDISH
- db 26,VENONAT
- db 26,ODDISH
- db 30,GLOOM
- db 28,PIDGEOTTO
- db 30,PIDGEOTTO
-
- db $00
-
-Route15Mons: ; d34b (3:534b)
- db $0F
- db 24,ODDISH
- db 26,DITTO
- db 23,PIDGEY
- db 26,VENONAT
- db 22,ODDISH
- db 28,VENONAT
- db 26,ODDISH
- db 30,GLOOM
- db 28,PIDGEOTTO
- db 30,PIDGEOTTO
-
- db $00
-
-Route16Mons: ; d361 (3:5361)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 18,RATTATA
- db 20,DODUO
- db 20,RATTATA
- db 18,DODUO
- db 22,DODUO
- db 22,RATTATA
- db 23,RATICATE
- db 25,RATICATE
-
- db $00
-
-Route17Mons: ; d377 (3:5377)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 25,RATICATE
- db 24,DODUO
- db 27,RATICATE
- db 26,DODUO
- db 28,DODUO
- db 29,RATICATE
- db 25,FEAROW
- db 27,FEAROW
-
- db $00
-
-Route18Mons: ; d38d (3:538d)
- db $19
- db 20,SPEAROW
- db 22,SPEAROW
- db 25,RATICATE
- db 24,DODUO
- db 25,FEAROW
- db 26,DODUO
- db 28,DODUO
- db 29,RATICATE
- db 27,FEAROW
- db 29,FEAROW
-
- db $00
-
-ZoneMonsCenter: ; d3a3 (3:53a3)
- db $1E
- db 22,NIDORAN_M
- db 25,RHYHORN
- db 22,VENONAT
- db 24,EXEGGCUTE
- db 31,NIDORINO
- db 25,EXEGGCUTE
- db 31,NIDORINA
- db 30,PARASECT
- db 23,SCYTHER
- db 23,CHANSEY
-
- db $00
-
-ZoneMons1: ; d3b9 (3:53b9)
- db $1E
- db 24,NIDORAN_M
- db 26,DODUO
- db 22,PARAS
- db 25,EXEGGCUTE
- db 33,NIDORINO
- db 23,EXEGGCUTE
- db 24,NIDORAN_F
- db 25,PARASECT
- db 25,LICKITUNG
- db 28,SCYTHER
-
- db $00
-
-ZoneMons2: ; d3cf (3:53cf)
- db $1E
- db 22,NIDORAN_M
- db 26,RHYHORN
- db 23,PARAS
- db 25,EXEGGCUTE
- db 30,NIDORINO
- db 27,EXEGGCUTE
- db 30,NIDORINA
- db 32,VENOMOTH
- db 26,CHANSEY
- db 28,PINSIR
-
- db $00
-
-ZoneMons3: ; d3e5 (3:53e5)
- db $1E
- db 25,NIDORAN_M
- db 26,DODUO
- db 23,VENONAT
- db 24,EXEGGCUTE
- db 33,NIDORINO
- db 26,EXEGGCUTE
- db 25,NIDORAN_F
- db 31,VENOMOTH
- db 26,PINSIR
- db 28,LICKITUNG
-
- db $00
-
-WaterMons: ; d3fb (3:53fb)
- db $00
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-WaterMons: ; d3fb (3:53fb)
- db $00
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-IslandMons1: ; d411 (3:5411)
- db $0F
- db 30,SEEL
- db 30,HORSEA
- db 30,STARYU
- db 30,KRABBY
- db 28,KRABBY
- db 21,ZUBAT
- db 29,GOLBAT
- db 28,SLOWPOKE
- db 28,STARYU
- db 38,SLOWBRO
-
- db $00
-
-IslandMonsB1: ; d427 (3:5427)
- db $0A
- db 30,SHELLDER
- db 30,KRABBY
- db 32,STARYU
- db 32,KRABBY
- db 28,HORSEA
- db 30,SEEL
- db 30,HORSEA
- db 28,SEEL
- db 38,DEWGONG
- db 37,KINGLER
-
- db $00
-
-IslandMonsB2: ; d43d (3:543d)
- db $0A
- db 30,SEEL
- db 30,HORSEA
- db 32,SEEL
- db 32,HORSEA
- db 28,KRABBY
- db 30,SHELLDER
- db 30,KRABBY
- db 28,STARYU
- db 30,GOLBAT
- db 37,JYNX
-
- db $00
-
-IslandMonsB3: ; d453 (3:5453)
- db $0A
- db 31,HORSEA
- db 31,SEEL
- db 33,HORSEA
- db 33,SEEL
- db 29,KRABBY
- db 31,STARYU
- db 31,KRABBY
- db 29,STARYU
- db 39,KINGLER
- db 37,DEWGONG
-
- db $00
-
-IslandMonsB4: ; d469 (3:5469)
- db $0A
- db 31,KRABBY
- db 31,STARYU
- db 33,KRABBY
- db 33,STARYU
- db 29,HORSEA
- db 31,SEEL
- db 31,HORSEA
- db 29,SEEL
- db 39,JYNX
- db 32,GOLBAT
-
- db $00
-
-MansionMons1: ; d47f (3:547f)
- db $0A
- db 32,GRIMER
- db 30,GRIMER
- db 34,PONYTA
- db 30,PONYTA
- db 34,GROWLITHE
- db 32,PONYTA
- db 30,KOFFING
- db 28,PONYTA
- db 37,MUK
- db 39,WEEZING
-
- db $00
-
-MansionMons2: ; d495 (3:5495)
- db $0A
- db 32,GROWLITHE
- db 34,GRIMER
- db 34,GRIMER
- db 30,PONYTA
- db 30,GRIMER
- db 32,PONYTA
- db 30,KOFFING
- db 28,PONYTA
- db 39,MUK
- db 37,WEEZING
-
- db $00
-
-MansionMons3: ; d4ab (3:54ab)
- db $0A
- db 31,GRIMER
- db 33,GROWLITHE
- db 35,GRIMER
- db 32,PONYTA
- db 34,PONYTA
- db 40,MUK
- db 34,KOFFING
- db 38,MUK
- db 36,PONYTA
- db 42,WEEZING
-
- db $00
-
-MansionMonsB1: ; d4c1 (3:54c1)
- db $0A
- db 33,GRIMER
- db 31,GRIMER
- db 35,GROWLITHE
- db 32,PONYTA
- db 31,GRIMER
- db 40,MUK
- db 34,PONYTA
- db 35,KOFFING
- db 38,MUK
- db 42,WEEZING
-
- db $00
-
-Route21Mons: ; d4d7 (3:54d7)
- db $19
- db 21,RATTATA
- db 23,PIDGEY
- db 30,RATICATE
- db 23,RATTATA
- db 21,PIDGEY
- db 30,PIDGEOTTO
- db 32,PIDGEOTTO
- db 28,TANGELA
- db 30,TANGELA
- db 32,TANGELA
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-DungeonMons1: ; d501 (3:5501)
- db $0A
- db 46,GOLBAT
- db 46,HYPNO
- db 46,MAGNETON
- db 49,RAPIDASH
- db 49,VENOMOTH
- db 52,SANDSLASH
- db 49,KADABRA
- db 52,PARASECT
- db 53,RAICHU
- db 53,DITTO
-
- db $00
-
-DungeonMons2: ; d517 (3:5517)
- db $0F
- db 51,DODRIO
- db 51,VENOMOTH
- db 51,KADABRA
- db 52,RHYDON
- db 52,RATICATE
- db 52,ELECTRODE
- db 56,CHANSEY
- db 54,WIGGLYTUFF
- db 55,DITTO
- db 60,DITTO
-
- db $00
-
-DungeonMonsB1: ; d52d (3:552d)
- db $19
- db 55,RHYDON
- db 55,MAROWAK
- db 55,ELECTRODE
- db 64,CLEFAIRY
- db 64,PARASECT
- db 64,RAICHU
- db 57,SANDSLASH
- db 65,DITTO
- db 63,DITTO
- db 67,DITTO
-
- db $00
-
-PowerPlantMons: ; d543 (3:5543)
- db $0A
- db 21,VOLTORB
- db 21,MAGNEMITE
- db 20,PIKACHU
- db 24,PIKACHU
- db 23,MAGNEMITE
- db 23,VOLTORB
- db 32,MAGNETON
- db 35,MAGNETON
- db 33,RAICHU
- db 36,RAICHU
-
- db $00
-
-Route23Mons: ; d559 (3:5559)
- db $0A
- db 26,SANDSHREW
- db 33,DITTO
- db 26,SPEAROW
- db 38,FEAROW
- db 38,DITTO
- db 38,FEAROW
- db 41,SANDSLASH
- db 43,DITTO
- db 41,FEAROW
- db 43,FEAROW
-
- db $00
-
-PlateauMons2: ; d56f (3:556f)
- db $0A
- db 22,MACHOP
- db 24,GEODUDE
- db 26,ZUBAT
- db 36,ONIX
- db 39,ONIX
- db 42,ONIX
- db 41,MACHOKE
- db 40,GOLBAT
- db 40,MAROWAK
- db 43,GRAVELER
-
- db $00
-
-PlateauMons3: ; d585 (3:5585)
- db $0F
- db 24,MACHOP
- db 26,GEODUDE
- db 22,ZUBAT
- db 42,ONIX
- db 40,VENOMOTH
- db 45,ONIX
- db 43,GRAVELER
- db 41,GOLBAT
- db 42,MACHOKE
- db 45,MACHOKE
-
- db $00
-
-PlateauMons1: ; d59b (3:559b)
- db $0F
- db 24,MACHOP
- db 26,GEODUDE
- db 22,ZUBAT
- db 36,ONIX
- db 39,ONIX
- db 42,ONIX
- db 41,GRAVELER
- db 41,GOLBAT
- db 42,MACHOKE
- db 43,MAROWAK
-
- db $00
-
-CaveMons: ; d5b1 (3:55b1)
- db $14
- db 18,DIGLETT
- db 19,DIGLETT
- db 17,DIGLETT
- db 20,DIGLETT
- db 16,DIGLETT
- db 15,DIGLETT
- db 21,DIGLETT
- db 22,DIGLETT
- db 29,DUGTRIO
- db 31,DUGTRIO
-
- db $00
-
-ENDC
-IF _YELLOW
-NoMons: ; d0dd (3:50dd)
- db $00
-
- db $00
-
-Route1Mons: ; d0df (3:50df)
- db $19
- db 3,PIDGEY
- db 4,PIDGEY
- db 2,RATTATA
- db 3,RATTATA
- db 2,PIDGEY
- db 3,PIDGEY
- db 5,PIDGEY
- db 4,RATTATA
- db 6,PIDGEY
- db 7,PIDGEY
-
- db $00
-
-Route2Mons: ; d0f5 (3:50f5)
- db $19
- db 3,RATTATA
- db 3,PIDGEY
- db 4,RATTATA
- db 4,NIDORAN_M
- db 4,NIDORAN_F
- db 5,PIDGEY
- db 6,NIDORAN_M
- db 6,NIDORAN_F
- db 7,PIDGEY
- db 7,PIDGEY
-
- db $00
-
-Route22Mons: ; d10b (3:510b)
- db $19
- db 2,NIDORAN_M
- db 2,NIDORAN_F
- db 3,MANKEY
- db 3,RATTATA
- db 4,NIDORAN_M
- db 4,NIDORAN_F
- db 5,MANKEY
- db 2,SPEAROW
- db 4,SPEAROW
- db 6,SPEAROW
-
- db $00
-
-ForestMons: ; d121 (3:5121)
- db $19
- db 3,CATERPIE
- db 4,METAPOD
- db 4,CATERPIE
- db 5,CATERPIE
- db 4,PIDGEY
- db 6,PIDGEY
- db 6,CATERPIE
- db 6,METAPOD
- db 8,PIDGEY
- db 9,PIDGEOTTO
-
- db $00
-
-Route3Mons: ; d137 (3:5137)
- db $14
- db 8,SPEAROW
- db 9,SPEAROW
- db 9,MANKEY
- db 10,SPEAROW
- db 8,SANDSHREW
- db 10,RATTATA
- db 10,SANDSHREW
- db 12,RATTATA
- db 11,SPEAROW
- db 12,SPEAROW
-
- db $00
-
-MoonMons1: ; d14d (3:514d)
- db $0A
- db 8,ZUBAT
- db 9,ZUBAT
- db 10,GEODUDE
- db 6,ZUBAT
- db 7,ZUBAT
- db 10,ZUBAT
- db 10,GEODUDE
- db 11,ZUBAT
- db 12,SANDSHREW
- db 11,CLEFAIRY
-
- db $00
-
-MoonMonsB1: ; d163 (3:5163)
- db $0A
- db 8,ZUBAT
- db 9,ZUBAT
- db 10,ZUBAT
- db 10,GEODUDE
- db 11,GEODUDE
- db 11,ZUBAT
- db 9,PARAS
- db 11,PARAS
- db 10,CLEFAIRY
- db 12,CLEFAIRY
-
- db $00
-
-MoonMonsB2: ; d179 (3:5179)
- db $0A
- db 10,ZUBAT
- db 11,GEODUDE
- db 13,PARAS
- db 11,ZUBAT
- db 11,ZUBAT
- db 12,ZUBAT
- db 13,ZUBAT
- db 9,CLEFAIRY
- db 11,CLEFAIRY
- db 13,CLEFAIRY
-
- db $00
-
-Route4Mons: ; d18f (3:518f)
- db $14
- db 8,SPEAROW
- db 9,SPEAROW
- db 9,MANKEY
- db 10,SPEAROW
- db 8,SANDSHREW
- db 10,RATTATA
- db 10,SANDSHREW
- db 12,RATTATA
- db 11,SPEAROW
- db 12,SPEAROW
-
- db $00
-
-Route24Mons: ; d1a5 (3:51a5)
- db $19
- db 12,ODDISH
- db 12,BELLSPROUT
- db 13,PIDGEY
- db 14,ODDISH
- db 14,BELLSPROUT
- db 15,PIDGEY
- db 13,VENONAT
- db 16,VENONAT
- db 17,PIDGEY
- db 17,PIDGEOTTO
-
- db $00
-
-Route25Mons: ; d1bb (3:51bb)
- db $0F
- db 12,ODDISH
- db 12,BELLSPROUT
- db 13,PIDGEY
- db 14,ODDISH
- db 14,BELLSPROUT
- db 15,PIDGEY
- db 13,VENONAT
- db 16,VENONAT
- db 17,PIDGEY
- db 17,PIDGEOTTO
-
- db $00
-
-Route9Mons: ; d1d1 (3:51d1)
- db $0F
- db 16,NIDORAN_M
- db 16,NIDORAN_F
- db 18,RATTATA
- db 18,NIDORAN_M
- db 18,NIDORAN_F
- db 17,SPEAROW
- db 18,NIDORINO
- db 18,NIDORINA
- db 20,RATICATE
- db 19,FEAROW
-
- db $00
-
-Route5Mons: ; d1e7 (3:51e7)
- db $0F
- db 15,PIDGEY
- db 14,RATTATA
- db 7,ABRA
- db 16,PIDGEY
- db 16,RATTATA
- db 17,PIDGEY
- db 17,PIDGEOTTO
- db 3,JIGGLYPUFF
- db 5,JIGGLYPUFF
- db 7,JIGGLYPUFF
-
- db $00
-
-Route6Mons: ; d1fd (3:51fd)
- db $0F
- db 15,PIDGEY
- db 14,RATTATA
- db 7,ABRA
- db 16,PIDGEY
- db 16,RATTATA
- db 17,PIDGEY
- db 17,PIDGEOTTO
- db 3,JIGGLYPUFF
- db 5,JIGGLYPUFF
- db 7,JIGGLYPUFF
-
- db $03
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,PSYDUCK
- db 15,GOLDUCK
- db 20,GOLDUCK
-
-Route11Mons: ; d213 (3:5213)
- db $0F
- db 16,PIDGEY
- db 15,RATTATA
- db 18,PIDGEY
- db 15,DROWZEE
- db 17,RATTATA
- db 17,DROWZEE
- db 18,PIDGEOTTO
- db 20,PIDGEOTTO
- db 19,DROWZEE
- db 17,RATICATE
-
- db $00
-
-TunnelMonsB1: ; d229 (3:5229)
- db $0F
- db 15,ZUBAT
- db 16,GEODUDE
- db 17,ZUBAT
- db 19,ZUBAT
- db 18,GEODUDE
- db 20,GEODUDE
- db 21,ZUBAT
- db 17,MACHOP
- db 19,MACHOP
- db 21,MACHOP
-
- db $00
-
-TunnelMonsB2: ; d23f (3:523f)
- db $0F
- db 20,ZUBAT
- db 17,GEODUDE
- db 18,MACHOP
- db 21,ZUBAT
- db 22,ZUBAT
- db 21,GEODUDE
- db 20,MACHOP
- db 14,ONIX
- db 18,ONIX
- db 22,ONIX
-
- db $00
-
-Route10Mons: ; d255 (3:5255)
- db $0F
- db 16,MAGNEMITE
- db 18,RATTATA
- db 18,MAGNEMITE
- db 20,MAGNEMITE
- db 17,NIDORAN_M
- db 17,NIDORAN_F
- db 22,MAGNEMITE
- db 20,RATICATE
- db 16,MACHOP
- db 18,MACHOP
-
- db $00
-
-Route12Mons: ; d26b (3:526b)
- db $0F
- db 25,ODDISH
- db 25,BELLSPROUT
- db 28,PIDGEY
- db 28,PIDGEOTTO
- db 27,ODDISH
- db 27,BELLSPROUT
- db 29,GLOOM
- db 29,WEEPINBELL
- db 26,FARFETCH_D
- db 31,FARFETCH_D
-
- db $03
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWBRO
- db 20,SLOWBRO
-
-Route8Mons: ; d281 (3:5281)
- db $0F
- db 20,PIDGEY
- db 22,PIDGEY
- db 20,RATTATA
- db 15,ABRA
- db 19,ABRA
- db 24,PIDGEOTTO
- db 19,JIGGLYPUFF
- db 24,JIGGLYPUFF
- db 20,KADABRA
- db 27,KADABRA
-
- db $00
-
-Route7Mons: ; d297 (3:5297)
- db $0F
- db 20,PIDGEY
- db 22,PIDGEY
- db 20,RATTATA
- db 15,ABRA
- db 19,ABRA
- db 24,PIDGEOTTO
- db 26,ABRA
- db 19,JIGGLYPUFF
- db 24,JIGGLYPUFF
- db 24,JIGGLYPUFF
-
- db $00
-
-TowerMons1: ; d2ad (3:52ad)
- db $00
-
- db $00
-
-TowerMons2: ; d2af (3:52af)
- db $00
-
- db $00
-
-TowerMons3: ; d2b1 (3:52b1)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,GASTLY
- db 20,HAUNTER
- db 25,HAUNTER
-
- db $00
-
-TowerMons4: ; d2c7 (3:52c7)
- db $0A
- db 20,GASTLY
- db 21,GASTLY
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 19,GASTLY
- db 18,GASTLY
- db 25,GASTLY
- db 20,HAUNTER
- db 25,HAUNTER
-
- db $00
-
-TowerMons5: ; d2dd (3:52dd)
- db $0F
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 25,GASTLY
- db 26,GASTLY
- db 21,GASTLY
- db 20,CUBONE
- db 27,GASTLY
- db 22,HAUNTER
- db 27,HAUNTER
-
- db $00
-
-TowerMons6: ; d2f3 (3:52f3)
- db $0F
- db 22,GASTLY
- db 23,GASTLY
- db 24,GASTLY
- db 25,GASTLY
- db 26,GASTLY
- db 21,GASTLY
- db 22,CUBONE
- db 27,GASTLY
- db 22,HAUNTER
- db 27,HAUNTER
-
- db $00
-
-TowerMons7: ; d309 (3:5309)
- db $14
- db 24,GASTLY
- db 25,GASTLY
- db 26,GASTLY
- db 27,GASTLY
- db 28,GASTLY
- db 23,GASTLY
- db 24,CUBONE
- db 29,GASTLY
- db 24,HAUNTER
- db 29,HAUNTER
-
- db $00
-
-Route13Mons: ; d31f (3:531f)
- db $0F
- db 25,ODDISH
- db 25,BELLSPROUT
- db 28,PIDGEOTTO
- db 28,PIDGEY
- db 27,ODDISH
- db 27,BELLSPROUT
- db 29,GLOOM
- db 29,WEEPINBELL
- db 26,FARFETCH_D
- db 31,FARFETCH_D
-
- db $03
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWPOKE
- db 15,SLOWBRO
- db 20,SLOWBRO
-
-Route14Mons: ; d335 (3:5335)
- db $0F
- db 26,ODDISH
- db 26,BELLSPROUT
- db 24,VENONAT
- db 30,PIDGEOTTO
- db 28,ODDISH
- db 28,BELLSPROUT
- db 30,GLOOM
- db 30,WEEPINBELL
- db 27,VENONAT
- db 30,VENOMOTH
-
- db $00
-
-Route15Mons: ; d34b (3:534b)
- db $0F
- db 26,ODDISH
- db 26,BELLSPROUT
- db 24,VENONAT
- db 32,PIDGEOTTO
- db 28,ODDISH
- db 28,BELLSPROUT
- db 30,GLOOM
- db 30,WEEPINBELL
- db 27,VENONAT
- db 30,VENOMOTH
-
- db $00
-
-Route16Mons: ; d361 (3:5361)
- db $19
- db 22,SPEAROW
- db 22,DODUO
- db 23,RATTATA
- db 24,DODUO
- db 24,RATTATA
- db 26,DODUO
- db 23,SPEAROW
- db 24,FEAROW
- db 25,RATICATE
- db 26,RATICATE
-
- db $00
-
-Route17Mons: ; d377 (3:5377)
- db $19
- db 26,DODUO
- db 27,FEAROW
- db 27,DODUO
- db 28,DODUO
- db 28,PONYTA
- db 30,PONYTA
- db 29,FEAROW
- db 28,DODUO
- db 32,PONYTA
- db 29,DODRIO
-
- db $00
-
-Route18Mons: ; d38d (3:538d)
- db $19
- db 22,SPEAROW
- db 22,DODUO
- db 23,RATTATA
- db 24,DODUO
- db 24,RATTATA
- db 26,DODUO
- db 23,SPEAROW
- db 24,FEAROW
- db 25,RATICATE
- db 26,RATICATE
-
- db $00
-
-ZoneMonsCenter: ; d3a3 (3:53a3)
- db $1E
- db 14,NIDORAN_M
- db 36,NIDORAN_F
- db 24,EXEGGCUTE
- db 20,RHYHORN
- db 23,NIDORINO
- db 27,PARASECT
- db 27,PARAS
- db 32,PARASECT
- db 22,TANGELA
- db 7,CHANSEY
-
- db $00
-
-ZoneMons1: ; d3b9 (3:53b9)
- db $1E
- db 21,NIDORAN_M
- db 29,NIDORAN_F
- db 22,EXEGGCUTE
- db 21,TAUROS
- db 32,NIDORINA
- db 19,CUBONE
- db 26,EXEGGCUTE
- db 24,MAROWAK
- db 21,CHANSEY
- db 15,SCYTHER
-
- db $00
-
-ZoneMons2: ; d3cf (3:53cf)
- db $1E
- db 36,NIDORAN_M
- db 14,NIDORAN_F
- db 20,EXEGGCUTE
- db 25,RHYHORN
- db 23,NIDORINA
- db 28,KANGASKHAN
- db 16,CUBONE
- db 33,KANGASKHAN
- db 25,SCYTHER
- db 15,PINSIR
-
- db $00
-
-ZoneMons3: ; d3e5 (3:53e5)
- db $1E
- db 29,NIDORAN_M
- db 21,NIDORAN_F
- db 22,EXEGGCUTE
- db 21,TAUROS
- db 32,NIDORINO
- db 19,CUBONE
- db 26,EXEGGCUTE
- db 24,MAROWAK
- db 25,PINSIR
- db 27,TANGELA
-
- db $00
-
-WaterMons: ; d3fb (3:53fb)
- db $00
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-WaterMons: ; d3fb (3:53fb)
- db $00
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-IslandMons1: ; d411 (3:5411)
- db $0F
- db 18,ZUBAT
- db 25,KRABBY
- db 27,KRABBY
- db 27,ZUBAT
- db 36,ZUBAT
- db 28,SLOWPOKE
- db 30,SLOWPOKE
- db 9,ZUBAT
- db 27,GOLBAT
- db 36,GOLBAT
-
- db $00
-
-IslandMonsB1: ; d427 (3:5427)
- db $0A
- db 27,ZUBAT
- db 26,KRABBY
- db 36,ZUBAT
- db 28,KRABBY
- db 27,GOLBAT
- db 29,SLOWPOKE
- db 18,ZUBAT
- db 28,KINGLER
- db 22,SEEL
- db 26,SEEL
-
- db $00
-
-IslandMonsB2: ; d43d (3:543d)
- db $0A
- db 27,ZUBAT
- db 27,KRABBY
- db 36,ZUBAT
- db 27,GOLBAT
- db 28,KINGLER
- db 24,SEEL
- db 29,KRABBY
- db 36,GOLBAT
- db 31,SLOWPOKE
- db 31,SLOWBRO
-
- db $00
-
-IslandMonsB3: ; d453 (3:5453)
- db $0A
- db 27,GOLBAT
- db 36,ZUBAT
- db 29,KRABBY
- db 27,ZUBAT
- db 30,KINGLER
- db 26,SEEL
- db 31,KRABBY
- db 30,SEEL
- db 28,DEWGONG
- db 32,DEWGONG
-
- db $05
- db 25,TENTACOOL
- db 30,TENTACOOL
- db 20,TENTACOOL
- db 30,STARYU
- db 35,TENTACOOL
- db 30,STARYU
- db 40,TENTACOOL
- db 30,STARYU
- db 30,STARYU
- db 30,STARYU
-
-IslandMonsB4: ; d469 (3:5469)
- db $0A
- db 36,GOLBAT
- db 36,ZUBAT
- db 30,KRABBY
- db 32,KINGLER
- db 28,SEEL
- db 32,SEEL
- db 27,GOLBAT
- db 45,ZUBAT
- db 30,DEWGONG
- db 34,DEWGONG
-
- db $05
- db 25,TENTACOOL
- db 30,TENTACOOL
- db 20,TENTACOOL
- db 30,STARYU
- db 35,TENTACOOL
- db 30,STARYU
- db 40,TENTACOOL
- db 30,STARYU
- db 30,STARYU
- db 30,STARYU
-
-MansionMons1: ; d47f (3:547f)
- db $0A
- db 34,RATTATA
- db 34,RATICATE
- db 23,GRIMER
- db 26,GROWLITHE
- db 37,RATTATA
- db 37,RATICATE
- db 30,GROWLITHE
- db 26,GRIMER
- db 34,GROWLITHE
- db 38,GROWLITHE
-
- db $00
-
-MansionMons2: ; d495 (3:5495)
- db $0A
- db 37,RATTATA
- db 37,RATICATE
- db 26,GRIMER
- db 29,GRIMER
- db 40,RATTATA
- db 40,RATICATE
- db 32,GRIMER
- db 35,GRIMER
- db 35,MUK
- db 38,MUK
-
- db $00
-
-MansionMons3: ; d4ab (3:54ab)
- db $0A
- db 40,RATTATA
- db 40,RATICATE
- db 32,GRIMER
- db 35,GRIMER
- db 43,RATTATA
- db 43,RATICATE
- db 38,GRIMER
- db 38,GRIMER
- db 38,MUK
- db 41,MUK
-
- db $00
-
-MansionMonsB1: ; d4c1 (3:54c1)
- db $0A
- db 35,GRIMER
- db 38,GRIMER
- db 37,RATICATE
- db 40,RATICATE
- db 41,MUK
- db 43,RATICATE
- db 24,DITTO
- db 46,RATICATE
- db 18,DITTO
- db 12,DITTO
-
- db $00
-
-Route21Mons: ; d4d7 (3:54d7)
- db $19
- db 15,PIDGEY
- db 13,RATTATA
- db 13,PIDGEY
- db 11,PIDGEY
- db 17,PIDGEY
- db 15,RATTATA
- db 15,RATICATE
- db 17,PIDGEOTTO
- db 19,PIDGEOTTO
- db 15,PIDGEOTTO
-
- db $05
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 5,TENTACOOL
- db 10,TENTACOOL
- db 15,TENTACOOL
- db 20,TENTACOOL
- db 30,TENTACOOL
- db 35,TENTACOOL
- db 40,TENTACOOL
-
-DungeonMons1: ; d501 (3:5501)
- db $0A
- db 50,GOLBAT
- db 55,GOLBAT
- db 45,GRAVELER
- db 55,GLOOM
- db 55,WEEPINBELL
- db 52,SANDSLASH
- db 54,VENOMOTH
- db 54,PARASECT
- db 55,DITTO
- db 60,DITTO
-
- db $00
-
-DungeonMons2: ; d517 (3:5517)
- db $0F
- db 52,GOLBAT
- db 57,GOLBAT
- db 50,GRAVELER
- db 56,SANDSLASH
- db 50,RHYHORN
- db 60,DITTO
- db 58,GLOOM
- db 58,WEEPINBELL
- db 60,RHYDON
- db 58,RHYDON
-
- db $00
-
-DungeonMonsB1: ; d52d (3:552d)
- db $19
- db 54,GOLBAT
- db 59,GOLBAT
- db 55,GRAVELER
- db 52,RHYHORN
- db 62,RHYDON
- db 60,DITTO
- db 56,CHANSEY
- db 65,DITTO
- db 55,LICKITUNG
- db 50,LICKITUNG
-
- db $00
-
-PowerPlantMons: ; d543 (3:5543)
- db $0A
- db 30,MAGNEMITE
- db 35,MAGNEMITE
- db 33,MAGNETON
- db 33,VOLTORB
- db 37,VOLTORB
- db 33,GRIMER
- db 37,GRIMER
- db 38,MAGNETON
- db 33,MUK
- db 37,MUK
-
- db $00
-
-Route23Mons: ; d559 (3:5559)
- db $0A
- db 41,NIDORINO
- db 41,NIDORINA
- db 36,MANKEY
- db 44,NIDORINO
- db 44,NIDORINA
- db 40,FEAROW
- db 41,MANKEY
- db 45,FEAROW
- db 41,PRIMEAPE
- db 46,PRIMEAPE
-
- db $00
-
-PlateauMons2: ; d56f (3:556f)
- db $0A
- db 31,GEODUDE
- db 36,GEODUDE
- db 41,GEODUDE
- db 44,ZUBAT
- db 39,GOLBAT
- db 44,GRAVELER
- db 45,ONIX
- db 47,ONIX
- db 39,MACHOKE
- db 42,MACHOKE
-
- db $00
-
-PlateauMons3: ; d585 (3:5585)
- db $0F
- db 36,GEODUDE
- db 44,GOLBAT
- db 41,GEODUDE
- db 49,ONIX
- db 46,GEODUDE
- db 41,GRAVELER
- db 42,MACHOKE
- db 45,MACHOKE
- db 47,GRAVELER
- db 47,GRAVELER
-
- db $00
-
-PlateauMons1: ; d59b (3:559b)
- db $0F
- db 26,GEODUDE
- db 31,GEODUDE
- db 36,GEODUDE
- db 39,ZUBAT
- db 44,ZUBAT
- db 41,GEODUDE
- db 43,ONIX
- db 45,ONIX
- db 41,GRAVELER
- db 47,GRAVELER
-
- db $00
-
-CaveMons: ; d5b1 (3:55b1)
- db $14
- db 18,DIGLETT
- db 19,DIGLETT
- db 17,DIGLETT
- db 20,DIGLETT
- db 16,DIGLETT
- db 15,DIGLETT
- db 21,DIGLETT
- db 22,DIGLETT
- db 29,DUGTRIO
- db 31,DUGTRIO
-
- db $00
-
-ENDC
+INCLUDE "data/wild_mons.asm"
UseItem_: ; d5c7 (3:55c7)
ld a,1
@@ -24326,7 +19085,7 @@ ItemUseBall: ; d687 (3:5687)
call LoadScreenTilesFromBuffer1 ;restore screenBuffer from Backup
ld hl,ItemUseText00
call PrintText
- callab Func_3d83a
+ callab IsGhostBattle
ld b,$10
jp z,.next12
ld a,[W_BATTLETYPE]
@@ -25933,7 +20692,7 @@ PlayedFluteHadEffectText: ; e215 (3:6215)
.musicWaitLoop ; wait for music to finish playing
ld a,[$c028]
cp a,$b8
- jr z,.musicWaitLoop
+ jr z,.musicWaitLoop
call Func_2307 ; start playing normal music again
.done
jp TextScriptEnd ; end text
@@ -25982,9 +20741,7 @@ GoodRodCode: ; e259 (3:6259)
xor 1
jr RodResponse
-GoodRodMons: ; e27f (3:627f)
- db 10,GOLDEEN
- db 10,POLIWAG
+INCLUDE "data/good_rod.asm"
SuperRodCode: ; e283 (3:6283)
call FishingInit
@@ -26364,7 +21121,7 @@ ItemUseTMHM: ; e479 (3:6479)
call PrintText
jr .chooseMon
.checkIfAlreadyLearnedMove
- callab Func_2fe18 ; check if the pokemon already knows the move
+ callab CheckIfMoveIsKnown ; check if the pokemon already knows the move
jr c,.chooseMon
ld a,$1b
call Predef ; teach move
@@ -26782,18 +21539,7 @@ IsKeyItem_: ; e764 (3:6764)
ld [$d124],a
ret
-KeyItemBitfield: ; e799 (3:6799)
- db %11110000
- db %00000001
- db %11110000
- db %01001111
- db %00000000
- db %10011111
- db %00000000
- db %11000000
- db %11110000
- db %00111011
- db %00000000
+INCLUDE "data/key_items.asm"
Func_e7a4: ; e7a4 (3:67a4)
ld de, W_NUMINBOX ; $da80
@@ -27039,107 +21785,7 @@ ReadSuperRodData: ; e8ea (3:68ea)
ld e, $1 ; $1 if there's a bite
ret
-; super rod data
-; format: map, pointer to fishing group
-SuperRodData: ; e919 (3:6919)
- dbw PALLET_TOWN, FishingGroup1
- dbw VIRIDIAN_CITY, FishingGroup1
- dbw CERULEAN_CITY, FishingGroup3
- dbw VERMILION_CITY, FishingGroup4
- dbw CELADON_CITY, FishingGroup5
- dbw FUCHSIA_CITY, FishingGroup10
- dbw CINNABAR_ISLAND, FishingGroup8
- dbw ROUTE_4, FishingGroup3
- dbw ROUTE_6, FishingGroup4
- dbw ROUTE_10, FishingGroup5
- dbw ROUTE_11, FishingGroup4
- dbw ROUTE_12, FishingGroup7
- dbw ROUTE_13, FishingGroup7
- dbw ROUTE_17, FishingGroup7
- dbw ROUTE_18, FishingGroup7
- dbw ROUTE_19, FishingGroup8
- dbw ROUTE_20, FishingGroup8
- dbw ROUTE_21, FishingGroup8
- dbw ROUTE_22, FishingGroup2
- dbw ROUTE_23, FishingGroup9
- dbw ROUTE_24, FishingGroup3
- dbw ROUTE_25, FishingGroup3
- dbw CERULEAN_GYM, FishingGroup3
- dbw VERMILION_DOCK, FishingGroup4
-;XXX syntax errors on the rest?
- dbw $A1, FishingGroup8 ; SEAFOAM_ISLANDS_4
- dbw $A2, FishingGroup8 ; SEAFOAM_ISLANDS_5
- dbw SAFARI_ZONE_EAST, FishingGroup6
- dbw $DA, FishingGroup6 ; SAFARI_ZONE_NORTH
- dbw SAFARI_ZONE_WEST, FishingGroup6
- dbw $DC, FishingGroup6 ; SAFARI_ZONE_CENTER
- dbw $E2, FishingGroup9 ; UNKNOWN_DUNGEON_2
- dbw $E3, FishingGroup9 ; UNKNOWN_DUNGEON_3
- dbw $E4, FishingGroup9 ; UNKNOWN_DUNGEON_1
- db $FF
-
-; fishing groups
-; number of monsters, followed by level/monster pairs
-FishingGroup1: ; e97d (3:697d)
- db 2
- db 15,TENTACOOL
- db 15,POLIWAG
-
-FishingGroup2: ; e982 (3:6982)
- db 2
- db 15,GOLDEEN
- db 15,POLIWAG
-
-FishingGroup3: ; e987 (3:6987)
- db 3
- db 15,PSYDUCK
- db 15,GOLDEEN
- db 15,KRABBY
-
-FishingGroup4: ; e98e (3:698e)
- db 2
- db 15,KRABBY
- db 15,SHELLDER
-
-FishingGroup5: ; e993 (3:6993)
- db 2
- db 23,POLIWHIRL
- db 15,SLOWPOKE
-
-FishingGroup6: ; e998 (3:6998)
- db 4
- db 15,DRATINI
- db 15,KRABBY
- db 15,PSYDUCK
- db 15,SLOWPOKE
-
-FishingGroup7: ; e9a1 (3:69a1)
- db 4
- db 5,TENTACOOL
- db 15,KRABBY
- db 15,GOLDEEN
- db 15,MAGIKARP
-
-FishingGroup8: ; e9aa (3:69aa)
- db 4
- db 15,STARYU
- db 15,HORSEA
- db 15,SHELLDER
- db 15,GOLDEEN
-
-FishingGroup9: ; e9b3 (3:69b3)
- db 4
- db 23,SLOWBRO
- db 23,SEAKING
- db 23,KINGLER
- db 23,SEADRA
-
-FishingGroup10: ; e9bc (3:69bc)
- db 4
- db 23,SEAKING
- db 15,KRABBY
- db 15,GOLDEEN
- db 15,MAGIKARP
+INCLUDE "data/super_rod.asm"
; reloads map view and processes sprite data
; for items that cause the overworld to be displayed
@@ -27459,11 +22105,11 @@ Func_ef54: ; ef54 (3:6f54)
cp $52 ; grass
jr z, asm_ef82
.asm_ef77
- ld hl, UnnamedText_ef7d ; $6f7d
+ ld hl, NothingToCutText
jp PrintText
-UnnamedText_ef7d: ; ef7d (3:6f7d)
- TX_FAR _UnnamedText_ef7d
+NothingToCutText: ; ef7d (3:6f7d)
+ TX_FAR _NothingToCutText
db "@"
asm_ef82: ; ef82 (3:6f82)
@@ -27487,7 +22133,7 @@ asm_ef82: ; ef82 (3:6f82)
call Delay3
xor a
ld [$ffb0], a
- ld hl, UsedCutText ; $6ff2
+ ld hl, UsedCutText
call PrintText
call LoadScreenTilesFromBuffer2
ld hl, $d730
@@ -27688,15 +22334,15 @@ CutTreeBlockSwaps: ; f100 (3:7100)
; first byte = tileset block containing the cut tree
; second byte = corresponding tileset block after the cut animation happens
db $32, $6D
- db $33, $6C
- db $34, $6F
- db $35, $4C
- db $60, $6E
- db $0B, $0A
- db $3C, $35
+ db $33, $6C
+ db $34, $6F
+ db $35, $4C
+ db $60, $6E
+ db $0B, $0A
+ db $3C, $35
db $3F, $35
- db $3D, $36
- db $FF ; list terminator
+ db $3D, $36
+ db $FF ; list terminator
Func_f113: ; f113 (3:7113)
ld a, [W_CURMAP] ; $d35e
@@ -30187,7 +24833,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3)
cp a,$04
jp z,.printMessage
call ErasePartyMenuCursors
- callba Func_71fb6 ; loads some data to $cf2e
+ callba SendBlkPacket_PartyMenu ; loads some data to $cf2e
FuncCoord 3,0
ld hl,Coord
ld de,W_PARTYMON1
@@ -31430,62 +26076,7 @@ TMToMove: ; 13763 (4:7763)
ld [$d11e], a
ret
-TechnicalMachines: ; 13773 (4:7773)
- db MEGA_PUNCH
- db RAZOR_WIND
- db SWORDS_DANCE
- db WHIRLWIND
- db MEGA_KICK
- db TOXIC
- db HORN_DRILL
- db BODY_SLAM
- db TAKE_DOWN
- db DOUBLE_EDGE
- db BUBBLEBEAM
- db WATER_GUN
- db ICE_BEAM
- db BLIZZARD
- db HYPER_BEAM
- db PAY_DAY
- db SUBMISSION
- db COUNTER
- db SEISMIC_TOSS
- db RAGE
- db MEGA_DRAIN
- db SOLARBEAM
- db DRAGON_RAGE
- db THUNDERBOLT
- db THUNDER
- db EARTHQUAKE
- db FISSURE
- db DIG
- db PSYCHIC_M
- db TELEPORT
- db MIMIC
- db DOUBLE_TEAM
- db REFLECT
- db BIDE
- db METRONOME
- db SELFDESTRUCT
- db EGG_BOMB
- db FIRE_BLAST
- db SWIFT
- db SKULL_BASH
- db SOFTBOILED
- db DREAM_EATER
- db SKY_ATTACK
- db REST
- db THUNDER_WAVE
- db PSYWAVE
- db EXPLOSION
- db ROCK_SLIDE
- db TRI_ATTACK
- db SUBSTITUTE
- db CUT
- db FLY
- db SURF
- db STRENGTH
- db FLASH
+INCLUDE "data/tms.asm"
Func_137aa: ; 137aa (4:77aa)
ld a, [W_ISLINKBATTLE] ; $d12b
@@ -31501,11 +26092,11 @@ Func_137aa: ; 137aa (4:77aa)
callab Func_372d6
ld a, [$cf0b]
cp $1
- ld de, YouWinText ; $7853
+ ld de, YouWinText
jr c, .asm_137de
- ld de, YouLoseText ; $785b
+ ld de, YouLoseText
jr z, .asm_137de
- ld de, DrawText ; $7864
+ ld de, DrawText
.asm_137de
FuncCoord 6, 8 ; $c446
ld hl, Coord
@@ -31527,7 +26118,7 @@ Func_137aa: ; 137aa (4:77aa)
ld c, $3
ld a, $b
call Predef ; indirect jump to Func_f81d (f81d (3:781d))
- ld hl, UnnamedText_1386b ; $786b
+ ld hl, PickUpPayDayMoneyText
call PrintText
.asm_1380a
xor a
@@ -31574,8 +26165,8 @@ YouLoseText: ; 1385b (4:785b)
DrawText: ; 13864 (4:7864)
db " DRAW@"
-UnnamedText_1386b: ; 1386b (4:786b)
- TX_FAR _UnnamedText_1386b
+PickUpPayDayMoneyText: ; 1386b (4:786b)
+ TX_FAR _PickUpPayDayMoneyText
db "@"
Func_13870: ; 13870 (4:7870)
@@ -31674,8 +26265,8 @@ Func_13870: ; 13870 (4:7870)
WildMonEncounterSlotChances: ; 13918 (4:7918)
; There are 10 slots for wild pokemon, and this is the table that defines how common each of
-; those 10 slots is. A random number is generated and then the first byte of each pair in this
-; table is compared against that random number. If the random number is less than or equal
+; those 10 slots is. A random number is generated and then the first byte of each pair in this
+; table is compared against that random number. If the random number is less than or equal
; to the first byte, then that slot is chosen. The second byte is double the slot number.
db $32, $00 ; 51/256 = 19.9% chance of slot 0
db $65, $02 ; 51/256 = 19.9% chance of slot 1
@@ -31999,7 +26590,7 @@ LoadPokedexTilePatterns: ; 17840 (5:7840)
call LoadHpBarAndStatusTilePatterns
ld de,PokedexTileGraphics ; $6488
ld hl,$9600
- ld bc,(BANK(PokedexTileGraphics) << 8) + $12
+ ld bc,(BANK(PokedexTileGraphics) << 8) + $12
call CopyVideoData
ld de,PokeballTileGraphics ; $697e
ld hl,$9720
@@ -32445,559 +27036,9 @@ GetSplitMapSpriteSetID: ; 17a1a (5:7a1a)
ld a,$01
ret
-MapSpriteSets: ; 17a64 (5:7a64)
- db $01 ; PALLET_TOWN
- db $01 ; VIRIDIAN_CITY
- db $02 ; PEWTER_CITY
- db $02 ; CERULEAN_CITY
- db $03 ; LAVENDER_TOWN
- db $04 ; VERMILION_CITY
- db $05 ; CELADON_CITY
- db $0a ; FUCHSIA_CITY
- db $01 ; CINNABAR_ISLAND
- db $06 ; INDIGO_PLATEAU
- db $07 ; SAFFRON_CITY
- db $01 ; unused map ID
- db $01 ; ROUTE_1
- db $f1 ; ROUTE_2
- db $02 ; ROUTE_3
- db $02 ; ROUTE_4
- db $f9 ; ROUTE_5
- db $fa ; ROUTE_6
- db $fb ; ROUTE_7
- db $fc ; ROUTE_8
- db $02 ; ROUTE_9
- db $f2 ; ROUTE_10
- db $f3 ; ROUTE_11
- db $f4 ; ROUTE_12
- db $08 ; ROUTE_13
- db $08 ; ROUTE_14
- db $f5 ; ROUTE_15
- db $f6 ; ROUTE_16
- db $09 ; ROUTE_17
- db $f7 ; ROUTE_18
- db $0a ; ROUTE_19
- db $f8 ; ROUTE_20
- db $01 ; ROUTE_21
- db $01 ; ROUTE_22
- db $06 ; ROUTE_23
- db $02 ; ROUTE_24
- db $02 ; ROUTE_25
-
-; Format:
-; 00: determines whether the map is split East/West or North/South
-; $01 = East/West divide
-; $02 = North/South divide
-; 01: coordinate of dividing line
-; 02: sprite set ID if in the West or North side
-; 03: sprite set ID if in the East or South side
-SplitMapSpriteSets: ; 17a89 (5:7a89)
- db $02,$25,$02,$01 ; $f1
- db $02,$32,$02,$03 ; $f2
- db $01,$39,$04,$08 ; $f3
- db $02,$15,$03,$08 ; $f4
- db $01,$08,$0A,$08 ; $f5
- db $01,$18,$09,$05 ; $f6
- db $01,$22,$09,$0A ; $f7
- db $01,$35,$01,$0A ; $f8
- db $02,$21,$02,$07 ; $f9
- db $02,$02,$07,$04 ; $fa
- db $01,$11,$05,$07 ; $fb
- db $01,$03,$07,$03 ; $fc
-
-SpriteSets: ; 17ab9 (5:7ab9)
-; sprite set $01
- db SPRITE_BLUE
- db SPRITE_BUG_CATCHER
- db SPRITE_GIRL
- db SPRITE_FISHER2
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_GAMBLER
- db SPRITE_SEEL
- db SPRITE_OAK
- db SPRITE_SWIMMER
- db SPRITE_BALL
- db SPRITE_LYING_OLD_MAN
-
-; sprite set $02
- db SPRITE_BUG_CATCHER
- db SPRITE_ROCKET
- db SPRITE_BLACK_HAIR_BOY_2
- db SPRITE_HIKER
- db SPRITE_SLOWBRO
- db SPRITE_BLUE
- db SPRITE_GUARD
- db SPRITE_LASS
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_BALL
- db SPRITE_LYING_OLD_MAN_UNUSED_2
-
-; sprite set $03
- db SPRITE_LITTLE_GIRL
- db SPRITE_GIRL
- db SPRITE_BLACK_HAIR_BOY_2
- db SPRITE_HIKER
- db SPRITE_GAMBLER
- db SPRITE_SLOWBRO
- db SPRITE_LASS
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_GUARD
- db SPRITE_BALL
- db SPRITE_LYING_OLD_MAN_UNUSED_2
-
-; sprite set $04
- db SPRITE_FOULARD_WOMAN
- db SPRITE_BLACK_HAIR_BOY_2
- db SPRITE_BUG_CATCHER
- db SPRITE_GAMBLER
- db SPRITE_SLOWBRO
- db SPRITE_GUARD
- db SPRITE_SAILOR
- db SPRITE_LASS
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_BALL
- db SPRITE_LYING_OLD_MAN_UNUSED_2
-
-; sprite set $05
- db SPRITE_LITTLE_GIRL
- db SPRITE_YOUNG_BOY
- db SPRITE_GIRL
- db SPRITE_FISHER2
- db SPRITE_FAT_BALD_GUY
- db SPRITE_OLD_PERSON
- db SPRITE_SLOWBRO
- db SPRITE_GUARD
- db SPRITE_ROCKET
- db SPRITE_BALL
- db SPRITE_SNORLAX
-
-; sprite set $06
- db SPRITE_BUG_CATCHER
- db SPRITE_GYM_HELPER
- db SPRITE_SLOWBRO
- db SPRITE_BLUE
- db SPRITE_LASS
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_SWIMMER
- db SPRITE_GUARD
- db SPRITE_GAMBLER
- db SPRITE_BALL
- db SPRITE_LYING_OLD_MAN_UNUSED_2
-
-; sprite set $07
- db SPRITE_ROCKET
- db SPRITE_OAK_AIDE
- db SPRITE_LAPRAS_GIVER
- db SPRITE_ERIKA
- db SPRITE_GENTLEMAN
- db SPRITE_BIRD
- db SPRITE_ROCKER
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_SLOWBRO
- db SPRITE_BALL
- db SPRITE_LYING_OLD_MAN_UNUSED_2
-
-; sprite set $08
- db SPRITE_BIKER
- db SPRITE_BLACK_HAIR_BOY_2
- db SPRITE_FAT_BALD_GUY
- db SPRITE_LASS
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_FOULARD_WOMAN
- db SPRITE_FISHER2
- db SPRITE_ROCKER
- db SPRITE_SLOWBRO
- db SPRITE_BALL
- db SPRITE_SNORLAX
-
-; sprite set $09
- db SPRITE_BIKER
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_LAPRAS_GIVER
- db SPRITE_FISHER2
- db SPRITE_ROCKER
- db SPRITE_HIKER
- db SPRITE_GAMBLER
- db SPRITE_FAT_BALD_GUY
- db SPRITE_BLACK_HAIR_BOY_2
- db SPRITE_BALL
- db SPRITE_SNORLAX
-
-; sprite set $0a
- db SPRITE_BIRD
- db SPRITE_BLACK_HAIR_BOY_1
- db SPRITE_CLEFAIRY
- db SPRITE_FISHER2
- db SPRITE_GAMBLER
- db SPRITE_SLOWBRO
- db SPRITE_SEEL
- db SPRITE_SWIMMER
- db SPRITE_BUG_CATCHER
- db SPRITE_BALL
- db SPRITE_OMANYTE
-
-SpriteSheetPointerTable: ; 17b27 (5:7b27)
- ; SPRITE_RED
- dw RedSprite
- db $c0 ; byte count
- db BANK(RedSprite)
-
- ; SPRITE_BLUE
- dw BlueSprite
- db $c0 ; byte count
- db BANK(BlueSprite)
-
- ; SPRITE_OAK
- dw OakSprite
- db $c0 ; byte count
- db BANK(OakSprite)
-
- ; SPRITE_BUG_CATCHER
- dw BugCatcherSprite
- db $c0 ; byte count
- db BANK(BugCatcherSprite)
-
- ; SPRITE_SLOWBRO
- dw SlowbroSprite
- db $c0 ; byte count
- db BANK(SlowbroSprite)
-
- ; SPRITE_LASS
- dw LassSprite
- db $c0 ; byte count
- db BANK(LassSprite)
-
- ; SPRITE_BLACK_HAIR_BOY_1
- dw BlackHairBoy1Sprite
- db $c0 ; byte count
- db BANK(BlackHairBoy1Sprite)
-
- ; SPRITE_LITTLE_GIRL
- dw LittleGirlSprite
- db $c0 ; byte count
- db BANK(LittleGirlSprite)
-
- ; SPRITE_BIRD
- dw BirdSprite
- db $c0 ; byte count
- db BANK(BirdSprite)
-
- ; SPRITE_FAT_BALD_GUY
- dw FatBaldGuySprite
- db $c0 ; byte count
- db BANK(FatBaldGuySprite)
-
- ; SPRITE_GAMBLER
- dw GamblerSprite
- db $c0 ; byte count
- db BANK(GamblerSprite)
-
- ; SPRITE_BLACK_HAIR_BOY_2
- dw BlackHairBoy2Sprite
- db $c0 ; byte count
- db BANK(BlackHairBoy2Sprite)
-
- ; SPRITE_GIRL
- dw GirlSprite
- db $c0 ; byte count
- db BANK(GirlSprite)
-
- ; SPRITE_HIKER
- dw HikerSprite
- db $c0 ; byte count
- db BANK(HikerSprite)
-
- ; SPRITE_FOULARD_WOMAN
- dw FoulardWomanSprite
- db $c0 ; byte count
- db BANK(FoulardWomanSprite)
-
- ; SPRITE_GENTLEMAN
- dw GentlemanSprite
- db $c0 ; byte count
- db BANK(GentlemanSprite)
-
- ; SPRITE_DAISY
- dw DaisySprite
- db $c0 ; byte count
- db BANK(DaisySprite)
-
- ; SPRITE_BIKER
- dw BikerSprite
- db $c0 ; byte count
- db BANK(BikerSprite)
-
- ; SPRITE_SAILOR
- dw SailorSprite
- db $c0 ; byte count
- db BANK(SailorSprite)
-
- ; SPRITE_COOK
- dw CookSprite
- db $c0 ; byte count
- db BANK(CookSprite)
-
- ; SPRITE_BIKE_SHOP_GUY
- dw BikeShopGuySprite
- db $c0 ; byte count
- db BANK(BikeShopGuySprite)
-
- ; SPRITE_MR_FUJI
- dw MrFujiSprite
- db $c0 ; byte count
- db BANK(MrFujiSprite)
-
- ; SPRITE_GIOVANNI
- dw GiovanniSprite
- db $c0 ; byte count
- db BANK(GiovanniSprite)
-
- ; SPRITE_ROCKET
- dw RocketSprite
- db $c0 ; byte count
- db BANK(RocketSprite)
-
- ; SPRITE_MEDIUM
- dw MediumSprite
- db $c0 ; byte count
- db BANK(MediumSprite)
-
- ; SPRITE_WAITER
- dw WaiterSprite
- db $c0 ; byte count
- db BANK(WaiterSprite)
-
- ; SPRITE_ERIKA
- dw ErikaSprite
- db $c0 ; byte count
- db BANK(ErikaSprite)
-
- ; SPRITE_MOM_GEISHA
- dw MomGeishaSprite
- db $c0 ; byte count
- db BANK(MomGeishaSprite)
-
- ; SPRITE_BRUNETTE_GIRL
- dw BrunetteGirlSprite
- db $c0 ; byte count
- db BANK(BrunetteGirlSprite)
-
- ; SPRITE_LANCE
- dw LanceSprite
- db $c0 ; byte count
- db BANK(LanceSprite)
-
- ; SPRITE_OAK_SCIENTIST_AIDE
- dw OakAideSprite
- db $c0 ; byte count
- db BANK(OakAideSprite)
-
- ; SPRITE_OAK_AIDE
- dw OakAideSprite
- db $c0 ; byte count
- db BANK(OakAideSprite)
-
- ; SPRITE_ROCKER
- dw RockerSprite
- db $c0 ; byte count
- db BANK(RockerSprite)
-
- ; SPRITE_SWIMMER
- dw SwimmerSprite
- db $c0 ; byte count
- db BANK(SwimmerSprite)
-
- ; SPRITE_WHITE_PLAYER
- dw WhitePlayerSprite
- db $c0 ; byte count
- db BANK(WhitePlayerSprite)
-
- ; SPRITE_GYM_HELPER
- dw GymHelperSprite
- db $c0 ; byte count
- db BANK(GymHelperSprite)
-
- ; SPRITE_OLD_PERSON
- dw OldPersonSprite
- db $c0 ; byte count
- db BANK(OldPersonSprite)
-
- ; SPRITE_MART_GUY
- dw MartGuySprite
- db $c0 ; byte count
- db BANK(MartGuySprite)
-
- ; SPRITE_FISHER
- dw FisherSprite
- db $c0 ; byte count
- db BANK(FisherSprite)
-
- ; SPRITE_OLD_MEDIUM_WOMAN
- dw OldMediumWomanSprite
- db $c0 ; byte count
- db BANK(OldMediumWomanSprite)
-
- ; SPRITE_NURSE
- dw NurseSprite
- db $c0 ; byte count
- db BANK(NurseSprite)
-
- ; SPRITE_CABLE_CLUB_WOMAN
- dw CableClubWomanSprite
- db $c0 ; byte count
- db BANK(CableClubWomanSprite)
-
- ; SPRITE_MR_MASTERBALL
- dw MrMasterballSprite
- db $c0 ; byte count
- db BANK(MrMasterballSprite)
-
- ; SPRITE_LAPRAS_GIVER
- dw LaprasGiverSprite
- db $c0 ; byte count
- db BANK(LaprasGiverSprite)
-
- ; SPRITE_WARDEN
- dw WardenSprite
- db $c0 ; byte count
- db BANK(WardenSprite)
-
- ; SPRITE_SS_CAPTAIN
- dw SsCaptainSprite
- db $c0 ; byte count
- db BANK(SsCaptainSprite)
-
- ; SPRITE_FISHER2
- dw Fisher2Sprite
- db $c0 ; byte count
- db BANK(Fisher2Sprite)
-
- ; SPRITE_BLACKBELT
- dw BlackbeltSprite
- db $c0 ; byte count
- db BANK(BlackbeltSprite)
-
- ; SPRITE_GUARD
- dw GuardSprite
- db $c0 ; byte count
- db BANK(GuardSprite)
-
- ; $32
- dw GuardSprite
- db $c0 ; byte count
- db BANK(GuardSprite)
-
- ; SPRITE_MOM
- dw MomSprite
- db $c0 ; byte count
- db BANK(MomSprite)
-
- ; SPRITE_BALDING_GUY
- dw BaldingGuySprite
- db $c0 ; byte count
- db BANK(BaldingGuySprite)
-
- ; SPRITE_YOUNG_BOY
- dw YoungBoySprite
- db $c0 ; byte count
- db BANK(YoungBoySprite)
-
- ; SPRITE_GAMEBOY_KID
- dw GameboyKidSprite
- db $c0 ; byte count
- db BANK(GameboyKidSprite)
-
- ; SPRITE_GAMEBOY_KID_COPY
- dw GameboyKidSprite
- db $c0 ; byte count
- db BANK(GameboyKidSprite)
-
- ; SPRITE_CLEFAIRY
- dw ClefairySprite
- db $c0 ; byte count
- db BANK(ClefairySprite)
-
- ; SPRITE_AGATHA
- dw AgathaSprite
- db $c0 ; byte count
- db BANK(AgathaSprite)
-
- ; SPRITE_BRUNO
- dw BrunoSprite
- db $c0 ; byte count
- db BANK(BrunoSprite)
-
- ; SPRITE_LORELEI
- dw LoreleiSprite
- db $c0 ; byte count
- db BANK(LoreleiSprite)
+INCLUDE "data/sprite_sets.asm"
- ; SPRITE_SEEL
- dw SeelSprite
- db $c0 ; byte count
- db BANK(SeelSprite)
-
- ; SPRITE_BALL
- dw BallSprite
- db $40 ; byte count
- db BANK(BallSprite)
-
- ; SPRITE_OMANYTE
- dw OmanyteSprite
- db $40 ; byte count
- db BANK(OmanyteSprite)
-
- ; SPRITE_BOULDER
- dw BoulderSprite
- db $40 ; byte count
- db BANK(BoulderSprite)
-
- ; SPRITE_PAPER_SHEET
- dw PaperSheetSprite
- db $40 ; byte count
- db BANK(PaperSheetSprite)
-
- ; SPRITE_BOOK_MAP_DEX
- dw BookMapDexSprite
- db $40 ; byte count
- db BANK(BookMapDexSprite)
-
- ; SPRITE_CLIPBOARD
- dw ClipboardSprite
- db $40 ; byte count
- db BANK(ClipboardSprite)
-
- ; SPRITE_SNORLAX
- dw SnorlaxSprite
- db $40 ; byte count
- db BANK(SnorlaxSprite)
-
- ; SPRITE_OLD_AMBER_COPY
- dw OldAmberSprite
- db $40 ; byte count
- db BANK(OldAmberSprite)
-
- ; SPRITE_OLD_AMBER
- dw OldAmberSprite
- db $40 ; byte count
- db BANK(OldAmberSprite)
-
- ; SPRITE_LYING_OLD_MAN_UNUSED_1
- dw LyingOldManSprite
- db $40 ; byte count
- db BANK(LyingOldManSprite)
-
- ; SPRITE_LYING_OLD_MAN_UNUSED_2
- dw LyingOldManSprite
- db $40 ; byte count
- db BANK(LyingOldManSprite)
-
- ; SPRITE_LYING_OLD_MAN
- dw LyingOldManSprite
- db $40 ; byte count
- db BANK(LyingOldManSprite)
-
-Func_17c47: ; 17c47 (5:7c47)
+PrintEmotionBubble: ; 17c47 (5:7c47)
ld a, [$cd50]
ld c, a
ld b, $0
@@ -33164,36 +27205,36 @@ SubstituteEffectHandler: ; 17dad (5:7dad)
ld b, BANK(AnimationSubstitute)
.animationEnabled
call Bankswitch ;jump to routine depending on animation setting
- ld hl, UnnamedText_17e1d ;"it created a substitute"
+ ld hl, SubstituteText
call PrintText
ld hl, Func_3cd5a
ld b, BANK(Func_3cd5a)
jp Bankswitch
.alreadyHasSubstitute
- ld hl, UnnamedText_17e22 ;"x has a substitute"
+ ld hl, HasSubstituteText
jr .printText
.notEnoughHP
- ld hl, UnnamedText_17e27 ;"too weak to make substitute"
+ ld hl, TooWeakSubstituteText
.printText
jp PrintText
-UnnamedText_17e1d: ; 17e1d (5:7e1d)
- TX_FAR _UnnamedText_17e1d
+SubstituteText: ; 17e1d (5:7e1d)
+ TX_FAR _SubstituteText
db "@"
-UnnamedText_17e22: ; 17e22 (5:7e22)
- TX_FAR _UnnamedText_17e22
+HasSubstituteText: ; 17e22 (5:7e22)
+ TX_FAR _HasSubstituteText
db "@"
-UnnamedText_17e27: ; 17e27 (5:7e27)
- TX_FAR _UnnamedText_17e27
+TooWeakSubstituteText: ; 17e27 (5:7e27)
+ TX_FAR _TooWeakSubstituteText
db "@"
ActivatePC: ; 17e2c (5:7e2c)
call SaveScreenTilesToBuffer2 ;XXX: copy background from wTileMap to wTileMapBackup2
ld a, (SFX_02_45 - SFX_Headers_02) / 3
call PlaySound ;XXX: play sound or stop music
- ld hl, UnnamedText_17f23 ;player turned on PC
+ ld hl, TurnedOnPC1Text
call PrintText
call WaitForSoundToFinish ;XXX: wait for sound to be done
ld hl, wFlags_0xcd60
@@ -33245,7 +27286,7 @@ PCMainMenu: ; 17e48 (5:7e48)
ld a, (SFX_02_47 - SFX_Headers_02) / 3
call PlaySound ;XXX: play sound or stop music
call WaitForSoundToFinish ;XXX: wait for sound to be done
- ld hl, UnnamedText_17f32 ;accessed players pc
+ ld hl, AccessedMyPCText
call PrintText
callba Func_78e6
jr ReloadMainMenu
@@ -33268,10 +27309,10 @@ BillsPC: ; 17ee4 (5:7ee4)
ld a, [$D7F1] ;has to do with having met Bill
bit 0, a
jr nz, .billsPC ;if you've met bill, use that bill's instead of someone's
- ld hl, UnnamedText_17f2d ;accessed someone's pc
+ ld hl, AccessedSomeonesPCText
jr .printText
.billsPC
- ld hl, UnnamedText_17f28 ;accessed bill's pc
+ ld hl, AccessedBillsPCText
.printText
call PrintText
callba BillsPC_
@@ -33290,20 +27331,20 @@ LogOff: ; 17f13 (5:7f13)
res 5, [hl]
ret
-UnnamedText_17f23: ; 17f23 (5:7f23)
- TX_FAR _UnnamedText_17f23
+TurnedOnPC1Text: ; 17f23 (5:7f23)
+ TX_FAR _TurnedOnPC1Text
db "@"
-UnnamedText_17f28: ; 17f28 (5:7f28)
- TX_FAR _UnnamedText_17f28
+AccessedBillsPCText: ; 17f28 (5:7f28)
+ TX_FAR _AccessedBillsPCText
db "@"
-UnnamedText_17f2d: ; 17f2d (5:7f2d)
- TX_FAR _UnnamedText_17f2d
+AccessedSomeonesPCText: ; 17f2d (5:7f2d)
+ TX_FAR _AccessedSomeonesPCText
db "@"
-UnnamedText_17f32: ; 17f32 (5:7f32)
- TX_FAR _UnnamedText_17f32
+AccessedMyPCText: ; 17f32 (5:7f32)
+ TX_FAR _AccessedMyPCText
db "@"
; removes one of the specified item ID [$FFdb] from bag (if existent)
@@ -33334,385 +27375,51 @@ RemoveItemByID: ; 17f37 (5:7f37)
SECTION "bank6",ROMX,BANK[$6]
-CeladonCity_h: ; 18000 (6:4000)
- db OVERWORLD ; tileset
- db CELADON_CITY_HEIGHT, CELADON_CITY_WIDTH ; dimensions (y, x)
- dw CeladonCityBlocks, CeladonCityTextPointers, CeladonCityScript ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, 4, 0, ROUTE_16_HEIGHT, Route16Blocks, CELADON_CITY_WIDTH
- EAST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, CELADON_CITY_WIDTH
- dw CeladonCityObject ; objects
-
-CeladonCityObject: ; 0x18022 (size=189)
- db $f ; border tile
-
- db $d ; warps
- db $d, $8, $0, CELADON_MART_1
- db $d, $a, $2, CELADON_MART_1
- db $9, $18, $0, CELADON_MANSION_1
- db $3, $18, $2, CELADON_MANSION_1
- db $3, $19, $2, CELADON_MANSION_1
- db $9, $29, $0, CELADON_POKECENTER
- db $1b, $c, $0, CELADON_GYM
- db $13, $1c, $0, GAME_CORNER
- db $13, $27, $0, CELADON_MART_5 ; beta warp! no longer used
- db $13, $21, $0, CELADON_PRIZE_ROOM
- db $1b, $1f, $0, CELADON_DINER
- db $1b, $23, $0, CELADON_HOUSE
- db $1b, $2b, $0, CELADON_HOTEL
-
- db $9 ; signs
- db $f, $1b, $a ; CeladonCityText10
- db $f, $13, $b ; CeladonCityText11
- db $9, $2a, $c ; PokeCenterSignText
- db $1d, $d, $d ; CeladonCityText13
- db $9, $15, $e ; CeladonCityText14
- db $d, $c, $f ; CeladonCityText15
- db $15, $27, $10 ; CeladonCityText16
- db $15, $21, $11 ; CeladonCityText17
- db $15, $1b, $12 ; CeladonCityText18
-
- db $9 ; people
- db SPRITE_LITTLE_GIRL, $11 + 4, $8 + 4, $fe, $0, $1 ; person
- db SPRITE_OLD_PERSON, $1c + 4, $b + 4, $ff, $d1, $2 ; person
- db SPRITE_GIRL, $13 + 4, $e + 4, $fe, $1, $3 ; person
- db SPRITE_OLD_PERSON, $16 + 4, $19 + 4, $ff, $d0, $4 ; person
- db SPRITE_OLD_PERSON, $10 + 4, $16 + 4, $ff, $d0, $5 ; person
- db SPRITE_FISHER2, $c + 4, $20 + 4, $ff, $d2, $6 ; person
- db SPRITE_SLOWBRO, $c + 4, $1e + 4, $ff, $d3, $7 ; person
- db SPRITE_ROCKET, $1d + 4, $20 + 4, $fe, $2, $8 ; person
- db SPRITE_ROCKET, $e + 4, $2a + 4, $fe, $2, $9 ; person
-
- ; warp-to
- EVENT_DISP CELADON_CITY_WIDTH, $d, $8 ; CELADON_MART_1
- EVENT_DISP CELADON_CITY_WIDTH, $d, $a ; CELADON_MART_1
- EVENT_DISP CELADON_CITY_WIDTH, $9, $18 ; CELADON_MANSION_1
- EVENT_DISP CELADON_CITY_WIDTH, $3, $18 ; CELADON_MANSION_1
- EVENT_DISP CELADON_CITY_WIDTH, $3, $19 ; CELADON_MANSION_1
- EVENT_DISP CELADON_CITY_WIDTH, $9, $29 ; CELADON_POKECENTER
- EVENT_DISP CELADON_CITY_WIDTH, $1b, $c ; CELADON_GYM
- EVENT_DISP CELADON_CITY_WIDTH, $13, $1c ; GAME_CORNER
- EVENT_DISP CELADON_CITY_WIDTH, $13, $27 ; CELADON_MART_5
- EVENT_DISP CELADON_CITY_WIDTH, $13, $21 ; CELADON_PRIZE_ROOM
- EVENT_DISP CELADON_CITY_WIDTH, $1b, $1f ; CELADON_DINER
- EVENT_DISP CELADON_CITY_WIDTH, $1b, $23 ; CELADON_HOUSE
- EVENT_DISP CELADON_CITY_WIDTH, $1b, $2b ; CELADON_HOTEL
+INCLUDE "data/mapHeaders/celadoncity.asm"
+
+INCLUDE "data/mapObjects/celadoncity.asm"
CeladonCityBlocks: ; 180df (6:40df)
INCBIN "maps/celadoncity.blk"
-PalletTown_h: ; 182a1 (6:42a1)
- db OVERWORLD ; tileset
- db PALLET_TOWN_HEIGHT, PALLET_TOWN_WIDTH ; dimensions
- dw PalletTownBlocks, PalletTownTextPointers, PalletTownScript
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, ROUTE_1_HEIGHT, 0, 0, ROUTE_1_WIDTH, Route1Blocks
- SOUTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, 0, 0, ROUTE_21_WIDTH, Route21Blocks, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT
- dw PalletTownObject
-
-PalletTownObject: ; 0x182c3 (size=58)
- db $b ; border tile
-
- db $3 ; warps
- db $5, $5, $0, REDS_HOUSE_1F
- db $5, $d, $0, BLUES_HOUSE
- db $b, $c, $1, OAKS_LAB
-
- db $4 ; signs
- db $d, $d, $4 ; PalletTownText4
- db $9, $7, $5 ; PalletTownText5
- db $5, $3, $6 ; PalletTownText6
- db $5, $b, $7 ; PalletTownText7
-
- db $3 ; people
- db SPRITE_OAK, $5 + 4, $8 + 4, $ff, $ff, $1 ; person
- db SPRITE_GIRL, $8 + 4, $3 + 4, $fe, $0, $2 ; person
- db SPRITE_FISHER2, $e + 4, $b + 4, $fe, $0, $3 ; person
-
- ; warp-to
- EVENT_DISP PALLET_TOWN_WIDTH, $5, $5 ; REDS_HOUSE_1F
- EVENT_DISP PALLET_TOWN_WIDTH, $5, $d ; BLUES_HOUSE
- EVENT_DISP PALLET_TOWN_WIDTH, $b, $c ; OAKS_LAB
+INCLUDE "data/mapHeaders/pallettown.asm"
+
+INCLUDE "data/mapObjects/pallettown.asm"
PalletTownBlocks: ; 182fd (6:42fd)
INCBIN "maps/pallettown.blk"
-ViridianCity_h: ; 0x18357 to 0x18384 (45 bytes) (bank=6) (id=1)
- db OVERWORLD ; tileset
- db VIRIDIAN_CITY_HEIGHT, VIRIDIAN_CITY_WIDTH ; dimensions (y, x)
- dw ViridianCityBlocks, ViridianCityTextPointers, ViridianCityScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, ROUTE_2_HEIGHT, 5, 0, ROUTE_2_WIDTH, Route2Blocks
- SOUTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, 5, 0, ROUTE_1_WIDTH, Route1Blocks, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT
- WEST_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 4, 0, ROUTE_22_HEIGHT, Route22Blocks, VIRIDIAN_CITY_WIDTH
- dw ViridianCityObject ; objects
-
-ViridianCityObject: ; 0x18384 (size=104)
- db $f ; border tile
-
- db $5 ; warps
- db $19, $17, $0, VIRIDIAN_POKECENTER
- db $13, $1d, $0, VIRIDIAN_MART
- db $f, $15, $0, VIRIDIAN_SCHOOL
- db $9, $15, $0, VIRIDIAN_HOUSE
- db $7, $20, $0, VIRIDIAN_GYM
-
- db $6 ; signs
- db $11, $11, $8 ; ViridianCityText8
- db $1, $13, $9 ; ViridianCityText9
- db $1d, $15, $a ; ViridianCityText10
- db $13, $1e, $b ; MartSignText
- db $19, $18, $c ; PokeCenterSignText
- db $7, $1b, $d ; ViridianCityText13
-
- db $7 ; people
- db SPRITE_BUG_CATCHER, $14 + 4, $d + 4, $fe, $0, $1 ; person
- db SPRITE_GAMBLER, $8 + 4, $1e + 4, $ff, $ff, $2 ; person
- db SPRITE_BUG_CATCHER, $19 + 4, $1e + 4, $fe, $0, $3 ; person
- db SPRITE_GIRL, $9 + 4, $11 + 4, $ff, $d3, $4 ; person
- db SPRITE_LYING_OLD_MAN, $9 + 4, $12 + 4, $ff, $ff, $5 ; person
- db SPRITE_FISHER2, $17 + 4, $6 + 4, $ff, $d0, $6 ; person
- db SPRITE_GAMBLER, $5 + 4, $11 + 4, $fe, $2, $7 ; person
-
- ; warp-to
- EVENT_DISP VIRIDIAN_CITY_WIDTH, $19, $17 ; VIRIDIAN_POKECENTER
- EVENT_DISP VIRIDIAN_CITY_WIDTH, $13, $1d ; VIRIDIAN_MART
- EVENT_DISP VIRIDIAN_CITY_WIDTH, $f, $15 ; VIRIDIAN_SCHOOL
- EVENT_DISP VIRIDIAN_CITY_WIDTH, $9, $15 ; VIRIDIAN_HOUSE
- EVENT_DISP VIRIDIAN_CITY_WIDTH, $7, $20 ; VIRIDIAN_GYM
+INCLUDE "data/mapHeaders/viridiancity.asm"
+
+INCLUDE "data/mapObjects/viridiancity.asm"
ViridianCityBlocks: ; 183ec (6:43ec)
INCBIN "maps/viridiancity.blk"
-PewterCity_h: ; 0x18554 to 0x18576 (34 bytes) (bank=6) (id=2)
- db OVERWORLD ; tileset
- db PEWTER_CITY_HEIGHT, PEWTER_CITY_WIDTH ; dimensions (y, x)
- dw PewterCityBlocks, PewterCityTextPointers, PewterCityScript ; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, 5, 0, ROUTE_2_WIDTH, Route2Blocks, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT
- EAST_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, 4, 0, ROUTE_3_HEIGHT, Route3Blocks, PEWTER_CITY_WIDTH
- dw PewterCityObject ; objects
-
- db $0
-
-PewterCityObject: ; 0x18577 (size=111)
- db $a ; border tile
-
- db $7 ; warps
- db $7, $e, $0, MUSEUM_1F
- db $5, $13, $2, MUSEUM_1F
- db $11, $10, $0, PEWTER_GYM
- db $d, $1d, $0, PEWTER_HOUSE_1
- db $11, $17, $0, PEWTER_MART
- db $1d, $7, $0, PEWTER_HOUSE_2
- db $19, $d, $0, PEWTER_POKECENTER
-
- db $7 ; signs
- db $1d, $13, $6 ; PewterCityText6
- db $13, $21, $7 ; PewterCityText7
- db $11, $18, $8 ; MartSignText
- db $19, $e, $9 ; PokeCenterSignText
- db $9, $f, $a ; PewterCityText10
- db $11, $b, $b ; PewterCityText11
- db $17, $19, $c ; PewterCityText12
-
- db $5 ; people
- db SPRITE_LASS, $f + 4, $8 + 4, $ff, $ff, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $19 + 4, $11 + 4, $ff, $ff, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $1b + 4, $ff, $ff, $3 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $19 + 4, $1a + 4, $fe, $2, $4 ; person
- db SPRITE_BUG_CATCHER, $10 + 4, $23 + 4, $ff, $d0, $5 ; person
-
- ; warp-to
- EVENT_DISP PEWTER_CITY_WIDTH, $7, $e ; MUSEUM_1F
- EVENT_DISP PEWTER_CITY_WIDTH, $5, $13 ; MUSEUM_1F
- EVENT_DISP PEWTER_CITY_WIDTH, $11, $10 ; PEWTER_GYM
- EVENT_DISP PEWTER_CITY_WIDTH, $d, $1d ; PEWTER_HOUSE_1
- EVENT_DISP PEWTER_CITY_WIDTH, $11, $17 ; PEWTER_MART
- EVENT_DISP PEWTER_CITY_WIDTH, $1d, $7 ; PEWTER_HOUSE_2
- EVENT_DISP PEWTER_CITY_WIDTH, $19, $d ; PEWTER_POKECENTER
+INCLUDE "data/mapHeaders/pewtercity.asm"
+
+INCLUDE "data/mapObjects/pewtercity.asm"
PewterCityBlocks: ; 185e6 (6:45e6)
INCBIN "maps/pewtercity.blk"
-CeruleanCity_h: ; 0x1874e to 0x18786 (56 bytes) (bank=6) (id=3)
- db OVERWORLD ; tileset
- db CERULEAN_CITY_HEIGHT, CERULEAN_CITY_WIDTH ; dimensions (y, x)
- dw CeruleanCityBlocks, CeruleanCityTextPointers, CeruleanCityScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, ROUTE_24_HEIGHT, 5, 0, ROUTE_24_WIDTH, Route24Blocks
- SOUTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, 5, 0, ROUTE_5_WIDTH, Route5Blocks, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT
- WEST_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, 4, 0, ROUTE_4_HEIGHT, Route4Blocks, CERULEAN_CITY_WIDTH
- EAST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 4, 0, ROUTE_9_HEIGHT, Route9Blocks, CERULEAN_CITY_WIDTH
- dw CeruleanCityObject ; objects
-
-CeruleanCityObject: ; 0x18786 (size=170)
- db $f ; border tile
-
- db $a ; warps
- db $b, $1b, $0, TRASHED_HOUSE
- db $f, $d, $0, CERULEAN_HOUSE
- db $11, $13, $0, CERULEAN_POKECENTER
- db $13, $1e, $0, CERULEAN_GYM
- db $19, $d, $0, BIKE_SHOP
- db $19, $19, $0, CERULEAN_MART
- db $b, $4, $0, UNKNOWN_DUNGEON_1
- db $9, $1b, $2, TRASHED_HOUSE
- db $b, $9, $1, CERULEAN_HOUSE_3
- db $9, $9, $0, CERULEAN_HOUSE_3
-
- db $6 ; signs
- db $13, $17, $c ; CeruleanCityText12
- db $1d, $11, $d ; CeruleanCityText13
- db $19, $1a, $e ; MartSignText
- db $11, $14, $f ; PokeCenterSignText
- db $19, $b, $10 ; CeruleanCityText16
- db $15, $1b, $11 ; CeruleanCityText17
-
- db $b ; people
- db SPRITE_BLUE, $2 + 4, $14 + 4, $ff, $d0, $1 ; person
- db SPRITE_ROCKET, $8 + 4, $1e + 4, $ff, $ff, $42, ROCKET + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $1f + 4, $ff, $d0, $3 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $12 + 4, $f + 4, $fe, $1, $4 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $9 + 4, $fe, $2, $5 ; person
- db SPRITE_GUARD, $c + 4, $1c + 4, $ff, $d0, $6 ; person
- db SPRITE_LASS, $1a + 4, $1d + 4, $ff, $d2, $7 ; person
- db SPRITE_SLOWBRO, $1a + 4, $1c + 4, $ff, $d0, $8 ; person
- db SPRITE_LASS, $1b + 4, $9 + 4, $fe, $2, $9 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $c + 4, $4 + 4, $ff, $d0, $a ; person
- db SPRITE_GUARD, $c + 4, $1b + 4, $ff, $d0, $b ; person
-
- ; warp-to
- EVENT_DISP CERULEAN_CITY_WIDTH, $b, $1b ; TRASHED_HOUSE
- EVENT_DISP CERULEAN_CITY_WIDTH, $f, $d ; CERULEAN_HOUSE
- EVENT_DISP CERULEAN_CITY_WIDTH, $11, $13 ; CERULEAN_POKECENTER
- EVENT_DISP CERULEAN_CITY_WIDTH, $13, $1e ; CERULEAN_GYM
- EVENT_DISP CERULEAN_CITY_WIDTH, $19, $d ; BIKE_SHOP
- EVENT_DISP CERULEAN_CITY_WIDTH, $19, $19 ; CERULEAN_MART
- EVENT_DISP CERULEAN_CITY_WIDTH, $b, $4 ; UNKNOWN_DUNGEON_1
- EVENT_DISP CERULEAN_CITY_WIDTH, $9, $1b ; TRASHED_HOUSE
- EVENT_DISP CERULEAN_CITY_WIDTH, $b, $9 ; CERULEAN_HOUSE_3
- EVENT_DISP CERULEAN_CITY_WIDTH, $9, $9 ; CERULEAN_HOUSE_3
+INCLUDE "data/mapHeaders/ceruleancity.asm"
+
+INCLUDE "data/mapObjects/ceruleancity.asm"
CeruleanCityBlocks: ; 18830 (6:4830)
INCBIN "maps/ceruleancity.blk"
-VermilionCity_h: ; 0x18998 to 0x189ba (34 bytes) (bank=6) (id=5)
- db OVERWORLD ; tileset
- db VERMILION_CITY_HEIGHT, VERMILION_CITY_WIDTH ; dimensions (y, x)
- dw VermilionCityBlocks, VermilionCityTextPointers, VermilionCityScript ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, ROUTE_6_HEIGHT, 5, 0, ROUTE_6_WIDTH, Route6Blocks
- EAST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 4, 0, ROUTE_11_HEIGHT, Route11Blocks, VERMILION_CITY_WIDTH
- dw VermilionCityObject ; objects
-
-VermilionCityObject: ; 0x189ba (size=133)
- db $43 ; border tile
-
- db $9 ; warps
- db $3, $b, $0, VERMILION_POKECENTER
- db $d, $9, $0, POKEMON_FAN_CLUB
- db $d, $17, $0, VERMILION_MART
- db $13, $c, $0, VERMILION_GYM
- db $13, $17, $0, VERMILION_HOUSE_1
- db $1f, $12, $0, VERMILION_DOCK
- db $1f, $13, $0, VERMILION_DOCK
- db $d, $f, $0, VERMILION_HOUSE_3
- db $3, $7, $0, VERMILION_HOUSE_2
-
- db $7 ; signs
- db $3, $1b, $7 ; VermilionCityText7
- db $d, $25, $8 ; VermilionCityText8
- db $d, $18, $9 ; MartSignText
- db $3, $c, $a ; PokeCenterSignText
- db $d, $7, $b ; VermilionCityText11
- db $13, $7, $c ; VermilionCityText12
- db $f, $1d, $d ; VermilionCityText13
-
- db $6 ; people
- db SPRITE_FOULARD_WOMAN, $7 + 4, $13 + 4, $fe, $2, $1 ; person
- db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person
- db SPRITE_SAILOR, $1e + 4, $13 + 4, $ff, $d1, $3 ; person
- db SPRITE_GAMBLER, $7 + 4, $1e + 4, $ff, $ff, $4 ; person
- db SPRITE_SLOWBRO, $9 + 4, $1d + 4, $fe, $1, $5 ; person
- db SPRITE_SAILOR, $1b + 4, $19 + 4, $fe, $2, $6 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_CITY_WIDTH, $3, $b ; VERMILION_POKECENTER
- EVENT_DISP VERMILION_CITY_WIDTH, $d, $9 ; POKEMON_FAN_CLUB
- EVENT_DISP VERMILION_CITY_WIDTH, $d, $17 ; VERMILION_MART
- EVENT_DISP VERMILION_CITY_WIDTH, $13, $c ; VERMILION_GYM
- EVENT_DISP VERMILION_CITY_WIDTH, $13, $17 ; VERMILION_HOUSE_1
- EVENT_DISP VERMILION_CITY_WIDTH, $1f, $12 ; VERMILION_DOCK
- EVENT_DISP VERMILION_CITY_WIDTH, $1f, $13 ; VERMILION_DOCK
- EVENT_DISP VERMILION_CITY_WIDTH, $d, $f ; VERMILION_HOUSE_3
- EVENT_DISP VERMILION_CITY_WIDTH, $3, $7 ; VERMILION_HOUSE_2
+INCLUDE "data/mapHeaders/vermilioncity.asm"
+
+INCLUDE "data/mapObjects/vermilioncity.asm"
VermilionCityBlocks: ; 18a3f (6:4a3f)
INCBIN "maps/vermilioncity.blk"
-FuchsiaCity_h: ; 0x18ba7 to 0x18bd4 (45 bytes) (bank=6) (id=7)
- db OVERWORLD ; tileset
- db FUCHSIA_CITY_HEIGHT, FUCHSIA_CITY_WIDTH ; dimensions (y, x)
- dw FuchsiaCityBlocks, FuchsiaCityTextPointers, FuchsiaCityScript ; blocks, texts, scripts
- db SOUTH | WEST | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, 5, 0, ROUTE_19_WIDTH, Route19Blocks, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT
- WEST_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 4, 0, ROUTE_18_HEIGHT, Route18Blocks, FUCHSIA_CITY_WIDTH
- EAST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 4, 0, ROUTE_15_HEIGHT, Route15Blocks, FUCHSIA_CITY_WIDTH
- dw FuchsiaCityObject ; objects
-
-FuchsiaCityObject: ; 0x18bd4 (size=178)
- db $f ; border tile
-
- db $9 ; warps
- db $d, $5, $0, FUCHSIA_MART
- db $1b, $b, $0, FUCHSIA_HOUSE_1
- db $1b, $13, $0, FUCHSIA_POKECENTER
- db $1b, $1b, $0, FUCHSIA_HOUSE_2
- db $3, $12, $0, SAFARI_ZONE_ENTRANCE
- db $1b, $5, $0, FUCHSIA_GYM
- db $d, $16, $0, FUCHSIA_MEETING_ROOM
- db $1b, $1f, $1, FUCHSIA_HOUSE_3
- db $18, $1f, $0, FUCHSIA_HOUSE_3
-
- db $e ; signs
- db $17, $f, $b ; FuchsiaCityText11
- db $f, $19, $c ; FuchsiaCityText12
- db $5, $11, $d ; FuchsiaCityText13
- db $d, $6, $e ; MartSignText
- db $1b, $14, $f ; PokeCenterSignText
- db $1d, $1b, $10 ; FuchsiaCityText16
- db $f, $15, $11 ; FuchsiaCityText17
- db $1d, $5, $12 ; FuchsiaCityText18
- db $7, $21, $13 ; FuchsiaCityText19
- db $7, $1b, $14 ; FuchsiaCityText20
- db $7, $d, $15 ; FuchsiaCityText21
- db $d, $1f, $16 ; FuchsiaCityText22
- db $f, $d, $17 ; FuchsiaCityText23
- db $7, $7, $18 ; FuchsiaCityText24
-
- db $a ; people
- db SPRITE_BUG_CATCHER, $c + 4, $a + 4, $fe, $2, $1 ; person
- db SPRITE_GAMBLER, $11 + 4, $1c + 4, $fe, $2, $2 ; person
- db SPRITE_FISHER2, $e + 4, $1e + 4, $ff, $d0, $3 ; person
- db SPRITE_BUG_CATCHER, $8 + 4, $18 + 4, $ff, $d1, $4 ; person
- db SPRITE_CLEFAIRY, $5 + 4, $1f + 4, $fe, $0, $5 ; person
- db SPRITE_BALL, $6 + 4, $19 + 4, $ff, $ff, $6 ; person
- db SPRITE_SLOWBRO, $6 + 4, $c + 4, $fe, $2, $7 ; person
- db SPRITE_SLOWBRO, $c + 4, $1e + 4, $fe, $2, $8 ; person
- db SPRITE_SEEL, $11 + 4, $8 + 4, $fe, $0, $9 ; person
- db SPRITE_OMANYTE, $5 + 4, $6 + 4, $ff, $ff, $a ; person
-
- ; warp-to
- EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $5 ; FUCHSIA_MART
- EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $b ; FUCHSIA_HOUSE_1
- EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $13 ; FUCHSIA_POKECENTER
- EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1b ; FUCHSIA_HOUSE_2
- EVENT_DISP FUCHSIA_CITY_WIDTH, $3, $12 ; SAFARI_ZONE_ENTRANCE
- EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $5 ; FUCHSIA_GYM
- EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $16 ; FUCHSIA_MEETING_ROOM
- EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1f ; FUCHSIA_HOUSE_3
- EVENT_DISP FUCHSIA_CITY_WIDTH, $18, $1f ; FUCHSIA_HOUSE_3
+INCLUDE "data/mapHeaders/fuchsiacity.asm"
+
+INCLUDE "data/mapObjects/fuchsiacity.asm"
FuchsiaCityBlocks: ; 18c86 (6:4c86)
INCBIN "maps/fuchsiacity.blk"
@@ -33779,2918 +27486,70 @@ Func_18e36: ; 18e36 (6:4e36)
ld [H_CURRENTPRESSEDBUTTONS], a
ret
-PalletTownScript: ; 18e5b (6:4e5b)
- ld a,[$D74B]
- bit 4,a
- jr z,.next
- ld hl,$D747
- set 6,[hl]
-.next
- call EnableAutoTextBoxDrawing
- ld hl,PalletTownScriptPointers
- ld a,[W_PALLETTOWNCURSCRIPT]
- jp CallFunctionInTable
-
-PalletTownScriptPointers: ; 18e73 (6:4e73)
- dw PalletTownScript0
- dw PalletTownScript1
- dw PalletTownScript2
- dw PalletTownScript3
- dw PalletTownScript4
- dw PalletTownScript5
- dw PalletTownScript6
-
-PalletTownScript0: ; 18e81 (6:4e81)
- ld a,[$D747]
- bit 0,a
- ret nz
- ld a,[W_YCOORD]
- cp 1 ; is player near north exit?
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS],a
- ld a,4
- ld [$D528],a
- ld a,$FF
- call PlaySound ; stop music
- ld a, BANK(Music_MeetProfOak)
- ld c,a ; song bank
- ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music
- call PlayMusic ; plays music
- ld a,$FC
- ld [wJoypadForbiddenButtonsMask],a
- ld hl,$D74B
- set 7,[hl]
-
- ; trigger the next script
- ld a,1
- ld [W_PALLETTOWNCURSCRIPT],a
- ret
-
-PalletTownScript1: ; 18eb2 (6:4eb2)
- xor a
- ld [$CF0D],a
- ld a,1
- ld [$FF8C],a
- call DisplayTextID
- ld a,$FF
- ld [wJoypadForbiddenButtonsMask],a
- ld a,0
- ld [$CC4D],a
- ld a,$15
- call Predef
-
- ; trigger the next script
- ld a,2
- ld [W_PALLETTOWNCURSCRIPT],a
- ret
-
-PalletTownScript2: ; 18ed2 (6:4ed2)
- ld a,1
- ld [$FF8C],a
- ld a,4
- ld [$FF8D],a
- call Func_34a6
- call Delay3
- ld a,1
- ld [W_YCOORD],a
- ld a,1
- ld [$FF9B],a
- ld a,1
- swap a
- ld [$FF95],a
- ld a,$22
- call Predef
- ld hl,$FF95
- dec [hl]
- ld a,$20
- call Predef ; load Oak’s movement into $CC97
- ld de,$CC97
- ld a,1 ; oak
- ld [$FF8C],a
- call MoveSprite
- ld a,$FF
- ld [wJoypadForbiddenButtonsMask],a
-
- ; trigger the next script
- ld a,3
- ld [W_PALLETTOWNCURSCRIPT],a
- ret
-
-PalletTownScript3: ; 18f12 (6:4f12)
- ld a,[$D730]
- bit 0,a
- ret nz
- xor a
- ld [$C109],a
- ld a,1
- ld [$CF0D],a
- ld a,$FC
- ld [wJoypadForbiddenButtonsMask],a
- ld a,1
- ld [$FF8C],a
- call DisplayTextID
- ld a,$FF
- ld [wJoypadForbiddenButtonsMask],a
- ld a,1
- ld [$CF13],a
- xor a
- ld [$CF10],a
- ld a,1
- ld [$CC57],a
- ld a,[H_LOADEDROMBANK]
- ld [$CC58],a
-
- ; trigger the next script
- ld a,4
- ld [W_PALLETTOWNCURSCRIPT],a
- ret
-
-PalletTownScript4: ; 18f4b (6:4f4b)
- ld a,[$CC57]
- and a
- ret nz
-
- ; trigger the next script
- ld a,5
- ld [W_PALLETTOWNCURSCRIPT],a
- ret
-
-PalletTownScript5: ; 18f56 (6:4f56)
- ld a,[$D74A]
- bit 2,a
- jr nz,.next
- and 3
- cp 3
- jr nz,.next
- ld hl,$D74A
- set 2,[hl]
- ld a,$27
- ld [$CC4D],a
- ld a,$11
- call Predef
- ld a,$28
- ld [$CC4D],a
- ld a,$15
- jp Predef
-.next
- ld a,[$D74B]
- bit 4,a
- ret z
- ld hl,$D74B
- set 6,[hl]
-PalletTownScript6: ; 18f87 (6:4f87)
- ret
+INCLUDE "scripts/pallettown.asm"
-PalletTownTextPointers: ; 18f88 (6:4f88)
- dw PalletTownText1
- dw PalletTownText2
- dw PalletTownText3
- dw PalletTownText4
- dw PalletTownText5
- dw PalletTownText6
- dw PalletTownText7
+INCLUDE "scripts/viridiancity.asm"
-PalletTownText1: ; 18f96 (6:4f96)
- db 8
- ld a,[$CF0D]
- and a
- jr nz,.next
- ld a,1
- ld [$CC3C],a
- ld hl,OakAppearsText
- jr .done
-.next
- ld hl,OakWalksUpText
-.done
- call PrintText
- jp TextScriptEnd
+INCLUDE "scripts/pewtercity.asm"
-OakAppearsText: ; 18fb0 (6:4fb0)
- TX_FAR _OakAppearsText
- db 8
- ld c,10
- call DelayFrames
- xor a
- ld [$CD4F],a
- ld [$CD50],a
- ld a,$4C
- call Predef ; display ! over head
- ld a,4
- ld [$D528],a
- jp TextScriptEnd
+INCLUDE "scripts/ceruleancity.asm"
-OakWalksUpText: ; 18fce (6:4fce)
- TX_FAR _OakWalksUpText
- db "@"
+INCLUDE "scripts/vermilioncity.asm"
-PalletTownText2: ; 0x18fd3 girl
- TX_FAR _PalletTownText2 ; dc 42 29 pointing to 0xa42dc
- db "@"
+INCLUDE "scripts/celadoncity.asm"
-PalletTownText3: ; 0x18fd8 fat man
- TX_FAR _PalletTownText3
- db "@"
+INCLUDE "scripts/fuchsiacity.asm"
-PalletTownText4: ; 0x18fdd sign by lab
- TX_FAR _PalletTownText4
- db "@"
+INCLUDE "data/mapHeaders/blueshouse.asm"
-PalletTownText5: ; 0x18fe2 sign by fence
- TX_FAR _PalletTownText5
- db "@"
-
-PalletTownText6: ; 0x18fe7 sign by Red’s house
- TX_FAR _PalletTownText6
- db "@"
-
-PalletTownText7: ; 0x18fec sign by Blue’s house
- TX_FAR _PalletTownText7
- db "@"
+INCLUDE "scripts/blueshouse.asm"
-ViridianCityScript: ; 18ff1 (6:4ff1)
- call EnableAutoTextBoxDrawing
- ld hl, ViridianCityScriptPointers
- ld a, [W_VIRIDIANCITYCURSCRIPT]
- jp CallFunctionInTable
-
-ViridianCityScriptPointers: ; 18ffd (6:4ffd)
- dw ViridianCityScript0
- dw ViridianCityScript1
- dw ViridianCityScript2
- dw ViridianCityScript3
-
-ViridianCityScript0: ; 19005 (6:5005)
- call ViridianCityScript_1900b
- jp ViridianCityScript_1903d
-
-ViridianCityScript_1900b: ; 1900b (6:500b)
- ld a, [$d74c]
- bit 0, a
- ret nz
- ld a, [W_OBTAINEDBADGES]
- cp %01111111
- jr nz, .asm_1901e ; 0x19016 $6
- ld hl, $d74c
- set 0, [hl]
- ret
-.asm_1901e
- ld a, [W_YCOORD]
- cp $8
- ret nz
- ld a, [W_XCOORD]
- cp $20
- ret nz
- ld a, $e
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- call ViridianCityScript_190cf
- ld a, $3
- ld [W_VIRIDIANCITYCURSCRIPT], a
- ret
-
-ViridianCityScript_1903d: ; 1903d (6:503d)
- ld a, [$d74b]
- bit 5, a
- ret nz
- ld a, [W_YCOORD]
- cp $9
- ret nz
- ld a, [W_XCOORD]
- cp $13
- ret nz
- ld a, $5
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- call ViridianCityScript_190cf
- ld a, $3
- ld [W_VIRIDIANCITYCURSCRIPT], a
- ret
-
-ViridianCityScript1: ; 19062 (6:5062)
- ld a, [$c134]
- ld [$ffeb], a
- ld a, [$c136]
- ld [$ffec], a
- ld a, [$c234]
- ld [$ffed], a
- ld a, [$c235]
- ld [$ffee], a
- xor a
- ld [wListScrollOffset], a
-
- ; set up battle for Old Man
- ld a, $1
- ld [W_BATTLETYPE], a
- ld a, 5
- ld [W_CURENEMYLVL], a
- ld a, WEEDLE
- ld [W_CUROPPONENT], a
- ld a, $2
- ld [W_VIRIDIANCITYCURSCRIPT], a
- ret
-
-ViridianCityScript2: ; 1908f (6:508f)
- ld a, [$ffeb]
- ld [$c134], a
- ld a, [$ffec]
- ld [$c136], a
- ld a, [$ffed]
- ld [$c234], a
- ld a, [$ffee]
- ld [$c235], a
- call UpdateSprites
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $f
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [W_BATTLETYPE], a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_VIRIDIANCITYCURSCRIPT], a
- ret
-
-ViridianCityScript3: ; 190c1 (6:50c1)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- ld a, 0
- ld [W_VIRIDIANCITYCURSCRIPT], a
- ret
-
-ViridianCityScript_190cf: ; 190cf (6:50cf)
- call Func_3486
- ld a, $1
- ld [$cd38], a
- ld a, $80
- ld [$ccd3], a
- xor a
- ld [$c109], a
- ld [wJoypadForbiddenButtonsMask], a
- ret
-
-ViridianCityTextPointers: ; 190e4 (6:50e4)
- dw ViridianCityText1
- dw ViridianCityText2
- dw ViridianCityText3
- dw ViridianCityText4
- dw ViridianCityText5
- dw ViridianCityText6
- dw ViridianCityText7
- dw ViridianCityText8
- dw ViridianCityText9
- dw ViridianCityText10
- dw MartSignText
- dw PokeCenterSignText
- dw ViridianCityText13
- dw ViridianCityText14
- dw ViridianCityText15
-
-ViridianCityText1: ; 19102 (6:5102)
- TX_FAR _ViridianCityText1
- db "@"
-
-ViridianCityText2: ; 19107 (6:5107)
- db $08 ; asm
- ld a, [W_OBTAINEDBADGES]
- cp %01111111
- ld hl, UnnamedText_19127
- jr z, .asm_ae9fe ; 0x19110
- ld a, [$d751]
- bit 1, a
- jr nz, .asm_ae9fe ; 0x19117
- ld hl, UnnamedText_19122
-.asm_ae9fe ; 0x1911c
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_19122: ; 19122 (6:5122)
- TX_FAR _UnnamedText_19122
- db "@"
-
-UnnamedText_19127: ; 19127 (6:5127)
- TX_FAR _UnnamedText_19127
- db "@"
-
-ViridianCityText3: ; 1912c (6:512c)
- db $08 ; asm
- ld hl, UnnamedText_1914d
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_6dfea ; 0x1913a
- ld hl, UnnamedText_19157
- call PrintText
- jr .asm_d611f ; 0x19142
-.asm_6dfea ; 0x19144
- ld hl, UnnamedText_19152
- call PrintText
-.asm_d611f ; 0x1914a
- jp TextScriptEnd
-
-UnnamedText_1914d: ; 1914d (6:514d)
- TX_FAR _UnnamedText_1914d
- db "@"
-
-UnnamedText_19152: ; 19152 (6:5152)
- TX_FAR _UnnamedText_19152
- db "@"
-
-UnnamedText_19157: ; 19157 (6:5157)
- TX_FAR _UnnamedText_19157
- db "@"
-
-ViridianCityText4: ; 1915c (6:515c)
- db $08 ; asm
- ld a, [$d74b]
- bit 5, a
- jr nz, .asm_83894 ; 0x19162
- ld hl, UnnamedText_19175
- call PrintText
- jr .asm_700a6 ; 0x1916a
-.asm_83894 ; 0x1916c
- ld hl, UnnamedText_1917a
- call PrintText
-.asm_700a6 ; 0x19172
- jp TextScriptEnd
-
-UnnamedText_19175: ; 19175 (6:5175)
- TX_FAR _UnnamedText_19175
- db "@"
-
-UnnamedText_1917a: ; 1917a (6:517a)
- TX_FAR _UnnamedText_1917a
- db "@"
-
-ViridianCityText5: ; 1917f (6:517f)
- db $08 ; asm
- ld hl, UnnamedText_19191
- call PrintText
- call ViridianCityScript_190cf
- ld a, $3
- ld [W_VIRIDIANCITYCURSCRIPT], a
- jp TextScriptEnd
-
-UnnamedText_19191: ; 19191 (6:5191)
- TX_FAR _UnnamedText_19191
- db "@"
-
-ViridianCityText6: ; 19196 (6:5196)
- db $08 ; asm
- ld a, [$d74c]
- bit 1, a
- jr nz, .asm_4e5a0 ; 0x1919c
- ld hl, UnnamedText_191ca
- call PrintText
- ld bc, (TM_42 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM42Text
- call PrintText
- ld hl, $d74c
- set 1, [hl]
- jr .asm_3c73c ; 0x191b7
-.BagFull
- ld hl, TM42NoRoomText
- call PrintText
- jr .asm_3c73c ; 0x191bf
-.asm_4e5a0 ; 0x191c1
- ld hl, TM42Explanation
- call PrintText
-.asm_3c73c ; 0x191c7
- jp TextScriptEnd
-
-UnnamedText_191ca: ; 191ca (6:51ca)
- TX_FAR _UnnamedText_191ca
- db "@"
-
-ReceivedTM42Text: ; 191cf (6:51cf)
- TX_FAR _ReceivedTM42Text ; 0xa469a
- db $10, "@"
-
-TM42Explanation: ; 191d5 (6:51d5)
- TX_FAR _TM42Explanation
- db "@"
-
-TM42NoRoomText: ; 191da (6:51da)
- TX_FAR _TM42NoRoomText
- db "@"
-
-ViridianCityText7: ; 191df (6:51df)
- db $08 ; asm
- ld hl, UnnamedText_1920a
- call PrintText
- ld c, $2
- call DelayFrames
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr z, .asm_42f68 ; 0x191f2
- ld hl, UnnamedText_1920f
- call PrintText
- ld a, $1
- ld [W_VIRIDIANCITYCURSCRIPT], a
- jr .asm_2413a ; 0x191ff
-.asm_42f68 ; 0x19201
- ld hl, UnnamedText_19214
- call PrintText
-.asm_2413a ; 0x19207
- jp TextScriptEnd
-
-UnnamedText_1920a: ; 1920a (6:520a)
- TX_FAR _UnnamedText_1920a
- db "@"
-
-UnnamedText_1920f: ; 1920f (6:520f)
- TX_FAR _UnnamedText_1920f
- db "@"
-
-UnnamedText_19214: ; 19214 (6:5214)
- TX_FAR _UnnamedText_19214
- db "@"
-
-ViridianCityText15: ; 19219 (6:5219)
- TX_FAR _UnnamedText_19219
- db "@"
-
-ViridianCityText8: ; 1921e (6:521e)
- TX_FAR _ViridianCityText8
- db "@"
-
-ViridianCityText9: ; 19223 (6:5223)
- TX_FAR _ViridianCityText9
- db "@"
-
-ViridianCityText10: ; 19228 (6:5228)
- TX_FAR _ViridianCityText10
- db "@"
-
-ViridianCityText13: ; 1922d (6:522d)
- TX_FAR _ViridianCityText13
- db "@"
-
-ViridianCityText14: ; 19232 (6:5232)
- TX_FAR _ViridianCityText14
- db "@"
-
-PewterCityScript: ; 19237 (6:5237)
- call EnableAutoTextBoxDrawing
- ld hl, PewterCityScriptPointers
- ld a, [W_PEWTERCITYCURSCRIPT]
- jp CallFunctionInTable
-
-PewterCityScriptPointers: ; 19243 (6:5243)
- dw PewterCityScript0
- dw PewterCityScript1
- dw PewterCityScript2
- dw PewterCityScript3
- dw PewterCityScript4
- dw PewterCityScript5
- dw PewterCityScript6
-
-PewterCityScript0: ; 19251 (6:5251)
- xor a
- ld [W_MUSEUM1FCURSCRIPT], a
- ld hl, $d754
- res 0, [hl]
- call PewterCityScript_1925e
- ret
-
-PewterCityScript_1925e: ; 1925e (6:525e)
- ld a, [$d755]
- bit 7, a
- ret nz
- ld hl, CoordsData_19277
- call ArePlayerCoordsInArray
- ret nc
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $5
- ld [$ff8c], a
- jp DisplayTextID
-
-CoordsData_19277: ; 19277 (6:5277)
- db $11,$23
- db $11,$24
- db $12,$25
- db $13,$25
- db $ff
-
-PewterCityScript1: ; 19280 (6:5280)
- ld a, [$cc57]
- and a
- ret nz
- ld a, $3
- ld [$ff8c], a
- ld a, $4
- ld [$ff8d], a
- call Func_34a6
- ld a, $34
- ld [$ff8d], a
- call Func_34b9
- call Func_2307
- ld hl, wFlags_0xcd60
- set 4, [hl]
- ld a, $d
- ld [$ff8c], a
- call DisplayTextID
- ld a, $3c
- ld [$ffeb], a
- ld a, $30
- ld [$ffec], a
- ld a, $c
- ld [$ffed], a
- ld a, $11
- ld [$ffee], a
- ld a, $3
- ld [$cf13], a
- call Func_32f9
- ld a, $3
- ld [$ff8c], a
- ld de, MovementData_PewterMuseumGuyExit ; $52ce
- call MoveSprite
- ld a, $2
- ld [W_PEWTERCITYCURSCRIPT], a
- ret
-
-MovementData_PewterMuseumGuyExit: ; 192ce (6:52ce)
- db $00,$00,$00,$00,$FF
-
-PewterCityScript2: ; 192d3 (6:52d3)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $3
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $3
- ld [W_PEWTERCITYCURSCRIPT], a
- ret
-
-PewterCityScript3: ; 192e9 (6:52e9)
- ld a, $3
- ld [$cf13], a
- call Func_32fe
- ld a, $3
- ld [$cc4d], a
- ld a, $15
- call Predef
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_PEWTERCITYCURSCRIPT], a
- ret
-
-PewterCityScript4: ; 19305 (6:5305)
- ld a, [$cc57]
- and a
- ret nz
- ld a, $5
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
- call Func_34a6
- ld a, $18
- ld [$ff8d], a
- call Func_34b9
- call Func_2307
- ld hl, wFlags_0xcd60
- set 4, [hl]
- ld a, $e
- ld [$ff8c], a
- call DisplayTextID
- ld a, $3c
- ld [$ffeb], a
- ld a, $40
- ld [$ffec], a
- ld a, $16
- ld [$ffed], a
- ld a, $10
- ld [$ffee], a
- ld a, $5
- ld [$cf13], a
- call Func_32f9
- ld a, $5
- ld [$ff8c], a
- ld de, MovementData_PewterGymGuyExit
- call MoveSprite
- ld a, $5
- ld [W_PEWTERCITYCURSCRIPT], a
- ret
-
-MovementData_PewterGymGuyExit: ; 19353 (6:5353)
- db $C0,$C0,$C0,$C0,$C0,$FF
-
-PewterCityScript5: ; 19359 (6:5359)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $4
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $6
- ld [W_PEWTERCITYCURSCRIPT], a
- ret
-
-PewterCityScript6: ; 1936f (6:536f)
- ld a, $5
- ld [$cf13], a
- call Func_32fe
- ld a, $4
- ld [$cc4d], a
- ld a, $15
- call Predef
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_PEWTERCITYCURSCRIPT], a
- ret
-
-PewterCityTextPointers: ; 1938b (6:538b)
- dw PewterCityText1
- dw PewterCityText2
- dw PewterCityText3
- dw PewterCityText4
- dw PewterCityText5
- dw PewterCityText6
- dw PewterCityText7
- dw MartSignText
- dw PokeCenterSignText
- dw PewterCityText10
- dw PewterCityText11
- dw PewterCityText12
- dw PewterCityText13
- dw PewterCityText14
-
-PewterCityText1: ; 193a7 (6:53a7)
- TX_FAR _PewterCityText1
- db "@"
-
-PewterCityText2: ; 193ac (6:53ac)
- TX_FAR _PewterCityText2
- db "@"
-
-PewterCityText3: ; 193b1 (6:53b1)
- db $08 ; asm
- ld hl, UnnamedText_193f1
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_f46a9 ; 0x193bf
- ld hl, UnnamedText_193f6
- call PrintText
- jr .asm_ac429 ; 0x193c7
-.asm_f46a9 ; 0x193c9
- ld hl, UnnamedText_193fb
- call PrintText
- xor a
- ldh [$b3], a
- ldh [$b4], a
- ld [$cf10], a
- ld a, $2
- ld [$cc57], a
- ldh a, [$b8]
- ld [$cc58], a
- ld a, $3
- ld [$cf13], a
- call Func_32f4
- ld a, $1
- ld [W_PEWTERCITYCURSCRIPT], a
-.asm_ac429 ; 0x193ee
- jp TextScriptEnd
-
-UnnamedText_193f1: ; 193f1 (6:53f1)
- TX_FAR _UnnamedText_193f1
- db "@"
-
-UnnamedText_193f6: ; 193f6 (6:53f6)
- TX_FAR _UnnamedText_193f6
- db "@"
-
-UnnamedText_193fb: ; 193fb (6:53fb)
- TX_FAR _UnnamedText_193fb
- db "@"
-
-PewterCityText13: ; 19400 (6:5400)
- TX_FAR _PewterCityText13
- db "@"
-
-PewterCityText4: ; 19405 (6:5405)
- db $8
- ld hl, UnnamedText_19427
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- cp $0
- jr nz, .asm_e4603
- ld hl, UnnamedText_1942c
- call PrintText
- jr .asm_e4604 ; 0x1941c $6
-.asm_e4603
- ld hl, UnnamedText_19431
- call PrintText
-.asm_e4604 ; 0x19424
- jp TextScriptEnd
-
-UnnamedText_19427: ; 19427 (6:5427)
- TX_FAR _UnnamedText_19427
- db "@"
-
-UnnamedText_1942c: ; 1942c (6:542c)
- TX_FAR _UnnamedText_1942c
- db "@"
-
-UnnamedText_19431: ; 19431 (6:5431)
- TX_FAR _UnnamedText_19431
- db "@"
-
-PewterCityText5: ; 19436 (6:5436)
- db $08 ; asm
- ld hl, UnnamedText_1945d
- call PrintText
- xor a
- ldh [$b4], a
- ld [$cf10], a
- ld a, $3
- ld [$cc57], a
- ldh a, [$b8]
- ld [$cc58], a
- ld a, $5
- ld [$cf13], a
- call Func_32f4
- ld a, $4
- ld [W_PEWTERCITYCURSCRIPT], a
- jp TextScriptEnd
-
-UnnamedText_1945d: ; 1945d (6:545d)
- TX_FAR _UnnamedText_1945d
- db "@"
-
-PewterCityText14: ; 19462 (6:5462)
-
-UnnamedText_19462: ; 19462 (6:5462)
- TX_FAR _UnnamedText_19462
- db "@"
-
-PewterCityText6: ; 19467 (6:5467)
- TX_FAR _PewterCityText6
- db "@"
-
-PewterCityText7: ; 1946c (6:546c)
- TX_FAR _PewterCityText7
- db "@"
-
-PewterCityText10: ; 19471 (6:5471)
- TX_FAR _PewterCityText10
- db "@"
-
-PewterCityText11: ; 19476 (6:5476)
- TX_FAR _PewterCityText11
- db "@"
-
-PewterCityText12: ; 1947b (6:547b)
- TX_FAR _PewterCityText12
- db "@"
-
-CeruleanCityScript: ; 19480 (6:5480)
- call EnableAutoTextBoxDrawing
- ld hl, CeruleanCityScriptPointers
- ld a, [W_CERULEANCITYCURSCRIPT]
- jp CallFunctionInTable
-
-CeruleanCityScript_1948c: ; 1948c (6:548c)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_CERULEANCITYCURSCRIPT], a
- ld a, $5
- ld [$cc4d], a
- ld a, $11
- jp Predef
-
-CeruleanCityScriptPointers: ; 1949d (6:549d)
- dw CeruleanCityScript0
- dw CeruleanCityScript1
- dw CeruleanCityScript2
- dw CeruleanCityScript3
- dw CeruleanCityScript4
-
-CeruleanCityScript4: ; 194a7 (6:54a7)
- ld a, [W_ISINBATTLE]
- cp $ff
- jp z, CeruleanCityScript_1948c
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d75b
- set 7, [hl]
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_CERULEANCITYCURSCRIPT], a
- ret
-
-CeruleanCityScript0: ; 194c8 (6:54c8)
- ld a, [$d75b]
- bit 7, a
- jr nz, .asm_194f7 ; 0x194cd $28
- ld hl, CeruleanCityCoords1
- call ArePlayerCoordsInArray
- jr nc, .asm_194f7 ; 0x194d5 $20
- ld a, [$cd3d]
- cp $1
- ld a, $8
- ld b, $0
- jr nz, .asm_194e6 ; 0x194e0 $4
- ld a, $4
- ld b, $4
-.asm_194e6
- ld [$d528], a
- ld a, b
- ld [$c129], a
- call Delay3
- ld a, $2
- ld [$ff8c], a
- jp DisplayTextID
-.asm_194f7
- ld a, [$d75a]
- bit 0, a
- ret nz
- ld hl, CeruleanCityCoords2
- call ArePlayerCoordsInArray
- ret nc
- ld a, [$d700]
- and a
- jr z, .asm_19512 ; 0x19508 $8
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
-.asm_19512
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, [$d362]
- cp $14
- jr z, .asm_19535 ; 0x19526 $d
- ld a, $1
- ld [$ff8c], a
- ld a, $5
- ld [$ff8b], a
- call Func_3500
- ld [hl], $19
-.asm_19535
- ld a, $5
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld de, CeruleanCityMovement1
- ld a, $1
- ld [$ff8c], a
- call MoveSprite
- ld a, $1
- ld [W_CERULEANCITYCURSCRIPT], a
- ret
-
-CeruleanCityCoords1: ; 1954f (6:554f)
- db $07,$1e
- db $09,$1e
- db $ff
-
-CeruleanCityCoords2: ; 19554 (6:5554)
- db $06,$14
- db $06,$15
- db $ff
-
-CeruleanCityMovement1: ; 19559 (6:5559)
- db $00,$00,$00,$FF
-
-CeruleanCityScript_1955d: ; 1955d (6:555d)
- ld a,1
- ld [$ff8c],a
- xor a
- ld [$ff8d],a
- jp Func_34a6 ; face object
-
-CeruleanCityScript1: ; 19567 (6:5567)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_1966d
- ld de, UnnamedText_19672
- call PreBattleSaveRegisters
- ld a, $e1
- ld [$d059], a
-
- ; select which team to use during the encounter
- ld a, [W_RIVALSTARTER]
- cp SQUIRTLE
- jr nz, .NotSquirtle ; 0x19592 $4
- ld a, $7
- jr .done
-.NotSquirtle
- cp BULBASAUR
- jr nz, .Charmander ; 0x1959a $4
- ld a, $8
- jr .done
-.Charmander
- ld a, $9
-.done
- ld [W_TRAINERNO], a
-
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- call CeruleanCityScript_1955d
- ld a, $2
- ld [W_CERULEANCITYCURSCRIPT], a
- ret
-
-CeruleanCityScript2: ; 195b1 (6:55b1)
- ld a, [$d057]
- cp $ff
- jp z, CeruleanCityScript_1948c
- call CeruleanCityScript_1955d
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d75a
- set 0, [hl]
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld a, $1
- ld [$ff8c], a
- call SetSpriteMovementBytesToFF
- ld a, [$d362]
- cp $14
- jr nz, .asm_195f0 ; 0x195e9 $5
- ld de, CeruleanCityMovement4
- jr .asm_195f3 ; 0x195ee $3
-.asm_195f0
- ld de, CeruleanCityMovement3
-.asm_195f3
- ld a, $1
- ld [$ff8c], a
- call MoveSprite
- ld a, $3
- ld [W_CERULEANCITYCURSCRIPT], a
- ret
-
-CeruleanCityMovement3: ; 19600 (6:5600)
- db $80,$00,$00,$00,$00,$00,$00,$FF
-
-CeruleanCityMovement4: ; 19608 (6:5608)
- db $c0,$00,$00,$00,$00,$00,$00,$FF
-
-CeruleanCityScript3: ; 19610 (6:5610)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $5
- ld [$cc4d], a
- ld a, $11
- call Predef
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- call Func_2307
- ld a, $0
- ld [W_CERULEANCITYCURSCRIPT], a
- ret
-
-CeruleanCityTextPointers: ; 1962d (6:562d)
- dw CeruleanCityText1
- dw CeruleanCityText2
- dw CeruleanCityText3
- dw CeruleanCityText4
- dw CeruleanCityText5
- dw CeruleanCityText6
- dw CeruleanCityText7
- dw CeruleanCityText8
- dw CeruleanCityText9
- dw CeruleanCityText10
- dw CeruleanCityText11
- dw CeruleanCityText12
- dw CeruleanCityText13
- dw MartSignText
- dw PokeCenterSignText
- dw CeruleanCityText16
- dw CeruleanCityText17
-
-CeruleanCityText1: ; 1964f (6:564f)
- db $08 ; asm
- ld a, [$d75a] ; rival battle flag
- bit 0, a
- ; do pre-battle text
- jr z, .PreBattleText
- ; or talk about bill
- ld hl, UnnamedText_19677
- call PrintText
- jr .end ; 0x1965d
-.PreBattleText ; 0x1965f
- ld hl, UnnamedText_19668
- call PrintText
-.end ; 0x19665
- jp TextScriptEnd
-
-UnnamedText_19668: ; 19668 (6:5668)
- TX_FAR _UnnamedText_19668
- db "@"
-
-UnnamedText_1966d: ; 1966d (6:566d)
- TX_FAR _UnnamedText_1966d
- db "@"
-
-UnnamedText_19672: ; 19672 (6:5672)
- TX_FAR _UnnamedText_19672
- db "@"
-
-UnnamedText_19677: ; 19677 (6:5677)
- TX_FAR _UnnamedText_19677
- db "@"
-
-CeruleanCityText2: ; 1967c (6:567c)
- db $8
- ld a, [$d75b]
- bit 7, a
- jr nz, .asm_4ca20 ; 0x19682 $29
- ld hl, UnnamedText_196d9
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_196ee
- ld de, UnnamedText_196ee
- call PreBattleSaveRegisters
- ld a, [$ff8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $4
- ld [W_CERULEANCITYCURSCRIPT], a
- jp TextScriptEnd
-.asm_4ca20 ; 0x196ad
- ld hl, UnnamedText_196f3
- call PrintText
- ld bc, $e401
- call GiveItem
- jr c, .Success
- ld hl, TM28NoRoomText
- call PrintText
- jr .Done
-.Success
- ld a, $1
- ld [$cc3c], a
- ld hl, ReceivedTM28Text
- call PrintText
- callba Func_74872
-.Done
- jp TextScriptEnd
-
-UnnamedText_196d9: ; 196d9 (6:56d9)
- TX_FAR _UnnamedText_196d9
- db "@"
-
-ReceivedTM28Text: ; 196de (6:56de)
- TX_FAR _ReceivedTM28Text ; 0xa4f82
- db $0B
- TX_FAR _ReceivedTM28Text2 ; 0xa4f96
- db $0D, "@"
-
-TM28NoRoomText: ; 196e9 (6:56e9)
- TX_FAR _TM28NoRoomText
- db "@"
-
-UnnamedText_196ee: ; 196ee (6:56ee)
- TX_FAR _UnnamedText_196ee
- db "@"
-
-UnnamedText_196f3: ; 196f3 (6:56f3)
- TX_FAR _UnnamedText_196f3
- db "@"
-
-CeruleanCityText3: ; 196f8 (6:56f8)
- TX_FAR _CeruleanCityText3
- db "@"
-
-CeruleanCityText4: ; 196fd (6:56fd)
- TX_FAR _CeruleanCityText4
- db "@"
-
-CeruleanCityText5: ; 19702 (6:5702)
- TX_FAR _CeruleanCityText5
- db "@"
-
-CeruleanCityText11: ; 19707 (6:5707)
-CeruleanCityText6: ; 19707 (6:5707)
- TX_FAR _CeruleanCityText6
- db "@"
-
-CeruleanCityText7: ; 1970c (6:570c)
- db $08 ; asm
- ldh a, [$d3]
- cp $b4
- jr c, .asm_e9fc9 ; 0x19711
- ld hl, UnnamedText_19730
- call PrintText
- jr .asm_d486e ; 0x19719
-.asm_e9fc9 ; 0x1971b
- cp $64
- jr c, .asm_df99b ; 0x1971d
- ld hl, UnnamedText_19735
- call PrintText
- jr .asm_d486e ; 0x19725
-.asm_df99b ; 0x19727
- ld hl, UnnamedText_1973a
- call PrintText
-.asm_d486e ; 0x1972d
- jp TextScriptEnd
-
-UnnamedText_19730: ; 19730 (6:5730)
- TX_FAR _UnnamedText_19730
- db "@"
-
-UnnamedText_19735: ; 19735 (6:5735)
- TX_FAR _UnnamedText_19735
- db "@"
-
-UnnamedText_1973a: ; 1973a (6:573a)
- TX_FAR _UnnamedText_1973a
- db "@"
-
-CeruleanCityText8: ; 1973f (6:573f)
- db $08 ; asm
- ldh a, [$d3]
- cp $b4
- jr c, .asm_e28da ; 0x19744
- ld hl, UnnamedText_1976f
- call PrintText
- jr .asm_f2f38 ; 0x1974c
-.asm_e28da ; 0x1974e
- cp $78
- jr c, .asm_15d08 ; 0x19750
- ld hl, UnnamedText_19774
- call PrintText
- jr .asm_f2f38 ; 0x19758
-.asm_15d08 ; 0x1975a
- cp $3c
- jr c, .asm_d7fea ; 0x1975c
- ld hl, UnnamedText_19779
- call PrintText
- jr .asm_f2f38 ; 0x19764
-.asm_d7fea ; 0x19766
- ld hl, UnnamedText_1977e
- call PrintText
-.asm_f2f38 ; 0x1976c
- jp TextScriptEnd
-
-UnnamedText_1976f: ; 1976f (6:576f)
- TX_FAR _UnnamedText_1976f
- db "@"
-
-UnnamedText_19774: ; 19774 (6:5774)
- TX_FAR _UnnamedText_19774
- db "@"
-
-UnnamedText_19779: ; 19779 (6:5779)
- TX_FAR _UnnamedText_19779
- db "@"
-
-UnnamedText_1977e: ; 1977e (6:577e)
- TX_FAR _UnnamedText_1977e
- db "@"
-
-CeruleanCityText9: ; 19783 (6:5783)
- TX_FAR _CeruleanCityText9
- db "@"
-
-CeruleanCityText10: ; 19788 (6:5788)
- TX_FAR _CeruleanCityText10
- db "@"
-
-CeruleanCityText12: ; 1978d (6:578d)
- TX_FAR _CeruleanCityText12
- db "@"
-
-CeruleanCityText13: ; 19792 (6:5792)
- TX_FAR _CeruleanCityText13
- db "@"
-
-CeruleanCityText16: ; 19797 (6:5797)
- TX_FAR _CeruleanCityText16
- db "@"
-
-CeruleanCityText17: ; 1979c (6:579c)
- TX_FAR _CeruleanCityText17
- db "@"
-
-VermilionCityScript: ; 197a1 (6:57a1)
- call EnableAutoTextBoxDrawing
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- push hl
- call nz, VermilionCityScript_197cb
- pop hl
- bit 5, [hl]
- res 5, [hl]
- call nz, VermilionCityScript_197c0
- ld hl, VermilionCityScriptPointers
- ld a, [W_VERMILIONCITYCURSCRIPT]
- jp CallFunctionInTable
-
-VermilionCityScript_197c0: ; 197c0 (6:57c0)
- call GenRandom
- ld a, [$ffd4]
- and $e
- ld [$d743], a
- ret
-
-VermilionCityScript_197cb: ; 197cb (6:57cb)
- ld hl, $d803
- bit 2, [hl]
- ret z
- bit 3, [hl]
- set 3, [hl]
- ret nz
- ld a, $2
- ld [W_VERMILIONCITYCURSCRIPT], a
- ret
-
-VermilionCityScriptPointers: ; 197dc (6:57dc)
- dw VermilionCityScript0
- dw VermilionCityScript1
- dw VermilionCityScript2
- dw VermilionCityScript3
- dw VermilionCityScript4
-
-VermilionCityScript0: ; 197e6 (6:57e6)
- ld a, [$c109]
- and a
- ret nz
- ld hl, CoordsData_19823
- call ArePlayerCoordsInArray
- ret nc
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [$cf0d], a
- ld a, $3
- ld [$ff8c], a
- call DisplayTextID
- ld a, [$d803]
- bit 2, a
- jr nz, .asm_19810 ; 0x19804 $a
- ld b, $3f
- ld a, $1c
- call Predef
- ld a, b
- and a
- ret nz
-.asm_19810
- ld a, $40
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- call Func_3486
- ld a, $1
- ld [W_VERMILIONCITYCURSCRIPT], a
- ret
-
-CoordsData_19823: ; 19823 (6:5823)
- db $1e,$12
- db $ff
-
-VermilionCityScript4: ; 19826 (6:5826)
- ld hl, CoordsData_19823
- call ArePlayerCoordsInArray
- ret c
- ld a, $0
- ld [W_VERMILIONCITYCURSCRIPT], a
- ret
-
-VermilionCityScript2: ; 19833 (6:5833)
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $40
- ld [$ccd3], a
- ld [$ccd4], a
- ld a, $2
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_VERMILIONCITYCURSCRIPT], a
- ret
-
-VermilionCityScript3: ; 1984e (6:584e)
- ld a, [$cd38]
- and a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $0
- ld [W_VERMILIONCITYCURSCRIPT], a
- ret
-
-VermilionCityScript1: ; 1985f (6:585f)
- ld a, [$cd38]
- and a
- ret nz
- ld c, $a
- call DelayFrames
- ld a, $0
- ld [W_VERMILIONCITYCURSCRIPT], a
- ret
-
-VermilionCityTextPointers: ; 1986f (6:586f)
- dw VermilionCityText1
- dw VermilionCityText2
- dw VermilionCityText3
- dw VermilionCityText4
- dw VermilionCityText5
- dw VermilionCityText6
- dw VermilionCityText7
- dw VermilionCityText8
- dw MartSignText
- dw PokeCenterSignText
- dw VermilionCityText11
- dw VermilionCityText12
- dw VermilionCityText13
-
-VermilionCityText1: ; 19889 (6:5889)
- TX_FAR _VermilionCityText1
- db "@"
-
-VermilionCityText2: ; 1988e (6:588e)
- db $08 ; asm
- ld a, [$d803]
- bit 2, a
- jr nz, .asm_359bd ; 0x19894
- ld hl, UnnamedText_198a7
- call PrintText
- jr .asm_735d9 ; 0x1989c
-.asm_359bd ; 0x1989e
- ld hl, UnnamedText_198ac
- call PrintText
-.asm_735d9 ; 0x198a4
- jp TextScriptEnd
-
-UnnamedText_198a7: ; 198a7 (6:58a7)
- TX_FAR _UnnamedText_198a7
- db "@"
-
-UnnamedText_198ac: ; 198ac (6:58ac)
- TX_FAR _UnnamedText_198ac
- db "@"
-
-VermilionCityText3: ; 198b1 (6:58b1)
- db $08 ; asm
- ld a, [$d803]
- bit 2, a
- jr nz, .asm_3e0e9 ; 0x198b7
- ld a, [$c109]
- cp $c
- jr z, .asm_07af3 ; 0x198be
- ld hl, VermilionCityCoords1
- call ArePlayerCoordsInArray
- jr nc, .asm_57b73 ; 0x198c6
-.asm_07af3 ; 0x198c8
- ld hl, SSAnneWelcomeText4
- call PrintText
- jr .asm_79bd1 ; 0x198ce
-.asm_57b73 ; 0x198d0
- ld hl, SSAnneWelcomeText9
- call PrintText
- ld b, $3f
- ld a, $1c
- call Predef
- ld a, b
- and a
- jr nz, .asm_0419b ; 0x198df
- ld hl, SSAnneNoTicketText
- call PrintText
- jr .asm_79bd1 ; 0x198e7
-.asm_0419b ; 0x198e9
- ld hl, SSAnneFlashedTicketText
- call PrintText
- ld a, $4
- ld [W_VERMILIONCITYCURSCRIPT], a
- jr .asm_79bd1 ; 0x198f4
-.asm_3e0e9 ; 0x198f6
- ld hl, SSAnneNotHereText
- call PrintText
-.asm_79bd1 ; 0x198fc
- jp TextScriptEnd
-
-VermilionCityCoords1: ; 198ff (6:58ff)
- db $1d,$13
- db $1f,$13
- db $ff
-
-SSAnneWelcomeText4: ; 19904 (6:5904)
- TX_FAR _SSAnneWelcomeText4
- db "@"
-
-SSAnneWelcomeText9: ; 19909 (6:5909)
- TX_FAR _SSAnneWelcomeText9
- db "@"
-
-SSAnneFlashedTicketText: ; 1990e (6:590e)
- TX_FAR _SSAnneFlashedTicketText
- db "@"
-
-SSAnneNoTicketText: ; 19913 (6:5913)
- TX_FAR _SSAnneNoTicketText
- db "@"
-
-SSAnneNotHereText: ; 19918 (6:5918)
- TX_FAR _SSAnneNotHereText
- db "@"
-
-VermilionCityText4: ; 1991d (6:591d)
- TX_FAR _VermilionCityText4
- db "@"
-
-VermilionCityText5: ; 19922 (6:5922)
- TX_FAR _VermilionCityText5
- db $08 ; asm
- ld a, MACHOP
- call PlayCry
- call WaitForSoundToFinish
- ld hl, VermilionCityText14 ; $5933
- ret
-
-VermilionCityText14: ; 19933 (6:5933)
- TX_FAR _VermilionCityText14
- db "@"
-
-VermilionCityText6: ; 19938 (6:5938)
- TX_FAR _VermilionCityText6
- db "@"
-
-VermilionCityText7: ; 1993d (6:593d)
- TX_FAR _VermilionCityText7
- db "@"
-
-VermilionCityText8: ; 19942 (6:5942)
- TX_FAR _VermilionCityText8
- db "@"
-
-VermilionCityText11: ; 19947 (6:5947)
- TX_FAR _VermilionCityText11
- db "@"
-
-VermilionCityText12: ; 1994c (6:594c)
- TX_FAR _VermilionCityText12
- db "@"
-
-VermilionCityText13: ; 19951 (6:5951)
- TX_FAR _VermilionCityText13
- db "@"
-
-CeladonCityScript: ; 19956 (6:5956)
- call EnableAutoTextBoxDrawing
- ld hl, $d77e
- res 0, [hl]
- res 7, [hl]
- ld hl, $d816
- res 7, [hl]
- ret
-
-CeladonCityTextPointers: ; 19966 (6:5966)
- dw CeladonCityText1
- dw CeladonCityText2
- dw CeladonCityText3
- dw CeladonCityText4
- dw CeladonCityText5
- dw CeladonCityText6
- dw CeladonCityText7
- dw CeladonCityText8
- dw CeladonCityText9
- dw CeladonCityText10
- dw CeladonCityText11
- dw PokeCenterSignText
- dw CeladonCityText13
- dw CeladonCityText14
- dw CeladonCityText15
- dw CeladonCityText16
- dw CeladonCityText17
- dw CeladonCityText18
-
-CeladonCityText1: ; 1998a (6:598a)
- TX_FAR _CeladonCityText1
- db "@"
-
-CeladonCityText2: ; 1998f (6:598f)
- TX_FAR _CeladonCityText2
- db "@"
-
-CeladonCityText3: ; 19994 (6:5994)
- TX_FAR _CeladonCityText3
- db "@"
-
-CeladonCityText4: ; 19999 (6:5999)
- TX_FAR _CeladonCityText4
- db "@"
-
-CeladonCityText5: ; 1999e (6:599e)
- db $08 ; asm
- ld a, [$d777]
- bit 0, a
- jr nz, .asm_7053f ; 0x199a4
- ld hl, TM41PreText
- call PrintText
- ld bc, (TM_41 << 8) | 1
- call GiveItem
- jr c, .Success
- ld hl, TM41NoRoomText
- call PrintText
- jr .Done
-.Success
- ld hl, ReceivedTM41Text
- call PrintText
- ld hl, $d777
- set 0, [hl]
- jr .Done
-.asm_7053f ; 0x199c9
- ld hl, TM41ExplanationText
- call PrintText
-.Done
- jp TextScriptEnd
-
-TM41PreText: ; 199d2 (6:59d2)
- TX_FAR _TM41PreText
- db "@"
-
-ReceivedTM41Text: ; 199d7 (6:59d7)
- TX_FAR _ReceivedTM41Text ; 0xa5b5a
- db $0B, "@"
-
-TM41ExplanationText: ; 199dd (6:59dd)
- TX_FAR _TM41ExplanationText
- db "@"
-
-TM41NoRoomText: ; 199e2 (6:59e2)
- TX_FAR _TM41NoRoomText
- db "@"
-
-CeladonCityText6: ; 199e7 (6:59e7)
- TX_FAR _CeladonCityText6
- db "@"
-
-CeladonCityText7: ; 199ec (6:59ec)
- TX_FAR _CeladonCityText7
- db $08 ; asm
- ld a, POLIWRATH
- call PlayCry
- jp TextScriptEnd
-
-CeladonCityText8: ; 199f9 (6:59f9)
- TX_FAR _CeladonCityText8
- db "@"
-
-CeladonCityText9: ; 199fe (6:59fe)
- TX_FAR _CeladonCityText9
- db "@"
-
-CeladonCityText10: ; 19a03 (6:5a03)
- TX_FAR _CeladonCityText10
- db "@"
-
-CeladonCityText11: ; 19a08 (6:5a08)
- TX_FAR _CeladonCityText11
- db "@"
-
-CeladonCityText13: ; 19a0d (6:5a0d)
- TX_FAR _CeladonCityText13
- db "@"
-
-CeladonCityText14: ; 19a12 (6:5a12)
- TX_FAR _CeladonCityText14
- db "@"
-
-CeladonCityText15: ; 19a17 (6:5a17)
- TX_FAR _CeladonCityText15
- db "@"
-
-CeladonCityText16: ; 19a1c (6:5a1c)
- TX_FAR _CeladonCityText16
- db "@"
-
-CeladonCityText17: ; 19a21 (6:5a21)
- TX_FAR _CeladonCityText17
- db "@"
-
-CeladonCityText18: ; 19a26 (6:5a26)
- TX_FAR _CeladonCityText18
- db "@"
-
-FuchsiaCityScript: ; 19a2b (6:5a2b)
- jp EnableAutoTextBoxDrawing
-
-FuchsiaCityTextPointers: ; 19a2e (6:5a2e)
- dw FuchsiaCityText1
- dw FuchsiaCityText2
- dw FuchsiaCityText3
- dw FuchsiaCityText4
- dw FuchsiaCityText5
- dw FuchsiaCityText6
- dw FuchsiaCityText7
- dw FuchsiaCityText8
- dw FuchsiaCityText9
- dw FuchsiaCityText10
- dw FuchsiaCityText11
- dw FuchsiaCityText12
- dw FuchsiaCityText13
- dw MartSignText
- dw PokeCenterSignText
- dw FuchsiaCityText16
- dw FuchsiaCityText17
- dw FuchsiaCityText18
- dw FuchsiaCityText19
- dw FuchsiaCityText20
- dw FuchsiaCityText21
- dw FuchsiaCityText22
- dw FuchsiaCityText23
- dw FuchsiaCityText24
-
-FuchsiaCityText1: ; 19a5e (6:5a5e)
- TX_FAR _FuchsiaCityText1
- db "@"
-
-FuchsiaCityText2: ; 19a63 (6:5a63)
- TX_FAR _FuchsiaCityText2
- db "@"
-
-FuchsiaCityText3: ; 19a68 (6:5a68)
- TX_FAR _FuchsiaCityText3
- db "@"
-
-FuchsiaCityText4: ; 19a6d (6:5a6d)
- TX_FAR _FuchsiaCityText4
- db "@"
-
-FuchsiaCityText5: ; 19a72 (6:5a72)
-FuchsiaCityText6: ; 19a72 (6:5a72)
-FuchsiaCityText7: ; 19a72 (6:5a72)
-FuchsiaCityText8: ; 19a72 (6:5a72)
-FuchsiaCityText9: ; 19a72 (6:5a72)
-FuchsiaCityText10: ; 19a72 (6:5a72)
- TX_FAR _FuchsiaCityText5
- db "@"
-
-FuchsiaCityText12: ; 19a77 (6:5a77)
-FuchsiaCityText11: ; 19a77 (6:5a77)
- TX_FAR _FuchsiaCityText11
- db "@"
-
-FuchsiaCityText13: ; 19a7c (6:5a7c)
- TX_FAR _FuchsiaCityText13
- db "@"
-
-FuchsiaCityText16: ; 19a81 (6:5a81)
- TX_FAR _FuchsiaCityText16
- db "@"
-
-FuchsiaCityText17: ; 19a86 (6:5a86)
- TX_FAR _FuchsiaCityText17
- db "@"
-
-FuchsiaCityText18: ; 19a8b (6:5a8b)
- TX_FAR _FuchsiaCityText18
- db "@"
-
-FuchsiaCityText19: ; 19a90 (6:5a90)
- db $08 ; asm
- ld hl, FuchsiaCityChanseyText
- call PrintText
- ld a, CHANSEY
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityChanseyText: ; 19a9f (6:5a9f)
- TX_FAR _FuchsiaCityChanseyText
- db "@"
-
-FuchsiaCityText20: ; 19aa4 (6:5aa4)
- db $08 ; asm
- ld hl, FuchsiaCityVoltorbText
- call PrintText
- ld a, VOLTORB
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityVoltorbText: ; 19ab3 (6:5ab3)
- TX_FAR _FuchsiaCityVoltorbText
- db "@"
-
-FuchsiaCityText21: ; 19ab8 (6:5ab8)
- db $08 ; asm
- ld hl, FuchsiaCityKangaskhanText
- call PrintText
- ld a, KANGASKHAN
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityKangaskhanText: ; 19ac7 (6:5ac7)
- TX_FAR _FuchsiaCityKangaskhanText
- db "@"
-
-FuchsiaCityText22: ; 19acc (6:5acc)
- db $08 ; asm
- ld hl, FuchsiaCitySlowpokeText
- call PrintText
- ld a, SLOWPOKE
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCitySlowpokeText: ; 19adb (6:5adb)
- TX_FAR _FuchsiaCitySlowpokeText
- db "@"
-
-FuchsiaCityText23: ; 19ae0 (6:5ae0)
- db $08 ; asm
- ld hl, FuchsiaCityLaprasText
- call PrintText
- ld a, LAPRAS
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityLaprasText: ; 19aef (6:5aef)
- TX_FAR _FuchsiaCityLaprasText
- db "@"
-
-FuchsiaCityText24: ; 19af4 (6:5af4)
- db $08 ; asm
- ld a, [$d7f6]
- bit 6, a
- jr nz, .asm_3b4e8 ; 0x19afa
- bit 7, a
- jr nz, .asm_667d5 ; 0x19afe
- ld hl, UnnamedText_19b2a
- call PrintText
- jr .asm_4343f ; 0x19b06
-.asm_3b4e8 ; 0x19b08
- ld hl, FuchsiaCityOmanyteText
- call PrintText
- ld a, $62
- jr .asm_81556 ; 0x19b10
-.asm_667d5 ; 0x19b12
- ld hl, FuchsiaCityKabutoText
- call PrintText
- ld a, KABUTO
-.asm_81556 ; 0x19b1a
- call DisplayPokedex
-.asm_4343f ; 0x19b1d
- jp TextScriptEnd
-
-FuchsiaCityOmanyteText: ; 19b20 (6:5b20)
- TX_FAR _FuchsiaCityOmanyteText
- db "@"
-
-FuchsiaCityKabutoText: ; 19b25 (6:5b25)
- TX_FAR _FuchsiaCityKabutoText
- db "@"
-
-UnnamedText_19b2a: ; 19b2a (6:5b2a)
- TX_FAR _UnnamedText_19b2a
- db "@"
-
-BluesHouse_h: ; 0x19b2f id=39
- db HOUSE ; tileset
- db BLUES_HOUSE_HEIGHT, BLUES_HOUSE_WIDTH ; dimensions
- dw BluesHouseBlocks, BluesHouseTextPointers, BluesHouseScript
- db 0
- dw BluesHouseObject
-
-BluesHouseScript: ; 19b3b (6:5b3b)
- call EnableAutoTextBoxDrawing
- ld hl,BluesHouseScriptPointers
- ld a,[W_BLUESHOUSECURSCRIPT]
- jp CallFunctionInTable
-
-BluesHouseScriptPointers: ; 19b47 (6:5b47)
- dw BluesHouseScript0
- dw BluesHouseScript1
-
-BluesHouseScript0: ; 19b4b (6:5b4b)
- ld hl,$D74A
- set 1,[hl]
-
- ; trigger the next script
- ld a,1
- ld [W_BLUESHOUSECURSCRIPT],a
- ret
-
-BluesHouseScript1: ; 19b56 (6:5b56)
- ret
-
-BluesHouseTextPointers: ; 19b57 (6:5b57)
- dw BluesHouseText1
- dw BluesHouseText2
- dw BluesHouseText3
-
-BluesHouseText1: ; 19b5d (6:5b5d)
- db 8
- ld a,[$D74A]
- bit 0,a
- jr nz,.GotMap
- ld a,[$D74B]
- bit 5,a
- jr nz,.GiveMap
- ld hl,DaisyInitialText
- call PrintText
- jr .done
-.GiveMap
- ld hl,DaisyOfferMapText
- call PrintText
- ld bc,(TOWN_MAP << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a,$29
- ld [$CC4D],a
- ld a,$11
- call Predef ; hide table map object
- ld hl,GotMapText
- call PrintText
- ld hl,$D74A
- set 0,[hl]
- jr .done
-.GotMap
- ld hl,DaisyUseMapText
- call PrintText
- jr .done
-.BagFull
- ld hl,DaisyBagFullText
- call PrintText
-.done
- jp TextScriptEnd
-
-DaisyInitialText: ; 19baa (6:5baa)
- TX_FAR _DaisyInitialText
- db "@"
-
-DaisyOfferMapText: ; 19baf (6:5baf)
- TX_FAR _DaisyOfferMapText
- db "@"
-
-GotMapText: ; 19bb4 (6:5bb4)
- TX_FAR _GotMapText
- db $11,"@"
-
-DaisyBagFullText: ; 19bba (6:5bba)
- TX_FAR _DaisyBagFullText
- db "@"
-
-DaisyUseMapText: ; 19bbf (6:5bbf)
- TX_FAR _DaisyUseMapText
- db "@"
-
-BluesHouseText2: ; 0x19bc4 Daisy, walking around
- TX_FAR _BluesHouseText2
- db "@"
-
-BluesHouseText3: ; 0x19bc9 map on table
- TX_FAR _BluesHouseText3
- db "@"
-
-BluesHouseObject: ; 19bce (6:5bce)
- db $0A ; border tile
-
- db 2 ; warps
- db 7,2,1,$FF
- db 7,3,1,$FF
-
- db 0 ; signs
-
- db 3 ; people
- db $11,4+3,4+2,$FF,$D3,1 ; Daisy, sitting by map
- db $11,4+4,4+6,$FE,1,ITEM|2,0 ; map on table
- db $41,4+3,4+3,$FF,$FF,ITEM|3,0 ; Daisy, walking around
-
- ; warp-to
- EVENT_DISP BLUES_HOUSE_WIDTH, 7, 2
- EVENT_DISP BLUES_HOUSE_WIDTH, 7, 3
+INCLUDE "data/mapObjects/blueshouse.asm"
BluesHouseBlocks: ; 19bf6 (6:5bf6)
INCBIN "maps/blueshouse.blk"
-VermilionHouse3_h: ; 0x19c06 to 0x19c12 (12 bytes) (bank=6) (id=196)
- db HOUSE ; tileset
- db VERMILION_HOUSE_3_HEIGHT, VERMILION_HOUSE_3_WIDTH ; dimensions (y, x)
- dw VermilionHouse3Blocks, VermilionHouse3TextPointers, VermilionHouse3Script ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionHouse3Object ; objects
-
-VermilionHouse3Script: ; 19c12 (6:5c12)
- jp EnableAutoTextBoxDrawing
-
-VermilionHouse3TextPointers: ; 19c15 (6:5c15)
- dw VermilionHouse3Text1
-
-VermilionHouse3Text1: ; 19c17 (6:5c17)
- db $08 ; asm
- ld a, $4
- ld [wWhichTrade], a
- ld a, $54
- call Predef
- jp TextScriptEnd
-
-VermilionHouse3Object: ; 0x19c25 (size=26)
- db $a ; border tile
+INCLUDE "data/mapHeaders/vermilionhouse3.asm"
- db $2 ; warps
- db $7, $2, $7, $ff
- db $7, $3, $7, $ff
+INCLUDE "scripts/vermilionhouse3.asm"
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_LITTLE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $2
- EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $3
+INCLUDE "data/mapObjects/vermilionhouse3.asm"
VermilionHouse3Blocks: ; 19c3f (6:5c3f)
INCBIN "maps/vermilionhouse3.blk"
-IndigoPlateauLobby_h: ; 0x19c4f to 0x19c5b (12 bytes) (bank=6) (id=174)
- db MART ; tileset
- db INDIGO_PLATEAU_LOBBY_HEIGHT, INDIGO_PLATEAU_LOBBY_WIDTH ; dimensions (y, x)
- dw IndigoPlateauLobbyBlocks, IndigoPlateauLobbyTextPointers, IndigoPlateauLobbyScript ; blocks, texts, scripts
- db $00 ; connections
- dw IndigoPlateauLobbyObject ; objects
+INCLUDE "data/mapHeaders/indigoplateaulobby.asm"
-IndigoPlateauLobbyScript: ; 19c5b (6:5c5b)
- call Func_22fa
- call EnableAutoTextBoxDrawing
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- ret z
- ld hl, $d869
- res 7, [hl]
- ld hl, $d734
- bit 1, [hl]
- res 1, [hl]
- ret z
- ld hl, $d863
- xor a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ret
-
-IndigoPlateauLobbyTextPointers: ; 19c7f (6:5c7f)
- dw IndigoPlateauLobbyText1
- dw IndigoPlateauLobbyText2
- dw IndigoPlateauLobbyText3
- dw IndigoPlateauLobbyText4
- dw IndigoPlateauLobbyText5
-
-IndigoPlateauLobbyText1: ; 19c89 (6:5c89)
- db $ff
-
-IndigoPlateauLobbyText2: ; 19c8a (6:5c8a)
- TX_FAR _IndigoPlateauLobbyText1
- db "@"
+INCLUDE "scripts/indigoplateaulobby.asm"
-IndigoPlateauLobbyText3: ; 19c8f (6:5c8f)
- TX_FAR _IndigoPlateauLobbyText3
- db "@"
-
-IndigoPlateauLobbyText5: ; 19c94 (6:5c94)
- db $f6
-
-IndigoPlateauLobbyObject: ; 0x19c95 (size=58)
- db $0 ; border tile
-
- db $3 ; warps
- db $b, $7, $0, $ff
- db $b, $8, $1, $ff
- db $0, $8, $0, LORELEIS_ROOM
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_NURSE, $5 + 4, $7 + 4, $ff, $d0, $1 ; person
- db SPRITE_GYM_HELPER, $9 + 4, $4 + 4, $ff, $d3, $2 ; person
- db SPRITE_LASS, $1 + 4, $5 + 4, $ff, $d0, $3 ; person
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $4 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $6 + 4, $d + 4, $ff, $d0, $5 ; person
-
- ; warp-to
- EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $7
- EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $8
- EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $0, $8 ; LORELEIS_ROOM
+INCLUDE "data/mapObjects/indigoplateaulobby.asm"
IndigoPlateauLobbyBlocks: ; 19ccf (6:5ccf)
INCBIN "maps/indigoplateaulobby.blk"
-SilphCo4_h: ; 0x19cff to 0x19d0b (12 bytes) (bank=6) (id=209)
- db FACILITY ; tileset
- db SILPH_CO_4F_HEIGHT, SILPH_CO_4F_WIDTH ; dimensions (y, x)
- dw SilphCo4Blocks, SilphCo4TextPointers, SilphCo4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo4Object ; objects
-
-SilphCo4Script: ; 19d0b (6:5d0b)
- call SilphCo4Script_19d21
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo4TrainerHeaders
- ld de, SilphCo4ScriptPointers
- ld a, [W_SILPHCO4CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO4CURSCRIPT], a
- ret
-
-SilphCo4Script_19d21: ; 19d21 (6:5d21)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo4Data19d58
- call SilphCo4Script_19d5d
- call SilphCo4Script_19d89
- ld a, [$d82a]
- bit 0, a
- jr nz, .asm_19d48
- push af
- ld a, $54
- ld [$d09f], a
- ld bc, $0602
- ld a, $17
- call Predef
- pop af
-.asm_19d48
- bit 1, a
- ret nz
- ld a, $54
- ld [$d09f], a
- ld bc, $0406
- ld a, $17
- jp Predef
-
-SilphCo4Data19d58: ; 19d58 (6:5d58)
- db $06, $02, $04, $06, $ff
+INCLUDE "data/mapHeaders/silphco4.asm"
-SilphCo4Script_19d5d: ; 19d5d (6:5d5d)
- push hl
- ld hl, $d73f
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_19d69
- ld a, [hli]
- cp $ff
- jr z, .asm_19d85 ; 0x19d6c $17
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_19d7a ; 0x19d75 $3
- inc hl
- jr .asm_19d69 ; 0x19d78 $ef
-.asm_19d7a
- ld a, [hli]
- cp c
- jr nz, .asm_19d69 ; 0x19d7c $eb
- ld hl, $d73f
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_19d85
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo4Script_19d89: ; 19d89 (6:5d89)
- ld hl, $d82a
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .asm_19d97 ; 0x19d92 $3
- set 0, [hl]
- ret
-.asm_19d97
- set 1, [hl]
- ret
-
-SilphCo4ScriptPointers: ; 19d9a (6:5d9a)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo4TextPointers: ; 19da0 (6:5da0)
- dw SilphCo4Text1
- dw SilphCo4Text2
- dw SilphCo4Text3
- dw SilphCo4Text4
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-SilphCo4TrainerHeaders: ; 19dae (6:5dae)
-SilphCo4TrainerHeader0: ; 19dae (6:5dae)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d829 ; flag's byte
- dw SilphCo4BattleText2 ; 0x5df4 TextBeforeBattle
- dw SilphCo4AfterBattleText2 ; 0x5dfe TextAfterBattle
- dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle
- dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle
-
-SilphCo4TrainerHeader2: ; 19dba (6:5dba)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d829 ; flag's byte
- dw SilphCo4BattleText3 ; 0x5e0d TextBeforeBattle
- dw SilphCo4AfterBattleText3 ; 0x5e17 TextAfterBattle
- dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle
- dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle
-
-SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d829 ; flag's byte
- dw SilphCo4BattleText4 ; 0x5e26 TextBeforeBattle
- dw SilphCo4AfterBattleText4 ; 0x5e30 TextAfterBattle
- dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle
- dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle
-
- db $ff
-
-SilphCo4Text1: ; 19dd3 (6:5dd3)
- db $08 ; asm
- ld hl, UnnamedText_19de0 ; $5de0
- ld de, UnnamedText_19de5 ; $5de5
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_19de0: ; 19de0 (6:5de0)
- TX_FAR _UnnamedText_19de0
- db "@"
-
-UnnamedText_19de5: ; 19de5 (6:5de5)
- TX_FAR _UnnamedText_19de5
- db "@"
+INCLUDE "scripts/silphco4.asm"
-SilphCo4Text2: ; 19dea (6:5dea)
- db $08 ; asm
- ld hl, SilphCo4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo4BattleText2: ; 19df4 (6:5df4)
- TX_FAR _SilphCo4BattleText2
- db "@"
-
-SilphCo4EndBattleText2: ; 19df9 (6:5df9)
- TX_FAR _SilphCo4EndBattleText2
- db "@"
-
-SilphCo4AfterBattleText2: ; 19dfe (6:5dfe)
- TX_FAR _SilphCo4AfterBattleText2
- db "@"
-
-SilphCo4Text3: ; 19e03 (6:5e03)
- db $08 ; asm
- ld hl, SilphCo4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo4BattleText3: ; 19e0d (6:5e0d)
- TX_FAR _SilphCo4BattleText3
- db "@"
-
-SilphCo4EndBattleText3: ; 19e12 (6:5e12)
- TX_FAR _SilphCo4EndBattleText3
- db "@"
-
-SilphCo4AfterBattleText3: ; 19e17 (6:5e17)
- TX_FAR _SilphCo4AfterBattleText3
- db "@"
-
-SilphCo4Text4: ; 19e1c (6:5e1c)
- db $08 ; asm
- ld hl, SilphCo4TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo4BattleText4: ; 19e26 (6:5e26)
- TX_FAR _SilphCo4BattleText4
- db "@"
-
-SilphCo4EndBattleText4: ; 19e2b (6:5e2b)
- TX_FAR _SilphCo4EndBattleText4
- db "@"
-
-SilphCo4AfterBattleText4: ; 19e30 (6:5e30)
- TX_FAR _SilphCo4AfterBattleText4
- db "@"
-
-SilphCo4Object: ; 0x19e35 (size=111)
- db $2e ; border tile
-
- db $7 ; warps
- db $0, $18, $1, SILPH_CO_3F
- db $0, $1a, $1, SILPH_CO_5F
- db $0, $14, $0, SILPH_CO_ELEVATOR
- db $7, $b, $3, SILPH_CO_10F
- db $3, $11, $3, SILPH_CO_6F
- db $f, $3, $4, SILPH_CO_10F
- db $b, $11, $5, SILPH_CO_10F
-
- db $0 ; signs
-
- db $7 ; people
- db SPRITE_LAPRAS_GIVER, $2 + 4, $6 + 4, $ff, $ff, $1 ; person
- db SPRITE_ROCKET, $e + 4, $9 + 4, $ff, $d3, $42, ROCKET + $C8, $1a ; trainer
- db SPRITE_OAK_AIDE, $6 + 4, $e + 4, $ff, $d2, $43, SCIENTIST + $C8, $5 ; trainer
- db SPRITE_ROCKET, $a + 4, $1a + 4, $ff, $d1, $44, ROCKET + $C8, $1b ; trainer
- db SPRITE_BALL, $9 + 4, $3 + 4, $ff, $ff, $85, FULL_HEAL ; item
- db SPRITE_BALL, $7 + 4, $4 + 4, $ff, $ff, $86, MAX_REVIVE ; item
- db SPRITE_BALL, $8 + 4, $5 + 4, $ff, $ff, $87, ESCAPE_ROPE ; item
-
- ; warp-to
- EVENT_DISP SILPH_CO_4F_WIDTH, $0, $18 ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_4F_WIDTH, $0, $1a ; SILPH_CO_5F
- EVENT_DISP SILPH_CO_4F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_4F_WIDTH, $7, $b ; SILPH_CO_10F
- EVENT_DISP SILPH_CO_4F_WIDTH, $3, $11 ; SILPH_CO_6F
- EVENT_DISP SILPH_CO_4F_WIDTH, $f, $3 ; SILPH_CO_10F
- EVENT_DISP SILPH_CO_4F_WIDTH, $b, $11 ; SILPH_CO_10F
+INCLUDE "data/mapObjects/silphco4.asm"
SilphCo4Blocks: ; 19ea4 (6:5ea4)
INCBIN "maps/silphco4.blk"
-SilphCo5_h: ; 0x19f2b to 0x19f37 (12 bytes) (bank=6) (id=210)
- db FACILITY ; tileset
- db SILPH_CO_5F_HEIGHT, SILPH_CO_5F_WIDTH ; dimensions (y, x)
- dw SilphCo5Blocks, SilphCo5TextPointers, SilphCo5Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo5Object ; objects
-
-SilphCo5Script: ; 19f37 (6:5f37)
- call SilphCo5Script_19f4d
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo5TrainerHeaders
- ld de, SilphCo5ScriptPointers
- ld a, [W_SILPHCO5CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO5CURSCRIPT], a
- ret
-
-SilphCo5Script_19f4d: ; 19f4d (6:5f4d)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo5Coords
- call SilphCo4Script_19d5d
- call SilphCo5Script_19f9e
- ld a, [$d82c]
- bit 0, a
- jr nz, .asm_19f74 ; 0x19f63 $f
- push af
- ld a, $5f
- ld [$d09f], a
- ld bc, $0203
- ld a, $17
- call Predef
- pop af
-.asm_19f74
- bit 1, a
- jr nz, .asm_19f87 ; 0x19f76 $f
- push af
- ld a, $5f
- ld [$d09f], a
- ld bc, $0603
- ld a, $17
- call Predef
- pop af
-.asm_19f87
- bit 2, a
- ret nz
- ld a, $5f
- ld [$d09f], a
- ld bc, $0507
- ld a, $17
- jp Predef
-
-SilphCo5Coords: ; 19f97 (6:5f97) ; coords?
- db $02, $03, $06, $03, $05, $07, $ff
+INCLUDE "data/mapHeaders/silphco5.asm"
-SilphCo5Script_19f9e: ; 19f9e (6:5f9e)
- ld hl, $d82c
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .asm_19fac ; 0x19fa7 $3
- set 0, [hl]
- ret
-.asm_19fac
- cp $2
- jr nz, .asm_19fb3 ; 0x19fae $3
- set 1, [hl]
- ret
-.asm_19fb3
- set 2, [hl]
- ret
+INCLUDE "scripts/silphco5.asm"
-SilphCo5ScriptPointers: ; 19fb6 (6:5fb6)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo5TextPointers: ; 19fbc (6:5fbc)
- dw SilphCo5Text1
- dw SilphCo5Text2
- dw SilphCo5Text3
- dw SilphCo5Text4
- dw SilphCo5Text5
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw SilphCo5Text9
- dw SilphCo5Text10
- dw SilphCo5Text11
-
-SilphCo5TrainerHeaders: ; 19fd2 (6:5fd2)
-Silphco5TrainerHeader0: ; 19fd2 (6:5fd2)
- db $2 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d82b ; flag's byte
- dw SilphCo5BattleText2 ; 0x6024 TextBeforeBattle
- dw SilphCo5AfterBattleText2 ; 0x602e TextAfterBattle
- dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle
- dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle
-
-Silphco5TrainerHeader2: ; 19fde (6:5fde)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d82b ; flag's byte
- dw SilphCo5BattleText3 ; 0x603d TextBeforeBattle
- dw SilphCo5AfterBattleText3 ; 0x6047 TextAfterBattle
- dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle
- dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle
-
-Silphco5TrainerHeader3: ; 19fea (6:5fea)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d82b ; flag's byte
- dw SilphCo5BattleText4 ; 0x6056 TextBeforeBattle
- dw SilphCo5AfterBattleText4 ; 0x6060 TextAfterBattle
- dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle
- dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle
-
-Silphco5TrainerHeader4: ; 19ff6 (6:5ff6)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d82b ; flag's byte
- dw SilphCo5BattleText5 ; 0x606f TextBeforeBattle
- dw SilphCo5AfterBattleText5 ; 0x6079 TextAfterBattle
- dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle
- dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle
-
- db $ff
-
-SilphCo5Text1: ; 1a003 (6:6003)
- db $08 ; asm
- ld hl, UnnamedText_1a010 ; $6010
- ld de, UnnamedText_1a015 ; $6015
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_1a010: ; 1a010 (6:6010)
- TX_FAR _UnnamedText_1a010
- db "@"
-
-UnnamedText_1a015: ; 1a015 (6:6015)
- TX_FAR _UnnamedText_1a015
- db "@"
-
-SilphCo5Text2: ; 1a01a (6:601a)
- db $08 ; asm
- ld hl, Silphco5TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText2: ; 1a024 (6:6024)
- TX_FAR _SilphCo5BattleText2
- db "@"
-
-SilphCo5EndBattleText2: ; 1a029 (6:6029)
- TX_FAR _SilphCo5EndBattleText2
- db "@"
-
-SilphCo5AfterBattleText2: ; 1a02e (6:602e)
- TX_FAR _SilphCo5AfterBattleText2
- db "@"
-
-SilphCo5Text3: ; 1a033 (6:6033)
- db $08 ; asm
- ld hl, Silphco5TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText3: ; 1a03d (6:603d)
- TX_FAR _SilphCo5BattleText3
- db "@"
-
-SilphCo5EndBattleText3: ; 1a042 (6:6042)
- TX_FAR _SilphCo5EndBattleText3
- db "@"
-
-SilphCo5AfterBattleText3: ; 1a047 (6:6047)
- TX_FAR _SilphCo5AfterBattleText3
- db "@"
-
-SilphCo5Text4: ; 1a04c (6:604c)
- db $08 ; asm
- ld hl, Silphco5TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText4: ; 1a056 (6:6056)
- TX_FAR _SilphCo5BattleText4
- db "@"
-
-SilphCo5EndBattleText4: ; 1a05b (6:605b)
- TX_FAR _SilphCo5EndBattleText4
- db "@"
-
-SilphCo5AfterBattleText4: ; 1a060 (6:6060)
- TX_FAR _SilphCo5AfterBattleText4
- db "@"
-
-SilphCo5Text5: ; 1a065 (6:6065)
- db $08 ; asm
- ld hl, Silphco5TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText5: ; 1a06f (6:606f)
- TX_FAR _SilphCo5BattleText5
- db "@"
-
-SilphCo5EndBattleText5: ; 1a074 (6:6074)
- TX_FAR _SilphCo5EndBattleText5
- db "@"
-
-SilphCo5AfterBattleText5: ; 1a079 (6:6079)
- TX_FAR _SilphCo5AfterBattleText5
- db "@"
-
-SilphCo5Text9: ; 1a07e (6:607e)
- TX_FAR _SilphCo5Text9
- db "@"
-
-SilphCo5Text10: ; 1a083 (6:6083)
- TX_FAR _SilphCo5Text10
- db "@"
-
-SilphCo5Text11: ; 1a088 (6:6088)
- TX_FAR _SilphCo5Text11
- db "@"
-
-SilphCo5Object: ; 0x1a08d (size=137)
- db $2e ; border tile
-
- db $7 ; warps
- db $0, $18, $1, SILPH_CO_6F
- db $0, $1a, $1, SILPH_CO_4F
- db $0, $14, $0, SILPH_CO_ELEVATOR
- db $3, $1b, $5, SILPH_CO_7F
- db $f, $9, $4, SILPH_CO_9F
- db $5, $b, $4, SILPH_CO_3F
- db $f, $3, $5, SILPH_CO_3F
-
- db $0 ; signs
-
- db $b ; people
- db SPRITE_LAPRAS_GIVER, $9 + 4, $d + 4, $ff, $ff, $1 ; person
- db SPRITE_ROCKET, $10 + 4, $8 + 4, $ff, $d3, $42, ROCKET + $C8, $1c ; trainer
- db SPRITE_OAK_AIDE, $3 + 4, $8 + 4, $ff, $d3, $43, SCIENTIST + $C8, $6 ; trainer
- db SPRITE_ROCKER, $a + 4, $12 + 4, $ff, $d1, $44, JUGGLER + $C8, $1 ; trainer
- db SPRITE_ROCKET, $4 + 4, $1c + 4, $ff, $d1, $45, ROCKET + $C8, $1d ; trainer
- db SPRITE_BALL, $d + 4, $2 + 4, $ff, $ff, $86, TM_09 ; item
- db SPRITE_BALL, $6 + 4, $4 + 4, $ff, $ff, $87, PROTEIN ; item
- db SPRITE_BALL, $10 + 4, $15 + 4, $ff, $ff, $88, CARD_KEY ; item
- db SPRITE_CLIPBOARD, $c + 4, $16 + 4, $ff, $ff, $9 ; person
- db SPRITE_CLIPBOARD, $a + 4, $19 + 4, $ff, $ff, $a ; person
- db SPRITE_CLIPBOARD, $6 + 4, $18 + 4, $ff, $ff, $b ; person
-
- ; warp-to
- EVENT_DISP SILPH_CO_5F_WIDTH, $0, $18 ; SILPH_CO_6F
- EVENT_DISP SILPH_CO_5F_WIDTH, $0, $1a ; SILPH_CO_4F
- EVENT_DISP SILPH_CO_5F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_5F_WIDTH, $3, $1b ; SILPH_CO_7F
- EVENT_DISP SILPH_CO_5F_WIDTH, $f, $9 ; SILPH_CO_9F
- EVENT_DISP SILPH_CO_5F_WIDTH, $5, $b ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_5F_WIDTH, $f, $3 ; SILPH_CO_3F
+INCLUDE "data/mapObjects/silphco5.asm"
SilphCo5Blocks: ; 1a116 (6:6116)
INCBIN "maps/silphco5.blk"
-SilphCo6_h: ; 0x1a19d to 0x1a1a9 (12 bytes) (bank=6) (id=211)
- db FACILITY ; tileset
- db SILPH_CO_6F_HEIGHT, SILPH_CO_6F_WIDTH ; dimensions (y, x)
- dw SilphCo6Blocks, SilphCo6TextPointers, SilphCo6Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo6Object ; objects
+INCLUDE "data/mapHeaders/silphco6.asm"
-SilphCo6Script: ; 1a1a9 (6:61a9)
- call SilphCo6Script_1a1bf
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo6TrainerHeaders
- ld de, SilphCo6ScriptPointers
- ld a, [W_SILPHCO6CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO6CURSCRIPT], a
- ret
+INCLUDE "scripts/silphco6.asm"
-SilphCo6Script_1a1bf: ; 1a1bf (6:61bf)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo6Coords1
- call SilphCo4Script_19d5d
- call SilphCo6Script_1a1e6
- ld a, [$d82e]
- bit 7, a
- ret nz
- ld a, $5f
- ld [$d09f], a
- ld bc, $0602
- ld a, $17
- jp Predef
-
-SilphCo6Coords1: ; 1a1e3 (6:61e3)
- db $06, $02
- db $ff
-
-SilphCo6Script_1a1e6: ; 1a1e6 (6:61e6)
- ld a, [$ffe0]
- and a
- ret z
- ld hl, $d82e
- set 7, [hl]
- ret
-
-SilphCo6ScriptPointers: ; 1a1f0 (6:61f0)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo6TextPointers: ; 1a1f6 (6:61f6)
- dw SilphCo6Text1
- dw SilphCo6Text2
- dw SilphCo6Text3
- dw SilphCo6Text4
- dw SilphCo6Text5
- dw SilphCo6Text6
- dw SilphCo6Text7
- dw SilphCo6Text8
- dw Predef5CText
- dw Predef5CText
-
-SilphCo6TrainerHeaders: ; 1a20a (6:620a)
-SilphCo6TrainerHeader0: ; 1a20a (6:620a)
- db $6 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d82d ; flag's byte
- dw SilphCo6BattleText2 ; 0x62ba TextBeforeBattle
- dw SilphCo6AfterBattleText2 ; 0x62c4 TextAfterBattle
- dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle
- dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle
-
-SilphCo6TrainerHeader2: ; 1a216 (6:6216)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d82d ; flag's byte
- dw SilphCo6BattleText3 ; 0x62d3 TextBeforeBattle
- dw SilphCo6AfterBattleText3 ; 0x62dd TextAfterBattle
- dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle
- dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle
-
-SilphCo6TrainerHeader3: ; 1a222 (6:6222)
- db $8 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d82d ; flag's byte
- dw SilphCo6BattleText4 ; 0x62ec TextBeforeBattle
- dw SilphCo6AfterBattleText4 ; 0x62f6 TextAfterBattle
- dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle
- dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle
-
- db $ff
-
-SilphCo6Script_1a22f: ; 1a22f (6:622f)
- ld a, [$d838]
- bit 7, a
- jr nz, .asm_1a238 ; 0x1a234 $2
- jr .asm_1a23a ; 0x1a236 $2
-.asm_1a238
- ld h, d
- ld l, e
-.asm_1a23a
- jp PrintText
-
-SilphCo6Text1: ; 1a23d (6:623d)
- db $08 ; asm
- ld hl, UnnamedText_1a24a
- ld de, UnnamedText_1a24f
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_1a24a: ; 1a24a (6:624a)
- TX_FAR _UnnamedText_1a24a
- db "@"
-
-UnnamedText_1a24f: ; 1a24f (6:624f)
- TX_FAR _UnnamedText_1a24f
- db "@"
-
-SilphCo6Text2: ; 1a254 (6:6254)
- db $08 ; asm
- ld hl, UnnamedText_1a261
- ld de, UnnamedText_1a266
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_1a261: ; 1a261 (6:6261)
- TX_FAR _UnnamedText_1a261
- db "@"
-
-UnnamedText_1a266: ; 1a266 (6:6266)
- TX_FAR _UnnamedText_1a266
- db "@"
-
-SilphCo6Text3: ; 1a26b (6:626b)
- db $08 ; asm
- ld hl, UnnamedText_1a278
- ld de, UnnamedText_1a27d
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_1a278: ; 1a278 (6:6278)
- TX_FAR _UnnamedText_1a278
- db "@"
-
-UnnamedText_1a27d: ; 1a27d (6:627d)
- TX_FAR _UnnamedText_1a27d
- db "@"
-
-SilphCo6Text4: ; 1a282 (6:6282)
- db $08 ; asm
- ld hl, UnnamedText_1a28f
- ld de, UnnamedText_1a294
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_1a28f: ; 1a28f (6:628f)
- TX_FAR _UnnamedText_1a28f
- db "@"
-
-UnnamedText_1a294: ; 1a294 (6:6294)
- TX_FAR _UnnamedText_1a294
- db "@"
-
-SilphCo6Text5: ; 1a299 (6:6299)
- db $08 ; asm
- ld hl, UnnamedText_1a2a6
- ld de, UnnamedText_1a2ab
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-UnnamedText_1a2a6: ; 1a2a6 (6:62a6)
- TX_FAR _UnnamedText_1a2a6
- db "@"
-
-UnnamedText_1a2ab: ; 1a2ab (6:62ab)
- TX_FAR _UnnamedText_1a2ab
- db "@"
-
-SilphCo6Text6: ; 1a2b0 (6:62b0)
- db $08 ; asm
- ld hl, SilphCo6TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo6BattleText2: ; 1a2ba (6:62ba)
- TX_FAR _SilphCo6BattleText2
- db "@"
-
-SilphCo6EndBattleText2: ; 1a2bf (6:62bf)
- TX_FAR _SilphCo6EndBattleText2
- db "@"
-
-SilphCo6AfterBattleText2: ; 1a2c4 (6:62c4)
- TX_FAR _SilphCo6AfterBattleText2
- db "@"
-
-SilphCo6Text7: ; 1a2c9 (6:62c9)
- db $08 ; asm
- ld hl, SilphCo6TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo6BattleText3: ; 1a2d3 (6:62d3)
- TX_FAR _SilphCo6BattleText3
- db "@"
-
-SilphCo6EndBattleText3: ; 1a2d8 (6:62d8)
- TX_FAR _SilphCo6EndBattleText3
- db "@"
-
-SilphCo6AfterBattleText3: ; 1a2dd (6:62dd)
- TX_FAR _SilphCo6AfterBattleText3
- db "@"
-
-SilphCo6Text8: ; 1a2e2 (6:62e2)
- db $08 ; asm
- ld hl, SilphCo6TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo6BattleText4: ; 1a2ec (6:62ec)
- TX_FAR _SilphCo6BattleText4
- db "@"
-
-SilphCo6EndBattleText4: ; 1a2f1 (6:62f1)
- TX_FAR _SilphCo6EndBattleText4
- db "@"
-
-SilphCo6AfterBattleText4: ; 1a2f6 (6:62f6)
- TX_FAR _SilphCo6AfterBattleText4
- db "@"
-
-SilphCo6Object: ; 0x1a2fb (size=112)
- db $2e ; border tile
-
- db $5 ; warps
- db $0, $10, $1, SILPH_CO_7F
- db $0, $e, $0, SILPH_CO_5F
- db $0, $12, $0, SILPH_CO_ELEVATOR
- db $3, $3, $4, SILPH_CO_4F
- db $3, $17, $6, SILPH_CO_2F
-
- db $0 ; signs
-
- db $a ; people
- db SPRITE_LAPRAS_GIVER, $6 + 4, $a + 4, $ff, $ff, $1 ; person
- db SPRITE_LAPRAS_GIVER, $6 + 4, $14 + 4, $ff, $ff, $2 ; person
- db SPRITE_ERIKA, $6 + 4, $15 + 4, $ff, $d0, $3 ; person
- db SPRITE_ERIKA, $a + 4, $b + 4, $ff, $d3, $4 ; person
- db SPRITE_LAPRAS_GIVER, $d + 4, $12 + 4, $ff, $d1, $5 ; person
- db SPRITE_ROCKET, $3 + 4, $11 + 4, $ff, $d3, $46, ROCKET + $C8, $1e ; trainer
- db SPRITE_OAK_AIDE, $8 + 4, $7 + 4, $ff, $d0, $47, SCIENTIST + $C8, $7 ; trainer
- db SPRITE_ROCKET, $f + 4, $e + 4, $ff, $d2, $48, ROCKET + $C8, $1f ; trainer
- db SPRITE_BALL, $c + 4, $3 + 4, $ff, $ff, $89, HP_UP ; item
- db SPRITE_BALL, $f + 4, $2 + 4, $ff, $ff, $8a, X_ACCURACY ; item
-
- ; warp-to
- EVENT_DISP SILPH_CO_6F_WIDTH, $0, $10 ; SILPH_CO_7F
- EVENT_DISP SILPH_CO_6F_WIDTH, $0, $e ; SILPH_CO_5F
- EVENT_DISP SILPH_CO_6F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_6F_WIDTH, $3, $3 ; SILPH_CO_4F
- EVENT_DISP SILPH_CO_6F_WIDTH, $3, $17 ; SILPH_CO_2F
+INCLUDE "data/mapObjects/silphco6.asm"
SilphCo6Blocks: ; 1a36b (6:636b)
INCBIN "maps/silphco6.blk"
@@ -37129,7 +27988,7 @@ Func_1a672: ; 1a672 (6:6672)
ld [$ccd4], a
ld a, $2
ld [$cd38], a
- call Func_1a6f0
+ call LoadHoppingShadowOAM
ld a, (SFX_02_4e - SFX_Headers_02) / 3
call PlaySound
ret
@@ -37146,7 +28005,7 @@ LedgeTiles: ; 1a6cf (6:66cf)
db $0C,$39,$0D,$10
db $FF
-Func_1a6f0: ; 1a6f0 (6:66f0)
+LoadHoppingShadowOAM: ; 1a6f0 (6:66f0)
ld hl, $8ff0
ld de, LedgeHoppingShadow ; $6708
ld bc, (BANK(LedgeHoppingShadow) << 8) + $01
@@ -37166,69 +28025,16 @@ LedgeHoppingShadowOAM: ; 1a710 (6:6710)
SECTION "bank7",ROMX,BANK[$7]
-CinnabarIsland_h: ; 0x1c000 to 0x1c022 (34 bytes) (bank=7) (id=8)
- db OVERWORLD ; tileset
- db CINNABAR_ISLAND_HEIGHT, CINNABAR_ISLAND_WIDTH ; dimensions (y, x)
- dw CinnabarIslandBlocks, CinnabarIslandTextPointers, CinnabarIslandScript ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, ROUTE_21_HEIGHT, 0, 0, ROUTE_21_WIDTH, Route21Blocks
- EAST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 0, 0, ROUTE_20_HEIGHT, Route20Blocks, CINNABAR_ISLAND_WIDTH
- dw CinnabarIslandObject ; objects
-
-CinnabarIslandObject: ; 0x1c022 (size=71)
- db $43 ; border tile
-
- db $5 ; warps
- db $3, $6, $1, MANSION_1
- db $3, $12, $0, CINNABAR_GYM
- db $9, $6, $0, CINNABAR_LAB_1
- db $b, $b, $0, CINNABAR_POKECENTER
- db $b, $f, $0, CINNABAR_MART
-
- db $5 ; signs
- db $5, $9, $3 ; CinnabarIslandText3
- db $b, $10, $4 ; MartSignText
- db $b, $c, $5 ; PokeCenterSignText
- db $b, $9, $6 ; CinnabarIslandText6
- db $3, $d, $7 ; CinnabarIslandText7
-
- db $2 ; people
- db SPRITE_GIRL, $5 + 4, $c + 4, $fe, $2, $1 ; person
- db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $6 ; MANSION_1
- EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $12 ; CINNABAR_GYM
- EVENT_DISP CINNABAR_ISLAND_WIDTH, $9, $6 ; CINNABAR_LAB_1
- EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $b ; CINNABAR_POKECENTER
- EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $f ; CINNABAR_MART
+INCLUDE "data/mapHeaders/cinnabarisland.asm"
+
+INCLUDE "data/mapObjects/cinnabarisland.asm"
CinnabarIslandBlocks: ; 1c069 (7:4069)
INCBIN "maps/cinnabarisland.blk"
-Route1_h: ; 0x1c0c3 to 0x1c0e5 (34 bytes) (bank=7) (id=12)
- db OVERWORLD ; tileset
- db ROUTE_1_HEIGHT, ROUTE_1_WIDTH ; dimensions (y, x)
- dw Route1Blocks, Route1TextPointers, Route1Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks
- SOUTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks, ROUTE_1_WIDTH, ROUTE_1_HEIGHT
- dw Route1Object ; objects
-
-Route1Object: ; 0x1c0e5 (size=19)
- db $b ; border tile
-
- db $0 ; warps
+INCLUDE "data/mapHeaders/route1.asm"
- db $1 ; signs
- db $1b, $9, $3 ; Route1Text3
-
- db $2 ; people
- db SPRITE_BUG_CATCHER, $18 + 4, $5 + 4, $fe, $1, $1 ; person
- db SPRITE_BUG_CATCHER, $d + 4, $f + 4, $fe, $2, $2 ; person
-
- ; warp-to (unused)
- EVENT_DISP $4, $7, $2
+INCLUDE "data/mapObjects/route1.asm"
Route1Blocks: ; 1c0fc (7:40fc)
INCBIN "maps/route1.blk"
@@ -37264,204 +28070,14 @@ DiglettsCaveEntranceRoute11Blocks: ; 1c20e (7:420e)
DiglettsCaveRoute2Blocks: ; 0x1c20e size=16
INCBIN "maps/diglettscaveroute2.blk"
-MonsterNames: ; 1c21e (7:421e)
- db "RHYDON@@@@"
- db "KANGASKHAN"
- db "NIDORAN♂@@"
- db "CLEFAIRY@@"
- db "SPEAROW@@@"
- db "VOLTORB@@@"
- db "NIDOKING@@"
- db "SLOWBRO@@@"
- db "IVYSAUR@@@"
- db "EXEGGUTOR@"
- db "LICKITUNG@"
- db "EXEGGCUTE@"
- db "GRIMER@@@@"
- db "GENGAR@@@@"
- db "NIDORAN♀@@"
- db "NIDOQUEEN@"
- db "CUBONE@@@@"
- db "RHYHORN@@@"
- db "LAPRAS@@@@"
- db "ARCANINE@@"
- db "MEW@@@@@@@"
- db "GYARADOS@@"
- db "SHELLDER@@"
- db "TENTACOOL@"
- db "GASTLY@@@@"
- db "SCYTHER@@@"
- db "STARYU@@@@"
- db "BLASTOISE@"
- db "PINSIR@@@@"
- db "TANGELA@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "GROWLITHE@"
- db "ONIX@@@@@@"
- db "FEAROW@@@@"
- db "PIDGEY@@@@"
- db "SLOWPOKE@@"
- db "KADABRA@@@"
- db "GRAVELER@@"
- db "CHANSEY@@@"
- db "MACHOKE@@@"
- db "MR.MIME@@@"
- db "HITMONLEE@"
- db "HITMONCHAN"
- db "ARBOK@@@@@"
- db "PARASECT@@"
- db "PSYDUCK@@@"
- db "DROWZEE@@@"
- db "GOLEM@@@@@"
- db "MISSINGNO."
- db "MAGMAR@@@@"
- db "MISSINGNO."
- db "ELECTABUZZ"
- db "MAGNETON@@"
- db "KOFFING@@@"
- db "MISSINGNO."
- db "MANKEY@@@@"
- db "SEEL@@@@@@"
- db "DIGLETT@@@"
- db "TAUROS@@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "FARFETCH'D"
- db "VENONAT@@@"
- db "DRAGONITE@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "DODUO@@@@@"
- db "POLIWAG@@@"
- db "JYNX@@@@@@"
- db "MOLTRES@@@"
- db "ARTICUNO@@"
- db "ZAPDOS@@@@"
- db "DITTO@@@@@"
- db "MEOWTH@@@@"
- db "KRABBY@@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "VULPIX@@@@"
- db "NINETALES@"
- db "PIKACHU@@@"
- db "RAICHU@@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "DRATINI@@@"
- db "DRAGONAIR@"
- db "KABUTO@@@@"
- db "KABUTOPS@@"
- db "HORSEA@@@@"
- db "SEADRA@@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "SANDSHREW@"
- db "SANDSLASH@"
- db "OMANYTE@@@"
- db "OMASTAR@@@"
- db "JIGGLYPUFF"
- db "WIGGLYTUFF"
- db "EEVEE@@@@@"
- db "FLAREON@@@"
- db "JOLTEON@@@"
- db "VAPOREON@@"
- db "MACHOP@@@@"
- db "ZUBAT@@@@@"
- db "EKANS@@@@@"
- db "PARAS@@@@@"
- db "POLIWHIRL@"
- db "POLIWRATH@"
- db "WEEDLE@@@@"
- db "KAKUNA@@@@"
- db "BEEDRILL@@"
- db "MISSINGNO."
- db "DODRIO@@@@"
- db "PRIMEAPE@@"
- db "DUGTRIO@@@"
- db "VENOMOTH@@"
- db "DEWGONG@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "CATERPIE@@"
- db "METAPOD@@@"
- db "BUTTERFREE"
- db "MACHAMP@@@"
- db "MISSINGNO."
- db "GOLDUCK@@@"
- db "HYPNO@@@@@"
- db "GOLBAT@@@@"
- db "MEWTWO@@@@"
- db "SNORLAX@@@"
- db "MAGIKARP@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "MUK@@@@@@@"
- db "MISSINGNO."
- db "KINGLER@@@"
- db "CLOYSTER@@"
- db "MISSINGNO."
- db "ELECTRODE@"
- db "CLEFABLE@@"
- db "WEEZING@@@"
- db "PERSIAN@@@"
- db "MAROWAK@@@"
- db "MISSINGNO."
- db "HAUNTER@@@"
- db "ABRA@@@@@@"
- db "ALAKAZAM@@"
- db "PIDGEOTTO@"
- db "PIDGEOT@@@"
- db "STARMIE@@@"
- db "BULBASAUR@"
- db "VENUSAUR@@"
- db "TENTACRUEL"
- db "MISSINGNO."
- db "GOLDEEN@@@"
- db "SEAKING@@@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "PONYTA@@@@"
- db "RAPIDASH@@"
- db "RATTATA@@@"
- db "RATICATE@@"
- db "NIDORINO@@"
- db "NIDORINA@@"
- db "GEODUDE@@@"
- db "PORYGON@@@"
- db "AERODACTYL"
- db "MISSINGNO."
- db "MAGNEMITE@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "CHARMANDER"
- db "SQUIRTLE@@"
- db "CHARMELEON"
- db "WARTORTLE@"
- db "CHARIZARD@"
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "MISSINGNO."
- db "ODDISH@@@@"
- db "GLOOM@@@@@"
- db "VILEPLUME@"
- db "BELLSPROUT"
- db "WEEPINBELL"
- db "VICTREEBEL"
+INCLUDE "text/monster_names.asm"
Func_1c98a: ; 1c98a (7:498a)
call ClearScreen
call GoPAL_SET_CF1C
call LoadFontTilePatterns
call LoadTextBoxTilePatterns
- ld hl, UnnamedText_1c9c1 ; $49c1
+ ld hl, ClearSaveDataText
call PrintText
FuncCoord 14, 7 ; $c43a
ld hl, Coord
@@ -37477,12 +28093,12 @@ Func_1c98a: ; 1c98a (7:498a)
callba Func_73b6a
jp InitGame
-UnnamedText_1c9c1: ; 1c9c1 (7:49c1)
- TX_FAR _UnnamedText_1c9c1
+ClearSaveDataText: ; 1c9c1 (7:49c1)
+ TX_FAR _ClearSaveDataText
db "@"
Func_1c9c6: ; 1c9c6 (7:49c6)
- ld hl, UnnamedText_1ca14 ; $4a14
+ ld hl, WhichFloorText
call PrintText
ld hl, $cf7b
ld a, l
@@ -37526,4137 +28142,232 @@ Func_1ca0d: ; 1ca0d (7:4a0d)
ld [hli], a
ret
-UnnamedText_1ca14: ; 1ca14 (7:4a14)
- TX_FAR _UnnamedText_1ca14
- db "@"
-
-CinnabarIslandScript: ; 1ca19 (7:4a19)
- call EnableAutoTextBoxDrawing
- ld hl, $d126
- set 5, [hl]
- ld hl, $d796
- res 0, [hl]
- ld hl, $d7a3
- res 1, [hl]
- ld hl, CinnabarIslandScriptPointers
- ld a, [W_CINNABARISLANDCURSCRIPT]
- jp CallFunctionInTable
-
-CinnabarIslandScriptPointers: ; 1ca34 (7:4a34)
- dw CinnabarIslandScript0
- dw CinnabarIslandScript1
-
-CinnabarIslandScript0: ; 1ca38 (7:4a38)
- ld b, SECRET_KEY
- call IsItemInBag
- ret nz
- ld a, [$d361]
- cp $4
- ret nz
- ld a, [$d362]
- cp $12
- ret nz
- ld a, $8
- ld [$d528], a
- ld a, $8
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $1
- ld [$cd38], a
- ld a, $80
- ld [$ccd3], a
- call Func_3486
- xor a
- ld [$c109], a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [W_CINNABARISLANDCURSCRIPT], a
- ret
-
-CinnabarIslandScript1: ; 1ca73 (7:4a73)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- ld a, $0
- ld [W_CINNABARISLANDCURSCRIPT], a
- ret
-
-CinnabarIslandTextPointers: ; 1ca81 (7:4a81)
- dw CinnabarIslandText1
- dw CinnabarIslandText2
- dw CinnabarIslandText3
- dw MartSignText
- dw PokeCenterSignText
- dw CinnabarIslandText6
- dw CinnabarIslandText7
- dw CinnabarIslandText8
-
-CinnabarIslandText8: ; 1ca91 (7:4a91)
- TX_FAR _CinnabarIslandText8
- db "@"
-
-CinnabarIslandText1: ; 1ca96 (7:4a96)
- TX_FAR _CinnabarIslandText1
- db "@"
-
-CinnabarIslandText2: ; 1ca9b (7:4a9b)
- TX_FAR _CinnabarIslandText2
- db "@"
-
-CinnabarIslandText3: ; 1caa0 (7:4aa0)
- TX_FAR _CinnabarIslandText3
- db "@"
-
-CinnabarIslandText6: ; 1caa5 (7:4aa5)
- TX_FAR _CinnabarIslandText6
- db "@"
-
-CinnabarIslandText7: ; 1caaa (7:4aaa)
- TX_FAR _CinnabarIslandText7
- db "@"
-
-Route1Script: ; 1caaf (7:4aaf)
- jp EnableAutoTextBoxDrawing
-
-Route1TextPointers: ; 1cab2 (7:4ab2)
- dw Route1Text1
- dw Route1Text2
- dw Route1Text3
-
-Route1Text1: ; 1cab8 (7:4ab8)
- db $08 ; asm
- ld hl, $d7bf
- bit 0, [hl]
- set 0, [hl]
- jr nz, .asm_02840 ; 0x1cac0
- ld hl, Route1ViridianMartSampleText
- call PrintText
- ld bc, (POTION << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, UnnamedText_1cae8 ; $4ae8
- jr .asm_46d43 ; 0x1cad3
-.BagFull
- ld hl, UnnamedText_1caf3 ; $4af3
- jr .asm_46d43 ; 0x1cad8
-.asm_02840 ; 0x1cada
- ld hl, UnnamedText_1caee ; $4aee
-.asm_46d43 ; 0x1cadd
- call PrintText
- jp TextScriptEnd
-
-Route1ViridianMartSampleText: ; 1cae3 (7:4ae3)
- TX_FAR _Route1ViridianMartSampleText
- db "@"
-
-UnnamedText_1cae8: ; 1cae8 (7:4ae8)
- TX_FAR _UnnamedText_1cae8
- db $0b,"@"
-
-UnnamedText_1caee: ; 1caee (7:4aee)
- TX_FAR _UnnamedText_1caee
- db "@"
-
-UnnamedText_1caf3: ; 1caf3 (7:4af3)
- TX_FAR _UnnamedText_1caf3
- db "@"
-
-Route1Text2: ; 1caf8 (7:4af8)
- TX_FAR _Route1Text2
- db "@"
-
-Route1Text3: ; 1cafd (7:4afd)
- TX_FAR _Route1Text3
- db "@"
-
-OaksLab_h: ; 0x1cb02 to 0x1cb0e (12 bytes) (bank=7) (id=40)
- db DOJO ; tileset
- db OAKS_LAB_HEIGHT, OAKS_LAB_WIDTH ; dimensions (y, x)
- dw OaksLabBlocks, OaksLabTextPointers, OaksLabScript ; blocks, texts, scripts
- db $00 ; connections
- dw OaksLabObject ; objects
-
-OaksLabScript: ; 1cb0e (7:4b0e)
- ld a, [$d74b]
- bit 6, a
- call nz, OaksLabScript_1d076
- ld a, $1
- ld [$cf0c], a
- xor a
- ld [$cc3c], a
- ld hl, OaksLabScriptPointers
- ld a, [W_OAKSLABCURSCRIPT]
- jp CallFunctionInTable
-
-OaksLabScriptPointers: ; 1cb28 (7:4b28)
- dw OaksLabScript0
- dw OaksLabScript1
- dw OaksLabScript2
- dw OaksLabScript3
- dw OaksLabScript4
- dw OaksLabScript5
- dw OaksLabScript6
- dw OaksLabScript7
- dw OaksLabScript8
- dw OaksLabScript9
- dw OaksLabScript10
- dw OaksLabScript11
- dw OaksLabScript12
- dw OaksLabScript13
- dw OaksLabScript14
- dw OaksLabScript15
- dw OaksLabScript16
- dw OaksLabScript17
- dw OaksLabScript18
-
-OaksLabScript0: ; 1cb4e (7:4b4e)
- ld a, [$d74b]
- bit 7, a
- ret z
- ld a, [$cf10]
- and a
- ret nz
- ld a, $31
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld hl, $d72e
- res 4, [hl]
-
- ld a, $1
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript1: ; 1cb6e (7:4b6e)
- ld a, $8
- ld [$ff8c], a
- ld de, OakEntryMovement
- call MoveSprite
-
- ld a, $2
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OakEntryMovement: ; 1cb7e (7:4b7e)
- db $40,$40,$40,$FF
-
-OaksLabScript2: ; 1cb82 (7:4b82)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $31
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $2e
- ld [$cc4d], a
- ld a, $15
- call Predef
-
- ld a, $3
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript3: ; 1cba2 (7:4ba2)
- call Delay3
- ld hl, $ccd3
- ld de, PlayerEntryMovementRLE
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $1
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $5
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
-
- ld a, $4
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-PlayerEntryMovementRLE: ; 1cbcf (7:4bcf)
- db $40, $8, $ff
-
-OaksLabScript4: ; 1cbd2 (7:4bd2)
- ld a, [$cd38]
- and a
- ret nz
- ld hl, $d747
- set 0, [hl]
- ld hl, $d74b
- set 0, [hl]
- ld a, $1
- ld [$ff8c], a
- ld a, $4
- ld [$ff8d], a
- call Func_34a6 ; face object
- call UpdateSprites
- ld hl, W_FLAGS_D733
- res 1, [hl]
- call Func_2307
-
- ld a, $5
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript5: ; 1cbfd (7:4bfd)
- ld a, $fc
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $11
- ld [$ff8c], a
- call DisplayTextID
- call Delay3
- ld a, $12
- ld [$ff8c], a
- call DisplayTextID
- call Delay3
- ld a, $13
- ld [$ff8c], a
- call DisplayTextID
- call Delay3
- ld a, $14
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d74b
- set 1, [hl]
- xor a
- ld [wJoypadForbiddenButtonsMask], a
-
- ld a, $6
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript6: ; 1cc36 (7:4c36)
- ld a, [W_YCOORD]
- cp $6
- ret nz
- ld a, $5
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $1
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- call UpdateSprites
- ld a, $c
- ld [$ff8c], a
- call DisplayTextID
- ld a, $1
- ld [$cd38], a
- ld a, $40
- ld [$ccd3], a
- call Func_3486
- ld a, $8
- ld [$d528], a
-
- ld a, $7
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript7: ; 1cc72 (7:4c72)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
-
- ld a, $6
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript8: ; 1cc80 (7:4c80)
- ld a, [W_PLAYERSTARTER]
- cp CHARMANDER
- jr z, .Charmander ; 0x1cc85 $6
- cp SQUIRTLE
- jr z, .Squirtle ; 0x1cc89 $1d
- jr .Bulbasaur ; 0x1cc8b $38
-.Charmander
- ld de, .MiddleBallMovement1
- ld a, [W_YCOORD]
- cp $4 ; is the player standing below the table?
- jr z, .asm_1ccf3 ; 0x1cc95 $5c
- ld de, .MiddleBallMovement2
- jr .asm_1ccf3 ; 0x1cc9a $57
-
-.MiddleBallMovement1
- db 0,0,$C0,$C0,$C0,$40,$FF
-.MiddleBallMovement2
- db 0,$C0,$C0,$C0,$FF
-
-.Squirtle
- ld de, .RightBallMovement1
- ld a, [W_YCOORD]
- cp $4 ; is the player standing below the table?
- jr z, .asm_1ccf3 ; 0x1ccb0 $41
- ld de, .RightBallMovement2
- jr .asm_1ccf3 ; 0x1ccb5 $3c
-
-.RightBallMovement1
- db 0,0,$C0,$C0,$C0,$C0,$40,$FF
-.RightBallMovement2
- db 0,$C0,$C0,$C0,$C0,$FF
-
-.Bulbasaur
- ld de, .LeftBallMovement1
- ld a, [W_XCOORD]
- cp $9 ; is the player standing to the right of the table?
- jr nz, .asm_1ccf3 ; 0x1cccd $24
- push hl
- ld a, $1
- ld [$ff8c], a
- ld a, $4
- ld [$ff8b], a
- call Func_34fc
- push hl
- ld [hl], $4c
- inc hl
- inc hl
- ld [hl], $0
- pop hl
- inc h
- ld [hl], $8
- inc hl
- ld [hl], $9
- ld de, .LeftBallMovement2 ; the rival is not currently onscreen, so account for that
- pop hl
- jr .asm_1ccf3 ; 0x1cced $4
-
-.LeftBallMovement1
- db $00,$C0 ; not yet terminated!
-.LeftBallMovement2
- db $C0,$FF
-
-.asm_1ccf3
- ld a, $1
- ld [$ff8c], a
- call MoveSprite
-
- ld a, $9
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript9: ; 1cd00 (7:4d00)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $fc
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [$ff8c], a
- ld a, $4
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $d
- ld [$ff8c], a
- call DisplayTextID
- ld a, [$cd3e]
- cp $2
- jr nz, .asm_1cd28 ; 0x1cd22 $4
- ld a, $2b
- jr .asm_1cd32 ; 0x1cd26 $a
-.asm_1cd28
- cp $3
- jr nz, .asm_1cd30 ; 0x1cd2a $4
- ld a, $2c
- jr .asm_1cd32 ; 0x1cd2e $2
-.asm_1cd30
- ld a, $2d
-.asm_1cd32
- ld [$cc4d], a
- ld a, $11
- call Predef
- call Delay3
- ld a, [$cd3d]
- ld [W_RIVALSTARTER], a
- ld [$cf91], a
- ld [$d11e], a
- call GetMonName
- ld a, $1
- ld [$ff8c], a
- ld a, $4
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $e
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d74b
- set 2, [hl]
- xor a
- ld [wJoypadForbiddenButtonsMask], a
-
- ld a, $a
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript10: ; 1cd6d (7:4d6d)
- ld a, [W_YCOORD]
- cp $6
- ret nz
- ld a, $1
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $8
- ld [$d528], a
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic ; play music
- ld a, $f
- ld [$ff8c], a
- call DisplayTextID
- ld a, $1
- ld [$ff9b], a
- ld a, $1
- swap a
- ld [$ff95], a
- ld a, $22
- call Predef
- ld a, [$ff95]
- dec a
- ld [$ff95], a
- ld a, $20
- call Predef
- ld de, $cc97
- ld a, $1
- ld [$ff8c], a
- call MoveSprite
-
- ld a, $b
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript11: ; 1cdb9 (7:4db9)
- ld a, [$d730]
- bit 0, a
- ret nz
-
- ; define which team rival uses, and fight it
- ld a, SONY1 + $C8
- ld [W_CUROPPONENT], a
- ld a, [W_RIVALSTARTER]
- cp SQUIRTLE
- jr nz, .NotSquirtle ; 0x1cdc9 $4
- ld a, $1
- jr .done ; 0x1cdcd $a
-.NotSquirtle
- cp BULBASAUR
- jr nz, .Charmander ; 0x1cdd1 $4
- ld a, $2
- jr .done ; 0x1cdd5 $2
-.Charmander
- ld a, $3
-.done
- ld [W_TRAINERNO], a
- ld a, $1
- ld [$cf13], a
- call Func_32ef
- ld hl, UnnamedText_1d3be
- ld de, UnnamedText_1d3c3
- call PreBattleSaveRegisters
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $8
- ld [$d528], a
- ld a, $c
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript12: ; 1ce03 (7:4e03)
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $8
- ld [$d528], a
- call UpdateSprites
- ld a, $1
- ld [$cf13], a
- call Func_32f9
- ld a, $1
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $7
- call Predef
- ld hl, $d74b
- set 3, [hl]
-
- ld a, $d
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript13: ; 1ce32 (7:4e32)
- ld c, $14
- call DelayFrames
- ld a, $10
- ld [$ff8c], a
- call DisplayTextID
- callba Music_RivalAlternateStart
- ld a, $1
- ld [$ff8c], a
- ld de, .RivalExitMovement
- call MoveSprite
- ld a, [W_XCOORD]
- cp $4
- ; move left or right depending on where the player is standing
- jr nz, .asm_1ce5b ; 0x1ce55 $4
- ld a, $c0
- jr .asm_1ce5d ; 0x1ce59 $2
-.asm_1ce5b
- ld a, $80
-.asm_1ce5d
- ld [$cc5b], a
-
- ld a, $e
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-.RivalExitMovement
- db $E0,$00,$00,$00,$00,$00,$FF
-
-OaksLabScript14: ; 1ce6d (7:4e6d)
- ld a, [$d730]
- bit 0, a
- jr nz, .asm_1ce8c ; 0x1ce72 $18
- ld a, $2a
- ld [$cc4d], a
- ld a, $11
- call Predef
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- call Func_2307 ; reset to map music
- ld a, $12
- ld [W_OAKSLABCURSCRIPT], a
- jr .done ; 0x1ce8a $23
-.asm_1ce8c
- ld a, [$cf0f]
- cp $5
- jr nz, .asm_1cea8 ; 0x1ce91 $15
- ld a, [$d362]
- cp $4
- jr nz, .asm_1cea1 ; 0x1ce98 $7
- ld a, $c
- ld [$c109], a
- jr .done ; 0x1ce9f $e
-.asm_1cea1
- ld a, $8
- ld [$c109], a
- jr .done ; 0x1cea6 $7
-.asm_1cea8
- cp $4
- ret nz
- xor a
- ld [$c109], a
-.done
- ret
-
-OaksLabScript15: ; 1ceb0 (7:4eb0)
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- call EnableAutoTextBoxDrawing
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld a, $15
- ld [$ff8c], a
- call DisplayTextID
- call OaksLabScript_1d02b
- ld a, $2a
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, [$cd37]
- ld [$d157], a
- ld b, $0
- ld c, a
- ld hl, $cc97
- ld a, $40
- call FillMemory
- ld [hl], $ff
- ld a, $1
- ld [$ff8c], a
- ld de, $cc97
- call MoveSprite
-
- ld a, $10
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript_1cefd ; 1cefd (7:4efd)
- ld a, $1
- ld [$ff8c], a
- ld a, $4
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $8
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- jp Func_34a6 ; face object
-
-OaksLabScript16: ; 1cf12 (7:4f12)
- ld a, [$d730]
- bit 0, a
- ret nz
- call EnableAutoTextBoxDrawing
- call Func_2307
- ld a, $fc
- ld [wJoypadForbiddenButtonsMask], a
- call OaksLabScript_1cefd
- ld a, $16
- ld [$ff8c], a
- call DisplayTextID
- call DelayFrame
- call OaksLabScript_1cefd
- ld a, $17
- ld [$ff8c], a
- call DisplayTextID
- call DelayFrame
- call OaksLabScript_1cefd
- ld a, $18
- ld [$ff8c], a
- call DisplayTextID
- call DelayFrame
- ld a, $19
- ld [$ff8c], a
- call DisplayTextID
- call Delay3
- ld a, $2f
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $30
- ld [$cc4d], a
- ld a, $11
- call Predef
- call OaksLabScript_1cefd
- ld a, $1a
- ld [$ff8c], a
- call DisplayTextID
- ld a, $1
- ld [$ff8c], a
- ld a, $c
- ld [$ff8d], a
- call Func_34a6 ; face object
- call Delay3
- ld a, $1b
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d74b
- set 5, [hl]
- ld hl, $d74e
- set 0, [hl]
- ld a, $1
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $2
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, [$d157]
- ld b, $0
- ld c, a
- ld hl, $cc97
- xor a
- call FillMemory
- ld [hl], $ff
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld a, $1
- ld [$ff8c], a
- ld de, $cc97
- call MoveSprite
-
- ld a, $11
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript17: ; 1cfd4 (7:4fd4)
- ld a, [$d730]
- bit 0, a
- ret nz
- call Func_2307
- ld a, $2a
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, $d7eb
- set 0, [hl]
- res 1, [hl]
- set 7, [hl]
- ld a, $22
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, $5
- ld [W_PALLETTOWNCURSCRIPT], a
- xor a
- ld [wJoypadForbiddenButtonsMask], a
-
- ld a, $12
- ld [W_OAKSLABCURSCRIPT], a
- ret
-
-OaksLabScript18: ; 1d009 (7:5009)
- ret
-
-OaksLabScript_1d00a: ; 1d00a (7:500a)
- ld hl, wBagItems
- ld bc, $0000
-.asm_1d010
- ld a, [hli]
- cp $ff
- ret z
- cp OAKS_PARCEL
- jr z, .GotParcel ; 0x1d016 $4
- inc hl
- inc c
- jr .asm_1d010 ; 0x1d01a $f4
-.GotParcel
- ld hl, $d31d
- ld a, c
- ld [wWhichPokemon], a
- ld a, $1
- ld [$cf96], a
- jp RemoveItemFromInventory
-
-OaksLabScript_1d02b: ; 1d02b (7:502b)
- ld a, $7c
- ld [$ffeb], a
- ld a, $8
- ld [$ffee], a
- ld a, [$d361]
- cp $3
- jr nz, .asm_1d045 ; 0x1d038 $b
- ld a, $4
- ld [$cd37], a
- ld a, $30
- ld b, $b
- jr .asm_1d068 ; 0x1d043 $23
-.asm_1d045
- cp $1
- jr nz, .asm_1d054 ; 0x1d047 $b
- ld a, $2
- ld [$cd37], a
- ld a, $30
- ld b, $9
- jr .asm_1d068 ; 0x1d052 $14
-.asm_1d054
- ld a, $3
- ld [$cd37], a
- ld b, $a
- ld a, [$d362]
- cp $4
- jr nz, .asm_1d066 ; 0x1d060 $4
- ld a, $40
- jr .asm_1d068 ; 0x1d064 $2
-.asm_1d066
- ld a, $20
-.asm_1d068
- ld [$ffec], a
- ld a, b
- ld [$ffed], a
- ld a, $1
- ld [$cf13], a
- call Func_32f9
- ret
-
-OaksLabScript_1d076: ; 1d076 (7:5076)
- ld hl, OaksLabTextPointers + $36 ; $50b8 ; starts at OaksLabText28
- ld a, l
- ld [W_MAPTEXTPTR], a
- ld a, h
- ld [W_MAPTEXTPTR+1], a
- ret
-
-OaksLabTextPointers: ; 1d082 (7:5082)
- dw OaksLabText1
- dw OaksLabText2
- dw OaksLabText3
- dw OaksLabText4
- dw OaksLabText5
- dw OaksLabText6
- dw OaksLabText7
- dw OaksLabText8
- dw OaksLabText9
- dw OaksLabText10
- dw OaksLabText11
- dw OaksLabText12
- dw OaksLabText13
- dw OaksLabText14
- dw OaksLabText15
- dw OaksLabText16
- dw OaksLabText17
- dw OaksLabText18
- dw OaksLabText19
- dw OaksLabText20
- dw OaksLabText21
- dw OaksLabText22
- dw OaksLabText23
- dw OaksLabText24
- dw OaksLabText25
- dw OaksLabText26
- dw OaksLabText27
- dw OaksLabText28
- dw OaksLabText29
- dw OaksLabText30
- dw OaksLabText31
- dw OaksLabText32
- dw OaksLabText33
- dw OaksLabText34
- dw OaksLabText35
- dw OaksLabText36
- dw OaksLabText37
- dw OaksLabText38
-
-OaksLabText28: ; 1d0ce (7:50ce)
-OaksLabText1: ; 1d0ce (7:50ce)
- db $08 ; asm
- ld a, [$d74b]
- bit 0, a
- jr nz, .asm_1d0de ; 0x1d0d4
- ld hl, OaksLabGaryText1
- call PrintText
- jr .asm_1d0f0 ; 0x1d0dc
-.asm_1d0de ; 0x1d0de
- bit 2, a
- jr nz, .asm_1d0ea ; 0x1d0e0
- ld hl, OaksLabText40
- call PrintText
- jr .asm_1d0f0 ; 0x1d0e8
-.asm_1d0ea ; 0x1d0ea
- ld hl, OaksLabText41
- call PrintText
-.asm_1d0f0 ; 0x1d0f0
- jp TextScriptEnd
-
-OaksLabGaryText1: ; 1d0f3 (7:50f3)
- TX_FAR _OaksLabGaryText1
- db "@"
-
-OaksLabText40: ; 1d0f8 (7:50f8)
- TX_FAR _OaksLabText40
- db "@"
-
-OaksLabText41: ; 1d0fd (7:50fd)
- TX_FAR _OaksLabText41
- db "@"
-
-OaksLabText29: ; 1d102 (7:5102)
-OaksLabText2: ; 1d102 (7:5102)
- db $8
- ld a, SQUIRTLE
- ld [$cd3d], a
- ld a, $3
- ld [$cd3e], a
- ld a, CHARMANDER
- ld b, $2
- jr OaksLabScript_1d133 ; 0x1d111 $20
-
-OaksLabText30: ; 1d113 (7:5113)
-OaksLabText3: ; 1d113 (7:5113)
- db $8
- ld a, BULBASAUR
- ld [$cd3d], a
- ld a, $4
- ld [$cd3e], a
- ld a, SQUIRTLE
- ld b, $3
- jr OaksLabScript_1d133 ; 0x1d122 $f
-
-OaksLabText31: ; 1d124 (7:5124)
-OaksLabText4: ; 1d124 (7:5124)
- db $8
- ld a, CHARMANDER
- ld [$cd3d], a
- ld a, $2
- ld [$cd3e], a
- ld a, BULBASAUR
- ld b, $4
-
-OaksLabScript_1d133: ; 1d133 (7:5133)
- ld [$cf91], a
- ld [$d11e], a
- ld a, b
- ld [$cf13], a
- ld a, [$d74b]
- bit 2, a
- jp nz, OaksLabScript_1d22d
- bit 1, a
- jr nz, OaksLabScript_1d157 ; 0x1d147 $e
- ld hl, OaksLabText39
- call PrintText
- jp TextScriptEnd
-
-OaksLabText39: ; 1d152 (7:5152)
- TX_FAR _OaksLabText39
- db "@"
-
-OaksLabScript_1d157: ; 1d157 (7:5157)
- ld a, $5
- ld [$ff8c], a
- ld a, $9
- ld [$ff8b], a
- call Func_34fc
- ld [hl], $0
- ; manually fixed some disassembler issues around here
- ld a, $1
- ld [$FF8c], a
- ld a, $9
- ld [$ff8b], a
- call Func_34fc
- ld [hl], $c
- ld hl, $d730
- set 6, [hl]
- ld a, $46
- call Predef
- ld hl, $d730
- res 6, [hl]
- call ReloadMapData
- ld c, $a
- call DelayFrames
- ld a, [$cf13]
- cp $2
- jr z, OaksLabLookAtCharmander
- cp $3
- jr z, OaksLabLookAtSquirtle
- jr OaksLabLookAtBulbasaur
-
-OaksLabLookAtCharmander ; 0x1d195
- ld hl, OaksLabCharmanderText
- jr OaksLabMonChoiceMenu
-OaksLabCharmanderText: ; 1d19a (7:519a)
- TX_FAR _OaksLabCharmanderText ; 0x94e06
- db "@"
-
-OaksLabLookAtSquirtle: ; 1d19f (7:519f)
- ld hl, OaksLabSquirtleText
- jr OaksLabMonChoiceMenu
-OaksLabSquirtleText: ; 1d1a4 (7:51a4)
- TX_FAR _OaksLabSquirtleText ; 0x94e2f
- db "@"
-
-OaksLabLookAtBulbasaur: ; 1d1a9 (7:51a9)
- ld hl, OaksLabBulbasaurText
- jr OaksLabMonChoiceMenu
-OaksLabBulbasaurText: ; 1d1ae (7:51ae)
- TX_FAR _OaksLabBulbasaurText ; 0x94e57
- db "@"
-
-OaksLabMonChoiceMenu: ; 1d1b3 (7:51b3)
- call PrintText
- ld a, $1
- ld [$cc3c], a
- call YesNoChoice ; yes/no menu
- ld a, [$cc26]
- and a
- jr nz, OaksLabMonChoiceEnd
- ld a, [$cf91]
- ld [$d717], a
- ld [$d11e], a
- call GetMonName
- ld a, [$cf13]
- cp $2
- jr nz, asm_1d1db ; 0x1d1d5 $4
- ld a, $2b
- jr asm_1d1e5 ; 0x1d1d9 $a
-asm_1d1db: ; 1d1db (7:51db)
- cp $3
- jr nz, asm_1d1e3 ; 0x1d1dd $4
- ld a, $2c
- jr asm_1d1e5 ; 0x1d1e1 $2
-asm_1d1e3: ; 1d1e3 (7:51e3)
- ld a, $2d
-asm_1d1e5: ; 1d1e5 (7:51e5)
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $1
- ld [$cc3c], a
- ld hl, OaksLabMonEnergeticText
- call PrintText
- ld hl, OaksLabReceivedMonText
- call PrintText
- xor a
- ld [$cc49], a
- ld a, $5
- ld [$d127], a
- ld a, [$cf91]
- ld [$d11e], a
- call AddPokemonToParty
- ld hl, $d72e
- set 3, [hl]
- ld a, $fc
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $8
- ld [W_OAKSLABCURSCRIPT], a
-OaksLabMonChoiceEnd: ; 1d21f (7:521f)
- jp TextScriptEnd
-
-OaksLabMonEnergeticText: ; 1d222 (7:5222)
- TX_FAR _OaksLabMonEnergeticText
- db "@"
-
-OaksLabReceivedMonText: ; 1d227 (7:5227)
- TX_FAR _OaksLabReceivedMonText ; 0x94ea0
- db $11, "@"
-
-OaksLabScript_1d22d: ; 1d22d (7:522d)
- ld a, $5
- ld [$ff8c], a
- ld a, $9
- ld [$ff8b], a
- call Func_34fc
- ld [hl], $0
- ld hl, OaksLabLastMonText ; $5243
- call PrintText
- jp TextScriptEnd
-
-OaksLabLastMonText: ; 1d243 (7:5243)
- TX_FAR _OaksLabLastMonText
- db "@"
-
-OaksLabText32: ; 1d248 (7:5248)
-OaksLabText5: ; 1d248 (7:5248)
- db $08 ; asm
- ld a, [$d747]
- bit 6, a
- jr nz, .asm_50e81 ; 0x1d24e
- ld hl, $d2f7
- ld b, $13
- call CountSetBits
- ld a, [$d11e]
- cp $2
- jr c, .asm_b28b0 ; 0x1d25d
- ld a, [$d74b]
- bit 5, a
- jr z, .asm_b28b0 ; 0x1d264
-.asm_50e81 ; 0x1d266
- ld hl, UnnamedText_1d31d
- call PrintText
- ld a, $1
- ld [$cc3c], a
- ld a, $56
- call Predef
- jp .asm_0f042
-.asm_b28b0 ; 0x1d279
- ld b,POKE_BALL
- call IsItemInBag
- jr nz, .asm_17c30 ; 0x1d27e
- ld a, [$d7eb]
- bit 5, a
- jr nz, .asm_f1adc ; 0x1d285
- ld a, [$d74b]
- bit 5, a
- jr nz, .asm_333a2 ; 0x1d28c
- bit 3, a
- jr nz, .asm_76269 ; 0x1d290
- ld a, [$d72e]
- bit 3, a
- jr nz, .asm_4a5e0 ; 0x1d297
- ld hl, UnnamedText_1d2f0
- call PrintText
- jr .asm_0f042 ; 0x1d29f
-.asm_4a5e0 ; 0x1d2a1
- ld hl, UnnamedText_1d2f5
- call PrintText
- jr .asm_0f042 ; 0x1d2a7
-.asm_76269 ; 0x1d2a9
- ld b, OAKS_PARCEL
- call IsItemInBag
- jr nz, .asm_a8fcf ; 0x1d2ae
- ld hl, UnnamedText_1d2fa
- call PrintText
- jr .asm_0f042 ; 0x1d2b6
-.asm_a8fcf ; 0x1d2b8
- ld hl, OaksLabDeliverParcelText
- call PrintText
- call OaksLabScript_1d00a
- ld a, $f
- ld [W_OAKSLABCURSCRIPT], a
- jr .asm_0f042 ; 0x1d2c6
-.asm_333a2 ; 0x1d2c8
- ld hl, OaksLabAroundWorldText
- call PrintText
- jr .asm_0f042 ; 0x1d2ce
-.asm_f1adc ; 0x1d2d0
- ld hl, $d74b
- bit 4, [hl]
- set 4, [hl]
- jr nz, .asm_17c30 ; 0x1d2d7
- ld bc, (POKE_BALL << 8) | 5
- call GiveItem
- ld hl, OaksLabGivePokeballsText
- call PrintText
- jr .asm_0f042 ; 0x1d2e5
-.asm_17c30 ; 0x1d2e7
- ld hl, OaksLabPleaseVisitText
- call PrintText
-.asm_0f042 ; 0x1d2ed
- jp TextScriptEnd
-
-UnnamedText_1d2f0: ; 1d2f0 (7:52f0)
- TX_FAR _UnnamedText_1d2f0
- db "@"
-
-UnnamedText_1d2f5: ; 1d2f5 (7:52f5)
- TX_FAR _UnnamedText_1d2f5
- db "@"
-
-UnnamedText_1d2fa: ; 1d2fa (7:52fa)
- TX_FAR _UnnamedText_1d2fa
- db "@"
-
-OaksLabDeliverParcelText: ; 1d2ff (7:52ff)
- TX_FAR _OaksLabDeliverParcelText1 ; 0x94f69
- db $11
- TX_FAR _OaksLabDeliverParcelText2
- db "@"
-
-OaksLabAroundWorldText: ; 1d309 (7:5309)
- TX_FAR _OaksLabAroundWorldText
- db "@"
-
-OaksLabGivePokeballsText: ; 1d30e (7:530e)
- TX_FAR _OaksLabGivePokeballsText1 ; 0x9506d
- db $11
- TX_FAR _OaksLabGivePokeballsText2
- db "@"
-
-OaksLabPleaseVisitText: ; 1d318 (7:5318)
- TX_FAR _OaksLabPleaseVisitText
- db "@"
-
-UnnamedText_1d31d: ; 1d31d (7:531d)
- TX_FAR _UnnamedText_1d31d
- db "@"
-
-OaksLabText34: ; 1d322 (7:5322)
-OaksLabText33: ; 1d322 (7:5322)
-OaksLabText7: ; 1d322 (7:5322)
-OaksLabText6: ; 1d322 (7:5322)
- db $08 ; asm
- ld hl, UnnamedText_1d32c
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_1d32c: ; 1d32c (7:532c)
- TX_FAR _UnnamedText_1d32c
- db "@"
-
-OaksLabText35: ; 1d331 (7:5331)
-OaksLabText8: ; 1d331 (7:5331)
- TX_FAR _OaksLabText8
- db "@"
-
-OaksLabText36: ; 1d336 (7:5336)
-OaksLabText9: ; 1d336 (7:5336)
- db $08 ; asm
- ld hl, UnnamedText_1d340
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_1d340: ; 1d340 (7:5340)
- TX_FAR _UnnamedText_1d340
- db "@"
-
-OaksLabText17: ; 1d345 (7:5345)
- db $8
- ld hl, OaksLabRivalWaitingText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalWaitingText: ; 1d34f (7:534f)
- TX_FAR _OaksLabRivalWaitingText
- db "@"
-
-OaksLabText18: ; 1d354 (7:5354)
- db $8
- ld hl, OaksLabChooseMonText
- call PrintText
- jp TextScriptEnd
-
-OaksLabChooseMonText: ; 1d35e (7:535e)
- TX_FAR _OaksLabChooseMonText
- db "@"
-
-OaksLabText19: ; 1d363 (7:5363)
- db $8
- ld hl, OaksLabRivalInterjectionText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalInterjectionText: ; 1d36d (7:536d)
- TX_FAR _OaksLabRivalInterjectionText
- db "@"
-
-OaksLabText20: ; 1d372 (7:5372)
- db $8
- ld hl, OaksLabBePatientText
- call PrintText
- jp TextScriptEnd
-
-OaksLabBePatientText: ; 1d37c (7:537c)
- TX_FAR _OaksLabBePatientText
- db "@"
-
-OaksLabText12: ; 1d381 (7:5381)
- db $8
- ld hl, OaksLabLeavingText
- call PrintText
- jp TextScriptEnd
-
-OaksLabLeavingText: ; 1d38b (7:538b)
- TX_FAR _OaksLabLeavingText
- db "@"
-
-OaksLabText13: ; 1d390 (7:5390)
- db $8
- ld hl, OaksLabRivalPickingMonText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalPickingMonText: ; 1d39a (7:539a)
- TX_FAR _OaksLabRivalPickingMonText
- db "@"
-
-OaksLabText14: ; 1d39f (7:539f)
- db $8
- ld hl, OaksLabRivalReceivedMonText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalReceivedMonText: ; 1d3a9 (7:53a9)
- TX_FAR _OaksLabRivalReceivedMonText ; 0x95461
- db $11, "@"
-
-OaksLabText15: ; 1d3af (7:53af)
- db $8
- ld hl, OaksLabRivalChallengeText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalChallengeText: ; 1d3b9 (7:53b9)
- TX_FAR _OaksLabRivalChallengeText
- db "@"
-
-UnnamedText_1d3be: ; 1d3be (7:53be)
- TX_FAR _UnnamedText_1d3be
- db "@"
-
-UnnamedText_1d3c3: ; 1d3c3 (7:53c3)
- TX_FAR _UnnamedText_1d3c3
- db "@"
-
-OaksLabText16: ; 1d3c8 (7:53c8)
- db $8
- ld hl, OaksLabRivalToughenUpText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalToughenUpText: ; 1d3d2 (7:53d2)
- TX_FAR _OaksLabRivalToughenUpText
- db "@"
-
-OaksLabText21: ; 1d3d7 (7:53d7)
- TX_FAR _OaksLabText21
- db "@"
-
-OaksLabText22: ; 1d3dc (7:53dc)
- TX_FAR _OaksLabText22
- db "@"
-
-OaksLabText23: ; 1d3e1 (7:53e1)
- TX_FAR _OaksLabText23
- db "@"
-
-OaksLabText24: ; 1d3e6 (7:53e6)
- TX_FAR _OaksLabText24
- db "@"
-
-OaksLabText25: ; 1d3eb (7:53eb)
- TX_FAR _OaksLabText25
- db $11, "@"
-
-OaksLabText26: ; 1d3f1 (7:53f1)
- TX_FAR _OaksLabText26
- db "@"
-
-OaksLabText27: ; 1d3f6 (7:53f6)
- TX_FAR _OaksLabText27
- db "@"
-
-OaksLabText38: ; 1d3fb (7:53fb)
-OaksLabText37: ; 1d3fb (7:53fb)
-OaksLabText11: ; 1d3fb (7:53fb)
-OaksLabText10: ; 1d3fb (7:53fb)
- db $08 ; asm
- ld hl, UnnamedText_1d405
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_1d405: ; 1d405 (7:5405)
- TX_FAR _UnnamedText_1d405
- db "@"
-
-OaksLabObject: ; 0x1d40a (size=88)
- db $3 ; border tile
-
- db $2 ; warps
- db $b, $4, $2, $ff
- db $b, $5, $2, $ff
-
- db $0 ; signs
-
- db $b ; people
- db SPRITE_BLUE, $3 + 4, $4 + 4, $ff, $ff, $41, SONY1 + $C8, $1 ; trainer
- db SPRITE_BALL, $3 + 4, $6 + 4, $ff, $ff, $2 ; person
- db SPRITE_BALL, $3 + 4, $7 + 4, $ff, $ff, $3 ; person
- db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $4 ; person
- db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $5 ; person
- db SPRITE_BOOK_MAP_DEX, $1 + 4, $2 + 4, $ff, $ff, $6 ; person
- db SPRITE_BOOK_MAP_DEX, $1 + 4, $3 + 4, $ff, $ff, $7 ; person
- db SPRITE_OAK, $a + 4, $5 + 4, $ff, $d1, $8 ; person
- db SPRITE_GIRL, $9 + 4, $1 + 4, $fe, $1, $9 ; person
- db SPRITE_OAK_AIDE, $a + 4, $2 + 4, $ff, $ff, $a ; person
- db SPRITE_OAK_AIDE, $a + 4, $8 + 4, $ff, $ff, $b ; person
-
- ; warp-to
- EVENT_DISP OAKS_LAB_WIDTH, $b, $4
- EVENT_DISP OAKS_LAB_WIDTH, $b, $5
-
-ViridianMart_h: ; 0x1d462 to 0x1d46e (12 bytes) (bank=7) (id=42)
- db MART ; tileset
- db VIRIDIAN_MART_HEIGHT, VIRIDIAN_MART_WIDTH ; dimensions (y, x)
- dw ViridianMartBlocks, ViridianMartTextPointers, ViridianMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianMartObject ; objects
-
-ViridianMartScript: ; 1d46e (7:546e)
- call ViridianMartScript_1d47d
- call EnableAutoTextBoxDrawing
- ld hl, ViridianMartScriptPointers
- ld a, [W_VIRIDIANMARKETCURSCRIPT]
- jp CallFunctionInTable
-
-ViridianMartScript_1d47d: ; 1d47d (7:547d)
- ld a, [$d74e]
- bit 0, a
- jr nz, .asm_1d489 ; 0x1d482 $5
- ld hl, ViridianMartTextPointers ; $54e0
- jr .asm_1d48c ; 0x1d487 $3
-.asm_1d489
- ld hl, ViridianMartTextPointers + $a ; $54ea ; starts at ViridianMartText6
-.asm_1d48c
- ld a, l
- ld [W_MAPTEXTPTR], a
- ld a, h
- ld [W_MAPTEXTPTR+1], a
- ret
-
-ViridianMartScriptPointers: ; 1d495 (7:5495)
- dw ViridianMartScript0
- dw ViridianMartScript1
- dw ViridianMartScript2
-
-ViridianMartScript0: ; 1d49b (7:549b)
- call UpdateSprites
- ld a, $4
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $ccd3
- ld de, RLEMovement1d4bb
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $1
- ld [W_VIRIDIANMARKETCURSCRIPT], a
- ret
-
-RLEMovement1d4bb: ; 1d4bb (7:54bb)
- db $20, $01
- db $40, $02
- db $ff
-
-ViridianMartScript1: ; 1d4c0 (7:54c0)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- ld a, $5
- ld [$ff8c], a
- call DisplayTextID
- ld bc, (OAKS_PARCEL << 8) + 1
- call GiveItem
- ld hl, $d74e
- set 1, [hl]
- ld a, $2
- ld [W_VIRIDIANMARKETCURSCRIPT], a
- ; fallthrough
-ViridianMartScript2: ; 1d4df (7:54df)
- ret
-
-ViridianMartTextPointers: ; 1d4e0 (7:54e0)
- dw ViridianMartText1
- dw ViridianMartText2
- dw ViridianMartText3
- dw ViridianMartText4
- dw ViridianMartText5
- dw ViridianMartText6
- dw ViridianMartText2
- dw ViridianMartText3
-
-ViridianMartText1: ; 1d4f0 (7:54f0)
- TX_FAR _ViridianMartText1
+WhichFloorText: ; 1ca14 (7:4a14)
+ TX_FAR _WhichFloorText
db "@"
-ViridianMartText4: ; 1d4f5 (7:54f5)
- TX_FAR _ViridianMartText4
- db "@"
+INCLUDE "scripts/cinnabarisland.asm"
-ViridianMartText5: ; 1d4fa (7:54fa)
- TX_FAR ViridianMartParcelQuestText
- db $11
- db "@"
+INCLUDE "scripts/route1.asm"
-ViridianMartText2: ; 1d500 (7:5500)
- TX_FAR _ViridianMartText2
- db "@"
+INCLUDE "data/mapHeaders/oakslab.asm"
-ViridianMartText3: ; 1d505 (7:5505)
- TX_FAR _ViridianMartText3
- db "@"
-
-ViridianMartObject: ; 0x1d50a (size=38)
- db $0 ; border tile
+INCLUDE "scripts/oakslab.asm"
- db $2 ; warps
- db $7, $3, $1, $ff
- db $7, $4, $1, $ff
+INCLUDE "data/mapObjects/oakslab.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/viridianmart.asm"
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $fe, $1, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $3 + 4, $ff, $ff, $3 ; person
+INCLUDE "scripts/viridianmart.asm"
- ; warp-to
- EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $3
- EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $4
+INCLUDE "data/mapObjects/viridianmart.asm"
ViridianMartBlocks: ; 1d530 (7:5530)
INCBIN "maps/viridianmart.blk"
-School_h: ; 0x1d540 to 0x1d54c (12 bytes) (bank=7) (id=43)
- db HOUSE ; tileset
- db VIRIDIAN_SCHOOL_HEIGHT, VIRIDIAN_SCHOOL_WIDTH ; dimensions (y, x)
- dw SchoolBlocks, SchoolTextPointers, SchoolScript ; blocks, texts, scripts
- db $00 ; connections
- dw SchoolObject ; objects
-
-SchoolScript: ; 1d54c (7:554c)
- jp EnableAutoTextBoxDrawing
-
-SchoolTextPointers: ; 1d54f (7:554f)
- dw SchoolText1
- dw SchoolText2
+INCLUDE "data/mapHeaders/school.asm"
-SchoolText1: ; 1d553 (7:5553)
- TX_FAR _SchoolText1
- db "@"
-
-SchoolText2: ; 1d558 (7:5558)
- TX_FAR _SchoolText2
- db "@"
+INCLUDE "scripts/school.asm"
-SchoolObject: ; 0x1d55d (size=32)
- db $a ; border tile
+INCLUDE "data/mapObjects/school.asm"
- db $2 ; warps
- db $7, $2, $2, $ff
- db $7, $3, $2, $ff
+INCLUDE "data/mapHeaders/viridianhouse.asm"
- db $0 ; signs
+INCLUDE "scripts/viridianhouse.asm"
- db $2 ; people
- db SPRITE_BRUNETTE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person
- db SPRITE_LASS, $1 + 4, $4 + 4, $ff, $d0, $2 ; person
+INCLUDE "data/mapObjects/viridianhouse.asm"
- ; warp-to
- EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $2
- EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $3
+INCLUDE "data/mapHeaders/pewterhouse1.asm"
-ViridianHouse_h: ; 0x1d57d to 0x1d589 (12 bytes) (bank=7) (id=44)
- db HOUSE ; tileset
- db VIRIDIAN_HOUSE_HEIGHT, VIRIDIAN_HOUSE_WIDTH ; dimensions (y, x)
- dw ViridianHouseBlocks, ViridianHouseTextPointers, ViridianHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianHouseObject ; objects
+INCLUDE "scripts/pewterhouse1.asm"
- db $0
+INCLUDE "data/mapObjects/pewterhouse1.asm"
-ViridianHouseScript: ; 1d58a (7:558a)
- jp EnableAutoTextBoxDrawing
+INCLUDE "data/mapHeaders/pewterhouse2.asm"
-ViridianHouseTextPointers: ; 1d58d (7:558d)
- dw ViridianHouseText1
- dw ViridianHouseText2
- dw ViridianHouseText3
- dw ViridianHouseText4
+INCLUDE "scripts/pewterhouse2.asm"
-ViridianHouseText1: ; 1d595 (7:5595)
- TX_FAR _ViridianHouseText1
- db "@"
+INCLUDE "data/mapObjects/pewterhouse2.asm"
-ViridianHouseText2: ; 1d59a (7:559a)
- TX_FAR _ViridianHouseText2
- db "@"
+INCLUDE "data/mapHeaders/ceruleanhousetrashed.asm"
-ViridianHouseText3: ; 1d59f (7:559f)
- db $08 ; asm
- ld hl, UnnamedText_1d5b1
- call PrintText
- ld a, SPEAROW
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
+INCLUDE "scripts/ceruleanhousetrashed.asm"
-UnnamedText_1d5b1: ; 1d5b1 (7:55b1)
- TX_FAR _UnnamedText_1d5b1
- db "@"
+INCLUDE "data/mapObjects/ceruleanhousetrashed.asm"
-ViridianHouseText4: ; 1d5b6 (7:55b6)
- TX_FAR _ViridianHouseText4
- db "@"
+INCLUDE "data/mapHeaders/ceruleanhouse1.asm"
-ViridianHouseObject: ; 0x1d5bb (size=44)
- db $a ; border tile
+INCLUDE "scripts/ceruleanhouse1.asm"
- db $2 ; warps
- db $7, $2, $3, $ff
- db $7, $3, $3, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_BALDING_GUY, $3 + 4, $5 + 4, $ff, $ff, $1 ; person
- db SPRITE_LITTLE_GIRL, $4 + 4, $1 + 4, $fe, $1, $2 ; person
- db SPRITE_BIRD, $5 + 4, $5 + 4, $fe, $2, $3 ; person
- db SPRITE_CLIPBOARD, $0 + 4, $4 + 4, $ff, $ff, $4 ; person
-
- ; warp-to
- EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $2
- EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $3
-
-PewterHouse1_h: ; 0x1d5e7 to 0x1d5f3 (12 bytes) (bank=7) (id=55)
- db HOUSE ; tileset
- db PEWTER_HOUSE_1_HEIGHT, PEWTER_HOUSE_1_WIDTH ; dimensions (y, x)
- dw PewterHouse1Blocks, PewterHouse1TextPointers, PewterHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw PewterHouse1Object ; objects
-
-PewterHouse1Script: ; 1d5f3 (7:55f3)
- jp EnableAutoTextBoxDrawing
-
-PewterHouse1TextPointers: ; 1d5f6 (7:55f6)
- dw PewterHouse1Text1
- dw PewterHouse1Text2
- dw PewterHouse1Text3
-
-PewterHouse1Text1: ; 1d5fc (7:55fc)
- TX_FAR _PewterHouse1Text1
- db $08 ; asm
- ld a, NIDORAN_M
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-PewterHouse1Text2: ; 1d60c (7:560c)
- TX_FAR _PewterHouse1Text2
- db "@"
-
-PewterHouse1Text3: ; 1d611 (7:5611)
- TX_FAR _PewterHouse1Text3
- db "@"
+INCLUDE "data/mapObjects/ceruleanhouse1.asm"
-PewterHouse1Object: ; 0x1d616 (size=38)
- db $a ; border tile
+INCLUDE "data/mapHeaders/bikeshop.asm"
- db $2 ; warps
- db $7, $2, $3, $ff
- db $7, $3, $3, $ff
+INCLUDE "scripts/bikeshop.asm"
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_SLOWBRO, $5 + 4, $4 + 4, $ff, $d2, $1 ; person
- db SPRITE_YOUNG_BOY, $5 + 4, $3 + 4, $ff, $d3, $2 ; person
- db SPRITE_FAT_BALD_GUY, $2 + 4, $1 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $2
- EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $3
-
-PewterHouse2_h: ; 0x1d63c to 0x1d648 (12 bytes) (bank=7) (id=57)
- db HOUSE ; tileset
- db PEWTER_HOUSE_2_HEIGHT, PEWTER_HOUSE_2_WIDTH ; dimensions (y, x)
- dw PewterHouse2Blocks, PewterHouse2TextPointers, PewterHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw PewterHouse2Object ; objects
-
-PewterHouse2Script: ; 1d648 (7:5648)
- jp EnableAutoTextBoxDrawing
-
-PewterHouse2TextPointers: ; 1d64b (7:564b)
- dw PewterHouse2Text1
- dw PewterHouse2Text2
-
-PewterHouse2Text1: ; 1d64f (7:564f)
- TX_FAR _PewterHouse2Text1
- db "@"
-
-PewterHouse2Text2: ; 1d654 (7:5654)
- TX_FAR _PewterHouse2Text2
- db "@"
-
-PewterHouse2Object: ; 0x1d659 (size=32)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $5, $ff
- db $7, $3, $5, $ff
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
- db SPRITE_BUG_CATCHER, $5 + 4, $4 + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $2
- EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $3
-
-CeruleanHouseTrashed_h: ; 0x1d679 to 0x1d685 (12 bytes) (bank=7) (id=62)
- db HOUSE ; tileset
- db TRASHED_HOUSE_HEIGHT, TRASHED_HOUSE_WIDTH ; dimensions (y, x)
- dw CeruleanHouseTrashedBlocks, CeruleanHouseTrashedTextPointers, CeruleanHouseTrashedScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanHouseTrashedObject ; objects
-
-CeruleanHouseTrashedScript: ; 1d685 (7:5685)
- call EnableAutoTextBoxDrawing
- ret
-
-CeruleanHouseTrashedTextPointers: ; 1d689 (7:5689)
- dw CeruleanHouseTrashedText1
- dw CeruleanHouseTrashedText2
- dw CeruleanHouseTrashedText3
-
-CeruleanHouseTrashedText1: ; 1d68f (7:568f)
- db $08 ; asm
- ld b, $e4
- ld a, $1c
- call Predef
- and b
- jr z, .asm_f8734 ; 0x1d698
- ld hl, UnnamedText_1d6b0
- call PrintText
- jr .asm_8dfe9 ; 0x1d6a0
-.asm_f8734 ; 0x1d6a2
- ld hl, UnnamedText_1d6ab
- call PrintText
-.asm_8dfe9 ; 0x1d6a8
- jp TextScriptEnd
-
-UnnamedText_1d6ab: ; 1d6ab (7:56ab)
- TX_FAR _UnnamedText_1d6ab
- db "@"
-
-UnnamedText_1d6b0: ; 1d6b0 (7:56b0)
- TX_FAR _UnnamedText_1d6b0
- db "@"
-
-CeruleanHouseTrashedText2: ; 1d6b5 (7:56b5)
- TX_FAR _CeruleanHouseTrashedText2
- db "@"
-
-CeruleanHouseTrashedText3: ; 1d6ba (7:56ba)
- TX_FAR _CeruleanHouseTrashedText3
- db "@"
-
-CeruleanHouseTrashedObject: ; 0x1d6bf (size=43)
- db $a ; border tile
-
- db $3 ; warps
- db $7, $2, $0, $ff
- db $7, $3, $0, $ff
- db $0, $3, $7, $ff
-
- db $1 ; signs
- db $0, $3, $3 ; CeruleanHouseTrashedText3
-
- db $2 ; people
- db SPRITE_FISHER, $1 + 4, $2 + 4, $ff, $d0, $1 ; person
- db SPRITE_GIRL, $6 + 4, $5 + 4, $fe, $2, $2 ; person
-
- ; warp-to
- EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $2
- EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $3
- EVENT_DISP TRASHED_HOUSE_WIDTH, $0, $3
-
-CeruleanHouse1_h: ; 0x1d6ea to 0x1d6f6 (12 bytes) (bank=7) (id=63)
- db HOUSE ; tileset
- db CERULEAN_HOUSE_1_HEIGHT, CERULEAN_HOUSE_1_WIDTH ; dimensions (y, x)
- dw CeruleanHouse1Blocks, CeruleanHouse1TextPointers, CeruleanHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanHouse1Object ; objects
-
-CeruleanHouse1Script: ; 1d6f6 (7:56f6)
- jp EnableAutoTextBoxDrawing
-
-CeruleanHouse1TextPointers: ; 1d6f9 (7:56f9)
- dw CeruleanHouse1Text1
- dw CeruleanHouse1Text2
-
-CeruleanHouse1Text1: ; 1d6fd (7:56fd)
- TX_FAR _CeruleanHouse1Text1
- db "@"
-
-CeruleanHouse1Text2: ; 1d702 (7:5702)
- db $08 ; asm
- ld a, $6
- ld [wWhichTrade], a
- ld a, $54
- call Predef
- jp TextScriptEnd
-
-CeruleanHouse1Object: ; 0x1d710 (size=32)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $1, $ff
- db $7, $3, $1, $ff
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_OLD_MEDIUM_WOMAN, $4 + 4, $5 + 4, $ff, $d2, $1 ; person
- db SPRITE_GAMBLER, $2 + 4, $1 + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $2
- EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $3
-
-BikeShop_h: ; 0x1d730 to 0x1d73c (12 bytes) (bank=7) (id=66)
- db CLUB ; tileset
- db BIKE_SHOP_HEIGHT, BIKE_SHOP_WIDTH ; dimensions (y, x)
- dw BikeShopBlocks, BikeShopTextPointers, BikeShopScript ; blocks, texts, scripts
- db $00 ; connections
- dw BikeShopObject ; objects
-
-BikeShopScript: ; 1d73c (7:573c)
- jp EnableAutoTextBoxDrawing
-
-BikeShopTextPointers: ; 1d73f (7:573f)
- dw BikeShopText1
- dw BikeShopText2
- dw BikeShopText3
-
-BikeShopText1: ; 1d745 (7:5745)
- db $08 ; asm
- ld a, [$d75f]
- bit 0, a
- jr z, .asm_260d4 ; 0x1d74b
- ld hl, UnnamedText_1d82f
- call PrintText
- jp .Done
-.asm_260d4 ; 0x1d756
- ld b, BIKE_VOUCHER
- call IsItemInBag
- jr z, .asm_41190 ; 0x1d75b
- ld hl, UnnamedText_1d81f
- call PrintText
- ld bc, (BICYCLE << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, BIKE_VOUCHER
- ldh [$db], a
- callba RemoveItemByID
- ld hl, $d75f
- set 0, [hl]
- ld hl, UnnamedText_1d824
- call PrintText
- jr .Done
-.BagFull
- ld hl, UnnamedText_1d834
- call PrintText
- jr .Done
-.asm_41190 ; 0x1d78c
- ld hl, UnnamedText_1d810
- call PrintText
- xor a
- ld [$cc26], a
- ld [$cc2a], a
- ld a, $3
- ld [$cc29], a
- ld a, $1
- ld [$cc28], a
- ld a, $2
- ld [$cc24], a
- ld a, $1
- ld [$cc25], a
- ld hl, $d730
- set 6, [hl]
- ld hl, wTileMap
- ld b, $4
- ld c, $f
- call TextBoxBorder
- call UpdateSprites
- FuncCoord 2, 2 ; $c3ca
- ld hl, Coord
- ld de, BikeShopMenuText
- call PlaceString
- FuncCoord 8, 3 ; $c3e4
- ld hl, Coord
- ld de, BikeShopMenuPrice
- call PlaceString
- ld hl, UnnamedText_1d815
- call PrintText
- call HandleMenuInput
- bit 1, a
- jr nz, .asm_b7579 ; 0x1d7dc
- ld hl, $d730
- res 6, [hl]
- ld a, [$cc26]
- and a
- jr nz, .asm_b7579 ; 0x1d7e7
- ld hl, UnnamedText_1d81a
- call PrintText
-.asm_b7579 ; 0x1d7ef
- ld hl, UnnamedText_1d82a
- call PrintText
-.Done
- jp TextScriptEnd
-
-BikeShopMenuText: ; 1d7f8 (7:57f8)
- db "BICYCLE"
- next "CANCEL@"
-
-BikeShopMenuPrice: ; 1d807 (7:5807)
- db "¥1000000@"
-
-UnnamedText_1d810: ; 1d810 (7:5810)
- TX_FAR _UnnamedText_1d810
- db "@"
-
-UnnamedText_1d815: ; 1d815 (7:5815)
- TX_FAR _UnnamedText_1d815
- db "@"
-
-UnnamedText_1d81a: ; 1d81a (7:581a)
- TX_FAR _UnnamedText_1d81a
- db "@"
-
-UnnamedText_1d81f: ; 1d81f (7:581f)
- TX_FAR _UnnamedText_1d81f
- db "@"
-
-UnnamedText_1d824: ; 1d824 (7:5824)
- TX_FAR _UnnamedText_1d824 ; 0x98eb2
- db $11, "@"
-
-UnnamedText_1d82a: ; 1d82a (7:582a)
- TX_FAR _UnnamedText_1d82a
- db "@"
-
-UnnamedText_1d82f: ; 1d82f (7:582f)
- TX_FAR _UnnamedText_1d82f
- db "@"
-
-UnnamedText_1d834: ; 1d834 (7:5834)
- TX_FAR _UnnamedText_1d834
- db "@"
-
-BikeShopText2: ; 1d839 (7:5839)
- db $08 ; asm
- ld hl, UnnamedText_1d843
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_1d843: ; 1d843 (7:5843)
- TX_FAR _UnnamedText_1d843
- db "@"
-
-BikeShopText3: ; 1d848 (7:5848)
- db $08 ; asm
- ld a, [$d75f]
- bit 0, a
- ld hl, UnnamedText_1d861
- jr nz, .asm_34d2d ; 0x1d851
- ld hl, UnnamedText_1d85c
-.asm_34d2d ; 0x1d856
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_1d85c: ; 1d85c (7:585c)
- TX_FAR _UnnamedText_1d85c
- db "@"
-
-UnnamedText_1d861: ; 1d861 (7:5861)
- TX_FAR _UnnamedText_1d861
- db "@"
-
-BikeShopObject: ; 0x1d866 (size=38)
- db $e ; border tile
-
- db $2 ; warps
- db $7, $2, $4, $ff
- db $7, $3, $4, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_BIKE_SHOP_GUY, $2 + 4, $6 + 4, $ff, $ff, $1 ; person
- db SPRITE_MOM_GEISHA, $6 + 4, $5 + 4, $fe, $1, $2 ; person
- db SPRITE_BUG_CATCHER, $3 + 4, $1 + 4, $ff, $d1, $3 ; person
-
- ; warp-to
- EVENT_DISP BIKE_SHOP_WIDTH, $7, $2
- EVENT_DISP BIKE_SHOP_WIDTH, $7, $3
+INCLUDE "data/mapObjects/bikeshop.asm"
BikeShopBlocks: ; 1d88c (7:588c)
INCBIN "maps/bikeshop.blk"
-LavenderHouse1_h: ; 0x1d89c to 0x1d8a8 (12 bytes) (bank=7) (id=149)
- db HOUSE ; tileset
- db LAVENDER_HOUSE_1_HEIGHT, LAVENDER_HOUSE_1_WIDTH ; dimensions (y, x)
- dw LavenderHouse1Blocks, LavenderHouse1TextPointers, LavenderHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderHouse1Object ; objects
+INCLUDE "data/mapHeaders/lavenderhouse1.asm"
-LavenderHouse1Script: ; 1d8a8 (7:58a8)
- call EnableAutoTextBoxDrawing
- ret
+INCLUDE "scripts/lavenderhouse1.asm"
-LavenderHouse1TextPointers: ; 1d8ac (7:58ac)
- dw LavenderHouse1Text1
- dw LavenderHouse1Text2
- dw LavenderHouse1Text3
- dw LavenderHouse1Text4
- dw LavenderHouse1Text5
- dw LavenderHouse1Text6
-
-LavenderHouse1Text1: ; 1d8b8 (7:58b8)
- db $08 ; asm
- ld a, [$d7e0]
- bit 7, a
- jr nz, .asm_72e5d ; 0x1d8be
- ld hl, UnnamedText_1d8d1
- call PrintText
- jr .asm_6957f ; 0x1d8c6
-.asm_72e5d ; 0x1d8c8
- ld hl, UnnamedText_1d8d6
- call PrintText
-.asm_6957f ; 0x1d8ce
- jp TextScriptEnd
-
-UnnamedText_1d8d1: ; 1d8d1 (7:58d1)
- TX_FAR _UnnamedText_1d8d1
- db "@"
-
-UnnamedText_1d8d6: ; 1d8d6 (7:58d6)
- TX_FAR _UnnamedText_1d8d6
- db "@"
-
-LavenderHouse1Text2: ; 1d8db (7:58db)
- db $08 ; asm
- ld a, [$d7e0]
- bit 7, a
- jr nz, .asm_06470 ; 0x1d8e1
- ld hl, UnnamedText_1d8f4
- call PrintText
- jr .asm_3d208 ; 0x1d8e9
-.asm_06470 ; 0x1d8eb
- ld hl, UnnamedText_1d8f9
- call PrintText
-.asm_3d208 ; 0x1d8f1
- jp TextScriptEnd
-
-UnnamedText_1d8f4: ; 1d8f4 (7:58f4)
- TX_FAR _UnnamedText_1d8f4
- db "@"
-
-UnnamedText_1d8f9: ; 1d8f9 (7:58f9)
- TX_FAR _UnnamedText_1d8f9
- db "@"
-
-LavenderHouse1Text3: ; 1d8fe (7:58fe)
- TX_FAR _LavenderHouse1Text3
- db $8
- ld a, PSYDUCK
- call PlayCry
- jp TextScriptEnd
-
-LavenderHouse1Text4: ; 1d90b (7:590b)
- TX_FAR _LavenderHouse1Text4
- db $8
- ld a, NIDORINO
- call PlayCry
- jp TextScriptEnd
-
-LavenderHouse1Text5: ; 1d918 (7:5918)
- db $08 ; asm
- ld a, [$d76c]
- bit 0, a
- jr nz, .asm_15ac2 ; 0x1d91e
- ld hl, UnnamedText_1d94c
- call PrintText
- ld bc, (POKE_FLUTE << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedFluteText
- call PrintText
- ld hl, $d76c
- set 0, [hl]
- jr .asm_da749 ; 0x1d939
-.BagFull
- ld hl, FluteNoRoomText
- call PrintText
- jr .asm_da749 ; 0x1d941
-.asm_15ac2 ; 0x1d943
- ld hl, MrFujiAfterFluteText
- call PrintText
-.asm_da749 ; 0x1d949
- jp TextScriptEnd
-
-UnnamedText_1d94c: ; 1d94c (7:594c)
- TX_FAR _UnnamedText_1d94c
- db "@"
-
-ReceivedFluteText: ; 1d951 (7:5951)
- TX_FAR _ReceivedFluteText ; 0x99ffb
- db $11
- TX_FAR _FluteExplanationText ; 0x9a011
- db "@"
-
-FluteNoRoomText: ; 1d95b (7:595b)
- TX_FAR _FluteNoRoomText
- db "@"
-
-MrFujiAfterFluteText: ; 1d960 (7:5960)
- TX_FAR _MrFujiAfterFluteText
- db "@"
-
-LavenderHouse1Text6: ; 1d965 (7:5965)
- TX_FAR _LavenderHouse1Text6
- db "@"
-
-LavenderHouse1Object: ; 0x1d96a (size=56)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $2, $ff
- db $7, $3, $2, $ff
-
- db $0 ; signs
-
- db $6 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $ff, $1 ; person
- db SPRITE_LITTLE_GIRL, $3 + 4, $6 + 4, $ff, $d0, $2 ; person
- db SPRITE_SLOWBRO, $4 + 4, $6 + 4, $ff, $d1, $3 ; person
- db SPRITE_SLOWBRO, $3 + 4, $1 + 4, $ff, $ff, $4 ; person
- db SPRITE_MR_FUJI, $1 + 4, $3 + 4, $ff, $ff, $5 ; person
- db SPRITE_BOOK_MAP_DEX, $3 + 4, $3 + 4, $ff, $ff, $6 ; person
-
- ; warp-to
- EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $2
- EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $3
-
-LavenderHouse2_h: ; 0x1d9a2 to 0x1d9ae (12 bytes) (bank=7) (id=151)
- db HOUSE ; tileset
- db LAVENDER_HOUSE_2_HEIGHT, LAVENDER_HOUSE_2_WIDTH ; dimensions (y, x)
- dw LavenderHouse2Blocks, LavenderHouse2TextPointers, LavenderHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderHouse2Object ; objects
-
-LavenderHouse2Script: ; 1d9ae (7:59ae)
- call EnableAutoTextBoxDrawing
- ret
-
-LavenderHouse2TextPointers: ; 1d9b2 (7:59b2)
- dw LavenderHouse2Text1
- dw LavenderHouse2Text2
-
-LavenderHouse2Text1: ; 1d9b6 (7:59b6)
- TX_FAR _LavenderHouse2Text1
- db $8
- ld a, CUBONE
- call PlayCry
- jp TextScriptEnd
-
-LavenderHouse2Text2: ; 1d9c3 (7:59c3)
- db $08 ; asm
- ld a, [$d7e0]
- bit 7, a
- jr nz, .asm_65711 ; 0x1d9c9
- ld hl, UnnamedText_1d9dc
- call PrintText
- jr .asm_64be1 ; 0x1d9d1
-.asm_65711 ; 0x1d9d3
- ld hl, UnnamedText_1d9e1
- call PrintText
-.asm_64be1 ; 0x1d9d9
- jp TextScriptEnd
-
-UnnamedText_1d9dc: ; 1d9dc (7:59dc)
- TX_FAR _UnnamedText_1d9dc
- db "@"
-
-UnnamedText_1d9e1: ; 1d9e1 (7:59e1)
- TX_FAR _UnnamedText_1d9e1
- db "@"
-
-LavenderHouse2Object: ; 0x1d9e6 (size=32)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $4, $ff
- db $7, $3, $4, $ff
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_SLOWBRO, $5 + 4, $3 + 4, $ff, $d1, $1 ; person
- db SPRITE_BRUNETTE_GIRL, $4 + 4, $2 + 4, $ff, $d3, $2 ; person
-
- ; warp-to
- EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $2
- EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $3
-
-NameRater_h: ; 0x1da06 to 0x1da12 (12 bytes) (bank=7) (id=229)
- db HOUSE ; tileset
- db NAME_RATERS_HOUSE_HEIGHT, NAME_RATERS_HOUSE_WIDTH ; dimensions (y, x)
- dw NameRaterBlocks, NameRaterTextPointers, NameRaterScript ; blocks, texts, scripts
- db $00 ; connections
- dw NameRaterObject ; objects
-
-NameRaterScript: ; 1da12 (7:5a12)
- jp EnableAutoTextBoxDrawing
-
-Func_1da15: ; 1da15 (7:5a15)
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- ret
-
-Func_1da20: ; 1da20 (7:5a20)
- ld hl, W_PARTYMON1OT
- ld bc, $000b
- ld a, [wWhichPokemon]
- call AddNTimes
- ld de, W_PLAYERNAME
- ld c, $b
- call .asm_1da47
- jr c, .asm_1da52 ; 0x1da34 $1c
- ld hl, $d177
- ld bc, $002c
- ld a, [wWhichPokemon]
- call AddNTimes
- ld de, $d359
- ld c, $2
-.asm_1da47
- ld a, [de]
- cp [hl]
- jr nz, .asm_1da52 ; 0x1da49 $7
- inc hl
- inc de
- dec c
- jr nz, .asm_1da47 ; 0x1da4e $f7
- and a
- ret
-.asm_1da52
- scf
- ret
-
-NameRaterTextPointers: ; 1da54 (7:5a54)
- dw NameRaterText1
-
-NameRaterText1: ; 1da56 (7:5a56)
- db $8
- call SaveScreenTilesToBuffer2
- ld hl, UnnamedText_1dab3
- call Func_1da15
- jr nz, .asm_1daae ; 0x1da60 $4c
- ld hl, UnnamedText_1dab8
- call PrintText
- xor a
- ld [$d07d], a
- ld [$cfcb], a
- ld [$cc35], a
- call DisplayPartyMenu
- push af
- call GBPalWhiteOutWithDelay3
- call Func_3dbe
- call LoadGBPal
- pop af
- jr c, .asm_1daae ; 0x1da80 $2c
- call GetPartyMonName2
- call Func_1da20
- ld hl, UnnamedText_1dad1
- jr c, .asm_1daa8 ; 0x1da8b $1b
- ld hl, UnnamedText_1dabd
- call Func_1da15
- jr nz, .asm_1daae ; 0x1da93 $19
- ld hl, UnnamedText_1dac2
- call PrintText
- callba Func_655c
- jr c, .asm_1daae ; 0x1daa3 $9
- ld hl, UnnamedText_1dac7
-.asm_1daa8
- call PrintText
- jp TextScriptEnd
-.asm_1daae
- ld hl, UnnamedText_1dacc
- jr .asm_1daa8 ; 0x1dab1 $f5
-
-UnnamedText_1dab3: ; 1dab3 (7:5ab3)
- TX_FAR _UnnamedText_1dab3
- db "@"
-
-UnnamedText_1dab8: ; 1dab8 (7:5ab8)
- TX_FAR _UnnamedText_1dab8
- db "@"
-
-UnnamedText_1dabd: ; 1dabd (7:5abd)
- TX_FAR _UnnamedText_1dabd
- db "@"
-
-UnnamedText_1dac2: ; 1dac2 (7:5ac2)
- TX_FAR _UnnamedText_1dac2
- db "@"
-
-UnnamedText_1dac7: ; 1dac7 (7:5ac7)
- TX_FAR _UnnamedText_1dac7
- db "@"
-
-UnnamedText_1dacc: ; 1dacc (7:5acc)
- TX_FAR _UnnamedText_1dacc
- db "@"
-
-UnnamedText_1dad1: ; 1dad1 (7:5ad1)
- TX_FAR _UnnamedText_1dad1
- db "@"
-
-NameRaterObject: ; 0x1dad6 (size=26)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $5, $ff
- db $7, $3, $5, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_MR_MASTERBALL, $3 + 4, $5 + 4, $ff, $d2, $1 ; person
-
- ; warp-to
- EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $2
- EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $3
-
-VermilionHouse1_h: ; 0x1daf0 to 0x1dafc (12 bytes) (bank=7) (id=93)
- db HOUSE ; tileset
- db VERMILION_HOUSE_1_HEIGHT, VERMILION_HOUSE_1_WIDTH ; dimensions (y, x)
- dw VermilionHouse1Blocks, VermilionHouse1TextPointers, VermilionHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionHouse1Object ; objects
-
-VermilionHouse1Script: ; 1dafc (7:5afc)
- call EnableAutoTextBoxDrawing
- ret
-
-VermilionHouse1TextPointers: ; 1db00 (7:5b00)
- dw VermilionHouse1Text1
- dw VermilionHouse1Text2
- dw VermilionHouse1Text3
-
-VermilionHouse1Text1: ; 1db06 (7:5b06)
- TX_FAR _VermilionHouse1Text1
- db "@"
-
-VermilionHouse1Text2: ; 1db0b (7:5b0b)
- TX_FAR _VermilionHouse1Text2
- db $08 ; asm
- ld a, PIDGEY
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-VermilionHouse1Text3: ; 1db1b (7:5b1b)
- TX_FAR _VermilionHouse1Text3
- db "@"
-
-VermilionHouse1Object: ; 0x1db20 (size=38)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $4, $ff
- db $7, $3, $4, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_BUG_CATCHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person
- db SPRITE_BIRD, $5 + 4, $3 + 4, $fe, $2, $2 ; person
- db SPRITE_PAPER_SHEET, $3 + 4, $4 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $2
- EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $3
-
-VermilionDock_h: ; 0x1db46 to 0x1db52 (12 bytes) (bank=7) (id=94)
- db SHIP_PORT ; tileset
- db VERMILION_DOCK_HEIGHT, VERMILION_DOCK_WIDTH ; dimensions (y, x)
- dw VermilionDockBlocks, VermilionDockTextPointers, VermilionDockScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionDockObject ; objects
-
-VermilionDockScript: ; 1db52 (7:5b52)
- call EnableAutoTextBoxDrawing
- ld hl, $d803
- bit 4, [hl]
- jr nz, .asm_1db8d ; 0x1db5a $31
- bit 0, [hl]
- ret z
- ld a, [$d42f]
- cp $1
- ret nz
- bit 2, [hl]
- jp z, VermilionDock_1db9b
- set 4, [hl]
- call Delay3
- ld hl, $d730
- set 7, [hl]
- ld hl, $ccd3
- ld a, $40
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $3
- ld [$cd38], a
- xor a
- ld [$c206], a
- ld [$cd3b], a
- dec a
- ld [wJoypadForbiddenButtonsMask], a
- ret
-.asm_1db8d
- bit 5, [hl]
- ret nz
- ld a, [$cd38]
- and a
- ret nz
- ld [wJoypadForbiddenButtonsMask], a
- set 5, [hl]
- ret
-
-VermilionDock_1db9b: ; 1db9b (7:5b9b)
- set 2, [hl]
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld [$c0ee], a
- call PlaySound
- ld c, BANK(Music_Surfing)
- ld a, MUSIC_SURFING
- call PlayMusic
- callba Func_79fc0
- xor a
- ld [$c102], a
- ld c, $78
- call DelayFrames
- ld b, $9c
- call CopyScreenTileBufferToVRAM
- FuncCoord 0, 10 ; $c468
- ld hl, Coord
- ld bc, $0078
- ld a, $14
- call FillMemory
- ld a, $1
- ld [$ffba], a
- call Delay3
- xor a
- ld [$ffba], a
- ld [$cd3d], a
- ld [$ff49], a
- ld a, $58
- ld [$cd3e], a
- ld hl, $d526
- ld c, [hl]
- inc hl
- ld b, [hl]
- push bc
- push hl
- ld a, (SFX_02_54 - SFX_Headers_02) / 3
- call PlaySoundWaitForCurrent
- ld a, $ff
- ld [$cfcb], a
- ld d, $0
- ld e, $8
-.asm_1dbfa
- ld hl, $0002
- add hl, bc
- ld a, l
- ld [$d526], a
- ld a, h
- ld [$d527], a
- push hl
- push de
- call ScheduleEastColumnRedraw
- call VermilionDock_1dc59
- pop de
- ld b, $10
-.asm_1dc11
- call VermilionDock_1dc42
- ld c, $8
-.asm_1dc16
- call VermilionDock_1dc7c
- dec c
- jr nz, .asm_1dc16 ; 0x1dc1a $fa
- inc d
- dec b
- jr nz, .asm_1dc11 ; 0x1dc1e $f1
- pop bc
- dec e
- jr nz, .asm_1dbfa ; 0x1dc22 $d6
- xor a
- ld [$ff4a], a
- ld [$ffb0], a
- call VermilionDock_1dc94
- ld a, $90
- ld [$ffb0], a
- ld a, $1
- ld [$cfcb], a
- pop hl
- pop bc
- ld [hl], b
- dec hl
- ld [hl], c
- call LoadPlayerSpriteGraphics
- ld hl, $d3ae
- dec [hl]
- ret
+INCLUDE "data/mapObjects/lavenderhouse1.asm"
-VermilionDock_1dc42: ; 1dc42 (7:5c42)
- push bc
- push de
- ld hl, $c311
- ld a, [$cd3d]
- swap a
- ld c, a
- ld de, $0004
-.asm_1dc50
- inc [hl]
- inc [hl]
- add hl, de
- dec c
- jr nz, .asm_1dc50 ; 0x1dc54 $fa
- pop de
- pop bc
- ret
+INCLUDE "data/mapHeaders/lavenderhouse2.asm"
-VermilionDock_1dc59: ; 1dc59 (7:5c59)
- ld a, [$cd3e]
- sub $10
- ld [$cd3e], a
- ld c, a
- ld b, $64
- ld a, [$cd3d]
- inc a
- ld [$cd3d], a
- ld a, $1
- ld de, VermilionDockOAMBlock
- call WriteOAMBlock
- ret
+INCLUDE "scripts/lavenderhouse2.asm"
-VermilionDockOAMBlock: ; 1dc74 (7:5c74)
- db $fc, $10
- db $fd, $10
- db $fe, $10
- db $ff, $10
+INCLUDE "data/mapObjects/lavenderhouse2.asm"
-VermilionDock_1dc7c: ; 1dc7c (7:5c7c)
- ld h, d
- ld l, $50
- call .asm_1dc86
- ld h, $0
- ld l, $80
-.asm_1dc86
- ld a, [$ff44]
- cp l
- jr nz, .asm_1dc86 ; 0x1dc89 $fb
- ld a, h
- ld [$ff43], a
-.asm_1dc8e
- ld a, [$ff44]
- cp h
- jr z, .asm_1dc8e ; 0x1dc91 $fb
- ret
+INCLUDE "data/mapHeaders/namerater.asm"
-VermilionDock_1dc94: ; 1dc94 (7:5c94)
- ld hl, $cc5b
- ld bc, $00b4
- ld a, $14
- call FillMemory
- ld hl, $9940
- ld de, $cc5b
- ld bc, $000c
- call CopyVideoData
- ld hl, $c754
- ld a, $d
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, (SFX_02_54 - SFX_Headers_02) / 3
- call PlaySound
- ld c, $78
- call DelayFrames
- ret
+INCLUDE "scripts/namerater.asm"
-VermilionDockTextPointers: ; 1dcbf (7:5cbf)
- dw VermilionDockText1
+INCLUDE "data/mapObjects/namerater.asm"
-VermilionDockText1: ; 1dcc1 (7:5cc1)
- TX_FAR _VermilionDockText1
- db "@"
+INCLUDE "data/mapHeaders/vermilionhouse1.asm"
-VermilionDockObject: ; 0x1dcc6 (size=20)
- db $f ; border tile
+INCLUDE "scripts/vermilionhouse1.asm"
- db $2 ; warps
- db $0, $e, $5, $ff
- db $2, $e, $1, SS_ANNE_1
+INCLUDE "data/mapObjects/vermilionhouse1.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/vermiliondock.asm"
- db $0 ; people
+INCLUDE "scripts/vermiliondock.asm"
- ; warp-to
- EVENT_DISP VERMILION_DOCK_WIDTH, $0, $e
- EVENT_DISP VERMILION_DOCK_WIDTH, $2, $e ; SS_ANNE_1
+INCLUDE "data/mapObjects/vermiliondock.asm"
VermilionDockBlocks: ; 1dcda (7:5cda)
INCBIN "maps/vermiliondock.blk"
-CeladonMansion5_h: ; 0x1dd2e to 0x1dd3a (12 bytes) (bank=7) (id=132)
- db HOUSE ; tileset
- db CELADON_MANSION_5_HEIGHT, CELADON_MANSION_5_WIDTH ; dimensions (y, x)
- dw CeladonMansion5Blocks, CeladonMansion5TextPointers, CeladonMansion5Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion5Object ; objects
-
-CeladonMansion5Script: ; 1dd3a (7:5d3a)
- jp EnableAutoTextBoxDrawing
-
-CeladonMansion5TextPointers: ; 1dd3d (7:5d3d)
- dw CeladonMansion5Text1
- dw CeladonMansion5Text2
-
-CeladonMansion5Text1: ; 1dd41 (7:5d41)
- TX_FAR _CeladonMansion5Text1
- db "@"
-
-CeladonMansion5Text2: ; 1dd46 (7:5d46)
- db $08 ; asm
- ld bc,(EEVEE << 8) | 25
- call GivePokemon
- jr nc, .asm_24365 ; 0x1dd4d
- ld a, $45
- ld [$cc4d], a
- ld a, $11
- call Predef
-.asm_24365 ; 0x1dd59
- jp TextScriptEnd
-
-CeladonMansion5Object: ; 0x1dd5c (size=32)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $2, CELADON_MANSION_4
- db $7, $3, $2, CELADON_MANSION_4
+INCLUDE "data/mapHeaders/celadonmansion5.asm"
- db $0 ; signs
+INCLUDE "scripts/celadonmansion5.asm"
- db $2 ; people
- db SPRITE_HIKER, $2 + 4, $2 + 4, $ff, $d0, $1 ; person
- db SPRITE_BALL, $3 + 4, $4 + 4, $ff, $ff, $2 ; person
+INCLUDE "data/mapObjects/celadonmansion5.asm"
- ; warp-to
- EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $2 ; CELADON_MANSION_4
- EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $3 ; CELADON_MANSION_4
+INCLUDE "data/mapHeaders/fuchsiamart.asm"
-FuchsiaMart_h: ; 0x1dd7c to 0x1dd88 (12 bytes) (bank=7) (id=152)
- db MART ; tileset
- db FUCHSIA_MART_HEIGHT, FUCHSIA_MART_WIDTH ; dimensions (y, x)
- dw FuchsiaMartBlocks, FuchsiaMartTextPointers, FuchsiaMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaMartObject ; objects
+INCLUDE "scripts/fuchsiamart.asm"
-FuchsiaMartScript: ; 1dd88 (7:5d88)
- jp EnableAutoTextBoxDrawing
-
-FuchsiaMartTextPointers: ; 1dd8b (7:5d8b)
- dw FuchsiaMartText1
- dw FuchsiaMartText2
- dw FuchsiaMartText3
-
-FuchsiaMartText2: ; 1dd91 (7:5d91)
- TX_FAR _FuchsiaMartText2
- db "@"
-
-FuchsiaMartText3: ; 1dd96 (7:5d96)
- TX_FAR _FuchsiaMartText3
- db "@"
-
-FuchsiaMartObject: ; 0x1dd9b (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $0, $ff
- db $7, $4, $0, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_FAT_BALD_GUY, $2 + 4, $4 + 4, $ff, $ff, $2 ; person
- db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $1, $3 ; person
-
- ; warp-to
- EVENT_DISP FUCHSIA_MART_WIDTH, $7, $3
- EVENT_DISP FUCHSIA_MART_WIDTH, $7, $4
+INCLUDE "data/mapObjects/fuchsiamart.asm"
FuchsiaMartBlocks: ; 1ddc1 (7:5dc1)
INCBIN "maps/fuchsiamart.blk"
-SaffronHouse1_h: ; 0x1ddd1 to 0x1dddd (12 bytes) (bank=7) (id=179)
- db HOUSE ; tileset
- db SAFFRON_HOUSE_1_HEIGHT, SAFFRON_HOUSE_1_WIDTH ; dimensions (y, x)
- dw SaffronHouse1Blocks, SaffronHouse1TextPointers, SaffronHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronHouse1Object ; objects
+INCLUDE "data/mapHeaders/saffronhouse1.asm"
-SaffronHouse1Script: ; 1dddd (7:5ddd)
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/saffronhouse1.asm"
-SaffronHouse1TextPointers: ; 1dde0 (7:5de0)
- dw SaffronHouse1Text1
- dw SaffronHouse1Text2
- dw SaffronHouse1Text3
- dw SaffronHouse1Text4
+INCLUDE "data/mapObjects/saffronhouse1.asm"
-SaffronHouse1Text1: ; 1dde8 (7:5de8)
- TX_FAR _SaffronHouse1Text1
- db "@"
+INCLUDE "data/mapHeaders/saffronhouse2.asm"
-SaffronHouse1Text2: ; 1dded (7:5ded)
- TX_FAR _SaffronHouse1Text2
- db $8
- ld a, PIDGEY
- call PlayCry
- jp TextScriptEnd
+INCLUDE "scripts/saffronhouse2.asm"
-SaffronHouse1Text3: ; 1ddfa (7:5dfa)
- TX_FAR _SaffronHouse1Text3
- db "@"
-
-SaffronHouse1Text4: ; 1ddff (7:5dff)
- TX_FAR _SaffronHouse1Text4
- db "@"
+INCLUDE "data/mapObjects/saffronhouse2.asm"
-SaffronHouse1Object: ; 0x1de04 (size=44)
- db $a ; border tile
+INCLUDE "data/mapHeaders/diglettscaveroute2.asm"
- db $2 ; warps
- db $7, $2, $3, $ff
- db $7, $3, $3, $ff
+INCLUDE "scripts/diglettscaveroute2.asm"
- db $0 ; signs
+INCLUDE "data/mapObjects/diglettscaveroute2.asm"
- db $4 ; people
- db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
- db SPRITE_BIRD, $4 + 4, $0 + 4, $fe, $1, $2 ; person
- db SPRITE_BUG_CATCHER, $1 + 4, $4 + 4, $ff, $d0, $3 ; person
- db SPRITE_PAPER_SHEET, $3 + 4, $3 + 4, $ff, $ff, $4 ; person
+INCLUDE "data/mapHeaders/route2house.asm"
- ; warp-to
- EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $2
- EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $3
+INCLUDE "scripts/route2house.asm"
-SaffronHouse2_h: ; 0x1de30 to 0x1de3c (12 bytes) (bank=7) (id=183)
- db HOUSE ; tileset
- db SAFFRON_HOUSE_2_HEIGHT, SAFFRON_HOUSE_2_WIDTH ; dimensions (y, x)
- dw SaffronHouse2Blocks, SaffronHouse2TextPointers, SaffronHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronHouse2Object ; objects
+INCLUDE "data/mapObjects/route2house.asm"
-SaffronHouse2Script: ; 1de3c (7:5e3c)
- jp EnableAutoTextBoxDrawing
-
-SaffronHouse2TextPointers: ; 1de3f (7:5e3f)
- dw SaffronHouse2Text1
-
-SaffronHouse2Text1: ; 1de41 (7:5e41)
- db $08 ; asm
- ld a, [$d7bd]
- bit 0, a
- jr nz, .asm_9e72b ; 0x1de47
- ld hl, TM29PreReceiveText
- call PrintText
- ld bc,(TM_29 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM29Text
- call PrintText
- ld hl, $d7bd
- set 0, [hl]
- jr .asm_fe4e1 ; 0x1de62
-.BagFull
- ld hl, TM29NoRoomText
- call PrintText
- jr .asm_fe4e1 ; 0x1de6a
-.asm_9e72b ; 0x1de6c
- ld hl, TM29ExplanationText
- call PrintText
-.asm_fe4e1 ; 0x1de72
- jp TextScriptEnd
-
-TM29PreReceiveText: ; 1de75 (7:5e75)
- TX_FAR _TM29PreReceiveText
- db "@"
-
-ReceivedTM29Text: ; 1de7a (7:5e7a)
- TX_FAR _ReceivedTM29Text ; 0xa252a
- db $0B, "@"
-
-TM29ExplanationText: ; 1de80 (7:5e80)
- TX_FAR _TM29ExplanationText
- db "@"
-
-TM29NoRoomText: ; 1de85 (7:5e85)
- TX_FAR _TM29NoRoomText
- db "@"
-
-SaffronHouse2Object: ; 0x1de8a (size=26)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $7, $ff
- db $7, $3, $7, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person
-
- ; warp-to
- EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $2
- EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $3
-
-DiglettsCaveRoute2_h: ; 0x1dea4 to 0x1deb0 (12 bytes) (bank=7) (id=46)
- db CAVERN ; tileset
- db DIGLETTS_CAVE_EXIT_HEIGHT, DIGLETTS_CAVE_EXIT_WIDTH ; dimensions (y, x)
- dw DiglettsCaveRoute2Blocks, DiglettsCaveRoute2TextPointers, DiglettsCaveRoute2Script ; blocks, texts, scripts
- db $00 ; connections
- dw DiglettsCaveRoute2Object ; objects
-
-DiglettsCaveRoute2Script: ; 1deb0 (7:5eb0)
- ld a, ROUTE_2
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-DiglettsCaveRoute2TextPointers: ; 1deb8 (7:5eb8)
- dw DiglettsCaveRoute2Text1
-
-DiglettsCaveRoute2Text1: ; 1deba (7:5eba)
- TX_FAR _DiglettsCaveRoute2Text1
- db "@"
+INCLUDE "data/mapHeaders/route5gate.asm"
-DiglettsCaveRoute2Object: ; 0x1debf (size=34)
- db $7d ; border tile
+INCLUDE "scripts/route5gate.asm"
- db $3 ; warps
- db $7, $2, $0, $ff
- db $7, $3, $0, $ff
- db $4, $4, $0, DIGLETTS_CAVE
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $2
- EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $3
- EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $4, $4 ; DIGLETTS_CAVE
-
-Route2House_h: ; 0x1dee1 to 0x1deed (12 bytes) (bank=7) (id=48)
- db HOUSE ; tileset
- db ROUTE_2_HOUSE_HEIGHT, ROUTE_2_HOUSE_WIDTH ; dimensions (y, x)
- dw Route2HouseBlocks, Route2HouseTextPointers, Route2HouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route2HouseObject ; objects
-
-Route2HouseScript: ; 1deed (7:5eed)
- jp EnableAutoTextBoxDrawing
-
-Route2HouseTextPointers: ; 1def0 (7:5ef0)
- dw Route2HouseText1
- dw Route2HouseText2
-
-Route2HouseText1: ; 1def4 (7:5ef4)
- TX_FAR _Route2HouseText1
- db "@"
-
-Route2HouseText2: ; 1def9 (7:5ef9)
- db $08 ; asm
- ld a, $1
- ld [wWhichTrade], a
- ld a, $54
- call Predef
- jp TextScriptEnd
-
-Route2HouseObject: ; 0x1df07 (size=32)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $2, $ff
- db $7, $3, $2, $ff
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_OAK_AIDE, $4 + 4, $2 + 4, $ff, $d3, $1 ; person
- db SPRITE_GAMEBOY_KID_COPY, $1 + 4, $4 + 4, $ff, $d0, $2 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $2
- EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $3
-
-Route5Gate_h: ; 0x1df27 to 0x1df33 (12 bytes) (bank=7) (id=70)
- db GATE ; tileset
- db ROUTE_5_GATE_HEIGHT, ROUTE_5_GATE_WIDTH ; dimensions (y, x)
- dw Route5GateBlocks, Route5GateTextPointers, Route5GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route5GateObject ; objects
-
-Route5GateScript: ; 1df33 (7:5f33)
- call EnableAutoTextBoxDrawing
- ld a, [W_ROUTE5GATECURSCRIPT]
- ld hl, Route5GateScriptPointers
- jp CallFunctionInTable
-
-Route5GateScriptPointers: ; 1df3f (7:5f3f)
- dw Route5GateScript0
- dw Route5GateScript1
-
-Route5GateScript_1df43: ; 1df43 (7:5f43)
- ld a, $40
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- jp Func_3486
-
-Route5GateScript0: ; 1df50 (7:5f50)
- ld a, [$d728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1df8f
- call ArePlayerCoordsInArray
- ret nc
- ld a, $2
- ld [$d528], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1df82 ; 0x1df70 $10
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- call Route5GateScript_1df43
- ld a, $1
- ld [W_ROUTE5GATECURSCRIPT], a
- ret
-.asm_1df82
- ld a, $3
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d728
- set 6, [hl]
- ret
-
-CoordsData_1df8f: ; 1df8f (7:5f8f)
- db 3,3
- db 3,4
- db $ff
-
-Route5GateScript1: ; 1df94 (7:5f94)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE5GATECURSCRIPT], a
- ret
-
-Route5GateTextPointers: ; 1dfa4 (7:5fa4)
- dw Route5GateText1
- dw Route5GateText2
- dw Route5GateText3
-
-Route8GateText1: ; 1dfaa (7:5faa)
-Route7GateText1: ; 1dfaa (7:5faa)
-Route6GateText1: ; 1dfaa (7:5faa)
-Route5GateText1: ; 1dfaa (7:5faa)
- db $8
- ld a, [$d728]
- bit 6, a
- jr nz, .asm_88856 ; 0x1dfb0 $2c
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_768a2 ; 0x1dfbd $11
- ld hl, UnnamedText_1dfe7
- call PrintText
- call Route5GateScript_1df43
- ld a, $1
- ld [W_ROUTE5GATECURSCRIPT], a
- jp TextScriptEnd
-.asm_768a2 ; 0x1dfd0
- ld hl, UnnamedText_1dfec
- call PrintText
- ld hl, $d728
- set 6, [hl]
- jp TextScriptEnd
-.asm_88856 ; 0x1dfde
- ld hl, UnnamedText_1dff6
- call PrintText
- jp TextScriptEnd
-
-Route8GateText2: ; 1dfe7 (7:5fe7)
-Route7GateText2: ; 1dfe7 (7:5fe7)
-Route6GateText2: ; 1dfe7 (7:5fe7)
-Route5GateText2: ; 1dfe7 (7:5fe7)
-UnnamedText_1dfe7: ; 1dfe7 (7:5fe7)
- TX_FAR _UnnamedText_1dfe7
- db "@"
-
-Route8GateText3: ; 1dfec (7:5fec)
-Route7GateText3: ; 1dfec (7:5fec)
-Route6GateText3: ; 1dfec (7:5fec)
-Route5GateText3: ; 1dfec (7:5fec)
-UnnamedText_1dfec: ; 1dfec (7:5fec)
- TX_FAR _UnnamedText_8aaa9 ; 0x8aaa9
- db $11
- TX_FAR _UnnamedText_1dff1 ; 0x8aaef
- db "@"
-
-UnnamedText_1dff6: ; 1dff6 (7:5ff6)
- TX_FAR _UnnamedText_1dff6
- db "@"
-
-Route5GateObject: ; 0x1dffb (size=42)
- db $a ; border tile
-
- db $4 ; warps
- db $5, $3, $2, $ff
- db $5, $4, $2, $ff
- db $0, $3, $1, $ff
- db $0, $4, $0, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $d3, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $3
- EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $4
- EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $3
- EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $4
+INCLUDE "data/mapObjects/route5gate.asm"
Route5GateBlocks: ; 1e025 (7:6025)
INCBIN "maps/route5gate.blk"
-Route6Gate_h: ; 0x1e031 to 0x1e03d (12 bytes) (bank=7) (id=73)
- db GATE ; tileset
- db ROUTE_6_GATE_HEIGHT, ROUTE_6_GATE_WIDTH ; dimensions (y, x)
- dw Route6GateBlocks, Route6GateTextPointers, Route6GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route6GateObject ; objects
+INCLUDE "data/mapHeaders/route6gate.asm"
-Route6GateScript: ; 1e03d (7:603d)
- call EnableAutoTextBoxDrawing
- ld hl, Route6GateScriptPointers
- ld a, [W_ROUTE6GATECURSCRIPT]
- call CallFunctionInTable
- ret
+INCLUDE "scripts/route6gate.asm"
-Route6GateScriptPointers: ; 1e04a (7:604a)
- dw Route6GateScript0
- dw Route6GateScript1
-
-Route6GateScript0: ; 1e04e (7:604e)
- ld a, [$d728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1e08c
- call ArePlayerCoordsInArray
- ret nc
- ld a, $1
- ld [$d528], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1e080 ; 0x1e06e $10
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- call Func_1e0a1
- ld a, $1
- ld [W_ROUTE6GATECURSCRIPT], a
- ret
-.asm_1e080
- ld hl, $d728
- set 6, [hl]
- ld a, $3
- ld [$ff8c], a
- jp DisplayTextID
-
-CoordsData_1e08c: ; 1e08c (7:608c)
- db $02,$03
- db $02,$04,$FF
-
-Route6GateScript1: ; 1e091 (7:6091)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE6GATECURSCRIPT], a
- ret
-
-Func_1e0a1: ; 1e0a1 (7:60a1)
- ld hl, $d730
- set 7, [hl]
- ld a, $80
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- xor a
- ld [$c206], a
- ld [$cd3b], a
- ret
-
-Route6GateTextPointers: ; 1e0b8 (7:60b8)
- dw Route6GateText1
- dw Route6GateText2
- dw Route6GateText3
-
-Route6GateObject: ; 0x1e0be (size=42)
- db $a ; border tile
-
- db $4 ; warps
- db $5, $3, $2, $ff
- db $5, $4, $2, $ff
- db $0, $3, $1, $ff
- db $0, $4, $1, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $3
- EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $4
- EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $3
- EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $4
+INCLUDE "data/mapObjects/route6gate.asm"
Route6GateBlocks: ; 1e0e8 (7:60e8)
INCBIN "maps/route6gate.blk"
-Route7Gate_h: ; 0x1e0f4 to 0x1e100 (12 bytes) (bank=7) (id=76)
- db GATE ; tileset
- db ROUTE_7_GATE_HEIGHT, ROUTE_7_GATE_WIDTH ; dimensions (y, x)
- dw Route7GateBlocks, Route7GateTextPointers, Route7GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route7GateObject ; objects
-
-Route7GateScript: ; 1e100 (7:6100)
- call EnableAutoTextBoxDrawing
- ld a, [W_ROUTE7GATECURSCRIPT]
- ld hl, Route7GateScriptPointers
- call CallFunctionInTable
- ret
-
-Route7GateScriptPointers: ; 1e10d (7:610d)
- dw Route7GateScript0
- dw Route7GateScript1
-
-Route7GateScript_1e111: ; 1e111 (7:6111)
- ld hl, $d730
- set 7, [hl]
- ld a, $20
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- xor a
- ld [$c206], a
- ld [$cd3b], a
- ret
-
-Route7GateScript0: ; 1e128 (7:6128)
- ld a, [$d728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1e167
- call ArePlayerCoordsInArray
- ret nc
- ld a, $8
- ld [$d528], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1e15a ; 0x1e148 $10
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- call Route7GateScript_1e111
- ld a, $1
- ld [W_ROUTE7GATECURSCRIPT], a
- ret
-.asm_1e15a
- ld a, $3
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d728
- set 6, [hl]
- ret
-
-CoordsData_1e167: ; 1e167 (7:6167)
- db 3,3
- db 4,3
- db $ff
-
-Route7GateScript1: ; 1e16c (7:616c)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE7GATECURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route7GateTextPointers: ; 1e17f (7:617f)
- dw Route7GateText1
- dw Route7GateText2
- dw Route7GateText3
-
-Route7GateObject: ; 0x1e185 (size=42)
- db $a ; border tile
-
- db $4 ; warps
- db $3, $0, $3, $ff
- db $4, $0, $3, $ff
- db $3, $5, $0, $ff
- db $4, $5, $1, $ff
+INCLUDE "data/mapHeaders/route7gate.asm"
- db $0 ; signs
+INCLUDE "scripts/route7gate.asm"
- db $1 ; people
- db SPRITE_GUARD, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $0
- EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $0
- EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $5
- EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $5
+INCLUDE "data/mapObjects/route7gate.asm"
Route7GateBlocks: ; 1e1af (7:61af)
INCBIN "maps/route7gate.blk"
-Route8Gate_h: ; 0x1e1bb to 0x1e1c7 (12 bytes) (bank=7) (id=79)
- db GATE ; tileset
- db ROUTE_8_GATE_HEIGHT, ROUTE_8_GATE_WIDTH ; dimensions (y, x)
- dw Route8GateBlocks, Route8GateTextPointers, Route8GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route8GateObject ; objects
+INCLUDE "data/mapHeaders/route8gate.asm"
-Route8GateScript: ; 1e1c7 (7:61c7)
- call EnableAutoTextBoxDrawing
- ld hl, Route8GateScriptPointers
- ld a, [W_ROUTE8GATECURSCRIPT]
- jp CallFunctionInTable
+INCLUDE "scripts/route8gate.asm"
-Route8GateScriptPointers: ; 1e1d3 (7:61d3)
- dw Route8GateScript0
- dw Route8GateScript1
-
-Route8GateScript_1e1d7: ; 1e1d7 (7:61d7)
- ld hl, $d730
- set 7, [hl]
- ld a, $10
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- xor a
- ld [$c206], a
- ld [$cd3b], a
- ret
-
-Route8GateScript0: ; 1e1ee (7:61ee)
- ld a, [$d728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1e22c
- call ArePlayerCoordsInArray
- ret nc
- ld a, $2
- ld [$d528], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1e220 ; 0x1e20e $10
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- call Route8GateScript_1e1d7
- ld a, $1
- ld [W_ROUTE8GATECURSCRIPT], a
- ret
-.asm_1e220
- ld hl, $d728
- set 6, [hl]
- ld a, $3
- ld [$ff8c], a
- jp DisplayTextID
-
-CoordsData_1e22c: ; 1e22c (7:622c)
- db 3,2
- db 4,2
- db $ff
-
-Route8GateScript1: ; 1e231 (7:6231)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE8GATECURSCRIPT], a
- ret
-
-Route8GateTextPointers: ; 1e241 (7:6241)
- dw Route8GateText1
- dw Route8GateText2
- dw Route8GateText3
-
-Route8GateObject: ; 0x1e247 (size=42)
- db $a ; border tile
-
- db $4 ; warps
- db $3, $0, $0, $ff
- db $4, $0, $1, $ff
- db $3, $5, $2, $ff
- db $4, $5, $3, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GUARD, $1 + 4, $2 + 4, $ff, $d0, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $0
- EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $0
- EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $5
- EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $5
+INCLUDE "data/mapObjects/route8gate.asm"
Route8GateBlocks: ; 1e271 (7:6271)
INCBIN "maps/route8gate.blk"
-UndergroundPathEntranceRoute8_h: ; 0x1e27d to 0x1e289 (12 bytes) (bank=7) (id=80)
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_8_HEIGHT, PATH_ENTRANCE_ROUTE_8_WIDTH ; dimensions (y, x)
- dw UndergroundPathEntranceRoute8Blocks, UndergroundPathEntranceRoute8TextPointers, UndergroundPathEntranceRoute8Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute8Object ; objects
-
-UndergroundPathEntranceRoute8Script: ; 1e289 (7:6289)
- ld a, ROUTE_8
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathEntranceRoute8TextPointers: ; 1e291 (7:6291)
- dw UndergroundPathEntranceRoute8Text1
-
-UndergroundPathEntranceRoute8Text1: ; 1e293 (7:6293)
- TX_FAR _UndergroundPathEntRoute8Text1
- db "@"
-
-UndergroundPathEntranceRoute8Object: ; 0x1e298 (size=34)
- db $a ; border tile
-
- db $3 ; warps
- db $7, $3, $4, $ff
- db $7, $4, $4, $ff
- db $4, $4, $1, UNDERGROUND_PATH_WE
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GIRL, $4 + 4, $3 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $3
- EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $4
- EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE
+INCLUDE "data/mapHeaders/undergroundpathentranceroute8.asm"
-PowerPlant_h: ; 0x1e2ba to 0x1e2c6 (12 bytes) (bank=7) (id=83)
- db FACILITY ; tileset
- db POWER_PLANT_HEIGHT, POWER_PLANT_WIDTH ; dimensions (y, x)
- dw PowerPlantBlocks, PowerPlantTextPointers, PowerPlantScript ; blocks, texts, scripts
- db $00 ; connections
- dw PowerPlantObject ; objects
+INCLUDE "scripts/undergroundpathentranceroute8.asm"
-PowerPlantScript: ; 1e2c6 (7:62c6)
- call EnableAutoTextBoxDrawing
- ld hl, PowerPlantTrainerHeaders
- ld de, PowerPlantScriptPointers
- ld a, [W_POWERPLANTCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_POWERPLANTCURSCRIPT], a
- ret
-
-PowerPlantScriptPointers: ; 1e2d9 (7:62d9)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-PowerPlantTextPointers: ; 1e2df (7:62df)
- dw PowerPlantText1
- dw PowerPlantText2
- dw PowerPlantText3
- dw PowerPlantText4
- dw PowerPlantText5
- dw PowerPlantText6
- dw PowerPlantText7
- dw PowerPlantText8
- dw PowerPlantText9
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-PowerPlantTrainerHeaders: ; 1e2fb (7:62fb)
-PowerPlantTrainerHeader0: ; 1e2fb (7:62fb)
- db 1 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader1: ; 1e307 (7:6307)
- db 2 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader2: ; 1e313 (7:6313)
- db 3 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader3: ; 1e31f (7:631f)
- db 4 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader4: ; 1e32b (7:632b)
- db 5 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader5: ; 1e337 (7:6337)
- db 6 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader6: ; 1e343 (7:6343)
- db 7 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader7: ; 1e34f (7:634f)
- db 8 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-PowerPlantTrainerHeader8: ; 1e35b (7:635b)
- db 9 ; flag's bit
- db 0 ; view range
- dw $d7d3 ; flag's byte
- dw ZapdosBattleText ; TextBeforeBattle
- dw ZapdosBattleText ; TextAfterBattle
- dw ZapdosBattleText ; TextEndBattle
- dw ZapdosBattleText ; TextEndBattle
-
- db $ff
-
-asm_234cc: ; 1e368 (7:6368)
- call TalkToTrainer
- ld a, [W_CURMAPSCRIPT]
- ld [W_POWERPLANTCURSCRIPT], a
- jp TextScriptEnd
-
-PowerPlantText1: ; 1e374 (7:6374)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader0 ; $62fb
- jr asm_234cc ; 0x1e378 $ee
+INCLUDE "data/mapObjects/undergroundpathentranceroute8.asm"
-PowerPlantText2: ; 1e37a (7:637a)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader1 ; $6307
- jr asm_234cc ; 0x1e37e $e8
-
-PowerPlantText3: ; 1e380 (7:6380)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader2 ; $6313
- jr asm_234cc ; 0x1e384 $e2
-
-PowerPlantText4: ; 1e386 (7:6386)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader3 ; $631f
- jr asm_234cc ; 0x1e38a $dc
+INCLUDE "data/mapHeaders/powerplant.asm"
-PowerPlantText5: ; 1e38c (7:638c)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader4 ; $632b
- jr asm_234cc ; 0x1e390 $d6
+INCLUDE "scripts/powerplant.asm"
-PowerPlantText6: ; 1e392 (7:6392)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader5 ; $6337
- jr asm_234cc ; 0x1e396 $d0
-
-PowerPlantText7: ; 1e398 (7:6398)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader6 ; $6343
- jr asm_234cc ; 0x1e39c $ca
-
-PowerPlantText8: ; 1e39e (7:639e)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader7 ; $634f
- jr asm_234cc ; 0x1e3a2 $c4
-
-PowerPlantText9: ; 1e3a4 (7:63a4)
- db $8 ; asm
- ld hl, PowerPlantTrainerHeader8 ; $635b
- jr asm_234cc ; 0x1e3a8 $be
-
-VoltorbBattleText: ; 1e3aa (7:63aa)
- TX_FAR _VoltorbBattleText ; 0x8c5e2
- db "@"
-
-ZapdosBattleText: ; 1e3af (7:63af)
- TX_FAR _ZapdosBattleText ; 0x8c5ea
- db $8
- ld a, ZAPDOS
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-PowerPlantObject: ; 0x1e3bf (size=135)
- db $2e ; border tile
-
- db $3 ; warps
- db $23, $4, $3, $ff
- db $23, $5, $3, $ff
- db $b, $0, $3, $ff
-
- db $0 ; signs
-
- db $e ; people
- db SPRITE_BALL, $14 + 4, $9 + 4, $ff, $ff, $41, VOLTORB, 40 ; trainer
- db SPRITE_BALL, $12 + 4, $20 + 4, $ff, $ff, $42, VOLTORB, 40 ; trainer
- db SPRITE_BALL, $19 + 4, $15 + 4, $ff, $ff, $43, VOLTORB, 40 ; trainer
- db SPRITE_BALL, $12 + 4, $19 + 4, $ff, $ff, $44, ELECTRODE, 43 ; trainer
- db SPRITE_BALL, $22 + 4, $17 + 4, $ff, $ff, $45, VOLTORB, 40 ; trainer
- db SPRITE_BALL, $1c + 4, $1a + 4, $ff, $ff, $46, VOLTORB, 40 ; trainer
- db SPRITE_BALL, $e + 4, $15 + 4, $ff, $ff, $47, ELECTRODE, 43 ; trainer
- db SPRITE_BALL, $20 + 4, $25 + 4, $ff, $ff, $48, VOLTORB, 40 ; trainer
- db SPRITE_BIRD, $9 + 4, $4 + 4, $ff, $d1, $49, ZAPDOS, 50 ; trainer
- db SPRITE_BALL, $19 + 4, $7 + 4, $ff, $ff, $8a, CARBOS ; item
- db SPRITE_BALL, $3 + 4, $1c + 4, $ff, $ff, $8b, HP_UP ; item
- db SPRITE_BALL, $3 + 4, $22 + 4, $ff, $ff, $8c, RARE_CANDY ; item
- db SPRITE_BALL, $20 + 4, $1a + 4, $ff, $ff, $8d, TM_25 ; item
- db SPRITE_BALL, $20 + 4, $14 + 4, $ff, $ff, $8e, TM_33 ; item
-
- ; warp-to
- EVENT_DISP POWER_PLANT_WIDTH, $23, $4
- EVENT_DISP POWER_PLANT_WIDTH, $23, $5
- EVENT_DISP POWER_PLANT_WIDTH, $b, $0
+INCLUDE "data/mapObjects/powerplant.asm"
PowerPlantBlocks: ; 1e446 (7:6446)
INCBIN "maps/powerplant.blk"
-DiglettsCaveEntranceRoute11_h: ; 0x1e5ae to 0x1e5ba (12 bytes) (bank=7) (id=85)
- db CAVERN ; tileset
- db DIGLETTS_CAVE_ENTRANCE_HEIGHT, DIGLETTS_CAVE_ENTRANCE_WIDTH ; dimensions (y, x)
- dw DiglettsCaveEntranceRoute11Blocks, DiglettsCaveEntranceRoute11TextPointers, DiglettsCaveEntranceRoute11Script ; blocks, texts, scripts
- db $00 ; connections
- dw DiglettsCaveEntranceRoute11Object ; objects
-
-DiglettsCaveEntranceRoute11Script: ; 1e5ba (7:65ba)
- call EnableAutoTextBoxDrawing
- ld a, ROUTE_11
- ld [wLastMap], a
- ret
-
-DiglettsCaveEntranceRoute11TextPointers: ; 1e5c3 (7:65c3)
- dw DiglettsCaveEntranceRoute11Text1
-
-DiglettsCaveEntranceRoute11Text1: ; 1e5c5 (7:65c5)
- TX_FAR _DiglettsCaveEntRoute11Text1
- db "@"
-
-DiglettsCaveEntranceRoute11Object: ; 0x1e5ca (size=34)
- db $7d ; border tile
-
- db $3 ; warps
- db $7, $2, $4, $ff
- db $7, $3, $4, $ff
- db $4, $4, $1, DIGLETTS_CAVE
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $2
- EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $3
- EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $4, $4 ; DIGLETTS_CAVE
-
-Route16House_h: ; 0x1e5ec to 0x1e5f8 (12 bytes) (bank=7) (id=188)
- db HOUSE ; tileset
- db ROUTE_16_HOUSE_HEIGHT, ROUTE_16_HOUSE_WIDTH ; dimensions (y, x)
- dw Route16HouseBlocks, Route16HouseTextPointers, Route16HouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route16HouseObject ; objects
-
-Route16HouseScript: ; 1e5f8 (7:65f8)
- jp EnableAutoTextBoxDrawing
-
-Route16HouseTextPointers: ; 1e5fb (7:65fb)
- dw Route16HouseText1
- dw Route16HouseText2
-
-Route16HouseText1: ; 1e5ff (7:65ff)
- db $08 ; asm
- ld a, [$d7e0]
- bit 6, a
- ld hl, HM02ExplanationText
- jr nz, .asm_13616 ; 0x1e608
- ld hl, Route16HouseText3
- call PrintText
- ld bc, (HM_02 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d7e0
- set 6, [hl]
- ld hl, ReceivedHM02Text
- jr .asm_13616 ; 0x1e620
-.BagFull
- ld hl, HM02NoRoomText
-.asm_13616 ; 0x1e625
- call PrintText
- jp TextScriptEnd
-
-Route16HouseText3: ; 1e62b (7:662b)
- TX_FAR _Route16HouseText3
- db "@"
-
-ReceivedHM02Text: ; 1e630 (7:6630)
- TX_FAR _ReceivedHM02Text ; 0x8ce66
- db $11, "@"
-
-HM02ExplanationText: ; 1e636 (7:6636)
- TX_FAR _HM02ExplanationText
- db "@"
-
-HM02NoRoomText: ; 1e63b (7:663b)
- TX_FAR _HM02NoRoomText
- db "@"
-
-Route16HouseText2: ; 1e640 (7:6640)
- db $08 ; asm
- ld hl, UnnamedText_1e652
- call PrintText
- ld a, FEAROW
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-UnnamedText_1e652: ; 1e652 (7:6652)
- TX_FAR _UnnamedText_1e652
- db "@"
+INCLUDE "data/mapHeaders/diglettscaveroute11.asm"
-Route16HouseObject: ; 0x1e657 (size=32)
- db $a ; border tile
+INCLUDE "scripts/diglettscaveroute11.asm"
- db $2 ; warps
- db $7, $2, $8, $ff
- db $7, $3, $8, $ff
+INCLUDE "data/mapObjects/diglettscaveroute11.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/route16house.asm"
- db $2 ; people
- db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
- db SPRITE_BIRD, $4 + 4, $6 + 4, $fe, $0, $2 ; person
+INCLUDE "scripts/route16house.asm"
- ; warp-to
- EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $2
- EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $3
+INCLUDE "data/mapObjects/route16house.asm"
-Route22Gate_h: ; 0x1e677 to 0x1e683 (12 bytes) (bank=7) (id=193)
- db GATE ; tileset
- db ROUTE_22_GATE_HEIGHT, ROUTE_22_GATE_WIDTH ; dimensions (y, x)
- dw Route22GateBlocks, Route22GateTextPointers, Route22GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route22GateObject ; objects
+INCLUDE "data/mapHeaders/route22gate.asm"
-Route22GateScript: ; 1e683 (7:6683)
- call EnableAutoTextBoxDrawing
- ld hl, Route22GateScriptPointers
- ld a, [W_ROUTE22GATECURSCRIPT]
- call CallFunctionInTable
- ld a, [$d361]
- cp $4
- ld a, ROUTE_23
- jr c, .asm_1e69a ; 0x1e696 $2
- ld a, ROUTE_22
-.asm_1e69a
- ld [wLastMap], a
- ret
+INCLUDE "scripts/route22gate.asm"
-Route22GateScriptPointers: ; 1e69e (7:669e)
- dw Route22GateScript0
- dw Route22GateScript1
- dw Route22GateScript2
-
-Route22GateScript0: ; 1e6a4 (7:66a4)
- ld hl, Route22GateScriptCoords
- call ArePlayerCoordsInArray
- ret nc
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $1
- ld [$ff8c], a
- jp DisplayTextID
-
-Route22GateScriptCoords: ; 1e6b5 (7:66b5)
- db 2,4
- db 2,5
- db $ff
-
-Func_1e6ba: ; 1e6ba (7:66ba)
- ld a, $1
- ld [$cd38], a
- ld a, $80
- ld [$ccd3], a
- ld [$c109], a
- ld [wJoypadForbiddenButtonsMask], a
- jp Func_3486
-
-Route22GateScript1: ; 1e6cd (7:66cd)
- ld a, [$cd38]
- and a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- call Delay3
- ld a, $0
- ld [W_ROUTE22GATECURSCRIPT], a
-Route22GateScript2: ; 1e6de (7:66de)
- ret
-
-Route22GateTextPointers: ; 1e6df (7:66df)
- dw Route22GateText1
-
-Route22GateText1: ; 1e6e1 (7:66e1)
- db $8
- ld a, [W_OBTAINEDBADGES]
- bit 0, a
- jr nz, .asm_8a809 ; 0x1e6e7 $d
- ld hl, UnnamedText_1e704
- call PrintText
- call Func_1e6ba
- ld a, $1
- jr .asm_20f7e ; 0x1e6f4 $8
-.asm_8a809 ; 0x1e6f6
- ld hl, UnnamedText_1e71a
- call PrintText
- ld a, $2
-.asm_20f7e ; 0x1e6fe
- ld [W_ROUTE22GATECURSCRIPT], a
- jp TextScriptEnd
-
-UnnamedText_1e704: ; 1e704 (7:6704)
- TX_FAR _UnnamedText_1e704 ; 0x8cfbb
- db $8
- ld a, (SFX_02_51 - SFX_Headers_02) / 3
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- ld hl, UnnamedText_1e715 ; $6715
- ret
-
-UnnamedText_1e715: ; 1e715 (7:6715)
- TX_FAR _UnnamedText_1e715
- db "@"
-
-UnnamedText_1e71a: ; 1e71a (7:671a)
- TX_FAR _UnnamedText_1e71a ; 0x8d03e
- db $0B, "@"
-
-Route22GateObject: ; 0x1e720 (size=42)
- db $a ; border tile
-
- db $4 ; warps
- db $7, $4, $0, $ff
- db $7, $5, $0, $ff
- db $0, $4, $0, $ff
- db $0, $5, $1, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $4
- EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $5
- EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $4
- EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $5
+INCLUDE "data/mapObjects/route22gate.asm"
Route22GateBlocks: ; 1e74a (7:674a)
INCBIN "maps/route22gate.blk"
-BillsHouse_h: ; 0x1e75e to 0x1e76a (12 bytes) (bank=7) (id=88)
- db INTERIOR ; tileset
- db BILLS_HOUSE_HEIGHT, BILLS_HOUSE_WIDTH ; dimensions (y, x)
- dw BillsHouseBlocks, BillsHouseTextPointers, BillsHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw BillsHouseObject ; objects
+INCLUDE "data/mapHeaders/billshouse.asm"
-BillsHouseScript: ; 1e76a (7:676a)
- call EnableAutoTextBoxDrawing
- ld a, [W_BILLSHOUSECURSCRIPT]
- ld hl, BillsHouseScriptPointers
- jp CallFunctionInTable
+INCLUDE "scripts/billshouse.asm"
-BillsHouseScriptPointers: ; 1e776 (7:6776)
- dw BillsHouseScript0
- dw BillsHouseScript1
- dw BillsHouseScript2
- dw BillsHouseScript3
- dw BillsHouseScript4
- dw BillsHouseScript5
-
-BillsHouseScript0: ; 1e782 (7:6782)
- ret
-
-BillsHouseScript1: ; 1e783 (7:6783)
- ld a, [$c109]
- and a
- ld de, MovementData_1e79c
- jr nz, .asm_1e78f ; 0x1e78a $3
- ld de, MovementData_1e7a0
-.asm_1e78f
- ld a, $1
- ld [$ff8c], a
- call MoveSprite
- ld a, $2
- ld [W_BILLSHOUSECURSCRIPT], a
- ret
-
-MovementData_1e79c: ; 1e79c (7:679c)
- db $40,$40,$40,$FF
-
-MovementData_1e7a0: ; 1e7a0 (7:67a0)
- db $C0,$40,$40,$80,$40,$FF
-
-BillsHouseScript2: ; 1e7a6 (7:67a6)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $61
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, $d7f2
- set 6, [hl]
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $3
- ld [W_BILLSHOUSECURSCRIPT], a
- ret
-
-BillsHouseScript3: ; 1e7c5 (7:67c5)
- ld a, [$d7f2]
- bit 3, a
- ret z
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $2
- ld [$cf13], a
- ld a, $c
- ld [$ffeb], a
- ld a, $40
- ld [$ffec], a
- ld a, $6
- ld [$ffed], a
- ld a, $5
- ld [$ffee], a
- call Func_32f9
- ld a, $62
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld c, $8
- call DelayFrames
- ld a, $2
- ld [$ff8c], a
- ld de, MovementData_1e807
- call MoveSprite
- ld a, $4
- ld [W_BILLSHOUSECURSCRIPT], a
- ret
-
-MovementData_1e807: ; 1e807 (7:6807)
- db $00,$C0,$C0,$C0,$00,$FF
-
-BillsHouseScript4: ; 1e80d (7:680d)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d7f2
- set 5, [hl]
- ld hl, $d7f1
- set 0, [hl]
- ld a, $0
- ld [W_BILLSHOUSECURSCRIPT], a
- ret
-
-BillsHouseScript5: ; 1e827 (7:6827)
- ld a, $4
- ld [$ff8c], a
- call DisplayTextID
- ld a, $0
- ld [W_BILLSHOUSECURSCRIPT], a
- ret
-
-BillsHouseTextPointers: ; 1e834 (7:6834)
- dw BillsHouseText1
- dw BillsHouseText2
- dw BillsHouseText3
- dw BillsHouseText4
-
-BillsHouseText4: ; 1e83c (7:683c)
- db $fd
-
-BillsHouseText1: ; 1e83d (7:683d)
- db $8
- ld hl, UnnamedText_1e865
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, asm_6b196 ; 0x1e84b $d
-asm_4d03c: ; 1e84d (7:684d)
- ld hl, UnnamedText_1e86a
- call PrintText
- ld a, $1
- ld [W_BILLSHOUSECURSCRIPT], a
- jr asm_fd4e2 ; 0x1e858 $8
-asm_6b196: ; 1e85a (7:685a)
- ld hl, UnnamedText_1e86f
- call PrintText
- jr asm_4d03c ; 0x1e860 $eb
-asm_fd4e2 ; 0x1e862
- jp TextScriptEnd
-
-UnnamedText_1e865: ; 1e865 (7:6865)
- TX_FAR _UnnamedText_1e865 ; 0x8d267
- db "@"
-
-UnnamedText_1e86a: ; 1e86a (7:686a)
- TX_FAR _UnnamedText_1e86a ; 0x8d345
- db "@"
-
-UnnamedText_1e86f: ; 1e86f (7:686f)
- TX_FAR _UnnamedText_1e86f ; 0x8d391
- db "@"
-
-BillsHouseText2: ; 1e874 (7:6874)
- db $08 ; asm
- ld a, [$d7f2]
- bit 4, a
- jr nz, .asm_5491f ; 0x1e87a
- ld hl, BillThankYouText
- call PrintText
- ld bc, (S_S__TICKET << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, SSTicketReceivedText
- call PrintText
- ld hl, $d7f2
- set 4, [hl]
- ld a, $7
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, $9
- ld [$cc4d], a
- ld a, $11
- call Predef
-.asm_5491f ; 0x1e8a9
- ld hl, UnnamedText_1e8cb
- call PrintText
- jr .asm_bd408 ; 0x1e8af
-.BagFull
- ld hl, SSTicketNoRoomText
- call PrintText
-.asm_bd408 ; 0x1e8b7
- jp TextScriptEnd
-
-BillThankYouText: ; 1e8ba (7:68ba)
- TX_FAR _BillThankYouText
- db "@"
-
-SSTicketReceivedText: ; 1e8bf (7:68bf)
- TX_FAR _SSTicketReceivedText ; 0x8d499
- db $11, $6, "@"
-
-SSTicketNoRoomText: ; 1e8c6 (7:68c6)
- TX_FAR _SSTicketNoRoomText
- db "@"
-
-UnnamedText_1e8cb: ; 1e8cb (7:68cb)
- TX_FAR _UnnamedText_1e8cb
- db "@"
-
-BillsHouseText3: ; 1e8d0 (7:68d0)
- db $08 ; asm
- ld hl, UnnamedText_1e8da
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_1e8da: ; 1e8da (7:68da)
- TX_FAR _UnnamedText_1e8da
- db "@"
-
-BillsHouseObject: ; 0x1e8df (size=38)
- db $d ; border tile
-
- db $2 ; warps
- db $7, $2, $0, $ff
- db $7, $3, $0, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_SLOWBRO, $5 + 4, $6 + 4, $ff, $ff, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $4 + 4, $ff, $ff, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $6 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP BILLS_HOUSE_WIDTH, $7, $2
- EVENT_DISP BILLS_HOUSE_WIDTH, $7, $3
+INCLUDE "data/mapObjects/billshouse.asm"
BillsHouseBlocks: ; 1e905 (7:6905)
INCBIN "maps/billshouse.blk"
Func_1e915: ; 1e915 (7:6915)
call SaveScreenTilesToBuffer2
- ld hl, UnnamedText_1e946 ; $6946
+ ld hl, AccessedOaksPCText
call PrintText
- ld hl, UnnamedText_1e93b ; $693b
+ ld hl, GetDexRatedText
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem] ; $cc26
@@ -41665,20 +28376,20 @@ Func_1e915: ; 1e915 (7:6915)
ld a, $56
call Predef ; indirect jump to DisplayDexRating (44169 (11:4169))
.asm_1e932
- ld hl, UnnamedText_1e940 ; $6940
+ ld hl, ClosedOaksPCText
call PrintText
jp LoadScreenTilesFromBuffer2
-UnnamedText_1e93b: ; 1e93b (7:693b)
- TX_FAR _UnnamedText_1e93b
+GetDexRatedText: ; 1e93b (7:693b)
+ TX_FAR _GetDexRatedText
db "@"
-UnnamedText_1e940: ; 1e940 (7:6940)
- TX_FAR _UnnamedText_1e940
+ClosedOaksPCText: ; 1e940 (7:6940)
+ TX_FAR _ClosedOaksPCText
db $0d,"@"
-UnnamedText_1e946: ; 1e946 (7:6946)
- TX_FAR _UnnamedText_1e946
+AccessedOaksPCText: ; 1e946 (7:6946)
+ TX_FAR _AccessedOaksPCText
db "@"
Func_1e94b: ; 1e94b (7:694b)
@@ -41695,29 +28406,29 @@ Func_1e958: ; 1e958 (7:6958)
ld a, $05
jp Func_3ef5
-UnnamedText_1e960: ; 1e960 (7:6960)
- TX_FAR _UnnamedText_1e960
+PushStartText: ; 1e960 (7:6960)
+ TX_FAR _PushStartText
db "@"
Func_1e965: ; 1e965 (7:6965)
call EnableAutoTextBoxDrawing
- ld hl, $d2f7
- ld b, $13
- call CountSetBits
- ld a, [$d11e]
- cp $2
- ld a, $6
- jr c, .asm_1e97b
- ld a, $7
+ ld hl, $d2f7
+ ld b, $13
+ call CountSetBits
+ ld a, [$d11e]
+ cp $2
+ ld a, $6
+ jr c, .asm_1e97b
+ ld a, $7
.asm_1e97b
- jp Func_3ef5
+ jp Func_3ef5
-UnnamedText_1e97e: ; 1e97e (7:697e)
- TX_FAR _UnnamedText_1e97e
+SaveOptionText: ; 1e97e (7:697e)
+ TX_FAR _SaveOptionText
db "@"
-UnnamedText_1e983: ; 1e983 (7:6983)
- TX_FAR _UnnamedText_1e983
+StrengthsAndWeaknessesText: ; 1e983 (7:6983)
+ TX_FAR _StrengthsAndWeaknessesText
db "@"
Func_1e988: ; 1e988 (7:6988)
@@ -41778,27 +28489,27 @@ asm_1e9b0: ; 1e9b0 (7:69b0)
Func_1e9ed: ; 1e9ed (7:69ed)
xor a
ld [wJoypadForbiddenButtonsMask], a
- ld hl, UnnamedText_1e9f7 ; $69f7
+ ld hl, SafariGameOverText
jp PrintText
-UnnamedText_1e9f7: ; 1e9f7 (7:69f7)
+SafariGameOverText: ; 1e9f7 (7:69f7)
db $08 ; asm
ld a, [W_NUMSAFARIBALLS] ; $da47
and a
jr z, .asm_1ea04
- ld hl, UnnamedText_1ea0d ; $6a0d
+ ld hl, TimesUpText
call PrintText
.asm_1ea04
- ld hl, UnnamedText_1ea12 ; $6a12
+ ld hl, GameOverText
call PrintText
jp TextScriptEnd
-UnnamedText_1ea0d: ; 1ea0d (7:6a0d)
- TX_FAR _UnnamedText_1ea0d
+TimesUpText: ; 1ea0d (7:6a0d)
+ TX_FAR _TimesUpText
db "@"
-UnnamedText_1ea12: ; 1ea12 (7:6a12)
- TX_FAR _UnnamedText_1ea12
+GameOverText: ; 1ea12 (7:6a12)
+ TX_FAR _GameOverText
db "@"
Func_1eaa17: ; 1ea17 (7:6a17)
@@ -41821,14 +28532,14 @@ CinnabarGymQuiz: ; 1ea25 (7:6a25)
and $f0
swap a
ld [$ffdc], a
- ld hl, CinnabarGymQuizIntroText ; $6a5b
+ ld hl, CinnabarGymQuizIntroText
call PrintText
ld a, [$ffdb]
dec a
add a
ld d, $0
ld e, a
- ld hl, CinnabarQuizQuestions ; $6a60
+ ld hl, CinnabarQuizQuestions
add hl, de
ld a, [hli]
ld h, [hl]
@@ -41891,7 +28602,7 @@ Func_1ea92: ; 1ea92 (7:6a92)
set 5, [hl]
ld a, [$ffdb]
ld [$ffe0], a
- ld hl, CinnabarGymQuizCorrectText ; $6ae3
+ ld hl, CinnabarGymQuizCorrectText
call PrintText
ld a, [$ffe0]
ld c, a
@@ -41903,7 +28614,7 @@ Func_1ea92: ; 1ea92 (7:6a92)
ld a, (SFX_02_51 - SFX_Headers_02) / 3
call PlaySound
call WaitForSoundToFinish
- ld hl, CinnabarGymQuizIncorrectText ; $6b05
+ ld hl, CinnabarGymQuizIncorrectText
call PrintText
ld a, [$ffdb]
add $2
@@ -41995,12 +28706,12 @@ CinnabarGymGateCoords: ; 1eb48 (7:6b48)
Func_1eb60: ; 1eb60 (7:6b60)
call EnableAutoTextBoxDrawing
- ld a, $30
- call Func_3ef5
- ret
+ ld a, $30
+ call Func_3ef5
+ ret
-UnnamedText_1eb69: ; 1eb69 (7:6b69)
- TX_FAR _UnnamedText_1eb69
+MagazinesText: ; 1eb69 (7:6b69)
+ TX_FAR _MagazinesText
db "@"
Func_1eb6e: ; 1eb6e (7:6b6e)
@@ -42108,7 +28819,7 @@ BillsHousePokemonList: ; 1ec05 (7:6c05)
bit 1, a
jr nz, .asm_1ec74
ld a, [$cc26]
- add $66
+ add EEVEE
cp EEVEE
jr z, .asm_1ec6c
cp FLAREON
@@ -42319,67 +29030,7 @@ asm_27d9f: ; 27d9f (9:7d9f)
pop hl
jp PlaceString
-TypeNamePointers: ; 27dae (9:7dae)
- dw Type00Name
- dw Type01Name
- dw Type02Name
- dw Type03Name
- dw Type04Name
- dw Type05Name
- dw Type06Name
- dw Type07Name
- dw Type08Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type00Name
- dw Type14Name
- dw Type15Name
- dw Type16Name
- dw Type17Name
- dw Type18Name
- dw Type19Name
- dw Type1AName
-
-Type00Name: ; 27de4 (9:7de4)
- db "NORMAL@"
-Type01Name: ; 27deb (9:7deb)
- db "FIGHTING@"
-Type02Name: ; 27df4 (9:7df4)
- db "FLYING@"
-Type03Name: ; 27dfb (9:7dfb)
- db "POISON@"
-Type14Name: ; 27e02 (9:7e02)
- db "FIRE@"
-Type15Name: ; 27e07 (9:7e07)
- db "WATER@"
-Type16Name: ; 27e0d (9:7e0d)
- db "GRASS@"
-Type17Name: ; 27e13 (9:7e13)
- db "ELECTRIC@"
-Type18Name: ; 27e1c (9:7e1c)
- db "PSYCHIC@"
-Type19Name: ; 27e24 (9:7e24)
- db "ICE@"
-Type04Name: ; 27e28 (9:7e28)
- db "GROUND@"
-Type05Name: ; 27e2f (9:7e2f)
- db "ROCK@"
-Type06Name: ; 27e34 (9:7e34)
- db "BIRD@"
-Type07Name: ; 27e39 (9:7e39)
- db "BUG@"
-Type08Name: ; 27e3d (9:7e3d)
- db "GHOST@"
-Type1AName: ; 27e43 (9:7e43)
- db "DRAGON@"
+INCLUDE "text/type_names.asm"
SaveTrainerName: ; 27e4a (9:7e4a)
ld hl,TrainerNamePointers
@@ -42663,11 +29314,11 @@ LeechSeedEffect_: ; 2bea9 (a:7ea9)
ld de, W_PLAYERMONTYPE1 ; $d019 (aliases: W_PLAYERMONTYPES)
.asm_2bec8
ld a, [de]
- cp $16
+ cp GRASS
jr z, .asm_2bee7
inc de
ld a, [de]
- cp $16
+ cp GRASS
jr z, .asm_2bee7
bit 7, [hl]
jr nz, .asm_2bee7
@@ -42834,18 +29485,18 @@ DisplayEffectiveness: ; 2fb7b (b:7b7b)
and a, $7F
cp a, $0A
ret z
- ld hl, UnnamedText_2fb8e ; It's super effective!
+ ld hl, SupperEffectiveText
jr nc, .done
- ld hl, UnnamedText_2fb93 ; It's not very effective...
+ ld hl, NotVeryEffectiveText
.done
jp PrintText
-UnnamedText_2fb8e: ; 2fb8e (b:7b8e)
- TX_FAR _UnnamedText_2fb8e
+SupperEffectiveText: ; 2fb8e (b:7b8e)
+ TX_FAR _SupperEffectiveText
db "@"
-UnnamedText_2fb93: ; 2fb93 (b:7b93)
- TX_FAR _UnnamedText_2fb93
+NotVeryEffectiveText: ; 2fb93 (b:7b93)
+ TX_FAR _NotVeryEffectiveText
db "@"
TrainerInfoTextBoxTileGraphics: ; 2fb98 (b:7b98)
@@ -42860,30 +29511,31 @@ CircleTile: ; 2fd88 (b:7d88)
BadgeNumbersTileGraphics: ; 2fd98 (b:7d98)
INCBIN "gfx/badge_numbers.2bpp"
-Func_2fe18: ; 2fe18 (b:7e18)
- ld a, [wWhichPokemon] ; $cf92
- ld hl, W_PARTYMON1_MOVE1 ; $d173
+; checks if the mon in wWhichPokemon already knows the move in $d0e0
+CheckIfMoveIsKnown: ; 2fe18 (b:7e18)
+ ld a, [wWhichPokemon]
+ ld hl, W_PARTYMON1_MOVE1
ld bc, $2c
call AddNTimes
ld a, [$d0e0]
ld b, a
- ld c, $4
-.asm_2fe2a
+ ld c, $4 ; nubmer of moves
+.loop
ld a, [hli]
cp b
- jr z, .asm_2fe33
+ jr z, .alreadyKnown ; found a match
dec c
- jr nz, .asm_2fe2a
+ jr nz, .loop
and a
ret
-.asm_2fe33
- ld hl, UnnamedText_2fe3b ; $7e3b
+.alreadyKnown
+ ld hl, AlreadyKnowsText
call PrintText
scf
ret
-UnnamedText_2fe3b: ; 2fe3b (b:7e3b)
- TX_FAR _UnnamedText_2fe3b
+AlreadyKnowsText: ; 2fe3b (b:7e3b)
+ TX_FAR _AlreadyKnowsText
db "@"
; scales both uncompressed sprite chunks by two in every dimension (creating 2x2 output pixels per input pixel)
@@ -43021,7 +29673,7 @@ Func_2ff09 ; 2ff09 (b:7f09)
ld a, [$c102]
and $8
jr z, .asm_2ff2e
- ld b, $45
+ ld b, COIN_CASE
ld a, $1c
call Predef
ld a, b
@@ -43511,7 +30163,7 @@ Func_3730e: ; 3730e (d:730e)
ld a, $4c
call Predef
call GBPalWhiteOutWithDelay3
- call Func_378a8
+ call LoadSlotMachineTiles
call LoadFontTilePatterns
ld b, $5
call GoPAL_SET
@@ -43880,7 +30532,7 @@ Func_37588: ; 37588 (d:7588)
dec [hl]
jr nz, .skip4
.skip3
- ld hl, UnnamedText_3769d
+ ld hl, NotThisTimeText
call PrintText
.loop
xor a
@@ -43938,7 +30590,7 @@ Func_37588: ; 37588 (d:7588)
inc hl
ld [hl], e
call Func_3775f
- ld hl, UnnamedText_37665
+ ld hl, SlotsMachineText_37665
call PrintText
call WaitForTextScrollButtonPress
call Func_3776b
@@ -43947,11 +30599,11 @@ Func_37588: ; 37588 (d:7588)
ld [$ff48], a
jp .loop
-UnnamedText_37665: ; 37665 (d:7665)
+SlotsMachineText_37665: ; 37665 (d:7665)
db $08 ; asm
push bc
call Func_37728
- ld hl, UnnamedText_37673
+ ld hl, LinedUpText
pop bc
inc bc
inc bc
@@ -43959,8 +30611,8 @@ UnnamedText_37665: ; 37665 (d:7665)
inc bc
ret
-UnnamedText_37673: ; 37673 (d:7673)
- TX_FAR _UnnamedText_37673
+LinedUpText: ; 37673 (d:7673)
+ TX_FAR _LinedUpText
db "@"
SlotRewardPointers: ; 37678 (d:7678)
@@ -43989,8 +30641,8 @@ SlotReward8Text: ; 37698 (d:7698)
SlotReward15Text: ; 3769a (d:769a)
db "15@"
-UnnamedText_3769d: ; 3769d (d:769d)
- TX_FAR _UnnamedText_3769d
+NotThisTimeText: ; 3769d (d:769d)
+ TX_FAR _NotThisTimeText
db "@"
Func_376a2: ; 376a2 (d:76a2)
@@ -44064,7 +30716,7 @@ SlotReward100Func: ; 376f3 (d:76f3)
ret
SlotReward300Func: ; 37702 (d:7702)
- ld hl, UnnamedText_37722
+ ld hl, YeahText
call PrintText
ld a, (SFX_1f_3b - SFX_Headers_1f) / 3
call PlaySound
@@ -44079,8 +30731,8 @@ SlotReward300Func: ; 37702 (d:7702)
ld de, 300
ret
-UnnamedText_37722: ; 37722 (d:7722)
- TX_FAR _UnnamedText_37722
+YeahText: ; 37722 (d:7722)
+ TX_FAR _YeahText
db $0a, "@"
Func_37728: ; 37728 (d:7728)
@@ -44311,7 +30963,7 @@ Func_37882: ; 37882 (d:7882)
ret nz
jr .loop
-Func_378a8: ; 378a8 (d:78a8)
+LoadSlotMachineTiles: ; 378a8 (d:78a8)
call DisableLCD
ld hl, SlotMachineTiles2
ld de, $8000
@@ -44352,65 +31004,7 @@ SLOTSFISH EQU $0E0C
SLOTSBIRD EQU $1210
SLOTSMOUSE EQU $1614
-SlotMachineWheel1: ; 379e5 (d:79e5)
- dw SLOTS7
- dw SLOTSMOUSE
- dw SLOTSFISH
- dw SLOTSBAR
- dw SLOTSCHERRY
- dw SLOTS7
- dw SLOTSFISH
- dw SLOTSBIRD
- dw SLOTSBAR
- dw SLOTSCHERRY
- dw SLOTS7
- dw SLOTSMOUSE
- dw SLOTSBIRD
- dw SLOTSBAR
- dw SLOTSCHERRY
- dw SLOTS7
- dw SLOTSMOUSE
- dw SLOTSFISH
-
-SlotMachineWheel2: ; 37a09 (d:7a09)
- dw SLOTS7
- dw SLOTSFISH
- dw SLOTSCHERRY
- dw SLOTSBIRD
- dw SLOTSMOUSE
- dw SLOTSBAR
- dw SLOTSCHERRY
- dw SLOTSFISH
- dw SLOTSBIRD
- dw SLOTSCHERRY
- dw SLOTSBAR
- dw SLOTSFISH
- dw SLOTSBIRD
- dw SLOTSCHERRY
- dw SLOTSMOUSE
- dw SLOTS7
- dw SLOTSFISH
- dw SLOTSCHERRY
-
-SlotMachineWheel3: ; 37a2d (d:7a2d)
- dw SLOTS7
- dw SLOTSBIRD
- dw SLOTSFISH
- dw SLOTSCHERRY
- dw SLOTSMOUSE
- dw SLOTSBIRD
- dw SLOTSFISH
- dw SLOTSCHERRY
- dw SLOTSMOUSE
- dw SLOTSBIRD
- dw SLOTSFISH
- dw SLOTSCHERRY
- dw SLOTSMOUSE
- dw SLOTSBIRD
- dw SLOTSBAR
- dw SLOTS7
- dw SLOTSBIRD
- dw SLOTSFISH
+INCLUDE "data/slot_machine_wheels.asm"
SlotMachineTiles1: ; 37a51 (d:7a51)
IF _RED
@@ -44724,5917 +31318,11 @@ GameCornerSomeonesKeysText: ; 37e83 (d:7e83)
SECTION "bankE",ROMX,BANK[$E]
-Moves: ; 38000 (e:4000)
-; characteristics of each move
-; animation, effect, power, type, accuracy, PP
- db POUND ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35
- db KARATE_CHOP ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $FF,25
- db DOUBLESLAP ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,10
- db COMET_PUNCH ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $D8,15
- db MEGA_PUNCH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $D8,20
- db PAY_DAY ,PAY_DAY_EFFECT ,$28,NORMAL, $FF,20
- db FIRE_PUNCH ,BURN_SIDE_EFFECT1 ,$4B,FIRE, $FF,15
- db ICE_PUNCH ,FREEZE_SIDE_EFFECT ,$4B,ICE, $FF,15
- db THUNDERPUNCH,PARALYZE_SIDE_EFFECT1 ,$4B,ELECTRIC,$FF,15
- db SCRATCH ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35
- db VICEGRIP ,NO_ADDITIONAL_EFFECT ,$37,NORMAL, $FF,30
- db GUILLOTINE ,OHKO_EFFECT ,$01,NORMAL, $4C,5
- db RAZOR_WIND ,CHARGE_EFFECT ,$50,NORMAL, $BF,10
- db SWORDS_DANCE,ATTACK_UP2_EFFECT ,$00,NORMAL, $FF,30
- db CUT ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $F2,30
- db GUST ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35
- db WING_ATTACK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35
- db WHIRLWIND ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $D8,20
- db FLY ,FLY_EFFECT ,$46,FLYING, $F2,15
- db BIND ,TRAPPING_EFFECT ,$0F,NORMAL, $BF,20
- db SLAM ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $BF,20
- db VINE_WHIP ,NO_ADDITIONAL_EFFECT ,$23,GRASS, $FF,10
- db STOMP ,FLINCH_SIDE_EFFECT2 ,$41,NORMAL, $FF,20
- db DOUBLE_KICK ,ATTACK_TWICE_EFFECT ,$1E,FIGHTING,$FF,30
- db MEGA_KICK ,NO_ADDITIONAL_EFFECT ,$78,NORMAL, $BF,5
- db JUMP_KICK ,JUMP_KICK_EFFECT ,$46,FIGHTING,$F2,25
- db ROLLING_KICK,FLINCH_SIDE_EFFECT2 ,$3C,FIGHTING,$D8,15
- db SAND_ATTACK ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,15
- db HEADBUTT ,FLINCH_SIDE_EFFECT2 ,$46,NORMAL, $FF,15
- db HORN_ATTACK ,NO_ADDITIONAL_EFFECT ,$41,NORMAL, $FF,25
- db FURY_ATTACK ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20
- db HORN_DRILL ,OHKO_EFFECT ,$01,NORMAL, $4C,5
- db TACKLE ,NO_ADDITIONAL_EFFECT ,$23,NORMAL, $F2,35
- db BODY_SLAM ,PARALYZE_SIDE_EFFECT2 ,$55,NORMAL, $FF,15
- db WRAP ,TRAPPING_EFFECT ,$0F,NORMAL, $D8,20
- db TAKE_DOWN ,RECOIL_EFFECT ,$5A,NORMAL, $D8,20
- db THRASH ,THRASH_PETAL_DANCE_EFFECT ,$5A,NORMAL, $FF,20
- db DOUBLE_EDGE ,RECOIL_EFFECT ,$64,NORMAL, $FF,15
- db TAIL_WHIP ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30
- db POISON_STING,POISON_SIDE_EFFECT1 ,$0F,POISON, $FF,35
- db TWINEEDLE ,TWINEEDLE_EFFECT ,$19,BUG, $FF,20
- db PIN_MISSILE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0E,BUG, $D8,20
- db LEER ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30
- db BITE ,FLINCH_SIDE_EFFECT1 ,$3C,NORMAL, $FF,25
- db GROWL ,ATTACK_DOWN1_EFFECT ,$00,NORMAL, $FF,40
- db ROAR ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $FF,20
- db SING ,SLEEP_EFFECT ,$00,NORMAL, $8C,15
- db SUPERSONIC ,CONFUSION_EFFECT ,$00,NORMAL, $8C,20
- db SONICBOOM ,SPECIAL_DAMAGE_EFFECT ,$01,NORMAL, $E5,20
- db DISABLE ,DISABLE_EFFECT ,$00,NORMAL, $8C,20
- db ACID ,DEFENSE_DOWN_SIDE_EFFECT ,$28,POISON, $FF,30
- db EMBER ,BURN_SIDE_EFFECT1 ,$28,FIRE, $FF,25
- db FLAMETHROWER,BURN_SIDE_EFFECT1 ,$5F,FIRE, $FF,15
- db MIST ,MIST_EFFECT ,$00,ICE, $FF,30
- db WATER_GUN ,NO_ADDITIONAL_EFFECT ,$28,WATER, $FF,25
- db HYDRO_PUMP ,NO_ADDITIONAL_EFFECT ,$78,WATER, $CC,5
- db SURF ,NO_ADDITIONAL_EFFECT ,$5F,WATER, $FF,15
- db ICE_BEAM ,FREEZE_SIDE_EFFECT ,$5F,ICE, $FF,10
- db BLIZZARD ,FREEZE_SIDE_EFFECT ,$78,ICE, $E5,5
- db PSYBEAM ,CONFUSION_SIDE_EFFECT ,$41,PSYCHIC, $FF,20
- db BUBBLEBEAM ,SPEED_DOWN_SIDE_EFFECT ,$41,WATER, $FF,20
- db AURORA_BEAM ,ATTACK_DOWN_SIDE_EFFECT ,$41,ICE, $FF,20
- db HYPER_BEAM ,HYPER_BEAM_EFFECT ,$96,NORMAL, $E5,5
- db PECK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35
- db DRILL_PECK ,NO_ADDITIONAL_EFFECT ,$50,FLYING, $FF,20
- db SUBMISSION ,RECOIL_EFFECT ,$50,FIGHTING,$CC,25
- db LOW_KICK ,FLINCH_SIDE_EFFECT2 ,$32,FIGHTING,$E5,20
- db COUNTER ,NO_ADDITIONAL_EFFECT ,$01,FIGHTING,$FF,20
- db SEISMIC_TOSS,SPECIAL_DAMAGE_EFFECT ,$01,FIGHTING,$FF,20
- db STRENGTH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,15
- db ABSORB ,DRAIN_HP_EFFECT ,$14,GRASS, $FF,20
- db MEGA_DRAIN ,DRAIN_HP_EFFECT ,$28,GRASS, $FF,10
- db LEECH_SEED ,LEECH_SEED_EFFECT ,$00,GRASS, $E5,10
- db GROWTH ,SPECIAL_UP1_EFFECT ,$00,NORMAL, $FF,40
- db RAZOR_LEAF ,NO_ADDITIONAL_EFFECT ,$37,GRASS, $F2,25
- db SOLARBEAM ,CHARGE_EFFECT ,$78,GRASS, $FF,10
- db POISONPOWDER,POISON_EFFECT ,$00,POISON, $BF,35
- db STUN_SPORE ,PARALYZE_EFFECT ,$00,GRASS, $BF,30
- db SLEEP_POWDER,SLEEP_EFFECT ,$00,GRASS, $BF,15
- db PETAL_DANCE ,THRASH_PETAL_DANCE_EFFECT ,$46,GRASS, $FF,20
- db STRING_SHOT ,SPEED_DOWN1_EFFECT ,$00,BUG, $F2,40
- db DRAGON_RAGE ,SPECIAL_DAMAGE_EFFECT ,$01,DRAGON, $FF,10
- db FIRE_SPIN ,TRAPPING_EFFECT ,$0F,FIRE, $B2,15
- db THUNDERSHOCK,PARALYZE_SIDE_EFFECT1 ,$28,ELECTRIC,$FF,30
- db THUNDERBOLT ,PARALYZE_SIDE_EFFECT1 ,$5F,ELECTRIC,$FF,15
- db THUNDER_WAVE,PARALYZE_EFFECT ,$00,ELECTRIC,$FF,20
- db THUNDER ,PARALYZE_SIDE_EFFECT1 ,$78,ELECTRIC,$B2,10
- db ROCK_THROW ,NO_ADDITIONAL_EFFECT ,$32,ROCK, $A5,15
- db EARTHQUAKE ,NO_ADDITIONAL_EFFECT ,$64,GROUND, $FF,10
- db FISSURE ,OHKO_EFFECT ,$01,GROUND, $4C,5
- db DIG ,CHARGE_EFFECT ,$64,GROUND, $FF,10
- db TOXIC ,POISON_EFFECT ,$00,POISON, $D8,10
- db CONFUSION ,CONFUSION_SIDE_EFFECT ,$32,PSYCHIC, $FF,25
- db PSYCHIC_M ,SPECIAL_DOWN_SIDE_EFFECT ,$5A,PSYCHIC, $FF,10
- db HYPNOSIS ,SLEEP_EFFECT ,$00,PSYCHIC, $99,20
- db MEDITATE ,ATTACK_UP1_EFFECT ,$00,PSYCHIC, $FF,40
- db AGILITY ,SPEED_UP2_EFFECT ,$00,PSYCHIC, $FF,30
- db QUICK_ATTACK,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,30
- db RAGE ,RAGE_EFFECT ,$14,NORMAL, $FF,20
- db TELEPORT ,SWITCH_AND_TELEPORT_EFFECT,$00,PSYCHIC, $FF,20
- db NIGHT_SHADE ,SPECIAL_DAMAGE_EFFECT ,$00,GHOST, $FF,15
- db MIMIC ,MIMIC_EFFECT ,$00,NORMAL, $FF,10
- db SCREECH ,DEFENSE_DOWN2_EFFECT ,$00,NORMAL, $D8,40
- db DOUBLE_TEAM ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,15
- db RECOVER ,HEAL_EFFECT ,$00,NORMAL, $FF,20
- db HARDEN ,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,30
- db MINIMIZE ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,20
- db SMOKESCREEN ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,20
- db CONFUSE_RAY ,CONFUSION_EFFECT ,$00,GHOST, $FF,10
- db WITHDRAW ,DEFENSE_UP1_EFFECT ,$00,WATER, $FF,40
- db DEFENSE_CURL,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,40
- db BARRIER ,DEFENSE_UP2_EFFECT ,$00,PSYCHIC, $FF,30
- db LIGHT_SCREEN,LIGHT_SCREEN_EFFECT ,$00,PSYCHIC, $FF,30
- db HAZE ,HAZE_EFFECT ,$00,ICE, $FF,30
- db REFLECT ,REFLECT_EFFECT ,$00,PSYCHIC, $FF,20
- db FOCUS_ENERGY,FOCUS_ENERGY_EFFECT ,$00,NORMAL, $FF,30
- db BIDE ,BIDE_EFFECT ,$00,NORMAL, $FF,10
- db METRONOME ,METRONOME_EFFECT ,$00,NORMAL, $FF,10
- db MIRROR_MOVE ,MIRROR_MOVE_EFFECT ,$00,FLYING, $FF,20
- db SELFDESTRUCT,EXPLODE_EFFECT ,$82,NORMAL, $FF,5
- db EGG_BOMB ,NO_ADDITIONAL_EFFECT ,$64,NORMAL, $BF,10
- db LICK ,PARALYZE_SIDE_EFFECT2 ,$14,GHOST, $FF,30
- db SMOG ,POISON_SIDE_EFFECT2 ,$14,POISON, $B2,20
- db SLUDGE ,POISON_SIDE_EFFECT2 ,$41,POISON, $FF,20
- db BONE_CLUB ,FLINCH_SIDE_EFFECT1 ,$41,GROUND, $D8,20
- db FIRE_BLAST ,BURN_SIDE_EFFECT2 ,$78,FIRE, $D8,5
- db WATERFALL ,NO_ADDITIONAL_EFFECT ,$50,WATER, $FF,15
- db CLAMP ,TRAPPING_EFFECT ,$23,WATER, $BF,10
- db SWIFT ,SWIFT_EFFECT ,$3C,NORMAL, $FF,20
- db SKULL_BASH ,CHARGE_EFFECT ,$64,NORMAL, $FF,15
- db SPIKE_CANNON,TWO_TO_FIVE_ATTACKS_EFFECT,$14,NORMAL, $FF,15
- db CONSTRICT ,SPEED_DOWN_SIDE_EFFECT ,$0A,NORMAL, $FF,35
- db AMNESIA ,SPECIAL_UP2_EFFECT ,$00,PSYCHIC, $FF,20
- db KINESIS ,ACCURACY_DOWN1_EFFECT ,$00,PSYCHIC, $CC,15
- db SOFTBOILED ,HEAL_EFFECT ,$00,NORMAL, $FF,10
- db HI_JUMP_KICK,JUMP_KICK_EFFECT ,$55,FIGHTING,$E5,20
- db GLARE ,PARALYZE_EFFECT ,$00,NORMAL, $BF,30
- db DREAM_EATER ,DREAM_EATER_EFFECT ,$64,PSYCHIC, $FF,15
- db POISON_GAS ,POISON_EFFECT ,$00,POISON, $8C,40
- db BARRAGE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20
- db LEECH_LIFE ,DRAIN_HP_EFFECT ,$14,BUG, $FF,15
- db LOVELY_KISS ,SLEEP_EFFECT ,$00,NORMAL, $BF,10
- db SKY_ATTACK ,CHARGE_EFFECT ,$8C,FLYING, $E5,5
- db TRANSFORM ,TRANSFORM_EFFECT ,$00,NORMAL, $FF,10
- db BUBBLE ,SPEED_DOWN_SIDE_EFFECT ,$14,WATER, $FF,30
- db DIZZY_PUNCH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,10
- db SPORE ,SLEEP_EFFECT ,$00,GRASS, $FF,15
- db FLASH ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $B2,20
- db PSYWAVE ,SPECIAL_DAMAGE_EFFECT ,$01,PSYCHIC, $CC,15
- db SPLASH ,SPLASH_EFFECT ,$00,NORMAL, $FF,40
- db ACID_ARMOR ,DEFENSE_UP2_EFFECT ,$00,POISON, $FF,40
- db CRABHAMMER ,NO_ADDITIONAL_EFFECT ,$5A,WATER, $D8,10
- db EXPLOSION ,EXPLODE_EFFECT ,$AA,NORMAL, $FF,5
- db FURY_SWIPES ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $CC,15
- db BONEMERANG ,ATTACK_TWICE_EFFECT ,$32,GROUND, $E5,10
- db REST ,HEAL_EFFECT ,$00,PSYCHIC, $FF,10
- db ROCK_SLIDE ,NO_ADDITIONAL_EFFECT ,$4B,ROCK, $E5,10
- db HYPER_FANG ,FLINCH_SIDE_EFFECT1 ,$50,NORMAL, $E5,15
- db SHARPEN ,ATTACK_UP1_EFFECT ,$00,NORMAL, $FF,30
- db CONVERSION ,CONVERSION_EFFECT ,$00,NORMAL, $FF,30
- db TRI_ATTACK ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,10
- db SUPER_FANG ,SUPER_FANG_EFFECT ,$01,NORMAL, $E5,10
- db SLASH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,20
- db SUBSTITUTE ,SUBSTITUTE_EFFECT ,$00,NORMAL, $FF,10
- db STRUGGLE ,RECOIL_EFFECT ,$32,NORMAL, $FF,10
-
-BulbasaurBaseStats: ; 383de (e:43de)
- db DEX_BULBASAUR ; pokedex id
- db 45 ; base hp
- db 49 ; base attack
- db 49 ; base defense
- db 45 ; base speed
- db 65 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 64 ; base exp yield
- db $55 ; sprite dimensions
-
- dw BulbasaurPicFront
- dw BulbasaurPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db GROWL
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10100100
- db %00000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-IvysaurBaseStats: ; 383fa (e:43fa)
- db DEX_IVYSAUR ; pokedex id
- db 60 ; base hp
- db 62 ; base attack
- db 63 ; base defense
- db 60 ; base speed
- db 80 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 141 ; base exp yield
- db $66 ; sprite dimensions
-
- dw IvysaurPicFront
- dw IvysaurPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db GROWL
- db LEECH_SEED
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10100100
- db %00000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-VenusaurBaseStats: ; 38416 (e:4416)
- db DEX_VENUSAUR ; pokedex id
- db 80 ; base hp
- db 82 ; base attack
- db 83 ; base defense
- db 80 ; base speed
- db 100 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 208 ; base exp yield
- db $77 ; sprite dimensions
-
- dw VenusaurPicFront
- dw VenusaurPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db GROWL
- db LEECH_SEED
- db VINE_WHIP
-
- db 3 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-CharmanderBaseStats: ; 38432 (e:4432)
- db DEX_CHARMANDER ; pokedex id
- db 39 ; base hp
- db 52 ; base attack
- db 43 ; base defense
- db 65 ; base speed
- db 50 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 45 ; catch rate
- db 65 ; base exp yield
- db $55 ; sprite dimensions
-
- dw CharmanderPicFront
- dw CharmanderPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db GROWL
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110101
- db %00000011
- db %01001111
- db %11001000
- db %11100011
- db %00001000
- db %00100110
-
- db 0 ; padding
-
-CharmeleonBaseStats: ; 3844e (e:444e)
- db DEX_CHARMELEON ; pokedex id
- db 58 ; base hp
- db 64 ; base attack
- db 58 ; base defense
- db 80 ; base speed
- db 65 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 45 ; catch rate
- db 142 ; base exp yield
- db $66 ; sprite dimensions
-
- dw CharmeleonPicFront
- dw CharmeleonPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db GROWL
- db EMBER
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110101
- db %00000011
- db %01001111
- db %11001000
- db %11100011
- db %00001000
- db %00100110
-
- db 0 ; padding
-
-CharizardBaseStats: ; 3846a (e:446a)
- db DEX_CHARIZARD ; pokedex id
- db 78 ; base hp
- db 84 ; base attack
- db 78 ; base defense
- db 100 ; base speed
- db 85 ; base special
-
- db FIRE ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 209 ; base exp yield
- db $77 ; sprite dimensions
-
- dw CharizardPicFront
- dw CharizardPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db GROWL
- db EMBER
- db LEER
-
- db 3 ; growth rate
-
- ; learnset
- db %10110101
- db %01000011
- db %01001111
- db %11001110
- db %11100011
- db %00001000
- db %00100110
-
- db 0 ; padding
-
-SquirtleBaseStats: ; 38486 (e:4486)
- db DEX_SQUIRTLE ; pokedex id
- db 44 ; base hp
- db 48 ; base attack
- db 65 ; base defense
- db 43 ; base speed
- db 50 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 66 ; base exp yield
- db $55 ; sprite dimensions
-
- dw SquirtlePicFront
- dw SquirtlePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db TAIL_WHIP
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00111111
- db %00001111
- db %11001000
- db %10000011
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-WartortleBaseStats: ; 384a2 (e:44a2)
- db DEX_WARTORTLE ; pokedex id
- db 59 ; base hp
- db 63 ; base attack
- db 80 ; base defense
- db 58 ; base speed
- db 65 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 143 ; base exp yield
- db $66 ; sprite dimensions
-
- dw WartortlePicFront
- dw WartortlePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db TAIL_WHIP
- db BUBBLE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00111111
- db %00001111
- db %11001000
- db %10000011
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-BlastoiseBaseStats: ; 384be (e:44be)
- db DEX_BLASTOISE ; pokedex id
- db 79 ; base hp
- db 83 ; base attack
- db 100 ; base defense
- db 78 ; base speed
- db 85 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 210 ; base exp yield
- db $77 ; sprite dimensions
-
- dw BlastoisePicFront
- dw BlastoisePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db TAIL_WHIP
- db BUBBLE
- db WATER_GUN
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %00001111
- db %11001110
- db %10000011
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-CaterpieBaseStats: ; 384da (e:44da)
- db DEX_CATERPIE ; pokedex id
- db 45 ; base hp
- db 30 ; base attack
- db 35 ; base defense
- db 45 ; base speed
- db 20 ; base special
-
- db BUG ; species type 1
- db BUG ; species type 2
-
- db 255 ; catch rate
- db 53 ; base exp yield
- db $55 ; sprite dimensions
-
- dw CaterpiePicFront
- dw CaterpiePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db STRING_SHOT
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
-
- db 0 ; padding
-
-MetapodBaseStats: ; 384f6 (e:44f6)
- db DEX_METAPOD ; pokedex id
- db 50 ; base hp
- db 20 ; base attack
- db 55 ; base defense
- db 30 ; base speed
- db 25 ; base special
-
- db BUG ; species type 1
- db BUG ; species type 2
-
- db 120 ; catch rate
- db 72 ; base exp yield
- db $55 ; sprite dimensions
-
- dw MetapodPicFront
- dw MetapodPicBack
-
- ; attacks known at lvl 0
- db HARDEN
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
-
- db 0 ; padding
-
-ButterfreeBaseStats: ; 38512 (e:4512)
- db DEX_BUTTERFREE ; pokedex id
- db 60 ; base hp
- db 45 ; base attack
- db 50 ; base defense
- db 70 ; base speed
- db 80 ; base special
-
- db BUG ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 160 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ButterfreePicFront
- dw ButterfreePicBack
-
- ; attacks known at lvl 0
- db CONFUSION
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %00111000
- db %11110000
- db %01000011
- db %00101000
- db %00000010
+INCLUDE "data/moves.asm"
- db 0 ; padding
+INCLUDE "data/base_stats.asm"
-WeedleBaseStats: ; 3852e (e:452e)
- db DEX_WEEDLE ; pokedex id
- db 40 ; base hp
- db 35 ; base attack
- db 30 ; base defense
- db 50 ; base speed
- db 20 ; base special
-
- db BUG ; species type 1
- db POISON ; species type 2
-
- db 255 ; catch rate
- db 52 ; base exp yield
- db $55 ; sprite dimensions
-
- dw WeedlePicFront
- dw WeedlePicBack
-
- ; attacks known at lvl 0
- db POISON_STING
- db STRING_SHOT
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
-
- db 0 ; padding
-
-KakunaBaseStats: ; 3854a (e:454a)
- db DEX_KAKUNA ; pokedex id
- db 45 ; base hp
- db 25 ; base attack
- db 50 ; base defense
- db 35 ; base speed
- db 25 ; base special
-
- db BUG ; species type 1
- db POISON ; species type 2
-
- db 120 ; catch rate
- db 71 ; base exp yield
- db $55 ; sprite dimensions
-
- dw KakunaPicFront
- dw KakunaPicBack
-
- ; attacks known at lvl 0
- db HARDEN
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
-
- db 0 ; padding
-
-BeedrillBaseStats: ; 38566 (e:4566)
- db DEX_BEEDRILL ; pokedex id
- db 65 ; base hp
- db 80 ; base attack
- db 40 ; base defense
- db 75 ; base speed
- db 45 ; base special
-
- db BUG ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 159 ; base exp yield
- db $77 ; sprite dimensions
-
- dw BeedrillPicFront
- dw BeedrillPicBack
-
- ; attacks known at lvl 0
- db FURY_ATTACK
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100100
- db %01000011
- db %00011000
- db %11000000
- db %11000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-PidgeyBaseStats: ; 38582 (e:4582)
- db DEX_PIDGEY ; pokedex id
- db 40 ; base hp
- db 45 ; base attack
- db 40 ; base defense
- db 56 ; base speed
- db 35 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 255 ; catch rate
- db 55 ; base exp yield
- db $55 ; sprite dimensions
-
- dw PidgeyPicFront
- dw PidgeyPicBack
-
- ; attacks known at lvl 0
- db GUST
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00101010
- db %00000011
- db %00001000
- db %11000000
- db %01000011
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-PidgeottoBaseStats: ; 3859e (e:459e)
- db DEX_PIDGEOTTO ; pokedex id
- db 63 ; base hp
- db 60 ; base attack
- db 55 ; base defense
- db 71 ; base speed
- db 50 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 120 ; catch rate
- db 113 ; base exp yield
- db $66 ; sprite dimensions
-
- dw PidgeottoPicFront
- dw PidgeottoPicBack
-
- ; attacks known at lvl 0
- db GUST
- db SAND_ATTACK
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00101010
- db %00000011
- db %00001000
- db %11000000
- db %01000011
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-PidgeotBaseStats: ; 385ba (e:45ba)
- db DEX_PIDGEOT ; pokedex id
- db 83 ; base hp
- db 80 ; base attack
- db 75 ; base defense
- db 91 ; base speed
- db 70 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 172 ; base exp yield
- db $77 ; sprite dimensions
-
- dw PidgeotPicFront
- dw PidgeotPicBack
-
- ; attacks known at lvl 0
- db GUST
- db SAND_ATTACK
- db QUICK_ATTACK
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %00001000
- db %11000000
- db %01000011
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-RattataBaseStats: ; 385d6 (e:45d6)
- db DEX_RATTATA ; pokedex id
- db 30 ; base hp
- db 56 ; base attack
- db 35 ; base defense
- db 72 ; base speed
- db 25 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 255 ; catch rate
- db 57 ; base exp yield
- db $55 ; sprite dimensions
-
- dw RattataPicFront
- dw RattataPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db TAIL_WHIP
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00101111
- db %10001000
- db %11001001
- db %11000010
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-RaticateBaseStats: ; 385f2 (e:45f2)
- db DEX_RATICATE ; pokedex id
- db 55 ; base hp
- db 81 ; base attack
- db 60 ; base defense
- db 97 ; base speed
- db 50 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 90 ; catch rate
- db 116 ; base exp yield
- db $66 ; sprite dimensions
-
- dw RaticatePicFront
- dw RaticatePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db TAIL_WHIP
- db QUICK_ATTACK
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01111111
- db %10001000
- db %11001001
- db %11000010
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-SpearowBaseStats: ; 3860e (e:460e)
- db DEX_SPEAROW ; pokedex id
- db 40 ; base hp
- db 60 ; base attack
- db 30 ; base defense
- db 70 ; base speed
- db 31 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 255 ; catch rate
- db 58 ; base exp yield
- db $55 ; sprite dimensions
-
- dw SpearowPicFront
- dw SpearowPicBack
-
- ; attacks known at lvl 0
- db PECK
- db GROWL
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00101010
- db %00000011
- db %00001000
- db %11000000
- db %01000010
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-FearowBaseStats: ; 3862a (e:462a)
- db DEX_FEAROW ; pokedex id
- db 65 ; base hp
- db 90 ; base attack
- db 65 ; base defense
- db 100 ; base speed
- db 61 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 90 ; catch rate
- db 162 ; base exp yield
- db $77 ; sprite dimensions
-
- dw FearowPicFront
- dw FearowPicBack
-
- ; attacks known at lvl 0
- db PECK
- db GROWL
- db LEER
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %00001000
- db %11000000
- db %01000010
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-EkansBaseStats: ; 38646 (e:4646)
- db DEX_EKANS ; pokedex id
- db 35 ; base hp
- db 60 ; base attack
- db 44 ; base defense
- db 55 ; base speed
- db 40 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 255 ; catch rate
- db 62 ; base exp yield
- db $55 ; sprite dimensions
-
- dw EkansPicFront
- dw EkansPicBack
-
- ; attacks known at lvl 0
- db WRAP
- db LEER
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00000011
- db %00011000
- db %11001110
- db %10000010
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-ArbokBaseStats: ; 38662 (e:4662)
- db DEX_ARBOK ; pokedex id
- db 60 ; base hp
- db 85 ; base attack
- db 69 ; base defense
- db 80 ; base speed
- db 65 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 90 ; catch rate
- db 147 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ArbokPicFront
- dw ArbokPicBack
-
- ; attacks known at lvl 0
- db WRAP
- db LEER
- db POISON_STING
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01000011
- db %00011000
- db %11001110
- db %10000010
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-PikachuBaseStats: ; 3867e (e:467e)
- db DEX_PIKACHU ; pokedex id
- db 35 ; base hp
- db 55 ; base attack
- db 30 ; base defense
- db 90 ; base speed
- db 50 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 190 ; catch rate
- db 82 ; base exp yield
- db $55 ; sprite dimensions
-
- dw PikachuPicFront
- dw PikachuPicBack
-
- ; attacks known at lvl 0
- db THUNDERSHOCK
- db GROWL
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %10000011
- db %10001101
- db %11000001
- db %11000011
- db %00011000
- db %01000010
-
- db 0 ; padding
-
-RaichuBaseStats: ; 3869a (e:469a)
- db DEX_RAICHU ; pokedex id
- db 60 ; base hp
- db 90 ; base attack
- db 55 ; base defense
- db 100 ; base speed
- db 90 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 75 ; catch rate
- db 122 ; base exp yield
- db $77 ; sprite dimensions
-
- dw RaichuPicFront
- dw RaichuPicBack
-
- ; attacks known at lvl 0
- db THUNDERSHOCK
- db GROWL
- db THUNDER_WAVE
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %11000011
- db %10001101
- db %11000001
- db %11000011
- db %00011000
- db %01000010
-
- db 0 ; padding
-
-SandshrewBaseStats: ; 386b6 (e:46b6)
- db DEX_SANDSHREW ; pokedex id
- db 50 ; base hp
- db 75 ; base attack
- db 85 ; base defense
- db 40 ; base speed
- db 30 ; base special
-
- db GROUND ; species type 1
- db GROUND ; species type 2
-
- db 255 ; catch rate
- db 93 ; base exp yield
- db $55 ; sprite dimensions
-
- dw SandshrewPicFront
- dw SandshrewPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %00000011
- db %00001101
- db %11001110
- db %11000010
- db %10001000
- db %00100110
-
- db 0 ; padding
-
-SandslashBaseStats: ; 386d2 (e:46d2)
- db DEX_SANDSLASH ; pokedex id
- db 75 ; base hp
- db 100 ; base attack
- db 110 ; base defense
- db 65 ; base speed
- db 55 ; base special
-
- db GROUND ; species type 1
- db GROUND ; species type 2
-
- db 90 ; catch rate
- db 163 ; base exp yield
- db $66 ; sprite dimensions
-
- dw SandslashPicFront
- dw SandslashPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db SAND_ATTACK
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00001101
- db %11001110
- db %11000010
- db %10001000
- db %00100110
-
- db 0 ; padding
-
-NidoranFBaseStats: ; 386ee (e:46ee)
- db DEX_NIDORAN_F ; pokedex id
- db 55 ; base hp
- db 47 ; base attack
- db 52 ; base defense
- db 41 ; base speed
- db 40 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 235 ; catch rate
- db 59 ; base exp yield
- db $55 ; sprite dimensions
-
- dw NidoranFPicFront
- dw NidoranFPicBack
-
- ; attacks known at lvl 0
- db GROWL
- db TACKLE
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10100000
- db %00100011
- db %10001000
- db %11000001
- db %10000011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-NidorinaBaseStats: ; 3870a (e:470a)
- db DEX_NIDORINA ; pokedex id
- db 70 ; base hp
- db 62 ; base attack
- db 67 ; base defense
- db 56 ; base speed
- db 55 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 120 ; catch rate
- db 117 ; base exp yield
- db $66 ; sprite dimensions
-
- dw NidorinaPicFront
- dw NidorinaPicBack
-
- ; attacks known at lvl 0
- db GROWL
- db TACKLE
- db SCRATCH
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %11100000
- db %00111111
- db %10001000
- db %11000001
- db %10000011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-NidoqueenBaseStats: ; 38726 (e:4726)
- db DEX_NIDOQUEEN ; pokedex id
- db 90 ; base hp
- db 82 ; base attack
- db 87 ; base defense
- db 76 ; base speed
- db 75 ; base special
-
- db POISON ; species type 1
- db GROUND ; species type 2
-
- db 45 ; catch rate
- db 194 ; base exp yield
- db $77 ; sprite dimensions
-
- dw NidoqueenPicFront
- dw NidoqueenPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SCRATCH
- db TAIL_WHIP
- db BODY_SLAM
-
- db 3 ; growth rate
-
- ; learnset
- db %11110001
- db %11111111
- db %10001111
- db %11000111
- db %10100011
- db %10001000
- db %00110010
-
- db 0 ; padding
-
-NidoranMBaseStats: ; 38742 (e:4742)
- db DEX_NIDORAN_M ; pokedex id
- db 46 ; base hp
- db 57 ; base attack
- db 40 ; base defense
- db 50 ; base speed
- db 40 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 235 ; catch rate
- db 60 ; base exp yield
- db $55 ; sprite dimensions
-
- dw NidoranMPicFront
- dw NidoranMPicBack
-
- ; attacks known at lvl 0
- db LEER
- db TACKLE
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %11100000
- db %00100011
- db %10001000
- db %11000001
- db %10000011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-NidorinoBaseStats: ; 3875e (e:475e)
- db DEX_NIDORINO ; pokedex id
- db 61 ; base hp
- db 72 ; base attack
- db 57 ; base defense
- db 65 ; base speed
- db 55 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 120 ; catch rate
- db 118 ; base exp yield
- db $66 ; sprite dimensions
-
- dw NidorinoPicFront
- dw NidorinoPicBack
-
- ; attacks known at lvl 0
- db LEER
- db TACKLE
- db HORN_ATTACK
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %11100000
- db %00111111
- db %10001000
- db %11000001
- db %10000011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-NidokingBaseStats: ; 3877a (e:477a)
- db DEX_NIDOKING ; pokedex id
- db 81 ; base hp
- db 92 ; base attack
- db 77 ; base defense
- db 85 ; base speed
- db 75 ; base special
-
- db POISON ; species type 1
- db GROUND ; species type 2
-
- db 45 ; catch rate
- db 195 ; base exp yield
- db $77 ; sprite dimensions
-
- dw NidokingPicFront
- dw NidokingPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db HORN_ATTACK
- db POISON_STING
- db THRASH
-
- db 3 ; growth rate
-
- ; learnset
- db %11110001
- db %11111111
- db %10001111
- db %11000111
- db %10100011
- db %10001000
- db %00110010
-
- db 0 ; padding
-
-ClefairyBaseStats: ; 38796 (e:4796)
- db DEX_CLEFAIRY ; pokedex id
- db 70 ; base hp
- db 45 ; base attack
- db 48 ; base defense
- db 35 ; base speed
- db 60 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 150 ; catch rate
- db 68 ; base exp yield
- db $55 ; sprite dimensions
-
- dw ClefairyPicFront
- dw ClefairyPicBack
-
- ; attacks known at lvl 0
- db POUND
- db GROWL
- db 0
- db 0
-
- db 4 ; growth rate
-
- ; learnset
- db %10110001
- db %00111111
- db %10101111
- db %11110001
- db %10100111
- db %00111000
- db %01100011
-
- db 0 ; padding
-
-ClefableBaseStats: ; 387b2 (e:47b2)
- db DEX_CLEFABLE ; pokedex id
- db 95 ; base hp
- db 70 ; base attack
- db 73 ; base defense
- db 60 ; base speed
- db 85 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 25 ; catch rate
- db 129 ; base exp yield
- db $66 ; sprite dimensions
-
- dw ClefablePicFront
- dw ClefablePicBack
-
- ; attacks known at lvl 0
- db SING
- db DOUBLESLAP
- db MINIMIZE
- db METRONOME
-
- db 4 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %10101111
- db %11110001
- db %10100111
- db %00111000
- db %01100011
-
- db 0 ; padding
-
-VulpixBaseStats: ; 387ce (e:47ce)
- db DEX_VULPIX ; pokedex id
- db 38 ; base hp
- db 41 ; base attack
- db 40 ; base defense
- db 65 ; base speed
- db 65 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 190 ; catch rate
- db 63 ; base exp yield
- db $66 ; sprite dimensions
-
- dw VulpixPicFront
- dw VulpixPicBack
-
- ; attacks known at lvl 0
- db EMBER
- db TAIL_WHIP
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00000011
- db %00001000
- db %11001000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-NinetalesBaseStats: ; 387ea (e:47ea)
- db DEX_NINETALES ; pokedex id
- db 73 ; base hp
- db 76 ; base attack
- db 75 ; base defense
- db 100 ; base speed
- db 100 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 75 ; catch rate
- db 178 ; base exp yield
- db $77 ; sprite dimensions
-
- dw NinetalesPicFront
- dw NinetalesPicBack
-
- ; attacks known at lvl 0
- db EMBER
- db TAIL_WHIP
- db QUICK_ATTACK
- db ROAR
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01000011
- db %00001000
- db %11001000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-JigglypuffBaseStats: ; 38806 (e:4806)
- db DEX_JIGGLYPUFF ; pokedex id
- db 115 ; base hp
- db 45 ; base attack
- db 20 ; base defense
- db 20 ; base speed
- db 25 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 170 ; catch rate
- db 76 ; base exp yield
- db $55 ; sprite dimensions
-
- dw JigglypuffPicFront
- dw JigglypuffPicBack
-
- ; attacks known at lvl 0
- db SING
- db 0
- db 0
- db 0
-
- db 4 ; growth rate
-
- ; learnset
- db %10110001
- db %00111111
- db %10101111
- db %11110001
- db %10100011
- db %00111000
- db %01100011
-
- db 0 ; padding
-
-WigglytuffBaseStats: ; 38822 (e:4822)
- db DEX_WIGGLYTUFF ; pokedex id
- db 140 ; base hp
- db 70 ; base attack
- db 45 ; base defense
- db 45 ; base speed
- db 50 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 50 ; catch rate
- db 109 ; base exp yield
- db $66 ; sprite dimensions
-
- dw WigglytuffPicFront
- dw WigglytuffPicBack
-
- ; attacks known at lvl 0
- db SING
- db DISABLE
- db DEFENSE_CURL
- db DOUBLESLAP
-
- db 4 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %10101111
- db %11110001
- db %10100011
- db %00111000
- db %01100011
-
- db 0 ; padding
-
-ZubatBaseStats: ; 3883e (e:483e)
- db DEX_ZUBAT ; pokedex id
- db 40 ; base hp
- db 45 ; base attack
- db 35 ; base defense
- db 55 ; base speed
- db 40 ; base special
-
- db POISON ; species type 1
- db FLYING ; species type 2
-
- db 255 ; catch rate
- db 54 ; base exp yield
- db $55 ; sprite dimensions
-
- dw ZubatPicFront
- dw ZubatPicBack
-
- ; attacks known at lvl 0
- db LEECH_LIFE
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00101010
- db %00000011
- db %00011000
- db %11000000
- db %01000010
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-GolbatBaseStats: ; 3885a (e:485a)
- db DEX_GOLBAT ; pokedex id
- db 75 ; base hp
- db 80 ; base attack
- db 70 ; base defense
- db 90 ; base speed
- db 75 ; base special
-
- db POISON ; species type 1
- db FLYING ; species type 2
-
- db 90 ; catch rate
- db 171 ; base exp yield
- db $77 ; sprite dimensions
-
- dw GolbatPicFront
- dw GolbatPicBack
-
- ; attacks known at lvl 0
- db LEECH_LIFE
- db SCREECH
- db BITE
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %00011000
- db %11000000
- db %01000010
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-OddishBaseStats: ; 38876 (e:4876)
- db DEX_ODDISH ; pokedex id
- db 45 ; base hp
- db 50 ; base attack
- db 55 ; base defense
- db 30 ; base speed
- db 75 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 255 ; catch rate
- db 78 ; base exp yield
- db $55 ; sprite dimensions
-
- dw OddishPicFront
- dw OddishPicBack
-
- ; attacks known at lvl 0
- db ABSORB
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00100100
- db %00000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-GloomBaseStats: ; 38892 (e:4892)
- db DEX_GLOOM ; pokedex id
- db 60 ; base hp
- db 65 ; base attack
- db 70 ; base defense
- db 40 ; base speed
- db 85 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 120 ; catch rate
- db 132 ; base exp yield
- db $66 ; sprite dimensions
-
- dw GloomPicFront
- dw GloomPicBack
-
- ; attacks known at lvl 0
- db ABSORB
- db POISONPOWDER
- db STUN_SPORE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00100100
- db %00000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-VileplumeBaseStats: ; 388ae (e:48ae)
- db DEX_VILEPLUME ; pokedex id
- db 75 ; base hp
- db 80 ; base attack
- db 85 ; base defense
- db 50 ; base speed
- db 100 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 184 ; base exp yield
- db $77 ; sprite dimensions
-
- dw VileplumePicFront
- dw VileplumePicBack
-
- ; attacks known at lvl 0
- db STUN_SPORE
- db SLEEP_POWDER
- db ACID
- db PETAL_DANCE
-
- db 3 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-ParasBaseStats: ; 388ca (e:48ca)
- db DEX_PARAS ; pokedex id
- db 35 ; base hp
- db 70 ; base attack
- db 55 ; base defense
- db 25 ; base speed
- db 55 ; base special
-
- db BUG ; species type 1
- db GRASS ; species type 2
-
- db 190 ; catch rate
- db 70 ; base exp yield
- db $55 ; sprite dimensions
-
- dw ParasPicFront
- dw ParasPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %00000011
- db %00111000
- db %11001000
- db %10000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-ParasectBaseStats: ; 388e6 (e:48e6)
- db DEX_PARASECT ; pokedex id
- db 60 ; base hp
- db 95 ; base attack
- db 80 ; base defense
- db 30 ; base speed
- db 80 ; base special
-
- db BUG ; species type 1
- db GRASS ; species type 2
-
- db 75 ; catch rate
- db 128 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ParasectPicFront
- dw ParasectPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db STUN_SPORE
- db LEECH_LIFE
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00111000
- db %11001000
- db %10000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-VenonatBaseStats: ; 38902 (e:4902)
- db DEX_VENONAT ; pokedex id
- db 60 ; base hp
- db 55 ; base attack
- db 50 ; base defense
- db 45 ; base speed
- db 40 ; base special
-
- db BUG ; species type 1
- db POISON ; species type 2
-
- db 190 ; catch rate
- db 75 ; base exp yield
- db $55 ; sprite dimensions
-
- dw VenonatPicFront
- dw VenonatPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db DISABLE
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %00000011
- db %00111000
- db %11010000
- db %00000011
- db %00101000
- db %00000010
-
- db 0 ; padding
-
-VenomothBaseStats: ; 3891e (e:491e)
- db DEX_VENOMOTH ; pokedex id
- db 70 ; base hp
- db 65 ; base attack
- db 60 ; base defense
- db 90 ; base speed
- db 90 ; base special
-
- db BUG ; species type 1
- db POISON ; species type 2
-
- db 75 ; catch rate
- db 138 ; base exp yield
- db $77 ; sprite dimensions
-
- dw VenomothPicFront
- dw VenomothPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db DISABLE
- db POISONPOWDER
- db LEECH_LIFE
-
- db 0 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %00111000
- db %11110000
- db %01000011
- db %00101000
- db %00000010
-
- db 0 ; padding
-
-DiglettBaseStats: ; 3893a (e:493a)
- db DEX_DIGLETT ; pokedex id
- db 10 ; base hp
- db 55 ; base attack
- db 25 ; base defense
- db 95 ; base speed
- db 45 ; base special
-
- db GROUND ; species type 1
- db GROUND ; species type 2
-
- db 255 ; catch rate
- db 81 ; base exp yield
- db $55 ; sprite dimensions
-
- dw DiglettPicFront
- dw DiglettPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00000011
- db %00001000
- db %11001110
- db %00000010
- db %10001000
- db %00000010
-
- db 0 ; padding
-
-DugtrioBaseStats: ; 38956 (e:4956)
- db DEX_DUGTRIO ; pokedex id
- db 35 ; base hp
- db 80 ; base attack
- db 50 ; base defense
- db 120 ; base speed
- db 70 ; base special
-
- db GROUND ; species type 1
- db GROUND ; species type 2
-
- db 50 ; catch rate
- db 153 ; base exp yield
- db $66 ; sprite dimensions
-
- dw DugtrioPicFront
- dw DugtrioPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db GROWL
- db DIG
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01000011
- db %00001000
- db %11001110
- db %00000010
- db %10001000
- db %00000010
-
- db 0 ; padding
-
-MeowthBaseStats: ; 38972 (e:4972)
- db DEX_MEOWTH ; pokedex id
- db 40 ; base hp
- db 45 ; base attack
- db 35 ; base defense
- db 90 ; base speed
- db 40 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 255 ; catch rate
- db 69 ; base exp yield
- db $55 ; sprite dimensions
-
- dw MeowthPicFront
- dw MeowthPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db GROWL
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %10001111
- db %10001000
- db %11000001
- db %11000010
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-PersianBaseStats: ; 3898e (e:498e)
- db DEX_PERSIAN ; pokedex id
- db 65 ; base hp
- db 70 ; base attack
- db 60 ; base defense
- db 115 ; base speed
- db 65 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 90 ; catch rate
- db 148 ; base exp yield
- db $77 ; sprite dimensions
-
- dw PersianPicFront
- dw PersianPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db GROWL
- db BITE
- db SCREECH
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %11001111
- db %10001000
- db %11000001
- db %11000010
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-PsyduckBaseStats: ; 389aa (e:49aa)
- db DEX_PSYDUCK ; pokedex id
- db 50 ; base hp
- db 52 ; base attack
- db 48 ; base defense
- db 55 ; base speed
- db 50 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 190 ; catch rate
- db 80 ; base exp yield
- db $55 ; sprite dimensions
-
- dw PsyduckPicFront
- dw PsyduckPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %10111111
- db %00001111
- db %11001000
- db %11000010
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-GolduckBaseStats: ; 389c6 (e:49c6)
- db DEX_GOLDUCK ; pokedex id
- db 80 ; base hp
- db 82 ; base attack
- db 78 ; base defense
- db 85 ; base speed
- db 80 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 75 ; catch rate
- db 174 ; base exp yield
- db $77 ; sprite dimensions
-
- dw GolduckPicFront
- dw GolduckPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db TAIL_WHIP
- db DISABLE
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %11111111
- db %00001111
- db %11001000
- db %11000010
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-MankeyBaseStats: ; 389e2 (e:49e2)
- db DEX_MANKEY ; pokedex id
- db 40 ; base hp
- db 80 ; base attack
- db 35 ; base defense
- db 70 ; base speed
- db 35 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 190 ; catch rate
- db 74 ; base exp yield
- db $55 ; sprite dimensions
-
- dw MankeyPicFront
- dw MankeyPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db LEER
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %10000011
- db %10001111
- db %11001001
- db %11000110
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-PrimeapeBaseStats: ; 389fe (e:49fe)
- db DEX_PRIMEAPE ; pokedex id
- db 65 ; base hp
- db 105 ; base attack
- db 60 ; base defense
- db 95 ; base speed
- db 60 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 75 ; catch rate
- db 149 ; base exp yield
- db $77 ; sprite dimensions
-
- dw PrimeapePicFront
- dw PrimeapePicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db LEER
- db KARATE_CHOP
- db FURY_SWIPES
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %11000011
- db %10001111
- db %11001001
- db %11000110
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-GrowlitheBaseStats: ; 38a1a (e:4a1a)
- db DEX_GROWLITHE ; pokedex id
- db 55 ; base hp
- db 70 ; base attack
- db 45 ; base defense
- db 60 ; base speed
- db 50 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 190 ; catch rate
- db 91 ; base exp yield
- db $55 ; sprite dimensions
-
- dw GrowlithePicFront
- dw GrowlithePicBack
-
- ; attacks known at lvl 0
- db BITE
- db ROAR
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %10100000
- db %00000011
- db %01001000
- db %11001000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-ArcanineBaseStats: ; 38a36 (e:4a36)
- db DEX_ARCANINE ; pokedex id
- db 90 ; base hp
- db 110 ; base attack
- db 80 ; base defense
- db 95 ; base speed
- db 80 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 75 ; catch rate
- db 213 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ArcaninePicFront
- dw ArcaninePicBack
-
- ; attacks known at lvl 0
- db ROAR
- db EMBER
- db LEER
- db TAKE_DOWN
-
- db 5 ; growth rate
-
- ; learnset
- db %10100000
- db %01000011
- db %01001000
- db %11101000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-PoliwagBaseStats: ; 38a52 (e:4a52)
- db DEX_POLIWAG ; pokedex id
- db 40 ; base hp
- db 50 ; base attack
- db 40 ; base defense
- db 90 ; base speed
- db 40 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 255 ; catch rate
- db 77 ; base exp yield
- db $55 ; sprite dimensions
-
- dw PoliwagPicFront
- dw PoliwagPicBack
-
- ; attacks known at lvl 0
- db BUBBLE
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10100000
- db %00111111
- db %00001000
- db %11010000
- db %10000010
- db %00101000
- db %00010010
-
- db 0 ; padding
-
-PoliwhirlBaseStats: ; 38a6e (e:4a6e)
- db DEX_POLIWHIRL ; pokedex id
- db 65 ; base hp
- db 65 ; base attack
- db 65 ; base defense
- db 90 ; base speed
- db 50 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 120 ; catch rate
- db 131 ; base exp yield
- db $66 ; sprite dimensions
-
- dw PoliwhirlPicFront
- dw PoliwhirlPicBack
-
- ; attacks known at lvl 0
- db BUBBLE
- db HYPNOSIS
- db WATER_GUN
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00111111
- db %00001111
- db %11010110
- db %10000110
- db %00101000
- db %00110010
-
- db 0 ; padding
-
-PoliwrathBaseStats: ; 38a8a (e:4a8a)
- db DEX_POLIWRATH ; pokedex id
- db 90 ; base hp
- db 85 ; base attack
- db 95 ; base defense
- db 70 ; base speed
- db 70 ; base special
-
- db WATER ; species type 1
- db FIGHTING ; species type 2
-
- db 45 ; catch rate
- db 185 ; base exp yield
- db $77 ; sprite dimensions
-
- dw PoliwrathPicFront
- dw PoliwrathPicBack
-
- ; attacks known at lvl 0
- db HYPNOSIS
- db WATER_GUN
- db DOUBLESLAP
- db BODY_SLAM
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %00001111
- db %11010110
- db %10000110
- db %00101000
- db %00110010
-
- db 0 ; padding
-
-AbraBaseStats: ; 38aa6 (e:4aa6)
- db DEX_ABRA ; pokedex id
- db 25 ; base hp
- db 20 ; base attack
- db 15 ; base defense
- db 90 ; base speed
- db 105 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 200 ; catch rate
- db 73 ; base exp yield
- db $55 ; sprite dimensions
-
- dw AbraPicFront
- dw AbraPicBack
-
- ; attacks known at lvl 0
- db TELEPORT
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11110000
- db %10000111
- db %00111000
- db %01000011
-
- db 0 ; padding
-
-KadabraBaseStats: ; 38ac2 (e:4ac2)
- db DEX_KADABRA ; pokedex id
- db 40 ; base hp
- db 35 ; base attack
- db 30 ; base defense
- db 105 ; base speed
- db 120 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 100 ; catch rate
- db 145 ; base exp yield
- db $66 ; sprite dimensions
-
- dw KadabraPicFront
- dw KadabraPicBack
-
- ; attacks known at lvl 0
- db TELEPORT
- db CONFUSION
- db DISABLE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11111000
- db %10000111
- db %00111000
- db %01000011
-
- db 0 ; padding
-
-AlakazamBaseStats: ; 38ade (e:4ade)
- db DEX_ALAKAZAM ; pokedex id
- db 55 ; base hp
- db 50 ; base attack
- db 45 ; base defense
- db 120 ; base speed
- db 135 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 50 ; catch rate
- db 186 ; base exp yield
- db $77 ; sprite dimensions
-
- dw AlakazamPicFront
- dw AlakazamPicBack
-
- ; attacks known at lvl 0
- db TELEPORT
- db CONFUSION
- db DISABLE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %00001111
- db %11111000
- db %10000111
- db %00111000
- db %01000011
-
- db 0 ; padding
-
-MachopBaseStats: ; 38afa (e:4afa)
- db DEX_MACHOP ; pokedex id
- db 70 ; base hp
- db 80 ; base attack
- db 50 ; base defense
- db 35 ; base speed
- db 35 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 180 ; catch rate
- db 88 ; base exp yield
- db $55 ; sprite dimensions
-
- dw MachopPicFront
- dw MachopPicBack
-
- ; attacks known at lvl 0
- db KARATE_CHOP
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11001110
- db %10100110
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-MachokeBaseStats: ; 38b16 (e:4b16)
- db DEX_MACHOKE ; pokedex id
- db 80 ; base hp
- db 100 ; base attack
- db 70 ; base defense
- db 45 ; base speed
- db 50 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 90 ; catch rate
- db 146 ; base exp yield
- db $77 ; sprite dimensions
-
- dw MachokePicFront
- dw MachokePicBack
-
- ; attacks known at lvl 0
- db KARATE_CHOP
- db LOW_KICK
- db LEER
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11001110
- db %10100110
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-MachampBaseStats: ; 38b32 (e:4b32)
- db DEX_MACHAMP ; pokedex id
- db 90 ; base hp
- db 130 ; base attack
- db 80 ; base defense
- db 55 ; base speed
- db 65 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 45 ; catch rate
- db 193 ; base exp yield
- db $77 ; sprite dimensions
-
- dw MachampPicFront
- dw MachampPicBack
-
- ; attacks known at lvl 0
- db KARATE_CHOP
- db LOW_KICK
- db LEER
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %00001111
- db %11001110
- db %10100110
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-BellsproutBaseStats: ; 38b4e (e:4b4e)
- db DEX_BELLSPROUT ; pokedex id
- db 50 ; base hp
- db 75 ; base attack
- db 35 ; base defense
- db 40 ; base speed
- db 70 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 255 ; catch rate
- db 84 ; base exp yield
- db $55 ; sprite dimensions
-
- dw BellsproutPicFront
- dw BellsproutPicBack
-
- ; attacks known at lvl 0
- db VINE_WHIP
- db GROWTH
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00100100
- db %00000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-WeepinbellBaseStats: ; 38b6a (e:4b6a)
- db DEX_WEEPINBELL ; pokedex id
- db 65 ; base hp
- db 90 ; base attack
- db 50 ; base defense
- db 55 ; base speed
- db 85 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 120 ; catch rate
- db 151 ; base exp yield
- db $66 ; sprite dimensions
-
- dw WeepinbellPicFront
- dw WeepinbellPicBack
-
- ; attacks known at lvl 0
- db VINE_WHIP
- db GROWTH
- db WRAP
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00100100
- db %00000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-VictreebelBaseStats: ; 38b86 (e:4b86)
- db DEX_VICTREEBEL ; pokedex id
- db 80 ; base hp
- db 105 ; base attack
- db 65 ; base defense
- db 70 ; base speed
- db 100 ; base special
-
- db GRASS ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 191 ; base exp yield
- db $77 ; sprite dimensions
-
- dw VictreebelPicFront
- dw VictreebelPicBack
-
- ; attacks known at lvl 0
- db SLEEP_POWDER
- db STUN_SPORE
- db ACID
- db RAZOR_LEAF
-
- db 3 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00111000
- db %11000000
- db %00000011
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-TentacoolBaseStats: ; 38ba2 (e:4ba2)
- db DEX_TENTACOOL ; pokedex id
- db 40 ; base hp
- db 40 ; base attack
- db 35 ; base defense
- db 70 ; base speed
- db 100 ; base special
-
- db WATER ; species type 1
- db POISON ; species type 2
-
- db 190 ; catch rate
- db 105 ; base exp yield
- db $55 ; sprite dimensions
-
- dw TentacoolPicFront
- dw TentacoolPicBack
-
- ; attacks known at lvl 0
- db ACID
- db 0
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100100
- db %00111111
- db %00011000
- db %11000000
- db %10000011
- db %00001000
- db %00010110
-
- db 0 ; padding
-
-TentacruelBaseStats: ; 38bbe (e:4bbe)
- db DEX_TENTACRUEL ; pokedex id
- db 80 ; base hp
- db 70 ; base attack
- db 65 ; base defense
- db 100 ; base speed
- db 120 ; base special
-
- db WATER ; species type 1
- db POISON ; species type 2
-
- db 60 ; catch rate
- db 205 ; base exp yield
- db $66 ; sprite dimensions
-
- dw TentacruelPicFront
- dw TentacruelPicBack
-
- ; attacks known at lvl 0
- db ACID
- db SUPERSONIC
- db WRAP
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100100
- db %01111111
- db %00011000
- db %11000000
- db %10000011
- db %00001000
- db %00010110
-
- db 0 ; padding
-
-GeodudeBaseStats: ; 38bda (e:4bda)
- db DEX_GEODUDE ; pokedex id
- db 40 ; base hp
- db 80 ; base attack
- db 100 ; base defense
- db 20 ; base speed
- db 30 ; base special
-
- db ROCK ; species type 1
- db GROUND ; species type 2
-
- db 255 ; catch rate
- db 86 ; base exp yield
- db $55 ; sprite dimensions
-
- dw GeodudePicFront
- dw GeodudePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db 0
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10100001
- db %00000011
- db %00001111
- db %11001110
- db %00101110
- db %11001000
- db %00100010
-
- db 0 ; padding
-
-GravelerBaseStats: ; 38bf6 (e:4bf6)
- db DEX_GRAVELER ; pokedex id
- db 55 ; base hp
- db 95 ; base attack
- db 115 ; base defense
- db 35 ; base speed
- db 45 ; base special
-
- db ROCK ; species type 1
- db GROUND ; species type 2
-
- db 120 ; catch rate
- db 134 ; base exp yield
- db $66 ; sprite dimensions
-
- dw GravelerPicFront
- dw GravelerPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db DEFENSE_CURL
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10100001
- db %00000011
- db %00001111
- db %11001110
- db %00101110
- db %11001000
- db %00100010
-
- db 0 ; padding
-
-GolemBaseStats: ; 38c12 (e:4c12)
- db DEX_GOLEM ; pokedex id
- db 80 ; base hp
- db 110 ; base attack
- db 130 ; base defense
- db 45 ; base speed
- db 55 ; base special
-
- db ROCK ; species type 1
- db GROUND ; species type 2
-
- db 45 ; catch rate
- db 177 ; base exp yield
- db $66 ; sprite dimensions
-
- dw GolemPicFront
- dw GolemPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db DEFENSE_CURL
- db 0
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %00001111
- db %11001110
- db %00101110
- db %11001000
- db %00100010
-
- db 0 ; padding
-
-PonytaBaseStats: ; 38c2e (e:4c2e)
- db DEX_PONYTA ; pokedex id
- db 50 ; base hp
- db 85 ; base attack
- db 55 ; base defense
- db 90 ; base speed
- db 65 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 190 ; catch rate
- db 152 ; base exp yield
- db $66 ; sprite dimensions
-
- dw PonytaPicFront
- dw PonytaPicBack
-
- ; attacks known at lvl 0
- db EMBER
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %11100000
- db %00000011
- db %00001000
- db %11000000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-RapidashBaseStats: ; 38c4a (e:4c4a)
- db DEX_RAPIDASH ; pokedex id
- db 65 ; base hp
- db 100 ; base attack
- db 70 ; base defense
- db 105 ; base speed
- db 80 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 60 ; catch rate
- db 192 ; base exp yield
- db $77 ; sprite dimensions
-
- dw RapidashPicFront
- dw RapidashPicBack
-
- ; attacks known at lvl 0
- db EMBER
- db TAIL_WHIP
- db STOMP
- db GROWL
-
- db 0 ; growth rate
-
- ; learnset
- db %11100000
- db %01000011
- db %00001000
- db %11000000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-SlowpokeBaseStats: ; 38c66 (e:4c66)
- db DEX_SLOWPOKE ; pokedex id
- db 90 ; base hp
- db 65 ; base attack
- db 65 ; base defense
- db 15 ; base speed
- db 40 ; base special
-
- db WATER ; species type 1
- db PSYCHIC ; species type 2
-
- db 190 ; catch rate
- db 99 ; base exp yield
- db $55 ; sprite dimensions
-
- dw SlowpokePicFront
- dw SlowpokePicBack
-
- ; attacks known at lvl 0
- db CONFUSION
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %10111111
- db %00001000
- db %11111110
- db %11100011
- db %00111000
- db %01110011
-
- db 0 ; padding
-
-SlowbroBaseStats: ; 38c82 (e:4c82)
- db DEX_SLOWBRO ; pokedex id
- db 95 ; base hp
- db 75 ; base attack
- db 110 ; base defense
- db 30 ; base speed
- db 80 ; base special
-
- db WATER ; species type 1
- db PSYCHIC ; species type 2
-
- db 75 ; catch rate
- db 164 ; base exp yield
- db $77 ; sprite dimensions
-
- dw SlowbroPicFront
- dw SlowbroPicBack
-
- ; attacks known at lvl 0
- db CONFUSION
- db DISABLE
- db HEADBUTT
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %11111111
- db %00001111
- db %11111110
- db %11100011
- db %00111000
- db %01110011
-
- db 0 ; padding
-
-MagnemiteBaseStats: ; 38c9e (e:4c9e)
- db DEX_MAGNEMITE ; pokedex id
- db 25 ; base hp
- db 35 ; base attack
- db 70 ; base defense
- db 45 ; base speed
- db 95 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 190 ; catch rate
- db 89 ; base exp yield
- db $55 ; sprite dimensions
-
- dw MagnemitePicFront
- dw MagnemitePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %00000011
- db %10001000
- db %11100001
- db %01000011
- db %00011000
- db %01000010
-
- db 0 ; padding
-
-MagnetonBaseStats: ; 38cba (e:4cba)
- db DEX_MAGNETON ; pokedex id
- db 50 ; base hp
- db 60 ; base attack
- db 95 ; base defense
- db 70 ; base speed
- db 120 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 60 ; catch rate
- db 161 ; base exp yield
- db $66 ; sprite dimensions
-
- dw MagnetonPicFront
- dw MagnetonPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SONICBOOM
- db THUNDERSHOCK
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %01000011
- db %10001000
- db %11100001
- db %01000011
- db %00011000
- db %01000010
-
- db 0 ; padding
-
-FarfetchdBaseStats: ; 38cd6 (e:4cd6)
- db DEX_FARFETCH_D ; pokedex id
- db 52 ; base hp
- db 65 ; base attack
- db 55 ; base defense
- db 60 ; base speed
- db 58 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 94 ; base exp yield
- db $66 ; sprite dimensions
-
- dw FarfetchdPicFront
- dw FarfetchdPicBack
-
- ; attacks known at lvl 0
- db PECK
- db SAND_ATTACK
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10101110
- db %00000011
- db %00001000
- db %11000000
- db %11000011
- db %00001000
- db %00001110
-
- db 0 ; padding
-
-DoduoBaseStats: ; 38cf2 (e:4cf2)
- db DEX_DODUO ; pokedex id
- db 35 ; base hp
- db 85 ; base attack
- db 45 ; base defense
- db 75 ; base speed
- db 35 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 190 ; catch rate
- db 96 ; base exp yield
- db $55 ; sprite dimensions
-
- dw DoduoPicFront
- dw DoduoPicBack
-
- ; attacks known at lvl 0
- db PECK
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10101000
- db %00000011
- db %00001000
- db %11000000
- db %10000011
- db %00001100
- db %00001011
-
- db 0 ; padding
-
-DodrioBaseStats: ; 38d0e (e:4d0e)
- db DEX_DODRIO ; pokedex id
- db 60 ; base hp
- db 110 ; base attack
- db 70 ; base defense
- db 100 ; base speed
- db 60 ; base special
-
- db NORMAL ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 158 ; base exp yield
- db $77 ; sprite dimensions
-
- dw DodrioPicFront
- dw DodrioPicBack
-
- ; attacks known at lvl 0
- db PECK
- db GROWL
- db FURY_ATTACK
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10101000
- db %01000011
- db %00001000
- db %11000000
- db %10000011
- db %00001100
- db %00001011
-
- db 0 ; padding
-
-SeelBaseStats: ; 38d2a (e:4d2a)
- db DEX_SEEL ; pokedex id
- db 65 ; base hp
- db 45 ; base attack
- db 55 ; base defense
- db 45 ; base speed
- db 70 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 190 ; catch rate
- db 100 ; base exp yield
- db $66 ; sprite dimensions
-
- dw SeelPicFront
- dw SeelPicBack
-
- ; attacks known at lvl 0
- db HEADBUTT
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %11100000
- db %10111111
- db %00001000
- db %11000000
- db %10000010
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-DewgongBaseStats: ; 38d46 (e:4d46)
- db DEX_DEWGONG ; pokedex id
- db 90 ; base hp
- db 70 ; base attack
- db 80 ; base defense
- db 70 ; base speed
- db 95 ; base special
-
- db WATER ; species type 1
- db ICE ; species type 2
-
- db 75 ; catch rate
- db 176 ; base exp yield
- db $66 ; sprite dimensions
-
- dw DewgongPicFront
- dw DewgongPicBack
-
- ; attacks known at lvl 0
- db HEADBUTT
- db GROWL
- db AURORA_BEAM
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %11100000
- db %11111111
- db %00001000
- db %11000000
- db %10000010
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-GrimerBaseStats: ; 38d62 (e:4d62)
- db DEX_GRIMER ; pokedex id
- db 80 ; base hp
- db 80 ; base attack
- db 50 ; base defense
- db 25 ; base speed
- db 40 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 190 ; catch rate
- db 90 ; base exp yield
- db $55 ; sprite dimensions
-
- dw GrimerPicFront
- dw GrimerPicBack
-
- ; attacks known at lvl 0
- db POUND
- db DISABLE
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00000000
- db %10011000
- db %11000001
- db %00101010
- db %01001000
- db %00000010
-
- db 0 ; padding
-
-MukBaseStats: ; 38d7e (e:4d7e)
- db DEX_MUK ; pokedex id
- db 105 ; base hp
- db 105 ; base attack
- db 75 ; base defense
- db 50 ; base speed
- db 65 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 75 ; catch rate
- db 157 ; base exp yield
- db $77 ; sprite dimensions
-
- dw MukPicFront
- dw MukPicBack
-
- ; attacks known at lvl 0
- db POUND
- db DISABLE
- db POISON_GAS
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01000000
- db %10011000
- db %11000001
- db %00101010
- db %01001000
- db %00000010
-
- db 0 ; padding
-
-ShellderBaseStats: ; 38d9a (e:4d9a)
- db DEX_SHELLDER ; pokedex id
- db 30 ; base hp
- db 65 ; base attack
- db 100 ; base defense
- db 40 ; base speed
- db 45 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 190 ; catch rate
- db 97 ; base exp yield
- db $55 ; sprite dimensions
-
- dw ShellderPicFront
- dw ShellderPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db WITHDRAW
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100000
- db %00111111
- db %00001000
- db %11100000
- db %01001011
- db %01001000
- db %00010011
-
- db 0 ; padding
-
-CloysterBaseStats: ; 38db6 (e:4db6)
- db DEX_CLOYSTER ; pokedex id
- db 50 ; base hp
- db 95 ; base attack
- db 180 ; base defense
- db 70 ; base speed
- db 85 ; base special
-
- db WATER ; species type 1
- db ICE ; species type 2
-
- db 60 ; catch rate
- db 203 ; base exp yield
- db $77 ; sprite dimensions
-
- dw CloysterPicFront
- dw CloysterPicBack
-
- ; attacks known at lvl 0
- db WITHDRAW
- db SUPERSONIC
- db CLAMP
- db AURORA_BEAM
-
- db 5 ; growth rate
-
- ; learnset
- db %00100000
- db %01111111
- db %00001000
- db %11100000
- db %01001011
- db %01001000
- db %00010011
-
- db 0 ; padding
-
-GastlyBaseStats: ; 38dd2 (e:4dd2)
- db DEX_GASTLY ; pokedex id
- db 30 ; base hp
- db 35 ; base attack
- db 30 ; base defense
- db 80 ; base speed
- db 100 ; base special
-
- db GHOST ; species type 1
- db POISON ; species type 2
-
- db 190 ; catch rate
- db 95 ; base exp yield
- db $77 ; sprite dimensions
-
- dw GastlyPicFront
- dw GastlyPicBack
-
- ; attacks known at lvl 0
- db LICK
- db CONFUSE_RAY
- db NIGHT_SHADE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00100000
- db %00000000
- db %10011000
- db %11010001
- db %00001010
- db %01101010
- db %00000010
-
- db 0 ; padding
-
-HaunterBaseStats: ; 38dee (e:4dee)
- db DEX_HAUNTER ; pokedex id
- db 45 ; base hp
- db 50 ; base attack
- db 45 ; base defense
- db 95 ; base speed
- db 115 ; base special
-
- db GHOST ; species type 1
- db POISON ; species type 2
-
- db 90 ; catch rate
- db 126 ; base exp yield
- db $66 ; sprite dimensions
-
- dw HaunterPicFront
- dw HaunterPicBack
-
- ; attacks known at lvl 0
- db LICK
- db CONFUSE_RAY
- db NIGHT_SHADE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %00100000
- db %00000000
- db %10011000
- db %11010001
- db %00001010
- db %01101010
- db %00000010
-
- db 0 ; padding
-
-GengarBaseStats: ; 38e0a (e:4e0a)
- db DEX_GENGAR ; pokedex id
- db 60 ; base hp
- db 65 ; base attack
- db 60 ; base defense
- db 110 ; base speed
- db 130 ; base special
-
- db GHOST ; species type 1
- db POISON ; species type 2
-
- db 45 ; catch rate
- db 190 ; base exp yield
- db $66 ; sprite dimensions
-
- dw GengarPicFront
- dw GengarPicBack
-
- ; attacks known at lvl 0
- db LICK
- db CONFUSE_RAY
- db NIGHT_SHADE
- db 0
-
- db 3 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %10011111
- db %11010001
- db %10001110
- db %01101010
- db %00100010
-
- db 0 ; padding
-
-OnixBaseStats: ; 38e26 (e:4e26)
- db DEX_ONIX ; pokedex id
- db 35 ; base hp
- db 45 ; base attack
- db 160 ; base defense
- db 70 ; base speed
- db 30 ; base special
-
- db ROCK ; species type 1
- db GROUND ; species type 2
-
- db 45 ; catch rate
- db 108 ; base exp yield
- db $77 ; sprite dimensions
-
- dw OnixPicFront
- dw OnixPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SCREECH
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00000011
- db %00001000
- db %11001110
- db %10001010
- db %11001000
- db %00100010
-
- db 0 ; padding
-
-DrowzeeBaseStats: ; 38e42 (e:4e42)
- db DEX_DROWZEE ; pokedex id
- db 60 ; base hp
- db 48 ; base attack
- db 45 ; base defense
- db 42 ; base speed
- db 90 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 190 ; catch rate
- db 102 ; base exp yield
- db $66 ; sprite dimensions
-
- dw DrowzeePicFront
- dw DrowzeePicBack
-
- ; attacks known at lvl 0
- db POUND
- db HYPNOSIS
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11110000
- db %10000111
- db %00111010
- db %01000011
-
- db 0 ; padding
-
-HypnoBaseStats: ; 38e5e (e:4e5e)
- db DEX_HYPNO ; pokedex id
- db 85 ; base hp
- db 73 ; base attack
- db 70 ; base defense
- db 67 ; base speed
- db 115 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 75 ; catch rate
- db 165 ; base exp yield
- db $77 ; sprite dimensions
-
- dw HypnoPicFront
- dw HypnoPicBack
-
- ; attacks known at lvl 0
- db POUND
- db HYPNOSIS
- db DISABLE
- db CONFUSION
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %00001111
- db %11110000
- db %10000111
- db %00111010
- db %01000011
-
- db 0 ; padding
-
-KrabbyBaseStats: ; 38e7a (e:4e7a)
- db DEX_KRABBY ; pokedex id
- db 30 ; base hp
- db 105 ; base attack
- db 90 ; base defense
- db 50 ; base speed
- db 25 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 225 ; catch rate
- db 115 ; base exp yield
- db $55 ; sprite dimensions
-
- dw KrabbyPicFront
- dw KrabbyPicBack
-
- ; attacks known at lvl 0
- db BUBBLE
- db LEER
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %00111111
- db %00001000
- db %11000000
- db %00000010
- db %00001000
- db %00110110
-
- db 0 ; padding
-
-KinglerBaseStats: ; 38e96 (e:4e96)
- db DEX_KINGLER ; pokedex id
- db 55 ; base hp
- db 130 ; base attack
- db 115 ; base defense
- db 75 ; base speed
- db 50 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 60 ; catch rate
- db 206 ; base exp yield
- db $77 ; sprite dimensions
-
- dw KinglerPicFront
- dw KinglerPicBack
-
- ; attacks known at lvl 0
- db BUBBLE
- db LEER
- db VICEGRIP
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %01111111
- db %00001000
- db %11000000
- db %00000010
- db %00001000
- db %00110110
-
- db 0 ; padding
-
-VoltorbBaseStats: ; 38eb2 (e:4eb2)
- db DEX_VOLTORB ; pokedex id
- db 40 ; base hp
- db 30 ; base attack
- db 50 ; base defense
- db 100 ; base speed
- db 55 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 190 ; catch rate
- db 103 ; base exp yield
- db $55 ; sprite dimensions
-
- dw VoltorbPicFront
- dw VoltorbPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SCREECH
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %00000001
- db %10001000
- db %11100001
- db %01001011
- db %01011000
- db %01000010
-
- db 0 ; padding
-
-ElectrodeBaseStats: ; 38ece (e:4ece)
- db DEX_ELECTRODE ; pokedex id
- db 60 ; base hp
- db 50 ; base attack
- db 70 ; base defense
- db 140 ; base speed
- db 80 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 60 ; catch rate
- db 150 ; base exp yield
- db $55 ; sprite dimensions
-
- dw ElectrodePicFront
- dw ElectrodePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SCREECH
- db SONICBOOM
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %01000001
- db %10001000
- db %11100001
- db %11001011
- db %01011000
- db %01000010
-
- db 0 ; padding
-
-ExeggcuteBaseStats: ; 38eea (e:4eea)
- db DEX_EXEGGCUTE ; pokedex id
- db 60 ; base hp
- db 40 ; base attack
- db 80 ; base defense
- db 40 ; base speed
- db 60 ; base special
-
- db GRASS ; species type 1
- db PSYCHIC ; species type 2
-
- db 90 ; catch rate
- db 98 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ExeggcutePicFront
- dw ExeggcutePicBack
-
- ; attacks known at lvl 0
- db BARRAGE
- db HYPNOSIS
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100000
- db %00000011
- db %00001000
- db %11110000
- db %00011011
- db %01101000
- db %00000010
-
- db 0 ; padding
-
-ExeggutorBaseStats: ; 38f06 (e:4f06)
- db DEX_EXEGGUTOR ; pokedex id
- db 95 ; base hp
- db 95 ; base attack
- db 85 ; base defense
- db 55 ; base speed
- db 125 ; base special
-
- db GRASS ; species type 1
- db PSYCHIC ; species type 2
-
- db 45 ; catch rate
- db 212 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ExeggutorPicFront
- dw ExeggutorPicBack
-
- ; attacks known at lvl 0
- db BARRAGE
- db HYPNOSIS
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100000
- db %01000011
- db %00111000
- db %11110000
- db %00011011
- db %01101000
- db %00100010
-
- db 0 ; padding
-
-CuboneBaseStats: ; 38f22 (e:4f22)
- db DEX_CUBONE ; pokedex id
- db 50 ; base hp
- db 50 ; base attack
- db 95 ; base defense
- db 35 ; base speed
- db 40 ; base special
-
- db GROUND ; species type 1
- db GROUND ; species type 2
-
- db 190 ; catch rate
- db 87 ; base exp yield
- db $55 ; sprite dimensions
-
- dw CubonePicFront
- dw CubonePicBack
-
- ; attacks known at lvl 0
- db BONE_CLUB
- db GROWL
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %00111111
- db %00001111
- db %11001110
- db %10100010
- db %00001000
- db %00100010
-
- db 0 ; padding
-
-MarowakBaseStats: ; 38f3e (e:4f3e)
- db DEX_MAROWAK ; pokedex id
- db 60 ; base hp
- db 80 ; base attack
- db 110 ; base defense
- db 45 ; base speed
- db 50 ; base special
-
- db GROUND ; species type 1
- db GROUND ; species type 2
-
- db 75 ; catch rate
- db 124 ; base exp yield
- db $66 ; sprite dimensions
-
- dw MarowakPicFront
- dw MarowakPicBack
-
- ; attacks known at lvl 0
- db BONE_CLUB
- db GROWL
- db LEER
- db FOCUS_ENERGY
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %00001111
- db %11001110
- db %10100010
- db %00001000
- db %00100010
-
- db 0 ; padding
-
-HitmonleeBaseStats: ; 38f5a (e:4f5a)
- db DEX_HITMONLEE ; pokedex id
- db 50 ; base hp
- db 120 ; base attack
- db 53 ; base defense
- db 87 ; base speed
- db 35 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 45 ; catch rate
- db 139 ; base exp yield
- db $77 ; sprite dimensions
-
- dw HitmonleePicFront
- dw HitmonleePicBack
-
- ; attacks known at lvl 0
- db DOUBLE_KICK
- db MEDITATE
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11000000
- db %11000110
- db %00001000
- db %00100010
-
- db 0 ; padding
-
-HitmonchanBaseStats: ; 38f76 (e:4f76)
- db DEX_HITMONCHAN ; pokedex id
- db 50 ; base hp
- db 105 ; base attack
- db 79 ; base defense
- db 76 ; base speed
- db 35 ; base special
-
- db FIGHTING ; species type 1
- db FIGHTING ; species type 2
-
- db 45 ; catch rate
- db 140 ; base exp yield
- db $66 ; sprite dimensions
-
- dw HitmonchanPicFront
- dw HitmonchanPicBack
-
- ; attacks known at lvl 0
- db COMET_PUNCH
- db AGILITY
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %00000011
- db %00001111
- db %11000000
- db %11000110
- db %00001000
- db %00100010
-
- db 0 ; padding
-
-LickitungBaseStats: ; 38f92 (e:4f92)
- db DEX_LICKITUNG ; pokedex id
- db 90 ; base hp
- db 55 ; base attack
- db 75 ; base defense
- db 30 ; base speed
- db 60 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 45 ; catch rate
- db 127 ; base exp yield
- db $77 ; sprite dimensions
-
- dw LickitungPicFront
- dw LickitungPicBack
-
- ; attacks known at lvl 0
- db WRAP
- db SUPERSONIC
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110101
- db %01111111
- db %10001111
- db %11000111
- db %10100010
- db %00001000
- db %00110110
-
- db 0 ; padding
-
-KoffingBaseStats: ; 38fae (e:4fae)
- db DEX_KOFFING ; pokedex id
- db 40 ; base hp
- db 65 ; base attack
- db 95 ; base defense
- db 35 ; base speed
- db 60 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 190 ; catch rate
- db 114 ; base exp yield
- db $66 ; sprite dimensions
-
- dw KoffingPicFront
- dw KoffingPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SMOG
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %00000000
- db %10001000
- db %11000001
- db %00101010
- db %01001000
- db %00000010
-
- db 0 ; padding
-
-WeezingBaseStats: ; 38fca (e:4fca)
- db DEX_WEEZING ; pokedex id
- db 65 ; base hp
- db 90 ; base attack
- db 120 ; base defense
- db 60 ; base speed
- db 85 ; base special
-
- db POISON ; species type 1
- db POISON ; species type 2
-
- db 60 ; catch rate
- db 173 ; base exp yield
- db $77 ; sprite dimensions
-
- dw WeezingPicFront
- dw WeezingPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SMOG
- db SLUDGE
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %01000000
- db %10001000
- db %11000001
- db %00101010
- db %01001000
- db %00000010
-
- db 0 ; padding
-
-RhyhornBaseStats: ; 38fe6 (e:4fe6)
- db DEX_RHYHORN ; pokedex id
- db 80 ; base hp
- db 85 ; base attack
- db 95 ; base defense
- db 25 ; base speed
- db 30 ; base special
-
- db GROUND ; species type 1
- db ROCK ; species type 2
-
- db 120 ; catch rate
- db 135 ; base exp yield
- db $77 ; sprite dimensions
-
- dw RhyhornPicFront
- dw RhyhornPicBack
-
- ; attacks known at lvl 0
- db HORN_ATTACK
- db 0
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %11100000
- db %00000011
- db %10001000
- db %11001111
- db %10100010
- db %10001000
- db %00100010
-
- db 0 ; padding
-
-RhydonBaseStats: ; 39002 (e:5002)
- db DEX_RHYDON ; pokedex id
- db 105 ; base hp
- db 130 ; base attack
- db 120 ; base defense
- db 40 ; base speed
- db 45 ; base special
-
- db GROUND ; species type 1
- db ROCK ; species type 2
-
- db 60 ; catch rate
- db 204 ; base exp yield
- db $77 ; sprite dimensions
-
- dw RhydonPicFront
- dw RhydonPicBack
-
- ; attacks known at lvl 0
- db HORN_ATTACK
- db STOMP
- db TAIL_WHIP
- db FURY_ATTACK
-
- db 5 ; growth rate
-
- ; learnset
- db %11110001
- db %11111111
- db %10001111
- db %11001111
- db %10100010
- db %10001000
- db %00110010
-
- db 0 ; padding
-
-ChanseyBaseStats: ; 3901e (e:501e)
- db DEX_CHANSEY ; pokedex id
- db 250 ; base hp
- db 5 ; base attack
- db 5 ; base defense
- db 50 ; base speed
- db 105 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 30 ; catch rate
- db 255 ; base exp yield
- db $66 ; sprite dimensions
-
- dw ChanseyPicFront
- dw ChanseyPicBack
-
- ; attacks known at lvl 0
- db POUND
- db DOUBLESLAP
- db 0
- db 0
-
- db 4 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %10101111
- db %11110001
- db %10110111
- db %00111001
- db %01100011
-
- db 0 ; padding
-
-TangelaBaseStats: ; 3903a (e:503a)
- db DEX_TANGELA ; pokedex id
- db 65 ; base hp
- db 55 ; base attack
- db 115 ; base defense
- db 60 ; base speed
- db 100 ; base special
-
- db GRASS ; species type 1
- db GRASS ; species type 2
-
- db 45 ; catch rate
- db 166 ; base exp yield
- db $66 ; sprite dimensions
-
- dw TangelaPicFront
- dw TangelaPicBack
-
- ; attacks known at lvl 0
- db CONSTRICT
- db BIND
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00111000
- db %11000000
- db %10000010
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-KangaskhanBaseStats: ; 39056 (e:5056)
- db DEX_KANGASKHAN ; pokedex id
- db 105 ; base hp
- db 95 ; base attack
- db 80 ; base defense
- db 90 ; base speed
- db 40 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 45 ; catch rate
- db 175 ; base exp yield
- db $77 ; sprite dimensions
-
- dw KangaskhanPicFront
- dw KangaskhanPicBack
-
- ; attacks known at lvl 0
- db COMET_PUNCH
- db RAGE
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %10001111
- db %11000111
- db %10100010
- db %10001000
- db %00110010
-
- db 0 ; padding
-
-HorseaBaseStats: ; 39072 (e:5072)
- db DEX_HORSEA ; pokedex id
- db 30 ; base hp
- db 40 ; base attack
- db 70 ; base defense
- db 60 ; base speed
- db 70 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 225 ; catch rate
- db 83 ; base exp yield
- db $55 ; sprite dimensions
-
- dw HorseaPicFront
- dw HorseaPicBack
-
- ; attacks known at lvl 0
- db BUBBLE
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %00111111
- db %00001000
- db %11000000
- db %11000010
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-SeadraBaseStats: ; 3908e (e:508e)
- db DEX_SEADRA ; pokedex id
- db 55 ; base hp
- db 65 ; base attack
- db 95 ; base defense
- db 85 ; base speed
- db 95 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 75 ; catch rate
- db 155 ; base exp yield
- db $66 ; sprite dimensions
-
- dw SeadraPicFront
- dw SeadraPicBack
-
- ; attacks known at lvl 0
- db BUBBLE
- db SMOKESCREEN
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %01111111
- db %00001000
- db %11000000
- db %11000010
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-GoldeenBaseStats: ; 390aa (e:50aa)
- db DEX_GOLDEEN ; pokedex id
- db 45 ; base hp
- db 67 ; base attack
- db 60 ; base defense
- db 63 ; base speed
- db 50 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 225 ; catch rate
- db 111 ; base exp yield
- db $66 ; sprite dimensions
-
- dw GoldeenPicFront
- dw GoldeenPicBack
-
- ; attacks known at lvl 0
- db PECK
- db TAIL_WHIP
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %01100000
- db %00111111
- db %00001000
- db %11000000
- db %11000010
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-SeakingBaseStats: ; 390c6 (e:50c6)
- db DEX_SEAKING ; pokedex id
- db 80 ; base hp
- db 92 ; base attack
- db 65 ; base defense
- db 68 ; base speed
- db 80 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 60 ; catch rate
- db 170 ; base exp yield
- db $77 ; sprite dimensions
-
- dw SeakingPicFront
- dw SeakingPicBack
-
- ; attacks known at lvl 0
- db PECK
- db TAIL_WHIP
- db SUPERSONIC
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %01100000
- db %01111111
- db %00001000
- db %11000000
- db %11000010
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-StaryuBaseStats: ; 390e2 (e:50e2)
- db DEX_STARYU ; pokedex id
- db 30 ; base hp
- db 45 ; base attack
- db 55 ; base defense
- db 85 ; base speed
- db 70 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 225 ; catch rate
- db 106 ; base exp yield
- db $66 ; sprite dimensions
-
- dw StaryuPicFront
- dw StaryuPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db 0
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100000
- db %00111111
- db %10001000
- db %11110001
- db %11000011
- db %00111000
- db %01010011
-
- db 0 ; padding
-
-StarmieBaseStats: ; 390fe (e:50fe)
- db DEX_STARMIE ; pokedex id
- db 60 ; base hp
- db 75 ; base attack
- db 85 ; base defense
- db 115 ; base speed
- db 100 ; base special
-
- db WATER ; species type 1
- db PSYCHIC ; species type 2
-
- db 60 ; catch rate
- db 207 ; base exp yield
- db $66 ; sprite dimensions
-
- dw StarmiePicFront
- dw StarmiePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db WATER_GUN
- db HARDEN
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00100000
- db %01111111
- db %10001000
- db %11110001
- db %11000011
- db %00111000
- db %01010011
-
- db 0 ; padding
-
-MrMimeBaseStats: ; 3911a (e:511a)
- db DEX_MR_MIME ; pokedex id
- db 40 ; base hp
- db 45 ; base attack
- db 65 ; base defense
- db 90 ; base speed
- db 100 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 45 ; catch rate
- db 136 ; base exp yield
- db $66 ; sprite dimensions
-
- dw MrMimePicFront
- dw MrMimePicBack
-
- ; attacks known at lvl 0
- db CONFUSION
- db BARRIER
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %10101111
- db %11110001
- db %10000111
- db %00111000
- db %01000010
-
- db 0 ; padding
-
-ScytherBaseStats: ; 39136 (e:5136)
- db DEX_SCYTHER ; pokedex id
- db 70 ; base hp
- db 110 ; base attack
- db 80 ; base defense
- db 105 ; base speed
- db 55 ; base special
-
- db BUG ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 187 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ScytherPicFront
- dw ScytherPicBack
-
- ; attacks known at lvl 0
- db QUICK_ATTACK
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100100
- db %01000011
- db %00001000
- db %11000000
- db %11000010
- db %00001000
- db %00000110
-
- db 0 ; padding
-
-JynxBaseStats: ; 39152 (e:5152)
- db DEX_JYNX ; pokedex id
- db 65 ; base hp
- db 50 ; base attack
- db 35 ; base defense
- db 95 ; base speed
- db 95 ; base special
-
- db ICE ; species type 1
- db PSYCHIC ; species type 2
-
- db 45 ; catch rate
- db 137 ; base exp yield
- db $66 ; sprite dimensions
-
- dw JynxPicFront
- dw JynxPicBack
-
- ; attacks known at lvl 0
- db POUND
- db LOVELY_KISS
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01111111
- db %00001111
- db %11110000
- db %10000111
- db %00101000
- db %00000010
-
- db 0 ; padding
-
-ElectabuzzBaseStats: ; 3916e (e:516e)
- db DEX_ELECTABUZZ ; pokedex id
- db 65 ; base hp
- db 83 ; base attack
- db 57 ; base defense
- db 105 ; base speed
- db 85 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 45 ; catch rate
- db 156 ; base exp yield
- db $66 ; sprite dimensions
-
- dw ElectabuzzPicFront
- dw ElectabuzzPicBack
-
- ; attacks known at lvl 0
- db QUICK_ATTACK
- db LEER
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %10001111
- db %11110001
- db %11000111
- db %00111000
- db %01100010
-
- db 0 ; padding
-
-MagmarBaseStats: ; 3918a (e:518a)
- db DEX_MAGMAR ; pokedex id
- db 65 ; base hp
- db 95 ; base attack
- db 57 ; base defense
- db 93 ; base speed
- db 85 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 45 ; catch rate
- db 167 ; base exp yield
- db $66 ; sprite dimensions
-
- dw MagmarPicFront
- dw MagmarPicBack
-
- ; attacks known at lvl 0
- db EMBER
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110001
- db %01000011
- db %00001111
- db %11110000
- db %10100110
- db %00101000
- db %00100010
-
- db 0 ; padding
-
-PinsirBaseStats: ; 391a6 (e:51a6)
- db DEX_PINSIR ; pokedex id
- db 65 ; base hp
- db 125 ; base attack
- db 100 ; base defense
- db 85 ; base speed
- db 55 ; base special
-
- db BUG ; species type 1
- db BUG ; species type 2
-
- db 45 ; catch rate
- db 200 ; base exp yield
- db $77 ; sprite dimensions
-
- dw PinsirPicFront
- dw PinsirPicBack
-
- ; attacks known at lvl 0
- db VICEGRIP
- db 0
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %10100100
- db %01000011
- db %00001101
- db %11000000
- db %00000010
- db %00001000
- db %00100110
-
- db 0 ; padding
-
-TaurosBaseStats: ; 391c2 (e:51c2)
- db DEX_TAUROS ; pokedex id
- db 75 ; base hp
- db 100 ; base attack
- db 95 ; base defense
- db 110 ; base speed
- db 70 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 45 ; catch rate
- db 211 ; base exp yield
- db $77 ; sprite dimensions
-
- dw TaurosPicFront
- dw TaurosPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db 0
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %11100000
- db %01110011
- db %10001000
- db %11000111
- db %10100010
- db %00001000
- db %00100010
-
- db 0 ; padding
-
-MagikarpBaseStats: ; 391de (e:51de)
- db DEX_MAGIKARP ; pokedex id
- db 20 ; base hp
- db 10 ; base attack
- db 55 ; base defense
- db 80 ; base speed
- db 20 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 255 ; catch rate
- db 20 ; base exp yield
- db $66 ; sprite dimensions
-
- dw MagikarpPicFront
- dw MagikarpPicBack
-
- ; attacks known at lvl 0
- db SPLASH
- db 0
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
-
- db 0 ; padding
-
-GyaradosBaseStats: ; 391fa (e:51fa)
- db DEX_GYARADOS ; pokedex id
- db 95 ; base hp
- db 125 ; base attack
- db 79 ; base defense
- db 81 ; base speed
- db 100 ; base special
-
- db WATER ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 214 ; base exp yield
- db $77 ; sprite dimensions
-
- dw GyaradosPicFront
- dw GyaradosPicBack
-
- ; attacks known at lvl 0
- db BITE
- db DRAGON_RAGE
- db LEER
- db HYDRO_PUMP
-
- db 5 ; growth rate
-
- ; learnset
- db %10100000
- db %01111111
- db %11001000
- db %11000001
- db %10100011
- db %00001000
- db %00110010
-
- db 0 ; padding
-
-LaprasBaseStats: ; 39216 (e:5216)
- db DEX_LAPRAS ; pokedex id
- db 130 ; base hp
- db 85 ; base attack
- db 80 ; base defense
- db 60 ; base speed
- db 95 ; base special
-
- db WATER ; species type 1
- db ICE ; species type 2
-
- db 45 ; catch rate
- db 219 ; base exp yield
- db $77 ; sprite dimensions
-
- dw LaprasPicFront
- dw LaprasPicBack
-
- ; attacks known at lvl 0
- db WATER_GUN
- db GROWL
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %11100000
- db %01111111
- db %11101000
- db %11010001
- db %10000011
- db %00101000
- db %00110010
-
- db 0 ; padding
-
-DittoBaseStats: ; 39232 (e:5232)
- db DEX_DITTO ; pokedex id
- db 48 ; base hp
- db 48 ; base attack
- db 48 ; base defense
- db 48 ; base speed
- db 48 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 35 ; catch rate
- db 61 ; base exp yield
- db $55 ; sprite dimensions
-
- dw DittoPicFront
- dw DittoPicBack
-
- ; attacks known at lvl 0
- db TRANSFORM
- db 0
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
- db %00000000
-
- db 0 ; padding
-
-EeveeBaseStats: ; 3924e (e:524e)
- db DEX_EEVEE ; pokedex id
- db 55 ; base hp
- db 55 ; base attack
- db 50 ; base defense
- db 55 ; base speed
- db 65 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 45 ; catch rate
- db 92 ; base exp yield
- db $55 ; sprite dimensions
-
- dw EeveePicFront
- dw EeveePicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SAND_ATTACK
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00000011
- db %00001000
- db %11000000
- db %11000011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-VaporeonBaseStats: ; 3926a (e:526a)
- db DEX_VAPOREON ; pokedex id
- db 130 ; base hp
- db 65 ; base attack
- db 60 ; base defense
- db 65 ; base speed
- db 110 ; base special
-
- db WATER ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 196 ; base exp yield
- db $66 ; sprite dimensions
-
- dw VaporeonPicFront
- dw VaporeonPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SAND_ATTACK
- db QUICK_ATTACK
- db WATER_GUN
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01111111
- db %00001000
- db %11000000
- db %11000011
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-JolteonBaseStats: ; 39286 (e:5286)
- db DEX_JOLTEON ; pokedex id
- db 65 ; base hp
- db 65 ; base attack
- db 60 ; base defense
- db 130 ; base speed
- db 110 ; base special
-
- db ELECTRIC ; species type 1
- db ELECTRIC ; species type 2
-
- db 45 ; catch rate
- db 197 ; base exp yield
- db $66 ; sprite dimensions
-
- dw JolteonPicFront
- dw JolteonPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SAND_ATTACK
- db QUICK_ATTACK
- db THUNDERSHOCK
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01000011
- db %10001000
- db %11000001
- db %11000011
- db %00011000
- db %01000010
-
- db 0 ; padding
-
-FlareonBaseStats: ; 392a2 (e:52a2)
- db DEX_FLAREON ; pokedex id
- db 65 ; base hp
- db 130 ; base attack
- db 60 ; base defense
- db 65 ; base speed
- db 110 ; base special
-
- db FIRE ; species type 1
- db FIRE ; species type 2
-
- db 45 ; catch rate
- db 198 ; base exp yield
- db $66 ; sprite dimensions
-
- dw FlareonPicFront
- dw FlareonPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SAND_ATTACK
- db QUICK_ATTACK
- db EMBER
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %01000011
- db %00001000
- db %11000000
- db %11100011
- db %00001000
- db %00000010
-
- db 0 ; padding
-
-PorygonBaseStats: ; 392be (e:52be)
- db DEX_PORYGON ; pokedex id
- db 65 ; base hp
- db 60 ; base attack
- db 70 ; base defense
- db 40 ; base speed
- db 75 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 45 ; catch rate
- db 130 ; base exp yield
- db $66 ; sprite dimensions
-
- dw PorygonPicFront
- dw PorygonPicBack
-
- ; attacks known at lvl 0
- db TACKLE
- db SHARPEN
- db CONVERSION
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %00100000
- db %01110011
- db %10001000
- db %11110001
- db %11000011
- db %00111000
- db %01000011
-
- db 0 ; padding
-
-OmanyteBaseStats: ; 392da (e:52da)
- db DEX_OMANYTE ; pokedex id
- db 35 ; base hp
- db 40 ; base attack
- db 100 ; base defense
- db 35 ; base speed
- db 90 ; base special
-
- db ROCK ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 120 ; base exp yield
- db $55 ; sprite dimensions
-
- dw OmanytePicFront
- dw OmanytePicBack
-
- ; attacks known at lvl 0
- db WATER_GUN
- db WITHDRAW
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00111111
- db %00001000
- db %11000000
- db %00000011
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-OmastarBaseStats: ; 392f6 (e:52f6)
- db DEX_OMASTAR ; pokedex id
- db 70 ; base hp
- db 60 ; base attack
- db 125 ; base defense
- db 55 ; base speed
- db 115 ; base special
-
- db ROCK ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 199 ; base exp yield
- db $66 ; sprite dimensions
-
- dw OmastarPicFront
- dw OmastarPicBack
-
- ; attacks known at lvl 0
- db WATER_GUN
- db WITHDRAW
- db HORN_ATTACK
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %11100000
- db %01111111
- db %00001101
- db %11000000
- db %10000011
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-KabutoBaseStats: ; 39312 (e:5312)
- db DEX_KABUTO ; pokedex id
- db 30 ; base hp
- db 80 ; base attack
- db 90 ; base defense
- db 55 ; base speed
- db 45 ; base special
-
- db ROCK ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 119 ; base exp yield
- db $55 ; sprite dimensions
-
- dw KabutoPicFront
- dw KabutoPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db HARDEN
- db 0
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10100000
- db %00111111
- db %00001000
- db %11000000
- db %00000011
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-KabutopsBaseStats: ; 3932e (e:532e)
- db DEX_KABUTOPS ; pokedex id
- db 60 ; base hp
- db 115 ; base attack
- db 105 ; base defense
- db 80 ; base speed
- db 70 ; base special
-
- db ROCK ; species type 1
- db WATER ; species type 2
-
- db 45 ; catch rate
- db 201 ; base exp yield
- db $66 ; sprite dimensions
-
- dw KabutopsPicFront
- dw KabutopsPicBack
-
- ; attacks known at lvl 0
- db SCRATCH
- db HARDEN
- db ABSORB
- db 0
-
- db 0 ; growth rate
-
- ; learnset
- db %10110110
- db %01111111
- db %00001101
- db %11000000
- db %10000011
- db %00001000
- db %00010010
-
- db 0 ; padding
-
-AerodactylBaseStats: ; 3934a (e:534a)
- db DEX_AERODACTYL ; pokedex id
- db 80 ; base hp
- db 105 ; base attack
- db 65 ; base defense
- db 130 ; base speed
- db 60 ; base special
-
- db ROCK ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 202 ; base exp yield
- db $77 ; sprite dimensions
-
- dw AerodactylPicFront
- dw AerodactylPicBack
-
- ; attacks known at lvl 0
- db WING_ATTACK
- db AGILITY
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %01001000
- db %11000000
- db %01100011
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-SnorlaxBaseStats: ; 39366 (e:5366)
- db DEX_SNORLAX ; pokedex id
- db 160 ; base hp
- db 110 ; base attack
- db 65 ; base defense
- db 30 ; base speed
- db 65 ; base special
-
- db NORMAL ; species type 1
- db NORMAL ; species type 2
-
- db 25 ; catch rate
- db 154 ; base exp yield
- db $77 ; sprite dimensions
-
- dw SnorlaxPicFront
- dw SnorlaxPicBack
-
- ; attacks known at lvl 0
- db HEADBUTT
- db AMNESIA
- db REST
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %10110001
- db %11111111
- db %10101111
- db %11010111
- db %10101111
- db %10101000
- db %00110010
-
- db 0 ; padding
-
-ArticunoBaseStats: ; 39382 (e:5382)
- db DEX_ARTICUNO ; pokedex id
- db 90 ; base hp
- db 85 ; base attack
- db 100 ; base defense
- db 85 ; base speed
- db 125 ; base special
-
- db ICE ; species type 1
- db FLYING ; species type 2
-
- db 3 ; catch rate
- db 215 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ArticunoPicFront
- dw ArticunoPicBack
-
- ; attacks known at lvl 0
- db PECK
- db ICE_BEAM
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00101010
- db %01111111
- db %00001000
- db %11000000
- db %01000011
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-ZapdosBaseStats: ; 3939e (e:539e)
- db DEX_ZAPDOS ; pokedex id
- db 90 ; base hp
- db 90 ; base attack
- db 85 ; base defense
- db 100 ; base speed
- db 125 ; base special
-
- db ELECTRIC ; species type 1
- db FLYING ; species type 2
-
- db 3 ; catch rate
- db 216 ; base exp yield
- db $77 ; sprite dimensions
-
- dw ZapdosPicFront
- dw ZapdosPicBack
-
- ; attacks known at lvl 0
- db THUNDERSHOCK
- db DRILL_PECK
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %10001000
- db %11000001
- db %01000011
- db %00011100
- db %01001010
-
- db 0 ; padding
-
-MoltresBaseStats: ; 393ba (e:53ba)
- db DEX_MOLTRES ; pokedex id
- db 90 ; base hp
- db 100 ; base attack
- db 90 ; base defense
- db 90 ; base speed
- db 125 ; base special
-
- db FIRE ; species type 1
- db FLYING ; species type 2
-
- db 3 ; catch rate
- db 217 ; base exp yield
- db $77 ; sprite dimensions
-
- dw MoltresPicFront
- dw MoltresPicBack
-
- ; attacks known at lvl 0
- db PECK
- db FIRE_SPIN
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %00101010
- db %01000011
- db %00001000
- db %11000000
- db %01100011
- db %00001100
- db %00001010
-
- db 0 ; padding
-
-DratiniBaseStats: ; 393d6 (e:53d6)
- db DEX_DRATINI ; pokedex id
- db 41 ; base hp
- db 64 ; base attack
- db 45 ; base defense
- db 50 ; base speed
- db 50 ; base special
-
- db DRAGON ; species type 1
- db DRAGON ; species type 2
-
- db 45 ; catch rate
- db 67 ; base exp yield
- db $55 ; sprite dimensions
-
- dw DratiniPicFront
- dw DratiniPicBack
-
- ; attacks known at lvl 0
- db WRAP
- db LEER
- db 0
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %10100000
- db %00111111
- db %11001000
- db %11000001
- db %11100011
- db %00011000
- db %00010010
-
- db 0 ; padding
-
-DragonairBaseStats: ; 393f2 (e:53f2)
- db DEX_DRAGONAIR ; pokedex id
- db 61 ; base hp
- db 84 ; base attack
- db 65 ; base defense
- db 70 ; base speed
- db 70 ; base special
-
- db DRAGON ; species type 1
- db DRAGON ; species type 2
-
- db 45 ; catch rate
- db 144 ; base exp yield
- db $66 ; sprite dimensions
-
- dw DragonairPicFront
- dw DragonairPicBack
-
- ; attacks known at lvl 0
- db WRAP
- db LEER
- db THUNDER_WAVE
- db 0
-
- db 5 ; growth rate
-
- ; learnset
- db %11100000
- db %00111111
- db %11001000
- db %11000001
- db %11100011
- db %00011000
- db %00010010
-
- db 0 ; padding
-
-DragoniteBaseStats: ; 3940e (e:540e)
- db DEX_DRAGONITE ; pokedex id
- db 91 ; base hp
- db 134 ; base attack
- db 95 ; base defense
- db 80 ; base speed
- db 100 ; base special
-
- db DRAGON ; species type 1
- db FLYING ; species type 2
-
- db 45 ; catch rate
- db 218 ; base exp yield
- db $77 ; sprite dimensions
-
- dw DragonitePicFront
- dw DragonitePicBack
-
- ; attacks known at lvl 0
- db WRAP
- db LEER
- db THUNDER_WAVE
- db AGILITY
-
- db 5 ; growth rate
-
- ; learnset
- db %11100010
- db %01111111
- db %11001000
- db %11000001
- db %11100011
- db %00011000
- db %00110010
-
- db 0 ; padding
-
-MewtwoBaseStats: ; 3942a (e:542a)
- db DEX_MEWTWO ; pokedex id
- db 106 ; base hp
- db 110 ; base attack
- db 90 ; base defense
- db 130 ; base speed
- db 154 ; base special
-
- db PSYCHIC ; species type 1
- db PSYCHIC ; species type 2
-
- db 3 ; catch rate
- db 220 ; base exp yield
- db $77 ; sprite dimensions
-
- dw MewtwoPicFront
- dw MewtwoPicBack
-
- ; attacks known at lvl 0
- db CONFUSION
- db DISABLE
- db SWIFT
- db PSYCHIC_M
-
- db 5 ; growth rate
-
- ; learnset
- db %10110001
- db %11111111
- db %10101111
- db %11110001
- db %10101111
- db %00111000
- db %01100011
-
- db 0 ; padding
-
-CryData: ; 39446 (e:5446)
- ;$BaseCry, $Pitch, $Length
- db $11, $00, $80; Rhydon
- db $03, $00, $80; Kangaskhan
- db $00, $00, $80; Nidoran♂
- db $19, $CC, $01; Clefairy
- db $10, $00, $80; Spearow
- db $06, $ED, $80; Voltorb
- db $09, $00, $80; Nidoking
- db $1F, $00, $80; Slowbro
- db $0F, $20, $80; Ivysaur
- db $0D, $00, $80; Exeggutor
- db $0C, $00, $80; Lickitung
- db $0B, $00, $80; Exeggcute
- db $05, $00, $80; Grimer
- db $07, $00, $FF; Gengar
- db $01, $00, $80; Nidoran♀
- db $0A, $00, $80; Nidoqueen
- db $19, $00, $80; Cubone
- db $04, $00, $80; Rhyhorn
- db $1B, $00, $80; Lapras
- db $15, $00, $80; Arcanine
- db $1E, $EE, $FF; Mew
- db $17, $00, $80; Gyarados
- db $18, $00, $80; Shellder
- db $1A, $00, $80; Tentacool
- db $1C, $00, $80; Gastly
- db $16, $00, $80; Scyther
- db $1E, $02, $20; Staryu
- db $13, $00, $80; Blastoise
- db $14, $00, $80; Pinsir
- db $12, $00, $80; Tangela
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $1F, $20, $40; Growlithe
- db $17, $FF, $C0; Onix
- db $18, $40, $A0; Fearow
- db $0E, $DF, $04; Pidgey
- db $02, $00, $80; Slowpoke
- db $1C, $A8, $C0; Kadabra
- db $24, $00, $80; Graveler
- db $14, $0A, $C0; Chansey
- db $1F, $48, $60; Machoke
- db $20, $08, $40; Mr.Mime
- db $12, $80, $C0; Hitmonlee
- db $0C, $EE, $C0; Hitmonchan
- db $17, $E0, $10; Arbok
- db $1E, $42, $FF; Parasect
- db $21, $20, $60; Psyduck
- db $0D, $88, $20; Drowzee
- db $12, $E0, $40; Golem
- db $00, $00, $00; MissingNo.
- db $04, $FF, $30; Magmar
- db $00, $00, $00; MissingNo.
- db $06, $8F, $FF; Electabuzz
- db $1C, $20, $C0; Magneton
- db $12, $E6, $DD; Koffing
- db $00, $00, $00; MissingNo.
- db $0A, $DD, $60; Mankey
- db $0C, $88, $C0; Seel
- db $0B, $AA, $01; Diglett
- db $1D, $11, $40; Tauros
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $10, $DD, $01; Farfetch'd
- db $1A, $44, $40; Venonat
- db $0F, $3C, $C0; Dragonite
- db $00, $80, $10; MissingNo.
- db $00, $00, $00; MissingNo.
- db $1D, $E0, $80; MissingNo.
- db $0B, $BB, $01; Doduo
- db $0E, $FF, $FF; Poliwag
- db $0D, $FF, $FF; Jynx
- db $09, $F8, $40; Moltres
- db $09, $80, $40; Articuno
- db $18, $FF, $80; Zapdos
- db $0E, $FF, $FF; Ditto
- db $19, $77, $10; Meowth
- db $20, $20, $E0; Krabby
- db $22, $FF, $40; MissingNo.
- db $00, $00, $00; MissingNo.
- db $0E, $E0, $60; MissingNo.
- db $24, $4F, $10; Vulpix
- db $24, $88, $60; Ninetales
- db $0F, $EE, $01; Pikachu
- db $09, $EE, $08; Raichu
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $0F, $60, $40; Dratini
- db $0F, $40, $80; Dragonair
- db $16, $BB, $40; Kabuto
- db $18, $EE, $01; Kabutops
- db $19, $99, $10; Horsea
- db $19, $3C, $01; Seadra
- db $0F, $40, $C0; MissingNo.
- db $0F, $20, $C0; MissingNo.
- db $00, $20, $40; Sandshrew
- db $00, $FF, $FF; Sandslash
- db $1F, $F0, $01; Omanyte
- db $1F, $FF, $40; Omastar
- db $0E, $FF, $35; Jigglypuff
- db $0E, $68, $60; Wigglytuff
- db $1A, $88, $60; Eevee
- db $1A, $10, $20; Flareon
- db $1A, $3D, $80; Jolteon
- db $1A, $AA, $FF; Vaporeon
- db $1F, $EE, $01; Machop
- db $1D, $E0, $80; Zubat
- db $17, $12, $40; Ekans
- db $1E, $20, $E0; Paras
- db $0E, $77, $60; Poliwhirl
- db $0E, $00, $FF; Poliwrath
- db $15, $EE, $01; Weedle
- db $13, $FF, $01; Kakuna
- db $13, $60, $80; Beedrill
- db $00, $00, $00; MissingNo.
- db $0B, $99, $20; Dodrio
- db $0A, $AF, $40; Primeape
- db $0B, $2A, $10; Dugtrio
- db $1A, $29, $80; Venomoth
- db $0C, $23, $FF; Dewgong
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $16, $80, $20; Caterpie
- db $1C, $CC, $01; Metapod
- db $16, $77, $40; Butterfree
- db $1F, $08, $C0; Machamp
- db $11, $20, $10; MissingNo.
- db $21, $FF, $40; Golduck
- db $0D, $EE, $40; Hypno
- db $1D, $FA, $80; Golbat
- db $1E, $99, $FF; Mewtwo
- db $05, $55, $01; Snorlax
- db $17, $80, $00; Magikarp
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $07, $EF, $FF; Muk
- db $0F, $40, $80; MissingNo.
- db $20, $EE, $E0; Kingler
- db $18, $6F, $E0; Cloyster
- db $00, $00, $00; MissingNo.
- db $06, $A8, $90; Electrode
- db $19, $AA, $20; Clefable
- db $12, $FF, $FF; Weezing
- db $19, $99, $FF; Persian
- db $08, $4F, $60; Marowak
- db $00, $00, $00; MissingNo.
- db $1C, $30, $40; Haunter
- db $1C, $C0, $01; Abra
- db $1C, $98, $FF; Alakazam
- db $14, $28, $C0; Pidgeotto
- db $14, $11, $FF; Pidgeot
- db $1E, $00, $80; Starmie
- db $0F, $80, $01; Bulbasaur
- db $0F, $00, $C0; Venusaur
- db $1A, $EE, $FF; Tentacruel
- db $00, $00, $00; MissingNo.
- db $16, $80, $40; Goldeen
- db $16, $10, $FF; Seaking
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $25, $00, $80; Ponyta
- db $25, $20, $C0; Rapidash
- db $22, $00, $80; Rattata
- db $22, $20, $FF; Raticate
- db $00, $2C, $C0; Nidorino
- db $01, $2C, $E0; Nidorina
- db $24, $F0, $10; Geodude
- db $25, $AA, $FF; Porygon
- db $23, $20, $F0; Aerodactyl
- db $00, $00, $00; MissingNo.
- db $1C, $80, $60; Magnemite
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $04, $60, $40; Charmander
- db $1D, $60, $40; Squirtle
- db $04, $20, $40; Charmeleon
- db $1D, $20, $40; Wartortle
- db $04, $00, $80; Charizard
- db $1D, $00, $80; MissingNo.
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $00, $00, $00; MissingNo.
- db $08, $DD, $01; Oddish
- db $08, $AA, $40; Gloom
- db $23, $22, $FF; Vileplume
- db $21, $55, $01; Bellsprout
- db $25, $44, $20; Weepinbell
- db $25, $66, $CC; Victreebel
+INCLUDE "data/cries.asm"
Func_39680: ; 39680 (e:5680)
ld a, [H_WHOSETURN] ; $fff3
@@ -51214,54 +31902,7 @@ TrainerPicAndMoneyPointers: ; 39914 (e:5914)
dw LancePic
db 0,$99,0
-TrainerNames: ; 399ff (e:59ff)
- db "YOUNGSTER@"
- db "BUG CATCHER@"
- db "LASS@"
- db "SAILOR@"
- db "JR.TRAINER♂@"
- db "JR.TRAINER♀@"
- db "POKéMANIAC@"
- db "SUPER NERD@"
- db "HIKER@"
- db "BIKER@"
- db "BURGLAR@"
- db "ENGINEER@"
- db "JUGGLER@"
- db "FISHERMAN@"
- db "SWIMMER@"
- db "CUE BALL@"
- db "GAMBLER@"
- db "BEAUTY@"
- db "PSYCHIC@"
- db "ROCKER@"
- db "JUGGLER@"
- db "TAMER@"
- db "BIRD KEEPER@"
- db "BLACKBELT@"
- db "RIVAL1@"
- db "PROF.OAK@"
- db "CHIEF@"
- db "SCIENTIST@"
- db "GIOVANNI@"
- db "ROCKET@"
- db "COOLTRAINER♂@"
- db "COOLTRAINER♀@"
- db "BRUNO@"
- db "BROCK@"
- db "MISTY@"
- db "LT.SURGE@"
- db "ERIKA@"
- db "KOGA@"
- db "BLAINE@"
- db "SABRINA@"
- db "GENTLEMAN@"
- db "RIVAL2@"
- db "RIVAL3@"
- db "LORELEI@"
- db "CHANNELER@"
- db "AGATHA@"
- db "LANCE@"
+INCLUDE "text/trainer_names.asm"
Func_39b87: ; 39b87 (e:5b87)
ld hl, $d0dc
@@ -51485,7 +32126,7 @@ ReadTrainer: ; 39c53 (e:5c53)
; check if our trainer's team has special moves
; get trainer class number
- ld a,[$D059]
+ ld a,[W_CUROPPONENT]
sub $C8
ld b,a
ld hl,TeamMoves
@@ -51549,793 +32190,9 @@ ReadTrainer: ; 39c53 (e:5c53)
jr nz,.LastLoop
ret
-LoneMoves: ; 39d22 (e:5d22)
-; these are used for gym leaders.
-; this is not automatic! you have to write the number you want to W_LONEATTACKNO
-; first. e.g., erika's script writes 4 to W_LONEATTACKNO to get mega drain,
-; the fourth entry in the list.
-
-; first byte: pokemon in the trainer's party that gets the move
-; second byte: move
-; unterminated
- db 1,BIDE
- db 1,BUBBLEBEAM
- db 2,THUNDERBOLT
- db 2,MEGA_DRAIN
- db 3,TOXIC
- db 3,PSYWAVE
- db 3,FIRE_BLAST
- db 4,FISSURE
-
-TeamMoves: ; 39d32 (e:5d32)
-; these are used for elite four.
-; this is automatic, based on trainer class.
-; don't be confused by LoneMoves above, the two data structures are
- ; _completely_ unrelated.
-
-; first byte: trainer (all trainers in this class have this move)
-; second byte: move
-; ff-terminated
- db LORELEI,BLIZZARD
- db BRUNO,FISSURE
- db AGATHA,TOXIC
- db LANCE,BARRIER
- db $FF
+INCLUDE "data/trainer_moves.asm"
-if _YELLOW
-; different format from above.
-
-; entry ≔ trainerclass, trainerid, moveset+, 0
-; moveset ≔ partymon, partymon'smove, moveid
-
- db BUG_CATCHER,$f
- db 2,2,TACKLE
- db 2,3,STRING_SHOT
- db 0
-
- db YOUNGSTER,$e
- db 1,4,FISSURE
- db 0
-
- db BROCK,$1
- db 2,3,BIND
- db 2,4,BIDE
- db 0
-
- db MISTY,$1
- db 2,4,BUBBLEBEAM
- db 0
-
- db LT__SURGE,$1
- db 1,1,THUNDERBOLT
- db 1,2,MEGA_PUNCH
- db 1,3,MEGA_KICK
- db 1,4,GROWL
- db 0
-
- db ERIKA,$1
- db 1,3,MEGA_DRAIN
- db 2,1,RAZOR_LEAF
- db 3,1,PETAL_DANCE
- db 0
-
- db KOGA,$1
- db 1,1,TOXIC
- db 1,2,TACKLE
- db 2,1,TOXIC
- db 2,3,SUPERSONIC
- db 3,1,TOXIC
- db 3,2,DOUBLE_EDGE
- db 4,1,LEECH_LIFE
- db 4,2,DOUBLE_TEAM
- db 4,3,PSYCHIC_M
- db 4,4,TOXIC
- db 0
-
- db BLAINE,$1
- db 1,1,FLAMETHROWER
- db 1,4,CONFUSE_RAY
- db 3,1,FLAMETHROWER
- db 3,2,FIRE_BLAST
- db 3,3,REFLECT
- db 0
-
- db SABRINA,$1
- db 1,1,FLASH
- db 2,1,KINESIS
- db 2,4,PSYWAVE
- db 3,1,PSYWAVE
- db 0
-
- db GIOVANNI,$3
- db 1,3,FISSURE
- db 2,2,DOUBLE_TEAM
- db 3,1,EARTHQUAKE
- db 3,3,THUNDER
- db 4,1,EARTHQUAKE
- db 4,2,LEER
- db 4,3,THUNDER
- db 5,1,ROCK_SLIDE
- db 5,4,EARTHQUAKE
- db 0
-
- db LORELEI,$1
- db 1,1,BUBBLEBEAM
- db 2,3,ICE_BEAM
- db 3,1,PSYCHIC_M
- db 3,2,SURF
- db 4,3,LOVELY_KISS
- db 5,3,BLIZZARD
- db 0
-
- db BRUNO,$1
- db 1,1,ROCK_SLIDE
- db 1,2,SCREECH
- db 1,4,DIG
- db 2,3,FIRE_PUNCH
- db 2,4,DOUBLE_TEAM
- db 3,1,DOUBLE_KICK
- db 3,2,MEGA_KICK
- db 3,4,DOUBLE_TEAM
- db 4,1,ROCK_SLIDE
- db 4,2,SCREECH
- db 4,4,EARTHQUAKE
- db 5,2,KARATE_CHOP
- db 5,3,STRENGTH
- db 0
-
- db AGATHA,$1
- db 1,2,SUBSTITUTE
- db 1,3,LICK
- db 1,4,MEGA_DRAIN
- db 2,2,TOXIC
- db 2,4,LEECH_LIFE
- db 3,2,LICK
- db 4,1,WRAP
- db 5,2,PSYCHIC_M
- db 0
-
- db LANCE,$1
- db 1,1,DRAGON_RAGE
- db 2,1,THUNDER_WAVE
- db 2,3,THUNDERBOLT
- db 3,1,BUBBLEBEAM
- db 3,2,WRAP
- db 3,3,ICE_BEAM
- db 4,1,WING_ATTACK
- db 4,2,SWIFT
- db 4,3,FLY
- db 5,1,BLIZZARD
- db 5,2,FIRE_BLAST
- db 5,3,THUNDER
- db 0
-
- db SONY3,$1
- db 1,3,EARTHQUAKE
- db 2,4,KINESIS
- db 3,4,LEECH_SEED
- db 4,1,ICE_BEAM
- db 5,1,CONFUSE_RAY
- db 5,4,FIRE_SPIN
- db 6,3,QUICK_ATTACK
- db 0
-
- db SONY3,$2
- db 1,3,EARTHQUAKE
- db 2,4,KINESIS
- db 3,4,LEECH_SEED
- db 4,1,THUNDERBOLT
- db 5,1,ICE_BEAM
- db 6,2,REFLECT
- db 6,3,QUICK_ATTACK
- db 0
-
- db SONY3,$3
- db 1,3,EARTHQUAKE
- db 2,4,KINESIS
- db 3,4,LEECH_SEED
- db 4,1,CONFUSE_RAY
- db 4,4,FIRE_SPIN
- db 5,1,THUNDERBOLT
- db 6,1,AURORA_BEAM
- db 6,3,QUICK_ATTACK
- db 0
-
- db $ff
-endc
-
-TrainerDataPointers: ; 39d3b (e:5d3b)
- dw YoungsterData,BugCatcherData,LassData,SailorData,JrTrainerMData
- dw JrTrainerFData,PokemaniacData,SuperNerdData,HikerData,BikerData
- dw BurglarData,EngineerData,Juggler1Data,FisherData,SwimmerData
- dw CueBallData,GamblerData,BeautyData,PsychicData,RockerData
- dw JugglerData,TamerData,BirdKeeperData,BlackbeltData,Green1Data
- dw ProfOakData,ChiefData,ScientistData,GiovanniData,RocketData
- dw CooltrainerMData,CooltrainerFData,BrunoData,BrockData,MistyData
- dw LtSurgeData,ErikaData,KogaData,BlaineData,SabrinaData
- dw GentlemanData,Green2Data,Green3Data,LoreleiData,ChannelerData
- dw AgathaData,LanceData
-
-; if first byte != FF, then
- ; first byte is level (of all pokemon on this team)
- ; all the next bytes are pokemon species
- ; null-terminated
-; if first byte == FF, then
- ; first byte is FF (obviously)
- ; every next two bytes are a level and species
- ; null-terminated
-
-YoungsterData: ; 39d99 (e:5d99)
- db 11,RATTATA,EKANS,0
- db 14,SPEAROW,0
- db 10,RATTATA,RATTATA,ZUBAT,0
- db 14,RATTATA,EKANS,ZUBAT,0
- db 15,RATTATA,SPEAROW,0
- db 17,SLOWPOKE,0
- db 14,EKANS,SANDSHREW,0
- db 21,NIDORAN_M,0
- db 21,EKANS,0
- db 19,SANDSHREW,ZUBAT,0
- db 17,RATTATA,RATTATA,RATICATE,0
- db 18,NIDORAN_M,NIDORINO,0
- db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0
-if _YELLOW
- db 24,SANDSHREW,0
-endc
-BugCatcherData: ; 39dce (e:5dce)
-if _YELLOW
- db 7,CATERPIE,CATERPIE,0
- db 6,METAPOD,CATERPIE,METAPOD,0
- db 10,CATERPIE,0
-else
- db 6,WEEDLE,CATERPIE,0
- db 7,WEEDLE,KAKUNA,WEEDLE,0
- db 9,WEEDLE,0
-endc
- db 10,CATERPIE,WEEDLE,CATERPIE,0
- db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0
- db 11,CATERPIE,METAPOD,0
- db 11,WEEDLE,KAKUNA,0
- db 10,CATERPIE,METAPOD,CATERPIE,0
- db 14,CATERPIE,WEEDLE,0
- db 16,WEEDLE,CATERPIE,WEEDLE,0
- db 20,BUTTERFREE,0
- db 18,METAPOD,CATERPIE,VENONAT,0
- db 19,BEEDRILL,BEEDRILL,0
- db 20,CATERPIE,WEEDLE,VENONAT,0
-if _YELLOW
- db 8,CATERPIE,METAPOD,0
-endc
-LassData: ; 39e0c (e:5e0c)
- db 9,PIDGEY,PIDGEY,0
- db 10,RATTATA,NIDORAN_M,0
- db 14,JIGGLYPUFF,0
- db 31,PARAS,PARAS,PARASECT,0
- db 11,ODDISH,BELLSPROUT,0
- db 14,CLEFAIRY,0
- db 16,PIDGEY,NIDORAN_F,0
- db 14,PIDGEY,NIDORAN_F,0
- db 15,NIDORAN_M,NIDORAN_F,0
- db 13,ODDISH,PIDGEY,ODDISH,0
- db 18,PIDGEY,NIDORAN_F,0
-if _YELLOW
- db 20,JIGGLYPUFF,0
-else
- db 18,RATTATA,PIKACHU,0
-endc
- db 23,NIDORAN_F,NIDORINA,0
- db 24,MEOWTH,MEOWTH,MEOWTH,0
-if _YELLOW
- db 19,PIDGEY,RATTATA,NIDORAN_F,MEOWTH,NIDORAN_M,0
-else
- db 19,PIDGEY,RATTATA,NIDORAN_M,MEOWTH,PIKACHU,0
-endc
- db 22,CLEFAIRY,CLEFAIRY,0
- db 23,BELLSPROUT,WEEPINBELL,0
- db 23,ODDISH,GLOOM,0
-if _YELLOW
- db 6,NIDORAN_F,NIDORAN_M,0
-endc
-SailorData: ; 39e58 (e:5e58)
- db 18,MACHOP,SHELLDER,0
- db 17,MACHOP,TENTACOOL,0
- db 21,SHELLDER,0
- db 17,HORSEA,SHELLDER,TENTACOOL,0
- db 18,TENTACOOL,STARYU,0
- db 17,HORSEA,HORSEA,HORSEA,0
- db 20,MACHOP,0
-if _YELLOW
- db 24,MAGNEMITE,0
-else
- db 21,PIKACHU,PIKACHU,0
-endc
-JrTrainerMData: ; 39e78 (e:5e78)
-if _YELLOW
- db 9,DIGLETT,SANDSHREW,0
-else
- db 11,DIGLETT,SANDSHREW,0
-endc
- db 14,RATTATA,EKANS,0
- db 18,MANKEY,0
- db 20,SQUIRTLE,0
- db 16,SPEAROW,RATICATE,0
- db 18,DIGLETT,DIGLETT,SANDSHREW,0
- db 21,GROWLITHE,CHARMANDER,0
- db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0
- db 29,NIDORAN_M,NIDORINO,0
-if _YELLOW
- db 16,WEEPINBELL,0
-endc
-JrTrainerFData: ; 39e9d (e:5e9d)
- db 19,GOLDEEN,0
-if _YELLOW
- db 16,ODDISH,BELLSPROUT,0
-else
- db 16,RATTATA,PIKACHU,0
-endc
- db 16,PIDGEY,PIDGEY,PIDGEY,0
- db 22,BULBASAUR,0
- db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0
- db 23,MEOWTH,0
-if _YELLOW
- db 20,JIGGLYPUFF,CLEFAIRY,0
-else
- db 20,PIKACHU,CLEFAIRY,0
-endc
- db 21,PIDGEY,PIDGEOTTO,0
- db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0
- db 22,ODDISH,BULBASAUR,0
- db 24,BULBASAUR,IVYSAUR,0
-if _YELLOW
- db 24,PIDGEY,MEOWTH,RATTATA,PIDGEY,MEOWTH,0
-else
- db 24,PIDGEY,MEOWTH,RATTATA,PIKACHU,MEOWTH,0
-endc
- db 30,POLIWAG,POLIWAG,0
- db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0
- db 28,GOLDEEN,POLIWAG,HORSEA,0
- db 31,GOLDEEN,SEAKING,0
- db 22,BELLSPROUT,CLEFAIRY,0
- db 20,MEOWTH,ODDISH,PIDGEY,0
- db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0
- db 28,GLOOM,ODDISH,ODDISH,0
-if _YELLOW
- db 29,PIDGEY,PIDGEOTTO,0
-else
- db 29,PIKACHU,RAICHU,0
-endc
- db 33,CLEFAIRY,0
- db 29,BELLSPROUT,ODDISH,TANGELA,0
- db 30,TENTACOOL,HORSEA,SEEL,0
-if _YELLOW
- db 20,CUBONE,0
-endc
-PokemaniacData: ; 39f09 (e:5f09)
- db 30,RHYHORN,LICKITUNG,0
- db 20,CUBONE,SLOWPOKE,0
- db 20,SLOWPOKE,SLOWPOKE,SLOWPOKE,0
- db 22,CHARMANDER,CUBONE,0
- db 25,SLOWPOKE,0
- db 40,CHARMELEON,LAPRAS,LICKITUNG,0
- db 23,CUBONE,SLOWPOKE,0
-SuperNerdData: ; 39f26 (e:5f26)
- db 11,MAGNEMITE,VOLTORB,0
- db 12,GRIMER,VOLTORB,KOFFING,0
- db 20,VOLTORB,KOFFING,VOLTORB,MAGNEMITE,0
- db 22,GRIMER,MUK,GRIMER,0
- db 26,KOFFING,0
- db 22,KOFFING,MAGNEMITE,WEEZING,0
- db 20,MAGNEMITE,MAGNEMITE,KOFFING,MAGNEMITE,0
- db 24,MAGNEMITE,VOLTORB,0
- db 36,VULPIX,VULPIX,NINETALES,0
- db 34,PONYTA,CHARMANDER,VULPIX,GROWLITHE,0
- db 41,RAPIDASH,0
- db 37,GROWLITHE,VULPIX,0
-HikerData: ; 39f5e (e:5f5e)
- db 10,GEODUDE,GEODUDE,ONIX,0
- db 15,MACHOP,GEODUDE,0
- db 13,GEODUDE,GEODUDE,MACHOP,GEODUDE,0
- db 17,ONIX,0
- db 21,GEODUDE,ONIX,0
- db 20,GEODUDE,MACHOP,GEODUDE,0
- db 21,GEODUDE,ONIX,0
- db 19,ONIX,GRAVELER,0
- db 21,GEODUDE,GEODUDE,GRAVELER,0
- db 25,GEODUDE,0
- db 20,MACHOP,ONIX,0
- db 19,GEODUDE,MACHOP,GEODUDE,GEODUDE,0
- db 20,ONIX,ONIX,GEODUDE,0
- db 21,GEODUDE,GRAVELER,0
-BikerData: ; 39f9c (e:5f9c)
- db 28,KOFFING,KOFFING,KOFFING,0
- db 29,KOFFING,GRIMER,0
- db 25,KOFFING,KOFFING,WEEZING,KOFFING,GRIMER,0
- db 28,KOFFING,GRIMER,WEEZING,0
- db 29,GRIMER,KOFFING,0
- db 33,WEEZING,0
- db 26,GRIMER,GRIMER,GRIMER,GRIMER,0
- db 28,WEEZING,KOFFING,WEEZING,0
- db 33,MUK,0
- db 29,VOLTORB,VOLTORB,0
- db 29,WEEZING,MUK,0
- db 25,KOFFING,WEEZING,KOFFING,KOFFING,WEEZING,0
- db 26,KOFFING,KOFFING,GRIMER,KOFFING,0
- db 28,GRIMER,GRIMER,KOFFING,0
- db 29,KOFFING,MUK,0
-BurglarData: ; 39fe4 (e:5fe4)
- db 29,GROWLITHE,VULPIX,0
- db 33,GROWLITHE,0
- db 28,VULPIX,CHARMANDER,PONYTA,0
- db 36,GROWLITHE,VULPIX,NINETALES,0
- db 41,PONYTA,0
- db 37,VULPIX,GROWLITHE,0
- db 34,CHARMANDER,CHARMELEON,0
- db 38,NINETALES,0
- db 34,GROWLITHE,PONYTA,0
-EngineerData: ; 3a007 (e:6007)
- db 21,VOLTORB,MAGNEMITE,0
- db 21,MAGNEMITE,0
- db 18,MAGNEMITE,MAGNEMITE,MAGNETON,0
-Juggler1Data: ; 3a013 (e:6013)
-; none
-FisherData: ; 3a013 (e:6013)
- db 17,GOLDEEN,TENTACOOL,GOLDEEN,0
- db 17,TENTACOOL,STARYU,SHELLDER,0
- db 22,GOLDEEN,POLIWAG,GOLDEEN,0
- db 24,TENTACOOL,GOLDEEN,0
- db 27,GOLDEEN,0
- db 21,POLIWAG,SHELLDER,GOLDEEN,HORSEA,0
- db 28,SEAKING,GOLDEEN,SEAKING,SEAKING,0
- db 31,SHELLDER,CLOYSTER,0
- db 27,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,0
- db 33,SEAKING,GOLDEEN,0
- db 24,MAGIKARP,MAGIKARP,0
-SwimmerData: ; 3a049 (e:6049)
- db 16,HORSEA,SHELLDER,0
- db 30,TENTACOOL,SHELLDER,0
- db 29,GOLDEEN,HORSEA,STARYU,0
- db 30,POLIWAG,POLIWHIRL,0
- db 27,HORSEA,TENTACOOL,TENTACOOL,GOLDEEN,0
- db 29,GOLDEEN,SHELLDER,SEAKING,0
- db 30,HORSEA,HORSEA,0
- db 27,TENTACOOL,TENTACOOL,STARYU,HORSEA,TENTACRUEL,0
- db 31,SHELLDER,CLOYSTER,0
- db 35,STARYU,0
- db 28,HORSEA,HORSEA,SEADRA,HORSEA,0
- db 33,SEADRA,TENTACRUEL,0
- db 37,STARMIE,0
- db 33,STARYU,WARTORTLE,0
- db 32,POLIWHIRL,TENTACOOL,SEADRA,0
-CueBallData: ; 3a08d (e:608d)
- db 28,MACHOP,MANKEY,MACHOP,0
- db 29,MANKEY,MACHOP,0
- db 33,MACHOP,0
- db 29,MANKEY,PRIMEAPE,0
- db 29,MACHOP,MACHOKE,0
- db 33,MACHOKE,0
- db 26,MANKEY,MANKEY,MACHOKE,MACHOP,0
- db 29,PRIMEAPE,MACHOKE,0
- db 31,TENTACOOL,TENTACOOL,TENTACRUEL,0
-GamblerData: ; 3a0b3 (e:60b3)
- db 18,POLIWAG,HORSEA,0
- db 18,BELLSPROUT,ODDISH,0
- db 18,VOLTORB,MAGNEMITE,0
- db 18,GROWLITHE,VULPIX,0
- db 22,POLIWAG,POLIWAG,POLIWHIRL,0
- db 22,ONIX,GEODUDE,GRAVELER,0
- db 24,GROWLITHE,VULPIX,0
-BeautyData: ; 3a0d1 (e:60d1)
- db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0
- db 24,BELLSPROUT,BELLSPROUT,0
- db 26,EXEGGCUTE,0
-if _YELLOW
- db 27,RATTATA,VULPIX,RATTATA,0
-else
- db 27,RATTATA,PIKACHU,RATTATA,0
-endc
- db 29,CLEFAIRY,MEOWTH,0
- db 35,SEAKING,0
- db 30,SHELLDER,SHELLDER,CLOYSTER,0
- db 31,POLIWAG,SEAKING,0
- db 29,PIDGEOTTO,WIGGLYTUFF,0
- db 29,BULBASAUR,IVYSAUR,0
- db 33,WEEPINBELL,BELLSPROUT,WEEPINBELL,0
- db 27,POLIWAG,GOLDEEN,SEAKING,GOLDEEN,POLIWAG,0
- db 30,GOLDEEN,SEAKING,0
- db 29,STARYU,STARYU,STARYU,0
- db 30,SEADRA,HORSEA,SEADRA,0
-PsychicData: ; 3a115 (e:6115)
- db 31,KADABRA,SLOWPOKE,MR_MIME,KADABRA,0
- db 34,MR_MIME,KADABRA,0
- db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0
- db 38,SLOWBRO,0
-RockerData: ; 3a127 (e:6127)
-if _YELLOW
- db 20,VOLTORB,VOLTORB,VOLTORB,0
-else
- db 20,VOLTORB,MAGNEMITE,VOLTORB,0
-endc
- db 29,VOLTORB,ELECTRODE,0
-JugglerData: ; 3a130 (e:6130)
- db 29,KADABRA,MR_MIME,0
- db 41,DROWZEE,HYPNO,KADABRA,KADABRA,0
- db 31,DROWZEE,DROWZEE,KADABRA,DROWZEE,0
- db 34,DROWZEE,HYPNO,0
- db 48,MR_MIME,0
- db 33,HYPNO,0
- db 38,HYPNO,0
- db 34,DROWZEE,KADABRA,0
-TamerData: ; 3a151 (e:6151)
- db 34,SANDSLASH,ARBOK,0
- db 33,ARBOK,SANDSLASH,ARBOK,0
- db 43,RHYHORN,0
- db 39,ARBOK,TAUROS,0
- db 44,PERSIAN,GOLDUCK,0
- db 42,RHYHORN,PRIMEAPE,ARBOK,TAUROS,0
-BirdKeeperData: ; 3a16b (e:616b)
- db 29,PIDGEY,PIDGEOTTO,0
- db 25,SPEAROW,PIDGEY,PIDGEY,SPEAROW,SPEAROW,0
- db 26,PIDGEY,PIDGEOTTO,SPEAROW,FEAROW,0
- db 33,FARFETCH_D,0
- db 29,SPEAROW,FEAROW,0
- db 26,PIDGEOTTO,FARFETCH_D,DODUO,PIDGEY,0
- db 28,DODRIO,DODUO,DODUO,0
- db 29,SPEAROW,FEAROW,0
- db 34,DODRIO,0
- db 26,SPEAROW,SPEAROW,FEAROW,SPEAROW,0
- db 30,FEAROW,FEAROW,PIDGEOTTO,0
- db 39,PIDGEOTTO,PIDGEOTTO,PIDGEY,PIDGEOTTO,0
- db 42,FARFETCH_D,FEAROW,0
- db 28,PIDGEY,DODUO,PIDGEOTTO,0
- db 26,PIDGEY,SPEAROW,PIDGEY,FEAROW,0
- db 29,PIDGEOTTO,FEAROW,0
- db 28,SPEAROW,DODUO,FEAROW,0
-BlackbeltData: ; 3a1be (e:61be)
- db 37,HITMONLEE,HITMONCHAN,0
- db 31,MANKEY,MANKEY,PRIMEAPE,0
- db 32,MACHOP,MACHOKE,0
- db 36,PRIMEAPE,0
- db 31,MACHOP,MANKEY,PRIMEAPE,0
- db 40,MACHOP,MACHOKE,0
- db 43,MACHOKE,0
- db 38,MACHOKE,MACHOP,MACHOKE,0
- db 43,MACHOKE,MACHOP,MACHOKE,0
-Green1Data: ; 3a1e4 (e:61e4)
-if _YELLOW
- db 5,EEVEE,0
- db $FF,9,SPEAROW,8,EEVEE,0
- db $FF,18,SPEAROW,15,SANDSHREW,15,RATTATA,17,EEVEE,0
-else
- db 5,SQUIRTLE,0
- db 5,BULBASAUR,0
- db 5,CHARMANDER,0
- db $FF,9,PIDGEY,8,SQUIRTLE,0
- db $FF,9,PIDGEY,8,BULBASAUR,0
- db $FF,9,PIDGEY,8,CHARMANDER,0
- db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,SQUIRTLE,0
- db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,BULBASAUR,0
- db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,CHARMANDER,0
-endc
-ProfOakData: ; 3a21d (e:621d)
- db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,BLASTOISE,70,GYARADOS,0
- db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,VENUSAUR,70,GYARADOS,0
- db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,CHARIZARD,70,GYARADOS,0
-ChiefData: ; 3a241 (e:6241)
-; none
-ScientistData: ; 3a241 (e:6241)
- db 34,KOFFING,VOLTORB,0
- db 26,GRIMER,WEEZING,KOFFING,WEEZING,0
- db 28,MAGNEMITE,VOLTORB,MAGNETON,0
- db 29,ELECTRODE,WEEZING,0
- db 33,ELECTRODE,0
- db 26,MAGNETON,KOFFING,WEEZING,MAGNEMITE,0
- db 25,VOLTORB,KOFFING,MAGNETON,MAGNEMITE,KOFFING,0
- db 29,ELECTRODE,MUK,0
- db 29,GRIMER,ELECTRODE,0
- db 28,VOLTORB,KOFFING,MAGNETON,0
- db 29,MAGNEMITE,KOFFING,0
- db 33,MAGNEMITE,MAGNETON,VOLTORB,0
- db 34,MAGNEMITE,ELECTRODE,0
-GiovanniData: ; 3a27e (e:627e)
-if _YELLOW
- db $FF,25,ONIX,24,RHYHORN,29,PERSIAN,0
- db $FF,37,NIDORINO,35,PERSIAN,37,RHYHORN,41,NIDOQUEEN,0
- db $FF,50,DUGTRIO,53,PERSIAN,53,NIDOQUEEN,55,NIDOKING,55,RHYDON,0
-else
- db $FF,25,ONIX,24,RHYHORN,29,KANGASKHAN,0
- db $FF,37,NIDORINO,35,KANGASKHAN,37,RHYHORN,41,NIDOQUEEN,0
- db $FF,45,RHYHORN,42,DUGTRIO,44,NIDOQUEEN,45,NIDOKING,50,RHYDON,0
-endc
-RocketData: ; 3a29c (e:629c)
- db 13,RATTATA,ZUBAT,0
- db 11,SANDSHREW,RATTATA,ZUBAT,0
- db 12,ZUBAT,EKANS,0
- db 16,RATICATE,0
- db 17,MACHOP,DROWZEE,0
- db 15,EKANS,ZUBAT,0
- db 20,RATICATE,ZUBAT,0
- db 21,DROWZEE,MACHOP,0
- db 21,RATICATE,RATICATE,0
- db 20,GRIMER,KOFFING,KOFFING,0
- db 19,RATTATA,RATICATE,RATICATE,RATTATA,0
- db 22,GRIMER,KOFFING,0
- db 17,ZUBAT,KOFFING,GRIMER,ZUBAT,RATICATE,0
- db 20,RATTATA,RATICATE,DROWZEE,0
- db 21,MACHOP,MACHOP,0
- db 23,SANDSHREW,EKANS,SANDSLASH,0
- db 23,EKANS,SANDSHREW,ARBOK,0
- db 21,KOFFING,ZUBAT,0
- db 25,ZUBAT,ZUBAT,GOLBAT,0
- db 26,KOFFING,DROWZEE,0
- db 23,ZUBAT,RATTATA,RATICATE,ZUBAT,0
- db 26,DROWZEE,KOFFING,0
- db 29,CUBONE,ZUBAT,0
- db 25,GOLBAT,ZUBAT,ZUBAT,RATICATE,ZUBAT,0
- db 28,RATICATE,HYPNO,RATICATE,0
- db 29,MACHOP,DROWZEE,0
- db 28,EKANS,ZUBAT,CUBONE,0
- db 33,ARBOK,0
- db 33,HYPNO,0
- db 29,MACHOP,MACHOKE,0
- db 28,ZUBAT,ZUBAT,GOLBAT,0
- db 26,RATICATE,ARBOK,KOFFING,GOLBAT,0
- db 29,CUBONE,CUBONE,0
- db 29,SANDSHREW,SANDSLASH,0
- db 26,RATICATE,ZUBAT,GOLBAT,RATTATA,0
- db 28,WEEZING,GOLBAT,KOFFING,0
- db 28,DROWZEE,GRIMER,MACHOP,0
- db 28,GOLBAT,DROWZEE,HYPNO,0
- db 33,MACHOKE,0
- db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0
- db 32,CUBONE,DROWZEE,MAROWAK,0
-if _YELLOW
-JessieJamesData:
- db 14,EKANS,MEOWTH,KOFFING,0
- db 25,KOFFING,MEOWTH,EKANS,0
- db 27,MEOWTH,ARBOK,WEEZING,0
- db 31,WEEZING,ARBOK,MEOWTH,0
- db 16,KOFFING,0
- db 27,KOFFING,0
- db 29,WEEZING,0
- db 33,WEEZING,0
-endc
-CooltrainerMData: ; 3a35a (e:635a)
- db 39,NIDORINO,NIDOKING,0
- db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0
- db 43,KINGLER,TENTACRUEL,BLASTOISE,0
- db 45,KINGLER,STARMIE,0
- db 42,IVYSAUR,WARTORTLE,CHARMELEON,CHARIZARD,0
- db 44,IVYSAUR,WARTORTLE,CHARMELEON,0
- db 49,NIDOKING,0
- db 44,KINGLER,CLOYSTER,0
- db 39,SANDSLASH,DUGTRIO,0
- db 43,RHYHORN,0
-CooltrainerFData: ; 3a385 (e:6385)
- db 24,WEEPINBELL,GLOOM,IVYSAUR,0
- db 43,BELLSPROUT,WEEPINBELL,VICTREEBEL,0
- db 43,PARASECT,DEWGONG,CHANSEY,0
- db 46,VILEPLUME,BUTTERFREE,0
- db 44,PERSIAN,NINETALES,0
- db 45,IVYSAUR,VENUSAUR,0
- db 45,NIDORINA,NIDOQUEEN,0
- db 43,PERSIAN,NINETALES,RAICHU,0
-BrunoData: ; 3a3a9 (e:63a9)
- db $FF,53,ONIX,55,HITMONCHAN,55,HITMONLEE,56,ONIX,58,MACHAMP,0
-BrockData: ; 3a3b5 (e:63b5)
-if _YELLOW
- db $FF,10,GEODUDE,12,ONIX,0
-else
- db $FF,12,GEODUDE,14,ONIX,0
-endc
-MistyData: ; 3a3bb (e:63bb)
- db $FF,18,STARYU,21,STARMIE,0
-LtSurgeData: ; 3a3c1 (e:63c1)
-if _YELLOW
- db $FF,28,RAICHU,0
-else
- db $FF,21,VOLTORB,18,PIKACHU,24,RAICHU,0
-endc
-ErikaData: ; 3a3c9 (e:63c9)
-if _YELLOW
- db $FF,30,TANGELA,32,WEEPINBELL,32,GLOOM,0
-else
- db $FF,29,VICTREEBEL,24,TANGELA,29,VILEPLUME,0
-endc
-KogaData: ; 3a3d1 (e:63d1)
-if _YELLOW
- db $FF,44,VENONAT,46,VENONAT,48,VENONAT,50,VENOMOTH,0
-else
- db $FF,37,KOFFING,39,MUK,37,KOFFING,43,WEEZING,0
-endc
-BlaineData: ; 3a3db (e:63db)
-if _YELLOW
- db $FF,48,NINETALES,50,RAPIDASH,54,ARCANINE,0
-else
- db $FF,42,GROWLITHE,40,PONYTA,42,RAPIDASH,47,ARCANINE,0
-endc
-SabrinaData: ; 3a3e5 (e:63e5)
-if _YELLOW
- db $FF,50,ABRA,50,KADABRA,50,ALAKAZAM,0
-else
- db $FF,38,KADABRA,37,MR_MIME,38,VENOMOTH,43,ALAKAZAM,0
-endc
-GentlemanData: ; 3a3ef (e:63ef)
- db 18,GROWLITHE,GROWLITHE,0
- db 19,NIDORAN_M,NIDORAN_F,0
-if _YELLOW
- db 22,VOLTORB,MAGNEMITE,0
-else
- db 23,PIKACHU,0
-endc
- db 48,PRIMEAPE,0
- db 17,GROWLITHE,PONYTA,0
-Green2Data: ; 3a401 (e:6401)
-if _YELLOW
- db $FF,19,SPEAROW,16,RATTATA,18,SANDSHREW,20,EEVEE,0
- db $FF,25,FEAROW,23,SHELLDER,22,VULPIX,20,SANDSHREW,25,EEVEE,0
- db $FF,25,FEAROW,23,MAGNEMITE,22,SHELLDER,20,SANDSHREW,25,EEVEE,0
- db $FF,25,FEAROW,23,VULPIX,22,MAGNEMITE,20,SANDSHREW,25,EEVEE,0
- db $FF,38,SANDSLASH,35,NINETALES,37,CLOYSTER,35,KADABRA,40,JOLTEON,0
- db $FF,38,SANDSLASH,35,CLOYSTER,37,MAGNETON,35,KADABRA,40,FLAREON,0
- db $FF,38,SANDSLASH,35,MAGNETON,37,NINETALES,35,KADABRA,40,VAPOREON,0
- db $FF,47,SANDSLASH,45,EXEGGCUTE,45,NINETALES,47,CLOYSTER,50,KADABRA,53,JOLTEON,0
- db $FF,47,SANDSLASH,45,EXEGGCUTE,45,CLOYSTER,47,MAGNETON,50,KADABRA,53,FLAREON,0
- db $FF,47,SANDSLASH,45,EXEGGCUTE,45,MAGNETON,47,NINETALES,50,KADABRA,53,VAPOREON,0
-else
- db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,WARTORTLE,0
- db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,IVYSAUR,0
- db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,CHARMELEON,0
- db $FF,25,PIDGEOTTO,23,GROWLITHE,22,EXEGGCUTE,20,KADABRA,25,WARTORTLE,0
- db $FF,25,PIDGEOTTO,23,GYARADOS,22,GROWLITHE,20,KADABRA,25,IVYSAUR,0
- db $FF,25,PIDGEOTTO,23,EXEGGCUTE,22,GYARADOS,20,KADABRA,25,CHARMELEON,0
- db $FF,37,PIDGEOT,38,GROWLITHE,35,EXEGGCUTE,35,ALAKAZAM,40,BLASTOISE,0
- db $FF,37,PIDGEOT,38,GYARADOS,35,GROWLITHE,35,ALAKAZAM,40,VENUSAUR,0
- db $FF,37,PIDGEOT,38,EXEGGCUTE,35,GYARADOS,35,ALAKAZAM,40,CHARIZARD,0
- db $FF,47,PIDGEOT,45,RHYHORN,45,GROWLITHE,47,EXEGGCUTE,50,ALAKAZAM,53,BLASTOISE,0
- db $FF,47,PIDGEOT,45,RHYHORN,45,GYARADOS,47,GROWLITHE,50,ALAKAZAM,53,VENUSAUR,0
- db $FF,47,PIDGEOT,45,RHYHORN,45,EXEGGCUTE,47,GYARADOS,50,ALAKAZAM,53,CHARIZARD,0
-endc
-Green3Data: ; 3a491 (e:6491)
-if _YELLOW
- db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,CLOYSTER,63,NINETALES,65,JOLTEON,0
- db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,MAGNETON,63,CLOYSTER,65,FLAREON,0
- db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,NINETALES,63,MAGNETON,65,VAPOREON,0
-else
- db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,ARCANINE,63,EXEGGUTOR,65,BLASTOISE,0
- db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,GYARADOS,63,ARCANINE,65,VENUSAUR,0
- db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,EXEGGUTOR,63,GYARADOS,65,CHARIZARD,0
-endc
-LoreleiData: ; 3a4bb (e:64bb)
- db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0
-ChannelerData: ; 3a4c7 (e:64c7)
- db 22,GASTLY,0
- db 24,GASTLY,0
- db 23,GASTLY,GASTLY,0
- db 24,GASTLY,0
- db 23,GASTLY,0
- db 24,GASTLY,0
- db 24,HAUNTER,0
- db 22,GASTLY,0
- db 24,GASTLY,0
- db 23,GASTLY,GASTLY,0
- db 24,GASTLY,0
- db 22,GASTLY,0
- db 24,GASTLY,0
- db 23,HAUNTER,0
- db 24,GASTLY,0
- db 22,GASTLY,0
- db 24,GASTLY,0
- db 22,HAUNTER,0
- db 22,GASTLY,GASTLY,GASTLY,0
- db 24,GASTLY,0
- db 24,GASTLY,0
- db 34,GASTLY,HAUNTER,0
- db 38,HAUNTER,0
- db 33,GASTLY,GASTLY,HAUNTER,0
-AgathaData: ; 3a516 (e:6516)
- db $FF,56,GENGAR,56,GOLBAT,55,HAUNTER,58,ARBOK,60,GENGAR,0
-LanceData: ; 3a522 (e:6522)
- db $FF,58,GYARADOS,56,DRAGONAIR,56,DRAGONAIR,60,AERODACTYL,62,DRAGONITE,0
+INCLUDE "data/trainer_parties.asm"
TrainerAI: ; 3a52e (e:652e)
;XXX called at 34964, 3c342, 3c398
@@ -52837,8 +32694,7 @@ AIBattleUseItemText: ; 3a844 (e:6844)
TX_FAR _AIBattleUseItemText
db "@"
-Func_3a849: ; 3a849 (e:6849)
-DrawAllPokeballs: ; 0x3a849
+DrawAllPokeballs: ; 3a849 (e:6849)
call LoadPartyPokeballGfx
call SetupOwnPartyPokeballs
ld a, [W_ISINBATTLE] ; $d057
@@ -53153,7 +33009,7 @@ Func_3ad71: ; 3ad71 (e:6d71)
ld hl, W_PARTYMON1NAME ; $d2b5
call GetPartyMonName
call CopyStringToCF4B
- ld hl, UnnamedText_3af4d ; $6f4d
+ ld hl, IsEvolvingText
call PrintText
ld c, $32
call DelayFrames
@@ -53169,7 +33025,7 @@ Func_3ad71: ; 3ad71 (e:6d71)
call CleanLCD_OAM
callab Func_7bde9
jp c, Func_3af2e
- ld hl, UnnamedText_3af3e ; $6f3e
+ ld hl, EvolvedText
call PrintText
pop hl
ld a, [hl]
@@ -53182,7 +33038,7 @@ Func_3ad71: ; 3ad71 (e:6d71)
ld [$d0b7], a
call GetName
push hl
- ld hl, UnnamedText_3af43 ; $6f43
+ ld hl, IntoText
call Func_3c59
ld a, (SFX_02_3b - SFX_Headers_02) / 3
call PlaySoundWaitForCurrent
@@ -53327,27 +33183,27 @@ Func_3aef7: ; 3aef7 (e:6ef7)
jp CopyData
Func_3af2e: ; 3af2e (e:6f2e)
- ld hl, UnnamedText_3af48 ; $6f48
+ ld hl, StoppedEvolvingText
call PrintText
call ClearScreen
pop hl
call Func_3af52
jp asm_3ad2e
-UnnamedText_3af3e: ; 3af3e (e:6f3e)
- TX_FAR _UnnamedText_3af3e
+EvolvedText: ; 3af3e (e:6f3e)
+ TX_FAR _EvolvedText
db "@"
-UnnamedText_3af43: ; 3af43 (e:6f43)
- TX_FAR _UnnamedText_3af43
+IntoText: ; 3af43 (e:6f43)
+ TX_FAR _IntoText
db "@"
-UnnamedText_3af48: ; 3af48 (e:6f48)
- TX_FAR _UnnamedText_3af48
+StoppedEvolvingText: ; 3af48 (e:6f48)
+ TX_FAR _StoppedEvolvingText
db "@"
-UnnamedText_3af4d: ; 3af4d (e:6f4d)
- TX_FAR _UnnamedText_3af4d
+IsEvolvingText: ; 3af4d (e:6f4d)
+ TX_FAR _IsEvolvingText
db "@"
Func_3af52: ; 3af52 (e:6f52)
@@ -53535,2177 +33391,7 @@ Func_3b057: ; 3b057 (e:7057)
ld a, $10
jp Predef ; indirect jump to HandleBitArray (f666 (3:7666))
-EvosMovesPointerTable: ; 3b05c (e:705c)
- dw Mon112_EvosMoves
- dw Mon115_EvosMoves
- dw Mon032_EvosMoves
- dw Mon035_EvosMoves
- dw Mon021_EvosMoves
- dw Mon100_EvosMoves
- dw Mon034_EvosMoves
- dw Mon080_EvosMoves
- dw Mon002_EvosMoves
- dw Mon103_EvosMoves
- dw Mon108_EvosMoves
- dw Mon102_EvosMoves
- dw Mon088_EvosMoves
- dw Mon094_EvosMoves
- dw Mon029_EvosMoves
- dw Mon031_EvosMoves
- dw Mon104_EvosMoves
- dw Mon111_EvosMoves
- dw Mon131_EvosMoves
- dw Mon059_EvosMoves
- dw Mon151_EvosMoves
- dw Mon130_EvosMoves
- dw Mon090_EvosMoves
- dw Mon072_EvosMoves
- dw Mon092_EvosMoves
- dw Mon123_EvosMoves
- dw Mon120_EvosMoves
- dw Mon009_EvosMoves
- dw Mon127_EvosMoves
- dw Mon114_EvosMoves
- dw Mon152_EvosMoves ;MissingNo
- dw Mon153_EvosMoves ;MissingNo
- dw Mon058_EvosMoves
- dw Mon095_EvosMoves
- dw Mon022_EvosMoves
- dw Mon016_EvosMoves
- dw Mon079_EvosMoves
- dw Mon064_EvosMoves
- dw Mon075_EvosMoves
- dw Mon113_EvosMoves
- dw Mon067_EvosMoves
- dw Mon122_EvosMoves
- dw Mon106_EvosMoves
- dw Mon107_EvosMoves
- dw Mon024_EvosMoves
- dw Mon047_EvosMoves
- dw Mon054_EvosMoves
- dw Mon096_EvosMoves
- dw Mon076_EvosMoves
- dw Mon154_EvosMoves ;MissingNo
- dw Mon126_EvosMoves
- dw Mon155_EvosMoves ;MissingNo
- dw Mon125_EvosMoves
- dw Mon082_EvosMoves
- dw Mon109_EvosMoves
- dw Mon156_EvosMoves ;MissingNo
- dw Mon056_EvosMoves
- dw Mon086_EvosMoves
- dw Mon050_EvosMoves
- dw Mon128_EvosMoves
- dw Mon157_EvosMoves ;MissingNo
- dw Mon158_EvosMoves ;MissingNo
- dw Mon159_EvosMoves ;MissingNo
- dw Mon083_EvosMoves
- dw Mon048_EvosMoves
- dw Mon149_EvosMoves
- dw Mon160_EvosMoves ;MissingNo
- dw Mon161_EvosMoves ;MissingNo
- dw Mon162_EvosMoves ;MissingNo
- dw Mon084_EvosMoves
- dw Mon060_EvosMoves
- dw Mon124_EvosMoves
- dw Mon146_EvosMoves
- dw Mon144_EvosMoves
- dw Mon145_EvosMoves
- dw Mon132_EvosMoves
- dw Mon052_EvosMoves
- dw Mon098_EvosMoves
- dw Mon163_EvosMoves ;MissingNo
- dw Mon164_EvosMoves ;MissingNo
- dw Mon165_EvosMoves ;MissingNo
- dw Mon037_EvosMoves
- dw Mon038_EvosMoves
- dw Mon025_EvosMoves
- dw Mon026_EvosMoves
- dw Mon166_EvosMoves ;MissingNo
- dw Mon167_EvosMoves ;MissingNo
- dw Mon147_EvosMoves
- dw Mon148_EvosMoves
- dw Mon140_EvosMoves
- dw Mon141_EvosMoves
- dw Mon116_EvosMoves
- dw Mon117_EvosMoves
- dw Mon168_EvosMoves ;MissingNo
- dw Mon169_EvosMoves ;MissingNo
- dw Mon027_EvosMoves
- dw Mon028_EvosMoves
- dw Mon138_EvosMoves
- dw Mon139_EvosMoves
- dw Mon039_EvosMoves
- dw Mon040_EvosMoves
- dw Mon133_EvosMoves
- dw Mon136_EvosMoves
- dw Mon135_EvosMoves
- dw Mon134_EvosMoves
- dw Mon066_EvosMoves
- dw Mon041_EvosMoves
- dw Mon023_EvosMoves
- dw Mon046_EvosMoves
- dw Mon061_EvosMoves
- dw Mon062_EvosMoves
- dw Mon013_EvosMoves
- dw Mon014_EvosMoves
- dw Mon015_EvosMoves
- dw Mon170_EvosMoves ;MissingNo
- dw Mon085_EvosMoves
- dw Mon057_EvosMoves
- dw Mon051_EvosMoves
- dw Mon049_EvosMoves
- dw Mon087_EvosMoves
- dw Mon171_EvosMoves ;MissingNo
- dw Mon172_EvosMoves ;MissingNo
- dw Mon010_EvosMoves
- dw Mon011_EvosMoves
- dw Mon012_EvosMoves
- dw Mon068_EvosMoves
- dw Mon173_EvosMoves ;MissingNo
- dw Mon055_EvosMoves
- dw Mon097_EvosMoves
- dw Mon042_EvosMoves
- dw Mon150_EvosMoves
- dw Mon143_EvosMoves
- dw Mon129_EvosMoves
- dw Mon174_EvosMoves ;MissingNo
- dw Mon175_EvosMoves ;MissingNo
- dw Mon089_EvosMoves
- dw Mon176_EvosMoves ;MissingNo
- dw Mon099_EvosMoves
- dw Mon091_EvosMoves
- dw Mon177_EvosMoves ;MissingNo
- dw Mon101_EvosMoves
- dw Mon036_EvosMoves
- dw Mon110_EvosMoves
- dw Mon053_EvosMoves
- dw Mon105_EvosMoves
- dw Mon178_EvosMoves ;MissingNo
- dw Mon093_EvosMoves
- dw Mon063_EvosMoves
- dw Mon065_EvosMoves
- dw Mon017_EvosMoves
- dw Mon018_EvosMoves
- dw Mon121_EvosMoves
- dw Mon001_EvosMoves
- dw Mon003_EvosMoves
- dw Mon073_EvosMoves
- dw Mon179_EvosMoves ;MissingNo
- dw Mon118_EvosMoves
- dw Mon119_EvosMoves
- dw Mon180_EvosMoves ;MissingNo
- dw Mon181_EvosMoves ;MissingNo
- dw Mon182_EvosMoves ;MissingNo
- dw Mon183_EvosMoves ;MissingNo
- dw Mon077_EvosMoves
- dw Mon078_EvosMoves
- dw Mon019_EvosMoves
- dw Mon020_EvosMoves
- dw Mon033_EvosMoves
- dw Mon030_EvosMoves
- dw Mon074_EvosMoves
- dw Mon137_EvosMoves
- dw Mon142_EvosMoves
- dw Mon184_EvosMoves ;MissingNo
- dw Mon081_EvosMoves
- dw Mon185_EvosMoves ;MissingNo
- dw Mon186_EvosMoves ;MissingNo
- dw Mon004_EvosMoves
- dw Mon007_EvosMoves
- dw Mon005_EvosMoves
- dw Mon008_EvosMoves
- dw Mon006_EvosMoves
- dw Mon187_EvosMoves ;MissingNo
- dw Mon188_EvosMoves ;MissingNo
- dw Mon189_EvosMoves ;MissingNo
- dw Mon190_EvosMoves ;MissingNo
- dw Mon043_EvosMoves
- dw Mon044_EvosMoves
- dw Mon045_EvosMoves
- dw Mon069_EvosMoves
- dw Mon070_EvosMoves
- dw Mon071_EvosMoves
-
-Mon112_EvosMoves: ; 3b1d8 (e:71d8)
-;RHYDON
-;Evolutions
- db 0
-;Learnset
- db 30,STOMP
- db 35,TAIL_WHIP
- db 40,FURY_ATTACK
- db 48,HORN_DRILL
- db 55,LEER
- db 64,TAKE_DOWN
- db 0
-Mon115_EvosMoves: ; 3b1e6 (e:71e6)
-;KANGASKHAN
-;Evolutions
- db 0
-;Learnset
- db 26,BITE
- db 31,TAIL_WHIP
- db 36,MEGA_PUNCH
- db 41,LEER
- db 46,DIZZY_PUNCH
- db 0
-Mon032_EvosMoves: ; 3b1f2 (e:71f2)
-;NIDORAN_M
-;Evolutions
- db EV_LEVEL,16,NIDORINO
- db 0
-;Learnset
- db 8,HORN_ATTACK
- db 14,POISON_STING
- db 21,FOCUS_ENERGY
- db 29,FURY_ATTACK
- db 36,HORN_DRILL
- db 43,DOUBLE_KICK
- db 0
-Mon035_EvosMoves: ; 3b203 (e:7203)
-;CLEFAIRY
-;Evolutions
- db EV_ITEM,MOON_STONE,1,CLEFABLE
- db 0
-;Learnset
- db 13,SING
- db 18,DOUBLESLAP
- db 24,MINIMIZE
- db 31,METRONOME
- db 39,DEFENSE_CURL
- db 48,LIGHT_SCREEN
- db 0
-Mon021_EvosMoves: ; 3b215 (e:7215)
-;SPEAROW
-;Evolutions
- db EV_LEVEL,20,FEAROW
- db 0
-;Learnset
- db 9,LEER
- db 15,FURY_ATTACK
- db 22,MIRROR_MOVE
- db 29,DRILL_PECK
- db 36,AGILITY
- db 0
-Mon100_EvosMoves: ; 3b224 (e:7224)
-;VOLTORB
-;Evolutions
- db EV_LEVEL,30,ELECTRODE
- db 0
-;Learnset
- db 17,SONICBOOM
- db 22,SELFDESTRUCT
- db 29,LIGHT_SCREEN
- db 36,SWIFT
- db 43,EXPLOSION
- db 0
-Mon034_EvosMoves: ; 3b233 (e:7233)
-;NIDOKING
-;Evolutions
- db 0
-;Learnset
- db 8,HORN_ATTACK
- db 14,POISON_STING
- db 23,THRASH
- db 0
-Mon080_EvosMoves: ; 3b23b (e:723b)
-;SLOWBRO
-;Evolutions
- db 0
-;Learnset
- db 18,DISABLE
- db 22,HEADBUTT
- db 27,GROWL
- db 33,WATER_GUN
- db 37,WITHDRAW
- db 44,AMNESIA
- db 55,PSYCHIC_M
- db 0
-Mon002_EvosMoves: ; 3b24b (e:724b)
-;IVYSAUR
-;Evolutions
- db EV_LEVEL,32,VENUSAUR
- db 0
-;Learnset
- db 7,LEECH_SEED
- db 13,VINE_WHIP
- db 22,POISONPOWDER
- db 30,RAZOR_LEAF
- db 38,GROWTH
- db 46,SLEEP_POWDER
- db 54,SOLARBEAM
- db 0
-Mon103_EvosMoves: ; 3b25e (e:725e)
-;EXEGGUTOR
-;Evolutions
- db 0
-;Learnset
- db 28,STOMP
- db 0
-Mon108_EvosMoves: ; 3b262 (e:7262)
-;LICKITUNG
-;Evolutions
- db 0
-;Learnset
- db 7,STOMP
- db 15,DISABLE
- db 23,DEFENSE_CURL
- db 31,SLAM
- db 39,SCREECH
- db 0
-Mon102_EvosMoves: ; 3b26e (e:726e)
-;EXEGGCUTE
-;Evolutions
- db EV_ITEM,LEAF_STONE ,1,EXEGGUTOR
- db 0
-;Learnset
- db 25,REFLECT
- db 28,LEECH_SEED
- db 32,STUN_SPORE
- db 37,POISONPOWDER
- db 42,SOLARBEAM
- db 48,SLEEP_POWDER
- db 0
-Mon088_EvosMoves: ; 3b280 (e:7280)
-;GRIMER
-;Evolutions
- db EV_LEVEL,38,MUK
- db 0
-;Learnset
- db 30,POISON_GAS
- db 33,MINIMIZE
- db 37,SLUDGE
- db 42,HARDEN
- db 48,SCREECH
- db 55,ACID_ARMOR
- db 0
-Mon094_EvosMoves: ; 3b291 (e:7291)
-;GENGAR
-;Evolutions
- db 0
-;Learnset
- db 29,HYPNOSIS
- db 38,DREAM_EATER
- db 0
-Mon029_EvosMoves: ; 3b297 (e:7297)
-;NIDORAN_F
-;Evolutions
- db EV_LEVEL,16,NIDORINA
- db 0
-;Learnset
- db 8,SCRATCH
- db 14,POISON_STING
- db 21,TAIL_WHIP
- db 29,BITE
- db 36,FURY_SWIPES
- db 43,DOUBLE_KICK
- db 0
-Mon031_EvosMoves: ; 3b2a8 (e:72a8)
-;NIDOQUEEN
-;Evolutions
- db 0
-;Learnset
- db 8,SCRATCH
- db 14,POISON_STING
- db 23,BODY_SLAM
- db 0
-Mon104_EvosMoves: ; 3b2b0 (e:72b0)
-;CUBONE
-;Evolutions
- db EV_LEVEL,28,MAROWAK
- db 0
-;Learnset
- db 25,LEER
- db 31,FOCUS_ENERGY
- db 38,THRASH
- db 43,BONEMERANG
- db 46,RAGE
- db 0
-Mon111_EvosMoves: ; 3b2bf (e:72bf)
-;RHYHORN
-;Evolutions
- db EV_LEVEL,42,RHYDON
- db 0
-;Learnset
- db 30,STOMP
- db 35,TAIL_WHIP
- db 40,FURY_ATTACK
- db 45,HORN_DRILL
- db 50,LEER
- db 55,TAKE_DOWN
- db 0
-Mon131_EvosMoves: ; 3b2d0 (e:72d0)
-;LAPRAS
-;Evolutions
- db 0
-;Learnset
- db 16,SING
- db 20,MIST
- db 25,BODY_SLAM
- db 31,CONFUSE_RAY
- db 38,ICE_BEAM
- db 46,HYDRO_PUMP
- db 0
-Mon059_EvosMoves: ; 3b2de (e:72de)
-;ARCANINE
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon151_EvosMoves: ; 3b2e0 (e:72e0)
-;MEW
-;Evolutions
- db 0
-;Learnset
- db 10,TRANSFORM
- db 20,MEGA_PUNCH
- db 30,METRONOME
- db 40,PSYCHIC_M
- db 0
-Mon130_EvosMoves: ; 3b2ea (e:72ea)
-;GYARADOS
-;Evolutions
- db 0
-;Learnset
- db 20,BITE
- db 25,DRAGON_RAGE
- db 32,LEER
- db 41,HYDRO_PUMP
- db 52,HYPER_BEAM
- db 0
-Mon090_EvosMoves: ; 3b2f6 (e:72f6)
-;SHELLDER
-;Evolutions
- db EV_ITEM,WATER_STONE ,1,CLOYSTER
- db 0
-;Learnset
- db 18,SUPERSONIC
- db 23,CLAMP
- db 30,AURORA_BEAM
- db 39,LEER
- db 50,ICE_BEAM
- db 0
-Mon072_EvosMoves: ; 3b306 (e:7306)
-;TENTACOOL
-;Evolutions
- db EV_LEVEL,30,TENTACRUEL
- db 0
-;Learnset
- db 7,SUPERSONIC
- db 13,WRAP
- db 18,POISON_STING
- db 22,WATER_GUN
- db 27,CONSTRICT
- db 33,BARRIER
- db 40,SCREECH
- db 48,HYDRO_PUMP
- db 0
-Mon092_EvosMoves: ; 3b31b (e:731b)
-;GASTLY
-;Evolutions
- db EV_LEVEL,25,HAUNTER
- db 0
-;Learnset
- db 27,HYPNOSIS
- db 35,DREAM_EATER
- db 0
-Mon123_EvosMoves: ; 3b324 (e:7324)
-;SCYTHER
-;Evolutions
- db 0
-;Learnset
- db 17,LEER
- db 20,FOCUS_ENERGY
- db 24,DOUBLE_TEAM
- db 29,SLASH
- db 35,SWORDS_DANCE
- db 42,AGILITY
- db 0
-Mon120_EvosMoves: ; 3b332 (e:7332)
-;STARYU
-;Evolutions
- db EV_ITEM,WATER_STONE ,1,STARMIE
- db 0
-;Learnset
- db 17,WATER_GUN
- db 22,HARDEN
- db 27,RECOVER
- db 32,SWIFT
- db 37,MINIMIZE
- db 42,LIGHT_SCREEN
- db 47,HYDRO_PUMP
- db 0
-Mon009_EvosMoves: ; 3b346 (e:7346)
-;BLASTOISE
-;Evolutions
- db 0
-;Learnset
- db 8,BUBBLE
- db 15,WATER_GUN
- db 24,BITE
- db 31,WITHDRAW
- db 42,SKULL_BASH
- db 52,HYDRO_PUMP
- db 0
-Mon127_EvosMoves: ; 3b354 (e:7354)
-;PINSIR
-;Evolutions
- db 0
-;Learnset
- db 25,SEISMIC_TOSS
- db 30,GUILLOTINE
- db 36,FOCUS_ENERGY
- db 43,HARDEN
- db 49,SLASH
- db 54,SWORDS_DANCE
- db 0
-Mon114_EvosMoves: ; 3b362 (e:7362)
-;TANGELA
-;Evolutions
- db 0
-;Learnset
- db 29,ABSORB
- db 32,POISONPOWDER
- db 36,STUN_SPORE
- db 39,SLEEP_POWDER
- db 45,SLAM
- db 49,GROWTH
- db 0
-
-Mon152_EvosMoves: ; 3b370 (e:7370)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon153_EvosMoves: ; 3b372 (e:7372)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon058_EvosMoves: ; 3b374 (e:7374)
-;GROWLITHE
-;Evolutions
- db EV_ITEM,FIRE_STONE,1,ARCANINE
- db 0
-;Learnset
- db 18,EMBER
- db 23,LEER
- db 30,TAKE_DOWN
- db 39,AGILITY
- db 50,FLAMETHROWER
- db 0
-Mon095_EvosMoves: ; 3b384 (e:7384)
-;ONIX
-;Evolutions
- db 0
-;Learnset
- db 15,BIND
- db 19,ROCK_THROW
- db 25,RAGE
- db 33,SLAM
- db 43,HARDEN
- db 0
-Mon022_EvosMoves: ; 3b390 (e:7390)
-;FEAROW
-;Evolutions
- db 0
-;Learnset
- db 9,LEER
- db 15,FURY_ATTACK
- db 25,MIRROR_MOVE
- db 34,DRILL_PECK
- db 43,AGILITY
- db 0
-Mon016_EvosMoves: ; 3b39c (e:739c)
-;PIDGEY
-;Evolutions
- db EV_LEVEL,18,PIDGEOTTO
- db 0
-;Learnset
- db 5,SAND_ATTACK
- db 12,QUICK_ATTACK
- db 19,WHIRLWIND
- db 28,WING_ATTACK
- db 36,AGILITY
- db 44,MIRROR_MOVE
- db 0
-Mon079_EvosMoves: ; 3b3ad (e:73ad)
-;SLOWPOKE
-;Evolutions
- db EV_LEVEL,37,SLOWBRO
- db 0
-;Learnset
- db 18,DISABLE
- db 22,HEADBUTT
- db 27,GROWL
- db 33,WATER_GUN
- db 40,AMNESIA
- db 48,PSYCHIC_M
- db 0
-Mon064_EvosMoves: ; 3b3be (e:73be)
-;KADABRA
-;Evolutions
- db EV_TRADE,1,ALAKAZAM
- db 0
-;Learnset
- db 16,CONFUSION
- db 20,DISABLE
- db 27,PSYBEAM
- db 31,RECOVER
- db 38,PSYCHIC_M
- db 42,REFLECT
- db 0
-Mon075_EvosMoves: ; 3b3cf (e:73cf)
-;GRAVELER
-;Evolutions
- db EV_TRADE,1,GOLEM
- db 0
-;Learnset
- db 11,DEFENSE_CURL
- db 16,ROCK_THROW
- db 21,SELFDESTRUCT
- db 29,HARDEN
- db 36,EARTHQUAKE
- db 43,EXPLOSION
- db 0
-Mon113_EvosMoves: ; 3b3e0 (e:73e0)
-;CHANSEY
-;Evolutions
- db 0
-;Learnset
- db 24,SING
- db 30,GROWL
- db 38,MINIMIZE
- db 44,DEFENSE_CURL
- db 48,LIGHT_SCREEN
- db 54,DOUBLE_EDGE
- db 0
-Mon067_EvosMoves: ; 3b3ee (e:73ee)
-;MACHOKE
-;Evolutions
- db EV_TRADE,1,MACHAMP
- db 0
-;Learnset
- db 20,LOW_KICK
- db 25,LEER
- db 36,FOCUS_ENERGY
- db 44,SEISMIC_TOSS
- db 52,SUBMISSION
- db 0
-Mon122_EvosMoves: ; 3b3fd (e:73fd)
-;MR_MIME
-;Evolutions
- db 0
-;Learnset
- db 15,CONFUSION
- db 23,LIGHT_SCREEN
- db 31,DOUBLESLAP
- db 39,MEDITATE
- db 47,SUBSTITUTE
- db 0
-Mon106_EvosMoves: ; 3b409 (e:7409)
-;HITMONLEE
-;Evolutions
- db 0
-;Learnset
- db 33,ROLLING_KICK
- db 38,JUMP_KICK
- db 43,FOCUS_ENERGY
- db 48,HI_JUMP_KICK
- db 53,MEGA_KICK
- db 0
-Mon107_EvosMoves: ; 3b415 (e:7415)
-;HITMONCHAN
-;Evolutions
- db 0
-;Learnset
- db 33,FIRE_PUNCH
- db 38,ICE_PUNCH
- db 43,THUNDERPUNCH
- db 48,MEGA_PUNCH
- db 53,COUNTER
- db 0
-Mon024_EvosMoves: ; 3b421 (e:7421)
-;ARBOK
-;Evolutions
- db 0
-;Learnset
- db 10,POISON_STING
- db 17,BITE
- db 27,GLARE
- db 36,SCREECH
- db 47,ACID
- db 0
-Mon047_EvosMoves: ; 3b42d (e:742d)
-;PARASECT
-;Evolutions
- db 0
-;Learnset
- db 13,STUN_SPORE
- db 20,LEECH_LIFE
- db 30,SPORE
- db 39,SLASH
- db 48,GROWTH
- db 0
-Mon054_EvosMoves: ; 3b439 (e:7439)
-;PSYDUCK
-;Evolutions
- db EV_LEVEL,33,GOLDUCK
- db 0
-;Learnset
- db 28,TAIL_WHIP
- db 31,DISABLE
- db 36,CONFUSION
- db 43,FURY_SWIPES
- db 52,HYDRO_PUMP
- db 0
-Mon096_EvosMoves: ; 3b448 (e:7448)
-;DROWZEE
-;Evolutions
- db EV_LEVEL,26,HYPNO
- db 0
-;Learnset
- db 12,DISABLE
- db 17,CONFUSION
- db 24,HEADBUTT
- db 29,POISON_GAS
- db 32,PSYCHIC_M
- db 37,MEDITATE
- db 0
-Mon076_EvosMoves: ; 3b459 (e:7459)
-;GOLEM
-;Evolutions
- db 0
-;Learnset
- db 11,DEFENSE_CURL
- db 16,ROCK_THROW
- db 21,SELFDESTRUCT
- db 29,HARDEN
- db 36,EARTHQUAKE
- db 43,EXPLOSION
- db 0
-
-Mon154_EvosMoves: ; 3b467 (e:7467)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon126_EvosMoves: ; 3b469 (e:7469)
-;MAGMAR
-;Evolutions
- db 0
-;Learnset
- db 36,LEER
- db 39,CONFUSE_RAY
- db 43,FIRE_PUNCH
- db 48,SMOKESCREEN
- db 52,SMOG
- db 55,FLAMETHROWER
- db 0
-
-Mon155_EvosMoves: ; 3b477 (e:7477)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon125_EvosMoves: ; 3b479 (e:7479)
-;ELECTABUZZ
-;Evolutions
- db 0
-;Learnset
- db 34,THUNDERSHOCK
- db 37,SCREECH
- db 42,THUNDERPUNCH
- db 49,LIGHT_SCREEN
- db 54,THUNDER
- db 0
-Mon082_EvosMoves: ; 3b485 (e:7485)
-;MAGNETON
-;Evolutions
- db 0
-;Learnset
- db 21,SONICBOOM
- db 25,THUNDERSHOCK
- db 29,SUPERSONIC
- db 38,THUNDER_WAVE
- db 46,SWIFT
- db 54,SCREECH
- db 0
-Mon109_EvosMoves: ; 3b493 (e:7493)
-;KOFFING
-;Evolutions
- db EV_LEVEL,35,WEEZING
- db 0
-;Learnset
- db 32,SLUDGE
- db 37,SMOKESCREEN
- db 40,SELFDESTRUCT
- db 45,HAZE
- db 48,EXPLOSION
- db 0
-
-Mon156_EvosMoves: ; 3b4a2 (e:74a2)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon056_EvosMoves: ; 3b4a4 (e:74a4)
-;MANKEY
-;Evolutions
- db EV_LEVEL,28,PRIMEAPE
- db 0
-;Learnset
- db 15,KARATE_CHOP
- db 21,FURY_SWIPES
- db 27,FOCUS_ENERGY
- db 33,SEISMIC_TOSS
- db 39,THRASH
- db 0
-Mon086_EvosMoves: ; 3b4b3 (e:74b3)
-;SEEL
-;Evolutions
- db EV_LEVEL,34,DEWGONG
- db 0
-;Learnset
- db 30,GROWL
- db 35,AURORA_BEAM
- db 40,REST
- db 45,TAKE_DOWN
- db 50,ICE_BEAM
- db 0
-Mon050_EvosMoves: ; 3b4c2 (e:74c2)
-;DIGLETT
-;Evolutions
- db EV_LEVEL,26,DUGTRIO
- db 0
-;Learnset
- db 15,GROWL
- db 19,DIG
- db 24,SAND_ATTACK
- db 31,SLASH
- db 40,EARTHQUAKE
- db 0
-Mon128_EvosMoves: ; 3b4d1 (e:74d1)
-;TAUROS
-;Evolutions
- db 0
-;Learnset
- db 21,STOMP
- db 28,TAIL_WHIP
- db 35,LEER
- db 44,RAGE
- db 51,TAKE_DOWN
- db 0
-
-Mon157_EvosMoves: ; 3b4dd (e:74dd)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon158_EvosMoves: ; 3b4df (e:74df)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon159_EvosMoves: ; 3b4e1 (e:74e1)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon083_EvosMoves: ; 3b4e3 (e:74e3)
-;FARFETCH_D
-;Evolutions
- db 0
-;Learnset
- db 7,LEER
- db 15,FURY_ATTACK
- db 23,SWORDS_DANCE
- db 31,AGILITY
- db 39,SLASH
- db 0
-Mon048_EvosMoves: ; 3b4ef (e:74ef)
-;VENONAT
-;Evolutions
- db EV_LEVEL,31,VENOMOTH
- db 0
-;Learnset
- db 24,POISONPOWDER
- db 27,LEECH_LIFE
- db 30,STUN_SPORE
- db 35,PSYBEAM
- db 38,SLEEP_POWDER
- db 43,PSYCHIC_M
- db 0
-Mon149_EvosMoves: ; 3b500 (e:7500)
-;DRAGONITE
-;Evolutions
- db 0
-;Learnset
- db 10,THUNDER_WAVE
- db 20,AGILITY
- db 35,SLAM
- db 45,DRAGON_RAGE
- db 60,HYPER_BEAM
- db 0
-
-Mon160_EvosMoves: ; 3b50c (e:750c)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon161_EvosMoves: ; 3b50e (e:750e)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon162_EvosMoves: ; 3b510 (e:7510)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon084_EvosMoves: ; 3b512 (e:7512)
-;DODUO
-;Evolutions
- db EV_LEVEL,31,DODRIO
- db 0
-;Learnset
- db 20,GROWL
- db 24,FURY_ATTACK
- db 30,DRILL_PECK
- db 36,RAGE
- db 40,TRI_ATTACK
- db 44,AGILITY
- db 0
-Mon060_EvosMoves: ; 3b523 (e:7523)
-;POLIWAG
-;Evolutions
- db EV_LEVEL,25,POLIWHIRL
- db 0
-;Learnset
- db 16,HYPNOSIS
- db 19,WATER_GUN
- db 25,DOUBLESLAP
- db 31,BODY_SLAM
- db 38,AMNESIA
- db 45,HYDRO_PUMP
- db 0
-Mon124_EvosMoves: ; 3b534 (e:7534)
-;JYNX
-;Evolutions
- db 0
-;Learnset
- db 18,LICK
- db 23,DOUBLESLAP
- db 31,ICE_PUNCH
- db 39,BODY_SLAM
- db 47,THRASH
- db 58,BLIZZARD
- db 0
-Mon146_EvosMoves: ; 3b542 (e:7542)
-;MOLTRES
-;Evolutions
- db 0
-;Learnset
- db 51,LEER
- db 55,AGILITY
- db 60,SKY_ATTACK
- db 0
-Mon144_EvosMoves: ; 3b54a (e:754a)
-;ARTICUNO
-;Evolutions
- db 0
-;Learnset
- db 51,BLIZZARD
- db 55,AGILITY
- db 60,MIST
- db 0
-Mon145_EvosMoves: ; 3b552 (e:7552)
-;ZAPDOS
-;Evolutions
- db 0
-;Learnset
- db 51,THUNDER
- db 55,AGILITY
- db 60,LIGHT_SCREEN
- db 0
-Mon132_EvosMoves: ; 3b55a (e:755a)
-;DITTO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon052_EvosMoves: ; 3b55c (e:755c)
-;MEOWTH
-;Evolutions
- db EV_LEVEL,28,PERSIAN
- db 0
-;Learnset
- db 12,BITE
- db 17,PAY_DAY
- db 24,SCREECH
- db 33,FURY_SWIPES
- db 44,SLASH
- db 0
-Mon098_EvosMoves: ; 3b56b (e:756b)
-;KRABBY
-;Evolutions
- db EV_LEVEL,28,KINGLER
- db 0
-;Learnset
- db 20,VICEGRIP
- db 25,GUILLOTINE
- db 30,STOMP
- db 35,CRABHAMMER
- db 40,HARDEN
- db 0
-
-Mon163_EvosMoves: ; 3b57a (e:757a)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon164_EvosMoves: ; 3b57c (e:757c)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon165_EvosMoves: ; 3b57e (e:757e)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon037_EvosMoves: ; 3b580 (e:7580)
-;VULPIX
-;Evolutions
- db EV_ITEM,FIRE_STONE,1,NINETALES
- db 0
-;Learnset
- db 16,QUICK_ATTACK
- db 21,ROAR
- db 28,CONFUSE_RAY
- db 35,FLAMETHROWER
- db 42,FIRE_SPIN
- db 0
-Mon038_EvosMoves: ; 3b590 (e:7590)
-;NINETALES
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon025_EvosMoves: ; 3b592 (e:7592)
-;PIKACHU
-;Evolutions
- db EV_ITEM,THUNDER_STONE ,1,RAICHU
- db 0
-;Learnset
- db 9,THUNDER_WAVE
- db 16,QUICK_ATTACK
- db 26,SWIFT
- db 33,AGILITY
- db 43,THUNDER
- db 0
-Mon026_EvosMoves: ; 3b5a2 (e:75a2)
-;RAICHU
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon166_EvosMoves: ; 3b5a4 (e:75a4)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon167_EvosMoves: ; 3b5a6 (e:75a6)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon147_EvosMoves: ; 3b5a8 (e:75a8)
-;DRATINI
-;Evolutions
- db EV_LEVEL,30,DRAGONAIR
- db 0
-;Learnset
- db 10,THUNDER_WAVE
- db 20,AGILITY
- db 30,SLAM
- db 40,DRAGON_RAGE
- db 50,HYPER_BEAM
- db 0
-Mon148_EvosMoves: ; 3b5b7 (e:75b7)
-;DRAGONAIR
-;Evolutions
- db EV_LEVEL,55,DRAGONITE
- db 0
-;Learnset
- db 10,THUNDER_WAVE
- db 20,AGILITY
- db 35,SLAM
- db 45,DRAGON_RAGE
- db 55,HYPER_BEAM
- db 0
-Mon140_EvosMoves: ; 3b5c6 (e:75c6)
-;KABUTO
-;Evolutions
- db EV_LEVEL,40,KABUTOPS
- db 0
-;Learnset
- db 34,ABSORB
- db 39,SLASH
- db 44,LEER
- db 49,HYDRO_PUMP
- db 0
-Mon141_EvosMoves: ; 3b5d3 (e:75d3)
-;KABUTOPS
-;Evolutions
- db 0
-;Learnset
- db 34,ABSORB
- db 39,SLASH
- db 46,LEER
- db 53,HYDRO_PUMP
- db 0
-Mon116_EvosMoves: ; 3b5dd (e:75dd)
-;HORSEA
-;Evolutions
- db EV_LEVEL,32,SEADRA
- db 0
-;Learnset
- db 19,SMOKESCREEN
- db 24,LEER
- db 30,WATER_GUN
- db 37,AGILITY
- db 45,HYDRO_PUMP
- db 0
-Mon117_EvosMoves: ; 3b5ec (e:75ec)
-;SEADRA
-;Evolutions
- db 0
-;Learnset
- db 19,SMOKESCREEN
- db 24,LEER
- db 30,WATER_GUN
- db 41,AGILITY
- db 52,HYDRO_PUMP
- db 0
-
-Mon168_EvosMoves: ; 3b5f8 (e:75f8)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon169_EvosMoves: ; 3b5fa (e:75fa)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon027_EvosMoves: ; 3b5fc (e:75fc)
-;SANDSHREW
-;Evolutions
- db EV_LEVEL,22,SANDSLASH
- db 0
-;Learnset
- db 10,SAND_ATTACK
- db 17,SLASH
- db 24,POISON_STING
- db 31,SWIFT
- db 38,FURY_SWIPES
- db 0
-Mon028_EvosMoves: ; 3b60b (e:760b)
-;SANDSLASH
-;Evolutions
- db 0
-;Learnset
- db 10,SAND_ATTACK
- db 17,SLASH
- db 27,POISON_STING
- db 36,SWIFT
- db 47,FURY_SWIPES
- db 0
-Mon138_EvosMoves: ; 3b617 (e:7617)
-;OMANYTE
-;Evolutions
- db EV_LEVEL,40,OMASTAR
- db 0
-;Learnset
- db 34,HORN_ATTACK
- db 39,LEER
- db 46,SPIKE_CANNON
- db 53,HYDRO_PUMP
- db 0
-Mon139_EvosMoves: ; 3b624 (e:7624)
-;OMASTAR
-;Evolutions
- db 0
-;Learnset
- db 34,HORN_ATTACK
- db 39,LEER
- db 44,SPIKE_CANNON
- db 49,HYDRO_PUMP
- db 0
-Mon039_EvosMoves: ; 3b62e (e:762e)
-;JIGGLYPUFF
-;Evolutions
- db EV_ITEM,MOON_STONE,1,WIGGLYTUFF
- db 0
-;Learnset
- db 9,POUND
- db 14,DISABLE
- db 19,DEFENSE_CURL
- db 24,DOUBLESLAP
- db 29,REST
- db 34,BODY_SLAM
- db 39,DOUBLE_EDGE
- db 0
-Mon040_EvosMoves: ; 3b642 (e:7642)
-;WIGGLYTUFF
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon133_EvosMoves: ; 3b644 (e:7644)
-;EEVEE
-;Evolutions
- db EV_ITEM,FIRE_STONE,1,FLAREON
- db EV_ITEM,THUNDER_STONE ,1,JOLTEON
- db EV_ITEM,WATER_STONE ,1,VAPOREON
- db 0
-;Learnset
- db 27,QUICK_ATTACK
- db 31,TAIL_WHIP
- db 37,BITE
- db 45,TAKE_DOWN
- db 0
-Mon136_EvosMoves: ; 3b65a (e:765a)
-;FLAREON
-;Evolutions
- db 0
-;Learnset
- db 27,QUICK_ATTACK
- db 31,EMBER
- db 37,TAIL_WHIP
- db 40,BITE
- db 42,LEER
- db 44,FIRE_SPIN
- db 48,RAGE
- db 54,FLAMETHROWER
- db 0
-Mon135_EvosMoves: ; 3b66c (e:766c)
-;JOLTEON
-;Evolutions
- db 0
-;Learnset
- db 27,QUICK_ATTACK
- db 31,THUNDERSHOCK
- db 37,TAIL_WHIP
- db 40,THUNDER_WAVE
- db 42,DOUBLE_KICK
- db 44,AGILITY
- db 48,PIN_MISSILE
- db 54,THUNDER
- db 0
-Mon134_EvosMoves: ; 3b67e (e:767e)
-;VAPOREON
-;Evolutions
- db 0
-;Learnset
- db 27,QUICK_ATTACK
- db 31,WATER_GUN
- db 37,TAIL_WHIP
- db 40,BITE
- db 42,ACID_ARMOR
- db 44,HAZE
- db 48,MIST
- db 54,HYDRO_PUMP
- db 0
-Mon066_EvosMoves: ; 3b690 (e:7690)
-;MACHOP
-;Evolutions
- db EV_LEVEL,28,MACHOKE
- db 0
-;Learnset
- db 20,LOW_KICK
- db 25,LEER
- db 32,FOCUS_ENERGY
- db 39,SEISMIC_TOSS
- db 46,SUBMISSION
- db 0
-Mon041_EvosMoves: ; 3b69f (e:769f)
-;ZUBAT
-;Evolutions
- db EV_LEVEL,22,GOLBAT
- db 0
-;Learnset
- db 10,SUPERSONIC
- db 15,BITE
- db 21,CONFUSE_RAY
- db 28,WING_ATTACK
- db 36,HAZE
- db 0
-Mon023_EvosMoves: ; 3b6ae (e:76ae)
-;EKANS
-;Evolutions
- db EV_LEVEL,22,ARBOK
- db 0
-;Learnset
- db 10,POISON_STING
- db 17,BITE
- db 24,GLARE
- db 31,SCREECH
- db 38,ACID
- db 0
-Mon046_EvosMoves: ; 3b6bd (e:76bd)
-;PARAS
-;Evolutions
- db EV_LEVEL,24,PARASECT
- db 0
-;Learnset
- db 13,STUN_SPORE
- db 20,LEECH_LIFE
- db 27,SPORE
- db 34,SLASH
- db 41,GROWTH
- db 0
-Mon061_EvosMoves: ; 3b6cc (e:76cc)
-;POLIWHIRL
-;Evolutions
- db EV_ITEM,WATER_STONE ,1,POLIWRATH
- db 0
-;Learnset
- db 16,HYPNOSIS
- db 19,WATER_GUN
- db 26,DOUBLESLAP
- db 33,BODY_SLAM
- db 41,AMNESIA
- db 49,HYDRO_PUMP
- db 0
-Mon062_EvosMoves: ; 3b6de (e:76de)
-;POLIWRATH
-;Evolutions
- db 0
-;Learnset
- db 16,HYPNOSIS
- db 19,WATER_GUN
- db 0
-Mon013_EvosMoves: ; 3b6e4 (e:76e4)
-;WEEDLE
-;Evolutions
- db EV_LEVEL,7,KAKUNA
- db 0
-;Learnset
- db 0
-Mon014_EvosMoves: ; 3b6e9 (e:76e9)
-;KAKUNA
-;Evolutions
- db EV_LEVEL,10,BEEDRILL
- db 0
-;Learnset
- db 0
-Mon015_EvosMoves: ; 3b6ee (e:76ee)
-;BEEDRILL
-;Evolutions
- db 0
-;Learnset
- db 12,FURY_ATTACK
- db 16,FOCUS_ENERGY
- db 20,TWINEEDLE
- db 25,RAGE
- db 30,PIN_MISSILE
- db 35,AGILITY
- db 0
-
-Mon170_EvosMoves: ; 3b6fc (e:76fc)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon085_EvosMoves: ; 3b6fe (e:76fe)
-;DODRIO
-;Evolutions
- db 0
-;Learnset
- db 20,GROWL
- db 24,FURY_ATTACK
- db 30,DRILL_PECK
- db 39,RAGE
- db 45,TRI_ATTACK
- db 51,AGILITY
- db 0
-Mon057_EvosMoves: ; 3b70c (e:770c)
-;PRIMEAPE
-;Evolutions
- db 0
-;Learnset
- db 15,KARATE_CHOP
- db 21,FURY_SWIPES
- db 27,FOCUS_ENERGY
- db 37,SEISMIC_TOSS
- db 46,THRASH
- db 0
-Mon051_EvosMoves: ; 3b718 (e:7718)
-;DUGTRIO
-;Evolutions
- db 0
-;Learnset
- db 15,GROWL
- db 19,DIG
- db 24,SAND_ATTACK
- db 35,SLASH
- db 47,EARTHQUAKE
- db 0
-Mon049_EvosMoves: ; 3b724 (e:7724)
-;VENOMOTH
-;Evolutions
- db 0
-;Learnset
- db 24,POISONPOWDER
- db 27,LEECH_LIFE
- db 30,STUN_SPORE
- db 38,PSYBEAM
- db 43,SLEEP_POWDER
- db 50,PSYCHIC_M
- db 0
-Mon087_EvosMoves: ; 3b732 (e:7732)
-;DEWGONG
-;Evolutions
- db 0
-;Learnset
- db 30,GROWL
- db 35,AURORA_BEAM
- db 44,REST
- db 50,TAKE_DOWN
- db 56,ICE_BEAM
- db 0
-
-Mon171_EvosMoves: ; 3b73e (e:773e)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon172_EvosMoves: ; 3b740 (e:7740)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon010_EvosMoves: ; 3b742 (e:7742)
-;CATERPIE
-;Evolutions
- db EV_LEVEL,7,METAPOD
- db 0
-;Learnset
- db 0
-Mon011_EvosMoves: ; 3b747 (e:7747)
-;METAPOD
-;Evolutions
- db EV_LEVEL,10,BUTTERFREE
- db 0
-;Learnset
- db 0
-Mon012_EvosMoves: ; 3b74c (e:774c)
-;BUTTERFREE
-;Evolutions
- db 0
-;Learnset
- db 12,CONFUSION
- db 15,POISONPOWDER
- db 16,STUN_SPORE
- db 17,SLEEP_POWDER
- db 21,SUPERSONIC
- db 26,WHIRLWIND
- db 32,PSYBEAM
- db 0
-Mon068_EvosMoves: ; 3b75c (e:775c)
-;MACHAMP
-;Evolutions
- db 0
-;Learnset
- db 20,LOW_KICK
- db 25,LEER
- db 36,FOCUS_ENERGY
- db 44,SEISMIC_TOSS
- db 52,SUBMISSION
- db 0
-
-Mon173_EvosMoves: ; 3b768 (e:7768)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon055_EvosMoves: ; 3b76a (e:776a)
-;GOLDUCK
-;Evolutions
- db 0
-;Learnset
- db 28,TAIL_WHIP
- db 31,DISABLE
- db 39,CONFUSION
- db 48,FURY_SWIPES
- db 59,HYDRO_PUMP
- db 0
-Mon097_EvosMoves: ; 3b776 (e:7776)
-;HYPNO
-;Evolutions
- db 0
-;Learnset
- db 12,DISABLE
- db 17,CONFUSION
- db 24,HEADBUTT
- db 33,POISON_GAS
- db 37,PSYCHIC_M
- db 43,MEDITATE
- db 0
-Mon042_EvosMoves: ; 3b784 (e:7784)
-;GOLBAT
-;Evolutions
- db 0
-;Learnset
- db 10,SUPERSONIC
- db 15,BITE
- db 21,CONFUSE_RAY
- db 32,WING_ATTACK
- db 43,HAZE
- db 0
-Mon150_EvosMoves: ; 3b790 (e:7790)
-;MEWTWO
-;Evolutions
- db 0
-;Learnset
- db 63,BARRIER
- db 66,PSYCHIC_M
- db 70,RECOVER
- db 75,MIST
- db 81,AMNESIA
- db 0
-Mon143_EvosMoves: ; 3b79c (e:779c)
-;SNORLAX
-;Evolutions
- db 0
-;Learnset
- db 35,BODY_SLAM
- db 41,HARDEN
- db 48,DOUBLE_EDGE
- db 56,HYPER_BEAM
- db 0
-Mon129_EvosMoves: ; 3b7a6 (e:77a6)
-;MAGIKARP
-;Evolutions
- db EV_LEVEL,20,GYARADOS
- db 0
-;Learnset
- db 15,TACKLE
- db 0
-
-Mon174_EvosMoves: ; 3b7ad (e:77ad)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon175_EvosMoves: ; 3b7af (e:77af)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon089_EvosMoves: ; 3b7b1 (e:77b1)
-;MUK
-;Evolutions
- db 0
-;Learnset
- db 30,POISON_GAS
- db 33,MINIMIZE
- db 37,SLUDGE
- db 45,HARDEN
- db 53,SCREECH
- db 60,ACID_ARMOR
- db 0
-
-Mon176_EvosMoves: ; 3b7bf (e:77bf)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon099_EvosMoves: ; 3b7c1 (e:77c1)
-;KINGLER
-;Evolutions
- db 0
-;Learnset
- db 20,VICEGRIP
- db 25,GUILLOTINE
- db 34,STOMP
- db 42,CRABHAMMER
- db 49,HARDEN
- db 0
-Mon091_EvosMoves: ; 3b7cd (e:77cd)
-;CLOYSTER
-;Evolutions
- db 0
-;Learnset
- db 50,SPIKE_CANNON
- db 0
-
-Mon177_EvosMoves: ; 3b7d1 (e:77d1)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon101_EvosMoves: ; 3b7d3 (e:77d3)
-;ELECTRODE
-;Evolutions
- db 0
-;Learnset
- db 17,SONICBOOM
- db 22,SELFDESTRUCT
- db 29,LIGHT_SCREEN
- db 40,SWIFT
- db 50,EXPLOSION
- db 0
-Mon036_EvosMoves: ; 3b7df (e:77df)
-;CLEFABLE
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon110_EvosMoves: ; 3b7e1 (e:77e1)
-;WEEZING
-;Evolutions
- db 0
-;Learnset
- db 32,SLUDGE
- db 39,SMOKESCREEN
- db 43,SELFDESTRUCT
- db 49,HAZE
- db 53,EXPLOSION
- db 0
-Mon053_EvosMoves: ; 3b7ed (e:77ed)
-;PERSIAN
-;Evolutions
- db 0
-;Learnset
- db 12,BITE
- db 17,PAY_DAY
- db 24,SCREECH
- db 37,FURY_SWIPES
- db 51,SLASH
- db 0
-Mon105_EvosMoves: ; 3b7f9 (e:77f9)
-;MAROWAK
-;Evolutions
- db 0
-;Learnset
- db 25,LEER
- db 33,FOCUS_ENERGY
- db 41,THRASH
- db 48,BONEMERANG
- db 55,RAGE
- db 0
-
-Mon178_EvosMoves: ; 3b805 (e:7805)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon093_EvosMoves: ; 3b807 (e:7807)
-;HAUNTER
-;Evolutions
- db EV_TRADE,1,GENGAR
- db 0
-;Learnset
- db 29,HYPNOSIS
- db 38,DREAM_EATER
- db 0
-Mon063_EvosMoves: ; 3b810 (e:7810)
-;ABRA
-;Evolutions
- db EV_LEVEL,16,KADABRA
- db 0
-;Learnset
- db 0
-Mon065_EvosMoves: ; 3b815 (e:7815)
-;ALAKAZAM
-;Evolutions
- db 0
-;Learnset
- db 16,CONFUSION
- db 20,DISABLE
- db 27,PSYBEAM
- db 31,RECOVER
- db 38,PSYCHIC_M
- db 42,REFLECT
- db 0
-Mon017_EvosMoves: ; 3b823 (e:7823)
-;PIDGEOTTO
-;Evolutions
- db EV_LEVEL,36,PIDGEOT
- db 0
-;Learnset
- db 5,SAND_ATTACK
- db 12,QUICK_ATTACK
- db 21,WHIRLWIND
- db 31,WING_ATTACK
- db 40,AGILITY
- db 49,MIRROR_MOVE
- db 0
-Mon018_EvosMoves: ; 3b834 (e:7834)
-;PIDGEOT
-;Evolutions
- db 0
-;Learnset
- db 5,SAND_ATTACK
- db 12,QUICK_ATTACK
- db 21,WHIRLWIND
- db 31,WING_ATTACK
- db 44,AGILITY
- db 54,MIRROR_MOVE
- db 0
-Mon121_EvosMoves: ; 3b842 (e:7842)
-;STARMIE
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon001_EvosMoves: ; 3b844 (e:7844)
-;BULBASAUR
-;Evolutions
- db EV_LEVEL,16,IVYSAUR
- db 0
-;Learnset
- db 7,LEECH_SEED
- db 13,VINE_WHIP
- db 20,POISONPOWDER
- db 27,RAZOR_LEAF
- db 34,GROWTH
- db 41,SLEEP_POWDER
- db 48,SOLARBEAM
- db 0
-Mon003_EvosMoves: ; 3b857 (e:7857)
-;VENUSAUR
-;Evolutions
- db 0
-;Learnset
- db 7,LEECH_SEED
- db 13,VINE_WHIP
- db 22,POISONPOWDER
- db 30,RAZOR_LEAF
- db 43,GROWTH
- db 55,SLEEP_POWDER
- db 65,SOLARBEAM
- db 0
-Mon073_EvosMoves: ; 3b867 (e:7867)
-;TENTACRUEL
-;Evolutions
- db 0
-;Learnset
- db 7,SUPERSONIC
- db 13,WRAP
- db 18,POISON_STING
- db 22,WATER_GUN
- db 27,CONSTRICT
- db 35,BARRIER
- db 43,SCREECH
- db 50,HYDRO_PUMP
- db 0
-
-Mon179_EvosMoves: ; 3b879 (e:7879)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon118_EvosMoves: ; 3b87b (e:787b)
-;GOLDEEN
-;Evolutions
- db EV_LEVEL,33,SEAKING
- db 0
-;Learnset
- db 19,SUPERSONIC
- db 24,HORN_ATTACK
- db 30,FURY_ATTACK
- db 37,WATERFALL
- db 45,HORN_DRILL
- db 54,AGILITY
- db 0
-Mon119_EvosMoves: ; 3b88c (e:788c)
-;SEAKING
-;Evolutions
- db 0
-;Learnset
- db 19,SUPERSONIC
- db 24,HORN_ATTACK
- db 30,FURY_ATTACK
- db 39,WATERFALL
- db 48,HORN_DRILL
- db 54,AGILITY
- db 0
-
-Mon180_EvosMoves: ; 3b89a (e:789a)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon181_EvosMoves: ; 3b89c (e:789c)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon182_EvosMoves: ; 3b89e (e:789e)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon183_EvosMoves: ; 3b8a0 (e:78a0)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon077_EvosMoves: ; 3b8a2 (e:78a2)
-;PONYTA
-;Evolutions
- db EV_LEVEL,40,RAPIDASH
- db 0
-;Learnset
- db 30,TAIL_WHIP
- db 32,STOMP
- db 35,GROWL
- db 39,FIRE_SPIN
- db 43,TAKE_DOWN
- db 48,AGILITY
- db 0
-Mon078_EvosMoves: ; 3b8b3 (e:78b3)
-;RAPIDASH
-;Evolutions
- db 0
-;Learnset
- db 30,TAIL_WHIP
- db 32,STOMP
- db 35,GROWL
- db 39,FIRE_SPIN
- db 47,TAKE_DOWN
- db 55,AGILITY
- db 0
-Mon019_EvosMoves: ; 3b8c1 (e:78c1)
-;RATTATA
-;Evolutions
- db EV_LEVEL,20,RATICATE
- db 0
-;Learnset
- db 7,QUICK_ATTACK
- db 14,HYPER_FANG
- db 23,FOCUS_ENERGY
- db 34,SUPER_FANG
- db 0
-Mon020_EvosMoves: ; 3b8ce (e:78ce)
-;RATICATE
-;Evolutions
- db 0
-;Learnset
- db 7,QUICK_ATTACK
- db 14,HYPER_FANG
- db 27,FOCUS_ENERGY
- db 41,SUPER_FANG
- db 0
-Mon033_EvosMoves: ; 3b8d8 (e:78d8)
-;NIDORINO
-;Evolutions
- db EV_ITEM,MOON_STONE,1,NIDOKING
- db 0
-;Learnset
- db 8,HORN_ATTACK
- db 14,POISON_STING
- db 23,FOCUS_ENERGY
- db 32,FURY_ATTACK
- db 41,HORN_DRILL
- db 50,DOUBLE_KICK
- db 0
-Mon030_EvosMoves: ; 3b8ea (e:78ea)
-;NIDORINA
-;Evolutions
- db EV_ITEM,MOON_STONE,1,NIDOQUEEN
- db 0
-;Learnset
- db 8,SCRATCH
- db 14,POISON_STING
- db 23,TAIL_WHIP
- db 32,BITE
- db 41,FURY_SWIPES
- db 50,DOUBLE_KICK
- db 0
-Mon074_EvosMoves: ; 3b8fc (e:78fc)
-;GEODUDE
-;Evolutions
- db EV_LEVEL,25,GRAVELER
- db 0
-;Learnset
- db 11,DEFENSE_CURL
- db 16,ROCK_THROW
- db 21,SELFDESTRUCT
- db 26,HARDEN
- db 31,EARTHQUAKE
- db 36,EXPLOSION
- db 0
-Mon137_EvosMoves: ; 3b90d (e:790d)
-;PORYGON
-;Evolutions
- db 0
-;Learnset
- db 23,PSYBEAM
- db 28,RECOVER
- db 35,AGILITY
- db 42,TRI_ATTACK
- db 0
-Mon142_EvosMoves: ; 3b917 (e:7917)
-;AERODACTYL
-;Evolutions
- db 0
-;Learnset
- db 33,SUPERSONIC
- db 38,BITE
- db 45,TAKE_DOWN
- db 54,HYPER_BEAM
- db 0
-
-Mon184_EvosMoves: ; 3b921 (e:7921)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon081_EvosMoves: ; 3b923 (e:7923)
-;MAGNEMITE
-;Evolutions
- db EV_LEVEL,30,MAGNETON
- db 0
-;Learnset
- db 21,SONICBOOM
- db 25,THUNDERSHOCK
- db 29,SUPERSONIC
- db 35,THUNDER_WAVE
- db 41,SWIFT
- db 47,SCREECH
- db 0
-
-Mon185_EvosMoves: ; 3b934 (e:7934)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon186_EvosMoves: ; 3b936 (e:7936)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon004_EvosMoves: ; 3b938 (e:7938)
-;CHARMANDER
-;Evolutions
- db EV_LEVEL,16,CHARMELEON
- db 0
-;Learnset
- db 9,EMBER
- db 15,LEER
- db 22,RAGE
- db 30,SLASH
- db 38,FLAMETHROWER
- db 46,FIRE_SPIN
- db 0
-Mon007_EvosMoves: ; 3b949 (e:7949)
-;SQUIRTLE
-;Evolutions
- db EV_LEVEL,16,WARTORTLE
- db 0
-;Learnset
- db 8,BUBBLE
- db 15,WATER_GUN
- db 22,BITE
- db 28,WITHDRAW
- db 35,SKULL_BASH
- db 42,HYDRO_PUMP
- db 0
-Mon005_EvosMoves: ; 3b95a (e:795a)
-;CHARMELEON
-;Evolutions
- db EV_LEVEL,36,CHARIZARD
- db 0
-;Learnset
- db 9,EMBER
- db 15,LEER
- db 24,RAGE
- db 33,SLASH
- db 42,FLAMETHROWER
- db 56,FIRE_SPIN
- db 0
-Mon008_EvosMoves: ; 3b96b (e:796b)
-;WARTORTLE
-;Evolutions
- db EV_LEVEL,36,BLASTOISE
- db 0
-;Learnset
- db 8,BUBBLE
- db 15,WATER_GUN
- db 24,BITE
- db 31,WITHDRAW
- db 39,SKULL_BASH
- db 47,HYDRO_PUMP
- db 0
-Mon006_EvosMoves: ; 3b97c (e:797c)
-;CHARIZARD
-;Evolutions
- db 0
-;Learnset
- db 9,EMBER
- db 15,LEER
- db 24,RAGE
- db 36,SLASH
- db 46,FLAMETHROWER
- db 55,FIRE_SPIN
- db 0
-
-Mon187_EvosMoves: ; 3b98a (e:798a)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon188_EvosMoves: ; 3b98c (e:798c)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon189_EvosMoves: ; 3b98e (e:798e)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon190_EvosMoves: ; 3b990 (e:7990)
-;MISSINGNO
-;Evolutions
- db 0
-;Learnset
- db 0
-Mon043_EvosMoves: ; 3b992 (e:7992)
-;ODDISH
-;Evolutions
- db EV_LEVEL,21,GLOOM
- db 0
-;Learnset
- db 15,POISONPOWDER
- db 17,STUN_SPORE
- db 19,SLEEP_POWDER
- db 24,ACID
- db 33,PETAL_DANCE
- db 46,SOLARBEAM
- db 0
-Mon044_EvosMoves: ; 3b9a3 (e:79a3)
-;GLOOM
-;Evolutions
- db EV_ITEM,LEAF_STONE ,1,VILEPLUME
- db 0
-;Learnset
- db 15,POISONPOWDER
- db 17,STUN_SPORE
- db 19,SLEEP_POWDER
- db 28,ACID
- db 38,PETAL_DANCE
- db 52,SOLARBEAM
- db 0
-Mon045_EvosMoves: ; 3b9b5 (e:79b5)
-;VILEPLUME
-;Evolutions
- db 0
-;Learnset
- db 15,POISONPOWDER
- db 17,STUN_SPORE
- db 19,SLEEP_POWDER
- db 0
-Mon069_EvosMoves: ; 3b9bd (e:79bd)
-;BELLSPROUT
-;Evolutions
- db EV_LEVEL,21,WEEPINBELL
- db 0
-;Learnset
- db 13,WRAP
- db 15,POISONPOWDER
- db 18,SLEEP_POWDER
- db 21,STUN_SPORE
- db 26,ACID
- db 33,RAZOR_LEAF
- db 42,SLAM
- db 0
-Mon070_EvosMoves: ; 3b9d0 (e:79d0)
-;WEEPINBELL
-;Evolutions
- db EV_ITEM,LEAF_STONE ,1,VICTREEBEL
- db 0
-;Learnset
- db 13,WRAP
- db 15,POISONPOWDER
- db 18,SLEEP_POWDER
- db 23,STUN_SPORE
- db 29,ACID
- db 38,RAZOR_LEAF
- db 49,SLAM
- db 0
-Mon071_EvosMoves: ; 3b9e4 (e:79e4)
-;VICTREEBEL
-;Evolutions
- db 0
-;Learnset
- db 13,WRAP
- db 15,POISONPOWDER
- db 18,SLEEP_POWDER
- db 0
+INCLUDE "data/evos_moves.asm"
HealEffect_: ; 3b9ec (e:79ec)
ld a, [H_WHOSETURN] ; $fff3
@@ -56276,7 +33962,7 @@ Func_3c11e: ; 3c11e (f:411e)
and a
jr nz, .asm_3c17a
call LoadScreenTilesFromBuffer1
- ld hl, UnnamedText_3c1a8 ; $41a8
+ ld hl, OutOfSafariBallsText
jp PrintText
.asm_3c17a
callab Func_4277
@@ -56302,8 +33988,8 @@ Func_3c11e: ; 3c11e (f:411e)
jr nc, .asm_3c14f
jr asm_3c202
-UnnamedText_3c1a8: ; 3c1a8 (f:41a8)
- TX_FAR _UnnamedText_3c1a8
+OutOfSafariBallsText: ; 3c1a8 (f:41a8)
+ TX_FAR _OutOfSafariBallsText
db "@"
Func_3c1ad: ; 3c1ad (f:41ad)
@@ -56351,11 +34037,11 @@ asm_3c202: ; 3c202 (f:4202)
call LoadScreenTilesFromBuffer1
ld a, [W_ISLINKBATTLE] ; $d12b
cp $4
- ld hl, UnnamedText_3c229 ; $4229
+ ld hl, WildRanText
jr nz, .asm_3c216
xor a
ld [$cf0b], a
- ld hl, UnnamedText_3c22e ; $422e
+ ld hl, EnemyRanText
.asm_3c216
call PrintText
ld a, (SFX_08_44 - SFX_Headers_08) / 3
@@ -56366,12 +34052,12 @@ asm_3c202: ; 3c202 (f:4202)
ld b, BANK(AnimationSlideEnemyMonOut)
jp Bankswitch
-UnnamedText_3c229: ; 3c229 (f:4229)
- TX_FAR _UnnamedText_3c229
+WildRanText: ; 3c229 (f:4229)
+ TX_FAR _WildRanText
db "@"
-UnnamedText_3c22e: ; 3c22e (f:422e)
- TX_FAR _UnnamedText_3c22e
+EnemyRanText: ; 3c22e (f:422e)
+ TX_FAR _EnemyRanText
db "@"
MainInBattleLoop: ; 3c233 (f:4233)
@@ -56891,7 +34577,7 @@ FaintEnemyPokemon ; 0x3c567
ld a, d
and a
ret z
- ld hl, EnemyMonFainted ; $463e
+ ld hl, EnemyMonFaintedText
call PrintText
call Func_3ee94
call SaveScreenTilesToBuffer1
@@ -56929,8 +34615,8 @@ FaintEnemyPokemon ; 0x3c567
ld b, BANK(Func_5524f)
jp Bankswitch
-EnemyMonFainted: ; 0x3c63e
- TX_FAR _EnemyMonFainted
+EnemyMonFaintedText: ; 0x3c63e
+ TX_FAR _EnemyMonFaintedText
db "@"
Func_3c643: ; 3c643 (f:4643)
@@ -56999,7 +34685,7 @@ TrainerBattleVictory: ; 3c696 (f:4696)
cp $4
ld a, b
call nz, Func_3c6ee
- ld hl, TrainerDefeatedText ; $46e9
+ ld hl, TrainerDefeatedText
call PrintText
ld a, [W_ISLINKBATTLE] ; $d12b
cp $4
@@ -57008,7 +34694,7 @@ TrainerBattleVictory: ; 3c696 (f:4696)
ld c, $28
call DelayFrames
call Func_3381
- ld hl, MoneyForWinningText ; $46e4
+ ld hl, MoneyForWinningText
call PrintText
ld de, wPlayerMoney + 2 ; $d349
ld hl, $d07b
@@ -57116,7 +34802,7 @@ Func_3c79b: ; 3c79b (f:479b)
and a
dec a
ret nz
- ld hl, UnnamedText_3c7d3 ; $47d3
+ ld hl, UseNextMonText
call PrintText
.asm_3c7ad
FuncCoord 13, 9 ; $c461
@@ -57138,8 +34824,8 @@ Func_3c79b: ; 3c79b (f:479b)
ld de, W_ENEMYMONSPEED
jp Func_3cab9
-UnnamedText_3c7d3: ; 3c7d3 (f:47d3)
- TX_FAR _UnnamedText_3c7d3
+UseNextMonText: ; 3c7d3 (f:47d3)
+ TX_FAR _UseNextMonText
db "@"
Func_3c7d8: ; 3c7d8 (f:47d8)
@@ -57270,7 +34956,7 @@ Func_3c893: ; 3c893 (f:4893)
jr nz, .asm_3c8a3
ld bc, $14
add hl, bc
- ld de, SevenSpacesText ; $48d7
+ ld de, SevenSpacesText
call PlaceString
ld c, $2
call DelayFrames
@@ -57451,7 +35137,7 @@ Func_3c92a: ; 3c92a (f:492a)
ld a,[wWhichPokemon]
cp [hl]
jr nz,.next6
- ld hl,UnnamedText_3d1f5 ; $51f5
+ ld hl,AlreadyOutText
call PrintText
.next8
call GoBackToPartyMenu
@@ -57536,18 +35222,18 @@ Func_3ca97: ; 3ca97 (f:4a97)
ld a, [$d11d]
and a
jr nz, .asm_3cab2
- ld hl, UnnamedText_3cab4 ; $4ab4
+ ld hl, NoWillText
call PrintText
.asm_3cab2
xor a
ret
-UnnamedText_3cab4: ; 3cab4 (f:4ab4)
- TX_FAR _UnnamedText_3cab4
+NoWillText: ; 3cab4 (f:4ab4)
+ TX_FAR _NoWillText
db "@"
Func_3cab9: ; 3cab9 (f:4ab9)
- call Func_3d83a
+ call IsGhostBattle
jp z, .asm_3cb5c
ld a, [W_BATTLETYPE] ; $d05a
cp $2
@@ -57619,10 +35305,10 @@ Func_3cab9: ; 3cab9 (f:4ab9)
jr nc, .asm_3cb5c
ld a, $1
ld [$cd6a], a
- ld hl, UnnamedText_3cb97 ; $4b97
+ ld hl, CantEscapeText
jr .asm_3cb4f
.asm_3cb4c
- ld hl, UnnamedText_3cb9c ; $4b9c
+ ld hl, NoRunningText
.asm_3cb4f
call PrintText
ld a, $1
@@ -57651,23 +35337,23 @@ Func_3cab9: ; 3cab9 (f:4ab9)
ld [$cf0b], a
ld a, (SFX_08_44 - SFX_Headers_08) / 3
call PlaySoundWaitForCurrent
- ld hl, UnnamedText_3cba1 ; $4ba1
+ ld hl, GotAwayText
call PrintText
call WaitForSoundToFinish
call SaveScreenTilesToBuffer1
scf
ret
-UnnamedText_3cb97: ; 3cb97 (f:4b97)
- TX_FAR _UnnamedText_3cb97
+CantEscapeText: ; 3cb97 (f:4b97)
+ TX_FAR _CantEscapeText
db "@"
-UnnamedText_3cb9c: ; 3cb9c (f:4b9c)
- TX_FAR _UnnamedText_3cb9c
+NoRunningText: ; 3cb9c (f:4b9c)
+ TX_FAR _NoRunningText
db "@"
-UnnamedText_3cba1: ; 3cba1 (f:4ba1)
- TX_FAR _UnnamedText_3cba1
+GotAwayText: ; 3cba1 (f:4ba1)
+ TX_FAR _GotAwayText
db "@"
Func_3cba6: ; 3cba6 (f:4ba6)
@@ -58228,7 +35914,7 @@ Func_3cfe8: ; 3cfe8 (f:4fe8)
ld a, [W_ISLINKBATTLE] ; $d12b
cp $4
jr nz, .asm_3cffd
- ld hl, ItemsCantBeUsedHere
+ ld hl, ItemsCantBeUsedHereText
call PrintText
jp InitBattleMenu
.asm_3cffd ; bag?
@@ -58328,8 +36014,8 @@ asm_3d05f: ; 3d05f (f:505f)
scf
ret
-ItemsCantBeUsedHere: ; 3d0c5 (f:50c5)
- TX_FAR ItemsCantBeUsedHere_
+ItemsCantBeUsedHereText: ; 3d0c5 (f:50c5)
+ TX_FAR _ItemsCantBeUsedHereText
db "@"
Func_3d0ca: ; 3d0ca (f:50ca)
@@ -58431,7 +36117,7 @@ Func_3d119: ; 3d119 (f:5119)
ld a, [wWhichPokemon] ; $cf92
cp d
jr nz, .asm_3d19d
- ld hl, UnnamedText_3d1f5 ; $51f5
+ ld hl, AlreadyOutText
call PrintText
jp Func_3d105
.asm_3d19d
@@ -58471,8 +36157,8 @@ Func_3d1ba: ; 3d1ba (f:51ba)
and a
ret
-UnnamedText_3d1f5: ; 3d1f5 (f:51f5)
- TX_FAR _UnnamedText_3d1f5
+AlreadyOutText: ; 3d1f5 (f:51f5)
+ TX_FAR _AlreadyOutText
db "@"
Func_3d1fa: ; 3d1fa (f:51fa)
@@ -58781,15 +36467,15 @@ Func_3d3f5: ; 3d3f5 (f:53f5)
and a
ret nz
.asm_3d423
- ld hl, UnnamedText_3d430 ; $5430
+ ld hl, NoMovesLeftText
call PrintText
ld c, $3c
call DelayFrames
xor a
ret
-UnnamedText_3d430: ; 3d430 (f:5430)
- TX_FAR _UnnamedText_3d430
+NoMovesLeftText: ; 3d430 (f:5430)
+ TX_FAR _NoMovesLeftText
db "@"
Func_3d435: ; 3d435 (f:5435)
@@ -58887,7 +36573,7 @@ Func_3d4b6: ; 3d4b6 (f:54b6)
jr nz, .asm_3d4df
FuncCoord 1, 10 ; $c469
ld hl, Coord
- ld de, DisabledText ; $5555
+ ld de, DisabledText
call PlaceString
jr .asm_3d54e
.asm_3d4df
@@ -58918,7 +36604,7 @@ Func_3d4b6: ; 3d4b6 (f:54b6)
ld [$cd6d], a
FuncCoord 1, 9 ; $c455
ld hl, Coord
- ld de, TypeText ; $555f
+ ld de, TypeText
call PlaceString
FuncCoord 7, 11 ; $c483
ld hl, Coord
@@ -59105,7 +36791,7 @@ Func_3d65e: ; 3d65e (f:565e)
ld a, [$cd6a]
and a
jp nz, Func_3d80a
- call Func_3d811
+ call PrintGhostText
jp z, Func_3d80a
call Func_3d854
jr nz, .asm_3d68a
@@ -59132,7 +36818,7 @@ asm_3d6a9: ; 3d6a9 (f:56a9)
res 4,[hl]
res 6,[hl]
asm_3d6b0: ; 3d6b0 (f:56b0)
- call Func_3daf5
+ call PrintMonName1Text
ld hl,DecrementPP
ld de,$CCDC ; pointer to the move just used
ld b,BANK(DecrementPP)
@@ -59233,7 +36919,7 @@ asm_3d766
ld a,[W_MOVEMISSED]
and a
jr z,.next8 ; 57A6
- call Func_3dbe2
+ call PrintMoveFailureText
ld a,[W_PLAYERMOVEEFFECT]
cp a,EXPLODE_EFFECT
jr z,.next9 ; 57B9
@@ -59290,9 +36976,9 @@ Func_3d80a: ; 3d80a (f:580a)
ld b,1
ret
-Func_3d811: ; 3d811 (f:5811)
+PrintGhostText: ; 3d811 (f:5811)
; print the ghost battle messages
- call Func_3d83a
+ call IsGhostBattle
ret nz
ld a,[H_WHOSETURN]
and a
@@ -59318,7 +37004,7 @@ GetOutText: ; 3d835 (f:5835)
TX_FAR _GetOutText
db "@"
-Func_3d83a: ; 3d83a (f:583a)
+IsGhostBattle: ; 3d83a (f:583a)
ld a,[W_ISINBATTLE]
dec a
ret nz
@@ -59365,7 +37051,7 @@ Func_3d854: ; 3d854 (f:5854)
.FrozenCheck
bit FRZ,[hl] ; frozen?
jr z,.HeldInPlaceCheck ; to 5898
- ld hl,FrozenText
+ ld hl,IsFrozenText
call PrintText
xor a
ld [$CCF1],a
@@ -59439,7 +37125,7 @@ HyperBeamCheck: ; 3d8c2 (f:58c2)
ld a,[hl]
and a,$80 ; confused
ld [hl],a
- call Func_3daad
+ call PrintHurtItselfText
jr .next5 ; 5952
.next3
ld a,[$CCEE]
@@ -59448,7 +37134,7 @@ HyperBeamCheck: ; 3d8c2 (f:58c2)
ld hl,$CCDC
cp [hl]
jr nz,.ParalysisCheck
- call Func_3da88
+ call PrintMoveIsDisabledText
ld hl,Func_3d80a ; $580a
jp Func_3da37
.ParalysisCheck
@@ -59592,8 +37278,8 @@ WokeUpText: ; 3da42 (f:5a42)
TX_FAR _WokeUpText
db "@"
-FrozenText: ; 3da47 (f:5a47)
- TX_FAR _FrozenText
+IsFrozenText: ; 3da47 (f:5a47)
+ TX_FAR _IsFrozenText
db "@"
FullyParalyzedText: ; 3da4c (f:5a4c)
@@ -59644,7 +37330,7 @@ CantMoveText: ; 3da83 (f:5a83)
TX_FAR _CantMoveText
db "@"
-Func_3da88: ; 3da88 (f:5a88)
+PrintMoveIsDisabledText: ; 3da88 (f:5a88)
ld hl, wPlayerSelectedMove ; $ccdc
ld de, W_PLAYERBATTSTATUS1 ; $d062
ld a, [H_WHOSETURN] ; $fff3
@@ -59659,15 +37345,15 @@ Func_3da88: ; 3da88 (f:5a88)
ld a, [hl]
ld [$d11e], a
call GetMoveName
- ld hl, UnnamedText_3daa8 ; $5aa8
+ ld hl, MoveIsDisabledText
jp PrintText
-UnnamedText_3daa8: ; 3daa8 (f:5aa8)
- TX_FAR _UnnamedText_3daa8
+MoveIsDisabledText: ; 3daa8 (f:5aa8)
+ TX_FAR _MoveIsDisabledText
db "@"
-Func_3daad: ; 3daad (f:5aad)
- ld hl, HurtItselfText ; $5a65
+PrintHurtItselfText: ; 3daad (f:5aad)
+ ld hl, HurtItselfText
call PrintText
ld hl, W_ENEMYMONDEFENSE ; $cff8
ld a, [hli]
@@ -59709,12 +37395,12 @@ Func_3daad: ; 3daad (f:5aad)
ld [H_WHOSETURN], a ; $fff3
jp ApplyDamageToPlayerPokemon
-Func_3daf5: ; 3daf5 (f:5af5)
- ld hl, UnnamedText_3dafb ; $5afb
+PrintMonName1Text: ; 3daf5 (f:5af5)
+ ld hl, MonName1Text
jp PrintText
-UnnamedText_3dafb: ; 3dafb (f:5afb)
- TX_FAR _UnnamedText_3dafb
+MonName1Text: ; 3dafb (f:5afb)
+ TX_FAR _MonName1Text
db $08 ; asm
ld a, [H_WHOSETURN] ; $fff3
and a
@@ -59729,43 +37415,43 @@ UnnamedText_3dafb: ; 3dafb (f:5afb)
call Func_3db85
ld a, [$cced]
and a
- ld hl, UnnamedText_3db34 ; $5b34
+ ld hl, Used2Text
ret nz
ld a, [$d11e]
cp DOUBLESLAP
- ld hl, UnnamedText_3db34 ; $5b34
+ ld hl, Used2Text
ret c
- ld hl, UnnamedText_3db2d ; $5b2d
+ ld hl, Used1Text
ret
-UnnamedText_3db2d: ; 3db2d (f:5b2d)
- TX_FAR _UnnamedText_3db2d
+Used1Text: ; 3db2d (f:5b2d)
+ TX_FAR _Used1Text
db $08 ; asm
- jr Func_3db39
+ jr PrintInsteadText
-UnnamedText_3db34: ; 3db34 (f:5b34)
- TX_FAR _UnnamedText_3db34
+Used2Text: ; 3db34 (f:5b34)
+ TX_FAR _Used2Text
db $08 ; asm
-Func_3db39: ; 3db39 (f:5b39)
+PrintInsteadText: ; 3db39 (f:5b39)
ld a, [$cced]
and a
- jr z, Func_3db48
- ld hl, UnnamedText_3db43 ; $5b43
+ jr z, PrintCF4BText
+ ld hl, InsteadText
ret
-UnnamedText_3db43: ; 3db43 (f:5b43)
- TX_FAR _UnnamedText_3db43
+InsteadText: ; 3db43 (f:5b43)
+ TX_FAR _InsteadText
db $08 ; asm
-Func_3db48: ; 3db48 (f:5b48)
- ld hl, UnnamedText_3db4c ; $5b4c
+PrintCF4BText: ; 3db48 (f:5b48)
+ ld hl, CF4BText
ret
-UnnamedText_3db4c: ; 3db4c (f:5b4c)
- TX_FAR _UnnamedText_3db4c
+CF4BText: ; 3db4c (f:5b4c)
+ TX_FAR _CF4BText
db $08 ; asm
- ld hl, TextPointerTable_3db62
+ ld hl, ExclamationPointPointerTable
ld a, [$d11e]
add a
push bc
@@ -59778,31 +37464,31 @@ UnnamedText_3db4c: ; 3db4c (f:5b4c)
ld l, a
ret
-TextPointerTable_3db62: ; 3db62 (f:5b62)
- dw UnnamedText_3db6c
- dw UnnamedText_3db71
- dw UnnamedText_3db76
- dw UnnamedText_3db7b
- dw UnnamedText_3db80
+ExclamationPointPointerTable: ; 3db62 (f:5b62)
+ dw ExclamationPoint1Text
+ dw ExclamationPoint2Text
+ dw ExclamationPoint3Text
+ dw ExclamationPoint4Text
+ dw ExclamationPoint5Text
-UnnamedText_3db6c: ; 3db6c (f:5b6c)
- TX_FAR _UnnamedText_3db6c
+ExclamationPoint1Text: ; 3db6c (f:5b6c)
+ TX_FAR _ExclamationPoint1Text
db "@"
-UnnamedText_3db71: ; 3db71 (f:5b71)
- TX_FAR _UnnamedText_3db71
+ExclamationPoint2Text: ; 3db71 (f:5b71)
+ TX_FAR _ExclamationPoint2Text
db "@"
-UnnamedText_3db76: ; 3db76 (f:5b76)
- TX_FAR _UnnamedText_3db76
+ExclamationPoint3Text: ; 3db76 (f:5b76)
+ TX_FAR _ExclamationPoint3Text
db "@"
-UnnamedText_3db7b: ; 3db7b (f:5b7b)
- TX_FAR _UnnamedText_3db7b
+ExclamationPoint4Text: ; 3db7b (f:5b7b)
+ TX_FAR _ExclamationPoint4Text
db "@"
-UnnamedText_3db80: ; 3db80 (f:5b80)
- TX_FAR _UnnamedText_3db80
+ExclamationPoint5Text: ; 3db80 (f:5b80)
+ TX_FAR _ExclamationPoint5Text
db "@"
Func_3db85: ; 3db85 (f:5b85)
@@ -59839,10 +37525,10 @@ UnknownMovesList_3dba3: ; 3dba3 (f:5ba3)
db STRENGTH, ABSORB, STRING_SHOT, EARTHQUAKE, FISSURE, DIG, TOXIC, SCREECH, HARDEN
db MINIMIZE, WITHDRAW, DEFENSE_CURL, METRONOME, LICK, CLAMP, CONSTRICT, POISON_GAS
db LEECH_LIFE, BUBBLE, FLASH, SPLASH, ACID_ARMOR, FURY_SWIPES, REST, SHARPEN, SLASH, SUBSTITUTE
- db $00
+ db $00
db $FF ; terminator
-Func_3dbe2: ; 3dbe2 (f:5be2)
+PrintMoveFailureText: ; 3dbe2 (f:5be2)
ld de, W_PLAYERMOVEEFFECT ; $cfd3
ld a, [H_WHOSETURN] ; $fff3
and a
@@ -59910,7 +37596,7 @@ UnaffectedText: ; 3dc4c (f:5c4c)
TX_FAR _UnaffectedText
db "@"
-Func_3dc51: ; 3dc51 (f:5c51)
+PrintDoesntAffectText: ; 3dc51 (f:5c51)
ld hl, DoesntAffectMonText ; $5c57
jp PrintText
@@ -59924,7 +37610,7 @@ Func_3dc5c: ; 3dc5c (f:5c5c)
jr z, .asm_3dc75
dec a
add a
- ld hl, TextPointerTable_3dc7a ; $5c7a
+ ld hl, CriticalOHKOTextPointers ; $5c7a
ld b, $0
ld c, a
add hl, bc
@@ -59938,16 +37624,16 @@ Func_3dc5c: ; 3dc5c (f:5c5c)
ld c, $14
jp DelayFrames
-TextPointerTable_3dc7a: ; 3dc7a (f:5c7a)
- dw UnnamedText_3dc7e
- dw UnnamedText_3dc83
+CriticalOHKOTextPointers: ; 3dc7a (f:5c7a)
+ dw CriticalHitText
+ dw OHKOText
-UnnamedText_3dc7e: ; 3dc7e (f:5c7e)
- TX_FAR _UnnamedText_3dc7e
+CriticalHitText: ; 3dc7e (f:5c7e)
+ TX_FAR _CriticalHitText
db "@"
-UnnamedText_3dc83: ; 3dc83 (f:5c83)
- TX_FAR _UnnamedText_3dc83
+OHKOText: ; 3dc83 (f:5c83)
+ TX_FAR _OHKOText
db "@"
Func_3dc88: ; 3dc88 (f:5c88)
@@ -60022,9 +37708,9 @@ Func_3dc88: ; 3dc88 (f:5c88)
jr c, .asm_3dd0e
cp b
jr nc, .asm_3dd20
- ld hl, UnnamedText_3ddc0 ; $5dc0
+ ld hl, WontObeyText
call PrintText
- call Func_3daad
+ call PrintHurtItselfText
jp Func_3ddb4
.asm_3dd0e
call GenRandomInBattle
@@ -60033,21 +37719,21 @@ Func_3dc88: ; 3dc88 (f:5c88)
and $7
jr z, .asm_3dd0e
ld [W_PLAYERMONSTATUS], a ; $d018
- ld hl, UnnamedText_3ddbb ; $5dbb
+ ld hl, BeganToNapText
jr .asm_3dd3a
.asm_3dd20
call GenRandomInBattle
and $3
- ld hl, UnnamedText_3ddb6 ; $5db6
+ ld hl, LoafingAroundText
and a
jr z, .asm_3dd3a
- ld hl, UnnamedText_3ddc0 ; $5dc0
+ ld hl, WontObeyText
dec a
jr z, .asm_3dd3a
- ld hl, UnnamedText_3ddc5 ; $5dc5
+ ld hl, TurnedAwayText
dec a
jr z, .asm_3dd3a
- ld hl, UnnamedText_3ddca ; $5dca
+ ld hl, IgnoredOrdersText
.asm_3dd3a
call PrintText
jr Func_3ddb4
@@ -60128,24 +37814,24 @@ Func_3ddb4: ; 3ddb4 (f:5db4)
xor a
ret
-UnnamedText_3ddb6: ; 3ddb6 (f:5db6)
- TX_FAR _UnnamedText_3ddb6
+LoafingAroundText: ; 3ddb6 (f:5db6)
+ TX_FAR _LoafingAroundText
db "@"
-UnnamedText_3ddbb: ; 3ddbb (f:5dbb)
- TX_FAR _UnnamedText_3ddbb
+BeganToNapText: ; 3ddbb (f:5dbb)
+ TX_FAR _BeganToNapText
db "@"
-UnnamedText_3ddc0: ; 3ddc0 (f:5dc0)
- TX_FAR _UnnamedText_3ddc0
+WontObeyText: ; 3ddc0 (f:5dc0)
+ TX_FAR _WontObeyText
db "@"
-UnnamedText_3ddc5: ; 3ddc5 (f:5dc5)
- TX_FAR _UnnamedText_3ddc5
+TurnedAwayText: ; 3ddc5 (f:5dc5)
+ TX_FAR _TurnedAwayText
db "@"
-UnnamedText_3ddca: ; 3ddca (f:5dca)
- TX_FAR _UnnamedText_3ddca
+IgnoredOrdersText: ; 3ddca (f:5dca)
+ TX_FAR _IgnoredOrdersText
db "@"
CalculateDamage: ; 3ddcf (f:5dcf)
@@ -60609,7 +38295,7 @@ CriticalHitTest: ; 3e023 (f:6023)
.Loop
ld a, [hli] ; read move from move table
cp c ; does it match the move about to be used?
- jr z, .HighCritical ; if so, the move about to be used is a high critical hit ratio move
+ jr z, .HighCritical ; if so, the move about to be used is a high critical hit ratio move
inc a ; move on to the next move, FF terminates loop
jr nz, .Loop ; check the next move in HighCriticalMoves
srl b ; /2 for regular move (effective (base speed / 2))
@@ -61302,95 +38988,7 @@ AIGetTypeEffectiveness: ; 3e449 (f:6449)
ld [$d11e],a ; store damage multiplier
ret
-TypeEffects: ; 3e474 (f:6474)
-; format: attacking type, defending type, damage multiplier
-; the multiplier is a (decimal) fixed-point number:
-; 20 is ×2.0
-; 05 is ×0.5
-; 00 is ×0
- db WATER,FIRE,20
- db FIRE,GRASS,20
- db FIRE,ICE,20
- db GRASS,WATER,20
- db ELECTRIC,WATER,20
- db WATER,ROCK,20
- db GROUND,FLYING,00
- db WATER,WATER,05
- db FIRE,FIRE,05
- db ELECTRIC,ELECTRIC,05
- db ICE,ICE,05
- db GRASS,GRASS,05
- db PSYCHIC,PSYCHIC,05
- db FIRE,WATER,05
- db GRASS,FIRE,05
- db WATER,GRASS,05
- db ELECTRIC,GRASS,05
- db NORMAL,ROCK,05
- db NORMAL,GHOST,00
- db GHOST,GHOST,20
- db FIRE,BUG,20
- db FIRE,ROCK,05
- db WATER,GROUND,20
- db ELECTRIC,GROUND,00
- db ELECTRIC,FLYING,20
- db GRASS,GROUND,20
- db GRASS,BUG,05
- db GRASS,POISON,05
- db GRASS,ROCK,20
- db GRASS,FLYING,05
- db ICE,WATER,05
- db ICE,GRASS,20
- db ICE,GROUND,20
- db ICE,FLYING,20
- db FIGHTING,NORMAL,20
- db FIGHTING,POISON,05
- db FIGHTING,FLYING,05
- db FIGHTING,PSYCHIC,05
- db FIGHTING,BUG,05
- db FIGHTING,ROCK,20
- db FIGHTING,ICE,20
- db FIGHTING,GHOST,00
- db POISON,GRASS,20
- db POISON,POISON,05
- db POISON,GROUND,05
- db POISON,BUG,20
- db POISON,ROCK,05
- db POISON,GHOST,05
- db GROUND,FIRE,20
- db GROUND,ELECTRIC,20
- db GROUND,GRASS,05
- db GROUND,BUG,05
- db GROUND,ROCK,20
- db GROUND,POISON,20
- db FLYING,ELECTRIC,05
- db FLYING,FIGHTING,20
- db FLYING,BUG,20
- db FLYING,GRASS,20
- db FLYING,ROCK,05
- db PSYCHIC,FIGHTING,20
- db PSYCHIC,POISON,20
- db BUG,FIRE,05
- db BUG,GRASS,20
- db BUG,FIGHTING,05
- db BUG,FLYING,05
- db BUG,PSYCHIC,20
- db BUG,GHOST,05
- db BUG,POISON,20
- db ROCK,FIRE,20
- db ROCK,FIGHTING,05
- db ROCK,GROUND,05
- db ROCK,FLYING,20
- db ROCK,BUG,20
- db ROCK,ICE,20
- db GHOST,NORMAL,00
- db GHOST,PSYCHIC,00
- db FIRE,DRAGON,05
- db WATER,DRAGON,05
- db ELECTRIC,DRAGON,05
- db GRASS,DRAGON,05
- db ICE,DRAGON,20
- db DRAGON,DRAGON,20
- db $FF
+INCLUDE "data/type_effects.asm"
; some tests that need to pass for a move to hit
MoveHitTest: ; 3e56b (f:656b)
@@ -61620,7 +39218,7 @@ Func_3e6bc: ; 3e6bc (f:66bc)
ld a, [wEnemySelectedMove] ; $ccdd
inc a
jp z, Func_3e88c
- call Func_3d811
+ call PrintGhostText
jp z, Func_3e88c
ld a, [W_ISLINKBATTLE] ; $d12b
cp $4
@@ -61671,7 +39269,7 @@ asm_3e70b: ; 3e70b (f:670b)
asm_3e72b: ; 3e72b (f:672b)
xor a
ld [$cced], a
- call Func_3daf5
+ call PrintMonName1Text
ld a, [W_ENEMYMOVEEFFECT] ; $cfcd
ld hl, EffectsArray1 ; $4000
ld de, $1
@@ -61779,7 +39377,7 @@ asm_3e7ef: ; 3e7ef (f:67ef)
ld a, [W_MOVEMISSED] ; $d05f
and a
jr z, .asm_3e82b
- call Func_3dbe2
+ call PrintMoveFailureText
ld a, [W_ENEMYMOVEEFFECT] ; $cfcd
cp EXPLODE_EFFECT
jr z, .asm_3e83e
@@ -61842,7 +39440,7 @@ Func_3e88f: ; 3e88f (f:688f)
ld [W_ENEMYMONSTATUS], a ; $cfe9
and a
jr z, .asm_3e8af
- ld hl, FastAsleepText ; $5a3d
+ ld hl, FastAsleepText
call PrintText
xor a
ld [$cc5b], a
@@ -61850,7 +39448,7 @@ Func_3e88f: ; 3e88f (f:688f)
call PlayMoveAnimation
jr .asm_3e8b5
.asm_3e8af
- ld hl, WokeUpText ; $5a42
+ ld hl, WokeUpText
call PrintText
.asm_3e8b5
xor a
@@ -61860,7 +39458,7 @@ Func_3e88f: ; 3e88f (f:688f)
.asm_3e8bf
bit 5, [hl]
jr z, .asm_3e8d3
- ld hl, FrozenText ; $5a47
+ ld hl, IsFrozenText
call PrintText
xor a
ld [$ccf2], a
@@ -61870,7 +39468,7 @@ Func_3e88f: ; 3e88f (f:688f)
ld a, [W_PLAYERBATTSTATUS1] ; $d062
bit 5, a
jp z, Func_3e8e7
- ld hl, CantMoveText ; $5a83
+ ld hl, CantMoveText
call PrintText
ld hl, Func_3e88c ; $688c
jp Func_3eab8
@@ -61880,7 +39478,7 @@ Func_3e8e7: ; 3e8e7 (f:68e7)
bit 3, [hl]
jp z, Func_3e8fd
res 3, [hl]
- ld hl, FlinchedText ; $5a51
+ ld hl, FlinchedText
call PrintText
ld hl, Func_3e88c ; $688c
jp Func_3eab8
@@ -61890,7 +39488,7 @@ Func_3e8fd: ; 3e8fd (f:68fd)
bit 5, [hl]
jr z, .asm_3e912
res 5, [hl]
- ld hl, MustRechargeText ; $5a56
+ ld hl, MustRechargeText
call PrintText
ld hl, Func_3e88c ; $688c
jp Func_3eab8
@@ -61905,7 +39503,7 @@ Func_3e8fd: ; 3e8fd (f:68fd)
jr nz, .asm_3e929
ld [hl], a
ld [$ccef], a
- ld hl, DisabledNoMoreText ; $5a5b
+ ld hl, DisabledNoMoreText
call PrintText
.asm_3e929
ld a, [W_ENEMYBATTSTATUS1] ; $d067
@@ -61916,11 +39514,11 @@ Func_3e8fd: ; 3e8fd (f:68fd)
jr nz, .asm_3e944
ld hl, W_ENEMYBATTSTATUS1 ; $d067
res 7, [hl]
- ld hl, ConfusedNoMoreText ; $5a6a
+ ld hl, ConfusedNoMoreText
call PrintText
jp Func_3e9aa
.asm_3e944
- ld hl, IsConfusedText ; $5a60
+ ld hl, IsConfusedText
call PrintText
xor a
ld [$cc5b], a
@@ -61933,7 +39531,7 @@ Func_3e8fd: ; 3e8fd (f:68fd)
ld a, [hl]
and $80
ld [hl], a
- ld hl, HurtItselfText ; $5a65
+ ld hl, HurtItselfText
call PrintText
ld hl, W_PLAYERMONDEF
ld a, [hli]
@@ -61982,7 +39580,7 @@ Func_3e9aa: ; 3e9aa (f:69aa)
ld hl, wEnemySelectedMove ; $ccdd
cp [hl]
jr nz, .asm_3e9bf
- call Func_3da88
+ call PrintMoveIsDisabledText
ld hl, Func_3e88c ; $688c
jp Func_3eab8
.asm_3e9bf
@@ -61992,7 +39590,7 @@ Func_3e9aa: ; 3e9aa (f:69aa)
call GenRandomInBattle
cp $3f
jr nc, asm_3e9f6
- ld hl, FullyParalyzedText ; $5a4c
+ ld hl, FullyParalyzedText
call PrintText
asm_3e9d3: ; 3e9d3 (f:69d3)
ld hl, W_ENEMYBATTSTATUS1 ; $d067
@@ -62038,7 +39636,7 @@ asm_3e9f6: ; 3e9f6 (f:69f6)
.asm_3ea1c
ld hl, W_ENEMYBATTSTATUS1 ; $d067
res 0, [hl]
- ld hl, UnleashedEnergyText ; $5a74
+ ld hl, UnleashedEnergyText
call PrintText
ld a, $1
ld [W_ENEMYMOVEPOWER], a ; $cfce
@@ -62068,7 +39666,7 @@ asm_3e9f6: ; 3e9f6 (f:69f6)
jr z, .asm_3ea83
ld a, THRASH
ld [W_ENEMYMOVENUM], a ; $cfcc
- ld hl, ThrashingAboutText ; $5a79
+ ld hl, ThrashingAboutText
call PrintText
ld hl, $d06f
dec [hl]
@@ -62088,7 +39686,7 @@ asm_3e9f6: ; 3e9f6 (f:69f6)
.asm_3ea83
bit 5, [hl] ; is mon using multi-turn move?
jp z, Func_3ea9b
- ld hl, AttackContinuesText ; $5a7e
+ ld hl, AttackContinuesText
call PrintText
ld hl, $d06f
dec [hl]
@@ -62823,7 +40421,7 @@ Func_3ef8b: ; 3ef8b (f:6f8b)
ld a, [W_CUROPPONENT] ; $d059
cp MAROWAK
jr z, .isGhost
- call Func_3d83a
+ call IsGhostBattle
jr nz, .isNoGhost
.isGhost
ld hl, W_MONHSPRITEDIM
@@ -63181,7 +40779,7 @@ Func_3f20e: ; 3f20e (f:720e)
ld b, a
and $7
jr z, .asm_3f222
- ld hl, AlreadyAsleepText ; $724a
+ ld hl, AlreadyAsleepText
jp PrintText
.asm_3f222
ld a, b
@@ -63199,10 +40797,10 @@ Func_3f20e: ; 3f20e (f:720e)
jr z, .asm_3f231
ld [de], a
call Func_3fb89
- ld hl, FellAsleepText ; $7245
+ ld hl, FellAsleepText
jp PrintText
.asm_3f242
- jp Func_3fb5e
+ jp PrintDidntAffectText
FellAsleepText: ; 3f245 (f:7245)
TX_FAR _FellAsleepText
@@ -63274,10 +40872,10 @@ PoisonEffect: ; 3f24f (f:724f)
set 0, [hl]
xor a
ld [de], a
- ld hl, BadlyPoisonedText ; $72e4
+ ld hl, BadlyPoisonedText
jr .asm_3f2c0
.asm_3f2bd
- ld hl, PoisonedText ; $72df
+ ld hl, PoisonedText
.asm_3f2c0
pop de
ld a, [de]
@@ -63296,7 +40894,7 @@ PoisonEffect: ; 3f24f (f:724f)
.asm_3f2d7
ld c, $32
call DelayFrames
- jp Func_3fb5e
+ jp PrintDidntAffectText
PoisonedText: ; 3f2df (f:72df)
TX_FAR _PoisonedText
@@ -63373,14 +40971,14 @@ FreezeBurnParalyzeEffect: ; 3f30c (f:730c)
call Func_3ed27 ;quarter speed of affected monster
ld a, $a9
call Func_3fbb9 ;animation
- jp Func_3fb6e ;print paralysis text
+ jp PrintMayNotAttackText ;print paralysis text
.burn
ld a, 1 << BRN
ld [W_ENEMYMONSTATUS], a
call Func_3ed64
ld a, $a9
call Func_3fbb9 ;animation
- ld hl, UnnamedText_3f3d8
+ ld hl, BurnedText
jp PrintText
.freeze
call Func_3f9cf ;resets bit 5 of the D063/D068 flags
@@ -63388,7 +40986,7 @@ FreezeBurnParalyzeEffect: ; 3f30c (f:730c)
ld [W_ENEMYMONSTATUS], a
ld a, $a9
call Func_3fbb9 ;animation
- ld hl, UnnamedText_3f3dd
+ ld hl, FrozenText
jp PrintText
opponentAttacker: ; 3f382 (f:7382)
ld a, [W_PLAYERMONSTATUS] ;this appears to the same as above with addresses swapped for opponent
@@ -63422,25 +41020,25 @@ opponentAttacker: ; 3f382 (f:7382)
ld a, 1 << PAR
ld [W_PLAYERMONSTATUS], a
call Func_3ed27
- jp Func_3fb6e
+ jp PrintMayNotAttackText
.burn
ld a, 1 << BRN
ld [W_PLAYERMONSTATUS], a
call Func_3ed64
- ld hl, UnnamedText_3f3d8
+ ld hl, BurnedText
jp PrintText
.freeze
ld a, 1 << FRZ
ld [W_PLAYERMONSTATUS], a
- ld hl, UnnamedText_3f3dd
+ ld hl, FrozenText
jp PrintText
-UnnamedText_3f3d8: ; 3f3d8 (f:73d8)
- TX_FAR _UnnamedText_3f3d8
+BurnedText: ; 3f3d8 (f:73d8)
+ TX_FAR _BurnedText
db "@"
-UnnamedText_3f3dd: ; 3f3dd (f:73dd)
- TX_FAR _UnnamedText_3f3dd
+FrozenText: ; 3f3dd (f:73dd)
+ TX_FAR _FrozenText
db "@"
CheckDefrost: ; 3f3e2 (f:73e2)
@@ -63462,7 +41060,7 @@ CheckDefrost: ; 3f3e2 (f:73e2)
call AddNTimes
xor a
ld [hl], a ;clear status in roster
- ld hl, UnnamedText_3f423
+ ld hl, FireDefrostedText
jr .common
.opponent
ld a, [W_ENEMYMOVETYPE] ;same as above with addresses swapped
@@ -63475,12 +41073,12 @@ CheckDefrost: ; 3f3e2 (f:73e2)
call AddNTimes
xor a
ld [hl], a
- ld hl, UnnamedText_3f423
+ ld hl, FireDefrostedText
.common
jp PrintText
-UnnamedText_3f423: ; 3f423 (f:7423)
- TX_FAR _UnnamedText_3f423
+FireDefrostedText: ; 3f423 (f:7423)
+ TX_FAR _FireDefrostedText
db "@"
StatModifierUpEffect: ; 3f428 (f:7428)
@@ -63627,7 +41225,7 @@ asm_3f4ca: ; 3f4ca (f:74ca)
ld a, [H_WHOSETURN] ; $fff3
and a
call z, Func_3ee19
- ld hl, UnnamedText_3f528 ; $7528
+ ld hl, MonsStatsRoseText
call PrintText
call Func_3ed27
jp Func_3ed64
@@ -63637,13 +41235,13 @@ Func_3f520: ; 3f520 (f:7520)
dec [hl]
Func_3f522: ; 3f522 (f:7522)
- ld hl, UnnamedText_3fb3e ; $7b3e
+ ld hl, NothingHappenedText
jp PrintText
-UnnamedText_3f528: ; 3f528 (f:7528)
- TX_FAR _UnnamedText_3f528
+MonsStatsRoseText: ; 3f528 (f:7528)
+ TX_FAR _MonsStatsRoseText
db $08 ; asm
- ld hl, UnnamedText_3f542 ; $7542
+ ld hl, GreatlyRoseText
ld a, [H_WHOSETURN] ; $fff3
and a
ld a, [W_PLAYERMOVEEFFECT] ; $cfd3
@@ -63652,15 +41250,15 @@ UnnamedText_3f528: ; 3f528 (f:7528)
.asm_3f53b
cp ATTACK_DOWN1_EFFECT
ret nc
- ld hl, UnnamedText_3f547 ; $7547
+ ld hl, RoseText
ret
-UnnamedText_3f542: ; 3f542 (f:7542)
+GreatlyRoseText: ; 3f542 (f:7542)
db $0a
- TX_FAR _UnnamedText_3f542
+ TX_FAR _GreatlyRoseText
-UnnamedText_3f547: ; 3f547 (f:7547)
- TX_FAR _UnnamedText_3f547
+RoseText: ; 3f547 (f:7547)
+ TX_FAR _RoseText
db "@"
StatModifierDownEffect: ; 3f54c (f:754c)
@@ -63812,7 +41410,7 @@ asm_3f62c: ; 3f62c (f:762c)
ld a, [H_WHOSETURN] ; $fff3
and a
call nz, Func_3ee19
- ld hl, UnnamedText_3f661 ; $7661
+ ld hl, MonsStatsFellText
call PrintText
call Func_3ed27
jp Func_3ed64
@@ -63826,7 +41424,7 @@ Func_3f650: ; 3f650 (f:7650)
ld a, [de]
cp ATTACK_DOWN_SIDE_EFFECT
ret nc
- ld hl, UnnamedText_3fb3e ; $7b3e
+ ld hl, NothingHappenedText
jp PrintText
Func_3f65a: ; 3f65a (f:765a)
@@ -63835,10 +41433,10 @@ Func_3f65a: ; 3f65a (f:765a)
ret nc
jp Func_3fb4e
-UnnamedText_3f661: ; 3f661 (f:7661)
- TX_FAR _UnnamedText_3f661
+MonsStatsFellText: ; 3f661 (f:7661)
+ TX_FAR _MonsStatsFellText
db $08 ; asm
- ld hl, UnnamedText_3f683 ; $7683
+ ld hl, FellText
ld a, [H_WHOSETURN] ; $fff3
and a
ld a, [W_PLAYERMOVEEFFECT] ; $cfd3
@@ -63849,19 +41447,19 @@ UnnamedText_3f661: ; 3f661 (f:7661)
ret c
cp $44
ret nc
- ld hl, UnnamedText_3f67e ; $767e
+ ld hl, GreatlyFellText
ret
-UnnamedText_3f67e: ; 3f67e (f:767e)
+GreatlyFellText: ; 3f67e (f:767e)
db $0a
- TX_FAR _UnnamedText_3f67e
+ TX_FAR _GreatlyFellText
-UnnamedText_3f683: ; 3f683 (f:7683)
- TX_FAR _UnnamedText_3f683
+FellText: ; 3f683 (f:7683)
+ TX_FAR _FellText
db "@"
Func_3f688: ; 3f688 (f:7688)
- ld hl, StatsTextStrings ; $769f
+ ld hl, StatsTextStrings
ld c, $50
.asm_3f68d
dec b
@@ -63973,7 +41571,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739)
call DelayFrames
ld a, [W_PLAYERMOVENUM] ; $cfd2
cp TELEPORT
- jp nz, Func_3fb5e
+ jp nz, PrintDidntAffectText
jp PrintButItFailedText_
.asm_3f76e
call ReadPlayerMonCurHPAndStatus
@@ -63986,7 +41584,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739)
.asm_3f77e
ld c, $32
call DelayFrames
- ld hl, IsUnaffectedText ; $7b69
+ ld hl, IsUnaffectedText
ld a, [W_PLAYERMOVENUM] ; $cfd2
cp TELEPORT
jp nz, PrintText
@@ -64015,7 +41613,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739)
call DelayFrames
ld a, [W_ENEMYMOVENUM] ; $cfcc
cp TELEPORT
- jp nz, Func_3fb5e
+ jp nz, PrintDidntAffectText
jp PrintButItFailedText_
.asm_3f7c1
call ReadPlayerMonCurHPAndStatus
@@ -64028,7 +41626,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739)
.asm_3f7d1
ld c, $32
call DelayFrames
- ld hl, IsUnaffectedText ; $7b69
+ ld hl, IsUnaffectedText
ld a, [W_ENEMYMOVENUM] ; $cfcc
cp TELEPORT
jp nz, PrintText
@@ -64431,7 +42029,7 @@ LeechSeedEffect: ; 3fa7c (f:7a7c)
SplashEffect: ; 3fa84 (f:7a84)
call Func_3fba8
- jp Func_3fb43
+ jp PrintNoEffectText
DisableEffect: ; 3fa8a (f:7a8a)
call MoveHitTest
@@ -64547,11 +42145,11 @@ ReflectLightScreenEffect: ; 3fb36 (f:7b36)
ld b, BANK(ReflectLightScreenEffect_)
jp Bankswitch
-UnnamedText_3fb3e: ; 3fb3e (f:7b3e)
- TX_FAR _UnnamedText_3fb3e
+NothingHappenedText: ; 3fb3e (f:7b3e)
+ TX_FAR _NothingHappenedText
db "@"
-Func_3fb43: ; 3fb43 (f:7b43)
+PrintNoEffectText: ; 3fb43 (f:7b43)
ld hl, NoEffectText
jp PrintText
@@ -64565,15 +42163,15 @@ Func_3fb4e: ; 3fb4e (f:7b4e)
ret nz
PrintButItFailedText_: ; 3fb53 (f:7b53)
- ld hl, ButItFailedText ; $7b59
+ ld hl, ButItFailedText
jp PrintText
ButItFailedText: ; 3fb59 (f:7b59)
TX_FAR _ButItFailedText
db "@"
-Func_3fb5e: ; 3fb5e (f:7b5e)
- ld hl, DidntAffectText ; $7b64
+PrintDidntAffectText: ; 3fb5e (f:7b5e)
+ ld hl, DidntAffectText
jp PrintText
DidntAffectText: ; 3fb64 (f:7b64)
@@ -64584,7 +42182,7 @@ IsUnaffectedText: ; 3fb69 (f:7b69)
TX_FAR _IsUnaffectedText
db "@"
-Func_3fb6e: ; 3fb6e (f:7b6e)
+PrintMayNotAttackText: ; 3fb6e (f:7b6e)
ld hl, ParalyzedMayNotAttackText ; $7b74
jp PrintText
@@ -65289,1265 +42887,7 @@ DrawTileLine: ; 40474 (10:4474)
pop bc
ret
-PokedexEntryPointers: ; 4047e (10:447e)
- dw RhydonDexEntry
- dw KangaskhanDexEntry
- dw NidoranMDexEntry
- dw ClefairyDexEntry
- dw SpearowDexEntry
- dw VoltorbDexEntry
- dw NidokingDexEntry
- dw SlowbroDexEntry
- dw IvysaurDexEntry
- dw ExeggutorDexEntry
- dw LickitungDexEntry
- dw ExeggcuteDexEntry
- dw GrimerDexEntry
- dw GengarDexEntry
- dw NidoranFDexEntry
- dw NidoqueenDexEntry
- dw CuboneDexEntry
- dw RhyhornDexEntry
- dw LaprasDexEntry
- dw ArcanineDexEntry
- dw MewDexEntry
- dw GyaradosDexEntry
- dw ShellderDexEntry
- dw TentacoolDexEntry
- dw GastlyDexEntry
- dw ScytherDexEntry
- dw StaryuDexEntry
- dw BlastoiseDexEntry
- dw PinsirDexEntry
- dw TangelaDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw GrowlitheDexEntry
- dw OnixDexEntry
- dw FearowDexEntry
- dw PidgeyDexEntry
- dw SlowpokeDexEntry
- dw KadabraDexEntry
- dw GravelerDexEntry
- dw ChanseyDexEntry
- dw MachokeDexEntry
- dw MrMimeDexEntry
- dw HitmonleeDexEntry
- dw HitmonchanDexEntry
- dw ArbokDexEntry
- dw ParasectDexEntry
- dw PsyduckDexEntry
- dw DrowzeeDexEntry
- dw GolemDexEntry
- dw MissingNoDexEntry
- dw MagmarDexEntry
- dw MissingNoDexEntry
- dw ElectabuzzDexEntry
- dw MagnetonDexEntry
- dw KoffingDexEntry
- dw MissingNoDexEntry
- dw MankeyDexEntry
- dw SeelDexEntry
- dw DiglettDexEntry
- dw TaurosDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw FarfetchdDexEntry
- dw VenonatDexEntry
- dw DragoniteDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw DoduoDexEntry
- dw PoliwagDexEntry
- dw JynxDexEntry
- dw MoltresDexEntry
- dw ArticunoDexEntry
- dw ZapdosDexEntry
- dw DittoDexEntry
- dw MeowthDexEntry
- dw KrabbyDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw VulpixDexEntry
- dw NinetalesDexEntry
- dw PikachuDexEntry
- dw RaichuDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw DratiniDexEntry
- dw DragonairDexEntry
- dw KabutoDexEntry
- dw KabutopsDexEntry
- dw HorseaDexEntry
- dw SeadraDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw SandshrewDexEntry
- dw SandslashDexEntry
- dw OmanyteDexEntry
- dw OmastarDexEntry
- dw JigglypuffDexEntry
- dw WigglytuffDexEntry
- dw EeveeDexEntry
- dw FlareonDexEntry
- dw JolteonDexEntry
- dw VaporeonDexEntry
- dw MachopDexEntry
- dw ZubatDexEntry
- dw EkansDexEntry
- dw ParasDexEntry
- dw PoliwhirlDexEntry
- dw PoliwrathDexEntry
- dw WeedleDexEntry
- dw KakunaDexEntry
- dw BeedrillDexEntry
- dw MissingNoDexEntry
- dw DodrioDexEntry
- dw PrimeapeDexEntry
- dw DugtrioDexEntry
- dw VenomothDexEntry
- dw DewgongDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw CaterpieDexEntry
- dw MetapodDexEntry
- dw ButterfreeDexEntry
- dw MachampDexEntry
- dw MissingNoDexEntry
- dw GolduckDexEntry
- dw HypnoDexEntry
- dw GolbatDexEntry
- dw MewtwoDexEntry
- dw SnorlaxDexEntry
- dw MagikarpDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MukDexEntry
- dw MissingNoDexEntry
- dw KinglerDexEntry
- dw CloysterDexEntry
- dw MissingNoDexEntry
- dw ElectrodeDexEntry
- dw ClefableDexEntry
- dw WeezingDexEntry
- dw PersianDexEntry
- dw MarowakDexEntry
- dw MissingNoDexEntry
- dw HaunterDexEntry
- dw AbraDexEntry
- dw AlakazamDexEntry
- dw PidgeottoDexEntry
- dw PidgeotDexEntry
- dw StarmieDexEntry
- dw BulbasaurDexEntry
- dw VenusaurDexEntry
- dw TentacruelDexEntry
- dw MissingNoDexEntry
- dw GoldeenDexEntry
- dw SeakingDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw PonytaDexEntry
- dw RapidashDexEntry
- dw RattataDexEntry
- dw RaticateDexEntry
- dw NidorinoDexEntry
- dw NidorinaDexEntry
- dw GeodudeDexEntry
- dw PorygonDexEntry
- dw AerodactylDexEntry
- dw MissingNoDexEntry
- dw MagnemiteDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw CharmanderDexEntry
- dw SquirtleDexEntry
- dw CharmeleonDexEntry
- dw WartortleDexEntry
- dw CharizardDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw MissingNoDexEntry
- dw OddishDexEntry
- dw GloomDexEntry
- dw VileplumeDexEntry
- dw BellsproutDexEntry
- dw WeepinbellDexEntry
- dw VictreebelDexEntry
-
-; string: species name
-; height in feet, inches
-; weight in pounds
-; text entry
-
-RhydonDexEntry: ; 405fa (10:45fa)
- db "DRILL@"
- db 6,3
- dw 2650
- TX_FAR _RhydonDexEntry
- db "@"
-
-KangaskhanDexEntry: ; 40609 (10:4609)
- db "PARENT@"
- db 7,3
- dw 1760
- TX_FAR _KangaskhanDexEntry
- db "@"
-
-NidoranMDexEntry: ; 40619 (10:4619)
- db "POISON PIN@"
- db 1,8
- dw 200
- TX_FAR _NidoranMDexEntry
- db "@"
-
-ClefairyDexEntry: ; 4062d (10:462d)
- db "FAIRY@"
- db 2,0
- dw 170
- TX_FAR _ClefairyDexEntry
- db "@"
-
-SpearowDexEntry: ; 4063c (10:463c)
- db "TINY BIRD@"
- db 1,0
- dw 40
- TX_FAR _SpearowDexEntry
- db "@"
-
-VoltorbDexEntry: ; 4064f (10:464f)
- db "BALL@"
- db 1,8
- dw 230
- TX_FAR _VoltorbDexEntry
- db "@"
-
-NidokingDexEntry: ; 4065d (10:465d)
- db "DRILL@"
- db 4,7
- dw 1370
- TX_FAR _NidokingDexEntry
- db "@"
-
-SlowbroDexEntry: ; 4066c (10:466c)
- db "HERMITCRAB@"
- db 5,3
- dw 1730
- TX_FAR _SlowbroDexEntry
- db "@"
-
-IvysaurDexEntry: ; 40680 (10:4680)
- db "SEED@"
- db 3,3
- dw 290
- TX_FAR _IvysaurDexEntry
- db "@"
-
-ExeggutorDexEntry: ; 4068e (10:468e)
- db "COCONUT@"
- db 6,7
- dw 2650
- TX_FAR _ExeggutorDexEntry
- db "@"
-
-LickitungDexEntry: ; 4069f (10:469f)
- db "LICKING@"
- db 3,11
- dw 1440
- TX_FAR _LickitungDexEntry
- db "@"
-
-ExeggcuteDexEntry: ; 406b0 (10:46b0)
- db "EGG@"
- db 1,4
- dw 60
- TX_FAR _ExeggcuteDexEntry
- db "@"
-
-GrimerDexEntry: ; 406bd (10:46bd)
- db "SLUDGE@"
- db 2,11
- dw 660
- TX_FAR _GrimerDexEntry
- db "@"
-
-GengarDexEntry: ; 406cd (10:46cd)
- db "SHADOW@"
- db 4,11
- dw 890
- TX_FAR _GengarDexEntry
- db "@"
-
-NidoranFDexEntry: ; 406dd (10:46dd)
- db "POISON PIN@"
- db 1,4
- dw 150
- TX_FAR _NidoranFDexEntry
- db "@"
-
-NidoqueenDexEntry: ; 406f1 (10:46f1)
- db "DRILL@"
- db 4,3
- dw 1320
- TX_FAR _NidoqueenDexEntry
- db "@"
-
-CuboneDexEntry: ; 40700 (10:4700)
- db "LONELY@"
- db 1,4
- dw 140
- TX_FAR _CuboneDexEntry
- db "@"
-
-RhyhornDexEntry: ; 40710 (10:4710)
- db "SPIKES@"
- db 3,3
- dw 2540
- TX_FAR _RhyhornDexEntry
- db "@"
-
-LaprasDexEntry: ; 40720 (10:4720)
- db "TRANSPORT@"
- db 8,2
- dw 4850
- TX_FAR _LaprasDexEntry
- db "@"
-
-ArcanineDexEntry: ; 40733 (10:4733)
- db "LEGENDARY@"
- db 6,3
- dw 3420
- TX_FAR _ArcanineDexEntry
- db "@"
-
-MewDexEntry: ; 40746 (10:4746)
- db "NEW SPECIE@"
- db 1,4
- dw 90
- TX_FAR _MewDexEntry
- db "@"
-
-GyaradosDexEntry: ; 4075a (10:475a)
- db "ATROCIOUS@"
- db 21,4
- dw 5180
- TX_FAR _GyaradosDexEntry
- db "@"
-
-ShellderDexEntry: ; 4076d (10:476d)
- db "BIVALVE@"
- db 1,0
- dw 90
- TX_FAR _ShellderDexEntry
- db "@"
-
-TentacoolDexEntry: ; 4077e (10:477e)
- db "JELLYFISH@"
- db 2,11
- dw 1000
- TX_FAR _TentacoolDexEntry
- db "@"
-
-GastlyDexEntry: ; 40791 (10:4791)
- db "GAS@"
- db 4,3
- dw 2
- TX_FAR _GastlyDexEntry
- db "@"
-
-ScytherDexEntry: ; 4079e (10:479e)
- db "MANTIS@"
- db 4,11
- dw 1230
- TX_FAR _ScytherDexEntry
- db "@"
-
-StaryuDexEntry: ; 407ae (10:47ae)
- db "STARSHAPE@"
- db 2,7
- dw 760
- TX_FAR _StaryuDexEntry
- db "@"
-
-BlastoiseDexEntry: ; 407c1 (10:47c1)
- db "SHELLFISH@"
- db 5,3
- dw 1890
- TX_FAR _BlastoiseDexEntry
- db "@"
-
-PinsirDexEntry: ; 407d4 (10:47d4)
- db "STAGBEETLE@"
- db 4,11
- dw 1210
- TX_FAR _PinsirDexEntry
- db "@"
-
-TangelaDexEntry: ; 407e8 (10:47e8)
- db "VINE@"
- db 3,3
- dw 770
- TX_FAR _TangelaDexEntry
- db "@"
-
-GrowlitheDexEntry: ; 407f6 (10:47f6)
- db "PUPPY@"
- db 2,4
- dw 420
- TX_FAR _GrowlitheDexEntry
- db "@"
-
-OnixDexEntry: ; 40805 (10:4805)
- db "ROCK SNAKE@"
- db 28,10
- dw 4630
- TX_FAR _OnixDexEntry
- db "@"
-
-FearowDexEntry: ; 40819 (10:4819)
- db "BEAK@"
- db 3,11
- dw 840
- TX_FAR _FearowDexEntry
- db "@"
-
-PidgeyDexEntry: ; 40827 (10:4827)
- db "TINY BIRD@"
- db 1,0
- dw 40
- TX_FAR _PidgeyDexEntry
- db "@"
-
-SlowpokeDexEntry: ; 4083a (10:483a)
- db "DOPEY@"
- db 3,11
- dw 790
- TX_FAR _SlowpokeDexEntry
- db "@"
-
-KadabraDexEntry: ; 40849 (10:4849)
- db "PSI@"
- db 4,3
- dw 1250
- TX_FAR _KadabraDexEntry
- db "@"
-
-GravelerDexEntry: ; 40856 (10:4856)
- db "ROCK@"
- db 3,3
- dw 2320
- TX_FAR _GravelerDexEntry
- db "@"
-
-ChanseyDexEntry: ; 40864 (10:4864)
- db "EGG@"
- db 3,7
- dw 760
- TX_FAR _ChanseyDexEntry
- db "@"
-
-MachokeDexEntry: ; 40871 (10:4871)
- db "SUPERPOWER@"
- db 4,11
- dw 1550
- TX_FAR _MachokeDexEntry
- db "@"
-
-MrMimeDexEntry: ; 40885 (10:4885)
- db "BARRIER@"
- db 4,3
- dw 1200
- TX_FAR _MrMimeDexEntry
- db "@"
-
-HitmonleeDexEntry: ; 40896 (10:4896)
- db "KICKING@"
- db 4,11
- dw 1100
- TX_FAR _HitmonleeDexEntry
- db "@"
-
-HitmonchanDexEntry: ; 408a7 (10:48a7)
- db "PUNCHING@"
- db 4,7
- dw 1110
- TX_FAR _HitmonchanDexEntry
- db "@"
-
-ArbokDexEntry: ; 408b9 (10:48b9)
- db "COBRA@"
- db 11,6
- dw 1430
- TX_FAR _ArbokDexEntry
- db "@"
-
-ParasectDexEntry: ; 408c8 (10:48c8)
- db "MUSHROOM@"
- db 3,3
- dw 650
- TX_FAR _ParasectDexEntry
- db "@"
-
-PsyduckDexEntry: ; 408da (10:48da)
- db "DUCK@"
- db 2,7
- dw 430
- TX_FAR _PsyduckDexEntry
- db "@"
-
-DrowzeeDexEntry: ; 408e8 (10:48e8)
- db "HYPNOSIS@"
- db 3,3
- dw 710
- TX_FAR _DrowzeeDexEntry
- db "@"
-
-GolemDexEntry: ; 408fa (10:48fa)
- db "MEGATON@"
- db 4,7
- dw 6620
- TX_FAR _GolemDexEntry
- db "@"
-
-MagmarDexEntry: ; 4090b (10:490b)
- db "SPITFIRE@"
- db 4,3
- dw 980
- TX_FAR _MagmarDexEntry
- db "@"
-
-ElectabuzzDexEntry: ; 4091d (10:491d)
- db "ELECTRIC@"
- db 3,7
- dw 660
- TX_FAR _ElectabuzzDexEntry
- db "@"
-
-MagnetonDexEntry: ; 4092f (10:492f)
- db "MAGNET@"
- db 3,3
- dw 1320
- TX_FAR _MagnetonDexEntry
- db "@"
-
-KoffingDexEntry: ; 4093f (10:493f)
- db "POISON GAS@"
- db 2,0
- dw 20
- TX_FAR _KoffingDexEntry
- db "@"
-
-MankeyDexEntry: ; 40953 (10:4953)
- db "PIG MONKEY@"
- db 1,8
- dw 620
- TX_FAR _MankeyDexEntry
- db "@"
-
-SeelDexEntry: ; 40967 (10:4967)
- db "SEA LION@"
- db 3,7
- dw 1980
- TX_FAR _SeelDexEntry
- db "@"
-
-DiglettDexEntry: ; 40979 (10:4979)
- db "MOLE@"
- db 0,8
- dw 20
- TX_FAR _DiglettDexEntry
- db "@"
-
-TaurosDexEntry: ; 40987 (10:4987)
- db "WILD BULL@"
- db 4,7
- dw 1950
- TX_FAR _TaurosDexEntry
- db "@"
-
-FarfetchdDexEntry: ; 4099a (10:499a)
- db "WILD DUCK@"
- db 2,7
- dw 330
- TX_FAR _FarfetchdDexEntry
- db "@"
-
-VenonatDexEntry: ; 409ad (10:49ad)
- db "INSECT@"
- db 3,3
- dw 660
- TX_FAR _VenonatDexEntry
- db "@"
-
-DragoniteDexEntry: ; 409bd (10:49bd)
- db "DRAGON@"
- db 7,3
- dw 4630
- TX_FAR _DragoniteDexEntry
- db "@"
-
-DoduoDexEntry: ; 409cd (10:49cd)
- db "TWIN BIRD@"
- db 4,7
- dw 860
- TX_FAR _DoduoDexEntry
- db "@"
-
-PoliwagDexEntry: ; 409e0 (10:49e0)
- db "TADPOLE@"
- db 2,0
- dw 270
- TX_FAR _PoliwagDexEntry
- db "@"
-
-JynxDexEntry: ; 409f1 (10:49f1)
- db "HUMANSHAPE@"
- db 4,7
- dw 900
- TX_FAR _JynxDexEntry
- db "@"
-
-MoltresDexEntry: ; 40a05 (10:4a05)
- db "FLAME@"
- db 6,7
- dw 1320
- TX_FAR _MoltresDexEntry
- db "@"
-
-ArticunoDexEntry: ; 40a14 (10:4a14)
- db "FREEZE@"
- db 5,7
- dw 1220
- TX_FAR _ArticunoDexEntry
- db "@"
-
-ZapdosDexEntry: ; 40a24 (10:4a24)
- db "ELECTRIC@"
- db 5,3
- dw 1160
- TX_FAR _ZapdosDexEntry
- db "@"
-
-DittoDexEntry: ; 40a36 (10:4a36)
- db "TRANSFORM@"
- db 1,0
- dw 90
- TX_FAR _DittoDexEntry
- db "@"
-
-MeowthDexEntry: ; 40a49 (10:4a49)
- db "SCRATCHCAT@"
- db 1,4
- dw 90
- TX_FAR _MeowthDexEntry
- db "@"
-
-KrabbyDexEntry: ; 40a5d (10:4a5d)
- db "RIVER CRAB@"
- db 1,4
- dw 140
- TX_FAR _KrabbyDexEntry
- db "@"
-
-VulpixDexEntry: ; 40a71 (10:4a71)
- db "FOX@"
- db 2,0
- dw 220
- TX_FAR _VulpixDexEntry
- db "@"
-
-NinetalesDexEntry: ; 40a7e (10:4a7e)
- db "FOX@"
- db 3,7
- dw 440
- TX_FAR _NinetalesDexEntry
- db "@"
-
-PikachuDexEntry: ; 40a8b (10:4a8b)
- db "MOUSE@"
- db 1,4
- dw 130
- TX_FAR _PikachuDexEntry
- db "@"
-
-RaichuDexEntry: ; 40a9a (10:4a9a)
- db "MOUSE@"
- db 2,7
- dw 660
- TX_FAR _RaichuDexEntry
- db "@"
-
-DratiniDexEntry: ; 40aa9 (10:4aa9)
- db "DRAGON@"
- db 5,11
- dw 70
- TX_FAR _DratiniDexEntry
- db "@"
-
-DragonairDexEntry: ; 40ab9 (10:4ab9)
- db "DRAGON@"
- db 13,1
- dw 360
- TX_FAR _DragonairDexEntry
- db "@"
-
-KabutoDexEntry: ; 40ac9 (10:4ac9)
- db "SHELLFISH@"
- db 1,8
- dw 250
- TX_FAR _KabutoDexEntry
- db "@"
-
-KabutopsDexEntry: ; 40adc (10:4adc)
- db "SHELLFISH@"
- db 4,3
- dw 890
- TX_FAR _KabutopsDexEntry
- db "@"
-
-HorseaDexEntry: ; 40aef (10:4aef)
- db "DRAGON@"
- db 1,4
- dw 180
- TX_FAR _HorseaDexEntry
- db "@"
-
-SeadraDexEntry: ; 40aff (10:4aff)
- db "DRAGON@"
- db 3,11
- dw 550
- TX_FAR _SeadraDexEntry
- db "@"
-
-SandshrewDexEntry: ; 40b0f (10:4b0f)
- db "MOUSE@"
- db 2,0
- dw 260
- TX_FAR _SandshrewDexEntry
- db "@"
-
-SandslashDexEntry: ; 40b1e (10:4b1e)
- db "MOUSE@"
- db 3,3
- dw 650
- TX_FAR _SandslashDexEntry
- db "@"
-
-OmanyteDexEntry: ; 40b2d (10:4b2d)
- db "SPIRAL@"
- db 1,4
- dw 170
- TX_FAR _OmanyteDexEntry
- db "@"
-
-OmastarDexEntry: ; 40b3d (10:4b3d)
- db "SPIRAL@"
- db 3,3
- dw 770
- TX_FAR _OmastarDexEntry
- db "@"
-
-JigglypuffDexEntry: ; 40b4d (10:4b4d)
- db "BALLOON@"
- db 1,8
- dw 120
- TX_FAR _JigglypuffDexEntry
- db "@"
-
-WigglytuffDexEntry: ; 40b5e (10:4b5e)
- db "BALLOON@"
- db 3,3
- dw 260
- TX_FAR _WigglytuffDexEntry
- db "@"
-
-EeveeDexEntry: ; 40b6f (10:4b6f)
- db "EVOLUTION@"
- db 1,0
- dw 140
- TX_FAR _EeveeDexEntry
- db "@"
-
-FlareonDexEntry: ; 40b82 (10:4b82)
- db "FLAME@"
- db 2,11
- dw 550
- TX_FAR _FlareonDexEntry
- db "@"
-
-JolteonDexEntry: ; 40b91 (10:4b91)
- db "LIGHTNING@"
- db 2,7
- dw 540
- TX_FAR _JolteonDexEntry
- db "@"
-
-VaporeonDexEntry: ; 40ba4 (10:4ba4)
- db "BUBBLE JET@"
- db 3,3
- dw 640
- TX_FAR _VaporeonDexEntry
- db "@"
-
-MachopDexEntry: ; 40bb8 (10:4bb8)
- db "SUPERPOWER@"
- db 2,7
- dw 430
- TX_FAR _MachopDexEntry
- db "@"
-
-ZubatDexEntry: ; 40bcc (10:4bcc)
- db "BAT@"
- db 2,7
- dw 170
- TX_FAR _ZubatDexEntry
- db "@"
-
-EkansDexEntry: ; 40bd9 (10:4bd9)
- db "SNAKE@"
- db 6,7
- dw 150
- TX_FAR _EkansDexEntry
- db "@"
-
-ParasDexEntry: ; 40be8 (10:4be8)
- db "MUSHROOM@"
- db 1,0
- dw 120
- TX_FAR _ParasDexEntry
- db "@"
-
-PoliwhirlDexEntry: ; 40bfa (10:4bfa)
- db "TADPOLE@"
- db 3,3
- dw 440
- TX_FAR _PoliwhirlDexEntry
- db "@"
-
-PoliwrathDexEntry: ; 40c0b (10:4c0b)
- db "TADPOLE@"
- db 4,3
- dw 1190
- TX_FAR _PoliwrathDexEntry
- db "@"
-
-WeedleDexEntry: ; 40c1c (10:4c1c)
- db "HAIRY BUG@"
- db 1,0
- dw 70
- TX_FAR _WeedleDexEntry
- db "@"
-
-KakunaDexEntry: ; 40c2f (10:4c2f)
- db "COCOON@"
- db 2,0
- dw 220
- TX_FAR _KakunaDexEntry
- db "@"
-
-BeedrillDexEntry: ; 40c3f (10:4c3f)
- db "POISON BEE@"
- db 3,3
- dw 650
- TX_FAR _BeedrillDexEntry
- db "@"
-
-DodrioDexEntry: ; 40c53 (10:4c53)
- db "TRIPLEBIRD@"
- db 5,11
- dw 1880
- TX_FAR _DodrioDexEntry
- db "@"
-
-PrimeapeDexEntry: ; 40c67 (10:4c67)
- db "PIG MONKEY@"
- db 3,3
- dw 710
- TX_FAR _PrimeapeDexEntry
- db "@"
-
-DugtrioDexEntry: ; 40c7b (10:4c7b)
- db "MOLE@"
- db 2,4
- dw 730
- TX_FAR _DugtrioDexEntry
- db "@"
-
-VenomothDexEntry: ; 40c89 (10:4c89)
- db "POISONMOTH@"
- db 4,11
- dw 280
- TX_FAR _VenomothDexEntry
- db "@"
-
-DewgongDexEntry: ; 40c9d (10:4c9d)
- db "SEA LION@"
- db 5,7
- dw 2650
- TX_FAR _DewgongDexEntry
- db "@"
-
-CaterpieDexEntry: ; 40caf (10:4caf)
- db "WORM@"
- db 1,0
- dw 60
- TX_FAR _CaterpieDexEntry
- db "@"
-
-MetapodDexEntry: ; 40cbd (10:4cbd)
- db "COCOON@"
- db 2,4
- dw 220
- TX_FAR _MetapodDexEntry
- db "@"
-
-ButterfreeDexEntry: ; 40ccd (10:4ccd)
- db "BUTTERFLY@"
- db 3,7
- dw 710
- TX_FAR _ButterfreeDexEntry
- db "@"
-
-MachampDexEntry: ; 40ce0 (10:4ce0)
- db "SUPERPOWER@"
- db 5,3
- dw 2870
- TX_FAR _MachampDexEntry
- db "@"
-
-GolduckDexEntry: ; 40cf4 (10:4cf4)
- db "DUCK@"
- db 5,7
- dw 1690
- TX_FAR _GolduckDexEntry
- db "@"
-
-HypnoDexEntry: ; 40d02 (10:4d02)
- db "HYPNOSIS@"
- db 5,3
- dw 1670
- TX_FAR _HypnoDexEntry
- db "@"
-
-GolbatDexEntry: ; 40d14 (10:4d14)
- db "BAT@"
- db 5,3
- dw 1210
- TX_FAR _GolbatDexEntry
- db "@"
-
-MewtwoDexEntry: ; 40d21 (10:4d21)
- db "GENETIC@"
- db 6,7
- dw 2690
- TX_FAR _MewtwoDexEntry
- db "@"
-
-SnorlaxDexEntry: ; 40d32 (10:4d32)
- db "SLEEPING@"
- db 6,11
- dw 10140
- TX_FAR _SnorlaxDexEntry
- db "@"
-
-MagikarpDexEntry: ; 40d44 (10:4d44)
- db "FISH@"
- db 2,11
- dw 220
- TX_FAR _MagikarpDexEntry
- db "@"
-
-MukDexEntry: ; 40d52 (10:4d52)
- db "SLUDGE@"
- db 3,11
- dw 660
- TX_FAR _MukDexEntry
- db "@"
-
-KinglerDexEntry: ; 40d62 (10:4d62)
- db "PINCER@"
- db 4,3
- dw 1320
- TX_FAR _KinglerDexEntry
- db "@"
-
-CloysterDexEntry: ; 40d72 (10:4d72)
- db "BIVALVE@"
- db 4,11
- dw 2920
- TX_FAR _CloysterDexEntry
- db "@"
-
-ElectrodeDexEntry: ; 40d83 (10:4d83)
- db "BALL@"
- db 3,11
- dw 1470
- TX_FAR _ElectrodeDexEntry
- db "@"
-
-ClefableDexEntry: ; 40d91 (10:4d91)
- db "FAIRY@"
- db 4,3
- dw 880
- TX_FAR _ClefableDexEntry
- db "@"
-
-WeezingDexEntry: ; 40da0 (10:4da0)
- db "POISON GAS@"
- db 3,11
- dw 210
- TX_FAR _WeezingDexEntry
- db "@"
-
-PersianDexEntry: ; 40db4 (10:4db4)
- db "CLASSY CAT@"
- db 3,3
- dw 710
- TX_FAR _PersianDexEntry
- db "@"
-
-MarowakDexEntry: ; 40dc8 (10:4dc8)
- db "BONEKEEPER@"
- db 3,3
- dw 990
- TX_FAR _MarowakDexEntry
- db "@"
-
-HaunterDexEntry: ; 40ddc (10:4ddc)
- db "GAS@"
- db 5,3
- dw 2
- TX_FAR _HaunterDexEntry
- db "@"
-
-AbraDexEntry: ; 40de9 (10:4de9)
- db "PSI@"
- db 2,11
- dw 430
- TX_FAR _AbraDexEntry
- db "@"
-
-AlakazamDexEntry: ; 40df6 (10:4df6)
- db "PSI@"
- db 4,11
- dw 1060
- TX_FAR _AlakazamDexEntry
- db "@"
-
-PidgeottoDexEntry: ; 40e03 (10:4e03)
- db "BIRD@"
- db 3,7
- dw 660
- TX_FAR _PidgeottoDexEntry
- db "@"
-
-PidgeotDexEntry: ; 40e11 (10:4e11)
- db "BIRD@"
- db 4,11
- dw 870
- TX_FAR _PidgeotDexEntry
- db "@"
-
-StarmieDexEntry: ; 40e1f (10:4e1f)
- db "MYSTERIOUS@"
- db 3,7
- dw 1760
- TX_FAR _StarmieDexEntry
- db "@"
-
-BulbasaurDexEntry: ; 40e33 (10:4e33)
- db "SEED@"
- db 2,4
- dw 150
- TX_FAR _BulbasaurDexEntry
- db "@"
-
-VenusaurDexEntry: ; 40e41 (10:4e41)
- db "SEED@"
- db 6,7
- dw 2210
- TX_FAR _VenusaurDexEntry
- db "@"
-
-TentacruelDexEntry: ; 40e4f (10:4e4f)
- db "JELLYFISH@"
- db 5,3
- dw 1210
- TX_FAR _TentacruelDexEntry
- db "@"
-
-GoldeenDexEntry: ; 40e62 (10:4e62)
- db "GOLDFISH@"
- db 2,0
- dw 330
- TX_FAR _GoldeenDexEntry
- db "@"
-
-SeakingDexEntry: ; 40e74 (10:4e74)
- db "GOLDFISH@"
- db 4,3
- dw 860
- TX_FAR _SeakingDexEntry
- db "@"
-
-PonytaDexEntry: ; 40e86 (10:4e86)
- db "FIRE HORSE@"
- db 3,3
- dw 660
- TX_FAR _PonytaDexEntry
- db "@"
-
-RapidashDexEntry: ; 40e9a (10:4e9a)
- db "FIRE HORSE@"
- db 5,7
- dw 2090
- TX_FAR _RapidashDexEntry
- db "@"
-
-RattataDexEntry: ; 40eae (10:4eae)
- db "RAT@"
- db 1,0
- dw 80
- TX_FAR _RattataDexEntry
- db "@"
-
-RaticateDexEntry: ; 40ebb (10:4ebb)
- db "RAT@"
- db 2,4
- dw 410
- TX_FAR _RaticateDexEntry
- db "@"
-
-NidorinoDexEntry: ; 40ec8 (10:4ec8)
- db "POISON PIN@"
- db 2,11
- dw 430
- TX_FAR _NidorinoDexEntry
- db "@"
-
-NidorinaDexEntry: ; 40edc (10:4edc)
- db "POISON PIN@"
- db 2,7
- dw 440
- TX_FAR _NidorinaDexEntry
- db "@"
-
-GeodudeDexEntry: ; 40ef0 (10:4ef0)
- db "ROCK@"
- db 1,4
- dw 440
- TX_FAR _GeodudeDexEntry
- db "@"
-
-PorygonDexEntry: ; 40efe (10:4efe)
- db "VIRTUAL@"
- db 2,7
- dw 800
- TX_FAR _PorygonDexEntry
- db "@"
-
-AerodactylDexEntry: ; 40f0f (10:4f0f)
- db "FOSSIL@"
- db 5,11
- dw 1300
- TX_FAR _AerodactylDexEntry
- db "@"
-
-MagnemiteDexEntry: ; 40f1f (10:4f1f)
- db "MAGNET@"
- db 1,0
- dw 130
- TX_FAR _MagnemiteDexEntry
- db "@"
-
-CharmanderDexEntry: ; 40f2f (10:4f2f)
- db "LIZARD@"
- db 2,0
- dw 190
- TX_FAR _CharmanderDexEntry
- db "@"
-
-SquirtleDexEntry: ; 40f3f (10:4f3f)
- db "TINYTURTLE@"
- db 1,8
- dw 200
- TX_FAR _SquirtleDexEntry
- db "@"
-
-CharmeleonDexEntry: ; 40f53 (10:4f53)
- db "FLAME@"
- db 3,7
- dw 420
- TX_FAR _CharmeleonDexEntry
- db "@"
-
-WartortleDexEntry: ; 40f62 (10:4f62)
- db "TURTLE@"
- db 3,3
- dw 500
- TX_FAR _WartortleDexEntry
- db "@"
-
-CharizardDexEntry: ; 40f72 (10:4f72)
- db "FLAME@"
- db 5,7
- dw 2000
- TX_FAR _CharizardDexEntry
- db "@"
-
-OddishDexEntry: ; 40f81 (10:4f81)
- db "WEED@"
- db 1,8
- dw 120
- TX_FAR _OddishDexEntry
- db "@"
-
-GloomDexEntry: ; 40f8f (10:4f8f)
- db "WEED@"
- db 2,7
- dw 190
- TX_FAR _GloomDexEntry
- db "@"
-
-VileplumeDexEntry: ; 40f9d (10:4f9d)
- db "FLOWER@"
- db 3,11
- dw 410
- TX_FAR _VileplumeDexEntry
- db "@"
-
-BellsproutDexEntry: ; 40fad (10:4fad)
- db "FLOWER@"
- db 2,4
- dw 90
- TX_FAR _BellsproutDexEntry
- db "@"
-
-WeepinbellDexEntry: ; 40fbd (10:4fbd)
- db "FLYCATCHER@"
- db 3,3
- dw 140
- TX_FAR _WeepinbellDexEntry
- db "@"
-
-VictreebelDexEntry: ; 40fd1 (10:4fd1)
- db "FLYCATCHER@"
- db 5,7
- dw 340
- TX_FAR _VictreebelDexEntry
- db "@"
-
-MissingNoDexEntry: ; 40fe5 (10:4fe5)
- db "???@"
- db 10 ; 1.0 m
- db 100 ; 10.0 kg
- db 0,"コメント さくせいちゅう@" ; コメント作成中 (Comment to be written)
+INCLUDE "data/pokedex_entries.asm"
PokedexToIndex: ; 40ff9 (10:4ff9)
; converts the Pokédex number at $D11E to an index
@@ -66586,197 +42926,7 @@ IndexToPokedex: ; 41010 (10:5010)
pop bc
ret
-PokedexOrder: ; 41024 (10:5024)
- db DEX_RHYDON
- db DEX_KANGASKHAN
- db DEX_NIDORAN_M
- db DEX_CLEFAIRY
- db DEX_SPEAROW
- db DEX_VOLTORB
- db DEX_NIDOKING
- db DEX_SLOWBRO
- db DEX_IVYSAUR
- db DEX_EXEGGUTOR
- db DEX_LICKITUNG
- db DEX_EXEGGCUTE
- db DEX_GRIMER
- db DEX_GENGAR
- db DEX_NIDORAN_F
- db DEX_NIDOQUEEN
- db DEX_CUBONE
- db DEX_RHYHORN
- db DEX_LAPRAS
- db DEX_ARCANINE
- db DEX_MEW
- db DEX_GYARADOS
- db DEX_SHELLDER
- db DEX_TENTACOOL
- db DEX_GASTLY
- db DEX_SCYTHER
- db DEX_STARYU
- db DEX_BLASTOISE
- db DEX_PINSIR
- db DEX_TANGELA
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_GROWLITHE
- db DEX_ONIX
- db DEX_FEAROW
- db DEX_PIDGEY
- db DEX_SLOWPOKE
- db DEX_KADABRA
- db DEX_GRAVELER
- db DEX_CHANSEY
- db DEX_MACHOKE
- db DEX_MR_MIME
- db DEX_HITMONLEE
- db DEX_HITMONCHAN
- db DEX_ARBOK
- db DEX_PARASECT
- db DEX_PSYDUCK
- db DEX_DROWZEE
- db DEX_GOLEM
- db 0 ; MISSINGNO.
- db DEX_MAGMAR
- db 0 ; MISSINGNO.
- db DEX_ELECTABUZZ
- db DEX_MAGNETON
- db DEX_KOFFING
- db 0 ; MISSINGNO.
- db DEX_MANKEY
- db DEX_SEEL
- db DEX_DIGLETT
- db DEX_TAUROS
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_FARFETCH_D
- db DEX_VENONAT
- db DEX_DRAGONITE
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_DODUO
- db DEX_POLIWAG
- db DEX_JYNX
- db DEX_MOLTRES
- db DEX_ARTICUNO
- db DEX_ZAPDOS
- db DEX_DITTO
- db DEX_MEOWTH
- db DEX_KRABBY
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_VULPIX
- db DEX_NINETALES
- db DEX_PIKACHU
- db DEX_RAICHU
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_DRATINI
- db DEX_DRAGONAIR
- db DEX_KABUTO
- db DEX_KABUTOPS
- db DEX_HORSEA
- db DEX_SEADRA
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_SANDSHREW
- db DEX_SANDSLASH
- db DEX_OMANYTE
- db DEX_OMASTAR
- db DEX_JIGGLYPUFF
- db DEX_WIGGLYTUFF
- db DEX_EEVEE
- db DEX_FLAREON
- db DEX_JOLTEON
- db DEX_VAPOREON
- db DEX_MACHOP
- db DEX_ZUBAT
- db DEX_EKANS
- db DEX_PARAS
- db DEX_POLIWHIRL
- db DEX_POLIWRATH
- db DEX_WEEDLE
- db DEX_KAKUNA
- db DEX_BEEDRILL
- db 0 ; MISSINGNO.
- db DEX_DODRIO
- db DEX_PRIMEAPE
- db DEX_DUGTRIO
- db DEX_VENOMOTH
- db DEX_DEWGONG
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_CATERPIE
- db DEX_METAPOD
- db DEX_BUTTERFREE
- db DEX_MACHAMP
- db 0 ; MISSINGNO.
- db DEX_GOLDUCK
- db DEX_HYPNO
- db DEX_GOLBAT
- db DEX_MEWTWO
- db DEX_SNORLAX
- db DEX_MAGIKARP
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_MUK
- db 0 ; MISSINGNO.
- db DEX_KINGLER
- db DEX_CLOYSTER
- db 0 ; MISSINGNO.
- db DEX_ELECTRODE
- db DEX_CLEFABLE
- db DEX_WEEZING
- db DEX_PERSIAN
- db DEX_MAROWAK
- db 0 ; MISSINGNO.
- db DEX_HAUNTER
- db DEX_ABRA
- db DEX_ALAKAZAM
- db DEX_PIDGEOTTO
- db DEX_PIDGEOT
- db DEX_STARMIE
- db DEX_BULBASAUR
- db DEX_VENUSAUR
- db DEX_TENTACRUEL
- db 0 ; MISSINGNO.
- db DEX_GOLDEEN
- db DEX_SEAKING
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_PONYTA
- db DEX_RAPIDASH
- db DEX_RATTATA
- db DEX_RATICATE
- db DEX_NIDORINO
- db DEX_NIDORINA
- db DEX_GEODUDE
- db DEX_PORYGON
- db DEX_AERODACTYL
- db 0 ; MISSINGNO.
- db DEX_MAGNEMITE
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_CHARMANDER
- db DEX_SQUIRTLE
- db DEX_CHARMELEON
- db DEX_WARTORTLE
- db DEX_CHARIZARD
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db 0 ; MISSINGNO.
- db DEX_ODDISH
- db DEX_GLOOM
- db DEX_VILEPLUME
- db DEX_BELLSPROUT
- db DEX_WEEPINBELL
- db DEX_VICTREEBEL
+INCLUDE "data/pokedex_order.asm"
Func_410e2: ; 410e2 (10:50e2)
ld a, [wWhichTrade] ; $cd3d
@@ -66840,7 +42990,7 @@ PointerIDs_41149: ; 41149 (10:5149)
db $00,$08,$0D,$0B,$10,$05,$10,$08,$02,$04,$0F,$01,$02,$03,$10,$06,$10,$07,$08,$09,$0E,$FF
PointerTable_4115f: ; 4115f (10:515f)
- dw Func_411a1
+ dw LoadTradingGFXAndMonNames
dw Func_41245
dw Func_41298
dw Func_412d2
@@ -66880,7 +43030,7 @@ Func_41196: ; 41196 (10:5196)
ld a, $7f
jp FillMemory
-Func_411a1: ; 411a1 (10:51a1)
+LoadTradingGFXAndMonNames: ; 411a1 (10:51a1)
call Func_41196
call DisableLCD
ld hl, TradingAnimationGraphics ; $69be
@@ -67474,72 +43624,72 @@ Func_415df: ; 415df (10:55df)
ret
Func_415fe: ; 415fe (10:55fe)
- ld hl, UnnamedText_4160c ; $560c
+ ld hl, TradeWentToText
call PrintText
ld c, $c8
call DelayFrames
jp Func_415df
-UnnamedText_4160c: ; 4160c (10:560c)
- TX_FAR _UnnamedText_4160c
+TradeWentToText: ; 4160c (10:560c)
+ TX_FAR _TradeWentToText
db "@"
Func_41611: ; 41611 (10:5611)
- ld hl, UnnamedText_41623 ; $5623
+ ld hl, TradeForText
call PrintText
call Delay50
- ld hl, UnnamedText_41628 ; $5628
+ ld hl, TradeSendsText
call PrintText
jp Delay50
-UnnamedText_41623: ; 41623 (10:5623)
- TX_FAR _UnnamedText_41623
+TradeForText: ; 41623 (10:5623)
+ TX_FAR _TradeForText
db "@"
-UnnamedText_41628: ; 41628 (10:5628)
- TX_FAR _UnnamedText_41628
+TradeSendsText: ; 41628 (10:5628)
+ TX_FAR _TradeSendsText
db "@"
Func_4162d: ; 4162d (10:562d)
- ld hl, UnnamedText_41642 ; $5642
+ ld hl, TradeWavesFarewellText
call PrintText
call Delay50
- ld hl, UnnamedText_41647 ; $5647
+ ld hl, TradeTransferredText
call PrintText
call Delay50
jp Func_415df
-UnnamedText_41642: ; 41642 (10:5642)
- TX_FAR _UnnamedText_41642
+TradeWavesFarewellText: ; 41642 (10:5642)
+ TX_FAR _TradeWavesFarewellText
db "@"
-UnnamedText_41647: ; 41647 (10:5647)
- TX_FAR _UnnamedText_41647
+TradeTransferredText: ; 41647 (10:5647)
+ TX_FAR _TradeTransferredText
db "@"
Func_4164c: ; 4164c (10:564c)
- ld hl, UnnamedText_41655 ; $5655
+ ld hl, TradeTakeCareText
call PrintText
jp Delay50
-UnnamedText_41655: ; 41655 (10:5655)
- TX_FAR _UnnamedText_41655
+TradeTakeCareText: ; 41655 (10:5655)
+ TX_FAR _TradeTakeCareText
db "@"
Func_4165a: ; 4165a (10:565a)
- ld hl, UnnamedText_4166c
+ ld hl, TradeWillTradeText
call PrintText
call Delay50
- ld hl, UnnamedText_41671
+ ld hl, TradeforText
call PrintText
jp Delay50
-UnnamedText_4166c: ; 4166c (10:566c)
- TX_FAR _UnnamedText_4166c
+TradeWillTradeText: ; 4166c (10:566c)
+ TX_FAR _TradeWillTradeText
db "@"
-UnnamedText_41671: ; 41671 (10:5671)
- TX_FAR _UnnamedText_41671
+TradeforText: ; 41671 (10:5671)
+ TX_FAR _TradeforText
db "@"
Func_41676: ; 41676 (10:5676)
@@ -67824,7 +43974,7 @@ Func_41849: ; 41849 (10:5849)
ld a, b
jp PlaySound
-Func_41852: ; 41852 (10:5852)
+LoadIntroGraphics: ; 41852 (10:5852)
ld hl, FightIntroBackMon ; $5a99
ld de, $9000
ld bc, $600
@@ -67859,14 +44009,14 @@ Func_4188a: ; 4188a (10:588a)
xor a
ld [W_CUROPPONENT], a ; $d059
call Func_418e9
- call Func_41852
+ call LoadIntroGraphics
call EnableLCD
ld hl, rLCDC ; $ff40
res 5, [hl]
set 3, [hl]
ld c, $40
call DelayFrames
- callba Func_70044
+ callba AnimateShootingStar
push af
pop af
jr c, .asm_418d0
@@ -67907,7 +44057,7 @@ IntroNidorinoAnimation0: ; 4190d (10:590d)
db $50
IntroNidorinoAnimation1: ; 41910 (10:5910)
-; This is a sequence of pixel movements for part of the Nidorino animation. This
+; This is a sequence of pixel movements for part of the Nidorino animation. This
; list describes how Nidorino should hop.
; First byte is y movement, second byte is x movement
db 0, 0
@@ -67915,7 +44065,7 @@ IntroNidorinoAnimation1: ; 41910 (10:5910)
db -1, 2
db 1, 2
db 2, 2
- db $50 ; list terminator
+ db $50 ; list terminator
IntroNidorinoAnimation2: ; 4191b (10:591b)
; This is a sequence of pixel movements for part of the Nidorino animation.
@@ -67935,7 +44085,7 @@ IntroNidorinoAnimation3: ; 41926 (10:5926)
db -8, 6
db 8, 6
db 12, 6
- db $50 ; list terminator
+ db $50 ; list terminator
IntroNidorinoAnimation4: ; 41931 (10:5931)
; This is a sequence of pixel movements for part of the Nidorino animation.
@@ -67973,7 +44123,7 @@ IntroNidorinoAnimation7: ; 41950 (10:5950)
db -7, -14
db -6, -12
db -4, -10
- db $50 ; list terminator
+ db $50 ; list terminator
GameFreakIntro: ; 41959 (10:5959)
INCBIN "gfx/gamefreak_intro.h8.2bpp"
@@ -68063,47 +44213,9 @@ OTString67E5: ; 427e5 (10:67e5)
SECTION "bank11",ROMX,BANK[$11]
-LavenderTown_h: ; 0x44000 to 0x4402d (45 bytes) (bank=11) (id=4)
- db OVERWORLD ; tileset
- db LAVENDER_TOWN_HEIGHT, LAVENDER_TOWN_WIDTH ; dimensions (y, x)
- dw LavenderTownBlocks, LavenderTownTextPointers, LavenderTownScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, ROUTE_10_HEIGHT, 0, 0, ROUTE_10_WIDTH, Route10Blocks
- SOUTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, 0, 0, ROUTE_12_WIDTH, Route12Blocks, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT
- WEST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 0, 0, ROUTE_8_HEIGHT, Route8Blocks, LAVENDER_TOWN_WIDTH
- dw LavenderTownObject ; objects
-
-LavenderTownObject: ; 0x4402d (size=88)
- db $2c ; border tile
-
- db $6 ; warps
- db $5, $3, $0, LAVENDER_POKECENTER
- db $5, $e, $0, POKEMONTOWER_1
- db $9, $7, $0, LAVENDER_HOUSE_1
- db $d, $f, $0, LAVENDER_MART
- db $d, $3, $0, LAVENDER_HOUSE_2
- db $d, $7, $0, NAME_RATERS_HOUSE
-
- db $6 ; signs
- db $9, $b, $4 ; LavenderTownText4
- db $3, $9, $5 ; LavenderTownText5
- db $d, $10, $6 ; MartSignText
- db $5, $4, $7 ; PokeCenterSignText
- db $9, $5, $8 ; LavenderTownText8
- db $7, $11, $9 ; LavenderTownText9
-
- db $3 ; people
- db SPRITE_LITTLE_GIRL, $9 + 4, $f + 4, $fe, $0, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $9 + 4, $ff, $ff, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $8 + 4, $fe, $2, $3 ; person
-
- ; warp-to
- EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $3 ; LAVENDER_POKECENTER
- EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $e ; POKEMONTOWER_1
- EVENT_DISP LAVENDER_TOWN_WIDTH, $9, $7 ; LAVENDER_HOUSE_1
- EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $f ; LAVENDER_MART
- EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $3 ; LAVENDER_HOUSE_2
- EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $7 ; NAME_RATERS_HOUSE
+INCLUDE "data/mapHeaders/lavendertown.asm"
+
+INCLUDE "data/mapObjects/lavendertown.asm"
LavenderTownBlocks: ; 44085 (11:4085)
INCBIN "maps/lavendertown.blk"
@@ -68117,69 +44229,7 @@ SafariZoneRestHouse3Blocks: ; 440fb (11:40fb)
SafariZoneRestHouse4Blocks: ; 440fb (11:40fb)
INCBIN "maps/safarizoneresthouse1.blk"
-LavenderTownScript: ; 4410b (11:410b)
- jp EnableAutoTextBoxDrawing
-
-LavenderTownTextPointers: ; 4410e (11:410e)
- dw LavenderTownText1
- dw LavenderTownText2
- dw LavenderTownText3
- dw LavenderTownText4
- dw LavenderTownText5
- dw MartSignText
- dw PokeCenterSignText
- dw LavenderTownText8
- dw LavenderTownText9
-
-LavenderTownText1: ; 44120 (11:4120)
- db $08 ; asm
- ld hl, UnnamedText_4413c
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- ld hl, UnnamedText_44146
- jr nz, .asm_40831 ; 0x44131
- ld hl, UnnamedText_44141
-.asm_40831 ; 0x44136
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_4413c: ; 4413c (11:413c)
- TX_FAR _UnnamedText_4413c
- db "@"
-
-UnnamedText_44141: ; 44141 (11:4141)
- TX_FAR _UnnamedText_44141
- db "@"
-
-UnnamedText_44146: ; 44146 (11:4146)
- TX_FAR _UnnamedText_44146
- db "@"
-
-LavenderTownText2: ; 4414b (11:414b)
- TX_FAR _LavenderTownText2
- db "@"
-
-LavenderTownText3: ; 44150 (11:4150)
- TX_FAR _LavenderTownText3
- db "@"
-
-LavenderTownText4: ; 44155 (11:4155)
- TX_FAR _LavenderTownText4
- db "@"
-
-LavenderTownText5: ; 4415a (11:415a)
- TX_FAR _LavenderTownText5
- db "@"
-
-LavenderTownText8: ; 4415f (11:415f)
- TX_FAR _LavenderTownText8
- db "@"
-
-LavenderTownText9: ; 44164 (11:4164)
- TX_FAR _LavenderTownText9
- db "@"
+INCLUDE "scripts/lavendertown.asm"
DisplayDexRating: ; 44169 (11:4169)
ld hl, wPokedexSeen
@@ -68212,7 +44262,7 @@ DisplayDexRating: ; 44169 (11:4169)
ld [$D747], a
jr nz, .label3
push hl
- ld hl, UnnamedText_441cc
+ ld hl, PokedexRatingText_441cc
call PrintText
pop hl
call PrintText
@@ -68237,3806 +44287,323 @@ DisplayDexRating: ; 44169 (11:4169)
ld [de], a
ret
-UnnamedText_441cc: ; 441cc (11:41cc)
- TX_FAR _UnnamedText_441cc
+PokedexRatingText_441cc: ; 441cc (11:41cc)
+ TX_FAR _OaksLabText_441cc
db "@"
DexRatingsTable: ; 441d1 (11:41d1)
db 10
- dw UnnamedText_44201
+ dw PokedexRatingText_44201
db 20
- dw UnnamedText_44206
+ dw PokedexRatingText_44206
db 30
- dw UnnamedText_4420b
+ dw PokedexRatingText_4420b
db 40
- dw UnnamedText_44210
+ dw PokedexRatingText_44210
db 50
- dw UnnamedText_44215
+ dw PokedexRatingText_44215
db 60
- dw UnnamedText_4421a
+ dw PokedexRatingText_4421a
db 70
- dw UnnamedText_4421f
+ dw PokedexRatingText_4421f
db 80
- dw UnnamedText_44224
+ dw PokedexRatingText_44224
db 90
- dw UnnamedText_44229
+ dw PokedexRatingText_44229
db 100
- dw UnnamedText_4422e
+ dw PokedexRatingText_4422e
db 110
- dw UnnamedText_44233
+ dw PokedexRatingText_44233
db 120
- dw UnnamedText_44238
+ dw PokedexRatingText_44238
db 130
- dw UnnamedText_4423d
+ dw PokedexRatingText_4423d
db 140
- dw UnnamedText_44242
+ dw PokedexRatingText_44242
db 150
- dw UnnamedText_44247
+ dw PokedexRatingText_44247
db 152
- dw UnnamedText_4424c
-
-UnnamedText_44201: ; 44201 (11:4201)
- TX_FAR _UnnamedText_44201
- db "@"
+ dw PokedexRatingText_4424c
-UnnamedText_44206: ; 44206 (11:4206)
- TX_FAR _UnnamedText_44206
+PokedexRatingText_44201: ; 44201 (11:4201)
+ TX_FAR _OaksLabText_44201
db "@"
-UnnamedText_4420b: ; 4420b (11:420b)
- TX_FAR _UnnamedText_4420b
+PokedexRatingText_44206: ; 44206 (11:4206)
+ TX_FAR _OaksLabText_44206
db "@"
-UnnamedText_44210: ; 44210 (11:4210)
- TX_FAR _UnnamedText_44210
+PokedexRatingText_4420b: ; 4420b (11:420b)
+ TX_FAR _OaksLabText_4420b
db "@"
-UnnamedText_44215: ; 44215 (11:4215)
- TX_FAR _UnnamedText_44215
+PokedexRatingText_44210: ; 44210 (11:4210)
+ TX_FAR _OaksLabText_44210
db "@"
-UnnamedText_4421a: ; 4421a (11:421a)
- TX_FAR _UnnamedText_4421a
+PokedexRatingText_44215: ; 44215 (11:4215)
+ TX_FAR _OaksLabText_44215
db "@"
-UnnamedText_4421f: ; 4421f (11:421f)
- TX_FAR _UnnamedText_4421f
+PokedexRatingText_4421a: ; 4421a (11:421a)
+ TX_FAR _OaksLabText_4421a
db "@"
-UnnamedText_44224: ; 44224 (11:4224)
- TX_FAR _UnnamedText_44224
+PokedexRatingText_4421f: ; 4421f (11:421f)
+ TX_FAR _OaksLabText_4421f
db "@"
-UnnamedText_44229: ; 44229 (11:4229)
- TX_FAR _UnnamedText_44229
+PokedexRatingText_44224: ; 44224 (11:4224)
+ TX_FAR _OaksLabText_44224
db "@"
-UnnamedText_4422e: ; 4422e (11:422e)
- TX_FAR _UnnamedText_4422e
+PokedexRatingText_44229: ; 44229 (11:4229)
+ TX_FAR _OaksLabText_44229
db "@"
-UnnamedText_44233: ; 44233 (11:4233)
- TX_FAR _UnnamedText_44233
+PokedexRatingText_4422e: ; 4422e (11:422e)
+ TX_FAR _OaksLabText_4422e
db "@"
-UnnamedText_44238: ; 44238 (11:4238)
- TX_FAR _UnnamedText_44238
+PokedexRatingText_44233: ; 44233 (11:4233)
+ TX_FAR _OaksLabText_44233
db "@"
-UnnamedText_4423d: ; 4423d (11:423d)
- TX_FAR _UnnamedText_4423d
+PokedexRatingText_44238: ; 44238 (11:4238)
+ TX_FAR _OaksLabText_44238
db "@"
-UnnamedText_44242: ; 44242 (11:4242)
- TX_FAR _UnnamedText_44242
+PokedexRatingText_4423d: ; 4423d (11:423d)
+ TX_FAR _OaksLabText_4423d
db "@"
-UnnamedText_44247: ; 44247 (11:4247)
- TX_FAR _UnnamedText_44247
+PokedexRatingText_44242: ; 44242 (11:4242)
+ TX_FAR _OaksLabText_44242
db "@"
-UnnamedText_4424c: ; 4424c (11:424c)
- TX_FAR _UnnamedText_4424c
- db "@"
-
-ViridianPokecenter_h: ; 0x44251 to 0x4425d (12 bytes) (bank=11) (id=41)
- db POKECENTER ; tileset
- db VIRIDIAN_POKECENTER_HEIGHT, VIRIDIAN_POKECENTER_WIDTH ; dimensions (y, x)
- dw ViridianPokecenterBlocks, ViridianPokecenterTextPointers, ViridianPokeCenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianPokecenterObject ; objects
-
-ViridianPokeCenterScript: ; 4425d (11:425d)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-ViridianPokecenterTextPointers: ; 44263 (11:4263)
- dw ViridianPokeCenterText1
- dw ViridianPokeCenterText2
- dw ViridianPokeCenterText3
- dw ViridianPokeCenterText4
-
-ViridianPokeCenterText1: ; 4426b (11:426b)
- db $ff
-
-ViridianPokeCenterText2: ; 4426c (11:426c)
- TX_FAR _ViridianPokeCenterText1
- db "@"
-
-ViridianPokeCenterText3: ; 44271 (11:4271)
- TX_FAR _ViridianPokeCenterText3
- db "@"
-
-ViridianPokeCenterText4: ; 44276 (11:4276)
- db $f6
-
-ViridianPokecenterObject: ; 0x44277 (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $0, $ff
- db $7, $4, $0, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_GENTLEMAN, $5 + 4, $a + 4, $fe, $1, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $4 + 4, $ff, $ff, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $3
- EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $4
-
-Mansion1_h: ; 0x442a3 to 0x442af (12 bytes) (bank=11) (id=165)
- db FACILITY ; tileset
- db MANSION_1_HEIGHT, MANSION_1_WIDTH ; dimensions (y, x)
- dw Mansion1Blocks, Mansion1TextPointers, Mansion1Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion1Object ; objects
-
-Mansion1Script: ; 442af (11:42af)
- call Mansion1Subscript1
- call EnableAutoTextBoxDrawing
- ld hl, Mansion1TrainerHeaders
- ld de, Mansion1ScriptPointers
- ld a, [W_MANSION1CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_MANSION1CURSCRIPT], a
- ret
-
-Mansion1Subscript1: ; 442c5 (11:42c5)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d796]
- bit 0, a
- jr nz, .asm_442ec ; 0x442d2 $18
- ld bc, $060c
- call Func_4430b
- ld bc, $0308
- call Func_44304
- ld bc, $080a
- call Func_44304
- ld bc, $0d0d
- jp Func_44304
-.asm_442ec
- ld bc, $060c
- call Func_44304
- ld bc, $0308
- call Func_4430b
- ld bc, $080a
- call Func_4430b
- ld bc, $0d0d
- jp Func_4430b
-
-Func_44304: ; 44304 (11:4304)
- ld a, $2d
- ld [$d09f], a
- jr asm_44310
-
-Func_4430b: ; 4430b (11:430b)
- ld a, $e
- ld [$d09f], a
-asm_44310: ; 44310 (11:4310)
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- ret
-
-Func_44316: ; 44316 (11:4316)
- ld a, [$c109]
- cp $4
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $4
- ld [H_SPRITEHEIGHT], a
- jp DisplayTextID
-
-Mansion1ScriptPointers: ; 44326 (11:4326)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Mansion1TextPointers: ; 4432c (11:432c)
- dw Mansion1Text1
- dw Predef5CText
- dw Predef5CText
- dw Mansion1Text4
-
-Mansion1TrainerHeaders: ; 44334 (11:4334)
-Mansion1TrainerHeader0: ; 44334 (11:4334)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d798 ; flag's byte
- dw Mansion1BattleText2 ; 0x434b TextBeforeBattle
- dw Mansion1AfterBattleText2 ; 0x4355 TextAfterBattle
- dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle
- dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle
-
- db $ff
-
-Mansion1Text1: ; 44341 (11:4341)
- db $08 ; asm
- ld hl, Mansion1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion1BattleText2: ; 4434b (11:434b)
- TX_FAR _Mansion1BattleText2
+PokedexRatingText_44247: ; 44247 (11:4247)
+ TX_FAR _OaksLabText_44247
db "@"
-Mansion1EndBattleText2: ; 44350 (11:4350)
- TX_FAR _Mansion1EndBattleText2
+PokedexRatingText_4424c: ; 4424c (11:424c)
+ TX_FAR _OaksLabText_4424c
db "@"
-Mansion1AfterBattleText2: ; 44355 (11:4355)
- TX_FAR _Mansion1AfterBattleText2
- db "@"
+INCLUDE "data/mapHeaders/viridianpokecenter.asm"
-Mansion1Text4: ; 4435a (11:435a)
- db $8
- ld hl, MansionSwitchText
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_4438c ; 0x44368 $22
- ld a, $1
- ld [$cc3c], a
- ld hl, $d126
- set 5, [hl]
- ld hl, MansionSwitchPressedText
- call PrintText
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- ld hl, $d796
- bit 0, [hl]
- set 0, [hl]
- jr z, .asm_44392 ; 0x44386 $a
- res 0, [hl]
- jr .asm_44392 ; 0x4438a $6
-.asm_4438c
- ld hl, MansionSwitchNotPressedText
- call PrintText
-.asm_44392
- jp TextScriptEnd
+INCLUDE "scripts/viridianpokecenter.asm"
-MansionSwitchText: ; 44395 (11:4395)
- TX_FAR _MansionSwitchText
- db "@"
+INCLUDE "data/mapObjects/viridianpokecenter.asm"
-MansionSwitchPressedText: ; 4439a (11:439a)
- TX_FAR _MansionSwitchPressedText
- db "@"
+INCLUDE "data/mapHeaders/mansion1.asm"
-MansionSwitchNotPressedText: ; 4439f (11:439f)
- TX_FAR _MansionSwitchNotPressedText
- db "@"
+INCLUDE "scripts/mansion1.asm"
-Mansion1Object: ; 0x443a4 (size=90)
- db $2e ; border tile
-
- db $8 ; warps
- db $1b, $4, $0, $ff
- db $1b, $5, $0, $ff
- db $1b, $6, $0, $ff
- db $1b, $7, $0, $ff
- db $a, $5, $0, MANSION_2
- db $17, $15, $0, MANSION_4
- db $1b, $1a, $0, $ff
- db $1b, $1b, $0, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_OAK_AIDE, $11 + 4, $11 + 4, $ff, $d2, $41, SCIENTIST + $C8, $4 ; trainer
- db SPRITE_BALL, $3 + 4, $e + 4, $ff, $ff, $82, ESCAPE_ROPE ; item
- db SPRITE_BALL, $15 + 4, $12 + 4, $ff, $ff, $83, CARBOS ; item
-
- ; warp-to
- EVENT_DISP MANSION_1_WIDTH, $1b, $4
- EVENT_DISP MANSION_1_WIDTH, $1b, $5
- EVENT_DISP MANSION_1_WIDTH, $1b, $6
- EVENT_DISP MANSION_1_WIDTH, $1b, $7
- EVENT_DISP MANSION_1_WIDTH, $a, $5 ; MANSION_2
- EVENT_DISP MANSION_1_WIDTH, $17, $15 ; MANSION_4
- EVENT_DISP MANSION_1_WIDTH, $1b, $1a
- EVENT_DISP MANSION_1_WIDTH, $1b, $1b
+INCLUDE "data/mapObjects/mansion1.asm"
Mansion1Blocks: ; 443fe (11:43fe)
INCBIN "maps/mansion1.blk"
-RockTunnel1_h: ; 0x444d0 to 0x444dc (12 bytes) (bank=11) (id=82)
- db CAVERN ; tileset
- db ROCK_TUNNEL_1_HEIGHT, ROCK_TUNNEL_1_WIDTH ; dimensions (y, x)
- dw RockTunnel1Blocks, RockTunnel1TextPointers, RockTunnel1Script ; blocks, texts, scripts
- db $00 ; connections
- dw RockTunnel1Object ; objects
-
-RockTunnel1Script: ; 444dc (11:44dc)
- call EnableAutoTextBoxDrawing
- ld hl, RockTunnel1TrainerHeaders
- ld de, RockTunnel1ScriptPointers
- ld a, [W_ROCKTUNNEL1CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROCKTUNNEL1CURSCRIPT], a
- ret
-
-RockTunnel1ScriptPointers: ; 444ef (11:44ef)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-RockTunnel1TextPointers: ; 444f5 (11:44f5)
- dw RockTunnel1Text1
- dw RockTunnel1Text2
- dw RockTunnel1Text3
- dw RockTunnel1Text4
- dw RockTunnel1Text5
- dw RockTunnel1Text6
- dw RockTunnel1Text7
- dw RockTunnel1Text8
-
-RockTunnel1TrainerHeaders: ; 44505 (11:4505)
-RockTunnel1TrainerHeader1: ; 44505 (11:4505)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText1 ; 0x4588 TextBeforeBattle
- dw RockTunnel1AfterBattleText1 ; 0x4592 TextAfterBattle
- dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle
- dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle
-
-RockTunnel1TrainerHeader2: ; 44511 (11:4511)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText2 ; 0x4597 TextBeforeBattle
- dw RockTunnel1AfterBattleText2 ; 0x45a1 TextAfterBattle
- dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle
- dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle
-
-RockTunnel1TrainerHeader3: ; 4451d (11:451d)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText3 ; 0x45a6 TextBeforeBattle
- dw RockTunnel1AfterBattleText3 ; 0x45b0 TextAfterBattle
- dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle
- dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle
-
-RockTunnel1TrainerHeader4: ; 44529 (11:4529)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText4 ; 0x45b5 TextBeforeBattle
- dw RockTunnel1AfterBattleText4 ; 0x45bf TextAfterBattle
- dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle
- dw RockTunnel1EndBattleText4; 0x45ba TextEndBattle
-
-RockTunnel1TrainerHeader5: ; 44535 (11:4535)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText5 ; 0x45c4 TextBeforeBattle
- dw RockTunnel1AfterBattleText5 ; 0x45ce TextAfterBattle
- dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle
- dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle
-
-RockTunnel1TrainerHeader6: ; 44541 (11:4541)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText6 ; 0x45d3 TextBeforeBattle
- dw RockTunnel1AfterBattleText6 ; 0x45dd TextAfterBattle
- dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle
- dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle
-
-RockTunnel1TrainerHeader7: ; 4454d (11:454d)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d2 ; flag's byte
- dw RockTunnel1BattleText7; 0x45e2 TextBeforeBattle
- dw RockTunnel1AfterBattleText7 ; 0x45ec TextAfterBattle
- dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle
- dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle
-
- db $ff
-
-RockTunnel1Text1: ; 4455a (11:455a)
- db $8
- ld hl, RockTunnel1TrainerHeader1 ; $4505
- jr asm_0c916 ; 0x4455e $22
-
-RockTunnel1Text2: ; 44560 (11:4560)
- db $8
- ld hl, RockTunnel1TrainerHeader2 ; $4511
- jr asm_0c916 ; 0x44564 $1c
-
-RockTunnel1Text3: ; 44566 (11:4566)
- db $8
- ld hl, RockTunnel1TrainerHeader3 ; $451d
- jr asm_0c916 ; 0x4456a $16
-
-RockTunnel1Text4: ; 4456c (11:456c)
- db $8
- ld hl, RockTunnel1TrainerHeader4 ; $4529
- jr asm_0c916 ; 0x44570 $10
-
-RockTunnel1Text5: ; 44572 (11:4572)
- db $8
- ld hl, RockTunnel1TrainerHeader5 ; $4535
- jr asm_0c916 ; 0x44576 $a
-
-RockTunnel1Text6: ; 44578 (11:4578)
- db $8
- ld hl, RockTunnel1TrainerHeader6 ; $4541
- jr asm_0c916 ; 0x4457c $4
-
-RockTunnel1Text7: ; 4457e (11:457e)
- db $8
- ld hl, RockTunnel1TrainerHeader7 ; $454d
-asm_0c916: ; 44582 (11:4582)
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel1BattleText1: ; 44588 (11:4588)
- TX_FAR _RockTunnel1BattleText1
- db "@"
-
-RockTunnel1EndBattleText1: ; 4458d (11:458d)
- TX_FAR _RockTunnel1EndBattleText1
- db "@"
-
-RockTunnel1AfterBattleText1: ; 44592 (11:4592)
- TX_FAR _RockTunnel1AfterBattleText1
- db "@"
-
-RockTunnel1BattleText2: ; 44597 (11:4597)
- TX_FAR _RockTunnel1BattleText2
- db "@"
-
-RockTunnel1EndBattleText2: ; 4459c (11:459c)
- TX_FAR _RockTunnel1EndBattleText2
- db "@"
-
-RockTunnel1AfterBattleText2: ; 445a1 (11:45a1)
- TX_FAR _RockTunnel1AfterBattleText2
- db "@"
-
-RockTunnel1BattleText3: ; 445a6 (11:45a6)
- TX_FAR _RockTunnel1BattleText3
- db "@"
-
-RockTunnel1EndBattleText3: ; 445ab (11:45ab)
- TX_FAR _RockTunnel1EndBattleText3
- db "@"
-
-RockTunnel1AfterBattleText3: ; 445b0 (11:45b0)
- TX_FAR _RockTunnel1AfterBattleText3
- db "@"
-
-RockTunnel1BattleText4: ; 445b5 (11:45b5)
- TX_FAR _RockTunnel1BattleText4
- db "@"
-
-RockTunnel1EndBattleText4: ; 445ba (11:45ba)
- TX_FAR _RockTunnel1EndBattleText4
- db "@"
-
-RockTunnel1AfterBattleText4: ; 445bf (11:45bf)
- TX_FAR _RockTunnel1AfterBattleText4
- db "@"
-
-RockTunnel1BattleText5: ; 445c4 (11:45c4)
- TX_FAR _RockTunnel1BattleText5
- db "@"
-
-RockTunnel1EndBattleText5: ; 445c9 (11:45c9)
- TX_FAR _RockTunnel1EndBattleText5
- db "@"
-
-RockTunnel1AfterBattleText5: ; 445ce (11:45ce)
- TX_FAR _RockTunnel1AfterBattleText5
- db "@"
-
-RockTunnel1BattleText6: ; 445d3 (11:45d3)
- TX_FAR _RockTunnel1BattleText6
- db "@"
-
-RockTunnel1EndBattleText6: ; 445d8 (11:45d8)
- TX_FAR _RockTunnel1EndBattleText6
- db "@"
+INCLUDE "data/mapHeaders/rocktunnel1.asm"
-RockTunnel1AfterBattleText6: ; 445dd (11:45dd)
- TX_FAR _RockTunnel1AfterBattleText6
- db "@"
+INCLUDE "scripts/rocktunnel1.asm"
-RockTunnel1BattleText7: ; 445e2 (11:45e2)
- TX_FAR _RockTunnel1BattleText7
- db "@"
-
-RockTunnel1EndBattleText7: ; 445e7 (11:45e7)
- TX_FAR _RockTunnel1EndBattleText7
- db "@"
-
-RockTunnel1AfterBattleText7: ; 445ec (11:45ec)
- TX_FAR _RockTunnel1AfterBattleText7
- db "@"
-
-RockTunnel1Text8: ; 445f1 (11:45f1)
- TX_FAR _RockTunnel1Text8
- db "@"
-
-RockTunnel1Object: ; 0x445f6 (size=127)
- db $3 ; border tile
-
- db $8 ; warps
- db $3, $f, $1, $ff
- db $0, $f, $1, $ff
- db $21, $f, $2, $ff
- db $23, $f, $2, $ff
- db $3, $25, $0, ROCK_TUNNEL_2
- db $3, $5, $1, ROCK_TUNNEL_2
- db $b, $11, $2, ROCK_TUNNEL_2
- db $11, $25, $3, ROCK_TUNNEL_2
-
- db $1 ; signs
- db $1d, $b, $8 ; RockTunnel1Text8
-
- db $7 ; people
- db SPRITE_HIKER, $5 + 4, $7 + 4, $ff, $d0, $41, HIKER + $C8, $c ; trainer
- db SPRITE_HIKER, $10 + 4, $5 + 4, $ff, $d0, $42, HIKER + $C8, $d ; trainer
- db SPRITE_HIKER, $f + 4, $11 + 4, $ff, $d2, $43, HIKER + $C8, $e ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $17 + 4, $ff, $d2, $44, POKEMANIAC + $C8, $7 ; trainer
- db SPRITE_LASS, $15 + 4, $25 + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $11 ; trainer
- db SPRITE_LASS, $18 + 4, $16 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $12 ; trainer
- db SPRITE_LASS, $18 + 4, $20 + 4, $ff, $d3, $47, JR__TRAINER_F + $C8, $13 ; trainer
-
- ; warp-to
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $f
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $0, $f
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $21, $f
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $23, $f
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $25 ; ROCK_TUNNEL_2
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $5 ; ROCK_TUNNEL_2
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $b, $11 ; ROCK_TUNNEL_2
- EVENT_DISP ROCK_TUNNEL_1_WIDTH, $11, $25 ; ROCK_TUNNEL_2
+INCLUDE "data/mapObjects/rocktunnel1.asm"
RockTunnel1Blocks: ; 44675 (11:4675)
INCBIN "maps/rocktunnel1.blk"
-SeafoamIslands1_h: ; 0x447dd to 0x447e9 (12 bytes) (bank=11) (id=192)
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_1_HEIGHT, SEAFOAM_ISLANDS_1_WIDTH ; dimensions (y, x)
- dw SeafoamIslands1Blocks, SeafoamIslands1TextPointers, SeafoamIslands1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands1Object ; objects
+INCLUDE "data/mapHeaders/seafoamislands1.asm"
-SeafoamIslands1Script: ; 447e9 (11:47e9)
- call EnableAutoTextBoxDrawing
- ld hl, $d7e7
- set 0, [hl]
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_4483b ; 0x447f8 $41
- ld hl, Seafoam1HolesCoords
- call CheckBoulderCoords
- ret nc
- ld hl, $d7e8
- ld a, [$cd3d]
- cp $1
- jr nz, .asm_44819 ; 0x44809 $e
- set 6, [hl]
- ld a, $d7
- ld [$d079], a
- ld a, $d9
- ld [$d07a], a
- jr .asm_44825 ; 0x44817 $c
-.asm_44819
- set 7, [hl]
- ld a, $d8
- ld [$d079], a
- ld a, $da
- ld [$d07a], a
-.asm_44825
- ld a, [$d079]
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, [$d07a]
- ld [$cc4d], a
- ld a, $15
- jp Predef
-.asm_4483b
- ld a, $9f
- ld [$d71d], a
- ld hl, Seafoam1HolesCoords
- jp Func_46981
-
-Seafoam1HolesCoords: ; 44846 (11:4846)
- db $06,$11
- db $06,$18
- db $ff
+INCLUDE "scripts/seafoamislands1.asm"
-SeafoamIslands1TextPointers: ; 4484b (11:484b)
- dw BoulderText
- dw BoulderText
-
-SeafoamIslands1Object: ; 0x4484f (size=72)
- db $7d ; border tile
-
- db $7 ; warps
- db $11, $4, $0, $ff
- db $11, $5, $0, $ff
- db $11, $1a, $1, $ff
- db $11, $1b, $1, $ff
- db $5, $7, $1, SEAFOAM_ISLANDS_2
- db $3, $19, $6, SEAFOAM_ISLANDS_2
- db $f, $17, $4, SEAFOAM_ISLANDS_2
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_BOULDER, $a + 4, $12 + 4, $ff, $10, $1 ; person
- db SPRITE_BOULDER, $7 + 4, $1a + 4, $ff, $10, $2 ; person
-
- ; warp-to
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $4
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $5
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1a
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1b
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_2
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_2
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_2
-
- ; holes
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $11
- EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $18
+INCLUDE "data/mapObjects/seafoamislands1.asm"
SeafoamIslands1Blocks: ; 4489f (11:489f)
INCBIN "maps/seafoamislands1.blk"
-SSAnne3_h: ; 0x44926 to 0x44932 (12 bytes) (bank=11) (id=97)
- db SHIP ; tileset
- db SS_ANNE_3_HEIGHT, SS_ANNE_3_WIDTH ; dimensions (y, x)
- dw SSAnne3Blocks, SSAnne3TextPointers, SSAnne3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne3Object ; objects
-
-SSAnne3Script: ; 44932 (11:4932)
- jp EnableAutoTextBoxDrawing
-
-SSAnne3TextPointers: ; 44935 (11:4935)
- dw SSAnne3Text1
-
-SSAnne3Text1: ; 44937 (11:4937)
- TX_FAR _SSAnne3Text1
- db "@"
-
-SSAnne3Object: ; 0x4493c (size=26)
- db $c ; border tile
-
- db $2 ; warps
- db $3, $0, $0, SS_ANNE_5
- db $3, $13, $7, SS_ANNE_2
+INCLUDE "data/mapHeaders/ssanne3.asm"
- db $0 ; signs
+INCLUDE "scripts/ssanne3.asm"
- db $1 ; people
- db SPRITE_SAILOR, $3 + 4, $9 + 4, $fe, $2, $1 ; person
-
- ; warp-to
- EVENT_DISP SS_ANNE_3_WIDTH, $3, $0 ; SS_ANNE_5
- EVENT_DISP SS_ANNE_3_WIDTH, $3, $13 ; SS_ANNE_2
+INCLUDE "data/mapObjects/ssanne3.asm"
SSAnne3Blocks: ; 44956 (11:4956)
INCBIN "maps/ssanne3.blk"
-VictoryRoad3_h: ; 0x44974 to 0x44980 (12 bytes) (bank=11) (id=198)
- db CAVERN ; tileset
- db VICTORY_ROAD_3_HEIGHT, VICTORY_ROAD_3_WIDTH ; dimensions (y, x)
- dw VictoryRoad3Blocks, VictoryRoad3TextPointers, VictoryRoad3Script ; blocks, texts, scripts
- db $00 ; connections
- dw VictoryRoad3Object ; objects
-
-VictoryRoad3Script: ; 44980 (11:4980)
- call VictoryRoad3Script_44996
- call EnableAutoTextBoxDrawing
- ld hl, VictoryRoad3TrainerHeaders
- ld de, VictoryRoad3ScriptPointers
- ld a, [W_VICTORYROAD3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_VICTORYROAD3CURSCRIPT], a
- ret
-
-VictoryRoad3Script_44996: ; 44996 (11:4996)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, $d813
- bit 0, [hl]
- ret z
- ld a, $1d
- ld [$d09f], a
- ld bc, $503
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-VictoryRoad3ScriptPointers: ; 449b1 (11:49b1)
- dw VictoryRoad3Script0
- dw Func_324c
- dw EndTrainerBattle
-
-VictoryRoad3Script0: ; 449b7 (11:49b7)
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jp z, .asm_449fe
- ld hl, .coordsData_449f9 ; $49f9
- call CheckBoulderCoords
- jp nc, .asm_449fe
- ld a, [wWhichTrade] ; $cd3d
- cp $1
- jr nz, .asm_449dc
- ld hl, $d126
- set 5, [hl]
- ld hl, $d813
- set 0, [hl]
- ret
-.asm_449dc
- ld hl, $d813
- bit 6, [hl]
- set 6, [hl]
- jr nz, .asm_449fe
- ld a, $7a
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- ld a, $60
- ld [$cc4d], a
- ld a, $15
- jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
-
-.coordsData_449f9: ; 449f9 (11:49f9)
- db $05,$03
- db $0F,$17
- db $FF
-
-.asm_449fe
- ld a, $c2
- ld [$d71d], a
- ld hl, .coordsData_449f9 ; $49f9
- call Func_46981
- ld a, [wWhichTrade] ; $cd3d
- cp $1
- jr nz, .asm_44a1b
- ld hl, $d72d
- res 4, [hl]
- ld hl, $d732
- res 4, [hl]
- ret
-.asm_44a1b
- ld a, [$d72d]
- bit 4, a
- jp z, CheckFightingMapTrainers
- ret
-
-VictoryRoad3TextPointers: ; 44a24 (11:4a24)
- dw VictoryRoad3Text1
- dw VictoryRoad3Text2
- dw VictoryRoad3Text3
- dw VictoryRoad3Text4
- dw Predef5CText
- dw Predef5CText
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-VictoryRoad3TrainerHeaders: ; 44a38 (11:4a38)
-VictoryRoad3TrainerHeader0: ; 44a38 (11:4a38)
- db $1 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d813 ; flag's byte
- dw VictoryRoad3BattleText2 ; 0x4a91 TextBeforeBattle
- dw VictoryRoad3AfterBattleText2 ; 0x4a9b TextAfterBattle
- dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
- dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
-
-VictoryRoad3TrainerHeader2: ; 44a44 (11:4a44)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d813 ; flag's byte
- dw VictoryRoad3BattleText3 ; 0x4aa0 TextBeforeBattle
- dw VictoryRoad3AfterBattleText3 ; 0x4aaa TextAfterBattle
- dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
- dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
-
-VictoryRoad3TrainerHeader3: ; 44a50 (11:4a50)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d813 ; flag's byte
- dw VictoryRoad3BattleText4 ; 0x4aaf TextBeforeBattle
- dw VictoryRoad3AfterBattleText4 ; 0x4ab9 TextAfterBattle
- dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
- dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
-
-VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d813 ; flag's byte
- dw VictoryRoad3BattleText5 ; 0x4abe TextBeforeBattle
- dw VictoryRoad3AfterBattleText5 ; 0x4ac8 TextAfterBattle
- dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
- dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
-
- db $ff
-
-VictoryRoad3Text1: ; 44a69 (11:4a69)
- db $08 ; asm
- ld hl, VictoryRoad3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3Text2: ; 44a73 (11:4a73)
- db $08 ; asm
- ld hl, VictoryRoad3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3Text3: ; 44a7d (11:4a7d)
- db $08 ; asm
- ld hl, VictoryRoad3TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3Text4: ; 44a87 (11:4a87)
- db $08 ; asm
- ld hl, VictoryRoad3TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3BattleText2: ; 44a91 (11:4a91)
- TX_FAR _VictoryRoad3BattleText2
- db "@"
-
-VictoryRoad3EndBattleText2: ; 44a96 (11:4a96)
- TX_FAR _VictoryRoad3EndBattleText2
- db "@"
-
-VictoryRoad3AfterBattleText2: ; 44a9b (11:4a9b)
- TX_FAR _VictoryRoad3AfterBattleText2
- db "@"
-
-VictoryRoad3BattleText3: ; 44aa0 (11:4aa0)
- TX_FAR _VictoryRoad3BattleText3
- db "@"
-
-VictoryRoad3EndBattleText3: ; 44aa5 (11:4aa5)
- TX_FAR _VictoryRoad3EndBattleText3
- db "@"
-
-VictoryRoad3AfterBattleText3: ; 44aaa (11:4aaa)
- TX_FAR _VictoryRoad3AfterBattleText3
- db "@"
-
-VictoryRoad3BattleText4: ; 44aaf (11:4aaf)
- TX_FAR _VictoryRoad3BattleText4
- db "@"
-
-VictoryRoad3EndBattleText4: ; 44ab4 (11:4ab4)
- TX_FAR _VictoryRoad3EndBattleText4
- db "@"
-
-VictoryRoad3AfterBattleText4: ; 44ab9 (11:4ab9)
- TX_FAR _VictoryRoad3AfterBattleText4
- db "@"
-
-VictoryRoad3BattleText5: ; 44abe (11:4abe)
- TX_FAR _VictoryRoad3BattleText5
- db "@"
-
-VictoryRoad3EndBattleText5: ; 44ac3 (11:4ac3)
- TX_FAR _VictoryRoad3EndBattleText5
- db "@"
+INCLUDE "data/mapHeaders/victoryroad3.asm"
-VictoryRoad3AfterBattleText5: ; 44ac8 (11:4ac8)
- TX_FAR _VictoryRoad3AfterBattleText5
- db "@"
+INCLUDE "scripts/victoryroad3.asm"
-VictoryRoad3Object: ; 0x44acd (size=106)
- db $7d ; border tile
-
- db $4 ; warps
- db $7, $17, $3, VICTORY_ROAD_2
- db $8, $1a, $5, VICTORY_ROAD_2
- db $f, $1b, $4, VICTORY_ROAD_2
- db $0, $2, $6, VICTORY_ROAD_2
-
- db $0 ; signs
-
- db $a ; people
- db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $1c + 4, $ff, $d2, $41, COOLTRAINER_M + $C8, $2 ; trainer
- db SPRITE_LASS, $d + 4, $7 + 4, $ff, $d3, $42, COOLTRAINER_F + $C8, $2 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $e + 4, $6 + 4, $ff, $d2, $43, COOLTRAINER_M + $C8, $3 ; trainer
- db SPRITE_LASS, $3 + 4, $d + 4, $ff, $d3, $44, COOLTRAINER_F + $C8, $3 ; trainer
- db SPRITE_BALL, $5 + 4, $1a + 4, $ff, $ff, $85, MAX_REVIVE ; item
- db SPRITE_BALL, $7 + 4, $7 + 4, $ff, $ff, $86, TM_47 ; item
- db SPRITE_BOULDER, $3 + 4, $16 + 4, $ff, $10, $7 ; person
- db SPRITE_BOULDER, $c + 4, $d + 4, $ff, $10, $8 ; person
- db SPRITE_BOULDER, $a + 4, $18 + 4, $ff, $10, $9 ; person
- db SPRITE_BOULDER, $f + 4, $16 + 4, $ff, $10, $a ; person
-
- ; warp-to
- EVENT_DISP VICTORY_ROAD_3_WIDTH, $7, $17 ; VICTORY_ROAD_2
- EVENT_DISP VICTORY_ROAD_3_WIDTH, $8, $1a ; VICTORY_ROAD_2
- EVENT_DISP VICTORY_ROAD_3_WIDTH, $f, $1b ; VICTORY_ROAD_2
- EVENT_DISP VICTORY_ROAD_3_WIDTH, $0, $2 ; VICTORY_ROAD_2
+INCLUDE "data/mapObjects/victoryroad3.asm"
VictoryRoad3Blocks: ; 44b37 (11:4b37)
INCBIN "maps/victoryroad3.blk"
-RocketHideout1_h: ; 0x44bbe to 0x44bca (12 bytes) (bank=11) (id=199)
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_1_HEIGHT, ROCKET_HIDEOUT_1_WIDTH ; dimensions (y, x)
- dw RocketHideout1Blocks, RocketHideout1TextPointers, RocketHideout1Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout1Object ; objects
-
-RocketHideout1Script: ; 44bca (11:4bca)
- call Func_44be0
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout1TrainerHeaders
- ld de, RocketHideout1ScriptPointers
- ld a, [W_ROCKETHIDEOUT1CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROCKETHIDEOUT1CURSCRIPT], a
- ret
-
-Func_44be0: ; 44be0 (11:4be0)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d815]
- bit 7, a
- jr nz, .asm_44c01
- bit 5, a
- jr nz, .asm_44bf7
- ld a, $54
- jr .asm_44c03
-.asm_44bf7
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- ld hl, $d815
- bit 7, [hl]
-.asm_44c01
- ld a, $e
-.asm_44c03
- ld [$d09f], a
- ld bc, $080c
- ld a, $17
- jp Predef
-
-RocketHideout1ScriptPointers: ; 44c0e (11:4c0e)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-RocketHideout1TextPointers: ; 44c14 (11:4c14)
- dw RocketHideout1Text1
- dw RocketHideout1Text2
- dw RocketHideout1Text3
- dw RocketHideout1Text4
- dw RocketHideout1Text5
- dw Predef5CText
- dw Predef5CText
-
-RocketHideout1TrainerHeaders: ; 44c22 (11:4c22)
-RocketHideout1TrainerHeader0: ; 44c22 (11:4c22)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d815 ; flag's byte
- dw RocketHideout1BattleText2 ; 0x4ca1 TextBeforeBattle
- dw RocketHideout1AfterBattleTxt2 ; 0x4cab TextAfterBattle
- dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle
- dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle
-
-RocketHideout1TrainerHeader2: ; 44c2e (11:4c2e)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d815 ; flag's byte
- dw RocketHideout1BattleText3 ; 0x4cb0 TextBeforeBattle
- dw RocketHideout1AfterBattleTxt3 ; 0x4cba TextAfterBattle
- dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle
- dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle
-
-RocketHideout1TrainerHeader3: ; 44c3a (11:4c3a)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d815 ; flag's byte
- dw RocketHideout1BattleText4 ; 0x4cbf TextBeforeBattle
- dw RocketHideout1AfterBattleTxt4 ; 0x4cc9 TextAfterBattle
- dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle
- dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle
-
-RocketHideout1TrainerHeader4: ; 44c46 (11:4c46)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d815 ; flag's byte
- dw RocketHideout1BattleText5 ; 0x4cce TextBeforeBattle
- dw RocketHideout1AfterBattleTxt5 ; 0x4cd8 TextAfterBattle
- dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle
- dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle
-
-RocketHideout1TrainerHeader5: ; 44c52 (11:4c52)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d815 ; flag's byte
- dw RocketHideout1BattleText6 ; 0x4cdd TextBeforeBattle
- dw RocketHideout1AfterBattleTxt6 ; 0x4ce2 TextAfterBattle
- dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle
- dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle
-
- db $ff
-
-RocketHideout1Text1: ; 44c5f (11:4c5f)
- db $08 ; asm
- ld hl, RocketHideout1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text2: ; 44c69 (11:4c69)
- db $08 ; asm
- ld hl, RocketHideout1TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text3: ; 44c73 (11:4c73)
- db $08 ; asm
- ld hl, RocketHideout1TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text4: ; 44c7d (11:4c7d)
- db $08 ; asm
- ld hl, RocketHideout1TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text5: ; 44c87 (11:4c87)
- db $08 ; asm
- ld hl, RocketHideout1TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1EndBattleText6: ; 44c91 (11:4c91)
- TX_FAR _RocketHideout1EndBattleText6 ; 0x81f2a
- db $8
- ld hl, $d815
- set 5, [hl]
- ld hl, UnnamedText_44c9f
- ret
+INCLUDE "data/mapHeaders/rockethideout1.asm"
-UnnamedText_44c9f: ; 44c9f (11:4c9f)
- db $6, $50
+INCLUDE "scripts/rockethideout1.asm"
-RocketHideout1BattleText2: ; 44ca1 (11:4ca1)
- TX_FAR _RocketHideout1BattleText2
- db "@"
-
-RocketHideout1EndBattleText2: ; 44ca6 (11:4ca6)
- TX_FAR _RocketHideout1EndBattleText2
- db "@"
-
-RocketHideout1AfterBattleTxt2: ; 44cab (11:4cab)
- TX_FAR _RocketHideout1AfterBattleTxt2
- db "@"
-
-RocketHideout1BattleText3: ; 44cb0 (11:4cb0)
- TX_FAR _RocketHideout1BattleText3
- db "@"
-
-RocketHideout1EndBattleText3: ; 44cb5 (11:4cb5)
- TX_FAR _RocketHideout1EndBattleText3
- db "@"
-
-RocketHideout1AfterBattleTxt3: ; 44cba (11:4cba)
- TX_FAR _RocketHideout1AfterBattleTxt3
- db "@"
-
-RocketHideout1BattleText4: ; 44cbf (11:4cbf)
- TX_FAR _RocketHideout1BattleText4
- db "@"
-
-RocketHideout1EndBattleText4: ; 44cc4 (11:4cc4)
- TX_FAR _RocketHideout1EndBattleText4
- db "@"
-
-RocketHideout1AfterBattleTxt4: ; 44cc9 (11:4cc9)
- TX_FAR _RocketHideout1AfterBattleTxt4
- db "@"
-
-RocketHideout1BattleText5: ; 44cce (11:4cce)
- TX_FAR _RocketHideout1BattleText5
- db "@"
-
-RocketHideout1EndBattleText5: ; 44cd3 (11:4cd3)
- TX_FAR _RocketHideout1EndBattleText5
- db "@"
-
-RocketHideout1AfterBattleTxt5: ; 44cd8 (11:4cd8)
- TX_FAR _RocketHideout1AfterBattleTxt5
- db "@"
-
-RocketHideout1BattleText6: ; 44cdd (11:4cdd)
- TX_FAR _RocketHideout1BattleText6
- db "@"
-
-RocketHideout1AfterBattleTxt6: ; 44ce2 (11:4ce2)
- TX_FAR _RocketHideout1AfterBattleTxt6
- db "@"
-
-RocketHideout1Object: ; 0x44ce7 (size=98)
- db $2e ; border tile
-
- db $5 ; warps
- db $2, $17, $0, ROCKET_HIDEOUT_2
- db $2, $15, $2, GAME_CORNER
- db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR
- db $18, $15, $3, ROCKET_HIDEOUT_2
- db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR
-
- db $0 ; signs
-
- db $7 ; people
- db SPRITE_ROCKET, $8 + 4, $1a + 4, $ff, $d2, $41, ROCKET + $C8, $8 ; trainer
- db SPRITE_ROCKET, $6 + 4, $c + 4, $ff, $d3, $42, ROCKET + $C8, $9 ; trainer
- db SPRITE_ROCKET, $11 + 4, $12 + 4, $ff, $d0, $43, ROCKET + $C8, $a ; trainer
- db SPRITE_ROCKET, $19 + 4, $f + 4, $ff, $d3, $44, ROCKET + $C8, $b ; trainer
- db SPRITE_ROCKET, $12 + 4, $1c + 4, $ff, $d2, $45, ROCKET + $C8, $c ; trainer
- db SPRITE_BALL, $e + 4, $b + 4, $ff, $ff, $86, ESCAPE_ROPE ; item
- db SPRITE_BALL, $11 + 4, $9 + 4, $ff, $ff, $87, HYPER_POTION ; item
-
- ; warp-to
- EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $17 ; ROCKET_HIDEOUT_2
- EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $15 ; GAME_CORNER
- EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR
- EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $18, $15 ; ROCKET_HIDEOUT_2
- EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR
+INCLUDE "data/mapObjects/rockethideout1.asm"
RocketHideout1Blocks: ; 44d49 (11:4d49)
INCBIN "maps/rockethideout1.blk"
-RocketHideout2_h: ; 0x44e1b to 0x44e27 (12 bytes) (bank=11) (id=200)
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_2_HEIGHT, ROCKET_HIDEOUT_2_WIDTH ; dimensions (y, x)
- dw RocketHideout2Blocks, RocketHideout2TextPointers, RocketHideout2Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout2Object ; objects
+INCLUDE "data/mapHeaders/rockethideout2.asm"
-RocketHideout2Script: ; 44e27 (11:4e27)
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout2TrainerHeaders
- ld de, RocketHideout2ScriptPointers
- ld a, [W_ROCKETHIDEOUT2CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROCKETHIDEOUT2CURSCRIPT], a
- ret
+INCLUDE "scripts/rockethideout2.asm"
-RocketHideout2ScriptPointers: ; 44e3a (11:4e3a)
- dw RocketHideout2Script0
- dw Func_324c
- dw EndTrainerBattle
- dw RocketHideout2Script3
-
-RocketHideout2Script0: ; 44e42 (11:4e42)
- ld a, [W_YCOORD]
- ld b, a
- ld a, [W_XCOORD]
- ld c, a
- ld hl, RocketHideout2ArrowTilePlayerMovement
- call Func_3442
- cp $ff
- jp z, CheckFightingMapTrainers
- ld hl, $d736
- set 7, [hl]
- call Func_3486
- ld a, (SFX_02_52 - SFX_Headers_02) / 3
- call PlaySound
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $3
- ld [W_CURMAPSCRIPT], a
- ret
-
-;format:
-;db y,x
-;dw pointer to movement
-RocketHideout2ArrowTilePlayerMovement: ; 44e6d (11:4e6d)
- db $9,$4
- dw RocketHideout2ArrowMovement1
- db $b,$4
- dw RocketHideout2ArrowMovement2
- db $f,$4
- dw RocketHideout2ArrowMovement3
- db $10,$4
- dw RocketHideout2ArrowMovement4
- db $13,$4
- dw RocketHideout2ArrowMovement1
- db $16,$4
- dw RocketHideout2ArrowMovement5
- db $e,$5
- dw RocketHideout2ArrowMovement6
- db $16,$6
- dw RocketHideout2ArrowMovement7
- db $18,$6
- dw RocketHideout2ArrowMovement8
- db $9,$8
- dw RocketHideout2ArrowMovement9
- db $c,$8
- dw RocketHideout2ArrowMovement10
- db $f,$8
- dw RocketHideout2ArrowMovement8
- db $13,$8
- dw RocketHideout2ArrowMovement9
- db $17,$8
- dw RocketHideout2ArrowMovement11
- db $e,$9
- dw RocketHideout2ArrowMovement12
- db $16,$9
- dw RocketHideout2ArrowMovement12
- db $9,$a
- dw RocketHideout2ArrowMovement13
- db $a,$a
- dw RocketHideout2ArrowMovement14
- db $f,$a
- dw RocketHideout2ArrowMovement15
- db $11,$a
- dw RocketHideout2ArrowMovement16
- db $13,$a
- dw RocketHideout2ArrowMovement17
- db $19,$a
- dw RocketHideout2ArrowMovement2
- db $e,$b
- dw RocketHideout2ArrowMovement18
- db $10,$b
- dw RocketHideout2ArrowMovement19
- db $12,$b
- dw RocketHideout2ArrowMovement12
- db $9,$c
- dw RocketHideout2ArrowMovement20
- db $b,$c
- dw RocketHideout2ArrowMovement21
- db $d,$c
- dw RocketHideout2ArrowMovement22
- db $11,$c
- dw RocketHideout2ArrowMovement23
- db $a,$d
- dw RocketHideout2ArrowMovement24
- db $c,$d
- dw RocketHideout2ArrowMovement25
- db $10,$d
- dw RocketHideout2ArrowMovement26
- db $12,$d
- dw RocketHideout2ArrowMovement27
- db $13,$d
- dw RocketHideout2ArrowMovement28
- db $16,$d
- dw RocketHideout2ArrowMovement29
- db $17,$d
- dw RocketHideout2ArrowMovement30
- db $11,$e
- dw RocketHideout2ArrowMovement31
- db $10,$f
- dw RocketHideout2ArrowMovement12
- db $e,$10
- dw RocketHideout2ArrowMovement32
- db $10,$10
- dw RocketHideout2ArrowMovement33
- db $12,$10
- dw RocketHideout2ArrowMovement34
- db $a,$11
- dw RocketHideout2ArrowMovement35
- db $b,$11
- dw RocketHideout2ArrowMovement36
- db $FF
-
-;format: direction, count
-;right: $10
-;left: $20
-;up: $40
-;down: $80
-;each list is read starting from the $FF and working backwards
-RocketHideout2ArrowMovement1: ; 44f1a (11:4f1a)
- db $20,$02
- db $FF
-
-RocketHideout2ArrowMovement2: ; 44f1d (11:4f1d)
- db $10,$04
- db $FF
-
-RocketHideout2ArrowMovement3: ; 44f20 (11:4f20)
- db $40,$04
- db $10,$04
- db $FF
-
-RocketHideout2ArrowMovement4: ; 44f25 (11:4f25)
- db $40,$04
- db $10,$04
- db $40,$01
- db $FF
-
-RocketHideout2ArrowMovement5: ; 44f2c (11:4f2c)
- db $20,$02
- db $40,$03
- db $FF
-
-RocketHideout2ArrowMovement6: ; 44f31 (11:4f31)
- db $80,$02
- db $10,$04
- db $FF
-
-RocketHideout2ArrowMovement7: ; 44f36 (11:4f36)
- db $40,$02
- db $FF
-
-RocketHideout2ArrowMovement8: ; 44f39 (11:4f39)
- db $40,$04
- db $FF
-
-RocketHideout2ArrowMovement9: ; 44f3c (11:4f3c)
- db $20,$06
- db $FF
-
-RocketHideout2ArrowMovement10: ; 44f3f (11:4f3f)
- db $40,$01
- db $FF
-
-RocketHideout2ArrowMovement11: ; 44f42 (11:4f42)
- db $20,$06
- db $40,$04
- db $FF
-
-RocketHideout2ArrowMovement12: ; 44f47 (11:4f47)
- db $80,$02
- db $FF
-
-RocketHideout2ArrowMovement13: ; 44f4a (11:4f4a)
- db $20,$08
- db $FF
-
-RocketHideout2ArrowMovement14: ; 44f4d (11:4f4d)
- db $20,$08
- db $40,$01
- db $FF
-
-RocketHideout2ArrowMovement15: ; 44f52 (11:4f52)
- db $20,$08
- db $40,$06
- db $FF
-
-RocketHideout2ArrowMovement16: ; 44f57 (11:4f57)
- db $40,$02
- db $10,$04
- db $FF
-
-RocketHideout2ArrowMovement17: ; 44f5c (11:4f5c)
- db $40,$02
- db $10,$04
- db $40,$02
- db $FF
-
-RocketHideout2ArrowMovement18: ; 44f63 (11:4f63)
- db $80,$02
- db $10,$04
- db $80,$02
- db $FF
-
-RocketHideout2ArrowMovement19: ; 44f6a (11:4f6a)
- db $80,$02
- db $10,$04
- db $FF
-
-RocketHideout2ArrowMovement20: ; 44f6f (11:4f6f)
- db $20,$0A
- db $FF
-
-RocketHideout2ArrowMovement21: ; 44f72 (11:4f72)
- db $20,$0A
- db $40,$02
- db $FF
-
-RocketHideout2ArrowMovement22: ; 44f77 (11:4f77)
- db $20,$0A
- db $40,$04
- db $FF
-
-RocketHideout2ArrowMovement23: ; 44f7c (11:4f7c)
- db $40,$02
- db $10,$02
- db $FF
-
-RocketHideout2ArrowMovement24: ; 44f81 (11:4f81)
- db $10,$01
- db $80,$02
- db $FF
-
-RocketHideout2ArrowMovement25: ; 44f86 (11:4f86)
- db $10,$01
- db $FF
-
-RocketHideout2ArrowMovement26: ; 44f89 (11:4f89)
- db $80,$02
- db $10,$02
- db $FF
-
-RocketHideout2ArrowMovement27: ; 44f8e (11:4f8e)
- db $80,$02
- db $20,$02
- db $FF
-
-RocketHideout2ArrowMovement28: ; 44f93 (11:4f93)
- db $40,$02
- db $10,$04
- db $40,$02
- db $20,$03
- db $FF
-
-RocketHideout2ArrowMovement29: ; 44f9c (11:4f9c)
- db $80,$02
- db $20,$04
- db $FF
-
-RocketHideout2ArrowMovement30: ; 44fa1 (11:4fa1)
- db $20,$06
- db $40,$04
- db $20,$05
- db $FF
-
-RocketHideout2ArrowMovement31: ; 44fa8 (11:4fa8)
- db $40,$02
- db $FF
-
-RocketHideout2ArrowMovement32: ; 44fab (11:4fab)
- db $40,$01
- db $FF
-
-RocketHideout2ArrowMovement33: ; 44fae (11:4fae)
- db $40,$03
- db $FF
-
-RocketHideout2ArrowMovement34: ; 44fb1 (11:4fb1)
- db $40,$05
- db $FF
-
-RocketHideout2ArrowMovement35: ; 44fb4 (11:4fb4)
- db $10,$01
- db $80,$02
- db $20,$04
- db $FF
-
-RocketHideout2ArrowMovement36: ; 44fbb (11:4fbb)
- db $20,$0A
- db $40,$02
- db $20,$05
- db $FF
-
-RocketHideout2Script3: ; 44fc2 (11:4fc2)
- ld a, [$cd38]
- and a
- jr nz, Func_44fd7
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d736
- res 7, [hl]
- ld a, $0
- ld [W_CURMAPSCRIPT], a
- ret
-
-Func_44fd7: ; 44fd7 (11:4fd7)
- ld a, [$c102]
- srl a
- srl a
- ld hl, SpinnerPlayerFacingDirections ; $5083
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hl]
- ld [$c102], a
- ld a, [W_CURMAPTILESET] ; $d367
- cp FACILITY
- ld hl, SpinnerArrowTilePointers1 ; $5023
- jr z, .asm_44ff6
- ld hl, SpinnerArrowTilePointers2 ; $5053
-.asm_44ff6
- ld a, [$cd38]
- bit 0, a
- jr nz, .asm_45001
- ld de, $18
- add hl, de
-.asm_45001
- ld a, $4
- ld bc, $0
-.asm_45006
- push af
- push hl
- push bc
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call CopyVideoData
- pop bc
- ld a, $6
- add c
- ld c, a
- pop hl
- pop af
- dec a
- jr nz, .asm_45006
- ret
-
-SpinnerArrowTilePointers1: ; 45023 (11:5023)
- dw SpinnerArrowAnimTiles ;address from within tileset graphics
- db 1 ;number of tiles to copy?
- db BANK(SpinnerArrowAnimTiles) ;bank of tileset graphics
- dw $9200 ;where to load in VRAM
-
- dw SpinnerArrowAnimTiles + $10
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $9210
-
- dw SpinnerArrowAnimTiles + $20
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $9300
-
- dw SpinnerArrowAnimTiles + $30
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $9310
-
- dw Facility_GFX + $200
- db 1
- db BANK(Facility_GFX)
- dw $9200
-
- dw Facility_GFX + $210
- db 1
- db BANK(Facility_GFX)
- dw $9210
-
- dw Facility_GFX + $300
- db 1
- db BANK(Facility_GFX)
- dw $9300
-
- dw Facility_GFX + $310
- db 1
- db BANK(Facility_GFX)
- dw $9310
-
-SpinnerArrowTilePointers2: ; 45053 (11:5053)
- dw SpinnerArrowAnimTiles + $10
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $93C0
-
- dw SpinnerArrowAnimTiles + $30
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $93D0
-
- dw SpinnerArrowAnimTiles
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $94C0
-
- dw SpinnerArrowAnimTiles + $20
- db 1
- db BANK(SpinnerArrowAnimTiles)
- dw $94D0
-
- dw Gym_GFX + $3C0
- db 1
- db BANK(Facility_GFX)
- dw $93C0
-
- dw Gym_GFX + $3D0
- db 1
- db BANK(Facility_GFX)
- dw $93D0
-
- dw Gym_GFX + $4C0
- db 1
- db BANK(Facility_GFX)
- dw $94C0
-
- dw Gym_GFX + $4D0
- db 1
- db BANK(Facility_GFX)
- dw $94D0
-
-SpinnerPlayerFacingDirections: ; 45083 (11:5083)
-; This isn't the order of the facing directions. Rather, it's a list of
-; the facing directions that come next. For example, when the player is
-; facing down (00), the next facing direction is left (08).
- db $08 ; down -> left
- db $0C ; up -> right
- db $04 ; left -> up
- db $00 ; right -> down
-
-; these tiles are the animation for the tiles that push the player in dungeons like Rocket HQ
-SpinnerArrowAnimTiles: ; 45087 (11:5087)
- INCBIN "gfx/spinner_arrow.2bpp"
-
-RocketHideout2TextPointers: ; 450c7 (11:50c7)
- dw RocketHideout2Text1
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-RocketHideout2TrainerHeaders: ; 450d1 (11:50d1)
-RocketHideout2TrainerHeader0: ; 450d1 (11:50d1)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d817 ; flag's byte
- dw RocketHideout2BattleText2 ; 0x50e8 TextBeforeBattle
- dw RocketHideout2AfterBattleTxt2 ; 0x50f2 TextAfterBattle
- dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle
- dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle
-
- db $ff
-
-RocketHideout2Text1: ; 450de (11:50de)
- db $08 ; asm
- ld hl, RocketHideout2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout2BattleText2: ; 450e8 (11:50e8)
- TX_FAR _RocketHideout2BattleText2
- db "@"
-
-RocketHideout2EndBattleText2: ; 450ed (11:50ed)
- TX_FAR _RocketHideout2EndBattleText2
- db "@"
-
-RocketHideout2AfterBattleTxt2: ; 450f2 (11:50f2)
- TX_FAR _RocketHideout2AfterBattleTxt2
- db "@"
-
-RocketHideout2Object: ; 0x450f7 (size=80)
- db $2e ; border tile
-
- db $5 ; warps
- db $8, $1b, $0, ROCKET_HIDEOUT_1
- db $8, $15, $0, ROCKET_HIDEOUT_3
- db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR
- db $16, $15, $3, ROCKET_HIDEOUT_1
- db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_ROCKET, $c + 4, $14 + 4, $ff, $d0, $41, ROCKET + $C8, $d ; trainer
- db SPRITE_BALL, $b + 4, $1 + 4, $ff, $ff, $82, MOON_STONE ; item
- db SPRITE_BALL, $8 + 4, $10 + 4, $ff, $ff, $83, NUGGET ; item
- db SPRITE_BALL, $c + 4, $6 + 4, $ff, $ff, $84, TM_07 ; item
- db SPRITE_BALL, $15 + 4, $3 + 4, $ff, $ff, $85, SUPER_POTION ; item
-
- ; warp-to
- EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $1b ; ROCKET_HIDEOUT_1
- EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $15 ; ROCKET_HIDEOUT_3
- EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR
- EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $16, $15 ; ROCKET_HIDEOUT_1
- EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR
+INCLUDE "data/mapObjects/rockethideout2.asm"
RocketHideout2Blocks: ; 45147 (11:5147)
INCBIN "maps/rockethideout2.blk"
-RocketHideout3_h: ; 0x45219 to 0x45225 (12 bytes) (bank=11) (id=201)
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_3_HEIGHT, ROCKET_HIDEOUT_3_WIDTH ; dimensions (y, x)
- dw RocketHideout3Blocks, RocketHideout3TextPointers, RocketHideout3Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout3Object ; objects
+INCLUDE "data/mapHeaders/rockethideout3.asm"
-RocketHideout3Script: ; 45225 (11:5225)
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout3TrainerHeaders
- ld de, RocketHideout3ScriptPointers
- ld a, [W_ROCKETHIDEOUT3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROCKETHIDEOUT3CURSCRIPT], a
- ret
+INCLUDE "scripts/rockethideout3.asm"
-RocketHideout3ScriptPointers: ; 45238 (11:5238)
- dw RocketHideout3Script0
- dw Func_324c
- dw EndTrainerBattle
- dw RocketHideout3Script3
-
-RocketHideout3Script0: ; 45240 (11:5240)
- ld a, [W_YCOORD]
- ld b, a
- ld a, [W_XCOORD]
- ld c, a
- ld hl, RocketHideout3ArrowTilePlayerMovement
- call Func_3442
- cp $ff
- jp z, CheckFightingMapTrainers
- ld hl, $d736
- set 7, [hl]
- call Func_3486
- ld a, (SFX_02_52 - SFX_Headers_02) / 3
- call PlaySound
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $3
- ld [W_CURMAPSCRIPT], a
- ret
-
-;format:
-;db y,x
-;dw pointer to movement
-RocketHideout3ArrowTilePlayerMovement: ; 4526b (11:526b)
- db $d,$a
- dw RocketHideout3ArrowMovement6
- db $13,$a
- dw RocketHideout3ArrowMovement1
- db $12,$b
- dw RocketHideout3ArrowMovement2
- db $b,$c
- dw RocketHideout3ArrowMovement3
- db $11,$c
- dw RocketHideout3ArrowMovement4
- db $14,$c
- dw RocketHideout3ArrowMovement5
- db $10,$d
- dw RocketHideout3ArrowMovement6
- db $b,$e
- dw RocketHideout3ArrowMovement7
- db $f,$e
- dw RocketHideout3ArrowMovement6
- db $11,$e
- dw RocketHideout3ArrowMovement8
- db $13,$e
- dw RocketHideout3ArrowMovement9
- db $10,$f
- dw RocketHideout3ArrowMovement7
- db $12,$f
- dw RocketHideout3ArrowMovement10
- db $d,$10
- dw RocketHideout3ArrowMovement11
- db $c,$11
- dw RocketHideout3ArrowMovement10
- db $10,$12
- dw RocketHideout3ArrowMovement12
- db $FF
-
-;format: direction, count
-;right: $10
-;left: $20
-;up: $40
-;down: $80
-;each list is read starting from the $FF and working backwards
-RocketHideout3ArrowMovement1: ; 452ac (11:52ac)
- db $10,$04
- db $40,$04
- db $10,$04
- db $FF
-
-RocketHideout3ArrowMovement2: ; 452b3 (11:52b3)
- db $80,$04
- db $10,$04
- db $FF
-
-RocketHideout3ArrowMovement3: ; 452b8 (11:52b8)
- db $20,$02
- db $FF
-
-RocketHideout3ArrowMovement4: ; 452bb (11:52bb)
- db $10,$04
- db $40,$02
- db $10,$02
- db $FF
-
-RocketHideout3ArrowMovement5: ; 452c2 (11:52c2)
- db $10,$04
- db $40,$02
- db $10,$02
- db $40,$03
- db $FF
-
-RocketHideout3ArrowMovement6: ; 452cb (11:52cb)
- db $10,$04
- db $FF
-
-RocketHideout3ArrowMovement7: ; 452ce (11:52ce)
- db $10,$02
- db $FF
-
-RocketHideout3ArrowMovement8: ; 452d1 (11:52d1)
- db $10,$04
- db $40,$02
- db $FF
-
-RocketHideout3ArrowMovement9: ; 452d6 (11:52d6)
- db $10,$04
- db $40,$04
- db $FF
-
-RocketHideout3ArrowMovement10: ; 452db (11:52db)
- db $80,$04
- db $FF
-
-RocketHideout3ArrowMovement11: ; 452de (11:52de)
- db $40,$02
- db $FF
-
-RocketHideout3ArrowMovement12: ; 452e1 (11:52e1)
- db $40,$01
- db $FF
-
-RocketHideout3Script3 ; 452e4 (11:452e4)
- ld a, [$cd38]
- and a
- jp nz, Func_44fd7
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d736
- res 7, [hl]
- ld a, $0
- ld [W_CURMAPSCRIPT], a
- ret
-
-RocketHideout3TextPointers: ; 452fa (11:52fa)
- dw RocketHideout3Text1
- dw RocketHideout3Text2
- dw Predef5CText
- dw Predef5CText
-
-RocketHideout3TrainerHeaders: ; 45302 (11:5302)
-RocketHideout3TrainerHeader0: ; 45302 (11:5302)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d819 ; flag's byte
- dw RocketHideout3BattleText2 ; 0x5325 TextBeforeBattle
- dw RocketHideout3AfterBattleTxt2 ; 0x532f TextAfterBattle
- dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle
- dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle
-
-RocketHideout3TrainerHeader2: ; 4530e (11:530e)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d819 ; flag's byte
- dw RocketHideout3BattleTxt ; 0x533e TextBeforeBattle
- dw RocketHideout3AfterBattleText3 ; 0x5348 TextAfterBattle
- dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle
- dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle
-
- db $ff
-
-RocketHideout3Text1: ; 4531b (11:531b)
- db $08 ; asm
- ld hl, RocketHideout3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout3BattleText2: ; 45325 (11:5325)
- TX_FAR _RocketHideout3BattleText2
- db "@"
-
-RocketHideout3EndBattleText2: ; 4532a (11:532a)
- TX_FAR _RocketHideout3EndBattleText2
- db "@"
-
-RocketHideout3AfterBattleTxt2: ; 4532f (11:532f)
- TX_FAR _RocketHideout3AfterBattleTxt2
- db "@"
-
-RocketHideout3Text2: ; 45334 (11:5334)
- db $08 ; asm
- ld hl, RocketHideout3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout3BattleTxt: ; 4533e (11:533e)
- TX_FAR _RocketHideout3BattleTxt
- db "@"
-
-RocketHideout3EndBattleText3: ; 45343 (11:5343)
- TX_FAR _RocketHideout3EndBattleText3
- db "@"
-
-RocketHideout3AfterBattleText3: ; 45348 (11:5348)
- TX_FAR _RocketHide3AfterBattleText3
- db "@"
-
-RocketHideout3Object: ; 0x4534d (size=50)
- db $2e ; border tile
-
- db $2 ; warps
- db $6, $19, $1, ROCKET_HIDEOUT_2
- db $12, $13, $0, ROCKET_HIDEOUT_4
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_ROCKET, $16 + 4, $a + 4, $ff, $d3, $41, ROCKET + $C8, $e ; trainer
- db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d1, $42, ROCKET + $C8, $f ; trainer
- db SPRITE_BALL, $11 + 4, $1a + 4, $ff, $ff, $83, TM_10 ; item
- db SPRITE_BALL, $e + 4, $14 + 4, $ff, $ff, $84, RARE_CANDY ; item
-
- ; warp-to
- EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $6, $19 ; ROCKET_HIDEOUT_2
- EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $12, $13 ; ROCKET_HIDEOUT_4
+INCLUDE "data/mapObjects/rockethideout3.asm"
RocketHideout3Blocks: ; 4537f (11:537f)
INCBIN "maps/rockethideout3.blk"
-RocketHideout4_h: ; 0x45451 to 0x4545d (12 bytes) (bank=11) (id=202)
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_4_HEIGHT, ROCKET_HIDEOUT_4_WIDTH ; dimensions (y, x)
- dw RocketHideout4Blocks, RocketHideout4TextPointers, RocketHideout4Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout4Object ; objects
-
-RocketHideout4Script: ; 4545d (11:545d)
- call Func_45473
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout4TrainerHeader0
- ld de, RocketHideout4ScriptPointers
- ld a, [W_ROCKETHIDEOUT4CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROCKETHIDEOUT4CURSCRIPT], a
- ret
-
-Func_45473: ; 45473 (11:5473)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d81b]
- bit 5, a
- jr nz, .asm_45496
- and $c
- cp $c
- jr z, .asm_4548c
- ld a, $2d
- jr .asm_45498
-.asm_4548c
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- ld hl, $d81b
- set 5, [hl]
-.asm_45496
- ld a, $e
-.asm_45498
- ld [$d09f], a
- ld bc, $050c
- ld a, $17
- jp Predef
-
-Func_454a3: ; 454a3 (11:54a3)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROCKETHIDEOUT4CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-RocketHideout4ScriptPointers: ; 454ae (11:54ae)c
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw RocketHideout4Script3
-
-RocketHideout4Script3: ; 454b6 (11:54b6)
- ld a, [W_ISINBATTLE]
- cp $ff
- jp z, Func_454a3
- call UpdateSprites
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d81b
- set 7, [hl]
- ld a, $a
- ld [H_SPRITEHEIGHT], a
- call DisplayTextID
- call GBFadeIn1
- ld a, $83
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $87
- ld [$cc4d], a
- ld a, $15
- call Predef
- call UpdateSprites
- call GBFadeOut1
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d126
- set 5, [hl]
- ld a, $0
- ld [W_ROCKETHIDEOUT4CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-RocketHideout4TextPointers: ; 45501 (11:5501)
- dw RocketHideout4Text1
- dw RocketHideout4Text2
- dw RocketHideout4Text3
- dw RocketHideout4Text4
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw RocketHideout4Text10
-
-RocketHideout4TrainerHeaders: ; 45515 (11:5515)
-RocketHideout4TrainerHeader0: ; 45515 (11:5515)
- db $2 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d81b ; flag's byte
- dw RocketHideout4BattleText2 ; 0x5593 TextBeforeBattle
- dw RocketHideout4AfterBattleText2 ; 0x559d TextAfterBattle
- dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle
- dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle
-
-RocketHideout4TrainerHeader2: ; 45521 (11:5521)
- db $3 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d81b ; flag's byte
- dw RocketHideout4BattleText3 ; 0x55ac TextBeforeBattle
- dw RocketHideout4AfterBattleText3 ; 0x55b6 TextAfterBattle
- dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle
- dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle
-
-RocketHideout4TrainerHeader3: ; 4552d (11:552d)
- db $4 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d81b ; flag's byte
- dw RocketHideout4BattleText4 ; 0x55c5 TextBeforeBattle
- dw RocketHideout4AfterBattleText4 ; 0x55cf TextAfterBattle
- dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle
- dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle
-
- db $ff
-
-RocketHideout4Text1: ; 4553a (11:553a)
- db $08 ; asm
- ld a, [$d81b]
- bit 7, a
- jp nz, .asm_545571
- ld hl, UnnamedText_4557a
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_4557f
- ld de, UnnamedText_4557f
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ldh [$b4], a
- ld a, $3
- ld [W_ROCKETHIDEOUT4CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jr .asm_209f0 ; 0x4556f
-.asm_545571
- ld hl, RocketHideout4Text10
- call PrintText
-.asm_209f0 ; 0x45577
- jp TextScriptEnd
-
-UnnamedText_4557a: ; 4557a (11:557a)
- TX_FAR _UnnamedText_4557a
- db "@"
+INCLUDE "data/mapHeaders/rockethideout4.asm"
-UnnamedText_4557f: ; 4557f (11:557f)
- TX_FAR _UnnamedText_4557f
- db "@"
+INCLUDE "scripts/rockethideout4.asm"
-RocketHideout4Text10: ; 45584 (11:5584)
- TX_FAR _UnnamedText_45584
- db "@"
-
-RocketHideout4Text2: ; 45589 (11:5589)
- db $08 ; asm
- ld hl, RocketHideout4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout4BattleText2: ; 45593 (11:5593)
- TX_FAR _RocketHideout4BattleText2
- db "@"
-
-RocketHideout4EndBattleText2: ; 45598 (11:5598)
- TX_FAR _RocketHideout4EndBattleText2
- db "@"
-
-RocketHideout4AfterBattleText2: ; 4559d (11:559d)
- TX_FAR _RocketHide4AfterBattleText2
- db "@"
-
-RocketHideout4Text3: ; 455a2 (11:55a2)
- db $08 ; asm
- ld hl, RocketHideout4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout4BattleText3: ; 455ac (11:55ac)
- TX_FAR _RocketHideout4BattleText3
- db "@"
-
-RocketHideout4EndBattleText3: ; 455b1 (11:55b1)
- TX_FAR _RocketHideout4EndBattleText3
- db "@"
-
-RocketHideout4AfterBattleText3: ; 455b6 (11:55b6)
- TX_FAR _RocketHide4AfterBattleText3
- db "@"
-
-RocketHideout4Text4: ; 455bb (11:55bb)
- db $08 ; asm
- ld hl, RocketHideout4TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout4BattleText4: ; 455c5 (11:55c5)
- TX_FAR _RocketHideout4BattleText4
- db "@"
-
-RocketHideout4EndBattleText4: ; 455ca (11:55ca)
- TX_FAR _RocketHideout4EndBattleText4
- db "@"
-
-RocketHideout4AfterBattleText4: ; 455cf (11:55cf)
- db $8
- ld hl, UnnamedText_455ec ; $55ec
- call PrintText
- ld hl, $d81b
- bit 6, [hl]
- set 6, [hl]
- jr nz, .asm_455e9 ; 0x455dd $a
- ld a, $88
- ld [$cc4d], a
- ld a, $15
- call Predef
-.asm_455e9
- jp TextScriptEnd
-
-UnnamedText_455ec: ; 455ec (11:55ec)
- TX_FAR _UnnamedText_455ec
- db "@"
-
-RocketHideout4Object: ; 0x455f1 (size=95)
- db $2e ; border tile
-
- db $3 ; warps
- db $a, $13, $1, ROCKET_HIDEOUT_3
- db $f, $18, $0, ROCKET_HIDEOUT_ELEVATOR
- db $f, $19, $1, ROCKET_HIDEOUT_ELEVATOR
-
- db $0 ; signs
-
- db $9 ; people
- db SPRITE_GIOVANNI, $3 + 4, $19 + 4, $ff, $d0, $41, GIOVANNI + $C8, $1 ; trainer
- db SPRITE_ROCKET, $c + 4, $17 + 4, $ff, $d0, $42, ROCKET + $C8, $10 ; trainer
- db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d0, $43, ROCKET + $C8, $11 ; trainer
- db SPRITE_ROCKET, $2 + 4, $b + 4, $ff, $d0, $44, ROCKET + $C8, $12 ; trainer
- db SPRITE_BALL, $c + 4, $a + 4, $ff, $ff, $85, HP_UP ; item
- db SPRITE_BALL, $4 + 4, $9 + 4, $ff, $ff, $86, TM_02 ; item
- db SPRITE_BALL, $14 + 4, $c + 4, $ff, $ff, $87, IRON ; item
- db SPRITE_BALL, $2 + 4, $19 + 4, $ff, $ff, $88, SILPH_SCOPE ; item
- db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $89, LIFT_KEY ; item
-
- ; warp-to
- EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $a, $13 ; ROCKET_HIDEOUT_3
- EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $18 ; ROCKET_HIDEOUT_ELEVATOR
- EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $19 ; ROCKET_HIDEOUT_ELEVATOR
+INCLUDE "data/mapObjects/rockethideout4.asm"
RocketHideout4Blocks: ; 45650 (11:5650)
INCBIN "maps/rockethideout4.blk"
-RocketHideoutElevator_h: ; 0x45704 to 0x45710 (12 bytes) (bank=11) (id=203)
- db LOBBY ; tileset
- db ROCKET_HIDEOUT_ELEVATOR_HEIGHT, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; dimensions (y, x)
- dw RocketHideoutElevatorBlocks, RocketHideoutElevatorTextPointers, RocketHideoutElevatorScript ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideoutElevatorObject ; objects
-
-RocketHideoutElevatorScript: ; 45710 (11:5710)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, RocketHideoutElevatorScript_4572c
- pop hl
- bit 7, [hl]
- res 7, [hl]
- call nz, Func_4575f
- xor a
- ld [$cf0c], a
- inc a
- ld [$cc3c], a
- ret
-
-RocketHideoutElevatorScript_4572c: ; 4572c (11:572c)
- ld hl, $d3af
- ld a, [$d73b]
- ld b, a
- ld a, [$d73c]
- ld c, a
- call RocketHideoutElevatorScript_4573a
+INCLUDE "data/mapHeaders/rockethideoutelevator.asm"
-RocketHideoutElevatorScript_4573a: ; 4573a (11:573a)
- inc hl
- inc hl
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ret
+INCLUDE "scripts/rockethideoutelevator.asm"
-RocketHideoutElevatorScript_45741: ; 45741 (11:5741)
- ld hl, RocketHideoutElavatorFloors ; $5754
- call LoadItemList
- ld hl, RocketHideoutElevatorWarpMaps ; $5759
- ld de, $cc5b
- ld bc, $0006
- call CopyData
- ret
-
-RocketHideoutElavatorFloors: ; 45754 (11:5754)
- db $03 ; num elements in list
- db $55, $54, $61 ; "B1F", "B2F", "B4F"
- db $FF ; terminator
-
-RocketHideoutElevatorWarpMaps: ; 45759 (11:5759)
-; first byte is warp number
-; second byte is map number
-; These specify where the player goes after getting out of the elevator.
- db $04, ROCKET_HIDEOUT_1
- db $04, ROCKET_HIDEOUT_2
- db $02, ROCKET_HIDEOUT_4
-
-Func_4575f: ; 4575f (11:575f)
- call Delay3
- callba Func_7bf15
- ret
-
-RocketHideoutElevatorTextPointers: ; 4576b (11:576b)
- dw RocketHideoutElevatorText1
-
-RocketHideoutElevatorText1: ; 4576d (11:576d)
- db $08 ; asm
- ld b, LIFT_KEY
- call IsItemInBag
- jr z, .asm_8d8f0 ; 0x45773
- call RocketHideoutElevatorScript_45741
- ld hl, RocketHideoutElevatorWarpMaps ; $5759
- ld a, $61
- call Predef
- jr .asm_46c43 ; 0x45780
-.asm_8d8f0 ; 0x45782
- ld hl, UnnamedText_4578b
- call PrintText
-.asm_46c43 ; 0x45788
- jp TextScriptEnd
-
-UnnamedText_4578b: ; 4578b (11:578b)
- TX_FAR _UnnamedText_4578b ; 0x82438
- db $d, "@"
-
-RocketHideoutElevatorObject: ; 0x45791 (size=23)
- db $f ; border tile
-
- db $2 ; warps
- db $1, $2, $2, ROCKET_HIDEOUT_1
- db $1, $3, $4, ROCKET_HIDEOUT_1
-
- db $1 ; signs
- db $1, $1, $1 ; RocketHideoutElevatorText1
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $2 ; ROCKET_HIDEOUT_1
- EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $3 ; ROCKET_HIDEOUT_1
+INCLUDE "data/mapObjects/rockethideoutelevator.asm"
RocketHideoutElevatorBlocks: ; 457a8 (11:57a8)
INCBIN "maps/rockethideoutelevator.blk"
-SilphCoElevator_h: ; 0x457b4 to 0x457c0 (12 bytes) (bank=11) (id=236)
- db LOBBY ; tileset
- db SILPH_CO_ELEVATOR_HEIGHT, SILPH_CO_ELEVATOR_WIDTH ; dimensions (y, x)
- dw SilphCoElevatorBlocks, SilphCoElevatorTextPointers, SilphCoElevatorScript ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCoElevatorObject ; objects
-
-SilphCoElevatorScript: ; 457c0 (11:57c0)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, SilphCoElevatorScript_457dc
- pop hl
- bit 7, [hl]
- res 7, [hl]
- call nz, Func_45827
- xor a
- ld [$cf0c], a
- inc a
- ld [$cc3c], a
- ret
-
-SilphCoElevatorScript_457dc: ; 457dc (11:57dc)
- ld hl, $d3af
- ld a, [$d73b]
- ld b, a
- ld a, [$d73c]
- ld c, a
- call SilphCoElevatorScript_457ea
-
-SilphCoElevatorScript_457ea: ; 457ea (11:57ea)
- inc hl
- inc hl
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ret
+INCLUDE "data/mapHeaders/silphcoelevator.asm"
-SilphCoElevatorScript_457f1: ; 457f1 (11:57f1)
- ld hl, SilphCoElavatorFloors ; $5804
- call LoadItemList
- ld hl, SilphCoElevatorWarpMaps ; $5811
- ld de, $cc5b
- ld bc, $16
- call CopyData
- ret
+INCLUDE "scripts/silphcoelevator.asm"
-SilphCoElavatorFloors: ; 45804 (11:45804)
- db $0B ; num elements in list
- db $56, $57, $58, $59, $5A, $5B, $5C, $5D, $5E, $5F, $60 ; "1F", "2F", "3F", "4F", ... , "11F"
- db $FF ; terminator
-
-SilphCoElevatorWarpMaps: ; 45811 (11:45811)
-; first byte is warp number
-; second byte is map number
-; These specify where the player goes after getting out of the elevator.
- db $03, SILPH_CO_1F
- db $02, SILPH_CO_2F
- db $02, SILPH_CO_3F
- db $02, SILPH_CO_4F
- db $02, SILPH_CO_5F
- db $02, SILPH_CO_6F
- db $02, SILPH_CO_7F
- db $02, SILPH_CO_8F
- db $02, SILPH_CO_9F
- db $02, SILPH_CO_10F
- db $01, SILPH_CO_11F
-
-Func_45827: ; 45827 (11:5827)
- call Delay3
- callba Func_7bf15
- ret
-
-SilphCoElevatorTextPointers: ; 45833 (11:5833)
- dw SilphCoElevatorText1
-
-SilphCoElevatorText1: ; 45835 (11:5835)
- db $08 ; asm
- call SilphCoElevatorScript_457f1
- ld hl, SilphCoElevatorWarpMaps ; $5811
- ld a, $61
- call Predef
- jp TextScriptEnd
-
-SilphCoElevatorObject: ; 0x45844 (size=23)
- db $f ; border tile
-
- db $2 ; warps
- db $3, $1, $0, $ed
- db $3, $2, $0, $ed
-
- db $1 ; signs
- db $0, $3, $1 ; SilphCoElevatorText1
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $1
- EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $2
+INCLUDE "data/mapObjects/silphcoelevator.asm"
SilphCoElevatorBlocks: ; 4585b (11:585b)
INCBIN "maps/silphcoelevator.blk"
-SafariZoneEast_h: ; 0x4585f to 0x4586b (12 bytes) (bank=11) (id=217)
- db FOREST ; tileset
- db SAFARI_ZONE_EAST_HEIGHT, SAFARI_ZONE_EAST_WIDTH ; dimensions (y, x)
- dw SafariZoneEastBlocks, SafariZoneEastTextPointers, SafariZoneEastScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneEastObject ; objects
-
-SafariZoneEastScript: ; 4586b (11:586b)
- jp EnableAutoTextBoxDrawing
-
-SafariZoneEastTextPointers: ; 4586e (11:586e)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw SafariZoneEastText5
- dw SafariZoneEastText6
- dw SafariZoneEastText7
-
-SafariZoneEastText5: ; 4587c (11:587c)
- TX_FAR _SafariZoneEastText5
- db "@"
-
-SafariZoneEastText6: ; 45881 (11:5881)
- TX_FAR _SafariZoneEastText6
- db "@"
+INCLUDE "data/mapHeaders/safarizoneeast.asm"
-SafariZoneEastText7: ; 45886 (11:5886)
- TX_FAR _SafariZoneEastText7
- db "@"
+INCLUDE "scripts/safarizoneeast.asm"
-SafariZoneEastObject: ; 0x4588b (size=81)
- db $0 ; border tile
-
- db $5 ; warps
- db $4, $0, $6, SAFARI_ZONE_NORTH
- db $5, $0, $7, SAFARI_ZONE_NORTH
- db $16, $0, $6, SAFARI_ZONE_CENTER
- db $17, $0, $6, SAFARI_ZONE_CENTER
- db $9, $19, $0, SAFARI_ZONE_REST_HOUSE_3
-
- db $3 ; signs
- db $a, $1a, $5 ; SafariZoneEastText5
- db $4, $6, $6 ; SafariZoneEastText6
- db $17, $5, $7 ; SafariZoneEastText7
-
- db $4 ; people
- db SPRITE_BALL, $a + 4, $15 + 4, $ff, $ff, $81, FULL_RESTORE ; item
- db SPRITE_BALL, $7 + 4, $3 + 4, $ff, $ff, $82, MAX_POTION ; item
- db SPRITE_BALL, $d + 4, $14 + 4, $ff, $ff, $83, CARBOS ; item
- db SPRITE_BALL, $c + 4, $f + 4, $ff, $ff, $84, TM_37 ; item
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $4, $0 ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $5, $0 ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $16, $0 ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $17, $0 ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $9, $19 ; SAFARI_ZONE_REST_HOUSE_3
+INCLUDE "data/mapObjects/safarizoneeast.asm"
SafariZoneEastBlocks: ; 458dc (11:58dc)
INCBIN "maps/safarizoneeast.blk"
-SafariZoneNorth_h: ; 0x4599f to 0x459ab (12 bytes) (bank=11) (id=218)
- db FOREST ; tileset
- db SAFARI_ZONE_NORTH_HEIGHT, SAFARI_ZONE_NORTH_WIDTH ; dimensions (y, x)
- dw SafariZoneNorthBlocks, SafariZoneNorthTextPointers, SafariZoneNorthScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneNorthObject ; objects
-
-SafariZoneNorthScript: ; 459ab (11:59ab)
- jp EnableAutoTextBoxDrawing
-
-SafariZoneNorthTextPointers: ; 459ae (11:59ae)
- dw Predef5CText
- dw Predef5CText
- dw SafariZoneNorthText3
- dw SafariZoneNorthText4
- dw SafariZoneNorthText5
- dw SafariZoneNorthText6
- dw SafariZoneNorthText7
-
-SafariZoneNorthText3: ; 459bc (11:59bc)
- TX_FAR _SafariZoneNorthText3
- db "@"
-
-SafariZoneNorthText4: ; 459c1 (11:59c1)
- TX_FAR _SafariZoneNorthText4
- db "@"
-
-SafariZoneNorthText5: ; 459c6 (11:59c6)
- TX_FAR _SafariZoneNorthText5
- db "@"
-
-SafariZoneNorthText6: ; 459cb (11:59cb)
- TX_FAR _SafariZoneNorthText6
- db "@"
+INCLUDE "data/mapHeaders/safarizonenorth.asm"
-SafariZoneNorthText7: ; 459d0 (11:59d0)
- TX_FAR _SafariZoneNorthText7
- db "@"
+INCLUDE "scripts/safarizonenorth.asm"
-SafariZoneNorthObject: ; 0x459d5 (size=105)
- db $0 ; border tile
-
- db $9 ; warps
- db $23, $2, $0, SAFARI_ZONE_WEST
- db $23, $3, $1, SAFARI_ZONE_WEST
- db $23, $8, $2, SAFARI_ZONE_WEST
- db $23, $9, $3, SAFARI_ZONE_WEST
- db $23, $14, $4, SAFARI_ZONE_CENTER
- db $23, $15, $5, SAFARI_ZONE_CENTER
- db $1e, $27, $0, SAFARI_ZONE_EAST
- db $1f, $27, $1, SAFARI_ZONE_EAST
- db $3, $23, $0, SAFARI_ZONE_REST_HOUSE_4
-
- db $5 ; signs
- db $4, $24, $3 ; SafariZoneNorthText3
- db $19, $4, $4 ; SafariZoneNorthText4
- db $1f, $d, $5 ; SafariZoneNorthText5
- db $21, $13, $6 ; SafariZoneNorthText6
- db $1c, $1a, $7 ; SafariZoneNorthText7
-
- db $2 ; people
- db SPRITE_BALL, $1 + 4, $19 + 4, $ff, $ff, $81, PROTEIN ; item
- db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $82, TM_40 ; item
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $2 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $3 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $8 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $9 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $14 ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $15 ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1e, $27 ; SAFARI_ZONE_EAST
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1f, $27 ; SAFARI_ZONE_EAST
- EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $3, $23 ; SAFARI_ZONE_REST_HOUSE_4
+INCLUDE "data/mapObjects/safarizonenorth.asm"
SafariZoneNorthBlocks: ; 45a3e (11:5a3e)
INCBIN "maps/safarizonenorth.blk"
-SafariZoneCenter_h: ; 0x45ba6 to 0x45bb2 (12 bytes) (bank=11) (id=220)
- db FOREST ; tileset
- db SAFARI_ZONE_CENTER_HEIGHT, SAFARI_ZONE_CENTER_WIDTH ; dimensions (y, x)
- dw SafariZoneCenterBlocks, SafariZoneCenterTextPointers, SafariZoneCenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneCenterObject ; objects
-
-SafariZoneCenterScript: ; 45bb2 (11:5bb2)
- jp EnableAutoTextBoxDrawing
-
-SafariZoneCenterTextPointers: ; 45bb5 (11:5bb5)
- dw Predef5CText
- dw SafariZoneCenterText2
- dw SafariZoneCenterText3
+INCLUDE "data/mapHeaders/safarizonecenter.asm"
-SafariZoneCenterText2: ; 45bbb (11:5bbb)
- TX_FAR _SafariZoneCenterText2
- db "@"
-
-SafariZoneCenterText3: ; 45bc0 (11:5bc0)
- TX_FAR _SafariZoneCenterText3
- db "@"
+INCLUDE "scripts/safarizonecenter.asm"
-SafariZoneCenterObject: ; 0x45bc5 (size=89)
- db $0 ; border tile
-
- db $9 ; warps
- db $19, $e, $2, SAFARI_ZONE_ENTRANCE
- db $19, $f, $3, SAFARI_ZONE_ENTRANCE
- db $a, $0, $4, SAFARI_ZONE_WEST
- db $b, $0, $5, SAFARI_ZONE_WEST
- db $0, $e, $4, SAFARI_ZONE_NORTH
- db $0, $f, $5, SAFARI_ZONE_NORTH
- db $a, $1d, $2, SAFARI_ZONE_EAST
- db $b, $1d, $3, SAFARI_ZONE_EAST
- db $13, $11, $0, SAFARI_ZONE_REST_HOUSE_1
-
- db $2 ; signs
- db $14, $12, $2 ; SafariZoneCenterText2
- db $16, $e, $3 ; SafariZoneCenterText3
-
- db $1 ; people
- db SPRITE_BALL, $a + 4, $e + 4, $ff, $ff, $81, NUGGET ; item
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $e ; SAFARI_ZONE_ENTRANCE
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $f ; SAFARI_ZONE_ENTRANCE
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $0 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $0 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $e ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $f ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $1d ; SAFARI_ZONE_EAST
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $1d ; SAFARI_ZONE_EAST
- EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $13, $11 ; SAFARI_ZONE_REST_HOUSE_1
+INCLUDE "data/mapObjects/safarizonecenter.asm"
SafariZoneCenterBlocks: ; 45c1e (11:5c1e)
INCBIN "maps/safarizonecenter.blk"
-SafariZoneRestHouse1_h: ; 0x45ce1 to 0x45ced (12 bytes) (bank=11) (id=221)
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_1_HEIGHT, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse1Blocks, SafariZoneRestHouse1TextPointers, SafariZoneRestHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse1Object ; objects
+INCLUDE "data/mapHeaders/safarizoneresthouse1.asm"
-SafariZoneRestHouse1Script: ; 45ced (11:5ced)
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/safarizoneresthouse1.asm"
-SafariZoneRestHouse1TextPointers: ; 45cf0 (11:5cf0)
- dw SafariZoneRestHouse1Text1
- dw SafariZoneRestHouse1Text2
+INCLUDE "data/mapObjects/safarizoneresthouse1.asm"
-SafariZoneRestHouse1Text1: ; 45cf4 (11:5cf4)
- TX_FAR _SafariZoneRestHouse1Text1
- db "@"
+INCLUDE "data/mapHeaders/safarizoneresthouse2.asm"
-SafariZoneRestHouse1Text2: ; 45cf9 (11:5cf9)
- TX_FAR _SafariZoneRestHouse1Text2
- db "@"
-
-SafariZoneRestHouse1Object: ; 0x45cfe (size=32)
- db $a ; border tile
+INCLUDE "scripts/safarizoneresthouse2.asm"
- db $2 ; warps
- db $7, $2, $8, SAFARI_ZONE_CENTER
- db $7, $3, $8, SAFARI_ZONE_CENTER
+INCLUDE "data/mapObjects/safarizoneresthouse2.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/safarizoneresthouse3.asm"
- db $2 ; people
- db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $fe, $1, $2 ; person
+INCLUDE "scripts/safarizoneresthouse3.asm"
- ; warp-to
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $2 ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $3 ; SAFARI_ZONE_CENTER
+INCLUDE "data/mapObjects/safarizoneresthouse3.asm"
-SafariZoneRestHouse2_h: ; 0x45d1e to 0x45d2a (12 bytes) (bank=11) (id=223)
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_2_HEIGHT, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse2Blocks, SafariZoneRestHouse2TextPointers, SafariZoneRestHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse2Object ; objects
-
-SafariZoneRestHouse2Script: ; 45d2a (11:5d2a)
- call EnableAutoTextBoxDrawing
- ret
+INCLUDE "data/mapHeaders/safarizoneresthouse4.asm"
-SafariZoneRestHouse2TextPointers: ; 45d2e (11:5d2e)
- dw SafariZoneRestHouse2Text1
- dw SafariZoneRestHouse2Text2
- dw SafariZoneRestHouse2Text3
+INCLUDE "scripts/safarizoneresthouse4.asm"
-SafariZoneRestHouse2Text1: ; 45d34 (11:5d34)
- TX_FAR _SafariZoneRestHouse2Text1
- db "@"
+INCLUDE "data/mapObjects/safarizoneresthouse4.asm"
-SafariZoneRestHouse2Text2: ; 45d39 (11:5d39)
- TX_FAR _SafariZoneRestHouse2Text2
- db "@"
+INCLUDE "data/mapHeaders/unknowndungeon2.asm"
-SafariZoneRestHouse2Text3: ; 45d3e (11:5d3e)
- TX_FAR _SafariZoneRestHouse2Text3
- db "@"
+INCLUDE "scripts/unknowndungeon2.asm"
-SafariZoneRestHouse2Object: ; 0x45d43 (size=38)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $7, SAFARI_ZONE_WEST
- db $7, $3, $7, SAFARI_ZONE_WEST
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_OAK_AIDE, $4 + 4, $4 + 4, $fe, $0, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $0 + 4, $ff, $d3, $2 ; person
- db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $d0, $3 ; person
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $2 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $3 ; SAFARI_ZONE_WEST
-
-SafariZoneRestHouse3_h: ; 0x45d69 to 0x45d75 (12 bytes) (bank=11) (id=224)
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_3_HEIGHT, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse3Blocks, SafariZoneRestHouse3TextPointers, SafariZoneRestHouse3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse3Object ; objects
-
-SafariZoneRestHouse3Script: ; 45d75 (11:5d75)
- call EnableAutoTextBoxDrawing
- ret
-
-SafariZoneRestHouse3TextPointers: ; 45d79 (11:5d79)
- dw SafariZoneRestHouse3Text1
- dw SafariZoneRestHouse3Text2
- dw SafariZoneRestHouse3Text3
-
-SafariZoneRestHouse3Text1: ; 45d7f (11:5d7f)
- TX_FAR _SafariZoneRestHouse3Text1
- db "@"
-
-SafariZoneRestHouse3Text2: ; 45d84 (11:5d84)
- TX_FAR _SafariZoneRestHouse3Text2
- db "@"
-
-SafariZoneRestHouse3Text3: ; 45d89 (11:5d89)
- TX_FAR _SafariZoneRestHouse3Text3
- db "@"
-
-SafariZoneRestHouse3Object: ; 0x45d8e (size=38)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $4, SAFARI_ZONE_EAST
- db $7, $3, $4, SAFARI_ZONE_EAST
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_OAK_AIDE, $3 + 4, $1 + 4, $fe, $1, $1 ; person
- db SPRITE_ROCKER, $2 + 4, $4 + 4, $ff, $ff, $2 ; person
- db SPRITE_LAPRAS_GIVER, $2 + 4, $5 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $2 ; SAFARI_ZONE_EAST
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $3 ; SAFARI_ZONE_EAST
-
-SafariZoneRestHouse4_h: ; 0x45db4 to 0x45dc0 (12 bytes) (bank=11) (id=225)
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_4_HEIGHT, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse4Blocks, SafariZoneRestHouse4TextPointers, SafariZoneRestHouse4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse4Object ; objects
-
-SafariZoneRestHouse4Script: ; 45dc0 (11:5dc0)
- call EnableAutoTextBoxDrawing
- ret
-
-SafariZoneRestHouse4TextPointers: ; 45dc4 (11:5dc4)
- dw SafariZoneRestHouse4Text1
- dw SafariZoneRestHouse4Text2
- dw SafariZoneRestHouse4Text3
-
-SafariZoneRestHouse4Text1: ; 45dca (11:5dca)
- TX_FAR _SafariZoneRestHouse4Text1
- db "@"
-
-SafariZoneRestHouse4Text2: ; 45dcf (11:5dcf)
- TX_FAR _SafariZoneRestHouse4Text2
- db "@"
-
-SafariZoneRestHouse4Text3: ; 45dd4 (11:5dd4)
- TX_FAR _SafariZoneRestHouse4Text3
- db "@"
-
-SafariZoneRestHouse4Object: ; 0x45dd9 (size=38)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $8, SAFARI_ZONE_NORTH
- db $7, $3, $8, SAFARI_ZONE_NORTH
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_OAK_AIDE, $3 + 4, $6 + 4, $fe, $2, $1 ; person
- db SPRITE_WHITE_PLAYER, $4 + 4, $3 + 4, $ff, $ff, $2 ; person
- db SPRITE_GENTLEMAN, $5 + 4, $1 + 4, $fe, $1, $3 ; person
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $2 ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $3 ; SAFARI_ZONE_NORTH
-
-UnknownDungeon2_h: ; 0x45dff to 0x45e0b (12 bytes) (bank=11) (id=226)
- db CAVERN ; tileset
- db UNKNOWN_DUNGEON_2_HEIGHT, UNKNOWN_DUNGEON_2_WIDTH ; dimensions (y, x)
- dw UnknownDungeon2Blocks, UnknownDungeon2TextPointers, UnknownDungeon2Script ; blocks, texts, scripts
- db $00 ; connections
- dw UnknownDungeon2Object ; objects
-
-UnknownDungeon2Script: ; 45e0b (11:5e0b)
- jp EnableAutoTextBoxDrawing
-
-UnknownDungeon2TextPointers: ; 45e0e (11:5e0e)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-UnknownDungeon2Object: ; 0x45e14 (size=73)
- db $7d ; border tile
-
- db $6 ; warps
- db $1, $1d, $2, UNKNOWN_DUNGEON_1
- db $6, $16, $3, UNKNOWN_DUNGEON_1
- db $7, $13, $4, UNKNOWN_DUNGEON_1
- db $1, $9, $5, UNKNOWN_DUNGEON_1
- db $3, $1, $6, UNKNOWN_DUNGEON_1
- db $b, $3, $7, UNKNOWN_DUNGEON_1
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_BALL, $9 + 4, $1d + 4, $ff, $ff, $81, PP_UP ; item
- db SPRITE_BALL, $f + 4, $4 + 4, $ff, $ff, $82, ULTRA_BALL ; item
- db SPRITE_BALL, $6 + 4, $d + 4, $ff, $ff, $83, FULL_RESTORE ; item
-
- ; warp-to
- EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $1d ; UNKNOWN_DUNGEON_1
- EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $6, $16 ; UNKNOWN_DUNGEON_1
- EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $7, $13 ; UNKNOWN_DUNGEON_1
- EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $9 ; UNKNOWN_DUNGEON_1
- EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_1
- EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_1
+INCLUDE "data/mapObjects/unknowndungeon2.asm"
UnknownDungeon2Blocks: ; 45e5d (11:5e5d)
INCBIN "maps/unknowndungeon2.blk"
-UnknownDungeon3_h: ; 0x45ee4 to 0x45ef0 (12 bytes) (bank=11) (id=227)
- db CAVERN ; tileset
- db UNKNOWN_DUNGEON_3_HEIGHT, UNKNOWN_DUNGEON_3_WIDTH ; dimensions (y, x)
- dw UnknownDungeon3Blocks, UnknownDungeon3TextPointers, UnknownDungeon3Script ; blocks, texts, scripts
- db $00 ; connections
- dw UnknownDungeon3Object ; objects
+INCLUDE "data/mapHeaders/unknowndungeon3.asm"
-UnknownDungeon3Script: ; 45ef0 (11:5ef0)
- call EnableAutoTextBoxDrawing
- ld hl, UnknownDungeon3TrainerHeaders
- ld de, UnknownDungeon3ScriptPointers
- ld a, [W_UNKNOWNDUNGEON3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_UNKNOWNDUNGEON3CURSCRIPT], a
- ret
-
-UnknownDungeon3ScriptPointers: ; 45f03 (11:5f03)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-UnknownDungeon3TextPointers: ; 45f09 (11:5f09)
- dw UnknownDungeon3Text1
- dw Predef5CText
- dw Predef5CText
-
-UnknownDungeon3TrainerHeaders: ; 45f0f (11:5f0f)
-UnknownDungeon3TrainerHeader0: ; 45f0f (11:5f0f)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d85f ; flag's byte
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextBeforeBattle
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextAfterBattle
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle
- dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle
+INCLUDE "scripts/unknowndungeon3.asm"
- db $ff
-
-UnknownDungeon3Text1: ; 45f1c (11:5f1c)
- db $08 ; asm
- ld hl, UnknownDungeon3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-UnknownDungeon3MewtwoText: ; 45f26 (11:5f26)
- TX_FAR _UnknownDungeon3MewtwoText ; 0x85c72
- db $8
- ld a, MEWTWO
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-UnknownDungeon3Object: ; 0x45f36 (size=34)
- db $7d ; border tile
-
- db $1 ; warps
- db $6, $3, $8, UNKNOWN_DUNGEON_1
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_SLOWBRO, $d + 4, $1b + 4, $ff, $d0, $41, MEWTWO, 70 ; trainer
- db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $82, ULTRA_BALL ; item
- db SPRITE_BALL, $1 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item
-
- ; warp-to
- EVENT_DISP UNKNOWN_DUNGEON_3_WIDTH, $6, $3 ; UNKNOWN_DUNGEON_1
+INCLUDE "data/mapObjects/unknowndungeon3.asm"
UnknownDungeon3Blocks: ; 45f58 (11:5f58)
INCBIN "maps/unknowndungeon3.blk"
-RockTunnel2_h: ; 0x45fdf to 0x45feb (12 bytes) (bank=11) (id=232)
- db CAVERN ; tileset
- db ROCK_TUNNEL_2_HEIGHT, ROCK_TUNNEL_2_WIDTH ; dimensions (y, x)
- dw RockTunnel2Blocks, RockTunnel2TextPointers, RockTunnel2Script ; blocks, texts, scripts
- db $00 ; connections
- dw RockTunnel2Object ; objects
-
-RockTunnel2Script: ; 45feb (11:5feb)
- call EnableAutoTextBoxDrawing
- ld hl, RockTunnel2TrainerHeaders
- ld de, RockTunnel2ScriptPointers
- ld a, [W_ROCKTUNNEL2CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROCKTUNNEL2CURSCRIPT], a
- ret
-
-RockTunnel2ScriptPointers: ; 45ffe (11:5ffe)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-RockTunnel2TextPointers: ; 46004 (11:6004)
- dw RockTunnel2Text1
- dw RockTunnel2Text2
- dw RockTunnel2Text3
- dw RockTunnel2Text4
- dw RockTunnel2Text5
- dw RockTunnel2Text6
- dw RockTunnel2Text7
- dw RockTunnel2Text8
-
-RockTunnel2TrainerHeaders: ; 46014 (11:6014)
-RockTunnel2TrainerHeader0: ; 46014 (11:6014)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText2 ; 0x60c5 TextBeforeBattle
- dw RockTunnel2AfterBattleText2 ; 0x60cf TextAfterBattle
- dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle
- dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle
-
-RockTunnel2TrainerHeader2: ; 46020 (11:6020)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText3 ; 0x60d4 TextBeforeBattle
- dw RockTunnel2AfterBattleText3 ; 0x60de TextAfterBattle
- dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle
- dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle
-
-RockTunnel2TrainerHeader3: ; 4602c (11:602c)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText4 ; 0x60e3 TextBeforeBattle
- dw RockTunnel2AfterBattleText4 ; 0x60ed TextAfterBattle
- dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle
- dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle
-
-RockTunnel2TrainerHeader4: ; 46038 (11:6038)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText5 ; 0x60f2 TextBeforeBattle
- dw RockTunnel2AfterBattleText5 ; 0x60fc TextAfterBattle
- dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle
- dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle
-
-RockTunnel2TrainerHeader5: ; 46044 (11:6044)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText6 ; 0x6101 TextBeforeBattle
- dw RockTunnel2AfterBattleText6 ; 0x610b TextAfterBattle
- dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle
- dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle
-
-RockTunnel2TrainerHeader6: ; 46050 (11:6050)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText7 ; 0x6110 TextBeforeBattle
- dw RockTunnel2AfterBattleText7 ; 0x611a TextAfterBattle
- dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle
- dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle
-
-RockTunnel2TrainerHeader7: ; 4605c (11:605c)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText8 ; 0x611f TextBeforeBattle
- dw RockTunnel2AfterBattleText8 ; 0x6129 TextAfterBattle
- dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle
- dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle
-
-RockTunnel2TrainerHeader8: ; 46068 (11:6068)
- db $8 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d87d ; flag's byte
- dw RockTunnel2BattleText9 ; 0x612e TextBeforeBattle
- dw RockTunnel2AfterBattleText9 ; 0x6138 TextAfterBattle
- dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle
- dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle
-
- db $ff
-
-RockTunnel2Text1: ; 46075 (11:6075)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text2: ; 4607f (11:607f)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/rocktunnel2.asm"
-RockTunnel2Text3: ; 46089 (11:6089)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/rocktunnel2.asm"
-RockTunnel2Text4: ; 46093 (11:6093)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text5: ; 4609d (11:609d)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text6: ; 460a7 (11:60a7)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text7: ; 460b1 (11:60b1)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text8: ; 460bb (11:60bb)
- db $08 ; asm
- ld hl, RockTunnel2TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2BattleText2: ; 460c5 (11:60c5)
- TX_FAR _RockTunnel2BattleText2
- db "@"
-
-RockTunnel2EndBattleText2: ; 460ca (11:60ca)
- TX_FAR _RockTunnel2EndBattleText2
- db "@"
-
-RockTunnel2AfterBattleText2: ; 460cf (11:60cf)
- TX_FAR _RockTunnel2AfterBattleText2
- db "@"
-
-RockTunnel2BattleText3: ; 460d4 (11:60d4)
- TX_FAR _RockTunnel2BattleText3
- db "@"
-
-RockTunnel2EndBattleText3: ; 460d9 (11:60d9)
- TX_FAR _RockTunnel2EndBattleText3
- db "@"
-
-RockTunnel2AfterBattleText3: ; 460de (11:60de)
- TX_FAR _RockTunnel2AfterBattleText3
- db "@"
-
-RockTunnel2BattleText4: ; 460e3 (11:60e3)
- TX_FAR _RockTunnel2BattleText4
- db "@"
-
-RockTunnel2EndBattleText4: ; 460e8 (11:60e8)
- TX_FAR _RockTunnel2EndBattleText4
- db "@"
-
-RockTunnel2AfterBattleText4: ; 460ed (11:60ed)
- TX_FAR _RockTunnel2AfterBattleText4
- db "@"
-
-RockTunnel2BattleText5: ; 460f2 (11:60f2)
- TX_FAR _RockTunnel2BattleText5
- db "@"
-
-RockTunnel2EndBattleText5: ; 460f7 (11:60f7)
- TX_FAR _RockTunnel2EndBattleText5
- db "@"
-
-RockTunnel2AfterBattleText5: ; 460fc (11:60fc)
- TX_FAR _RockTunnel2AfterBattleText5
- db "@"
-
-RockTunnel2BattleText6: ; 46101 (11:6101)
- TX_FAR _RockTunnel2BattleText6
- db "@"
-
-RockTunnel2EndBattleText6: ; 46106 (11:6106)
- TX_FAR _RockTunnel2EndBattleText6
- db "@"
-
-RockTunnel2AfterBattleText6: ; 4610b (11:610b)
- TX_FAR _RockTunnel2AfterBattleText6
- db "@"
-
-RockTunnel2BattleText7: ; 46110 (11:6110)
- TX_FAR _RockTunnel2BattleText7
- db "@"
-
-RockTunnel2EndBattleText7: ; 46115 (11:6115)
- TX_FAR _RockTunnel2EndBattleText7
- db "@"
-
-RockTunnel2AfterBattleText7: ; 4611a (11:611a)
- TX_FAR _RockTunnel2AfterBattleText7
- db "@"
-
-RockTunnel2BattleText8: ; 4611f (11:611f)
- TX_FAR _RockTunnel2BattleText8
- db "@"
-
-RockTunnel2EndBattleText8: ; 46124 (11:6124)
- TX_FAR _RockTunnel2EndBattleText8
- db "@"
-
-RockTunnel2AfterBattleText8: ; 46129 (11:6129)
- TX_FAR _RockTunnel2AfterBattleText8
- db "@"
-
-RockTunnel2BattleText9: ; 4612e (11:612e)
- TX_FAR _RockTunnel2BattleText9
- db "@"
-
-RockTunnel2EndBattleText9: ; 46133 (11:6133)
- TX_FAR _RockTunnel2EndBattleText9
- db "@"
-
-RockTunnel2AfterBattleText9: ; 46138 (11:6138)
- TX_FAR _RockTunnel2AfterBattleText9
- db "@"
-
-RockTunnel2Object: ; 0x4613d (size=100)
- db $3 ; border tile
-
- db $4 ; warps
- db $19, $21, $4, ROCK_TUNNEL_1
- db $3, $1b, $5, ROCK_TUNNEL_1
- db $b, $17, $6, ROCK_TUNNEL_1
- db $3, $3, $7, ROCK_TUNNEL_1
-
- db $0 ; signs
-
- db $8 ; people
- db SPRITE_LASS, $d + 4, $b + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $9 ; trainer
- db SPRITE_HIKER, $a + 4, $6 + 4, $ff, $d0, $42, HIKER + $C8, $9 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $d0, $43, POKEMANIAC + $C8, $3 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $14 + 4, $ff, $d3, $44, POKEMANIAC + $C8, $4 ; trainer
- db SPRITE_HIKER, $a + 4, $1e + 4, $ff, $d0, $45, HIKER + $C8, $a ; trainer
- db SPRITE_LASS, $1c + 4, $e + 4, $ff, $d3, $46, JR__TRAINER_F + $C8, $a ; trainer
- db SPRITE_HIKER, $5 + 4, $21 + 4, $ff, $d3, $47, HIKER + $C8, $b ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $1e + 4, $1a + 4, $ff, $d0, $48, POKEMANIAC + $C8, $5 ; trainer
-
- ; warp-to
- EVENT_DISP ROCK_TUNNEL_2_WIDTH, $19, $21 ; ROCK_TUNNEL_1
- EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $1b ; ROCK_TUNNEL_1
- EVENT_DISP ROCK_TUNNEL_2_WIDTH, $b, $17 ; ROCK_TUNNEL_1
- EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $3 ; ROCK_TUNNEL_1
+INCLUDE "data/mapObjects/rocktunnel2.asm"
RockTunnel2Blocks: ; 461a1 (11:61a1)
INCBIN "maps/rocktunnel2.blk"
-SeafoamIslands2_h: ; 0x46309 to 0x46315 (12 bytes) (bank=11) (id=159)
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_2_HEIGHT, SEAFOAM_ISLANDS_2_WIDTH ; dimensions (y, x)
- dw SeafoamIslands2Blocks, SeafoamIslands2TextPointers, SeafoamIslands2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands2Object ; objects
-
-SeafoamIslands2Script: ; 46315 (11:6315)
- call EnableAutoTextBoxDrawing
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_46362 ; 0x4631f $41
- ld hl, Seafoam2HolesCoords
- call CheckBoulderCoords
- ret nc
- ld hl, $d87f
- ld a, [$cd3d]
- cp $1
- jr nz, .asm_46340 ; 0x46330 $e
- set 0, [hl]
- ld a, $d9
- ld [$d079], a
- ld a, $db
- ld [$d07a], a
- jr .asm_4634c ; 0x4633e $c
-.asm_46340
- set 1, [hl]
- ld a, $da
- ld [$d079], a
- ld a, $dc
- ld [$d07a], a
-.asm_4634c
- ld a, [$d079]
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, [$d07a]
- ld [$cc4d], a
- ld a, $15
- jp Predef
-.asm_46362
- ld a, $a0
- ld [$d71d], a
- ld hl, Seafoam2HolesCoords
- jp Func_46981
+INCLUDE "data/mapHeaders/seafoamislands2.asm"
-Seafoam2HolesCoords: ; 4636d (11:636d)
- db $06,$12
- db $06,$17
- db $ff
+INCLUDE "scripts/seafoamislands2.asm"
-SeafoamIslands2TextPointers: ; 46372 (11:6372)
- dw BoulderText
- dw BoulderText
-
-SeafoamIslands2Object: ; 0x46376 (size=72)
- db $7d ; border tile
-
- db $7 ; warps
- db $2, $4, $0, SEAFOAM_ISLANDS_3
- db $5, $7, $4, SEAFOAM_ISLANDS_1
- db $7, $d, $2, SEAFOAM_ISLANDS_3
- db $f, $13, $3, SEAFOAM_ISLANDS_3
- db $f, $17, $6, SEAFOAM_ISLANDS_1
- db $b, $19, $5, SEAFOAM_ISLANDS_3
- db $3, $19, $5, SEAFOAM_ISLANDS_1
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_BOULDER, $6 + 4, $11 + 4, $ff, $10, $1 ; person
- db SPRITE_BOULDER, $6 + 4, $16 + 4, $ff, $10, $2 ; person
-
- ; warp-to
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $2, $4 ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_1
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $7, $d ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_1
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_1
+INCLUDE "data/mapObjects/seafoamislands2.asm"
SeafoamIslands2Blocks: ; 463be (11:63be)
INCBIN "maps/seafoamislands2.blk"
-SeafoamIslands3_h: ; 0x46445 to 0x46451 (12 bytes) (bank=11) (id=160)
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_3_HEIGHT, SEAFOAM_ISLANDS_3_WIDTH ; dimensions (y, x)
- dw SeafoamIslands3Blocks, SeafoamIslands3TextPointers, SeafoamIslands3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands3Object ; objects
+INCLUDE "data/mapHeaders/seafoamislands3.asm"
-SeafoamIslands3Script: ; 46451 (11:6451)
- call EnableAutoTextBoxDrawing
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_4649e ; 0x4645b $41
- ld hl, Seafoam3HolesCoords
- call CheckBoulderCoords
- ret nc
- ld hl, $d880
- ld a, [$cd3d]
- cp $1
- jr nz, .asm_4647c ; 0x4646c $e
- set 0, [hl]
- ld a, $db
- ld [$d079], a
- ld a, $df
- ld [$d07a], a
- jr .asm_46488 ; 0x4647a $c
-.asm_4647c
- set 1, [hl]
- ld a, $dc
- ld [$d079], a
- ld a, $e0
- ld [$d07a], a
-.asm_46488
- ld a, [$d079]
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, [$d07a]
- ld [$cc4d], a
- ld a, $15
- jp Predef
-.asm_4649e
- ld a, $a1
- ld [$d71d], a
- ld hl, Seafoam3HolesCoords
- jp Func_46981
-
-Seafoam3HolesCoords: ; 464a9 (11:64a9)
- db $06,$13
- db $06,$16
- db $ff
+INCLUDE "scripts/seafoamislands3.asm"
-SeafoamIslands3TextPointers: ; 464ae (11:64ae)
- dw BoulderText
- dw BoulderText
-
-SeafoamIslands3Object: ; 0x464b2 (size=72)
- db $7d ; border tile
-
- db $7 ; warps
- db $3, $5, $0, SEAFOAM_ISLANDS_2
- db $d, $5, $0, SEAFOAM_ISLANDS_4
- db $7, $d, $2, SEAFOAM_ISLANDS_2
- db $f, $13, $3, SEAFOAM_ISLANDS_2
- db $3, $19, $3, SEAFOAM_ISLANDS_4
- db $b, $19, $5, SEAFOAM_ISLANDS_2
- db $e, $19, $4, SEAFOAM_ISLANDS_4
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $10, $1 ; person
- db SPRITE_BOULDER, $6 + 4, $17 + 4, $ff, $10, $2 ; person
-
- ; warp-to
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $5 ; SEAFOAM_ISLANDS_2
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $d, $5 ; SEAFOAM_ISLANDS_4
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $7, $d ; SEAFOAM_ISLANDS_2
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_2
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_4
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_2
- EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_4
+INCLUDE "data/mapObjects/seafoamislands3.asm"
SeafoamIslands3Blocks: ; 464fa (11:64fa)
INCBIN "maps/seafoamislands3.blk"
-SeafoamIslands4_h: ; 0x46581 to 0x4658d (12 bytes) (bank=11) (id=161)
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_4_HEIGHT, SEAFOAM_ISLANDS_4_WIDTH ; dimensions (y, x)
- dw SeafoamIslands4Blocks, SeafoamIslands4TextPointers, SeafoamIslands4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands4Object ; objects
+INCLUDE "data/mapHeaders/seafoamislands4.asm"
-SeafoamIslands4Script: ; 4658d (11:658d)
- call EnableAutoTextBoxDrawing
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_465dc ; 0x46597 $43
- ld hl, Seafoam4HolesCoords
- call CheckBoulderCoords
- ret nc
- ld hl, $d881
- ld a, [$cd3d]
- cp $1
- jr nz, .asm_465b8 ; 0x465a8 $e
- set 0, [hl]
- ld a, $dd
- ld [$d079], a
- ld a, $e1
- ld [$d07a], a
- jr .asm_465c4 ; 0x465b6 $c
-.asm_465b8
- set 1, [hl]
- ld a, $de
- ld [$d079], a
- ld a, $e2
- ld [$d07a], a
-.asm_465c4
- ld a, [$d079]
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, [$d07a]
- ld [$cc4d], a
- ld a, $15
- call Predef
- jr .asm_465ed ; 0x465da $11
-.asm_465dc
- ld a, $a2
- ld [$d71d], a
- ld hl, Seafoam4HolesCoords
- call Func_46981
- ld a, [$d732]
- bit 4, a
- ret nz
-.asm_465ed
- ld hl, SeafoamIslands4ScriptPointers
- ld a, [W_SEAFOAMISLANDS4CURSCRIPT]
- jp CallFunctionInTable
-
-Seafoam4HolesCoords: ; 465f6 (11:65f6)
- db $10,$03
- db $10,$06
- db $ff
+INCLUDE "scripts/seafoamislands4.asm"
-SeafoamIslands4ScriptPointers: ; 465fb (11:65fb)
- dw SeafoamIslands4Script0
- dw SeafoamIslands4Script1
- dw SeafoamIslands4Script2
- dw SeafoamIslands4Script3
-
-SeafoamIslands4Script0: ; 46603 (11:6603)
- ld a, [$d880]
- and $3
- cp $3
- ret z
- ld a, [$d361]
- cp $8
- ret nz
- ld a, [$d362]
- cp $f
- ret nz
- ld hl, $ccd3
- ld de, RLEMovement46632
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld hl, W_FLAGS_D733
- set 2, [hl]
- ld a, $1
- ld [W_SEAFOAMISLANDS4CURSCRIPT], a
- ret
-
-RLEMovement46632: ; 46632 (11:6632)
- db $80,6
- db $10,5
- db $80,3
- db $ff
-
-SeafoamIslands4Script1: ; 46639 (11:6639)
- ld a, [$cd38]
- and a
- ret nz
- ld a, $0
- ld [W_SEAFOAMISLANDS4CURSCRIPT], a
- ret
-
-SeafoamIslands4Script2: ; 46644 (11:6644)
- ld a, [$d880]
- and $3
- cp $3
- ret z
- ld a, [W_XCOORD]
- cp $12
- jr z, .asm_4665e
- cp $13
- ld a, $0
- jr nz, .asm_4667b
- ld de, RLEData_4667f
- jr .asm_46661
-.asm_4665e
- ld de, RLEData_46688
-.asm_46661
- ld hl, $ccd3
- call DecodeRLEList
- dec a
- ld [$cd38], a
- xor a
- ld [$c206], a
- ld hl, $d730
- set 7, [hl]
- ld hl, W_FLAGS_D733
- set 2, [hl]
- ld a, $3
-.asm_4667b
- ld [W_SEAFOAMISLANDS4CURSCRIPT], a
- ret
-
-RLEData_4667f: ; 4667f (11:667f)
- db $80,$06,$10,$02,$80,$04,$20,$01,$FF
-
-RLEData_46688: ; 46688 (11:6688)
- db $80,$06,$10,$02,$80,$04,$FF
-
-SeafoamIslands4Script3: ; 4668f (11:668f)
- ld a, [$cd38]
- and a
- ret nz
- ld a, $0
- ld [W_SEAFOAMISLANDS4CURSCRIPT], a
- ret
-
-SeafoamIslands4TextPointers: ; 4669a (11:669a)
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-SeafoamIslands4Object: ; 0x466a6 (size=96)
- db $7d ; border tile
-
- db $7 ; warps
- db $c, $5, $1, SEAFOAM_ISLANDS_3
- db $6, $8, $2, SEAFOAM_ISLANDS_5
- db $4, $19, $3, SEAFOAM_ISLANDS_5
- db $3, $19, $4, SEAFOAM_ISLANDS_3
- db $e, $19, $6, SEAFOAM_ISLANDS_3
- db $11, $14, $0, SEAFOAM_ISLANDS_5
- db $11, $15, $1, SEAFOAM_ISLANDS_5
-
- db $0 ; signs
-
- db $6 ; people
- db SPRITE_BOULDER, $e + 4, $5 + 4, $ff, $10, $1 ; person
- db SPRITE_BOULDER, $f + 4, $3 + 4, $ff, $10, $2 ; person
- db SPRITE_BOULDER, $e + 4, $8 + 4, $ff, $10, $3 ; person
- db SPRITE_BOULDER, $e + 4, $9 + 4, $ff, $10, $4 ; person
- db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $ff, $5 ; person
- db SPRITE_BOULDER, $6 + 4, $13 + 4, $ff, $ff, $6 ; person
-
- ; warp-to
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $c, $5 ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $6, $8 ; SEAFOAM_ISLANDS_5
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_5
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_3
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_5
- EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_5
+INCLUDE "data/mapObjects/seafoamislands4.asm"
SeafoamIslands4Blocks: ; 46706 (11:6706)
INCBIN "maps/seafoamislands4.blk"
-SeafoamIslands5_h: ; 0x4678d to 0x46799 (12 bytes) (bank=11) (id=162)
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_5_HEIGHT, SEAFOAM_ISLANDS_5_WIDTH ; dimensions (y, x)
- dw SeafoamIslands5Blocks, SeafoamIslands5TextPointers, SeafoamIslands5Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands5Object ; objects
-
-SeafoamIslands5Script: ; 46799 (11:6799)
- call EnableAutoTextBoxDrawing
- ld a, [W_SEAFOAMISLANDS5CURSCRIPT]
- ld hl, SeafoamIslands5ScriptPointers
- jp CallFunctionInTable
-
-SeafoamIslands5Script_467a5: ; 467a5 (11:67a5)
- xor a
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- ld [wJoypadForbiddenButtonsMask], a
- ret
-
-SeafoamIslands5ScriptPointers: ; 467ad (11:67ad)
- dw SeafoamIslands5Script0
- dw SeafoamIslands5Script1
- dw SeafoamIslands5Script2
- dw SeafoamIslands5Script3
- dw SeafoamIslands5Script4
-
-SeafoamIslands5Script4: ; 467b7 (11:67b7)
- ld a, [W_ISINBATTLE]
- cp $ff
- jr z, SeafoamIslands5Script_467a5
- call EndTrainerBattle
- ld a, $0
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- ret
-
-SeafoamIslands5Script0: ; 467c7 (11:67c7)
- ld a, [$d880]
- and $3
- cp $3
- ret z
- ld hl, CoordsData_467fe
- call ArePlayerCoordsInArray
- ret nc
- ld a, [$cd3d]
- cp $3
- jr nc, .asm_467e6
- ld a, $40
- ld [$ccd4], a
- ld a, $2
- jr .asm_467e8
-.asm_467e6
- ld a, $1
-.asm_467e8
- ld [$cd38], a
- ld a, $40
- ld [$ccd3], a
- call Func_3486
- ld hl, W_FLAGS_D733
- res 2, [hl]
- ld a, $1
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- ret
-
-CoordsData_467fe: ; 467fe (11:67fe)
- db $11,$14
- db $11,$15
- db $10,$14
- db $10,$15
- db $FF
-
-SeafoamIslands5Script1: ; 46807 (11:6807)
- ld a, [$cd38]
- and a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- ret
-
-SeafoamIslands5Script2: ; 46816 (11:6816)
- ld a, [$d881]
- and $3
- cp $3
- ld a, $0
- jr z, .asm_46849
- ld hl, CoordsData_4684d
- call ArePlayerCoordsInArray
- ld a, $0
- jr nc, .asm_46849
- ld a, [$cd3d]
- cp $1
- jr nz, .asm_46837
- ld de, RLEMovementData_46859
- jr .asm_4683a
-.asm_46837
- ld de, RLEMovementData_46852
-.asm_4683a
- ld hl, $ccd3
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $3
-.asm_46849
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- ret
-
-CoordsData_4684d: ; 4684d (11:684d)
- db $0E,$04
- db $0E,$05
- db $FF
-
-RLEMovementData_46852: ; 46852 (11:6852)
- db $40,$03
- db $10,$02
- db $40,$01
- db $FF
-
-RLEMovementData_46859: ; 46859 (11:6859)
- db $40,$03
- db $10,$03
- db $40,$01
- db $FF
-
-SeafoamIslands5Script3: ; 46860 (11:6860)
- ld a, [$cd38]
- ld b, a
- cp $1
- call z, SeaFoamIslands5Script_46872
- ld a, b
- and a
- ret nz
- ld a, $0
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- ret
-
-SeaFoamIslands5Script_46872: ; 46872 (11:6872)
- xor a
- ld [$d700], a
- ld [$d11a], a
- jp ForceBikeOrSurf
-
-SeafoamIslands5TextPointers: ; 4687c (11:687c)
- dw BoulderText
- dw BoulderText
- dw SeafoamIslands5Text3
- dw SeafoamIslands5Text4
- dw SeafoamIslands5Text5
-
-SeafoamIslands5TrainerHeaders: ; 46886 (11:6886)
-SeafoamIslands5TrainerHeader0: ; 46886 (11:6886)
- db $2 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d882 ; flag's byte
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextBeforeBattle
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextAfterBattle
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle
- dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle
+INCLUDE "data/mapHeaders/seafoamislands5.asm"
- db $ff
+INCLUDE "scripts/seafoamislands5.asm"
-SeafoamIslands5Text3: ; 46893 (11:6893)
- db $08 ; asm
- ld hl, SeafoamIslands5TrainerHeader0
- call TalkToTrainer
- ld a, $4
- ld [W_SEAFOAMISLANDS5CURSCRIPT], a
- jp TextScriptEnd
-
-SeafoamIslands5BattleText2: ; 468a2 (11:68a2)
- TX_FAR _SeafoamIslands5BattleText2 ; 0x88075
- db $8
- ld a, ARTICUNO
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-SeafoamIslands5Text4: ; 468b2 (11:68b2)
- TX_FAR _SeafoamIslands5Text4
- db "@"
-
-SeafoamIslands5Text5: ; 468b7 (11:68b7)
- TX_FAR _SeafoamIslands5Text5
- db "@"
-
-SeafoamIslands5Object: ; 0x468bc (size=62)
- db $7d ; border tile
-
- db $4 ; warps
- db $11, $14, $5, SEAFOAM_ISLANDS_4
- db $11, $15, $6, SEAFOAM_ISLANDS_4
- db $7, $b, $1, SEAFOAM_ISLANDS_4
- db $4, $19, $2, SEAFOAM_ISLANDS_4
-
- db $2 ; signs
- db $f, $9, $4 ; SeafoamIslands5Text4
- db $1, $17, $5 ; SeafoamIslands5Text5
-
- db $3 ; people
- db SPRITE_BOULDER, $f + 4, $4 + 4, $ff, $ff, $1 ; person
- db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $ff, $2 ; person
- db SPRITE_BIRD, $1 + 4, $6 + 4, $ff, $d0, $43, ARTICUNO, 50 ; trainer
-
- ; warp-to
- EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_4
- EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_4
- EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $7, $b ; SEAFOAM_ISLANDS_4
- EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_4
+INCLUDE "data/mapObjects/seafoamislands5.asm"
SeafoamIslands5Blocks: ; 468fa (11:68fa)
INCBIN "maps/seafoamislands5.blk"
@@ -72169,819 +44736,13 @@ Func_46a01: ; 46a01 (11:6a01)
ld [$ffea], a
ret
-HiddenObjectMaps: ; 46a40 (11:6a40)
- db REDS_HOUSE_2F
- db BLUES_HOUSE
- db OAKS_LAB
- db VIRIDIAN_POKECENTER
- db VIRIDIAN_MART
- db VIRIDIAN_SCHOOL
- db VIRIDIAN_GYM
- db MUSEUM_1F
- db PEWTER_GYM
- db PEWTER_MART
- db PEWTER_POKECENTER
- db CERULEAN_POKECENTER
- db CERULEAN_GYM
- db CERULEAN_MART
- db LAVENDER_POKECENTER
- db VERMILION_POKECENTER
- db VERMILION_GYM
- db CELADON_MANSION_2
- db CELADON_POKECENTER
- db CELADON_GYM
- db GAME_CORNER
- db CELADON_HOTEL
- db FUCHSIA_POKECENTER
- db FUCHSIA_GYM
- db CINNABAR_GYM
- db CINNABAR_POKECENTER
- db SAFFRON_GYM
- db MT_MOON_POKECENTER
- db ROCK_TUNNEL_POKECENTER
- db BATTLE_CENTER
- db TRADE_CENTER
- db VIRIDIAN_FOREST
- db MT_MOON_3
- db INDIGO_PLATEAU
- db ROUTE_25
- db ROUTE_9
- db SS_ANNE_6
- db SS_ANNE_10
- db ROCKET_HIDEOUT_1
- db ROCKET_HIDEOUT_3
- db ROCKET_HIDEOUT_4
- db SAFFRON_POKECENTER
- db POKEMONTOWER_5
- db ROUTE_13
- db SAFARI_ZONE_ENTRANCE
- db SAFARI_ZONE_WEST
- db SILPH_CO_5F
- db SILPH_CO_9F
- db COPYCATS_HOUSE_2F
- db UNKNOWN_DUNGEON_1
- db UNKNOWN_DUNGEON_3
- db POWER_PLANT
- db SEAFOAM_ISLANDS_3
- db SEAFOAM_ISLANDS_5
- db MANSION_1
- db MANSION_3
- db ROUTE_23
- db VICTORY_ROAD_2
- db $6F
- db BILLS_HOUSE
- db VIRIDIAN_CITY
- db SAFARI_ZONE_REST_HOUSE_2
- db SAFARI_ZONE_REST_HOUSE_3
- db SAFARI_ZONE_REST_HOUSE_4
- db $B9
- db LAVENDER_HOUSE_1
- db CELADON_MANSION_5
- db FIGHTING_DOJO
- db ROUTE_10
- db INDIGO_PLATEAU_LOBBY
- db CINNABAR_LAB_4
- db BIKE_SHOP
- db ROUTE_11
- db ROUTE_12
- db MANSION_2
- db MANSION_4
- db SILPH_CO_11F
- db ROUTE_17
- db UNDERGROUND_PATH_NS
- db UNDERGROUND_PATH_WE
- db CELADON_CITY
- db SEAFOAM_ISLANDS_4
- db VERMILION_CITY
- db CERULEAN_CITY
- db ROUTE_4
- db $FF
-
-HiddenObjectPointers: ; 46a96 (11:6a96)
-; each of these pointers is for the corresponding map in HiddenObjectMaps
- dw RedsHouse2FHiddenObjects
- dw BluesHouseHiddenObjects
- dw OaksLabHiddenObjects
- dw ViridianPokecenterHiddenObjects
- dw ViridianMartHiddenObjects
- dw ViridianSchoolHiddenObjects
- dw ViridianGymHiddenObjects
- dw Museum1FHiddenObjects
- dw PewterGymHiddenObjects
- dw PewterMartHiddenObjects
- dw PewterPokecenterHiddenObjects
- dw CeruleanPokecenterHiddenObjects
- dw CeruleanGymHiddenObjects
- dw CeruleanMartHiddenObjects
- dw LavenderPokecenterHiddenObjects
- dw VermilionPokecenterHiddenObjects
- dw VermilionGymHiddenObjects
- dw CeladonMansion2HiddenObjects
- dw CeladonPokecenterHiddenObjects
- dw CeladonGymHiddenObjects
- dw GameCornerHiddenObjects
- dw CeladonHotelHiddenObjects
- dw FuchsiaPokecenterHiddenObjects
- dw FuchsiaGymHiddenObjects
- dw CinnabarGymHiddenObjects
- dw CinnabarPokecenterHiddenObjects
- dw SaffronGymHiddenObjects
- dw MtMoonPokecenterHiddenObjects
- dw RockTunnelPokecenterHiddenObjects
- dw BattleCenterHiddenObjects
- dw TradeCenterHiddenObjects
- dw ViridianForestHiddenObjects
- dw MtMoon3HiddenObjects
- dw IndigoPlateauHiddenObjects
- dw Route25HiddenObjects
- dw Route9HiddenObjects
- dw SSAnne6HiddenObjects
- dw SSAnne10HiddenObjects
- dw RocketHideout1HiddenObjects
- dw RocketHideout3HiddenObjects
- dw RocketHideout4HiddenObjects
- dw SaffronPokecenterHiddenObjects
- dw PokemonTower5HiddenObjects
- dw Route13HiddenObjects
- dw SafariZoneEntranceHiddenObjects
- dw SafariZoneWestHiddenObjects
- dw SilphCo5FHiddenObjects
- dw SilphCo9FHiddenObjects
- dw CopycatsHouse2FHiddenObjects
- dw UnknownDungeon1HiddenObjects
- dw UnknownDungeon3HiddenObjects
- dw PowerPlantHiddenObjects
- dw SeafoamIslands3HiddenObjects
- dw SeafoamIslands5HiddenObjects
- dw Mansion1HiddenObjects
- dw Mansion3HiddenObjects
- dw Route23HiddenObjects
- dw VictoryRoad2HiddenObjects
- dw Unused6FHiddenObjects
- dw BillsHouseHiddenObjects
- dw ViridianCityHiddenObjects
- dw SafariZoneRestHouse2HiddenObjects
- dw SafariZoneRestHouse3HiddenObjects
- dw SafariZoneRestHouse4HiddenObjects
- dw UnusedB9HiddenObjects
- dw LavenderHouse1HiddenObjects
- dw CeladonMansion5HiddenObjects
- dw FightingDojoHiddenObjects
- dw Route10HiddenObjects
- dw IndigoPlateauLobbyHiddenObjects
- dw CinnabarLab4HiddenObjects
- dw BikeShopHiddenObjects
- dw Route11HiddenObjects
- dw Route12HiddenObjects
- dw Mansion2HiddenObjects
- dw Mansion4HiddenObjects
- dw SilphCo11FHiddenObjects
- dw Route17HiddenObjects
- dw UndergroundPathNsHiddenObjects
- dw UndergroundPathWeHiddenObjects
- dw CeladonCityHiddenObjects
- dw SeafoamIslands4HiddenObjects
- dw VermilionCityHiddenObjects
- dw CeruleanCityHiddenObjects
- dw Route4HiddenObjects
-
-BattleCenterHiddenObjects: ; 46b40 (11:6b40)
- db $04,$05,$d0 ; XXX, y, x
- dbw Bank(Func_21845), Func_21845
- db $04,$04,$d0 ; XXX, y, x
- dbw Bank(Func_21825), Func_21825
- db $FF
-TradeCenterHiddenObjects: ; 46b4d (11:6b4d)
- db $04,$05,$d0 ; XXX, y, x
- dbw Bank(Func_21845), Func_21845
- db $04,$04,$d0 ; XXX, y, x
- dbw Bank(Func_21825), Func_21825
- db $FF
-RedsHouse2FHiddenObjects: ; 46b5a (11:6b5a)
- db $01,$00,$04 ; XXX, y, x
- dbw Bank(Func_5db86), Func_5db86
- db $05,$03,$d0 ; XXX, y, x
- dbw Bank(Func_5db79), Func_5db79
- db $FF
-BluesHouseHiddenObjects: ; 46b67 (11:6b67)
- db $01,$00,$04 ; XXX, y, x
- dbw Bank(Func_62509), Func_62509
- db $01,$01,$04 ; XXX, y, x
- dbw Bank(Func_62509), Func_62509
- db $01,$07,$04 ; XXX, y, x
- dbw Bank(Func_62509), Func_62509
- db $FF
-OaksLabHiddenObjects: ; 46b7a (11:6b7a)
- db $00,$04,$04 ; XXX, y, x
- dbw Bank(Func_1e958), Func_1e958
- db $00,$05,$04 ; XXX, y, x
- dbw Bank(Func_1e965), Func_1e965
- db $01,$00,$04 ; XXX, y, x
- dbw Bank(Func_1ecaf), Func_1ecaf
- db $01,$01,$04 ; XXX, y, x
- dbw Bank(Func_1ecaf), Func_1ecaf
- db $FF
-ViridianPokecenterHiddenObjects: ; 46b93 (11:6b93)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-ViridianMartHiddenObjects: ; 46ba0 (11:6ba0)
- db $FF
-ViridianSchoolHiddenObjects: ; 46ba1 (11:6ba1)
- db $04,$03,$20 ; XXX, y, x
- dbw Bank(Func_52996), Func_52996
- db $00,$03,$21 ; XXX, y, x
- dbw Bank(Func_5dc1a), Func_5dc1a
- db $FF
-ViridianGymHiddenObjects: ; 46bae (11:6bae)
- db $0f,$0f,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $0f,$12,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $FF
-Museum1FHiddenObjects: ; 46bbb (11:6bbb)
- db $03,$02,$04 ; XXX, y, x
- dbw Bank(AerodactylFossil), AerodactylFossil
- db $06,$02,$04 ; XXX, y, x
- dbw Bank(KabutopsFossil), KabutopsFossil
- db $FF
-PewterGymHiddenObjects: ; 46bc8 (11:6bc8)
- db $0a,$03,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $0a,$06,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $FF
-PewterMartHiddenObjects: ; 46bd5 (11:6bd5)
- db $FF
-PewterPokecenterHiddenObjects: ; 46bd6 (11:6bd6)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-CeruleanPokecenterHiddenObjects: ; 46be3 (11:6be3)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-CeruleanGymHiddenObjects: ; 46bf0 (11:6bf0)
- db $0b,$03,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $0b,$06,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $FF
-CeruleanMartHiddenObjects: ; 46bfd (11:6bfd)
- db $FF
-LavenderPokecenterHiddenObjects: ; 46bfe (11:6bfe)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-VermilionPokecenterHiddenObjects: ; 46c0b (11:6c0b)
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $04,$00,$04 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $FF
-VermilionGymHiddenObjects: ; 46c18 (11:6c18)
- db $0e,$03,$04 ; XXX, y, x
- dbw BANK(GymStatues), GymStatues
- db $0e,$06,$04 ; XXX, y, x
- dbw BANK(GymStatues), GymStatues
- db $01,$06,$00 ; XXX, y, x
- dbw Bank(Func_5ddef), Func_5ddef
- db $07,$01,$00 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $09,$01,$01 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $0b,$01,$02 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $07,$03,$03 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $09,$03,$04 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $0b,$03,$05 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $07,$05,$06 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $09,$05,$07 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $0b,$05,$08 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $07,$07,$09 ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $09,$07,$0a ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $0b,$07,$0b ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $07,$09,$0c ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $09,$09,$0d ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $0b,$09,$0e ; XXX, y, x
- dbw Bank(GymTrashScript), GymTrashScript
- db $FF
-CeladonMansion2HiddenObjects: ; 46c85 (11:6c85)
- db $05,$00,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-CeladonPokecenterHiddenObjects: ; 46c8c (11:6c8c)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-CeladonGymHiddenObjects: ; 46c99 (11:6c99)
- db $0f,$03,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $0f,$06,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $FF
-GameCornerHiddenObjects: ; 46ca6 (11:6ca6)
- db $0f,$12,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0e,$12,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0d,$12,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0c,$12,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0b,$12,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0a,$12,$ff ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0a,$0d,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0b,$0d,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0c,$0d,$fe ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0d,$0d,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0e,$0d,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0f,$0d,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0f,$0c,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0e,$0c,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0d,$0c,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0c,$0c,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0b,$0c,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0a,$0c,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0a,$07,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0b,$07,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0c,$07,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0d,$07,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0e,$07,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0f,$07,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0f,$06,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0e,$06,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0d,$06,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0c,$06,$fd ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0b,$06,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0a,$06,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0a,$01,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0b,$01,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0c,$01,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0d,$01,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0e,$01,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $0f,$01,$d0 ; XXX, y, x
- dbw Bank(Func_37e2d), Func_37e2d
- db $08,$00,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $10,$01,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $0b,$03,COIN+20
- dbw BANK(HiddenCoins),HiddenCoins
- db $0e,$03,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $0c,$04,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $0c,$09,COIN+20
- dbw BANK(HiddenCoins),HiddenCoins
- db $0f,$09,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $0e,$10,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $10,$0a,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $07,$0b,COIN+40
- dbw BANK(HiddenCoins),HiddenCoins
- db $08,$0f,COIN+100
- dbw BANK(HiddenCoins),HiddenCoins
- db $0f,$0c,COIN+10
- dbw BANK(HiddenCoins),HiddenCoins
- db $FF
-CeladonHotelHiddenObjects: ; 46dc7 (11:6dc7)
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $FF
-FuchsiaPokecenterHiddenObjects: ; 46dd4 (11:6dd4)
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $04,$00,$04 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $FF
-FuchsiaGymHiddenObjects: ; 46de1 (11:6de1)
- db $0f,$03,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $0f,$06,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $FF
-CinnabarGymHiddenObjects: ; 46dee (11:6dee)
- db $0d,$11,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $07,$0f,$01 ; XXX, y, x
- dbw Bank(Func_1eaa17), Func_1eaa17
- db $01,$0a,$12 ; XXX, y, x
- dbw Bank(Func_1eaa17), Func_1eaa17
- db $07,$09,$13 ; XXX, y, x
- dbw Bank(Func_1eaa17), Func_1eaa17
- db $0d,$09,$14 ; XXX, y, x
- dbw Bank(Func_1eaa17), Func_1eaa17
- db $0d,$01,$05 ; XXX, y, x
- dbw Bank(Func_1eaa17), Func_1eaa17
- db $07,$01,$16 ; XXX, y, x
- dbw Bank(Func_1eaa17), Func_1eaa17
- db $FF
-CinnabarPokecenterHiddenObjects: ; 46e19 (11:6e19)
- db $04,$00,$04 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-SaffronGymHiddenObjects: ; 46e26 (11:6e26)
- db $0f,$09,$04 ; XXX, y, x
- dbw BANK(GymStatues),GymStatues
- db $FF
-MtMoonPokecenterHiddenObjects: ; 46e2d (11:6e2d)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-RockTunnelPokecenterHiddenObjects: ; 46e3a (11:6e3a)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-ViridianForestHiddenObjects: ; 46e47 (11:6e47)
- db $12,$01,POTION
- dbw BANK(HiddenItems),HiddenItems
- db $2a,$10,ANTIDOTE
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-MtMoon3HiddenObjects: ; 46e54 (11:6e54)
- db $0c,$12,MOON_STONE
- dbw BANK(HiddenItems),HiddenItems
- db $09,$21,ETHER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-IndigoPlateauHiddenObjects: ; 46e61 (11:6e61)
- db $0d,$08,$ff ; XXX, y, x
- dbw Bank(Func_52a2f), Func_52a2f
- db $0d,$0b,$00 ; XXX, y, x
- dbw Bank(Func_52a2f), Func_52a2f
- db $FF
-Route25HiddenObjects: ; 46e6e (11:6e6e)
- db $03,$26,ETHER
- dbw BANK(HiddenItems),HiddenItems
- db $01,$0a,ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Route9HiddenObjects: ; 46e7b (11:6e7b)
- db $07,$0e,ETHER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SSAnne6HiddenObjects: ; 46e82 (11:6e82)
- db $05,$0d,$00 ; XXX, y, x
- dbw Bank(Func_5ddef), Func_5ddef
- db $07,$0d,$00 ; XXX, y, x
- dbw Bank(Func_5ddef), Func_5ddef
- db $09,$0d,GREAT_BALL
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SSAnne10HiddenObjects: ; 46e95 (11:6e95)
- db $01,$03,HYPER_POTION
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Route10HiddenObjects: ; 46e9c (11:6e9c)
- db $11,$09,SUPER_POTION
- dbw BANK(HiddenItems),HiddenItems
- db $35,$10,MAX_ETHER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-RocketHideout1HiddenObjects: ; 46ea9 (11:6ea9)
- db $0f,$15,PP_UP
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-RocketHideout3HiddenObjects: ; 46eb0 (11:6eb0)
- db $11,$1b,NUGGET
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-RocketHideout4HiddenObjects: ; 46eb7 (11:6eb7)
- db $01,$19,SUPER_POTION
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SaffronPokecenterHiddenObjects: ; 46ebe (11:6ebe)
- db $04,$00,$04 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-PokemonTower5HiddenObjects: ; 46ecb (11:6ecb)
- db $0c,$04,ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Route13HiddenObjects: ; 46ed2 (11:6ed2)
- db $0e,$01,PP_UP
- dbw BANK(HiddenItems),HiddenItems
- db $0d,$10,CALCIUM
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SafariZoneEntranceHiddenObjects: ; 46edf (11:6edf)
- db $01,$0a,NUGGET
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SafariZoneWestHiddenObjects: ; 46ee6 (11:6ee6)
- db $05,$06,REVIVE
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SilphCo5FHiddenObjects: ; 46eed (11:6eed)
- db $03,$0c,ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SilphCo9FHiddenObjects: ; 46ef4 (11:6ef4)
- db $0f,$02,MAX_POTION
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-CopycatsHouse2FHiddenObjects: ; 46efb (11:6efb)
- db $01,$01,NUGGET
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-UnknownDungeon1HiddenObjects: ; 46f02 (11:6f02)
- db $0b,$0e,RARE_CANDY
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-UnknownDungeon3HiddenObjects: ; 46f09 (11:6f09)
- db $03,$1b,ULTRA_BALL
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-PowerPlantHiddenObjects: ; 46f10 (11:6f10)
- db $10,$11,MAX_ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $01,$0c,PP_UP
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SeafoamIslands3HiddenObjects: ; 46f1d (11:6f1d)
- db $0f,$0f,NUGGET
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SeafoamIslands5HiddenObjects: ; 46f24 (11:6f24)
- db $11,$19,ULTRA_BALL
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Mansion1HiddenObjects: ; 46f2b (11:6f2b)
- db $10,$08,MOON_STONE
- dbw BANK(HiddenItems),HiddenItems
- db $05,$02,$04 ; XXX, y, x
- dbw BANK(Func_44316),Func_44316
- db $FF
-Mansion2HiddenObjects: ; 46f38 (11:6f38)
- db $0b,$02,$04 ; XXX, y, x
- dbw Bank(Func_52037), Func_52037
- db $FF
-Mansion3HiddenObjects: ; 46f3f (11:6f3f)
- db $09,$01,MAX_REVIVE
- dbw BANK(HiddenItems),HiddenItems
- db $05,$0a,$04 ; XXX, y, x
- dbw Bank(Func_5227a), Func_5227a
- db $FF
-Mansion4HiddenObjects: ; 46f4c (11:6f4c)
- db $09,$01,RARE_CANDY
- dbw BANK(HiddenItems),HiddenItems
- db $03,$14,$04 ; XXX, y, x
- dbw Bank(Func_52420), Func_52420
- db $19,$12,$04 ; XXX, y, x
- dbw Bank(Func_52420), Func_52420
- db $FF
-Route23HiddenObjects: ; 46f5f (11:6f5f)
- db $2c,$09,FULL_RESTORE
- dbw BANK(HiddenItems),HiddenItems
- db $46,$13,ULTRA_BALL
- dbw BANK(HiddenItems),HiddenItems
- db $5a,$08,MAX_ETHER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-VictoryRoad2HiddenObjects: ; 46f72 (11:6f72)
- db $02,$05,ULTRA_BALL
- dbw BANK(HiddenItems),HiddenItems
- db $07,$1a,FULL_RESTORE
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Unused6FHiddenObjects: ; 46f7f (11:6f7f)
- db $0b,$0e,MAX_ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-BillsHouseHiddenObjects: ; 46f86 (11:6f86)
- db $04,$01,$04 ; XXX, y, x
- dbw Bank(Func_1eb6e), Func_1eb6e
- db $FF
-ViridianCityHiddenObjects: ; 46f8d (11:6f8d)
- db $04,$0e,POTION
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SafariZoneRestHouse2HiddenObjects: ; 46f94 (11:6f94)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-SafariZoneRestHouse3HiddenObjects: ; 46fa1 (11:6fa1)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-SafariZoneRestHouse4HiddenObjects: ; 46fae (11:6fae)
- db $04,$00,$08 ; XXX, y, x
- dbw Bank(Func_6245d), Func_6245d
- db $03,$0d,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-UnusedB9HiddenObjects: ; 46fbb (11:6fbb)
- db $02,$01,$04 ; XXX, y, x
- dbw Bank(Func_5db8f), Func_5db8f
- db $FF
-LavenderHouse1HiddenObjects: ; 46fc2 (11:6fc2)
- db $01,$00,$00 ; XXX, y, x
- dbw Bank(Func_1eb60), Func_1eb60
- db $01,$01,$00 ; XXX, y, x
- dbw Bank(Func_1eb60), Func_1eb60
- db $01,$07,$00 ; XXX, y, x
- dbw Bank(Func_1eb60), Func_1eb60
- db $FF
-CeladonMansion5HiddenObjects: ; 46fd5 (11:6fd5)
- db $00,$03,$34 ; XXX, y, x
- dbw Bank(Func_5dc1a), Func_5dc1a
- db $00,$04,$34 ; XXX, y, x
- dbw Bank(Func_5dc1a), Func_5dc1a
- db $04,$03,$35 ; XXX, y, x
- dbw Bank(Func_52996), Func_52996
- db $FF
-FightingDojoHiddenObjects: ; 46fe8 (11:6fe8)
- db $09,$03,$04 ; XXX, y, x
- dbw Bank(Func_52a22), Func_52a22
- db $09,$06,$04 ; XXX, y, x
- dbw Bank(Func_52a22), Func_52a22
- db $00,$04,$04 ; XXX, y, x
- dbw Bank(Func_52a08), Func_52a08
- db $00,$05,$04 ; XXX, y, x
- dbw Bank(Func_52a15), Func_52a15
- db $FF
-IndigoPlateauLobbyHiddenObjects: ; 47001 (11:7001)
- db $07,$0f,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-CinnabarLab4HiddenObjects: ; 47008 (11:7008)
- db $04,$00,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $04,$02,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-BikeShopHiddenObjects: ; 47015 (11:7015)
- db $00,$01,$d0 ; XXX, y, x
- dbw Bank(Func_1e94b), Func_1e94b
- db $01,$02,$d0 ; XXX, y, x
- dbw Bank(Func_1e94b), Func_1e94b
- db $02,$01,$d0 ; XXX, y, x
- dbw Bank(Func_1e94b), Func_1e94b
- db $02,$03,$d0 ; XXX, y, x
- dbw Bank(Func_1e94b), Func_1e94b
- db $04,$00,$d0 ; XXX, y, x
- dbw Bank(Func_1e94b), Func_1e94b
- db $05,$01,$d0 ; XXX, y, x
- dbw Bank(Func_1e94b), Func_1e94b
- db $FF
-Route11HiddenObjects: ; 4703a (11:703a)
- db $05,$30,ESCAPE_ROPE
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Route12HiddenObjects: ; 47041 (11:7041)
- db $3f,$02,HYPER_POTION
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SilphCo11FHiddenObjects: ; 47048 (11:7048)
- db $0c,$0a,$04 ; XXX, y, x
- dbw Bank(Func_62516), Func_62516
- db $FF
-Route17HiddenObjects: ; 4704f (11:704f)
- db $0e,$0f,RARE_CANDY
- dbw BANK(HiddenItems),HiddenItems
- db $2d,$08,FULL_RESTORE
- dbw BANK(HiddenItems),HiddenItems
- db $48,$11,PP_UP
- dbw BANK(HiddenItems),HiddenItems
- db $5b,$04,MAX_REVIVE
- dbw BANK(HiddenItems),HiddenItems
- db $79,$08,MAX_ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-UndergroundPathNsHiddenObjects: ; 4706e (11:706e)
- db $04,$03,FULL_RESTORE
- dbw BANK(HiddenItems),HiddenItems
- db $22,$04,X_SPECIAL
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-UndergroundPathWeHiddenObjects: ; 4707b (11:707b)
- db $02,$0c,NUGGET
- dbw BANK(HiddenItems),HiddenItems
- db $05,$15,ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-CeladonCityHiddenObjects: ; 47088 (11:7088)
- db $0f,$30,PP_UP
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-SeafoamIslands4HiddenObjects: ; 4708f (11:708f)
- db $10,$09,MAX_ELIXER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-VermilionCityHiddenObjects: ; 47096 (11:7096)
- db $0b,$0e,MAX_ETHER
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-CeruleanCityHiddenObjects: ; 4709d (11:709d)
- db $08,$0f,RARE_CANDY
- dbw BANK(HiddenItems),HiddenItems
- db $FF
-Route4HiddenObjects: ; 470a4 (11:70a4)
- db $03,$28,GREAT_BALL
- dbw BANK(HiddenItems),HiddenItems
- db $FF
+INCLUDE "data/hidden_objects.asm"
SECTION "bank12",ROMX,BANK[$12]
-Route7_h: ; 0x48000 to 0x48022 (34 bytes) (bank=12) (id=18)
- db OVERWORLD ; tileset
- db ROUTE_7_HEIGHT, ROUTE_7_WIDTH ; dimensions (y, x)
- dw Route7Blocks, Route7TextPointers, Route7Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_7_WIDTH
- EAST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_7_WIDTH
- dw Route7Object ; objects
-
-Route7Object: ; 0x48022 (size=47)
- db $f ; border tile
-
- db $5 ; warps
- db $9, $12, $2, ROUTE_7_GATE
- db $a, $12, $3, ROUTE_7_GATE
- db $9, $b, $0, ROUTE_7_GATE
- db $a, $b, $1, ROUTE_7_GATE
- db $d, $5, $0, PATH_ENTRANCE_ROUTE_7
-
- db $1 ; signs
- db $d, $3, $1 ; Route7Text1
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP ROUTE_7_WIDTH, $9, $12 ; ROUTE_7_GATE
- EVENT_DISP ROUTE_7_WIDTH, $a, $12 ; ROUTE_7_GATE
- EVENT_DISP ROUTE_7_WIDTH, $9, $b ; ROUTE_7_GATE
- EVENT_DISP ROUTE_7_WIDTH, $a, $b ; ROUTE_7_GATE
- EVENT_DISP ROUTE_7_WIDTH, $d, $5 ; PATH_ENTRANCE_ROUTE_7
+INCLUDE "data/mapHeaders/route7.asm"
+
+INCLUDE "data/mapObjects/route7.asm"
Route7Blocks: ; 48051 (12:4051)
INCBIN "maps/route7.blk"
@@ -73068,4155 +44829,268 @@ Func_4813f: ; 4813f (12:413f)
ld c, $4
jp DelayFrames
-Route7Script: ; 48152 (12:4152)
- jp EnableAutoTextBoxDrawing
-
-Route7TextPointers: ; 48155 (12:4155)
- dw Route7Text1
-
-Route7Text1: ; 48157 (12:4157)
- TX_FAR _Route7Text1
- db "@"
-
-RedsHouse1F_h: ; 4815c (12:415c)
- db REDS_HOUSE_1 ; tileset
- db REDS_HOUSE_1F_HEIGHT, REDS_HOUSE_1F_WIDTH ; dimensions
- dw RedsHouse1FBlocks, RedsHouse1FTextPointers, RedsHouse1FScript
- db 0 ; no connections
- dw RedsHouse1FObject
-
-RedsHouse1FScript: ; 48168 (12:4168)
- jp EnableAutoTextBoxDrawing
-
-RedsHouse1FTextPointers: ; 4816b (12:416b)
- dw RedsHouse1FText1
- dw RedsHouse1FText2
-
-RedsHouse1FText1: ; 4816f (12:416f) ; 416F Mom
- db 8
- ld a, [$D72E]
- bit 3, a
- jr nz, .heal ; if player has received a Pokémon from Oak, heal team
- ld hl, MomWakeUpText
- call PrintText
- jr .done
-.heal
- call MomHealPokemon
-.done
- jp TextScriptEnd
-
-MomWakeUpText: ; 48185 (12:4185)
- TX_FAR _MomWakeUpText
- db "@"
-
-MomHealPokemon: ; 4818a (12:418a)
- ld hl, MomHealText1
- call PrintText
- call GBFadeOut2
- call ReloadMapData
- PREDEF HealPartyPredef
- ld a, MUSIC_PKMN_HEALED
- ld [$C0EE], a
- call PlaySound ; play sound?
-.next
- ld a, [$C026]
- cp MUSIC_PKMN_HEALED
- jr z, .next
- ld a, [$D35B]
- ld [$C0EE], a
- call PlaySound
- call GBFadeIn2
- ld hl, MomHealText2
- jp PrintText
-
-MomHealText1: ; 481bc (12:41bc)
- TX_FAR _MomHealText1
- db "@"
-MomHealText2: ; 481c1 (12:41c1)
- TX_FAR _MomHealText2
- db "@"
-
-RedsHouse1FText2: ; 0x481c6 TV
- db 8
- ld a,[$C109]
- cp 4
- ld hl,TVWrongSideText
- jr nz,.done ; if player is not facing up
- ld hl,StandByMeText
-.done
- call PrintText
- jp TextScriptEnd
-
-StandByMeText: ; 481da (12:41da)
- TX_FAR _StandByMeText
- db "@"
-
-TVWrongSideText: ; 481df (12:41df)
- TX_FAR _TVWrongSideText
- db "@"
-
-RedsHouse1FObject: ; 481e4 (12:41e4)
- db $0A ; border tile
-
- db 3 ; warps
- db 7,2,0,$FF ; exit1
- db 7,3,0,$FF ; exit2
- db 1,7,0,$26 ; staircase
+INCLUDE "scripts/route7.asm"
- db 1 ; signs
- db 1,3,2 ; TV
+INCLUDE "data/mapHeaders/redshouse1f.asm"
- db 1 ; people
- db $33,4+4,5+4,$FF,$D2,1 ; Mom
+INCLUDE "scripts/redshouse1f.asm"
- ; warp-to
- EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 2
- EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 3
- EVENT_DISP REDS_HOUSE_1F_WIDTH, 1, 7
+INCLUDE "data/mapObjects/redshouse1f.asm"
RedsHouse1FBlocks: ; 48209 (12:4209)
INCBIN "maps/redshouse1f.blk"
-CeladonMart3_h: ; 0x48219 to 0x48225 (12 bytes) (bank=12) (id=124)
- db LOBBY ; tileset
- db CELADON_MART_3_HEIGHT, CELADON_MART_3_WIDTH ; dimensions (y, x)
- dw CeladonMart3Blocks, CeladonMart3TextPointers, CeladonMart3Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart3Object ; objects
-
-CeladonMart3Script: ; 48225 (12:4225)
- jp EnableAutoTextBoxDrawing
-
-CeladonMart3TextPointers: ; 48228 (12:4228)
- dw CeladonMart3Text1
- dw CeladonMart3Text2
- dw CeladonMart3Text3
- dw CeladonMart3Text4
- dw CeladonMart3Text5
- dw CeladonMart3Text6
- dw CeladonMart3Text7
- dw CeladonMart3Text8
- dw CeladonMart3Text9
- dw CeladonMart3Text10
- dw CeladonMart3Text11
- dw CeladonMart3Text12
- dw CeladonMart3Text13
- dw CeladonMart3Text14
- dw CeladonMart3Text15
- dw CeladonMart3Text16
- dw CeladonMart3Text17
-
-CeladonMart3Text1: ; 4824a (12:424a)
- db $08 ; asm
- ld a, [$d778]
- bit 7, a
- jr nz, .asm_a5463 ; 0x48250
- ld hl, TM18PreReceiveText
- call PrintText
- ld bc, (TM_18 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d778
- set 7, [hl]
- ld hl, ReceivedTM18Text
- jr .asm_81359 ; 0x48268
-.BagFull
- ld hl, TM18NoRoomText
- jr .asm_81359 ; 0x4826d
-.asm_a5463 ; 0x4826f
- ld hl, TM18ExplanationText
-.asm_81359 ; 0x48272
- call PrintText
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/celadonmart3.asm"
-TM18PreReceiveText: ; 48278 (12:4278)
- TX_FAR _TM18PreReceiveText
- db "@"
+INCLUDE "scripts/celadonmart3.asm"
-ReceivedTM18Text: ; 4827d (12:427d)
- TX_FAR _ReceivedTM18Text ; 0x9c85a
- db $0B, "@"
-
-TM18ExplanationText: ; 48283 (12:4283)
- TX_FAR _TM18ExplanationText
- db "@"
-
-TM18NoRoomText: ; 48288 (12:4288)
- TX_FAR _TM18NoRoomText
- db "@"
-
-CeladonMart3Text2: ; 4828d (12:428d)
- TX_FAR _CeladonMart3Text2
- db "@"
-
-CeladonMart3Text3: ; 48292 (12:4292)
- TX_FAR _CeladonMart3Text3
- db "@"
-
-CeladonMart3Text4: ; 48297 (12:4297)
- TX_FAR _CeladonMart3Text4
- db "@"
-
-CeladonMart3Text5: ; 4829c (12:429c)
- TX_FAR _CeladonMart3Text5
- db "@"
-
-CeladonMart3Text12
-CeladonMart3Text10: ; 482a1 (12:42a1)
-CeladonMart3Text8: ; 482a1 (12:42a1)
-CeladonMart3Text6: ; 482a1 (12:42a1)
- TX_FAR _CeladonMart3Text6
- db "@"
-
-CeladonMart3Text7: ; 482a6 (12:42a6)
- TX_FAR _CeladonMart3Text7
- db "@"
-
-CeladonMart3Text9: ; 482ab (12:42ab)
- TX_FAR _CeladonMart3Text9
- db "@"
-
-CeladonMart3Text11: ; 482b0 (12:42b0)
- TX_FAR _CeladonMart3Text11
- db "@"
-
-CeladonMart3Text13: ; 482b5 (12:42b5)
- TX_FAR _CeladonMart3Text13
- db "@"
-
-CeladonMart3Text14: ; 482ba (12:42ba)
- TX_FAR _CeladonMart3Text14
- db "@"
-
-CeladonMart3Text17: ; 482bf (12:42bf)
-CeladonMart3Text16: ; 482bf (12:42bf)
-CeladonMart3Text15: ; 482bf (12:42bf)
- TX_FAR _CeladonMart3Text15
- db "@"
-
-CeladonMart3Object: ; 0x482c4 (size=94)
- db $f ; border tile
-
- db $3 ; warps
- db $1, $c, $0, CELADON_MART_4
- db $1, $10, $1, CELADON_MART_2
- db $1, $1, $0, CELADON_MART_ELEVATOR
-
- db $c ; signs
- db $4, $2, $6 ; CeladonMart3Text6
- db $4, $3, $7 ; CeladonMart3Text7
- db $4, $5, $8 ; CeladonMart3Text8
- db $4, $6, $9 ; CeladonMart3Text9
- db $6, $2, $a ; CeladonMart3Text10
- db $6, $3, $b ; CeladonMart3Text11
- db $6, $5, $c ; CeladonMart3Text12
- db $6, $6, $d ; CeladonMart3Text13
- db $1, $e, $e ; CeladonMart3Text14
- db $1, $4, $f ; CeladonMart3Text15
- db $1, $6, $10 ; CeladonMart3Text16
- db $1, $a, $11 ; CeladonMart3Text17
-
- db $5 ; people
- db SPRITE_MART_GUY, $5 + 4, $10 + 4, $ff, $ff, $1 ; person
- db SPRITE_GAMEBOY_KID_COPY, $6 + 4, $b + 4, $ff, $d3, $2 ; person
- db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $7 + 4, $ff, $d0, $3 ; person
- db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $8 + 4, $ff, $d0, $4 ; person
- db SPRITE_YOUNG_BOY, $5 + 4, $2 + 4, $ff, $d1, $5 ; person
-
- ; warp-to
- EVENT_DISP CELADON_MART_3_WIDTH, $1, $c ; CELADON_MART_4
- EVENT_DISP CELADON_MART_3_WIDTH, $1, $10 ; CELADON_MART_2
- EVENT_DISP CELADON_MART_3_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
+INCLUDE "data/mapObjects/celadonmart3.asm"
CeladonMart3Blocks: ; 48322 (12:4322)
INCBIN "maps/celadonmart3.blk"
-CeladonMart4_h: ; 0x4834a to 0x48356 (12 bytes) (bank=12) (id=125)
- db LOBBY ; tileset
- db CELADON_MART_4_HEIGHT, CELADON_MART_4_WIDTH ; dimensions (y, x)
- dw CeladonMart4Blocks, CeladonMart4TextPointers, CeladonMart4Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart4Object ; objects
-
-CeladonMart4Script: ; 48356 (12:4356)
- jp EnableAutoTextBoxDrawing
-
-CeladonMart4TextPointers: ; 48359 (12:4359)
- dw CeladonMart4Text1
- dw CeladonMart4Text2
- dw CeladonMart4Text3
- dw CeladonMart4Text4
-
-CeladonMart4Text2: ; 48361 (12:4361)
- TX_FAR _CeladonMart4Text2
- db "@"
-
-CeladonMart4Text3: ; 48366 (12:4366)
- TX_FAR _CeladonMart4Text3
- db "@"
-
-CeladonMart4Text4: ; 4836b (12:436b)
- TX_FAR _CeladonMart4Text4
- db "@"
-
-CeladonMart4Object: ; 0x48370 (size=49)
- db $f ; border tile
-
- db $3 ; warps
- db $1, $c, $0, CELADON_MART_3
- db $1, $10, $1, CELADON_MART_5
- db $1, $1, $0, CELADON_MART_ELEVATOR
-
- db $1 ; signs
- db $1, $e, $4 ; CeladonMart4Text4
+INCLUDE "data/mapHeaders/celadonmart4.asm"
- db $3 ; people
- db SPRITE_MART_GUY, $7 + 4, $5 + 4, $ff, $ff, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $f + 4, $fe, $2, $2 ; person
- db SPRITE_BUG_CATCHER, $2 + 4, $5 + 4, $fe, $2, $3 ; person
+INCLUDE "scripts/celadonmart4.asm"
- ; warp-to
- EVENT_DISP CELADON_MART_4_WIDTH, $1, $c ; CELADON_MART_3
- EVENT_DISP CELADON_MART_4_WIDTH, $1, $10 ; CELADON_MART_5
- EVENT_DISP CELADON_MART_4_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
+INCLUDE "data/mapObjects/celadonmart4.asm"
CeladonMart4Blocks: ; 483a1 (12:43a1)
INCBIN "maps/celadonmart4.blk"
-CeladonMartRoof_h: ; 0x483c9 to 0x483d5 (12 bytes) (bank=12) (id=126)
- db LOBBY ; tileset
- db CELADON_MART_ROOF_HEIGHT, CELADON_MART_ROOF_WIDTH ; dimensions (y, x)
- dw CeladonMartRoofBlocks, CeladonMartRoofTextPointers, CeladonMartRoofScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMartRoofObject ; objects
+INCLUDE "data/mapHeaders/celadonmartroof.asm"
-CeladonMartRoofScript: ; 483d5 (12:43d5)
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/celadonmartroof.asm"
-CeladonMartRoofScript_483d8: ; 483d8 (12:43d8)
- xor a
- ld [$cd37], a
- ld de, $cc5b
- ld hl, CeladonMartRoofDrinkList ; $4408
-.asm_483e2
- ld a, [hli]
- and a
- jr z, .asm_48404
- push hl
- push de
- ld [$d11e], a
- ld b, a
- ld a, $1c
- call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5))
- pop de
- pop hl
- ld a, b
- and a
- jr z, .asm_483e2
- ld a, [$d11e]
- ld [de], a
- inc de
- push hl
- ld hl, $cd37
- inc [hl]
- pop hl
- jr .asm_483e2
-.asm_48404
- ld a, $ff
- ld [de], a
- ret
-
-CeladonMartRoofDrinkList: ; 48408 (12:4408)
- db FRESH_WATER
- db SODA_POP
- db LEMONADE
- db $00
-
-CeladonMartRoofScript_4840c: ; 4840c (12:440c)
- ld hl, $d730
- set 6, [hl]
- ld hl, UnnamedText_484ee ; $44ee
- call PrintText
- xor a
- ld [wCurrentMenuItem], a ; $cc26
- ld a, $3
- ld [wMenuWatchedKeys], a ; $cc29
- ld a, [$cd37]
- dec a
- ld [wMaxMenuItem], a ; $cc28
- ld a, $2
- ld [wTopMenuItemY], a ; $cc24
- ld a, $1
- ld [wTopMenuItemX], a ; $cc25
- ld a, [$cd37]
- dec a
- ld bc, $2
- ld hl, $3
- call AddNTimes
- dec l
- ld b, l
- ld c, $c
- ld hl, wTileMap
- call TextBoxBorder
- call UpdateSprites
- call CeladonMartRoofScript_48532
- ld hl, $d730
- res 6, [hl]
- call HandleMenuInput
- bit 1, a
- ret nz
- ld hl, $cc5b
- ld a, [wCurrentMenuItem] ; $cc26
- ld d, $0
- ld e, a
- add hl, de
- ld a, [hl]
- ld [$ffdb], a
- cp FRESH_WATER
- jr z, .asm_484b6
- cp SODA_POP
- jr z, .asm_48492
- ld a, [$d778]
- bit 6, a
- jr nz, .asm_484e0
- ld hl, UnnamedText_48515 ; $4515
- call PrintText
- call RemoveItemByIDBank12
- ld bc, (TM_49 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM49Text ; $451b
- call PrintText
- ld hl, $d778
- set 6, [hl]
- ret
-.asm_48492
- ld a, [$d778]
- bit 5, a
- jr nz, .asm_484e0
- ld hl, UnnamedText_48504 ; $4504
- call PrintText
- call RemoveItemByIDBank12
- ld bc, (TM_48 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, UnnamedText_4850a ; $450a
- call PrintText
- ld hl, $d778
- set 5, [hl]
- ret
-.asm_484b6
- ld a, [$d778]
- bit 4, a
- jr nz, .asm_484e0
- ld hl, UnnamedText_484f3 ; $44f3
- call PrintText
- call RemoveItemByIDBank12
- ld bc, (TM_13 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, UnnamedText_484f9 ; $44f9
- call PrintText
- ld hl, $d778
- set 4, [hl]
- ret
-.BagFull
- ld hl, UnnamedText_48526 ; $4526
- jp PrintText
-.asm_484e0
- ld hl, UnnamedText_4852c ; $452c
- jp PrintText
-
-RemoveItemByIDBank12: ; 484e6 (12:44e6)
- ld b, BANK(RemoveItemByID)
- ld hl, RemoveItemByID
- jp Bankswitch
-
-UnnamedText_484ee: ; 484ee (12:44ee)
- TX_FAR _UnnamedText_484ee
- db "@"
-
-UnnamedText_484f3: ; 484f3 (12:44f3)
- TX_FAR _UnnamedText_484f3
- db $0d
- db "@"
-
-UnnamedText_484f9: ; 484f9 (12:44f9)
- TX_FAR _UnnamedText_484f9
- db $0b
- TX_FAR _UnnamedText_484fe
- db $0d
- db "@"
-
-UnnamedText_48504: ; 48504 (12:4504)
- TX_FAR _UnnamedText_48504
- db $0d
- db "@"
-
-UnnamedText_4850a: ; 4850a (12:450a)
- TX_FAR _UnnamedText_4850a
- db $0b
- TX_FAR _UnnamedText_4850f
- db $0d
- db "@"
-
-UnnamedText_48515: ; 48515 (12:4515)
- TX_FAR _UnnamedText_48515
- db $0d
- db "@"
-
-ReceivedTM49Text: ; 4851b (12:451b)
- TX_FAR _ReceivedTM49Text
- db $0b
- TX_FAR _UnnamedText_48520
- db $0d
- db "@"
-
-UnnamedText_48526: ; 48526 (12:4526)
- TX_FAR _UnnamedText_48526
- db $0d
- db "@"
-
-UnnamedText_4852c: ; 4852c (12:452c)
- TX_FAR _UnnamedText_4852c
- db $0d
- db "@"
-
-CeladonMartRoofScript_48532: ; 48532 (12:4532)
- ld hl, $cc5b
- xor a
- ld [$ffdb], a
-.asm_48538
- ld a, [hli]
- cp $ff
- ret z
- push hl
- ld [$d11e], a
- call GetItemName
- FuncCoord 2, 2 ; $c3ca
- ld hl, Coord
- ld a, [$ffdb]
- ld bc, $28
- call AddNTimes
- ld de, $cd6d
- call PlaceString
- ld hl, $ffdb
- inc [hl]
- pop hl
- jr .asm_48538
-
-CeladonMartRoofTextPointers: ; 4855b (12:455b)
- dw CeladonMartRoofText1
- dw CeladonMartRoofText2
- dw CeladonMartRoofText5
- dw CeladonMartRoofText5
- dw CeladonMartRoofText5
- dw CeladonMartRoofText6
-
-CeladonMartRoofText1: ; 48567 (12:4567)
- TX_FAR _CeladonMartRoofText1
- db "@"
-
-CeladonMartRoofText2: ; 4856c (12:456c)
- db $08 ; asm
- call CeladonMartRoofScript_483d8
- ld a, [$cd37]
- and a
- jr z, .asm_914b9 ; 0x48574
- ld a, $1
- ld [$cc3c], a
- ld hl, CeladonMartRoofText4
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_05aa4 ; 0x48588
- call CeladonMartRoofScript_4840c
- jr .asm_05aa4 ; 0x4858d
-.asm_914b9 ; 0x4858f
- ld hl, CeladonMartRoofText3
- call PrintText
-.asm_05aa4 ; 0x48595
- jp TextScriptEnd
-
-CeladonMartRoofText3: ; 48598 (12:4598)
- TX_FAR _UnnamedText_48598
- db "@"
-
-CeladonMartRoofText4: ; 4859d (12:459d)
- TX_FAR _CeladonMartRoofText4
- db "@"
-
-CeladonMartRoofText5: ; 485a2 (12:45a2)
- db $f5
-
-CeladonMartRoofText6: ; 485a3 (12:45a3)
- TX_FAR _CeladonMartRoofText6
- db "@"
-
-CeladonMartRoofObject: ; 0x485a8 (size=36)
- db $42 ; border tile
-
- db $1 ; warps
- db $2, $f, $0, CELADON_MART_5
-
- db $4 ; signs
- db $1, $a, $3 ; CeladonMartRoofText3
- db $1, $b, $4 ; CeladonMartRoofText4
- db $2, $c, $5 ; CeladonMartRoofText5
- db $2, $d, $6 ; CeladonMartRoofText6
-
- db $2 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $a + 4, $ff, $d2, $1 ; person
- db SPRITE_LITTLE_GIRL, $5 + 4, $5 + 4, $fe, $0, $2 ; person
-
- ; warp-to
- EVENT_DISP CELADON_MART_ROOF_WIDTH, $2, $f ; CELADON_MART_5
+INCLUDE "data/mapObjects/celadonmartroof.asm"
CeladonMartRoofBlocks: ; 485cc (12:45cc)
INCBIN "maps/celadonmartroof.blk"
-CeladonMartElevator_h: ; 0x485f4 to 0x48600 (12 bytes) (bank=12) (id=127)
- db LOBBY ; tileset
- db CELADON_MART_ELEVATOR_HEIGHT, CELADON_MART_ELEVATOR_WIDTH ; dimensions (y, x)
- dw CeladonMartElevatorBlocks, CeladonMartElevatorTextPointers, CeladonMartElevatorScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMartElevatorObject ; objects
+INCLUDE "data/mapHeaders/celadonmartelevator.asm"
-CeladonMartElevatorScript: ; 48600 (12:4600)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, CeladonMartElevatorScript_4861c
- pop hl
- bit 7, [hl]
- res 7, [hl]
- call nz, Func_48654
- xor a
- ld [$cf0c], a
- inc a
- ld [$cc3c], a
- ret
+INCLUDE "scripts/celadonmartelevator.asm"
-CeladonMartElevatorScript_4861c: ; 4861c (12:461c)
- ld hl, $d3af
- ld a, [$d73b]
- ld b, a
- ld a, [$d73c]
- ld c, a
- call CeladonMartElevatorScript_4862a
-
-CeladonMartElevatorScript_4862a: ; 4862a (12:462a)
- inc hl
- inc hl
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ret
-
-CeladonMartElevatorScript_48631: ; 48631 (12:4631)
- ld hl, CeladonMartElavatorFloors ; $4643
- call LoadItemList
- ld hl, CeldaonMartElevatorWarpMaps ; $464a
- ld de, $cc5b
- ld bc, $000a
- jp CopyData
-
-CeladonMartElavatorFloors: ; 48643 (12:4643)
- db $05 ; num elements in list
- db $56, $57, $58, $59, $5A ; "1F", "2F", "3F", "4F, "5F"
- db $FF ; terminator
-
-CeldaonMartElevatorWarpMaps: ; 4864a (12:464a)
-; first byte is warp number
-; second byte is map number
-; These specify where the player goes after getting out of the elevator.
- db $05, CELADON_MART_1
- db $02, CELADON_MART_2
- db $02, CELADON_MART_3
- db $02, CELADON_MART_4
- db $02, CELADON_MART_5
-
-Func_48654: ; 48654 (12:4654)
- ld b, BANK(Func_7bf15)
- ld hl, Func_7bf15
- jp Bankswitch
-
-CeladonMartElevatorTextPointers: ; 4865c (12:465c)
- dw CeladonMartElevatorText1
-
-CeladonMartElevatorText1: ; 4865e (12:465e)
- db $08 ; asm
- call CeladonMartElevatorScript_48631
- ld hl, CeldaonMartElevatorWarpMaps ; $464a
- ld a, $61
- call Predef
- jp TextScriptEnd
-
-CeladonMartElevatorObject: ; 0x4866d (size=23)
- db $f ; border tile
-
- db $2 ; warps
- db $3, $1, $5, CELADON_MART_1
- db $3, $2, $5, CELADON_MART_1
-
- db $1 ; signs
- db $0, $3, $1 ; CeladonMartElevatorText1
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $1 ; CELADON_MART_1
- EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $2 ; CELADON_MART_1
+INCLUDE "data/mapObjects/celadonmartelevator.asm"
CeladonMartElevatorBlocks: ; 48684 (12:4684)
INCBIN "maps/celadonmartelevator.blk"
-CeladonMansion1_h: ; 0x48688 to 0x48694 (12 bytes) (bank=12) (id=128)
- db MANSION ; tileset
- db CELADON_MANSION_1_HEIGHT, CELADON_MANSION_1_WIDTH ; dimensions (y, x)
- dw CeladonMansion1Blocks, CeladonMansion1TextPointers, CeladonMansion1Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion1Object ; objects
-
-CeladonMansion1Script: ; 48694 (12:4694)
- jp EnableAutoTextBoxDrawing
+INCLUDE "data/mapHeaders/celadonmansion1.asm"
-CeladonMansion1TextPointers: ; 48697 (12:4697)
- dw CeladonMansion1Text1
- dw CeladonMansion1Text2
- dw CeladonMansion1Text3
- dw CeladonMansion1Text4
- dw CeladonMansion1Text5
+INCLUDE "scripts/celadonmansion1.asm"
-Func_486a1: ; 486a1 (12:46a1)
- call PlayCry
- jp TextScriptEnd
-
-CeladonMansion1Text1: ; 486a7 (12:46a7)
- TX_FAR _CeladonMansion1Text1
- db $08 ; asm
- ld a, $4d
- jp Func_486a1
-
-CeladonMansion1Text2: ; 486b1 (12:46b1)
- TX_FAR _CeladonMansion1Text2
- db "@"
-
-CeladonMansion1Text3: ; 486b6 (12:46b6)
- TX_FAR _CeladonMansion1Text3
- db $8
- ld a, $4
- jp Func_486a1
-
-CeladonMansion1Text4: ; 486c0 (12:46c0)
- TX_FAR _CeladonMansion1Text4
- db $8
- ld a, $f
- jp Func_486a1
-
-CeladonMansion1Text5: ; 486ca (12:46ca)
- TX_FAR _CeladonMansion1Text5
- db "@"
-
-CeladonMansion1Object: ; 0x486cf (size=71)
- db $f ; border tile
-
- db $5 ; warps
- db $b, $4, $2, $ff
- db $b, $5, $2, $ff
- db $0, $4, $4, $ff
- db $1, $7, $1, CELADON_MANSION_2
- db $1, $2, $2, CELADON_MANSION_2
-
- db $1 ; signs
- db $9, $4, $5 ; CeladonMansion1Text5
-
- db $4 ; people
- db SPRITE_SLOWBRO, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_OLD_MEDIUM_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $2 ; person
- db SPRITE_CLEFAIRY, $8 + 4, $1 + 4, $fe, $2, $3 ; person
- db SPRITE_SLOWBRO, $4 + 4, $4 + 4, $fe, $1, $4 ; person
-
- ; warp-to
- EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $4
- EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $5
- EVENT_DISP CELADON_MANSION_1_WIDTH, $0, $4
- EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $7 ; CELADON_MANSION_2
- EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $2 ; CELADON_MANSION_2
+INCLUDE "data/mapObjects/celadonmansion1.asm"
CeladonMansion1Blocks: ; 48716 (12:4716)
INCBIN "maps/celadonmansion1.blk"
-CeladonMansion2_h: ; 0x4872e to 0x4873a (12 bytes) (bank=12) (id=129)
- db MANSION ; tileset
- db CELADON_MANSION_2_HEIGHT, CELADON_MANSION_2_WIDTH ; dimensions (y, x)
- dw CeladonMansion2Blocks, CeladonMansion2TextPointers, CeladonMansion2Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion2Object ; objects
+INCLUDE "data/mapHeaders/celadonmansion2.asm"
-CeladonMansion2Script: ; 4873a (12:473a)
- call EnableAutoTextBoxDrawing
- ret
+INCLUDE "scripts/celadonmansion2.asm"
-CeladonMansion2TextPointers: ; 4873e (12:473e)
- dw CeladonMansion2Text1
-
-CeladonMansion2Text1: ; 48740 (12:4740)
- TX_FAR _CeladonMansion2Text1
- db "@"
-
-CeladonMansion2Object: ; 0x48745 (size=39)
- db $f ; border tile
-
- db $4 ; warps
- db $1, $6, $0, CELADON_MANSION_3
- db $1, $7, $3, CELADON_MANSION_1
- db $1, $2, $4, CELADON_MANSION_1
- db $1, $4, $3, CELADON_MANSION_3
-
- db $1 ; signs
- db $9, $4, $1 ; CeladonMansion2Text1
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $6 ; CELADON_MANSION_3
- EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $7 ; CELADON_MANSION_1
- EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $2 ; CELADON_MANSION_1
- EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $4 ; CELADON_MANSION_3
+INCLUDE "data/mapObjects/celadonmansion2.asm"
CeladonMansion2Blocks: ; 4876c (12:476c)
INCBIN "maps/celadonmansion2.blk"
-CeladonMansion3_h: ; 0x48784 to 0x48790 (12 bytes) (bank=12) (id=130)
- db MANSION ; tileset
- db CELADON_MANSION_3_HEIGHT, CELADON_MANSION_3_WIDTH ; dimensions (y, x)
- dw CeladonMansion3Blocks, CeladonMansion3TextPointers, CeladonMansion3Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion3Object ; objects
-
-CeladonMansion3Script: ; 48790 (12:4790)
- jp EnableAutoTextBoxDrawing
-
-CeladonMansion3TextPointers: ; 48793 (12:4793)
- dw ProgrammerText
- dw GraphicArtistText
- dw WriterText
- dw DirectorText
- dw GameFreakPCText1
- dw GameFreakPCText2
- dw GameFreakPCText3
- dw GameFreakSignText
-
-ProgrammerText: ; 487a3 (12:47a3)
- TX_FAR _ProgrammerText
- db "@"
+INCLUDE "data/mapHeaders/celadonmansion3.asm"
-GraphicArtistText: ; 487a8 (12:47a8)
- TX_FAR _GraphicArtistText
- db "@"
+INCLUDE "scripts/celadonmansion3.asm"
-WriterText: ; 487ad (12:47ad)
- TX_FAR _WriterText
- db "@"
-
-DirectorText: ; 487b2 (12:47b2)
- db $08 ; asm
-
- ; check pokédex
- ld hl, wPokedexOwned
- ld b, wPokedexOwnedEnd - wPokedexOwned
- call CountSetBits
- ld a, [$d11e]
- cp 150
- jr nc, .CompletedDex
- ld hl, .GameDesigner
- jr .done
-.CompletedDex
- ld hl, .CompletedDexText
-.done
- call PrintText
- jp TextScriptEnd
-
-.GameDesigner ; 487d0 (12:47d0)
- TX_FAR _GameDesignerText
- db "@"
-
-.CompletedDexText
- TX_FAR _CompletedDexText ; 0x9d0ad
- db $6
- db $8 ; asm
- callab DisplayDiploma
- ld a, $1
- ld [$cc3c], a
- jp TextScriptEnd
-
-GameFreakPCText1: ; 487eb (12:47eb)
- TX_FAR _CeladonMansion3Text5
- db "@"
-
-GameFreakPCText2: ; 487f0 (12:47f0)
- TX_FAR _CeladonMansion3Text6
- db "@"
-
-GameFreakPCText3: ; 487f5 (12:47f5)
- TX_FAR _CeladonMansion3Text7
- db "@"
-
-GameFreakSignText: ; 487fa (12:47fa)
- TX_FAR _CeladonMansion3Text8
- db "@"
-
-CeladonMansion3Object: ; 0x487ff (size=72)
- db $f ; border tile
-
- db $4 ; warps
- db $1, $6, $0, CELADON_MANSION_2
- db $1, $7, $0, CELADON_MANSION_4
- db $1, $2, $1, CELADON_MANSION_4
- db $1, $4, $3, CELADON_MANSION_2
-
- db $4 ; signs
- db $3, $1, $5 ; CeladonMansion3Text5
- db $3, $4, $6 ; CeladonMansion3Text6
- db $6, $1, $7 ; CeladonMansion3Text7
- db $9, $4, $8 ; CeladonMansion3Text8
-
- db $4 ; people
- db SPRITE_BIKE_SHOP_GUY, $4 + 4, $0 + 4, $ff, $d1, $1 ; person
- db SPRITE_MART_GUY, $4 + 4, $3 + 4, $ff, $d1, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $0 + 4, $ff, $d1, $3 ; person
- db SPRITE_LAPRAS_GIVER, $3 + 4, $2 + 4, $ff, $ff, $4 ; person
-
- ; warp-to
- EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $6 ; CELADON_MANSION_2
- EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $7 ; CELADON_MANSION_4
- EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $2 ; CELADON_MANSION_4
- EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $4 ; CELADON_MANSION_2
+INCLUDE "data/mapObjects/celadonmansion3.asm"
CeladonMansion3Blocks: ; 48847 (12:4847)
INCBIN "maps/celadonmansion3.blk"
-CeladonMansion4_h: ; 0x4885f to 0x4886b (12 bytes) (bank=12) (id=131)
- db MANSION ; tileset
- db CELADON_MANSION_4_HEIGHT, CELADON_MANSION_4_WIDTH ; dimensions (y, x)
- dw CeladonMansion4Blocks, CeladonMansion4TextPointers, CeladonMansion4Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion4Object ; objects
-
-CeladonMansion4Script: ; 4886b (12:486b)
- jp EnableAutoTextBoxDrawing
-
-CeladonMansion4TextPointers: ; 4886e (12:486e)
- dw CeladonMansion4Text1
-
-CeladonMansion4Text1: ; 48870 (12:4870)
- TX_FAR _CeladonMansion4Text1
- db "@"
-
-CeladonMansion4Object: ; 0x48875 (size=31)
- db $9 ; border tile
-
- db $3 ; warps
- db $1, $6, $1, CELADON_MANSION_3
- db $1, $2, $2, CELADON_MANSION_3
- db $7, $2, $0, CELADON_MANSION_5
-
- db $1 ; signs
- db $7, $3, $1 ; CeladonMansion4Text1
+INCLUDE "data/mapHeaders/celadonmansion4.asm"
- db $0 ; people
+INCLUDE "scripts/celadonmansion4.asm"
- ; warp-to
- EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $6 ; CELADON_MANSION_3
- EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $2 ; CELADON_MANSION_3
- EVENT_DISP CELADON_MANSION_4_WIDTH, $7, $2 ; CELADON_MANSION_5
+INCLUDE "data/mapObjects/celadonmansion4.asm"
CeladonMansion4Blocks: ; 48894 (12:4894)
INCBIN "maps/celadonmansion4.blk"
-CeladonPokecenter_h: ; 0x488ac to 0x488b8 (12 bytes) (bank=12) (id=133)
- db POKECENTER ; tileset
- db CELADON_POKECENTER_HEIGHT, CELADON_POKECENTER_WIDTH ; dimensions (y, x)
- dw CeladonPokecenterBlocks, CeladonPokecenterTextPointers, CeladonPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonPokecenterObject ; objects
-
-CeladonPokecenterScript: ; 488b8 (12:48b8)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-CeladonPokecenterTextPointers: ; 488be (12:48be)
- dw CeladonPokecenterText1
- dw CeladonPokecenterText2
- dw CeladonPokecenterText3
- dw CeladonPokecenterText4
-
-CeladonPokecenterText4: ; 488c6 (12:48c6)
- db $f6
-
-CeladonPokecenterText1: ; 488c7 (12:48c7)
- db $ff
-
-CeladonPokecenterText2: ; 488c8 (12:48c8)
- TX_FAR _CeladonPokecenterText2
- db "@"
-
-CeladonPokecenterText3: ; 488cd (12:48cd)
- TX_FAR _CeladonPokecenterText3
- db "@"
-
-CeladonPokecenterObject: ; 0x488d2 (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $5, $ff
- db $7, $4, $5, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person
- db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $fe, $0, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $3
- EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $4
-
-CeladonGym_h: ; 0x488fe to 0x4890a (12 bytes) (bank=12) (id=134)
- db GYM ; tileset
- db CELADON_GYM_HEIGHT, CELADON_GYM_WIDTH ; dimensions (y, x)
- dw CeladonGymBlocks, CeladonGymTextPointers, CeladonGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonGymObject ; objects
-
-CeladonGymScript: ; 4890a (12:490a)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- call nz, CeladonGymScript_48927
- call EnableAutoTextBoxDrawing
- ld hl, CeladonGymTrainerHeaders
- ld de, CeladonGymScriptPointers
- ld a, [W_CELADONGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_CELADONGYMCURSCRIPT], a
- ret
-
-CeladonGymScript_48927: ; 48927 (12:4927)
- ld hl, Gym4CityName ; $4930
- ld de, Gym4LeaderName ; $493d
- jp LoadGymLeaderAndCityName
-
-Gym4CityName: ; 48930 (12:4930)
- db "CELADON CITY@"
-
-Gym4LeaderName: ; 4893d (12:493d)
- db "ERIKA@"
-
-Func_48943: ; 48943 (12:4943)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_CELADONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CeladonGymScriptPointers: ; 4894e (12:494e)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw CeladonGymScript3
-
-CeladonGymScript3: ; 48956 (12:4956)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_48943
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-
-Func_48963: ; 48963 (12:4963)
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d77c
- set 1, [hl]
- ld bc, (TM_21 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d77c
- set 0, [hl]
- jr .asm_4898c
-.BagFull
- ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_4898c
- ld hl, W_OBTAINEDBADGES
- set 3, [hl]
- ld hl, $d72a
- set 3, [hl]
-
- ; deactivate gym trainers
- ld a, [$d77c]
- or %11111100
- ld [$d77c], a
- ld hl, $d77d
- set 0, [hl]
-
- jp Func_48943
-
-CeladonGymTextPointers: ; 489a6 (12:49a6)
- dw CeladonGymText1
- dw CeladonGymText2
- dw CeladonGymText3
- dw CeladonGymText4
- dw CeladonGymText5
- dw CeladonGymText6
- dw CeladonGymText7
- dw CeladonGymText8
- dw CeladonGymText9
- dw TM21Text
- dw TM21NoRoomText
-
-CeladonGymTrainerHeaders: ; 489bc (12:49bc)
-CeladonGymTrainerHeader0: ; 489bc (12:49bc)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText2 ; 0x4a8b TextBeforeBattle
- dw CeladonGymAfterBattleText2 ; 0x4a95 TextAfterBattle
- dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle
- dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle
-
-CeladonGymTrainerHeader2: ; 489c8 (12:49c8)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText3 ; 0x4aa4 TextBeforeBattle
- dw CeladonGymAfterBattleText3 ; 0x4aae TextAfterBattle
- dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle
- dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle
-
-CeladonGymTrainerHeader3: ; 489d4 (12:49d4)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText4 ; 0x4abd TextBeforeBattle
- dw CeladonGymAfterBattleText4 ; 0x4ac7 TextAfterBattle
- dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle
- dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle
-
-CeladonGymTrainerHeader4: ; 489e0 (12:49e0)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText5 ; 0x4ad6 TextBeforeBattle
- dw CeladonGymAfterBattleText5 ; 0x4ae0 TextAfterBattle
- dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle
- dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle
-
-CeladonGymTrainerHeader5: ; 489ec (12:49ec)
- db $6 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText6 ; 0x4aef TextBeforeBattle
- dw CeladonGymAfterBattleText6 ; 0x4af9 TextAfterBattle
- dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle
- dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle
-
-CeladonGymTrainerHeader6: ; 489f8 (12:49f8)
- db $7 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText7 ; 0x4b08 TextBeforeBattle
- dw CeladonGymAfterBattleText7 ; 0x4b12 TextAfterBattle
- dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle
- dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle
-
-CeladonGymTrainerHeader7: ; 48a04 (12:4a04)
- db $8 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d77c ; flag's byte
- dw CeladonGymBattleText8 ; 0x4b21 TextBeforeBattle
- dw CeladonGymAfterBattleText8 ; 0x4b2b TextAfterBattle
- dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle
- dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle
-
- db $ff
-
-CeladonGymText1: ; 48a11 (12:4a11)
- db $08 ; asm
- ld a, [$d77c]
- bit 1, a
- jr z, .asm_16064 ; 0x48a17
- bit 0, a
- jr nz, .asm_3b22c ; 0x48a1b
- call z, Func_48963
- call DisableWaitingAfterTextDisplay
- jr .asm_96252 ; 0x48a23
-.asm_3b22c ; 0x48a25
- ld hl, UnnamedText_48a68
- call PrintText
- jr .asm_96252 ; 0x48a2b
-.asm_16064 ; 0x48a2d
- ld hl, UnnamedText_48a5e
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_48a63
- ld de, UnnamedText_48a63
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $4
- ld [$d05c], a
- ld a, $3
- ld [W_CELADONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_96252 ; 0x48a5b
- jp TextScriptEnd
-
-UnnamedText_48a5e: ; 48a5e (12:4a5e)
- TX_FAR _UnnamedText_48a5e
- db "@"
-
-UnnamedText_48a63: ; 48a63 (12:4a63)
- TX_FAR _UnnamedText_48a63
- db "@"
-
-UnnamedText_48a68: ; 48a68 (12:4a68)
- TX_FAR _UnnamedText_48a68
- db "@"
-
-CeladonGymText9: ; 48a6d (12:4a6d)
-UnnamedText_48a6d: ; 48a6d (12:4a6d)
- TX_FAR _UnnamedText_48a6d
- db "@"
-
-TM21Text: ; 48a72 (12:4a72)
- TX_FAR _ReceivedTM21Text ; 0x9d50c
- db $0B
- TX_FAR _TM21ExplanationText ; 0x9d520
- db "@"
-
-TM21NoRoomText: ; 48a7c (12:4a7c)
- TX_FAR _TM21NoRoomText
- db "@"
-
-CeladonGymText2: ; 48a81 (12:4a81)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText2: ; 48a8b (12:4a8b)
- TX_FAR _CeladonGymBattleText2
- db "@"
-
-CeladonGymEndBattleText2: ; 48a90 (12:4a90)
- TX_FAR _CeladonGymEndBattleText2
- db "@"
-
-CeladonGymAfterBattleText2: ; 48a95 (12:4a95)
- TX_FAR _CeladonGymAfterBattleText2
- db "@"
-
-CeladonGymText3: ; 48a9a (12:4a9a)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText3: ; 48aa4 (12:4aa4)
- TX_FAR _CeladonGymBattleText3
- db "@"
-
-CeladonGymEndBattleText3: ; 48aa9 (12:4aa9)
- TX_FAR _CeladonGymEndBattleText3
- db "@"
-
-CeladonGymAfterBattleText3: ; 48aae (12:4aae)
- TX_FAR _CeladonGymAfterBattleText3
- db "@"
-
-CeladonGymText4: ; 48ab3 (12:4ab3)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText4: ; 48abd (12:4abd)
- TX_FAR _CeladonGymBattleText4
- db "@"
-
-CeladonGymEndBattleText4: ; 48ac2 (12:4ac2)
- TX_FAR _CeladonGymEndBattleText4
- db "@"
-
-CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7)
- TX_FAR _CeladonGymAfterBattleText4
- db "@"
-
-CeladonGymText5: ; 48acc (12:4acc)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText5: ; 48ad6 (12:4ad6)
- TX_FAR _CeladonGymBattleText5
- db "@"
-
-CeladonGymEndBattleText5: ; 48adb (12:4adb)
- TX_FAR _CeladonGymEndBattleText5
- db "@"
-
-CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0)
- TX_FAR _CeladonGymAfterBattleText5
- db "@"
-
-CeladonGymText6: ; 48ae5 (12:4ae5)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText6: ; 48aef (12:4aef)
- TX_FAR _CeladonGymBattleText6
- db "@"
-
-CeladonGymEndBattleText6: ; 48af4 (12:4af4)
- TX_FAR _CeladonGymEndBattleText6
- db "@"
-
-CeladonGymAfterBattleText6: ; 48af9 (12:4af9)
- TX_FAR _CeladonGymAfterBattleText6
- db "@"
-
-CeladonGymText7: ; 48afe (12:4afe)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText7: ; 48b08 (12:4b08)
- TX_FAR _CeladonGymBattleText7
- db "@"
-
-CeladonGymEndBattleText7: ; 48b0d (12:4b0d)
- TX_FAR _CeladonGymEndBattleText7
- db "@"
-
-CeladonGymAfterBattleText7: ; 48b12 (12:4b12)
- TX_FAR _CeladonGymAfterBattleText7
- db "@"
-
-CeladonGymText8: ; 48b17 (12:4b17)
- db $08 ; asm
- ld hl, CeladonGymTrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText8: ; 48b21 (12:4b21)
- TX_FAR _CeladonGymBattleText8
- db "@"
-
-CeladonGymEndBattleText8: ; 48b26 (12:4b26)
- TX_FAR _CeladonGymEndBattleText8
- db "@"
-
-CeladonGymAfterBattleText8: ; 48b2b (12:4b2b)
- TX_FAR _CeladonGymAfterBattleText8
- db "@"
+INCLUDE "data/mapHeaders/celadonpokecenter.asm"
-CeladonGymObject: ; 0x48b30 (size=84)
- db $3 ; border tile
+INCLUDE "scripts/celadonpokecenter.asm"
- db $2 ; warps
- db $11, $4, $6, $ff
- db $11, $5, $6, $ff
+INCLUDE "data/mapObjects/celadonpokecenter.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/celadongym.asm"
- db $8 ; people
- db SPRITE_ERIKA, $3 + 4, $4 + 4, $ff, $d0, $41, ERIKA + $C8, $1 ; trainer
- db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d3, $42, LASS + $C8, $11 ; trainer
- db SPRITE_FOULARD_WOMAN, $a + 4, $7 + 4, $ff, $d2, $43, BEAUTY + $C8, $1 ; trainer
- db SPRITE_LASS, $5 + 4, $9 + 4, $ff, $d0, $44, JR__TRAINER_F + $C8, $b ; trainer
- db SPRITE_FOULARD_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $45, BEAUTY + $C8, $2 ; trainer
- db SPRITE_LASS, $3 + 4, $6 + 4, $ff, $d0, $46, LASS + $C8, $12 ; trainer
- db SPRITE_FOULARD_WOMAN, $3 + 4, $3 + 4, $ff, $d0, $47, BEAUTY + $C8, $3 ; trainer
- db SPRITE_LASS, $3 + 4, $5 + 4, $ff, $d0, $48, COOLTRAINER_F + $C8, $1 ; trainer
+INCLUDE "scripts/celadongym.asm"
- ; warp-to
- EVENT_DISP CELADON_GYM_WIDTH, $11, $4
- EVENT_DISP CELADON_GYM_WIDTH, $11, $5
+INCLUDE "data/mapObjects/celadongym.asm"
CeladonGymBlocks: ; 48b84 (12:4b84)
INCBIN "maps/celadongym.blk"
-CeladonGameCorner_h: ; 0x48bb1 to 0x48bbd (12 bytes) (bank=12) (id=135)
- db LOBBY ; tileset
- db GAME_CORNER_HEIGHT, GAME_CORNER_WIDTH ; dimensions (y, x)
- dw CeladonGameCornerBlocks, CeladonGameCornerTextPointers, CeladonGameCornerScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonGameCornerObject ; objects
-
-CeladonGameCornerScript: ; 48bbd (12:4bbd)
- call CeladonGameCornerScript_48bcf
- call Func_48bec
- call EnableAutoTextBoxDrawing
- ld hl, CeladonGameCornerScriptPointers
- ld a, [W_CELADONGAMECORNERCURSCRIPT]
- jp CallFunctionInTable
+INCLUDE "data/mapHeaders/celadongamecorner.asm"
-CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- ret z
- call GenRandom
- ld a, [$ffd3]
- cp $7
- jr nc, .asm_48be2
- ld a, $8
-.asm_48be2
- srl a
- srl a
- srl a
- ld [$cd05], a
- ret
+INCLUDE "scripts/celadongamecorner.asm"
-Func_48bec: ; 48bec (12:4bec)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d77e]
- bit 1, a
- ret nz
- ld a, $2a
- ld [$d09f], a
- ld bc, $0208
- ld a, $17
- jp Predef
-
-CeladonGameCornerScript_48c07: ; 48c07 (12:4c07)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_CELADONGAMECORNERCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CeladonGameCornerScriptPointers: ; 48c12 (12:4c12)
- dw CeladonGameCornerScript0
- dw CeladonGameCornerScript1
- dw CeladonGameCornerScript2
-
-CeladonGameCornerScript0: ; 48c18 (12:4c18)
- ret
-
-CeladonGameCornerScript1: ; 48c19 (12:4c19)
- ld a, [W_ISINBATTLE]
- cp $ff
- jp z, CeladonGameCornerScript_48c07
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $d
- ld [H_SPRITEHEIGHT], a
- call DisplayTextID
- ld a, $b
- ld [H_SPRITEHEIGHT], a
- call SetSpriteMovementBytesToFF
- ld de, MovementData_48c5a
- ld a, [$d361]
- cp $6
- jr nz, .asm_48c43
- ld de, MovementData_48c63
- jr .asm_48c4d
-.asm_48c43
- ld a, [$d362]
- cp $8
- jr nz, .asm_48c4d
- ld de, MovementData_48c63
-.asm_48c4d
- ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a
- call MoveSprite
- ld a, $2
- ld [W_CELADONGAMECORNERCURSCRIPT], a
- ret
-
-MovementData_48c5a: ; 48c5a (12:4c5a)
- db $00,$C0,$C0,$40,$C0,$C0,$C0,$C0,$FF
-
-MovementData_48c63: ; 48c63 (12:4c63)
- db $C0,$C0,$C0,$C0,$C0,$FF
-
-CeladonGameCornerScript2: ; 48c69 (12:4c69)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $46
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, $d126
- set 5, [hl]
- set 6, [hl]
- ld a, $0
- ld [W_CELADONGAMECORNERCURSCRIPT], a
- ret
-
-CeladonGameCornerTextPointers: ; 48c8a (12:4c8a)
- dw CeladonGameCornerText1
- dw CeladonGameCornerText2
- dw CeladonGameCornerText3
- dw CeladonGameCornerText4
- dw CeladonGameCornerText5
- dw CeladonGameCornerText6
- dw CeladonGameCornerText7
- dw CeladonGameCornerText8
- dw CeladonGameCornerText9
- dw CeladonGameCornerText10
- dw CeladonGameCornerText11
- dw CeladonGameCornerText12
- dw CeladonGameCornerText13
-
-CeladonGameCornerText1: ; 48ca4 (12:4ca4)
- TX_FAR _CeladonGameCornerText1
- db "@"
-
-CeladonGameCornerText2: ; 48ca9 (12:4ca9)
- db $08 ; asm
- call Func_48f1e
- ld hl, UnnamedText_48d22
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_c650b ; 0x48cba
- ld b,COIN_CASE
- call IsItemInBag
- jr z, .asm_ed086 ; 0x48cc1
- call Has9990Coins
- jr nc, .asm_31338 ; 0x48cc6
- xor a
- ldh [$9f], a
- ldh [$a1], a
- ld a, $10
- ldh [$a0], a
- call HasEnoughMoney
- jr nc, .asm_b6ef0 ; 0x48cd4
- ld hl, UnnamedText_48d31 ; $4d31
- jr .asm_e2afd ; 0x48cd9
-.asm_b6ef0 ; 0x48cdb
- xor a
- ldh [$9f], a
- ldh [$a1], a
- ld a, $10
- ldh [$a0], a
- ld hl, $ffa1
- ld de, $d349
- ld c, $3
- ld a, $c
- call Predef
- xor a
- ldh [$9f], a
- ldh [$a0], a
- ld a, $50
- ldh [$a1], a
- ld de, $d5a5
- ld hl, $ffa1
- ld c, $2
- ld a, $b
- call Predef
- call Func_48f1e
- ld hl, UnnamedText_48d27
- jr .asm_e2afd ; 0x48d0d
-.asm_c650b ; 0x48d0f
- ld hl, UnnamedText_48d2c
- jr .asm_e2afd ; 0x48d12
-.asm_31338 ; 0x48d14
- ld hl, UnnamedText_48d36
- jr .asm_e2afd ; 0x48d17
-.asm_ed086 ; 0x48d19
- ld hl, UnnamedText_48d3b
-.asm_e2afd ; 0x48d1c
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_48d22: ; 48d22 (12:4d22)
- TX_FAR _UnnamedText_48d22
- db "@"
-
-UnnamedText_48d27: ; 48d27 (12:4d27)
- TX_FAR _UnnamedText_48d27
- db "@"
-
-UnnamedText_48d2c: ; 48d2c (12:4d2c)
- TX_FAR _UnnamedText_48d2c
- db "@"
-
-UnnamedText_48d31: ; 48d31 (12:4d31)
- TX_FAR _UnnamedText_48d31
- db "@"
-
-UnnamedText_48d36: ; 48d36 (12:4d36)
- TX_FAR _UnnamedText_48d36
- db "@"
-
-UnnamedText_48d3b: ; 48d3b (12:4d3b)
- TX_FAR _UnnamedText_48d3b
- db "@"
-
-CeladonGameCornerText3: ; 48d40 (12:4d40)
- TX_FAR _CeladonGameCornerText3
- db "@"
-
-CeladonGameCornerText4: ; 48d45 (12:4d45)
- TX_FAR _CeladonGameCornerText4
- db "@"
-
-CeladonGameCornerText5: ; 48d4a (12:4d4a)
- db $08 ; asm
- ld a, [$d77e]
- bit 2, a
- jr nz, .asm_d0957 ; 0x48d50
- ld hl, UnnamedText_48d9c
- call PrintText
- ld b, COIN_CASE
- call IsItemInBag
- jr z, .asm_5aef9 ; 0x48d5d
- call Has9990Coins
- jr nc, .asm_98546 ; 0x48d62
- xor a
- ldh [$9f], a
- ldh [$a0], a
- ld a, $10
- ldh [$a1], a
- ld de, $d5a5
- ld hl, $ffa1
- ld c, $2
- ld a, $b
- call Predef
- ld hl, $d77e
- set 2, [hl]
- ld a, $1
- ld [$cc3c], a
- ld hl, Received10CoinsText
- jr .asm_c7d1a ; 0x48d87
-.asm_d0957 ; 0x48d89
- ld hl, UnnamedText_48dac
- jr .asm_c7d1a ; 0x48d8c
-.asm_98546 ; 0x48d8e
- ld hl, UnnamedText_48da7
- jr .asm_c7d1a ; 0x48d91
-.asm_5aef9 ; 0x48d93
- ld hl, UnnamedText_48f19
-.asm_c7d1a ; 0x48d96
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_48d9c: ; 48d9c (12:4d9c)
- TX_FAR _UnnamedText_48d9c
- db "@"
-
-Received10CoinsText: ; 48da1 (12:4da1)
- TX_FAR _Received10CoinsText ; 0x9daa9
- db $0B, "@"
-
-UnnamedText_48da7: ; 48da7 (12:4da7)
- TX_FAR _UnnamedText_48da7
- db "@"
-
-UnnamedText_48dac: ; 48dac (12:4dac)
- TX_FAR _UnnamedText_48dac
- db "@"
-
-CeladonGameCornerText6: ; 48db1 (12:4db1)
- TX_FAR _CeladonGameCornerText6
- db "@"
-
-CeladonGameCornerText7: ; 48db6 (12:4db6)
- db $08 ; asm
- ld a, [$d77c]
- bit 1, a
- ld hl, UnnamedText_48dca ; $4dca
- jr z, .asm_be3fd ; 0x48dbf
- ld hl, UnnamedText_48dcf ; $4dcf
-.asm_be3fd ; 0x48dc4
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_48dca: ; 48dca (12:4dca)
- TX_FAR _UnnamedText_48dca
- db "@"
-
-UnnamedText_48dcf: ; 48dcf (12:4dcf)
- TX_FAR _UnnamedText_48dcf
- db "@"
-
-CeladonGameCornerText8: ; 48dd4 (12:4dd4)
- TX_FAR _CeladonGameCornerText8
- db "@"
-
-CeladonGameCornerText9: ; 48dd9 (12:4dd9)
- db $08 ; asm
- ld a, [$d77e]
- bit 4, a
- jr nz, .asm_ed8bc ; 0x48ddf
- ld hl, UnnamedText_48e26
- call PrintText
- ld b, COIN_CASE
- call IsItemInBag
- jr z, .asm_df794 ; 0x48dec
- call Has9990Coins
- jr nc, .asm_f17c3 ; 0x48df1
- xor a
- ldh [$9f], a
- ldh [$a0], a
- ld a, $20
- ldh [$a1], a
- ld de, $d5a5
- ld hl, $ffa1
- ld c, $2
- ld a, $b
- call Predef
- ld hl, $d77e
- set 4, [hl]
- ld hl, Received20CoinsText
- jr .asm_0ddc2 ; 0x48e11
-.asm_ed8bc ; 0x48e13
- ld hl, UnnamedText_48e36
- jr .asm_0ddc2 ; 0x48e16
-.asm_f17c3 ; 0x48e18
- ld hl, UnnamedText_48e31
- jr .asm_0ddc2 ; 0x48e1b
-.asm_df794 ; 0x48e1d
- ld hl, UnnamedText_48f19
-.asm_0ddc2 ; 0x48e20
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_48e26: ; 48e26 (12:4e26)
- TX_FAR _UnnamedText_48e26
- db "@"
-
-Received20CoinsText: ; 48e2b (12:4e2b)
- TX_FAR _Received20CoinsText ; 0x9dc4f
- db $0B, "@"
-
-UnnamedText_48e31: ; 48e31 (12:4e31)
- TX_FAR _UnnamedText_48e31
- db "@"
-
-UnnamedText_48e36: ; 48e36 (12:4e36)
- TX_FAR _UnnamedText_48e36
- db "@"
-
-CeladonGameCornerText10: ; 48e3b (12:4e3b)
- db $08 ; asm
- ld a, [$d77e]
- bit 3, a
- jr nz, .asm_ff080 ; 0x48e41
- ld hl, UnnamedText_48e88 ; $4e88
- call PrintText
- ld b,COIN_CASE
- call IsItemInBag
- jr z, .asm_4fb0c ; 0x48e4e
- call Has9990Coins
- jr z, .asm_9505a ; 0x48e53
- xor a
- ldh [$9f], a
- ldh [$a0], a
- ld a, $20
- ldh [$a1], a
- ld de, $d5a5
- ld hl, $ffa1
- ld c, $2
- ld a, $b
- call Predef
- ld hl, $d77e
- set 3, [hl]
- ld hl, UnnamedText_48e8d
- jr .asm_78d65 ; 0x48e73
-.asm_ff080 ; 0x48e75
- ld hl, UnnamedText_48e98
- jr .asm_78d65 ; 0x48e78
-.asm_9505a ; 0x48e7a
- ld hl, UnnamedText_48e93
- jr .asm_78d65 ; 0x48e7d
-.asm_4fb0c ; 0x48e7f
- ld hl, UnnamedText_48f19
-.asm_78d65 ; 0x48e82
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_48e88: ; 48e88 (12:4e88)
- TX_FAR _UnnamedText_48e88
- db "@"
-
-UnnamedText_48e8d: ; 48e8d (12:4e8d)
- TX_FAR _UnnamedText_48e8d ; 0x9dceb
- db $0B, "@"
-
-UnnamedText_48e93: ; 48e93 (12:4e93)
- TX_FAR _UnnamedText_48e93
- db "@"
-
-UnnamedText_48e98: ; 48e98 (12:4e98)
- TX_FAR _UnnamedText_48e98
- db "@"
-
-CeladonGameCornerText11: ; 48e9d (12:4e9d)
- db $08 ; asm
- ld hl, UnnamedText_48ece
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_48ed3
- ld de, UnnamedText_48ed3
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ldh [$b4], a
- ldh [$b3], a
- ldh [$b2], a
- ld a, $1
- ld [W_CELADONGAMECORNERCURSCRIPT], a
- jp TextScriptEnd
-
-UnnamedText_48ece: ; 48ece (12:4ece)
- TX_FAR _UnnamedText_48ece
- db "@"
-
-UnnamedText_48ed3: ; 48ed3 (12:4ed3)
- TX_FAR _UnnamedText_48ed3
- db "@"
-
-CeladonGameCornerText13: ; 48ed8 (12:4ed8)
- TX_FAR _UnnamedText_48ed8
- db "@"
-
-CeladonGameCornerText12: ; 48edd (12:4edd)
- db $08 ; asm
- ld a, $1
- ld [$cc3c], a
- ld hl, UnnamedText_48f09
- call PrintText
- call WaitForSoundToFinish
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- call WaitForSoundToFinish
- ld hl, $d77e
- set 1, [hl]
- ld a, $43
- ld [$d09f], a
- ld bc, $0208
- ld a, $17
- call Predef
- jp TextScriptEnd
-
-UnnamedText_48f09: ; 48f09 (12:4f09)
- TX_FAR _UnnamedText_48f09 ; 0x9ddb0
- db $8
- ld a, (SFX_02_49 - SFX_Headers_02) / 3
- call PlaySound
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-UnnamedText_48f19: ; 48f19 (12:4f19)
- TX_FAR _UnnamedText_48f19
- db "@"
-
-Func_48f1e: ; 48f1e (12:4f1e)
- ld hl, $d730
- set 6, [hl]
- FuncCoord 11, 0 ; $c3ab
- ld hl, Coord
- ld b, $5
- ld c, $7
- call TextBoxBorder
- call UpdateSprites
- FuncCoord 12, 1 ; $c3c0
- ld hl, Coord
- ld b, $4
- ld c, $7
- call ClearScreenArea
- FuncCoord 12, 2 ; $c3d4
- ld hl, Coord
- ld de, GameCornerMoneyText ; $4f7a
- call PlaceString
- FuncCoord 12, 3 ; $c3e8
- ld hl, Coord
- ld de, GameCornerBlankText1 ; $4f85
- call PlaceString
- FuncCoord 12, 3 ; $c3e8
- ld hl, Coord
- ld de, $d347
- ld c, $a3
- call PrintBCDNumber
- FuncCoord 12, 4 ; $c3fc
- ld hl, Coord
- ld de, GameCornerCoinText ; $4f80
- call PlaceString
- FuncCoord 12, 5 ; $c410
- ld hl, Coord
- ld de, GameCornerBlankText2 ; $4f8d
- call PlaceString
- FuncCoord 15, 5 ; $c413
- ld hl, Coord
- ld de, $d5a4
- ld c, $82
- call PrintBCDNumber
- ld hl, $d730
- res 6, [hl]
- ret
-
-GameCornerMoneyText: ; 48f7a (12:4f7a)
- db "MONEY@"
-
-GameCornerCoinText: ; 48f80 (12:4f80)
- db "COIN@"
-
-GameCornerBlankText1: ; 48f85 (12:4f85)
- db " @"
-
-GameCornerBlankText2: ; 48f8d (12:4f8d)
- db " @"
-
-Has9990Coins: ; 48f95 (12:4f95)
- ld a, $99
- ld [$ffa0], a
- ld a, $90
- ld [$ffa1], a
- jp HasEnoughCoins
-
-CeladonGameCornerObject: ; 0x48fa0 (size=99)
- db $f ; border tile
-
- db $3 ; warps
- db $11, $f, $7, $ff
- db $11, $10, $7, $ff
- db $4, $11, $1, ROCKET_HIDEOUT_1
-
- db $1 ; signs
- db $4, $9, $c ; CeladonGameCornerText12
-
- db $b ; people
- db SPRITE_FOULARD_WOMAN, $6 + 4, $2 + 4, $ff, $d0, $1 ; person
- db SPRITE_MART_GUY, $6 + 4, $5 + 4, $ff, $d0, $2 ; person
- db SPRITE_FAT_BALD_GUY, $a + 4, $2 + 4, $ff, $d2, $3 ; person
- db SPRITE_FOULARD_WOMAN, $d + 4, $2 + 4, $ff, $d2, $4 ; person
- db SPRITE_FISHER, $b + 4, $5 + 4, $ff, $d3, $5 ; person
- db SPRITE_MOM_GEISHA, $b + 4, $8 + 4, $ff, $d2, $6 ; person
- db SPRITE_GYM_HELPER, $e + 4, $8 + 4, $ff, $d2, $7 ; person
- db SPRITE_GAMBLER, $f + 4, $b + 4, $ff, $d3, $8 ; person
- db SPRITE_MART_GUY, $b + 4, $e + 4, $ff, $d2, $9 ; person
- db SPRITE_GENTLEMAN, $d + 4, $11 + 4, $ff, $d3, $a ; person
- db SPRITE_ROCKET, $5 + 4, $9 + 4, $ff, $d1, $4b, ROCKET + $C8, $7 ; trainer
-
- ; warp-to
- EVENT_DISP GAME_CORNER_WIDTH, $11, $f
- EVENT_DISP GAME_CORNER_WIDTH, $11, $10
- EVENT_DISP GAME_CORNER_WIDTH, $4, $11 ; ROCKET_HIDEOUT_1
+INCLUDE "data/mapObjects/celadongamecorner.asm"
CeladonGameCornerBlocks: ; 49003 (12:5003)
INCBIN "maps/celadongamecorner.blk"
-CeladonMart5_h: ; 0x4905d to 0x49069 (12 bytes) (bank=12) (id=136)
- db LOBBY ; tileset
- db CELADON_MART_5_HEIGHT, CELADON_MART_5_WIDTH ; dimensions (y, x)
- dw CeladonMart5Blocks, CeladonMart5TextPointers, CeladonMart5Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart5Object ; objects
-
-CeladonMart5Script: ; 49069 (12:5069)
- jp EnableAutoTextBoxDrawing
-
-CeladonMart5TextPointers: ; 4906c (12:506c)
- dw CeladonMart5Text1
- dw CeladonMart5Text2
- dw CeladonMart5Text3
- dw CeladonMart5Text4
- dw CeladonMart5Text5
-
-CeladonMart5Text1: ; 49076 (12:5076)
- TX_FAR _CeladonMart5Text1
- db "@"
-
-CeladonMart5Text2: ; 4907b (12:507b)
- TX_FAR _CeladonMart5Text2
- db "@"
-
-CeladonMart5Text5: ; 49080 (12:5080)
- TX_FAR _CeladonMart5Text5
- db "@"
-
-CeladonMart5Object: ; 0x49085 (size=55)
- db $f ; border tile
-
- db $3 ; warps
- db $1, $c, $0, CELADON_MART_ROOF
- db $1, $10, $1, CELADON_MART_4
- db $1, $1, $0, CELADON_MART_ELEVATOR
-
- db $1 ; signs
- db $1, $e, $5 ; CeladonMart5Text5
+INCLUDE "data/mapHeaders/celadonmart5.asm"
- db $4 ; people
- db SPRITE_GENTLEMAN, $5 + 4, $e + 4, $fe, $1, $1 ; person
- db SPRITE_SAILOR, $6 + 4, $2 + 4, $ff, $ff, $2 ; person
- db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $3 ; person
- db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $4 ; person
+INCLUDE "scripts/celadonmart5.asm"
- ; warp-to
- EVENT_DISP CELADON_MART_5_WIDTH, $1, $c ; CELADON_MART_ROOF
- EVENT_DISP CELADON_MART_5_WIDTH, $1, $10 ; CELADON_MART_4
- EVENT_DISP CELADON_MART_5_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
+INCLUDE "data/mapObjects/celadonmart5.asm"
CeladonMart5Blocks: ; 490bc (12:50bc)
INCBIN "maps/celadonmart5.blk"
-CeladonPrizeRoom_h: ; 0x490e4 to 0x490f0 (12 bytes) (bank=12) (id=137)
- db LOBBY ; tileset
- db CELADON_PRIZE_ROOM_HEIGHT, CELADON_PRIZE_ROOM_WIDTH ; dimensions (y, x)
- dw CeladonPrizeRoomBlocks, CeladonPrizeRoomTextPointers, CeladonPrizeRoomScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonPrizeRoomObject ; objects
-
-CeladonPrizeRoomScript: ; 490f0 (12:50f0)
- jp EnableAutoTextBoxDrawing
-
-CeladonPrizeRoomTextPointers: ; 490f3 (12:50f3)
- dw CeladonPrizeRoomText1
- dw CeladonPrizeRoomText2
- dw CeladonPrizeRoomText3
- dw CeladonPrizeRoomText3
- dw CeladonPrizeRoomText3
-
-CeladonPrizeRoomText1: ; 490fd (12:50fd)
- TX_FAR _CeladonPrizeRoomText1
- db "@"
-
-CeladonPrizeRoomText2: ; 49102 (12:5102)
- TX_FAR _CeladonPrizeRoomText2
- db "@"
-
-CeladonPrizeRoomText3: ; 49107 (12:5107)
- db $f7
+INCLUDE "data/mapHeaders/celadonprizeroom.asm"
-CeladonPrizeRoomObject: ; 0x49108 (size=41)
- db $f ; border tile
+INCLUDE "scripts/celadonprizeroom.asm"
- db $2 ; warps
- db $7, $4, $9, $ff
- db $7, $5, $9, $ff
-
- db $3 ; signs
- db $2, $2, $3 ; CeladonPrizeRoomText3
- db $2, $4, $4 ; CeladonPrizeRoomText4
- db $2, $6, $5 ; CeladonPrizeRoomText5
-
- db $2 ; people
- db SPRITE_BALDING_GUY, $4 + 4, $1 + 4, $ff, $ff, $1 ; person
- db SPRITE_GAMBLER, $3 + 4, $7 + 4, $fe, $2, $2 ; person
-
- ; warp-to
- EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $4
- EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $5
+INCLUDE "data/mapObjects/celadonprizeroom.asm"
CeladonPrizeRoomBlocks: ; 49131 (12:5131)
INCBIN "maps/celadonprizeroom.blk"
-CeladonDiner_h: ; 0x49145 to 0x49151 (12 bytes) (bank=12) (id=138)
- db LOBBY ; tileset
- db CELADON_DINER_HEIGHT, CELADON_DINER_WIDTH ; dimensions (y, x)
- dw CeladonDinerBlocks, CeladonDinerTextPointers, CeladonDinerScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonDinerObject ; objects
-
-CeladonDinerScript: ; 49151 (12:5151)
- call EnableAutoTextBoxDrawing
- ret
+INCLUDE "data/mapHeaders/celadondiner.asm"
-CeladonDinerTextPointers: ; 49155 (12:5155)
- dw CeladonDinerText1
- dw CeladonDinerText2
- dw CeladonDinerText3
- dw CeladonDinerText4
- dw CeladonDinerText5
+INCLUDE "scripts/celadondiner.asm"
-CeladonDinerText1: ; 4915f (12:515f)
- TX_FAR _CeladonDinerText1
- db "@"
-
-CeladonDinerText2: ; 49164 (12:5164)
- TX_FAR _CeladonDinerText2
- db "@"
-
-CeladonDinerText3: ; 49169 (12:5169)
- TX_FAR _CeladonDinerText3
- db "@"
-
-CeladonDinerText4: ; 4916e (12:516e)
- TX_FAR _CeladonDinerText4
- db "@"
-
-CeladonDinerText5: ; 49173 (12:5173)
- db $08 ; asm
- ld a, [$d783]
- bit 0, a
- jr nz, .asm_eb14d ; 0x49179
- ld hl, UnnamedText_491a7
- call PrintText
- ld bc, (COIN_CASE << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d783
- set 0, [hl]
- ld hl, ReceivedCoinCaseText
- call PrintText
- jr .asm_68b61 ; 0x49194
-.BagFull
- ld hl, CoinCaseNoRoomText
- call PrintText
- jr .asm_68b61 ; 0x4919c
-.asm_eb14d ; 0x4919e
- ld hl, UnnamedText_491b7
- call PrintText
-.asm_68b61 ; 0x491a4
- jp TextScriptEnd
-
-UnnamedText_491a7: ; 491a7 (12:51a7)
- TX_FAR _UnnamedText_491a7
- db "@"
-
-ReceivedCoinCaseText: ; 491ac (12:51ac)
- TX_FAR _ReceivedCoinCaseText ; 0x9e07a
- db $11, "@"
-
-CoinCaseNoRoomText: ; 491b2 (12:51b2)
- TX_FAR _CoinCaseNoRoomText
- db "@"
-
-UnnamedText_491b7: ; 491b7 (12:51b7)
- TX_FAR _UnnamedText_491b7
- db "@"
-
-CeladonDinerObject: ; 0x491bc (size=50)
- db $f ; border tile
-
- db $2 ; warps
- db $7, $3, $a, $ff
- db $7, $4, $a, $ff
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_COOK, $5 + 4, $8 + 4, $fe, $2, $1 ; person
- db SPRITE_MOM_GEISHA, $2 + 4, $7 + 4, $ff, $ff, $2 ; person
- db SPRITE_FAT_BALD_GUY, $4 + 4, $1 + 4, $ff, $d0, $3 ; person
- db SPRITE_FISHER2, $3 + 4, $5 + 4, $ff, $d3, $4 ; person
- db SPRITE_GYM_HELPER, $1 + 4, $0 + 4, $ff, $d0, $5 ; person
-
- ; warp-to
- EVENT_DISP CELADON_DINER_WIDTH, $7, $3
- EVENT_DISP CELADON_DINER_WIDTH, $7, $4
+INCLUDE "data/mapObjects/celadondiner.asm"
CeladonDinerBlocks: ; 491ee (12:51ee)
INCBIN "maps/celadondiner.blk"
-CeladonHouse_h: ; 0x49202 to 0x4920e (12 bytes) (bank=12) (id=139)
- db MANSION ; tileset
- db CELADON_HOUSE_HEIGHT, CELADON_HOUSE_WIDTH ; dimensions (y, x)
- dw CeladonHouseBlocks, CeladonHouseTextPointers, CeladonHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonHouseObject ; objects
-
-CeladonHouseScript: ; 4920e (12:520e)
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonHouseTextPointers: ; 49212 (12:5212)
- dw CeladonHouseText1
- dw CeladonHouseText2
- dw CeladonHouseText3
-
-CeladonHouseText1: ; 49218 (12:5218)
- TX_FAR _CeladonHouseText1
- db "@"
-
-CeladonHouseText2: ; 4921d (12:521d)
- TX_FAR _CeladonHouseText2
- db "@"
-
-CeladonHouseText3: ; 49222 (12:5222)
- TX_FAR _CeladonHouseText3
- db "@"
-
-CeladonHouseObject: ; 0x49227 (size=38)
- db $f ; border tile
-
- db $2 ; warps
- db $7, $2, $b, $ff
- db $7, $3, $b, $ff
+INCLUDE "data/mapHeaders/celadonhouse.asm"
- db $0 ; signs
+INCLUDE "scripts/celadonhouse.asm"
- db $3 ; people
- db SPRITE_OLD_PERSON, $2 + 4, $4 + 4, $ff, $d0, $1 ; person
- db SPRITE_ROCKET, $4 + 4, $1 + 4, $fe, $0, $2 ; person
- db SPRITE_SAILOR, $6 + 4, $5 + 4, $ff, $d2, $3 ; person
-
- ; warp-to
- EVENT_DISP CELADON_HOUSE_WIDTH, $7, $2
- EVENT_DISP CELADON_HOUSE_WIDTH, $7, $3
+INCLUDE "data/mapObjects/celadonhouse.asm"
CeladonHouseBlocks: ; 4924d (12:524d)
INCBIN "maps/celadonhouse.blk"
-CeladonHotel_h: ; 0x4925d to 0x49269 (12 bytes) (bank=12) (id=140)
- db POKECENTER ; tileset
- db CELADON_HOTEL_HEIGHT, CELADON_HOTEL_WIDTH ; dimensions (y, x)
- dw CeladonHotelBlocks, CeladonHotelTextPointers, CeladonHotelScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonHotelObject ; objects
-
-CeladonHotelScript: ; 49269 (12:5269)
- jp EnableAutoTextBoxDrawing
-
-CeladonHotelTextPointers: ; 4926c (12:526c)
- dw CeladonHotelText1
- dw CeladonHotelText2
- dw CeladonHotelText3
-
-CeladonHotelText1: ; 49272 (12:5272)
- TX_FAR _CeladonHotelText1
- db "@"
-
-CeladonHotelText2: ; 49277 (12:5277)
- TX_FAR _CeladonHotelText2
- db "@"
-
-CeladonHotelText3: ; 4927c (12:527c)
- TX_FAR _CeladonHotelText3
- db "@"
-
-CeladonHotelObject: ; 0x49281 (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $c, $ff
- db $7, $4, $c, $ff
-
- db $0 ; signs
+INCLUDE "data/mapHeaders/celadonhotel.asm"
- db $3 ; people
- db SPRITE_OLD_MEDIUM_WOMAN, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_FOULARD_WOMAN, $4 + 4, $2 + 4, $ff, $ff, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $8 + 4, $fe, $2, $3 ; person
+INCLUDE "scripts/celadonhotel.asm"
- ; warp-to
- EVENT_DISP CELADON_HOTEL_WIDTH, $7, $3
- EVENT_DISP CELADON_HOTEL_WIDTH, $7, $4
+INCLUDE "data/mapObjects/celadonhotel.asm"
CeladonHotelBlocks: ; 492a7 (12:52a7)
INCBIN "maps/celadonhotel.blk"
-MtMoonPokecenter_h: ; 0x492c3 to 0x492cf (12 bytes) (bank=12) (id=68)
- db POKECENTER ; tileset
- db MT_MOON_POKECENTER_HEIGHT, MT_MOON_POKECENTER_WIDTH ; dimensions (y, x)
- dw MtMoonPokecenterBlocks, MtMoonPokecenterTextPointers, MtMoonPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoonPokecenterObject ; objects
-
-MtMoonPokecenterScript: ; 492cf (12:52cf)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-MtMoonPokecenterTextPointers: ; 492d5 (12:52d5)
- dw MtMoonPokecenterText1
- dw MtMoonPokecenterText2
- dw MtMoonPokecenterText3
- dw MtMoonPokecenterText4
- dw MtMoonPokecenterText5
- dw MtMoonPokecenterText6
-
-MtMoonPokecenterText1: ; 492e1 (12:52e1)
- db $ff
-
-MtMoonPokecenterText2: ; 492e2 (12:52e2)
- TX_FAR _MtMoonPokecenterText1
- db "@"
-
-MtMoonPokecenterText3: ; 492e7 (12:52e7)
- TX_FAR _MtMoonPokecenterText3
- db "@"
-
-MtMoonPokecenterText4: ; 492ec (12:52ec)
- db $08 ; asm
- ld a, [$d7c6]
- add a
- jp c, .asm_49353
- ld hl, UnnamedText_4935c
- call PrintText
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- call YesNoChoice
- ld a, [$cc26]
- and a
- jp nz, .asm_4934e
- ldh [$9f], a
- ldh [$a1], a
- ld a, $5
- ldh [$a0], a
- call HasEnoughMoney
- jr nc, .asm_faa09 ; 0x49317
- ld hl, UnnamedText_49366
- jr .asm_49356 ; 0x4931c
-.asm_faa09 ; 0x4931e
- ld bc,(MAGIKARP << 8) | 5
- call GivePokemon
- jr nc, .asm_49359 ; 0x49324
- xor a
- ld [wWhichTrade], a
- ld [$cd3f], a
- ld a, $5
- ld [$cd3e], a
- ld hl, $cd3f
- ld de, $d349
- ld c, $3
- ld a, $c
- call Predef
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- ld hl, $d7c6
- set 7, [hl]
- jr .asm_49359 ; 0x4934c
-.asm_4934e ; 0x4934e
- ld hl, UnnamedText_49361
- jr .asm_49356 ; 0x49351
-.asm_49353 ; 0x49353
- ld hl, UnnamedText_4936b
-.asm_49356 ; 0x49356
- call PrintText
-.asm_49359 ; 0x49359
- jp TextScriptEnd
-
-UnnamedText_4935c: ; 4935c (12:535c)
- TX_FAR _UnnamedText_4935c
- db "@"
-
-UnnamedText_49361: ; 49361 (12:5361)
- TX_FAR _UnnamedText_49361
- db "@"
-
-UnnamedText_49366: ; 49366 (12:5366)
- TX_FAR _UnnamedText_49366
- db "@"
-
-UnnamedText_4936b: ; 4936b (12:536b)
- TX_FAR _UnnamedText_4936b
- db "@"
-
-MtMoonPokecenterText5: ; 49370 (12:5370)
- TX_FAR _MtMoonPokecenterText5
- db "@"
-
-MtMoonPokecenterText6: ; 49375 (12:5375)
- db $f6
-
-MtMoonPokecenterObject: ; 0x49376 (size=56)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $0, $ff
- db $7, $4, $0, $ff
-
- db $0 ; signs
-
- db $6 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_BUG_CATCHER, $3 + 4, $4 + 4, $ff, $d1, $2 ; person
- db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $ff, $d1, $3 ; person
- db SPRITE_FAT_BALD_GUY, $6 + 4, $a + 4, $fe, $2, $4 ; person
- db SPRITE_CLIPBOARD, $2 + 4, $7 + 4, $ff, $ff, $5 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $6 ; person
-
- ; warp-to
- EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $3
- EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $4
-
-RockTunnelPokecenter_h: ; 0x493ae to 0x493ba (12 bytes) (id=81)
- db POKECENTER ; tileset
- db ROCK_TUNNEL_POKECENTER_HEIGHT, ROCK_TUNNEL_POKECENTER_WIDTH ; dimensions (y, x)
- dw RockTunnelPokecenterBlocks, RockTunnelPokecenterTextPointers, RockTunnelPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw RockTunnelPokecenterObject ; objects
-
-RockTunnelPokecenterScript: ; 493ba (12:53ba)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-RockTunnelPokecenterTextPointers: ; 493c0 (12:53c0)
- dw RockTunnelPokecenterText1
- dw RockTunnelPokecenterText2
- dw RockTunnelPokecenterText3
- dw RockTunnelPokecenterText4
-
-RockTunnelPokecenterText1: ; 493c8 (12:53c8)
- db $ff
-
-RockTunnelPokecenterText2: ; 493c9 (12:53c9)
- TX_FAR _RockTunnelPokecenterText1
- db "@"
-
-RockTunnelPokecenterText3: ; 493ce (12:53ce)
- TX_FAR _RockTunnelPokecenterText3
- db "@"
-
-RockTunnelPokecenterText4: ; 493d3 (12:53d3)
- db $f6
-
-RockTunnelPokecenterObject: ; 0x493d4 (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $0, $ff
- db $7, $4, $0, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person
- db SPRITE_FISHER2, $5 + 4, $2 + 4, $ff, $ff, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $3
- EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $4
-
-Route11Gate_h: ; 0x49400 to 0x4940c (12 bytes) (id=84)
- db GATE ; tileset
- db ROUTE_11_GATE_1F_HEIGHT, ROUTE_11_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route11GateBlocks, Route11GateTextPointers, Route11GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route11GateObject ; objects
-
-Route11GateScript: ; 4940c (12:540c)
- jp EnableAutoTextBoxDrawing
-
-Route11GateTextPointers: ; 4940f (12:540f)
- dw Route11GateText1
-
-Route11GateText1: ; 49411 (12:5411)
- TX_FAR _Route11GateText1
- db "@"
-
-Route11GateObject: ; 0x49416 (size=50)
- db $a ; border tile
-
- db $5 ; warps
- db $4, $0, $0, $ff
- db $5, $0, $1, $ff
- db $4, $7, $2, $ff
- db $5, $7, $3, $ff
- db $8, $6, $0, ROUTE_11_GATE_2F
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $0
- EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $0
- EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $7
- EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $7
- EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $8, $6 ; ROUTE_11_GATE_2F
-
-Route11GateUpstairs_h: ; 0x49448 to 0x49454 (12 bytes) (id=86)
- db GATE ; tileset
- db ROUTE_11_GATE_2F_HEIGHT, ROUTE_11_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route11GateUpstairsBlocks, Route11GateUpstairsTextPointers, Route11GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route11GateUpstairsObject ; objects
-
-Route11GateUpstairsScript: ; 49454 (12:5454)
- jp DisableAutoTextBoxDrawing
-
-Route11GateUpstairsTextPointers: ; 49457 (12:5457)
- dw Route11GateUpstairsText1
- dw Route11GateUpstairsText2
- dw Route11GateUpstairsText3
- dw Route11GateUpstairsText4
-
-Route11GateUpstairsText1: ; 4945f (12:545f)
- db $08 ; asm
- xor a
- ld [wWhichTrade], a
- ld a, $54
- call Predef
-asm_49469: ; 49469 (12:5469)
- jp TextScriptEnd
-
-Route11GateUpstairsText2: ; 4946c (12:546c)
- db $8
- ld a, [$d7d6]
- add a
- jr c, .asm_4949b ; 0x49471 $28
- ld a, $1e
- ld [$ffdb], a
- ld a, $47
- ld [$ffdc], a
- ld [$d11e], a
- call GetItemName
- ld h, d
- ld l, e
- ld de, $cc5b
- ld bc, $000d
- call CopyData
- ld a, $62
- call Predef
- ld a, [$ffdb]
- dec a
- jr nz, .asm_494a1 ; 0x49494 $b
- ld hl, $d7d6
- set 7, [hl]
-.asm_4949b
- ld hl, UnnamedText_494a3
- call PrintText
-.asm_494a1
- jr asm_49469 ; 0x494a1 $c6
-
-UnnamedText_494a3: ; 494a3 (12:54a3)
- TX_FAR _UnnamedText_494a3
- db "@"
-
-Route11GateUpstairsText3: ; 494a8 (12:54a8)
- db $08 ; asm
- ld a, [$c109]
- cp $4
- jp nz, Func_55c9
- ld a, [$d7d8]
- bit 7, a ; fought snorlax?
- ld hl, BinocularsSnorlaxText
- jr z, .print
- ld hl, BinocularsNoSnorlaxText
-.print
- call PrintText
- jp TextScriptEnd
-
-BinocularsSnorlaxText:
- TX_FAR _BinocularsSnorlaxText
- db "@"
-
-BinocularsNoSnorlaxText:
- TX_FAR _BinocularsNoSnorlaxText
- db "@"
-
-Route11GateUpstairsText4: ; 494ce (12:54ce)
- db $8
- ld hl, UnnamedText_494d5 ; $54d5
- jp Func_55c9
-
-UnnamedText_494d5: ; 494d5 (12:54d5)
- TX_FAR _UnnamedText_494d5
- db "@"
+INCLUDE "data/mapHeaders/mtmoonpokecenter.asm"
-Route11GateUpstairsObject: ; 0x494da (size=30)
- db $a ; border tile
+INCLUDE "scripts/mtmoonpokecenter.asm"
- db $1 ; warps
- db $7, $7, $4, ROUTE_11_GATE_1F
+INCLUDE "data/mapObjects/mtmoonpokecenter.asm"
- db $2 ; signs
- db $2, $1, $3 ; Route11GateUpstairsText3
- db $2, $6, $4 ; Route11GateUpstairsText4
+INCLUDE "data/mapHeaders/rocktunnelpokecenter.asm"
- db $2 ; people
- db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person
- db SPRITE_OAK_AIDE, $6 + 4, $2 + 4, $ff, $ff, $2 ; person
+INCLUDE "scripts/rocktunnelpokecenter.asm"
- ; warp-to
- EVENT_DISP ROUTE_11_GATE_2F_WIDTH, $7, $7 ; ROUTE_11_GATE_1F
+INCLUDE "data/mapObjects/rocktunnelpokecenter.asm"
-Route12Gate_h: ; 0x494f8 to 0x49504 (12 bytes) (id=87)
- db GATE ; tileset
- db ROUTE_12_GATE_1F_HEIGHT, ROUTE_12_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route12GateBlocks, Route12GateTextPointers, Route12GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route12GateObject ; objects
+INCLUDE "data/mapHeaders/route11gate.asm"
-Route12GateScript: ; 49504 (12:5504)
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/route11gate.asm"
-Route12GateTextPointers: ; 49507 (12:5507)
- dw Route12GateText1
+INCLUDE "data/mapObjects/route11gate.asm"
-Route12GateText1: ; 49509 (12:5509)
- TX_FAR _Route12GateText1
- db "@"
+INCLUDE "data/mapHeaders/route11gateupstairs.asm"
-Route12GateObject: ; 0x4950e (size=50)
- db $a ; border tile
+INCLUDE "scripts/route11gateupstairs.asm"
- db $5 ; warps
- db $0, $4, $0, $ff
- db $0, $5, $1, $ff
- db $7, $4, $2, $ff
- db $7, $5, $2, $ff
- db $6, $8, $0, ROUTE_12_GATE_2F
+INCLUDE "data/mapObjects/route11gateupstairs.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/route12gate.asm"
- db $1 ; people
- db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $ff, $1 ; person
+INCLUDE "scripts/route12gate.asm"
- ; warp-to
- EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $4
- EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $5
- EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $4
- EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $5
- EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $6, $8 ; ROUTE_12_GATE_2F
+INCLUDE "data/mapObjects/route12gate.asm"
Route12GateBlocks: ; 49540 (12:5540)
INCBIN "maps/route12gate.blk"
-Route12GateUpstairs_h: ; 0x49554 to 0x49560 (12 bytes) (id=195)
- db GATE ; tileset
- db ROUTE_12_GATE_2F_HEIGHT, ROUTE_12_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route12GateUpstairsBlocks, Route12GateUpstairsTextPointers, Route12GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route12GateUpstairsObject ; objects
-
-Route12GateUpstairsScript: ; 49560 (12:5560)
- jp DisableAutoTextBoxDrawing
-
-Route12GateUpstairsTextPointers: ; 49563 (12:5563)
- dw Route12GateUpstairsText1
- dw Route12GateUpstairsText2
- dw Route12GateUpstairsText3
-
-Route12GateUpstairsText1: ; 49569 (12:5569)
- db $08 ; asm
- ld a, [$d7d7]
- rrca
- jr c, .asm_0ad3c ; 0x4956e
- ld hl, TM39PreReceiveText
- call PrintText
- ld bc, (TM_39 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM39Text
- call PrintText
- ld hl, $d7d7
- set 0, [hl]
- jr .asm_4ba56 ; 0x49589
-.BagFull
- ld hl, TM39NoRoomText
- call PrintText
- jr .asm_4ba56 ; 0x49591
-.asm_0ad3c ; 0x49593
- ld hl, TM39ExplanationText
- call PrintText
-.asm_4ba56 ; 0x49599
- jp TextScriptEnd
-
-TM39PreReceiveText: ; 4959c (12:559c)
- TX_FAR _TM39PreReceiveText
- db "@"
-
-ReceivedTM39Text: ; 495a1 (12:55a1)
- TX_FAR _ReceivedTM39Text ; 0x8c8c6
- db $0B, "@"
-
-TM39ExplanationText: ; 495a7 (12:55a7)
- TX_FAR _TM39ExplanationText
- db "@"
-
-TM39NoRoomText: ; 495ac (12:55ac)
- TX_FAR _TM39NoRoomText
- db "@"
-
-Route12GateUpstairsText2: ; 495b1 (12:55b1)
- db $08 ; asm
- ld hl, UnnamedText_495b8
- jp Func_55c9
-
-UnnamedText_495b8: ; 495b8 (12:55b8)
- TX_FAR _UnnamedText_495b8 ; 0x8c95a
- db "@"
-
-Route12GateUpstairsText3: ; 495bd (12:55bd)
- db $8
- ld hl, UnnamedText_495c4
- jp Func_55c9
-
-UnnamedText_495c4: ; 495c4 (12:55c4)
- TX_FAR _UnnamedText_495c4
- db "@"
-
-Func_55c9: ; 495c9 (12:55c9)
- ld a, [$c109]
- cp $4
- jr z, .asm_495d4 ; 0x495ce $4
- ld a, $1
- jr .asm_495d8 ; 0x495d2 $4
-.asm_495d4
- call PrintText
- xor a
-.asm_495d8
- ld [$cc3c], a
- jp TextScriptEnd
-
-Route12GateUpstairsObject: ; 0x495de (size=24)
- db $a ; border tile
-
- db $1 ; warps
- db $7, $7, $4, ROUTE_12_GATE_1F
+INCLUDE "data/mapHeaders/route12gateupstairs.asm"
- db $2 ; signs
- db $2, $1, $2 ; Route12GateUpstairsText2
- db $2, $6, $3 ; Route12GateUpstairsText3
+INCLUDE "scripts/route12gateupstairs.asm"
- db $1 ; people
- db SPRITE_BRUNETTE_GIRL, $4 + 4, $3 + 4, $fe, $1, $1 ; person
+INCLUDE "data/mapObjects/route12gateupstairs.asm"
- ; warp-to
- EVENT_DISP ROUTE_12_GATE_2F_WIDTH, $7, $7 ; ROUTE_12_GATE_1F
+INCLUDE "data/mapHeaders/route15gate.asm"
-Route15Gate_h: ; 0x495f6 to 0x49602 (12 bytes) (id=184)
- db GATE ; tileset
- db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route15GateBlocks, Route15GateTextPointers, Route15GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route15GateObject ; objects
-
-Route15GateScript: ; 49602 (12:5602)
- jp EnableAutoTextBoxDrawing
-
-Route15GateTextPointers: ; 49605 (12:5605)
- dw Route15GateText1
-
-Route15GateText1: ; 49607 (12:5607)
- TX_FAR _Route15GateText1
- db "@"
+INCLUDE "scripts/route15gate.asm"
-Route15GateObject: ; 0x4960c (size=50)
- db $a ; border tile
+INCLUDE "data/mapObjects/route15gate.asm"
- db $5 ; warps
- db $4, $0, $0, $ff
- db $5, $0, $1, $ff
- db $4, $7, $2, $ff
- db $5, $7, $3, $ff
- db $8, $6, $0, ROUTE_15_GATE_2F
+INCLUDE "data/mapHeaders/route15gateupstairs.asm"
- db $0 ; signs
+INCLUDE "scripts/route15gateupstairs.asm"
- db $1 ; people
- db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person
+INCLUDE "data/mapObjects/route15gateupstairs.asm"
- ; warp-to
- EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $0
- EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $0
- EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $7
- EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $7
- EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $8, $6 ; ROUTE_15_GATE_2F
+INCLUDE "data/mapHeaders/route16gate.asm"
-Route15GateUpstairs_h: ; 4963e (12:563e)
- db GATE ; tileset
- db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route15GateUpstairsBlocks, Route15GateUpstairsTextPointers, Route15GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route15GateUpstairsObject ; objects
+INCLUDE "scripts/route16gate.asm"
-Route15GateUpstairsScript: ; 4964a (12:564a)
- jp DisableAutoTextBoxDrawing
-
-Route15GateUpstairsTextPointers: ; 4964d (12:564d)
- dw Route15GateUpstairsText1
- dw Route15GateUpstairsText2
-
-Route15GateUpstairsText1: ; 49651 (12:5651)
- db $8
- ld a, [$d7dd]
- bit 0, a
- jr nz, .asm_49683 ; 0x49657 $2a
- ld a, $32
- ld [$ffdb], a
- ld a, $4b
- ld [$ffdc], a
- ld [$d11e], a
- call GetItemName
- ld hl, $cd6d
- ld de, $cc5b
- ld bc, $000d
- call CopyData
- ld a, $62
- call Predef
- ld a, [$ffdb]
- cp $1
- jr nz, .asm_49689 ; 0x4967c $b
- ld hl, $d7dd
- set 0, [hl]
-.asm_49683
- ld hl, UnnamedText_4968c
- call PrintText
-.asm_49689
- jp TextScriptEnd
-
-UnnamedText_4968c: ; 4968c (12:568c)
- TX_FAR _UnnamedText_4968c
- db "@"
-
-Route15GateUpstairsText2: ; 49691 (12:5691)
- db $8
- ld hl, UnnamedText_49698
- jp Func_55c9
-
-UnnamedText_49698: ; 49698 (12:5698)
- TX_FAR _UnnamedText_49698
- db "@"
-
-Route15GateUpstairsObject: ; 4969d (12:569d)
- db $a ; border tile
-
- db $1 ; warps
- db $7, $7, $4, ROUTE_15_GATE_1F
-
- db $1 ; signs
- db $2, $6, $2 ; Route15GateUpstairsText2
-
- db $1 ; people
- db SPRITE_OAK_AIDE, $2 + 4, $4 + 4, $ff, $d0, $1
-
- ; warp-to
- EVENT_DISP ROUTE_15_GATE_2F_WIDTH, $7, $7 ; ROUTE_15_GATE_1F
-
-Route16Gate_h: ; 0x496b2 to 0x496be (12 bytes) (id=186)
- db GATE ; tileset
- db ROUTE_16_GATE_1F_HEIGHT, ROUTE_16_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route16GateBlocks, Route16GateTextPointers, Route16GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route16GateObject ; objects
-
-Route16GateScript: ; 496be (12:56be)
- ld hl, $d732
- res 5, [hl]
- call EnableAutoTextBoxDrawing
- ld a, [W_ROUTE16GATECURSCRIPT]
- ld hl, Route16GateScriptPointers
- jp CallFunctionInTable
-
-Route16GateScriptPointers: ; 496cf (12:56cf)
- dw Route16GateScript0
- dw Route16GateScript1
- dw Route16GateScript2
- dw Route16GateScript3
-
-Route16GateScript0: ; 496d7 (12:56d7)
- call Func_49755
- ret nz
- ld hl, CoordsData_49714
- call ArePlayerCoordsInArray
- ret nc
- ld a, $3
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, [$cd3d]
- cp $1
- jr z, .asm_4970e ; 0x496f1 $1b
- ld a, [$cd3d]
- dec a
- ld [$cd38], a
- ld b, $0
- ld c, a
- ld a, $40
- ld hl, $ccd3
- call FillMemory
- call Func_3486
- ld a, $1
- ld [W_ROUTE16GATECURSCRIPT], a
- ret
-.asm_4970e
- ld a, $2
- ld [W_ROUTE16GATECURSCRIPT], a
- ret
-
-CoordsData_49714: ; 49714 (12:5714)
- db $07,$04
- db $08,$04
- db $09,$04
- db $0A,$04
- db $FF
-
-Route16GateScript1: ; 4971d (12:571d)
- ld a, [$cd38]
- and a
- ret nz
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-
-Route16GateScript2: ; 49727 (12:5727)
- ld a, $1
- ld [H_SPRITEHEIGHT], a
- call DisplayTextID
- ld a, $1
- ld [$cd38], a
- ld a, $10
- ld [$ccd3], a
- call Func_3486
- ld a, $3
- ld [W_ROUTE16GATECURSCRIPT], a
- ret
-
-Route16GateScript3: ; 49741 (12:5741)
- ld a, [$cd38]
- and a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d730
- res 7, [hl]
- ld a, $0
- ld [W_ROUTE16GATECURSCRIPT], a
- ret
-
-Func_49755: ; 49755 (12:5755)
- ld b, BICYCLE
- jp IsItemInBag
-
-Route16GateTextPointers: ; 4975a (12:575a)
- dw Route16GateText1
- dw Route16GateText2
- dw Route16GateText3
-
-Route16GateText1: ; 49760 (12:5760)
- db $08 ; asm
- call Func_49755
- jr z, .asm_0bdf3 ; 0x49764
- ld hl, UnnamedText_4977c
- call PrintText
- jr .asm_56c9d ; 0x4976c
-.asm_0bdf3 ; 0x4976e
- ld hl, UnnamedText_49777
- call PrintText
-.asm_56c9d ; 0x49774
- jp TextScriptEnd
-
-UnnamedText_49777: ; 49777 (12:5777)
- TX_FAR _UnnamedText_49777
- db "@"
-
-UnnamedText_4977c: ; 4977c (12:577c)
- TX_FAR _UnnamedText_4977c
- db "@"
-
-Route16GateText3: ; 49781 (12:5781)
- TX_FAR _UnnamedText_49781
- db "@"
-
-Route16GateText2: ; 49786 (12:5786)
- TX_FAR _Route16GateText2
- db "@"
-
-Route16GateObject: ; 0x4978b (size=88)
- db $a ; border tile
-
- db $9 ; warps
- db $8, $0, $0, $ff
- db $9, $0, $1, $ff
- db $8, $7, $2, $ff
- db $9, $7, $2, $ff
- db $2, $0, $4, $ff
- db $3, $0, $5, $ff
- db $2, $7, $6, $ff
- db $3, $7, $7, $ff
- db $c, $6, $0, ROUTE_16_GATE_2F
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_GUARD, $5 + 4, $4 + 4, $ff, $d0, $1 ; person
- db SPRITE_GAMBLER, $3 + 4, $4 + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $0
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $0
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $7
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $7
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $0
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $0
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $7
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $7
- EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $c, $6 ; ROUTE_16_GATE_2F
+INCLUDE "data/mapObjects/route16gate.asm"
Route16GateBlocks: ; 497e3 (12:57e3)
INCBIN "maps/route16gate.blk"
-Route16GateUpstairs_h: ; 0x497ff to 0x4980b (12 bytes) (id=187)
- db GATE ; tileset
- db ROUTE_16_GATE_2F_HEIGHT, ROUTE_16_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route16GateUpstairsBlocks, Route16GateUpstairsTextPointers, Route16GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route16GateUpstairsObject ; objects
-
-Route16GateUpstairsScript: ; 4980b (12:580b)
- jp DisableAutoTextBoxDrawing
-
-Route16GateUpstairsTextPointers: ; 4980e (12:580e)
- dw Route16GateUpstairsText1
- dw Route16GateUpstairsText2
- dw Route16GateUpstairsText3
- dw Route16GateUpstairsText4
-
-Route16GateUpstairsText1: ; 49816 (12:5816)
- db $08 ; asm
- ld hl, UnnamedText_49820
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_49820: ; 49820 (12:5820)
- TX_FAR _UnnamedText_49820
- db "@"
-
-Route16GateUpstairsText2: ; 49825 (12:5825)
- db $08 ; asm
- ld hl, UnnamedText_4982f
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_4982f: ; 4982f (12:582f)
- TX_FAR _UnnamedText_4982f
- db "@"
-
-Route16GateUpstairsText3: ; 49834 (12:5834)
- db $8
- ld hl, UnnamedText_4983b
- jp Func_55c9
-
-UnnamedText_4983b: ; 4983b (12:583b)
- TX_FAR _UnnamedText_4983b
- db "@"
-
-Route16GateUpstairsText4: ; 49840 (12:5840)
- db $8
- ld hl, UnnamedText_49847 ; $5847
- jp Func_55c9
-
-UnnamedText_49847: ; 49847 (12:5847)
- TX_FAR _UnnamedText_49847
- db "@"
-
-Route16GateUpstairsObject: ; 0x4984c (size=30)
- db $a ; border tile
-
- db $1 ; warps
- db $7, $7, $8, ROUTE_16_GATE_1F
-
- db $2 ; signs
- db $2, $1, $3 ; Route16GateUpstairsText3
- db $2, $6, $4 ; Route16GateUpstairsText4
-
- db $2 ; people
- db SPRITE_YOUNG_BOY, $2 + 4, $4 + 4, $ff, $ff, $1 ; person
- db SPRITE_LITTLE_GIRL, $5 + 4, $2 + 4, $fe, $2, $2 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_16_GATE_2F_WIDTH, $7, $7 ; ROUTE_16_GATE_1F
-
-Route18Gate_h: ; 0x4986a to 0x49876 (12 bytes) (id=190)
- db GATE ; tileset
- db ROUTE_18_GATE_1F_HEIGHT, ROUTE_18_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route18GateBlocks, Route18GateTextPointers, Route18GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route18GateObject ; objects
-
-Route18GateScript: ; 49876 (12:5876)
- ld hl, $d732
- res 5, [hl]
- call EnableAutoTextBoxDrawing
- ld a, [W_ROUTE18GATECURSCRIPT]
- ld hl, Route18GateScriptPointers
- jp CallFunctionInTable
-
-Route18GateScriptPointers: ; 49887 (12:5887)
- dw Route18GateScript0
- dw Route18GateScript1
- dw Route18GateScript2
- dw Route18GateScript3
-
-Route18GateScript0: ; 4988f (12:588f)
- call Func_49755
- ret nz
- ld hl, CoordsData_498cc
- call ArePlayerCoordsInArray
- ret nc
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, [$cd3d]
- cp $1
- jr z, .asm_498c6 ; 0x498a9 $1b
- ld a, [$cd3d]
- dec a
- ld [$cd38], a
- ld b, $0
- ld c, a
- ld a, $40
- ld hl, $ccd3
- call FillMemory
- call Func_3486
- ld a, $1
- ld [W_ROUTE18GATECURSCRIPT], a
- ret
-.asm_498c6
- ld a, $2
- ld [W_ROUTE18GATECURSCRIPT], a
- ret
-
-CoordsData_498cc: ; 498cc (12:58cc)
- db $03,$04
- db $04,$04
- db $05,$04
- db $06,$04
- db $FF
+INCLUDE "data/mapHeaders/route16gateupstairs.asm"
-Route18GateScript1: ; 498d5 (12:58d5)
- ld a, [$cd38]
- and a
- ret nz
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
+INCLUDE "scripts/route16gateupstairs.asm"
-Route18GateScript2: ; 498df (12:58df)
- ld a, $1
- ld [H_SPRITEHEIGHT], a
- call DisplayTextID
- ld a, $1
- ld [$cd38], a
- ld a, $10
- ld [$ccd3], a
- call Func_3486
- ld a, $3
- ld [W_ROUTE18GATECURSCRIPT], a
- ret
-
-Route18GateScript3: ; 498f9 (12:58f9)
- ld a, [$cd38]
- and a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d730
- res 7, [hl]
- ld a, $0
- ld [W_ROUTE18GATECURSCRIPT], a
- ret
-
-Route18GateTextPointers: ; 4990d (12:590d)
- dw Route18GateText1
- dw Route18GateText2
+INCLUDE "data/mapObjects/route16gateupstairs.asm"
-Route18GateText1: ; 49911 (12:5911)
- db $08 ; asm
- call Func_49755
- jr z, .asm_3c84d ; 0x49915
- ld hl, UnnamedText_4992d
- call PrintText
- jr .asm_a8410 ; 0x4991d
-.asm_3c84d ; 0x4991f
- ld hl, UnnamedText_49928
- call PrintText
-.asm_a8410 ; 0x49925
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/route18gate.asm"
-UnnamedText_49928: ; 49928 (12:5928)
- TX_FAR _UnnamedText_49928
- db "@"
-
-UnnamedText_4992d: ; 4992d (12:592d)
- TX_FAR _UnnamedText_4992d
- db "@"
+INCLUDE "scripts/route18gate.asm"
-Route18GateText2: ; 49932 (12:5932)
- TX_FAR _UnnamedText_49932
- db "@"
+INCLUDE "data/mapObjects/route18gate.asm"
-Route18GateObject: ; 0x49937 (size=50)
- db $a ; border tile
+INCLUDE "data/mapHeaders/route18gateupstairs.asm"
- db $5 ; warps
- db $4, $0, $0, $ff
- db $5, $0, $1, $ff
- db $4, $7, $2, $ff
- db $5, $7, $3, $ff
- db $8, $6, $0, ROUTE_18_GATE_2F
+INCLUDE "scripts/route18gateupstairs.asm"
- db $0 ; signs
+INCLUDE "data/mapObjects/route18gateupstairs.asm"
- db $1 ; people
- db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $d0, $1 ; person
+INCLUDE "data/mapHeaders/mtmoon1.asm"
- ; warp-to
- EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $0
- EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $0
- EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $7
- EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $7
- EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $8, $6 ; ROUTE_18_GATE_2F
+INCLUDE "scripts/mtmoon1.asm"
-Route18GateUpstairs_h: ; 0x49969 to 0x49975 (12 bytes) (id=191)
- db GATE ; tileset
- db ROUTE_18_GATE_2F_HEIGHT, ROUTE_18_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route18GateUpstairsBlocks, Route18GateUpstairsTextPointers, Route18GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route18GateUpstairsObject ; objects
-
-Route18GateUpstairsScript: ; 49975 (12:5975)
- jp DisableAutoTextBoxDrawing
-
-Route18GateUpstairsTextPointers: ; 49978 (12:5978)
- dw Route18GateUpstairsText1
- dw Route18GateUpstairsText2
- dw Route18GateUpstairsText3
-
-Route18GateUpstairsText1: ; 4997e (12:597e)
- db $08 ; asm
- ld a, $5
- ld [wWhichTrade], a
- ld a, $54
- call Predef
- jp TextScriptEnd
-
-Route18GateUpstairsText2: ; 4998c (12:598c)
- db $8
- ld hl, UnnamedText_49993 ; $5993
- jp Func_55c9
-
-UnnamedText_49993: ; 49993 (12:5993)
- TX_FAR _UnnamedText_49993
- db "@"
-
-Route18GateUpstairsText3: ; 49998 (12:5998)
- db $8
- ld hl, UnnamedText_4999f ; $599f
- jp Func_55c9
-
-UnnamedText_4999f: ; 4999f (12:599f)
- TX_FAR _UnnamedText_4999f
- db "@"
-
-Route18GateUpstairsObject: ; 0x499a4 (size=24)
- db $a ; border tile
-
- db $1 ; warps
- db $7, $7, $4, ROUTE_18_GATE_1F
-
- db $2 ; signs
- db $2, $1, $2 ; Route18GateUpstairsText2
- db $2, $6, $3 ; Route18GateUpstairsText3
-
- db $1 ; people
- db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_18_GATE_2F_WIDTH, $7, $7 ; ROUTE_18_GATE_1F
-
-MtMoon1_h: ; 0x499bc to 0x499c8 (12 bytes) (id=59)
- db CAVERN ; tileset
- db MT_MOON_1_HEIGHT, MT_MOON_1_WIDTH ; dimensions (y, x)
- dw MtMoon1Blocks, MtMoon1TextPointers, MtMoon1Script ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoon1Object ; objects
-
-MtMoon1Script: ; 499c8 (12:59c8)
- call EnableAutoTextBoxDrawing
- ld hl, MtMoon1TrainerHeader0
- ld de, MtMoon1ScriptPointers
- ld a, [W_MTMOON1CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_MTMOON1CURSCRIPT], a
- ret
-
-MtMoon1ScriptPointers: ; 499db (12:59db)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-MtMoon1TextPointers: ; 499e1 (12:59e1)
- dw MtMoon1Text1
- dw MtMoon1Text2
- dw MtMoon1Text3
- dw MtMoon1Text4
- dw MtMoon1Text5
- dw MtMoon1Text6
- dw MtMoon1Text7
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw MtMoon1Text14
-
-MtMoon1TrainerHeaders: ; 499fd (12:59fd)
-MtMoon1TrainerHeader0: ; 499fd (12:59fd)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText2 ; 0x5a98 TextBeforeBattle
- dw MtMoon1AfterBattleText2 ; 0x5aa2 TextAfterBattle
- dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle
- dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle
-
-MtMoon1TrainerHeader2: ; 49a09 (12:5a09)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText3 ; 0x5aa7 TextBeforeBattle
- dw MtMoon1AfterBattleText3 ; 0x5ab1 TextAfterBattle
- dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle
- dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle
-
-MtMoon1TrainerHeader3: ; 49a15 (12:5a15)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText4 ; 0x5ab6 TextBeforeBattle
- dw MtMoon1AfterBattleText4 ; 0x5ac0 TextAfterBattle
- dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle
- dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle
-
-MtMoon1TrainerHeader4: ; 49a21 (12:5a21)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText5 ; 0x5ac5 TextBeforeBattle
- dw MtMoon1AfterBattleText5 ; 0x5acf TextAfterBattle
- dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle
- dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle
-
-MtMoon1TrainerHeader5: ; 49a2d (12:5a2d)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText6 ; 0x5ad4 TextBeforeBattle
- dw MtMoon1AfterBattleText6 ; 0x5ade TextAfterBattle
- dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle
- dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle
-
-MtMoon1TrainerHeader6: ; 49a39 (12:5a39)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText7 ; 0x5ae3 TextBeforeBattle
- dw MtMoon1AfterBattleText7 ; 0x5aed TextAfterBattle
- dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle
- dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle
-
-MtMoon1TrainerHeader7: ; 49a45 (12:5a45)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f5 ; flag's byte
- dw MtMoon1BattleText8 ; 0x5af2 TextBeforeBattle
- dw MtMoon1AfterBattleText8 ; 0x5afc TextAfterBattle
- dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle
- dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle
-
- db $ff
-
-MtMoon1Text1: ; 49a52 (12:5a52)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1Text2: ; 49a5c (12:5a5c)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1Text3: ; 49a66 (12:5a66)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1Text4: ; 49a70 (12:5a70)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1Text5: ; 49a7a (12:5a7a)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1Text6: ; 49a84 (12:5a84)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1Text7: ; 49a8e (12:5a8e)
- db $08 ; asm
- ld hl, MtMoon1TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1BattleText2: ; 49a98 (12:5a98)
- TX_FAR _MtMoon1BattleText2
- db "@"
-
-MtMoon1EndBattleText2: ; 49a9d (12:5a9d)
- TX_FAR _MtMoon1EndBattleText2
- db "@"
-
-MtMoon1AfterBattleText2: ; 49aa2 (12:5aa2)
- TX_FAR _MtMoon1AfterBattleText2
- db "@"
-
-MtMoon1BattleText3: ; 49aa7 (12:5aa7)
- TX_FAR _MtMoon1BattleText3
- db "@"
-
-MtMoon1EndBattleText3: ; 49aac (12:5aac)
- TX_FAR _MtMoon1EndBattleText3
- db "@"
-
-MtMoon1AfterBattleText3: ; 49ab1 (12:5ab1)
- TX_FAR _MtMoon1AfterBattleText3
- db "@"
-
-MtMoon1BattleText4: ; 49ab6 (12:5ab6)
- TX_FAR _MtMoon1BattleText4
- db "@"
-
-MtMoon1EndBattleText4: ; 49abb (12:5abb)
- TX_FAR _MtMoon1EndBattleText4
- db "@"
-
-MtMoon1AfterBattleText4: ; 49ac0 (12:5ac0)
- TX_FAR _MtMoon1AfterBattleText4
- db "@"
-
-MtMoon1BattleText5: ; 49ac5 (12:5ac5)
- TX_FAR _MtMoon1BattleText5
- db "@"
-
-MtMoon1EndBattleText5: ; 49aca (12:5aca)
- TX_FAR _MtMoon1EndBattleText5
- db "@"
-
-MtMoon1AfterBattleText5: ; 49acf (12:5acf)
- TX_FAR _MtMoon1AfterBattleText5
- db "@"
-
-MtMoon1BattleText6: ; 49ad4 (12:5ad4)
- TX_FAR _MtMoon1BattleText6
- db "@"
-
-MtMoon1EndBattleText6: ; 49ad9 (12:5ad9)
- TX_FAR _MtMoon1EndBattleText6
- db "@"
-
-MtMoon1AfterBattleText6: ; 49ade (12:5ade)
- TX_FAR _MtMoon1AfterBattleText6
- db "@"
-
-MtMoon1BattleText7: ; 49ae3 (12:5ae3)
- TX_FAR _MtMoon1BattleText7
- db "@"
-
-MtMoon1EndBattleText7: ; 49ae8 (12:5ae8)
- TX_FAR _MtMoon1EndBattleText7
- db "@"
-
-MtMoon1AfterBattleText7: ; 49aed (12:5aed)
- TX_FAR _MtMoon1AfterBattleText7
- db "@"
-
-MtMoon1BattleText8: ; 49af2 (12:5af2)
- TX_FAR _MtMoon1BattleText8
- db "@"
-
-MtMoon1EndBattleText8: ; 49af7 (12:5af7)
- TX_FAR _MtMoon1EndBattleText8
- db "@"
-
-MtMoon1AfterBattleText8: ; 49afc (12:5afc)
- TX_FAR _MtMoon1AfterBattleText8
- db "@"
-
-MtMoon1Text14: ; 49b01 (12:5b01)
- TX_FAR _MtMoon1Text14
- db "@"
-
-MtMoon1Object: ; 0x49b06 (size=145)
- db $3 ; border tile
-
- db $5 ; warps
- db $23, $e, $1, $ff
- db $23, $f, $1, $ff
- db $5, $5, $0, MT_MOON_2
- db $b, $11, $2, MT_MOON_2
- db $f, $19, $3, MT_MOON_2
-
- db $1 ; signs
- db $17, $f, $e ; MtMoon1Text14
-
- db $d ; people
- db SPRITE_HIKER, $6 + 4, $5 + 4, $ff, $d0, $41, HIKER + $C8, $1 ; trainer
- db SPRITE_BUG_CATCHER, $10 + 4, $c + 4, $ff, $d3, $42, YOUNGSTER + $C8, $3 ; trainer
- db SPRITE_LASS, $4 + 4, $1e + 4, $ff, $d0, $43, LASS + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $1f + 4, $18 + 4, $ff, $d1, $44, SUPER_NERD + $C8, $1 ; trainer
- db SPRITE_LASS, $17 + 4, $10 + 4, $ff, $d0, $45, LASS + $C8, $6 ; trainer
- db SPRITE_BUG_CATCHER, $16 + 4, $7 + 4, $ff, $d0, $46, BUG_CATCHER + $C8, $7 ; trainer
- db SPRITE_BUG_CATCHER, $1b + 4, $1e + 4, $ff, $d3, $47, BUG_CATCHER + $C8, $8 ; trainer
- db SPRITE_BALL, $14 + 4, $2 + 4, $ff, $ff, $88, POTION ; item
- db SPRITE_BALL, $2 + 4, $2 + 4, $ff, $ff, $89, MOON_STONE ; item
- db SPRITE_BALL, $1f + 4, $23 + 4, $ff, $ff, $8a, RARE_CANDY ; item
- db SPRITE_BALL, $17 + 4, $24 + 4, $ff, $ff, $8b, ESCAPE_ROPE ; item
- db SPRITE_BALL, $21 + 4, $14 + 4, $ff, $ff, $8c, POTION ; item
- db SPRITE_BALL, $20 + 4, $5 + 4, $ff, $ff, $8d, TM_12 ; item
-
- ; warp-to
- EVENT_DISP MT_MOON_1_WIDTH, $23, $e
- EVENT_DISP MT_MOON_1_WIDTH, $23, $f
- EVENT_DISP MT_MOON_1_WIDTH, $5, $5 ; MT_MOON_2
- EVENT_DISP MT_MOON_1_WIDTH, $b, $11 ; MT_MOON_2
- EVENT_DISP MT_MOON_1_WIDTH, $f, $19 ; MT_MOON_2
+INCLUDE "data/mapObjects/mtmoon1.asm"
MtMoon1Blocks: ; 49b97 (12:5b97)
INCBIN "maps/mtmoon1.blk"
-MtMoon3_h: ; 0x49cff to 0x49d0b (12 bytes) (id=61)
- db CAVERN ; tileset
- db MT_MOON_3_HEIGHT, MT_MOON_3_WIDTH ; dimensions (y, x)
- dw MtMoon3Blocks, MtMoon3TextPointers, MtMoon3Script ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoon3Object ; objects
-
-MtMoon3Script: ; 49d0b (12:5d0b)
- call EnableAutoTextBoxDrawing
- ld hl, MtMoon3TrainerHeader0 ; $5e48
- ld de, MtMoon3ScriptPointers
- ld a, [W_MTMOON3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_MTMOON3CURSCRIPT], a
- ld a, [$d7f6]
- bit 1, a
- ret z
- ld hl, CoordsData_49d37
- call ArePlayerCoordsInArray
- jr nc, .asm_49d31 ; 0x49d29 $6
- ld hl, $d72e
- set 4, [hl]
- ret
-.asm_49d31
- ld hl, $d72e
- res 4, [hl]
- ret
-
-CoordsData_49d37: ; 49d37 (12:5d37)
- db $05,$0B
- db $05,$0C
- db $05,$0D
- db $05,$0E
- db $06,$0B
- db $06,$0C
- db $06,$0D
- db $06,$0E
- db $07,$0B
- db $07,$0C
- db $07,$0D
- db $07,$0E
- db $08,$0B
- db $08,$0C
- db $08,$0D
- db $08,$0E
- db $FF
-
-Func_49d58: ; 49d58 (12:5d58)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-MtMoon3ScriptPointers: ; 49d63 (12:5d63)
- dw MtMoon3Script0
- dw Func_324c
- dw EndTrainerBattle
- dw MtMoon3Script3
- dw MtMoon3Script4
- dw MtMoon3Script5
-
-MtMoon3Script0: ; 49d6f (12:5d6f)
- ld a, [$d7f6]
- bit 1, a
- jp nz, Func_49d91
- ld a, [W_YCOORD] ; $d361
- cp $8
- jp nz, Func_49d91
- ld a, [W_XCOORD] ; $d362
- cp $d
- jp nz, Func_49d91
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-
-Func_49d91: ; 49d91 (12:5d91)
- ld a, [$d7f6]
- and $c0
- jp z, CheckFightingMapTrainers
- ret
-
-MtMoon3Script3: ; 49d9a (12:5d9a)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_49d58
- call UpdateSprites
- call Delay3
- ld hl, $d7f6
- set 1, [hl]
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-MtMoon3Script4: ; 49dba (12:5dba)
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call SetSpriteMovementBytesToFF
- ld hl, CoordsData_49dea
- call ArePlayerCoordsInArray
- jr c, .asm_49dd7
- ld hl, CoordsData_49df1
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- ld de, MovementData_49df9
- jr .asm_49dda
-.asm_49dd7
- ld de, MovementData_49df8
-.asm_49dda
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call MoveSprite
- ld a, $5
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CoordsData_49dea: ; 49dea (12:5dea)
- db $07,$0C
- db $06,$0B
- db $05,$0C
- db $FF
-
-CoordsData_49df1: ; 49df1 (12:5df1)
- db $07,$0D
- db $06,$0E
- db $05,$0E
- db $FF
-
-MovementData_49df8: ; 49df8 (12:5df8)
- db $C0
-
-MovementData_49df9: ; 49df9 (12:5df9)
- db $40,$FF
-
-MtMoon3Script5: ; 49dfb (12:5dfb)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [$cc3c], a
- ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, [$d7f6]
- bit 6, a
- jr z, .asm_49e1d
- ld a, $6e
- jr .asm_49e1f
-.asm_49e1d
- ld a, $6d
-.asm_49e1f
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-MtMoon3TextPointers: ; 49e34 (12:5e34)
- dw MtMoon3Text1
- dw MtMoon3Text2
- dw MtMoon3Text3
- dw MtMoon3Text4
- dw MtMoon3Text5
- dw MtMoon3Text6
- dw MtMoon3Text7
- dw Predef5CText
- dw Predef5CText
- dw UnnamedText_49f99
-
-MtMoon3TrainerHeaders: ; 49e48 (12:5e48)
-MtMoon3TrainerHeader0: ; 49e48 (12:5e48)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f6 ; flag's byte
- dw MtMoon3BattleText2 ; 0x5f9f TextBeforeBattle
- dw MtMoon3AfterBattleText2 ; 0x5fa9 TextAfterBattle
- dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
- dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
-
-MtMoon3TrainerHeader2: ; 49e54 (12:5e54)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f6 ; flag's byte
- dw MtMoon3BattleText3 ; 0x5fae TextBeforeBattle
- dw MtMoon3AfterBattleText3 ; 0x5fb8 TextAfterBattle
- dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
- dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
-
-MtMoon3TrainerHeader3: ; 49e60 (12:5e60)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f6 ; flag's byte
- dw MtMoon3BattleText4 ; 0x5fbd TextBeforeBattle
- dw MtMoon3AfterBattleText4 ; 0x5fc7 TextAfterBattle
- dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
- dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
-
-MtMoon3TrainerHeader4: ; 49e6c (12:5e6c)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f6 ; flag's byte
- dw MtMoon3BattleText5 ; 0x5fcc TextBeforeBattle
- dw MtMoon3AfterBattleText5 ; 0x5fd6 TextAfterBattle
- dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
- dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
-
- db $ff
-
-MtMoon3Text1: ; 49e79 (12:5e79)
- db $08 ; asm
- ld a, [$d7f6]
- bit 1, a
- jr z, .asm_be1e0 ; 0x49e7f
- and $c0
- jr nz, .asm_f8cd4 ; 0x49e83
- ld hl, UnnamedText_49f8f
- call PrintText
- jr .asm_f1fba ; 0x49e8b
-.asm_be1e0 ; 0x49e8d
- ld hl, UnnamedText_49f85
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_49f8a
- ld de, UnnamedText_49f8a
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jr .asm_f1fba ; 0x49eb6
-.asm_f8cd4 ; 0x49eb8
- ld hl, UnnamedText_49f94
- call PrintText
-.asm_f1fba ; 0x49ebe
- jp TextScriptEnd
-
-MtMoon3Text2: ; 49ec1 (12:5ec1)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon3Text3: ; 49ecb (12:5ecb)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon3Text4: ; 49ed5 (12:5ed5)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon3Text5: ; 49edf (12:5edf)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader4 ; $5e6c
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon3Text6: ; 49ee9 (12:5ee9)
- db $08 ; asm
- ld a, $1
- ld [$cc3c], a
- ld hl, UnnamedText_49f24
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_1fa5e ; 0x49efc
- ld bc,(DOME_FOSSIL << 8) | 1
- call GiveItem
- jp nc, Func_49f76
- call Func_49f69
- ld a, $6d
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, $d7f6
- set 6, [hl]
- ld a, $4
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_1fa5e ; 0x49f21
- jp TextScriptEnd
-
-UnnamedText_49f24: ; 49f24 (12:5f24)
- TX_FAR _UnnamedText_49f24
- db "@"
-
-MtMoon3Text7: ; 49f29 (12:5f29)
- db $08 ; asm
- ld a, $1
- ld [$cc3c], a
- ld hl, UnnamedText_49f64
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_8e988 ; 0x49f3c
- ld bc, (HELIX_FOSSIL << 8) | 1
- call GiveItem
- jp nc, Func_49f76
- call Func_49f69
- ld a, $6e
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, $d7f6
- set 7, [hl]
- ld a, $4
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_8e988 ; 0x49f61
- jp TextScriptEnd
-
-UnnamedText_49f64: ; 49f64 (12:5f64)
- TX_FAR _UnnamedText_49f64
- db "@"
-
-Func_49f69: ; 49f69 (12:5f69)
- ld hl, UnnamedText_49f6f
- jp PrintText
-
-UnnamedText_49f6f: ; 49f6f (12:5f6f)
- TX_FAR _UnnamedText_49f6f ; 0x80995
- db $11, $d, "@"
-
-Func_49f76: ; 49f76 (12:5f76)
- ld hl, UnnamedText_49f7f
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_49f7f: ; 49f7f (12:5f7f)
- TX_FAR _UnnamedText_49f7f ; 0x809a8
- db $d, "@"
-
-UnnamedText_49f85: ; 49f85 (12:5f85)
- TX_FAR _UnnamedText_49f85
- db "@"
-
-UnnamedText_49f8a: ; 49f8a (12:5f8a)
- TX_FAR _UnnamedText_49f8a
- db "@"
-
-UnnamedText_49f8f: ; 49f8f (12:5f8f)
- TX_FAR _UnnamedText_49f8f
- db "@"
-
-UnnamedText_49f94: ; 49f94 (12:5f94)
- TX_FAR _UnnamedText_49f94
- db "@"
-
-UnnamedText_49f99: ; 49f99 (12:5f99)
- TX_FAR _UnnamedText_49f99
- db $11, "@"
-
-MtMoon3BattleText2: ; 49f9f (12:5f9f)
- TX_FAR _MtMoon3BattleText2
- db "@"
-
-MtMoon3EndBattleText2: ; 49fa4 (12:5fa4)
- TX_FAR _MtMoon3EndBattleText2
- db "@"
-
-MtMoon3AfterBattleText2: ; 49fa9 (12:5fa9)
- TX_FAR _MtMoon3AfterBattleText2
- db "@"
+INCLUDE "data/mapHeaders/mtmoon3.asm"
-MtMoon3BattleText3: ; 49fae (12:5fae)
- TX_FAR _MtMoon3BattleText3
- db "@"
+INCLUDE "scripts/mtmoon3.asm"
-MtMoon3EndBattleText3: ; 49fb3 (12:5fb3)
- TX_FAR _MtMoon3EndBattleText3
- db "@"
-
-MtMoon3AfterBattleText3: ; 49fb8 (12:5fb8)
- TX_FAR _MtMoon3AfterBattleText3
- db "@"
-
-MtMoon3BattleText4: ; 49fbd (12:5fbd)
- TX_FAR _MtMoon3BattleText4
- db "@"
-
-MtMoon3EndBattleText4: ; 49fc2 (12:5fc2)
- TX_FAR _MtMoon3EndBattleText4
- db "@"
-
-MtMoon3AfterBattleText4: ; 49fc7 (12:5fc7)
- TX_FAR _MtMoon3AfterBattleText4
- db "@"
-
-MtMoon3BattleText5: ; 49fcc (12:5fcc)
- TX_FAR _MtMoon3BattleText5
- db "@"
-
-MtMoon3EndBattleText5: ; 49fd1 (12:5fd1)
- TX_FAR _MtMoon3EndBattleText5
- db "@"
-
-MtMoon3AfterBattleText5: ; 49fd6 (12:5fd6)
- TX_FAR _MtMoon3AfterBattleText5
- db "@"
-
-MtMoon3Object: ; 0x49fdb (size=102)
- db $3 ; border tile
-
- db $4 ; warps
- db $9, $19, $1, MT_MOON_2
- db $11, $15, $4, MT_MOON_2
- db $1b, $f, $5, MT_MOON_2
- db $7, $5, $6, MT_MOON_2
-
- db $0 ; signs
-
- db $9 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $c + 4, $ff, $d3, $41, SUPER_NERD + $C8, $2 ; trainer
- db SPRITE_ROCKET, $10 + 4, $b + 4, $ff, $d0, $42, ROCKET + $C8, $1 ; trainer
- db SPRITE_ROCKET, $16 + 4, $f + 4, $ff, $d0, $43, ROCKET + $C8, $2 ; trainer
- db SPRITE_ROCKET, $b + 4, $1d + 4, $ff, $d1, $44, ROCKET + $C8, $3 ; trainer
- db SPRITE_ROCKET, $11 + 4, $1d + 4, $ff, $d2, $45, ROCKET + $C8, $4 ; trainer
- db SPRITE_OMANYTE, $6 + 4, $c + 4, $ff, $ff, $6 ; person
- db SPRITE_OMANYTE, $6 + 4, $d + 4, $ff, $ff, $7 ; person
- db SPRITE_BALL, $15 + 4, $19 + 4, $ff, $ff, $88, HP_UP ; item
- db SPRITE_BALL, $5 + 4, $1d + 4, $ff, $ff, $89, TM_01 ; item
-
- ; warp-to
- EVENT_DISP MT_MOON_3_WIDTH, $9, $19 ; MT_MOON_2
- EVENT_DISP MT_MOON_3_WIDTH, $11, $15 ; MT_MOON_2
- EVENT_DISP MT_MOON_3_WIDTH, $1b, $f ; MT_MOON_2
- EVENT_DISP MT_MOON_3_WIDTH, $7, $5 ; MT_MOON_2
+INCLUDE "data/mapObjects/mtmoon3.asm"
MtMoon3Blocks: ; 4a041 (12:6041)
INCBIN "maps/mtmoon3.blk"
-SafariZoneWest_h: ; 0x4a1a9 to 0x4a1b5 (12 bytes) (id=219)
- db FOREST ; tileset
- db SAFARI_ZONE_WEST_HEIGHT, SAFARI_ZONE_WEST_WIDTH ; dimensions (y, x)
- dw SafariZoneWestBlocks, SafariZoneWestTextPointers, SafariZoneWestScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneWestObject ; objects
-
-SafariZoneWestScript: ; 4a1b5 (12:61b5)
- jp EnableAutoTextBoxDrawing
-
-SafariZoneWestTextPointers: ; 4a1b8 (12:61b8)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw SafariZoneWestText5
- dw SafariZoneWestText6
- dw SafariZoneWestText7
- dw SafariZoneWestText8
-
-SafariZoneWestText5: ; 4a1c8 (12:61c8)
- TX_FAR _SafariZoneWestText5
- db "@"
-
-SafariZoneWestText6: ; 4a1cd (12:61cd)
- TX_FAR _SafariZoneWestText6
- db "@"
-
-SafariZoneWestText7: ; 4a1d2 (12:61d2)
- TX_FAR _SafariZoneWestText7
- db "@"
+INCLUDE "data/mapHeaders/safarizonewest.asm"
-SafariZoneWestText8: ; 4a1d7 (12:61d7)
- TX_FAR _SafariZoneWestText8
- db "@"
+INCLUDE "scripts/safarizonewest.asm"
-SafariZoneWestObject: ; 0x4a1dc (size=108)
- db $0 ; border tile
-
- db $8 ; warps
- db $0, $14, $0, SAFARI_ZONE_NORTH
- db $0, $15, $1, SAFARI_ZONE_NORTH
- db $0, $1a, $2, SAFARI_ZONE_NORTH
- db $0, $1b, $3, SAFARI_ZONE_NORTH
- db $16, $1d, $2, SAFARI_ZONE_CENTER
- db $17, $1d, $3, SAFARI_ZONE_CENTER
- db $3, $3, $0, SAFARI_ZONE_SECRET_HOUSE
- db $b, $b, $0, SAFARI_ZONE_REST_HOUSE_2
-
- db $4 ; signs
- db $c, $c, $5 ; SafariZoneWestText5
- db $3, $11, $6 ; SafariZoneWestText6
- db $4, $1a, $7 ; SafariZoneWestText7
- db $16, $18, $8 ; SafariZoneWestText8
-
- db $4 ; people
- db SPRITE_BALL, $14 + 4, $8 + 4, $ff, $ff, $81, MAX_POTION ; item
- db SPRITE_BALL, $7 + 4, $9 + 4, $ff, $ff, $82, TM_32 ; item
- db SPRITE_BALL, $12 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item
- db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $84, GOLD_TEETH ; item
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $14 ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $15 ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1a ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1b ; SAFARI_ZONE_NORTH
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $16, $1d ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $17, $1d ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $3, $3 ; SAFARI_ZONE_SECRET_HOUSE
- EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $b, $b ; SAFARI_ZONE_REST_HOUSE_2
+INCLUDE "data/mapObjects/safarizonewest.asm"
SafariZoneWestBlocks: ; 4a248 (12:6248)
INCBIN "maps/safarizonewest.blk"
-SafariZoneSecretHouse_h: ; 0x4a30b to 0x4a317 (12 bytes) (id=222)
- db LAB ; tileset
- db SAFARI_ZONE_SECRET_HOUSE_HEIGHT, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; dimensions (y, x)
- dw SafariZoneSecretHouseBlocks, SafariZoneSecretHouseTextPointers, SafariZoneSecretHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneSecretHouseObject ; objects
+INCLUDE "data/mapHeaders/safarizonesecrethouse.asm"
-SafariZoneSecretHouseScript: ; 4a317 (12:6317)
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/safarizonesecrethouse.asm"
-SafariZoneSecretHouseTextPointers: ; 4a31a (12:631a)
- dw SafariZoneSecretHouseText1
-
-SafariZoneSecretHouseText1: ; 4a31c (12:631c)
- db $08 ; asm
- ld a, [$d857]
- bit 0, a
- jr nz, .asm_20a9b ; 0x4a322
- ld hl, UnnamedText_4a350
- call PrintText
- ld bc, (HM_03 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedHM03Text
- call PrintText
- ld hl, $d857
- set 0, [hl]
- jr .asm_8f1fc ; 0x4a33d
-.BagFull
- ld hl, HM03NoRoomText
- call PrintText
- jr .asm_8f1fc ; 0x4a345
-.asm_20a9b ; 0x4a347
- ld hl, HM03ExplanationText
- call PrintText
-.asm_8f1fc ; 0x4a34d
- jp TextScriptEnd
-
-UnnamedText_4a350: ; 4a350 (12:6350)
- TX_FAR _UnnamedText_4a350
- db "@"
-
-ReceivedHM03Text: ; 4a355 (12:6355)
- TX_FAR _ReceivedHM03Text ; 0x85943
- db $0B, "@"
-
-HM03ExplanationText: ; 4a35b (12:635b)
- TX_FAR _HM03ExplanationText
- db "@"
-
-HM03NoRoomText: ; 4a360 (12:6360)
- TX_FAR _HM03NoRoomText
- db "@"
-
-SafariZoneSecretHouseObject: ; 0x4a365 (size=26)
- db $17 ; border tile
-
- db $2 ; warps
- db $7, $2, $6, SAFARI_ZONE_WEST
- db $7, $3, $6, SAFARI_ZONE_WEST
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $d0, $1 ; person
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $2 ; SAFARI_ZONE_WEST
- EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $3 ; SAFARI_ZONE_WEST
+INCLUDE "data/mapObjects/safarizonesecrethouse.asm"
SafariZoneSecretHouseBlocks: ; 4a37f (12:637f)
INCBIN "maps/safarizonesecrethouse.blk"
@@ -77317,96 +45191,25 @@ AgathaPic: ; 4fa71 (13:7a71)
LancePic: ; 4fba2 (13:7ba2)
INCBIN "pic/trainer/lance.pic"
-BattleCenterM_h: ; 0x4fd04 to 0x4fd10 (12 bytes) (id=239)
- db CLUB ; tileset
- db BATTLE_CENTER_HEIGHT, BATTLE_CENTER_WIDTH ; dimensions (y, x)
- dw BattleCenterMBlocks, BattleCenterMTextPointers, BattleCenterMScript ; blocks, texts, scripts
- db $00 ; connections
- dw BattleCenterMObject ; objects
+INCLUDE "data/mapHeaders/battlecenterm.asm"
-BattleCenterMScript: ; 4fd10 (13:7d10)
- call EnableAutoTextBoxDrawing
- ld a, [$ffaa]
- cp $2
- ld a, $8
- jr z, .asm_4fd1d ; 0x4fd19 $2
- ld a, $c
-.asm_4fd1d
- ld [$ff8d], a
- ld a, $1
- ld [$ff8c], a
- call Func_34ae
- ld hl, $d72d
- bit 0, [hl]
- set 0, [hl]
- ret nz
- ld hl, $c214
- ld a, $8
- ld [hli], a
- ld a, $a
- ld [hl], a
- ld a, $8
- ld [$c119], a
- ld a, [$ffaa]
- cp $2
- ret z
- ld a, $7
- ld [$c215], a
- ld a, $c
- ld [$c119], a
- ret
+INCLUDE "scripts/battlecenterm.asm"
-BattleCenterMTextPointers: ; 4fd4c (13:7d4c)
- dw BattleCenterMText1
-
-BattleCenterMText1: ; 4fd4e (13:7d4e)
- TX_FAR _BattleCenterMText1
- db "@"
-
-BattleCenterMObject: ; 0x4fd53 (size=10)
- db $e ; border tile
-
- db $0 ; warps
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person
+INCLUDE "data/mapObjects/battlecenterm.asm"
BattleCenterMBlocks: ; 4fd5d (13:7d5d)
INCBIN "maps/battlecenterm.blk"
-TradeCenterM_h: ; 0x4fd71 to 0x4fd7d (12 bytes) (id=240)
- db CLUB ; tileset
- db TRADE_CENTER_HEIGHT, TRADE_CENTER_WIDTH ; dimensions (y, x)
- dw TradeCenterMBlocks, TradeCenterMTextPointers, TradeCenterMScript ; blocks, texts, scripts
- db $00 ; connections
- dw TradeCenterMObject ; objects
+INCLUDE "data/mapHeaders/tradecenterm.asm"
-TradeCenterMScript: ; 4fd7d (13:7d7d)
- jp BattleCenterMScript
-
-TradeCenterMTextPointers: ; 4fd80 (13:7d80)
- dw TradeCenterMText1
-
-TradeCenterMText1: ; 4fd82 (13:7d82)
- TX_FAR _TradeCenterMText1
- db "@"
+INCLUDE "scripts/tradecenterm.asm"
-TradeCenterMObject: ; 0x4fd87 (size=10)
- db $e ; border tile
-
- db $0 ; warps
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person
+INCLUDE "data/mapObjects/tradecenterm.asm"
TradeCenterMBlocks: ; 4fd91 (13:7d91)
INCBIN "maps/tradecenterm.blk"
-Func_4fda5: ; 4fda5 (13:7da5)
+_GivePokemon: ; 4fda5 (13:7da5)
call EnableAutoTextBoxDrawing
xor a
ld [$ccd3], a
@@ -77438,12 +45241,12 @@ Func_4fda5: ; 4fda5 (13:7da5)
.asm_4fdee
ld [hli], a
ld [hl], $50
- ld hl, UnnamedText_4fe3f ; $7e3f
+ ld hl, SetToBoxText
call PrintText
scf
ret
.asm_4fdf9
- ld hl, UnnamedText_4fe44 ; $7e44
+ ld hl, BoxIsFullText
call PrintText
and a
ret
@@ -77472,20 +45275,20 @@ Func_4fe11: ; 4fe11 (13:7e11)
pop af
ld [$d11e], a
call GetMonName
- ld hl, UnnamedText_4fe39 ; $7e39
+ ld hl, GotMonText
jp PrintText
-UnnamedText_4fe39: ; 4fe39 (13:7e39)
- TX_FAR _UnnamedText_4fe39
+GotMonText: ; 4fe39 (13:7e39)
+ TX_FAR _GotMonText
db $0b
db "@"
-UnnamedText_4fe3f: ; 4fe3f (13:7e3f)
- TX_FAR _UnnamedText_4fe3f
+SetToBoxText: ; 4fe3f (13:7e3f)
+ TX_FAR _SetToBoxText
db "@"
-UnnamedText_4fe44: ; 4fe44 (13:7e44)
- TX_FAR _UnnamedText_4fe44
+BoxIsFullText: ; 4fe44 (13:7e44)
+ TX_FAR _BoxIsFullText
db "@"
GetPredefPointer: ; 4fe49 (13:7e49)
@@ -77567,7 +45370,7 @@ MoveAnimationPredef: ; 4fe91 (13:7e91)
dbw BANK(Func_f71e),Func_f71e
dbw BANK(Func_f71e),Func_f71e
db BANK(InitializePlayerData)
- dw InitializePlayerData
+ dw InitializePlayerData
dbw BANK(HandleBitArray),HandleBitArray
db BANK(RemoveMissableObject)
dw RemoveMissableObject
@@ -77582,7 +45385,7 @@ MoveAnimationPredef: ; 4fe91 (13:7e91)
dw AddMissableObject
dbw BANK(Func_ee9e),Func_ee9e
db BANK(InitializePlayerData)
- dw InitializePlayerData
+ dw InitializePlayerData
dbw BANK(Func_c754),Func_c754
dbw BANK(Func_3af5b),Func_3af5b
dbw BANK(Func_6e43),Func_6e43
@@ -77624,7 +45427,8 @@ MoveAnimationPredef: ; 4fe91 (13:7e91)
dbw BANK(ShowPokedexData),ShowPokedexData
dbw BANK(WriteMonMoves),WriteMonMoves
dbw BANK(SaveSAV),SaveSAV
- dbw BANK(Func_7202b),Func_7202b
+ db BANK(LoadSGBBorderAndPalettes)
+ dw LoadSGBBorderAndPalettes
dbw BANK(Func_f113),Func_f113
dbw BANK(SetPartyMonTypes),SetPartyMonTypes
db BANK(TestMonMoveCompatibility)
@@ -77636,9 +45440,10 @@ MoveAnimationPredef: ; 4fe91 (13:7e91)
dw _AddPokemonToParty
dbw BANK(UpdateHPBar),UpdateHPBar
dbw BANK(Func_3cdec),Func_3cdec
- dbw BANK(Func_70f60),Func_70f60
+ dbw BANK(LoadTownMap_Nest),LoadTownMap_Nest
dbw BANK(Func_27d6b),Func_27d6b
- dbw BANK(Func_17c47),Func_17c47; 4C player exclamation
+ db BANK(PrintEmotionBubble)
+ dw PrintEmotionBubble; 4C player exclamation
dbw BANK(Func_5aaf),Func_5aaf; return immediately
db BANK(AskForMonNickname)
dw AskForMonNickname
@@ -77668,3508 +45473,119 @@ DrawHPBarPredef: ; 4ff96 (13:7f96)
SECTION "bank14",ROMX,BANK[$14]
-Route22_h: ; 0x50000 to 0x50022 (34 bytes) (id=33)
- db OVERWORLD ; tileset
- db ROUTE_22_HEIGHT, ROUTE_22_WIDTH ; dimensions (y, x)
- dw Route22Blocks, Route22TextPointers, Route22Script ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, ROUTE_23_HEIGHT, 0, 0, ROUTE_23_WIDTH, Route23Blocks
- EAST_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 1, VIRIDIAN_CITY_HEIGHT - 3, ViridianCityBlocks, ROUTE_22_WIDTH
- dw Route22Object ; objects
-
-Route22Object: ; 0x50022 (size=27)
- db $2c ; border tile
+INCLUDE "data/mapHeaders/route22.asm"
- db $1 ; warps
- db $5, $8, $0, ROUTE_22_GATE
-
- db $1 ; signs
- db $b, $7, $3 ; Route22FrontGateText
-
- db $2 ; people
- db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $1 ; person
- db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_22_WIDTH, $5, $8 ; ROUTE_22_GATE
+INCLUDE "data/mapObjects/route22.asm"
Route22Blocks: ; 5003d (14:403d)
INCBIN "maps/route22.blk"
-Route20_h: ; 0x500f1 to 0x50113 (34 bytes) (id=31)
- db OVERWORLD ; tileset
- db ROUTE_20_HEIGHT, ROUTE_20_WIDTH ; dimensions (y, x)
- dw Route20Blocks, Route20TextPointers, Route20Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_HEIGHT, CinnabarIslandBlocks, ROUTE_20_WIDTH
- EAST_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, -3, 15, ROUTE_19_HEIGHT - 15, Route19Blocks, ROUTE_20_WIDTH
- dw Route20Object ; objects
-
-Route20Object: ; 0x50113 (size=106)
- db $43 ; border tile
-
- db $2 ; warps
- db $5, $30, $0, SEAFOAM_ISLANDS_1
- db $9, $3a, $2, SEAFOAM_ISLANDS_1
-
- db $2 ; signs
- db $7, $33, $b ; Route20Text11
- db $b, $39, $c ; Route20Text12
-
- db $a ; people
- db SPRITE_SWIMMER, $8 + 4, $57 + 4, $ff, $d1, $41, SWIMMER + $C8, $9 ; trainer
- db SPRITE_SWIMMER, $b + 4, $44 + 4, $ff, $d1, $42, BEAUTY + $C8, $f ; trainer
- db SPRITE_SWIMMER, $a + 4, $2d + 4, $ff, $d0, $43, BEAUTY + $C8, $6 ; trainer
- db SPRITE_SWIMMER, $e + 4, $37 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $18 ; trainer
- db SPRITE_SWIMMER, $d + 4, $26 + 4, $ff, $d0, $45, SWIMMER + $C8, $a ; trainer
- db SPRITE_SWIMMER, $d + 4, $57 + 4, $ff, $d1, $46, SWIMMER + $C8, $b ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $9 + 4, $22 + 4, $ff, $d1, $47, BIRD_KEEPER + $C8, $b ; trainer
- db SPRITE_SWIMMER, $7 + 4, $19 + 4, $ff, $d1, $48, BEAUTY + $C8, $7 ; trainer
- db SPRITE_SWIMMER, $c + 4, $18 + 4, $ff, $d0, $49, JR__TRAINER_F + $C8, $10 ; trainer
- db SPRITE_SWIMMER, $8 + 4, $f + 4, $ff, $d1, $4a, BEAUTY + $C8, $8 ; trainer
-
- ; warp-to
- EVENT_DISP ROUTE_20_WIDTH, $5, $30 ; SEAFOAM_ISLANDS_1
- EVENT_DISP ROUTE_20_WIDTH, $9, $3a ; SEAFOAM_ISLANDS_1
+INCLUDE "data/mapHeaders/route20.asm"
+
+INCLUDE "data/mapObjects/route20.asm"
Route20Blocks: ; 5017d (14:417d)
INCBIN "maps/route20.blk"
-Route23_h: ; 0x5033f to 0x50361 (34 bytes) (id=34)
- db PLATEAU ; tileset
- db ROUTE_23_HEIGHT, ROUTE_23_WIDTH ; dimensions (y, x)
- dw Route23Blocks, Route23TextPointers, Route23Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION INDIGO_PLATEAU, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT, 0, 0, INDIGO_PLATEAU_WIDTH, IndigoPlateauBlocks
- SOUTH_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 0, 0, ROUTE_22_WIDTH - 7, Route22Blocks, ROUTE_23_WIDTH, ROUTE_23_HEIGHT
- dw Route23Object ; objects
-
-Route23Object: ; 0x50361 (size=81)
- db $f ; border tile
-
- db $4 ; warps
- db $8b, $7, $2, ROUTE_22_GATE
- db $8b, $8, $3, ROUTE_22_GATE
- db $1f, $4, $0, VICTORY_ROAD_1
- db $1f, $e, $1, VICTORY_ROAD_2
-
- db $1 ; signs
- db $21, $3, $8 ; Route23Text8
-
- db $7 ; people
- db SPRITE_GUARD, $23 + 4, $4 + 4, $ff, $d0, $1 ; person
- db SPRITE_GUARD, $38 + 4, $a + 4, $ff, $d0, $2 ; person
- db SPRITE_SWIMMER, $55 + 4, $8 + 4, $ff, $d0, $3 ; person
- db SPRITE_SWIMMER, $60 + 4, $b + 4, $ff, $d0, $4 ; person
- db SPRITE_GUARD, $69 + 4, $c + 4, $ff, $d0, $5 ; person
- db SPRITE_GUARD, $77 + 4, $8 + 4, $ff, $d0, $6 ; person
- db SPRITE_GUARD, $88 + 4, $8 + 4, $ff, $d0, $7 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_23_WIDTH, $8b, $7 ; ROUTE_22_GATE
- EVENT_DISP ROUTE_23_WIDTH, $8b, $8 ; ROUTE_22_GATE
- EVENT_DISP ROUTE_23_WIDTH, $1f, $4 ; VICTORY_ROAD_1
- EVENT_DISP ROUTE_23_WIDTH, $1f, $e ; VICTORY_ROAD_2
+INCLUDE "data/mapHeaders/route23.asm"
+
+INCLUDE "data/mapObjects/route23.asm"
Route23Blocks: ; 503b2 (14:43b2)
INCBIN "maps/route23.blk"
-Route24_h: ; 0x50682 to 0x506a4 (34 bytes) (id=35)
- db OVERWORLD ; tileset
- db ROUTE_24_HEIGHT, ROUTE_24_WIDTH ; dimensions (y, x)
- dw Route24Blocks, Route24TextPointers, Route24Script ; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks, ROUTE_24_WIDTH, ROUTE_24_HEIGHT
- EAST_MAP_CONNECTION ROUTE_25, ROUTE_25_WIDTH, 0, 0, ROUTE_25_HEIGHT, Route25Blocks, ROUTE_24_WIDTH
- dw Route24Object ; objects
-
-Route24Object: ; 0x506a4 (size=67)
- db $2c ; border tile
-
- db $0 ; warps
-
- db $0 ; signs
+INCLUDE "data/mapHeaders/route24.asm"
- db $8 ; people
- db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $b + 4, $ff, $d2, $41, ROCKET + $C8, $6 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $5 + 4, $ff, $d1, $42, JR__TRAINER_M + $C8, $2 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $13 + 4, $b + 4, $ff, $d2, $43, JR__TRAINER_M + $C8, $3 ; trainer
- db SPRITE_LASS, $16 + 4, $a + 4, $ff, $d3, $44, LASS + $C8, $7 ; trainer
- db SPRITE_BUG_CATCHER, $19 + 4, $b + 4, $ff, $d2, $45, YOUNGSTER + $C8, $4 ; trainer
- db SPRITE_LASS, $1c + 4, $a + 4, $ff, $d3, $46, LASS + $C8, $8 ; trainer
- db SPRITE_BUG_CATCHER, $1f + 4, $b + 4, $ff, $d2, $47, BUG_CATCHER + $C8, $9 ; trainer
- db SPRITE_BALL, $5 + 4, $a + 4, $ff, $ff, $88, TM_45 ; item
+INCLUDE "data/mapObjects/route24.asm"
Route24Blocks: ; 506e7 (14:46e7)
INCBIN "maps/route24.blk"
-Route25_h: ; 0x5079b to 0x507b2 (23 bytes) (id=36)
- db OVERWORLD ; tileset
- db ROUTE_25_HEIGHT, ROUTE_25_WIDTH ; dimensions (y, x)
- dw Route25Blocks, Route25TextPointers, Route25Script ; blocks, texts, scripts
- db WEST ; connections
- WEST_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, 0, 0, ROUTE_24_HEIGHT - 6, Route24Blocks, ROUTE_25_WIDTH
- dw Route25Object ; objects
-
-Route25Object: ; 0x507b2 (size=94)
- db $2c ; border tile
-
- db $1 ; warps
- db $3, $2d, $0, BILLS_HOUSE
-
- db $1 ; signs
- db $3, $2b, $b ; Route25Text11
-
- db $a ; people
- db SPRITE_BUG_CATCHER, $2 + 4, $e + 4, $ff, $d0, $41, YOUNGSTER + $C8, $5 ; trainer
- db SPRITE_BUG_CATCHER, $5 + 4, $12 + 4, $ff, $d1, $42, YOUNGSTER + $C8, $6 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $18 + 4, $ff, $d0, $43, JR__TRAINER_M + $C8, $2 ; trainer
- db SPRITE_LASS, $8 + 4, $12 + 4, $ff, $d3, $44, LASS + $C8, $9 ; trainer
- db SPRITE_BUG_CATCHER, $3 + 4, $20 + 4, $ff, $d2, $45, YOUNGSTER + $C8, $7 ; trainer
- db SPRITE_LASS, $4 + 4, $25 + 4, $ff, $d0, $46, LASS + $C8, $a ; trainer
- db SPRITE_HIKER, $4 + 4, $8 + 4, $ff, $d3, $47, HIKER + $C8, $2 ; trainer
- db SPRITE_HIKER, $9 + 4, $17 + 4, $ff, $d1, $48, HIKER + $C8, $3 ; trainer
- db SPRITE_HIKER, $7 + 4, $d + 4, $ff, $d3, $49, HIKER + $C8, $4 ; trainer
- db SPRITE_BALL, $2 + 4, $16 + 4, $ff, $ff, $8a, TM_19 ; item
-
- ; warp-to
- EVENT_DISP ROUTE_25_WIDTH, $3, $2d ; BILLS_HOUSE
+INCLUDE "data/mapHeaders/route25.asm"
+
+INCLUDE "data/mapObjects/route25.asm"
Route25Blocks: ; 50810 (14:4810)
INCBIN "maps/route25.blk"
-IndigoPlateau_h: ; 0x5091e to 0x50935 (23 bytes) (id=9)
- db PLATEAU ; tileset
- db INDIGO_PLATEAU_HEIGHT, INDIGO_PLATEAU_WIDTH ; dimensions (y, x)
- dw IndigoPlateauBlocks, IndigoPlateauTextPointers, IndigoPlateauScript ; blocks, texts, scripts
- db SOUTH ; connections
- SOUTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, 0, 0, ROUTE_23_WIDTH, Route23Blocks, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT
- dw IndigoPlateauObject ; objects
-
-IndigoPlateauScript: ; 50935 (14:4935)
- ret
-
-IndigoPlateauTextPointers: ; 50936 (14:4936)
-IndigoPlateauObject: ; 0x50936 (size=20)
- db $e ; border tile
-
- db $2 ; warps
- db $5, $9, $0, INDIGO_PLATEAU_LOBBY
- db $5, $a, $0, INDIGO_PLATEAU_LOBBY
+INCLUDE "data/mapHeaders/indigoplateau.asm"
- db $0 ; signs
+INCLUDE "scripts/indigoplateau.asm"
- db $0 ; people
-
- ; warp-to
- EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $9 ; INDIGO_PLATEAU_LOBBY
- EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $a ; INDIGO_PLATEAU_LOBBY
+INCLUDE "data/mapObjects/indigoplateau.asm"
IndigoPlateauBlocks: ; 5094a (14:494a)
INCBIN "maps/indigoplateau.blk"
-SaffronCity_h: ; 0x509a4 to 0x509dc (56 bytes) (id=10)
- db OVERWORLD ; tileset
- db SAFFRON_CITY_HEIGHT, SAFFRON_CITY_WIDTH ; dimensions (y, x)
- dw SaffronCityBlocks, SaffronCityTextPointers, SaffronCityScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, ROUTE_5_HEIGHT, 5, 0, ROUTE_5_WIDTH, Route5Blocks
- SOUTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, 5, 0, ROUTE_6_WIDTH, Route6Blocks, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT
- WEST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, SAFFRON_CITY_WIDTH
- EAST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 4, 0, ROUTE_8_HEIGHT, Route8Blocks, SAFFRON_CITY_WIDTH
- dw SaffronCityObject ; objects
-
-SaffronCityObject: ; 0x509dc (size=188)
- db $f ; border tile
-
- db $8 ; warps
- db $5, $7, $0, COPYCATS_HOUSE_1F
- db $3, $1a, $0, FIGHTING_DOJO
- db $3, $22, $0, SAFFRON_GYM
- db $b, $d, $0, SAFFRON_HOUSE_1
- db $b, $19, $0, SAFFRON_MART
- db $15, $12, $0, SILPH_CO_1F
- db $1d, $9, $0, SAFFRON_POKECENTER
- db $1d, $1d, $0, SAFFRON_HOUSE_2
-
- db $a ; signs
- db $5, $11, $10 ; SaffronCityText16
- db $5, $1b, $11 ; SaffronCityText17
- db $5, $23, $12 ; SaffronCityText18
- db $b, $1a, $13 ; MartSignText
- db $13, $27, $14 ; SaffronCityText20
- db $15, $5, $15 ; SaffronCityText21
- db $15, $f, $16 ; SaffronCityText22
- db $1d, $a, $17 ; PokeCenterSignText
- db $1d, $1b, $18 ; SaffronCityText24
- db $13, $1, $19 ; SaffronCityText25
-
- db $f ; people
- db SPRITE_ROCKET, $6 + 4, $7 + 4, $ff, $ff, $1 ; person
- db SPRITE_ROCKET, $8 + 4, $14 + 4, $fe, $2, $2 ; person
- db SPRITE_ROCKET, $4 + 4, $22 + 4, $ff, $ff, $3 ; person
- db SPRITE_ROCKET, $c + 4, $d + 4, $ff, $ff, $4 ; person
- db SPRITE_ROCKET, $19 + 4, $b + 4, $fe, $2, $5 ; person
- db SPRITE_ROCKET, $d + 4, $20 + 4, $fe, $2, $6 ; person
- db SPRITE_ROCKET, $1e + 4, $12 + 4, $fe, $2, $7 ; person
- db SPRITE_OAK_AIDE, $e + 4, $8 + 4, $fe, $0, $8 ; person
- db SPRITE_LAPRAS_GIVER, $17 + 4, $17 + 4, $ff, $ff, $9 ; person
- db SPRITE_ERIKA, $1e + 4, $11 + 4, $fe, $2, $a ; person
- db SPRITE_GENTLEMAN, $c + 4, $1e + 4, $ff, $d0, $b ; person
- db SPRITE_BIRD, $c + 4, $1f + 4, $ff, $d0, $c ; person
- db SPRITE_ROCKER, $8 + 4, $12 + 4, $ff, $d1, $d ; person
- db SPRITE_ROCKET, $16 + 4, $12 + 4, $ff, $d0, $e ; person
- db SPRITE_ROCKET, $16 + 4, $13 + 4, $ff, $d0, $f ; person
-
- ; warp-to
- EVENT_DISP SAFFRON_CITY_WIDTH, $5, $7 ; COPYCATS_HOUSE_1F
- EVENT_DISP SAFFRON_CITY_WIDTH, $3, $1a ; FIGHTING_DOJO
- EVENT_DISP SAFFRON_CITY_WIDTH, $3, $22 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_CITY_WIDTH, $b, $d ; SAFFRON_HOUSE_1
- EVENT_DISP SAFFRON_CITY_WIDTH, $b, $19 ; SAFFRON_MART
- EVENT_DISP SAFFRON_CITY_WIDTH, $15, $12 ; SILPH_CO_1F
- EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $9 ; SAFFRON_POKECENTER
- EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $1d ; SAFFRON_HOUSE_2
+INCLUDE "data/mapHeaders/saffroncity.asm"
+
+INCLUDE "data/mapObjects/saffroncity.asm"
SaffronCityBlocks: ; 50a98 (14:4a98)
INCBIN "maps/saffroncity.blk"
-SaffronCityScript: ; 50c00 (14:4c00)
- jp EnableAutoTextBoxDrawing
-
-SaffronCityTextPointers: ; 50c03 (14:4c03)
- dw SaffronCityText1
- dw SaffronCityText2
- dw SaffronCityText3
- dw SaffronCityText4
- dw SaffronCityText5
- dw SaffronCityText6
- dw SaffronCityText7
- dw SaffronCityText8
- dw SaffronCityText9
- dw SaffronCityText10
- dw SaffronCityText11
- dw SaffronCityText12
- dw SaffronCityText13
- dw SaffronCityText14
- dw SaffronCityText15
- dw SaffronCityText16
- dw SaffronCityText17
- dw SaffronCityText18
- dw MartSignText
- dw SaffronCityText20
- dw SaffronCityText21
- dw SaffronCityText22
- dw PokeCenterSignText
- dw SaffronCityText24
- dw SaffronCityText25
-
-SaffronCityText1: ; 50c35 (14:4c35)
- TX_FAR _SaffronCityText1
- db "@"
-
-SaffronCityText2: ; 50c3a (14:4c3a)
- TX_FAR _SaffronCityText2
- db "@"
-
-SaffronCityText3: ; 50c3f (14:4c3f)
- TX_FAR _SaffronCityText3
- db "@"
-
-SaffronCityText4: ; 50c44 (14:4c44)
- TX_FAR _SaffronCityText4
- db "@"
-
-SaffronCityText5: ; 50c49 (14:4c49)
- TX_FAR _SaffronCityText5
- db "@"
-
-SaffronCityText6: ; 50c4e (14:4c4e)
- TX_FAR _SaffronCityText6
- db "@"
-
-SaffronCityText7: ; 50c53 (14:4c53)
- TX_FAR _SaffronCityText7
- db "@"
-
-SaffronCityText8: ; 50c58 (14:4c58)
- TX_FAR _SaffronCityText8
- db "@"
-
-SaffronCityText9: ; 50c5d (14:4c5d)
- TX_FAR _SaffronCityText9
- db "@"
-
-SaffronCityText10: ; 50c62 (14:4c62)
- TX_FAR _SaffronCityText10
- db "@"
-
-SaffronCityText11: ; 50c67 (14:4c67)
- TX_FAR _SaffronCityText11
- db "@"
-
-SaffronCityText12: ; 50c6c (14:4c6c)
- TX_FAR _SaffronCityText12
- db $15, "@"
-
-SaffronCityText13: ; 50c72 (14:4c72)
- TX_FAR _SaffronCityText13
- db "@"
-
-SaffronCityText14: ; 50c77 (14:4c77)
- TX_FAR _SaffronCityText14
- db "@"
-
-SaffronCityText15: ; 50c7c (14:4c7c)
- TX_FAR _SaffronCityText15
- db "@"
-
-SaffronCityText16: ; 50c81 (14:4c81)
- TX_FAR _SaffronCityText16
- db "@"
-
-SaffronCityText17: ; 50c86 (14:4c86)
- TX_FAR _SaffronCityText17
- db "@"
-
-SaffronCityText18: ; 50c8b (14:4c8b)
- TX_FAR _SaffronCityText18
- db "@"
-
-SaffronCityText20: ; 50c90 (14:4c90)
- TX_FAR _SaffronCityText20
- db "@"
-
-SaffronCityText21: ; 50c95 (14:4c95)
- TX_FAR _SaffronCityText21
- db "@"
-
-SaffronCityText22: ; 50c9a (14:4c9a)
- TX_FAR _SaffronCityText22
- db "@"
-
-SaffronCityText24: ; 50c9f (14:4c9f)
- TX_FAR _SaffronCityText24
- db "@"
-
-SaffronCityText25: ; 50ca4 (14:4ca4)
- TX_FAR _SaffronCityText25
- db "@"
-
-Route20Script: ; 50ca9 (14:4ca9)
- ld hl, $d7e7
- bit 0, [hl]
- res 0, [hl]
- call nz, Func_50cc6
- call EnableAutoTextBoxDrawing
- ld hl, Route20TrainerHeader0 ; $4d3a
- ld de, Route20ScriptPointers
- ld a, [W_ROUTE20CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE20CURSCRIPT], a
- ret
-
-Func_50cc6: ; 50cc6 (14:4cc6)
- ld a, [$d880]
- and $3
- cp $3
- jr z, .asm_50cef
- ld a, $d7
- call Func_50d0c
- ld a, $d8
- call Func_50d0c
- ld hl, .MissableObjectIDs ; $4ce8
-.asm_50cdc
- ld a, [hli]
- cp $ff
- jr z, .asm_50cef
- push hl
- call Func_50d14
- pop hl
- jr .asm_50cdc
-
-.MissableObjectIDs: ; 50ce8 (14:4ce8)
- db $D9,$DA,$DB,$DC,$DF,$E0,$FF
-
-.asm_50cef
- ld a, [$d881]
- and $3
- cp $3
- ret z
- ld a, $dd
- call Func_50d0c
- ld a, $de
- call Func_50d0c
- ld a, $e1
- call Func_50d14
- ld a, $e2
- call Func_50d14
- ret
-
-Func_50d0c: ; 50d0c (14:4d0c)
- ld [$cc4d], a
- ld a, $15
- jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
-
-Func_50d14: ; 50d14 (14:4d14)
- ld [$cc4d], a
- ld a, $11
- jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
-
-Route20ScriptPointers: ; 50d1c (14:4d1c)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route20TextPointers: ; 50d22 (14:4d22)
- dw Route20Text1
- dw Route20Text2
- dw Route20Text3
- dw Route20Text4
- dw Route20Text5
- dw Route20Text6
- dw Route20Text7
- dw Route20Text8
- dw Route20Text9
- dw Route20Text10
- dw Route20Text11
- dw Route20Text12
-
-Route20TrainerHeaders: ; 50d3a (14:4d3a)
-Route20TrainerHeader0: ; 50d3a (14:4d3a)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText1 ; 0x4e17 TextBeforeBattle
- dw Route20AfterBattleText1 ; 0x4e21 TextAfterBattle
- dw Route20EndBattleText1 ; 0x4e1c TextEndBattle
- dw Route20EndBattleText1 ; 0x4e1c TextEndBattle
-
-Route20TrainerHeader2: ; 50d46 (14:4d46)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText2 ; 0x4e26 TextBeforeBattle
- dw Route20AfterBattleText2 ; 0x4e30 TextAfterBattle
- dw Route20EndBattleText2 ; 0x4e2b TextEndBattle
- dw Route20EndBattleText2 ; 0x4e2b TextEndBattle
-
-Route20TrainerHeader3: ; 50d52 (14:4d52)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText3 ; 0x4e35 TextBeforeBattle
- dw Route20AfterBattleText3 ; 0x4e3f TextAfterBattle
- dw Route20EndBattleText3 ; 0x4e3a TextEndBattle
- dw Route20EndBattleText3 ; 0x4e3a TextEndBattle
-
-Route20TrainerHeader4: ; 50d5e (14:4d5e)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText4 ; 0x4e44 TextBeforeBattle
- dw Route20AfterBattleText4 ; 0x4e4e TextAfterBattle
- dw Route20EndBattleText4 ; 0x4e49 TextEndBattle
- dw Route20EndBattleText4 ; 0x4e49 TextEndBattle
-
-Route20TrainerHeader5: ; 50d6a (14:4d6a)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText5 ; 0x4e53 TextBeforeBattle
- dw Route20AfterBattleText5 ; 0x4e5d TextAfterBattle
- dw Route20EndBattleText5 ; 0x4e58 TextEndBattle
- dw Route20EndBattleText5 ; 0x4e58 TextEndBattle
-
-Route20TrainerHeader6: ; 50d76 (14:4d76)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText6 ; 0x4e62 TextBeforeBattle
- dw Route20AfterBattleText6 ; 0x4e6c TextAfterBattle
- dw Route20EndBattleText6 ; 0x4e67 TextEndBattle
- dw Route20EndBattleText6 ; 0x4e67 TextEndBattle
-
-Route20TrainerHeader7: ; 50d82 (14:4d82)
- db $7 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText7 ; 0x4e71 TextBeforeBattle
- dw Route20AfterBattleText7 ; 0x4e7b TextAfterBattle
- dw Route20EndBattleText7 ; 0x4e76 TextEndBattle
- dw Route20EndBattleText7 ; 0x4e76 TextEndBattle
-
-Route20TrainerHeader8: ; 50d8e (14:4d8e)
- db $8 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText8 ; 0x4e80 TextBeforeBattle
- dw Route20AfterBattleText8 ; 0x4e8a TextAfterBattle
- dw Route20EndBattleText8 ; 0x4e85 TextEndBattle
- dw Route20EndBattleText8 ; 0x4e85 TextEndBattle
-
-Route20TrainerHeader9: ; 50d9a (14:4d9a)
- db $9 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText9 ; 0x4e8f TextBeforeBattle
- dw Route20AfterBattleText9 ; 0x4e99 TextAfterBattle
- dw Route20EndBattleText9 ; 0x4e94 TextEndBattle
- dw Route20EndBattleText9 ; 0x4e94 TextEndBattle
-
-Route20TrainerHeader10: ; 50da6 (14:4da6)
- db $a ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e7 ; flag's byte
- dw Route20BattleText10 ; 0x4e9e TextBeforeBattle
- dw Route20AfterBattleText10 ; 0x4ea8 TextAfterBattle
- dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle
- dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle
-
- db $ff
-
-Route20Text1: ; 50db3 (14:4db3)
- db $08 ; asm
- ld hl, Route20TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text2: ; 50dbd (14:4dbd)
- db $08 ; asm
- ld hl, Route20TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text3: ; 50dc7 (14:4dc7)
- db $08 ; asm
- ld hl, Route20TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text4: ; 50dd1 (14:4dd1)
- db $08 ; asm
- ld hl, Route20TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text5: ; 50ddb (14:4ddb)
- db $08 ; asm
- ld hl, Route20TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text6: ; 50de5 (14:4de5)
- db $08 ; asm
- ld hl, Route20TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text7: ; 50def (14:4def)
- db $08 ; asm
- ld hl, Route20TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text8: ; 50df9 (14:4df9)
- db $08 ; asm
- ld hl, Route20TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text9: ; 50e03 (14:4e03)
- db $08 ; asm
- ld hl, Route20TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text10: ; 50e0d (14:4e0d)
- db $08 ; asm
- ld hl, Route20TrainerHeader10
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20BattleText1: ; 50e17 (14:4e17)
- TX_FAR _Route20BattleText1
- db "@"
-
-Route20EndBattleText1: ; 50e1c (14:4e1c)
- TX_FAR _Route20EndBattleText1
- db "@"
-
-Route20AfterBattleText1: ; 50e21 (14:4e21)
- TX_FAR _Route20AfterBattleText1
- db "@"
-
-Route20BattleText2: ; 50e26 (14:4e26)
- TX_FAR _Route20BattleText2
- db "@"
-
-Route20EndBattleText2: ; 50e2b (14:4e2b)
- TX_FAR _Route20EndBattleText2
- db "@"
-
-Route20AfterBattleText2: ; 50e30 (14:4e30)
- TX_FAR _Route20AfterBattleText2
- db "@"
-
-Route20BattleText3: ; 50e35 (14:4e35)
- TX_FAR _Route20BattleText3
- db "@"
-
-Route20EndBattleText3: ; 50e3a (14:4e3a)
- TX_FAR _Route20EndBattleText3
- db "@"
-
-Route20AfterBattleText3: ; 50e3f (14:4e3f)
- TX_FAR _Route20AfterBattleText3
- db "@"
-
-Route20BattleText4: ; 50e44 (14:4e44)
- TX_FAR _Route20BattleText4
- db "@"
-
-Route20EndBattleText4: ; 50e49 (14:4e49)
- TX_FAR _Route20EndBattleText4
- db "@"
-
-Route20AfterBattleText4: ; 50e4e (14:4e4e)
- TX_FAR _Route20AfterBattleText4
- db "@"
-
-Route20BattleText5: ; 50e53 (14:4e53)
- TX_FAR _Route20BattleText5
- db "@"
-
-Route20EndBattleText5: ; 50e58 (14:4e58)
- TX_FAR _Route20EndBattleText5
- db "@"
-
-Route20AfterBattleText5: ; 50e5d (14:4e5d)
- TX_FAR _Route20AfterBattleText5
- db "@"
-
-Route20BattleText6: ; 50e62 (14:4e62)
- TX_FAR _Route20BattleText6
- db "@"
-
-Route20EndBattleText6: ; 50e67 (14:4e67)
- TX_FAR _Route20EndBattleText6
- db "@"
-
-Route20AfterBattleText6: ; 50e6c (14:4e6c)
- TX_FAR _Route20AfterBattleText6
- db "@"
-
-Route20BattleText7: ; 50e71 (14:4e71)
- TX_FAR _Route20BattleText7
- db "@"
-
-Route20EndBattleText7: ; 50e76 (14:4e76)
- TX_FAR _Route20EndBattleText7
- db "@"
-
-Route20AfterBattleText7: ; 50e7b (14:4e7b)
- TX_FAR _Route20AfterBattleText7
- db "@"
-
-Route20BattleText8: ; 50e80 (14:4e80)
- TX_FAR _Route20BattleText8
- db "@"
-
-Route20EndBattleText8: ; 50e85 (14:4e85)
- TX_FAR _Route20EndBattleText8
- db "@"
-
-Route20AfterBattleText8: ; 50e8a (14:4e8a)
- TX_FAR _Route20AfterBattleText8
- db "@"
-
-Route20BattleText9: ; 50e8f (14:4e8f)
- TX_FAR _Route20BattleText9
- db "@"
-
-Route20EndBattleText9: ; 50e94 (14:4e94)
- TX_FAR _Route20EndBattleText9
- db "@"
-
-Route20AfterBattleText9: ; 50e99 (14:4e99)
- TX_FAR _Route20AfterBattleText9
- db "@"
-
-Route20BattleText10: ; 50e9e (14:4e9e)
- TX_FAR _Route20BattleText10
- db "@"
-
-Route20EndBattleText10: ; 50ea3 (14:4ea3)
- TX_FAR _Route20EndBattleText10
- db "@"
-
-Route20AfterBattleText10: ; 50ea8 (14:4ea8)
- TX_FAR _Route20AfterBattleText10
- db "@"
-
-Route20Text12: ; 50ead (14:4ead)
-Route20Text11: ; 50ead (14:4ead)
- TX_FAR _Route20Text11
- db "@"
-
-Route22Script: ; 50eb2 (14:4eb2)
- call EnableAutoTextBoxDrawing
- ld hl, Route22ScriptPointers
- ld a, [W_ROUTE22CURSCRIPT]
- jp CallFunctionInTable
-
-Route22ScriptPointers: ; 50ebe (14:4ebe)
- dw Route22Script0
- dw Route22Script1
- dw Route22Script2
- dw Route22Script3
- dw Route22Script4
- dw Route22Script5
- dw Route22Script6
- dw Route22Script7
-
-Func_50ece: ; 50ece (14:4ece)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE22CURSCRIPT], a
-Route22Script7: ; 50ed5 (14:4ed5)
- ret
-
-Func_50ed6: ; 50ed6 (14:4ed6)
- ld a, [W_RIVALSTARTER] ; $d715
- ld b, a
-.asm_50eda
- ld a, [hli]
- cp b
- jr z, .asm_50ee1
- inc hl
- jr .asm_50eda
-.asm_50ee1
- ld a, [hl]
- ld [W_TRAINERNO], a ; $d05d
- ret
-
-Route22MoveRivalSprite: ; 50ee6 (14:4ee6)
- ld de, Route22RivalMovementData ; $4efb
- ld a, [$cf0d]
- cp $1
- jr z, .asm_50ef1
- inc de
-.asm_50ef1
- call MoveSprite
- ld a, $c
- ld [$ff8d], a
- jp Func_34a6
-
-Route22RivalMovementData: ; 50efb (14:4efb)
- db $C0,$C0,$C0,$C0,$FF ; move right 4 times
-
-Route22Script0: ; 50f00 (14:4f00)
- ld a, [$d7eb]
- bit 7, a
- ret z
- ld hl, .Route22RivalBattleCoords ; $4f2d
- call ArePlayerCoordsInArray
- ret nc
- ld a, [$cd3d]
- ld [$cf0d], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $2
- ld [$d528], a
- ld a, [$d7eb]
- bit 0, a ; is this the rival battle at the beginning of the game?
- jr nz, .firstRivalBattle ; 0x50f25 $b
- bit 1, a ; is this the rival at the end of the game?
- jp nz, Func_5104e
- ret
-
-.Route22RivalBattleCoords
- db $04, $1D
- db $05, $1D
- db $FF
-
-.firstRivalBattle
- ld a, $1
- ld [$cd4f], a
- xor a
- ld [$cd50], a
- ld a, $4c
- call Predef
- ld a, [$d700]
- and a
- jr z, .asm_50f4e ; 0x50f44 $8
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
-.asm_50f4e
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, $1
- ld [$ff8c], a
- call Route22MoveRivalSprite
- ld a, $1
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-Route22Script1: ; 50f62 (14:4f62)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, [$cf0d]
- cp $1
- jr nz, .asm_50f78 ; 0x50f6d $9
- ld a, $4
- ld [$d528], a
- ld a, $4
- jr .asm_50f7a ; 0x50f76 $2
-.asm_50f78
- ld a, $c
-.asm_50f7a
- ld [$ff8d], a
- ld a, $1
- ld [$ff8c], a
- call Func_34a6
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, Route22RivalDefeatedText1
- ld de, UnnamedText_511bc
- call PreBattleSaveRegisters
- ld a, SONY1 + $C8
- ld [$d059], a
- ld hl, StarterMons_50faf ; $4faf
- call Func_50ed6
- ld a, $2
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-StarterMons_50faf: ; 50faf (14:4faf)
-; starter the rival picked, rival trainer number
- db SQUIRTLE,$04
- db BULBASAUR,$05
- db CHARMANDER,$06
-
-Route22Script2: ; 50fb5 (14:4fb5)
- ld a, [$d057]
- cp $ff
- jp z, Func_50ece
- ld a, [$c109]
- and a
- jr nz, .asm_50fc7 ; 0x50fc1 $4
- ld a, $4
- jr .asm_50fc9 ; 0x50fc5 $2
-.asm_50fc7
- ld a, $c
-.asm_50fc9
- ld [$ff8d], a
- ld a, $1
- ld [$ff8c], a
- call Func_34a6
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d7eb
- set 5, [hl]
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld a, [$cf0d]
- cp $1
- jr nz, .asm_50fff ; 0x50ff8 $5
- call Func_51008
- jr .asm_51002 ; 0x50ffd $3
-.asm_50fff
- call Func_5100d
-.asm_51002
- ld a, $3
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-Func_51008: ; 51008 (14:5008)
- ld de, Route22RivalExitMovementData1 ; $5017
- jr asm_51010
-
-Func_5100d: ; 5100d (14:500d)
- ld de, Route22RivalExitMovementData2 ; $501f
-asm_51010
- ld a, $1
- ld [H_SPRITEHEIGHT], a
- jp MoveSprite
-
-Route22RivalExitMovementData1: ; 51017 (14:5017)
- db $C0,$C0,$00,$00,$00,$00,$00,$FF ; right x2, down x5
-
-Route22RivalExitMovementData2: ; 5101f (14:501f)
- db $40,$C0,$C0,$C0,$00,$00,$00,$00,$00,$00,$FF ; up x1, right x3, down x6
-
-Route22Script3: ; 5102a (14:502a)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $22
- ld [$cc4d], a
- ld a, $11
- call Predef
- call Func_2307
- ld hl, $d7eb
- res 0, [hl]
- res 7, [hl]
- ld a, $0
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-Func_5104e: ; 5104e (14:504e)
- ld a, $2
- ld [$cd4f], a
- xor a
- ld [$cd50], a
- ld a, $4c
- call Predef ; indirect jump to Func_17c47 (17c47 (5:7c47))
- ld a, [$d700]
- and a
- jr z, .skipYVisibilityTesta
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
-.skipYVisibilityTesta
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateTempo
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call Route22MoveRivalSprite
- ld a, $4
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-Route22Script4: ; 51087 (14:5087)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- ld a, [$cf0d]
- cp $1
- jr nz, .asm_510a1
- ld a, $4
- ld [$d528], a
- ld a, $4
- jr .asm_510a8
-.asm_510a1
- ld a, $2
- ld [$d528], a
- ld a, $c
-.asm_510a8
- ld [$ff8d], a
- call Func_34a6
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, Route22RivalDefeatedText2 ; $51cb
- ld de, UnnamedText_511d0 ; $51d0
- call PreBattleSaveRegisters
- ld a, $f2
- ld [W_CUROPPONENT], a ; $d059
- ld hl, StarterMons_510d9 ; $50d9
- call Func_50ed6
- ld a, $5
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-StarterMons_510d9: ; 510d9 (14:50d9)
- db SQUIRTLE,$0a
- db BULBASAUR,$0b
- db CHARMANDER,$0c
-
-Route22Script5: ; 510df (14:50df)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_50ece
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- ld a, [$cf0d]
- cp $1
- jr nz, .asm_510fb
- ld a, $4
- ld [$d528], a
- ld a, $4
- jr .asm_51102
-.asm_510fb
- ld a, $2
- ld [$d528], a
- ld a, $c
-.asm_51102
- ld [$ff8d], a
- call Func_34a6
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d7eb
- set 6, [hl]
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStartAndTempo
- ld a, [$cf0d]
- cp $1
- jr nz, .asm_51134
- call Func_5113d
- jr .asm_51137
-.asm_51134
- call Func_51142
-.asm_51137
- ld a, $6
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-Func_5113d: ; 5113d (14:513d)
- ld de, MovementData_5114c ; $514c
- jr asm_51145
-
-Func_51142: ; 51142 (14:5142)
- ld de, MovementData_5114d ; $514d
-asm_51145: ; 51145 (14:5145)
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp MoveSprite
-
-MovementData_5114c: ; 5114c (14:514c)
- db $80 ; left
-
-MovementData_5114d: ; 5114d (14:514d)
- db $80,$80,$80,$FF ; left x3
-
-Route22Script6: ; 51151 (14:5151)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $23
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- call Func_2307
- ld hl, $d7eb
- res 1, [hl]
- res 7, [hl]
- ld a, $7
- ld [W_ROUTE22CURSCRIPT], a
- ret
-
-Route22TextPointers: ; 51175 (14:5175)
- dw Route22Text1
- dw Route22Text2
- dw Route22FrontGateText
-
-Route22Text1: ; 5117b (14:517b)
- db $08 ; asm
- ld a, [$d7eb]
- bit 5, a
- jr z, .asm_a88cf ; 0x51181
- ld hl, Route22RivalAfterBattleText1
- call PrintText
- jr .asm_48088 ; 0x51189
-.asm_a88cf ; 0x5118b
- ld hl, Route22RivalBeforeBattleText1
- call PrintText
-.asm_48088 ; 0x51191
- jp TextScriptEnd
-
-Route22Text2: ; 51194 (14:5194)
- db $08 ; asm
- ld a, [$d7eb]
- bit 6, a
- jr z, .asm_58c0a ; 0x5119a
- ld hl, Route22RivalAfterBattleText2
- call PrintText
- jr .asm_673ee ; 0x511a2
-.asm_58c0a ; 0x511a4
- ld hl, Route22RivalBeforeBattleText2
- call PrintText
-.asm_673ee ; 0x511aa
- jp TextScriptEnd
-
-Route22RivalBeforeBattleText1: ; 511ad (14:51ad)
- TX_FAR _Route22RivalBeforeBattleText1
- db "@"
-
-Route22RivalAfterBattleText1: ; 511b2 (14:51b2)
- TX_FAR _Route22RivalAfterBattleText1
- db "@"
-
-Route22RivalDefeatedText1: ; 511b7 (14:51b7)
- TX_FAR _Route22RivalDefeatedText1
- db "@"
-
-UnnamedText_511bc: ; 511bc (14:51bc)
- TX_FAR _UnnamedText_511bc
- db "@"
-
-Route22RivalBeforeBattleText2: ; 511c1 (14:51c1)
- TX_FAR _Route22RivalBeforeBattleText2
- db "@"
-
-Route22RivalAfterBattleText2: ; 511c6 (14:51c6)
- TX_FAR _Route22RivalAfterBattleText2
- db "@"
-
-Route22RivalDefeatedText2: ; 511cb (14:51cb)
- TX_FAR _Route22RivalDefeatedText2
- db "@"
-
-UnnamedText_511d0: ; 511d0 (14:51d0)
- TX_FAR _UnnamedText_511d0
- db "@"
-
-Route22FrontGateText: ; 511d5 (14:51d5)
- TX_FAR _Route22FrontGateText
- db "@"
-
-Route23Script: ; 511da (14:51da)
- call Func_511e9
- call EnableAutoTextBoxDrawing
- ld hl, Route23ScriptPointers
- ld a, [W_ROUTE23CURSCRIPT]
- jp CallFunctionInTable
-
-Func_511e9: ; 511e9 (14:51e9)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- ret z
- ld hl, $d7ee
- res 0, [hl]
- res 7, [hl]
- ld hl, $d813
- res 0, [hl]
- res 6, [hl]
- ld a, $7a
- ld [$cc4d], a
- ld a, $15
- call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
- ld a, $60
- ld [$cc4d], a
- ld a, $11
- jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
-
-Route23ScriptPointers: ; 51213 (14:5213)
- dw Route23Script0
- dw Route23Script1
- dw Route23Script2
-
-Route23Script0: ; 51219 (14:5219)
- ld hl, YCoordsData_51255 ; $5255
- ld a, [W_YCOORD]
- ld b, a
- ld e, $0
- ld c, $7
-.asm_51224
- ld a, [hli]
- cp $ff
- ret z
- inc e
- dec c
- cp b
- jr nz, .asm_51224 ; 0x5122b $f7
- cp $23
- jr nz, .asm_51237 ; 0x5122f $6
- ld a, [W_XCOORD]
- cp $e
- ret nc
-.asm_51237
- ld a, e
- ld [$ff8c], a
- ld a, c
- ld [$cd3d], a
- ld b, $2
- ld hl, $d7ed
- ld a, $10
- call Predef
- ld a, c
- and a
- ret nz
- call Func_5125d
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ret
-
-YCoordsData_51255: ; 51255 (14:5255)
- db $23,$38,$55,$60,$69,$77,$88,$FF
-
-Func_5125d: ; 5125d (14:525d)
- ld hl, BadgeTextPointers ; $5276
- ld a, [wWhichTrade] ; $cd3d
- ld c, a
- ld b, $0
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld de, $cd6d
-.asm_5126e
- ld a, [hli]
- ld [de], a
- inc de
- cp $50
- jr nz, .asm_5126e
- ret
-
-BadgeTextPointers: ; 51276 (14:5276)
- dw CascadeBadgeText
- dw ThunderBadgeText
- dw RainbowBadgeText
- dw SoulBadgeText
- dw MarshBadgeText
- dw VolcanoBadgeText
- dw EarthBadgeText
-
-EarthBadgeText: ; 51284 (14:5284)
- db "EARTHBADGE@"
-
-VolcanoBadgeText: ; 5128f (14:528f)
- db "VOLCANOBADGE@"
-
-MarshBadgeText: ; 5129c (14:529c)
- db "MARSHBADGE@"
-
-SoulBadgeText: ; 512a7 (14:52a7)
- db "SOULBADGE@"
-
-RainbowBadgeText: ; 512b1 (14:52b1)
- db "RAINBOWBADGE@"
-
-ThunderBadgeText: ; 512be (14:52be)
- db "THUNDERBADGE@"
-
-CascadeBadgeText: ; 512cb (14:52cb)
- db "CASCADEBADGE@"
-
-Func_512d8: ; 512d8 (14:52d8)
- ld a, $1
- ld [$cd38], a
- ld a, $80
- ld [$ccd3], a
- xor a
- ld [$c109], a
- ld [wJoypadForbiddenButtonsMask], a
- jp Func_3486
-
-Route23Script1: ; 512ec (14:52ec)
- ld a, [$cd38]
- and a
- ret nz
-Route23Script2: ; 512f1 (14:52f1)
- ld a, $0
- ld [W_ROUTE23CURSCRIPT], a
- ret
-
-Route23TextPointers: ; 512f7 (14:52f7)
- dw Route23Text1
- dw Route23Text2
- dw Route23Text3
- dw Route23Text4
- dw Route23Text5
- dw Route23Text6
- dw Route23Text7
- dw Route23Text8
-
-Route23Text1: ; 51307 (14:5307)
- db $08 ; asm
- ld a, $6
- call Func_51346
- jp TextScriptEnd
-
-Route23Text2: ; 51310 (14:5310)
- db $08 ; asm
- ld a, $5
- call Func_51346
- jp TextScriptEnd
-
-Route23Text3: ; 51319 (14:5319)
- db $08 ; asm
- ld a, $4
- call Func_51346
- jp TextScriptEnd
-
-Route23Text4: ; 51322 (14:5322)
- db $08 ; asm
- ld a, $3
- call Func_51346
- jp TextScriptEnd
-
-Route23Text5: ; 5132b (14:532b)
- db $08 ; asm
- ld a, $2
- call Func_51346
- jp TextScriptEnd
-
-Route23Text6: ; 51334 (14:5334)
- db $08 ; asm
- ld a, $1
- call Func_51346
- jp TextScriptEnd
-
-Route23Text7: ; 5133d (14:533d)
- db $8
- ld a, $0
- call Func_51346
- jp TextScriptEnd
-
-Func_51346: ; 51346 (14:5346)
- ld [wWhichTrade], a ; $cd3d
- call Func_5125d
- ld a, [wWhichTrade] ; $cd3d
- inc a
- ld c, a
- ld b, $2
- ld hl, W_OBTAINEDBADGES
- ld a, $10
- call Predef ; indirect jump to HandleBitArray (f666 (3:7666))
- ld a, c
- and a
- jr nz, .asm_5136e
- ld hl, VictoryRoadGuardText1 ; $538e
- call PrintText
- call Func_512d8
- ld a, $1
- ld [W_ROUTE23CURSCRIPT], a
- ret
-.asm_5136e
- ld hl, VictoryRoadGuardText2 ; $539e
- call PrintText
- ld a, [wWhichTrade] ; $cd3d
- ld c, a
- ld b, $1
- ld hl, $d7ed
- ld a, $10
- call Predef ; indirect jump to HandleBitArray (f666 (3:7666))
- ld a, $2
- ld [W_ROUTE23CURSCRIPT], a
- ret
-
-Func_51388: ; 51388 (14:5388)
- ld hl, VictoryRoadGuardText2
- jp PrintText
-
-VictoryRoadGuardText1: ; 5138e (14:538e)
- TX_FAR _VictoryRoadGuardText1
- db $08 ; asm
- ld a, (SFX_02_51 - SFX_Headers_02) / 3
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-VictoryRoadGuardText2: ; 5139e (14:539e)
- TX_FAR _VictoryRoadGuardText2
- db $b
- TX_FAR _UnnamedText_513a3
- db "@"
-
-Route23Text8: ; 513a8 (14:53a8)
- TX_FAR _Route23Text8
- db "@"
-
-Route24Script: ; 513ad (14:53ad)
- call EnableAutoTextBoxDrawing
- ld hl, Route24TrainerHeaders
- ld de, Route24ScriptPointers
- ld a, [W_ROUTE24CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE24CURSCRIPT], a
- ret
-
-Func_513c0: ; 513c0 (14:53c0)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE24CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route24ScriptPointers: ; 513cb (14:53cb)
- dw Route24Script0
- dw Func_324c
- dw EndTrainerBattle
- dw Route24Script3
- dw Route24Script4
-
-Route24Script0: ; 513d5 (14:53d5)
- ld a, [$d7ef]
- bit 0, a
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_5140e ; $540e
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d7f0
- bit 1, [hl]
- res 1, [hl]
- ret z
- ld a, $80
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- call Func_3486
- ld a, $4
- ld [W_ROUTE24CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CoordsData_5140e: ; 5140e (14:540e)
- db $0F,$0A,$FF
-
-Route24Script4: ; 51411 (14:5411)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- ld a, $0
- ld [W_ROUTE24CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route24Script3: ; 51422 (14:5422)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_513c0
- call UpdateSprites
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d7ef
- set 1, [hl]
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_ROUTE24CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route24TextPointers: ; 5144b (14:544b)
- dw Route24Text1
- dw Route24Text2
- dw Route24Text3
- dw Route24Text4
- dw Route24Text5
- dw Route24Text6
- dw Route24Text7
- dw Predef5CText
-
-Route24TrainerHeaders: ; 5145b (14:545b)
-Route24TrainerHeader0: ; 5145b (14:545b)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7ef ; flag's byte
- dw Route24BattleText1 ; 0x5571 TextBeforeBattle
- dw Route24AfterBattleText1 ; 0x557b TextAfterBattle
- dw Route24EndBattleText1 ; 0x5576 TextEndBattle
- dw Route24EndBattleText1 ; 0x5576 TextEndBattle
-
-Route24TrainerHeader2: ; 51467 (14:5467)
- db $3 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7ef ; flag's byte
- dw Route24BattleText2 ; 0x5580 TextBeforeBattle
- dw Route24AfterBattleText2 ; 0x558a TextAfterBattle
- dw Route24EndBattleText2 ; 0x5585 TextEndBattle
- dw Route24EndBattleText2 ; 0x5585 TextEndBattle
-
-Route24TrainerHeader3: ; 51473 (14:5473)
- db $4 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7ef ; flag's byte
- dw Route24BattleText3 ; 0x558f TextBeforeBattle
- dw Route24AfterBattleText3 ; 0x5599 TextAfterBattle
- dw Route24EndBattleText3 ; 0x5594 TextEndBattle
- dw Route24EndBattleText3 ; 0x5594 TextEndBattle
-
-Route24TrainerHeader4: ; 5147f (14:547f)
- db $5 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7ef ; flag's byte
- dw Route24BattleText4 ; 0x559e TextBeforeBattle
- dw Route24AfterBattleText4 ; 0x55a8 TextAfterBattle
- dw Route24EndBattleText4 ; 0x55a3 TextEndBattle
- dw Route24EndBattleText4 ; 0x55a3 TextEndBattle
-
-Route24TrainerHeader5: ; 5148b (14:548b)
- db $6 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7ef ; flag's byte
- dw Route24BattleText5 ; 0x55ad TextBeforeBattle
- dw Route24AfterBattleText5 ; 0x55b7 TextAfterBattle
- dw Route24EndBattleText5 ; 0x55b2 TextEndBattle
- dw Route24EndBattleText5 ; 0x55b2 TextEndBattle
-
-Route24TrainerHeader6: ; 51497 (14:5497)
- db $7 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7ef ; flag's byte
- dw Route24BattleText6 ; 0x55bc TextBeforeBattle
- dw Route24AfterBattleText6 ; 0x55c6 TextAfterBattle
- dw Route24EndBattleText6 ; 0x55c1 TextEndBattle
- dw Route24EndBattleText6 ; 0x55c1 TextEndBattle
-
- db $ff
-
-Route24Text1: ; 514a4 (14:54a4)
- db $8
- ld hl, $d7f0
- res 1, [hl]
- ld a, [$d7ef]
- bit 0, a
- jr nz, .asm_a03f5 ; 0x514af $48
- ld hl, UnnamedText_51510
- call PrintText
- ld bc, (NUGGET << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d7ef
- set 0, [hl]
- ld hl, UnnamedText_5151a
- call PrintText
- ld hl, UnnamedText_51526
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_5152b
- ld de, UnnamedText_5152b
- call PreBattleSaveRegisters
- ld a, [$ff8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $3
- ld [W_ROUTE24CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jp TextScriptEnd
-.asm_a03f5 ; 0x514f9
- ld hl, UnnamedText_51530
- call PrintText
- jp TextScriptEnd
-.BagFull
- ld hl, UnnamedText_51521
- call PrintText
- ld hl, $d7f0
- set 1, [hl]
- jp TextScriptEnd
-
-UnnamedText_51510: ; 51510 (14:5510)
- TX_FAR _UnnamedText_51510 ; 0x92721
- db $0B
- TX_FAR _UnnamedText_51515 ; 0x92755
- db "@"
-
-UnnamedText_5151a: ; 5151a (14:551a)
- TX_FAR _UnnamedText_5151a ; 0x92779
- db $0B, $6, "@"
-
-UnnamedText_51521: ; 51521 (14:5521)
- TX_FAR _UnnamedText_51521
- db "@"
-
-UnnamedText_51526: ; 51526 (14:5526)
- TX_FAR _UnnamedText_51526
- db "@"
-
-UnnamedText_5152b: ; 5152b (14:552b)
- TX_FAR _UnnamedText_5152b
- db "@"
-
-UnnamedText_51530: ; 51530 (14:5530)
- TX_FAR _UnnamedText_51530
- db "@"
-
-Route24Text2: ; 51535 (14:5535)
- db $08 ; asm
- ld hl, Route24TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text3: ; 5153f (14:553f)
- db $08 ; asm
- ld hl, Route24TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text4: ; 51549 (14:5549)
- db $08 ; asm
- ld hl, Route24TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text5: ; 51553 (14:5553)
- db $08 ; asm
- ld hl, Route24TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text6: ; 5155d (14:555d)
- db $08 ; asm
- ld hl, Route24TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text7: ; 51567 (14:5567)
- db $08 ; asm
- ld hl, Route24TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24BattleText1: ; 51571 (14:5571)
- TX_FAR _Route24BattleText1
- db "@"
-
-Route24EndBattleText1: ; 51576 (14:5576)
- TX_FAR _Route24EndBattleText1
- db "@"
-
-Route24AfterBattleText1: ; 5157b (14:557b)
- TX_FAR _Route24AfterBattleText1
- db "@"
+INCLUDE "scripts/saffroncity.asm"
-Route24BattleText2: ; 51580 (14:5580)
- TX_FAR _Route24BattleText2
- db "@"
+INCLUDE "scripts/route20.asm"
-Route24EndBattleText2: ; 51585 (14:5585)
- TX_FAR _Route24EndBattleText2
- db "@"
+INCLUDE "scripts/route22.asm"
-Route24AfterBattleText2: ; 5158a (14:558a)
- TX_FAR _Route24AfterBattleText2
- db "@"
+INCLUDE "scripts/route23.asm"
-Route24BattleText3: ; 5158f (14:558f)
- TX_FAR _Route24BattleText3
- db "@"
+INCLUDE "scripts/route24.asm"
-Route24EndBattleText3: ; 51594 (14:5594)
- TX_FAR _Route24EndBattleText3
- db "@"
+INCLUDE "scripts/route25.asm"
-Route24AfterBattleText3: ; 51599 (14:5599)
- TX_FAR _Route24AfterBattleText3
- db "@"
+INCLUDE "data/mapHeaders/victoryroad2.asm"
-Route24BattleText4: ; 5159e (14:559e)
- TX_FAR _Route24BattleText4
- db "@"
+INCLUDE "scripts/victoryroad2.asm"
-Route24EndBattleText4: ; 515a3 (14:55a3)
- TX_FAR _Route24EndBattleText4
- db "@"
-
-Route24AfterBattleText4: ; 515a8 (14:55a8)
- TX_FAR _Route24AfterBattleText4
- db "@"
-
-Route24BattleText5: ; 515ad (14:55ad)
- TX_FAR _Route24BattleText5
- db "@"
-
-Route24EndBattleText5: ; 515b2 (14:55b2)
- TX_FAR _Route24EndBattleText5
- db "@"
-
-Route24AfterBattleText5: ; 515b7 (14:55b7)
- TX_FAR _Route24AfterBattleText5
- db "@"
-
-Route24BattleText6: ; 515bc (14:55bc)
- TX_FAR _Route24BattleText6
- db "@"
-
-Route24EndBattleText6: ; 515c1 (14:55c1)
- TX_FAR _Route24EndBattleText6
- db "@"
-
-Route24AfterBattleText6: ; 515c6 (14:55c6)
- TX_FAR _Route24AfterBattleText6
- db "@"
-
-Route25Script: ; 515cb (14:55cb)
- call Route25Script_515e1
- call EnableAutoTextBoxDrawing
- ld hl, Route25TrainerHeaders
- ld de, Route25ScriptPointers
- ld a, [W_ROUTE25CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE25CURSCRIPT], a
- ret
-
-Route25Script_515e1: ; 515e1 (14:55e1)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- ret z
- ld hl, $d7f2
- bit 7, [hl]
- ret nz
- bit 5, [hl]
- jr nz, .asm_515ff
- res 6, [hl]
- ld a, $61
- ld [$cc4d], a
- ld a, $15
- jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
-.asm_515ff
- bit 4, [hl]
- ret z
- set 7, [hl]
- ld a, $24
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- ld a, $62
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- ld a, $63
- ld [$cc4d], a
- ld a, $15
- jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
-
-Route25ScriptPointers: ; 51622 (14:5622)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route25TextPointers: ; 51628 (14:5628)
- dw Route25Text1
- dw Route25Text2
- dw Route25Text3
- dw Route25Text4
- dw Route25Text5
- dw Route25Text6
- dw Route25Text7
- dw Route25Text8
- dw Route25Text9
- dw Predef5CText
- dw Route25Text11
-
-Route25TrainerHeaders: ; 5163e (14:563e)
-Route25TrainerHeader0: ; 5163e (14:563e)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText1 ; 0x5705 TextBeforeBattle
- dw Route25AfterBattleText1 ; 0x570f TextAfterBattle
- dw Route25EndBattleText1 ; 0x570a TextEndBattle
- dw Route25EndBattleText1 ; 0x570a TextEndBattle
-
-Route25TrainerHeader2: ; 5164a (14:564a)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText2 ; 0x5714 TextBeforeBattle
- dw Route25AfterBattleText2 ; 0x571e TextAfterBattle
- dw Route25EndBattleText2 ; 0x5719 TextEndBattle
- dw Route25EndBattleText2 ; 0x5719 TextEndBattle
-
-Route25TrainerHeader3: ; 51656 (14:5656)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText3 ; 0x5723 TextBeforeBattle
- dw Route25AfterBattleText3 ; 0x572d TextAfterBattle
- dw Route25EndBattleText3 ; 0x5728 TextEndBattle
- dw Route25EndBattleText3 ; 0x5728 TextEndBattle
-
-Route25TrainerHeader4: ; 51662 (14:5662)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText4 ; 0x5732 TextBeforeBattle
- dw Route25AfterBattleText4 ; 0x573c TextAfterBattle
- dw Route25EndBattleText4 ; 0x5737 TextEndBattle
- dw Route25EndBattleText4 ; 0x5737 TextEndBattle
-
-Route25TrainerHeader5: ; 5166e (14:566e)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText5 ; 0x5741 TextBeforeBattle
- dw Route25AfterBattleText5 ; 0x574b TextAfterBattle
- dw Route25EndBattleText5 ; 0x5746 TextEndBattle
- dw Route25EndBattleText5 ; 0x5746 TextEndBattle
-
-Route25TrainerHeader6: ; 5167a (14:567a)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText6 ; 0x5750 TextBeforeBattle
- dw Route25AfterBattleText6 ; 0x575a TextAfterBattle
- dw Route25EndBattleText6 ; 0x5755 TextEndBattle
- dw Route25EndBattleText6 ; 0x5755 TextEndBattle
-
-Route25TrainerHeader7: ; 51686 (14:5686)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText7 ; 0x575f TextBeforeBattle
- dw Route25AfterBattleText7 ; 0x5769 TextAfterBattle
- dw Route25EndBattleText7 ; 0x5764 TextEndBattle
- dw Route25EndBattleText7 ; 0x5764 TextEndBattle
-
-Route25TrainerHeader8: ; 51692 (14:5692)
- db $8 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText8 ; 0x576e TextBeforeBattle
- dw Route25AfterBattleText8 ; 0x5778 TextAfterBattle
- dw Route25EndBattleText8 ; 0x5773 TextEndBattle
- dw Route25EndBattleText8 ; 0x5773 TextEndBattle
-
-Route25TrainerHeader9: ; 5169e (14:569e)
- db $9 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7f1 ; flag's byte
- dw Route25BattleText9 ; 0x577d TextBeforeBattle
- dw Route25AfterBattleText9 ; 0x5787 TextAfterBattle
- dw Route25EndBattleText9 ; 0x5782 TextEndBattle
- dw Route25EndBattleText9 ; 0x5782 TextEndBattle
-
- db $ff
-
-Route25Text1: ; 516ab (14:56ab)
- db $08 ; asm
- ld hl, Route25TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text2: ; 516b5 (14:56b5)
- db $08 ; asm
- ld hl, Route25TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text3: ; 516bf (14:56bf)
- db $08 ; asm
- ld hl, Route25TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text4: ; 516c9 (14:56c9)
- db $08 ; asm
- ld hl, Route25TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text5: ; 516d3 (14:56d3)
- db $08 ; asm
- ld hl, Route25TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text6: ; 516dd (14:56dd)
- db $08 ; asm
- ld hl, Route25TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text7: ; 516e7 (14:56e7)
- db $08 ; asm
- ld hl, Route25TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text8: ; 516f1 (14:56f1)
- db $08 ; asm
- ld hl, Route25TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text9: ; 516fb (14:56fb)
- db $08 ; asm
- ld hl, Route25TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25BattleText1: ; 51705 (14:5705)
- TX_FAR _Route25BattleText1
- db "@"
-
-Route25EndBattleText1: ; 5170a (14:570a)
- TX_FAR _Route25EndBattleText1
- db "@"
-
-Route25AfterBattleText1: ; 5170f (14:570f)
- TX_FAR _Route25AfterBattleText1
- db "@"
-
-Route25BattleText2: ; 51714 (14:5714)
- TX_FAR _Route25BattleText2
- db "@"
-
-Route25EndBattleText2: ; 51719 (14:5719)
- TX_FAR _Route25EndBattleText2
- db "@"
-
-Route25AfterBattleText2: ; 5171e (14:571e)
- TX_FAR _Route25AfterBattleText2
- db "@"
-
-Route25BattleText3: ; 51723 (14:5723)
- TX_FAR _Route25BattleText3
- db "@"
-
-Route25EndBattleText3: ; 51728 (14:5728)
- TX_FAR _Route25EndBattleText3
- db "@"
-
-Route25AfterBattleText3: ; 5172d (14:572d)
- TX_FAR _Route25AfterBattleText3
- db "@"
-
-Route25BattleText4: ; 51732 (14:5732)
- TX_FAR _Route25BattleText4
- db "@"
-
-Route25EndBattleText4: ; 51737 (14:5737)
- TX_FAR _Route25EndBattleText4
- db "@"
-
-Route25AfterBattleText4: ; 5173c (14:573c)
- TX_FAR _Route25AfterBattleText4
- db "@"
-
-Route25BattleText5: ; 51741 (14:5741)
- TX_FAR _Route25BattleText5
- db "@"
-
-Route25EndBattleText5: ; 51746 (14:5746)
- TX_FAR _Route25EndBattleText5
- db "@"
-
-Route25AfterBattleText5: ; 5174b (14:574b)
- TX_FAR _Route25AfterBattleText5
- db "@"
-
-Route25BattleText6: ; 51750 (14:5750)
- TX_FAR _Route25BattleText6
- db "@"
-
-Route25EndBattleText6: ; 51755 (14:5755)
- TX_FAR _Route25EndBattleText6
- db "@"
-
-Route25AfterBattleText6: ; 5175a (14:575a)
- TX_FAR _Route25AfterBattleText6
- db "@"
-
-Route25BattleText7: ; 5175f (14:575f)
- TX_FAR _Route25BattleText7
- db "@"
-
-Route25EndBattleText7: ; 51764 (14:5764)
- TX_FAR _Route25EndBattleText7
- db "@"
-
-Route25AfterBattleText7: ; 51769 (14:5769)
- TX_FAR _Route25AfterBattleText7
- db "@"
-
-Route25BattleText8: ; 5176e (14:576e)
- TX_FAR _Route25BattleText8
- db "@"
-
-Route25EndBattleText8: ; 51773 (14:5773)
- TX_FAR _Route25EndBattleText8
- db "@"
-
-Route25AfterBattleText8: ; 51778 (14:5778)
- TX_FAR _Route25AfterBattleText8
- db "@"
-
-Route25BattleText9: ; 5177d (14:577d)
- TX_FAR _Route25BattleText9
- db "@"
-
-Route25EndBattleText9: ; 51782 (14:5782)
- TX_FAR _Route25EndBattleText9
- db "@"
-
-Route25AfterBattleText9: ; 51787 (14:5787)
- TX_FAR _Route25AfterBattleText9
- db "@"
-
-Route25Text11: ; 5178c (14:578c)
- TX_FAR _Route25Text11
- db "@"
-
-VictoryRoad2_h: ; 0x51791 to 0x5179d (12 bytes) (id=194)
- db CAVERN ; tileset
- db VICTORY_ROAD_2_HEIGHT, VICTORY_ROAD_2_WIDTH ; dimensions (y, x)
- dw VictoryRoad2Blocks, VictoryRoad2TextPointers, VictoryRoad2Script ; blocks, texts, scripts
- db $00 ; connections
- dw VictoryRoad2Object ; objects
-
-VictoryRoad2Script: ; 5179d (14:579d)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- call nz, VictoryRoad2Script_517c4
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- call nz, Func_517c9
- call EnableAutoTextBoxDrawing
- ld hl, VictoryRoad2TrainerHeaders
- ld de, VictoryRoad2ScriptPointers
- ld a, [W_VICTORYROAD2CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_VICTORYROAD2CURSCRIPT], a
- ret
-
-VictoryRoad2Script_517c4: ; 517c4 (14:57c4)
- ld hl, $d869
- res 7, [hl]
-
-Func_517c9: ; 517c9 (14:57c9)
- ld a, [$d7ee]
- bit 0, a
- jr z, .asm_517da
- push af
- ld a, $15
- ld bc, $403
- call Func_517e2
- pop af
-.asm_517da
- bit 7, a
- ret z
- ld a, $1d
- ld bc, $70b
-
-Func_517e2: ; 517e2 (14:57e2)
- ld [$d09f], a
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- ret
-
-VictoryRoad2ScriptPointers: ; 517eb (14:57eb)
- dw VictoryRoad2Script0
- dw Func_324c
- dw EndTrainerBattle
-
-VictoryRoad2Script0: ; 517f1 (14:57f1)
- ld hl, CoordsData_51816 ; $5816
- call CheckBoulderCoords
- jp nc, CheckFightingMapTrainers
- ld hl, $d7ee
- ld a, [wWhichTrade] ; $cd3d
- cp $2
- jr z, .asm_5180b
- bit 0, [hl]
- set 0, [hl]
- ret nz
- jr .asm_51810
-.asm_5180b
- bit 7, [hl]
- set 7, [hl]
- ret nz
-.asm_51810
- ld hl, $d126
- set 5, [hl]
- ret
-
-CoordsData_51816: ; 51816 (14:5816)
- db $10,$01
- db $10,$09
- db $FF
-
-VictoryRoad2TextPointers: ; 5181b (14:581b)
- dw VictoryRoad2Text1
- dw VictoryRoad2Text2
- dw VictoryRoad2Text3
- dw VictoryRoad2Text4
- dw VictoryRoad2Text5
- dw VictoryRoad2Text6
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-VictoryRoad2TrainerHeaders: ; 51835 (14:5835)
-VictoryRoad2TrainerHeader0: ; 51835 (14:5835)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7ee ; flag's byte
- dw VictoryRoad2BattleText1 ; 0x58ca TextBeforeBattle
- dw VictoryRoad2AfterBattleText1 ; 0x58d4 TextAfterBattle
- dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle
- dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle
-
-VictoryRoad2TrainerHeader2: ; 51841 (14:5841)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7ee ; flag's byte
- dw VictoryRoad2BattleText2 ; 0x58d9 TextBeforeBattle
- dw VictoryRoad2AfterBattleText2 ; 0x58e3 TextAfterBattle
- dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle
- dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle
-
-VictoryRoad2TrainerHeader3: ; 5184d (14:584d)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7ee ; flag's byte
- dw VictoryRoad2BattleText3 ; 0x58e8 TextBeforeBattle
- dw VictoryRoad2AfterBattleText3 ; 0x58f2 TextAfterBattle
- dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle
- dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle
-
-VictoryRoad2TrainerHeader4: ; 51859 (14:5859)
- db $4 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7ee ; flag's byte
- dw VictoryRoad2BattleText4 ; 0x58f7 TextBeforeBattle
- dw VictoryRoad2AfterBattleText4 ; 0x5901 TextAfterBattle
- dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle
- dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle
-
-VictoryRoad2TrainerHeader5: ; 51865 (14:5865)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7ee ; flag's byte
- dw VictoryRoad2BattleText5 ; 0x5906 TextBeforeBattle
- dw VictoryRoad2AfterBattleText5 ; 0x5910 TextAfterBattle
- dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle
- dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle
-
-VictoryRoad2TrainerHeader6: ; 51871 (14:5871)
- db $6 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7ee ; flag's byte
- dw VictoryRoad2BattleText6 ; 0x58ba TextBeforeBattle
- dw VictoryRoad2BattleText6 ; 0x58ba TextAfterBattle
- dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle
- dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle
-
- db $ff
-
-VictoryRoad2Text1: ; 5187e (14:587e)
- db $08 ; asm
- ld hl, VictoryRoad2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text2: ; 51888 (14:5888)
- db $08 ; asm
- ld hl, VictoryRoad2TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text3: ; 51892 (14:5892)
- db $08 ; asm
- ld hl, VictoryRoad2TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text4: ; 5189c (14:589c)
- db $08 ; asm
- ld hl, VictoryRoad2TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text5: ; 518a6 (14:58a6)
- db $08 ; asm
- ld hl, VictoryRoad2TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text6: ; 518b0 (14:58b0)
- db $08 ; asm
- ld hl, VictoryRoad2TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2BattleText6: ; 518ba (14:58ba)
- TX_FAR _VictoryRoad2BattleText6 ; 0x8d06e
- db $8
- ld a, MOLTRES
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-VictoryRoad2BattleText1: ; 518ca (14:58ca)
- TX_FAR _VictoryRoad2BattleText1
- db "@"
-
-VictoryRoad2EndBattleText1: ; 518cf (14:58cf)
- TX_FAR _VictoryRoad2EndBattleText1
- db "@"
-
-VictoryRoad2AfterBattleText1: ; 518d4 (14:58d4)
- TX_FAR _VictoryRoad2AfterBattleText1
- db "@"
-
-VictoryRoad2BattleText2: ; 518d9 (14:58d9)
- TX_FAR _VictoryRoad2BattleText2
- db "@"
-
-VictoryRoad2EndBattleText2: ; 518de (14:58de)
- TX_FAR _VictoryRoad2EndBattleText2
- db "@"
-
-VictoryRoad2AfterBattleText2: ; 518e3 (14:58e3)
- TX_FAR _VictoryRoad2AfterBattleText2
- db "@"
-
-VictoryRoad2BattleText3: ; 518e8 (14:58e8)
- TX_FAR _VictoryRoad2BattleText3
- db "@"
-
-VictoryRoad2EndBattleText3: ; 518ed (14:58ed)
- TX_FAR _VictoryRoad2EndBattleText3
- db "@"
-
-VictoryRoad2AfterBattleText3: ; 518f2 (14:58f2)
- TX_FAR _VictoryRoad2AfterBattleText3
- db "@"
-
-VictoryRoad2BattleText4: ; 518f7 (14:58f7)
- TX_FAR _VictoryRoad2BattleText4
- db "@"
-
-VictoryRoad2EndBattleText4: ; 518fc (14:58fc)
- TX_FAR _VictoryRoad2EndBattleText4
- db "@"
-
-VictoryRoad2AfterBattleText4: ; 51901 (14:5901)
- TX_FAR _VictoryRoad2AfterBattleText4
- db "@"
-
-VictoryRoad2BattleText5: ; 51906 (14:5906)
- TX_FAR _VictoryRoad2BattleText5
- db "@"
-
-VictoryRoad2EndBattleText5: ; 5190b (14:590b)
- TX_FAR _VictoryRoad2EndBattleText5
- db "@"
-
-VictoryRoad2AfterBattleText5: ; 51910 (14:5910)
- TX_FAR _VictoryRoad2AfterBattleText5
- db "@"
-
-VictoryRoad2Object: ; 0x51915 (size=154)
- db $7d ; border tile
-
- db $7 ; warps
- db $8, $0, $2, VICTORY_ROAD_1
- db $7, $1d, $3, $ff
- db $8, $1d, $3, $ff
- db $7, $17, $0, VICTORY_ROAD_3
- db $e, $19, $2, VICTORY_ROAD_3
- db $7, $1b, $1, VICTORY_ROAD_3
- db $1, $1, $3, VICTORY_ROAD_3
-
- db $0 ; signs
-
- db $d ; people
- db SPRITE_HIKER, $9 + 4, $c + 4, $ff, $d2, $41, BLACKBELT + $C8, $9 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $15 + 4, $ff, $d2, $42, JUGGLER + $C8, $2 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $8 + 4, $13 + 4, $ff, $d0, $43, TAMER + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $d0, $44, POKEMANIAC + $C8, $6 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $3 + 4, $1a + 4, $ff, $d2, $45, JUGGLER + $C8, $5 ; trainer
- db SPRITE_BIRD, $5 + 4, $b + 4, $ff, $d1, $46, MOLTRES, 50 ; trainer
- db SPRITE_BALL, $5 + 4, $1b + 4, $ff, $ff, $87, TM_17 ; item
- db SPRITE_BALL, $9 + 4, $12 + 4, $ff, $ff, $88, FULL_HEAL ; item
- db SPRITE_BALL, $b + 4, $9 + 4, $ff, $ff, $89, TM_05 ; item
- db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $8a, GUARD_SPEC_ ; item
- db SPRITE_BOULDER, $e + 4, $4 + 4, $ff, $10, $b ; person
- db SPRITE_BOULDER, $5 + 4, $5 + 4, $ff, $10, $c ; person
- db SPRITE_BOULDER, $10 + 4, $17 + 4, $ff, $10, $d ; person
-
- ; warp-to
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $0 ; VICTORY_ROAD_1
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1d
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $1d
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $17 ; VICTORY_ROAD_3
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $e, $19 ; VICTORY_ROAD_3
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1b ; VICTORY_ROAD_3
- EVENT_DISP VICTORY_ROAD_2_WIDTH, $1, $1 ; VICTORY_ROAD_3
+INCLUDE "data/mapObjects/victoryroad2.asm"
VictoryRoad2Blocks: ; 519af (14:59af)
INCBIN "maps/victoryroad2.blk"
-MtMoon2_h: ; 0x51a36 to 0x51a42 (12 bytes) (id=60)
- db CAVERN ; tileset
- db MT_MOON_2_HEIGHT, MT_MOON_2_WIDTH ; dimensions (y, x)
- dw MtMoon2Blocks, MtMoon2TextPointers, MtMoon2Script ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoon2Object ; objects
+INCLUDE "data/mapHeaders/mtmoon2.asm"
-MtMoon2Script: ; 51a42 (14:5a42)
- call EnableAutoTextBoxDrawing
- ret
-
-MtMoon2TextPointers: ; 51a46 (14:5a46)
- dw MtMoonText1
-
-MtMoonText1: ; 51a48 (14:5a48)
- TX_FAR _UnnamedText_51a48
- db "@"
+INCLUDE "scripts/mtmoon2.asm"
-MtMoon2Object: ; 0x51a4d (size=68)
- db $3 ; border tile
-
- db $8 ; warps
- db $5, $5, $2, MT_MOON_1
- db $b, $11, $0, MT_MOON_3
- db $9, $19, $3, MT_MOON_1
- db $f, $19, $4, MT_MOON_1
- db $11, $15, $1, MT_MOON_3
- db $1b, $d, $2, MT_MOON_3
- db $3, $17, $3, MT_MOON_3
- db $3, $1b, $2, $ff
-
- db $0 ; signs
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP MT_MOON_2_WIDTH, $5, $5 ; MT_MOON_1
- EVENT_DISP MT_MOON_2_WIDTH, $b, $11 ; MT_MOON_3
- EVENT_DISP MT_MOON_2_WIDTH, $9, $19 ; MT_MOON_1
- EVENT_DISP MT_MOON_2_WIDTH, $f, $19 ; MT_MOON_1
- EVENT_DISP MT_MOON_2_WIDTH, $11, $15 ; MT_MOON_3
- EVENT_DISP MT_MOON_2_WIDTH, $1b, $d ; MT_MOON_3
- EVENT_DISP MT_MOON_2_WIDTH, $3, $17 ; MT_MOON_3
- EVENT_DISP MT_MOON_2_WIDTH, $3, $1b
+INCLUDE "data/mapObjects/mtmoon2.asm"
MtMoon2Blocks: ; 51a91 (14:5a91)
INCBIN "maps/mtmoon2.blk"
-SilphCo7_h: ; 0x51b55 to 0x51b61 (12 bytes) (id=212)
- db FACILITY ; tileset
- db SILPH_CO_7F_HEIGHT, SILPH_CO_7F_WIDTH ; dimensions (y, x)
- dw SilphCo7Blocks, SilphCo7TextPointers, SilphCo7Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo7Object ; objects
+INCLUDE "data/mapHeaders/silphco7.asm"
-SilphCo7Script: ; 51b61 (14:5b61)
- call SilphCo7Script_51b77
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo7TrainerHeaders
- ld de, SilphCo7ScriptPointers
- ld a, [W_SILPHCO7CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO7CURSCRIPT], a
- ret
+INCLUDE "scripts/silphco7.asm"
-SilphCo7Script_51b77: ; 51b77 (14:5b77)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_51bc1 ; $5bc1
- call Func_51bc8
- call Func_51bf4
- ld a, [$d830]
- bit 4, a
- jr nz, .asm_51b9e
- push af
- ld a, $54
- ld [$d09f], a
- ld bc, $305
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- pop af
-.asm_51b9e
- bit 5, a
- jr nz, .asm_51bb1
- push af
- ld a, $54
- ld [$d09f], a
- ld bc, $20a
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- pop af
-.asm_51bb1
- bit 6, a
- ret nz
- ld a, $54
- ld [$d09f], a
- ld bc, $60a
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-DataTable_51bc1: ; 51bc1 (14:5bc1)
- db $03,$05,$02,$0A,$06,$0A,$FF
-
-Func_51bc8: ; 51bc8 (14:5bc8)
- push hl
- ld hl, $d73f
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_51bd4
- ld a, [hli]
- cp $ff
- jr z, .asm_51bf0
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_51be5
- inc hl
- jr .asm_51bd4
-.asm_51be5
- ld a, [hli]
- cp c
- jr nz, .asm_51bd4
- ld hl, $d73f
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_51bf0
- xor a
- ld [$ffe0], a
- ret
-
-Func_51bf4: ; 51bf4 (14:5bf4)
- ld hl, $d830
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .asm_51c02
- set 4, [hl]
- ret
-.asm_51c02
- cp $2
- jr nz, .asm_51c09
- set 5, [hl]
- ret
-.asm_51c09
- set 6, [hl]
- ret
-
-Func_51c0c: ; 51c0c (14:5c0c)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
-
-Func_51c10: ; 51c10 (14:5c10)
- ld [W_SILPHCO7CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-SilphCo7ScriptPointers: ; 51c17 (14:5c17)
- dw SilphCo7Script0
- dw Func_324c
- dw EndTrainerBattle
- dw SilphCo7Script3
- dw SilphCo7Script4
- dw SilphCo7Script5
-
-SilphCo7Script0: ; 51c23 (14:5c23)
- ld a, [$d82f]
- bit 0, a
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_51c78
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $4
- ld [$d528], a
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call SetSpriteMovementBytesToFF
- ld de, MovementData_51c7d
- ld a, [wWhichTrade] ; $cd3d
- ld [$cf0d], a
- cp $1
- jr z, .asm_51c6c
- inc de
-.asm_51c6c
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call MoveSprite
- ld a, $3
- jp Func_51c10
-
-CoordsData_51c78: ; 51c78 (14:5c78)
- db $02,$03
- db $03,$03
- db $FF
-
-MovementData_51c7d: ; 51c7d (14:5c7d)
- db $40,$40,$40,$40,$FF
-
-SilphCo7Script3: ; 51c82 (14:5c82)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $d
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- call Delay3
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SilphCo7Text14 ; $5ec8
- ld de, UnnamedText_51ecd ; $5ecd
- call PreBattleSaveRegisters
- ld a, $f2
- ld [W_CUROPPONENT], a ; $d059
- ld a, [W_RIVALSTARTER] ; $d715
- cp $b1
- jr nz, .asm_51cb6
- ld a, $7
- jr .asm_51cc0
-.asm_51cb6
- cp $99
- jr nz, .asm_51cbe
- ld a, $8
- jr .asm_51cc0
-.asm_51cbe
- ld a, $9
-.asm_51cc0
- ld [W_TRAINERNO], a ; $d05d
- ld a, $4
- jp Func_51c10
-
-SilphCo7Script4: ; 51cc8 (14:5cc8)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_51c0c
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d82f
- set 0, [hl]
- ld a, $4
- ld [$d528], a
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- ld a, $4
- ld [$ff8d], a
- call Func_34a6
- ld a, $f
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld de, MovementData_51d1d
- ld a, [$cf0d]
- cp $1
- jr nz, .asm_51d0e
- ld de, MovementData_51d1a
-.asm_51d0e
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call MoveSprite
- ld a, $5
- jp Func_51c10
-
-MovementData_51d1a: ; 51d1a (14:5d1a)
- db $C0,$C0,$FF
-
-MovementData_51d1d: ; 51d1d (14:5d1d)
- db $80,$40,$40,$C0,$C0,$C0,$00,$FF
-
-SilphCo7Script5: ; 51d25 (14:5d25)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $a7
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- call Func_2307
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- jp Func_51c10
-
-SilphCo7TextPointers: ; 51d3f (14:5d3f)
- dw SilphCo7Text1
- dw SilphCo7Text2
- dw SilphCo7Text3
- dw SilphCo7Text4
- dw SilphCo7Text5
- dw SilphCo7Text6
- dw SilphCo7Text7
- dw SilphCo7Text8
- dw SilphCo7Text9
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw SilphCo7Text13
- dw SilphCo7Text14
- dw SilphCo7Text15
-
-SilphCo7TrainerHeaders: ; 51d5d (14:5d5d)
-SilphCo7TrainerHeader0: ; 51d5d (14:5d5d)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d82f ; flag's byte
- dw SilphCo7BattleText1 ; 0x5e5a TextBeforeBattle
- dw SilphCo7AfterBattleText1 ; 0x5e64 TextAfterBattle
- dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle
- dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle
-
-SilphCo7TrainerHeader2: ; 51d69 (14:5d69)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d82f ; flag's byte
- dw SilphCo7BattleText2 ; 0x5e73 TextBeforeBattle
- dw SilphCo7AfterBattleText2 ; 0x5e7d TextAfterBattle
- dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle
- dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle
-
-SilphCo7TrainerHeader3: ; 51d75 (14:5d75)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d82f ; flag's byte
- dw SilphCo7BattleText3 ; 0x5e8c TextBeforeBattle
- dw SilphCo7AfterBattleText3 ; 0x5e96 TextAfterBattle
- dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle
- dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle
-
-SilphCo7TrainerHeader4: ; 51d81 (14:5d81)
- db $8 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d82f ; flag's byte
- dw SilphCo7BattleText4 ; 0x5ea5 TextBeforeBattle
- dw SilphCo7AfterBattleText4 ; 0x5eaf TextAfterBattle
- dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle
- dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle
-
- db $ff
-
-SilphCo7Text1:
-; lapras guy
- db $08 ; asm
- ld a, [$d72e]
- bit 0, a ; got lapras?
- jr z, .givelapras
- ld a, [$d838]
- bit 7, a ; saved silph?
- jr nz, .savedsilph
- ld hl, .LaprasGuyText
- call PrintText
- jr .done
-.givelapras
- ld hl, .MeetLaprasGuyText
- call PrintText
- ld bc, (LAPRAS << 8) | 15
- call GivePokemon
- jr nc, .done
- ld a, [$ccd3]
- and a
- call z, WaitForTextScrollButtonPress
- call EnableAutoTextBoxDrawing
- ld hl, .HeresYourLaprasText
- call PrintText
- ld hl, $d72e
- set 0, [hl]
- jr .done
-.savedsilph
- ld hl, .LaprasGuySavedText
- call PrintText
-.done
- jp TextScriptEnd
-
-.MeetLaprasGuyText
- TX_FAR _MeetLaprasGuyText
- db "@"
-
-.HeresYourLaprasText
- TX_FAR _HeresYourLaprasText
- db "@"
-
-.LaprasGuyText
- TX_FAR _LaprasGuyText
- db "@"
-
-.LaprasGuySavedText
- TX_FAR _LaprasGuySavedText
- db "@"
-
-SilphCo7Text2:
- db $8
- ld a, [$d838]
- bit 7, a ; saved silph?
- jr nz, .savedsilph
- ld hl, .rockettext
- call PrintText
- jr .done
-.savedsilph
- ld hl, .savedtext
- call PrintText
-.done
- jp TextScriptEnd
-
-.rockettext
- TX_FAR _UnnamedText_51e00
- db "@"
-
-.savedtext
- TX_FAR _CanceledMasterBallText
- db "@"
-
-SilphCo7Text3:
- db $08 ; asm
- ld a, [$d838]
- bit 7, a ; saved silph?
- jr nz, .savedsilph
- ld hl, .rockettext
- call PrintText
- jr .done
-.savedsilph
- ld hl, .savedtext
- call PrintText
-.done
- jp TextScriptEnd
-
-.rockettext
- TX_FAR _UnnamedText_51e23
- db "@"
-
-.savedtext
- TX_FAR _UnnamedText_51e28
- db "@"
-
-SilphCo7Text4:
- db $08 ; asm
- ld a, [$d838]
- bit 7, a ; saved silph?
- jr nz, .savedsilph
- ld hl, .rockettext
- call PrintText
- jr .done
-.savedsilph
- ld hl, .savedtext
- call PrintText
-.done
- jp TextScriptEnd
-
-.rockettext
- TX_FAR _UnnamedText_51e46
- db "@"
-
-.savedtext
- TX_FAR _UnnamedText_51e4b
- db "@"
-
-SilphCo7Text5: ; 51e50 (14:5e50)
- db $08 ; asm
- ld hl, SilphCo7TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText1: ; 51e5a (14:5e5a)
- TX_FAR _SilphCo7BattleText1
- db "@"
-
-SilphCo7EndBattleText1: ; 51e5f (14:5e5f)
- TX_FAR _SilphCo7EndBattleText1
- db "@"
-
-SilphCo7AfterBattleText1: ; 51e64 (14:5e64)
- TX_FAR _SilphCo7AfterBattleText1
- db "@"
-
-SilphCo7Text6: ; 51e69 (14:5e69)
- db $08 ; asm
- ld hl, SilphCo7TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText2: ; 51e73 (14:5e73)
- TX_FAR _SilphCo7BattleText2
- db "@"
-
-SilphCo7EndBattleText2: ; 51e78 (14:5e78)
- TX_FAR _SilphCo7EndBattleText2
- db "@"
-
-SilphCo7AfterBattleText2: ; 51e7d (14:5e7d)
- TX_FAR _SilphCo7AfterBattleText2
- db "@"
-
-SilphCo7Text7: ; 51e82 (14:5e82)
- db $08 ; asm
- ld hl, SilphCo7TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText3: ; 51e8c (14:5e8c)
- TX_FAR _SilphCo7BattleText3
- db "@"
-
-SilphCo7EndBattleText3: ; 51e91 (14:5e91)
- TX_FAR _SilphCo7EndBattleText3
- db "@"
-
-SilphCo7AfterBattleText3: ; 51e96 (14:5e96)
- TX_FAR _SilphCo7AfterBattleText3
- db "@"
-
-SilphCo7Text8: ; 51e9b (14:5e9b)
- db $08 ; asm
- ld hl, SilphCo7TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText4: ; 51ea5 (14:5ea5)
- TX_FAR _SilphCo7BattleText4
- db "@"
-
-SilphCo7EndBattleText4: ; 51eaa (14:5eaa)
- TX_FAR _SilphCo7EndBattleText4
- db "@"
-
-SilphCo7AfterBattleText4: ; 51eaf (14:5eaf)
- TX_FAR _SilphCo7AfterBattleText4
- db "@"
-
-SilphCo7Text9: ; 51eb4 (14:5eb4)
- db $08 ; asm
- ld hl, UnnamedText_51ebe
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_51ebe: ; 51ebe (14:5ebe)
- TX_FAR _UnnamedText_51ebe
- db "@"
-
-SilphCo7Text13: ; 51ec3 (14:5ec3)
- TX_FAR _UnnamedText_51ec3
- db "@"
-
-SilphCo7Text14: ; 51ec8 (14:5ec8)
- TX_FAR _UnnamedText_51ec8
- db "@"
-
-UnnamedText_51ecd: ; 51ecd (14:5ecd)
- TX_FAR _UnnamedText_51ecd
- db "@"
-
-SilphCo7Text15: ; 51ed2 (14:5ed2)
- TX_FAR _UnnamedText_51ed2
- db "@"
-
-SilphCo7Object: ; 0x51ed7 (size=128)
- db $2e ; border tile
-
- db $6 ; warps
- db $0, $10, $1, SILPH_CO_8F
- db $0, $16, $0, SILPH_CO_6F
- db $0, $12, $0, SILPH_CO_ELEVATOR
- db $7, $5, $3, SILPH_CO_11F
- db $3, $5, $8, SILPH_CO_3F
- db $f, $15, $3, SILPH_CO_5F
-
- db $0 ; signs
-
- db $b ; people
- db SPRITE_LAPRAS_GIVER, $5 + 4, $1 + 4, $ff, $ff, $1 ; person
- db SPRITE_LAPRAS_GIVER, $d + 4, $d + 4, $ff, $d1, $2 ; person
- db SPRITE_LAPRAS_GIVER, $a + 4, $7 + 4, $ff, $ff, $3 ; person
- db SPRITE_ERIKA, $8 + 4, $a + 4, $ff, $ff, $4 ; person
- db SPRITE_ROCKET, $1 + 4, $d + 4, $ff, $d0, $45, ROCKET + $C8, $20 ; trainer
- db SPRITE_OAK_AIDE, $d + 4, $2 + 4, $ff, $d0, $46, SCIENTIST + $C8, $8 ; trainer
- db SPRITE_ROCKET, $2 + 4, $14 + 4, $ff, $d2, $47, ROCKET + $C8, $21 ; trainer
- db SPRITE_ROCKET, $e + 4, $13 + 4, $ff, $d3, $48, ROCKET + $C8, $22 ; trainer
- db SPRITE_BLUE, $7 + 4, $3 + 4, $ff, $d1, $9 ; person
- db SPRITE_BALL, $9 + 4, $1 + 4, $ff, $ff, $8a, CALCIUM ; item
- db SPRITE_BALL, $b + 4, $18 + 4, $ff, $ff, $8b, TM_03 ; item
-
- ; warp-to
- EVENT_DISP SILPH_CO_7F_WIDTH, $0, $10 ; SILPH_CO_8F
- EVENT_DISP SILPH_CO_7F_WIDTH, $0, $16 ; SILPH_CO_6F
- EVENT_DISP SILPH_CO_7F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_7F_WIDTH, $7, $5 ; SILPH_CO_11F
- EVENT_DISP SILPH_CO_7F_WIDTH, $3, $5 ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_7F_WIDTH, $f, $15 ; SILPH_CO_5F
+INCLUDE "data/mapObjects/silphco7.asm"
SilphCo7Blocks: ; 51f57 (14:5f57)
INCBIN "maps/silphco7.blk"
-Mansion2_h: ; 0x51fcc to 0x51fd8 (12 bytes) (id=214)
- db FACILITY ; tileset
- db MANSION_2_HEIGHT, MANSION_2_WIDTH ; dimensions (y, x)
- dw Mansion2Blocks, Mansion2TextPointers, Mansion2Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion2Object ; objects
-
-Mansion2Script: ; 51fd8 (14:5fd8)
- call Mansion2Script_51fee
- call EnableAutoTextBoxDrawing
- ld hl, Mansion2TrainerHeaders
- ld de, Mansion2ScriptPointers
- ld a, [W_MANSION2CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_MANSION2CURSCRIPT], a
- ret
-
-Mansion2Script_51fee: ; 51fee (14:5fee)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d796]
- bit 0, a
- jr nz, .asm_52016
- ld a, $e
- ld bc, $204
- call Func_5202f
- ld a, $54
- ld bc, $409
- call Func_5202f
- ld a, $5f
- ld bc, $b03
- call Func_5202f
- ret
-.asm_52016
- ld a, $5f
- ld bc, $204
- call Func_5202f
- ld a, $e
- ld bc, $409
- call Func_5202f
- ld a, $e
- ld bc, $b03
- call Func_5202f
- ret
-
-Func_5202f: ; 5202f (14:602f)
- ld [$d09f], a
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-Func_52037: ; 52037 (14:6037)
- ld a, [$c109]
- cp $4
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $5
- ld [H_SPRITEHEIGHT], a
- jp DisplayTextID
-
-Mansion2ScriptPointers: ; 52047 (14:6047)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Mansion2TextPointers: ; 5204d (14:604d)
- dw Mansion2Text1
- dw Predef5CText
- dw Mansion2Text3
- dw Mansion2Text4
- dw Mansion2Text5
-
-Mansion2TrainerHeaders: ; 52057 (14:6057)
-Mansion2TrainerHeader0: ; 52057 (14:6057)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d847 ; flag's byte
- dw Mansion2BattleText1 ; 0x606e TextBeforeBattle
- dw Mansion2AfterBattleText1 ; 0x6078 TextAfterBattle
- dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle
- dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle
-
- db $ff
-
-Mansion2Text1: ; 52064 (14:6064)
- db $08 ; asm
- ld hl, Mansion2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion2BattleText1: ; 5206e (14:606e)
- TX_FAR _Mansion2BattleText1
- db "@"
-
-Mansion2EndBattleText1: ; 52073 (14:6073)
- TX_FAR _Mansion2EndBattleText1
- db "@"
-
-Mansion2AfterBattleText1: ; 52078 (14:6078)
- TX_FAR _Mansion2AfterBattleText1
- db "@"
-
-Mansion2Text3: ; 5207d (14:607d)
- TX_FAR _Mansion2Text3
- db "@"
-
-Mansion2Text4: ; 52082 (14:6082)
- TX_FAR _Mansion2Text4
- db "@"
-
-Mansion3Text6: ; 52087 (14:6087)
-Mansion2Text5: ; 52087 (14:6087)
- db $8
- ld hl, UnnamedText_520c2
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_520b9 ; 0x52095 $22
- ld a, $1
- ld [$cc3c], a
- ld hl, $d126
- set 5, [hl]
- ld hl, UnnamedText_520c7
- call PrintText
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- ld hl, $d796
- bit 0, [hl]
- set 0, [hl]
- jr z, .asm_520bf ; 0x520b3 $a
- res 0, [hl]
- jr .asm_520bf ; 0x520b7 $6
-.asm_520b9
- ld hl, UnnamedText_520cc
- call PrintText
-.asm_520bf
- jp TextScriptEnd
-
-UnnamedText_520c2: ; 520c2 (14:60c2)
- TX_FAR _UnnamedText_520c2
- db "@"
-
-UnnamedText_520c7: ; 520c7 (14:60c7)
- TX_FAR _UnnamedText_520c7
- db "@"
-
-UnnamedText_520cc: ; 520cc (14:60cc)
- TX_FAR _UnnamedText_520cc
- db "@"
-
-Mansion2Object: ; 0x520d1 (size=63)
- db $1 ; border tile
+INCLUDE "data/mapHeaders/mansion2.asm"
- db $4 ; warps
- db $a, $5, $4, MANSION_1
- db $a, $7, $0, MANSION_3
- db $e, $19, $2, MANSION_3
- db $1, $6, $1, MANSION_3
+INCLUDE "scripts/mansion2.asm"
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $3 + 4, $fe, $2, $41, BURGLAR + $C8, $7 ; trainer
- db SPRITE_BALL, $7 + 4, $1c + 4, $ff, $ff, $82, CALCIUM ; item
- db SPRITE_BOOK_MAP_DEX, $2 + 4, $12 + 4, $ff, $ff, $3 ; person
- db SPRITE_BOOK_MAP_DEX, $16 + 4, $3 + 4, $ff, $ff, $4 ; person
-
- ; warp-to
- EVENT_DISP MANSION_2_WIDTH, $a, $5 ; MANSION_1
- EVENT_DISP MANSION_2_WIDTH, $a, $7 ; MANSION_3
- EVENT_DISP MANSION_2_WIDTH, $e, $19 ; MANSION_3
- EVENT_DISP MANSION_2_WIDTH, $1, $6 ; MANSION_3
+INCLUDE "data/mapObjects/mansion2.asm"
Mansion2Blocks: ; 52110 (14:6110)
INCBIN "maps/mansion2.blk"
-Mansion3_h: ; 0x521e2 to 0x521ee (12 bytes) (id=215)
- db FACILITY ; tileset
- db MANSION_3_HEIGHT, MANSION_3_WIDTH ; dimensions (y, x)
- dw Mansion3Blocks, Mansion3TextPointers, Mansion3Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion3Object ; objects
-
-Mansion3Script: ; 521ee (14:61ee)
- call Mansion3Script_52204
- call EnableAutoTextBoxDrawing
- ld hl, Mansion3TrainerHeader0
- ld de, Mansion3ScriptPointers
- ld a, [W_MANSION3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_MANSION3CURSCRIPT], a
- ret
-
-Mansion3Script_52204: ; 52204 (14:6204)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d796]
- bit 0, a
- jr nz, .asm_52224
- ld a, $e
- ld bc, $207
- call Func_5202f
- ld a, $5f
- ld bc, $507
- call Func_5202f
- ret
-.asm_52224
- ld a, $5f
- ld bc, $207
- call Func_5202f
- ld a, $e
- ld bc, $507
- call Func_5202f
- ret
-
-Mansion3ScriptPointers: ; 52235 (14:6235)
- dw Mansion3Script0
- dw Func_324c
- dw EndTrainerBattle
-
-Mansion3Script0: ; 5223b (14:623b)
- ld hl, CoordsData_52254
- call Func_5225b
- ld a, [$d71e]
- and a
- jp z, CheckFightingMapTrainers
- cp $3
- ld a, $a5
- jr nz, .asm_52250
- ld a, $d6
-.asm_52250
- ld [$d71d], a
- ret
-
-CoordsData_52254: ; 52254 (14:6254)
- db $0E,$10
- db $0E,$11
- db $0E,$13
- db $FF
-
-Func_5225b: ; 5225b (14:625b)
- xor a
- ld [$d71e], a
- ld a, [$d72d]
- bit 4, a
- ret nz
- call ArePlayerCoordsInArray
- ret nc
- ld a, [wWhichTrade] ; $cd3d
- ld [$d71e], a
- ld hl, $d72d
- set 4, [hl]
- ld hl, $d732
- set 4, [hl]
- ret
-
-Func_5227a: ; 5227a (14:627a)
- ld a, [$c109]
- cp $4
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-
-Mansion3TextPointers: ; 5228a (14:628a)
- dw Mansion3Text1
- dw Mansion3Text2
- dw Predef5CText
- dw Predef5CText
- dw Mansion3Text5
- dw Mansion3Text6
-
-Mansion3TrainerHeaders: ; 52296 (14:6296)
-Mansion3TrainerHeader0: ; 52296 (14:6296)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d849 ; flag's byte
- dw Mansion3BattleText1 ; 0x62c3 TextBeforeBattle
- dw Mansion3AfterBattleText1 ; 0x62cd TextAfterBattle
- dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle
- dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle
-
-Mansion3TrainerHeader2: ; 522a2 (14:62a2)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d849 ; flag's byte
- dw Mansion3BattleText2 ; 0x62d2 TextBeforeBattle
- dw Mansion3AfterBattleText2 ; 0x62dc TextAfterBattle
- dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle
- dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle
-
- db $ff
-
-Mansion3Text1: ; 522af (14:62af)
- db $08 ; asm
- ld hl, Mansion3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion3Text2: ; 522b9 (14:62b9)
- db $08 ; asm
- ld hl, Mansion3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion3BattleText1: ; 522c3 (14:62c3)
- TX_FAR _Mansion3BattleText1
- db "@"
-
-Mansion3EndBattleText1: ; 522c8 (14:62c8)
- TX_FAR _Mansion3EndBattleText1
- db "@"
-
-Mansion3AfterBattleText1: ; 522cd (14:62cd)
- TX_FAR _Mansion3AfterBattleText1
- db "@"
-
-Mansion3BattleText2: ; 522d2 (14:62d2)
- TX_FAR _Mansion3BattleText2
- db "@"
-
-Mansion3EndBattleText2: ; 522d7 (14:62d7)
- TX_FAR _Mansion3EndBattleText2
- db "@"
-
-Mansion3AfterBattleText2: ; 522dc (14:62dc)
- TX_FAR _Mansion3AfterBattleText2
- db "@"
-
-Mansion3Text5: ; 522e1 (14:62e1)
- TX_FAR _Mansion3Text5
- db "@"
-
-Mansion3Object: ; 0x522e6 (size=64)
- db $1 ; border tile
-
- db $3 ; warps
- db $a, $7, $1, MANSION_2
- db $1, $6, $3, MANSION_2
- db $e, $19, $2, MANSION_2
+INCLUDE "data/mapHeaders/mansion3.asm"
- db $0 ; signs
+INCLUDE "scripts/mansion3.asm"
- db $5 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $5 + 4, $fe, $2, $41, BURGLAR + $C8, $8 ; trainer
- db SPRITE_OAK_AIDE, $b + 4, $14 + 4, $ff, $d2, $42, SCIENTIST + $C8, $c ; trainer
- db SPRITE_BALL, $10 + 4, $1 + 4, $ff, $ff, $83, MAX_POTION ; item
- db SPRITE_BALL, $5 + 4, $19 + 4, $ff, $ff, $84, IRON ; item
- db SPRITE_BOOK_MAP_DEX, $c + 4, $6 + 4, $ff, $ff, $5 ; person
-
- ; warp-to
- EVENT_DISP MANSION_3_WIDTH, $a, $7 ; MANSION_2
- EVENT_DISP MANSION_3_WIDTH, $1, $6 ; MANSION_2
- EVENT_DISP MANSION_3_WIDTH, $e, $19 ; MANSION_2
+INCLUDE "data/mapObjects/mansion3.asm"
Mansion3Blocks: ; 52326 (14:6326)
INCBIN "maps/mansion3.blk"
-Mansion4_h: ; 0x523ad to 0x523b9 (12 bytes) (id=216)
- db FACILITY ; tileset
- db MANSION_4_HEIGHT, MANSION_4_WIDTH ; dimensions (y, x)
- dw Mansion4Blocks, Mansion4TextPointers, Mansion4Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion4Object ; objects
+INCLUDE "data/mapHeaders/mansion4.asm"
-Mansion4Script: ; 523b9 (14:63b9)
- call Mansion4Script_523cf
- call EnableAutoTextBoxDrawing
- ld hl, Mansion4TrainerHeader0
- ld de, Mansion4ScriptPointers
- ld a, [W_MANSION4CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_MANSION4CURSCRIPT], a
- ret
+INCLUDE "scripts/mansion4.asm"
-Mansion4Script_523cf: ; 523cf (14:63cf)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d796]
- bit 0, a
- jr nz, .asm_523ff
- ld a, $e
- ld bc, $80d
- call Func_5202f
- ld a, $e
- ld bc, $b06
- call Func_5202f
- ld a, $5f
- ld bc, $304
- call Func_5202f
- ld a, $54
- ld bc, $808
- call Func_5202f
- ret
-.asm_523ff
- ld a, $2d
- ld bc, $80d
- call Func_5202f
- ld a, $5f
- ld bc, $b06
- call Func_5202f
- ld a, $e
- ld bc, $304
- call Func_5202f
- ld a, $e
- ld bc, $808
- call Func_5202f
- ret
-
-Func_52420: ; 52420 (14:6420)
- ld a, [$c109]
- cp $4
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-
-Mansion4ScriptPointers: ; 52430 (14:6430)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Mansion4TextPointers: ; 52436 (14:6436)
- dw Mansion4Text1
- dw Mansion4Text2
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw Mansion4Text7
- dw Predef5CText
- dw Mansion3Text6
-
-Mansion4TrainerHeaders: ; 52448 (14:6448)
-Mansion4TrainerHeader0: ; 52448 (14:6448)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d84b ; flag's byte
- dw Mansion4BattleText1 ; 0x6475 TextBeforeBattle
- dw Mansion4AfterBattleText1 ; 0x647f TextAfterBattle
- dw Mansion4EndBattleText1 ; 0x647a TextEndBattle
- dw Mansion4EndBattleText1 ; 0x647a TextEndBattle
-
-Mansion4TrainerHeader2: ; 52454 (14:6454)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d84b ; flag's byte
- dw Mansion4BattleText2 ; 0x6484 TextBeforeBattle
- dw Mansion4AfterBattleText2 ; 0x648e TextAfterBattle
- dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle
- dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle
-
- db $ff
-
-Mansion4Text1: ; 52461 (14:6461)
- db $08 ; asm
- ld hl, Mansion4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion4Text2: ; 5246b (14:646b)
- db $08 ; asm
- ld hl, Mansion4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion4BattleText1: ; 52475 (14:6475)
- TX_FAR _Mansion4BattleText1
- db "@"
-
-Mansion4EndBattleText1: ; 5247a (14:647a)
- TX_FAR _Mansion4EndBattleText1
- db "@"
-
-Mansion4AfterBattleText1: ; 5247f (14:647f)
- TX_FAR _Mansion4AfterBattleText1
- db "@"
-
-Mansion4BattleText2: ; 52484 (14:6484)
- TX_FAR _Mansion4BattleText2
- db "@"
-
-Mansion4EndBattleText2: ; 52489 (14:6489)
- TX_FAR _Mansion4EndBattleText2
- db "@"
-
-Mansion4AfterBattleText2: ; 5248e (14:648e)
- TX_FAR _Mansion4AfterBattleText2
- db "@"
-
-Mansion4Text7: ; 52493 (14:6493)
- TX_FAR _Mansion4Text7
- db "@"
-
-Mansion4Object: ; 0x52498 (size=69)
- db $1 ; border tile
-
- db $1 ; warps
- db $16, $17, $5, MANSION_1
-
- db $0 ; signs
-
- db $8 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $17 + 4, $10 + 4, $ff, $ff, $41, BURGLAR + $C8, $9 ; trainer
- db SPRITE_OAK_AIDE, $b + 4, $1b + 4, $ff, $d0, $42, SCIENTIST + $C8, $d ; trainer
- db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $83, RARE_CANDY ; item
- db SPRITE_BALL, $16 + 4, $1 + 4, $ff, $ff, $84, FULL_RESTORE ; item
- db SPRITE_BALL, $19 + 4, $13 + 4, $ff, $ff, $85, TM_14 ; item
- db SPRITE_BALL, $4 + 4, $5 + 4, $ff, $ff, $86, TM_22 ; item
- db SPRITE_BOOK_MAP_DEX, $14 + 4, $10 + 4, $ff, $ff, $7 ; person
- db SPRITE_BALL, $d + 4, $5 + 4, $ff, $ff, $88, SECRET_KEY ; item
-
- ; warp-to
- EVENT_DISP MANSION_4_WIDTH, $16, $17 ; MANSION_1
+INCLUDE "data/mapObjects/mansion4.asm"
Mansion4Blocks: ; 524dd (14:64dd)
INCBIN "maps/mansion4.blk"
@@ -81253,20 +45669,20 @@ Func_52613: ; 52613 (14:6613)
ld c, $1e
call DelayFrames
callab Func_3fba8
- ld hl, Func_3fb6e
- ld b, BANK(Func_3fb6e)
+ ld hl, PrintMayNotAttackText
+ ld b, BANK(PrintMayNotAttackText)
jp Bankswitch
.asm_52659
ld c, $32
call DelayFrames
- ld hl, Func_3fb5e
- ld b, BANK(Func_3fb5e)
+ ld hl, PrintDidntAffectText
+ ld b, BANK(PrintDidntAffectText)
jp Bankswitch
.asm_52666
ld c, $32
call DelayFrames
- ld hl, Func_3dc51
- ld b, BANK(Func_3dc51)
+ ld hl, PrintDoesntAffectText
+ ld b, BANK(PrintDoesntAffectText)
jp Bankswitch
Func_52673: ; 52673 (14:6673)
@@ -81424,16 +45840,16 @@ CeladonPrizeMenu: ; 5271b (14:671b)
ret
RequireCoinCaseTextPtr: ; 5277e (14:677e)
- TX_FAR _RequireCoinCaseText ; 22:628E
+ TX_FAR _RequireCoinCaseText
db $0D
db "@"
ExchangeCoinsForPrizesTextPtr: ; 52784 (14:6784)
- TX_FAR _ExchangeCoinsForPrizesText ; 22:62A9
+ TX_FAR _ExchangeCoinsForPrizesText
db "@"
WhichPrizeTextPtr: ; 52789 (14:6789)
- TX_FAR _WhichPrizeText ; 22:62CD
+ TX_FAR _WhichPrizeText
db "@"
GetPrizeMenuId: ; 5278e (14:678e)
@@ -81536,75 +45952,7 @@ GetPrizeMenuId: ; 5278e (14:678e)
ld c,(1 << 7 | 2)
jp PrintBCDNumber
-PrizeDifferentMenuPtrs: ; 52843 (14:6843)
- dw PrizeMenuMon1Entries
- dw PrizeMenuMon1Cost
-
- dw PrizeMenuMon2Entries
- dw PrizeMenuMon2Cost
-
- dw PrizeMenuTMsEntries
- dw PrizeMenuTMsCost
-
-NoThanksText: ; 5284f (14:684f)
- db "NO THANKS@"
-
-PrizeMenuMon1Entries: ; 52859 (14:6859)
- db ABRA
- db CLEFAIRY
-IF _RED
- db NIDORINA
-ENDC
-IF _BLUE
- db NIDORINO
-ENDC
- db "@"
-PrizeMenuMon1Cost: ; 5285d (14:685d)
-IF _RED
- db $01,$80
- db $05,$00
-ENDC
-IF _BLUE
- db $01,$20
- db $07,$50
-ENDC
- db $12,$00
- db "@"
-
-PrizeMenuMon2Entries: ; 52864 (14:6864)
-IF _RED
- db DRATINI
- db SCYTHER
-ENDC
-IF _BLUE
- db PINSIR
- db DRATINI
-ENDC
- db PORYGON
- db "@"
-PrizeMenuMon2Cost: ; 52868 (14:6868)
-IF _RED
- db $28,$00
- db $55,$00
- db $99,$99
-ENDC
-IF _BLUE
- db $25,$00
- db $46,$00
- db $65,$00
-ENDC
- db "@"
-
-PrizeMenuTMsEntries: ; 5286f (14:686f)
- db TM_23
- db TM_15
- db TM_50
- db "@"
-PrizeMenuTMsCost: ; 52873 (14:6873)
- db $33,$00 ; 3300 Coins
- db $55,$00 ; 5500 Coins
- db $77,$00 ; 7700 Coins
- db "@"
+INCLUDE "data/prizes.asm"
PrintPrizePrice: ; 5287a (14:687a)
FuncCoord 11,0
@@ -81712,7 +46060,7 @@ HandlePrizeChoice: ; 528c6 (14:68c6)
ld hl,PrizeRoomBagIsFullTextPtr
jp PrintText
.NotEnoughCoins ; 14:6945
- ld hl,SorryNeedMoreCoinsTextPtr
+ ld hl,SorryNeedMoreCoinsText
jp PrintText
.PrintOhFineThen ; 14:694B
ld hl,OhFineThenTextPtr
@@ -81723,26 +46071,26 @@ UnknownData52951: ; 52951 (14:6951)
db $00,$01,$00,$01,$00,$01,$00,$00,$01
HereYouGoTextPtr: ; 5295a (14:695a)
- TX_FAR _HereYouGoText ; 22:62E7
+ TX_FAR _HereYouGoText
db $0D
db "@"
SoYouWantPrizeTextPtr: ; 52960 (14:6960)
- TX_FAR _SoYouWantPrizeText ; 22:62F6
+ TX_FAR _SoYouWantPrizeText
db "@"
-SorryNeedMoreCoinsTextPtr: ; 52965 (14:6965)
- TX_FAR _SorryNeedMoreCoins ; 22:630B
+SorryNeedMoreCoinsText: ; 52965 (14:6965)
+ TX_FAR _SorryNeedMoreCoinsText
db $0D
db "@"
PrizeRoomBagIsFullTextPtr: ; 5296b (14:696b)
- TX_FAR _OopsYouDontHaveEnoughRoomText ; 22:6329
+ TX_FAR _OopsYouDontHaveEnoughRoomText
db $0D
db "@"
OhFineThenTextPtr: ; 52971 (14:6971)
- TX_FAR _OhFineThenText; 22:634C
+ TX_FAR _OhFineThenText
db $0D ; wait keypress (A/B) without blink
db "@"
@@ -81761,25 +46109,7 @@ GetPrizeMonLevel: ; 52977 (14:6977)
ld [$D127],a
ret
-PrizeMonLevelDictionary: ; 5298a (14:698a)
-IF _RED
- db ABRA,9
- db CLEFAIRY,8
- db NIDORINA,17
-
- db DRATINI,18
- db SCYTHER,25
- db PORYGON,26
-ENDC
-IF _BLUE
- db ABRA,6
- db CLEFAIRY,12
- db NIDORINO,17
-
- db PINSIR,20
- db DRATINI,24
- db PORYGON,18
-ENDC
+INCLUDE "data/prize_mon_levels.asm"
Func_52996: ; 52996 (14:6996)
call EnableAutoTextBoxDrawing
@@ -81888,345 +46218,72 @@ IndigoPlateauHQText: ; 52a3d (14:6a3d)
SECTION "bank15",ROMX,BANK[$15]
-Route2_h: ; 54000 (15:4000)
- db 00 ; Tileset
- db ROUTE_2_HEIGHT,ROUTE_2_WIDTH ;Height,Width blocks (1 block = 4x4 tiles)
- dw Route2Blocks, Route2TextPointers, Route2Script
- db NORTH | SOUTH ;Connection Byte
- NORTH_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT, -3, 2, PEWTER_CITY_WIDTH - 4, PewterCityBlocks
- SOUTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks, ROUTE_2_WIDTH, ROUTE_2_HEIGHT
- dw Route2Object ;Object Data Pointer
-
-Route2Object: ; 0x54022 (size=72)
- db $f ; border tile
-
- db $6 ; warps
- db $9, $c, $0, DIGLETTS_CAVE_EXIT
- db $b, $3, $1, VIRIDIAN_FOREST_EXIT
- db $13, $f, $0, ROUTE_2_HOUSE
- db $23, $10, $1, ROUTE_2_GATE
- db $27, $f, $2, ROUTE_2_GATE
- db $2b, $3, $2, VIRIDIAN_FOREST_ENTRANCE
-
- db $2 ; signs
- db $41, $5, $3 ; Route2Text3
- db $b, $b, $4 ; Route2Text4
-
- db $2 ; people
- db SPRITE_BALL, $36 + 4, $d + 4, $ff, $ff, $81, MOON_STONE ; item
- db SPRITE_BALL, $2d + 4, $d + 4, $ff, $ff, $82, HP_UP ; item
-
- ; warp-to
- EVENT_DISP ROUTE_2_WIDTH, $9, $c ; DIGLETTS_CAVE_EXIT
- EVENT_DISP ROUTE_2_WIDTH, $b, $3 ; VIRIDIAN_FOREST_EXIT
- EVENT_DISP ROUTE_2_WIDTH, $13, $f ; ROUTE_2_HOUSE
- EVENT_DISP ROUTE_2_WIDTH, $23, $10 ; ROUTE_2_GATE
- EVENT_DISP ROUTE_2_WIDTH, $27, $f ; ROUTE_2_GATE
- EVENT_DISP ROUTE_2_WIDTH, $2b, $3 ; VIRIDIAN_FOREST_ENTRANCE
-
- ; unused
- EVENT_DISP $4, $7, $2
- db $12, $c7, $9, $7
- EVENT_DISP $4, $7, $2
- EVENT_DISP $4, $7, $2
- EVENT_DISP $4, $7, $2
+INCLUDE "data/mapHeaders/route2.asm"
+
+INCLUDE "data/mapObjects/route2.asm"
Route2Blocks: ; 5407e (15:407e)
INCBIN "maps/route2.blk"
-Route3_h: ; 0x541e6 to 0x54208 (34 bytes) (id=14)
- db OVERWORLD ; tileset
- db ROUTE_3_HEIGHT, ROUTE_3_WIDTH ; dimensions (y, x)
- dw Route3Blocks, Route3TextPointers, Route3Script ; blocks, texts, scripts
- db NORTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, ROUTE_4_HEIGHT, 25, 0, ROUTE_4_WIDTH - 32, Route4Blocks
- WEST_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, -3, 1, PEWTER_CITY_HEIGHT - 3, PewterCityBlocks, ROUTE_3_WIDTH
- dw Route3Object ; objects
-
-Route3Object: ; 0x54208 (size=77)
- db $2c ; border tile
-
- db $0 ; warps
-
- db $1 ; signs
- db $9, $3b, $a ; Route3Text10
-
- db $9 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $39 + 4, $ff, $ff, $1 ; person
- db SPRITE_BUG_CATCHER, $6 + 4, $a + 4, $ff, $d3, $42, BUG_CATCHER + $C8, $4 ; trainer
- db SPRITE_BUG_CATCHER, $4 + 4, $e + 4, $ff, $d0, $43, YOUNGSTER + $C8, $1 ; trainer
- db SPRITE_LASS, $9 + 4, $10 + 4, $ff, $d2, $44, LASS + $C8, $1 ; trainer
- db SPRITE_BUG_CATCHER, $5 + 4, $13 + 4, $ff, $d0, $45, BUG_CATCHER + $C8, $5 ; trainer
- db SPRITE_LASS, $4 + 4, $17 + 4, $ff, $d2, $46, LASS + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $9 + 4, $16 + 4, $ff, $d2, $47, YOUNGSTER + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $6 + 4, $18 + 4, $ff, $d3, $48, BUG_CATCHER + $C8, $6 ; trainer
- db SPRITE_LASS, $a + 4, $21 + 4, $ff, $d1, $49, LASS + $C8, $3 ; trainer
+INCLUDE "data/mapHeaders/route3.asm"
+
+INCLUDE "data/mapObjects/route3.asm"
Route3Blocks: ; 54255 (15:4255)
INCBIN "maps/route3.blk"
-Route4_h: ; 0x54390 to 0x543b2 (34 bytes) (id=15)
- db OVERWORLD ; tileset
- db ROUTE_4_HEIGHT, ROUTE_4_WIDTH ; dimensions (y, x)
- dw Route4Blocks, Route4TextPointers, Route4Script; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, -3, 22, ROUTE_3_WIDTH - 22, Route3Blocks, ROUTE_4_WIDTH, ROUTE_4_HEIGHT
- EAST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_4_WIDTH
- dw Route4Object ; objects
-
-Route4Object: ; 0x543b2 (size=58)
- db $2c ; border tile
-
- db $3 ; warps
- db $5, $b, $0, MT_MOON_POKECENTER
- db $5, $12, $0, MT_MOON_1
- db $5, $18, $7, MT_MOON_2
-
- db $3 ; signs
- db $5, $c, $4 ; PokeCenterSignText
- db $7, $11, $5 ; Route4Text5
- db $7, $1b, $6 ; Route4Text6
-
- db $3 ; people
- db SPRITE_LASS, $8 + 4, $9 + 4, $fe, $0, $1 ; person
- db SPRITE_LASS, $3 + 4, $3f + 4, $ff, $d3, $42, LASS + $C8, $4 ; trainer
- db SPRITE_BALL, $3 + 4, $39 + 4, $ff, $ff, $83, TM_04 ; item
-
- ; warp-to
- EVENT_DISP ROUTE_4_WIDTH, $5, $b ; MT_MOON_POKECENTER
- EVENT_DISP ROUTE_4_WIDTH, $5, $12 ; MT_MOON_1
- EVENT_DISP ROUTE_4_WIDTH, $5, $18 ; MT_MOON_2
+INCLUDE "data/mapHeaders/route4.asm"
+
+INCLUDE "data/mapObjects/route4.asm"
Route4Blocks: ; 543ec (15:43ec)
INCBIN "maps/route4.blk"
-Route5_h: ; 0x54581 to 0x545a3 (34 bytes) (id=16)
- db OVERWORLD ; tileset
- db ROUTE_5_HEIGHT, ROUTE_5_WIDTH ; dimensions (y, x)
- dw Route5Blocks, Route5TextPointers, Route5Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks
- SOUTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks, ROUTE_5_WIDTH, ROUTE_5_HEIGHT
- dw Route5Object ; objects
-
-Route5Object: ; 0x545a3 (size=47)
- db $a ; border tile
-
- db $5 ; warps
- db $1d, $a, $3, ROUTE_5_GATE
- db $1d, $9, $2, ROUTE_5_GATE
- db $21, $a, $0, ROUTE_5_GATE
- db $1b, $11, $0, PATH_ENTRANCE_ROUTE_5
- db $15, $a, $0, DAYCAREM
-
- db $1 ; signs
- db $1d, $11, $1 ; Route5Text1
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP ROUTE_5_WIDTH, $1d, $a ; ROUTE_5_GATE
- EVENT_DISP ROUTE_5_WIDTH, $1d, $9 ; ROUTE_5_GATE
- EVENT_DISP ROUTE_5_WIDTH, $21, $a ; ROUTE_5_GATE
- EVENT_DISP ROUTE_5_WIDTH, $1b, $11 ; PATH_ENTRANCE_ROUTE_5
- EVENT_DISP ROUTE_5_WIDTH, $15, $a ; DAYCAREM
+INCLUDE "data/mapHeaders/route5.asm"
+
+INCLUDE "data/mapObjects/route5.asm"
Route5Blocks: ; 545d2 (15:45d2)
INCBIN "maps/route5.blk"
-Route9_h: ; 0x54686 to 0x546a8 (34 bytes) (id=20)
- db OVERWORLD ; tileset
- db ROUTE_9_HEIGHT, ROUTE_9_WIDTH ; dimensions (y, x)
- dw Route9Blocks, Route9TextPointers, Route9Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_9_WIDTH
- EAST_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, 0, 0, ROUTE_10_HEIGHT - 24, Route10Blocks, ROUTE_9_WIDTH
- dw Route9Object ; objects
-
-Route9Object: ; 0x546a8 (size=86)
- db $2c ; border tile
-
- db $0 ; warps
-
- db $1 ; signs
- db $7, $19, $b ; Route9Text11
-
- db $a ; people
- db SPRITE_LASS, $a + 4, $d + 4, $ff, $d2, $41, JR__TRAINER_F + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $18 + 4, $ff, $d2, $42, JR__TRAINER_M + $C8, $7 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $1f + 4, $ff, $d3, $43, JR__TRAINER_M + $C8, $8 ; trainer
- db SPRITE_LASS, $8 + 4, $30 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $6 ; trainer
- db SPRITE_HIKER, $f + 4, $10 + 4, $ff, $d2, $45, HIKER + $C8, $b ; trainer
- db SPRITE_HIKER, $3 + 4, $2b + 4, $ff, $d2, $46, HIKER + $C8, $6 ; trainer
- db SPRITE_BUG_CATCHER, $2 + 4, $16 + 4, $ff, $d0, $47, BUG_CATCHER + $C8, $d ; trainer
- db SPRITE_HIKER, $f + 4, $2d + 4, $ff, $d3, $48, HIKER + $C8, $5 ; trainer
- db SPRITE_BUG_CATCHER, $8 + 4, $28 + 4, $ff, $d3, $49, BUG_CATCHER + $C8, $e ; trainer
- db SPRITE_BALL, $f + 4, $a + 4, $ff, $ff, $8a, TM_30 ; item
+INCLUDE "data/mapHeaders/route9.asm"
+
+INCLUDE "data/mapObjects/route9.asm"
Route9Blocks: ; 546fe (15:46fe)
INCBIN "maps/route9.blk"
-Route13_h: ; 0x5480c to 0x5482e (34 bytes) (id=24)
- db OVERWORLD ; tileset
- db ROUTE_13_HEIGHT, ROUTE_13_WIDTH ; dimensions (y, x)
- dw Route13Blocks, Route13TextPointers, Route13Script ; blocks, texts, scripts
- db NORTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, ROUTE_12_HEIGHT, 20, 0, ROUTE_12_WIDTH, Route12Blocks
- WEST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, 0, 0, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_13_WIDTH
- dw Route13Object ; objects
-
-Route13Object: ; 0x5482e (size=93)
- db $43 ; border tile
-
- db $0 ; warps
-
- db $3 ; signs
- db $d, $f, $b ; Route13Text11
- db $5, $21, $c ; Route13Text12
- db $b, $1f, $d ; Route13Text13
-
- db $a ; people
- db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $31 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $1 ; trainer
- db SPRITE_LASS, $a + 4, $30 + 4, $ff, $d0, $42, JR__TRAINER_F + $C8, $c ; trainer
- db SPRITE_LASS, $9 + 4, $1b + 4, $ff, $d0, $43, JR__TRAINER_F + $C8, $d ; trainer
- db SPRITE_LASS, $a + 4, $17 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $e ; trainer
- db SPRITE_LASS, $5 + 4, $32 + 4, $ff, $d0, $45, JR__TRAINER_F + $C8, $f ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $c + 4, $ff, $d3, $46, BIRD_KEEPER + $C8, $2 ; trainer
- db SPRITE_FOULARD_WOMAN, $6 + 4, $21 + 4, $ff, $d0, $47, BEAUTY + $C8, $4 ; trainer
- db SPRITE_FOULARD_WOMAN, $6 + 4, $20 + 4, $ff, $d0, $48, BEAUTY + $C8, $5 ; trainer
- db SPRITE_BIKER, $7 + 4, $a + 4, $ff, $d1, $49, BIKER + $C8, $1 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $7 + 4, $ff, $d1, $4a, BIRD_KEEPER + $C8, $3 ; trainer
+INCLUDE "data/mapHeaders/route13.asm"
+
+INCLUDE "data/mapObjects/route13.asm"
Route13Blocks: ; 5488b (15:488b)
INCBIN "maps/route13.blk"
-Route14_h: ; 0x54999 to 0x549bb (34 bytes) (id=25)
- db OVERWORLD ; tileset
- db ROUTE_14_HEIGHT, ROUTE_14_WIDTH ; dimensions (y, x)
- dw Route14Blocks, Route14TextPointers, Route14Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 18, 0, ROUTE_15_HEIGHT, Route15Blocks, ROUTE_14_WIDTH
- EAST_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, 0, 0, ROUTE_13_HEIGHT, Route13Blocks, ROUTE_14_WIDTH
- dw Route14Object ; objects
-
-Route14Object: ; 0x549bb (size=87)
- db $43 ; border tile
-
- db $0 ; warps
-
- db $1 ; signs
- db $d, $11, $b ; Route14Text11
-
- db $a ; people
- db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $4 + 4, $ff, $d0, $41, BIRD_KEEPER + $C8, $e ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $f + 4, $ff, $d0, $42, BIRD_KEEPER + $C8, $f ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $c + 4, $ff, $d0, $43, BIRD_KEEPER + $C8, $10 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $e + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $11 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $f + 4, $ff, $d2, $45, BIRD_KEEPER + $C8, $4 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $31 + 4, $6 + 4, $ff, $d1, $46, BIRD_KEEPER + $C8, $5 ; trainer
- db SPRITE_BIKER, $27 + 4, $5 + 4, $ff, $d0, $47, BIKER + $C8, $d ; trainer
- db SPRITE_BIKER, $1e + 4, $4 + 4, $ff, $d3, $48, BIKER + $C8, $e ; trainer
- db SPRITE_BIKER, $1e + 4, $f + 4, $ff, $d2, $49, BIKER + $C8, $f ; trainer
- db SPRITE_BIKER, $1f + 4, $4 + 4, $ff, $d3, $4a, BIKER + $C8, $2 ; trainer
+INCLUDE "data/mapHeaders/route14.asm"
+
+INCLUDE "data/mapObjects/route14.asm"
Route14Blocks: ; 54a12 (15:4a12)
INCBIN "maps/route14.blk"
-Route17_h: ; 0x54b20 to 0x54b42 (34 bytes) (id=28)
- db OVERWORLD ; tileset
- db ROUTE_17_HEIGHT, ROUTE_17_WIDTH ; dimensions (y, x)
- dw Route17Blocks, Route17TextPointers, Route17Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, ROUTE_16_HEIGHT, 0, 0, ROUTE_16_WIDTH - 7, Route16Blocks
- SOUTH_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 0, 0, ROUTE_18_WIDTH - 12, Route18Blocks, ROUTE_17_WIDTH, ROUTE_17_HEIGHT
- dw Route17Object ; objects
-
-Route17Object: ; 0x54b42 (size=102)
- db $43 ; border tile
-
- db $0 ; warps
-
- db $6 ; signs
- db $33, $9, $b ; Route17Text11
- db $3f, $9, $c ; Route17Text12
- db $4b, $9, $d ; Route17Text13
- db $57, $9, $e ; Route17Text14
- db $6f, $9, $f ; Route17Text15
- db $8d, $9, $10 ; Route17Text16
-
- db $a ; people
- db SPRITE_BIKER, $13 + 4, $c + 4, $ff, $d2, $41, CUE_BALL + $C8, $4 ; trainer
- db SPRITE_BIKER, $10 + 4, $b + 4, $ff, $d3, $42, CUE_BALL + $C8, $5 ; trainer
- db SPRITE_BIKER, $12 + 4, $4 + 4, $ff, $d1, $43, BIKER + $C8, $8 ; trainer
- db SPRITE_BIKER, $20 + 4, $7 + 4, $ff, $d2, $44, BIKER + $C8, $9 ; trainer
- db SPRITE_BIKER, $22 + 4, $e + 4, $ff, $d3, $45, BIKER + $C8, $a ; trainer
- db SPRITE_BIKER, $3a + 4, $11 + 4, $ff, $d2, $46, CUE_BALL + $C8, $6 ; trainer
- db SPRITE_BIKER, $44 + 4, $2 + 4, $ff, $d3, $47, CUE_BALL + $C8, $7 ; trainer
- db SPRITE_BIKER, $62 + 4, $e + 4, $ff, $d3, $48, CUE_BALL + $C8, $8 ; trainer
- db SPRITE_BIKER, $62 + 4, $5 + 4, $ff, $d2, $49, BIKER + $C8, $b ; trainer
- db SPRITE_BIKER, $76 + 4, $a + 4, $ff, $d0, $4a, BIKER + $C8, $c ; trainer
+INCLUDE "data/mapHeaders/route17.asm"
+
+INCLUDE "data/mapObjects/route17.asm"
Route17Blocks: ; 54ba8 (15:4ba8)
INCBIN "maps/route17.blk"
-Route19_h: ; 0x54e78 to 0x54e9a (34 bytes) (id=30)
- db OVERWORLD ; tileset
- db ROUTE_19_HEIGHT, ROUTE_19_WIDTH ; dimensions (y, x)
- dw Route19Blocks, Route19TextPointers, Route19Script ; blocks, texts, scripts
- db NORTH | WEST ; connections
- NORTH_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT, -3, 2, FUCHSIA_CITY_WIDTH - 4, FuchsiaCityBlocks
- WEST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 18, 0, ROUTE_20_HEIGHT, Route20Blocks, ROUTE_19_WIDTH
- dw Route19Object ; objects
-
-Route19Object: ; 0x54e9a (size=87)
- db $43 ; border tile
-
- db $0 ; warps
-
- db $1 ; signs
- db $9, $b, $b ; Route19Text11
-
- db $a ; people
- db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $8 + 4, $ff, $d2, $41, SWIMMER + $C8, $2 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $d + 4, $ff, $d2, $42, SWIMMER + $C8, $3 ; trainer
- db SPRITE_SWIMMER, $19 + 4, $d + 4, $ff, $d2, $43, SWIMMER + $C8, $4 ; trainer
- db SPRITE_SWIMMER, $1b + 4, $4 + 4, $ff, $d3, $44, SWIMMER + $C8, $5 ; trainer
- db SPRITE_SWIMMER, $1f + 4, $10 + 4, $ff, $d1, $45, SWIMMER + $C8, $6 ; trainer
- db SPRITE_SWIMMER, $b + 4, $9 + 4, $ff, $d0, $46, SWIMMER + $C8, $7 ; trainer
- db SPRITE_SWIMMER, $2b + 4, $8 + 4, $ff, $d2, $47, BEAUTY + $C8, $c ; trainer
- db SPRITE_SWIMMER, $2b + 4, $b + 4, $ff, $d3, $48, BEAUTY + $C8, $d ; trainer
- db SPRITE_SWIMMER, $2a + 4, $9 + 4, $ff, $d1, $49, SWIMMER + $C8, $8 ; trainer
- db SPRITE_SWIMMER, $2c + 4, $a + 4, $ff, $d0, $4a, BEAUTY + $C8, $e ; trainer
+INCLUDE "data/mapHeaders/route19.asm"
+
+INCLUDE "data/mapObjects/route19.asm"
Route19Blocks: ; 54ef1 (15:4ef1)
INCBIN "maps/route19.blk"
-Route21_h: ; 0x54fff to 0x55021 (34 bytes) (id=32)
- db OVERWORLD ; tileset
- db ROUTE_21_HEIGHT, ROUTE_21_WIDTH ; dimensions (y, x)
- dw Route21Blocks, Route21TextPointers, Route21Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks
- SOUTH_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_WIDTH, CinnabarIslandBlocks, ROUTE_21_WIDTH, ROUTE_21_HEIGHT
- dw Route21Object ; objects
-
-Route21Object: ; 0x55021 (size=76)
- db $43 ; border tile
-
- db $0 ; warps
-
- db $0 ; signs
-
- db $9 ; people
- db SPRITE_FISHER2, $18 + 4, $4 + 4, $ff, $d2, $41, FISHER + $C8, $7 ; trainer
- db SPRITE_FISHER2, $19 + 4, $6 + 4, $ff, $d0, $42, FISHER + $C8, $9 ; trainer
- db SPRITE_SWIMMER, $1f + 4, $a + 4, $ff, $d1, $43, SWIMMER + $C8, $c ; trainer
- db SPRITE_SWIMMER, $1e + 4, $c + 4, $ff, $d3, $44, CUE_BALL + $C8, $9 ; trainer
- db SPRITE_SWIMMER, $3f + 4, $10 + 4, $ff, $d0, $45, SWIMMER + $C8, $d ; trainer
- db SPRITE_SWIMMER, $47 + 4, $5 + 4, $ff, $d3, $46, SWIMMER + $C8, $e ; trainer
- db SPRITE_SWIMMER, $47 + 4, $f + 4, $ff, $d2, $47, SWIMMER + $C8, $f ; trainer
- db SPRITE_FISHER2, $38 + 4, $e + 4, $ff, $d2, $48, FISHER + $C8, $8 ; trainer
- db SPRITE_FISHER2, $39 + 4, $11 + 4, $ff, $d3, $49, FISHER + $C8, $a ; trainer
+INCLUDE "data/mapHeaders/route21.asm"
+
+INCLUDE "data/mapObjects/route21.asm"
Route21Blocks: ; 5506d (15:506d)
INCBIN "maps/route21.blk"
@@ -82384,7 +46441,7 @@ Func_5525f: ; 5525f (15:525f)
ld a, [wWhichPokemon] ; $cf92
ld hl, W_PARTYMON1NAME ; $d2b5
call GetPartyMonName
- ld hl, UnnamedText_554b2 ; $54b2
+ ld hl, GainedText
call PrintText
xor a
ld [$cc49], a
@@ -82473,7 +46530,7 @@ Func_5525f: ; 5525f (15:525f)
callab Func_3ee94
call SaveScreenTilesToBuffer1
.asm_553f7
- ld hl, UnnamedText_554dd ; $54dd
+ ld hl, GrewLevelText
call PrintText
xor a
ld [$cc49], a
@@ -82574,3006 +46631,96 @@ Func_5549f: ; 5549f (15:549f)
ld [$ff97], a
ret
-UnnamedText_554b2: ; 554b2 (15:54b2)
- TX_FAR _UnnamedText_554b2
+GainedText: ; 554b2 (15:54b2)
+ TX_FAR _GainedText
db $08 ; asm
ld a, [$cc5b]
- ld hl, UnnamedText_554cb
+ ld hl, WithExpAllText
and a
ret nz
- ld hl, UnnamedText_554d8
+ ld hl, ExpPointsText
ld a, [$cf4d]
and a
ret z
- ld hl, UnnamedText_554d4
+ ld hl, BoostedText
ret
-UnnamedText_554cb: ; 554cb (15:54cb)
- TX_FAR _UnnamedText_554cb
+WithExpAllText: ; 554cb (15:54cb)
+ TX_FAR _WithExpAllText
db $08 ; asm
- ld hl, UnnamedText_554d8
+ ld hl, ExpPointsText
ret
-UnnamedText_554d4: ; 554d4 (15:54d4)
- TX_FAR _UnnamedText_554d4
+BoostedText: ; 554d4 (15:54d4)
+ TX_FAR _BoostedText
-UnnamedText_554d8: ; 554d8 (15:54d8)
- TX_FAR _UnnamedText_554d8
+ExpPointsText: ; 554d8 (15:54d8)
+ TX_FAR _ExpPointsText
db "@"
-UnnamedText_554dd: ; 554dd (15:54dd)
- TX_FAR UnnamedText_89c01
+GrewLevelText: ; 554dd (15:54dd)
+ TX_FAR _GrewLevelText
db $0b
db "@"
-Route2Script: ; 554e3 (15:54e3)
- jp EnableAutoTextBoxDrawing
-
-Route2TextPointers: ; 554e6 (15:54e6)
- dw Predef5CText
- dw Predef5CText
- dw Route2Text3
- dw Route2Text4
-
-Route2Text3: ; 554ee (15:54ee)
- TX_FAR _Route2Text3
- db "@"
-
-Route2Text4: ; 554f3 (15:54f3)
- TX_FAR _Route2Text4
- db "@"
-
-Route3Script: ; 554f8 (15:54f8)
- call EnableAutoTextBoxDrawing
- ld hl, Route3TrainerHeader0
- ld de, Route3ScriptPointers
- ld a, [W_ROUTE3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE3CURSCRIPT], a
- ret
-
-Route3ScriptPointers: ; 5550b (15:550b)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route3TextPointers: ; 55511 (15:5511)
- dw Route3Text1
- dw Route3Text2
- dw Route3Text3
- dw Route3Text4
- dw Route3Text5
- dw Route3Text6
- dw Route3Text7
- dw Route3Text8
- dw Route3Text9
- dw Route3Text10
-
-Route3TrainerHeaders: ; 55525 (15:5525)
-Route3TrainerHeader0: ; 55525 (15:5525)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText1 ; 0x5595 TextBeforeBattle
- dw Route3AfterBattleText1 ; 0x559f TextAfterBattle
- dw Route3EndBattleText1 ; 0x559a TextEndBattle
- dw Route3EndBattleText1 ; 0x559a TextEndBattle
-
-Route3TrainerHeader2: ; 55531 (15:5531)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText2 ; 0x55ae TextBeforeBattle
- dw Route3AfterBattleText2 ; 0x55b8 TextAfterBattle
- dw Route3EndBattleText2 ; 0x55b3 TextEndBattle
- dw Route3EndBattleText2 ; 0x55b3 TextEndBattle
-
-Route3TrainerHeader3: ; 5553d (15:553d)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText3 ; 0x55c7 TextBeforeBattle
- dw Route3AfterBattleText3 ; 0x55d1 TextAfterBattle
- dw Route3EndBattleText3 ; 0x55cc TextEndBattle
- dw Route3EndBattleText3 ; 0x55cc TextEndBattle
-
-Route3TrainerHeader4: ; 55549 (15:5549)
- db $5 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText4 ; 0x55e0 TextBeforeBattle
- dw Route3AfterBattleText4 ; 0x55ea TextAfterBattle
- dw Route3EndBattleText4 ; 0x55e5 TextEndBattle
- dw Route3EndBattleText4 ; 0x55e5 TextEndBattle
-
-Route3TrainerHeader5: ; 55555 (15:5555)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText5 ; 0x55f9 TextBeforeBattle
- dw Route3AfterBattleText5 ; 0x5603 TextAfterBattle
- dw Route3EndBattleText5 ; 0x55fe TextEndBattle
- dw Route3EndBattleText5 ; 0x55fe TextEndBattle
-
-Route3TrainerHeader6: ; 55561 (15:5561)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText6 ; 0x5612 TextBeforeBattle
- dw Route3AfterBattleText6 ; 0x561c TextAfterBattle
- dw Route3EndBattleText6 ; 0x5617 TextEndBattle
- dw Route3EndBattleText6 ; 0x5617 TextEndBattle
-
-Route3TrainerHeader7: ; 5556d (15:556d)
- db $8 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText7 ; 0x562b TextBeforeBattle
- dw Route3AfterBattleText7 ; 0x5635 TextAfterBattle
- dw Route3EndBattleText7 ; 0x5630 TextEndBattle
- dw Route3EndBattleText7 ; 0x5630 TextEndBattle
-
-Route3TrainerHeader8: ; 55579 (15:5579)
- db $9 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7c3 ; flag's byte
- dw Route3BattleText8 ; 0x5644 TextBeforeBattle
- dw Route3AfterBattleText8 ; 0x564e TextAfterBattle
- dw Route3EndBattleText8 ; 0x5649 TextEndBattle
- dw Route3EndBattleText8 ; 0x5649 TextEndBattle
-
- db $ff
-
-Route3Text1: ; 55586 (15:5586)
- TX_FAR _Route3Text1
- db "@"
-
-Route3Text2: ; 5558b (15:558b)
- db $08 ; asm
- ld hl, Route3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText1: ; 55595 (15:5595)
- TX_FAR _Route3BattleText1
- db "@"
-
-Route3EndBattleText1: ; 5559a (15:559a)
- TX_FAR _Route3EndBattleText1
- db "@"
-
-Route3AfterBattleText1: ; 5559f (15:559f)
- TX_FAR _Route3AfterBattleText1
- db "@"
-
-Route3Text3: ; 555a4 (15:55a4)
- db $08 ; asm
- ld hl, Route3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText2: ; 555ae (15:55ae)
- TX_FAR _Route3BattleText2
- db "@"
-
-Route3EndBattleText2: ; 555b3 (15:55b3)
- TX_FAR _Route3EndBattleText2
- db "@"
-
-Route3AfterBattleText2: ; 555b8 (15:55b8)
- TX_FAR _Route3AfterBattleText2
- db "@"
-
-Route3Text4: ; 555bd (15:55bd)
- db $08 ; asm
- ld hl, Route3TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText3: ; 555c7 (15:55c7)
- TX_FAR _Route3BattleText3
- db "@"
-
-Route3EndBattleText3: ; 555cc (15:55cc)
- TX_FAR _Route3EndBattleText3
- db "@"
-
-Route3AfterBattleText3: ; 555d1 (15:55d1)
- TX_FAR _Route3AfterBattleText3
- db "@"
-
-Route3Text5: ; 555d6 (15:55d6)
- db $08 ; asm
- ld hl, Route3TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText4: ; 555e0 (15:55e0)
- TX_FAR _Route3BattleText4
- db "@"
-
-Route3EndBattleText4: ; 555e5 (15:55e5)
- TX_FAR _Route3EndBattleText4
- db "@"
-
-Route3AfterBattleText4: ; 555ea (15:55ea)
- TX_FAR _Route3AfterBattleText4
- db "@"
-
-Route3Text6: ; 555ef (15:55ef)
- db $08 ; asm
- ld hl, Route3TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText5: ; 555f9 (15:55f9)
- TX_FAR _Route3BattleText5
- db "@"
-
-Route3EndBattleText5: ; 555fe (15:55fe)
- TX_FAR _Route3EndBattleText5
- db "@"
-
-Route3AfterBattleText5: ; 55603 (15:5603)
- TX_FAR _Route3AfterBattleText5
- db "@"
-
-Route3Text7: ; 55608 (15:5608)
- db $08 ; asm
- ld hl, Route3TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText6: ; 55612 (15:5612)
- TX_FAR _Route3BattleText6
- db "@"
-
-Route3EndBattleText6: ; 55617 (15:5617)
- TX_FAR _Route3EndBattleText6
- db "@"
-
-Route3AfterBattleText6: ; 5561c (15:561c)
- TX_FAR _Route3AfterBattleText6
- db "@"
-
-Route3Text8: ; 55621 (15:5621)
- db $08 ; asm
- ld hl, Route3TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText7: ; 5562b (15:562b)
- TX_FAR _Route3BattleText7
- db "@"
-
-Route3EndBattleText7: ; 55630 (15:5630)
- TX_FAR _Route3EndBattleText7
- db "@"
-
-Route3AfterBattleText7: ; 55635 (15:5635)
- TX_FAR _Route3AfterBattleText7
- db "@"
-
-Route3Text9: ; 5563a (15:563a)
- db $08 ; asm
- ld hl, Route3TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText8: ; 55644 (15:5644)
- TX_FAR _Route3BattleText8
- db "@"
-
-Route3EndBattleText8: ; 55649 (15:5649)
- TX_FAR _Route3EndBattleText8
- db "@"
-
-Route3AfterBattleText8: ; 5564e (15:564e)
- TX_FAR _Route3AfterBattleText8
- db "@"
-
-Route3Text10: ; 55653 (15:5653)
- TX_FAR _Route3Text10
- db "@"
-
-Route4Script: ; 55658 (15:5658)
- call EnableAutoTextBoxDrawing
- ld hl, Route4TrainerHeaders
- ld de, Route4ScriptPointers
- ld a, [W_ROUTE4CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE4CURSCRIPT], a
- ret
-
-Route4ScriptPointers: ; 5566b (15:566b)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route4TextPointers: ; 55671 (15:5671)
- dw Route4Text1
- dw Route4Text2
- dw Predef5CText
- dw PokeCenterSignText
- dw Route4Text5
- dw Route4Text6
-
-Route4TrainerHeaders: ; 5567d (15:567d)
-Route4TrainerHeader0: ; 5567d (15:567d)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c5 ; flag's byte
- dw Route4BattleText1 ; 0x5699 TextBeforeBattle
- dw Route4AfterBattleText1 ; 0x56a3 TextAfterBattle
- dw Route4EndBattleText1 ; 0x569e TextEndBattle
- dw Route4EndBattleText1 ; 0x569e TextEndBattle
-
- db $ff
-
-Route4Text1: ; 5568a (15:568a)
- TX_FAR _Route4Text1
- db "@"
-
-Route4Text2: ; 5568f (15:568f)
- db $08 ; asm
- ld hl, Route4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route4BattleText1: ; 55699 (15:5699)
- TX_FAR _Route4BattleText1
- db "@"
-
-Route4EndBattleText1: ; 5569e (15:569e)
- TX_FAR _Route4EndBattleText1
- db "@"
-
-Route4AfterBattleText1: ; 556a3 (15:56a3)
- TX_FAR _Route4AfterBattleText1
- db "@"
-
-Route4Text5: ; 556a8 (15:56a8)
- TX_FAR _Route4Text5
- db "@"
-
-Route4Text6: ; 556ad (15:56ad)
- TX_FAR _Route4Text6
- db "@"
-
-Route5Script: ; 556b2 (15:56b2)
- jp EnableAutoTextBoxDrawing
-
-Route5TextPointers: ; 556b5 (15:56b5)
- dw Route5Text1
-
-Route5Text1: ; 556b7 (15:56b7)
- TX_FAR _Route5Text1
- db "@"
-
-Route9Script: ; 556bc (15:56bc)
- call EnableAutoTextBoxDrawing
- ld hl, Route9TrainerHeaders
- ld de, Route9ScriptPointers
- ld a, [W_ROUTE9CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE9CURSCRIPT], a
- ret
-
-Route9ScriptPointers: ; 556cf (15:56cf)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route9TextPointers: ; 556d5 (15:56d5)
- dw Route9Text1
- dw Route9Text2
- dw Route9Text3
- dw Route9Text4
- dw Route9Text5
- dw Route9Text6
- dw Route9Text7
- dw Route9Text8
- dw Route9Text9
- dw Predef5CText
- dw Route9Text11
-
-Route9TrainerHeaders: ; 556eb (15:56eb)
-Route9TrainerHeader0: ; 556eb (15:56eb)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText1 ; 0x5792 TextBeforeBattle
- dw Route9AfterBattleText1 ; 0x579c TextAfterBattle
- dw Route9EndBattleText1 ; 0x5797 TextEndBattle
- dw Route9EndBattleText1 ; 0x5797 TextEndBattle
-
-Route9TrainerHeader2: ; 556f7 (15:56f7)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText2 ; 0x57a1 TextBeforeBattle
- dw Route9AfterBattleText2 ; 0x57ab TextAfterBattle
- dw Route9EndBattleText2 ; 0x57a6 TextEndBattle
- dw Route9EndBattleText2 ; 0x57a6 TextEndBattle
-
-Route9TrainerHeader3: ; 55703 (15:5703)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText3 ; 0x57b0 TextBeforeBattle
- dw Route9AfterBattleText3 ; 0x57ba TextAfterBattle
- dw Route9EndBattleText3 ; 0x57b5 TextEndBattle
- dw Route9EndBattleText3 ; 0x57b5 TextEndBattle
-
-Route9TrainerHeader4: ; 5570f (15:570f)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText4 ; 0x57bf TextBeforeBattle
- dw Route9AfterBattleText4 ; 0x57c9 TextAfterBattle
- dw Route9EndBattleText4 ; 0x57c4 TextEndBattle
- dw Route9EndBattleText4 ; 0x57c4 TextEndBattle
-
-Route9TrainerHeader5: ; 5571b (15:571b)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText5 ; 0x57ce TextBeforeBattle
- dw Route9AfterBattleText5 ; 0x57d8 TextAfterBattle
- dw Route9EndBattleText5 ; 0x57d3 TextEndBattle
- dw Route9EndBattleText5 ; 0x57d3 TextEndBattle
-
-Route9TrainerHeader6: ; 55727 (15:5727)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText6 ; 0x57dd TextBeforeBattle
- dw Route9AfterBattleText6 ; 0x57e7 TextAfterBattle
- dw Route9EndBattleText6 ; 0x57e2 TextEndBattle
- dw Route9EndBattleText6 ; 0x57e2 TextEndBattle
-
-Route9TrainerHeader7: ; 55733 (15:5733)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText7 ; 0x57ec TextBeforeBattle
- dw Route9AfterBattleText7 ; 0x57f6 TextAfterBattle
- dw Route9EndBattleText7 ; 0x57f1 TextEndBattle
- dw Route9EndBattleText7 ; 0x57f1 TextEndBattle
-
-Route9TrainerHeader8: ; 5573f (15:573f)
- db $8 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText8 ; 0x57fb TextBeforeBattle
- dw Route9AfterBattleText8 ; 0x5805 TextAfterBattle
- dw Route9EndBattleText8 ; 0x5800 TextEndBattle
- dw Route9EndBattleText8 ; 0x5800 TextEndBattle
-
-Route9TrainerHeader9: ; 5574b (15:574b)
- db $9 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cf ; flag's byte
- dw Route9BattleText9 ; 0x580a TextBeforeBattle
- dw Route9AfterBattleText9 ; 0x5814 TextAfterBattle
- dw Route9EndBattleText9 ; 0x580f TextEndBattle
- dw Route9EndBattleText9 ; 0x580f TextEndBattle
-
- db $ff
-
-Route9Text1: ; 55758 (15:5758)
- db $8 ; asm
- ld hl, Route9TrainerHeader0
- jr asm_8be3d ; 0x5575c $2e
-
-Route9Text2: ; 5575e (15:575e)
- db $8 ; asm
- ld hl, Route9TrainerHeader2
- jr asm_8be3d ; 0x55762 $28
-
-Route9Text3: ; 55764 (15:5764)
- db $8 ; asm
- ld hl, Route9TrainerHeader3
- jr asm_8be3d ; 0x55768 $22
-
-Route9Text4: ; 5576a (15:576a)
- db $8 ; asm
- ld hl, Route9TrainerHeader4
- jr asm_8be3d ; 0x5576e $1c
-
-Route9Text5: ; 55770 (15:5770)
- db $8 ; asm
- ld hl, Route9TrainerHeader5
- jr asm_8be3d ; 0x55774 $16
-
-Route9Text6: ; 55776 (15:5776)
- db $8 ; asm
- ld hl, Route9TrainerHeader6
- jr asm_8be3d ; 0x5577a $10
-
-Route9Text7: ; 5577c (15:577c)
- db $8 ; asm
- ld hl, Route9TrainerHeader7
- jr asm_8be3d ; 0x55780 $a
-
-Route9Text8: ; 55782 (15:5782)
- db $8 ; asm
- ld hl, Route9TrainerHeader8
- jr asm_8be3d ; 0x55786 $4
-
-Route9Text9: ; 55788 (15:5788)
- db $8 ; asm
- ld hl, Route9TrainerHeader9
-asm_8be3d: ; 5578c (15:578c)
- call TalkToTrainer
- jp TextScriptEnd
-
-Route9BattleText1: ; 55792 (15:5792)
- TX_FAR _Route9BattleText1
- db "@"
-
-Route9EndBattleText1: ; 55797 (15:5797)
- TX_FAR _Route9EndBattleText1
- db "@"
-
-Route9AfterBattleText1: ; 5579c (15:579c)
- TX_FAR _Route9AfterBattleText1
- db "@"
-
-Route9BattleText2: ; 557a1 (15:57a1)
- TX_FAR _Route9BattleText2
- db "@"
-
-Route9EndBattleText2: ; 557a6 (15:57a6)
- TX_FAR _Route9EndBattleText2
- db "@"
-
-Route9AfterBattleText2: ; 557ab (15:57ab)
- TX_FAR _Route9AfterBattleText2
- db "@"
-
-Route9BattleText3: ; 557b0 (15:57b0)
- TX_FAR _Route9BattleText3
- db "@"
-
-Route9EndBattleText3: ; 557b5 (15:57b5)
- TX_FAR _Route9EndBattleText3
- db "@"
-
-Route9AfterBattleText3: ; 557ba (15:57ba)
- TX_FAR _Route9AfterBattleText3
- db "@"
-
-Route9BattleText4: ; 557bf (15:57bf)
- TX_FAR _Route9BattleText4
- db "@"
-
-Route9EndBattleText4: ; 557c4 (15:57c4)
- TX_FAR _Route9EndBattleText4
- db "@"
-
-Route9AfterBattleText4: ; 557c9 (15:57c9)
- TX_FAR _Route9AfterBattleText4
- db "@"
-
-Route9BattleText5: ; 557ce (15:57ce)
- TX_FAR _Route9BattleText5
- db "@"
-
-Route9EndBattleText5: ; 557d3 (15:57d3)
- TX_FAR _Route9EndBattleText5
- db "@"
-
-Route9AfterBattleText5: ; 557d8 (15:57d8)
- TX_FAR _Route9AfterBattleText5
- db "@"
-
-Route9BattleText6: ; 557dd (15:57dd)
- TX_FAR _Route9BattleText6
- db "@"
-
-Route9EndBattleText6: ; 557e2 (15:57e2)
- TX_FAR _Route9EndBattleText6
- db "@"
-
-Route9AfterBattleText6: ; 557e7 (15:57e7)
- TX_FAR _Route9AfterBattleText6
- db "@"
-
-Route9BattleText7: ; 557ec (15:57ec)
- TX_FAR _Route9BattleText7
- db "@"
-
-Route9EndBattleText7: ; 557f1 (15:57f1)
- TX_FAR _Route9EndBattleText7
- db "@"
-
-Route9AfterBattleText7: ; 557f6 (15:57f6)
- TX_FAR _Route9AfterBattleText7
- db "@"
-
-Route9BattleText8: ; 557fb (15:57fb)
- TX_FAR _Route9BattleText8
- db "@"
-
-Route9EndBattleText8: ; 55800 (15:5800)
- TX_FAR _Route9EndBattleText8
- db "@"
-
-Route9AfterBattleText8: ; 55805 (15:5805)
- TX_FAR _Route9AfterBattleText8
- db "@"
-
-Route9BattleText9: ; 5580a (15:580a)
- TX_FAR _Route9BattleText9
- db "@"
-
-Route9EndBattleText9: ; 5580f (15:580f)
- TX_FAR _Route9EndBattleText9
- db "@"
-
-Route9AfterBattleText9: ; 55814 (15:5814)
- TX_FAR _Route9AfterBattleText9
- db "@"
-
-Route9Text11: ; 55819 (15:5819)
- TX_FAR _Route9Text11
- db "@"
-
-Route13Script: ; 5581e (15:581e)
- call EnableAutoTextBoxDrawing
- ld hl, Route13TrainerHeaders
- ld de, Route13ScriptPointers
- ld a, [W_ROUTE13CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE13CURSCRIPT], a
- ret
-
-Route13ScriptPointers: ; 55831 (15:5831)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route13TextPointers: ; 55837 (15:5837)
- dw Route13Text1
- dw Route13Text2
- dw Route13Text3
- dw Route13Text4
- dw Route13Text5
- dw Route13Text6
- dw Route13Text7
- dw Route13Text8
- dw Route13Text9
- dw Route13Text10
- dw Route13Text11
- dw Route13Text12
- dw Route13Text13
-
-Route13TrainerHeaders: ; 55851 (15:5851)
-Route13TrainerHeader0: ; 55851 (15:5851)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText2 ; 0x58d4 TextBeforeBattle
- dw Route13AfterBattleText2 ; 0x58de TextAfterBattle
- dw Route13EndBattleText2 ; 0x58d9 TextEndBattle
- dw Route13EndBattleText2 ; 0x58d9 TextEndBattle
-
-Route13TrainerHeader2: ; 5585d (15:585d)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText3 ; 0x58ed TextBeforeBattle
- dw Route13AfterBattleText3 ; 0x58f7 TextAfterBattle
- dw Route13EndBattleText3 ; 0x58f2 TextEndBattle
- dw Route13EndBattleText3 ; 0x58f2 TextEndBattle
-
-Route13TrainerHeader3: ; 55869 (15:5869)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText4 ; 0x5906 TextBeforeBattle
- dw Route13AfterBattleText4 ; 0x5910 TextAfterBattle
- dw Route13EndBattleText4 ; 0x590b TextEndBattle
- dw Route13EndBattleText4 ; 0x590b TextEndBattle
-
-Route13TrainerHeader4: ; 55875 (15:5875)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText5 ; 0x591f TextBeforeBattle
- dw Route13AfterBattleText5 ; 0x5929 TextAfterBattle
- dw Route13EndBattleText5 ; 0x5924 TextEndBattle
- dw Route13EndBattleText5 ; 0x5924 TextEndBattle
-
-Route13TrainerHeader5: ; 55881 (15:5881)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText6 ; 0x5938 TextBeforeBattle
- dw Route13AfterBattleText6 ; 0x5942 TextAfterBattle
- dw Route13EndBattleText6 ; 0x593d TextEndBattle
- dw Route13EndBattleText6 ; 0x593d TextEndBattle
-
-Route13TrainerHeader6: ; 5588d (15:588d)
- db $6 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText7 ; 0x5951 TextBeforeBattle
- dw Route13AfterBattleText7 ; 0x595b TextAfterBattle
- dw Route13EndBattleText7 ; 0x5956 TextEndBattle
- dw Route13EndBattleText7 ; 0x5956 TextEndBattle
-
-Route13TrainerHeader7: ; 55899 (15:5899)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText8 ; 0x596a TextBeforeBattle
- dw Route13AfterBattleText8 ; 0x5974 TextAfterBattle
- dw Route13EndBattleText8 ; 0x596f TextEndBattle
- dw Route13EndBattleText8 ; 0x596f TextEndBattle
-
-Route13TrainerHeader8: ; 558a5 (15:58a5)
- db $8 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText9 ; 0x5983 TextBeforeBattle
- dw Route13AfterBattleText9 ; 0x598d TextAfterBattle
- dw Route13EndBattleText9 ; 0x5988 TextEndBattle
- dw Route13EndBattleText9 ; 0x5988 TextEndBattle
-
-Route13TrainerHeader9: ; 558b1 (15:58b1)
- db $9 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText10 ; 0x599c TextBeforeBattle
- dw Route13AfterBattleText10 ; 0x59a6 TextAfterBattle
- dw Route13EndBattleText10 ; 0x59a1 TextEndBattle
- dw Route13EndBattleText10 ; 0x59a1 TextEndBattle
-
-Route13TrainerHeader10: ; 558bd (15:58bd)
- db $a ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d9 ; flag's byte
- dw Route13BattleText11 ; 0x59b5 TextBeforeBattle
- dw Route13AfterBattleText11 ; 0x59bf TextAfterBattle
- dw Route13EndBattleText11 ; 0x59ba TextEndBattle
- dw Route13EndBattleText11 ; 0x59ba TextEndBattle
-
- db $ff
-
-Route13Text1: ; 558ca (15:58ca)
- db $08 ; asm
- ld hl, Route13TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText2: ; 558d4 (15:58d4)
- TX_FAR _Route13BattleText2
- db "@"
-
-Route13EndBattleText2: ; 558d9 (15:58d9)
- TX_FAR _Route13EndBattleText2
- db "@"
-
-Route13AfterBattleText2: ; 558de (15:58de)
- TX_FAR _Route13AfterBattleText2
- db "@"
-
-Route13Text2: ; 558e3 (15:58e3)
- db $08 ; asm
- ld hl, Route13TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText3: ; 558ed (15:58ed)
- TX_FAR _Route13BattleText3
- db "@"
-
-Route13EndBattleText3: ; 558f2 (15:58f2)
- TX_FAR _Route13EndBattleText3
- db "@"
-
-Route13AfterBattleText3: ; 558f7 (15:58f7)
- TX_FAR _Route13AfterBattleText3
- db "@"
-
-Route13Text3: ; 558fc (15:58fc)
- db $08 ; asm
- ld hl, Route13TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText4: ; 55906 (15:5906)
- TX_FAR _Route13BattleText4
- db "@"
-
-Route13EndBattleText4: ; 5590b (15:590b)
- TX_FAR _Route13EndBattleText4
- db "@"
-
-Route13AfterBattleText4: ; 55910 (15:5910)
- TX_FAR _Route13AfterBattleText4
- db "@"
-
-Route13Text4: ; 55915 (15:5915)
- db $08 ; asm
- ld hl, Route13TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText5: ; 5591f (15:591f)
- TX_FAR _Route13BattleText5
- db "@"
-
-Route13EndBattleText5: ; 55924 (15:5924)
- TX_FAR _Route13EndBattleText5
- db "@"
-
-Route13AfterBattleText5: ; 55929 (15:5929)
- TX_FAR _Route13AfterBattleText5
- db "@"
-
-Route13Text5: ; 5592e (15:592e)
- db $08 ; asm
- ld hl, Route13TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText6: ; 55938 (15:5938)
- TX_FAR _Route13BattleText6
- db "@"
-
-Route13EndBattleText6: ; 5593d (15:593d)
- TX_FAR _Route13EndBattleText6
- db "@"
-
-Route13AfterBattleText6: ; 55942 (15:5942)
- TX_FAR _Route13AfterBattleText6
- db "@"
-
-Route13Text6: ; 55947 (15:5947)
- db $08 ; asm
- ld hl, Route13TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText7: ; 55951 (15:5951)
- TX_FAR _Route13BattleText7
- db "@"
-
-Route13EndBattleText7: ; 55956 (15:5956)
- TX_FAR _Route13EndBattleText7
- db "@"
-
-Route13AfterBattleText7: ; 5595b (15:595b)
- TX_FAR _Route13AfterBattleText7
- db "@"
-
-Route13Text7: ; 55960 (15:5960)
- db $08 ; asm
- ld hl, Route13TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText8: ; 5596a (15:596a)
- TX_FAR _Route13BattleText8
- db "@"
-
-Route13EndBattleText8: ; 5596f (15:596f)
- TX_FAR _Route13EndBattleText8
- db "@"
-
-Route13AfterBattleText8: ; 55974 (15:5974)
- TX_FAR _Route13AfterBattleText8
- db "@"
-
-Route13Text8: ; 55979 (15:5979)
- db $08 ; asm
- ld hl, Route13TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText9: ; 55983 (15:5983)
- TX_FAR _Route13BattleText9
- db "@"
-
-Route13EndBattleText9: ; 55988 (15:5988)
- TX_FAR _Route13EndBattleText9
- db "@"
-
-Route13AfterBattleText9: ; 5598d (15:598d)
- TX_FAR _Route13AfterBattleText9
- db "@"
-
-Route13Text9: ; 55992 (15:5992)
- db $08 ; asm
- ld hl, Route13TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText10: ; 5599c (15:599c)
- TX_FAR _Route13BattleText10
- db "@"
-
-Route13EndBattleText10: ; 559a1 (15:59a1)
- TX_FAR _Route13EndBattleText10
- db "@"
-
-Route13AfterBattleText10: ; 559a6 (15:59a6)
- TX_FAR _Route13AfterBattleText10
- db "@"
-
-Route13Text10: ; 559ab (15:59ab)
- db $08 ; asm
- ld hl, Route13TrainerHeader10
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText11: ; 559b5 (15:59b5)
- TX_FAR _Route13BattleText11
- db "@"
-
-Route13EndBattleText11: ; 559ba (15:59ba)
- TX_FAR _Route13EndBattleText11
- db "@"
-
-Route13AfterBattleText11: ; 559bf (15:59bf)
- TX_FAR _Route13AfterBattleText11
- db "@"
-
-Route13Text11: ; 559c4 (15:59c4)
- TX_FAR _Route13Text11
- db "@"
-
-Route13Text12: ; 559c9 (15:59c9)
- TX_FAR _Route13Text12
- db "@"
-
-Route13Text13: ; 559ce (15:59ce)
- TX_FAR _Route13Text13
- db "@"
-
-Route14Script: ; 559d3 (15:59d3)
- call EnableAutoTextBoxDrawing
- ld hl, Route14TrainerHeaders
- ld de, Route14ScriptPointers
- ld a, [W_ROUTE14CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE14CURSCRIPT], a
- ret
-
-Route14ScriptPointers: ; 559e6 (15:59e6)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route14TextPointers: ; 559ec (15:59ec)
- dw Route14Text1
- dw Route14Text2
- dw Route14Text3
- dw Route14Text4
- dw Route14Text5
- dw Route14Text6
- dw Route14Text7
- dw Route14Text8
- dw Route14Text9
- dw Route14Text10
- dw Route14Text11
-
-Route14TrainerHeaders: ; 55a02 (15:5a02)
-Route14TrainerHeader0: ; 55a02 (15:5a02)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText1 ; 0x5a85 TextBeforeBattle
- dw Route14AfterBattleText1 ; 0x5a8f TextAfterBattle
- dw Route14EndBattleText1 ; 0x5a8a TextEndBattle
- dw Route14EndBattleText1 ; 0x5a8a TextEndBattle
-
-Route14TrainerHeader1: ; 55a0e (15:5a0e)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText2 ; 0x5a9e TextBeforeBattle
- dw Route14AfterBattleText2 ; 0x5aa8 TextAfterBattle
- dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle
- dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle
-
-Route14TrainerHeader2: ; 55a1a (15:5a1a)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText3 ; 0x5ab7 TextBeforeBattle
- dw Route14AfterBattleText3 ; 0x5ac1 TextAfterBattle
- dw Route14EndBattleText3 ; 0x5abc TextEndBattle
- dw Route14EndBattleText3 ; 0x5abc TextEndBattle
-
-Route14TrainerHeader3: ; 55a26 (15:5a26)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText4 ; 0x5ad0 TextBeforeBattle
- dw Route14AfterBattleText4 ; 0x5ada TextAfterBattle
- dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle
- dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle
-
-Route14TrainerHeader4: ; 55a32 (15:5a32)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText5 ; 0x5ae9 TextBeforeBattle
- dw Route14AfterBattleText5 ; 0x5af3 TextAfterBattle
- dw Route14EndBattleText5 ; 0x5aee TextEndBattle
- dw Route14EndBattleText5 ; 0x5aee TextEndBattle
-
-Route14TrainerHeader5: ; 55a3e (15:5a3e)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText6 ; 0x5b02 TextBeforeBattle
- dw Route14AfterBattleText6 ; 0x5b0c TextAfterBattle
- dw Route14EndBattleText6 ; 0x5b07 TextEndBattle
- dw Route14EndBattleText6 ; 0x5b07 TextEndBattle
-
-Route14TrainerHeader6: ; 55a4a (15:5a4a)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText7 ; 0x5b1b TextBeforeBattle
- dw Route14AfterBattleText7 ; 0x5b25 TextAfterBattle
- dw Route14EndBattleText7 ; 0x5b20 TextEndBattle
- dw Route14EndBattleText7 ; 0x5b20 TextEndBattle
-
-Route14TrainerHeader7: ; 55a56 (15:5a56)
- db $8 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText8 ; 0x5b34 TextBeforeBattle
- dw Route14AfterBattleText8 ; 0x5b3e TextAfterBattle
- dw Route14EndBattleText8 ; 0x5b39 TextEndBattle
- dw Route14EndBattleText8 ; 0x5b39 TextEndBattle
-
-Route14TrainerHeader8: ; 55a62 (15:5a62)
- db $9 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText9 ; 0x5b4d TextBeforeBattle
- dw Route14AfterBattleText9 ; 0x5b57 TextAfterBattle
- dw Route14EndBattleText9 ; 0x5b52 TextEndBattle
- dw Route14EndBattleText9 ; 0x5b52 TextEndBattle
-
-Route14TrainerHeader9: ; 55a6e (15:5a6e)
- db $a ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7db ; flag's byte
- dw Route14BattleText10 ; 0x5b66 TextBeforeBattle
- dw Route14AfterBattleText10 ; 0x5b70 TextAfterBattle
- dw Route14EndBattleText10 ; 0x5b6b TextEndBattle
- dw Route14EndBattleText10 ; 0x5b6b TextEndBattle
-
- db $ff
-
-Route14Text1: ; 55a7b (15:5a7b)
- db $08 ; asm
- ld hl, Route14TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText1: ; 55a85 (15:5a85)
- TX_FAR _Route14BattleText1
- db "@"
-
-Route14EndBattleText1: ; 55a8a (15:5a8a)
- TX_FAR _Route14EndBattleText1
- db "@"
-
-Route14AfterBattleText1: ; 55a8f (15:5a8f)
- TX_FAR _Route14AfterBattleText1
- db "@"
-
-Route14Text2: ; 55a94 (15:5a94)
- db $08 ; asm
- ld hl, Route14TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText2: ; 55a9e (15:5a9e)
- TX_FAR _Route14BattleText2
- db "@"
-
-Route14EndBattleText2: ; 55aa3 (15:5aa3)
- TX_FAR _Route14EndBattleText2
- db "@"
-
-Route14AfterBattleText2: ; 55aa8 (15:5aa8)
- TX_FAR _Route14AfterBattleText2
- db "@"
-
-Route14Text3: ; 55aad (15:5aad)
- db $08 ; asm
- ld hl, Route14TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText3: ; 55ab7 (15:5ab7)
- TX_FAR _Route14BattleText3
- db "@"
-
-Route14EndBattleText3: ; 55abc (15:5abc)
- TX_FAR _Route14EndBattleText3
- db "@"
-
-Route14AfterBattleText3: ; 55ac1 (15:5ac1)
- TX_FAR _Route14AfterBattleText3
- db "@"
-
-Route14Text4: ; 55ac6 (15:5ac6)
- db $08 ; asm
- ld hl, Route14TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText4: ; 55ad0 (15:5ad0)
- TX_FAR _Route14BattleText4
- db "@"
-
-Route14EndBattleText4: ; 55ad5 (15:5ad5)
- TX_FAR _Route14EndBattleText4
- db "@"
-
-Route14AfterBattleText4: ; 55ada (15:5ada)
- TX_FAR _Route14AfterBattleText4
- db "@"
-
-Route14Text5: ; 55adf (15:5adf)
- db $08 ; asm
- ld hl, Route14TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText5: ; 55ae9 (15:5ae9)
- TX_FAR _Route14BattleText5
- db "@"
-
-Route14EndBattleText5: ; 55aee (15:5aee)
- TX_FAR _Route14EndBattleText5
- db "@"
-
-Route14AfterBattleText5: ; 55af3 (15:5af3)
- TX_FAR _Route14AfterBattleText5
- db "@"
-
-Route14Text6: ; 55af8 (15:5af8)
- db $08 ; asm
- ld hl, Route14TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText6: ; 55b02 (15:5b02)
- TX_FAR _Route14BattleText6
- db "@"
-
-Route14EndBattleText6: ; 55b07 (15:5b07)
- TX_FAR _Route14EndBattleText6
- db "@"
-
-Route14AfterBattleText6: ; 55b0c (15:5b0c)
- TX_FAR _Route14AfterBattleText6
- db "@"
-
-Route14Text7: ; 55b11 (15:5b11)
- db $08 ; asm
- ld hl, Route14TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText7: ; 55b1b (15:5b1b)
- TX_FAR _Route14BattleText7
- db "@"
-
-Route14EndBattleText7: ; 55b20 (15:5b20)
- TX_FAR _Route14EndBattleText7
- db "@"
-
-Route14AfterBattleText7: ; 55b25 (15:5b25)
- TX_FAR _Route14AfterBattleText7
- db "@"
-
-Route14Text8: ; 55b2a (15:5b2a)
- db $08 ; asm
- ld hl, Route14TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText8: ; 55b34 (15:5b34)
- TX_FAR _Route14BattleText8
- db "@"
-
-Route14EndBattleText8: ; 55b39 (15:5b39)
- TX_FAR _Route14EndBattleText8
- db "@"
-
-Route14AfterBattleText8: ; 55b3e (15:5b3e)
- TX_FAR _Route14AfterBattleText8
- db "@"
-
-Route14Text9: ; 55b43 (15:5b43)
- db $08 ; asm
- ld hl, Route14TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText9: ; 55b4d (15:5b4d)
- TX_FAR _Route14BattleText9
- db "@"
-
-Route14EndBattleText9: ; 55b52 (15:5b52)
- TX_FAR _Route14EndBattleText9
- db "@"
-
-Route14AfterBattleText9: ; 55b57 (15:5b57)
- TX_FAR _Route14AfterBattleText9
- db "@"
-
-Route14Text10: ; 55b5c (15:5b5c)
- db $08 ; asm
- ld hl, Route14TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText10: ; 55b66 (15:5b66)
- TX_FAR _Route14BattleText10
- db "@"
-
-Route14EndBattleText10: ; 55b6b (15:5b6b)
- TX_FAR _Route14EndBattleText10
- db "@"
-
-Route14AfterBattleText10: ; 55b70 (15:5b70)
- TX_FAR _Route14AfterBattleText10
- db "@"
-
-Route14Text11: ; 55b75 (15:5b75)
- TX_FAR _Route14Text11
- db "@"
-
-Route17Script: ; 55b7a (15:5b7a)
- call EnableAutoTextBoxDrawing
- ld hl, Route17TrainerHeaders
- ld de, Route17ScriptPointers
- ld a, [W_ROUTE17CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE17CURSCRIPT], a
- ret
-
-Route17ScriptPointers: ; 55b8d (15:5b8d)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route17TextPointers: ; 55b93 (15:5b93)
- dw Route17Text1
- dw Route17Text2
- dw Route17Text3
- dw Route17Text4
- dw Route17Text5
- dw Route17Text6
- dw Route17Text7
- dw Route17Text8
- dw Route17Text9
- dw Route17Text10
- dw Route17Text11
- dw Route17Text12
- dw Route17Text13
- dw Route17Text14
- dw Route17Text15
- dw Route17Text16
-
-Route17TrainerHeaders: ; 55bb3 (15:5bb3)
-Route17TrainerHeader0: ; 55bb3 (15:5bb3)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText1 ; 0x5c36 TextBeforeBattle
- dw Route17AfterBattleText1 ; 0x5c40 TextAfterBattle
- dw Route17EndBattleText1 ; 0x5c3b TextEndBattle
- dw Route17EndBattleText1 ; 0x5c3b TextEndBattle
-
-Route17TrainerHeader1: ; 55bbf (15:5bbf)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText2 ; 0x5c4f TextBeforeBattle
- dw Route17AfterBattleText2 ; 0x5c59 TextAfterBattle
- dw Route17EndBattleText2 ; 0x5c54 TextEndBattle
- dw Route17EndBattleText2 ; 0x5c54 TextEndBattle
-
-Route17TrainerHeader2: ; 55bcb (15:5bcb)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText3 ; 0x5c68 TextBeforeBattle
- dw Route17AfterBattleText3 ; 0x5c72 TextAfterBattle
- dw Route17EndBattleText3 ; 0x5c6d TextEndBattle
- dw Route17EndBattleText3 ; 0x5c6d TextEndBattle
-
-Route17TrainerHeader3: ; 55bd7 (15:5bd7)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText4 ; 0x5c81 TextBeforeBattle
- dw Route17AfterBattleText4 ; 0x5c8b TextAfterBattle
- dw Route17EndBattleText4 ; 0x5c86 TextEndBattle
- dw Route17EndBattleText4 ; 0x5c86 TextEndBattle
-
-Route17TrainerHeader4: ; 55be3 (15:5be3)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText5 ; 0x5c9a TextBeforeBattle
- dw Route17AfterBattleText5 ; 0x5ca4 TextAfterBattle
- dw Route17EndBattleText5 ; 0x5c9f TextEndBattle
- dw Route17EndBattleText5 ; 0x5c9f TextEndBattle
-
-Route17TrainerHeader5: ; 55bef (15:5bef)
- db $6 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText6 ; 0x5cb3 TextBeforeBattle
- dw Route17AfterBattleText6 ; 0x5cbd TextAfterBattle
- dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle
- dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle
-
-Route17TrainerHeader6: ; 55bfb (15:5bfb)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText7 ; 0x5ccc TextBeforeBattle
- dw Route17AfterBattleText7 ; 0x5cd6 TextAfterBattle
- dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle
- dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle
-
-Route17TrainerHeader7: ; 55c07 (15:5c07)
- db $8 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText8 ; 0x5ce5 TextBeforeBattle
- dw Route17AfterBattleText8 ; 0x5cef TextAfterBattle
- dw Route17EndBattleText8 ; 0x5cea TextEndBattle
- dw Route17EndBattleText8 ; 0x5cea TextEndBattle
-
-Route17TrainerHeader8: ; 55c13 (15:5c13)
- db $9 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText9 ; 0x5cfe TextBeforeBattle
- dw Route17AfterBattleText9 ; 0x5d08 TextAfterBattle
- dw Route17EndBattleText9 ; 0x5d03 TextEndBattle
- dw Route17EndBattleText9 ; 0x5d03 TextEndBattle
-
-Route17TrainerHeader9: ; 55c1f (15:5c1f)
- db $a ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e1 ; flag's byte
- dw Route17BattleText10 ; 0x5d17 TextBeforeBattle
- dw Route17AfterBattleText10 ; 0x5d21 TextAfterBattle
- dw Route17EndBattleText10 ; 0x5d1c TextEndBattle
- dw Route17EndBattleText10 ; 0x5d1c TextEndBattle
-
- db $ff
-
-Route17Text1: ; 55c2c (15:5c2c)
- db $08 ; asm
- ld hl, Route17TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText1: ; 55c36 (15:5c36)
- TX_FAR _Route17BattleText1
- db "@"
-
-Route17EndBattleText1: ; 55c3b (15:5c3b)
- TX_FAR _Route17EndBattleText1
- db "@"
-
-Route17AfterBattleText1: ; 55c40 (15:5c40)
- TX_FAR _Route17AfterBattleText1
- db "@"
-
-Route17Text2: ; 55c45 (15:5c45)
- db $08 ; asm
- ld hl, Route17TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText2: ; 55c4f (15:5c4f)
- TX_FAR _Route17BattleText2
- db "@"
-
-Route17EndBattleText2: ; 55c54 (15:5c54)
- TX_FAR _Route17EndBattleText2
- db "@"
-
-Route17AfterBattleText2: ; 55c59 (15:5c59)
- TX_FAR _Route17AfterBattleText2
- db "@"
-
-Route17Text3: ; 55c5e (15:5c5e)
- db $08 ; asm
- ld hl, Route17TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText3: ; 55c68 (15:5c68)
- TX_FAR _Route17BattleText3
- db "@"
-
-Route17EndBattleText3: ; 55c6d (15:5c6d)
- TX_FAR _Route17EndBattleText3
- db "@"
-
-Route17AfterBattleText3: ; 55c72 (15:5c72)
- TX_FAR _Route17AfterBattleText3
- db "@"
-
-Route17Text4: ; 55c77 (15:5c77)
- db $08 ; asm
- ld hl, Route17TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText4: ; 55c81 (15:5c81)
- TX_FAR _Route17BattleText4
- db "@"
-
-Route17EndBattleText4: ; 55c86 (15:5c86)
- TX_FAR _Route17EndBattleText4
- db "@"
-
-Route17AfterBattleText4: ; 55c8b (15:5c8b)
- TX_FAR _Route17AfterBattleText4
- db "@"
-
-Route17Text5: ; 55c90 (15:5c90)
- db $08 ; asm
- ld hl, Route17TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText5: ; 55c9a (15:5c9a)
- TX_FAR _Route17BattleText5
- db "@"
-
-Route17EndBattleText5: ; 55c9f (15:5c9f)
- TX_FAR _Route17EndBattleText5
- db "@"
-
-Route17AfterBattleText5: ; 55ca4 (15:5ca4)
- TX_FAR _Route17AfterBattleText5
- db "@"
-
-Route17Text6: ; 55ca9 (15:5ca9)
- db $08 ; asm
- ld hl, Route17TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText6: ; 55cb3 (15:5cb3)
- TX_FAR _Route17BattleText6
- db "@"
-
-Route17EndBattleText6: ; 55cb8 (15:5cb8)
- TX_FAR _Route17EndBattleText6
- db "@"
-
-Route17AfterBattleText6: ; 55cbd (15:5cbd)
- TX_FAR _Route17AfterBattleText6
- db "@"
-
-Route17Text7: ; 55cc2 (15:5cc2)
- db $08 ; asm
- ld hl, Route17TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText7: ; 55ccc (15:5ccc)
- TX_FAR _Route17BattleText7
- db "@"
-
-Route17EndBattleText7: ; 55cd1 (15:5cd1)
- TX_FAR _Route17EndBattleText7
- db "@"
-
-Route17AfterBattleText7: ; 55cd6 (15:5cd6)
- TX_FAR _Route17AfterBattleText7
- db "@"
-
-Route17Text8: ; 55cdb (15:5cdb)
- db $08 ; asm
- ld hl, Route17TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText8: ; 55ce5 (15:5ce5)
- TX_FAR _Route17BattleText8
- db "@"
-
-Route17EndBattleText8: ; 55cea (15:5cea)
- TX_FAR _Route17EndBattleText8
- db "@"
-
-Route17AfterBattleText8: ; 55cef (15:5cef)
- TX_FAR _Route17AfterBattleText8
- db "@"
-
-Route17Text9: ; 55cf4 (15:5cf4)
- db $08 ; asm
- ld hl, Route17TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText9: ; 55cfe (15:5cfe)
- TX_FAR _Route17BattleText9
- db "@"
-
-Route17EndBattleText9: ; 55d03 (15:5d03)
- TX_FAR _Route17EndBattleText9
- db "@"
-
-Route17AfterBattleText9: ; 55d08 (15:5d08)
- TX_FAR _Route17AfterBattleText9
- db "@"
-
-Route17Text10: ; 55d0d (15:5d0d)
- db $08 ; asm
- ld hl, Route17TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/route2.asm"
-Route17BattleText10: ; 55d17 (15:5d17)
- TX_FAR _Route17BattleText10
- db "@"
+INCLUDE "scripts/route3.asm"
-Route17EndBattleText10: ; 55d1c (15:5d1c)
- TX_FAR _Route17EndBattleText10
- db "@"
+INCLUDE "scripts/route4.asm"
-Route17AfterBattleText10: ; 55d21 (15:5d21)
- TX_FAR _Route17AfterBattleText10
- db "@"
+INCLUDE "scripts/route5.asm"
-Route17Text11: ; 55d26 (15:5d26)
- TX_FAR _Route17Text11
- db "@"
+INCLUDE "scripts/route9.asm"
-Route17Text12: ; 55d2b (15:5d2b)
- TX_FAR _Route17Text12
- db "@"
+INCLUDE "scripts/route13.asm"
-Route17Text13: ; 55d30 (15:5d30)
- TX_FAR _Route17Text13
- db "@"
+INCLUDE "scripts/route14.asm"
-Route17Text14: ; 55d35 (15:5d35)
- TX_FAR _Route17Text14
- db "@"
+INCLUDE "scripts/route17.asm"
-Route17Text15: ; 55d3a (15:5d3a)
- TX_FAR _Route17Text15
- db "@"
+INCLUDE "scripts/route19.asm"
-Route17Text16: ; 55d3f (15:5d3f)
- TX_FAR _Route17Text16
- db "@"
+INCLUDE "scripts/route21.asm"
-Route19Script: ; 55d44 (15:5d44)
- call EnableAutoTextBoxDrawing
- ld hl, Route19TrainerHeaders
- ld de, Route19ScriptPointers
- ld a, [W_ROUTE19CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE19CURSCRIPT], a
- ret
-
-Route19ScriptPointers: ; 55d57 (15:5d57)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route19TextPointers: ; 55d5d (15:5d5d)
- dw Route19Text1
- dw Route19Text2
- dw Route19Text3
- dw Route19Text4
- dw Route19Text5
- dw Route19Text6
- dw Route19Text7
- dw Route19Text8
- dw Route19Text9
- dw Route19Text10
- dw Route19Text11
-
-Route19TrainerHeaders: ; 55d73 (15:5d73)
-Route19TrainerHeader0: ; 55d73 (15:5d73)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText1 ; 0x5e50 TextBeforeBattle
- dw Route19AfterBattleText1 ; 0x5e5a TextAfterBattle
- dw Route19EndBattleText1 ; 0x5e55 TextEndBattle
- dw Route19EndBattleText1 ; 0x5e55 TextEndBattle
-
-Route19TrainerHeader1: ; 55d7f (15:5d7f)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText2 ; 0x5e5f TextBeforeBattle
- dw Route19AfterBattleText2 ; 0x5e69 TextAfterBattle
- dw Route19EndBattleText2 ; 0x5e64 TextEndBattle
- dw Route19EndBattleText2 ; 0x5e64 TextEndBattle
-
-Route19TrainerHeader2: ; 55d8b (15:5d8b)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText3 ; 0x5e6e TextBeforeBattle
- dw Route19AfterBattleText3 ; 0x5e78 TextAfterBattle
- dw Route19EndBattleText3 ; 0x5e73 TextEndBattle
- dw Route19EndBattleText3 ; 0x5e73 TextEndBattle
-
-Route19TrainerHeader3: ; 55d97 (15:5d97)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText4 ; 0x5e7d TextBeforeBattle
- dw Route19AfterBattleText4 ; 0x5e87 TextAfterBattle
- dw Route19EndBattleText4 ; 0x5e82 TextEndBattle
- dw Route19EndBattleText4 ; 0x5e82 TextEndBattle
-
-Route19TrainerHeader4: ; 55da3 (15:5da3)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText5 ; 0x5e8c TextBeforeBattle
- dw Route19AfterBattleText5 ; 0x5e96 TextAfterBattle
- dw Route19EndBattleText5 ; 0x5e91 TextEndBattle
- dw Route19EndBattleText5 ; 0x5e91 TextEndBattle
-
-Route19TrainerHeader5: ; 55daf (15:5daf)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText6 ; 0x5e9b TextBeforeBattle
- dw Route19AfterBattleText6 ; 0x5ea5 TextAfterBattle
- dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle
- dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle
-
-Route19TrainerHeader6: ; 55dbb (15:5dbb)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText7 ; 0x5eaa TextBeforeBattle
- dw Route19AfterBattleText7 ; 0x5eb4 TextAfterBattle
- dw Route19EndBattleText7 ; 0x5eaf TextEndBattle
- dw Route19EndBattleText7 ; 0x5eaf TextEndBattle
-
-Route19TrainerHeader7: ; 55dc7 (15:5dc7)
- db $8 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText8 ; 0x5eb9 TextBeforeBattle
- dw Route19AfterBattleText8 ; 0x5ec3 TextAfterBattle
- dw Route19EndBattleText8 ; 0x5ebe TextEndBattle
- dw Route19EndBattleText8 ; 0x5ebe TextEndBattle
-
-Route19TrainerHeader8: ; 55dd3 (15:5dd3)
- db $9 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText9 ; 0x5ec8 TextBeforeBattle
- dw Route19AfterBattleText9 ; 0x5ed2 TextAfterBattle
- dw Route19EndBattleText9 ; 0x5ecd TextEndBattle
- dw Route19EndBattleText9 ; 0x5ecd TextEndBattle
-
-Route19TrainerHeader9: ; 55ddf (15:5ddf)
- db $a ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e5 ; flag's byte
- dw Route19BattleText10 ; 0x5ed7 TextBeforeBattle
- dw Route19AfterBattleText10 ; 0x5ee1 TextAfterBattle
- dw Route19EndBattleText10 ; 0x5edc TextEndBattle
- dw Route19EndBattleText10 ; 0x5edc TextEndBattle
+INCLUDE "data/mapHeaders/vermilionhouse2.asm"
- db $ff
+INCLUDE "scripts/vermilionhouse2.asm"
-Route19Text1: ; 55dec (15:5dec)
- db $08 ; asm
- ld hl, Route19TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapObjects/vermilionhouse2.asm"
-Route19Text2: ; 55df6 (15:5df6)
- db $08 ; asm
- ld hl, Route19TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19Text3: ; 55e00 (15:5e00)
- db $08 ; asm
- ld hl, Route19TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/celadonmart2.asm"
-Route19Text4: ; 55e0a (15:5e0a)
- db $08 ; asm
- ld hl, Route19TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/celadonmart2.asm"
-Route19Text5: ; 55e14 (15:5e14)
- db $08 ; asm
- ld hl, Route19TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19Text6: ; 55e1e (15:5e1e)
- db $08 ; asm
- ld hl, Route19TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19Text7: ; 55e28 (15:5e28)
- db $08 ; asm
- ld hl, Route19TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19Text8: ; 55e32 (15:5e32)
- db $08 ; asm
- ld hl, Route19TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19Text9: ; 55e3c (15:5e3c)
- db $08 ; asm
- ld hl, Route19TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19Text10: ; 55e46 (15:5e46)
- db $08 ; asm
- ld hl, Route19TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19BattleText1: ; 55e50 (15:5e50)
- TX_FAR _Route19BattleText1
- db "@"
-
-Route19EndBattleText1: ; 55e55 (15:5e55)
- TX_FAR _Route19EndBattleText1
- db "@"
-
-Route19AfterBattleText1: ; 55e5a (15:5e5a)
- TX_FAR _Route19AfterBattleText1
- db "@"
-
-Route19BattleText2: ; 55e5f (15:5e5f)
- TX_FAR _Route19BattleText2
- db "@"
-
-Route19EndBattleText2: ; 55e64 (15:5e64)
- TX_FAR _Route19EndBattleText2
- db "@"
-
-Route19AfterBattleText2: ; 55e69 (15:5e69)
- TX_FAR _Route19AfterBattleText2
- db "@"
-
-Route19BattleText3: ; 55e6e (15:5e6e)
- TX_FAR _Route19BattleText3
- db "@"
-
-Route19EndBattleText3: ; 55e73 (15:5e73)
- TX_FAR _Route19EndBattleText3
- db "@"
-
-Route19AfterBattleText3: ; 55e78 (15:5e78)
- TX_FAR _Route19AfterBattleText3
- db "@"
-
-Route19BattleText4: ; 55e7d (15:5e7d)
- TX_FAR _Route19BattleText4
- db "@"
-
-Route19EndBattleText4: ; 55e82 (15:5e82)
- TX_FAR _Route19EndBattleText4
- db "@"
-
-Route19AfterBattleText4: ; 55e87 (15:5e87)
- TX_FAR _Route19AfterBattleText4
- db "@"
-
-Route19BattleText5: ; 55e8c (15:5e8c)
- TX_FAR _Route19BattleText5
- db "@"
-
-Route19EndBattleText5: ; 55e91 (15:5e91)
- TX_FAR _Route19EndBattleText5
- db "@"
-
-Route19AfterBattleText5: ; 55e96 (15:5e96)
- TX_FAR _Route19AfterBattleText5
- db "@"
-
-Route19BattleText6: ; 55e9b (15:5e9b)
- TX_FAR _Route19BattleText6
- db "@"
-
-Route19EndBattleText6: ; 55ea0 (15:5ea0)
- TX_FAR _Route19EndBattleText6
- db "@"
-
-Route19AfterBattleText6: ; 55ea5 (15:5ea5)
- TX_FAR _Route19AfterBattleText6
- db "@"
-
-Route19BattleText7: ; 55eaa (15:5eaa)
- TX_FAR _Route19BattleText7
- db "@"
-
-Route19EndBattleText7: ; 55eaf (15:5eaf)
- TX_FAR _Route19EndBattleText7
- db "@"
-
-Route19AfterBattleText7: ; 55eb4 (15:5eb4)
- TX_FAR _Route19AfterBattleText7
- db "@"
-
-Route19BattleText8: ; 55eb9 (15:5eb9)
- TX_FAR _Route19BattleText8
- db "@"
-
-Route19EndBattleText8: ; 55ebe (15:5ebe)
- TX_FAR _Route19EndBattleText8
- db "@"
-
-Route19AfterBattleText8: ; 55ec3 (15:5ec3)
- TX_FAR _Route19AfterBattleText8
- db "@"
-
-Route19BattleText9: ; 55ec8 (15:5ec8)
- TX_FAR _Route19BattleText9
- db "@"
-
-Route19EndBattleText9: ; 55ecd (15:5ecd)
- TX_FAR _Route19EndBattleText9
- db "@"
-
-Route19AfterBattleText9: ; 55ed2 (15:5ed2)
- TX_FAR _Route19AfterBattleText9
- db "@"
-
-Route19BattleText10: ; 55ed7 (15:5ed7)
- TX_FAR _Route19BattleText10
- db "@"
-
-Route19EndBattleText10: ; 55edc (15:5edc)
- TX_FAR _Route19EndBattleText10
- db "@"
-
-Route19AfterBattleText10: ; 55ee1 (15:5ee1)
- TX_FAR _Route19AfterBattleText10
- db "@"
-
-Route19Text11: ; 55ee6 (15:5ee6)
- TX_FAR _Route19Text11
- db "@"
-
-Route21Script: ; 55eeb (15:5eeb)
- call EnableAutoTextBoxDrawing
- ld hl, Route21TrainerHeaders
- ld de, Route21ScriptPointers
- ld a, [W_ROUTE21CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE21CURSCRIPT], a
- ret
-
-Route21ScriptPointers: ; 55efe (15:5efe)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route21TextPointers: ; 55f04 (15:5f04)
- dw Route21Text1
- dw Route21Text2
- dw Route21Text3
- dw Route21Text4
- dw Route21Text5
- dw Route21Text6
- dw Route21Text7
- dw Route21Text8
- dw Route21Text9
-
-Route21TrainerHeaders: ; 55f16 (15:5f16)
-Route21TrainerHeader0: ; 55f16 (15:5f16)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText1 ; 0x5fdd TextBeforeBattle
- dw Route21AfterBattleText1 ; 0x5fe7 TextAfterBattle
- dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle
- dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle
-
-Route21TrainerHeader1: ; 55f22 (15:5f22)
- db $2 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText2 ; 0x5fec TextBeforeBattle
- dw Route21AfterBattleText2 ; 0x5ff6 TextAfterBattle
- dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle
- dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle
-
-Route21TrainerHeader2: ; 55f2e (15:5f2e)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText3 ; 0x5ffb TextBeforeBattle
- dw Route21AfterBattleText3 ; 0x6005 TextAfterBattle
- dw Route21EndBattleText3 ; 0x6000 TextEndBattle
- dw Route21EndBattleText3 ; 0x6000 TextEndBattle
-
-Route21TrainerHeader3: ; 55f3a (15:5f3a)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText4 ; 0x600a TextBeforeBattle
- dw Route21AfterBattleText4 ; 0x6014 TextAfterBattle
- dw Route21EndBattleText4 ; 0x600f TextEndBattle
- dw Route21EndBattleText4 ; 0x600f TextEndBattle
-
-Route21TrainerHeader4: ; 55f46 (15:5f46)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText5 ; 0x6019 TextBeforeBattle
- dw Route21AfterBattleText5 ; 0x6023 TextAfterBattle
- dw Route21EndBattleText5 ; 0x601e TextEndBattle
- dw Route21EndBattleText5 ; 0x601e TextEndBattle
-
-Route21TrainerHeader5: ; 55f52 (15:5f52)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText6 ; 0x6028 TextBeforeBattle
- dw Route21AfterBattleText6 ; 0x6032 TextAfterBattle
- dw Route21EndBattleText6 ; 0x602d TextEndBattle
- dw Route21EndBattleText6 ; 0x602d TextEndBattle
-
-Route21TrainerHeader6: ; 55f5e (15:5f5e)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText7 ; 0x6037 TextBeforeBattle
- dw Route21AfterBattleText7 ; 0x6041 TextAfterBattle
- dw Route21EndBattleText7 ; 0x603c TextEndBattle
- dw Route21EndBattleText7 ; 0x603c TextEndBattle
-
-Route21TrainerHeader7: ; 55f6a (15:5f6a)
- db $8 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText8 ; 0x6046 TextBeforeBattle
- dw Route21AfterBattleText8 ; 0x6050 TextAfterBattle
- dw Route21EndBattleText8 ; 0x604b TextEndBattle
- dw Route21EndBattleText8 ; 0x604b TextEndBattle
-
-Route21TrainerHeader8: ; 55f76 (15:5f76)
- db $9 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7e9 ; flag's byte
- dw Route21BattleText9 ; 0x6055 TextBeforeBattle
- dw Route21AfterBattleText9 ; 0x605f TextAfterBattle
- dw Route21EndBattleText9 ; 0x605a TextEndBattle
- dw Route21EndBattleText9 ; 0x605a TextEndBattle
-
- db $ff
-
-Route21Text1: ; 55f83 (15:5f83)
- db $08 ; asm
- ld hl, Route21TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text2: ; 55f8d (15:5f8d)
- db $08 ; asm
- ld hl, Route21TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text3: ; 55f97 (15:5f97)
- db $08 ; asm
- ld hl, Route21TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text4: ; 55fa1 (15:5fa1)
- db $08 ; asm
- ld hl, Route21TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text5: ; 55fab (15:5fab)
- db $08 ; asm
- ld hl, Route21TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text6: ; 55fb5 (15:5fb5)
- db $08 ; asm
- ld hl, Route21TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text7: ; 55fbf (15:5fbf)
- db $08 ; asm
- ld hl, Route21TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text8: ; 55fc9 (15:5fc9)
- db $08 ; asm
- ld hl, Route21TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text9: ; 55fd3 (15:5fd3)
- db $08 ; asm
- ld hl, Route21TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21BattleText1: ; 55fdd (15:5fdd)
- TX_FAR _Route21BattleText1
- db "@"
-
-Route21EndBattleText1: ; 55fe2 (15:5fe2)
- TX_FAR _Route21EndBattleText1
- db "@"
-
-Route21AfterBattleText1: ; 55fe7 (15:5fe7)
- TX_FAR _Route21AfterBattleText1
- db "@"
-
-Route21BattleText2: ; 55fec (15:5fec)
- TX_FAR _Route21BattleText2
- db "@"
-
-Route21EndBattleText2: ; 55ff1 (15:5ff1)
- TX_FAR _Route21EndBattleText2
- db "@"
-
-Route21AfterBattleText2: ; 55ff6 (15:5ff6)
- TX_FAR _Route21AfterBattleText2
- db "@"
-
-Route21BattleText3: ; 55ffb (15:5ffb)
- TX_FAR _Route21BattleText3
- db "@"
-
-Route21EndBattleText3: ; 56000 (15:6000)
- TX_FAR _Route21EndBattleText3
- db "@"
-
-Route21AfterBattleText3: ; 56005 (15:6005)
- TX_FAR _Route21AfterBattleText3
- db "@"
-
-Route21BattleText4: ; 5600a (15:600a)
- TX_FAR _Route21BattleText4
- db "@"
-
-Route21EndBattleText4: ; 5600f (15:600f)
- TX_FAR _Route21EndBattleText4
- db "@"
-
-Route21AfterBattleText4: ; 56014 (15:6014)
- TX_FAR _Route21AfterBattleText4
- db "@"
-
-Route21BattleText5: ; 56019 (15:6019)
- TX_FAR _Route21BattleText5
- db "@"
-
-Route21EndBattleText5: ; 5601e (15:601e)
- TX_FAR _Route21EndBattleText5
- db "@"
-
-Route21AfterBattleText5: ; 56023 (15:6023)
- TX_FAR _Route21AfterBattleText5
- db "@"
-
-Route21BattleText6: ; 56028 (15:6028)
- TX_FAR _Route21BattleText6
- db "@"
-
-Route21EndBattleText6: ; 5602d (15:602d)
- TX_FAR _Route21EndBattleText6
- db "@"
-
-Route21AfterBattleText6: ; 56032 (15:6032)
- TX_FAR _Route21AfterBattleText6
- db "@"
-
-Route21BattleText7: ; 56037 (15:6037)
- TX_FAR _Route21BattleText7
- db "@"
-
-Route21EndBattleText7: ; 5603c (15:603c)
- TX_FAR _Route21EndBattleText7
- db "@"
-
-Route21AfterBattleText7: ; 56041 (15:6041)
- TX_FAR _Route21AfterBattleText7
- db "@"
-
-Route21BattleText8: ; 56046 (15:6046)
- TX_FAR _Route21BattleText8
- db "@"
-
-Route21EndBattleText8: ; 5604b (15:604b)
- TX_FAR _Route21EndBattleText8
- db "@"
-
-Route21AfterBattleText8: ; 56050 (15:6050)
- TX_FAR _Route21AfterBattleText8
- db "@"
-
-Route21BattleText9: ; 56055 (15:6055)
- TX_FAR _Route21BattleText9
- db "@"
-
-Route21EndBattleText9: ; 5605a (15:605a)
- TX_FAR _Route21EndBattleText9
- db "@"
-
-Route21AfterBattleText9: ; 5605f (15:605f)
- TX_FAR _Route21AfterBattleText9
- db "@"
-
-VermilionHouse2_h: ; 0x56064 to 0x56070 (12 bytes) (id=163)
- db HOUSE ; tileset
- db VERMILION_HOUSE_2_HEIGHT, VERMILION_HOUSE_2_WIDTH ; dimensions (y, x)
- dw VermilionHouse2Blocks, VermilionHouse2TextPointers, VermilionHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionHouse2Object ; objects
-
-VermilionHouse2Script: ; 56070 (15:6070)
- jp EnableAutoTextBoxDrawing
-
-VermilionHouse2TextPointers: ; 56073 (15:6073)
- dw VermilionHouse2Text1
-
-VermilionHouse2Text1: ; 56075 (15:6075)
- db $08 ; asm
- ld a, [$d728]
- bit 3, a
- jr nz, asm_03ef5 ; 0x5607b
- ld hl, UnnamedText_560b1
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, asm_eb1b7 ; 0x5608a
- ld bc, (OLD_ROD << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d728
- set 3, [hl]
- ld hl, UnnamedText_560b6
- jr asm_5dd95 ; 0x5609c
-.BagFull
- ld hl, UnnamedText_560ca
- jr asm_5dd95 ; 0x560a1
-asm_eb1b7 ; 0x560a3
- ld hl, UnnamedText_560c0
- jr asm_5dd95 ; 0x560a6
-asm_03ef5 ; 0x560a8
- ld hl, UnnamedText_560c5
-asm_5dd95 ; 0x560ab
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_560b1: ; 560b1 (15:60b1)
- TX_FAR _UnnamedText_560b1
- db "@"
-
-UnnamedText_560b6: ; 560b6 (15:60b6)
- TX_FAR _UnnamedText_560b6 ; 0x9c554
- db $0B
- TX_FAR _UnnamedText_560bb ; 0x9c5a4
- db "@"
-
-UnnamedText_560c0: ; 560c0 (15:60c0)
- TX_FAR _UnnamedText_560c0
- db "@"
-
-UnnamedText_560c5: ; 560c5 (15:60c5)
- TX_FAR _UnnamedText_560c5
- db "@"
-
-UnnamedText_560ca: ; 560ca (15:60ca)
- TX_FAR _UnnamedText_560ca
- db "@"
-
-VermilionHouse2Object: ; 0x560cf (size=26)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $8, $ff
- db $7, $3, $8, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $2
- EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $3
-
-CeladonMart2_h: ; 0x560e9 to 0x560f5 (12 bytes) (id=123)
- db LOBBY ; tileset
- db CELADON_MART_2_HEIGHT, CELADON_MART_2_WIDTH ; dimensions (y, x)
- dw CeladonMart2Blocks, CeladonMart2TextPointers, CeladonMart2Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart2Object ; objects
-
-CeladonMart2Script: ; 560f5 (15:60f5)
- jp EnableAutoTextBoxDrawing
-
-CeladonMart2TextPointers: ; 560f8 (15:60f8)
- dw CeladonMart2Text1
- dw CeladonMart2Text2
- dw CeladonMart2Text3
- dw CeladonMart2Text4
- dw CeladonMart2Text5
-
-CeladonMart2Text3: ; 56102 (15:6102)
- TX_FAR _CeladonMart2Text3
- db "@"
-
-CeladonMart2Text4: ; 56107 (15:6107)
- TX_FAR _CeladonMart2Text4
- db "@"
-
-CeladonMart2Text5: ; 5610c (15:610c)
- TX_FAR _CeladonMart2Text5
- db "@"
-
-CeladonMart2Object: ; 0x56111 (size=55)
- db $f ; border tile
-
- db $3 ; warps
- db $1, $c, $4, CELADON_MART_1
- db $1, $10, $1, CELADON_MART_3
- db $1, $1, $0, CELADON_MART_ELEVATOR
-
- db $1 ; signs
- db $1, $e, $5 ; CeladonMart2Text5
-
- db $4 ; people
- db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $1 ; person
- db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $2 ; person
- db SPRITE_FAT_BALD_GUY, $5 + 4, $13 + 4, $ff, $ff, $3 ; person
- db SPRITE_GIRL, $4 + 4, $e + 4, $fe, $1, $4 ; person
-
- ; warp-to
- EVENT_DISP CELADON_MART_2_WIDTH, $1, $c ; CELADON_MART_1
- EVENT_DISP CELADON_MART_2_WIDTH, $1, $10 ; CELADON_MART_3
- EVENT_DISP CELADON_MART_2_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
+INCLUDE "data/mapObjects/celadonmart2.asm"
CeladonMart2Blocks: ; 56148 (15:6148)
INCBIN "maps/celadonmart2.blk"
-FuchsiaHouse3_h: ; 0x56170 to 0x5617c (12 bytes) (id=164)
- db SHIP ; tileset
- db FUCHSIA_HOUSE_3_HEIGHT, FUCHSIA_HOUSE_3_WIDTH ; dimensions (y, x)
- dw FuchsiaHouse3Blocks, FuchsiaHouse3TextPointers, FuchsiaHouse3Script ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaHouse3Object ; objects
-
-FuchsiaHouse3Script: ; 5617c (15:617c)
- jp EnableAutoTextBoxDrawing
-
-FuchsiaHouse3TextPointers: ; 5617f (15:617f)
- dw FuchsiaHouse3Text1
-
-FuchsiaHouse3Text1: ; 56181 (15:6181)
- db $08 ; asm
- ld a, [$d728]
- bit 4, a
- jr nz, .after
-
- ld hl, UnnamedText_561bd
- call PrintText
-
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .refused
-
- ld bc, (GOOD_ROD << 8) | 1
- call GiveItem
- jr nc, .full
-
- ld hl, $d728
- set 4, [hl]
-
- ld hl, UnnamedText_561c2
- jr .talk
-
-.full
- ld hl, UnnamedText_5621c
- jr .talk
-
-.refused
- ld hl, UnnamedText_56212
- jr .talk
-
-.after
- ld hl, UnnamedText_56217
-
-.talk
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_561bd: ; 561bd (15:61bd)
- TX_FAR _UnnamedText_561bd
- db "@"
-
-UnnamedText_561c2: ; 561c2 (15:61c2)
- TX_FAR _UnnamedText_561c2 ; 0xa06e8
- db $0B
- db "@"
-
-UnnamedText_561c8: ; 561c8
- para "つり こそ"
- line "おとこの ロマン だ!"
-
- para "へぼいつりざおは"
- line "コイキングしか つれ なんだが"
- line "この いいつりざおなら"
- line "もっと いいもんが つれるんじゃ!"
- done
-
-UnnamedText_56212: ; 56212 (15:6212)
- TX_FAR _UnnamedText_56212
- db "@"
-
-UnnamedText_56217: ; 56217 (15:6217)
- TX_FAR _UnnamedText_56217
- db "@"
-
-UnnamedText_5621c: ; 5621c (15:621c)
- TX_FAR _UnnamedText_5621c
- db "@"
-
-FuchsiaHouse3Object: ; 0x56221 (size=34)
- db $c ; border tile
-
- db $3 ; warps
- db $0, $2, $8, $ff
- db $7, $2, $7, $ff
- db $7, $3, $7, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d3, $1 ; person
-
- ; warp-to
- EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $0, $2
- EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $2
- EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $3
-
-DayCareM_h: ; 0x56243 to 0x5624f (12 bytes) (id=72)
- db HOUSE ; tileset
- db DAYCAREM_HEIGHT, DAYCAREM_WIDTH ; dimensions (y, x)
- dw DayCareMBlocks, DayCareMTextPointers, DayCareMScript ; blocks, texts, scripts
- db $00 ; connections
- dw DayCareMObject ; objects
-
-DayCareMScript: ; 5624f (15:624f)
- jp EnableAutoTextBoxDrawing
-
-DayCareMTextPointers: ; 56252 (15:6252)
- dw DayCareMText1
-
-DayCareMText1: ; 56254 (15:6254)
- db $8
- call SaveScreenTilesToBuffer2
- ld a, [W_DAYCARE_IN_USE]
- and a
- jp nz, Func_562e1
- ld hl, UnnamedText_5640f
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- ld hl, UnnamedText_5643b
- jp nz, Func_56409
- ld a, [$d163]
- dec a
- ld hl, UnnamedText_56445
- jp z, Func_56409
- ld hl, UnnamedText_56414
- call PrintText
- xor a
- ld [$cfcb], a
- ld [$d07d], a
- ld [$cc35], a
- call DisplayPartyMenu
- push af
- call GBPalWhiteOutWithDelay3
- call Func_3dbe
- call LoadGBPal
- pop af
- ld hl, UnnamedText_56437
- jp c, Func_56409
- callab Func_2171b
- ld hl, UnnamedText_5644a
- jp c, Func_56409
- xor a
- ld [$cc2b], a
- ld a, [wWhichPokemon]
- ld hl, $d2b5
- call GetPartyMonName
- ld hl, UnnamedText_56419
- call PrintText
- ld a, $1
- ld [W_DAYCARE_IN_USE], a
- ld a, $3
- ld [$cf95], a
- call Func_3a68
- xor a
- ld [$cf95], a
- call RemovePokemon
- ld a, [$cf91]
- call PlayCry
- ld hl, UnnamedText_5641e
- jp Func_56409
-
-Func_562e1: ; 562e1 (15:62e1)
- xor a
- ld hl, W_DAYCAREMONNAME
- call GetPartyMonName
- ld a, $3
- ld [$cc49], a
- call LoadMonData
- callab Func_58f43
- ld a, d
- cp $64
- jr c, .asm_56315
- ld d, $64
- callab CalcExperience
- ld hl, $da6d
- ld a, [H_NUMTOPRINT]
- ld [hli], a
- ld a, [$ff97]
- ld [hli], a
- ld a, [$ff98]
- ld [hl], a
- ld d, $64
-
-.asm_56315
- xor a
- ld [wTrainerEngageDistance], a
- ld hl, $da62
- ld a, [hl]
- ld [wTrainerSpriteOffset], a
- cp d
- ld [hl], d
- ld hl, UnnamedText_56432
- jr z, .asm_56333
- ld a, [wTrainerSpriteOffset]
- ld b, a
- ld a, d
- sub b
- ld [wTrainerEngageDistance], a
- ld hl, UnnamedText_56423
-
-.asm_56333
- call PrintText
- ld a, [W_NUMINPARTY]
- cp $6
- ld hl, UnnamedText_56440
- jp z, .asm_56403
- ld de, wTrainerFacingDirection
- xor a
- ld [de], a
- inc de
- ld [de], a
- ld hl, wTrainerScreenX
- ld a, $1
- ld [hli], a
- ld [hl], $0
- ld a, [wTrainerEngageDistance]
- inc a
- ld b, a
- ld c, $2
-.asm_56357
- push hl
- push de
- push bc
- ld a, $b
- call Predef
- pop bc
- pop de
- pop hl
- dec b
- jr nz, .asm_56357
- ld hl, UnnamedText_56428
- call PrintText
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- call YesNoChoice
- ld hl, UnnamedText_56437
- ld a, [wCurrentMenuItem]
- and a
- jp nz, .asm_56403
- ld hl, wTrainerFacingDirection
- ld [$ff9f], a
- ld a, [hli]
- ld [$ffa0], a
- ld a, [hl]
- ld [$ffa1], a
- call HasEnoughMoney
- jr nc, .asm_56396
- ld hl, UnnamedText_56454
- jp .asm_56403
-
-.asm_56396
- xor a
- ld [W_DAYCARE_IN_USE], a
- ld hl, wTrainerEngageDistance
- ld [hli], a
- inc hl
- ld de, $d349
- ld c, $3
- ld a, $c
- call Predef
- ld a, (SFX_02_5a - SFX_Headers_02) / 3
- call PlaySoundWaitForCurrent
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- ld hl, UnnamedText_5644f
- call PrintText
- ld a, $2
- ld [$cf95], a
- call Func_3a68
- ld a, [W_DAYCAREMONDATA]
- ld [$cf91], a
- ld a, [W_NUMINPARTY]
- dec a
- push af
- ld bc, $002c
- push bc
- ld hl, W_PARTYMON1_MOVE1
- call AddNTimes
- ld d, h
- ld e, l
- ld a, $1
- ld [wHPBarMaxHP], a
- ld a, $3e
- call Predef
- pop bc
- pop af
- ld hl, W_PARTYMON1_HP
- call AddNTimes
- ld d, h
- ld e, l
- ld bc, $0021
- add hl, bc
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
- ld a, [$cf91]
- call PlayCry
- ld hl, UnnamedText_5642d
- jr Func_56409
-
-.asm_56403
- ld a, [wTrainerSpriteOffset]
- ld [$da62], a
+INCLUDE "data/mapHeaders/fuchsiahouse3.asm"
-Func_56409: ; 56409 (15:6409)
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5640f: ; 5640f (15:640f)
- TX_FAR _UnnamedText_5640f
- db "@"
-
-UnnamedText_56414: ; 56414 (15:6414)
- TX_FAR _UnnamedText_56414
- db "@"
-
-UnnamedText_56419: ; 56419 (15:6419)
- TX_FAR _UnnamedText_56419
- db "@"
-
-UnnamedText_5641e: ; 5641e (15:641e)
- TX_FAR _UnnamedText_5641e
- db "@"
-
-UnnamedText_56423: ; 56423 (15:6423)
- TX_FAR _UnnamedText_56423
- db "@"
-
-UnnamedText_56428: ; 56428 (15:6428)
- TX_FAR _UnnamedText_56428
- db "@"
-
-UnnamedText_5642d: ; 5642d (15:642d)
- TX_FAR _UnnamedText_5642d
- db "@"
+INCLUDE "scripts/fuchsiahouse3.asm"
-UnnamedText_56432: ; 56432 (15:6432)
- TX_FAR _UnnamedText_56432
- db "@"
+INCLUDE "data/mapObjects/fuchsiahouse3.asm"
-UnnamedText_56437: ; 56437 (15:6437)
- TX_FAR _UnnamedText_56437 ; 0x8c000
-UnnamedText_5643b: ; 5643b (15:643b)
- TX_FAR _UnnamedText_5643b ; 0x8c013
- db "@"
+INCLUDE "data/mapHeaders/daycarem.asm"
-UnnamedText_56440: ; 56440 (15:6440)
- TX_FAR _UnnamedText_56440
- db "@"
+INCLUDE "scripts/daycarem.asm"
-UnnamedText_56445: ; 56445 (15:6445)
- TX_FAR _UnnamedText_56445
- db "@"
+INCLUDE "data/mapObjects/daycarem.asm"
-UnnamedText_5644a: ; 5644a (15:644a)
- TX_FAR _UnnamedText_5644a
- db "@"
+INCLUDE "data/mapHeaders/route12house.asm"
-UnnamedText_5644f: ; 5644f (15:644f)
- TX_FAR _UnnamedText_5644f
- db "@"
+INCLUDE "scripts/route12house.asm"
-UnnamedText_56454: ; 56454 (15:6454)
- TX_FAR _UnnamedText_56454
- db "@"
+INCLUDE "data/mapObjects/route12house.asm"
-DayCareMObject: ; 0x56459 (size=26)
- db $a ; border tile
+INCLUDE "data/mapHeaders/silphco8.asm"
- db $2 ; warps
- db $7, $2, $4, $ff
- db $7, $3, $4, $ff
+INCLUDE "scripts/silphco8.asm"
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
-
- ; warp-to
- EVENT_DISP DAYCAREM_WIDTH, $7, $2
- EVENT_DISP DAYCAREM_WIDTH, $7, $3
-
-Route12House_h: ; 0x56473 to 0x5647f (12 bytes) (id=189)
- db HOUSE ; tileset
- db ROUTE_12_HOUSE_HEIGHT, ROUTE_12_HOUSE_WIDTH ; dimensions (y, x)
- dw Route12HouseBlocks, Route12HouseTextPointers, Route12HouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route12HouseObject ; objects
-
-Route12HouseScript: ; 5647f (15:647f)
- jp EnableAutoTextBoxDrawing
-
-Route12HouseTextPointers: ; 56482 (15:6482)
- dw Route12HouseText1
-
-Route12HouseText1: ; 56484 (15:6484)
- db $08 ; asm
- ld a, [$d728]
- bit 5, a
- jr nz, asm_b4cad ; 0x5648a
- ld hl, UnnamedText_564c0
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, asm_a2d76 ; 0x56499
- ld bc, (SUPER_ROD << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d728
- set 5, [hl]
- ld hl, UnnamedText_564c5
- jr asm_df984 ; 0x564ab
-.BagFull
- ld hl, UnnamedText_564d9
- jr asm_df984 ; 0x564b0
-asm_a2d76 ; 0x564b2
- ld hl, UnnamedText_564cf
- jr asm_df984 ; 0x564b5
-asm_b4cad ; 0x564b7
- ld hl, UnnamedText_564d4
-asm_df984 ; 0x564ba
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_564c0: ; 564c0 (15:64c0)
- TX_FAR _UnnamedText_564c0
- db "@"
-
-UnnamedText_564c5: ; 564c5 (15:64c5)
- TX_FAR _UnnamedText_564c5 ; 0x8ca00
- db $0B
- TX_FAR _UnnamedText_564ca ; 0x8ca4f
- db "@"
-
-UnnamedText_564cf: ; 564cf (15:64cf)
- TX_FAR _UnnamedText_564cf
- db "@"
-
-UnnamedText_564d4: ; 564d4 (15:64d4)
- TX_FAR _UnnamedText_564d4
- db "@"
-
-UnnamedText_564d9: ; 564d9 (15:64d9)
- TX_FAR _UnnamedText_564d9
- db "@"
-
-Route12HouseObject: ; 0x564de (size=26)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $3, $ff
- db $7, $3, $3, $ff
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $2
- EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $3
-
-SilphCo8_h: ; 0x564f8 to 0x56504 (12 bytes) (id=213)
- db FACILITY ; tileset
- db SILPH_CO_8F_HEIGHT, SILPH_CO_8F_WIDTH ; dimensions (y, x)
- dw SilphCo8Blocks, SilphCo8TextPointers, SilphCo8Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo8Object ; objects
-
-SilphCo8Script: ; 56504 (15:6504)
- call SilphCo8Script_5651a
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo8TrainerHeader0
- ld de, SilphCo8ScriptPointers
- ld a, [W_SILPHCO8CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO8CURSCRIPT], a
- ret
-
-SilphCo8Script_5651a: ; 5651a (15:651a)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_5653e ; $653e
- call Func_56541
- call Func_5656d
- ld a, [$d832]
- bit 0, a
- ret nz
- ld a, $5f
- ld [$d09f], a
- ld bc, $403
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-DataTable_5653e: ; 5653e (15:653e)
- db $04,$03,$FF
-
-Func_56541: ; 56541 (15:6541)
- push hl
- ld hl, $d73f
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_5654d
- ld a, [hli]
- cp $ff
- jr z, .asm_56569
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_5655e
- inc hl
- jr .asm_5654d
-.asm_5655e
- ld a, [hli]
- cp c
- jr nz, .asm_5654d
- ld hl, $d73f
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_56569
- xor a
- ld [$ffe0], a
- ret
-
-Func_5656d: ; 5656d (15:656d)
- ld a, [$ffe0]
- and a
- ret z
- ld hl, $d832
- set 0, [hl]
- ret
-
-SilphCo8ScriptPointers: ; 56577 (15:6577)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo8TextPointers: ; 5657d (15:657d)
- dw SilphCo8Text1
- dw SilphCo8Text2
- dw SilphCo8Text3
- dw SilphCo8Text4
-
-SilphCo8TrainerHeaders: ; 56585 (15:6585)
-SilphCo8TrainerHeader0: ; 56585 (15:6585)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d831 ; flag's byte
- dw SilphCo8BattleText1 ; 0x65e6 TextBeforeBattle
- dw SilphCo8AfterBattleText1 ; 0x65f0 TextAfterBattle
- dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle
- dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle
-
-SilphCo8TrainerHeader1: ; 56591 (15:6591)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d831 ; flag's byte
- dw SilphCo8BattleText2 ; 0x65f5 TextBeforeBattle
- dw SilphCo8AfterBattleText2 ; 0x65ff TextAfterBattle
- dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle
- dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle
-
-SilphCo8TrainerHeader2: ; 5659d (15:659d)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d831 ; flag's byte
- dw SilphCo8BattleText3 ; 0x6604 TextBeforeBattle
- dw SilphCo8AfterBattleText3 ; 0x660e TextAfterBattle
- dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle
- dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle
-
- db $ff
-
-SilphCo8Text1: ; 565aa (15:65aa)
- db $08 ; asm
- ld a, [$d838]
- bit 7, a
- ld hl, UnnamedText_565c3
- jr nz, asm_a468f ; 0x565b3
- ld hl, UnnamedText_565be
-asm_a468f ; 0x565b8
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_565be: ; 565be (15:65be)
- TX_FAR _UnnamedText_565be
- db "@"
-
-UnnamedText_565c3: ; 565c3 (15:65c3)
- TX_FAR _UnnamedText_565c3
- db "@"
-
-SilphCo8Text2: ; 565c8 (15:65c8)
- db $08 ; asm
- ld hl, SilphCo8TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo8Text3: ; 565d2 (15:65d2)
- db $08 ; asm
- ld hl, SilphCo8TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo8Text4: ; 565dc (15:65dc)
- db $08 ; asm
- ld hl, SilphCo8TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo8BattleText1: ; 565e6 (15:65e6)
- TX_FAR _SilphCo8BattleText1
- db "@"
-
-SilphCo8EndBattleText1: ; 565eb (15:65eb)
- TX_FAR _SilphCo8EndBattleText1
- db "@"
-
-SilphCo8AfterBattleText1: ; 565f0 (15:65f0)
- TX_FAR _SilphCo8AfterBattleText1
- db "@"
-
-SilphCo8BattleText2: ; 565f5 (15:65f5)
- TX_FAR _SilphCo8BattleText2
- db "@"
-
-SilphCo8EndBattleText2: ; 565fa (15:65fa)
- TX_FAR _SilphCo8EndBattleText2
- db "@"
-
-SilphCo8AfterBattleText2: ; 565ff (15:65ff)
- TX_FAR _SilphCo8AfterBattleText2
- db "@"
-
-SilphCo8BattleText3: ; 56604 (15:6604)
- TX_FAR _SilphCo8BattleText3
- db "@"
-
-SilphCo8EndBattleText3: ; 56609 (15:6609)
- TX_FAR _SilphCo8EndBattleText3
- db "@"
-
-SilphCo8AfterBattleText3: ; 5660e (15:660e)
- TX_FAR _SilphCo8AfterBattleText3
- db "@"
-
-SilphCo8Object: ; 0x56613 (size=90)
- db $2e ; border tile
-
- db $7 ; warps
- db $0, $10, $1, SILPH_CO_9F
- db $0, $e, $0, SILPH_CO_7F
- db $0, $12, $0, SILPH_CO_ELEVATOR
- db $b, $3, $6, SILPH_CO_8F
- db $f, $3, $4, SILPH_CO_2F
- db $5, $b, $5, SILPH_CO_2F
- db $9, $b, $3, SILPH_CO_8F
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_LAPRAS_GIVER, $2 + 4, $4 + 4, $ff, $ff, $1 ; person
- db SPRITE_ROCKET, $2 + 4, $13 + 4, $ff, $d2, $42, ROCKET + $C8, $23 ; trainer
- db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d0, $43, SCIENTIST + $C8, $9 ; trainer
- db SPRITE_ROCKET, $f + 4, $c + 4, $ff, $d3, $44, ROCKET + $C8, $24 ; trainer
-
- ; warp-to
- EVENT_DISP SILPH_CO_8F_WIDTH, $0, $10 ; SILPH_CO_9F
- EVENT_DISP SILPH_CO_8F_WIDTH, $0, $e ; SILPH_CO_7F
- EVENT_DISP SILPH_CO_8F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_8F_WIDTH, $b, $3 ; SILPH_CO_8F
- EVENT_DISP SILPH_CO_8F_WIDTH, $f, $3 ; SILPH_CO_2F
- EVENT_DISP SILPH_CO_8F_WIDTH, $5, $b ; SILPH_CO_2F
- EVENT_DISP SILPH_CO_8F_WIDTH, $9, $b ; SILPH_CO_8F
+INCLUDE "data/mapObjects/silphco8.asm"
SilphCo8Blocks: ; 5666d (15:666d)
INCBIN "maps/silphco8.blk"
@@ -85632,7 +46779,7 @@ DisplayDiploma: ; 566e2 (15:66e2)
dec c
jr nz, .asm_5673e ; 0x56747 $f5
call EnableLCD
- callba Func_5ae6
+ callba LoadTrainerInfoTextBoxTiles
ld b, $8
call GoPAL_SET
call Delay3
@@ -86038,341 +47185,58 @@ CheckPlayerIsInFrontOfSprite: ; 569e3 (15:69e3)
SECTION "bank16",ROMX,BANK[$16]
-Route6_h: ; 0x58000 to 0x58022 (34 bytes) (id=17)
- db OVERWORLD ; tileset
- db ROUTE_6_HEIGHT, ROUTE_6_WIDTH ; dimensions (y, x)
- dw Route6Blocks, Route6TextPointers, Route6Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks
- SOUTH_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 2, VERMILION_CITY_WIDTH - 4, VermilionCityBlocks, ROUTE_6_WIDTH, ROUTE_6_HEIGHT
- dw Route6Object ; objects
-
-Route6Object: ; 0x58022 (size=87)
- db $f ; border tile
-
- db $4 ; warps
- db $1, $9, $2, ROUTE_6_GATE
- db $1, $a, $2, ROUTE_6_GATE
- db $7, $a, $0, ROUTE_6_GATE
- db $d, $11, $0, PATH_ENTRANCE_ROUTE_6
-
- db $1 ; signs
- db $f, $13, $7 ; Route6Text7
-
- db $6 ; people
- db SPRITE_BLACK_HAIR_BOY_1, $15 + 4, $a + 4, $ff, $d3, $41, JR__TRAINER_M + $C8, $4 ; trainer
- db SPRITE_LASS, $15 + 4, $b + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $f + 4, $0 + 4, $ff, $d3, $43, BUG_CATCHER + $C8, $a ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $5 ; trainer
- db SPRITE_LASS, $1e + 4, $b + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $3 ; trainer
- db SPRITE_BUG_CATCHER, $1a + 4, $13 + 4, $ff, $d2, $46, BUG_CATCHER + $C8, $b ; trainer
-
- ; warp-to
- EVENT_DISP ROUTE_6_WIDTH, $1, $9 ; ROUTE_6_GATE
- EVENT_DISP ROUTE_6_WIDTH, $1, $a ; ROUTE_6_GATE
- EVENT_DISP ROUTE_6_WIDTH, $7, $a ; ROUTE_6_GATE
- EVENT_DISP ROUTE_6_WIDTH, $d, $11 ; PATH_ENTRANCE_ROUTE_6
+INCLUDE "data/mapHeaders/route6.asm"
+
+INCLUDE "data/mapObjects/route6.asm"
Route6Blocks: ; 58079 (16:4079)
INCBIN "maps/route6.blk"
-Route8_h: ; 0x5812d to 0x5814f (34 bytes) (id=19)
- db OVERWORLD ; tileset
- db ROUTE_8_HEIGHT, ROUTE_8_WIDTH ; dimensions (y, x)
- dw Route8Blocks, Route8TextPointers, Route8Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_8_WIDTH
- EAST_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_HEIGHT, LavenderTownBlocks, ROUTE_8_WIDTH
- dw Route8Object ; objects
-
-Route8Object: ; 0x5814f (size=119)
- db $2c ; border tile
-
- db $5 ; warps
- db $9, $1, $0, ROUTE_8_GATE
- db $a, $1, $1, ROUTE_8_GATE
- db $9, $8, $2, ROUTE_8_GATE
- db $a, $8, $3, ROUTE_8_GATE
- db $3, $d, $0, PATH_ENTRANCE_ROUTE_8
-
- db $1 ; signs
- db $3, $11, $a ; Route8Text10
-
- db $9 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $8 + 4, $ff, $d3, $41, SUPER_NERD + $C8, $3 ; trainer
- db SPRITE_GAMBLER, $9 + 4, $d + 4, $ff, $d1, $42, GAMBLER + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $6 + 4, $2a + 4, $ff, $d1, $43, SUPER_NERD + $C8, $4 ; trainer
- db SPRITE_LASS, $3 + 4, $1a + 4, $ff, $d2, $44, LASS + $C8, $d ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $1a + 4, $ff, $d3, $45, SUPER_NERD + $C8, $5 ; trainer
- db SPRITE_LASS, $5 + 4, $1a + 4, $ff, $d2, $46, LASS + $C8, $e ; trainer
- db SPRITE_LASS, $6 + 4, $1a + 4, $ff, $d3, $47, LASS + $C8, $f ; trainer
- db SPRITE_GAMBLER, $d + 4, $2e + 4, $ff, $d0, $48, GAMBLER + $C8, $7 ; trainer
- db SPRITE_LASS, $c + 4, $33 + 4, $ff, $d2, $49, LASS + $C8, $10 ; trainer
-
- ; warp-to
- EVENT_DISP ROUTE_8_WIDTH, $9, $1 ; ROUTE_8_GATE
- EVENT_DISP ROUTE_8_WIDTH, $a, $1 ; ROUTE_8_GATE
- EVENT_DISP ROUTE_8_WIDTH, $9, $8 ; ROUTE_8_GATE
- EVENT_DISP ROUTE_8_WIDTH, $a, $8 ; ROUTE_8_GATE
- EVENT_DISP ROUTE_8_WIDTH, $3, $d ; PATH_ENTRANCE_ROUTE_8
+INCLUDE "data/mapHeaders/route8.asm"
+
+INCLUDE "data/mapObjects/route8.asm"
Route8Blocks: ; 581c6 (16:41c6)
INCBIN "maps/route8.blk"
-Route10_h: ; 0x582d4 to 0x582f6 (34 bytes) (id=21)
- db OVERWORLD ; tileset
- db ROUTE_10_HEIGHT, ROUTE_10_WIDTH ; dimensions (y, x)
- dw Route10Blocks, Route10TextPointers, Route10Script ; blocks, texts, scripts
- db SOUTH | WEST ; connections
- SOUTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks, ROUTE_10_WIDTH, ROUTE_10_HEIGHT
- WEST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 0, 0, ROUTE_9_HEIGHT, Route9Blocks, ROUTE_10_WIDTH
- dw Route10Object ; objects
-
-Route10Object: ; 0x582f6 (size=96)
- db $2c ; border tile
-
- db $4 ; warps
- db $13, $b, $0, ROCK_TUNNEL_POKECENTER
- db $11, $8, $0, ROCK_TUNNEL_1
- db $35, $8, $2, ROCK_TUNNEL_1
- db $27, $6, $0, POWER_PLANT
-
- db $4 ; signs
- db $13, $7, $7 ; Route10Text7
- db $13, $c, $8 ; PokeCenterSignText
- db $37, $9, $9 ; Route10Text9
- db $29, $5, $a ; Route10Text10
-
- db $6 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $2c + 4, $a + 4, $ff, $d2, $41, POKEMANIAC + $C8, $1 ; trainer
- db SPRITE_HIKER, $39 + 4, $3 + 4, $ff, $d1, $42, HIKER + $C8, $7 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $40 + 4, $e + 4, $ff, $d2, $43, POKEMANIAC + $C8, $2 ; trainer
- db SPRITE_LASS, $19 + 4, $7 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $7 ; trainer
- db SPRITE_HIKER, $3d + 4, $3 + 4, $ff, $d0, $45, HIKER + $C8, $8 ; trainer
- db SPRITE_LASS, $36 + 4, $7 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $8 ; trainer
-
- ; warp-to
- EVENT_DISP ROUTE_10_WIDTH, $13, $b ; ROCK_TUNNEL_POKECENTER
- EVENT_DISP ROUTE_10_WIDTH, $11, $8 ; ROCK_TUNNEL_1
- EVENT_DISP ROUTE_10_WIDTH, $35, $8 ; ROCK_TUNNEL_1
- EVENT_DISP ROUTE_10_WIDTH, $27, $6 ; POWER_PLANT
+INCLUDE "data/mapHeaders/route10.asm"
+
+INCLUDE "data/mapObjects/route10.asm"
Route10Blocks: ; 58356 (16:4356)
INCBIN "maps/route10.blk"
-Route11_h: ; 0x584be to 0x584e0 (34 bytes) (id=22)
- db OVERWORLD ; tileset
- db ROUTE_11_HEIGHT, ROUTE_11_WIDTH ; dimensions (y, x)
- dw Route11Blocks, Route11TextPointers, Route11Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 1, VERMILION_CITY_HEIGHT - 3, VermilionCityBlocks, ROUTE_11_WIDTH
- EAST_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, -3, 24, ROUTE_12_HEIGHT - 39, Route12Blocks, ROUTE_11_WIDTH
- dw Route11Object ; objects
-
-Route11Object: ; 0x584e0 (size=127)
- db $f ; border tile
-
- db $5 ; warps
- db $8, $31, $0, ROUTE_11_GATE_1F
- db $9, $31, $1, ROUTE_11_GATE_1F
- db $8, $3a, $2, ROUTE_11_GATE_1F
- db $9, $3a, $3, ROUTE_11_GATE_1F
- db $5, $4, $0, DIGLETTS_CAVE_ENTRANCE
-
- db $1 ; signs
- db $5, $1, $b ; Route11Text11
-
- db $a ; people
- db SPRITE_GAMBLER, $e + 4, $a + 4, $ff, $d0, $41, GAMBLER + $C8, $1 ; trainer
- db SPRITE_GAMBLER, $9 + 4, $1a + 4, $ff, $d0, $42, GAMBLER + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $5 + 4, $d + 4, $ff, $d2, $43, YOUNGSTER + $C8, $9 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $24 + 4, $ff, $d0, $44, ENGINEER + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $4 + 4, $16 + 4, $ff, $d1, $45, YOUNGSTER + $C8, $a ; trainer
- db SPRITE_GAMBLER, $7 + 4, $2d + 4, $ff, $d0, $46, GAMBLER + $C8, $3 ; trainer
- db SPRITE_GAMBLER, $3 + 4, $21 + 4, $ff, $d1, $47, GAMBLER + $C8, $4 ; trainer
- db SPRITE_BUG_CATCHER, $5 + 4, $2b + 4, $ff, $d3, $48, YOUNGSTER + $C8, $b ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $10 + 4, $2d + 4, $ff, $d2, $49, ENGINEER + $C8, $3 ; trainer
- db SPRITE_BUG_CATCHER, $c + 4, $16 + 4, $ff, $d1, $4a, YOUNGSTER + $C8, $c ; trainer
-
- ; warp-to
- EVENT_DISP ROUTE_11_WIDTH, $8, $31 ; ROUTE_11_GATE_1F
- EVENT_DISP ROUTE_11_WIDTH, $9, $31 ; ROUTE_11_GATE_1F
- EVENT_DISP ROUTE_11_WIDTH, $8, $3a ; ROUTE_11_GATE_1F
- EVENT_DISP ROUTE_11_WIDTH, $9, $3a ; ROUTE_11_GATE_1F
- EVENT_DISP ROUTE_11_WIDTH, $5, $4 ; DIGLETTS_CAVE_ENTRANCE
+INCLUDE "data/mapHeaders/route11.asm"
+
+INCLUDE "data/mapObjects/route11.asm"
Route11Blocks: ; 5855f (16:455f)
INCBIN "maps/route11.blk"
-Route12_h: ; 0x5866d to 0x5869a (45 bytes) (id=23)
- db OVERWORLD ; tileset
- db ROUTE_12_HEIGHT, ROUTE_12_WIDTH ; dimensions (y, x)
- dw Route12Blocks, Route12TextPointers, Route12Script ; blocks, texts, scripts
- db NORTH | SOUTH | WEST ; connections
- NORTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks
- SOUTH_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, -3, 17, ROUTE_13_WIDTH - 17, Route13Blocks, ROUTE_12_WIDTH, ROUTE_12_HEIGHT
- WEST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 27, 0, ROUTE_11_HEIGHT, Route11Blocks, ROUTE_12_WIDTH
- dw Route12Object ; objects
-
-Route12Object: ; 0x5869a (size=118)
- db $43 ; border tile
-
- db $4 ; warps
- db $f, $a, $0, ROUTE_12_GATE_1F
- db $f, $b, $1, ROUTE_12_GATE_1F
- db $15, $a, $2, ROUTE_12_GATE_1F
- db $4d, $b, $0, ROUTE_12_HOUSE
-
- db $2 ; signs
- db $d, $d, $b ; Route12Text11
- db $3f, $b, $c ; Route12Text12
-
- db $a ; people
- db SPRITE_SNORLAX, $3e + 4, $a + 4, $ff, $d0, $1 ; person
- db SPRITE_FISHER2, $1f + 4, $e + 4, $ff, $d2, $42, FISHER + $C8, $3 ; trainer
- db SPRITE_FISHER2, $27 + 4, $5 + 4, $ff, $d1, $43, FISHER + $C8, $4 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $5c + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $9 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $4c + 4, $e + 4, $ff, $d1, $45, ROCKER + $C8, $2 ; trainer
- db SPRITE_FISHER2, $28 + 4, $c + 4, $ff, $d2, $46, FISHER + $C8, $5 ; trainer
- db SPRITE_FISHER2, $34 + 4, $9 + 4, $ff, $d3, $47, FISHER + $C8, $6 ; trainer
- db SPRITE_FISHER2, $57 + 4, $6 + 4, $ff, $d0, $48, FISHER + $C8, $b ; trainer
- db SPRITE_BALL, $23 + 4, $e + 4, $ff, $ff, $89, TM_16 ; item
- db SPRITE_BALL, $59 + 4, $5 + 4, $ff, $ff, $8a, IRON ; item
-
- ; warp-to
- EVENT_DISP ROUTE_12_WIDTH, $f, $a ; ROUTE_12_GATE_1F
- EVENT_DISP ROUTE_12_WIDTH, $f, $b ; ROUTE_12_GATE_1F
- EVENT_DISP ROUTE_12_WIDTH, $15, $a ; ROUTE_12_GATE_1F
- EVENT_DISP ROUTE_12_WIDTH, $4d, $b ; ROUTE_12_HOUSE
+INCLUDE "data/mapHeaders/route12.asm"
+
+INCLUDE "data/mapObjects/route12.asm"
Route12Blocks: ; 58710 (16:4710)
INCBIN "maps/route12.blk"
-Route15_h: ; 0x5892c to 0x5894e (34 bytes) (id=26)
- db OVERWORLD ; tileset
- db ROUTE_15_HEIGHT, ROUTE_15_WIDTH ; dimensions (y, x)
- dw Route15Blocks, Route15TextPointers, Route15Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_15_WIDTH
- EAST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, -3, 15, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_15_WIDTH
- dw Route15Object ; objects
-
-Route15Object: ; 0x5894e (size=126)
- db $43 ; border tile
-
- db $4 ; warps
- db $8, $7, $0, ROUTE_15_GATE_1F
- db $9, $7, $1, ROUTE_15_GATE_1F
- db $8, $e, $2, ROUTE_15_GATE_1F
- db $9, $e, $3, ROUTE_15_GATE_1F
-
- db $1 ; signs
- db $9, $27, $c ; Route15Text12
-
- db $b ; people
- db SPRITE_LASS, $b + 4, $29 + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $14 ; trainer
- db SPRITE_LASS, $a + 4, $35 + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $15 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $1f + 4, $ff, $d1, $43, BIRD_KEEPER + $C8, $6 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $23 + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $7 ; trainer
- db SPRITE_FOULARD_WOMAN, $b + 4, $35 + 4, $ff, $d0, $45, BEAUTY + $C8, $9 ; trainer
- db SPRITE_FOULARD_WOMAN, $a + 4, $29 + 4, $ff, $d3, $46, BEAUTY + $C8, $a ; trainer
- db SPRITE_BIKER, $a + 4, $30 + 4, $ff, $d0, $47, BIKER + $C8, $3 ; trainer
- db SPRITE_BIKER, $a + 4, $2e + 4, $ff, $d0, $48, BIKER + $C8, $4 ; trainer
- db SPRITE_LASS, $5 + 4, $25 + 4, $ff, $d3, $49, JR__TRAINER_F + $C8, $16 ; trainer
- db SPRITE_LASS, $d + 4, $12 + 4, $ff, $d1, $4a, JR__TRAINER_F + $C8, $17 ; trainer
- db SPRITE_BALL, $5 + 4, $12 + 4, $ff, $ff, $8b, TM_20 ; item
-
- ; warp-to
- EVENT_DISP ROUTE_15_WIDTH, $8, $7 ; ROUTE_15_GATE_1F
- EVENT_DISP ROUTE_15_WIDTH, $9, $7 ; ROUTE_15_GATE_1F
- EVENT_DISP ROUTE_15_WIDTH, $8, $e ; ROUTE_15_GATE_1F
- EVENT_DISP ROUTE_15_WIDTH, $9, $e ; ROUTE_15_GATE_1F
+INCLUDE "data/mapHeaders/route15.asm"
+
+INCLUDE "data/mapObjects/route15.asm"
Route15Blocks: ; 589cc (16:49cc)
INCBIN "maps/route15.blk"
-Route16_h: ; 0x58ada to 0x58afc (34 bytes) (id=27)
- db OVERWORLD ; tileset
- db ROUTE_16_HEIGHT, ROUTE_16_WIDTH ; dimensions (y, x)
- dw Route16Blocks, Route16TextPointers, Route16Script ; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, 0, 0, ROUTE_17_WIDTH, Route17Blocks, ROUTE_16_WIDTH, ROUTE_16_HEIGHT
- EAST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_16_WIDTH
- dw Route16Object ; objects
-
-Route16Object: ; 0x58afc (size=136)
- db $f ; border tile
-
- db $9 ; warps
- db $a, $11, $0, ROUTE_16_GATE_1F
- db $b, $11, $1, ROUTE_16_GATE_1F
- db $a, $18, $2, ROUTE_16_GATE_1F
- db $b, $18, $3, ROUTE_16_GATE_1F
- db $4, $11, $4, ROUTE_16_GATE_1F
- db $5, $11, $5, ROUTE_16_GATE_1F
- db $4, $18, $6, ROUTE_16_GATE_1F
- db $5, $18, $7, ROUTE_16_GATE_1F
- db $5, $7, $0, ROUTE_16_HOUSE
-
- db $2 ; signs
- db $b, $1b, $8 ; Route16Text8
- db $11, $5, $9 ; Route16Text9
-
- db $7 ; people
- db SPRITE_BIKER, $c + 4, $11 + 4, $ff, $d2, $41, BIKER + $C8, $5 ; trainer
- db SPRITE_BIKER, $d + 4, $e + 4, $ff, $d3, $42, CUE_BALL + $C8, $1 ; trainer
- db SPRITE_BIKER, $c + 4, $b + 4, $ff, $d1, $43, CUE_BALL + $C8, $2 ; trainer
- db SPRITE_BIKER, $b + 4, $9 + 4, $ff, $d2, $44, BIKER + $C8, $6 ; trainer
- db SPRITE_BIKER, $a + 4, $6 + 4, $ff, $d3, $45, CUE_BALL + $C8, $3 ; trainer
- db SPRITE_BIKER, $c + 4, $3 + 4, $ff, $d3, $46, BIKER + $C8, $7 ; trainer
- db SPRITE_SNORLAX, $a + 4, $1a + 4, $ff, $d0, $7 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_16_WIDTH, $a, $11 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $b, $11 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $a, $18 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $b, $18 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $4, $11 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $5, $11 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $4, $18 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $5, $18 ; ROUTE_16_GATE_1F
- EVENT_DISP ROUTE_16_WIDTH, $5, $7 ; ROUTE_16_HOUSE
+INCLUDE "data/mapHeaders/route16.asm"
+
+INCLUDE "data/mapObjects/route16.asm"
Route16Blocks: ; 58b84 (16:4b84)
INCBIN "maps/route16.blk"
-Route18_h: ; 0x58c38 to 0x58c5a (34 bytes) (id=29)
- db OVERWORLD ; tileset
- db ROUTE_18_HEIGHT, ROUTE_18_WIDTH ; dimensions (y, x)
- dw Route18Blocks, Route18TextPointers, Route18Script ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, ROUTE_17_HEIGHT, 0, 0, ROUTE_17_WIDTH, Route17Blocks
- EAST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_18_WIDTH
- dw Route18Object ; objects
-
-Route18Object: ; 0x58c5a (size=66)
- db $43 ; border tile
-
- db $4 ; warps
- db $8, $21, $0, ROUTE_18_GATE_1F
- db $9, $21, $1, ROUTE_18_GATE_1F
- db $8, $28, $2, ROUTE_18_GATE_1F
- db $9, $28, $3, ROUTE_18_GATE_1F
-
- db $2 ; signs
- db $7, $2b, $4 ; Route18Text4
- db $5, $21, $5 ; Route18Text5
-
- db $3 ; people
- db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $24 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $8 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $28 + 4, $ff, $d2, $42, BIRD_KEEPER + $C8, $9 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $2a + 4, $ff, $d2, $43, BIRD_KEEPER + $C8, $a ; trainer
-
- ; warp-to
- EVENT_DISP ROUTE_18_WIDTH, $8, $21 ; ROUTE_18_GATE_1F
- EVENT_DISP ROUTE_18_WIDTH, $9, $21 ; ROUTE_18_GATE_1F
- EVENT_DISP ROUTE_18_WIDTH, $8, $28 ; ROUTE_18_GATE_1F
- EVENT_DISP ROUTE_18_WIDTH, $9, $28 ; ROUTE_18_GATE_1F
+INCLUDE "data/mapHeaders/route18.asm"
+
+INCLUDE "data/mapObjects/route18.asm"
Route18Blocks: ; 58c9c (16:4c9c)
INCBIN "maps/route18.blk"
@@ -86391,21 +47255,21 @@ Func_58d99: ; 58d99 (16:4d99)
.asm_58daa
ld a, [W_ENEMYMONID]
call PlayCry
- ld hl, UnnamedText_58e3b ; $4e3b
+ ld hl, WildMonAppearedText
ld a, [W_MOVEMISSED] ; $d05f
and a
jr z, .asm_58dbc
- ld hl, UnnamedText_58e40 ; $4e40
+ ld hl, HookedMonAttackedText
.asm_58dbc
jr .asm_58dc9
.asm_58dbe
call Func_58e29
ld c, $14
call DelayFrames
- ld hl, UnnamedText_58e4a ; $4e4a
+ ld hl, TrainerWantsToFightText
.asm_58dc9
push hl
- callab Func_3a849
+ callab DrawAllPokeballs
pop hl
call PrintText
jr asm_58e3a
@@ -86422,22 +47286,22 @@ Func_58d99: ; 58d99 (16:4d99)
callab Func_3eb01
jr .asm_58daa
.asm_58df5
- ld hl, UnnamedText_58e45 ; $4e45
+ ld hl, EnemyAppearedText
call PrintText
- ld hl, UnnamedText_58e54 ; $4e54
+ ld hl, GhostCantBeIDdText
call PrintText
jr asm_58e3a
.asm_58e03
ld a, b
and a
jr z, .asm_58df5
- ld hl, UnnamedText_58e45 ; $4e45
+ ld hl, EnemyAppearedText
call PrintText
- ld hl, UnnamedText_58e4f ; $4e4f
+ ld hl, UnveiledGhostText
call PrintText
callab Func_3eb01
callab Func_708ca
- ld hl, UnnamedText_58e3b ; $4e3b
+ ld hl, WildMonAppearedText
call PrintText
Func_58e29: ; 58e29 (16:4e29)
@@ -86451,35 +47315,35 @@ Func_58e29: ; 58e29 (16:4e29)
asm_58e3a: ; 58e3a (16:4e3a)
ret
-UnnamedText_58e3b: ; 58e3b (16:4e3b)
- TX_FAR _UnnamedText_58e3b
+WildMonAppearedText: ; 58e3b (16:4e3b)
+ TX_FAR _WildMonAppearedText
db "@"
-UnnamedText_58e40: ; 58e40 (16:4e40)
- TX_FAR _UnnamedText_58e40
+HookedMonAttackedText: ; 58e40 (16:4e40)
+ TX_FAR _HookedMonAttackedText
db "@"
-UnnamedText_58e45: ; 58e45 (16:4e45)
- TX_FAR _UnnamedText_58e45
+EnemyAppearedText: ; 58e45 (16:4e45)
+ TX_FAR _EnemyAppearedText
db "@"
-UnnamedText_58e4a: ; 58e4a (16:4e4a)
- TX_FAR _UnnamedText_58e4a
+TrainerWantsToFightText: ; 58e4a (16:4e4a)
+ TX_FAR _TrainerWantsToFightText
db "@"
-UnnamedText_58e4f: ; 58e4f (16:4e4f)
- TX_FAR _UnnamedText_58e4f
+UnveiledGhostText: ; 58e4f (16:4e4f)
+ TX_FAR _UnveiledGhostText
db "@"
-UnnamedText_58e54: ; 58e54 (16:4e54)
- TX_FAR _UnnamedText_58e54
+GhostCantBeIDdText: ; 58e54 (16:4e54)
+ TX_FAR _GhostCantBeIDdText
db "@"
Func_58e59: ; 58e59 (16:4e59)
ld hl, W_ENEMYMONCURHP ; $cfe6
ld a, [hli]
or [hl]
- ld hl, UnnamedText_58eae ; $4eae
+ ld hl, GoText
jr z, .asm_58eab
xor a
ld [H_NUMTOPRINT], a ; $ff96 (aliases: H_MULTIPLICAND)
@@ -86505,52 +47369,52 @@ Func_58e59: ; 58e59 (16:4e59)
ld [H_REMAINDER], a ; $ff99 (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN)
call Divide
ld a, [$ff98]
- ld hl, UnnamedText_58eae ; $4eae
+ ld hl, GoText
cp $46
jr nc, .asm_58eab
- ld hl, UnnamedText_58eb5 ; $4eb5
+ ld hl, DoItText
cp $28
jr nc, .asm_58eab
- ld hl, UnnamedText_58ebc ; $4ebc
+ ld hl, GetmText
cp $a
jr nc, .asm_58eab
- ld hl, UnnamedText_58ec3 ; $4ec3
+ ld hl, EnemysWeakText
.asm_58eab
jp PrintText
-UnnamedText_58eae: ; 58eae (16:4eae)
- TX_FAR _UnnamedText_58eae
+GoText: ; 58eae (16:4eae)
+ TX_FAR _GoText
db $08 ; asm
jr Func_58ec8
-UnnamedText_58eb5: ; 58eb5 (16:4eb5)
- TX_FAR _UnnamedText_58eb5
+DoItText: ; 58eb5 (16:4eb5)
+ TX_FAR _DoItText
db $08 ; asm
jr Func_58ec8
-UnnamedText_58ebc: ; 58ebc (16:4ebc)
- TX_FAR _UnnamedText_58ebc
+GetmText: ; 58ebc (16:4ebc)
+ TX_FAR _GetmText
db $08 ; asm
jr Func_58ec8
-UnnamedText_58ec3: ; 58ec3 (16:4ec3)
- TX_FAR _UnnamedText_58ec3
+EnemysWeakText: ; 58ec3 (16:4ec3)
+ TX_FAR _EnemysWeakText
db $08 ; asm
Func_58ec8
- ld hl, UnnamedText_58ecc ; $4ecc
+ ld hl, PlayerMon1Text
ret
-UnnamedText_58ecc: ; 58ecc (16:4ecc)
- TX_FAR _UnnamedText_58ecc
+PlayerMon1Text: ; 58ecc (16:4ecc)
+ TX_FAR _PlayerMon1Text
db "@"
Func_58ed1: ; 58ed1 (16:4ed1)
- ld hl, UnnamedText_58ed7 ; $4ed7
+ ld hl, PlayerMon2Text
jp PrintText
-UnnamedText_58ed7: ; 58ed7 (16:4ed7)
- TX_FAR _UnnamedText_58ed7
+PlayerMon2Text: ; 58ed7 (16:4ed7)
+ TX_FAR _PlayerMon2Text
db $08 ; asm
push de
push bc
@@ -86583,39 +47447,39 @@ UnnamedText_58ed7: ; 58ed7 (16:4ed7)
pop bc
pop de
ld a, [$ff98]
- ld hl, UnnamedText_58f25
+ ld hl, EnoughText
and a
ret z
- ld hl, UnnamedText_58f3e
+ ld hl, ComeBackText
cp $1e
ret c
- ld hl, UnnamedText_58f2c
+ ld hl, OKExclamationText
cp $46
ret c
- ld hl, UnnamedText_58f33
+ ld hl, GoodText
ret
-UnnamedText_58f25: ; 58f25 (16:4f25)
- TX_FAR _UnnamedText_58f25
+EnoughText: ; 58f25 (16:4f25)
+ TX_FAR _EnoughText
db $08 ; asm
jr Func_58f3a
-UnnamedText_58f2c: ; 58f2c (16:4f2c)
- TX_FAR _UnnamedText_58f2c
+OKExclamationText: ; 58f2c (16:4f2c)
+ TX_FAR _OKExclamationText
db $08 ; asm
jr Func_58f3a
-UnnamedText_58f33: ; 58f33 (16:4f33)
- TX_FAR _UnnamedText_58f33
+GoodText: ; 58f33 (16:4f33)
+ TX_FAR _GoodText
db $08 ; asm
jr Func_58f3a
Func_58f3a: ; 58f3a (16:4f3a)
- ld hl, UnnamedText_58f3e
+ ld hl, ComeBackText
ret
-UnnamedText_58f3e: ; 58f3e (16:4f3e)
- TX_FAR _UnnamedText_58f3e
+ComeBackText: ; 58f3e (16:4f3e)
+ TX_FAR _ComeBackText
db "@"
Func_58f43: ; 58f43 (16:4f43)
@@ -86762,7 +47626,7 @@ CalcDSquared: ; 59010 (16:5010)
; each entry has the following scheme:
; %AAAABBBB %SCCCCCCC %DDDDDDDD %EEEEEEEE
-; resulting in
+; resulting in
; (a*n^3)/b + sign*c*n^2 + d*n - e
; where sign = -1 <=> S=1
GrowthRateTable: ; 5901d (16:501d)
@@ -86774,7 +47638,7 @@ GrowthRateTable: ; 5901d (16:501d)
db $54,$00,$00,$00 ; slow: 5/4 n^3
Func_59035 ; 0x59035
- ld hl, UnnamedText_59091 ; $5091
+ ld hl, OaksAideHiText
call PrintText
call YesNoChoice
ld a, [$cc26]
@@ -86791,3185 +47655,126 @@ Func_59035 ; 0x59035
jr z, .asm_59059 ; 0x59055 $2
jr nc, .asm_5907c ; 0x59057 $23
.asm_59059
- ld hl, UnnamedText_590a0 ; $50a0
+ ld hl, OaksAideHereYouGoText
call PrintText
ld a, [$ffdc]
ld b, a
ld c, 1
call GiveItem
jr nc, .BagFull
- ld hl, UnnamedText_590a5 ; $50a5
+ ld hl, OaksAideGotItemText
call PrintText
ld a, $1
jr .asm_5908e ; 0x59071 $1b
.BagFull
- ld hl, UnnamedText_590ab ; $50ab
+ ld hl, OaksAideNoRoomText
call PrintText
xor a
jr .asm_5908e ; 0x5907a $12
.asm_5907c
- ld hl, UnnamedText_59096 ; $5096
+ ld hl, OaksAideUhOhText
call PrintText
ld a, $80
jr .asm_5908e ; 0x59084 $8
.asm_59086
- ld hl, UnnamedText_5909b ; $509b
+ ld hl, OaksAideComeBackText
call PrintText
ld a, $ff
.asm_5908e
ld [$ffdb], a
ret
-UnnamedText_59091: ; 59091 (16:5091)
- TX_FAR _UnnamedText_59091
+OaksAideHiText: ; 59091 (16:5091)
+ TX_FAR _OaksAideHiText
db "@"
-UnnamedText_59096: ; 59096 (16:5096)
- TX_FAR _UnnamedText_59096
+OaksAideUhOhText: ; 59096 (16:5096)
+ TX_FAR _OaksAideUhOhText
db "@"
-UnnamedText_5909b: ; 5909b (16:509b)
- TX_FAR _UnnamedText_5909b
+OaksAideComeBackText: ; 5909b (16:509b)
+ TX_FAR _OaksAideComeBackText
db "@"
-UnnamedText_590a0: ; 590a0 (16:50a0)
- TX_FAR _UnnamedText_590a0
+OaksAideHereYouGoText: ; 590a0 (16:50a0)
+ TX_FAR _OaksAideHereYouGoText
db "@"
-UnnamedText_590a5: ; 590a5 (16:50a5)
- TX_FAR _UnnamedText_590a5
+OaksAideGotItemText: ; 590a5 (16:50a5)
+ TX_FAR _OaksAideGotItemText
db $0b
db "@"
-UnnamedText_590ab: ; 590ab (16:50ab)
- TX_FAR _UnnamedText_590ab
- db "@"
-
-Route6Script: ; 590b0 (16:50b0)
- call EnableAutoTextBoxDrawing
- ld hl, Route6TrainerHeaders
- ld de, Route6ScriptPointers
- ld a, [W_ROUTE6CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE6CURSCRIPT], a
- ret
-
-Route6ScriptPointers: ; 590c3 (16:50c3)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route6TextPointers: ; 590c9 (16:50c9)
- dw Route6Text1
- dw Route6Text2
- dw Route6Text3
- dw Route6Text4
- dw Route6Text5
- dw Route6Text6
- dw Route6Text7
-
-Route6TrainerHeaders: ; 590d7 (16:50d7)
-Route6TrainerHeader0: ; 590d7 (16:50d7)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7c9 ; flag's byte
- dw Route6BattleText1 ; 0x512a TextBeforeBattle
- dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle
- dw Route6EndBattleText1 ; 0x512f TextEndBattle
- dw Route6EndBattleText1 ; 0x512f TextEndBattle
-
-Route6TrainerHeader1: ; 590e3 (16:50e3)
- db $2 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d7c9 ; flag's byte
- dw Route6BattleText2 ; 0x5143 TextBeforeBattle
- dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle
- dw Route6EndBattleText2 ; 0x5148 TextEndBattle
- dw Route6EndBattleText2 ; 0x5148 TextEndBattle
-
-Route6TrainerHeader2: ; 590ef (16:50ef)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7c9 ; flag's byte
- dw Route6BattleText3 ; 0x5157 TextBeforeBattle
- dw Route6AfterBattleText3 ; 0x5161 TextAfterBattle
- dw Route6EndBattleText3 ; 0x515c TextEndBattle
- dw Route6EndBattleText3 ; 0x515c TextEndBattle
-
-Route6TrainerHeader3: ; 590fb (16:50fb)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c9 ; flag's byte
- dw Route6BattleText4 ; 0x5170 TextBeforeBattle
- dw Route6AfterBattleText4 ; 0x517a TextAfterBattle
- dw Route6EndBattleText4 ; 0x5175 TextEndBattle
- dw Route6EndBattleText4 ; 0x5175 TextEndBattle
-
-Route6TrainerHeader4: ; 59107 (16:5107)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c9 ; flag's byte
- dw Route6BattleText5 ; 0x5189 TextBeforeBattle
- dw Route6AfterBattleText5 ; 0x5193 TextAfterBattle
- dw Route6EndBattleText5 ; 0x518e TextEndBattle
- dw Route6EndBattleText5 ; 0x518e TextEndBattle
-
-Route6TrainerHeader5: ; 59113 (16:5113)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7c9 ; flag's byte
- dw Route6BattleText6 ; 0x51a2 TextBeforeBattle
- dw Route6AfterBattleText6 ; 0x51ac TextAfterBattle
- dw Route6EndBattleText6 ; 0x51a7 TextEndBattle
- dw Route6EndBattleText6 ; 0x51a7 TextEndBattle
-
- db $ff
-
-Route6Text1: ; 59120 (16:5120)
- db $8
- ld hl, Route6TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText1: ; 5912a (16:512a)
- TX_FAR _Route6BattleText1
- db "@"
-
-Route6EndBattleText1: ; 5912f (16:512f)
- TX_FAR _Route6EndBattleText1
- db "@"
-
-Route6AfterBattleText1: ; 59134 (16:5134)
- TX_FAR _Route6AfterBattleText1
- db "@"
-
-Route6Text2: ; 59139 (16:5139)
- db $08 ; asm
- ld hl, Route6TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText2: ; 59143 (16:5143)
- TX_FAR _Route6BattleText2
- db "@"
-
-Route6EndBattleText2: ; 59148 (16:5148)
- TX_FAR _Route6EndBattleText2
- db "@"
-
-Route6Text3: ; 5914d (16:514d)
- db $08 ; asm
- ld hl, Route6TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText3: ; 59157 (16:5157)
- TX_FAR _Route6BattleText3
- db "@"
-
-Route6EndBattleText3: ; 5915c (16:515c)
- TX_FAR _Route6EndBattleText3
- db "@"
-
-Route6AfterBattleText3: ; 59161 (16:5161)
- TX_FAR _Route6AfterBattleText3
- db "@"
-
-Route6Text4: ; 59166 (16:5166)
- db $08 ; asm
- ld hl, Route6TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText4: ; 59170 (16:5170)
- TX_FAR _Route6BattleText4
- db "@"
-
-Route6EndBattleText4: ; 59175 (16:5175)
- TX_FAR _Route6EndBattleText4
- db "@"
-
-Route6AfterBattleText4: ; 5917a (16:517a)
- TX_FAR _Route6AfterBattleText4
- db "@"
-
-Route6Text5: ; 5917f (16:517f)
- db $08 ; asm
- ld hl, Route6TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText5: ; 59189 (16:5189)
- TX_FAR _Route6BattleText5
- db "@"
-
-Route6EndBattleText5: ; 5918e (16:518e)
- TX_FAR _Route6EndBattleText5
- db "@"
-
-Route6AfterBattleText5: ; 59193 (16:5193)
- TX_FAR _Route6AfterBattleText5
- db "@"
-
-Route6Text6: ; 59198 (16:5198)
- db $08 ; asm
- ld hl, Route6TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText6: ; 591a2 (16:51a2)
- TX_FAR _Route6BattleText6
- db "@"
-
-Route6EndBattleText6: ; 591a7 (16:51a7)
- TX_FAR _Route6EndBattleText6
- db "@"
-
-Route6AfterBattleText6: ; 591ac (16:51ac)
- TX_FAR _Route6AfterBattleText6
- db "@"
-
-Route6Text7: ; 591b1 (16:51b1)
- TX_FAR _Route6Text7
- db "@"
-
-Route8Script: ; 591b6 (16:51b6)
- call EnableAutoTextBoxDrawing
- ld hl, Route8TrainerHeaders
- ld de, Route8ScriptPointers
- ld a, [W_ROUTE8CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE8CURSCRIPT], a
- ret
-
-Route8ScriptPointers: ; 591c9 (16:51c9)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route8TextPointers: ; 591cf (16:51cf)
- dw Route8Text1
- dw Route8Text2
- dw Route8Text3
- dw Route8Text4
- dw Route8Text5
- dw Route8Text6
- dw Route8Text7
- dw Route8Text8
- dw Route8Text9
- dw Route8Text10
-
-Route8TrainerHeaders: ; 591e3 (16:51e3)
-Route8TrainerHeader0: ; 591e3 (16:51e3)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText1 ; 0x525a TextBeforeBattle
- dw Route8AfterBattleText1 ; 0x5264 TextAfterBattle
- dw Route8EndBattleText1 ; 0x525f TextEndBattle
- dw Route8EndBattleText1 ; 0x525f TextEndBattle
-
-Route8TrainerHeader1: ; 591ef (16:51ef)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText2 ; 0x5273 TextBeforeBattle
- dw Route8AfterBattleText2 ; 0x527d TextAfterBattle
- dw Route8EndBattleText2 ; 0x5278 TextEndBattle
- dw Route8EndBattleText2 ; 0x5278 TextEndBattle
-
-Route8TrainerHeader2: ; 591fb (16:51fb)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText3 ; 0x528c TextBeforeBattle
- dw Route8AfterBattleText3 ; 0x5296 TextAfterBattle
- dw Route8EndBattleText3 ; 0x5291 TextEndBattle
- dw Route8EndBattleText3 ; 0x5291 TextEndBattle
-
-Route8TrainerHeader3: ; 59207 (16:5207)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText4 ; 0x52a5 TextBeforeBattle
- dw Route8AfterBattleText4 ; 0x52af TextAfterBattle
- dw Route8EndBattleText4 ; 0x52aa TextEndBattle
- dw Route8EndBattleText4 ; 0x52aa TextEndBattle
-
-Route8TrainerHeader4: ; 59213 (16:5213)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText5 ; 0x52be TextBeforeBattle
- dw Route8AfterBattleText5 ; 0x52c8 TextAfterBattle
- dw Route8EndBattleText5 ; 0x52c3 TextEndBattle
- dw Route8EndBattleText5 ; 0x52c3 TextEndBattle
-
-Route8TrainerHeader5: ; 5921f (16:521f)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText6 ; 0x52d7 TextBeforeBattle
- dw Route8AfterBattleText6 ; 0x52e1 TextAfterBattle
- dw Route8EndBattleText6 ; 0x52dc TextEndBattle
- dw Route8EndBattleText6 ; 0x52dc TextEndBattle
-
-Route8TrainerHeader6: ; 5922b (16:522b)
- db $7 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText7 ; 0x52f0 TextBeforeBattle
- dw Route8AfterBattleText7 ; 0x52fa TextAfterBattle
- dw Route8EndBattleText7 ; 0x52f5 TextEndBattle
- dw Route8EndBattleText7 ; 0x52f5 TextEndBattle
-
-Route8TrainerHeader7: ; 59237 (16:5237)
- db $8 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText8 ; 0x5309 TextBeforeBattle
- dw Route8AfterBattleText8 ; 0x5313 TextAfterBattle
- dw Route8EndBattleText8 ; 0x530e TextEndBattle
- dw Route8EndBattleText8 ; 0x530e TextEndBattle
-
-Route8TrainerHeader8: ; 59243 (16:5243)
- db $9 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7cd ; flag's byte
- dw Route8BattleText9 ; 0x5322 TextBeforeBattle
- dw Route8AfterBattleText9 ; 0x532c TextAfterBattle
- dw Route8EndBattleText9 ; 0x5327 TextEndBattle
- dw Route8EndBattleText9 ; 0x5327 TextEndBattle
-
- db $ff
-
-Route8Text1: ; 59250 (16:5250)
- db $8
- ld hl, Route8TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText1: ; 5925a (16:525a)
- TX_FAR _Route8BattleText1
- db "@"
-
-Route8EndBattleText1: ; 5925f (16:525f)
- TX_FAR _Route8EndBattleText1
- db "@"
-
-Route8AfterBattleText1: ; 59264 (16:5264)
- TX_FAR _Route8AfterBattleText1
- db "@"
-
-Route8Text2: ; 59269 (16:5269)
- db $08 ; asm
- ld hl, Route8TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText2: ; 59273 (16:5273)
- TX_FAR _Route8BattleText2
- db "@"
-
-Route8EndBattleText2: ; 59278 (16:5278)
- TX_FAR _Route8EndBattleText2
- db "@"
-
-Route8AfterBattleText2: ; 5927d (16:527d)
- TX_FAR _Route8AfterBattleText2
- db "@"
-
-Route8Text3: ; 59282 (16:5282)
- db $08 ; asm
- ld hl, Route8TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText3: ; 5928c (16:528c)
- TX_FAR _Route8BattleText3
- db "@"
-
-Route8EndBattleText3: ; 59291 (16:5291)
- TX_FAR _Route8EndBattleText3
- db "@"
-
-Route8AfterBattleText3: ; 59296 (16:5296)
- TX_FAR _Route8AfterBattleText3
- db "@"
-
-Route8Text4: ; 5929b (16:529b)
- db $08 ; asm
- ld hl, Route8TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText4: ; 592a5 (16:52a5)
- TX_FAR _Route8BattleText4
- db "@"
-
-Route8EndBattleText4: ; 592aa (16:52aa)
- TX_FAR _Route8EndBattleText4
- db "@"
-
-Route8AfterBattleText4: ; 592af (16:52af)
- TX_FAR _Route8AfterBattleText4
- db "@"
-
-Route8Text5: ; 592b4 (16:52b4)
- db $08 ; asm
- ld hl, Route8TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText5: ; 592be (16:52be)
- TX_FAR _Route8BattleText5
- db "@"
-
-Route8EndBattleText5: ; 592c3 (16:52c3)
- TX_FAR _Route8EndBattleText5
- db "@"
-
-Route8AfterBattleText5: ; 592c8 (16:52c8)
- TX_FAR _Route8AfterBattleText5
- db "@"
-
-Route8Text6: ; 592cd (16:52cd)
- db $08 ; asm
- ld hl, Route8TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText6: ; 592d7 (16:52d7)
- TX_FAR _Route8BattleText6
- db "@"
-
-Route8EndBattleText6: ; 592dc (16:52dc)
- TX_FAR _Route8EndBattleText6
- db "@"
-
-Route8AfterBattleText6: ; 592e1 (16:52e1)
- TX_FAR _Route8AfterBattleText6
- db "@"
-
-Route8Text7: ; 592e6 (16:52e6)
- db $08 ; asm
- ld hl, Route8TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText7: ; 592f0 (16:52f0)
- TX_FAR _Route8BattleText7
- db "@"
-
-Route8EndBattleText7: ; 592f5 (16:52f5)
- TX_FAR _Route8EndBattleText7
- db "@"
-
-Route8AfterBattleText7: ; 592fa (16:52fa)
- TX_FAR _Route8AfterBattleText7
- db "@"
-
-Route8Text8: ; 592ff (16:52ff)
- db $08 ; asm
- ld hl, Route8TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText8: ; 59309 (16:5309)
- TX_FAR _Route8BattleText8
- db "@"
-
-Route8EndBattleText8: ; 5930e (16:530e)
- TX_FAR _Route8EndBattleText8
- db "@"
-
-Route8AfterBattleText8: ; 59313 (16:5313)
- TX_FAR _Route8AfterBattleText8
- db "@"
-
-Route8Text9: ; 59318 (16:5318)
- db $08 ; asm
- ld hl, Route8TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText9: ; 59322 (16:5322)
- TX_FAR _Route8BattleText9
- db "@"
-
-Route8EndBattleText9: ; 59327 (16:5327)
- TX_FAR _Route8EndBattleText9
- db "@"
-
-Route8AfterBattleText9: ; 5932c (16:532c)
- TX_FAR _Route8AfterBattleText9
- db "@"
-
-Route8Text10: ; 59331 (16:5331)
- TX_FAR _Route8Text10
- db "@"
-
-Route10Script: ; 59336 (16:5336)
- call EnableAutoTextBoxDrawing
- ld hl, Route10TrainerHeaders
- ld de, Route10ScriptPointers
- ld a, [W_ROUTE10CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE10CURSCRIPT], a
- ret
-
-Route10ScriptPointers: ; 59349 (16:5349)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route10TextPointers: ; 5934f (16:534f)
- dw Route10Text1
- dw Route10Text2
- dw Route10Text3
- dw Route10Text4
- dw Route10Text5
- dw Route10Text6
- dw Route10Text7
- dw PokeCenterSignText
- dw Route10Text9
- dw Route10Text10
-
-Route10TrainerHeaders: ; 59363 (16:5363)
-Route10TrainerHeader0: ; 59363 (16:5363)
- db $1 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d1 ; flag's byte
- dw Route10BattleText1 ; 0x53b6 TextBeforeBattle
- dw Route10AfterBattleText1 ; 0x53c0 TextAfterBattle
- dw Route10EndBattleText1 ; 0x53bb TextEndBattle
- dw Route10EndBattleText1 ; 0x53bb TextEndBattle
-
-Route10TrainerHeader1: ; 5936f (16:536f)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d1 ; flag's byte
- dw Route10BattleText2 ; 0x53cf TextBeforeBattle
- dw Route10AfterBattleText2 ; 0x53d9 TextAfterBattle
- dw Route10EndBattleText2 ; 0x53d4 TextEndBattle
- dw Route10EndBattleText2 ; 0x53d4 TextEndBattle
-
-Route10TrainerHeader2: ; 5937b (16:537b)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d1 ; flag's byte
- dw Route10BattleText3 ; 0x53e8 TextBeforeBattle
- dw Route10AfterBattleText3 ; 0x53f2 TextAfterBattle
- dw Route10EndBattleText3 ; 0x53ed TextEndBattle
- dw Route10EndBattleText3 ; 0x53ed TextEndBattle
-
-Route10TrainerHeader3: ; 59387 (16:5387)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d1 ; flag's byte
- dw Route10BattleText4 ; 0x5401 TextBeforeBattle
- dw Route10AfterBattleText4 ; 0x540b TextAfterBattle
- dw Route10EndBattleText4 ; 0x5406 TextEndBattle
- dw Route10EndBattleText4 ; 0x5406 TextEndBattle
-
-Route10TrainerHeader4: ; 59393 (16:5393)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d1 ; flag's byte
- dw Route10BattleText5 ; 0x541a TextBeforeBattle
- dw Route10AfterBattleText5 ; 0x5424 TextAfterBattle
- dw Route10EndBattleText5 ; 0x541f TextEndBattle
- dw Route10EndBattleText5 ; 0x541f TextEndBattle
-
-Route10TrainerHeader5: ; 5939f (16:539f)
- db $6 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d1 ; flag's byte
- dw Route10BattleText6 ; 0x5433 TextBeforeBattle
- dw Route10AfterBattleText6 ; 0x543d TextAfterBattle
- dw Route10EndBattleText6 ; 0x5438 TextEndBattle
- dw Route10EndBattleText6 ; 0x5438 TextEndBattle
-
- db $ff
-
-Route10Text1: ; 593ac (16:53ac)
- db $08 ; asm
- ld hl, Route10TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText1: ; 593b6 (16:53b6)
- TX_FAR _Route10BattleText1
- db "@"
-
-Route10EndBattleText1: ; 593bb (16:53bb)
- TX_FAR _Route10EndBattleText1
- db "@"
-
-Route10AfterBattleText1: ; 593c0 (16:53c0)
- TX_FAR _Route10AfterBattleText1
- db "@"
-
-Route10Text2: ; 593c5 (16:53c5)
- db $08 ; asm
- ld hl, Route10TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText2: ; 593cf (16:53cf)
- TX_FAR _Route10BattleText2
- db "@"
-
-Route10EndBattleText2: ; 593d4 (16:53d4)
- TX_FAR _Route10EndBattleText2
- db "@"
-
-Route10AfterBattleText2: ; 593d9 (16:53d9)
- TX_FAR _Route10AfterBattleText2
- db "@"
-
-Route10Text3: ; 593de (16:53de)
- db $08 ; asm
- ld hl, Route10TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText3: ; 593e8 (16:53e8)
- TX_FAR _Route10BattleText3
- db "@"
-
-Route10EndBattleText3: ; 593ed (16:53ed)
- TX_FAR _Route10EndBattleText3
- db "@"
-
-Route10AfterBattleText3: ; 593f2 (16:53f2)
- TX_FAR _Route10AfterBattleText3
- db "@"
-
-Route10Text4: ; 593f7 (16:53f7)
- db $08 ; asm
- ld hl, Route10TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText4: ; 59401 (16:5401)
- TX_FAR _Route10BattleText4
- db "@"
-
-Route10EndBattleText4: ; 59406 (16:5406)
- TX_FAR _Route10EndBattleText4
- db "@"
-
-Route10AfterBattleText4: ; 5940b (16:540b)
- TX_FAR _Route10AfterBattleText4
- db "@"
-
-Route10Text5: ; 59410 (16:5410)
- db $08 ; asm
- ld hl, Route10TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText5: ; 5941a (16:541a)
- TX_FAR _Route10BattleText5
- db "@"
-
-Route10EndBattleText5: ; 5941f (16:541f)
- TX_FAR _Route10EndBattleText5
- db "@"
-
-Route10AfterBattleText5: ; 59424 (16:5424)
- TX_FAR _Route10AfterBattleText5
- db "@"
-
-Route10Text6: ; 59429 (16:5429)
- db $08 ; asm
- ld hl, Route10TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText6: ; 59433 (16:5433)
- TX_FAR _Route10BattleText6
- db "@"
-
-Route10EndBattleText6: ; 59438 (16:5438)
- TX_FAR _Route10EndBattleText6
- db "@"
-
-Route10AfterBattleText6: ; 5943d (16:543d)
- TX_FAR _Route10AfterBattleText6
- db "@"
-
-Route10Text9: ; 59442 (16:5442)
-Route10Text7: ; 59442 (16:5442)
- TX_FAR _Route10Text7 ; _Route10Text9
- db "@"
-
-Route10Text10: ; 59447 (16:5447)
- TX_FAR _Route10Text10
- db "@"
-
-Route11Script: ; 5944c (16:544c)
- call EnableAutoTextBoxDrawing
- ld hl, Route11TrainerHeaders
- ld de, Route11ScriptPointers
- ld a, [W_ROUTE11CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE11CURSCRIPT], a
- ret
-
-Route11ScriptPointers: ; 5945f (16:545f)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route11TextPointers: ; 59465 (16:5465)
- dw Route11Text1
- dw Route11Text2
- dw Route11Text3
- dw Route11Text4
- dw Route11Text5
- dw Route11Text6
- dw Route11Text7
- dw Route11Text8
- dw Route11Text9
- dw Route11Text10
- dw Route11Text11
-
-Route11TrainerHeaders: ; 5947b (16:547b)
-Route11TrainerHeader0: ; 5947b (16:547b)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText1 ; 0x54fe TextBeforeBattle
- dw Route11AfterBattleText1 ; 0x5508 TextAfterBattle
- dw Route11EndBattleText1 ; 0x5503 TextEndBattle
- dw Route11EndBattleText1 ; 0x5503 TextEndBattle
-
-Route11TrainerHeader1: ; 59487 (16:5487)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText2 ; 0x5517 TextBeforeBattle
- dw Route11AfterBattleText2 ; 0x5521 TextAfterBattle
- dw Route11EndBattleText2 ; 0x551c TextEndBattle
- dw Route11EndBattleText2 ; 0x551c TextEndBattle
-
-Route11TrainerHeader2: ; 59493 (16:5493)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText3 ; 0x5530 TextBeforeBattle
- dw Route11AfterBattleText3 ; 0x553a TextAfterBattle
- dw Route11EndBattleText3 ; 0x5535 TextEndBattle
- dw Route11EndBattleText3 ; 0x5535 TextEndBattle
-
-Route11TrainerHeader3: ; 5949f (16:549f)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText4 ; 0x5549 TextBeforeBattle
- dw Route11AfterBattleText4 ; 0x5553 TextAfterBattle
- dw Route11EndBattleText4 ; 0x554e TextEndBattle
- dw Route11EndBattleText4 ; 0x554e TextEndBattle
-
-Route11TrainerHeader4: ; 594ab (16:54ab)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText5 ; 0x5562 TextBeforeBattle
- dw Route11AfterBattleText5 ; 0x556c TextAfterBattle
- dw Route11EndBattleText5 ; 0x5567 TextEndBattle
- dw Route11EndBattleText5 ; 0x5567 TextEndBattle
-
-Route11TrainerHeader5: ; 594b7 (16:54b7)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText6 ; 0x557b TextBeforeBattle
- dw Route11AfterBattleText6 ; 0x5585 TextAfterBattle
- dw Route11EndBattleText6 ; 0x5580 TextEndBattle
- dw Route11EndBattleText6 ; 0x5580 TextEndBattle
-
-Route11TrainerHeader6: ; 594c3 (16:54c3)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText7 ; 0x5594 TextBeforeBattle
- dw Route11AfterBattleText7 ; 0x559e TextAfterBattle
- dw Route11EndBattleText7 ; 0x5599 TextEndBattle
- dw Route11EndBattleText7 ; 0x5599 TextEndBattle
-
-Route11TrainerHeader7: ; 594cf (16:54cf)
- db $8 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText8 ; 0x55ad TextBeforeBattle
- dw Route11AfterBattleText8 ; 0x55b7 TextAfterBattle
- dw Route11EndBattleText8 ; 0x55b2 TextEndBattle
- dw Route11EndBattleText8 ; 0x55b2 TextEndBattle
-
-Route11TrainerHeader8: ; 594db (16:54db)
- db $9 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText9 ; 0x55c6 TextBeforeBattle
- dw Route11AfterBattleText9 ; 0x55d0 TextAfterBattle
- dw Route11EndBattleText9 ; 0x55cb TextEndBattle
- dw Route11EndBattleText9 ; 0x55cb TextEndBattle
-
-Route11TrainerHeader9: ; 594e7 (16:54e7)
- db $a ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d5 ; flag's byte
- dw Route11BattleText10 ; 0x55df TextBeforeBattle
- dw Route11AfterBattleText10 ; 0x55e9 TextAfterBattle
- dw Route11EndBattleText10 ; 0x55e4 TextEndBattle
- dw Route11EndBattleText10 ; 0x55e4 TextEndBattle
-
- db $ff
-
-Route11Text1: ; 594f4 (16:54f4)
- db $8
- ld hl, Route11TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText1: ; 594fe (16:54fe)
- TX_FAR _Route11BattleText1
- db "@"
-
-Route11EndBattleText1: ; 59503 (16:5503)
- TX_FAR _Route11EndBattleText1
- db "@"
-
-Route11AfterBattleText1: ; 59508 (16:5508)
- TX_FAR _Route11AfterBattleText1
- db "@"
-
-Route11Text2: ; 5950d (16:550d)
- db $08 ; asm
- ld hl, Route11TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText2: ; 59517 (16:5517)
- TX_FAR _Route11BattleText2
- db "@"
-
-Route11EndBattleText2: ; 5951c (16:551c)
- TX_FAR _Route11EndBattleText2
- db "@"
-
-Route11AfterBattleText2: ; 59521 (16:5521)
- TX_FAR _Route11AfterBattleText2
- db "@"
-
-Route11Text3: ; 59526 (16:5526)
- db $08 ; asm
- ld hl, Route11TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText3: ; 59530 (16:5530)
- TX_FAR _Route11BattleText3
- db "@"
-
-Route11EndBattleText3: ; 59535 (16:5535)
- TX_FAR _Route11EndBattleText3
- db "@"
-
-Route11AfterBattleText3: ; 5953a (16:553a)
- TX_FAR _Route11AfterBattleText3
- db "@"
-
-Route11Text4: ; 5953f (16:553f)
- db $08 ; asm
- ld hl, Route11TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText4: ; 59549 (16:5549)
- TX_FAR _Route11BattleText4
- db "@"
-
-Route11EndBattleText4: ; 5954e (16:554e)
- TX_FAR _Route11EndBattleText4
- db "@"
-
-Route11AfterBattleText4: ; 59553 (16:5553)
- TX_FAR _Route11AfterBattleText4
- db "@"
-
-Route11Text5: ; 59558 (16:5558)
- db $08 ; asm
- ld hl, Route11TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText5: ; 59562 (16:5562)
- TX_FAR _Route11BattleText5
- db "@"
-
-Route11EndBattleText5: ; 59567 (16:5567)
- TX_FAR _Route11EndBattleText5
- db "@"
-
-Route11AfterBattleText5: ; 5956c (16:556c)
- TX_FAR _Route11AfterBattleText5
- db "@"
-
-Route11Text6: ; 59571 (16:5571)
- db $08 ; asm
- ld hl, Route11TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText6: ; 5957b (16:557b)
- TX_FAR _Route11BattleText6
- db "@"
-
-Route11EndBattleText6: ; 59580 (16:5580)
- TX_FAR _Route11EndBattleText6
- db "@"
-
-Route11AfterBattleText6: ; 59585 (16:5585)
- TX_FAR _Route11AfterBattleText6
- db "@"
-
-Route11Text7: ; 5958a (16:558a)
- db $08 ; asm
- ld hl, Route11TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText7: ; 59594 (16:5594)
- TX_FAR _Route11BattleText7
- db "@"
-
-Route11EndBattleText7: ; 59599 (16:5599)
- TX_FAR _Route11EndBattleText7
- db "@"
-
-Route11AfterBattleText7: ; 5959e (16:559e)
- TX_FAR _Route11AfterBattleText7
- db "@"
-
-Route11Text8: ; 595a3 (16:55a3)
- db $08 ; asm
- ld hl, Route11TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText8: ; 595ad (16:55ad)
- TX_FAR _Route11BattleText8
- db "@"
-
-Route11EndBattleText8: ; 595b2 (16:55b2)
- TX_FAR _Route11EndBattleText8
- db "@"
-
-Route11AfterBattleText8: ; 595b7 (16:55b7)
- TX_FAR _Route11AfterBattleText8
- db "@"
-
-Route11Text9: ; 595bc (16:55bc)
- db $08 ; asm
- ld hl, Route11TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText9: ; 595c6 (16:55c6)
- TX_FAR _Route11BattleText9
- db "@"
-
-Route11EndBattleText9: ; 595cb (16:55cb)
- TX_FAR _Route11EndBattleText9
- db "@"
-
-Route11AfterBattleText9: ; 595d0 (16:55d0)
- TX_FAR _Route11AfterBattleText9
- db "@"
-
-Route11Text10: ; 595d5 (16:55d5)
- db $08 ; asm
- ld hl, Route11TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText10: ; 595df (16:55df)
- TX_FAR _Route11BattleText10
- db "@"
-
-Route11EndBattleText10: ; 595e4 (16:55e4)
- TX_FAR _Route11EndBattleText10
- db "@"
-
-Route11AfterBattleText10: ; 595e9 (16:55e9)
- TX_FAR _Route11AfterBattleText10
- db "@"
-
-Route11Text11: ; 595ee (16:55ee)
- TX_FAR _Route11Text11
- db "@"
-
-Route12Script: ; 595f3 (16:55f3)
- call EnableAutoTextBoxDrawing
- ld hl, Route12TrainerHeaders
- ld de, Route12ScriptPointers
- ld a, [W_ROUTE12CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE12CURSCRIPT], a
- ret
-
-Route12Script_59606: ; 59606 (16:5606)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE12CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route12ScriptPointers: ; 59611 (16:5611)
- dw Route12Script0
- dw Func_324c
- dw EndTrainerBattle
- dw Route12Script3
-
-Route12Script0: ; 59619 (16:5619)
- ld hl, $d7d8
- bit 7, [hl]
- jp nz, CheckFightingMapTrainers
- bit 6, [hl]
- res 6, [hl]
- jp z, CheckFightingMapTrainers
- ld a, $d
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, SNORLAX
- ld [W_CUROPPONENT], a ; $d059
- ld a, 30
- ld [W_CURENEMYLVL], a ; $d127
- ld a, $1d
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- ld a, $3
- ld [W_ROUTE12CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route12Script3: ; 5964c (16:564c)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jr z, Route12Script_59606
- call UpdateSprites
- ld a, [$cf0b]
- cp $2
- jr z, .asm_59664
- ld a, $e
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_59664
- ld hl, $d7d8
- set 7, [hl]
- call Delay3
- ld a, $0
- ld [W_ROUTE12CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route12TextPointers: ; 59675 (16:5675)
- dw Route12Text1
- dw Route12Text2
- dw Route12Text3
- dw Route12Text4
- dw Route12Text5
- dw Route12Text6
- dw Route12Text7
- dw Route12Text8
- dw Predef5CText
- dw Predef5CText
- dw Route12Text11
- dw Route12Text12
- dw Route12Text13
- dw Route12Text14
-
-Route12TrainerHeaders: ; 59691 (16:5691)
-Route12TrainerHeader0: ; 59691 (16:5691)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText1 ; 0x56ff TextBeforeBattle
- dw Route12AfterBattleText1 ; 0x5709 TextAfterBattle
- dw Route12EndBattleText1 ; 0x5704 TextEndBattle
- dw Route12EndBattleText1 ; 0x5704 TextEndBattle
-
-Route12TrainerHeader1: ; 5969d (16:569d)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText2 ; 0x5718 TextBeforeBattle
- dw Route12AfterBattleText2 ; 0x5722 TextAfterBattle
- dw Route12EndBattleText2 ; 0x571d TextEndBattle
- dw Route12EndBattleText2 ; 0x571d TextEndBattle
-
-Route12TrainerHeader2: ; 596a9 (16:56a9)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText3 ; 0x5731 TextBeforeBattle
- dw Route12AfterBattleText3 ; 0x573b TextAfterBattle
- dw Route12EndBattleText3 ; 0x5736 TextEndBattle
- dw Route12EndBattleText3 ; 0x5736 TextEndBattle
-
-Route12TrainerHeader3: ; 596b5 (16:56b5)
- db $5 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText4 ; 0x574a TextBeforeBattle
- dw Route12AfterBattleText4 ; 0x5754 TextAfterBattle
- dw Route12EndBattleText4 ; 0x574f TextEndBattle
- dw Route12EndBattleText4 ; 0x574f TextEndBattle
-
-Route12TrainerHeader4: ; 596c1 (16:56c1)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText5 ; 0x5763 TextBeforeBattle
- dw Route12AfterBattleText5 ; 0x576d TextAfterBattle
- dw Route12EndBattleText5 ; 0x5768 TextEndBattle
- dw Route12EndBattleText5 ; 0x5768 TextEndBattle
-
-Route12TrainerHeader5: ; 596cd (16:56cd)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText6 ; 0x577c TextBeforeBattle
- dw Route12AfterBattleText6 ; 0x5786 TextAfterBattle
- dw Route12EndBattleText6 ; 0x5781 TextEndBattle
- dw Route12EndBattleText6 ; 0x5781 TextEndBattle
-
-Route12TrainerHeader6: ; 596d9 (16:56d9)
- db $8 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7d7 ; flag's byte
- dw Route12BattleText7 ; 0x5795 TextBeforeBattle
- dw Route12AfterBattleText7 ; 0x579f TextAfterBattle
- dw Route12EndBattleText7 ; 0x579a TextEndBattle
- dw Route12EndBattleText7 ; 0x579a TextEndBattle
-
- db $ff
-
-Route12Text1: ; 596e6 (16:56e6)
- TX_FAR _Route12Text1
- db "@"
-
-Route12Text13: ; 596eb (16:56eb)
-UnnamedText_596eb: ; 596eb (16:56eb)
- TX_FAR _UnnamedText_596eb
- db "@"
-
-Route12Text14: ; 596f0 (16:56f0)
-UnnamedText_596f0: ; 596f0 (16:56f0)
- TX_FAR _UnnamedText_596f0
- db "@"
-
-Route12Text2: ; 596f5 (16:56f5)
- db $08 ; asm
- ld hl, Route12TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText1: ; 596ff (16:56ff)
- TX_FAR _Route12BattleText1
- db "@"
-
-Route12EndBattleText1: ; 59704 (16:5704)
- TX_FAR _Route12EndBattleText1
- db "@"
-
-Route12AfterBattleText1: ; 59709 (16:5709)
- TX_FAR _Route12AfterBattleText1
- db "@"
-
-Route12Text3: ; 5970e (16:570e)
- db $08 ; asm
- ld hl, Route12TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText2: ; 59718 (16:5718)
- TX_FAR _Route12BattleText2
- db "@"
-
-Route12EndBattleText2: ; 5971d (16:571d)
- TX_FAR _Route12EndBattleText2
- db "@"
-
-Route12AfterBattleText2: ; 59722 (16:5722)
- TX_FAR _Route12AfterBattleText2
- db "@"
-
-Route12Text4: ; 59727 (16:5727)
- db $08 ; asm
- ld hl, Route12TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText3: ; 59731 (16:5731)
- TX_FAR _Route12BattleText3
- db "@"
-
-Route12EndBattleText3: ; 59736 (16:5736)
- TX_FAR _Route12EndBattleText3
- db "@"
-
-Route12AfterBattleText3: ; 5973b (16:573b)
- TX_FAR _Route12AfterBattleText3
- db "@"
-
-Route12Text5: ; 59740 (16:5740)
- db $08 ; asm
- ld hl, Route12TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText4: ; 5974a (16:574a)
- TX_FAR _Route12BattleText4
- db "@"
-
-Route12EndBattleText4: ; 5974f (16:574f)
- TX_FAR _Route12EndBattleText4
- db "@"
-
-Route12AfterBattleText4: ; 59754 (16:5754)
- TX_FAR _Route12AfterBattleText4
- db "@"
-
-Route12Text6: ; 59759 (16:5759)
- db $08 ; asm
- ld hl, Route12TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText5: ; 59763 (16:5763)
- TX_FAR _Route12BattleText5
- db "@"
-
-Route12EndBattleText5: ; 59768 (16:5768)
- TX_FAR _Route12EndBattleText5
+OaksAideNoRoomText: ; 590ab (16:50ab)
+ TX_FAR _OaksAideNoRoomText
db "@"
-Route12AfterBattleText5: ; 5976d (16:576d)
- TX_FAR _Route12AfterBattleText5
- db "@"
-
-Route12Text7: ; 59772 (16:5772)
- db $08 ; asm
- ld hl, Route12TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/route6.asm"
-Route12BattleText6: ; 5977c (16:577c)
- TX_FAR _Route12BattleText6
- db "@"
-
-Route12EndBattleText6: ; 59781 (16:5781)
- TX_FAR _Route12EndBattleText6
- db "@"
+INCLUDE "scripts/route8.asm"
-Route12AfterBattleText6: ; 59786 (16:5786)
- TX_FAR _Route12AfterBattleText6
- db "@"
+INCLUDE "scripts/route10.asm"
-Route12Text8: ; 5978b (16:578b)
- db $08 ; asm
- ld hl, Route12TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/route11.asm"
-Route12BattleText7: ; 59795 (16:5795)
- TX_FAR _Route12BattleText7
- db "@"
+INCLUDE "scripts/route12.asm"
-Route12EndBattleText7: ; 5979a (16:579a)
- TX_FAR _Route12EndBattleText7
- db "@"
+INCLUDE "scripts/route15.asm"
-Route12AfterBattleText7: ; 5979f (16:579f)
- TX_FAR _Route12AfterBattleText7
- db "@"
+INCLUDE "scripts/route16.asm"
-Route12Text11: ; 597a4 (16:57a4)
- TX_FAR _Route12Text11
- db "@"
+INCLUDE "scripts/route18.asm"
-Route12Text12: ; 597a9 (16:57a9)
- TX_FAR _Route12Text12
- db "@"
+INCLUDE "data/mapHeaders/fanclub.asm"
-Route15Script: ; 597ae (16:57ae)
- call EnableAutoTextBoxDrawing
- ld hl, Route15TrainerHeaders
- ld de, Route15ScriptPointers
- ld a, [W_ROUTE15CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE15CURSCRIPT], a
- ret
-
-Route15ScriptPointers: ; 597c1 (16:57c1)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route15TextPointers: ; 597c7 (16:57c7)
- dw Route15Text1
- dw Route15Text2
- dw Route15Text3
- dw Route15Text4
- dw Route15Text5
- dw Route15Text6
- dw Route15Text7
- dw Route15Text8
- dw Route15Text9
- dw Route15Text10
- dw Predef5CText
- dw Route15Text12
-
-Route15TrainerHeaders: ; 597df (16:57df)
-Route15TrainerHeader0: ; 597df (16:57df)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText1 ; 0x5898 TextBeforeBattle
- dw Route15AfterBattleText1 ; 0x58a2 TextAfterBattle
- dw Route15EndBattleText1 ; 0x589d TextEndBattle
- dw Route15EndBattleText1 ; 0x589d TextEndBattle
-
-Route15TrainerHeader1: ; 597eb (16:57eb)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText2 ; 0x58a7 TextBeforeBattle
- dw Route15AfterBattleText2 ; 0x58b1 TextAfterBattle
- dw Route15EndBattleText2 ; 0x58ac TextEndBattle
- dw Route15EndBattleText2 ; 0x58ac TextEndBattle
-
-Route15TrainerHeader2: ; 597f7 (16:57f7)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText3 ; 0x58b6 TextBeforeBattle
- dw Route15AfterBattleText3 ; 0x58c0 TextAfterBattle
- dw Route15EndBattleText3 ; 0x58bb TextEndBattle
- dw Route15EndBattleText3 ; 0x58bb TextEndBattle
-
-Route15TrainerHeader3: ; 59803 (16:5803)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText4 ; 0x58c5 TextBeforeBattle
- dw Route15AfterBattleText4 ; 0x58cf TextAfterBattle
- dw Route15EndBattleText4 ; 0x58ca TextEndBattle
- dw Route15EndBattleText4 ; 0x58ca TextEndBattle
-
-Route15TrainerHeader4: ; 5980f (16:580f)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText5 ; 0x58d4 TextBeforeBattle
- dw Route15AfterBattleText5 ; 0x58de TextAfterBattle
- dw Route15EndBattleText5 ; 0x58d9 TextEndBattle
- dw Route15EndBattleText5 ; 0x58d9 TextEndBattle
-
-Route15TrainerHeader5: ; 5981b (16:581b)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText6 ; 0x58e3 TextBeforeBattle
- dw Route15AfterBattleText6 ; 0x58ed TextAfterBattle
- dw Route15EndBattleText6 ; 0x58e8 TextEndBattle
- dw Route15EndBattleText6 ; 0x58e8 TextEndBattle
-
-Route15TrainerHeader6: ; 59827 (16:5827)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText7 ; 0x58f2 TextBeforeBattle
- dw Route15AfterBattleText7 ; 0x58fc TextAfterBattle
- dw Route15EndBattleText7 ; 0x58f7 TextEndBattle
- dw Route15EndBattleText7 ; 0x58f7 TextEndBattle
-
-Route15TrainerHeader7: ; 59833 (16:5833)
- db $8 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText8 ; 0x5901 TextBeforeBattle
- dw Route15AfterBattleText8 ; 0x590b TextAfterBattle
- dw Route15EndBattleText8 ; 0x5906 TextEndBattle
- dw Route15EndBattleText8 ; 0x5906 TextEndBattle
-
-Route15TrainerHeader8: ; 5983f (16:583f)
- db $9 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText9 ; 0x5910 TextBeforeBattle
- dw Route15AfterBattleText9 ; 0x591a TextAfterBattle
- dw Route15EndBattleText9 ; 0x5915 TextEndBattle
- dw Route15EndBattleText9 ; 0x5915 TextEndBattle
-
-Route15TrainerHeader9: ; 5984b (16:584b)
- db $a ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7dd ; flag's byte
- dw Route15BattleText10 ; 0x591f TextBeforeBattle
- dw Route15AfterBattleText10 ; 0x5929 TextAfterBattle
- dw Route15EndBattleText10 ; 0x5924 TextEndBattle
- dw Route15EndBattleText10 ; 0x5924 TextEndBattle
+INCLUDE "scripts/fanclub.asm"
- db $ff
-
-Route15Text1: ; 59858 (16:5858)
- db $8 ; asm
- ld hl, Route15TrainerHeader0
- jr asm_33cb7 ; 0x5985c $34
-
-Route15Text2: ; 5985e (16:585e)
- db $8 ; asm
- ld hl, Route15TrainerHeader1
- jr asm_33cb7 ; 0x59862 $2e
-
-Route15Text3: ; 59864 (16:5864)
- db $8 ; asm
- ld hl, Route15TrainerHeader2
- jr asm_33cb7 ; 0x59868 $28
-
-Route15Text4: ; 5986a (16:586a)
- db $8 ; asm
- ld hl, Route15TrainerHeader3
- jr asm_33cb7 ; 0x5986e $22
-
-Route15Text5: ; 59870 (16:5870)
- db $8 ; asm
- ld hl, Route15TrainerHeader4
- jr asm_33cb7 ; 0x59874 $1c
-
-Route15Text6: ; 59876 (16:5876)
- db $8 ; asm
- ld hl, Route15TrainerHeader5
- jr asm_33cb7 ; 0x5987a $16
-
-Route15Text7: ; 5987c (16:587c)
- db $8 ; asm
- ld hl, Route15TrainerHeader6
- jr asm_33cb7 ; 0x59880 $10
-
-Route15Text8: ; 59882 (16:5882)
- db $8 ; asm
- ld hl, Route15TrainerHeader7
- jr asm_33cb7 ; 0x59886 $a
-
-Route15Text9: ; 59888 (16:5888)
- db $8 ; asm
- ld hl, Route15TrainerHeader8
- jr asm_33cb7 ; 0x5988c $4
-
-Route15Text10: ; 5988e (16:588e)
- db $8 ; asm
- ld hl, Route15TrainerHeader9
-asm_33cb7: ; 59892 (16:5892)
- call TalkToTrainer
- jp TextScriptEnd
-
-Route15BattleText1: ; 59898 (16:5898)
- TX_FAR _Route15BattleText1
- db "@"
-
-Route15EndBattleText1: ; 5989d (16:589d)
- TX_FAR _Route15EndBattleText1
- db "@"
-
-Route15AfterBattleText1: ; 598a2 (16:58a2)
- TX_FAR _Route15AfterBattleText1
- db "@"
-
-Route15BattleText2: ; 598a7 (16:58a7)
- TX_FAR _Route15BattleText2
- db "@"
-
-Route15EndBattleText2: ; 598ac (16:58ac)
- TX_FAR _Route15EndBattleText2
- db "@"
-
-Route15AfterBattleText2: ; 598b1 (16:58b1)
- TX_FAR _Route15AfterBattleText2
- db "@"
-
-Route15BattleText3: ; 598b6 (16:58b6)
- TX_FAR _Route15BattleText3
- db "@"
-
-Route15EndBattleText3: ; 598bb (16:58bb)
- TX_FAR _Route15EndBattleText3
- db "@"
-
-Route15AfterBattleText3: ; 598c0 (16:58c0)
- TX_FAR _Route15AfterBattleText3
- db "@"
-
-Route15BattleText4: ; 598c5 (16:58c5)
- TX_FAR _Route15BattleText4
- db "@"
-
-Route15EndBattleText4: ; 598ca (16:58ca)
- TX_FAR _Route15EndBattleText4
- db "@"
-
-Route15AfterBattleText4: ; 598cf (16:58cf)
- TX_FAR _Route15AfterBattleText4
- db "@"
-
-Route15BattleText5: ; 598d4 (16:58d4)
- TX_FAR _Route15BattleText5
- db "@"
-
-Route15EndBattleText5: ; 598d9 (16:58d9)
- TX_FAR _Route15EndBattleText5
- db "@"
-
-Route15AfterBattleText5: ; 598de (16:58de)
- TX_FAR _Route15AfterBattleText5
- db "@"
-
-Route15BattleText6: ; 598e3 (16:58e3)
- TX_FAR _Route15BattleText6
- db "@"
-
-Route15EndBattleText6: ; 598e8 (16:58e8)
- TX_FAR _Route15EndBattleText6
- db "@"
-
-Route15AfterBattleText6: ; 598ed (16:58ed)
- TX_FAR _Route15AfterBattleText6
- db "@"
-
-Route15BattleText7: ; 598f2 (16:58f2)
- TX_FAR _Route15BattleText7
- db "@"
-
-Route15EndBattleText7: ; 598f7 (16:58f7)
- TX_FAR _Route15EndBattleText7
- db "@"
-
-Route15AfterBattleText7: ; 598fc (16:58fc)
- TX_FAR _Route15AfterBattleText7
- db "@"
-
-Route15BattleText8: ; 59901 (16:5901)
- TX_FAR _Route15BattleText8
- db "@"
-
-Route15EndBattleText8: ; 59906 (16:5906)
- TX_FAR _Route15EndBattleText8
- db "@"
-
-Route15AfterBattleText8: ; 5990b (16:590b)
- TX_FAR _Route15AfterBattleText8
- db "@"
-
-Route15BattleText9: ; 59910 (16:5910)
- TX_FAR _Route15BattleText9
- db "@"
-
-Route15EndBattleText9: ; 59915 (16:5915)
- TX_FAR _Route15EndBattleText9
- db "@"
-
-Route15AfterBattleText9: ; 5991a (16:591a)
- TX_FAR _Route15AfterBattleText9
- db "@"
-
-Route15BattleText10: ; 5991f (16:591f)
- TX_FAR _Route15BattleText10
- db "@"
-
-Route15EndBattleText10: ; 59924 (16:5924)
- TX_FAR _Route15EndBattleText10
- db "@"
-
-Route15AfterBattleText10: ; 59929 (16:5929)
- TX_FAR _Route15AfterBattleText10
- db "@"
-
-Route15Text12: ; 5992e (16:592e)
- TX_FAR _Route15Text12
- db "@"
-
-Route16Script: ; 59933 (16:5933)
- call EnableAutoTextBoxDrawing
- ld hl, Route16TrainerHeaders
- ld de, Route16ScriptPointers
- ld a, [W_ROUTE16CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE16CURSCRIPT], a
- ret
-
-Func_59946: ; 59946 (16:5946)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_ROUTE16CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route16ScriptPointers: ; 59951 (16:5951)
- dw Route16Script0
- dw Func_324c
- dw EndTrainerBattle
- dw Route16Script3
-
-Route16Script0: ; 59959 (16:5959)
- ld hl, $d7e0
- bit 1, [hl]
- jp nz, CheckFightingMapTrainers
- bit 0, [hl]
- res 0, [hl]
- jp z, CheckFightingMapTrainers
- ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $84
- ld [W_CUROPPONENT], a ; $d059
- ld a, $1e
- ld [W_CURENEMYLVL], a ; $d127
- ld a, $21
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- call UpdateSprites
- ld a, $3
- ld [W_ROUTE16CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route16Script3: ; 5998f (16:598f)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_59946
- call UpdateSprites
- ld a, [$cf0b]
- cp $2
- jr z, .asm_599a8
- ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_599a8
- ld hl, $d7e0
- set 1, [hl]
- call Delay3
- ld a, $0
- ld [W_ROUTE16CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Route16TextPointers: ; 599b9 (16:59b9)
- dw Route16Text1
- dw Route16Text2
- dw Route16Text3
- dw Route16Text4
- dw Route16Text5
- dw Route16Text6
- dw Route16Text7
- dw Route16Text8
- dw Route16Text9
- dw Route16Text10
- dw Route16Text11
-
-Route16TrainerHeaders: ; 599cf (16:59cf)
-Route16TrainerHeader0: ; 599cf (16:59cf)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7df ; flag's byte
- dw Route16BattleText1 ; 0x5a22 TextBeforeBattle
- dw Route16AfterBattleText1 ; 0x5a2c TextAfterBattle
- dw Route16EndBattleText1 ; 0x5a27 TextEndBattle
- dw Route16EndBattleText1 ; 0x5a27 TextEndBattle
-
-Route16TrainerHeader1: ; 599db (16:59db)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7df ; flag's byte
- dw Route16BattleText2 ; 0x5a3b TextBeforeBattle
- dw Route16AfterBattleText2 ; 0x5a45 TextAfterBattle
- dw Route16EndBattleText2 ; 0x5a40 TextEndBattle
- dw Route16EndBattleText2 ; 0x5a40 TextEndBattle
-
-Route16TrainerHeader2: ; 599e7 (16:59e7)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7df ; flag's byte
- dw Route16BattleText3 ; 0x5a54 TextBeforeBattle
- dw Route16AfterBattleText3 ; 0x5a5e TextAfterBattle
- dw Route16EndBattleText3 ; 0x5a59 TextEndBattle
- dw Route16EndBattleText3 ; 0x5a59 TextEndBattle
-
-Route16TrainerHeader3: ; 599f3 (16:59f3)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7df ; flag's byte
- dw Route16BattleText4 ; 0x5a6d TextBeforeBattle
- dw Route16AfterBattleText4 ; 0x5a77 TextAfterBattle
- dw Route16EndBattleText4 ; 0x5a72 TextEndBattle
- dw Route16EndBattleText4 ; 0x5a72 TextEndBattle
-
-Route16TrainerHeader4: ; 599ff (16:59ff)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d7df ; flag's byte
- dw Route16BattleText5 ; 0x5a86 TextBeforeBattle
- dw Route16AfterBattleText5 ; 0x5a90 TextAfterBattle
- dw Route16EndBattleText5 ; 0x5a8b TextEndBattle
- dw Route16EndBattleText5 ; 0x5a8b TextEndBattle
-
-Route16TrainerHeader5: ; 59a0b (16:5a0b)
- db $6 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7df ; flag's byte
- dw Route16BattleText6 ; 0x5a9f TextBeforeBattle
- dw Route16AfterBattleText6 ; 0x5aa9 TextAfterBattle
- dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle
- dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle
-
- db $ff
-
-Route16Text1: ; 59a18 (16:5a18)
- db $08 ; asm
- ld hl, Route16TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText1: ; 59a22 (16:5a22)
- TX_FAR _Route16BattleText1
- db "@"
-
-Route16EndBattleText1: ; 59a27 (16:5a27)
- TX_FAR _Route16EndBattleText1
- db "@"
-
-Route16AfterBattleText1: ; 59a2c (16:5a2c)
- TX_FAR _Route16AfterBattleText1
- db "@"
-
-Route16Text2: ; 59a31 (16:5a31)
- db $08 ; asm
- ld hl, Route16TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText2: ; 59a3b (16:5a3b)
- TX_FAR _Route16BattleText2
- db "@"
-
-Route16EndBattleText2: ; 59a40 (16:5a40)
- TX_FAR _Route16EndBattleText2
- db "@"
-
-Route16AfterBattleText2: ; 59a45 (16:5a45)
- TX_FAR _Route16AfterBattleText2
- db "@"
-
-Route16Text3: ; 59a4a (16:5a4a)
- db $08 ; asm
- ld hl, Route16TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText3: ; 59a54 (16:5a54)
- TX_FAR _Route16BattleText3
- db "@"
-
-Route16EndBattleText3: ; 59a59 (16:5a59)
- TX_FAR _Route16EndBattleText3
- db "@"
-
-Route16AfterBattleText3: ; 59a5e (16:5a5e)
- TX_FAR _Route16AfterBattleText3
- db "@"
-
-Route16Text4: ; 59a63 (16:5a63)
- db $08 ; asm
- ld hl, Route16TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText4: ; 59a6d (16:5a6d)
- TX_FAR _Route16BattleText4
- db "@"
-
-Route16EndBattleText4: ; 59a72 (16:5a72)
- TX_FAR _Route16EndBattleText4
- db "@"
-
-Route16AfterBattleText4: ; 59a77 (16:5a77)
- TX_FAR _Route16AfterBattleText4
- db "@"
-
-Route16Text5: ; 59a7c (16:5a7c)
- db $08 ; asm
- ld hl, Route16TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText5: ; 59a86 (16:5a86)
- TX_FAR _Route16BattleText5
- db "@"
-
-Route16EndBattleText5: ; 59a8b (16:5a8b)
- TX_FAR _Route16EndBattleText5
- db "@"
-
-Route16AfterBattleText5: ; 59a90 (16:5a90)
- TX_FAR _Route16AfterBattleText5
- db "@"
-
-Route16Text6: ; 59a95 (16:5a95)
- db $08 ; asm
- ld hl, Route16TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText6: ; 59a9f (16:5a9f)
- TX_FAR _Route16BattleText6
- db "@"
-
-Route16EndBattleText6: ; 59aa4 (16:5aa4)
- TX_FAR _Route16EndBattleText6
- db "@"
-
-Route16AfterBattleText6: ; 59aa9 (16:5aa9)
- TX_FAR _Route16AfterBattleText6
- db "@"
-
-Route16Text7: ; 59aae (16:5aae)
- TX_FAR _Route16Text7
- db "@"
-
-Route16Text10: ; 59ab3 (16:5ab3)
- TX_FAR _UnnamedText_59ab3
- db "@"
-
-Route16Text11: ; 59ab8 (16:5ab8)
- TX_FAR _UnnamedText_59ab8
- db "@"
-
-Route16Text8: ; 59abd (16:5abd)
- TX_FAR _Route16Text8
- db "@"
-
-Route16Text9: ; 59ac2 (16:5ac2)
- TX_FAR _Route16Text9
- db "@"
-
-Route18Script: ; 59ac7 (16:5ac7)
- call EnableAutoTextBoxDrawing
- ld hl, Route18TrainerHeaders
- ld de, Route18ScriptPointers
- ld a, [W_ROUTE18CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_ROUTE18CURSCRIPT], a
- ret
-
-Route18ScriptPointers: ; 59ada (16:5ada)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-Route18TextPointers: ; 59ae0 (16:5ae0)
- dw Route18Text1
- dw Route18Text2
- dw Route18Text3
- dw Route18Text4
- dw Route18Text5
-
-Route18TrainerHeaders: ; 59aea (16:5aea)
-Route18TrainerHeader0: ; 59aea (16:5aea)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e3 ; flag's byte
- dw Route18BattleText1 ; 0x5b19 TextBeforeBattle
- dw Route18AfterBattleText1 ; 0x5b23 TextAfterBattle
- dw Route18EndBattleText1 ; 0x5b1e TextEndBattle
- dw Route18EndBattleText1 ; 0x5b1e TextEndBattle
-
-Route18TrainerHeader1: ; 59af6 (16:5af6)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7e3 ; flag's byte
- dw Route18BattleText2 ; 0x5b32 TextBeforeBattle
- dw Route18AfterBattleText2 ; 0x5b3c TextAfterBattle
- dw Route18EndBattleText2 ; 0x5b37 TextEndBattle
- dw Route18EndBattleText2 ; 0x5b37 TextEndBattle
-
-Route18TrainerHeader2: ; 59b02 (16:5b02)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7e3 ; flag's byte
- dw Route18BattleText3 ; 0x5b4b TextBeforeBattle
- dw Route18AfterBattleText3 ; 0x5b55 TextAfterBattle
- dw Route18EndBattleText3 ; 0x5b50 TextEndBattle
- dw Route18EndBattleText3 ; 0x5b50 TextEndBattle
-
- db $ff
-
-Route18Text1: ; 59b0f (16:5b0f)
- db $08 ; asm
- ld hl, Route18TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route18BattleText1: ; 59b19 (16:5b19)
- TX_FAR _Route18BattleText1
- db "@"
-
-Route18EndBattleText1: ; 59b1e (16:5b1e)
- TX_FAR _Route18EndBattleText1
- db "@"
-
-Route18AfterBattleText1: ; 59b23 (16:5b23)
- TX_FAR _Route18AfterBattleText1
- db "@"
-
-Route18Text2: ; 59b28 (16:5b28)
- db $08 ; asm
- ld hl, Route18TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route18BattleText2: ; 59b32 (16:5b32)
- TX_FAR _Route18BattleText2
- db "@"
-
-Route18EndBattleText2: ; 59b37 (16:5b37)
- TX_FAR _Route18EndBattleText2
- db "@"
-
-Route18AfterBattleText2: ; 59b3c (16:5b3c)
- TX_FAR _Route18AfterBattleText2
- db "@"
-
-Route18Text3: ; 59b41 (16:5b41)
- db $08 ; asm
- ld hl, Route18TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route18BattleText3: ; 59b4b (16:5b4b)
- TX_FAR _Route18BattleText3
- db "@"
-
-Route18EndBattleText3: ; 59b50 (16:5b50)
- TX_FAR _Route18EndBattleText3
- db "@"
-
-Route18AfterBattleText3: ; 59b55 (16:5b55)
- TX_FAR _Route18AfterBattleText3
- db "@"
-
-Route18Text4: ; 59b5a (16:5b5a)
- TX_FAR _Route18Text4
- db "@"
-
-Route18Text5: ; 59b5f (16:5b5f)
- TX_FAR _Route18Text5
- db "@"
-
-FanClub_h: ; 0x59b64 to 0x59b70 (12 bytes) (id=90)
- db INTERIOR ; tileset
- db POKEMON_FAN_CLUB_HEIGHT, POKEMON_FAN_CLUB_WIDTH ; dimensions (y, x)
- dw FanClubBlocks, FanClubTextPointers, FanClubScript ; blocks, texts, scripts
- db $00 ; connections
- dw FanClubObject ; objects
-
-FanClubScript: ; 59b70 (16:5b70)
- jp EnableAutoTextBoxDrawing
-
-FanClubBikeInBag:
-; check if any bike paraphernalia in bag
- ld a, [$d771]
- bit 1, a ; got bike voucher?
- ret nz
- ld b, BICYCLE
- call IsItemInBag
- ret nz
- ld b, BIKE_VOUCHER
- jp IsItemInBag
-
-FanClubTextPointers: ; 59b84 (16:5b84)
- dw FanClubText1
- dw FanClubText2
- dw FanClubText3
- dw FanClubText4
- dw FanClubText5
- dw FanClubText6
- dw FanClubText7
- dw FanClubText8
-
-FanClubText1:
-; pikachu fan
- db $08 ; asm
- ld a, [$d771]
- bit 7, a
- jr nz, .mineisbetter
- ld hl, .normaltext
- call PrintText
- ld hl, $d771
- set 6, [hl]
- jr .done
-.mineisbetter
- ld hl, .bettertext
- call PrintText
- ld hl, $d771
- res 7, [hl]
-.done
- jp TextScriptEnd
-
-.normaltext
- TX_FAR PikachuFanText
- db "@"
-
-.bettertext
- TX_FAR PikachuFanBetterText
- db "@"
-
-FanClubText2:
-; seel fan
- db $08 ; asm
- ld a, [$d771]
- bit 6, a
- jr nz, .mineisbetter
- ld hl, .normaltext
- call PrintText
- ld hl, $d771
- set 7, [hl]
- jr .done
-.mineisbetter
- ld hl, .bettertext
- call PrintText
- ld hl, $d771
- res 6, [hl]
-.done
- jp TextScriptEnd
-
-.normaltext
- TX_FAR SeelFanText
- db "@"
-
-.bettertext
- TX_FAR SeelFanBetterText
- db "@"
-
-FanClubText3:
-; pikachu
- db $8
- ld hl, .text
- call PrintText
- ld a, PIKACHU
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-.text
- TX_FAR FanClubPikachuText
- db "@"
-
-FanClubText4:
-; seel
- db $08 ; asm
- ld hl, .text
- call PrintText
- ld a, SEEL
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-.text
- TX_FAR FanClubSeelText
- db "@"
-
-FanClubText5:
-; chair
- db $08 ; asm
- call FanClubBikeInBag
- jr nz, .nothingleft
-
- ld hl, .meetchairtext
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .nothanks
-
- ; tell the story
- ld hl, .storytext
- call PrintText
- ld bc, (BIKE_VOUCHER << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, .receivedvouchertext
- call PrintText
- ld hl, $d771
- set 1, [hl]
- jr .done
-.BagFull
- ld hl, .bagfulltext
- call PrintText
- jr .done
-.nothanks
- ld hl, .nostorytext
- call PrintText
- jr .done
-.nothingleft
- ld hl, .finaltext
- call PrintText
-.done
- jp TextScriptEnd
-
-.meetchairtext
- TX_FAR FanClubMeetChairText
- db "@"
-
-.storytext
- TX_FAR FanClubChairStoryText
- db "@"
-
-.receivedvouchertext
- TX_FAR ReceivedBikeVoucherText
- db $11
- TX_FAR ExplainBikeVoucherText
- db "@"
-
-.nostorytext
- TX_FAR FanClubNoStoryText
- db "@"
-
-.finaltext
- TX_FAR FanClubChairFinalText
- db "@"
-
-.bagfulltext
- TX_FAR FanClubBagFullText
- db "@"
-
-FanClubText6: ; 59c88 (16:5c88)
- TX_FAR _FanClubText6
- db "@"
-
-FanClubText7: ; 59c8d (16:5c8d)
- TX_FAR _FanClubText7
- db "@"
-
-FanClubText8: ; 59c92 (16:5c92)
- TX_FAR _FanClubText8
- db "@"
-
-FanClubObject: ; 0x59c97 (size=62)
- db $d ; border tile
-
- db $2 ; warps
- db $7, $2, $1, $ff
- db $7, $3, $1, $ff
-
- db $2 ; signs
- db $0, $1, $7 ; FanClubText7
- db $0, $6, $8 ; FanClubText8
-
- db $6 ; people
- db SPRITE_FISHER2, $3 + 4, $6 + 4, $ff, $d2, $1 ; person
- db SPRITE_GIRL, $3 + 4, $1 + 4, $ff, $d3, $2 ; person
- db SPRITE_CLEFAIRY, $4 + 4, $6 + 4, $ff, $d2, $3 ; person
- db SPRITE_SEEL, $4 + 4, $1 + 4, $ff, $d3, $4 ; person
- db SPRITE_GENTLEMAN, $1 + 4, $3 + 4, $ff, $d0, $5 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $1 + 4, $5 + 4, $ff, $d0, $6 ; person
-
- ; warp-to
- EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $2
- EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $3
+INCLUDE "data/mapObjects/fanclub.asm"
FanClubBlocks: ; 59cd5 (16:5cd5)
INCBIN "maps/fanclub.blk"
-SilphCo2_h: ; 0x59ce5 to 0x59cf1 (12 bytes) (id=207)
- db FACILITY ; tileset
- db SILPH_CO_2F_HEIGHT, SILPH_CO_2F_WIDTH ; dimensions (y, x)
- dw SilphCo2Blocks, SilphCo2TextPointers, SilphCo2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo2Object ; objects
-
-SilphCo2Script: ; 59cf1 (16:5cf1)
- call SilphCo2Script_59d07
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo2TrainerHeaders
- ld de, SilphCo2ScriptPointers
- ld a, [W_SILPHCO2CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO2CURSCRIPT], a
- ret
-
-SilphCo2Script_59d07: ; 59d07 (16:5d07)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_59d3e
- call Func_59d43
- call Func_59d6f
- ld a, [$d826]
- bit 5, a
- jr nz, .asm_59d2e
- push af
- ld a, $54
- ld [$d09f], a
- ld bc, $0202
- ld a, $17
- call Predef
- pop af
-.asm_59d2e
- bit 6, a
- ret nz
- ld a, $54
- ld [$d09f], a
- ld bc, $0502
- ld a, $17
- jp Predef
-
-DataTable_59d3e: ; 59d3e (16:5d3e)
- db $02,$02,$05,$02,$FF
-
-Func_59d43: ; 59d43 (16:5d43)
- push hl
- ld hl, $d73f
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_59d4f
- ld a, [hli]
- cp $ff
- jr z, .asm_59d6b
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_59d60
- inc hl
- jr .asm_59d4f
-.asm_59d60
- ld a, [hli]
- cp c
- jr nz, .asm_59d4f
- ld hl, $d73f
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_59d6b
- xor a
- ld [$ffe0], a
- ret
-
-Func_59d6f: ; 59d6f (16:5d6f)
- ld hl, $d826
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .asm_59d7d
- set 5, [hl]
- ret
-.asm_59d7d
- set 6, [hl]
- ret
-
-SilphCo2ScriptPointers: ; 59d80 (16:5d80)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo2TextPointers: ; 59d86 (16:5d86)
- dw SilphCo2Text1
- dw SilphCo2Text2
- dw SilphCo2Text3
- dw SilphCo2Text4
- dw SilphCo2Text5
-
-SilphCo2TrainerHeaders: ; 59d90 (16:5d90)
-SilphCo2TrainerHeader0: ; 59d90 (16:5d90)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d825 ; flag's byte
- dw SilphCo2BattleText1 ; 0x5e2a TextBeforeBattle
- dw SilphCo2AfterBattleText1 ; 0x5e34 TextAfterBattle
- dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle
- dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle
-
-SilphCo2TrainerHeader1: ; 59d9c (16:5d9c)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d825 ; flag's byte
- dw SilphCo2BattleText2 ; 0x5e39 TextBeforeBattle
- dw SilphCo2AfterBattleText2 ; 0x5e43 TextAfterBattle
- dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle
- dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle
-
-SilphCo2TrainerHeader2: ; 59da8 (16:5da8)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d825 ; flag's byte
- dw SilphCo2BattleText3 ; 0x5e48 TextBeforeBattle
- dw SilphCo2AfterBattleText3 ; 0x5e52 TextAfterBattle
- dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle
- dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle
-
-SilphCo2TrainerHeader3: ; 59db4 (16:5db4)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d825 ; flag's byte
- dw SilphCo2BattleText4 ; 0x5e57 TextBeforeBattle
- dw SilphCo2AfterBattleText4 ; 0x5e61 TextAfterBattle
- dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle
- dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle
+INCLUDE "data/mapHeaders/silphco2.asm"
- db $ff
-
-SilphCo2Text1: ; 59dc1 (16:5dc1)
- db $08 ; asm
- ld a, [$d826]
- bit 7, a
- jr nz, asm_b8a0d ; 0x59dc7
- ld hl, UnnamedText_59ded
- call PrintText
- ld bc, (TM_36 << 8) | 1
- call GiveItem
- ld hl, TM36NoRoomText
- jr nc, asm_2c1e0 ; 0x59dd8
- ld hl, $d826
- set 7, [hl]
- ld hl, ReceivedTM36Text
- jr asm_2c1e0 ; 0x59de2
-asm_b8a0d ; 0x59de4
- ld hl, TM36ExplanationText
-asm_2c1e0 ; 0x59de7
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_59ded: ; 59ded (16:5ded)
- TX_FAR _UnnamedText_59ded
- db "@"
-
-ReceivedTM36Text: ; 59df2 (16:5df2)
- TX_FAR _ReceivedTM36Text ; 0x824ba
- db $0B, "@"
-
-TM36ExplanationText: ; 59df8 (16:5df8)
- TX_FAR _TM36ExplanationText
- db "@"
-
-TM36NoRoomText: ; 59dfd (16:5dfd)
- TX_FAR _TM36NoRoomText
- db "@"
+INCLUDE "scripts/silphco2.asm"
-SilphCo2Text2: ; 59e02 (16:5e02)
- db $08 ; asm
- ld hl, SilphCo2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2Text3: ; 59e0c (16:5e0c)
- db $08 ; asm
- ld hl, SilphCo2TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2Text4: ; 59e16 (16:5e16)
- db $08 ; asm
- ld hl, SilphCo2TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2Text5: ; 59e20 (16:5e20)
- db $08 ; asm
- ld hl, SilphCo2TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2BattleText1: ; 59e2a (16:5e2a)
- TX_FAR _SilphCo2BattleText1
- db "@"
-
-SilphCo2EndBattleText1: ; 59e2f (16:5e2f)
- TX_FAR _SilphCo2EndBattleText1
- db "@"
-
-SilphCo2AfterBattleText1: ; 59e34 (16:5e34)
- TX_FAR _SilphCo2AfterBattleText1
- db "@"
-
-SilphCo2BattleText2: ; 59e39 (16:5e39)
- TX_FAR _SilphCo2BattleText2
- db "@"
-
-SilphCo2EndBattleText2: ; 59e3e (16:5e3e)
- TX_FAR _SilphCo2EndBattleText2
- db "@"
-
-SilphCo2AfterBattleText2: ; 59e43 (16:5e43)
- TX_FAR _SilphCo2AfterBattleText2
- db "@"
-
-SilphCo2BattleText3: ; 59e48 (16:5e48)
- TX_FAR _SilphCo2BattleText3
- db "@"
-
-SilphCo2EndBattleText3: ; 59e4d (16:5e4d)
- TX_FAR _SilphCo2EndBattleText3
- db "@"
-
-SilphCo2AfterBattleText3: ; 59e52 (16:5e52)
- TX_FAR _SilphCo2AfterBattleText3
- db "@"
-
-SilphCo2BattleText4: ; 59e57 (16:5e57)
- TX_FAR _SilphCo2BattleText4
- db "@"
-
-SilphCo2EndBattleText4: ; 59e5c (16:5e5c)
- TX_FAR _SilphCo2EndBattleText4
- db "@"
-
-SilphCo2AfterBattleText4: ; 59e61 (16:5e61)
- TX_FAR _SilphCo2AfterBattleText4
- db "@"
-
-SilphCo2Object: ; 0x59e66 (size=98)
- db $2e ; border tile
-
- db $7 ; warps
- db $0, $18, $2, SILPH_CO_1F
- db $0, $1a, $0, SILPH_CO_3F
- db $0, $14, $0, SILPH_CO_ELEVATOR
- db $3, $3, $6, SILPH_CO_3F
- db $3, $d, $4, SILPH_CO_8F
- db $f, $1b, $5, SILPH_CO_8F
- db $f, $9, $4, SILPH_CO_6F
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_ERIKA, $1 + 4, $a + 4, $ff, $d1, $1 ; person
- db SPRITE_OAK_AIDE, $c + 4, $5 + 4, $ff, $d0, $42, SCIENTIST + $C8, $2 ; trainer
- db SPRITE_OAK_AIDE, $d + 4, $18 + 4, $ff, $d2, $43, SCIENTIST + $C8, $3 ; trainer
- db SPRITE_ROCKET, $b + 4, $10 + 4, $ff, $d1, $44, ROCKET + $C8, $17 ; trainer
- db SPRITE_ROCKET, $7 + 4, $18 + 4, $ff, $d1, $45, ROCKET + $C8, $18 ; trainer
-
- ; warp-to
- EVENT_DISP SILPH_CO_2F_WIDTH, $0, $18 ; SILPH_CO_1F
- EVENT_DISP SILPH_CO_2F_WIDTH, $0, $1a ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_2F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_2F_WIDTH, $3, $3 ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_2F_WIDTH, $3, $d ; SILPH_CO_8F
- EVENT_DISP SILPH_CO_2F_WIDTH, $f, $1b ; SILPH_CO_8F
- EVENT_DISP SILPH_CO_2F_WIDTH, $f, $9 ; SILPH_CO_6F
+INCLUDE "data/mapObjects/silphco2.asm"
SilphCo2Blocks: ; 59ec8 (16:5ec8)
INCBIN "maps/silphco2.blk"
-SilphCo3_h: ; 0x59f4f to 0x59f5b (12 bytes) (id=208)
- db FACILITY ; tileset
- db SILPH_CO_3F_HEIGHT, SILPH_CO_3F_WIDTH ; dimensions (y, x)
- dw SilphCo3Blocks, SilphCo3TextPointers, SilphCo3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo3Object ; objects
-
-SilphCo3Script: ; 59f5b (16:5f5b)
- call SilphCo3Script_59f71
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo3TrainerHeaders
- ld de, SilphCo3ScriptPointers
- ld a, [W_SILPHCO3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO3CURSCRIPT], a
- ret
-
-SilphCo3Script_59f71: ; 59f71 (16:5f71)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_59fa8 ; $5fa8
- call Func_59d43
- call Func_59fad
- ld a, [$d828]
- bit 0, a
- jr nz, .asm_59f98
- push af
- ld a, $5f
- ld [$d09f], a
- ld bc, $404
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- pop af
-.asm_59f98
- bit 1, a
- ret nz
- ld a, $5f
- ld [$d09f], a
- ld bc, $408
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-DataTable_59fa8: ; 59fa8 (16:5fa8)
- db $04,$04,$04,$08,$FF
-
-Func_59fad: ; 59fad (16:5fad)
- ld hl, $d828
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .asm_59fbb
- set 0, [hl]
- ret
-.asm_59fbb
- set 1, [hl]
- ret
-
-SilphCo3ScriptPointers: ; 59fbe (16:5fbe)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo3TextPointers: ; 59fc4 (16:5fc4)
- dw SilphCo3Text1
- dw SilphCo3Text2
- dw SilphCo3Text3
- dw Predef5CText
-
-SilphCo3TrainerHeaders: ; 59fcc (16:5fcc)
-SilphCo3TrainerHeader0: ; 59fcc (16:5fcc)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d827 ; flag's byte
- dw SilphCo3BattleText1 ; 0x600d TextBeforeBattle
- dw SilphCo3AfterBattleText1 ; 0x6017 TextAfterBattle
- dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle
- dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle
-
-SilphCo3TrainerHeader1: ; 59fd8 (16:5fd8)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d827 ; flag's byte
- dw SilphCo3BattleText2 ; 0x6026 TextBeforeBattle
- dw SilphCo3AfterBattleText2 ; 0x6030 TextAfterBattle
- dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle
- dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle
-
- db $ff
-
-SilphCo3Text1: ; 59fe5 (16:5fe5)
- db $08 ; asm
- ld a, [$d838]
- bit 7, a
- ld hl, UnnamedText_59ffe
- jr nz, asm_8c56f ; 0x59fee
- ld hl, UnnamedText_59ff9
-asm_8c56f ; 0x59ff3
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_59ff9: ; 59ff9 (16:5ff9)
- TX_FAR _UnnamedText_59ff9
- db "@"
-
-UnnamedText_59ffe: ; 59ffe (16:5ffe)
- TX_FAR _UnnamedText_59ffe
- db "@"
-
-SilphCo3Text2: ; 5a003 (16:6003)
- db $08 ; asm
- ld hl, SilphCo3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo3BattleText1: ; 5a00d (16:600d)
- TX_FAR _SilphCo3BattleText1
- db "@"
+INCLUDE "data/mapHeaders/silphco3.asm"
-SilphCo3EndBattleText1: ; 5a012 (16:6012)
- TX_FAR _SilphCo3EndBattleText1
- db "@"
-
-SilphCo3AfterBattleText1: ; 5a017 (16:6017)
- TX_FAR _SilphCo3AfterBattleText1
- db "@"
-
-SilphCo3Text3: ; 5a01c (16:601c)
- db $08 ; asm
- ld hl, SilphCo3TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/silphco3.asm"
-SilphCo3BattleText2: ; 5a026 (16:6026)
- TX_FAR _SilphCo3BattleText2
- db "@"
-
-SilphCo3EndBattleText2: ; 5a02b (16:602b)
- TX_FAR _SilphCo3EndBattleText2
- db "@"
-
-SilphCo3AfterBattleText2: ; 5a030 (16:6030)
- TX_FAR _SilphCo3AfterBattleText2
- db "@"
-
-SilphCo3Object: ; 0x5a035 (size=113)
- db $2e ; border tile
-
- db $a ; warps
- db $0, $1a, $1, SILPH_CO_2F
- db $0, $18, $0, SILPH_CO_4F
- db $0, $14, $0, SILPH_CO_ELEVATOR
- db $b, $17, $9, SILPH_CO_3F
- db $3, $3, $5, SILPH_CO_5F
- db $f, $3, $6, SILPH_CO_5F
- db $3, $1b, $3, SILPH_CO_2F
- db $b, $3, $3, SILPH_CO_9F
- db $b, $b, $4, SILPH_CO_7F
- db $f, $1b, $3, SILPH_CO_3F
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_LAPRAS_GIVER, $8 + 4, $18 + 4, $ff, $ff, $1 ; person
- db SPRITE_ROCKET, $7 + 4, $14 + 4, $ff, $d2, $42, ROCKET + $C8, $19 ; trainer
- db SPRITE_OAK_AIDE, $9 + 4, $7 + 4, $ff, $d0, $43, SCIENTIST + $C8, $4 ; trainer
- db SPRITE_BALL, $5 + 4, $8 + 4, $ff, $ff, $84, HYPER_POTION ; item
-
- ; warp-to
- EVENT_DISP SILPH_CO_3F_WIDTH, $0, $1a ; SILPH_CO_2F
- EVENT_DISP SILPH_CO_3F_WIDTH, $0, $18 ; SILPH_CO_4F
- EVENT_DISP SILPH_CO_3F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_3F_WIDTH, $b, $17 ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_3F_WIDTH, $3, $3 ; SILPH_CO_5F
- EVENT_DISP SILPH_CO_3F_WIDTH, $f, $3 ; SILPH_CO_5F
- EVENT_DISP SILPH_CO_3F_WIDTH, $3, $1b ; SILPH_CO_2F
- EVENT_DISP SILPH_CO_3F_WIDTH, $b, $3 ; SILPH_CO_9F
- EVENT_DISP SILPH_CO_3F_WIDTH, $b, $b ; SILPH_CO_7F
- EVENT_DISP SILPH_CO_3F_WIDTH, $f, $1b ; SILPH_CO_3F
+INCLUDE "data/mapObjects/silphco3.asm"
SilphCo3Blocks: ; 5a0a6 (16:60a6)
INCBIN "maps/silphco3.blk"
-SilphCo10_h: ; 0x5a12d to 0x5a139 (12 bytes) (id=234)
- db FACILITY ; tileset
- db SILPH_CO_10F_HEIGHT, SILPH_CO_10F_WIDTH ; dimensions (y, x)
- dw SilphCo10Blocks, SilphCo10TextPointers, SilphCo10Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo10Object ; objects
+INCLUDE "data/mapHeaders/silphco10.asm"
-SilphCo10Script: ; 5a139 (16:6139)
- call SilphCo10Script_5a14f
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo10TrainerHeaders
- ld de, SilphCo10ScriptPointers
- ld a, [W_SILPHCO10CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO10CURSCRIPT], a
- ret
+INCLUDE "scripts/silphco10.asm"
-SilphCo10Script_5a14f: ; 5a14f (16:614f)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_5a173 ; $6173
- call Func_59d43
- call Func_5a176
- ld a, [$d836]
- bit 0, a
- ret nz
- ld a, $54
- ld [$d09f], a
- ld bc, $405
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-DataTable_5a173: ; 5a173 (16:6173)
- db $04,$05,$FF
-
-Func_5a176: ; 5a176 (16:6176)
- ld a, [$ffe0]
- and a
- ret z
- ld hl, $d836
- set 0, [hl]
- ret
-
-SilphCo10ScriptPointers: ; 5a180 (16:6180)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo10TextPointers: ; 5a186 (16:6186)
- dw SilphCo10Text1
- dw SilphCo10Text2
- dw SilphCo10Text3
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-SilphCo10TrainerHeaders: ; 5a192 (16:6192)
-SilphCo10TrainerHeader0: ; 5a192 (16:6192)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d835 ; flag's byte
- dw SilphCo10BattleText1 ; 0x61dd TextBeforeBattle
- dw SilphCo10AfterBattleText1 ; 0x61e7 TextAfterBattle
- dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle
- dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle
-
-SilphCo10TrainerHeader1: ; 5a19e (16:619e)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d835 ; flag's byte
- dw SilphCo10BattleText2 ; 0x61ec TextBeforeBattle
- dw SilphCo10AfterBattleText2 ; 0x61f6 TextAfterBattle
- dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle
- dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle
-
- db $ff
-
-SilphCo10Text1: ; 5a1ab (16:61ab)
- db $08 ; asm
- ld hl, SilphCo10TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo10Text2: ; 5a1b5 (16:61b5)
- db $08 ; asm
- ld hl, SilphCo10TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo10Text3: ; 5a1bf (16:61bf)
- db $08 ; asm
- ld a, [$d838]
- bit 7, a
- ld hl, UnnamedText_5a1d8
- jr nz, .asm_cf85f
- ld hl, UnnamedText_5a1d3
-.asm_cf85f
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5a1d3: ; 5a1d3 (16:61d3)
- TX_FAR _UnnamedText_5a1d3
- db "@"
-
-UnnamedText_5a1d8: ; 5a1d8 (16:61d8)
- TX_FAR _UnnamedText_5a1d8
- db "@"
-
-SilphCo10BattleText1: ; 5a1dd (16:61dd)
- TX_FAR _SilphCo10BattleText1
- db "@"
-
-SilphCo10EndBattleText1: ; 5a1e2 (16:61e2)
- TX_FAR _SilphCo10EndBattleText1
- db "@"
-
-SilphCo10AfterBattleText1: ; 5a1e7 (16:61e7)
- TX_FAR _SilphCo10AfterBattleText1
- db "@"
-
-SilphCo10BattleText2: ; 5a1ec (16:61ec)
- TX_FAR _SilphCo10BattleText2
- db "@"
-
-SilphCo10EndBattleText2: ; 5a1f1 (16:61f1)
- TX_FAR _SilphCo10EndBattleText2
- db "@"
-
-SilphCo10AfterBattleText2: ; 5a1f6 (16:61f6)
- TX_FAR _SilphCo10AfterBattleText2
- db "@"
-
-SilphCo10Object: ; 0x5a1fb (size=95)
- db $2e ; border tile
-
- db $6 ; warps
- db $0, $8, $0, SILPH_CO_9F
- db $0, $a, $0, SILPH_CO_11F
- db $0, $c, $0, SILPH_CO_ELEVATOR
- db $b, $9, $3, SILPH_CO_4F
- db $f, $d, $5, SILPH_CO_4F
- db $7, $d, $6, SILPH_CO_4F
-
- db $0 ; signs
-
- db $6 ; people
- db SPRITE_ROCKET, $9 + 4, $1 + 4, $ff, $d3, $41, ROCKET + $C8, $27 ; trainer
- db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d2, $42, SCIENTIST + $C8, $b ; trainer
- db SPRITE_ERIKA, $f + 4, $9 + 4, $fe, $0, $3 ; person
- db SPRITE_BALL, $c + 4, $2 + 4, $ff, $ff, $84, TM_26 ; item
- db SPRITE_BALL, $e + 4, $4 + 4, $ff, $ff, $85, RARE_CANDY ; item
- db SPRITE_BALL, $b + 4, $5 + 4, $ff, $ff, $86, CARBOS ; item
-
- ; warp-to
- EVENT_DISP SILPH_CO_10F_WIDTH, $0, $8 ; SILPH_CO_9F
- EVENT_DISP SILPH_CO_10F_WIDTH, $0, $a ; SILPH_CO_11F
- EVENT_DISP SILPH_CO_10F_WIDTH, $0, $c ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_10F_WIDTH, $b, $9 ; SILPH_CO_4F
- EVENT_DISP SILPH_CO_10F_WIDTH, $f, $d ; SILPH_CO_4F
- EVENT_DISP SILPH_CO_10F_WIDTH, $7, $d ; SILPH_CO_4F
+INCLUDE "data/mapObjects/silphco10.asm"
SilphCo10Blocks: ; 5a25a (16:625a)
INCBIN "maps/silphco10.blk"
-Lance_h: ; 0x5a2a2 to 0x5a2ae (12 bytes) (id=113)
- db DOJO ; tileset
- db LANCES_ROOM_HEIGHT, LANCES_ROOM_WIDTH ; dimensions (y, x)
- dw LanceBlocks, LanceTextPointers, LanceScript ; blocks, texts, scripts
- db $00 ; connections
- dw LanceObject ; objects
-
-LanceScript: ; 5a2ae (16:62ae)
- call LanceScript_5a2c4
- call EnableAutoTextBoxDrawing
- ld hl, LanceTrainerHeaders
- ld de, LanceScriptPointers
- ld a, [W_LANCECURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_LANCECURSCRIPT], a
- ret
-
-LanceScript_5a2c4: ; 5a2c4 (16:62c4)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d866]
- bit 7, a
- jr nz, .asm_5a2da
- ld a, $31
- ld b, $32
- jp Func_5a2de
-.asm_5a2da
- ld a, $72
- ld b, $73
-
-Func_5a2de: ; 5a2de (16:62de)
- push bc
- ld [$d09f], a
- ld bc, $602
- call Func_5a2f0
- pop bc
- ld a, b
- ld [$d09f], a
- ld bc, $603
+INCLUDE "data/mapHeaders/lance.asm"
-Func_5a2f0: ; 5a2f0 (16:62f0)
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+INCLUDE "scripts/lance.asm"
-Func_5a2f5: ; 5a2f5 (16:62f5)
- xor a
- ld [W_LANCECURSCRIPT], a
- ret
-
-LanceScriptPointers: ; 5a2fa (16:62fa)
- dw LanceScript0
- dw Func_324c
- dw LanceScript2
- dw LanceScript3
- dw LanceScript4
-
-LanceScript4: ; 5a304 (16:6304)
- ret
-
-LanceScript0: ; 5a305 (16:6305)
- ld a, [$d866]
- bit 6, a
- ret nz
- ld hl, CoordsData_5a33e
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, [wWhichTrade] ; $cd3d
- cp $3
- jr nc, .asm_5a325
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-.asm_5a325
- cp $5
- jr z, Func_5a35b
- ld hl, $d866
- bit 7, [hl]
- set 7, [hl]
- ret nz
- ld hl, $d126
- set 5, [hl]
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- jp LanceScript_5a2c4
-
-CoordsData_5a33e: ; 5a33e (16:633e)
- db $01,$05
- db $02,$06
- db $0B,$05
- db $0B,$06
- db $10,$18
- db $FF
-
-LanceScript2: ; 5a349 (16:6349)
- call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_5a2f5
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-
-Func_5a35b: ; 5a35b (16:635b)
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $ccd3
- ld de, RLEList_5a379
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_LANCECURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-RLEList_5a379: ; 5a379 (16:6379)
- db $40, $0C
- db $20, $0C
- db $80, $07
- db $20, $06
- db $FF
-
-LanceScript3: ; 5a382 (16:6382)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_LANCECURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-LanceTextPointers: ; 5a395 (16:6395)
- dw LanceText1
-
-LanceTrainerHeaders: ; 5a397 (16:6397)
-LanceTrainerHeader0: ; 5a397 (16:6397)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d866 ; flag's byte
- dw LanceBeforeBattleText ; 0x63ae TextBeforeBattle
- dw LanceAfterBattleText ; 0x63b8 TextAfterBattle
- dw LanceEndBattleText ; 0x63b3 TextEndBattle
- dw LanceEndBattleText ; 0x63b3 TextEndBattle
-
- db $ff
-
-LanceText1: ; 5a3a4 (16:63a4)
- db $08 ; asm
- ld hl, LanceTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-LanceBeforeBattleText: ; 5a3ae (16:63ae)
- TX_FAR _LanceBeforeBattleText
- db "@"
-
-LanceEndBattleText: ; 5a3b3 (16:63b3)
- TX_FAR _LanceEndBattleText
- db "@"
-
-LanceAfterBattleText: ; 5a3b8 (16:63b8)
- TX_FAR _LanceAfterBattleText ; 0x85e9e
- db $8
- ld hl, $d866
- set 6, [hl]
- jp TextScriptEnd
-
-LanceObject: ; 0x5a3c5 (size=36)
- db $3 ; border tile
-
- db $3 ; warps
- db $10, $18, $2, AGATHAS_ROOM
- db $0, $5, $0, CHAMPIONS_ROOM
- db $0, $6, $0, CHAMPIONS_ROOM
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_LANCE, $1 + 4, $6 + 4, $ff, $d0, $41, LANCE + $C8, $1 ; trainer
-
- ; warp-to
- EVENT_DISP LANCES_ROOM_WIDTH, $10, $18 ; AGATHAS_ROOM
- EVENT_DISP LANCES_ROOM_WIDTH, $0, $5 ; CHAMPIONS_ROOM
- EVENT_DISP LANCES_ROOM_WIDTH, $0, $6 ; CHAMPIONS_ROOM
+INCLUDE "data/mapObjects/lance.asm"
LanceBlocks: ; 5a3e9 (16:63e9)
INCBIN "maps/lance.blk"
-HallofFameRoom_h: ; 0x5a492 to 0x5a49e (12 bytes) (id=118)
- db GYM ; tileset
- db HALL_OF_FAME_HEIGHT, HALL_OF_FAME_WIDTH ; dimensions (y, x)
- dw HallofFameRoomBlocks, HallofFameRoomTextPointers, HallofFameRoomScript ; blocks, texts, scripts
- db $00 ; connections
- dw HallofFameRoomObject ; objects
+INCLUDE "data/mapHeaders/halloffameroom.asm"
-HallofFameRoomScript: ; 5a49e (16:649e)
- call EnableAutoTextBoxDrawing
- ld hl, HallofFameRoomScriptPointers
- ld a, [W_HALLOFFAMEROOMCURSCRIPT]
- jp CallFunctionInTable
-
-Func_5a4aa: ; 5a4aa (16:64aa)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_HALLOFFAMEROOMCURSCRIPT], a
- ret
-
-HallofFameRoomScriptPointers: ; 5a4b2 (16:64b2)
- dw HallofFameRoomScript0
- dw HallofFameRoomScript1
- dw HallofFameRoomScript2
- dw HallofFameRoomScript3
+INCLUDE "scripts/halloffameroom.asm"
-HallofFameRoomScript3: ; 5a4ba (16:64ba)
- ret
-
-HallofFameRoomScript2: ; 5a4bb (16:64bb)
- call Delay3
- ld a, [$d358]
- push af
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $55
- call Predef
- pop af
- ld [$d358], a
- ld hl, W_FLAGS_D733
- res 1, [hl]
- inc hl
- set 0, [hl]
- xor a
- ld hl, W_LORELEICURSCRIPT
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld [W_LANCECURSCRIPT], a
- ld [W_HALLOFFAMEROOMCURSCRIPT], a
- ld hl, $d863
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- xor a
- ld [W_HALLOFFAMEROOMCURSCRIPT], a
- ld a, PALLET_TOWN
- ld [wLastBlackoutMap], a
- callba SaveSAVtoSRAM
- ld b, 5
-.asm_5a4ff
- ld c, 600 / 5
- call DelayFrames
- dec b
- jr nz, .asm_5a4ff ; 0x5a505 $f8
- call WaitForTextScrollButtonPress
- jp InitGame
-
-HallofFameRoomScript0: ; 5a50d (16:650d)
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $ccd3
- ld de, RLEMovement5a528
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $1
- ld [W_HALLOFFAMEROOMCURSCRIPT], a
- ret
-
-RLEMovement5a528: ; 5a528 (16:6528)
- db $40,$5
- db $ff
-
-HallofFameRoomScript1: ; 5a52b (16:652b)
- ld a, [$cd38]
- and a
- ret nz
- ld a, $1
- ld [$d528], a
- ld a, $1
- ld [$ff8c], a
- call SetSpriteMovementBytesToFF
- ld a, $8
- ld [$ff8d], a
- call Func_34a6
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- inc a
- ld [$d528], a
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $8
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $2
- ld [W_HALLOFFAMEROOMCURSCRIPT], a
- ret
-
-HallofFameRoomTextPointers: ; 5a56a (16:656a)
- dw HallofFameRoomText1
-
-HallofFameRoomText1: ; 5a56c (16:656c)
- TX_FAR _HallofFameRoomText1
- db "@"
-
-HallofFameRoomObject: ; 0x5a571 (size=26)
- db $3 ; border tile
-
- db $2 ; warps
- db $7, $4, $2, CHAMPIONS_ROOM
- db $7, $5, $3, CHAMPIONS_ROOM
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $1 ; person
-
- ; warp-to
- EVENT_DISP HALL_OF_FAME_WIDTH, $7, $4 ; CHAMPIONS_ROOM
- EVENT_DISP HALL_OF_FAME_WIDTH, $7, $5 ; CHAMPIONS_ROOM
+INCLUDE "data/mapObjects/halloffameroom.asm"
HallofFameRoomBlocks: ; 5a58b (16:658b)
INCBIN "maps/halloffameroom.blk"
@@ -90017,61 +47822,22 @@ LavenderPokecenterBlocks: ; 5c064 (17:4064)
PewterPokecenterBlocks: ; 5c064 (17:4064)
INCBIN "maps/pewterpokecenter.blk"
-UndergroundTunnelEntranceRoute7Blocks: ; 5c080 (17:4080)
-UndergroundTunnelEntranceRoute7CopyBlocks: ; 5c080 (17:4080)
-UndergroundTunnelEntranceRoute6Blocks: ; 5c080 (17:4080)
-UndergroundTunnelEntranceRoute5Blocks: ; 5c080 (17:4080)
- INCBIN "maps/undergroundtunnelentranceroute5.blk"
+UndergroundPathEntranceRoute7Blocks: ; 5c080 (17:4080)
+UndergroundPathEntranceRoute7CopyBlocks: ; 5c080 (17:4080)
+UndergroundPathEntranceRoute6Blocks: ; 5c080 (17:4080)
+UndergroundPathEntranceRoute5Blocks: ; 5c080 (17:4080)
+ INCBIN "maps/undergroundpathentranceroute5.blk"
Route2GateBlocks: ; 5c090 (17:4090)
ViridianForestEntranceBlocks: ; 5c090 (17:4090)
ViridianForestExitBlocks: ; 5c090 (17:4090)
INCBIN "maps/viridianforestexit.blk"
-RedsHouse2F_h: ; 5c0a4 (17:40a4)
- db REDS_HOUSE_2 ; tileset
- db REDS_HOUSE_2F_HEIGHT, REDS_HOUSE_2F_WIDTH ; dimensions
- dw RedsHouse2FBlocks, RedsHouse2FTextPointers, RedsHouse2FScript
- db $00 ; no connections
- dw RedsHouse2FObject
+INCLUDE "data/mapHeaders/redshouse2f.asm"
-RedsHouse2FScript: ; 5c0b0 (17:40b0)
- call EnableAutoTextBoxDrawing
- ld hl,RedsHouse2FScriptPointers
- ld a,[W_REDSHOUSE2CURSCRIPT]
- jp CallFunctionInTable
+INCLUDE "scripts/redshouse2f.asm"
-RedsHouse2FScriptPointers: ; 5c0bc (17:40bc)
- dw RedsHouse2FScript0
- dw RedsHouse2FScript1
-
-RedsHouse2FScript0: ; 5c0c0 (17:40c0)
- xor a
- ld [H_CURRENTPRESSEDBUTTONS],a
- ld a,8
- ld [$D528],a
- ld a,1
- ld [W_REDSHOUSE2CURSCRIPT],a
- ret
-
-RedsHouse2FScript1: ; 5c0ce (17:40ce)
- ret
-
-RedsHouse2FTextPointers: ; 5c0cf (17:40cf)
- db "@"
-
-RedsHouse2FObject: ; 0x5c0d0 ?
- db $0A ; border tile
-
- db 1 ; warps
- db 1, 7, 2, REDS_HOUSE_1F
-
- db 0 ; signs
-
- db 0 ; people
-
- ; warp-to
- EVENT_DISP REDS_HOUSE_2F_WIDTH, 1, 7
+INCLUDE "data/mapObjects/redshouse2f.asm"
Func_5c0dc: ; 5c0dc (17:40dc)
ld a, $4b
@@ -90082,3438 +47848,191 @@ Func_5c0dc: ; 5c0dc (17:40dc)
ld [wPokedexOwned], a ; $d2f7
ret
-Museum1F_h: ; 0x5c0eb to 0x5c0f7 (12 bytes) (id=52)
- db MUSEUM ; tileset
- db MUSEUM_1F_HEIGHT, MUSEUM_1F_WIDTH ; dimensions (y, x)
- dw Museum1FBlocks, Museum1FTextPointers, Museum1FScript ; blocks, texts, scripts
- db $00 ; connections
- dw Museum1FObject ; objects
-
-Museum1FScript: ; 5c0f7 (17:40f7)
- ld a, $1
- ld [$cf0c], a
- xor a
- ld [$cc3c], a
- ld hl, Museum1FScriptPointers
- ld a, [W_MUSEUM1FCURSCRIPT]
- jp CallFunctionInTable
-
-Museum1FScriptPointers: ; 5c109 (17:4109)
- dw Museum1FScript0
- dw Museum1FScript1
-
-Museum1FScript0: ; 5c10d (17:410d)
- ld a, [$d361]
- cp $4
- ret nz
- ld a, [$d362]
- cp $9
- jr z, .asm_5c120 ; 0x5c118 $6
- ld a, [$d362]
- cp $a
- ret nz
-.asm_5c120
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $1
- ld [$ff8c], a
- jp DisplayTextID
-
-Museum1FScript1: ; 5c12a (17:412a)
- ret
-
-Museum1FTextPointers: ; 5c12b (17:412b)
- dw Museum1FText1
- dw Museum1FText2
- dw Museum1FText3
- dw Museum1FText4
- dw Museum1FText5
-
-Museum1FText1: ; 5c135 (17:4135)
- db $8
- ld a, [$d361]
- cp $4
- jr nz, asm_8774b ; 0x5c13b $a
- ld a, [$d362]
- cp $d
- jp z, Func_5c1f9
- jr asm_b8709 ; 0x5c145 $1c
-asm_8774b: ; 5c147 (17:4147)
- cp $3
- jr nz, asm_d49e7 ; 0x5c149 $8
- ld a, [$d362]
- cp $c
- jp z, Func_5c1f9
-asm_d49e7: ; 5c153 (17:4153)
- ld a, [$d754]
- bit 0, a
- jr nz, asm_31a16 ; 0x5c158 $10
- ld hl, UnnamedText_5c23d
- call PrintText
- jp asm_d1145
-asm_b8709: ; 5c163 (17:4163)
- ld a, [$d754]
- bit 0, a
- jr z, asm_3ded4 ; 0x5c168 $9
-asm_31a16: ; 5c16a (17:416a)
- ld hl, UnnamedText_5c242
- call PrintText
- jp asm_d1145
-asm_3ded4: ; 5c173 (17:4173)
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld hl, UnnamedText_5c21f
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, asm_de133 ; 0x5c18b $4d
- xor a
- ld [$ff9f], a
- ld [$ffa0], a
- ld a, $50
- ld [$ffa1], a
- call HasEnoughMoney
- jr nc, asm_0f3e3 ; 0x5c199 $9
- ld hl, UnnamedText_5c229
- call PrintText
- jp asm_de133
-asm_0f3e3: ; 5c1a4 (17:41a4)
- ld hl, UnnamedText_5c224
- call PrintText
- ld hl, $d754
- set 0, [hl]
- xor a
- ld [$cd3d], a
- ld [$cd3e], a
- ld a, $50
- ld [$cd3f], a
- ld hl, $cd3f
- ld de, $d349
- ld c, $3
- ld a, $c
- call Predef
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- ld a, (SFX_02_5a - SFX_Headers_02) / 3
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- jr asm_0b094 ; 0x5c1d8 $18
-asm_de133: ; 5c1da (17:41da)
- ld hl, UnnamedText_5c21a ; $421a
- call PrintText
- ld a, $1
- ld [$cd38], a
- ld a, $80
- ld [$ccd3], a
- call Func_3486
- call UpdateSprites
- jr asm_d1145 ; 0x5c1f0 $25
-asm_0b094: ; 5c1f2 (17:41f2)
- ld a, $1
- ld [W_MUSEUM1FCURSCRIPT], a
- jr asm_d1145 ; 0x5c1f7 $1e
-
-Func_5c1f9: ; 5c1f9 (17:41f9)
- ld hl, UnnamedText_5c22e
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- cp $0
- jr nz, asm_d1144
- ld hl, UnnamedText_5c233
- call PrintText
- jr asm_d1145 ; 0x5c20f $6
-asm_d1144: ; 5c211 (17:4211)
- ld hl, UnnamedText_5c238
- call PrintText
-asm_d1145: ; 5c217 (17:4217)
- jp TextScriptEnd
-
-UnnamedText_5c21a: ; 5c21a (17:421a)
- TX_FAR _UnnamedText_5c21a
- db "@"
-
-UnnamedText_5c21f: ; 5c21f (17:421f)
- TX_FAR _UnnamedText_5c21f
- db "@"
-
-UnnamedText_5c224: ; 5c224 (17:4224)
- TX_FAR _UnnamedText_5c224
- db "@"
-
-UnnamedText_5c229: ; 5c229 (17:4229)
- TX_FAR _UnnamedText_5c229
- db "@"
-
-UnnamedText_5c22e: ; 5c22e (17:422e)
- TX_FAR _UnnamedText_5c22e
- db "@"
-
-UnnamedText_5c233: ; 5c233 (17:4233)
- TX_FAR _UnnamedText_5c233
- db "@"
-
-UnnamedText_5c238: ; 5c238 (17:4238)
- TX_FAR _UnnamedText_5c238
- db "@"
-
-UnnamedText_5c23d: ; 5c23d (17:423d)
- TX_FAR _UnnamedText_5c23d
- db "@"
-
-UnnamedText_5c242: ; 5c242 (17:4242)
- TX_FAR _UnnamedText_5c242
- db "@"
-
-Museum1FText2: ; 5c247 (17:4247)
- db $08 ; asm
- ld hl, UnnamedText_5c251
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5c251: ; 5c251 (17:4251)
- TX_FAR _UnnamedText_5c251
- db "@"
-
-Museum1FText3: ; 5c256 (17:4256)
- db $08 ; asm
- ld a, [$d754]
- bit 1, a
- jr nz, .asm_16599 ; 0x5c25c
- ld hl, UnnamedText_5c28e
- call PrintText
- ld bc, (OLD_AMBER << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, $d754
- set 1, [hl]
- ld a, $34
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, ReceivedOldAmberText
- jr .asm_52e0f ; 0x5c27e
-.BagFull
- ld hl, UnnamedText_5c29e
- jr .asm_52e0f ; 0x5c283
-.asm_16599 ; 0x5c285
- ld hl, UnnamedText_5c299
-.asm_52e0f ; 0x5c288
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5c28e: ; 5c28e (17:428e)
- TX_FAR _UnnamedText_5c28e
- db "@"
-
-ReceivedOldAmberText: ; 5c293 (17:4293)
- TX_FAR _ReceivedOldAmberText ; 0x96790
- db $0B, "@"
-
-UnnamedText_5c299: ; 5c299 (17:4299)
- TX_FAR _UnnamedText_5c299
- db "@"
-
-UnnamedText_5c29e: ; 5c29e (17:429e)
- TX_FAR _UnnamedText_5c29e
- db "@"
-
-Museum1FText4: ; 5c2a3 (17:42a3)
- db $08 ; asm
- ld hl, UnnamedText_5c2ad
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5c2ad: ; 5c2ad (17:42ad)
- TX_FAR _UnnamedText_5c2ad
- db "@"
-
-Museum1FText5: ; 5c2b2 (17:42b2)
- db $08 ; asm
- ld hl, UnnamedText_5c2bc
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5c2bc: ; 5c2bc (17:42bc)
- TX_FAR _UnnamedText_5c2bc
- db "@"
-
-Museum1FObject: ; 0x5c2c1 (size=74)
- db $a ; border tile
-
- db $5 ; warps
- db $7, $a, $0, $ff
- db $7, $b, $0, $ff
- db $7, $10, $1, $ff
- db $7, $11, $1, $ff
- db $7, $7, $0, MUSEUM_2F
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_OAK_AIDE, $4 + 4, $c + 4, $ff, $d2, $1 ; person
- db SPRITE_GAMBLER, $4 + 4, $1 + 4, $ff, $ff, $2 ; person
- db SPRITE_OAK_AIDE, $2 + 4, $f + 4, $ff, $d0, $3 ; person
- db SPRITE_OAK_AIDE, $4 + 4, $11 + 4, $ff, $ff, $4 ; person
- db SPRITE_OLD_AMBER, $2 + 4, $10 + 4, $ff, $ff, $5 ; person
-
- ; warp-to
- EVENT_DISP MUSEUM_1F_WIDTH, $7, $a
- EVENT_DISP MUSEUM_1F_WIDTH, $7, $b
- EVENT_DISP MUSEUM_1F_WIDTH, $7, $10
- EVENT_DISP MUSEUM_1F_WIDTH, $7, $11
- EVENT_DISP MUSEUM_1F_WIDTH, $7, $7 ; MUSEUM_2F
-
-Museum2F_h: ; 0x5c30b to 0x5c317 (12 bytes) (id=53)
- db MUSEUM ; tileset
- db MUSEUM_2F_HEIGHT, MUSEUM_2F_WIDTH ; dimensions (y, x)
- dw Museum2FBlocks, Museum2FTextPointers, Museum2FScript ; blocks, texts, scripts
- db $00 ; connections
- dw Museum2FObject ; objects
-
-Museum2FScript: ; 5c317 (17:4317)
- jp EnableAutoTextBoxDrawing
-
-Museum2FTextPointers: ; 5c31a (17:431a)
- dw Museum2FText1
- dw Museum2FText2
- dw Museum2FText3
- dw Museum2FText4
- dw Museum2FText5
- dw Museum2FText6
- dw Museum2FText7
-
-Museum2FText1: ; 5c328 (17:4328)
- TX_FAR _Museum2FText1
- db "@"
-
-Museum2FText2: ; 5c32d (17:432d)
- TX_FAR _Museum2FText2
- db "@"
-
-Museum2FText3: ; 5c332 (17:4332)
- TX_FAR _Museum2FText3
- db "@"
-
-Museum2FText4: ; 5c337 (17:4337)
- TX_FAR _Museum2FText4
- db "@"
-
-Museum2FText5: ; 5c33c (17:433c)
- TX_FAR _Museum2FText5
- db "@"
-
-Museum2FText6: ; 5c341 (17:4341)
- TX_FAR _Museum2FText6
- db "@"
-
-Museum2FText7: ; 5c346 (17:4346)
- TX_FAR _Museum2FText7
- db "@"
-
-Museum2FObject: ; 0x5c34b (size=48)
- db $a ; border tile
-
- db $1 ; warps
- db $7, $7, $4, MUSEUM_1F
-
- db $2 ; signs
- db $2, $b, $6 ; Museum2FText6
- db $5, $2, $7 ; Museum2FText7
-
- db $5 ; people
- db SPRITE_BUG_CATCHER, $7 + 4, $1 + 4, $fe, $2, $1 ; person
- db SPRITE_OLD_PERSON, $5 + 4, $0 + 4, $ff, $d0, $2 ; person
- db SPRITE_OAK_AIDE, $5 + 4, $7 + 4, $ff, $d0, $3 ; person
- db SPRITE_BRUNETTE_GIRL, $5 + 4, $b + 4, $ff, $ff, $4 ; person
- db SPRITE_HIKER, $5 + 4, $c + 4, $ff, $d0, $5 ; person
-
- ; warp-to
- EVENT_DISP MUSEUM_2F_WIDTH, $7, $7 ; MUSEUM_1F
-
-PewterGym_h: ; 0x5c37b to 0x5c387 (12 bytes) (id=54)
- db GYM ; tileset
- db PEWTER_GYM_HEIGHT, PEWTER_GYM_WIDTH ; dimensions (y, x)
- dw PewterGymBlocks, PewterGymTextPointers, PewterGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw PewterGymObject ; objects
-
-PewterGymScript: ; 5c387 (17:4387)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- call nz, PewterGymScript_5c3a4
- call EnableAutoTextBoxDrawing
- ld hl, PewterGymTrainerHeaders
- ld de, PewterGymScriptPointers
- ld a, [W_PEWTERGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_PEWTERGYMCURSCRIPT], a
- ret
-
-PewterGymScript_5c3a4: ; 5c3a4 (17:43a4)
- ld hl, Gym1CityName ; $43ad
- ld de, Gym1LeaderName ; $43b9
- jp LoadGymLeaderAndCityName
-
-Gym1CityName: ; 5c3ad (17:43ad)
- db "PEWTER CITY@"
-
-Gym1LeaderName: ; 5c3b9 (17:43b9)
- db "BROCK@"
-
-Func_5c3bf: ; 5c3bf (17:43bf)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_PEWTERGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PewterGymScriptPointers: ; 5c3ca (17:43ca)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw PewterGymScript3
-
-PewterGymScript3: ; 5c3d2 (17:43d2)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_5c3bf
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-
-Func_5c3df: ; 5c3df (17:43df)
- ld a, $4
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d755
- set 7, [hl]
- ld bc, (TM_34 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $5
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d755
- set 6, [hl]
- jr .asm_5c408
-.BagFull
- ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_5c408
- ld hl, W_OBTAINEDBADGES
- set 0, [hl]
- ld hl, $d72a
- set 0, [hl]
-
- ld a, $4
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- ld a, $22
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
-
- ld hl, $d7eb
- res 0, [hl]
- res 7, [hl]
-
- ; deactivate gym trainers
- ld hl, $d755
- set 2, [hl]
-
- jp Func_5c3bf
-
-PewterGymTextPointers: ; 5c435 (17:4435)
- dw PewterGymText1
- dw PewterGymText2
- dw PewterGymText3
- dw PewterGymText4
- dw PewterGymText5
- dw PewterGymText6
-
-PewterGymTrainerHeaders: ; 5c441 (17:4441)
-PewterGymTrainerHeader0: ; 5c441 (17:4441)
- db $2 ; flag's bit
- db ($5 << 4) ; trainer's view range
- dw $d755 ; flag's byte
- dw PewterGymBattleText1 ; 0x44d0 TextBeforeBattle
- dw PewterGymAfterBattleText1 ; 0x44da TextAfterBattle
- dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle
- dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle
-
- db $ff
-
-PewterGymText1: ; 5c44e (17:444e)
- db $08 ; asm
- ld a, [$d755]
- bit 7, a
- jr z, .asm_4a735 ; 0x5c454
- bit 6, a
- jr nz, .asm_ff7d0 ; 0x5c458
- call z, Func_5c3df
- call DisableWaitingAfterTextDisplay
- jr .asm_e0ffb ; 0x5c460
-.asm_ff7d0 ; 0x5c462
- ld hl, UnnamedText_5c4a3
- call PrintText
- jr .asm_e0ffb ; 0x5c468
-.asm_4a735 ; 0x5c46a
- ld hl, UnnamedText_5c49e
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_5c4bc
- ld de, UnnamedText_5c4bc
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $1
- ld [$d05c], a
- xor a
- ldh [$b4], a
- ld a, $3
- ld [W_PEWTERGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_e0ffb ; 0x5c49b
- jp TextScriptEnd
-
-UnnamedText_5c49e: ; 5c49e (17:449e)
- TX_FAR _UnnamedText_5c49e
- db "@"
-
-UnnamedText_5c4a3: ; 5c4a3 (17:44a3)
- TX_FAR _UnnamedText_5c4a3
- db "@"
-
-PewterGymText4: ; 5c4a8 (17:44a8)
- TX_FAR _TM34PreReceiveText
- db "@"
-
-PewterGymText5: ; 5c4ad (17:44ad)
- TX_FAR _ReceivedTM34Text ; 0x980ad
- db $0B
- TX_FAR _TM34ExplanationText ; 0x980c0
- db "@"
+INCLUDE "data/mapHeaders/museum1f.asm"
-PewterGymText6: ; 5c4b7 (17:44b7)
- TX_FAR _TM34NoRoomText
- db "@"
+INCLUDE "scripts/museum1f.asm"
-UnnamedText_5c4bc: ; 5c4bc (17:44bc)
- TX_FAR _UnnamedText_5c4bc ; 0x981c9
- db $0B
- TX_FAR _UnnamedText_5c4c1 ; 0x98232
- db "@"
+INCLUDE "data/mapObjects/museum1f.asm"
-PewterGymText2: ; 5c4c6 (17:44c6)
- db $08 ; asm
- ld hl, PewterGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/museum2f.asm"
-PewterGymBattleText1: ; 5c4d0 (17:44d0)
- TX_FAR _PewterGymBattleText1
- db "@"
+INCLUDE "scripts/museum2f.asm"
-PewterGymEndBattleText1: ; 5c4d5 (17:44d5)
- TX_FAR _PewterGymEndBattleText1
- db "@"
+INCLUDE "data/mapObjects/museum2f.asm"
-PewterGymAfterBattleText1: ; 5c4da (17:44da)
- TX_FAR _PewterGymAfterBattleText1
- db "@"
+INCLUDE "data/mapHeaders/pewtergym.asm"
-PewterGymText3: ; 5c4df (17:44df)
- db $08 ; asm
- ld a, [$d72a]
- bit 0, a
- jr nz, .asm_71369 ; 0x5c4e5
- ld hl, UnnamedText_5c515
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_6123a ; 0x5c4f4
- ld hl, UnnamedText_5c51a
- call PrintText
- jr .asm_d1578 ; 0x5c4fc
-.asm_6123a ; 0x5c4fe
- ld hl, UnnamedText_5c524
- call PrintText
-.asm_d1578 ; 0x5c504
- ld hl, UnnamedText_5c51f
- call PrintText
- jr .asm_07013 ; 0x5c50a
-.asm_71369 ; 0x5c50c
- ld hl, UnnamedText_5c529
- call PrintText
-.asm_07013 ; 0x5c512
- jp TextScriptEnd
+INCLUDE "scripts/pewtergym.asm"
-UnnamedText_5c515: ; 5c515 (17:4515)
- TX_FAR _UnnamedText_5c515
- db "@"
-
-UnnamedText_5c51a: ; 5c51a (17:451a)
- TX_FAR _UnnamedText_5c51a
- db "@"
-
-UnnamedText_5c51f: ; 5c51f (17:451f)
- TX_FAR _UnnamedText_5c51f
- db "@"
-
-UnnamedText_5c524: ; 5c524 (17:4524)
- TX_FAR _UnnamedText_5c524
- db "@"
-
-UnnamedText_5c529: ; 5c529 (17:4529)
- TX_FAR _UnnamedText_5c529
- db "@"
-
-PewterGymObject: ; 0x5c52e (size=42)
- db $3 ; border tile
-
- db $2 ; warps
- db $d, $4, $2, $ff
- db $d, $5, $2, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $1 + 4, $4 + 4, $ff, $d0, $41, BROCK + $C8, $1 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $3 + 4, $ff, $d3, $42, JR__TRAINER_M + $C8, $1 ; trainer
- db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $3 ; person
-
- ; warp-to
- EVENT_DISP PEWTER_GYM_WIDTH, $d, $4
- EVENT_DISP PEWTER_GYM_WIDTH, $d, $5
+INCLUDE "data/mapObjects/pewtergym.asm"
PewterGymBlocks: ; 5c558 (17:4558)
INCBIN "maps/pewtergym.blk"
-PewterPokecenter_h: ; 0x5c57b to 0x5c587 (12 bytes) (id=58)
- db POKECENTER ; tileset
- db PEWTER_POKECENTER_HEIGHT, PEWTER_POKECENTER_WIDTH ; dimensions (y, x)
- dw PewterPokecenterBlocks, PewterPokecenterTextPointers, PewterPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw PewterPokecenterObject ; objects
+INCLUDE "data/mapHeaders/pewterpokecenter.asm"
-PewterPokecenterScript: ; 5c587 (17:4587)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/pewterpokecenter.asm"
-PewterPokecenterTextPointers: ; 5c58d (17:458d)
- dw PewterPokecenterText1
- dw PewterPokecenterText2
- dw PewterPokecenterText3
- dw PewterPokecenterText4
+INCLUDE "data/mapObjects/pewterpokecenter.asm"
-PewterPokecenterText1: ; 5c595 (17:4595)
- db $ff
+INCLUDE "data/mapHeaders/ceruleanpokecenter.asm"
-PewterPokecenterText2: ; 5c596 (17:4596)
- TX_FAR _PewterPokecenterText1
- db "@"
+INCLUDE "scripts/ceruleanpokecenter.asm"
-PewterPokecenterText3: ; 5c59b (17:459b)
- db $8
- ld a, $1
- ld [$cc3c], a
- ld hl, PewterPokecenterText5
- call PrintText
- ld a, $ff
- call PlaySound
- ld c, $20
- call DelayFrames
- ld hl, Unknown_5c608 ; $4608
- ld de, $cd3f
- ld bc, $0004
- call CopyData
- ld a, [$c132]
- ld hl, $cd3f
-.asm_5c5c3
- cp [hl]
- inc hl
- jr nz, .asm_5c5c3 ; 0x5c5c5 $fc
- dec hl
- push hl
- ld c, BANK(Music_JigglypuffSong)
- ld a, MUSIC_JIGGLYPUFF_SONG
- call PlayMusic
- pop hl
-.asm_5c5d1
- ld a, [hl]
- ld [$c132], a
- push hl
- ld hl, $cd3f
- ld de, $cd3e
- ld bc, $0004
- call CopyData
- ld a, [$cd3e]
- ld [$cd42], a
- pop hl
- ld c, $18
- call DelayFrames
- ld a, [$c026]
- ld b, a
- ld a, [$c027]
- or b
- jr nz, .asm_5c5d1 ; 0x5c5f6 $d9
- ld c, $30
- call DelayFrames
- call Func_2307
- jp TextScriptEnd
-
-PewterPokecenterText5: ; 5c603 (17:4603)
- TX_FAR _PewterPokecenterText5 ; 0x98744
- db "@"
-
-Unknown_5c608: ; 5c608 (17:4608)
- db $30, $38, $34, $3c
-
-PewterPokecenterText4: ; 5c60c (17:460c)
- db $f6
-
-PewterPokecenterObject: ; 0x5c60d (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $6, $ff
- db $7, $4, $6, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_GENTLEMAN, $7 + 4, $b + 4, $ff, $d2, $2 ; person
- db SPRITE_CLEFAIRY, $3 + 4, $1 + 4, $ff, $d0, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $3
- EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $4
-
-CeruleanPokecenter_h: ; 0x5c639 to 0x5c645 (12 bytes) (id=64)
- db POKECENTER ; tileset
- db CERULEAN_POKECENTER_HEIGHT, CERULEAN_POKECENTER_WIDTH ; dimensions (y, x)
- dw CeruleanPokecenterBlocks, CeruleanPokecenterTextPointers, CeruleanPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanPokecenterObject ; objects
-
-CeruleanPokecenterScript: ; 5c645 (17:4645)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-CeruleanPokecenterTextPointers: ; 5c64b (17:464b)
- dw CeruleanPokecenterText1
- dw CeruleanPokecenterText2
- dw CeruleanPokecenterText3
- dw CeruleanPokecenterText4
-
-CeruleanPokecenterText4: ; 5c653 (17:4653)
- db $f6
-
-CeruleanPokecenterText1: ; 5c654 (17:4654)
- db $ff
-
-CeruleanPokecenterText2: ; 5c655 (17:4655)
- TX_FAR _CeruleanPokecenterText1
- db "@"
-
-CeruleanPokecenterText3: ; 5c65a (17:465a)
- TX_FAR _CeruleanPokecenterText3
- db "@"
-
-CeruleanPokecenterObject: ; 0x5c65f (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $2, $ff
- db $7, $4, $2, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $a + 4, $fe, $0, $2 ; person
- db SPRITE_GENTLEMAN, $3 + 4, $4 + 4, $ff, $d0, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $3
- EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $4
+INCLUDE "data/mapObjects/ceruleanpokecenter.asm"
CeruleanPokecenterBlocks: ; 5c68b (17:468b)
INCBIN "maps/ceruleanpokecenter.blk"
-CeruleanGym_h: ; 0x5c6a7 to 0x5c6b3 (12 bytes) (id=65)
- db GYM ; tileset
- db CERULEAN_GYM_HEIGHT, CERULEAN_GYM_WIDTH ; dimensions (y, x)
- dw CeruleanGymBlocks, CeruleanGymTextPointers, CeruleanGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanGymObject ; objects
-
-CeruleanGymScript: ; 5c6b3 (17:46b3)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- call nz, CeruleanGymScript_5c6d0
- call EnableAutoTextBoxDrawing
- ld hl, CeruleanGymTrainerHeaders
- ld de, CeruleanGymScriptPointers
- ld a, [W_CERULEANGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_CERULEANGYMCURSCRIPT], a
- ret
-
-CeruleanGymScript_5c6d0: ; 5c6d0 (17:46d0)
- ld hl, Gym2CityName ; $46d9
- ld de, Gym2LeaderName ; $46e7
- jp LoadGymLeaderAndCityName
-
-Gym2CityName: ; 5c6d9 (17:46d9)
- db "CERULEAN CITY@"
-
-Gym2LeaderName: ; 5c6e7 (17:46e7)
- db "MISTY@"
-
-Func_5c6ed: ; 5c6ed (17:46ed)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_CERULEANGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CeruleanGymScriptPointers: ; 5c6f8 (17:46f8)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw CeruleanGymScript3
-
-CeruleanGymScript3: ; 5c700 (17:4700)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_5c6ed
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-
-Func_5c70d: ; 5c70d (17:470d)
- ld a, $5
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d75e
- set 7, [hl]
- ld bc, (TM_11 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d75e
- set 6, [hl]
- jr .asm_5c736
-.BagFull
- ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_5c736
- ld hl, W_OBTAINEDBADGES
- set 1, [hl]
- ld hl, $d72a
- set 1, [hl]
-
- ; deactivate gym trainers
- ld hl, $d75e
- set 2, [hl]
- set 3, [hl]
-
- jp Func_5c6ed
-
-CeruleanGymTextPointers: ; 5c74a (17:474a)
- dw CeruleanGymText1
- dw CeruleanGymText2
- dw CeruleanGymText3
- dw CeruleanGymText4
- dw CeruleanGymText5
- dw CeruleanGymText6
- dw CeruleanGymText7
-
-CeruleanGymTrainerHeaders: ; 5c758 (17:4758)
-CeruleanGymTrainerHeader0: ; 5c758 (17:4758)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d75e ; flag's byte
- dw CeruleanGymBattleText1 ; 0x47e9 TextBeforeBattle
- dw CeruleanGymAfterBattleText1 ; 0x47f3 TextAfterBattle
- dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle
- dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle
-
-CeruleanGymTrainerHeader1: ; 5c764 (17:4764)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d75e ; flag's byte
- dw CeruleanGymBattleText2 ; 0x4802 TextBeforeBattle
- dw CeruleanGymAfterBattleText2 ; 0x480c TextAfterBattle
- dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle
- dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle
-
- db $ff
-
-CeruleanGymText1: ; 5c771 (17:4771)
- db $08 ; asm
- ld a, [$d75e]
- bit 7, a
- jr z, .asm_10854 ; 0x5c777
- bit 6, a
- jr nz, .asm_37a1b ; 0x5c77b
- call z, Func_5c70d
- call DisableWaitingAfterTextDisplay
- jr .asm_95b04 ; 0x5c783
-.asm_37a1b ; 0x5c785
- ld hl, UnnamedText_5c7c3
- call PrintText
- jr .asm_95b04 ; 0x5c78b
-.asm_10854 ; 0x5c78d
- ld hl, UnnamedText_5c7be
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_5c7d8
- ld de, UnnamedText_5c7d8
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $2
- ld [$d05c], a
- xor a
- ldh [$b4], a
- ld a, $3
- ld [W_CERULEANGYMCURSCRIPT], a
-.asm_95b04 ; 0x5c7bb
- jp TextScriptEnd
-
-UnnamedText_5c7be: ; 5c7be (17:47be)
- TX_FAR _UnnamedText_5c7be
- db "@"
-
-UnnamedText_5c7c3: ; 5c7c3 (17:47c3)
- TX_FAR _UnnamedText_5c7c3
- db "@"
-
-CeruleanGymText5: ; 5c7c8 (17:47c8)
- TX_FAR _UnnamedText_5c7c8
- db "@"
-
-CeruleanGymText6: ; 5c7cd (17:47cd)
-ReceivedTM11Text: ; 5c7cd (17:47cd)
- TX_FAR _ReceivedTM11Text ; 0x98b7d
- db $0B, "@"
+INCLUDE "data/mapHeaders/ceruleangym.asm"
-CeruleanGymText7: ; 5c7d3 (17:47d3)
- TX_FAR _UnnamedText_5c7d3
- db "@"
+INCLUDE "scripts/ceruleangym.asm"
-UnnamedText_5c7d8: ; 5c7d8 (17:47d8)
- TX_FAR _UnnamedText_5c7d8 ; 0x98bb0
- db $11, $6, "@"
-
-CeruleanGymText2: ; 5c7df (17:47df)
- db $08 ; asm
- ld hl, CeruleanGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-CeruleanGymBattleText1: ; 5c7e9 (17:47e9)
- TX_FAR _CeruleanGymBattleText1
- db "@"
-
-CeruleanGymEndBattleText1: ; 5c7ee (17:47ee)
- TX_FAR _CeruleanGymEndBattleText1
- db "@"
-
-CeruleanGymAfterBattleText1: ; 5c7f3 (17:47f3)
- TX_FAR _CeruleanGymAfterBattleText1
- db "@"
-
-CeruleanGymText3: ; 5c7f8 (17:47f8)
- db $08 ; asm
- ld hl, CeruleanGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-CeruleanGymBattleText2: ; 5c802 (17:4802)
- TX_FAR _CeruleanGymBattleText2
- db "@"
-
-CeruleanGymEndBattleText2: ; 5c807 (17:4807)
- TX_FAR _CeruleanGymEndBattleText2
- db "@"
-
-CeruleanGymAfterBattleText2: ; 5c80c (17:480c)
- TX_FAR _CeruleanGymAfterBattleText2
- db "@"
-
-CeruleanGymText4: ; 5c811 (17:4811)
- db $08 ; asm
- ld a, [$d75e]
- bit 7, a
- jr nz, .asm_f80ce ; 0x5c817
- ld hl, UnnamedText_5c82a
- call PrintText
- jr .asm_18a31 ; 0x5c81f
-.asm_f80ce ; 0x5c821
- ld hl, UnnamedText_5c82f
- call PrintText
-.asm_18a31 ; 0x5c827
- jp TextScriptEnd
-
-UnnamedText_5c82a: ; 5c82a (17:482a)
- TX_FAR _UnnamedText_5c82a
- db "@"
-
-UnnamedText_5c82f: ; 5c82f (17:482f)
- TX_FAR _UnnamedText_5c82f
- db "@"
-
-CeruleanGymObject: ; 0x5c834 (size=50)
- db $3 ; border tile
-
- db $2 ; warps
- db $d, $4, $3, $ff
- db $d, $5, $3, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_BRUNETTE_GIRL, $2 + 4, $4 + 4, $ff, $d0, $41, MISTY + $C8, $1 ; trainer
- db SPRITE_LASS, $3 + 4, $2 + 4, $ff, $d3, $42, JR__TRAINER_F + $C8, $1 ; trainer
- db SPRITE_SWIMMER, $7 + 4, $8 + 4, $ff, $d2, $43, SWIMMER + $C8, $1 ; trainer
- db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP CERULEAN_GYM_WIDTH, $d, $4
- EVENT_DISP CERULEAN_GYM_WIDTH, $d, $5
+INCLUDE "data/mapObjects/ceruleangym.asm"
CeruleanGymBlocks: ; 5c866 (17:4866)
INCBIN "maps/ceruleangym.blk"
-CeruleanMart_h: ; 0x5c889 to 0x5c895 (12 bytes) (id=67)
- db MART ; tileset
- db CERULEAN_MART_HEIGHT, CERULEAN_MART_WIDTH ; dimensions (y, x)
- dw CeruleanMartBlocks, CeruleanMartTextPointers, CeruleanMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanMartObject ; objects
-
-CeruleanMartScript: ; 5c895 (17:4895)
- jp EnableAutoTextBoxDrawing
+INCLUDE "data/mapHeaders/ceruleanmart.asm"
-CeruleanMartTextPointers: ; 5c898 (17:4898)
- dw CeruleanMartText1
- dw CeruleanMartText2
- dw CeruleanMartText3
-
-CeruleanMartText2: ; 5c89e (17:489e)
- TX_FAR _CeruleanMartText2
- db "@"
+INCLUDE "scripts/ceruleanmart.asm"
-CeruleanMartText3: ; 5c8a3 (17:48a3)
- TX_FAR _CeruleanMartText3
- db "@"
+INCLUDE "data/mapObjects/ceruleanmart.asm"
-CeruleanMartObject: ; 0x5c8a8 (size=38)
- db $0 ; border tile
+INCLUDE "data/mapHeaders/lavenderpokecenter.asm"
- db $2 ; warps
- db $7, $3, $5, $ff
- db $7, $4, $5, $ff
+INCLUDE "scripts/lavenderpokecenter.asm"
- db $0 ; signs
+INCLUDE "data/mapObjects/lavenderpokecenter.asm"
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $3 + 4, $fe, $1, $2 ; person
- db SPRITE_LASS, $2 + 4, $6 + 4, $fe, $2, $3 ; person
+INCLUDE "data/mapHeaders/lavendermart.asm"
- ; warp-to
- EVENT_DISP CERULEAN_MART_WIDTH, $7, $3
- EVENT_DISP CERULEAN_MART_WIDTH, $7, $4
+INCLUDE "scripts/lavendermart.asm"
-LavenderPokecenter_h: ; 0x5c8ce to 0x5c8da (12 bytes) (id=141)
- db POKECENTER ; tileset
- db LAVENDER_POKECENTER_HEIGHT, LAVENDER_POKECENTER_WIDTH ; dimensions (y, x)
- dw LavenderPokecenterBlocks, LavenderPokecenterTextPointers, LavenderPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderPokecenterObject ; objects
+INCLUDE "data/mapObjects/lavendermart.asm"
-LavenderPokecenterScript: ; 5c8da (17:48da)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
+INCLUDE "data/mapHeaders/vermilionpokecenter.asm"
-LavenderPokecenterTextPointers: ; 5c8e0 (17:48e0)
- dw LavenderPokecenterText1
- dw LavenderPokecenterText2
- dw LavenderPokecenterText3
- dw LavenderPokecenterText4
+INCLUDE "scripts/vermilionpokecenter.asm"
-LavenderPokecenterText4: ; 5c8e8 (17:48e8)
- db $f6
+INCLUDE "data/mapObjects/vermilionpokecenter.asm"
-LavenderPokecenterText1: ; 5c8e9 (17:48e9)
- db $ff
+INCLUDE "data/mapHeaders/vermilionmart.asm"
-LavenderPokecenterText2: ; 5c8ea (17:48ea)
- TX_FAR _LavenderPokecenterText1
- db "@"
+INCLUDE "scripts/vermilionmart.asm"
-LavenderPokecenterText3: ; 5c8ef (17:48ef)
- TX_FAR _LavenderPokecenterText3
- db "@"
+INCLUDE "data/mapObjects/vermilionmart.asm"
-LavenderPokecenterObject: ; 0x5c8f4 (size=44)
- db $0 ; border tile
+INCLUDE "data/mapHeaders/vermiliongym.asm"
- db $2 ; warps
- db $7, $3, $0, $ff
- db $7, $4, $0, $ff
+INCLUDE "scripts/vermiliongym.asm"
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_GENTLEMAN, $3 + 4, $5 + 4, $ff, $ff, $2 ; person
- db SPRITE_LITTLE_GIRL, $6 + 4, $2 + 4, $fe, $1, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $3
- EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $4
-
-LavenderMart_h: ; 0x5c920 to 0x5c92c (12 bytes) (id=150)
- db MART ; tileset
- db LAVENDER_MART_HEIGHT, LAVENDER_MART_WIDTH ; dimensions (y, x)
- dw LavenderMartBlocks, LavenderMartTextPointers, LavenderMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderMartObject ; objects
-
-LavenderMartScript: ; 5c92c (17:492c)
- jp EnableAutoTextBoxDrawing
-
-LavenderMartTextPointers: ; 5c92f (17:492f)
- dw LavenderMartText1
- dw LavenderMartText2
- dw LavenderMartText3
-
-LavenderMartText2: ; 5c935 (17:4935)
- TX_FAR _LavenderMartText2
- db "@"
-
-LavenderMartText3: ; 5c93a (17:493a)
- db $08 ; asm
- ld a, [$d7e0]
- bit 7, a
- jr nz, .asm_c88d4 ; 0x5c940
- ld hl, UnnamedText_5c953
- call PrintText
- jr .asm_6d225 ; 0x5c948
-.asm_c88d4 ; 0x5c94a
- ld hl, UnnamedText_5c958
- call PrintText
-.asm_6d225 ; 0x5c950
- jp TextScriptEnd
-
-UnnamedText_5c953: ; 5c953 (17:4953)
- TX_FAR _UnnamedText_5c953
- db "@"
-
-UnnamedText_5c958: ; 5c958 (17:4958)
- TX_FAR _UnnamedText_5c958
- db "@"
-
-LavenderMartObject: ; 0x5c95d (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $3, $ff
- db $7, $4, $3, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_BALDING_GUY, $4 + 4, $3 + 4, $ff, $ff, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $7 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP LAVENDER_MART_WIDTH, $7, $3
- EVENT_DISP LAVENDER_MART_WIDTH, $7, $4
-
-VermilionPokecenter_h: ; 0x5c983 to 0x5c98f (12 bytes) (id=89)
- db POKECENTER ; tileset
- db VERMILION_POKECENTER_HEIGHT, VERMILION_POKECENTER_WIDTH ; dimensions (y, x)
- dw VermilionPokecenterBlocks, VermilionPokecenterTextPointers, VermilionPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionPokecenterObject ; objects
-
-VermilionPokecenterScript: ; 5c98f (17:498f)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-VermilionPokecenterTextPointers: ; 5c995 (17:4995)
- dw VermilionPokecenterText1
- dw VermilionPokecenterText2
- dw VermilionPokecenterText3
- dw VermilionPokecenterText4
-
-VermilionPokecenterText1: ; 5c99d (17:499d)
- db $ff
-
-VermilionPokecenterText2: ; 5c99e (17:499e)
- TX_FAR _VermilionPokecenterText1
- db "@"
-
-VermilionPokecenterText3: ; 5c9a3 (17:49a3)
- TX_FAR _VermilionPokecenterText3
- db "@"
-
-VermilionPokecenterText4: ; 5c9a8 (17:49a8)
- db $f6
-
-VermilionPokecenterObject: ; 0x5c9a9 (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $0, $ff
- db $7, $4, $0, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_FISHER, $5 + 4, $a + 4, $ff, $ff, $2 ; person
- db SPRITE_SAILOR, $4 + 4, $5 + 4, $ff, $ff, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $3
- EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $4
-
-VermilionMart_h: ; 0x5c9d5 to 0x5c9e1 (12 bytes) (id=91)
- db MART ; tileset
- db VERMILION_MART_HEIGHT, VERMILION_MART_WIDTH ; dimensions (y, x)
- dw VermilionMartBlocks, VermilionMartTextPointers, VermilionMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionMartObject ; objects
-
-VermilionMartScript: ; 5c9e1 (17:49e1)
- jp EnableAutoTextBoxDrawing
-
-VermilionMartTextPointers: ; 5c9e4 (17:49e4)
- dw VermilionMartText1
- dw VermilionMartText2
- dw VermilionMartText3
-
-VermilionMartText2: ; 5c9ea (17:49ea)
- TX_FAR _VermilionMartText2
- db "@"
-
-VermilionMartText3: ; 5c9ef (17:49ef)
- TX_FAR _VermilionMartText3
- db "@"
-
-VermilionMartObject: ; 0x5c9f4 (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $2, $ff
- db $7, $4, $2, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $5 + 4, $ff, $ff, $2 ; person
- db SPRITE_LASS, $3 + 4, $3 + 4, $fe, $2, $3 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_MART_WIDTH, $7, $3
- EVENT_DISP VERMILION_MART_WIDTH, $7, $4
-
-VermilionGym_h: ; 0x5ca1a to 0x5ca26 (12 bytes) (id=92)
- db GYM ; tileset
- db VERMILION_GYM_HEIGHT, VERMILION_GYM_WIDTH ; dimensions (y, x)
- dw VermilionGymBlocks, VermilionGymTextPointers, VermilionGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionGymObject ; objects
-
-VermilionGymScript: ; 5ca26 (17:4a26)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, VermilionGymScript_5ca4c
- pop hl
- bit 6, [hl]
- res 6, [hl]
- call nz, VermilionGymScript_5ca6d
- call EnableAutoTextBoxDrawing
- ld hl, VermilionGymTrainerHeader0
- ld de, VermilionGymScriptPointers
- ld a, [W_VERMILIONGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_VERMILIONGYMCURSCRIPT], a
- ret
-
-VermilionGymScript_5ca4c: ; 5ca4c (17:4a4c)
- ld hl, Gym3CityName ; $4a55
- ld de, Gym3LeaderName ; $4a64
- jp LoadGymLeaderAndCityName
-
-Gym3CityName: ; 5ca55 (17:4a55)
- db "VERMILION CITY@"
-
-Gym3LeaderName: ; 5ca64 (17:4a64)
- db "LT.SURGE@"
-
-VermilionGymScript_5ca6d: ; 5ca6d (17:4a6d)
- ld a, [$d773]
- bit 0, a
- jr nz, .asm_5ca78
- ld a, $24
- jr .asm_5ca7f
-.asm_5ca78
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- ld a, $5
-.asm_5ca7f
- ld [$d09f], a
- ld bc, $202
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-VermilionGymScript_5ca8a: ; 5ca8a (17:4a8a)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_VERMILIONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-VermilionGymScriptPointers: ; 5ca95 (17:4a95)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw VermilionGymScript3
-
-VermilionGymScript3: ; 5ca9d (17:4a9d)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, VermilionGymScript_5ca8a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-
-Func_5caaa: ; 5caaa (17:4aaa)
- ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d773
- set 7, [hl]
- ld bc, (TM_24 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d773
- set 6, [hl]
- jr .asm_5cad3
-.BagFull
- ld a, $8
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_5cad3
- ld hl, W_OBTAINEDBADGES
- set 2, [hl]
- ld hl, $d72a
- set 2, [hl]
-
- ; deactivate gym trainers
- ld a, [$d773]
- or %00011100
- ld [$d773], a
-
- jp VermilionGymScript_5ca8a
-
-VermilionGymTextPointers: ; 5cae8 (17:4ae8)
- dw VermilionGymText1
- dw VermilionGymText2
- dw VermilionGymText3
- dw VermilionGymText4
- dw VermilionGymText5
- dw VermilionGymText6
- dw VermilionGymText7
- dw VermilionGymText8
-
-VermilionGymTrainerHeaders: ; 5caf8 (17:4af8)
-VermilionGymTrainerHeader0: ; 5caf8 (17:4af8)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d773 ; flag's byte
- dw VermilionGymBattleText1 ; 0x4b9a TextBeforeBattle
- dw VermilionGymAfterBattleText1 ; 0x4ba4 TextAfterBattle
- dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle
- dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle
-
-VermilionGymTrainerHeader1: ; 5cb04 (17:4b04)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d773 ; flag's byte
- dw VermilionGymBattleText2 ; 0x4bb3 TextBeforeBattle
- dw VermilionGymAfterBattleText2 ; 0x4bbd TextAfterBattle
- dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle
- dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle
-
-VermilionGymTrainerHeader2: ; 5cb10 (17:4b10)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d773 ; flag's byte
- dw VermilionGymBattleText3 ; 0x4bcc TextBeforeBattle
- dw VermilionGymAfterBattleText3 ; 0x4bd6 TextAfterBattle
- dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle
- dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle
-
- db $ff
-
-VermilionGymText1: ; 5cb1d (17:4b1d)
- db $08 ; asm
- ld a, [$d773]
- bit 7, a
- jr z, .asm_7cc29 ; 0x5cb23
- bit 6, a
- jr nz, .asm_41203 ; 0x5cb27
- call z, Func_5caaa
- call DisableWaitingAfterTextDisplay
- jr .asm_23621 ; 0x5cb2f
-.asm_41203 ; 0x5cb31
- ld hl, UnnamedText_5cb72
- call PrintText
- jr .asm_23621 ; 0x5cb37
-.asm_7cc29 ; 0x5cb39
- ld hl, UnnamedText_5cb6d
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, ReceivedThunderbadgeText
- ld de, ReceivedThunderbadgeText
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- ld [$d05c], a
- xor a
- ldh [$b4], a
- ld a, $3
- ld [W_VERMILIONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_23621 ; 0x5cb6a
- jp TextScriptEnd
-
-UnnamedText_5cb6d: ; 5cb6d (17:4b6d)
- TX_FAR _UnnamedText_5cb6d
- db "@"
-
-UnnamedText_5cb72: ; 5cb72 (17:4b72)
- TX_FAR _UnnamedText_5cb72
- db "@"
-
-VermilionGymText6: ; 5cb77 (17:4b77)
- TX_FAR _UnnamedText_5cb77
- db "@"
-
-VermilionGymText7: ; 5cb7c (17:4b7c)
- TX_FAR _ReceivedTM24Text ; 0x9c0e0
- db $11
- TX_FAR _TM24ExplanationText ; 0x9c0f5
- db "@"
-
-VermilionGymText8: ; 5cb86 (17:4b86)
- TX_FAR _TM24NoRoomText
- db "@"
-
-ReceivedThunderbadgeText: ; 5cb8b (17:4b8b)
- TX_FAR _ReceivedThunderbadgeText
- db "@"
-
-VermilionGymText2: ; 5cb90 (17:4b90)
- db $08 ; asm
- ld hl, VermilionGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VermilionGymBattleText1: ; 5cb9a (17:4b9a)
- TX_FAR _VermilionGymBattleText1
- db "@"
-
-VermilionGymEndBattleText1: ; 5cb9f (17:4b9f)
- TX_FAR _VermilionGymEndBattleText1
- db "@"
-
-VermilionGymAfterBattleText1: ; 5cba4 (17:4ba4)
- TX_FAR _VermilionGymAfterBattleText1
- db "@"
-
-VermilionGymText3: ; 5cba9 (17:4ba9)
- db $08 ; asm
- ld hl, VermilionGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-VermilionGymBattleText2: ; 5cbb3 (17:4bb3)
- TX_FAR _VermilionGymBattleText2
- db "@"
-
-VermilionGymEndBattleText2: ; 5cbb8 (17:4bb8)
- TX_FAR _VermilionGymEndBattleText2
- db "@"
-
-VermilionGymAfterBattleText2: ; 5cbbd (17:4bbd)
- TX_FAR _VermilionGymAfterBattleText2
- db "@"
-
-VermilionGymText4: ; 5cbc2 (17:4bc2)
- db $08 ; asm
- ld hl, VermilionGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-VermilionGymBattleText3: ; 5cbcc (17:4bcc)
- TX_FAR _VermilionGymBattleText3
- db "@"
-
-VermilionGymEndBattleText3: ; 5cbd1 (17:4bd1)
- TX_FAR _VermilionGymEndBattleText3
- db "@"
-
-VermilionGymAfterBattleText3: ; 5cbd6 (17:4bd6)
- TX_FAR _VermilionGymAfterBattleText3
- db "@"
-
-VermilionGymText5: ; 5cbdb (17:4bdb)
- db $08 ; asm
- ld a, [$d72a]
- bit 2, a
- jr nz, .asm_13b67 ; 0x5cbe1
- ld hl, UnnamedText_5cbf4
- call PrintText
- jr .asm_c2b38 ; 0x5cbe9
-.asm_13b67 ; 0x5cbeb
- ld hl, UnnamedText_5cbf9
- call PrintText
-.asm_c2b38 ; 0x5cbf1
- jp TextScriptEnd
-
-UnnamedText_5cbf4: ; 5cbf4 (17:4bf4)
- TX_FAR _UnnamedText_5cbf4
- db "@"
-
-UnnamedText_5cbf9: ; 5cbf9 (17:4bf9)
- TX_FAR _UnnamedText_5cbf9
- db "@"
-
-VermilionGymObject: ; 0x5cbfe (size=58)
- db $3 ; border tile
-
- db $2 ; warps
- db $11, $4, $3, $ff
- db $11, $5, $3, $ff
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_ROCKER, $1 + 4, $5 + 4, $ff, $d0, $41, LT__SURGE + $C8, $1 ; trainer
- db SPRITE_GENTLEMAN, $6 + 4, $9 + 4, $ff, $d2, $42, GENTLEMAN + $C8, $3 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d2, $43, ROCKER + $C8, $1 ; trainer
- db SPRITE_SAILOR, $a + 4, $0 + 4, $ff, $d3, $44, SAILOR + $C8, $8 ; trainer
- db SPRITE_GYM_HELPER, $e + 4, $4 + 4, $ff, $d0, $5 ; person
-
- ; warp-to
- EVENT_DISP VERMILION_GYM_WIDTH, $11, $4
- EVENT_DISP VERMILION_GYM_WIDTH, $11, $5
+INCLUDE "data/mapObjects/vermiliongym.asm"
VermilionGymBlocks: ; 5cc38 (17:4c38)
INCBIN "maps/vermiliongym.blk"
-CopycatsHouse2F_h: ; 0x5cc65 to 0x5cc71 (12 bytes) (id=176)
- db REDS_HOUSE_2 ; tileset
- db COPYCATS_HOUSE_2F_HEIGHT, COPYCATS_HOUSE_2F_WIDTH ; dimensions (y, x)
- dw CopycatsHouse2FBlocks, CopycatsHouse2FTextPointers, CopycatsHouse2FScript ; blocks, texts, scripts
- db $00 ; connections
- dw CopycatsHouse2FObject ; objects
-
-CopycatsHouse2FScript: ; 5cc71 (17:4c71)
- jp EnableAutoTextBoxDrawing
-
-CopycatsHouse2FTextPointers: ; 5cc74 (17:4c74)
- dw CopycatsHouse2FText1
- dw CopycatsHouse2FText2
- dw CopycatsHouse2FText3
- dw CopycatsHouse2FText4
- dw CopycatsHouse2FText5
- dw CopycatsHouse2FText6
- dw CopycatsHouse2FText7
-
-CopycatsHouse2FText1: ; 5cc82 (17:4c82)
- db $08 ; asm
- ld a, [$d7af]
- bit 0, a
- jr nz, .asm_7ccf3 ; 0x5cc88
- ld a, $1
- ld [$cc3c], a
- ld hl, UnnamedText_5ccd4
- call PrintText
- ld b, POKE_DOLL
- call IsItemInBag
- jr z, .asm_62ecd ; 0x5cc9a
- ld hl, TM31PreReceiveText
- call PrintText
- ld bc, (TM_31 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM31Text
- call PrintText
- ld a, $33
- ldh [$db], a
- callba RemoveItemByID
- ld hl, $d7af
- set 0, [hl]
- jr .asm_62ecd ; 0x5ccc1
-.BagFull
- ld hl, TM31NoRoomText
- call PrintText
- jr .asm_62ecd ; 0x5ccc9
-.asm_7ccf3 ; 0x5cccb
- ld hl, TM31ExplanationText2
- call PrintText
-.asm_62ecd ; 0x5ccd1
- jp TextScriptEnd
-
-UnnamedText_5ccd4: ; 5ccd4 (17:4cd4)
- TX_FAR _UnnamedText_5ccd4
- db "@"
-
-TM31PreReceiveText: ; 5ccd9 (17:4cd9)
- TX_FAR _TM31PreReceiveText
- db "@"
+INCLUDE "data/mapHeaders/copycatshouse2f.asm"
-ReceivedTM31Text: ; 5ccde (17:4cde)
- TX_FAR _ReceivedTM31Text ; 0xa1675
- db $0B
-TM31ExplanationText1: ; 5cce3 (17:4ce3)
- TX_FAR _TM31ExplanationText1 ; 0xa1689
- db $d, "@"
+INCLUDE "scripts/copycatshouse2f.asm"
-TM31ExplanationText2: ; 5cce9 (17:4ce9)
- TX_FAR _TM31ExplanationText2 ; 0xa16c5
- db "@"
+INCLUDE "data/mapObjects/copycatshouse2f.asm"
-TM31NoRoomText: ; 5ccee (17:4cee)
- TX_FAR _TM31NoRoomText ; 0xa1733
- db $d, "@"
+INCLUDE "data/mapHeaders/fightingdojo.asm"
-CopycatsHouse2FText2: ; 5ccf4 (17:4cf4)
- TX_FAR _CopycatsHouse2FText2
- db "@"
-
-CopycatsHouse2FText5: ; 5ccf9 (17:4cf9)
-CopycatsHouse2FText4: ; 5ccf9 (17:4cf9)
-CopycatsHouse2FText3: ; 5ccf9 (17:4cf9)
- TX_FAR _CopycatsHouse2FText3
- db "@"
-
-CopycatsHouse2FText6: ; 5ccfe (17:4cfe)
- TX_FAR _CopycatsHouse2FText6
- db "@"
-
-CopycatsHouse2FText7: ; 5cd03 (17:4d03)
- db $08 ; asm
- ld a, [$c109]
- cp $4
- ld hl, UnnamedText_5cd1c
- jr nz, .asm_399a4 ; 0x5cd0c
- ld hl, UnnamedText_5cd17
-.asm_399a4 ; 0x5cd11
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_5cd17: ; 5cd17 (17:4d17)
- TX_FAR _UnnamedText_5cd17
- db "@"
-
-UnnamedText_5cd1c: ; 5cd1c (17:4d1c)
- TX_FAR _UnnamedText_5cd1c
- db "@"
+INCLUDE "scripts/fightingdojo.asm"
-CopycatsHouse2FObject: ; 0x5cd21 (size=48)
- db $a ; border tile
-
- db $1 ; warps
- db $1, $7, $2, COPYCATS_HOUSE_1F
-
- db $2 ; signs
- db $5, $3, $6 ; CopycatsHouse2FText6
- db $1, $0, $7 ; CopycatsHouse2FText7
-
- db $5 ; people
- db SPRITE_BRUNETTE_GIRL, $3 + 4, $4 + 4, $fe, $0, $1 ; person
- db SPRITE_BIRD, $6 + 4, $4 + 4, $fe, $2, $2 ; person
- db SPRITE_SLOWBRO, $1 + 4, $5 + 4, $ff, $d0, $3 ; person
- db SPRITE_BIRD, $0 + 4, $2 + 4, $ff, $d0, $4 ; person
- db SPRITE_CLEFAIRY, $6 + 4, $1 + 4, $ff, $d3, $5 ; person
-
- ; warp-to
- EVENT_DISP COPYCATS_HOUSE_2F_WIDTH, $1, $7 ; COPYCATS_HOUSE_1F
-
-FightingDojo_h: ; 0x5cd51 to 0x5cd5d (12 bytes) (id=177)
- db DOJO ; tileset
- db FIGHTING_DOJO_HEIGHT, FIGHTING_DOJO_WIDTH ; dimensions (y, x)
- dw FightingDojoBlocks, FightingDojoTextPointers, FightingDojoScript ; blocks, texts, scripts
- db $00 ; connections
- dw FightingDojoObject ; objects
-
-FightingDojoScript: ; 5cd5d (17:4d5d)
- call EnableAutoTextBoxDrawing
- ld hl, FightingDojoTrainerHeaders
- ld de, FightingDojoScriptPointers
- ld a, [W_FIGHTINGDOJOCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_FIGHTINGDOJOCURSCRIPT], a
- ret
-
-FightingDojoScript_5cd70: ; 5cd70 (17:4d70)
- xor a
- ld [$cd6b], a
- ld [$d642], a
- ld [$da39], a
- ret
-
-FightingDojoScriptPointers: ; 5cd7b (17:4d7b)
- dw FightingDojoScript1
- dw Func_324c
- dw EndTrainerBattle
- dw FightingDojoScript3
-
-FightingDojoScript1: ; 5cd83 (17:4d83)
- ld a, [$d7b1]
- bit 0, a
- ret nz
- call CheckFightingMapTrainers
- ld a, [wTrainerHeaderFlagBit]
- and a
- ret nz
- ld a, [$d7b1]
- bit 1, a
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [$cf0d], a
- ld a, [W_YCOORD]
- cp $3
- ret nz
- ld a, [W_XCOORD]
- cp $4
- ret nz
- ld a, $1
- ld [$cf0d], a
- ld a, $1
- ld [$d528], a
- ld a, $1
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
- call Func_34a6
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ret
-
-FightingDojoScript3: ; 5cdc6 (17:4dc6)
- ld a, [$d057]
- cp $ff
- jp z, FightingDojoScript_5cd70
- ld a, [$cf0d]
- and a
- jr z, .asm_5cde4
- ld a, $1
- ld [$d528], a
- ld a, $1
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
- call Func_34a6
-
-.asm_5cde4
- ld a, $f0
- ld [$cd6b], a
- ld a, [$d7b1]
- or $3e
- ld [$d7b1], a
- ld a, $8
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [$cd6b], a
- ld [$d642], a
- ld [$da39], a
- ret
-
-FightingDojoTextPointers: ; 5ce03 (17:4e03)
- dw FightingDojoText1
- dw FightingDojoText2
- dw FightingDojoText3
- dw FightingDojoText4
- dw FightingDojoText5
- dw FightingDojoText6
- dw FightingDojoText7
- dw FightingDojoText8
-
-FightingDojoTrainerHeaders: ; 5ce13 (17:4e13)
-FightingDojoTrainerHeader0: ; 5ce13 (17:4e13)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7b1 ; flag's byte
- dw FightingDojoBattleText1 ; 0x4eac TextBeforeBattle
- dw FightingDojoAfterBattleText1 ; 0x4eb6 TextAfterBattle
- dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle
- dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle
-
-FightingDojoTrainerHeader1: ; 5ce1f (17:4e1f)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7b1 ; flag's byte
- dw FightingDojoBattleText2 ; 0x4ec5 TextBeforeBattle
- dw FightingDojoAfterBattleText2 ; 0x4ecf TextAfterBattle
- dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle
- dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle
-
-FightingDojoTrainerHeader2: ; 5ce2b (17:4e2b)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b1 ; flag's byte
- dw FightingDojoBattleText3 ; 0x4ede TextBeforeBattle
- dw FightingDojoAfterBattleText3 ; 0x4ee8 TextAfterBattle
- dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle
- dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle
-
-FightingDojoTrainerHeader3: ; 5ce37 (17:4e37)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b1 ; flag's byte
- dw FightingDojoBattleText4 ; 0x4ef7 TextBeforeBattle
- dw FightingDojoAfterBattleText4 ; 0x4f01 TextAfterBattle
- dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle
- dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle
-
- db $ff
-
-FightingDojoText1: ; 5ce44 (17:4e44)
- db $08 ; asm
- ld a, [$d7b1]
- bit 0, a
- jp nz, .continue1
- bit 1, a
- jp nz, .continue2
- ld hl, UnnamedText_5ce8e
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_5ce93
- ld de, UnnamedText_5ce93
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- ld [W_FIGHTINGDOJOCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jr .asm_9dba4 ; 0x5ce7b
-.continue1 ; 0x5ce7d
- ld hl, UnnamedText_5ce9d
- call PrintText
- jr .asm_9dba4 ; 0x5ce83
-.continue2 ; 0x5ce85f
- ld hl, FightingDojoText8
- call PrintText
-.asm_9dba4 ; 0x5ce8b
- jp TextScriptEnd
-
-UnnamedText_5ce8e: ; 5ce8e (17:4e8e)
- TX_FAR _UnnamedText_5ce8e
- db "@"
-
-UnnamedText_5ce93: ; 5ce93 (17:4e93)
- TX_FAR _UnnamedText_5ce93
- db "@"
-
-FightingDojoText8: ; 5ce98 (17:4e98)
- TX_FAR _UnnamedText_5ce98
- db "@"
-
-UnnamedText_5ce9d: ; 5ce9d (17:4e9d)
- TX_FAR _UnnamedText_5ce9d
- db "@"
-
-FightingDojoText2: ; 5cea2 (17:4ea2)
- db $08 ; asm
- ld hl, FightingDojoTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText1: ; 5ceac (17:4eac)
- TX_FAR _FightingDojoBattleText1
- db "@"
-
-FightingDojoEndBattleText1: ; 5ceb1 (17:4eb1)
- TX_FAR _FightingDojoEndBattleText1
- db "@"
-
-FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6)
- TX_FAR _FightingDojoAfterBattleText1
- db "@"
-
-FightingDojoText3: ; 5cebb (17:4ebb)
- db $08 ; asm
- ld hl, FightingDojoTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText2: ; 5cec5 (17:4ec5)
- TX_FAR _FightingDojoBattleText2
- db "@"
-
-FightingDojoEndBattleText2: ; 5ceca (17:4eca)
- TX_FAR _FightingDojoEndBattleText2
- db "@"
-
-FightingDojoAfterBattleText2: ; 5cecf (17:4ecf)
- TX_FAR _FightingDojoAfterBattleText2
- db "@"
-
-FightingDojoText4: ; 5ced4 (17:4ed4)
- db $08 ; asm
- ld hl, FightingDojoTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText3: ; 5cede (17:4ede)
- TX_FAR _FightingDojoBattleText3
- db "@"
-
-FightingDojoEndBattleText3: ; 5cee3 (17:4ee3)
- TX_FAR _FightingDojoEndBattleText3
- db "@"
-
-FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8)
- TX_FAR _FightingDojoAfterBattleText3
- db "@"
-
-FightingDojoText5: ; 5ceed (17:4eed)
- db $08 ; asm
- ld hl, FightingDojoTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText4: ; 5cef7 (17:4ef7)
- TX_FAR _FightingDojoBattleText4
- db "@"
-
-FightingDojoEndBattleText4: ; 5cefc (17:4efc)
- TX_FAR _FightingDojoEndBattleText4
- db "@"
-
-FightingDojoAfterBattleText4: ; 5cf01 (17:4f01)
- TX_FAR _FightingDojoAfterBattleText4
- db "@"
-
-FightingDojoText6: ; 5cf06 (17:4f06)
-; Hitmonlee Poké Ball
- db $08 ; asm
- ld a, [$d7b1]
- and %11000000
- jr z, .GetMon
- ld hl, OtherHitmonText
- call PrintText
- jr .done
-.GetMon
- ld a, HITMONLEE
- call DisplayPokedex
- ld hl, WantHitmonleeText
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .done
- ld a, [$cf91]
- ld b, a
- ld c, 30
- call GivePokemon
- jr nc, .done
-
- ; once Poké Ball is taken, hide sprite
- ld a, $4a
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld hl, $d7b1
- set 6, [hl]
- set 0, [hl]
-.done
- jp TextScriptEnd
-
-WantHitmonleeText: ; 5cf49 (17:4f49)
- TX_FAR _WantHitmonleeText
- db "@"
-
-FightingDojoText7: ; 5cf4e (17:4f4e)
-; Hitmonchan Poké Ball
- db $08 ; asm
- ld a, [$d7b1]
- and %11000000
- jr z, .GetMon
- ld hl, OtherHitmonText
- call PrintText
- jr .done
-.GetMon
- ld a, HITMONCHAN
- call DisplayPokedex
- ld hl, WantHitmonchanText
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .done
- ld a, [$cf91]
- ld b, a
- ld c,30
- call GivePokemon
- jr nc, .done
- ld hl, $d7b1
- set 7, [hl]
- set 0, [hl]
-
- ; once Poké Ball is taken, hide sprite
- ld a, $4b
- ld [$cc4d], a
- ld a, $11
- call Predef
-.done
- jp TextScriptEnd
-
-WantHitmonchanText: ; 5cf91 (17:4f91)
- TX_FAR _WantHitmonchanText
- db "@"
-
-OtherHitmonText: ; 5cf96 (17:4f96)
- TX_FAR _OtherHitmonText
- db "@"
-
-FightingDojoObject: ; 0x5cf9b (size=72)
- db $3 ; border tile
-
- db $2 ; warps
- db $b, $4, $1, $ff
- db $b, $5, $1, $ff
-
- db $0 ; signs
-
- db $7 ; people
- db SPRITE_HIKER, $3 + 4, $5 + 4, $ff, $d0, $41, BLACKBELT + $C8, $1 ; trainer
- db SPRITE_HIKER, $4 + 4, $3 + 4, $ff, $d3, $42, BLACKBELT + $C8, $2 ; trainer
- db SPRITE_HIKER, $6 + 4, $3 + 4, $ff, $d3, $43, BLACKBELT + $C8, $3 ; trainer
- db SPRITE_HIKER, $5 + 4, $5 + 4, $ff, $d2, $44, BLACKBELT + $C8, $4 ; trainer
- db SPRITE_HIKER, $7 + 4, $5 + 4, $ff, $d2, $45, BLACKBELT + $C8, $5 ; trainer
- db SPRITE_BALL, $1 + 4, $4 + 4, $ff, $ff, $6 ; person
- db SPRITE_BALL, $1 + 4, $5 + 4, $ff, $ff, $7 ; person
-
- ; warp-to
- EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $4
- EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $5
+INCLUDE "data/mapObjects/fightingdojo.asm"
FightingDojoBlocks: ; 5cfe3 (17:4fe3)
INCBIN "maps/fightingdojo.blk"
-SaffronGym_h: ; 0x5d001 to 0x5d00d (12 bytes) (id=178)
- db FACILITY ; tileset
- db SAFFRON_GYM_HEIGHT, SAFFRON_GYM_WIDTH ; dimensions (y, x)
- dw SaffronGymBlocks, SaffronGymTextPointers, SaffronGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronGymObject ; objects
-
-SaffronGymScript: ; 5d00d (17:500d)
- ld hl, $d126
- bit 6, [hl]
- res 6, [hl]
- call nz, .extra
- call EnableAutoTextBoxDrawing
- ld hl, SaffronGymTrainerHeader0
- ld de, SaffronGymScriptPointers
- ld a, [W_SAFFRONGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SAFFRONGYMCURSCRIPT], a
- ret
-
-.extra
- ld hl, Gym6CityName ; $5033
- ld de, Gym6LeaderName ; $5040
- jp LoadGymLeaderAndCityName
-
-Gym6CityName: ; 5d033 (17:5033)
- db "SAFFRON CITY@"
-
-Gym6LeaderName: ; 5d040 (17:5040)
- db "SABRINA@"
-
-Func_5d048: ; 5d048 (17:5048)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_SAFFRONGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-SaffronGymScriptPointers: ; 5d053 (17:5053)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw SaffronGymScript3
-
-SaffronGymScript3: ; 5d05b (17:505b)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_5d048
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-
-Func_5d068: ; 5d068 (17:5068)
- ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d7b3
- set 1, [hl]
- ld bc, (TM_46 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d7b3
- set 0, [hl]
- jr .asm_5d091
-.BagFull
- ld a, $c
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_5d091
- ld hl, W_OBTAINEDBADGES
- set 5, [hl]
- ld hl, $d72a
- set 5, [hl]
-
- ; deactivate gym trainers
- ld a, [$d7b3]
- or %11111100
- ld [$d7b3], a
- ld hl, $d7b4
- set 0, [hl]
-
- jp Func_5d048
-
-SaffronGymTextPointers: ; 5d0ab (17:50ab)
- dw SaffronGymText1
- dw SaffronGymText2
- dw SaffronGymText3
- dw SaffronGymText4
- dw SaffronGymText5
- dw SaffronGymText6
- dw SaffronGymText7
- dw SaffronGymText8
- dw SaffronGymText9
- dw SaffronGymText10
- dw SaffronGymText11
- dw SaffronGymText12
-
-SaffronGymTrainerHeaders: ; 5d0c3 (17:50c3)
-SaffronGymTrainerHeader0: ; 5d0c3 (17:50c3)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText1 ; 0x51f0 TextBeforeBattle
- dw SaffronGymAfterBattleText1 ; 0x51fa TextAfterBattle
- dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle
- dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle
-
-SaffronGymTrainerHeader1: ; 5d0cf (17:50cf)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText2 ; 0x51ff TextBeforeBattle
- dw SaffronGymAfterBattleText2 ; 0x5209 TextAfterBattle
- dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle
- dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle
-
-SaffronGymTrainerHeader2: ; 5d0db (17:50db)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText3 ; 0x520e TextBeforeBattle
- dw SaffronGymAfterBattleText3 ; 0x5218 TextAfterBattle
- dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle
- dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle
-
-SaffronGymTrainerHeader3: ; 5d0e7 (17:50e7)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText4 ; 0x521d TextBeforeBattle
- dw SaffronGymAfterBattleText4 ; 0x5227 TextAfterBattle
- dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle
- dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle
-
-SaffronGymTrainerHeader4: ; 5d0f3 (17:50f3)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText5 ; 0x522c TextBeforeBattle
- dw SaffronGymAfterBattleText5 ; 0x5236 TextAfterBattle
- dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle
- dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle
-
-SaffronGymTrainerHeader5: ; 5d0ff (17:50ff)
- db $7 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText6 ; 0x523b TextBeforeBattle
- dw SaffronGymAfterBattleText6 ; 0x5245 TextAfterBattle
- dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle
- dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle
-
-SaffronGymTrainerHeader6: ; 5d10b (17:510b)
- db $8 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7b3 ; flag's byte
- dw SaffronGymBattleText7 ; 0x524a TextBeforeBattle
- dw SaffronGymAfterBattleText7 ; 0x5254 TextAfterBattle
- dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle
- dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle
-
- db $ff
-
-SaffronGymText1: ; 5d118 (17:5118)
- db $08 ; asm
- ld a, [$d7b3]
- bit 1, a
- jr z, .asm_e3544 ; 0x5d11e
- bit 0, a
- jr nz, .asm_8d2f6 ; 0x5d122
- call z, Func_5d068
- call DisableWaitingAfterTextDisplay
- jr .asm_34c2c ; 0x5d12a
-.asm_8d2f6 ; 0x5d12c
- ld hl, UnnamedText_5d16e
- call PrintText
- jr .asm_34c2c ; 0x5d132
-.asm_e3544 ; 0x5d134
- ld hl, UnnamedText_5d162
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_5d167
- ld de, UnnamedText_5d167
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $6
- ld [$d05c], a
- ld a, $3
- ld [W_SAFFRONGYMCURSCRIPT], a
-.asm_34c2c ; 0x5d15f
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/saffrongym.asm"
-UnnamedText_5d162: ; 5d162 (17:5162)
- TX_FAR _UnnamedText_5d162
- db "@"
+INCLUDE "scripts/saffrongym.asm"
-UnnamedText_5d167: ; 5d167 (17:5167)
- TX_FAR _UnnamedText_5d167 ; 0xa1c73
- db $11 ; play same sound as red giving oak parcel
- db $6 ; wait for keypress
- db "@"
-
-UnnamedText_5d16e: ; 5d16e (17:516e)
- TX_FAR _UnnamedText_5d16e
- db "@"
-
-SaffronGymText10: ; 5d173 (17:5173)
- TX_FAR _UnnamedText_5d173
- db "@"
-
-SaffronGymText11: ; 5d178 (17:5178)
- TX_FAR ReceivedTM46Text
- db $b
- TX_FAR _TM46ExplanationText
- db "@"
-
-SaffronGymText12: ; 5d182 (17:5182)
- TX_FAR _TM46NoRoomText ; pack full
- db "@"
-
-SaffronGymText2: ; 5d187 (17:5187)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText3: ; 5d191 (17:5191)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText4: ; 5d19b (17:519b)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText5: ; 5d1a5 (17:51a5)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText6: ; 5d1af (17:51af)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText7: ; 5d1b9 (17:51b9)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText8: ; 5d1c3 (17:51c3)
- db $08 ; asm
- ld hl, SaffronGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText9: ; 5d1cd (17:51cd)
- db $08 ; asm
- ld a, [$d7b3]
- bit 1, a
- jr nz, .asm_13f3c ; 0x5d1d3
- ld hl, UnnamedText_5d1e6
- call PrintText
- jr .asm_e9907 ; 0x5d1db
-.asm_13f3c ; 0x5d1dd
- ld hl, UnnamedText_5d1eb
- call PrintText
-.asm_e9907 ; 0x5d1e3
- jp TextScriptEnd
-
-UnnamedText_5d1e6: ; 5d1e6 (17:51e6)
- TX_FAR _UnnamedText_5d1e6
- db "@"
-
-UnnamedText_5d1eb: ; 5d1eb (17:51eb)
- TX_FAR _UnnamedText_5d1eb
- db "@"
-
-SaffronGymBattleText1: ; 5d1f0 (17:51f0)
- TX_FAR _SaffronGymBattleText1
- db "@"
-
-SaffronGymEndBattleText1: ; 5d1f5 (17:51f5)
- TX_FAR _SaffronGymEndBattleText1
- db "@"
-
-SaffronGymAfterBattleText1: ; 5d1fa (17:51fa)
- TX_FAR _SaffronGymAfterBattleText1
- db "@"
-
-SaffronGymBattleText2: ; 5d1ff (17:51ff)
- TX_FAR _SaffronGymBattleText2
- db "@"
-
-SaffronGymEndBattleText2: ; 5d204 (17:5204)
- TX_FAR _SaffronGymEndBattleText2
- db "@"
-
-SaffronGymAfterBattleText2: ; 5d209 (17:5209)
- TX_FAR _SaffronGymAfterBattleText2
- db "@"
-
-SaffronGymBattleText3: ; 5d20e (17:520e)
- TX_FAR _SaffronGymBattleText3
- db "@"
-
-SaffronGymEndBattleText3: ; 5d213 (17:5213)
- TX_FAR _SaffronGymEndBattleText3
- db "@"
-
-SaffronGymAfterBattleText3: ; 5d218 (17:5218)
- TX_FAR _SaffronGymAfterBattleText3
- db "@"
-
-SaffronGymBattleText4: ; 5d21d (17:521d)
- TX_FAR _SaffronGymBattleText4
- db "@"
-
-SaffronGymEndBattleText4: ; 5d222 (17:5222)
- TX_FAR _SaffronGymEndBattleText4
- db "@"
-
-SaffronGymAfterBattleText4: ; 5d227 (17:5227)
- TX_FAR _SaffronGymAfterBattleText4
- db "@"
-
-SaffronGymBattleText5: ; 5d22c (17:522c)
- TX_FAR _SaffronGymBattleText5
- db "@"
-
-SaffronGymEndBattleText5: ; 5d231 (17:5231)
- TX_FAR _SaffronGymEndBattleText5
- db "@"
-
-SaffronGymAfterBattleText5: ; 5d236 (17:5236)
- TX_FAR _SaffronGymAfterBattleText5
- db "@"
-
-SaffronGymBattleText6: ; 5d23b (17:523b)
- TX_FAR _SaffronGymBattleText6
- db "@"
-
-SaffronGymEndBattleText6: ; 5d240 (17:5240)
- TX_FAR _SaffronGymEndBattleText6
- db "@"
-
-SaffronGymAfterBattleText6: ; 5d245 (17:5245)
- TX_FAR _SaffronGymAfterBattleText6
- db "@"
-
-SaffronGymBattleText7: ; 5d24a (17:524a)
- TX_FAR _SaffronGymBattleText7
- db "@"
-
-SaffronGymEndBattleText7: ; 5d24f (17:524f)
- TX_FAR _SaffronGymEndBattleText7
- db "@"
-
-SaffronGymAfterBattleText7: ; 5d254 (17:5254)
- TX_FAR _SaffronGymAfterBattleText7
- db "@"
-
-SaffronGymObject: ; 0x5d259 (size=330)
- db $2e ; border tile
-
- db $20 ; warps
- db $11, $8, $2, $ff
- db $11, $9, $2, $ff
- db $3, $1, $16, SAFFRON_GYM
- db $3, $5, $f, SAFFRON_GYM
- db $5, $1, $12, SAFFRON_GYM
- db $5, $5, $8, SAFFRON_GYM
- db $9, $1, $1b, SAFFRON_GYM
- db $9, $5, $10, SAFFRON_GYM
- db $b, $1, $5, SAFFRON_GYM
- db $b, $5, $d, SAFFRON_GYM
- db $f, $1, $17, SAFFRON_GYM
- db $f, $5, $1e, SAFFRON_GYM
- db $11, $1, $11, SAFFRON_GYM
- db $11, $5, $9, SAFFRON_GYM
- db $3, $9, $1a, SAFFRON_GYM
- db $3, $b, $3, SAFFRON_GYM
- db $5, $9, $7, SAFFRON_GYM
- db $5, $b, $c, SAFFRON_GYM
- db $b, $b, $4, SAFFRON_GYM
- db $f, $b, $1f, SAFFRON_GYM
- db $3, $f, $18, SAFFRON_GYM
- db $3, $13, $1c, SAFFRON_GYM
- db $5, $f, $2, SAFFRON_GYM
- db $5, $13, $a, SAFFRON_GYM
- db $9, $f, $14, SAFFRON_GYM
- db $9, $13, $1d, SAFFRON_GYM
- db $b, $f, $e, SAFFRON_GYM
- db $b, $13, $6, SAFFRON_GYM
- db $f, $f, $15, SAFFRON_GYM
- db $f, $13, $19, SAFFRON_GYM
- db $11, $f, $b, SAFFRON_GYM
- db $11, $13, $13, SAFFRON_GYM
-
- db $0 ; signs
-
- db $9 ; people
- db SPRITE_GIRL, $8 + 4, $9 + 4, $ff, $d0, $41, SABRINA + $C8, $1 ; trainer
- db SPRITE_MEDIUM, $1 + 4, $a + 4, $ff, $d0, $42, CHANNELER + $C8, $16 ; trainer
- db SPRITE_BUG_CATCHER, $1 + 4, $11 + 4, $ff, $d0, $43, PSYCHIC_TR + $C8, $1 ; trainer
- db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d0, $44, CHANNELER + $C8, $17 ; trainer
- db SPRITE_BUG_CATCHER, $7 + 4, $11 + 4, $ff, $d0, $45, PSYCHIC_TR + $C8, $2 ; trainer
- db SPRITE_MEDIUM, $d + 4, $3 + 4, $ff, $d0, $46, CHANNELER + $C8, $18 ; trainer
- db SPRITE_BUG_CATCHER, $d + 4, $11 + 4, $ff, $d0, $47, PSYCHIC_TR + $C8, $3 ; trainer
- db SPRITE_BUG_CATCHER, $1 + 4, $3 + 4, $ff, $d0, $48, PSYCHIC_TR + $C8, $4 ; trainer
- db SPRITE_GYM_HELPER, $f + 4, $a + 4, $ff, $d0, $9 ; person
-
- ; warp-to
- EVENT_DISP SAFFRON_GYM_WIDTH, $11, $8
- EVENT_DISP SAFFRON_GYM_WIDTH, $11, $9
- EVENT_DISP SAFFRON_GYM_WIDTH, $3, $1 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $3, $5 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $5, $1 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $5, $5 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $9, $1 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $9, $5 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $b, $1 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $b, $5 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $f, $1 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $f, $5 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $11, $1 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $11, $5 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $3, $9 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $3, $b ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $5, $9 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $5, $b ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $b, $b ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $f, $b ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $3, $f ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $3, $13 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $5, $f ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $5, $13 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $9, $f ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $9, $13 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $b, $f ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $b, $13 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $f, $f ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $f, $13 ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $11, $f ; SAFFRON_GYM
- EVENT_DISP SAFFRON_GYM_WIDTH, $11, $13 ; SAFFRON_GYM
+INCLUDE "data/mapObjects/saffrongym.asm"
SaffronGymBlocks: ; 5d3a3 (17:53a3)
INCBIN "maps/saffrongym.blk"
-SaffronMart_h: ; 0x5d3fd to 0x5d409 (12 bytes) (id=180)
- db MART ; tileset
- db SAFFRON_MART_HEIGHT, SAFFRON_MART_WIDTH ; dimensions (y, x)
- dw SaffronMartBlocks, SaffronMartTextPointers, SaffronMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronMartObject ; objects
-
-SaffronMartScript: ; 5d409 (17:5409)
- jp EnableAutoTextBoxDrawing
-
-SaffronMartTextPointers: ; 5d40c (17:540c)
- dw SaffronMartText1
- dw SaffronMartText2
- dw SaffronMartText3
-
-SaffronMartText2: ; 5d412 (17:5412)
- TX_FAR _SaffronMartText2
- db "@"
-
-SaffronMartText3: ; 5d417 (17:5417)
- TX_FAR _SaffronMartText3
- db "@"
-
-SaffronMartObject: ; 0x5d41c (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $4, $ff
- db $7, $4, $4, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $ff, $2 ; person
- db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $0, $3 ; person
-
- ; warp-to
- EVENT_DISP SAFFRON_MART_WIDTH, $7, $3
- EVENT_DISP SAFFRON_MART_WIDTH, $7, $4
-
-SilphCo1_h: ; 0x5d442 to 0x5d44e (12 bytes) (id=181)
- db FACILITY ; tileset
- db SILPH_CO_1F_HEIGHT, SILPH_CO_1F_WIDTH ; dimensions (y, x)
- dw SilphCo1Blocks, SilphCo1TextPointers, SilphCo1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo1Object ; objects
-
-SilphCo1Script: ; 5d44e (17:544e)
- call EnableAutoTextBoxDrawing
- ld a, [$d838]
- bit 7, a
- ret z
- ld hl, $d7b9
- bit 7, [hl]
- set 7, [hl]
- ret nz
- ld a, $4c
- ld [$cc4d], a
- ld a, $15
- jp Predef
-
-SilphCo1TextPointers: ; 5d469 (17:5469)
- dw SilphCo1Text1
-
-SilphCo1Text1: ; 5d46b (17:546b)
- TX_FAR _SilphCo1Text1
- db "@"
+INCLUDE "data/mapHeaders/saffronmart.asm"
-SilphCo1Object: ; 0x5d470 (size=50)
- db $2e ; border tile
+INCLUDE "scripts/saffronmart.asm"
- db $5 ; warps
- db $11, $a, $5, $ff
- db $11, $b, $5, $ff
- db $0, $1a, $0, SILPH_CO_2F
- db $0, $14, $0, SILPH_CO_ELEVATOR
- db $a, $10, $6, SILPH_CO_3F
+INCLUDE "data/mapObjects/saffronmart.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/silphco1.asm"
- db $1 ; people
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $4 + 4, $ff, $d0, $1 ; person
+INCLUDE "scripts/silphco1.asm"
- ; warp-to
- EVENT_DISP SILPH_CO_1F_WIDTH, $11, $a
- EVENT_DISP SILPH_CO_1F_WIDTH, $11, $b
- EVENT_DISP SILPH_CO_1F_WIDTH, $0, $1a ; SILPH_CO_2F
- EVENT_DISP SILPH_CO_1F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_1F_WIDTH, $a, $10 ; SILPH_CO_3F
+INCLUDE "data/mapObjects/silphco1.asm"
SilphCo1Blocks: ; 5d4a2 (17:54a2)
INCBIN "maps/silphco1.blk"
-SaffronPokecenter_h: ; 0x5d529 to 0x5d535 (12 bytes) (id=182)
- db POKECENTER ; tileset
- db SAFFRON_POKECENTER_HEIGHT, SAFFRON_POKECENTER_WIDTH ; dimensions (y, x)
- dw SaffronPokecenterBlocks, SaffronPokecenterTextPointers, SaffronPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronPokecenterObject ; objects
-
-SaffronPokecenterScript: ; 5d535 (17:5535)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-SaffronPokecenterTextPointers: ; 5d53b (17:553b)
- dw SaffronPokecenterText1
- dw SaffronPokecenterText2
- dw SaffronPokecenterText3
- dw SaffronPokecenterText4
-
-SaffronPokecenterText1: ; 5d543 (17:5543)
- db $ff
-
-SaffronPokecenterText2: ; 5d544 (17:5544)
- TX_FAR _SaffronPokecenterText1
- db "@"
-
-SaffronPokecenterText3: ; 5d549 (17:5549)
- TX_FAR _SaffronPokecenterText3
- db "@"
-
-SaffronPokecenterText4: ; 5d54e (17:554e)
- db $f6
-
-SaffronPokecenterObject: ; 0x5d54f (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $6, $ff
- db $7, $4, $6, $ff
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $ff, $2 ; person
- db SPRITE_GENTLEMAN, $3 + 4, $8 + 4, $ff, $d0, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $3
- EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $4
-
-ViridianForestExit_h: ; 0x5d57b to 0x5d587 (12 bytes) (id=47)
- db FOREST_GATE ; tileset
- db VIRIDIAN_FOREST_EXIT_HEIGHT, VIRIDIAN_FOREST_EXIT_WIDTH ; dimensions (y, x)
- dw ViridianForestExitBlocks, ViridianForestExitTextPointers, ViridianForestExitScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianForestExitObject ; objects
-
-ViridianForestExitScript: ; 5d587 (17:5587)
- jp EnableAutoTextBoxDrawing
-
-ViridianForestExitTextPointers: ; 5d58a (17:558a)
- dw ViridianForestExitText1
- dw ViridianForestExitText2
-
-ViridianForestExitText1: ; 5d58e (17:558e)
- TX_FAR _ViridianForestExitText1
- db "@"
-
-ViridianForestExitText2: ; 5d593 (17:5593)
- TX_FAR _ViridianForestExitText2
- db "@"
-
-ViridianForestExitObject: ; 0x5d598 (size=48)
- db $a ; border tile
-
- db $4 ; warps
- db $0, $4, $1, $ff
- db $0, $5, $1, $ff
- db $7, $4, $0, VIRIDIAN_FOREST
- db $7, $5, $0, VIRIDIAN_FOREST
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $ff, $1 ; person
- db SPRITE_OLD_PERSON, $5 + 4, $2 + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $4
- EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $5
- EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $4 ; VIRIDIAN_FOREST
- EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $5 ; VIRIDIAN_FOREST
-
-Route2Gate_h: ; 0x5d5c8 to 0x5d5d4 (12 bytes) (id=49)
- db GATE ; tileset
- db ROUTE_2_GATE_HEIGHT, ROUTE_2_GATE_WIDTH ; dimensions (y, x)
- dw Route2GateBlocks, Route2GateTextPointers, Route2GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route2GateObject ; objects
-
-Route2GateScript: ; 5d5d4 (17:55d4)
- jp EnableAutoTextBoxDrawing
-
-Route2GateTextPointers: ; 5d5d7 (17:55d7)
- dw Route2GateText1
- dw Route2GateText2
-
-Route2GateText1: ; 5d5db (17:55db)
- db $08 ; asm
- ld a, [$d7c2]
- bit 0, a
- jr nz, .asm_6592c ; 0x5d5e1
- ld a, $a
- ldh [$db], a
- ld a, $c8
- ldh [$dc], a
- ld [$d11e], a
- call GetItemName ; $2fcf
- ld hl, $cd6d
- ld de, $cc5b
- ld bc, $000d
- call CopyData
- ld a, $62
- call Predef
- ldh a, [$db]
- cp $1
- jr nz, .asm_ad646 ; 0x5d606
- ld hl, $d7c2
- set 0, [hl]
-.asm_6592c ; 0x5d60d
- ld hl, UnnamedText_5d616
- call PrintText
-.asm_ad646 ; 0x5d613
- jp TextScriptEnd
-
-UnnamedText_5d616: ; 5d616 (17:5616)
- TX_FAR _UnnamedText_5d616
- db "@"
-
-Route2GateText2: ; 5d61b (17:561b)
- TX_FAR _Route2GateText2
- db "@"
-
-Route2GateObject: ; 0x5d620 (size=48)
- db $a ; border tile
-
- db $4 ; warps
- db $0, $4, $3, $ff
- db $0, $5, $3, $ff
- db $7, $4, $4, $ff
- db $7, $5, $4, $ff
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $ff, $d2, $1 ; person
- db SPRITE_BUG_CATCHER, $4 + 4, $5 + 4, $fe, $2, $2 ; person
-
- ; warp-to
- EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $4
- EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $5
- EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $4
- EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $5
-
-ViridianForestEntrance_h: ; 0x5d650 to 0x5d65c (12 bytes) (id=50)
- db FOREST_GATE ; tileset
- db VIRIDIAN_FOREST_ENTRANCE_HEIGHT, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; dimensions (y, x)
- dw ViridianForestEntranceBlocks, ViridianForestEntranceTextPointers, ViridianForestEntranceScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianForestEntranceObject ; objects
-
-ViridianForestEntranceScript: ; 5d65c (17:565c)
- jp EnableAutoTextBoxDrawing
-
-ViridianForestEntranceTextPointers: ; 5d65f (17:565f)
- dw ViridianForestEntranceText1
- dw ViridianForestEntranceText2
-
-ViridianForestEntranceText1: ; 5d663 (17:5663)
- TX_FAR _ViridianForestEntranceText1
- db "@"
-
-ViridianForestEntranceText2: ; 5d668 (17:5668)
- TX_FAR _ViridianForestEntranceText2
- db "@"
-
-ViridianForestEntranceObject: ; 0x5d66d (size=48)
- db $a ; border tile
-
- db $4 ; warps
- db $0, $4, $3, VIRIDIAN_FOREST
- db $0, $5, $4, VIRIDIAN_FOREST
- db $7, $4, $5, $ff
- db $7, $5, $5, $ff
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_GIRL, $4 + 4, $8 + 4, $ff, $d2, $1 ; person
- db SPRITE_LITTLE_GIRL, $4 + 4, $2 + 4, $fe, $1, $2 ; person
-
- ; warp-to
- EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $4 ; VIRIDIAN_FOREST
- EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $5 ; VIRIDIAN_FOREST
- EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $4
- EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $5
-
-UndergroundTunnelEntranceRoute5_h: ; 0x5d69d to 0x5d6a9 (12 bytes) (id=71)
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_5_HEIGHT, PATH_ENTRANCE_ROUTE_5_WIDTH ; dimensions (y, x)
- dw UndergroundTunnelEntranceRoute5Blocks, UndergroundTunnelEntranceRoute5TextPointers, UndergroundTunnelEntranceRoute5Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundTunnelEntranceRoute5Object ; objects
-
-UndergroundTunnelEntranceRoute5Script: ; 5d6a9 (17:56a9)
- ld a, ROUTE_5
- ld [wLastMap], a
- ret
-
-UndergroundTunnelEntranceRoute5_5d6af: ; 5d6af (17:56af)
- db $50
-
-UndergroundTunnelEntranceRoute5TextPointers: ; 5d6b0 (17:56b0)
- dw UndergroundTunnelEntranceRoute5Text1
-
-UndergroundTunnelEntranceRoute5Text1: ; 5d6b2 (17:56b2)
- db $08 ; asm
- ld a, $9
- ld [wWhichTrade], a
- ld a, $54
- call Predef
- ld hl, UndergroundTunnelEntranceRoute5_5d6af
- ret
-
-UndergroundTunnelEntranceRoute5Object: ; 0x5d6c1 (size=34)
- db $a ; border tile
-
- db $3 ; warps
- db $7, $3, $3, $ff
- db $7, $4, $3, $ff
- db $4, $4, $0, UNDERGROUND_PATH_NS
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_LITTLE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $3
- EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $4
- EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS
-
-UndergroundTunnelEntranceRoute6_h: ; 0x5d6e3 to 0x5d6ef (12 bytes) (id=74)
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_6_HEIGHT, PATH_ENTRANCE_ROUTE_6_WIDTH ; dimensions (y, x)
- dw UndergroundTunnelEntranceRoute6Blocks, UndergroundTunnelEntranceRoute6TextPointers, UndergroundTunnelEntranceRoute6Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundTunnelEntranceRoute6Object ; objects
-
-UndergroundTunnelEntranceRoute6Script: ; 5d6ef (17:56ef)
- ld a, ROUTE_6
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-UndergroundTunnelEntranceRoute6TextPointers: ; 5d6f7 (17:56f7)
- dw UndergroundTunnelEntranceRoute6Text1
-
-UndergroundTunnelEntranceRoute6Text1: ; 5d6f9 (17:56f9)
- TX_FAR _UndergrdTunnelEntRoute6Text1
- db "@"
-
-UndergroundTunnelEntranceRoute6Object: ; 0x5d6fe (size=34)
- db $a ; border tile
-
- db $3 ; warps
- db $7, $3, $3, $ff
- db $7, $4, $3, $ff
- db $4, $4, $1, UNDERGROUND_PATH_NS
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $3
- EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $4
- EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS
-
-UndergroundPathEntranceRoute7_h: ; 0x5d720 to 0x5d72c (12 bytes) (id=77)
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x)
- dw UndergroundTunnelEntranceRoute7Blocks, UndergroundPathEntranceRoute7TextPointers, UndergroundPathEntranceRoute7Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute7Object ; objects
-
-UndergroundPathEntranceRoute7Script: ; 5d72c (17:572c)
- ld a, ROUTE_7
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathEntranceRoute7TextPointers: ; 5d734 (17:5734)
- dw UndergroundPathEntranceRoute7Text1
-
-UndergroundPathEntranceRoute7Text1: ; 5d736 (17:5736)
- TX_FAR _UndergroundPathEntRoute7Text1
- db "@"
-
-UndergroundPathEntranceRoute7Object: ; 0x5d73b (size=34)
- db $a ; border tile
-
- db $3 ; warps
- db $7, $3, $4, $ff
- db $7, $4, $4, $ff
- db $4, $4, $0, UNDERGROUND_PATH_WE
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $3
- EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $4
- EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE
-
-UndergroundPathEntranceRoute7Copy_h: ; 5d75d (17:575d)
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x)
- dw UndergroundTunnelEntranceRoute7CopyBlocks, UndergroundPathEntranceRoute7CopyTextPointers, UndergroundPathEntranceRoute7CopyScript ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute7CopyObject ; objects
-
-UndergroundPathEntranceRoute7CopyScript: ; 5d769 (17:5769)
- ld a, ROUTE_7
- ld [wLastMap], a
- ret
-
-UndergroundPathEntranceRoute7CopyTextPointers: ; 5d76f (17:576f)
- dw UnnamedText_5d773
- dw UnnamedText_5d77d
-
-UnnamedText_5d773: ; 5d773 (17:5773)
- TX_FAR _UnnamedText_5d773
- db "@"
-
-UnnamedText_5d778: ; 5d778 (17:5778)
- TX_FAR _UnnamedText_5d778
- db "@"
-
-UnnamedText_5d77d: ; 5d77d (17:577d)
- TX_FAR _UnnamedText_5d77d
- db "@"
-
-UnnamedText_5d782: ; 5d782 (17:5782)
- TX_FAR _UnnamedText_5d782
- db "@"
-
-UndergroundPathEntranceRoute7CopyObject: ; 5d787 (17:5787)
- db $a ; border tile
-
- db $3 ; warps
- db $7, $3, $5, $ff
- db $7, $4, $5, $ff
- db $4, $4, $0, UNDERGROUND_PATH_WE
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $ff, $1 ; person
- db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $2 ; person
+INCLUDE "data/mapHeaders/saffronpokecenter.asm"
- ; warp-to
- EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $3
- EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $4
- EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE
+INCLUDE "scripts/saffronpokecenter.asm"
-SilphCo9_h: ; 0x5d7af to 0x5d7bb (12 bytes) (id=233)
- db FACILITY ; tileset
- db SILPH_CO_9F_HEIGHT, SILPH_CO_9F_WIDTH ; dimensions (y, x)
- dw SilphCo9Blocks, SilphCo9TextPointers, SilphCo9Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo9Object ; objects
-
-SilphCo9Script: ; 5d7bb (17:57bb)
- call SilphCo9Script_5d7d1
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo9TrainerHeaders
- ld de, SilphCo9ScriptPointers
- ld a, [W_SILPHCO9CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO9CURSCRIPT], a
- ret
-
-SilphCo9Script_5d7d1: ; 5d7d1 (17:57d1)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_5d82e ; $582e
- call Func_5d837
- call Func_5d863
- ld a, [$d834]
- bit 0, a
- jr nz, .asm_5d7f8
- push af
- ld a, $5f
- ld [$d09f], a
- ld bc, $401
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- pop af
-.asm_5d7f8
- bit 1, a
- jr nz, .asm_5d80b
- push af
- ld a, $54
- ld [$d09f], a
- ld bc, $209
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- pop af
-.asm_5d80b
- bit 2, a
- jr nz, .asm_5d81e
- push af
- ld a, $54
- ld [$d09f], a
- ld bc, $509
- ld a, $17
- call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
- pop af
-.asm_5d81e
- bit 3, a
- ret nz
- ld a, $5f
- ld [$d09f], a
- ld bc, $605
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-DataTable_5d82e: ; 5d82e (17:582e)
- db $04,$01,$02,$09,$05,$09,$06,$05,$FF
-
-Func_5d837: ; 5d837 (17:5837)
- push hl
- ld hl, $d73f
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_5d843
- ld a, [hli]
- cp $ff
- jr z, .asm_5d85f
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_5d854
- inc hl
- jr .asm_5d843
-.asm_5d854
- ld a, [hli]
- cp c
- jr nz, .asm_5d843
- ld hl, $d73f
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_5d85f
- xor a
- ld [$ffe0], a
- ret
+INCLUDE "data/mapObjects/saffronpokecenter.asm"
-Func_5d863: ; 5d863 (17:5863)
- ld hl, $d834
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .asm_5d871
- set 0, [hl]
- ret
-.asm_5d871
- cp $2
- jr nz, .asm_5d878
- set 1, [hl]
- ret
-.asm_5d878
- cp $3
- jr nz, .asm_5d87f
- set 2, [hl]
- ret
-.asm_5d87f
- cp $4
- ret nz
- set 3, [hl]
- ret
+INCLUDE "data/mapHeaders/viridianforestexit.asm"
-SilphCo9ScriptPointers: ; 5d885 (17:5885)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SilphCo9TextPointers: ; 5d88b (17:588b)
- dw SilphCo9Text1
- dw SilphCo9Text2
- dw SilphCo9Text3
- dw SilphCo9Text4
-
-SilphCo9TrainerHeaders: ; 5d893 (17:5893)
-SilphCo9TrainerHeader0: ; 5d893 (17:5893)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d833 ; flag's byte
- dw SilphCo9BattleText1 ; 0x5912 TextBeforeBattle
- dw SilphCo9AfterBattleText1 ; 0x591c TextAfterBattle
- dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle
- dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle
-
-SilphCo9TrainerHeader1: ; 5d89f (17:589f)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d833 ; flag's byte
- dw SilphCo9BattleText2 ; 0x5921 TextBeforeBattle
- dw SilphCo9AfterBattleText2 ; 0x592b TextAfterBattle
- dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle
- dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle
-
-SilphCo9TrainerHeader2: ; 5d8ab (17:58ab)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d833 ; flag's byte
- dw SilphCo9BattleText3 ; 0x5930 TextBeforeBattle
- dw SilphCo9AfterBattleText3 ; 0x593a TextAfterBattle
- dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle
- dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle
+INCLUDE "scripts/viridianforestexit.asm"
- db $ff
+INCLUDE "data/mapObjects/viridianforestexit.asm"
-SilphCo9Text1: ; 5d8b8 (17:58b8)
- db $08 ; asm
- ld a, [$d838]
- bit 7, a
- jr nz, .asm_a14c3 ; 0x5d8be
- ld hl, UnnamedText_5d8e5
- call PrintText
- ld a, $7
- call Predef
- call GBFadeOut2
- call Delay3
- call GBFadeIn2
- ld hl, UnnamedText_5d8ea
- call PrintText
- jr .asm_b6e28 ; 0x5d8da
-.asm_a14c3 ; 0x5d8dc
- ld hl, UnnamedText_5d8ef
- call PrintText
-.asm_b6e28 ; 0x5d8e2
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/route2gate.asm"
-UnnamedText_5d8e5: ; 5d8e5 (17:58e5)
- TX_FAR _UnnamedText_5d8e5
- db "@"
+INCLUDE "scripts/route2gate.asm"
-UnnamedText_5d8ea: ; 5d8ea (17:58ea)
- TX_FAR _UnnamedText_5d8ea
- db "@"
+INCLUDE "data/mapObjects/route2gate.asm"
-UnnamedText_5d8ef: ; 5d8ef (17:58ef)
- TX_FAR _UnnamedText_5d8ef
- db "@"
+INCLUDE "data/mapHeaders/viridianforestentrance.asm"
-SilphCo9Text2: ; 5d8f4 (17:58f4)
- db $08 ; asm
- ld hl, SilphCo9TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/viridianforestentrance.asm"
-SilphCo9Text3: ; 5d8fe (17:58fe)
- db $08 ; asm
- ld hl, SilphCo9TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapObjects/viridianforestentrance.asm"
-SilphCo9Text4: ; 5d908 (17:5908)
- db $08 ; asm
- ld hl, SilphCo9TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/undergroundpathentranceroute5.asm"
-SilphCo9BattleText1: ; 5d912 (17:5912)
- TX_FAR _SilphCo9BattleText1
- db "@"
+INCLUDE "scripts/undergroundpathentranceroute5.asm"
-SilphCo9EndBattleText1: ; 5d917 (17:5917)
- TX_FAR _SilphCo9EndBattleText1
- db "@"
+INCLUDE "data/mapObjects/undergroundpathentranceroute5.asm"
-SilphCo9AfterBattleText1: ; 5d91c (17:591c)
- TX_FAR _SilphCo9AfterBattleText1
- db "@"
+INCLUDE "data/mapHeaders/undergroundpathentranceroute6.asm"
-SilphCo9BattleText2: ; 5d921 (17:5921)
- TX_FAR _SilphCo9BattleText2
- db "@"
+INCLUDE "scripts/undergroundpathentranceroute6.asm"
-SilphCo9EndBattleText2: ; 5d926 (17:5926)
- TX_FAR _SilphCo9EndBattleText2
- db "@"
+INCLUDE "data/mapObjects/undergroundpathentranceroute6.asm"
-SilphCo9AfterBattleText2: ; 5d92b (17:592b)
- TX_FAR _SilphCo9AfterBattleText2
- db "@"
+INCLUDE "data/mapHeaders/undergroundpathentranceroute7.asm"
-SilphCo9BattleText3: ; 5d930 (17:5930)
- TX_FAR _SilphCo9BattleText3
- db "@"
+INCLUDE "scripts/undergroundpathentranceroute7.asm"
-SilphCo9EndBattleText3: ; 5d935 (17:5935)
- TX_FAR _SilphCo9EndBattleText3
- db "@"
+INCLUDE "data/mapObjects/undergroundpathentranceroute7.asm"
-SilphCo9AfterBattleText3: ; 5d93a (17:593a)
- TX_FAR _SilphCo9AfterBattleText3
- db "@"
+INCLUDE "data/mapHeaders/undergroundpathentranceroute7copy.asm"
-SilphCo9Object: ; 0x5d93f (size=74)
- db $2e ; border tile
+INCLUDE "scripts/undergroundpathentranceroute7copy.asm"
- db $5 ; warps
- db $0, $e, $0, SILPH_CO_10F
- db $0, $10, $0, SILPH_CO_8F
- db $0, $12, $0, SILPH_CO_ELEVATOR
- db $3, $9, $7, SILPH_CO_3F
- db $f, $11, $4, SILPH_CO_5F
+INCLUDE "data/mapObjects/undergroundpathentranceroute7copy.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/silphco9.asm"
- db $4 ; people
- db SPRITE_NURSE, $e + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_ROCKET, $4 + 4, $2 + 4, $ff, $d1, $42, ROCKET + $C8, $25 ; trainer
- db SPRITE_OAK_AIDE, $d + 4, $15 + 4, $ff, $d0, $43, SCIENTIST + $C8, $a ; trainer
- db SPRITE_ROCKET, $10 + 4, $d + 4, $ff, $d1, $44, ROCKET + $C8, $26 ; trainer
+INCLUDE "scripts/silphco9.asm"
- ; warp-to
- EVENT_DISP SILPH_CO_9F_WIDTH, $0, $e ; SILPH_CO_10F
- EVENT_DISP SILPH_CO_9F_WIDTH, $0, $10 ; SILPH_CO_8F
- EVENT_DISP SILPH_CO_9F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_9F_WIDTH, $3, $9 ; SILPH_CO_3F
- EVENT_DISP SILPH_CO_9F_WIDTH, $f, $11 ; SILPH_CO_5F
+INCLUDE "data/mapObjects/silphco9.asm"
SilphCo9Blocks: ; 5d989 (17:5989)
INCBIN "maps/silphco9.blk"
-VictoryRoad1_h: ; 0x5d9fe to 0x5da0a (12 bytes) (id=108)
- db CAVERN ; tileset
- db VICTORY_ROAD_1_HEIGHT, VICTORY_ROAD_1_WIDTH ; dimensions (y, x)
- dw VictoryRoad1Blocks, VictoryRoad1TextPointers, VictoryRoad1Script ; blocks, texts, scripts
- db $00 ; connections
- dw VictoryRoad1Object ; objects
+INCLUDE "data/mapHeaders/victoryroad1.asm"
-VictoryRoad1Script: ; 5da0a (17:5a0a)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- call nz, .next
- call EnableAutoTextBoxDrawing
- ld hl, VictoryRoad1TrainerHeaders
- ld de, VictoryRoad1ScriptPointers
- ld a, [W_VICTORYROAD1CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_VICTORYROAD1CURSCRIPT], a
- ret
-.next
- ld a, [$d869]
- bit 7, a
- ret z
- ld a, $1d
- ld [$d09f], a
- ld bc, $604
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+INCLUDE "scripts/victoryroad1.asm"
-VictoryRoad1ScriptPointers: ; 5da3a (17:5a3a)
- dw VictoryRoad1Script0
- dw Func_324c
- dw EndTrainerBattle
-
-VictoryRoad1Script0: ; 5da40 (17:5a40)
- ld a, [$d869]
- bit 7, a
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_5da5c ; $5a5c
- call CheckBoulderCoords
- jp nc, CheckFightingMapTrainers
- ld hl, $d126
- set 5, [hl]
- ld hl, $d869
- set 7, [hl]
- ret
-
-CoordsData_5da5c: ; 5da5c (17:5a5c)
- db $0D,$11,$FF
-
-VictoryRoad1TextPointers: ; 5da5f (17:5a5f)
- dw VictoryRoad1Text1
- dw VictoryRoad1Text2
- dw Predef5CText
- dw Predef5CText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-VictoryRoad1TrainerHeaders: ; 5da6d (17:5a6d)
-VictoryRoad1TrainerHeader0: ; 5da6d (17:5a6d)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d869 ; flag's byte
- dw VictoryRoad1BattleText1 ; 0x5a9a TextBeforeBattle
- dw VictoryRoad1AfterBattleText1 ; 0x5aa4 TextAfterBattle
- dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle
- dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle
-
-VictoryRoad1TrainerHeader1: ; 5da79 (17:5a79)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d869 ; flag's byte
- dw VictoryRoad1BattleText2 ; 0x5aa9 TextBeforeBattle
- dw VictoryRoad1AfterBattleText2 ; 0x5ab3 TextAfterBattle
- dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle
- dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle
-
- db $ff
-
-VictoryRoad1Text1: ; 5da86 (17:5a86)
- db $08 ; asm
- ld hl, VictoryRoad1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad1Text2: ; 5da90 (17:5a90)
- db $08 ; asm
- ld hl, VictoryRoad1TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad1BattleText1: ; 5da9a (17:5a9a)
- TX_FAR _VictoryRoad1BattleText1
- db "@"
-
-VictoryRoad1EndBattleText1: ; 5da9f (17:5a9f)
- TX_FAR _VictoryRoad1EndBattleText1
- db "@"
-
-VictoryRoad1AfterBattleText1: ; 5daa4 (17:5aa4)
- TX_FAR _VictoryRoad1AfterBattleText1
- db "@"
-
-VictoryRoad1BattleText2: ; 5daa9 (17:5aa9)
- TX_FAR _VictoryRoad1BattleText2
- db "@"
-
-VictoryRoad1EndBattleText2: ; 5daae (17:5aae)
- TX_FAR _VictoryRoad1EndBattleText2
- db "@"
-
-VictoryRoad1AfterBattleText2: ; 5dab3 (17:5ab3)
- TX_FAR _VictoryRoad1AfterBattleText2
- db "@"
-
-VictoryRoad1Object: ; 0x5dab8 (size=76)
- db $7d ; border tile
-
- db $3 ; warps
- db $11, $8, $2, $ff
- db $11, $9, $2, $ff
- db $1, $1, $0, VICTORY_ROAD_2
-
- db $0 ; signs
-
- db $7 ; people
- db SPRITE_LASS, $5 + 4, $7 + 4, $ff, $d3, $41, COOLTRAINER_F + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $3 + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $5 ; trainer
- db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $83, TM_43 ; item
- db SPRITE_BALL, $2 + 4, $9 + 4, $ff, $ff, $84, RARE_CANDY ; item
- db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $10, $5 ; person
- db SPRITE_BOULDER, $2 + 4, $e + 4, $ff, $10, $6 ; person
- db SPRITE_BOULDER, $a + 4, $2 + 4, $ff, $10, $7 ; person
-
- ; warp-to
- EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $8
- EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $9
- EVENT_DISP VICTORY_ROAD_1_WIDTH, $1, $1 ; VICTORY_ROAD_2
+INCLUDE "data/mapObjects/victoryroad1.asm"
VictoryRoad1Blocks: ; 5db04 (17:5b04)
INCBIN "maps/victoryroad1.blk"
@@ -94019,1366 +48538,76 @@ SSAnne10Blocks: ; 603c0 (18:43c0)
SSAnne9Blocks: ; 603c0 (18:43c0)
INCBIN "maps/ssanne9.blk"
-PokemonTower1_h: ; 0x60420 to 0x6042c (12 bytes) (id=142)
- db CEMETERY ; tileset
- db POKEMONTOWER_1_HEIGHT, POKEMONTOWER_1_WIDTH ; dimensions (y, x)
- dw PokemonTower1Blocks, PokemonTower1TextPointers, PokemonTower1Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower1Object ; objects
-
-PokemonTower1Script: ; 6042c (18:442c)
- jp EnableAutoTextBoxDrawing
-
-PokemonTower1TextPointers: ; 6042f (18:442f)
- dw PokemonTower1Text1
- dw PokemonTower1Text2
- dw PokemonTower1Text3
- dw PokemonTower1Text4
- dw PokemonTower1Text5
-
-PokemonTower1Text1: ; 60439 (18:4439)
- TX_FAR _PokemonTower1Text1
- db "@"
+INCLUDE "data/mapHeaders/pokemontower1.asm"
-PokemonTower1Text2: ; 6043e (18:443e)
- TX_FAR _PokemonTower1Text2
- db "@"
+INCLUDE "scripts/pokemontower1.asm"
-PokemonTower1Text3: ; 60443 (18:4443)
- TX_FAR _PokemonTower1Text3
- db "@"
-
-PokemonTower1Text4: ; 60448 (18:4448)
- TX_FAR _PokemonTower1Text4
- db "@"
-
-PokemonTower1Text5: ; 6044d (18:444d)
- TX_FAR _PokemonTower1Text5
- db "@"
-
-PokemonTower1Object: ; 0x60452 (size=58)
- db $1 ; border tile
-
- db $3 ; warps
- db $11, $a, $1, $ff
- db $11, $b, $1, $ff
- db $9, $12, $1, POKEMONTOWER_2
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_CABLE_CLUB_WOMAN, $d + 4, $f + 4, $ff, $d1, $1 ; person
- db SPRITE_MOM_GEISHA, $8 + 4, $6 + 4, $ff, $ff, $2 ; person
- db SPRITE_BALDING_GUY, $c + 4, $8 + 4, $ff, $ff, $3 ; person
- db SPRITE_GIRL, $7 + 4, $d + 4, $ff, $ff, $4 ; person
- db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $5 ; person
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $a
- EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $b
- EVENT_DISP POKEMONTOWER_1_WIDTH, $9, $12 ; POKEMONTOWER_2
+INCLUDE "data/mapObjects/pokemontower1.asm"
PokemonTower1Blocks: ; 6048c (18:448c)
INCBIN "maps/pokemontower1.blk"
-PokemonTower2_h: ; 0x604e6 to 0x604f2 (12 bytes) (id=143)
- db CEMETERY ; tileset
- db POKEMONTOWER_2_HEIGHT, POKEMONTOWER_2_WIDTH ; dimensions (y, x)
- dw PokemonTower2Blocks, PokemonTower2TextPointers, PokemonTower2Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower2Object ; objects
-
-PokemonTower2Script: ; 604f2 (18:44f2)
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower2ScriptPointers
- ld a, [W_POKEMONTOWER2CURSCRIPT]
- jp CallFunctionInTable
+INCLUDE "data/mapHeaders/pokemontower2.asm"
-Func_604fe: ; 604fe (18:44fe)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_POKEMONTOWER2CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
+INCLUDE "scripts/pokemontower2.asm"
-PokemonTower2ScriptPointers: ; 60509 (18:4509)
- dw PokemonTower2Script0
- dw PokemonTower2Script1
- dw PokemonTower2Script2
-
-PokemonTower2Script0: ; 6050f (18:450f)
- ld a, [$d764]
- bit 7, a
- ret nz
- ld hl, CoordsData_6055e ; $455e
- call ArePlayerCoordsInArray
- ret nc
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld hl, $d764
- res 6, [hl]
- ld a, [$cd3d]
- cp $1
- ld a, $8
- ld b, $0
- jr nz, .asm_60544 ; 0x60539 $9
- ld hl, $d764
- set 6, [hl]
- ld a, $2
- ld b, $c
-.asm_60544
- ld [$d528], a
- ld a, $1
- ld [$ff8c], a
- ld a, b
- ld [$ff8d], a
- call Func_34a6
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [H_NEWLYPRESSEDBUTTONS], a
- ret
-
-CoordsData_6055e: ; 6055e (18:455e)
- db $05,$0F
- db $06,$0E
- db $0F ; isn't this supposed to end in $ff?
-
-PokemonTower2Script1: ; 60563 (18:4563)
- ld a, [$d057]
- cp $ff
- jp z, Func_604fe
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d764
- set 7, [hl]
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- ld de, MovementData_605b2
- ld a, [$d764]
- bit 6, a
- jr nz, .asm_60589 ; 0x60584 $3
- ld de, MovementData_605a9
-.asm_60589
- ld a, $1
- ld [$ff8c], a
- call MoveSprite
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld a, $2
- ld [W_POKEMONTOWER2CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-MovementData_605a9: ; 605a9 (18:45a9)
- db $C0,$00,$00,$C0,$00,$00,$C0,$C0,$FF
-
-MovementData_605b2: ; 605b2 (18:45b2)
- db $00,$00,$C0,$C0,$C0,$C0,$00,$00,$FF
-
-PokemonTower2Script2: ; 605bb (18:45bb)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $38
- ld [$cc4d], a
- ld a, $11
- call Predef
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- call Func_2307
- ld a, $0
- ld [W_POKEMONTOWER2CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower2TextPointers: ; 605db (18:45db)
- dw PokemonTower2Text1
- dw PokemonTower2Text2
-
-PokemonTower2Text1: ; 605df (18:45df)
- db $08 ; asm
- ld a, [$d764]
- bit 7, a
- jr z, .asm_16f24 ; 0x605e5
- ld hl, UnnamedText_6063c
- call PrintText
- jr .asm_41852 ; 0x605ed
-.asm_16f24 ; 0x605ef
- ld hl, UnnamedText_6062d
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_60632
- ld de, UnnamedText_60637 ; XXX $4637
- call PreBattleSaveRegisters
- ld a, $f2
- ld [$d059], a
-
- ; select which team to use during the encounter
- ld a, [W_RIVALSTARTER]
- cp SQUIRTLE
- jr nz, .NotSquirtle ; 0x6060f
- ld a, $4
- jr .done
-.NotSquirtle ; 0x60615
- cp BULBASAUR
- jr nz, .Charmander ; 0x60617
- ld a, $5
- jr .done
-.Charmander ; 0x6061d
- ld a, $6
-.done
- ld [W_TRAINERNO], a
-
- ld a, $1
- ld [W_POKEMONTOWER2CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_41852 ; 0x6062a
- jp TextScriptEnd
-
-UnnamedText_6062d: ; 6062d (18:462d)
- TX_FAR _UnnamedText_6062d
- db "@"
-
-UnnamedText_60632: ; 60632 (18:4632)
- TX_FAR _UnnamedText_60632
- db "@"
-
-UnnamedText_60637: ; 60637 (18:4637)
- TX_FAR _UnnamedText_60637
- db "@"
-
-UnnamedText_6063c: ; 6063c (18:463c)
- TX_FAR _UnnamedText_6063c
- db "@"
-
-PokemonTower2Text2: ; 60641 (18:4641)
- TX_FAR _PokemonTower2Text2
- db "@"
-
-PokemonTower2Object: ; 0x60646 (size=32)
- db $1 ; border tile
-
- db $2 ; warps
- db $9, $3, $0, POKEMONTOWER_3
- db $9, $12, $2, POKEMONTOWER_1
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_BLUE, $5 + 4, $e + 4, $ff, $ff, $1 ; person
- db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d3, $2 ; person
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $3 ; POKEMONTOWER_3
- EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $12 ; POKEMONTOWER_1
+INCLUDE "data/mapObjects/pokemontower2.asm"
PokemonTower2Blocks: ; 60666 (18:4666)
INCBIN "maps/pokemontower2.blk"
-PokemonTower3_h: ; 0x606c0 to 0x606cc (12 bytes) (id=144)
- db CEMETERY ; tileset
- db POKEMONTOWER_3_HEIGHT, POKEMONTOWER_3_WIDTH ; dimensions (y, x)
- dw PokemonTower3Blocks, PokemonTower3TextPointers, PokemonTower3Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower3Object ; objects
+INCLUDE "data/mapHeaders/pokemontower3.asm"
-PokemonTower3Script: ; 606cc (18:46cc)
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower3TrainerHeaders
- ld de, PokemonTower3ScriptPointers
- ld a, [W_POKEMONTOWER3CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_POKEMONTOWER3CURSCRIPT], a
- ret
-
-PokemonTower3ScriptPointers: ; 606df (18:46df)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-PokemonTower3TextPointers: ; 606e5 (18:46e5)
- dw PokemonTower3Text1
- dw PokemonTower3Text2
- dw PokemonTower3Text3
- dw Predef5CText
-
-PokemonTower3TrainerHeaders: ; 606ed (18:46ed)
-PokemonTower3TrainerHeader0: ; 606ed (18:46ed)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d765 ; flag's byte
- dw PokemonTower3BattleText1 ; 0x4730 TextBeforeBattle
- dw PokemonTower3AfterBattleText1 ; 0x473a TextAfterBattle
- dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle
- dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle
-
-PokemonTower3TrainerHeader1: ; 606f9 (18:46f9)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d765 ; flag's byte
- dw PokemonTower3BattleText2 ; 0x473f TextBeforeBattle
- dw PokemonTower3AfterBattleText2 ; 0x4749 TextAfterBattle
- dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle
- dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle
-
-PokemonTower3TrainerHeader2: ; 60705 (18:4705)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d765 ; flag's byte
- dw PokemonTower3BattleText3 ; 0x474e TextBeforeBattle
- dw PokemonTower3AfterBattleText3 ; 0x4758 TextAfterBattle
- dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle
- dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle
- db $ff
+INCLUDE "scripts/pokemontower3.asm"
-PokemonTower3Text1: ; 60712 (18:4712)
- db $08 ; asm
- ld hl, PokemonTower3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower3Text2: ; 6071c (18:471c)
- db $08 ; asm
- ld hl, PokemonTower3TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower3Text3: ; 60726 (18:4726)
- db $08 ; asm
- ld hl, PokemonTower3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower3BattleText1: ; 60730 (18:4730)
- TX_FAR _PokemonTower3BattleText1
- db "@"
-
-PokemonTower3EndBattleText1: ; 60735 (18:4735)
- TX_FAR _PokemonTower3EndBattleText1
- db "@"
-
-PokemonTower3AfterBattleText1: ; 6073a (18:473a)
- TX_FAR _PokemonTower3AfterBattleText1
- db "@"
-
-PokemonTower3BattleText2: ; 6073f (18:473f)
- TX_FAR _PokemonTower3BattleText2
- db "@"
-
-PokemonTower3EndBattleText2: ; 60744 (18:4744)
- TX_FAR _PokemonTower3EndBattleText2
- db "@"
-
-PokemonTower3AfterBattleText2: ; 60749 (18:4749)
- TX_FAR _PokemonTower3AfterBattleText2
- db "@"
-
-PokemonTower3BattleText3: ; 6074e (18:474e)
- TX_FAR _PokemonTower3BattleText3
- db "@"
-
-PokemonTower3EndBattleText3: ; 60753 (18:4753)
- TX_FAR _PokemonTower3EndBattleText3
- db "@"
-
-PokemonTower3AfterBattleText3: ; 60758 (18:4758)
- TX_FAR _PokemonTower3AfterBattleText3
- db "@"
-
-PokemonTower3Object: ; 0x6075d (size=51)
- db $1 ; border tile
-
- db $2 ; warps
- db $9, $3, $0, POKEMONTOWER_2
- db $9, $12, $1, POKEMONTOWER_4
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_MEDIUM, $3 + 4, $c + 4, $ff, $d2, $41, CHANNELER + $C8, $5 ; trainer
- db SPRITE_MEDIUM, $8 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $6 ; trainer
- db SPRITE_MEDIUM, $d + 4, $a + 4, $ff, $d0, $43, CHANNELER + $C8, $8 ; trainer
- db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $84, ESCAPE_ROPE ; item
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $3 ; POKEMONTOWER_2
- EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $12 ; POKEMONTOWER_4
+INCLUDE "data/mapObjects/pokemontower3.asm"
PokemonTower3Blocks: ; 60790 (18:4790)
INCBIN "maps/pokemontower3.blk"
-PokemonTower4_h: ; 0x607ea to 0x607f6 (12 bytes) (id=145)
- db CEMETERY ; tileset
- db POKEMONTOWER_4_HEIGHT, POKEMONTOWER_4_WIDTH ; dimensions (y, x)
- dw PokemonTower4Blocks, PokemonTower4TextPointers, PokemonTower4Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower4Object ; objects
+INCLUDE "data/mapHeaders/pokemontower4.asm"
-PokemonTower4Script: ; 607f6 (18:47f6)
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower4TrainerHeaders
- ld de, PokemonTower4ScriptPointers
- ld a, [W_POKEMONTOWER4CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_POKEMONTOWER4CURSCRIPT], a
- ret
-
-PokemonTower4ScriptPointers: ; 60809 (18:4809)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-PokemonTower4TextPointers: ; 6080f (18:480f)
- dw PokemonTower4Text1
- dw PokemonTower4Text2
- dw PokemonTower4Text3
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-PokemonTower4TrainerHeaders: ; 6081b (18:481b)
-PokemonTower4TrainerHeader0: ; 6081b (18:481b)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d766 ; flag's byte
- dw PokemonTower4BattleText1 ; 0x485e TextBeforeBattle
- dw PokemonTower4AfterBattleText1 ; 0x4868 TextAfterBattle
- dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle
- dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle
-
-PokemonTower4TrainerHeader1: ; 60827 (18:4827)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d766 ; flag's byte
- dw PokemonTower4BattleText2 ; 0x486d TextBeforeBattle
- dw PokemonTower4AfterBattleText2 ; 0x4877 TextAfterBattle
- dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle
- dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle
-
-PokemonTower4TrainerHeader2: ; 60833 (18:4833)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d766 ; flag's byte
- dw PokemonTower4BattleText3 ; 0x487c TextBeforeBattle
- dw PokemonTower4AfterBattleText3 ; 0x4886 TextAfterBattle
- dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle
- dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle
+INCLUDE "scripts/pokemontower4.asm"
- db $ff
-
-PokemonTower4Text1: ; 60840 (18:4840)
- db $08 ; asm
- ld hl, PokemonTower4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower4Text2: ; 6084a (18:484a)
- db $08 ; asm
- ld hl, PokemonTower4TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower4Text3: ; 60854 (18:4854)
- db $08 ; asm
- ld hl, PokemonTower4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower4BattleText1: ; 6085e (18:485e)
- TX_FAR _PokemonTower4BattleText1
- db "@"
-
-PokemonTower4EndBattleText1: ; 60863 (18:4863)
- TX_FAR _PokemonTower4EndBattleText1
- db "@"
-
-PokemonTower4AfterBattleText1: ; 60868 (18:4868)
- TX_FAR _PokemonTower4AfterBattleText1
- db "@"
-
-PokemonTower4BattleText2: ; 6086d (18:486d)
- TX_FAR _PokemonTower4BattleText2
- db "@"
-
-PokemonTower4EndBattleText2: ; 60872 (18:4872)
- TX_FAR _PokemonTower4EndBattleText2
- db "@"
-
-PokemonTower4AfterBattleText2: ; 60877 (18:4877)
- TX_FAR _PokemonTower4AfterBattleText2
- db "@"
-
-PokemonTower4BattleText3: ; 6087c (18:487c)
- TX_FAR _PokemonTower4BattleText3
- db "@"
-
-PokemonTower4EndBattleText3: ; 60881 (18:4881)
- TX_FAR _PokemonTower4EndBattleText3
- db "@"
-
-PokemonTower4AfterBattleText3: ; 60886 (18:4886)
- TX_FAR _PokemonTower4AfterBattleText3
- db "@"
-
-PokemonTower4Object: ; 0x6088b (size=65)
- db $1 ; border tile
-
- db $2 ; warps
- db $9, $3, $0, POKEMONTOWER_5
- db $9, $12, $1, POKEMONTOWER_3
-
- db $0 ; signs
-
- db $6 ; people
- db SPRITE_MEDIUM, $a + 4, $5 + 4, $ff, $d3, $41, CHANNELER + $C8, $9 ; trainer
- db SPRITE_MEDIUM, $7 + 4, $f + 4, $ff, $d0, $42, CHANNELER + $C8, $a ; trainer
- db SPRITE_MEDIUM, $c + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $c ; trainer
- db SPRITE_BALL, $a + 4, $c + 4, $ff, $ff, $84, ELIXER ; item
- db SPRITE_BALL, $a + 4, $9 + 4, $ff, $ff, $85, AWAKENING ; item
- db SPRITE_BALL, $10 + 4, $c + 4, $ff, $ff, $86, HP_UP ; item
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $3 ; POKEMONTOWER_5
- EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $12 ; POKEMONTOWER_3
+INCLUDE "data/mapObjects/pokemontower4.asm"
PokemonTower4Blocks: ; 608cc (18:48cc)
INCBIN "maps/pokemontower4.blk"
-PokemonTower5_h: ; 0x60926 to 0x60932 (12 bytes) (id=146)
- db CEMETERY ; tileset
- db POKEMONTOWER_5_HEIGHT, POKEMONTOWER_5_WIDTH ; dimensions (y, x)
- dw PokemonTower5Blocks, PokemonTower5TextPointers, PokemonTower5Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower5Object ; objects
-
-PokemonTower5Script: ; 60932 (18:4932)
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower5TrainerHeaders
- ld de, PokemonTower5ScriptPointers
- ld a, [W_POKEMONTOWER5CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_POKEMONTOWER5CURSCRIPT], a
- ret
-
-PokemonTower5ScriptPointers: ; 60945 (18:4945)
- dw PokemonTower5Script0
- dw Func_324c
- dw EndTrainerBattle
-
-PokemonTower5Script0: ; 6094b (18:494b)
- ld hl, CoordsData_60992 ; $4992
- call ArePlayerCoordsInArray
- jr c, .asm_60960
- ld hl, $d72e
- res 4, [hl]
- ld hl, $d767
- res 7, [hl]
- jp CheckFightingMapTrainers
-.asm_60960
- ld hl, $d767
- bit 7, [hl]
- set 7, [hl]
- ret nz
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d72e
- set 4, [hl]
- ld a, $7
- call Predef ; indirect jump to HealParty (f6a5 (3:76a5))
- call GBFadeOut2
- call Delay3
- call Delay3
- call GBFadeIn2
- ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ret
-
-CoordsData_60992: ; 60992 (18:4992)
- db $08,$0A
- db $08,$0B
- db $09,$0A
- db $09,$0B
- db $FF
-
-PokemonTower5TextPointers: ; 6099b (18:499b)
- dw PokemonTower5Text1
- dw PokemonTower5Text2
- dw PokemonTower5Text3
- dw PokemonTower5Text4
- dw PokemonTower5Text5
- dw Predef5CText
- dw PokemonTower5Text7
-
-PokemonTower5TrainerHeaders: ; 609a9 (18:49a9)
-PokemonTower5TrainerHeader0: ; 609a9 (18:49a9)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d767 ; flag's byte
- dw PokemonTower5BattleText1 ; 0x49e9 TextBeforeBattle
- dw PokemonTower5AfterBattleText1 ; 0x49f3 TextAfterBattle
- dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle
- dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle
-
-PokemonTower5TrainerHeader1: ; 609b5 (18:49b5)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d767 ; flag's byte
- dw PokemonTower5BattleText2 ; 0x4a02 TextBeforeBattle
- dw PokemonTower5AfterBattleText2 ; 0x4a0c TextAfterBattle
- dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle
- dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle
-
-PokemonTower5TrainerHeader2: ; 609c1 (18:49c1)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d767 ; flag's byte
- dw PokemonTower5BattleText3 ; 0x4a1b TextBeforeBattle
- dw PokemonTower5AfterBattleText3 ; 0x4a25 TextAfterBattle
- dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle
- dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle
-
-PokemonTower5TrainerHeader3: ; 609cd (18:49cd)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d767 ; flag's byte
- dw PokemonTower5BattleText4 ; 0x4a34 TextBeforeBattle
- dw PokemonTower5AfterBattleText4 ; 0x4a3e TextAfterBattle
- dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle
- dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle
-
- db $ff
-
-PokemonTower5Text1: ; 609da (18:49da)
- TX_FAR _PokemonTower5Text1
- db "@"
-
-PokemonTower5Text2: ; 609df (18:49df)
- db $08 ; asm
- ld hl, PokemonTower5TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText1: ; 609e9 (18:49e9)
- TX_FAR _PokemonTower5BattleText1
- db "@"
-
-PokemonTower5EndBattleText1: ; 609ee (18:49ee)
- TX_FAR _PokemonTower5EndBattleText1
- db "@"
+INCLUDE "data/mapHeaders/pokemontower5.asm"
-PokemonTower5AfterBattleText1: ; 609f3 (18:49f3)
- TX_FAR _PokemonTower5AfterBattleText1
- db "@"
+INCLUDE "scripts/pokemontower5.asm"
-PokemonTower5Text3: ; 609f8 (18:49f8)
- db $08 ; asm
- ld hl, PokemonTower5TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText2: ; 60a02 (18:4a02)
- TX_FAR _PokemonTower5BattleText2
- db "@"
-
-PokemonTower5EndBattleText2: ; 60a07 (18:4a07)
- TX_FAR _PokemonTower5EndBattleText2
- db "@"
-
-PokemonTower5AfterBattleText2: ; 60a0c (18:4a0c)
- TX_FAR _PokemonTower5AfterBattleText2
- db "@"
-
-PokemonTower5Text4: ; 60a11 (18:4a11)
- db $08 ; asm
- ld hl, PokemonTower5TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText3: ; 60a1b (18:4a1b)
- TX_FAR _PokemonTower5BattleText3
- db "@"
-
-PokemonTower5EndBattleText3: ; 60a20 (18:4a20)
- TX_FAR _PokemonTower5EndBattleText3
- db "@"
-
-PokemonTower5AfterBattleText3: ; 60a25 (18:4a25)
- TX_FAR _PokemonTower5AfterBattleText3
- db "@"
-
-PokemonTower5Text5: ; 60a2a (18:4a2a)
- db $08 ; asm
- ld hl, PokemonTower5TrainerHeader3 ; $49cd
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText4: ; 60a34 (18:4a34)
- TX_FAR _PokemonTower5BattleText4
- db "@"
-
-PokemonTower5EndBattleText4: ; 60a39 (18:4a39)
- TX_FAR _PokemonTower5EndBattleText4
- db "@"
-
-PokemonTower5AfterBattleText4: ; 60a3e (18:4a3e)
- TX_FAR _PokemonTower5AfterBattleText4
- db "@"
-
-PokemonTower5Text7: ; 60a43 (18:4a43)
- TX_FAR _UnnamedText_60a43
- db "@"
-
-PokemonTower5Object: ; 0x60a48 (size=65)
- db $1 ; border tile
-
- db $2 ; warps
- db $9, $3, $0, POKEMONTOWER_4
- db $9, $12, $0, POKEMONTOWER_6
-
- db $0 ; signs
-
- db $6 ; people
- db SPRITE_MEDIUM, $8 + 4, $c + 4, $ff, $ff, $1 ; person
- db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $42, CHANNELER + $C8, $e ; trainer
- db SPRITE_MEDIUM, $3 + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $10 ; trainer
- db SPRITE_MEDIUM, $a + 4, $6 + 4, $ff, $d3, $44, CHANNELER + $C8, $11 ; trainer
- db SPRITE_MEDIUM, $10 + 4, $9 + 4, $ff, $d3, $45, CHANNELER + $C8, $12 ; trainer
- db SPRITE_BALL, $e + 4, $6 + 4, $ff, $ff, $86, NUGGET ; item
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $3 ; POKEMONTOWER_4
- EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $12 ; POKEMONTOWER_6
+INCLUDE "data/mapObjects/pokemontower5.asm"
PokemonTower5Blocks: ; 60a89 (18:4a89)
INCBIN "maps/pokemontower5.blk"
-PokemonTower6_h: ; 0x60ae3 to 0x60aef (12 bytes) (id=147)
- db CEMETERY ; tileset
- db POKEMONTOWER_6_HEIGHT, POKEMONTOWER_6_WIDTH ; dimensions (y, x)
- dw PokemonTower6Blocks, PokemonTower6TextPointers, PokemonTower6Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower6Object ; objects
-
-PokemonTower6Script: ; 60aef (18:4aef)
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower6TrainerHeaders
- ld de, PokemonTower6ScriptPointers
- ld a, [W_POKEMONTOWER6CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_POKEMONTOWER6CURSCRIPT], a
- ret
-
-Func_60b02: ; 60b02 (18:4b02)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_POKEMONTOWER6CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower6ScriptPointers: ; 60b0d (18:4b0d)
- dw PokemonTower6Script0
- dw Func_324c
- dw EndTrainerBattle
- dw PokemonTower6Script3
- dw PokemonTower6Script4
-
-PokemonTower6Script0: ; 60b17 (18:4b17)
- ld a, [$d768]
- bit 7, a
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_60b45 ; $4b45
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $91
- ld [W_CUROPPONENT], a ; $d059
- ld a, $1e
- ld [W_CURENEMYLVL], a ; $d127
- ld a, $4
- ld [W_POKEMONTOWER6CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CoordsData_60b45: ; 60b45 (18:4b45)
- db $10,$0A,$FF
-
-PokemonTower6Script4: ; 60b48 (18:4b48)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_60b02
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, [$d72d]
- bit 6, a
- ret nz
- call UpdateSprites
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, [$cf0b]
- and a
- jr nz, .asm_60b82
- ld hl, $d768
- set 7, [hl]
- ld a, $7
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_POKEMONTOWER6CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-.asm_60b82
- ld a, $1
- ld [$cd38], a
- ld a, $10
- ld [$ccd3], a
- xor a
- ld [$c206], a
- ld [$cd3b], a
- ld hl, $d730
- set 7, [hl]
- ld a, $3
- ld [W_POKEMONTOWER6CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower6Script3: ; 60ba1 (18:4ba1)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [W_POKEMONTOWER6CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower6TextPointers: ; 60bb1 (18:4bb1)
- dw PokemonTower6Text1
- dw PokemonTower6Text2
- dw PokemonTower6Text3
- dw Predef5CText
- dw Predef5CText
- dw PokemonTower6Text6
- dw PokemonTower6Text7
-
-PokemonTower6TrainerHeaders: ; 60bbf (18:4bbf)
-PokemonTower6TrainerHeader0: ; 60bbf (18:4bbf)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d768 ; flag's byte
- dw PokemonTower6BattleText1 ; 0x4c29 TextBeforeBattle
- dw PokemonTower6AfterBattleText1 ; 0x4c33 TextAfterBattle
- dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle
- dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle
-
-PokemonTower6TrainerHeader1: ; 60bcb (18:4bcb)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d768 ; flag's byte
- dw PokemonTower6BattleText2 ; 0x4c38 TextBeforeBattle
- dw PokemonTower6AfterBattleText2 ; 0x4c42 TextAfterBattle
- dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle
- dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle
-
-PokemonTower6TrainerHeader2: ; 60bd7 (18:4bd7)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d768 ; flag's byte
- dw PokemonTower6BattleText3 ; 0x4c47 TextBeforeBattle
- dw PokemonTower6AfterBattleText3 ; 0x4c51 TextAfterBattle
- dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle
- dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle
-
- db $ff
-
-PokemonTower6Text1: ; 60be4 (18:4be4)
- db $08 ; asm
- ld hl, PokemonTower6TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower6Text2: ; 60bee (18:4bee)
- db $08 ; asm
- ld hl, PokemonTower6TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower6Text3: ; 60bf8 (18:4bf8)
- db $08 ; asm
- ld hl, PokemonTower6TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower6Text7: ; 60c02 (18:4c02)
- db $8
- ld hl, UnnamedText_60c1f
- call PrintText
- ld a, MAROWAK
- call PlayCry
- call WaitForSoundToFinish
- ld c, $1e
- call DelayFrames
- ld hl, UnnamedText_60c24
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_60c1f: ; 60c1f (18:4c1f)
- TX_FAR _UnnamedText_60c1f
- db "@"
+INCLUDE "data/mapHeaders/pokemontower6.asm"
-UnnamedText_60c24: ; 60c24 (18:4c24)
- TX_FAR _UnnamedText_60c24
- db "@"
+INCLUDE "scripts/pokemontower6.asm"
-PokemonTower6BattleText1: ; 60c29 (18:4c29)
- TX_FAR _PokemonTower6BattleText1
- db "@"
-
-PokemonTower6EndBattleText1: ; 60c2e (18:4c2e)
- TX_FAR _PokemonTower6EndBattleText1
- db "@"
-
-PokemonTower6AfterBattleText1: ; 60c33 (18:4c33)
- TX_FAR _PokemonTower6AfterBattleText1
- db "@"
-
-PokemonTower6BattleText2: ; 60c38 (18:4c38)
- TX_FAR _PokemonTower6BattleText2
- db "@"
-
-PokemonTower6EndBattleText2: ; 60c3d (18:4c3d)
- TX_FAR _PokemonTower6EndBattleText2
- db "@"
-
-PokemonTower6AfterBattleText2: ; 60c42 (18:4c42)
- TX_FAR _PokemonTower6AfterBattleText2
- db "@"
-
-PokemonTower6BattleText3: ; 60c47 (18:4c47)
- TX_FAR _PokemonTower6BattleText3
- db "@"
-
-PokemonTower6EndBattleText3: ; 60c4c (18:4c4c)
- TX_FAR _PokemonTower6EndBattleText3
- db "@"
-
-PokemonTower6AfterBattleText3: ; 60c51 (18:4c51)
- TX_FAR _PokemonTower6AfterBattleText3
- db "@"
-
-PokemonTower6Text6: ; 60c56 (18:4c56)
- TX_FAR _UnnamedText_60c56
- db "@"
-
-PokemonTower6Object: ; 0x60c5b (size=58)
- db $1 ; border tile
-
- db $2 ; warps
- db $9, $12, $1, POKEMONTOWER_5
- db $10, $9, $0, POKEMONTOWER_7
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_MEDIUM, $a + 4, $c + 4, $ff, $d3, $41, CHANNELER + $C8, $13 ; trainer
- db SPRITE_MEDIUM, $5 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $14 ; trainer
- db SPRITE_MEDIUM, $5 + 4, $10 + 4, $ff, $d2, $43, CHANNELER + $C8, $15 ; trainer
- db SPRITE_BALL, $8 + 4, $6 + 4, $ff, $ff, $84, RARE_CANDY ; item
- db SPRITE_BALL, $e + 4, $e + 4, $ff, $ff, $85, X_ACCURACY ; item
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_6_WIDTH, $9, $12 ; POKEMONTOWER_5
- EVENT_DISP POKEMONTOWER_6_WIDTH, $10, $9 ; POKEMONTOWER_7
+INCLUDE "data/mapObjects/pokemontower6.asm"
PokemonTower6Blocks: ; 60c95 (18:4c95)
INCBIN "maps/pokemontower6.blk"
INCBIN "maps/unusedblocks60cef.blk"
-PokemonTower7_h: ; 0x60cf9 to 0x60d05 (12 bytes) (id=148)
- db CEMETERY ; tileset
- db POKEMONTOWER_7_HEIGHT, POKEMONTOWER_7_WIDTH ; dimensions (y, x)
- dw PokemonTower7Blocks, PokemonTower7TextPointers, PokemonTower7Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower7Object ; objects
-
-PokemonTower7Script: ; 60d05 (18:4d05)
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower7TrainerHeaders
- ld de, PokemonTower7ScriptPointers
- ld a, [W_POKEMONTOWER7CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_POKEMONTOWER7CURSCRIPT], a
- ret
-
-Func_60d18: ; 60d18 (18:4d18)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_POKEMONTOWER7CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower7ScriptPointers: ; 60d23 (18:4d23)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw PokemonTower7Script2
- dw PokemonTower7Script3
- dw PokemonTower7Script4
-
-PokemonTower7Script2: ; 60d23 (18:4d23)
- ld hl, wFlags_0xcd60
- res 0, [hl]
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_60d18
- call EndTrainerBattle
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, [$cf13]
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- call Func_60db6
- ld a, $3
- ld [W_POKEMONTOWER7CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower7Script3: ; 60d56 (18:4d56)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld hl, W_MISSABLEOBJECTLIST
- ld a, [$cf13]
- ld b, a
-.missableObjectsListLoop
- ld a, [hli]
- cp b ; search for sprite ID in missing objects list
- ld a, [hli]
- jr nz, .missableObjectsListLoop
- ld [$cc4d], a ; remove missable object
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [$cf13], a
- ld [wTrainerHeaderFlagBit], a
- ld [$da38], a
- ld a, $0
- ld [W_POKEMONTOWER7CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-PokemonTower7Script4: ; 60d86 (18:4d86)
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $43
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- ld a, $4
- ld [$c109], a
- ld a, $95
- ld [H_DOWNARROWBLINKCNT1], a ; $ff8b
- ld a, $1
- ld [$d42f], a
- ld a, LAVENDER_TOWN
- ld [wLastMap], a
- ld hl, $d72d
- set 3, [hl]
- ld a, $0
- ld [W_POKEMONTOWER7CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-Func_60db6: ; 60db6 (18:4db6)
- ld hl, CoordsData_60de3 ; $4de3
- ld a, [$cf13]
- dec a
- swap a
- ld d, $0
- ld e, a
- add hl, de
- ld a, [W_YCOORD] ; $d361
- ld b, a
- ld a, [W_XCOORD] ; $d362
- ld c, a
-.asm_60dcb
- ld a, [hli]
- cp b
- jr nz, .asm_60dde
- ld a, [hli]
- cp c
- jr nz, .asm_60ddf
- ld a, [hli]
- ld d, [hl]
- ld e, a
- ld a, [$cf13]
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp MoveSprite
-.asm_60dde
- inc hl
-.asm_60ddf
- inc hl
- inc hl
- jr .asm_60dcb
-
-CoordsData_60de3: ; 60de3 (18:4de3)
- db $0C,$09
- dw MovementData_60e13
- db $0B,$0A
- dw MovementData_60e1b
- db $0B,$0B
- dw MovementData_60e22
- db $0B,$0C
- dw MovementData_60e22
- db $0A,$0C
- dw MovementData_60e28
- db $09,$0B
- dw MovementData_60e30
- db $09,$0A
- dw MovementData_60e22
- db $09,$09
- dw MovementData_60e22
- db $08,$09
- dw MovementData_60e37
- db $07,$0A
- dw MovementData_60e22
- db $07,$0B
- dw MovementData_60e22
- db $07,$0C
- dw MovementData_60e22
-
-MovementData_60e13: ; 60e13
- db $C0,$00,$00,$00,$00,$00,$80,$FF
-
-MovementData_60e1b: ; 60e1b
- db $00,$C0,$00,$00,$00,$00,$FF
-
-MovementData_60e22: ; 60e22
- db $00,$00,$00,$00,$00,$FF
-
-MovementData_60e28: ; 60e28
- db $80,$00,$00,$00,$00,$00,$00,$FF
-
-MovementData_60e30: ; 60e30
- db $00,$00,$00,$80,$00,$00,$FF
-
-MovementData_60e37: ; 60e37
- db $C0,$00,$00,$00,$00,$00,$00,$FF
-
-PokemonTower7TextPointers: ; 60e3f (18:4e3f)
- dw PokemonTower7Text1
- dw PokemonTower7Text2
- dw PokemonTower7Text3
- dw PokemonTower7Text4
-
-PokemonTower7TrainerHeaders: ; 60e47 (18:4e47)
-PokemonTower7TrainerHeader0: ; 60e47 (18:4e47)
- db $1 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d769 ; flag's byte
- dw PokemonTower7BattleText1 ; 0x4ec9 TextBeforeBattle
- dw PokemonTower7AfterBattleText1 ; 0x4ed3 TextAfterBattle
- dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
- dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
-
-PokemonTower7TrainerHeader1: ; 60e53 (18:4e53)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d769 ; flag's byte
- dw PokemonTower7BattleText2 ; 0x4ed8 TextBeforeBattle
- dw PokemonTower7AfterBattleText2 ; 0x4ee2 TextAfterBattle
- dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
- dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
-
-PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d769 ; flag's byte
- dw PokemonTower7BattleText3 ; 0x4ee7 TextBeforeBattle
- dw PokemonTower7AfterBattleText3 ; 0x4ef1 TextAfterBattle
- dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
- dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
+INCLUDE "data/mapHeaders/pokemontower7.asm"
- db $ff
+INCLUDE "scripts/pokemontower7.asm"
-PokemonTower7Text1: ; 60e6c (18:4e6c)
- db $08 ; asm
- ld hl, PokemonTower7TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower7Text2: ; 60e76 (18:4e76)
- db $08 ; asm
- ld hl, PokemonTower7TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower7Text3: ; 60e80 (18:4e80)
- db $08 ; asm
- ld hl, PokemonTower7TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower7Text4: ; 60e8a (18:4e8a)
- db $08 ; asm
- ld hl, UnnamedText_60ec4
- call PrintText
- ld hl, $d7e0
- set 7, [hl]
- ld hl, $d769
- set 7, [hl]
- ld a, $44
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, $17
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $18
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, $4
- ld [W_POKEMONTOWER7CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jp TextScriptEnd
-
-UnnamedText_60ec4: ; 60ec4 (18:4ec4)
- TX_FAR _UnnamedText_60ec4
- db "@"
-
-PokemonTower7BattleText1: ; 60ec9 (18:4ec9)
- TX_FAR _PokemonTower7BattleText1
- db "@"
-
-PokemonTower7EndBattleText1: ; 60ece (18:4ece)
- TX_FAR _PokemonTower7EndBattleText1
- db "@"
-
-PokemonTower7AfterBattleText1: ; 60ed3 (18:4ed3)
- TX_FAR _PokemonTower7AfterBattleText1
- db "@"
-
-PokemonTower7BattleText2: ; 60ed8 (18:4ed8)
- TX_FAR _PokemonTower7BattleText2
- db "@"
-
-PokemonTower7EndBattleText2: ; 60edd (18:4edd)
- TX_FAR _PokemonTower7EndBattleText2
- db "@"
-
-PokemonTower7AfterBattleText2: ; 60ee2 (18:4ee2)
- TX_FAR _PokemonTower7AfterBattleText2
- db "@"
-
-PokemonTower7BattleText3: ; 60ee7 (18:4ee7)
- TX_FAR _PokemonTower7BattleText3
- db "@"
-
-PokemonTower7EndBattleText3: ; 60eec (18:4eec)
- TX_FAR _PokemonTower7EndBattleText3
- db "@"
-
-PokemonTower7AfterBattleText3: ; 60ef1 (18:4ef1)
- TX_FAR _PokemonTower7AfterBattleText3
- db "@"
-
-PokemonTower7Object: ; 0x60ef6 (size=42)
- db $1 ; border tile
-
- db $1 ; warps
- db $10, $9, $1, POKEMONTOWER_6
-
- db $0 ; signs
-
- db $4 ; people
- db SPRITE_ROCKET, $b + 4, $9 + 4, $ff, $d3, $41, ROCKET + $C8, $13 ; trainer
- db SPRITE_ROCKET, $9 + 4, $c + 4, $ff, $d2, $42, ROCKET + $C8, $14 ; trainer
- db SPRITE_ROCKET, $7 + 4, $9 + 4, $ff, $d3, $43, ROCKET + $C8, $15 ; trainer
- db SPRITE_MR_FUJI, $3 + 4, $a + 4, $ff, $d0, $4 ; person
-
- ; warp-to
- EVENT_DISP POKEMONTOWER_7_WIDTH, $10, $9 ; POKEMONTOWER_6
+INCLUDE "data/mapObjects/pokemontower7.asm"
PokemonTower7Blocks: ; 60f20 (18:4f20)
INCBIN "maps/pokemontower7.blk"
-CeladonMart1_h: ; 0x60f7a to 0x60f86 (12 bytes) (id=122)
- db LOBBY ; tileset
- db CELADON_MART_1_HEIGHT, CELADON_MART_1_WIDTH ; dimensions (y, x)
- dw CeladonMart1Blocks, CeladonMart1TextPointers, CeladonMart1Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart1Object ; objects
-
-CeladonMart1Script: ; 60f86 (18:4f86)
- jp EnableAutoTextBoxDrawing
-
-CeladonMart1TextPointers: ; 60f89 (18:4f89)
- dw CeladonMart1Text1
- dw CeladonMart1Text2
- dw CeladonMart1Text3
-
-CeladonMart1Text1: ; 60f8f (18:4f8f)
- TX_FAR _CeladonMart1Text1
- db "@"
-
-CeladonMart1Text2: ; 60f94 (18:4f94)
- TX_FAR _CeladonMart1Text2
- db "@"
-
-CeladonMart1Text3: ; 60f99 (18:4f99)
- TX_FAR _CeladonMart1Text3
- db "@"
-
-CeladonMart1Object: ; 0x60f9e (size=64)
- db $f ; border tile
-
- db $6 ; warps
- db $7, $2, $0, $ff
- db $7, $3, $0, $ff
- db $7, $10, $1, $ff
- db $7, $11, $1, $ff
- db $1, $c, $0, CELADON_MART_2
- db $1, $1, $0, CELADON_MART_ELEVATOR
+INCLUDE "data/mapHeaders/celadonmart1.asm"
- db $2 ; signs
- db $4, $b, $2 ; CeladonMart1Text2
- db $1, $e, $3 ; CeladonMart1Text3
+INCLUDE "scripts/celadonmart1.asm"
- db $1 ; people
- db SPRITE_CABLE_CLUB_WOMAN, $3 + 4, $8 + 4, $ff, $d0, $1 ; person
-
- ; warp-to
- EVENT_DISP CELADON_MART_1_WIDTH, $7, $2
- EVENT_DISP CELADON_MART_1_WIDTH, $7, $3
- EVENT_DISP CELADON_MART_1_WIDTH, $7, $10
- EVENT_DISP CELADON_MART_1_WIDTH, $7, $11
- EVENT_DISP CELADON_MART_1_WIDTH, $1, $c ; CELADON_MART_2
- EVENT_DISP CELADON_MART_1_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR
+INCLUDE "data/mapObjects/celadonmart1.asm"
CeladonMart1Blocks: ; 60fde (18:4fde)
INCBIN "maps/celadonmart1.blk"
@@ -95437,42 +48666,42 @@ GiveFossilToCinnabarLab: ; 61006 (18:5006)
ld a, b
ld [W_FOSSILMON], a
call LoadFossilItemAndMonName
- ld hl, UnnamedText_610ae
+ ld hl, LabFossil_610ae
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem] ; $cc26
and a
jr nz, .asm_610a7
- ld hl, UnnamedText_610b3
+ ld hl, LabFossil_610b3
call PrintText
ld a, [W_FOSSILITEM]
ld [$ffdb], a
callba RemoveItemByID
- ld hl, UnnamedText_610b8
+ ld hl, LabFossil_610b8
call PrintText
ld hl, $d7a3
set 0, [hl]
set 1, [hl]
ret
.asm_610a7
- ld hl, UnnamedText_610bd
+ ld hl, LabFossil_610bd
call PrintText
ret
-UnnamedText_610ae: ; 610ae (18:50ae)
- TX_FAR _UnnamedText_610ae
+LabFossil_610ae: ; 610ae (18:50ae)
+ TX_FAR _Lab4Text_610ae
db "@"
-UnnamedText_610b3: ; 610b3 (18:50b3)
- TX_FAR _UnnamedText_610b3
+LabFossil_610b3: ; 610b3 (18:50b3)
+ TX_FAR _Lab4Text_610b3
db "@"
-UnnamedText_610b8: ; 610b8 (18:50b8)
- TX_FAR _UnnamedText_610b8
+LabFossil_610b8: ; 610b8 (18:50b8)
+ TX_FAR _Lab4Text_610b8
db "@"
-UnnamedText_610bd: ; 610bd (18:50bd)
- TX_FAR _UnnamedText_610bd
+LabFossil_610bd: ; 610bd (18:50bd)
+ TX_FAR _Lab4Text_610bd
db "@"
Func_610c2: ; 610c2 (18:50c2)
@@ -95509,2112 +48738,113 @@ LoadFossilItemAndMonName: ; 610eb (18:50eb)
call GetItemName
ret
-ViridianForest_h: ; 0x61101 to 0x6110d (12 bytes) (id=51)
- db FOREST ; tileset
- db VIRIDIAN_FOREST_HEIGHT, VIRIDIAN_FOREST_WIDTH ; dimensions (y, x)
- dw ViridianForestBlocks, ViridianForestTextPointers, ViridianForestScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianForestObject ; objects
-
-ViridianForestScript: ; 6110d (18:510d)
- call EnableAutoTextBoxDrawing
- ld hl, ViridianForestTrainerHeaders
- ld de, ViridianForestScriptPointers
- ld a, [W_VIRIDIANFORESTCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_VIRIDIANFORESTCURSCRIPT], a
- ret
-
-ViridianForestScriptPointers: ; 61120 (18:5120)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-ViridianForestTextPointers: ; 61126 (18:5126)
- dw ViridianForestText1
- dw ViridianForestText2
- dw ViridianForestText3
- dw ViridianForestText4
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
- dw ViridianForestText8
- dw ViridianForestText9
- dw ViridianForestText10
- dw ViridianForestText11
- dw ViridianForestText12
- dw ViridianForestText13
- dw ViridianForestText14
-
-ViridianForestTrainerHeaders: ; 61142 (18:5142)
-ViridianForestTrainerHeader0: ; 61142 (18:5142)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f3 ; flag's byte
- dw ViridianForestBattleText1 ; 0x518a TextBeforeBattle
- dw ViridianForestAfterBattleText1 ; 0x5194 TextAfterBattle
- dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle
- dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle
-
-ViridianForestTrainerHeader1: ; 6114e (18:514e)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d7f3 ; flag's byte
- dw ViridianForestBattleText2 ; 0x5199 TextBeforeBattle
- dw ViridianForestAfterBattleText2 ; 0x51a3 TextAfterBattle
- dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle
- dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle
-
-ViridianForestTrainerHeader2: ; 6115a (18:515a)
- db $4 ; flag's bit
- db ($1 << 4) ; trainer's view range
- dw $d7f3 ; flag's byte
- dw ViridianForestBattleText3 ; 0x51a8 TextBeforeBattle
- dw ViridianForestAfterBattleText3 ; 0x51b2 TextAfterBattle
- dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle
- dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle
-
- db $ff
-
-ViridianForestText1: ; 61167 (18:5167)
- TX_FAR _ViridianForestText1
- db "@"
-
-ViridianForestText2: ; 6116c (18:516c)
- db $08 ; asm
- ld hl, ViridianForestTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/viridianforest.asm"
-ViridianForestText3: ; 61176 (18:5176)
- db $08 ; asm
- ld hl, ViridianForestTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/viridianforest.asm"
-ViridianForestText4: ; 61180 (18:5180)
- db $08 ; asm
- ld hl, ViridianForestTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "data/mapObjects/viridianforest.asm"
-ViridianForestBattleText1: ; 6118a (18:518a)
- TX_FAR _ViridianForestBattleText1
- db "@"
+INCLUDE "data/mapHeaders/ssanne1.asm"
-ViridianForestEndBattleText1: ; 6118f (18:518f)
- TX_FAR _ViridianForestEndBattleText1
- db "@"
+INCLUDE "scripts/ssanne1.asm"
-ViridianForestAfterBattleText1: ; 61194 (18:5194)
- TX_FAR _ViridianFrstAfterBattleText1
- db "@"
-
-ViridianForestBattleText2: ; 61199 (18:5199)
- TX_FAR _ViridianForestBattleText2
- db "@"
-
-ViridianForestEndBattleText2: ; 6119e (18:519e)
- TX_FAR _ViridianForestEndBattleText2
- db "@"
-
-ViridianForestAfterBattleText2: ; 611a3 (18:51a3)
- TX_FAR _ViridianFrstAfterBattleText2
- db "@"
-
-ViridianForestBattleText3: ; 611a8 (18:51a8)
- TX_FAR _ViridianForestBattleText3
- db "@"
-
-ViridianForestEndBattleText3: ; 611ad (18:51ad)
- TX_FAR _ViridianForestEndBattleText3
- db "@"
-
-ViridianForestAfterBattleText3: ; 611b2 (18:51b2)
- TX_FAR _ViridianFrstAfterBattleText3
- db "@"
-
-ViridianForestText8: ; 611b7 (18:51b7)
- TX_FAR _ViridianForestText8
- db "@"
-
-ViridianForestText9: ; 611bc (18:51bc)
- TX_FAR _ViridianForestText9
- db "@"
-
-ViridianForestText10: ; 611c1 (18:51c1)
- TX_FAR _ViridianForestText10
- db "@"
-
-ViridianForestText11: ; 611c6 (18:51c6)
- TX_FAR _ViridianForestText11
- db "@"
-
-ViridianForestText12: ; 611cb (18:51cb)
- TX_FAR _ViridianForestText12
- db "@"
-
-ViridianForestText13: ; 611d0 (18:51d0)
- TX_FAR _ViridianForestText13
- db "@"
-
-ViridianForestText14: ; 611d5 (18:51d5)
- TX_FAR _ViridianForestText14
- db "@"
-
-ViridianForestObject: ; 0x611da (size=127)
- db $3 ; border tile
-
- db $6 ; warps
- db $0, $1, $2, VIRIDIAN_FOREST_EXIT
- db $0, $2, $3, VIRIDIAN_FOREST_EXIT
- db $2f, $f, $1, VIRIDIAN_FOREST_ENTRANCE
- db $2f, $10, $1, VIRIDIAN_FOREST_ENTRANCE
- db $2f, $11, $1, VIRIDIAN_FOREST_ENTRANCE
- db $2f, $12, $1, VIRIDIAN_FOREST_ENTRANCE
-
- db $6 ; signs
- db $28, $18, $9 ; ViridianForestText9
- db $20, $10, $a ; ViridianForestText10
- db $11, $1a, $b ; ViridianForestText11
- db $18, $4, $c ; ViridianForestText12
- db $2d, $12, $d ; ViridianForestText13
- db $1, $2, $e ; ViridianForestText14
-
- db $8 ; people
- db SPRITE_BUG_CATCHER, $2b + 4, $10 + 4, $ff, $ff, $1 ; person
- db SPRITE_BUG_CATCHER, $21 + 4, $1e + 4, $ff, $d2, $42, BUG_CATCHER + $C8, $1 ; trainer
- db SPRITE_BUG_CATCHER, $13 + 4, $1e + 4, $ff, $d2, $43, BUG_CATCHER + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $12 + 4, $2 + 4, $ff, $d2, $44, BUG_CATCHER + $C8, $3 ; trainer
- db SPRITE_BALL, $b + 4, $19 + 4, $ff, $ff, $85, ANTIDOTE ; item
- db SPRITE_BALL, $1d + 4, $c + 4, $ff, $ff, $86, POTION ; item
- db SPRITE_BALL, $1f + 4, $1 + 4, $ff, $ff, $87, POKE_BALL ; item
- db SPRITE_BUG_CATCHER, $28 + 4, $1b + 4, $ff, $ff, $8 ; person
-
- ; warp-to
- EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $1 ; VIRIDIAN_FOREST_EXIT
- EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $2 ; VIRIDIAN_FOREST_EXIT
- EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $f ; VIRIDIAN_FOREST_ENTRANCE
- EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $10 ; VIRIDIAN_FOREST_ENTRANCE
- EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $11 ; VIRIDIAN_FOREST_ENTRANCE
- EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $12 ; VIRIDIAN_FOREST_ENTRANCE
-
-SSAnne1_h: ; 0x61259 to 0x61265 (12 bytes) (id=95)
- db SHIP ; tileset
- db SS_ANNE_1_HEIGHT, SS_ANNE_1_WIDTH ; dimensions (y, x)
- dw SSAnne1Blocks, SSAnne1TextPointers, SSAnne1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne1Object ; objects
-
-SSAnne1Script: ; 61265 (18:5265)
- call EnableAutoTextBoxDrawing
- ret
-
-SSAnne1TextPointers: ; 61269 (18:5269)
- dw SSAnne1Text1
- dw SSAnne1Text2
-
-SSAnne1Text1: ; 6126d (18:526d)
- TX_FAR _SSAnne1Text1
- db "@"
-
-SSAnne1Text2: ; 61272 (18:5272)
- TX_FAR _SSAnne1Text2
- db "@"
-
-SSAnne1Object: ; 0x61277 (size=104)
- db $c ; border tile
-
- db $b ; warps
- db $0, $1a, $1, VERMILION_DOCK
- db $0, $1b, $1, VERMILION_DOCK
- db $8, $1f, $0, SS_ANNE_8
- db $8, $17, $1, SS_ANNE_8
- db $8, $13, $2, SS_ANNE_8
- db $8, $f, $3, SS_ANNE_8
- db $8, $b, $4, SS_ANNE_8
- db $8, $7, $5, SS_ANNE_8
- db $6, $2, $6, SS_ANNE_2
- db $f, $25, $5, SS_ANNE_4
- db $10, $3, $0, SS_ANNE_6
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_WAITER, $6 + 4, $c + 4, $fe, $2, $1 ; person
- db SPRITE_SAILOR, $5 + 4, $1b + 4, $ff, $ff, $2 ; person
-
- ; warp-to
- EVENT_DISP SS_ANNE_1_WIDTH, $0, $1a ; VERMILION_DOCK
- EVENT_DISP SS_ANNE_1_WIDTH, $0, $1b ; VERMILION_DOCK
- EVENT_DISP SS_ANNE_1_WIDTH, $8, $1f ; SS_ANNE_8
- EVENT_DISP SS_ANNE_1_WIDTH, $8, $17 ; SS_ANNE_8
- EVENT_DISP SS_ANNE_1_WIDTH, $8, $13 ; SS_ANNE_8
- EVENT_DISP SS_ANNE_1_WIDTH, $8, $f ; SS_ANNE_8
- EVENT_DISP SS_ANNE_1_WIDTH, $8, $b ; SS_ANNE_8
- EVENT_DISP SS_ANNE_1_WIDTH, $8, $7 ; SS_ANNE_8
- EVENT_DISP SS_ANNE_1_WIDTH, $6, $2 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_1_WIDTH, $f, $25 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_1_WIDTH, $10, $3 ; SS_ANNE_6
+INCLUDE "data/mapObjects/ssanne1.asm"
SSAnne1Blocks: ; 612df (18:52df)
INCBIN "maps/ssanne1.blk"
-SSAnne2_h: ; 0x61393 to 0x6139f (12 bytes) (id=96)
- db SHIP ; tileset
- db SS_ANNE_2_HEIGHT, SS_ANNE_2_WIDTH ; dimensions (y, x)
- dw SSAnne2Blocks, SSAnne2TextPointers, SSAnne2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne2Object ; objects
-
-SSAnne2Script: ; 6139f (18:539f)
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne2ScriptPointers
- ld a, [W_SSANNE2CURSCRIPT]
- jp CallFunctionInTable
-
-SSAnne2Script_613ab: ; 613ab (18:53ab)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_SSANNE2CURSCRIPT], a
- ret
-
-SSAnne2ScriptPointers: ; 613b3 (18:53b3)
- dw SSAnne2Script0
- dw SSAnne2Script1
- dw SSAnne2Script2
- dw SSAnne2Script3
- dw SSAnne2Script4
-
-SSAnne2Script4: ; 613bd (18:53bd)
- ret
-
-SSAnne2Script0: ; 613be (18:53be)
- ld hl, CoordsData_61411 ; $5411
- call ArePlayerCoordsInArray
- ret nc
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, [$cd3d]
- ld [$ffdb], a
- ld a, $71
- ld [$cc4d], a
- ld a, $15
- call Predef
- call Delay3
- ld a, $2
- ld [$ff8c], a
- call SetSpriteMovementBytesToFF
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, [$ffdb]
- cp $2
- jr nz, .asm_61400 ; 0x613f9 $5
- ld de, MovementData_6140c
- jr .asm_61403 ; 0x613fe $3
-.asm_61400
- ld de, MovementData_6140d
-.asm_61403
- call MoveSprite
- ld a, $1
- ld [W_SSANNE2CURSCRIPT], a
- ret
-
-MovementData_6140c: ; 6140c (18:540c)
- db $00
+INCLUDE "data/mapHeaders/ssanne2.asm"
-MovementData_6140d: ; 6140d (18:540d)
- db $00,$00,$00,$FF
+INCLUDE "scripts/ssanne2.asm"
-CoordsData_61411: ; 61411 (18:5411)
- db $08,$24,$08,$25,$FF
-
-Func_61416: ; 61416 (18:5416)
- ld a, [W_XCOORD] ; $d362
- cp $25
- jr nz, .asm_61426
- ld a, $2
- ld [$d528], a
- ld a, $c
- jr .asm_61427
-.asm_61426
- xor a
-.asm_61427
- ld [$ff8d], a
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp Func_34a6
-
-SSAnne2Script1: ; 61430 (18:5430)
- ld a, [$d730]
- bit 0, a
- ret nz
- call Func_61416
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $2
- ld [$ff8c], a
- call DisplayTextID
- call Delay3
- ld a, $f2
- ld [$d059], a
-
- ; select which team to use during the encounter
- ld a, [W_RIVALSTARTER]
- cp SQUIRTLE
- jr nz, .NotSquirtle ; 0x61451 $4
- ld a, $1
- jr .done
-.NotSquirtle
- cp BULBASAUR
- jr nz, .Charmander ; 0x61459 $4
- ld a, $2
- jr .done
-.Charmander
- ld a, $3
-.done
- ld [W_TRAINERNO], a
-
- call Func_61416
- ld a, $2
- ld [W_SSANNE2CURSCRIPT], a
- ret
-
-SSAnne2Script2: ; 6146d (18:546d)
- ld a, [$d057]
- cp $ff
- jp z, SSAnne2Script_613ab
- call Func_61416
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $3
- ld [$ff8c], a
- call DisplayTextID
- ld a, $2
- ld [$ff8c], a
- call SetSpriteMovementBytesToFF
- ld a, [$d362]
- cp $25
- jr nz, .asm_61497 ; 0x61490 $5
- ld de, MovementData_614b9
- jr .asm_6149a ; 0x61495 $3
-.asm_61497
- ld de, MovementData_614b7
-.asm_6149a
- ld a, $2
- ld [$ff8c], a
- call MoveSprite
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- callba Music_RivalAlternateStart
- ld a, $3
- ld [W_SSANNE2CURSCRIPT], a
- ret
-
-MovementData_614b7: ; 614b7 (18:54b7)
- db $C0,$00
-
-MovementData_614b9: ; 614b9 (18:54b9)
- db $00,$00,$00,$00,$FF
-
-SSAnne2Script3: ; 614be (18:54be)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $71
- ld [$cc4d], a
- ld a, $11
- call Predef
- call Func_2307
- ld a, $4
- ld [W_SSANNE2CURSCRIPT], a
- ret
-
-SSAnne2TextPointers: ; 614db (18:54db)
- dw SSAnne2Text1
- dw SSAnne2Text2
- dw SSAnne2Text3
-
-SSAnne2Text1: ; 614e1 (18:54e1)
- TX_FAR _SSAnne2Text1
- db "@"
-
-SSAnne2Text2: ; 614e6 (18:54e6)
- db $8
- ld hl, SSAnneRivalBeforeBattleText
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SSAnneRivalDefeatedText
- ld de, SSAnneRivalWonText
- call PreBattleSaveRegisters
- jp TextScriptEnd
-
-SSAnneRivalBeforeBattleText: ; 61500 (18:5500)
- TX_FAR _SSAnneRivalBeforeBattleText
- db "@"
-
-SSAnneRivalDefeatedText: ; 61505 (18:5505)
- TX_FAR _SSAnneRivalDefeatedText
- db "@"
-
-SSAnneRivalWonText: ; 6150a (18:550a)
- TX_FAR _SSAnneRivalWonText
- db "@"
-
-SSAnne2Text3: ; 6150f (18:550f)
- TX_FAR _SSAnneRivalCaptainText
- db "@"
-
-SSAnne2Object: ; 0x61514 (size=90)
- db $c ; border tile
-
- db $9 ; warps
- db $b, $9, $0, SS_ANNE_9
- db $b, $d, $2, SS_ANNE_9
- db $b, $11, $4, SS_ANNE_9
- db $b, $15, $6, SS_ANNE_9
- db $b, $19, $8, SS_ANNE_9
- db $b, $1d, $a, SS_ANNE_9
- db $4, $2, $8, SS_ANNE_1
- db $c, $2, $1, SS_ANNE_3
- db $4, $24, $0, SS_ANNE_7
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_WAITER, $7 + 4, $3 + 4, $fe, $1, $1 ; person
- db SPRITE_BLUE, $4 + 4, $24 + 4, $ff, $d0, $42, SONY1 + $C8, $1 ; trainer
-
- ; warp-to
- EVENT_DISP SS_ANNE_2_WIDTH, $b, $9 ; SS_ANNE_9
- EVENT_DISP SS_ANNE_2_WIDTH, $b, $d ; SS_ANNE_9
- EVENT_DISP SS_ANNE_2_WIDTH, $b, $11 ; SS_ANNE_9
- EVENT_DISP SS_ANNE_2_WIDTH, $b, $15 ; SS_ANNE_9
- EVENT_DISP SS_ANNE_2_WIDTH, $b, $19 ; SS_ANNE_9
- EVENT_DISP SS_ANNE_2_WIDTH, $b, $1d ; SS_ANNE_9
- EVENT_DISP SS_ANNE_2_WIDTH, $4, $2 ; SS_ANNE_1
- EVENT_DISP SS_ANNE_2_WIDTH, $c, $2 ; SS_ANNE_3
- EVENT_DISP SS_ANNE_2_WIDTH, $4, $24 ; SS_ANNE_7
+INCLUDE "data/mapObjects/ssanne2.asm"
SSAnne2Blocks: ; 6156e (18:556e)
INCBIN "maps/ssanne2.blk"
-SSAnne4_h: ; 0x61622 to 0x6162e (12 bytes) (id=98)
- db SHIP ; tileset
- db SS_ANNE_4_HEIGHT, SS_ANNE_4_WIDTH ; dimensions (y, x)
- dw SSAnne4Blocks, SSAnne4TextPointers, SSAnne4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne4Object ; objects
+INCLUDE "data/mapHeaders/ssanne4.asm"
-SSAnne4Script: ; 6162e (18:562e)
- jp EnableAutoTextBoxDrawing
+INCLUDE "scripts/ssanne4.asm"
-SSAnne4TextPointers: ; 61631 (18:5631)
- db "@"
-
-SSAnne4Object: ; 0x61632 (size=52)
- db $c ; border tile
-
- db $6 ; warps
- db $3, $17, $8, SS_ANNE_10
- db $3, $13, $6, SS_ANNE_10
- db $3, $f, $4, SS_ANNE_10
- db $3, $b, $2, SS_ANNE_10
- db $3, $7, $0, SS_ANNE_10
- db $5, $1b, $9, SS_ANNE_1
-
- db $0 ; signs
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP SS_ANNE_4_WIDTH, $3, $17 ; SS_ANNE_10
- EVENT_DISP SS_ANNE_4_WIDTH, $3, $13 ; SS_ANNE_10
- EVENT_DISP SS_ANNE_4_WIDTH, $3, $f ; SS_ANNE_10
- EVENT_DISP SS_ANNE_4_WIDTH, $3, $b ; SS_ANNE_10
- EVENT_DISP SS_ANNE_4_WIDTH, $3, $7 ; SS_ANNE_10
- EVENT_DISP SS_ANNE_4_WIDTH, $5, $1b ; SS_ANNE_1
+INCLUDE "data/mapObjects/ssanne4.asm"
SSAnne4Blocks: ; 61666 (18:5666)
INCBIN "maps/ssanne4.blk"
-SSAnne5_h: ; 0x616a2 to 0x616ae (12 bytes) (id=99)
- db SHIP ; tileset
- db SS_ANNE_5_HEIGHT, SS_ANNE_5_WIDTH ; dimensions (y, x)
- dw SSAnne5Blocks, SSAnne5TextPointers, SSAnne5Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne5Object ; objects
-
-SSAnne5Script: ; 616ae (18:56ae)
- call EnableAutoTextBoxDrawing
- ld hl, SSAnneTrainerHeader0 ; $56d1
- ld de, SSAnne5ScriptPointers
- ld a, [W_SSANNE5CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SSANNE5CURSCRIPT], a
- ret
-
-SSAnne5ScriptPointers: ; 616c1 (18:56c1)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SSAnne5TextPointers: ; 616c7 (18:56c7)
- dw SSAnne5Text1
- dw SSAnne5Text2
- dw SSAnne5Text3
- dw SSAnne5Text4
- dw SSAnne5Text5
-
-SSAnneTrainerHeaders: ; 616d1 (18:56d1)
-SSAnneTrainerHeader0: ; 616d1 (18:56d1)
- db $4 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7ff ; flag's byte
- dw SSAnneBattleText1 ; 0x5703 TextBeforeBattle
- dw SSAnneAfterBattleText1 ; 0x570d TextAfterBattle
- dw SSAnneEndBattleText1 ; 0x5708 TextEndBattle
- dw SSAnneEndBattleText1 ; 0x5708 TextEndBattle
-
-SSAnneTrainerHeader1: ; 616dd (18:56dd)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d7ff ; flag's byte
- dw SSAnneBattleText2 ; 0x571c TextBeforeBattle
- dw SSAnneAfterBattleText2 ; 0x5726 TextAfterBattle
- dw SSAnneEndBattleText2 ; 0x5721 TextEndBattle
- dw SSAnneEndBattleText2 ; 0x5721 TextEndBattle
-
- db $ff
-
-SSAnne5Text1: ; 616ea (18:56ea)
- TX_FAR _SSAnne5Text1
- db "@"
-
-SSAnne5Text2: ; 616ef (18:56ef)
- TX_FAR _SSAnne5Text2
- db "@"
-
-SSAnne5Text3: ; 616f4 (18:56f4)
- TX_FAR _SSAnne5Text3
- db "@"
-
-SSAnne5Text4: ; 616f9 (18:56f9)
- db $08 ; asm
- ld hl, SSAnneTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnneBattleText1: ; 61703 (18:5703)
- TX_FAR _SSAnneBattleText1
- db "@"
-
-SSAnneEndBattleText1: ; 61708 (18:5708)
- TX_FAR _SSAnneEndBattleText1
- db "@"
+INCLUDE "data/mapHeaders/ssanne5.asm"
-SSAnneAfterBattleText1: ; 6170d (18:570d)
- TX_FAR _SSAnneAfterBattleText1
- db "@"
-
-SSAnne5Text5: ; 61712 (18:5712)
- db $08 ; asm
- ld hl, SSAnneTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
+INCLUDE "scripts/ssanne5.asm"
-SSAnneBattleText2: ; 6171c (18:571c)
- TX_FAR _SSAnneBattleText2
- db "@"
-
-SSAnneEndBattleText2: ; 61721 (18:5721)
- TX_FAR _SSAnneEndBattleText2
- db "@"
-
-SSAnneAfterBattleText2: ; 61726 (18:5726)
- TX_FAR _SSAnneAfterBattleText2
- db "@"
-
-SSAnne5Object: ; 0x6172b (size=54)
- db $23 ; border tile
-
- db $2 ; warps
- db $6, $d, $0, SS_ANNE_3
- db $7, $d, $0, SS_ANNE_3
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $5 + 4, $ff, $d1, $1 ; person
- db SPRITE_SAILOR, $9 + 4, $4 + 4, $ff, $ff, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $7 + 4, $ff, $ff, $3 ; person
- db SPRITE_SAILOR, $4 + 4, $4 + 4, $ff, $d0, $44, SAILOR + $C8, $1 ; trainer
- db SPRITE_SAILOR, $8 + 4, $a + 4, $ff, $d1, $45, SAILOR + $C8, $2 ; trainer
-
- ; warp-to
- EVENT_DISP SS_ANNE_5_WIDTH, $6, $d ; SS_ANNE_3
- EVENT_DISP SS_ANNE_5_WIDTH, $7, $d ; SS_ANNE_3
+INCLUDE "data/mapObjects/ssanne5.asm"
SSAnne5Blocks: ; 61761 (18:5761)
INCBIN "maps/ssanne5.blk"
-SSAnne6_h: ; 0x617a7 to 0x617b3 (12 bytes) (id=100)
- db SHIP ; tileset
- db SS_ANNE_6_HEIGHT, SS_ANNE_6_WIDTH ; dimensions (y, x)
- dw SSAnne6Blocks, SSAnne6TextPointers, SSAnne6Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne6Object ; objects
+INCLUDE "data/mapHeaders/ssanne6.asm"
-SSAnne6Script: ; 617b3 (18:57b3)
- call EnableAutoTextBoxDrawing
- ret
+INCLUDE "scripts/ssanne6.asm"
-SSAnne6TextPointers: ; 617b7 (18:57b7)
- dw SSAnne6Text1
- dw SSAnne6Text2
- dw SSAnne6Text3
- dw SSAnne6Text4
- dw SSAnne6Text5
- dw SSAnne6Text6
- dw SSAnne6Text7
-
-SSAnne6Text1: ; 617c5 (18:57c5)
- TX_FAR _SSAnne6Text1
- db "@"
-
-SSAnne6Text2: ; 617ca (18:57ca)
- TX_FAR _SSAnne6Text2
- db "@"
-
-SSAnne6Text3: ; 617cf (18:57cf)
- TX_FAR _SSAnne6Text3
- db "@"
-
-SSAnne6Text4: ; 617d4 (18:57d4)
- TX_FAR _SSAnne6Text4
- db "@"
-
-SSAnne6Text5: ; 617d9 (18:57d9)
- TX_FAR _SSAnne6Text5
- db "@"
-
-SSAnne6Text6: ; 617de (18:57de)
- TX_FAR _SSAnne6Text6
- db "@"
-
-SSAnne6Text7: ; 617e3 (18:57e3)
- db $08 ; asm
- ld hl, UnnamedText_61807
- call PrintText
- ldh a, [$d3]
- bit 7, a
- jr z, .asm_93eb1 ; 0x617ee
- ld hl, UnnamedText_6180c
- jr .asm_63292 ; 0x617f3
-.asm_93eb1 ; 0x617f5
- bit 4, a
- jr z, .asm_7436c ; 0x617f7
- ld hl, UnnamedText_61811
- jr .asm_63292 ; 0x617fc
-.asm_7436c ; 0x617fe
- ld hl, UnnamedText_61816
-.asm_63292 ; 0x61801
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_61807: ; 61807 (18:5807)
- TX_FAR _UnnamedText_61807
- db "@"
-
-UnnamedText_6180c: ; 6180c (18:580c)
- TX_FAR _UnnamedText_6180c
- db "@"
-
-UnnamedText_61811: ; 61811 (18:5811)
- TX_FAR _UnnamedText_61811
- db "@"
-
-UnnamedText_61816: ; 61816 (18:5816)
- TX_FAR _UnnamedText_61816
- db "@"
-
-SSAnne6Object: ; 0x6181b (size=54)
- db $c ; border tile
-
- db $1 ; warps
- db $0, $6, $a, SS_ANNE_1
-
- db $0 ; signs
-
- db $7 ; people
- db SPRITE_COOK, $8 + 4, $1 + 4, $fe, $1, $1 ; person
- db SPRITE_COOK, $8 + 4, $5 + 4, $fe, $1, $2 ; person
- db SPRITE_COOK, $7 + 4, $9 + 4, $fe, $1, $3 ; person
- db SPRITE_COOK, $6 + 4, $d + 4, $ff, $ff, $4 ; person
- db SPRITE_COOK, $8 + 4, $d + 4, $ff, $ff, $5 ; person
- db SPRITE_COOK, $a + 4, $d + 4, $ff, $ff, $6 ; person
- db SPRITE_COOK, $d + 4, $b + 4, $ff, $d1, $7 ; person
-
- ; warp-to
- EVENT_DISP SS_ANNE_6_WIDTH, $0, $6 ; SS_ANNE_1
+INCLUDE "data/mapObjects/ssanne6.asm"
SSAnne6Blocks: ; 61851 (18:5851)
INCBIN "maps/ssanne6.blk"
-SSAnne7_h: ; 0x61889 to 0x61895 (12 bytes) (id=101)
- db SHIP ; tileset
- db SS_ANNE_7_HEIGHT, SS_ANNE_7_WIDTH ; dimensions (y, x)
- dw SSAnne7Blocks, SSAnne7TextPointers, SSAnne7Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne7Object ; objects
-
-SSAnne7Script: ; 61895 (18:5895)
- call SSAnne7Script_6189b
- jp EnableAutoTextBoxDrawing
-
-SSAnne7Script_6189b: ; 6189b (18:589b)
- ld a, [$d803]
- bit 1, a
- ret nz
- ld hl, $d72d
- set 5, [hl]
- ret
-
-SSAnne7TextPointers: ; 618a7 (18:58a7)
- dw SSAnne7Text1
- dw SSAnne7Text2
- dw SSAnne7Text3
+INCLUDE "data/mapHeaders/ssanne7.asm"
-SSAnne7Text1: ; 618ad (18:58ad)
- db $08 ; asm
- ld a, [$d803]
- bit 0, a
- jr nz, .asm_797c4 ; 0x618b3
- ld hl, SSAnne7RubText
- call PrintText
- ld hl, ReceivingHM01Text
- call PrintText
- ld bc, (HM_01 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedHM01Text
- call PrintText
- ld hl, $d803
- set 0, [hl]
- jr .asm_0faf5 ; 0x618d4
-.BagFull
- ld hl, HM01NoRoomText
- call PrintText
- ld hl, $d72d
- set 5, [hl]
- jr .asm_0faf5 ; 0x618e1
-.asm_797c4 ; 0x618e3
- ld hl, UnnamedText_61932
- call PrintText
-.asm_0faf5 ; 0x618e9
- jp TextScriptEnd
+INCLUDE "scripts/ssanne7.asm"
-SSAnne7RubText: ; 618ec (18:58ec)
- TX_FAR _SSAnne7RubText ; 0x812dd
- db $8
- ld a, [$c0ef]
- cp $1f
- ld [$c0f0], a
- jr nz, .asm_61908 ; 0x618f9 $d
- ld a, $ff
- ld [$c0ee], a
- call PlaySound
- ld a, Bank(Func_9876)
- ld [$c0ef], a
-.asm_61908
- ld a, MUSIC_PKMN_HEALED
- ld [$c0ee], a
- call PlaySound
-.asm_61910
- ld a, [$c026]
- cp MUSIC_PKMN_HEALED
- jr z, .asm_61910 ; 0x61915 $f9
- call Func_2307
- ld hl, $d803
- set 1, [hl]
- ld hl, $d72d
- res 5, [hl]
- jp TextScriptEnd
-
-ReceivingHM01Text: ; 61927 (18:5927)
- TX_FAR _ReceivingHM01Text
- db "@"
-
-ReceivedHM01Text: ; 6192c (18:592c)
- TX_FAR _ReceivedHM01Text ; 0x8140d
- db $11, "@"
-
-UnnamedText_61932: ; 61932 (18:5932)
- TX_FAR _UnnamedText_61932
- db "@"
-
-HM01NoRoomText: ; 61937 (18:5937)
- TX_FAR _HM01NoRoomText
- db "@"
-
-SSAnne7Text2: ; 6193c (18:593c)
- TX_FAR _SSAnne7Text2
- db "@"
-
-SSAnne7Text3: ; 61941 (18:5941)
- TX_FAR _SSAnne7Text3
- db "@"
-
-SSAnne7Object: ; 0x61946 (size=24)
- db $c ; border tile
-
- db $1 ; warps
- db $7, $0, $8, SS_ANNE_2
-
- db $2 ; signs
- db $1, $4, $2 ; SSAnne7Text2
- db $2, $1, $3 ; SSAnne7Text3
-
- db $1 ; people
- db SPRITE_SS_CAPTAIN, $2 + 4, $4 + 4, $ff, $d1, $1 ; person
-
- ; warp-to
- EVENT_DISP SS_ANNE_7_WIDTH, $7, $0 ; SS_ANNE_2
+INCLUDE "data/mapObjects/ssanne7.asm"
SSAnne7Blocks: ; 6195e (18:595e)
INCBIN "maps/ssanne7.blk"
-SSAnne8_h: ; 0x6196a to 0x61976 (12 bytes) (id=102)
- db SHIP ; tileset
- db SS_ANNE_8_HEIGHT, SS_ANNE_8_WIDTH ; dimensions (y, x)
- dw SSAnne8Blocks, SSAnne8TextPointers, SSAnne8Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne8Object ; objects
-
-SSAnne8Script: ; 61976 (18:5976)
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne8TrainerHeaders
- ld de, SSAnne8ScriptPointers
- ld a, [W_SSANNE8CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SSANNE8CURSCRIPT], a
- ret
-
-SSAnne8ScriptPointers: ; 61989 (18:5989)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SSAnne8TextPointers: ; 6198f (18:598f)
- dw SSAnne8Text1
- dw SSAnne8Text2
- dw SSAnne8Text3
- dw SSAnne8Text4
- dw SSAnne8Text5
- dw SSAnne8Text6
- dw SSAnne8Text7
- dw SSAnne8Text8
- dw SSAnne8Text9
- dw Predef5CText
- dw SSAnne8Text11
-
-SSAnne8TrainerHeaders: ; 619a5 (18:59a5)
-SSAnne8TrainerHeader0: ; 619a5 (18:59a5)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d805 ; flag's byte
- dw SSAnne8BattleText1 ; 0x5a0b TextBeforeBattle
- dw SSAnne8AfterBattleText1 ; 0x5a15 TextAfterBattle
- dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle
- dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle
-
-SSAnne8TrainerHeader1: ; 619b1 (18:59b1)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d805 ; flag's byte
- dw SSAnne8BattleText2 ; 0x5a1a TextBeforeBattle
- dw SSAnne8AfterBattleText2 ; 0x5a24 TextAfterBattle
- dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle
- dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle
-
-SSAnne8TrainerHeader2: ; 619bd (18:59bd)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d805 ; flag's byte
- dw SSAnne8BattleText3 ; 0x5a29 TextBeforeBattle
- dw SSAnne8AfterBattleText3 ; 0x5a33 TextAfterBattle
- dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle
- dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle
-
-SSAnne8TrainerHeader3: ; 619c9 (18:59c9)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d805 ; flag's byte
- dw SSAnne8BattleText4 ; 0x5a38 TextBeforeBattle
- dw SSAnne8AfterBattleText4 ; 0x5a42 TextAfterBattle
- dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle
- dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle
-
- db $ff
-
-SSAnne8Text1: ; 619d6 (18:59d6)
- db $08 ; asm
- ld hl, SSAnne8TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text2: ; 619e0 (18:59e0)
- db $08 ; asm
- ld hl, SSAnne8TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text3: ; 619ea (18:59ea)
- db $08 ; asm
- ld hl, SSAnne8TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text4: ; 619f4 (18:59f4)
- db $08 ; asm
- ld hl, SSAnne8TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text8: ; 619fe (18:59fe)
- TX_FAR _SSAnne8Text8
- db $08 ; asm
- ld a, WIGGLYTUFF
- call PlayCry
- jp TextScriptEnd
-
-SSAnne8BattleText1: ; 61a0b (18:5a0b)
- TX_FAR _SSAnne8BattleText1
- db "@"
-
-SSAnne8EndBattleText1: ; 61a10 (18:5a10)
- TX_FAR _SSAnne8EndBattleText1
- db "@"
+INCLUDE "data/mapHeaders/ssanne8.asm"
-SSAnne8AfterBattleText1: ; 61a15 (18:5a15)
- TX_FAR _SSAnne8AfterBattleText1
- db "@"
+INCLUDE "scripts/ssanne8.asm"
-SSAnne8BattleText2: ; 61a1a (18:5a1a)
- TX_FAR _SSAnne8BattleText2
- db "@"
-
-SSAnne8EndBattleText2: ; 61a1f (18:5a1f)
- TX_FAR _SSAnne8EndBattleText2
- db "@"
-
-UnnamedText_61a24: ; 61a24 (18:5a24)
- TX_FAR _UnnamedText_61a24
- db "@"
-
-SSAnne8BattleText3: ; 61a29 (18:5a29)
- TX_FAR _SSAnne8BattleText3
- db "@"
-
-SSAnne8EndBattleText3: ; 61a2e (18:5a2e)
- TX_FAR _SSAnne8EndBattleText3
- db "@"
-
-SSAnne8AfterBattleText3: ; 61a33 (18:5a33)
- TX_FAR _SSAnne8AfterBattleText3
- db "@"
-
-SSAnne8BattleText4: ; 61a38 (18:5a38)
- TX_FAR _SSAnne8BattleText4
- db "@"
-
-SSAnne8EndBattleText4: ; 61a3d (18:5a3d)
- TX_FAR _SSAnne8EndBattleText4
- db "@"
-
-SSAnne8AfterBattleText4: ; 61a42 (18:5a42)
- TX_FAR _SSAnne8AfterBattleText4
- db "@"
-
-SSAnne8Text5: ; 61a47 (18:5a47)
- TX_FAR _SSAnne8Text5
- db "@"
-
-SSAnne8Text6: ; 61a4c (18:5a4c)
- TX_FAR _SSAnne8Text6
- db "@"
-
-SSAnne8Text7: ; 61a51 (18:5a51)
- TX_FAR _SSAnne8Text7
- db "@"
-
-SSAnne8Text9: ; 61a56 (18:5a56)
- TX_FAR _SSAnne8Text9
- db "@"
-
-SSAnne8Text11: ; 61a5b (18:5a5b)
- TX_FAR _SSAnne8Text11
- db "@"
-
-SSAnne8Object: ; 0x61a60 (size=127)
- db $c ; border tile
-
- db $6 ; warps
- db $0, $0, $2, SS_ANNE_1
- db $0, $a, $3, SS_ANNE_1
- db $0, $14, $4, SS_ANNE_1
- db $a, $0, $5, SS_ANNE_1
- db $a, $a, $6, SS_ANNE_1
- db $a, $14, $7, SS_ANNE_1
-
- db $0 ; signs
-
- db $b ; people
- db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d2, $41, GENTLEMAN + $C8, $1 ; trainer
- db SPRITE_GENTLEMAN, $4 + 4, $b + 4, $ff, $d1, $42, GENTLEMAN + $C8, $2 ; trainer
- db SPRITE_BUG_CATCHER, $e + 4, $b + 4, $ff, $d1, $43, YOUNGSTER + $C8, $8 ; trainer
- db SPRITE_LASS, $b + 4, $d + 4, $ff, $d2, $44, LASS + $C8, $b ; trainer
- db SPRITE_GIRL, $3 + 4, $16 + 4, $fe, $1, $5 ; person
- db SPRITE_FAT_BALD_GUY, $e + 4, $0 + 4, $ff, $ff, $6 ; person
- db SPRITE_LITTLE_GIRL, $b + 4, $2 + 4, $ff, $d0, $7 ; person
- db SPRITE_CLEFAIRY, $b + 4, $3 + 4, $ff, $d0, $8 ; person
- db SPRITE_GIRL, $d + 4, $a + 4, $ff, $d3, $9 ; person
- db SPRITE_BALL, $f + 4, $c + 4, $ff, $ff, $8a, TM_08 ; item
- db SPRITE_GENTLEMAN, $d + 4, $15 + 4, $fe, $2, $b ; person
-
- ; warp-to
- EVENT_DISP SS_ANNE_8_WIDTH, $0, $0 ; SS_ANNE_1
- EVENT_DISP SS_ANNE_8_WIDTH, $0, $a ; SS_ANNE_1
- EVENT_DISP SS_ANNE_8_WIDTH, $0, $14 ; SS_ANNE_1
- EVENT_DISP SS_ANNE_8_WIDTH, $a, $0 ; SS_ANNE_1
- EVENT_DISP SS_ANNE_8_WIDTH, $a, $a ; SS_ANNE_1
- EVENT_DISP SS_ANNE_8_WIDTH, $a, $14 ; SS_ANNE_1
+INCLUDE "data/mapObjects/ssanne8.asm"
SSAnne8Blocks: ; 61adf (18:5adf)
INCBIN "maps/ssanne8.blk"
-SSAnne9_h: ; 0x61b3f to 0x61b4b (12 bytes) (id=103)
- db SHIP ; tileset
- db SS_ANNE_9_HEIGHT, SS_ANNE_9_WIDTH ; dimensions (y, x)
- dw SSAnne9Blocks, SSAnne9TextPointers, SSAnne9Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne9Object ; objects
-
-SSAnne9Script: ; 61b4b (18:5b4b)
- ld a, $1
- ld [$cf0c], a
- xor a
- ld [$cc3c], a
- ld hl, SSAnne9TrainerHeaders
- ld de, SSAnne9ScriptPointers
- ld a, [W_SSANNE9CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SSANNE9CURSCRIPT], a
- ret
-
-SSAnne9ScriptPointers: ; 61b64 (18:5b64)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SSAnne9TextPointers: ; 61b6a (18:5b6a)
- dw SSAnne9Text1
- dw SSAnne9Text2
- dw SSAnne9Text3
- dw SSAnne9Text4
- dw SSAnne9Text5
- dw Predef5CText
- dw SSAnne9Text7
- dw SSAnne9Text8
- dw Predef5CText
- dw SSAnne9Text10
- dw SSAnne9Text11
- dw SSAnne9Text12
- dw SSAnne9Text13
-
-SSAnne9TrainerHeaders: ; 61b84 (18:5b84)
-SSAnne9TrainerHeader0: ; 61b84 (18:5b84)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d807 ; flag's byte
- dw SSAnne9BattleText1 ; 0x5c51 TextBeforeBattle
- dw SSAnne9AfterBattleText1 ; 0x5c5b TextAfterBattle
- dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle
- dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle
-
-SSAnne9TrainerHeader1: ; 61b90 (18:5b90)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d807 ; flag's byte
- dw SSAnne9BattleText2 ; 0x5c60 TextBeforeBattle
- dw SSAnne9AfterBattleText2 ; 0x5c6a TextAfterBattle
- dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle
- dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle
-
-SSAnne9TrainerHeader2: ; 61b9c (18:5b9c)
- db $3 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d807 ; flag's byte
- dw SSAnne9BattleText3 ; 0x5c6f TextBeforeBattle
- dw SSAnne9AfterBattleText3 ; 0x5c79 TextAfterBattle
- dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle
- dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle
-
-SSAnne9TrainerHeader3: ; 61ba8 (18:5ba8)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d807 ; flag's byte
- dw SSAnne9BattleText4 ; 0x5c7e TextBeforeBattle
- dw SSAnne9AfterBattleText4 ; 0x5c88 TextAfterBattle
- dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle
- dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle
-
- db $ff
-
-SSAnne9Text1: ; 61bb5 (18:5bb5)
- db $08 ; asm
- ld hl, SSAnne9TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text2: ; 61bbf (18:5bbf)
- db $08 ; asm
- ld hl, SSAnne9TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text3: ; 61bc9 (18:5bc9)
- db $08 ; asm
- ld hl, SSAnne9TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text4: ; 61bd3 (18:5bd3)
- db $08 ; asm
- ld hl, SSAnne9TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text5: ; 61bdd (18:5bdd)
- db $08 ; asm
- call SaveScreenTilesToBuffer1
- ld hl, UnnamedText_61bf2
- call PrintText
- call LoadScreenTilesFromBuffer1
- ld a, SNORLAX
- call DisplayPokedex
- jp TextScriptEnd
-
-UnnamedText_61bf2: ; 61bf2 (18:5bf2)
- TX_FAR _UnnamedText_61bf2
- db "@"
-
-SSAnne9Text7: ; 61bf7 (18:5bf7)
- db $08 ; asm
- ld hl, UnnamedText_61c01
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_61c01: ; 61c01 (18:5c01)
- TX_FAR _UnnamedText_61c01
- db "@"
-
-SSAnne9Text8: ; 61c06 (18:5c06)
- db $08 ; asm
- ld hl, UnnamedText_61c10
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_61c10: ; 61c10 (18:5c10)
- TX_FAR _UnnamedText_61c10
- db "@"
-
-SSAnne9Text10: ; 61c15 (18:5c15)
- db $08 ; asm
- ld hl, UnnamedText_61c1f
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_61c1f: ; 61c1f (18:5c1f)
- TX_FAR _UnnamedText_61c1f
- db "@"
-
-SSAnne9Text11: ; 61c24 (18:5c24)
- db $08 ; asm
- ld hl, UnnamedText_61c2e
- call PrintText
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/ssanne9.asm"
-UnnamedText_61c2e: ; 61c2e (18:5c2e)
- TX_FAR _UnnamedText_61c2e
- db "@"
+INCLUDE "scripts/ssanne9.asm"
-SSAnne9Text12: ; 61c33 (18:5c33)
- db $08 ; asm
- ld hl, UnnamedText_61c3d
- call PrintText
- jp TextScriptEnd
+INCLUDE "data/mapObjects/ssanne9.asm"
-UnnamedText_61c3d: ; 61c3d (18:5c3d)
- TX_FAR _UnnamedText_61c3d
- db "@"
+INCLUDE "data/mapHeaders/ssanne10.asm"
-SSAnne9Text13: ; 61c42 (18:5c42)
- db $08 ; asm
- ld hl, UnnamedText_61c4c
- call PrintText
- jp TextScriptEnd
+INCLUDE "scripts/ssanne10.asm"
-UnnamedText_61c4c: ; 61c4c (18:5c4c)
- TX_FAR _UnnamedText_61c4c
- db "@"
+INCLUDE "data/mapObjects/ssanne10.asm"
-SSAnne9BattleText1: ; 61c51 (18:5c51)
- TX_FAR _SSAnne9BattleText1
- db "@"
+INCLUDE "data/mapHeaders/undergroundpathns.asm"
-SSAnne9EndBattleText1: ; 61c56 (18:5c56)
- TX_FAR _SSAnne9EndBattleText1
- db "@"
+INCLUDE "scripts/undergroundpathns.asm"
-SSAnne9AfterBattleText1: ; 61c5b (18:5c5b)
- TX_FAR _SSAnne9AfterBattleText1
- db "@"
+INCLUDE "data/mapObjects/undergroundpathns.asm"
-SSAnne9BattleText2: ; 61c60 (18:5c60)
- TX_FAR _SSAnne9BattleText2
- db "@"
+INCLUDE "data/mapHeaders/undergroundpathwe.asm"
-SSAnne9EndBattleText2: ; 61c65 (18:5c65)
- TX_FAR _SSAnne9EndBattleText2
- db "@"
+INCLUDE "scripts/undergroundpathwe.asm"
-SSAnne9AfterBattleText2: ; 61c6a (18:5c6a)
- TX_FAR _SSAnne9AfterBattleText2
- db "@"
-
-SSAnne9BattleText3: ; 61c6f (18:5c6f)
- TX_FAR _SSAnne9BattleText3
- db "@"
-
-SSAnne9EndBattleText3: ; 61c74 (18:5c74)
- TX_FAR _SSAnne9EndBattleText3
- db "@"
-
-SSAnne9AfterBattleText3: ; 61c79 (18:5c79)
- TX_FAR _SSAnne9AfterBattleText3
- db "@"
+INCLUDE "data/mapObjects/undergroundpathwe.asm"
-SSAnne9BattleText4: ; 61c7e (18:5c7e)
- TX_FAR _SSAnne9BattleText4
- db "@"
+INCLUDE "data/mapHeaders/diglettscave.asm"
-SSAnne9EndBattleText4: ; 61c83 (18:5c83)
- TX_FAR _SSAnne9EndBattleText4
- db "@"
-
-SSAnne9AfterBattleText4: ; 61c88 (18:5c88)
- TX_FAR _SSAnne9AfterBattleText4
- db "@"
-
-SSAnne9Object: ; 0x61c8d (size=188)
- db $c ; border tile
-
- db $c ; warps
- db $5, $2, $0, SS_ANNE_2
- db $5, $3, $0, SS_ANNE_2
- db $5, $c, $1, SS_ANNE_2
- db $5, $d, $1, SS_ANNE_2
- db $5, $16, $2, SS_ANNE_2
- db $5, $17, $2, SS_ANNE_2
- db $f, $2, $3, SS_ANNE_2
- db $f, $3, $3, SS_ANNE_2
- db $f, $c, $4, SS_ANNE_2
- db $f, $d, $4, SS_ANNE_2
- db $f, $16, $5, SS_ANNE_2
- db $f, $17, $5, SS_ANNE_2
-
- db $0 ; signs
-
- db $d ; people
- db SPRITE_GENTLEMAN, $2 + 4, $a + 4, $ff, $d3, $41, GENTLEMAN + $C8, $3 ; trainer
- db SPRITE_FISHER2, $4 + 4, $d + 4, $ff, $d2, $42, FISHER + $C8, $1 ; trainer
- db SPRITE_GENTLEMAN, $e + 4, $0 + 4, $ff, $d3, $43, GENTLEMAN + $C8, $5 ; trainer
- db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d0, $44, LASS + $C8, $c ; trainer
- db SPRITE_GENTLEMAN, $2 + 4, $1 + 4, $ff, $d0, $5 ; person
- db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $86, MAX_ETHER ; item
- db SPRITE_GENTLEMAN, $2 + 4, $15 + 4, $ff, $d0, $7 ; person
- db SPRITE_OLD_PERSON, $1 + 4, $16 + 4, $ff, $d0, $8 ; person
- db SPRITE_BALL, $c + 4, $0 + 4, $ff, $ff, $89, RARE_CANDY ; item
- db SPRITE_GENTLEMAN, $c + 4, $c + 4, $ff, $d0, $a ; person
- db SPRITE_YOUNG_BOY, $e + 4, $b + 4, $ff, $ff, $b ; person
- db SPRITE_BRUNETTE_GIRL, $c + 4, $16 + 4, $ff, $d2, $c ; person
- db SPRITE_FOULARD_WOMAN, $c + 4, $14 + 4, $ff, $d3, $d ; person
-
- ; warp-to
- EVENT_DISP SS_ANNE_9_WIDTH, $5, $2 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $5, $3 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $5, $c ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $5, $d ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $5, $16 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $5, $17 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $f, $2 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $f, $3 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $f, $c ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $f, $d ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $f, $16 ; SS_ANNE_2
- EVENT_DISP SS_ANNE_9_WIDTH, $f, $17 ; SS_ANNE_2
-
-SSAnne10_h: ; 0x61d49 to 0x61d55 (12 bytes) (id=104)
- db SHIP ; tileset
- db SS_ANNE_10_HEIGHT, SS_ANNE_10_WIDTH ; dimensions (y, x)
- dw SSAnne10Blocks, SSAnne10TextPointers, SSAnne10Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne10Object ; objects
-
-SSAnne10Script: ; 61d55 (18:5d55)
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne10TrainerHeaders
- ld de, SSAnne10ScriptPointers
- ld a, [W_SSANNE10CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SSANNE10CURSCRIPT], a
- ret
-
-SSAnne10ScriptPointers: ; 61d68 (18:5d68)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
-
-SSAnne10TextPointers: ; 61d6e (18:5d6e)
- dw SSAnne10Text1
- dw SSAnne10Text2
- dw SSAnne10Text3
- dw SSAnne10Text4
- dw SSAnne10Text5
- dw SSAnne10Text6
- dw SSAnne10Text7
- dw SSAnne10Text8
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-SSAnne10TrainerHeaders: ; 61d84 (18:5d84)
-SSAnne10TrainerHeader0: ; 61d84 (18:5d84)
- db $1 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d809 ; flag's byte
- dw SSAnne10BattleText1 ; 0x5e16 TextBeforeBattle
- dw SSAnne10AfterBattleText1 ; 0x5e20 TextAfterBattle
- dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle
- dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle
-
-SSAnne10TrainerHeader1: ; 61d90 (18:5d90)
- db $2 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d809 ; flag's byte
- dw SSAnne10BattleText2 ; 0x5e25 TextBeforeBattle
- dw SSAnne10AfterBattleText2 ; 0x5e2f TextAfterBattle
- dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle
- dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle
-
-SSAnne10TrainerHeader2: ; 61d9c (18:5d9c)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d809 ; flag's byte
- dw SSAnne10BattleText3 ; 0x5e34 TextBeforeBattle
- dw SSAnne10AfterBattleText3 ; 0x5e3e TextAfterBattle
- dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle
- dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle
-
-SSAnne10TrainerHeader3: ; 61da8 (18:5da8)
- db $4 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d809 ; flag's byte
- dw SSAnne10BattleText4 ; 0x5e43 TextBeforeBattle
- dw SSAnne10AfterBattleText4 ; 0x5e4d TextAfterBattle
- dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle
- dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle
-
-SSAnne10TrainerHeader4: ; 61db4 (18:5db4)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d809 ; flag's byte
- dw SSAnne10BattleText5 ; 0x5e52 TextBeforeBattle
- dw SSAnne10AfterBattleText5 ; 0x5e5c TextAfterBattle
- dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle
- dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle
-
-SSAnne10TrainerHeader5: ; 61dc0 (18:5dc0)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d809 ; flag's byte
- dw SSAnne10BattleText6 ; 0x5e61 TextBeforeBattle
- dw SSAnne10AfterBattleText6 ; 0x5e6b TextAfterBattle
- dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle
- dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle
-
- db $ff
-
-SSAnne10Text1: ; 61dcd (18:5dcd)
- db $08 ; asm
- ld hl, SSAnne10TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text2: ; 61dd7 (18:5dd7)
- db $08 ; asm
- ld hl, SSAnne10TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text3: ; 61de1 (18:5de1)
- db $08 ; asm
- ld hl, SSAnne10TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text4: ; 61deb (18:5deb)
- db $08 ; asm
- ld hl, SSAnne10TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text5: ; 61df5 (18:5df5)
- db $08 ; asm
- ld hl, SSAnne10TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text6: ; 61dff (18:5dff)
- db $08 ; asm
- ld hl, SSAnne10TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text8: ; 61e09 (18:5e09)
- TX_FAR _SSAnne10Text8
- db $8 ; 0x61e0d
- ld a, MACHOKE
- call PlayCry
- jp TextScriptEnd
-
-SSAnne10BattleText1: ; 61e16 (18:5e16)
- TX_FAR _SSAnne10BattleText1
- db "@"
-
-SSAnne10EndBattleText1: ; 61e1b (18:5e1b)
- TX_FAR _SSAnne10EndBattleText1
- db "@"
-
-SSAnne10AfterBattleText1: ; 61e20 (18:5e20)
- TX_FAR _SSAnne10AfterBattleText1
- db "@"
-
-SSAnne10BattleText2: ; 61e25 (18:5e25)
- TX_FAR _SSAnne10BattleText2
- db "@"
-
-SSAnne10EndBattleText2: ; 61e2a (18:5e2a)
- TX_FAR _SSAnne10EndBattleText2
- db "@"
-
-SSAnne10AfterBattleText2: ; 61e2f (18:5e2f)
- TX_FAR _SSAnne10AfterBattleText2
- db "@"
-
-SSAnne10BattleText3: ; 61e34 (18:5e34)
- TX_FAR _SSAnne10BattleText3
- db "@"
-
-SSAnne10EndBattleText3: ; 61e39 (18:5e39)
- TX_FAR _SSAnne10EndBattleText3
- db "@"
-
-SSAnne10AfterBattleText3: ; 61e3e (18:5e3e)
- TX_FAR _SSAnne10AfterBattleText3
- db "@"
-
-SSAnne10BattleText4: ; 61e43 (18:5e43)
- TX_FAR _SSAnne10BattleText4
- db "@"
-
-SSAnne10EndBattleText4: ; 61e48 (18:5e48)
- TX_FAR _SSAnne10EndBattleText4
- db "@"
-
-SSAnne10AfterBattleText4: ; 61e4d (18:5e4d)
- TX_FAR _SSAnne10AfterBattleText4
- db "@"
-
-SSAnne10BattleText5: ; 61e52 (18:5e52)
- TX_FAR _SSAnne10BattleText5
- db "@"
-
-SSAnne10EndBattleText5: ; 61e57 (18:5e57)
- TX_FAR _SSAnne10EndBattleText5
- db "@"
-
-SSAnne10AfterBattleText5: ; 61e5c (18:5e5c)
- TX_FAR _SSAnne10AfterBattleText5
- db "@"
-
-SSAnne10BattleText6: ; 61e61 (18:5e61)
- TX_FAR _SSAnne10BattleText6
- db "@"
-
-SSAnne10EndBattleText6: ; 61e66 (18:5e66)
- TX_FAR _SSAnne10EndBattleText6
- db "@"
-
-SSAnne10AfterBattleText6: ; 61e6b (18:5e6b)
- TX_FAR _SSAnne10AfterBattleText6
- db "@"
-
-SSAnne10Text7: ; 61e70 (18:5e70)
- TX_FAR _SSAnne10Text7
- db "@"
-
-SSAnne10Object: ; 0x61e75 (size=165)
- db $c ; border tile
-
- db $a ; warps
- db $5, $2, $4, SS_ANNE_4
- db $5, $3, $4, SS_ANNE_4
- db $5, $c, $3, SS_ANNE_4
- db $5, $d, $3, SS_ANNE_4
- db $5, $16, $2, SS_ANNE_4
- db $5, $17, $2, SS_ANNE_4
- db $f, $2, $1, SS_ANNE_4
- db $f, $3, $1, SS_ANNE_4
- db $f, $c, $0, SS_ANNE_4
- db $f, $d, $0, SS_ANNE_4
-
- db $0 ; signs
-
- db $b ; people
- db SPRITE_SAILOR, $d + 4, $0 + 4, $ff, $d0, $41, SAILOR + $C8, $3 ; trainer
- db SPRITE_SAILOR, $b + 4, $2 + 4, $ff, $d0, $42, SAILOR + $C8, $4 ; trainer
- db SPRITE_SAILOR, $3 + 4, $c + 4, $ff, $d2, $43, SAILOR + $C8, $5 ; trainer
- db SPRITE_SAILOR, $2 + 4, $16 + 4, $ff, $d0, $44, SAILOR + $C8, $6 ; trainer
- db SPRITE_SAILOR, $2 + 4, $0 + 4, $ff, $d3, $45, SAILOR + $C8, $7 ; trainer
- db SPRITE_FISHER2, $4 + 4, $0 + 4, $ff, $d3, $46, FISHER + $C8, $2 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $a + 4, $ff, $d3, $7 ; person
- db SPRITE_SLOWBRO, $c + 4, $b + 4, $ff, $ff, $8 ; person
- db SPRITE_BALL, $2 + 4, $14 + 4, $ff, $ff, $89, ETHER ; item
- db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $8a, TM_44 ; item
- db SPRITE_BALL, $b + 4, $c + 4, $ff, $ff, $8b, MAX_POTION ; item
-
- ; warp-to
- EVENT_DISP SS_ANNE_10_WIDTH, $5, $2 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $5, $3 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $5, $c ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $5, $d ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $5, $16 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $5, $17 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $f, $2 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $f, $3 ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $f, $c ; SS_ANNE_4
- EVENT_DISP SS_ANNE_10_WIDTH, $f, $d ; SS_ANNE_4
-
-UndergroundPathNS_h: ; 0x61f1a to 0x61f26 (12 bytes) (id=119)
- db UNDERGROUND ; tileset
- db UNDERGROUND_PATH_NS_HEIGHT, UNDERGROUND_PATH_NS_WIDTH ; dimensions (y, x)
- dw UndergroundPathNSBlocks, UndergroundPathNSTextPointers, UndergroundPathNSScript ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathNSObject ; objects
-
-UndergroundPathNSScript: ; 61f26 (18:5f26)
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathNSTextPointers: ; 61f29 (18:5f29)
- db "@"
+INCLUDE "scripts/diglettscave.asm"
-UndergroundPathNSObject: ; 0x61f2a (size=20)
- db $1 ; border tile
-
- db $2 ; warps
- db $4, $5, $2, PATH_ENTRANCE_ROUTE_5
- db $29, $2, $2, PATH_ENTRANCE_ROUTE_6
-
- db $0 ; signs
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $4, $5 ; PATH_ENTRANCE_ROUTE_5
- EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $29, $2 ; PATH_ENTRANCE_ROUTE_6
-
-UndergroundPathWE_h: ; 0x61f3e to 0x61f4a (12 bytes) (id=121)
- db UNDERGROUND ; tileset
- db UNDERGROUND_PATH_WE_HEIGHT, UNDERGROUND_PATH_WE_WIDTH ; dimensions (y, x)
- dw UndergroundPathWEBlocks, UndergroundPathWETextPointers, UndergroundPathWEScript ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathWEObject ; objects
-
-UndergroundPathWEScript: ; 61f4a (18:5f4a)
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathWETextPointers: ; 61f4d (18:5f4d)
- db "@"
-
-UndergroundPathWEObject: ; 0x61f4e (size=20)
- db $1 ; border tile
-
- db $2 ; warps
- db $5, $2, $2, PATH_ENTRANCE_ROUTE_7
- db $2, $2f, $2, PATH_ENTRANCE_ROUTE_8
-
- db $0 ; signs
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $5, $2 ; PATH_ENTRANCE_ROUTE_7
- EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $2, $2f ; PATH_ENTRANCE_ROUTE_8
-
-DiglettsCave_h: ; 0x61f62 to 0x61f6e (12 bytes) (id=197)
- db CAVERN ; tileset
- db DIGLETTS_CAVE_HEIGHT, DIGLETTS_CAVE_WIDTH ; dimensions (y, x)
- dw DiglettsCaveBlocks, DiglettsCaveTextPointers, DiglettsCaveScript ; blocks, texts, scripts
- db $00 ; connections
- dw DiglettsCaveObject ; objects
-
-DiglettsCaveScript: ; 61f6e (18:5f6e)
- jp EnableAutoTextBoxDrawing
-
-DiglettsCaveTextPointers: ; 61f71 (18:5f71)
- db "@"
-
-DiglettsCaveObject: ; 0x61f72 (size=20)
- db $19 ; border tile
-
- db $2 ; warps
- db $5, $5, $2, DIGLETTS_CAVE_EXIT
- db $1f, $25, $2, DIGLETTS_CAVE_ENTRANCE
-
- db $0 ; signs
-
- db $0 ; people
-
- ; warp-to
- EVENT_DISP DIGLETTS_CAVE_WIDTH, $5, $5 ; DIGLETTS_CAVE_EXIT
- EVENT_DISP DIGLETTS_CAVE_WIDTH, $1f, $25 ; DIGLETTS_CAVE_ENTRANCE
+INCLUDE "data/mapObjects/diglettscave.asm"
DiglettsCaveBlocks: ; 61f86 (18:5f86)
INCBIN "maps/diglettscave.blk"
-SilphCo11_h: ; 0x620ee to 0x620fa (12 bytes) (id=235)
- db INTERIOR ; tileset
- db SILPH_CO_11F_HEIGHT, SILPH_CO_11F_WIDTH ; dimensions (y, x)
- dw SilphCo11Blocks, SilphCo11TextPointers, SilphCo11Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo11Object ; objects
-
-SilphCo11Script: ; 620fa (18:60fa)
- call SilphCo11Script_62110
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo11TrainerHeaders
- ld de, SilphCo11ScriptPointers
- ld a, [W_SILPHCO11CURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_SILPHCO11CURSCRIPT], a
- ret
-
-SilphCo11Script_62110: ; 62110 (18:6110)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, DataTable_62134 ; $6134
- call Func_62137
- call Func_62163
- ld a, [$d838]
- bit 0, a
- ret nz
- ld a, $20
- ld [$d09f], a
- ld bc, $603
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-DataTable_62134: ; 62134 (18:6134)
- db $06,$03,$FF
-
-Func_62137: ; 62137 (18:6137)
- push hl
- ld hl, $d73f
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_62143
- ld a, [hli]
- cp $ff
- jr z, .asm_6215f
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_62154
- inc hl
- jr .asm_62143
-.asm_62154
- ld a, [hli]
- cp c
- jr nz, .asm_62143
- ld hl, $d73f
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_6215f
- xor a
- ld [$ffe0], a
- ret
-
-Func_62163: ; 62163 (18:6163)
- ld a, [$ffe0]
- and a
- ret z
- ld hl, $d838
- set 0, [hl]
- ret
+INCLUDE "data/mapHeaders/silphco11.asm"
-Func_6216d: ; 6216d (18:616d)
- ld hl, MissableObjectIDs_6219b ; $619b
-.asm_62170
- ld a, [hli]
- cp $ff
- jr z, .asm_62181
- push hl
- ld [$cc4d], a
- ld a, $11
- call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
- pop hl
- jr .asm_62170
-.asm_62181
- ld hl, MissableObjectIDs_62194 ; $6194
-.asm_62184
- ld a, [hli]
- cp $ff
- ret z
- push hl
- ld [$cc4d], a
- ld a, $15
- call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
- pop hl
- jr .asm_62184
-
-MissableObjectIDs_62194: ; 62194 (18:6194)
- db $11,$12,$13,$14,$15,$16,$FF
+INCLUDE "scripts/silphco11.asm"
-MissableObjectIDs_6219b: ; 6219b (18:619b)
- db $0A,$0B,$0C,$0D,$0E,$0F,$10,$17
- db $18,$8A,$8B,$8C,$8D,$8E,$8F,$91
- db $92,$93,$97,$98,$99,$9A,$9E,$9F
- db $A0,$A3,$A4,$A5,$A6,$AB,$AC,$AD
- db $AE,$AF,$B0,$B1,$B2,$B7,$B8,$B9
- db $FF
-
-SilphCo11Script_621c4: ; 621c4 (18:61c4)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
-
-SilphCo11Script_621c8: ; 621c8 (18:61c8)
- ld [W_SILPHCO11CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-SilphCo11ScriptPointers: ; 621cf (18:61cf)
- dw SilphCo11Script0
- dw Func_324c
- dw EndTrainerBattle
- dw SilphCo11Script3
- dw SilphCo11Script4
- dw SilphCo11Script5
-
-SilphCo11Script0: ; 621db (18:61db)
- ld a, [$d838]
- bit 7, a
- ret nz
- ld hl, CoordsData_62211 ; $6211
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- ld a, [wWhichTrade] ; $cd3d
- ld [$cf0d], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call SetSpriteMovementBytesToFF
- ld de, MovementData_62216
- call MoveSprite
- ld a, $3
- jp SilphCo11Script_621c8
-
-CoordsData_62211: ; 62211 (18:6211)
- db $0D,$06
- db $0C,$07
- db $FF
-
-MovementData_62216: ; 62216 (18:6216)
- db $00,$00,$00,$FF
-
-SilphCo11Script_6221a: ; 6221a (18:621a)
- ld [$d528], a
- ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- ld a, b
- ld [$ff8d], a
- jp Func_34a6
-
-SilphCo11Script5: ; 62227 (18:6227)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, SilphCo11Script_621c4
- ld a, [$cf0d]
- cp $1
- jr z, .asm_6223c
- ld a, $2
- ld b, $c
- jr .asm_62240
-.asm_6223c
- ld a, $8
- ld b, $0
-.asm_62240
- call SilphCo11Script_6221a
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $6
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- call GBFadeIn1
- call Func_6216d
- call UpdateSprites
- call Delay3
- call GBFadeOut1
- ld hl, $d838
- set 7, [hl]
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- jp SilphCo11Script_621c8
-
-SilphCo11Script3: ; 6226a (18:626a)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $3
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call SetSpriteMovementBytesToFF
- ld a, [$cf0d]
- cp $1
- jr z, .asm_62284
- ld a, $2
- ld b, $c
- jr .asm_62288
-.asm_62284
- ld a, $8
- ld b, $0
-.asm_62288
- call SilphCo11Script_6221a
- call Delay3
- ld a, $4
- jp SilphCo11Script_621c8
-
-SilphCo11Script4: ; 62293 (18:6293)
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_62330 ; $6330
- ld de, UnnamedText_62330 ; $6330
- call PreBattleSaveRegisters
- ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $5
- jp SilphCo11Script_621c8
-
-SilphCo11TextPointers: ; 622b7 (18:62b7)
- dw SilphCo11Text1
- dw SilphCo11Text2
- dw SilphCo11Text3
- dw SilphCo11Text4
- dw SilphCo11Text5
- dw SilphCo11Text6
-
-SilphCo11TrainerHeaders: ; 622c3 (18:62c3)
-SilphCo11TrainerHeader0: ; 622c3 (18:62c3)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d837 ; flag's byte
- dw SilphCo11BattleText1 ; 0x6344 TextBeforeBattle
- dw SilphCo11AfterBattleText1 ; 0x634e TextAfterBattle
- dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle
- dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle
-
-SilphCo11TrainerHeader1: ; 622cf (18:62cf)
- db $5 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d837 ; flag's byte
- dw SilphCo11BattleText2 ; 0x635d TextBeforeBattle
- dw SilphCo11AfterBattleText2 ; 0x6367 TextAfterBattle
- dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle
- dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle
-
- db $ff
-
-SilphCo11Text1: ; 622dc (18:62dc)
- db $08 ; asm
- ld a, [$d838]
- bit 5, a
- jp nz, .asm_62308
- ld hl, SilphCoPresidentText
- call PrintText
- ld bc, (MASTER_BALL << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedSilphCoMasterBallText
- call PrintText
- ld hl, $d838
- set 5, [hl]
- jr .asm_fd405 ; 0x622fe
-.BagFull
- ld hl, SilphCoMasterBallNoRoomText
- call PrintText
- jr .asm_fd405 ; 0x62306
-.asm_62308 ; 0x62308
- ld hl, UnnamedText_6231c
- call PrintText
-.asm_fd405 ; 0x6230e
- jp TextScriptEnd
-
-SilphCoPresidentText: ; 62311 (18:6311)
- TX_FAR _SilphCoPresidentText
- db "@"
-
-ReceivedSilphCoMasterBallText: ; 62316 (18:6316)
- TX_FAR _ReceivedSilphCoMasterBallText ; 0x84f63
- db $11, "@"
-
-UnnamedText_6231c: ; 6231c (18:631c)
- TX_FAR _UnnamedText_6231c
- db "@"
-
-SilphCoMasterBallNoRoomText: ; 62321 (18:6321)
- TX_FAR _SilphCoMasterBallNoRoomText
- db "@"
-
-SilphCo11Text2: ; 62326 (18:6326)
- TX_FAR _SilphCo11Text2
- db "@"
-
-SilphCo11Text3: ; 6232b (18:632b)
- TX_FAR _SilphCo11Text3
- db "@"
-
-UnnamedText_62330: ; 62330 (18:6330)
- TX_FAR _UnnamedText_62330
- db "@"
-
-SilphCo11Text6: ; 62335 (18:6335)
- TX_FAR _UnnamedText_62335
- db "@"
-
-SilphCo11Text4: ; 6233a (18:633a)
- db $08 ; asm
- ld hl, SilphCo11TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo11BattleText1: ; 62344 (18:6344)
- TX_FAR _SilphCo11BattleText1
- db "@"
-
-SilphCo11EndBattleText1: ; 62349 (18:6349)
- TX_FAR _SilphCo11EndBattleText1
- db "@"
-
-SilphCo11AfterBattleText1: ; 6234e (18:634e)
- TX_FAR _SilphCo11AfterBattleText1
- db "@"
-
-SilphCo11Text5: ; 62353 (18:6353)
- db $08 ; asm
- ld hl, SilphCo11TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo11BattleText2: ; 6235d (18:635d)
- TX_FAR _SilphCo11BattleText2
- db "@"
-
-SilphCo11EndBattleText2: ; 62362 (18:6362)
- TX_FAR _SilphCo11EndBattleText2
- db "@"
-
-SilphCo11AfterBattleText2: ; 62367 (18:6367)
- TX_FAR _SilphCo11AfterBattleText2
- db "@"
-
-UnnamedText_6236c: ; 6236c (18:636c)
- db $8
- ld hl, UnnamedText_6237b
- call PrintText
- ld a, PORYGON
- call DisplayPokedex
- jp TextScriptEnd
-
-UnnamedText_6237b: ; 6237b (18:637b)
- TX_FAR _UnnamedText_6237b
- db "@"
-
-SilphCo11Object: ; 0x62380 (size=72)
- db $d ; border tile
-
- db $4 ; warps
- db $0, $9, $1, SILPH_CO_10F
- db $0, $d, $0, SILPH_CO_ELEVATOR
- db $5, $5, $9, $ff
- db $2, $3, $3, SILPH_CO_7F
-
- db $0 ; signs
-
- db $5 ; people
- db SPRITE_MR_MASTERBALL, $5 + 4, $7 + 4, $ff, $d0, $1 ; person
- db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $ff, $d0, $2 ; person
- db SPRITE_GIOVANNI, $9 + 4, $6 + 4, $ff, $d0, $43, GIOVANNI + $C8, $2 ; trainer
- db SPRITE_ROCKET, $10 + 4, $3 + 4, $ff, $d1, $44, ROCKET + $C8, $29 ; trainer
- db SPRITE_ROCKET, $9 + 4, $f + 4, $ff, $d1, $45, ROCKET + $C8, $28 ; trainer
-
- ; warp-to
- EVENT_DISP SILPH_CO_11F_WIDTH, $0, $9 ; SILPH_CO_10F
- EVENT_DISP SILPH_CO_11F_WIDTH, $0, $d ; SILPH_CO_ELEVATOR
- EVENT_DISP SILPH_CO_11F_WIDTH, $5, $5
- EVENT_DISP SILPH_CO_11F_WIDTH, $2, $3 ; SILPH_CO_7F
+INCLUDE "data/mapObjects/silphco11.asm"
SilphCo11Blocks: ; 623c8 (18:63c8)
INCBIN "maps/silphco11.blk"
@@ -97622,7 +48852,7 @@ SilphCo11Blocks: ; 623c8 (18:63c8)
GymStatues: ; 62419 (18:6419)
; if in a gym and have the corresponding badge, a = $D and jp Func_3ef5
; if in a gym and don’t have the corresponding badge, a = $C and jp Func_3ef5
-; else ret
+; else ret
call EnableAutoTextBoxDrawing
ld a, [$c109]
cp $4
@@ -97784,7 +49014,7 @@ CeladonCityHotelText: ; 62502 (18:6502)
ret
-Unknown_62508: ; 62508 (18:6508)
+TerminatorText_62508: ; 62508 (18:6508)
db "@"
Func_62509: ; 6509 (18:6509)
@@ -97865,7 +49095,7 @@ DecrementPP: ; 68000 (1a:4000)
ret nz ; If it is, return. Pokemon Red stores the "current pokemon's" PP
; separately from the "Pokemon in your party's" PP. This is
; duplication -- in all cases *other* than Pokemon with Transform.
- ; Normally, this means we have to go on and make the same
+ ; Normally, this means we have to go on and make the same
; modification to the "party's pokemon" PP that we made to the
; "current pokemon's" PP. But, if we're dealing with a Transformed
; Pokemon, it has separate PP for the move set that it copied from
@@ -97957,7 +49187,7 @@ Underground_Block: ; 6fef0 (1b:7ef0)
SECTION "bank1C",ROMX,BANK[$1C]
-Func_70000: ; 70000 (1c:4000)
+LoadShootingStarGraphics: ; 70000 (1c:4000)
ld a, $f9
ld [rOBP0], a ; $ff48
ld a, $a4
@@ -97983,8 +49213,8 @@ Func_70000: ; 70000 (1c:4000)
ld bc, $10
jp CopyData
-Func_70044: ; 70044 (1c:4044)
- call Func_70000
+AnimateShootingStar: ; 70044 (1c:4044)
+ call LoadShootingStarGraphics
ld a, (SFX_1f_67 - SFX_Headers_1f) / 3
call PlaySound
ld hl, wOAMBuffer
@@ -98244,7 +49474,7 @@ Func_701a0: ; 701a0 (1c:41a0)
call TextBoxBorder
FuncCoord 4, 15 ; $c4d0
ld hl, Coord
- ld de, HallOfFameText ; $426b
+ ld de, HallOfFameText
call PlaceString
ld c, $b4
call DelayFrames
@@ -98345,7 +49575,7 @@ Func_702f0: ; 702f0 (1c:42f0)
call TextBoxBorder
FuncCoord 2, 6 ; $c41a
ld hl, Coord
- ld de, HoFMonInfoText ; $4329
+ ld de, HoFMonInfoText
call PlaceString
FuncCoord 1, 4 ; $c3f1
ld hl, Coord
@@ -98416,7 +49646,7 @@ Func_70377: ; 70377 (1c:4377)
call PlaceString
FuncCoord 1, 6 ; $c419
ld hl, Coord
- ld de, HoFPlayTimeText ; $43ea
+ ld de, HoFPlayTimeText
call PlaceString
FuncCoord 5, 7 ; $c431
ld hl, Coord
@@ -98430,16 +49660,16 @@ Func_70377: ; 70377 (1c:4377)
call PrintNumber
FuncCoord 1, 9 ; $c455
ld hl, Coord
- ld de, HoFMoneyText ; $43f4
+ ld de, HoFMoneyText
call PlaceString
FuncCoord 4, 10 ; $c46c
ld hl, Coord
ld de, wPlayerMoney ; $d347
ld c, $a3
call PrintBCDNumber
- ld hl, UnnamedText_703fa ; $43fa
+ ld hl, DexSeenOwnedText
call Func_703e2
- ld hl, UnnamedText_703ff ; $43ff
+ ld hl, DexRatingText
call Func_703e2
ld hl, $cc5d
@@ -98454,12 +49684,12 @@ HoFPlayTimeText: ; 703ea (1c:43ea)
HoFMoneyText: ; 703f4 (1c:43f4)
db "MONEY@"
-UnnamedText_703fa: ; 703fa (1c:43fa)
- TX_FAR _UnnamedText_703fa
+DexSeenOwnedText: ; 703fa (1c:43fa)
+ TX_FAR _DexSeenOwnedText
db "@"
-UnnamedText_703ff: ; 703ff (1c:43ff)
- TX_FAR _UnnamedText_703ff
+DexRatingText: ; 703ff (1c:43ff)
+ TX_FAR _DexRatingText
db "@"
Func_70404: ; 70404 (1c:4404)
@@ -98485,7 +49715,7 @@ Func_70423: ; 70423 (1c:4423)
ld [wMusicHeaderPointer], a
jp GBFadeOut2
-Func_70433: ; 70433 (1c:4433)
+AnimateHealingMachine: ; 70433 (1c:4433)
ld de, PokeCenterFlashingMonitorAndHealBall ; $44b7
ld hl, $87c0
ld bc, (BANK(PokeCenterFlashingMonitorAndHealBall) << 8) + $03
@@ -98667,7 +49897,7 @@ FlyAnimationEnterScreenCoords: ; 70592 (1c:4592)
db $39, $58
db $3B, $50
db $3C, $48
- db $3C, $40
+ db $3C, $40
Func_705aa: ; 705aa (1c:45aa)
ld hl, wWhichTrade ; $cd3d
@@ -98769,7 +49999,7 @@ FlyAnimationScreenCoords1: ; 7064f (1c:464f)
db $30, $88
db $2D, $90
db $2A, $98
- db $27, $A0
+ db $27, $A0
FlyAnimationScreenCoords2: ; 70667 (1c:4667)
; y, x pairs
@@ -98784,9 +50014,9 @@ FlyAnimationScreenCoords2: ; 70667 (1c:4667)
db $0C, $30
db $09, $20
db $05, $10
- db $00, $00
+ db $00, $00
- db $F0, $00
+ db $F0, $00
Func_7067d: ; 7067d (1c:467d)
ld a, $ff
@@ -98987,10 +50217,10 @@ Func_707b6: ; 707b6 (1c:47b6)
call DelayFrames
ld a, [wWhichTrade] ; $cd3d
and a
- ld hl, UnnamedText_70847 ; $4847
+ ld hl, NoNibbleText
jr z, .asm_70836
cp $2
- ld hl, UnnamedText_7084c ; $484c
+ ld hl, NothingHereText
jr z, .asm_70836
ld b, $a
.asm_707fe
@@ -99012,14 +50242,14 @@ Func_707b6: ; 707b6 (1c:47b6)
ld [hli], a
ld [hl], a
ld a, $4c
- call Predef ; indirect jump to Func_17c47 (17c47 (5:7c47))
+ call Predef ; indirect jump to PrintEmotionBubble (17c47 (5:7c47))
ld a, [$c102]
cp $4
jr nz, .asm_70833
ld a, $44
ld [$c39c], a
.asm_70833
- ld hl, UnnamedText_70851 ; $4851
+ ld hl, ItsABiteText
.asm_70836
call PrintText
ld hl, $d736
@@ -99033,16 +50263,16 @@ Func_70842: ; 70842 (1c:4842)
ld [hl], a
ret
-UnnamedText_70847: ; 70847 (1c:4847)
- TX_FAR _UnnamedText_70847
+NoNibbleText: ; 70847 (1c:4847)
+ TX_FAR _NoNibbleText
db "@"
-UnnamedText_7084c: ; 7084c (1c:484c)
- TX_FAR _UnnamedText_7084c
+NothingHereText: ; 7084c (1c:484c)
+ TX_FAR _NothingHereText
db "@"
-UnnamedText_70851: ; 70851 (1c:4851)
- TX_FAR _UnnamedText_70851
+ItsABiteText: ; 70851 (1c:4851)
+ TX_FAR _ItsABiteText
db "@"
FishingRodGfxProperties: ; 70856 (1c:4856)
@@ -99238,7 +50468,7 @@ Func_7096d: ; 7096d (1c:496d)
dec c
jr nz, .asm_70998
call Delay3
- call Func_70a4d
+ call LoadBattleTransitionTile
ld bc, $0
ld a, [W_ISLINKBATTLE] ; $d12b
cp $4
@@ -99361,7 +50591,7 @@ MapIDList_70a44: ; 70a44 (1c:4a44)
db UNKNOWN_DUNGEON_1
db $FF
-Func_70a4d: ; 70a4d (1c:4a4d)
+LoadBattleTransitionTile: ; 70a4d (1c:4a4d)
ld hl, $8ff0
ld de, BattleTransitionTile ; $4a59
ld bc, (BANK(BattleTransitionTile) << 8) + $01
@@ -100023,7 +51253,7 @@ Unknown_70e2e: ; 70e2e (1c:4e2e)
db $04,$00,$03,$00,$03,$00,$02,$00,$02,$00,$01,$00,$01,$00,$01,$FF
DisplayTownMap: ; 70e3e (1c:4e3e)
- call Func_7109b
+ call LoadTownMap
ld hl, $cfcb
ld a, [hl]
push af
@@ -100130,60 +51360,13 @@ Func_70e92: ; 70e92 (1c:4e92)
ld [wWhichTrade], a ; $cd3d
jp Func_70e7e
-TownMapOrder: ; 70f11 (1c:4f11)
- db PALLET_TOWN
- db ROUTE_1
- db VIRIDIAN_CITY
- db ROUTE_2
- db VIRIDIAN_FOREST
- db DIGLETTS_CAVE
- db PEWTER_CITY
- db ROUTE_3
- db MT_MOON_1
- db ROUTE_4
- db CERULEAN_CITY
- db ROUTE_24
- db ROUTE_25
- db BILLS_HOUSE
- db ROUTE_5
- db ROUTE_6
- db VERMILION_CITY
- db SS_ANNE_1
- db ROUTE_9
- db ROCK_TUNNEL_POKECENTER
- db ROUTE_10
- db LAVENDER_TOWN
- db POKEMONTOWER_2
- db ROUTE_8
- db ROUTE_7
- db CELADON_CITY
- db SAFFRON_CITY
- db ROUTE_11
- db ROUTE_12
- db ROUTE_13
- db ROUTE_14
- db ROUTE_15
- db ROUTE_16
- db ROUTE_17
- db ROUTE_18
- db FUCHSIA_CITY
- db SAFARI_ZONE_EAST
- db ROUTE_19
- db SEAFOAM_ISLANDS_2
- db ROUTE_20
- db CINNABAR_ISLAND
- db ROUTE_21
- db ROUTE_22
- db ROUTE_23
- db VICTORY_ROAD_3
- db INDIGO_PLATEAU
- db POWER_PLANT
+INCLUDE "data/town_map_order.asm"
TownMapCursor: ; 70f40 (1c:4f40)
INCBIN "gfx/town_map_cursor.1bpp"
-Func_70f60: ; 70f60 (1c:4f60)
- call Func_7109b
+LoadTownMap_Nest: ; 70f60 (1c:4f60)
+ call LoadTownMap
ld hl, $cfcb
ld a, [hl]
push af
@@ -100196,7 +51379,7 @@ Func_70f60: ; 70f60 (1c:4f60)
call PlaceString
ld h, b
ld l, c
- ld de, MonsNestText ; $4f89
+ ld de, MonsNestText
call PlaceString
call WaitForTextScrollButtonPress
call Func_711ab
@@ -100208,9 +51391,9 @@ Func_70f60: ; 70f60 (1c:4f60)
MonsNestText: ; 70f89 (1c:4f89)
db "'s NEST@"
-Func_70f90: ; 70f90 (1c:4f90)
+LoadTownMap_Fly: ; 70f90 (1c:4f90)
call CleanLCD_OAM
- call Func_7109b
+ call LoadTownMap
call LoadPlayerSpriteGraphics
call LoadFontTilePatterns
ld de, BirdSprite ; $4d80
@@ -100228,7 +51411,7 @@ Func_70f90: ; 70f90 (1c:4f90)
ld [hl], $ff
push hl
ld hl, wTileMap
- ld de, ToText ; $506d
+ ld de, ToText
call PlaceString
ld a, [W_CURMAP] ; $d35e
ld b, $0
@@ -100237,7 +51420,7 @@ Func_70f90: ; 70f90 (1c:4f90)
FuncCoord 18, 0 ; $c3b2
ld de, Coord
-Func_70fd6: ; 70fd6 (1c:4fd6)
+.townMapFlyLoop
ld a, $7f
ld [de], a
push hl
@@ -100307,10 +51490,10 @@ Func_70fd6: ; 70fd6 (1c:4fd6)
jr z, .asm_71052
cp $fe
jr z, .asm_71042
- jp Func_70fd6
+ jp .townMapFlyLoop
.asm_71052
ld hl, $cd3e
- jp Func_70fd6
+ jp .townMapFlyLoop
.asm_71058
FuncCoord 19, 0 ; $c3b3
ld de, Coord
@@ -100320,7 +51503,7 @@ Func_70fd6: ; 70fd6 (1c:4fd6)
jr z, .asm_71068
cp $fe
jr z, .asm_71058
- jp Func_70fd6
+ jp .townMapFlyLoop
.asm_71068
ld hl, $cd49
jr .asm_71058
@@ -100355,7 +51538,7 @@ Func_71070: ; 71070 (1c:5070)
TownMapUpArrow: ; 71093 (1c:5093)
INCBIN "gfx/up_arrow.1bpp"
-Func_7109b: ; 7109b (1c:509b)
+LoadTownMap: ; 7109b (1c:509b)
call GBPalWhiteOutWithDelay3
call ClearScreen
call UpdateSprites
@@ -100480,7 +51663,7 @@ Func_711ef: ; 711ef (1c:51ef)
call TextBoxBorder
FuncCoord 2, 9 ; $c456
ld hl, Coord
- ld de, AreaUnknownText ; $524a
+ ld de, AreaUnknownText
call PlaceString
jr .asm_7123e
.asm_71236
@@ -100646,215 +51829,9 @@ Func_712f1: ; 712f1 (1c:52f1)
ld l, a
ret
-ExternalMapEntries: ; 71313 (1c:5313)
- EMAP $2,$B,PalletTownName
- EMAP $2,$8,ViridianCityName
- EMAP $2,$3,PewterCityName
- EMAP $A,$2,CeruleanCityName
- EMAP $E,$5,LavenderTownName
- EMAP $A,$9,VermilionCityName
- EMAP $7,$5,CeladonCityName
- EMAP $8,$D,FuchsiaCityName
- EMAP $2,$F,CinnabarIslandName
- EMAP $0,$2,IndigoPlateauName
- EMAP $A,$5,SaffronCityName
- EMAP $0,$0,PalletTownName ; unused
- EMAP $2,$A,Route1Name
- EMAP $2,$6,Route2Name
- EMAP $4,$3,Route3Name
- EMAP $8,$2,Route4Name
- EMAP $A,$3,Route5Name
- EMAP $A,$8,Route6Name
- EMAP $8,$5,Route7Name
- EMAP $D,$5,Route8Name
- EMAP $D,$2,Route9Name
- EMAP $E,$4,Route10Name
- EMAP $C,$9,Route11Name
- EMAP $E,$9,Route12Name
- EMAP $D,$B,Route13Name
- EMAP $B,$C,Route14Name
- EMAP $A,$D,Route15Name
- EMAP $5,$5,Route16Name
- EMAP $4,$8,Route17Name
- EMAP $6,$D,Route18Name
- EMAP $6,$F,Route19Name
- EMAP $4,$F,Route20Name
- EMAP $2,$D,Route21Name
- EMAP $0,$8,Route22Name
- EMAP $0,$6,Route23Name
- EMAP $A,$1,Route24Name
- EMAP $B,$0,Route25Name
-
-InternalMapEntries: ; 71382 (1c:5382)
- IMAP $29,$2,$B,PalletTownName
- IMAP $2E,$2,$8,ViridianCityName
- IMAP $33,$2,$6,Route2Name
- IMAP $34,$2,$4,ViridianForestName
- IMAP $3B,$2,$3,PewterCityName
- IMAP $3E,$6,$2,MountMoonName
- IMAP $44,$A,$2,CeruleanCityName
- IMAP $45,$5,$2,Route4Name
- IMAP $46,$A,$2,CeruleanCityName
- IMAP $49,$A,$4,Route5Name
- IMAP $4C,$A,$6,Route6Name
- IMAP $4F,$9,$5,Route7Name
- IMAP $51,$B,$5,Route8Name
- IMAP $53,$E,$3,RockTunnelName
- IMAP $54,$F,$4,PowerPlantName
- IMAP $57,$D,$9,Route11Name
- IMAP $58,$E,$7,Route12Name
- IMAP $59,$C,$0,SeaCottageName
- IMAP $5F,$A,$9,VermilionCityName
- IMAP $69,$9,$A,SSAnneName
- IMAP $6D,$0,$4,VictoryRoadName
- IMAP $77,$0,$2,PokemonLeagueName
- IMAP $78,$A,$5,UndergroundPathName
- IMAP $79,$0,$2,PokemonLeagueName
- IMAP $7A,$A,$5,UndergroundPathName
- IMAP $8D,$7,$5,CeladonCityName
- IMAP $8E,$E,$5,LavenderTownName
- IMAP $95,$F,$5,PokemonTowerName
- IMAP $98,$E,$5,LavenderTownName
- IMAP $9C,$8,$D,FuchsiaCityName
- IMAP $9D,$8,$C,SafariZoneName
- IMAP $9F,$8,$D,FuchsiaCityName
- IMAP $A3,$5,$F,SeafoamIslandsName
- IMAP $A4,$A,$9,VermilionCityName
- IMAP $A5,$8,$D,FuchsiaCityName
- IMAP $A6,$2,$F,PokemonMansionName
- IMAP $AE,$2,$F,CinnabarIslandName
- IMAP $AF,$0,$2,IndigoPlateauName
- IMAP $B8,$A,$5,SaffronCityName
- IMAP $BA,$9,$D,Route15Name
- IMAP $BD,$4,$5,Route16Name
- IMAP $BE,$E,$A,Route12Name
- IMAP $C0,$7,$D,Route18Name
- IMAP $C1,$5,$F,SeafoamIslandsName
- IMAP $C2,$0,$7,Route22Name
- IMAP $C3,$0,$4,VictoryRoadName
- IMAP $C4,$E,$7,Route12Name
- IMAP $C5,$A,$9,VermilionCityName
- IMAP $C6,$3,$4,DiglettsCaveName
- IMAP $C7,$0,$4,VictoryRoadName
- IMAP $CF,$7,$5,RocketHQName
- IMAP $D6,$A,$5,SilphCoName
- IMAP $D9,$2,$F,PokemonMansionName
- IMAP $E2,$8,$C,SafariZoneName
- IMAP $E5,$9,$1,CeruleanCaveName
- IMAP $E6,$E,$5,LavenderTownName
- IMAP $E7,$A,$2,CeruleanCityName
- IMAP $E9,$E,$3,RockTunnelName
- IMAP $ED,$A,$5,SilphCoName
- IMAP $F8,$0,$2,PokemonLeagueName
- db $FF
+INCLUDE "data/town_map_entries.asm"
-MapNames: ; 71473 (1c:5473)
-PalletTownName: ; 71473 (1c:5473)
- db "PALLET TOWN@"
-ViridianCityName: ; 7147f (1c:547f)
- db "VIRIDIAN CITY@"
-PewterCityName: ; 7148d (1c:548d)
- db "PEWTER CITY@"
-CeruleanCityName: ; 71499 (1c:5499)
- db "CERULEAN CITY@"
-LavenderTownName: ; 714a7 (1c:54a7)
- db "LAVENDER TOWN@"
-VermilionCityName: ; 714b5 (1c:54b5)
- db "VERMILION CITY@"
-CeladonCityName: ; 714c4 (1c:54c4)
- db "CELADON CITY@"
-FuchsiaCityName: ; 714d1 (1c:54d1)
- db "FUCHSIA CITY@"
-CinnabarIslandName: ; 714de (1c:54de)
- db "CINNABAR ISLAND@"
-IndigoPlateauName: ; 714ee (1c:54ee)
- db "INDIGO PLATEAU@"
-SaffronCityName: ; 714fd (1c:54fd)
- db "SAFFRON CITY@"
-Route1Name: ; 7150a (1c:550a)
- db "ROUTE 1@"
-Route2Name: ; 71512 (1c:5512)
- db "ROUTE 2@"
-Route3Name: ; 7151a (1c:551a)
- db "ROUTE 3@"
-Route4Name: ; 71522 (1c:5522)
- db "ROUTE 4@"
-Route5Name: ; 7152a (1c:552a)
- db "ROUTE 5@"
-Route6Name: ; 71532 (1c:5532)
- db "ROUTE 6@"
-Route7Name: ; 7153a (1c:553a)
- db "ROUTE 7@"
-Route8Name: ; 71542 (1c:5542)
- db "ROUTE 8@"
-Route9Name: ; 7154a (1c:554a)
- db "ROUTE 9@"
-Route10Name: ; 71552 (1c:5552)
- db "ROUTE 10@"
-Route11Name: ; 7155b (1c:555b)
- db "ROUTE 11@"
-Route12Name: ; 71564 (1c:5564)
- db "ROUTE 12@"
-Route13Name: ; 7156d (1c:556d)
- db "ROUTE 13@"
-Route14Name: ; 71576 (1c:5576)
- db "ROUTE 14@"
-Route15Name: ; 7157f (1c:557f)
- db "ROUTE 15@"
-Route16Name: ; 71588 (1c:5588)
- db "ROUTE 16@"
-Route17Name: ; 71591 (1c:5591)
- db "ROUTE 17@"
-Route18Name: ; 7159a (1c:559a)
- db "ROUTE 18@"
-Route19Name: ; 715a3 (1c:55a3)
- db "SEA ROUTE 19@"
-Route20Name: ; 715b0 (1c:55b0)
- db "SEA ROUTE 20@"
-Route21Name: ; 715bd (1c:55bd)
- db "SEA ROUTE 21@"
-Route22Name: ; 715ca (1c:55ca)
- db "ROUTE 22@"
-Route23Name: ; 715d3 (1c:55d3)
- db "ROUTE 23@"
-Route24Name: ; 715dc (1c:55dc)
- db "ROUTE 24@"
-Route25Name: ; 715e5 (1c:55e5)
- db "ROUTE 25@"
-ViridianForestName: ; 715ee (1c:55ee)
- db "VIRIDIAN FOREST@"
-MountMoonName: ; 715fe (1c:55fe)
- db "MT.MOON@"
-RockTunnelName: ; 71606 (1c:5606)
- db "ROCK TUNNEL@"
-SeaCottageName: ; 71612 (1c:5612)
- db "SEA COTTAGE@"
-SSAnneName: ; 7161e (1c:561e)
- db "S.S.ANNE@"
-PokemonLeagueName: ; 71627 (1c:5627)
- db "#MON LEAGUE@"
-UndergroundPathName: ; 71633 (1c:5633)
- db "UNDERGROUND PATH@"
-PokemonTowerName: ; 71644 (1c:5644)
- db "#MON TOWER@"
-SeafoamIslandsName: ; 7164f (1c:564f)
- db "SEAFOAM ISLANDS@"
-VictoryRoadName: ; 7165f (1c:565f)
- db "VICTORY ROAD@"
-DiglettsCaveName: ; 7166c (1c:566c)
- db "DIGLETT's CAVE@"
-RocketHQName: ; 7167a (1c:567a)
- db "ROCKET HQ@"
-SilphCoName: ; 71684 (1c:5684)
- db "SILPH CO.@"
-PokemonMansionName: ; 7168e (1c:568e)
- db $4a," MANSION@"
-SafariZoneName: ; 71698 (1c:5698)
- db "SAFARI ZONE@"
-CeruleanCaveName: ; 716a4 (1c:56a4)
- db "CERULEAN CAVE@"
-PowerPlantName: ; 716b2 (1c:56b2)
- db "POWER PLANT@"
+INCLUDE "text/map_names.asm"
MonNestIcon: ; 716be (1c:56be)
INCBIN "gfx/mon_nest_icon.1bpp"
@@ -100886,23 +51863,28 @@ Func_716c6: ; 716c6 (1c:56c6)
ld [W_SUBANIMTRANSFORM], a ; $d08b
jp DelayFrame
-Func_716f7: ; 716f7 (1c:56f7)
+AnimatePartyMon_ForceSpeed1: ; 716f7 (1c:56f7)
xor a
ld [wCurrentMenuItem], a ; $cc26
ld b, a
inc a
- jr asm_7170a
+ jr GetAnimationSpeed
-Func_716ff: ; 716ff (1c:56ff)
+; $cf1f contains the party mon's health bar colors
+; 0: green
+; 1: yellow
+; 2: red
+AnimatePartyMon: ; 716ff (1c:56ff)
ld hl, $cf1f
- ld a, [wCurrentMenuItem] ; $cc26
+ ld a, [wCurrentMenuItem]
ld c, a
ld b, $0
add hl, bc
ld a, [hl]
-asm_7170a: ; 7170a (1c:570a)
+
+GetAnimationSpeed: ; 7170a (1c:570a)
ld c, a
- ld hl, DataTable_71769 ; $5769
+ ld hl, PartyMonSpeeds
add hl, bc
ld a, [$cf1b]
xor $1
@@ -100912,18 +51894,18 @@ asm_7170a: ; 7170a (1c:570a)
ld b, a
ld a, [W_SUBANIMTRANSFORM] ; $d08b
and a
- jr z, .asm_7172c
+ jr z, .resetSprites
cp c
- jr z, .asm_7173d
-.asm_71721
+ jr z, .animateSprite
+.incTimer
inc a
cp b
- jr nz, .asm_71726
+ jr nz, .resetTimer
xor a
-.asm_71726
+.resetTimer
ld [W_SUBANIMTRANSFORM], a ; $d08b
jp DelayFrame
-.asm_7172c
+.resetSprites
push bc
ld hl, $cc5b
ld de, wOAMBuffer
@@ -100931,38 +51913,40 @@ asm_7170a: ; 7170a (1c:570a)
call CopyData
pop bc
xor a
- jr .asm_71721
-.asm_7173d
+ jr .incTimer
+.animateSprite
push bc
- ld hl, $c302
+ ld hl, $c302 ; OAM tile id
ld bc, $10
- ld a, [wCurrentMenuItem] ; $cc26
+ ld a, [wCurrentMenuItem]
call AddNTimes
- ld c, $40
- ld a, [hl]
- cp $4
- jr z, .asm_71755
- cp $8
- jr nz, .asm_71759
-.asm_71755
- dec hl
+ ld c, $40 ; amount to increase the tile id by
+ ld a, [hl]
+ cp $4 ; tile ID for SPRITE_BALL_M
+ jr z, .editCoords
+ cp $8 ; tile ID for SPRITE_HELIX
+ jr nz, .editTileIDS
+; SPRITE_BALL_M and SPRITE_HELIX only shake up and down
+.editCoords
dec hl
- ld c, $1
-.asm_71759
+ dec hl ; dec hl to the OAM y coord
+ ld c, $1 ; amount to increase the y coord by
+; otherwise, load a second sprite frame
+.editTileIDS
ld b, $4
ld de, $4
-.asm_7175e
+.loop
ld a, [hl]
add c
ld [hl], a
add hl, de
dec b
- jr nz, .asm_7175e
+ jr nz, .loop
pop bc
ld a, c
- jr .asm_71721
+ jr .incTimer
-DataTable_71769: ; 71769 (1c:5769)
+PartyMonSpeeds: ; 71769 (1c:5769)
db $05,$10,$20
Func_7176c: ; 7176c (1c:576c)
@@ -101184,7 +52168,7 @@ Func_71868: ; 71868 (1c:5868)
ld d, $0
add hl, de
ld a, [hl]
- call Func_718e9
+ call GetPartyMonSpriteID
ld [$cd5b], a
call Func_718c3
pop bc
@@ -101196,13 +52180,13 @@ Func_71882: ; 71882 (1c:5882)
xor a
ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
ld a, [$cd5d]
- call Func_718e9
+ call GetPartyMonSpriteID
ld [$cd5b], a
jr Func_718c3
Func_71890: ; 71890 (1c:5890)
ld a, [$cf91]
- call Func_718e9
+ call GetPartyMonSpriteID
push af
ld hl, $8000
call Func_718ac
@@ -101256,7 +52240,7 @@ Func_718c3: ; 718c3 (1c:58c3)
ld bc, $60
jp CopyData
-Func_718e9: ; 718e9 (1c:58e9)
+GetPartyMonSpriteID: ; 718e9 (1c:58e9)
ld [$d11e], a
ld a, $3a
call Predef ; indirect jump to IndexToPokedex (41010 (10:5010))
@@ -101278,83 +52262,7 @@ Func_718e9: ; 718e9 (1c:58e9)
srl a
ret
-MonOverworldData: ; 7190d (1c:590d)
- dn SPRITE_GRASS, SPRITE_GRASS ;Bulbasaur/Ivysaur
- dn SPRITE_GRASS, SPRITE_MON ;Venusaur/Charmander
- dn SPRITE_MON, SPRITE_MON ;Charmeleon/Charizard
- dn SPRITE_WATER, SPRITE_WATER ;Squirtle/Wartortle
- dn SPRITE_WATER, SPRITE_BUG ;Blastoise/Caterpie
- dn SPRITE_BUG, SPRITE_BUG ;Metapod/Butterfree
- dn SPRITE_BUG, SPRITE_BUG ;Weedle/Kakuna
- dn SPRITE_BUG, SPRITE_BIRD_M ;Beedrill/Pidgey
- dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Pidgeotto/Pidgeot
- dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Rattata/Raticate
- dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Spearow/Fearow
- dn SPRITE_SNAKE, SPRITE_SNAKE ;Ekans/Arbok
- dn SPRITE_FAIRY, SPRITE_FAIRY ;Pikachu/Raichu
- dn SPRITE_MON, SPRITE_MON ;Sandshrew/Sandslash
- dn SPRITE_MON, SPRITE_MON ;Nidoran?/Nidorina
- dn SPRITE_MON, SPRITE_MON ;Nidoqueen/Nidoran?
- dn SPRITE_MON, SPRITE_MON ;Nidorino/Nidoking
- dn SPRITE_FAIRY, SPRITE_FAIRY ;Clefairy/Clefable
- dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Vulpix/Ninetales
- dn SPRITE_FAIRY, SPRITE_FAIRY ;Jigglypuff/Wigglytuff
- dn SPRITE_MON, SPRITE_MON ;Zubat/Golbat
- dn SPRITE_GRASS, SPRITE_GRASS ;Oddish/Gloom
- dn SPRITE_GRASS, SPRITE_BUG ;Vileplume/Paras
- dn SPRITE_BUG, SPRITE_BUG ;Parasect/Venonat
- dn SPRITE_BUG, SPRITE_MON ;Venomoth/Diglett
- dn SPRITE_MON, SPRITE_MON ;Dugtrio/Meowth
- dn SPRITE_MON, SPRITE_MON ;Persian/Psyduck
- dn SPRITE_MON, SPRITE_MON ;Golduck/Mankey
- dn SPRITE_MON, SPRITE_QUADRUPED ;Primeape/Growlithe
- dn SPRITE_QUADRUPED, SPRITE_MON ;Arcanine/Poliwag
- dn SPRITE_MON, SPRITE_MON ;Poliwhirl/Poliwrath
- dn SPRITE_MON, SPRITE_MON ;Abra/Kadabra
- dn SPRITE_MON, SPRITE_MON ;Alakazam/Machop
- dn SPRITE_MON, SPRITE_MON ;Machoke/Machamp
- dn SPRITE_GRASS, SPRITE_GRASS ;Bellsprout/Weepinbell
- dn SPRITE_GRASS, SPRITE_WATER ;Victreebel/Tentacool
- dn SPRITE_WATER, SPRITE_MON ;Tentacruel/Geodude
- dn SPRITE_MON, SPRITE_MON ;Graveler/Golem
- dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Ponyta/Rapidash
- dn SPRITE_QUADRUPED, SPRITE_MON ;Slowpoke/Slowbro
- dn SPRITE_BALL_M, SPRITE_BALL_M ;Magnemite/Magneton
- dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Farfetch'd/Doduo
- dn SPRITE_BIRD_M, SPRITE_WATER ;Dodrio/Seel
- dn SPRITE_WATER, SPRITE_MON ;Dewgong/Grimer
- dn SPRITE_MON, SPRITE_HELIX ;Muk/Shellder
- dn SPRITE_HELIX, SPRITE_MON ;Cloyster/Gastly
- dn SPRITE_MON, SPRITE_MON ;Haunter/Gengar
- dn SPRITE_SNAKE, SPRITE_MON ;Onix/Drowzee
- dn SPRITE_MON, SPRITE_WATER ;Hypno/Krabby
- dn SPRITE_WATER, SPRITE_BALL_M ;Kingler/Voltorb
- dn SPRITE_BALL_M, SPRITE_GRASS ;Electrode/Exeggcute
- dn SPRITE_GRASS, SPRITE_MON ;Exeggutor/Cubone
- dn SPRITE_MON, SPRITE_MON ;Marowak/Hitmonlee
- dn SPRITE_MON, SPRITE_MON ;Hitmonchan/Lickitung
- dn SPRITE_MON, SPRITE_MON ;Koffing/Weezing
- dn SPRITE_QUADRUPED, SPRITE_MON ;Rhyhorn/Rhydon
- dn SPRITE_FAIRY, SPRITE_GRASS ;Chansey/Tangela
- dn SPRITE_MON, SPRITE_WATER ;Kangaskhan/Horsea
- dn SPRITE_WATER, SPRITE_WATER ;Seadra/Goldeen
- dn SPRITE_WATER, SPRITE_HELIX ;Seaking/Staryu
- dn SPRITE_HELIX, SPRITE_MON ;Starmie/Mr.Mime
- dn SPRITE_BUG, SPRITE_MON ;Scyther/Jynx
- dn SPRITE_MON, SPRITE_MON ;Electabuzz/Magmar
- dn SPRITE_BUG, SPRITE_QUADRUPED ;Pinsir/Tauros
- dn SPRITE_WATER, SPRITE_SNAKE ;Magikarp/Gyarados
- dn SPRITE_WATER, SPRITE_MON ;Lapras/Ditto
- dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Eevee/Vaporeon
- dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Jolteon/Flareon
- dn SPRITE_MON, SPRITE_HELIX ;Porygon/Omanyte
- dn SPRITE_HELIX, SPRITE_HELIX ;Omastar/Kabuto
- dn SPRITE_HELIX, SPRITE_BIRD_M ;Kabutops/Aerodactyl
- dn SPRITE_MON, SPRITE_BIRD_M ;Snorlax/Articuno
- dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Zapdos/Moltres
- dn SPRITE_SNAKE, SPRITE_SNAKE ;Dratini/Dragonair
- dn SPRITE_SNAKE, SPRITE_MON ;Dragonite/Mewtwo
- dn SPRITE_MON, 0 ;Mew/Padding
+INCLUDE "data/mon_party_sprites.asm"
MonOverworldSprites: ; 71959 (1c:5959)
INCBIN "gfx/mon_ow_sprites.2bpp"
@@ -101418,7 +52326,7 @@ Predef54: ; 71ad9 (1c:5ad9)
jr nz,.asm_99bca ; 0x71b4b $b
call Func_71c07
jr c,.asm_99bca ; 0x71b50 $6
- ld hl, UnnamedText_71d8d
+ ld hl, TradedForText
call PrintText
.asm_99bca ; 0x71b58
ld hl,$cd12
@@ -101444,18 +52352,7 @@ Func_71b6a: ; 71b6a (1c:5b6a)
ld bc,$b
jp CopyData
-TradeMons: ; 71b7b (1c:5b7b)
-; givemonster, getmonster, textstring, nickname (11 bytes), 14 bytes total
- db NIDORINO, NIDORINA, 0,"TERRY@@@@@@"
- db ABRA, MR_MIME, 0,"MARCEL@@@@@"
- db BUTTERFREE,BEEDRILL, 2,"CHIKUCHIKU@"
- db PONYTA, SEEL, 0,"SAILOR@@@@@"
- db SPEAROW, FARFETCH_D,2,"DUX@@@@@@@@"
- db SLOWBRO, LICKITUNG, 0,"MARC@@@@@@@"
- db POLIWHIRL, JYNX, 1,"LOLA@@@@@@@"
- db RAICHU, ELECTRODE, 1,"DORIS@@@@@@"
- db VENONAT, TANGELA, 2,"CRINKLES@@@"
- db NIDORAN_M, NIDORAN_F, 2,"SPOT@@@@@@@"
+INCLUDE "data/trades.asm"
Func_71c07: ; 71c07 (1c:5c07)
xor a
@@ -101486,7 +52383,7 @@ Func_71c07: ; 71c07 (1c:5c07)
ld b,$1
ld a,$10
call Predef
- ld hl, UnnamedText_71d88
+ ld hl, ConnectCableText
call PrintText
ld a,[wWhichPokemon]
push af
@@ -101612,92 +52509,92 @@ InGameTradeTextPointers: ; 71d64 (1c:5d64)
dw TradeTextPointers3
TradeTextPointers1: ; 71d6a (1c:5d6a)
- dw UnnamedText_71d94
- dw UnnamedText_71d99
- dw UnnamedText_71d9e
- dw UnnamedText_71da3
- dw UnnamedText_71da8
+ dw WannaTrade1Text
+ dw NoTrade1Text
+ dw WrongMon1Text
+ dw Thanks1Text
+ dw AfterTrade1Text
TradeTextPointers2: ; 71d74 (1c:5d74)
- dw UnnamedText_71dad
- dw UnnamedText_71db2
- dw UnnamedText_71db7
- dw UnnamedText_71dbc
- dw UnnamedText_71dc1
+ dw WannaTrade2Text
+ dw NoTrade2Text
+ dw WrongMon2Text
+ dw Thanks2Text
+ dw AfterTrade2Text
TradeTextPointers3: ; 71d7e (1c:5d7e)
- dw UnnamedText_71dc6
- dw UnnamedText_71dcb
- dw UnnamedText_71dd0
- dw UnnamedText_71dd5
- dw UnnamedText_71dda
-
-UnnamedText_71d88: ; 71d88 (1c:5d88)
- TX_FAR _UnnamedText_71d88
+ dw WannaTrade3Text
+ dw NoTrade3Text
+ dw WrongMon3Text
+ dw Thanks3Text
+ dw AfterTrade3Text
+
+ConnectCableText: ; 71d88 (1c:5d88)
+ TX_FAR _ConnectCableText
db "@"
-UnnamedText_71d8d: ; 71d8d (1c:5d8d)
- TX_FAR _UnnamedText_71d8d ; 0xa80bc
+TradedForText: ; 71d8d (1c:5d8d)
+ TX_FAR _TradedForText
db $11, $a, "@"
-UnnamedText_71d94: ; 71d94 (1c:5d94)
- TX_FAR _UnnamedText_71d94
+WannaTrade1Text: ; 71d94 (1c:5d94)
+ TX_FAR _WannaTrade1Text
db "@"
-UnnamedText_71d99: ; 71d99 (1c:5d99)
- TX_FAR _UnnamedText_71d99
+NoTrade1Text: ; 71d99 (1c:5d99)
+ TX_FAR _NoTrade1Text
db "@"
-UnnamedText_71d9e: ; 71d9e (1c:5d9e)
- TX_FAR _UnnamedText_71d9e
+WrongMon1Text: ; 71d9e (1c:5d9e)
+ TX_FAR _WrongMon1Text
db "@"
-UnnamedText_71da3: ; 71da3 (1c:5da3)
- TX_FAR _UnnamedText_71da3
+Thanks1Text: ; 71da3 (1c:5da3)
+ TX_FAR _Thanks1Text
db "@"
-UnnamedText_71da8: ; 71da8 (1c:5da8)
- TX_FAR _UnnamedText_71da8
+AfterTrade1Text: ; 71da8 (1c:5da8)
+ TX_FAR _AfterTrade1Text
db "@"
-UnnamedText_71dad: ; 71dad (1c:5dad)
- TX_FAR _UnnamedText_71dad
+WannaTrade2Text: ; 71dad (1c:5dad)
+ TX_FAR _WannaTrade2Text
db "@"
-UnnamedText_71db2: ; 71db2 (1c:5db2)
- TX_FAR _UnnamedText_71db2
+NoTrade2Text: ; 71db2 (1c:5db2)
+ TX_FAR _NoTrade2Text
db "@"
-UnnamedText_71db7: ; 71db7 (1c:5db7)
- TX_FAR _UnnamedText_71db7
+WrongMon2Text: ; 71db7 (1c:5db7)
+ TX_FAR _WrongMon2Text
db "@"
-UnnamedText_71dbc: ; 71dbc (1c:5dbc)
- TX_FAR _UnnamedText_71dbc
+Thanks2Text: ; 71dbc (1c:5dbc)
+ TX_FAR _Thanks2Text
db "@"
-UnnamedText_71dc1: ; 71dc1 (1c:5dc1)
- TX_FAR _UnnamedText_71dc1
+AfterTrade2Text: ; 71dc1 (1c:5dc1)
+ TX_FAR _AfterTrade2Text
db "@"
-UnnamedText_71dc6: ; 71dc6 (1c:5dc6)
- TX_FAR _UnnamedText_71dc6
+WannaTrade3Text: ; 71dc6 (1c:5dc6)
+ TX_FAR _WannaTrade3Text
db "@"
-UnnamedText_71dcb: ; 71dcb (1c:5dcb)
- TX_FAR _UnnamedText_71dcb
+NoTrade3Text: ; 71dcb (1c:5dcb)
+ TX_FAR _NoTrade3Text
db "@"
-UnnamedText_71dd0: ; 71dd0 (1c:5dd0)
- TX_FAR _UnnamedText_71dd0
+WrongMon3Text: ; 71dd0 (1c:5dd0)
+ TX_FAR _WrongMon3Text
db "@"
-UnnamedText_71dd5: ; 71dd5 (1c:5dd5)
- TX_FAR _UnnamedText_71dd5
+Thanks3Text: ; 71dd5 (1c:5dd5)
+ TX_FAR _Thanks3Text
db "@"
-UnnamedText_71dda: ; 71dda (1c:5dda)
- TX_FAR _UnnamedText_71dda
+AfterTrade3Text: ; 71dda (1c:5dda)
+ TX_FAR _AfterTrade3Text
db "@"
Func_71ddf: ; 71ddf (1c:5ddf)
@@ -101721,13 +52618,14 @@ Func_71ddf: ; 71ddf (1c:5ddf)
push de
jp [hl]
-Func_71dff: ; 71dff (1c:5dff)
- ld hl, PalPacket_72448
- ld de, BlkPacket_721b5
+SendPalPacket_Black: ; 71dff (1c:5dff)
+ ld hl, PalPacket_Black
+ ld de, BlkPacket_Battle
ret
-Func_71e06: ; 71e06 (1c:5e06)
- ld hl, PalPacket_72428
+; uses PalPacket_Empty to build a packet based on mon IDs and health color
+BuildBattlePalPacket: ; 71e06 (1c:5e06)
+ ld hl, PalPacket_Empty
ld de, $cf2d
ld bc, $10
call CopyData
@@ -101741,11 +52639,11 @@ Func_71e06: ; 71e06 (1c:5e06)
ld c, a
ld hl, $cf2e
ld a, [$cf1d]
- add $1f
+ add PAL_GREENBAR
ld [hli], a
inc hl
ld a, [$cf1e]
- add $1f
+ add PAL_GREENBAR
ld [hli], a
inc hl
ld a, b
@@ -101754,18 +52652,19 @@ Func_71e06: ; 71e06 (1c:5e06)
ld a, c
ld [hl], a
ld hl, $cf2d
- ld de, BlkPacket_721b5
+ ld de, BlkPacket_Battle
ld a, $1
ld [$cf1c], a
ret
-Func_71e48: ; 71e48 (1c:5e48)
- ld hl, PalPacket_72458
- ld de, BlkPacket_7219e
+SendPalPacket_TownMap: ; 71e48 (1c:5e48)
+ ld hl, PalPacket_TownMap
+ ld de, BlkPacket_WholeScreen
ret
-Func_71e4f: ; 71e4f (1c:5e4f)
- ld hl, PalPacket_72428
+; uses PalPacket_Empty to build a packet based the mon ID
+BuildStatusScreenPalPacket: ; 71e4f (1c:5e4f)
+ ld hl, PalPacket_Empty
ld de, $cf2d
ld bc, $10
call CopyData
@@ -101774,7 +52673,7 @@ Func_71e4f: ; 71e4f (1c:5e4f)
jr c, .pokemon
ld a, $1 ; not pokemon
.pokemon
- call DeterminePaletteIDOoutOfBattle
+ call DeterminePaletteIDOutOfBattle
push af
ld hl, $cf2e
ld a, [$cf25]
@@ -101784,56 +52683,58 @@ Func_71e4f: ; 71e4f (1c:5e4f)
pop af
ld [hl], a
ld hl, $cf2d
- ld de, BlkPacket_721fa
+ ld de, BlkPacket_StatusScreen
ret
-Func_71e7b: ; 71e7b (1c:5e7b)
- ld hl, PalPacket_72438
+SendPalPacket_PartyMenu: ; 71e7b (1c:5e7b)
+ ld hl, PalPacket_PartyMenu
ld de, $cf2e
ret
-Func_71e82: ; 71e82 (1c:5e82)
- ld hl, PalPacket_72468
+SendPalPacket_Pokedex: ; 71e82 (1c:5e82)
+ ld hl, PalPacket_Pokedex
ld de, $cf2d
ld bc, $10
call CopyData
ld a, [$cf91]
- call DeterminePaletteIDOoutOfBattle
+ call DeterminePaletteIDOutOfBattle
ld hl, $cf30
ld [hl], a
ld hl, $cf2d
- ld de, BlkPacket_72222
+ ld de, BlkPacket_Pokedex
ret
-Func_71e9f: ; 71e9f (1c:5e9f)
- ld hl, PalPacket_72478
- ld de, BlkPacket_7224f
+SendPalPacket_Slots: ; 71e9f (1c:5e9f)
+ ld hl, PalPacket_Slots
+ ld de, BlkPacket_Slots
ret
-Func_71ea6: ; 71ea6 (1c:5ea6)
- ld hl, PalPacket_72488
- ld de, BlkPacket_7228e
+SendPalPacket_Titlescreen: ; 71ea6 (1c:5ea6)
+ ld hl, PalPacket_Titlescreen
+ ld de, BlkPacket_Titlescreen
ret
-Func_71ead: ; 71ead (1c:5ead)
- ld hl, PalPacket_724a8
- ld de, BlkPacket_7219e
+; used mostly for menus and the Oak intro
+SendPalPacket_Generic: ; 71ead (1c:5ead)
+ ld hl, PalPacket_Generic
+ ld de, BlkPacket_WholeScreen
ret
-Func_71eb4: ; 71eb4 (1c:5eb4)
- ld hl, PalPacket_724b8
- ld de, BlkPacket_722c1
+SendPalPacket_NidorinoIntro: ; 71eb4 (1c:5eb4)
+ ld hl, PalPacket_NidorinoIntro
+ ld de, BlkPacket_NidorinoIntro
ret
-Func_71ebb: ; 71ebb (1c:5ebb)
- ld hl, PalPacket_724c8
- ld de, BlkPacket_723dd
+SendPalPacket_GameFreakIntro: ; 71ebb (1c:5ebb)
+ ld hl, PalPacket_GameFreakIntro
+ ld de, BlkPacket_GameFreakIntro
ld a, $8
ld [$cf1c], a
ret
-GetMapPaletteID: ; 71ec7 (1c:5ec7)
- ld hl, PalPacket_72428
+; uses PalPacket_Empty to build a packet based on the current map
+BuildOverworldPalPacket: ; 71ec7 (1c:5ec7)
+ ld hl, PalPacket_Empty
ld de, $cf2d
ld bc, $10
call CopyData
@@ -101863,7 +52764,7 @@ GetMapPaletteID: ; 71ec7 (1c:5ec7)
inc a ; a town's pallete ID is its map ID + 1
ld hl, $cf2e
ld [hld], a
- ld de, BlkPacket_7219e
+ ld de, BlkPacket_WholeScreen
ld a, $9
ld [$cf1c], a
ret
@@ -101877,9 +52778,11 @@ GetMapPaletteID: ; 71ec7 (1c:5ec7)
xor a
jr .town
-Func_71f17: ; 71f17 (1c:5f17)
+; used when a Pokemon is the only thing on the screen
+; such as evolution, trading and the Hall of Fame
+SendPokemonPalette_WholeScreen: ; 71f17 (1c:5f17)
push bc
- ld hl, PalPacket_72428
+ ld hl, PalPacket_Empty
ld de, $cf2d
ld bc, $10
call CopyData
@@ -101889,15 +52792,15 @@ Func_71f17: ; 71f17 (1c:5f17)
ld a, $1e
jr nz, .asm_71f31
ld a, [$cf1d]
- call DeterminePaletteIDOoutOfBattle
+ call DeterminePaletteIDOutOfBattle
.asm_71f31
ld [$cf2e], a
ld hl, $cf2d
- ld de, BlkPacket_7219e
+ ld de, BlkPacket_WholeScreen
ret
-LoadTrainerCardBadgePalettes: ; 71f3b (1c:5f3b)
- ld hl, BlkPacket_72360
+BuildTrainerCardPalPacket: ; 71f3b (1c:5f3b)
+ ld hl, BlkPacket_TrainerCard
ld de, $cc5b
ld bc, $40
call CopyData
@@ -101930,25 +52833,25 @@ LoadTrainerCardBadgePalettes: ; 71f3b (1c:5f3b)
inc de
dec c
jr nz, .asm_71f52
- ld hl, PalPacket_72498
+ ld hl, PalPacket_TrainerCard
ld de, $cc5b
ret
PointerTable_71f73: ; 71f73 (1c:5f73)
- dw Func_71dff
- dw Func_71e06
- dw Func_71e48
- dw Func_71e4f
- dw Func_71e82
- dw Func_71e9f
- dw Func_71ea6
- dw Func_71eb4
- dw Func_71ead
- dw GetMapPaletteID
- dw Func_71e7b
- dw Func_71f17
- dw Func_71ebb
- dw LoadTrainerCardBadgePalettes
+ dw SendPalPacket_Black
+ dw BuildBattlePalPacket
+ dw SendPalPacket_TownMap
+ dw BuildStatusScreenPalPacket
+ dw SendPalPacket_Pokedex
+ dw SendPalPacket_Slots
+ dw SendPalPacket_Titlescreen
+ dw SendPalPacket_NidorinoIntro
+ dw SendPalPacket_Generic
+ dw BuildOverworldPalPacket
+ dw SendPalPacket_PartyMenu
+ dw SendPokemonPalette_WholeScreen
+ dw SendPalPacket_GameFreakIntro
+ dw BuildTrainerCardPalPacket
; each byte is the number of loops to make in .asm_71f5b for each badge
LoopCounts_71f8f: ; 71f8f (1c:5f8f)
@@ -101959,7 +52862,7 @@ DeterminePaletteID: ; 71f97 (1c:5f97)
ld a, PAL_GREYMON ; if yes, use Ditto's palette
ret nz
ld a, [hl]
-DeterminePaletteIDOoutOfBattle: ; 71f9d (1c:5f9d)
+DeterminePaletteIDOutOfBattle: ; 71f9d (1c:5f9d)
ld [$D11E], a
and a
jr z, .idZero
@@ -101976,8 +52879,8 @@ DeterminePaletteIDOoutOfBattle: ; 71f9d (1c:5f9d)
ld a, [hl]
ret
-Func_71fb6: ; 71fb6 (1c:5fb6)
- ld hl, BlkPacket_722f4 ; $62f4
+SendBlkPacket_PartyMenu: ; 71fb6 (1c:5fb6)
+ ld hl, BlkPacket_PartyMenu ; $62f4
ld de, $cf2e
ld bc, $30
jp CopyData
@@ -102075,7 +52978,7 @@ SendSGBPacket: ; 71feb (1c:5feb)
; else send 16 more bytes
jr .loop2
-Func_7202b: ; 7202b (1c:602b)
+LoadSGBBorderAndPalettes: ; 7202b (1c:602b)
xor a
ld [$cf1b], a
call Func_7209b
@@ -102307,540 +53210,13 @@ Func_72188: ; 72188 (1c:6188)
jr nz, .asm_7218a
ret
-BlkPacket_7219e: ; 7219e (1c:619e)
- db $21,$01,$03,$00,$00,$00,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00
- db $03,$00,$00,$13,$11,$00,$00
-
-BlkPacket_721b5: ; 721b5 (1c:61b5)
- db $22,$05,$07,$0a,$00,$0c,$13,$11,$03,$05,$01,$00,$0a,$03,$03,$00
- db $0a,$07,$13,$0a,$03,$0a,$00,$04,$08,$0b,$03,$0f,$0b,$00,$13,$06
- db $03,$00,$00,$13,$0b,$00,$03,$00,$0c,$13,$11,$02,$03,$01,$00,$0a
- db $03,$01,$03,$0a,$08,$13,$0a,$00,$03,$00,$04,$08,$0b,$02,$03,$0b
- db $00,$13,$07,$03,$00
-
-BlkPacket_721fa: ; 721fa (1c:61fa)
- db $21,$01,$07,$05,$01,$00,$07,$06,$00,$00,$00,$00,$00,$00,$00,$00
- db $02,$00,$00,$11,$00,$03,$01,$00,$07,$06,$01,$03,$01,$07,$13,$11
- db $00,$03,$08,$00,$13,$06,$00,$00
-
-BlkPacket_72222: ; 72222 (1c:6222)
- db $21,$01,$07,$05,$01,$01,$08,$08,$00,$00,$00,$00,$00,$00,$00,$00
- db $02,$00,$00,$11,$00,$01,$00,$01,$13,$00,$03,$01,$01,$08,$08,$01
- db $03,$01,$09,$08,$11,$00,$03,$09,$01,$13,$11,$00,$00
+INCLUDE "data/sgb_packets.asm"
-BlkPacket_7224f: ; 7224f (1c:624f)
- db $22,$05,$03,$05,$00,$00,$13,$0b,$03,$0a,$00,$04,$13,$09,$02,$0f
- db $00,$06,$13,$07,$03,$00,$04,$04,$0f,$09,$03,$00,$00,$0c,$13,$11
- db $03,$00,$00,$13,$0b,$01,$03,$00,$04,$13,$09,$02,$03,$00,$06,$13
- db $07,$03,$03,$04,$04,$0f,$09,$00,$03,$00,$0c,$13,$11,$00,$00
+INCLUDE "data/mon_palettes.asm"
-BlkPacket_7228e: ; 7228e (1c:628e)
- db $22,$03,$03,$00,$00,$00,$13,$07,$02,$05,$00,$08,$13,$09,$03,$0a
- db $00,$0a,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- db $03,$00,$00,$13,$07,$00,$03,$00,$08,$13,$09,$01,$03,$00,$0a,$13
- db $11,$02,$00
+INCLUDE "data/super_palettes.asm"
-BlkPacket_722c1: ; 722c1 (1c:62c1)
- db $22,$03,$03,$05,$00,$00,$13,$03,$03,$00,$00,$04,$13,$0d,$03,$05
- db $00,$0e,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- db $03,$00,$00,$13,$03,$01,$03,$00,$04,$13,$0d,$00,$03,$00,$0e,$13
- db $11,$01,$00
-
-BlkPacket_722f4: ; 722f4 (1c:62f4)
- db $23,$07,$06,$10,$01,$00,$02,$0c,$02,$00,$05,$01,$0b,$01,$02,$00
- db $05,$03,$0b,$03,$02,$00,$05,$05,$0b,$05,$02,$00,$05,$07,$0b,$07
- db $02,$00,$05,$09,$0b,$09,$02,$00,$05,$0b,$0b,$0b,$00,$00,$00,$00
- db $02,$00,$00,$11,$01,$03,$01,$00,$02,$0c,$00,$03,$01,$0d,$02,$11
- db $01,$03,$03,$00,$13,$11,$01,$03,$0c,$00,$12,$01,$00,$03,$0c,$02
- db $12,$03,$00,$03,$0c,$04,$12,$05,$00,$03,$0c,$06,$12,$07,$00,$03
- db $0c,$08,$12,$09,$00,$03,$0c,$0a,$12,$0b,$00,$00
-
-BlkPacket_72360: ; 72360 (1c:6360)
- db $24,$0a,$02,$00,$03,$0c,$04,$0d,$02,$05,$07,$0c,$08,$0d,$02,$0f
- db $0b,$0c,$0c,$0d,$02,$0a,$10,$0b,$11,$0c,$02,$05,$0e,$0d,$0f,$0e
- db $02,$0f,$10,$0d,$11,$0e,$02,$0a,$03,$0f,$04,$10,$02,$0f,$07,$0f
- db $08,$10,$02,$0a,$0b,$0f,$0c,$10,$02,$05,$0f,$0f,$10,$10,$00,$00
- db $03,$03,$0c,$04,$0d,$00,$03,$07,$0c,$08,$0d,$01,$03,$0b,$0c,$0c
- db $0d,$03,$03,$10,$0b,$11,$0c,$02,$03,$0e,$0d,$0f,$0e,$01,$03,$10
- db $0d,$11,$0e,$03,$03,$03,$0f,$04,$10,$02,$03,$07,$0f,$08,$10,$03
- db $03,$0b,$0f,$0c,$10,$02,$03,$0f,$0f,$10,$10,$01,$00
-
-BlkPacket_723dd: ; 723dd (1c:63dd)
- db $22,$03,$07,$05,$05,$0b,$07,$0d,$02,$0a,$08,$0b,$09,$0d,$03,$0f
- db $0c,$0b,$0e,$0d,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
- db $03,$00,$00,$13,$0a,$00,$03,$00,$0b,$04,$0d,$00,$03,$05,$0b,$07
- db $0d,$01,$03,$08,$0b,$13,$0d,$00,$03,$00,$0e,$13,$11,$00,$03,$08
- db $0b,$09,$0d,$02,$03,$0c,$0b,$0e,$0d,$03,$00
-
-PalPacket_72428: ; 72428 (1c:6428)
- db $51,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72438: ; 72438 (1c:6438)
- db $51,$10,$00,$1F,$00,$20,$00,$21,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72448: ; 72448 (1c:6448)
- db $51,$1E,$00,$1E,$00,$1E,$00,$1E,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72458: ; 72458 (1c:6458)
- db $51,$0C,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72468: ; 72468 (1c:6468)
- db $51,$15,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72478: ; 72478 (1c:6478)
- db $51,$1A,$00,$1B,$00,$1C,$00,$1D,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72488: ; 72488 (1c:6488)
- db $51,$0E,$00,$0D,$00,$10,$00,$14,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72498: ; 72498 (1c:6498)
- db $51,$10,$00,$22,$00,$12,$00,$18,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_724a8: ; 724a8 (1c:64a8)
- db $51,$10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_724b8: ; 724b8 (1c:64b8)
- db $51,$14,$00,$1E,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_724c8: ; 724c8 (1c:64c8)
- db $51,$24,$00,$12,$00,$02,$00,$11,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_724d8: ; 724d8 (1c:64d8)
- db $59,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_724e8: ; 724e8 (1c:64e8)
- db $89,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_724f8: ; 724f8 (1c:64f8)
- db $89,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72508: ; 72508 (1c:6508)
- db $99,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72518: ; 72518 (1c:6518)
- db $A1,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72528: ; 72528 (1c:6528)
- db $B9,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72538: ; 72538 (1c:6538)
- db $B9,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72548: ; 72548 (1c:6548)
- db $79,$5D,$08,$00,$0B,$8C,$D0,$F4,$60,$00,$00,$00,$00,$00,$00,$00
-
-PalPacket_72558: ; 72558 (1c:6558)
- db $79,$52,$08,$00,$0B,$A9,$E7,$9F,$01,$C0,$7E,$E8,$E8,$E8,$E8,$E0
-
-PalPacket_72568: ; 72568 (1c:6568)
- db $79,$47,$08,$00,$0B,$C4,$D0,$16,$A5,$CB,$C9,$05,$D0,$10,$A2,$28
-
-PalPacket_72578: ; 72578 (1c:6578)
- db $79,$3C,$08,$00,$0B,$F0,$12,$A5,$C9,$C9,$C8,$D0,$1C,$A5,$CA,$C9
-
-PalPacket_72588: ; 72588 (1c:6588)
- db $79,$31,$08,$00,$0B,$0C,$A5,$CA,$C9,$7E,$D0,$06,$A5,$CB,$C9,$7E
-
-PalPacket_72598: ; 72598 (1c:6598)
- db $79,$26,$08,$00,$0B,$39,$CD,$48,$0C,$D0,$34,$A5,$C9,$C9,$80,$D0
-
-PalPacket_725a8: ; 725a8 (1c:65a8)
- db $79,$1B,$08,$00,$0B,$EA,$EA,$EA,$EA,$EA,$A9,$01,$CD,$4F,$0C,$D0
-
-PalPacket_725b8: ; 725b8 (1c:65b8)
- db $79,$10,$08,$00,$0B,$4C,$20,$08,$EA,$EA,$EA,$EA,$EA,$60,$EA,$EA
-
-MonsterPalettes: ; 725c8 (1c:65c8)
- db PAL_MEWMON ; MISSINGNO
- db PAL_GREENMON ; BULBASAUR
- db PAL_GREENMON ; IVYSAUR
- db PAL_GREENMON ; VENUSAUR
- db PAL_REDMON ; CHARMANDER
- db PAL_REDMON ; CHARMELEON
- db PAL_REDMON ; CHARIZARD
- db PAL_CYANMON ; SQUIRTLE
- db PAL_CYANMON ; WARTORTLE
- db PAL_CYANMON ; BLASTOISE
- db PAL_GREENMON ; CATERPIE
- db PAL_GREENMON ; METAPOD
- db PAL_CYANMON ; BUTTERFREE
- db PAL_YELLOWMON ; WEEDLE
- db PAL_YELLOWMON ; KAKUNA
- db PAL_YELLOWMON ; BEEDRILL
- db PAL_BROWNMON ; PIDGEY
- db PAL_BROWNMON ; PIDGEOTTO
- db PAL_BROWNMON ; PIDGEOT
- db PAL_GREYMON ; RATTATA
- db PAL_GREYMON ; RATICATE
- db PAL_BROWNMON ; SPEAROW
- db PAL_BROWNMON ; FEAROW
- db PAL_PURPLEMON ; EKANS
- db PAL_PURPLEMON ; ARBOK
- db PAL_YELLOWMON ; PIKACHU
- db PAL_YELLOWMON ; RAICHU
- db PAL_BROWNMON ; SANDSHREW
- db PAL_BROWNMON ; SANDSLASH
- db PAL_BLUEMON ; NIDORAN_F
- db PAL_BLUEMON ; NIDORINA
- db PAL_BLUEMON ; NIDOQUEEN
- db PAL_PURPLEMON ; NIDORAN_M
- db PAL_PURPLEMON ; NIDORINO
- db PAL_PURPLEMON ; NIDOKING
- db PAL_PINKMON ; CLEFAIRY
- db PAL_PINKMON ; CLEFABLE
- db PAL_REDMON ; VULPIX
- db PAL_YELLOWMON ; NINETALES
- db PAL_PINKMON ; JIGGLYPUFF
- db PAL_PINKMON ; WIGGLYTUFF
- db PAL_BLUEMON ; ZUBAT
- db PAL_BLUEMON ; GOLBAT
- db PAL_GREENMON ; ODDISH
- db PAL_REDMON ; GLOOM
- db PAL_REDMON ; VILEPLUME
- db PAL_REDMON ; PARAS
- db PAL_REDMON ; PARASECT
- db PAL_PURPLEMON ; VENONAT
- db PAL_PURPLEMON ; VENOMOTH
- db PAL_BROWNMON ; DIGLETT
- db PAL_BROWNMON ; DUGTRIO
- db PAL_YELLOWMON ; MEOWTH
- db PAL_YELLOWMON ; PERSIAN
- db PAL_YELLOWMON ; PSYDUCK
- db PAL_CYANMON ; GOLDUCK
- db PAL_BROWNMON ; MANKEY
- db PAL_BROWNMON ; PRIMEAPE
- db PAL_BROWNMON ; GROWLITHE
- db PAL_REDMON ; ARCANINE
- db PAL_BLUEMON ; POLIWAG
- db PAL_BLUEMON ; POLIWHIRL
- db PAL_BLUEMON ; POLIWRATH
- db PAL_YELLOWMON ; ABRA
- db PAL_YELLOWMON ; KADABRA
- db PAL_YELLOWMON ; ALAKAZAM
- db PAL_GREYMON ; MACHOP
- db PAL_GREYMON ; MACHOKE
- db PAL_GREYMON ; MACHAMP
- db PAL_GREENMON ; BELLSPROUT
- db PAL_GREENMON ; WEEPINBELL
- db PAL_GREENMON ; VICTREEBEL
- db PAL_CYANMON ; TENTACOOL
- db PAL_CYANMON ; TENTACRUEL
- db PAL_GREYMON ; GEODUDE
- db PAL_GREYMON ; GRAVELER
- db PAL_GREYMON ; GOLEM
- db PAL_REDMON ; PONYTA
- db PAL_REDMON ; RAPIDASH
- db PAL_PINKMON ; SLOWPOKE
- db PAL_PINKMON ; SLOWBRO
- db PAL_GREYMON ; MAGNEMITE
- db PAL_GREYMON ; MAGNETON
- db PAL_BROWNMON ; FARFETCH_D
- db PAL_BROWNMON ; DODUO
- db PAL_BROWNMON ; DODRIO
- db PAL_BLUEMON ; SEEL
- db PAL_BLUEMON ; DEWGONG
- db PAL_PURPLEMON ; GRIMER
- db PAL_PURPLEMON ; MUK
- db PAL_GREYMON ; SHELLDER
- db PAL_GREYMON ; CLOYSTER
- db PAL_PURPLEMON ; GASTLY
- db PAL_PURPLEMON ; HAUNTER
- db PAL_PURPLEMON ; GENGAR
- db PAL_GREYMON ; ONIX
- db PAL_YELLOWMON ; DROWZEE
- db PAL_YELLOWMON ; HYPNO
- db PAL_REDMON ; KRABBY
- db PAL_REDMON ; KINGLER
- db PAL_YELLOWMON ; VOLTORB
- db PAL_YELLOWMON ; ELECTRODE
- db PAL_PINKMON ; EXEGGCUTE
- db PAL_GREENMON ; EXEGGUTOR
- db PAL_GREYMON ; CUBONE
- db PAL_GREYMON ; MAROWAK
- db PAL_BROWNMON ; HITMONLEE
- db PAL_BROWNMON ; HITMONCHAN
- db PAL_PINKMON ; LICKITUNG
- db PAL_PURPLEMON ; KOFFING
- db PAL_PURPLEMON ; WEEZING
- db PAL_GREYMON ; RHYHORN
- db PAL_GREYMON ; RHYDON
- db PAL_PINKMON ; CHANSEY
- db PAL_BLUEMON ; TANGELA
- db PAL_BROWNMON ; KANGASKHAN
- db PAL_CYANMON ; HORSEA
- db PAL_CYANMON ; SEADRA
- db PAL_REDMON ; GOLDEEN
- db PAL_REDMON ; SEAKING
- db PAL_REDMON ; STARYU
- db PAL_GREYMON ; STARMIE
- db PAL_PINKMON ; MR_MIME
- db PAL_GREENMON ; SCYTHER
- db PAL_MEWMON ; JYNX
- db PAL_YELLOWMON ; ELECTABUZZ
- db PAL_REDMON ; MAGMAR
- db PAL_BROWNMON ; PINSIR
- db PAL_GREYMON ; TAUROS
- db PAL_REDMON ; MAGIKARP
- db PAL_BLUEMON ; GYARADOS
- db PAL_CYANMON ; LAPRAS
- db PAL_GREYMON ; DITTO
- db PAL_GREYMON ; EEVEE
- db PAL_CYANMON ; VAPOREON
- db PAL_YELLOWMON ; JOLTEON
- db PAL_REDMON ; FLAREON
- db PAL_GREYMON ; PORYGON
- db PAL_BLUEMON ; OMANYTE
- db PAL_BLUEMON ; OMASTAR
- db PAL_BROWNMON ; KABUTO
- db PAL_BROWNMON ; KABUTOPS
- db PAL_GREYMON ; AERODACTYL
- db PAL_PINKMON ; SNORLAX
- db PAL_BLUEMON ; ARTICUNO
- db PAL_YELLOWMON ; ZAPDOS
- db PAL_REDMON ; MOLTRES
- db PAL_GREYMON ; DRATINI
- db PAL_BLUEMON ; DRAGONAIR
- db PAL_BROWNMON ; DRAGONITE
- db PAL_MEWMON ; MEWTWO
- db PAL_MEWMON ; MEW
-
-; palettes for overworlds, title screen, monsters
-SuperPalettes: ; 72660 (1c:6660)
- RGB 31,29,31 ; PAL_ROUTE
- RGB 21,28,11
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_PALLET
- RGB 25,28,27
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_VIRIDIAN
- RGB 17,26,3
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_PEWTER
- RGB 23,25,16
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_CERULEAN
- RGB 17,20,30
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_LAVENDER
- RGB 27,20,27
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_VERMILION
- RGB 30,18,0
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_CELADON
- RGB 16,30,22
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_FUCHSIA
- RGB 31,15,22
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_CINNABAR
- RGB 26,10,6
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_INDIGO
- RGB 22,14,24
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_SAFFRON
- RGB 27,27,3
- RGB 20,26,31
- RGB 3,2,2
- RGB 31,29,31 ; PAL_TOWNMAP
- RGB 20,26,31
- RGB 17,23,10
- RGB 3,2,2
-IF _RED
- RGB 31,29,31 ; PAL_LOGO1
- RGB 30,30,17
- RGB 17,23,10
- RGB 21,0,4
-ENDC
-IF _BLUE
- RGB 31,29,31 ; PAL_LOGO1
- RGB 30,30,17
- RGB 21,0,4
- RGB 14,19,29
-ENDC
- RGB 31,29,31 ; XXX
- RGB 30,30,17
- RGB 18,18,24
- RGB 7,7,16
- RGB 31,29,31 ; PAL_LOGO2
- RGB 24,20,30
- RGB 11,20,30
- RGB 3,2,2
- RGB 31,29,31 ; PAL_MEWMON
- RGB 30,22,17
- RGB 16,14,19
- RGB 3,2,2
- RGB 31,29,31 ; PAL_BLUEMON
- RGB 18,20,27
- RGB 11,15,23
- RGB 3,2,2
- RGB 31,29,31 ; PAL_REDMON
- RGB 31,20,10
- RGB 26,10,6
- RGB 3,2,2
- RGB 31,29,31 ; PAL_CYANMON
- RGB 21,25,29
- RGB 14,19,25
- RGB 3,2,2
- RGB 31,29,31 ; PAL_PURPLEMON
- RGB 27,22,24
- RGB 21,15,23
- RGB 3,2,2
- RGB 31,29,31 ; PAL_BROWNMON
- RGB 28,20,15
- RGB 21,14,9
- RGB 3,2,2
- RGB 31,29,31 ; PAL_GREENMON
- RGB 20,26,16
- RGB 9,20,11
- RGB 3,2,2
- RGB 31,29,31 ; PAL_PINKMON
- RGB 30,22,24
- RGB 28,15,21
- RGB 3,2,2
- RGB 31,29,31 ; PAL_YELLOWMON
- RGB 31,28,14
- RGB 26,20,0
- RGB 3,2,2
- RGB 31,29,31 ; PAL_GREYMON
- RGB 26,21,22
- RGB 15,15,18
- RGB 3,2,2
- RGB 31,29,31 ; PAL_SLOTS1
- RGB 26,21,22
- RGB 27,20,6
- RGB 3,2,2
- RGB 31,29,31 ; PAL_SLOTS2
- RGB 31,31,17
-IF _RED
- RGB 25,17,21
-ENDC
-IF _BLUE
- RGB 16,19,29
-ENDC
- RGB 3,2,2
- RGB 31,29,31 ; PAL_SLOTS3
- RGB 22,31,16
-IF _RED
- RGB 25,17,21
-ENDC
-IF _BLUE
- RGB 16,19,29
-ENDC
- RGB 3,2,2
- RGB 31,29,31 ; PAL_SLOTS4
-IF _RED
- RGB 16,19,29
- RGB 25,17,21
-ENDC
-IF _BLUE
- RGB 25,17,21
- RGB 16,19,29
-ENDC
- RGB 3,2,2
- RGB 31,29,31 ; PAL_BLACK
- RGB 7,7,7
- RGB 2,3,3
- RGB 3,2,2
- RGB 31,29,31 ; PAL_GREENBAR
- RGB 30,26,15
- RGB 9,20,11
- RGB 3,2,2
- RGB 31,29,31 ; PAL_YELLOWBAR
- RGB 30,26,15
- RGB 26,20,0
- RGB 3,2,2
- RGB 31,29,31 ; PAL_REDBAR
- RGB 30,26,15
- RGB 26,10,6
- RGB 3,2,2
- RGB 31,29,31 ; PAL_BADGE
- RGB 30,22,17
- RGB 11,15,23
- RGB 3,2,2
- RGB 31,29,31 ; PAL_CAVE
- RGB 21,14,9
- RGB 18,24,22
- RGB 3,2,2
- RGB 31,29,31 ; XXX
- RGB 31,28,14
- RGB 24,20,10
- RGB 3,2,2
-
-BorderPalettes: ; 72788 (1c:6788)
-IF _RED
- INCBIN "gfx/red/sgbborder.map"
-ENDC
-IF _BLUE
- INCBIN "gfx/blue/sgbborder.map"
-ENDC
-
- ds $100
-
-IF _RED
- RGB 30,29,29 ; PAL_SGB1
- RGB 25,22,25
- RGB 25,17,21
- RGB 24,14,12
-ENDC
-IF _BLUE
- RGB 0,0,0 ; PAL_SGB1 (the first color is not defined, but if used, turns up as 30,29,29... o_O)
- RGB 10,17,26
- RGB 5,9,20
- RGB 16,20,27
-ENDC
-
- ds $18
-
-IF _RED
- RGB 30,29,29 ; PAL_SGB2
- RGB 22,31,16
- RGB 27,20,6
- RGB 15,15,15
-ENDC
-IF _BLUE
- RGB 30,29,29 ; PAL_SGB2
- RGB 27,11,6
- RGB 5,9,20
- RGB 28,25,15
-ENDC
-
- ds $18
-
-IF _RED
- RGB 30,29,29 ; PAL_SGB3
- RGB 31,31,17
- RGB 18,21,29
- RGB 15,15,15
-ENDC
-IF _BLUE
- RGB 30,29,29 ; PAL_SGB3
- RGB 12,15,11
- RGB 5,9,20
- RGB 14,22,17
-ENDC
-
- ds $18
-
-SGBBorderGraphics: ; 72fe8 (1c:6fe8)
-IF _RED
- INCBIN "gfx/red/sgbborder.w128.2bpp"
-ENDC
-IF _BLUE
- INCBIN "gfx/blue/sgbborder.w128.2bpp"
-ENDC
+INCLUDE "data/sgb_border.asm"
LoadSAV: ; 735e8 (1c:75e8)
;(if carry -> write
@@ -102860,7 +53236,7 @@ LoadSAV: ; 735e8 (1c:75e8)
ld hl, $d730
push hl
set 6, [hl]
- ld hl, FileDataDestroyedText ; $761e
+ ld hl, FileDataDestroyedText
call PrintText
ld c, $64
call DelayFrames
@@ -103182,7 +53558,7 @@ PointerTable_73895: ; 73895 (1c:7895)
dw $B5EA
Func_738a1:: ; 738a1 (1c:78a1)
- ld hl, UnnamedText_73909 ; $7909
+ ld hl, WhenYouChangeBoxText
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem] ; $cc26
@@ -103227,8 +53603,8 @@ Func_738a1:: ; 738a1 (1c:78a1)
call WaitForSoundToFinish
ret
-UnnamedText_73909: ; 73909 (1c:7909)
- TX_FAR _UnnamedText_73909
+WhenYouChangeBoxText: ; 73909 (1c:7909)
+ TX_FAR _WhenYouChangeBoxText
db "@"
Func_7390e: ; 7390e (1c:790e)
@@ -103277,7 +53653,7 @@ Func_7393f: ; 7393f (1c:793f)
ld b, $2
ld c, $9
call TextBoxBorder
- ld hl, UnnamedText_739d4 ; $79d4
+ ld hl, ChooseABoxText
call PrintText
FuncCoord 11, 0 ; $c3ab
ld hl, Coord
@@ -103309,7 +53685,7 @@ Func_7393f: ; 7393f (1c:793f)
ld [Coord], a
FuncCoord 1, 2 ; $c3c9
ld hl, Coord
- ld de, BoxNoText ; $7a21
+ ld de, BoxNoText
call PlaceString
call Func_73a84
FuncCoord 18, 1 ; $c3c6
@@ -103333,8 +53709,8 @@ Func_7393f: ; 7393f (1c:793f)
ld [H_AUTOBGTRANSFERENABLED], a ; $ffba
ret
-UnnamedText_739d4: ; 739d4 (1c:79d4)
- TX_FAR _UnnamedText_739d4
+ChooseABoxText: ; 739d4 (1c:79d4)
+ TX_FAR _ChooseABoxText
db "@"
BoxNames: ; 739d9 (1c:79d9)
@@ -103661,22 +54037,7 @@ DisplayCreditsMon: ; 740cb (1d:40cb)
ld [$FF47],a
ret
-CreditsMons: ; 74131 (1d:4131)
- db VENUSAUR
- db ARBOK
- db RHYHORN
- db FEAROW
- db ABRA
- db GRAVELER
- db HITMONLEE
- db TANGELA
- db STARMIE
- db GYARADOS
- db DITTO
- db OMASTAR
- db VILEPLUME
- db NIDOKING
- db PARASECT
+INCLUDE "data/credit_mons.asm"
Func_74140: ; 74140 (1d:4140)
ld h, b
@@ -103832,246 +54193,9 @@ UnnamedText_74229: ; 74229 (1d:4229)
db $60," ",$62," ",$64," ",$64," ",$66," ",$68,"@"
db $61," ",$63," ",$65," ",$65," ",$67," ",$69,"@"
-CreditsOrder: ; 74243 (1d:4243)
-; subsequent credits elements will be displayed on separate lines.
-; $FF, $FE, $FD, $FC, $FB, and $FA are commands that are used
-; to go to the next set of credits texts.
- db CRED_MON, CRED_VERSION, $FF
- db CRED_DIRECTOR, CRED_TAJIRI, $FF
- db CRED_PROGRAMMERS, CRED_TA_OOTA, CRED_MORIMOTO, $FD
- db CRED_PROGRAMMERS, CRED_WATANABE, CRED_MASUDE, CRED_TAMADA, $FE
- db CRED_CHAR_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, $FF
- db CRED_MUSIC, CRED_MASUDE, $FD
- db CRED_SOUND_EFFECTS, CRED_MASUDE, $FE
- db CRED_GAME_DESIGN, CRED_TAJIRI, $FF
- db CRED_MONSTER_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, CRED_FUZIWARA, $FD
- db CRED_MONSTER_DESIGN, CRED_MORIMOTO, CRED_SA_OOTA, CRED_YOSHIKAWA, $FE
- db CRED_GAME_SCENE, CRED_TAJIRI, $FD
- db CRED_GAME_SCENE, CRED_TANIGUCHI, CRED_NONOMURA, CRED_ZINNAI, $FE
- db CRED_PARAM, CRED_NISINO, CRED_TA_NAKAMURA, $FF
- db CRED_MAP, CRED_TAJIRI, CRED_NISINO, $FD
- db CRED_MAP, CRED_MATSUSIMA, CRED_NONOMURA, CRED_TANIGUCHI, $FE
- db CRED_TEST, CRED_KAKEI, CRED_TSUCHIYA, $FD
- db CRED_TEST, CRED_TA_NAKAMURA, CRED_YUDA, $FE
- db CRED_SPECIAL, CRED_HISHIDA, CRED_SAKAI, $FD
- db CRED_SPECIAL, CRED_YAMAGUCHI, CRED_YAMAMOTO, $FC
- db CRED_SPECIAL, CRED_TOMISAWA, CRED_KAWAMOTO, CRED_TO_OOTA, $FE
- db CRED_PRODUCERS, CRED_MIYAMOTO, $FD
- db CRED_PRODUCERS, CRED_KAWAGUCHI, $FC
- db CRED_PRODUCERS, CRED_ISHIHARA, $FE
- db CRED_US_STAFF, $FD
- db CRED_US_COORD, CRED_TILDEN, $FD
- db CRED_US_COORD, CRED_KAWAKAMI, CRED_HI_NAKAMURA, $FC
- db CRED_US_COORD, CRED_GIESE, CRED_OSBORNE, $FC
- db CRED_TRANS, CRED_OGASAWARA, $FD
- db CRED_PROGRAMMERS, CRED_MURAKAWA, CRED_FUKUI, $FD
- db CRED_SPECIAL, CRED_IWATA, $FD
- db CRED_SPECIAL, CRED_HARADA, $FC
- db CRED_TEST, CRED_PAAD, CRED_CLUB, $FD
- db CRED_PRODUCER, CRED_IZUSHI, $FD
- db CRED_EXECUTIVE, CRED_YAMAUCHI, $FF
- db $FB, $FF, $FA
-
-
-CreditsTextPointers: ; 742c3 (1d:42c3)
- dw CredVersion
- dw CredTajiri
- dw CredTaOota
- dw CredMorimoto
- dw CredWatanabe
- dw CredMasuda
- dw CredNisino
- dw CredSugimori
- dw CredNishida
- dw CredMiyamoto
- dw CredKawaguchi
- dw CredIshihara
- dw CredYamauchi
- dw CredZinnai
- dw CredHishida
- dw CredSakai
- dw CredYamaguchi
- dw CredYamamoto
- dw CredTaniguchi
- dw CredNonomura
- dw CredFuziwara
- dw CredMatsusima
- dw CredTomisawa
- dw CredKawamoto
- dw CredKakei
- dw CredTsuchiya
- dw CredTaNakamura
- dw CredYuda
- dw CredMon
- dw CredDirector
- dw CredProgrammers
- dw CredCharDesign
- dw CredMusic
- dw CredSoundEffects
- dw CredGameDesign
- dw CredMonsterDesign
- dw CredGameScene
- dw CredParam
- dw CredMap
- dw CredTest
- dw CredSpecial
- dw CredProducers
- dw CredProducer
- dw CredExecutive
- dw CredTamada
- dw CredSaOota
- dw CredYoshikawa
- dw CredToOota
- dw CredUSStaff
- dw CredUSCoord
- dw CredTilden
- dw CredKawakami
- dw CredHiNakamura
- dw CredGiese
- dw CredOsborne
- dw CredTrans
- dw CredOgasawara
- dw CredIwata
- dw CredIzushi
- dw CredHarada
- dw CredMurakawa
- dw CredFukui
- dw CredClub
- dw CredPAAD
-
-CredVersion: ; 74343 (1d:4343) ; this 1 byte difference makes all bank addresses offset by 1 in the blue version
-IF _RED
- db -8, "RED VERSION STAFF@"
-ENDC
-IF _BLUE
- db -8, "BLUE VERSION STAFF@"
-ENDC
-CredTajiri: ; 74356 (1d:4356)
- db -6, "SATOSHI TAJIRI@"
-CredTaOota: ; 74366 (1d:4366)
- db -6, "TAKENORI OOTA@"
-CredMorimoto: ; 74375 (1d:4375)
- db -7, "SHIGEKI MORIMOTO@"
-CredWatanabe: ; 74387 (1d:4387)
- db -7, "TETSUYA WATANABE@"
-CredMasuda: ; 74399 (1d:4399)
- db -6, "JUNICHI MASUDA@"
-CredNisino: ; 743a9 (1d:43a9)
- db -5, "KOHJI NISINO@"
-CredSugimori: ; 743b7 (1d:43b7)
- db -5, "KEN SUGIMORI@"
-CredNishida: ; 743c5 (1d:43c5)
- db -6, "ATSUKO NISHIDA@"
-CredMiyamoto: ; 743d5 (1d:43d5)
- db -7, "SHIGERU MIYAMOTO@"
-CredKawaguchi: ; 743e7 (1d:43e7)
- db -8, "TAKASHI KAWAGUCHI@"
-CredIshihara: ; 743fa (1d:43fa)
- db -8, "TSUNEKAZU ISHIHARA@"
-CredYamauchi: ; 7440e (1d:440e)
- db -7, "HIROSHI YAMAUCHI@"
-CredZinnai: ; 74420 (1d:4420)
- db -7, "HIROYUKI ZINNAI@"
-CredHishida: ; 74431 (1d:4431)
- db -7, "TATSUYA HISHIDA@"
-CredSakai: ; 74442 (1d:4442)
- db -6, "YASUHIRO SAKAI@"
-CredYamaguchi: ; 74452 (1d:4452)
- db -7, "WATARU YAMAGUCHI@"
-CredYamamoto: ; 74464 (1d:4464)
- db -8, "KAZUYUKI YAMAMOTO@"
-CredTaniguchi: ; 74477 (1d:4477)
- db -8, "RYOHSUKE TANIGUCHI@"
-CredNonomura: ; 7448b (1d:448b)
- db -8, "FUMIHIRO NONOMURA@"
-CredFuziwara: ; 7449e (1d:449e)
- db -7, "MOTOFUMI FUZIWARA@"
-CredMatsusima: ; 744b1 (1d:44b1)
- db -7, "KENJI MATSUSIMA@"
-CredTomisawa: ; 744c2 (1d:44c2)
- db -7, "AKIHITO TOMISAWA@"
-CredKawamoto: ; 744d4 (1d:44d4)
- db -7, "HIROSHI KAWAMOTO@"
-CredKakei: ; 744e6 (1d:44e6)
- db -6, "AKIYOSHI KAKEI@"
-CredTsuchiya: ; 744f6 (1d:44f6)
- db -7, "KAZUKI TSUCHIYA@"
-CredTaNakamura: ; 74507 (1d:4507)
- db -6, "TAKEO NAKAMURA@"
-CredYuda: ; 74517 (1d:4517)
- db -6, "MASAMITSU YUDA@"
-CredMon: ; 74527 (1d:4527)
- db -3, "#MON@"
-CredDirector: ; 7452d (1d:452d)
- db -3, "DIRECTOR@"
-CredProgrammers: ; 74537 (1d:4537)
- db -5, "PROGRAMMERS@"
-CredCharDesign: ; 74544 (1d:4544)
- db -7, "CHARACTER DESIGN@"
-CredMusic: ; 74556 (1d:4556)
- db -2, "MUSIC@"
-CredSoundEffects: ; 7455d (1d:455d)
- db -6, "SOUND EFFECTS@"
-CredGameDesign: ; 7456c (1d:456c)
- db -5, "GAME DESIGN@"
-CredMonsterDesign: ; 74579 (1d:4579)
- db -6, "MONSTER DESIGN@"
-CredGameScene: ; 74589 (1d:4589)
- db -6, "GAME SCENARIO@"
-CredParam: ; 74598 (1d:4598)
- db -8, "PARAMETRIC DESIGN@"
-CredMap: ; 745ab (1d:45ab)
- db -4, "MAP DESIGN@"
-CredTest: ; 745b7 (1d:45b7)
- db -7, "PRODUCT TESTING@"
-CredSpecial: ; 745c8 (1d:45c8)
- db -6, "SPECIAL THANKS@"
-CredProducers: ; 745d8 (1d:45d8)
- db -4, "PRODUCERS@"
-CredProducer: ; 745e3 (1d:45e3)
- db -4, "PRODUCER@"
-CredExecutive: ; 745ed (1d:45ed)
- db -8, "EXECUTIVE PRODUCER@"
-CredTamada: ; 74601 (1d:4601)
- db -6, "SOUSUKE TAMADA@"
-CredSaOota: ; 74611 (1d:4611)
- db -5, "SATOSHI OOTA@"
-CredYoshikawa: ; 7461f (1d:461f)
- db -6, "RENA YOSHIKAWA@"
-CredToOota: ; 7462f (1d:462f)
- db -6, "TOMOMICHI OOTA@"
-CredUSStaff: ; 7463f (1d:463f)
- db -7, "US VERSION STAFF@"
-CredUSCoord: ; 74651 (1d:4651)
- db -7, "US COORDINATION@"
-CredTilden: ; 74662 (1d:4662)
- db -5, "GAIL TILDEN@"
-CredKawakami: ; 7466f (1d:466f)
- db -6, "NAOKO KAWAKAMI@"
-CredHiNakamura: ; 7467f (1d:467f)
- db -6, "HIRO NAKAMURA@"
-CredGiese: ; 7468e (1d:468e)
- db -6, "WILLIAM GIESE@"
-CredOsborne: ; 7469d (1d:469d)
- db -5, "SARA OSBORNE@"
-CredTrans: ; 746ab (1d:46ab)
- db -7, "TEXT TRANSLATION@"
-CredOgasawara: ; 746bd (1d:46bd)
- db -6, "NOB OGASAWARA@"
-CredIwata: ; 746cc (1d:46cc)
- db -5, "SATORU IWATA@"
-CredIzushi: ; 746da (1d:46da)
- db -7, "TAKEHIRO IZUSHI@"
-CredHarada: ; 746eb (1d:46eb)
- db -7, "TAKAHIRO HARADA@"
-CredMurakawa: ; 746fc (1d:46fc)
- db -7, "TERUKI MURAKAWA@"
-CredFukui: ; 7470d (1d:470d)
- db -5, "KOHTA FUKUI@"
-CredClub: ; 7471a (1d:471a)
- db -9, "NCL SUPER MARIO CLUB@"
-CredPAAD: ; 74730 (1d:4730)
- db -5, "PAAD TESTING@"
+INCLUDE "data/credits_order.asm"
+
+INCLUDE "text/credits_text.asm"
TheEndGfx: ; 7473e (1d:473e) ; 473E (473F on blue)
INCBIN "gfx/theend.w40.interleave.2bpp"
@@ -104149,19 +54273,19 @@ HiddenItemNear: ; 7481f (1d:481f)
ld e, [hl]
inc hl
jr nz, .asm_74824 ; 0x74845 $dd
- ld a, [$d361]
+ ld a, [W_YCOORD]
call Func_7486b
cp d
jr nc, .asm_74824 ; 0x7484e $d4
- ld a, [$d361]
+ ld a, [W_YCOORD]
add $4
cp d
jr c, .asm_74824 ; 0x74856 $cc
- ld a, [$d362]
+ ld a, [W_XCOORD]
call Func_7486b
cp e
jr nc, .asm_74824 ; 0x7485f $c3
- ld a, [$d362]
+ ld a, [W_XCOORD]
add $5
cp e
jr c, .asm_74824 ; 0x74867 $bb
@@ -104195,797 +54319,35 @@ Func_74872: ; 74872 (1d:4872)
call GBFadeOut1
ret
-ViridianGym_h: ; 0x74897 to 0x748a3 (12 bytes) (id=45)
- db GYM ; tileset
- db VIRIDIAN_GYM_HEIGHT, VIRIDIAN_GYM_WIDTH ; dimensions (y, x)
- dw ViridianGymBlocks, ViridianGymTextPointers, ViridianGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianGymObject ; objects
-
-ViridianGymScript: ; 748a3 (1d:48a3)
- ld hl, Gym8CityName
- ld de, Gym8LeaderName
- call LoadGymLeaderAndCityName
- call EnableAutoTextBoxDrawing
- ld hl, ViridianGymTrainerHeaders
- ld de, ViridianGymScriptPointers
- ld a, [W_VIRIDIANGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_VIRIDIANGYMCURSCRIPT], a
- ret
-
-Gym8CityName: ; 748bf (1d:48bf)
- db "VIRIDIAN CITY@"
-Gym8LeaderName: ; 748cd (1d:48cd)
- db "GIOVANNI@"
-
-Func_748d6: ; 748d6 (1d:48d6)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_VIRIDIANGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-ViridianGymScriptPointers: ; 748e1 (1d:48e1)
- dw ViridianGymScript0
- dw Func_324c
- dw EndTrainerBattle
- dw ViridianGymScript3
- dw ViridianGymScript4
-
-ViridianGymScript0: ; 748eb (1d:48eb)
- ld a, [W_YCOORD] ; $d361
- ld b, a
- ld a, [W_XCOORD] ; $d362
- ld c, a
- ld hl, ViridianGymArrowTilePlayerMovement
- call Func_3442
- cp $ff
- jp z, CheckFightingMapTrainers
- call Func_3486
- ld hl, $d736
- set 7, [hl]
- ld a, (SFX_02_52 - SFX_Headers_02) / 3
- call PlaySound
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $4
- ld [W_CURMAPSCRIPT], a
- ret
-
-;format:
-;db y,x
-;dw pointer to movement
-ViridianGymArrowTilePlayerMovement: ; 74916 (1d:4916)
- db $b,$13
- dw ViridianGymArrowMovement1
- db $1,$13
- dw ViridianGymArrowMovement2
- db $2,$12
- dw ViridianGymArrowMovement3
- db $2,$b
- dw ViridianGymArrowMovement4
- db $a,$10
- dw ViridianGymArrowMovement5
- db $6,$4
- dw ViridianGymArrowMovement6
- db $d,$5
- dw ViridianGymArrowMovement7
- db $e,$4
- dw ViridianGymArrowMovement8
- db $f,$0
- dw ViridianGymArrowMovement9
- db $f,$1
- dw ViridianGymArrowMovement10
- db $10,$d
- dw ViridianGymArrowMovement11
- db $11,$d
- dw ViridianGymArrowMovement12
- db $FF
-
-;format: direction, count
-;right: $10
-;left: $20
-;up: $40
-;down: $80
-ViridianGymArrowMovement1: ; 74947 (1d:4947)
- db $40,$09,$FF
-
-ViridianGymArrowMovement2: ; 7494a (1d:494a)
- db $20,$08,$FF
-
-ViridianGymArrowMovement3: ; 7494d (1d:494d)
- db $80,$09,$FF
-
-ViridianGymArrowMovement4: ; 74950 (1d:4950)
- db $10,$06,$FF
-
-ViridianGymArrowMovement5: ; 74953 (1d:4953)
- db $80,$02,$FF
-
-ViridianGymArrowMovement6: ; 74956 (1d:4956)
- db $80,$07,$FF
-
-ViridianGymArrowMovement7: ; 74959 (1d:4959)
- db $10,$08,$FF
-
-ViridianGymArrowMovement8: ; 7495c (1d:495c)
- db $10,$09,$FF
-
-ViridianGymArrowMovement9: ; 7495f (1d:495f)
- db $40,$08,$FF
-
-ViridianGymArrowMovement10: ; 74962 (1d:4962)
- db $40,$06,$FF
-
-ViridianGymArrowMovement11: ; 74965 (1d:4965)
- db $20,$06,$FF
-
-ViridianGymArrowMovement12: ; 74968 (1d:4968)
- db $20,$0C,$FF
-
-ViridianGymScript4: ; 7496b (1d:496b)
- ld a, [$cd38]
- and a
- jr nz, .asm_74980
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d736
- res 7, [hl]
- ld a, $0
- ld [W_CURMAPSCRIPT], a
- ret
-.asm_74980
- ld b, BANK(Func_44fd7)
- ld hl, Func_44fd7
- jp Bankswitch
-
-ViridianGymScript3: ; 74988 (1d:4988)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_748d6
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-ViridianGymScript3_74995: ; 74995 (1d:4995)
- ld a, $c
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d751
- set 1, [hl]
- ld bc, (TM_27 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $d
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d751
- set 0, [hl]
- jr .asm_749be
-.BagFull
- ld a, $e
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_749be
- ld hl, W_OBTAINEDBADGES
- set 7, [hl]
- ld hl, $d72a
- set 7, [hl]
-
- ; deactivate gym trainers
- ld a, [$d751]
- or %11111100
- ld [$d751], a
- ld a, [$d752]
- or %00000011
- ld [$d752], a
-
- ld a, $23
- ld [$cc4d], a
- ld a, $15
- call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
- ld hl, $d7eb
- set 1, [hl]
- set 7, [hl]
- jp Func_748d6
-
-ViridianGymTextPointers: ; 749ec (1d:49ec)
- dw ViridianGymText1
- dw ViridianGymText2
- dw ViridianGymText3
- dw ViridianGymText4
- dw ViridianGymText5
- dw ViridianGymText6
- dw ViridianGymText7
- dw ViridianGymText8
- dw ViridianGymText9
- dw ViridianGymText10
- dw Predef5CText
- dw ViridianGymText12
- dw ViridianGymText13
- dw ViridianGymText14
-
-ViridianGymTrainerHeaders: ; 74a08 (1d:4a08)
-ViridianGymTrainerHeader0: ; 74a08 (1d:4a08)
- db $2 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText1 ; 0x4afd TextBeforeBattle
- dw ViridianGymAfterBattleText1 ; 0x4b07 TextAfterBattle
- dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle
- dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle
-
-ViridianGymTrainerHeader1: ; 74a14 (1d:4a14)
- db $3 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText2 ; 0x4b16 TextBeforeBattle
- dw ViridianGymAfterBattleText2 ; 0x4b20 TextAfterBattle
- dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle
- dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle
-
-ViridianGymTrainerHeader2: ; 74a20 (1d:4a20)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText3 ; 0x4b2f TextBeforeBattle
- dw ViridianGymAfterBattleText3 ; 0x4b39 TextAfterBattle
- dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle
- dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle
-
-ViridianGymTrainerHeader3: ; 74a2c (1d:4a2c)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText4 ; 0x4b48 TextBeforeBattle
- dw ViridianGymAfterBattleText4 ; 0x4b52 TextAfterBattle
- dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle
- dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle
-
-ViridianGymTrainerHeader4: ; 74a38 (1d:4a38)
- db $6 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText5 ; 0x4b61 TextBeforeBattle
- dw ViridianGymAfterBattleText5 ; 0x4b6b TextAfterBattle
- dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle
- dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle
-
-ViridianGymTrainerHeader5: ; 74a44 (1d:4a44)
- db $7 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText6 ; 0x4b7a TextBeforeBattle
- dw ViridianGymAfterBattleText6 ; 0x4b84 TextAfterBattle
- dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle
- dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle
-
-ViridianGymTrainerHeader6: ; 74a50 (1d:4a50)
- db $8 ; flag's bit
- db ($3 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText7 ; 0x4b93 TextBeforeBattle
- dw ViridianGymAfterBattleText7 ; 0x4b9d TextAfterBattle
- dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle
- dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle
-
-ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c)
- db $9 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d751 ; flag's byte
- dw ViridianGymBattleText8 ; 0x4bac TextBeforeBattle
- dw ViridianGymAfterBattleText8 ; 0x4bb6 TextAfterBattle
- dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle
- dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle
-
- db $ff
-
-ViridianGymText1: ; 74a69 (1d:4a69)
- db $08 ; asm
- ld a, [$d751]
- bit 1, a
- jr z, .asm_6de66 ; 0x74a6f
- bit 0, a
- jr nz, .asm_9fc95 ; 0x74a73
- call z, ViridianGymScript3_74995
- call DisableWaitingAfterTextDisplay
- jr .asm_6dff7 ; 0x74a7b
-.asm_9fc95 ; 0x74a7d
- ld a, $1
- ld [$cc3c], a
- ld hl, UnnamedText_74ad9
- call PrintText
- call GBFadeIn1
- ld a, $32
- ld [$cc4d], a
- ld a, $11
- call Predef
- call UpdateSprites
- call Delay3
- call GBFadeOut1
- jr .asm_6dff7 ; 0x74a9e
-.asm_6de66 ; 0x74aa0
- ld hl, UnnamedText_74ace
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_74ad3
- ld de, UnnamedText_74ad3
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $8
- ld [$d05c], a
- ld a, $3
- ld [W_VIRIDIANGYMCURSCRIPT], a
-.asm_6dff7 ; 0x74acb
- jp TextScriptEnd
-
-UnnamedText_74ace: ; 74ace (1d:4ace)
- TX_FAR _UnnamedText_74ace
- db "@"
+INCLUDE "data/mapHeaders/viridiangym.asm"
-UnnamedText_74ad3: ; 74ad3 (1d:4ad3)
- TX_FAR _UnnamedText_74ad3
- db $0b, "@"
+INCLUDE "scripts/viridiangym.asm"
-UnnamedText_74ad9: ; 74ad9 (1d:4ad9)
- TX_FAR _UnnamedText_74ad9
- db $0d, "@"
-
-ViridianGymText12: ; 74adf (1d:4adf)
- TX_FAR _ViridianGymText12
- db "@"
-
-ViridianGymText13: ; 74ae4 (1d:4ae4)
- TX_FAR _ReceivedTM27Text
- db $0b
-
-TM27ExplanationText: ; 74ae9 (1d:4ae9)
- TX_FAR _TM27ExplanationText
- db "@"
-
-ViridianGymText14: ; 74aee (1d:4aee)
- TX_FAR _TM27NoRoomText
- db "@"
-
-ViridianGymText2: ; 74af3 (1d:4af3)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText1: ; 74afd (1d:4afd)
- TX_FAR _ViridianGymBattleText1
- db "@"
-
-ViridianGymEndBattleText1: ; 74b02 (1d:4b02)
- TX_FAR _ViridianGymEndBattleText1
- db "@"
-
-ViridianGymAfterBattleText1: ; 74b07 (1d:4b07)
- TX_FAR _ViridianGymAfterBattleText1
- db "@"
-
-ViridianGymText3: ; 74b0c (1d:4b0c)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText2: ; 74b16 (1d:4b16)
- TX_FAR _ViridianGymBattleText2
- db "@"
-
-ViridianGymEndBattleText2: ; 74b1b (1d:4b1b)
- TX_FAR _ViridianGymEndBattleText2
- db "@"
-
-ViridianGymAfterBattleText2: ; 74b20 (1d:4b20)
- TX_FAR _ViridianGymAfterBattleText2
- db "@"
-
-ViridianGymText4: ; 74b25 (1d:4b25)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText3: ; 74b2f (1d:4b2f)
- TX_FAR _ViridianGymBattleText3
- db "@"
-
-ViridianGymEndBattleText3: ; 74b34 (1d:4b34)
- TX_FAR _ViridianGymEndBattleText3
- db "@"
-
-ViridianGymAfterBattleText3: ; 74b39 (1d:4b39)
- TX_FAR _ViridianGymAfterBattleText3
- db "@"
-
-ViridianGymText5: ; 74b3e (1d:4b3e)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText4: ; 74b48 (1d:4b48)
- TX_FAR _ViridianGymBattleText4
- db "@"
-
-ViridianGymEndBattleText4: ; 74b4d (1d:4b4d)
- TX_FAR _ViridianGymEndBattleText4
- db "@"
-
-ViridianGymAfterBattleText4: ; 74b52 (1d:4b52)
- TX_FAR _ViridianGymAfterBattleText4
- db "@"
-
-ViridianGymText6: ; 74b57 (1d:4b57)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText5: ; 74b61 (1d:4b61)
- TX_FAR _ViridianGymBattleText5
- db "@"
-
-ViridianGymEndBattleText5: ; 74b66 (1d:4b66)
- TX_FAR _ViridianGymEndBattleText5
- db "@"
-
-ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b)
- TX_FAR _ViridianGymAfterBattleText5
- db "@"
-
-ViridianGymText7: ; 74b70 (1d:4b70)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText6: ; 74b7a (1d:4b7a)
- TX_FAR _ViridianGymBattleText6
- db "@"
-
-ViridianGymEndBattleText6: ; 74b7f (1d:4b7f)
- TX_FAR _ViridianGymEndBattleText6
- db "@"
-
-ViridianGymAfterBattleText6: ; 74b84 (1d:4b84)
- TX_FAR _ViridianGymAfterBattleText6
- db "@"
-
-ViridianGymText8: ; 74b89 (1d:4b89)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText7: ; 74b93 (1d:4b93)
- TX_FAR _ViridianGymBattleText7
- db "@"
-
-ViridianGymEndBattleText7: ; 74b98 (1d:4b98)
- TX_FAR _ViridianGymEndBattleText7
- db "@"
-
-ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d)
- TX_FAR _ViridianGymAfterBattleText7
- db "@"
-
-ViridianGymText9: ; 74ba2 (1d:4ba2)
- db $08 ; asm
- ld hl, ViridianGymTrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText8: ; 74bac (1d:4bac)
- TX_FAR _ViridianGymBattleText8
- db "@"
-
-ViridianGymEndBattleText8: ; 74bb1 (1d:4bb1)
- TX_FAR _ViridianGymEndBattleText8
- db "@"
-
-ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6)
- TX_FAR _ViridianGymAfterBattleText8
- db "@"
-
-ViridianGymText10: ; 74bbb (1d:4bbb)
- db $08 ; asm
- ld a, [$d751]
- bit 1, a
- jr nz, .asm_1abd1 ; 0x74bc1
- ld hl, UnnamedText_74bd4
- call PrintText
- jr .asm_6064d ; 0x74bc9
-.asm_1abd1 ; 0x74bcb
- ld hl, UnnamedText_74bd9
- call PrintText
-.asm_6064d ; 0x74bd1
- jp TextScriptEnd
-
-UnnamedText_74bd4: ; 74bd4 (1d:4bd4)
- TX_FAR _UnnamedText_74bd4
- db "@"
-
-UnnamedText_74bd9: ; 74bd9 (1d:4bd9)
- TX_FAR _UnnamedText_74bd9
- db "@"
-
-ViridianGymObject: ; 0x74bde (size=105)
- db $3 ; border tile
-
- db $2 ; warps
- db $11, $10, $4, $ff
- db $11, $11, $4, $ff
-
- db $0 ; signs
-
- db $b ; people
- db SPRITE_GIOVANNI, $1 + 4, $2 + 4, $ff, $d0, $41, GIOVANNI + $C8, $3 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $c + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $9 ; trainer
- db SPRITE_HIKER, $b + 4, $b + 4, $ff, $d1, $43, BLACKBELT + $C8, $6 ; trainer
- db SPRITE_ROCKER, $7 + 4, $a + 4, $ff, $d0, $44, TAMER + $C8, $3 ; trainer
- db SPRITE_HIKER, $7 + 4, $3 + 4, $ff, $d2, $45, BLACKBELT + $C8, $7 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $d + 4, $ff, $d3, $46, COOLTRAINER_M + $C8, $a ; trainer
- db SPRITE_HIKER, $1 + 4, $a + 4, $ff, $d0, $47, BLACKBELT + $C8, $8 ; trainer
- db SPRITE_ROCKER, $10 + 4, $2 + 4, $ff, $d3, $48, TAMER + $C8, $4 ; trainer
- db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $6 + 4, $ff, $d0, $49, COOLTRAINER_M + $C8, $1 ; trainer
- db SPRITE_GYM_HELPER, $f + 4, $10 + 4, $ff, $d0, $a ; person
- db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $8b, REVIVE ; item
-
- ; warp-to
- EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $10
- EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $11
+INCLUDE "data/mapObjects/viridiangym.asm"
ViridianGymBlocks: ; 74c47 (1d:4c47)
INCBIN "maps/viridiangym.blk"
-PewterMart_h: ; 0x74ca1 to 0x74cad (12 bytes) (id=56)
- db MART ; tileset
- db PEWTER_MART_HEIGHT, PEWTER_MART_WIDTH ; dimensions (y, x)
- dw PewterMartBlocks, PewterMartTextPointers, PewterMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw PewterMartObject ; objects
+INCLUDE "data/mapHeaders/pewtermart.asm"
-PewterMartScript: ; 74cad (1d:4cad)
- call EnableAutoTextBoxDrawing
- ld a, $1
- ld [$cf0c], a
- ret
+INCLUDE "scripts/pewtermart.asm"
-PewterMartTextPointers: ; 74cb6 (1d:4cb6)
- dw PewterMartText1
- dw PewterMartText2
- dw PewterMartText3
+INCLUDE "data/mapObjects/pewtermart.asm"
-PewterMartText2: ; 74cbc (1d:4cbc)
- db $08 ; asm
- ld hl, UnnamedText_74cc6
- call PrintText
- jp TextScriptEnd
+INCLUDE "data/mapHeaders/unknowndungeon1.asm"
-UnnamedText_74cc6: ; 74cc6 (1d:4cc6)
- TX_FAR _UnnamedText_74cc6
- db "@"
+INCLUDE "scripts/unknowndungeon1.asm"
-PewterMartText3: ; 74ccb (1d:4ccb)
- db $08 ; asm
- ld hl, UnnamedText_74cd5
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_74cd5: ; 74cd5 (1d:4cd5)
- TX_FAR _UnnamedText_74cd5
- db "@"
-
-PewterMartObject: ; 0x74cda (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $4, $ff
- db $7, $4, $4, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_BUG_CATCHER, $3 + 4, $3 + 4, $fe, $1, $2 ; person
- db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $5 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP PEWTER_MART_WIDTH, $7, $3
- EVENT_DISP PEWTER_MART_WIDTH, $7, $4
-
-UnknownDungeon1_h: ; 0x74d00 to 0x74d0c (12 bytes) (id=228)
- db CAVERN ; tileset
- db UNKNOWN_DUNGEON_1_HEIGHT, UNKNOWN_DUNGEON_1_WIDTH ; dimensions (y, x)
- dw UnknownDungeon1Blocks, UnknownDungeon1TextPointers, UnknownDungeon1Script ; blocks, texts, scripts
- db $00 ; connections
- dw UnknownDungeon1Object ; objects
-
-UnknownDungeon1Script: ; 74d0c (1d:4d0c)
- jp EnableAutoTextBoxDrawing
-
-UnknownDungeon1TextPointers: ; 74d0f (1d:4d0f)
- dw Predef5CText
- dw Predef5CText
- dw Predef5CText
-
-UnknownDungeon1Object: ; 0x74d15 (size=97)
- db $7d ; border tile
-
- db $9 ; warps
- db $11, $18, $6, $ff
- db $11, $19, $6, $ff
- db $1, $1b, $0, UNKNOWN_DUNGEON_2
- db $7, $17, $1, UNKNOWN_DUNGEON_2
- db $9, $12, $2, UNKNOWN_DUNGEON_2
- db $1, $7, $3, UNKNOWN_DUNGEON_2
- db $3, $1, $4, UNKNOWN_DUNGEON_2
- db $b, $3, $5, UNKNOWN_DUNGEON_2
- db $6, $0, $0, UNKNOWN_DUNGEON_3
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_BALL, $d + 4, $7 + 4, $ff, $ff, $81, FULL_RESTORE ; item
- db SPRITE_BALL, $3 + 4, $13 + 4, $ff, $ff, $82, MAX_ELIXER ; item
- db SPRITE_BALL, $0 + 4, $5 + 4, $ff, $ff, $83, NUGGET ; item
-
- ; warp-to
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $18
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $19
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $1b ; UNKNOWN_DUNGEON_2
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $7, $17 ; UNKNOWN_DUNGEON_2
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $9, $12 ; UNKNOWN_DUNGEON_2
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $7 ; UNKNOWN_DUNGEON_2
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_2
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_2
- EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $6, $0 ; UNKNOWN_DUNGEON_3
+INCLUDE "data/mapObjects/unknowndungeon1.asm"
UnknownDungeon1Blocks: ; 74d76 (1d:4d76)
INCBIN "maps/unknowndungeon1.blk"
-CeruleanHouse2_h: ; 0x74dfd to 0x74e09 (12 bytes) (id=230)
- db SHIP ; tileset
- db CERULEAN_HOUSE_2_HEIGHT, CERULEAN_HOUSE_2_WIDTH ; dimensions (y, x)
- dw CeruleanHouse2Blocks, CeruleanHouse2TextPointers, CeruleanHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanHouse2Object ; objects
-
-CeruleanHouse2Script: ; 74e09 (1d:4e09)
- ld a, $1
- ld [$cf0c], a
- dec a
- ld [$cc3c], a
- ret
-
-CeruleanHouse2TextPointers: ; 74e13 (1d:4e13)
- dw CeruleanHouse2Text1
-
-CeruleanHouse2Text1: ; 74e15 (1d:4e15)
- db $8
- ld hl, UnnamedText_74e77
- call PrintText
- xor a
- ld [wCurrentMenuItem], a
- ld [wListScrollOffset], a
-.asm_74e23
- ld hl, UnnamedText_74e7c
- call PrintText
- ld hl, UnnamedText_74e6d
- call LoadItemList
- ld hl, $cf7b
- ld a, l
- ld [$cf8b], a
- ld a, h
- ld [$cf8c], a
- xor a
- ld [$cf93], a
- ld [$cc35], a
- ld a, SPECIALLISTMENU
- ld [wListMenuID], a
- call DisplayListMenuID
- jr c, .asm_74e60 ; 0x74e49 $15
- ld hl, Unknown_74e86
- ld a, [$cf91]
- sub $15
- add a
- ld d, $0
- ld e, a
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call PrintText
- jr .asm_74e23 ; 0x74e5e $c3
-.asm_74e60
- xor a
- ld [wListScrollOffset], a
- ld hl, UnnamedText_74e81
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_74e6d: ; 74e6d (1d:4e6d)
- db $8,BOULDERBADGE,CASCADEBADGE,THUNDERBADGE,RAINBOWBADGE,SOULBADGE,MARSHBADGE,VOLCANOBADGE,EARTHBADGE,$FF
-
-UnnamedText_74e77: ; 74e77 (1d:4e77)
- TX_FAR _UnnamedText_74e77
- db "@"
-
-UnnamedText_74e7c: ; 74e7c (1d:4e7c)
- TX_FAR _UnnamedText_74e7c
- db "@"
-
-UnnamedText_74e81: ; 74e81 (1d:4e81)
- TX_FAR _UnnamedText_74e81
- db "@"
-
-Unknown_74e86: ; 74e86 (1d:4e86)
- dw UnnamedText_74e96
- dw UnnamedText_74e9b
- dw UnnamedText_74ea0
- dw UnnamedText_74ea5
- dw UnnamedText_74eaa
- dw UnnamedText_74eaf
- dw UnnamedText_74eb4
- dw UnnamedText_74eb9
-
-UnnamedText_74e96: ; 74e96 (1d:4e96)
- TX_FAR _UnnamedText_74e96
- db "@"
-
-UnnamedText_74e9b: ; 74e9b (1d:4e9b)
- TX_FAR _UnnamedText_74e9b
- db "@"
-
-UnnamedText_74ea0: ; 74ea0 (1d:4ea0)
- TX_FAR _UnnamedText_74ea0
- db "@"
-
-UnnamedText_74ea5: ; 74ea5 (1d:4ea5)
- TX_FAR _UnnamedText_74ea5
- db "@"
-
-UnnamedText_74eaa: ; 74eaa (1d:4eaa)
- TX_FAR _UnnamedText_74eaa
- db "@"
-
-UnnamedText_74eaf: ; 74eaf (1d:4eaf)
- TX_FAR _UnnamedText_74eaf
- db "@"
-
-UnnamedText_74eb4: ; 74eb4 (1d:4eb4)
- TX_FAR _UnnamedText_74eb4
- db "@"
-
-UnnamedText_74eb9: ; 74eb9 (1d:4eb9)
- TX_FAR _UnnamedText_74eb9
- db "@"
-
-CeruleanHouse2Object: ; 0x74ebe (size=34)
- db $c ; border tile
-
- db $3 ; warps
- db $0, $2, $9, $ff
- db $7, $2, $8, $ff
- db $7, $3, $8, $ff
+INCLUDE "data/mapHeaders/ceruleanhouse2.asm"
- db $0 ; signs
+INCLUDE "scripts/ceruleanhouse2.asm"
- db $1 ; people
- db SPRITE_FAT_BALD_GUY, $3 + 4, $5 + 4, $ff, $d3, $1 ; person
-
- ; warp-to
- EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $0, $2
- EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $2
- EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $3
+INCLUDE "data/mapObjects/ceruleanhouse2.asm"
VendingMachineMenu: ; 74ee0 (1d:4ee0)
ld hl, VendingMachineText1
@@ -105126,2904 +54488,155 @@ VendingPrices: ; 75000 (1d:5000)
db SODA_POP, $00,$03,$00
db LEMONADE, $00,$03,$50
-FuchsiaHouse1_h: ; 0x7500c to 0x75018 (12 bytes) (id=153)
- db HOUSE ; tileset
- db FUCHSIA_HOUSE_1_HEIGHT, FUCHSIA_HOUSE_1_WIDTH ; dimensions (y, x)
- dw FuchsiaHouse1Blocks, FuchsiaHouse1TextPointers, FuchsiaHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaHouse1Object ; objects
-
-FuchsiaHouse1Script: ; 75018 (1d:5018)
- call EnableAutoTextBoxDrawing
- ret
-
-FuchsiaHouse1TextPointers: ; 7501c (1d:501c)
- dw FuchsiaHouse1Text1
- dw FuchsiaHouse1Text2
- dw FuchsiaHouse1Text3
-
-FuchsiaHouse1Text1: ; 75022 (1d:5022)
- TX_FAR _FuchsiaHouse1Text1
- db "@"
-
-FuchsiaHouse1Text2: ; 75027 (1d:5027)
- TX_FAR _FuchsiaHouse1Text2
- db "@"
-
-FuchsiaHouse1Text3: ; 7502c (1d:502c)
- TX_FAR _FuchsiaHouse1Text3
- db "@"
-
-FuchsiaHouse1Object: ; 0x75031 (size=38)
- db $a ; border tile
-
- db $2 ; warps
- db $7, $2, $1, $ff
- db $7, $3, $1, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MOM_GEISHA, $3 + 4, $2 + 4, $ff, $d3, $1 ; person
- db SPRITE_GAMBLER, $2 + 4, $7 + 4, $ff, $d1, $2 ; person
- db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $ff, $ff, $3 ; person
+INCLUDE "data/mapHeaders/fuchsiahouse1.asm"
- ; warp-to
- EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $2
- EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $3
+INCLUDE "scripts/fuchsiahouse1.asm"
-FuchsiaPokecenter_h: ; 0x75057 to 0x75063 (12 bytes) (id=154)
- db POKECENTER ; tileset
- db FUCHSIA_POKECENTER_HEIGHT, FUCHSIA_POKECENTER_WIDTH ; dimensions (y, x)
- dw FuchsiaPokecenterBlocks, FuchsiaPokecenterTextPointers, FuchsiaPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaPokecenterObject ; objects
+INCLUDE "data/mapObjects/fuchsiahouse1.asm"
-FuchsiaPokecenterScript: ; 75063 (1d:5063)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
+INCLUDE "data/mapHeaders/fuchsiapokecenter.asm"
-FuchsiaPokecenterTextPointers: ; 75069 (1d:5069)
- dw FuchsiaPokecenterText1
- dw FuchsiaPokecenterText2
- dw FuchsiaPokecenterText3
- dw FuchsiaPokecenterText4
+INCLUDE "scripts/fuchsiapokecenter.asm"
-FuchsiaPokecenterText1: ; 75071 (1d:5071)
- db $ff
-
-FuchsiaPokecenterText2: ; 75072 (1d:5072)
- TX_FAR _FuchsiaPokecenterText1
- db "@"
-
-FuchsiaPokecenterText3: ; 75077 (1d:5077)
- TX_FAR _FuchsiaPokecenterText3
- db "@"
-
-FuchsiaPokecenterText4: ; 7507c (1d:507c)
- db $f6
-
-FuchsiaPokecenterObject: ; 0x7507d (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $2, $ff
- db $7, $4, $2, $ff
+INCLUDE "data/mapObjects/fuchsiapokecenter.asm"
- db $0 ; signs
+INCLUDE "data/mapHeaders/fuchsiahouse2.asm"
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_ROCKER, $3 + 4, $2 + 4, $ff, $ff, $2 ; person
- db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $2, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+INCLUDE "scripts/fuchsiahouse2.asm"
- ; warp-to
- EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $3
- EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $4
-
-FuchsiaHouse2_h: ; 0x750a9 to 0x750b5 (12 bytes) (id=155)
- db LAB ; tileset
- db FUCHSIA_HOUSE_2_HEIGHT, FUCHSIA_HOUSE_2_WIDTH ; dimensions (y, x)
- dw FuchsiaHouse2Blocks, FuchsiaHouse2TextPointers, FuchsiaHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaHouse2Object ; objects
-
-FuchsiaHouse2Script: ; 750b5 (1d:50b5)
- jp EnableAutoTextBoxDrawing
-
-FuchsiaHouse2TextPointers: ; 750b8 (1d:50b8)
- dw FuchsiaHouse2Text1
- dw Predef5CText
- dw BoulderText
- dw FuchsiaHouse2Text4
- dw FuchsiaHouse2Text5
-
-FuchsiaHouse2Text1: ; 750c2 (1d:50c2)
- db $08 ; asm
- ld a, [$d78e]
- bit 0, a
- jr nz, .subtract ; 0x750c8
- ld b,GOLD_TEETH
- call IsItemInBag
- jr nz, .asm_3f30f ; 0x750cf
- ld a, [$d78e]
- bit 1, a
- jr nz, .asm_60cba ; 0x750d6
- ld hl, WardenGibberishText1
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- ld hl, WardenGibberishText3
- jr nz, .asm_61238 ; 0x750e8
- ld hl, WardenGibberishText2
-.asm_61238 ; 0x750ed
- call PrintText
- jr .asm_52039 ; 0x750f0
-.asm_3f30f ; 0x750f2
- ld hl, WardenTeethText1
- call PrintText
- ld a, $40
- ldh [$db], a
- callba RemoveItemByID
- ld hl, $d78e
- set 1, [hl]
-.asm_60cba ; 0x75109
- ld hl, WardenThankYouText
- call PrintText
- ld bc,(HM_04 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedHM04Text
- call PrintText
- ld hl, $d78e
- set 0, [hl]
- jr .asm_52039 ; 0x75122
-.subtract ; 0x75124
- ld hl, HM04ExplanationText
- call PrintText
- jr .asm_52039 ; 0x7512a
-.BagFull
- ld hl, HM04NoRoomText
- call PrintText
-.asm_52039 ; 0x75132
- jp TextScriptEnd
-
-WardenGibberishText1: ; 75135 (1d:5135)
- TX_FAR _WardenGibberishText1
- db "@"
-
-WardenGibberishText2: ; 7513a (1d:513a)
- TX_FAR _WardenGibberishText2
- db "@"
-
-WardenGibberishText3: ; 7513f (1d:513f)
- TX_FAR _WardenGibberishText3
- db "@"
-
-WardenTeethText1: ; 75144 (1d:5144)
- TX_FAR _WardenTeethText1
- db $0b
-
-WardenTeethText2: ; 75149 (1d:5149)
- TX_FAR _WardenTeethText2
- db "@"
-
-WardenThankYouText: ; 7514e (1d:514e)
- TX_FAR _WardenThankYouText
- db "@"
-
-ReceivedHM04Text: ; 75153 (1d:5153)
- TX_FAR _ReceivedHM04Text ; 0x9e5a2
- db $0B, "@"
-
-HM04ExplanationText: ; 75159 (1d:5159)
- TX_FAR _HM04ExplanationText
- db "@"
-
-HM04NoRoomText: ; 7515e (1d:515e)
- TX_FAR _HM04NoRoomText
- db "@"
-
-FuchsiaHouse2Text5: ; 75163 (1d:5163)
-FuchsiaHouse2Text4: ; 75163 (1d:5163)
- db $08 ; asm
- ldh a, [$8c]
- cp $4
- ld hl, UnnamedText_7517b
- jr nz, .asm_4c9a2 ; 0x7516b
- ld hl, UnnamedText_75176
-.asm_4c9a2 ; 0x75170
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_75176: ; 75176 (1d:5176)
- TX_FAR _UnnamedText_75176
- db "@"
-
-UnnamedText_7517b: ; 7517b (1d:517b)
- TX_FAR _UnnamedText_7517b
- db "@"
-
-FuchsiaHouse2Object: ; 0x75180 (size=45)
- db $17 ; border tile
-
- db $2 ; warps
- db $7, $4, $3, $ff
- db $7, $5, $3, $ff
-
- db $2 ; signs
- db $3, $4, $4 ; FuchsiaHouse2Text4
- db $3, $5, $5 ; FuchsiaHouse2Text5
-
- db $3 ; people
- db SPRITE_WARDEN, $3 + 4, $2 + 4, $ff, $ff, $1 ; person
- db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $82, RARE_CANDY ; item
- db SPRITE_BOULDER, $4 + 4, $8 + 4, $ff, $10, $3 ; person
-
- ; warp-to
- EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $4
- EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $5
+INCLUDE "data/mapObjects/fuchsiahouse2.asm"
FuchsiaHouse2Blocks: ; 751ad (1d:51ad)
INCBIN "maps/fuchsiahouse2.blk"
-SafariZoneEntrance_h: ; 0x751c1 to 0x751cd (12 bytes) (id=156)
- db GATE ; tileset
- db SAFARI_ZONE_ENTRANCE_HEIGHT, SAFARI_ZONE_ENTRANCE_WIDTH ; dimensions (y, x)
- dw SafariZoneEntranceBlocks, SafariZoneEntranceTextPointers, SafariZoneEntranceScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneEntranceObject ; objects
-
-SafariZoneEntranceScript: ; 751cd (1d:51cd)
- call EnableAutoTextBoxDrawing
- ld hl, SafariZoneEntranceScriptPointers
- ld a, [W_SAFARIZONEENTRANCECURSCRIPT]
- jp CallFunctionInTable
-
-SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9)
- dw SafariZoneEntranceScript0
- dw SafariZoneEntranceScript1
- dw SafariZoneEntranceScript2
- dw SafariZoneEntranceScript3
- dw SafariZoneEntranceScript4
- dw SafariZoneEntranceScript5
- dw SafariZoneEntranceScript6
-
-SafariZoneEntranceScript0: ; 751e7 (1d:51e7)
- ld hl, CoordsData_75221
- call ArePlayerCoordsInArray
- ret nc
- ld a, $3
- ld [$ff8c], a
- call DisplayTextID
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $c
- ld [$c109], a
- ld a, [$cd3d]
- cp $1
- jr z, .asm_7520f ; 0x75207 $6
- ld a, $2
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- ret
-.asm_7520f
- ld a, $10
- ld c, $1
- call Func_752a3
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- ret
-
-CoordsData_75221: ; 75221 (1d:5221)
- db $02,$03
- db $02,$04
- db $FF
-
-SafariZoneEntranceScript1: ; 75226 (1d:5226)
- call Func_752b4
- ret nz
-SafariZoneEntranceScript2: ; 7522a (1d:522a)
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [wJoypadForbiddenButtonsMask], a
- call UpdateSprites
- ld a, $4
- ld [$ff8c], a
- call DisplayTextID
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ret
-
-SafariZoneEntranceScript3: ; 75240 (1d:5240)
- call Func_752b4
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $5
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- ret
-
-SafariZoneEntranceScript5: ; 7524e (1d:524e)
- ld a, $4
- ld [$d528], a
- ld hl, $d790
- bit 6, [hl]
- res 6, [hl]
- jr z, .asm_7527f ; 0x7525a $23
- res 7, [hl]
- call UpdateSprites
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $6
- ld [$ff8c], a
- call DisplayTextID
- xor a
- ld [$da47], a
- ld a, $80
- ld c, $3
- call Func_752a3
- ld a, $4
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- jr .asm_75286 ; 0x7527d $7
-.asm_7527f
- ld a, $5
- ld [$ff8c], a
- call DisplayTextID
-.asm_75286
- ret
-
-SafariZoneEntranceScript4: ; 75287 (1d:5287)
- call Func_752b4
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- ret
-
-SafariZoneEntranceScript6: ; 75295 (1d:5295)
- call Func_752b4
- ret nz
- call Delay3
- ld a, [$cf0d]
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- ret
-
-Func_752a3: ; 752a3 (1d:52a3)
- push af
- ld b, $0
- ld a, c
- ld [$cd38], a
- ld hl, $ccd3
- pop af
- call FillMemory
- jp Func_3486
-
-Func_752b4: ; 752b4 (1d:52b4)
- ld a, [$cd38]
- and a
- ret
-
-SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
- dw SafariZoneEntranceText1
- dw SafariZoneEntranceText2
- dw SafariZoneEntranceText3
- dw SafariZoneEntranceText4
- dw SafariZoneEntranceText5
- dw SafariZoneEntranceText6
-
-SafariZoneEntranceText3: ; 752c5 (1d:52c5)
-SafariZoneEntranceText1: ; 752c5 (1d:52c5)
- TX_FAR _SafariZoneEntranceText1
- db "@"
-
-SafariZoneEntranceText4: ; 752ca (1d:52ca)
- TX_FAR UnnamedText_9e6e4 ; 0x9e6e4
- db $8
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- call YesNoChoice
- ld a, [$cc26]
- and a
- jp nz, .asm_75346
- xor a
- ld [$ff9f], a
- ld a, $5
- ld [$ffa0], a
- ld a, $0
- ld [$ffa1], a
- call HasEnoughMoney
- jr nc, .asm_752f9 ; 0x752ef $8
- ld hl, UnnamedText_7536a
- call PrintText
- jr .asm_7534c ; 0x752f7 $53
-.asm_752f9
- xor a
- ld [$cd3d], a
- ld a, $5
- ld [$cd3e], a
- ld a, $0
- ld [$cd3f], a
- ld hl, $cd3f
- ld de, $d349
- ld c, $3
- ld a, $c
- call Predef
- ld a, $13
- ld [$d125], a
- call DisplayTextBoxID
- ld hl, UnnamedText_7535b
- call PrintText
- ld a, $1e
- ld [$da47], a
- ld a, 502 / $100
- ld [wSafariSteps], a
- ld a, 502 % $100
- ld [wSafariSteps + 1], a
- ld a, $40
- ld c, $3
- call Func_752a3
- ld hl, $d790
- set 7, [hl]
- res 6, [hl]
- ld a, $3
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- jr .asm_75358 ; 0x75344 $12
-.asm_75346
- ld hl, UnnamedText_75365
- call PrintText
-.asm_7534c
- ld a, $80
- ld c, $1
- call Func_752a3
- ld a, $4
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
-.asm_75358
- jp TextScriptEnd
-
-UnnamedText_7535b: ; 7535b (1d:535b)
- TX_FAR UnnamedText_9e747 ; 0x9e747
- db $0B
-
-UnnamedText_75360: ; 75360 (1d:5360)
- TX_FAR _UnnamedText_75360
- db "@"
-
-UnnamedText_75365: ; 75365 (1d:5365)
- TX_FAR _UnnamedText_75365
- db "@"
+INCLUDE "data/mapHeaders/safarizoneentrance.asm"
-UnnamedText_7536a: ; 7536a (1d:536a)
- TX_FAR _UnnamedText_7536a
- db "@"
+INCLUDE "scripts/safarizoneentrance.asm"
-SafariZoneEntranceText5: ; 7536f (1d:536f)
- TX_FAR UnnamedText_9e814 ; 0x9e814
- db $8
- call YesNoChoice
- ld a, [$cc26]
- and a
- jr nz, .asm_7539c ; 0x7537b $1f
- ld hl, UnnamedText_753bb
- call PrintText
- xor a
- ld [$c109], a
- ld a, $80
- ld c, $3
- call Func_752a3
- ld hl, $d790
- res 6, [hl]
- res 7, [hl]
- ld a, $0
- ld [$cf0d], a
- jr .asm_753b3 ; 0x7539a $17
-.asm_7539c
- ld hl, UnnamedText_753c0
- call PrintText
- ld a, $4
- ld [$c109], a
- ld a, $40
- ld c, $1
- call Func_752a3
- ld a, $5
- ld [$cf0d], a
-.asm_753b3
- ld a, $6
- ld [W_SAFARIZONEENTRANCECURSCRIPT], a
- jp TextScriptEnd
-
-UnnamedText_753bb: ; 753bb (1d:53bb)
- TX_FAR _UnnamedText_753bb
- db "@"
-
-UnnamedText_753c0: ; 753c0 (1d:53c0)
- TX_FAR _UnnamedText_753c0
- db "@"
-
-SafariZoneEntranceText6: ; 753c5 (1d:53c5)
- TX_FAR _UnnamedText_753c5
- db "@"
-
-SafariZoneEntranceText2: ; 753ca (1d:53ca)
- db $08 ; asm
- ld hl, UnnamedText_753e6
- call PrintText
- call YesNoChoice
- ld a, [$cc26]
- and a
- ld hl, UnnamedText_753f0
- jr nz, .asm_278a6 ; 0x753db
- ld hl, UnnamedText_753eb
-.asm_278a6 ; 0x753e0
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_753e6: ; 753e6 (1d:53e6)
- TX_FAR _UnnamedText_753e6
- db "@"
-
-UnnamedText_753eb: ; 753eb (1d:53eb)
- TX_FAR _UnnamedText_753eb
- db "@"
-
-UnnamedText_753f0: ; 753f0 (1d:53f0)
- TX_FAR _UnnamedText_753f0
- db "@"
-
-SafariZoneEntranceObject: ; 0x753f5 (size=48)
- db $a ; border tile
-
- db $4 ; warps
- db $5, $3, $4, $ff
- db $5, $4, $4, $ff
- db $0, $3, $0, SAFARI_ZONE_CENTER
- db $0, $4, $1, SAFARI_ZONE_CENTER
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_WHITE_PLAYER, $2 + 4, $6 + 4, $ff, $d2, $1 ; person
- db SPRITE_WHITE_PLAYER, $4 + 4, $1 + 4, $ff, $d3, $2 ; person
-
- ; warp-to
- EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $3
- EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $4
- EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $3 ; SAFARI_ZONE_CENTER
- EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $4 ; SAFARI_ZONE_CENTER
+INCLUDE "data/mapObjects/safarizoneentrance.asm"
SafariZoneEntranceBlocks: ; 75425 (1d:5425)
INCBIN "maps/safarizoneentrance.blk"
-FuchsiaGym_h: ; 0x75431 to 0x7543d (12 bytes) (id=157)
- db GYM ; tileset
- db FUCHSIA_GYM_HEIGHT, FUCHSIA_GYM_WIDTH ; dimensions (y, x)
- dw FuchsiaGymBlocks, FuchsiaGymTextPointers, FuchsiaGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaGymObject ; objects
-
-FuchsiaGymScript: ; 7543d (1d:543d)
- call FuchsiaGymScript_75453
- call EnableAutoTextBoxDrawing
- ld hl, FuchsiaGymTrainerHeaders
- ld de, FuchsiaGymScriptPointers
- ld a, [W_FUCHSIAGYMCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_FUCHSIAGYMCURSCRIPT], a
- ret
-
-FuchsiaGymScript_75453: ; 75453 (1d:5453)
- ld hl, $D126
- bit 6, [hl]
- res 6, [hl]
- ret z
- ld hl, Gym5CityName
- ld de, Gym5LeaderName
- call LoadGymLeaderAndCityName
- ret
-
-Gym5CityName: ; 75465 (1d:5465)
- db "FUCHSIA CITY@"
-Gym5LeaderName: ; 75472 (1d:5472)
- db "KOGA@"
-
-Func_75477: ; 75477 (1d:5477)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_FUCHSIAGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-FuchsiaGymScriptPointers: ; 75482 (1d:5482)
- dw CheckFightingMapTrainers
- dw Func_324c
- dw EndTrainerBattle
- dw FuchsiaGymScript3
-
-FuchsiaGymScript3: ; 7548a (1d:548a)
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_75477
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-FuchsiaGymScript3_75497: ; 75497 (1d:5497)
- ld a, $9
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d792
- set 1, [hl]
- ld bc, (TM_06 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld hl, $d792
- set 0, [hl]
- jr .asm_754c0
-.BagFull
- ld a, $b
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
-.asm_754c0
- ld hl, W_OBTAINEDBADGES
- set 4, [hl]
- ld hl, $d72a
- set 4, [hl]
-
- ; deactivate gym trainers
- ld a, [$d792]
- or %11111100
- ld [$d792], a
-
- jp Func_75477
-
-FuchsiaGymTextPointers: ; 754d5 (1d:54d5)
- dw FuchsiaGymText1
- dw FuchsiaGymText2
- dw FuchsiaGymText3
- dw FuchsiaGymText4
- dw FuchsiaGymText5
- dw FuchsiaGymText6
- dw FuchsiaGymText7
- dw FuchsiaGymText8
- dw FuchsiaGymText9
- dw FuchsiaGymText10
- dw FuchsiaGymText11
-
-FuchsiaGymTrainerHeaders: ; 754eb (1d:54eb)
-FuchsiaGymTrainerHeader0: ; 754eb (1d:54eb)
- db $2 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d792 ; flag's byte
- dw FuchsiaGymBattleText1 ; 0x55ae TextBeforeBattle
- dw FuchsiaGymAfterBattleText1 ; 0x55b8 TextAfterBattle
- dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle
- dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle
-
-FuchsiaGymTrainerHeader2: ; 754f7 (1d:54f7)
- db $3 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d792 ; flag's byte
- dw FuchsiaGymBattleText2 ; 0x55c7 TextBeforeBattle
- dw FuchsiaGymAfterBattleText2 ; 0x55d1 TextAfterBattle
- dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle
- dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle
-
-FuchsiaGymTrainerHeader3: ; 75503 (1d:5503)
- db $4 ; flag's bit
- db ($4 << 4) ; trainer's view range
- dw $d792 ; flag's byte
- dw FuchsiaGymBattleText3 ; 0x55e0 TextBeforeBattle
- dw FuchsiaGymAfterBattleText3 ; 0x55ea TextAfterBattle
- dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle
- dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle
-
-FuchsiaGymTrainerHeader4: ; 7550f (1d:550f)
- db $5 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d792 ; flag's byte
- dw FuchsiaGymBattleText4 ; 0x55f9 TextBeforeBattle
- dw FuchsiaGymAfterBattleText4 ; 0x5603 TextAfterBattle
- dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle
- dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle
-
-FuchsiaGymTrainerHeader5: ; 7551b (1d:551b)
- db $6 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d792 ; flag's byte
- dw FuchsiaGymBattleText5 ; 0x5612 TextBeforeBattle
- dw FuchsiaGymAfterBattleText5 ; 0x561c TextAfterBattle
- dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle
- dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle
-
-FuchsiaGymTrainerHeader6: ; 75527 (1d:5527)
- db $7 ; flag's bit
- db ($2 << 4) ; trainer's view range
- dw $d792 ; flag's byte
- dw FuchsiaGymBattleText6 ; 0x562b TextBeforeBattle
- dw FuchsiaGymAfterBattleText6 ; 0x5635 TextAfterBattle
- dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle
- dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle
+INCLUDE "data/mapHeaders/fuchsiagym.asm"
- db $ff
+INCLUDE "scripts/fuchsiagym.asm"
-FuchsiaGymText1: ; 75534 (1d:5534)
- db $08 ; asm
- ld a, [$d792]
- bit 1, a
- jr z, .asm_181b6 ; 0x7553a
- bit 0, a
- jr nz, .asm_adc3b ; 0x7553e
- call z, FuchsiaGymScript3_75497
- call DisableWaitingAfterTextDisplay
- jr .asm_e84c6 ; 0x75546
-.asm_adc3b ; 0x75548
- ld hl, UnnamedText_7558b
- call PrintText
- jr .asm_e84c6 ; 0x7554e
-.asm_181b6 ; 0x75550
- ld hl, UnnamedText_75581
- call PrintText
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_75586
- ld de, UnnamedText_75586
- call PreBattleSaveRegisters
- ldh a, [$8c]
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $5
- ld [$d05c], a
- xor a
- ldh [$b4], a
- ld a, $3
- ld [W_FUCHSIAGYMCURSCRIPT], a
-.asm_e84c6 ; 0x7557e
- jp TextScriptEnd
-
-UnnamedText_75581: ; 75581 (1d:5581)
- TX_FAR _UnnamedText_75581
- db "@"
-
-UnnamedText_75586: ; 75586 (1d:5586)
- TX_FAR _UnnamedText_75586
- db "@"
-
-UnnamedText_7558b: ; 7558b (1d:558b)
- TX_FAR _UnnamedText_7558b
- db "@"
-
-FuchsiaGymText9: ; 75590 (1d:5590)
- TX_FAR _UnnamedText_75590
- db "@"
-
-FuchsiaGymText10: ; 75595 (1d:5595)
- TX_FAR _ReceivedTM06Text ; 0xa00eb
- db $11
-
-TM06ExplanationText: ; 7559a (1d:559a)
- TX_FAR _TM06ExplanationText
- db "@"
-
-FuchsiaGymText11: ; 7559f (1d:559f)
- TX_FAR _TM06NoRoomText
- db "@"
-
-FuchsiaGymText2: ; 755a4 (1d:55a4)
- db $08 ; asm
- ld hl, FuchsiaGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText1: ; 755ae (1d:55ae)
- TX_FAR _FuchsiaGymBattleText1
- db "@"
-
-FuchsiaGymEndBattleText1: ; 755b3 (1d:55b3)
- TX_FAR _FuchsiaGymEndBattleText1
- db "@"
-
-FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8)
- TX_FAR _FuchsiaGymAfterBattleText1
- db "@"
-
-FuchsiaGymText3: ; 755bd (1d:55bd)
- db $08 ; asm
- ld hl, FuchsiaGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText2: ; 755c7 (1d:55c7)
- TX_FAR _FuchsiaGymBattleText2
- db "@"
-
-FuchsiaGymEndBattleText2: ; 755cc (1d:55cc)
- TX_FAR _FuchsiaGymEndBattleText2
- db "@"
-
-FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1)
- TX_FAR _FuchsiaGymAfterBattleText2
- db "@"
-
-FuchsiaGymText4: ; 755d6 (1d:55d6)
- db $08 ; asm
- ld hl, FuchsiaGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText3: ; 755e0 (1d:55e0)
- TX_FAR _FuchsiaGymBattleText3
- db "@"
-
-FuchsiaGymEndBattleText3: ; 755e5 (1d:55e5)
- TX_FAR _FuchsiaGymEndBattleText3
- db "@"
-
-FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea)
- TX_FAR _FuchsiaGymAfterBattleText3
- db "@"
-
-FuchsiaGymText5: ; 755ef (1d:55ef)
- db $08 ; asm
- ld hl, FuchsiaGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText4: ; 755f9 (1d:55f9)
- TX_FAR _FuchsiaGymBattleText4
- db "@"
-
-FuchsiaGymEndBattleText4: ; 755fe (1d:55fe)
- TX_FAR _FuchsiaGymEndBattleText4
- db "@"
-
-FuchsiaGymAfterBattleText4: ; 75603 (1d:5603)
- TX_FAR _FuchsiaGymAfterBattleText4
- db "@"
-
-FuchsiaGymText6: ; 75608 (1d:5608)
- db $08 ; asm
- ld hl, FuchsiaGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText5: ; 75612 (1d:5612)
- TX_FAR _FuchsiaGymBattleText5
- db "@"
-
-FuchsiaGymEndBattleText5: ; 75617 (1d:5617)
- TX_FAR _FuchsiaGymEndBattleText5
- db "@"
-
-FuchsiaGymAfterBattleText5: ; 7561c (1d:561c)
- TX_FAR _FuchsiaGymAfterBattleText5
- db "@"
-
-FuchsiaGymText7: ; 75621 (1d:5621)
- db $08 ; asm
- ld hl, FuchsiaGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText6: ; 7562b (1d:562b)
- TX_FAR _FuchsiaGymBattleText6
- db "@"
-
-FuchsiaGymEndBattleText6: ; 75630 (1d:5630)
- TX_FAR _FuchsiaGymEndBattleText6
- db "@"
-
-FuchsiaGymAfterBattleText6: ; 75635 (1d:5635)
- TX_FAR _FuchsiaGymAfterBattleText6
- db "@"
-
-FuchsiaGymText8: ; 7563a (1d:563a)
- db $08 ; asm
- ld a, [$d792]
- bit 1, a
- ld hl, UnnamedText_75653
- jr nz, .asm_50671 ; 0x75643
- ld hl, UnnamedText_7564e
-.asm_50671 ; 0x75648
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_7564e: ; 7564e (1d:564e)
- TX_FAR _UnnamedText_7564e
- db "@"
-
-UnnamedText_75653: ; 75653 (1d:5653)
- TX_FAR _UnnamedText_75653
- db "@"
-
-FuchsiaGymObject: ; 0x75658 (size=82)
- db $3 ; border tile
-
- db $2 ; warps
- db $11, $4, $5, $ff
- db $11, $5, $5, $ff
-
- db $0 ; signs
-
- db $8 ; people
- db SPRITE_BLACKBELT, $a + 4, $4 + 4, $ff, $d0, $41, KOGA + $C8, $1 ; trainer
- db SPRITE_ROCKER, $d + 4, $8 + 4, $ff, $d0, $42, JUGGLER + $C8, $7 ; trainer
- db SPRITE_ROCKER, $8 + 4, $7 + 4, $ff, $d3, $43, JUGGLER + $C8, $3 ; trainer
- db SPRITE_ROCKER, $c + 4, $1 + 4, $ff, $d0, $44, JUGGLER + $C8, $8 ; trainer
- db SPRITE_ROCKER, $5 + 4, $3 + 4, $ff, $d1, $45, TAMER + $C8, $1 ; trainer
- db SPRITE_ROCKER, $2 + 4, $8 + 4, $ff, $d0, $46, TAMER + $C8, $2 ; trainer
- db SPRITE_ROCKER, $7 + 4, $2 + 4, $ff, $d2, $47, JUGGLER + $C8, $4 ; trainer
- db SPRITE_GYM_HELPER, $f + 4, $7 + 4, $ff, $d0, $8 ; person
-
- ; warp-to
- EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $4
- EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $5
+INCLUDE "data/mapObjects/fuchsiagym.asm"
FuchsiaGymBlocks: ; 756aa (1d:56aa)
INCBIN "maps/fuchsiagym.blk"
-FuchsiaMeetingRoom_h: ; 0x756d7 to 0x756e3 (12 bytes) (id=158)
- db LAB ; tileset
- db FUCHSIA_MEETING_ROOM_HEIGHT, FUCHSIA_MEETING_ROOM_WIDTH ; dimensions (y, x)
- dw FuchsiaMeetingRoomBlocks, FuchsiaMeetingRoomTextPointers, FuchsiaMeetingRoomScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaMeetingRoomObject ; objects
-
-FuchsiaMeetingRoomScript: ; 756e3 (1d:56e3)
- call EnableAutoTextBoxDrawing
- ret
-
-FuchsiaMeetingRoomTextPointers: ; 756e7 (1d:56e7)
- dw FuchsiaMeetingRoomText1
- dw FuchsiaMeetingRoomText2
- dw FuchsiaMeetingRoomText3
+INCLUDE "data/mapHeaders/fuchsiameetingroom.asm"
-FuchsiaMeetingRoomText1: ; 756ed (1d:56ed)
- TX_FAR _FuchsiaMeetingRoomText1
- db "@"
+INCLUDE "scripts/fuchsiameetingroom.asm"
-FuchsiaMeetingRoomText2: ; 756f2 (1d:56f2)
- TX_FAR _FuchsiaMeetingRoomText2
- db "@"
-
-FuchsiaMeetingRoomText3: ; 756f7 (1d:56f7)
- TX_FAR _FuchsiaMeetingRoomText3
- db "@"
-
-FuchsiaMeetingRoomObject: ; 0x756fc (size=38)
- db $17 ; border tile
-
- db $2 ; warps
- db $7, $4, $6, $ff
- db $7, $5, $6, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_WHITE_PLAYER, $1 + 4, $4 + 4, $ff, $d0, $1 ; person
- db SPRITE_WHITE_PLAYER, $2 + 4, $0 + 4, $ff, $d1, $2 ; person
- db SPRITE_WHITE_PLAYER, $1 + 4, $a + 4, $ff, $d0, $3 ; person
-
- ; warp-to
- EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $4
- EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $5
+INCLUDE "data/mapObjects/fuchsiameetingroom.asm"
FuchsiaMeetingRoomBlocks: ; 75722 (1d:5722)
INCBIN "maps/fuchsiameetingroom.blk"
-CinnabarGym_h: ; 0x7573e to 0x7574a (12 bytes) (id=166)
- db FACILITY ; tileset
- db CINNABAR_GYM_HEIGHT, CINNABAR_GYM_WIDTH ; dimensions (y, x)
- dw CinnabarGymBlocks, CinnabarGymTextPointers, CinnabarGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw CinnabarGymObject ; objects
-
-CinnabarGymScript: ; 7574a (1d:574a)
- call CinnabarGymScript_75759
- call EnableAutoTextBoxDrawing
- ld hl, CinnabarGymScriptPointers
- ld a, [W_CINNABARGYMCURSCRIPT]
- jp CallFunctionInTable
-
-CinnabarGymScript_75759: ; 75759 (1d:5759)
- ld hl, $D126
- bit 6, [hl]
- res 6, [hl]
- push hl
- call nz, CinnabarGymScript_75772
- pop hl
- bit 5, [hl]
- res 5, [hl]
- call nz, Func_3ead
- ld hl, $D79B
- res 7, [hl]
- ret
-CinnabarGymScript_75772: ; 75772 (1d:5772)
- ld hl, Gym7CityName
- ld de, Gym7LeaderName
- jp LoadGymLeaderAndCityName
-
-Gym7CityName: ; 7577b (1d:577b)
- db "CINNABAR ISLAND@"
-Gym7LeaderName: ; 7578b (1d:578b)
- db "BLAINE@"
-
-CinnabarGymScript_75792: ; 75792 (1d:5792)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_CINNABARGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ld [$da38], a
- ret
-
-CinnabarGymScript_757a0: ; 757a0 (1d:57a0)
- ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
- ld [wTrainerHeaderFlagBit], a
- ret
-
-CinnabarGymScriptPointers: ; 757a6 (1d:57a6)
- dw CinnabarGymScript0
- dw CinnabarGymScript1
- dw CinnabarGymScript2
- dw CinnabarGymScript3
-
-CinnabarGymScript0: ; 757ae (1d:57ae)
- ld a, [$da38]
- and a
- ret z
- ld [$ff8c], a
- cp $4
- jr nz, .asm_757c3 ; 0x757b7 $a
- ld a, $4
- ld [$d528], a
- ld de, MovementData_757d7
- jr .asm_757cb ; 0x757c1 $8
-.asm_757c3
- ld de, MovementData_757da
- ld a, $1
- ld [$d528], a
-.asm_757cb
- call MoveSprite
- ld a, $1
- ld [W_CINNABARGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-MovementData_757d7: ; 757d7 (1d:57d7)
- db $80,$40,$FF
-
-MovementData_757da: ; 757da (1d:57da)
- db $80,$FF
-
-CinnabarGymScript1: ; 757dc (1d:57dc)
- ld a, [$d730]
- bit 0, a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, [$da38]
- ld [wTrainerHeaderFlagBit], a
- ld [$ff8c], a
- jp DisplayTextID
+INCLUDE "data/mapHeaders/cinnabargym.asm"
-Func_757f1: ; 757f1 (1d:57f1)
- ld a, $10
- jp Predef ; indirect jump to HandleBitArray (f666 (3:7666))
+INCLUDE "scripts/cinnabargym.asm"
-CinnabarGymScript2: ; 757f6 (1d:57f6)
- ld a, [$d057]
- cp $ff
- jp z, CinnabarGymScript_75792
- ld a, [wTrainerHeaderFlagBit]
- ld [$ffdb], a
- ld c, a
- ld b, $2
- ld hl, $d79a
- call Func_757f1
- ld a, c
- and a
- jr nz, .asm_7581b ; 0x7580e $b
- call WaitForSoundToFinish
- ld a, (SFX_02_57 - SFX_Headers_02) / 3
- call PlaySound
- call WaitForSoundToFinish
-.asm_7581b
- ld a, [wTrainerHeaderFlagBit]
- ld [$ffdb], a
- ld c, a
- ld b, $1
- ld hl, $d79a
- call Func_757f1
- ld a, [wTrainerHeaderFlagBit]
- sub $2
- ld c, a
- ld b, $1
- ld hl, $d79c
- call Func_757f1
- call Func_3ead
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [$da38], a
- ld a, $0
- ld [W_CINNABARGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CinnabarGymScript3: ; 7584a (1d:584a)
- ld a, [$d057]
- cp $ff
- jp z, CinnabarGymScript_75792
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
-CinnabarGymScript3_75857: ; 75857 (1d:5857)
- ld a, $a
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d79a
- set 1, [hl]
- ld bc, (TM_38 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld a, $b
- ld [$ff8c], a
- call DisplayTextID
- ld hl, $d79a
- set 0, [hl]
- jr .asm_75880 ; 0x75877 $7
-.BagFull
- ld a, $c
- ld [$ff8c], a
- call DisplayTextID
-.asm_75880
- ld hl, W_OBTAINEDBADGES
- set 6, [hl]
- ld hl, $d72a
- set 6, [hl]
-
- ; deactivate gym trainers
- ld a, [$d79a]
- or %11111100
- ld [$d79a], a
- ld hl, $d79b
- set 0, [hl]
-
- ld hl, $d126
- set 5, [hl]
-
- jp CinnabarGymScript_75792
-
-CinnabarGymTextPointers: ; 7589f (1d:589f)
- dw CinnabarGymText1
- dw CinnabarGymText2
- dw CinnabarGymText3
- dw CinnabarGymText4
- dw CinnabarGymText5
- dw CinnabarGymText6
- dw CinnabarGymText7
- dw CinnabarGymText8
- dw CinnabarGymText9
- dw BlaineBadgeText
- dw ReceivedTM38Text
- dw TM38NoRoomText
-
-Func_758b7: ; 758b7 (1d:58b7)
- ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
- ld [$cf13], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld a, [$cf13]
- cp $1
- jr z, .asm_758d4
- ld a, $2
- jr .asm_758d6
-.asm_758d4
- ld a, $3
-.asm_758d6
- ld [W_CINNABARGYMCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jp TextScriptEnd
-
-CinnabarGymText1: ; 758df (1d:58df)
- db $8
- ld a, [$d79a]
- bit 1, a
- jr z, .asm_d9332 ; 0x758e5 $16
- bit 0, a
- jr nz, .asm_3012f ; 0x758e9 $9
- call z, CinnabarGymScript3_75857
- call DisableWaitingAfterTextDisplay
- jp TextScriptEnd
-.asm_3012f ; 0x758f4
- ld hl, BlaineFireBlastText
- call PrintText
- jp TextScriptEnd
-.asm_d9332 ; 0x758fd
- ld hl, BlaineBattleText
- call PrintText
- ld hl, BlaineEndBattleText
- ld de, BlaineEndBattleText
- call PreBattleSaveRegisters
- ld a, $7
- ld [$d05c], a
- jp Func_758b7
-
-BlaineBattleText: ; 75914 (1d:5914)
- TX_FAR _BlaineBattleText
- db "@"
-
-BlaineEndBattleText: ; 75919 (1d:5919)
- TX_FAR _BlaineEndBattleText
- db $11
- db $d
- db "@"
-
-BlaineFireBlastText: ; 75920 (1d:5920)
- TX_FAR _BlaineFireBlastText
- db "@"
-
-BlaineBadgeText: ; 75925 (1d:5925)
- TX_FAR _BlaineBadgeText
- db "@"
-
-ReceivedTM38Text: ; 7592a (1d:592a)
- TX_FAR _ReceivedTM38Text ; 0xa09a8
- db $0B
- TX_FAR _TM38ExplanationText
- db "@"
-
-TM38NoRoomText: ; 75934 (1d:5934)
- TX_FAR _TM38NoRoomText
- db "@"
-
-CinnabarGymText2: ; 75939 (1d:5939)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79a]
- bit 2, a
- jr nz, .asm_46bb4 ; 0x75942
- ld hl, UnnamedText_7595f
- call PrintText
- ld hl, UnnamedText_75964
- ld de, UnnamedText_75964 ; $5964 XXX
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_46bb4 ; 0x75956
- ld hl, UnnamedText_75969
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_7595f: ; 7595f (1d:595f)
- TX_FAR _UnnamedText_7595f
- db "@"
-
-UnnamedText_75964: ; 75964 (1d:5964)
- TX_FAR _UnnamedText_75964
- db "@"
-
-UnnamedText_75969: ; 75969 (1d:5969)
- TX_FAR _UnnamedText_75969
- db "@"
-
-CinnabarGymText3: ; 7596e (1d:596e)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79a]
- bit 3, a
- jr nz, .asm_4b406 ; 0x75977
- ld hl, UnnamedText_75994
- call PrintText
- ld hl, UnnamedText_75999
- ld de, UnnamedText_75999 ; $5999 XXX
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_4b406 ; 0x7598b
- ld hl, UnnamedText_7599e
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_75994: ; 75994 (1d:5994)
- TX_FAR _UnnamedText_75994
- db "@"
-
-UnnamedText_75999: ; 75999 (1d:5999)
- TX_FAR _UnnamedText_75999
- db "@"
-
-UnnamedText_7599e: ; 7599e (1d:599e)
- TX_FAR _UnnamedText_7599e
- db "@"
-
-CinnabarGymText4: ; 759a3 (1d:59a3)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79a]
- bit 4, a
- jr nz, .asm_c0673 ; 0x759ac
- ld hl, UnnamedText_759c9
- call PrintText
- ld hl, UnnamedText_759ce
- ld de, UnnamedText_759ce ; $59ce XXX
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_c0673 ; 0x759c0
- ld hl, UnnamedText_759d3
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_759c9: ; 759c9 (1d:59c9)
- TX_FAR _UnnamedText_759c9
- db "@"
-
-UnnamedText_759ce: ; 759ce (1d:59ce)
- TX_FAR _UnnamedText_759ce
- db "@"
-
-UnnamedText_759d3: ; 759d3 (1d:59d3)
- TX_FAR _UnnamedText_759d3
- db "@"
-
-CinnabarGymText5: ; 759d8 (1d:59d8)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79a]
- bit 5, a
- jr nz, .asm_5cfd7 ; 0x759e1
- ld hl, UnnamedText_759fe
- call PrintText
- ld hl, UnnamedText_75a03
- ld de, UnnamedText_75a03 ; $5a03 XXX
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_5cfd7 ; 0x759f5
- ld hl, UnnamedText_75a08
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_759fe: ; 759fe (1d:59fe)
- TX_FAR _UnnamedText_759fe
- db "@"
-
-UnnamedText_75a03: ; 75a03 (1d:5a03)
- TX_FAR _UnnamedText_75a03
- db "@"
-
-UnnamedText_75a08: ; 75a08 (1d:5a08)
- TX_FAR _UnnamedText_75a08
- db "@"
-
-CinnabarGymText6: ; 75a0d (1d:5a0d)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79a]
- bit 6, a
- jr nz, .asm_776b4 ; 0x75a16
- ld hl, UnnamedText_75a33
- call PrintText
- ld hl, UnnamedText_75a38
- ld de, UnnamedText_75a38
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_776b4 ; 0x75a2a
- ld hl, UnnamedText_75a3d
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_75a33: ; 75a33 (1d:5a33)
- TX_FAR _UnnamedText_75a33
- db "@"
-
-UnnamedText_75a38: ; 75a38 (1d:5a38)
- TX_FAR _UnnamedText_75a38
- db "@"
-
-UnnamedText_75a3d: ; 75a3d (1d:5a3d)
- TX_FAR _UnnamedText_75a3d
- db "@"
-
-CinnabarGymText7: ; 75a42 (1d:5a42)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79a]
- bit 7, a
- jr nz, .asm_2f755 ; 0x75a4b
- ld hl, UnnamedText_75a68
- call PrintText
- ld hl, UnnamedText_75a6d
- ld de, UnnamedText_75a6d
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_2f755 ; 0x75a5f
- ld hl, UnnamedText_75a72
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_75a68: ; 75a68 (1d:5a68)
- TX_FAR _UnnamedText_75a68
- db "@"
-
-UnnamedText_75a6d: ; 75a6d (1d:5a6d)
- TX_FAR _UnnamedText_75a6d
- db "@"
-
-UnnamedText_75a72: ; 75a72 (1d:5a72)
- TX_FAR _UnnamedText_75a72
- db "@"
-
-CinnabarGymText8: ; 75a77 (1d:5a77)
- db $08 ; asm
- call CinnabarGymScript_757a0
- ld a, [$d79b]
- bit 0, a
- jr nz, .asm_d87be ; 0x75a80
- ld hl, UnnamedText_75a9d
- call PrintText
- ld hl, UnnamedText_75aa2
- ld de, UnnamedText_75aa2 ; $5aa2 XXX
- call PreBattleSaveRegisters
- jp Func_758b7
-.asm_d87be ; 0x75a94
- ld hl, UnnamedText_75aa7
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_75a9d: ; 75a9d (1d:5a9d)
- TX_FAR _UnnamedText_75a9d
- db "@"
-
-UnnamedText_75aa2: ; 75aa2 (1d:5aa2)
- TX_FAR _UnnamedText_75aa2
- db "@"
-
-UnnamedText_75aa7: ; 75aa7 (1d:5aa7)
- TX_FAR _UnnamedText_75aa7
- db "@"
-
-CinnabarGymText9: ; 75aac (1d:5aac)
- db $08 ; asm
- ld a, [$d79a]
- bit 1, a
- jr nz, .asm_627d9 ; 0x75ab2
- ld hl, UnnamedText_75ac2
- jr .asm_0b11d ; 0x75ab7
-.asm_627d9 ; 0x75ab9
- ld hl, UnnamedText_75ac7
-.asm_0b11d ; 0x75abc
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_75ac2: ; 75ac2 (1d:5ac2)
- TX_FAR _UnnamedText_75ac2
- db "@"
-
-UnnamedText_75ac7: ; 75ac7 (1d:5ac7)
- TX_FAR _UnnamedText_75ac7
- db "@"
-
-CinnabarGymObject: ; 0x75acc (size=90)
- db $2e ; border tile
-
- db $2 ; warps
- db $11, $10, $1, $ff
- db $11, $11, $1, $ff
-
- db $0 ; signs
-
- db $9 ; people
- db SPRITE_FAT_BALD_GUY, $3 + 4, $3 + 4, $ff, $d0, $41, BLAINE + $C8, $1 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $11 + 4, $ff, $d0, $42, SUPER_NERD + $C8, $9 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $11 + 4, $ff, $d0, $43, BURGLAR + $C8, $4 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $b + 4, $ff, $d0, $44, SUPER_NERD + $C8, $a ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $b + 4, $ff, $d0, $45, BURGLAR + $C8, $5 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $b + 4, $ff, $d0, $46, SUPER_NERD + $C8, $b ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $3 + 4, $ff, $d0, $47, BURGLAR + $C8, $6 ; trainer
- db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d0, $48, SUPER_NERD + $C8, $c ; trainer
- db SPRITE_GYM_HELPER, $d + 4, $10 + 4, $ff, $d0, $9 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_GYM_WIDTH, $11, $10
- EVENT_DISP CINNABAR_GYM_WIDTH, $11, $11
+INCLUDE "data/mapObjects/cinnabargym.asm"
CinnabarGymBlocks: ; 75b26 (1d:5b26)
INCBIN "maps/cinnabargym.blk"
-Lab1_h: ; 0x75b80 to 0x75b8c (12 bytes) (id=167)
- db LAB ; tileset
- db CINNABAR_LAB_1_HEIGHT, CINNABAR_LAB_1_WIDTH ; dimensions (y, x)
- dw Lab1Blocks, Lab1TextPointers, Lab1Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab1Object ; objects
+INCLUDE "data/mapHeaders/lab1.asm"
-Lab1Script: ; 75b8c (1d:5b8c)
- call EnableAutoTextBoxDrawing
- ret
+INCLUDE "scripts/lab1.asm"
-Lab1TextPointers: ; 75b90 (1d:5b90)
- dw Lab1Text1
- dw Lab1Text2
- dw Lab1Text3
- dw Lab1Text4
- dw Lab1Text5
-
-Lab1Text1: ; 75b9a (1d:5b9a)
- TX_FAR _Lab1Text1
- db "@"
-
-Lab1Text2: ; 75b9f (1d:5b9f)
- TX_FAR _Lab1Text2
- db "@"
-
-Lab1Text3: ; 75ba4 (1d:5ba4)
- TX_FAR _Lab1Text3
- db "@"
-
-Lab1Text4: ; 75ba9 (1d:5ba9)
- TX_FAR _Lab1Text4
- db "@"
-
-Lab1Text5: ; 75bae (1d:5bae)
- TX_FAR _Lab1Text5
- db "@"
-
-Lab1Object: ; 0x75bb3 (size=62)
- db $17 ; border tile
-
- db $5 ; warps
- db $7, $2, $2, $ff
- db $7, $3, $2, $ff
- db $4, $8, $0, CINNABAR_LAB_2
- db $4, $c, $0, CINNABAR_LAB_3
- db $4, $10, $0, CINNABAR_LAB_4
-
- db $4 ; signs
- db $2, $3, $2 ; Lab1Text2
- db $4, $9, $3 ; Lab1Text3
- db $4, $d, $4 ; Lab1Text4
- db $4, $11, $5 ; Lab1Text5
-
- db $1 ; people
- db SPRITE_FISHER, $3 + 4, $1 + 4, $ff, $ff, $1 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $2
- EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $3
- EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $8 ; CINNABAR_LAB_2
- EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $c ; CINNABAR_LAB_3
- EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $10 ; CINNABAR_LAB_4
+INCLUDE "data/mapObjects/lab1.asm"
Lab1Blocks: ; 75bf1 (1d:5bf1)
INCBIN "maps/lab1.blk"
-Lab2_h: ; 0x75c15 to 0x75c21 (12 bytes) (id=168)
- db LAB ; tileset
- db CINNABAR_LAB_2_HEIGHT, CINNABAR_LAB_2_WIDTH ; dimensions (y, x)
- dw Lab2Blocks, Lab2TextPointers, Lab2Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab2Object ; objects
-
-Lab2Script: ; 75c21 (1d:5c21)
- jp EnableAutoTextBoxDrawing
-
-Lab2TextPointers: ; 75c24 (1d:5c24)
- dw Lab2Text1
- dw Lab2Text2
- dw Lab2Text3
-
-Lab2Text1: ; 75c2a (1d:5c2a)
- TX_FAR _Lab2Text1
- db "@"
-
-Lab2Text2: ; 75c2f (1d:5c2f)
- db $8
- ld a, $7
- ld [wWhichTrade], a
- jr asm_78552 ; 0x75c35 $6
-
-Lab2Text3: ; 75c37 (1d:5c37)
- db $8
- ld a, $8
- ld [wWhichTrade], a
-asm_78552: ; 75c3d (1d:5c3d)
- ld a, $54
- call Predef
- jp TextScriptEnd
-
-Lab2Object: ; 0x75c45 (size=38)
- db $17 ; border tile
-
- db $2 ; warps
- db $7, $2, $2, CINNABAR_LAB_1
- db $7, $3, $2, CINNABAR_LAB_1
+INCLUDE "data/mapHeaders/lab2.asm"
- db $0 ; signs
+INCLUDE "scripts/lab2.asm"
- db $3 ; people
- db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_OLD_PERSON, $4 + 4, $1 + 4, $ff, $ff, $2 ; person
- db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $d1, $3 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $2 ; CINNABAR_LAB_1
- EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $3 ; CINNABAR_LAB_1
+INCLUDE "data/mapObjects/lab2.asm"
Lab2Blocks: ; 75c6b (1d:5c6b)
INCBIN "maps/lab2.blk"
-Lab3_h: ; 0x75c7b to 0x75c87 (12 bytes) (id=169)
- db LAB ; tileset
- db CINNABAR_LAB_3_HEIGHT, CINNABAR_LAB_3_WIDTH ; dimensions (y, x)
- dw Lab3Blocks, Lab3TextPointers, Lab3Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab3Object ; objects
-
-Lab3Script: ; 75c87 (1d:5c87)
- jp EnableAutoTextBoxDrawing
-
-Lab3TextPointers: ; 75c8a (1d:5c8a)
- dw Lab3Text1
- dw Lab3Text2
- dw Lab3Text3
- dw Lab3Text4
- dw Lab3Text5
-
-Lab3Text1: ; 75c94 (1d:5c94)
- db $08 ; asm
- ld a, [$d7a1]
- bit 7, a
- jr nz, .asm_e551a ; 0x75c9a
- ld hl, TM35PreReceiveText
- call PrintText
- ld bc, (TM_35 << 8) | 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM35Text
- call PrintText
- ld hl, $d7a1
- set 7, [hl]
- jr .asm_eb896 ; 0x75cb5
-.BagFull
- ld hl, TM35NoRoomText
- call PrintText
- jr .asm_eb896 ; 0x75cbd
-.asm_e551a ; 0x75cbf
- ld hl, TM35ExplanationText
- call PrintText
-.asm_eb896 ; 0x75cc5
- jp TextScriptEnd
-
-TM35PreReceiveText: ; 75cc8 (1d:5cc8)
- TX_FAR _TM35PreReceiveText
- db "@"
-
-ReceivedTM35Text: ; 75ccd (1d:5ccd)
- TX_FAR _ReceivedTM35Text ; 0xa0f48
- db $0B, "@"
-
-TM35ExplanationText: ; 75cd3 (1d:5cd3)
- TX_FAR _TM35ExplanationText
- db "@"
+INCLUDE "data/mapHeaders/lab3.asm"
-TM35NoRoomText: ; 75cd8 (1d:5cd8)
- TX_FAR _TM35NoRoomText
- db "@"
+INCLUDE "scripts/lab3.asm"
-Lab3Text2: ; 75cdd (1d:5cdd)
- TX_FAR _Lab3Text2
- db "@"
-
-Lab3Text4: ; 75ce2 (1d:5ce2)
-Lab3Text3: ; 75ce2 (1d:5ce2)
- TX_FAR _Lab3Text3
- db "@"
-
-Lab3Text5: ; 75ce7 (1d:5ce7)
- TX_FAR _Lab3Text5
- db "@"
-
-Lab3Object: ; 0x75cec (size=41)
- db $17 ; border tile
-
- db $2 ; warps
- db $7, $2, $3, CINNABAR_LAB_1
- db $7, $3, $3, CINNABAR_LAB_1
-
- db $3 ; signs
- db $4, $0, $3 ; Lab3Text3
- db $4, $1, $4 ; Lab3Text4
- db $1, $2, $5 ; Lab3Text5
-
- db $2 ; people
- db SPRITE_OAK_AIDE, $2 + 4, $7 + 4, $ff, $d0, $1 ; person
- db SPRITE_OAK_AIDE, $3 + 4, $2 + 4, $fe, $2, $2 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $2 ; CINNABAR_LAB_1
- EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $3 ; CINNABAR_LAB_1
+INCLUDE "data/mapObjects/lab3.asm"
Lab3Blocks: ; 75d15 (1d:5d15)
INCBIN "maps/lab3.blk"
-Lab4_h: ; 0x75d25 to 0x75d31 (12 bytes) (id=170)
- db LAB ; tileset
- db CINNABAR_LAB_4_HEIGHT, CINNABAR_LAB_4_WIDTH ; dimensions (y, x)
- dw Lab4Blocks, Lab4TextPointers, Lab4Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab4Object ; objects
-
-Lab4Script: ; 75d31 (1d:5d31)
- jp EnableAutoTextBoxDrawing
-
-Lab4TextPointers: ; 75d34 (1d:5d34)
- dw Lab4Text1
- dw Lab4Text2
-
-Func_75d38: ; 75d38 (1d:5d38)
- xor a
- ld [$cd37], a
- ld de, $cc5b
- ld hl, FossilsList
-.asm_75d42
- ld a, [hli]
- and a
- jr z, .asm_75d64
- push hl
- push de
- ld [$d11e], a
- ld b, a
- ld a, $1c
- call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5))
- pop de
- pop hl
- ld a, b
- and a
- jr z, .asm_75d42
- ld a, [$d11e]
- ld [de], a
- inc de
- push hl
- ld hl, $cd37
- inc [hl]
- pop hl
- jr .asm_75d42
-.asm_75d64
- ld a, $ff
- ld [de], a
- ret
-
-FossilsList: ; 75d68 (1d:5d68)
- db DOME_FOSSIL
- db HELIX_FOSSIL
- db OLD_AMBER
- db $00
-
-Lab4Text1: ; 75d6c (1d:5d6c)
- db $8
- ld a, [$d7a3]
- bit 0, a
- jr nz, .asm_75d96 ; 0x75d72 $22
- ld hl, UnnamedText_75dc6
- call PrintText
- call Func_75d38
- ld a, [$cd37]
- and a
- jr z, .asm_75d8d ; 0x75d81 $a
- callba GiveFossilToCinnabarLab
- jr .asm_75d93 ; 0x75d8b $6
-.asm_75d8d
- ld hl, UnnamedText_75dcb
- call PrintText
-.asm_75d93
- jp TextScriptEnd
-.asm_75d96
- bit 1, a
- jr z, .asm_75da2 ; 0x75d98 $8
- ld hl, UnnamedText_75dd0
- call PrintText
- jr .asm_75d93 ; 0x75da0 $f1
-.asm_75da2
- call LoadFossilItemAndMonNameBank1D
- ld hl, UnnamedText_75dd5
- call PrintText
- ld hl, $d7a3
- set 2, [hl]
- ld a, [W_FOSSILMON]
- ld b, a
- ld c, $1e
- call GivePokemon
- jr nc, .asm_75d93 ; 0x75db9 $d8
- ld hl, $d7a3
- res 0, [hl]
- res 1, [hl]
- res 2, [hl]
- jr .asm_75d93 ; 0x75dc4 $cd
-
-UnnamedText_75dc6: ; 75dc6 (1d:5dc6)
- TX_FAR _UnnamedText_75dc6
- db "@"
-
-UnnamedText_75dcb: ; 75dcb (1d:5dcb)
- TX_FAR _UnnamedText_75dcb
- db "@"
-
-UnnamedText_75dd0: ; 75dd0 (1d:5dd0)
- TX_FAR _UnnamedText_75dd0
- db "@"
-
-UnnamedText_75dd5: ; 75dd5 (1d:5dd5)
- TX_FAR _UnnamedText_75dd5
- db "@"
-
-Lab4Text2: ; 75dda (1d:5dda)
- db $08 ; asm
- ld a, $3
- ld [wWhichTrade], a
- ld a, $54
- call Predef
- jp TextScriptEnd
-
-LoadFossilItemAndMonNameBank1D: ; 75de8 (1d:5de8)
- ld b, BANK(LoadFossilItemAndMonName)
- ld hl, LoadFossilItemAndMonName
- jp Bankswitch
-
-Lab4Object: ; 0x75df0 (size=32)
- db $17 ; border tile
-
- db $2 ; warps
- db $7, $2, $4, CINNABAR_LAB_1
- db $7, $3, $4, CINNABAR_LAB_1
+INCLUDE "data/mapHeaders/lab4.asm"
- db $0 ; signs
+INCLUDE "scripts/lab4.asm"
- db $2 ; people
- db SPRITE_OAK_AIDE, $2 + 4, $5 + 4, $fe, $2, $1 ; person
- db SPRITE_OAK_AIDE, $6 + 4, $7 + 4, $ff, $d1, $2 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $2 ; CINNABAR_LAB_1
- EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $3 ; CINNABAR_LAB_1
+INCLUDE "data/mapObjects/lab4.asm"
Lab4Blocks: ; 75e10 (1d:5e10)
INCBIN "maps/lab4.blk"
-CinnabarPokecenter_h: ; 0x75e20 to 0x75e2c (12 bytes) (id=171)
- db POKECENTER ; tileset
- db CINNABAR_POKECENTER_HEIGHT, CINNABAR_POKECENTER_WIDTH ; dimensions (y, x)
- dw CinnabarPokecenterBlocks, CinnabarPokecenterTextPointers, CinnabarPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw CinnabarPokecenterObject ; objects
-
-CinnabarPokecenterScript: ; 75e2c (1d:5e2c)
- call Func_22fa
- jp EnableAutoTextBoxDrawing
-
-CinnabarPokecenterTextPointers: ; 75e32 (1d:5e32)
- dw CinnabarPokecenterText1
- dw CinnabarPokecenterText2
- dw CinnabarPokecenterText3
- dw CinnabarPokecenterText4
-
-CinnabarPokecenterText1: ; 75e3a (1d:5e3a)
- db $ff
-
-CinnabarPokecenterText2: ; 75e3b (1d:5e3b)
- TX_FAR _CinnabarPokecenterText1
- db "@"
-
-CinnabarPokecenterText3: ; 75e40 (1d:5e40)
- TX_FAR _CinnabarPokecenterText3
- db "@"
-
-CinnabarPokecenterText4: ; 75e45 (1d:5e45)
- db $f6
-
-CinnabarPokecenterObject: ; 0x75e46 (size=44)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $3, $ff
- db $7, $4, $3, $ff
+INCLUDE "data/mapHeaders/cinnabarpokecenter.asm"
- db $0 ; signs
+INCLUDE "scripts/cinnabarpokecenter.asm"
- db $4 ; people
- db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person
- db SPRITE_LASS, $4 + 4, $9 + 4, $fe, $0, $2 ; person
- db SPRITE_GENTLEMAN, $6 + 4, $2 + 4, $ff, $ff, $3 ; person
- db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person
+INCLUDE "data/mapObjects/cinnabarpokecenter.asm"
- ; warp-to
- EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $3
- EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $4
+INCLUDE "data/mapHeaders/cinnabarmart.asm"
-CinnabarMart_h: ; 0x75e72 to 0x75e7e (12 bytes) (id=172)
- db MART ; tileset
- db CINNABAR_MART_HEIGHT, CINNABAR_MART_WIDTH ; dimensions (y, x)
- dw CinnabarMartBlocks, CinnabarMartTextPointers, CinnabarMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw CinnabarMartObject ; objects
+INCLUDE "scripts/cinnabarmart.asm"
-CinnabarMartScript: ; 75e7e (1d:5e7e)
- jp EnableAutoTextBoxDrawing
+INCLUDE "data/mapObjects/cinnabarmart.asm"
-CinnabarMartTextPointers: ; 75e81 (1d:5e81)
- dw CinnabarMartText1
- dw CinnabarMartText2
- dw CinnabarMartText3
-
-CinnabarMartText2: ; 75e87 (1d:5e87)
- TX_FAR _CinnabarMartText2
- db "@"
-
-CinnabarMartText3: ; 75e8c (1d:5e8c)
- TX_FAR _CinnabarMartText3
- db "@"
+INCLUDE "data/mapHeaders/copycatshouse1f.asm"
-CinnabarMartObject: ; 0x75e91 (size=38)
- db $0 ; border tile
-
- db $2 ; warps
- db $7, $3, $4, $ff
- db $7, $4, $4, $ff
-
- db $0 ; signs
-
- db $3 ; people
- db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person
- db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $ff, $2 ; person
- db SPRITE_OAK_AIDE, $4 + 4, $3 + 4, $ff, $ff, $3 ; person
-
- ; warp-to
- EVENT_DISP CINNABAR_MART_WIDTH, $7, $3
- EVENT_DISP CINNABAR_MART_WIDTH, $7, $4
-
-CopycatsHouse1F_h: ; 0x75eb7 to 0x75ec3 (12 bytes) (id=175)
- db REDS_HOUSE_1 ; tileset
- db COPYCATS_HOUSE_1F_HEIGHT, COPYCATS_HOUSE_1F_WIDTH ; dimensions (y, x)
- dw CopycatsHouse1FBlocks, CopycatsHouse1FTextPointers, CopycatsHouse1FScript ; blocks, texts, scripts
- db $00 ; connections
- dw CopycatsHouse1FObject ; objects
-
-CopycatsHouse1FScript: ; 75ec3 (1d:5ec3)
- jp EnableAutoTextBoxDrawing
-
-CopycatsHouse1FTextPointers: ; 75ec6 (1d:5ec6)
- dw CopycatsHouse1FText1
- dw CopycatsHouse1FText2
- dw CopycatsHouse1FText3
-
-CopycatsHouse1FText1: ; 75ecc (1d:5ecc)
- TX_FAR _CopycatsHouse1FText1
- db "@"
-
-CopycatsHouse1FText2: ; 75ed1 (1d:5ed1)
- TX_FAR _CopycatsHouse1FText2
- db "@"
-
-CopycatsHouse1FText3: ; 75ed6 (1d:5ed6)
- TX_FAR _CopycatsHouse1FText3
- db $8
- ld a, CHANSEY
- call PlayCry
- jp TextScriptEnd
+INCLUDE "scripts/copycatshouse1f.asm"
-CopycatsHouse1FObject: ; 0x75ee3 (size=46)
- db $a ; border tile
+INCLUDE "data/mapObjects/copycatshouse1f.asm"
- db $3 ; warps
- db $7, $2, $0, $ff
- db $7, $3, $0, $ff
- db $1, $7, $0, COPYCATS_HOUSE_2F
+INCLUDE "data/mapHeaders/gary.asm"
- db $0 ; signs
+INCLUDE "scripts/gary.asm"
- db $3 ; people
- db SPRITE_MOM_GEISHA, $2 + 4, $2 + 4, $ff, $d0, $1 ; person
- db SPRITE_FAT_BALD_GUY, $4 + 4, $5 + 4, $ff, $d2, $2 ; person
- db SPRITE_CLEFAIRY, $4 + 4, $1 + 4, $fe, $1, $3 ; person
-
- ; warp-to
- EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $2
- EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $3
- EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $1, $7 ; COPYCATS_HOUSE_2F
-
-Gary_h: ; 75f11 (1d:5f11)
- db GYM ;tileset
- db CHAMPIONS_ROOM_HEIGHT, CHAMPIONS_ROOM_WIDTH ; Height, Width
- dw GaryBlocks, GaryTextPointers, GaryScript
- db $0 ;No Connections
- dw GaryObject
-
-GaryScript: ; 75f1d (1d:5f1d)
- call EnableAutoTextBoxDrawing
- ld hl, GaryScriptPointers
- ld a, [W_GARYCURSCRIPT]
- jp CallFunctionInTable
-
-GaryScript_75f29: ; 75f29 (1d:5f29)
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScriptPointers: ; 75f31 (1d:5f31)
- dw GaryScript0
- dw GaryScript1
- dw GaryScript2
- dw GaryScript3
- dw GaryScript4
- dw GaryScript5
- dw GaryScript6
- dw GaryScript7
- dw GaryScript8
- dw GaryScript9
- dw GaryScript10
-
-GaryScript0: ; 75f47 (1d:5f47)
- ret
-
-GaryScript1: ; 75f48 (1d:5f48)
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $ccd3
- ld de, RLEMovement75f63
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $2
- ld [W_GARYCURSCRIPT], a
- ret
-
-RLEMovement75f63: ; 75f63 (1d:5f63)
- db $40,1
- db $10,1
- db $40,3
- db $ff
-
-GaryScript2: ; 75f6a (1d:5f6a)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $d355
- res 7, [hl]
- ld a, $1
- ld [$ff8c], a
- call DisplayTextID
- call Delay3
- ld hl, $d72d
- set 6, [hl]
- set 7, [hl]
- ld hl, UnnamedText_760f9
- ld de, UnnamedText_760fe
- call PreBattleSaveRegisters
- ld a, $f3
- ld [$d059], a
-
- ; select which team to use during the encounter
- ld a, [W_RIVALSTARTER]
- cp SQUIRTLE
- jr nz, .NotSquirtle ; 0x75f9f $4
- ld a, $1
- jr .done
-.NotSquirtle
- cp BULBASAUR
- jr nz, .Charmander ; 0x75fa7 $4
- ld a, $2
- jr .done
-.Charmander
- ld a, $3
-.done
- ld [W_TRAINERNO], a
-
- xor a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld a, $3
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScript3: ; 75fbb (1d:5fbb)
- ld a, [W_ISINBATTLE]
- cp $ff
- jp z, GaryScript_75f29
- call UpdateSprites ; move sprites
- ld hl, $d867
- set 1, [hl]
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $1
- ld [$ff8c], a
- call GaryScript_760c8
- ld a, $1
- ld [$ff8c], a
- call SetSpriteMovementBytesToFF
- ld a, $4
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScript4: ; 75fe4 (1d:5fe4)
- callba Music_Cities1AlternateTempo
- ld a, $2
- ld [$ff8c], a
- call GaryScript_760c8
- ld a, $2
- ld [$ff8c], a
- call SetSpriteMovementBytesToFF
- ld de, MovementData_76014
- ld a, $2
- ld [$ff8c], a
- call MoveSprite
- ld a, $d6
- ld [$cc4d], a
- ld a, $15
- call Predef
- ld a, $5
- ld [W_GARYCURSCRIPT], a
- ret
-
-MovementData_76014: ; 76014 (1d:6014)
- db $40,$40,$40,$40,$40,$FF
-
-GaryScript5: ; 7601a (1d:601a)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $2
- ld [$d528], a
- ld a, $1
- ld [$ff8c], a
- ld a, $8
- ld [$ff8d], a
- call Func_34a6
- ld a, $2
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $3
- ld [$ff8c], a
- call GaryScript_760c8
- ld a, $6
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScript6: ; 76047 (1d:6047)
- ld a, $2
- ld [$ff8c], a
- ld a, $c
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $4
- ld [$ff8c], a
- call GaryScript_760c8
- ld a, $7
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScript7: ; 7605f (1d:605f)
- ld a, $2
- ld [$ff8c], a
- xor a
- ld [$ff8d], a
- call Func_34a6 ; face object
- ld a, $5
- ld [$ff8c], a
- call GaryScript_760c8
- ld de, MovementData_76080
- ld a, $2
- ld [$ff8c], a
- call MoveSprite
- ld a, $8
- ld [W_GARYCURSCRIPT], a
- ret
-
-MovementData_76080: ; 76080 (1d:6080)
- db $40,$40,$FF
-
-GaryScript8: ; 76083 (1d:6083)
- ld a, [$d730]
- bit 0, a
- ret nz
- ld a, $d6
- ld [$cc4d], a
- ld a, $11
- call Predef
- ld a, $9
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScript9: ; 76099 (1d:6099)
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ld hl, $ccd3
- ld de, RLEMovement760b4
- call DecodeRLEList
- dec a
- ld [$cd38], a
- call Func_3486
- ld a, $a
- ld [W_GARYCURSCRIPT], a
- ret
-
-RLEMovement760b4 ; 760b4 (1d:60b4)
- db $40,4
- db $20,1
- db $ff
-
-GaryScript10: ; 760b9 (1d:60b9)
- ld a, [$cd38]
- and a
- ret nz
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld a, $0
- ld [W_GARYCURSCRIPT], a
- ret
-
-GaryScript_760c8 ; 760c8 (1d:60c8)
- ld a, $f0
- ld [wJoypadForbiddenButtonsMask], a
- call DisplayTextID
- ld a, $ff
- ld [wJoypadForbiddenButtonsMask], a
- ret
-
-GaryTextPointers: ; 760d6 (1d:60d6)
- dw GaryText1
- dw GaryText2
- dw GaryText3
- dw GaryText4
- dw GaryText5
-
-GaryText1: ; 760e0 (1d:60e0)
- db $08 ; asm
- ld a, [$d867]
- bit 1, a
- ld hl, UnnamedText_760f4
- jr z, .asm_17e9f ; 0x760e9
- ld hl, UnnamedText_76103
-.asm_17e9f ; 0x760ee
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_760f4: ; 760f4 (1d:60f4)
- TX_FAR _UnnamedText_760f4
- db "@"
-
-UnnamedText_760f9: ; 760f9 (1d:60f9)
- TX_FAR _UnnamedText_760f9
- db "@"
-
-UnnamedText_760fe: ; 760fe (1d:60fe)
- TX_FAR _UnnamedText_760fe
- db "@"
-
-UnnamedText_76103: ; 76103 (1d:6103)
- TX_FAR _UnnamedText_76103
- db "@"
-
-GaryText2: ; 76108 (1d:6108)
- TX_FAR _GaryText2
- db "@"
-
-GaryText3: ; 7610d (1d:610d)
- db $8
- ld a, [$d717]
- ld [$d11e], a
- call GetMonName
- ld hl, UnnamedText_76120
- call PrintText
- jp TextScriptEnd
-
-UnnamedText_76120: ; 76120 (1d:6120)
- TX_FAR _UnnamedText_76120
- db "@"
-
-GaryText4: ; 76125 (1d:6125)
- TX_FAR _UnnamedText_76125
- db "@"
-
-GaryText5: ; 7612a (1d:612a)
- TX_FAR _UnnamedText_7612a
- db "@"
-
-GaryObject: ; 0x7612f (size=48)
- db $3 ; border tile
-
- db $4 ; warps
- db $7, $3, $1, LANCES_ROOM
- db $7, $4, $2, LANCES_ROOM
- db $0, $3, $0, HALL_OF_FAME
- db $0, $4, $0, HALL_OF_FAME
-
- db $0 ; signs
-
- db $2 ; people
- db SPRITE_BLUE, $2 + 4, $4 + 4, $ff, $d0, $1 ; person
- db SPRITE_OAK, $7 + 4, $3 + 4, $ff, $d1, $2 ; person
-
- ; warp-to
- EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $3 ; LANCES_ROOM
- EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $4 ; LANCES_ROOM
- EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $3 ; HALL_OF_FAME
- EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $4 ; HALL_OF_FAME
+INCLUDE "data/mapObjects/gary.asm"
GaryBlocks: ; 7615f (1d:615f)
INCBIN "maps/gary.blk"
-Lorelei_h: ; 0x7616f to 0x7617b (12 bytes) (id=245)
- db GYM ; tileset
- db LORELEIS_ROOM_HEIGHT, LORELEIS_ROOM_WIDTH ; dimensions (y, x)
- dw LoreleiBlocks, LoreleiTextPointers, LoreleiScript ; blocks, texts, scripts
- db $00 ; connections
- dw LoreleiObject ; objects
+INCLUDE "data/mapHeaders/lorelei.asm"
-LoreleiScript: ; 7617b (1d:617b)
- call LoreleiScript_76191
- call EnableAutoTextBoxDrawing
- ld hl, LoreleiTrainerHeaders
- ld de, LoreleiScriptPointers
- ld a, [W_LORELEICURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_LORELEICURSCRIPT], a
- ret
+INCLUDE "scripts/lorelei.asm"
-LoreleiScript_76191: ; 76191 (1d:6191)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, $d734
- set 1, [hl]
- ld a, [$d863]
- bit 1, a
- jr z, .asm_761a9
- ld a, $5
- jr .asm_761ab
-.asm_761a9
- ld a, $24
-.asm_761ab
- ld [$d09f], a
- ld bc, $2
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-Func_761b6: ; 761b6 (1d:61b6)
- xor a
- ld [W_LORELEICURSCRIPT], a
- ret
-
-LoreleiScriptPointers: ; 761bb (1d:61bb)
- dw LoreleiScript0
- dw Func_324c
- dw LoreleiScript2
- dw LoreleiScript3
- dw LoreleiScript4
-
-LoreleiScript4: ; 761c5 (1d:61c5)
- ret
-asm_761c6: ; 761c6 (1d:61c6)
- ld hl, $ccd3
- ld a, $40
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $6
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_LORELEICURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-LoreleiScript0: ; 761e2 (1d:61e2)
- ld hl, CoordsData_76223
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_NEWLYPRESSEDBUTTONS], a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [$ccd3], a
- ld [$cd38], a
- ld a, [wWhichTrade] ; $cd3d
- cp $3
- jr c, .asm_76206
- ld hl, $d863
- bit 6, [hl]
- set 6, [hl]
- jr z, asm_761c6
-.asm_76206
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $40
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_LORELEICURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CoordsData_76223: ; 76223 (1d:6223)
- db $0A,$04
- db $0A,$05
- db $0B,$04
- db $0B,$05
- db $FF
-
-LoreleiScript3: ; 7622c (1d:622c)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_LORELEICURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-LoreleiScript2: ; 7623f (1d:623f)
- call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_761b6
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-
-LoreleiTextPointers: ; 76251 (1d:6251)
- dw LoreleiText1
- dw LoreleiText2
-
-LoreleiTrainerHeaders: ; 76255 (1d:6255)
-LoreleiTrainerHeader0: ; 76255 (1d:6255)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d863 ; flag's byte
- dw LoreleiBeforeBattleText ; 0x626c TextBeforeBattle
- dw LoreleiAfterBattleText ; 0x6276 TextAfterBattle
- dw LoreleiEndBattleText ; 0x6271 TextEndBattle
- dw LoreleiEndBattleText ; 0x6271 TextEndBattle
-
- db $ff
-
-LoreleiText1: ; 76262 (1d:6262)
- db $08 ; asm
- ld hl, LoreleiTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-LoreleiBeforeBattleText: ; 7626c (1d:626c)
- TX_FAR _LoreleiBeforeBattleText
- db "@"
-
-LoreleiEndBattleText: ; 76271 (1d:6271)
- TX_FAR _LoreleiEndBattleText
- db "@"
-
-LoreleiAfterBattleText: ; 76276 (1d:6276)
- TX_FAR _LoreleiAfterBattleText
- db "@"
-
-LoreleiText2: ; 7627b (1d:627b)
- TX_FAR _UnnamedText_7627b
- db "@"
-
-LoreleiObject: ; 0x76280 (size=44)
- db $3 ; border tile
-
- db $4 ; warps
- db $b, $4, $2, INDIGO_PLATEAU_LOBBY
- db $b, $5, $2, INDIGO_PLATEAU_LOBBY
- db $0, $4, $0, BRUNOS_ROOM
- db $0, $5, $1, BRUNOS_ROOM
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_LORELEI, $2 + 4, $5 + 4, $ff, $d0, $41, LORELEI + $C8, $1 ; trainer
-
- ; warp-to
- EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $4 ; INDIGO_PLATEAU_LOBBY
- EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $5 ; INDIGO_PLATEAU_LOBBY
- EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $4 ; BRUNOS_ROOM
- EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $5 ; BRUNOS_ROOM
+INCLUDE "data/mapObjects/lorelei.asm"
LoreleiBlocks: ; 762ac (1d:62ac)
INCBIN "maps/lorelei.blk"
-Bruno_h: ; 0x762ca to 0x762d6 (12 bytes) (id=246)
- db GYM ; tileset
- db BRUNOS_ROOM_HEIGHT, BRUNOS_ROOM_WIDTH ; dimensions (y, x)
- dw BrunoBlocks, BrunoTextPointers, BrunoScript ; blocks, texts, scripts
- db $00 ; connections
- dw BrunoObject ; objects
-
-BrunoScript: ; 762d6 (1d:62d6)
- call BrunoScript_762ec
- call EnableAutoTextBoxDrawing
- ld hl, BrunoTrainerHeaders
- ld de, BrunoScriptPointers
- ld a, [W_BRUNOCURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_BRUNOCURSCRIPT], a
- ret
-
-BrunoScript_762ec: ; 762ec (1d:62ec)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d864]
- bit 1, a
- jr z, .asm_76300
- ld a, $5
- jp Func_76302
-.asm_76300
- ld a, $24
-
-Func_76302: ; 76302 (1d:6302)
- ld [$d09f], a
- ld bc, $2
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-Func_7630d: ; 7630d (1d:630d)
- xor a
- ld [W_BRUNOCURSCRIPT], a
- ret
-
-BrunoScriptPointers: ; 76312 (1d:6312)
- dw BrunoScript0
- dw Func_324c
- dw BrunoScript2
- dw BrunoScript3
- dw BrunoScript4
-
-BrunoScript4: ; 7631c (1d:631c)
- ret
-asm_7631d: ; 7631d (1d:631d)
- ld hl, $ccd3
- ld a, $40
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $6
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_BRUNOCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-BrunoScript0: ; 76339 (1d:6339)
- ld hl, CoordsData_7637a
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_NEWLYPRESSEDBUTTONS], a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [$ccd3], a
- ld [$cd38], a
- ld a, [wWhichTrade] ; $cd3d
- cp $3
- jr c, .asm_7635d
- ld hl, $d864
- bit 6, [hl]
- set 6, [hl]
- jr z, asm_7631d
-.asm_7635d
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $40
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_BRUNOCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CoordsData_7637a: ; 7637a (1d:637a)
- db $0A,$04
- db $0A,$05
- db $0B,$04
- db $0B,$05
- db $FF
+INCLUDE "data/mapHeaders/bruno.asm"
-BrunoScript3: ; 76383 (1d:6383)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_BRUNOCURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
+INCLUDE "scripts/bruno.asm"
-BrunoScript2: ; 76396 (1d:6396)
- call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_7630d
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- jp DisplayTextID
-
-BrunoTextPointers: ; 763a8 (1d:63a8)
- dw BrunoText1
- dw BrunoText2
-
-BrunoTrainerHeaders: ; 763ac (1d:63ac)
-BrunoTrainerHeader0: ; 763ac (1d:63ac)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d864 ; flag's byte
- dw BrunoBeforeBattleText ; 0x63c3 TextBeforeBattle
- dw BrunoAfterBattleText ; 0x63cd TextAfterBattle
- dw BrunoEndBattleText ; 0x63c8 TextEndBattle
- dw BrunoEndBattleText ; 0x63c8 TextEndBattle
-
- db $ff
-
-BrunoText1: ; 763b9 (1d:63b9)
- db $08 ; asm
- ld hl, BrunoTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-BrunoBeforeBattleText: ; 763c3 (1d:63c3)
- TX_FAR _BrunoBeforeBattleText
- db "@"
-
-BrunoEndBattleText: ; 763c8 (1d:63c8)
- TX_FAR _BrunoEndBattleText
- db "@"
-
-BrunoAfterBattleText: ; 763cd (1d:63cd)
- TX_FAR _BrunoAfterBattleText
- db "@"
-
-BrunoText2: ; 763d2 (1d:63d2)
- TX_FAR _UnnamedText_763d2
- db "@"
-
-BrunoObject: ; 0x763d7 (size=44)
- db $3 ; border tile
-
- db $4 ; warps
- db $b, $4, $2, LORELEIS_ROOM
- db $b, $5, $3, LORELEIS_ROOM
- db $0, $4, $0, AGATHAS_ROOM
- db $0, $5, $1, AGATHAS_ROOM
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_BRUNO, $2 + 4, $5 + 4, $ff, $d0, $41, BRUNO + $C8, $1 ; trainer
-
- ; warp-to
- EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $4 ; LORELEIS_ROOM
- EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $5 ; LORELEIS_ROOM
- EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $4 ; AGATHAS_ROOM
- EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $5 ; AGATHAS_ROOM
+INCLUDE "data/mapObjects/bruno.asm"
BrunoBlocks: ; 76403 (1d:6403)
INCBIN "maps/bruno.blk"
-Agatha_h: ; 0x76421 to 0x7642d (12 bytes) (id=247)
- db CEMETERY ; tileset
- db AGATHAS_ROOM_HEIGHT, AGATHAS_ROOM_WIDTH ; dimensions (y, x)
- dw AgathaBlocks, AgathaTextPointers, AgathaScript ; blocks, texts, scripts
- db $00 ; connections
- dw AgathaObject ; objects
-
-AgathaScript: ; 7642d (1d:642d)
- call AgathaScript_76443
- call EnableAutoTextBoxDrawing
- ld hl, AgathaTrainerHeaders
- ld de, AgathaScriptPointers
- ld a, [W_AGATHACURSCRIPT]
- call ExecuteCurMapScriptInTable
- ld [W_AGATHACURSCRIPT], a
- ret
-
-AgathaScript_76443: ; 76443 (1d:6443)
- ld hl, $d126
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld a, [$d865]
- bit 1, a
- jr z, .asm_76457
- ld a, $e
- jp Func_76459
-.asm_76457
- ld a, $3b
-
-Func_76459: ; 76459 (1d:6459)
- ld [$d09f], a
- ld bc, $2
- ld a, $17
- jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
-
-Func_76464: ; 76464 (1d:6464)
- xor a
- ld [W_AGATHACURSCRIPT], a
- ret
-
-AgathaScriptPointers: ; 76469 (1d:6469)
- dw AgathaScript0
- dw Func_324c
- dw AgathaScript2
- dw AgathaScript3
- dw AgathaScript4
-
-AgathaScript4: ; 76473 (1d:6473)
- ret
-asm_76474: ; 76474 (1d:6474)
- ld hl, $ccd3
- ld a, $40
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $6
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_AGATHACURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-AgathaScript0: ; 76490 (1d:6490)
- ld hl, CoordsData_764d1
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [H_NEWLYPRESSEDBUTTONS], a
- ld [H_CURRENTPRESSEDBUTTONS], a
- ld [$ccd3], a
- ld [$cd38], a
- ld a, [wWhichTrade] ; $cd3d
- cp $3
- jr c, .asm_764b4
- ld hl, $d865
- bit 6, [hl]
- set 6, [hl]
- jr z, asm_76474
-.asm_764b4
- ld a, $2
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $40
- ld [$ccd3], a
- ld a, $1
- ld [$cd38], a
- call Func_3486
- ld a, $3
- ld [W_AGATHACURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-CoordsData_764d1: ; 764d1 (1d:64d1)
- db $0A,$04
- db $0A,$05
- db $0B,$04
- db $0B,$05
- db $FF
-
-AgathaScript3: ; 764da (1d:64da)
- ld a, [$cd38]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoypadForbiddenButtonsMask], a
- ld [W_AGATHACURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- ret
-
-AgathaScript2: ; 764ed (1d:64ed)
- call EndTrainerBattle
- ld a, [W_ISINBATTLE] ; $d057
- cp $ff
- jp z, Func_76464
- ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
- call DisplayTextID
- ld a, $1
- ld [W_GARYCURSCRIPT], a
- ret
-
-AgathaTextPointers: ; 76505 (1d:6505)
- dw AgathaText1
- dw AgathaText2
-
-AgathaTrainerHeaders: ; 76509 (1d:6509)
-AgathaTrainerHeader0: ; 76509 (1d:6509)
- db $1 ; flag's bit
- db ($0 << 4) ; trainer's view range
- dw $d865 ; flag's byte
- dw AgathaBeforeBattleText ; 0x6520 TextBeforeBattle
- dw AgathaAfterBattleText ; 0x652a TextAfterBattle
- dw AgathaEndBattleText ; 0x6525 TextEndBattle
- dw AgathaEndBattleText ; 0x6525 TextEndBattle
-
- db $ff
-
-AgathaText1: ; 76516 (1d:6516)
- db $08 ; asm
- ld hl, AgathaTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-AgathaBeforeBattleText: ; 76520 (1d:6520)
- TX_FAR _AgathaBeforeBattleText
- db "@"
-
-AgathaEndBattleText: ; 76525 (1d:6525)
- TX_FAR _AgathaEndBattleText
- db "@"
-
-AgathaAfterBattleText: ; 7652a (1d:652a)
- TX_FAR _AgathaAfterBattleText
- db "@"
-
-AgathaText2: ; 7652f (1d:652f)
- TX_FAR _AgathaText2
- db "@"
+INCLUDE "data/mapHeaders/agatha.asm"
-AgathaObject: ; 0x76534 (size=44)
- db $0 ; border tile
+INCLUDE "scripts/agatha.asm"
- db $4 ; warps
- db $b, $4, $2, BRUNOS_ROOM
- db $b, $5, $3, BRUNOS_ROOM
- db $0, $4, $0, LANCES_ROOM
- db $0, $5, $0, LANCES_ROOM
-
- db $0 ; signs
-
- db $1 ; people
- db SPRITE_AGATHA, $2 + 4, $5 + 4, $ff, $d0, $41, AGATHA + $C8, $1 ; trainer
-
- ; warp-to
- EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $4 ; BRUNOS_ROOM
- EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $5 ; BRUNOS_ROOM
- EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $4 ; LANCES_ROOM
- EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $5 ; LANCES_ROOM
+INCLUDE "data/mapObjects/agatha.asm"
AgathaBlocks: ; 76560 (1d:6560)
INCBIN "maps/agatha.blk"
Func_7657e: ; XXX: make better (has to do with the hall of fame on the PC) ; 0x7657e
- ld hl, UnnamedText_76683
+ ld hl, AccessedHoFPCText
call PrintText
ld hl, $D730
set 6, [hl]
@@ -108093,10 +54706,10 @@ Func_765e5: ; 765e5 (1d:65e5)
jr nz, .third
.fourth
and a
- ret
+ ret
.fifth
pop bc
- scf
+ scf
ret
Func_76610: ; 76610 (1d:6610)
@@ -108143,8 +54756,8 @@ Func_76610: ; 76610 (1d:6610)
HallOfFameNoText: ; 76670 (1d:6670)
db "HALL OF FAME No @"
-UnnamedText_76683: ; 76683 (1d:6683)
- TX_FAR _UnnamedText_76683
+AccessedHoFPCText: ; 76683 (1d:6683)
+ TX_FAR _AccessedHoFPCText
db "@"
HiddenItems: ; 76688 (1d:6688)
@@ -108169,67 +54782,11 @@ HiddenItems: ; 76688 (1d:6688)
ld a, $24
jp Func_3ef5
-HiddenItemCoords: ; 766b8 (1d:66b8)
-; map ID, then coords
- db VIRIDIAN_FOREST,$12,$01
- db VIRIDIAN_FOREST,$2a,$10
- db MT_MOON_3,$0c,$12
- db ROUTE_25,$03,$26
- db ROUTE_9,$07,$0e
- db SS_ANNE_6,$09,$0d
- db SS_ANNE_10,$01,$03
- db ROUTE_10,$11,$09
- db ROUTE_10,$35,$10
- db ROCKET_HIDEOUT_1,$0f,$15
- db ROCKET_HIDEOUT_3,$11,$1b
- db ROCKET_HIDEOUT_4,$01,$19
- db POKEMONTOWER_5,$0c,$04
- db ROUTE_13,$0e,$01
- db ROUTE_13,$0d,$10
- db MANSION_4,$09,$01
- db SAFARI_ZONE_ENTRANCE,$01,$0a
- db SAFARI_ZONE_WEST,$05,$06
- db SILPH_CO_5F,$03,$0c
- db SILPH_CO_9F,$0f,$02
- db COPYCATS_HOUSE_2F,$01,$01
- db UNKNOWN_DUNGEON_1,$0b,$0e
- db UNKNOWN_DUNGEON_3,$03,$1b
- db POWER_PLANT,$10,$11
- db POWER_PLANT,$01,$0c
- db SEAFOAM_ISLANDS_3,$0f,$0f
- db SEAFOAM_ISLANDS_5,$11,$19
- db MANSION_1,$10,$08
- db MANSION_3,$09,$01
- db ROUTE_23,$2c,$09
- db ROUTE_23,$46,$13
- db ROUTE_23,$5a,$08
- db VICTORY_ROAD_2,$02,$05
- db VICTORY_ROAD_2,$07,$1a
- db $6f,$0b,$0e
- db VIRIDIAN_CITY,$04,$0e
- db ROUTE_11,$05,$30
- db ROUTE_12,$3f,$02
- db ROUTE_17,$0e,$0f
- db ROUTE_17,$2d,$08
- db ROUTE_17,$48,$11
- db ROUTE_17,$5b,$04
- db ROUTE_17,$79,$08
- db UNDERGROUND_PATH_NS,$04,$03
- db UNDERGROUND_PATH_NS,$22,$04
- db UNDERGROUND_PATH_WE,$02,$0c
- db UNDERGROUND_PATH_WE,$05,$15
- db CELADON_CITY,$0f,$30
- db ROUTE_25,$01,$0a
- db MT_MOON_3,$09,$21
- db SEAFOAM_ISLANDS_4,$10,$09
- db VERMILION_CITY,$0b,$0e
- db CERULEAN_CITY,$08,$0f
- db ROUTE_4,$03,$28
- db $ff
+INCLUDE "data/hidden_item_coords.asm"
FoundHiddenItemText: ; 7675b (1d:675b)
; XXX where is the pointer to this?
- TX_FAR UnnamedText_894d0
+ TX_FAR _FoundHiddenItemText
db $8
ld a, [$cd3d] ; item ID
ld b, a
@@ -108255,7 +54812,7 @@ FoundHiddenItemText: ; 7675b (1d:675b)
jp TextScriptEnd
HiddenItemBagFullText: ; 76794 (1d:6794)
- TX_FAR _UnnamedText_76794
+ TX_FAR _HiddenItemBagFullText
db "@"
HiddenCoins: ; 76799 (1d:6799)
@@ -108331,20 +54888,7 @@ HiddenCoins: ; 76799 (1d:6799)
.done
jp Func_3ef5
-HiddenCoinCoords: ; 76822 (1d:6822)
- db GAME_CORNER,$08,$00
- db GAME_CORNER,$10,$01
- db GAME_CORNER,$0b,$03
- db GAME_CORNER,$0e,$03
- db GAME_CORNER,$0c,$04
- db GAME_CORNER,$0c,$09
- db GAME_CORNER,$0f,$09
- db GAME_CORNER,$0e,$10
- db GAME_CORNER,$10,$0a
- db GAME_CORNER,$07,$0b
- db GAME_CORNER,$08,$0f
- db GAME_CORNER,$0f,$0c
- db $ff
+INCLUDE "data/hidden_coins.asm"
FoundHiddenCoinsText: ; 76847 (1d:6847)
TX_FAR _FoundHiddenCoinsText
@@ -109478,7 +56022,7 @@ CallWithTurnFlipped: ; 79155 (1e:5155)
.returnAddress
pop af
ld [H_WHOSETURN],a
- ret
+ ret
; flashes the screen for an extended period (48 frames)
AnimationFlashScreenLong: ; 79165 (1e:5165)
@@ -109504,7 +56048,7 @@ AnimationFlashScreenLong: ; 79165 (1e:5165)
ld [$D08A],a
pop hl
jr nz,.loop
- ret
+ ret
; BG palettes
FlashScreenLongMonochrome: ; 7918e (1e:518e)
@@ -109602,7 +56146,7 @@ AnimationLightScreenPalette: ; 791f4 (1e:51f4)
Func_791f9: ; 791f9 (1e:51f9)
ld bc, $4040
-
+
Func_791fc: ; 791fc (1e:51fc)
ld a, [$cf1b]
and a
@@ -110058,7 +56602,7 @@ SpiralBallAnimationCoordinates: ; 79476 (1e:5476)
db $58, $28
db $50, $30
db $50, $28
- db $FF ; list terminator
+ db $FF ; list terminator
AnimationSquishMonPic: ; 794a1 (1e:54a1)
; Squishes the mon's sprite horizontally making it
@@ -110213,16 +56757,16 @@ AnimationShootManyBallsUpward: ; 79566 (1e:5566)
jr .loop
UpwardBallsAnimXCoordinatesPlayerTurn: ; 79591 (1e:5591)
-; List of x coordinates for each pillar of "energy" balls in the
+; List of x coordinates for each pillar of "energy" balls in the
; AnimationShootManyBallsUpward animation. It's unused in the game.
- db $10, $40, $28, $18, $38, $30
+ db $10, $40, $28, $18, $38, $30
db $FF ; list terminator
UpwardBallsAnimXCoordinatesEnemyTurn: ; 79598 (1e:5598)
-; List of x coordinates for each pillar of "energy" balls in the
+; List of x coordinates for each pillar of "energy" balls in the
; AnimationShootManyBallsUpward animation. It's unused in the game.
db $60, $90, $78, $68, $88, $80
- db $FF ; list terminator
+ db $FF ; list terminator
AnimationMinimizeMon: ; 7959f (1e:559f)
; Changes the mon's sprite to a mini black sprite. Used by the
@@ -110984,7 +57528,7 @@ Unknown_79c50: ; 79c50 (1e:5c50)
db $43,$55,$56,$53,$53,$53,$53,$53,$53,$53,$53,$53,$43,$57,$58,$54,$54,$54,$54,$54,$54,$54,$54,$54,$43,$59,$5A,$43,$43,$43,$43,$43,$43,$43,$43,$43
AnimationLeavesFalling: ; 79c74 (1e:5c74)
-; Makes leaves float down from the top of the screen. This is used
+; Makes leaves float down from the top of the screen. This is used
; in Razor Leaf's animation.
ld a, [$ff48]
push af
@@ -110999,7 +57543,7 @@ AnimationLeavesFalling: ; 79c74 (1e:5c74)
ret
AnimationPetalsFalling: ; 79c8a (1e:5c8a)
-; Makes lots of petals fall down from the top of the screen. It's used in
+; Makes lots of petals fall down from the top of the screen. It's used in
; the animation for Petal Dance.
ld d, $71
ld a, $14
@@ -111395,7 +57939,7 @@ Func_79f54: ; 79f54 (1e:5f54)
ld [$cfcb], a
ld a, $e4
ld [rOBP1], a ; $ff49
- call Func_79fc0
+ call LoadSmokeTileFourTimes
callba asm_f055
ld c, $8
.asm_79f73
@@ -111452,22 +57996,22 @@ PointerTable_79fb0: ; 79fb0 (1e:5fb0)
db $FF,$01
dw Func_79337
-Func_79fc0: ; 79fc0 (1e:5fc0)
+LoadSmokeTileFourTimes: ; 79fc0 (1e:5fc0)
ld hl, $8fc0
ld c, $4
-.asm_79fc5
+.loop
push bc
push hl
- call Func_79fd4
+ call LoadSmokeTile
pop hl
ld bc, $10
add hl, bc
pop bc
dec c
- jr nz, .asm_79fc5
+ jr nz, .loop
ret
-Func_79fd4: ; 79fd4 (1e:5fd4)
+LoadSmokeTile: ; 79fd4 (1e:5fd4)
ld de, SSAnneSmokePuffTile ; $5fdd
ld bc, (BANK(SSAnneSmokePuffTile) << 8) + $01
jp CopyVideoData
@@ -111487,3634 +58031,7 @@ RedFishingTilesSide: ; 7a02d (1e:602d)
RedFishingRodTiles: ; 7a04d (1e:604d)
INCBIN "gfx/red_fishingrod_tiles.2bpp"
-AttackAnimationPointers: ; 7a07d (1e:607d)
- dw PoundAnim
- dw KarateChopAnim
- dw DoubleSlapAnim
- dw CometPunchAnim
- dw MegaPunchAnim
- dw PayDayAnim
- dw FirePunchAnim
- dw IcePunchAnim
- dw ThunderPunchAnim
- dw ScratchAnim
- dw VicegripAnim
- dw GuillotineAnim
- dw RazorWindAnim
- dw SwordsDanceAnim
- dw CutAnim
- dw GustAnim
- dw WingAttackAnim
- dw WhirlwindAnim
- dw FlyAnim
- dw BindAnim
- dw SlamAnim
- dw VineWhipAnim
- dw StompAnim
- dw DoubleKickAnim
- dw MegaKickAnim
- dw JumpKickAnim
- dw RollingKickAnim
- dw SandAttackAnim
- dw HeatButtAnim
- dw HornAttackAnim
- dw FuryAttackAnim
- dw HornDrillAnim
- dw TackleAnim
- dw BodySlamAnim
- dw WrapAnim
- dw TakeDownAnim
- dw ThrashAnim
- dw DoubleEdgeAnim
- dw TailWhipAnim
- dw PoisonStingAnim
- dw TwineedleAnim
- dw PinMissileAnim
- dw LeerAnim
- dw BiteAnim
- dw GrowlAnim
- dw RoarAnim
- dw SingAnim
- dw SupersonicAnim
- dw SonicBoomAnim
- dw DisableAnim
- dw AcidAnim
- dw EmberAnim
- dw FlamethrowerAnim
- dw MistAnim
- dw WaterGunAnim
- dw HydroPumpAnim
- dw SurfAnim
- dw IceBeamAnim
- dw BlizzardAnim
- dw PsyBeamAnim
- dw BubbleBeamAnim
- dw AuroraBeamAnim
- dw HyperBeamAnim
- dw PeckAnim
- dw DrillPeckAnim
- dw SubmissionAnim
- dw LowKickAnim
- dw CounterAnim
- dw SeismicTossAnim
- dw StrengthAnim
- dw AbsorbAnim
- dw MegaDrainAnim
- dw LeechSeedAnim
- dw GrowthAnim
- dw RazorLeafAnim
- dw SolarBeamAnim
- dw PoisonPowderAnim
- dw StunSporeAnim
- dw SleepPowderAnim
- dw PedalDanceAnim
- dw StringShotAnim
- dw DragonRageAnim
- dw FireSpinAnim
- dw ThunderShockAnim
- dw ThunderBoltAnim
- dw ThunderWaveAnim
- dw ThunderAnim
- dw RockThrowAnim
- dw EarthquakeAnim
- dw FissureAnim
- dw DigAnim
- dw ToxicAnim
- dw ConfusionAnim
- dw PsychicAnim
- dw HypnosisAnim
- dw MeditateAnim
- dw AgilityAnim
- dw QuickAttackAnim
- dw RageAnim
- dw TeleportAnim
- dw NightShadeAnim
- dw MimicAnim
- dw ScreechAnim
- dw DoubleTeamAnim
- dw RecoverAnim
- dw HardenAnim
- dw MinimizeAnim
- dw SmokeScreenAnim
- dw ConfuseRayAnim
- dw WithdrawAnim
- dw DefenseCurlAnim
- dw BarrierAnim
- dw LightScreenAnim
- dw HazeAnim
- dw ReflectAnim
- dw FocusEnergyAnim
- dw BideAnim
- dw MetronomeAnim
- dw MirrorMoveAnim
- dw SelfdestructAnim
- dw EggBombAnim
- dw LickAnim
- dw SmogAnim
- dw SludgeAnim
- dw BoneClubAnim
- dw FireBlastAnim
- dw WaterfallAnim
- dw ClampAnim
- dw SwiftAnim
- dw SkullBashAnim
- dw SpikeCannonAnim
- dw ConstrictAnim
- dw AmnesiaAnim
- dw KinesisAnim
- dw SoftboiledAnim
- dw HiJumpKickAnim
- dw GlareAnim
- dw DreamEaterAnim
- dw PoisonGasAnim
- dw BarrageAnim
- dw LeechLifeAnim
- dw LovelyKissAnim
- dw SkyAttackAnim
- dw TransformAnim
- dw BubbleAnim
- dw DizzyPunchAnim
- dw SporeAnim
- dw FlashAnim
- dw PsywaveAnim
- dw SplashAnim
- dw AcidArmorAnim
- dw CrabHammerAnim
- dw ExplosionAnim
- dw FurySwipesAnim
- dw BonemerangAnim
- dw RestAnim
- dw RockSlideAnim
- dw HyperFangAnim
- dw SharpenAnim
- dw ConversionAnim
- dw TriAttackAnim
- dw SuperFangAnim
- dw SlashAnim
- dw SubstituteAnim
- dw StruggleAnim
- dw ShowPicAnim
- dw EnemyFlashAnim
- dw PlayerFlashAnim
- dw EnemyHUDShakeAnim
- dw TradeBallDropAnim
- dw TradeBallAppear1Anim
- dw TradeBallAppear2Anim
- dw TradeBallPoofAnim
- dw XStatItemAnim
- dw XStatItemAnim
- dw ShrinkingSquareAnim
- dw ShrinkingSquareAnim
- dw XStatItemBlackAnim
- dw XStatItemBlackAnim
- dw ShrinkingSquareBlackAnim
- dw ShrinkingSquareBlackAnim
- dw UnusedAnim
- dw UnusedAnim
- dw ParalyzeAnim
- dw ParalyzeAnim
- dw PoisonAnim
- dw PoisonAnim
- dw SleepPlayerAnim
- dw SleepEnemyAnim
- dw ConfusedPlayerAnim
- dw ConfusedEnemyAnim
- dw FaintAnim
- dw BallTossAnim
- dw BallShakeAnim
- dw BallPoofAnim
- dw BallBlockAnim
- dw GreatTossAnim
- dw UltraTossAnim
- dw ShakeScreenAnim
- dw HidePicAnim
- dw ThrowRockAnim
- dw ThrowBaitAnim
- dw ZigZagScreenAnim
-
-; each animation is a list of subanimations and special effects
-; if first byte < $56
-; db tileset_and_delay, sound_id, subanimation_id
-; if first byte >= $D8
-; db special_effect_id, sound_id
-; $FF terminated
-ZigZagScreenAnim: ; 7a213 (1e:6213)
- db SE_WAVY_SCREEN, $FF
- db $FF
-
-PoundAnim: ; 7a216 (1e:6216)
-StruggleAnim: ; 7a216 (1e:6216)
- db $08,$00,$01
- db $FF
-
-KarateChopAnim: ; 7a21a (1e:621a)
- db $08,$01,$03
- db $FF
-
-DoubleSlapAnim: ; 7a21e (1e:621e)
- db $05,$02,$01
- db $05,$02,$01
- db $FF
-
-CometPunchAnim: ; 7a225 (1e:6225)
- db $04,$03,$02
- db $04,$03,$02
- db $FF
-
-MegaPunchAnim: ; 7a22c (1e:622c)
- db $46,$04,$04
- db $FF
-
-PayDayAnim: ; 7a230 (1e:6230)
- db $08,$00,$01
- db $04,$05,$52
- db $FF
-
-FirePunchAnim: ; 7a237 (1e:6237)
- db $06,$06,$02
- db $46,$FF,$11
- db $FF
-
-IcePunchAnim: ; 7a23e (1e:623e)
- db $06,$07,$02
- db $10,$FF,$2F
- db $FF
-
-ThunderPunchAnim: ; 7a245 (1e:6245)
- db $06,$08,$02
- db SE_DARK_SCREEN_PALETTE, $FF
- db $46,$FF,$2B
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ScratchAnim: ; 7a250 (1e:6250)
- db $06,$09,$0F
- db $FF
-
-VicegripAnim: ; 7a254 (1e:6254)
- db $08,$0A,$2A
- db $FF
-
-GuillotineAnim: ; 7a258 (1e:6258)
- db $06,$0B,$2A
- db $FF
-
-RazorWindAnim: ; 7a25c (1e:625c)
- db $04,$0C,$16
- db $FF
-
-SwordsDanceAnim: ; 7a260 (1e:6260)
- db $46,$0D,$18
- db $46,$0D,$18
- db $46,$0D,$18
- db $FF
-
-CutAnim: ; 7a26a (1e:626a)
- db SE_DARK_SCREEN_FLASH, $0E
- db $04,$FF,$16
- db $FF
-
-GustAnim: ; 7a270 (1e:6270)
- db $46,$0F,$10
- db $06,$FF,$02
- db $FF
-
-WingAttackAnim: ; 7a277 (1e:6277)
- db $46,$10,$04
- db $FF
-
-WhirlwindAnim: ; 7a27b (1e:627b)
- db $46,$11,$10
- db SE_SLIDE_ENEMY_MON_OUT, $FF
- db $FF
-
-FlyAnim: ; 7a281 (1e:6281)
- db $46,$12,$04
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-BindAnim: ; 7a287 (1e:6287)
- db $04,$13,$23
- db $04,$13,$23
- db $FF
-
-SlamAnim: ; 7a28e (1e:628e)
- db $06,$14,$02
- db $FF
-
-VineWhipAnim: ; 7a292 (1e:6292)
- db $01,$15,$16
- db $08,$FF,$01
- db $FF
-
-StompAnim: ; 7a299 (1e:6299)
- db $48,$16,$05
- db $FF
-
-DoubleKickAnim: ; 7a29d (1e:629d)
- db $08,$17,$01
- db $08,$17,$01
- db $FF
-
-MegaKickAnim: ; 7a2a4 (1e:62a4)
- db $46,$18,$04
- db $FF
-
-JumpKickAnim: ; 7a2a8 (1e:62a8)
- db $46,$19,$04
- db $FF
-
-RollingKickAnim: ; 7a2ac (1e:62ac)
- db SE_DARK_SCREEN_FLASH, $1A
- db $46,$FF,$04
- db $FF
-
-SandAttackAnim: ; 7a2b2 (1e:62b2)
- db $46,$1B,$28
- db $FF
-
-HeatButtAnim: ; 7a2b6 (1e:62b6)
- db $46,$1C,$05
- db $FF
-
-HornAttackAnim: ; 7a2ba (1e:62ba)
- db $06,$1D,$45
- db $46,$FF,$05
- db $FF
-
-FuryAttackAnim: ; 7a2c1 (1e:62c1)
- db $02,$1E,$46
- db $02,$FF,$46
- db $FF
-
-HornDrillAnim: ; 7a2c8 (1e:62c8)
- db $42,$1F,$05
- db $42,$FF,$05
- db $42,$FF,$05
- db $42,$FF,$05
- db $42,$FF,$05
- db $FF
-
-TackleAnim: ; 7a2d8 (1e:62d8)
- db SE_MOVE_MON_HORIZONTALLY, $48
- db SE_RESET_MON_POSITION, $FF
- db $FF
-
-BodySlamAnim: ; 7a2dd (1e:62dd)
- db SE_MOVE_MON_HORIZONTALLY, $48
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_MON_POSITION, $FF
- db $FF
-
-WrapAnim: ; 7a2e6 (1e:62e6)
- db $04,$22,$23
- db $04,$22,$23
- db $04,$22,$23
- db $FF
-
-TakeDownAnim: ; 7a2f0 (1e:62f0)
- db SE_MOVE_MON_HORIZONTALLY, $48
- db SE_DARK_SCREEN_FLASH, $23
- db SE_RESET_MON_POSITION, $FF
- db $FF
-
-ThrashAnim: ; 7a2f7 (1e:62f7)
- db $46,$24,$04
- db $FF
-
-DoubleEdgeAnim: ; 7a2fb (1e:62fb)
- db SE_LIGHT_SCREEN_PALETTE, $48
- db $06,$FF,$2D
- db SE_RESET_SCREEN_PALETTE, $FF
- db SE_MOVE_MON_HORIZONTALLY, $FF
- db SE_DARK_SCREEN_FLASH, $25
- db SE_RESET_MON_POSITION, $FF
- db $FF
-
-TailWhipAnim: ; 7a309 (1e:6309)
- db SE_MOVE_MON_HORIZONTALLY, $84
- db SE_DELAY_ANIMATION_10, $FF
- db SE_RESET_MON_POSITION, $84
- db SE_DELAY_ANIMATION_10, $FF
- db SE_MOVE_MON_HORIZONTALLY, $84
- db SE_DELAY_ANIMATION_10, $FF
- db SE_RESET_MON_POSITION, $84
- db $FF
-
-PoisonStingAnim: ; 7a318 (1e:6318)
- db $06,$27,$00
- db $FF
-
-TwineedleAnim: ; 7a31c (1e:631c)
- db $05,$28,$01
- db $05,$28,$01
- db $FF
-
-PinMissileAnim: ; 7a323 (1e:6323)
- db $03,$29,$01
- db $FF
-
-LeerAnim: ; 7a327 (1e:6327)
- db SE_DARK_SCREEN_PALETTE, $48
- db SE_DARK_SCREEN_FLASH, $2A
- db SE_DARK_SCREEN_FLASH, $2A
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-BiteAnim: ; 7a330 (1e:6330)
- db $08,$2B,$02
- db $FF
-
-GrowlAnim: ; 7a334 (1e:6334)
- db $46,$2C,$12
- db $FF
-
-RoarAnim: ; 7a338 (1e:6338)
- db $46,$2D,$15
- db $46,$2D,$15
- db $46,$2D,$15
- db $FF
-
-SingAnim: ; 7a342 (1e:6342)
- db $46,$2E,$12
- db $50,$FF,$40
- db $50,$FF,$40
- db $FF
-
-SupersonicAnim: ; 7a34c (1e:634c)
- db $06,$2F,$31
- db $FF
-
-SonicBoomAnim: ; 7a350 (1e:6350)
- db $46,$2D,$15
- db $46,$2D,$15
- db $46,$0F,$10
- db $46,$FF,$05
- db $FF
-
-DisableAnim: ; 7a35d (1e:635d)
- db SE_DARK_SCREEN_PALETTE, $48
- db SE_DARK_SCREEN_FLASH, $2A
- db SE_DARK_SCREEN_FLASH, $2A
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-AcidAnim: ; 7a366 (1e:6366)
- db $46,$32,$13
- db $46,$32,$14
- db $FF
-
-EmberAnim: ; 7a36d (1e:636d)
- db $46,$33,$11
- db $FF
-
-FlamethrowerAnim: ; 7a371 (1e:6371)
- db $46,$34,$1F
- db $46,$34,$0C
- db $46,$34,$0D
- db $FF
-
-MistAnim: ; 7a37b (1e:637b)
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db SE_WATER_DROPLETS_EVERYWHERE, $38
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-WaterGunAnim: ; 7a382 (1e:6382)
- db $06,$36,$2C
- db $FF
-
-HydroPumpAnim: ; 7a386 (1e:6386)
- db $06,$37,$1A
- db $06,$37,$1A
- db $FF
-
-SurfAnim: ; 7a38d (1e:638d)
- db SE_WATER_DROPLETS_EVERYWHERE, $38
- db $06,$37,$1A
- db $FF
-
-IceBeamAnim: ; 7a393 (1e:6393)
- db $03,$39,$2E
- db $10,$FF,$2F
- db $FF
-
-BlizzardAnim: ; 7a39a (1e:639a)
- db $04,$3A,$38
- db $04,$37,$38
- db $FF
-
-PsyBeamAnim: ; 7a3a1 (1e:63a1)
- db $03,$3B,$2E
- db SE_FLASH_SCREEN_LONG, $FF
- db $FF
-
-BubbleBeamAnim: ; 7a3a7 (1e:63a7)
- db $12,$3C,$35
- db $FF
-
-AuroraBeamAnim: ; 7a3ab (1e:63ab)
- db $03,$3D,$2E
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db $FF
-
-HyperBeamAnim: ; 7a3b3 (1e:63b3)
- db SE_DARK_SCREEN_PALETTE, $48
- db SE_SPIRAL_BALLS_INWARD, $FF
- db $02,$3E,$2E
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_DARK_SCREEN_FLASH, $FF
- db $46,$04,$04
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-PeckAnim: ; 7a3c4 (1e:63c4)
- db $08,$3F,$01
- db $FF
-
-DrillPeckAnim: ; 7a3c8 (1e:63c8)
- db $46,$40,$04
- db $FF
-
-SubmissionAnim: ; 7a3cc (1e:63cc)
- db SE_SLIDE_MON_OUT, $41
- db $06,$FF,$01
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-LowKickAnim: ; 7a3d4 (1e:63d4)
- db SE_SLIDE_MON_OUT, $42
- db $46,$FF,$04
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-CounterAnim: ; 7a3dc (1e:63dc)
- db SE_SLIDE_MON_OUT, $43
- db $46,$FF,$04
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-SeismicTossAnim: ; 7a3e4 (1e:63e4)
- db SE_BLINK_ENEMY_MON, $FF
- db $41,$8B,$4E
- db SE_HIDE_ENEMY_MON_PIC, $FF
- db SE_SLIDE_MON_OUT, $FF
- db $42,$44,$4F
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_SHOW_MON_PIC, $FF
- db $41,$44,$50
- db SE_SHOW_ENEMY_MON_PIC, $FF
- db SE_SHAKE_SCREEN, $FF
- db $FF
-
-StrengthAnim: ; 7a3fe (1e:63fe)
- db SE_MOVE_MON_HORIZONTALLY, $48
- db SE_RESET_MON_POSITION, $FF
- db $46,$06,$04
- db $FF
-
-AbsorbAnim: ; 7a406 (1e:6406)
- db SE_LIGHT_SCREEN_PALETTE, $46
- db $06,$FF,$21
- db $06,$FF,$22
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-MegaDrainAnim: ; 7a411 (1e:6411)
- db SE_LIGHT_SCREEN_PALETTE, $47
- db SE_DARK_SCREEN_FLASH, $FF
- db $06,$FF,$21
- db $06,$FF,$22
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-LeechSeedAnim: ; 7a420 (1e:6420)
- db $46,$48,$1B
- db $55,$4D,$1C
- db $FF
-
-GrowthAnim: ; 7a427 (1e:6427)
- db SE_LIGHT_SCREEN_PALETTE, $49
- db SE_SPIRAL_BALLS_INWARD, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-RazorLeafAnim: ; 7a42e (1e:642e)
- db SE_LEAVES_FALLING, $4A
- db $41,$80,$44
- db $01,$0C,$16
- db $FF
-
-SolarBeamAnim: ; 7a437 (1e:6437)
- db $06,$4B,$2E
- db $06,$FF,$01
- db $FF
-
-PoisonPowderAnim: ; 7a43e (1e:643e)
- db $06,$4C,$36
- db $FF
-
-StunSporeAnim: ; 7a442 (1e:6442)
- db $06,$4D,$36
- db $FF
-
-SleepPowderAnim: ; 7a446 (1e:6446)
- db $06,$4E,$36
- db $FF
-
-PedalDanceAnim: ; 7a44a (1e:644a)
- db SE_LIGHT_SCREEN_PALETTE, $4F
- db SE_PETALS_FALLING, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-StringShotAnim: ; 7a451 (1e:6451)
- db $08,$50,$37
- db $FF
-
-DragonRageAnim: ; 7a455 (1e:6455)
- db $46,$51,$1F
- db $46,$FF,$0C
- db $46,$FF,$0D
- db $46,$FF,$0E
- db $FF
-
-FireSpinAnim: ; 7a462 (1e:6462)
- db $46,$52,$0C
- db $46,$FF,$0D
- db $46,$FF,$0E
- db $FF
-
-ThunderShockAnim: ; 7a46c (1e:646c)
- db $42,$53,$29
- db $FF
-
-ThunderBoltAnim: ; 7a470 (1e:6470)
- db $41,$54,$29
- db $41,$54,$29
- db $FF
-
-ThunderWaveAnim: ; 7a477 (1e:6477)
- db $42,$55,$29
- db $02,$FF,$23
- db $04,$FF,$23
- db $FF
-
-ThunderAnim: ; 7a481 (1e:6481)
- db SE_DARK_SCREEN_PALETTE, $56
- db SE_DARK_SCREEN_FLASH, $FF
- db $46,$FF,$2B
- db SE_DARK_SCREEN_FLASH, $FF
- db $42,$54,$29
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-RockThrowAnim: ; 7a490 (1e:6490)
- db $04,$57,$30
- db $FF
-
-EarthquakeAnim: ; 7a494 (1e:6494)
- db SE_SHAKE_SCREEN, $58
- db SE_SHAKE_SCREEN, $58
- db $FF
-
-FissureAnim: ; 7a499 (1e:6499)
- db SE_DARK_SCREEN_FLASH, $59
- db SE_SHAKE_SCREEN, $FF
- db SE_DARK_SCREEN_FLASH, $59
- db SE_SHAKE_SCREEN, $FF
- db $FF
-
-DigAnim: ; 7a4a2 (1e:64a2)
- db $46,$5A,$04
- db SE_SLIDE_MON_UP, $FF
- db $FF
-
-ToxicAnim: ; 7a4a8 (1e:64a8)
- db SE_WATER_DROPLETS_EVERYWHERE, $38
- db $46,$5B,$14
- db $FF
-
-ConfusionAnim: ; 7a4ae (1e:64ae)
- db SE_FLASH_SCREEN_LONG, $5C
- db $FF
-
-PsychicAnim: ; 7a4b1 (1e:64b1)
- db SE_FLASH_SCREEN_LONG, $5D
- db SE_WAVY_SCREEN, $FF
- db $FF
-
-HypnosisAnim: ; 7a4b6 (1e:64b6)
- db SE_FLASH_SCREEN_LONG, $5E
- db $FF
-
-MeditateAnim: ; 7a4b9 (1e:64b9)
- db SE_LIGHT_SCREEN_PALETTE, $5F
- db $46,$FF,$43
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-AgilityAnim: ; 7a4c3 (1e:64c3)
- db SE_LIGHT_SCREEN_PALETTE, $60
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-QuickAttackAnim: ; 7a4c8 (1e:64c8)
- db SE_SLIDE_MON_OUT, $61
- db $46,$FF,$04
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-RageAnim: ; 7a4d0 (1e:64d0)
- db $06,$62,$01
- db $FF
-
-TeleportAnim: ; 7a4d4 (1e:64d4)
- db SE_SQUISH_MON_PIC, $63
- db SE_SHOOT_BALLS_UPWARD, $FF
- db $FF
-
-NightShadeAnim: ; 7a4d9 (1e:64d9)
- db SE_FLASH_SCREEN_LONG, $5C
- db SE_WAVY_SCREEN, $FF
- db $FF
-
-MimicAnim: ; 7a4de (1e:64de)
- db $46,$65,$21
- db $46,$65,$22
- db $FF
-
-ScreechAnim: ; 7a4e5 (1e:64e5)
- db $46,$66,$12
- db $FF
-
-DoubleTeamAnim: ; 7a4e9 (1e:64e9)
- db SE_DARK_SCREEN_PALETTE, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db SE_SHAKE_BACK_AND_FORTH, $67
- db SE_SHOW_MON_PIC, $FF
- db $46,$6F,$33
- db $FF
-
-RecoverAnim: ; 7a4fd (1e:64fd)
- db SE_BLINK_MON, $68
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db SE_SPIRAL_BALLS_INWARD, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-HardenAnim: ; 7a506 (1e:6506)
- db SE_LIGHT_SCREEN_PALETTE, $69
- db $46,$FF,$43
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-MinimizeAnim: ; 7a510 (1e:6510)
- db SE_LIGHT_SCREEN_PALETTE, $6A
- db SE_SPIRAL_BALLS_INWARD, $FF
- db SE_MINIMIZE_MON, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-SmokeScreenAnim: ; 7a519 (1e:6519)
- db $46,$6B,$28
- db $04,$FF,$0A
- db SE_DARKEN_MON_PALETTE, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DARK_SCREEN_PALETTE, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_DARKEN_MON_PALETTE, $FF
- db SE_DELAY_ANIMATION_10, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ConfuseRayAnim: ; 7a53a (1e:653a)
- db SE_DARK_SCREEN_PALETTE, $6C
- db $46,$FF,$3E
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-WithdrawAnim: ; 7a542 (1e:6542)
- db SE_LIGHT_SCREEN_PALETTE, $6E
- db SE_SLIDE_MON_DOWN, $FF
- db $06,$FF,$51
- db SE_RESET_SCREEN_PALETTE, $FF
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-DefenseCurlAnim: ; 7a54e (1e:654e)
- db SE_LIGHT_SCREEN_PALETTE, $6E
- db $06,$FF,$43
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-BarrierAnim: ; 7a558 (1e:6558)
- db $46,$6F,$33
- db $46,$6F,$33
- db $FF
-
-LightScreenAnim: ; 7a55f (1e:655f)
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db $46,$70,$33
- db $46,$70,$33
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-HazeAnim: ; 7a56a (1e:656a)
- db SE_DARKEN_MON_PALETTE, $FF
- db SE_WATER_DROPLETS_EVERYWHERE, $38
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ReflectAnim: ; 7a571 (1e:6571)
- db SE_DARK_SCREEN_PALETTE, $FF
- db $46,$72,$33
- db $46,$72,$33
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-FocusEnergyAnim: ; 7a57c (1e:657c)
- db SE_SPIRAL_BALLS_INWARD, $73
- db $FF
-
-BideAnim: ; 7a57f (1e:657f)
- db $46,$74,$04
- db $FF
-
-MetronomeAnim: ; 7a583 (1e:6583)
- db SE_MOVE_MON_HORIZONTALLY, $84
- db SE_DELAY_ANIMATION_10, $FF
- db SE_RESET_MON_POSITION, $84
- db SE_DELAY_ANIMATION_10, $FF
- db SE_MOVE_MON_HORIZONTALLY, $84
- db SE_DELAY_ANIMATION_10, $FF
- db SE_RESET_MON_POSITION, $84
- db $FF
-
-MirrorMoveAnim: ; 7a592 (1e:6592)
- db $08,$76,$01
- db $FF
-
-SelfdestructAnim: ; 7a596 (1e:6596)
- db $43,$77,$34
- db $FF
-
-EggBombAnim: ; 7a59a (1e:659a)
- db $44,$78,$41
- db $44,$78,$42
- db $FF
-
-LickAnim: ; 7a5a1 (1e:65a1)
- db $46,$7B,$14
- db $FF
-
-SmogAnim: ; 7a5a5 (1e:65a5)
- db SE_DARKEN_MON_PALETTE, $48
- db $46,$7A,$19
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-SludgeAnim: ; 7a5ad (1e:65ad)
- db $46,$7B,$13
- db $46,$7B,$14
- db $FF
-
-BoneClubAnim: ; 7a5b4 (1e:65b4)
- db $08,$7C,$02
- db $FF
-
-FireBlastAnim: ; 7a5b8 (1e:65b8)
- db $46,$7D,$1F
- db $46,$FF,$20
- db $46,$FF,$20
- db $46,$FF,$0C
- db $46,$FF,$0D
- db $FF
-
-WaterfallAnim: ; 7a5c8 (1e:65c8)
- db SE_SLIDE_MON_DOWN, $48
- db $06,$37,$1A
- db $08,$FF,$02
- db SE_SLIDE_MON_UP, $FF
- db $FF
-
-ClampAnim: ; 7a5d3 (1e:65d3)
- db $08,$7F,$2A
- db $06,$83,$23
- db $06,$83,$23
- db $FF
-
-SwiftAnim: ; 7a5dd (1e:65dd)
- db $43,$80,$3F
- db $FF
-
-SkullBashAnim: ; 7a5e1 (1e:65e1)
- db $46,$81,$05
- db $FF
-
-SpikeCannonAnim: ; 7a5e5 (1e:65e5)
- db $44,$82,$04
- db $FF
-
-ConstrictAnim: ; 7a5e9 (1e:65e9)
- db $06,$83,$23
- db $06,$83,$23
- db $06,$83,$23
- db $FF
-
-AmnesiaAnim: ; 7a5f3 (1e:65f3)
- db $08,$84,$25
- db $08,$84,$25
- db $FF
-
-KinesisAnim: ; 7a5fa (1e:65fa)
- db $08,$85,$01
- db $FF
-
-SoftboiledAnim: ; 7a5fe (1e:65fe)
- db SE_SLIDE_MON_HALF_LEFT, $48
- db $08,$86,$4C
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db SE_SPIRAL_BALLS_INWARD, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-HiJumpKickAnim: ; 7a6 (1e:660c)
- db $46,$87,$04
- db $FF
-
-GlareAnim: ; 7a610 (1e:6610)
- db SE_DARK_SCREEN_PALETTE, $48
- db SE_DARK_SCREEN_FLASH, $88
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-DreamEaterAnim: ; 7a619 (1e:6619)
- db SE_FLASH_SCREEN_LONG, $89
- db SE_DARK_SCREEN_PALETTE, $89
- db $08,$89,$02
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-PoisonGasAnim: ; 7a623 (1e:6623)
- db $46,$8A,$19
- db $FF
-
-BarrageAnim: ; 7a627 (1e:6627)
- db $43,$8B,$41
- db $05,$FF,$55
- db $FF
-
-LeechLifeAnim: ; 7a62e (1e:662e)
- db $08,$8C,$02
- db SE_DARK_SCREEN_FLASH, $FF
- db $06,$FF,$21
- db $06,$FF,$22
- db SE_DARK_SCREEN_FLASH, $FF
- db $FF
-
-LovelyKissAnim: ; 7a63c (1e:663c)
- db $06,$8D,$12
- db $FF
-
-SkyAttackAnim: ; 7a640 (1e:6640)
- db SE_SQUISH_MON_PIC, $8E
- db SE_SHOOT_BALLS_UPWARD, $FF
- db $46,$87,$04
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-TransformAnim: ; 7a64a (1e:664a)
- db $46,$8F,$21
- db $44,$8F,$22
- db $08,$FF,$47
- db SE_TRANSFORM_MON, $FF
- db $FF
-
-BubbleAnim: ; 7a656 (1e:6656)
- db $16,$90,$35
- db $FF
-
-DizzyPunchAnim: ; 7a65a (1e:665a)
- db $06,$91,$17
- db $06,$91,$17
- db $06,$91,$17
- db $06,$02,$02
- db $FF
-
-SporeAnim: ; 7a667 (1e:6667)
- db $06,$92,$36
- db $FF
-
-FlashAnim: ; 7a66b (1e:666b)
- db SE_LIGHT_SCREEN_PALETTE, $48
- db SE_DARK_SCREEN_FLASH, $88
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-PsywaveAnim: ; 7a674 (1e:6674)
- db $06,$2F,$31
- db SE_WAVY_SCREEN, $5C
- db $FF
-
-SplashAnim: ; 7a67a (1e:667a)
- db SE_BOUNCE_UP_AND_DOWN, $95
- db $FF
-
-AcidArmorAnim: ; 7a67d (1e:667d)
- db SE_SLIDE_MON_DOWN_AND_HIDE, $96
- db $FF
-
-CrabHammerAnim: ; 7a680 (1e:6680)
- db $46,$97,$05
- db $06,$FF,$2A
- db $FF
-
-ExplosionAnim: ; 7a687 (1e:6687)
- db $43,$98,$34
- db $FF
-
-FurySwipesAnim: ; 7a68b (1e:668b)
- db $04,$99,$0F
- db $FF
-
-BonemerangAnim: ; 7a68f (1e:668f)
- db $06,$9A,$02
- db $FF
-
-RestAnim: ; 7a693 (1e:6693)
- db $10,$9B,$3A
- db $10,$9B,$3A
- db $FF
-
-RockSlideAnim: ; 7a69a (1e:669a)
- db $04,$9C,$1D
- db $03,$9C,$1E
- db $46,$9D,$04
- db $FF
-
-HyperFangAnim: ; 7a6a4 (1e:66a4)
- db $06,$9D,$02
- db $FF
-
-SharpenAnim: ; 7a6a8 (1e:66a8)
- db SE_LIGHT_SCREEN_PALETTE, $9E
- db $46,$FF,$43
- db SE_DARK_SCREEN_FLASH, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ConversionAnim: ; 7a6b2 (1e:66b2)
- db SE_DARK_SCREEN_FLASH, $9F
- db $46,$FF,$21
- db $46,$FF,$22
- db SE_DARK_SCREEN_FLASH, $FF
- db $FF
-
-TriAttackAnim: ; 7a6bd (1e:66bd)
- db SE_DARK_SCREEN_FLASH, $A0
- db $46,$FF,$4D
- db SE_DARK_SCREEN_FLASH, $FF
- db $FF
-
-SuperFangAnim: ; 7a6c5 (1e:66c5)
- db SE_DARK_SCREEN_PALETTE, $48
- db $46,$A1,$04
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-SlashAnim: ; 7a6cd (1e:66cd)
- db $06,$A2,$0F
- db $FF
-
-SubstituteAnim: ; 7a6d1 (1e:66d1)
- db SE_SLIDE_MON_OUT, $A3
- db $08,$FF,$47
- db SE_SUBSTITUTE_MON, $FF
- db $FF
-
-BallTossAnim: ; 7a6d9 (1e:66d9)
- db $03,$FF,$06
- db $FF
-
-GreatTossAnim: ; 7a6dd (1e:66dd)
- db $03,$FF,$07
- db $FF
-
-UltraTossAnim: ; 7a6e1 (1e:66e1)
- db $02,$FF,$08
- db $FF
-
-BallShakeAnim: ; 7a6e5 (1e:66e5)
- db $04,$FF,$09
- db $FF
-
-BallPoofAnim: ; 7a6e9 (1e:66e9)
- db $04,$FF,$0A
- db $FF
-
-ShowPicAnim: ; 7a6ed (1e:66ed)
- db SE_SHOW_ENEMY_MON_PIC, $FF
- db $FF
-
-HidePicAnim: ; 7a6f0 (1e:66f0)
- db SE_HIDE_ENEMY_MON_PIC, $FF
- db $FF
-
-EnemyFlashAnim: ; 7a6f3 (1e:66f3)
- db SE_SHOW_MON_PIC, $FF
- db $FF
-
-PlayerFlashAnim: ; 7a6f6 (1e:66f6)
- db SE_FLASH_MON_PIC, $FF
- db $FF
-
-EnemyHUDShakeAnim: ; 7a6f9 (1e:66f9)
- db SE_SHAKE_ENEMY_HUD, $FF
- db $FF
-
-TradeBallDropAnim: ; 7a6fc (1e:66fc)
- db $86,$FF,$48
- db $FF
-
-TradeBallAppear1Anim: ; 7a700 (1e:6700)
- db $84,$FF,$49
- db $FF
-
-TradeBallAppear2Anim: ; 7a704 (1e:6704)
- db $86,$FF,$4A
- db $FF
-
-TradeBallPoofAnim: ; 7a708 (1e:6708)
- db $86,$FF,$4B
- db $FF
-
-XStatItemAnim: ; 7a7c0 (1e:670c)
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db SE_SPIRAL_BALLS_INWARD, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ShrinkingSquareAnim: ; 7a713 (1e:6713)
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db $46,$FF,$43
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-XStatItemBlackAnim: ; 7a71b (1e:671b)
- db SE_DARKEN_MON_PALETTE, $FF
- db SE_SPIRAL_BALLS_INWARD, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ShrinkingSquareBlackAnim: ; 7a722 (1e:6722)
- db SE_DARKEN_MON_PALETTE, $FF
- db $46,$FF,$43
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-UnusedAnim: ; 7a72a (1e:672a)
- db SE_LIGHT_SCREEN_PALETTE, $FF
- db SE_SHOOT_MANY_BALLS_UPWARD, $FF
- db SE_RESET_SCREEN_PALETTE, $FF
- db $FF
-
-ParalyzeAnim: ; 7a731 (1e:6731)
- db $04,$13,$24
- db $04,$13,$24
- db $FF
-
-PoisonAnim: ; 7a738 (1e:6738)
- db $08,$13,$27
- db $08,$13,$27
- db $FF
-
-SleepPlayerAnim: ; 7a73f (1e:673f)
- db $10,$9B,$3A
- db $10,$9B,$3A
- db $FF
-
-SleepEnemyAnim: ; 7a746 (1e:6746)
- db $10,$9B,$3B
- db $10,$9B,$3B
- db $FF
-
-ConfusedPlayerAnim: ; 7a74d (1e:674d)
- db $08,$84,$25
- db $08,$84,$25
- db $FF
-
-ConfusedEnemyAnim: ; 7a754 (1e:6754)
- db $08,$84,$26
- db $08,$84,$26
- db $FF
-
-BallBlockAnim: ; 7a75b (1e:675b)
- db $03,$FF,$0B
- db $FF
-
-FaintAnim: ; 7a75f (1e:675f)
- db SE_SLIDE_MON_DOWN, $5A
- db $FF
-
-ShakeScreenAnim: ; 7a762 (1e:6762)
- db SE_SHAKE_SCREEN, $FF
- db $FF
-
-ThrowRockAnim: ; 7a765 (1e:6765)
- db $03,$8B,$53
- db $FF
-
-ThrowBaitAnim: ; 7a769 (1e:6769)
- db $03,$8B,$54
- db $FF
-
-SubanimationPointers: ; 7a76d (1e:676d)
- dw Subanimation00
- dw Subanimation01
- dw Subanimation02
- dw Subanimation03
- dw Subanimation04
- dw Subanimation05
- dw Subanimation06
- dw Subanimation07
- dw Subanimation08
- dw Subanimation09
- dw Subanimation0a
- dw Subanimation0b
- dw Subanimation0c
- dw Subanimation0d
- dw Subanimation0e
- dw Subanimation0f
- dw Subanimation10
- dw Subanimation11
- dw Subanimation12
- dw Subanimation13
- dw Subanimation14
- dw Subanimation15
- dw Subanimation16
- dw Subanimation17
- dw Subanimation18
- dw Subanimation19
- dw Subanimation1a
- dw Subanimation1b
- dw Subanimation1c
- dw Subanimation1d
- dw Subanimation1e
- dw Subanimation1f
- dw Subanimation20
- dw Subanimation21
- dw Subanimation22
- dw Subanimation23
- dw Subanimation24
- dw Subanimation25
- dw Subanimation26
- dw Subanimation27
- dw Subanimation28
- dw Subanimation29
- dw Subanimation2a
- dw Subanimation2b
- dw Subanimation2c
- dw Subanimation2d
- dw Subanimation2e
- dw Subanimation2f
- dw Subanimation30
- dw Subanimation31
- dw Subanimation32
- dw Subanimation33
- dw Subanimation34
- dw Subanimation35
- dw Subanimation36
- dw Subanimation37
- dw Subanimation38
- dw Subanimation39
- dw Subanimation3a
- dw Subanimation3b
- dw Subanimation3c
- dw Subanimation3d
- dw Subanimation3e
- dw Subanimation3f
- dw Subanimation40
- dw Subanimation41
- dw Subanimation42
- dw Subanimation43
- dw Subanimation44
- dw Subanimation45
- dw Subanimation46
- dw Subanimation47
- dw Subanimation48
- dw Subanimation49
- dw Subanimation4a
- dw Subanimation4b
- dw Subanimation4c
- dw Subanimation4d
- dw Subanimation4e
- dw Subanimation4f
- dw Subanimation50
- dw Subanimation51
- dw Subanimation52
- dw Subanimation53
- dw Subanimation54
- dw Subanimation55
-
-Subanimation04: ; 7a819 (1e:6819)
- db $43
- db $02,$1a,$00
- db $02,$10,$00
- db $02,$03,$00
-
-Subanimation05: ; 7a823 (1e:6823)
- db $41
- db $02,$10,$00
-
-Subanimation08: ; 7a827 (1e:6827)
- db $0b
- db $03,$30,$00
- db $03,$44,$00
- db $03,$94,$00
- db $03,$60,$00
- db $03,$76,$00
- db $03,$9f,$00
- db $03,$8d,$00
- db $03,$a0,$00
- db $03,$1a,$00
- db $03,$a1,$00
- db $03,$34,$00
-
-Subanimation07: ; 7a849 (1e:6849)
- db $0b
- db $03,$30,$00
- db $03,$a2,$00
- db $03,$31,$00
- db $03,$a3,$00
- db $03,$32,$00
- db $03,$a4,$00
- db $03,$92,$00
- db $03,$a5,$00
- db $03,$15,$00
- db $03,$a6,$00
- db $03,$34,$00
-
-Subanimation06: ; 7a86b (1e:686b)
- db $0b
- db $03,$30,$00
- db $03,$a2,$00
- db $03,$93,$00
- db $03,$61,$00
- db $03,$73,$00
- db $03,$a7,$00
- db $03,$33,$00
- db $03,$a8,$00
- db $03,$0e,$00
- db $03,$a9,$00
- db $03,$34,$00
-
-Subanimation09: ; 7a88d (1e:688d)
- db $04
- db $03,$21,$04
- db $04,$21,$04
- db $03,$21,$04
- db $05,$21,$04
-
-Subanimation0a: ; 7a89a (1e:689a)
- db $46
- db $06,$1b,$00
- db $07,$1b,$00
- db $08,$36,$00
- db $09,$36,$00
- db $0a,$15,$00
- db $0a,$15,$00
-
-Subanimation0b: ; 7a8ad (1e:68ad)
- db $04
- db $01,$2d,$00
- db $03,$2f,$00
- db $03,$35,$00
- db $03,$4d,$00
-
-Subanimation55: ; 7a8ba (1e:68ba)
- db $41
- db $01,$9d,$00
-
-Subanimation11: ; 7a8be (1e:68be)
- db $4c
- db $0b,$26,$00
- db $0c,$26,$00
- db $0b,$26,$00
- db $0c,$26,$00
- db $0b,$28,$00
- db $0c,$28,$00
- db $0b,$28,$00
- db $0c,$28,$00
- db $0b,$27,$00
- db $0c,$27,$00
- db $0b,$27,$00
- db $0c,$27,$00
-
-Subanimation2b: ; 7a8e3 (1e:68e3)
- db $4b
- db $0d,$03,$03
- db $0e,$03,$03
- db $0f,$03,$00
- db $0d,$11,$00
- db $0d,$11,$00
- db $0d,$37,$00
- db $0d,$37,$00
- db $10,$21,$00
- db $10,$21,$00
- db $11,$1b,$00
- db $11,$1b,$00
-
-Subanimation2c: ; 7a905 (1e:6905)
- db $4c
- db $12,$01,$00
- db $12,$0f,$00
- db $12,$1b,$00
- db $12,$25,$00
- db $13,$38,$00
- db $13,$38,$02
- db $14,$38,$00
- db $14,$38,$02
- db $15,$38,$00
- db $15,$38,$00
- db $16,$38,$00
- db $16,$38,$00
-
-Subanimation12: ; 7a92a (1e:692a)
- db $69
- db $17,$30,$00
- db $17,$39,$00
- db $17,$3a,$00
- db $17,$3b,$00
- db $17,$3c,$00
- db $17,$3d,$00
- db $17,$3e,$00
- db $17,$3f,$00
- db $17,$1f,$00
-
-Subanimation00: ; 7a946 (1e:6946)
- db $41
- db $01,$17,$00
-
-Subanimation01: ; 7a94a (1e:694a)
- db $42
- db $01,$0f,$00
- db $01,$1d,$00
-
-Subanimation02: ; 7a951 (1e:6951)
- db $43
- db $01,$12,$00
- db $01,$15,$00
- db $01,$1c,$00
-
-Subanimation03: ; 7a95b (1e:695b)
- db $44
- db $01,$0b,$00
- db $01,$11,$00
- db $01,$18,$00
- db $01,$1d,$00
-
-Subanimation0c: ; 7a968 (1e:6968)
- db $43
- db $0c,$20,$00
- db $0c,$21,$00
- db $0c,$23,$00
-
-Subanimation0d: ; 7a972 (1e:6972)
- db $46
- db $0c,$20,$02
- db $0c,$15,$00
- db $0c,$21,$02
- db $0c,$17,$00
- db $0c,$23,$02
- db $0c,$19,$00
-
-Subanimation0e: ; 7a985 (1e:6985)
- db $49
- db $0c,$20,$02
- db $0c,$15,$02
- db $0c,$07,$00
- db $0c,$21,$02
- db $0c,$17,$02
- db $0c,$09,$00
- db $0c,$23,$02
- db $0c,$19,$02
- db $0c,$0c,$00
-
-Subanimation1f: ; 7a9a1 (1e:69a1)
- db $85
- db $0c,$30,$03
- db $0c,$40,$03
- db $0c,$41,$03
- db $0c,$42,$03
- db $0c,$21,$00
-
-Subanimation2e: ; 7a9b1 (1e:69b1)
- db $2e
- db $18,$43,$02
- db $75,$52,$04
- db $19,$43,$02
- db $75,$63,$04
- db $1a,$43,$02
- db $75,$4d,$04
- db $1b,$43,$02
- db $75,$97,$04
- db $1c,$43,$02
- db $75,$98,$04
- db $1d,$43,$02
- db $75,$58,$04
- db $1e,$43,$02
- db $75,$1b,$00
-
-Subanimation2f: ; 7a9dc (1e:69dc)
- db $44
- db $1f,$24,$00
- db $20,$20,$00
- db $21,$1a,$00
- db $22,$15,$00
-
-Subanimation30: ; 7a9e9 (1e:69e9)
- db $52
- db $23,$00,$02
- db $23,$02,$02
- db $23,$04,$00
- db $23,$07,$02
- db $23,$02,$02
- db $23,$04,$00
- db $23,$0e,$02
- db $23,$02,$02
- db $23,$0c,$00
- db $25,$07,$00
- db $25,$0e,$00
- db $25,$15,$00
- db $24,$24,$02
- db $23,$1c,$02
- db $23,$23,$00
- db $23,$21,$02
- db $24,$28,$00
- db $24,$28,$00
-
-Subanimation0f: ; 7aa20 (1e:6a20)
- db $4c
- db $26,$0e,$02
- db $26,$16,$02
- db $26,$1c,$00
- db $27,$0e,$02
- db $27,$16,$02
- db $27,$1c,$00
- db $28,$0e,$02
- db $28,$16,$02
- db $28,$1c,$00
- db $29,$0e,$02
- db $29,$16,$02
- db $29,$1c,$00
-
-Subanimation16: ; 7aa45 (1e:6a45)
- db $4c
- db $2a,$05,$00
- db $2b,$05,$02
- db $2b,$0c,$02
- db $2a,$11,$04
- db $2b,$11,$02
- db $2b,$17,$02
- db $2a,$1b,$04
- db $2b,$1b,$02
- db $2b,$20,$02
- db $2a,$2f,$04
- db $2c,$00,$02
- db $2c,$00,$00
-
-Subanimation10: ; 7aa6a (1e:6a6a)
- db $88
- db $2d,$44,$00
- db $2e,$45,$00
- db $2d,$46,$00
- db $2e,$47,$00
- db $2d,$48,$00
- db $2e,$49,$00
- db $2d,$2f,$00
- db $2e,$1a,$00
-
-Subanimation31: ; 7aa83 (1e:6a83)
- db $2a
- db $2f,$46,$00
- db $2f,$4a,$00
- db $2f,$4b,$00
- db $2f,$4c,$00
- db $2f,$4d,$00
- db $2f,$4e,$00
- db $2f,$4f,$00
- db $2f,$50,$00
- db $2f,$2e,$00
- db $2f,$51,$00
-
-Subanimation13: ; 7aaa2 (1e:6aa2)
- db $86
- db $30,$31,$00
- db $30,$32,$00
- db $30,$92,$00
- db $30,$0e,$00
- db $30,$0f,$00
- db $30,$10,$00
-
-Subanimation14: ; 7aab5 (1e:6ab5)
- db $49
- db $30,$10,$00
- db $30,$10,$03
- db $31,$1c,$04
- db $31,$21,$04
- db $31,$26,$00
- db $30,$10,$02
- db $31,$1d,$04
- db $31,$22,$04
- db $31,$27,$00
-
-Subanimation41: ; 7aad1 (1e:6ad1)
- db $85
- db $03,$31,$00
- db $03,$32,$00
- db $03,$92,$00
- db $03,$0e,$00
- db $03,$10,$00
-
-Subanimation42: ; 7aae1 (1e:6ae1)
- db $43
- db $48,$08,$00
- db $49,$08,$00
- db $5a,$08,$00
-
-Subanimation15: ; 7aaeb (1e:6aeb)
- db $22
- db $35,$52,$00
- db $35,$53,$00
-
-Subanimation17: ; 7aaf2 (1e:6af2)
- db $44
- db $36,$54,$00
- db $36,$55,$00
- db $37,$56,$00
- db $37,$57,$00
-
-Subanimation18: ; 7aaff (1e:6aff)
- db $a4
- db $36,$54,$00
- db $36,$55,$00
- db $37,$56,$00
- db $37,$57,$00
-
-Subanimation40: ; 7ab0c (1e:6b0c)
- db $46
- db $17,$54,$00
- db $17,$55,$00
- db $17,$0e,$00
- db $17,$56,$00
- db $17,$57,$00
- db $17,$13,$00
-
-Subanimation19: ; 7ab1f (1e:6b1f)
- db $8c
- db $38,$31,$00
- db $39,$31,$00
- db $38,$32,$00
- db $39,$32,$00
- db $38,$92,$00
- db $39,$92,$00
- db $38,$0e,$00
- db $39,$0e,$00
- db $38,$0f,$00
- db $39,$0f,$00
- db $38,$10,$00
- db $39,$10,$00
-
-Subanimation1a: ; 7ab44 (1e:6b44)
- db $50
- db $3a,$08,$00
- db $3b,$08,$00
- db $3c,$08,$00
- db $3d,$08,$00
- db $3e,$08,$00
- db $3f,$08,$00
- db $3e,$08,$00
- db $3f,$08,$00
- db $3a,$0b,$00
- db $3b,$0b,$00
- db $3c,$0b,$00
- db $3d,$0b,$00
- db $3e,$0b,$00
- db $3f,$0b,$00
- db $3e,$0b,$00
- db $3f,$0b,$00
-
-Subanimation1b: ; 7ab75 (1e:6b75)
- db $84
- db $40,$31,$00
- db $40,$32,$00
- db $40,$92,$00
- db $40,$15,$00
-
-Subanimation1c: ; 7ab82 (1e:6b82)
- db $43
- db $41,$58,$00
- db $41,$59,$00
- db $41,$21,$00
-
-Subanimation1d: ; 7ab8c (1e:6b8c)
- db $af
- db $24,$9a,$00
- db $23,$1b,$02
- db $24,$22,$00
- db $23,$16,$02
- db $23,$1d,$02
- db $24,$98,$00
- db $25,$2c,$04
- db $25,$2a,$04
- db $25,$99,$04
- db $25,$62,$04
- db $25,$99,$04
- db $25,$62,$04
- db $25,$99,$04
- db $25,$62,$04
- db $25,$99,$03
-
-Subanimation1e: ; 7abba (1e:6bba)
- db $01
- db $25,$75,$00
-
-Subanimation20: ; 7abbe (1e:6bbe)
- db $42
- db $42,$07,$00
- db $43,$07,$00
-
-Subanimation21: ; 7abc5 (1e:6bc5)
- db $43
- db $44,$00,$00
- db $45,$08,$00
- db $46,$10,$02
-
-Subanimation22: ; 7abcf (1e:6bcf)
- db $8b
- db $47,$10,$00
- db $47,$56,$00
- db $47,$07,$00
- db $47,$aa,$00
- db $47,$ab,$00
- db $47,$ac,$00
- db $47,$ad,$00
- db $47,$ae,$00
- db $47,$af,$00
- db $47,$89,$00
- db $47,$b0,$00
-
-Subanimation2d: ; 7abf1 (1e:6bf1)
- db $66
- db $44,$64,$00
- db $45,$65,$00
- db $46,$66,$00
- db $47,$66,$00
- db $47,$66,$00
- db $47,$66,$00
-
-Subanimation39: ; 7ac04 (1e:6c04)
- db $61
- db $47,$67,$00
-
-Subanimation4e: ; 7ac08 (1e:6c08)
- db $41
- db $71,$0f,$03
-
-Subanimation4f: ; 7ac0c (1e:6c0c)
- db $47
- db $71,$0f,$00
- db $71,$08,$00
- db $71,$01,$00
- db $71,$95,$00
- db $72,$95,$00
- db $73,$95,$00
- db $74,$95,$00
-
-Subanimation50: ; 7ac22 (1e:6c22)
- db $48
- db $74,$95,$00
- db $73,$95,$00
- db $72,$95,$00
- db $71,$95,$00
- db $71,$01,$00
- db $71,$08,$00
- db $71,$0f,$00
- db $71,$16,$00
-
-Subanimation29: ; 7ac3b (1e:6c3b)
- db $5d
- db $48,$0f,$00
- db $4a,$68,$03
- db $4b,$2a,$03
- db $49,$0f,$00
- db $4a,$68,$03
- db $4b,$2a,$00
- db $4c,$6a,$03
- db $4d,$69,$03
- db $49,$6b,$00
- db $4c,$6a,$03
- db $4d,$69,$00
- db $4a,$68,$03
- db $4b,$2a,$03
- db $49,$6c,$00
- db $4a,$68,$03
- db $4b,$2a,$00
- db $4c,$6a,$03
- db $4d,$69,$03
- db $49,$6d,$00
- db $4c,$6a,$03
- db $4d,$2a,$00
- db $4a,$68,$03
- db $4b,$2a,$03
- db $49,$0f,$00
- db $4a,$68,$03
- db $4b,$2a,$00
- db $4c,$6a,$03
- db $4d,$2a,$03
- db $49,$6b,$00
-
-Subanimation2a: ; 7ac93 (1e:6c93)
- db $44
- db $4e,$2b,$00
- db $4f,$2b,$00
- db $50,$2b,$00
- db $50,$2b,$00
-
-Subanimation23: ; 7aca0 (1e:6ca0)
- db $42
- db $51,$2d,$00
- db $51,$6e,$00
-
-Subanimation24: ; 7aca7 (1e:6ca7)
- db $a2
- db $51,$2d,$00
- db $51,$6e,$00
-
-Subanimation25: ; 7acae (1e:6cae)
- db $62
- db $52,$71,$00
- db $52,$72,$00
-
-Subanimation26: ; 7acb5 (1e:6cb5)
- db $02
- db $52,$01,$00
- db $52,$2c,$00
-
-Subanimation3a: ; 7acbc (1e:6cbc)
- db $63
- db $53,$71,$00
- db $53,$7f,$00
- db $53,$81,$00
-
-Subanimation3b: ; 7acc6 (1e:6cc6)
- db $03
- db $53,$01,$00
- db $53,$15,$00
- db $53,$2c,$00
-
-Subanimation27: ; 7acd0 (1e:6cd0)
- db $a2
- db $54,$01,$00
- db $54,$2c,$00
-
-Subanimation28: ; 7acd7 (1e:6cd7)
- db $23
- db $55,$73,$03
- db $56,$73,$03
- db $57,$73,$00
-
-Subanimation32: ; 7ace1 (1e:6ce1)
- db $63
- db $47,$74,$00
- db $47,$43,$00
- db $47,$75,$00
-
-Subanimation33: ; 7aceb (1e:6ceb)
- db $26
- db $58,$76,$00
- db $34,$76,$00
- db $58,$76,$00
- db $34,$76,$00
- db $58,$76,$00
- db $34,$76,$00
-
-Subanimation3c: ; 7acfe (1e:6cfe)
- db $67
- db $59,$79,$03
- db $59,$7b,$03
- db $59,$77,$03
- db $59,$7a,$03
- db $59,$78,$03
- db $59,$7c,$03
- db $59,$76,$00
-
-Subanimation3d: ; 7ad14 (1e:6d14)
- db $08
- db $3a,$4d,$00
- db $3b,$4d,$00
- db $3c,$4d,$00
- db $3d,$4d,$00
- db $3e,$4d,$00
- db $3f,$4d,$00
- db $3e,$4d,$00
- db $3f,$4d,$00
-
-Subanimation34: ; 7ad2d (1e:6d2d)
- db $35
- db $48,$7d,$00
- db $49,$7d,$00
- db $5a,$7d,$00
- db $48,$30,$00
- db $49,$30,$00
- db $5a,$30,$00
- db $48,$7e,$00
- db $49,$7e,$00
- db $5a,$7e,$00
- db $48,$7f,$00
- db $49,$7f,$00
- db $5a,$7f,$00
- db $48,$80,$00
- db $49,$80,$00
- db $5a,$80,$00
- db $48,$81,$00
- db $49,$81,$00
- db $5a,$81,$00
- db $48,$82,$00
- db $49,$82,$00
- db $5a,$82,$00
-
-Subanimation35: ; 7ad6d (1e:6d6d)
- db $24
- db $5b,$83,$03
- db $5c,$84,$03
- db $5d,$85,$03
- db $5e,$09,$00
-
-Subanimation36: ; 7ad7a (1e:6d7a)
- db $48
- db $5f,$2a,$00
- db $5f,$00,$00
- db $60,$2a,$00
- db $60,$00,$00
- db $61,$2a,$00
- db $61,$00,$00
- db $62,$2a,$00
- db $62,$00,$00
-
-Subanimation37: ; 7ad93 (1e:6d93)
- db $2a
- db $63,$89,$00
- db $64,$75,$00
- db $63,$76,$00
- db $65,$0d,$00
- db $65,$86,$00
- db $65,$12,$00
- db $65,$87,$00
- db $65,$17,$00
- db $65,$88,$00
- db $65,$1a,$00
-
-Subanimation38: ; 7adb2 (1e:6db2)
- db $50
- db $66,$8a,$00
- db $66,$33,$00
- db $66,$2e,$00
- db $67,$24,$03
- db $66,$01,$04
- db $66,$10,$04
- db $66,$1d,$04
- db $67,$28,$03
- db $66,$2a,$04
- db $66,$0e,$04
- db $66,$1b,$04
- db $67,$26,$03
- db $66,$03,$04
- db $66,$12,$04
- db $66,$1e,$04
- db $67,$29,$00
-
-Subanimation3e: ; 7ade3 (1e:6de3)
- db $92
- db $02,$31,$00
- db $34,$31,$00
- db $02,$31,$00
- db $02,$32,$00
- db $34,$32,$00
- db $02,$32,$00
- db $02,$92,$00
- db $34,$92,$00
- db $02,$92,$00
- db $02,$0e,$00
- db $34,$0e,$00
- db $02,$0e,$00
- db $02,$0f,$00
- db $34,$0f,$00
- db $02,$0f,$00
- db $02,$10,$00
- db $34,$10,$00
- db $02,$10,$00
-
-Subanimation3f: ; 7ae1a (1e:6e1a)
- db $72
- db $68,$4b,$00
- db $68,$8c,$00
- db $68,$20,$00
- db $68,$1c,$00
- db $68,$19,$00
- db $68,$14,$00
- db $68,$76,$00
- db $68,$8d,$00
- db $68,$15,$00
- db $68,$10,$00
- db $68,$0c,$00
- db $68,$06,$00
- db $68,$8e,$00
- db $68,$8f,$00
- db $68,$90,$00
- db $68,$26,$00
- db $68,$23,$00
- db $68,$1f,$00
-
-Subanimation44: ; 7ae51 (1e:6e51)
- db $2c
- db $69,$4b,$00
- db $69,$8c,$00
- db $69,$20,$00
- db $69,$1c,$00
- db $69,$19,$00
- db $69,$14,$00
- db $69,$76,$00
- db $69,$8d,$00
- db $69,$15,$00
- db $69,$10,$00
- db $69,$0c,$00
- db $69,$06,$00
-
-Subanimation43: ; 7ae76 (1e:6e76)
- db $a3
- db $6a,$07,$00
- db $6b,$0f,$00
- db $6c,$17,$00
-
-Subanimation45: ; 7ae80 (1e:6e80)
- db $24
- db $6d,$8b,$00
- db $6d,$84,$00
- db $6d,$63,$00
- db $6d,$8c,$00
-
-Subanimation46: ; 7ae8d (1e:6e8d)
- db $26
- db $6d,$8b,$00
- db $6d,$84,$00
- db $6d,$63,$00
- db $6d,$8c,$00
- db $6d,$0a,$00
- db $6d,$89,$00
-
-Subanimation47: ; 7aea0 (1e:6ea0)
- db $23
- db $06,$82,$00
- db $07,$82,$00
- db $08,$96,$00
-
-Subanimation48: ; 7aeaa (1e:6eaa)
- db $06
- db $03,$41,$04
- db $03,$48,$04
- db $04,$48,$04
- db $03,$48,$04
- db $05,$48,$04
- db $03,$48,$03
-
-Subanimation49: ; 7aebd (1e:6ebd)
- db $04
- db $04,$48,$04
- db $03,$48,$04
- db $05,$48,$04
- db $03,$48,$03
-
-Subanimation4a: ; 7aeca (1e:6eca)
- db $01
- db $04,$84,$03
-
-Subanimation4b: ; 7aece (1e:6ece)
- db $03
- db $06,$72,$00
- db $07,$72,$00
- db $08,$72,$00
-
-Subanimation4c: ; 7aed8 (1e:6ed8)
- db $68
- db $6f,$30,$00
- db $6e,$30,$00
- db $70,$30,$00
- db $6e,$30,$00
- db $6f,$30,$00
- db $6e,$30,$00
- db $70,$30,$00
- db $6e,$30,$00
-
-Subanimation4d: ; 7aef1 (1e:6ef1)
- db $26
- db $32,$4b,$00
- db $33,$4f,$00
- db $32,$20,$00
- db $33,$16,$00
- db $32,$19,$00
- db $33,$0d,$00
-
-Subanimation51: ; 7af04 (1e:6f04)
- db $a6
- db $76,$1b,$00
- db $34,$1b,$00
- db $76,$1b,$00
- db $34,$1b,$00
- db $76,$1b,$00
- db $34,$1b,$00
-
-Subanimation52: ; 7af17 (1e:6f17)
- db $47
- db $77,$25,$00
- db $77,$9b,$00
- db $77,$1a,$00
- db $77,$9c,$00
- db $77,$2f,$00
- db $77,$50,$00
- db $77,$8c,$00
-
-Subanimation53: ; 7af2d (1e:6f2d)
- db $0c
- db $78,$30,$00
- db $78,$a2,$00
- db $78,$93,$00
- db $78,$61,$00
- db $78,$73,$00
- db $78,$a7,$00
- db $78,$33,$00
- db $78,$a8,$00
- db $78,$0e,$00
- db $78,$a9,$00
- db $78,$34,$00
- db $01,$9e,$00
-
-Subanimation54: ; 7af52 (1e:6f52)
- db $0b
- db $79,$30,$00
- db $79,$a2,$00
- db $79,$93,$00
- db $79,$61,$00
- db $79,$73,$00
- db $79,$a7,$00
- db $79,$33,$00
- db $79,$a8,$00
- db $79,$0e,$00
- db $79,$a9,$00
- db $79,$34,$00
-
-FrameBlockPointers: ; 7af74 (1e:6f74)
- dw FrameBlock00
- dw FrameBlock01
- dw FrameBlock02
- dw FrameBlock03
- dw FrameBlock04
- dw FrameBlock05
- dw FrameBlock06
- dw FrameBlock07
- dw FrameBlock08
- dw FrameBlock09
- dw FrameBlock0a
- dw FrameBlock0b
- dw FrameBlock0c
- dw FrameBlock0d
- dw FrameBlock0e
- dw FrameBlock0f
- dw FrameBlock10
- dw FrameBlock11
- dw FrameBlock12
- dw FrameBlock13
- dw FrameBlock14
- dw FrameBlock15
- dw FrameBlock16
- dw FrameBlock17
- dw FrameBlock18
- dw FrameBlock19
- dw FrameBlock1a
- dw FrameBlock1b
- dw FrameBlock1c
- dw FrameBlock1d
- dw FrameBlock1e
- dw FrameBlock1f
- dw FrameBlock20
- dw FrameBlock21
- dw FrameBlock22
- dw FrameBlock23
- dw FrameBlock24
- dw FrameBlock25
- dw FrameBlock26
- dw FrameBlock27
- dw FrameBlock28
- dw FrameBlock29
- dw FrameBlock2a
- dw FrameBlock2b
- dw FrameBlock2c
- dw FrameBlock2d
- dw FrameBlock2e
- dw FrameBlock2f
- dw FrameBlock30
- dw FrameBlock31
- dw FrameBlock32
- dw FrameBlock33
- dw FrameBlock34
- dw FrameBlock35
- dw FrameBlock36
- dw FrameBlock37
- dw FrameBlock38
- dw FrameBlock39
- dw FrameBlock3a
- dw FrameBlock3b
- dw FrameBlock3c
- dw FrameBlock3d
- dw FrameBlock3e
- dw FrameBlock3f
- dw FrameBlock40
- dw FrameBlock41
- dw FrameBlock42
- dw FrameBlock43
- dw FrameBlock44
- dw FrameBlock45
- dw FrameBlock46
- dw FrameBlock47
- dw SmallBlackCircleFrameBlock
- dw LargeBlockCircleFrameBlock
- dw FrameBlock4a
- dw FrameBlock4b
- dw FrameBlock4c
- dw FrameBlock4d
- dw FrameBlock4e
- dw FrameBlock4f
- dw FrameBlock50
- dw FrameBlock51
- dw FrameBlock52
- dw FrameBlock53
- dw FrameBlock54
- dw FrameBlock55
- dw FrameBlock56
- dw FrameBlock57
- dw FrameBlock58
- dw FrameBlock59
- dw FrameBlock5a
- dw FrameBlock5b
- dw FrameBlock5c
- dw FrameBlock5d
- dw FrameBlock5e
- dw FrameBlock5f
- dw FrameBlock60
- dw FrameBlock61
- dw FrameBlock62
- dw FrameBlock63
- dw FrameBlock64
- dw FrameBlock65
- dw FrameBlock66
- dw FrameBlock67
- dw FrameBlock68
- dw FrameBlock69
- dw FrameBlock6a
- dw FrameBlock6b
- dw FrameBlock6c
- dw FrameBlock6d
- dw FrameBlock6e
- dw FrameBlock6f
- dw FrameBlock70
- dw FrameBlock71
- dw FrameBlock72
- dw FrameBlock73
- dw FrameBlock74
- dw FrameBlock75
- dw FrameBlock76
- dw FrameBlock77
- dw FrameBlock78
- dw FrameBlock79
-
-; FrameBlock format is as follows:
-; first byte = number of tiles in FrameBlock
-;
-; Next, each group of 4 bytes describes a tile in the FrameBlock
-; first byte = y offset
-; second byte = x offset
-; third byte = tile id (it's actually tile id - $31)
-; fourth byte = tile properties (xflip/yflip/etc.)
-FrameBlock01: ; 7b068 (1e:7068)
- db $09
- db $00,$00,$2c,$00
- db $00,$08,$2d,$00
- db $00,$10,$2c,$20
- db $08,$00,$3c,$00
- db $08,$08,$3d,$00
- db $08,$10,$3c,$20
- db $10,$00,$2c,$40
- db $10,$08,$2d,$40
- db $10,$10,$2c,$60
-
-FrameBlock02: ; 7b08d (1e:708d)
- db $10
- db $00,$00,$20,$00
- db $00,$08,$21,$00
- db $00,$10,$21,$20
- db $00,$18,$20,$20
- db $08,$00,$30,$00
- db $08,$08,$31,$00
- db $08,$10,$31,$20
- db $08,$18,$30,$20
- db $10,$00,$30,$40
- db $10,$08,$31,$40
- db $10,$10,$31,$60
- db $10,$18,$30,$60
- db $18,$00,$20,$40
- db $18,$08,$21,$40
- db $18,$10,$21,$60
- db $18,$18,$20,$60
-
-FrameBlock03: ; 7b0ce (1e:70ce)
- db $04
- db $00,$00,$02,$00
- db $00,$08,$02,$20
- db $08,$00,$12,$00
- db $08,$08,$12,$20
-
-FrameBlock04: ; 7b0df (1e:70df)
- db $04
- db $00,$00,$06,$00
- db $00,$08,$07,$00
- db $08,$00,$16,$00
- db $08,$08,$17,$00
-
-FrameBlock05: ; 7b0f0 (1e:70f0)
- db $04
- db $00,$00,$07,$20
- db $00,$08,$06,$20
- db $08,$00,$17,$20
- db $08,$08,$16,$20
-
-FrameBlock06: ; 7b101 (1e:7101)
- db $0c
- db $00,$08,$23,$00
- db $08,$00,$32,$00
- db $08,$08,$33,$00
- db $00,$10,$23,$20
- db $08,$10,$33,$20
- db $08,$18,$32,$20
- db $10,$00,$32,$40
- db $10,$08,$33,$40
- db $18,$08,$23,$40
- db $10,$10,$33,$60
- db $10,$18,$32,$60
- db $18,$10,$23,$60
-
-FrameBlock07: ; 7b132 (1e:7132)
- db $10
- db $00,$00,$20,$00
- db $00,$08,$21,$00
- db $08,$00,$30,$00
- db $08,$08,$31,$00
- db $00,$10,$21,$20
- db $00,$18,$20,$20
- db $08,$10,$31,$20
- db $08,$18,$30,$20
- db $10,$00,$30,$40
- db $10,$08,$31,$40
- db $18,$00,$20,$40
- db $18,$08,$21,$40
- db $10,$10,$31,$60
- db $10,$18,$30,$60
- db $18,$10,$21,$60
- db $18,$18,$20,$60
-
-FrameBlock08: ; 7b173 (1e:7173)
- db $10
- db $00,$00,$20,$00
- db $00,$08,$21,$00
- db $08,$00,$30,$00
- db $08,$08,$31,$00
- db $00,$18,$21,$20
- db $00,$20,$20,$20
- db $08,$18,$31,$20
- db $08,$20,$30,$20
- db $18,$00,$30,$40
- db $18,$08,$31,$40
- db $20,$00,$20,$40
- db $20,$08,$21,$40
- db $18,$18,$31,$60
- db $18,$20,$30,$60
- db $20,$18,$21,$60
- db $20,$20,$20,$60
-
-FrameBlock09: ; 7b1b4 (1e:71b4)
- db $0c
- db $00,$00,$24,$00
- db $00,$08,$25,$00
- db $08,$00,$34,$00
- db $00,$18,$25,$20
- db $00,$20,$24,$20
- db $08,$20,$34,$20
- db $18,$00,$34,$40
- db $20,$00,$24,$40
- db $20,$08,$25,$40
- db $18,$20,$34,$60
- db $20,$18,$25,$60
- db $20,$20,$24,$60
-
-FrameBlock0a: ; 7b1e5 (1e:71e5)
- db $0c
- db $00,$00,$24,$00
- db $00,$08,$25,$00
- db $08,$00,$34,$00
- db $00,$20,$25,$20
- db $00,$28,$24,$20
- db $08,$28,$34,$20
- db $20,$00,$34,$40
- db $28,$00,$24,$40
- db $28,$08,$25,$40
- db $20,$28,$34,$60
- db $28,$20,$25,$60
- db $28,$28,$24,$60
-
-FrameBlock0b: ; 7b216 (1e:7216)
- db $04
- db $00,$00,$05,$00
- db $00,$08,$05,$20
- db $08,$00,$15,$00
- db $08,$08,$15,$20
-
-FrameBlock0c: ; 7b227 (1e:7227)
- db $04
- db $00,$00,$04,$00
- db $00,$08,$04,$20
- db $08,$00,$14,$00
- db $08,$08,$14,$20
-
-FrameBlock0d: ; 7b238 (1e:7238)
- db $08
- db $00,$00,$0c,$00
- db $00,$08,$0d,$00
- db $08,$00,$1c,$00
- db $08,$08,$1d,$00
- db $10,$00,$1d,$60
- db $10,$08,$1c,$60
- db $18,$00,$0d,$60
- db $18,$08,$0c,$60
-
-FrameBlock0e: ; 7b259 (1e:7259)
- db $04
- db $20,$00,$0c,$00
- db $20,$08,$0d,$00
- db $28,$00,$1c,$00
- db $28,$08,$1d,$00
-
-FrameBlock0f: ; 7b26a (1e:726a)
- db $04
- db $30,$00,$1d,$60
- db $30,$08,$1c,$60
- db $38,$00,$0d,$60
- db $38,$08,$0c,$60
-
-FrameBlock10: ; 7b27b (1e:727b)
- db $08
- db $00,$00,$0e,$00
- db $00,$08,$0f,$00
- db $08,$00,$1e,$00
- db $08,$08,$1f,$00
- db $00,$10,$0f,$20
- db $00,$18,$0e,$20
- db $08,$10,$1f,$20
- db $08,$18,$1e,$20
-
-FrameBlock11: ; 7b29c (1e:729c)
- db $08
- db $00,$00,$0e,$00
- db $00,$08,$0f,$00
- db $08,$00,$1e,$00
- db $08,$08,$1f,$00
- db $00,$20,$0f,$20
- db $00,$28,$0e,$20
- db $08,$20,$1f,$20
- db $08,$28,$1e,$20
-
-FrameBlock12: ; 7b2bd (1e:72bd)
- db $03
- db $00,$00,$37,$00
- db $08,$10,$37,$00
- db $00,$20,$37,$00
-
-FrameBlock13: ; 7b2ca (1e:72ca)
- db $04
- db $00,$00,$36,$00
- db $00,$08,$36,$20
- db $08,$00,$36,$40
- db $08,$08,$36,$60
-
-FrameBlock14: ; 7b2db (1e:72db)
- db $08
- db $00,$10,$28,$00
- db $00,$18,$28,$20
- db $08,$10,$38,$00
- db $08,$18,$38,$20
- db $00,$20,$36,$00
- db $00,$28,$36,$20
- db $08,$20,$36,$40
- db $08,$28,$36,$60
-
-FrameBlock15: ; 7b2fc (1e:72fc)
- db $0c
- db $00,$00,$28,$00
- db $00,$08,$28,$20
- db $08,$00,$38,$00
- db $08,$08,$38,$20
- db $00,$10,$29,$00
- db $00,$18,$29,$20
- db $08,$10,$39,$00
- db $08,$18,$39,$20
- db $00,$20,$28,$00
- db $00,$28,$28,$20
- db $08,$20,$38,$00
- db $08,$28,$38,$20
-
-FrameBlock16: ; 7b32d (1e:732d)
- db $08
- db $00,$00,$29,$00
- db $00,$08,$29,$20
- db $08,$00,$39,$00
- db $08,$08,$39,$20
- db $00,$20,$29,$00
- db $00,$28,$29,$20
- db $08,$20,$39,$00
- db $08,$28,$39,$20
-
-FrameBlock17: ; 7b34e (1e:734e)
- db $04
- db $00,$00,$08,$00
- db $00,$08,$09,$00
- db $08,$00,$18,$00
- db $08,$08,$19,$00
-
-FrameBlock18: ; 7b35f (1e:735f)
- db $01
- db $18,$00,$45,$60
-
-FrameBlock19: ; 7b364 (1e:7364)
- db $02
- db $18,$08,$45,$00
- db $10,$08,$46,$60
-
-FrameBlock1a: ; 7b36d (1e:736d)
- db $02
- db $10,$10,$45,$60
- db $18,$10,$46,$00
-
-FrameBlock1b: ; 7b376 (1e:7376)
- db $02
- db $10,$18,$45,$00
- db $08,$18,$46,$60
-
-FrameBlock1c: ; 7b37f (1e:737f)
- db $02
- db $08,$20,$45,$60
- db $10,$20,$46,$00
-
-FrameBlock1d: ; 7b388 (1e:7388)
- db $02
- db $08,$28,$45,$00
- db $00,$28,$46,$60
-
-FrameBlock1e: ; 7b391 (1e:7391)
- db $02
- db $00,$30,$45,$60
- db $08,$30,$46,$00
-
-FrameBlock75: ; 7b39a (1e:739a)
- db $04
- db $00,$00,$43,$00
- db $00,$08,$43,$20
- db $08,$00,$22,$00
- db $08,$08,$43,$60
-
-FrameBlock1f: ; 7b3ab (1e:73ab)
- db $02
- db $00,$00,$03,$00
- db $00,$30,$03,$20
-
-FrameBlock20: ; 7b3b4 (1e:73b4)
- db $06
- db $00,$00,$03,$00
- db $00,$30,$03,$20
- db $08,$08,$03,$00
- db $08,$28,$03,$20
- db $08,$00,$13,$00
- db $08,$30,$13,$20
-
-FrameBlock21: ; 7b3cd (1e:73cd)
- db $0c
- db $00,$00,$03,$00
- db $00,$30,$03,$20
- db $08,$08,$03,$00
- db $08,$28,$03,$20
- db $08,$00,$13,$00
- db $08,$30,$13,$20
- db $10,$10,$03,$00
- db $10,$20,$03,$20
- db $10,$08,$13,$00
- db $10,$28,$13,$20
- db $10,$00,$03,$00
- db $10,$30,$03,$20
-
-FrameBlock22: ; 7b3fe (1e:73fe)
- db $13
- db $00,$00,$03,$00
- db $08,$00,$13,$00
- db $10,$00,$03,$00
- db $18,$00,$13,$00
- db $08,$08,$03,$00
- db $10,$08,$13,$00
- db $18,$08,$03,$00
- db $10,$10,$03,$00
- db $18,$10,$13,$00
- db $18,$18,$03,$00
- db $10,$20,$03,$20
- db $18,$20,$13,$20
- db $08,$28,$03,$20
- db $10,$28,$13,$20
- db $18,$28,$03,$20
- db $00,$30,$03,$20
- db $08,$30,$13,$20
- db $10,$30,$03,$20
- db $18,$30,$13,$20
-
-FrameBlock23: ; 7b44b (1e:744b)
- db $04
- db $00,$00,$0a,$00
- db $00,$08,$0b,$00
- db $08,$00,$1a,$00
- db $08,$08,$1b,$00
-
-FrameBlock24: ; 7b45c (1e:745c)
- db $02
- db $08,$00,$0a,$00
- db $08,$08,$0b,$00
-
-FrameBlock25: ; 7b465 (1e:7465)
- db $0c
- db $10,$00,$0a,$00
- db $10,$08,$0b,$00
- db $18,$00,$1a,$00
- db $18,$08,$1b,$00
- db $00,$10,$0a,$00
- db $00,$18,$0b,$00
- db $08,$10,$1a,$00
- db $08,$18,$1b,$00
- db $08,$20,$0a,$00
- db $08,$28,$0b,$00
- db $10,$20,$1a,$00
- db $10,$28,$1b,$00
-
-FrameBlock26: ; 7b496 (1e:7496)
- db $04
- db $00,$10,$44,$00
- db $00,$18,$44,$20
- db $08,$10,$44,$40
- db $08,$18,$44,$60
-
-FrameBlock27: ; 7b4a7 (1e:74a7)
- db $05
- db $08,$08,$44,$00
- db $08,$10,$44,$20
- db $10,$08,$44,$40
- db $10,$10,$44,$60
- db $00,$18,$47,$00
-
-FrameBlock28: ; 7b4bc (1e:74bc)
- db $06
- db $10,$00,$44,$00
- db $10,$08,$44,$20
- db $18,$00,$44,$40
- db $18,$08,$44,$60
- db $08,$10,$47,$00
- db $02,$16,$47,$00
-
-FrameBlock29: ; 7b4d5 (1e:74d5)
- db $04
- db $18,$00,$47,$00
- db $12,$06,$47,$00
- db $0c,$0c,$47,$00
- db $06,$12,$47,$00
-
-FrameBlock2a: ; 7b4e6 (1e:74e6)
- db $04
- db $00,$00,$44,$00
- db $00,$08,$44,$20
- db $08,$00,$44,$40
- db $08,$08,$44,$60
-
-FrameBlock2b: ; 7b4f7 (1e:74f7)
- db $02
- db $06,$02,$47,$00
- db $00,$08,$47,$00
-
-FrameBlock2c: ; 7b500 (1e:7500)
- db $01
- db $a0,$00,$4d,$00
-
-FrameBlock2d: ; 7b505 (1e:7505)
- db $08
- db $00,$00,$26,$00
- db $00,$08,$27,$00
- db $08,$00,$36,$00
- db $08,$08,$37,$00
- db $10,$00,$28,$00
- db $10,$08,$29,$00
- db $18,$00,$38,$00
- db $18,$08,$39,$00
-
-FrameBlock2e: ; 7b526 (1e:7526)
- db $08
- db $00,$00,$27,$20
- db $00,$08,$26,$20
- db $08,$00,$37,$20
- db $08,$08,$36,$20
- db $10,$00,$29,$20
- db $10,$08,$28,$20
- db $18,$00,$39,$20
- db $18,$08,$38,$20
-
-FrameBlock2f: ; 7b547 (1e:7547)
- db $04
- db $00,$00,$0c,$00
- db $00,$08,$0d,$00
- db $08,$00,$0c,$40
- db $08,$08,$0d,$40
-
-FrameBlock30: ; 7b558 (1e:7558)
- db $04
- db $00,$00,$44,$00
- db $00,$08,$44,$20
- db $08,$00,$44,$40
- db $08,$08,$44,$60
-
-FrameBlock31: ; 7b569 (1e:7569)
- db $01
- db $00,$00,$45,$00
-
-FrameBlock32: ; 7b56e (1e:756e)
- db $07
- db $00,$00,$4d,$00
- db $00,$08,$2f,$00
- db $00,$10,$4d,$20
- db $08,$00,$4e,$00
- db $08,$08,$07,$00
- db $08,$10,$4e,$20
- db $10,$08,$3f,$00
-
-FrameBlock33: ; 7b58b (1e:758b)
- db $07
- db $00,$08,$3f,$40
- db $08,$00,$4e,$40
- db $08,$08,$07,$40
- db $08,$10,$4e,$60
- db $10,$00,$4d,$40
- db $10,$08,$2f,$40
- db $10,$10,$4d,$60
-
-FrameBlock34: ; 7b5a8 (1e:75a8)
- db $01
- db $a0,$00,$00,$10
-
-FrameBlock35: ; 7b5ad (1e:75ad)
- db $06
- db $00,$00,$2a,$00
- db $00,$08,$2b,$00
- db $08,$00,$3a,$00
- db $10,$00,$3a,$40
- db $18,$00,$2a,$40
- db $18,$08,$2b,$40
-
-FrameBlock36: ; 7b5c6 (1e:75c6)
- db $04
- db $00,$00,$00,$00
- db $00,$08,$01,$00
- db $08,$00,$10,$00
- db $08,$08,$11,$00
-
-FrameBlock37: ; 7b5d7 (1e:75d7)
- db $04
- db $00,$00,$01,$a0
- db $00,$08,$00,$a0
- db $08,$00,$11,$a0
- db $08,$08,$10,$a0
-
-FrameBlock38: ; 7b5e8 (1e:75e8)
- db $04
- db $00,$00,$0a,$00
- db $00,$08,$0b,$00
- db $08,$00,$1a,$00
- db $08,$08,$1b,$00
-
-FrameBlock39: ; 7b5f9 (1e:75f9)
- db $04
- db $00,$00,$0b,$20
- db $00,$08,$0a,$20
- db $08,$00,$1b,$20
- db $08,$08,$1a,$20
-
-FrameBlock3a: ; 7b60a (1e:760a)
- db $04
- db $20,$00,$05,$00
- db $20,$08,$05,$20
- db $28,$00,$15,$00
- db $28,$08,$15,$20
-
-FrameBlock3b: ; 7b61b (1e:761b)
- db $05
- db $18,$00,$04,$00
- db $18,$08,$04,$20
- db $20,$00,$14,$00
- db $20,$08,$14,$20
- db $28,$04,$41,$00
-
-FrameBlock3c: ; 7b630 (1e:7630)
- db $06
- db $10,$00,$05,$00
- db $10,$08,$05,$20
- db $18,$00,$15,$00
- db $18,$08,$15,$20
- db $20,$04,$42,$00
- db $28,$04,$42,$00
-
-FrameBlock3d: ; 7b649 (1e:7649)
- db $07
- db $08,$00,$04,$00
- db $08,$08,$04,$20
- db $10,$00,$14,$00
- db $10,$08,$14,$20
- db $18,$04,$41,$00
- db $20,$04,$41,$00
- db $28,$04,$41,$00
-
-FrameBlock3e: ; 7b666 (1e:7666)
- db $08
- db $00,$00,$05,$00
- db $00,$08,$05,$20
- db $08,$00,$15,$00
- db $08,$08,$15,$20
- db $10,$04,$42,$00
- db $18,$04,$42,$00
- db $20,$04,$42,$00
- db $28,$04,$42,$00
-
-FrameBlock3f: ; 7b687 (1e:7687)
- db $08
- db $00,$00,$04,$00
- db $00,$08,$04,$20
- db $08,$00,$14,$00
- db $08,$08,$14,$20
- db $10,$04,$41,$00
- db $18,$04,$41,$00
- db $20,$04,$41,$00
- db $28,$04,$41,$00
-
-FrameBlock40: ; 7b6a8 (1e:76a8)
- db $03
- db $00,$00,$3d,$00
- db $00,$08,$3d,$00
- db $08,$08,$3d,$00
-
-FrameBlock41: ; 7b6b5 (1e:76b5)
- db $04
- db $00,$00,$06,$00
- db $00,$08,$06,$20
- db $08,$00,$16,$00
- db $08,$08,$17,$00
-
-FrameBlock42: ; 7b6c6 (1e:76c6)
- db $0b
- db $00,$10,$42,$00
- db $08,$00,$42,$00
- db $08,$08,$42,$00
- db $08,$10,$42,$00
- db $08,$18,$42,$00
- db $08,$20,$42,$00
- db $10,$10,$42,$00
- db $18,$08,$42,$00
- db $18,$18,$42,$00
- db $20,$00,$42,$00
- db $20,$20,$42,$00
-
-FrameBlock43: ; 7b6f3 (1e:76f3)
- db $0b
- db $00,$10,$41,$00
- db $08,$00,$41,$00
- db $08,$08,$41,$00
- db $08,$10,$41,$00
- db $08,$18,$41,$00
- db $08,$20,$41,$00
- db $10,$10,$41,$00
- db $18,$08,$41,$00
- db $18,$18,$41,$00
- db $20,$00,$41,$00
- db $20,$20,$41,$00
-
-FrameBlock44: ; 7b720 (1e:7720)
- db $04
- db $00,$00,$49,$00
- db $00,$28,$49,$00
- db $28,$00,$49,$00
- db $28,$28,$49,$00
-
-FrameBlock45: ; 7b731 (1e:7731)
- db $04
- db $00,$00,$49,$00
- db $00,$18,$49,$00
- db $18,$00,$49,$00
- db $18,$18,$49,$00
-
-FrameBlock46: ; 7b742 (1e:7742)
- db $04
- db $00,$00,$49,$00
- db $00,$08,$49,$00
- db $08,$00,$49,$00
- db $08,$08,$49,$00
-
-FrameBlock47: ; 7b753 (1e:7753)
- db $04
- db $00,$00,$43,$00
- db $00,$08,$43,$20
- db $08,$00,$43,$40
- db $08,$08,$43,$60
-
-SmallBlackCircleFrameBlock: ; 7b764 (1e:7764)
- db $04
- db $08,$08,$33,$00
- db $08,$10,$33,$20
- db $10,$08,$33,$40
- db $10,$10,$33,$60
-
-LargeBlockCircleFrameBlock: ; 7b775 (1e:7775)
- db $10
- db $00,$00,$22,$00
- db $00,$08,$23,$00
- db $00,$10,$23,$20
- db $00,$18,$22,$20
- db $08,$00,$32,$00
- db $08,$08,$43,$00
- db $08,$10,$43,$20
- db $08,$18,$32,$20
- db $10,$00,$32,$40
- db $10,$08,$43,$40
- db $10,$10,$43,$60
- db $10,$18,$32,$60
- db $18,$00,$22,$40
- db $18,$08,$23,$40
- db $18,$10,$23,$60
- db $18,$18,$22,$60
-
-FrameBlock71: ; 7b7b6 (1e:77b6)
- db $10
- db $00,$00,$22,$00
- db $00,$08,$3b,$00
- db $00,$10,$23,$20
- db $00,$18,$22,$20
- db $08,$00,$32,$00
- db $08,$08,$43,$00
- db $08,$10,$43,$20
- db $08,$18,$32,$20
- db $10,$00,$32,$40
- db $10,$08,$43,$40
- db $10,$10,$43,$60
- db $10,$18,$32,$60
- db $18,$00,$22,$40
- db $18,$08,$23,$40
- db $18,$10,$23,$60
- db $18,$18,$22,$60
-
-FrameBlock72: ; 7b7f7 (1e:77f7)
- db $0c
- db $00,$00,$32,$00
- db $00,$08,$43,$00
- db $00,$10,$43,$20
- db $00,$18,$32,$20
- db $08,$00,$32,$40
- db $08,$08,$43,$40
- db $08,$10,$43,$60
- db $08,$18,$32,$60
- db $10,$00,$22,$40
- db $10,$08,$23,$40
- db $10,$10,$23,$60
- db $10,$18,$22,$60
-
-FrameBlock73: ; 7b828 (1e:7828)
- db $08
- db $00,$00,$32,$40
- db $00,$08,$43,$40
- db $00,$10,$43,$60
- db $00,$18,$32,$60
- db $08,$00,$22,$40
- db $08,$08,$23,$40
- db $08,$10,$23,$60
- db $08,$18,$22,$60
-
-FrameBlock74: ; 7b849 (1e:7849)
- db $04
- db $00,$00,$22,$40
- db $00,$08,$23,$40
- db $00,$10,$23,$60
- db $00,$18,$22,$60
-
-FrameBlock4a: ; 7b85a (1e:785a)
- db $04
- db $08,$18,$4c,$20
- db $20,$08,$4b,$00
- db $30,$20,$4c,$00
- db $18,$30,$4b,$40
-
-FrameBlock4b: ; 7b86b (1e:786b)
- db $04
- db $00,$18,$4c,$00
- db $20,$00,$4b,$40
- db $38,$20,$4c,$20
- db $18,$38,$4b,$00
-
-FrameBlock4c: ; 7b87c (1e:787c)
- db $04
- db $10,$08,$4a,$40
- db $30,$10,$4a,$00
- db $28,$30,$4a,$20
- db $08,$28,$4a,$60
-
-FrameBlock4d: ; 7b88d (1e:788d)
- db $04
- db $08,$00,$4a,$20
- db $38,$08,$4a,$60
- db $30,$38,$4a,$40
- db $00,$30,$4a,$00
-
-FrameBlock4e: ; 7b89e (1e:789e)
- db $08
- db $00,$30,$44,$00
- db $00,$38,$44,$20
- db $08,$30,$44,$40
- db $08,$38,$44,$60
- db $26,$0a,$44,$00
- db $26,$12,$44,$20
- db $2e,$0a,$44,$40
- db $2e,$12,$44,$60
-
-FrameBlock4f: ; 7b8bf (1e:78bf)
- db $0c
- db $0e,$22,$44,$00
- db $0e,$2a,$44,$20
- db $16,$22,$44,$40
- db $16,$2a,$44,$60
- db $06,$32,$47,$00
- db $00,$38,$47,$00
- db $1a,$16,$44,$00
- db $1a,$1e,$44,$20
- db $22,$16,$44,$40
- db $22,$1e,$44,$60
- db $30,$08,$47,$00
- db $2a,$0e,$47,$00
-
-FrameBlock50: ; 7b8f0 (1e:78f0)
- db $08
- db $06,$32,$47,$00
- db $00,$38,$47,$00
- db $12,$26,$47,$00
- db $0c,$2c,$47,$00
- db $1e,$1a,$47,$00
- db $18,$20,$47,$00
- db $2a,$0e,$47,$00
- db $24,$14,$47,$00
-
-FrameBlock51: ; 7b911 (1e:7911)
- db $08
- db $00,$00,$35,$20
- db $08,$00,$35,$40
- db $10,$00,$35,$00
- db $18,$00,$35,$60
- db $00,$40,$35,$00
- db $08,$40,$35,$60
- db $10,$40,$35,$20
- db $18,$40,$35,$40
-
-FrameBlock52: ; 7b932 (1e:7932)
- db $04
- db $00,$00,$2a,$00
- db $00,$08,$2b,$00
- db $08,$00,$3a,$00
- db $08,$08,$3b,$00
-
-FrameBlock53: ; 7b943 (1e:7943)
- db $03
- db $00,$00,$3f,$00
- db $00,$08,$3f,$00
- db $08,$06,$3f,$00
-
-FrameBlock54: ; 7b950 (1e:7950)
- db $04
- db $00,$00,$0e,$00
- db $00,$08,$0e,$20
- db $08,$00,$0f,$00
- db $08,$08,$0f,$20
-
-FrameBlock55: ; 7b961 (1e:7961)
- db $03
- db $10,$00,$2c,$00
- db $10,$08,$3c,$00
- db $10,$10,$2d,$00
-
-FrameBlock56: ; 7b96e (1e:796e)
- db $06
- db $10,$10,$31,$00
- db $10,$18,$31,$00
- db $08,$10,$2c,$00
- db $08,$18,$3c,$00
- db $08,$20,$2d,$00
- db $10,$20,$2d,$00
-
-FrameBlock57: ; 7b987 (1e:7987)
- db $09
- db $08,$20,$31,$00
- db $10,$20,$31,$00
- db $08,$28,$31,$00
- db $10,$28,$31,$00
- db $00,$20,$2c,$00
- db $00,$28,$3c,$00
- db $00,$30,$2d,$00
- db $08,$30,$2d,$00
- db $10,$30,$2d,$00
-
-FrameBlock58: ; 7b9ac (1e:79ac)
- db $07
- db $00,$00,$46,$00
- db $08,$02,$47,$00
- db $10,$03,$48,$00
- db $18,$04,$48,$00
- db $20,$05,$48,$00
- db $28,$05,$48,$00
- db $30,$05,$48,$00
-
-FrameBlock59: ; 7b9c9 (1e:79c9)
- db $01
- db $00,$00,$42,$00
-
-FrameBlock5a: ; 7b9ce (1e:79ce)
- db $0c
- db $00,$00,$24,$00
- db $00,$08,$25,$00
- db $08,$00,$34,$00
- db $00,$10,$25,$20
- db $00,$18,$24,$20
- db $08,$18,$34,$20
- db $10,$00,$34,$40
- db $18,$00,$24,$40
- db $18,$08,$25,$40
- db $10,$18,$34,$60
- db $18,$10,$25,$60
- db $18,$18,$24,$60
-
-FrameBlock5b: ; 7b9ff (1e:79ff)
- db $04
- db $00,$00,$43,$00
- db $00,$08,$43,$20
- db $08,$00,$43,$40
- db $08,$08,$43,$60
-
-FrameBlock5c: ; 7ba10 (1e:7a10)
- db $08
- db $00,$00,$49,$00
- db $02,$08,$49,$00
- db $18,$00,$49,$00
- db $10,$10,$49,$00
- db $08,$00,$43,$00
- db $08,$08,$43,$20
- db $10,$00,$43,$40
- db $10,$08,$43,$60
-
-FrameBlock5d: ; 7ba31 (1e:7a31)
- db $0b
- db $00,$00,$49,$00
- db $18,$02,$49,$00
- db $14,$10,$49,$00
- db $08,$00,$43,$00
- db $00,$08,$43,$20
- db $10,$00,$43,$40
- db $10,$08,$43,$60
- db $04,$08,$43,$00
- db $04,$10,$43,$20
- db $0c,$08,$43,$40
- db $0c,$10,$43,$60
-
-FrameBlock5e: ; 7ba5e (1e:7a5e)
- db $0f
- db $00,$08,$49,$00
- db $08,$10,$49,$00
- db $20,$00,$49,$00
- db $08,$00,$43,$00
- db $08,$08,$43,$20
- db $10,$00,$43,$40
- db $10,$08,$43,$60
- db $10,$10,$43,$00
- db $10,$18,$43,$20
- db $18,$10,$43,$40
- db $18,$18,$43,$60
- db $20,$08,$43,$00
- db $20,$10,$43,$20
- db $28,$08,$43,$40
- db $28,$10,$43,$60
-
-FrameBlock5f: ; 7ba9b (1e:7a9b)
- db $04
- db $00,$00,$49,$00
- db $00,$10,$49,$00
- db $00,$20,$49,$00
- db $00,$30,$49,$00
-
-FrameBlock60: ; 7baac (1e:7aac)
- db $08
- db $00,$00,$49,$00
- db $00,$10,$49,$00
- db $00,$20,$49,$00
- db $00,$30,$49,$00
- db $08,$08,$49,$00
- db $08,$18,$49,$00
- db $08,$28,$49,$00
- db $08,$38,$49,$00
-
-FrameBlock61: ; 7bacd (1e:7acd)
- db $0c
- db $00,$00,$49,$00
- db $00,$10,$49,$00
- db $00,$20,$49,$00
- db $00,$30,$49,$00
- db $08,$08,$49,$00
- db $08,$18,$49,$00
- db $08,$28,$49,$00
- db $08,$38,$49,$00
- db $10,$00,$49,$00
- db $10,$10,$49,$00
- db $10,$20,$49,$00
- db $10,$30,$49,$00
-
-FrameBlock62: ; 7bafe (1e:7afe)
- db $0f
- db $00,$00,$49,$00
- db $00,$10,$49,$00
- db $00,$20,$49,$00
- db $00,$30,$49,$00
- db $08,$08,$49,$00
- db $08,$18,$49,$00
- db $08,$28,$49,$00
- db $08,$38,$49,$00
- db $10,$00,$49,$00
- db $10,$10,$49,$00
- db $10,$20,$49,$00
- db $10,$30,$49,$00
- db $18,$08,$49,$00
- db $18,$18,$49,$00
- db $18,$28,$49,$00
- db $18,$38,$49,$00 ; unused
-
-FrameBlock63: ; 7bb3f (1e:7b3f)
- db $06
- db $10,$00,$26,$00
- db $10,$08,$27,$00
- db $08,$10,$26,$00
- db $08,$18,$27,$00
- db $00,$20,$26,$00
- db $00,$28,$27,$00
-
-FrameBlock64: ; 7bb58 (1e:7b58)
- db $06
- db $18,$00,$27,$00
- db $10,$08,$26,$00
- db $10,$10,$27,$00
- db $08,$18,$26,$00
- db $08,$20,$27,$00
- db $00,$28,$26,$00
-
-FrameBlock65: ; 7bb71 (1e:7b71)
- db $06
- db $00,$00,$1c,$00
- db $00,$08,$1d,$00
- db $10,$00,$1c,$00
- db $10,$08,$1d,$00
- db $20,$00,$1c,$00
- db $20,$08,$1d,$00
-
-FrameBlock66: ; 7bb8a (1e:7b8a)
- db $02
- db $00,$00,$03,$00
- db $08,$00,$13,$00
-
-FrameBlock67: ; 7bb93 (1e:7b93)
- db $01
- db $00,$00,$03,$00
-
-FrameBlock68: ; 7bb98 (1e:7b98)
- db $04
- db $00,$00,$03,$00
- db $00,$08,$03,$20
- db $08,$00,$13,$00
- db $08,$08,$13,$20
-
-FrameBlock69: ; 7bba9 (1e:7ba9)
- db $01
- db $00,$00,$06,$00
-
-FrameBlock6a: ; 7bbae (1e:7bae)
- db $08
- db $00,$00,$2e,$00
- db $00,$30,$2e,$20
- db $30,$00,$2e,$40
- db $30,$30,$2e,$60
- db $00,$18,$2f,$00
- db $30,$18,$2f,$40
- db $18,$00,$3e,$00
- db $18,$30,$3e,$20
-
-FrameBlock6b: ; 7bbcf (1e:7bcf)
- db $08
- db $00,$00,$2e,$00
- db $00,$20,$2e,$20
- db $20,$00,$2e,$40
- db $20,$20,$2e,$60
- db $00,$10,$2f,$00
- db $20,$10,$2f,$40
- db $10,$00,$3e,$00
- db $10,$20,$3e,$20
-
-FrameBlock6c: ; 7bbf0 (1e:7bf0)
- db $08
- db $00,$00,$2e,$00
- db $00,$10,$2e,$20
- db $10,$00,$2e,$40
- db $10,$10,$2e,$60
- db $00,$08,$2f,$00
- db $10,$08,$2f,$40
- db $08,$00,$3e,$00
- db $08,$10,$3e,$20
-
-FrameBlock6d: ; 7bc11 (1e:7c11)
- db $02
- db $00,$00,$1e,$00
- db $00,$08,$1f,$00
-
-FrameBlock6e: ; 7bc1a (1e:7c1a)
- db $04
- db $00,$00,$48,$00
- db $00,$08,$48,$20
- db $08,$00,$12,$00
- db $08,$08,$12,$20
-
-FrameBlock6f: ; 7bc2b (1e:7c2b)
- db $04
- db $00,$00,$4a,$00
- db $00,$08,$07,$00
- db $08,$00,$16,$00
- db $08,$08,$17,$00
-
-FrameBlock70: ; 7bc3c (1e:7c3c)
- db $04
- db $00,$00,$07,$20
- db $00,$08,$4a,$20
- db $08,$00,$17,$20
- db $08,$08,$16,$20
-
-FrameBlock76: ; 7bc4d (1e:7c4d)
- db $07
- db $00,$10,$2f,$00
- db $01,$08,$2f,$00
- db $01,$18,$2f,$00
- db $02,$00,$2e,$00
- db $02,$20,$2e,$20
- db $0a,$00,$3e,$00
- db $0a,$20,$3e,$20
-
-FrameBlock77: ; 7bc6a (1e:7c6a)
- db $04
- db $00,$02,$4b,$00
- db $00,$0a,$4c,$00
- db $08,$00,$4c,$60
- db $08,$08,$4b,$60
-
-FrameBlock78: ; 7bc7b (1e:7c7b)
- db $01
- db $00,$00,$4d,$00
-
-FrameBlock79: ; 7bc80 (1e:7c80)
- db $01
- db $00,$00,$4e,$00
-
-FrameBlockBaseCoords: ; 7bc85 (1e:7c85)
- db $10,$68
- db $10,$70
- db $10,$78
- db $10,$80
- db $10,$88
- db $10,$90
- db $10,$98
- db $18,$68
- db $18,$70
- db $18,$78
- db $34,$28
- db $18,$80
- db $18,$88
- db $18,$98
- db $20,$68
- db $20,$70
- db $20,$78
- db $20,$80
- db $20,$88
- db $20,$90
- db $20,$98
- db $28,$68
- db $28,$70
- db $28,$78
- db $28,$80
- db $28,$88
- db $30,$68
- db $30,$70
- db $30,$78
- db $30,$80
- db $30,$90
- db $30,$98
- db $38,$68
- db $38,$78
- db $38,$80
- db $38,$88
- db $40,$68
- db $40,$70
- db $40,$78
- db $40,$80
- db $40,$88
- db $40,$98
- db $10,$60
- db $18,$60
- db $20,$60
- db $28,$60
- db $30,$60
- db $40,$60
- db $58,$28
- db $43,$38
- db $33,$48
- db $20,$58
- db $32,$78
- db $58,$58
- db $2C,$6C
- db $34,$80
- db $48,$70
- db $42,$36
- db $38,$44
- db $40,$52
- db $48,$60
- db $3E,$6E
- db $28,$7C
- db $28,$8A
- db $50,$3C
- db $48,$50
- db $40,$64
- db $38,$38
- db $50,$30
- db $50,$38
- db $50,$40
- db $50,$48
- db $50,$50
- db $48,$58
- db $50,$44
- db $48,$48
- db $48,$4C
- db $40,$50
- db $40,$54
- db $38,$58
- db $38,$5C
- db $30,$64
- db $48,$40
- db $48,$39
- db $24,$88
- db $24,$70
- db $1C,$70
- db $1C,$88
- db $34,$68
- db $34,$88
- db $68,$50
- db $60,$50
- db $68,$60
- db $58,$50
- db $60,$60
- db $68,$40
- db $40,$40
- db $38,$40
- db $0B,$60
- db $44,$48
- db $40,$14
- db $48,$1C
- db $50,$24
- db $4C,$24
- db $10,$62
- db $12,$62
- db $12,$60
- db $20,$72
- db $22,$72
- db $22,$70
- db $28,$62
- db $50,$0A
- db $52,$0A
- db $38,$30
- db $40,$48
- db $30,$48
- db $40,$30
- db $30,$40
- db $38,$48
- db $40,$4A
- db $48,$4B
- db $50,$4C
- db $58,$4D
- db $60,$4D
- db $68,$4D
- db $38,$10
- db $50,$10
- db $38,$28
- db $48,$18
- db $40,$20
- db $48,$20
- db $40,$3C
- db $38,$50
- db $28,$64
- db $1C,$90
- db $24,$80
- db $2C,$70
- db $30,$38
- db $10,$50
- db $3C,$40
- db $40,$58
- db $30,$58
- db $58,$48
- db $50,$58
- db $48,$68
- db $40,$18
- db $28,$58
- db $40,$38
- db $48,$38
- db $08,$70
- db $44,$1C
- db $3C,$58
- db $38,$60
- db $08,$60
- db $38,$70
- db $38,$6C
- db $38,$64
- db $1C,$74
- db $2E,$74
- db $34,$50
- db $2F,$60
- db $31,$70
- db $4C,$30
- db $3B,$40
- db $2D,$50
- db $26,$60
- db $2D,$70
- db $28,$50
- db $1E,$60
- db $29,$70
- db $16,$60
- db $14,$58
- db $12,$54
- db $14,$50
- db $18,$4C
- db $1C,$48
- db $48,$28
-
-FrameBlock00: ; 7bde7 (1e:7de7)
- db $00,$00
+INCLUDE "data/animations.asm"
Func_7bde9: ; 7bde9 (1e:7de9)
push hl
@@ -115276,7 +58193,7 @@ asm_7befa: ; 7befa (1e:7efa)
scf
ret
-Func_7bf15: ; 7bf15 (1e:7f15)
+ShakeElevator: ; 7bf15 (1e:7f15)
ld de, $ffe0
call Func_7bf64
ld de, $240
@@ -115287,6 +58204,7 @@ Func_7bf15: ; 7bf15 (1e:7f15)
ld a, [$ffaf]
ld d, a
ld e, $1
+ ; number of times to play collision sfx
ld b, $64
.asm_7bf30
ld a, e
@@ -115367,12 +58285,4 @@ GetMachinePrice: ; 7bf86 (1e:7f86)
ld [$ff8d], a
ret
-TechnicalMachinePrices: ; 7bfa7 (1e:7fa7)
-; In thousands (nybbles).
- db $32, $21, $34, $24, $34
- db $21, $45, $55, $32, $32
- db $55, $52, $54, $52, $41
- db $21, $12, $42, $25, $24
- db $22, $52, $24, $34, $42
-
-
+INCLUDE "data/tm_prices.asm"
diff --git a/maps/ceruleanhouse.blk b/maps/ceruleanhouse1.blk
index 823e6053..823e6053 100644
--- a/maps/ceruleanhouse.blk
+++ b/maps/ceruleanhouse1.blk
diff --git a/maps/undergroundtunnelentranceroute5.blk b/maps/undergroundpathentranceroute5.blk
index a17a7ed2..a17a7ed2 100644
--- a/maps/undergroundtunnelentranceroute5.blk
+++ b/maps/undergroundpathentranceroute5.blk
Binary files differ
diff --git a/maps/undergroundtunnelentranceroute6.blk b/maps/undergroundpathentranceroute6.blk
index a17a7ed2..a17a7ed2 100644
--- a/maps/undergroundtunnelentranceroute6.blk
+++ b/maps/undergroundpathentranceroute6.blk
Binary files differ
diff --git a/menu/pc.asm b/menu/pc.asm
index 41de601e..d2b633f3 100644
--- a/menu/pc.asm
+++ b/menu/pc.asm
@@ -570,8 +570,8 @@ Func_21845:: ; 5845 (8:5845)
ld a, $22
jp Func_3ef5
-UnnamedText_21865:: ; 21865 (8:5865)
- TX_FAR _UnnamedText_21865
+JustAMomentText:: ; 21865 (8:5865)
+ TX_FAR _JustAMomentText
db "@"
ld a, [$c109]
diff --git a/scripts/agatha.asm b/scripts/agatha.asm
new file mode 100755
index 00000000..749f84e7
--- /dev/null
+++ b/scripts/agatha.asm
@@ -0,0 +1,157 @@
+AgathaScript: ; 7642d (1d:642d)
+ call AgathaScript_76443
+ call EnableAutoTextBoxDrawing
+ ld hl, AgathaTrainerHeaders
+ ld de, AgathaScriptPointers
+ ld a, [W_AGATHACURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_AGATHACURSCRIPT], a
+ ret
+
+AgathaScript_76443: ; 76443 (1d:6443)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d865]
+ bit 1, a
+ jr z, .asm_76457
+ ld a, $e
+ jp AgathaScript_76459
+.asm_76457
+ ld a, $3b
+
+AgathaScript_76459: ; 76459 (1d:6459)
+ ld [$d09f], a
+ ld bc, $2
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+AgathaScript_76464: ; 76464 (1d:6464)
+ xor a
+ ld [W_AGATHACURSCRIPT], a
+ ret
+
+AgathaScriptPointers: ; 76469 (1d:6469)
+ dw AgathaScript0
+ dw Func_324c
+ dw AgathaScript2
+ dw AgathaScript3
+ dw AgathaScript4
+
+AgathaScript4: ; 76473 (1d:6473)
+ ret
+asm_76474: ; 76474 (1d:6474)
+ ld hl, $ccd3
+ ld a, $40
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $6
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_AGATHACURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+AgathaScript0: ; 76490 (1d:6490)
+ ld hl, CoordsData_764d1
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_NEWLYPRESSEDBUTTONS], a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [$ccd3], a
+ ld [$cd38], a
+ ld a, [wWhichTrade] ; $cd3d
+ cp $3
+ jr c, .asm_764b4
+ ld hl, $d865
+ bit 6, [hl]
+ set 6, [hl]
+ jr z, asm_76474
+.asm_764b4
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $40
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_AGATHACURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CoordsData_764d1: ; 764d1 (1d:64d1)
+ db $0A,$04
+ db $0A,$05
+ db $0B,$04
+ db $0B,$05
+ db $FF
+
+AgathaScript3: ; 764da (1d:64da)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_AGATHACURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+AgathaScript2: ; 764ed (1d:64ed)
+ call EndTrainerBattle
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, AgathaScript_76464
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $1
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+AgathaTextPointers: ; 76505 (1d:6505)
+ dw AgathaText1
+ dw AgathaText2
+
+AgathaTrainerHeaders: ; 76509 (1d:6509)
+AgathaTrainerHeader0: ; 76509 (1d:6509)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d865 ; flag's byte
+ dw AgathaBeforeBattleText ; 0x6520 TextBeforeBattle
+ dw AgathaAfterBattleText ; 0x652a TextAfterBattle
+ dw AgathaEndBattleText ; 0x6525 TextEndBattle
+ dw AgathaEndBattleText ; 0x6525 TextEndBattle
+
+ db $ff
+
+AgathaText1: ; 76516 (1d:6516)
+ db $08 ; asm
+ ld hl, AgathaTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+AgathaBeforeBattleText: ; 76520 (1d:6520)
+ TX_FAR _AgathaBeforeBattleText
+ db "@"
+
+AgathaEndBattleText: ; 76525 (1d:6525)
+ TX_FAR _AgathaEndBattleText
+ db "@"
+
+AgathaAfterBattleText: ; 7652a (1d:652a)
+ TX_FAR _AgathaAfterBattleText
+ db "@"
+
+AgathaText2: ; 7652f (1d:652f)
+ TX_FAR _AgathaText2
+ db "@"
diff --git a/scripts/battlecenterm.asm b/scripts/battlecenterm.asm
new file mode 100755
index 00000000..846b78fb
--- /dev/null
+++ b/scripts/battlecenterm.asm
@@ -0,0 +1,38 @@
+BattleCenterMScript: ; 4fd10 (13:7d10)
+ call EnableAutoTextBoxDrawing
+ ld a, [$ffaa]
+ cp $2
+ ld a, $8
+ jr z, .asm_4fd1d ; 0x4fd19 $2
+ ld a, $c
+.asm_4fd1d
+ ld [$ff8d], a
+ ld a, $1
+ ld [$ff8c], a
+ call Func_34ae
+ ld hl, $d72d
+ bit 0, [hl]
+ set 0, [hl]
+ ret nz
+ ld hl, $c214
+ ld a, $8
+ ld [hli], a
+ ld a, $a
+ ld [hl], a
+ ld a, $8
+ ld [$c119], a
+ ld a, [$ffaa]
+ cp $2
+ ret z
+ ld a, $7
+ ld [$c215], a
+ ld a, $c
+ ld [$c119], a
+ ret
+
+BattleCenterMTextPointers: ; 4fd4c (13:7d4c)
+ dw BattleCenterMText1
+
+BattleCenterMText1: ; 4fd4e (13:7d4e)
+ TX_FAR _BattleCenterMText1
+ db "@"
diff --git a/scripts/bikeshop.asm b/scripts/bikeshop.asm
new file mode 100755
index 00000000..75714dbc
--- /dev/null
+++ b/scripts/bikeshop.asm
@@ -0,0 +1,151 @@
+BikeShopScript: ; 1d73c (7:573c)
+ jp EnableAutoTextBoxDrawing
+
+BikeShopTextPointers: ; 1d73f (7:573f)
+ dw BikeShopText1
+ dw BikeShopText2
+ dw BikeShopText3
+
+BikeShopText1: ; 1d745 (7:5745)
+ db $08 ; asm
+ ld a, [$d75f]
+ bit 0, a
+ jr z, .asm_260d4 ; 0x1d74b
+ ld hl, BikeShopText_1d82f
+ call PrintText
+ jp .Done
+.asm_260d4 ; 0x1d756
+ ld b, BIKE_VOUCHER
+ call IsItemInBag
+ jr z, .asm_41190 ; 0x1d75b
+ ld hl, BikeShopText_1d81f
+ call PrintText
+ ld bc, (BICYCLE << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, BIKE_VOUCHER
+ ldh [$db], a
+ callba RemoveItemByID
+ ld hl, $d75f
+ set 0, [hl]
+ ld hl, BikeShopText_1d824
+ call PrintText
+ jr .Done
+.BagFull
+ ld hl, BikeShopText_1d834
+ call PrintText
+ jr .Done
+.asm_41190 ; 0x1d78c
+ ld hl, BikeShopText_1d810
+ call PrintText
+ xor a
+ ld [$cc26], a
+ ld [$cc2a], a
+ ld a, $3
+ ld [$cc29], a
+ ld a, $1
+ ld [$cc28], a
+ ld a, $2
+ ld [$cc24], a
+ ld a, $1
+ ld [$cc25], a
+ ld hl, $d730
+ set 6, [hl]
+ ld hl, wTileMap
+ ld b, $4
+ ld c, $f
+ call TextBoxBorder
+ call UpdateSprites
+ FuncCoord 2, 2 ; $c3ca
+ ld hl, Coord
+ ld de, BikeShopMenuText
+ call PlaceString
+ FuncCoord 8, 3 ; $c3e4
+ ld hl, Coord
+ ld de, BikeShopMenuPrice
+ call PlaceString
+ ld hl, BikeShopText_1d815
+ call PrintText
+ call HandleMenuInput
+ bit 1, a
+ jr nz, .asm_b7579 ; 0x1d7dc
+ ld hl, $d730
+ res 6, [hl]
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_b7579 ; 0x1d7e7
+ ld hl, BikeShopText_1d81a
+ call PrintText
+.asm_b7579 ; 0x1d7ef
+ ld hl, BikeShopText_1d82a
+ call PrintText
+.Done
+ jp TextScriptEnd
+
+BikeShopMenuText: ; 1d7f8 (7:57f8)
+ db "BICYCLE"
+ next "CANCEL@"
+
+BikeShopMenuPrice: ; 1d807 (7:5807)
+ db "¥1000000@"
+
+BikeShopText_1d810: ; 1d810 (7:5810)
+ TX_FAR _BikeShopText_1d810
+ db "@"
+
+BikeShopText_1d815: ; 1d815 (7:5815)
+ TX_FAR _BikeShopText_1d815
+ db "@"
+
+BikeShopText_1d81a: ; 1d81a (7:581a)
+ TX_FAR _BikeShopText_1d81a
+ db "@"
+
+BikeShopText_1d81f: ; 1d81f (7:581f)
+ TX_FAR _BikeShopText_1d81f
+ db "@"
+
+BikeShopText_1d824: ; 1d824 (7:5824)
+ TX_FAR _BikeShopText_1d824 ; 0x98eb2
+ db $11, "@"
+
+BikeShopText_1d82a: ; 1d82a (7:582a)
+ TX_FAR _BikeShopText_1d82a
+ db "@"
+
+BikeShopText_1d82f: ; 1d82f (7:582f)
+ TX_FAR _BikeShopText_1d82f
+ db "@"
+
+BikeShopText_1d834: ; 1d834 (7:5834)
+ TX_FAR _BikeShopText_1d834
+ db "@"
+
+BikeShopText2: ; 1d839 (7:5839)
+ db $08 ; asm
+ ld hl, BikeShopText_1d843
+ call PrintText
+ jp TextScriptEnd
+
+BikeShopText_1d843: ; 1d843 (7:5843)
+ TX_FAR _BikeShopText_1d843
+ db "@"
+
+BikeShopText3: ; 1d848 (7:5848)
+ db $08 ; asm
+ ld a, [$d75f]
+ bit 0, a
+ ld hl, BikeShopText_1d861
+ jr nz, .asm_34d2d ; 0x1d851
+ ld hl, BikeShopText_1d85c
+.asm_34d2d ; 0x1d856
+ call PrintText
+ jp TextScriptEnd
+
+BikeShopText_1d85c: ; 1d85c (7:585c)
+ TX_FAR _BikeShopText_1d85c
+ db "@"
+
+BikeShopText_1d861: ; 1d861 (7:5861)
+ TX_FAR _BikeShopText_1d861
+ db "@"
diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm
new file mode 100755
index 00000000..6d397de1
--- /dev/null
+++ b/scripts/billshouse.asm
@@ -0,0 +1,208 @@
+BillsHouseScript: ; 1e76a (7:676a)
+ call EnableAutoTextBoxDrawing
+ ld a, [W_BILLSHOUSECURSCRIPT]
+ ld hl, BillsHouseScriptPointers
+ jp CallFunctionInTable
+
+BillsHouseScriptPointers: ; 1e776 (7:6776)
+ dw BillsHouseScript0
+ dw BillsHouseScript1
+ dw BillsHouseScript2
+ dw BillsHouseScript3
+ dw BillsHouseScript4
+ dw BillsHouseScript5
+
+BillsHouseScript0: ; 1e782 (7:6782)
+ ret
+
+BillsHouseScript1: ; 1e783 (7:6783)
+ ld a, [$c109]
+ and a
+ ld de, MovementData_1e79c
+ jr nz, .asm_1e78f ; 0x1e78a $3
+ ld de, MovementData_1e7a0
+.asm_1e78f
+ ld a, $1
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $2
+ ld [W_BILLSHOUSECURSCRIPT], a
+ ret
+
+MovementData_1e79c: ; 1e79c (7:679c)
+ db $40,$40,$40,$FF
+
+MovementData_1e7a0: ; 1e7a0 (7:67a0)
+ db $C0,$40,$40,$80,$40,$FF
+
+BillsHouseScript2: ; 1e7a6 (7:67a6)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $61
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, $d7f2
+ set 6, [hl]
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $3
+ ld [W_BILLSHOUSECURSCRIPT], a
+ ret
+
+BillsHouseScript3: ; 1e7c5 (7:67c5)
+ ld a, [$d7f2]
+ bit 3, a
+ ret z
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $2
+ ld [$cf13], a
+ ld a, $c
+ ld [$ffeb], a
+ ld a, $40
+ ld [$ffec], a
+ ld a, $6
+ ld [$ffed], a
+ ld a, $5
+ ld [$ffee], a
+ call Func_32f9
+ ld a, $62
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld c, $8
+ call DelayFrames
+ ld a, $2
+ ld [$ff8c], a
+ ld de, MovementData_1e807
+ call MoveSprite
+ ld a, $4
+ ld [W_BILLSHOUSECURSCRIPT], a
+ ret
+
+MovementData_1e807: ; 1e807 (7:6807)
+ db $00,$C0,$C0,$C0,$00,$FF
+
+BillsHouseScript4: ; 1e80d (7:680d)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d7f2
+ set 5, [hl]
+ ld hl, $d7f1
+ set 0, [hl]
+ ld a, $0
+ ld [W_BILLSHOUSECURSCRIPT], a
+ ret
+
+BillsHouseScript5: ; 1e827 (7:6827)
+ ld a, $4
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $0
+ ld [W_BILLSHOUSECURSCRIPT], a
+ ret
+
+BillsHouseTextPointers: ; 1e834 (7:6834)
+ dw BillsHouseText1
+ dw BillsHouseText2
+ dw BillsHouseText3
+ dw BillsHouseText4
+
+BillsHouseText4: ; 1e83c (7:683c)
+ db $fd
+
+BillsHouseText1: ; 1e83d (7:683d)
+ db $8
+ ld hl, BillsHouseText_1e865
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, asm_6b196 ; 0x1e84b $d
+asm_4d03c: ; 1e84d (7:684d)
+ ld hl, BillsHouseText_1e86a
+ call PrintText
+ ld a, $1
+ ld [W_BILLSHOUSECURSCRIPT], a
+ jr asm_fd4e2 ; 0x1e858 $8
+asm_6b196: ; 1e85a (7:685a)
+ ld hl, BillsHouseText_1e86f
+ call PrintText
+ jr asm_4d03c ; 0x1e860 $eb
+asm_fd4e2 ; 0x1e862
+ jp TextScriptEnd
+
+BillsHouseText_1e865: ; 1e865 (7:6865)
+ TX_FAR _BillsHouseText_1e865 ; 0x8d267
+ db "@"
+
+BillsHouseText_1e86a: ; 1e86a (7:686a)
+ TX_FAR _BillsHouseText_1e86a ; 0x8d345
+ db "@"
+
+BillsHouseText_1e86f: ; 1e86f (7:686f)
+ TX_FAR _BillsHouseText_1e86f ; 0x8d391
+ db "@"
+
+BillsHouseText2: ; 1e874 (7:6874)
+ db $08 ; asm
+ ld a, [$d7f2]
+ bit 4, a
+ jr nz, .asm_5491f ; 0x1e87a
+ ld hl, BillThankYouText
+ call PrintText
+ ld bc, (S_S__TICKET << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, SSTicketReceivedText
+ call PrintText
+ ld hl, $d7f2
+ set 4, [hl]
+ ld a, $7
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $9
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+.asm_5491f ; 0x1e8a9
+ ld hl, BillsHouseText_1e8cb
+ call PrintText
+ jr .asm_bd408 ; 0x1e8af
+.BagFull
+ ld hl, SSTicketNoRoomText
+ call PrintText
+.asm_bd408 ; 0x1e8b7
+ jp TextScriptEnd
+
+BillThankYouText: ; 1e8ba (7:68ba)
+ TX_FAR _BillThankYouText
+ db "@"
+
+SSTicketReceivedText: ; 1e8bf (7:68bf)
+ TX_FAR _SSTicketReceivedText
+ db $11, $6, "@"
+
+SSTicketNoRoomText: ; 1e8c6 (7:68c6)
+ TX_FAR _SSTicketNoRoomText
+ db "@"
+
+BillsHouseText_1e8cb: ; 1e8cb (7:68cb)
+ TX_FAR _BillsHouseText_1e8cb
+ db "@"
+
+BillsHouseText3: ; 1e8d0 (7:68d0)
+ db $08 ; asm
+ ld hl, BillsHouseText_1e8da
+ call PrintText
+ jp TextScriptEnd
+
+BillsHouseText_1e8da: ; 1e8da (7:68da)
+ TX_FAR _BillsHouseText_1e8da
+ db "@"
diff --git a/scripts/blueshouse.asm b/scripts/blueshouse.asm
new file mode 100755
index 00000000..1699160f
--- /dev/null
+++ b/scripts/blueshouse.asm
@@ -0,0 +1,90 @@
+BluesHouseScript: ; 19b3b (6:5b3b)
+ call EnableAutoTextBoxDrawing
+ ld hl,BluesHouseScriptPointers
+ ld a,[W_BLUESHOUSECURSCRIPT]
+ jp CallFunctionInTable
+
+BluesHouseScriptPointers: ; 19b47 (6:5b47)
+ dw BluesHouseScript0
+ dw BluesHouseScript1
+
+BluesHouseScript0: ; 19b4b (6:5b4b)
+ ld hl,$D74A
+ set 1,[hl]
+
+ ; trigger the next script
+ ld a,1
+ ld [W_BLUESHOUSECURSCRIPT],a
+ ret
+
+BluesHouseScript1: ; 19b56 (6:5b56)
+ ret
+
+BluesHouseTextPointers: ; 19b57 (6:5b57)
+ dw BluesHouseText1
+ dw BluesHouseText2
+ dw BluesHouseText3
+
+BluesHouseText1: ; 19b5d (6:5b5d)
+ db 8
+ ld a,[$D74A]
+ bit 0,a
+ jr nz,.GotMap
+ ld a,[$D74B]
+ bit 5,a
+ jr nz,.GiveMap
+ ld hl,DaisyInitialText
+ call PrintText
+ jr .done
+.GiveMap
+ ld hl,DaisyOfferMapText
+ call PrintText
+ ld bc,(TOWN_MAP << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a,$29
+ ld [$CC4D],a
+ ld a,$11
+ call Predef ; hide table map object
+ ld hl,GotMapText
+ call PrintText
+ ld hl,$D74A
+ set 0,[hl]
+ jr .done
+.GotMap
+ ld hl,DaisyUseMapText
+ call PrintText
+ jr .done
+.BagFull
+ ld hl,DaisyBagFullText
+ call PrintText
+.done
+ jp TextScriptEnd
+
+DaisyInitialText: ; 19baa (6:5baa)
+ TX_FAR _DaisyInitialText
+ db "@"
+
+DaisyOfferMapText: ; 19baf (6:5baf)
+ TX_FAR _DaisyOfferMapText
+ db "@"
+
+GotMapText: ; 19bb4 (6:5bb4)
+ TX_FAR _GotMapText
+ db $11,"@"
+
+DaisyBagFullText: ; 19bba (6:5bba)
+ TX_FAR _DaisyBagFullText
+ db "@"
+
+DaisyUseMapText: ; 19bbf (6:5bbf)
+ TX_FAR _DaisyUseMapText
+ db "@"
+
+BluesHouseText2: ; 0x19bc4 Daisy, walking around
+ TX_FAR _BluesHouseText2
+ db "@"
+
+BluesHouseText3: ; 0x19bc9 map on table
+ TX_FAR _BluesHouseText3
+ db "@"
diff --git a/scripts/bruno.asm b/scripts/bruno.asm
new file mode 100755
index 00000000..60d579b2
--- /dev/null
+++ b/scripts/bruno.asm
@@ -0,0 +1,154 @@
+BrunoScript: ; 762d6 (1d:62d6)
+ call BrunoScript_762ec
+ call EnableAutoTextBoxDrawing
+ ld hl, BrunoTrainerHeaders
+ ld de, BrunoScriptPointers
+ ld a, [W_BRUNOCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_BRUNOCURSCRIPT], a
+ ret
+
+BrunoScript_762ec: ; 762ec (1d:62ec)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d864]
+ bit 1, a
+ jr z, .asm_76300
+ ld a, $5
+ jp BrunoScript_76302
+.asm_76300
+ ld a, $24
+
+BrunoScript_76302: ; 76302 (1d:6302)
+ ld [$d09f], a
+ ld bc, $2
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+BrunoScript_7630d: ; 7630d (1d:630d)
+ xor a
+ ld [W_BRUNOCURSCRIPT], a
+ ret
+
+BrunoScriptPointers: ; 76312 (1d:6312)
+ dw BrunoScript0
+ dw Func_324c
+ dw BrunoScript2
+ dw BrunoScript3
+ dw BrunoScript4
+
+BrunoScript4: ; 7631c (1d:631c)
+ ret
+asm_7631d: ; 7631d (1d:631d)
+ ld hl, $ccd3
+ ld a, $40
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $6
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_BRUNOCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+BrunoScript0: ; 76339 (1d:6339)
+ ld hl, CoordsData_7637a
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_NEWLYPRESSEDBUTTONS], a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [$ccd3], a
+ ld [$cd38], a
+ ld a, [wWhichTrade] ; $cd3d
+ cp $3
+ jr c, .asm_7635d
+ ld hl, $d864
+ bit 6, [hl]
+ set 6, [hl]
+ jr z, asm_7631d
+.asm_7635d
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $40
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_BRUNOCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CoordsData_7637a: ; 7637a (1d:637a)
+ db $0A,$04
+ db $0A,$05
+ db $0B,$04
+ db $0B,$05
+ db $FF
+
+BrunoScript3: ; 76383 (1d:6383)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_BRUNOCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+BrunoScript2: ; 76396 (1d:6396)
+ call EndTrainerBattle
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, BrunoScript_7630d
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+
+BrunoTextPointers: ; 763a8 (1d:63a8)
+ dw BrunoText1
+ dw BrunoText2
+
+BrunoTrainerHeaders: ; 763ac (1d:63ac)
+BrunoTrainerHeader0: ; 763ac (1d:63ac)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d864 ; flag's byte
+ dw BrunoBeforeBattleText ; 0x63c3 TextBeforeBattle
+ dw BrunoAfterBattleText ; 0x63cd TextAfterBattle
+ dw BrunoEndBattleText ; 0x63c8 TextEndBattle
+ dw BrunoEndBattleText ; 0x63c8 TextEndBattle
+
+ db $ff
+
+BrunoText1: ; 763b9 (1d:63b9)
+ db $08 ; asm
+ ld hl, BrunoTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+BrunoBeforeBattleText: ; 763c3 (1d:63c3)
+ TX_FAR _BrunoBeforeBattleText
+ db "@"
+
+BrunoEndBattleText: ; 763c8 (1d:63c8)
+ TX_FAR _BrunoEndBattleText
+ db "@"
+
+BrunoAfterBattleText: ; 763cd (1d:63cd)
+ TX_FAR _BrunoAfterBattleText
+ db "@"
+
+BrunoText2: ; 763d2 (1d:63d2)
+ TX_FAR _UnnamedText_763d2
+ db "@"
diff --git a/scripts/celadoncity.asm b/scripts/celadoncity.asm
new file mode 100755
index 00000000..2f2a3128
--- /dev/null
+++ b/scripts/celadoncity.asm
@@ -0,0 +1,136 @@
+CeladonCityScript: ; 19956 (6:5956)
+ call EnableAutoTextBoxDrawing
+ ld hl, $d77e
+ res 0, [hl]
+ res 7, [hl]
+ ld hl, $d816
+ res 7, [hl]
+ ret
+
+CeladonCityTextPointers: ; 19966 (6:5966)
+ dw CeladonCityText1
+ dw CeladonCityText2
+ dw CeladonCityText3
+ dw CeladonCityText4
+ dw CeladonCityText5
+ dw CeladonCityText6
+ dw CeladonCityText7
+ dw CeladonCityText8
+ dw CeladonCityText9
+ dw CeladonCityText10
+ dw CeladonCityText11
+ dw PokeCenterSignText
+ dw CeladonCityText13
+ dw CeladonCityText14
+ dw CeladonCityText15
+ dw CeladonCityText16
+ dw CeladonCityText17
+ dw CeladonCityText18
+
+CeladonCityText1: ; 1998a (6:598a)
+ TX_FAR _CeladonCityText1
+ db "@"
+
+CeladonCityText2: ; 1998f (6:598f)
+ TX_FAR _CeladonCityText2
+ db "@"
+
+CeladonCityText3: ; 19994 (6:5994)
+ TX_FAR _CeladonCityText3
+ db "@"
+
+CeladonCityText4: ; 19999 (6:5999)
+ TX_FAR _CeladonCityText4
+ db "@"
+
+CeladonCityText5: ; 1999e (6:599e)
+ db $08 ; asm
+ ld a, [$d777]
+ bit 0, a
+ jr nz, .asm_7053f ; 0x199a4
+ ld hl, TM41PreText
+ call PrintText
+ ld bc, (TM_41 << 8) | 1
+ call GiveItem
+ jr c, .Success
+ ld hl, TM41NoRoomText
+ call PrintText
+ jr .Done
+.Success
+ ld hl, ReceivedTM41Text
+ call PrintText
+ ld hl, $d777
+ set 0, [hl]
+ jr .Done
+.asm_7053f ; 0x199c9
+ ld hl, TM41ExplanationText
+ call PrintText
+.Done
+ jp TextScriptEnd
+
+TM41PreText: ; 199d2 (6:59d2)
+ TX_FAR _TM41PreText
+ db "@"
+
+ReceivedTM41Text: ; 199d7 (6:59d7)
+ TX_FAR _ReceivedTM41Text
+ db $0B, "@"
+
+TM41ExplanationText: ; 199dd (6:59dd)
+ TX_FAR _TM41ExplanationText
+ db "@"
+
+TM41NoRoomText: ; 199e2 (6:59e2)
+ TX_FAR _TM41NoRoomText
+ db "@"
+
+CeladonCityText6: ; 199e7 (6:59e7)
+ TX_FAR _CeladonCityText6
+ db "@"
+
+CeladonCityText7: ; 199ec (6:59ec)
+ TX_FAR _CeladonCityText7
+ db $08 ; asm
+ ld a, POLIWRATH
+ call PlayCry
+ jp TextScriptEnd
+
+CeladonCityText8: ; 199f9 (6:59f9)
+ TX_FAR _CeladonCityText8
+ db "@"
+
+CeladonCityText9: ; 199fe (6:59fe)
+ TX_FAR _CeladonCityText9
+ db "@"
+
+CeladonCityText10: ; 19a03 (6:5a03)
+ TX_FAR _CeladonCityText10
+ db "@"
+
+CeladonCityText11: ; 19a08 (6:5a08)
+ TX_FAR _CeladonCityText11
+ db "@"
+
+CeladonCityText13: ; 19a0d (6:5a0d)
+ TX_FAR _CeladonCityText13
+ db "@"
+
+CeladonCityText14: ; 19a12 (6:5a12)
+ TX_FAR _CeladonCityText14
+ db "@"
+
+CeladonCityText15: ; 19a17 (6:5a17)
+ TX_FAR _CeladonCityText15
+ db "@"
+
+CeladonCityText16: ; 19a1c (6:5a1c)
+ TX_FAR _CeladonCityText16
+ db "@"
+
+CeladonCityText17: ; 19a21 (6:5a21)
+ TX_FAR _CeladonCityText17
+ db "@"
+
+CeladonCityText18: ; 19a26 (6:5a26)
+ TX_FAR _CeladonCityText18
+ db "@"
diff --git a/scripts/celadondiner.asm b/scripts/celadondiner.asm
new file mode 100755
index 00000000..06cce8fd
--- /dev/null
+++ b/scripts/celadondiner.asm
@@ -0,0 +1,67 @@
+CeladonDinerScript: ; 49151 (12:5151)
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonDinerTextPointers: ; 49155 (12:5155)
+ dw CeladonDinerText1
+ dw CeladonDinerText2
+ dw CeladonDinerText3
+ dw CeladonDinerText4
+ dw CeladonDinerText5
+
+CeladonDinerText1: ; 4915f (12:515f)
+ TX_FAR _CeladonDinerText1
+ db "@"
+
+CeladonDinerText2: ; 49164 (12:5164)
+ TX_FAR _CeladonDinerText2
+ db "@"
+
+CeladonDinerText3: ; 49169 (12:5169)
+ TX_FAR _CeladonDinerText3
+ db "@"
+
+CeladonDinerText4: ; 4916e (12:516e)
+ TX_FAR _CeladonDinerText4
+ db "@"
+
+CeladonDinerText5: ; 49173 (12:5173)
+ db $08 ; asm
+ ld a, [$d783]
+ bit 0, a
+ jr nz, .asm_eb14d ; 0x49179
+ ld hl, CeladonDinerText_491a7
+ call PrintText
+ ld bc, (COIN_CASE << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d783
+ set 0, [hl]
+ ld hl, ReceivedCoinCaseText
+ call PrintText
+ jr .asm_68b61 ; 0x49194
+.BagFull
+ ld hl, CoinCaseNoRoomText
+ call PrintText
+ jr .asm_68b61 ; 0x4919c
+.asm_eb14d ; 0x4919e
+ ld hl, CeladonDinerText_491b7
+ call PrintText
+.asm_68b61 ; 0x491a4
+ jp TextScriptEnd
+
+CeladonDinerText_491a7: ; 491a7 (12:51a7)
+ TX_FAR _CeladonDinerText_491a7
+ db "@"
+
+ReceivedCoinCaseText: ; 491ac (12:51ac)
+ TX_FAR _ReceivedCoinCaseText
+ db $11, "@"
+
+CoinCaseNoRoomText: ; 491b2 (12:51b2)
+ TX_FAR _CoinCaseNoRoomText
+ db "@"
+
+CeladonDinerText_491b7: ; 491b7 (12:51b7)
+ TX_FAR _CeladonDinerText_491b7
+ db "@"
diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm
new file mode 100755
index 00000000..f4e23d6e
--- /dev/null
+++ b/scripts/celadongamecorner.asm
@@ -0,0 +1,536 @@
+CeladonGameCornerScript: ; 48bbd (12:4bbd)
+ call CeladonGameCornerScript_48bcf
+ call CeladonGameCornerScript_48bec
+ call EnableAutoTextBoxDrawing
+ ld hl, CeladonGameCornerScriptPointers
+ ld a, [W_CELADONGAMECORNERCURSCRIPT]
+ jp CallFunctionInTable
+
+CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ call GenRandom
+ ld a, [$ffd3]
+ cp $7
+ jr nc, .asm_48be2
+ ld a, $8
+.asm_48be2
+ srl a
+ srl a
+ srl a
+ ld [$cd05], a
+ ret
+
+CeladonGameCornerScript_48bec: ; 48bec (12:4bec)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d77e]
+ bit 1, a
+ ret nz
+ ld a, $2a
+ ld [$d09f], a
+ ld bc, $0208
+ ld a, $17
+ jp Predef
+
+CeladonGameCornerScript_48c07: ; 48c07 (12:4c07)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_CELADONGAMECORNERCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CeladonGameCornerScriptPointers: ; 48c12 (12:4c12)
+ dw CeladonGameCornerScript0
+ dw CeladonGameCornerScript1
+ dw CeladonGameCornerScript2
+
+CeladonGameCornerScript0: ; 48c18 (12:4c18)
+ ret
+
+CeladonGameCornerScript1: ; 48c19 (12:4c19)
+ ld a, [W_ISINBATTLE]
+ cp $ff
+ jp z, CeladonGameCornerScript_48c07
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $d
+ ld [H_SPRITEHEIGHT], a
+ call DisplayTextID
+ ld a, $b
+ ld [H_SPRITEHEIGHT], a
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_48c5a
+ ld a, [W_YCOORD]
+ cp $6
+ jr nz, .asm_48c43
+ ld de, MovementData_48c63
+ jr .asm_48c4d
+.asm_48c43
+ ld a, [W_XCOORD]
+ cp $8
+ jr nz, .asm_48c4d
+ ld de, MovementData_48c63
+.asm_48c4d
+ ld a, $b
+ ld [H_DOWNARROWBLINKCNT2], a
+ call MoveSprite
+ ld a, $2
+ ld [W_CELADONGAMECORNERCURSCRIPT], a
+ ret
+
+MovementData_48c5a: ; 48c5a (12:4c5a)
+ db $00,$C0,$C0,$40,$C0,$C0,$C0,$C0,$FF
+
+MovementData_48c63: ; 48c63 (12:4c63)
+ db $C0,$C0,$C0,$C0,$C0,$FF
+
+CeladonGameCornerScript2: ; 48c69 (12:4c69)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $46
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, $d126
+ set 5, [hl]
+ set 6, [hl]
+ ld a, $0
+ ld [W_CELADONGAMECORNERCURSCRIPT], a
+ ret
+
+CeladonGameCornerTextPointers: ; 48c8a (12:4c8a)
+ dw CeladonGameCornerText1
+ dw CeladonGameCornerText2
+ dw CeladonGameCornerText3
+ dw CeladonGameCornerText4
+ dw CeladonGameCornerText5
+ dw CeladonGameCornerText6
+ dw CeladonGameCornerText7
+ dw CeladonGameCornerText8
+ dw CeladonGameCornerText9
+ dw CeladonGameCornerText10
+ dw CeladonGameCornerText11
+ dw CeladonGameCornerText12
+ dw CeladonGameCornerText13
+
+CeladonGameCornerText1: ; 48ca4 (12:4ca4)
+ TX_FAR _CeladonGameCornerText1
+ db "@"
+
+CeladonGameCornerText2: ; 48ca9 (12:4ca9)
+ db $08 ; asm
+ call CeladonGameCornerScript_48f1e
+ ld hl, CeladonGameCornerText_48d22
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_c650b ; 0x48cba
+ ld b,COIN_CASE
+ call IsItemInBag
+ jr z, .asm_ed086 ; 0x48cc1
+ call Has9990Coins
+ jr nc, .asm_31338 ; 0x48cc6
+ xor a
+ ldh [$9f], a
+ ldh [$a1], a
+ ld a, $10
+ ldh [$a0], a
+ call HasEnoughMoney
+ jr nc, .asm_b6ef0 ; 0x48cd4
+ ld hl, CeladonGameCornerText_48d31 ; $4d31
+ jr .asm_e2afd ; 0x48cd9
+.asm_b6ef0 ; 0x48cdb
+ xor a
+ ldh [$9f], a
+ ldh [$a1], a
+ ld a, $10
+ ldh [$a0], a
+ ld hl, $ffa1
+ ld de, $d349
+ ld c, $3
+ ld a, $c
+ call Predef
+ xor a
+ ldh [$9f], a
+ ldh [$a0], a
+ ld a, $50
+ ldh [$a1], a
+ ld de, $d5a5
+ ld hl, $ffa1
+ ld c, $2
+ ld a, $b
+ call Predef
+ call CeladonGameCornerScript_48f1e
+ ld hl, CeladonGameCornerText_48d27
+ jr .asm_e2afd ; 0x48d0d
+.asm_c650b ; 0x48d0f
+ ld hl, CeladonGameCornerText_48d2c
+ jr .asm_e2afd ; 0x48d12
+.asm_31338 ; 0x48d14
+ ld hl, CeladonGameCornerText_48d36
+ jr .asm_e2afd ; 0x48d17
+.asm_ed086 ; 0x48d19
+ ld hl, CeladonGameCornerText_48d3b
+.asm_e2afd ; 0x48d1c
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48d22: ; 48d22 (12:4d22)
+ TX_FAR _CeladonGameCornerText_48d22
+ db "@"
+
+CeladonGameCornerText_48d27: ; 48d27 (12:4d27)
+ TX_FAR _CeladonGameCornerText_48d27
+ db "@"
+
+CeladonGameCornerText_48d2c: ; 48d2c (12:4d2c)
+ TX_FAR _CeladonGameCornerText_48d2c
+ db "@"
+
+CeladonGameCornerText_48d31: ; 48d31 (12:4d31)
+ TX_FAR _CeladonGameCornerText_48d31
+ db "@"
+
+CeladonGameCornerText_48d36: ; 48d36 (12:4d36)
+ TX_FAR _CeladonGameCornerText_48d36
+ db "@"
+
+CeladonGameCornerText_48d3b: ; 48d3b (12:4d3b)
+ TX_FAR _CeladonGameCornerText_48d3b
+ db "@"
+
+CeladonGameCornerText3: ; 48d40 (12:4d40)
+ TX_FAR _CeladonGameCornerText3
+ db "@"
+
+CeladonGameCornerText4: ; 48d45 (12:4d45)
+ TX_FAR _CeladonGameCornerText4
+ db "@"
+
+CeladonGameCornerText5: ; 48d4a (12:4d4a)
+ db $08 ; asm
+ ld a, [$d77e]
+ bit 2, a
+ jr nz, .asm_d0957 ; 0x48d50
+ ld hl, CeladonGameCornerText_48d9c
+ call PrintText
+ ld b, COIN_CASE
+ call IsItemInBag
+ jr z, .asm_5aef9 ; 0x48d5d
+ call Has9990Coins
+ jr nc, .asm_98546 ; 0x48d62
+ xor a
+ ldh [$9f], a
+ ldh [$a0], a
+ ld a, $10
+ ldh [$a1], a
+ ld de, $d5a5
+ ld hl, $ffa1
+ ld c, $2
+ ld a, $b
+ call Predef
+ ld hl, $d77e
+ set 2, [hl]
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, Received10CoinsText
+ jr .asm_c7d1a ; 0x48d87
+.asm_d0957 ; 0x48d89
+ ld hl, CeladonGameCornerText_48dac
+ jr .asm_c7d1a ; 0x48d8c
+.asm_98546 ; 0x48d8e
+ ld hl, CeladonGameCornerText_48da7
+ jr .asm_c7d1a ; 0x48d91
+.asm_5aef9 ; 0x48d93
+ ld hl, CeladonGameCornerText_48f19
+.asm_c7d1a ; 0x48d96
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48d9c: ; 48d9c (12:4d9c)
+ TX_FAR _CeladonGameCornerText_48d9c
+ db "@"
+
+Received10CoinsText: ; 48da1 (12:4da1)
+ TX_FAR _Received10CoinsText
+ db $0B, "@"
+
+CeladonGameCornerText_48da7: ; 48da7 (12:4da7)
+ TX_FAR _CeladonGameCornerText_48da7
+ db "@"
+
+CeladonGameCornerText_48dac: ; 48dac (12:4dac)
+ TX_FAR _CeladonGameCornerText_48dac
+ db "@"
+
+CeladonGameCornerText6: ; 48db1 (12:4db1)
+ TX_FAR _CeladonGameCornerText6
+ db "@"
+
+CeladonGameCornerText7: ; 48db6 (12:4db6)
+ db $08 ; asm
+ ld a, [$d77c]
+ bit 1, a
+ ld hl, CeladonGameCornerText_48dca ; $4dca
+ jr z, .asm_be3fd ; 0x48dbf
+ ld hl, CeladonGameCornerText_48dcf ; $4dcf
+.asm_be3fd ; 0x48dc4
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48dca: ; 48dca (12:4dca)
+ TX_FAR _CeladonGameCornerText_48dca
+ db "@"
+
+CeladonGameCornerText_48dcf: ; 48dcf (12:4dcf)
+ TX_FAR _CeladonGameCornerText_48dcf
+ db "@"
+
+CeladonGameCornerText8: ; 48dd4 (12:4dd4)
+ TX_FAR _CeladonGameCornerText8
+ db "@"
+
+CeladonGameCornerText9: ; 48dd9 (12:4dd9)
+ db $08 ; asm
+ ld a, [$d77e]
+ bit 4, a
+ jr nz, .asm_ed8bc ; 0x48ddf
+ ld hl, CeladonGameCornerText_48e26
+ call PrintText
+ ld b, COIN_CASE
+ call IsItemInBag
+ jr z, .asm_df794 ; 0x48dec
+ call Has9990Coins
+ jr nc, .asm_f17c3 ; 0x48df1
+ xor a
+ ldh [$9f], a
+ ldh [$a0], a
+ ld a, $20
+ ldh [$a1], a
+ ld de, $d5a5
+ ld hl, $ffa1
+ ld c, $2
+ ld a, $b
+ call Predef
+ ld hl, $d77e
+ set 4, [hl]
+ ld hl, Received20CoinsText
+ jr .asm_0ddc2 ; 0x48e11
+.asm_ed8bc ; 0x48e13
+ ld hl, CeladonGameCornerText_48e36
+ jr .asm_0ddc2 ; 0x48e16
+.asm_f17c3 ; 0x48e18
+ ld hl, CeladonGameCornerText_48e31
+ jr .asm_0ddc2 ; 0x48e1b
+.asm_df794 ; 0x48e1d
+ ld hl, CeladonGameCornerText_48f19
+.asm_0ddc2 ; 0x48e20
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48e26: ; 48e26 (12:4e26)
+ TX_FAR _CeladonGameCornerText_48e26
+ db "@"
+
+Received20CoinsText: ; 48e2b (12:4e2b)
+ TX_FAR _Received20CoinsText
+ db $0B, "@"
+
+CeladonGameCornerText_48e31: ; 48e31 (12:4e31)
+ TX_FAR _CeladonGameCornerText_48e31
+ db "@"
+
+CeladonGameCornerText_48e36: ; 48e36 (12:4e36)
+ TX_FAR _CeladonGameCornerText_48e36
+ db "@"
+
+CeladonGameCornerText10: ; 48e3b (12:4e3b)
+ db $08 ; asm
+ ld a, [$d77e]
+ bit 3, a
+ jr nz, .asm_ff080 ; 0x48e41
+ ld hl, CeladonGameCornerText_48e88 ; $4e88
+ call PrintText
+ ld b,COIN_CASE
+ call IsItemInBag
+ jr z, .asm_4fb0c ; 0x48e4e
+ call Has9990Coins
+ jr z, .asm_9505a ; 0x48e53
+ xor a
+ ldh [$9f], a
+ ldh [$a0], a
+ ld a, $20
+ ldh [$a1], a
+ ld de, $d5a5
+ ld hl, $ffa1
+ ld c, $2
+ ld a, $b
+ call Predef
+ ld hl, $d77e
+ set 3, [hl]
+ ld hl, CeladonGameCornerText_48e8d
+ jr .asm_78d65 ; 0x48e73
+.asm_ff080 ; 0x48e75
+ ld hl, CeladonGameCornerText_48e98
+ jr .asm_78d65 ; 0x48e78
+.asm_9505a ; 0x48e7a
+ ld hl, CeladonGameCornerText_48e93
+ jr .asm_78d65 ; 0x48e7d
+.asm_4fb0c ; 0x48e7f
+ ld hl, CeladonGameCornerText_48f19
+.asm_78d65 ; 0x48e82
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48e88: ; 48e88 (12:4e88)
+ TX_FAR _CeladonGameCornerText_48e88
+ db "@"
+
+CeladonGameCornerText_48e8d: ; 48e8d (12:4e8d)
+ TX_FAR _CeladonGameCornerText_48e8d ; 0x9dceb
+ db $0B, "@"
+
+CeladonGameCornerText_48e93: ; 48e93 (12:4e93)
+ TX_FAR _CeladonGameCornerText_48e93
+ db "@"
+
+CeladonGameCornerText_48e98: ; 48e98 (12:4e98)
+ TX_FAR _CeladonGameCornerText_48e98
+ db "@"
+
+CeladonGameCornerText11: ; 48e9d (12:4e9d)
+ db $08 ; asm
+ ld hl, CeladonGameCornerText_48ece
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeladonGameCornerText_48ed3
+ ld de, CeladonGameCornerText_48ed3
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ldh [$b4], a
+ ldh [$b3], a
+ ldh [$b2], a
+ ld a, $1
+ ld [W_CELADONGAMECORNERCURSCRIPT], a
+ jp TextScriptEnd
+
+CeladonGameCornerText_48ece: ; 48ece (12:4ece)
+ TX_FAR _CeladonGameCornerText_48ece
+ db "@"
+
+CeladonGameCornerText_48ed3: ; 48ed3 (12:4ed3)
+ TX_FAR _CeladonGameCornerText_48ed3
+ db "@"
+
+CeladonGameCornerText13: ; 48ed8 (12:4ed8)
+ TX_FAR _CeladonGameCornerText_48ed8
+ db "@"
+
+CeladonGameCornerText12: ; 48edd (12:4edd)
+ db $08 ; asm
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, CeladonGameCornerText_48f09
+ call PrintText
+ call WaitForSoundToFinish
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ call WaitForSoundToFinish
+ ld hl, $d77e
+ set 1, [hl]
+ ld a, $43
+ ld [$d09f], a
+ ld bc, $0208
+ ld a, $17
+ call Predef
+ jp TextScriptEnd
+
+CeladonGameCornerText_48f09: ; 48f09 (12:4f09)
+ TX_FAR _CeladonGameCornerText_48f09 ; 0x9ddb0
+ db $8
+ ld a, (SFX_02_49 - SFX_Headers_02) / 3
+ call PlaySound
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+CeladonGameCornerText_48f19: ; 48f19 (12:4f19)
+ TX_FAR _CeladonGameCornerText_48f19
+ db "@"
+
+CeladonGameCornerScript_48f1e: ; 48f1e (12:4f1e)
+ ld hl, $d730
+ set 6, [hl]
+ FuncCoord 11, 0 ; $c3ab
+ ld hl, Coord
+ ld b, $5
+ ld c, $7
+ call TextBoxBorder
+ call UpdateSprites
+ FuncCoord 12, 1 ; $c3c0
+ ld hl, Coord
+ ld b, $4
+ ld c, $7
+ call ClearScreenArea
+ FuncCoord 12, 2 ; $c3d4
+ ld hl, Coord
+ ld de, GameCornerMoneyText
+ call PlaceString
+ FuncCoord 12, 3 ; $c3e8
+ ld hl, Coord
+ ld de, GameCornerBlankText1
+ call PlaceString
+ FuncCoord 12, 3 ; $c3e8
+ ld hl, Coord
+ ld de, $d347
+ ld c, $a3
+ call PrintBCDNumber
+ FuncCoord 12, 4 ; $c3fc
+ ld hl, Coord
+ ld de, GameCornerCoinText
+ call PlaceString
+ FuncCoord 12, 5 ; $c410
+ ld hl, Coord
+ ld de, GameCornerBlankText2
+ call PlaceString
+ FuncCoord 15, 5 ; $c413
+ ld hl, Coord
+ ld de, $d5a4
+ ld c, $82
+ call PrintBCDNumber
+ ld hl, $d730
+ res 6, [hl]
+ ret
+
+GameCornerMoneyText: ; 48f7a (12:4f7a)
+ db "MONEY@"
+
+GameCornerCoinText: ; 48f80 (12:4f80)
+ db "COIN@"
+
+GameCornerBlankText1: ; 48f85 (12:4f85)
+ db " @"
+
+GameCornerBlankText2: ; 48f8d (12:4f8d)
+ db " @"
+
+Has9990Coins: ; 48f95 (12:4f95)
+ ld a, $99
+ ld [$ffa0], a
+ ld a, $90
+ ld [$ffa1], a
+ jp HasEnoughCoins
diff --git a/scripts/celadongym.asm b/scripts/celadongym.asm
new file mode 100755
index 00000000..67102fb7
--- /dev/null
+++ b/scripts/celadongym.asm
@@ -0,0 +1,343 @@
+CeladonGymScript: ; 4890a (12:490a)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, CeladonGymScript_48927
+ call EnableAutoTextBoxDrawing
+ ld hl, CeladonGymTrainerHeaders
+ ld de, CeladonGymScriptPointers
+ ld a, [W_CELADONGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_CELADONGYMCURSCRIPT], a
+ ret
+
+CeladonGymScript_48927: ; 48927 (12:4927)
+ ld hl, Gym4CityName ; $4930
+ ld de, Gym4LeaderName ; $493d
+ jp LoadGymLeaderAndCityName
+
+Gym4CityName: ; 48930 (12:4930)
+ db "CELADON CITY@"
+
+Gym4LeaderName: ; 4893d (12:493d)
+ db "ERIKA@"
+
+CeladonGymText_48943: ; 48943 (12:4943)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_CELADONGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CeladonGymScriptPointers: ; 4894e (12:494e)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw CeladonGymScript3
+
+CeladonGymScript3: ; 48956 (12:4956)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, CeladonGymText_48943
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+CeladonGymText_48963: ; 48963 (12:4963)
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d77c
+ set 1, [hl]
+ ld bc, (TM_21 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $a
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d77c
+ set 0, [hl]
+ jr .asm_4898c
+.BagFull
+ ld a, $b
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_4898c
+ ld hl, W_OBTAINEDBADGES
+ set 3, [hl]
+ ld hl, $d72a
+ set 3, [hl]
+
+ ; deactivate gym trainers
+ ld a, [$d77c]
+ or %11111100
+ ld [$d77c], a
+ ld hl, $d77d
+ set 0, [hl]
+
+ jp CeladonGymText_48943
+
+CeladonGymTextPointers: ; 489a6 (12:49a6)
+ dw CeladonGymText1
+ dw CeladonGymText2
+ dw CeladonGymText3
+ dw CeladonGymText4
+ dw CeladonGymText5
+ dw CeladonGymText6
+ dw CeladonGymText7
+ dw CeladonGymText8
+ dw CeladonGymText9
+ dw TM21Text
+ dw TM21NoRoomText
+
+CeladonGymTrainerHeaders: ; 489bc (12:49bc)
+CeladonGymTrainerHeader0: ; 489bc (12:49bc)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText2 ; 0x4a8b TextBeforeBattle
+ dw CeladonGymAfterBattleText2 ; 0x4a95 TextAfterBattle
+ dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle
+ dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle
+
+CeladonGymTrainerHeader2: ; 489c8 (12:49c8)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText3 ; 0x4aa4 TextBeforeBattle
+ dw CeladonGymAfterBattleText3 ; 0x4aae TextAfterBattle
+ dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle
+ dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle
+
+CeladonGymTrainerHeader3: ; 489d4 (12:49d4)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText4 ; 0x4abd TextBeforeBattle
+ dw CeladonGymAfterBattleText4 ; 0x4ac7 TextAfterBattle
+ dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle
+ dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle
+
+CeladonGymTrainerHeader4: ; 489e0 (12:49e0)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText5 ; 0x4ad6 TextBeforeBattle
+ dw CeladonGymAfterBattleText5 ; 0x4ae0 TextAfterBattle
+ dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle
+ dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle
+
+CeladonGymTrainerHeader5: ; 489ec (12:49ec)
+ db $6 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText6 ; 0x4aef TextBeforeBattle
+ dw CeladonGymAfterBattleText6 ; 0x4af9 TextAfterBattle
+ dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle
+ dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle
+
+CeladonGymTrainerHeader6: ; 489f8 (12:49f8)
+ db $7 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText7 ; 0x4b08 TextBeforeBattle
+ dw CeladonGymAfterBattleText7 ; 0x4b12 TextAfterBattle
+ dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle
+ dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle
+
+CeladonGymTrainerHeader7: ; 48a04 (12:4a04)
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d77c ; flag's byte
+ dw CeladonGymBattleText8 ; 0x4b21 TextBeforeBattle
+ dw CeladonGymAfterBattleText8 ; 0x4b2b TextAfterBattle
+ dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle
+ dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle
+
+ db $ff
+
+CeladonGymText1: ; 48a11 (12:4a11)
+ db $08 ; asm
+ ld a, [$d77c]
+ bit 1, a
+ jr z, .asm_16064 ; 0x48a17
+ bit 0, a
+ jr nz, .asm_3b22c ; 0x48a1b
+ call z, CeladonGymText_48963
+ call DisableWaitingAfterTextDisplay
+ jr .asm_96252 ; 0x48a23
+.asm_3b22c ; 0x48a25
+ ld hl, CeladonGymText_48a68
+ call PrintText
+ jr .asm_96252 ; 0x48a2b
+.asm_16064 ; 0x48a2d
+ ld hl, CeladonGymText_48a5e
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeladonGymText_48a63
+ ld de, CeladonGymText_48a63
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $4
+ ld [$d05c], a
+ ld a, $3
+ ld [W_CELADONGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+.asm_96252 ; 0x48a5b
+ jp TextScriptEnd
+
+CeladonGymText_48a5e: ; 48a5e (12:4a5e)
+ TX_FAR _CeladonGymText_48a5e
+ db "@"
+
+CeladonGymText_48a63: ; 48a63 (12:4a63)
+ TX_FAR _CeladonGymText_48a63
+ db "@"
+
+CeladonGymText_48a68: ; 48a68 (12:4a68)
+ TX_FAR _CeladonGymText_48a68
+ db "@"
+
+CeladonGymText9: ; 48a6d (12:4a6d)
+ TX_FAR _CeladonGymText9
+ db "@"
+
+TM21Text: ; 48a72 (12:4a72)
+ TX_FAR _ReceivedTM21Text
+ db $0B
+ TX_FAR _TM21ExplanationText
+ db "@"
+
+TM21NoRoomText: ; 48a7c (12:4a7c)
+ TX_FAR _TM21NoRoomText
+ db "@"
+
+CeladonGymText2: ; 48a81 (12:4a81)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText2: ; 48a8b (12:4a8b)
+ TX_FAR _CeladonGymBattleText2
+ db "@"
+
+CeladonGymEndBattleText2: ; 48a90 (12:4a90)
+ TX_FAR _CeladonGymEndBattleText2
+ db "@"
+
+CeladonGymAfterBattleText2: ; 48a95 (12:4a95)
+ TX_FAR _CeladonGymAfterBattleText2
+ db "@"
+
+CeladonGymText3: ; 48a9a (12:4a9a)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText3: ; 48aa4 (12:4aa4)
+ TX_FAR _CeladonGymBattleText3
+ db "@"
+
+CeladonGymEndBattleText3: ; 48aa9 (12:4aa9)
+ TX_FAR _CeladonGymEndBattleText3
+ db "@"
+
+CeladonGymAfterBattleText3: ; 48aae (12:4aae)
+ TX_FAR _CeladonGymAfterBattleText3
+ db "@"
+
+CeladonGymText4: ; 48ab3 (12:4ab3)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText4: ; 48abd (12:4abd)
+ TX_FAR _CeladonGymBattleText4
+ db "@"
+
+CeladonGymEndBattleText4: ; 48ac2 (12:4ac2)
+ TX_FAR _CeladonGymEndBattleText4
+ db "@"
+
+CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7)
+ TX_FAR _CeladonGymAfterBattleText4
+ db "@"
+
+CeladonGymText5: ; 48acc (12:4acc)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText5: ; 48ad6 (12:4ad6)
+ TX_FAR _CeladonGymBattleText5
+ db "@"
+
+CeladonGymEndBattleText5: ; 48adb (12:4adb)
+ TX_FAR _CeladonGymEndBattleText5
+ db "@"
+
+CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0)
+ TX_FAR _CeladonGymAfterBattleText5
+ db "@"
+
+CeladonGymText6: ; 48ae5 (12:4ae5)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText6: ; 48aef (12:4aef)
+ TX_FAR _CeladonGymBattleText6
+ db "@"
+
+CeladonGymEndBattleText6: ; 48af4 (12:4af4)
+ TX_FAR _CeladonGymEndBattleText6
+ db "@"
+
+CeladonGymAfterBattleText6: ; 48af9 (12:4af9)
+ TX_FAR _CeladonGymAfterBattleText6
+ db "@"
+
+CeladonGymText7: ; 48afe (12:4afe)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText7: ; 48b08 (12:4b08)
+ TX_FAR _CeladonGymBattleText7
+ db "@"
+
+CeladonGymEndBattleText7: ; 48b0d (12:4b0d)
+ TX_FAR _CeladonGymEndBattleText7
+ db "@"
+
+CeladonGymAfterBattleText7: ; 48b12 (12:4b12)
+ TX_FAR _CeladonGymAfterBattleText7
+ db "@"
+
+CeladonGymText8: ; 48b17 (12:4b17)
+ db $08 ; asm
+ ld hl, CeladonGymTrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText8: ; 48b21 (12:4b21)
+ TX_FAR _CeladonGymBattleText8
+ db "@"
+
+CeladonGymEndBattleText8: ; 48b26 (12:4b26)
+ TX_FAR _CeladonGymEndBattleText8
+ db "@"
+
+CeladonGymAfterBattleText8: ; 48b2b (12:4b2b)
+ TX_FAR _CeladonGymAfterBattleText8
+ db "@"
diff --git a/scripts/celadonhotel.asm b/scripts/celadonhotel.asm
new file mode 100755
index 00000000..a0f80ff6
--- /dev/null
+++ b/scripts/celadonhotel.asm
@@ -0,0 +1,19 @@
+CeladonHotelScript: ; 49269 (12:5269)
+ jp EnableAutoTextBoxDrawing
+
+CeladonHotelTextPointers: ; 4926c (12:526c)
+ dw CeladonHotelText1
+ dw CeladonHotelText2
+ dw CeladonHotelText3
+
+CeladonHotelText1: ; 49272 (12:5272)
+ TX_FAR _CeladonHotelText1
+ db "@"
+
+CeladonHotelText2: ; 49277 (12:5277)
+ TX_FAR _CeladonHotelText2
+ db "@"
+
+CeladonHotelText3: ; 4927c (12:527c)
+ TX_FAR _CeladonHotelText3
+ db "@"
diff --git a/scripts/celadonhouse.asm b/scripts/celadonhouse.asm
new file mode 100755
index 00000000..aa94f2fd
--- /dev/null
+++ b/scripts/celadonhouse.asm
@@ -0,0 +1,20 @@
+CeladonHouseScript: ; 4920e (12:520e)
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonHouseTextPointers: ; 49212 (12:5212)
+ dw CeladonHouseText1
+ dw CeladonHouseText2
+ dw CeladonHouseText3
+
+CeladonHouseText1: ; 49218 (12:5218)
+ TX_FAR _CeladonHouseText1
+ db "@"
+
+CeladonHouseText2: ; 4921d (12:521d)
+ TX_FAR _CeladonHouseText2
+ db "@"
+
+CeladonHouseText3: ; 49222 (12:5222)
+ TX_FAR _CeladonHouseText3
+ db "@"
diff --git a/scripts/celadonmansion1.asm b/scripts/celadonmansion1.asm
new file mode 100755
index 00000000..14832dbe
--- /dev/null
+++ b/scripts/celadonmansion1.asm
@@ -0,0 +1,39 @@
+CeladonMansion1Script: ; 48694 (12:4694)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMansion1TextPointers: ; 48697 (12:4697)
+ dw CeladonMansion1Text1
+ dw CeladonMansion1Text2
+ dw CeladonMansion1Text3
+ dw CeladonMansion1Text4
+ dw CeladonMansion1Text5
+
+CeladonMansion1_486a1: ; 486a1 (12:46a1)
+ call PlayCry
+ jp TextScriptEnd
+
+CeladonMansion1Text1: ; 486a7 (12:46a7)
+ TX_FAR _CeladonMansion1Text1
+ db $08 ; asm
+ ld a, MEOWTH
+ jp CeladonMansion1_486a1
+
+CeladonMansion1Text2: ; 486b1 (12:46b1)
+ TX_FAR _CeladonMansion1Text2
+ db "@"
+
+CeladonMansion1Text3: ; 486b6 (12:46b6)
+ TX_FAR _CeladonMansion1Text3
+ db $8
+ ld a, CLEFAIRY
+ jp CeladonMansion1_486a1
+
+CeladonMansion1Text4: ; 486c0 (12:46c0)
+ TX_FAR _CeladonMansion1Text4
+ db $8
+ ld a, NIDORAN_F
+ jp CeladonMansion1_486a1
+
+CeladonMansion1Text5: ; 486ca (12:46ca)
+ TX_FAR _CeladonMansion1Text5
+ db "@"
diff --git a/scripts/celadonmansion2.asm b/scripts/celadonmansion2.asm
new file mode 100755
index 00000000..7f7e5d45
--- /dev/null
+++ b/scripts/celadonmansion2.asm
@@ -0,0 +1,10 @@
+CeladonMansion2Script: ; 4873a (12:473a)
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMansion2TextPointers: ; 4873e (12:473e)
+ dw CeladonMansion2Text1
+
+CeladonMansion2Text1: ; 48740 (12:4740)
+ TX_FAR _CeladonMansion2Text1
+ db "@"
diff --git a/scripts/celadonmansion3.asm b/scripts/celadonmansion3.asm
new file mode 100755
index 00000000..4c4fd67a
--- /dev/null
+++ b/scripts/celadonmansion3.asm
@@ -0,0 +1,71 @@
+CeladonMansion3Script: ; 48790 (12:4790)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMansion3TextPointers: ; 48793 (12:4793)
+ dw ProgrammerText
+ dw GraphicArtistText
+ dw WriterText
+ dw DirectorText
+ dw GameFreakPCText1
+ dw GameFreakPCText2
+ dw GameFreakPCText3
+ dw GameFreakSignText
+
+ProgrammerText: ; 487a3 (12:47a3)
+ TX_FAR _ProgrammerText
+ db "@"
+
+GraphicArtistText: ; 487a8 (12:47a8)
+ TX_FAR _GraphicArtistText
+ db "@"
+
+WriterText: ; 487ad (12:47ad)
+ TX_FAR _WriterText
+ db "@"
+
+DirectorText: ; 487b2 (12:47b2)
+ db $08 ; asm
+
+ ; check pokédex
+ ld hl, wPokedexOwned
+ ld b, wPokedexOwnedEnd - wPokedexOwned
+ call CountSetBits
+ ld a, [$d11e]
+ cp 150
+ jr nc, .CompletedDex
+ ld hl, .GameDesigner
+ jr .done
+.CompletedDex
+ ld hl, .CompletedDexText
+.done
+ call PrintText
+ jp TextScriptEnd
+
+.GameDesigner ; 487d0 (12:47d0)
+ TX_FAR _GameDesignerText
+ db "@"
+
+.CompletedDexText
+ TX_FAR _CompletedDexText
+ db $6
+ db $8 ; asm
+ callab DisplayDiploma
+ ld a, $1
+ ld [$cc3c], a
+ jp TextScriptEnd
+
+GameFreakPCText1: ; 487eb (12:47eb)
+ TX_FAR _CeladonMansion3Text5
+ db "@"
+
+GameFreakPCText2: ; 487f0 (12:47f0)
+ TX_FAR _CeladonMansion3Text6
+ db "@"
+
+GameFreakPCText3: ; 487f5 (12:47f5)
+ TX_FAR _CeladonMansion3Text7
+ db "@"
+
+GameFreakSignText: ; 487fa (12:47fa)
+ TX_FAR _CeladonMansion3Text8
+ db "@"
diff --git a/scripts/celadonmansion4.asm b/scripts/celadonmansion4.asm
new file mode 100755
index 00000000..f9045bcd
--- /dev/null
+++ b/scripts/celadonmansion4.asm
@@ -0,0 +1,9 @@
+CeladonMansion4Script: ; 4886b (12:486b)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMansion4TextPointers: ; 4886e (12:486e)
+ dw CeladonMansion4Text1
+
+CeladonMansion4Text1: ; 48870 (12:4870)
+ TX_FAR _CeladonMansion4Text1
+ db "@"
diff --git a/scripts/celadonmansion5.asm b/scripts/celadonmansion5.asm
new file mode 100755
index 00000000..1d03ae5e
--- /dev/null
+++ b/scripts/celadonmansion5.asm
@@ -0,0 +1,22 @@
+CeladonMansion5Script: ; 1dd3a (7:5d3a)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMansion5TextPointers: ; 1dd3d (7:5d3d)
+ dw CeladonMansion5Text1
+ dw CeladonMansion5Text2
+
+CeladonMansion5Text1: ; 1dd41 (7:5d41)
+ TX_FAR _CeladonMansion5Text1
+ db "@"
+
+CeladonMansion5Text2: ; 1dd46 (7:5d46)
+ db $08 ; asm
+ ld bc,(EEVEE << 8) | 25
+ call GivePokemon
+ jr nc, .asm_24365 ; 0x1dd4d
+ ld a, $45
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+.asm_24365 ; 0x1dd59
+ jp TextScriptEnd
diff --git a/scripts/celadonmart1.asm b/scripts/celadonmart1.asm
new file mode 100755
index 00000000..041af8b3
--- /dev/null
+++ b/scripts/celadonmart1.asm
@@ -0,0 +1,19 @@
+CeladonMart1Script: ; 60f86 (18:4f86)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart1TextPointers: ; 60f89 (18:4f89)
+ dw CeladonMart1Text1
+ dw CeladonMart1Text2
+ dw CeladonMart1Text3
+
+CeladonMart1Text1: ; 60f8f (18:4f8f)
+ TX_FAR _CeladonMart1Text1
+ db "@"
+
+CeladonMart1Text2: ; 60f94 (18:4f94)
+ TX_FAR _CeladonMart1Text2
+ db "@"
+
+CeladonMart1Text3: ; 60f99 (18:4f99)
+ TX_FAR _CeladonMart1Text3
+ db "@"
diff --git a/scripts/celadonmart2.asm b/scripts/celadonmart2.asm
new file mode 100755
index 00000000..92f04399
--- /dev/null
+++ b/scripts/celadonmart2.asm
@@ -0,0 +1,21 @@
+CeladonMart2Script: ; 560f5 (15:60f5)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart2TextPointers: ; 560f8 (15:60f8)
+ dw CeladonMart2Text1
+ dw CeladonMart2Text2
+ dw CeladonMart2Text3
+ dw CeladonMart2Text4
+ dw CeladonMart2Text5
+
+CeladonMart2Text3: ; 56102 (15:6102)
+ TX_FAR _CeladonMart2Text3
+ db "@"
+
+CeladonMart2Text4: ; 56107 (15:6107)
+ TX_FAR _CeladonMart2Text4
+ db "@"
+
+CeladonMart2Text5: ; 5610c (15:610c)
+ TX_FAR _CeladonMart2Text5
+ db "@"
diff --git a/scripts/celadonmart3.asm b/scripts/celadonmart3.asm
new file mode 100755
index 00000000..969fa5f8
--- /dev/null
+++ b/scripts/celadonmart3.asm
@@ -0,0 +1,109 @@
+CeladonMart3Script: ; 48225 (12:4225)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart3TextPointers: ; 48228 (12:4228)
+ dw CeladonMart3Text1
+ dw CeladonMart3Text2
+ dw CeladonMart3Text3
+ dw CeladonMart3Text4
+ dw CeladonMart3Text5
+ dw CeladonMart3Text6
+ dw CeladonMart3Text7
+ dw CeladonMart3Text8
+ dw CeladonMart3Text9
+ dw CeladonMart3Text10
+ dw CeladonMart3Text11
+ dw CeladonMart3Text12
+ dw CeladonMart3Text13
+ dw CeladonMart3Text14
+ dw CeladonMart3Text15
+ dw CeladonMart3Text16
+ dw CeladonMart3Text17
+
+CeladonMart3Text1: ; 4824a (12:424a)
+ db $08 ; asm
+ ld a, [$d778]
+ bit 7, a
+ jr nz, .asm_a5463 ; 0x48250
+ ld hl, TM18PreReceiveText
+ call PrintText
+ ld bc, (TM_18 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d778
+ set 7, [hl]
+ ld hl, ReceivedTM18Text
+ jr .asm_81359 ; 0x48268
+.BagFull
+ ld hl, TM18NoRoomText
+ jr .asm_81359 ; 0x4826d
+.asm_a5463 ; 0x4826f
+ ld hl, TM18ExplanationText
+.asm_81359 ; 0x48272
+ call PrintText
+ jp TextScriptEnd
+
+TM18PreReceiveText: ; 48278 (12:4278)
+ TX_FAR _TM18PreReceiveText
+ db "@"
+
+ReceivedTM18Text: ; 4827d (12:427d)
+ TX_FAR _ReceivedTM18Text
+ db $0B, "@"
+
+TM18ExplanationText: ; 48283 (12:4283)
+ TX_FAR _TM18ExplanationText
+ db "@"
+
+TM18NoRoomText: ; 48288 (12:4288)
+ TX_FAR _TM18NoRoomText
+ db "@"
+
+CeladonMart3Text2: ; 4828d (12:428d)
+ TX_FAR _CeladonMart3Text2
+ db "@"
+
+CeladonMart3Text3: ; 48292 (12:4292)
+ TX_FAR _CeladonMart3Text3
+ db "@"
+
+CeladonMart3Text4: ; 48297 (12:4297)
+ TX_FAR _CeladonMart3Text4
+ db "@"
+
+CeladonMart3Text5: ; 4829c (12:429c)
+ TX_FAR _CeladonMart3Text5
+ db "@"
+
+CeladonMart3Text12
+CeladonMart3Text10: ; 482a1 (12:42a1)
+CeladonMart3Text8: ; 482a1 (12:42a1)
+CeladonMart3Text6: ; 482a1 (12:42a1)
+ TX_FAR _CeladonMart3Text6
+ db "@"
+
+CeladonMart3Text7: ; 482a6 (12:42a6)
+ TX_FAR _CeladonMart3Text7
+ db "@"
+
+CeladonMart3Text9: ; 482ab (12:42ab)
+ TX_FAR _CeladonMart3Text9
+ db "@"
+
+CeladonMart3Text11: ; 482b0 (12:42b0)
+ TX_FAR _CeladonMart3Text11
+ db "@"
+
+CeladonMart3Text13: ; 482b5 (12:42b5)
+ TX_FAR _CeladonMart3Text13
+ db "@"
+
+CeladonMart3Text14: ; 482ba (12:42ba)
+ TX_FAR _CeladonMart3Text14
+ db "@"
+
+CeladonMart3Text17: ; 482bf (12:42bf)
+CeladonMart3Text16: ; 482bf (12:42bf)
+CeladonMart3Text15: ; 482bf (12:42bf)
+ TX_FAR _CeladonMart3Text15
+ db "@"
diff --git a/scripts/celadonmart4.asm b/scripts/celadonmart4.asm
new file mode 100755
index 00000000..dfe2b90a
--- /dev/null
+++ b/scripts/celadonmart4.asm
@@ -0,0 +1,20 @@
+CeladonMart4Script: ; 48356 (12:4356)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart4TextPointers: ; 48359 (12:4359)
+ dw CeladonMart4Text1
+ dw CeladonMart4Text2
+ dw CeladonMart4Text3
+ dw CeladonMart4Text4
+
+CeladonMart4Text2: ; 48361 (12:4361)
+ TX_FAR _CeladonMart4Text2
+ db "@"
+
+CeladonMart4Text3: ; 48366 (12:4366)
+ TX_FAR _CeladonMart4Text3
+ db "@"
+
+CeladonMart4Text4: ; 4836b (12:436b)
+ TX_FAR _CeladonMart4Text4
+ db "@"
diff --git a/scripts/celadonmart5.asm b/scripts/celadonmart5.asm
new file mode 100755
index 00000000..9bd7f991
--- /dev/null
+++ b/scripts/celadonmart5.asm
@@ -0,0 +1,21 @@
+CeladonMart5Script: ; 49069 (12:5069)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart5TextPointers: ; 4906c (12:506c)
+ dw CeladonMart5Text1
+ dw CeladonMart5Text2
+ dw CeladonMart5Text3
+ dw CeladonMart5Text4
+ dw CeladonMart5Text5
+
+CeladonMart5Text1: ; 49076 (12:5076)
+ TX_FAR _CeladonMart5Text1
+ db "@"
+
+CeladonMart5Text2: ; 4907b (12:507b)
+ TX_FAR _CeladonMart5Text2
+ db "@"
+
+CeladonMart5Text5: ; 49080 (12:5080)
+ TX_FAR _CeladonMart5Text5
+ db "@"
diff --git a/scripts/celadonmartelevator.asm b/scripts/celadonmartelevator.asm
new file mode 100755
index 00000000..9712ef04
--- /dev/null
+++ b/scripts/celadonmartelevator.asm
@@ -0,0 +1,71 @@
+CeladonMartElevatorScript: ; 48600 (12:4600)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, CeladonMartElevatorScript_4861c
+ pop hl
+ bit 7, [hl]
+ res 7, [hl]
+ call nz, CeladonMartElevatorScript_48654
+ xor a
+ ld [$cf0c], a
+ inc a
+ ld [$cc3c], a
+ ret
+
+CeladonMartElevatorScript_4861c: ; 4861c (12:461c)
+ ld hl, $d3af
+ ld a, [$d73b]
+ ld b, a
+ ld a, [$d73c]
+ ld c, a
+ call CeladonMartElevatorScript_4862a
+
+CeladonMartElevatorScript_4862a: ; 4862a (12:462a)
+ inc hl
+ inc hl
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ret
+
+CeladonMartElevatorScript_48631: ; 48631 (12:4631)
+ ld hl, CeladonMartElavatorFloors ; $4643
+ call LoadItemList
+ ld hl, CeldaonMartElevatorWarpMaps ; $464a
+ ld de, $cc5b
+ ld bc, $000a
+ jp CopyData
+
+CeladonMartElavatorFloors: ; 48643 (12:4643)
+ db $05 ; num elements in list
+ db $56, $57, $58, $59, $5A ; "1F", "2F", "3F", "4F, "5F"
+ db $FF ; terminator
+
+CeldaonMartElevatorWarpMaps: ; 4864a (12:464a)
+; first byte is warp number
+; second byte is map number
+; These specify where the player goes after getting out of the elevator.
+ db $05, CELADON_MART_1
+ db $02, CELADON_MART_2
+ db $02, CELADON_MART_3
+ db $02, CELADON_MART_4
+ db $02, CELADON_MART_5
+
+CeladonMartElevatorScript_48654: ; 48654 (12:4654)
+ ld b, BANK(ShakeElevator)
+ ld hl, ShakeElevator
+ jp Bankswitch
+
+CeladonMartElevatorTextPointers: ; 4865c (12:465c)
+ dw CeladonMartElevatorText1
+
+CeladonMartElevatorText1: ; 4865e (12:465e)
+ db $08 ; asm
+ call CeladonMartElevatorScript_48631
+ ld hl, CeldaonMartElevatorWarpMaps ; $464a
+ ld a, $61
+ call Predef
+ jp TextScriptEnd
diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm
new file mode 100755
index 00000000..d1765575
--- /dev/null
+++ b/scripts/celadonmartroof.asm
@@ -0,0 +1,263 @@
+CeladonMartRoofScript: ; 483d5 (12:43d5)
+ jp EnableAutoTextBoxDrawing
+
+CeladonMartRoofScript_483d8: ; 483d8 (12:43d8)
+ xor a
+ ld [$cd37], a
+ ld de, $cc5b
+ ld hl, CeladonMartRoofDrinkList ; $4408
+.asm_483e2
+ ld a, [hli]
+ and a
+ jr z, .asm_48404
+ push hl
+ push de
+ ld [$d11e], a
+ ld b, a
+ ld a, $1c
+ call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5))
+ pop de
+ pop hl
+ ld a, b
+ and a
+ jr z, .asm_483e2
+ ld a, [$d11e]
+ ld [de], a
+ inc de
+ push hl
+ ld hl, $cd37
+ inc [hl]
+ pop hl
+ jr .asm_483e2
+.asm_48404
+ ld a, $ff
+ ld [de], a
+ ret
+
+CeladonMartRoofDrinkList: ; 48408 (12:4408)
+ db FRESH_WATER
+ db SODA_POP
+ db LEMONADE
+ db $00
+
+CeladonMartRoofScript_4840c: ; 4840c (12:440c)
+ ld hl, $d730
+ set 6, [hl]
+ ld hl, CeladonMartRoofText_484ee ; $44ee
+ call PrintText
+ xor a
+ ld [wCurrentMenuItem], a ; $cc26
+ ld a, $3
+ ld [wMenuWatchedKeys], a ; $cc29
+ ld a, [$cd37]
+ dec a
+ ld [wMaxMenuItem], a ; $cc28
+ ld a, $2
+ ld [wTopMenuItemY], a ; $cc24
+ ld a, $1
+ ld [wTopMenuItemX], a ; $cc25
+ ld a, [$cd37]
+ dec a
+ ld bc, $2
+ ld hl, $3
+ call AddNTimes
+ dec l
+ ld b, l
+ ld c, $c
+ ld hl, wTileMap
+ call TextBoxBorder
+ call UpdateSprites
+ call CeladonMartRoofScript_48532
+ ld hl, $d730
+ res 6, [hl]
+ call HandleMenuInput
+ bit 1, a
+ ret nz
+ ld hl, $cc5b
+ ld a, [wCurrentMenuItem] ; $cc26
+ ld d, $0
+ ld e, a
+ add hl, de
+ ld a, [hl]
+ ld [$ffdb], a
+ cp FRESH_WATER
+ jr z, .asm_484b6
+ cp SODA_POP
+ jr z, .asm_48492
+ ld a, [$d778]
+ bit 6, a
+ jr nz, .asm_484e0
+ ld hl, CeladonMartRoofText_48515 ; $4515
+ call PrintText
+ call RemoveItemByIDBank12
+ ld bc, (TM_49 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM49Text
+ call PrintText
+ ld hl, $d778
+ set 6, [hl]
+ ret
+.asm_48492
+ ld a, [$d778]
+ bit 5, a
+ jr nz, .asm_484e0
+ ld hl, CeladonMartRoofText_48504 ; $4504
+ call PrintText
+ call RemoveItemByIDBank12
+ ld bc, (TM_48 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, CeladonMartRoofText_4850a ; $450a
+ call PrintText
+ ld hl, $d778
+ set 5, [hl]
+ ret
+.asm_484b6
+ ld a, [$d778]
+ bit 4, a
+ jr nz, .asm_484e0
+ ld hl, CeladonMartRoofText_484f3 ; $44f3
+ call PrintText
+ call RemoveItemByIDBank12
+ ld bc, (TM_13 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, CeladonMartRoofText_484f9 ; $44f9
+ call PrintText
+ ld hl, $d778
+ set 4, [hl]
+ ret
+.BagFull
+ ld hl, CeladonMartRoofText_48526 ; $4526
+ jp PrintText
+.asm_484e0
+ ld hl, CeladonMartRoofText_4852c ; $452c
+ jp PrintText
+
+RemoveItemByIDBank12: ; 484e6 (12:44e6)
+ ld b, BANK(RemoveItemByID)
+ ld hl, RemoveItemByID
+ jp Bankswitch
+
+CeladonMartRoofText_484ee: ; 484ee (12:44ee)
+ TX_FAR _CeladonMartRoofText_484ee
+ db "@"
+
+CeladonMartRoofText_484f3: ; 484f3 (12:44f3)
+ TX_FAR _CeladonMartRoofText_484f3
+ db $0d
+ db "@"
+
+CeladonMartRoofText_484f9: ; 484f9 (12:44f9)
+ TX_FAR _CeladonMartRoofText_484f9
+ db $0b
+ TX_FAR _CeladonMartRoofText_484fe
+ db $0d
+ db "@"
+
+CeladonMartRoofText_48504: ; 48504 (12:4504)
+ TX_FAR _CeladonMartRoofText_48504
+ db $0d
+ db "@"
+
+CeladonMartRoofText_4850a: ; 4850a (12:450a)
+ TX_FAR _CeladonMartRoofText_4850a
+ db $0b
+ TX_FAR _CeladonMartRoofText_4850f
+ db $0d
+ db "@"
+
+CeladonMartRoofText_48515: ; 48515 (12:4515)
+ TX_FAR _CeladonMartRoofText_48515
+ db $0d
+ db "@"
+
+ReceivedTM49Text: ; 4851b (12:451b)
+ TX_FAR _ReceivedTM49Text
+ db $0b
+ TX_FAR _CeladonMartRoofText_48520
+ db $0d
+ db "@"
+
+CeladonMartRoofText_48526: ; 48526 (12:4526)
+ TX_FAR _CeladonMartRoofText_48526
+ db $0d
+ db "@"
+
+CeladonMartRoofText_4852c: ; 4852c (12:452c)
+ TX_FAR _CeladonMartRoofText_4852c
+ db $0d
+ db "@"
+
+CeladonMartRoofScript_48532: ; 48532 (12:4532)
+ ld hl, $cc5b
+ xor a
+ ld [$ffdb], a
+.asm_48538
+ ld a, [hli]
+ cp $ff
+ ret z
+ push hl
+ ld [$d11e], a
+ call GetItemName
+ FuncCoord 2, 2 ; $c3ca
+ ld hl, Coord
+ ld a, [$ffdb]
+ ld bc, $28
+ call AddNTimes
+ ld de, $cd6d
+ call PlaceString
+ ld hl, $ffdb
+ inc [hl]
+ pop hl
+ jr .asm_48538
+
+CeladonMartRoofTextPointers: ; 4855b (12:455b)
+ dw CeladonMartRoofText1
+ dw CeladonMartRoofText2
+ dw CeladonMartRoofText5
+ dw CeladonMartRoofText5
+ dw CeladonMartRoofText5
+ dw CeladonMartRoofText6
+
+CeladonMartRoofText1: ; 48567 (12:4567)
+ TX_FAR _CeladonMartRoofText1
+ db "@"
+
+CeladonMartRoofText2: ; 4856c (12:456c)
+ db $08 ; asm
+ call CeladonMartRoofScript_483d8
+ ld a, [$cd37]
+ and a
+ jr z, .asm_914b9 ; 0x48574
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, CeladonMartRoofText4
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_05aa4 ; 0x48588
+ call CeladonMartRoofScript_4840c
+ jr .asm_05aa4 ; 0x4858d
+.asm_914b9 ; 0x4858f
+ ld hl, CeladonMartRoofText3
+ call PrintText
+.asm_05aa4 ; 0x48595
+ jp TextScriptEnd
+
+CeladonMartRoofText3: ; 48598 (12:4598)
+ TX_FAR _CeladonMartRoofText_48598
+ db "@"
+
+CeladonMartRoofText4: ; 4859d (12:459d)
+ TX_FAR _CeladonMartRoofText4
+ db "@"
+
+CeladonMartRoofText5: ; 485a2 (12:45a2)
+ db $f5
+
+CeladonMartRoofText6: ; 485a3 (12:45a3)
+ TX_FAR _CeladonMartRoofText6
+ db "@"
diff --git a/scripts/celadonpokecenter.asm b/scripts/celadonpokecenter.asm
new file mode 100755
index 00000000..e7bfd1d2
--- /dev/null
+++ b/scripts/celadonpokecenter.asm
@@ -0,0 +1,23 @@
+CeladonPokecenterScript: ; 488b8 (12:48b8)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+CeladonPokecenterTextPointers: ; 488be (12:48be)
+ dw CeladonPokecenterText1
+ dw CeladonPokecenterText2
+ dw CeladonPokecenterText3
+ dw CeladonPokecenterText4
+
+CeladonPokecenterText4: ; 488c6 (12:48c6)
+ db $f6
+
+CeladonPokecenterText1: ; 488c7 (12:48c7)
+ db $ff
+
+CeladonPokecenterText2: ; 488c8 (12:48c8)
+ TX_FAR _CeladonPokecenterText2
+ db "@"
+
+CeladonPokecenterText3: ; 488cd (12:48cd)
+ TX_FAR _CeladonPokecenterText3
+ db "@"
diff --git a/scripts/celadonprizeroom.asm b/scripts/celadonprizeroom.asm
new file mode 100755
index 00000000..2cfd01d0
--- /dev/null
+++ b/scripts/celadonprizeroom.asm
@@ -0,0 +1,20 @@
+CeladonPrizeRoomScript: ; 490f0 (12:50f0)
+ jp EnableAutoTextBoxDrawing
+
+CeladonPrizeRoomTextPointers: ; 490f3 (12:50f3)
+ dw CeladonPrizeRoomText1
+ dw CeladonPrizeRoomText2
+ dw CeladonPrizeRoomText3
+ dw CeladonPrizeRoomText3
+ dw CeladonPrizeRoomText3
+
+CeladonPrizeRoomText1: ; 490fd (12:50fd)
+ TX_FAR _CeladonPrizeRoomText1
+ db "@"
+
+CeladonPrizeRoomText2: ; 49102 (12:5102)
+ TX_FAR _CeladonPrizeRoomText2
+ db "@"
+
+CeladonPrizeRoomText3: ; 49107 (12:5107)
+ db $f7
diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm
new file mode 100755
index 00000000..86e353b1
--- /dev/null
+++ b/scripts/ceruleancity.asm
@@ -0,0 +1,444 @@
+CeruleanCityScript: ; 19480 (6:5480)
+ call EnableAutoTextBoxDrawing
+ ld hl, CeruleanCityScriptPointers
+ ld a, [W_CERULEANCITYCURSCRIPT]
+ jp CallFunctionInTable
+
+CeruleanCityScript_1948c: ; 1948c (6:548c)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_CERULEANCITYCURSCRIPT], a
+ ld a, $5
+ ld [$cc4d], a
+ ld a, $11
+ jp Predef
+
+CeruleanCityScriptPointers: ; 1949d (6:549d)
+ dw CeruleanCityScript0
+ dw CeruleanCityScript1
+ dw CeruleanCityScript2
+ dw CeruleanCityScript3
+ dw CeruleanCityScript4
+
+CeruleanCityScript4: ; 194a7 (6:54a7)
+ ld a, [W_ISINBATTLE]
+ cp $ff
+ jp z, CeruleanCityScript_1948c
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d75b
+ set 7, [hl]
+ ld a, $2
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_CERULEANCITYCURSCRIPT], a
+ ret
+
+CeruleanCityScript0: ; 194c8 (6:54c8)
+ ld a, [$d75b]
+ bit 7, a
+ jr nz, .asm_194f7 ; 0x194cd $28
+ ld hl, CeruleanCityCoords1
+ call ArePlayerCoordsInArray
+ jr nc, .asm_194f7 ; 0x194d5 $20
+ ld a, [$cd3d]
+ cp $1
+ ld a, $8
+ ld b, $0
+ jr nz, .asm_194e6 ; 0x194e0 $4
+ ld a, $4
+ ld b, $4
+.asm_194e6
+ ld [$d528], a
+ ld a, b
+ ld [$c129], a
+ call Delay3
+ ld a, $2
+ ld [$ff8c], a
+ jp DisplayTextID
+.asm_194f7
+ ld a, [$d75a]
+ bit 0, a
+ ret nz
+ ld hl, CeruleanCityCoords2
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [$d700]
+ and a
+ jr z, .asm_19512 ; 0x19508 $8
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+.asm_19512
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [W_XCOORD]
+ cp $14
+ jr z, .asm_19535 ; 0x19526 $d
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $5
+ ld [$ff8b], a
+ call Func_3500
+ ld [hl], $19
+.asm_19535
+ ld a, $5
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld de, CeruleanCityMovement1
+ ld a, $1
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $1
+ ld [W_CERULEANCITYCURSCRIPT], a
+ ret
+
+CeruleanCityCoords1: ; 1954f (6:554f)
+ db $07,$1e
+ db $09,$1e
+ db $ff
+
+CeruleanCityCoords2: ; 19554 (6:5554)
+ db $06,$14
+ db $06,$15
+ db $ff
+
+CeruleanCityMovement1: ; 19559 (6:5559)
+ db $00,$00,$00,$FF
+
+CeruleanCityScript_1955d: ; 1955d (6:555d)
+ ld a,1
+ ld [$ff8c],a
+ xor a
+ ld [$ff8d],a
+ jp Func_34a6 ; face object
+
+CeruleanCityScript1: ; 19567 (6:5567)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeruleanCityText_1966d
+ ld de, CeruleanCityText_19672
+ call PreBattleSaveRegisters
+ ld a, SONY1 + $c8
+ ld [W_CUROPPONENT], a
+
+ ; select which team to use during the encounter
+ ld a, [W_RIVALSTARTER]
+ cp SQUIRTLE
+ jr nz, .NotSquirtle ; 0x19592 $4
+ ld a, $7
+ jr .done
+.NotSquirtle
+ cp BULBASAUR
+ jr nz, .Charmander ; 0x1959a $4
+ ld a, $8
+ jr .done
+.Charmander
+ ld a, $9
+.done
+ ld [W_TRAINERNO], a
+
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ call CeruleanCityScript_1955d
+ ld a, $2
+ ld [W_CERULEANCITYCURSCRIPT], a
+ ret
+
+CeruleanCityScript2: ; 195b1 (6:55b1)
+ ld a, [$d057]
+ cp $ff
+ jp z, CeruleanCityScript_1948c
+ call CeruleanCityScript_1955d
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d75a
+ set 0, [hl]
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld a, $1
+ ld [$ff8c], a
+ call SetSpriteMovementBytesToFF
+ ld a, [W_XCOORD]
+ cp $14
+ jr nz, .asm_195f0 ; 0x195e9 $5
+ ld de, CeruleanCityMovement4
+ jr .asm_195f3 ; 0x195ee $3
+.asm_195f0
+ ld de, CeruleanCityMovement3
+.asm_195f3
+ ld a, $1
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $3
+ ld [W_CERULEANCITYCURSCRIPT], a
+ ret
+
+CeruleanCityMovement3: ; 19600 (6:5600)
+ db $80,$00,$00,$00,$00,$00,$00,$FF
+
+CeruleanCityMovement4: ; 19608 (6:5608)
+ db $c0,$00,$00,$00,$00,$00,$00,$FF
+
+CeruleanCityScript3: ; 19610 (6:5610)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $5
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ call Func_2307
+ ld a, $0
+ ld [W_CERULEANCITYCURSCRIPT], a
+ ret
+
+CeruleanCityTextPointers: ; 1962d (6:562d)
+ dw CeruleanCityText1
+ dw CeruleanCityText2
+ dw CeruleanCityText3
+ dw CeruleanCityText4
+ dw CeruleanCityText5
+ dw CeruleanCityText6
+ dw CeruleanCityText7
+ dw CeruleanCityText8
+ dw CeruleanCityText9
+ dw CeruleanCityText10
+ dw CeruleanCityText11
+ dw CeruleanCityText12
+ dw CeruleanCityText13
+ dw MartSignText
+ dw PokeCenterSignText
+ dw CeruleanCityText16
+ dw CeruleanCityText17
+
+CeruleanCityText1: ; 1964f (6:564f)
+ db $08 ; asm
+ ld a, [$d75a] ; rival battle flag
+ bit 0, a
+ ; do pre-battle text
+ jr z, .PreBattleText
+ ; or talk about bill
+ ld hl, CeruleanCityText_19677
+ call PrintText
+ jr .end ; 0x1965d
+.PreBattleText ; 0x1965f
+ ld hl, CeruleanCityText_19668
+ call PrintText
+.end ; 0x19665
+ jp TextScriptEnd
+
+CeruleanCityText_19668: ; 19668 (6:5668)
+ TX_FAR _CeruleanCityText_19668
+ db "@"
+
+CeruleanCityText_1966d: ; 1966d (6:566d)
+ TX_FAR _CeruleanCityText_1966d
+ db "@"
+
+CeruleanCityText_19672: ; 19672 (6:5672)
+ TX_FAR _CeruleanCityText_19672
+ db "@"
+
+CeruleanCityText_19677: ; 19677 (6:5677)
+ TX_FAR _CeruleanCityText_19677
+ db "@"
+
+CeruleanCityText2: ; 1967c (6:567c)
+ db $8
+ ld a, [$d75b]
+ bit 7, a
+ jr nz, .asm_4ca20 ; 0x19682 $29
+ ld hl, CeruleanCityText_196d9
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeruleanCityText_196ee
+ ld de, CeruleanCityText_196ee
+ call PreBattleSaveRegisters
+ ld a, [$ff8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $4
+ ld [W_CERULEANCITYCURSCRIPT], a
+ jp TextScriptEnd
+.asm_4ca20 ; 0x196ad
+ ld hl, CeruleanCityText_196f3
+ call PrintText
+ ld bc, $e401
+ call GiveItem
+ jr c, .Success
+ ld hl, TM28NoRoomText
+ call PrintText
+ jr .Done
+.Success
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, ReceivedTM28Text
+ call PrintText
+ callba Func_74872
+.Done
+ jp TextScriptEnd
+
+CeruleanCityText_196d9: ; 196d9 (6:56d9)
+ TX_FAR _CeruleanCityText_196d9
+ db "@"
+
+ReceivedTM28Text: ; 196de (6:56de)
+ TX_FAR _ReceivedTM28Text
+ db $0B
+ TX_FAR _ReceivedTM28Text2
+ db $0D, "@"
+
+TM28NoRoomText: ; 196e9 (6:56e9)
+ TX_FAR _TM28NoRoomText
+ db "@"
+
+CeruleanCityText_196ee: ; 196ee (6:56ee)
+ TX_FAR _CeruleanCityText_196ee
+ db "@"
+
+CeruleanCityText_196f3: ; 196f3 (6:56f3)
+ TX_FAR _CeruleanCityText_196f3
+ db "@"
+
+CeruleanCityText3: ; 196f8 (6:56f8)
+ TX_FAR _CeruleanCityText3
+ db "@"
+
+CeruleanCityText4: ; 196fd (6:56fd)
+ TX_FAR _CeruleanCityText4
+ db "@"
+
+CeruleanCityText5: ; 19702 (6:5702)
+ TX_FAR _CeruleanCityText5
+ db "@"
+
+CeruleanCityText11: ; 19707 (6:5707)
+CeruleanCityText6: ; 19707 (6:5707)
+ TX_FAR _CeruleanCityText6
+ db "@"
+
+CeruleanCityText7: ; 1970c (6:570c)
+ db $08 ; asm
+ ldh a, [$d3]
+ cp $b4
+ jr c, .asm_e9fc9 ; 0x19711
+ ld hl, CeruleanCityText_19730
+ call PrintText
+ jr .asm_d486e ; 0x19719
+.asm_e9fc9 ; 0x1971b
+ cp $64
+ jr c, .asm_df99b ; 0x1971d
+ ld hl, CeruleanCityText_19735
+ call PrintText
+ jr .asm_d486e ; 0x19725
+.asm_df99b ; 0x19727
+ ld hl, CeruleanCityText_1973a
+ call PrintText
+.asm_d486e ; 0x1972d
+ jp TextScriptEnd
+
+CeruleanCityText_19730: ; 19730 (6:5730)
+ TX_FAR _CeruleanCityText_19730
+ db "@"
+
+CeruleanCityText_19735: ; 19735 (6:5735)
+ TX_FAR _CeruleanCityText_19735
+ db "@"
+
+CeruleanCityText_1973a: ; 1973a (6:573a)
+ TX_FAR _CeruleanCityText_1973a
+ db "@"
+
+CeruleanCityText8: ; 1973f (6:573f)
+ db $08 ; asm
+ ldh a, [$d3]
+ cp $b4
+ jr c, .asm_e28da ; 0x19744
+ ld hl, CeruleanCityText_1976f
+ call PrintText
+ jr .asm_f2f38 ; 0x1974c
+.asm_e28da ; 0x1974e
+ cp $78
+ jr c, .asm_15d08 ; 0x19750
+ ld hl, CeruleanCityText_19774
+ call PrintText
+ jr .asm_f2f38 ; 0x19758
+.asm_15d08 ; 0x1975a
+ cp $3c
+ jr c, .asm_d7fea ; 0x1975c
+ ld hl, CeruleanCityText_19779
+ call PrintText
+ jr .asm_f2f38 ; 0x19764
+.asm_d7fea ; 0x19766
+ ld hl, CeruleanCityText_1977e
+ call PrintText
+.asm_f2f38 ; 0x1976c
+ jp TextScriptEnd
+
+CeruleanCityText_1976f: ; 1976f (6:576f)
+ TX_FAR _CeruleanCityText_1976f
+ db "@"
+
+CeruleanCityText_19774: ; 19774 (6:5774)
+ TX_FAR _CeruleanCityText_19774
+ db "@"
+
+CeruleanCityText_19779: ; 19779 (6:5779)
+ TX_FAR _CeruleanCityText_19779
+ db "@"
+
+CeruleanCityText_1977e: ; 1977e (6:577e)
+ TX_FAR _CeruleanCityText_1977e
+ db "@"
+
+CeruleanCityText9: ; 19783 (6:5783)
+ TX_FAR _CeruleanCityText9
+ db "@"
+
+CeruleanCityText10: ; 19788 (6:5788)
+ TX_FAR _CeruleanCityText10
+ db "@"
+
+CeruleanCityText12: ; 1978d (6:578d)
+ TX_FAR _CeruleanCityText12
+ db "@"
+
+CeruleanCityText13: ; 19792 (6:5792)
+ TX_FAR _CeruleanCityText13
+ db "@"
+
+CeruleanCityText16: ; 19797 (6:5797)
+ TX_FAR _CeruleanCityText16
+ db "@"
+
+CeruleanCityText17: ; 1979c (6:579c)
+ TX_FAR _CeruleanCityText17
+ db "@"
diff --git a/scripts/ceruleangym.asm b/scripts/ceruleangym.asm
new file mode 100755
index 00000000..7d35cf71
--- /dev/null
+++ b/scripts/ceruleangym.asm
@@ -0,0 +1,224 @@
+CeruleanGymScript: ; 5c6b3 (17:46b3)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, CeruleanGymScript_5c6d0
+ call EnableAutoTextBoxDrawing
+ ld hl, CeruleanGymTrainerHeaders
+ ld de, CeruleanGymScriptPointers
+ ld a, [W_CERULEANGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_CERULEANGYMCURSCRIPT], a
+ ret
+
+CeruleanGymScript_5c6d0: ; 5c6d0 (17:46d0)
+ ld hl, Gym2CityName ; $46d9
+ ld de, Gym2LeaderName ; $46e7
+ jp LoadGymLeaderAndCityName
+
+Gym2CityName: ; 5c6d9 (17:46d9)
+ db "CERULEAN CITY@"
+
+Gym2LeaderName: ; 5c6e7 (17:46e7)
+ db "MISTY@"
+
+CeruleanGymScript_5c6ed: ; 5c6ed (17:46ed)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_CERULEANGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CeruleanGymScriptPointers: ; 5c6f8 (17:46f8)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw CeruleanGymScript3
+
+CeruleanGymScript3: ; 5c700 (17:4700)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, CeruleanGymScript_5c6ed
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+CeruleanGymScript_5c70d: ; 5c70d (17:470d)
+ ld a, $5
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d75e
+ set 7, [hl]
+ ld bc, (TM_11 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $6
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d75e
+ set 6, [hl]
+ jr .asm_5c736
+.BagFull
+ ld a, $7
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_5c736
+ ld hl, W_OBTAINEDBADGES
+ set 1, [hl]
+ ld hl, $d72a
+ set 1, [hl]
+
+ ; deactivate gym trainers
+ ld hl, $d75e
+ set 2, [hl]
+ set 3, [hl]
+
+ jp CeruleanGymScript_5c6ed
+
+CeruleanGymTextPointers: ; 5c74a (17:474a)
+ dw CeruleanGymText1
+ dw CeruleanGymText2
+ dw CeruleanGymText3
+ dw CeruleanGymText4
+ dw CeruleanGymText5
+ dw CeruleanGymText6
+ dw CeruleanGymText7
+
+CeruleanGymTrainerHeaders: ; 5c758 (17:4758)
+CeruleanGymTrainerHeader0: ; 5c758 (17:4758)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d75e ; flag's byte
+ dw CeruleanGymBattleText1 ; 0x47e9 TextBeforeBattle
+ dw CeruleanGymAfterBattleText1 ; 0x47f3 TextAfterBattle
+ dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle
+ dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle
+
+CeruleanGymTrainerHeader1: ; 5c764 (17:4764)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d75e ; flag's byte
+ dw CeruleanGymBattleText2 ; 0x4802 TextBeforeBattle
+ dw CeruleanGymAfterBattleText2 ; 0x480c TextAfterBattle
+ dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle
+ dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle
+
+ db $ff
+
+CeruleanGymText1: ; 5c771 (17:4771)
+ db $08 ; asm
+ ld a, [$d75e]
+ bit 7, a
+ jr z, .asm_10854 ; 0x5c777
+ bit 6, a
+ jr nz, .asm_37a1b ; 0x5c77b
+ call z, CeruleanGymScript_5c70d
+ call DisableWaitingAfterTextDisplay
+ jr .asm_95b04 ; 0x5c783
+.asm_37a1b ; 0x5c785
+ ld hl, CeruleanGymText_5c7c3
+ call PrintText
+ jr .asm_95b04 ; 0x5c78b
+.asm_10854 ; 0x5c78d
+ ld hl, CeruleanGymText_5c7be
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeruleanGymText_5c7d8
+ ld de, CeruleanGymText_5c7d8
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $2
+ ld [$d05c], a
+ xor a
+ ldh [$b4], a
+ ld a, $3
+ ld [W_CERULEANGYMCURSCRIPT], a
+.asm_95b04 ; 0x5c7bb
+ jp TextScriptEnd
+
+CeruleanGymText_5c7be: ; 5c7be (17:47be)
+ TX_FAR _CeruleanGymText_5c7be
+ db "@"
+
+CeruleanGymText_5c7c3: ; 5c7c3 (17:47c3)
+ TX_FAR _CeruleanGymText_5c7c3
+ db "@"
+
+CeruleanGymText5: ; 5c7c8 (17:47c8)
+ TX_FAR _CeruleanGymText_5c7c8
+ db "@"
+
+CeruleanGymText6: ; 5c7cd (17:47cd)
+ReceivedTM11Text: ; 5c7cd (17:47cd)
+ TX_FAR _ReceivedTM11Text
+ db $0B, "@"
+
+CeruleanGymText7: ; 5c7d3 (17:47d3)
+ TX_FAR _CeruleanGymText_5c7d3
+ db "@"
+
+CeruleanGymText_5c7d8: ; 5c7d8 (17:47d8)
+ TX_FAR _CeruleanGymText_5c7d8
+ db $11, $6, "@"
+
+CeruleanGymText2: ; 5c7df (17:47df)
+ db $08 ; asm
+ ld hl, CeruleanGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeruleanGymBattleText1: ; 5c7e9 (17:47e9)
+ TX_FAR _CeruleanGymBattleText1
+ db "@"
+
+CeruleanGymEndBattleText1: ; 5c7ee (17:47ee)
+ TX_FAR _CeruleanGymEndBattleText1
+ db "@"
+
+CeruleanGymAfterBattleText1: ; 5c7f3 (17:47f3)
+ TX_FAR _CeruleanGymAfterBattleText1
+ db "@"
+
+CeruleanGymText3: ; 5c7f8 (17:47f8)
+ db $08 ; asm
+ ld hl, CeruleanGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeruleanGymBattleText2: ; 5c802 (17:4802)
+ TX_FAR _CeruleanGymBattleText2
+ db "@"
+
+CeruleanGymEndBattleText2: ; 5c807 (17:4807)
+ TX_FAR _CeruleanGymEndBattleText2
+ db "@"
+
+CeruleanGymAfterBattleText2: ; 5c80c (17:480c)
+ TX_FAR _CeruleanGymAfterBattleText2
+ db "@"
+
+CeruleanGymText4: ; 5c811 (17:4811)
+ db $08 ; asm
+ ld a, [$d75e]
+ bit 7, a
+ jr nz, .asm_f80ce ; 0x5c817
+ ld hl, CeruleanGymText_5c82a
+ call PrintText
+ jr .asm_18a31 ; 0x5c81f
+.asm_f80ce ; 0x5c821
+ ld hl, CeruleanGymText_5c82f
+ call PrintText
+.asm_18a31 ; 0x5c827
+ jp TextScriptEnd
+
+CeruleanGymText_5c82a: ; 5c82a (17:482a)
+ TX_FAR _CeruleanGymText_5c82a
+ db "@"
+
+CeruleanGymText_5c82f: ; 5c82f (17:482f)
+ TX_FAR _CeruleanGymText_5c82f
+ db "@"
diff --git a/scripts/ceruleanhouse1.asm b/scripts/ceruleanhouse1.asm
new file mode 100755
index 00000000..6bc1cd30
--- /dev/null
+++ b/scripts/ceruleanhouse1.asm
@@ -0,0 +1,18 @@
+CeruleanHouse1Script: ; 1d6f6 (7:56f6)
+ jp EnableAutoTextBoxDrawing
+
+CeruleanHouse1TextPointers: ; 1d6f9 (7:56f9)
+ dw CeruleanHouse1Text1
+ dw CeruleanHouse1Text2
+
+CeruleanHouse1Text1: ; 1d6fd (7:56fd)
+ TX_FAR _CeruleanHouse1Text1
+ db "@"
+
+CeruleanHouse1Text2: ; 1d702 (7:5702)
+ db $08 ; asm
+ ld a, $6
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+ jp TextScriptEnd
diff --git a/scripts/ceruleanhouse2.asm b/scripts/ceruleanhouse2.asm
new file mode 100755
index 00000000..eae26047
--- /dev/null
+++ b/scripts/ceruleanhouse2.asm
@@ -0,0 +1,109 @@
+CeruleanHouse2Script: ; 74e09 (1d:4e09)
+ ld a, $1
+ ld [$cf0c], a
+ dec a
+ ld [$cc3c], a
+ ret
+
+CeruleanHouse2TextPointers: ; 74e13 (1d:4e13)
+ dw CeruleanHouse2Text1
+
+CeruleanHouse2Text1: ; 74e15 (1d:4e15)
+ db $8
+ ld hl, CeruleanHouse2Text_74e77
+ call PrintText
+ xor a
+ ld [wCurrentMenuItem], a
+ ld [wListScrollOffset], a
+.asm_74e23
+ ld hl, CeruleanHouse2Text_74e7c
+ call PrintText
+ ld hl, BadgeItemList
+ call LoadItemList
+ ld hl, $cf7b
+ ld a, l
+ ld [$cf8b], a
+ ld a, h
+ ld [$cf8c], a
+ xor a
+ ld [$cf93], a
+ ld [$cc35], a
+ ld a, SPECIALLISTMENU
+ ld [wListMenuID], a
+ call DisplayListMenuID
+ jr c, .asm_74e60 ; 0x74e49 $15
+ ld hl, TextPointers_74e86
+ ld a, [$cf91]
+ sub $15
+ add a
+ ld d, $0
+ ld e, a
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call PrintText
+ jr .asm_74e23 ; 0x74e5e $c3
+.asm_74e60
+ xor a
+ ld [wListScrollOffset], a
+ ld hl, CeruleanHouse2Text_74e81
+ call PrintText
+ jp TextScriptEnd
+
+BadgeItemList: ; 74e6d (1d:4e6d)
+ db $8,BOULDERBADGE,CASCADEBADGE,THUNDERBADGE,RAINBOWBADGE,SOULBADGE,MARSHBADGE,VOLCANOBADGE,EARTHBADGE,$FF
+
+CeruleanHouse2Text_74e77: ; 74e77 (1d:4e77)
+ TX_FAR _CeruleanHouse2Text_74e77
+ db "@"
+
+CeruleanHouse2Text_74e7c: ; 74e7c (1d:4e7c)
+ TX_FAR _CeruleanHouse2Text_74e7c
+ db "@"
+
+CeruleanHouse2Text_74e81: ; 74e81 (1d:4e81)
+ TX_FAR _CeruleanHouse2Text_74e81
+ db "@"
+
+TextPointers_74e86: ; 74e86 (1d:4e86)
+ dw CeruleanHouse2Text_74e96
+ dw CeruleanHouse2Text_74e9b
+ dw CeruleanHouse2Text_74ea0
+ dw CeruleanHouse2Text_74ea5
+ dw CeruleanHouse2Text_74eaa
+ dw CeruleanHouse2Text_74eaf
+ dw CeruleanHouse2Text_74eb4
+ dw CeruleanHouse2Text_74eb9
+
+CeruleanHouse2Text_74e96: ; 74e96 (1d:4e96)
+ TX_FAR _CeruleanHouse2Text_74e96
+ db "@"
+
+CeruleanHouse2Text_74e9b: ; 74e9b (1d:4e9b)
+ TX_FAR _CeruleanHouse2Text_74e9b
+ db "@"
+
+CeruleanHouse2Text_74ea0: ; 74ea0 (1d:4ea0)
+ TX_FAR _CeruleanHouse2Text_74ea0
+ db "@"
+
+CeruleanHouse2Text_74ea5: ; 74ea5 (1d:4ea5)
+ TX_FAR _CeruleanHouse2Text_74ea5
+ db "@"
+
+CeruleanHouse2Text_74eaa: ; 74eaa (1d:4eaa)
+ TX_FAR _CeruleanHouse2Text_74eaa
+ db "@"
+
+CeruleanHouse2Text_74eaf: ; 74eaf (1d:4eaf)
+ TX_FAR _CeruleanHouse2Text_74eaf
+ db "@"
+
+CeruleanHouse2Text_74eb4: ; 74eb4 (1d:4eb4)
+ TX_FAR _CeruleanHouse2Text_74eb4
+ db "@"
+
+CeruleanHouse2Text_74eb9: ; 74eb9 (1d:4eb9)
+ TX_FAR _CeruleanHouse2Text_74eb9
+ db "@"
diff --git a/scripts/ceruleanhousetrashed.asm b/scripts/ceruleanhousetrashed.asm
new file mode 100755
index 00000000..1bb60564
--- /dev/null
+++ b/scripts/ceruleanhousetrashed.asm
@@ -0,0 +1,40 @@
+CeruleanHouseTrashedScript: ; 1d685 (7:5685)
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeruleanHouseTrashedTextPointers: ; 1d689 (7:5689)
+ dw CeruleanHouseTrashedText1
+ dw CeruleanHouseTrashedText2
+ dw CeruleanHouseTrashedText3
+
+CeruleanHouseTrashedText1: ; 1d68f (7:568f)
+ db $08 ; asm
+ ld b, $e4
+ ld a, $1c
+ call Predef
+ and b
+ jr z, .asm_f8734 ; 0x1d698
+ ld hl, CeruleanHouseTrashedText_1d6b0
+ call PrintText
+ jr .asm_8dfe9 ; 0x1d6a0
+.asm_f8734 ; 0x1d6a2
+ ld hl, CeruleanHouseTrashedText_1d6ab
+ call PrintText
+.asm_8dfe9 ; 0x1d6a8
+ jp TextScriptEnd
+
+CeruleanHouseTrashedText_1d6ab: ; 1d6ab (7:56ab)
+ TX_FAR _CeruleanTrashedText_1d6ab
+ db "@"
+
+CeruleanHouseTrashedText_1d6b0: ; 1d6b0 (7:56b0)
+ TX_FAR _CeruleanTrashedText_1d6b0
+ db "@"
+
+CeruleanHouseTrashedText2: ; 1d6b5 (7:56b5)
+ TX_FAR _CeruleanHouseTrashedText2
+ db "@"
+
+CeruleanHouseTrashedText3: ; 1d6ba (7:56ba)
+ TX_FAR _CeruleanHouseTrashedText3
+ db "@"
diff --git a/scripts/ceruleanmart.asm b/scripts/ceruleanmart.asm
new file mode 100755
index 00000000..7aea6d47
--- /dev/null
+++ b/scripts/ceruleanmart.asm
@@ -0,0 +1,15 @@
+CeruleanMartScript: ; 5c895 (17:4895)
+ jp EnableAutoTextBoxDrawing
+
+CeruleanMartTextPointers: ; 5c898 (17:4898)
+ dw CeruleanMartText1
+ dw CeruleanMartText2
+ dw CeruleanMartText3
+
+CeruleanMartText2: ; 5c89e (17:489e)
+ TX_FAR _CeruleanMartText2
+ db "@"
+
+CeruleanMartText3: ; 5c8a3 (17:48a3)
+ TX_FAR _CeruleanMartText3
+ db "@"
diff --git a/scripts/ceruleanpokecenter.asm b/scripts/ceruleanpokecenter.asm
new file mode 100755
index 00000000..b6f88b41
--- /dev/null
+++ b/scripts/ceruleanpokecenter.asm
@@ -0,0 +1,23 @@
+CeruleanPokecenterScript: ; 5c645 (17:4645)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+CeruleanPokecenterTextPointers: ; 5c64b (17:464b)
+ dw CeruleanPokecenterText1
+ dw CeruleanPokecenterText2
+ dw CeruleanPokecenterText3
+ dw CeruleanPokecenterText4
+
+CeruleanPokecenterText4: ; 5c653 (17:4653)
+ db $f6
+
+CeruleanPokecenterText1: ; 5c654 (17:4654)
+ db $ff
+
+CeruleanPokecenterText2: ; 5c655 (17:4655)
+ TX_FAR _CeruleanPokecenterText1
+ db "@"
+
+CeruleanPokecenterText3: ; 5c65a (17:465a)
+ TX_FAR _CeruleanPokecenterText3
+ db "@"
diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm
new file mode 100755
index 00000000..1d66a1bf
--- /dev/null
+++ b/scripts/cinnabargym.asm
@@ -0,0 +1,483 @@
+CinnabarGymScript: ; 7574a (1d:574a)
+ call CinnabarGymScript_75759
+ call EnableAutoTextBoxDrawing
+ ld hl, CinnabarGymScriptPointers
+ ld a, [W_CINNABARGYMCURSCRIPT]
+ jp CallFunctionInTable
+
+CinnabarGymScript_75759: ; 75759 (1d:5759)
+ ld hl, $D126
+ bit 6, [hl]
+ res 6, [hl]
+ push hl
+ call nz, CinnabarGymScript_75772
+ pop hl
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, Func_3ead
+ ld hl, $D79B
+ res 7, [hl]
+ ret
+CinnabarGymScript_75772: ; 75772 (1d:5772)
+ ld hl, Gym7CityName
+ ld de, Gym7LeaderName
+ jp LoadGymLeaderAndCityName
+
+Gym7CityName: ; 7577b (1d:577b)
+ db "CINNABAR ISLAND@"
+Gym7LeaderName: ; 7578b (1d:578b)
+ db "BLAINE@"
+
+CinnabarGymScript_75792: ; 75792 (1d:5792)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_CINNABARGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ld [$da38], a
+ ret
+
+CinnabarGymScript_757a0: ; 757a0 (1d:57a0)
+ ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld [wTrainerHeaderFlagBit], a
+ ret
+
+CinnabarGymScriptPointers: ; 757a6 (1d:57a6)
+ dw CinnabarGymScript0
+ dw CinnabarGymScript1
+ dw CinnabarGymScript2
+ dw CinnabarGymScript3
+
+CinnabarGymScript0: ; 757ae (1d:57ae)
+ ld a, [$da38]
+ and a
+ ret z
+ ld [$ff8c], a
+ cp $4
+ jr nz, .asm_757c3 ; 0x757b7 $a
+ ld a, $4
+ ld [$d528], a
+ ld de, MovementData_757d7
+ jr .asm_757cb ; 0x757c1 $8
+.asm_757c3
+ ld de, MovementData_757da
+ ld a, $1
+ ld [$d528], a
+.asm_757cb
+ call MoveSprite
+ ld a, $1
+ ld [W_CINNABARGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+MovementData_757d7: ; 757d7 (1d:57d7)
+ db $80,$40,$FF
+
+MovementData_757da: ; 757da (1d:57da)
+ db $80,$FF
+
+CinnabarGymScript1: ; 757dc (1d:57dc)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [$da38]
+ ld [wTrainerHeaderFlagBit], a
+ ld [$ff8c], a
+ jp DisplayTextID
+
+CinnabarGymScript_757f1: ; 757f1 (1d:57f1)
+ ld a, $10
+ jp Predef ; indirect jump to HandleBitArray (f666 (3:7666))
+
+CinnabarGymScript2: ; 757f6 (1d:57f6)
+ ld a, [$d057]
+ cp $ff
+ jp z, CinnabarGymScript_75792
+ ld a, [wTrainerHeaderFlagBit]
+ ld [$ffdb], a
+ ld c, a
+ ld b, $2
+ ld hl, $d79a
+ call CinnabarGymScript_757f1
+ ld a, c
+ and a
+ jr nz, .asm_7581b ; 0x7580e $b
+ call WaitForSoundToFinish
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ call WaitForSoundToFinish
+.asm_7581b
+ ld a, [wTrainerHeaderFlagBit]
+ ld [$ffdb], a
+ ld c, a
+ ld b, $1
+ ld hl, $d79a
+ call CinnabarGymScript_757f1
+ ld a, [wTrainerHeaderFlagBit]
+ sub $2
+ ld c, a
+ ld b, $1
+ ld hl, $d79c
+ call CinnabarGymScript_757f1
+ call Func_3ead
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [$da38], a
+ ld a, $0
+ ld [W_CINNABARGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CinnabarGymScript3: ; 7584a (1d:584a)
+ ld a, [$d057]
+ cp $ff
+ jp z, CinnabarGymScript_75792
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+CinnabarGymScript3_75857: ; 75857 (1d:5857)
+ ld a, $a
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d79a
+ set 1, [hl]
+ ld bc, (TM_38 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $b
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d79a
+ set 0, [hl]
+ jr .asm_75880 ; 0x75877 $7
+.BagFull
+ ld a, $c
+ ld [$ff8c], a
+ call DisplayTextID
+.asm_75880
+ ld hl, W_OBTAINEDBADGES
+ set 6, [hl]
+ ld hl, $d72a
+ set 6, [hl]
+
+ ; deactivate gym trainers
+ ld a, [$d79a]
+ or %11111100
+ ld [$d79a], a
+ ld hl, $d79b
+ set 0, [hl]
+
+ ld hl, $d126
+ set 5, [hl]
+
+ jp CinnabarGymScript_75792
+
+CinnabarGymTextPointers: ; 7589f (1d:589f)
+ dw CinnabarGymText1
+ dw CinnabarGymText2
+ dw CinnabarGymText3
+ dw CinnabarGymText4
+ dw CinnabarGymText5
+ dw CinnabarGymText6
+ dw CinnabarGymText7
+ dw CinnabarGymText8
+ dw CinnabarGymText9
+ dw BlaineBadgeText
+ dw ReceivedTM38Text
+ dw TM38NoRoomText
+
+CinnabarGymScript_758b7: ; 758b7 (1d:58b7)
+ ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld a, [$cf13]
+ cp $1
+ jr z, .asm_758d4
+ ld a, $2
+ jr .asm_758d6
+.asm_758d4
+ ld a, $3
+.asm_758d6
+ ld [W_CINNABARGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jp TextScriptEnd
+
+CinnabarGymText1: ; 758df (1d:58df)
+ db $8
+ ld a, [$d79a]
+ bit 1, a
+ jr z, .asm_d9332 ; 0x758e5 $16
+ bit 0, a
+ jr nz, .asm_3012f ; 0x758e9 $9
+ call z, CinnabarGymScript3_75857
+ call DisableWaitingAfterTextDisplay
+ jp TextScriptEnd
+.asm_3012f ; 0x758f4
+ ld hl, BlaineFireBlastText
+ call PrintText
+ jp TextScriptEnd
+.asm_d9332 ; 0x758fd
+ ld hl, BlaineBattleText
+ call PrintText
+ ld hl, BlaineEndBattleText
+ ld de, BlaineEndBattleText
+ call PreBattleSaveRegisters
+ ld a, $7
+ ld [$d05c], a
+ jp CinnabarGymScript_758b7
+
+BlaineBattleText: ; 75914 (1d:5914)
+ TX_FAR _BlaineBattleText
+ db "@"
+
+BlaineEndBattleText: ; 75919 (1d:5919)
+ TX_FAR _BlaineEndBattleText
+ db $11
+ db $d
+ db "@"
+
+BlaineFireBlastText: ; 75920 (1d:5920)
+ TX_FAR _BlaineFireBlastText
+ db "@"
+
+BlaineBadgeText: ; 75925 (1d:5925)
+ TX_FAR _BlaineBadgeText
+ db "@"
+
+ReceivedTM38Text: ; 7592a (1d:592a)
+ TX_FAR _ReceivedTM38Text
+ db $0B
+ TX_FAR _TM38ExplanationText
+ db "@"
+
+TM38NoRoomText: ; 75934 (1d:5934)
+ TX_FAR _TM38NoRoomText
+ db "@"
+
+CinnabarGymText2: ; 75939 (1d:5939)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79a]
+ bit 2, a
+ jr nz, .asm_46bb4 ; 0x75942
+ ld hl, CinnabarGymText_7595f
+ call PrintText
+ ld hl, CinnabarGymText_75964
+ ld de, CinnabarGymText_75964 ; $5964 XXX
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_46bb4 ; 0x75956
+ ld hl, CinnabarGymText_75969
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_7595f: ; 7595f (1d:595f)
+ TX_FAR _CinnabarGymText_7595f
+ db "@"
+
+CinnabarGymText_75964: ; 75964 (1d:5964)
+ TX_FAR _CinnabarGymText_75964
+ db "@"
+
+CinnabarGymText_75969: ; 75969 (1d:5969)
+ TX_FAR _CinnabarGymText_75969
+ db "@"
+
+CinnabarGymText3: ; 7596e (1d:596e)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79a]
+ bit 3, a
+ jr nz, .asm_4b406 ; 0x75977
+ ld hl, CinnabarGymText_75994
+ call PrintText
+ ld hl, CinnabarGymText_75999
+ ld de, CinnabarGymText_75999 ; $5999 XXX
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_4b406 ; 0x7598b
+ ld hl, CinnabarGymText_7599e
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75994: ; 75994 (1d:5994)
+ TX_FAR _CinnabarGymText_75994
+ db "@"
+
+CinnabarGymText_75999: ; 75999 (1d:5999)
+ TX_FAR _CinnabarGymText_75999
+ db "@"
+
+CinnabarGymText_7599e: ; 7599e (1d:599e)
+ TX_FAR _CinnabarGymText_7599e
+ db "@"
+
+CinnabarGymText4: ; 759a3 (1d:59a3)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79a]
+ bit 4, a
+ jr nz, .asm_c0673 ; 0x759ac
+ ld hl, CinnabarGymText_759c9
+ call PrintText
+ ld hl, CinnabarGymText_759ce
+ ld de, CinnabarGymText_759ce ; $59ce XXX
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_c0673 ; 0x759c0
+ ld hl, CinnabarGymText_759d3
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_759c9: ; 759c9 (1d:59c9)
+ TX_FAR _CinnabarGymText_759c9
+ db "@"
+
+CinnabarGymText_759ce: ; 759ce (1d:59ce)
+ TX_FAR _CinnabarGymText_759ce
+ db "@"
+
+CinnabarGymText_759d3: ; 759d3 (1d:59d3)
+ TX_FAR _CinnabarGymText_759d3
+ db "@"
+
+CinnabarGymText5: ; 759d8 (1d:59d8)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79a]
+ bit 5, a
+ jr nz, .asm_5cfd7 ; 0x759e1
+ ld hl, CinnabarGymText_759fe
+ call PrintText
+ ld hl, CinnabarGymText_75a03
+ ld de, CinnabarGymText_75a03 ; $5a03 XXX
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_5cfd7 ; 0x759f5
+ ld hl, CinnabarGymText_75a08
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_759fe: ; 759fe (1d:59fe)
+ TX_FAR _CinnabarGymText_759fe
+ db "@"
+
+CinnabarGymText_75a03: ; 75a03 (1d:5a03)
+ TX_FAR _CinnabarGymText_75a03
+ db "@"
+
+CinnabarGymText_75a08: ; 75a08 (1d:5a08)
+ TX_FAR _CinnabarGymText_75a08
+ db "@"
+
+CinnabarGymText6: ; 75a0d (1d:5a0d)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79a]
+ bit 6, a
+ jr nz, .asm_776b4 ; 0x75a16
+ ld hl, CinnabarGymText_75a33
+ call PrintText
+ ld hl, CinnabarGymText_75a38
+ ld de, CinnabarGymText_75a38
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_776b4 ; 0x75a2a
+ ld hl, CinnabarGymText_75a3d
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75a33: ; 75a33 (1d:5a33)
+ TX_FAR _CinnabarGymText_75a33
+ db "@"
+
+CinnabarGymText_75a38: ; 75a38 (1d:5a38)
+ TX_FAR _CinnabarGymText_75a38
+ db "@"
+
+CinnabarGymText_75a3d: ; 75a3d (1d:5a3d)
+ TX_FAR _CinnabarGymText_75a3d
+ db "@"
+
+CinnabarGymText7: ; 75a42 (1d:5a42)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79a]
+ bit 7, a
+ jr nz, .asm_2f755 ; 0x75a4b
+ ld hl, CinnabarGymText_75a68
+ call PrintText
+ ld hl, CinnabarGymText_75a6d
+ ld de, CinnabarGymText_75a6d
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_2f755 ; 0x75a5f
+ ld hl, CinnabarGymText_75a72
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75a68: ; 75a68 (1d:5a68)
+ TX_FAR _CinnabarGymText_75a68
+ db "@"
+
+CinnabarGymText_75a6d: ; 75a6d (1d:5a6d)
+ TX_FAR _CinnabarGymText_75a6d
+ db "@"
+
+CinnabarGymText_75a72: ; 75a72 (1d:5a72)
+ TX_FAR _CinnabarGymText_75a72
+ db "@"
+
+CinnabarGymText8: ; 75a77 (1d:5a77)
+ db $08 ; asm
+ call CinnabarGymScript_757a0
+ ld a, [$d79b]
+ bit 0, a
+ jr nz, .asm_d87be ; 0x75a80
+ ld hl, CinnabarGymText_75a9d
+ call PrintText
+ ld hl, CinnabarGymText_75aa2
+ ld de, CinnabarGymText_75aa2 ; $5aa2 XXX
+ call PreBattleSaveRegisters
+ jp CinnabarGymScript_758b7
+.asm_d87be ; 0x75a94
+ ld hl, CinnabarGymText_75aa7
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75a9d: ; 75a9d (1d:5a9d)
+ TX_FAR _CinnabarGymText_75a9d
+ db "@"
+
+CinnabarGymText_75aa2: ; 75aa2 (1d:5aa2)
+ TX_FAR _CinnabarGymText_75aa2
+ db "@"
+
+CinnabarGymText_75aa7: ; 75aa7 (1d:5aa7)
+ TX_FAR _CinnabarGymText_75aa7
+ db "@"
+
+CinnabarGymText9: ; 75aac (1d:5aac)
+ db $08 ; asm
+ ld a, [$d79a]
+ bit 1, a
+ jr nz, .asm_627d9 ; 0x75ab2
+ ld hl, CinnabarGymText_75ac2
+ jr .asm_0b11d ; 0x75ab7
+.asm_627d9 ; 0x75ab9
+ ld hl, CinnabarGymText_75ac7
+.asm_0b11d ; 0x75abc
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75ac2: ; 75ac2 (1d:5ac2)
+ TX_FAR _CinnabarGymText_75ac2
+ db "@"
+
+CinnabarGymText_75ac7: ; 75ac7 (1d:5ac7)
+ TX_FAR _CinnabarGymText_75ac7
+ db "@"
diff --git a/scripts/cinnabarisland.asm b/scripts/cinnabarisland.asm
new file mode 100755
index 00000000..ab77926a
--- /dev/null
+++ b/scripts/cinnabarisland.asm
@@ -0,0 +1,87 @@
+CinnabarIslandScript: ; 1ca19 (7:4a19)
+ call EnableAutoTextBoxDrawing
+ ld hl, $d126
+ set 5, [hl]
+ ld hl, $d796
+ res 0, [hl]
+ ld hl, $d7a3
+ res 1, [hl]
+ ld hl, CinnabarIslandScriptPointers
+ ld a, [W_CINNABARISLANDCURSCRIPT]
+ jp CallFunctionInTable
+
+CinnabarIslandScriptPointers: ; 1ca34 (7:4a34)
+ dw CinnabarIslandScript0
+ dw CinnabarIslandScript1
+
+CinnabarIslandScript0: ; 1ca38 (7:4a38)
+ ld b, SECRET_KEY
+ call IsItemInBag
+ ret nz
+ ld a, [W_YCOORD]
+ cp $4
+ ret nz
+ ld a, [W_XCOORD]
+ cp $12
+ ret nz
+ ld a, $8
+ ld [$d528], a
+ ld a, $8
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $1
+ ld [$cd38], a
+ ld a, $80
+ ld [$ccd3], a
+ call Func_3486
+ xor a
+ ld [$c109], a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [W_CINNABARISLANDCURSCRIPT], a
+ ret
+
+CinnabarIslandScript1: ; 1ca73 (7:4a73)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ ld a, $0
+ ld [W_CINNABARISLANDCURSCRIPT], a
+ ret
+
+CinnabarIslandTextPointers: ; 1ca81 (7:4a81)
+ dw CinnabarIslandText1
+ dw CinnabarIslandText2
+ dw CinnabarIslandText3
+ dw MartSignText
+ dw PokeCenterSignText
+ dw CinnabarIslandText6
+ dw CinnabarIslandText7
+ dw CinnabarIslandText8
+
+CinnabarIslandText8: ; 1ca91 (7:4a91)
+ TX_FAR _CinnabarIslandText8
+ db "@"
+
+CinnabarIslandText1: ; 1ca96 (7:4a96)
+ TX_FAR _CinnabarIslandText1
+ db "@"
+
+CinnabarIslandText2: ; 1ca9b (7:4a9b)
+ TX_FAR _CinnabarIslandText2
+ db "@"
+
+CinnabarIslandText3: ; 1caa0 (7:4aa0)
+ TX_FAR _CinnabarIslandText3
+ db "@"
+
+CinnabarIslandText6: ; 1caa5 (7:4aa5)
+ TX_FAR _CinnabarIslandText6
+ db "@"
+
+CinnabarIslandText7: ; 1caaa (7:4aaa)
+ TX_FAR _CinnabarIslandText7
+ db "@"
diff --git a/scripts/cinnabarmart.asm b/scripts/cinnabarmart.asm
new file mode 100755
index 00000000..2abd7b67
--- /dev/null
+++ b/scripts/cinnabarmart.asm
@@ -0,0 +1,15 @@
+CinnabarMartScript: ; 75e7e (1d:5e7e)
+ jp EnableAutoTextBoxDrawing
+
+CinnabarMartTextPointers: ; 75e81 (1d:5e81)
+ dw CinnabarMartText1
+ dw CinnabarMartText2
+ dw CinnabarMartText3
+
+CinnabarMartText2: ; 75e87 (1d:5e87)
+ TX_FAR _CinnabarMartText2
+ db "@"
+
+CinnabarMartText3: ; 75e8c (1d:5e8c)
+ TX_FAR _CinnabarMartText3
+ db "@"
diff --git a/scripts/cinnabarpokecenter.asm b/scripts/cinnabarpokecenter.asm
new file mode 100755
index 00000000..a2a41592
--- /dev/null
+++ b/scripts/cinnabarpokecenter.asm
@@ -0,0 +1,23 @@
+CinnabarPokecenterScript: ; 75e2c (1d:5e2c)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+CinnabarPokecenterTextPointers: ; 75e32 (1d:5e32)
+ dw CinnabarPokecenterText1
+ dw CinnabarPokecenterText2
+ dw CinnabarPokecenterText3
+ dw CinnabarPokecenterText4
+
+CinnabarPokecenterText1: ; 75e3a (1d:5e3a)
+ db $ff
+
+CinnabarPokecenterText2: ; 75e3b (1d:5e3b)
+ TX_FAR _CinnabarPokecenterText1
+ db "@"
+
+CinnabarPokecenterText3: ; 75e40 (1d:5e40)
+ TX_FAR _CinnabarPokecenterText3
+ db "@"
+
+CinnabarPokecenterText4: ; 75e45 (1d:5e45)
+ db $f6
diff --git a/scripts/copycatshouse1f.asm b/scripts/copycatshouse1f.asm
new file mode 100755
index 00000000..230a3ca3
--- /dev/null
+++ b/scripts/copycatshouse1f.asm
@@ -0,0 +1,22 @@
+CopycatsHouse1FScript: ; 75ec3 (1d:5ec3)
+ jp EnableAutoTextBoxDrawing
+
+CopycatsHouse1FTextPointers: ; 75ec6 (1d:5ec6)
+ dw CopycatsHouse1FText1
+ dw CopycatsHouse1FText2
+ dw CopycatsHouse1FText3
+
+CopycatsHouse1FText1: ; 75ecc (1d:5ecc)
+ TX_FAR _CopycatsHouse1FText1
+ db "@"
+
+CopycatsHouse1FText2: ; 75ed1 (1d:5ed1)
+ TX_FAR _CopycatsHouse1FText2
+ db "@"
+
+CopycatsHouse1FText3: ; 75ed6 (1d:5ed6)
+ TX_FAR _CopycatsHouse1FText3
+ db $8
+ ld a, CHANSEY
+ call PlayCry
+ jp TextScriptEnd
diff --git a/scripts/copycatshouse2f.asm b/scripts/copycatshouse2f.asm
new file mode 100755
index 00000000..afe589da
--- /dev/null
+++ b/scripts/copycatshouse2f.asm
@@ -0,0 +1,102 @@
+CopycatsHouse2FScript: ; 5cc71 (17:4c71)
+ jp EnableAutoTextBoxDrawing
+
+CopycatsHouse2FTextPointers: ; 5cc74 (17:4c74)
+ dw CopycatsHouse2FText1
+ dw CopycatsHouse2FText2
+ dw CopycatsHouse2FText3
+ dw CopycatsHouse2FText4
+ dw CopycatsHouse2FText5
+ dw CopycatsHouse2FText6
+ dw CopycatsHouse2FText7
+
+CopycatsHouse2FText1: ; 5cc82 (17:4c82)
+ db $08 ; asm
+ ld a, [$d7af]
+ bit 0, a
+ jr nz, .asm_7ccf3 ; 0x5cc88
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, CopycatsHouse2FText_5ccd4
+ call PrintText
+ ld b, POKE_DOLL
+ call IsItemInBag
+ jr z, .asm_62ecd ; 0x5cc9a
+ ld hl, TM31PreReceiveText
+ call PrintText
+ ld bc, (TM_31 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM31Text
+ call PrintText
+ ld a, POKE_DOLL
+ ldh [$db], a
+ callba RemoveItemByID
+ ld hl, $d7af
+ set 0, [hl]
+ jr .asm_62ecd ; 0x5ccc1
+.BagFull
+ ld hl, TM31NoRoomText
+ call PrintText
+ jr .asm_62ecd ; 0x5ccc9
+.asm_7ccf3 ; 0x5cccb
+ ld hl, TM31ExplanationText2
+ call PrintText
+.asm_62ecd ; 0x5ccd1
+ jp TextScriptEnd
+
+CopycatsHouse2FText_5ccd4: ; 5ccd4 (17:4cd4)
+ TX_FAR _CopycatsHouse2FText_5ccd4
+ db "@"
+
+TM31PreReceiveText: ; 5ccd9 (17:4cd9)
+ TX_FAR _TM31PreReceiveText
+ db "@"
+
+ReceivedTM31Text: ; 5ccde (17:4cde)
+ TX_FAR _ReceivedTM31Text
+ db $0B
+TM31ExplanationText1: ; 5cce3 (17:4ce3)
+ TX_FAR _TM31ExplanationText1
+ db $d, "@"
+
+TM31ExplanationText2: ; 5cce9 (17:4ce9)
+ TX_FAR _TM31ExplanationText2
+ db "@"
+
+TM31NoRoomText: ; 5ccee (17:4cee)
+ TX_FAR _TM31NoRoomText
+ db $d, "@"
+
+CopycatsHouse2FText2: ; 5ccf4 (17:4cf4)
+ TX_FAR _CopycatsHouse2FText2
+ db "@"
+
+CopycatsHouse2FText5: ; 5ccf9 (17:4cf9)
+CopycatsHouse2FText4: ; 5ccf9 (17:4cf9)
+CopycatsHouse2FText3: ; 5ccf9 (17:4cf9)
+ TX_FAR _CopycatsHouse2FText3
+ db "@"
+
+CopycatsHouse2FText6: ; 5ccfe (17:4cfe)
+ TX_FAR _CopycatsHouse2FText6
+ db "@"
+
+CopycatsHouse2FText7: ; 5cd03 (17:4d03)
+ db $08 ; asm
+ ld a, [$c109]
+ cp $4
+ ld hl, CopycatsHouse2FText_5cd1c
+ jr nz, .asm_399a4 ; 0x5cd0c
+ ld hl, CopycatsHouse2FText_5cd17
+.asm_399a4 ; 0x5cd11
+ call PrintText
+ jp TextScriptEnd
+
+CopycatsHouse2FText_5cd17: ; 5cd17 (17:4d17)
+ TX_FAR _CopycatsHouse2FText_5cd17
+ db "@"
+
+CopycatsHouse2FText_5cd1c: ; 5cd1c (17:4d1c)
+ TX_FAR _CopycatsHouse2FText_5cd1c
+ db "@"
diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm
new file mode 100755
index 00000000..706a7bbf
--- /dev/null
+++ b/scripts/daycarem.asm
@@ -0,0 +1,268 @@
+DayCareMScript: ; 5624f (15:624f)
+ jp EnableAutoTextBoxDrawing
+
+DayCareMTextPointers: ; 56252 (15:6252)
+ dw DayCareMText1
+
+DayCareMText1: ; 56254 (15:6254)
+ db $8
+ call SaveScreenTilesToBuffer2
+ ld a, [W_DAYCARE_IN_USE]
+ and a
+ jp nz, DayCareMScript_562e1
+ ld hl, DayCareMText_5640f
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ ld hl, DayCareMText_5643b
+ jp nz, DayCareMScript_56409
+ ld a, [$d163]
+ dec a
+ ld hl, DayCareMText_56445
+ jp z, DayCareMScript_56409
+ ld hl, DayCareMText_56414
+ call PrintText
+ xor a
+ ld [$cfcb], a
+ ld [$d07d], a
+ ld [$cc35], a
+ call DisplayPartyMenu
+ push af
+ call GBPalWhiteOutWithDelay3
+ call Func_3dbe
+ call LoadGBPal
+ pop af
+ ld hl, DayCareMText_56437
+ jp c, DayCareMScript_56409
+ callab Func_2171b
+ ld hl, DayCareMText_5644a
+ jp c, DayCareMScript_56409
+ xor a
+ ld [$cc2b], a
+ ld a, [wWhichPokemon]
+ ld hl, $d2b5
+ call GetPartyMonName
+ ld hl, DayCareMText_56419
+ call PrintText
+ ld a, $1
+ ld [W_DAYCARE_IN_USE], a
+ ld a, $3
+ ld [$cf95], a
+ call Func_3a68
+ xor a
+ ld [$cf95], a
+ call RemovePokemon
+ ld a, [$cf91]
+ call PlayCry
+ ld hl, DayCareMText_5641e
+ jp DayCareMScript_56409
+
+DayCareMScript_562e1: ; 562e1 (15:62e1)
+ xor a
+ ld hl, W_DAYCAREMONNAME
+ call GetPartyMonName
+ ld a, $3
+ ld [$cc49], a
+ call LoadMonData
+ callab Func_58f43
+ ld a, d
+ cp $64
+ jr c, .asm_56315
+ ld d, $64
+ callab CalcExperience
+ ld hl, $da6d
+ ld a, [H_NUMTOPRINT]
+ ld [hli], a
+ ld a, [$ff97]
+ ld [hli], a
+ ld a, [$ff98]
+ ld [hl], a
+ ld d, $64
+
+.asm_56315
+ xor a
+ ld [wTrainerEngageDistance], a
+ ld hl, $da62
+ ld a, [hl]
+ ld [wTrainerSpriteOffset], a
+ cp d
+ ld [hl], d
+ ld hl, DayCareMText_56432
+ jr z, .asm_56333
+ ld a, [wTrainerSpriteOffset]
+ ld b, a
+ ld a, d
+ sub b
+ ld [wTrainerEngageDistance], a
+ ld hl, DayCareMText_56423
+
+.asm_56333
+ call PrintText
+ ld a, [W_NUMINPARTY]
+ cp $6
+ ld hl, DayCareMText_56440
+ jp z, .asm_56403
+ ld de, wTrainerFacingDirection
+ xor a
+ ld [de], a
+ inc de
+ ld [de], a
+ ld hl, wTrainerScreenX
+ ld a, $1
+ ld [hli], a
+ ld [hl], $0
+ ld a, [wTrainerEngageDistance]
+ inc a
+ ld b, a
+ ld c, $2
+.asm_56357
+ push hl
+ push de
+ push bc
+ ld a, $b
+ call Predef
+ pop bc
+ pop de
+ pop hl
+ dec b
+ jr nz, .asm_56357
+ ld hl, DayCareMText_56428
+ call PrintText
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ call YesNoChoice
+ ld hl, DayCareMText_56437
+ ld a, [wCurrentMenuItem]
+ and a
+ jp nz, .asm_56403
+ ld hl, wTrainerFacingDirection
+ ld [$ff9f], a
+ ld a, [hli]
+ ld [$ffa0], a
+ ld a, [hl]
+ ld [$ffa1], a
+ call HasEnoughMoney
+ jr nc, .asm_56396
+ ld hl, DayCareMText_56454
+ jp .asm_56403
+
+.asm_56396
+ xor a
+ ld [W_DAYCARE_IN_USE], a
+ ld hl, wTrainerEngageDistance
+ ld [hli], a
+ inc hl
+ ld de, $d349
+ ld c, $3
+ ld a, $c
+ call Predef
+ ld a, (SFX_02_5a - SFX_Headers_02) / 3
+ call PlaySoundWaitForCurrent
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ ld hl, DayCareMText_5644f
+ call PrintText
+ ld a, $2
+ ld [$cf95], a
+ call Func_3a68
+ ld a, [W_DAYCAREMONDATA]
+ ld [$cf91], a
+ ld a, [W_NUMINPARTY]
+ dec a
+ push af
+ ld bc, $002c
+ push bc
+ ld hl, W_PARTYMON1_MOVE1
+ call AddNTimes
+ ld d, h
+ ld e, l
+ ld a, $1
+ ld [wHPBarMaxHP], a
+ ld a, $3e
+ call Predef
+ pop bc
+ pop af
+ ld hl, W_PARTYMON1_HP
+ call AddNTimes
+ ld d, h
+ ld e, l
+ ld bc, $0021
+ add hl, bc
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ ld [de], a
+ ld a, [$cf91]
+ call PlayCry
+ ld hl, DayCareMText_5642d
+ jr DayCareMScript_56409
+
+.asm_56403
+ ld a, [wTrainerSpriteOffset]
+ ld [$da62], a
+
+DayCareMScript_56409: ; 56409 (15:6409)
+ call PrintText
+ jp TextScriptEnd
+
+DayCareMText_5640f: ; 5640f (15:640f)
+ TX_FAR _DayCareMText_5640f
+ db "@"
+
+DayCareMText_56414: ; 56414 (15:6414)
+ TX_FAR _DayCareMText_56414
+ db "@"
+
+DayCareMText_56419: ; 56419 (15:6419)
+ TX_FAR _DayCareMText_56419
+ db "@"
+
+DayCareMText_5641e: ; 5641e (15:641e)
+ TX_FAR _DayCareMText_5641e
+ db "@"
+
+DayCareMText_56423: ; 56423 (15:6423)
+ TX_FAR _DayCareMText_56423
+ db "@"
+
+DayCareMText_56428: ; 56428 (15:6428)
+ TX_FAR _DayCareMText_56428
+ db "@"
+
+DayCareMText_5642d: ; 5642d (15:642d)
+ TX_FAR _DayCareMText_5642d
+ db "@"
+
+DayCareMText_56432: ; 56432 (15:6432)
+ TX_FAR _DayCareMText_56432
+ db "@"
+
+DayCareMText_56437: ; 56437 (15:6437)
+ TX_FAR _DayCareMText_56437 ; 0x8c000
+DayCareMText_5643b: ; 5643b (15:643b)
+ TX_FAR _DayCareMText_5643b ; 0x8c013
+ db "@"
+
+DayCareMText_56440: ; 56440 (15:6440)
+ TX_FAR _DayCareMText_56440
+ db "@"
+
+DayCareMText_56445: ; 56445 (15:6445)
+ TX_FAR _DayCareMText_56445
+ db "@"
+
+DayCareMText_5644a: ; 5644a (15:644a)
+ TX_FAR _DayCareMText_5644a
+ db "@"
+
+DayCareMText_5644f: ; 5644f (15:644f)
+ TX_FAR _DayCareMText_5644f
+ db "@"
+
+DayCareMText_56454: ; 56454 (15:6454)
+ TX_FAR _DayCareMText_56454
+ db "@"
diff --git a/scripts/diglettscave.asm b/scripts/diglettscave.asm
new file mode 100755
index 00000000..efbf9713
--- /dev/null
+++ b/scripts/diglettscave.asm
@@ -0,0 +1,5 @@
+DiglettsCaveScript: ; 61f6e (18:5f6e)
+ jp EnableAutoTextBoxDrawing
+
+DiglettsCaveTextPointers: ; 61f71 (18:5f71)
+ db "@"
diff --git a/scripts/diglettscaveroute11.asm b/scripts/diglettscaveroute11.asm
new file mode 100755
index 00000000..43e3f24e
--- /dev/null
+++ b/scripts/diglettscaveroute11.asm
@@ -0,0 +1,12 @@
+DiglettsCaveEntranceRoute11Script: ; 1e5ba (7:65ba)
+ call EnableAutoTextBoxDrawing
+ ld a, ROUTE_11
+ ld [wLastMap], a
+ ret
+
+DiglettsCaveEntranceRoute11TextPointers: ; 1e5c3 (7:65c3)
+ dw DiglettsCaveEntranceRoute11Text1
+
+DiglettsCaveEntranceRoute11Text1: ; 1e5c5 (7:65c5)
+ TX_FAR _DiglettsCaveEntRoute11Text1
+ db "@"
diff --git a/scripts/diglettscaveroute2.asm b/scripts/diglettscaveroute2.asm
new file mode 100755
index 00000000..1bee2a1c
--- /dev/null
+++ b/scripts/diglettscaveroute2.asm
@@ -0,0 +1,11 @@
+DiglettsCaveRoute2Script: ; 1deb0 (7:5eb0)
+ ld a, ROUTE_2
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+DiglettsCaveRoute2TextPointers: ; 1deb8 (7:5eb8)
+ dw DiglettsCaveRoute2Text1
+
+DiglettsCaveRoute2Text1: ; 1deba (7:5eba)
+ TX_FAR _DiglettsCaveRoute2Text1
+ db "@"
diff --git a/scripts/fanclub.asm b/scripts/fanclub.asm
new file mode 100755
index 00000000..8ea8d36d
--- /dev/null
+++ b/scripts/fanclub.asm
@@ -0,0 +1,181 @@
+FanClubScript: ; 59b70 (16:5b70)
+ jp EnableAutoTextBoxDrawing
+
+FanClubBikeInBag:
+; check if any bike paraphernalia in bag
+ ld a, [$d771]
+ bit 1, a ; got bike voucher?
+ ret nz
+ ld b, BICYCLE
+ call IsItemInBag
+ ret nz
+ ld b, BIKE_VOUCHER
+ jp IsItemInBag
+
+FanClubTextPointers: ; 59b84 (16:5b84)
+ dw FanClubText1
+ dw FanClubText2
+ dw FanClubText3
+ dw FanClubText4
+ dw FanClubText5
+ dw FanClubText6
+ dw FanClubText7
+ dw FanClubText8
+
+FanClubText1:
+; pikachu fan
+ db $08 ; asm
+ ld a, [$d771]
+ bit 7, a
+ jr nz, .mineisbetter
+ ld hl, .normaltext
+ call PrintText
+ ld hl, $d771
+ set 6, [hl]
+ jr .done
+.mineisbetter
+ ld hl, .bettertext
+ call PrintText
+ ld hl, $d771
+ res 7, [hl]
+.done
+ jp TextScriptEnd
+
+.normaltext
+ TX_FAR PikachuFanText
+ db "@"
+
+.bettertext
+ TX_FAR PikachuFanBetterText
+ db "@"
+
+FanClubText2:
+; seel fan
+ db $08 ; asm
+ ld a, [$d771]
+ bit 6, a
+ jr nz, .mineisbetter
+ ld hl, .normaltext
+ call PrintText
+ ld hl, $d771
+ set 7, [hl]
+ jr .done
+.mineisbetter
+ ld hl, .bettertext
+ call PrintText
+ ld hl, $d771
+ res 6, [hl]
+.done
+ jp TextScriptEnd
+
+.normaltext
+ TX_FAR SeelFanText
+ db "@"
+
+.bettertext
+ TX_FAR SeelFanBetterText
+ db "@"
+
+FanClubText3:
+; pikachu
+ db $8
+ ld hl, .text
+ call PrintText
+ ld a, PIKACHU
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+.text
+ TX_FAR FanClubPikachuText
+ db "@"
+
+FanClubText4:
+; seel
+ db $08 ; asm
+ ld hl, .text
+ call PrintText
+ ld a, SEEL
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+.text
+ TX_FAR FanClubSeelText
+ db "@"
+
+FanClubText5:
+; chair
+ db $08 ; asm
+ call FanClubBikeInBag
+ jr nz, .nothingleft
+
+ ld hl, .meetchairtext
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .nothanks
+
+ ; tell the story
+ ld hl, .storytext
+ call PrintText
+ ld bc, (BIKE_VOUCHER << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, .receivedvouchertext
+ call PrintText
+ ld hl, $d771
+ set 1, [hl]
+ jr .done
+.BagFull
+ ld hl, .bagfulltext
+ call PrintText
+ jr .done
+.nothanks
+ ld hl, .nostorytext
+ call PrintText
+ jr .done
+.nothingleft
+ ld hl, .finaltext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.meetchairtext
+ TX_FAR FanClubMeetChairText
+ db "@"
+
+.storytext
+ TX_FAR FanClubChairStoryText
+ db "@"
+
+.receivedvouchertext
+ TX_FAR ReceivedBikeVoucherText
+ db $11
+ TX_FAR ExplainBikeVoucherText
+ db "@"
+
+.nostorytext
+ TX_FAR FanClubNoStoryText
+ db "@"
+
+.finaltext
+ TX_FAR FanClubChairFinalText
+ db "@"
+
+.bagfulltext
+ TX_FAR FanClubBagFullText
+ db "@"
+
+FanClubText6: ; 59c88 (16:5c88)
+ TX_FAR _FanClubText6
+ db "@"
+
+FanClubText7: ; 59c8d (16:5c8d)
+ TX_FAR _FanClubText7
+ db "@"
+
+FanClubText8: ; 59c92 (16:5c92)
+ TX_FAR _FanClubText8
+ db "@"
diff --git a/scripts/fightingdojo.asm b/scripts/fightingdojo.asm
new file mode 100755
index 00000000..4dc7fe7b
--- /dev/null
+++ b/scripts/fightingdojo.asm
@@ -0,0 +1,337 @@
+FightingDojoScript: ; 5cd5d (17:4d5d)
+ call EnableAutoTextBoxDrawing
+ ld hl, FightingDojoTrainerHeaders
+ ld de, FightingDojoScriptPointers
+ ld a, [W_FIGHTINGDOJOCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_FIGHTINGDOJOCURSCRIPT], a
+ ret
+
+FightingDojoScript_5cd70: ; 5cd70 (17:4d70)
+ xor a
+ ld [$cd6b], a
+ ld [$d642], a
+ ld [$da39], a
+ ret
+
+FightingDojoScriptPointers: ; 5cd7b (17:4d7b)
+ dw FightingDojoScript1
+ dw Func_324c
+ dw EndTrainerBattle
+ dw FightingDojoScript3
+
+FightingDojoScript1: ; 5cd83 (17:4d83)
+ ld a, [$d7b1]
+ bit 0, a
+ ret nz
+ call CheckFightingMapTrainers
+ ld a, [wTrainerHeaderFlagBit]
+ and a
+ ret nz
+ ld a, [$d7b1]
+ bit 1, a
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [$cf0d], a
+ ld a, [W_YCOORD]
+ cp $3
+ ret nz
+ ld a, [W_XCOORD]
+ cp $4
+ ret nz
+ ld a, $1
+ ld [$cf0d], a
+ ld a, $1
+ ld [$d528], a
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $8
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ret
+
+FightingDojoScript3: ; 5cdc6 (17:4dc6)
+ ld a, [$d057]
+ cp $ff
+ jp z, FightingDojoScript_5cd70
+ ld a, [$cf0d]
+ and a
+ jr z, .asm_5cde4
+ ld a, $1
+ ld [$d528], a
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $8
+ ld [$ff8d], a
+ call Func_34a6
+
+.asm_5cde4
+ ld a, $f0
+ ld [$cd6b], a
+ ld a, [$d7b1]
+ or $3e
+ ld [$d7b1], a
+ ld a, $8
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [$cd6b], a
+ ld [$d642], a
+ ld [$da39], a
+ ret
+
+FightingDojoTextPointers: ; 5ce03 (17:4e03)
+ dw FightingDojoText1
+ dw FightingDojoText2
+ dw FightingDojoText3
+ dw FightingDojoText4
+ dw FightingDojoText5
+ dw FightingDojoText6
+ dw FightingDojoText7
+ dw FightingDojoText8
+
+FightingDojoTrainerHeaders: ; 5ce13 (17:4e13)
+FightingDojoTrainerHeader0: ; 5ce13 (17:4e13)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw FightingDojoBattleText1 ; 0x4eac TextBeforeBattle
+ dw FightingDojoAfterBattleText1 ; 0x4eb6 TextAfterBattle
+ dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle
+ dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle
+
+FightingDojoTrainerHeader1: ; 5ce1f (17:4e1f)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw FightingDojoBattleText2 ; 0x4ec5 TextBeforeBattle
+ dw FightingDojoAfterBattleText2 ; 0x4ecf TextAfterBattle
+ dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle
+ dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle
+
+FightingDojoTrainerHeader2: ; 5ce2b (17:4e2b)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw FightingDojoBattleText3 ; 0x4ede TextBeforeBattle
+ dw FightingDojoAfterBattleText3 ; 0x4ee8 TextAfterBattle
+ dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle
+ dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle
+
+FightingDojoTrainerHeader3: ; 5ce37 (17:4e37)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw FightingDojoBattleText4 ; 0x4ef7 TextBeforeBattle
+ dw FightingDojoAfterBattleText4 ; 0x4f01 TextAfterBattle
+ dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle
+ dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle
+
+ db $ff
+
+FightingDojoText1: ; 5ce44 (17:4e44)
+ db $08 ; asm
+ ld a, [$d7b1]
+ bit 0, a
+ jp nz, .continue1
+ bit 1, a
+ jp nz, .continue2
+ ld hl, FightingDojoText_5ce8e
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, FightingDojoText_5ce93
+ ld de, FightingDojoText_5ce93
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ ld [W_FIGHTINGDOJOCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jr .asm_9dba4 ; 0x5ce7b
+.continue1 ; 0x5ce7d
+ ld hl, FightingDojoText_5ce9d
+ call PrintText
+ jr .asm_9dba4 ; 0x5ce83
+.continue2 ; 0x5ce85f
+ ld hl, FightingDojoText8
+ call PrintText
+.asm_9dba4 ; 0x5ce8b
+ jp TextScriptEnd
+
+FightingDojoText_5ce8e: ; 5ce8e (17:4e8e)
+ TX_FAR _FightingDojoText_5ce8e
+ db "@"
+
+FightingDojoText_5ce93: ; 5ce93 (17:4e93)
+ TX_FAR _FightingDojoText_5ce93
+ db "@"
+
+FightingDojoText8: ; 5ce98 (17:4e98)
+ TX_FAR _FightingDojoText_5ce98
+ db "@"
+
+FightingDojoText_5ce9d: ; 5ce9d (17:4e9d)
+ TX_FAR _FightingDojoText_5ce9d
+ db "@"
+
+FightingDojoText2: ; 5cea2 (17:4ea2)
+ db $08 ; asm
+ ld hl, FightingDojoTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText1: ; 5ceac (17:4eac)
+ TX_FAR _FightingDojoBattleText1
+ db "@"
+
+FightingDojoEndBattleText1: ; 5ceb1 (17:4eb1)
+ TX_FAR _FightingDojoEndBattleText1
+ db "@"
+
+FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6)
+ TX_FAR _FightingDojoAfterBattleText1
+ db "@"
+
+FightingDojoText3: ; 5cebb (17:4ebb)
+ db $08 ; asm
+ ld hl, FightingDojoTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText2: ; 5cec5 (17:4ec5)
+ TX_FAR _FightingDojoBattleText2
+ db "@"
+
+FightingDojoEndBattleText2: ; 5ceca (17:4eca)
+ TX_FAR _FightingDojoEndBattleText2
+ db "@"
+
+FightingDojoAfterBattleText2: ; 5cecf (17:4ecf)
+ TX_FAR _FightingDojoAfterBattleText2
+ db "@"
+
+FightingDojoText4: ; 5ced4 (17:4ed4)
+ db $08 ; asm
+ ld hl, FightingDojoTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText3: ; 5cede (17:4ede)
+ TX_FAR _FightingDojoBattleText3
+ db "@"
+
+FightingDojoEndBattleText3: ; 5cee3 (17:4ee3)
+ TX_FAR _FightingDojoEndBattleText3
+ db "@"
+
+FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8)
+ TX_FAR _FightingDojoAfterBattleText3
+ db "@"
+
+FightingDojoText5: ; 5ceed (17:4eed)
+ db $08 ; asm
+ ld hl, FightingDojoTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText4: ; 5cef7 (17:4ef7)
+ TX_FAR _FightingDojoBattleText4
+ db "@"
+
+FightingDojoEndBattleText4: ; 5cefc (17:4efc)
+ TX_FAR _FightingDojoEndBattleText4
+ db "@"
+
+FightingDojoAfterBattleText4: ; 5cf01 (17:4f01)
+ TX_FAR _FightingDojoAfterBattleText4
+ db "@"
+
+FightingDojoText6: ; 5cf06 (17:4f06)
+; Hitmonlee Poké Ball
+ db $08 ; asm
+ ld a, [$d7b1]
+ and %11000000
+ jr z, .GetMon
+ ld hl, OtherHitmonText
+ call PrintText
+ jr .done
+.GetMon
+ ld a, HITMONLEE
+ call DisplayPokedex
+ ld hl, WantHitmonleeText
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .done
+ ld a, [$cf91]
+ ld b, a
+ ld c, 30
+ call GivePokemon
+ jr nc, .done
+
+ ; once Poké Ball is taken, hide sprite
+ ld a, $4a
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, $d7b1
+ set 6, [hl]
+ set 0, [hl]
+.done
+ jp TextScriptEnd
+
+WantHitmonleeText: ; 5cf49 (17:4f49)
+ TX_FAR _WantHitmonleeText
+ db "@"
+
+FightingDojoText7: ; 5cf4e (17:4f4e)
+; Hitmonchan Poké Ball
+ db $08 ; asm
+ ld a, [$d7b1]
+ and %11000000
+ jr z, .GetMon
+ ld hl, OtherHitmonText
+ call PrintText
+ jr .done
+.GetMon
+ ld a, HITMONCHAN
+ call DisplayPokedex
+ ld hl, WantHitmonchanText
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .done
+ ld a, [$cf91]
+ ld b, a
+ ld c,30
+ call GivePokemon
+ jr nc, .done
+ ld hl, $d7b1
+ set 7, [hl]
+ set 0, [hl]
+
+ ; once Poké Ball is taken, hide sprite
+ ld a, $4b
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+.done
+ jp TextScriptEnd
+
+WantHitmonchanText: ; 5cf91 (17:4f91)
+ TX_FAR _WantHitmonchanText
+ db "@"
+
+OtherHitmonText: ; 5cf96 (17:4f96)
+ TX_FAR _OtherHitmonText
+ db "@"
diff --git a/scripts/fuchsiacity.asm b/scripts/fuchsiacity.asm
new file mode 100755
index 00000000..9014dffe
--- /dev/null
+++ b/scripts/fuchsiacity.asm
@@ -0,0 +1,170 @@
+FuchsiaCityScript: ; 19a2b (6:5a2b)
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaCityTextPointers: ; 19a2e (6:5a2e)
+ dw FuchsiaCityText1
+ dw FuchsiaCityText2
+ dw FuchsiaCityText3
+ dw FuchsiaCityText4
+ dw FuchsiaCityText5
+ dw FuchsiaCityText6
+ dw FuchsiaCityText7
+ dw FuchsiaCityText8
+ dw FuchsiaCityText9
+ dw FuchsiaCityText10
+ dw FuchsiaCityText11
+ dw FuchsiaCityText12
+ dw FuchsiaCityText13
+ dw MartSignText
+ dw PokeCenterSignText
+ dw FuchsiaCityText16
+ dw FuchsiaCityText17
+ dw FuchsiaCityText18
+ dw FuchsiaCityText19
+ dw FuchsiaCityText20
+ dw FuchsiaCityText21
+ dw FuchsiaCityText22
+ dw FuchsiaCityText23
+ dw FuchsiaCityText24
+
+FuchsiaCityText1: ; 19a5e (6:5a5e)
+ TX_FAR _FuchsiaCityText1
+ db "@"
+
+FuchsiaCityText2: ; 19a63 (6:5a63)
+ TX_FAR _FuchsiaCityText2
+ db "@"
+
+FuchsiaCityText3: ; 19a68 (6:5a68)
+ TX_FAR _FuchsiaCityText3
+ db "@"
+
+FuchsiaCityText4: ; 19a6d (6:5a6d)
+ TX_FAR _FuchsiaCityText4
+ db "@"
+
+FuchsiaCityText5: ; 19a72 (6:5a72)
+FuchsiaCityText6: ; 19a72 (6:5a72)
+FuchsiaCityText7: ; 19a72 (6:5a72)
+FuchsiaCityText8: ; 19a72 (6:5a72)
+FuchsiaCityText9: ; 19a72 (6:5a72)
+FuchsiaCityText10: ; 19a72 (6:5a72)
+ TX_FAR _FuchsiaCityText5
+ db "@"
+
+FuchsiaCityText12: ; 19a77 (6:5a77)
+FuchsiaCityText11: ; 19a77 (6:5a77)
+ TX_FAR _FuchsiaCityText11
+ db "@"
+
+FuchsiaCityText13: ; 19a7c (6:5a7c)
+ TX_FAR _FuchsiaCityText13
+ db "@"
+
+FuchsiaCityText16: ; 19a81 (6:5a81)
+ TX_FAR _FuchsiaCityText16
+ db "@"
+
+FuchsiaCityText17: ; 19a86 (6:5a86)
+ TX_FAR _FuchsiaCityText17
+ db "@"
+
+FuchsiaCityText18: ; 19a8b (6:5a8b)
+ TX_FAR _FuchsiaCityText18
+ db "@"
+
+FuchsiaCityText19: ; 19a90 (6:5a90)
+ db $08 ; asm
+ ld hl, FuchsiaCityChanseyText
+ call PrintText
+ ld a, CHANSEY
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityChanseyText: ; 19a9f (6:5a9f)
+ TX_FAR _FuchsiaCityChanseyText
+ db "@"
+
+FuchsiaCityText20: ; 19aa4 (6:5aa4)
+ db $08 ; asm
+ ld hl, FuchsiaCityVoltorbText
+ call PrintText
+ ld a, VOLTORB
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityVoltorbText: ; 19ab3 (6:5ab3)
+ TX_FAR _FuchsiaCityVoltorbText
+ db "@"
+
+FuchsiaCityText21: ; 19ab8 (6:5ab8)
+ db $08 ; asm
+ ld hl, FuchsiaCityKangaskhanText
+ call PrintText
+ ld a, KANGASKHAN
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityKangaskhanText: ; 19ac7 (6:5ac7)
+ TX_FAR _FuchsiaCityKangaskhanText
+ db "@"
+
+FuchsiaCityText22: ; 19acc (6:5acc)
+ db $08 ; asm
+ ld hl, FuchsiaCitySlowpokeText
+ call PrintText
+ ld a, SLOWPOKE
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCitySlowpokeText: ; 19adb (6:5adb)
+ TX_FAR _FuchsiaCitySlowpokeText
+ db "@"
+
+FuchsiaCityText23: ; 19ae0 (6:5ae0)
+ db $08 ; asm
+ ld hl, FuchsiaCityLaprasText
+ call PrintText
+ ld a, LAPRAS
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityLaprasText: ; 19aef (6:5aef)
+ TX_FAR _FuchsiaCityLaprasText
+ db "@"
+
+FuchsiaCityText24: ; 19af4 (6:5af4)
+ db $08 ; asm
+ ld a, [$d7f6]
+ bit 6, a
+ jr nz, .asm_3b4e8 ; 0x19afa
+ bit 7, a
+ jr nz, .asm_667d5 ; 0x19afe
+ ld hl, FuchsiaCityText_19b2a
+ call PrintText
+ jr .asm_4343f ; 0x19b06
+.asm_3b4e8 ; 0x19b08
+ ld hl, FuchsiaCityOmanyteText
+ call PrintText
+ ld a, OMANYTE
+ jr .asm_81556 ; 0x19b10
+.asm_667d5 ; 0x19b12
+ ld hl, FuchsiaCityKabutoText
+ call PrintText
+ ld a, KABUTO
+.asm_81556 ; 0x19b1a
+ call DisplayPokedex
+.asm_4343f ; 0x19b1d
+ jp TextScriptEnd
+
+FuchsiaCityOmanyteText: ; 19b20 (6:5b20)
+ TX_FAR _FuchsiaCityOmanyteText
+ db "@"
+
+FuchsiaCityKabutoText: ; 19b25 (6:5b25)
+ TX_FAR _FuchsiaCityKabutoText
+ db "@"
+
+FuchsiaCityText_19b2a: ; 19b2a (6:5b2a)
+ TX_FAR _FuchsiaCityText_19b2a
+ db "@"
diff --git a/scripts/fuchsiagym.asm b/scripts/fuchsiagym.asm
new file mode 100755
index 00000000..789c2367
--- /dev/null
+++ b/scripts/fuchsiagym.asm
@@ -0,0 +1,336 @@
+FuchsiaGymScript: ; 7543d (1d:543d)
+ call FuchsiaGymScript_75453
+ call EnableAutoTextBoxDrawing
+ ld hl, FuchsiaGymTrainerHeaders
+ ld de, FuchsiaGymScriptPointers
+ ld a, [W_FUCHSIAGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_FUCHSIAGYMCURSCRIPT], a
+ ret
+
+FuchsiaGymScript_75453: ; 75453 (1d:5453)
+ ld hl, $D126
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ld hl, Gym5CityName
+ ld de, Gym5LeaderName
+ call LoadGymLeaderAndCityName
+ ret
+
+Gym5CityName: ; 75465 (1d:5465)
+ db "FUCHSIA CITY@"
+Gym5LeaderName: ; 75472 (1d:5472)
+ db "KOGA@"
+
+FuchsiaGymScript_75477: ; 75477 (1d:5477)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_FUCHSIAGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+FuchsiaGymScriptPointers: ; 75482 (1d:5482)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw FuchsiaGymScript3
+
+FuchsiaGymScript3: ; 7548a (1d:548a)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, FuchsiaGymScript_75477
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+FuchsiaGymScript3_75497: ; 75497 (1d:5497)
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d792
+ set 1, [hl]
+ ld bc, (TM_06 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $a
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d792
+ set 0, [hl]
+ jr .asm_754c0
+.BagFull
+ ld a, $b
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_754c0
+ ld hl, W_OBTAINEDBADGES
+ set 4, [hl]
+ ld hl, $d72a
+ set 4, [hl]
+
+ ; deactivate gym trainers
+ ld a, [$d792]
+ or %11111100
+ ld [$d792], a
+
+ jp FuchsiaGymScript_75477
+
+FuchsiaGymTextPointers: ; 754d5 (1d:54d5)
+ dw FuchsiaGymText1
+ dw FuchsiaGymText2
+ dw FuchsiaGymText3
+ dw FuchsiaGymText4
+ dw FuchsiaGymText5
+ dw FuchsiaGymText6
+ dw FuchsiaGymText7
+ dw FuchsiaGymText8
+ dw FuchsiaGymText9
+ dw FuchsiaGymText10
+ dw FuchsiaGymText11
+
+FuchsiaGymTrainerHeaders: ; 754eb (1d:54eb)
+FuchsiaGymTrainerHeader0: ; 754eb (1d:54eb)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d792 ; flag's byte
+ dw FuchsiaGymBattleText1 ; 0x55ae TextBeforeBattle
+ dw FuchsiaGymAfterBattleText1 ; 0x55b8 TextAfterBattle
+ dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle
+ dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle
+
+FuchsiaGymTrainerHeader2: ; 754f7 (1d:54f7)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d792 ; flag's byte
+ dw FuchsiaGymBattleText2 ; 0x55c7 TextBeforeBattle
+ dw FuchsiaGymAfterBattleText2 ; 0x55d1 TextAfterBattle
+ dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle
+ dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle
+
+FuchsiaGymTrainerHeader3: ; 75503 (1d:5503)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d792 ; flag's byte
+ dw FuchsiaGymBattleText3 ; 0x55e0 TextBeforeBattle
+ dw FuchsiaGymAfterBattleText3 ; 0x55ea TextAfterBattle
+ dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle
+ dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle
+
+FuchsiaGymTrainerHeader4: ; 7550f (1d:550f)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d792 ; flag's byte
+ dw FuchsiaGymBattleText4 ; 0x55f9 TextBeforeBattle
+ dw FuchsiaGymAfterBattleText4 ; 0x5603 TextAfterBattle
+ dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle
+ dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle
+
+FuchsiaGymTrainerHeader5: ; 7551b (1d:551b)
+ db $6 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d792 ; flag's byte
+ dw FuchsiaGymBattleText5 ; 0x5612 TextBeforeBattle
+ dw FuchsiaGymAfterBattleText5 ; 0x561c TextAfterBattle
+ dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle
+ dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle
+
+FuchsiaGymTrainerHeader6: ; 75527 (1d:5527)
+ db $7 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d792 ; flag's byte
+ dw FuchsiaGymBattleText6 ; 0x562b TextBeforeBattle
+ dw FuchsiaGymAfterBattleText6 ; 0x5635 TextAfterBattle
+ dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle
+ dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle
+
+ db $ff
+
+FuchsiaGymText1: ; 75534 (1d:5534)
+ db $08 ; asm
+ ld a, [$d792]
+ bit 1, a
+ jr z, .asm_181b6 ; 0x7553a
+ bit 0, a
+ jr nz, .asm_adc3b ; 0x7553e
+ call z, FuchsiaGymScript3_75497
+ call DisableWaitingAfterTextDisplay
+ jr .asm_e84c6 ; 0x75546
+.asm_adc3b ; 0x75548
+ ld hl, UnnamedText_7558b
+ call PrintText
+ jr .asm_e84c6 ; 0x7554e
+.asm_181b6 ; 0x75550
+ ld hl, UnnamedText_75581
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, UnnamedText_75586
+ ld de, UnnamedText_75586
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $5
+ ld [$d05c], a
+ xor a
+ ldh [$b4], a
+ ld a, $3
+ ld [W_FUCHSIAGYMCURSCRIPT], a
+.asm_e84c6 ; 0x7557e
+ jp TextScriptEnd
+
+UnnamedText_75581: ; 75581 (1d:5581)
+ TX_FAR _UnnamedText_75581
+ db "@"
+
+UnnamedText_75586: ; 75586 (1d:5586)
+ TX_FAR _UnnamedText_75586
+ db "@"
+
+UnnamedText_7558b: ; 7558b (1d:558b)
+ TX_FAR _UnnamedText_7558b
+ db "@"
+
+FuchsiaGymText9: ; 75590 (1d:5590)
+ TX_FAR _UnnamedText_75590
+ db "@"
+
+FuchsiaGymText10: ; 75595 (1d:5595)
+ TX_FAR _ReceivedTM06Text
+ db $11
+
+TM06ExplanationText: ; 7559a (1d:559a)
+ TX_FAR _TM06ExplanationText
+ db "@"
+
+FuchsiaGymText11: ; 7559f (1d:559f)
+ TX_FAR _TM06NoRoomText
+ db "@"
+
+FuchsiaGymText2: ; 755a4 (1d:55a4)
+ db $08 ; asm
+ ld hl, FuchsiaGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText1: ; 755ae (1d:55ae)
+ TX_FAR _FuchsiaGymBattleText1
+ db "@"
+
+FuchsiaGymEndBattleText1: ; 755b3 (1d:55b3)
+ TX_FAR _FuchsiaGymEndBattleText1
+ db "@"
+
+FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8)
+ TX_FAR _FuchsiaGymAfterBattleText1
+ db "@"
+
+FuchsiaGymText3: ; 755bd (1d:55bd)
+ db $08 ; asm
+ ld hl, FuchsiaGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText2: ; 755c7 (1d:55c7)
+ TX_FAR _FuchsiaGymBattleText2
+ db "@"
+
+FuchsiaGymEndBattleText2: ; 755cc (1d:55cc)
+ TX_FAR _FuchsiaGymEndBattleText2
+ db "@"
+
+FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1)
+ TX_FAR _FuchsiaGymAfterBattleText2
+ db "@"
+
+FuchsiaGymText4: ; 755d6 (1d:55d6)
+ db $08 ; asm
+ ld hl, FuchsiaGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText3: ; 755e0 (1d:55e0)
+ TX_FAR _FuchsiaGymBattleText3
+ db "@"
+
+FuchsiaGymEndBattleText3: ; 755e5 (1d:55e5)
+ TX_FAR _FuchsiaGymEndBattleText3
+ db "@"
+
+FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea)
+ TX_FAR _FuchsiaGymAfterBattleText3
+ db "@"
+
+FuchsiaGymText5: ; 755ef (1d:55ef)
+ db $08 ; asm
+ ld hl, FuchsiaGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText4: ; 755f9 (1d:55f9)
+ TX_FAR _FuchsiaGymBattleText4
+ db "@"
+
+FuchsiaGymEndBattleText4: ; 755fe (1d:55fe)
+ TX_FAR _FuchsiaGymEndBattleText4
+ db "@"
+
+FuchsiaGymAfterBattleText4: ; 75603 (1d:5603)
+ TX_FAR _FuchsiaGymAfterBattleText4
+ db "@"
+
+FuchsiaGymText6: ; 75608 (1d:5608)
+ db $08 ; asm
+ ld hl, FuchsiaGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText5: ; 75612 (1d:5612)
+ TX_FAR _FuchsiaGymBattleText5
+ db "@"
+
+FuchsiaGymEndBattleText5: ; 75617 (1d:5617)
+ TX_FAR _FuchsiaGymEndBattleText5
+ db "@"
+
+FuchsiaGymAfterBattleText5: ; 7561c (1d:561c)
+ TX_FAR _FuchsiaGymAfterBattleText5
+ db "@"
+
+FuchsiaGymText7: ; 75621 (1d:5621)
+ db $08 ; asm
+ ld hl, FuchsiaGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText6: ; 7562b (1d:562b)
+ TX_FAR _FuchsiaGymBattleText6
+ db "@"
+
+FuchsiaGymEndBattleText6: ; 75630 (1d:5630)
+ TX_FAR _FuchsiaGymEndBattleText6
+ db "@"
+
+FuchsiaGymAfterBattleText6: ; 75635 (1d:5635)
+ TX_FAR _FuchsiaGymAfterBattleText6
+ db "@"
+
+FuchsiaGymText8: ; 7563a (1d:563a)
+ db $08 ; asm
+ ld a, [$d792]
+ bit 1, a
+ ld hl, UnnamedText_75653
+ jr nz, .asm_50671 ; 0x75643
+ ld hl, UnnamedText_7564e
+.asm_50671 ; 0x75648
+ call PrintText
+ jp TextScriptEnd
+
+UnnamedText_7564e: ; 7564e (1d:564e)
+ TX_FAR _UnnamedText_7564e
+ db "@"
+
+UnnamedText_75653: ; 75653 (1d:5653)
+ TX_FAR _UnnamedText_75653
+ db "@"
diff --git a/scripts/fuchsiahouse1.asm b/scripts/fuchsiahouse1.asm
new file mode 100755
index 00000000..4d5e6eb1
--- /dev/null
+++ b/scripts/fuchsiahouse1.asm
@@ -0,0 +1,20 @@
+FuchsiaHouse1Script: ; 75018 (1d:5018)
+ call EnableAutoTextBoxDrawing
+ ret
+
+FuchsiaHouse1TextPointers: ; 7501c (1d:501c)
+ dw FuchsiaHouse1Text1
+ dw FuchsiaHouse1Text2
+ dw FuchsiaHouse1Text3
+
+FuchsiaHouse1Text1: ; 75022 (1d:5022)
+ TX_FAR _FuchsiaHouse1Text1
+ db "@"
+
+FuchsiaHouse1Text2: ; 75027 (1d:5027)
+ TX_FAR _FuchsiaHouse1Text2
+ db "@"
+
+FuchsiaHouse1Text3: ; 7502c (1d:502c)
+ TX_FAR _FuchsiaHouse1Text3
+ db "@"
diff --git a/scripts/fuchsiahouse2.asm b/scripts/fuchsiahouse2.asm
new file mode 100755
index 00000000..82957d2d
--- /dev/null
+++ b/scripts/fuchsiahouse2.asm
@@ -0,0 +1,116 @@
+FuchsiaHouse2Script: ; 750b5 (1d:50b5)
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaHouse2TextPointers: ; 750b8 (1d:50b8)
+ dw FuchsiaHouse2Text1
+ dw Predef5CText
+ dw BoulderText
+ dw FuchsiaHouse2Text4
+ dw FuchsiaHouse2Text5
+
+FuchsiaHouse2Text1: ; 750c2 (1d:50c2)
+ db $08 ; asm
+ ld a, [$d78e]
+ bit 0, a
+ jr nz, .subtract ; 0x750c8
+ ld b,GOLD_TEETH
+ call IsItemInBag
+ jr nz, .asm_3f30f ; 0x750cf
+ ld a, [$d78e]
+ bit 1, a
+ jr nz, .asm_60cba ; 0x750d6
+ ld hl, WardenGibberishText1
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ ld hl, WardenGibberishText3
+ jr nz, .asm_61238 ; 0x750e8
+ ld hl, WardenGibberishText2
+.asm_61238 ; 0x750ed
+ call PrintText
+ jr .asm_52039 ; 0x750f0
+.asm_3f30f ; 0x750f2
+ ld hl, WardenTeethText1
+ call PrintText
+ ld a, GOLD_TEETH
+ ldh [$db], a
+ callba RemoveItemByID
+ ld hl, $d78e
+ set 1, [hl]
+.asm_60cba ; 0x75109
+ ld hl, WardenThankYouText
+ call PrintText
+ ld bc,(HM_04 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedHM04Text
+ call PrintText
+ ld hl, $d78e
+ set 0, [hl]
+ jr .asm_52039 ; 0x75122
+.subtract ; 0x75124
+ ld hl, HM04ExplanationText
+ call PrintText
+ jr .asm_52039 ; 0x7512a
+.BagFull
+ ld hl, HM04NoRoomText
+ call PrintText
+.asm_52039 ; 0x75132
+ jp TextScriptEnd
+
+WardenGibberishText1: ; 75135 (1d:5135)
+ TX_FAR _WardenGibberishText1
+ db "@"
+
+WardenGibberishText2: ; 7513a (1d:513a)
+ TX_FAR _WardenGibberishText2
+ db "@"
+
+WardenGibberishText3: ; 7513f (1d:513f)
+ TX_FAR _WardenGibberishText3
+ db "@"
+
+WardenTeethText1: ; 75144 (1d:5144)
+ TX_FAR _WardenTeethText1
+ db $0b
+
+WardenTeethText2: ; 75149 (1d:5149)
+ TX_FAR _WardenTeethText2
+ db "@"
+
+WardenThankYouText: ; 7514e (1d:514e)
+ TX_FAR _WardenThankYouText
+ db "@"
+
+ReceivedHM04Text: ; 75153 (1d:5153)
+ TX_FAR _ReceivedHM04Text
+ db $0B, "@"
+
+HM04ExplanationText: ; 75159 (1d:5159)
+ TX_FAR _HM04ExplanationText
+ db "@"
+
+HM04NoRoomText: ; 7515e (1d:515e)
+ TX_FAR _HM04NoRoomText
+ db "@"
+
+FuchsiaHouse2Text5: ; 75163 (1d:5163)
+FuchsiaHouse2Text4: ; 75163 (1d:5163)
+ db $08 ; asm
+ ldh a, [$8c]
+ cp $4
+ ld hl, FuchsiaHouse2Text_7517b
+ jr nz, .asm_4c9a2 ; 0x7516b
+ ld hl, FuchsiaHouse2Text_75176
+.asm_4c9a2 ; 0x75170
+ call PrintText
+ jp TextScriptEnd
+
+FuchsiaHouse2Text_75176: ; 75176 (1d:5176)
+ TX_FAR _FuchsiaHouse2Text_75176
+ db "@"
+
+FuchsiaHouse2Text_7517b: ; 7517b (1d:517b)
+ TX_FAR _FuchsiaHouse2Text_7517b
+ db "@"
diff --git a/scripts/fuchsiahouse3.asm b/scripts/fuchsiahouse3.asm
new file mode 100755
index 00000000..ec5654ba
--- /dev/null
+++ b/scripts/fuchsiahouse3.asm
@@ -0,0 +1,75 @@
+FuchsiaHouse3Script: ; 5617c (15:617c)
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaHouse3TextPointers: ; 5617f (15:617f)
+ dw FuchsiaHouse3Text1
+
+FuchsiaHouse3Text1: ; 56181 (15:6181)
+ db $08 ; asm
+ ld a, [$d728]
+ bit 4, a
+ jr nz, .after
+
+ ld hl, FuchsiaHouse3Text_561bd
+ call PrintText
+
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .refused
+
+ ld bc, (GOOD_ROD << 8) | 1
+ call GiveItem
+ jr nc, .full
+
+ ld hl, $d728
+ set 4, [hl]
+
+ ld hl, FuchsiaHouse3Text_561c2
+ jr .talk
+
+.full
+ ld hl, FuchsiaHouse3Text_5621c
+ jr .talk
+
+.refused
+ ld hl, FuchsiaHouse3Text_56212
+ jr .talk
+
+.after
+ ld hl, FuchsiaHouse3Text_56217
+
+.talk
+ call PrintText
+ jp TextScriptEnd
+
+FuchsiaHouse3Text_561bd: ; 561bd (15:61bd)
+ TX_FAR _FuchsiaHouse3Text_561bd
+ db "@"
+
+FuchsiaHouse3Text_561c2: ; 561c2 (15:61c2)
+ TX_FAR _FuchsiaHouse3Text_561c2 ; 0xa06e8
+ db $0B
+ db "@"
+
+UnnamedText_561c8: ; 561c8
+ para "つり こそ"
+ line "おとこの ロマン だ!"
+
+ para "へぼいつりざおは"
+ line "コイキングしか つれ なんだが"
+ line "この いいつりざおなら"
+ line "もっと いいもんが つれるんじゃ!"
+ done
+
+FuchsiaHouse3Text_56212: ; 56212 (15:6212)
+ TX_FAR _FuchsiaHouse3Text_56212
+ db "@"
+
+FuchsiaHouse3Text_56217: ; 56217 (15:6217)
+ TX_FAR _FuchsiaHouse3Text_56217
+ db "@"
+
+FuchsiaHouse3Text_5621c: ; 5621c (15:621c)
+ TX_FAR _FuchsiaHouse3Text_5621c
+ db "@"
diff --git a/scripts/fuchsiamart.asm b/scripts/fuchsiamart.asm
new file mode 100755
index 00000000..792dafa2
--- /dev/null
+++ b/scripts/fuchsiamart.asm
@@ -0,0 +1,15 @@
+FuchsiaMartScript: ; 1dd88 (7:5d88)
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaMartTextPointers: ; 1dd8b (7:5d8b)
+ dw FuchsiaMartText1
+ dw FuchsiaMartText2
+ dw FuchsiaMartText3
+
+FuchsiaMartText2: ; 1dd91 (7:5d91)
+ TX_FAR _FuchsiaMartText2
+ db "@"
+
+FuchsiaMartText3: ; 1dd96 (7:5d96)
+ TX_FAR _FuchsiaMartText3
+ db "@"
diff --git a/scripts/fuchsiameetingroom.asm b/scripts/fuchsiameetingroom.asm
new file mode 100755
index 00000000..140a5ccc
--- /dev/null
+++ b/scripts/fuchsiameetingroom.asm
@@ -0,0 +1,20 @@
+FuchsiaMeetingRoomScript: ; 756e3 (1d:56e3)
+ call EnableAutoTextBoxDrawing
+ ret
+
+FuchsiaMeetingRoomTextPointers: ; 756e7 (1d:56e7)
+ dw FuchsiaMeetingRoomText1
+ dw FuchsiaMeetingRoomText2
+ dw FuchsiaMeetingRoomText3
+
+FuchsiaMeetingRoomText1: ; 756ed (1d:56ed)
+ TX_FAR _FuchsiaMeetingRoomText1
+ db "@"
+
+FuchsiaMeetingRoomText2: ; 756f2 (1d:56f2)
+ TX_FAR _FuchsiaMeetingRoomText2
+ db "@"
+
+FuchsiaMeetingRoomText3: ; 756f7 (1d:56f7)
+ TX_FAR _FuchsiaMeetingRoomText3
+ db "@"
diff --git a/scripts/fuchsiapokecenter.asm b/scripts/fuchsiapokecenter.asm
new file mode 100755
index 00000000..621a483f
--- /dev/null
+++ b/scripts/fuchsiapokecenter.asm
@@ -0,0 +1,23 @@
+FuchsiaPokecenterScript: ; 75063 (1d:5063)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaPokecenterTextPointers: ; 75069 (1d:5069)
+ dw FuchsiaPokecenterText1
+ dw FuchsiaPokecenterText2
+ dw FuchsiaPokecenterText3
+ dw FuchsiaPokecenterText4
+
+FuchsiaPokecenterText1: ; 75071 (1d:5071)
+ db $ff
+
+FuchsiaPokecenterText2: ; 75072 (1d:5072)
+ TX_FAR _FuchsiaPokecenterText1
+ db "@"
+
+FuchsiaPokecenterText3: ; 75077 (1d:5077)
+ TX_FAR _FuchsiaPokecenterText3
+ db "@"
+
+FuchsiaPokecenterText4: ; 7507c (1d:507c)
+ db $f6
diff --git a/scripts/gary.asm b/scripts/gary.asm
new file mode 100755
index 00000000..48f7d950
--- /dev/null
+++ b/scripts/gary.asm
@@ -0,0 +1,295 @@
+GaryScript: ; 75f1d (1d:5f1d)
+ call EnableAutoTextBoxDrawing
+ ld hl, GaryScriptPointers
+ ld a, [W_GARYCURSCRIPT]
+ jp CallFunctionInTable
+
+GaryScript_75f29: ; 75f29 (1d:5f29)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScriptPointers: ; 75f31 (1d:5f31)
+ dw GaryScript0
+ dw GaryScript1
+ dw GaryScript2
+ dw GaryScript3
+ dw GaryScript4
+ dw GaryScript5
+ dw GaryScript6
+ dw GaryScript7
+ dw GaryScript8
+ dw GaryScript9
+ dw GaryScript10
+
+GaryScript0: ; 75f47 (1d:5f47)
+ ret
+
+GaryScript1: ; 75f48 (1d:5f48)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $ccd3
+ ld de, RLEMovement75f63
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $2
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+RLEMovement75f63: ; 75f63 (1d:5f63)
+ db $40,1
+ db $10,1
+ db $40,3
+ db $ff
+
+GaryScript2: ; 75f6a (1d:5f6a)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d355
+ res 7, [hl]
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ call Delay3
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, GaryText_760f9
+ ld de, GaryText_760fe
+ call PreBattleSaveRegisters
+ ld a, SONY3 + $c8
+ ld [W_CUROPPONENT], a
+
+ ; select which team to use during the encounter
+ ld a, [W_RIVALSTARTER]
+ cp SQUIRTLE
+ jr nz, .NotSquirtle ; 0x75f9f $4
+ ld a, $1
+ jr .done
+.NotSquirtle
+ cp BULBASAUR
+ jr nz, .Charmander ; 0x75fa7 $4
+ ld a, $2
+ jr .done
+.Charmander
+ ld a, $3
+.done
+ ld [W_TRAINERNO], a
+
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $3
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScript3: ; 75fbb (1d:5fbb)
+ ld a, [W_ISINBATTLE]
+ cp $ff
+ jp z, GaryScript_75f29
+ call UpdateSprites ; move sprites
+ ld hl, $d867
+ set 1, [hl]
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [$ff8c], a
+ call GaryScript_760c8
+ ld a, $1
+ ld [$ff8c], a
+ call SetSpriteMovementBytesToFF
+ ld a, $4
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScript4: ; 75fe4 (1d:5fe4)
+ callba Music_Cities1AlternateTempo
+ ld a, $2
+ ld [$ff8c], a
+ call GaryScript_760c8
+ ld a, $2
+ ld [$ff8c], a
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_76014
+ ld a, $2
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $d6
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $5
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+MovementData_76014: ; 76014 (1d:6014)
+ db $40,$40,$40,$40,$40,$FF
+
+GaryScript5: ; 7601a (1d:601a)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $2
+ ld [$d528], a
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $8
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $2
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $3
+ ld [$ff8c], a
+ call GaryScript_760c8
+ ld a, $6
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScript6: ; 76047 (1d:6047)
+ ld a, $2
+ ld [$ff8c], a
+ ld a, $c
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $4
+ ld [$ff8c], a
+ call GaryScript_760c8
+ ld a, $7
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScript7: ; 7605f (1d:605f)
+ ld a, $2
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $5
+ ld [$ff8c], a
+ call GaryScript_760c8
+ ld de, MovementData_76080
+ ld a, $2
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $8
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+MovementData_76080: ; 76080 (1d:6080)
+ db $40,$40,$FF
+
+GaryScript8: ; 76083 (1d:6083)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $d6
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $9
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScript9: ; 76099 (1d:6099)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $ccd3
+ ld de, RLEMovement760b4
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $a
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+RLEMovement760b4 ; 760b4 (1d:60b4)
+ db $40,4
+ db $20,1
+ db $ff
+
+GaryScript10: ; 760b9 (1d:60b9)
+ ld a, [$cd38]
+ and a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_GARYCURSCRIPT], a
+ ret
+
+GaryScript_760c8 ; 760c8 (1d:60c8)
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ret
+
+GaryTextPointers: ; 760d6 (1d:60d6)
+ dw GaryText1
+ dw GaryText2
+ dw GaryText3
+ dw GaryText4
+ dw GaryText5
+
+GaryText1: ; 760e0 (1d:60e0)
+ db $08 ; asm
+ ld a, [$d867]
+ bit 1, a
+ ld hl, GaryText_760f4
+ jr z, .asm_17e9f ; 0x760e9
+ ld hl, GaryText_76103
+.asm_17e9f ; 0x760ee
+ call PrintText
+ jp TextScriptEnd
+
+GaryText_760f4: ; 760f4 (1d:60f4)
+ TX_FAR _GaryText_760f4
+ db "@"
+
+GaryText_760f9: ; 760f9 (1d:60f9)
+ TX_FAR _GaryText_760f9
+ db "@"
+
+GaryText_760fe: ; 760fe (1d:60fe)
+ TX_FAR _GaryText_760fe
+ db "@"
+
+GaryText_76103: ; 76103 (1d:6103)
+ TX_FAR _GaryText_76103
+ db "@"
+
+GaryText2: ; 76108 (1d:6108)
+ TX_FAR _GaryText2
+ db "@"
+
+GaryText3: ; 7610d (1d:610d)
+ db $8
+ ld a, [$d717]
+ ld [$d11e], a
+ call GetMonName
+ ld hl, GaryText_76120
+ call PrintText
+ jp TextScriptEnd
+
+GaryText_76120: ; 76120 (1d:6120)
+ TX_FAR _GaryText_76120
+ db "@"
+
+GaryText4: ; 76125 (1d:6125)
+ TX_FAR _GaryText_76125
+ db "@"
+
+GaryText5: ; 7612a (1d:612a)
+ TX_FAR _GaryText_7612a
+ db "@"
diff --git a/scripts/halloffameroom.asm b/scripts/halloffameroom.asm
new file mode 100755
index 00000000..962fa643
--- /dev/null
+++ b/scripts/halloffameroom.asm
@@ -0,0 +1,115 @@
+HallofFameRoomScript: ; 5a49e (16:649e)
+ call EnableAutoTextBoxDrawing
+ ld hl, HallofFameRoomScriptPointers
+ ld a, [W_HALLOFFAMEROOMCURSCRIPT]
+ jp CallFunctionInTable
+
+HallofFameRoomScript_5a4aa: ; 5a4aa (16:64aa)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_HALLOFFAMEROOMCURSCRIPT], a
+ ret
+
+HallofFameRoomScriptPointers: ; 5a4b2 (16:64b2)
+ dw HallofFameRoomScript0
+ dw HallofFameRoomScript1
+ dw HallofFameRoomScript2
+ dw HallofFameRoomScript3
+
+HallofFameRoomScript3: ; 5a4ba (16:64ba)
+ ret
+
+HallofFameRoomScript2: ; 5a4bb (16:64bb)
+ call Delay3
+ ld a, [$d358]
+ push af
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $55
+ call Predef
+ pop af
+ ld [$d358], a
+ ld hl, W_FLAGS_D733
+ res 1, [hl]
+ inc hl
+ set 0, [hl]
+ xor a
+ ld hl, W_LORELEICURSCRIPT
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld [W_LANCECURSCRIPT], a
+ ld [W_HALLOFFAMEROOMCURSCRIPT], a
+ ld hl, $d863
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ xor a
+ ld [W_HALLOFFAMEROOMCURSCRIPT], a
+ ld a, PALLET_TOWN
+ ld [wLastBlackoutMap], a
+ callba SaveSAVtoSRAM
+ ld b, 5
+.asm_5a4ff
+ ld c, 600 / 5
+ call DelayFrames
+ dec b
+ jr nz, .asm_5a4ff ; 0x5a505 $f8
+ call WaitForTextScrollButtonPress
+ jp InitGame
+
+HallofFameRoomScript0: ; 5a50d (16:650d)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $ccd3
+ ld de, RLEMovement5a528
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $1
+ ld [W_HALLOFFAMEROOMCURSCRIPT], a
+ ret
+
+RLEMovement5a528: ; 5a528 (16:6528)
+ db $40,$5
+ db $ff
+
+HallofFameRoomScript1: ; 5a52b (16:652b)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld a, $1
+ ld [$d528], a
+ ld a, $1
+ ld [$ff8c], a
+ call SetSpriteMovementBytesToFF
+ ld a, $8
+ ld [$ff8d], a
+ call Func_34a6
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ inc a
+ ld [$d528], a
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $8
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $2
+ ld [W_HALLOFFAMEROOMCURSCRIPT], a
+ ret
+
+HallofFameRoomTextPointers: ; 5a56a (16:656a)
+ dw HallofFameRoomText1
+
+HallofFameRoomText1: ; 5a56c (16:656c)
+ TX_FAR _HallofFameRoomText1
+ db "@"
diff --git a/scripts/indigoplateau.asm b/scripts/indigoplateau.asm
new file mode 100755
index 00000000..9e4802ba
--- /dev/null
+++ b/scripts/indigoplateau.asm
@@ -0,0 +1,4 @@
+IndigoPlateauScript: ; 50935 (14:4935)
+ ret
+
+IndigoPlateauTextPointers: ; 50936 (14:4936)
diff --git a/scripts/indigoplateaulobby.asm b/scripts/indigoplateaulobby.asm
new file mode 100755
index 00000000..861939b6
--- /dev/null
+++ b/scripts/indigoplateaulobby.asm
@@ -0,0 +1,41 @@
+IndigoPlateauLobbyScript: ; 19c5b (6:5c5b)
+ call Func_22fa
+ call EnableAutoTextBoxDrawing
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ld hl, $d869
+ res 7, [hl]
+ ld hl, $d734
+ bit 1, [hl]
+ res 1, [hl]
+ ret z
+ ld hl, $d863
+ xor a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ret
+
+IndigoPlateauLobbyTextPointers: ; 19c7f (6:5c7f)
+ dw IndigoPlateauLobbyText1
+ dw IndigoPlateauLobbyText2
+ dw IndigoPlateauLobbyText3
+ dw IndigoPlateauLobbyText4
+ dw IndigoPlateauLobbyText5
+
+IndigoPlateauLobbyText1: ; 19c89 (6:5c89)
+ db $ff
+
+IndigoPlateauLobbyText2: ; 19c8a (6:5c8a)
+ TX_FAR _IndigoPlateauLobbyText1
+ db "@"
+
+IndigoPlateauLobbyText3: ; 19c8f (6:5c8f)
+ TX_FAR _IndigoPlateauLobbyText3
+ db "@"
+
+IndigoPlateauLobbyText5: ; 19c94 (6:5c94)
+ db $f6
diff --git a/scripts/lab1.asm b/scripts/lab1.asm
new file mode 100755
index 00000000..a4ec9b41
--- /dev/null
+++ b/scripts/lab1.asm
@@ -0,0 +1,30 @@
+Lab1Script: ; 75b8c (1d:5b8c)
+ call EnableAutoTextBoxDrawing
+ ret
+
+Lab1TextPointers: ; 75b90 (1d:5b90)
+ dw Lab1Text1
+ dw Lab1Text2
+ dw Lab1Text3
+ dw Lab1Text4
+ dw Lab1Text5
+
+Lab1Text1: ; 75b9a (1d:5b9a)
+ TX_FAR _Lab1Text1
+ db "@"
+
+Lab1Text2: ; 75b9f (1d:5b9f)
+ TX_FAR _Lab1Text2
+ db "@"
+
+Lab1Text3: ; 75ba4 (1d:5ba4)
+ TX_FAR _Lab1Text3
+ db "@"
+
+Lab1Text4: ; 75ba9 (1d:5ba9)
+ TX_FAR _Lab1Text4
+ db "@"
+
+Lab1Text5: ; 75bae (1d:5bae)
+ TX_FAR _Lab1Text5
+ db "@"
diff --git a/scripts/lab2.asm b/scripts/lab2.asm
new file mode 100755
index 00000000..a626de98
--- /dev/null
+++ b/scripts/lab2.asm
@@ -0,0 +1,26 @@
+Lab2Script: ; 75c21 (1d:5c21)
+ jp EnableAutoTextBoxDrawing
+
+Lab2TextPointers: ; 75c24 (1d:5c24)
+ dw Lab2Text1
+ dw Lab2Text2
+ dw Lab2Text3
+
+Lab2Text1: ; 75c2a (1d:5c2a)
+ TX_FAR _Lab2Text1
+ db "@"
+
+Lab2Text2: ; 75c2f (1d:5c2f)
+ db $8
+ ld a, $7
+ ld [wWhichTrade], a
+ jr asm_78552 ; 0x75c35 $6
+
+Lab2Text3: ; 75c37 (1d:5c37)
+ db $8
+ ld a, $8
+ ld [wWhichTrade], a
+asm_78552: ; 75c3d (1d:5c3d)
+ ld a, $54
+ call Predef
+ jp TextScriptEnd
diff --git a/scripts/lab3.asm b/scripts/lab3.asm
new file mode 100755
index 00000000..d56aba26
--- /dev/null
+++ b/scripts/lab3.asm
@@ -0,0 +1,63 @@
+Lab3Script: ; 75c87 (1d:5c87)
+ jp EnableAutoTextBoxDrawing
+
+Lab3TextPointers: ; 75c8a (1d:5c8a)
+ dw Lab3Text1
+ dw Lab3Text2
+ dw Lab3Text3
+ dw Lab3Text4
+ dw Lab3Text5
+
+Lab3Text1: ; 75c94 (1d:5c94)
+ db $08 ; asm
+ ld a, [$d7a1]
+ bit 7, a
+ jr nz, .asm_e551a ; 0x75c9a
+ ld hl, TM35PreReceiveText
+ call PrintText
+ ld bc, (TM_35 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM35Text
+ call PrintText
+ ld hl, $d7a1
+ set 7, [hl]
+ jr .asm_eb896 ; 0x75cb5
+.BagFull
+ ld hl, TM35NoRoomText
+ call PrintText
+ jr .asm_eb896 ; 0x75cbd
+.asm_e551a ; 0x75cbf
+ ld hl, TM35ExplanationText
+ call PrintText
+.asm_eb896 ; 0x75cc5
+ jp TextScriptEnd
+
+TM35PreReceiveText: ; 75cc8 (1d:5cc8)
+ TX_FAR _TM35PreReceiveText
+ db "@"
+
+ReceivedTM35Text: ; 75ccd (1d:5ccd)
+ TX_FAR _ReceivedTM35Text
+ db $0B, "@"
+
+TM35ExplanationText: ; 75cd3 (1d:5cd3)
+ TX_FAR _TM35ExplanationText
+ db "@"
+
+TM35NoRoomText: ; 75cd8 (1d:5cd8)
+ TX_FAR _TM35NoRoomText
+ db "@"
+
+Lab3Text2: ; 75cdd (1d:5cdd)
+ TX_FAR _Lab3Text2
+ db "@"
+
+Lab3Text4: ; 75ce2 (1d:5ce2)
+Lab3Text3: ; 75ce2 (1d:5ce2)
+ TX_FAR _Lab3Text3
+ db "@"
+
+Lab3Text5: ; 75ce7 (1d:5ce7)
+ TX_FAR _Lab3Text5
+ db "@"
diff --git a/scripts/lab4.asm b/scripts/lab4.asm
new file mode 100755
index 00000000..7bd071ea
--- /dev/null
+++ b/scripts/lab4.asm
@@ -0,0 +1,115 @@
+Lab4Script: ; 75d31 (1d:5d31)
+ jp EnableAutoTextBoxDrawing
+
+Lab4TextPointers: ; 75d34 (1d:5d34)
+ dw Lab4Text1
+ dw Lab4Text2
+
+Lab4Script_75d38: ; 75d38 (1d:5d38)
+ xor a
+ ld [$cd37], a
+ ld de, $cc5b
+ ld hl, FossilsList
+.asm_75d42
+ ld a, [hli]
+ and a
+ jr z, .asm_75d64
+ push hl
+ push de
+ ld [$d11e], a
+ ld b, a
+ ld a, $1c
+ call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5))
+ pop de
+ pop hl
+ ld a, b
+ and a
+ jr z, .asm_75d42
+ ld a, [$d11e]
+ ld [de], a
+ inc de
+ push hl
+ ld hl, $cd37
+ inc [hl]
+ pop hl
+ jr .asm_75d42
+.asm_75d64
+ ld a, $ff
+ ld [de], a
+ ret
+
+FossilsList: ; 75d68 (1d:5d68)
+ db DOME_FOSSIL
+ db HELIX_FOSSIL
+ db OLD_AMBER
+ db $00
+
+Lab4Text1: ; 75d6c (1d:5d6c)
+ db $8
+ ld a, [$d7a3]
+ bit 0, a
+ jr nz, .asm_75d96 ; 0x75d72 $22
+ ld hl, Lab4Text_75dc6
+ call PrintText
+ call Lab4Script_75d38
+ ld a, [$cd37]
+ and a
+ jr z, .asm_75d8d ; 0x75d81 $a
+ callba GiveFossilToCinnabarLab
+ jr .asm_75d93 ; 0x75d8b $6
+.asm_75d8d
+ ld hl, Lab4Text_75dcb
+ call PrintText
+.asm_75d93
+ jp TextScriptEnd
+.asm_75d96
+ bit 1, a
+ jr z, .asm_75da2 ; 0x75d98 $8
+ ld hl, Lab4Text_75dd0
+ call PrintText
+ jr .asm_75d93 ; 0x75da0 $f1
+.asm_75da2
+ call LoadFossilItemAndMonNameBank1D
+ ld hl, Lab4Text_75dd5
+ call PrintText
+ ld hl, $d7a3
+ set 2, [hl]
+ ld a, [W_FOSSILMON]
+ ld b, a
+ ld c, $1e
+ call GivePokemon
+ jr nc, .asm_75d93 ; 0x75db9 $d8
+ ld hl, $d7a3
+ res 0, [hl]
+ res 1, [hl]
+ res 2, [hl]
+ jr .asm_75d93 ; 0x75dc4 $cd
+
+Lab4Text_75dc6: ; 75dc6 (1d:5dc6)
+ TX_FAR _Lab4Text_75dc6
+ db "@"
+
+Lab4Text_75dcb: ; 75dcb (1d:5dcb)
+ TX_FAR _Lab4Text_75dcb
+ db "@"
+
+Lab4Text_75dd0: ; 75dd0 (1d:5dd0)
+ TX_FAR _Lab4Text_75dd0
+ db "@"
+
+Lab4Text_75dd5: ; 75dd5 (1d:5dd5)
+ TX_FAR _Lab4Text_75dd5
+ db "@"
+
+Lab4Text2: ; 75dda (1d:5dda)
+ db $08 ; asm
+ ld a, $3
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+ jp TextScriptEnd
+
+LoadFossilItemAndMonNameBank1D: ; 75de8 (1d:5de8)
+ ld b, BANK(LoadFossilItemAndMonName)
+ ld hl, LoadFossilItemAndMonName
+ jp Bankswitch
diff --git a/scripts/lance.asm b/scripts/lance.asm
new file mode 100755
index 00000000..445b4052
--- /dev/null
+++ b/scripts/lance.asm
@@ -0,0 +1,166 @@
+LanceScript: ; 5a2ae (16:62ae)
+ call LanceScript_5a2c4
+ call EnableAutoTextBoxDrawing
+ ld hl, LanceTrainerHeaders
+ ld de, LanceScriptPointers
+ ld a, [W_LANCECURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_LANCECURSCRIPT], a
+ ret
+
+LanceScript_5a2c4: ; 5a2c4 (16:62c4)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d866]
+ bit 7, a
+ jr nz, .asm_5a2da
+ ld a, $31
+ ld b, $32
+ jp LanceScript_5a2de
+.asm_5a2da
+ ld a, $72
+ ld b, $73
+
+LanceScript_5a2de: ; 5a2de (16:62de)
+ push bc
+ ld [$d09f], a
+ ld bc, $602
+ call LanceScript_5a2f0
+ pop bc
+ ld a, b
+ ld [$d09f], a
+ ld bc, $603
+
+LanceScript_5a2f0: ; 5a2f0 (16:62f0)
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+LanceScript_5a2f5: ; 5a2f5 (16:62f5)
+ xor a
+ ld [W_LANCECURSCRIPT], a
+ ret
+
+LanceScriptPointers: ; 5a2fa (16:62fa)
+ dw LanceScript0
+ dw Func_324c
+ dw LanceScript2
+ dw LanceScript3
+ dw LanceScript4
+
+LanceScript4: ; 5a304 (16:6304)
+ ret
+
+LanceScript0: ; 5a305 (16:6305)
+ ld a, [$d866]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_5a33e
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, [wWhichTrade] ; $cd3d
+ cp $3
+ jr nc, .asm_5a325
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+.asm_5a325
+ cp $5
+ jr z, LanceScript_5a35b
+ ld hl, $d866
+ bit 7, [hl]
+ set 7, [hl]
+ ret nz
+ ld hl, $d126
+ set 5, [hl]
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ jp LanceScript_5a2c4
+
+CoordsData_5a33e: ; 5a33e (16:633e)
+ db $01,$05
+ db $02,$06
+ db $0B,$05
+ db $0B,$06
+ db $10,$18
+ db $FF
+
+LanceScript2: ; 5a349 (16:6349)
+ call EndTrainerBattle
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, LanceScript_5a2f5
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+
+LanceScript_5a35b: ; 5a35b (16:635b)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $ccd3
+ ld de, RLEList_5a379
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_LANCECURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+RLEList_5a379: ; 5a379 (16:6379)
+ db $40, $0C
+ db $20, $0C
+ db $80, $07
+ db $20, $06
+ db $FF
+
+LanceScript3: ; 5a382 (16:6382)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_LANCECURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+LanceTextPointers: ; 5a395 (16:6395)
+ dw LanceText1
+
+LanceTrainerHeaders: ; 5a397 (16:6397)
+LanceTrainerHeader0: ; 5a397 (16:6397)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d866 ; flag's byte
+ dw LanceBeforeBattleText ; 0x63ae TextBeforeBattle
+ dw LanceAfterBattleText ; 0x63b8 TextAfterBattle
+ dw LanceEndBattleText ; 0x63b3 TextEndBattle
+ dw LanceEndBattleText ; 0x63b3 TextEndBattle
+
+ db $ff
+
+LanceText1: ; 5a3a4 (16:63a4)
+ db $08 ; asm
+ ld hl, LanceTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+LanceBeforeBattleText: ; 5a3ae (16:63ae)
+ TX_FAR _LanceBeforeBattleText
+ db "@"
+
+LanceEndBattleText: ; 5a3b3 (16:63b3)
+ TX_FAR _LanceEndBattleText
+ db "@"
+
+LanceAfterBattleText: ; 5a3b8 (16:63b8)
+ TX_FAR _LanceAfterBattleText
+ db $8
+ ld hl, $d866
+ set 6, [hl]
+ jp TextScriptEnd
diff --git a/scripts/lavenderhouse1.asm b/scripts/lavenderhouse1.asm
new file mode 100755
index 00000000..0f7bf417
--- /dev/null
+++ b/scripts/lavenderhouse1.asm
@@ -0,0 +1,116 @@
+LavenderHouse1Script: ; 1d8a8 (7:58a8)
+ call EnableAutoTextBoxDrawing
+ ret
+
+LavenderHouse1TextPointers: ; 1d8ac (7:58ac)
+ dw LavenderHouse1Text1
+ dw LavenderHouse1Text2
+ dw LavenderHouse1Text3
+ dw LavenderHouse1Text4
+ dw LavenderHouse1Text5
+ dw LavenderHouse1Text6
+
+LavenderHouse1Text1: ; 1d8b8 (7:58b8)
+ db $08 ; asm
+ ld a, [$d7e0]
+ bit 7, a
+ jr nz, .asm_72e5d ; 0x1d8be
+ ld hl, LavenderHouse1Text_1d8d1
+ call PrintText
+ jr .asm_6957f ; 0x1d8c6
+.asm_72e5d ; 0x1d8c8
+ ld hl, LavenderHouse1Text_1d8d6
+ call PrintText
+.asm_6957f ; 0x1d8ce
+ jp TextScriptEnd
+
+LavenderHouse1Text_1d8d1: ; 1d8d1 (7:58d1)
+ TX_FAR _LavenderHouse1Text_1d8d1
+ db "@"
+
+LavenderHouse1Text_1d8d6: ; 1d8d6 (7:58d6)
+ TX_FAR _LavenderHouse1Text_1d8d6
+ db "@"
+
+LavenderHouse1Text2: ; 1d8db (7:58db)
+ db $08 ; asm
+ ld a, [$d7e0]
+ bit 7, a
+ jr nz, .asm_06470 ; 0x1d8e1
+ ld hl, LavenderHouse1Text_1d8f4
+ call PrintText
+ jr .asm_3d208 ; 0x1d8e9
+.asm_06470 ; 0x1d8eb
+ ld hl, LavenderHouse1Text_1d8f9
+ call PrintText
+.asm_3d208 ; 0x1d8f1
+ jp TextScriptEnd
+
+LavenderHouse1Text_1d8f4: ; 1d8f4 (7:58f4)
+ TX_FAR _LavenderHouse1Text_1d8f4
+ db "@"
+
+LavenderHouse1Text_1d8f9: ; 1d8f9 (7:58f9)
+ TX_FAR _LavenderHouse1Text_1d8f9
+ db "@"
+
+LavenderHouse1Text3: ; 1d8fe (7:58fe)
+ TX_FAR _LavenderHouse1Text3
+ db $8
+ ld a, PSYDUCK
+ call PlayCry
+ jp TextScriptEnd
+
+LavenderHouse1Text4: ; 1d90b (7:590b)
+ TX_FAR _LavenderHouse1Text4
+ db $8
+ ld a, NIDORINO
+ call PlayCry
+ jp TextScriptEnd
+
+LavenderHouse1Text5: ; 1d918 (7:5918)
+ db $08 ; asm
+ ld a, [$d76c]
+ bit 0, a
+ jr nz, .asm_15ac2 ; 0x1d91e
+ ld hl, LavenderHouse1Text_1d94c
+ call PrintText
+ ld bc, (POKE_FLUTE << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedFluteText
+ call PrintText
+ ld hl, $d76c
+ set 0, [hl]
+ jr .asm_da749 ; 0x1d939
+.BagFull
+ ld hl, FluteNoRoomText
+ call PrintText
+ jr .asm_da749 ; 0x1d941
+.asm_15ac2 ; 0x1d943
+ ld hl, MrFujiAfterFluteText
+ call PrintText
+.asm_da749 ; 0x1d949
+ jp TextScriptEnd
+
+LavenderHouse1Text_1d94c: ; 1d94c (7:594c)
+ TX_FAR _LavenderHouse1Text_1d94c
+ db "@"
+
+ReceivedFluteText: ; 1d951 (7:5951)
+ TX_FAR _ReceivedFluteText
+ db $11
+ TX_FAR _FluteExplanationText
+ db "@"
+
+FluteNoRoomText: ; 1d95b (7:595b)
+ TX_FAR _FluteNoRoomText
+ db "@"
+
+MrFujiAfterFluteText: ; 1d960 (7:5960)
+ TX_FAR _MrFujiAfterFluteText
+ db "@"
+
+LavenderHouse1Text6: ; 1d965 (7:5965)
+ TX_FAR _LavenderHouse1Text6
+ db "@"
diff --git a/scripts/lavenderhouse2.asm b/scripts/lavenderhouse2.asm
new file mode 100755
index 00000000..db4f0cab
--- /dev/null
+++ b/scripts/lavenderhouse2.asm
@@ -0,0 +1,36 @@
+LavenderHouse2Script: ; 1d9ae (7:59ae)
+ call EnableAutoTextBoxDrawing
+ ret
+
+LavenderHouse2TextPointers: ; 1d9b2 (7:59b2)
+ dw LavenderHouse2Text1
+ dw LavenderHouse2Text2
+
+LavenderHouse2Text1: ; 1d9b6 (7:59b6)
+ TX_FAR _LavenderHouse2Text1
+ db $8
+ ld a, CUBONE
+ call PlayCry
+ jp TextScriptEnd
+
+LavenderHouse2Text2: ; 1d9c3 (7:59c3)
+ db $08 ; asm
+ ld a, [$d7e0]
+ bit 7, a
+ jr nz, .asm_65711 ; 0x1d9c9
+ ld hl, LavenderHouse2Text_1d9dc
+ call PrintText
+ jr .asm_64be1 ; 0x1d9d1
+.asm_65711 ; 0x1d9d3
+ ld hl, LavenderHouse2Text_1d9e1
+ call PrintText
+.asm_64be1 ; 0x1d9d9
+ jp TextScriptEnd
+
+LavenderHouse2Text_1d9dc: ; 1d9dc (7:59dc)
+ TX_FAR _LavenderHouse2Text_1d9dc
+ db "@"
+
+LavenderHouse2Text_1d9e1: ; 1d9e1 (7:59e1)
+ TX_FAR _LavenderHouse2Text_1d9e1
+ db "@"
diff --git a/scripts/lavendermart.asm b/scripts/lavendermart.asm
new file mode 100755
index 00000000..78870a66
--- /dev/null
+++ b/scripts/lavendermart.asm
@@ -0,0 +1,33 @@
+LavenderMartScript: ; 5c92c (17:492c)
+ jp EnableAutoTextBoxDrawing
+
+LavenderMartTextPointers: ; 5c92f (17:492f)
+ dw LavenderMartText1
+ dw LavenderMartText2
+ dw LavenderMartText3
+
+LavenderMartText2: ; 5c935 (17:4935)
+ TX_FAR _LavenderMartText2
+ db "@"
+
+LavenderMartText3: ; 5c93a (17:493a)
+ db $08 ; asm
+ ld a, [$d7e0]
+ bit 7, a
+ jr nz, .asm_c88d4 ; 0x5c940
+ ld hl, LavenderMart_5c953
+ call PrintText
+ jr .asm_6d225 ; 0x5c948
+.asm_c88d4 ; 0x5c94a
+ ld hl, LavenderMart_5c958
+ call PrintText
+.asm_6d225 ; 0x5c950
+ jp TextScriptEnd
+
+LavenderMart_5c953: ; 5c953 (17:4953)
+ TX_FAR _LavenderMart_5c953
+ db "@"
+
+LavenderMart_5c958: ; 5c958 (17:4958)
+ TX_FAR _LavenderMart_5c958
+ db "@"
diff --git a/scripts/lavenderpokecenter.asm b/scripts/lavenderpokecenter.asm
new file mode 100755
index 00000000..31a50aef
--- /dev/null
+++ b/scripts/lavenderpokecenter.asm
@@ -0,0 +1,23 @@
+LavenderPokecenterScript: ; 5c8da (17:48da)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+LavenderPokecenterTextPointers: ; 5c8e0 (17:48e0)
+ dw LavenderPokecenterText1
+ dw LavenderPokecenterText2
+ dw LavenderPokecenterText3
+ dw LavenderPokecenterText4
+
+LavenderPokecenterText4: ; 5c8e8 (17:48e8)
+ db $f6
+
+LavenderPokecenterText1: ; 5c8e9 (17:48e9)
+ db $ff
+
+LavenderPokecenterText2: ; 5c8ea (17:48ea)
+ TX_FAR _LavenderPokecenterText1
+ db "@"
+
+LavenderPokecenterText3: ; 5c8ef (17:48ef)
+ TX_FAR _LavenderPokecenterText3
+ db "@"
diff --git a/scripts/lavendertown.asm b/scripts/lavendertown.asm
new file mode 100755
index 00000000..41eb0242
--- /dev/null
+++ b/scripts/lavendertown.asm
@@ -0,0 +1,63 @@
+LavenderTownScript: ; 4410b (11:410b)
+ jp EnableAutoTextBoxDrawing
+
+LavenderTownTextPointers: ; 4410e (11:410e)
+ dw LavenderTownText1
+ dw LavenderTownText2
+ dw LavenderTownText3
+ dw LavenderTownText4
+ dw LavenderTownText5
+ dw MartSignText
+ dw PokeCenterSignText
+ dw LavenderTownText8
+ dw LavenderTownText9
+
+LavenderTownText1: ; 44120 (11:4120)
+ db $08 ; asm
+ ld hl, LavenderTownText_4413c
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ ld hl, LavenderTownText_44146
+ jr nz, .asm_40831 ; 0x44131
+ ld hl, LavenderTownText_44141
+.asm_40831 ; 0x44136
+ call PrintText
+ jp TextScriptEnd
+
+LavenderTownText_4413c: ; 4413c (11:413c)
+ TX_FAR _LavenderTownText_4413c
+ db "@"
+
+LavenderTownText_44141: ; 44141 (11:4141)
+ TX_FAR _LavenderTownText_44141
+ db "@"
+
+LavenderTownText_44146: ; 44146 (11:4146)
+ TX_FAR _LavenderTownText_44146
+ db "@"
+
+LavenderTownText2: ; 4414b (11:414b)
+ TX_FAR _LavenderTownText2
+ db "@"
+
+LavenderTownText3: ; 44150 (11:4150)
+ TX_FAR _LavenderTownText3
+ db "@"
+
+LavenderTownText4: ; 44155 (11:4155)
+ TX_FAR _LavenderTownText4
+ db "@"
+
+LavenderTownText5: ; 4415a (11:415a)
+ TX_FAR _LavenderTownText5
+ db "@"
+
+LavenderTownText8: ; 4415f (11:415f)
+ TX_FAR _LavenderTownText8
+ db "@"
+
+LavenderTownText9: ; 44164 (11:4164)
+ TX_FAR _LavenderTownText9
+ db "@"
diff --git a/scripts/lorelei.asm b/scripts/lorelei.asm
new file mode 100755
index 00000000..eb2da2bd
--- /dev/null
+++ b/scripts/lorelei.asm
@@ -0,0 +1,153 @@
+LoreleiScript: ; 7617b (1d:617b)
+ call LoreleiScript_76191
+ call EnableAutoTextBoxDrawing
+ ld hl, LoreleiTrainerHeaders
+ ld de, LoreleiScriptPointers
+ ld a, [W_LORELEICURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_LORELEICURSCRIPT], a
+ ret
+
+LoreleiScript_76191: ; 76191 (1d:6191)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, $d734
+ set 1, [hl]
+ ld a, [$d863]
+ bit 1, a
+ jr z, .asm_761a9
+ ld a, $5
+ jr .asm_761ab
+.asm_761a9
+ ld a, $24
+.asm_761ab
+ ld [$d09f], a
+ ld bc, $2
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+LoreleiScript_761b6: ; 761b6 (1d:61b6)
+ xor a
+ ld [W_LORELEICURSCRIPT], a
+ ret
+
+LoreleiScriptPointers: ; 761bb (1d:61bb)
+ dw LoreleiScript0
+ dw Func_324c
+ dw LoreleiScript2
+ dw LoreleiScript3
+ dw LoreleiScript4
+
+LoreleiScript4: ; 761c5 (1d:61c5)
+ ret
+asm_761c6: ; 761c6 (1d:61c6)
+ ld hl, $ccd3
+ ld a, $40
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $6
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_LORELEICURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+LoreleiScript0: ; 761e2 (1d:61e2)
+ ld hl, CoordsData_76223
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_NEWLYPRESSEDBUTTONS], a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [$ccd3], a
+ ld [$cd38], a
+ ld a, [wWhichTrade] ; $cd3d
+ cp $3
+ jr c, .asm_76206
+ ld hl, $d863
+ bit 6, [hl]
+ set 6, [hl]
+ jr z, asm_761c6
+.asm_76206
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $40
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_LORELEICURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CoordsData_76223: ; 76223 (1d:6223)
+ db $0A,$04
+ db $0A,$05
+ db $0B,$04
+ db $0B,$05
+ db $FF
+
+LoreleiScript3: ; 7622c (1d:622c)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_LORELEICURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+LoreleiScript2: ; 7623f (1d:623f)
+ call EndTrainerBattle
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, LoreleiScript_761b6
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+
+LoreleiTextPointers: ; 76251 (1d:6251)
+ dw LoreleiText1
+ dw LoreleiText2
+
+LoreleiTrainerHeaders: ; 76255 (1d:6255)
+LoreleiTrainerHeader0: ; 76255 (1d:6255)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d863 ; flag's byte
+ dw LoreleiBeforeBattleText ; 0x626c TextBeforeBattle
+ dw LoreleiAfterBattleText ; 0x6276 TextAfterBattle
+ dw LoreleiEndBattleText ; 0x6271 TextEndBattle
+ dw LoreleiEndBattleText ; 0x6271 TextEndBattle
+
+ db $ff
+
+LoreleiText1: ; 76262 (1d:6262)
+ db $08 ; asm
+ ld hl, LoreleiTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+LoreleiBeforeBattleText: ; 7626c (1d:626c)
+ TX_FAR _LoreleiBeforeBattleText
+ db "@"
+
+LoreleiEndBattleText: ; 76271 (1d:6271)
+ TX_FAR _LoreleiEndBattleText
+ db "@"
+
+LoreleiAfterBattleText: ; 76276 (1d:6276)
+ TX_FAR _LoreleiAfterBattleText
+ db "@"
+
+LoreleiText2: ; 7627b (1d:627b)
+ TX_FAR _LoreleiText2
+ db "@"
diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm
new file mode 100755
index 00000000..d68e2183
--- /dev/null
+++ b/scripts/mansion1.asm
@@ -0,0 +1,139 @@
+Mansion1Script: ; 442af (11:42af)
+ call Mansion1Subscript1
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion1TrainerHeaders
+ ld de, Mansion1ScriptPointers
+ ld a, [W_MANSION1CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_MANSION1CURSCRIPT], a
+ ret
+
+Mansion1Subscript1: ; 442c5 (11:42c5)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d796]
+ bit 0, a
+ jr nz, .asm_442ec ; 0x442d2 $18
+ ld bc, $060c
+ call Mansion1Script_4430b
+ ld bc, $0308
+ call Mansion1Script_44304
+ ld bc, $080a
+ call Mansion1Script_44304
+ ld bc, $0d0d
+ jp Mansion1Script_44304
+.asm_442ec
+ ld bc, $060c
+ call Mansion1Script_44304
+ ld bc, $0308
+ call Mansion1Script_4430b
+ ld bc, $080a
+ call Mansion1Script_4430b
+ ld bc, $0d0d
+ jp Mansion1Script_4430b
+
+Mansion1Script_44304: ; 44304 (11:4304)
+ ld a, $2d
+ ld [$d09f], a
+ jr asm_44310
+
+Mansion1Script_4430b: ; 4430b (11:430b)
+ ld a, $e
+ ld [$d09f], a
+asm_44310: ; 44310 (11:4310)
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ ret
+
+Func_44316: ; 44316 (11:4316)
+ ld a, [$c109]
+ cp $4
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $4
+ ld [H_SPRITEHEIGHT], a
+ jp DisplayTextID
+
+Mansion1ScriptPointers: ; 44326 (11:4326)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Mansion1TextPointers: ; 4432c (11:432c)
+ dw Mansion1Text1
+ dw Predef5CText
+ dw Predef5CText
+ dw Mansion1Text4
+
+Mansion1TrainerHeaders: ; 44334 (11:4334)
+Mansion1TrainerHeader0: ; 44334 (11:4334)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d798 ; flag's byte
+ dw Mansion1BattleText2 ; 0x434b TextBeforeBattle
+ dw Mansion1AfterBattleText2 ; 0x4355 TextAfterBattle
+ dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle
+ dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle
+
+ db $ff
+
+Mansion1Text1: ; 44341 (11:4341)
+ db $08 ; asm
+ ld hl, Mansion1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion1BattleText2: ; 4434b (11:434b)
+ TX_FAR _Mansion1BattleText2
+ db "@"
+
+Mansion1EndBattleText2: ; 44350 (11:4350)
+ TX_FAR _Mansion1EndBattleText2
+ db "@"
+
+Mansion1AfterBattleText2: ; 44355 (11:4355)
+ TX_FAR _Mansion1AfterBattleText2
+ db "@"
+
+Mansion1Text4: ; 4435a (11:435a)
+ db $8
+ ld hl, MansionSwitchText
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_4438c ; 0x44368 $22
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, $d126
+ set 5, [hl]
+ ld hl, MansionSwitchPressedText
+ call PrintText
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ ld hl, $d796
+ bit 0, [hl]
+ set 0, [hl]
+ jr z, .asm_44392 ; 0x44386 $a
+ res 0, [hl]
+ jr .asm_44392 ; 0x4438a $6
+.asm_4438c
+ ld hl, MansionSwitchNotPressedText
+ call PrintText
+.asm_44392
+ jp TextScriptEnd
+
+MansionSwitchText: ; 44395 (11:4395)
+ TX_FAR _MansionSwitchText
+ db "@"
+
+MansionSwitchPressedText: ; 4439a (11:439a)
+ TX_FAR _MansionSwitchPressedText
+ db "@"
+
+MansionSwitchNotPressedText: ; 4439f (11:439f)
+ TX_FAR _MansionSwitchNotPressedText
+ db "@"
diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm
new file mode 100755
index 00000000..203a3a66
--- /dev/null
+++ b/scripts/mansion2.asm
@@ -0,0 +1,145 @@
+Mansion2Script: ; 51fd8 (14:5fd8)
+ call Mansion2Script_51fee
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion2TrainerHeaders
+ ld de, Mansion2ScriptPointers
+ ld a, [W_MANSION2CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_MANSION2CURSCRIPT], a
+ ret
+
+Mansion2Script_51fee: ; 51fee (14:5fee)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d796]
+ bit 0, a
+ jr nz, .asm_52016
+ ld a, $e
+ ld bc, $204
+ call Mansion2Script_5202f
+ ld a, $54
+ ld bc, $409
+ call Mansion2Script_5202f
+ ld a, $5f
+ ld bc, $b03
+ call Mansion2Script_5202f
+ ret
+.asm_52016
+ ld a, $5f
+ ld bc, $204
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $409
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $b03
+ call Mansion2Script_5202f
+ ret
+
+Mansion2Script_5202f: ; 5202f (14:602f)
+ ld [$d09f], a
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+Mansion2Script_52037: ; 52037 (14:6037)
+ ld a, [$c109]
+ cp $4
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $5
+ ld [H_SPRITEHEIGHT], a
+ jp DisplayTextID
+
+Mansion2ScriptPointers: ; 52047 (14:6047)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Mansion2TextPointers: ; 5204d (14:604d)
+ dw Mansion2Text1
+ dw Predef5CText
+ dw Mansion2Text3
+ dw Mansion2Text4
+ dw Mansion2Text5
+
+Mansion2TrainerHeaders: ; 52057 (14:6057)
+Mansion2TrainerHeader0: ; 52057 (14:6057)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d847 ; flag's byte
+ dw Mansion2BattleText1 ; 0x606e TextBeforeBattle
+ dw Mansion2AfterBattleText1 ; 0x6078 TextAfterBattle
+ dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle
+ dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle
+
+ db $ff
+
+Mansion2Text1: ; 52064 (14:6064)
+ db $08 ; asm
+ ld hl, Mansion2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion2BattleText1: ; 5206e (14:606e)
+ TX_FAR _Mansion2BattleText1
+ db "@"
+
+Mansion2EndBattleText1: ; 52073 (14:6073)
+ TX_FAR _Mansion2EndBattleText1
+ db "@"
+
+Mansion2AfterBattleText1: ; 52078 (14:6078)
+ TX_FAR _Mansion2AfterBattleText1
+ db "@"
+
+Mansion2Text3: ; 5207d (14:607d)
+ TX_FAR _Mansion2Text3
+ db "@"
+
+Mansion2Text4: ; 52082 (14:6082)
+ TX_FAR _Mansion2Text4
+ db "@"
+
+Mansion3Text6: ; 52087 (14:6087)
+Mansion2Text5: ; 52087 (14:6087)
+ db $8
+ ld hl, Mansion2Text_520c2
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_520b9 ; 0x52095 $22
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, $d126
+ set 5, [hl]
+ ld hl, Mansion2Text_520c7
+ call PrintText
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ ld hl, $d796
+ bit 0, [hl]
+ set 0, [hl]
+ jr z, .asm_520bf ; 0x520b3 $a
+ res 0, [hl]
+ jr .asm_520bf ; 0x520b7 $6
+.asm_520b9
+ ld hl, Mansion2Text_520cc
+ call PrintText
+.asm_520bf
+ jp TextScriptEnd
+
+Mansion2Text_520c2: ; 520c2 (14:60c2)
+ TX_FAR _Mansion2Text_520c2
+ db "@"
+
+Mansion2Text_520c7: ; 520c7 (14:60c7)
+ TX_FAR _Mansion2Text_520c7
+ db "@"
+
+Mansion2Text_520cc: ; 520cc (14:60cc)
+ TX_FAR _Mansion2Text_520cc
+ db "@"
diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm
new file mode 100755
index 00000000..9ad9454a
--- /dev/null
+++ b/scripts/mansion3.asm
@@ -0,0 +1,153 @@
+Mansion3Script: ; 521ee (14:61ee)
+ call Mansion3Script_52204
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion3TrainerHeader0
+ ld de, Mansion3ScriptPointers
+ ld a, [W_MANSION3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_MANSION3CURSCRIPT], a
+ ret
+
+Mansion3Script_52204: ; 52204 (14:6204)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d796]
+ bit 0, a
+ jr nz, .asm_52224
+ ld a, $e
+ ld bc, $207
+ call Mansion2Script_5202f
+ ld a, $5f
+ ld bc, $507
+ call Mansion2Script_5202f
+ ret
+.asm_52224
+ ld a, $5f
+ ld bc, $207
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $507
+ call Mansion2Script_5202f
+ ret
+
+Mansion3ScriptPointers: ; 52235 (14:6235)
+ dw Mansion3Script0
+ dw Func_324c
+ dw EndTrainerBattle
+
+Mansion3Script0: ; 5223b (14:623b)
+ ld hl, CoordsData_52254
+ call Mansion3Script_5225b
+ ld a, [$d71e]
+ and a
+ jp z, CheckFightingMapTrainers
+ cp $3
+ ld a, $a5
+ jr nz, .asm_52250
+ ld a, $d6
+.asm_52250
+ ld [$d71d], a
+ ret
+
+CoordsData_52254: ; 52254 (14:6254)
+ db $0E,$10
+ db $0E,$11
+ db $0E,$13
+ db $FF
+
+Mansion3Script_5225b: ; 5225b (14:625b)
+ xor a
+ ld [$d71e], a
+ ld a, [$d72d]
+ bit 4, a
+ ret nz
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [wWhichTrade] ; $cd3d
+ ld [$d71e], a
+ ld hl, $d72d
+ set 4, [hl]
+ ld hl, $d732
+ set 4, [hl]
+ ret
+
+Func_5227a: ; 5227a (14:627a)
+ ld a, [$c109]
+ cp $4
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $6
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+
+Mansion3TextPointers: ; 5228a (14:628a)
+ dw Mansion3Text1
+ dw Mansion3Text2
+ dw Predef5CText
+ dw Predef5CText
+ dw Mansion3Text5
+ dw Mansion3Text6
+
+Mansion3TrainerHeaders: ; 52296 (14:6296)
+Mansion3TrainerHeader0: ; 52296 (14:6296)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d849 ; flag's byte
+ dw Mansion3BattleText1 ; 0x62c3 TextBeforeBattle
+ dw Mansion3AfterBattleText1 ; 0x62cd TextAfterBattle
+ dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle
+ dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle
+
+Mansion3TrainerHeader2: ; 522a2 (14:62a2)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d849 ; flag's byte
+ dw Mansion3BattleText2 ; 0x62d2 TextBeforeBattle
+ dw Mansion3AfterBattleText2 ; 0x62dc TextAfterBattle
+ dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle
+ dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle
+
+ db $ff
+
+Mansion3Text1: ; 522af (14:62af)
+ db $08 ; asm
+ ld hl, Mansion3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion3Text2: ; 522b9 (14:62b9)
+ db $08 ; asm
+ ld hl, Mansion3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion3BattleText1: ; 522c3 (14:62c3)
+ TX_FAR _Mansion3BattleText1
+ db "@"
+
+Mansion3EndBattleText1: ; 522c8 (14:62c8)
+ TX_FAR _Mansion3EndBattleText1
+ db "@"
+
+Mansion3AfterBattleText1: ; 522cd (14:62cd)
+ TX_FAR _Mansion3AfterBattleText1
+ db "@"
+
+Mansion3BattleText2: ; 522d2 (14:62d2)
+ TX_FAR _Mansion3BattleText2
+ db "@"
+
+Mansion3EndBattleText2: ; 522d7 (14:62d7)
+ TX_FAR _Mansion3EndBattleText2
+ db "@"
+
+Mansion3AfterBattleText2: ; 522dc (14:62dc)
+ TX_FAR _Mansion3AfterBattleText2
+ db "@"
+
+Mansion3Text5: ; 522e1 (14:62e1)
+ TX_FAR _Mansion3Text5
+ db "@"
diff --git a/scripts/mansion4.asm b/scripts/mansion4.asm
new file mode 100755
index 00000000..78082ced
--- /dev/null
+++ b/scripts/mansion4.asm
@@ -0,0 +1,132 @@
+Mansion4Script: ; 523b9 (14:63b9)
+ call Mansion4Script_523cf
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion4TrainerHeader0
+ ld de, Mansion4ScriptPointers
+ ld a, [W_MANSION4CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_MANSION4CURSCRIPT], a
+ ret
+
+Mansion4Script_523cf: ; 523cf (14:63cf)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d796]
+ bit 0, a
+ jr nz, .asm_523ff
+ ld a, $e
+ ld bc, $80d
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $b06
+ call Mansion2Script_5202f
+ ld a, $5f
+ ld bc, $304
+ call Mansion2Script_5202f
+ ld a, $54
+ ld bc, $808
+ call Mansion2Script_5202f
+ ret
+.asm_523ff
+ ld a, $2d
+ ld bc, $80d
+ call Mansion2Script_5202f
+ ld a, $5f
+ ld bc, $b06
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $304
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $808
+ call Mansion2Script_5202f
+ ret
+
+Func_52420: ; 52420 (14:6420)
+ ld a, [$c109]
+ cp $4
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+
+Mansion4ScriptPointers: ; 52430 (14:6430)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Mansion4TextPointers: ; 52436 (14:6436)
+ dw Mansion4Text1
+ dw Mansion4Text2
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Mansion4Text7
+ dw Predef5CText
+ dw Mansion3Text6
+
+Mansion4TrainerHeaders: ; 52448 (14:6448)
+Mansion4TrainerHeader0: ; 52448 (14:6448)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d84b ; flag's byte
+ dw Mansion4BattleText1 ; 0x6475 TextBeforeBattle
+ dw Mansion4AfterBattleText1 ; 0x647f TextAfterBattle
+ dw Mansion4EndBattleText1 ; 0x647a TextEndBattle
+ dw Mansion4EndBattleText1 ; 0x647a TextEndBattle
+
+Mansion4TrainerHeader2: ; 52454 (14:6454)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d84b ; flag's byte
+ dw Mansion4BattleText2 ; 0x6484 TextBeforeBattle
+ dw Mansion4AfterBattleText2 ; 0x648e TextAfterBattle
+ dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle
+ dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle
+
+ db $ff
+
+Mansion4Text1: ; 52461 (14:6461)
+ db $08 ; asm
+ ld hl, Mansion4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion4Text2: ; 5246b (14:646b)
+ db $08 ; asm
+ ld hl, Mansion4TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion4BattleText1: ; 52475 (14:6475)
+ TX_FAR _Mansion4BattleText1
+ db "@"
+
+Mansion4EndBattleText1: ; 5247a (14:647a)
+ TX_FAR _Mansion4EndBattleText1
+ db "@"
+
+Mansion4AfterBattleText1: ; 5247f (14:647f)
+ TX_FAR _Mansion4AfterBattleText1
+ db "@"
+
+Mansion4BattleText2: ; 52484 (14:6484)
+ TX_FAR _Mansion4BattleText2
+ db "@"
+
+Mansion4EndBattleText2: ; 52489 (14:6489)
+ TX_FAR _Mansion4EndBattleText2
+ db "@"
+
+Mansion4AfterBattleText2: ; 5248e (14:648e)
+ TX_FAR _Mansion4AfterBattleText2
+ db "@"
+
+Mansion4Text7: ; 52493 (14:6493)
+ TX_FAR _Mansion4Text7
+ db "@"
diff --git a/scripts/mtmoon1.asm b/scripts/mtmoon1.asm
new file mode 100755
index 00000000..1954391c
--- /dev/null
+++ b/scripts/mtmoon1.asm
@@ -0,0 +1,225 @@
+MtMoon1Script: ; 499c8 (12:59c8)
+ call EnableAutoTextBoxDrawing
+ ld hl, MtMoon1TrainerHeader0
+ ld de, MtMoon1ScriptPointers
+ ld a, [W_MTMOON1CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_MTMOON1CURSCRIPT], a
+ ret
+
+MtMoon1ScriptPointers: ; 499db (12:59db)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+MtMoon1TextPointers: ; 499e1 (12:59e1)
+ dw MtMoon1Text1
+ dw MtMoon1Text2
+ dw MtMoon1Text3
+ dw MtMoon1Text4
+ dw MtMoon1Text5
+ dw MtMoon1Text6
+ dw MtMoon1Text7
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw MtMoon1Text14
+
+MtMoon1TrainerHeaders: ; 499fd (12:59fd)
+MtMoon1TrainerHeader0: ; 499fd (12:59fd)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText2 ; 0x5a98 TextBeforeBattle
+ dw MtMoon1AfterBattleText2 ; 0x5aa2 TextAfterBattle
+ dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle
+ dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle
+
+MtMoon1TrainerHeader2: ; 49a09 (12:5a09)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText3 ; 0x5aa7 TextBeforeBattle
+ dw MtMoon1AfterBattleText3 ; 0x5ab1 TextAfterBattle
+ dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle
+ dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle
+
+MtMoon1TrainerHeader3: ; 49a15 (12:5a15)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText4 ; 0x5ab6 TextBeforeBattle
+ dw MtMoon1AfterBattleText4 ; 0x5ac0 TextAfterBattle
+ dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle
+ dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle
+
+MtMoon1TrainerHeader4: ; 49a21 (12:5a21)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText5 ; 0x5ac5 TextBeforeBattle
+ dw MtMoon1AfterBattleText5 ; 0x5acf TextAfterBattle
+ dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle
+ dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle
+
+MtMoon1TrainerHeader5: ; 49a2d (12:5a2d)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText6 ; 0x5ad4 TextBeforeBattle
+ dw MtMoon1AfterBattleText6 ; 0x5ade TextAfterBattle
+ dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle
+ dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle
+
+MtMoon1TrainerHeader6: ; 49a39 (12:5a39)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText7 ; 0x5ae3 TextBeforeBattle
+ dw MtMoon1AfterBattleText7 ; 0x5aed TextAfterBattle
+ dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle
+ dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle
+
+MtMoon1TrainerHeader7: ; 49a45 (12:5a45)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f5 ; flag's byte
+ dw MtMoon1BattleText8 ; 0x5af2 TextBeforeBattle
+ dw MtMoon1AfterBattleText8 ; 0x5afc TextAfterBattle
+ dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle
+ dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle
+
+ db $ff
+
+MtMoon1Text1: ; 49a52 (12:5a52)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1Text2: ; 49a5c (12:5a5c)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1Text3: ; 49a66 (12:5a66)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1Text4: ; 49a70 (12:5a70)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1Text5: ; 49a7a (12:5a7a)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1Text6: ; 49a84 (12:5a84)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1Text7: ; 49a8e (12:5a8e)
+ db $08 ; asm
+ ld hl, MtMoon1TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1BattleText2: ; 49a98 (12:5a98)
+ TX_FAR _MtMoon1BattleText2
+ db "@"
+
+MtMoon1EndBattleText2: ; 49a9d (12:5a9d)
+ TX_FAR _MtMoon1EndBattleText2
+ db "@"
+
+MtMoon1AfterBattleText2: ; 49aa2 (12:5aa2)
+ TX_FAR _MtMoon1AfterBattleText2
+ db "@"
+
+MtMoon1BattleText3: ; 49aa7 (12:5aa7)
+ TX_FAR _MtMoon1BattleText3
+ db "@"
+
+MtMoon1EndBattleText3: ; 49aac (12:5aac)
+ TX_FAR _MtMoon1EndBattleText3
+ db "@"
+
+MtMoon1AfterBattleText3: ; 49ab1 (12:5ab1)
+ TX_FAR _MtMoon1AfterBattleText3
+ db "@"
+
+MtMoon1BattleText4: ; 49ab6 (12:5ab6)
+ TX_FAR _MtMoon1BattleText4
+ db "@"
+
+MtMoon1EndBattleText4: ; 49abb (12:5abb)
+ TX_FAR _MtMoon1EndBattleText4
+ db "@"
+
+MtMoon1AfterBattleText4: ; 49ac0 (12:5ac0)
+ TX_FAR _MtMoon1AfterBattleText4
+ db "@"
+
+MtMoon1BattleText5: ; 49ac5 (12:5ac5)
+ TX_FAR _MtMoon1BattleText5
+ db "@"
+
+MtMoon1EndBattleText5: ; 49aca (12:5aca)
+ TX_FAR _MtMoon1EndBattleText5
+ db "@"
+
+MtMoon1AfterBattleText5: ; 49acf (12:5acf)
+ TX_FAR _MtMoon1AfterBattleText5
+ db "@"
+
+MtMoon1BattleText6: ; 49ad4 (12:5ad4)
+ TX_FAR _MtMoon1BattleText6
+ db "@"
+
+MtMoon1EndBattleText6: ; 49ad9 (12:5ad9)
+ TX_FAR _MtMoon1EndBattleText6
+ db "@"
+
+MtMoon1AfterBattleText6: ; 49ade (12:5ade)
+ TX_FAR _MtMoon1AfterBattleText6
+ db "@"
+
+MtMoon1BattleText7: ; 49ae3 (12:5ae3)
+ TX_FAR _MtMoon1BattleText7
+ db "@"
+
+MtMoon1EndBattleText7: ; 49ae8 (12:5ae8)
+ TX_FAR _MtMoon1EndBattleText7
+ db "@"
+
+MtMoon1AfterBattleText7: ; 49aed (12:5aed)
+ TX_FAR _MtMoon1AfterBattleText7
+ db "@"
+
+MtMoon1BattleText8: ; 49af2 (12:5af2)
+ TX_FAR _MtMoon1BattleText8
+ db "@"
+
+MtMoon1EndBattleText8: ; 49af7 (12:5af7)
+ TX_FAR _MtMoon1EndBattleText8
+ db "@"
+
+MtMoon1AfterBattleText8: ; 49afc (12:5afc)
+ TX_FAR _MtMoon1AfterBattleText8
+ db "@"
+
+MtMoon1Text14: ; 49b01 (12:5b01)
+ TX_FAR _MtMoon1Text14
+ db "@"
diff --git a/scripts/mtmoon2.asm b/scripts/mtmoon2.asm
new file mode 100755
index 00000000..03e9d9cb
--- /dev/null
+++ b/scripts/mtmoon2.asm
@@ -0,0 +1,10 @@
+MtMoon2Script: ; 51a42 (14:5a42)
+ call EnableAutoTextBoxDrawing
+ ret
+
+MtMoon2TextPointers: ; 51a46 (14:5a46)
+ dw MtMoonText1
+
+MtMoonText1: ; 51a48 (14:5a48)
+ TX_FAR _MtMoonText1
+ db "@"
diff --git a/scripts/mtmoon3.asm b/scripts/mtmoon3.asm
new file mode 100755
index 00000000..669d6fe4
--- /dev/null
+++ b/scripts/mtmoon3.asm
@@ -0,0 +1,414 @@
+MtMoon3Script: ; 49d0b (12:5d0b)
+ call EnableAutoTextBoxDrawing
+ ld hl, MtMoon3TrainerHeader0 ; $5e48
+ ld de, MtMoon3ScriptPointers
+ ld a, [W_MTMOON3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_MTMOON3CURSCRIPT], a
+ ld a, [$d7f6]
+ bit 1, a
+ ret z
+ ld hl, CoordsData_49d37
+ call ArePlayerCoordsInArray
+ jr nc, .asm_49d31 ; 0x49d29 $6
+ ld hl, $d72e
+ set 4, [hl]
+ ret
+.asm_49d31
+ ld hl, $d72e
+ res 4, [hl]
+ ret
+
+CoordsData_49d37: ; 49d37 (12:5d37)
+ db $05,$0B
+ db $05,$0C
+ db $05,$0D
+ db $05,$0E
+ db $06,$0B
+ db $06,$0C
+ db $06,$0D
+ db $06,$0E
+ db $07,$0B
+ db $07,$0C
+ db $07,$0D
+ db $07,$0E
+ db $08,$0B
+ db $08,$0C
+ db $08,$0D
+ db $08,$0E
+ db $FF
+
+MtMoon3Script_49d58: ; 49d58 (12:5d58)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+MtMoon3ScriptPointers: ; 49d63 (12:5d63)
+ dw MtMoon3Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw MtMoon3Script3
+ dw MtMoon3Script4
+ dw MtMoon3Script5
+
+MtMoon3Script0: ; 49d6f (12:5d6f)
+ ld a, [$d7f6]
+ bit 1, a
+ jp nz, MtMoon3Script_49d91
+ ld a, [W_YCOORD] ; $d361
+ cp $8
+ jp nz, MtMoon3Script_49d91
+ ld a, [W_XCOORD] ; $d362
+ cp $d
+ jp nz, MtMoon3Script_49d91
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp DisplayTextID
+
+MtMoon3Script_49d91: ; 49d91 (12:5d91)
+ ld a, [$d7f6]
+ and $c0
+ jp z, CheckFightingMapTrainers
+ ret
+
+MtMoon3Script3: ; 49d9a (12:5d9a)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, MtMoon3Script_49d58
+ call UpdateSprites
+ call Delay3
+ ld hl, $d7f6
+ set 1, [hl]
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+MtMoon3Script4: ; 49dba (12:5dba)
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call SetSpriteMovementBytesToFF
+ ld hl, CoordsData_49dea
+ call ArePlayerCoordsInArray
+ jr c, .asm_49dd7
+ ld hl, CoordsData_49df1
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ ld de, MovementData_49df9
+ jr .asm_49dda
+.asm_49dd7
+ ld de, MovementData_49df8
+.asm_49dda
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call MoveSprite
+ ld a, $5
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CoordsData_49dea: ; 49dea (12:5dea)
+ db $07,$0C
+ db $06,$0B
+ db $05,$0C
+ db $FF
+
+CoordsData_49df1: ; 49df1 (12:5df1)
+ db $07,$0D
+ db $06,$0E
+ db $05,$0E
+ db $FF
+
+MovementData_49df8: ; 49df8 (12:5df8)
+ db $C0
+
+MovementData_49df9: ; 49df9 (12:5df9)
+ db $40,$FF
+
+MtMoon3Script5: ; 49dfb (12:5dfb)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [$cc3c], a
+ ld a, $a
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, [$d7f6]
+ bit 6, a
+ jr z, .asm_49e1d
+ ld a, $6e
+ jr .asm_49e1f
+.asm_49e1d
+ ld a, $6d
+.asm_49e1f
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+MtMoon3TextPointers: ; 49e34 (12:5e34)
+ dw MtMoon3Text1
+ dw MtMoon3Text2
+ dw MtMoon3Text3
+ dw MtMoon3Text4
+ dw MtMoon3Text5
+ dw MtMoon3Text6
+ dw MtMoon3Text7
+ dw Predef5CText
+ dw Predef5CText
+ dw MtMoon3Text_49f99
+
+MtMoon3TrainerHeaders: ; 49e48 (12:5e48)
+MtMoon3TrainerHeader0: ; 49e48 (12:5e48)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f6 ; flag's byte
+ dw MtMoon3BattleText2 ; 0x5f9f TextBeforeBattle
+ dw MtMoon3AfterBattleText2 ; 0x5fa9 TextAfterBattle
+ dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
+ dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
+
+MtMoon3TrainerHeader2: ; 49e54 (12:5e54)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f6 ; flag's byte
+ dw MtMoon3BattleText3 ; 0x5fae TextBeforeBattle
+ dw MtMoon3AfterBattleText3 ; 0x5fb8 TextAfterBattle
+ dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
+ dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
+
+MtMoon3TrainerHeader3: ; 49e60 (12:5e60)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f6 ; flag's byte
+ dw MtMoon3BattleText4 ; 0x5fbd TextBeforeBattle
+ dw MtMoon3AfterBattleText4 ; 0x5fc7 TextAfterBattle
+ dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
+ dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
+
+MtMoon3TrainerHeader4: ; 49e6c (12:5e6c)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f6 ; flag's byte
+ dw MtMoon3BattleText5 ; 0x5fcc TextBeforeBattle
+ dw MtMoon3AfterBattleText5 ; 0x5fd6 TextAfterBattle
+ dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
+ dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
+
+ db $ff
+
+MtMoon3Text1: ; 49e79 (12:5e79)
+ db $08 ; asm
+ ld a, [$d7f6]
+ bit 1, a
+ jr z, .asm_be1e0 ; 0x49e7f
+ and $c0
+ jr nz, .asm_f8cd4 ; 0x49e83
+ ld hl, MtMoon3Text_49f8f
+ call PrintText
+ jr .asm_f1fba ; 0x49e8b
+.asm_be1e0 ; 0x49e8d
+ ld hl, MtMoon3Text_49f85
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, MtMoon3Text_49f8a
+ ld de, MtMoon3Text_49f8a
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jr .asm_f1fba ; 0x49eb6
+.asm_f8cd4 ; 0x49eb8
+ ld hl, MtMoon3Text_49f94
+ call PrintText
+.asm_f1fba ; 0x49ebe
+ jp TextScriptEnd
+
+MtMoon3Text2: ; 49ec1 (12:5ec1)
+ db $08 ; asm
+ ld hl, MtMoon3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon3Text3: ; 49ecb (12:5ecb)
+ db $08 ; asm
+ ld hl, MtMoon3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon3Text4: ; 49ed5 (12:5ed5)
+ db $08 ; asm
+ ld hl, MtMoon3TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon3Text5: ; 49edf (12:5edf)
+ db $08 ; asm
+ ld hl, MtMoon3TrainerHeader4 ; $5e6c
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon3Text6: ; 49ee9 (12:5ee9)
+ db $08 ; asm
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, MtMoon3Text_49f24
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_1fa5e ; 0x49efc
+ ld bc,(DOME_FOSSIL << 8) | 1
+ call GiveItem
+ jp nc, MtMoon3Script_49f76
+ call MtMoon3Script_49f69
+ ld a, $6d
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, $d7f6
+ set 6, [hl]
+ ld a, $4
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+.asm_1fa5e ; 0x49f21
+ jp TextScriptEnd
+
+MtMoon3Text_49f24: ; 49f24 (12:5f24)
+ TX_FAR _MtMoon3Text_49f24
+ db "@"
+
+MtMoon3Text7: ; 49f29 (12:5f29)
+ db $08 ; asm
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, MtMoon3Text_49f64
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_8e988 ; 0x49f3c
+ ld bc, (HELIX_FOSSIL << 8) | 1
+ call GiveItem
+ jp nc, MtMoon3Script_49f76
+ call MtMoon3Script_49f69
+ ld a, $6e
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, $d7f6
+ set 7, [hl]
+ ld a, $4
+ ld [W_MTMOON3CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+.asm_8e988 ; 0x49f61
+ jp TextScriptEnd
+
+MtMoon3Text_49f64: ; 49f64 (12:5f64)
+ TX_FAR _MtMoon3Text_49f64
+ db "@"
+
+MtMoon3Script_49f69: ; 49f69 (12:5f69)
+ ld hl, MtMoon3Text_49f6f
+ jp PrintText
+
+MtMoon3Text_49f6f: ; 49f6f (12:5f6f)
+ TX_FAR _MtMoon3Text_49f6f ; 0x80995
+ db $11, $d, "@"
+
+MtMoon3Script_49f76: ; 49f76 (12:5f76)
+ ld hl, MtMoon3Text_49f7f
+ call PrintText
+ jp TextScriptEnd
+
+MtMoon3Text_49f7f: ; 49f7f (12:5f7f)
+ TX_FAR _MtMoon3Text_49f7f ; 0x809a8
+ db $d, "@"
+
+MtMoon3Text_49f85: ; 49f85 (12:5f85)
+ TX_FAR _MtMoon3Text_49f85
+ db "@"
+
+MtMoon3Text_49f8a: ; 49f8a (12:5f8a)
+ TX_FAR _MtMoon3Text_49f8a
+ db "@"
+
+MtMoon3Text_49f8f: ; 49f8f (12:5f8f)
+ TX_FAR _MtMoon3Text_49f8f
+ db "@"
+
+MtMoon3Text_49f94: ; 49f94 (12:5f94)
+ TX_FAR _MtMoon3Text_49f94
+ db "@"
+
+MtMoon3Text_49f99: ; 49f99 (12:5f99)
+ TX_FAR _MtMoon3Text_49f99
+ db $11, "@"
+
+MtMoon3BattleText2: ; 49f9f (12:5f9f)
+ TX_FAR _MtMoon3BattleText2
+ db "@"
+
+MtMoon3EndBattleText2: ; 49fa4 (12:5fa4)
+ TX_FAR _MtMoon3EndBattleText2
+ db "@"
+
+MtMoon3AfterBattleText2: ; 49fa9 (12:5fa9)
+ TX_FAR _MtMoon3AfterBattleText2
+ db "@"
+
+MtMoon3BattleText3: ; 49fae (12:5fae)
+ TX_FAR _MtMoon3BattleText3
+ db "@"
+
+MtMoon3EndBattleText3: ; 49fb3 (12:5fb3)
+ TX_FAR _MtMoon3EndBattleText3
+ db "@"
+
+MtMoon3AfterBattleText3: ; 49fb8 (12:5fb8)
+ TX_FAR _MtMoon3AfterBattleText3
+ db "@"
+
+MtMoon3BattleText4: ; 49fbd (12:5fbd)
+ TX_FAR _MtMoon3BattleText4
+ db "@"
+
+MtMoon3EndBattleText4: ; 49fc2 (12:5fc2)
+ TX_FAR _MtMoon3EndBattleText4
+ db "@"
+
+MtMoon3AfterBattleText4: ; 49fc7 (12:5fc7)
+ TX_FAR _MtMoon3AfterBattleText4
+ db "@"
+
+MtMoon3BattleText5: ; 49fcc (12:5fcc)
+ TX_FAR _MtMoon3BattleText5
+ db "@"
+
+MtMoon3EndBattleText5: ; 49fd1 (12:5fd1)
+ TX_FAR _MtMoon3EndBattleText5
+ db "@"
+
+MtMoon3AfterBattleText5: ; 49fd6 (12:5fd6)
+ TX_FAR _MtMoon3AfterBattleText5
+ db "@"
diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm
new file mode 100755
index 00000000..01272c30
--- /dev/null
+++ b/scripts/mtmoonpokecenter.asm
@@ -0,0 +1,97 @@
+MtMoonPokecenterScript: ; 492cf (12:52cf)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+MtMoonPokecenterTextPointers: ; 492d5 (12:52d5)
+ dw MtMoonPokecenterText1
+ dw MtMoonPokecenterText2
+ dw MtMoonPokecenterText3
+ dw MtMoonPokecenterText4
+ dw MtMoonPokecenterText5
+ dw MtMoonPokecenterText6
+
+MtMoonPokecenterText1: ; 492e1 (12:52e1)
+ db $ff
+
+MtMoonPokecenterText2: ; 492e2 (12:52e2)
+ TX_FAR _MtMoonPokecenterText1
+ db "@"
+
+MtMoonPokecenterText3: ; 492e7 (12:52e7)
+ TX_FAR _MtMoonPokecenterText3
+ db "@"
+
+MtMoonPokecenterText4: ; 492ec (12:52ec)
+ db $08 ; asm
+ ld a, [$d7c6]
+ add a
+ jp c, .asm_49353
+ ld hl, MtMoonPokecenterText_4935c
+ call PrintText
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jp nz, .asm_4934e
+ ldh [$9f], a
+ ldh [$a1], a
+ ld a, $5
+ ldh [$a0], a
+ call HasEnoughMoney
+ jr nc, .asm_faa09 ; 0x49317
+ ld hl, MtMoonPokecenterText_49366
+ jr .asm_49356 ; 0x4931c
+.asm_faa09 ; 0x4931e
+ ld bc,(MAGIKARP << 8) | 5
+ call GivePokemon
+ jr nc, .asm_49359 ; 0x49324
+ xor a
+ ld [wWhichTrade], a
+ ld [$cd3f], a
+ ld a, $5
+ ld [$cd3e], a
+ ld hl, $cd3f
+ ld de, $d349
+ ld c, $3
+ ld a, $c
+ call Predef
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ ld hl, $d7c6
+ set 7, [hl]
+ jr .asm_49359 ; 0x4934c
+.asm_4934e ; 0x4934e
+ ld hl, MtMoonPokecenterText_49361
+ jr .asm_49356 ; 0x49351
+.asm_49353 ; 0x49353
+ ld hl, MtMoonPokecenterText_4936b
+.asm_49356 ; 0x49356
+ call PrintText
+.asm_49359 ; 0x49359
+ jp TextScriptEnd
+
+MtMoonPokecenterText_4935c: ; 4935c (12:535c)
+ TX_FAR _MtMoonPokecenterText_4935c
+ db "@"
+
+MtMoonPokecenterText_49361: ; 49361 (12:5361)
+ TX_FAR _MtMoonPokecenterText_49361
+ db "@"
+
+MtMoonPokecenterText_49366: ; 49366 (12:5366)
+ TX_FAR _MtMoonPokecenterText_49366
+ db "@"
+
+MtMoonPokecenterText_4936b: ; 4936b (12:536b)
+ TX_FAR _MtMoonPokecenterText_4936b
+ db "@"
+
+MtMoonPokecenterText5: ; 49370 (12:5370)
+ TX_FAR _MtMoonPokecenterText5
+ db "@"
+
+MtMoonPokecenterText6: ; 49375 (12:5375)
+ db $f6
diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm
new file mode 100755
index 00000000..04261346
--- /dev/null
+++ b/scripts/museum1f.asm
@@ -0,0 +1,253 @@
+Museum1FScript: ; 5c0f7 (17:40f7)
+ ld a, $1
+ ld [$cf0c], a
+ xor a
+ ld [$cc3c], a
+ ld hl, Museum1FScriptPointers
+ ld a, [W_MUSEUM1FCURSCRIPT]
+ jp CallFunctionInTable
+
+Museum1FScriptPointers: ; 5c109 (17:4109)
+ dw Museum1FScript0
+ dw Museum1FScript1
+
+Museum1FScript0: ; 5c10d (17:410d)
+ ld a, [W_YCOORD]
+ cp $4
+ ret nz
+ ld a, [W_XCOORD]
+ cp $9
+ jr z, .asm_5c120 ; 0x5c118 $6
+ ld a, [W_XCOORD]
+ cp $a
+ ret nz
+.asm_5c120
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $1
+ ld [$ff8c], a
+ jp DisplayTextID
+
+Museum1FScript1: ; 5c12a (17:412a)
+ ret
+
+Museum1FTextPointers: ; 5c12b (17:412b)
+ dw Museum1FText1
+ dw Museum1FText2
+ dw Museum1FText3
+ dw Museum1FText4
+ dw Museum1FText5
+
+Museum1FText1: ; 5c135 (17:4135)
+ db $8
+ ld a, [W_YCOORD]
+ cp $4
+ jr nz, .asm_8774b
+ ld a, [W_XCOORD]
+ cp $d
+ jp z, Museum1FScript_5c1f9
+ jr .asm_b8709
+.asm_8774b
+ cp $3
+ jr nz, .asm_d49e7
+ ld a, [W_XCOORD]
+ cp $c
+ jp z, Museum1FScript_5c1f9
+.asm_d49e7
+ ld a, [$d754]
+ bit 0, a
+ jr nz, .asm_31a16
+ ld hl, Museum1FText_5c23d
+ call PrintText
+ jp asm_d1145
+.asm_b8709
+ ld a, [$d754]
+ bit 0, a
+ jr z, .asm_3ded4
+.asm_31a16
+ ld hl, Museum1FText_5c242
+ call PrintText
+ jp asm_d1145
+.asm_3ded4
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld hl, Museum1FText_5c21f
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_de133
+ xor a
+ ld [$ff9f], a
+ ld [$ffa0], a
+ ld a, $50
+ ld [$ffa1], a
+ call HasEnoughMoney
+ jr nc, .asm_0f3e3
+ ld hl, Museum1FText_5c229
+ call PrintText
+ jp .asm_de133
+.asm_0f3e3
+ ld hl, Museum1FText_5c224
+ call PrintText
+ ld hl, $d754
+ set 0, [hl]
+ xor a
+ ld [$cd3d], a
+ ld [$cd3e], a
+ ld a, $50
+ ld [$cd3f], a
+ ld hl, $cd3f
+ ld de, $d349
+ ld c, $3
+ ld a, $c
+ call Predef
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ ld a, (SFX_02_5a - SFX_Headers_02) / 3
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ jr .asm_0b094
+.asm_de133
+ ld hl, Museum1FText_5c21a ; $421a
+ call PrintText
+ ld a, $1
+ ld [$cd38], a
+ ld a, $80
+ ld [$ccd3], a
+ call Func_3486
+ call UpdateSprites
+ jr asm_d1145
+.asm_0b094
+ ld a, $1
+ ld [W_MUSEUM1FCURSCRIPT], a
+ jr asm_d1145
+
+Museum1FScript_5c1f9: ; 5c1f9 (17:41f9)
+ ld hl, Museum1FText_5c22e
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ cp $0
+ jr nz, .asm_d1144
+ ld hl, Museum1FText_5c233
+ call PrintText
+ jr asm_d1145
+.asm_d1144
+ ld hl, Museum1FText_5c238
+ call PrintText
+asm_d1145: ; 5c217 (17:4217)
+ jp TextScriptEnd
+
+Museum1FText_5c21a: ; 5c21a (17:421a)
+ TX_FAR _Museum1FText_5c21a
+ db "@"
+
+Museum1FText_5c21f: ; 5c21f (17:421f)
+ TX_FAR _Museum1FText_5c21f
+ db "@"
+
+Museum1FText_5c224: ; 5c224 (17:4224)
+ TX_FAR _Museum1FText_5c224
+ db "@"
+
+Museum1FText_5c229: ; 5c229 (17:4229)
+ TX_FAR _Museum1FText_5c229
+ db "@"
+
+Museum1FText_5c22e: ; 5c22e (17:422e)
+ TX_FAR _Museum1FText_5c22e
+ db "@"
+
+Museum1FText_5c233: ; 5c233 (17:4233)
+ TX_FAR _Museum1FText_5c233
+ db "@"
+
+Museum1FText_5c238: ; 5c238 (17:4238)
+ TX_FAR _Museum1FText_5c238
+ db "@"
+
+Museum1FText_5c23d: ; 5c23d (17:423d)
+ TX_FAR _Museum1FText_5c23d
+ db "@"
+
+Museum1FText_5c242: ; 5c242 (17:4242)
+ TX_FAR _Museum1FText_5c242
+ db "@"
+
+Museum1FText2: ; 5c247 (17:4247)
+ db $08 ; asm
+ ld hl, Museum1FText_5c251
+ call PrintText
+ jp TextScriptEnd
+
+Museum1FText_5c251: ; 5c251 (17:4251)
+ TX_FAR _Museum1FText_5c251
+ db "@"
+
+Museum1FText3: ; 5c256 (17:4256)
+ db $08 ; asm
+ ld a, [$d754]
+ bit 1, a
+ jr nz, .asm_16599 ; 0x5c25c
+ ld hl, Museum1FText_5c28e
+ call PrintText
+ ld bc, (OLD_AMBER << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d754
+ set 1, [hl]
+ ld a, $34
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, ReceivedOldAmberText
+ jr .asm_52e0f ; 0x5c27e
+.BagFull
+ ld hl, Museum1FText_5c29e
+ jr .asm_52e0f ; 0x5c283
+.asm_16599 ; 0x5c285
+ ld hl, Museum1FText_5c299
+.asm_52e0f ; 0x5c288
+ call PrintText
+ jp TextScriptEnd
+
+Museum1FText_5c28e: ; 5c28e (17:428e)
+ TX_FAR _Museum1FText_5c28e
+ db "@"
+
+ReceivedOldAmberText: ; 5c293 (17:4293)
+ TX_FAR _ReceivedOldAmberText
+ db $0B, "@"
+
+Museum1FText_5c299: ; 5c299 (17:4299)
+ TX_FAR _Museum1FText_5c299
+ db "@"
+
+Museum1FText_5c29e: ; 5c29e (17:429e)
+ TX_FAR _Museum1FText_5c29e
+ db "@"
+
+Museum1FText4: ; 5c2a3 (17:42a3)
+ db $08 ; asm
+ ld hl, Museum1FText_5c2ad
+ call PrintText
+ jp TextScriptEnd
+
+Museum1FText_5c2ad: ; 5c2ad (17:42ad)
+ TX_FAR _Museum1FText_5c2ad
+ db "@"
+
+Museum1FText5: ; 5c2b2 (17:42b2)
+ db $08 ; asm
+ ld hl, Museum1FText_5c2bc
+ call PrintText
+ jp TextScriptEnd
+
+Museum1FText_5c2bc: ; 5c2bc (17:42bc)
+ TX_FAR _Museum1FText_5c2bc
+ db "@"
diff --git a/scripts/museum2f.asm b/scripts/museum2f.asm
new file mode 100755
index 00000000..0f8a63ec
--- /dev/null
+++ b/scripts/museum2f.asm
@@ -0,0 +1,39 @@
+Museum2FScript: ; 5c317 (17:4317)
+ jp EnableAutoTextBoxDrawing
+
+Museum2FTextPointers: ; 5c31a (17:431a)
+ dw Museum2FText1
+ dw Museum2FText2
+ dw Museum2FText3
+ dw Museum2FText4
+ dw Museum2FText5
+ dw Museum2FText6
+ dw Museum2FText7
+
+Museum2FText1: ; 5c328 (17:4328)
+ TX_FAR _Museum2FText1
+ db "@"
+
+Museum2FText2: ; 5c32d (17:432d)
+ TX_FAR _Museum2FText2
+ db "@"
+
+Museum2FText3: ; 5c332 (17:4332)
+ TX_FAR _Museum2FText3
+ db "@"
+
+Museum2FText4: ; 5c337 (17:4337)
+ TX_FAR _Museum2FText4
+ db "@"
+
+Museum2FText5: ; 5c33c (17:433c)
+ TX_FAR _Museum2FText5
+ db "@"
+
+Museum2FText6: ; 5c341 (17:4341)
+ TX_FAR _Museum2FText6
+ db "@"
+
+Museum2FText7: ; 5c346 (17:4346)
+ TX_FAR _Museum2FText7
+ db "@"
diff --git a/scripts/namerater.asm b/scripts/namerater.asm
new file mode 100755
index 00000000..6e927667
--- /dev/null
+++ b/scripts/namerater.asm
@@ -0,0 +1,107 @@
+NameRaterScript: ; 1da12 (7:5a12)
+ jp EnableAutoTextBoxDrawing
+
+NameRaterScript_1da15: ; 1da15 (7:5a15)
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ ret
+
+NameRaterScript_1da20: ; 1da20 (7:5a20)
+ ld hl, W_PARTYMON1OT
+ ld bc, $000b
+ ld a, [wWhichPokemon]
+ call AddNTimes
+ ld de, W_PLAYERNAME
+ ld c, $b
+ call .asm_1da47
+ jr c, .asm_1da52 ; 0x1da34 $1c
+ ld hl, $d177
+ ld bc, $002c
+ ld a, [wWhichPokemon]
+ call AddNTimes
+ ld de, $d359
+ ld c, $2
+.asm_1da47
+ ld a, [de]
+ cp [hl]
+ jr nz, .asm_1da52 ; 0x1da49 $7
+ inc hl
+ inc de
+ dec c
+ jr nz, .asm_1da47 ; 0x1da4e $f7
+ and a
+ ret
+.asm_1da52
+ scf
+ ret
+
+NameRaterTextPointers: ; 1da54 (7:5a54)
+ dw NameRaterText1
+
+NameRaterText1: ; 1da56 (7:5a56)
+ db $8
+ call SaveScreenTilesToBuffer2
+ ld hl, NameRaterText_1dab3
+ call NameRaterScript_1da15
+ jr nz, .asm_1daae ; 0x1da60 $4c
+ ld hl, NameRaterText_1dab8
+ call PrintText
+ xor a
+ ld [$d07d], a
+ ld [$cfcb], a
+ ld [$cc35], a
+ call DisplayPartyMenu
+ push af
+ call GBPalWhiteOutWithDelay3
+ call Func_3dbe
+ call LoadGBPal
+ pop af
+ jr c, .asm_1daae ; 0x1da80 $2c
+ call GetPartyMonName2
+ call NameRaterScript_1da20
+ ld hl, NameRaterText_1dad1
+ jr c, .asm_1daa8 ; 0x1da8b $1b
+ ld hl, NameRaterText_1dabd
+ call NameRaterScript_1da15
+ jr nz, .asm_1daae ; 0x1da93 $19
+ ld hl, NameRaterText_1dac2
+ call PrintText
+ callba Func_655c
+ jr c, .asm_1daae ; 0x1daa3 $9
+ ld hl, NameRaterText_1dac7
+.asm_1daa8
+ call PrintText
+ jp TextScriptEnd
+.asm_1daae
+ ld hl, NameRaterText_1dacc
+ jr .asm_1daa8 ; 0x1dab1 $f5
+
+NameRaterText_1dab3: ; 1dab3 (7:5ab3)
+ TX_FAR _NameRaterText_1dab3
+ db "@"
+
+NameRaterText_1dab8: ; 1dab8 (7:5ab8)
+ TX_FAR _NameRaterText_1dab8
+ db "@"
+
+NameRaterText_1dabd: ; 1dabd (7:5abd)
+ TX_FAR _NameRaterText_1dabd
+ db "@"
+
+NameRaterText_1dac2: ; 1dac2 (7:5ac2)
+ TX_FAR _NameRaterText_1dac2
+ db "@"
+
+NameRaterText_1dac7: ; 1dac7 (7:5ac7)
+ TX_FAR _NameRaterText_1dac7
+ db "@"
+
+NameRaterText_1dacc: ; 1dacc (7:5acc)
+ TX_FAR _NameRaterText_1dacc
+ db "@"
+
+NameRaterText_1dad1: ; 1dad1 (7:5ad1)
+ TX_FAR _NameRaterText_1dad1
+ db "@"
diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm
new file mode 100755
index 00000000..427b1aa5
--- /dev/null
+++ b/scripts/oakslab.asm
@@ -0,0 +1,1238 @@
+OaksLabScript: ; 1cb0e (7:4b0e)
+ ld a, [$d74b]
+ bit 6, a
+ call nz, OaksLabScript_1d076
+ ld a, $1
+ ld [$cf0c], a
+ xor a
+ ld [$cc3c], a
+ ld hl, OaksLabScriptPointers
+ ld a, [W_OAKSLABCURSCRIPT]
+ jp CallFunctionInTable
+
+OaksLabScriptPointers: ; 1cb28 (7:4b28)
+ dw OaksLabScript0
+ dw OaksLabScript1
+ dw OaksLabScript2
+ dw OaksLabScript3
+ dw OaksLabScript4
+ dw OaksLabScript5
+ dw OaksLabScript6
+ dw OaksLabScript7
+ dw OaksLabScript8
+ dw OaksLabScript9
+ dw OaksLabScript10
+ dw OaksLabScript11
+ dw OaksLabScript12
+ dw OaksLabScript13
+ dw OaksLabScript14
+ dw OaksLabScript15
+ dw OaksLabScript16
+ dw OaksLabScript17
+ dw OaksLabScript18
+
+OaksLabScript0: ; 1cb4e (7:4b4e)
+ ld a, [$d74b]
+ bit 7, a
+ ret z
+ ld a, [$cf10]
+ and a
+ ret nz
+ ld a, $31
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld hl, $d72e
+ res 4, [hl]
+
+ ld a, $1
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript1: ; 1cb6e (7:4b6e)
+ ld a, $8
+ ld [$ff8c], a
+ ld de, OakEntryMovement
+ call MoveSprite
+
+ ld a, $2
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OakEntryMovement: ; 1cb7e (7:4b7e)
+ db $40,$40,$40,$FF
+
+OaksLabScript2: ; 1cb82 (7:4b82)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $31
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $2e
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+
+ ld a, $3
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript3: ; 1cba2 (7:4ba2)
+ call Delay3
+ ld hl, $ccd3
+ ld de, PlayerEntryMovementRLE
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $1
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $5
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+
+ ld a, $4
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+PlayerEntryMovementRLE: ; 1cbcf (7:4bcf)
+ db $40, $8, $ff
+
+OaksLabScript4: ; 1cbd2 (7:4bd2)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld hl, $d747
+ set 0, [hl]
+ ld hl, $d74b
+ set 0, [hl]
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $4
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ call UpdateSprites
+ ld hl, W_FLAGS_D733
+ res 1, [hl]
+ call Func_2307
+
+ ld a, $5
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript5: ; 1cbfd (7:4bfd)
+ ld a, $fc
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $11
+ ld [$ff8c], a
+ call DisplayTextID
+ call Delay3
+ ld a, $12
+ ld [$ff8c], a
+ call DisplayTextID
+ call Delay3
+ ld a, $13
+ ld [$ff8c], a
+ call DisplayTextID
+ call Delay3
+ ld a, $14
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d74b
+ set 1, [hl]
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+
+ ld a, $6
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript6: ; 1cc36 (7:4c36)
+ ld a, [W_YCOORD]
+ cp $6
+ ret nz
+ ld a, $5
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $1
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ call UpdateSprites
+ ld a, $c
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $1
+ ld [$cd38], a
+ ld a, $40
+ ld [$ccd3], a
+ call Func_3486
+ ld a, $8
+ ld [$d528], a
+
+ ld a, $7
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript7: ; 1cc72 (7:4c72)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+
+ ld a, $6
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript8: ; 1cc80 (7:4c80)
+ ld a, [W_PLAYERSTARTER]
+ cp CHARMANDER
+ jr z, .Charmander ; 0x1cc85 $6
+ cp SQUIRTLE
+ jr z, .Squirtle ; 0x1cc89 $1d
+ jr .Bulbasaur ; 0x1cc8b $38
+.Charmander
+ ld de, .MiddleBallMovement1
+ ld a, [W_YCOORD]
+ cp $4 ; is the player standing below the table?
+ jr z, .asm_1ccf3 ; 0x1cc95 $5c
+ ld de, .MiddleBallMovement2
+ jr .asm_1ccf3 ; 0x1cc9a $57
+
+.MiddleBallMovement1
+ db 0,0,$C0,$C0,$C0,$40,$FF
+.MiddleBallMovement2
+ db 0,$C0,$C0,$C0,$FF
+
+.Squirtle
+ ld de, .RightBallMovement1
+ ld a, [W_YCOORD]
+ cp $4 ; is the player standing below the table?
+ jr z, .asm_1ccf3 ; 0x1ccb0 $41
+ ld de, .RightBallMovement2
+ jr .asm_1ccf3 ; 0x1ccb5 $3c
+
+.RightBallMovement1
+ db 0,0,$C0,$C0,$C0,$C0,$40,$FF
+.RightBallMovement2
+ db 0,$C0,$C0,$C0,$C0,$FF
+
+.Bulbasaur
+ ld de, .LeftBallMovement1
+ ld a, [W_XCOORD]
+ cp $9 ; is the player standing to the right of the table?
+ jr nz, .asm_1ccf3 ; 0x1cccd $24
+ push hl
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $4
+ ld [$ff8b], a
+ call Func_34fc
+ push hl
+ ld [hl], $4c
+ inc hl
+ inc hl
+ ld [hl], $0
+ pop hl
+ inc h
+ ld [hl], $8
+ inc hl
+ ld [hl], $9
+ ld de, .LeftBallMovement2 ; the rival is not currently onscreen, so account for that
+ pop hl
+ jr .asm_1ccf3 ; 0x1cced $4
+
+.LeftBallMovement1
+ db $00,$C0 ; not yet terminated!
+.LeftBallMovement2
+ db $C0,$FF
+
+.asm_1ccf3
+ ld a, $1
+ ld [$ff8c], a
+ call MoveSprite
+
+ ld a, $9
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript9: ; 1cd00 (7:4d00)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $fc
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $4
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $d
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, [$cd3e]
+ cp $2
+ jr nz, .asm_1cd28 ; 0x1cd22 $4
+ ld a, $2b
+ jr .asm_1cd32 ; 0x1cd26 $a
+.asm_1cd28
+ cp $3
+ jr nz, .asm_1cd30 ; 0x1cd2a $4
+ ld a, $2c
+ jr .asm_1cd32 ; 0x1cd2e $2
+.asm_1cd30
+ ld a, $2d
+.asm_1cd32
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ call Delay3
+ ld a, [$cd3d]
+ ld [W_RIVALSTARTER], a
+ ld [$cf91], a
+ ld [$d11e], a
+ call GetMonName
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $4
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $e
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d74b
+ set 2, [hl]
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+
+ ld a, $a
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript10: ; 1cd6d (7:4d6d)
+ ld a, [W_YCOORD]
+ cp $6
+ ret nz
+ ld a, $1
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $8
+ ld [$d528], a
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic ; play music
+ ld a, $f
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $1
+ ld [$ff9b], a
+ ld a, $1
+ swap a
+ ld [$ff95], a
+ ld a, $22
+ call Predef
+ ld a, [$ff95]
+ dec a
+ ld [$ff95], a
+ ld a, $20
+ call Predef
+ ld de, $cc97
+ ld a, $1
+ ld [$ff8c], a
+ call MoveSprite
+
+ ld a, $b
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript11: ; 1cdb9 (7:4db9)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+
+ ; define which team rival uses, and fight it
+ ld a, SONY1 + $C8
+ ld [W_CUROPPONENT], a
+ ld a, [W_RIVALSTARTER]
+ cp SQUIRTLE
+ jr nz, .NotSquirtle ; 0x1cdc9 $4
+ ld a, $1
+ jr .done ; 0x1cdcd $a
+.NotSquirtle
+ cp BULBASAUR
+ jr nz, .Charmander ; 0x1cdd1 $4
+ ld a, $2
+ jr .done ; 0x1cdd5 $2
+.Charmander
+ ld a, $3
+.done
+ ld [W_TRAINERNO], a
+ ld a, $1
+ ld [$cf13], a
+ call Func_32ef
+ ld hl, OaksLabText_1d3be
+ ld de, OaksLabText_1d3c3
+ call PreBattleSaveRegisters
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $8
+ ld [$d528], a
+ ld a, $c
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript12: ; 1ce03 (7:4e03)
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $8
+ ld [$d528], a
+ call UpdateSprites
+ ld a, $1
+ ld [$cf13], a
+ call Func_32f9
+ ld a, $1
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $7
+ call Predef
+ ld hl, $d74b
+ set 3, [hl]
+
+ ld a, $d
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript13: ; 1ce32 (7:4e32)
+ ld c, $14
+ call DelayFrames
+ ld a, $10
+ ld [$ff8c], a
+ call DisplayTextID
+ callba Music_RivalAlternateStart
+ ld a, $1
+ ld [$ff8c], a
+ ld de, .RivalExitMovement
+ call MoveSprite
+ ld a, [W_XCOORD]
+ cp $4
+ ; move left or right depending on where the player is standing
+ jr nz, .asm_1ce5b ; 0x1ce55 $4
+ ld a, $c0
+ jr .asm_1ce5d ; 0x1ce59 $2
+.asm_1ce5b
+ ld a, $80
+.asm_1ce5d
+ ld [$cc5b], a
+
+ ld a, $e
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+.RivalExitMovement
+ db $E0,$00,$00,$00,$00,$00,$FF
+
+OaksLabScript14: ; 1ce6d (7:4e6d)
+ ld a, [$d730]
+ bit 0, a
+ jr nz, .asm_1ce8c ; 0x1ce72 $18
+ ld a, $2a
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ call Func_2307 ; reset to map music
+ ld a, $12
+ ld [W_OAKSLABCURSCRIPT], a
+ jr .done ; 0x1ce8a $23
+.asm_1ce8c
+ ld a, [$cf0f]
+ cp $5
+ jr nz, .asm_1cea8 ; 0x1ce91 $15
+ ld a, [W_XCOORD]
+ cp $4
+ jr nz, .asm_1cea1 ; 0x1ce98 $7
+ ld a, $c
+ ld [$c109], a
+ jr .done ; 0x1ce9f $e
+.asm_1cea1
+ ld a, $8
+ ld [$c109], a
+ jr .done ; 0x1cea6 $7
+.asm_1cea8
+ cp $4
+ ret nz
+ xor a
+ ld [$c109], a
+.done
+ ret
+
+OaksLabScript15: ; 1ceb0 (7:4eb0)
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ call EnableAutoTextBoxDrawing
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld a, $15
+ ld [$ff8c], a
+ call DisplayTextID
+ call OaksLabScript_1d02b
+ ld a, $2a
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, [$cd37]
+ ld [$d157], a
+ ld b, $0
+ ld c, a
+ ld hl, $cc97
+ ld a, $40
+ call FillMemory
+ ld [hl], $ff
+ ld a, $1
+ ld [$ff8c], a
+ ld de, $cc97
+ call MoveSprite
+
+ ld a, $10
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript_1cefd ; 1cefd (7:4efd)
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $4
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ ld a, $8
+ ld [$ff8c], a
+ xor a
+ ld [$ff8d], a
+ jp Func_34a6 ; face object
+
+OaksLabScript16: ; 1cf12 (7:4f12)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ call EnableAutoTextBoxDrawing
+ call Func_2307
+ ld a, $fc
+ ld [wJoypadForbiddenButtonsMask], a
+ call OaksLabScript_1cefd
+ ld a, $16
+ ld [$ff8c], a
+ call DisplayTextID
+ call DelayFrame
+ call OaksLabScript_1cefd
+ ld a, $17
+ ld [$ff8c], a
+ call DisplayTextID
+ call DelayFrame
+ call OaksLabScript_1cefd
+ ld a, $18
+ ld [$ff8c], a
+ call DisplayTextID
+ call DelayFrame
+ ld a, $19
+ ld [$ff8c], a
+ call DisplayTextID
+ call Delay3
+ ld a, $2f
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $30
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ call OaksLabScript_1cefd
+ ld a, $1a
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $1
+ ld [$ff8c], a
+ ld a, $c
+ ld [$ff8d], a
+ call Func_34a6 ; face object
+ call Delay3
+ ld a, $1b
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d74b
+ set 5, [hl]
+ ld hl, $d74e
+ set 0, [hl]
+ ld a, $1
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $2
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, [$d157]
+ ld b, $0
+ ld c, a
+ ld hl, $cc97
+ xor a
+ call FillMemory
+ ld [hl], $ff
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld a, $1
+ ld [$ff8c], a
+ ld de, $cc97
+ call MoveSprite
+
+ ld a, $11
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript17: ; 1cfd4 (7:4fd4)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ call Func_2307
+ ld a, $2a
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld hl, $d7eb
+ set 0, [hl]
+ res 1, [hl]
+ set 7, [hl]
+ ld a, $22
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $5
+ ld [W_PALLETTOWNCURSCRIPT], a
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+
+ ld a, $12
+ ld [W_OAKSLABCURSCRIPT], a
+ ret
+
+OaksLabScript18: ; 1d009 (7:5009)
+ ret
+
+OaksLabScript_1d00a: ; 1d00a (7:500a)
+ ld hl, wBagItems
+ ld bc, $0000
+.asm_1d010
+ ld a, [hli]
+ cp $ff
+ ret z
+ cp OAKS_PARCEL
+ jr z, .GotParcel ; 0x1d016 $4
+ inc hl
+ inc c
+ jr .asm_1d010 ; 0x1d01a $f4
+.GotParcel
+ ld hl, $d31d
+ ld a, c
+ ld [wWhichPokemon], a
+ ld a, $1
+ ld [$cf96], a
+ jp RemoveItemFromInventory
+
+OaksLabScript_1d02b: ; 1d02b (7:502b)
+ ld a, $7c
+ ld [$ffeb], a
+ ld a, $8
+ ld [$ffee], a
+ ld a, [W_YCOORD]
+ cp $3
+ jr nz, .asm_1d045 ; 0x1d038 $b
+ ld a, $4
+ ld [$cd37], a
+ ld a, $30
+ ld b, $b
+ jr .asm_1d068 ; 0x1d043 $23
+.asm_1d045
+ cp $1
+ jr nz, .asm_1d054 ; 0x1d047 $b
+ ld a, $2
+ ld [$cd37], a
+ ld a, $30
+ ld b, $9
+ jr .asm_1d068 ; 0x1d052 $14
+.asm_1d054
+ ld a, $3
+ ld [$cd37], a
+ ld b, $a
+ ld a, [W_XCOORD]
+ cp $4
+ jr nz, .asm_1d066 ; 0x1d060 $4
+ ld a, $40
+ jr .asm_1d068 ; 0x1d064 $2
+.asm_1d066
+ ld a, $20
+.asm_1d068
+ ld [$ffec], a
+ ld a, b
+ ld [$ffed], a
+ ld a, $1
+ ld [$cf13], a
+ call Func_32f9
+ ret
+
+OaksLabScript_1d076: ; 1d076 (7:5076)
+ ld hl, OaksLabTextPointers + $36 ; $50b8 ; starts at OaksLabText28
+ ld a, l
+ ld [W_MAPTEXTPTR], a
+ ld a, h
+ ld [W_MAPTEXTPTR+1], a
+ ret
+
+OaksLabTextPointers: ; 1d082 (7:5082)
+ dw OaksLabText1
+ dw OaksLabText2
+ dw OaksLabText3
+ dw OaksLabText4
+ dw OaksLabText5
+ dw OaksLabText6
+ dw OaksLabText7
+ dw OaksLabText8
+ dw OaksLabText9
+ dw OaksLabText10
+ dw OaksLabText11
+ dw OaksLabText12
+ dw OaksLabText13
+ dw OaksLabText14
+ dw OaksLabText15
+ dw OaksLabText16
+ dw OaksLabText17
+ dw OaksLabText18
+ dw OaksLabText19
+ dw OaksLabText20
+ dw OaksLabText21
+ dw OaksLabText22
+ dw OaksLabText23
+ dw OaksLabText24
+ dw OaksLabText25
+ dw OaksLabText26
+ dw OaksLabText27
+ dw OaksLabText28
+ dw OaksLabText29
+ dw OaksLabText30
+ dw OaksLabText31
+ dw OaksLabText32
+ dw OaksLabText33
+ dw OaksLabText34
+ dw OaksLabText35
+ dw OaksLabText36
+ dw OaksLabText37
+ dw OaksLabText38
+
+OaksLabText28: ; 1d0ce (7:50ce)
+OaksLabText1: ; 1d0ce (7:50ce)
+ db $08 ; asm
+ ld a, [$d74b]
+ bit 0, a
+ jr nz, .asm_1d0de ; 0x1d0d4
+ ld hl, OaksLabGaryText1
+ call PrintText
+ jr .asm_1d0f0 ; 0x1d0dc
+.asm_1d0de ; 0x1d0de
+ bit 2, a
+ jr nz, .asm_1d0ea ; 0x1d0e0
+ ld hl, OaksLabText40
+ call PrintText
+ jr .asm_1d0f0 ; 0x1d0e8
+.asm_1d0ea ; 0x1d0ea
+ ld hl, OaksLabText41
+ call PrintText
+.asm_1d0f0 ; 0x1d0f0
+ jp TextScriptEnd
+
+OaksLabGaryText1: ; 1d0f3 (7:50f3)
+ TX_FAR _OaksLabGaryText1
+ db "@"
+
+OaksLabText40: ; 1d0f8 (7:50f8)
+ TX_FAR _OaksLabText40
+ db "@"
+
+OaksLabText41: ; 1d0fd (7:50fd)
+ TX_FAR _OaksLabText41
+ db "@"
+
+OaksLabText29: ; 1d102 (7:5102)
+OaksLabText2: ; 1d102 (7:5102)
+ db $8
+ ld a, SQUIRTLE
+ ld [$cd3d], a
+ ld a, $3
+ ld [$cd3e], a
+ ld a, CHARMANDER
+ ld b, $2
+ jr OaksLabScript_1d133 ; 0x1d111 $20
+
+OaksLabText30: ; 1d113 (7:5113)
+OaksLabText3: ; 1d113 (7:5113)
+ db $8
+ ld a, BULBASAUR
+ ld [$cd3d], a
+ ld a, $4
+ ld [$cd3e], a
+ ld a, SQUIRTLE
+ ld b, $3
+ jr OaksLabScript_1d133 ; 0x1d122 $f
+
+OaksLabText31: ; 1d124 (7:5124)
+OaksLabText4: ; 1d124 (7:5124)
+ db $8
+ ld a, CHARMANDER
+ ld [$cd3d], a
+ ld a, $2
+ ld [$cd3e], a
+ ld a, BULBASAUR
+ ld b, $4
+
+OaksLabScript_1d133: ; 1d133 (7:5133)
+ ld [$cf91], a
+ ld [$d11e], a
+ ld a, b
+ ld [$cf13], a
+ ld a, [$d74b]
+ bit 2, a
+ jp nz, OaksLabScript_1d22d
+ bit 1, a
+ jr nz, OaksLabScript_1d157 ; 0x1d147 $e
+ ld hl, OaksLabText39
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText39: ; 1d152 (7:5152)
+ TX_FAR _OaksLabText39
+ db "@"
+
+OaksLabScript_1d157: ; 1d157 (7:5157)
+ ld a, $5
+ ld [$ff8c], a
+ ld a, $9
+ ld [$ff8b], a
+ call Func_34fc
+ ld [hl], $0
+ ; manually fixed some disassembler issues around here
+ ld a, $1
+ ld [$FF8c], a
+ ld a, $9
+ ld [$ff8b], a
+ call Func_34fc
+ ld [hl], $c
+ ld hl, $d730
+ set 6, [hl]
+ ld a, $46
+ call Predef
+ ld hl, $d730
+ res 6, [hl]
+ call ReloadMapData
+ ld c, $a
+ call DelayFrames
+ ld a, [$cf13]
+ cp $2
+ jr z, OaksLabLookAtCharmander
+ cp $3
+ jr z, OaksLabLookAtSquirtle
+ jr OaksLabLookAtBulbasaur
+
+OaksLabLookAtCharmander ; 0x1d195
+ ld hl, OaksLabCharmanderText
+ jr OaksLabMonChoiceMenu
+OaksLabCharmanderText: ; 1d19a (7:519a)
+ TX_FAR _OaksLabCharmanderText
+ db "@"
+
+OaksLabLookAtSquirtle: ; 1d19f (7:519f)
+ ld hl, OaksLabSquirtleText
+ jr OaksLabMonChoiceMenu
+OaksLabSquirtleText: ; 1d1a4 (7:51a4)
+ TX_FAR _OaksLabSquirtleText
+ db "@"
+
+OaksLabLookAtBulbasaur: ; 1d1a9 (7:51a9)
+ ld hl, OaksLabBulbasaurText
+ jr OaksLabMonChoiceMenu
+OaksLabBulbasaurText: ; 1d1ae (7:51ae)
+ TX_FAR _OaksLabBulbasaurText
+ db "@"
+
+OaksLabMonChoiceMenu: ; 1d1b3 (7:51b3)
+ call PrintText
+ ld a, $1
+ ld [$cc3c], a
+ call YesNoChoice ; yes/no menu
+ ld a, [$cc26]
+ and a
+ jr nz, OaksLabMonChoiceEnd
+ ld a, [$cf91]
+ ld [$d717], a
+ ld [$d11e], a
+ call GetMonName
+ ld a, [$cf13]
+ cp $2
+ jr nz, asm_1d1db ; 0x1d1d5 $4
+ ld a, $2b
+ jr asm_1d1e5 ; 0x1d1d9 $a
+asm_1d1db: ; 1d1db (7:51db)
+ cp $3
+ jr nz, asm_1d1e3 ; 0x1d1dd $4
+ ld a, $2c
+ jr asm_1d1e5 ; 0x1d1e1 $2
+asm_1d1e3: ; 1d1e3 (7:51e3)
+ ld a, $2d
+asm_1d1e5: ; 1d1e5 (7:51e5)
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, OaksLabMonEnergeticText
+ call PrintText
+ ld hl, OaksLabReceivedMonText
+ call PrintText
+ xor a
+ ld [$cc49], a
+ ld a, $5
+ ld [$d127], a
+ ld a, [$cf91]
+ ld [$d11e], a
+ call AddPokemonToParty
+ ld hl, $d72e
+ set 3, [hl]
+ ld a, $fc
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $8
+ ld [W_OAKSLABCURSCRIPT], a
+OaksLabMonChoiceEnd: ; 1d21f (7:521f)
+ jp TextScriptEnd
+
+OaksLabMonEnergeticText: ; 1d222 (7:5222)
+ TX_FAR _OaksLabMonEnergeticText
+ db "@"
+
+OaksLabReceivedMonText: ; 1d227 (7:5227)
+ TX_FAR _OaksLabReceivedMonText
+ db $11, "@"
+
+OaksLabScript_1d22d: ; 1d22d (7:522d)
+ ld a, $5
+ ld [$ff8c], a
+ ld a, $9
+ ld [$ff8b], a
+ call Func_34fc
+ ld [hl], $0
+ ld hl, OaksLabLastMonText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabLastMonText: ; 1d243 (7:5243)
+ TX_FAR _OaksLabLastMonText
+ db "@"
+
+OaksLabText32: ; 1d248 (7:5248)
+OaksLabText5: ; 1d248 (7:5248)
+ db $08 ; asm
+ ld a, [$d747]
+ bit 6, a
+ jr nz, .asm_50e81 ; 0x1d24e
+ ld hl, $d2f7
+ ld b, $13
+ call CountSetBits
+ ld a, [$d11e]
+ cp $2
+ jr c, .asm_b28b0 ; 0x1d25d
+ ld a, [$d74b]
+ bit 5, a
+ jr z, .asm_b28b0 ; 0x1d264
+.asm_50e81 ; 0x1d266
+ ld hl, OaksLabText_1d31d
+ call PrintText
+ ld a, $1
+ ld [$cc3c], a
+ ld a, $56
+ call Predef
+ jp .asm_0f042
+.asm_b28b0 ; 0x1d279
+ ld b,POKE_BALL
+ call IsItemInBag
+ jr nz, .asm_17c30 ; 0x1d27e
+ ld a, [$d7eb]
+ bit 5, a
+ jr nz, .asm_f1adc ; 0x1d285
+ ld a, [$d74b]
+ bit 5, a
+ jr nz, .asm_333a2 ; 0x1d28c
+ bit 3, a
+ jr nz, .asm_76269 ; 0x1d290
+ ld a, [$d72e]
+ bit 3, a
+ jr nz, .asm_4a5e0 ; 0x1d297
+ ld hl, OaksLabText_1d2f0
+ call PrintText
+ jr .asm_0f042 ; 0x1d29f
+.asm_4a5e0 ; 0x1d2a1
+ ld hl, OaksLabText_1d2f5
+ call PrintText
+ jr .asm_0f042 ; 0x1d2a7
+.asm_76269 ; 0x1d2a9
+ ld b, OAKS_PARCEL
+ call IsItemInBag
+ jr nz, .asm_a8fcf ; 0x1d2ae
+ ld hl, OaksLabText_1d2fa
+ call PrintText
+ jr .asm_0f042 ; 0x1d2b6
+.asm_a8fcf ; 0x1d2b8
+ ld hl, OaksLabDeliverParcelText
+ call PrintText
+ call OaksLabScript_1d00a
+ ld a, $f
+ ld [W_OAKSLABCURSCRIPT], a
+ jr .asm_0f042 ; 0x1d2c6
+.asm_333a2 ; 0x1d2c8
+ ld hl, OaksLabAroundWorldText
+ call PrintText
+ jr .asm_0f042 ; 0x1d2ce
+.asm_f1adc ; 0x1d2d0
+ ld hl, $d74b
+ bit 4, [hl]
+ set 4, [hl]
+ jr nz, .asm_17c30 ; 0x1d2d7
+ ld bc, (POKE_BALL << 8) | 5
+ call GiveItem
+ ld hl, OaksLabGivePokeballsText
+ call PrintText
+ jr .asm_0f042 ; 0x1d2e5
+.asm_17c30 ; 0x1d2e7
+ ld hl, OaksLabPleaseVisitText
+ call PrintText
+.asm_0f042 ; 0x1d2ed
+ jp TextScriptEnd
+
+OaksLabText_1d2f0: ; 1d2f0 (7:52f0)
+ TX_FAR _OaksLabText_1d2f0
+ db "@"
+
+OaksLabText_1d2f5: ; 1d2f5 (7:52f5)
+ TX_FAR _OaksLabText_1d2f5
+ db "@"
+
+OaksLabText_1d2fa: ; 1d2fa (7:52fa)
+ TX_FAR _OaksLabText_1d2fa
+ db "@"
+
+OaksLabDeliverParcelText: ; 1d2ff (7:52ff)
+ TX_FAR _OaksLabDeliverParcelText1
+ db $11
+ TX_FAR _OaksLabDeliverParcelText2
+ db "@"
+
+OaksLabAroundWorldText: ; 1d309 (7:5309)
+ TX_FAR _OaksLabAroundWorldText
+ db "@"
+
+OaksLabGivePokeballsText: ; 1d30e (7:530e)
+ TX_FAR _OaksLabGivePokeballsText1
+ db $11
+ TX_FAR _OaksLabGivePokeballsText2
+ db "@"
+
+OaksLabPleaseVisitText: ; 1d318 (7:5318)
+ TX_FAR _OaksLabPleaseVisitText
+ db "@"
+
+OaksLabText_1d31d: ; 1d31d (7:531d)
+ TX_FAR _OaksLabText_1d31d
+ db "@"
+
+OaksLabText34: ; 1d322 (7:5322)
+OaksLabText33: ; 1d322 (7:5322)
+OaksLabText7: ; 1d322 (7:5322)
+OaksLabText6: ; 1d322 (7:5322)
+ db $08 ; asm
+ ld hl, OaksLabText_1d32c
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText_1d32c: ; 1d32c (7:532c)
+ TX_FAR _OaksLabText_1d32c
+ db "@"
+
+OaksLabText35: ; 1d331 (7:5331)
+OaksLabText8: ; 1d331 (7:5331)
+ TX_FAR _OaksLabText8
+ db "@"
+
+OaksLabText36: ; 1d336 (7:5336)
+OaksLabText9: ; 1d336 (7:5336)
+ db $08 ; asm
+ ld hl, OaksLabText_1d340
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText_1d340: ; 1d340 (7:5340)
+ TX_FAR _OaksLabText_1d340
+ db "@"
+
+OaksLabText17: ; 1d345 (7:5345)
+ db $8
+ ld hl, OaksLabRivalWaitingText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalWaitingText: ; 1d34f (7:534f)
+ TX_FAR _OaksLabRivalWaitingText
+ db "@"
+
+OaksLabText18: ; 1d354 (7:5354)
+ db $8
+ ld hl, OaksLabChooseMonText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabChooseMonText: ; 1d35e (7:535e)
+ TX_FAR _OaksLabChooseMonText
+ db "@"
+
+OaksLabText19: ; 1d363 (7:5363)
+ db $8
+ ld hl, OaksLabRivalInterjectionText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalInterjectionText: ; 1d36d (7:536d)
+ TX_FAR _OaksLabRivalInterjectionText
+ db "@"
+
+OaksLabText20: ; 1d372 (7:5372)
+ db $8
+ ld hl, OaksLabBePatientText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabBePatientText: ; 1d37c (7:537c)
+ TX_FAR _OaksLabBePatientText
+ db "@"
+
+OaksLabText12: ; 1d381 (7:5381)
+ db $8
+ ld hl, OaksLabLeavingText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabLeavingText: ; 1d38b (7:538b)
+ TX_FAR _OaksLabLeavingText
+ db "@"
+
+OaksLabText13: ; 1d390 (7:5390)
+ db $8
+ ld hl, OaksLabRivalPickingMonText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalPickingMonText: ; 1d39a (7:539a)
+ TX_FAR _OaksLabRivalPickingMonText
+ db "@"
+
+OaksLabText14: ; 1d39f (7:539f)
+ db $8
+ ld hl, OaksLabRivalReceivedMonText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalReceivedMonText: ; 1d3a9 (7:53a9)
+ TX_FAR _OaksLabRivalReceivedMonText
+ db $11, "@"
+
+OaksLabText15: ; 1d3af (7:53af)
+ db $8
+ ld hl, OaksLabRivalChallengeText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalChallengeText: ; 1d3b9 (7:53b9)
+ TX_FAR _OaksLabRivalChallengeText
+ db "@"
+
+OaksLabText_1d3be: ; 1d3be (7:53be)
+ TX_FAR _OaksLabText_1d3be
+ db "@"
+
+OaksLabText_1d3c3: ; 1d3c3 (7:53c3)
+ TX_FAR _OaksLabText_1d3c3
+ db "@"
+
+OaksLabText16: ; 1d3c8 (7:53c8)
+ db $8
+ ld hl, OaksLabRivalToughenUpText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalToughenUpText: ; 1d3d2 (7:53d2)
+ TX_FAR _OaksLabRivalToughenUpText
+ db "@"
+
+OaksLabText21: ; 1d3d7 (7:53d7)
+ TX_FAR _OaksLabText21
+ db "@"
+
+OaksLabText22: ; 1d3dc (7:53dc)
+ TX_FAR _OaksLabText22
+ db "@"
+
+OaksLabText23: ; 1d3e1 (7:53e1)
+ TX_FAR _OaksLabText23
+ db "@"
+
+OaksLabText24: ; 1d3e6 (7:53e6)
+ TX_FAR _OaksLabText24
+ db "@"
+
+OaksLabText25: ; 1d3eb (7:53eb)
+ TX_FAR _OaksLabText25
+ db $11, "@"
+
+OaksLabText26: ; 1d3f1 (7:53f1)
+ TX_FAR _OaksLabText26
+ db "@"
+
+OaksLabText27: ; 1d3f6 (7:53f6)
+ TX_FAR _OaksLabText27
+ db "@"
+
+OaksLabText38: ; 1d3fb (7:53fb)
+OaksLabText37: ; 1d3fb (7:53fb)
+OaksLabText11: ; 1d3fb (7:53fb)
+OaksLabText10: ; 1d3fb (7:53fb)
+ db $08 ; asm
+ ld hl, OaksLabText_1d405
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText_1d405: ; 1d405 (7:5405)
+ TX_FAR _OaksLabText_1d405
+ db "@"
diff --git a/scripts/pallettown.asm b/scripts/pallettown.asm
new file mode 100755
index 00000000..e1b51cf6
--- /dev/null
+++ b/scripts/pallettown.asm
@@ -0,0 +1,228 @@
+PalletTownScript: ; 18e5b (6:4e5b)
+ ld a,[$D74B]
+ bit 4,a
+ jr z,.next
+ ld hl,$D747
+ set 6,[hl]
+.next
+ call EnableAutoTextBoxDrawing
+ ld hl,PalletTownScriptPointers
+ ld a,[W_PALLETTOWNCURSCRIPT]
+ jp CallFunctionInTable
+
+PalletTownScriptPointers: ; 18e73 (6:4e73)
+ dw PalletTownScript0
+ dw PalletTownScript1
+ dw PalletTownScript2
+ dw PalletTownScript3
+ dw PalletTownScript4
+ dw PalletTownScript5
+ dw PalletTownScript6
+
+PalletTownScript0: ; 18e81 (6:4e81)
+ ld a,[$D747]
+ bit 0,a
+ ret nz
+ ld a,[W_YCOORD]
+ cp 1 ; is player near north exit?
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS],a
+ ld a,4
+ ld [$D528],a
+ ld a,$FF
+ call PlaySound ; stop music
+ ld a, BANK(Music_MeetProfOak)
+ ld c,a ; song bank
+ ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music
+ call PlayMusic ; plays music
+ ld a,$FC
+ ld [wJoypadForbiddenButtonsMask],a
+ ld hl,$D74B
+ set 7,[hl]
+
+ ; trigger the next script
+ ld a,1
+ ld [W_PALLETTOWNCURSCRIPT],a
+ ret
+
+PalletTownScript1: ; 18eb2 (6:4eb2)
+ xor a
+ ld [$CF0D],a
+ ld a,1
+ ld [$FF8C],a
+ call DisplayTextID
+ ld a,$FF
+ ld [wJoypadForbiddenButtonsMask],a
+ ld a,0
+ ld [$CC4D],a
+ ld a,$15
+ call Predef
+
+ ; trigger the next script
+ ld a,2
+ ld [W_PALLETTOWNCURSCRIPT],a
+ ret
+
+PalletTownScript2: ; 18ed2 (6:4ed2)
+ ld a,1
+ ld [$FF8C],a
+ ld a,4
+ ld [$FF8D],a
+ call Func_34a6
+ call Delay3
+ ld a,1
+ ld [W_YCOORD],a
+ ld a,1
+ ld [$FF9B],a
+ ld a,1
+ swap a
+ ld [$FF95],a
+ ld a,$22
+ call Predef
+ ld hl,$FF95
+ dec [hl]
+ ld a,$20
+ call Predef ; load Oak’s movement into $CC97
+ ld de,$CC97
+ ld a,1 ; oak
+ ld [$FF8C],a
+ call MoveSprite
+ ld a,$FF
+ ld [wJoypadForbiddenButtonsMask],a
+
+ ; trigger the next script
+ ld a,3
+ ld [W_PALLETTOWNCURSCRIPT],a
+ ret
+
+PalletTownScript3: ; 18f12 (6:4f12)
+ ld a,[$D730]
+ bit 0,a
+ ret nz
+ xor a
+ ld [$C109],a
+ ld a,1
+ ld [$CF0D],a
+ ld a,$FC
+ ld [wJoypadForbiddenButtonsMask],a
+ ld a,1
+ ld [$FF8C],a
+ call DisplayTextID
+ ld a,$FF
+ ld [wJoypadForbiddenButtonsMask],a
+ ld a,1
+ ld [$CF13],a
+ xor a
+ ld [$CF10],a
+ ld a,1
+ ld [$CC57],a
+ ld a,[H_LOADEDROMBANK]
+ ld [$CC58],a
+
+ ; trigger the next script
+ ld a,4
+ ld [W_PALLETTOWNCURSCRIPT],a
+ ret
+
+PalletTownScript4: ; 18f4b (6:4f4b)
+ ld a,[$CC57]
+ and a
+ ret nz
+
+ ; trigger the next script
+ ld a,5
+ ld [W_PALLETTOWNCURSCRIPT],a
+ ret
+
+PalletTownScript5: ; 18f56 (6:4f56)
+ ld a,[$D74A]
+ bit 2,a
+ jr nz,.next
+ and 3
+ cp 3
+ jr nz,.next
+ ld hl,$D74A
+ set 2,[hl]
+ ld a,$27
+ ld [$CC4D],a
+ ld a,$11
+ call Predef
+ ld a,$28
+ ld [$CC4D],a
+ ld a,$15
+ jp Predef
+.next
+ ld a,[$D74B]
+ bit 4,a
+ ret z
+ ld hl,$D74B
+ set 6,[hl]
+PalletTownScript6: ; 18f87 (6:4f87)
+ ret
+
+PalletTownTextPointers: ; 18f88 (6:4f88)
+ dw PalletTownText1
+ dw PalletTownText2
+ dw PalletTownText3
+ dw PalletTownText4
+ dw PalletTownText5
+ dw PalletTownText6
+ dw PalletTownText7
+
+PalletTownText1: ; 18f96 (6:4f96)
+ db 8
+ ld a,[$CF0D]
+ and a
+ jr nz,.next
+ ld a,1
+ ld [$CC3C],a
+ ld hl,OakAppearsText
+ jr .done
+.next
+ ld hl,OakWalksUpText
+.done
+ call PrintText
+ jp TextScriptEnd
+
+OakAppearsText: ; 18fb0 (6:4fb0)
+ TX_FAR _OakAppearsText
+ db 8
+ ld c,10
+ call DelayFrames
+ xor a
+ ld [$CD4F],a
+ ld [$CD50],a
+ ld a,$4C
+ call Predef ; display ! over head
+ ld a,4
+ ld [$D528],a
+ jp TextScriptEnd
+
+OakWalksUpText: ; 18fce (6:4fce)
+ TX_FAR _OakWalksUpText
+ db "@"
+
+PalletTownText2: ; 0x18fd3 girl
+ TX_FAR _PalletTownText2
+ db "@"
+
+PalletTownText3: ; 0x18fd8 fat man
+ TX_FAR _PalletTownText3
+ db "@"
+
+PalletTownText4: ; 0x18fdd sign by lab
+ TX_FAR _PalletTownText4
+ db "@"
+
+PalletTownText5: ; 0x18fe2 sign by fence
+ TX_FAR _PalletTownText5
+ db "@"
+
+PalletTownText6: ; 0x18fe7 sign by Red’s house
+ TX_FAR _PalletTownText6
+ db "@"
+
+PalletTownText7: ; 0x18fec sign by Blue’s house
+ TX_FAR _PalletTownText7
+ db "@"
diff --git a/scripts/pewtercity.asm b/scripts/pewtercity.asm
new file mode 100755
index 00000000..e738dedf
--- /dev/null
+++ b/scripts/pewtercity.asm
@@ -0,0 +1,321 @@
+PewterCityScript: ; 19237 (6:5237)
+ call EnableAutoTextBoxDrawing
+ ld hl, PewterCityScriptPointers
+ ld a, [W_PEWTERCITYCURSCRIPT]
+ jp CallFunctionInTable
+
+PewterCityScriptPointers: ; 19243 (6:5243)
+ dw PewterCityScript0
+ dw PewterCityScript1
+ dw PewterCityScript2
+ dw PewterCityScript3
+ dw PewterCityScript4
+ dw PewterCityScript5
+ dw PewterCityScript6
+
+PewterCityScript0: ; 19251 (6:5251)
+ xor a
+ ld [W_MUSEUM1FCURSCRIPT], a
+ ld hl, $d754
+ res 0, [hl]
+ call PewterCityScript_1925e
+ ret
+
+PewterCityScript_1925e: ; 1925e (6:525e)
+ ld a, [$d755]
+ bit 7, a
+ ret nz
+ ld hl, CoordsData_19277
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $5
+ ld [$ff8c], a
+ jp DisplayTextID
+
+CoordsData_19277: ; 19277 (6:5277)
+ db $11,$23
+ db $11,$24
+ db $12,$25
+ db $13,$25
+ db $ff
+
+PewterCityScript1: ; 19280 (6:5280)
+ ld a, [$cc57]
+ and a
+ ret nz
+ ld a, $3
+ ld [$ff8c], a
+ ld a, $4
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $34
+ ld [$ff8d], a
+ call Func_34b9
+ call Func_2307
+ ld hl, wFlags_0xcd60
+ set 4, [hl]
+ ld a, $d
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $3c
+ ld [$ffeb], a
+ ld a, $30
+ ld [$ffec], a
+ ld a, $c
+ ld [$ffed], a
+ ld a, $11
+ ld [$ffee], a
+ ld a, $3
+ ld [$cf13], a
+ call Func_32f9
+ ld a, $3
+ ld [$ff8c], a
+ ld de, MovementData_PewterMuseumGuyExit ; $52ce
+ call MoveSprite
+ ld a, $2
+ ld [W_PEWTERCITYCURSCRIPT], a
+ ret
+
+MovementData_PewterMuseumGuyExit: ; 192ce (6:52ce)
+ db $00,$00,$00,$00,$FF
+
+PewterCityScript2: ; 192d3 (6:52d3)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $3
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $3
+ ld [W_PEWTERCITYCURSCRIPT], a
+ ret
+
+PewterCityScript3: ; 192e9 (6:52e9)
+ ld a, $3
+ ld [$cf13], a
+ call Func_32fe
+ ld a, $3
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_PEWTERCITYCURSCRIPT], a
+ ret
+
+PewterCityScript4: ; 19305 (6:5305)
+ ld a, [$cc57]
+ and a
+ ret nz
+ ld a, $5
+ ld [$ff8c], a
+ ld a, $8
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $18
+ ld [$ff8d], a
+ call Func_34b9
+ call Func_2307
+ ld hl, wFlags_0xcd60
+ set 4, [hl]
+ ld a, $e
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $3c
+ ld [$ffeb], a
+ ld a, $40
+ ld [$ffec], a
+ ld a, $16
+ ld [$ffed], a
+ ld a, $10
+ ld [$ffee], a
+ ld a, $5
+ ld [$cf13], a
+ call Func_32f9
+ ld a, $5
+ ld [$ff8c], a
+ ld de, MovementData_PewterGymGuyExit
+ call MoveSprite
+ ld a, $5
+ ld [W_PEWTERCITYCURSCRIPT], a
+ ret
+
+MovementData_PewterGymGuyExit: ; 19353 (6:5353)
+ db $C0,$C0,$C0,$C0,$C0,$FF
+
+PewterCityScript5: ; 19359 (6:5359)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $4
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $6
+ ld [W_PEWTERCITYCURSCRIPT], a
+ ret
+
+PewterCityScript6: ; 1936f (6:536f)
+ ld a, $5
+ ld [$cf13], a
+ call Func_32fe
+ ld a, $4
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_PEWTERCITYCURSCRIPT], a
+ ret
+
+PewterCityTextPointers: ; 1938b (6:538b)
+ dw PewterCityText1
+ dw PewterCityText2
+ dw PewterCityText3
+ dw PewterCityText4
+ dw PewterCityText5
+ dw PewterCityText6
+ dw PewterCityText7
+ dw MartSignText
+ dw PokeCenterSignText
+ dw PewterCityText10
+ dw PewterCityText11
+ dw PewterCityText12
+ dw PewterCityText13
+ dw PewterCityText14
+
+PewterCityText1: ; 193a7 (6:53a7)
+ TX_FAR _PewterCityText1
+ db "@"
+
+PewterCityText2: ; 193ac (6:53ac)
+ TX_FAR _PewterCityText2
+ db "@"
+
+PewterCityText3: ; 193b1 (6:53b1)
+ db $08 ; asm
+ ld hl, PewterCityText_193f1
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_f46a9 ; 0x193bf
+ ld hl, PewterCityText_193f6
+ call PrintText
+ jr .asm_ac429 ; 0x193c7
+.asm_f46a9 ; 0x193c9
+ ld hl, PewterCityText_193fb
+ call PrintText
+ xor a
+ ldh [$b3], a
+ ldh [$b4], a
+ ld [$cf10], a
+ ld a, $2
+ ld [$cc57], a
+ ldh a, [$b8]
+ ld [$cc58], a
+ ld a, $3
+ ld [$cf13], a
+ call Func_32f4
+ ld a, $1
+ ld [W_PEWTERCITYCURSCRIPT], a
+.asm_ac429 ; 0x193ee
+ jp TextScriptEnd
+
+PewterCityText_193f1: ; 193f1 (6:53f1)
+ TX_FAR _PewterCityText_193f1
+ db "@"
+
+PewterCityText_193f6: ; 193f6 (6:53f6)
+ TX_FAR _PewterCityText_193f6
+ db "@"
+
+PewterCityText_193fb: ; 193fb (6:53fb)
+ TX_FAR _PewterCityText_193fb
+ db "@"
+
+PewterCityText13: ; 19400 (6:5400)
+ TX_FAR _PewterCityText13
+ db "@"
+
+PewterCityText4: ; 19405 (6:5405)
+ db $8
+ ld hl, PewterCityText_19427
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ cp $0
+ jr nz, .asm_e4603
+ ld hl, PewterCityText_1942c
+ call PrintText
+ jr .asm_e4604 ; 0x1941c $6
+.asm_e4603
+ ld hl, PewterCityText_19431
+ call PrintText
+.asm_e4604 ; 0x19424
+ jp TextScriptEnd
+
+PewterCityText_19427: ; 19427 (6:5427)
+ TX_FAR _PewterCityText_19427
+ db "@"
+
+PewterCityText_1942c: ; 1942c (6:542c)
+ TX_FAR _PewterCityText_1942c
+ db "@"
+
+PewterCityText_19431: ; 19431 (6:5431)
+ TX_FAR _PewterCityText_19431
+ db "@"
+
+PewterCityText5: ; 19436 (6:5436)
+ db $08 ; asm
+ ld hl, PewterCityText_1945d
+ call PrintText
+ xor a
+ ldh [$b4], a
+ ld [$cf10], a
+ ld a, $3
+ ld [$cc57], a
+ ldh a, [$b8]
+ ld [$cc58], a
+ ld a, $5
+ ld [$cf13], a
+ call Func_32f4
+ ld a, $4
+ ld [W_PEWTERCITYCURSCRIPT], a
+ jp TextScriptEnd
+
+PewterCityText_1945d: ; 1945d (6:545d)
+ TX_FAR _PewterCityText_1945d
+ db "@"
+
+PewterCityText14: ; 19462 (6:5462)
+
+PewterCityText_19462: ; 19462 (6:5462)
+ TX_FAR _PewterCityText_19462
+ db "@"
+
+PewterCityText6: ; 19467 (6:5467)
+ TX_FAR _PewterCityText6
+ db "@"
+
+PewterCityText7: ; 1946c (6:546c)
+ TX_FAR _PewterCityText7
+ db "@"
+
+PewterCityText10: ; 19471 (6:5471)
+ TX_FAR _PewterCityText10
+ db "@"
+
+PewterCityText11: ; 19476 (6:5476)
+ TX_FAR _PewterCityText11
+ db "@"
+
+PewterCityText12: ; 1947b (6:547b)
+ TX_FAR _PewterCityText12
+ db "@"
diff --git a/scripts/pewtergym.asm b/scripts/pewtergym.asm
new file mode 100755
index 00000000..2ba001d4
--- /dev/null
+++ b/scripts/pewtergym.asm
@@ -0,0 +1,237 @@
+PewterGymScript: ; 5c387 (17:4387)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, PewterGymScript_5c3a4
+ call EnableAutoTextBoxDrawing
+ ld hl, PewterGymTrainerHeaders
+ ld de, PewterGymScriptPointers
+ ld a, [W_PEWTERGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_PEWTERGYMCURSCRIPT], a
+ ret
+
+PewterGymScript_5c3a4: ; 5c3a4 (17:43a4)
+ ld hl, Gym1CityName ; $43ad
+ ld de, Gym1LeaderName ; $43b9
+ jp LoadGymLeaderAndCityName
+
+Gym1CityName: ; 5c3ad (17:43ad)
+ db "PEWTER CITY@"
+
+Gym1LeaderName: ; 5c3b9 (17:43b9)
+ db "BROCK@"
+
+PewterGymScript_5c3bf: ; 5c3bf (17:43bf)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_PEWTERGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PewterGymScriptPointers: ; 5c3ca (17:43ca)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw PewterGymScript3
+
+PewterGymScript3: ; 5c3d2 (17:43d2)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, PewterGymScript_5c3bf
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+PewterGymScript_5c3df: ; 5c3df (17:43df)
+ ld a, $4
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d755
+ set 7, [hl]
+ ld bc, (TM_34 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $5
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d755
+ set 6, [hl]
+ jr .asm_5c408
+.BagFull
+ ld a, $6
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_5c408
+ ld hl, W_OBTAINEDBADGES
+ set 0, [hl]
+ ld hl, $d72a
+ set 0, [hl]
+
+ ld a, $4
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $22
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+
+ ld hl, $d7eb
+ res 0, [hl]
+ res 7, [hl]
+
+ ; deactivate gym trainers
+ ld hl, $d755
+ set 2, [hl]
+
+ jp PewterGymScript_5c3bf
+
+PewterGymTextPointers: ; 5c435 (17:4435)
+ dw PewterGymText1
+ dw PewterGymText2
+ dw PewterGymText3
+ dw PewterGymText4
+ dw PewterGymText5
+ dw PewterGymText6
+
+PewterGymTrainerHeaders: ; 5c441 (17:4441)
+PewterGymTrainerHeader0: ; 5c441 (17:4441)
+ db $2 ; flag's bit
+ db ($5 << 4) ; trainer's view range
+ dw $d755 ; flag's byte
+ dw PewterGymBattleText1 ; 0x44d0 TextBeforeBattle
+ dw PewterGymAfterBattleText1 ; 0x44da TextAfterBattle
+ dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle
+ dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle
+
+ db $ff
+
+PewterGymText1: ; 5c44e (17:444e)
+ db $08 ; asm
+ ld a, [$d755]
+ bit 7, a
+ jr z, .asm_4a735 ; 0x5c454
+ bit 6, a
+ jr nz, .asm_ff7d0 ; 0x5c458
+ call z, PewterGymScript_5c3df
+ call DisableWaitingAfterTextDisplay
+ jr .asm_e0ffb ; 0x5c460
+.asm_ff7d0 ; 0x5c462
+ ld hl, PewterGymText_5c4a3
+ call PrintText
+ jr .asm_e0ffb ; 0x5c468
+.asm_4a735 ; 0x5c46a
+ ld hl, PewterGymText_5c49e
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, PewterGymText_5c4bc
+ ld de, PewterGymText_5c4bc
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $1
+ ld [$d05c], a
+ xor a
+ ldh [$b4], a
+ ld a, $3
+ ld [W_PEWTERGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+.asm_e0ffb ; 0x5c49b
+ jp TextScriptEnd
+
+PewterGymText_5c49e: ; 5c49e (17:449e)
+ TX_FAR _PewterGymText_5c49e
+ db "@"
+
+PewterGymText_5c4a3: ; 5c4a3 (17:44a3)
+ TX_FAR _PewterGymText_5c4a3
+ db "@"
+
+PewterGymText4: ; 5c4a8 (17:44a8)
+ TX_FAR _TM34PreReceiveText
+ db "@"
+
+PewterGymText5: ; 5c4ad (17:44ad)
+ TX_FAR _ReceivedTM34Text
+ db $0B
+ TX_FAR _TM34ExplanationText
+ db "@"
+
+PewterGymText6: ; 5c4b7 (17:44b7)
+ TX_FAR _TM34NoRoomText
+ db "@"
+
+PewterGymText_5c4bc: ; 5c4bc (17:44bc)
+ TX_FAR _PewterGymText_5c4bc
+ db $0B
+ TX_FAR _PewterGymText_5c4c1
+ db "@"
+
+PewterGymText2: ; 5c4c6 (17:44c6)
+ db $08 ; asm
+ ld hl, PewterGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PewterGymBattleText1: ; 5c4d0 (17:44d0)
+ TX_FAR _PewterGymBattleText1
+ db "@"
+
+PewterGymEndBattleText1: ; 5c4d5 (17:44d5)
+ TX_FAR _PewterGymEndBattleText1
+ db "@"
+
+PewterGymAfterBattleText1: ; 5c4da (17:44da)
+ TX_FAR _PewterGymAfterBattleText1
+ db "@"
+
+PewterGymText3: ; 5c4df (17:44df)
+ db $08 ; asm
+ ld a, [$d72a]
+ bit 0, a
+ jr nz, .asm_71369 ; 0x5c4e5
+ ld hl, PewterGymText_5c515
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_6123a ; 0x5c4f4
+ ld hl, PewterGymText_5c51a
+ call PrintText
+ jr .asm_d1578 ; 0x5c4fc
+.asm_6123a ; 0x5c4fe
+ ld hl, PewterGymText_5c524
+ call PrintText
+.asm_d1578 ; 0x5c504
+ ld hl, PewterGymText_5c51f
+ call PrintText
+ jr .asm_07013 ; 0x5c50a
+.asm_71369 ; 0x5c50c
+ ld hl, PewterGymText_5c529
+ call PrintText
+.asm_07013 ; 0x5c512
+ jp TextScriptEnd
+
+PewterGymText_5c515: ; 5c515 (17:4515)
+ TX_FAR _PewterGymText_5c515
+ db "@"
+
+PewterGymText_5c51a: ; 5c51a (17:451a)
+ TX_FAR _PewterGymText_5c51a
+ db "@"
+
+PewterGymText_5c51f: ; 5c51f (17:451f)
+ TX_FAR _PewterGymText_5c51f
+ db "@"
+
+PewterGymText_5c524: ; 5c524 (17:4524)
+ TX_FAR _PewterGymText_5c524
+ db "@"
+
+PewterGymText_5c529: ; 5c529 (17:4529)
+ TX_FAR _PewterGymText_5c529
+ db "@"
diff --git a/scripts/pewterhouse1.asm b/scripts/pewterhouse1.asm
new file mode 100755
index 00000000..05d27a14
--- /dev/null
+++ b/scripts/pewterhouse1.asm
@@ -0,0 +1,23 @@
+PewterHouse1Script: ; 1d5f3 (7:55f3)
+ jp EnableAutoTextBoxDrawing
+
+PewterHouse1TextPointers: ; 1d5f6 (7:55f6)
+ dw PewterHouse1Text1
+ dw PewterHouse1Text2
+ dw PewterHouse1Text3
+
+PewterHouse1Text1: ; 1d5fc (7:55fc)
+ TX_FAR _PewterHouse1Text1
+ db $08 ; asm
+ ld a, NIDORAN_M
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+PewterHouse1Text2: ; 1d60c (7:560c)
+ TX_FAR _PewterHouse1Text2
+ db "@"
+
+PewterHouse1Text3: ; 1d611 (7:5611)
+ TX_FAR _PewterHouse1Text3
+ db "@"
diff --git a/scripts/pewterhouse2.asm b/scripts/pewterhouse2.asm
new file mode 100755
index 00000000..92e40de2
--- /dev/null
+++ b/scripts/pewterhouse2.asm
@@ -0,0 +1,14 @@
+PewterHouse2Script: ; 1d648 (7:5648)
+ jp EnableAutoTextBoxDrawing
+
+PewterHouse2TextPointers: ; 1d64b (7:564b)
+ dw PewterHouse2Text1
+ dw PewterHouse2Text2
+
+PewterHouse2Text1: ; 1d64f (7:564f)
+ TX_FAR _PewterHouse2Text1
+ db "@"
+
+PewterHouse2Text2: ; 1d654 (7:5654)
+ TX_FAR _PewterHouse2Text2
+ db "@"
diff --git a/scripts/pewtermart.asm b/scripts/pewtermart.asm
new file mode 100755
index 00000000..3abe2a93
--- /dev/null
+++ b/scripts/pewtermart.asm
@@ -0,0 +1,30 @@
+PewterMartScript: ; 74cad (1d:4cad)
+ call EnableAutoTextBoxDrawing
+ ld a, $1
+ ld [$cf0c], a
+ ret
+
+PewterMartTextPointers: ; 74cb6 (1d:4cb6)
+ dw PewterMartText1
+ dw PewterMartText2
+ dw PewterMartText3
+
+PewterMartText2: ; 74cbc (1d:4cbc)
+ db $08 ; asm
+ ld hl, PewterMartText_74cc6
+ call PrintText
+ jp TextScriptEnd
+
+PewterMartText_74cc6: ; 74cc6 (1d:4cc6)
+ TX_FAR _PewterMartText_74cc6
+ db "@"
+
+PewterMartText3: ; 74ccb (1d:4ccb)
+ db $08 ; asm
+ ld hl, PewterMartText_74cd5
+ call PrintText
+ jp TextScriptEnd
+
+PewterMartText_74cd5: ; 74cd5 (1d:4cd5)
+ TX_FAR _PewterMartText_74cd5
+ db "@"
diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm
new file mode 100755
index 00000000..4b97a01d
--- /dev/null
+++ b/scripts/pewterpokecenter.asm
@@ -0,0 +1,75 @@
+PewterPokecenterScript: ; 5c587 (17:4587)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+PewterPokecenterTextPointers: ; 5c58d (17:458d)
+ dw PewterPokecenterText1
+ dw PewterPokecenterText2
+ dw PewterPokecenterText3
+ dw PewterPokecenterText4
+
+PewterPokecenterText1: ; 5c595 (17:4595)
+ db $ff
+
+PewterPokecenterText2: ; 5c596 (17:4596)
+ TX_FAR _PewterPokecenterText1
+ db "@"
+
+PewterPokecenterText3: ; 5c59b (17:459b)
+ db $8
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, PewterPokecenterText5
+ call PrintText
+ ld a, $ff
+ call PlaySound
+ ld c, $20
+ call DelayFrames
+ ld hl, Unknown_5c608 ; $4608
+ ld de, $cd3f
+ ld bc, $0004
+ call CopyData
+ ld a, [$c132]
+ ld hl, $cd3f
+.asm_5c5c3
+ cp [hl]
+ inc hl
+ jr nz, .asm_5c5c3 ; 0x5c5c5 $fc
+ dec hl
+ push hl
+ ld c, BANK(Music_JigglypuffSong)
+ ld a, MUSIC_JIGGLYPUFF_SONG
+ call PlayMusic
+ pop hl
+.asm_5c5d1
+ ld a, [hl]
+ ld [$c132], a
+ push hl
+ ld hl, $cd3f
+ ld de, $cd3e
+ ld bc, $0004
+ call CopyData
+ ld a, [$cd3e]
+ ld [$cd42], a
+ pop hl
+ ld c, $18
+ call DelayFrames
+ ld a, [$c026]
+ ld b, a
+ ld a, [$c027]
+ or b
+ jr nz, .asm_5c5d1 ; 0x5c5f6 $d9
+ ld c, $30
+ call DelayFrames
+ call Func_2307
+ jp TextScriptEnd
+
+PewterPokecenterText5: ; 5c603 (17:4603)
+ TX_FAR _PewterPokecenterText5
+ db "@"
+
+Unknown_5c608: ; 5c608 (17:4608)
+ db $30, $38, $34, $3c
+
+PewterPokecenterText4: ; 5c60c (17:460c)
+ db $f6
diff --git a/scripts/pokemontower1.asm b/scripts/pokemontower1.asm
new file mode 100755
index 00000000..4887e740
--- /dev/null
+++ b/scripts/pokemontower1.asm
@@ -0,0 +1,29 @@
+PokemonTower1Script: ; 6042c (18:442c)
+ jp EnableAutoTextBoxDrawing
+
+PokemonTower1TextPointers: ; 6042f (18:442f)
+ dw PokemonTower1Text1
+ dw PokemonTower1Text2
+ dw PokemonTower1Text3
+ dw PokemonTower1Text4
+ dw PokemonTower1Text5
+
+PokemonTower1Text1: ; 60439 (18:4439)
+ TX_FAR _PokemonTower1Text1
+ db "@"
+
+PokemonTower1Text2: ; 6043e (18:443e)
+ TX_FAR _PokemonTower1Text2
+ db "@"
+
+PokemonTower1Text3: ; 60443 (18:4443)
+ TX_FAR _PokemonTower1Text3
+ db "@"
+
+PokemonTower1Text4: ; 60448 (18:4448)
+ TX_FAR _PokemonTower1Text4
+ db "@"
+
+PokemonTower1Text5: ; 6044d (18:444d)
+ TX_FAR _PokemonTower1Text5
+ db "@"
diff --git a/scripts/pokemontower2.asm b/scripts/pokemontower2.asm
new file mode 100755
index 00000000..dbbc8e63
--- /dev/null
+++ b/scripts/pokemontower2.asm
@@ -0,0 +1,178 @@
+PokemonTower2Script: ; 604f2 (18:44f2)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower2ScriptPointers
+ ld a, [W_POKEMONTOWER2CURSCRIPT]
+ jp CallFunctionInTable
+
+PokemonTower2Script_604fe: ; 604fe (18:44fe)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_POKEMONTOWER2CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower2ScriptPointers: ; 60509 (18:4509)
+ dw PokemonTower2Script0
+ dw PokemonTower2Script1
+ dw PokemonTower2Script2
+
+PokemonTower2Script0: ; 6050f (18:450f)
+ ld a, [$d764]
+ bit 7, a
+ ret nz
+ ld hl, CoordsData_6055e ; $455e
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld hl, $d764
+ res 6, [hl]
+ ld a, [$cd3d]
+ cp $1
+ ld a, $8
+ ld b, $0
+ jr nz, .asm_60544 ; 0x60539 $9
+ ld hl, $d764
+ set 6, [hl]
+ ld a, $2
+ ld b, $c
+.asm_60544
+ ld [$d528], a
+ ld a, $1
+ ld [$ff8c], a
+ ld a, b
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [H_NEWLYPRESSEDBUTTONS], a
+ ret
+
+CoordsData_6055e: ; 6055e (18:455e)
+ db $05,$0F
+ db $06,$0E
+ db $0F ; isn't this supposed to end in $ff?
+
+PokemonTower2Script1: ; 60563 (18:4563)
+ ld a, [$d057]
+ cp $ff
+ jp z, PokemonTower2Script_604fe
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d764
+ set 7, [hl]
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ld de, MovementData_605b2
+ ld a, [$d764]
+ bit 6, a
+ jr nz, .asm_60589 ; 0x60584 $3
+ ld de, MovementData_605a9
+.asm_60589
+ ld a, $1
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld a, $2
+ ld [W_POKEMONTOWER2CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+MovementData_605a9: ; 605a9 (18:45a9)
+ db $C0,$00,$00,$C0,$00,$00,$C0,$C0,$FF
+
+MovementData_605b2: ; 605b2 (18:45b2)
+ db $00,$00,$C0,$C0,$C0,$C0,$00,$00,$FF
+
+PokemonTower2Script2: ; 605bb (18:45bb)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $38
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ call Func_2307
+ ld a, $0
+ ld [W_POKEMONTOWER2CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower2TextPointers: ; 605db (18:45db)
+ dw PokemonTower2Text1
+ dw PokemonTower2Text2
+
+PokemonTower2Text1: ; 605df (18:45df)
+ db $08 ; asm
+ ld a, [$d764]
+ bit 7, a
+ jr z, .asm_16f24 ; 0x605e5
+ ld hl, PokemonTower2Text_6063c
+ call PrintText
+ jr .asm_41852 ; 0x605ed
+.asm_16f24 ; 0x605ef
+ ld hl, PokemonTower2Text_6062d
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, PokemonTower2Text_60632
+ ld de, PokemonTower2Text_60637 ; XXX $4637
+ call PreBattleSaveRegisters
+ ld a, SONY2 + $c8
+ ld [W_CUROPPONENT], a
+
+ ; select which team to use during the encounter
+ ld a, [W_RIVALSTARTER]
+ cp SQUIRTLE
+ jr nz, .NotSquirtle ; 0x6060f
+ ld a, $4
+ jr .done
+.NotSquirtle ; 0x60615
+ cp BULBASAUR
+ jr nz, .Charmander ; 0x60617
+ ld a, $5
+ jr .done
+.Charmander ; 0x6061d
+ ld a, $6
+.done
+ ld [W_TRAINERNO], a
+
+ ld a, $1
+ ld [W_POKEMONTOWER2CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+.asm_41852 ; 0x6062a
+ jp TextScriptEnd
+
+PokemonTower2Text_6062d: ; 6062d (18:462d)
+ TX_FAR _PokemonTower2Text_6062d
+ db "@"
+
+PokemonTower2Text_60632: ; 60632 (18:4632)
+ TX_FAR _PokemonTower2Text_60632
+ db "@"
+
+PokemonTower2Text_60637: ; 60637 (18:4637)
+ TX_FAR _PokemonTower2Text_60637
+ db "@"
+
+PokemonTower2Text_6063c: ; 6063c (18:463c)
+ TX_FAR _PokemonTower2Text_6063c
+ db "@"
+
+PokemonTower2Text2: ; 60641 (18:4641)
+ TX_FAR _PokemonTower2Text2
+ db "@"
diff --git a/scripts/pokemontower3.asm b/scripts/pokemontower3.asm
new file mode 100755
index 00000000..74568a83
--- /dev/null
+++ b/scripts/pokemontower3.asm
@@ -0,0 +1,102 @@
+PokemonTower3Script: ; 606cc (18:46cc)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower3TrainerHeaders
+ ld de, PokemonTower3ScriptPointers
+ ld a, [W_POKEMONTOWER3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POKEMONTOWER3CURSCRIPT], a
+ ret
+
+PokemonTower3ScriptPointers: ; 606df (18:46df)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+PokemonTower3TextPointers: ; 606e5 (18:46e5)
+ dw PokemonTower3Text1
+ dw PokemonTower3Text2
+ dw PokemonTower3Text3
+ dw Predef5CText
+
+PokemonTower3TrainerHeaders: ; 606ed (18:46ed)
+PokemonTower3TrainerHeader0: ; 606ed (18:46ed)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d765 ; flag's byte
+ dw PokemonTower3BattleText1 ; 0x4730 TextBeforeBattle
+ dw PokemonTower3AfterBattleText1 ; 0x473a TextAfterBattle
+ dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle
+ dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle
+
+PokemonTower3TrainerHeader1: ; 606f9 (18:46f9)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d765 ; flag's byte
+ dw PokemonTower3BattleText2 ; 0x473f TextBeforeBattle
+ dw PokemonTower3AfterBattleText2 ; 0x4749 TextAfterBattle
+ dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle
+ dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle
+
+PokemonTower3TrainerHeader2: ; 60705 (18:4705)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d765 ; flag's byte
+ dw PokemonTower3BattleText3 ; 0x474e TextBeforeBattle
+ dw PokemonTower3AfterBattleText3 ; 0x4758 TextAfterBattle
+ dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle
+ dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle
+ db $ff
+
+PokemonTower3Text1: ; 60712 (18:4712)
+ db $08 ; asm
+ ld hl, PokemonTower3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower3Text2: ; 6071c (18:471c)
+ db $08 ; asm
+ ld hl, PokemonTower3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower3Text3: ; 60726 (18:4726)
+ db $08 ; asm
+ ld hl, PokemonTower3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower3BattleText1: ; 60730 (18:4730)
+ TX_FAR _PokemonTower3BattleText1
+ db "@"
+
+PokemonTower3EndBattleText1: ; 60735 (18:4735)
+ TX_FAR _PokemonTower3EndBattleText1
+ db "@"
+
+PokemonTower3AfterBattleText1: ; 6073a (18:473a)
+ TX_FAR _PokemonTower3AfterBattleText1
+ db "@"
+
+PokemonTower3BattleText2: ; 6073f (18:473f)
+ TX_FAR _PokemonTower3BattleText2
+ db "@"
+
+PokemonTower3EndBattleText2: ; 60744 (18:4744)
+ TX_FAR _PokemonTower3EndBattleText2
+ db "@"
+
+PokemonTower3AfterBattleText2: ; 60749 (18:4749)
+ TX_FAR _PokemonTower3AfterBattleText2
+ db "@"
+
+PokemonTower3BattleText3: ; 6074e (18:474e)
+ TX_FAR _PokemonTower3BattleText3
+ db "@"
+
+PokemonTower3EndBattleText3: ; 60753 (18:4753)
+ TX_FAR _PokemonTower3EndBattleText3
+ db "@"
+
+PokemonTower3AfterBattleText3: ; 60758 (18:4758)
+ TX_FAR _PokemonTower3AfterBattleText3
+ db "@"
diff --git a/scripts/pokemontower4.asm b/scripts/pokemontower4.asm
new file mode 100755
index 00000000..05fcb23f
--- /dev/null
+++ b/scripts/pokemontower4.asm
@@ -0,0 +1,105 @@
+PokemonTower4Script: ; 607f6 (18:47f6)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower4TrainerHeaders
+ ld de, PokemonTower4ScriptPointers
+ ld a, [W_POKEMONTOWER4CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POKEMONTOWER4CURSCRIPT], a
+ ret
+
+PokemonTower4ScriptPointers: ; 60809 (18:4809)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+PokemonTower4TextPointers: ; 6080f (18:480f)
+ dw PokemonTower4Text1
+ dw PokemonTower4Text2
+ dw PokemonTower4Text3
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+
+PokemonTower4TrainerHeaders: ; 6081b (18:481b)
+PokemonTower4TrainerHeader0: ; 6081b (18:481b)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d766 ; flag's byte
+ dw PokemonTower4BattleText1 ; 0x485e TextBeforeBattle
+ dw PokemonTower4AfterBattleText1 ; 0x4868 TextAfterBattle
+ dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle
+ dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle
+
+PokemonTower4TrainerHeader1: ; 60827 (18:4827)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d766 ; flag's byte
+ dw PokemonTower4BattleText2 ; 0x486d TextBeforeBattle
+ dw PokemonTower4AfterBattleText2 ; 0x4877 TextAfterBattle
+ dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle
+ dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle
+
+PokemonTower4TrainerHeader2: ; 60833 (18:4833)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d766 ; flag's byte
+ dw PokemonTower4BattleText3 ; 0x487c TextBeforeBattle
+ dw PokemonTower4AfterBattleText3 ; 0x4886 TextAfterBattle
+ dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle
+ dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle
+
+ db $ff
+
+PokemonTower4Text1: ; 60840 (18:4840)
+ db $08 ; asm
+ ld hl, PokemonTower4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower4Text2: ; 6084a (18:484a)
+ db $08 ; asm
+ ld hl, PokemonTower4TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower4Text3: ; 60854 (18:4854)
+ db $08 ; asm
+ ld hl, PokemonTower4TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower4BattleText1: ; 6085e (18:485e)
+ TX_FAR _PokemonTower4BattleText1
+ db "@"
+
+PokemonTower4EndBattleText1: ; 60863 (18:4863)
+ TX_FAR _PokemonTower4EndBattleText1
+ db "@"
+
+PokemonTower4AfterBattleText1: ; 60868 (18:4868)
+ TX_FAR _PokemonTower4AfterBattleText1
+ db "@"
+
+PokemonTower4BattleText2: ; 6086d (18:486d)
+ TX_FAR _PokemonTower4BattleText2
+ db "@"
+
+PokemonTower4EndBattleText2: ; 60872 (18:4872)
+ TX_FAR _PokemonTower4EndBattleText2
+ db "@"
+
+PokemonTower4AfterBattleText2: ; 60877 (18:4877)
+ TX_FAR _PokemonTower4AfterBattleText2
+ db "@"
+
+PokemonTower4BattleText3: ; 6087c (18:487c)
+ TX_FAR _PokemonTower4BattleText3
+ db "@"
+
+PokemonTower4EndBattleText3: ; 60881 (18:4881)
+ TX_FAR _PokemonTower4EndBattleText3
+ db "@"
+
+PokemonTower4AfterBattleText3: ; 60886 (18:4886)
+ TX_FAR _PokemonTower4AfterBattleText3
+ db "@"
diff --git a/scripts/pokemontower5.asm b/scripts/pokemontower5.asm
new file mode 100755
index 00000000..5c43c7da
--- /dev/null
+++ b/scripts/pokemontower5.asm
@@ -0,0 +1,181 @@
+PokemonTower5Script: ; 60932 (18:4932)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower5TrainerHeaders
+ ld de, PokemonTower5ScriptPointers
+ ld a, [W_POKEMONTOWER5CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POKEMONTOWER5CURSCRIPT], a
+ ret
+
+PokemonTower5ScriptPointers: ; 60945 (18:4945)
+ dw PokemonTower5Script0
+ dw Func_324c
+ dw EndTrainerBattle
+
+PokemonTower5Script0: ; 6094b (18:494b)
+ ld hl, CoordsData_60992 ; $4992
+ call ArePlayerCoordsInArray
+ jr c, .asm_60960
+ ld hl, $d72e
+ res 4, [hl]
+ ld hl, $d767
+ res 7, [hl]
+ jp CheckFightingMapTrainers
+.asm_60960
+ ld hl, $d767
+ bit 7, [hl]
+ set 7, [hl]
+ ret nz
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d72e
+ set 4, [hl]
+ ld a, $7
+ call Predef ; indirect jump to HealParty (f6a5 (3:76a5))
+ call GBFadeOut2
+ call Delay3
+ call Delay3
+ call GBFadeIn2
+ ld a, $7
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ret
+
+CoordsData_60992: ; 60992 (18:4992)
+ db $08,$0A
+ db $08,$0B
+ db $09,$0A
+ db $09,$0B
+ db $FF
+
+PokemonTower5TextPointers: ; 6099b (18:499b)
+ dw PokemonTower5Text1
+ dw PokemonTower5Text2
+ dw PokemonTower5Text3
+ dw PokemonTower5Text4
+ dw PokemonTower5Text5
+ dw Predef5CText
+ dw PokemonTower5Text7
+
+PokemonTower5TrainerHeaders: ; 609a9 (18:49a9)
+PokemonTower5TrainerHeader0: ; 609a9 (18:49a9)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw PokemonTower5BattleText1 ; 0x49e9 TextBeforeBattle
+ dw PokemonTower5AfterBattleText1 ; 0x49f3 TextAfterBattle
+ dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle
+ dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle
+
+PokemonTower5TrainerHeader1: ; 609b5 (18:49b5)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw PokemonTower5BattleText2 ; 0x4a02 TextBeforeBattle
+ dw PokemonTower5AfterBattleText2 ; 0x4a0c TextAfterBattle
+ dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle
+ dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle
+
+PokemonTower5TrainerHeader2: ; 609c1 (18:49c1)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw PokemonTower5BattleText3 ; 0x4a1b TextBeforeBattle
+ dw PokemonTower5AfterBattleText3 ; 0x4a25 TextAfterBattle
+ dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle
+ dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle
+
+PokemonTower5TrainerHeader3: ; 609cd (18:49cd)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw PokemonTower5BattleText4 ; 0x4a34 TextBeforeBattle
+ dw PokemonTower5AfterBattleText4 ; 0x4a3e TextAfterBattle
+ dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle
+ dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle
+
+ db $ff
+
+PokemonTower5Text1: ; 609da (18:49da)
+ TX_FAR _PokemonTower5Text1
+ db "@"
+
+PokemonTower5Text2: ; 609df (18:49df)
+ db $08 ; asm
+ ld hl, PokemonTower5TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText1: ; 609e9 (18:49e9)
+ TX_FAR _PokemonTower5BattleText1
+ db "@"
+
+PokemonTower5EndBattleText1: ; 609ee (18:49ee)
+ TX_FAR _PokemonTower5EndBattleText1
+ db "@"
+
+PokemonTower5AfterBattleText1: ; 609f3 (18:49f3)
+ TX_FAR _PokemonTower5AfterBattleText1
+ db "@"
+
+PokemonTower5Text3: ; 609f8 (18:49f8)
+ db $08 ; asm
+ ld hl, PokemonTower5TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText2: ; 60a02 (18:4a02)
+ TX_FAR _PokemonTower5BattleText2
+ db "@"
+
+PokemonTower5EndBattleText2: ; 60a07 (18:4a07)
+ TX_FAR _PokemonTower5EndBattleText2
+ db "@"
+
+PokemonTower5AfterBattleText2: ; 60a0c (18:4a0c)
+ TX_FAR _PokemonTower5AfterBattleText2
+ db "@"
+
+PokemonTower5Text4: ; 60a11 (18:4a11)
+ db $08 ; asm
+ ld hl, PokemonTower5TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText3: ; 60a1b (18:4a1b)
+ TX_FAR _PokemonTower5BattleText3
+ db "@"
+
+PokemonTower5EndBattleText3: ; 60a20 (18:4a20)
+ TX_FAR _PokemonTower5EndBattleText3
+ db "@"
+
+PokemonTower5AfterBattleText3: ; 60a25 (18:4a25)
+ TX_FAR _PokemonTower5AfterBattleText3
+ db "@"
+
+PokemonTower5Text5: ; 60a2a (18:4a2a)
+ db $08 ; asm
+ ld hl, PokemonTower5TrainerHeader3 ; $49cd
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText4: ; 60a34 (18:4a34)
+ TX_FAR _PokemonTower5BattleText4
+ db "@"
+
+PokemonTower5EndBattleText4: ; 60a39 (18:4a39)
+ TX_FAR _PokemonTower5EndBattleText4
+ db "@"
+
+PokemonTower5AfterBattleText4: ; 60a3e (18:4a3e)
+ TX_FAR _PokemonTower5AfterBattleText4
+ db "@"
+
+PokemonTower5Text7: ; 60a43 (18:4a43)
+ TX_FAR _PokemonTower5Text7
+ db "@"
diff --git a/scripts/pokemontower6.asm b/scripts/pokemontower6.asm
new file mode 100755
index 00000000..e3d8a4c4
--- /dev/null
+++ b/scripts/pokemontower6.asm
@@ -0,0 +1,215 @@
+PokemonTower6Script: ; 60aef (18:4aef)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower6TrainerHeaders
+ ld de, PokemonTower6ScriptPointers
+ ld a, [W_POKEMONTOWER6CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POKEMONTOWER6CURSCRIPT], a
+ ret
+
+Func_60b02: ; 60b02 (18:4b02)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_POKEMONTOWER6CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower6ScriptPointers: ; 60b0d (18:4b0d)
+ dw PokemonTower6Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw PokemonTower6Script3
+ dw PokemonTower6Script4
+
+PokemonTower6Script0: ; 60b17 (18:4b17)
+ ld a, [$d768]
+ bit 7, a
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_60b45 ; $4b45
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $6
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, MAROWAK
+ ld [W_CUROPPONENT], a ; $d059
+ ld a, 30
+ ld [W_CURENEMYLVL], a ; $d127
+ ld a, $4
+ ld [W_POKEMONTOWER6CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CoordsData_60b45: ; 60b45 (18:4b45)
+ db $10,$0A,$FF
+
+PokemonTower6Script4: ; 60b48 (18:4b48)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, Func_60b02
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [$d72d]
+ bit 6, a
+ ret nz
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [$cf0b]
+ and a
+ jr nz, .asm_60b82
+ ld hl, $d768
+ set 7, [hl]
+ ld a, $7
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_POKEMONTOWER6CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+.asm_60b82
+ ld a, $1
+ ld [$cd38], a
+ ld a, $10
+ ld [$ccd3], a
+ xor a
+ ld [$c206], a
+ ld [$cd3b], a
+ ld hl, $d730
+ set 7, [hl]
+ ld a, $3
+ ld [W_POKEMONTOWER6CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower6Script3: ; 60ba1 (18:4ba1)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [W_POKEMONTOWER6CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower6TextPointers: ; 60bb1 (18:4bb1)
+ dw PokemonTower6Text1
+ dw PokemonTower6Text2
+ dw PokemonTower6Text3
+ dw Predef5CText
+ dw Predef5CText
+ dw PokemonTower6Text6
+ dw PokemonTower6Text7
+
+PokemonTower6TrainerHeaders: ; 60bbf (18:4bbf)
+PokemonTower6TrainerHeader0: ; 60bbf (18:4bbf)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d768 ; flag's byte
+ dw PokemonTower6BattleText1 ; 0x4c29 TextBeforeBattle
+ dw PokemonTower6AfterBattleText1 ; 0x4c33 TextAfterBattle
+ dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle
+ dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle
+
+PokemonTower6TrainerHeader1: ; 60bcb (18:4bcb)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d768 ; flag's byte
+ dw PokemonTower6BattleText2 ; 0x4c38 TextBeforeBattle
+ dw PokemonTower6AfterBattleText2 ; 0x4c42 TextAfterBattle
+ dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle
+ dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle
+
+PokemonTower6TrainerHeader2: ; 60bd7 (18:4bd7)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d768 ; flag's byte
+ dw PokemonTower6BattleText3 ; 0x4c47 TextBeforeBattle
+ dw PokemonTower6AfterBattleText3 ; 0x4c51 TextAfterBattle
+ dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle
+ dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle
+
+ db $ff
+
+PokemonTower6Text1: ; 60be4 (18:4be4)
+ db $08 ; asm
+ ld hl, PokemonTower6TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower6Text2: ; 60bee (18:4bee)
+ db $08 ; asm
+ ld hl, PokemonTower6TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower6Text3: ; 60bf8 (18:4bf8)
+ db $08 ; asm
+ ld hl, PokemonTower6TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower6Text7: ; 60c02 (18:4c02)
+ db $8
+ ld hl, PokemonTower2Text_60c1f
+ call PrintText
+ ld a, MAROWAK
+ call PlayCry
+ call WaitForSoundToFinish
+ ld c, $1e
+ call DelayFrames
+ ld hl, PokemonTower2Text_60c24
+ call PrintText
+ jp TextScriptEnd
+
+PokemonTower2Text_60c1f: ; 60c1f (18:4c1f)
+ TX_FAR _PokemonTower2Text_60c1f
+ db "@"
+
+PokemonTower2Text_60c24: ; 60c24 (18:4c24)
+ TX_FAR _PokemonTower2Text_60c24
+ db "@"
+
+PokemonTower6BattleText1: ; 60c29 (18:4c29)
+ TX_FAR _PokemonTower6BattleText1
+ db "@"
+
+PokemonTower6EndBattleText1: ; 60c2e (18:4c2e)
+ TX_FAR _PokemonTower6EndBattleText1
+ db "@"
+
+PokemonTower6AfterBattleText1: ; 60c33 (18:4c33)
+ TX_FAR _PokemonTower6AfterBattleText1
+ db "@"
+
+PokemonTower6BattleText2: ; 60c38 (18:4c38)
+ TX_FAR _PokemonTower6BattleText2
+ db "@"
+
+PokemonTower6EndBattleText2: ; 60c3d (18:4c3d)
+ TX_FAR _PokemonTower6EndBattleText2
+ db "@"
+
+PokemonTower6AfterBattleText2: ; 60c42 (18:4c42)
+ TX_FAR _PokemonTower6AfterBattleText2
+ db "@"
+
+PokemonTower6BattleText3: ; 60c47 (18:4c47)
+ TX_FAR _PokemonTower6BattleText3
+ db "@"
+
+PokemonTower6EndBattleText3: ; 60c4c (18:4c4c)
+ TX_FAR _PokemonTower6EndBattleText3
+ db "@"
+
+PokemonTower6AfterBattleText3: ; 60c51 (18:4c51)
+ TX_FAR _PokemonTower6AfterBattleText3
+ db "@"
+
+PokemonTower6Text6: ; 60c56 (18:4c56)
+ TX_FAR _PokemonTower6Text6
+ db "@"
diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm
new file mode 100755
index 00000000..3e1fcccb
--- /dev/null
+++ b/scripts/pokemontower7.asm
@@ -0,0 +1,282 @@
+PokemonTower7Script: ; 60d05 (18:4d05)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower7TrainerHeaders
+ ld de, PokemonTower7ScriptPointers
+ ld a, [W_POKEMONTOWER7CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ret
+
+PokemonTower7Script_60d18: ; 60d18 (18:4d18)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7ScriptPointers: ; 60d23 (18:4d23)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw PokemonTower7Script2
+ dw PokemonTower7Script3
+ dw PokemonTower7Script4
+
+PokemonTower7Script2: ; 60d23 (18:4d23)
+ ld hl, wFlags_0xcd60
+ res 0, [hl]
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, PokemonTower7Script_60d18
+ call EndTrainerBattle
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [$cf13]
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ call PokemonTower7Script_60db6
+ ld a, $3
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7Script3: ; 60d56 (18:4d56)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld hl, W_MISSABLEOBJECTLIST
+ ld a, [$cf13]
+ ld b, a
+.missableObjectsListLoop
+ ld a, [hli]
+ cp b ; search for sprite ID in missing objects list
+ ld a, [hli]
+ jr nz, .missableObjectsListLoop
+ ld [$cc4d], a ; remove missable object
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [$cf13], a
+ ld [wTrainerHeaderFlagBit], a
+ ld [$da38], a
+ ld a, $0
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7Script4: ; 60d86 (18:4d86)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $43
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $4
+ ld [$c109], a
+ ld a, $95
+ ld [H_DOWNARROWBLINKCNT1], a ; $ff8b
+ ld a, $1
+ ld [$d42f], a
+ ld a, LAVENDER_TOWN
+ ld [wLastMap], a
+ ld hl, $d72d
+ set 3, [hl]
+ ld a, $0
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7Script_60db6: ; 60db6 (18:4db6)
+ ld hl, CoordsData_60de3 ; $4de3
+ ld a, [$cf13]
+ dec a
+ swap a
+ ld d, $0
+ ld e, a
+ add hl, de
+ ld a, [W_YCOORD] ; $d361
+ ld b, a
+ ld a, [W_XCOORD] ; $d362
+ ld c, a
+.asm_60dcb
+ ld a, [hli]
+ cp b
+ jr nz, .asm_60dde
+ ld a, [hli]
+ cp c
+ jr nz, .asm_60ddf
+ ld a, [hli]
+ ld d, [hl]
+ ld e, a
+ ld a, [$cf13]
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp MoveSprite
+.asm_60dde
+ inc hl
+.asm_60ddf
+ inc hl
+ inc hl
+ jr .asm_60dcb
+
+CoordsData_60de3: ; 60de3 (18:4de3)
+ db $0C,$09
+ dw MovementData_60e13
+ db $0B,$0A
+ dw MovementData_60e1b
+ db $0B,$0B
+ dw MovementData_60e22
+ db $0B,$0C
+ dw MovementData_60e22
+ db $0A,$0C
+ dw MovementData_60e28
+ db $09,$0B
+ dw MovementData_60e30
+ db $09,$0A
+ dw MovementData_60e22
+ db $09,$09
+ dw MovementData_60e22
+ db $08,$09
+ dw MovementData_60e37
+ db $07,$0A
+ dw MovementData_60e22
+ db $07,$0B
+ dw MovementData_60e22
+ db $07,$0C
+ dw MovementData_60e22
+
+MovementData_60e13: ; 60e13
+ db $C0,$00,$00,$00,$00,$00,$80,$FF
+
+MovementData_60e1b: ; 60e1b
+ db $00,$C0,$00,$00,$00,$00,$FF
+
+MovementData_60e22: ; 60e22
+ db $00,$00,$00,$00,$00,$FF
+
+MovementData_60e28: ; 60e28
+ db $80,$00,$00,$00,$00,$00,$00,$FF
+
+MovementData_60e30: ; 60e30
+ db $00,$00,$00,$80,$00,$00,$FF
+
+MovementData_60e37: ; 60e37
+ db $C0,$00,$00,$00,$00,$00,$00,$FF
+
+PokemonTower7TextPointers: ; 60e3f (18:4e3f)
+ dw PokemonTower7Text1
+ dw PokemonTower7Text2
+ dw PokemonTower7Text3
+ dw PokemonTower7Text4
+
+PokemonTower7TrainerHeaders: ; 60e47 (18:4e47)
+PokemonTower7TrainerHeader0: ; 60e47 (18:4e47)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw PokemonTower7BattleText1 ; 0x4ec9 TextBeforeBattle
+ dw PokemonTower7AfterBattleText1 ; 0x4ed3 TextAfterBattle
+ dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
+ dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
+
+PokemonTower7TrainerHeader1: ; 60e53 (18:4e53)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw PokemonTower7BattleText2 ; 0x4ed8 TextBeforeBattle
+ dw PokemonTower7AfterBattleText2 ; 0x4ee2 TextAfterBattle
+ dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
+ dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
+
+PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw PokemonTower7BattleText3 ; 0x4ee7 TextBeforeBattle
+ dw PokemonTower7AfterBattleText3 ; 0x4ef1 TextAfterBattle
+ dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
+ dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
+
+ db $ff
+
+PokemonTower7Text1: ; 60e6c (18:4e6c)
+ db $08 ; asm
+ ld hl, PokemonTower7TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower7Text2: ; 60e76 (18:4e76)
+ db $08 ; asm
+ ld hl, PokemonTower7TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower7Text3: ; 60e80 (18:4e80)
+ db $08 ; asm
+ ld hl, PokemonTower7TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower7Text4: ; 60e8a (18:4e8a)
+ db $08 ; asm
+ ld hl, PokemonTower7Text_60ec4
+ call PrintText
+ ld hl, $d7e0
+ set 7, [hl]
+ ld hl, $d769
+ set 7, [hl]
+ ld a, $44
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $17
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $18
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $4
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jp TextScriptEnd
+
+PokemonTower7Text_60ec4: ; 60ec4 (18:4ec4)
+ TX_FAR _PokemonTower7Text_60ec4
+ db "@"
+
+PokemonTower7BattleText1: ; 60ec9 (18:4ec9)
+ TX_FAR _PokemonTower7BattleText1
+ db "@"
+
+PokemonTower7EndBattleText1: ; 60ece (18:4ece)
+ TX_FAR _PokemonTower7EndBattleText1
+ db "@"
+
+PokemonTower7AfterBattleText1: ; 60ed3 (18:4ed3)
+ TX_FAR _PokemonTower7AfterBattleText1
+ db "@"
+
+PokemonTower7BattleText2: ; 60ed8 (18:4ed8)
+ TX_FAR _PokemonTower7BattleText2
+ db "@"
+
+PokemonTower7EndBattleText2: ; 60edd (18:4edd)
+ TX_FAR _PokemonTower7EndBattleText2
+ db "@"
+
+PokemonTower7AfterBattleText2: ; 60ee2 (18:4ee2)
+ TX_FAR _PokemonTower7AfterBattleText2
+ db "@"
+
+PokemonTower7BattleText3: ; 60ee7 (18:4ee7)
+ TX_FAR _PokemonTower7BattleText3
+ db "@"
+
+PokemonTower7EndBattleText3: ; 60eec (18:4eec)
+ TX_FAR _PokemonTower7EndBattleText3
+ db "@"
+
+PokemonTower7AfterBattleText3: ; 60ef1 (18:4ef1)
+ TX_FAR _PokemonTower7AfterBattleText3
+ db "@"
diff --git a/scripts/powerplant.asm b/scripts/powerplant.asm
new file mode 100755
index 00000000..d5e126dc
--- /dev/null
+++ b/scripts/powerplant.asm
@@ -0,0 +1,176 @@
+PowerPlantScript: ; 1e2c6 (7:62c6)
+ call EnableAutoTextBoxDrawing
+ ld hl, PowerPlantTrainerHeaders
+ ld de, PowerPlantScriptPointers
+ ld a, [W_POWERPLANTCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POWERPLANTCURSCRIPT], a
+ ret
+
+PowerPlantScriptPointers: ; 1e2d9 (7:62d9)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+PowerPlantTextPointers: ; 1e2df (7:62df)
+ dw PowerPlantText1
+ dw PowerPlantText2
+ dw PowerPlantText3
+ dw PowerPlantText4
+ dw PowerPlantText5
+ dw PowerPlantText6
+ dw PowerPlantText7
+ dw PowerPlantText8
+ dw PowerPlantText9
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+
+PowerPlantTrainerHeaders: ; 1e2fb (7:62fb)
+PowerPlantTrainerHeader0: ; 1e2fb (7:62fb)
+ db 1 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader1: ; 1e307 (7:6307)
+ db 2 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader2: ; 1e313 (7:6313)
+ db 3 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader3: ; 1e31f (7:631f)
+ db 4 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader4: ; 1e32b (7:632b)
+ db 5 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader5: ; 1e337 (7:6337)
+ db 6 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader6: ; 1e343 (7:6343)
+ db 7 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader7: ; 1e34f (7:634f)
+ db 8 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+PowerPlantTrainerHeader8: ; 1e35b (7:635b)
+ db 9 ; flag's bit
+ db 0 ; view range
+ dw $d7d3 ; flag's byte
+ dw ZapdosBattleText ; TextBeforeBattle
+ dw ZapdosBattleText ; TextAfterBattle
+ dw ZapdosBattleText ; TextEndBattle
+ dw ZapdosBattleText ; TextEndBattle
+
+ db $ff
+
+asm_234cc: ; 1e368 (7:6368)
+ call TalkToTrainer
+ ld a, [W_CURMAPSCRIPT]
+ ld [W_POWERPLANTCURSCRIPT], a
+ jp TextScriptEnd
+
+PowerPlantText1: ; 1e374 (7:6374)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader0 ; $62fb
+ jr asm_234cc ; 0x1e378 $ee
+
+PowerPlantText2: ; 1e37a (7:637a)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader1 ; $6307
+ jr asm_234cc ; 0x1e37e $e8
+
+PowerPlantText3: ; 1e380 (7:6380)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader2 ; $6313
+ jr asm_234cc ; 0x1e384 $e2
+
+PowerPlantText4: ; 1e386 (7:6386)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader3 ; $631f
+ jr asm_234cc ; 0x1e38a $dc
+
+PowerPlantText5: ; 1e38c (7:638c)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader4 ; $632b
+ jr asm_234cc ; 0x1e390 $d6
+
+PowerPlantText6: ; 1e392 (7:6392)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader5 ; $6337
+ jr asm_234cc ; 0x1e396 $d0
+
+PowerPlantText7: ; 1e398 (7:6398)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader6 ; $6343
+ jr asm_234cc ; 0x1e39c $ca
+
+PowerPlantText8: ; 1e39e (7:639e)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader7 ; $634f
+ jr asm_234cc ; 0x1e3a2 $c4
+
+PowerPlantText9: ; 1e3a4 (7:63a4)
+ db $8 ; asm
+ ld hl, PowerPlantTrainerHeader8 ; $635b
+ jr asm_234cc ; 0x1e3a8 $be
+
+VoltorbBattleText: ; 1e3aa (7:63aa)
+ TX_FAR _VoltorbBattleText
+ db "@"
+
+ZapdosBattleText: ; 1e3af (7:63af)
+ TX_FAR _ZapdosBattleText
+ db $8
+ ld a, ZAPDOS
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
diff --git a/scripts/redshouse1f.asm b/scripts/redshouse1f.asm
new file mode 100755
index 00000000..b787669e
--- /dev/null
+++ b/scripts/redshouse1f.asm
@@ -0,0 +1,69 @@
+RedsHouse1FScript: ; 48168 (12:4168)
+ jp EnableAutoTextBoxDrawing
+
+RedsHouse1FTextPointers: ; 4816b (12:416b)
+ dw RedsHouse1FText1
+ dw RedsHouse1FText2
+
+RedsHouse1FText1: ; 4816f (12:416f) ; 416F Mom
+ db 8
+ ld a, [$D72E]
+ bit 3, a
+ jr nz, .heal ; if player has received a Pokémon from Oak, heal team
+ ld hl, MomWakeUpText
+ call PrintText
+ jr .done
+.heal
+ call MomHealPokemon
+.done
+ jp TextScriptEnd
+
+MomWakeUpText: ; 48185 (12:4185)
+ TX_FAR _MomWakeUpText
+ db "@"
+
+MomHealPokemon: ; 4818a (12:418a)
+ ld hl, MomHealText1
+ call PrintText
+ call GBFadeOut2
+ call ReloadMapData
+ PREDEF HealPartyPredef
+ ld a, MUSIC_PKMN_HEALED
+ ld [$C0EE], a
+ call PlaySound ; play sound?
+.next
+ ld a, [$C026]
+ cp MUSIC_PKMN_HEALED
+ jr z, .next
+ ld a, [$D35B]
+ ld [$C0EE], a
+ call PlaySound
+ call GBFadeIn2
+ ld hl, MomHealText2
+ jp PrintText
+
+MomHealText1: ; 481bc (12:41bc)
+ TX_FAR _MomHealText1
+ db "@"
+MomHealText2: ; 481c1 (12:41c1)
+ TX_FAR _MomHealText2
+ db "@"
+
+RedsHouse1FText2: ; 0x481c6 TV
+ db 8
+ ld a,[$C109]
+ cp 4
+ ld hl,TVWrongSideText
+ jr nz,.done ; if player is not facing up
+ ld hl,StandByMeText
+.done
+ call PrintText
+ jp TextScriptEnd
+
+StandByMeText: ; 481da (12:41da)
+ TX_FAR _StandByMeText
+ db "@"
+
+TVWrongSideText: ; 481df (12:41df)
+ TX_FAR _TVWrongSideText
+ db "@"
diff --git a/scripts/redshouse2f.asm b/scripts/redshouse2f.asm
new file mode 100755
index 00000000..1004860c
--- /dev/null
+++ b/scripts/redshouse2f.asm
@@ -0,0 +1,24 @@
+RedsHouse2FScript: ; 5c0b0 (17:40b0)
+ call EnableAutoTextBoxDrawing
+ ld hl,RedsHouse2FScriptPointers
+ ld a,[W_REDSHOUSE2CURSCRIPT]
+ jp CallFunctionInTable
+
+RedsHouse2FScriptPointers: ; 5c0bc (17:40bc)
+ dw RedsHouse2FScript0
+ dw RedsHouse2FScript1
+
+RedsHouse2FScript0: ; 5c0c0 (17:40c0)
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS],a
+ ld a,8
+ ld [$D528],a
+ ld a,1
+ ld [W_REDSHOUSE2CURSCRIPT],a
+ ret
+
+RedsHouse2FScript1: ; 5c0ce (17:40ce)
+ ret
+
+RedsHouse2FTextPointers: ; 5c0cf (17:40cf)
+ db "@"
diff --git a/scripts/rockethideout1.asm b/scripts/rockethideout1.asm
new file mode 100755
index 00000000..ce88ff90
--- /dev/null
+++ b/scripts/rockethideout1.asm
@@ -0,0 +1,193 @@
+RocketHideout1Script: ; 44bca (11:4bca)
+ call RocketHideout1Script_44be0
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout1TrainerHeaders
+ ld de, RocketHideout1ScriptPointers
+ ld a, [W_ROCKETHIDEOUT1CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROCKETHIDEOUT1CURSCRIPT], a
+ ret
+
+RocketHideout1Script_44be0: ; 44be0 (11:4be0)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d815]
+ bit 7, a
+ jr nz, .asm_44c01
+ bit 5, a
+ jr nz, .asm_44bf7
+ ld a, $54
+ jr .asm_44c03
+.asm_44bf7
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ ld hl, $d815
+ bit 7, [hl]
+.asm_44c01
+ ld a, $e
+.asm_44c03
+ ld [$d09f], a
+ ld bc, $080c
+ ld a, $17
+ jp Predef
+
+RocketHideout1ScriptPointers: ; 44c0e (11:4c0e)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+RocketHideout1TextPointers: ; 44c14 (11:4c14)
+ dw RocketHideout1Text1
+ dw RocketHideout1Text2
+ dw RocketHideout1Text3
+ dw RocketHideout1Text4
+ dw RocketHideout1Text5
+ dw Predef5CText
+ dw Predef5CText
+
+RocketHideout1TrainerHeaders: ; 44c22 (11:4c22)
+RocketHideout1TrainerHeader0: ; 44c22 (11:4c22)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d815 ; flag's byte
+ dw RocketHideout1BattleText2 ; 0x4ca1 TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt2 ; 0x4cab TextAfterBattle
+ dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle
+ dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle
+
+RocketHideout1TrainerHeader2: ; 44c2e (11:4c2e)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d815 ; flag's byte
+ dw RocketHideout1BattleText3 ; 0x4cb0 TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt3 ; 0x4cba TextAfterBattle
+ dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle
+ dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle
+
+RocketHideout1TrainerHeader3: ; 44c3a (11:4c3a)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d815 ; flag's byte
+ dw RocketHideout1BattleText4 ; 0x4cbf TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt4 ; 0x4cc9 TextAfterBattle
+ dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle
+ dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle
+
+RocketHideout1TrainerHeader4: ; 44c46 (11:4c46)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d815 ; flag's byte
+ dw RocketHideout1BattleText5 ; 0x4cce TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt5 ; 0x4cd8 TextAfterBattle
+ dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle
+ dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle
+
+RocketHideout1TrainerHeader5: ; 44c52 (11:4c52)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d815 ; flag's byte
+ dw RocketHideout1BattleText6 ; 0x4cdd TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt6 ; 0x4ce2 TextAfterBattle
+ dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle
+ dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle
+
+ db $ff
+
+RocketHideout1Text1: ; 44c5f (11:4c5f)
+ db $08 ; asm
+ ld hl, RocketHideout1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text2: ; 44c69 (11:4c69)
+ db $08 ; asm
+ ld hl, RocketHideout1TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text3: ; 44c73 (11:4c73)
+ db $08 ; asm
+ ld hl, RocketHideout1TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text4: ; 44c7d (11:4c7d)
+ db $08 ; asm
+ ld hl, RocketHideout1TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text5: ; 44c87 (11:4c87)
+ db $08 ; asm
+ ld hl, RocketHideout1TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1EndBattleText6: ; 44c91 (11:4c91)
+ TX_FAR _RocketHideout1EndBattleText6
+ db $8
+ ld hl, $d815
+ set 5, [hl]
+ ld hl, RocketHideout1Text_44c9f
+ ret
+
+RocketHideout1Text_44c9f: ; 44c9f (11:4c9f)
+ db $6, "@"
+
+RocketHideout1BattleText2: ; 44ca1 (11:4ca1)
+ TX_FAR _RocketHideout1BattleText2
+ db "@"
+
+RocketHideout1EndBattleText2: ; 44ca6 (11:4ca6)
+ TX_FAR _RocketHideout1EndBattleText2
+ db "@"
+
+RocketHideout1AfterBattleTxt2: ; 44cab (11:4cab)
+ TX_FAR _RocketHideout1AfterBattleTxt2
+ db "@"
+
+RocketHideout1BattleText3: ; 44cb0 (11:4cb0)
+ TX_FAR _RocketHideout1BattleText3
+ db "@"
+
+RocketHideout1EndBattleText3: ; 44cb5 (11:4cb5)
+ TX_FAR _RocketHideout1EndBattleText3
+ db "@"
+
+RocketHideout1AfterBattleTxt3: ; 44cba (11:4cba)
+ TX_FAR _RocketHideout1AfterBattleTxt3
+ db "@"
+
+RocketHideout1BattleText4: ; 44cbf (11:4cbf)
+ TX_FAR _RocketHideout1BattleText4
+ db "@"
+
+RocketHideout1EndBattleText4: ; 44cc4 (11:4cc4)
+ TX_FAR _RocketHideout1EndBattleText4
+ db "@"
+
+RocketHideout1AfterBattleTxt4: ; 44cc9 (11:4cc9)
+ TX_FAR _RocketHideout1AfterBattleTxt4
+ db "@"
+
+RocketHideout1BattleText5: ; 44cce (11:4cce)
+ TX_FAR _RocketHideout1BattleText5
+ db "@"
+
+RocketHideout1EndBattleText5: ; 44cd3 (11:4cd3)
+ TX_FAR _RocketHideout1EndBattleText5
+ db "@"
+
+RocketHideout1AfterBattleTxt5: ; 44cd8 (11:4cd8)
+ TX_FAR _RocketHideout1AfterBattleTxt5
+ db "@"
+
+RocketHideout1BattleText6: ; 44cdd (11:4cdd)
+ TX_FAR _RocketHideout1BattleText6
+ db "@"
+
+RocketHideout1AfterBattleTxt6: ; 44ce2 (11:4ce2)
+ TX_FAR _RocketHideout1AfterBattleTxt6
+ db "@"
diff --git a/scripts/rockethideout2.asm b/scripts/rockethideout2.asm
new file mode 100755
index 00000000..ac427373
--- /dev/null
+++ b/scripts/rockethideout2.asm
@@ -0,0 +1,501 @@
+RocketHideout2Script: ; 44e27 (11:4e27)
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout2TrainerHeaders
+ ld de, RocketHideout2ScriptPointers
+ ld a, [W_ROCKETHIDEOUT2CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROCKETHIDEOUT2CURSCRIPT], a
+ ret
+
+RocketHideout2ScriptPointers: ; 44e3a (11:4e3a)
+ dw RocketHideout2Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw RocketHideout2Script3
+
+RocketHideout2Script0: ; 44e42 (11:4e42)
+ ld a, [W_YCOORD]
+ ld b, a
+ ld a, [W_XCOORD]
+ ld c, a
+ ld hl, RocketHideout2ArrowTilePlayerMovement
+ call Func_3442
+ cp $ff
+ jp z, CheckFightingMapTrainers
+ ld hl, $d736
+ set 7, [hl]
+ call Func_3486
+ ld a, (SFX_02_52 - SFX_Headers_02) / 3
+ call PlaySound
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $3
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+;format:
+;db y,x
+;dw pointer to movement
+RocketHideout2ArrowTilePlayerMovement: ; 44e6d (11:4e6d)
+ db $9,$4
+ dw RocketHideout2ArrowMovement1
+ db $b,$4
+ dw RocketHideout2ArrowMovement2
+ db $f,$4
+ dw RocketHideout2ArrowMovement3
+ db $10,$4
+ dw RocketHideout2ArrowMovement4
+ db $13,$4
+ dw RocketHideout2ArrowMovement1
+ db $16,$4
+ dw RocketHideout2ArrowMovement5
+ db $e,$5
+ dw RocketHideout2ArrowMovement6
+ db $16,$6
+ dw RocketHideout2ArrowMovement7
+ db $18,$6
+ dw RocketHideout2ArrowMovement8
+ db $9,$8
+ dw RocketHideout2ArrowMovement9
+ db $c,$8
+ dw RocketHideout2ArrowMovement10
+ db $f,$8
+ dw RocketHideout2ArrowMovement8
+ db $13,$8
+ dw RocketHideout2ArrowMovement9
+ db $17,$8
+ dw RocketHideout2ArrowMovement11
+ db $e,$9
+ dw RocketHideout2ArrowMovement12
+ db $16,$9
+ dw RocketHideout2ArrowMovement12
+ db $9,$a
+ dw RocketHideout2ArrowMovement13
+ db $a,$a
+ dw RocketHideout2ArrowMovement14
+ db $f,$a
+ dw RocketHideout2ArrowMovement15
+ db $11,$a
+ dw RocketHideout2ArrowMovement16
+ db $13,$a
+ dw RocketHideout2ArrowMovement17
+ db $19,$a
+ dw RocketHideout2ArrowMovement2
+ db $e,$b
+ dw RocketHideout2ArrowMovement18
+ db $10,$b
+ dw RocketHideout2ArrowMovement19
+ db $12,$b
+ dw RocketHideout2ArrowMovement12
+ db $9,$c
+ dw RocketHideout2ArrowMovement20
+ db $b,$c
+ dw RocketHideout2ArrowMovement21
+ db $d,$c
+ dw RocketHideout2ArrowMovement22
+ db $11,$c
+ dw RocketHideout2ArrowMovement23
+ db $a,$d
+ dw RocketHideout2ArrowMovement24
+ db $c,$d
+ dw RocketHideout2ArrowMovement25
+ db $10,$d
+ dw RocketHideout2ArrowMovement26
+ db $12,$d
+ dw RocketHideout2ArrowMovement27
+ db $13,$d
+ dw RocketHideout2ArrowMovement28
+ db $16,$d
+ dw RocketHideout2ArrowMovement29
+ db $17,$d
+ dw RocketHideout2ArrowMovement30
+ db $11,$e
+ dw RocketHideout2ArrowMovement31
+ db $10,$f
+ dw RocketHideout2ArrowMovement12
+ db $e,$10
+ dw RocketHideout2ArrowMovement32
+ db $10,$10
+ dw RocketHideout2ArrowMovement33
+ db $12,$10
+ dw RocketHideout2ArrowMovement34
+ db $a,$11
+ dw RocketHideout2ArrowMovement35
+ db $b,$11
+ dw RocketHideout2ArrowMovement36
+ db $FF
+
+;format: direction, count
+;right: $10
+;left: $20
+;up: $40
+;down: $80
+;each list is read starting from the $FF and working backwards
+RocketHideout2ArrowMovement1: ; 44f1a (11:4f1a)
+ db $20,$02
+ db $FF
+
+RocketHideout2ArrowMovement2: ; 44f1d (11:4f1d)
+ db $10,$04
+ db $FF
+
+RocketHideout2ArrowMovement3: ; 44f20 (11:4f20)
+ db $40,$04
+ db $10,$04
+ db $FF
+
+RocketHideout2ArrowMovement4: ; 44f25 (11:4f25)
+ db $40,$04
+ db $10,$04
+ db $40,$01
+ db $FF
+
+RocketHideout2ArrowMovement5: ; 44f2c (11:4f2c)
+ db $20,$02
+ db $40,$03
+ db $FF
+
+RocketHideout2ArrowMovement6: ; 44f31 (11:4f31)
+ db $80,$02
+ db $10,$04
+ db $FF
+
+RocketHideout2ArrowMovement7: ; 44f36 (11:4f36)
+ db $40,$02
+ db $FF
+
+RocketHideout2ArrowMovement8: ; 44f39 (11:4f39)
+ db $40,$04
+ db $FF
+
+RocketHideout2ArrowMovement9: ; 44f3c (11:4f3c)
+ db $20,$06
+ db $FF
+
+RocketHideout2ArrowMovement10: ; 44f3f (11:4f3f)
+ db $40,$01
+ db $FF
+
+RocketHideout2ArrowMovement11: ; 44f42 (11:4f42)
+ db $20,$06
+ db $40,$04
+ db $FF
+
+RocketHideout2ArrowMovement12: ; 44f47 (11:4f47)
+ db $80,$02
+ db $FF
+
+RocketHideout2ArrowMovement13: ; 44f4a (11:4f4a)
+ db $20,$08
+ db $FF
+
+RocketHideout2ArrowMovement14: ; 44f4d (11:4f4d)
+ db $20,$08
+ db $40,$01
+ db $FF
+
+RocketHideout2ArrowMovement15: ; 44f52 (11:4f52)
+ db $20,$08
+ db $40,$06
+ db $FF
+
+RocketHideout2ArrowMovement16: ; 44f57 (11:4f57)
+ db $40,$02
+ db $10,$04
+ db $FF
+
+RocketHideout2ArrowMovement17: ; 44f5c (11:4f5c)
+ db $40,$02
+ db $10,$04
+ db $40,$02
+ db $FF
+
+RocketHideout2ArrowMovement18: ; 44f63 (11:4f63)
+ db $80,$02
+ db $10,$04
+ db $80,$02
+ db $FF
+
+RocketHideout2ArrowMovement19: ; 44f6a (11:4f6a)
+ db $80,$02
+ db $10,$04
+ db $FF
+
+RocketHideout2ArrowMovement20: ; 44f6f (11:4f6f)
+ db $20,$0A
+ db $FF
+
+RocketHideout2ArrowMovement21: ; 44f72 (11:4f72)
+ db $20,$0A
+ db $40,$02
+ db $FF
+
+RocketHideout2ArrowMovement22: ; 44f77 (11:4f77)
+ db $20,$0A
+ db $40,$04
+ db $FF
+
+RocketHideout2ArrowMovement23: ; 44f7c (11:4f7c)
+ db $40,$02
+ db $10,$02
+ db $FF
+
+RocketHideout2ArrowMovement24: ; 44f81 (11:4f81)
+ db $10,$01
+ db $80,$02
+ db $FF
+
+RocketHideout2ArrowMovement25: ; 44f86 (11:4f86)
+ db $10,$01
+ db $FF
+
+RocketHideout2ArrowMovement26: ; 44f89 (11:4f89)
+ db $80,$02
+ db $10,$02
+ db $FF
+
+RocketHideout2ArrowMovement27: ; 44f8e (11:4f8e)
+ db $80,$02
+ db $20,$02
+ db $FF
+
+RocketHideout2ArrowMovement28: ; 44f93 (11:4f93)
+ db $40,$02
+ db $10,$04
+ db $40,$02
+ db $20,$03
+ db $FF
+
+RocketHideout2ArrowMovement29: ; 44f9c (11:4f9c)
+ db $80,$02
+ db $20,$04
+ db $FF
+
+RocketHideout2ArrowMovement30: ; 44fa1 (11:4fa1)
+ db $20,$06
+ db $40,$04
+ db $20,$05
+ db $FF
+
+RocketHideout2ArrowMovement31: ; 44fa8 (11:4fa8)
+ db $40,$02
+ db $FF
+
+RocketHideout2ArrowMovement32: ; 44fab (11:4fab)
+ db $40,$01
+ db $FF
+
+RocketHideout2ArrowMovement33: ; 44fae (11:4fae)
+ db $40,$03
+ db $FF
+
+RocketHideout2ArrowMovement34: ; 44fb1 (11:4fb1)
+ db $40,$05
+ db $FF
+
+RocketHideout2ArrowMovement35: ; 44fb4 (11:4fb4)
+ db $10,$01
+ db $80,$02
+ db $20,$04
+ db $FF
+
+RocketHideout2ArrowMovement36: ; 44fbb (11:4fbb)
+ db $20,$0A
+ db $40,$02
+ db $20,$05
+ db $FF
+
+RocketHideout2Script3: ; 44fc2 (11:4fc2)
+ ld a, [$cd38]
+ and a
+ jr nz, LoadSpinnerArrowTiles
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d736
+ res 7, [hl]
+ ld a, $0
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+LoadSpinnerArrowTiles: ; 44fd7 (11:4fd7)
+ ld a, [$c102]
+ srl a
+ srl a
+ ld hl, SpinnerPlayerFacingDirections ; $5083
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hl]
+ ld [$c102], a
+ ld a, [W_CURMAPTILESET] ; $d367
+ cp FACILITY
+ ld hl, SpinnerArrowTilePointers1 ; $5023
+ jr z, .asm_44ff6
+ ld hl, SpinnerArrowTilePointers2 ; $5053
+.asm_44ff6
+ ld a, [$cd38]
+ bit 0, a
+ jr nz, .asm_45001
+ ld de, $18
+ add hl, de
+.asm_45001
+ ld a, $4
+ ld bc, $0
+.asm_45006
+ push af
+ push hl
+ push bc
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call CopyVideoData
+ pop bc
+ ld a, $6
+ add c
+ ld c, a
+ pop hl
+ pop af
+ dec a
+ jr nz, .asm_45006
+ ret
+
+SpinnerArrowTilePointers1: ; 45023 (11:5023)
+ dw SpinnerArrowAnimTiles ;address from within tileset graphics
+ db 1 ;number of tiles to copy?
+ db BANK(SpinnerArrowAnimTiles) ;bank of tileset graphics
+ dw $9200 ;where to load in VRAM
+
+ dw SpinnerArrowAnimTiles + $10
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $9210
+
+ dw SpinnerArrowAnimTiles + $20
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $9300
+
+ dw SpinnerArrowAnimTiles + $30
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $9310
+
+ dw Facility_GFX + $200
+ db 1
+ db BANK(Facility_GFX)
+ dw $9200
+
+ dw Facility_GFX + $210
+ db 1
+ db BANK(Facility_GFX)
+ dw $9210
+
+ dw Facility_GFX + $300
+ db 1
+ db BANK(Facility_GFX)
+ dw $9300
+
+ dw Facility_GFX + $310
+ db 1
+ db BANK(Facility_GFX)
+ dw $9310
+
+SpinnerArrowTilePointers2: ; 45053 (11:5053)
+ dw SpinnerArrowAnimTiles + $10
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $93C0
+
+ dw SpinnerArrowAnimTiles + $30
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $93D0
+
+ dw SpinnerArrowAnimTiles
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $94C0
+
+ dw SpinnerArrowAnimTiles + $20
+ db 1
+ db BANK(SpinnerArrowAnimTiles)
+ dw $94D0
+
+ dw Gym_GFX + $3C0
+ db 1
+ db BANK(Facility_GFX)
+ dw $93C0
+
+ dw Gym_GFX + $3D0
+ db 1
+ db BANK(Facility_GFX)
+ dw $93D0
+
+ dw Gym_GFX + $4C0
+ db 1
+ db BANK(Facility_GFX)
+ dw $94C0
+
+ dw Gym_GFX + $4D0
+ db 1
+ db BANK(Facility_GFX)
+ dw $94D0
+
+SpinnerPlayerFacingDirections: ; 45083 (11:5083)
+; This isn't the order of the facing directions. Rather, it's a list of
+; the facing directions that come next. For example, when the player is
+; facing down (00), the next facing direction is left (08).
+ db $08 ; down -> left
+ db $0C ; up -> right
+ db $04 ; left -> up
+ db $00 ; right -> down
+
+; these tiles are the animation for the tiles that push the player in dungeons like Rocket HQ
+SpinnerArrowAnimTiles: ; 45087 (11:5087)
+ INCBIN "gfx/spinner_arrow.2bpp"
+
+RocketHideout2TextPointers: ; 450c7 (11:50c7)
+ dw RocketHideout2Text1
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+
+RocketHideout2TrainerHeaders: ; 450d1 (11:50d1)
+RocketHideout2TrainerHeader0: ; 450d1 (11:50d1)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d817 ; flag's byte
+ dw RocketHideout2BattleText2 ; 0x50e8 TextBeforeBattle
+ dw RocketHideout2AfterBattleTxt2 ; 0x50f2 TextAfterBattle
+ dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle
+ dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle
+
+ db $ff
+
+RocketHideout2Text1: ; 450de (11:50de)
+ db $08 ; asm
+ ld hl, RocketHideout2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout2BattleText2: ; 450e8 (11:50e8)
+ TX_FAR _RocketHideout2BattleText2
+ db "@"
+
+RocketHideout2EndBattleText2: ; 450ed (11:50ed)
+ TX_FAR _RocketHideout2EndBattleText2
+ db "@"
+
+RocketHideout2AfterBattleTxt2: ; 450f2 (11:50f2)
+ TX_FAR _RocketHideout2AfterBattleTxt2
+ db "@"
diff --git a/scripts/rockethideout3.asm b/scripts/rockethideout3.asm
new file mode 100755
index 00000000..d9e1d077
--- /dev/null
+++ b/scripts/rockethideout3.asm
@@ -0,0 +1,211 @@
+RocketHideout3Script: ; 45225 (11:5225)
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout3TrainerHeaders
+ ld de, RocketHideout3ScriptPointers
+ ld a, [W_ROCKETHIDEOUT3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROCKETHIDEOUT3CURSCRIPT], a
+ ret
+
+RocketHideout3ScriptPointers: ; 45238 (11:5238)
+ dw RocketHideout3Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw RocketHideout3Script3
+
+RocketHideout3Script0: ; 45240 (11:5240)
+ ld a, [W_YCOORD]
+ ld b, a
+ ld a, [W_XCOORD]
+ ld c, a
+ ld hl, RocketHideout3ArrowTilePlayerMovement
+ call Func_3442
+ cp $ff
+ jp z, CheckFightingMapTrainers
+ ld hl, $d736
+ set 7, [hl]
+ call Func_3486
+ ld a, (SFX_02_52 - SFX_Headers_02) / 3
+ call PlaySound
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $3
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+;format:
+;db y,x
+;dw pointer to movement
+RocketHideout3ArrowTilePlayerMovement: ; 4526b (11:526b)
+ db $d,$a
+ dw RocketHideout3ArrowMovement6
+ db $13,$a
+ dw RocketHideout3ArrowMovement1
+ db $12,$b
+ dw RocketHideout3ArrowMovement2
+ db $b,$c
+ dw RocketHideout3ArrowMovement3
+ db $11,$c
+ dw RocketHideout3ArrowMovement4
+ db $14,$c
+ dw RocketHideout3ArrowMovement5
+ db $10,$d
+ dw RocketHideout3ArrowMovement6
+ db $b,$e
+ dw RocketHideout3ArrowMovement7
+ db $f,$e
+ dw RocketHideout3ArrowMovement6
+ db $11,$e
+ dw RocketHideout3ArrowMovement8
+ db $13,$e
+ dw RocketHideout3ArrowMovement9
+ db $10,$f
+ dw RocketHideout3ArrowMovement7
+ db $12,$f
+ dw RocketHideout3ArrowMovement10
+ db $d,$10
+ dw RocketHideout3ArrowMovement11
+ db $c,$11
+ dw RocketHideout3ArrowMovement10
+ db $10,$12
+ dw RocketHideout3ArrowMovement12
+ db $FF
+
+;format: direction, count
+;right: $10
+;left: $20
+;up: $40
+;down: $80
+;each list is read starting from the $FF and working backwards
+RocketHideout3ArrowMovement1: ; 452ac (11:52ac)
+ db $10,$04
+ db $40,$04
+ db $10,$04
+ db $FF
+
+RocketHideout3ArrowMovement2: ; 452b3 (11:52b3)
+ db $80,$04
+ db $10,$04
+ db $FF
+
+RocketHideout3ArrowMovement3: ; 452b8 (11:52b8)
+ db $20,$02
+ db $FF
+
+RocketHideout3ArrowMovement4: ; 452bb (11:52bb)
+ db $10,$04
+ db $40,$02
+ db $10,$02
+ db $FF
+
+RocketHideout3ArrowMovement5: ; 452c2 (11:52c2)
+ db $10,$04
+ db $40,$02
+ db $10,$02
+ db $40,$03
+ db $FF
+
+RocketHideout3ArrowMovement6: ; 452cb (11:52cb)
+ db $10,$04
+ db $FF
+
+RocketHideout3ArrowMovement7: ; 452ce (11:52ce)
+ db $10,$02
+ db $FF
+
+RocketHideout3ArrowMovement8: ; 452d1 (11:52d1)
+ db $10,$04
+ db $40,$02
+ db $FF
+
+RocketHideout3ArrowMovement9: ; 452d6 (11:52d6)
+ db $10,$04
+ db $40,$04
+ db $FF
+
+RocketHideout3ArrowMovement10: ; 452db (11:52db)
+ db $80,$04
+ db $FF
+
+RocketHideout3ArrowMovement11: ; 452de (11:52de)
+ db $40,$02
+ db $FF
+
+RocketHideout3ArrowMovement12: ; 452e1 (11:52e1)
+ db $40,$01
+ db $FF
+
+RocketHideout3Script3 ; 452e4 (11:452e4)
+ ld a, [$cd38]
+ and a
+ jp nz, LoadSpinnerArrowTiles
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d736
+ res 7, [hl]
+ ld a, $0
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+RocketHideout3TextPointers: ; 452fa (11:52fa)
+ dw RocketHideout3Text1
+ dw RocketHideout3Text2
+ dw Predef5CText
+ dw Predef5CText
+
+RocketHideout3TrainerHeaders: ; 45302 (11:5302)
+RocketHideout3TrainerHeader0: ; 45302 (11:5302)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d819 ; flag's byte
+ dw RocketHideout3BattleText2 ; 0x5325 TextBeforeBattle
+ dw RocketHideout3AfterBattleTxt2 ; 0x532f TextAfterBattle
+ dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle
+ dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle
+
+RocketHideout3TrainerHeader2: ; 4530e (11:530e)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d819 ; flag's byte
+ dw RocketHideout3BattleTxt ; 0x533e TextBeforeBattle
+ dw RocketHideout3AfterBattleText3 ; 0x5348 TextAfterBattle
+ dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle
+ dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle
+
+ db $ff
+
+RocketHideout3Text1: ; 4531b (11:531b)
+ db $08 ; asm
+ ld hl, RocketHideout3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout3BattleText2: ; 45325 (11:5325)
+ TX_FAR _RocketHideout3BattleText2
+ db "@"
+
+RocketHideout3EndBattleText2: ; 4532a (11:532a)
+ TX_FAR _RocketHideout3EndBattleText2
+ db "@"
+
+RocketHideout3AfterBattleTxt2: ; 4532f (11:532f)
+ TX_FAR _RocketHideout3AfterBattleTxt2
+ db "@"
+
+RocketHideout3Text2: ; 45334 (11:5334)
+ db $08 ; asm
+ ld hl, RocketHideout3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout3BattleTxt: ; 4533e (11:533e)
+ TX_FAR _RocketHideout3BattleTxt
+ db "@"
+
+RocketHideout3EndBattleText3: ; 45343 (11:5343)
+ TX_FAR _RocketHideout3EndBattleText3
+ db "@"
+
+RocketHideout3AfterBattleText3: ; 45348 (11:5348)
+ TX_FAR _RocketHide3AfterBattleText3
+ db "@"
diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm
new file mode 100755
index 00000000..5e245e8d
--- /dev/null
+++ b/scripts/rockethideout4.asm
@@ -0,0 +1,232 @@
+RocketHideout4Script: ; 4545d (11:545d)
+ call RocketHideout4Script_45473
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout4TrainerHeader0
+ ld de, RocketHideout4ScriptPointers
+ ld a, [W_ROCKETHIDEOUT4CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROCKETHIDEOUT4CURSCRIPT], a
+ ret
+
+RocketHideout4Script_45473: ; 45473 (11:5473)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld a, [$d81b]
+ bit 5, a
+ jr nz, .asm_45496
+ and $c
+ cp $c
+ jr z, .asm_4548c
+ ld a, $2d
+ jr .asm_45498
+.asm_4548c
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ ld hl, $d81b
+ set 5, [hl]
+.asm_45496
+ ld a, $e
+.asm_45498
+ ld [$d09f], a
+ ld bc, $050c
+ ld a, $17
+ jp Predef
+
+RocketHideout4Script_454a3: ; 454a3 (11:54a3)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROCKETHIDEOUT4CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+RocketHideout4ScriptPointers: ; 454ae (11:54ae)c
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw RocketHideout4Script3
+
+RocketHideout4Script3: ; 454b6 (11:54b6)
+ ld a, [W_ISINBATTLE]
+ cp $ff
+ jp z, RocketHideout4Script_454a3
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d81b
+ set 7, [hl]
+ ld a, $a
+ ld [H_SPRITEHEIGHT], a
+ call DisplayTextID
+ call GBFadeIn1
+ ld a, $83
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $87
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ call UpdateSprites
+ call GBFadeOut1
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d126
+ set 5, [hl]
+ ld a, $0
+ ld [W_ROCKETHIDEOUT4CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+RocketHideout4TextPointers: ; 45501 (11:5501)
+ dw RocketHideout4Text1
+ dw RocketHideout4Text2
+ dw RocketHideout4Text3
+ dw RocketHideout4Text4
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw RocketHideout4Text10
+
+RocketHideout4TrainerHeaders: ; 45515 (11:5515)
+RocketHideout4TrainerHeader0: ; 45515 (11:5515)
+ db $2 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d81b ; flag's byte
+ dw RocketHideout4BattleText2 ; 0x5593 TextBeforeBattle
+ dw RocketHideout4AfterBattleText2 ; 0x559d TextAfterBattle
+ dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle
+ dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle
+
+RocketHideout4TrainerHeader2: ; 45521 (11:5521)
+ db $3 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d81b ; flag's byte
+ dw RocketHideout4BattleText3 ; 0x55ac TextBeforeBattle
+ dw RocketHideout4AfterBattleText3 ; 0x55b6 TextAfterBattle
+ dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle
+ dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle
+
+RocketHideout4TrainerHeader3: ; 4552d (11:552d)
+ db $4 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d81b ; flag's byte
+ dw RocketHideout4BattleText4 ; 0x55c5 TextBeforeBattle
+ dw RocketHideout4AfterBattleText4 ; 0x55cf TextAfterBattle
+ dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle
+ dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle
+
+ db $ff
+
+RocketHideout4Text1: ; 4553a (11:553a)
+ db $08 ; asm
+ ld a, [$d81b]
+ bit 7, a
+ jp nz, .asm_545571
+ ld hl, RocketHideout4Text_4557a
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, RocketHideout4Text_4557f
+ ld de, RocketHideout4Text_4557f
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ldh [$b4], a
+ ld a, $3
+ ld [W_ROCKETHIDEOUT4CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jr .asm_209f0 ; 0x4556f
+.asm_545571
+ ld hl, RocketHideout4Text10
+ call PrintText
+.asm_209f0 ; 0x45577
+ jp TextScriptEnd
+
+RocketHideout4Text_4557a: ; 4557a (11:557a)
+ TX_FAR _RocketHideout4Text_4557a
+ db "@"
+
+RocketHideout4Text_4557f: ; 4557f (11:557f)
+ TX_FAR _RocketHideout4Text_4557f
+ db "@"
+
+RocketHideout4Text10: ; 45584 (11:5584)
+ TX_FAR _RocketHideout4Text_45584
+ db "@"
+
+RocketHideout4Text2: ; 45589 (11:5589)
+ db $08 ; asm
+ ld hl, RocketHideout4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout4BattleText2: ; 45593 (11:5593)
+ TX_FAR _RocketHideout4BattleText2
+ db "@"
+
+RocketHideout4EndBattleText2: ; 45598 (11:5598)
+ TX_FAR _RocketHideout4EndBattleText2
+ db "@"
+
+RocketHideout4AfterBattleText2: ; 4559d (11:559d)
+ TX_FAR _RocketHide4AfterBattleText2
+ db "@"
+
+RocketHideout4Text3: ; 455a2 (11:55a2)
+ db $08 ; asm
+ ld hl, RocketHideout4TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout4BattleText3: ; 455ac (11:55ac)
+ TX_FAR _RocketHideout4BattleText3
+ db "@"
+
+RocketHideout4EndBattleText3: ; 455b1 (11:55b1)
+ TX_FAR _RocketHideout4EndBattleText3
+ db "@"
+
+RocketHideout4AfterBattleText3: ; 455b6 (11:55b6)
+ TX_FAR _RocketHide4AfterBattleText3
+ db "@"
+
+RocketHideout4Text4: ; 455bb (11:55bb)
+ db $08 ; asm
+ ld hl, RocketHideout4TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout4BattleText4: ; 455c5 (11:55c5)
+ TX_FAR _RocketHideout4BattleText4
+ db "@"
+
+RocketHideout4EndBattleText4: ; 455ca (11:55ca)
+ TX_FAR _RocketHideout4EndBattleText4
+ db "@"
+
+RocketHideout4AfterBattleText4: ; 455cf (11:55cf)
+ db $8
+ ld hl, RocketHideout4Text_455ec ; $55ec
+ call PrintText
+ ld hl, $d81b
+ bit 6, [hl]
+ set 6, [hl]
+ jr nz, .asm_455e9 ; 0x455dd $a
+ ld a, $88
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+.asm_455e9
+ jp TextScriptEnd
+
+RocketHideout4Text_455ec: ; 455ec (11:55ec)
+ TX_FAR _RocketHideout4Text_455ec
+ db "@"
diff --git a/scripts/rockethideoutelevator.asm b/scripts/rockethideoutelevator.asm
new file mode 100755
index 00000000..57e62177
--- /dev/null
+++ b/scripts/rockethideoutelevator.asm
@@ -0,0 +1,82 @@
+RocketHideoutElevatorScript: ; 45710 (11:5710)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, RocketHideoutElevatorScript_4572c
+ pop hl
+ bit 7, [hl]
+ res 7, [hl]
+ call nz, RocketHideoutElevatorScript_4575f
+ xor a
+ ld [$cf0c], a
+ inc a
+ ld [$cc3c], a
+ ret
+
+RocketHideoutElevatorScript_4572c: ; 4572c (11:572c)
+ ld hl, $d3af
+ ld a, [$d73b]
+ ld b, a
+ ld a, [$d73c]
+ ld c, a
+ call RocketHideoutElevatorScript_4573a
+
+RocketHideoutElevatorScript_4573a: ; 4573a (11:573a)
+ inc hl
+ inc hl
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ret
+
+RocketHideoutElevatorScript_45741: ; 45741 (11:5741)
+ ld hl, RocketHideoutElavatorFloors ; $5754
+ call LoadItemList
+ ld hl, RocketHideoutElevatorWarpMaps ; $5759
+ ld de, $cc5b
+ ld bc, $0006
+ call CopyData
+ ret
+
+RocketHideoutElavatorFloors: ; 45754 (11:5754)
+ db $03 ; num elements in list
+ db $55, $54, $61 ; "B1F", "B2F", "B4F"
+ db $FF ; terminator
+
+RocketHideoutElevatorWarpMaps: ; 45759 (11:5759)
+; first byte is warp number
+; second byte is map number
+; These specify where the player goes after getting out of the elevator.
+ db $04, ROCKET_HIDEOUT_1
+ db $04, ROCKET_HIDEOUT_2
+ db $02, ROCKET_HIDEOUT_4
+
+RocketHideoutElevatorScript_4575f: ; 4575f (11:575f)
+ call Delay3
+ callba ShakeElevator
+ ret
+
+RocketHideoutElevatorTextPointers: ; 4576b (11:576b)
+ dw RocketHideoutElevatorText1
+
+RocketHideoutElevatorText1: ; 4576d (11:576d)
+ db $08 ; asm
+ ld b, LIFT_KEY
+ call IsItemInBag
+ jr z, .asm_8d8f0 ; 0x45773
+ call RocketHideoutElevatorScript_45741
+ ld hl, RocketHideoutElevatorWarpMaps ; $5759
+ ld a, $61
+ call Predef
+ jr .asm_46c43 ; 0x45780
+.asm_8d8f0 ; 0x45782
+ ld hl, RocketHideoutElevatorText_4578b
+ call PrintText
+.asm_46c43 ; 0x45788
+ jp TextScriptEnd
+
+RocketHideoutElevatorText_4578b: ; 4578b (11:578b)
+ TX_FAR _RocketElevatorText_4578b ; 0x82438
+ db $d, "@"
diff --git a/scripts/rocktunnel1.asm b/scripts/rocktunnel1.asm
new file mode 100755
index 00000000..be49e494
--- /dev/null
+++ b/scripts/rocktunnel1.asm
@@ -0,0 +1,214 @@
+RockTunnel1Script: ; 444dc (11:44dc)
+ call EnableAutoTextBoxDrawing
+ ld hl, RockTunnel1TrainerHeaders
+ ld de, RockTunnel1ScriptPointers
+ ld a, [W_ROCKTUNNEL1CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROCKTUNNEL1CURSCRIPT], a
+ ret
+
+RockTunnel1ScriptPointers: ; 444ef (11:44ef)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+RockTunnel1TextPointers: ; 444f5 (11:44f5)
+ dw RockTunnel1Text1
+ dw RockTunnel1Text2
+ dw RockTunnel1Text3
+ dw RockTunnel1Text4
+ dw RockTunnel1Text5
+ dw RockTunnel1Text6
+ dw RockTunnel1Text7
+ dw RockTunnel1Text8
+
+RockTunnel1TrainerHeaders: ; 44505 (11:4505)
+RockTunnel1TrainerHeader1: ; 44505 (11:4505)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText1 ; 0x4588 TextBeforeBattle
+ dw RockTunnel1AfterBattleText1 ; 0x4592 TextAfterBattle
+ dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle
+ dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle
+
+RockTunnel1TrainerHeader2: ; 44511 (11:4511)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText2 ; 0x4597 TextBeforeBattle
+ dw RockTunnel1AfterBattleText2 ; 0x45a1 TextAfterBattle
+ dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle
+ dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle
+
+RockTunnel1TrainerHeader3: ; 4451d (11:451d)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText3 ; 0x45a6 TextBeforeBattle
+ dw RockTunnel1AfterBattleText3 ; 0x45b0 TextAfterBattle
+ dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle
+ dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle
+
+RockTunnel1TrainerHeader4: ; 44529 (11:4529)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText4 ; 0x45b5 TextBeforeBattle
+ dw RockTunnel1AfterBattleText4 ; 0x45bf TextAfterBattle
+ dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle
+ dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle
+
+RockTunnel1TrainerHeader5: ; 44535 (11:4535)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText5 ; 0x45c4 TextBeforeBattle
+ dw RockTunnel1AfterBattleText5 ; 0x45ce TextAfterBattle
+ dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle
+ dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle
+
+RockTunnel1TrainerHeader6: ; 44541 (11:4541)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText6 ; 0x45d3 TextBeforeBattle
+ dw RockTunnel1AfterBattleText6 ; 0x45dd TextAfterBattle
+ dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle
+ dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle
+
+RockTunnel1TrainerHeader7: ; 4454d (11:454d)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d2 ; flag's byte
+ dw RockTunnel1BattleText7 ; 0x45e2 TextBeforeBattle
+ dw RockTunnel1AfterBattleText7 ; 0x45ec TextAfterBattle
+ dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle
+ dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle
+
+ db $ff
+
+RockTunnel1Text1: ; 4455a (11:455a)
+ db $8
+ ld hl, RockTunnel1TrainerHeader1 ; $4505
+ jr asm_0c916 ; 0x4455e $22
+
+RockTunnel1Text2: ; 44560 (11:4560)
+ db $8
+ ld hl, RockTunnel1TrainerHeader2 ; $4511
+ jr asm_0c916 ; 0x44564 $1c
+
+RockTunnel1Text3: ; 44566 (11:4566)
+ db $8
+ ld hl, RockTunnel1TrainerHeader3 ; $451d
+ jr asm_0c916 ; 0x4456a $16
+
+RockTunnel1Text4: ; 4456c (11:456c)
+ db $8
+ ld hl, RockTunnel1TrainerHeader4 ; $4529
+ jr asm_0c916 ; 0x44570 $10
+
+RockTunnel1Text5: ; 44572 (11:4572)
+ db $8
+ ld hl, RockTunnel1TrainerHeader5 ; $4535
+ jr asm_0c916 ; 0x44576 $a
+
+RockTunnel1Text6: ; 44578 (11:4578)
+ db $8
+ ld hl, RockTunnel1TrainerHeader6 ; $4541
+ jr asm_0c916 ; 0x4457c $4
+
+RockTunnel1Text7: ; 4457e (11:457e)
+ db $8
+ ld hl, RockTunnel1TrainerHeader7 ; $454d
+asm_0c916: ; 44582 (11:4582)
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel1BattleText1: ; 44588 (11:4588)
+ TX_FAR _RockTunnel1BattleText1
+ db "@"
+
+RockTunnel1EndBattleText1: ; 4458d (11:458d)
+ TX_FAR _RockTunnel1EndBattleText1
+ db "@"
+
+RockTunnel1AfterBattleText1: ; 44592 (11:4592)
+ TX_FAR _RockTunnel1AfterBattleText1
+ db "@"
+
+RockTunnel1BattleText2: ; 44597 (11:4597)
+ TX_FAR _RockTunnel1BattleText2
+ db "@"
+
+RockTunnel1EndBattleText2: ; 4459c (11:459c)
+ TX_FAR _RockTunnel1EndBattleText2
+ db "@"
+
+RockTunnel1AfterBattleText2: ; 445a1 (11:45a1)
+ TX_FAR _RockTunnel1AfterBattleText2
+ db "@"
+
+RockTunnel1BattleText3: ; 445a6 (11:45a6)
+ TX_FAR _RockTunnel1BattleText3
+ db "@"
+
+RockTunnel1EndBattleText3: ; 445ab (11:45ab)
+ TX_FAR _RockTunnel1EndBattleText3
+ db "@"
+
+RockTunnel1AfterBattleText3: ; 445b0 (11:45b0)
+ TX_FAR _RockTunnel1AfterBattleText3
+ db "@"
+
+RockTunnel1BattleText4: ; 445b5 (11:45b5)
+ TX_FAR _RockTunnel1BattleText4
+ db "@"
+
+RockTunnel1EndBattleText4: ; 445ba (11:45ba)
+ TX_FAR _RockTunnel1EndBattleText4
+ db "@"
+
+RockTunnel1AfterBattleText4: ; 445bf (11:45bf)
+ TX_FAR _RockTunnel1AfterBattleText4
+ db "@"
+
+RockTunnel1BattleText5: ; 445c4 (11:45c4)
+ TX_FAR _RockTunnel1BattleText5
+ db "@"
+
+RockTunnel1EndBattleText5: ; 445c9 (11:45c9)
+ TX_FAR _RockTunnel1EndBattleText5
+ db "@"
+
+RockTunnel1AfterBattleText5: ; 445ce (11:45ce)
+ TX_FAR _RockTunnel1AfterBattleText5
+ db "@"
+
+RockTunnel1BattleText6: ; 445d3 (11:45d3)
+ TX_FAR _RockTunnel1BattleText6
+ db "@"
+
+RockTunnel1EndBattleText6: ; 445d8 (11:45d8)
+ TX_FAR _RockTunnel1EndBattleText6
+ db "@"
+
+RockTunnel1AfterBattleText6: ; 445dd (11:45dd)
+ TX_FAR _RockTunnel1AfterBattleText6
+ db "@"
+
+RockTunnel1BattleText7: ; 445e2 (11:45e2)
+ TX_FAR _RockTunnel1BattleText7
+ db "@"
+
+RockTunnel1EndBattleText7: ; 445e7 (11:45e7)
+ TX_FAR _RockTunnel1EndBattleText7
+ db "@"
+
+RockTunnel1AfterBattleText7: ; 445ec (11:45ec)
+ TX_FAR _RockTunnel1AfterBattleText7
+ db "@"
+
+RockTunnel1Text8: ; 445f1 (11:45f1)
+ TX_FAR _RockTunnel1Text8
+ db "@"
diff --git a/scripts/rocktunnel2.asm b/scripts/rocktunnel2.asm
new file mode 100755
index 00000000..62f4fe18
--- /dev/null
+++ b/scripts/rocktunnel2.asm
@@ -0,0 +1,242 @@
+RockTunnel2Script: ; 45feb (11:5feb)
+ call EnableAutoTextBoxDrawing
+ ld hl, RockTunnel2TrainerHeaders
+ ld de, RockTunnel2ScriptPointers
+ ld a, [W_ROCKTUNNEL2CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROCKTUNNEL2CURSCRIPT], a
+ ret
+
+RockTunnel2ScriptPointers: ; 45ffe (11:5ffe)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+RockTunnel2TextPointers: ; 46004 (11:6004)
+ dw RockTunnel2Text1
+ dw RockTunnel2Text2
+ dw RockTunnel2Text3
+ dw RockTunnel2Text4
+ dw RockTunnel2Text5
+ dw RockTunnel2Text6
+ dw RockTunnel2Text7
+ dw RockTunnel2Text8
+
+RockTunnel2TrainerHeaders: ; 46014 (11:6014)
+RockTunnel2TrainerHeader0: ; 46014 (11:6014)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText2 ; 0x60c5 TextBeforeBattle
+ dw RockTunnel2AfterBattleText2 ; 0x60cf TextAfterBattle
+ dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle
+ dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle
+
+RockTunnel2TrainerHeader2: ; 46020 (11:6020)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText3 ; 0x60d4 TextBeforeBattle
+ dw RockTunnel2AfterBattleText3 ; 0x60de TextAfterBattle
+ dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle
+ dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle
+
+RockTunnel2TrainerHeader3: ; 4602c (11:602c)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText4 ; 0x60e3 TextBeforeBattle
+ dw RockTunnel2AfterBattleText4 ; 0x60ed TextAfterBattle
+ dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle
+ dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle
+
+RockTunnel2TrainerHeader4: ; 46038 (11:6038)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText5 ; 0x60f2 TextBeforeBattle
+ dw RockTunnel2AfterBattleText5 ; 0x60fc TextAfterBattle
+ dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle
+ dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle
+
+RockTunnel2TrainerHeader5: ; 46044 (11:6044)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText6 ; 0x6101 TextBeforeBattle
+ dw RockTunnel2AfterBattleText6 ; 0x610b TextAfterBattle
+ dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle
+ dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle
+
+RockTunnel2TrainerHeader6: ; 46050 (11:6050)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText7 ; 0x6110 TextBeforeBattle
+ dw RockTunnel2AfterBattleText7 ; 0x611a TextAfterBattle
+ dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle
+ dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle
+
+RockTunnel2TrainerHeader7: ; 4605c (11:605c)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText8 ; 0x611f TextBeforeBattle
+ dw RockTunnel2AfterBattleText8 ; 0x6129 TextAfterBattle
+ dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle
+ dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle
+
+RockTunnel2TrainerHeader8: ; 46068 (11:6068)
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d87d ; flag's byte
+ dw RockTunnel2BattleText9 ; 0x612e TextBeforeBattle
+ dw RockTunnel2AfterBattleText9 ; 0x6138 TextAfterBattle
+ dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle
+ dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle
+
+ db $ff
+
+RockTunnel2Text1: ; 46075 (11:6075)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text2: ; 4607f (11:607f)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text3: ; 46089 (11:6089)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text4: ; 46093 (11:6093)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text5: ; 4609d (11:609d)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text6: ; 460a7 (11:60a7)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text7: ; 460b1 (11:60b1)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text8: ; 460bb (11:60bb)
+ db $08 ; asm
+ ld hl, RockTunnel2TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2BattleText2: ; 460c5 (11:60c5)
+ TX_FAR _RockTunnel2BattleText2
+ db "@"
+
+RockTunnel2EndBattleText2: ; 460ca (11:60ca)
+ TX_FAR _RockTunnel2EndBattleText2
+ db "@"
+
+RockTunnel2AfterBattleText2: ; 460cf (11:60cf)
+ TX_FAR _RockTunnel2AfterBattleText2
+ db "@"
+
+RockTunnel2BattleText3: ; 460d4 (11:60d4)
+ TX_FAR _RockTunnel2BattleText3
+ db "@"
+
+RockTunnel2EndBattleText3: ; 460d9 (11:60d9)
+ TX_FAR _RockTunnel2EndBattleText3
+ db "@"
+
+RockTunnel2AfterBattleText3: ; 460de (11:60de)
+ TX_FAR _RockTunnel2AfterBattleText3
+ db "@"
+
+RockTunnel2BattleText4: ; 460e3 (11:60e3)
+ TX_FAR _RockTunnel2BattleText4
+ db "@"
+
+RockTunnel2EndBattleText4: ; 460e8 (11:60e8)
+ TX_FAR _RockTunnel2EndBattleText4
+ db "@"
+
+RockTunnel2AfterBattleText4: ; 460ed (11:60ed)
+ TX_FAR _RockTunnel2AfterBattleText4
+ db "@"
+
+RockTunnel2BattleText5: ; 460f2 (11:60f2)
+ TX_FAR _RockTunnel2BattleText5
+ db "@"
+
+RockTunnel2EndBattleText5: ; 460f7 (11:60f7)
+ TX_FAR _RockTunnel2EndBattleText5
+ db "@"
+
+RockTunnel2AfterBattleText5: ; 460fc (11:60fc)
+ TX_FAR _RockTunnel2AfterBattleText5
+ db "@"
+
+RockTunnel2BattleText6: ; 46101 (11:6101)
+ TX_FAR _RockTunnel2BattleText6
+ db "@"
+
+RockTunnel2EndBattleText6: ; 46106 (11:6106)
+ TX_FAR _RockTunnel2EndBattleText6
+ db "@"
+
+RockTunnel2AfterBattleText6: ; 4610b (11:610b)
+ TX_FAR _RockTunnel2AfterBattleText6
+ db "@"
+
+RockTunnel2BattleText7: ; 46110 (11:6110)
+ TX_FAR _RockTunnel2BattleText7
+ db "@"
+
+RockTunnel2EndBattleText7: ; 46115 (11:6115)
+ TX_FAR _RockTunnel2EndBattleText7
+ db "@"
+
+RockTunnel2AfterBattleText7: ; 4611a (11:611a)
+ TX_FAR _RockTunnel2AfterBattleText7
+ db "@"
+
+RockTunnel2BattleText8: ; 4611f (11:611f)
+ TX_FAR _RockTunnel2BattleText8
+ db "@"
+
+RockTunnel2EndBattleText8: ; 46124 (11:6124)
+ TX_FAR _RockTunnel2EndBattleText8
+ db "@"
+
+RockTunnel2AfterBattleText8: ; 46129 (11:6129)
+ TX_FAR _RockTunnel2AfterBattleText8
+ db "@"
+
+RockTunnel2BattleText9: ; 4612e (11:612e)
+ TX_FAR _RockTunnel2BattleText9
+ db "@"
+
+RockTunnel2EndBattleText9: ; 46133 (11:6133)
+ TX_FAR _RockTunnel2EndBattleText9
+ db "@"
+
+RockTunnel2AfterBattleText9: ; 46138 (11:6138)
+ TX_FAR _RockTunnel2AfterBattleText9
+ db "@"
diff --git a/scripts/rocktunnelpokecenter.asm b/scripts/rocktunnelpokecenter.asm
new file mode 100755
index 00000000..62336edc
--- /dev/null
+++ b/scripts/rocktunnelpokecenter.asm
@@ -0,0 +1,23 @@
+RockTunnelPokecenterScript: ; 493ba (12:53ba)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+RockTunnelPokecenterTextPointers: ; 493c0 (12:53c0)
+ dw RockTunnelPokecenterText1
+ dw RockTunnelPokecenterText2
+ dw RockTunnelPokecenterText3
+ dw RockTunnelPokecenterText4
+
+RockTunnelPokecenterText1: ; 493c8 (12:53c8)
+ db $ff
+
+RockTunnelPokecenterText2: ; 493c9 (12:53c9)
+ TX_FAR _RockTunnelPokecenterText1
+ db "@"
+
+RockTunnelPokecenterText3: ; 493ce (12:53ce)
+ TX_FAR _RockTunnelPokecenterText3
+ db "@"
+
+RockTunnelPokecenterText4: ; 493d3 (12:53d3)
+ db $f6
diff --git a/scripts/route1.asm b/scripts/route1.asm
new file mode 100755
index 00000000..1faf5a48
--- /dev/null
+++ b/scripts/route1.asm
@@ -0,0 +1,53 @@
+Route1Script: ; 1caaf (7:4aaf)
+ jp EnableAutoTextBoxDrawing
+
+Route1TextPointers: ; 1cab2 (7:4ab2)
+ dw Route1Text1
+ dw Route1Text2
+ dw Route1Text3
+
+Route1Text1: ; 1cab8 (7:4ab8)
+ db $08 ; asm
+ ld hl, $d7bf
+ bit 0, [hl]
+ set 0, [hl]
+ jr nz, .asm_02840 ; 0x1cac0
+ ld hl, Route1ViridianMartSampleText
+ call PrintText
+ ld bc, (POTION << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, Route1Text_1cae8 ; $4ae8
+ jr .asm_46d43 ; 0x1cad3
+.BagFull
+ ld hl, Route1Text_1caf3 ; $4af3
+ jr .asm_46d43 ; 0x1cad8
+.asm_02840 ; 0x1cada
+ ld hl, Route1Text_1caee ; $4aee
+.asm_46d43 ; 0x1cadd
+ call PrintText
+ jp TextScriptEnd
+
+Route1ViridianMartSampleText: ; 1cae3 (7:4ae3)
+ TX_FAR _Route1ViridianMartSampleText
+ db "@"
+
+Route1Text_1cae8: ; 1cae8 (7:4ae8)
+ TX_FAR _Route1Text_1cae8
+ db $0b,"@"
+
+Route1Text_1caee: ; 1caee (7:4aee)
+ TX_FAR _Route1Text_1caee
+ db "@"
+
+Route1Text_1caf3: ; 1caf3 (7:4af3)
+ TX_FAR _Route1Text_1caf3
+ db "@"
+
+Route1Text2: ; 1caf8 (7:4af8)
+ TX_FAR _Route1Text2
+ db "@"
+
+Route1Text3: ; 1cafd (7:4afd)
+ TX_FAR _Route1Text3
+ db "@"
diff --git a/scripts/route10.asm b/scripts/route10.asm
new file mode 100755
index 00000000..1e0ecb91
--- /dev/null
+++ b/scripts/route10.asm
@@ -0,0 +1,199 @@
+Route10Script: ; 59336 (16:5336)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route10TrainerHeaders
+ ld de, Route10ScriptPointers
+ ld a, [W_ROUTE10CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE10CURSCRIPT], a
+ ret
+
+Route10ScriptPointers: ; 59349 (16:5349)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route10TextPointers: ; 5934f (16:534f)
+ dw Route10Text1
+ dw Route10Text2
+ dw Route10Text3
+ dw Route10Text4
+ dw Route10Text5
+ dw Route10Text6
+ dw Route10Text7
+ dw PokeCenterSignText
+ dw Route10Text9
+ dw Route10Text10
+
+Route10TrainerHeaders: ; 59363 (16:5363)
+Route10TrainerHeader0: ; 59363 (16:5363)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d1 ; flag's byte
+ dw Route10BattleText1 ; 0x53b6 TextBeforeBattle
+ dw Route10AfterBattleText1 ; 0x53c0 TextAfterBattle
+ dw Route10EndBattleText1 ; 0x53bb TextEndBattle
+ dw Route10EndBattleText1 ; 0x53bb TextEndBattle
+
+Route10TrainerHeader1: ; 5936f (16:536f)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d1 ; flag's byte
+ dw Route10BattleText2 ; 0x53cf TextBeforeBattle
+ dw Route10AfterBattleText2 ; 0x53d9 TextAfterBattle
+ dw Route10EndBattleText2 ; 0x53d4 TextEndBattle
+ dw Route10EndBattleText2 ; 0x53d4 TextEndBattle
+
+Route10TrainerHeader2: ; 5937b (16:537b)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d1 ; flag's byte
+ dw Route10BattleText3 ; 0x53e8 TextBeforeBattle
+ dw Route10AfterBattleText3 ; 0x53f2 TextAfterBattle
+ dw Route10EndBattleText3 ; 0x53ed TextEndBattle
+ dw Route10EndBattleText3 ; 0x53ed TextEndBattle
+
+Route10TrainerHeader3: ; 59387 (16:5387)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d1 ; flag's byte
+ dw Route10BattleText4 ; 0x5401 TextBeforeBattle
+ dw Route10AfterBattleText4 ; 0x540b TextAfterBattle
+ dw Route10EndBattleText4 ; 0x5406 TextEndBattle
+ dw Route10EndBattleText4 ; 0x5406 TextEndBattle
+
+Route10TrainerHeader4: ; 59393 (16:5393)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d1 ; flag's byte
+ dw Route10BattleText5 ; 0x541a TextBeforeBattle
+ dw Route10AfterBattleText5 ; 0x5424 TextAfterBattle
+ dw Route10EndBattleText5 ; 0x541f TextEndBattle
+ dw Route10EndBattleText5 ; 0x541f TextEndBattle
+
+Route10TrainerHeader5: ; 5939f (16:539f)
+ db $6 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d1 ; flag's byte
+ dw Route10BattleText6 ; 0x5433 TextBeforeBattle
+ dw Route10AfterBattleText6 ; 0x543d TextAfterBattle
+ dw Route10EndBattleText6 ; 0x5438 TextEndBattle
+ dw Route10EndBattleText6 ; 0x5438 TextEndBattle
+
+ db $ff
+
+Route10Text1: ; 593ac (16:53ac)
+ db $08 ; asm
+ ld hl, Route10TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText1: ; 593b6 (16:53b6)
+ TX_FAR _Route10BattleText1
+ db "@"
+
+Route10EndBattleText1: ; 593bb (16:53bb)
+ TX_FAR _Route10EndBattleText1
+ db "@"
+
+Route10AfterBattleText1: ; 593c0 (16:53c0)
+ TX_FAR _Route10AfterBattleText1
+ db "@"
+
+Route10Text2: ; 593c5 (16:53c5)
+ db $08 ; asm
+ ld hl, Route10TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText2: ; 593cf (16:53cf)
+ TX_FAR _Route10BattleText2
+ db "@"
+
+Route10EndBattleText2: ; 593d4 (16:53d4)
+ TX_FAR _Route10EndBattleText2
+ db "@"
+
+Route10AfterBattleText2: ; 593d9 (16:53d9)
+ TX_FAR _Route10AfterBattleText2
+ db "@"
+
+Route10Text3: ; 593de (16:53de)
+ db $08 ; asm
+ ld hl, Route10TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText3: ; 593e8 (16:53e8)
+ TX_FAR _Route10BattleText3
+ db "@"
+
+Route10EndBattleText3: ; 593ed (16:53ed)
+ TX_FAR _Route10EndBattleText3
+ db "@"
+
+Route10AfterBattleText3: ; 593f2 (16:53f2)
+ TX_FAR _Route10AfterBattleText3
+ db "@"
+
+Route10Text4: ; 593f7 (16:53f7)
+ db $08 ; asm
+ ld hl, Route10TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText4: ; 59401 (16:5401)
+ TX_FAR _Route10BattleText4
+ db "@"
+
+Route10EndBattleText4: ; 59406 (16:5406)
+ TX_FAR _Route10EndBattleText4
+ db "@"
+
+Route10AfterBattleText4: ; 5940b (16:540b)
+ TX_FAR _Route10AfterBattleText4
+ db "@"
+
+Route10Text5: ; 59410 (16:5410)
+ db $08 ; asm
+ ld hl, Route10TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText5: ; 5941a (16:541a)
+ TX_FAR _Route10BattleText5
+ db "@"
+
+Route10EndBattleText5: ; 5941f (16:541f)
+ TX_FAR _Route10EndBattleText5
+ db "@"
+
+Route10AfterBattleText5: ; 59424 (16:5424)
+ TX_FAR _Route10AfterBattleText5
+ db "@"
+
+Route10Text6: ; 59429 (16:5429)
+ db $08 ; asm
+ ld hl, Route10TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText6: ; 59433 (16:5433)
+ TX_FAR _Route10BattleText6
+ db "@"
+
+Route10EndBattleText6: ; 59438 (16:5438)
+ TX_FAR _Route10EndBattleText6
+ db "@"
+
+Route10AfterBattleText6: ; 5943d (16:543d)
+ TX_FAR _Route10AfterBattleText6
+ db "@"
+
+Route10Text9: ; 59442 (16:5442)
+Route10Text7: ; 59442 (16:5442)
+ TX_FAR _Route10Text7 ; _Route10Text9
+ db "@"
+
+Route10Text10: ; 59447 (16:5447)
+ TX_FAR _Route10Text10
+ db "@"
diff --git a/scripts/route11.asm b/scripts/route11.asm
new file mode 100755
index 00000000..6217569e
--- /dev/null
+++ b/scripts/route11.asm
@@ -0,0 +1,303 @@
+Route11Script: ; 5944c (16:544c)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route11TrainerHeaders
+ ld de, Route11ScriptPointers
+ ld a, [W_ROUTE11CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE11CURSCRIPT], a
+ ret
+
+Route11ScriptPointers: ; 5945f (16:545f)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route11TextPointers: ; 59465 (16:5465)
+ dw Route11Text1
+ dw Route11Text2
+ dw Route11Text3
+ dw Route11Text4
+ dw Route11Text5
+ dw Route11Text6
+ dw Route11Text7
+ dw Route11Text8
+ dw Route11Text9
+ dw Route11Text10
+ dw Route11Text11
+
+Route11TrainerHeaders: ; 5947b (16:547b)
+Route11TrainerHeader0: ; 5947b (16:547b)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText1 ; 0x54fe TextBeforeBattle
+ dw Route11AfterBattleText1 ; 0x5508 TextAfterBattle
+ dw Route11EndBattleText1 ; 0x5503 TextEndBattle
+ dw Route11EndBattleText1 ; 0x5503 TextEndBattle
+
+Route11TrainerHeader1: ; 59487 (16:5487)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText2 ; 0x5517 TextBeforeBattle
+ dw Route11AfterBattleText2 ; 0x5521 TextAfterBattle
+ dw Route11EndBattleText2 ; 0x551c TextEndBattle
+ dw Route11EndBattleText2 ; 0x551c TextEndBattle
+
+Route11TrainerHeader2: ; 59493 (16:5493)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText3 ; 0x5530 TextBeforeBattle
+ dw Route11AfterBattleText3 ; 0x553a TextAfterBattle
+ dw Route11EndBattleText3 ; 0x5535 TextEndBattle
+ dw Route11EndBattleText3 ; 0x5535 TextEndBattle
+
+Route11TrainerHeader3: ; 5949f (16:549f)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText4 ; 0x5549 TextBeforeBattle
+ dw Route11AfterBattleText4 ; 0x5553 TextAfterBattle
+ dw Route11EndBattleText4 ; 0x554e TextEndBattle
+ dw Route11EndBattleText4 ; 0x554e TextEndBattle
+
+Route11TrainerHeader4: ; 594ab (16:54ab)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText5 ; 0x5562 TextBeforeBattle
+ dw Route11AfterBattleText5 ; 0x556c TextAfterBattle
+ dw Route11EndBattleText5 ; 0x5567 TextEndBattle
+ dw Route11EndBattleText5 ; 0x5567 TextEndBattle
+
+Route11TrainerHeader5: ; 594b7 (16:54b7)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText6 ; 0x557b TextBeforeBattle
+ dw Route11AfterBattleText6 ; 0x5585 TextAfterBattle
+ dw Route11EndBattleText6 ; 0x5580 TextEndBattle
+ dw Route11EndBattleText6 ; 0x5580 TextEndBattle
+
+Route11TrainerHeader6: ; 594c3 (16:54c3)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText7 ; 0x5594 TextBeforeBattle
+ dw Route11AfterBattleText7 ; 0x559e TextAfterBattle
+ dw Route11EndBattleText7 ; 0x5599 TextEndBattle
+ dw Route11EndBattleText7 ; 0x5599 TextEndBattle
+
+Route11TrainerHeader7: ; 594cf (16:54cf)
+ db $8 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText8 ; 0x55ad TextBeforeBattle
+ dw Route11AfterBattleText8 ; 0x55b7 TextAfterBattle
+ dw Route11EndBattleText8 ; 0x55b2 TextEndBattle
+ dw Route11EndBattleText8 ; 0x55b2 TextEndBattle
+
+Route11TrainerHeader8: ; 594db (16:54db)
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText9 ; 0x55c6 TextBeforeBattle
+ dw Route11AfterBattleText9 ; 0x55d0 TextAfterBattle
+ dw Route11EndBattleText9 ; 0x55cb TextEndBattle
+ dw Route11EndBattleText9 ; 0x55cb TextEndBattle
+
+Route11TrainerHeader9: ; 594e7 (16:54e7)
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw Route11BattleText10 ; 0x55df TextBeforeBattle
+ dw Route11AfterBattleText10 ; 0x55e9 TextAfterBattle
+ dw Route11EndBattleText10 ; 0x55e4 TextEndBattle
+ dw Route11EndBattleText10 ; 0x55e4 TextEndBattle
+
+ db $ff
+
+Route11Text1: ; 594f4 (16:54f4)
+ db $8
+ ld hl, Route11TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText1: ; 594fe (16:54fe)
+ TX_FAR _Route11BattleText1
+ db "@"
+
+Route11EndBattleText1: ; 59503 (16:5503)
+ TX_FAR _Route11EndBattleText1
+ db "@"
+
+Route11AfterBattleText1: ; 59508 (16:5508)
+ TX_FAR _Route11AfterBattleText1
+ db "@"
+
+Route11Text2: ; 5950d (16:550d)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText2: ; 59517 (16:5517)
+ TX_FAR _Route11BattleText2
+ db "@"
+
+Route11EndBattleText2: ; 5951c (16:551c)
+ TX_FAR _Route11EndBattleText2
+ db "@"
+
+Route11AfterBattleText2: ; 59521 (16:5521)
+ TX_FAR _Route11AfterBattleText2
+ db "@"
+
+Route11Text3: ; 59526 (16:5526)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText3: ; 59530 (16:5530)
+ TX_FAR _Route11BattleText3
+ db "@"
+
+Route11EndBattleText3: ; 59535 (16:5535)
+ TX_FAR _Route11EndBattleText3
+ db "@"
+
+Route11AfterBattleText3: ; 5953a (16:553a)
+ TX_FAR _Route11AfterBattleText3
+ db "@"
+
+Route11Text4: ; 5953f (16:553f)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText4: ; 59549 (16:5549)
+ TX_FAR _Route11BattleText4
+ db "@"
+
+Route11EndBattleText4: ; 5954e (16:554e)
+ TX_FAR _Route11EndBattleText4
+ db "@"
+
+Route11AfterBattleText4: ; 59553 (16:5553)
+ TX_FAR _Route11AfterBattleText4
+ db "@"
+
+Route11Text5: ; 59558 (16:5558)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText5: ; 59562 (16:5562)
+ TX_FAR _Route11BattleText5
+ db "@"
+
+Route11EndBattleText5: ; 59567 (16:5567)
+ TX_FAR _Route11EndBattleText5
+ db "@"
+
+Route11AfterBattleText5: ; 5956c (16:556c)
+ TX_FAR _Route11AfterBattleText5
+ db "@"
+
+Route11Text6: ; 59571 (16:5571)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText6: ; 5957b (16:557b)
+ TX_FAR _Route11BattleText6
+ db "@"
+
+Route11EndBattleText6: ; 59580 (16:5580)
+ TX_FAR _Route11EndBattleText6
+ db "@"
+
+Route11AfterBattleText6: ; 59585 (16:5585)
+ TX_FAR _Route11AfterBattleText6
+ db "@"
+
+Route11Text7: ; 5958a (16:558a)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText7: ; 59594 (16:5594)
+ TX_FAR _Route11BattleText7
+ db "@"
+
+Route11EndBattleText7: ; 59599 (16:5599)
+ TX_FAR _Route11EndBattleText7
+ db "@"
+
+Route11AfterBattleText7: ; 5959e (16:559e)
+ TX_FAR _Route11AfterBattleText7
+ db "@"
+
+Route11Text8: ; 595a3 (16:55a3)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText8: ; 595ad (16:55ad)
+ TX_FAR _Route11BattleText8
+ db "@"
+
+Route11EndBattleText8: ; 595b2 (16:55b2)
+ TX_FAR _Route11EndBattleText8
+ db "@"
+
+Route11AfterBattleText8: ; 595b7 (16:55b7)
+ TX_FAR _Route11AfterBattleText8
+ db "@"
+
+Route11Text9: ; 595bc (16:55bc)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText9: ; 595c6 (16:55c6)
+ TX_FAR _Route11BattleText9
+ db "@"
+
+Route11EndBattleText9: ; 595cb (16:55cb)
+ TX_FAR _Route11EndBattleText9
+ db "@"
+
+Route11AfterBattleText9: ; 595d0 (16:55d0)
+ TX_FAR _Route11AfterBattleText9
+ db "@"
+
+Route11Text10: ; 595d5 (16:55d5)
+ db $08 ; asm
+ ld hl, Route11TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText10: ; 595df (16:55df)
+ TX_FAR _Route11BattleText10
+ db "@"
+
+Route11EndBattleText10: ; 595e4 (16:55e4)
+ TX_FAR _Route11EndBattleText10
+ db "@"
+
+Route11AfterBattleText10: ; 595e9 (16:55e9)
+ TX_FAR _Route11AfterBattleText10
+ db "@"
+
+Route11Text11: ; 595ee (16:55ee)
+ TX_FAR _Route11Text11
+ db "@"
diff --git a/scripts/route11gate.asm b/scripts/route11gate.asm
new file mode 100755
index 00000000..e53fc63a
--- /dev/null
+++ b/scripts/route11gate.asm
@@ -0,0 +1,9 @@
+Route11GateScript: ; 4940c (12:540c)
+ jp EnableAutoTextBoxDrawing
+
+Route11GateTextPointers: ; 4940f (12:540f)
+ dw Route11GateText1
+
+Route11GateText1: ; 49411 (12:5411)
+ TX_FAR _Route11GateText1
+ db "@"
diff --git a/scripts/route11gateupstairs.asm b/scripts/route11gateupstairs.asm
new file mode 100755
index 00000000..0ee428c4
--- /dev/null
+++ b/scripts/route11gateupstairs.asm
@@ -0,0 +1,81 @@
+Route11GateUpstairsScript: ; 49454 (12:5454)
+ jp DisableAutoTextBoxDrawing
+
+Route11GateUpstairsTextPointers: ; 49457 (12:5457)
+ dw Route11GateUpstairsText1
+ dw Route11GateUpstairsText2
+ dw Route11GateUpstairsText3
+ dw Route11GateUpstairsText4
+
+Route11GateUpstairsText1: ; 4945f (12:545f)
+ db $08 ; asm
+ xor a
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+asm_49469: ; 49469 (12:5469)
+ jp TextScriptEnd
+
+Route11GateUpstairsText2: ; 4946c (12:546c)
+ db $8
+ ld a, [$d7d6]
+ add a
+ jr c, .asm_4949b ; 0x49471 $28
+ ld a, $1e
+ ld [$ffdb], a
+ ld a, $47
+ ld [$ffdc], a
+ ld [$d11e], a
+ call GetItemName
+ ld h, d
+ ld l, e
+ ld de, $cc5b
+ ld bc, $000d
+ call CopyData
+ ld a, $62
+ call Predef
+ ld a, [$ffdb]
+ dec a
+ jr nz, .asm_494a1 ; 0x49494 $b
+ ld hl, $d7d6
+ set 7, [hl]
+.asm_4949b
+ ld hl, Route11GateUpstairsText_494a3
+ call PrintText
+.asm_494a1
+ jr asm_49469 ; 0x494a1 $c6
+
+Route11GateUpstairsText_494a3: ; 494a3 (12:54a3)
+ TX_FAR _Route11GateUpstairsText_494a3
+ db "@"
+
+Route11GateUpstairsText3: ; 494a8 (12:54a8)
+ db $08 ; asm
+ ld a, [$c109]
+ cp $4
+ jp nz, Route12GateUpstairsScript_495c9
+ ld a, [$d7d8]
+ bit 7, a ; fought snorlax?
+ ld hl, BinocularsSnorlaxText
+ jr z, .print
+ ld hl, BinocularsNoSnorlaxText
+.print
+ call PrintText
+ jp TextScriptEnd
+
+BinocularsSnorlaxText:
+ TX_FAR _BinocularsSnorlaxText
+ db "@"
+
+BinocularsNoSnorlaxText:
+ TX_FAR _BinocularsNoSnorlaxText
+ db "@"
+
+Route11GateUpstairsText4: ; 494ce (12:54ce)
+ db $8
+ ld hl, Route11GateUpstairsText_494d5 ; $54d5
+ jp Route12GateUpstairsScript_495c9
+
+Route11GateUpstairsText_494d5: ; 494d5 (12:54d5)
+ TX_FAR _Route11GateUpstairsText_494d5
+ db "@"
diff --git a/scripts/route12.asm b/scripts/route12.asm
new file mode 100755
index 00000000..5bbdac3f
--- /dev/null
+++ b/scripts/route12.asm
@@ -0,0 +1,292 @@
+Route12Script: ; 595f3 (16:55f3)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route12TrainerHeaders
+ ld de, Route12ScriptPointers
+ ld a, [W_ROUTE12CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE12CURSCRIPT], a
+ ret
+
+Route12Script_59606: ; 59606 (16:5606)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE12CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route12ScriptPointers: ; 59611 (16:5611)
+ dw Route12Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw Route12Script3
+
+Route12Script0: ; 59619 (16:5619)
+ ld hl, $d7d8
+ bit 7, [hl]
+ jp nz, CheckFightingMapTrainers
+ bit 6, [hl]
+ res 6, [hl]
+ jp z, CheckFightingMapTrainers
+ ld a, $d
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, SNORLAX
+ ld [W_CUROPPONENT], a ; $d059
+ ld a, 30
+ ld [W_CURENEMYLVL], a ; $d127
+ ld a, $1d
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $3
+ ld [W_ROUTE12CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route12Script3: ; 5964c (16:564c)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jr z, Route12Script_59606
+ call UpdateSprites
+ ld a, [$cf0b]
+ cp $2
+ jr z, .asm_59664
+ ld a, $e
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_59664
+ ld hl, $d7d8
+ set 7, [hl]
+ call Delay3
+ ld a, $0
+ ld [W_ROUTE12CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route12TextPointers: ; 59675 (16:5675)
+ dw Route12Text1
+ dw Route12Text2
+ dw Route12Text3
+ dw Route12Text4
+ dw Route12Text5
+ dw Route12Text6
+ dw Route12Text7
+ dw Route12Text8
+ dw Predef5CText
+ dw Predef5CText
+ dw Route12Text11
+ dw Route12Text12
+ dw Route12Text13
+ dw Route12Text14
+
+Route12TrainerHeaders: ; 59691 (16:5691)
+Route12TrainerHeader0: ; 59691 (16:5691)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText1 ; 0x56ff TextBeforeBattle
+ dw Route12AfterBattleText1 ; 0x5709 TextAfterBattle
+ dw Route12EndBattleText1 ; 0x5704 TextEndBattle
+ dw Route12EndBattleText1 ; 0x5704 TextEndBattle
+
+Route12TrainerHeader1: ; 5969d (16:569d)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText2 ; 0x5718 TextBeforeBattle
+ dw Route12AfterBattleText2 ; 0x5722 TextAfterBattle
+ dw Route12EndBattleText2 ; 0x571d TextEndBattle
+ dw Route12EndBattleText2 ; 0x571d TextEndBattle
+
+Route12TrainerHeader2: ; 596a9 (16:56a9)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText3 ; 0x5731 TextBeforeBattle
+ dw Route12AfterBattleText3 ; 0x573b TextAfterBattle
+ dw Route12EndBattleText3 ; 0x5736 TextEndBattle
+ dw Route12EndBattleText3 ; 0x5736 TextEndBattle
+
+Route12TrainerHeader3: ; 596b5 (16:56b5)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText4 ; 0x574a TextBeforeBattle
+ dw Route12AfterBattleText4 ; 0x5754 TextAfterBattle
+ dw Route12EndBattleText4 ; 0x574f TextEndBattle
+ dw Route12EndBattleText4 ; 0x574f TextEndBattle
+
+Route12TrainerHeader4: ; 596c1 (16:56c1)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText5 ; 0x5763 TextBeforeBattle
+ dw Route12AfterBattleText5 ; 0x576d TextAfterBattle
+ dw Route12EndBattleText5 ; 0x5768 TextEndBattle
+ dw Route12EndBattleText5 ; 0x5768 TextEndBattle
+
+Route12TrainerHeader5: ; 596cd (16:56cd)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText6 ; 0x577c TextBeforeBattle
+ dw Route12AfterBattleText6 ; 0x5786 TextAfterBattle
+ dw Route12EndBattleText6 ; 0x5781 TextEndBattle
+ dw Route12EndBattleText6 ; 0x5781 TextEndBattle
+
+Route12TrainerHeader6: ; 596d9 (16:56d9)
+ db $8 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw Route12BattleText7 ; 0x5795 TextBeforeBattle
+ dw Route12AfterBattleText7 ; 0x579f TextAfterBattle
+ dw Route12EndBattleText7 ; 0x579a TextEndBattle
+ dw Route12EndBattleText7 ; 0x579a TextEndBattle
+
+ db $ff
+
+Route12Text1: ; 596e6 (16:56e6)
+ TX_FAR _Route12Text1
+ db "@"
+
+Route12Text13: ; 596eb (16:56eb)
+ TX_FAR _Route12Text13
+ db "@"
+
+Route12Text14: ; 596f0 (16:56f0)
+ TX_FAR _Route12Text14
+ db "@"
+
+Route12Text2: ; 596f5 (16:56f5)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText1: ; 596ff (16:56ff)
+ TX_FAR _Route12BattleText1
+ db "@"
+
+Route12EndBattleText1: ; 59704 (16:5704)
+ TX_FAR _Route12EndBattleText1
+ db "@"
+
+Route12AfterBattleText1: ; 59709 (16:5709)
+ TX_FAR _Route12AfterBattleText1
+ db "@"
+
+Route12Text3: ; 5970e (16:570e)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText2: ; 59718 (16:5718)
+ TX_FAR _Route12BattleText2
+ db "@"
+
+Route12EndBattleText2: ; 5971d (16:571d)
+ TX_FAR _Route12EndBattleText2
+ db "@"
+
+Route12AfterBattleText2: ; 59722 (16:5722)
+ TX_FAR _Route12AfterBattleText2
+ db "@"
+
+Route12Text4: ; 59727 (16:5727)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText3: ; 59731 (16:5731)
+ TX_FAR _Route12BattleText3
+ db "@"
+
+Route12EndBattleText3: ; 59736 (16:5736)
+ TX_FAR _Route12EndBattleText3
+ db "@"
+
+Route12AfterBattleText3: ; 5973b (16:573b)
+ TX_FAR _Route12AfterBattleText3
+ db "@"
+
+Route12Text5: ; 59740 (16:5740)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText4: ; 5974a (16:574a)
+ TX_FAR _Route12BattleText4
+ db "@"
+
+Route12EndBattleText4: ; 5974f (16:574f)
+ TX_FAR _Route12EndBattleText4
+ db "@"
+
+Route12AfterBattleText4: ; 59754 (16:5754)
+ TX_FAR _Route12AfterBattleText4
+ db "@"
+
+Route12Text6: ; 59759 (16:5759)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText5: ; 59763 (16:5763)
+ TX_FAR _Route12BattleText5
+ db "@"
+
+Route12EndBattleText5: ; 59768 (16:5768)
+ TX_FAR _Route12EndBattleText5
+ db "@"
+
+Route12AfterBattleText5: ; 5976d (16:576d)
+ TX_FAR _Route12AfterBattleText5
+ db "@"
+
+Route12Text7: ; 59772 (16:5772)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText6: ; 5977c (16:577c)
+ TX_FAR _Route12BattleText6
+ db "@"
+
+Route12EndBattleText6: ; 59781 (16:5781)
+ TX_FAR _Route12EndBattleText6
+ db "@"
+
+Route12AfterBattleText6: ; 59786 (16:5786)
+ TX_FAR _Route12AfterBattleText6
+ db "@"
+
+Route12Text8: ; 5978b (16:578b)
+ db $08 ; asm
+ ld hl, Route12TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText7: ; 59795 (16:5795)
+ TX_FAR _Route12BattleText7
+ db "@"
+
+Route12EndBattleText7: ; 5979a (16:579a)
+ TX_FAR _Route12EndBattleText7
+ db "@"
+
+Route12AfterBattleText7: ; 5979f (16:579f)
+ TX_FAR _Route12AfterBattleText7
+ db "@"
+
+Route12Text11: ; 597a4 (16:57a4)
+ TX_FAR _Route12Text11
+ db "@"
+
+Route12Text12: ; 597a9 (16:57a9)
+ TX_FAR _Route12Text12
+ db "@"
diff --git a/scripts/route12gate.asm b/scripts/route12gate.asm
new file mode 100755
index 00000000..d8f09c92
--- /dev/null
+++ b/scripts/route12gate.asm
@@ -0,0 +1,9 @@
+Route12GateScript: ; 49504 (12:5504)
+ jp EnableAutoTextBoxDrawing
+
+Route12GateTextPointers: ; 49507 (12:5507)
+ dw Route12GateText1
+
+Route12GateText1: ; 49509 (12:5509)
+ TX_FAR _Route12GateText1
+ db "@"
diff --git a/scripts/route12gateupstairs.asm b/scripts/route12gateupstairs.asm
new file mode 100755
index 00000000..97da1b58
--- /dev/null
+++ b/scripts/route12gateupstairs.asm
@@ -0,0 +1,79 @@
+Route12GateUpstairsScript: ; 49560 (12:5560)
+ jp DisableAutoTextBoxDrawing
+
+Route12GateUpstairsTextPointers: ; 49563 (12:5563)
+ dw Route12GateUpstairsText1
+ dw Route12GateUpstairsText2
+ dw Route12GateUpstairsText3
+
+Route12GateUpstairsText1: ; 49569 (12:5569)
+ db $08 ; asm
+ ld a, [$d7d7]
+ rrca
+ jr c, .asm_0ad3c ; 0x4956e
+ ld hl, TM39PreReceiveText
+ call PrintText
+ ld bc, (TM_39 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM39Text
+ call PrintText
+ ld hl, $d7d7
+ set 0, [hl]
+ jr .asm_4ba56 ; 0x49589
+.BagFull
+ ld hl, TM39NoRoomText
+ call PrintText
+ jr .asm_4ba56 ; 0x49591
+.asm_0ad3c ; 0x49593
+ ld hl, TM39ExplanationText
+ call PrintText
+.asm_4ba56 ; 0x49599
+ jp TextScriptEnd
+
+TM39PreReceiveText: ; 4959c (12:559c)
+ TX_FAR _TM39PreReceiveText
+ db "@"
+
+ReceivedTM39Text: ; 495a1 (12:55a1)
+ TX_FAR _ReceivedTM39Text
+ db $0B, "@"
+
+TM39ExplanationText: ; 495a7 (12:55a7)
+ TX_FAR _TM39ExplanationText
+ db "@"
+
+TM39NoRoomText: ; 495ac (12:55ac)
+ TX_FAR _TM39NoRoomText
+ db "@"
+
+Route12GateUpstairsText2: ; 495b1 (12:55b1)
+ db $08 ; asm
+ ld hl, Route12GateUpstairsText_495b8
+ jp Route12GateUpstairsScript_495c9
+
+Route12GateUpstairsText_495b8: ; 495b8 (12:55b8)
+ TX_FAR _Route12GateUpstairsText_495b8
+ db "@"
+
+Route12GateUpstairsText3: ; 495bd (12:55bd)
+ db $8
+ ld hl, Route12GateUpstairsText_495c4
+ jp Route12GateUpstairsScript_495c9
+
+Route12GateUpstairsText_495c4: ; 495c4 (12:55c4)
+ TX_FAR _Route12GateUpstairsText_495c4
+ db "@"
+
+Route12GateUpstairsScript_495c9: ; 495c9 (12:55c9)
+ ld a, [$c109]
+ cp $4
+ jr z, .asm_495d4 ; 0x495ce $4
+ ld a, $1
+ jr .asm_495d8 ; 0x495d2 $4
+.asm_495d4
+ call PrintText
+ xor a
+.asm_495d8
+ ld [$cc3c], a
+ jp TextScriptEnd
diff --git a/scripts/route12house.asm b/scripts/route12house.asm
new file mode 100755
index 00000000..6b2f5e52
--- /dev/null
+++ b/scripts/route12house.asm
@@ -0,0 +1,57 @@
+Route12HouseScript: ; 5647f (15:647f)
+ jp EnableAutoTextBoxDrawing
+
+Route12HouseTextPointers: ; 56482 (15:6482)
+ dw Route12HouseText1
+
+Route12HouseText1: ; 56484 (15:6484)
+ db $08 ; asm
+ ld a, [$d728]
+ bit 5, a
+ jr nz, .asm_b4cad
+ ld hl, Route12HouseText_564c0
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_a2d76
+ ld bc, (SUPER_ROD << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d728
+ set 5, [hl]
+ ld hl, Route12HouseText_564c5
+ jr .asm_df984
+.BagFull
+ ld hl, Route12HouseText_564d9
+ jr .asm_df984
+.asm_a2d76
+ ld hl, Route12HouseText_564cf
+ jr .asm_df984 ; 0x564b5
+.asm_b4cad
+ ld hl, Route12HouseText_564d4
+.asm_df984
+ call PrintText
+ jp TextScriptEnd
+
+Route12HouseText_564c0: ; 564c0 (15:64c0)
+ TX_FAR _Route12HouseText_564c0
+ db "@"
+
+Route12HouseText_564c5: ; 564c5 (15:64c5)
+ TX_FAR _Route12HouseText_564c5 ; 0x8ca00
+ db $0B
+ TX_FAR _Route12HouseText_564ca ; 0x8ca4f
+ db "@"
+
+Route12HouseText_564cf: ; 564cf (15:64cf)
+ TX_FAR _Route12HouseText_564cf
+ db "@"
+
+Route12HouseText_564d4: ; 564d4 (15:64d4)
+ TX_FAR _Route12HouseText_564d4
+ db "@"
+
+Route12HouseText_564d9: ; 564d9 (15:64d9)
+ TX_FAR _Route12HouseText_564d9
+ db "@"
diff --git a/scripts/route13.asm b/scripts/route13.asm
new file mode 100755
index 00000000..3c2fea04
--- /dev/null
+++ b/scripts/route13.asm
@@ -0,0 +1,313 @@
+Route13Script: ; 5581e (15:581e)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route13TrainerHeaders
+ ld de, Route13ScriptPointers
+ ld a, [W_ROUTE13CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE13CURSCRIPT], a
+ ret
+
+Route13ScriptPointers: ; 55831 (15:5831)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route13TextPointers: ; 55837 (15:5837)
+ dw Route13Text1
+ dw Route13Text2
+ dw Route13Text3
+ dw Route13Text4
+ dw Route13Text5
+ dw Route13Text6
+ dw Route13Text7
+ dw Route13Text8
+ dw Route13Text9
+ dw Route13Text10
+ dw Route13Text11
+ dw Route13Text12
+ dw Route13Text13
+
+Route13TrainerHeaders: ; 55851 (15:5851)
+Route13TrainerHeader0: ; 55851 (15:5851)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText2 ; 0x58d4 TextBeforeBattle
+ dw Route13AfterBattleText2 ; 0x58de TextAfterBattle
+ dw Route13EndBattleText2 ; 0x58d9 TextEndBattle
+ dw Route13EndBattleText2 ; 0x58d9 TextEndBattle
+
+Route13TrainerHeader2: ; 5585d (15:585d)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText3 ; 0x58ed TextBeforeBattle
+ dw Route13AfterBattleText3 ; 0x58f7 TextAfterBattle
+ dw Route13EndBattleText3 ; 0x58f2 TextEndBattle
+ dw Route13EndBattleText3 ; 0x58f2 TextEndBattle
+
+Route13TrainerHeader3: ; 55869 (15:5869)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText4 ; 0x5906 TextBeforeBattle
+ dw Route13AfterBattleText4 ; 0x5910 TextAfterBattle
+ dw Route13EndBattleText4 ; 0x590b TextEndBattle
+ dw Route13EndBattleText4 ; 0x590b TextEndBattle
+
+Route13TrainerHeader4: ; 55875 (15:5875)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText5 ; 0x591f TextBeforeBattle
+ dw Route13AfterBattleText5 ; 0x5929 TextAfterBattle
+ dw Route13EndBattleText5 ; 0x5924 TextEndBattle
+ dw Route13EndBattleText5 ; 0x5924 TextEndBattle
+
+Route13TrainerHeader5: ; 55881 (15:5881)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText6 ; 0x5938 TextBeforeBattle
+ dw Route13AfterBattleText6 ; 0x5942 TextAfterBattle
+ dw Route13EndBattleText6 ; 0x593d TextEndBattle
+ dw Route13EndBattleText6 ; 0x593d TextEndBattle
+
+Route13TrainerHeader6: ; 5588d (15:588d)
+ db $6 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText7 ; 0x5951 TextBeforeBattle
+ dw Route13AfterBattleText7 ; 0x595b TextAfterBattle
+ dw Route13EndBattleText7 ; 0x5956 TextEndBattle
+ dw Route13EndBattleText7 ; 0x5956 TextEndBattle
+
+Route13TrainerHeader7: ; 55899 (15:5899)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText8 ; 0x596a TextBeforeBattle
+ dw Route13AfterBattleText8 ; 0x5974 TextAfterBattle
+ dw Route13EndBattleText8 ; 0x596f TextEndBattle
+ dw Route13EndBattleText8 ; 0x596f TextEndBattle
+
+Route13TrainerHeader8: ; 558a5 (15:58a5)
+ db $8 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText9 ; 0x5983 TextBeforeBattle
+ dw Route13AfterBattleText9 ; 0x598d TextAfterBattle
+ dw Route13EndBattleText9 ; 0x5988 TextEndBattle
+ dw Route13EndBattleText9 ; 0x5988 TextEndBattle
+
+Route13TrainerHeader9: ; 558b1 (15:58b1)
+ db $9 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText10 ; 0x599c TextBeforeBattle
+ dw Route13AfterBattleText10 ; 0x59a6 TextAfterBattle
+ dw Route13EndBattleText10 ; 0x59a1 TextEndBattle
+ dw Route13EndBattleText10 ; 0x59a1 TextEndBattle
+
+Route13TrainerHeader10: ; 558bd (15:58bd)
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d9 ; flag's byte
+ dw Route13BattleText11 ; 0x59b5 TextBeforeBattle
+ dw Route13AfterBattleText11 ; 0x59bf TextAfterBattle
+ dw Route13EndBattleText11 ; 0x59ba TextEndBattle
+ dw Route13EndBattleText11 ; 0x59ba TextEndBattle
+
+ db $ff
+
+Route13Text1: ; 558ca (15:58ca)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText2: ; 558d4 (15:58d4)
+ TX_FAR _Route13BattleText2
+ db "@"
+
+Route13EndBattleText2: ; 558d9 (15:58d9)
+ TX_FAR _Route13EndBattleText2
+ db "@"
+
+Route13AfterBattleText2: ; 558de (15:58de)
+ TX_FAR _Route13AfterBattleText2
+ db "@"
+
+Route13Text2: ; 558e3 (15:58e3)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText3: ; 558ed (15:58ed)
+ TX_FAR _Route13BattleText3
+ db "@"
+
+Route13EndBattleText3: ; 558f2 (15:58f2)
+ TX_FAR _Route13EndBattleText3
+ db "@"
+
+Route13AfterBattleText3: ; 558f7 (15:58f7)
+ TX_FAR _Route13AfterBattleText3
+ db "@"
+
+Route13Text3: ; 558fc (15:58fc)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText4: ; 55906 (15:5906)
+ TX_FAR _Route13BattleText4
+ db "@"
+
+Route13EndBattleText4: ; 5590b (15:590b)
+ TX_FAR _Route13EndBattleText4
+ db "@"
+
+Route13AfterBattleText4: ; 55910 (15:5910)
+ TX_FAR _Route13AfterBattleText4
+ db "@"
+
+Route13Text4: ; 55915 (15:5915)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText5: ; 5591f (15:591f)
+ TX_FAR _Route13BattleText5
+ db "@"
+
+Route13EndBattleText5: ; 55924 (15:5924)
+ TX_FAR _Route13EndBattleText5
+ db "@"
+
+Route13AfterBattleText5: ; 55929 (15:5929)
+ TX_FAR _Route13AfterBattleText5
+ db "@"
+
+Route13Text5: ; 5592e (15:592e)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText6: ; 55938 (15:5938)
+ TX_FAR _Route13BattleText6
+ db "@"
+
+Route13EndBattleText6: ; 5593d (15:593d)
+ TX_FAR _Route13EndBattleText6
+ db "@"
+
+Route13AfterBattleText6: ; 55942 (15:5942)
+ TX_FAR _Route13AfterBattleText6
+ db "@"
+
+Route13Text6: ; 55947 (15:5947)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText7: ; 55951 (15:5951)
+ TX_FAR _Route13BattleText7
+ db "@"
+
+Route13EndBattleText7: ; 55956 (15:5956)
+ TX_FAR _Route13EndBattleText7
+ db "@"
+
+Route13AfterBattleText7: ; 5595b (15:595b)
+ TX_FAR _Route13AfterBattleText7
+ db "@"
+
+Route13Text7: ; 55960 (15:5960)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText8: ; 5596a (15:596a)
+ TX_FAR _Route13BattleText8
+ db "@"
+
+Route13EndBattleText8: ; 5596f (15:596f)
+ TX_FAR _Route13EndBattleText8
+ db "@"
+
+Route13AfterBattleText8: ; 55974 (15:5974)
+ TX_FAR _Route13AfterBattleText8
+ db "@"
+
+Route13Text8: ; 55979 (15:5979)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText9: ; 55983 (15:5983)
+ TX_FAR _Route13BattleText9
+ db "@"
+
+Route13EndBattleText9: ; 55988 (15:5988)
+ TX_FAR _Route13EndBattleText9
+ db "@"
+
+Route13AfterBattleText9: ; 5598d (15:598d)
+ TX_FAR _Route13AfterBattleText9
+ db "@"
+
+Route13Text9: ; 55992 (15:5992)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText10: ; 5599c (15:599c)
+ TX_FAR _Route13BattleText10
+ db "@"
+
+Route13EndBattleText10: ; 559a1 (15:59a1)
+ TX_FAR _Route13EndBattleText10
+ db "@"
+
+Route13AfterBattleText10: ; 559a6 (15:59a6)
+ TX_FAR _Route13AfterBattleText10
+ db "@"
+
+Route13Text10: ; 559ab (15:59ab)
+ db $08 ; asm
+ ld hl, Route13TrainerHeader10
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText11: ; 559b5 (15:59b5)
+ TX_FAR _Route13BattleText11
+ db "@"
+
+Route13EndBattleText11: ; 559ba (15:59ba)
+ TX_FAR _Route13EndBattleText11
+ db "@"
+
+Route13AfterBattleText11: ; 559bf (15:59bf)
+ TX_FAR _Route13AfterBattleText11
+ db "@"
+
+Route13Text11: ; 559c4 (15:59c4)
+ TX_FAR _Route13Text11
+ db "@"
+
+Route13Text12: ; 559c9 (15:59c9)
+ TX_FAR _Route13Text12
+ db "@"
+
+Route13Text13: ; 559ce (15:59ce)
+ TX_FAR _Route13Text13
+ db "@"
diff --git a/scripts/route14.asm b/scripts/route14.asm
new file mode 100755
index 00000000..0f9b49cf
--- /dev/null
+++ b/scripts/route14.asm
@@ -0,0 +1,303 @@
+Route14Script: ; 559d3 (15:59d3)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route14TrainerHeaders
+ ld de, Route14ScriptPointers
+ ld a, [W_ROUTE14CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE14CURSCRIPT], a
+ ret
+
+Route14ScriptPointers: ; 559e6 (15:59e6)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route14TextPointers: ; 559ec (15:59ec)
+ dw Route14Text1
+ dw Route14Text2
+ dw Route14Text3
+ dw Route14Text4
+ dw Route14Text5
+ dw Route14Text6
+ dw Route14Text7
+ dw Route14Text8
+ dw Route14Text9
+ dw Route14Text10
+ dw Route14Text11
+
+Route14TrainerHeaders: ; 55a02 (15:5a02)
+Route14TrainerHeader0: ; 55a02 (15:5a02)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText1 ; 0x5a85 TextBeforeBattle
+ dw Route14AfterBattleText1 ; 0x5a8f TextAfterBattle
+ dw Route14EndBattleText1 ; 0x5a8a TextEndBattle
+ dw Route14EndBattleText1 ; 0x5a8a TextEndBattle
+
+Route14TrainerHeader1: ; 55a0e (15:5a0e)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText2 ; 0x5a9e TextBeforeBattle
+ dw Route14AfterBattleText2 ; 0x5aa8 TextAfterBattle
+ dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle
+ dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle
+
+Route14TrainerHeader2: ; 55a1a (15:5a1a)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText3 ; 0x5ab7 TextBeforeBattle
+ dw Route14AfterBattleText3 ; 0x5ac1 TextAfterBattle
+ dw Route14EndBattleText3 ; 0x5abc TextEndBattle
+ dw Route14EndBattleText3 ; 0x5abc TextEndBattle
+
+Route14TrainerHeader3: ; 55a26 (15:5a26)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText4 ; 0x5ad0 TextBeforeBattle
+ dw Route14AfterBattleText4 ; 0x5ada TextAfterBattle
+ dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle
+ dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle
+
+Route14TrainerHeader4: ; 55a32 (15:5a32)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText5 ; 0x5ae9 TextBeforeBattle
+ dw Route14AfterBattleText5 ; 0x5af3 TextAfterBattle
+ dw Route14EndBattleText5 ; 0x5aee TextEndBattle
+ dw Route14EndBattleText5 ; 0x5aee TextEndBattle
+
+Route14TrainerHeader5: ; 55a3e (15:5a3e)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText6 ; 0x5b02 TextBeforeBattle
+ dw Route14AfterBattleText6 ; 0x5b0c TextAfterBattle
+ dw Route14EndBattleText6 ; 0x5b07 TextEndBattle
+ dw Route14EndBattleText6 ; 0x5b07 TextEndBattle
+
+Route14TrainerHeader6: ; 55a4a (15:5a4a)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText7 ; 0x5b1b TextBeforeBattle
+ dw Route14AfterBattleText7 ; 0x5b25 TextAfterBattle
+ dw Route14EndBattleText7 ; 0x5b20 TextEndBattle
+ dw Route14EndBattleText7 ; 0x5b20 TextEndBattle
+
+Route14TrainerHeader7: ; 55a56 (15:5a56)
+ db $8 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText8 ; 0x5b34 TextBeforeBattle
+ dw Route14AfterBattleText8 ; 0x5b3e TextAfterBattle
+ dw Route14EndBattleText8 ; 0x5b39 TextEndBattle
+ dw Route14EndBattleText8 ; 0x5b39 TextEndBattle
+
+Route14TrainerHeader8: ; 55a62 (15:5a62)
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText9 ; 0x5b4d TextBeforeBattle
+ dw Route14AfterBattleText9 ; 0x5b57 TextAfterBattle
+ dw Route14EndBattleText9 ; 0x5b52 TextEndBattle
+ dw Route14EndBattleText9 ; 0x5b52 TextEndBattle
+
+Route14TrainerHeader9: ; 55a6e (15:5a6e)
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7db ; flag's byte
+ dw Route14BattleText10 ; 0x5b66 TextBeforeBattle
+ dw Route14AfterBattleText10 ; 0x5b70 TextAfterBattle
+ dw Route14EndBattleText10 ; 0x5b6b TextEndBattle
+ dw Route14EndBattleText10 ; 0x5b6b TextEndBattle
+
+ db $ff
+
+Route14Text1: ; 55a7b (15:5a7b)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText1: ; 55a85 (15:5a85)
+ TX_FAR _Route14BattleText1
+ db "@"
+
+Route14EndBattleText1: ; 55a8a (15:5a8a)
+ TX_FAR _Route14EndBattleText1
+ db "@"
+
+Route14AfterBattleText1: ; 55a8f (15:5a8f)
+ TX_FAR _Route14AfterBattleText1
+ db "@"
+
+Route14Text2: ; 55a94 (15:5a94)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText2: ; 55a9e (15:5a9e)
+ TX_FAR _Route14BattleText2
+ db "@"
+
+Route14EndBattleText2: ; 55aa3 (15:5aa3)
+ TX_FAR _Route14EndBattleText2
+ db "@"
+
+Route14AfterBattleText2: ; 55aa8 (15:5aa8)
+ TX_FAR _Route14AfterBattleText2
+ db "@"
+
+Route14Text3: ; 55aad (15:5aad)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText3: ; 55ab7 (15:5ab7)
+ TX_FAR _Route14BattleText3
+ db "@"
+
+Route14EndBattleText3: ; 55abc (15:5abc)
+ TX_FAR _Route14EndBattleText3
+ db "@"
+
+Route14AfterBattleText3: ; 55ac1 (15:5ac1)
+ TX_FAR _Route14AfterBattleText3
+ db "@"
+
+Route14Text4: ; 55ac6 (15:5ac6)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText4: ; 55ad0 (15:5ad0)
+ TX_FAR _Route14BattleText4
+ db "@"
+
+Route14EndBattleText4: ; 55ad5 (15:5ad5)
+ TX_FAR _Route14EndBattleText4
+ db "@"
+
+Route14AfterBattleText4: ; 55ada (15:5ada)
+ TX_FAR _Route14AfterBattleText4
+ db "@"
+
+Route14Text5: ; 55adf (15:5adf)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText5: ; 55ae9 (15:5ae9)
+ TX_FAR _Route14BattleText5
+ db "@"
+
+Route14EndBattleText5: ; 55aee (15:5aee)
+ TX_FAR _Route14EndBattleText5
+ db "@"
+
+Route14AfterBattleText5: ; 55af3 (15:5af3)
+ TX_FAR _Route14AfterBattleText5
+ db "@"
+
+Route14Text6: ; 55af8 (15:5af8)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText6: ; 55b02 (15:5b02)
+ TX_FAR _Route14BattleText6
+ db "@"
+
+Route14EndBattleText6: ; 55b07 (15:5b07)
+ TX_FAR _Route14EndBattleText6
+ db "@"
+
+Route14AfterBattleText6: ; 55b0c (15:5b0c)
+ TX_FAR _Route14AfterBattleText6
+ db "@"
+
+Route14Text7: ; 55b11 (15:5b11)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText7: ; 55b1b (15:5b1b)
+ TX_FAR _Route14BattleText7
+ db "@"
+
+Route14EndBattleText7: ; 55b20 (15:5b20)
+ TX_FAR _Route14EndBattleText7
+ db "@"
+
+Route14AfterBattleText7: ; 55b25 (15:5b25)
+ TX_FAR _Route14AfterBattleText7
+ db "@"
+
+Route14Text8: ; 55b2a (15:5b2a)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText8: ; 55b34 (15:5b34)
+ TX_FAR _Route14BattleText8
+ db "@"
+
+Route14EndBattleText8: ; 55b39 (15:5b39)
+ TX_FAR _Route14EndBattleText8
+ db "@"
+
+Route14AfterBattleText8: ; 55b3e (15:5b3e)
+ TX_FAR _Route14AfterBattleText8
+ db "@"
+
+Route14Text9: ; 55b43 (15:5b43)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText9: ; 55b4d (15:5b4d)
+ TX_FAR _Route14BattleText9
+ db "@"
+
+Route14EndBattleText9: ; 55b52 (15:5b52)
+ TX_FAR _Route14EndBattleText9
+ db "@"
+
+Route14AfterBattleText9: ; 55b57 (15:5b57)
+ TX_FAR _Route14AfterBattleText9
+ db "@"
+
+Route14Text10: ; 55b5c (15:5b5c)
+ db $08 ; asm
+ ld hl, Route14TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText10: ; 55b66 (15:5b66)
+ TX_FAR _Route14BattleText10
+ db "@"
+
+Route14EndBattleText10: ; 55b6b (15:5b6b)
+ TX_FAR _Route14EndBattleText10
+ db "@"
+
+Route14AfterBattleText10: ; 55b70 (15:5b70)
+ TX_FAR _Route14AfterBattleText10
+ db "@"
+
+Route14Text11: ; 55b75 (15:5b75)
+ TX_FAR _Route14Text11
+ db "@"
diff --git a/scripts/route15.asm b/scripts/route15.asm
new file mode 100755
index 00000000..f7eaa758
--- /dev/null
+++ b/scripts/route15.asm
@@ -0,0 +1,296 @@
+Route15Script: ; 597ae (16:57ae)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route15TrainerHeaders
+ ld de, Route15ScriptPointers
+ ld a, [W_ROUTE15CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE15CURSCRIPT], a
+ ret
+
+Route15ScriptPointers: ; 597c1 (16:57c1)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route15TextPointers: ; 597c7 (16:57c7)
+ dw Route15Text1
+ dw Route15Text2
+ dw Route15Text3
+ dw Route15Text4
+ dw Route15Text5
+ dw Route15Text6
+ dw Route15Text7
+ dw Route15Text8
+ dw Route15Text9
+ dw Route15Text10
+ dw Predef5CText
+ dw Route15Text12
+
+Route15TrainerHeaders: ; 597df (16:57df)
+Route15TrainerHeader0: ; 597df (16:57df)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText1 ; 0x5898 TextBeforeBattle
+ dw Route15AfterBattleText1 ; 0x58a2 TextAfterBattle
+ dw Route15EndBattleText1 ; 0x589d TextEndBattle
+ dw Route15EndBattleText1 ; 0x589d TextEndBattle
+
+Route15TrainerHeader1: ; 597eb (16:57eb)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText2 ; 0x58a7 TextBeforeBattle
+ dw Route15AfterBattleText2 ; 0x58b1 TextAfterBattle
+ dw Route15EndBattleText2 ; 0x58ac TextEndBattle
+ dw Route15EndBattleText2 ; 0x58ac TextEndBattle
+
+Route15TrainerHeader2: ; 597f7 (16:57f7)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText3 ; 0x58b6 TextBeforeBattle
+ dw Route15AfterBattleText3 ; 0x58c0 TextAfterBattle
+ dw Route15EndBattleText3 ; 0x58bb TextEndBattle
+ dw Route15EndBattleText3 ; 0x58bb TextEndBattle
+
+Route15TrainerHeader3: ; 59803 (16:5803)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText4 ; 0x58c5 TextBeforeBattle
+ dw Route15AfterBattleText4 ; 0x58cf TextAfterBattle
+ dw Route15EndBattleText4 ; 0x58ca TextEndBattle
+ dw Route15EndBattleText4 ; 0x58ca TextEndBattle
+
+Route15TrainerHeader4: ; 5980f (16:580f)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText5 ; 0x58d4 TextBeforeBattle
+ dw Route15AfterBattleText5 ; 0x58de TextAfterBattle
+ dw Route15EndBattleText5 ; 0x58d9 TextEndBattle
+ dw Route15EndBattleText5 ; 0x58d9 TextEndBattle
+
+Route15TrainerHeader5: ; 5981b (16:581b)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText6 ; 0x58e3 TextBeforeBattle
+ dw Route15AfterBattleText6 ; 0x58ed TextAfterBattle
+ dw Route15EndBattleText6 ; 0x58e8 TextEndBattle
+ dw Route15EndBattleText6 ; 0x58e8 TextEndBattle
+
+Route15TrainerHeader6: ; 59827 (16:5827)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText7 ; 0x58f2 TextBeforeBattle
+ dw Route15AfterBattleText7 ; 0x58fc TextAfterBattle
+ dw Route15EndBattleText7 ; 0x58f7 TextEndBattle
+ dw Route15EndBattleText7 ; 0x58f7 TextEndBattle
+
+Route15TrainerHeader7: ; 59833 (16:5833)
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText8 ; 0x5901 TextBeforeBattle
+ dw Route15AfterBattleText8 ; 0x590b TextAfterBattle
+ dw Route15EndBattleText8 ; 0x5906 TextEndBattle
+ dw Route15EndBattleText8 ; 0x5906 TextEndBattle
+
+Route15TrainerHeader8: ; 5983f (16:583f)
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText9 ; 0x5910 TextBeforeBattle
+ dw Route15AfterBattleText9 ; 0x591a TextAfterBattle
+ dw Route15EndBattleText9 ; 0x5915 TextEndBattle
+ dw Route15EndBattleText9 ; 0x5915 TextEndBattle
+
+Route15TrainerHeader9: ; 5984b (16:584b)
+ db $a ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw Route15BattleText10 ; 0x591f TextBeforeBattle
+ dw Route15AfterBattleText10 ; 0x5929 TextAfterBattle
+ dw Route15EndBattleText10 ; 0x5924 TextEndBattle
+ dw Route15EndBattleText10 ; 0x5924 TextEndBattle
+
+ db $ff
+
+Route15Text1: ; 59858 (16:5858)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader0
+ jr asm_33cb7 ; 0x5985c $34
+
+Route15Text2: ; 5985e (16:585e)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader1
+ jr asm_33cb7 ; 0x59862 $2e
+
+Route15Text3: ; 59864 (16:5864)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader2
+ jr asm_33cb7 ; 0x59868 $28
+
+Route15Text4: ; 5986a (16:586a)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader3
+ jr asm_33cb7 ; 0x5986e $22
+
+Route15Text5: ; 59870 (16:5870)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader4
+ jr asm_33cb7 ; 0x59874 $1c
+
+Route15Text6: ; 59876 (16:5876)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader5
+ jr asm_33cb7 ; 0x5987a $16
+
+Route15Text7: ; 5987c (16:587c)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader6
+ jr asm_33cb7 ; 0x59880 $10
+
+Route15Text8: ; 59882 (16:5882)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader7
+ jr asm_33cb7 ; 0x59886 $a
+
+Route15Text9: ; 59888 (16:5888)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader8
+ jr asm_33cb7 ; 0x5988c $4
+
+Route15Text10: ; 5988e (16:588e)
+ db $8 ; asm
+ ld hl, Route15TrainerHeader9
+asm_33cb7: ; 59892 (16:5892)
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route15BattleText1: ; 59898 (16:5898)
+ TX_FAR _Route15BattleText1
+ db "@"
+
+Route15EndBattleText1: ; 5989d (16:589d)
+ TX_FAR _Route15EndBattleText1
+ db "@"
+
+Route15AfterBattleText1: ; 598a2 (16:58a2)
+ TX_FAR _Route15AfterBattleText1
+ db "@"
+
+Route15BattleText2: ; 598a7 (16:58a7)
+ TX_FAR _Route15BattleText2
+ db "@"
+
+Route15EndBattleText2: ; 598ac (16:58ac)
+ TX_FAR _Route15EndBattleText2
+ db "@"
+
+Route15AfterBattleText2: ; 598b1 (16:58b1)
+ TX_FAR _Route15AfterBattleText2
+ db "@"
+
+Route15BattleText3: ; 598b6 (16:58b6)
+ TX_FAR _Route15BattleText3
+ db "@"
+
+Route15EndBattleText3: ; 598bb (16:58bb)
+ TX_FAR _Route15EndBattleText3
+ db "@"
+
+Route15AfterBattleText3: ; 598c0 (16:58c0)
+ TX_FAR _Route15AfterBattleText3
+ db "@"
+
+Route15BattleText4: ; 598c5 (16:58c5)
+ TX_FAR _Route15BattleText4
+ db "@"
+
+Route15EndBattleText4: ; 598ca (16:58ca)
+ TX_FAR _Route15EndBattleText4
+ db "@"
+
+Route15AfterBattleText4: ; 598cf (16:58cf)
+ TX_FAR _Route15AfterBattleText4
+ db "@"
+
+Route15BattleText5: ; 598d4 (16:58d4)
+ TX_FAR _Route15BattleText5
+ db "@"
+
+Route15EndBattleText5: ; 598d9 (16:58d9)
+ TX_FAR _Route15EndBattleText5
+ db "@"
+
+Route15AfterBattleText5: ; 598de (16:58de)
+ TX_FAR _Route15AfterBattleText5
+ db "@"
+
+Route15BattleText6: ; 598e3 (16:58e3)
+ TX_FAR _Route15BattleText6
+ db "@"
+
+Route15EndBattleText6: ; 598e8 (16:58e8)
+ TX_FAR _Route15EndBattleText6
+ db "@"
+
+Route15AfterBattleText6: ; 598ed (16:58ed)
+ TX_FAR _Route15AfterBattleText6
+ db "@"
+
+Route15BattleText7: ; 598f2 (16:58f2)
+ TX_FAR _Route15BattleText7
+ db "@"
+
+Route15EndBattleText7: ; 598f7 (16:58f7)
+ TX_FAR _Route15EndBattleText7
+ db "@"
+
+Route15AfterBattleText7: ; 598fc (16:58fc)
+ TX_FAR _Route15AfterBattleText7
+ db "@"
+
+Route15BattleText8: ; 59901 (16:5901)
+ TX_FAR _Route15BattleText8
+ db "@"
+
+Route15EndBattleText8: ; 59906 (16:5906)
+ TX_FAR _Route15EndBattleText8
+ db "@"
+
+Route15AfterBattleText8: ; 5990b (16:590b)
+ TX_FAR _Route15AfterBattleText8
+ db "@"
+
+Route15BattleText9: ; 59910 (16:5910)
+ TX_FAR _Route15BattleText9
+ db "@"
+
+Route15EndBattleText9: ; 59915 (16:5915)
+ TX_FAR _Route15EndBattleText9
+ db "@"
+
+Route15AfterBattleText9: ; 5991a (16:591a)
+ TX_FAR _Route15AfterBattleText9
+ db "@"
+
+Route15BattleText10: ; 5991f (16:591f)
+ TX_FAR _Route15BattleText10
+ db "@"
+
+Route15EndBattleText10: ; 59924 (16:5924)
+ TX_FAR _Route15EndBattleText10
+ db "@"
+
+Route15AfterBattleText10: ; 59929 (16:5929)
+ TX_FAR _Route15AfterBattleText10
+ db "@"
+
+Route15Text12: ; 5992e (16:592e)
+ TX_FAR _Route15Text12
+ db "@"
diff --git a/scripts/route15gate.asm b/scripts/route15gate.asm
new file mode 100755
index 00000000..76e9aadf
--- /dev/null
+++ b/scripts/route15gate.asm
@@ -0,0 +1,9 @@
+Route15GateScript: ; 49602 (12:5602)
+ jp EnableAutoTextBoxDrawing
+
+Route15GateTextPointers: ; 49605 (12:5605)
+ dw Route15GateText1
+
+Route15GateText1: ; 49607 (12:5607)
+ TX_FAR _Route15GateText1
+ db "@"
diff --git a/scripts/route15gateupstairs.asm b/scripts/route15gateupstairs.asm
new file mode 100755
index 00000000..3c2afcd4
--- /dev/null
+++ b/scripts/route15gateupstairs.asm
@@ -0,0 +1,47 @@
+Route15GateUpstairsScript: ; 4964a (12:564a)
+ jp DisableAutoTextBoxDrawing
+
+Route15GateUpstairsTextPointers: ; 4964d (12:564d)
+ dw Route15GateUpstairsText1
+ dw Route15GateUpstairsText2
+
+Route15GateUpstairsText1: ; 49651 (12:5651)
+ db $8
+ ld a, [$d7dd]
+ bit 0, a
+ jr nz, .asm_49683 ; 0x49657 $2a
+ ld a, $32
+ ld [$ffdb], a
+ ld a, EXP__ALL
+ ld [$ffdc], a
+ ld [$d11e], a
+ call GetItemName
+ ld hl, $cd6d
+ ld de, $cc5b
+ ld bc, $000d
+ call CopyData
+ ld a, $62
+ call Predef
+ ld a, [$ffdb]
+ cp $1
+ jr nz, .asm_49689 ; 0x4967c $b
+ ld hl, $d7dd
+ set 0, [hl]
+.asm_49683
+ ld hl, Route15GateUpstairsText_4968c
+ call PrintText
+.asm_49689
+ jp TextScriptEnd
+
+Route15GateUpstairsText_4968c: ; 4968c (12:568c)
+ TX_FAR _Route15GateUpstairsText_4968c
+ db "@"
+
+Route15GateUpstairsText2: ; 49691 (12:5691)
+ db $8
+ ld hl, Route15GateUpstairsText_49698
+ jp Route12GateUpstairsScript_495c9
+
+Route15GateUpstairsText_49698: ; 49698 (12:5698)
+ TX_FAR _Route15GateUpstairsText_49698
+ db "@"
diff --git a/scripts/route16.asm b/scripts/route16.asm
new file mode 100755
index 00000000..08739131
--- /dev/null
+++ b/scripts/route16.asm
@@ -0,0 +1,263 @@
+Route16Script: ; 59933 (16:5933)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route16TrainerHeaders
+ ld de, Route16ScriptPointers
+ ld a, [W_ROUTE16CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE16CURSCRIPT], a
+ ret
+
+Func_59946: ; 59946 (16:5946)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE16CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route16ScriptPointers: ; 59951 (16:5951)
+ dw Route16Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw Route16Script3
+
+Route16Script0: ; 59959 (16:5959)
+ ld hl, $d7e0
+ bit 1, [hl]
+ jp nz, CheckFightingMapTrainers
+ bit 0, [hl]
+ res 0, [hl]
+ jp z, CheckFightingMapTrainers
+ ld a, $a
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, SNORLAX
+ ld [W_CUROPPONENT], a ; $d059
+ ld a, 30
+ ld [W_CURENEMYLVL], a ; $d127
+ ld a, $21
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ call UpdateSprites
+ ld a, $3
+ ld [W_ROUTE16CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route16Script3: ; 5998f (16:598f)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, Func_59946
+ call UpdateSprites
+ ld a, [$cf0b]
+ cp $2
+ jr z, .asm_599a8
+ ld a, $b
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_599a8
+ ld hl, $d7e0
+ set 1, [hl]
+ call Delay3
+ ld a, $0
+ ld [W_ROUTE16CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route16TextPointers: ; 599b9 (16:59b9)
+ dw Route16Text1
+ dw Route16Text2
+ dw Route16Text3
+ dw Route16Text4
+ dw Route16Text5
+ dw Route16Text6
+ dw Route16Text7
+ dw Route16Text8
+ dw Route16Text9
+ dw Route16Text10
+ dw Route16Text11
+
+Route16TrainerHeaders: ; 599cf (16:59cf)
+Route16TrainerHeader0: ; 599cf (16:59cf)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw Route16BattleText1 ; 0x5a22 TextBeforeBattle
+ dw Route16AfterBattleText1 ; 0x5a2c TextAfterBattle
+ dw Route16EndBattleText1 ; 0x5a27 TextEndBattle
+ dw Route16EndBattleText1 ; 0x5a27 TextEndBattle
+
+Route16TrainerHeader1: ; 599db (16:59db)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw Route16BattleText2 ; 0x5a3b TextBeforeBattle
+ dw Route16AfterBattleText2 ; 0x5a45 TextAfterBattle
+ dw Route16EndBattleText2 ; 0x5a40 TextEndBattle
+ dw Route16EndBattleText2 ; 0x5a40 TextEndBattle
+
+Route16TrainerHeader2: ; 599e7 (16:59e7)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw Route16BattleText3 ; 0x5a54 TextBeforeBattle
+ dw Route16AfterBattleText3 ; 0x5a5e TextAfterBattle
+ dw Route16EndBattleText3 ; 0x5a59 TextEndBattle
+ dw Route16EndBattleText3 ; 0x5a59 TextEndBattle
+
+Route16TrainerHeader3: ; 599f3 (16:59f3)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw Route16BattleText4 ; 0x5a6d TextBeforeBattle
+ dw Route16AfterBattleText4 ; 0x5a77 TextAfterBattle
+ dw Route16EndBattleText4 ; 0x5a72 TextEndBattle
+ dw Route16EndBattleText4 ; 0x5a72 TextEndBattle
+
+Route16TrainerHeader4: ; 599ff (16:59ff)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw Route16BattleText5 ; 0x5a86 TextBeforeBattle
+ dw Route16AfterBattleText5 ; 0x5a90 TextAfterBattle
+ dw Route16EndBattleText5 ; 0x5a8b TextEndBattle
+ dw Route16EndBattleText5 ; 0x5a8b TextEndBattle
+
+Route16TrainerHeader5: ; 59a0b (16:5a0b)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw Route16BattleText6 ; 0x5a9f TextBeforeBattle
+ dw Route16AfterBattleText6 ; 0x5aa9 TextAfterBattle
+ dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle
+ dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle
+
+ db $ff
+
+Route16Text1: ; 59a18 (16:5a18)
+ db $08 ; asm
+ ld hl, Route16TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText1: ; 59a22 (16:5a22)
+ TX_FAR _Route16BattleText1
+ db "@"
+
+Route16EndBattleText1: ; 59a27 (16:5a27)
+ TX_FAR _Route16EndBattleText1
+ db "@"
+
+Route16AfterBattleText1: ; 59a2c (16:5a2c)
+ TX_FAR _Route16AfterBattleText1
+ db "@"
+
+Route16Text2: ; 59a31 (16:5a31)
+ db $08 ; asm
+ ld hl, Route16TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText2: ; 59a3b (16:5a3b)
+ TX_FAR _Route16BattleText2
+ db "@"
+
+Route16EndBattleText2: ; 59a40 (16:5a40)
+ TX_FAR _Route16EndBattleText2
+ db "@"
+
+Route16AfterBattleText2: ; 59a45 (16:5a45)
+ TX_FAR _Route16AfterBattleText2
+ db "@"
+
+Route16Text3: ; 59a4a (16:5a4a)
+ db $08 ; asm
+ ld hl, Route16TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText3: ; 59a54 (16:5a54)
+ TX_FAR _Route16BattleText3
+ db "@"
+
+Route16EndBattleText3: ; 59a59 (16:5a59)
+ TX_FAR _Route16EndBattleText3
+ db "@"
+
+Route16AfterBattleText3: ; 59a5e (16:5a5e)
+ TX_FAR _Route16AfterBattleText3
+ db "@"
+
+Route16Text4: ; 59a63 (16:5a63)
+ db $08 ; asm
+ ld hl, Route16TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText4: ; 59a6d (16:5a6d)
+ TX_FAR _Route16BattleText4
+ db "@"
+
+Route16EndBattleText4: ; 59a72 (16:5a72)
+ TX_FAR _Route16EndBattleText4
+ db "@"
+
+Route16AfterBattleText4: ; 59a77 (16:5a77)
+ TX_FAR _Route16AfterBattleText4
+ db "@"
+
+Route16Text5: ; 59a7c (16:5a7c)
+ db $08 ; asm
+ ld hl, Route16TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText5: ; 59a86 (16:5a86)
+ TX_FAR _Route16BattleText5
+ db "@"
+
+Route16EndBattleText5: ; 59a8b (16:5a8b)
+ TX_FAR _Route16EndBattleText5
+ db "@"
+
+Route16AfterBattleText5: ; 59a90 (16:5a90)
+ TX_FAR _Route16AfterBattleText5
+ db "@"
+
+Route16Text6: ; 59a95 (16:5a95)
+ db $08 ; asm
+ ld hl, Route16TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText6: ; 59a9f (16:5a9f)
+ TX_FAR _Route16BattleText6
+ db "@"
+
+Route16EndBattleText6: ; 59aa4 (16:5aa4)
+ TX_FAR _Route16EndBattleText6
+ db "@"
+
+Route16AfterBattleText6: ; 59aa9 (16:5aa9)
+ TX_FAR _Route16AfterBattleText6
+ db "@"
+
+Route16Text7: ; 59aae (16:5aae)
+ TX_FAR _Route16Text7
+ db "@"
+
+Route16Text10: ; 59ab3 (16:5ab3)
+ TX_FAR _Route16Text10
+ db "@"
+
+Route16Text11: ; 59ab8 (16:5ab8)
+ TX_FAR _Route16Text11
+ db "@"
+
+Route16Text8: ; 59abd (16:5abd)
+ TX_FAR _Route16Text8
+ db "@"
+
+Route16Text9: ; 59ac2 (16:5ac2)
+ TX_FAR _Route16Text9
+ db "@"
diff --git a/scripts/route16gate.asm b/scripts/route16gate.asm
new file mode 100755
index 00000000..5131a1ff
--- /dev/null
+++ b/scripts/route16gate.asm
@@ -0,0 +1,121 @@
+Route16GateScript: ; 496be (12:56be)
+ ld hl, $d732
+ res 5, [hl]
+ call EnableAutoTextBoxDrawing
+ ld a, [W_ROUTE16GATECURSCRIPT]
+ ld hl, Route16GateScriptPointers
+ jp CallFunctionInTable
+
+Route16GateScriptPointers: ; 496cf (12:56cf)
+ dw Route16GateScript0
+ dw Route16GateScript1
+ dw Route16GateScript2
+ dw Route16GateScript3
+
+Route16GateScript0: ; 496d7 (12:56d7)
+ call Func_49755
+ ret nz
+ ld hl, CoordsData_49714
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $3
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, [$cd3d]
+ cp $1
+ jr z, .asm_4970e ; 0x496f1 $1b
+ ld a, [$cd3d]
+ dec a
+ ld [$cd38], a
+ ld b, $0
+ ld c, a
+ ld a, $40
+ ld hl, $ccd3
+ call FillMemory
+ call Func_3486
+ ld a, $1
+ ld [W_ROUTE16GATECURSCRIPT], a
+ ret
+.asm_4970e
+ ld a, $2
+ ld [W_ROUTE16GATECURSCRIPT], a
+ ret
+
+CoordsData_49714: ; 49714 (12:5714)
+ db $07,$04
+ db $08,$04
+ db $09,$04
+ db $0A,$04
+ db $FF
+
+Route16GateScript1: ; 4971d (12:571d)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+Route16GateScript2: ; 49727 (12:5727)
+ ld a, $1
+ ld [H_SPRITEHEIGHT], a
+ call DisplayTextID
+ ld a, $1
+ ld [$cd38], a
+ ld a, $10
+ ld [$ccd3], a
+ call Func_3486
+ ld a, $3
+ ld [W_ROUTE16GATECURSCRIPT], a
+ ret
+
+Route16GateScript3: ; 49741 (12:5741)
+ ld a, [$cd38]
+ and a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d730
+ res 7, [hl]
+ ld a, $0
+ ld [W_ROUTE16GATECURSCRIPT], a
+ ret
+
+Func_49755: ; 49755 (12:5755)
+ ld b, BICYCLE
+ jp IsItemInBag
+
+Route16GateTextPointers: ; 4975a (12:575a)
+ dw Route16GateText1
+ dw Route16GateText2
+ dw Route16GateText3
+
+Route16GateText1: ; 49760 (12:5760)
+ db $08 ; asm
+ call Func_49755
+ jr z, .asm_0bdf3 ; 0x49764
+ ld hl, Route16GateText_4977c
+ call PrintText
+ jr .asm_56c9d ; 0x4976c
+.asm_0bdf3 ; 0x4976e
+ ld hl, Route16GateText_49777
+ call PrintText
+.asm_56c9d ; 0x49774
+ jp TextScriptEnd
+
+Route16GateText_49777: ; 49777 (12:5777)
+ TX_FAR _Route16GateText_49777
+ db "@"
+
+Route16GateText_4977c: ; 4977c (12:577c)
+ TX_FAR _Route16GateText_4977c
+ db "@"
+
+Route16GateText3: ; 49781 (12:5781)
+ TX_FAR _Route16GateText_49781
+ db "@"
+
+Route16GateText2: ; 49786 (12:5786)
+ TX_FAR _Route16GateText2
+ db "@"
diff --git a/scripts/route16gateupstairs.asm b/scripts/route16gateupstairs.asm
new file mode 100755
index 00000000..c9996dcd
--- /dev/null
+++ b/scripts/route16gateupstairs.asm
@@ -0,0 +1,46 @@
+Route16GateUpstairsScript: ; 4980b (12:580b)
+ jp DisableAutoTextBoxDrawing
+
+Route16GateUpstairsTextPointers: ; 4980e (12:580e)
+ dw Route16GateUpstairsText1
+ dw Route16GateUpstairsText2
+ dw Route16GateUpstairsText3
+ dw Route16GateUpstairsText4
+
+Route16GateUpstairsText1: ; 49816 (12:5816)
+ db $08 ; asm
+ ld hl, Route16GateUpstairsText_49820
+ call PrintText
+ jp TextScriptEnd
+
+Route16GateUpstairsText_49820: ; 49820 (12:5820)
+ TX_FAR _Route16GateUpstairsText_49820
+ db "@"
+
+Route16GateUpstairsText2: ; 49825 (12:5825)
+ db $08 ; asm
+ ld hl, Route16GateUpstairsText_4982f
+ call PrintText
+ jp TextScriptEnd
+
+Route16GateUpstairsText_4982f: ; 4982f (12:582f)
+ TX_FAR _Route16GateUpstairsText_4982f
+ db "@"
+
+Route16GateUpstairsText3: ; 49834 (12:5834)
+ db $8
+ ld hl, Route16GateUpstairsText_4983b
+ jp Route12GateUpstairsScript_495c9
+
+Route16GateUpstairsText_4983b: ; 4983b (12:583b)
+ TX_FAR _Route16GateUpstairsText_4983b
+ db "@"
+
+Route16GateUpstairsText4: ; 49840 (12:5840)
+ db $8
+ ld hl, Route16GateUpstairsText_49847 ; $5847
+ jp Route12GateUpstairsScript_495c9
+
+Route16GateUpstairsText_49847: ; 49847 (12:5847)
+ TX_FAR _Route16GateUpstairsText_49847
+ db "@"
diff --git a/scripts/route16house.asm b/scripts/route16house.asm
new file mode 100755
index 00000000..21c21b79
--- /dev/null
+++ b/scripts/route16house.asm
@@ -0,0 +1,56 @@
+Route16HouseScript: ; 1e5f8 (7:65f8)
+ jp EnableAutoTextBoxDrawing
+
+Route16HouseTextPointers: ; 1e5fb (7:65fb)
+ dw Route16HouseText1
+ dw Route16HouseText2
+
+Route16HouseText1: ; 1e5ff (7:65ff)
+ db $08 ; asm
+ ld a, [$d7e0]
+ bit 6, a
+ ld hl, HM02ExplanationText
+ jr nz, .asm_13616 ; 0x1e608
+ ld hl, Route16HouseText3
+ call PrintText
+ ld bc, (HM_02 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d7e0
+ set 6, [hl]
+ ld hl, ReceivedHM02Text
+ jr .asm_13616 ; 0x1e620
+.BagFull
+ ld hl, HM02NoRoomText
+.asm_13616 ; 0x1e625
+ call PrintText
+ jp TextScriptEnd
+
+Route16HouseText3: ; 1e62b (7:662b)
+ TX_FAR _Route16HouseText3
+ db "@"
+
+ReceivedHM02Text: ; 1e630 (7:6630)
+ TX_FAR _ReceivedHM02Text
+ db $11, "@"
+
+HM02ExplanationText: ; 1e636 (7:6636)
+ TX_FAR _HM02ExplanationText
+ db "@"
+
+HM02NoRoomText: ; 1e63b (7:663b)
+ TX_FAR _HM02NoRoomText
+ db "@"
+
+Route16HouseText2: ; 1e640 (7:6640)
+ db $08 ; asm
+ ld hl, Route16HouseText_1e652
+ call PrintText
+ ld a, FEAROW
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+Route16HouseText_1e652: ; 1e652 (7:6652)
+ TX_FAR _Route16HouseText_1e652
+ db "@"
diff --git a/scripts/route17.asm b/scripts/route17.asm
new file mode 100755
index 00000000..976d4236
--- /dev/null
+++ b/scripts/route17.asm
@@ -0,0 +1,328 @@
+Route17Script: ; 55b7a (15:5b7a)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route17TrainerHeaders
+ ld de, Route17ScriptPointers
+ ld a, [W_ROUTE17CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE17CURSCRIPT], a
+ ret
+
+Route17ScriptPointers: ; 55b8d (15:5b8d)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route17TextPointers: ; 55b93 (15:5b93)
+ dw Route17Text1
+ dw Route17Text2
+ dw Route17Text3
+ dw Route17Text4
+ dw Route17Text5
+ dw Route17Text6
+ dw Route17Text7
+ dw Route17Text8
+ dw Route17Text9
+ dw Route17Text10
+ dw Route17Text11
+ dw Route17Text12
+ dw Route17Text13
+ dw Route17Text14
+ dw Route17Text15
+ dw Route17Text16
+
+Route17TrainerHeaders: ; 55bb3 (15:5bb3)
+Route17TrainerHeader0: ; 55bb3 (15:5bb3)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText1 ; 0x5c36 TextBeforeBattle
+ dw Route17AfterBattleText1 ; 0x5c40 TextAfterBattle
+ dw Route17EndBattleText1 ; 0x5c3b TextEndBattle
+ dw Route17EndBattleText1 ; 0x5c3b TextEndBattle
+
+Route17TrainerHeader1: ; 55bbf (15:5bbf)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText2 ; 0x5c4f TextBeforeBattle
+ dw Route17AfterBattleText2 ; 0x5c59 TextAfterBattle
+ dw Route17EndBattleText2 ; 0x5c54 TextEndBattle
+ dw Route17EndBattleText2 ; 0x5c54 TextEndBattle
+
+Route17TrainerHeader2: ; 55bcb (15:5bcb)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText3 ; 0x5c68 TextBeforeBattle
+ dw Route17AfterBattleText3 ; 0x5c72 TextAfterBattle
+ dw Route17EndBattleText3 ; 0x5c6d TextEndBattle
+ dw Route17EndBattleText3 ; 0x5c6d TextEndBattle
+
+Route17TrainerHeader3: ; 55bd7 (15:5bd7)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText4 ; 0x5c81 TextBeforeBattle
+ dw Route17AfterBattleText4 ; 0x5c8b TextAfterBattle
+ dw Route17EndBattleText4 ; 0x5c86 TextEndBattle
+ dw Route17EndBattleText4 ; 0x5c86 TextEndBattle
+
+Route17TrainerHeader4: ; 55be3 (15:5be3)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText5 ; 0x5c9a TextBeforeBattle
+ dw Route17AfterBattleText5 ; 0x5ca4 TextAfterBattle
+ dw Route17EndBattleText5 ; 0x5c9f TextEndBattle
+ dw Route17EndBattleText5 ; 0x5c9f TextEndBattle
+
+Route17TrainerHeader5: ; 55bef (15:5bef)
+ db $6 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText6 ; 0x5cb3 TextBeforeBattle
+ dw Route17AfterBattleText6 ; 0x5cbd TextAfterBattle
+ dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle
+ dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle
+
+Route17TrainerHeader6: ; 55bfb (15:5bfb)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText7 ; 0x5ccc TextBeforeBattle
+ dw Route17AfterBattleText7 ; 0x5cd6 TextAfterBattle
+ dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle
+ dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle
+
+Route17TrainerHeader7: ; 55c07 (15:5c07)
+ db $8 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText8 ; 0x5ce5 TextBeforeBattle
+ dw Route17AfterBattleText8 ; 0x5cef TextAfterBattle
+ dw Route17EndBattleText8 ; 0x5cea TextEndBattle
+ dw Route17EndBattleText8 ; 0x5cea TextEndBattle
+
+Route17TrainerHeader8: ; 55c13 (15:5c13)
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText9 ; 0x5cfe TextBeforeBattle
+ dw Route17AfterBattleText9 ; 0x5d08 TextAfterBattle
+ dw Route17EndBattleText9 ; 0x5d03 TextEndBattle
+ dw Route17EndBattleText9 ; 0x5d03 TextEndBattle
+
+Route17TrainerHeader9: ; 55c1f (15:5c1f)
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e1 ; flag's byte
+ dw Route17BattleText10 ; 0x5d17 TextBeforeBattle
+ dw Route17AfterBattleText10 ; 0x5d21 TextAfterBattle
+ dw Route17EndBattleText10 ; 0x5d1c TextEndBattle
+ dw Route17EndBattleText10 ; 0x5d1c TextEndBattle
+
+ db $ff
+
+Route17Text1: ; 55c2c (15:5c2c)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText1: ; 55c36 (15:5c36)
+ TX_FAR _Route17BattleText1
+ db "@"
+
+Route17EndBattleText1: ; 55c3b (15:5c3b)
+ TX_FAR _Route17EndBattleText1
+ db "@"
+
+Route17AfterBattleText1: ; 55c40 (15:5c40)
+ TX_FAR _Route17AfterBattleText1
+ db "@"
+
+Route17Text2: ; 55c45 (15:5c45)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText2: ; 55c4f (15:5c4f)
+ TX_FAR _Route17BattleText2
+ db "@"
+
+Route17EndBattleText2: ; 55c54 (15:5c54)
+ TX_FAR _Route17EndBattleText2
+ db "@"
+
+Route17AfterBattleText2: ; 55c59 (15:5c59)
+ TX_FAR _Route17AfterBattleText2
+ db "@"
+
+Route17Text3: ; 55c5e (15:5c5e)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText3: ; 55c68 (15:5c68)
+ TX_FAR _Route17BattleText3
+ db "@"
+
+Route17EndBattleText3: ; 55c6d (15:5c6d)
+ TX_FAR _Route17EndBattleText3
+ db "@"
+
+Route17AfterBattleText3: ; 55c72 (15:5c72)
+ TX_FAR _Route17AfterBattleText3
+ db "@"
+
+Route17Text4: ; 55c77 (15:5c77)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText4: ; 55c81 (15:5c81)
+ TX_FAR _Route17BattleText4
+ db "@"
+
+Route17EndBattleText4: ; 55c86 (15:5c86)
+ TX_FAR _Route17EndBattleText4
+ db "@"
+
+Route17AfterBattleText4: ; 55c8b (15:5c8b)
+ TX_FAR _Route17AfterBattleText4
+ db "@"
+
+Route17Text5: ; 55c90 (15:5c90)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText5: ; 55c9a (15:5c9a)
+ TX_FAR _Route17BattleText5
+ db "@"
+
+Route17EndBattleText5: ; 55c9f (15:5c9f)
+ TX_FAR _Route17EndBattleText5
+ db "@"
+
+Route17AfterBattleText5: ; 55ca4 (15:5ca4)
+ TX_FAR _Route17AfterBattleText5
+ db "@"
+
+Route17Text6: ; 55ca9 (15:5ca9)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText6: ; 55cb3 (15:5cb3)
+ TX_FAR _Route17BattleText6
+ db "@"
+
+Route17EndBattleText6: ; 55cb8 (15:5cb8)
+ TX_FAR _Route17EndBattleText6
+ db "@"
+
+Route17AfterBattleText6: ; 55cbd (15:5cbd)
+ TX_FAR _Route17AfterBattleText6
+ db "@"
+
+Route17Text7: ; 55cc2 (15:5cc2)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText7: ; 55ccc (15:5ccc)
+ TX_FAR _Route17BattleText7
+ db "@"
+
+Route17EndBattleText7: ; 55cd1 (15:5cd1)
+ TX_FAR _Route17EndBattleText7
+ db "@"
+
+Route17AfterBattleText7: ; 55cd6 (15:5cd6)
+ TX_FAR _Route17AfterBattleText7
+ db "@"
+
+Route17Text8: ; 55cdb (15:5cdb)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText8: ; 55ce5 (15:5ce5)
+ TX_FAR _Route17BattleText8
+ db "@"
+
+Route17EndBattleText8: ; 55cea (15:5cea)
+ TX_FAR _Route17EndBattleText8
+ db "@"
+
+Route17AfterBattleText8: ; 55cef (15:5cef)
+ TX_FAR _Route17AfterBattleText8
+ db "@"
+
+Route17Text9: ; 55cf4 (15:5cf4)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText9: ; 55cfe (15:5cfe)
+ TX_FAR _Route17BattleText9
+ db "@"
+
+Route17EndBattleText9: ; 55d03 (15:5d03)
+ TX_FAR _Route17EndBattleText9
+ db "@"
+
+Route17AfterBattleText9: ; 55d08 (15:5d08)
+ TX_FAR _Route17AfterBattleText9
+ db "@"
+
+Route17Text10: ; 55d0d (15:5d0d)
+ db $08 ; asm
+ ld hl, Route17TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText10: ; 55d17 (15:5d17)
+ TX_FAR _Route17BattleText10
+ db "@"
+
+Route17EndBattleText10: ; 55d1c (15:5d1c)
+ TX_FAR _Route17EndBattleText10
+ db "@"
+
+Route17AfterBattleText10: ; 55d21 (15:5d21)
+ TX_FAR _Route17AfterBattleText10
+ db "@"
+
+Route17Text11: ; 55d26 (15:5d26)
+ TX_FAR _Route17Text11
+ db "@"
+
+Route17Text12: ; 55d2b (15:5d2b)
+ TX_FAR _Route17Text12
+ db "@"
+
+Route17Text13: ; 55d30 (15:5d30)
+ TX_FAR _Route17Text13
+ db "@"
+
+Route17Text14: ; 55d35 (15:5d35)
+ TX_FAR _Route17Text14
+ db "@"
+
+Route17Text15: ; 55d3a (15:5d3a)
+ TX_FAR _Route17Text15
+ db "@"
+
+Route17Text16: ; 55d3f (15:5d3f)
+ TX_FAR _Route17Text16
+ db "@"
diff --git a/scripts/route18.asm b/scripts/route18.asm
new file mode 100755
index 00000000..b15f5e42
--- /dev/null
+++ b/scripts/route18.asm
@@ -0,0 +1,112 @@
+Route18Script: ; 59ac7 (16:5ac7)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route18TrainerHeaders
+ ld de, Route18ScriptPointers
+ ld a, [W_ROUTE18CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE18CURSCRIPT], a
+ ret
+
+Route18ScriptPointers: ; 59ada (16:5ada)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route18TextPointers: ; 59ae0 (16:5ae0)
+ dw Route18Text1
+ dw Route18Text2
+ dw Route18Text3
+ dw Route18Text4
+ dw Route18Text5
+
+Route18TrainerHeaders: ; 59aea (16:5aea)
+Route18TrainerHeader0: ; 59aea (16:5aea)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e3 ; flag's byte
+ dw Route18BattleText1 ; 0x5b19 TextBeforeBattle
+ dw Route18AfterBattleText1 ; 0x5b23 TextAfterBattle
+ dw Route18EndBattleText1 ; 0x5b1e TextEndBattle
+ dw Route18EndBattleText1 ; 0x5b1e TextEndBattle
+
+Route18TrainerHeader1: ; 59af6 (16:5af6)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e3 ; flag's byte
+ dw Route18BattleText2 ; 0x5b32 TextBeforeBattle
+ dw Route18AfterBattleText2 ; 0x5b3c TextAfterBattle
+ dw Route18EndBattleText2 ; 0x5b37 TextEndBattle
+ dw Route18EndBattleText2 ; 0x5b37 TextEndBattle
+
+Route18TrainerHeader2: ; 59b02 (16:5b02)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e3 ; flag's byte
+ dw Route18BattleText3 ; 0x5b4b TextBeforeBattle
+ dw Route18AfterBattleText3 ; 0x5b55 TextAfterBattle
+ dw Route18EndBattleText3 ; 0x5b50 TextEndBattle
+ dw Route18EndBattleText3 ; 0x5b50 TextEndBattle
+
+ db $ff
+
+Route18Text1: ; 59b0f (16:5b0f)
+ db $08 ; asm
+ ld hl, Route18TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route18BattleText1: ; 59b19 (16:5b19)
+ TX_FAR _Route18BattleText1
+ db "@"
+
+Route18EndBattleText1: ; 59b1e (16:5b1e)
+ TX_FAR _Route18EndBattleText1
+ db "@"
+
+Route18AfterBattleText1: ; 59b23 (16:5b23)
+ TX_FAR _Route18AfterBattleText1
+ db "@"
+
+Route18Text2: ; 59b28 (16:5b28)
+ db $08 ; asm
+ ld hl, Route18TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route18BattleText2: ; 59b32 (16:5b32)
+ TX_FAR _Route18BattleText2
+ db "@"
+
+Route18EndBattleText2: ; 59b37 (16:5b37)
+ TX_FAR _Route18EndBattleText2
+ db "@"
+
+Route18AfterBattleText2: ; 59b3c (16:5b3c)
+ TX_FAR _Route18AfterBattleText2
+ db "@"
+
+Route18Text3: ; 59b41 (16:5b41)
+ db $08 ; asm
+ ld hl, Route18TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route18BattleText3: ; 59b4b (16:5b4b)
+ TX_FAR _Route18BattleText3
+ db "@"
+
+Route18EndBattleText3: ; 59b50 (16:5b50)
+ TX_FAR _Route18EndBattleText3
+ db "@"
+
+Route18AfterBattleText3: ; 59b55 (16:5b55)
+ TX_FAR _Route18AfterBattleText3
+ db "@"
+
+Route18Text4: ; 59b5a (16:5b5a)
+ TX_FAR _Route18Text4
+ db "@"
+
+Route18Text5: ; 59b5f (16:5b5f)
+ TX_FAR _Route18Text5
+ db "@"
diff --git a/scripts/route18gate.asm b/scripts/route18gate.asm
new file mode 100755
index 00000000..d55ed412
--- /dev/null
+++ b/scripts/route18gate.asm
@@ -0,0 +1,112 @@
+Route18GateScript: ; 49876 (12:5876)
+ ld hl, $d732
+ res 5, [hl]
+ call EnableAutoTextBoxDrawing
+ ld a, [W_ROUTE18GATECURSCRIPT]
+ ld hl, Route18GateScriptPointers
+ jp CallFunctionInTable
+
+Route18GateScriptPointers: ; 49887 (12:5887)
+ dw Route18GateScript0
+ dw Route18GateScript1
+ dw Route18GateScript2
+ dw Route18GateScript3
+
+Route18GateScript0: ; 4988f (12:588f)
+ call Func_49755
+ ret nz
+ ld hl, CoordsData_498cc
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $2
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, [$cd3d]
+ cp $1
+ jr z, .asm_498c6 ; 0x498a9 $1b
+ ld a, [$cd3d]
+ dec a
+ ld [$cd38], a
+ ld b, $0
+ ld c, a
+ ld a, $40
+ ld hl, $ccd3
+ call FillMemory
+ call Func_3486
+ ld a, $1
+ ld [W_ROUTE18GATECURSCRIPT], a
+ ret
+.asm_498c6
+ ld a, $2
+ ld [W_ROUTE18GATECURSCRIPT], a
+ ret
+
+CoordsData_498cc: ; 498cc (12:58cc)
+ db $03,$04
+ db $04,$04
+ db $05,$04
+ db $06,$04
+ db $FF
+
+Route18GateScript1: ; 498d5 (12:58d5)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+Route18GateScript2: ; 498df (12:58df)
+ ld a, $1
+ ld [H_SPRITEHEIGHT], a
+ call DisplayTextID
+ ld a, $1
+ ld [$cd38], a
+ ld a, $10
+ ld [$ccd3], a
+ call Func_3486
+ ld a, $3
+ ld [W_ROUTE18GATECURSCRIPT], a
+ ret
+
+Route18GateScript3: ; 498f9 (12:58f9)
+ ld a, [$cd38]
+ and a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d730
+ res 7, [hl]
+ ld a, $0
+ ld [W_ROUTE18GATECURSCRIPT], a
+ ret
+
+Route18GateTextPointers: ; 4990d (12:590d)
+ dw Route18GateText1
+ dw Route18GateText2
+
+Route18GateText1: ; 49911 (12:5911)
+ db $08 ; asm
+ call Func_49755
+ jr z, .asm_3c84d ; 0x49915
+ ld hl, Route18GateText_4992d
+ call PrintText
+ jr .asm_a8410 ; 0x4991d
+.asm_3c84d ; 0x4991f
+ ld hl, Route18GateText_49928
+ call PrintText
+.asm_a8410 ; 0x49925
+ jp TextScriptEnd
+
+Route18GateText_49928: ; 49928 (12:5928)
+ TX_FAR _Route18GateText_49928
+ db "@"
+
+Route18GateText_4992d: ; 4992d (12:592d)
+ TX_FAR _Route18GateText_4992d
+ db "@"
+
+Route18GateText2: ; 49932 (12:5932)
+ TX_FAR _Route18GateText_49932
+ db "@"
diff --git a/scripts/route18gateupstairs.asm b/scripts/route18gateupstairs.asm
new file mode 100755
index 00000000..d9164d1d
--- /dev/null
+++ b/scripts/route18gateupstairs.asm
@@ -0,0 +1,33 @@
+Route18GateUpstairsScript: ; 49975 (12:5975)
+ jp DisableAutoTextBoxDrawing
+
+Route18GateUpstairsTextPointers: ; 49978 (12:5978)
+ dw Route18GateUpstairsText1
+ dw Route18GateUpstairsText2
+ dw Route18GateUpstairsText3
+
+Route18GateUpstairsText1: ; 4997e (12:597e)
+ db $08 ; asm
+ ld a, $5
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+ jp TextScriptEnd
+
+Route18GateUpstairsText2: ; 4998c (12:598c)
+ db $8
+ ld hl, Route18GateUpstairsText_49993 ; $5993
+ jp Route12GateUpstairsScript_495c9
+
+Route18GateUpstairsText_49993: ; 49993 (12:5993)
+ TX_FAR _Route18GateUpstairsText_49993
+ db "@"
+
+Route18GateUpstairsText3: ; 49998 (12:5998)
+ db $8
+ ld hl, Route18GateUpstairsText_4999f ; $599f
+ jp Route12GateUpstairsScript_495c9
+
+Route18GateUpstairsText_4999f: ; 4999f (12:599f)
+ TX_FAR _Route18GateUpstairsText_4999f
+ db "@"
diff --git a/scripts/route19.asm b/scripts/route19.asm
new file mode 100755
index 00000000..8bc641ff
--- /dev/null
+++ b/scripts/route19.asm
@@ -0,0 +1,303 @@
+Route19Script: ; 55d44 (15:5d44)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route19TrainerHeaders
+ ld de, Route19ScriptPointers
+ ld a, [W_ROUTE19CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE19CURSCRIPT], a
+ ret
+
+Route19ScriptPointers: ; 55d57 (15:5d57)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route19TextPointers: ; 55d5d (15:5d5d)
+ dw Route19Text1
+ dw Route19Text2
+ dw Route19Text3
+ dw Route19Text4
+ dw Route19Text5
+ dw Route19Text6
+ dw Route19Text7
+ dw Route19Text8
+ dw Route19Text9
+ dw Route19Text10
+ dw Route19Text11
+
+Route19TrainerHeaders: ; 55d73 (15:5d73)
+Route19TrainerHeader0: ; 55d73 (15:5d73)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText1 ; 0x5e50 TextBeforeBattle
+ dw Route19AfterBattleText1 ; 0x5e5a TextAfterBattle
+ dw Route19EndBattleText1 ; 0x5e55 TextEndBattle
+ dw Route19EndBattleText1 ; 0x5e55 TextEndBattle
+
+Route19TrainerHeader1: ; 55d7f (15:5d7f)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText2 ; 0x5e5f TextBeforeBattle
+ dw Route19AfterBattleText2 ; 0x5e69 TextAfterBattle
+ dw Route19EndBattleText2 ; 0x5e64 TextEndBattle
+ dw Route19EndBattleText2 ; 0x5e64 TextEndBattle
+
+Route19TrainerHeader2: ; 55d8b (15:5d8b)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText3 ; 0x5e6e TextBeforeBattle
+ dw Route19AfterBattleText3 ; 0x5e78 TextAfterBattle
+ dw Route19EndBattleText3 ; 0x5e73 TextEndBattle
+ dw Route19EndBattleText3 ; 0x5e73 TextEndBattle
+
+Route19TrainerHeader3: ; 55d97 (15:5d97)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText4 ; 0x5e7d TextBeforeBattle
+ dw Route19AfterBattleText4 ; 0x5e87 TextAfterBattle
+ dw Route19EndBattleText4 ; 0x5e82 TextEndBattle
+ dw Route19EndBattleText4 ; 0x5e82 TextEndBattle
+
+Route19TrainerHeader4: ; 55da3 (15:5da3)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText5 ; 0x5e8c TextBeforeBattle
+ dw Route19AfterBattleText5 ; 0x5e96 TextAfterBattle
+ dw Route19EndBattleText5 ; 0x5e91 TextEndBattle
+ dw Route19EndBattleText5 ; 0x5e91 TextEndBattle
+
+Route19TrainerHeader5: ; 55daf (15:5daf)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText6 ; 0x5e9b TextBeforeBattle
+ dw Route19AfterBattleText6 ; 0x5ea5 TextAfterBattle
+ dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle
+ dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle
+
+Route19TrainerHeader6: ; 55dbb (15:5dbb)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText7 ; 0x5eaa TextBeforeBattle
+ dw Route19AfterBattleText7 ; 0x5eb4 TextAfterBattle
+ dw Route19EndBattleText7 ; 0x5eaf TextEndBattle
+ dw Route19EndBattleText7 ; 0x5eaf TextEndBattle
+
+Route19TrainerHeader7: ; 55dc7 (15:5dc7)
+ db $8 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText8 ; 0x5eb9 TextBeforeBattle
+ dw Route19AfterBattleText8 ; 0x5ec3 TextAfterBattle
+ dw Route19EndBattleText8 ; 0x5ebe TextEndBattle
+ dw Route19EndBattleText8 ; 0x5ebe TextEndBattle
+
+Route19TrainerHeader8: ; 55dd3 (15:5dd3)
+ db $9 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText9 ; 0x5ec8 TextBeforeBattle
+ dw Route19AfterBattleText9 ; 0x5ed2 TextAfterBattle
+ dw Route19EndBattleText9 ; 0x5ecd TextEndBattle
+ dw Route19EndBattleText9 ; 0x5ecd TextEndBattle
+
+Route19TrainerHeader9: ; 55ddf (15:5ddf)
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e5 ; flag's byte
+ dw Route19BattleText10 ; 0x5ed7 TextBeforeBattle
+ dw Route19AfterBattleText10 ; 0x5ee1 TextAfterBattle
+ dw Route19EndBattleText10 ; 0x5edc TextEndBattle
+ dw Route19EndBattleText10 ; 0x5edc TextEndBattle
+
+ db $ff
+
+Route19Text1: ; 55dec (15:5dec)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text2: ; 55df6 (15:5df6)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text3: ; 55e00 (15:5e00)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text4: ; 55e0a (15:5e0a)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text5: ; 55e14 (15:5e14)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text6: ; 55e1e (15:5e1e)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text7: ; 55e28 (15:5e28)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text8: ; 55e32 (15:5e32)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text9: ; 55e3c (15:5e3c)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19Text10: ; 55e46 (15:5e46)
+ db $08 ; asm
+ ld hl, Route19TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19BattleText1: ; 55e50 (15:5e50)
+ TX_FAR _Route19BattleText1
+ db "@"
+
+Route19EndBattleText1: ; 55e55 (15:5e55)
+ TX_FAR _Route19EndBattleText1
+ db "@"
+
+Route19AfterBattleText1: ; 55e5a (15:5e5a)
+ TX_FAR _Route19AfterBattleText1
+ db "@"
+
+Route19BattleText2: ; 55e5f (15:5e5f)
+ TX_FAR _Route19BattleText2
+ db "@"
+
+Route19EndBattleText2: ; 55e64 (15:5e64)
+ TX_FAR _Route19EndBattleText2
+ db "@"
+
+Route19AfterBattleText2: ; 55e69 (15:5e69)
+ TX_FAR _Route19AfterBattleText2
+ db "@"
+
+Route19BattleText3: ; 55e6e (15:5e6e)
+ TX_FAR _Route19BattleText3
+ db "@"
+
+Route19EndBattleText3: ; 55e73 (15:5e73)
+ TX_FAR _Route19EndBattleText3
+ db "@"
+
+Route19AfterBattleText3: ; 55e78 (15:5e78)
+ TX_FAR _Route19AfterBattleText3
+ db "@"
+
+Route19BattleText4: ; 55e7d (15:5e7d)
+ TX_FAR _Route19BattleText4
+ db "@"
+
+Route19EndBattleText4: ; 55e82 (15:5e82)
+ TX_FAR _Route19EndBattleText4
+ db "@"
+
+Route19AfterBattleText4: ; 55e87 (15:5e87)
+ TX_FAR _Route19AfterBattleText4
+ db "@"
+
+Route19BattleText5: ; 55e8c (15:5e8c)
+ TX_FAR _Route19BattleText5
+ db "@"
+
+Route19EndBattleText5: ; 55e91 (15:5e91)
+ TX_FAR _Route19EndBattleText5
+ db "@"
+
+Route19AfterBattleText5: ; 55e96 (15:5e96)
+ TX_FAR _Route19AfterBattleText5
+ db "@"
+
+Route19BattleText6: ; 55e9b (15:5e9b)
+ TX_FAR _Route19BattleText6
+ db "@"
+
+Route19EndBattleText6: ; 55ea0 (15:5ea0)
+ TX_FAR _Route19EndBattleText6
+ db "@"
+
+Route19AfterBattleText6: ; 55ea5 (15:5ea5)
+ TX_FAR _Route19AfterBattleText6
+ db "@"
+
+Route19BattleText7: ; 55eaa (15:5eaa)
+ TX_FAR _Route19BattleText7
+ db "@"
+
+Route19EndBattleText7: ; 55eaf (15:5eaf)
+ TX_FAR _Route19EndBattleText7
+ db "@"
+
+Route19AfterBattleText7: ; 55eb4 (15:5eb4)
+ TX_FAR _Route19AfterBattleText7
+ db "@"
+
+Route19BattleText8: ; 55eb9 (15:5eb9)
+ TX_FAR _Route19BattleText8
+ db "@"
+
+Route19EndBattleText8: ; 55ebe (15:5ebe)
+ TX_FAR _Route19EndBattleText8
+ db "@"
+
+Route19AfterBattleText8: ; 55ec3 (15:5ec3)
+ TX_FAR _Route19AfterBattleText8
+ db "@"
+
+Route19BattleText9: ; 55ec8 (15:5ec8)
+ TX_FAR _Route19BattleText9
+ db "@"
+
+Route19EndBattleText9: ; 55ecd (15:5ecd)
+ TX_FAR _Route19EndBattleText9
+ db "@"
+
+Route19AfterBattleText9: ; 55ed2 (15:5ed2)
+ TX_FAR _Route19AfterBattleText9
+ db "@"
+
+Route19BattleText10: ; 55ed7 (15:5ed7)
+ TX_FAR _Route19BattleText10
+ db "@"
+
+Route19EndBattleText10: ; 55edc (15:5edc)
+ TX_FAR _Route19EndBattleText10
+ db "@"
+
+Route19AfterBattleText10: ; 55ee1 (15:5ee1)
+ TX_FAR _Route19AfterBattleText10
+ db "@"
+
+Route19Text11: ; 55ee6 (15:5ee6)
+ TX_FAR _Route19Text11
+ db "@"
diff --git a/scripts/route2.asm b/scripts/route2.asm
new file mode 100755
index 00000000..fdc5eb6c
--- /dev/null
+++ b/scripts/route2.asm
@@ -0,0 +1,16 @@
+Route2Script: ; 554e3 (15:54e3)
+ jp EnableAutoTextBoxDrawing
+
+Route2TextPointers: ; 554e6 (15:54e6)
+ dw Predef5CText
+ dw Predef5CText
+ dw Route2Text3
+ dw Route2Text4
+
+Route2Text3: ; 554ee (15:54ee)
+ TX_FAR _Route2Text3
+ db "@"
+
+Route2Text4: ; 554f3 (15:54f3)
+ TX_FAR _Route2Text4
+ db "@"
diff --git a/scripts/route20.asm b/scripts/route20.asm
new file mode 100755
index 00000000..2d5f3077
--- /dev/null
+++ b/scripts/route20.asm
@@ -0,0 +1,356 @@
+Route20Script: ; 50ca9 (14:4ca9)
+ ld hl, $d7e7
+ bit 0, [hl]
+ res 0, [hl]
+ call nz, Route20Script_50cc6
+ call EnableAutoTextBoxDrawing
+ ld hl, Route20TrainerHeader0 ; $4d3a
+ ld de, Route20ScriptPointers
+ ld a, [W_ROUTE20CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE20CURSCRIPT], a
+ ret
+
+Route20Script_50cc6: ; 50cc6 (14:4cc6)
+ ld a, [$d880]
+ and $3
+ cp $3
+ jr z, .asm_50cef
+ ld a, $d7
+ call Route20Script_50d0c
+ ld a, $d8
+ call Route20Script_50d0c
+ ld hl, .MissableObjectIDs ; $4ce8
+.asm_50cdc
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_50cef
+ push hl
+ call Route20Script_50d14
+ pop hl
+ jr .asm_50cdc
+
+.MissableObjectIDs: ; 50ce8 (14:4ce8)
+ db $D9,$DA,$DB,$DC,$DF,$E0,$FF
+
+.asm_50cef
+ ld a, [$d881]
+ and $3
+ cp $3
+ ret z
+ ld a, $dd
+ call Route20Script_50d0c
+ ld a, $de
+ call Route20Script_50d0c
+ ld a, $e1
+ call Route20Script_50d14
+ ld a, $e2
+ call Route20Script_50d14
+ ret
+
+Route20Script_50d0c: ; 50d0c (14:4d0c)
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+
+Route20Script_50d14: ; 50d14 (14:4d14)
+ ld [$cc4d], a
+ ld a, $11
+ jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+
+Route20ScriptPointers: ; 50d1c (14:4d1c)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route20TextPointers: ; 50d22 (14:4d22)
+ dw Route20Text1
+ dw Route20Text2
+ dw Route20Text3
+ dw Route20Text4
+ dw Route20Text5
+ dw Route20Text6
+ dw Route20Text7
+ dw Route20Text8
+ dw Route20Text9
+ dw Route20Text10
+ dw Route20Text11
+ dw Route20Text12
+
+Route20TrainerHeaders: ; 50d3a (14:4d3a)
+Route20TrainerHeader0: ; 50d3a (14:4d3a)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText1 ; 0x4e17 TextBeforeBattle
+ dw Route20AfterBattleText1 ; 0x4e21 TextAfterBattle
+ dw Route20EndBattleText1 ; 0x4e1c TextEndBattle
+ dw Route20EndBattleText1 ; 0x4e1c TextEndBattle
+
+Route20TrainerHeader2: ; 50d46 (14:4d46)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText2 ; 0x4e26 TextBeforeBattle
+ dw Route20AfterBattleText2 ; 0x4e30 TextAfterBattle
+ dw Route20EndBattleText2 ; 0x4e2b TextEndBattle
+ dw Route20EndBattleText2 ; 0x4e2b TextEndBattle
+
+Route20TrainerHeader3: ; 50d52 (14:4d52)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText3 ; 0x4e35 TextBeforeBattle
+ dw Route20AfterBattleText3 ; 0x4e3f TextAfterBattle
+ dw Route20EndBattleText3 ; 0x4e3a TextEndBattle
+ dw Route20EndBattleText3 ; 0x4e3a TextEndBattle
+
+Route20TrainerHeader4: ; 50d5e (14:4d5e)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText4 ; 0x4e44 TextBeforeBattle
+ dw Route20AfterBattleText4 ; 0x4e4e TextAfterBattle
+ dw Route20EndBattleText4 ; 0x4e49 TextEndBattle
+ dw Route20EndBattleText4 ; 0x4e49 TextEndBattle
+
+Route20TrainerHeader5: ; 50d6a (14:4d6a)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText5 ; 0x4e53 TextBeforeBattle
+ dw Route20AfterBattleText5 ; 0x4e5d TextAfterBattle
+ dw Route20EndBattleText5 ; 0x4e58 TextEndBattle
+ dw Route20EndBattleText5 ; 0x4e58 TextEndBattle
+
+Route20TrainerHeader6: ; 50d76 (14:4d76)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText6 ; 0x4e62 TextBeforeBattle
+ dw Route20AfterBattleText6 ; 0x4e6c TextAfterBattle
+ dw Route20EndBattleText6 ; 0x4e67 TextEndBattle
+ dw Route20EndBattleText6 ; 0x4e67 TextEndBattle
+
+Route20TrainerHeader7: ; 50d82 (14:4d82)
+ db $7 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText7 ; 0x4e71 TextBeforeBattle
+ dw Route20AfterBattleText7 ; 0x4e7b TextAfterBattle
+ dw Route20EndBattleText7 ; 0x4e76 TextEndBattle
+ dw Route20EndBattleText7 ; 0x4e76 TextEndBattle
+
+Route20TrainerHeader8: ; 50d8e (14:4d8e)
+ db $8 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText8 ; 0x4e80 TextBeforeBattle
+ dw Route20AfterBattleText8 ; 0x4e8a TextAfterBattle
+ dw Route20EndBattleText8 ; 0x4e85 TextEndBattle
+ dw Route20EndBattleText8 ; 0x4e85 TextEndBattle
+
+Route20TrainerHeader9: ; 50d9a (14:4d9a)
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText9 ; 0x4e8f TextBeforeBattle
+ dw Route20AfterBattleText9 ; 0x4e99 TextAfterBattle
+ dw Route20EndBattleText9 ; 0x4e94 TextEndBattle
+ dw Route20EndBattleText9 ; 0x4e94 TextEndBattle
+
+Route20TrainerHeader10: ; 50da6 (14:4da6)
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e7 ; flag's byte
+ dw Route20BattleText10 ; 0x4e9e TextBeforeBattle
+ dw Route20AfterBattleText10 ; 0x4ea8 TextAfterBattle
+ dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle
+ dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle
+
+ db $ff
+
+Route20Text1: ; 50db3 (14:4db3)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text2: ; 50dbd (14:4dbd)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text3: ; 50dc7 (14:4dc7)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text4: ; 50dd1 (14:4dd1)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text5: ; 50ddb (14:4ddb)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text6: ; 50de5 (14:4de5)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text7: ; 50def (14:4def)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text8: ; 50df9 (14:4df9)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text9: ; 50e03 (14:4e03)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text10: ; 50e0d (14:4e0d)
+ db $08 ; asm
+ ld hl, Route20TrainerHeader10
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20BattleText1: ; 50e17 (14:4e17)
+ TX_FAR _Route20BattleText1
+ db "@"
+
+Route20EndBattleText1: ; 50e1c (14:4e1c)
+ TX_FAR _Route20EndBattleText1
+ db "@"
+
+Route20AfterBattleText1: ; 50e21 (14:4e21)
+ TX_FAR _Route20AfterBattleText1
+ db "@"
+
+Route20BattleText2: ; 50e26 (14:4e26)
+ TX_FAR _Route20BattleText2
+ db "@"
+
+Route20EndBattleText2: ; 50e2b (14:4e2b)
+ TX_FAR _Route20EndBattleText2
+ db "@"
+
+Route20AfterBattleText2: ; 50e30 (14:4e30)
+ TX_FAR _Route20AfterBattleText2
+ db "@"
+
+Route20BattleText3: ; 50e35 (14:4e35)
+ TX_FAR _Route20BattleText3
+ db "@"
+
+Route20EndBattleText3: ; 50e3a (14:4e3a)
+ TX_FAR _Route20EndBattleText3
+ db "@"
+
+Route20AfterBattleText3: ; 50e3f (14:4e3f)
+ TX_FAR _Route20AfterBattleText3
+ db "@"
+
+Route20BattleText4: ; 50e44 (14:4e44)
+ TX_FAR _Route20BattleText4
+ db "@"
+
+Route20EndBattleText4: ; 50e49 (14:4e49)
+ TX_FAR _Route20EndBattleText4
+ db "@"
+
+Route20AfterBattleText4: ; 50e4e (14:4e4e)
+ TX_FAR _Route20AfterBattleText4
+ db "@"
+
+Route20BattleText5: ; 50e53 (14:4e53)
+ TX_FAR _Route20BattleText5
+ db "@"
+
+Route20EndBattleText5: ; 50e58 (14:4e58)
+ TX_FAR _Route20EndBattleText5
+ db "@"
+
+Route20AfterBattleText5: ; 50e5d (14:4e5d)
+ TX_FAR _Route20AfterBattleText5
+ db "@"
+
+Route20BattleText6: ; 50e62 (14:4e62)
+ TX_FAR _Route20BattleText6
+ db "@"
+
+Route20EndBattleText6: ; 50e67 (14:4e67)
+ TX_FAR _Route20EndBattleText6
+ db "@"
+
+Route20AfterBattleText6: ; 50e6c (14:4e6c)
+ TX_FAR _Route20AfterBattleText6
+ db "@"
+
+Route20BattleText7: ; 50e71 (14:4e71)
+ TX_FAR _Route20BattleText7
+ db "@"
+
+Route20EndBattleText7: ; 50e76 (14:4e76)
+ TX_FAR _Route20EndBattleText7
+ db "@"
+
+Route20AfterBattleText7: ; 50e7b (14:4e7b)
+ TX_FAR _Route20AfterBattleText7
+ db "@"
+
+Route20BattleText8: ; 50e80 (14:4e80)
+ TX_FAR _Route20BattleText8
+ db "@"
+
+Route20EndBattleText8: ; 50e85 (14:4e85)
+ TX_FAR _Route20EndBattleText8
+ db "@"
+
+Route20AfterBattleText8: ; 50e8a (14:4e8a)
+ TX_FAR _Route20AfterBattleText8
+ db "@"
+
+Route20BattleText9: ; 50e8f (14:4e8f)
+ TX_FAR _Route20BattleText9
+ db "@"
+
+Route20EndBattleText9: ; 50e94 (14:4e94)
+ TX_FAR _Route20EndBattleText9
+ db "@"
+
+Route20AfterBattleText9: ; 50e99 (14:4e99)
+ TX_FAR _Route20AfterBattleText9
+ db "@"
+
+Route20BattleText10: ; 50e9e (14:4e9e)
+ TX_FAR _Route20BattleText10
+ db "@"
+
+Route20EndBattleText10: ; 50ea3 (14:4ea3)
+ TX_FAR _Route20EndBattleText10
+ db "@"
+
+Route20AfterBattleText10: ; 50ea8 (14:4ea8)
+ TX_FAR _Route20AfterBattleText10
+ db "@"
+
+Route20Text12: ; 50ead (14:4ead)
+Route20Text11: ; 50ead (14:4ead)
+ TX_FAR _Route20Text11
+ db "@"
diff --git a/scripts/route21.asm b/scripts/route21.asm
new file mode 100755
index 00000000..2332d2c8
--- /dev/null
+++ b/scripts/route21.asm
@@ -0,0 +1,270 @@
+Route21Script: ; 55eeb (15:5eeb)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route21TrainerHeaders
+ ld de, Route21ScriptPointers
+ ld a, [W_ROUTE21CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE21CURSCRIPT], a
+ ret
+
+Route21ScriptPointers: ; 55efe (15:5efe)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route21TextPointers: ; 55f04 (15:5f04)
+ dw Route21Text1
+ dw Route21Text2
+ dw Route21Text3
+ dw Route21Text4
+ dw Route21Text5
+ dw Route21Text6
+ dw Route21Text7
+ dw Route21Text8
+ dw Route21Text9
+
+Route21TrainerHeaders: ; 55f16 (15:5f16)
+Route21TrainerHeader0: ; 55f16 (15:5f16)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText1 ; 0x5fdd TextBeforeBattle
+ dw Route21AfterBattleText1 ; 0x5fe7 TextAfterBattle
+ dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle
+ dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle
+
+Route21TrainerHeader1: ; 55f22 (15:5f22)
+ db $2 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText2 ; 0x5fec TextBeforeBattle
+ dw Route21AfterBattleText2 ; 0x5ff6 TextAfterBattle
+ dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle
+ dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle
+
+Route21TrainerHeader2: ; 55f2e (15:5f2e)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText3 ; 0x5ffb TextBeforeBattle
+ dw Route21AfterBattleText3 ; 0x6005 TextAfterBattle
+ dw Route21EndBattleText3 ; 0x6000 TextEndBattle
+ dw Route21EndBattleText3 ; 0x6000 TextEndBattle
+
+Route21TrainerHeader3: ; 55f3a (15:5f3a)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText4 ; 0x600a TextBeforeBattle
+ dw Route21AfterBattleText4 ; 0x6014 TextAfterBattle
+ dw Route21EndBattleText4 ; 0x600f TextEndBattle
+ dw Route21EndBattleText4 ; 0x600f TextEndBattle
+
+Route21TrainerHeader4: ; 55f46 (15:5f46)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText5 ; 0x6019 TextBeforeBattle
+ dw Route21AfterBattleText5 ; 0x6023 TextAfterBattle
+ dw Route21EndBattleText5 ; 0x601e TextEndBattle
+ dw Route21EndBattleText5 ; 0x601e TextEndBattle
+
+Route21TrainerHeader5: ; 55f52 (15:5f52)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText6 ; 0x6028 TextBeforeBattle
+ dw Route21AfterBattleText6 ; 0x6032 TextAfterBattle
+ dw Route21EndBattleText6 ; 0x602d TextEndBattle
+ dw Route21EndBattleText6 ; 0x602d TextEndBattle
+
+Route21TrainerHeader6: ; 55f5e (15:5f5e)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText7 ; 0x6037 TextBeforeBattle
+ dw Route21AfterBattleText7 ; 0x6041 TextAfterBattle
+ dw Route21EndBattleText7 ; 0x603c TextEndBattle
+ dw Route21EndBattleText7 ; 0x603c TextEndBattle
+
+Route21TrainerHeader7: ; 55f6a (15:5f6a)
+ db $8 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText8 ; 0x6046 TextBeforeBattle
+ dw Route21AfterBattleText8 ; 0x6050 TextAfterBattle
+ dw Route21EndBattleText8 ; 0x604b TextEndBattle
+ dw Route21EndBattleText8 ; 0x604b TextEndBattle
+
+Route21TrainerHeader8: ; 55f76 (15:5f76)
+ db $9 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7e9 ; flag's byte
+ dw Route21BattleText9 ; 0x6055 TextBeforeBattle
+ dw Route21AfterBattleText9 ; 0x605f TextAfterBattle
+ dw Route21EndBattleText9 ; 0x605a TextEndBattle
+ dw Route21EndBattleText9 ; 0x605a TextEndBattle
+
+ db $ff
+
+Route21Text1: ; 55f83 (15:5f83)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text2: ; 55f8d (15:5f8d)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text3: ; 55f97 (15:5f97)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text4: ; 55fa1 (15:5fa1)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text5: ; 55fab (15:5fab)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text6: ; 55fb5 (15:5fb5)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text7: ; 55fbf (15:5fbf)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text8: ; 55fc9 (15:5fc9)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text9: ; 55fd3 (15:5fd3)
+ db $08 ; asm
+ ld hl, Route21TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21BattleText1: ; 55fdd (15:5fdd)
+ TX_FAR _Route21BattleText1
+ db "@"
+
+Route21EndBattleText1: ; 55fe2 (15:5fe2)
+ TX_FAR _Route21EndBattleText1
+ db "@"
+
+Route21AfterBattleText1: ; 55fe7 (15:5fe7)
+ TX_FAR _Route21AfterBattleText1
+ db "@"
+
+Route21BattleText2: ; 55fec (15:5fec)
+ TX_FAR _Route21BattleText2
+ db "@"
+
+Route21EndBattleText2: ; 55ff1 (15:5ff1)
+ TX_FAR _Route21EndBattleText2
+ db "@"
+
+Route21AfterBattleText2: ; 55ff6 (15:5ff6)
+ TX_FAR _Route21AfterBattleText2
+ db "@"
+
+Route21BattleText3: ; 55ffb (15:5ffb)
+ TX_FAR _Route21BattleText3
+ db "@"
+
+Route21EndBattleText3: ; 56000 (15:6000)
+ TX_FAR _Route21EndBattleText3
+ db "@"
+
+Route21AfterBattleText3: ; 56005 (15:6005)
+ TX_FAR _Route21AfterBattleText3
+ db "@"
+
+Route21BattleText4: ; 5600a (15:600a)
+ TX_FAR _Route21BattleText4
+ db "@"
+
+Route21EndBattleText4: ; 5600f (15:600f)
+ TX_FAR _Route21EndBattleText4
+ db "@"
+
+Route21AfterBattleText4: ; 56014 (15:6014)
+ TX_FAR _Route21AfterBattleText4
+ db "@"
+
+Route21BattleText5: ; 56019 (15:6019)
+ TX_FAR _Route21BattleText5
+ db "@"
+
+Route21EndBattleText5: ; 5601e (15:601e)
+ TX_FAR _Route21EndBattleText5
+ db "@"
+
+Route21AfterBattleText5: ; 56023 (15:6023)
+ TX_FAR _Route21AfterBattleText5
+ db "@"
+
+Route21BattleText6: ; 56028 (15:6028)
+ TX_FAR _Route21BattleText6
+ db "@"
+
+Route21EndBattleText6: ; 5602d (15:602d)
+ TX_FAR _Route21EndBattleText6
+ db "@"
+
+Route21AfterBattleText6: ; 56032 (15:6032)
+ TX_FAR _Route21AfterBattleText6
+ db "@"
+
+Route21BattleText7: ; 56037 (15:6037)
+ TX_FAR _Route21BattleText7
+ db "@"
+
+Route21EndBattleText7: ; 5603c (15:603c)
+ TX_FAR _Route21EndBattleText7
+ db "@"
+
+Route21AfterBattleText7: ; 56041 (15:6041)
+ TX_FAR _Route21AfterBattleText7
+ db "@"
+
+Route21BattleText8: ; 56046 (15:6046)
+ TX_FAR _Route21BattleText8
+ db "@"
+
+Route21EndBattleText8: ; 5604b (15:604b)
+ TX_FAR _Route21EndBattleText8
+ db "@"
+
+Route21AfterBattleText8: ; 56050 (15:6050)
+ TX_FAR _Route21AfterBattleText8
+ db "@"
+
+Route21BattleText9: ; 56055 (15:6055)
+ TX_FAR _Route21BattleText9
+ db "@"
+
+Route21EndBattleText9: ; 5605a (15:605a)
+ TX_FAR _Route21EndBattleText9
+ db "@"
+
+Route21AfterBattleText9: ; 5605f (15:605f)
+ TX_FAR _Route21AfterBattleText9
+ db "@"
diff --git a/scripts/route22.asm b/scripts/route22.asm
new file mode 100755
index 00000000..28918b5c
--- /dev/null
+++ b/scripts/route22.asm
@@ -0,0 +1,435 @@
+Route22Script: ; 50eb2 (14:4eb2)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route22ScriptPointers
+ ld a, [W_ROUTE22CURSCRIPT]
+ jp CallFunctionInTable
+
+Route22ScriptPointers: ; 50ebe (14:4ebe)
+ dw Route22Script0
+ dw Route22Script1
+ dw Route22Script2
+ dw Route22Script3
+ dw Route22Script4
+ dw Route22Script5
+ dw Route22Script6
+ dw Route22Script7
+
+Route22Script_50ece: ; 50ece (14:4ece)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE22CURSCRIPT], a
+Route22Script7: ; 50ed5 (14:4ed5)
+ ret
+
+Route22Script_50ed6: ; 50ed6 (14:4ed6)
+ ld a, [W_RIVALSTARTER] ; $d715
+ ld b, a
+.asm_50eda
+ ld a, [hli]
+ cp b
+ jr z, .asm_50ee1
+ inc hl
+ jr .asm_50eda
+.asm_50ee1
+ ld a, [hl]
+ ld [W_TRAINERNO], a ; $d05d
+ ret
+
+Route22MoveRivalSprite: ; 50ee6 (14:4ee6)
+ ld de, Route22RivalMovementData ; $4efb
+ ld a, [$cf0d]
+ cp $1
+ jr z, .asm_50ef1
+ inc de
+.asm_50ef1
+ call MoveSprite
+ ld a, $c
+ ld [$ff8d], a
+ jp Func_34a6
+
+Route22RivalMovementData: ; 50efb (14:4efb)
+ db $C0,$C0,$C0,$C0,$FF ; move right 4 times
+
+Route22Script0: ; 50f00 (14:4f00)
+ ld a, [$d7eb]
+ bit 7, a
+ ret z
+ ld hl, .Route22RivalBattleCoords ; $4f2d
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [$cd3d]
+ ld [$cf0d], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $2
+ ld [$d528], a
+ ld a, [$d7eb]
+ bit 0, a ; is this the rival battle at the beginning of the game?
+ jr nz, .firstRivalBattle ; 0x50f25 $b
+ bit 1, a ; is this the rival at the end of the game?
+ jp nz, Route22Script_5104e
+ ret
+
+.Route22RivalBattleCoords
+ db $04, $1D
+ db $05, $1D
+ db $FF
+
+.firstRivalBattle
+ ld a, $1
+ ld [$cd4f], a
+ xor a
+ ld [$cd50], a
+ ld a, $4c
+ call Predef
+ ld a, [$d700]
+ and a
+ jr z, .asm_50f4e ; 0x50f44 $8
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+.asm_50f4e
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, $1
+ ld [$ff8c], a
+ call Route22MoveRivalSprite
+ ld a, $1
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+Route22Script1: ; 50f62 (14:4f62)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, [$cf0d]
+ cp $1
+ jr nz, .asm_50f78 ; 0x50f6d $9
+ ld a, $4
+ ld [$d528], a
+ ld a, $4
+ jr .asm_50f7a ; 0x50f76 $2
+.asm_50f78
+ ld a, $c
+.asm_50f7a
+ ld [$ff8d], a
+ ld a, $1
+ ld [$ff8c], a
+ call Func_34a6
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, Route22RivalDefeatedText1
+ ld de, Route22Text_511bc
+ call PreBattleSaveRegisters
+ ld a, SONY1 + $c8
+ ld [W_CUROPPONENT], a
+ ld hl, StarterMons_50faf ; $4faf
+ call Route22Script_50ed6
+ ld a, $2
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+StarterMons_50faf: ; 50faf (14:4faf)
+; starter the rival picked, rival trainer number
+ db SQUIRTLE,$04
+ db BULBASAUR,$05
+ db CHARMANDER,$06
+
+Route22Script2: ; 50fb5 (14:4fb5)
+ ld a, [$d057]
+ cp $ff
+ jp z, Route22Script_50ece
+ ld a, [$c109]
+ and a
+ jr nz, .asm_50fc7 ; 0x50fc1 $4
+ ld a, $4
+ jr .asm_50fc9 ; 0x50fc5 $2
+.asm_50fc7
+ ld a, $c
+.asm_50fc9
+ ld [$ff8d], a
+ ld a, $1
+ ld [$ff8c], a
+ call Func_34a6
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d7eb
+ set 5, [hl]
+ ld a, $1
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld a, [$cf0d]
+ cp $1
+ jr nz, .asm_50fff ; 0x50ff8 $5
+ call Route22Script_51008
+ jr .asm_51002 ; 0x50ffd $3
+.asm_50fff
+ call Route22Script_5100d
+.asm_51002
+ ld a, $3
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+Route22Script_51008: ; 51008 (14:5008)
+ ld de, Route22RivalExitMovementData1 ; $5017
+ jr asm_51010
+
+Route22Script_5100d: ; 5100d (14:500d)
+ ld de, Route22RivalExitMovementData2 ; $501f
+asm_51010
+ ld a, $1
+ ld [H_SPRITEHEIGHT], a
+ jp MoveSprite
+
+Route22RivalExitMovementData1: ; 51017 (14:5017)
+ db $C0,$C0,$00,$00,$00,$00,$00,$FF
+
+Route22RivalExitMovementData2: ; 5101f (14:501f)
+ db $40,$C0,$C0,$C0,$00,$00,$00,$00,$00,$00,$FF
+
+Route22Script3: ; 5102a (14:502a)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $22
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ call Func_2307
+ ld hl, $d7eb
+ res 0, [hl]
+ res 7, [hl]
+ ld a, $0
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+Route22Script_5104e: ; 5104e (14:504e)
+ ld a, $2
+ ld [$cd4f], a
+ xor a
+ ld [$cd50], a
+ ld a, $4c
+ call Predef ; indirect jump to PrintEmotionBubble (17c47 (5:7c47))
+ ld a, [$d700]
+ and a
+ jr z, .skipYVisibilityTesta
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+.skipYVisibilityTesta
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateTempo
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call Route22MoveRivalSprite
+ ld a, $4
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+Route22Script4: ; 51087 (14:5087)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld a, [$cf0d]
+ cp $1
+ jr nz, .asm_510a1
+ ld a, $4
+ ld [$d528], a
+ ld a, $4
+ jr .asm_510a8
+.asm_510a1
+ ld a, $2
+ ld [$d528], a
+ ld a, $c
+.asm_510a8
+ ld [$ff8d], a
+ call Func_34a6
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, Route22RivalDefeatedText2 ; $51cb
+ ld de, Route22Text_511d0 ; $51d0
+ call PreBattleSaveRegisters
+ ld a, SONY2 + $c8
+ ld [W_CUROPPONENT], a ; $d059
+ ld hl, StarterMons_510d9 ; $50d9
+ call Route22Script_50ed6
+ ld a, $5
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+StarterMons_510d9: ; 510d9 (14:50d9)
+ db SQUIRTLE,$0a
+ db BULBASAUR,$0b
+ db CHARMANDER,$0c
+
+Route22Script5: ; 510df (14:50df)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, Route22Script_50ece
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld a, [$cf0d]
+ cp $1
+ jr nz, .asm_510fb
+ ld a, $4
+ ld [$d528], a
+ ld a, $4
+ jr .asm_51102
+.asm_510fb
+ ld a, $2
+ ld [$d528], a
+ ld a, $c
+.asm_51102
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d7eb
+ set 6, [hl]
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStartAndTempo
+ ld a, [$cf0d]
+ cp $1
+ jr nz, .asm_51134
+ call Route22Script_5113d
+ jr .asm_51137
+.asm_51134
+ call Route22Script_51142
+.asm_51137
+ ld a, $6
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+Route22Script_5113d: ; 5113d (14:513d)
+ ld de, MovementData_5114c ; $514c
+ jr asm_51145
+
+Route22Script_51142: ; 51142 (14:5142)
+ ld de, MovementData_5114d ; $514d
+asm_51145: ; 51145 (14:5145)
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp MoveSprite
+
+MovementData_5114c: ; 5114c (14:514c)
+ db $80 ; left
+
+MovementData_5114d: ; 5114d (14:514d)
+ db $80,$80,$80,$FF ; left x3
+
+Route22Script6: ; 51151 (14:5151)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $23
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ call Func_2307
+ ld hl, $d7eb
+ res 1, [hl]
+ res 7, [hl]
+ ld a, $7
+ ld [W_ROUTE22CURSCRIPT], a
+ ret
+
+Route22TextPointers: ; 51175 (14:5175)
+ dw Route22Text1
+ dw Route22Text2
+ dw Route22FrontGateText
+
+Route22Text1: ; 5117b (14:517b)
+ db $08 ; asm
+ ld a, [$d7eb]
+ bit 5, a
+ jr z, .asm_a88cf ; 0x51181
+ ld hl, Route22RivalAfterBattleText1
+ call PrintText
+ jr .asm_48088 ; 0x51189
+.asm_a88cf ; 0x5118b
+ ld hl, Route22RivalBeforeBattleText1
+ call PrintText
+.asm_48088 ; 0x51191
+ jp TextScriptEnd
+
+Route22Text2: ; 51194 (14:5194)
+ db $08 ; asm
+ ld a, [$d7eb]
+ bit 6, a
+ jr z, .asm_58c0a ; 0x5119a
+ ld hl, Route22RivalAfterBattleText2
+ call PrintText
+ jr .asm_673ee ; 0x511a2
+.asm_58c0a ; 0x511a4
+ ld hl, Route22RivalBeforeBattleText2
+ call PrintText
+.asm_673ee ; 0x511aa
+ jp TextScriptEnd
+
+Route22RivalBeforeBattleText1: ; 511ad (14:51ad)
+ TX_FAR _Route22RivalBeforeBattleText1
+ db "@"
+
+Route22RivalAfterBattleText1: ; 511b2 (14:51b2)
+ TX_FAR _Route22RivalAfterBattleText1
+ db "@"
+
+Route22RivalDefeatedText1: ; 511b7 (14:51b7)
+ TX_FAR _Route22RivalDefeatedText1
+ db "@"
+
+Route22Text_511bc: ; 511bc (14:51bc)
+ TX_FAR _Route22Text_511bc
+ db "@"
+
+Route22RivalBeforeBattleText2: ; 511c1 (14:51c1)
+ TX_FAR _Route22RivalBeforeBattleText2
+ db "@"
+
+Route22RivalAfterBattleText2: ; 511c6 (14:51c6)
+ TX_FAR _Route22RivalAfterBattleText2
+ db "@"
+
+Route22RivalDefeatedText2: ; 511cb (14:51cb)
+ TX_FAR _Route22RivalDefeatedText2
+ db "@"
+
+Route22Text_511d0: ; 511d0 (14:51d0)
+ TX_FAR _Route22Text_511d0
+ db "@"
+
+Route22FrontGateText: ; 511d5 (14:51d5)
+ TX_FAR _Route22FrontGateText
+ db "@"
diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm
new file mode 100755
index 00000000..e445a358
--- /dev/null
+++ b/scripts/route22gate.asm
@@ -0,0 +1,92 @@
+Route22GateScript: ; 1e683 (7:6683)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route22GateScriptPointers
+ ld a, [W_ROUTE22GATECURSCRIPT]
+ call CallFunctionInTable
+ ld a, [W_YCOORD]
+ cp $4
+ ld a, ROUTE_23
+ jr c, .asm_1e69a ; 0x1e696 $2
+ ld a, ROUTE_22
+.asm_1e69a
+ ld [wLastMap], a
+ ret
+
+Route22GateScriptPointers: ; 1e69e (7:669e)
+ dw Route22GateScript0
+ dw Route22GateScript1
+ dw Route22GateScript2
+
+Route22GateScript0: ; 1e6a4 (7:66a4)
+ ld hl, Route22GateScriptCoords
+ call ArePlayerCoordsInArray
+ ret nc
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $1
+ ld [$ff8c], a
+ jp DisplayTextID
+
+Route22GateScriptCoords: ; 1e6b5 (7:66b5)
+ db 2,4
+ db 2,5
+ db $ff
+
+Route22GateScript_1e6ba: ; 1e6ba (7:66ba)
+ ld a, $1
+ ld [$cd38], a
+ ld a, $80
+ ld [$ccd3], a
+ ld [$c109], a
+ ld [wJoypadForbiddenButtonsMask], a
+ jp Func_3486
+
+Route22GateScript1: ; 1e6cd (7:66cd)
+ ld a, [$cd38]
+ and a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ call Delay3
+ ld a, $0
+ ld [W_ROUTE22GATECURSCRIPT], a
+Route22GateScript2: ; 1e6de (7:66de)
+ ret
+
+Route22GateTextPointers: ; 1e6df (7:66df)
+ dw Route22GateText1
+
+Route22GateText1: ; 1e6e1 (7:66e1)
+ db $8
+ ld a, [W_OBTAINEDBADGES]
+ bit 0, a
+ jr nz, .asm_8a809 ; 0x1e6e7 $d
+ ld hl, Route22GateText_1e704
+ call PrintText
+ call Route22GateScript_1e6ba
+ ld a, $1
+ jr .asm_20f7e ; 0x1e6f4 $8
+.asm_8a809 ; 0x1e6f6
+ ld hl, Route22GateText_1e71a
+ call PrintText
+ ld a, $2
+.asm_20f7e ; 0x1e6fe
+ ld [W_ROUTE22GATECURSCRIPT], a
+ jp TextScriptEnd
+
+Route22GateText_1e704: ; 1e704 (7:6704)
+ TX_FAR _Route22GateText_1e704 ; 0x8cfbb
+ db $8
+ ld a, (SFX_02_51 - SFX_Headers_02) / 3
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ ld hl, Route22GateText_1e715 ; $6715
+ ret
+
+Route22GateText_1e715: ; 1e715 (7:6715)
+ TX_FAR _Route22GateText_1e715
+ db "@"
+
+Route22GateText_1e71a: ; 1e71a (7:671a)
+ TX_FAR _Route22GateText_1e71a ; 0x8d03e
+ db $0B, "@"
diff --git a/scripts/route23.asm b/scripts/route23.asm
new file mode 100755
index 00000000..aca5efb7
--- /dev/null
+++ b/scripts/route23.asm
@@ -0,0 +1,245 @@
+Route23Script: ; 511da (14:51da)
+ call Route23Script_511e9
+ call EnableAutoTextBoxDrawing
+ ld hl, Route23ScriptPointers
+ ld a, [W_ROUTE23CURSCRIPT]
+ jp CallFunctionInTable
+
+Route23Script_511e9: ; 511e9 (14:51e9)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ld hl, $d7ee
+ res 0, [hl]
+ res 7, [hl]
+ ld hl, $d813
+ res 0, [hl]
+ res 6, [hl]
+ ld a, $7a
+ ld [$cc4d], a
+ ld a, $15
+ call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+ ld a, $60
+ ld [$cc4d], a
+ ld a, $11
+ jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+
+Route23ScriptPointers: ; 51213 (14:5213)
+ dw Route23Script0
+ dw Route23Script1
+ dw Route23Script2
+
+Route23Script0: ; 51219 (14:5219)
+ ld hl, YCoordsData_51255 ; $5255
+ ld a, [W_YCOORD]
+ ld b, a
+ ld e, $0
+ ld c, $7
+.asm_51224
+ ld a, [hli]
+ cp $ff
+ ret z
+ inc e
+ dec c
+ cp b
+ jr nz, .asm_51224 ; 0x5122b $f7
+ cp $23
+ jr nz, .asm_51237 ; 0x5122f $6
+ ld a, [W_XCOORD]
+ cp $e
+ ret nc
+.asm_51237
+ ld a, e
+ ld [$ff8c], a
+ ld a, c
+ ld [$cd3d], a
+ ld b, $2
+ ld hl, $d7ed
+ ld a, $10
+ call Predef
+ ld a, c
+ and a
+ ret nz
+ call Route23Script_5125d
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ret
+
+YCoordsData_51255: ; 51255 (14:5255)
+ db $23,$38,$55,$60,$69,$77,$88,$FF
+
+Route23Script_5125d: ; 5125d (14:525d)
+ ld hl, BadgeTextPointers ; $5276
+ ld a, [wWhichTrade] ; $cd3d
+ ld c, a
+ ld b, $0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, $cd6d
+.asm_5126e
+ ld a, [hli]
+ ld [de], a
+ inc de
+ cp $50
+ jr nz, .asm_5126e
+ ret
+
+BadgeTextPointers: ; 51276 (14:5276)
+ dw CascadeBadgeText
+ dw ThunderBadgeText
+ dw RainbowBadgeText
+ dw SoulBadgeText
+ dw MarshBadgeText
+ dw VolcanoBadgeText
+ dw EarthBadgeText
+
+EarthBadgeText: ; 51284 (14:5284)
+ db "EARTHBADGE@"
+
+VolcanoBadgeText: ; 5128f (14:528f)
+ db "VOLCANOBADGE@"
+
+MarshBadgeText: ; 5129c (14:529c)
+ db "MARSHBADGE@"
+
+SoulBadgeText: ; 512a7 (14:52a7)
+ db "SOULBADGE@"
+
+RainbowBadgeText: ; 512b1 (14:52b1)
+ db "RAINBOWBADGE@"
+
+ThunderBadgeText: ; 512be (14:52be)
+ db "THUNDERBADGE@"
+
+CascadeBadgeText: ; 512cb (14:52cb)
+ db "CASCADEBADGE@"
+
+Route23Script_512d8: ; 512d8 (14:52d8)
+ ld a, $1
+ ld [$cd38], a
+ ld a, $80
+ ld [$ccd3], a
+ xor a
+ ld [$c109], a
+ ld [wJoypadForbiddenButtonsMask], a
+ jp Func_3486
+
+Route23Script1: ; 512ec (14:52ec)
+ ld a, [$cd38]
+ and a
+ ret nz
+Route23Script2: ; 512f1 (14:52f1)
+ ld a, $0
+ ld [W_ROUTE23CURSCRIPT], a
+ ret
+
+Route23TextPointers: ; 512f7 (14:52f7)
+ dw Route23Text1
+ dw Route23Text2
+ dw Route23Text3
+ dw Route23Text4
+ dw Route23Text5
+ dw Route23Text6
+ dw Route23Text7
+ dw Route23Text8
+
+Route23Text1: ; 51307 (14:5307)
+ db $08 ; asm
+ ld a, $6
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text2: ; 51310 (14:5310)
+ db $08 ; asm
+ ld a, $5
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text3: ; 51319 (14:5319)
+ db $08 ; asm
+ ld a, $4
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text4: ; 51322 (14:5322)
+ db $08 ; asm
+ ld a, $3
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text5: ; 5132b (14:532b)
+ db $08 ; asm
+ ld a, $2
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text6: ; 51334 (14:5334)
+ db $08 ; asm
+ ld a, $1
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text7: ; 5133d (14:533d)
+ db $8
+ ld a, $0
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Script_51346: ; 51346 (14:5346)
+ ld [wWhichTrade], a ; $cd3d
+ call Route23Script_5125d
+ ld a, [wWhichTrade] ; $cd3d
+ inc a
+ ld c, a
+ ld b, $2
+ ld hl, W_OBTAINEDBADGES
+ ld a, $10
+ call Predef ; indirect jump to HandleBitArray (f666 (3:7666))
+ ld a, c
+ and a
+ jr nz, .asm_5136e
+ ld hl, VictoryRoadGuardText1
+ call PrintText
+ call Route23Script_512d8
+ ld a, $1
+ ld [W_ROUTE23CURSCRIPT], a
+ ret
+.asm_5136e
+ ld hl, VictoryRoadGuardText2
+ call PrintText
+ ld a, [wWhichTrade] ; $cd3d
+ ld c, a
+ ld b, $1
+ ld hl, $d7ed
+ ld a, $10
+ call Predef ; indirect jump to HandleBitArray (f666 (3:7666))
+ ld a, $2
+ ld [W_ROUTE23CURSCRIPT], a
+ ret
+
+Route23Script_51388: ; 51388 (14:5388)
+ ld hl, VictoryRoadGuardText2
+ jp PrintText
+
+VictoryRoadGuardText1: ; 5138e (14:538e)
+ TX_FAR _VictoryRoadGuardText1
+ db $08 ; asm
+ ld a, (SFX_02_51 - SFX_Headers_02) / 3
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+VictoryRoadGuardText2: ; 5139e (14:539e)
+ TX_FAR _VictoryRoadGuardText2
+ db $b
+ TX_FAR _VictoryRoadGuardText_513a3
+ db "@"
+
+Route23Text8: ; 513a8 (14:53a8)
+ TX_FAR _Route23Text8
+ db "@"
diff --git a/scripts/route24.asm b/scripts/route24.asm
new file mode 100755
index 00000000..0e77c6f7
--- /dev/null
+++ b/scripts/route24.asm
@@ -0,0 +1,326 @@
+Route24Script: ; 513ad (14:53ad)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route24TrainerHeaders
+ ld de, Route24ScriptPointers
+ ld a, [W_ROUTE24CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE24CURSCRIPT], a
+ ret
+
+Route24Script_513c0: ; 513c0 (14:53c0)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE24CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route24ScriptPointers: ; 513cb (14:53cb)
+ dw Route24Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw Route24Script3
+ dw Route24Script4
+
+Route24Script0: ; 513d5 (14:53d5)
+ ld a, [$d7ef]
+ bit 0, a
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_5140e ; $540e
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d7f0
+ bit 1, [hl]
+ res 1, [hl]
+ ret z
+ ld a, $80
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ call Func_3486
+ ld a, $4
+ ld [W_ROUTE24CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+CoordsData_5140e: ; 5140e (14:540e)
+ db $0F,$0A,$FF
+
+Route24Script4: ; 51411 (14:5411)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ ld a, $0
+ ld [W_ROUTE24CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route24Script3: ; 51422 (14:5422)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, Route24Script_513c0
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d7ef
+ set 1, [hl]
+ ld a, $1
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_ROUTE24CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route24TextPointers: ; 5144b (14:544b)
+ dw Route24Text1
+ dw Route24Text2
+ dw Route24Text3
+ dw Route24Text4
+ dw Route24Text5
+ dw Route24Text6
+ dw Route24Text7
+ dw Predef5CText
+
+Route24TrainerHeaders: ; 5145b (14:545b)
+Route24TrainerHeader0: ; 5145b (14:545b)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7ef ; flag's byte
+ dw Route24BattleText1 ; 0x5571 TextBeforeBattle
+ dw Route24AfterBattleText1 ; 0x557b TextAfterBattle
+ dw Route24EndBattleText1 ; 0x5576 TextEndBattle
+ dw Route24EndBattleText1 ; 0x5576 TextEndBattle
+
+Route24TrainerHeader2: ; 51467 (14:5467)
+ db $3 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7ef ; flag's byte
+ dw Route24BattleText2 ; 0x5580 TextBeforeBattle
+ dw Route24AfterBattleText2 ; 0x558a TextAfterBattle
+ dw Route24EndBattleText2 ; 0x5585 TextEndBattle
+ dw Route24EndBattleText2 ; 0x5585 TextEndBattle
+
+Route24TrainerHeader3: ; 51473 (14:5473)
+ db $4 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7ef ; flag's byte
+ dw Route24BattleText3 ; 0x558f TextBeforeBattle
+ dw Route24AfterBattleText3 ; 0x5599 TextAfterBattle
+ dw Route24EndBattleText3 ; 0x5594 TextEndBattle
+ dw Route24EndBattleText3 ; 0x5594 TextEndBattle
+
+Route24TrainerHeader4: ; 5147f (14:547f)
+ db $5 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7ef ; flag's byte
+ dw Route24BattleText4 ; 0x559e TextBeforeBattle
+ dw Route24AfterBattleText4 ; 0x55a8 TextAfterBattle
+ dw Route24EndBattleText4 ; 0x55a3 TextEndBattle
+ dw Route24EndBattleText4 ; 0x55a3 TextEndBattle
+
+Route24TrainerHeader5: ; 5148b (14:548b)
+ db $6 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7ef ; flag's byte
+ dw Route24BattleText5 ; 0x55ad TextBeforeBattle
+ dw Route24AfterBattleText5 ; 0x55b7 TextAfterBattle
+ dw Route24EndBattleText5 ; 0x55b2 TextEndBattle
+ dw Route24EndBattleText5 ; 0x55b2 TextEndBattle
+
+Route24TrainerHeader6: ; 51497 (14:5497)
+ db $7 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7ef ; flag's byte
+ dw Route24BattleText6 ; 0x55bc TextBeforeBattle
+ dw Route24AfterBattleText6 ; 0x55c6 TextAfterBattle
+ dw Route24EndBattleText6 ; 0x55c1 TextEndBattle
+ dw Route24EndBattleText6 ; 0x55c1 TextEndBattle
+
+ db $ff
+
+Route24Text1: ; 514a4 (14:54a4)
+ db $8
+ ld hl, $d7f0
+ res 1, [hl]
+ ld a, [$d7ef]
+ bit 0, a
+ jr nz, .asm_a03f5 ; 0x514af $48
+ ld hl, Route24Text_51510
+ call PrintText
+ ld bc, (NUGGET << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d7ef
+ set 0, [hl]
+ ld hl, Route24Text_5151a
+ call PrintText
+ ld hl, Route24Text_51526
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, Route24Text_5152b
+ ld de, Route24Text_5152b
+ call PreBattleSaveRegisters
+ ld a, [$ff8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $3
+ ld [W_ROUTE24CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jp TextScriptEnd
+.asm_a03f5 ; 0x514f9
+ ld hl, Route24Text_51530
+ call PrintText
+ jp TextScriptEnd
+.BagFull
+ ld hl, Route24Text_51521
+ call PrintText
+ ld hl, $d7f0
+ set 1, [hl]
+ jp TextScriptEnd
+
+Route24Text_51510: ; 51510 (14:5510)
+ TX_FAR _Route24Text_51510 ; 0x92721
+ db $0B
+ TX_FAR _Route24Text_51515 ; 0x92755
+ db "@"
+
+Route24Text_5151a: ; 5151a (14:551a)
+ TX_FAR _Route24Text_5151a ; 0x92779
+ db $0B, $6, "@"
+
+Route24Text_51521: ; 51521 (14:5521)
+ TX_FAR _Route24Text_51521
+ db "@"
+
+Route24Text_51526: ; 51526 (14:5526)
+ TX_FAR _Route24Text_51526
+ db "@"
+
+Route24Text_5152b: ; 5152b (14:552b)
+ TX_FAR _Route24Text_5152b
+ db "@"
+
+Route24Text_51530: ; 51530 (14:5530)
+ TX_FAR _Route24Text_51530
+ db "@"
+
+Route24Text2: ; 51535 (14:5535)
+ db $08 ; asm
+ ld hl, Route24TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text3: ; 5153f (14:553f)
+ db $08 ; asm
+ ld hl, Route24TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text4: ; 51549 (14:5549)
+ db $08 ; asm
+ ld hl, Route24TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text5: ; 51553 (14:5553)
+ db $08 ; asm
+ ld hl, Route24TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text6: ; 5155d (14:555d)
+ db $08 ; asm
+ ld hl, Route24TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text7: ; 51567 (14:5567)
+ db $08 ; asm
+ ld hl, Route24TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24BattleText1: ; 51571 (14:5571)
+ TX_FAR _Route24BattleText1
+ db "@"
+
+Route24EndBattleText1: ; 51576 (14:5576)
+ TX_FAR _Route24EndBattleText1
+ db "@"
+
+Route24AfterBattleText1: ; 5157b (14:557b)
+ TX_FAR _Route24AfterBattleText1
+ db "@"
+
+Route24BattleText2: ; 51580 (14:5580)
+ TX_FAR _Route24BattleText2
+ db "@"
+
+Route24EndBattleText2: ; 51585 (14:5585)
+ TX_FAR _Route24EndBattleText2
+ db "@"
+
+Route24AfterBattleText2: ; 5158a (14:558a)
+ TX_FAR _Route24AfterBattleText2
+ db "@"
+
+Route24BattleText3: ; 5158f (14:558f)
+ TX_FAR _Route24BattleText3
+ db "@"
+
+Route24EndBattleText3: ; 51594 (14:5594)
+ TX_FAR _Route24EndBattleText3
+ db "@"
+
+Route24AfterBattleText3: ; 51599 (14:5599)
+ TX_FAR _Route24AfterBattleText3
+ db "@"
+
+Route24BattleText4: ; 5159e (14:559e)
+ TX_FAR _Route24BattleText4
+ db "@"
+
+Route24EndBattleText4: ; 515a3 (14:55a3)
+ TX_FAR _Route24EndBattleText4
+ db "@"
+
+Route24AfterBattleText4: ; 515a8 (14:55a8)
+ TX_FAR _Route24AfterBattleText4
+ db "@"
+
+Route24BattleText5: ; 515ad (14:55ad)
+ TX_FAR _Route24BattleText5
+ db "@"
+
+Route24EndBattleText5: ; 515b2 (14:55b2)
+ TX_FAR _Route24EndBattleText5
+ db "@"
+
+Route24AfterBattleText5: ; 515b7 (14:55b7)
+ TX_FAR _Route24AfterBattleText5
+ db "@"
+
+Route24BattleText6: ; 515bc (14:55bc)
+ TX_FAR _Route24BattleText6
+ db "@"
+
+Route24EndBattleText6: ; 515c1 (14:55c1)
+ TX_FAR _Route24EndBattleText6
+ db "@"
+
+Route24AfterBattleText6: ; 515c6 (14:55c6)
+ TX_FAR _Route24AfterBattleText6
+ db "@"
diff --git a/scripts/route25.asm b/scripts/route25.asm
new file mode 100755
index 00000000..7c5543c7
--- /dev/null
+++ b/scripts/route25.asm
@@ -0,0 +1,309 @@
+Route25Script: ; 515cb (14:55cb)
+ call Route25Script_515e1
+ call EnableAutoTextBoxDrawing
+ ld hl, Route25TrainerHeaders
+ ld de, Route25ScriptPointers
+ ld a, [W_ROUTE25CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE25CURSCRIPT], a
+ ret
+
+Route25Script_515e1: ; 515e1 (14:55e1)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ld hl, $d7f2
+ bit 7, [hl]
+ ret nz
+ bit 5, [hl]
+ jr nz, .asm_515ff
+ res 6, [hl]
+ ld a, $61
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+.asm_515ff
+ bit 4, [hl]
+ ret z
+ set 7, [hl]
+ ld a, $24
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $62
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $63
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+
+Route25ScriptPointers: ; 51622 (14:5622)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route25TextPointers: ; 51628 (14:5628)
+ dw Route25Text1
+ dw Route25Text2
+ dw Route25Text3
+ dw Route25Text4
+ dw Route25Text5
+ dw Route25Text6
+ dw Route25Text7
+ dw Route25Text8
+ dw Route25Text9
+ dw Predef5CText
+ dw Route25Text11
+
+Route25TrainerHeaders: ; 5163e (14:563e)
+Route25TrainerHeader0: ; 5163e (14:563e)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText1 ; 0x5705 TextBeforeBattle
+ dw Route25AfterBattleText1 ; 0x570f TextAfterBattle
+ dw Route25EndBattleText1 ; 0x570a TextEndBattle
+ dw Route25EndBattleText1 ; 0x570a TextEndBattle
+
+Route25TrainerHeader2: ; 5164a (14:564a)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText2 ; 0x5714 TextBeforeBattle
+ dw Route25AfterBattleText2 ; 0x571e TextAfterBattle
+ dw Route25EndBattleText2 ; 0x5719 TextEndBattle
+ dw Route25EndBattleText2 ; 0x5719 TextEndBattle
+
+Route25TrainerHeader3: ; 51656 (14:5656)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText3 ; 0x5723 TextBeforeBattle
+ dw Route25AfterBattleText3 ; 0x572d TextAfterBattle
+ dw Route25EndBattleText3 ; 0x5728 TextEndBattle
+ dw Route25EndBattleText3 ; 0x5728 TextEndBattle
+
+Route25TrainerHeader4: ; 51662 (14:5662)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText4 ; 0x5732 TextBeforeBattle
+ dw Route25AfterBattleText4 ; 0x573c TextAfterBattle
+ dw Route25EndBattleText4 ; 0x5737 TextEndBattle
+ dw Route25EndBattleText4 ; 0x5737 TextEndBattle
+
+Route25TrainerHeader5: ; 5166e (14:566e)
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText5 ; 0x5741 TextBeforeBattle
+ dw Route25AfterBattleText5 ; 0x574b TextAfterBattle
+ dw Route25EndBattleText5 ; 0x5746 TextEndBattle
+ dw Route25EndBattleText5 ; 0x5746 TextEndBattle
+
+Route25TrainerHeader6: ; 5167a (14:567a)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText6 ; 0x5750 TextBeforeBattle
+ dw Route25AfterBattleText6 ; 0x575a TextAfterBattle
+ dw Route25EndBattleText6 ; 0x5755 TextEndBattle
+ dw Route25EndBattleText6 ; 0x5755 TextEndBattle
+
+Route25TrainerHeader7: ; 51686 (14:5686)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText7 ; 0x575f TextBeforeBattle
+ dw Route25AfterBattleText7 ; 0x5769 TextAfterBattle
+ dw Route25EndBattleText7 ; 0x5764 TextEndBattle
+ dw Route25EndBattleText7 ; 0x5764 TextEndBattle
+
+Route25TrainerHeader8: ; 51692 (14:5692)
+ db $8 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText8 ; 0x576e TextBeforeBattle
+ dw Route25AfterBattleText8 ; 0x5778 TextAfterBattle
+ dw Route25EndBattleText8 ; 0x5773 TextEndBattle
+ dw Route25EndBattleText8 ; 0x5773 TextEndBattle
+
+Route25TrainerHeader9: ; 5169e (14:569e)
+ db $9 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7f1 ; flag's byte
+ dw Route25BattleText9 ; 0x577d TextBeforeBattle
+ dw Route25AfterBattleText9 ; 0x5787 TextAfterBattle
+ dw Route25EndBattleText9 ; 0x5782 TextEndBattle
+ dw Route25EndBattleText9 ; 0x5782 TextEndBattle
+
+ db $ff
+
+Route25Text1: ; 516ab (14:56ab)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text2: ; 516b5 (14:56b5)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text3: ; 516bf (14:56bf)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text4: ; 516c9 (14:56c9)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text5: ; 516d3 (14:56d3)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text6: ; 516dd (14:56dd)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text7: ; 516e7 (14:56e7)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text8: ; 516f1 (14:56f1)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text9: ; 516fb (14:56fb)
+ db $08 ; asm
+ ld hl, Route25TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25BattleText1: ; 51705 (14:5705)
+ TX_FAR _Route25BattleText1
+ db "@"
+
+Route25EndBattleText1: ; 5170a (14:570a)
+ TX_FAR _Route25EndBattleText1
+ db "@"
+
+Route25AfterBattleText1: ; 5170f (14:570f)
+ TX_FAR _Route25AfterBattleText1
+ db "@"
+
+Route25BattleText2: ; 51714 (14:5714)
+ TX_FAR _Route25BattleText2
+ db "@"
+
+Route25EndBattleText2: ; 51719 (14:5719)
+ TX_FAR _Route25EndBattleText2
+ db "@"
+
+Route25AfterBattleText2: ; 5171e (14:571e)
+ TX_FAR _Route25AfterBattleText2
+ db "@"
+
+Route25BattleText3: ; 51723 (14:5723)
+ TX_FAR _Route25BattleText3
+ db "@"
+
+Route25EndBattleText3: ; 51728 (14:5728)
+ TX_FAR _Route25EndBattleText3
+ db "@"
+
+Route25AfterBattleText3: ; 5172d (14:572d)
+ TX_FAR _Route25AfterBattleText3
+ db "@"
+
+Route25BattleText4: ; 51732 (14:5732)
+ TX_FAR _Route25BattleText4
+ db "@"
+
+Route25EndBattleText4: ; 51737 (14:5737)
+ TX_FAR _Route25EndBattleText4
+ db "@"
+
+Route25AfterBattleText4: ; 5173c (14:573c)
+ TX_FAR _Route25AfterBattleText4
+ db "@"
+
+Route25BattleText5: ; 51741 (14:5741)
+ TX_FAR _Route25BattleText5
+ db "@"
+
+Route25EndBattleText5: ; 51746 (14:5746)
+ TX_FAR _Route25EndBattleText5
+ db "@"
+
+Route25AfterBattleText5: ; 5174b (14:574b)
+ TX_FAR _Route25AfterBattleText5
+ db "@"
+
+Route25BattleText6: ; 51750 (14:5750)
+ TX_FAR _Route25BattleText6
+ db "@"
+
+Route25EndBattleText6: ; 51755 (14:5755)
+ TX_FAR _Route25EndBattleText6
+ db "@"
+
+Route25AfterBattleText6: ; 5175a (14:575a)
+ TX_FAR _Route25AfterBattleText6
+ db "@"
+
+Route25BattleText7: ; 5175f (14:575f)
+ TX_FAR _Route25BattleText7
+ db "@"
+
+Route25EndBattleText7: ; 51764 (14:5764)
+ TX_FAR _Route25EndBattleText7
+ db "@"
+
+Route25AfterBattleText7: ; 51769 (14:5769)
+ TX_FAR _Route25AfterBattleText7
+ db "@"
+
+Route25BattleText8: ; 5176e (14:576e)
+ TX_FAR _Route25BattleText8
+ db "@"
+
+Route25EndBattleText8: ; 51773 (14:5773)
+ TX_FAR _Route25EndBattleText8
+ db "@"
+
+Route25AfterBattleText8: ; 51778 (14:5778)
+ TX_FAR _Route25AfterBattleText8
+ db "@"
+
+Route25BattleText9: ; 5177d (14:577d)
+ TX_FAR _Route25BattleText9
+ db "@"
+
+Route25EndBattleText9: ; 51782 (14:5782)
+ TX_FAR _Route25EndBattleText9
+ db "@"
+
+Route25AfterBattleText9: ; 51787 (14:5787)
+ TX_FAR _Route25AfterBattleText9
+ db "@"
+
+Route25Text11: ; 5178c (14:578c)
+ TX_FAR _Route25Text11
+ db "@"
diff --git a/scripts/route2gate.asm b/scripts/route2gate.asm
new file mode 100755
index 00000000..9fd8e4bd
--- /dev/null
+++ b/scripts/route2gate.asm
@@ -0,0 +1,42 @@
+Route2GateScript: ; 5d5d4 (17:55d4)
+ jp EnableAutoTextBoxDrawing
+
+Route2GateTextPointers: ; 5d5d7 (17:55d7)
+ dw Route2GateText1
+ dw Route2GateText2
+
+Route2GateText1: ; 5d5db (17:55db)
+ db $08 ; asm
+ ld a, [$d7c2]
+ bit 0, a
+ jr nz, .asm_6592c ; 0x5d5e1
+ ld a, $a
+ ldh [$db], a
+ ld a, $c8
+ ldh [$dc], a
+ ld [$d11e], a
+ call GetItemName ; $2fcf
+ ld hl, $cd6d
+ ld de, $cc5b
+ ld bc, $000d
+ call CopyData
+ ld a, $62
+ call Predef
+ ldh a, [$db]
+ cp $1
+ jr nz, .asm_ad646 ; 0x5d606
+ ld hl, $d7c2
+ set 0, [hl]
+.asm_6592c ; 0x5d60d
+ ld hl, Route2GateText_5d616
+ call PrintText
+.asm_ad646 ; 0x5d613
+ jp TextScriptEnd
+
+Route2GateText_5d616: ; 5d616 (17:5616)
+ TX_FAR _Route2GateText_5d616
+ db "@"
+
+Route2GateText2: ; 5d61b (17:561b)
+ TX_FAR _Route2GateText2
+ db "@"
diff --git a/scripts/route2house.asm b/scripts/route2house.asm
new file mode 100755
index 00000000..50a058b8
--- /dev/null
+++ b/scripts/route2house.asm
@@ -0,0 +1,18 @@
+Route2HouseScript: ; 1deed (7:5eed)
+ jp EnableAutoTextBoxDrawing
+
+Route2HouseTextPointers: ; 1def0 (7:5ef0)
+ dw Route2HouseText1
+ dw Route2HouseText2
+
+Route2HouseText1: ; 1def4 (7:5ef4)
+ TX_FAR _Route2HouseText1
+ db "@"
+
+Route2HouseText2: ; 1def9 (7:5ef9)
+ db $08 ; asm
+ ld a, $1
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+ jp TextScriptEnd
diff --git a/scripts/route3.asm b/scripts/route3.asm
new file mode 100755
index 00000000..1ff29f5b
--- /dev/null
+++ b/scripts/route3.asm
@@ -0,0 +1,252 @@
+Route3Script: ; 554f8 (15:54f8)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route3TrainerHeader0
+ ld de, Route3ScriptPointers
+ ld a, [W_ROUTE3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE3CURSCRIPT], a
+ ret
+
+Route3ScriptPointers: ; 5550b (15:550b)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route3TextPointers: ; 55511 (15:5511)
+ dw Route3Text1
+ dw Route3Text2
+ dw Route3Text3
+ dw Route3Text4
+ dw Route3Text5
+ dw Route3Text6
+ dw Route3Text7
+ dw Route3Text8
+ dw Route3Text9
+ dw Route3Text10
+
+Route3TrainerHeaders: ; 55525 (15:5525)
+Route3TrainerHeader0: ; 55525 (15:5525)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText1 ; 0x5595 TextBeforeBattle
+ dw Route3AfterBattleText1 ; 0x559f TextAfterBattle
+ dw Route3EndBattleText1 ; 0x559a TextEndBattle
+ dw Route3EndBattleText1 ; 0x559a TextEndBattle
+
+Route3TrainerHeader2: ; 55531 (15:5531)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText2 ; 0x55ae TextBeforeBattle
+ dw Route3AfterBattleText2 ; 0x55b8 TextAfterBattle
+ dw Route3EndBattleText2 ; 0x55b3 TextEndBattle
+ dw Route3EndBattleText2 ; 0x55b3 TextEndBattle
+
+Route3TrainerHeader3: ; 5553d (15:553d)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText3 ; 0x55c7 TextBeforeBattle
+ dw Route3AfterBattleText3 ; 0x55d1 TextAfterBattle
+ dw Route3EndBattleText3 ; 0x55cc TextEndBattle
+ dw Route3EndBattleText3 ; 0x55cc TextEndBattle
+
+Route3TrainerHeader4: ; 55549 (15:5549)
+ db $5 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText4 ; 0x55e0 TextBeforeBattle
+ dw Route3AfterBattleText4 ; 0x55ea TextAfterBattle
+ dw Route3EndBattleText4 ; 0x55e5 TextEndBattle
+ dw Route3EndBattleText4 ; 0x55e5 TextEndBattle
+
+Route3TrainerHeader5: ; 55555 (15:5555)
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText5 ; 0x55f9 TextBeforeBattle
+ dw Route3AfterBattleText5 ; 0x5603 TextAfterBattle
+ dw Route3EndBattleText5 ; 0x55fe TextEndBattle
+ dw Route3EndBattleText5 ; 0x55fe TextEndBattle
+
+Route3TrainerHeader6: ; 55561 (15:5561)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText6 ; 0x5612 TextBeforeBattle
+ dw Route3AfterBattleText6 ; 0x561c TextAfterBattle
+ dw Route3EndBattleText6 ; 0x5617 TextEndBattle
+ dw Route3EndBattleText6 ; 0x5617 TextEndBattle
+
+Route3TrainerHeader7: ; 5556d (15:556d)
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText7 ; 0x562b TextBeforeBattle
+ dw Route3AfterBattleText7 ; 0x5635 TextAfterBattle
+ dw Route3EndBattleText7 ; 0x5630 TextEndBattle
+ dw Route3EndBattleText7 ; 0x5630 TextEndBattle
+
+Route3TrainerHeader8: ; 55579 (15:5579)
+ db $9 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7c3 ; flag's byte
+ dw Route3BattleText8 ; 0x5644 TextBeforeBattle
+ dw Route3AfterBattleText8 ; 0x564e TextAfterBattle
+ dw Route3EndBattleText8 ; 0x5649 TextEndBattle
+ dw Route3EndBattleText8 ; 0x5649 TextEndBattle
+
+ db $ff
+
+Route3Text1: ; 55586 (15:5586)
+ TX_FAR _Route3Text1
+ db "@"
+
+Route3Text2: ; 5558b (15:558b)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText1: ; 55595 (15:5595)
+ TX_FAR _Route3BattleText1
+ db "@"
+
+Route3EndBattleText1: ; 5559a (15:559a)
+ TX_FAR _Route3EndBattleText1
+ db "@"
+
+Route3AfterBattleText1: ; 5559f (15:559f)
+ TX_FAR _Route3AfterBattleText1
+ db "@"
+
+Route3Text3: ; 555a4 (15:55a4)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText2: ; 555ae (15:55ae)
+ TX_FAR _Route3BattleText2
+ db "@"
+
+Route3EndBattleText2: ; 555b3 (15:55b3)
+ TX_FAR _Route3EndBattleText2
+ db "@"
+
+Route3AfterBattleText2: ; 555b8 (15:55b8)
+ TX_FAR _Route3AfterBattleText2
+ db "@"
+
+Route3Text4: ; 555bd (15:55bd)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText3: ; 555c7 (15:55c7)
+ TX_FAR _Route3BattleText3
+ db "@"
+
+Route3EndBattleText3: ; 555cc (15:55cc)
+ TX_FAR _Route3EndBattleText3
+ db "@"
+
+Route3AfterBattleText3: ; 555d1 (15:55d1)
+ TX_FAR _Route3AfterBattleText3
+ db "@"
+
+Route3Text5: ; 555d6 (15:55d6)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText4: ; 555e0 (15:55e0)
+ TX_FAR _Route3BattleText4
+ db "@"
+
+Route3EndBattleText4: ; 555e5 (15:55e5)
+ TX_FAR _Route3EndBattleText4
+ db "@"
+
+Route3AfterBattleText4: ; 555ea (15:55ea)
+ TX_FAR _Route3AfterBattleText4
+ db "@"
+
+Route3Text6: ; 555ef (15:55ef)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText5: ; 555f9 (15:55f9)
+ TX_FAR _Route3BattleText5
+ db "@"
+
+Route3EndBattleText5: ; 555fe (15:55fe)
+ TX_FAR _Route3EndBattleText5
+ db "@"
+
+Route3AfterBattleText5: ; 55603 (15:5603)
+ TX_FAR _Route3AfterBattleText5
+ db "@"
+
+Route3Text7: ; 55608 (15:5608)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText6: ; 55612 (15:5612)
+ TX_FAR _Route3BattleText6
+ db "@"
+
+Route3EndBattleText6: ; 55617 (15:5617)
+ TX_FAR _Route3EndBattleText6
+ db "@"
+
+Route3AfterBattleText6: ; 5561c (15:561c)
+ TX_FAR _Route3AfterBattleText6
+ db "@"
+
+Route3Text8: ; 55621 (15:5621)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText7: ; 5562b (15:562b)
+ TX_FAR _Route3BattleText7
+ db "@"
+
+Route3EndBattleText7: ; 55630 (15:5630)
+ TX_FAR _Route3EndBattleText7
+ db "@"
+
+Route3AfterBattleText7: ; 55635 (15:5635)
+ TX_FAR _Route3AfterBattleText7
+ db "@"
+
+Route3Text9: ; 5563a (15:563a)
+ db $08 ; asm
+ ld hl, Route3TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText8: ; 55644 (15:5644)
+ TX_FAR _Route3BattleText8
+ db "@"
+
+Route3EndBattleText8: ; 55649 (15:5649)
+ TX_FAR _Route3EndBattleText8
+ db "@"
+
+Route3AfterBattleText8: ; 5564e (15:564e)
+ TX_FAR _Route3AfterBattleText8
+ db "@"
+
+Route3Text10: ; 55653 (15:5653)
+ TX_FAR _Route3Text10
+ db "@"
diff --git a/scripts/route4.asm b/scripts/route4.asm
new file mode 100755
index 00000000..69ec7424
--- /dev/null
+++ b/scripts/route4.asm
@@ -0,0 +1,63 @@
+Route4Script: ; 55658 (15:5658)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route4TrainerHeaders
+ ld de, Route4ScriptPointers
+ ld a, [W_ROUTE4CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE4CURSCRIPT], a
+ ret
+
+Route4ScriptPointers: ; 5566b (15:566b)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route4TextPointers: ; 55671 (15:5671)
+ dw Route4Text1
+ dw Route4Text2
+ dw Predef5CText
+ dw PokeCenterSignText
+ dw Route4Text5
+ dw Route4Text6
+
+Route4TrainerHeaders: ; 5567d (15:567d)
+Route4TrainerHeader0: ; 5567d (15:567d)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c5 ; flag's byte
+ dw Route4BattleText1 ; 0x5699 TextBeforeBattle
+ dw Route4AfterBattleText1 ; 0x56a3 TextAfterBattle
+ dw Route4EndBattleText1 ; 0x569e TextEndBattle
+ dw Route4EndBattleText1 ; 0x569e TextEndBattle
+
+ db $ff
+
+Route4Text1: ; 5568a (15:568a)
+ TX_FAR _Route4Text1
+ db "@"
+
+Route4Text2: ; 5568f (15:568f)
+ db $08 ; asm
+ ld hl, Route4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route4BattleText1: ; 55699 (15:5699)
+ TX_FAR _Route4BattleText1
+ db "@"
+
+Route4EndBattleText1: ; 5569e (15:569e)
+ TX_FAR _Route4EndBattleText1
+ db "@"
+
+Route4AfterBattleText1: ; 556a3 (15:56a3)
+ TX_FAR _Route4AfterBattleText1
+ db "@"
+
+Route4Text5: ; 556a8 (15:56a8)
+ TX_FAR _Route4Text5
+ db "@"
+
+Route4Text6: ; 556ad (15:56ad)
+ TX_FAR _Route4Text6
+ db "@"
diff --git a/scripts/route5.asm b/scripts/route5.asm
new file mode 100755
index 00000000..1fad3939
--- /dev/null
+++ b/scripts/route5.asm
@@ -0,0 +1,9 @@
+Route5Script: ; 556b2 (15:56b2)
+ jp EnableAutoTextBoxDrawing
+
+Route5TextPointers: ; 556b5 (15:56b5)
+ dw Route5Text1
+
+Route5Text1: ; 556b7 (15:56b7)
+ TX_FAR _Route5Text1
+ db "@"
diff --git a/scripts/route5gate.asm b/scripts/route5gate.asm
new file mode 100755
index 00000000..ea5feda0
--- /dev/null
+++ b/scripts/route5gate.asm
@@ -0,0 +1,117 @@
+Route5GateScript: ; 1df33 (7:5f33)
+ call EnableAutoTextBoxDrawing
+ ld a, [W_ROUTE5GATECURSCRIPT]
+ ld hl, Route5GateScriptPointers
+ jp CallFunctionInTable
+
+Route5GateScriptPointers: ; 1df3f (7:5f3f)
+ dw Route5GateScript0
+ dw Route5GateScript1
+
+Route5GateScript_1df43: ; 1df43 (7:5f43)
+ ld a, $40
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ jp Func_3486
+
+Route5GateScript0: ; 1df50 (7:5f50)
+ ld a, [$d728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1df8f
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $2
+ ld [$d528], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ callba RemoveGuardDrink
+ ld a, [$ff00+$db]
+ and a
+ jr nz, .asm_1df82 ; 0x1df70 $10
+ ld a, $2
+ ld [$ff00+$8c], a
+ call DisplayTextID
+ call Route5GateScript_1df43
+ ld a, $1
+ ld [W_ROUTE5GATECURSCRIPT], a
+ ret
+.asm_1df82
+ ld a, $3
+ ld [$ff00+$8c], a
+ call DisplayTextID
+ ld hl, $d728
+ set 6, [hl]
+ ret
+
+CoordsData_1df8f: ; 1df8f (7:5f8f)
+ db 3,3
+ db 3,4
+ db $ff
+
+Route5GateScript1: ; 1df94 (7:5f94)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE5GATECURSCRIPT], a
+ ret
+
+Route5GateTextPointers: ; 1dfa4 (7:5fa4)
+ dw Route5GateText1
+ dw Route5GateText2
+ dw Route5GateText3
+
+Route8GateText1: ; 1dfaa (7:5faa)
+Route7GateText1: ; 1dfaa (7:5faa)
+Route6GateText1: ; 1dfaa (7:5faa)
+Route5GateText1: ; 1dfaa (7:5faa)
+ db $8
+ ld a, [$d728]
+ bit 6, a
+ jr nz, .asm_88856 ; 0x1dfb0 $2c
+ callba RemoveGuardDrink
+ ld a, [$ff00+$db]
+ and a
+ jr nz, .asm_768a2 ; 0x1dfbd $11
+ ld hl, Route5GateText2
+ call PrintText
+ call Route5GateScript_1df43
+ ld a, $1
+ ld [W_ROUTE5GATECURSCRIPT], a
+ jp TextScriptEnd
+.asm_768a2 ; 0x1dfd0
+ ld hl, Route5GateText3
+ call PrintText
+ ld hl, $d728
+ set 6, [hl]
+ jp TextScriptEnd
+.asm_88856 ; 0x1dfde
+ ld hl, SaffronGateText_1dff6
+ call PrintText
+ jp TextScriptEnd
+
+Route8GateText2: ; 1dfe7 (7:5fe7)
+Route7GateText2: ; 1dfe7 (7:5fe7)
+Route6GateText2: ; 1dfe7 (7:5fe7)
+Route5GateText2: ; 1dfe7 (7:5fe7)
+ TX_FAR _SaffronGateText_1dfe7
+ db "@"
+
+Route8GateText3: ; 1dfec (7:5fec)
+Route7GateText3: ; 1dfec (7:5fec)
+Route6GateText3: ; 1dfec (7:5fec)
+Route5GateText3: ; 1dfec (7:5fec)
+ TX_FAR _SaffronGateText_8aaa9 ; 0x8aaa9
+ db $11
+ TX_FAR _SaffronGateText_1dff1 ; 0x8aaef
+ db "@"
+
+SaffronGateText_1dff6: ; 1dff6 (7:5ff6)
+ TX_FAR _SaffronGateText_1dff6
+ db "@"
+
+
diff --git a/scripts/route6.asm b/scripts/route6.asm
new file mode 100755
index 00000000..a1cf52a8
--- /dev/null
+++ b/scripts/route6.asm
@@ -0,0 +1,187 @@
+Route6Script: ; 590b0 (16:50b0)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route6TrainerHeaders
+ ld de, Route6ScriptPointers
+ ld a, [W_ROUTE6CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE6CURSCRIPT], a
+ ret
+
+Route6ScriptPointers: ; 590c3 (16:50c3)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route6TextPointers: ; 590c9 (16:50c9)
+ dw Route6Text1
+ dw Route6Text2
+ dw Route6Text3
+ dw Route6Text4
+ dw Route6Text5
+ dw Route6Text6
+ dw Route6Text7
+
+Route6TrainerHeaders: ; 590d7 (16:50d7)
+Route6TrainerHeader0: ; 590d7 (16:50d7)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7c9 ; flag's byte
+ dw Route6BattleText1 ; 0x512a TextBeforeBattle
+ dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle
+ dw Route6EndBattleText1 ; 0x512f TextEndBattle
+ dw Route6EndBattleText1 ; 0x512f TextEndBattle
+
+Route6TrainerHeader1: ; 590e3 (16:50e3)
+ db $2 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7c9 ; flag's byte
+ dw Route6BattleText2 ; 0x5143 TextBeforeBattle
+ dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle
+ dw Route6EndBattleText2 ; 0x5148 TextEndBattle
+ dw Route6EndBattleText2 ; 0x5148 TextEndBattle
+
+Route6TrainerHeader2: ; 590ef (16:50ef)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7c9 ; flag's byte
+ dw Route6BattleText3 ; 0x5157 TextBeforeBattle
+ dw Route6AfterBattleText3 ; 0x5161 TextAfterBattle
+ dw Route6EndBattleText3 ; 0x515c TextEndBattle
+ dw Route6EndBattleText3 ; 0x515c TextEndBattle
+
+Route6TrainerHeader3: ; 590fb (16:50fb)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c9 ; flag's byte
+ dw Route6BattleText4 ; 0x5170 TextBeforeBattle
+ dw Route6AfterBattleText4 ; 0x517a TextAfterBattle
+ dw Route6EndBattleText4 ; 0x5175 TextEndBattle
+ dw Route6EndBattleText4 ; 0x5175 TextEndBattle
+
+Route6TrainerHeader4: ; 59107 (16:5107)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c9 ; flag's byte
+ dw Route6BattleText5 ; 0x5189 TextBeforeBattle
+ dw Route6AfterBattleText5 ; 0x5193 TextAfterBattle
+ dw Route6EndBattleText5 ; 0x518e TextEndBattle
+ dw Route6EndBattleText5 ; 0x518e TextEndBattle
+
+Route6TrainerHeader5: ; 59113 (16:5113)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7c9 ; flag's byte
+ dw Route6BattleText6 ; 0x51a2 TextBeforeBattle
+ dw Route6AfterBattleText6 ; 0x51ac TextAfterBattle
+ dw Route6EndBattleText6 ; 0x51a7 TextEndBattle
+ dw Route6EndBattleText6 ; 0x51a7 TextEndBattle
+
+ db $ff
+
+Route6Text1: ; 59120 (16:5120)
+ db $8
+ ld hl, Route6TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText1: ; 5912a (16:512a)
+ TX_FAR _Route6BattleText1
+ db "@"
+
+Route6EndBattleText1: ; 5912f (16:512f)
+ TX_FAR _Route6EndBattleText1
+ db "@"
+
+Route6AfterBattleText1: ; 59134 (16:5134)
+ TX_FAR _Route6AfterBattleText1
+ db "@"
+
+Route6Text2: ; 59139 (16:5139)
+ db $08 ; asm
+ ld hl, Route6TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText2: ; 59143 (16:5143)
+ TX_FAR _Route6BattleText2
+ db "@"
+
+Route6EndBattleText2: ; 59148 (16:5148)
+ TX_FAR _Route6EndBattleText2
+ db "@"
+
+Route6Text3: ; 5914d (16:514d)
+ db $08 ; asm
+ ld hl, Route6TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText3: ; 59157 (16:5157)
+ TX_FAR _Route6BattleText3
+ db "@"
+
+Route6EndBattleText3: ; 5915c (16:515c)
+ TX_FAR _Route6EndBattleText3
+ db "@"
+
+Route6AfterBattleText3: ; 59161 (16:5161)
+ TX_FAR _Route6AfterBattleText3
+ db "@"
+
+Route6Text4: ; 59166 (16:5166)
+ db $08 ; asm
+ ld hl, Route6TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText4: ; 59170 (16:5170)
+ TX_FAR _Route6BattleText4
+ db "@"
+
+Route6EndBattleText4: ; 59175 (16:5175)
+ TX_FAR _Route6EndBattleText4
+ db "@"
+
+Route6AfterBattleText4: ; 5917a (16:517a)
+ TX_FAR _Route6AfterBattleText4
+ db "@"
+
+Route6Text5: ; 5917f (16:517f)
+ db $08 ; asm
+ ld hl, Route6TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText5: ; 59189 (16:5189)
+ TX_FAR _Route6BattleText5
+ db "@"
+
+Route6EndBattleText5: ; 5918e (16:518e)
+ TX_FAR _Route6EndBattleText5
+ db "@"
+
+Route6AfterBattleText5: ; 59193 (16:5193)
+ TX_FAR _Route6AfterBattleText5
+ db "@"
+
+Route6Text6: ; 59198 (16:5198)
+ db $08 ; asm
+ ld hl, Route6TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText6: ; 591a2 (16:51a2)
+ TX_FAR _Route6BattleText6
+ db "@"
+
+Route6EndBattleText6: ; 591a7 (16:51a7)
+ TX_FAR _Route6EndBattleText6
+ db "@"
+
+Route6AfterBattleText6: ; 591ac (16:51ac)
+ TX_FAR _Route6AfterBattleText6
+ db "@"
+
+Route6Text7: ; 591b1 (16:51b1)
+ TX_FAR _Route6Text7
+ db "@"
diff --git a/scripts/route6gate.asm b/scripts/route6gate.asm
new file mode 100755
index 00000000..22fe5ede
--- /dev/null
+++ b/scripts/route6gate.asm
@@ -0,0 +1,70 @@
+Route6GateScript: ; 1e03d (7:603d)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route6GateScriptPointers
+ ld a, [W_ROUTE6GATECURSCRIPT]
+ call CallFunctionInTable
+ ret
+
+Route6GateScriptPointers: ; 1e04a (7:604a)
+ dw Route6GateScript0
+ dw Route6GateScript1
+
+Route6GateScript0: ; 1e04e (7:604e)
+ ld a, [$d728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1e08c
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $1
+ ld [$d528], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1e080 ; 0x1e06e $10
+ ld a, $2
+ ld [$ff8c], a
+ call DisplayTextID
+ call Route6GateScript_1e0a1
+ ld a, $1
+ ld [W_ROUTE6GATECURSCRIPT], a
+ ret
+.asm_1e080
+ ld hl, $d728
+ set 6, [hl]
+ ld a, $3
+ ld [$ff8c], a
+ jp DisplayTextID
+
+CoordsData_1e08c: ; 1e08c (7:608c)
+ db $02,$03
+ db $02,$04,$FF
+
+Route6GateScript1: ; 1e091 (7:6091)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE6GATECURSCRIPT], a
+ ret
+
+Route6GateScript_1e0a1: ; 1e0a1 (7:60a1)
+ ld hl, $d730
+ set 7, [hl]
+ ld a, $80
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ xor a
+ ld [$c206], a
+ ld [$cd3b], a
+ ret
+
+Route6GateTextPointers: ; 1e0b8 (7:60b8)
+ dw Route6GateText1
+ dw Route6GateText2
+ dw Route6GateText3
diff --git a/scripts/route7.asm b/scripts/route7.asm
new file mode 100755
index 00000000..484fc539
--- /dev/null
+++ b/scripts/route7.asm
@@ -0,0 +1,9 @@
+Route7Script: ; 48152 (12:4152)
+ jp EnableAutoTextBoxDrawing
+
+Route7TextPointers: ; 48155 (12:4155)
+ dw Route7Text1
+
+Route7Text1: ; 48157 (12:4157)
+ TX_FAR _Route7Text1
+ db "@"
diff --git a/scripts/route7gate.asm b/scripts/route7gate.asm
new file mode 100755
index 00000000..5597c784
--- /dev/null
+++ b/scripts/route7gate.asm
@@ -0,0 +1,73 @@
+Route7GateScript: ; 1e100 (7:6100)
+ call EnableAutoTextBoxDrawing
+ ld a, [W_ROUTE7GATECURSCRIPT]
+ ld hl, Route7GateScriptPointers
+ call CallFunctionInTable
+ ret
+
+Route7GateScriptPointers: ; 1e10d (7:610d)
+ dw Route7GateScript0
+ dw Route7GateScript1
+
+Route7GateScript_1e111: ; 1e111 (7:6111)
+ ld hl, $d730
+ set 7, [hl]
+ ld a, $20
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ xor a
+ ld [$c206], a
+ ld [$cd3b], a
+ ret
+
+Route7GateScript0: ; 1e128 (7:6128)
+ ld a, [$d728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1e167
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $8
+ ld [$d528], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1e15a ; 0x1e148 $10
+ ld a, $2
+ ld [$ff8c], a
+ call DisplayTextID
+ call Route7GateScript_1e111
+ ld a, $1
+ ld [W_ROUTE7GATECURSCRIPT], a
+ ret
+.asm_1e15a
+ ld a, $3
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $d728
+ set 6, [hl]
+ ret
+
+CoordsData_1e167: ; 1e167 (7:6167)
+ db 3,3
+ db 4,3
+ db $ff
+
+Route7GateScript1: ; 1e16c (7:616c)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE7GATECURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+Route7GateTextPointers: ; 1e17f (7:617f)
+ dw Route7GateText1
+ dw Route7GateText2
+ dw Route7GateText3
diff --git a/scripts/route8.asm b/scripts/route8.asm
new file mode 100755
index 00000000..eebc96ff
--- /dev/null
+++ b/scripts/route8.asm
@@ -0,0 +1,275 @@
+Route8Script: ; 591b6 (16:51b6)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route8TrainerHeaders
+ ld de, Route8ScriptPointers
+ ld a, [W_ROUTE8CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE8CURSCRIPT], a
+ ret
+
+Route8ScriptPointers: ; 591c9 (16:51c9)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route8TextPointers: ; 591cf (16:51cf)
+ dw Route8Text1
+ dw Route8Text2
+ dw Route8Text3
+ dw Route8Text4
+ dw Route8Text5
+ dw Route8Text6
+ dw Route8Text7
+ dw Route8Text8
+ dw Route8Text9
+ dw Route8Text10
+
+Route8TrainerHeaders: ; 591e3 (16:51e3)
+Route8TrainerHeader0: ; 591e3 (16:51e3)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText1 ; 0x525a TextBeforeBattle
+ dw Route8AfterBattleText1 ; 0x5264 TextAfterBattle
+ dw Route8EndBattleText1 ; 0x525f TextEndBattle
+ dw Route8EndBattleText1 ; 0x525f TextEndBattle
+
+Route8TrainerHeader1: ; 591ef (16:51ef)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText2 ; 0x5273 TextBeforeBattle
+ dw Route8AfterBattleText2 ; 0x527d TextAfterBattle
+ dw Route8EndBattleText2 ; 0x5278 TextEndBattle
+ dw Route8EndBattleText2 ; 0x5278 TextEndBattle
+
+Route8TrainerHeader2: ; 591fb (16:51fb)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText3 ; 0x528c TextBeforeBattle
+ dw Route8AfterBattleText3 ; 0x5296 TextAfterBattle
+ dw Route8EndBattleText3 ; 0x5291 TextEndBattle
+ dw Route8EndBattleText3 ; 0x5291 TextEndBattle
+
+Route8TrainerHeader3: ; 59207 (16:5207)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText4 ; 0x52a5 TextBeforeBattle
+ dw Route8AfterBattleText4 ; 0x52af TextAfterBattle
+ dw Route8EndBattleText4 ; 0x52aa TextEndBattle
+ dw Route8EndBattleText4 ; 0x52aa TextEndBattle
+
+Route8TrainerHeader4: ; 59213 (16:5213)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText5 ; 0x52be TextBeforeBattle
+ dw Route8AfterBattleText5 ; 0x52c8 TextAfterBattle
+ dw Route8EndBattleText5 ; 0x52c3 TextEndBattle
+ dw Route8EndBattleText5 ; 0x52c3 TextEndBattle
+
+Route8TrainerHeader5: ; 5921f (16:521f)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText6 ; 0x52d7 TextBeforeBattle
+ dw Route8AfterBattleText6 ; 0x52e1 TextAfterBattle
+ dw Route8EndBattleText6 ; 0x52dc TextEndBattle
+ dw Route8EndBattleText6 ; 0x52dc TextEndBattle
+
+Route8TrainerHeader6: ; 5922b (16:522b)
+ db $7 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText7 ; 0x52f0 TextBeforeBattle
+ dw Route8AfterBattleText7 ; 0x52fa TextAfterBattle
+ dw Route8EndBattleText7 ; 0x52f5 TextEndBattle
+ dw Route8EndBattleText7 ; 0x52f5 TextEndBattle
+
+Route8TrainerHeader7: ; 59237 (16:5237)
+ db $8 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText8 ; 0x5309 TextBeforeBattle
+ dw Route8AfterBattleText8 ; 0x5313 TextAfterBattle
+ dw Route8EndBattleText8 ; 0x530e TextEndBattle
+ dw Route8EndBattleText8 ; 0x530e TextEndBattle
+
+Route8TrainerHeader8: ; 59243 (16:5243)
+ db $9 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7cd ; flag's byte
+ dw Route8BattleText9 ; 0x5322 TextBeforeBattle
+ dw Route8AfterBattleText9 ; 0x532c TextAfterBattle
+ dw Route8EndBattleText9 ; 0x5327 TextEndBattle
+ dw Route8EndBattleText9 ; 0x5327 TextEndBattle
+
+ db $ff
+
+Route8Text1: ; 59250 (16:5250)
+ db $8
+ ld hl, Route8TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText1: ; 5925a (16:525a)
+ TX_FAR _Route8BattleText1
+ db "@"
+
+Route8EndBattleText1: ; 5925f (16:525f)
+ TX_FAR _Route8EndBattleText1
+ db "@"
+
+Route8AfterBattleText1: ; 59264 (16:5264)
+ TX_FAR _Route8AfterBattleText1
+ db "@"
+
+Route8Text2: ; 59269 (16:5269)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText2: ; 59273 (16:5273)
+ TX_FAR _Route8BattleText2
+ db "@"
+
+Route8EndBattleText2: ; 59278 (16:5278)
+ TX_FAR _Route8EndBattleText2
+ db "@"
+
+Route8AfterBattleText2: ; 5927d (16:527d)
+ TX_FAR _Route8AfterBattleText2
+ db "@"
+
+Route8Text3: ; 59282 (16:5282)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText3: ; 5928c (16:528c)
+ TX_FAR _Route8BattleText3
+ db "@"
+
+Route8EndBattleText3: ; 59291 (16:5291)
+ TX_FAR _Route8EndBattleText3
+ db "@"
+
+Route8AfterBattleText3: ; 59296 (16:5296)
+ TX_FAR _Route8AfterBattleText3
+ db "@"
+
+Route8Text4: ; 5929b (16:529b)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText4: ; 592a5 (16:52a5)
+ TX_FAR _Route8BattleText4
+ db "@"
+
+Route8EndBattleText4: ; 592aa (16:52aa)
+ TX_FAR _Route8EndBattleText4
+ db "@"
+
+Route8AfterBattleText4: ; 592af (16:52af)
+ TX_FAR _Route8AfterBattleText4
+ db "@"
+
+Route8Text5: ; 592b4 (16:52b4)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText5: ; 592be (16:52be)
+ TX_FAR _Route8BattleText5
+ db "@"
+
+Route8EndBattleText5: ; 592c3 (16:52c3)
+ TX_FAR _Route8EndBattleText5
+ db "@"
+
+Route8AfterBattleText5: ; 592c8 (16:52c8)
+ TX_FAR _Route8AfterBattleText5
+ db "@"
+
+Route8Text6: ; 592cd (16:52cd)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText6: ; 592d7 (16:52d7)
+ TX_FAR _Route8BattleText6
+ db "@"
+
+Route8EndBattleText6: ; 592dc (16:52dc)
+ TX_FAR _Route8EndBattleText6
+ db "@"
+
+Route8AfterBattleText6: ; 592e1 (16:52e1)
+ TX_FAR _Route8AfterBattleText6
+ db "@"
+
+Route8Text7: ; 592e6 (16:52e6)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText7: ; 592f0 (16:52f0)
+ TX_FAR _Route8BattleText7
+ db "@"
+
+Route8EndBattleText7: ; 592f5 (16:52f5)
+ TX_FAR _Route8EndBattleText7
+ db "@"
+
+Route8AfterBattleText7: ; 592fa (16:52fa)
+ TX_FAR _Route8AfterBattleText7
+ db "@"
+
+Route8Text8: ; 592ff (16:52ff)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText8: ; 59309 (16:5309)
+ TX_FAR _Route8BattleText8
+ db "@"
+
+Route8EndBattleText8: ; 5930e (16:530e)
+ TX_FAR _Route8EndBattleText8
+ db "@"
+
+Route8AfterBattleText8: ; 59313 (16:5313)
+ TX_FAR _Route8AfterBattleText8
+ db "@"
+
+Route8Text9: ; 59318 (16:5318)
+ db $08 ; asm
+ ld hl, Route8TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText9: ; 59322 (16:5322)
+ TX_FAR _Route8BattleText9
+ db "@"
+
+Route8EndBattleText9: ; 59327 (16:5327)
+ TX_FAR _Route8EndBattleText9
+ db "@"
+
+Route8AfterBattleText9: ; 5932c (16:532c)
+ TX_FAR _Route8AfterBattleText9
+ db "@"
+
+Route8Text10: ; 59331 (16:5331)
+ TX_FAR _Route8Text10
+ db "@"
diff --git a/scripts/route8gate.asm b/scripts/route8gate.asm
new file mode 100755
index 00000000..426b532e
--- /dev/null
+++ b/scripts/route8gate.asm
@@ -0,0 +1,70 @@
+Route8GateScript: ; 1e1c7 (7:61c7)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route8GateScriptPointers
+ ld a, [W_ROUTE8GATECURSCRIPT]
+ jp CallFunctionInTable
+
+Route8GateScriptPointers: ; 1e1d3 (7:61d3)
+ dw Route8GateScript0
+ dw Route8GateScript1
+
+Route8GateScript_1e1d7: ; 1e1d7 (7:61d7)
+ ld hl, $d730
+ set 7, [hl]
+ ld a, $10
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ xor a
+ ld [$c206], a
+ ld [$cd3b], a
+ ret
+
+Route8GateScript0: ; 1e1ee (7:61ee)
+ ld a, [$d728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1e22c
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $2
+ ld [$d528], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1e220 ; 0x1e20e $10
+ ld a, $2
+ ld [$ff8c], a
+ call DisplayTextID
+ call Route8GateScript_1e1d7
+ ld a, $1
+ ld [W_ROUTE8GATECURSCRIPT], a
+ ret
+.asm_1e220
+ ld hl, $d728
+ set 6, [hl]
+ ld a, $3
+ ld [$ff8c], a
+ jp DisplayTextID
+
+CoordsData_1e22c: ; 1e22c (7:622c)
+ db 3,2
+ db 4,2
+ db $ff
+
+Route8GateScript1: ; 1e231 (7:6231)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_ROUTE8GATECURSCRIPT], a
+ ret
+
+Route8GateTextPointers: ; 1e241 (7:6241)
+ dw Route8GateText1
+ dw Route8GateText2
+ dw Route8GateText3
diff --git a/scripts/route9.asm b/scripts/route9.asm
new file mode 100755
index 00000000..852c09b2
--- /dev/null
+++ b/scripts/route9.asm
@@ -0,0 +1,269 @@
+Route9Script: ; 556bc (15:56bc)
+ call EnableAutoTextBoxDrawing
+ ld hl, Route9TrainerHeaders
+ ld de, Route9ScriptPointers
+ ld a, [W_ROUTE9CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_ROUTE9CURSCRIPT], a
+ ret
+
+Route9ScriptPointers: ; 556cf (15:56cf)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+Route9TextPointers: ; 556d5 (15:56d5)
+ dw Route9Text1
+ dw Route9Text2
+ dw Route9Text3
+ dw Route9Text4
+ dw Route9Text5
+ dw Route9Text6
+ dw Route9Text7
+ dw Route9Text8
+ dw Route9Text9
+ dw Predef5CText
+ dw Route9Text11
+
+Route9TrainerHeaders: ; 556eb (15:56eb)
+Route9TrainerHeader0: ; 556eb (15:56eb)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText1 ; 0x5792 TextBeforeBattle
+ dw Route9AfterBattleText1 ; 0x579c TextAfterBattle
+ dw Route9EndBattleText1 ; 0x5797 TextEndBattle
+ dw Route9EndBattleText1 ; 0x5797 TextEndBattle
+
+Route9TrainerHeader2: ; 556f7 (15:56f7)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText2 ; 0x57a1 TextBeforeBattle
+ dw Route9AfterBattleText2 ; 0x57ab TextAfterBattle
+ dw Route9EndBattleText2 ; 0x57a6 TextEndBattle
+ dw Route9EndBattleText2 ; 0x57a6 TextEndBattle
+
+Route9TrainerHeader3: ; 55703 (15:5703)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText3 ; 0x57b0 TextBeforeBattle
+ dw Route9AfterBattleText3 ; 0x57ba TextAfterBattle
+ dw Route9EndBattleText3 ; 0x57b5 TextEndBattle
+ dw Route9EndBattleText3 ; 0x57b5 TextEndBattle
+
+Route9TrainerHeader4: ; 5570f (15:570f)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText4 ; 0x57bf TextBeforeBattle
+ dw Route9AfterBattleText4 ; 0x57c9 TextAfterBattle
+ dw Route9EndBattleText4 ; 0x57c4 TextEndBattle
+ dw Route9EndBattleText4 ; 0x57c4 TextEndBattle
+
+Route9TrainerHeader5: ; 5571b (15:571b)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText5 ; 0x57ce TextBeforeBattle
+ dw Route9AfterBattleText5 ; 0x57d8 TextAfterBattle
+ dw Route9EndBattleText5 ; 0x57d3 TextEndBattle
+ dw Route9EndBattleText5 ; 0x57d3 TextEndBattle
+
+Route9TrainerHeader6: ; 55727 (15:5727)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText6 ; 0x57dd TextBeforeBattle
+ dw Route9AfterBattleText6 ; 0x57e7 TextAfterBattle
+ dw Route9EndBattleText6 ; 0x57e2 TextEndBattle
+ dw Route9EndBattleText6 ; 0x57e2 TextEndBattle
+
+Route9TrainerHeader7: ; 55733 (15:5733)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText7 ; 0x57ec TextBeforeBattle
+ dw Route9AfterBattleText7 ; 0x57f6 TextAfterBattle
+ dw Route9EndBattleText7 ; 0x57f1 TextEndBattle
+ dw Route9EndBattleText7 ; 0x57f1 TextEndBattle
+
+Route9TrainerHeader8: ; 5573f (15:573f)
+ db $8 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText8 ; 0x57fb TextBeforeBattle
+ dw Route9AfterBattleText8 ; 0x5805 TextAfterBattle
+ dw Route9EndBattleText8 ; 0x5800 TextEndBattle
+ dw Route9EndBattleText8 ; 0x5800 TextEndBattle
+
+Route9TrainerHeader9: ; 5574b (15:574b)
+ db $9 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7cf ; flag's byte
+ dw Route9BattleText9 ; 0x580a TextBeforeBattle
+ dw Route9AfterBattleText9 ; 0x5814 TextAfterBattle
+ dw Route9EndBattleText9 ; 0x580f TextEndBattle
+ dw Route9EndBattleText9 ; 0x580f TextEndBattle
+
+ db $ff
+
+Route9Text1: ; 55758 (15:5758)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader0
+ jr asm_8be3d ; 0x5575c $2e
+
+Route9Text2: ; 5575e (15:575e)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader2
+ jr asm_8be3d ; 0x55762 $28
+
+Route9Text3: ; 55764 (15:5764)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader3
+ jr asm_8be3d ; 0x55768 $22
+
+Route9Text4: ; 5576a (15:576a)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader4
+ jr asm_8be3d ; 0x5576e $1c
+
+Route9Text5: ; 55770 (15:5770)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader5
+ jr asm_8be3d ; 0x55774 $16
+
+Route9Text6: ; 55776 (15:5776)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader6
+ jr asm_8be3d ; 0x5577a $10
+
+Route9Text7: ; 5577c (15:577c)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader7
+ jr asm_8be3d ; 0x55780 $a
+
+Route9Text8: ; 55782 (15:5782)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader8
+ jr asm_8be3d ; 0x55786 $4
+
+Route9Text9: ; 55788 (15:5788)
+ db $8 ; asm
+ ld hl, Route9TrainerHeader9
+asm_8be3d: ; 5578c (15:578c)
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route9BattleText1: ; 55792 (15:5792)
+ TX_FAR _Route9BattleText1
+ db "@"
+
+Route9EndBattleText1: ; 55797 (15:5797)
+ TX_FAR _Route9EndBattleText1
+ db "@"
+
+Route9AfterBattleText1: ; 5579c (15:579c)
+ TX_FAR _Route9AfterBattleText1
+ db "@"
+
+Route9BattleText2: ; 557a1 (15:57a1)
+ TX_FAR _Route9BattleText2
+ db "@"
+
+Route9EndBattleText2: ; 557a6 (15:57a6)
+ TX_FAR _Route9EndBattleText2
+ db "@"
+
+Route9AfterBattleText2: ; 557ab (15:57ab)
+ TX_FAR _Route9AfterBattleText2
+ db "@"
+
+Route9BattleText3: ; 557b0 (15:57b0)
+ TX_FAR _Route9BattleText3
+ db "@"
+
+Route9EndBattleText3: ; 557b5 (15:57b5)
+ TX_FAR _Route9EndBattleText3
+ db "@"
+
+Route9AfterBattleText3: ; 557ba (15:57ba)
+ TX_FAR _Route9AfterBattleText3
+ db "@"
+
+Route9BattleText4: ; 557bf (15:57bf)
+ TX_FAR _Route9BattleText4
+ db "@"
+
+Route9EndBattleText4: ; 557c4 (15:57c4)
+ TX_FAR _Route9EndBattleText4
+ db "@"
+
+Route9AfterBattleText4: ; 557c9 (15:57c9)
+ TX_FAR _Route9AfterBattleText4
+ db "@"
+
+Route9BattleText5: ; 557ce (15:57ce)
+ TX_FAR _Route9BattleText5
+ db "@"
+
+Route9EndBattleText5: ; 557d3 (15:57d3)
+ TX_FAR _Route9EndBattleText5
+ db "@"
+
+Route9AfterBattleText5: ; 557d8 (15:57d8)
+ TX_FAR _Route9AfterBattleText5
+ db "@"
+
+Route9BattleText6: ; 557dd (15:57dd)
+ TX_FAR _Route9BattleText6
+ db "@"
+
+Route9EndBattleText6: ; 557e2 (15:57e2)
+ TX_FAR _Route9EndBattleText6
+ db "@"
+
+Route9AfterBattleText6: ; 557e7 (15:57e7)
+ TX_FAR _Route9AfterBattleText6
+ db "@"
+
+Route9BattleText7: ; 557ec (15:57ec)
+ TX_FAR _Route9BattleText7
+ db "@"
+
+Route9EndBattleText7: ; 557f1 (15:57f1)
+ TX_FAR _Route9EndBattleText7
+ db "@"
+
+Route9AfterBattleText7: ; 557f6 (15:57f6)
+ TX_FAR _Route9AfterBattleText7
+ db "@"
+
+Route9BattleText8: ; 557fb (15:57fb)
+ TX_FAR _Route9BattleText8
+ db "@"
+
+Route9EndBattleText8: ; 55800 (15:5800)
+ TX_FAR _Route9EndBattleText8
+ db "@"
+
+Route9AfterBattleText8: ; 55805 (15:5805)
+ TX_FAR _Route9AfterBattleText8
+ db "@"
+
+Route9BattleText9: ; 5580a (15:580a)
+ TX_FAR _Route9BattleText9
+ db "@"
+
+Route9EndBattleText9: ; 5580f (15:580f)
+ TX_FAR _Route9EndBattleText9
+ db "@"
+
+Route9AfterBattleText9: ; 55814 (15:5814)
+ TX_FAR _Route9AfterBattleText9
+ db "@"
+
+Route9Text11: ; 55819 (15:5819)
+ TX_FAR _Route9Text11
+ db "@"
diff --git a/scripts/safarizonecenter.asm b/scripts/safarizonecenter.asm
new file mode 100755
index 00000000..6ff60ec6
--- /dev/null
+++ b/scripts/safarizonecenter.asm
@@ -0,0 +1,15 @@
+SafariZoneCenterScript: ; 45bb2 (11:5bb2)
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneCenterTextPointers: ; 45bb5 (11:5bb5)
+ dw Predef5CText
+ dw SafariZoneCenterText2
+ dw SafariZoneCenterText3
+
+SafariZoneCenterText2: ; 45bbb (11:5bbb)
+ TX_FAR _SafariZoneCenterText2
+ db "@"
+
+SafariZoneCenterText3: ; 45bc0 (11:5bc0)
+ TX_FAR _SafariZoneCenterText3
+ db "@"
diff --git a/scripts/safarizoneeast.asm b/scripts/safarizoneeast.asm
new file mode 100755
index 00000000..3e6df139
--- /dev/null
+++ b/scripts/safarizoneeast.asm
@@ -0,0 +1,23 @@
+SafariZoneEastScript: ; 4586b (11:586b)
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneEastTextPointers: ; 4586e (11:586e)
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw SafariZoneEastText5
+ dw SafariZoneEastText6
+ dw SafariZoneEastText7
+
+SafariZoneEastText5: ; 4587c (11:587c)
+ TX_FAR _SafariZoneEastText5
+ db "@"
+
+SafariZoneEastText6: ; 45881 (11:5881)
+ TX_FAR _SafariZoneEastText6
+ db "@"
+
+SafariZoneEastText7: ; 45886 (11:5886)
+ TX_FAR _SafariZoneEastText7
+ db "@"
diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm
new file mode 100755
index 00000000..d1bc0d37
--- /dev/null
+++ b/scripts/safarizoneentrance.asm
@@ -0,0 +1,300 @@
+SafariZoneEntranceScript: ; 751cd (1d:51cd)
+ call EnableAutoTextBoxDrawing
+ ld hl, SafariZoneEntranceScriptPointers
+ ld a, [W_SAFARIZONEENTRANCECURSCRIPT]
+ jp CallFunctionInTable
+
+SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9)
+ dw SafariZoneEntranceScript0
+ dw SafariZoneEntranceScript1
+ dw SafariZoneEntranceScript2
+ dw SafariZoneEntranceScript3
+ dw SafariZoneEntranceScript4
+ dw SafariZoneEntranceScript5
+ dw SafariZoneEntranceScript6
+
+SafariZoneEntranceScript0: ; 751e7 (1d:51e7)
+ ld hl, CoordsData_75221
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $3
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $c
+ ld [$c109], a
+ ld a, [$cd3d]
+ cp $1
+ jr z, .asm_7520f ; 0x75207 $6
+ ld a, $2
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ ret
+.asm_7520f
+ ld a, $10
+ ld c, $1
+ call SafariZoneEntranceScript_752a3
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $1
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ ret
+
+CoordsData_75221: ; 75221 (1d:5221)
+ db $02,$03
+ db $02,$04
+ db $FF
+
+SafariZoneEntranceScript1: ; 75226 (1d:5226)
+ call SafariZoneEntranceScript_752b4
+ ret nz
+SafariZoneEntranceScript2: ; 7522a (1d:522a)
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [wJoypadForbiddenButtonsMask], a
+ call UpdateSprites
+ ld a, $4
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ret
+
+SafariZoneEntranceScript3: ; 75240 (1d:5240)
+ call SafariZoneEntranceScript_752b4
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $5
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ ret
+
+SafariZoneEntranceScript5: ; 7524e (1d:524e)
+ ld a, $4
+ ld [$d528], a
+ ld hl, $d790
+ bit 6, [hl]
+ res 6, [hl]
+ jr z, .asm_7527f ; 0x7525a $23
+ res 7, [hl]
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $6
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [$da47], a
+ ld a, $80
+ ld c, $3
+ call SafariZoneEntranceScript_752a3
+ ld a, $4
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ jr .asm_75286 ; 0x7527d $7
+.asm_7527f
+ ld a, $5
+ ld [$ff8c], a
+ call DisplayTextID
+.asm_75286
+ ret
+
+SafariZoneEntranceScript4: ; 75287 (1d:5287)
+ call SafariZoneEntranceScript_752b4
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ ret
+
+SafariZoneEntranceScript6: ; 75295 (1d:5295)
+ call SafariZoneEntranceScript_752b4
+ ret nz
+ call Delay3
+ ld a, [$cf0d]
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ ret
+
+SafariZoneEntranceScript_752a3: ; 752a3 (1d:52a3)
+ push af
+ ld b, $0
+ ld a, c
+ ld [$cd38], a
+ ld hl, $ccd3
+ pop af
+ call FillMemory
+ jp Func_3486
+
+SafariZoneEntranceScript_752b4: ; 752b4 (1d:52b4)
+ ld a, [$cd38]
+ and a
+ ret
+
+SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9)
+ dw SafariZoneEntranceText1
+ dw SafariZoneEntranceText2
+ dw SafariZoneEntranceText3
+ dw SafariZoneEntranceText4
+ dw SafariZoneEntranceText5
+ dw SafariZoneEntranceText6
+
+SafariZoneEntranceText3: ; 752c5 (1d:52c5)
+SafariZoneEntranceText1: ; 752c5 (1d:52c5)
+ TX_FAR _SafariZoneEntranceText1
+ db "@"
+
+SafariZoneEntranceText4: ; 752ca (1d:52ca)
+ TX_FAR SafariZoneEntranceText_9e6e4 ; 0x9e6e4
+ db $8
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jp nz, .asm_75346
+ xor a
+ ld [$ff9f], a
+ ld a, $5
+ ld [$ffa0], a
+ ld a, $0
+ ld [$ffa1], a
+ call HasEnoughMoney
+ jr nc, .asm_752f9 ; 0x752ef $8
+ ld hl, SafariZoneEntranceText_7536a
+ call PrintText
+ jr .asm_7534c ; 0x752f7 $53
+.asm_752f9
+ xor a
+ ld [$cd3d], a
+ ld a, $5
+ ld [$cd3e], a
+ ld a, $0
+ ld [$cd3f], a
+ ld hl, $cd3f
+ ld de, $d349
+ ld c, $3
+ ld a, $c
+ call Predef
+ ld a, $13
+ ld [$d125], a
+ call DisplayTextBoxID
+ ld hl, SafariZoneEntranceText_7535b
+ call PrintText
+ ld a, $1e
+ ld [$da47], a
+ ld a, 502 / $100
+ ld [wSafariSteps], a
+ ld a, 502 % $100
+ ld [wSafariSteps + 1], a
+ ld a, $40
+ ld c, $3
+ call SafariZoneEntranceScript_752a3
+ ld hl, $d790
+ set 7, [hl]
+ res 6, [hl]
+ ld a, $3
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ jr .asm_75358 ; 0x75344 $12
+.asm_75346
+ ld hl, SafariZoneEntranceText_75365
+ call PrintText
+.asm_7534c
+ ld a, $80
+ ld c, $1
+ call SafariZoneEntranceScript_752a3
+ ld a, $4
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+.asm_75358
+ jp TextScriptEnd
+
+SafariZoneEntranceText_7535b: ; 7535b (1d:535b)
+ TX_FAR SafariZoneEntranceText_9e747 ; 0x9e747
+ db $0B
+
+SafariZoneEntranceText_75360: ; 75360 (1d:5360)
+ TX_FAR _SafariZoneEntranceText_75360
+ db "@"
+
+SafariZoneEntranceText_75365: ; 75365 (1d:5365)
+ TX_FAR _SafariZoneEntranceText_75365
+ db "@"
+
+SafariZoneEntranceText_7536a: ; 7536a (1d:536a)
+ TX_FAR _SafariZoneEntranceText_7536a
+ db "@"
+
+SafariZoneEntranceText5: ; 7536f (1d:536f)
+ TX_FAR SafariZoneEntranceText_9e814 ; 0x9e814
+ db $8
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_7539c ; 0x7537b $1f
+ ld hl, SafariZoneEntranceText_753bb
+ call PrintText
+ xor a
+ ld [$c109], a
+ ld a, $80
+ ld c, $3
+ call SafariZoneEntranceScript_752a3
+ ld hl, $d790
+ res 6, [hl]
+ res 7, [hl]
+ ld a, $0
+ ld [$cf0d], a
+ jr .asm_753b3 ; 0x7539a $17
+.asm_7539c
+ ld hl, SafariZoneEntranceText_753c0
+ call PrintText
+ ld a, $4
+ ld [$c109], a
+ ld a, $40
+ ld c, $1
+ call SafariZoneEntranceScript_752a3
+ ld a, $5
+ ld [$cf0d], a
+.asm_753b3
+ ld a, $6
+ ld [W_SAFARIZONEENTRANCECURSCRIPT], a
+ jp TextScriptEnd
+
+SafariZoneEntranceText_753bb: ; 753bb (1d:53bb)
+ TX_FAR _SafariZoneEntranceText_753bb
+ db "@"
+
+SafariZoneEntranceText_753c0: ; 753c0 (1d:53c0)
+ TX_FAR _SafariZoneEntranceText_753c0
+ db "@"
+
+SafariZoneEntranceText6: ; 753c5 (1d:53c5)
+ TX_FAR _SafariZoneEntranceText_753c5
+ db "@"
+
+SafariZoneEntranceText2: ; 753ca (1d:53ca)
+ db $08 ; asm
+ ld hl, SafariZoneEntranceText_753e6
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ ld hl, SafariZoneEntranceText_753f0
+ jr nz, .asm_278a6 ; 0x753db
+ ld hl, SafariZoneEntranceText_753eb
+.asm_278a6 ; 0x753e0
+ call PrintText
+ jp TextScriptEnd
+
+SafariZoneEntranceText_753e6: ; 753e6 (1d:53e6)
+ TX_FAR _SafariZoneEntranceText_753e6
+ db "@"
+
+SafariZoneEntranceText_753eb: ; 753eb (1d:53eb)
+ TX_FAR _SafariZoneEntranceText_753eb
+ db "@"
+
+SafariZoneEntranceText_753f0: ; 753f0 (1d:53f0)
+ TX_FAR _SafariZoneEntranceText_753f0
+ db "@"
diff --git a/scripts/safarizonenorth.asm b/scripts/safarizonenorth.asm
new file mode 100755
index 00000000..74790e76
--- /dev/null
+++ b/scripts/safarizonenorth.asm
@@ -0,0 +1,31 @@
+SafariZoneNorthScript: ; 459ab (11:59ab)
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneNorthTextPointers: ; 459ae (11:59ae)
+ dw Predef5CText
+ dw Predef5CText
+ dw SafariZoneNorthText3
+ dw SafariZoneNorthText4
+ dw SafariZoneNorthText5
+ dw SafariZoneNorthText6
+ dw SafariZoneNorthText7
+
+SafariZoneNorthText3: ; 459bc (11:59bc)
+ TX_FAR _SafariZoneNorthText3
+ db "@"
+
+SafariZoneNorthText4: ; 459c1 (11:59c1)
+ TX_FAR _SafariZoneNorthText4
+ db "@"
+
+SafariZoneNorthText5: ; 459c6 (11:59c6)
+ TX_FAR _SafariZoneNorthText5
+ db "@"
+
+SafariZoneNorthText6: ; 459cb (11:59cb)
+ TX_FAR _SafariZoneNorthText6
+ db "@"
+
+SafariZoneNorthText7: ; 459d0 (11:59d0)
+ TX_FAR _SafariZoneNorthText7
+ db "@"
diff --git a/scripts/safarizoneresthouse1.asm b/scripts/safarizoneresthouse1.asm
new file mode 100755
index 00000000..424714e4
--- /dev/null
+++ b/scripts/safarizoneresthouse1.asm
@@ -0,0 +1,14 @@
+SafariZoneRestHouse1Script: ; 45ced (11:5ced)
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneRestHouse1TextPointers: ; 45cf0 (11:5cf0)
+ dw SafariZoneRestHouse1Text1
+ dw SafariZoneRestHouse1Text2
+
+SafariZoneRestHouse1Text1: ; 45cf4 (11:5cf4)
+ TX_FAR _SafariZoneRestHouse1Text1
+ db "@"
+
+SafariZoneRestHouse1Text2: ; 45cf9 (11:5cf9)
+ TX_FAR _SafariZoneRestHouse1Text2
+ db "@"
diff --git a/scripts/safarizoneresthouse2.asm b/scripts/safarizoneresthouse2.asm
new file mode 100755
index 00000000..23cd53b2
--- /dev/null
+++ b/scripts/safarizoneresthouse2.asm
@@ -0,0 +1,20 @@
+SafariZoneRestHouse2Script: ; 45d2a (11:5d2a)
+ call EnableAutoTextBoxDrawing
+ ret
+
+SafariZoneRestHouse2TextPointers: ; 45d2e (11:5d2e)
+ dw SafariZoneRestHouse2Text1
+ dw SafariZoneRestHouse2Text2
+ dw SafariZoneRestHouse2Text3
+
+SafariZoneRestHouse2Text1: ; 45d34 (11:5d34)
+ TX_FAR _SafariZoneRestHouse2Text1
+ db "@"
+
+SafariZoneRestHouse2Text2: ; 45d39 (11:5d39)
+ TX_FAR _SafariZoneRestHouse2Text2
+ db "@"
+
+SafariZoneRestHouse2Text3: ; 45d3e (11:5d3e)
+ TX_FAR _SafariZoneRestHouse2Text3
+ db "@"
diff --git a/scripts/safarizoneresthouse3.asm b/scripts/safarizoneresthouse3.asm
new file mode 100755
index 00000000..2faa1fbb
--- /dev/null
+++ b/scripts/safarizoneresthouse3.asm
@@ -0,0 +1,20 @@
+SafariZoneRestHouse3Script: ; 45d75 (11:5d75)
+ call EnableAutoTextBoxDrawing
+ ret
+
+SafariZoneRestHouse3TextPointers: ; 45d79 (11:5d79)
+ dw SafariZoneRestHouse3Text1
+ dw SafariZoneRestHouse3Text2
+ dw SafariZoneRestHouse3Text3
+
+SafariZoneRestHouse3Text1: ; 45d7f (11:5d7f)
+ TX_FAR _SafariZoneRestHouse3Text1
+ db "@"
+
+SafariZoneRestHouse3Text2: ; 45d84 (11:5d84)
+ TX_FAR _SafariZoneRestHouse3Text2
+ db "@"
+
+SafariZoneRestHouse3Text3: ; 45d89 (11:5d89)
+ TX_FAR _SafariZoneRestHouse3Text3
+ db "@"
diff --git a/scripts/safarizoneresthouse4.asm b/scripts/safarizoneresthouse4.asm
new file mode 100755
index 00000000..b645431f
--- /dev/null
+++ b/scripts/safarizoneresthouse4.asm
@@ -0,0 +1,20 @@
+SafariZoneRestHouse4Script: ; 45dc0 (11:5dc0)
+ call EnableAutoTextBoxDrawing
+ ret
+
+SafariZoneRestHouse4TextPointers: ; 45dc4 (11:5dc4)
+ dw SafariZoneRestHouse4Text1
+ dw SafariZoneRestHouse4Text2
+ dw SafariZoneRestHouse4Text3
+
+SafariZoneRestHouse4Text1: ; 45dca (11:5dca)
+ TX_FAR _SafariZoneRestHouse4Text1
+ db "@"
+
+SafariZoneRestHouse4Text2: ; 45dcf (11:5dcf)
+ TX_FAR _SafariZoneRestHouse4Text2
+ db "@"
+
+SafariZoneRestHouse4Text3: ; 45dd4 (11:5dd4)
+ TX_FAR _SafariZoneRestHouse4Text3
+ db "@"
diff --git a/scripts/safarizonesecrethouse.asm b/scripts/safarizonesecrethouse.asm
new file mode 100755
index 00000000..39b7c393
--- /dev/null
+++ b/scripts/safarizonesecrethouse.asm
@@ -0,0 +1,46 @@
+SafariZoneSecretHouseScript: ; 4a317 (12:6317)
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneSecretHouseTextPointers: ; 4a31a (12:631a)
+ dw SafariZoneSecretHouseText1
+
+SafariZoneSecretHouseText1: ; 4a31c (12:631c)
+ db $08 ; asm
+ ld a, [$d857]
+ bit 0, a
+ jr nz, .asm_20a9b ; 0x4a322
+ ld hl, SafariZoneSecretHouseText_4a350
+ call PrintText
+ ld bc, (HM_03 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedHM03Text
+ call PrintText
+ ld hl, $d857
+ set 0, [hl]
+ jr .asm_8f1fc ; 0x4a33d
+.BagFull
+ ld hl, HM03NoRoomText
+ call PrintText
+ jr .asm_8f1fc ; 0x4a345
+.asm_20a9b ; 0x4a347
+ ld hl, HM03ExplanationText
+ call PrintText
+.asm_8f1fc ; 0x4a34d
+ jp TextScriptEnd
+
+SafariZoneSecretHouseText_4a350: ; 4a350 (12:6350)
+ TX_FAR _SecretHouseText_4a350
+ db "@"
+
+ReceivedHM03Text: ; 4a355 (12:6355)
+ TX_FAR _ReceivedHM03Text
+ db $0B, "@"
+
+HM03ExplanationText: ; 4a35b (12:635b)
+ TX_FAR _HM03ExplanationText
+ db "@"
+
+HM03NoRoomText: ; 4a360 (12:6360)
+ TX_FAR _HM03NoRoomText
+ db "@"
diff --git a/scripts/safarizonewest.asm b/scripts/safarizonewest.asm
new file mode 100755
index 00000000..1465af56
--- /dev/null
+++ b/scripts/safarizonewest.asm
@@ -0,0 +1,28 @@
+SafariZoneWestScript: ; 4a1b5 (12:61b5)
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneWestTextPointers: ; 4a1b8 (12:61b8)
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw SafariZoneWestText5
+ dw SafariZoneWestText6
+ dw SafariZoneWestText7
+ dw SafariZoneWestText8
+
+SafariZoneWestText5: ; 4a1c8 (12:61c8)
+ TX_FAR _SafariZoneWestText5
+ db "@"
+
+SafariZoneWestText6: ; 4a1cd (12:61cd)
+ TX_FAR _SafariZoneWestText6
+ db "@"
+
+SafariZoneWestText7: ; 4a1d2 (12:61d2)
+ TX_FAR _SafariZoneWestText7
+ db "@"
+
+SafariZoneWestText8: ; 4a1d7 (12:61d7)
+ TX_FAR _SafariZoneWestText8
+ db "@"
diff --git a/scripts/saffroncity.asm b/scripts/saffroncity.asm
new file mode 100755
index 00000000..d8e7d0c6
--- /dev/null
+++ b/scripts/saffroncity.asm
@@ -0,0 +1,121 @@
+SaffronCityScript: ; 50c00 (14:4c00)
+ jp EnableAutoTextBoxDrawing
+
+SaffronCityTextPointers: ; 50c03 (14:4c03)
+ dw SaffronCityText1
+ dw SaffronCityText2
+ dw SaffronCityText3
+ dw SaffronCityText4
+ dw SaffronCityText5
+ dw SaffronCityText6
+ dw SaffronCityText7
+ dw SaffronCityText8
+ dw SaffronCityText9
+ dw SaffronCityText10
+ dw SaffronCityText11
+ dw SaffronCityText12
+ dw SaffronCityText13
+ dw SaffronCityText14
+ dw SaffronCityText15
+ dw SaffronCityText16
+ dw SaffronCityText17
+ dw SaffronCityText18
+ dw MartSignText
+ dw SaffronCityText20
+ dw SaffronCityText21
+ dw SaffronCityText22
+ dw PokeCenterSignText
+ dw SaffronCityText24
+ dw SaffronCityText25
+
+SaffronCityText1: ; 50c35 (14:4c35)
+ TX_FAR _SaffronCityText1
+ db "@"
+
+SaffronCityText2: ; 50c3a (14:4c3a)
+ TX_FAR _SaffronCityText2
+ db "@"
+
+SaffronCityText3: ; 50c3f (14:4c3f)
+ TX_FAR _SaffronCityText3
+ db "@"
+
+SaffronCityText4: ; 50c44 (14:4c44)
+ TX_FAR _SaffronCityText4
+ db "@"
+
+SaffronCityText5: ; 50c49 (14:4c49)
+ TX_FAR _SaffronCityText5
+ db "@"
+
+SaffronCityText6: ; 50c4e (14:4c4e)
+ TX_FAR _SaffronCityText6
+ db "@"
+
+SaffronCityText7: ; 50c53 (14:4c53)
+ TX_FAR _SaffronCityText7
+ db "@"
+
+SaffronCityText8: ; 50c58 (14:4c58)
+ TX_FAR _SaffronCityText8
+ db "@"
+
+SaffronCityText9: ; 50c5d (14:4c5d)
+ TX_FAR _SaffronCityText9
+ db "@"
+
+SaffronCityText10: ; 50c62 (14:4c62)
+ TX_FAR _SaffronCityText10
+ db "@"
+
+SaffronCityText11: ; 50c67 (14:4c67)
+ TX_FAR _SaffronCityText11
+ db "@"
+
+SaffronCityText12: ; 50c6c (14:4c6c)
+ TX_FAR _SaffronCityText12
+ db $15, "@"
+
+SaffronCityText13: ; 50c72 (14:4c72)
+ TX_FAR _SaffronCityText13
+ db "@"
+
+SaffronCityText14: ; 50c77 (14:4c77)
+ TX_FAR _SaffronCityText14
+ db "@"
+
+SaffronCityText15: ; 50c7c (14:4c7c)
+ TX_FAR _SaffronCityText15
+ db "@"
+
+SaffronCityText16: ; 50c81 (14:4c81)
+ TX_FAR _SaffronCityText16
+ db "@"
+
+SaffronCityText17: ; 50c86 (14:4c86)
+ TX_FAR _SaffronCityText17
+ db "@"
+
+SaffronCityText18: ; 50c8b (14:4c8b)
+ TX_FAR _SaffronCityText18
+ db "@"
+
+SaffronCityText20: ; 50c90 (14:4c90)
+ TX_FAR _SaffronCityText20
+ db "@"
+
+SaffronCityText21: ; 50c95 (14:4c95)
+ TX_FAR _SaffronCityText21
+ db "@"
+
+SaffronCityText22: ; 50c9a (14:4c9a)
+ TX_FAR _SaffronCityText22
+ db "@"
+
+SaffronCityText24: ; 50c9f (14:4c9f)
+ TX_FAR _SaffronCityText24
+ db "@"
+
+SaffronCityText25: ; 50ca4 (14:4ca4)
+ TX_FAR _SaffronCityText25
+ db "@"
diff --git a/scripts/saffrongym.asm b/scripts/saffrongym.asm
new file mode 100755
index 00000000..40482831
--- /dev/null
+++ b/scripts/saffrongym.asm
@@ -0,0 +1,367 @@
+SaffronGymScript: ; 5d00d (17:500d)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, .extra
+ call EnableAutoTextBoxDrawing
+ ld hl, SaffronGymTrainerHeader0
+ ld de, SaffronGymScriptPointers
+ ld a, [W_SAFFRONGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SAFFRONGYMCURSCRIPT], a
+ ret
+
+.extra
+ ld hl, Gym6CityName ; $5033
+ ld de, Gym6LeaderName ; $5040
+ jp LoadGymLeaderAndCityName
+
+Gym6CityName: ; 5d033 (17:5033)
+ db "SAFFRON CITY@"
+
+Gym6LeaderName: ; 5d040 (17:5040)
+ db "SABRINA@"
+
+SaffronGymText_5d048: ; 5d048 (17:5048)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_SAFFRONGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+SaffronGymScriptPointers: ; 5d053 (17:5053)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw SaffronGymScript3
+
+SaffronGymScript3: ; 5d05b (17:505b)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, SaffronGymText_5d048
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+SaffronGymText_5d068: ; 5d068 (17:5068)
+ ld a, $a
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d7b3
+ set 1, [hl]
+ ld bc, (TM_46 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $b
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d7b3
+ set 0, [hl]
+ jr .asm_5d091
+.BagFull
+ ld a, $c
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_5d091
+ ld hl, W_OBTAINEDBADGES
+ set 5, [hl]
+ ld hl, $d72a
+ set 5, [hl]
+
+ ; deactivate gym trainers
+ ld a, [$d7b3]
+ or %11111100
+ ld [$d7b3], a
+ ld hl, $d7b4
+ set 0, [hl]
+
+ jp SaffronGymText_5d048
+
+SaffronGymTextPointers: ; 5d0ab (17:50ab)
+ dw SaffronGymText1
+ dw SaffronGymText2
+ dw SaffronGymText3
+ dw SaffronGymText4
+ dw SaffronGymText5
+ dw SaffronGymText6
+ dw SaffronGymText7
+ dw SaffronGymText8
+ dw SaffronGymText9
+ dw SaffronGymText10
+ dw SaffronGymText11
+ dw SaffronGymText12
+
+SaffronGymTrainerHeaders: ; 5d0c3 (17:50c3)
+SaffronGymTrainerHeader0: ; 5d0c3 (17:50c3)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText1 ; 0x51f0 TextBeforeBattle
+ dw SaffronGymAfterBattleText1 ; 0x51fa TextAfterBattle
+ dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle
+ dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle
+
+SaffronGymTrainerHeader1: ; 5d0cf (17:50cf)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText2 ; 0x51ff TextBeforeBattle
+ dw SaffronGymAfterBattleText2 ; 0x5209 TextAfterBattle
+ dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle
+ dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle
+
+SaffronGymTrainerHeader2: ; 5d0db (17:50db)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText3 ; 0x520e TextBeforeBattle
+ dw SaffronGymAfterBattleText3 ; 0x5218 TextAfterBattle
+ dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle
+ dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle
+
+SaffronGymTrainerHeader3: ; 5d0e7 (17:50e7)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText4 ; 0x521d TextBeforeBattle
+ dw SaffronGymAfterBattleText4 ; 0x5227 TextAfterBattle
+ dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle
+ dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle
+
+SaffronGymTrainerHeader4: ; 5d0f3 (17:50f3)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText5 ; 0x522c TextBeforeBattle
+ dw SaffronGymAfterBattleText5 ; 0x5236 TextAfterBattle
+ dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle
+ dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle
+
+SaffronGymTrainerHeader5: ; 5d0ff (17:50ff)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText6 ; 0x523b TextBeforeBattle
+ dw SaffronGymAfterBattleText6 ; 0x5245 TextAfterBattle
+ dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle
+ dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle
+
+SaffronGymTrainerHeader6: ; 5d10b (17:510b)
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw SaffronGymBattleText7 ; 0x524a TextBeforeBattle
+ dw SaffronGymAfterBattleText7 ; 0x5254 TextAfterBattle
+ dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle
+ dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle
+
+ db $ff
+
+SaffronGymText1: ; 5d118 (17:5118)
+ db $08 ; asm
+ ld a, [$d7b3]
+ bit 1, a
+ jr z, .asm_e3544 ; 0x5d11e
+ bit 0, a
+ jr nz, .asm_8d2f6 ; 0x5d122
+ call z, SaffronGymText_5d068
+ call DisableWaitingAfterTextDisplay
+ jr .asm_34c2c ; 0x5d12a
+.asm_8d2f6 ; 0x5d12c
+ ld hl, SaffronGymText_5d16e
+ call PrintText
+ jr .asm_34c2c ; 0x5d132
+.asm_e3544 ; 0x5d134
+ ld hl, SaffronGymText_5d162
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SaffronGymText_5d167
+ ld de, SaffronGymText_5d167
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $6
+ ld [$d05c], a
+ ld a, $3
+ ld [W_SAFFRONGYMCURSCRIPT], a
+.asm_34c2c ; 0x5d15f
+ jp TextScriptEnd
+
+SaffronGymText_5d162: ; 5d162 (17:5162)
+ TX_FAR _SaffronGymText_5d162
+ db "@"
+
+SaffronGymText_5d167: ; 5d167 (17:5167)
+ TX_FAR _SaffronGymText_5d167 ; 0xa1c73
+ db $11 ; play same sound as red giving oak parcel
+ db $6 ; wait for keypress
+ db "@"
+
+SaffronGymText_5d16e: ; 5d16e (17:516e)
+ TX_FAR _SaffronGymText_5d16e
+ db "@"
+
+SaffronGymText10: ; 5d173 (17:5173)
+ TX_FAR _SaffronGymText_5d173
+ db "@"
+
+SaffronGymText11: ; 5d178 (17:5178)
+ TX_FAR ReceivedTM46Text
+ db $b
+ TX_FAR _TM46ExplanationText
+ db "@"
+
+SaffronGymText12: ; 5d182 (17:5182)
+ TX_FAR _TM46NoRoomText
+ db "@"
+
+SaffronGymText2: ; 5d187 (17:5187)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText3: ; 5d191 (17:5191)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText4: ; 5d19b (17:519b)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText5: ; 5d1a5 (17:51a5)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText6: ; 5d1af (17:51af)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText7: ; 5d1b9 (17:51b9)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText8: ; 5d1c3 (17:51c3)
+ db $08 ; asm
+ ld hl, SaffronGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText9: ; 5d1cd (17:51cd)
+ db $08 ; asm
+ ld a, [$d7b3]
+ bit 1, a
+ jr nz, .asm_13f3c ; 0x5d1d3
+ ld hl, SaffronGymText_5d1e6
+ call PrintText
+ jr .asm_e9907 ; 0x5d1db
+.asm_13f3c ; 0x5d1dd
+ ld hl, SaffronGymText_5d1eb
+ call PrintText
+.asm_e9907 ; 0x5d1e3
+ jp TextScriptEnd
+
+SaffronGymText_5d1e6: ; 5d1e6 (17:51e6)
+ TX_FAR _SaffronGymText_5d1e6
+ db "@"
+
+SaffronGymText_5d1eb: ; 5d1eb (17:51eb)
+ TX_FAR _SaffronGymText_5d1eb
+ db "@"
+
+SaffronGymBattleText1: ; 5d1f0 (17:51f0)
+ TX_FAR _SaffronGymBattleText1
+ db "@"
+
+SaffronGymEndBattleText1: ; 5d1f5 (17:51f5)
+ TX_FAR _SaffronGymEndBattleText1
+ db "@"
+
+SaffronGymAfterBattleText1: ; 5d1fa (17:51fa)
+ TX_FAR _SaffronGymAfterBattleText1
+ db "@"
+
+SaffronGymBattleText2: ; 5d1ff (17:51ff)
+ TX_FAR _SaffronGymBattleText2
+ db "@"
+
+SaffronGymEndBattleText2: ; 5d204 (17:5204)
+ TX_FAR _SaffronGymEndBattleText2
+ db "@"
+
+SaffronGymAfterBattleText2: ; 5d209 (17:5209)
+ TX_FAR _SaffronGymAfterBattleText2
+ db "@"
+
+SaffronGymBattleText3: ; 5d20e (17:520e)
+ TX_FAR _SaffronGymBattleText3
+ db "@"
+
+SaffronGymEndBattleText3: ; 5d213 (17:5213)
+ TX_FAR _SaffronGymEndBattleText3
+ db "@"
+
+SaffronGymAfterBattleText3: ; 5d218 (17:5218)
+ TX_FAR _SaffronGymAfterBattleText3
+ db "@"
+
+SaffronGymBattleText4: ; 5d21d (17:521d)
+ TX_FAR _SaffronGymBattleText4
+ db "@"
+
+SaffronGymEndBattleText4: ; 5d222 (17:5222)
+ TX_FAR _SaffronGymEndBattleText4
+ db "@"
+
+SaffronGymAfterBattleText4: ; 5d227 (17:5227)
+ TX_FAR _SaffronGymAfterBattleText4
+ db "@"
+
+SaffronGymBattleText5: ; 5d22c (17:522c)
+ TX_FAR _SaffronGymBattleText5
+ db "@"
+
+SaffronGymEndBattleText5: ; 5d231 (17:5231)
+ TX_FAR _SaffronGymEndBattleText5
+ db "@"
+
+SaffronGymAfterBattleText5: ; 5d236 (17:5236)
+ TX_FAR _SaffronGymAfterBattleText5
+ db "@"
+
+SaffronGymBattleText6: ; 5d23b (17:523b)
+ TX_FAR _SaffronGymBattleText6
+ db "@"
+
+SaffronGymEndBattleText6: ; 5d240 (17:5240)
+ TX_FAR _SaffronGymEndBattleText6
+ db "@"
+
+SaffronGymAfterBattleText6: ; 5d245 (17:5245)
+ TX_FAR _SaffronGymAfterBattleText6
+ db "@"
+
+SaffronGymBattleText7: ; 5d24a (17:524a)
+ TX_FAR _SaffronGymBattleText7
+ db "@"
+
+SaffronGymEndBattleText7: ; 5d24f (17:524f)
+ TX_FAR _SaffronGymEndBattleText7
+ db "@"
+
+SaffronGymAfterBattleText7: ; 5d254 (17:5254)
+ TX_FAR _SaffronGymAfterBattleText7
+ db "@"
diff --git a/scripts/saffronhouse1.asm b/scripts/saffronhouse1.asm
new file mode 100755
index 00000000..39a70ebf
--- /dev/null
+++ b/scripts/saffronhouse1.asm
@@ -0,0 +1,27 @@
+SaffronHouse1Script: ; 1dddd (7:5ddd)
+ jp EnableAutoTextBoxDrawing
+
+SaffronHouse1TextPointers: ; 1dde0 (7:5de0)
+ dw SaffronHouse1Text1
+ dw SaffronHouse1Text2
+ dw SaffronHouse1Text3
+ dw SaffronHouse1Text4
+
+SaffronHouse1Text1: ; 1dde8 (7:5de8)
+ TX_FAR _SaffronHouse1Text1
+ db "@"
+
+SaffronHouse1Text2: ; 1dded (7:5ded)
+ TX_FAR _SaffronHouse1Text2
+ db $8
+ ld a, PIDGEY
+ call PlayCry
+ jp TextScriptEnd
+
+SaffronHouse1Text3: ; 1ddfa (7:5dfa)
+ TX_FAR _SaffronHouse1Text3
+ db "@"
+
+SaffronHouse1Text4: ; 1ddff (7:5dff)
+ TX_FAR _SaffronHouse1Text4
+ db "@"
diff --git a/scripts/saffronhouse2.asm b/scripts/saffronhouse2.asm
new file mode 100755
index 00000000..a48ec3f6
--- /dev/null
+++ b/scripts/saffronhouse2.asm
@@ -0,0 +1,46 @@
+SaffronHouse2Script: ; 1de3c (7:5e3c)
+ jp EnableAutoTextBoxDrawing
+
+SaffronHouse2TextPointers: ; 1de3f (7:5e3f)
+ dw SaffronHouse2Text1
+
+SaffronHouse2Text1: ; 1de41 (7:5e41)
+ db $08 ; asm
+ ld a, [$d7bd]
+ bit 0, a
+ jr nz, .asm_9e72b ; 0x1de47
+ ld hl, TM29PreReceiveText
+ call PrintText
+ ld bc,(TM_29 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM29Text
+ call PrintText
+ ld hl, $d7bd
+ set 0, [hl]
+ jr .asm_fe4e1 ; 0x1de62
+.BagFull
+ ld hl, TM29NoRoomText
+ call PrintText
+ jr .asm_fe4e1 ; 0x1de6a
+.asm_9e72b ; 0x1de6c
+ ld hl, TM29ExplanationText
+ call PrintText
+.asm_fe4e1 ; 0x1de72
+ jp TextScriptEnd
+
+TM29PreReceiveText: ; 1de75 (7:5e75)
+ TX_FAR _TM29PreReceiveText
+ db "@"
+
+ReceivedTM29Text: ; 1de7a (7:5e7a)
+ TX_FAR _ReceivedTM29Text
+ db $0B, "@"
+
+TM29ExplanationText: ; 1de80 (7:5e80)
+ TX_FAR _TM29ExplanationText
+ db "@"
+
+TM29NoRoomText: ; 1de85 (7:5e85)
+ TX_FAR _TM29NoRoomText
+ db "@"
diff --git a/scripts/saffronmart.asm b/scripts/saffronmart.asm
new file mode 100755
index 00000000..9ee1db0e
--- /dev/null
+++ b/scripts/saffronmart.asm
@@ -0,0 +1,15 @@
+SaffronMartScript: ; 5d409 (17:5409)
+ jp EnableAutoTextBoxDrawing
+
+SaffronMartTextPointers: ; 5d40c (17:540c)
+ dw SaffronMartText1
+ dw SaffronMartText2
+ dw SaffronMartText3
+
+SaffronMartText2: ; 5d412 (17:5412)
+ TX_FAR _SaffronMartText2
+ db "@"
+
+SaffronMartText3: ; 5d417 (17:5417)
+ TX_FAR _SaffronMartText3
+ db "@"
diff --git a/scripts/saffronpokecenter.asm b/scripts/saffronpokecenter.asm
new file mode 100755
index 00000000..7f3a656a
--- /dev/null
+++ b/scripts/saffronpokecenter.asm
@@ -0,0 +1,23 @@
+SaffronPokecenterScript: ; 5d535 (17:5535)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+SaffronPokecenterTextPointers: ; 5d53b (17:553b)
+ dw SaffronPokecenterText1
+ dw SaffronPokecenterText2
+ dw SaffronPokecenterText3
+ dw SaffronPokecenterText4
+
+SaffronPokecenterText1: ; 5d543 (17:5543)
+ db $ff
+
+SaffronPokecenterText2: ; 5d544 (17:5544)
+ TX_FAR _SaffronPokecenterText1
+ db "@"
+
+SaffronPokecenterText3: ; 5d549 (17:5549)
+ TX_FAR _SaffronPokecenterText3
+ db "@"
+
+SaffronPokecenterText4: ; 5d54e (17:554e)
+ db $f6
diff --git a/scripts/school.asm b/scripts/school.asm
new file mode 100755
index 00000000..57eb58c8
--- /dev/null
+++ b/scripts/school.asm
@@ -0,0 +1,14 @@
+SchoolScript: ; 1d54c (7:554c)
+ jp EnableAutoTextBoxDrawing
+
+SchoolTextPointers: ; 1d54f (7:554f)
+ dw SchoolText1
+ dw SchoolText2
+
+SchoolText1: ; 1d553 (7:5553)
+ TX_FAR _SchoolText1
+ db "@"
+
+SchoolText2: ; 1d558 (7:5558)
+ TX_FAR _SchoolText2
+ db "@"
diff --git a/scripts/seafoamislands1.asm b/scripts/seafoamislands1.asm
new file mode 100755
index 00000000..3d20a653
--- /dev/null
+++ b/scripts/seafoamislands1.asm
@@ -0,0 +1,50 @@
+SeafoamIslands1Script: ; 447e9 (11:47e9)
+ call EnableAutoTextBoxDrawing
+ ld hl, $d7e7
+ set 0, [hl]
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_4483b ; 0x447f8 $41
+ ld hl, Seafoam1HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ ld hl, $d7e8
+ ld a, [$cd3d]
+ cp $1
+ jr nz, .asm_44819 ; 0x44809 $e
+ set 6, [hl]
+ ld a, $d7
+ ld [$d079], a
+ ld a, $d9
+ ld [$d07a], a
+ jr .asm_44825 ; 0x44817 $c
+.asm_44819
+ set 7, [hl]
+ ld a, $d8
+ ld [$d079], a
+ ld a, $da
+ ld [$d07a], a
+.asm_44825
+ ld a, [$d079]
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, [$d07a]
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef
+.asm_4483b
+ ld a, $9f
+ ld [$d71d], a
+ ld hl, Seafoam1HolesCoords
+ jp Func_46981
+
+Seafoam1HolesCoords: ; 44846 (11:4846)
+ db $06,$11
+ db $06,$18
+ db $ff
+
+SeafoamIslands1TextPointers: ; 4484b (11:484b)
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/seafoamislands2.asm b/scripts/seafoamislands2.asm
new file mode 100755
index 00000000..a20bf497
--- /dev/null
+++ b/scripts/seafoamislands2.asm
@@ -0,0 +1,48 @@
+SeafoamIslands2Script: ; 46315 (11:6315)
+ call EnableAutoTextBoxDrawing
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_46362 ; 0x4631f $41
+ ld hl, Seafoam2HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ ld hl, $d87f
+ ld a, [$cd3d]
+ cp $1
+ jr nz, .asm_46340 ; 0x46330 $e
+ set 0, [hl]
+ ld a, $d9
+ ld [$d079], a
+ ld a, $db
+ ld [$d07a], a
+ jr .asm_4634c ; 0x4633e $c
+.asm_46340
+ set 1, [hl]
+ ld a, $da
+ ld [$d079], a
+ ld a, $dc
+ ld [$d07a], a
+.asm_4634c
+ ld a, [$d079]
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, [$d07a]
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef
+.asm_46362
+ ld a, $a0
+ ld [$d71d], a
+ ld hl, Seafoam2HolesCoords
+ jp Func_46981
+
+Seafoam2HolesCoords: ; 4636d (11:636d)
+ db $06,$12
+ db $06,$17
+ db $ff
+
+SeafoamIslands2TextPointers: ; 46372 (11:6372)
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/seafoamislands3.asm b/scripts/seafoamislands3.asm
new file mode 100755
index 00000000..a6e00936
--- /dev/null
+++ b/scripts/seafoamislands3.asm
@@ -0,0 +1,48 @@
+SeafoamIslands3Script: ; 46451 (11:6451)
+ call EnableAutoTextBoxDrawing
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_4649e ; 0x4645b $41
+ ld hl, Seafoam3HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ ld hl, $d880
+ ld a, [$cd3d]
+ cp $1
+ jr nz, .asm_4647c ; 0x4646c $e
+ set 0, [hl]
+ ld a, $db
+ ld [$d079], a
+ ld a, $df
+ ld [$d07a], a
+ jr .asm_46488 ; 0x4647a $c
+.asm_4647c
+ set 1, [hl]
+ ld a, $dc
+ ld [$d079], a
+ ld a, $e0
+ ld [$d07a], a
+.asm_46488
+ ld a, [$d079]
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, [$d07a]
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef
+.asm_4649e
+ ld a, $a1
+ ld [$d71d], a
+ ld hl, Seafoam3HolesCoords
+ jp Func_46981
+
+Seafoam3HolesCoords: ; 464a9 (11:64a9)
+ db $06,$13
+ db $06,$16
+ db $ff
+
+SeafoamIslands3TextPointers: ; 464ae (11:64ae)
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/seafoamislands4.asm b/scripts/seafoamislands4.asm
new file mode 100755
index 00000000..c7be0f44
--- /dev/null
+++ b/scripts/seafoamislands4.asm
@@ -0,0 +1,148 @@
+SeafoamIslands4Script: ; 4658d (11:658d)
+ call EnableAutoTextBoxDrawing
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_465dc ; 0x46597 $43
+ ld hl, Seafoam4HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ ld hl, $d881
+ ld a, [$cd3d]
+ cp $1
+ jr nz, .asm_465b8 ; 0x465a8 $e
+ set 0, [hl]
+ ld a, $dd
+ ld [$d079], a
+ ld a, $e1
+ ld [$d07a], a
+ jr .asm_465c4 ; 0x465b6 $c
+.asm_465b8
+ set 1, [hl]
+ ld a, $de
+ ld [$d079], a
+ ld a, $e2
+ ld [$d07a], a
+.asm_465c4
+ ld a, [$d079]
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, [$d07a]
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ jr .asm_465ed ; 0x465da $11
+.asm_465dc
+ ld a, $a2
+ ld [$d71d], a
+ ld hl, Seafoam4HolesCoords
+ call Func_46981
+ ld a, [$d732]
+ bit 4, a
+ ret nz
+.asm_465ed
+ ld hl, SeafoamIslands4ScriptPointers
+ ld a, [W_SEAFOAMISLANDS4CURSCRIPT]
+ jp CallFunctionInTable
+
+Seafoam4HolesCoords: ; 465f6 (11:65f6)
+ db $10,$03
+ db $10,$06
+ db $ff
+
+SeafoamIslands4ScriptPointers: ; 465fb (11:65fb)
+ dw SeafoamIslands4Script0
+ dw SeafoamIslands4Script1
+ dw SeafoamIslands4Script2
+ dw SeafoamIslands4Script3
+
+SeafoamIslands4Script0: ; 46603 (11:6603)
+ ld a, [$d880]
+ and $3
+ cp $3
+ ret z
+ ld a, [W_YCOORD]
+ cp $8
+ ret nz
+ ld a, [W_XCOORD]
+ cp $f
+ ret nz
+ ld hl, $ccd3
+ ld de, RLEMovement46632
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld hl, W_FLAGS_D733
+ set 2, [hl]
+ ld a, $1
+ ld [W_SEAFOAMISLANDS4CURSCRIPT], a
+ ret
+
+RLEMovement46632: ; 46632 (11:6632)
+ db $80,6
+ db $10,5
+ db $80,3
+ db $ff
+
+SeafoamIslands4Script1: ; 46639 (11:6639)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld a, $0
+ ld [W_SEAFOAMISLANDS4CURSCRIPT], a
+ ret
+
+SeafoamIslands4Script2: ; 46644 (11:6644)
+ ld a, [$d880]
+ and $3
+ cp $3
+ ret z
+ ld a, [W_XCOORD]
+ cp $12
+ jr z, .asm_4665e
+ cp $13
+ ld a, $0
+ jr nz, .asm_4667b
+ ld de, RLEData_4667f
+ jr .asm_46661
+.asm_4665e
+ ld de, RLEData_46688
+.asm_46661
+ ld hl, $ccd3
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ xor a
+ ld [$c206], a
+ ld hl, $d730
+ set 7, [hl]
+ ld hl, W_FLAGS_D733
+ set 2, [hl]
+ ld a, $3
+.asm_4667b
+ ld [W_SEAFOAMISLANDS4CURSCRIPT], a
+ ret
+
+RLEData_4667f: ; 4667f (11:667f)
+ db $80,$06,$10,$02,$80,$04,$20,$01,$FF
+
+RLEData_46688: ; 46688 (11:6688)
+ db $80,$06,$10,$02,$80,$04,$FF
+
+SeafoamIslands4Script3: ; 4668f (11:668f)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld a, $0
+ ld [W_SEAFOAMISLANDS4CURSCRIPT], a
+ ret
+
+SeafoamIslands4TextPointers: ; 4669a (11:669a)
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/seafoamislands5.asm b/scripts/seafoamislands5.asm
new file mode 100755
index 00000000..153a1bb6
--- /dev/null
+++ b/scripts/seafoamislands5.asm
@@ -0,0 +1,178 @@
+SeafoamIslands5Script: ; 46799 (11:6799)
+ call EnableAutoTextBoxDrawing
+ ld a, [W_SEAFOAMISLANDS5CURSCRIPT]
+ ld hl, SeafoamIslands5ScriptPointers
+ jp CallFunctionInTable
+
+SeafoamIslands5Script_467a5: ; 467a5 (11:67a5)
+ xor a
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ ld [wJoypadForbiddenButtonsMask], a
+ ret
+
+SeafoamIslands5ScriptPointers: ; 467ad (11:67ad)
+ dw SeafoamIslands5Script0
+ dw SeafoamIslands5Script1
+ dw SeafoamIslands5Script2
+ dw SeafoamIslands5Script3
+ dw SeafoamIslands5Script4
+
+SeafoamIslands5Script4: ; 467b7 (11:67b7)
+ ld a, [W_ISINBATTLE]
+ cp $ff
+ jr z, SeafoamIslands5Script_467a5
+ call EndTrainerBattle
+ ld a, $0
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ ret
+
+SeafoamIslands5Script0: ; 467c7 (11:67c7)
+ ld a, [$d880]
+ and $3
+ cp $3
+ ret z
+ ld hl, CoordsData_467fe
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [$cd3d]
+ cp $3
+ jr nc, .asm_467e6
+ ld a, $40
+ ld [$ccd4], a
+ ld a, $2
+ jr .asm_467e8
+.asm_467e6
+ ld a, $1
+.asm_467e8
+ ld [$cd38], a
+ ld a, $40
+ ld [$ccd3], a
+ call Func_3486
+ ld hl, W_FLAGS_D733
+ res 2, [hl]
+ ld a, $1
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ ret
+
+CoordsData_467fe: ; 467fe (11:67fe)
+ db $11,$14
+ db $11,$15
+ db $10,$14
+ db $10,$15
+ db $FF
+
+SeafoamIslands5Script1: ; 46807 (11:6807)
+ ld a, [$cd38]
+ and a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ ret
+
+SeafoamIslands5Script2: ; 46816 (11:6816)
+ ld a, [$d881]
+ and $3
+ cp $3
+ ld a, $0
+ jr z, .asm_46849
+ ld hl, CoordsData_4684d
+ call ArePlayerCoordsInArray
+ ld a, $0
+ jr nc, .asm_46849
+ ld a, [$cd3d]
+ cp $1
+ jr nz, .asm_46837
+ ld de, RLEMovementData_46859
+ jr .asm_4683a
+.asm_46837
+ ld de, RLEMovementData_46852
+.asm_4683a
+ ld hl, $ccd3
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+.asm_46849
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ ret
+
+CoordsData_4684d: ; 4684d (11:684d)
+ db $0E,$04
+ db $0E,$05
+ db $FF
+
+RLEMovementData_46852: ; 46852 (11:6852)
+ db $40,$03
+ db $10,$02
+ db $40,$01
+ db $FF
+
+RLEMovementData_46859: ; 46859 (11:6859)
+ db $40,$03
+ db $10,$03
+ db $40,$01
+ db $FF
+
+SeafoamIslands5Script3: ; 46860 (11:6860)
+ ld a, [$cd38]
+ ld b, a
+ cp $1
+ call z, SeaFoamIslands5Script_46872
+ ld a, b
+ and a
+ ret nz
+ ld a, $0
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ ret
+
+SeaFoamIslands5Script_46872: ; 46872 (11:6872)
+ xor a
+ ld [$d700], a
+ ld [$d11a], a
+ jp ForceBikeOrSurf
+
+SeafoamIslands5TextPointers: ; 4687c (11:687c)
+ dw BoulderText
+ dw BoulderText
+ dw SeafoamIslands5Text3
+ dw SeafoamIslands5Text4
+ dw SeafoamIslands5Text5
+
+SeafoamIslands5TrainerHeaders: ; 46886 (11:6886)
+SeafoamIslands5TrainerHeader0: ; 46886 (11:6886)
+ db $2 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d882 ; flag's byte
+ dw SeafoamIslands5BattleText2 ; 0x68a2 TextBeforeBattle
+ dw SeafoamIslands5BattleText2 ; 0x68a2 TextAfterBattle
+ dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle
+ dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle
+
+ db $ff
+
+SeafoamIslands5Text3: ; 46893 (11:6893)
+ db $08 ; asm
+ ld hl, SeafoamIslands5TrainerHeader0
+ call TalkToTrainer
+ ld a, $4
+ ld [W_SEAFOAMISLANDS5CURSCRIPT], a
+ jp TextScriptEnd
+
+SeafoamIslands5BattleText2: ; 468a2 (11:68a2)
+ TX_FAR _SeafoamIslands5BattleText2
+ db $8
+ ld a, ARTICUNO
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+SeafoamIslands5Text4: ; 468b2 (11:68b2)
+ TX_FAR _SeafoamIslands5Text4
+ db "@"
+
+SeafoamIslands5Text5: ; 468b7 (11:68b7)
+ TX_FAR _SeafoamIslands5Text5
+ db "@"
diff --git a/scripts/silphco1.asm b/scripts/silphco1.asm
new file mode 100755
index 00000000..64f93cdc
--- /dev/null
+++ b/scripts/silphco1.asm
@@ -0,0 +1,20 @@
+SilphCo1Script: ; 5d44e (17:544e)
+ call EnableAutoTextBoxDrawing
+ ld a, [$d838]
+ bit 7, a
+ ret z
+ ld hl, $d7b9
+ bit 7, [hl]
+ set 7, [hl]
+ ret nz
+ ld a, $4c
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef
+
+SilphCo1TextPointers: ; 5d469 (17:5469)
+ dw SilphCo1Text1
+
+SilphCo1Text1: ; 5d46b (17:546b)
+ TX_FAR _SilphCo1Text1
+ db "@"
diff --git a/scripts/silphco10.asm b/scripts/silphco10.asm
new file mode 100755
index 00000000..ede60acc
--- /dev/null
+++ b/scripts/silphco10.asm
@@ -0,0 +1,126 @@
+SilphCo10Script: ; 5a139 (16:6139)
+ call SilphCo10Script_5a14f
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo10TrainerHeaders
+ ld de, SilphCo10ScriptPointers
+ ld a, [W_SILPHCO10CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO10CURSCRIPT], a
+ ret
+
+SilphCo10Script_5a14f: ; 5a14f (16:614f)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_5a173 ; $6173
+ call SilphCo2Script_59d43
+ call SilphCo10Text_5a176
+ ld a, [$d836]
+ bit 0, a
+ ret nz
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $405
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+DataTable_5a173: ; 5a173 (16:6173)
+ db $04,$05,$FF
+
+SilphCo10Text_5a176: ; 5a176 (16:6176)
+ ld a, [$ffe0]
+ and a
+ ret z
+ ld hl, $d836
+ set 0, [hl]
+ ret
+
+SilphCo10ScriptPointers: ; 5a180 (16:6180)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo10TextPointers: ; 5a186 (16:6186)
+ dw SilphCo10Text1
+ dw SilphCo10Text2
+ dw SilphCo10Text3
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+
+SilphCo10TrainerHeaders: ; 5a192 (16:6192)
+SilphCo10TrainerHeader0: ; 5a192 (16:6192)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d835 ; flag's byte
+ dw SilphCo10BattleText1 ; 0x61dd TextBeforeBattle
+ dw SilphCo10AfterBattleText1 ; 0x61e7 TextAfterBattle
+ dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle
+ dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle
+
+SilphCo10TrainerHeader1: ; 5a19e (16:619e)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d835 ; flag's byte
+ dw SilphCo10BattleText2 ; 0x61ec TextBeforeBattle
+ dw SilphCo10AfterBattleText2 ; 0x61f6 TextAfterBattle
+ dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle
+ dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle
+
+ db $ff
+
+SilphCo10Text1: ; 5a1ab (16:61ab)
+ db $08 ; asm
+ ld hl, SilphCo10TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo10Text2: ; 5a1b5 (16:61b5)
+ db $08 ; asm
+ ld hl, SilphCo10TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo10Text3: ; 5a1bf (16:61bf)
+ db $08 ; asm
+ ld a, [$d838]
+ bit 7, a
+ ld hl, SilphCo10Text_5a1d8
+ jr nz, .asm_cf85f
+ ld hl, SilphCo10Text_5a1d3
+.asm_cf85f
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo10Text_5a1d3: ; 5a1d3 (16:61d3)
+ TX_FAR _SilphCo10Text_5a1d3
+ db "@"
+
+SilphCo10Text_5a1d8: ; 5a1d8 (16:61d8)
+ TX_FAR _SilphCo10Text_5a1d8
+ db "@"
+
+SilphCo10BattleText1: ; 5a1dd (16:61dd)
+ TX_FAR _SilphCo10BattleText1
+ db "@"
+
+SilphCo10EndBattleText1: ; 5a1e2 (16:61e2)
+ TX_FAR _SilphCo10EndBattleText1
+ db "@"
+
+SilphCo10AfterBattleText1: ; 5a1e7 (16:61e7)
+ TX_FAR _SilphCo10AfterBattleText1
+ db "@"
+
+SilphCo10BattleText2: ; 5a1ec (16:61ec)
+ TX_FAR _SilphCo10BattleText2
+ db "@"
+
+SilphCo10EndBattleText2: ; 5a1f1 (16:61f1)
+ TX_FAR _SilphCo10EndBattleText2
+ db "@"
+
+SilphCo10AfterBattleText2: ; 5a1f6 (16:61f6)
+ TX_FAR _SilphCo10AfterBattleText2
+ db "@"
diff --git a/scripts/silphco11.asm b/scripts/silphco11.asm
new file mode 100755
index 00000000..f24c6774
--- /dev/null
+++ b/scripts/silphco11.asm
@@ -0,0 +1,369 @@
+SilphCo11Script: ; 620fa (18:60fa)
+ call SilphCo11Script_62110
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo11TrainerHeaders
+ ld de, SilphCo11ScriptPointers
+ ld a, [W_SILPHCO11CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO11CURSCRIPT], a
+ ret
+
+SilphCo11Script_62110: ; 62110 (18:6110)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_62134 ; $6134
+ call SilphCo11Script_62137
+ call SilphCo11Script_62163
+ ld a, [$d838]
+ bit 0, a
+ ret nz
+ ld a, $20
+ ld [$d09f], a
+ ld bc, $603
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+DataTable_62134: ; 62134 (18:6134)
+ db $06,$03,$FF
+
+SilphCo11Script_62137: ; 62137 (18:6137)
+ push hl
+ ld hl, $d73f
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_62143
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_6215f
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_62154
+ inc hl
+ jr .asm_62143
+.asm_62154
+ ld a, [hli]
+ cp c
+ jr nz, .asm_62143
+ ld hl, $d73f
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_6215f
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo11Script_62163: ; 62163 (18:6163)
+ ld a, [$ffe0]
+ and a
+ ret z
+ ld hl, $d838
+ set 0, [hl]
+ ret
+
+SilphCo11Script_6216d: ; 6216d (18:616d)
+ ld hl, MissableObjectIDs_6219b ; $619b
+.asm_62170
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_62181
+ push hl
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ pop hl
+ jr .asm_62170
+.asm_62181
+ ld hl, MissableObjectIDs_62194 ; $6194
+.asm_62184
+ ld a, [hli]
+ cp $ff
+ ret z
+ push hl
+ ld [$cc4d], a
+ ld a, $15
+ call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+ pop hl
+ jr .asm_62184
+
+MissableObjectIDs_62194: ; 62194 (18:6194)
+ db $11,$12,$13,$14,$15,$16,$FF
+
+MissableObjectIDs_6219b: ; 6219b (18:619b)
+ db $0A,$0B,$0C,$0D,$0E,$0F,$10,$17
+ db $18,$8A,$8B,$8C,$8D,$8E,$8F,$91
+ db $92,$93,$97,$98,$99,$9A,$9E,$9F
+ db $A0,$A3,$A4,$A5,$A6,$AB,$AC,$AD
+ db $AE,$AF,$B0,$B1,$B2,$B7,$B8,$B9
+ db $FF
+
+SilphCo11Script_621c4: ; 621c4 (18:61c4)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+
+SilphCo11Script_621c8: ; 621c8 (18:61c8)
+ ld [W_SILPHCO11CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+SilphCo11ScriptPointers: ; 621cf (18:61cf)
+ dw SilphCo11Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw SilphCo11Script3
+ dw SilphCo11Script4
+ dw SilphCo11Script5
+
+SilphCo11Script0: ; 621db (18:61db)
+ ld a, [$d838]
+ bit 7, a
+ ret nz
+ ld hl, CoordsData_62211 ; $6211
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ ld a, [wWhichTrade] ; $cd3d
+ ld [$cf0d], a
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $3
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $3
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_62216
+ call MoveSprite
+ ld a, $3
+ jp SilphCo11Script_621c8
+
+CoordsData_62211: ; 62211 (18:6211)
+ db $0D,$06
+ db $0C,$07
+ db $FF
+
+MovementData_62216: ; 62216 (18:6216)
+ db $00,$00,$00,$FF
+
+SilphCo11Script_6221a: ; 6221a (18:621a)
+ ld [$d528], a
+ ld a, $3
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld a, b
+ ld [$ff8d], a
+ jp Func_34a6
+
+SilphCo11Script5: ; 62227 (18:6227)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, SilphCo11Script_621c4
+ ld a, [$cf0d]
+ cp $1
+ jr z, .asm_6223c
+ ld a, $2
+ ld b, $c
+ jr .asm_62240
+.asm_6223c
+ ld a, $8
+ ld b, $0
+.asm_62240
+ call SilphCo11Script_6221a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $6
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ call GBFadeIn1
+ call SilphCo11Script_6216d
+ call UpdateSprites
+ call Delay3
+ call GBFadeOut1
+ ld hl, $d838
+ set 7, [hl]
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ jp SilphCo11Script_621c8
+
+SilphCo11Script3: ; 6226a (18:626a)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $3
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call SetSpriteMovementBytesToFF
+ ld a, [$cf0d]
+ cp $1
+ jr z, .asm_62284
+ ld a, $2
+ ld b, $c
+ jr .asm_62288
+.asm_62284
+ ld a, $8
+ ld b, $0
+.asm_62288
+ call SilphCo11Script_6221a
+ call Delay3
+ ld a, $4
+ jp SilphCo11Script_621c8
+
+SilphCo11Script4: ; 62293 (18:6293)
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SilphCo10Text_62330 ; $6330
+ ld de, SilphCo10Text_62330 ; $6330
+ call PreBattleSaveRegisters
+ ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $5
+ jp SilphCo11Script_621c8
+
+SilphCo11TextPointers: ; 622b7 (18:62b7)
+ dw SilphCo11Text1
+ dw SilphCo11Text2
+ dw SilphCo11Text3
+ dw SilphCo11Text4
+ dw SilphCo11Text5
+ dw SilphCo11Text6
+
+SilphCo11TrainerHeaders: ; 622c3 (18:62c3)
+SilphCo11TrainerHeader0: ; 622c3 (18:62c3)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d837 ; flag's byte
+ dw SilphCo11BattleText1 ; 0x6344 TextBeforeBattle
+ dw SilphCo11AfterBattleText1 ; 0x634e TextAfterBattle
+ dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle
+ dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle
+
+SilphCo11TrainerHeader1: ; 622cf (18:62cf)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d837 ; flag's byte
+ dw SilphCo11BattleText2 ; 0x635d TextBeforeBattle
+ dw SilphCo11AfterBattleText2 ; 0x6367 TextAfterBattle
+ dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle
+ dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle
+
+ db $ff
+
+SilphCo11Text1: ; 622dc (18:62dc)
+ db $08 ; asm
+ ld a, [$d838]
+ bit 5, a
+ jp nz, .asm_62308
+ ld hl, SilphCoPresidentText
+ call PrintText
+ ld bc, (MASTER_BALL << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedSilphCoMasterBallText
+ call PrintText
+ ld hl, $d838
+ set 5, [hl]
+ jr .asm_fd405 ; 0x622fe
+.BagFull
+ ld hl, SilphCoMasterBallNoRoomText
+ call PrintText
+ jr .asm_fd405 ; 0x62306
+.asm_62308 ; 0x62308
+ ld hl, SilphCo10Text_6231c
+ call PrintText
+.asm_fd405 ; 0x6230e
+ jp TextScriptEnd
+
+SilphCoPresidentText: ; 62311 (18:6311)
+ TX_FAR _SilphCoPresidentText
+ db "@"
+
+ReceivedSilphCoMasterBallText: ; 62316 (18:6316)
+ TX_FAR _ReceivedSilphCoMasterBallText
+ db $11, "@"
+
+SilphCo10Text_6231c: ; 6231c (18:631c)
+ TX_FAR _SilphCo10Text_6231c
+ db "@"
+
+SilphCoMasterBallNoRoomText: ; 62321 (18:6321)
+ TX_FAR _SilphCoMasterBallNoRoomText
+ db "@"
+
+SilphCo11Text2: ; 62326 (18:6326)
+ TX_FAR _SilphCo11Text2
+ db "@"
+
+SilphCo11Text3: ; 6232b (18:632b)
+ TX_FAR _SilphCo11Text3
+ db "@"
+
+SilphCo10Text_62330: ; 62330 (18:6330)
+ TX_FAR _SilphCo10Text_62330
+ db "@"
+
+SilphCo11Text6: ; 62335 (18:6335)
+ TX_FAR _SilphCo10Text_62335
+ db "@"
+
+SilphCo11Text4: ; 6233a (18:633a)
+ db $08 ; asm
+ ld hl, SilphCo11TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo11BattleText1: ; 62344 (18:6344)
+ TX_FAR _SilphCo11BattleText1
+ db "@"
+
+SilphCo11EndBattleText1: ; 62349 (18:6349)
+ TX_FAR _SilphCo11EndBattleText1
+ db "@"
+
+SilphCo11AfterBattleText1: ; 6234e (18:634e)
+ TX_FAR _SilphCo11AfterBattleText1
+ db "@"
+
+SilphCo11Text5: ; 62353 (18:6353)
+ db $08 ; asm
+ ld hl, SilphCo11TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo11BattleText2: ; 6235d (18:635d)
+ TX_FAR _SilphCo11BattleText2
+ db "@"
+
+SilphCo11EndBattleText2: ; 62362 (18:6362)
+ TX_FAR _SilphCo11EndBattleText2
+ db "@"
+
+SilphCo11AfterBattleText2: ; 62367 (18:6367)
+ TX_FAR _SilphCo11AfterBattleText2
+ db "@"
+
+SilphCo10Text_6236c: ; 6236c (18:636c)
+ db $8
+ ld hl, SilphCo10Text_6237b
+ call PrintText
+ ld a, PORYGON
+ call DisplayPokedex
+ jp TextScriptEnd
+
+SilphCo10Text_6237b: ; 6237b (18:637b)
+ TX_FAR _SilphCo10Text_6237b
+ db "@"
diff --git a/scripts/silphco2.asm b/scripts/silphco2.asm
new file mode 100755
index 00000000..da59cc4c
--- /dev/null
+++ b/scripts/silphco2.asm
@@ -0,0 +1,248 @@
+SilphCo2Script: ; 59cf1 (16:5cf1)
+ call SilphCo2Script_59d07
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo2TrainerHeaders
+ ld de, SilphCo2ScriptPointers
+ ld a, [W_SILPHCO2CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO2CURSCRIPT], a
+ ret
+
+SilphCo2Script_59d07: ; 59d07 (16:5d07)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_59d3e
+ call SilphCo2Script_59d43
+ call SilphCo2Script_59d6f
+ ld a, [$d826]
+ bit 5, a
+ jr nz, .asm_59d2e
+ push af
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $0202
+ ld a, $17
+ call Predef
+ pop af
+.asm_59d2e
+ bit 6, a
+ ret nz
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $0502
+ ld a, $17
+ jp Predef
+
+DataTable_59d3e: ; 59d3e (16:5d3e)
+ db $02,$02,$05,$02,$FF
+
+SilphCo2Script_59d43: ; 59d43 (16:5d43)
+ push hl
+ ld hl, $d73f
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_59d4f
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_59d6b
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_59d60
+ inc hl
+ jr .asm_59d4f
+.asm_59d60
+ ld a, [hli]
+ cp c
+ jr nz, .asm_59d4f
+ ld hl, $d73f
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_59d6b
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo2Script_59d6f: ; 59d6f (16:5d6f)
+ ld hl, $d826
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .asm_59d7d
+ set 5, [hl]
+ ret
+.asm_59d7d
+ set 6, [hl]
+ ret
+
+SilphCo2ScriptPointers: ; 59d80 (16:5d80)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo2TextPointers: ; 59d86 (16:5d86)
+ dw SilphCo2Text1
+ dw SilphCo2Text2
+ dw SilphCo2Text3
+ dw SilphCo2Text4
+ dw SilphCo2Text5
+
+SilphCo2TrainerHeaders: ; 59d90 (16:5d90)
+SilphCo2TrainerHeader0: ; 59d90 (16:5d90)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw SilphCo2BattleText1 ; 0x5e2a TextBeforeBattle
+ dw SilphCo2AfterBattleText1 ; 0x5e34 TextAfterBattle
+ dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle
+ dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle
+
+SilphCo2TrainerHeader1: ; 59d9c (16:5d9c)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw SilphCo2BattleText2 ; 0x5e39 TextBeforeBattle
+ dw SilphCo2AfterBattleText2 ; 0x5e43 TextAfterBattle
+ dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle
+ dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle
+
+SilphCo2TrainerHeader2: ; 59da8 (16:5da8)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw SilphCo2BattleText3 ; 0x5e48 TextBeforeBattle
+ dw SilphCo2AfterBattleText3 ; 0x5e52 TextAfterBattle
+ dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle
+ dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle
+
+SilphCo2TrainerHeader3: ; 59db4 (16:5db4)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw SilphCo2BattleText4 ; 0x5e57 TextBeforeBattle
+ dw SilphCo2AfterBattleText4 ; 0x5e61 TextAfterBattle
+ dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle
+ dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle
+
+ db $ff
+
+SilphCo2Text1: ; 59dc1 (16:5dc1)
+ db $08 ; asm
+ ld a, [$d826]
+ bit 7, a
+ jr nz, asm_b8a0d ; 0x59dc7
+ ld hl, SilphCo2Text_59ded
+ call PrintText
+ ld bc, (TM_36 << 8) | 1
+ call GiveItem
+ ld hl, TM36NoRoomText
+ jr nc, asm_2c1e0 ; 0x59dd8
+ ld hl, $d826
+ set 7, [hl]
+ ld hl, ReceivedTM36Text
+ jr asm_2c1e0 ; 0x59de2
+asm_b8a0d ; 0x59de4
+ ld hl, TM36ExplanationText
+asm_2c1e0 ; 0x59de7
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo2Text_59ded: ; 59ded (16:5ded)
+ TX_FAR _SilphCo2Text_59ded
+ db "@"
+
+ReceivedTM36Text: ; 59df2 (16:5df2)
+ TX_FAR _ReceivedTM36Text
+ db $0B, "@"
+
+TM36ExplanationText: ; 59df8 (16:5df8)
+ TX_FAR _TM36ExplanationText
+ db "@"
+
+TM36NoRoomText: ; 59dfd (16:5dfd)
+ TX_FAR _TM36NoRoomText
+ db "@"
+
+SilphCo2Text2: ; 59e02 (16:5e02)
+ db $08 ; asm
+ ld hl, SilphCo2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2Text3: ; 59e0c (16:5e0c)
+ db $08 ; asm
+ ld hl, SilphCo2TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2Text4: ; 59e16 (16:5e16)
+ db $08 ; asm
+ ld hl, SilphCo2TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2Text5: ; 59e20 (16:5e20)
+ db $08 ; asm
+ ld hl, SilphCo2TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2BattleText1: ; 59e2a (16:5e2a)
+ TX_FAR _SilphCo2BattleText1
+ db "@"
+
+SilphCo2EndBattleText1: ; 59e2f (16:5e2f)
+ TX_FAR _SilphCo2EndBattleText1
+ db "@"
+
+SilphCo2AfterBattleText1: ; 59e34 (16:5e34)
+ TX_FAR _SilphCo2AfterBattleText1
+ db "@"
+
+SilphCo2BattleText2: ; 59e39 (16:5e39)
+ TX_FAR _SilphCo2BattleText2
+ db "@"
+
+SilphCo2EndBattleText2: ; 59e3e (16:5e3e)
+ TX_FAR _SilphCo2EndBattleText2
+ db "@"
+
+SilphCo2AfterBattleText2: ; 59e43 (16:5e43)
+ TX_FAR _SilphCo2AfterBattleText2
+ db "@"
+
+SilphCo2BattleText3: ; 59e48 (16:5e48)
+ TX_FAR _SilphCo2BattleText3
+ db "@"
+
+SilphCo2EndBattleText3: ; 59e4d (16:5e4d)
+ TX_FAR _SilphCo2EndBattleText3
+ db "@"
+
+SilphCo2AfterBattleText3: ; 59e52 (16:5e52)
+ TX_FAR _SilphCo2AfterBattleText3
+ db "@"
+
+SilphCo2BattleText4: ; 59e57 (16:5e57)
+ TX_FAR _SilphCo2BattleText4
+ db "@"
+
+SilphCo2EndBattleText4: ; 59e5c (16:5e5c)
+ TX_FAR _SilphCo2EndBattleText4
+ db "@"
+
+SilphCo2AfterBattleText4: ; 59e61 (16:5e61)
+ TX_FAR _SilphCo2AfterBattleText4
+ db "@"
diff --git a/scripts/silphco3.asm b/scripts/silphco3.asm
new file mode 100755
index 00000000..a7ba1bee
--- /dev/null
+++ b/scripts/silphco3.asm
@@ -0,0 +1,139 @@
+SilphCo3Script: ; 59f5b (16:5f5b)
+ call SilphCo3Script_59f71
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo3TrainerHeaders
+ ld de, SilphCo3ScriptPointers
+ ld a, [W_SILPHCO3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO3CURSCRIPT], a
+ ret
+
+SilphCo3Script_59f71: ; 59f71 (16:5f71)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_59fa8 ; $5fa8
+ call SilphCo2Script_59d43
+ call SilphCo3Script_59fad
+ ld a, [$d828]
+ bit 0, a
+ jr nz, .asm_59f98
+ push af
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $404
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ pop af
+.asm_59f98
+ bit 1, a
+ ret nz
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $408
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+DataTable_59fa8: ; 59fa8 (16:5fa8)
+ db $04,$04,$04,$08,$FF
+
+SilphCo3Script_59fad: ; 59fad (16:5fad)
+ ld hl, $d828
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .asm_59fbb
+ set 0, [hl]
+ ret
+.asm_59fbb
+ set 1, [hl]
+ ret
+
+SilphCo3ScriptPointers: ; 59fbe (16:5fbe)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo3TextPointers: ; 59fc4 (16:5fc4)
+ dw SilphCo3Text1
+ dw SilphCo3Text2
+ dw SilphCo3Text3
+ dw Predef5CText
+
+SilphCo3TrainerHeaders: ; 59fcc (16:5fcc)
+SilphCo3TrainerHeader0: ; 59fcc (16:5fcc)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d827 ; flag's byte
+ dw SilphCo3BattleText1 ; 0x600d TextBeforeBattle
+ dw SilphCo3AfterBattleText1 ; 0x6017 TextAfterBattle
+ dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle
+ dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle
+
+SilphCo3TrainerHeader1: ; 59fd8 (16:5fd8)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d827 ; flag's byte
+ dw SilphCo3BattleText2 ; 0x6026 TextBeforeBattle
+ dw SilphCo3AfterBattleText2 ; 0x6030 TextAfterBattle
+ dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle
+ dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle
+
+ db $ff
+
+SilphCo3Text1: ; 59fe5 (16:5fe5)
+ db $08 ; asm
+ ld a, [$d838]
+ bit 7, a
+ ld hl, SilphCo3Text_59ffe
+ jr nz, asm_8c56f ; 0x59fee
+ ld hl, SilphCo3Text_59ff9
+asm_8c56f ; 0x59ff3
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo3Text_59ff9: ; 59ff9 (16:5ff9)
+ TX_FAR _SilphCo3Text_59ff9
+ db "@"
+
+SilphCo3Text_59ffe: ; 59ffe (16:5ffe)
+ TX_FAR _SilphCo3Text_59ffe
+ db "@"
+
+SilphCo3Text2: ; 5a003 (16:6003)
+ db $08 ; asm
+ ld hl, SilphCo3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo3BattleText1: ; 5a00d (16:600d)
+ TX_FAR _SilphCo3BattleText1
+ db "@"
+
+SilphCo3EndBattleText1: ; 5a012 (16:6012)
+ TX_FAR _SilphCo3EndBattleText1
+ db "@"
+
+SilphCo3AfterBattleText1: ; 5a017 (16:6017)
+ TX_FAR _SilphCo3AfterBattleText1
+ db "@"
+
+SilphCo3Text3: ; 5a01c (16:601c)
+ db $08 ; asm
+ ld hl, SilphCo3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo3BattleText2: ; 5a026 (16:6026)
+ TX_FAR _SilphCo3BattleText2
+ db "@"
+
+SilphCo3EndBattleText2: ; 5a02b (16:602b)
+ TX_FAR _SilphCo3EndBattleText2
+ db "@"
+
+SilphCo3AfterBattleText2: ; 5a030 (16:6030)
+ TX_FAR _SilphCo3AfterBattleText2
+ db "@"
diff --git a/scripts/silphco4.asm b/scripts/silphco4.asm
new file mode 100755
index 00000000..1777ff8c
--- /dev/null
+++ b/scripts/silphco4.asm
@@ -0,0 +1,201 @@
+SilphCo4Script: ; 19d0b (6:5d0b)
+ call SilphCo4Script_19d21
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo4TrainerHeaders
+ ld de, SilphCo4ScriptPointers
+ ld a, [W_SILPHCO4CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO4CURSCRIPT], a
+ ret
+
+SilphCo4Script_19d21: ; 19d21 (6:5d21)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo4Data19d58
+ call SilphCo4Script_19d5d
+ call SilphCo4Script_19d89
+ ld a, [$d82a]
+ bit 0, a
+ jr nz, .asm_19d48
+ push af
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $0602
+ ld a, $17
+ call Predef
+ pop af
+.asm_19d48
+ bit 1, a
+ ret nz
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $0406
+ ld a, $17
+ jp Predef
+
+SilphCo4Data19d58: ; 19d58 (6:5d58)
+ db $06, $02, $04, $06, $ff
+
+SilphCo4Script_19d5d: ; 19d5d (6:5d5d)
+ push hl
+ ld hl, $d73f
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_19d69
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_19d85 ; 0x19d6c $17
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_19d7a ; 0x19d75 $3
+ inc hl
+ jr .asm_19d69 ; 0x19d78 $ef
+.asm_19d7a
+ ld a, [hli]
+ cp c
+ jr nz, .asm_19d69 ; 0x19d7c $eb
+ ld hl, $d73f
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_19d85
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo4Script_19d89: ; 19d89 (6:5d89)
+ ld hl, $d82a
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .asm_19d97 ; 0x19d92 $3
+ set 0, [hl]
+ ret
+.asm_19d97
+ set 1, [hl]
+ ret
+
+SilphCo4ScriptPointers: ; 19d9a (6:5d9a)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo4TextPointers: ; 19da0 (6:5da0)
+ dw SilphCo4Text1
+ dw SilphCo4Text2
+ dw SilphCo4Text3
+ dw SilphCo4Text4
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+
+SilphCo4TrainerHeaders: ; 19dae (6:5dae)
+SilphCo4TrainerHeader0: ; 19dae (6:5dae)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d829 ; flag's byte
+ dw SilphCo4BattleText2 ; 0x5df4 TextBeforeBattle
+ dw SilphCo4AfterBattleText2 ; 0x5dfe TextAfterBattle
+ dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle
+ dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle
+
+SilphCo4TrainerHeader2: ; 19dba (6:5dba)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d829 ; flag's byte
+ dw SilphCo4BattleText3 ; 0x5e0d TextBeforeBattle
+ dw SilphCo4AfterBattleText3 ; 0x5e17 TextAfterBattle
+ dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle
+ dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle
+
+SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d829 ; flag's byte
+ dw SilphCo4BattleText4 ; 0x5e26 TextBeforeBattle
+ dw SilphCo4AfterBattleText4 ; 0x5e30 TextAfterBattle
+ dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle
+ dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle
+
+ db $ff
+
+SilphCo4Text1: ; 19dd3 (6:5dd3)
+ db $08 ; asm
+ ld hl, SilphCo4Text_19de0
+ ld de, SilphCo4Text_19de5
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo4Text_19de0: ; 19de0 (6:5de0)
+ TX_FAR _SilphCo4Text_19de0
+ db "@"
+
+SilphCo4Text_19de5: ; 19de5 (6:5de5)
+ TX_FAR _SilphCo4Text_19de5
+ db "@"
+
+SilphCo4Text2: ; 19dea (6:5dea)
+ db $08 ; asm
+ ld hl, SilphCo4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo4BattleText2: ; 19df4 (6:5df4)
+ TX_FAR _SilphCo4BattleText2
+ db "@"
+
+SilphCo4EndBattleText2: ; 19df9 (6:5df9)
+ TX_FAR _SilphCo4EndBattleText2
+ db "@"
+
+SilphCo4AfterBattleText2: ; 19dfe (6:5dfe)
+ TX_FAR _SilphCo4AfterBattleText2
+ db "@"
+
+SilphCo4Text3: ; 19e03 (6:5e03)
+ db $08 ; asm
+ ld hl, SilphCo4TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo4BattleText3: ; 19e0d (6:5e0d)
+ TX_FAR _SilphCo4BattleText3
+ db "@"
+
+SilphCo4EndBattleText3: ; 19e12 (6:5e12)
+ TX_FAR _SilphCo4EndBattleText3
+ db "@"
+
+SilphCo4AfterBattleText3: ; 19e17 (6:5e17)
+ TX_FAR _SilphCo4AfterBattleText3
+ db "@"
+
+SilphCo4Text4: ; 19e1c (6:5e1c)
+ db $08 ; asm
+ ld hl, SilphCo4TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo4BattleText4: ; 19e26 (6:5e26)
+ TX_FAR _SilphCo4BattleText4
+ db "@"
+
+SilphCo4EndBattleText4: ; 19e2b (6:5e2b)
+ TX_FAR _SilphCo4EndBattleText4
+ db "@"
+
+SilphCo4AfterBattleText4: ; 19e30 (6:5e30)
+ TX_FAR _SilphCo4AfterBattleText4
+ db "@"
diff --git a/scripts/silphco5.asm b/scripts/silphco5.asm
new file mode 100755
index 00000000..c4efc16b
--- /dev/null
+++ b/scripts/silphco5.asm
@@ -0,0 +1,223 @@
+SilphCo5Script: ; 19f37 (6:5f37)
+ call SilphCo5Script_19f4d
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo5TrainerHeaders
+ ld de, SilphCo5ScriptPointers
+ ld a, [W_SILPHCO5CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO5CURSCRIPT], a
+ ret
+
+SilphCo5Script_19f4d: ; 19f4d (6:5f4d)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo5Coords
+ call SilphCo4Script_19d5d
+ call SilphCo5Script_19f9e
+ ld a, [$d82c]
+ bit 0, a
+ jr nz, .asm_19f74 ; 0x19f63 $f
+ push af
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $0203
+ ld a, $17
+ call Predef
+ pop af
+.asm_19f74
+ bit 1, a
+ jr nz, .asm_19f87 ; 0x19f76 $f
+ push af
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $0603
+ ld a, $17
+ call Predef
+ pop af
+.asm_19f87
+ bit 2, a
+ ret nz
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $0507
+ ld a, $17
+ jp Predef
+
+SilphCo5Coords: ; 19f97 (6:5f97) ; coords?
+ db $02, $03, $06, $03, $05, $07, $ff
+
+SilphCo5Script_19f9e: ; 19f9e (6:5f9e)
+ ld hl, $d82c
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .asm_19fac ; 0x19fa7 $3
+ set 0, [hl]
+ ret
+.asm_19fac
+ cp $2
+ jr nz, .asm_19fb3 ; 0x19fae $3
+ set 1, [hl]
+ ret
+.asm_19fb3
+ set 2, [hl]
+ ret
+
+SilphCo5ScriptPointers: ; 19fb6 (6:5fb6)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo5TextPointers: ; 19fbc (6:5fbc)
+ dw SilphCo5Text1
+ dw SilphCo5Text2
+ dw SilphCo5Text3
+ dw SilphCo5Text4
+ dw SilphCo5Text5
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw SilphCo5Text9
+ dw SilphCo5Text10
+ dw SilphCo5Text11
+
+SilphCo5TrainerHeaders: ; 19fd2 (6:5fd2)
+Silphco5TrainerHeader0: ; 19fd2 (6:5fd2)
+ db $2 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d82b ; flag's byte
+ dw SilphCo5BattleText2 ; 0x6024 TextBeforeBattle
+ dw SilphCo5AfterBattleText2 ; 0x602e TextAfterBattle
+ dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle
+ dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle
+
+Silphco5TrainerHeader2: ; 19fde (6:5fde)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d82b ; flag's byte
+ dw SilphCo5BattleText3 ; 0x603d TextBeforeBattle
+ dw SilphCo5AfterBattleText3 ; 0x6047 TextAfterBattle
+ dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle
+ dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle
+
+Silphco5TrainerHeader3: ; 19fea (6:5fea)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d82b ; flag's byte
+ dw SilphCo5BattleText4 ; 0x6056 TextBeforeBattle
+ dw SilphCo5AfterBattleText4 ; 0x6060 TextAfterBattle
+ dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle
+ dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle
+
+Silphco5TrainerHeader4: ; 19ff6 (6:5ff6)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d82b ; flag's byte
+ dw SilphCo5BattleText5 ; 0x606f TextBeforeBattle
+ dw SilphCo5AfterBattleText5 ; 0x6079 TextAfterBattle
+ dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle
+ dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle
+
+ db $ff
+
+SilphCo5Text1: ; 1a003 (6:6003)
+ db $08 ; asm
+ ld hl, SilphCo5Text_1a010
+ ld de, SilphCo5Text_1a015
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo5Text_1a010: ; 1a010 (6:6010)
+ TX_FAR _SilphCo5Text_1a010
+ db "@"
+
+SilphCo5Text_1a015: ; 1a015 (6:6015)
+ TX_FAR _SilphCo5Text_1a015
+ db "@"
+
+SilphCo5Text2: ; 1a01a (6:601a)
+ db $08 ; asm
+ ld hl, Silphco5TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText2: ; 1a024 (6:6024)
+ TX_FAR _SilphCo5BattleText2
+ db "@"
+
+SilphCo5EndBattleText2: ; 1a029 (6:6029)
+ TX_FAR _SilphCo5EndBattleText2
+ db "@"
+
+SilphCo5AfterBattleText2: ; 1a02e (6:602e)
+ TX_FAR _SilphCo5AfterBattleText2
+ db "@"
+
+SilphCo5Text3: ; 1a033 (6:6033)
+ db $08 ; asm
+ ld hl, Silphco5TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText3: ; 1a03d (6:603d)
+ TX_FAR _SilphCo5BattleText3
+ db "@"
+
+SilphCo5EndBattleText3: ; 1a042 (6:6042)
+ TX_FAR _SilphCo5EndBattleText3
+ db "@"
+
+SilphCo5AfterBattleText3: ; 1a047 (6:6047)
+ TX_FAR _SilphCo5AfterBattleText3
+ db "@"
+
+SilphCo5Text4: ; 1a04c (6:604c)
+ db $08 ; asm
+ ld hl, Silphco5TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText4: ; 1a056 (6:6056)
+ TX_FAR _SilphCo5BattleText4
+ db "@"
+
+SilphCo5EndBattleText4: ; 1a05b (6:605b)
+ TX_FAR _SilphCo5EndBattleText4
+ db "@"
+
+SilphCo5AfterBattleText4: ; 1a060 (6:6060)
+ TX_FAR _SilphCo5AfterBattleText4
+ db "@"
+
+SilphCo5Text5: ; 1a065 (6:6065)
+ db $08 ; asm
+ ld hl, Silphco5TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText5: ; 1a06f (6:606f)
+ TX_FAR _SilphCo5BattleText5
+ db "@"
+
+SilphCo5EndBattleText5: ; 1a074 (6:6074)
+ TX_FAR _SilphCo5EndBattleText5
+ db "@"
+
+SilphCo5AfterBattleText5: ; 1a079 (6:6079)
+ TX_FAR _SilphCo5AfterBattleText5
+ db "@"
+
+SilphCo5Text9: ; 1a07e (6:607e)
+ TX_FAR _SilphCo5Text9
+ db "@"
+
+SilphCo5Text10: ; 1a083 (6:6083)
+ TX_FAR _SilphCo5Text10
+ db "@"
+
+SilphCo5Text11: ; 1a088 (6:6088)
+ TX_FAR _SilphCo5Text11
+ db "@"
diff --git a/scripts/silphco6.asm b/scripts/silphco6.asm
new file mode 100755
index 00000000..2b5b7ebf
--- /dev/null
+++ b/scripts/silphco6.asm
@@ -0,0 +1,225 @@
+SilphCo6Script: ; 1a1a9 (6:61a9)
+ call SilphCo6Script_1a1bf
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo6TrainerHeaders
+ ld de, SilphCo6ScriptPointers
+ ld a, [W_SILPHCO6CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO6CURSCRIPT], a
+ ret
+
+SilphCo6Script_1a1bf: ; 1a1bf (6:61bf)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo6Coords1
+ call SilphCo4Script_19d5d
+ call SilphCo6Script_1a1e6
+ ld a, [$d82e]
+ bit 7, a
+ ret nz
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $0602
+ ld a, $17
+ jp Predef
+
+SilphCo6Coords1: ; 1a1e3 (6:61e3)
+ db $06, $02
+ db $ff
+
+SilphCo6Script_1a1e6: ; 1a1e6 (6:61e6)
+ ld a, [$ffe0]
+ and a
+ ret z
+ ld hl, $d82e
+ set 7, [hl]
+ ret
+
+SilphCo6ScriptPointers: ; 1a1f0 (6:61f0)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo6TextPointers: ; 1a1f6 (6:61f6)
+ dw SilphCo6Text1
+ dw SilphCo6Text2
+ dw SilphCo6Text3
+ dw SilphCo6Text4
+ dw SilphCo6Text5
+ dw SilphCo6Text6
+ dw SilphCo6Text7
+ dw SilphCo6Text8
+ dw Predef5CText
+ dw Predef5CText
+
+SilphCo6TrainerHeaders: ; 1a20a (6:620a)
+SilphCo6TrainerHeader0: ; 1a20a (6:620a)
+ db $6 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d82d ; flag's byte
+ dw SilphCo6BattleText2 ; 0x62ba TextBeforeBattle
+ dw SilphCo6AfterBattleText2 ; 0x62c4 TextAfterBattle
+ dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle
+ dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle
+
+SilphCo6TrainerHeader2: ; 1a216 (6:6216)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d82d ; flag's byte
+ dw SilphCo6BattleText3 ; 0x62d3 TextBeforeBattle
+ dw SilphCo6AfterBattleText3 ; 0x62dd TextAfterBattle
+ dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle
+ dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle
+
+SilphCo6TrainerHeader3: ; 1a222 (6:6222)
+ db $8 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d82d ; flag's byte
+ dw SilphCo6BattleText4 ; 0x62ec TextBeforeBattle
+ dw SilphCo6AfterBattleText4 ; 0x62f6 TextAfterBattle
+ dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle
+ dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle
+
+ db $ff
+
+SilphCo6Script_1a22f: ; 1a22f (6:622f)
+ ld a, [$d838]
+ bit 7, a
+ jr nz, .asm_1a238 ; 0x1a234 $2
+ jr .asm_1a23a ; 0x1a236 $2
+.asm_1a238
+ ld h, d
+ ld l, e
+.asm_1a23a
+ jp PrintText
+
+SilphCo6Text1: ; 1a23d (6:623d)
+ db $08 ; asm
+ ld hl, SilphCo6Text_1a24a
+ ld de, SilphCo6Text_1a24f
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a24a: ; 1a24a (6:624a)
+ TX_FAR _SilphCo6Text_1a24a
+ db "@"
+
+SilphCo6Text_1a24f: ; 1a24f (6:624f)
+ TX_FAR _SilphCo6Text_1a24f
+ db "@"
+
+SilphCo6Text2: ; 1a254 (6:6254)
+ db $08 ; asm
+ ld hl, SilphCo6Text_1a261
+ ld de, SilphCo6Text_1a266
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a261: ; 1a261 (6:6261)
+ TX_FAR _SilphCo6Text_1a261
+ db "@"
+
+SilphCo6Text_1a266: ; 1a266 (6:6266)
+ TX_FAR _SilphCo6Text_1a266
+ db "@"
+
+SilphCo6Text3: ; 1a26b (6:626b)
+ db $08 ; asm
+ ld hl, SilphCo6Text_1a278
+ ld de, SilphCo6Text_1a27d
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a278: ; 1a278 (6:6278)
+ TX_FAR _SilphCo6Text_1a278
+ db "@"
+
+SilphCo6Text_1a27d: ; 1a27d (6:627d)
+ TX_FAR _SilphCo6Text_1a27d
+ db "@"
+
+SilphCo6Text4: ; 1a282 (6:6282)
+ db $08 ; asm
+ ld hl, SilphCo6Text_1a28f
+ ld de, SilphCo6Text_1a294
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a28f: ; 1a28f (6:628f)
+ TX_FAR _SilphCo6Text_1a28f
+ db "@"
+
+SilphCo6Text_1a294: ; 1a294 (6:6294)
+ TX_FAR _SilphCo6Text_1a294
+ db "@"
+
+SilphCo6Text5: ; 1a299 (6:6299)
+ db $08 ; asm
+ ld hl, SilphCo6Text_1a2a6
+ ld de, SilphCo6Text_1a2ab
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a2a6: ; 1a2a6 (6:62a6)
+ TX_FAR _SilphCo6Text_1a2a6
+ db "@"
+
+SilphCo6Text_1a2ab: ; 1a2ab (6:62ab)
+ TX_FAR _SilphCo6Text_1a2ab
+ db "@"
+
+SilphCo6Text6: ; 1a2b0 (6:62b0)
+ db $08 ; asm
+ ld hl, SilphCo6TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo6BattleText2: ; 1a2ba (6:62ba)
+ TX_FAR _SilphCo6BattleText2
+ db "@"
+
+SilphCo6EndBattleText2: ; 1a2bf (6:62bf)
+ TX_FAR _SilphCo6EndBattleText2
+ db "@"
+
+SilphCo6AfterBattleText2: ; 1a2c4 (6:62c4)
+ TX_FAR _SilphCo6AfterBattleText2
+ db "@"
+
+SilphCo6Text7: ; 1a2c9 (6:62c9)
+ db $08 ; asm
+ ld hl, SilphCo6TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo6BattleText3: ; 1a2d3 (6:62d3)
+ TX_FAR _SilphCo6BattleText3
+ db "@"
+
+SilphCo6EndBattleText3: ; 1a2d8 (6:62d8)
+ TX_FAR _SilphCo6EndBattleText3
+ db "@"
+
+SilphCo6AfterBattleText3: ; 1a2dd (6:62dd)
+ TX_FAR _SilphCo6AfterBattleText3
+ db "@"
+
+SilphCo6Text8: ; 1a2e2 (6:62e2)
+ db $08 ; asm
+ ld hl, SilphCo6TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo6BattleText4: ; 1a2ec (6:62ec)
+ TX_FAR _SilphCo6BattleText4
+ db "@"
+
+SilphCo6EndBattleText4: ; 1a2f1 (6:62f1)
+ TX_FAR _SilphCo6EndBattleText4
+ db "@"
+
+SilphCo6AfterBattleText4: ; 1a2f6 (6:62f6)
+ TX_FAR _SilphCo6AfterBattleText4
+ db "@"
diff --git a/scripts/silphco7.asm b/scripts/silphco7.asm
new file mode 100755
index 00000000..5691ad8a
--- /dev/null
+++ b/scripts/silphco7.asm
@@ -0,0 +1,523 @@
+SilphCo7Script: ; 51b61 (14:5b61)
+ call SilphCo7Script_51b77
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo7TrainerHeaders
+ ld de, SilphCo7ScriptPointers
+ ld a, [W_SILPHCO7CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO7CURSCRIPT], a
+ ret
+
+SilphCo7Script_51b77: ; 51b77 (14:5b77)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_51bc1 ; $5bc1
+ call SilphCo7Text_51bc8
+ call SilphCo7Text_51bf4
+ ld a, [$d830]
+ bit 4, a
+ jr nz, .asm_51b9e
+ push af
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $305
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ pop af
+.asm_51b9e
+ bit 5, a
+ jr nz, .asm_51bb1
+ push af
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $20a
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ pop af
+.asm_51bb1
+ bit 6, a
+ ret nz
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $60a
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+DataTable_51bc1: ; 51bc1 (14:5bc1)
+ db $03,$05,$02,$0A,$06,$0A,$FF
+
+SilphCo7Text_51bc8: ; 51bc8 (14:5bc8)
+ push hl
+ ld hl, $d73f
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_51bd4
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_51bf0
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_51be5
+ inc hl
+ jr .asm_51bd4
+.asm_51be5
+ ld a, [hli]
+ cp c
+ jr nz, .asm_51bd4
+ ld hl, $d73f
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_51bf0
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo7Text_51bf4: ; 51bf4 (14:5bf4)
+ ld hl, $d830
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .asm_51c02
+ set 4, [hl]
+ ret
+.asm_51c02
+ cp $2
+ jr nz, .asm_51c09
+ set 5, [hl]
+ ret
+.asm_51c09
+ set 6, [hl]
+ ret
+
+SilphCo7Text_51c0c: ; 51c0c (14:5c0c)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+
+SilphCo7Text_51c10: ; 51c10 (14:5c10)
+ ld [W_SILPHCO7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+SilphCo7ScriptPointers: ; 51c17 (14:5c17)
+ dw SilphCo7Script0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw SilphCo7Script3
+ dw SilphCo7Script4
+ dw SilphCo7Script5
+
+SilphCo7Script0: ; 51c23 (14:5c23)
+ ld a, [$d82f]
+ bit 0, a
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_51c78
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $4
+ ld [$d528], a
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_51c7d
+ ld a, [wWhichTrade] ; $cd3d
+ ld [$cf0d], a
+ cp $1
+ jr z, .asm_51c6c
+ inc de
+.asm_51c6c
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call MoveSprite
+ ld a, $3
+ jp SilphCo7Text_51c10
+
+CoordsData_51c78: ; 51c78 (14:5c78)
+ db $02,$03
+ db $03,$03
+ db $FF
+
+MovementData_51c7d: ; 51c7d (14:5c7d)
+ db $40,$40,$40,$40,$FF
+
+SilphCo7Script3: ; 51c82 (14:5c82)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $d
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ call Delay3
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SilphCo7Text14 ; $5ec8
+ ld de, SilphCo7Text_51ecd ; $5ecd
+ call PreBattleSaveRegisters
+ ld a, SONY2 + $c8
+ ld [W_CUROPPONENT], a ; $d059
+ ld a, [W_RIVALSTARTER] ; $d715
+ cp SQUIRTLE
+ jr nz, .asm_51cb6
+ ld a, $7
+ jr .asm_51cc0
+.asm_51cb6
+ cp BULBASAUR
+ jr nz, .asm_51cbe
+ ld a, $8
+ jr .asm_51cc0
+.asm_51cbe
+ ld a, $9
+.asm_51cc0
+ ld [W_TRAINERNO], a ; $d05d
+ ld a, $4
+ jp SilphCo7Text_51c10
+
+SilphCo7Script4: ; 51cc8 (14:5cc8)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, SilphCo7Text_51c0c
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d82f
+ set 0, [hl]
+ ld a, $4
+ ld [$d528], a
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld a, $4
+ ld [$ff8d], a
+ call Func_34a6
+ ld a, $f
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld de, MovementData_51d1d
+ ld a, [$cf0d]
+ cp $1
+ jr nz, .asm_51d0e
+ ld de, MovementData_51d1a
+.asm_51d0e
+ ld a, $9
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call MoveSprite
+ ld a, $5
+ jp SilphCo7Text_51c10
+
+MovementData_51d1a: ; 51d1a (14:5d1a)
+ db $C0,$C0,$FF
+
+MovementData_51d1d: ; 51d1d (14:5d1d)
+ db $80,$40,$40,$C0,$C0,$C0,$00,$FF
+
+SilphCo7Script5: ; 51d25 (14:5d25)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld a, $a7
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ call Func_2307
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ jp SilphCo7Text_51c10
+
+SilphCo7TextPointers: ; 51d3f (14:5d3f)
+ dw SilphCo7Text1
+ dw SilphCo7Text2
+ dw SilphCo7Text3
+ dw SilphCo7Text4
+ dw SilphCo7Text5
+ dw SilphCo7Text6
+ dw SilphCo7Text7
+ dw SilphCo7Text8
+ dw SilphCo7Text9
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw SilphCo7Text13
+ dw SilphCo7Text14
+ dw SilphCo7Text15
+
+SilphCo7TrainerHeaders: ; 51d5d (14:5d5d)
+SilphCo7TrainerHeader0: ; 51d5d (14:5d5d)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d82f ; flag's byte
+ dw SilphCo7BattleText1 ; 0x5e5a TextBeforeBattle
+ dw SilphCo7AfterBattleText1 ; 0x5e64 TextAfterBattle
+ dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle
+ dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle
+
+SilphCo7TrainerHeader2: ; 51d69 (14:5d69)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d82f ; flag's byte
+ dw SilphCo7BattleText2 ; 0x5e73 TextBeforeBattle
+ dw SilphCo7AfterBattleText2 ; 0x5e7d TextAfterBattle
+ dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle
+ dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle
+
+SilphCo7TrainerHeader3: ; 51d75 (14:5d75)
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d82f ; flag's byte
+ dw SilphCo7BattleText3 ; 0x5e8c TextBeforeBattle
+ dw SilphCo7AfterBattleText3 ; 0x5e96 TextAfterBattle
+ dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle
+ dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle
+
+SilphCo7TrainerHeader4: ; 51d81 (14:5d81)
+ db $8 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d82f ; flag's byte
+ dw SilphCo7BattleText4 ; 0x5ea5 TextBeforeBattle
+ dw SilphCo7AfterBattleText4 ; 0x5eaf TextAfterBattle
+ dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle
+ dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle
+
+ db $ff
+
+SilphCo7Text1:
+; lapras guy
+ db $08 ; asm
+ ld a, [$d72e]
+ bit 0, a ; got lapras?
+ jr z, .givelapras
+ ld a, [$d838]
+ bit 7, a ; saved silph?
+ jr nz, .savedsilph
+ ld hl, .LaprasGuyText
+ call PrintText
+ jr .done
+.givelapras
+ ld hl, .MeetLaprasGuyText
+ call PrintText
+ ld bc, (LAPRAS << 8) | 15
+ call GivePokemon
+ jr nc, .done
+ ld a, [$ccd3]
+ and a
+ call z, WaitForTextScrollButtonPress
+ call EnableAutoTextBoxDrawing
+ ld hl, .HeresYourLaprasText
+ call PrintText
+ ld hl, $d72e
+ set 0, [hl]
+ jr .done
+.savedsilph
+ ld hl, .LaprasGuySavedText
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.MeetLaprasGuyText
+ TX_FAR _MeetLaprasGuyText
+ db "@"
+
+.HeresYourLaprasText
+ TX_FAR _HeresYourLaprasText
+ db "@"
+
+.LaprasGuyText
+ TX_FAR _LaprasGuyText
+ db "@"
+
+.LaprasGuySavedText
+ TX_FAR _LaprasGuySavedText
+ db "@"
+
+SilphCo7Text2:
+ db $8
+ ld a, [$d838]
+ bit 7, a ; saved silph?
+ jr nz, .savedsilph
+ ld hl, .rockettext
+ call PrintText
+ jr .done
+.savedsilph
+ ld hl, .savedtext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.rockettext
+ TX_FAR _SilphCo7Text_51e00
+ db "@"
+
+.savedtext
+ TX_FAR _CanceledMasterBallText
+ db "@"
+
+SilphCo7Text3:
+ db $08 ; asm
+ ld a, [$d838]
+ bit 7, a ; saved silph?
+ jr nz, .savedsilph
+ ld hl, .rockettext
+ call PrintText
+ jr .done
+.savedsilph
+ ld hl, .savedtext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.rockettext
+ TX_FAR _SilphCo7Text_51e23
+ db "@"
+
+.savedtext
+ TX_FAR _SilphCo7Text_51e28
+ db "@"
+
+SilphCo7Text4:
+ db $08 ; asm
+ ld a, [$d838]
+ bit 7, a ; saved silph?
+ jr nz, .savedsilph
+ ld hl, .rockettext
+ call PrintText
+ jr .done
+.savedsilph
+ ld hl, .savedtext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.rockettext
+ TX_FAR _SilphCo7Text_51e46
+ db "@"
+
+.savedtext
+ TX_FAR _SilphCo7Text_51e4b
+ db "@"
+
+SilphCo7Text5: ; 51e50 (14:5e50)
+ db $08 ; asm
+ ld hl, SilphCo7TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText1: ; 51e5a (14:5e5a)
+ TX_FAR _SilphCo7BattleText1
+ db "@"
+
+SilphCo7EndBattleText1: ; 51e5f (14:5e5f)
+ TX_FAR _SilphCo7EndBattleText1
+ db "@"
+
+SilphCo7AfterBattleText1: ; 51e64 (14:5e64)
+ TX_FAR _SilphCo7AfterBattleText1
+ db "@"
+
+SilphCo7Text6: ; 51e69 (14:5e69)
+ db $08 ; asm
+ ld hl, SilphCo7TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText2: ; 51e73 (14:5e73)
+ TX_FAR _SilphCo7BattleText2
+ db "@"
+
+SilphCo7EndBattleText2: ; 51e78 (14:5e78)
+ TX_FAR _SilphCo7EndBattleText2
+ db "@"
+
+SilphCo7AfterBattleText2: ; 51e7d (14:5e7d)
+ TX_FAR _SilphCo7AfterBattleText2
+ db "@"
+
+SilphCo7Text7: ; 51e82 (14:5e82)
+ db $08 ; asm
+ ld hl, SilphCo7TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText3: ; 51e8c (14:5e8c)
+ TX_FAR _SilphCo7BattleText3
+ db "@"
+
+SilphCo7EndBattleText3: ; 51e91 (14:5e91)
+ TX_FAR _SilphCo7EndBattleText3
+ db "@"
+
+SilphCo7AfterBattleText3: ; 51e96 (14:5e96)
+ TX_FAR _SilphCo7AfterBattleText3
+ db "@"
+
+SilphCo7Text8: ; 51e9b (14:5e9b)
+ db $08 ; asm
+ ld hl, SilphCo7TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText4: ; 51ea5 (14:5ea5)
+ TX_FAR _SilphCo7BattleText4
+ db "@"
+
+SilphCo7EndBattleText4: ; 51eaa (14:5eaa)
+ TX_FAR _SilphCo7EndBattleText4
+ db "@"
+
+SilphCo7AfterBattleText4: ; 51eaf (14:5eaf)
+ TX_FAR _SilphCo7AfterBattleText4
+ db "@"
+
+SilphCo7Text9: ; 51eb4 (14:5eb4)
+ db $08 ; asm
+ ld hl, SilphCo7Text_51ebe
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo7Text_51ebe: ; 51ebe (14:5ebe)
+ TX_FAR _SilphCo7Text_51ebe
+ db "@"
+
+SilphCo7Text13: ; 51ec3 (14:5ec3)
+ TX_FAR _SilphCo7Text_51ec3
+ db "@"
+
+SilphCo7Text14: ; 51ec8 (14:5ec8)
+ TX_FAR _SilphCo7Text_51ec8
+ db "@"
+
+SilphCo7Text_51ecd: ; 51ecd (14:5ecd)
+ TX_FAR _SilphCo7Text_51ecd
+ db "@"
+
+SilphCo7Text15: ; 51ed2 (14:5ed2)
+ TX_FAR _SilphCo7Text_51ed2
+ db "@"
diff --git a/scripts/silphco8.asm b/scripts/silphco8.asm
new file mode 100755
index 00000000..19cae4ac
--- /dev/null
+++ b/scripts/silphco8.asm
@@ -0,0 +1,187 @@
+SilphCo8Script: ; 56504 (15:6504)
+ call SilphCo8Script_5651a
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo8TrainerHeader0
+ ld de, SilphCo8ScriptPointers
+ ld a, [W_SILPHCO8CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO8CURSCRIPT], a
+ ret
+
+SilphCo8Script_5651a: ; 5651a (15:651a)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_5653e ; $653e
+ call SilphCo8Script_56541
+ call SilphCo8Script_5656d
+ ld a, [$d832]
+ bit 0, a
+ ret nz
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $403
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+DataTable_5653e: ; 5653e (15:653e)
+ db $04,$03,$FF
+
+SilphCo8Script_56541: ; 56541 (15:6541)
+ push hl
+ ld hl, $d73f
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_5654d
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_56569
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_5655e
+ inc hl
+ jr .asm_5654d
+.asm_5655e
+ ld a, [hli]
+ cp c
+ jr nz, .asm_5654d
+ ld hl, $d73f
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_56569
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo8Script_5656d: ; 5656d (15:656d)
+ ld a, [$ffe0]
+ and a
+ ret z
+ ld hl, $d832
+ set 0, [hl]
+ ret
+
+SilphCo8ScriptPointers: ; 56577 (15:6577)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo8TextPointers: ; 5657d (15:657d)
+ dw SilphCo8Text1
+ dw SilphCo8Text2
+ dw SilphCo8Text3
+ dw SilphCo8Text4
+
+SilphCo8TrainerHeaders: ; 56585 (15:6585)
+SilphCo8TrainerHeader0: ; 56585 (15:6585)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d831 ; flag's byte
+ dw SilphCo8BattleText1 ; 0x65e6 TextBeforeBattle
+ dw SilphCo8AfterBattleText1 ; 0x65f0 TextAfterBattle
+ dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle
+ dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle
+
+SilphCo8TrainerHeader1: ; 56591 (15:6591)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d831 ; flag's byte
+ dw SilphCo8BattleText2 ; 0x65f5 TextBeforeBattle
+ dw SilphCo8AfterBattleText2 ; 0x65ff TextAfterBattle
+ dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle
+ dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle
+
+SilphCo8TrainerHeader2: ; 5659d (15:659d)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d831 ; flag's byte
+ dw SilphCo8BattleText3 ; 0x6604 TextBeforeBattle
+ dw SilphCo8AfterBattleText3 ; 0x660e TextAfterBattle
+ dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle
+ dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle
+
+ db $ff
+
+SilphCo8Text1: ; 565aa (15:65aa)
+ db $08 ; asm
+ ld a, [$d838]
+ bit 7, a
+ ld hl, SilphCo8Text_565c3
+ jr nz, asm_a468f ; 0x565b3
+ ld hl, SilphCo8Text_565be
+asm_a468f ; 0x565b8
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo8Text_565be: ; 565be (15:65be)
+ TX_FAR _SilphCo8Text_565be
+ db "@"
+
+SilphCo8Text_565c3: ; 565c3 (15:65c3)
+ TX_FAR _SilphCo8Text_565c3
+ db "@"
+
+SilphCo8Text2: ; 565c8 (15:65c8)
+ db $08 ; asm
+ ld hl, SilphCo8TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo8Text3: ; 565d2 (15:65d2)
+ db $08 ; asm
+ ld hl, SilphCo8TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo8Text4: ; 565dc (15:65dc)
+ db $08 ; asm
+ ld hl, SilphCo8TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo8BattleText1: ; 565e6 (15:65e6)
+ TX_FAR _SilphCo8BattleText1
+ db "@"
+
+SilphCo8EndBattleText1: ; 565eb (15:65eb)
+ TX_FAR _SilphCo8EndBattleText1
+ db "@"
+
+SilphCo8AfterBattleText1: ; 565f0 (15:65f0)
+ TX_FAR _SilphCo8AfterBattleText1
+ db "@"
+
+SilphCo8BattleText2: ; 565f5 (15:65f5)
+ TX_FAR _SilphCo8BattleText2
+ db "@"
+
+SilphCo8EndBattleText2: ; 565fa (15:65fa)
+ TX_FAR _SilphCo8EndBattleText2
+ db "@"
+
+SilphCo8AfterBattleText2: ; 565ff (15:65ff)
+ TX_FAR _SilphCo8AfterBattleText2
+ db "@"
+
+SilphCo8BattleText3: ; 56604 (15:6604)
+ TX_FAR _SilphCo8BattleText3
+ db "@"
+
+SilphCo8EndBattleText3: ; 56609 (15:6609)
+ TX_FAR _SilphCo8EndBattleText3
+ db "@"
+
+SilphCo8AfterBattleText3: ; 5660e (15:660e)
+ TX_FAR _SilphCo8AfterBattleText3
+ db "@"
diff --git a/scripts/silphco9.asm b/scripts/silphco9.asm
new file mode 100755
index 00000000..ee6e6fdc
--- /dev/null
+++ b/scripts/silphco9.asm
@@ -0,0 +1,248 @@
+SilphCo9Script: ; 5d7bb (17:57bb)
+ call SilphCo9Script_5d7d1
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo9TrainerHeaders
+ ld de, SilphCo9ScriptPointers
+ ld a, [W_SILPHCO9CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SILPHCO9CURSCRIPT], a
+ ret
+
+SilphCo9Script_5d7d1: ; 5d7d1 (17:57d1)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, DataTable_5d82e ; $582e
+ call SilphCo9Script_5d837
+ call SilphCo9Script_5d863
+ ld a, [$d834]
+ bit 0, a
+ jr nz, .asm_5d7f8
+ push af
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $401
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ pop af
+.asm_5d7f8
+ bit 1, a
+ jr nz, .asm_5d80b
+ push af
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $209
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ pop af
+.asm_5d80b
+ bit 2, a
+ jr nz, .asm_5d81e
+ push af
+ ld a, $54
+ ld [$d09f], a
+ ld bc, $509
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ pop af
+.asm_5d81e
+ bit 3, a
+ ret nz
+ ld a, $5f
+ ld [$d09f], a
+ ld bc, $605
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+DataTable_5d82e: ; 5d82e (17:582e)
+ db $04,$01,$02,$09,$05,$09,$06,$05,$FF
+
+SilphCo9Script_5d837: ; 5d837 (17:5837)
+ push hl
+ ld hl, $d73f
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_5d843
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_5d85f
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_5d854
+ inc hl
+ jr .asm_5d843
+.asm_5d854
+ ld a, [hli]
+ cp c
+ jr nz, .asm_5d843
+ ld hl, $d73f
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_5d85f
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo9Script_5d863: ; 5d863 (17:5863)
+ ld hl, $d834
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .asm_5d871
+ set 0, [hl]
+ ret
+.asm_5d871
+ cp $2
+ jr nz, .asm_5d878
+ set 1, [hl]
+ ret
+.asm_5d878
+ cp $3
+ jr nz, .asm_5d87f
+ set 2, [hl]
+ ret
+.asm_5d87f
+ cp $4
+ ret nz
+ set 3, [hl]
+ ret
+
+SilphCo9ScriptPointers: ; 5d885 (17:5885)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SilphCo9TextPointers: ; 5d88b (17:588b)
+ dw SilphCo9Text1
+ dw SilphCo9Text2
+ dw SilphCo9Text3
+ dw SilphCo9Text4
+
+SilphCo9TrainerHeaders: ; 5d893 (17:5893)
+SilphCo9TrainerHeader0: ; 5d893 (17:5893)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d833 ; flag's byte
+ dw SilphCo9BattleText1 ; 0x5912 TextBeforeBattle
+ dw SilphCo9AfterBattleText1 ; 0x591c TextAfterBattle
+ dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle
+ dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle
+
+SilphCo9TrainerHeader1: ; 5d89f (17:589f)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d833 ; flag's byte
+ dw SilphCo9BattleText2 ; 0x5921 TextBeforeBattle
+ dw SilphCo9AfterBattleText2 ; 0x592b TextAfterBattle
+ dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle
+ dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle
+
+SilphCo9TrainerHeader2: ; 5d8ab (17:58ab)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d833 ; flag's byte
+ dw SilphCo9BattleText3 ; 0x5930 TextBeforeBattle
+ dw SilphCo9AfterBattleText3 ; 0x593a TextAfterBattle
+ dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle
+ dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle
+
+ db $ff
+
+SilphCo9Text1: ; 5d8b8 (17:58b8)
+ db $08 ; asm
+ ld a, [$d838]
+ bit 7, a
+ jr nz, .asm_a14c3 ; 0x5d8be
+ ld hl, SilphCo9Text_5d8e5
+ call PrintText
+ ld a, $7
+ call Predef
+ call GBFadeOut2
+ call Delay3
+ call GBFadeIn2
+ ld hl, SilphCo9Text_5d8ea
+ call PrintText
+ jr .asm_b6e28 ; 0x5d8da
+.asm_a14c3 ; 0x5d8dc
+ ld hl, SilphCo9Text_5d8ef
+ call PrintText
+.asm_b6e28 ; 0x5d8e2
+ jp TextScriptEnd
+
+SilphCo9Text_5d8e5: ; 5d8e5 (17:58e5)
+ TX_FAR _SilphCo9Text_5d8e5
+ db "@"
+
+SilphCo9Text_5d8ea: ; 5d8ea (17:58ea)
+ TX_FAR _SilphCo9Text_5d8ea
+ db "@"
+
+SilphCo9Text_5d8ef: ; 5d8ef (17:58ef)
+ TX_FAR _SilphCo9Text_5d8ef
+ db "@"
+
+SilphCo9Text2: ; 5d8f4 (17:58f4)
+ db $08 ; asm
+ ld hl, SilphCo9TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo9Text3: ; 5d8fe (17:58fe)
+ db $08 ; asm
+ ld hl, SilphCo9TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo9Text4: ; 5d908 (17:5908)
+ db $08 ; asm
+ ld hl, SilphCo9TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo9BattleText1: ; 5d912 (17:5912)
+ TX_FAR _SilphCo9BattleText1
+ db "@"
+
+SilphCo9EndBattleText1: ; 5d917 (17:5917)
+ TX_FAR _SilphCo9EndBattleText1
+ db "@"
+
+SilphCo9AfterBattleText1: ; 5d91c (17:591c)
+ TX_FAR _SilphCo9AfterBattleText1
+ db "@"
+
+SilphCo9BattleText2: ; 5d921 (17:5921)
+ TX_FAR _SilphCo9BattleText2
+ db "@"
+
+SilphCo9EndBattleText2: ; 5d926 (17:5926)
+ TX_FAR _SilphCo9EndBattleText2
+ db "@"
+
+SilphCo9AfterBattleText2: ; 5d92b (17:592b)
+ TX_FAR _SilphCo9AfterBattleText2
+ db "@"
+
+SilphCo9BattleText3: ; 5d930 (17:5930)
+ TX_FAR _SilphCo9BattleText3
+ db "@"
+
+SilphCo9EndBattleText3: ; 5d935 (17:5935)
+ TX_FAR _SilphCo9EndBattleText3
+ db "@"
+
+SilphCo9AfterBattleText3: ; 5d93a (17:593a)
+ TX_FAR _SilphCo9AfterBattleText3
+ db "@"
diff --git a/scripts/silphcoelevator.asm b/scripts/silphcoelevator.asm
new file mode 100755
index 00000000..c6442ca9
--- /dev/null
+++ b/scripts/silphcoelevator.asm
@@ -0,0 +1,78 @@
+SilphCoElevatorScript: ; 457c0 (11:57c0)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, SilphCoElevatorScript_457dc
+ pop hl
+ bit 7, [hl]
+ res 7, [hl]
+ call nz, SilphCoElevatorScript_45827
+ xor a
+ ld [$cf0c], a
+ inc a
+ ld [$cc3c], a
+ ret
+
+SilphCoElevatorScript_457dc: ; 457dc (11:57dc)
+ ld hl, $d3af
+ ld a, [$d73b]
+ ld b, a
+ ld a, [$d73c]
+ ld c, a
+ call SilphCoElevatorScript_457ea
+
+SilphCoElevatorScript_457ea: ; 457ea (11:57ea)
+ inc hl
+ inc hl
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ret
+
+SilphCoElevatorScript_457f1: ; 457f1 (11:57f1)
+ ld hl, SilphCoElavatorFloors ; $5804
+ call LoadItemList
+ ld hl, SilphCoElevatorWarpMaps ; $5811
+ ld de, $cc5b
+ ld bc, $16
+ call CopyData
+ ret
+
+SilphCoElavatorFloors: ; 45804 (11:45804)
+ db $0B ; num elements in list
+ db $56, $57, $58, $59, $5A, $5B, $5C, $5D, $5E, $5F, $60 ; "1F", "2F", "3F", "4F", ... , "11F"
+ db $FF ; terminator
+
+SilphCoElevatorWarpMaps: ; 45811 (11:45811)
+; first byte is warp number
+; second byte is map number
+; These specify where the player goes after getting out of the elevator.
+ db $03, SILPH_CO_1F
+ db $02, SILPH_CO_2F
+ db $02, SILPH_CO_3F
+ db $02, SILPH_CO_4F
+ db $02, SILPH_CO_5F
+ db $02, SILPH_CO_6F
+ db $02, SILPH_CO_7F
+ db $02, SILPH_CO_8F
+ db $02, SILPH_CO_9F
+ db $02, SILPH_CO_10F
+ db $01, SILPH_CO_11F
+
+SilphCoElevatorScript_45827: ; 45827 (11:5827)
+ call Delay3
+ callba ShakeElevator
+ ret
+
+SilphCoElevatorTextPointers: ; 45833 (11:5833)
+ dw SilphCoElevatorText1
+
+SilphCoElevatorText1: ; 45835 (11:5835)
+ db $08 ; asm
+ call SilphCoElevatorScript_457f1
+ ld hl, SilphCoElevatorWarpMaps ; $5811
+ ld a, $61
+ call Predef
+ jp TextScriptEnd
diff --git a/scripts/ssanne1.asm b/scripts/ssanne1.asm
new file mode 100755
index 00000000..4814dfe9
--- /dev/null
+++ b/scripts/ssanne1.asm
@@ -0,0 +1,15 @@
+SSAnne1Script: ; 61265 (18:5265)
+ call EnableAutoTextBoxDrawing
+ ret
+
+SSAnne1TextPointers: ; 61269 (18:5269)
+ dw SSAnne1Text1
+ dw SSAnne1Text2
+
+SSAnne1Text1: ; 6126d (18:526d)
+ TX_FAR _SSAnne1Text1
+ db "@"
+
+SSAnne1Text2: ; 61272 (18:5272)
+ TX_FAR _SSAnne1Text2
+ db "@"
diff --git a/scripts/ssanne10.asm b/scripts/ssanne10.asm
new file mode 100755
index 00000000..eaef6de3
--- /dev/null
+++ b/scripts/ssanne10.asm
@@ -0,0 +1,202 @@
+SSAnne10Script: ; 61d55 (18:5d55)
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne10TrainerHeaders
+ ld de, SSAnne10ScriptPointers
+ ld a, [W_SSANNE10CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SSANNE10CURSCRIPT], a
+ ret
+
+SSAnne10ScriptPointers: ; 61d68 (18:5d68)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SSAnne10TextPointers: ; 61d6e (18:5d6e)
+ dw SSAnne10Text1
+ dw SSAnne10Text2
+ dw SSAnne10Text3
+ dw SSAnne10Text4
+ dw SSAnne10Text5
+ dw SSAnne10Text6
+ dw SSAnne10Text7
+ dw SSAnne10Text8
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+
+SSAnne10TrainerHeaders: ; 61d84 (18:5d84)
+SSAnne10TrainerHeader0: ; 61d84 (18:5d84)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d809 ; flag's byte
+ dw SSAnne10BattleText1 ; 0x5e16 TextBeforeBattle
+ dw SSAnne10AfterBattleText1 ; 0x5e20 TextAfterBattle
+ dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle
+ dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle
+
+SSAnne10TrainerHeader1: ; 61d90 (18:5d90)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d809 ; flag's byte
+ dw SSAnne10BattleText2 ; 0x5e25 TextBeforeBattle
+ dw SSAnne10AfterBattleText2 ; 0x5e2f TextAfterBattle
+ dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle
+ dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle
+
+SSAnne10TrainerHeader2: ; 61d9c (18:5d9c)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d809 ; flag's byte
+ dw SSAnne10BattleText3 ; 0x5e34 TextBeforeBattle
+ dw SSAnne10AfterBattleText3 ; 0x5e3e TextAfterBattle
+ dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle
+ dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle
+
+SSAnne10TrainerHeader3: ; 61da8 (18:5da8)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d809 ; flag's byte
+ dw SSAnne10BattleText4 ; 0x5e43 TextBeforeBattle
+ dw SSAnne10AfterBattleText4 ; 0x5e4d TextAfterBattle
+ dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle
+ dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle
+
+SSAnne10TrainerHeader4: ; 61db4 (18:5db4)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d809 ; flag's byte
+ dw SSAnne10BattleText5 ; 0x5e52 TextBeforeBattle
+ dw SSAnne10AfterBattleText5 ; 0x5e5c TextAfterBattle
+ dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle
+ dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle
+
+SSAnne10TrainerHeader5: ; 61dc0 (18:5dc0)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d809 ; flag's byte
+ dw SSAnne10BattleText6 ; 0x5e61 TextBeforeBattle
+ dw SSAnne10AfterBattleText6 ; 0x5e6b TextAfterBattle
+ dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle
+ dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle
+
+ db $ff
+
+SSAnne10Text1: ; 61dcd (18:5dcd)
+ db $08 ; asm
+ ld hl, SSAnne10TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text2: ; 61dd7 (18:5dd7)
+ db $08 ; asm
+ ld hl, SSAnne10TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text3: ; 61de1 (18:5de1)
+ db $08 ; asm
+ ld hl, SSAnne10TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text4: ; 61deb (18:5deb)
+ db $08 ; asm
+ ld hl, SSAnne10TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text5: ; 61df5 (18:5df5)
+ db $08 ; asm
+ ld hl, SSAnne10TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text6: ; 61dff (18:5dff)
+ db $08 ; asm
+ ld hl, SSAnne10TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text8: ; 61e09 (18:5e09)
+ TX_FAR _SSAnne10Text8
+ db $8 ; 0x61e0d
+ ld a, MACHOKE
+ call PlayCry
+ jp TextScriptEnd
+
+SSAnne10BattleText1: ; 61e16 (18:5e16)
+ TX_FAR _SSAnne10BattleText1
+ db "@"
+
+SSAnne10EndBattleText1: ; 61e1b (18:5e1b)
+ TX_FAR _SSAnne10EndBattleText1
+ db "@"
+
+SSAnne10AfterBattleText1: ; 61e20 (18:5e20)
+ TX_FAR _SSAnne10AfterBattleText1
+ db "@"
+
+SSAnne10BattleText2: ; 61e25 (18:5e25)
+ TX_FAR _SSAnne10BattleText2
+ db "@"
+
+SSAnne10EndBattleText2: ; 61e2a (18:5e2a)
+ TX_FAR _SSAnne10EndBattleText2
+ db "@"
+
+SSAnne10AfterBattleText2: ; 61e2f (18:5e2f)
+ TX_FAR _SSAnne10AfterBattleText2
+ db "@"
+
+SSAnne10BattleText3: ; 61e34 (18:5e34)
+ TX_FAR _SSAnne10BattleText3
+ db "@"
+
+SSAnne10EndBattleText3: ; 61e39 (18:5e39)
+ TX_FAR _SSAnne10EndBattleText3
+ db "@"
+
+SSAnne10AfterBattleText3: ; 61e3e (18:5e3e)
+ TX_FAR _SSAnne10AfterBattleText3
+ db "@"
+
+SSAnne10BattleText4: ; 61e43 (18:5e43)
+ TX_FAR _SSAnne10BattleText4
+ db "@"
+
+SSAnne10EndBattleText4: ; 61e48 (18:5e48)
+ TX_FAR _SSAnne10EndBattleText4
+ db "@"
+
+SSAnne10AfterBattleText4: ; 61e4d (18:5e4d)
+ TX_FAR _SSAnne10AfterBattleText4
+ db "@"
+
+SSAnne10BattleText5: ; 61e52 (18:5e52)
+ TX_FAR _SSAnne10BattleText5
+ db "@"
+
+SSAnne10EndBattleText5: ; 61e57 (18:5e57)
+ TX_FAR _SSAnne10EndBattleText5
+ db "@"
+
+SSAnne10AfterBattleText5: ; 61e5c (18:5e5c)
+ TX_FAR _SSAnne10AfterBattleText5
+ db "@"
+
+SSAnne10BattleText6: ; 61e61 (18:5e61)
+ TX_FAR _SSAnne10BattleText6
+ db "@"
+
+SSAnne10EndBattleText6: ; 61e66 (18:5e66)
+ TX_FAR _SSAnne10EndBattleText6
+ db "@"
+
+SSAnne10AfterBattleText6: ; 61e6b (18:5e6b)
+ TX_FAR _SSAnne10AfterBattleText6
+ db "@"
+
+SSAnne10Text7: ; 61e70 (18:5e70)
+ TX_FAR _SSAnne10Text7
+ db "@"
diff --git a/scripts/ssanne2.asm b/scripts/ssanne2.asm
new file mode 100755
index 00000000..3ff41c1d
--- /dev/null
+++ b/scripts/ssanne2.asm
@@ -0,0 +1,208 @@
+SSAnne2Script: ; 6139f (18:539f)
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne2ScriptPointers
+ ld a, [W_SSANNE2CURSCRIPT]
+ jp CallFunctionInTable
+
+SSAnne2Script_613ab: ; 613ab (18:53ab)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_SSANNE2CURSCRIPT], a
+ ret
+
+SSAnne2ScriptPointers: ; 613b3 (18:53b3)
+ dw SSAnne2Script0
+ dw SSAnne2Script1
+ dw SSAnne2Script2
+ dw SSAnne2Script3
+ dw SSAnne2Script4
+
+SSAnne2Script4: ; 613bd (18:53bd)
+ ret
+
+SSAnne2Script0: ; 613be (18:53be)
+ ld hl, CoordsData_61411 ; $5411
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, [$cd3d]
+ ld [$ffdb], a
+ ld a, $71
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ call Delay3
+ ld a, $2
+ ld [$ff8c], a
+ call SetSpriteMovementBytesToFF
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [$ffdb]
+ cp $2
+ jr nz, .asm_61400 ; 0x613f9 $5
+ ld de, MovementData_6140c
+ jr .asm_61403 ; 0x613fe $3
+.asm_61400
+ ld de, MovementData_6140d
+.asm_61403
+ call MoveSprite
+ ld a, $1
+ ld [W_SSANNE2CURSCRIPT], a
+ ret
+
+MovementData_6140c: ; 6140c (18:540c)
+ db $00
+
+MovementData_6140d: ; 6140d (18:540d)
+ db $00,$00,$00,$FF
+
+CoordsData_61411: ; 61411 (18:5411)
+ db $08,$24,$08,$25,$FF
+
+SSAnne2Script_61416: ; 61416 (18:5416)
+ ld a, [W_XCOORD] ; $d362
+ cp $25
+ jr nz, .asm_61426
+ ld a, $2
+ ld [$d528], a
+ ld a, $c
+ jr .asm_61427
+.asm_61426
+ xor a
+.asm_61427
+ ld [$ff8d], a
+ ld a, $2
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp Func_34a6
+
+SSAnne2Script1: ; 61430 (18:5430)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ call SSAnne2Script_61416
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $2
+ ld [$ff8c], a
+ call DisplayTextID
+ call Delay3
+ ld a, SONY2 + $c8
+ ld [W_CUROPPONENT], a
+
+ ; select which team to use during the encounter
+ ld a, [W_RIVALSTARTER]
+ cp SQUIRTLE
+ jr nz, .NotSquirtle ; 0x61451 $4
+ ld a, $1
+ jr .done
+.NotSquirtle
+ cp BULBASAUR
+ jr nz, .Charmander ; 0x61459 $4
+ ld a, $2
+ jr .done
+.Charmander
+ ld a, $3
+.done
+ ld [W_TRAINERNO], a
+
+ call SSAnne2Script_61416
+ ld a, $2
+ ld [W_SSANNE2CURSCRIPT], a
+ ret
+
+SSAnne2Script2: ; 6146d (18:546d)
+ ld a, [$d057]
+ cp $ff
+ jp z, SSAnne2Script_613ab
+ call SSAnne2Script_61416
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $3
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, $2
+ ld [$ff8c], a
+ call SetSpriteMovementBytesToFF
+ ld a, [W_XCOORD]
+ cp $25
+ jr nz, .asm_61497 ; 0x61490 $5
+ ld de, MovementData_614b9
+ jr .asm_6149a ; 0x61495 $3
+.asm_61497
+ ld de, MovementData_614b7
+.asm_6149a
+ ld a, $2
+ ld [$ff8c], a
+ call MoveSprite
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ callba Music_RivalAlternateStart
+ ld a, $3
+ ld [W_SSANNE2CURSCRIPT], a
+ ret
+
+MovementData_614b7: ; 614b7 (18:54b7)
+ db $C0,$00
+
+MovementData_614b9: ; 614b9 (18:54b9)
+ db $00,$00,$00,$00,$FF
+
+SSAnne2Script3: ; 614be (18:54be)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $71
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ call Func_2307
+ ld a, $4
+ ld [W_SSANNE2CURSCRIPT], a
+ ret
+
+SSAnne2TextPointers: ; 614db (18:54db)
+ dw SSAnne2Text1
+ dw SSAnne2Text2
+ dw SSAnne2Text3
+
+SSAnne2Text1: ; 614e1 (18:54e1)
+ TX_FAR _SSAnne2Text1
+ db "@"
+
+SSAnne2Text2: ; 614e6 (18:54e6)
+ db $8
+ ld hl, SSAnneRivalBeforeBattleText
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SSAnneRivalDefeatedText
+ ld de, SSAnneRivalWonText
+ call PreBattleSaveRegisters
+ jp TextScriptEnd
+
+SSAnneRivalBeforeBattleText: ; 61500 (18:5500)
+ TX_FAR _SSAnneRivalBeforeBattleText
+ db "@"
+
+SSAnneRivalDefeatedText: ; 61505 (18:5505)
+ TX_FAR _SSAnneRivalDefeatedText
+ db "@"
+
+SSAnneRivalWonText: ; 6150a (18:550a)
+ TX_FAR _SSAnneRivalWonText
+ db "@"
+
+SSAnne2Text3: ; 6150f (18:550f)
+ TX_FAR _SSAnneRivalCaptainText
+ db "@"
diff --git a/scripts/ssanne3.asm b/scripts/ssanne3.asm
new file mode 100755
index 00000000..56cbdd9c
--- /dev/null
+++ b/scripts/ssanne3.asm
@@ -0,0 +1,9 @@
+SSAnne3Script: ; 44932 (11:4932)
+ jp EnableAutoTextBoxDrawing
+
+SSAnne3TextPointers: ; 44935 (11:4935)
+ dw SSAnne3Text1
+
+SSAnne3Text1: ; 44937 (11:4937)
+ TX_FAR _SSAnne3Text1
+ db "@"
diff --git a/scripts/ssanne4.asm b/scripts/ssanne4.asm
new file mode 100755
index 00000000..6cc0e7b9
--- /dev/null
+++ b/scripts/ssanne4.asm
@@ -0,0 +1,5 @@
+SSAnne4Script: ; 6162e (18:562e)
+ jp EnableAutoTextBoxDrawing
+
+SSAnne4TextPointers: ; 61631 (18:5631)
+ db "@"
diff --git a/scripts/ssanne5.asm b/scripts/ssanne5.asm
new file mode 100755
index 00000000..034dd26a
--- /dev/null
+++ b/scripts/ssanne5.asm
@@ -0,0 +1,89 @@
+SSAnne5Script: ; 616ae (18:56ae)
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne5TrainerHeader0 ; $56d1
+ ld de, SSAnne5ScriptPointers
+ ld a, [W_SSANNE5CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SSANNE5CURSCRIPT], a
+ ret
+
+SSAnne5ScriptPointers: ; 616c1 (18:56c1)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SSAnne5TextPointers: ; 616c7 (18:56c7)
+ dw SSAnne5Text1
+ dw SSAnne5Text2
+ dw SSAnne5Text3
+ dw SSAnne5Text4
+ dw SSAnne5Text5
+
+SSAnne5TrainerHeaders: ; 616d1 (18:56d1)
+SSAnne5TrainerHeader0: ; 616d1 (18:56d1)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ff ; flag's byte
+ dw SSAnne5BattleText1 ; 0x5703 TextBeforeBattle
+ dw SSAnne5AfterBattleText1 ; 0x570d TextAfterBattle
+ dw SSAnne5EndBattleText1 ; 0x5708 TextEndBattle
+ dw SSAnne5EndBattleText1 ; 0x5708 TextEndBattle
+
+SSAnne5TrainerHeader1: ; 616dd (18:56dd)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ff ; flag's byte
+ dw SSAnne5BattleText2 ; 0x571c TextBeforeBattle
+ dw SSAnne5AfterBattleText2 ; 0x5726 TextAfterBattle
+ dw SSAnne5EndBattleText2 ; 0x5721 TextEndBattle
+ dw SSAnne5EndBattleText2 ; 0x5721 TextEndBattle
+
+ db $ff
+
+SSAnne5Text1: ; 616ea (18:56ea)
+ TX_FAR _SSAnne5Text1
+ db "@"
+
+SSAnne5Text2: ; 616ef (18:56ef)
+ TX_FAR _SSAnne5Text2
+ db "@"
+
+SSAnne5Text3: ; 616f4 (18:56f4)
+ TX_FAR _SSAnne5Text3
+ db "@"
+
+SSAnne5Text4: ; 616f9 (18:56f9)
+ db $08 ; asm
+ ld hl, SSAnne5TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne5BattleText1: ; 61703 (18:5703)
+ TX_FAR _SSAnne5BattleText1
+ db "@"
+
+SSAnne5EndBattleText1: ; 61708 (18:5708)
+ TX_FAR _SSAnne5EndBattleText1
+ db "@"
+
+SSAnne5AfterBattleText1: ; 6170d (18:570d)
+ TX_FAR _SSAnne5AfterBattleText1
+ db "@"
+
+SSAnne5Text5: ; 61712 (18:5712)
+ db $08 ; asm
+ ld hl, SSAnne5TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne5BattleText2: ; 6171c (18:571c)
+ TX_FAR _SSAnne5BattleText2
+ db "@"
+
+SSAnne5EndBattleText2: ; 61721 (18:5721)
+ TX_FAR _SSAnne5EndBattleText2
+ db "@"
+
+SSAnne5AfterBattleText2: ; 61726 (18:5726)
+ TX_FAR _SSAnne5AfterBattleText2
+ db "@"
diff --git a/scripts/ssanne6.asm b/scripts/ssanne6.asm
new file mode 100755
index 00000000..d3ec191f
--- /dev/null
+++ b/scripts/ssanne6.asm
@@ -0,0 +1,72 @@
+SSAnne6Script: ; 617b3 (18:57b3)
+ call EnableAutoTextBoxDrawing
+ ret
+
+SSAnne6TextPointers: ; 617b7 (18:57b7)
+ dw SSAnne6Text1
+ dw SSAnne6Text2
+ dw SSAnne6Text3
+ dw SSAnne6Text4
+ dw SSAnne6Text5
+ dw SSAnne6Text6
+ dw SSAnne6Text7
+
+SSAnne6Text1: ; 617c5 (18:57c5)
+ TX_FAR _SSAnne6Text1
+ db "@"
+
+SSAnne6Text2: ; 617ca (18:57ca)
+ TX_FAR _SSAnne6Text2
+ db "@"
+
+SSAnne6Text3: ; 617cf (18:57cf)
+ TX_FAR _SSAnne6Text3
+ db "@"
+
+SSAnne6Text4: ; 617d4 (18:57d4)
+ TX_FAR _SSAnne6Text4
+ db "@"
+
+SSAnne6Text5: ; 617d9 (18:57d9)
+ TX_FAR _SSAnne6Text5
+ db "@"
+
+SSAnne6Text6: ; 617de (18:57de)
+ TX_FAR _SSAnne6Text6
+ db "@"
+
+SSAnne6Text7: ; 617e3 (18:57e3)
+ db $08 ; asm
+ ld hl, SSAnne6Text_61807
+ call PrintText
+ ldh a, [$d3]
+ bit 7, a
+ jr z, .asm_93eb1 ; 0x617ee
+ ld hl, SSAnne6Text_6180c
+ jr .asm_63292 ; 0x617f3
+.asm_93eb1 ; 0x617f5
+ bit 4, a
+ jr z, .asm_7436c ; 0x617f7
+ ld hl, SSAnne6Text_61811
+ jr .asm_63292 ; 0x617fc
+.asm_7436c ; 0x617fe
+ ld hl, SSAnne6Text_61816
+.asm_63292 ; 0x61801
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne6Text_61807: ; 61807 (18:5807)
+ TX_FAR _SSAnne6Text_61807
+ db "@"
+
+SSAnne6Text_6180c: ; 6180c (18:580c)
+ TX_FAR _SSAnne6Text_6180c
+ db "@"
+
+SSAnne6Text_61811: ; 61811 (18:5811)
+ TX_FAR _SSAnne6Text_61811
+ db "@"
+
+SSAnne6Text_61816: ; 61816 (18:5816)
+ TX_FAR _SSAnne6Text_61816
+ db "@"
diff --git a/scripts/ssanne7.asm b/scripts/ssanne7.asm
new file mode 100755
index 00000000..8e88417f
--- /dev/null
+++ b/scripts/ssanne7.asm
@@ -0,0 +1,96 @@
+SSAnne7Script: ; 61895 (18:5895)
+ call SSAnne7Script_6189b
+ jp EnableAutoTextBoxDrawing
+
+SSAnne7Script_6189b: ; 6189b (18:589b)
+ ld a, [$d803]
+ bit 1, a
+ ret nz
+ ld hl, $d72d
+ set 5, [hl]
+ ret
+
+SSAnne7TextPointers: ; 618a7 (18:58a7)
+ dw SSAnne7Text1
+ dw SSAnne7Text2
+ dw SSAnne7Text3
+
+SSAnne7Text1: ; 618ad (18:58ad)
+ db $08 ; asm
+ ld a, [$d803]
+ bit 0, a
+ jr nz, .asm_797c4 ; 0x618b3
+ ld hl, SSAnne7RubText
+ call PrintText
+ ld hl, ReceivingHM01Text
+ call PrintText
+ ld bc, (HM_01 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedHM01Text
+ call PrintText
+ ld hl, $d803
+ set 0, [hl]
+ jr .asm_0faf5 ; 0x618d4
+.BagFull
+ ld hl, HM01NoRoomText
+ call PrintText
+ ld hl, $d72d
+ set 5, [hl]
+ jr .asm_0faf5 ; 0x618e1
+.asm_797c4 ; 0x618e3
+ ld hl, SSAnne7Text_61932
+ call PrintText
+.asm_0faf5 ; 0x618e9
+ jp TextScriptEnd
+
+SSAnne7RubText: ; 618ec (18:58ec)
+ TX_FAR _SSAnne7RubText
+ db $8
+ ld a, [$c0ef]
+ cp $1f
+ ld [$c0f0], a
+ jr nz, .asm_61908 ; 0x618f9 $d
+ ld a, $ff
+ ld [$c0ee], a
+ call PlaySound
+ ld a, Bank(Func_9876)
+ ld [$c0ef], a
+.asm_61908
+ ld a, MUSIC_PKMN_HEALED
+ ld [$c0ee], a
+ call PlaySound
+.asm_61910
+ ld a, [$c026]
+ cp MUSIC_PKMN_HEALED
+ jr z, .asm_61910 ; 0x61915 $f9
+ call Func_2307
+ ld hl, $d803
+ set 1, [hl]
+ ld hl, $d72d
+ res 5, [hl]
+ jp TextScriptEnd
+
+ReceivingHM01Text: ; 61927 (18:5927)
+ TX_FAR _ReceivingHM01Text
+ db "@"
+
+ReceivedHM01Text: ; 6192c (18:592c)
+ TX_FAR _ReceivedHM01Text
+ db $11, "@"
+
+SSAnne7Text_61932: ; 61932 (18:5932)
+ TX_FAR _SSAnne7Text_61932
+ db "@"
+
+HM01NoRoomText: ; 61937 (18:5937)
+ TX_FAR _HM01NoRoomText
+ db "@"
+
+SSAnne7Text2: ; 6193c (18:593c)
+ TX_FAR _SSAnne7Text2
+ db "@"
+
+SSAnne7Text3: ; 61941 (18:5941)
+ TX_FAR _SSAnne7Text3
+ db "@"
diff --git a/scripts/ssanne8.asm b/scripts/ssanne8.asm
new file mode 100755
index 00000000..31feb058
--- /dev/null
+++ b/scripts/ssanne8.asm
@@ -0,0 +1,164 @@
+SSAnne8Script: ; 61976 (18:5976)
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne8TrainerHeaders
+ ld de, SSAnne8ScriptPointers
+ ld a, [W_SSANNE8CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SSANNE8CURSCRIPT], a
+ ret
+
+SSAnne8ScriptPointers: ; 61989 (18:5989)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SSAnne8TextPointers: ; 6198f (18:598f)
+ dw SSAnne8Text1
+ dw SSAnne8Text2
+ dw SSAnne8Text3
+ dw SSAnne8Text4
+ dw SSAnne8Text5
+ dw SSAnne8Text6
+ dw SSAnne8Text7
+ dw SSAnne8Text8
+ dw SSAnne8Text9
+ dw Predef5CText
+ dw SSAnne8Text11
+
+SSAnne8TrainerHeaders: ; 619a5 (18:59a5)
+SSAnne8TrainerHeader0: ; 619a5 (18:59a5)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d805 ; flag's byte
+ dw SSAnne8BattleText1 ; 0x5a0b TextBeforeBattle
+ dw SSAnne8AfterBattleText1 ; 0x5a15 TextAfterBattle
+ dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle
+ dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle
+
+SSAnne8TrainerHeader1: ; 619b1 (18:59b1)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d805 ; flag's byte
+ dw SSAnne8BattleText2 ; 0x5a1a TextBeforeBattle
+ dw SSAnne8AfterBattleText2 ; 0x5a24 TextAfterBattle
+ dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle
+ dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle
+
+SSAnne8TrainerHeader2: ; 619bd (18:59bd)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d805 ; flag's byte
+ dw SSAnne8BattleText3 ; 0x5a29 TextBeforeBattle
+ dw SSAnne8AfterBattleText3 ; 0x5a33 TextAfterBattle
+ dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle
+ dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle
+
+SSAnne8TrainerHeader3: ; 619c9 (18:59c9)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d805 ; flag's byte
+ dw SSAnne8BattleText4 ; 0x5a38 TextBeforeBattle
+ dw SSAnne8AfterBattleText4 ; 0x5a42 TextAfterBattle
+ dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle
+ dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle
+
+ db $ff
+
+SSAnne8Text1: ; 619d6 (18:59d6)
+ db $08 ; asm
+ ld hl, SSAnne8TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text2: ; 619e0 (18:59e0)
+ db $08 ; asm
+ ld hl, SSAnne8TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text3: ; 619ea (18:59ea)
+ db $08 ; asm
+ ld hl, SSAnne8TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text4: ; 619f4 (18:59f4)
+ db $08 ; asm
+ ld hl, SSAnne8TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text8: ; 619fe (18:59fe)
+ TX_FAR _SSAnne8Text8
+ db $08 ; asm
+ ld a, WIGGLYTUFF
+ call PlayCry
+ jp TextScriptEnd
+
+SSAnne8BattleText1: ; 61a0b (18:5a0b)
+ TX_FAR _SSAnne8BattleText1
+ db "@"
+
+SSAnne8EndBattleText1: ; 61a10 (18:5a10)
+ TX_FAR _SSAnne8EndBattleText1
+ db "@"
+
+SSAnne8AfterBattleText1: ; 61a15 (18:5a15)
+ TX_FAR _SSAnne8AfterBattleText1
+ db "@"
+
+SSAnne8BattleText2: ; 61a1a (18:5a1a)
+ TX_FAR _SSAnne8BattleText2
+ db "@"
+
+SSAnne8EndBattleText2: ; 61a1f (18:5a1f)
+ TX_FAR _SSAnne8EndBattleText2
+ db "@"
+
+SSAnne8Text_61a24: ; 61a24 (18:5a24)
+ TX_FAR _SSAnne8Text_61a24
+ db "@"
+
+SSAnne8BattleText3: ; 61a29 (18:5a29)
+ TX_FAR _SSAnne8BattleText3
+ db "@"
+
+SSAnne8EndBattleText3: ; 61a2e (18:5a2e)
+ TX_FAR _SSAnne8EndBattleText3
+ db "@"
+
+SSAnne8AfterBattleText3: ; 61a33 (18:5a33)
+ TX_FAR _SSAnne8AfterBattleText3
+ db "@"
+
+SSAnne8BattleText4: ; 61a38 (18:5a38)
+ TX_FAR _SSAnne8BattleText4
+ db "@"
+
+SSAnne8EndBattleText4: ; 61a3d (18:5a3d)
+ TX_FAR _SSAnne8EndBattleText4
+ db "@"
+
+SSAnne8AfterBattleText4: ; 61a42 (18:5a42)
+ TX_FAR _SSAnne8AfterBattleText4
+ db "@"
+
+SSAnne8Text5: ; 61a47 (18:5a47)
+ TX_FAR _SSAnne8Text5
+ db "@"
+
+SSAnne8Text6: ; 61a4c (18:5a4c)
+ TX_FAR _SSAnne8Text6
+ db "@"
+
+SSAnne8Text7: ; 61a51 (18:5a51)
+ TX_FAR _SSAnne8Text7
+ db "@"
+
+SSAnne8Text9: ; 61a56 (18:5a56)
+ TX_FAR _SSAnne8Text9
+ db "@"
+
+SSAnne8Text11: ; 61a5b (18:5a5b)
+ TX_FAR _SSAnne8Text11
+ db "@"
diff --git a/scripts/ssanne9.asm b/scripts/ssanne9.asm
new file mode 100755
index 00000000..9b055e3f
--- /dev/null
+++ b/scripts/ssanne9.asm
@@ -0,0 +1,216 @@
+SSAnne9Script: ; 61b4b (18:5b4b)
+ ld a, $1
+ ld [$cf0c], a
+ xor a
+ ld [$cc3c], a
+ ld hl, SSAnne9TrainerHeaders
+ ld de, SSAnne9ScriptPointers
+ ld a, [W_SSANNE9CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_SSANNE9CURSCRIPT], a
+ ret
+
+SSAnne9ScriptPointers: ; 61b64 (18:5b64)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+SSAnne9TextPointers: ; 61b6a (18:5b6a)
+ dw SSAnne9Text1
+ dw SSAnne9Text2
+ dw SSAnne9Text3
+ dw SSAnne9Text4
+ dw SSAnne9Text5
+ dw Predef5CText
+ dw SSAnne9Text7
+ dw SSAnne9Text8
+ dw Predef5CText
+ dw SSAnne9Text10
+ dw SSAnne9Text11
+ dw SSAnne9Text12
+ dw SSAnne9Text13
+
+SSAnne9TrainerHeaders: ; 61b84 (18:5b84)
+SSAnne9TrainerHeader0: ; 61b84 (18:5b84)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d807 ; flag's byte
+ dw SSAnne9BattleText1 ; 0x5c51 TextBeforeBattle
+ dw SSAnne9AfterBattleText1 ; 0x5c5b TextAfterBattle
+ dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle
+ dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle
+
+SSAnne9TrainerHeader1: ; 61b90 (18:5b90)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d807 ; flag's byte
+ dw SSAnne9BattleText2 ; 0x5c60 TextBeforeBattle
+ dw SSAnne9AfterBattleText2 ; 0x5c6a TextAfterBattle
+ dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle
+ dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle
+
+SSAnne9TrainerHeader2: ; 61b9c (18:5b9c)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d807 ; flag's byte
+ dw SSAnne9BattleText3 ; 0x5c6f TextBeforeBattle
+ dw SSAnne9AfterBattleText3 ; 0x5c79 TextAfterBattle
+ dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle
+ dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle
+
+SSAnne9TrainerHeader3: ; 61ba8 (18:5ba8)
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d807 ; flag's byte
+ dw SSAnne9BattleText4 ; 0x5c7e TextBeforeBattle
+ dw SSAnne9AfterBattleText4 ; 0x5c88 TextAfterBattle
+ dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle
+ dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle
+
+ db $ff
+
+SSAnne9Text1: ; 61bb5 (18:5bb5)
+ db $08 ; asm
+ ld hl, SSAnne9TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text2: ; 61bbf (18:5bbf)
+ db $08 ; asm
+ ld hl, SSAnne9TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text3: ; 61bc9 (18:5bc9)
+ db $08 ; asm
+ ld hl, SSAnne9TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text4: ; 61bd3 (18:5bd3)
+ db $08 ; asm
+ ld hl, SSAnne9TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text5: ; 61bdd (18:5bdd)
+ db $08 ; asm
+ call SaveScreenTilesToBuffer1
+ ld hl, SSAnne9Text_61bf2
+ call PrintText
+ call LoadScreenTilesFromBuffer1
+ ld a, SNORLAX
+ call DisplayPokedex
+ jp TextScriptEnd
+
+SSAnne9Text_61bf2: ; 61bf2 (18:5bf2)
+ TX_FAR _SSAnne9Text_61bf2
+ db "@"
+
+SSAnne9Text7: ; 61bf7 (18:5bf7)
+ db $08 ; asm
+ ld hl, SSAnne9Text_61c01
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c01: ; 61c01 (18:5c01)
+ TX_FAR _SSAnne9Text_61c01
+ db "@"
+
+SSAnne9Text8: ; 61c06 (18:5c06)
+ db $08 ; asm
+ ld hl, SSAnne9Text_61c10
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c10: ; 61c10 (18:5c10)
+ TX_FAR _SSAnne9Text_61c10
+ db "@"
+
+SSAnne9Text10: ; 61c15 (18:5c15)
+ db $08 ; asm
+ ld hl, SSAnne9Text_61c1f
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c1f: ; 61c1f (18:5c1f)
+ TX_FAR _SSAnne9Text_61c1f
+ db "@"
+
+SSAnne9Text11: ; 61c24 (18:5c24)
+ db $08 ; asm
+ ld hl, SSAnne9Text_61c2e
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c2e: ; 61c2e (18:5c2e)
+ TX_FAR _SSAnne9Text_61c2e
+ db "@"
+
+SSAnne9Text12: ; 61c33 (18:5c33)
+ db $08 ; asm
+ ld hl, SSAnne9Text_61c3d
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c3d: ; 61c3d (18:5c3d)
+ TX_FAR _SSAnne9Text_61c3d
+ db "@"
+
+SSAnne9Text13: ; 61c42 (18:5c42)
+ db $08 ; asm
+ ld hl, SSAnne9Text_61c4c
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c4c: ; 61c4c (18:5c4c)
+ TX_FAR _SSAnne9Text_61c4c
+ db "@"
+
+SSAnne9BattleText1: ; 61c51 (18:5c51)
+ TX_FAR _SSAnne9BattleText1
+ db "@"
+
+SSAnne9EndBattleText1: ; 61c56 (18:5c56)
+ TX_FAR _SSAnne9EndBattleText1
+ db "@"
+
+SSAnne9AfterBattleText1: ; 61c5b (18:5c5b)
+ TX_FAR _SSAnne9AfterBattleText1
+ db "@"
+
+SSAnne9BattleText2: ; 61c60 (18:5c60)
+ TX_FAR _SSAnne9BattleText2
+ db "@"
+
+SSAnne9EndBattleText2: ; 61c65 (18:5c65)
+ TX_FAR _SSAnne9EndBattleText2
+ db "@"
+
+SSAnne9AfterBattleText2: ; 61c6a (18:5c6a)
+ TX_FAR _SSAnne9AfterBattleText2
+ db "@"
+
+SSAnne9BattleText3: ; 61c6f (18:5c6f)
+ TX_FAR _SSAnne9BattleText3
+ db "@"
+
+SSAnne9EndBattleText3: ; 61c74 (18:5c74)
+ TX_FAR _SSAnne9EndBattleText3
+ db "@"
+
+SSAnne9AfterBattleText3: ; 61c79 (18:5c79)
+ TX_FAR _SSAnne9AfterBattleText3
+ db "@"
+
+SSAnne9BattleText4: ; 61c7e (18:5c7e)
+ TX_FAR _SSAnne9BattleText4
+ db "@"
+
+SSAnne9EndBattleText4: ; 61c83 (18:5c83)
+ TX_FAR _SSAnne9EndBattleText4
+ db "@"
+
+SSAnne9AfterBattleText4: ; 61c88 (18:5c88)
+ TX_FAR _SSAnne9AfterBattleText4
+ db "@"
diff --git a/scripts/tradecenterm.asm b/scripts/tradecenterm.asm
new file mode 100755
index 00000000..662a1df7
--- /dev/null
+++ b/scripts/tradecenterm.asm
@@ -0,0 +1,9 @@
+TradeCenterMScript: ; 4fd7d (13:7d7d)
+ jp BattleCenterMScript
+
+TradeCenterMTextPointers: ; 4fd80 (13:7d80)
+ dw TradeCenterMText1
+
+TradeCenterMText1: ; 4fd82 (13:7d82)
+ TX_FAR _TradeCenterMText1
+ db "@"
diff --git a/scripts/undergroundpathentranceroute5.asm b/scripts/undergroundpathentranceroute5.asm
new file mode 100755
index 00000000..9a437e85
--- /dev/null
+++ b/scripts/undergroundpathentranceroute5.asm
@@ -0,0 +1,19 @@
+UndergroundPathEntranceRoute5Script: ; 5d6a9 (17:56a9)
+ ld a, ROUTE_5
+ ld [wLastMap], a
+ ret
+
+UndergroundPathEntranceRoute5_5d6af: ; 5d6af (17:56af)
+ db "@"
+
+UndergroundPathEntranceRoute5TextPointers: ; 5d6b0 (17:56b0)
+ dw UndergroundPathEntranceRoute5Text1
+
+UndergroundPathEntranceRoute5Text1: ; 5d6b2 (17:56b2)
+ db $08 ; asm
+ ld a, $9
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+ ld hl, UndergroundPathEntranceRoute5_5d6af
+ ret
diff --git a/scripts/undergroundpathentranceroute6.asm b/scripts/undergroundpathentranceroute6.asm
new file mode 100755
index 00000000..6d356fec
--- /dev/null
+++ b/scripts/undergroundpathentranceroute6.asm
@@ -0,0 +1,11 @@
+UndergroundPathEntranceRoute6Script: ; 5d6ef (17:56ef)
+ ld a, ROUTE_6
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathEntranceRoute6TextPointers: ; 5d6f7 (17:56f7)
+ dw UndergroundPathEntranceRoute6Text1
+
+UndergroundPathEntranceRoute6Text1: ; 5d6f9 (17:56f9)
+ TX_FAR _UndergrdTunnelEntRoute6Text1
+ db "@"
diff --git a/scripts/undergroundpathentranceroute7.asm b/scripts/undergroundpathentranceroute7.asm
new file mode 100755
index 00000000..c188a823
--- /dev/null
+++ b/scripts/undergroundpathentranceroute7.asm
@@ -0,0 +1,11 @@
+UndergroundPathEntranceRoute7Script: ; 5d72c (17:572c)
+ ld a, ROUTE_7
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathEntranceRoute7TextPointers: ; 5d734 (17:5734)
+ dw UndergroundPathEntranceRoute7Text1
+
+UndergroundPathEntranceRoute7Text1: ; 5d736 (17:5736)
+ TX_FAR _UndergroundPathEntRoute7Text1
+ db "@"
diff --git a/scripts/undergroundpathentranceroute7copy.asm b/scripts/undergroundpathentranceroute7copy.asm
new file mode 100755
index 00000000..2462a254
--- /dev/null
+++ b/scripts/undergroundpathentranceroute7copy.asm
@@ -0,0 +1,24 @@
+UndergroundPathEntranceRoute7CopyScript: ; 5d769 (17:5769)
+ ld a, ROUTE_7
+ ld [wLastMap], a
+ ret
+
+UndergroundPathEntranceRoute7CopyTextPointers: ; 5d76f (17:576f)
+ dw UnnamedText_5d773
+ dw UnnamedText_5d77d
+
+UnnamedText_5d773: ; 5d773 (17:5773)
+ TX_FAR _UnnamedText_5d773
+ db "@"
+
+UnnamedText_5d778: ; 5d778 (17:5778)
+ TX_FAR _UnnamedText_5d778
+ db "@"
+
+UnnamedText_5d77d: ; 5d77d (17:577d)
+ TX_FAR _UnnamedText_5d77d
+ db "@"
+
+UnnamedText_5d782: ; 5d782 (17:5782)
+ TX_FAR _UnnamedText_5d782
+ db "@"
diff --git a/scripts/undergroundpathentranceroute8.asm b/scripts/undergroundpathentranceroute8.asm
new file mode 100755
index 00000000..873cf902
--- /dev/null
+++ b/scripts/undergroundpathentranceroute8.asm
@@ -0,0 +1,11 @@
+UndergroundPathEntranceRoute8Script: ; 1e289 (7:6289)
+ ld a, ROUTE_8
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathEntranceRoute8TextPointers: ; 1e291 (7:6291)
+ dw UndergroundPathEntranceRoute8Text1
+
+UndergroundPathEntranceRoute8Text1: ; 1e293 (7:6293)
+ TX_FAR _UndergroundPathEntRoute8Text1
+ db "@"
diff --git a/scripts/undergroundpathns.asm b/scripts/undergroundpathns.asm
new file mode 100755
index 00000000..96bf82a6
--- /dev/null
+++ b/scripts/undergroundpathns.asm
@@ -0,0 +1,5 @@
+UndergroundPathNSScript: ; 61f26 (18:5f26)
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathNSTextPointers: ; 61f29 (18:5f29)
+ db "@"
diff --git a/scripts/undergroundpathwe.asm b/scripts/undergroundpathwe.asm
new file mode 100755
index 00000000..f7e3755e
--- /dev/null
+++ b/scripts/undergroundpathwe.asm
@@ -0,0 +1,5 @@
+UndergroundPathWEScript: ; 61f4a (18:5f4a)
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathWETextPointers: ; 61f4d (18:5f4d)
+ db "@"
diff --git a/scripts/unknowndungeon1.asm b/scripts/unknowndungeon1.asm
new file mode 100755
index 00000000..008a7bd7
--- /dev/null
+++ b/scripts/unknowndungeon1.asm
@@ -0,0 +1,7 @@
+UnknownDungeon1Script: ; 74d0c (1d:4d0c)
+ jp EnableAutoTextBoxDrawing
+
+UnknownDungeon1TextPointers: ; 74d0f (1d:4d0f)
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
diff --git a/scripts/unknowndungeon2.asm b/scripts/unknowndungeon2.asm
new file mode 100755
index 00000000..c8249b27
--- /dev/null
+++ b/scripts/unknowndungeon2.asm
@@ -0,0 +1,7 @@
+UnknownDungeon2Script: ; 45e0b (11:5e0b)
+ jp EnableAutoTextBoxDrawing
+
+UnknownDungeon2TextPointers: ; 45e0e (11:5e0e)
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
diff --git a/scripts/unknowndungeon3.asm b/scripts/unknowndungeon3.asm
new file mode 100755
index 00000000..b765ef56
--- /dev/null
+++ b/scripts/unknowndungeon3.asm
@@ -0,0 +1,44 @@
+UnknownDungeon3Script: ; 45ef0 (11:5ef0)
+ call EnableAutoTextBoxDrawing
+ ld hl, UnknownDungeon3TrainerHeaders
+ ld de, UnknownDungeon3ScriptPointers
+ ld a, [W_UNKNOWNDUNGEON3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_UNKNOWNDUNGEON3CURSCRIPT], a
+ ret
+
+UnknownDungeon3ScriptPointers: ; 45f03 (11:5f03)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+UnknownDungeon3TextPointers: ; 45f09 (11:5f09)
+ dw UnknownDungeon3Text1
+ dw Predef5CText
+ dw Predef5CText
+
+UnknownDungeon3TrainerHeaders: ; 45f0f (11:5f0f)
+UnknownDungeon3TrainerHeader0: ; 45f0f (11:5f0f)
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d85f ; flag's byte
+ dw UnknownDungeon3MewtwoText ; 0x5f26 TextBeforeBattle
+ dw UnknownDungeon3MewtwoText ; 0x5f26 TextAfterBattle
+ dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle
+ dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle
+
+ db $ff
+
+UnknownDungeon3Text1: ; 45f1c (11:5f1c)
+ db $08 ; asm
+ ld hl, UnknownDungeon3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+UnknownDungeon3MewtwoText: ; 45f26 (11:5f26)
+ TX_FAR _UnknownDungeon3MewtwoText
+ db $8
+ ld a, MEWTWO
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
diff --git a/scripts/vermilioncity.asm b/scripts/vermilioncity.asm
new file mode 100755
index 00000000..3f582dba
--- /dev/null
+++ b/scripts/vermilioncity.asm
@@ -0,0 +1,263 @@
+VermilionCityScript: ; 197a1 (6:57a1)
+ call EnableAutoTextBoxDrawing
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ push hl
+ call nz, VermilionCityScript_197cb
+ pop hl
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, VermilionCityScript_197c0
+ ld hl, VermilionCityScriptPointers
+ ld a, [W_VERMILIONCITYCURSCRIPT]
+ jp CallFunctionInTable
+
+VermilionCityScript_197c0: ; 197c0 (6:57c0)
+ call GenRandom
+ ld a, [$ffd4]
+ and $e
+ ld [$d743], a
+ ret
+
+VermilionCityScript_197cb: ; 197cb (6:57cb)
+ ld hl, $d803
+ bit 2, [hl]
+ ret z
+ bit 3, [hl]
+ set 3, [hl]
+ ret nz
+ ld a, $2
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ ret
+
+VermilionCityScriptPointers: ; 197dc (6:57dc)
+ dw VermilionCityScript0
+ dw VermilionCityScript1
+ dw VermilionCityScript2
+ dw VermilionCityScript3
+ dw VermilionCityScript4
+
+VermilionCityScript0: ; 197e6 (6:57e6)
+ ld a, [$c109]
+ and a
+ ret nz
+ ld hl, CoordsData_19823
+ call ArePlayerCoordsInArray
+ ret nc
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld [$cf0d], a
+ ld a, $3
+ ld [$ff8c], a
+ call DisplayTextID
+ ld a, [$d803]
+ bit 2, a
+ jr nz, .asm_19810 ; 0x19804 $a
+ ld b, $3f
+ ld a, $1c
+ call Predef
+ ld a, b
+ and a
+ ret nz
+.asm_19810
+ ld a, $40
+ ld [$ccd3], a
+ ld a, $1
+ ld [$cd38], a
+ call Func_3486
+ ld a, $1
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ ret
+
+CoordsData_19823: ; 19823 (6:5823)
+ db $1e,$12
+ db $ff
+
+VermilionCityScript4: ; 19826 (6:5826)
+ ld hl, CoordsData_19823
+ call ArePlayerCoordsInArray
+ ret c
+ ld a, $0
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ ret
+
+VermilionCityScript2: ; 19833 (6:5833)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $40
+ ld [$ccd3], a
+ ld [$ccd4], a
+ ld a, $2
+ ld [$cd38], a
+ call Func_3486
+ ld a, $3
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ ret
+
+VermilionCityScript3: ; 1984e (6:584e)
+ ld a, [$cd38]
+ and a
+ ret nz
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ ld a, $0
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ ret
+
+VermilionCityScript1: ; 1985f (6:585f)
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld c, $a
+ call DelayFrames
+ ld a, $0
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ ret
+
+VermilionCityTextPointers: ; 1986f (6:586f)
+ dw VermilionCityText1
+ dw VermilionCityText2
+ dw VermilionCityText3
+ dw VermilionCityText4
+ dw VermilionCityText5
+ dw VermilionCityText6
+ dw VermilionCityText7
+ dw VermilionCityText8
+ dw MartSignText
+ dw PokeCenterSignText
+ dw VermilionCityText11
+ dw VermilionCityText12
+ dw VermilionCityText13
+
+VermilionCityText1: ; 19889 (6:5889)
+ TX_FAR _VermilionCityText1
+ db "@"
+
+VermilionCityText2: ; 1988e (6:588e)
+ db $08 ; asm
+ ld a, [$d803]
+ bit 2, a
+ jr nz, .asm_359bd ; 0x19894
+ ld hl, VermilionCityText_198a7
+ call PrintText
+ jr .asm_735d9 ; 0x1989c
+.asm_359bd ; 0x1989e
+ ld hl, VermilionCityText_198ac
+ call PrintText
+.asm_735d9 ; 0x198a4
+ jp TextScriptEnd
+
+VermilionCityText_198a7: ; 198a7 (6:58a7)
+ TX_FAR _VermilionCityText_198a7
+ db "@"
+
+VermilionCityText_198ac: ; 198ac (6:58ac)
+ TX_FAR _VermilionCityText_198ac
+ db "@"
+
+VermilionCityText3: ; 198b1 (6:58b1)
+ db $08 ; asm
+ ld a, [$d803]
+ bit 2, a
+ jr nz, .asm_3e0e9 ; 0x198b7
+ ld a, [$c109]
+ cp $c
+ jr z, .asm_07af3 ; 0x198be
+ ld hl, VermilionCityCoords1
+ call ArePlayerCoordsInArray
+ jr nc, .asm_57b73 ; 0x198c6
+.asm_07af3 ; 0x198c8
+ ld hl, SSAnneWelcomeText4
+ call PrintText
+ jr .asm_79bd1 ; 0x198ce
+.asm_57b73 ; 0x198d0
+ ld hl, SSAnneWelcomeText9
+ call PrintText
+ ld b, S_S__TICKET
+ ld a, $1c
+ call Predef
+ ld a, b
+ and a
+ jr nz, .asm_0419b ; 0x198df
+ ld hl, SSAnneNoTicketText
+ call PrintText
+ jr .asm_79bd1 ; 0x198e7
+.asm_0419b ; 0x198e9
+ ld hl, SSAnneFlashedTicketText
+ call PrintText
+ ld a, $4
+ ld [W_VERMILIONCITYCURSCRIPT], a
+ jr .asm_79bd1 ; 0x198f4
+.asm_3e0e9 ; 0x198f6
+ ld hl, SSAnneNotHereText
+ call PrintText
+.asm_79bd1 ; 0x198fc
+ jp TextScriptEnd
+
+VermilionCityCoords1: ; 198ff (6:58ff)
+ db $1d,$13
+ db $1f,$13
+ db $ff
+
+SSAnneWelcomeText4: ; 19904 (6:5904)
+ TX_FAR _SSAnneWelcomeText4
+ db "@"
+
+SSAnneWelcomeText9: ; 19909 (6:5909)
+ TX_FAR _SSAnneWelcomeText9
+ db "@"
+
+SSAnneFlashedTicketText: ; 1990e (6:590e)
+ TX_FAR _SSAnneFlashedTicketText
+ db "@"
+
+SSAnneNoTicketText: ; 19913 (6:5913)
+ TX_FAR _SSAnneNoTicketText
+ db "@"
+
+SSAnneNotHereText: ; 19918 (6:5918)
+ TX_FAR _SSAnneNotHereText
+ db "@"
+
+VermilionCityText4: ; 1991d (6:591d)
+ TX_FAR _VermilionCityText4
+ db "@"
+
+VermilionCityText5: ; 19922 (6:5922)
+ TX_FAR _VermilionCityText5
+ db $08 ; asm
+ ld a, MACHOP
+ call PlayCry
+ call WaitForSoundToFinish
+ ld hl, VermilionCityText14 ; $5933
+ ret
+
+VermilionCityText14: ; 19933 (6:5933)
+ TX_FAR _VermilionCityText14
+ db "@"
+
+VermilionCityText6: ; 19938 (6:5938)
+ TX_FAR _VermilionCityText6
+ db "@"
+
+VermilionCityText7: ; 1993d (6:593d)
+ TX_FAR _VermilionCityText7
+ db "@"
+
+VermilionCityText8: ; 19942 (6:5942)
+ TX_FAR _VermilionCityText8
+ db "@"
+
+VermilionCityText11: ; 19947 (6:5947)
+ TX_FAR _VermilionCityText11
+ db "@"
+
+VermilionCityText12: ; 1994c (6:594c)
+ TX_FAR _VermilionCityText12
+ db "@"
+
+VermilionCityText13: ; 19951 (6:5951)
+ TX_FAR _VermilionCityText13
+ db "@"
diff --git a/scripts/vermiliondock.asm b/scripts/vermiliondock.asm
new file mode 100755
index 00000000..164abe7c
--- /dev/null
+++ b/scripts/vermiliondock.asm
@@ -0,0 +1,208 @@
+VermilionDockScript: ; 1db52 (7:5b52)
+ call EnableAutoTextBoxDrawing
+ ld hl, $d803
+ bit 4, [hl]
+ jr nz, .asm_1db8d ; 0x1db5a $31
+ bit 0, [hl]
+ ret z
+ ld a, [$d42f]
+ cp $1
+ ret nz
+ bit 2, [hl]
+ jp z, VermilionDock_1db9b
+ set 4, [hl]
+ call Delay3
+ ld hl, $d730
+ set 7, [hl]
+ ld hl, $ccd3
+ ld a, $40
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $3
+ ld [$cd38], a
+ xor a
+ ld [$c206], a
+ ld [$cd3b], a
+ dec a
+ ld [wJoypadForbiddenButtonsMask], a
+ ret
+.asm_1db8d
+ bit 5, [hl]
+ ret nz
+ ld a, [$cd38]
+ and a
+ ret nz
+ ld [wJoypadForbiddenButtonsMask], a
+ set 5, [hl]
+ ret
+
+VermilionDock_1db9b: ; 1db9b (7:5b9b)
+ set 2, [hl]
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [$c0ee], a
+ call PlaySound
+ ld c, BANK(Music_Surfing)
+ ld a, MUSIC_SURFING
+ call PlayMusic
+ callba LoadSmokeTileFourTimes
+ xor a
+ ld [$c102], a
+ ld c, $78
+ call DelayFrames
+ ld b, $9c
+ call CopyScreenTileBufferToVRAM
+ FuncCoord 0, 10 ; $c468
+ ld hl, Coord
+ ld bc, $0078
+ ld a, $14
+ call FillMemory
+ ld a, $1
+ ld [$ffba], a
+ call Delay3
+ xor a
+ ld [$ffba], a
+ ld [$cd3d], a
+ ld [$ff49], a
+ ld a, $58
+ ld [$cd3e], a
+ ld hl, $d526
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ push bc
+ push hl
+ ld a, (SFX_02_54 - SFX_Headers_02) / 3
+ call PlaySoundWaitForCurrent
+ ld a, $ff
+ ld [$cfcb], a
+ ld d, $0
+ ld e, $8
+.asm_1dbfa
+ ld hl, $0002
+ add hl, bc
+ ld a, l
+ ld [$d526], a
+ ld a, h
+ ld [$d527], a
+ push hl
+ push de
+ call ScheduleEastColumnRedraw
+ call VermilionDock_1dc59
+ pop de
+ ld b, $10
+.asm_1dc11
+ call VermilionDock_1dc42
+ ld c, $8
+.asm_1dc16
+ call VermilionDock_1dc7c
+ dec c
+ jr nz, .asm_1dc16 ; 0x1dc1a $fa
+ inc d
+ dec b
+ jr nz, .asm_1dc11 ; 0x1dc1e $f1
+ pop bc
+ dec e
+ jr nz, .asm_1dbfa ; 0x1dc22 $d6
+ xor a
+ ld [$ff4a], a
+ ld [$ffb0], a
+ call VermilionDock_1dc94
+ ld a, $90
+ ld [$ffb0], a
+ ld a, $1
+ ld [$cfcb], a
+ pop hl
+ pop bc
+ ld [hl], b
+ dec hl
+ ld [hl], c
+ call LoadPlayerSpriteGraphics
+ ld hl, $d3ae
+ dec [hl]
+ ret
+
+VermilionDock_1dc42: ; 1dc42 (7:5c42)
+ push bc
+ push de
+ ld hl, $c311
+ ld a, [$cd3d]
+ swap a
+ ld c, a
+ ld de, $0004
+.asm_1dc50
+ inc [hl]
+ inc [hl]
+ add hl, de
+ dec c
+ jr nz, .asm_1dc50 ; 0x1dc54 $fa
+ pop de
+ pop bc
+ ret
+
+VermilionDock_1dc59: ; 1dc59 (7:5c59)
+ ld a, [$cd3e]
+ sub $10
+ ld [$cd3e], a
+ ld c, a
+ ld b, $64
+ ld a, [$cd3d]
+ inc a
+ ld [$cd3d], a
+ ld a, $1
+ ld de, VermilionDockOAMBlock
+ call WriteOAMBlock
+ ret
+
+VermilionDockOAMBlock: ; 1dc74 (7:5c74)
+ db $fc, $10
+ db $fd, $10
+ db $fe, $10
+ db $ff, $10
+
+VermilionDock_1dc7c: ; 1dc7c (7:5c7c)
+ ld h, d
+ ld l, $50
+ call .asm_1dc86
+ ld h, $0
+ ld l, $80
+.asm_1dc86
+ ld a, [$ff44]
+ cp l
+ jr nz, .asm_1dc86 ; 0x1dc89 $fb
+ ld a, h
+ ld [$ff43], a
+.asm_1dc8e
+ ld a, [$ff44]
+ cp h
+ jr z, .asm_1dc8e ; 0x1dc91 $fb
+ ret
+
+VermilionDock_1dc94: ; 1dc94 (7:5c94)
+ ld hl, $cc5b
+ ld bc, $00b4
+ ld a, $14
+ call FillMemory
+ ld hl, $9940
+ ld de, $cc5b
+ ld bc, $000c
+ call CopyVideoData
+ ld hl, $c754
+ ld a, $d
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, (SFX_02_54 - SFX_Headers_02) / 3
+ call PlaySound
+ ld c, $78
+ call DelayFrames
+ ret
+
+VermilionDockTextPointers: ; 1dcbf (7:5cbf)
+ dw VermilionDockText1
+
+VermilionDockText1: ; 1dcc1 (7:5cc1)
+ TX_FAR _VermilionDockText1
+ db "@"
diff --git a/scripts/vermiliongym.asm b/scripts/vermiliongym.asm
new file mode 100755
index 00000000..de3678dd
--- /dev/null
+++ b/scripts/vermiliongym.asm
@@ -0,0 +1,275 @@
+VermilionGymScript: ; 5ca26 (17:4a26)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, VermilionGymScript_5ca4c
+ pop hl
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, VermilionGymScript_5ca6d
+ call EnableAutoTextBoxDrawing
+ ld hl, VermilionGymTrainerHeader0
+ ld de, VermilionGymScriptPointers
+ ld a, [W_VERMILIONGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VERMILIONGYMCURSCRIPT], a
+ ret
+
+VermilionGymScript_5ca4c: ; 5ca4c (17:4a4c)
+ ld hl, Gym3CityName ; $4a55
+ ld de, Gym3LeaderName ; $4a64
+ jp LoadGymLeaderAndCityName
+
+Gym3CityName: ; 5ca55 (17:4a55)
+ db "VERMILION CITY@"
+
+Gym3LeaderName: ; 5ca64 (17:4a64)
+ db "LT.SURGE@"
+
+VermilionGymScript_5ca6d: ; 5ca6d (17:4a6d)
+ ld a, [$d773]
+ bit 0, a
+ jr nz, .asm_5ca78
+ ld a, $24
+ jr .asm_5ca7f
+.asm_5ca78
+ ld a, (SFX_02_57 - SFX_Headers_02) / 3
+ call PlaySound
+ ld a, $5
+.asm_5ca7f
+ ld [$d09f], a
+ ld bc, $202
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+VermilionGymScript_5ca8a: ; 5ca8a (17:4a8a)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_VERMILIONGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+VermilionGymScriptPointers: ; 5ca95 (17:4a95)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+ dw VermilionGymScript3
+
+VermilionGymScript3: ; 5ca9d (17:4a9d)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, VermilionGymScript_5ca8a
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+
+VermilionGymScript_5caaa: ; 5caaa (17:4aaa)
+ ld a, $6
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d773
+ set 7, [hl]
+ ld bc, (TM_24 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $7
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d773
+ set 6, [hl]
+ jr .asm_5cad3
+.BagFull
+ ld a, $8
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_5cad3
+ ld hl, W_OBTAINEDBADGES
+ set 2, [hl]
+ ld hl, $d72a
+ set 2, [hl]
+
+ ; deactivate gym trainers
+ ld a, [$d773]
+ or %00011100
+ ld [$d773], a
+
+ jp VermilionGymScript_5ca8a
+
+VermilionGymTextPointers: ; 5cae8 (17:4ae8)
+ dw VermilionGymText1
+ dw VermilionGymText2
+ dw VermilionGymText3
+ dw VermilionGymText4
+ dw VermilionGymText5
+ dw VermilionGymText6
+ dw VermilionGymText7
+ dw VermilionGymText8
+
+VermilionGymTrainerHeaders: ; 5caf8 (17:4af8)
+VermilionGymTrainerHeader0: ; 5caf8 (17:4af8)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d773 ; flag's byte
+ dw VermilionGymBattleText1 ; 0x4b9a TextBeforeBattle
+ dw VermilionGymAfterBattleText1 ; 0x4ba4 TextAfterBattle
+ dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle
+ dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle
+
+VermilionGymTrainerHeader1: ; 5cb04 (17:4b04)
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d773 ; flag's byte
+ dw VermilionGymBattleText2 ; 0x4bb3 TextBeforeBattle
+ dw VermilionGymAfterBattleText2 ; 0x4bbd TextAfterBattle
+ dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle
+ dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle
+
+VermilionGymTrainerHeader2: ; 5cb10 (17:4b10)
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d773 ; flag's byte
+ dw VermilionGymBattleText3 ; 0x4bcc TextBeforeBattle
+ dw VermilionGymAfterBattleText3 ; 0x4bd6 TextAfterBattle
+ dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle
+ dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle
+
+ db $ff
+
+VermilionGymText1: ; 5cb1d (17:4b1d)
+ db $08 ; asm
+ ld a, [$d773]
+ bit 7, a
+ jr z, .asm_7cc29 ; 0x5cb23
+ bit 6, a
+ jr nz, .asm_41203 ; 0x5cb27
+ call z, VermilionGymScript_5caaa
+ call DisableWaitingAfterTextDisplay
+ jr .asm_23621 ; 0x5cb2f
+.asm_41203 ; 0x5cb31
+ ld hl, VermilionGymText_5cb72
+ call PrintText
+ jr .asm_23621 ; 0x5cb37
+.asm_7cc29 ; 0x5cb39
+ ld hl, VermilionGymText_5cb6d
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, ReceivedThunderbadgeText
+ ld de, ReceivedThunderbadgeText
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ ld [$d05c], a
+ xor a
+ ldh [$b4], a
+ ld a, $3
+ ld [W_VERMILIONGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+.asm_23621 ; 0x5cb6a
+ jp TextScriptEnd
+
+VermilionGymText_5cb6d: ; 5cb6d (17:4b6d)
+ TX_FAR _VermilionGymText_5cb6d
+ db "@"
+
+VermilionGymText_5cb72: ; 5cb72 (17:4b72)
+ TX_FAR _VermilionGymText_5cb72
+ db "@"
+
+VermilionGymText6: ; 5cb77 (17:4b77)
+ TX_FAR _VermilionGymText_5cb77
+ db "@"
+
+VermilionGymText7: ; 5cb7c (17:4b7c)
+ TX_FAR _ReceivedTM24Text
+ db $11
+ TX_FAR _TM24ExplanationText
+ db "@"
+
+VermilionGymText8: ; 5cb86 (17:4b86)
+ TX_FAR _TM24NoRoomText
+ db "@"
+
+ReceivedThunderbadgeText: ; 5cb8b (17:4b8b)
+ TX_FAR _ReceivedThunderbadgeText
+ db "@"
+
+VermilionGymText2: ; 5cb90 (17:4b90)
+ db $08 ; asm
+ ld hl, VermilionGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VermilionGymBattleText1: ; 5cb9a (17:4b9a)
+ TX_FAR _VermilionGymBattleText1
+ db "@"
+
+VermilionGymEndBattleText1: ; 5cb9f (17:4b9f)
+ TX_FAR _VermilionGymEndBattleText1
+ db "@"
+
+VermilionGymAfterBattleText1: ; 5cba4 (17:4ba4)
+ TX_FAR _VermilionGymAfterBattleText1
+ db "@"
+
+VermilionGymText3: ; 5cba9 (17:4ba9)
+ db $08 ; asm
+ ld hl, VermilionGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VermilionGymBattleText2: ; 5cbb3 (17:4bb3)
+ TX_FAR _VermilionGymBattleText2
+ db "@"
+
+VermilionGymEndBattleText2: ; 5cbb8 (17:4bb8)
+ TX_FAR _VermilionGymEndBattleText2
+ db "@"
+
+VermilionGymAfterBattleText2: ; 5cbbd (17:4bbd)
+ TX_FAR _VermilionGymAfterBattleText2
+ db "@"
+
+VermilionGymText4: ; 5cbc2 (17:4bc2)
+ db $08 ; asm
+ ld hl, VermilionGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VermilionGymBattleText3: ; 5cbcc (17:4bcc)
+ TX_FAR _VermilionGymBattleText3
+ db "@"
+
+VermilionGymEndBattleText3: ; 5cbd1 (17:4bd1)
+ TX_FAR _VermilionGymEndBattleText3
+ db "@"
+
+VermilionGymAfterBattleText3: ; 5cbd6 (17:4bd6)
+ TX_FAR _VermilionGymAfterBattleText3
+ db "@"
+
+VermilionGymText5: ; 5cbdb (17:4bdb)
+ db $08 ; asm
+ ld a, [$d72a]
+ bit 2, a
+ jr nz, .asm_13b67 ; 0x5cbe1
+ ld hl, VermilionGymText_5cbf4
+ call PrintText
+ jr .asm_c2b38 ; 0x5cbe9
+.asm_13b67 ; 0x5cbeb
+ ld hl, VermilionGymText_5cbf9
+ call PrintText
+.asm_c2b38 ; 0x5cbf1
+ jp TextScriptEnd
+
+VermilionGymText_5cbf4: ; 5cbf4 (17:4bf4)
+ TX_FAR _VermilionGymText_5cbf4
+ db "@"
+
+VermilionGymText_5cbf9: ; 5cbf9 (17:4bf9)
+ TX_FAR _VermilionGymText_5cbf9
+ db "@"
diff --git a/scripts/vermilionhouse1.asm b/scripts/vermilionhouse1.asm
new file mode 100755
index 00000000..4ead1af7
--- /dev/null
+++ b/scripts/vermilionhouse1.asm
@@ -0,0 +1,24 @@
+VermilionHouse1Script: ; 1dafc (7:5afc)
+ call EnableAutoTextBoxDrawing
+ ret
+
+VermilionHouse1TextPointers: ; 1db00 (7:5b00)
+ dw VermilionHouse1Text1
+ dw VermilionHouse1Text2
+ dw VermilionHouse1Text3
+
+VermilionHouse1Text1: ; 1db06 (7:5b06)
+ TX_FAR _VermilionHouse1Text1
+ db "@"
+
+VermilionHouse1Text2: ; 1db0b (7:5b0b)
+ TX_FAR _VermilionHouse1Text2
+ db $08 ; asm
+ ld a, PIDGEY
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+VermilionHouse1Text3: ; 1db1b (7:5b1b)
+ TX_FAR _VermilionHouse1Text3
+ db "@"
diff --git a/scripts/vermilionhouse2.asm b/scripts/vermilionhouse2.asm
new file mode 100755
index 00000000..9efb8200
--- /dev/null
+++ b/scripts/vermilionhouse2.asm
@@ -0,0 +1,57 @@
+VermilionHouse2Script: ; 56070 (15:6070)
+ jp EnableAutoTextBoxDrawing
+
+VermilionHouse2TextPointers: ; 56073 (15:6073)
+ dw VermilionHouse2Text1
+
+VermilionHouse2Text1: ; 56075 (15:6075)
+ db $08 ; asm
+ ld a, [$d728]
+ bit 3, a
+ jr nz, .asm_03ef5
+ ld hl, VermilionHouse2Text_560b1
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_eb1b7
+ ld bc, (OLD_ROD << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, $d728
+ set 3, [hl]
+ ld hl, VermilionHouse2Text_560b6
+ jr .asm_5dd95
+.BagFull
+ ld hl, VermilionHouse2Text_560ca
+ jr .asm_5dd95
+.asm_eb1b7
+ ld hl, VermilionHouse2Text_560c0
+ jr .asm_5dd95
+.asm_03ef5
+ ld hl, VermilionHouse2Text_560c5
+.asm_5dd95
+ call PrintText
+ jp TextScriptEnd
+
+VermilionHouse2Text_560b1: ; 560b1 (15:60b1)
+ TX_FAR _VermilionHouse2Text_560b1
+ db "@"
+
+VermilionHouse2Text_560b6: ; 560b6 (15:60b6)
+ TX_FAR _VermilionHouse2Text_560b6 ; 0x9c554
+ db $0B
+ TX_FAR _VermilionHouse2Text_560bb ; 0x9c5a4
+ db "@"
+
+VermilionHouse2Text_560c0: ; 560c0 (15:60c0)
+ TX_FAR _VermilionHouse2Text_560c0
+ db "@"
+
+VermilionHouse2Text_560c5: ; 560c5 (15:60c5)
+ TX_FAR _VermilionHouse2Text_560c5
+ db "@"
+
+VermilionHouse2Text_560ca: ; 560ca (15:60ca)
+ TX_FAR _VermilionHouse2Text_560ca
+ db "@"
diff --git a/scripts/vermilionhouse3.asm b/scripts/vermilionhouse3.asm
new file mode 100755
index 00000000..b6bceeea
--- /dev/null
+++ b/scripts/vermilionhouse3.asm
@@ -0,0 +1,13 @@
+VermilionHouse3Script: ; 19c12 (6:5c12)
+ jp EnableAutoTextBoxDrawing
+
+VermilionHouse3TextPointers: ; 19c15 (6:5c15)
+ dw VermilionHouse3Text1
+
+VermilionHouse3Text1: ; 19c17 (6:5c17)
+ db $08 ; asm
+ ld a, $4
+ ld [wWhichTrade], a
+ ld a, $54
+ call Predef
+ jp TextScriptEnd
diff --git a/scripts/vermilionmart.asm b/scripts/vermilionmart.asm
new file mode 100755
index 00000000..921e7852
--- /dev/null
+++ b/scripts/vermilionmart.asm
@@ -0,0 +1,15 @@
+VermilionMartScript: ; 5c9e1 (17:49e1)
+ jp EnableAutoTextBoxDrawing
+
+VermilionMartTextPointers: ; 5c9e4 (17:49e4)
+ dw VermilionMartText1
+ dw VermilionMartText2
+ dw VermilionMartText3
+
+VermilionMartText2: ; 5c9ea (17:49ea)
+ TX_FAR _VermilionMartText2
+ db "@"
+
+VermilionMartText3: ; 5c9ef (17:49ef)
+ TX_FAR _VermilionMartText3
+ db "@"
diff --git a/scripts/vermilionpokecenter.asm b/scripts/vermilionpokecenter.asm
new file mode 100755
index 00000000..00d139f5
--- /dev/null
+++ b/scripts/vermilionpokecenter.asm
@@ -0,0 +1,23 @@
+VermilionPokecenterScript: ; 5c98f (17:498f)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+VermilionPokecenterTextPointers: ; 5c995 (17:4995)
+ dw VermilionPokecenterText1
+ dw VermilionPokecenterText2
+ dw VermilionPokecenterText3
+ dw VermilionPokecenterText4
+
+VermilionPokecenterText1: ; 5c99d (17:499d)
+ db $ff
+
+VermilionPokecenterText2: ; 5c99e (17:499e)
+ TX_FAR _VermilionPokecenterText1
+ db "@"
+
+VermilionPokecenterText3: ; 5c9a3 (17:49a3)
+ TX_FAR _VermilionPokecenterText3
+ db "@"
+
+VermilionPokecenterText4: ; 5c9a8 (17:49a8)
+ db $f6
diff --git a/scripts/victoryroad1.asm b/scripts/victoryroad1.asm
new file mode 100755
index 00000000..b9b946ad
--- /dev/null
+++ b/scripts/victoryroad1.asm
@@ -0,0 +1,108 @@
+VictoryRoad1Script: ; 5da0a (17:5a0a)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, .next
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad1TrainerHeaders
+ ld de, VictoryRoad1ScriptPointers
+ ld a, [W_VICTORYROAD1CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VICTORYROAD1CURSCRIPT], a
+ ret
+.next
+ ld a, [$d869]
+ bit 7, a
+ ret z
+ ld a, $1d
+ ld [$d09f], a
+ ld bc, $604
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+VictoryRoad1ScriptPointers: ; 5da3a (17:5a3a)
+ dw VictoryRoad1Script0
+ dw Func_324c
+ dw EndTrainerBattle
+
+VictoryRoad1Script0: ; 5da40 (17:5a40)
+ ld a, [$d869]
+ bit 7, a
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_5da5c ; $5a5c
+ call CheckBoulderCoords
+ jp nc, CheckFightingMapTrainers
+ ld hl, $d126
+ set 5, [hl]
+ ld hl, $d869
+ set 7, [hl]
+ ret
+
+CoordsData_5da5c: ; 5da5c (17:5a5c)
+ db $0D,$11,$FF
+
+VictoryRoad1TextPointers: ; 5da5f (17:5a5f)
+ dw VictoryRoad1Text1
+ dw VictoryRoad1Text2
+ dw Predef5CText
+ dw Predef5CText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad1TrainerHeaders: ; 5da6d (17:5a6d)
+VictoryRoad1TrainerHeader0: ; 5da6d (17:5a6d)
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d869 ; flag's byte
+ dw VictoryRoad1BattleText1 ; 0x5a9a TextBeforeBattle
+ dw VictoryRoad1AfterBattleText1 ; 0x5aa4 TextAfterBattle
+ dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle
+ dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle
+
+VictoryRoad1TrainerHeader1: ; 5da79 (17:5a79)
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d869 ; flag's byte
+ dw VictoryRoad1BattleText2 ; 0x5aa9 TextBeforeBattle
+ dw VictoryRoad1AfterBattleText2 ; 0x5ab3 TextAfterBattle
+ dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle
+ dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle
+
+ db $ff
+
+VictoryRoad1Text1: ; 5da86 (17:5a86)
+ db $08 ; asm
+ ld hl, VictoryRoad1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad1Text2: ; 5da90 (17:5a90)
+ db $08 ; asm
+ ld hl, VictoryRoad1TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad1BattleText1: ; 5da9a (17:5a9a)
+ TX_FAR _VictoryRoad1BattleText1
+ db "@"
+
+VictoryRoad1EndBattleText1: ; 5da9f (17:5a9f)
+ TX_FAR _VictoryRoad1EndBattleText1
+ db "@"
+
+VictoryRoad1AfterBattleText1: ; 5daa4 (17:5aa4)
+ TX_FAR _VictoryRoad1AfterBattleText1
+ db "@"
+
+VictoryRoad1BattleText2: ; 5daa9 (17:5aa9)
+ TX_FAR _VictoryRoad1BattleText2
+ db "@"
+
+VictoryRoad1EndBattleText2: ; 5daae (17:5aae)
+ TX_FAR _VictoryRoad1EndBattleText2
+ db "@"
+
+VictoryRoad1AfterBattleText2: ; 5dab3 (17:5ab3)
+ TX_FAR _VictoryRoad1AfterBattleText2
+ db "@"
diff --git a/scripts/victoryroad2.asm b/scripts/victoryroad2.asm
new file mode 100755
index 00000000..6270a858
--- /dev/null
+++ b/scripts/victoryroad2.asm
@@ -0,0 +1,248 @@
+VictoryRoad2Script: ; 5179d (14:579d)
+ ld hl, $d126
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, VictoryRoad2Script_517c4
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, VictoryRoad2Script_517c9
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad2TrainerHeaders
+ ld de, VictoryRoad2ScriptPointers
+ ld a, [W_VICTORYROAD2CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VICTORYROAD2CURSCRIPT], a
+ ret
+
+VictoryRoad2Script_517c4: ; 517c4 (14:57c4)
+ ld hl, $d869
+ res 7, [hl]
+
+VictoryRoad2Script_517c9: ; 517c9 (14:57c9)
+ ld a, [$d7ee]
+ bit 0, a
+ jr z, .asm_517da
+ push af
+ ld a, $15
+ ld bc, $403
+ call VictoryRoad2Script_517e2
+ pop af
+.asm_517da
+ bit 7, a
+ ret z
+ ld a, $1d
+ ld bc, $70b
+
+VictoryRoad2Script_517e2: ; 517e2 (14:57e2)
+ ld [$d09f], a
+ ld a, $17
+ call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+ ret
+
+VictoryRoad2ScriptPointers: ; 517eb (14:57eb)
+ dw VictoryRoad2Script0
+ dw Func_324c
+ dw EndTrainerBattle
+
+VictoryRoad2Script0: ; 517f1 (14:57f1)
+ ld hl, CoordsData_51816 ; $5816
+ call CheckBoulderCoords
+ jp nc, CheckFightingMapTrainers
+ ld hl, $d7ee
+ ld a, [wWhichTrade] ; $cd3d
+ cp $2
+ jr z, .asm_5180b
+ bit 0, [hl]
+ set 0, [hl]
+ ret nz
+ jr .asm_51810
+.asm_5180b
+ bit 7, [hl]
+ set 7, [hl]
+ ret nz
+.asm_51810
+ ld hl, $d126
+ set 5, [hl]
+ ret
+
+CoordsData_51816: ; 51816 (14:5816)
+ db $10,$01
+ db $10,$09
+ db $FF
+
+VictoryRoad2TextPointers: ; 5181b (14:581b)
+ dw VictoryRoad2Text1
+ dw VictoryRoad2Text2
+ dw VictoryRoad2Text3
+ dw VictoryRoad2Text4
+ dw VictoryRoad2Text5
+ dw VictoryRoad2Text6
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad2TrainerHeaders: ; 51835 (14:5835)
+VictoryRoad2TrainerHeader0: ; 51835 (14:5835)
+ db $1 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7ee ; flag's byte
+ dw VictoryRoad2BattleText1 ; 0x58ca TextBeforeBattle
+ dw VictoryRoad2AfterBattleText1 ; 0x58d4 TextAfterBattle
+ dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle
+ dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle
+
+VictoryRoad2TrainerHeader2: ; 51841 (14:5841)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ee ; flag's byte
+ dw VictoryRoad2BattleText2 ; 0x58d9 TextBeforeBattle
+ dw VictoryRoad2AfterBattleText2 ; 0x58e3 TextAfterBattle
+ dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle
+ dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle
+
+VictoryRoad2TrainerHeader3: ; 5184d (14:584d)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ee ; flag's byte
+ dw VictoryRoad2BattleText3 ; 0x58e8 TextBeforeBattle
+ dw VictoryRoad2AfterBattleText3 ; 0x58f2 TextAfterBattle
+ dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle
+ dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle
+
+VictoryRoad2TrainerHeader4: ; 51859 (14:5859)
+ db $4 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7ee ; flag's byte
+ dw VictoryRoad2BattleText4 ; 0x58f7 TextBeforeBattle
+ dw VictoryRoad2AfterBattleText4 ; 0x5901 TextAfterBattle
+ dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle
+ dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle
+
+VictoryRoad2TrainerHeader5: ; 51865 (14:5865)
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ee ; flag's byte
+ dw VictoryRoad2BattleText5 ; 0x5906 TextBeforeBattle
+ dw VictoryRoad2AfterBattleText5 ; 0x5910 TextAfterBattle
+ dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle
+ dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle
+
+VictoryRoad2TrainerHeader6: ; 51871 (14:5871)
+ db $6 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d7ee ; flag's byte
+ dw VictoryRoad2BattleText6 ; 0x58ba TextBeforeBattle
+ dw VictoryRoad2BattleText6 ; 0x58ba TextAfterBattle
+ dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle
+ dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle
+
+ db $ff
+
+VictoryRoad2Text1: ; 5187e (14:587e)
+ db $08 ; asm
+ ld hl, VictoryRoad2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text2: ; 51888 (14:5888)
+ db $08 ; asm
+ ld hl, VictoryRoad2TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text3: ; 51892 (14:5892)
+ db $08 ; asm
+ ld hl, VictoryRoad2TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text4: ; 5189c (14:589c)
+ db $08 ; asm
+ ld hl, VictoryRoad2TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text5: ; 518a6 (14:58a6)
+ db $08 ; asm
+ ld hl, VictoryRoad2TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text6: ; 518b0 (14:58b0)
+ db $08 ; asm
+ ld hl, VictoryRoad2TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2BattleText6: ; 518ba (14:58ba)
+ TX_FAR _VictoryRoad2BattleText6
+ db $8
+ ld a, MOLTRES
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+VictoryRoad2BattleText1: ; 518ca (14:58ca)
+ TX_FAR _VictoryRoad2BattleText1
+ db "@"
+
+VictoryRoad2EndBattleText1: ; 518cf (14:58cf)
+ TX_FAR _VictoryRoad2EndBattleText1
+ db "@"
+
+VictoryRoad2AfterBattleText1: ; 518d4 (14:58d4)
+ TX_FAR _VictoryRoad2AfterBattleText1
+ db "@"
+
+VictoryRoad2BattleText2: ; 518d9 (14:58d9)
+ TX_FAR _VictoryRoad2BattleText2
+ db "@"
+
+VictoryRoad2EndBattleText2: ; 518de (14:58de)
+ TX_FAR _VictoryRoad2EndBattleText2
+ db "@"
+
+VictoryRoad2AfterBattleText2: ; 518e3 (14:58e3)
+ TX_FAR _VictoryRoad2AfterBattleText2
+ db "@"
+
+VictoryRoad2BattleText3: ; 518e8 (14:58e8)
+ TX_FAR _VictoryRoad2BattleText3
+ db "@"
+
+VictoryRoad2EndBattleText3: ; 518ed (14:58ed)
+ TX_FAR _VictoryRoad2EndBattleText3
+ db "@"
+
+VictoryRoad2AfterBattleText3: ; 518f2 (14:58f2)
+ TX_FAR _VictoryRoad2AfterBattleText3
+ db "@"
+
+VictoryRoad2BattleText4: ; 518f7 (14:58f7)
+ TX_FAR _VictoryRoad2BattleText4
+ db "@"
+
+VictoryRoad2EndBattleText4: ; 518fc (14:58fc)
+ TX_FAR _VictoryRoad2EndBattleText4
+ db "@"
+
+VictoryRoad2AfterBattleText4: ; 51901 (14:5901)
+ TX_FAR _VictoryRoad2AfterBattleText4
+ db "@"
+
+VictoryRoad2BattleText5: ; 51906 (14:5906)
+ TX_FAR _VictoryRoad2BattleText5
+ db "@"
+
+VictoryRoad2EndBattleText5: ; 5190b (14:590b)
+ TX_FAR _VictoryRoad2EndBattleText5
+ db "@"
+
+VictoryRoad2AfterBattleText5: ; 51910 (14:5910)
+ TX_FAR _VictoryRoad2AfterBattleText5
+ db "@"
diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm
new file mode 100755
index 00000000..f2e08ca4
--- /dev/null
+++ b/scripts/victoryroad3.asm
@@ -0,0 +1,205 @@
+VictoryRoad3Script: ; 44980 (11:4980)
+ call VictoryRoad3Script_44996
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad3TrainerHeaders
+ ld de, VictoryRoad3ScriptPointers
+ ld a, [W_VICTORYROAD3CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VICTORYROAD3CURSCRIPT], a
+ ret
+
+VictoryRoad3Script_44996: ; 44996 (11:4996)
+ ld hl, $d126
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, $d813
+ bit 0, [hl]
+ ret z
+ ld a, $1d
+ ld [$d09f], a
+ ld bc, $503
+ ld a, $17
+ jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e))
+
+VictoryRoad3ScriptPointers: ; 449b1 (11:49b1)
+ dw VictoryRoad3Script0
+ dw Func_324c
+ dw EndTrainerBattle
+
+VictoryRoad3Script0: ; 449b7 (11:49b7)
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jp z, .asm_449fe
+ ld hl, .coordsData_449f9 ; $49f9
+ call CheckBoulderCoords
+ jp nc, .asm_449fe
+ ld a, [wWhichTrade] ; $cd3d
+ cp $1
+ jr nz, .asm_449dc
+ ld hl, $d126
+ set 5, [hl]
+ ld hl, $d813
+ set 0, [hl]
+ ret
+.asm_449dc
+ ld hl, $d813
+ bit 6, [hl]
+ set 6, [hl]
+ jr nz, .asm_449fe
+ ld a, $7a
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $60
+ ld [$cc4d], a
+ ld a, $15
+ jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+
+.coordsData_449f9: ; 449f9 (11:49f9)
+ db $05,$03
+ db $0F,$17
+ db $FF
+
+.asm_449fe
+ ld a, $c2
+ ld [$d71d], a
+ ld hl, .coordsData_449f9 ; $49f9
+ call Func_46981
+ ld a, [wWhichTrade] ; $cd3d
+ cp $1
+ jr nz, .asm_44a1b
+ ld hl, $d72d
+ res 4, [hl]
+ ld hl, $d732
+ res 4, [hl]
+ ret
+.asm_44a1b
+ ld a, [$d72d]
+ bit 4, a
+ jp z, CheckFightingMapTrainers
+ ret
+
+VictoryRoad3TextPointers: ; 44a24 (11:4a24)
+ dw VictoryRoad3Text1
+ dw VictoryRoad3Text2
+ dw VictoryRoad3Text3
+ dw VictoryRoad3Text4
+ dw Predef5CText
+ dw Predef5CText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad3TrainerHeaders: ; 44a38 (11:4a38)
+VictoryRoad3TrainerHeader0: ; 44a38 (11:4a38)
+ db $1 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText2 ; 0x4a91 TextBeforeBattle
+ dw VictoryRoad3AfterBattleText2 ; 0x4a9b TextAfterBattle
+ dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
+ dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle
+
+VictoryRoad3TrainerHeader2: ; 44a44 (11:4a44)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText3 ; 0x4aa0 TextBeforeBattle
+ dw VictoryRoad3AfterBattleText3 ; 0x4aaa TextAfterBattle
+ dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
+ dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle
+
+VictoryRoad3TrainerHeader3: ; 44a50 (11:4a50)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText4 ; 0x4aaf TextBeforeBattle
+ dw VictoryRoad3AfterBattleText4 ; 0x4ab9 TextAfterBattle
+ dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
+ dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle
+
+VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d813 ; flag's byte
+ dw VictoryRoad3BattleText5 ; 0x4abe TextBeforeBattle
+ dw VictoryRoad3AfterBattleText5 ; 0x4ac8 TextAfterBattle
+ dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
+ dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle
+
+ db $ff
+
+VictoryRoad3Text1: ; 44a69 (11:4a69)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text2: ; 44a73 (11:4a73)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text3: ; 44a7d (11:4a7d)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text4: ; 44a87 (11:4a87)
+ db $08 ; asm
+ ld hl, VictoryRoad3TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3BattleText2: ; 44a91 (11:4a91)
+ TX_FAR _VictoryRoad3BattleText2
+ db "@"
+
+VictoryRoad3EndBattleText2: ; 44a96 (11:4a96)
+ TX_FAR _VictoryRoad3EndBattleText2
+ db "@"
+
+VictoryRoad3AfterBattleText2: ; 44a9b (11:4a9b)
+ TX_FAR _VictoryRoad3AfterBattleText2
+ db "@"
+
+VictoryRoad3BattleText3: ; 44aa0 (11:4aa0)
+ TX_FAR _VictoryRoad3BattleText3
+ db "@"
+
+VictoryRoad3EndBattleText3: ; 44aa5 (11:4aa5)
+ TX_FAR _VictoryRoad3EndBattleText3
+ db "@"
+
+VictoryRoad3AfterBattleText3: ; 44aaa (11:4aaa)
+ TX_FAR _VictoryRoad3AfterBattleText3
+ db "@"
+
+VictoryRoad3BattleText4: ; 44aaf (11:4aaf)
+ TX_FAR _VictoryRoad3BattleText4
+ db "@"
+
+VictoryRoad3EndBattleText4: ; 44ab4 (11:4ab4)
+ TX_FAR _VictoryRoad3EndBattleText4
+ db "@"
+
+VictoryRoad3AfterBattleText4: ; 44ab9 (11:4ab9)
+ TX_FAR _VictoryRoad3AfterBattleText4
+ db "@"
+
+VictoryRoad3BattleText5: ; 44abe (11:4abe)
+ TX_FAR _VictoryRoad3BattleText5
+ db "@"
+
+VictoryRoad3EndBattleText5: ; 44ac3 (11:4ac3)
+ TX_FAR _VictoryRoad3EndBattleText5
+ db "@"
+
+VictoryRoad3AfterBattleText5: ; 44ac8 (11:4ac8)
+ TX_FAR _VictoryRoad3AfterBattleText5
+ db "@"
diff --git a/scripts/viridiancity.asm b/scripts/viridiancity.asm
new file mode 100755
index 00000000..4bb04ba7
--- /dev/null
+++ b/scripts/viridiancity.asm
@@ -0,0 +1,333 @@
+ViridianCityScript: ; 18ff1 (6:4ff1)
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianCityScriptPointers
+ ld a, [W_VIRIDIANCITYCURSCRIPT]
+ jp CallFunctionInTable
+
+ViridianCityScriptPointers: ; 18ffd (6:4ffd)
+ dw ViridianCityScript0
+ dw ViridianCityScript1
+ dw ViridianCityScript2
+ dw ViridianCityScript3
+
+ViridianCityScript0: ; 19005 (6:5005)
+ call ViridianCityScript_1900b
+ jp ViridianCityScript_1903d
+
+ViridianCityScript_1900b: ; 1900b (6:500b)
+ ld a, [$d74c]
+ bit 0, a
+ ret nz
+ ld a, [W_OBTAINEDBADGES]
+ cp %01111111
+ jr nz, .asm_1901e ; 0x19016 $6
+ ld hl, $d74c
+ set 0, [hl]
+ ret
+.asm_1901e
+ ld a, [W_YCOORD]
+ cp $8
+ ret nz
+ ld a, [W_XCOORD]
+ cp $20
+ ret nz
+ ld a, $e
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ call ViridianCityScript_190cf
+ ld a, $3
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ ret
+
+ViridianCityScript_1903d: ; 1903d (6:503d)
+ ld a, [$d74b]
+ bit 5, a
+ ret nz
+ ld a, [W_YCOORD]
+ cp $9
+ ret nz
+ ld a, [W_XCOORD]
+ cp $13
+ ret nz
+ ld a, $5
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [H_CURRENTPRESSEDBUTTONS], a
+ call ViridianCityScript_190cf
+ ld a, $3
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ ret
+
+ViridianCityScript1: ; 19062 (6:5062)
+ ld a, [$c134]
+ ld [$ffeb], a
+ ld a, [$c136]
+ ld [$ffec], a
+ ld a, [$c234]
+ ld [$ffed], a
+ ld a, [$c235]
+ ld [$ffee], a
+ xor a
+ ld [wListScrollOffset], a
+
+ ; set up battle for Old Man
+ ld a, $1
+ ld [W_BATTLETYPE], a
+ ld a, 5
+ ld [W_CURENEMYLVL], a
+ ld a, WEEDLE
+ ld [W_CUROPPONENT], a
+ ld a, $2
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ ret
+
+ViridianCityScript2: ; 1908f (6:508f)
+ ld a, [$ffeb]
+ ld [$c134], a
+ ld a, [$ffec]
+ ld [$c136], a
+ ld a, [$ffed]
+ ld [$c234], a
+ ld a, [$ffee]
+ ld [$c235], a
+ call UpdateSprites
+ call Delay3
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $f
+ ld [$ff8c], a
+ call DisplayTextID
+ xor a
+ ld [W_BATTLETYPE], a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $0
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ ret
+
+ViridianCityScript3: ; 190c1 (6:50c1)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ ld a, 0
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ ret
+
+ViridianCityScript_190cf: ; 190cf (6:50cf)
+ call Func_3486
+ ld a, $1
+ ld [$cd38], a
+ ld a, $80
+ ld [$ccd3], a
+ xor a
+ ld [$c109], a
+ ld [wJoypadForbiddenButtonsMask], a
+ ret
+
+ViridianCityTextPointers: ; 190e4 (6:50e4)
+ dw ViridianCityText1
+ dw ViridianCityText2
+ dw ViridianCityText3
+ dw ViridianCityText4
+ dw ViridianCityText5
+ dw ViridianCityText6
+ dw ViridianCityText7
+ dw ViridianCityText8
+ dw ViridianCityText9
+ dw ViridianCityText10
+ dw MartSignText
+ dw PokeCenterSignText
+ dw ViridianCityText13
+ dw ViridianCityText14
+ dw ViridianCityText15
+
+ViridianCityText1: ; 19102 (6:5102)
+ TX_FAR _ViridianCityText1
+ db "@"
+
+ViridianCityText2: ; 19107 (6:5107)
+ db $08 ; asm
+ ld a, [W_OBTAINEDBADGES]
+ cp %01111111
+ ld hl, ViridianCityText_19127
+ jr z, .asm_ae9fe ; 0x19110
+ ld a, [$d751]
+ bit 1, a
+ jr nz, .asm_ae9fe ; 0x19117
+ ld hl, ViridianCityText_19122
+.asm_ae9fe ; 0x1911c
+ call PrintText
+ jp TextScriptEnd
+
+ViridianCityText_19122: ; 19122 (6:5122)
+ TX_FAR _ViridianCityText_19122
+ db "@"
+
+ViridianCityText_19127: ; 19127 (6:5127)
+ TX_FAR _ViridianCityText_19127
+ db "@"
+
+ViridianCityText3: ; 1912c (6:512c)
+ db $08 ; asm
+ ld hl, ViridianCityText_1914d
+ call PrintText
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr nz, .asm_6dfea ; 0x1913a
+ ld hl, ViridianCityText_19157
+ call PrintText
+ jr .asm_d611f ; 0x19142
+.asm_6dfea ; 0x19144
+ ld hl, ViridianCityText_19152
+ call PrintText
+.asm_d611f ; 0x1914a
+ jp TextScriptEnd
+
+ViridianCityText_1914d: ; 1914d (6:514d)
+ TX_FAR _ViridianCityText_1914d
+ db "@"
+
+ViridianCityText_19152: ; 19152 (6:5152)
+ TX_FAR _ViridianCityText_19152
+ db "@"
+
+ViridianCityText_19157: ; 19157 (6:5157)
+ TX_FAR _ViridianCityText_19157
+ db "@"
+
+ViridianCityText4: ; 1915c (6:515c)
+ db $08 ; asm
+ ld a, [$d74b]
+ bit 5, a
+ jr nz, .asm_83894 ; 0x19162
+ ld hl, ViridianCityText_19175
+ call PrintText
+ jr .asm_700a6 ; 0x1916a
+.asm_83894 ; 0x1916c
+ ld hl, ViridianCityText_1917a
+ call PrintText
+.asm_700a6 ; 0x19172
+ jp TextScriptEnd
+
+ViridianCityText_19175: ; 19175 (6:5175)
+ TX_FAR _ViridianCityText_19175
+ db "@"
+
+ViridianCityText_1917a: ; 1917a (6:517a)
+ TX_FAR _ViridianCityText_1917a
+ db "@"
+
+ViridianCityText5: ; 1917f (6:517f)
+ db $08 ; asm
+ ld hl, ViridianCityText_19191
+ call PrintText
+ call ViridianCityScript_190cf
+ ld a, $3
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ jp TextScriptEnd
+
+ViridianCityText_19191: ; 19191 (6:5191)
+ TX_FAR _ViridianCityText_19191
+ db "@"
+
+ViridianCityText6: ; 19196 (6:5196)
+ db $08 ; asm
+ ld a, [$d74c]
+ bit 1, a
+ jr nz, .asm_4e5a0 ; 0x1919c
+ ld hl, ViridianCityText_191ca
+ call PrintText
+ ld bc, (TM_42 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM42Text
+ call PrintText
+ ld hl, $d74c
+ set 1, [hl]
+ jr .asm_3c73c ; 0x191b7
+.BagFull
+ ld hl, TM42NoRoomText
+ call PrintText
+ jr .asm_3c73c ; 0x191bf
+.asm_4e5a0 ; 0x191c1
+ ld hl, TM42Explanation
+ call PrintText
+.asm_3c73c ; 0x191c7
+ jp TextScriptEnd
+
+ViridianCityText_191ca: ; 191ca (6:51ca)
+ TX_FAR _ViridianCityText_191ca
+ db "@"
+
+ReceivedTM42Text: ; 191cf (6:51cf)
+ TX_FAR _ReceivedTM42Text
+ db $10, "@"
+
+TM42Explanation: ; 191d5 (6:51d5)
+ TX_FAR _TM42Explanation
+ db "@"
+
+TM42NoRoomText: ; 191da (6:51da)
+ TX_FAR _TM42NoRoomText
+ db "@"
+
+ViridianCityText7: ; 191df (6:51df)
+ db $08 ; asm
+ ld hl, ViridianCityText_1920a
+ call PrintText
+ ld c, $2
+ call DelayFrames
+ call YesNoChoice
+ ld a, [$cc26]
+ and a
+ jr z, .asm_42f68 ; 0x191f2
+ ld hl, ViridianCityText_1920f
+ call PrintText
+ ld a, $1
+ ld [W_VIRIDIANCITYCURSCRIPT], a
+ jr .asm_2413a ; 0x191ff
+.asm_42f68 ; 0x19201
+ ld hl, ViridianCityText_19214
+ call PrintText
+.asm_2413a ; 0x19207
+ jp TextScriptEnd
+
+ViridianCityText_1920a: ; 1920a (6:520a)
+ TX_FAR _ViridianCityText_1920a
+ db "@"
+
+ViridianCityText_1920f: ; 1920f (6:520f)
+ TX_FAR _ViridianCityText_1920f
+ db "@"
+
+ViridianCityText_19214: ; 19214 (6:5214)
+ TX_FAR _ViridianCityText_19214
+ db "@"
+
+ViridianCityText15: ; 19219 (6:5219)
+ TX_FAR _ViridianCityText_19219
+ db "@"
+
+ViridianCityText8: ; 1921e (6:521e)
+ TX_FAR _ViridianCityText8
+ db "@"
+
+ViridianCityText9: ; 19223 (6:5223)
+ TX_FAR _ViridianCityText9
+ db "@"
+
+ViridianCityText10: ; 19228 (6:5228)
+ TX_FAR _ViridianCityText10
+ db "@"
+
+ViridianCityText13: ; 1922d (6:522d)
+ TX_FAR _ViridianCityText13
+ db "@"
+
+ViridianCityText14: ; 19232 (6:5232)
+ TX_FAR _ViridianCityText14
+ db "@"
diff --git a/scripts/viridianforest.asm b/scripts/viridianforest.asm
new file mode 100755
index 00000000..4e55733b
--- /dev/null
+++ b/scripts/viridianforest.asm
@@ -0,0 +1,145 @@
+ViridianForestScript: ; 6110d (18:510d)
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianForestTrainerHeaders
+ ld de, ViridianForestScriptPointers
+ ld a, [W_VIRIDIANFORESTCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VIRIDIANFORESTCURSCRIPT], a
+ ret
+
+ViridianForestScriptPointers: ; 61120 (18:5120)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw EndTrainerBattle
+
+ViridianForestTextPointers: ; 61126 (18:5126)
+ dw ViridianForestText1
+ dw ViridianForestText2
+ dw ViridianForestText3
+ dw ViridianForestText4
+ dw Predef5CText
+ dw Predef5CText
+ dw Predef5CText
+ dw ViridianForestText8
+ dw ViridianForestText9
+ dw ViridianForestText10
+ dw ViridianForestText11
+ dw ViridianForestText12
+ dw ViridianForestText13
+ dw ViridianForestText14
+
+ViridianForestTrainerHeaders: ; 61142 (18:5142)
+ViridianForestTrainerHeader0: ; 61142 (18:5142)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f3 ; flag's byte
+ dw ViridianForestBattleText1 ; 0x518a TextBeforeBattle
+ dw ViridianForestAfterBattleText1 ; 0x5194 TextAfterBattle
+ dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle
+ dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle
+
+ViridianForestTrainerHeader1: ; 6114e (18:514e)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f3 ; flag's byte
+ dw ViridianForestBattleText2 ; 0x5199 TextBeforeBattle
+ dw ViridianForestAfterBattleText2 ; 0x51a3 TextAfterBattle
+ dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle
+ dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle
+
+ViridianForestTrainerHeader2: ; 6115a (18:515a)
+ db $4 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7f3 ; flag's byte
+ dw ViridianForestBattleText3 ; 0x51a8 TextBeforeBattle
+ dw ViridianForestAfterBattleText3 ; 0x51b2 TextAfterBattle
+ dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle
+ dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle
+
+ db $ff
+
+ViridianForestText1: ; 61167 (18:5167)
+ TX_FAR _ViridianForestText1
+ db "@"
+
+ViridianForestText2: ; 6116c (18:516c)
+ db $08 ; asm
+ ld hl, ViridianForestTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianForestText3: ; 61176 (18:5176)
+ db $08 ; asm
+ ld hl, ViridianForestTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianForestText4: ; 61180 (18:5180)
+ db $08 ; asm
+ ld hl, ViridianForestTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianForestBattleText1: ; 6118a (18:518a)
+ TX_FAR _ViridianForestBattleText1
+ db "@"
+
+ViridianForestEndBattleText1: ; 6118f (18:518f)
+ TX_FAR _ViridianForestEndBattleText1
+ db "@"
+
+ViridianForestAfterBattleText1: ; 61194 (18:5194)
+ TX_FAR _ViridianFrstAfterBattleText1
+ db "@"
+
+ViridianForestBattleText2: ; 61199 (18:5199)
+ TX_FAR _ViridianForestBattleText2
+ db "@"
+
+ViridianForestEndBattleText2: ; 6119e (18:519e)
+ TX_FAR _ViridianForestEndBattleText2
+ db "@"
+
+ViridianForestAfterBattleText2: ; 611a3 (18:51a3)
+ TX_FAR _ViridianFrstAfterBattleText2
+ db "@"
+
+ViridianForestBattleText3: ; 611a8 (18:51a8)
+ TX_FAR _ViridianForestBattleText3
+ db "@"
+
+ViridianForestEndBattleText3: ; 611ad (18:51ad)
+ TX_FAR _ViridianForestEndBattleText3
+ db "@"
+
+ViridianForestAfterBattleText3: ; 611b2 (18:51b2)
+ TX_FAR _ViridianFrstAfterBattleText3
+ db "@"
+
+ViridianForestText8: ; 611b7 (18:51b7)
+ TX_FAR _ViridianForestText8
+ db "@"
+
+ViridianForestText9: ; 611bc (18:51bc)
+ TX_FAR _ViridianForestText9
+ db "@"
+
+ViridianForestText10: ; 611c1 (18:51c1)
+ TX_FAR _ViridianForestText10
+ db "@"
+
+ViridianForestText11: ; 611c6 (18:51c6)
+ TX_FAR _ViridianForestText11
+ db "@"
+
+ViridianForestText12: ; 611cb (18:51cb)
+ TX_FAR _ViridianForestText12
+ db "@"
+
+ViridianForestText13: ; 611d0 (18:51d0)
+ TX_FAR _ViridianForestText13
+ db "@"
+
+ViridianForestText14: ; 611d5 (18:51d5)
+ TX_FAR _ViridianForestText14
+ db "@"
diff --git a/scripts/viridianforestentrance.asm b/scripts/viridianforestentrance.asm
new file mode 100755
index 00000000..14b6cf49
--- /dev/null
+++ b/scripts/viridianforestentrance.asm
@@ -0,0 +1,14 @@
+ViridianForestEntranceScript: ; 5d65c (17:565c)
+ jp EnableAutoTextBoxDrawing
+
+ViridianForestEntranceTextPointers: ; 5d65f (17:565f)
+ dw ViridianForestEntranceText1
+ dw ViridianForestEntranceText2
+
+ViridianForestEntranceText1: ; 5d663 (17:5663)
+ TX_FAR _ViridianForestEntranceText1
+ db "@"
+
+ViridianForestEntranceText2: ; 5d668 (17:5668)
+ TX_FAR _ViridianForestEntranceText2
+ db "@"
diff --git a/scripts/viridianforestexit.asm b/scripts/viridianforestexit.asm
new file mode 100755
index 00000000..0d4d4b29
--- /dev/null
+++ b/scripts/viridianforestexit.asm
@@ -0,0 +1,14 @@
+ViridianForestExitScript: ; 5d587 (17:5587)
+ jp EnableAutoTextBoxDrawing
+
+ViridianForestExitTextPointers: ; 5d58a (17:558a)
+ dw ViridianForestExitText1
+ dw ViridianForestExitText2
+
+ViridianForestExitText1: ; 5d58e (17:558e)
+ TX_FAR _ViridianForestExitText1
+ db "@"
+
+ViridianForestExitText2: ; 5d593 (17:5593)
+ TX_FAR _ViridianForestExitText2
+ db "@"
diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm
new file mode 100755
index 00000000..0f042339
--- /dev/null
+++ b/scripts/viridiangym.asm
@@ -0,0 +1,514 @@
+ViridianGymScript: ; 748a3 (1d:48a3)
+ ld hl, Gym8CityName
+ ld de, Gym8LeaderName
+ call LoadGymLeaderAndCityName
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianGymTrainerHeaders
+ ld de, ViridianGymScriptPointers
+ ld a, [W_VIRIDIANGYMCURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_VIRIDIANGYMCURSCRIPT], a
+ ret
+
+Gym8CityName: ; 748bf (1d:48bf)
+ db "VIRIDIAN CITY@"
+Gym8LeaderName: ; 748cd (1d:48cd)
+ db "GIOVANNI@"
+
+ViridianGymScript_748d6: ; 748d6 (1d:48d6)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_VIRIDIANGYMCURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+ViridianGymScriptPointers: ; 748e1 (1d:48e1)
+ dw ViridianGymScript0
+ dw Func_324c
+ dw EndTrainerBattle
+ dw ViridianGymScript3
+ dw ViridianGymScript4
+
+ViridianGymScript0: ; 748eb (1d:48eb)
+ ld a, [W_YCOORD] ; $d361
+ ld b, a
+ ld a, [W_XCOORD] ; $d362
+ ld c, a
+ ld hl, ViridianGymArrowTilePlayerMovement
+ call Func_3442
+ cp $ff
+ jp z, CheckFightingMapTrainers
+ call Func_3486
+ ld hl, $d736
+ set 7, [hl]
+ ld a, (SFX_02_52 - SFX_Headers_02) / 3
+ call PlaySound
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $4
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+;format:
+;db y,x
+;dw pointer to movement
+ViridianGymArrowTilePlayerMovement: ; 74916 (1d:4916)
+ db $b,$13
+ dw ViridianGymArrowMovement1
+ db $1,$13
+ dw ViridianGymArrowMovement2
+ db $2,$12
+ dw ViridianGymArrowMovement3
+ db $2,$b
+ dw ViridianGymArrowMovement4
+ db $a,$10
+ dw ViridianGymArrowMovement5
+ db $6,$4
+ dw ViridianGymArrowMovement6
+ db $d,$5
+ dw ViridianGymArrowMovement7
+ db $e,$4
+ dw ViridianGymArrowMovement8
+ db $f,$0
+ dw ViridianGymArrowMovement9
+ db $f,$1
+ dw ViridianGymArrowMovement10
+ db $10,$d
+ dw ViridianGymArrowMovement11
+ db $11,$d
+ dw ViridianGymArrowMovement12
+ db $FF
+
+;format: direction, count
+;right: $10
+;left: $20
+;up: $40
+;down: $80
+ViridianGymArrowMovement1: ; 74947 (1d:4947)
+ db $40,$09,$FF
+
+ViridianGymArrowMovement2: ; 7494a (1d:494a)
+ db $20,$08,$FF
+
+ViridianGymArrowMovement3: ; 7494d (1d:494d)
+ db $80,$09,$FF
+
+ViridianGymArrowMovement4: ; 74950 (1d:4950)
+ db $10,$06,$FF
+
+ViridianGymArrowMovement5: ; 74953 (1d:4953)
+ db $80,$02,$FF
+
+ViridianGymArrowMovement6: ; 74956 (1d:4956)
+ db $80,$07,$FF
+
+ViridianGymArrowMovement7: ; 74959 (1d:4959)
+ db $10,$08,$FF
+
+ViridianGymArrowMovement8: ; 7495c (1d:495c)
+ db $10,$09,$FF
+
+ViridianGymArrowMovement9: ; 7495f (1d:495f)
+ db $40,$08,$FF
+
+ViridianGymArrowMovement10: ; 74962 (1d:4962)
+ db $40,$06,$FF
+
+ViridianGymArrowMovement11: ; 74965 (1d:4965)
+ db $20,$06,$FF
+
+ViridianGymArrowMovement12: ; 74968 (1d:4968)
+ db $20,$0C,$FF
+
+ViridianGymScript4: ; 7496b (1d:496b)
+ ld a, [$cd38]
+ and a
+ jr nz, .asm_74980
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld hl, $d736
+ res 7, [hl]
+ ld a, $0
+ ld [W_CURMAPSCRIPT], a
+ ret
+.asm_74980
+ ld b, BANK(LoadSpinnerArrowTiles)
+ ld hl, LoadSpinnerArrowTiles
+ jp Bankswitch
+
+ViridianGymScript3: ; 74988 (1d:4988)
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, ViridianGymScript_748d6
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ViridianGymScript3_74995: ; 74995 (1d:4995)
+ ld a, $c
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d751
+ set 1, [hl]
+ ld bc, (TM_27 << 8) | 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $d
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ ld hl, $d751
+ set 0, [hl]
+ jr .asm_749be
+.BagFull
+ ld a, $e
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+.asm_749be
+ ld hl, W_OBTAINEDBADGES
+ set 7, [hl]
+ ld hl, $d72a
+ set 7, [hl]
+
+ ; deactivate gym trainers
+ ld a, [$d751]
+ or %11111100
+ ld [$d751], a
+ ld a, [$d752]
+ or %00000011
+ ld [$d752], a
+
+ ld a, $23
+ ld [$cc4d], a
+ ld a, $15
+ call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8))
+ ld hl, $d7eb
+ set 1, [hl]
+ set 7, [hl]
+ jp ViridianGymScript_748d6
+
+ViridianGymTextPointers: ; 749ec (1d:49ec)
+ dw ViridianGymText1
+ dw ViridianGymText2
+ dw ViridianGymText3
+ dw ViridianGymText4
+ dw ViridianGymText5
+ dw ViridianGymText6
+ dw ViridianGymText7
+ dw ViridianGymText8
+ dw ViridianGymText9
+ dw ViridianGymText10
+ dw Predef5CText
+ dw ViridianGymText12
+ dw ViridianGymText13
+ dw ViridianGymText14
+
+ViridianGymTrainerHeaders: ; 74a08 (1d:4a08)
+ViridianGymTrainerHeader0: ; 74a08 (1d:4a08)
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText1 ; 0x4afd TextBeforeBattle
+ dw ViridianGymAfterBattleText1 ; 0x4b07 TextAfterBattle
+ dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle
+ dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle
+
+ViridianGymTrainerHeader1: ; 74a14 (1d:4a14)
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText2 ; 0x4b16 TextBeforeBattle
+ dw ViridianGymAfterBattleText2 ; 0x4b20 TextAfterBattle
+ dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle
+ dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle
+
+ViridianGymTrainerHeader2: ; 74a20 (1d:4a20)
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText3 ; 0x4b2f TextBeforeBattle
+ dw ViridianGymAfterBattleText3 ; 0x4b39 TextAfterBattle
+ dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle
+ dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle
+
+ViridianGymTrainerHeader3: ; 74a2c (1d:4a2c)
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText4 ; 0x4b48 TextBeforeBattle
+ dw ViridianGymAfterBattleText4 ; 0x4b52 TextAfterBattle
+ dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle
+ dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle
+
+ViridianGymTrainerHeader4: ; 74a38 (1d:4a38)
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText5 ; 0x4b61 TextBeforeBattle
+ dw ViridianGymAfterBattleText5 ; 0x4b6b TextAfterBattle
+ dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle
+ dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle
+
+ViridianGymTrainerHeader5: ; 74a44 (1d:4a44)
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText6 ; 0x4b7a TextBeforeBattle
+ dw ViridianGymAfterBattleText6 ; 0x4b84 TextAfterBattle
+ dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle
+ dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle
+
+ViridianGymTrainerHeader6: ; 74a50 (1d:4a50)
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText7 ; 0x4b93 TextBeforeBattle
+ dw ViridianGymAfterBattleText7 ; 0x4b9d TextAfterBattle
+ dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle
+ dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle
+
+ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c)
+ db $9 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d751 ; flag's byte
+ dw ViridianGymBattleText8 ; 0x4bac TextBeforeBattle
+ dw ViridianGymAfterBattleText8 ; 0x4bb6 TextAfterBattle
+ dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle
+ dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle
+
+ db $ff
+
+ViridianGymText1: ; 74a69 (1d:4a69)
+ db $08 ; asm
+ ld a, [$d751]
+ bit 1, a
+ jr z, .asm_6de66 ; 0x74a6f
+ bit 0, a
+ jr nz, .asm_9fc95 ; 0x74a73
+ call z, ViridianGymScript3_74995
+ call DisableWaitingAfterTextDisplay
+ jr .asm_6dff7 ; 0x74a7b
+.asm_9fc95 ; 0x74a7d
+ ld a, $1
+ ld [$cc3c], a
+ ld hl, ViridianGymText_74ad9
+ call PrintText
+ call GBFadeIn1
+ ld a, $32
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ call UpdateSprites
+ call Delay3
+ call GBFadeOut1
+ jr .asm_6dff7 ; 0x74a9e
+.asm_6de66 ; 0x74aa0
+ ld hl, ViridianGymText_74ace
+ call PrintText
+ ld hl, $d72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, ViridianGymText_74ad3
+ ld de, ViridianGymText_74ad3
+ call PreBattleSaveRegisters
+ ldh a, [$8c]
+ ld [$cf13], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $8
+ ld [$d05c], a
+ ld a, $3
+ ld [W_VIRIDIANGYMCURSCRIPT], a
+.asm_6dff7 ; 0x74acb
+ jp TextScriptEnd
+
+ViridianGymText_74ace: ; 74ace (1d:4ace)
+ TX_FAR _ViridianGymText_74ace
+ db "@"
+
+ViridianGymText_74ad3: ; 74ad3 (1d:4ad3)
+ TX_FAR _ViridianGymText_74ad3
+ db $0b, "@"
+
+ViridianGymText_74ad9: ; 74ad9 (1d:4ad9)
+ TX_FAR _ViridianGymText_74ad9
+ db $0d, "@"
+
+ViridianGymText12: ; 74adf (1d:4adf)
+ TX_FAR _ViridianGymText12
+ db "@"
+
+ViridianGymText13: ; 74ae4 (1d:4ae4)
+ TX_FAR _ReceivedTM27Text
+ db $0b
+
+TM27ExplanationText: ; 74ae9 (1d:4ae9)
+ TX_FAR _TM27ExplanationText
+ db "@"
+
+ViridianGymText14: ; 74aee (1d:4aee)
+ TX_FAR _TM27NoRoomText
+ db "@"
+
+ViridianGymText2: ; 74af3 (1d:4af3)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText1: ; 74afd (1d:4afd)
+ TX_FAR _ViridianGymBattleText1
+ db "@"
+
+ViridianGymEndBattleText1: ; 74b02 (1d:4b02)
+ TX_FAR _ViridianGymEndBattleText1
+ db "@"
+
+ViridianGymAfterBattleText1: ; 74b07 (1d:4b07)
+ TX_FAR _ViridianGymAfterBattleText1
+ db "@"
+
+ViridianGymText3: ; 74b0c (1d:4b0c)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText2: ; 74b16 (1d:4b16)
+ TX_FAR _ViridianGymBattleText2
+ db "@"
+
+ViridianGymEndBattleText2: ; 74b1b (1d:4b1b)
+ TX_FAR _ViridianGymEndBattleText2
+ db "@"
+
+ViridianGymAfterBattleText2: ; 74b20 (1d:4b20)
+ TX_FAR _ViridianGymAfterBattleText2
+ db "@"
+
+ViridianGymText4: ; 74b25 (1d:4b25)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText3: ; 74b2f (1d:4b2f)
+ TX_FAR _ViridianGymBattleText3
+ db "@"
+
+ViridianGymEndBattleText3: ; 74b34 (1d:4b34)
+ TX_FAR _ViridianGymEndBattleText3
+ db "@"
+
+ViridianGymAfterBattleText3: ; 74b39 (1d:4b39)
+ TX_FAR _ViridianGymAfterBattleText3
+ db "@"
+
+ViridianGymText5: ; 74b3e (1d:4b3e)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText4: ; 74b48 (1d:4b48)
+ TX_FAR _ViridianGymBattleText4
+ db "@"
+
+ViridianGymEndBattleText4: ; 74b4d (1d:4b4d)
+ TX_FAR _ViridianGymEndBattleText4
+ db "@"
+
+ViridianGymAfterBattleText4: ; 74b52 (1d:4b52)
+ TX_FAR _ViridianGymAfterBattleText4
+ db "@"
+
+ViridianGymText6: ; 74b57 (1d:4b57)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText5: ; 74b61 (1d:4b61)
+ TX_FAR _ViridianGymBattleText5
+ db "@"
+
+ViridianGymEndBattleText5: ; 74b66 (1d:4b66)
+ TX_FAR _ViridianGymEndBattleText5
+ db "@"
+
+ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b)
+ TX_FAR _ViridianGymAfterBattleText5
+ db "@"
+
+ViridianGymText7: ; 74b70 (1d:4b70)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText6: ; 74b7a (1d:4b7a)
+ TX_FAR _ViridianGymBattleText6
+ db "@"
+
+ViridianGymEndBattleText6: ; 74b7f (1d:4b7f)
+ TX_FAR _ViridianGymEndBattleText6
+ db "@"
+
+ViridianGymAfterBattleText6: ; 74b84 (1d:4b84)
+ TX_FAR _ViridianGymAfterBattleText6
+ db "@"
+
+ViridianGymText8: ; 74b89 (1d:4b89)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText7: ; 74b93 (1d:4b93)
+ TX_FAR _ViridianGymBattleText7
+ db "@"
+
+ViridianGymEndBattleText7: ; 74b98 (1d:4b98)
+ TX_FAR _ViridianGymEndBattleText7
+ db "@"
+
+ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d)
+ TX_FAR _ViridianGymAfterBattleText7
+ db "@"
+
+ViridianGymText9: ; 74ba2 (1d:4ba2)
+ db $08 ; asm
+ ld hl, ViridianGymTrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText8: ; 74bac (1d:4bac)
+ TX_FAR _ViridianGymBattleText8
+ db "@"
+
+ViridianGymEndBattleText8: ; 74bb1 (1d:4bb1)
+ TX_FAR _ViridianGymEndBattleText8
+ db "@"
+
+ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6)
+ TX_FAR _ViridianGymAfterBattleText8
+ db "@"
+
+ViridianGymText10: ; 74bbb (1d:4bbb)
+ db $08 ; asm
+ ld a, [$d751]
+ bit 1, a
+ jr nz, .asm_1abd1 ; 0x74bc1
+ ld hl, ViridianGymText_74bd4
+ call PrintText
+ jr .asm_6064d ; 0x74bc9
+.asm_1abd1 ; 0x74bcb
+ ld hl, ViridianGymText_74bd9
+ call PrintText
+.asm_6064d ; 0x74bd1
+ jp TextScriptEnd
+
+ViridianGymText_74bd4: ; 74bd4 (1d:4bd4)
+ TX_FAR _ViridianGymText_74bd4
+ db "@"
+
+ViridianGymText_74bd9: ; 74bd9 (1d:4bd9)
+ TX_FAR _ViridianGymText_74bd9
+ db "@"
diff --git a/scripts/viridianhouse.asm b/scripts/viridianhouse.asm
new file mode 100755
index 00000000..ab8b6786
--- /dev/null
+++ b/scripts/viridianhouse.asm
@@ -0,0 +1,33 @@
+ViridianHouseScript: ; 1d58a (7:558a)
+ jp EnableAutoTextBoxDrawing
+
+ViridianHouseTextPointers: ; 1d58d (7:558d)
+ dw ViridianHouseText1
+ dw ViridianHouseText2
+ dw ViridianHouseText3
+ dw ViridianHouseText4
+
+ViridianHouseText1: ; 1d595 (7:5595)
+ TX_FAR _ViridianHouseText1
+ db "@"
+
+ViridianHouseText2: ; 1d59a (7:559a)
+ TX_FAR _ViridianHouseText2
+ db "@"
+
+ViridianHouseText3: ; 1d59f (7:559f)
+ db $08 ; asm
+ ld hl, ViridianHouseText_1d5b1
+ call PrintText
+ ld a, SPEAROW
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+ViridianHouseText_1d5b1: ; 1d5b1 (7:55b1)
+ TX_FAR _ViridianHouseText_1d5b1
+ db "@"
+
+ViridianHouseText4: ; 1d5b6 (7:55b6)
+ TX_FAR _ViridianHouseText4
+ db "@"
diff --git a/scripts/viridianmart.asm b/scripts/viridianmart.asm
new file mode 100755
index 00000000..1c53a5a3
--- /dev/null
+++ b/scripts/viridianmart.asm
@@ -0,0 +1,95 @@
+ViridianMartScript: ; 1d46e (7:546e)
+ call ViridianMartScript_1d47d
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianMartScriptPointers
+ ld a, [W_VIRIDIANMARKETCURSCRIPT]
+ jp CallFunctionInTable
+
+ViridianMartScript_1d47d: ; 1d47d (7:547d)
+ ld a, [$d74e]
+ bit 0, a
+ jr nz, .asm_1d489 ; 0x1d482 $5
+ ld hl, ViridianMartTextPointers ; $54e0
+ jr .asm_1d48c ; 0x1d487 $3
+.asm_1d489
+ ld hl, ViridianMartTextPointers + $a ; $54ea ; starts at ViridianMartText6
+.asm_1d48c
+ ld a, l
+ ld [W_MAPTEXTPTR], a
+ ld a, h
+ ld [W_MAPTEXTPTR+1], a
+ ret
+
+ViridianMartScriptPointers: ; 1d495 (7:5495)
+ dw ViridianMartScript0
+ dw ViridianMartScript1
+ dw ViridianMartScript2
+
+ViridianMartScript0: ; 1d49b (7:549b)
+ call UpdateSprites
+ ld a, $4
+ ld [$ff8c], a
+ call DisplayTextID
+ ld hl, $ccd3
+ ld de, RLEMovement1d4bb
+ call DecodeRLEList
+ dec a
+ ld [$cd38], a
+ call Func_3486
+ ld a, $1
+ ld [W_VIRIDIANMARKETCURSCRIPT], a
+ ret
+
+RLEMovement1d4bb: ; 1d4bb (7:54bb)
+ db $20, $01
+ db $40, $02
+ db $ff
+
+ViridianMartScript1: ; 1d4c0 (7:54c0)
+ ld a, [$cd38]
+ and a
+ ret nz
+ call Delay3
+ ld a, $5
+ ld [$ff8c], a
+ call DisplayTextID
+ ld bc, (OAKS_PARCEL << 8) + 1
+ call GiveItem
+ ld hl, $d74e
+ set 1, [hl]
+ ld a, $2
+ ld [W_VIRIDIANMARKETCURSCRIPT], a
+ ; fallthrough
+ViridianMartScript2: ; 1d4df (7:54df)
+ ret
+
+ViridianMartTextPointers: ; 1d4e0 (7:54e0)
+ dw ViridianMartText1
+ dw ViridianMartText2
+ dw ViridianMartText3
+ dw ViridianMartText4
+ dw ViridianMartText5
+ dw ViridianMartText6
+ dw ViridianMartText2
+ dw ViridianMartText3
+
+ViridianMartText1: ; 1d4f0 (7:54f0)
+ TX_FAR _ViridianMartText1
+ db "@"
+
+ViridianMartText4: ; 1d4f5 (7:54f5)
+ TX_FAR _ViridianMartText4
+ db "@"
+
+ViridianMartText5: ; 1d4fa (7:54fa)
+ TX_FAR ViridianMartParcelQuestText
+ db $11
+ db "@"
+
+ViridianMartText2: ; 1d500 (7:5500)
+ TX_FAR _ViridianMartText2
+ db "@"
+
+ViridianMartText3: ; 1d505 (7:5505)
+ TX_FAR _ViridianMartText3
+ db "@"
diff --git a/scripts/viridianpokecenter.asm b/scripts/viridianpokecenter.asm
new file mode 100755
index 00000000..08371ce3
--- /dev/null
+++ b/scripts/viridianpokecenter.asm
@@ -0,0 +1,23 @@
+ViridianPokeCenterScript: ; 4425d (11:425d)
+ call Func_22fa
+ jp EnableAutoTextBoxDrawing
+
+ViridianPokecenterTextPointers: ; 44263 (11:4263)
+ dw ViridianPokeCenterText1
+ dw ViridianPokeCenterText2
+ dw ViridianPokeCenterText3
+ dw ViridianPokeCenterText4
+
+ViridianPokeCenterText1: ; 4426b (11:426b)
+ db $ff
+
+ViridianPokeCenterText2: ; 4426c (11:426c)
+ TX_FAR _ViridianPokeCenterText1
+ db "@"
+
+ViridianPokeCenterText3: ; 44271 (11:4271)
+ TX_FAR _ViridianPokeCenterText3
+ db "@"
+
+ViridianPokeCenterText4: ; 44276 (11:4276)
+ db $f6
diff --git a/text.asm b/text.asm
index af0509ed..979a8178 100644
--- a/text.asm
+++ b/text.asm
@@ -34,29 +34,29 @@ _CardKeyFailText:: ; 80029 (20:4029)
line "CARD KEY!"
done
-_UnnamedText_33cf:: ; 80045 (20:4045)
+_TrainerNameText:: ; 80045 (20:4045)
TX_RAM $cd6d
text ": @@"
-_UnnamedText_70847:: ; 8004d (20:404d)
+_NoNibbleText:: ; 8004d (20:404d)
text "Not even a nibble!"
prompt
-_UnnamedText_7084c:: ; 80061 (20:4061)
+_NothingHereText:: ; 80061 (20:4061)
text "Looks like there's"
line "nothing here."
prompt
-_UnnamedText_70851:: ; 80082 (20:4082)
+_ItsABiteText:: ; 80082 (20:4082)
text "Oh!"
line "It's a bite!"
prompt
-_UnnamedText_24db:: ; 80093 (20:4093)
+_ExclamationText:: ; 80093 (20:4093)
text "!"
done
-_UnnamedText_24e0:: ; 80096 (20:4096)
+_GroundRoseText:: ; 80096 (20:4096)
text "Ground rose up"
line "somewhere!"
done
@@ -88,7 +88,7 @@ _NoMoreRoomForItemText:: ; 8012a (20:412a)
line "items!"
done
-_UnnamedText_59091:: ; 80143 (20:4143)
+_OaksAideHiText:: ; 80143 (20:4143)
text "Hi! Remember me?"
line "I'm PROF.OAK's"
cont "AIDE!"
@@ -111,7 +111,7 @@ _UnnamedText_59091:: ; 80143 (20:4143)
cont "#MON?"
done
-_UnnamedText_59096:: ; 801e4 (20:41e4)
+_OaksAideUhOhText:: ; 801e4 (20:41e4)
text "Let's see..."
line "Uh-oh! You have"
cont "caught only @"
@@ -128,7 +128,7 @@ _UnnamedText_59096:: ; 801e4 (20:41e4)
text "."
done
-_UnnamedText_5909b:: ; 80250 (20:4250)
+_OaksAideComeBackText:: ; 80250 (20:4250)
text "Oh. I see."
para "When you get @"
@@ -140,7 +140,7 @@ _UnnamedText_5909b:: ; 80250 (20:4250)
text "."
done
-_UnnamedText_590a0:: ; 8028c (20:428c)
+_OaksAideHereYouGoText:: ; 8028c (20:428c)
text "Great! You have"
line "caught @"
TX_NUM $ffdd, 1, 3
@@ -151,13 +151,13 @@ _UnnamedText_590a0:: ; 8028c (20:428c)
para "Here you go!"
prompt
-_UnnamedText_590a5:: ; 802d9 (20:42d9)
+_OaksAideGotItemText:: ; 802d9 (20:42d9)
text $52, " got the"
line "@"
TX_RAM $cc5b
text "!@@"
-_UnnamedText_590ab:: ; 802ec (20:42ec)
+_OaksAideNoRoomText:: ; 802ec (20:42ec)
text "Oh! I see you"
line "don't have any"
cont "room for the"
@@ -254,7 +254,7 @@ _AIBattleUseItemText:: ; 880d5 (22:40d5)
text "!"
prompt
-_UnnamedText_4160c:: ; 880ef (22:40ef)
+_TradeWentToText:: ; 880ef (22:40ef)
TX_RAM $cf4b
text " went"
line "to @"
@@ -262,14 +262,14 @@ _UnnamedText_4160c:: ; 880ef (22:40ef)
text "."
done
-_UnnamedText_41623:: ; 88103 (22:4103)
+_TradeForText:: ; 88103 (22:4103)
text "For ", $52, "'s"
line "@"
TX_RAM $cf4b
text ","
done
-_UnnamedText_41628:: ; 88112 (22:4112)
+_TradeSendsText:: ; 88112 (22:4112)
TX_RAM $d887
text " sends"
line "@"
@@ -277,26 +277,26 @@ _UnnamedText_41628:: ; 88112 (22:4112)
text "."
done
-_UnnamedText_41642:: ; 88124 (22:4124)
+_TradeWavesFarewellText:: ; 88124 (22:4124)
TX_RAM $d887
text " waves"
line "farewell as"
done
-_UnnamedText_41647:: ; 8813b (22:413b)
+_TradeTransferredText:: ; 8813b (22:413b)
TX_RAM $cd6d
text " is"
line "transferred."
done
-_UnnamedText_41655:: ; 88150 (22:4150)
+_TradeTakeCareText:: ; 88150 (22:4150)
text "Take good care of"
line "@"
TX_RAM $cd6d
text "."
done
-_UnnamedText_4166c:: ; 8816a (22:416a)
+_TradeWillTradeText:: ; 8816a (22:416a)
TX_RAM $d887
text " will"
line "trade @"
@@ -304,7 +304,7 @@ _UnnamedText_4166c:: ; 8816a (22:416a)
db $0
done
-_UnnamedText_41671:: ; 88180 (22:4180)
+_TradeforText:: ; 88180 (22:4180)
text "for ", $52, "'s"
line "@"
TX_RAM $cf4b
@@ -340,21 +340,21 @@ _OneMoreGoSlotMachineText:: ; 881f7 (22:41f7)
line "go?"
done
-_UnnamedText_37673:: ; 88206 (22:4206)
+_LinedUpText:: ; 88206 (22:4206)
text " lined up!"
line "Scored @"
TX_RAM $cf4b
text " coins!"
done
-_UnnamedText_3769d:: ; 88226 (22:4226)
+_NotThisTimeText:: ; 88226 (22:4226)
text "Not this time!"
prompt
-_UnnamedText_37722:: ; 88236 (22:4236)
+_YeahText:: ; 88236 (22:4236)
text "Yeah!@@"
-_UnnamedText_703fa:: ; 8823e (22:423e)
+_DexSeenOwnedText:: ; 8823e (22:423e)
text "#DEX Seen:@"
TX_NUM $cc5b, 1, 3
db $0
@@ -362,7 +362,7 @@ _UnnamedText_703fa:: ; 8823e (22:423e)
TX_NUM $cc5c, 1, 3
db "@"
-_UnnamedText_703ff:: ; 88267 (22:4267)
+_DexRatingText:: ; 88267 (22:4267)
text "#DEX Rating", $6d
done
@@ -525,31 +525,31 @@ _NewBicycleText:: ; 886e6 (22:46e6)
line "BICYCLE!"
done
-_UnnamedText_1e960:: ; 886fc (22:46fc)
+_PushStartText:: ; 886fc (22:46fc)
text "Push START to"
line "open the MENU!"
done
-_UnnamedText_1e97e:: ; 8871a (22:471a)
+_SaveOptionText:: ; 8871a (22:471a)
text "The SAVE option is"
line "on the MENU"
cont "screen."
done
-_UnnamedText_1e983:: ; 88742 (22:4742)
+_StrengthsAndWeaknessesText:: ; 88742 (22:4742)
text "All #MON types"
line "have strong and"
cont "weak points"
cont "against others."
done
-_UnnamedText_1ea0d:: ; 8877e (22:477e)
+_TimesUpText:: ; 8877e (22:477e)
text "PA: Ding-dong!"
para "Time's up!"
prompt
-_UnnamedText_1ea12:: ; 88798 (22:4798)
+_GameOverText:: ; 88798 (22:4798)
text "PA: Your SAFARI"
line "GAME is over!"
done
@@ -618,7 +618,7 @@ _CinnabarGymQuizIncorrectText:: ; 8898f (22:498f)
text "Sorry! Bad call!"
prompt
-_UnnamedText_1eb69:: ; 889a1 (22:49a1)
+_MagazinesText:: ; 889a1 (22:49a1)
text "#MON magazines!"
para "#MON notebooks!"
@@ -699,7 +699,7 @@ _GameCornerSomeonesKeysText:: ; 88bcd (22:4bcd)
line "They'll be back."
done
-_UnnamedText_21865:: ; 88bed (22:4bed)
+_JustAMomentText:: ; 88bed (22:4bed)
text "Just a moment."
done
@@ -977,13 +977,13 @@ _VermilionGymTrashFailText:: ; 8948c (22:548c)
cont "Hey! The electric"
cont "locks were reset!@@"
-UnnamedText_894d0:: ; 894d0 (22:54d0)
+_FoundHiddenItemText:: ; 894d0 (22:54d0)
text $52, " found"
line "@"
TX_RAM $cd6d
text "!@@"
-_UnnamedText_76794:: ; 894e1 (22:54e1)
+_HiddenItemBagFullText:: ; 894e1 (22:54e1)
text "But, ", $52, " has"
line "no more room for"
cont "other items!"
@@ -1046,21 +1046,21 @@ _PokemonStuffText:: ; 8961f (22:561f)
line "#MON stuff!"
done
-_UnnamedText_3c1a8:: ; 89639 (22:5639)
+_OutOfSafariBallsText:: ; 89639 (22:5639)
text "PA: Ding-dong!"
para "You are out of"
line "SAFARI BALLs!"
prompt
-_UnnamedText_3c229:: ; 89666 (22:5666)
+_WildRanText:: ; 89666 (22:5666)
text "Wild @"
TX_RAM W_ENEMYMONNAME
db $0
line "ran!"
prompt
-_UnnamedText_3c22e:: ; 89677 (22:5677)
+_EnemyRanText:: ; 89677 (22:5677)
text "Enemy @"
TX_RAM W_ENEMYMONNAME
db $0
@@ -1082,7 +1082,7 @@ _HurtByLeechSeedText:: ; 896b3 (22:56b3)
line $5a, "!"
prompt
-_EnemyMonFainted:: ; 0x896c7
+_EnemyMonFaintedText:: ; 0x896c7
text "Enemy @"
TX_RAM W_ENEMYMONNAME
db $0
@@ -1110,7 +1110,7 @@ _PlayerMonFaintedText:: ; 8970c (22:570c)
line "fainted!"
prompt
-_UnnamedText_3c7d3:: ; 8971a (22:571a)
+_UseNextMonText:: ; 8971a (22:571a)
text "Use next #MON?"
done
@@ -1154,31 +1154,31 @@ _TrainerSentOutText:: ; 897b4 (22:57b4)
text "!"
done
-_UnnamedText_3cab4:: ; 897c9 (22:57c9)
+_NoWillText:: ; 897c9 (22:57c9)
text "There's no will"
line "to fight!"
prompt
-_UnnamedText_3cb97:: ; 897e3 (22:57e3)
+_CantEscapeText:: ; 897e3 (22:57e3)
text "Can't escape!"
prompt
-_UnnamedText_3cb9c:: ; 897f1 (22:57f1)
+_NoRunningText:: ; 897f1 (22:57f1)
text "No! There's no"
line "running from a"
cont "trainer battle!"
prompt
-_UnnamedText_3cba1:: ; 8981f (22:581f)
+_GotAwayText:: ; 8981f (22:581f)
text "Got away safely!"
prompt
-ItemsCantBeUsedHere_:: ; 89831 (22:5831)
+_ItemsCantBeUsedHereText:: ; 89831 (22:5831)
text "Items can't be"
line "used here."
prompt
-_UnnamedText_3d1f5:: ; 8984b (22:584b)
+_AlreadyOutText:: ; 8984b (22:584b)
TX_RAM W_PLAYERMONNAME
text " is"
line "already out!"
@@ -1194,7 +1194,7 @@ _MoveDisabledText:: ; 8987b (22:587b)
line "disabled!"
prompt
-_UnnamedText_3d430:: ; 89892 (22:5892)
+_NoMovesLeftText:: ; 89892 (22:5892)
TX_RAM W_PLAYERMONNAME
text " has no"
line "moves left!"
@@ -1228,7 +1228,7 @@ _WokeUpText:: ; 89914 (22:5914)
line "woke up!"
prompt
-_FrozenText:: ; 89920 (22:5920)
+_IsFrozenText:: ; 89920 (22:5920)
text $5A
line "is frozen solid!"
prompt
@@ -1293,7 +1293,7 @@ _CantMoveText:: ; 89a1b (22:5a1b)
line "can't move!"
prompt
-_UnnamedText_3daa8:: ; 89a29 (22:5a29)
+_MoveIsDisabledText:: ; 89a29 (22:5a29)
text $5a, "'s"
line "@"
TX_RAM $cd6d
@@ -1301,42 +1301,42 @@ _UnnamedText_3daa8:: ; 89a29 (22:5a29)
cont "disabled!"
prompt
-_UnnamedText_3dafb:: ; 89a40 (22:5a40)
+_MonName1Text:: ; 89a40 (22:5a40)
text $5a, "@@"
-_UnnamedText_3db2d:: ; 89a44 (22:5a44)
+_Used1Text:: ; 89a44 (22:5a44)
db $0
line "used @@"
-_UnnamedText_3db34:: ; 89a4d (22:5a4d)
+_Used2Text:: ; 89a4d (22:5a4d)
db $0
line "used @@"
-_UnnamedText_3db43:: ; 89a56 (22:5a56)
+_InsteadText:: ; 89a56 (22:5a56)
text "instead,"
cont "@@"
-_UnnamedText_3db4c:: ; 89a62 (22:5a62)
+_CF4BText:: ; 89a62 (22:5a62)
TX_RAM $cf4b
text "@"
-_UnnamedText_3db6c:: ; 89a67 (22:5a67)
+_ExclamationPoint1Text:: ; 89a67 (22:5a67)
text "!"
done
-_UnnamedText_3db71:: ; 89a6a (22:5a6a)
+_ExclamationPoint2Text:: ; 89a6a (22:5a6a)
text "!"
done
-_UnnamedText_3db76:: ; 89a6d (22:5a6d)
+_ExclamationPoint3Text:: ; 89a6d (22:5a6d)
text "!"
done
-_UnnamedText_3db7b:: ; 89a70 (22:5a70)
+_ExclamationPoint4Text:: ; 89a70 (22:5a70)
text "!"
done
-_UnnamedText_3db80:: ; 89a73 (22:5a73)
+_ExclamationPoint5Text:: ; 89a73 (22:5a73)
text "!"
done
@@ -1361,39 +1361,39 @@ _DoesntAffectMonText:: ; 89ab4 (22:5ab4)
line $59, "!"
prompt
-_UnnamedText_3dc7e:: ; 89ac9 (22:5ac9)
+_CriticalHitText:: ; 89ac9 (22:5ac9)
text "Critical hit!"
prompt
-_UnnamedText_3dc83:: ; 89ad8 (22:5ad8)
+_OHKOText:: ; 89ad8 (22:5ad8)
text "One-hit KO!"
prompt
-_UnnamedText_3ddb6:: ; 89ae5 (22:5ae5)
+_LoafingAroundText:: ; 89ae5 (22:5ae5)
TX_RAM W_PLAYERMONNAME
text " is"
line "loafing around."
prompt
-_UnnamedText_3ddbb:: ; 89afd (22:5afd)
+_BeganToNapText:: ; 89afd (22:5afd)
TX_RAM W_PLAYERMONNAME
text " began"
line "to nap!"
prompt
-_UnnamedText_3ddc0:: ; 89b10 (22:5b10)
+_WontObeyText:: ; 89b10 (22:5b10)
TX_RAM W_PLAYERMONNAME
text " won't"
line "obey!"
prompt
-_UnnamedText_3ddc5:: ; 89b20 (22:5b20)
+_TurnedAwayText:: ; 89b20 (22:5b20)
TX_RAM W_PLAYERMONNAME
text " turned"
line "away!"
prompt
-_UnnamedText_3ddca:: ; 89b32 (22:5b32)
+_IgnoredOrdersText:: ; 89b32 (22:5b32)
TX_RAM W_PLAYERMONNAME
db $0
line "ignored orders!"
@@ -1426,38 +1426,38 @@ _HitXTimesText:: ; 89baf (22:5baf)
text " times!"
prompt
-_UnnamedText_554b2:: ; 89bc2 (22:5bc2)
+_GainedText:: ; 89bc2 (22:5bc2)
TX_RAM $cd6d
text " gained"
line "@@"
-_UnnamedText_554cb:: ; 89bd0 (22:5bd0)
+_WithExpAllText:: ; 89bd0 (22:5bd0)
text "with EXP.ALL,"
cont "@@"
-_UnnamedText_554d4:: ; 89be1 (22:5be1)
+_BoostedText:: ; 89be1 (22:5be1)
text "a boosted"
cont "@@"
-_UnnamedText_554d8:: ; 89bee (22:5bee)
+_ExpPointsText:: ; 89bee (22:5bee)
TX_NUM $cf4b, 2, 4
text " EXP. Points!"
prompt
-UnnamedText_89c01:: ; 89c01 (22:5c01)
+_GrewLevelText:: ; 89c01 (22:5c01)
TX_RAM $cd6d
text " grew"
line "to level @"
TX_NUM $d127, 1, 3
text "!@@"
-_UnnamedText_58e3b:: ; 89c1d (22:5c1d)
+_WildMonAppearedText:: ; 89c1d (22:5c1d)
text "Wild @"
TX_RAM W_ENEMYMONNAME
db $0
line "appeared!"
prompt
-_UnnamedText_58e40:: ; 89c33 (22:5c33)
+_HookedMonAttackedText:: ; 89c33 (22:5c33)
text "The hooked"
line "@"
TX_RAM W_ENEMYMONNAME
@@ -1465,83 +1465,83 @@ _UnnamedText_58e40:: ; 89c33 (22:5c33)
cont "attacked!"
prompt
-_UnnamedText_58e45:: ; 89c4f (22:5c4f)
+_EnemyAppearedText:: ; 89c4f (22:5c4f)
TX_RAM W_ENEMYMONNAME
db $0
line "appeared!"
prompt
-_UnnamedText_58e4a:: ; 89c5e (22:5c5e)
+_TrainerWantsToFightText:: ; 89c5e (22:5c5e)
TX_RAM W_TRAINERNAME
text " wants"
line "to fight!"
prompt
-_UnnamedText_58e4f:: ; 89c73 (22:5c73)
+_UnveiledGhostText:: ; 89c73 (22:5c73)
text "SILPH SCOPE"
line "unveiled the"
cont "GHOST's identity!"
prompt
-_UnnamedText_58e54:: ; 89c9e (22:5c9e)
+_GhostCantBeIDdText:: ; 89c9e (22:5c9e)
text "Darn! The GHOST"
line "can't be ID'd!"
prompt
-_UnnamedText_58eae:: ; 89cbc (22:5cbc)
+_GoText:: ; 89cbc (22:5cbc)
text "Go! @@"
-_UnnamedText_58eb5:: ; 89cc3 (22:5cc3)
+_DoItText:: ; 89cc3 (22:5cc3)
text "Do it! @@"
-_UnnamedText_58ebc:: ; 89ccd (22:5ccd)
+_GetmText:: ; 89ccd (22:5ccd)
text "Get'm! @@"
-_UnnamedText_58ec3:: ; 89cd6 (22:5cd6)
+_EnemysWeakText:: ; 89cd6 (22:5cd6)
text "The enemy's weak!"
line "Get'm! @@"
-_UnnamedText_58ecc:: ; 89cf0 (22:5cf0)
+_PlayerMon1Text:: ; 89cf0 (22:5cf0)
TX_RAM W_PLAYERMONNAME
text "!"
done
-_UnnamedText_58ed7:: ; 89cf6 (22:5cf6)
+_PlayerMon2Text:: ; 89cf6 (22:5cf6)
TX_RAM W_PLAYERMONNAME
text " @@"
-_UnnamedText_58f25:: ; 89cfd (22:5cfd)
+_EnoughText:: ; 89cfd (22:5cfd)
text "enough!@@"
-_UnnamedText_58f2c:: ; 89d07 (22:5d07)
+_OKExclamationText:: ; 89d07 (22:5d07)
text "OK!@@"
-_UnnamedText_58f33:: ; 89d0d (22:5d0d)
+_GoodText:: ; 89d0d (22:5d0d)
text "good!@@"
-_UnnamedText_58f3e:: ; 89d15 (22:5d15)
+_ComeBackText:: ; 89d15 (22:5d15)
db $0
line "Come back!"
done
-_UnnamedText_2fb8e:: ; 89d22 (22:5d22)
+_SupperEffectiveText:: ; 89d22 (22:5d22)
text "It's super"
line "effective!"
prompt
-_UnnamedText_2fb93:: ; 89d38 (22:5d38)
+_NotVeryEffectiveText:: ; 89d38 (22:5d38)
text "It's not very"
line "effective..."
prompt
-SafariZoneEatingText:: ; 89d53 (22:5d53)
+_SafariZoneEatingText:: ; 89d53 (22:5d53)
text "Wild @"
TX_RAM W_ENEMYMONNAME
db $0
line "is eating!"
prompt
-SafariZoneAngryText:: ; 89d6a (22:5d6a)
+_SafariZoneAngryText:: ; 89d6a (22:5d6a)
text "Wild @"
TX_RAM W_ENEMYMONNAME
db $0
@@ -1551,19 +1551,19 @@ SafariZoneAngryText:: ; 89d6a (22:5d6a)
; money related
; XXX $2 BCD macro
; $2, pointer, byte
-_UnnamedText_1386b:: ; 89d80 (22:5d80)
+_PickUpPayDayMoneyText:: ; 89d80 (22:5d80)
text $52, " picked up"
line "¥@"
db $2, $e5, $cc, $c3
text "!"
prompt
-_UnnamedText_1c9c1:: ; 89d96 (22:5d96)
+_ClearSaveDataText:: ; 89d96 (22:5d96)
text "Clear all saved"
line "data?"
done
-_UnnamedText_1ca14:: ; 89dad (22:5dad)
+_WhichFloorText:: ; 89dad (22:5dad)
text "Which floor do"
line "you want? "
done
@@ -1649,12 +1649,12 @@ _RareCandyText:: ; 89ee2 (22:5ee2)
TX_NUM $d127, $1,$3
text "!@@"
-_UnnamedText_17f23:: ; 89efe (22:5efe)
+_TurnedOnPC1Text:: ; 89efe (22:5efe)
text $52, " turned on"
line "the PC."
prompt
-_UnnamedText_17f28:: ; 89f13 (22:5f13)
+_AccessedBillsPCText:: ; 89f13 (22:5f13)
text "Accessed BILL's"
line "PC."
@@ -1662,7 +1662,7 @@ _UnnamedText_17f28:: ; 89f13 (22:5f13)
line "Storage System."
prompt
-_UnnamedText_17f2d:: ; 89f45 (22:5f45)
+_AccessedSomeonesPCText:: ; 89f45 (22:5f45)
text "Accessed someone's"
line "PC."
@@ -1670,84 +1670,84 @@ _UnnamedText_17f2d:: ; 89f45 (22:5f45)
line "Storage System."
prompt
-_UnnamedText_17f32:: ; 89f7a (22:5f7a)
+_AccessedMyPCText:: ; 89f7a (22:5f7a)
text "Accessed my PC."
para "Accessed Item"
line "Storage System."
prompt
-_UnnamedText_7b22:: ; 89fa9 (22:5fa9)
+_TurnedOnPC2Text:: ; 89fa9 (22:5fa9)
text $52, " turned on"
line "the PC."
prompt
-_UnnamedText_7b27:: ; 89fbe (22:5fbe)
+_WhatDoYouWantText:: ; 89fbe (22:5fbe)
text "What do you want"
line "to do?"
done
-_UnnamedText_7b2c:: ; 89fd7 (22:5fd7)
+_WhatToDepositText:: ; 89fd7 (22:5fd7)
text "What do you want"
line "to deposit?"
done
-_UnnamedText_7b31:: ; 89ff5 (22:5ff5)
+_DepositHowManyText:: ; 89ff5 (22:5ff5)
text "How many?"
done
-_UnnamedText_7b36:: ; 8a000 (22:6000)
+_ItemWasStoredText:: ; 8a000 (22:6000)
TX_RAM $cd6d
text " was"
line "stored via PC."
prompt
-_UnnamedText_7b3b:: ; 8a018 (22:6018)
+_NothingToDepositText:: ; 8a018 (22:6018)
text "You have nothing"
line "to deposit."
prompt
-_UnnamedText_7b40:: ; 8a036 (22:6036)
+_NoRoomToStoreText:: ; 8a036 (22:6036)
text "No room left to"
line "store items."
prompt
-_UnnamedText_7b45:: ; 8a054 (22:6054)
+_WhatToWithdrawText:: ; 8a054 (22:6054)
text "What do you want"
line "to withdraw?"
done
-_UnnamedText_7b4a:: ; 8a073 (22:6073)
+_WithdrawHowManyText:: ; 8a073 (22:6073)
text "How many?"
done
-_UnnamedText_7b4f:: ; 8a07e (22:607e)
+_WithdrewItemText:: ; 8a07e (22:607e)
text "Withdrew"
line "@"
TX_RAM $cd6d
text "."
prompt
-_UnnamedText_7b54:: ; 8a08f (22:608f)
+_NothingStoredText:: ; 8a08f (22:608f)
text "There is nothing"
line "stored."
prompt
-_UnnamedText_7b59:: ; 8a0a9 (22:60a9)
+_CantCarryMoreText:: ; 8a0a9 (22:60a9)
text "You can't carry"
line "any more items."
prompt
-_UnnamedText_7b5e:: ; 8a0c9 (22:60c9)
+_WhatToTossText:: ; 8a0c9 (22:60c9)
text "What do you want"
line "to toss away?"
done
-_UnnamedText_7b63:: ; 8a0e9 (22:60e9)
+_TossHowManyText:: ; 8a0e9 (22:60e9)
text "How many?"
done
-_UnnamedText_76683:: ; 8a0f4 (22:60f4)
+_AccessedHoFPCText:: ; 8a0f4 (22:60f4)
text "Accessed #MON"
line "LEAGUE's site."
@@ -1827,7 +1827,7 @@ _MonWasReleasedText:: ; 0x8a268
line "released outside."
cont "Bye @"
-_UnnamedText_8a288:: ; 8a288 (22:6288)
+_CF4BExclamationText:: ; 8a288 (22:6288)
TX_RAM $cf4b
text "!"
prompt
@@ -1856,7 +1856,7 @@ _SoYouWantPrizeText:: ; 8a2f6 (22:62f6)
text "?"
done
-_SorryNeedMoreCoins:: ; 8a30b (22:630b)
+_SorryNeedMoreCoinsText:: ; 8a30b (22:630b)
text "Sorry, you need"
line "more coins.@@"
@@ -1867,16 +1867,16 @@ _OopsYouDontHaveEnoughRoomText:: ; 8a329 (22:6329)
_OhFineThenText:: ; 8a34c (22:634c)
text "Oh, fine then.@@"
-_UnnamedText_1e93b:: ; 8a35d (22:635d)
+_GetDexRatedText:: ; 8a35d (22:635d)
text "Want to get your"
line "#DEX rated?"
done
-_UnnamedText_1e940:: ; 8a37b (22:637b)
+_ClosedOaksPCText:: ; 8a37b (22:637b)
text "Closed link to"
line "PROF.OAK's PC.@@"
-_UnnamedText_1e946:: ; 8a39a (22:639a)
+_AccessedOaksPCText:: ; 8a39a (22:639a)
text "Accessed PROF."
line "OAK's PC."
@@ -1884,17 +1884,17 @@ _UnnamedText_1e946:: ; 8a39a (22:639a)
line "Rating System."
prompt
-_UnnamedText_5d43:: ; 8a3d0 (22:63d0)
+_WhereWouldYouLikeText:: ; 8a3d0 (22:63d0)
text "Where would you"
line "like to go?"
done
-_UnnamedText_5d48:: ; 8a3ed (22:63ed)
+_PleaseWaitText:: ; 8a3ed (22:63ed)
text "OK, please wait"
line "just a moment."
done
-_UnnamedText_5d4d:: ; 8a40d (22:640d)
+_LinkCanceledText:: ; 8a40d (22:640d)
text "The link was"
line "canceled."
done
@@ -1909,12 +1909,12 @@ _DoYouWantToNicknameText:: ; 0x8a605
text "?"
done
-_UnnamedText_699f:: ; 8a62f (22:662f)
+_YourNameIsText:: ; 8a62f (22:662f)
text "Right! So your"
line "name is ", $52, "!"
prompt
-_UnnamedText_69e7:: ; 8a64a (22:664a)
+_HisNameIsText:: ; 8a64a (22:664a)
text "That's right! I"
line "remember now! His"
cont "name is ", $53, "!"
@@ -2031,7 +2031,7 @@ _OlderFileWillBeErasedText:: ; 94643 (25:4643)
cont "save. Okay?"
done
-_UnnamedText_73909:: ; 94671 (25:4671)
+_WhenYouChangeBoxText:: ; 94671 (25:4671)
text "When you change a"
line "#MON BOX, data"
cont "will be saved."
@@ -2039,30 +2039,30 @@ _UnnamedText_73909:: ; 94671 (25:4671)
para "Is that okay?"
done
-_UnnamedText_739d4:: ; 946b0 (25:46b0)
+_ChooseABoxText:: ; 946b0 (25:46b0)
text "Choose a"
line $4a, " BOX.@@"
-_UnnamedText_3af3e:: ; 946c2 (25:46c2)
+_EvolvedText:: ; 946c2 (25:46c2)
TX_RAM $cf4b
text " evolved"
done
-_UnnamedText_3af43:: ; 946cf (25:46cf)
+_IntoText:: ; 946cf (25:46cf)
db $0
line "into @"
TX_RAM $cd6d
text "!"
done
-_UnnamedText_3af48:: ; 946dd (25:46dd)
+_StoppedEvolvingText:: ; 946dd (25:46dd)
text "Huh? @"
TX_RAM $cf4b
db $0
line "stopped evolving!"
prompt
-_UnnamedText_3af4d:: ; 946fb (25:46fb)
+_IsEvolvingText:: ; 946fb (25:46fb)
text "What? @"
TX_RAM $cf4b
db $0
@@ -2089,44 +2089,44 @@ _BadlyPoisonedText:: ; 9474a (25:474a)
line "badly poisoned!"
prompt
-_UnnamedText_3f3d8:: ; 9475e (25:475e)
+_BurnedText:: ; 9475e (25:475e)
text $59
line "was burned!"
prompt
-_UnnamedText_3f3dd:: ; 9476d (25:476d)
+_FrozenText:: ; 9476d (25:476d)
text $59
line "was frozen solid!"
prompt
-_UnnamedText_3f423:: ; 94782 (25:4782)
+_FireDefrostedText:: ; 94782 (25:4782)
text "Fire defrosted"
line $59, "!"
prompt
-_UnnamedText_3f528:: ; 94795 (25:4795)
+_MonsStatsRoseText:: ; 94795 (25:4795)
text $5a, "'s"
line "@"
TX_RAM $cf4b
text "@@"
-_UnnamedText_3f542:: ; 947a0 (25:47a0)
+_GreatlyRoseText:: ; 947a0 (25:47a0)
text $4c, "greatly@@"
-_UnnamedText_3f547:: ; 947ab (25:47ab)
+_RoseText:: ; 947ab (25:47ab)
text " rose!"
prompt
-_UnnamedText_3f661:: ; 947b3 (25:47b3)
+_MonsStatsFellText:: ; 947b3 (25:47b3)
text $59, "'s"
line "@"
TX_RAM $cf4b
text "@@"
-_UnnamedText_3f67e:: ; 947be (25:47be)
+_GreatlyFellText:: ; 947be (25:47be)
text $4c, "greatly@@"
-_UnnamedText_3f683:: ; 947c9 (25:47c9)
+_FellText:: ; 947c9 (25:47c9)
text " fell!"
prompt
@@ -2199,7 +2199,7 @@ _MoveWasDisabledText:: ; 9489e (25:489e)
cont "disabled!"
prompt
-_UnnamedText_3fb3e:: ; 948b6 (25:48b6)
+_NothingHappenedText:: ; 948b6 (25:48b6)
text "Nothing happened!"
prompt
@@ -2227,17 +2227,17 @@ _ParalyzedMayNotAttackText:: ; 9490d (25:490d)
cont "not attack!"
prompt
-_UnnamedText_17e1d:: ; 9492f (25:492f)
+_SubstituteText:: ; 9492f (25:492f)
text "It created a"
line "SUBSTITUTE!"
prompt
-_UnnamedText_17e22:: ; 94949 (25:4949)
+_HasSubstituteText:: ; 94949 (25:4949)
text $5a
line "has a SUBSTITUTE!"
prompt
-_UnnamedText_17e27:: ; 9495e (25:495e)
+_TooWeakSubstituteText:: ; 9495e (25:495e)
text "Too weak to make"
line "a SUBSTITUTE!"
prompt
@@ -2322,7 +2322,7 @@ _SuckedHealthText:: ; 94ad5 (25:4ad5)
line $59, "!"
prompt
-_DreamEatenText:: ; 94aec (25:4aec)
+_DreamWasEatenText:: ; 94aec (25:4aec)
text $59, "'s"
line "dream was eaten!"
prompt
@@ -2463,7 +2463,7 @@ _PokemartBuyingGreetingText:: ; a2608 (28:6608)
text "Take your time."
done
-_PokemartTellBuyPrice:: ; a2619 (28:6619)
+_PokemartTellBuyPriceText:: ; a2619 (28:6619)
TX_RAM $cf4b
text "?"
line "That will be"
@@ -2492,7 +2492,7 @@ _PokemonSellingGreetingText:: ; a2690 (28:6690)
line "like to sell?"
done
-_PokemartTellSellPrice:: ; a26ae (28:66ae)
+_PokemartTellSellPriceText:: ; a26ae (28:66ae)
text "I can pay you"
line "¥@"
db $2, $9f, $ff, $c3 ; XXX
@@ -2518,26 +2518,26 @@ _PokemartAnythingElseText:: ; a2719 (28:6719)
line "else I can do?"
done
-UnnamedText_a273b:: ; a273b (28:673b)
+_LearnedMove1Text:: ; a273b (28:673b)
TX_RAM $d036
text " learned"
line "@"
TX_RAM $cf4b
text "!@@"
-_UnnamedText_6fb4:: ; a2750 (28:6750)
+_WhichMoveToForgetText:: ; a2750 (28:6750)
text "Which move should"
next "be forgotten?"
done
-_UnnamedText_6fb9:: ; a2771 (28:6771)
+_AbandonLearningText:: ; a2771 (28:6771)
text "Abandon learning"
line "@"
TX_RAM $cf4b
text "?"
done
-_UnnamedText_6fbe:: ; a278a (28:678a)
+_DidNotLearnText:: ; a278a (28:678a)
TX_RAM $d036
db $0
line "did not learn"
@@ -2546,7 +2546,7 @@ _UnnamedText_6fbe:: ; a278a (28:678a)
text "!"
prompt
-_UnnamedText_6fc3:: ; a27a4 (28:67a4)
+_TryingToLearnText:: ; a27a4 (28:67a4)
TX_RAM $d036
text " is"
line "trying to learn"
@@ -2567,13 +2567,13 @@ _UnnamedText_6fc3:: ; a27a4 (28:67a4)
text "?"
done
-_UnnamedText_6fc8:: ; a2819 (28:6819)
+_OneTwoAndText:: ; a2819 (28:6819)
text "1, 2 and...@@"
-_UnnamedText_6fd7:: ; a2827 (28:6827)
+_PoofText:: ; a2827 (28:6827)
text " Poof!@@"
-_UnnamedText_6fdc:: ; a2830 (28:6830)
+_ForgotAndText:: ; a2830 (28:6830)
db $0
para "@"
TX_RAM $d036
@@ -2585,7 +2585,7 @@ _UnnamedText_6fdc:: ; a2830 (28:6830)
para "And..."
prompt
-_UnnamedText_6fe1:: ; a284d (28:684d)
+_HMCantDeleteText:: ; a284d (28:684d)
text "HM techniques"
line "can't be deleted!"
prompt
@@ -2671,18 +2671,18 @@ _UsedStrengthText:: ; a403c (29:403c)
text " used"
line "STRENGTH.@@"
-_UnnamedText_cdbb:: ; a4051 (29:4051)
+_CanMoveBouldersText:: ; a4051 (29:4051)
TX_RAM $cd6d
text " can"
line "move boulders."
prompt
-_UnnamedText_cdfa:: ; a4069 (29:4069)
+_CurrentTooFastText:: ; a4069 (29:4069)
text "The current is"
line "much too fast!"
prompt
-_UnnamedText_cdff:: ; a4088 (29:4088)
+_CyclingIsFunText:: ; a4088 (29:4088)
text "Cycling is fun!"
line "Forget SURFing!"
prompt
@@ -2729,13 +2729,13 @@ _CannotGetOffHereText:: ; a4168 (29:4168)
line "here."
prompt
-_UnnamedText_4fe39:: ; a4180 (29:4180)
+_GotMonText:: ; a4180 (29:4180)
text $52, " got"
line "@"
TX_RAM $cd6d
text "!@@"
-_UnnamedText_4fe3f:: ; a418f (29:418f)
+_SetToBoxText:: ; a418f (29:418f)
text "There's no more"
line "room for #MON!"
cont "@"
@@ -2747,7 +2747,7 @@ _UnnamedText_4fe3f:: ; a418f (29:418f)
text " on PC!"
done
-_UnnamedText_4fe44:: ; a41d6 (29:41d6)
+_BoxIsFullText:: ; a41d6 (29:41d6)
text "There's no more"
line "room for #MON!"
@@ -3046,7 +3046,7 @@ _TooImportantToTossText:: ; a8068 (2a:4068)
line "tant to toss!"
prompt
-_UnnamedText_2fe3b:: ; a8088 (2a:4088)
+_AlreadyKnowsText:: ; a8088 (2a:4088)
TX_RAM $cd6d
text " knows"
line "@"
@@ -3054,12 +3054,12 @@ _UnnamedText_2fe3b:: ; a8088 (2a:4088)
text "!"
prompt
-_UnnamedText_71d88:: ; a809a (2a:409a)
+_ConnectCableText:: ; a809a (2a:409a)
text "Okay, connect the"
line "cable like so!"
prompt
-_UnnamedText_71d8d:: ; a80bc (2a:40bc)
+_TradedForText:: ; a80bc (2a:40bc)
text $52, " traded"
line "@"
TX_RAM $cd13
@@ -3068,7 +3068,7 @@ _UnnamedText_71d8d:: ; a80bc (2a:40bc)
TX_RAM $cd1e
text "!@@"
-_UnnamedText_71d94:: ; a80d8 (2a:40d8)
+_WannaTrade1Text:: ; a80d8 (2a:40d8)
text "I'm looking for"
line "@"
TX_RAM $cd13
@@ -3080,12 +3080,12 @@ _UnnamedText_71d94:: ; a80d8 (2a:40d8)
text "? "
done
-_UnnamedText_71d99:: ; a810b (2a:410b)
+_NoTrade1Text:: ; a810b (2a:410b)
text "Awww!"
line "Oh well..."
done
-_UnnamedText_71d9e:: ; a811d (2a:411d)
+_WrongMon1Text:: ; a811d (2a:411d)
text "What? That's not"
line "@"
TX_RAM $cd13
@@ -3095,18 +3095,18 @@ _UnnamedText_71d9e:: ; a811d (2a:411d)
line "come back here!"
done
-_UnnamedText_71da3:: ; a8155 (2a:4155)
+_Thanks1Text:: ; a8155 (2a:4155)
text "Hey thanks!"
done
-_UnnamedText_71da8:: ; a8162 (2a:4162)
+_AfterTrade1Text:: ; a8162 (2a:4162)
text "Isn't my old"
line "@"
TX_RAM $cd1e
text " great?"
done
-_UnnamedText_71dad:: ; a817c (2a:417c)
+_WannaTrade2Text:: ; a817c (2a:417c)
text "Hello there! Do"
line "you want to trade"
@@ -3118,12 +3118,12 @@ _UnnamedText_71dad:: ; a817c (2a:417c)
text "?"
done
-_UnnamedText_71db2:: ; a81b5 (2a:41b5)
+_NoTrade2Text:: ; a81b5 (2a:41b5)
text "Well, if you"
line "don't want to..."
done
-_UnnamedText_71db7:: ; a81d3 (2a:41d3)
+_WrongMon2Text:: ; a81d3 (2a:41d3)
text "Hmmm? This isn't"
line "@"
TX_RAM $cd13
@@ -3133,11 +3133,11 @@ _UnnamedText_71db7:: ; a81d3 (2a:41d3)
line "you get one."
done
-_UnnamedText_71dbc:: ; a8209 (2a:4209)
+_Thanks2Text:: ; a8209 (2a:4209)
text "Thanks!"
done
-_UnnamedText_71dc1:: ; a8212 (2a:4212)
+_AfterTrade2Text:: ; a8212 (2a:4212)
text "The @"
TX_RAM $cd13
text " you"
@@ -3146,7 +3146,7 @@ _UnnamedText_71dc1:: ; a8212 (2a:4212)
para "went and evolved!"
done
-_UnnamedText_71dc6:: ; a8240 (2a:4240)
+_WannaTrade3Text:: ; a8240 (2a:4240)
text "Hi! Do you have"
line "@"
TX_RAM $cd13
@@ -3158,11 +3158,11 @@ _UnnamedText_71dc6:: ; a8240 (2a:4240)
text "?"
done
-_UnnamedText_71dcb:: ; a8274 (2a:4274)
+_NoTrade3Text:: ; a8274 (2a:4274)
text "That's too bad."
done
-_UnnamedText_71dd0:: ; a8284 (2a:4284)
+_WrongMon3Text:: ; a8284 (2a:4284)
text "...This is no"
line "@"
TX_RAM $cd13
@@ -3172,11 +3172,11 @@ _UnnamedText_71dd0:: ; a8284 (2a:4284)
line "trade it with me!"
done
-_UnnamedText_71dd5:: ; a82bc (2a:42bc)
+_Thanks3Text:: ; a82bc (2a:42bc)
text "Thanks pal!"
done
-_UnnamedText_71dda:: ; a82c9 (2a:42c9)
+_AfterTrade3Text:: ; a82c9 (2a:42c9)
text "How is my old"
line "@"
TX_RAM $cd1e
@@ -3188,7 +3188,7 @@ _UnnamedText_71dda:: ; a82c9 (2a:42c9)
line "doing great!"
done
-_UnnamedText_ef7d:: ; a82f8 (2a:42f8)
+_NothingToCutText:: ; a82f8 (2a:42f8)
text "There isn't"
line "anything to CUT!"
prompt
diff --git a/text/credits_text.asm b/text/credits_text.asm
new file mode 100755
index 00000000..c2c9e429
--- /dev/null
+++ b/text/credits_text.asm
@@ -0,0 +1,199 @@
+CreditsTextPointers: ; 742c3 (1d:42c3)
+ dw CredVersion
+ dw CredTajiri
+ dw CredTaOota
+ dw CredMorimoto
+ dw CredWatanabe
+ dw CredMasuda
+ dw CredNisino
+ dw CredSugimori
+ dw CredNishida
+ dw CredMiyamoto
+ dw CredKawaguchi
+ dw CredIshihara
+ dw CredYamauchi
+ dw CredZinnai
+ dw CredHishida
+ dw CredSakai
+ dw CredYamaguchi
+ dw CredYamamoto
+ dw CredTaniguchi
+ dw CredNonomura
+ dw CredFuziwara
+ dw CredMatsusima
+ dw CredTomisawa
+ dw CredKawamoto
+ dw CredKakei
+ dw CredTsuchiya
+ dw CredTaNakamura
+ dw CredYuda
+ dw CredMon
+ dw CredDirector
+ dw CredProgrammers
+ dw CredCharDesign
+ dw CredMusic
+ dw CredSoundEffects
+ dw CredGameDesign
+ dw CredMonsterDesign
+ dw CredGameScene
+ dw CredParam
+ dw CredMap
+ dw CredTest
+ dw CredSpecial
+ dw CredProducers
+ dw CredProducer
+ dw CredExecutive
+ dw CredTamada
+ dw CredSaOota
+ dw CredYoshikawa
+ dw CredToOota
+ dw CredUSStaff
+ dw CredUSCoord
+ dw CredTilden
+ dw CredKawakami
+ dw CredHiNakamura
+ dw CredGiese
+ dw CredOsborne
+ dw CredTrans
+ dw CredOgasawara
+ dw CredIwata
+ dw CredIzushi
+ dw CredHarada
+ dw CredMurakawa
+ dw CredFukui
+ dw CredClub
+ dw CredPAAD
+
+CredVersion: ; 74343 (1d:4343) ; this 1 byte difference makes all bank addresses offset by 1 in the blue version
+IF _RED
+ db -8, "RED VERSION STAFF@"
+ENDC
+IF _BLUE
+ db -8, "BLUE VERSION STAFF@"
+ENDC
+CredTajiri: ; 74356 (1d:4356)
+ db -6, "SATOSHI TAJIRI@"
+CredTaOota: ; 74366 (1d:4366)
+ db -6, "TAKENORI OOTA@"
+CredMorimoto: ; 74375 (1d:4375)
+ db -7, "SHIGEKI MORIMOTO@"
+CredWatanabe: ; 74387 (1d:4387)
+ db -7, "TETSUYA WATANABE@"
+CredMasuda: ; 74399 (1d:4399)
+ db -6, "JUNICHI MASUDA@"
+CredNisino: ; 743a9 (1d:43a9)
+ db -5, "KOHJI NISINO@"
+CredSugimori: ; 743b7 (1d:43b7)
+ db -5, "KEN SUGIMORI@"
+CredNishida: ; 743c5 (1d:43c5)
+ db -6, "ATSUKO NISHIDA@"
+CredMiyamoto: ; 743d5 (1d:43d5)
+ db -7, "SHIGERU MIYAMOTO@"
+CredKawaguchi: ; 743e7 (1d:43e7)
+ db -8, "TAKASHI KAWAGUCHI@"
+CredIshihara: ; 743fa (1d:43fa)
+ db -8, "TSUNEKAZU ISHIHARA@"
+CredYamauchi: ; 7440e (1d:440e)
+ db -7, "HIROSHI YAMAUCHI@"
+CredZinnai: ; 74420 (1d:4420)
+ db -7, "HIROYUKI ZINNAI@"
+CredHishida: ; 74431 (1d:4431)
+ db -7, "TATSUYA HISHIDA@"
+CredSakai: ; 74442 (1d:4442)
+ db -6, "YASUHIRO SAKAI@"
+CredYamaguchi: ; 74452 (1d:4452)
+ db -7, "WATARU YAMAGUCHI@"
+CredYamamoto: ; 74464 (1d:4464)
+ db -8, "KAZUYUKI YAMAMOTO@"
+CredTaniguchi: ; 74477 (1d:4477)
+ db -8, "RYOHSUKE TANIGUCHI@"
+CredNonomura: ; 7448b (1d:448b)
+ db -8, "FUMIHIRO NONOMURA@"
+CredFuziwara: ; 7449e (1d:449e)
+ db -7, "MOTOFUMI FUZIWARA@"
+CredMatsusima: ; 744b1 (1d:44b1)
+ db -7, "KENJI MATSUSIMA@"
+CredTomisawa: ; 744c2 (1d:44c2)
+ db -7, "AKIHITO TOMISAWA@"
+CredKawamoto: ; 744d4 (1d:44d4)
+ db -7, "HIROSHI KAWAMOTO@"
+CredKakei: ; 744e6 (1d:44e6)
+ db -6, "AKIYOSHI KAKEI@"
+CredTsuchiya: ; 744f6 (1d:44f6)
+ db -7, "KAZUKI TSUCHIYA@"
+CredTaNakamura: ; 74507 (1d:4507)
+ db -6, "TAKEO NAKAMURA@"
+CredYuda: ; 74517 (1d:4517)
+ db -6, "MASAMITSU YUDA@"
+CredMon: ; 74527 (1d:4527)
+ db -3, "#MON@"
+CredDirector: ; 7452d (1d:452d)
+ db -3, "DIRECTOR@"
+CredProgrammers: ; 74537 (1d:4537)
+ db -5, "PROGRAMMERS@"
+CredCharDesign: ; 74544 (1d:4544)
+ db -7, "CHARACTER DESIGN@"
+CredMusic: ; 74556 (1d:4556)
+ db -2, "MUSIC@"
+CredSoundEffects: ; 7455d (1d:455d)
+ db -6, "SOUND EFFECTS@"
+CredGameDesign: ; 7456c (1d:456c)
+ db -5, "GAME DESIGN@"
+CredMonsterDesign: ; 74579 (1d:4579)
+ db -6, "MONSTER DESIGN@"
+CredGameScene: ; 74589 (1d:4589)
+ db -6, "GAME SCENARIO@"
+CredParam: ; 74598 (1d:4598)
+ db -8, "PARAMETRIC DESIGN@"
+CredMap: ; 745ab (1d:45ab)
+ db -4, "MAP DESIGN@"
+CredTest: ; 745b7 (1d:45b7)
+ db -7, "PRODUCT TESTING@"
+CredSpecial: ; 745c8 (1d:45c8)
+ db -6, "SPECIAL THANKS@"
+CredProducers: ; 745d8 (1d:45d8)
+ db -4, "PRODUCERS@"
+CredProducer: ; 745e3 (1d:45e3)
+ db -4, "PRODUCER@"
+CredExecutive: ; 745ed (1d:45ed)
+ db -8, "EXECUTIVE PRODUCER@"
+CredTamada: ; 74601 (1d:4601)
+ db -6, "SOUSUKE TAMADA@"
+CredSaOota: ; 74611 (1d:4611)
+ db -5, "SATOSHI OOTA@"
+CredYoshikawa: ; 7461f (1d:461f)
+ db -6, "RENA YOSHIKAWA@"
+CredToOota: ; 7462f (1d:462f)
+ db -6, "TOMOMICHI OOTA@"
+CredUSStaff: ; 7463f (1d:463f)
+ db -7, "US VERSION STAFF@"
+CredUSCoord: ; 74651 (1d:4651)
+ db -7, "US COORDINATION@"
+CredTilden: ; 74662 (1d:4662)
+ db -5, "GAIL TILDEN@"
+CredKawakami: ; 7466f (1d:466f)
+ db -6, "NAOKO KAWAKAMI@"
+CredHiNakamura: ; 7467f (1d:467f)
+ db -6, "HIRO NAKAMURA@"
+CredGiese: ; 7468e (1d:468e)
+ db -6, "WILLIAM GIESE@"
+CredOsborne: ; 7469d (1d:469d)
+ db -5, "SARA OSBORNE@"
+CredTrans: ; 746ab (1d:46ab)
+ db -7, "TEXT TRANSLATION@"
+CredOgasawara: ; 746bd (1d:46bd)
+ db -6, "NOB OGASAWARA@"
+CredIwata: ; 746cc (1d:46cc)
+ db -5, "SATORU IWATA@"
+CredIzushi: ; 746da (1d:46da)
+ db -7, "TAKEHIRO IZUSHI@"
+CredHarada: ; 746eb (1d:46eb)
+ db -7, "TAKAHIRO HARADA@"
+CredMurakawa: ; 746fc (1d:46fc)
+ db -7, "TERUKI MURAKAWA@"
+CredFukui: ; 7470d (1d:470d)
+ db -5, "KOHTA FUKUI@"
+CredClub: ; 7471a (1d:471a)
+ db -9, "NCL SUPER MARIO CLUB@"
+CredPAAD: ; 74730 (1d:4730)
+ db -5, "PAAD TESTING@"
diff --git a/text/item_names.asm b/text/item_names.asm
new file mode 100755
index 00000000..3c0f4c49
--- /dev/null
+++ b/text/item_names.asm
@@ -0,0 +1,98 @@
+ItemNames: ; 472b (1:472b)
+ db "MASTER BALL@"
+ db "ULTRA BALL@"
+ db "GREAT BALL@"
+ db "POKé BALL@"
+ db "TOWN MAP@"
+ db "BICYCLE@"
+ db "?????@"
+ db "SAFARI BALL@"
+ db "POKéDEX@"
+ db "MOON STONE@"
+ db "ANTIDOTE@"
+ db "BURN HEAL@"
+ db "ICE HEAL@"
+ db "AWAKENING@"
+ db "PARLYZ HEAL@"
+ db "FULL RESTORE@"
+ db "MAX POTION@"
+ db "HYPER POTION@"
+ db "SUPER POTION@"
+ db "POTION@"
+ db "BOULDERBADGE@"
+ db "CASCADEBADGE@"
+ db "THUNDERBADGE@"
+ db "RAINBOWBADGE@"
+ db "SOULBADGE@"
+ db "MARSHBADGE@"
+ db "VOLCANOBADGE@"
+ db "EARTHBADGE@"
+ db "ESCAPE ROPE@"
+ db "REPEL@"
+ db "OLD AMBER@"
+ db "FIRE STONE@"
+ db "THUNDERSTONE@"
+ db "WATER STONE@"
+ db "HP UP@"
+ db "PROTEIN@"
+ db "IRON@"
+ db "CARBOS@"
+ db "CALCIUM@"
+ db "RARE CANDY@"
+ db "DOME FOSSIL@"
+ db "HELIX FOSSIL@"
+ db "SECRET KEY@"
+ db "?????@"
+ db "BIKE VOUCHER@"
+ db "X ACCURACY@"
+ db "LEAF STONE@"
+ db "CARD KEY@"
+ db "NUGGET@"
+ db "PP UP@"
+ db "POKé DOLL@"
+ db "FULL HEAL@"
+ db "REVIVE@"
+ db "MAX REVIVE@"
+ db "GUARD SPEC.@"
+ db "SUPER REPEL@"
+ db "MAX REPEL@"
+ db "DIRE HIT@"
+ db "COIN@"
+ db "FRESH WATER@"
+ db "SODA POP@"
+ db "LEMONADE@"
+ db "S.S.TICKET@"
+ db "GOLD TEETH@"
+ db "X ATTACK@"
+ db "X DEFEND@"
+ db "X SPEED@"
+ db "X SPECIAL@"
+ db "COIN CASE@"
+ db "OAK's PARCEL@"
+ db "ITEMFINDER@"
+ db "SILPH SCOPE@"
+ db "POKé FLUTE@"
+ db "LIFT KEY@"
+ db "EXP.ALL@"
+ db "OLD ROD@"
+ db "GOOD ROD@"
+ db "SUPER ROD@"
+ db "PP UP@"
+ db "ETHER@"
+ db "MAX ETHER@"
+ db "ELIXER@"
+ db "MAX ELIXER@"
+ db "B2F@"
+ db "B1F@"
+ db "1F@"
+ db "2F@"
+ db "3F@"
+ db "4F@"
+ db "5F@"
+ db "6F@"
+ db "7F@"
+ db "8F@"
+ db "9F@"
+ db "10F@"
+ db "11F@"
+ db "B4F@"
diff --git a/text/map_names.asm b/text/map_names.asm
new file mode 100755
index 00000000..dd8592be
--- /dev/null
+++ b/text/map_names.asm
@@ -0,0 +1,107 @@
+MapNames: ; 71473 (1c:5473)
+PalletTownName: ; 71473 (1c:5473)
+ db "PALLET TOWN@"
+ViridianCityName: ; 7147f (1c:547f)
+ db "VIRIDIAN CITY@"
+PewterCityName: ; 7148d (1c:548d)
+ db "PEWTER CITY@"
+CeruleanCityName: ; 71499 (1c:5499)
+ db "CERULEAN CITY@"
+LavenderTownName: ; 714a7 (1c:54a7)
+ db "LAVENDER TOWN@"
+VermilionCityName: ; 714b5 (1c:54b5)
+ db "VERMILION CITY@"
+CeladonCityName: ; 714c4 (1c:54c4)
+ db "CELADON CITY@"
+FuchsiaCityName: ; 714d1 (1c:54d1)
+ db "FUCHSIA CITY@"
+CinnabarIslandName: ; 714de (1c:54de)
+ db "CINNABAR ISLAND@"
+IndigoPlateauName: ; 714ee (1c:54ee)
+ db "INDIGO PLATEAU@"
+SaffronCityName: ; 714fd (1c:54fd)
+ db "SAFFRON CITY@"
+Route1Name: ; 7150a (1c:550a)
+ db "ROUTE 1@"
+Route2Name: ; 71512 (1c:5512)
+ db "ROUTE 2@"
+Route3Name: ; 7151a (1c:551a)
+ db "ROUTE 3@"
+Route4Name: ; 71522 (1c:5522)
+ db "ROUTE 4@"
+Route5Name: ; 7152a (1c:552a)
+ db "ROUTE 5@"
+Route6Name: ; 71532 (1c:5532)
+ db "ROUTE 6@"
+Route7Name: ; 7153a (1c:553a)
+ db "ROUTE 7@"
+Route8Name: ; 71542 (1c:5542)
+ db "ROUTE 8@"
+Route9Name: ; 7154a (1c:554a)
+ db "ROUTE 9@"
+Route10Name: ; 71552 (1c:5552)
+ db "ROUTE 10@"
+Route11Name: ; 7155b (1c:555b)
+ db "ROUTE 11@"
+Route12Name: ; 71564 (1c:5564)
+ db "ROUTE 12@"
+Route13Name: ; 7156d (1c:556d)
+ db "ROUTE 13@"
+Route14Name: ; 71576 (1c:5576)
+ db "ROUTE 14@"
+Route15Name: ; 7157f (1c:557f)
+ db "ROUTE 15@"
+Route16Name: ; 71588 (1c:5588)
+ db "ROUTE 16@"
+Route17Name: ; 71591 (1c:5591)
+ db "ROUTE 17@"
+Route18Name: ; 7159a (1c:559a)
+ db "ROUTE 18@"
+Route19Name: ; 715a3 (1c:55a3)
+ db "SEA ROUTE 19@"
+Route20Name: ; 715b0 (1c:55b0)
+ db "SEA ROUTE 20@"
+Route21Name: ; 715bd (1c:55bd)
+ db "SEA ROUTE 21@"
+Route22Name: ; 715ca (1c:55ca)
+ db "ROUTE 22@"
+Route23Name: ; 715d3 (1c:55d3)
+ db "ROUTE 23@"
+Route24Name: ; 715dc (1c:55dc)
+ db "ROUTE 24@"
+Route25Name: ; 715e5 (1c:55e5)
+ db "ROUTE 25@"
+ViridianForestName: ; 715ee (1c:55ee)
+ db "VIRIDIAN FOREST@"
+MountMoonName: ; 715fe (1c:55fe)
+ db "MT.MOON@"
+RockTunnelName: ; 71606 (1c:5606)
+ db "ROCK TUNNEL@"
+SeaCottageName: ; 71612 (1c:5612)
+ db "SEA COTTAGE@"
+SSAnneName: ; 7161e (1c:561e)
+ db "S.S.ANNE@"
+PokemonLeagueName: ; 71627 (1c:5627)
+ db "#MON LEAGUE@"
+UndergroundPathName: ; 71633 (1c:5633)
+ db "UNDERGROUND PATH@"
+PokemonTowerName: ; 71644 (1c:5644)
+ db "#MON TOWER@"
+SeafoamIslandsName: ; 7164f (1c:564f)
+ db "SEAFOAM ISLANDS@"
+VictoryRoadName: ; 7165f (1c:565f)
+ db "VICTORY ROAD@"
+DiglettsCaveName: ; 7166c (1c:566c)
+ db "DIGLETT's CAVE@"
+RocketHQName: ; 7167a (1c:567a)
+ db "ROCKET HQ@"
+SilphCoName: ; 71684 (1c:5684)
+ db "SILPH CO.@"
+PokemonMansionName: ; 7168e (1c:568e)
+ db $4a," MANSION@"
+SafariZoneName: ; 71698 (1c:5698)
+ db "SAFARI ZONE@"
+CeruleanCaveName: ; 716a4 (1c:56a4)
+ db "CERULEAN CAVE@"
+PowerPlantName: ; 716b2 (1c:56b2)
+ db "POWER PLANT@"
diff --git a/text/maps/bike_shop.asm b/text/maps/bike_shop.asm
index 8cfbd4fc..5f2c3f45 100644
--- a/text/maps/bike_shop.asm
+++ b/text/maps/bike_shop.asm
@@ -1,4 +1,4 @@
-_UnnamedText_1d810:: ; 98e03 (26:4e03)
+_BikeShopText_1d810:: ; 98e03 (26:4e03)
text "Hi! Welcome to"
line "our BIKE SHOP."
@@ -6,17 +6,17 @@ _UnnamedText_1d810:: ; 98e03 (26:4e03)
line "the BIKE for you!"
prompt
-_UnnamedText_1d815:: ; 98e45 (26:4e45)
+_BikeShopText_1d815:: ; 98e45 (26:4e45)
text "It's a cool BIKE!"
line "Do you want it?"
done
-_UnnamedText_1d81a:: ; 98e67 (26:4e67)
+_BikeShopText_1d81a:: ; 98e67 (26:4e67)
text "Sorry! You can't"
line "afford it!"
prompt
-_UnnamedText_1d81f:: ; 98e83 (26:4e83)
+_BikeShopText_1d81f:: ; 98e83 (26:4e83)
text "Oh, that's..."
para "A BIKE VOUCHER!"
@@ -24,17 +24,17 @@ _UnnamedText_1d81f:: ; 98e83 (26:4e83)
para "OK! Here you go!"
prompt
-_UnnamedText_1d824:: ; 98eb2 (26:4eb2)
+_BikeShopText_1d824:: ; 98eb2 (26:4eb2)
text $52, " exchanged"
line "the BIKE VOUCHER"
cont "for a BICYCLE.@@"
-_UnnamedText_1d82a:: ; 98ee0 (26:4ee0)
+_BikeShopText_1d82a:: ; 98ee0 (26:4ee0)
text "Come back again"
line "some time!"
done
-_UnnamedText_1d82f:: ; 98efc (26:4efc)
+_BikeShopText_1d82f:: ; 98efc (26:4efc)
text "How do you like"
line "your new BICYCLE?"
@@ -43,12 +43,12 @@ _UnnamedText_1d82f:: ; 98efc (26:4efc)
cont "and in caves!"
done
-_UnnamedText_1d834:: ; 98f4d (26:4f4d)
+_BikeShopText_1d834:: ; 98f4d (26:4f4d)
text "You better make"
line "room for this!"
done
-_UnnamedText_1d843:: ; 98f6d (26:4f6d)
+_BikeShopText_1d843:: ; 98f6d (26:4f6d)
text "A plain city BIKE"
line "is good enough"
cont "for me!"
@@ -58,13 +58,13 @@ _UnnamedText_1d843:: ; 98f6d (26:4f6d)
cont "on an MTB!"
done
-_UnnamedText_1d85c:: ; 98fc1 (26:4fc1)
+_BikeShopText_1d85c:: ; 98fc1 (26:4fc1)
text "These BIKEs are"
line "cool, but they're"
cont "way expensive!"
done
-_UnnamedText_1d861:: ; 98ff2 (26:4ff2)
+_BikeShopText_1d861:: ; 98ff2 (26:4ff2)
text "Wow. Your BIKE is"
line "really cool!"
done
diff --git a/text/maps/bills_house.asm b/text/maps/bills_house.asm
index 87a8d794..24062b5d 100644
--- a/text/maps/bills_house.asm
+++ b/text/maps/bills_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_1e865:: ; 8d267 (23:5267)
+_BillsHouseText_1e865:: ; 8d267 (23:5267)
text "Hiya! I'm a"
line "#MON..."
cont "...No I'm not!"
@@ -19,7 +19,7 @@ _UnnamedText_1e865:: ; 8d267 (23:5267)
line "Help me out here!"
done
-_UnnamedText_1e86a:: ; 8d345 (23:5345)
+_BillsHouseText_1e86a:: ; 8d345 (23:5345)
text "When I'm in the"
line "TELEPORTER, go to"
cont "my PC and run the"
@@ -27,7 +27,7 @@ _UnnamedText_1e86a:: ; 8d345 (23:5345)
cont "System!"
done
-_UnnamedText_1e86f:: ; 8d391 (23:5391)
+_BillsHouseText_1e86f:: ; 8d391 (23:5391)
text "No!? Come on, you"
line "gotta help a guy"
cont "in deep trouble!"
@@ -64,7 +64,7 @@ _SSTicketNoRoomText:: ; 8d4b0 (23:54b0)
line "much stuff, bud!"
done
-_UnnamedText_1e8cb:: ; 8d4d0 (23:54d0)
+_BillsHouseText_1e8cb:: ; 8d4d0 (23:54d0)
text "That cruise ship,"
line "S.S.ANNE, is in"
cont "VERMILION CITY."
@@ -79,7 +79,7 @@ _UnnamedText_1e8cb:: ; 8d4d0 (23:54d0)
cont "instead of me?"
done
-_UnnamedText_1e8da:: ; 8d57f (23:557f)
+_BillsHouseText_1e8da:: ; 8d57f (23:557f)
text "BILL: Look, bud,"
line "just check out"
cont "some of my rare"
diff --git a/text/maps/celadon_dept_store_roof.asm b/text/maps/celadon_dept_store_roof.asm
index 474f8550..3d83317f 100644
--- a/text/maps/celadon_dept_store_roof.asm
+++ b/text/maps/celadon_dept_store_roof.asm
@@ -1,9 +1,9 @@
-_UnnamedText_484ee:: ; 9cbb5 (27:4bb5)
+_CeladonMartRoofText_484ee:: ; 9cbb5 (27:4bb5)
text "Give her which"
line "drink?"
done
-_UnnamedText_484f3:: ; 9cbcc (27:4bcc)
+_CeladonMartRoofText_484f3:: ; 9cbcc (27:4bcc)
text "Yay!"
para "FRESH WATER!"
@@ -13,13 +13,13 @@ _UnnamedText_484f3:: ; 9cbcc (27:4bcc)
para "You can have this"
line "from me!@@"
-_UnnamedText_484f9:: ; 9cc06 (27:4c06)
+_CeladonMartRoofText_484f9:: ; 9cc06 (27:4c06)
text $52, " received"
line "@"
TX_RAM $cf4b
text "!@@"
-_UnnamedText_484fe:: ; 9cc1a (27:4c1a)
+_CeladonMartRoofText_484fe:: ; 9cc1a (27:4c1a)
db $0
para "@"
TX_RAM $cf4b
@@ -29,7 +29,7 @@ _UnnamedText_484fe:: ; 9cc1a (27:4c1a)
para "It can freeze the"
line "target sometimes!@@"
-_UnnamedText_48504:: ; 9cc5a (27:4c5a)
+_CeladonMartRoofText_48504:: ; 9cc5a (27:4c5a)
text "Yay!"
para "SODA POP!"
@@ -39,13 +39,13 @@ _UnnamedText_48504:: ; 9cc5a (27:4c5a)
para "You can have this"
line "from me!@@"
-_UnnamedText_4850a:: ; 9cc91 (27:4c91)
+_CeladonMartRoofText_4850a:: ; 9cc91 (27:4c91)
text $52, " received"
line "@"
TX_RAM $cf4b
text "!@@"
-_UnnamedText_4850f:: ; 9cca5 (27:4ca5)
+_CeladonMartRoofText_4850f:: ; 9cca5 (27:4ca5)
db $0
para "@"
TX_RAM $cf4b
@@ -55,7 +55,7 @@ _UnnamedText_4850f:: ; 9cca5 (27:4ca5)
para "It can spook the"
line "target sometimes!@@"
-_UnnamedText_48515:: ; 9cce6 (27:4ce6)
+_CeladonMartRoofText_48515:: ; 9cce6 (27:4ce6)
text "Yay!"
para "LEMONADE!"
@@ -69,16 +69,16 @@ _ReceivedTM49Text:: ; 9cd1d (27:4d1d)
text $52, " received"
line "TM49!@@"
-_UnnamedText_48520:: ; 9cd30 (27:4d30)
+_CeladonMartRoofText_48520:: ; 9cd30 (27:4d30)
db $0
para "TM49 contains"
line "TRI ATTACK!@@"
-_UnnamedText_48526:: ; 9cd4d (27:4d4d)
+_CeladonMartRoofText_48526:: ; 9cd4d (27:4d4d)
text "You don't have"
line "space for this!@@"
-_UnnamedText_4852c:: ; 9cd6d (27:4d6d)
+_CeladonMartRoofText_4852c:: ; 9cd6d (27:4d6d)
text "No thank you!"
line "I'm not thirsty"
cont "after all!@@"
@@ -93,7 +93,7 @@ _CeladonMartRoofText1:: ; 9cd97 (27:4d97)
cont "drives me nuts!"
done
-_UnnamedText_48598:: ; 9cdee (27:4dee)
+_CeladonMartRoofText_48598:: ; 9cdee (27:4dee)
text "I'm thirsty!"
line "I want something"
cont "to drink!"
diff --git a/text/maps/celadon_diner.asm b/text/maps/celadon_diner.asm
index d6536c49..ee27fadd 100644
--- a/text/maps/celadon_diner.asm
+++ b/text/maps/celadon_diner.asm
@@ -26,7 +26,7 @@ _CeladonDinerText4:: ; 9dfc9 (27:5fc9)
cont "at the slots."
done
-_UnnamedText_491a7:: ; 9e003 (27:6003)
+_CeladonDinerText_491a7:: ; 9e003 (27:6003)
text "Go ahead! Laugh!"
para "I'm flat out"
@@ -52,7 +52,7 @@ _CoinCaseNoRoomText:: ; 9e090 (27:6090)
line "this!"
done
-_UnnamedText_491b7:: ; 9e0a5 (27:60a5)
+_CeladonDinerText_491b7:: ; 9e0a5 (27:60a5)
text "I always thought"
line "I was going to"
cont "win it back..."
diff --git a/text/maps/celadon_game_corner.asm b/text/maps/celadon_game_corner.asm
index c842e964..c08a81b1 100644
--- a/text/maps/celadon_game_corner.asm
+++ b/text/maps/celadon_game_corner.asm
@@ -7,7 +7,7 @@ _CeladonGameCornerText1:: ; 9d8d5 (27:58d5)
cont "next door."
done
-_UnnamedText_48d22:: ; 9d91a (27:591a)
+_CeladonGameCornerText_48d22:: ; 9d91a (27:591a)
text "Welcome to ROCKET"
line "GAME CORNER!"
@@ -19,27 +19,27 @@ _UnnamedText_48d22:: ; 9d91a (27:591a)
cont "like some?"
done
-_UnnamedText_48d27:: ; 9d984 (27:5984)
+_CeladonGameCornerText_48d27:: ; 9d984 (27:5984)
text "Thanks! Here are"
line "your 50 coins!"
done
-_UnnamedText_48d2c:: ; 9d9a5 (27:59a5)
+_CeladonGameCornerText_48d2c:: ; 9d9a5 (27:59a5)
text "No? Please come"
line "play sometime!"
done
-_UnnamedText_48d31:: ; 9d9c5 (27:59c5)
+_CeladonGameCornerText_48d31:: ; 9d9c5 (27:59c5)
text "You can't afford"
line "the coins!"
done
-_UnnamedText_48d36:: ; 9d9e1 (27:59e1)
+_CeladonGameCornerText_48d36:: ; 9d9e1 (27:59e1)
text "Oops! Your COIN"
line "CASE is full."
done
-_UnnamedText_48d3b:: ; 9da00 (27:5a00)
+_CeladonGameCornerText_48d3b:: ; 9da00 (27:5a00)
text "You don't have a"
line "COIN CASE!"
done
@@ -58,7 +58,7 @@ _CeladonGameCornerText4:: ; 9da61 (27:5a61)
cont "different odds."
done
-_UnnamedText_48d9c:: ; 9da8e (27:5a8e)
+_CeladonGameCornerText_48d9c:: ; 9da8e (27:5a8e)
text "Kid, do you want"
line "to play?"
prompt
@@ -67,12 +67,12 @@ _Received10CoinsText:: ; 9daa9 (27:5aa9)
text $52, " received"
line "10 coins!@@"
-_UnnamedText_48da7:: ; 9dac0 (27:5ac0)
+_CeladonGameCornerText_48da7:: ; 9dac0 (27:5ac0)
text "You don't need my"
line "coins!"
done
-_UnnamedText_48dac:: ; 9dad9 (27:5ad9)
+_CeladonGameCornerText_48dac:: ; 9dad9 (27:5ad9)
text "Wins seem to come"
line "and go."
done
@@ -82,7 +82,7 @@ _CeladonGameCornerText6:: ; 9daf4 (27:5af4)
line "wonderful time!"
done
-_UnnamedText_48dca:: ; 9db11 (27:5b11)
+_CeladonGameCornerText_48dca:: ; 9db11 (27:5b11)
text "Hey!"
para "You have better"
@@ -99,7 +99,7 @@ _UnnamedText_48dca:: ; 9db11 (27:5b11)
cont "be fooled!"
done
-_UnnamedText_48dcf:: ; 9dbac (27:5bac)
+_CeladonGameCornerText_48dcf:: ; 9dbac (27:5bac)
text "They offer rare"
line "#MON that can"
cont "be exchanged for"
@@ -115,7 +115,7 @@ _CeladonGameCornerText8:: ; 9dc06 (27:5c06)
cont "get hooked!"
done
-_UnnamedText_48e26:: ; 9dc33 (27:5c33)
+_CeladonGameCornerText_48e26:: ; 9dc33 (27:5c33)
text "What's up? Want"
line "some coins?"
prompt
@@ -124,63 +124,63 @@ _Received20CoinsText:: ; 9dc4f (27:5c4f)
text $52, " received"
line "20 coins!@@"
-_UnnamedText_48e31:: ; 9dc66 (27:5c66)
+_CeladonGameCornerText_48e31:: ; 9dc66 (27:5c66)
text "You have lots of"
line "coins!"
done
-_UnnamedText_48e36:: ; 9dc7f (27:5c7f)
+_CeladonGameCornerText_48e36:: ; 9dc7f (27:5c7f)
text "Darn! I need more"
line "coins for the"
cont "#MON I want!"
done
-_UnnamedText_48e88:: ; 9dcad (27:5cad)
+_CeladonGameCornerText_48e88:: ; 9dcad (27:5cad)
text "Hey, what? You're"
line "throwing me off!"
cont "Here are some"
cont "coins, shoo!"
prompt
-_UnnamedText_48e8d:: ; 9dceb (27:5ceb)
+_CeladonGameCornerText_48e8d:: ; 9dceb (27:5ceb)
text $52, " received"
line "20 coins!@@"
-_UnnamedText_48e93:: ; 9dd02 (27:5d02)
+_CeladonGameCornerText_48e93:: ; 9dd02 (27:5d02)
text "You've got your"
line "own coins!"
done
-_UnnamedText_48e98:: ; 9dd1d (27:5d1d)
+_CeladonGameCornerText_48e98:: ; 9dd1d (27:5d1d)
text "The trick is to"
line "watch the reels"
cont "closely!"
done
-_UnnamedText_48ece:: ; 9dd47 (27:5d47)
+_CeladonGameCornerText_48ece:: ; 9dd47 (27:5d47)
text "I'm guarding this"
line "poster!"
cont "Go away, or else!"
done
-_UnnamedText_48ed3:: ; 9dd73 (27:5d73)
+_CeladonGameCornerText_48ed3:: ; 9dd73 (27:5d73)
text "Dang!"
prompt
-_UnnamedText_48ed8:: ; 9dd7a (27:5d7a)
+_CeladonGameCornerText_48ed8:: ; 9dd7a (27:5d7a)
text "Our hideout might"
line "be discovered! I"
cont "better tell BOSS!"
done
-_UnnamedText_48f09:: ; 9ddb0 (27:5db0)
+_CeladonGameCornerText_48f09:: ; 9ddb0 (27:5db0)
text "Hey!"
para "A switch behind"
line "the poster!?"
cont "Let's push it!@@"
-_UnnamedText_48f19:: ; 9dde2 (27:5de2)
+_CeladonGameCornerText_48f19:: ; 9dde2 (27:5de2)
text "Oops! Forgot the"
line "COIN CASE!"
done
diff --git a/text/maps/celadon_gym.asm b/text/maps/celadon_gym.asm
index d607e376..e377365e 100644
--- a/text/maps/celadon_gym.asm
+++ b/text/maps/celadon_gym.asm
@@ -1,4 +1,4 @@
-_UnnamedText_48a5e:: ; 9d28f (27:528f)
+_CeladonGymText_48a5e:: ; 9d28f (27:528f)
text "Hello. Lovely"
line "weather isn't it?"
cont "It's so pleasant."
@@ -25,7 +25,7 @@ _UnnamedText_48a5e:: ; 9d28f (27:528f)
line "shall not lose."
done
-_UnnamedText_48a63:: ; 9d3c2 (27:53c2)
+_CeladonGymText_48a63:: ; 9d3c2 (27:53c2)
text "Oh!"
line "I concede defeat."
@@ -36,7 +36,7 @@ _UnnamedText_48a63:: ; 9d3c2 (27:53c2)
line "the RAINBOWBADGE."
prompt
-_UnnamedText_48a68:: ; 9d418 (27:5418)
+_CeladonGymText_48a68:: ; 9d418 (27:5418)
text "You are cataloging"
line "#MON? I must"
cont "say I'm impressed."
@@ -47,7 +47,7 @@ _UnnamedText_48a68:: ; 9d418 (27:5418)
cont "unattractive."
done
-_UnnamedText_48a6d:: ; 9d481 (27:5481)
+_CeladonGymText9:: ; 9d481 (27:5481)
text "The RAINBOWBADGE"
line "will make #MON"
cont "up to L50 obey."
diff --git a/text/maps/cerulean_badge_house.asm b/text/maps/cerulean_badge_house.asm
index 2368cf1c..cc0be659 100644
--- a/text/maps/cerulean_badge_house.asm
+++ b/text/maps/cerulean_badge_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_74e77:: ; 990c9 (26:50c9)
+_CeruleanHouse2Text_74e77:: ; 990c9 (26:50c9)
text "#MON BADGEs"
line "are owned only by"
cont "skilled trainers."
@@ -10,7 +10,7 @@ _UnnamedText_74e77:: ; 990c9 (26:50c9)
line "amazing secrets!"
prompt
-_UnnamedText_74e7c:: ; 9913a (26:513a)
+_CeruleanHouse2Text_74e7c:: ; 9913a (26:513a)
text "Now then..."
para "Which of the 8"
@@ -18,12 +18,12 @@ _UnnamedText_74e7c:: ; 9913a (26:513a)
cont "describe?"
done
-_UnnamedText_74e81:: ; 99170 (26:5170)
+_CeruleanHouse2Text_74e81:: ; 99170 (26:5170)
text "Come visit me any"
line "time you wish."
done
-_UnnamedText_74e96:: ; 99192 (26:5192)
+_CeruleanHouse2Text_74e96:: ; 99192 (26:5192)
text "The ATTACK of all"
line "#MON increases"
cont "a little bit."
@@ -33,7 +33,7 @@ _UnnamedText_74e96:: ; 99192 (26:5192)
cont "time you desire."
prompt
-_UnnamedText_74e9b:: ; 991f2 (26:51f2)
+_CeruleanHouse2Text_74e9b:: ; 991f2 (26:51f2)
text "#MON up to L30"
line "will obey you."
@@ -45,7 +45,7 @@ _UnnamedText_74e9b:: ; 991f2 (26:51f2)
cont "of battle."
prompt
-_UnnamedText_74ea0:: ; 9925d (26:525d)
+_CeruleanHouse2Text_74ea0:: ; 9925d (26:525d)
text "The SPEED of all"
line "#MON increases"
cont "a little bit."
@@ -55,7 +55,7 @@ _UnnamedText_74ea0:: ; 9925d (26:525d)
cont "of battle."
prompt
-_UnnamedText_74ea5:: ; 992b8 (26:52b8)
+_CeruleanHouse2Text_74ea5:: ; 992b8 (26:52b8)
text "#MON up to L50"
line "will obey you."
@@ -67,7 +67,7 @@ _UnnamedText_74ea5:: ; 992b8 (26:52b8)
cont "side of battle."
prompt
-_UnnamedText_74eaa:: ; 9932a (26:532a)
+_CeruleanHouse2Text_74eaa:: ; 9932a (26:532a)
text "The DEFENSE of all"
line "#MON increases"
cont "a little bit."
@@ -77,7 +77,7 @@ _UnnamedText_74eaa:: ; 9932a (26:532a)
cont "of battle."
prompt
-_UnnamedText_74eaf:: ; 99388 (26:5388)
+_CeruleanHouse2Text_74eaf:: ; 99388 (26:5388)
text "#MON up to L70"
line "will obey you."
@@ -85,13 +85,13 @@ _UnnamedText_74eaf:: ; 99388 (26:5388)
line "become unruly!"
prompt
-_UnnamedText_74eb4:: ; 993c7 (26:53c7)
+_CeruleanHouse2Text_74eb4:: ; 993c7 (26:53c7)
text "Your #MON's"
line "SPECIAL abilities"
cont "increase a bit."
prompt
-_UnnamedText_74eb9:: ; 993f5 (26:53f5)
+_CeruleanHouse2Text_74eb9:: ; 993f5 (26:53f5)
text "All #MON will"
line "obey you!"
prompt
diff --git a/text/maps/cerulean_city.asm b/text/maps/cerulean_city.asm
index 5f9e2d7d..1daf3166 100644
--- a/text/maps/cerulean_city.asm
+++ b/text/maps/cerulean_city.asm
@@ -1,4 +1,4 @@
-_UnnamedText_19668:: ; a4d2b (29:4d2b)
+_CeruleanCityText_19668:: ; a4d2b (29:4d2b)
text $53, ": Yo!"
line $52, "!"
@@ -16,19 +16,19 @@ _UnnamedText_19668:: ; a4d2b (29:4d2b)
cont $52, "!"
done
-_UnnamedText_1966d:: ; a4dbe (29:4dbe)
+_CeruleanCityText_1966d:: ; a4dbe (29:4dbe)
text "Hey!"
line "Take it easy!"
cont "You won already!"
prompt
-_UnnamedText_19672:: ; a4de3 (29:4de3)
+_CeruleanCityText_19672:: ; a4de3 (29:4de3)
text "Heh!"
line "You're no match"
cont "for my genius!"
prompt
-_UnnamedText_19677:: ; a4e07 (29:4e07)
+_CeruleanCityText_19677:: ; a4e07 (29:4e07)
text $53, ": Hey,"
line "guess what?"
@@ -58,7 +58,7 @@ _UnnamedText_19677:: ; a4e07 (29:4e07)
cont "Smell ya later!"
done
-_UnnamedText_196d9:: ; a4f27 (29:4f27)
+_CeruleanCityText_196d9:: ; a4f27 (29:4f27)
text "Hey! Stay out!"
line "It's not your"
cont "yard! Huh? Me?"
@@ -85,13 +85,13 @@ _TM28NoRoomText:: ; a4fb3 (29:4fb3)
line "I give it to you!"
done
-_UnnamedText_196ee:: ; a4feb (29:4feb)
+_CeruleanCityText_196ee:: ; a4feb (29:4feb)
text "Stop!"
line "I give up! I'll"
cont "leave quietly!"
prompt
-_UnnamedText_196f3:: ; a5010 (29:5010)
+_CeruleanCityText_196f3:: ; a5010 (29:5010)
text "OK! I'll return"
line "the TM I stole!"
prompt
@@ -133,20 +133,20 @@ _CeruleanCityText6:: ; a50f6 (29:50f6)
cont "with the ROCKETs!"
done
-_UnnamedText_19730:: ; a5188 (29:5188)
+_CeruleanCityText_19730:: ; a5188 (29:5188)
text "OK! SLOWBRO!"
line "Use SONICBOOM!"
cont "Come on, SLOWBRO"
cont "pay attention!"
done
-_UnnamedText_19735:: ; a51c5 (29:51c5)
+_CeruleanCityText_19735:: ; a51c5 (29:51c5)
text "SLOWBRO punch!"
line "No! You blew it"
cont "again!"
done
-_UnnamedText_1973a:: ; a51ec (29:51ec)
+_CeruleanCityText_1973a:: ; a51ec (29:51ec)
text "SLOWBRO, WITHDRAW!"
line "No! That's wrong!"
@@ -159,22 +159,22 @@ _UnnamedText_1973a:: ; a51ec (29:51ec)
cont "as a trainer!"
done
-_UnnamedText_1976f:: ; a526b (29:526b)
+_CeruleanCityText_1976f:: ; a526b (29:526b)
text "SLOWBRO took a"
line "snooze..."
done
-_UnnamedText_19774:: ; a5285 (29:5285)
+_CeruleanCityText_19774:: ; a5285 (29:5285)
text "SLOWBRO is"
line "loafing around..."
done
-_UnnamedText_19779:: ; a52a3 (29:52a3)
+_CeruleanCityText_19779:: ; a52a3 (29:52a3)
text "SLOWBRO turned"
line "away..."
done
-_UnnamedText_1977e:: ; a52bb (29:52bb)
+_CeruleanCityText_1977e:: ; a52bb (29:52bb)
text "SLOWBRO"
line "ignored orders..."
done
diff --git a/text/maps/cerulean_gym.asm b/text/maps/cerulean_gym.asm
index 59ff424c..b0d2d3d1 100644
--- a/text/maps/cerulean_gym.asm
+++ b/text/maps/cerulean_gym.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5c7be:: ; 989c1 (26:49c1)
+_CeruleanGymText_5c7be:: ; 989c1 (26:49c1)
text "Hi, you're a new"
line "face!"
@@ -17,7 +17,7 @@ _UnnamedText_5c7be:: ; 989c1 (26:49c1)
cont "#MON!"
done
-_UnnamedText_5c7c3:: ; 98a7b (26:4a7b)
+_CeruleanGymText_5c7c3:: ; 98a7b (26:4a7b)
text "TM11 teaches"
line "BUBBLEBEAM!"
@@ -25,7 +25,7 @@ _UnnamedText_5c7c3:: ; 98a7b (26:4a7b)
line "aquatic #MON!"
done
-_UnnamedText_5c7c8:: ; 98ab0 (26:4ab0)
+_CeruleanGymText_5c7c8:: ; 98ab0 (26:4ab0)
text "The CASCADEBADGE"
line "makes all #MON"
cont "up to L30 obey!"
@@ -49,12 +49,12 @@ _ReceivedTM11Text:: ; 98b7d (26:4b7d)
text $52, " received"
line "TM11!@@"
-_UnnamedText_5c7d3:: ; 98b90 (26:4b90)
+_CeruleanGymText_5c7d3:: ; 98b90 (26:4b90)
text "You better make"
line "room for this!"
done
-_UnnamedText_5c7d8:: ; 98bb0 (26:4bb0)
+_CeruleanGymText_5c7d8:: ; 98bb0 (26:4bb0)
text "Wow!"
line "You're too much!"
@@ -103,7 +103,7 @@ _CeruleanGymAfterBattleText2:: ; 98cc4 (26:4cc4)
line "someone like you!"
done
-_UnnamedText_5c82a:: ; 98d0a (26:4d0a)
+_CeruleanGymText_5c82a:: ; 98d0a (26:4d0a)
text "Yo! Champ in"
line "making!"
@@ -121,7 +121,7 @@ _UnnamedText_5c82a:: ; 98d0a (26:4d0a)
line "electricity!"
done
-_UnnamedText_5c82f:: ; 98db0 (26:4db0)
+_CeruleanGymText_5c82f:: ; 98db0 (26:4db0)
text "You beat MISTY!"
line "What'd I tell ya?"
diff --git a/text/maps/cerulean_trashed_house.asm b/text/maps/cerulean_trashed_house.asm
index b8334bc4..83f87cb8 100644
--- a/text/maps/cerulean_trashed_house.asm
+++ b/text/maps/cerulean_trashed_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_1d6ab:: ; 9875c (26:475c)
+_CeruleanTrashedText_1d6ab:: ; 9875c (26:475c)
text "Those miserable"
line "ROCKETs!"
@@ -14,7 +14,7 @@ _UnnamedText_1d6ab:: ; 9875c (26:475c)
line "bundle, it did!"
done
-_UnnamedText_1d6b0:: ; 987e2 (26:47e2)
+_CeruleanTrashedText_1d6b0:: ; 987e2 (26:47e2)
text "I figure what's"
line "lost is lost!"
diff --git a/text/maps/champion.asm b/text/maps/champion.asm
index 87b93300..259d530b 100644
--- a/text/maps/champion.asm
+++ b/text/maps/champion.asm
@@ -1,4 +1,4 @@
-_UnnamedText_760f4:: ; 860e1 (21:60e1)
+_GaryText_760f4:: ; 860e1 (21:60e1)
text $53, ": Hey!"
para "I was looking"
@@ -35,7 +35,7 @@ _UnnamedText_760f4:: ; 860e1 (21:60e1)
cont "in the world!"
done
-_UnnamedText_760f9:: ; 8623b (21:623b)
+_GaryText_760f9:: ; 8623b (21:623b)
text "NO!"
line "That can't be!"
cont "You beat my best!"
@@ -49,7 +49,7 @@ _UnnamedText_760f9:: ; 8623b (21:623b)
cont "It's not fair!"
prompt
-_UnnamedText_760fe:: ; 862b4 (21:62b4)
+_GaryText_760fe:: ; 862b4 (21:62b4)
text "Hahaha!"
line "I won, I won!"
@@ -65,7 +65,7 @@ _UnnamedText_760fe:: ; 862b4 (21:62b4)
line "Hahaha!"
prompt
-_UnnamedText_76103:: ; 8632f (21:632f)
+_GaryText_76103:: ; 8632f (21:632f)
text "Why?"
line "Why did I lose?"
@@ -85,7 +85,7 @@ _GaryText2:: ; 863c1 (21:63c1)
text "OAK: ", $52, "!"
done
-_UnnamedText_76120:: ; 863ca (21:63ca)
+_GaryText_76120:: ; 863ca (21:63ca)
text "OAK: So, you won!"
line "Congratulations!"
cont "You're the new"
@@ -103,7 +103,7 @@ _UnnamedText_76120:: ; 863ca (21:63ca)
line "come of age!"
done
-_UnnamedText_76125:: ; 86463 (21:6463)
+_GaryText_76125:: ; 86463 (21:6463)
text "OAK: ", $53, "! I'm"
line "disappointed!"
@@ -129,7 +129,7 @@ _UnnamedText_76125:: ; 86463 (21:6463)
cont "a champ again!"
done
-_UnnamedText_7612a:: ; 86567 (21:6567)
+_GaryText_7612a:: ; 86567 (21:6567)
text "OAK: ", $52, "!"
para "You understand"
diff --git a/text/maps/cinnabar_gym.asm b/text/maps/cinnabar_gym.asm
index adf6f535..4d8f796e 100644
--- a/text/maps/cinnabar_gym.asm
+++ b/text/maps/cinnabar_gym.asm
@@ -65,18 +65,18 @@ _TM38NoRoomText:: ; a0a1e (28:4a1e)
line "gift!"
done
-_UnnamedText_7595f:: ; a0a36 (28:4a36)
+_CinnabarGymText_7595f:: ; a0a36 (28:4a36)
text "Do you know how"
line "hot #MON fire"
cont "breath can get?"
done
-_UnnamedText_75964:: ; a0a65 (28:4a65)
+_CinnabarGymText_75964:: ; a0a65 (28:4a65)
text "Yow!"
line "Hot, hot, hot!"
prompt
-_UnnamedText_75969:: ; a0a7a (28:4a7a)
+_CinnabarGymText_75969:: ; a0a7a (28:4a7a)
text "Fire, or to be"
line "more precise,"
cont "combustion..."
@@ -85,66 +85,66 @@ _UnnamedText_75969:: ; a0a7a (28:4a7a)
line "blah..."
done
-_UnnamedText_75994:: ; a0ac0 (28:4ac0)
+_CinnabarGymText_75994:: ; a0ac0 (28:4ac0)
text "I was a thief, but"
line "I became straight"
cont "as a trainer!"
done
-_UnnamedText_75999:: ; a0af4 (28:4af4)
+_CinnabarGymText_75999:: ; a0af4 (28:4af4)
text "I"
line "surrender!"
prompt
-_UnnamedText_7599e:: ; a0b02 (28:4b02)
+_CinnabarGymText_7599e:: ; a0b02 (28:4b02)
text "I can't help"
line "stealing other"
cont "people's #MON!"
done
-_UnnamedText_759c9:: ; a0b2c (28:4b2c)
+_CinnabarGymText_759c9:: ; a0b2c (28:4b2c)
text "You can't win!"
line "I have studied"
cont "#MON totally!"
done
-_UnnamedText_759ce:: ; a0b58 (28:4b58)
+_CinnabarGymText_759ce:: ; a0b58 (28:4b58)
text "Waah!"
line "My studies!"
prompt
-_UnnamedText_759d3:: ; a0b6b (28:4b6b)
+_CinnabarGymText_759d3:: ; a0b6b (28:4b6b)
text "My theories are"
line "too complicated"
cont "for you!"
done
-_UnnamedText_759fe:: ; a0b95 (28:4b95)
+_CinnabarGymText_759fe:: ; a0b95 (28:4b95)
text "I just like using"
line "fire #MON!"
done
-_UnnamedText_75a03:: ; a0bb3 (28:4bb3)
+_CinnabarGymText_75a03:: ; a0bb3 (28:4bb3)
text "Too hot"
line "to handle!"
prompt
-_UnnamedText_75a08:: ; a0bc7 (28:4bc7)
+_CinnabarGymText_75a08:: ; a0bc7 (28:4bc7)
text "I wish there was"
line "a thief #MON!"
cont "I'd use that!"
done
-_UnnamedText_75a33:: ; a0bf4 (28:4bf4)
+_CinnabarGymText_75a33:: ; a0bf4 (28:4bf4)
text "I know why BLAINE"
line "became a trainer!"
done
-_UnnamedText_75a38:: ; a0c19 (28:4c19)
+_CinnabarGymText_75a38:: ; a0c19 (28:4c19)
text "Ow!"
prompt
-_UnnamedText_75a3d:: ; a0c1e (28:4c1e)
+_CinnabarGymText_75a3d:: ; a0c1e (28:4c1e)
text "BLAINE was lost"
line "in the mountains"
cont "when a fiery bird"
@@ -155,40 +155,40 @@ _UnnamedText_75a3d:: ; a0c1e (28:4c1e)
cont "his way down!"
done
-_UnnamedText_75a68:: ; a0c90 (28:4c90)
+_CinnabarGymText_75a68:: ; a0c90 (28:4c90)
text "I've been to many"
line "GYMs, but this is"
cont "my favorite!"
done
-_UnnamedText_75a6d:: ; a0cc1 (28:4cc1)
+_CinnabarGymText_75a6d:: ; a0cc1 (28:4cc1)
text "Yowza!"
line "Too hot!"
prompt
-_UnnamedText_75a72:: ; a0cd2 (28:4cd2)
+_CinnabarGymText_75a72:: ; a0cd2 (28:4cd2)
text "Us fire #MON"
line "fans like PONYTA"
cont "and NINETALES!"
done
-_UnnamedText_75a9d:: ; a0d00 (28:4d00)
+_CinnabarGymText_75a9d:: ; a0d00 (28:4d00)
text "Fire is weak"
line "against H2O!"
done
-_UnnamedText_75aa2:: ; a0d1b (28:4d1b)
+_CinnabarGymText_75aa2:: ; a0d1b (28:4d1b)
text "Oh!"
line "Snuffed out!"
prompt
-_UnnamedText_75aa7:: ; a0d2d (28:4d2d)
+_CinnabarGymText_75aa7:: ; a0d2d (28:4d2d)
text "Water beats fire!"
line "But, fire melts"
cont "ice #MON!"
done
-_UnnamedText_75ac2:: ; a0d5a (28:4d5a)
+_CinnabarGymText_75ac2:: ; a0d5a (28:4d5a)
text "Yo! Champ in"
line "making!"
@@ -203,7 +203,7 @@ _UnnamedText_75ac2:: ; a0d5a (28:4d5a)
line "some BURN HEALs!"
done
-_UnnamedText_75ac7:: ; a0dd9 (28:4dd9)
+_CinnabarGymText_75ac7:: ; a0dd9 (28:4dd9)
text $52, "! You beat"
line "that fire brand!"
done
diff --git a/text/maps/cinnabar_lab_fossil_room.asm b/text/maps/cinnabar_lab_fossil_room.asm
index 63d56bad..3e544bd6 100644
--- a/text/maps/cinnabar_lab_fossil_room.asm
+++ b/text/maps/cinnabar_lab_fossil_room.asm
@@ -1,4 +1,4 @@
-_UnnamedText_75dc6:: ; a10e8 (28:50e8)
+_Lab4Text_75dc6:: ; a10e8 (28:50e8)
text "Hiya!"
para "I am important"
@@ -11,11 +11,11 @@ _UnnamedText_75dc6:: ; a10e8 (28:50e8)
line "fossil for me?"
prompt
-_UnnamedText_75dcb:: ; a1145 (28:5145)
+_Lab4Text_75dcb:: ; a1145 (28:5145)
text "No! Is too bad!"
done
-_UnnamedText_75dd0:: ; a1156 (28:5156)
+_Lab4Text_75dd0:: ; a1156 (28:5156)
text "I take a little"
line "time!"
@@ -23,7 +23,7 @@ _UnnamedText_75dd0:: ; a1156 (28:5156)
line "little while!"
done
-_UnnamedText_75dd5:: ; a118d (28:518d)
+_Lab4Text_75dd5:: ; a118d (28:518d)
text "Where were you?"
para "Your fossil is"
@@ -35,7 +35,7 @@ _UnnamedText_75dd5:: ; a118d (28:518d)
line "like I think!"
prompt
-_UnnamedText_610ae:: ; a11d6 (28:51d6)
+_Lab4Text_610ae:: ; a11d6 (28:51d6)
text "Oh! That is"
line "@"
TX_RAM $cd6d
@@ -54,7 +54,7 @@ _UnnamedText_610ae:: ; a11d6 (28:51d6)
cont "again!"
done
-_UnnamedText_610b3:: ; a1259 (28:5259)
+_Lab4Text_610b3:: ; a1259 (28:5259)
text "So! You hurry and"
line "give me that!"
@@ -64,7 +64,7 @@ _UnnamedText_610b3:: ; a1259 (28:5259)
text "!"
prompt
-_UnnamedText_610b8:: ; a128f (28:528f)
+_Lab4Text_610b8:: ; a128f (28:528f)
text "I take a little"
line "time!"
@@ -72,7 +72,7 @@ _UnnamedText_610b8:: ; a128f (28:528f)
line "little while!"
done
-_UnnamedText_610bd:: ; a12c6 (28:52c6)
+_Lab4Text_610bd:: ; a12c6 (28:52c6)
text "Aiyah! You come"
line "again!"
done
diff --git a/text/maps/copycats_house_2f.asm b/text/maps/copycats_house_2f.asm
index c818f034..502f7611 100644
--- a/text/maps/copycats_house_2f.asm
+++ b/text/maps/copycats_house_2f.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5ccd4:: ; a15ad (28:55ad)
+_CopycatsHouse2FText_5ccd4:: ; a15ad (28:55ad)
text $52, ": Hi! Do"
line "you like #MON?"
@@ -79,7 +79,7 @@ _CopycatsHouse2FText6:: ; a17be (28:57be)
cont "on his head!"
done
-_UnnamedText_5cd17:: ; a17ef (28:57ef)
+_CopycatsHouse2FText_5cd17:: ; a17ef (28:57ef)
text "..."
para "My Secrets!"
@@ -91,7 +91,7 @@ _UnnamedText_5cd17:: ; a17ef (28:57ef)
cont "CLEFAIRY!"
done
-_UnnamedText_5cd1c:: ; a1842 (28:5842)
+_CopycatsHouse2FText_5cd1c:: ; a1842 (28:5842)
text "Huh? Can't see!"
done
diff --git a/text/maps/daycare_1.asm b/text/maps/daycare_1.asm
index 6a0c08fe..1743cbc3 100644
--- a/text/maps/daycare_1.asm
+++ b/text/maps/daycare_1.asm
@@ -1,16 +1,16 @@
-_UnnamedText_5640f:: ; 8ab95 (22:6b95)
+_DayCareMText_5640f:: ; 8ab95 (22:6b95)
text "I run a DAYCARE."
line "Would you like me"
cont "to raise one of"
cont "your #MON?"
done
-_UnnamedText_56414:: ; 8abd4 (22:6bd4)
+_DayCareMText_56414:: ; 8abd4 (22:6bd4)
text "Which #MON"
line "should I raise?"
prompt
-_UnnamedText_56419:: ; 8abf0 (22:6bf0)
+_DayCareMText_56419:: ; 8abf0 (22:6bf0)
text "Fine, I'll look"
line "after @"
TX_RAM $cd6d
@@ -18,12 +18,12 @@ _UnnamedText_56419:: ; 8abf0 (22:6bf0)
cont "for a while."
prompt
-_UnnamedText_5641e:: ; 8ac19 (22:6c19)
+_DayCareMText_5641e:: ; 8ac19 (22:6c19)
text "Come see me in"
line "a while."
done
-_UnnamedText_56423:: ; 8ac32 (22:6c32)
+_DayCareMText_56423:: ; 8ac32 (22:6c32)
text "Your @"
TX_RAM $cd6d
db $0
@@ -32,14 +32,14 @@ _UnnamedText_56423:: ; 8ac32 (22:6c32)
para "By level, it's"
line "grown by @"
-UnnamedText_8ac67:: ; 8ac67 (22:6c67)
+DayCareMText_8ac67:: ; 8ac67 (22:6c67)
TX_NUM $cd3e,$1,$3
text "!"
para "Aren't I great?"
prompt
-_UnnamedText_56428:: ; 8ac7d (22:6c7d)
+_DayCareMText_56428:: ; 8ac7d (22:6c7d)
text "You owe me ¥@"
db $2, $3f, $cd, $c2
db $0
@@ -47,14 +47,14 @@ _UnnamedText_56428:: ; 8ac7d (22:6c7d)
cont "of this #MON."
done
-_UnnamedText_5642d:: ; 8acae (22:6cae)
+_DayCareMText_5642d:: ; 8acae (22:6cae)
text $52, " got"
line "@"
TX_RAM W_DAYCAREMONNAME
text " back!"
done
-_UnnamedText_56432:: ; 8acc1 (22:6cc1)
+_DayCareMText_56432:: ; 8acc1 (22:6cc1)
text "Back already?"
line "Your @"
TX_RAM $cd6d
diff --git a/text/maps/daycare_2.asm b/text/maps/daycare_2.asm
index 2ee13180..ac9720ba 100644
--- a/text/maps/daycare_2.asm
+++ b/text/maps/daycare_2.asm
@@ -1,33 +1,33 @@
-_UnnamedText_56437:: ; 8c000 (23:4000)
+_DayCareMText_56437:: ; 8c000 (23:4000)
text "All right then,"
line "@@"
-_UnnamedText_5643b:: ; 8c013 (23:4013)
+_DayCareMText_5643b:: ; 8c013 (23:4013)
text "come again."
done
-_UnnamedText_56440:: ; 8c020 (23:4020)
+_DayCareMText_56440:: ; 8c020 (23:4020)
text "You have no room"
line "for this #MON!"
done
-_UnnamedText_56445:: ; 8c041 (23:4041)
+_DayCareMText_56445:: ; 8c041 (23:4041)
text "You only have one"
line "#MON with you."
done
-_UnnamedText_5644a:: ; 8c063 (23:4063)
+_DayCareMText_5644a:: ; 8c063 (23:4063)
text "I can't accept a"
line "#MON that"
cont "knows an HM move."
done
-_UnnamedText_5644f:: ; 8c090 (23:4090)
+_DayCareMText_5644f:: ; 8c090 (23:4090)
text "Thank you! Here's"
line "your #MON!"
prompt
-_UnnamedText_56454:: ; 8c0ad (23:40ad)
+_DayCareMText_56454:: ; 8c0ad (23:40ad)
text "Hey, you don't"
line "have enough ¥!"
done
diff --git a/text/maps/fighting_dojo.asm b/text/maps/fighting_dojo.asm
index 802f7276..6f01e5fa 100644
--- a/text/maps/fighting_dojo.asm
+++ b/text/maps/fighting_dojo.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5ce8e:: ; a1852 (28:5852)
+_FightingDojoText_5ce8e:: ; a1852 (28:5852)
text "Grunt!"
para "I am the KARATE"
@@ -12,12 +12,12 @@ _UnnamedText_5ce8e:: ; a1852 (28:5852)
para "Fwaaa!"
done
-_UnnamedText_5ce93:: ; a18ba (28:58ba)
+_FightingDojoText_5ce93:: ; a18ba (28:58ba)
text "Hwa!"
line "Arrgh! Beaten!"
prompt
-_UnnamedText_5ce98:: ; a18cf (28:58cf)
+_FightingDojoText_5ce98:: ; a18cf (28:58cf)
text "Indeed, I have"
line "lost!"
@@ -34,7 +34,7 @@ _UnnamedText_5ce98:: ; a18cf (28:58cf)
line "one you like!"
done
-_UnnamedText_5ce9d:: ; a1972 (28:5972)
+_FightingDojoText_5ce9d:: ; a1972 (28:5972)
text "Ho!"
para "Stay and train at"
diff --git a/text/maps/fuchsia_city.asm b/text/maps/fuchsia_city.asm
index 07909c04..aa35c16d 100644
--- a/text/maps/fuchsia_city.asm
+++ b/text/maps/fuchsia_city.asm
@@ -114,7 +114,7 @@ _FuchsiaCityKabutoText:: ; a6191 (29:6191)
cont "from a fossil."
prompt
-_UnnamedText_19b2a:: ; a61ca (29:61ca)
+_FuchsiaCityText_19b2a:: ; a61ca (29:61ca)
text "..."
done
diff --git a/text/maps/fuchsia_fishing_house.asm b/text/maps/fuchsia_fishing_house.asm
index abe94780..5ad09ef0 100644
--- a/text/maps/fuchsia_fishing_house.asm
+++ b/text/maps/fuchsia_fishing_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_561bd:: ; a0695 (28:4695)
+_FuchsiaHouse3Text_561bd:: ; a0695 (28:4695)
text "I'm the FISHING"
line "GURU's older"
cont "brother!"
@@ -10,7 +10,7 @@ _UnnamedText_561bd:: ; a0695 (28:4695)
line "fish?"
done
-_UnnamedText_561c2:: ; a06e8 (28:46e8)
+_FuchsiaHouse3Text_561c2:: ; a06e8 (28:46e8)
text "Grand! I like"
line "your style!"
@@ -22,12 +22,12 @@ _UnnamedText_561c2:: ; a06e8 (28:46e8)
TX_RAM $cf4b
text "!@@"
-_UnnamedText_56212:: ; a0737 (28:4737)
+_FuchsiaHouse3Text_56212:: ; a0737 (28:4737)
text "Oh... That's so"
line "disappointing..."
done
-_UnnamedText_56217:: ; a0758 (28:4758)
+_FuchsiaHouse3Text_56217:: ; a0758 (28:4758)
text "Hello there,"
line $52, "!"
@@ -35,7 +35,7 @@ _UnnamedText_56217:: ; a0758 (28:4758)
line "biting?"
done
-_UnnamedText_5621c:: ; a0782 (28:4782)
+_FuchsiaHouse3Text_5621c:: ; a0782 (28:4782)
text "Oh no!"
para "You have no room"
diff --git a/text/maps/fujis_house.asm b/text/maps/fujis_house.asm
index 44d8c601..033777c2 100644
--- a/text/maps/fujis_house.asm
+++ b/text/maps/fujis_house.asm
@@ -1,16 +1,16 @@
-_UnnamedText_1d8d1:: ; 99e8d (26:5e8d)
+_LavenderHouse1Text_1d8d1:: ; 99e8d (26:5e8d)
text "That's odd, MR.FUJI"
line "isn't here."
cont "Where'd he go?"
done
-_UnnamedText_1d8d6:: ; 99eba (26:5eba)
+_LavenderHouse1Text_1d8d6:: ; 99eba (26:5eba)
text "MR.FUJI had been"
line "praying alone for"
cont "CUBONE's mother."
done
-_UnnamedText_1d8f4:: ; 99eee (26:5eee)
+_LavenderHouse1Text_1d8f4:: ; 99eee (26:5eee)
text "This is really"
line "MR.FUJI's house."
@@ -21,7 +21,7 @@ _UnnamedText_1d8f4:: ; 99eee (26:5eee)
cont "orphaned #MON!"
done
-_UnnamedText_1d8f9:: ; 99f4b (26:5f4b)
+_LavenderHouse1Text_1d8f9:: ; 99f4b (26:5f4b)
text "It's so warm!"
line "#MON are so"
cont "nice to hug!"
@@ -33,7 +33,7 @@ _LavenderHouse1Text3:: ; 99f72 (26:5f72)
_LavenderHouse1Text4:: ; 99f85 (26:5f85)
text "NIDORINO: Gaoo!@@"
-_UnnamedText_1d94c:: ; 99f97 (26:5f97)
+_LavenderHouse1Text_1d94c:: ; 99f97 (26:5f97)
text "MR.FUJI: ", $52, "."
para "Your #DEX quest"
diff --git a/text/maps/lavender_house.asm b/text/maps/lavender_house.asm
index 444e600a..0ae3a1fe 100644
--- a/text/maps/lavender_house.asm
+++ b/text/maps/lavender_house.asm
@@ -1,7 +1,7 @@
_LavenderHouse2Text1:: ; 9a238 (26:6238)
text "CUBONE: Kyarugoo!@@"
-_UnnamedText_1d9dc:: ; 9a24c (26:624c)
+_LavenderHouse2Text_1d9dc:: ; 9a24c (26:624c)
text "I hate those"
line "horrible ROCKETs!"
@@ -13,7 +13,7 @@ _UnnamedText_1d9dc:: ; 9a24c (26:624c)
cont "from TEAM ROCKET!"
done
-_UnnamedText_1d9e1:: ; 9a2b9 (26:62b9)
+_LavenderHouse2Text_1d9e1:: ; 9a2b9 (26:62b9)
text "The GHOST of"
line "#MON TOWER is"
cont "gone!"
diff --git a/text/maps/lavender_mart.asm b/text/maps/lavender_mart.asm
index 2438ab22..53ebdae3 100644
--- a/text/maps/lavender_mart.asm
+++ b/text/maps/lavender_mart.asm
@@ -14,13 +14,13 @@ _LavenderMartText2:: ; 9a104 (26:6104)
line "I can get them?"
done
-_UnnamedText_5c953:: ; 9a1b4 (26:61b4)
+_LavenderMart_5c953:: ; 9a1b4 (26:61b4)
text "You know REVIVE?"
line "It revives any"
cont "fainted #MON!"
done
-_UnnamedText_5c958:: ; 9a1e3 (26:61e3)
+_LavenderMart_5c958:: ; 9a1e3 (26:61e3)
text "I found a NUGGET"
line "in the mountains."
diff --git a/text/maps/lavender_town.asm b/text/maps/lavender_town.asm
index a12bde55..f6485c6f 100644
--- a/text/maps/lavender_town.asm
+++ b/text/maps/lavender_town.asm
@@ -1,14 +1,14 @@
-_UnnamedText_4413c:: ; a5482 (29:5482)
+_LavenderTownText_4413c:: ; a5482 (29:5482)
text "Do you believe in"
line "GHOSTs?"
done
-_UnnamedText_44141:: ; a549d (29:549d)
+_LavenderTownText_44141:: ; a549d (29:549d)
text "Really? So there"
line "are believers..."
done
-_UnnamedText_44146:: ; a54c0 (29:54c0)
+_LavenderTownText_44146:: ; a54c0 (29:54c0)
text "Hahaha, I guess"
line "not."
diff --git a/text/maps/lorelei.asm b/text/maps/lorelei.asm
index cb007464..a75b50d9 100644
--- a/text/maps/lorelei.asm
+++ b/text/maps/lorelei.asm
@@ -36,7 +36,7 @@ _LoreleiAfterBattleText:: ; 866d3 (21:66d3)
cont "LEAGUE power!"
done
-_UnnamedText_7627b:: ; 86729 (21:6729)
+_LoreleiText2:: ; 86729 (21:6729)
text "Someone's voice:"
line "Don't run away!"
done
diff --git a/text/maps/mansion_2f.asm b/text/maps/mansion_2f.asm
index 49e28a19..057e05e2 100644
--- a/text/maps/mansion_2f.asm
+++ b/text/maps/mansion_2f.asm
@@ -32,17 +32,17 @@ _Mansion2Text4:: ; 85389 (21:5389)
cont "#MON, MEW."
done
-_UnnamedText_520c2:: ; 853c7 (21:53c7)
+_Mansion2Text_520c2:: ; 853c7 (21:53c7)
text "A secret switch!"
para "Press it?"
done
-_UnnamedText_520c7:: ; 853e3 (21:53e3)
+_Mansion2Text_520c7:: ; 853e3 (21:53e3)
text "Who wouldn't?"
prompt
-_UnnamedText_520cc:: ; 853f1 (21:53f1)
+_Mansion2Text_520cc:: ; 853f1 (21:53f1)
text "Not quite yet!"
done
diff --git a/text/maps/mt_moon_b1f.asm b/text/maps/mt_moon_b1f.asm
index d6d7dd7f..8421fdb0 100644
--- a/text/maps/mt_moon_b1f.asm
+++ b/text/maps/mt_moon_b1f.asm
@@ -1,4 +1,4 @@
-_UnnamedText_51a48:: ; 8095c (20:495c)
+_MtMoonText1:: ; 8095c (20:495c)
db $0
done
diff --git a/text/maps/mt_moon_b2f.asm b/text/maps/mt_moon_b2f.asm
index 6af39872..4088e280 100644
--- a/text/maps/mt_moon_b2f.asm
+++ b/text/maps/mt_moon_b2f.asm
@@ -1,24 +1,24 @@
-_UnnamedText_49f24:: ; 8095e (20:495e)
+_MtMoon3Text_49f24:: ; 8095e (20:495e)
text "You want the"
line "DOME FOSSIL?"
done
-_UnnamedText_49f64:: ; 80979 (20:4979)
+_MtMoon3Text_49f64:: ; 80979 (20:4979)
text "You want the"
line "HELIX FOSSIL?"
done
-_UnnamedText_49f6f:: ; 80995 (20:4995)
+_MtMoon3Text_49f6f:: ; 80995 (20:4995)
text $52, " got the"
line "@"
TX_RAM $cf4b
text "!@@"
-_UnnamedText_49f7f:: ; 809a8 (20:49a8)
+_MtMoon3Text_49f7f:: ; 809a8 (20:49a8)
text "Look, you've got"
line "no room for this.@@"
-_UnnamedText_49f85:: ; 809cc (20:49cc)
+_MtMoon3Text_49f85:: ; 809cc (20:49cc)
text "Hey, stop!"
para "I found these"
@@ -26,18 +26,18 @@ _UnnamedText_49f85:: ; 809cc (20:49cc)
cont "both mine!"
done
-_UnnamedText_49f8a:: ; 80a01 (20:4a01)
+_MtMoon3Text_49f8a:: ; 80a01 (20:4a01)
text "OK!"
line "I'll share!"
prompt
-_UnnamedText_49f8f:: ; 80a11 (20:4a11)
+_MtMoon3Text_49f8f:: ; 80a11 (20:4a11)
text "We'll each take"
line "one!"
cont "No being greedy!"
done
-_UnnamedText_49f94:: ; 80a37 (20:4a37)
+_MtMoon3Text_49f94:: ; 80a37 (20:4a37)
text "Far away, on"
line "CINNABAR ISLAND,"
cont "there's a #MON"
@@ -48,7 +48,7 @@ _UnnamedText_49f94:: ; 80a37 (20:4a37)
cont "fossils."
done
-_UnnamedText_49f99:: ; 80a93 (20:4a93)
+_MtMoon3Text_49f99:: ; 80a93 (20:4a93)
text "All right. Then"
line "this is mine!@@"
diff --git a/text/maps/mt_moon_pokecenter.asm b/text/maps/mt_moon_pokecenter.asm
index 54186253..2ae50a13 100644
--- a/text/maps/mt_moon_pokecenter.asm
+++ b/text/maps/mt_moon_pokecenter.asm
@@ -16,7 +16,7 @@ _MtMoonPokecenterText3:: ; 8a929 (22:6929)
cont "news!"
done
-_UnnamedText_4935c:: ; 8a976 (22:6976)
+_MtMoonPokecenterText_4935c:: ; 8a976 (22:6976)
text "MAN: Hello, there!"
line "Have I got a deal"
cont "just for you!"
@@ -27,18 +27,18 @@ _UnnamedText_4935c:: ; 8a976 (22:6976)
cont "What do you say?"
done
-_UnnamedText_49361:: ; 8a9ec (22:69ec)
+_MtMoonPokecenterText_49361:: ; 8a9ec (22:69ec)
text "No? I'm only"
line "doing this as a"
cont "favor to you!"
done
-_UnnamedText_49366:: ; 8aa17 (22:6a17)
+_MtMoonPokecenterText_49366:: ; 8aa17 (22:6a17)
text "You'll need more"
line "money than that!"
done
-_UnnamedText_4936b:: ; 8aa39 (22:6a39)
+_MtMoonPokecenterText_4936b:: ; 8aa39 (22:6a39)
text "MAN: Well, I don't"
line "give refunds!"
done
diff --git a/text/maps/museum_1f.asm b/text/maps/museum_1f.asm
index 250dd031..f5f847d3 100644
--- a/text/maps/museum_1f.asm
+++ b/text/maps/museum_1f.asm
@@ -1,8 +1,8 @@
-_UnnamedText_5c21a:: ; 9652c (25:652c)
+_Museum1FText_5c21a:: ; 9652c (25:652c)
text "Come again!"
done
-_UnnamedText_5c21f:: ; 96539 (25:6539)
+_Museum1FText_5c21f:: ; 96539 (25:6539)
text "It's ¥50 for a"
line "child's ticket."
@@ -10,17 +10,17 @@ _UnnamedText_5c21f:: ; 96539 (25:6539)
line "come in?"
done
-_UnnamedText_5c224:: ; 96572 (25:6572)
+_Museum1FText_5c224:: ; 96572 (25:6572)
text "Right, ¥50!"
line "Thank you!"
done
-_UnnamedText_5c229:: ; 9658a (25:658a)
+_Museum1FText_5c229:: ; 9658a (25:658a)
text "You don't have"
line "enough money."
prompt
-_UnnamedText_5c22e:: ; 965a7 (25:65a7)
+_Museum1FText_5c22e:: ; 965a7 (25:65a7)
text "You can't sneak"
line "in the back way!"
@@ -29,7 +29,7 @@ _UnnamedText_5c22e:: ; 965a7 (25:65a7)
cont "AMBER is?"
done
-_UnnamedText_5c233:: ; 965f1 (25:65f1)
+_Museum1FText_5c233:: ; 965f1 (25:65f1)
text "There's a lab"
line "somewhere trying"
cont "to resurrect"
@@ -37,28 +37,28 @@ _UnnamedText_5c233:: ; 965f1 (25:65f1)
cont "from AMBER."
done
-_UnnamedText_5c238:: ; 96636 (25:6636)
+_Museum1FText_5c238:: ; 96636 (25:6636)
text "AMBER is fossil-"
line "ized tree sap."
done
-_UnnamedText_5c23d:: ; 96657 (25:6657)
+_Museum1FText_5c23d:: ; 96657 (25:6657)
text "Please go to the"
line "other side!"
done
-_UnnamedText_5c242:: ; 96675 (25:6675)
+_Museum1FText_5c242:: ; 96675 (25:6675)
text "Take plenty of"
line "time to look!"
done
-_UnnamedText_5c251:: ; 96693 (25:6693)
+_Museum1FText_5c251:: ; 96693 (25:6693)
text "That is one"
line "magnificent"
cont "fossil!"
done
-_UnnamedText_5c28e:: ; 966b4 (25:66b4)
+_Museum1FText_5c28e:: ; 966b4 (25:66b4)
text "Ssh! I think that"
line "this chunk of"
cont "AMBER contains"
@@ -84,24 +84,24 @@ _ReceivedOldAmberText:: ; 96790 (25:6790)
text $52, " received"
line "OLD AMBER!@@"
-_UnnamedText_5c299:: ; 967a8 (25:67a8)
+_Museum1FText_5c299:: ; 967a8 (25:67a8)
text "Ssh! Get the OLD"
line "AMBER checked!"
done
-_UnnamedText_5c29e:: ; 967c9 (25:67c9)
+_Museum1FText_5c29e:: ; 967c9 (25:67c9)
text "You don't have"
line "space for this!"
done
-_UnnamedText_5c2ad:: ; 967e8 (25:67e8)
+_Museum1FText_5c2ad:: ; 967e8 (25:67e8)
text "We are proud of 2"
line "fossils of very"
cont "rare, prehistoric"
cont "#MON!"
done
-_UnnamedText_5c2bc:: ; 96823 (25:6823)
+_Museum1FText_5c2bc:: ; 96823 (25:6823)
text "The AMBER is"
line "clear and gold!"
done
diff --git a/text/maps/name_rater.asm b/text/maps/name_rater.asm
index 587ddb7b..c2e0b2ea 100644
--- a/text/maps/name_rater.asm
+++ b/text/maps/name_rater.asm
@@ -1,4 +1,4 @@
-_UnnamedText_1dab3:: ; 9a308 (26:6308)
+_NameRaterText_1dab3:: ; 9a308 (26:6308)
text "Hello, hello!"
line "I am the official"
cont "NAME RATER!"
@@ -8,12 +8,12 @@ _UnnamedText_1dab3:: ; 9a308 (26:6308)
cont "your #MON?"
done
-_UnnamedText_1dab8:: ; 9a361 (26:6361)
+_NameRaterText_1dab8:: ; 9a361 (26:6361)
text "Which #MON"
line "should I look at?"
prompt
-_UnnamedText_1dabd:: ; 9a37f (26:637f)
+_NameRaterText_1dabd:: ; 9a37f (26:637f)
TX_RAM $cd6d
text ", is it?"
line "That is a decent"
@@ -26,12 +26,12 @@ _UnnamedText_1dabd:: ; 9a37f (26:637f)
para "How about it?"
done
-_UnnamedText_1dac2:: ; 9a3e5 (26:63e5)
+_NameRaterText_1dac2:: ; 9a3e5 (26:63e5)
text "Fine! What should"
line "we name it?"
prompt
-_UnnamedText_1dac7:: ; 9a404 (26:6404)
+_NameRaterText_1dac7:: ; 9a404 (26:6404)
text "OK! This #MON"
line "has been renamed"
cont "@"
@@ -42,12 +42,12 @@ _UnnamedText_1dac7:: ; 9a404 (26:6404)
line "name than before!"
done
-_UnnamedText_1dacc:: ; 9a44c (26:644c)
+_NameRaterText_1dacc:: ; 9a44c (26:644c)
text "Fine! Come any"
line "time you like!"
done
-_UnnamedText_1dad1:: ; 9a46b (26:646b)
+_NameRaterText_1dad1:: ; 9a46b (26:646b)
TX_RAM $cd6d
text ", is it?"
line "That is a truly"
diff --git a/text/maps/oaks_lab.asm b/text/maps/oaks_lab.asm
index 79ae312a..3e10758e 100644
--- a/text/maps/oaks_lab.asm
+++ b/text/maps/oaks_lab.asm
@@ -59,20 +59,20 @@ _OaksLabLastMonText:: ; 94eb6 (25:4eb6)
line "last #MON!"
done
-_UnnamedText_1d2f0:: ; 94ed2 (25:4ed2)
+_OaksLabText_1d2f0:: ; 94ed2 (25:4ed2)
text "OAK: Now, ", $52, ","
line "which #MON do"
cont "you want?"
done
-_UnnamedText_1d2f5:: ; 94ef8 (25:4ef8)
+_OaksLabText_1d2f5:: ; 94ef8 (25:4ef8)
text "OAK: If a wild"
line "#MON appears,"
cont "your #MON can"
cont "fight against it!"
done
-_UnnamedText_1d2fa:: ; 94f36 (25:4f36)
+_OaksLabText_1d2fa:: ; 94f36 (25:4f36)
text "OAK: ", $52, ","
line "raise your young"
cont "#MON by making"
@@ -153,7 +153,7 @@ _OaksLabPleaseVisitText:: ; 9519e (25:519e)
cont "coming along."
done
-_UnnamedText_1d31d:: ; 951e9 (25:51e9)
+_OaksLabText_1d31d:: ; 951e9 (25:51e9)
text "OAK: Good to see "
line "you! How is your "
cont "#DEX coming? "
@@ -161,7 +161,7 @@ _UnnamedText_1d31d:: ; 951e9 (25:51e9)
cont "a look!"
prompt
-_UnnamedText_1d32c:: ; 95236 (25:5236)
+_OaksLabText_1d32c:: ; 95236 (25:5236)
text "It's encyclopedia-"
line "like, but the"
cont "pages are blank!"
@@ -171,7 +171,7 @@ _OaksLabText8:: ; 95268 (25:5268)
text "?"
done
-_UnnamedText_1d340:: ; 9526b (25:526b)
+_OaksLabText_1d340:: ; 9526b (25:526b)
text "PROF.OAK is the"
line "authority on"
cont "#MON!"
@@ -253,14 +253,14 @@ _OaksLabRivalChallengeText:: ; 95477 (25:5477)
line "you on!"
done
-_UnnamedText_1d3be:: ; 954b6 (25:54b6)
+_OaksLabText_1d3be:: ; 954b6 (25:54b6)
text "WHAT?"
line "Unbelievable!"
cont "I picked the"
cont "wrong #MON!"
prompt
-_UnnamedText_1d3c3:: ; 954e4 (25:54e4)
+_OaksLabText_1d3c3:: ; 954e4 (25:54e4)
text $53, ": Yeah! Am"
line "I great or what?"
prompt
@@ -353,12 +353,12 @@ _OaksLabText27:: ; 95741 (25:5741)
cont $52, "! Hahaha!"
done
-_UnnamedText_1d405:: ; 957eb (25:57eb)
+_OaksLabText_1d405:: ; 957eb (25:57eb)
text "I study #MON as"
line "PROF.OAK's AIDE."
done
-_UnnamedText_441cc:: ; 9580c (25:580c)
+_OaksLabText_441cc:: ; 9580c (25:580c)
text "#DEX comp-"
line "letion is:"
@@ -373,41 +373,41 @@ _UnnamedText_441cc:: ; 9580c (25:580c)
line "Rating:"
prompt
-_UnnamedText_44201:: ; 95858 (25:5858)
+_OaksLabText_44201:: ; 95858 (25:5858)
text "You still have"
line "lots to do."
cont "Look for #MON"
cont "in grassy areas!"
done
-_UnnamedText_44206:: ; 95893 (25:5893)
+_OaksLabText_44206:: ; 95893 (25:5893)
text "You're on the"
line "right track! "
cont "Get a FLASH HM"
cont "from my AIDE!"
done
-_UnnamedText_4420b:: ; 958cc (25:58cc)
+_OaksLabText_4420b:: ; 958cc (25:58cc)
text "You still need"
line "more #MON!"
cont "Try to catch"
cont "other species!"
done
-_UnnamedText_44210:: ; 95903 (25:5903)
+_OaksLabText_44210:: ; 95903 (25:5903)
text "Good, you're"
line "trying hard!"
cont "Get an ITEMFINDER"
cont "from my AIDE!"
done
-_UnnamedText_44215:: ; 9593d (25:593d)
+_OaksLabText_44215:: ; 9593d (25:593d)
text "Looking good!"
line "Go find my AIDE"
cont "when you get 50!"
done
-_UnnamedText_4421a:: ; 9596d (25:596d)
+_OaksLabText_4421a:: ; 9596d (25:596d)
text "You finally got at"
line "least 50 species!"
cont "Be sure to get"
@@ -415,62 +415,62 @@ _UnnamedText_4421a:: ; 9596d (25:596d)
cont "AIDE!"
done
-_UnnamedText_4421f:: ; 959b8 (25:59b8)
+_OaksLabText_4421f:: ; 959b8 (25:59b8)
text "Ho! This is geting"
line "even better!"
done
-_UnnamedText_44224:: ; 959d9 (25:59d9)
+_OaksLabText_44224:: ; 959d9 (25:59d9)
text "Very good!"
line "Go fish for some"
cont "marine #MON!"
done
-_UnnamedText_44229:: ; 95a03 (25:5a03)
+_OaksLabText_44229:: ; 95a03 (25:5a03)
text "Wonderful!"
line "Do you like to"
cont "collect things?"
done
-_UnnamedText_4422e:: ; 95a2e (25:5a2e)
+_OaksLabText_4422e:: ; 95a2e (25:5a2e)
text "I'm impressed!"
line "It must have been"
cont "difficult to do!"
done
-_UnnamedText_44233:: ; 95a60 (25:5a60)
+_OaksLabText_44233:: ; 95a60 (25:5a60)
text "You finally got at"
line "least 100 species!"
cont "I can't believe"
cont "how good you are!"
done
-_UnnamedText_44238:: ; 95aa8 (25:5aa8)
+_OaksLabText_44238:: ; 95aa8 (25:5aa8)
text "You even have the"
line "evolved forms of"
cont "#MON! Super!"
done
-_UnnamedText_4423d:: ; 95ad9 (25:5ad9)
+_OaksLabText_4423d:: ; 95ad9 (25:5ad9)
text "Excellent! Trade"
line "with friends to"
cont "get some more!"
done
-_UnnamedText_44242:: ; 95b0a (25:5b0a)
+_OaksLabText_44242:: ; 95b0a (25:5b0a)
text "Outstanding!"
line "You've become a"
cont "real pro at this!"
done
-_UnnamedText_44247:: ; 95b39 (25:5b39)
+_OaksLabText_44247:: ; 95b39 (25:5b39)
text "I have nothing"
line "left to say!"
cont "You're the"
cont "authority now!"
done
-_UnnamedText_4424c:: ; 95b6f (25:5b6f)
+_OaksLabText_4424c:: ; 95b6f (25:5b6f)
text "Your #DEX is"
line "entirely complete!"
cont "Congratulations!"
diff --git a/text/maps/pewter_city.asm b/text/maps/pewter_city.asm
index dec2fd79..647832a3 100644
--- a/text/maps/pewter_city.asm
+++ b/text/maps/pewter_city.asm
@@ -20,18 +20,18 @@ _PewterCityText2:: ; a49e0 (29:49e0)
cont "into it!"
done
-_UnnamedText_193f1:: ; a4a56 (29:4a56)
+_PewterCityText_193f1:: ; a4a56 (29:4a56)
text "Did you check out"
line "the MUSEUM?"
done
-_UnnamedText_193f6:: ; a4a75 (29:4a75)
+_PewterCityText_193f6:: ; a4a75 (29:4a75)
text "Weren't those"
line "fossils from MT."
cont "MOON amazing?"
done
-_UnnamedText_193fb:: ; a4aa2 (29:4aa2)
+_PewterCityText_193fb:: ; a4aa2 (29:4aa2)
text "Really?"
line "You absolutely"
cont "have to go!"
@@ -45,24 +45,24 @@ _PewterCityText13:: ; a4ac6 (29:4ac6)
cont "See you around!"
done
-_UnnamedText_19427:: ; a4b14 (29:4b14)
+_PewterCityText_19427:: ; a4b14 (29:4b14)
text "Psssst!"
line "Do you know what"
cont "I'm doing?"
done
-_UnnamedText_1942c:: ; a4b38 (29:4b38)
+_PewterCityText_1942c:: ; a4b38 (29:4b38)
text "That's right!"
line "It's hard work!"
done
-_UnnamedText_19431:: ; a4b55 (29:4b55)
+_PewterCityText_19431:: ; a4b55 (29:4b55)
text "I'm spraying REPEL"
line "to keep #MON"
cont "out of my garden!"
done
-_UnnamedText_1945d:: ; a4b87 (29:4b87)
+_PewterCityText_1945d:: ; a4b87 (29:4b87)
text "You're a trainer"
line "right? BROCK's"
cont "looking for new"
@@ -70,7 +70,7 @@ _UnnamedText_1945d:: ; a4b87 (29:4b87)
cont "Follow me!"
done
-_UnnamedText_19462:: ; a4bce (29:4bce)
+_PewterCityText_19462:: ; a4bce (29:4bce)
text "If you have the"
line "right stuff, go"
cont "take on BROCK!"
diff --git a/text/maps/pewter_gym_1.asm b/text/maps/pewter_gym_1.asm
index 83174271..9f3a1213 100644
--- a/text/maps/pewter_gym_1.asm
+++ b/text/maps/pewter_gym_1.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5c49e:: ; 9697a (25:697a)
+_PewterGymText_5c49e:: ; 9697a (25:697a)
text "I'm BROCK!"
line "I'm PEWTER's GYM"
cont "LEADER!"
diff --git a/text/maps/pewter_gym_2.asm b/text/maps/pewter_gym_2.asm
index d82d5e14..a503f755 100644
--- a/text/maps/pewter_gym_2.asm
+++ b/text/maps/pewter_gym_2.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5c4a3:: ; 98000 (26:4000)
+_PewterGymText_5c4a3:: ; 98000 (26:4000)
text "There are all"
line "kinds of trainers"
cont "in the world!"
@@ -49,7 +49,7 @@ _TM34NoRoomText:: ; 981ab (26:41ab)
line "room for this!"
done
-_UnnamedText_5c4bc:: ; 981c9 (26:41c9)
+_PewterGymText_5c4bc:: ; 981c9 (26:41c9)
text "I took"
line "you for granted."
@@ -60,7 +60,7 @@ _UnnamedText_5c4bc:: ; 981c9 (26:41c9)
para $52, " received"
line "the BOULDERBADGE!@@"
-_UnnamedText_5c4c1:: ; 98232 (26:4232)
+_PewterGymText_5c4c1:: ; 98232 (26:4232)
db $0
para "That's an official"
line "#MON LEAGUE"
@@ -98,7 +98,7 @@ _PewterGymAfterBattleText1:: ; 98325 (26:4325)
cont "as BROCK!"
done
-_UnnamedText_5c515:: ; 98351 (26:4351)
+_PewterGymText_5c515:: ; 98351 (26:4351)
text "Hiya! I can tell"
line "you have what it"
cont "takes to become a"
@@ -112,12 +112,12 @@ _UnnamedText_5c515:: ; 98351 (26:4351)
line "to the top!"
done
-_UnnamedText_5c51a:: ; 983dc (26:43dc)
+_PewterGymText_5c51a:: ; 983dc (26:43dc)
text "All right! Let's"
line "get happening!"
prompt
-_UnnamedText_5c51f:: ; 983fc (26:43fc)
+_PewterGymText_5c51f:: ; 983fc (26:43fc)
text "The 1st #MON"
line "out in a match is"
cont "at the top of the"
@@ -129,13 +129,13 @@ _UnnamedText_5c51f:: ; 983fc (26:43fc)
cont "made easier!"
done
-_UnnamedText_5c524:: ; 98476 (26:4476)
+_PewterGymText_5c524:: ; 98476 (26:4476)
text "It's a free"
line "service! Let's"
cont "get happening!"
prompt
-_UnnamedText_5c529:: ; 9849f (26:449f)
+_PewterGymText_5c529:: ; 9849f (26:449f)
text "Just as I thought!"
line "You're #MON"
cont "champ material!"
diff --git a/text/maps/pewter_mart.asm b/text/maps/pewter_mart.asm
index f98c72e7..a33974db 100644
--- a/text/maps/pewter_mart.asm
+++ b/text/maps/pewter_mart.asm
@@ -1,4 +1,4 @@
-_UnnamedText_74cc6:: ; 985ac (26:45ac)
+_PewterMartText_74cc6:: ; 985ac (26:45ac)
text "A shady, old man"
line "got me to buy"
cont "this really weird"
@@ -8,7 +8,7 @@ _UnnamedText_74cc6:: ; 985ac (26:45ac)
line "and it cost ¥500!"
done
-_UnnamedText_74cd5:: ; 9860c (26:460c)
+_PewterMartText_74cd5:: ; 9860c (26:460c)
text "Good things can"
line "happen if you"
cont "raise #MON"
diff --git a/text/maps/pokemon_league_gate.asm b/text/maps/pokemon_league_gate.asm
index f3eb1858..cadfea3b 100644
--- a/text/maps/pokemon_league_gate.asm
+++ b/text/maps/pokemon_league_gate.asm
@@ -1,4 +1,4 @@
-_UnnamedText_1e704:: ; 8cfbb (23:4fbb)
+_Route22GateText_1e704:: ; 8cfbb (23:4fbb)
text "Only truly skilled"
line "trainers are"
cont "allowed through."
@@ -6,14 +6,14 @@ _UnnamedText_1e704:: ; 8cfbb (23:4fbb)
para "You don't have the"
line "BOULDERBADGE yet!@@"
-_UnnamedText_1e715:: ; 8d012 (23:5012)
+_Route22GateText_1e715:: ; 8d012 (23:5012)
db $0
para "The rules are"
line "rules. I can't"
cont "let you pass."
done
-_UnnamedText_1e71a:: ; 8d03e (23:503e)
+_Route22GateText_1e71a:: ; 8d03e (23:503e)
text "Oh! That is the"
line "BOULDERBADGE!"
cont "Go right ahead!@@"
diff --git a/text/maps/pokemon_tower_2f.asm b/text/maps/pokemon_tower_2f.asm
index 4a0dbc9f..6a33e085 100644
--- a/text/maps/pokemon_tower_2f.asm
+++ b/text/maps/pokemon_tower_2f.asm
@@ -1,4 +1,4 @@
-_UnnamedText_6062d:: ; 9957b (26:557b)
+_PokemonTower2Text_6062d:: ; 9957b (26:557b)
text $53, ": Hey,"
line $52, "! What"
cont "brings you here?"
@@ -10,7 +10,7 @@ _UnnamedText_6062d:: ; 9957b (26:557b)
cont "Let's go, pal!"
done
-_UnnamedText_60632:: ; 995e5 (26:55e5)
+_PokemonTower2Text_60632:: ; 995e5 (26:55e5)
text "What?"
line "You stinker!"
@@ -18,7 +18,7 @@ _UnnamedText_60632:: ; 995e5 (26:55e5)
line "you too!"
prompt
-_UnnamedText_60637:: ; 99614 (26:5614)
+_PokemonTower2Text_60637:: ; 99614 (26:5614)
text $53, ": Well,"
line "look at all your"
cont "wimpy #MON!"
@@ -27,7 +27,7 @@ _UnnamedText_60637:: ; 99614 (26:5614)
line "bit more!"
prompt
-_UnnamedText_6063c:: ; 99657 (26:5657)
+_PokemonTower2Text_6063c:: ; 99657 (26:5657)
text "How's your #DEX"
line "coming, pal?"
cont "I just caught a"
diff --git a/text/maps/pokemon_tower_5f.asm b/text/maps/pokemon_tower_5f.asm
index e6592bbe..95ce2f4b 100644
--- a/text/maps/pokemon_tower_5f.asm
+++ b/text/maps/pokemon_tower_5f.asm
@@ -62,7 +62,7 @@ _PokemonTower5AfterBattleText4:: ; 99a5e (26:5a5e)
cont "my training!"
done
-_UnnamedText_60a43:: ; 99a8b (26:5a8b)
+_PokemonTower5Text7:: ; 99a8b (26:5a8b)
text "Entered purified,"
line "protected zone!"
diff --git a/text/maps/pokemon_tower_6f.asm b/text/maps/pokemon_tower_6f.asm
index 052a1514..08eb6b1a 100644
--- a/text/maps/pokemon_tower_6f.asm
+++ b/text/maps/pokemon_tower_6f.asm
@@ -1,10 +1,10 @@
-_UnnamedText_60c1f:: ; 99ac8 (26:5ac8)
+_PokemonTower2Text_60c1f:: ; 99ac8 (26:5ac8)
text "The GHOST was the"
line "restless soul of"
cont "CUBONE's mother!"
done
-_UnnamedText_60c24:: ; 99afc (26:5afc)
+_PokemonTower2Text_60c24:: ; 99afc (26:5afc)
text "The mother's soul"
line "was calmed."
@@ -55,7 +55,7 @@ _PokemonTower6AfterBattleText3:: ; 99beb (26:5beb)
line "here?"
done
-_UnnamedText_60c56:: ; 99c01 (26:5c01)
+_PokemonTower6Text6:: ; 99c01 (26:5c01)
text "Be gone..."
line "Intruders..."
done
diff --git a/text/maps/pokemon_tower_7f.asm b/text/maps/pokemon_tower_7f.asm
index 311a1d54..235fc218 100644
--- a/text/maps/pokemon_tower_7f.asm
+++ b/text/maps/pokemon_tower_7f.asm
@@ -1,4 +1,4 @@
-_UnnamedText_60ec4:: ; 99c1a (26:5c1a)
+_PokemonTower7Text_60ec4:: ; 99c1a (26:5c1a)
text "MR.FUJI: Heh? You"
line "came to save me?"
diff --git a/text/maps/rocket_hideout_b4f.asm b/text/maps/rocket_hideout_b4f.asm
index adbabe22..ecf01ec8 100644
--- a/text/maps/rocket_hideout_b4f.asm
+++ b/text/maps/rocket_hideout_b4f.asm
@@ -1,15 +1,15 @@
-_UnnamedText_4557a:: ; 8223e (20:623e)
+_RocketHideout4Text_4557a:: ; 8223e (20:623e)
text "So! I must say, I"
line "am impressed you"
cont "got here!"
done
-_UnnamedText_4557f:: ; 8226c (20:626c)
+_RocketHideout4Text_4557f:: ; 8226c (20:626c)
text "WHAT!"
line "This cannot be!"
prompt
-_UnnamedText_45584:: ; 82283 (20:6283)
+_RocketHideout4Text_45584:: ; 82283 (20:6283)
text "I see that you"
line "raise #MON"
cont "with utmost care."
@@ -68,7 +68,7 @@ _RocketHideout4EndBattleText4:: ; 82413 (20:6413)
text "No!"
prompt
-_UnnamedText_455ec:: ; 82418 (20:6418)
+_RocketHideout4Text_455ec:: ; 82418 (20:6418)
text "Oh no! I dropped"
line "the LIFT KEY!"
done
diff --git a/text/maps/rocket_hideout_elevator.asm b/text/maps/rocket_hideout_elevator.asm
index 7b96f860..12fbad6d 100644
--- a/text/maps/rocket_hideout_elevator.asm
+++ b/text/maps/rocket_hideout_elevator.asm
@@ -1,4 +1,4 @@
-_UnnamedText_4578b:: ; 82438 (20:6438)
+_RocketElevatorText_4578b:: ; 82438 (20:6438)
text "It appears to"
line "need a key.@@"
diff --git a/text/maps/route_1.asm b/text/maps/route_1.asm
index 9dfc35d0..c7db4d1c 100644
--- a/text/maps/route_1.asm
+++ b/text/maps/route_1.asm
@@ -12,19 +12,19 @@ _Route1ViridianMartSampleText:: ; 8d5bf (23:55bf)
cont "Here you go!"
prompt
-_UnnamedText_1cae8:: ; 8d643 (23:5643)
+_Route1Text_1cae8:: ; 8d643 (23:5643)
text $52, " got"
line "@"
TX_RAM $cf4b
text "!@@"
-_UnnamedText_1caee:: ; 8d652 (23:5652)
+_Route1Text_1caee:: ; 8d652 (23:5652)
text "We also carry"
line "# BALLs for"
cont "catching #MON!"
done
-_UnnamedText_1caf3:: ; 8d67c (23:567c)
+_Route1Text_1caf3:: ; 8d67c (23:567c)
text "You have too much"
line "stuff with you!"
done
diff --git a/text/maps/route_11_gate_upstairs.asm b/text/maps/route_11_gate_upstairs.asm
index 9b329892..70c463ec 100644
--- a/text/maps/route_11_gate_upstairs.asm
+++ b/text/maps/route_11_gate_upstairs.asm
@@ -1,4 +1,4 @@
-_UnnamedText_494a3:: ; 8c689 (23:4689)
+_Route11GateUpstairsText_494a3:: ; 8c689 (23:4689)
text "There are items on"
line "the ground that"
cont "can't be seen."
@@ -28,7 +28,7 @@ _BinocularsNoSnorlaxText::
line "view!"
done
-_UnnamedText_494d5:: ; 8c78b (23:478b)
+_Route11GateUpstairsText_494d5:: ; 8c78b (23:478b)
text "Looked into the"
line "binoculars."
diff --git a/text/maps/route_12.asm b/text/maps/route_12.asm
index ae48ef25..ef71d279 100644
--- a/text/maps/route_12.asm
+++ b/text/maps/route_12.asm
@@ -3,14 +3,14 @@ _Route12Text1:: ; 9009e (24:409e)
line "blocks the way!"
done
-_UnnamedText_596eb:: ; 900bf (24:40bf)
+_Route12Text13:: ; 900bf (24:40bf)
text "SNORLAX woke up!"
para "It attacked in a"
line "grumpy rage!"
done
-_UnnamedText_596f0:: ; 900ef (24:40ef)
+_Route12Text14:: ; 900ef (24:40ef)
text "SNORLAX calmed"
line "down! With a big"
cont "yawn, it returned"
diff --git a/text/maps/route_12_gate_upstairs.asm b/text/maps/route_12_gate_upstairs.asm
index e31e392c..3d22e389 100644
--- a/text/maps/route_12_gate_upstairs.asm
+++ b/text/maps/route_12_gate_upstairs.asm
@@ -27,14 +27,14 @@ _TM39NoRoomText:: ; 8c93c (23:493c)
line "room for this."
done
-_UnnamedText_495b8:: ; 8c95a (23:495a)
+_Route12GateUpstairsText_495b8:: ; 8c95a (23:495a)
text "Looked into the"
line "binoculars."
para "A man fishing!"
done
-_UnnamedText_495c4:: ; 8c986 (23:4986)
+_Route12GateUpstairsText_495c4:: ; 8c986 (23:4986)
text "Looked into the"
line "binoculars."
diff --git a/text/maps/route_12_house.asm b/text/maps/route_12_house.asm
index f15e0041..ed645a01 100644
--- a/text/maps/route_12_house.asm
+++ b/text/maps/route_12_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_564c0:: ; 8c9b3 (23:49b3)
+_Route12HouseText_564c0:: ; 8c9b3 (23:49b3)
text "I'm the FISHING"
line "GURU's brother!"
@@ -9,7 +9,7 @@ _UnnamedText_564c0:: ; 8c9b3 (23:49b3)
line "fish?"
done
-_UnnamedText_564c5:: ; 8ca00 (23:4a00)
+_Route12HouseText_564c5:: ; 8ca00 (23:4a00)
text "Grand! I like"
line "your style!"
@@ -21,7 +21,7 @@ _UnnamedText_564c5:: ; 8ca00 (23:4a00)
TX_RAM $cf4b
text "!@@"
-_UnnamedText_564ca:: ; 8ca4f (23:4a4f)
+_Route12HouseText_564ca:: ; 8ca4f (23:4a4f)
db $0
para "Fishing is a way"
line "of life!"
@@ -32,12 +32,12 @@ _UnnamedText_564ca:: ; 8ca4f (23:4a4f)
cont "one!"
done
-_UnnamedText_564cf:: ; 8caa1 (23:4aa1)
+_Route12HouseText_564cf:: ; 8caa1 (23:4aa1)
text "Oh... That's so"
line "disappointing..."
done
-_UnnamedText_564d4:: ; 8cac2 (23:4ac2)
+_Route12HouseText_564d4:: ; 8cac2 (23:4ac2)
text "Hello there,"
line $52, "!"
@@ -51,7 +51,7 @@ _UnnamedText_564d4:: ; 8cac2 (23:4ac2)
line "wherever you can!"
done
-_UnnamedText_564d9:: ; 8cb38 (23:4b38)
+_Route12HouseText_564d9:: ; 8cb38 (23:4b38)
text "Oh no!"
para "I had a gift for"
diff --git a/text/maps/route_15_gate_upstairs.asm b/text/maps/route_15_gate_upstairs.asm
index df57afda..7207ecdf 100644
--- a/text/maps/route_15_gate_upstairs.asm
+++ b/text/maps/route_15_gate_upstairs.asm
@@ -1,4 +1,4 @@
-_UnnamedText_4968c:: ; 8cbac (23:4bac)
+_Route15GateUpstairsText_4968c:: ; 8cbac (23:4bac)
text "EXP.ALL gives"
line "EXP points to all"
cont "the #MON with"
@@ -15,7 +15,7 @@ _UnnamedText_4968c:: ; 8cbac (23:4bac)
cont "store it via PC."
done
-_UnnamedText_49698:: ; 8cc65 (23:4c65)
+_Route15GateUpstairsText_49698:: ; 8cc65 (23:4c65)
text "Looked into the"
line "binoculars."
diff --git a/text/maps/route_16.asm b/text/maps/route_16.asm
index b46275f0..d98aaa12 100644
--- a/text/maps/route_16.asm
+++ b/text/maps/route_16.asm
@@ -95,14 +95,14 @@ _Route16Text7:: ; 91287 (24:5287)
line "blocks the way!"
done
-_UnnamedText_59ab3:: ; 912a8 (24:52a8)
+_Route16Text10:: ; 912a8 (24:52a8)
text "SNORLAX woke up!"
para "It attacked in a"
line "grumpy rage!"
done
-_UnnamedText_59ab8:: ; 912d8 (24:52d8)
+_Route16Text11:: ; 912d8 (24:52d8)
text "With a big yawn,"
line "SNORLAX returned"
cont "to the mountains!"
diff --git a/text/maps/route_16_gate.asm b/text/maps/route_16_gate.asm
index 22ac6788..2d3d5c62 100644
--- a/text/maps/route_16_gate.asm
+++ b/text/maps/route_16_gate.asm
@@ -1,17 +1,17 @@
-_UnnamedText_49777:: ; 8cca0 (23:4ca0)
+_Route16GateText_49777:: ; 8cca0 (23:4ca0)
text "No pedestrians"
line "are allowed on"
cont "CYCLING ROAD!"
done
-_UnnamedText_4977c:: ; 8cccd (23:4ccd)
+_Route16GateText_4977c:: ; 8cccd (23:4ccd)
text "CYCLING ROAD is a"
line "downhill course"
cont "by the sea. It's"
cont "a great ride."
done
-_UnnamedText_49781:: ; 8cd0e (23:4d0e)
+_Route16GateText_49781:: ; 8cd0e (23:4d0e)
text "Excuse me! Wait"
line "up please!"
done
diff --git a/text/maps/route_16_gate_upstairs.asm b/text/maps/route_16_gate_upstairs.asm
index d4f1b32a..26767654 100644
--- a/text/maps/route_16_gate_upstairs.asm
+++ b/text/maps/route_16_gate_upstairs.asm
@@ -1,15 +1,15 @@
-_UnnamedText_49820:: ; 8cd49 (23:4d49)
+_Route16GateUpstairsText_49820:: ; 8cd49 (23:4d49)
text "I'm going for a"
line "ride with my girl"
cont "friend!"
done
-_UnnamedText_4982f:: ; 8cd73 (23:4d73)
+_Route16GateUpstairsText_4982f:: ; 8cd73 (23:4d73)
text "We're going"
line "riding together!"
done
-_UnnamedText_4983b:: ; 8cd90 (23:4d90)
+_Route16GateUpstairsText_4983b:: ; 8cd90 (23:4d90)
text "Looked into the"
line "binoculars."
@@ -17,7 +17,7 @@ _UnnamedText_4983b:: ; 8cd90 (23:4d90)
line "STORE!"
done
-_UnnamedText_49847:: ; 8cdc6 (23:4dc6)
+_Route16GateUpstairsText_49847:: ; 8cdc6 (23:4dc6)
text "Looked into the"
line "binoculars."
diff --git a/text/maps/route_16_house.asm b/text/maps/route_16_house.asm
index 05b24865..c3099049 100644
--- a/text/maps/route_16_house.asm
+++ b/text/maps/route_16_house.asm
@@ -26,7 +26,7 @@ _HM02NoRoomText:: ; 8cebe (23:4ebe)
line "room for this."
done
-_UnnamedText_1e652:: ; 8cee0 (23:4ee0)
+_Route16HouseText_1e652:: ; 8cee0 (23:4ee0)
text "FEAROW: Kyueen!"
done
diff --git a/text/maps/route_18_gate.asm b/text/maps/route_18_gate.asm
index 9da68ac9..0298465d 100644
--- a/text/maps/route_18_gate.asm
+++ b/text/maps/route_18_gate.asm
@@ -1,15 +1,15 @@
-_UnnamedText_49928:: ; 8cef1 (23:4ef1)
+_Route18GateText_49928:: ; 8cef1 (23:4ef1)
text "You need a BICYCLE"
line "for CYCLING ROAD!"
done
-_UnnamedText_4992d:: ; 8cf17 (23:4f17)
+_Route18GateText_4992d:: ; 8cf17 (23:4f17)
text "CYCLING ROAD is"
line "all uphill from"
cont "here."
done
-_UnnamedText_49932:: ; 8cf3e (23:4f3e)
+_Route18GateText_49932:: ; 8cf3e (23:4f3e)
text "Excuse me!"
done
diff --git a/text/maps/route_18_gate_upstairs.asm b/text/maps/route_18_gate_upstairs.asm
index 3061ec56..59b92e6a 100644
--- a/text/maps/route_18_gate_upstairs.asm
+++ b/text/maps/route_18_gate_upstairs.asm
@@ -1,4 +1,4 @@
-_UnnamedText_49993:: ; 8cf4a (23:4f4a)
+_Route18GateUpstairsText_49993:: ; 8cf4a (23:4f4a)
text "Looked into the"
line "binoculars."
@@ -6,7 +6,7 @@ _UnnamedText_49993:: ; 8cf4a (23:4f4a)
line "the west!"
done
-_UnnamedText_4999f:: ; 8cf83 (23:4f83)
+_Route18GateUpstairsText_4999f:: ; 8cf83 (23:4f83)
text "Looked into the"
line "binoculars."
diff --git a/text/maps/route_22.asm b/text/maps/route_22.asm
index b68e32f0..5ce0b879 100644
--- a/text/maps/route_22.asm
+++ b/text/maps/route_22.asm
@@ -37,7 +37,7 @@ _Route22RivalDefeatedText1:: ; 923f4 (24:63f4)
cont "out!"
prompt
-_UnnamedText_511bc:: ; 92410 (24:6410)
+_Route22Text_511bc:: ; 92410 (24:6410)
text $53, ": What?"
line "Why do I have 2"
cont "#MON?"
@@ -87,7 +87,7 @@ _Route22RivalDefeatedText2:: ; 92583 (24:6583)
line "careless!"
prompt
-_UnnamedText_511d0:: ; 925a0 (24:65a0)
+_Route22Text_511d0:: ; 925a0 (24:65a0)
text $53, ": Hahaha!"
line $52, "! That's"
cont "your best? You're"
diff --git a/text/maps/route_23.asm b/text/maps/route_23.asm
index 7b6219a8..30b8e003 100644
--- a/text/maps/route_23.asm
+++ b/text/maps/route_23.asm
@@ -26,7 +26,7 @@ _VictoryRoadGuardText2:: ; 92696 (24:6696)
TX_RAM $cd6d
text "!@@"
-_UnnamedText_513a3:: ; 926dd (24:66dd)
+_VictoryRoadGuardText_513a3:: ; 926dd (24:66dd)
db $0
para "OK then! Please,"
line "go right ahead!"
diff --git a/text/maps/route_24_1.asm b/text/maps/route_24_1.asm
index 4049e5f0..ec32744d 100644
--- a/text/maps/route_24_1.asm
+++ b/text/maps/route_24_1.asm
@@ -1,26 +1,26 @@
-_UnnamedText_51510:: ; 92721 (24:6721)
+_Route24Text_51510:: ; 92721 (24:6721)
text "Congratulations!"
line "You beat our 5"
cont "contest trainers!@@"
-_UnnamedText_51515:: ; 92755 (24:6755)
+_Route24Text_51515:: ; 92755 (24:6755)
db $0
para "You just earned a"
line "fabulous prize!"
prompt
-_UnnamedText_5151a:: ; 92779 (24:6779)
+_Route24Text_5151a:: ; 92779 (24:6779)
text $52, " received"
line "a @"
TX_RAM $cf4b
text "!@@"
-_UnnamedText_51521:: ; 9278f (24:678f)
+_Route24Text_51521:: ; 9278f (24:678f)
text "You don't have"
line "any room!"
done
-_UnnamedText_51526:: ; 927a8 (24:67a8)
+_Route24Text_51526:: ; 927a8 (24:67a8)
text "By the way, would"
line "you like to join"
cont "TEAM ROCKET?"
@@ -46,12 +46,12 @@ _UnnamedText_51526:: ; 927a8 (24:67a8)
cont "refuse!"
done
-_UnnamedText_5152b:: ; 9288a (24:688a)
+_Route24Text_5152b:: ; 9288a (24:688a)
text "Arrgh!"
line "You are good!"
prompt
-_UnnamedText_51530:: ; 928a0 (24:68a0)
+_Route24Text_51530:: ; 928a0 (24:68a0)
text "With your ability,"
line "you could become"
cont "a top leader in"
diff --git a/text/maps/route_2_gate.asm b/text/maps/route_2_gate.asm
index 6c2ba168..e8337a1f 100644
--- a/text/maps/route_2_gate.asm
+++ b/text/maps/route_2_gate.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5d616:: ; 8a7fc (22:67fc)
+_Route2GateText_5d616:: ; 8a7fc (22:67fc)
text "The HM FLASH"
line "lights even the"
cont "darkest dungeons."
diff --git a/text/maps/safari_zone_entrance.asm b/text/maps/safari_zone_entrance.asm
index 76c61b20..119d2301 100644
--- a/text/maps/safari_zone_entrance.asm
+++ b/text/maps/safari_zone_entrance.asm
@@ -3,7 +3,7 @@ _SafariZoneEntranceText1:: ; 9e6c7 (27:66c7)
line "SAFARI ZONE!"
done
-UnnamedText_9e6e4:: ; 9e6e4 (27:66e4)
+SafariZoneEntranceText_9e6e4:: ; 9e6e4 (27:66e4)
text "For just ¥500,"
line "you can catch all"
cont "the #MON you"
@@ -12,7 +12,7 @@ UnnamedText_9e6e4:: ; 9e6e4 (27:66e4)
para "Would you like to"
line "join the hunt?@@"
-UnnamedText_9e747:: ; 9e747 (27:6747)
+SafariZoneEntranceText_9e747:: ; 9e747 (27:6747)
text "That'll be ¥500"
line "please!"
@@ -23,7 +23,7 @@ UnnamedText_9e747:: ; 9e747 (27:6747)
para $52, " received"
line "30 SAFARI BALLs!@@"
-_UnnamedText_75360:: ; 9e79f (27:679f)
+_SafariZoneEntranceText_75360:: ; 9e79f (27:679f)
db $0
para "We'll call you on"
line "the PA when you"
@@ -31,41 +31,41 @@ _UnnamedText_75360:: ; 9e79f (27:679f)
cont "or SAFARI BALLs!"
done
-_UnnamedText_75365:: ; 9e7e3 (27:67e3)
+_SafariZoneEntranceText_75365:: ; 9e7e3 (27:67e3)
text "OK! Please come"
line "again!"
done
-_UnnamedText_7536a:: ; 9e7fb (27:67fb)
+_SafariZoneEntranceText_7536a:: ; 9e7fb (27:67fb)
text "Oops! Not enough"
line "money!"
done
-UnnamedText_9e814:: ; 9e814 (27:6814)
+SafariZoneEntranceText_9e814:: ; 9e814 (27:6814)
text "Leaving early?@@"
-_UnnamedText_753bb:: ; 9e825 (27:6825)
+_SafariZoneEntranceText_753bb:: ; 9e825 (27:6825)
text "Please return any"
line "SAFARI BALLs you"
cont "have left."
done
-_UnnamedText_753c0:: ; 9e854 (27:6854)
+_SafariZoneEntranceText_753c0:: ; 9e854 (27:6854)
text "Good Luck!"
done
-_UnnamedText_753c5:: ; 9e860 (27:6860)
+_SafariZoneEntranceText_753c5:: ; 9e860 (27:6860)
text "Did you get a"
line "good haul?"
cont "Come again!"
done
-_UnnamedText_753e6:: ; 9e886 (27:6886)
+_SafariZoneEntranceText_753e6:: ; 9e886 (27:6886)
text "Hi! Is it your"
line "first time here?"
done
-_UnnamedText_753eb:: ; 9e8a7 (27:68a7)
+_SafariZoneEntranceText_753eb:: ; 9e8a7 (27:68a7)
text "SAFARI ZONE has 4"
line "zones in it."
@@ -87,7 +87,7 @@ _UnnamedText_753eb:: ; 9e8a7 (27:68a7)
cont "new #MON!"
done
-_UnnamedText_753f0:: ; 9e993 (27:6993)
+_SafariZoneEntranceText_753f0:: ; 9e993 (27:6993)
text "Sorry, you're a"
line "regular here!"
done
diff --git a/text/maps/safari_zone_secret_house.asm b/text/maps/safari_zone_secret_house.asm
index 0d9511e2..b7b391be 100644
--- a/text/maps/safari_zone_secret_house.asm
+++ b/text/maps/safari_zone_secret_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_4a350:: ; 858a4 (21:58a4)
+_SecretHouseText_4a350:: ; 858a4 (21:58a4)
text "Ah! Finally!"
para "You're the first"
diff --git a/text/maps/saffron_gates.asm b/text/maps/saffron_gates.asm
index f084334c..0212a7dd 100644
--- a/text/maps/saffron_gates.asm
+++ b/text/maps/saffron_gates.asm
@@ -1,4 +1,4 @@
-_UnnamedText_1dfe7:: ; 8aa5c (22:6a5c)
+_SaffronGateText_1dfe7:: ; 8aa5c (22:6a5c)
text "I'm on guard duty."
line "Gee, I'm thirsty,"
cont "though!"
@@ -7,7 +7,7 @@ _UnnamedText_1dfe7:: ; 8aa5c (22:6a5c)
line "the road's closed."
done
-_UnnamedText_8aaa9:: ; 8aaa9 (22:6aa9)
+_SaffronGateText_8aaa9:: ; 8aaa9 (22:6aa9)
text "Whoa, boy!"
line "I'm parched!"
cont "..."
@@ -15,7 +15,7 @@ _UnnamedText_8aaa9:: ; 8aaa9 (22:6aa9)
cont "this drink?"
cont "Gee, thanks!@@"
-_UnnamedText_1dff1:: ; 8aaef (22:6aef)
+_SaffronGateText_1dff1:: ; 8aaef (22:6aef)
db $0
para "..."
line "Glug glug..."
@@ -30,7 +30,7 @@ _UnnamedText_1dff1:: ; 8aaef (22:6aef)
cont "the other guards!"
done
-_UnnamedText_1dff6:: ; 8ab74 (22:6b74)
+_SaffronGateText_1dff6:: ; 8ab74 (22:6b74)
text "Hi, thanks for"
line "the cool drinks!"
done
diff --git a/text/maps/saffron_gym.asm b/text/maps/saffron_gym.asm
index c2426eeb..d85e1b1a 100644
--- a/text/maps/saffron_gym.asm
+++ b/text/maps/saffron_gym.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5d162:: ; a1bb4 (28:5bb4)
+_SaffronGymText_5d162:: ; a1bb4 (28:5bb4)
text "I had a vision of"
line "your arrival!"
@@ -16,7 +16,7 @@ _UnnamedText_5d162:: ; a1bb4 (28:5bb4)
cont "you my powers!"
done
-_UnnamedText_5d167:: ; a1c73 (28:5c73)
+_SaffronGymText_5d167:: ; a1c73 (28:5c73)
text "I'm"
line "shocked!"
cont "But, a loss is a"
@@ -29,14 +29,14 @@ _UnnamedText_5d167:: ; a1c73 (28:5c73)
para "You earned the"
line "MARSHBADGE!@@"
-_UnnamedText_5d16e:: ; a1cdc (28:5cdc)
+_SaffronGymText_5d16e:: ; a1cdc (28:5cdc)
text "Everyone has"
line "psychic power!"
cont "People just don't"
cont "realize it!"
done
-_UnnamedText_5d173:: ; a1d16 (28:5d16)
+_SaffronGymText_5d173:: ; a1d16 (28:5d16)
text "The MARSHBADGE"
line "makes #MON up"
cont "to L70 obey you!"
@@ -71,7 +71,7 @@ _TM46NoRoomText:: ; a1e25 (28:5e25)
line "of other items!"
done
-_UnnamedText_5d1e6:: ; a1e48 (28:5e48)
+_SaffronGymText_5d1e6:: ; a1e48 (28:5e48)
text "Yo! Champ in"
line "making!"
@@ -88,7 +88,7 @@ _UnnamedText_5d1e6:: ; a1e48 (28:5e48)
cont "even aim a punch!"
done
-_UnnamedText_5d1eb:: ; a1ef0 (28:5ef0)
+_SaffronGymText_5d1eb:: ; a1ef0 (28:5ef0)
text "Psychic power,"
line "huh?"
diff --git a/text/maps/silph_co_10f.asm b/text/maps/silph_co_10f.asm
index 6c9727de..a5a3877e 100644
--- a/text/maps/silph_co_10f.asm
+++ b/text/maps/silph_co_10f.asm
@@ -1,9 +1,9 @@
-_UnnamedText_5a1d3:: ; 84d8d (21:4d8d)
+_SilphCo10Text_5a1d3:: ; 84d8d (21:4d8d)
text "Waaaaa!"
cont "I'm scared!"
done
-_UnnamedText_5a1d8:: ; 84da1 (21:4da1)
+_SilphCo10Text_5a1d8:: ; 84da1 (21:4da1)
text "Please keep quiet"
line "about my crying!"
done
diff --git a/text/maps/silph_co_11f.asm b/text/maps/silph_co_11f.asm
index 0158a7ca..fdfcd313 100644
--- a/text/maps/silph_co_11f.asm
+++ b/text/maps/silph_co_11f.asm
@@ -25,7 +25,7 @@ _ReceivedSilphCoMasterBallText:: ; 84f63 (21:4f63)
TX_RAM $cf4b
text "!@@"
-_UnnamedText_6231c:: ; 84f74 (21:4f74)
+_SilphCo10Text_6231c:: ; 84f74 (21:4f74)
text "PRESIDENT: You"
line "can't buy that"
cont "anywhere!"
@@ -74,12 +74,12 @@ _SilphCo11Text3:: ; 85075 (21:5075)
line "world of pain!"
done
-_UnnamedText_62330:: ; 85119 (21:5119)
+_SilphCo10Text_62330:: ; 85119 (21:5119)
text "Arrgh!!"
line "I lost again!?"
prompt
-_UnnamedText_62335:: ; 85131 (21:5131)
+_SilphCo10Text_62335:: ; 85131 (21:5131)
text "Blast it all!"
line "You ruined our"
cont "plans for SILPH!"
@@ -128,7 +128,7 @@ _SilphCo11AfterBattleText2:: ; 8526a (21:526a)
cont "#MON tough!"
done
-_UnnamedText_6237b:: ; 8529a (21:529a)
+_SilphCo10Text_6237b:: ; 8529a (21:529a)
text "The monitor has"
line "#MON on it!"
done
diff --git a/text/maps/silph_co_2f.asm b/text/maps/silph_co_2f.asm
index a7535af6..b8924ef1 100644
--- a/text/maps/silph_co_2f.asm
+++ b/text/maps/silph_co_2f.asm
@@ -1,4 +1,4 @@
-_UnnamedText_59ded:: ; 82454 (20:6454)
+_SilphCo2Text_59ded:: ; 82454 (20:6454)
text "Eeek!"
line "No! Stop! Help!"
diff --git a/text/maps/silph_co_3f.asm b/text/maps/silph_co_3f.asm
index 34116b5a..25d68018 100644
--- a/text/maps/silph_co_3f.asm
+++ b/text/maps/silph_co_3f.asm
@@ -1,9 +1,9 @@
-_UnnamedText_59ff9:: ; 826b9 (20:66b9)
+_SilphCo3Text_59ff9:: ; 826b9 (20:66b9)
text "I work for SILPH."
line "What should I do?"
done
-_UnnamedText_59ffe:: ; 826de (20:66de)
+_SilphCo3Text_59ffe:: ; 826de (20:66de)
text $52, "! You and"
line "your #MON"
cont "saved us!"
diff --git a/text/maps/silph_co_4f.asm b/text/maps/silph_co_4f.asm
index 452a05a8..309da28c 100644
--- a/text/maps/silph_co_4f.asm
+++ b/text/maps/silph_co_4f.asm
@@ -1,9 +1,9 @@
-_UnnamedText_19de0:: ; 827e4 (20:67e4)
+_SilphCo4Text_19de0:: ; 827e4 (20:67e4)
text "Sssh! Can't you"
line "see I'm hiding?"
done
-_UnnamedText_19de5:: ; 82803 (20:6803)
+_SilphCo4Text_19de5:: ; 82803 (20:6803)
text "Huh? TEAM ROCKET"
line "is gone?"
done
diff --git a/text/maps/silph_co_5f_1.asm b/text/maps/silph_co_5f_1.asm
index f37a5cd7..8a406e67 100644
--- a/text/maps/silph_co_5f_1.asm
+++ b/text/maps/silph_co_5f_1.asm
@@ -1,11 +1,11 @@
-_UnnamedText_1a010:: ; 82936 (20:6936)
+_SilphCo5Text_1a010:: ; 82936 (20:6936)
text "TEAM ROCKET is"
line "in an uproar over"
cont "some intruder."
cont "That's you right?"
done
-_UnnamedText_1a015:: ; 82978 (20:6978)
+_SilphCo5Text_1a015:: ; 82978 (20:6978)
text "TEAM ROCKET took"
line "off! You're our"
cont "hero! Thank you!"
diff --git a/text/maps/silph_co_6f.asm b/text/maps/silph_co_6f.asm
index 5f74da46..b3bf71b6 100644
--- a/text/maps/silph_co_6f.asm
+++ b/text/maps/silph_co_6f.asm
@@ -1,55 +1,55 @@
-_UnnamedText_1a24a:: ; 84176 (21:4176)
+_SilphCo6Text_1a24a:: ; 84176 (21:4176)
text "The ROCKETs came"
line "and took over the"
cont "building!"
done
-_UnnamedText_1a24f:: ; 841a4 (21:41a4)
+_SilphCo6Text_1a24f:: ; 841a4 (21:41a4)
text "Well, better get"
line "back to work!"
done
-_UnnamedText_1a261:: ; 841c4 (21:41c4)
+_SilphCo6Text_1a261:: ; 841c4 (21:41c4)
text "Oh dear, oh dear."
line "Help me please!"
done
-_UnnamedText_1a266:: ; 841e7 (21:41e7)
+_SilphCo6Text_1a266:: ; 841e7 (21:41e7)
text "We got engaged!"
line "Heheh!"
done
-_UnnamedText_1a278:: ; 841ff (21:41ff)
+_SilphCo6Text_1a278:: ; 841ff (21:41ff)
text "Look at him! He's"
line "such a coward!"
done
-_UnnamedText_1a27d:: ; 84220 (21:4220)
+_SilphCo6Text_1a27d:: ; 84220 (21:4220)
text "I feel so sorry"
line "for him, I have"
cont "to marry him!"
done
-_UnnamedText_1a28f:: ; 8424f (21:424f)
+_SilphCo6Text_1a28f:: ; 8424f (21:424f)
text "TEAM ROCKET is"
line "trying to conquer"
cont "the world with"
cont "#MON!"
done
-_UnnamedText_1a294:: ; 84286 (21:4286)
+_SilphCo6Text_1a294:: ; 84286 (21:4286)
text "TEAM ROCKET ran"
line "because of you!"
done
-_UnnamedText_1a2a6:: ; 842a7 (21:42a7)
+_SilphCo6Text_1a2a6:: ; 842a7 (21:42a7)
text "They must have"
line "targeted SILPH"
cont "for our #MON"
cont "products."
done
-_UnnamedText_1a2ab:: ; 842dd (21:42dd)
+_SilphCo6Text_1a2ab:: ; 842dd (21:42dd)
text "Come work for"
line "SILPH when you"
cont "get older!"
diff --git a/text/maps/silph_co_7f.asm b/text/maps/silph_co_7f.asm
index 4fca7b90..b3c92aaf 100644
--- a/text/maps/silph_co_7f.asm
+++ b/text/maps/silph_co_7f.asm
@@ -39,7 +39,7 @@ _LaprasGuySavedText::
line "Thank you!"
done
-_UnnamedText_51e00::
+_SilphCo7Text_51e00::
text "TEAM ROCKET was"
line "after the MASTER"
cont "BALL which will"
@@ -53,27 +53,27 @@ _CanceledMasterBallText::
cont "of TEAM ROCKET."
done
-_UnnamedText_51e23::
+_SilphCo7Text_51e23::
text "It would be bad"
line "if TEAM ROCKET"
cont "took over SILPH"
cont "or our #MON!"
done
-_UnnamedText_51e28::
+_SilphCo7Text_51e28::
text "Wow! You chased"
line "off TEAM ROCKET"
cont "all by yourself?"
done
-_UnnamedText_51e46::
+_SilphCo7Text_51e46::
text "You! It's really"
line "dangerous here!"
cont "You came to save"
cont "me? You can't!"
done
-_UnnamedText_51e4b::
+_SilphCo7Text_51e4b::
text "Safe at last!"
line "Oh thank you!"
done
@@ -144,3 +144,67 @@ _SilphCo7AfterBattleText4:: ; 84861 (21:4861)
cont "gets ticked off!"
done
+_SilphCo7Text_51ebe:: ; 8488d (21:488d)
+ text $53, ": What"
+ line "kept you ", $52, "?"
+ done
+
+_SilphCo7Text_51ec3:: ; 848a2 (21:48a2)
+ text $53, ": Hahaha!"
+ line "I thought you'd"
+ cont "turn up if I"
+ cont "waited here!"
+
+ para "I guess TEAM"
+ line "ROCKET slowed you"
+ cont "down! Not that I"
+ cont "care!"
+
+ para "I saw you in"
+ line "SAFFRON, so I"
+ cont "decided to see if"
+ cont "you got better!"
+ done
+
+_SilphCo7Text_51ec8:: ; 8494a (21:494a)
+ text "Oh ho!"
+ line "So, you are ready"
+ cont "for BOSS ROCKET!"
+ prompt
+
+_SilphCo7Text_51ecd:: ; 84975 (21:4975)
+ text $53, ": How can"
+ line "I put this?"
+
+ para "You're not good"
+ line "enough to play"
+ cont "with us big boys!"
+ prompt
+
+_SilphCo7Text_51ed2:: ; 849bd (21:49bd)
+ text "Well, ", $52, "!"
+
+ para "I'm moving on up"
+ line "and ahead!"
+
+ para "By checking my"
+ line "#DEX, I'm"
+ cont "starting to see"
+ cont "what's strong and"
+ cont "how they evolve!"
+
+ para "I'm going to the"
+ line "#MON LEAGUE"
+ cont "to boot out the"
+ cont "ELITE FOUR!"
+
+ para "I'll become the"
+ line "world's most"
+ cont "powerful trainer!"
+
+ para $52, ", well"
+ line "good luck to you!"
+ cont "Don't sweat it!"
+ cont "Smell ya!"
+ done
+
diff --git a/text/maps/silph_co_8f.asm b/text/maps/silph_co_8f.asm
index 657e45cd..900e134f 100644
--- a/text/maps/silph_co_8f.asm
+++ b/text/maps/silph_co_8f.asm
@@ -1,73 +1,9 @@
-_UnnamedText_51ebe:: ; 8488d (21:488d)
- text $53, ": What"
- line "kept you ", $52, "?"
- done
-
-_UnnamedText_51ec3:: ; 848a2 (21:48a2)
- text $53, ": Hahaha!"
- line "I thought you'd"
- cont "turn up if I"
- cont "waited here!"
-
- para "I guess TEAM"
- line "ROCKET slowed you"
- cont "down! Not that I"
- cont "care!"
-
- para "I saw you in"
- line "SAFFRON, so I"
- cont "decided to see if"
- cont "you got better!"
- done
-
-_UnnamedText_51ec8:: ; 8494a (21:494a)
- text "Oh ho!"
- line "So, you are ready"
- cont "for BOSS ROCKET!"
- prompt
-
-_UnnamedText_51ecd:: ; 84975 (21:4975)
- text $53, ": How can"
- line "I put this?"
-
- para "You're not good"
- line "enough to play"
- cont "with us big boys!"
- prompt
-
-_UnnamedText_51ed2:: ; 849bd (21:49bd)
- text "Well, ", $52, "!"
-
- para "I'm moving on up"
- line "and ahead!"
-
- para "By checking my"
- line "#DEX, I'm"
- cont "starting to see"
- cont "what's strong and"
- cont "how they evolve!"
-
- para "I'm going to the"
- line "#MON LEAGUE"
- cont "to boot out the"
- cont "ELITE FOUR!"
-
- para "I'll become the"
- line "world's most"
- cont "powerful trainer!"
-
- para $52, ", well"
- line "good luck to you!"
- cont "Don't sweat it!"
- cont "Smell ya!"
- done
-
-_UnnamedText_565be:: ; 84ac4 (21:4ac4)
+_SilphCo8Text_565be:: ; 84ac4 (21:4ac4)
text "I wonder if SILPH"
line "is finished..."
done
-_UnnamedText_565c3:: ; 84ae6 (21:4ae6)
+_SilphCo8Text_565c3:: ; 84ae6 (21:4ae6)
text "Thanks for saving"
line "us!"
done
diff --git a/text/maps/silph_co_9f.asm b/text/maps/silph_co_9f.asm
index e59c911b..6854b081 100644
--- a/text/maps/silph_co_9f.asm
+++ b/text/maps/silph_co_9f.asm
@@ -1,14 +1,14 @@
-_UnnamedText_5d8e5:: ; 84c0b (21:4c0b)
+_SilphCo9Text_5d8e5:: ; 84c0b (21:4c0b)
text "You look tired!"
line "You should take a"
cont "quick nap!"
prompt
-_UnnamedText_5d8ea:: ; 84c39 (21:4c39)
+_SilphCo9Text_5d8ea:: ; 84c39 (21:4c39)
text "Don't give up!"
done
-_UnnamedText_5d8ef:: ; 84c48 (21:4c48)
+_SilphCo9Text_5d8ef:: ; 84c48 (21:4c48)
text "Thank you so"
line "much!"
done
diff --git a/text/maps/ss_anne_5.asm b/text/maps/ss_anne_5.asm
index 7b95f50d..2fdc5dd8 100644
--- a/text/maps/ss_anne_5.asm
+++ b/text/maps/ss_anne_5.asm
@@ -16,35 +16,35 @@ _SSAnne5Text3:: ; 80fda (20:4fda)
line "get some air."
done
-_SSAnneBattleText1:: ; 8100b (20:500b)
+_SSAnne5BattleText1:: ; 8100b (20:500b)
text "Hey matey!"
para "Let's do a little"
line "jig!"
done
-_SSAnneEndBattleText1:: ; 8102d (20:502d)
+_SSAnne5EndBattleText1:: ; 8102d (20:502d)
text "You're"
line "impressive!"
prompt
-_SSAnneAfterBattleText1:: ; 81040 (20:5040)
+_SSAnne5AfterBattleText1:: ; 81040 (20:5040)
text "How many kinds of"
line "#MON do you"
cont "think there are?"
done
-_SSAnneBattleText2:: ; 81070 (20:5070)
+_SSAnne5BattleText2:: ; 81070 (20:5070)
text "Ahoy there!"
line "Are you seasick?"
done
-_SSAnneEndBattleText2:: ; 8108e (20:508e)
+_SSAnne5EndBattleText2:: ; 8108e (20:508e)
text "I was"
line "just careless!"
prompt
-_SSAnneAfterBattleText2:: ; 810a4 (20:50a4)
+_SSAnne5AfterBattleText2:: ; 810a4 (20:50a4)
text "My Pa said there"
line "are 100 kinds of"
cont "#MON. I think"
diff --git a/text/maps/ss_anne_6.asm b/text/maps/ss_anne_6.asm
index f93e0378..5909c8b9 100644
--- a/text/maps/ss_anne_6.asm
+++ b/text/maps/ss_anne_6.asm
@@ -39,14 +39,14 @@ _SSAnne6Text6:: ; 811c9 (20:51c9)
cont "Snivel..."
done
-_UnnamedText_61807:: ; 81203 (20:5203)
+_SSAnne6Text_61807:: ; 81203 (20:5203)
text "Er-hem! Indeed I"
line "am le CHEF!"
para "Le main course is"
prompt
-_UnnamedText_6180c:: ; 81233 (20:5233)
+_SSAnne6Text_6180c:: ; 81233 (20:5233)
text "Salmon du Salad!"
para "Les guests may"
@@ -54,14 +54,14 @@ _UnnamedText_6180c:: ; 81233 (20:5233)
cont "again, however!"
done
-_UnnamedText_61811:: ; 81273 (20:5273)
+_SSAnne6Text_61811:: ; 81273 (20:5273)
text "Eels au Barbecue!"
para "Les guests will"
line "mutiny, I fear."
done
-_UnnamedText_61816:: ; 812a6 (20:52a6)
+_SSAnne6Text_61816:: ; 812a6 (20:52a6)
text "Prime Beef Steak!"
para "But, have I enough"
diff --git a/text/maps/ss_anne_7.asm b/text/maps/ss_anne_7.asm
index 39b1ad70..9e87cdf5 100644
--- a/text/maps/ss_anne_7.asm
+++ b/text/maps/ss_anne_7.asm
@@ -36,7 +36,7 @@ _ReceivedHM01Text:: ; 8140d (20:540d)
TX_RAM $cf4b
text "!@@"
-_UnnamedText_61932:: ; 8141c (20:541c)
+_SSAnne7Text_61932:: ; 8141c (20:541c)
text "CAPTAIN: Whew!"
para "Now that I'm not"
diff --git a/text/maps/ss_anne_8.asm b/text/maps/ss_anne_8.asm
index 30d1614d..5087c34f 100644
--- a/text/maps/ss_anne_8.asm
+++ b/text/maps/ss_anne_8.asm
@@ -30,7 +30,7 @@ _SSAnne8EndBattleText2:: ; 81582 (20:5582)
line "You rude child!"
prompt
-_UnnamedText_61a24:: ; 8159a (20:559a)
+_SSAnne8Text_61a24:: ; 8159a (20:559a)
text "I wish to be left"
line "alone! Get out!"
done
diff --git a/text/maps/ss_anne_9.asm b/text/maps/ss_anne_9.asm
index 79bc8cbf..e133fc2c 100644
--- a/text/maps/ss_anne_9.asm
+++ b/text/maps/ss_anne_9.asm
@@ -1,4 +1,4 @@
-_UnnamedText_61bf2:: ; 81799 (20:5799)
+_SSAnne9Text_61bf2:: ; 81799 (20:5799)
text "In all my travels"
line "I've never seen"
cont "any #MON sleep"
@@ -8,19 +8,19 @@ _UnnamedText_61bf2:: ; 81799 (20:5799)
line "like this!"
prompt
-_UnnamedText_61c01:: ; 817f5 (20:57f5)
+_SSAnne9Text_61c01:: ; 817f5 (20:57f5)
text "Ah yes, I have"
line "seen some #MON"
cont "ferry people"
cont "across the water!"
done
-_UnnamedText_61c10:: ; 81833 (20:5833)
+_SSAnne9Text_61c10:: ; 81833 (20:5833)
text "#MON can CUT"
line "down small bushes."
done
-_UnnamedText_61c1f:: ; 81854 (20:5854)
+_SSAnne9Text_61c1f:: ; 81854 (20:5854)
text "Have you gone to"
line "the SAFARI ZONE"
cont "in FUCHSIA CITY?"
@@ -29,19 +29,19 @@ _UnnamedText_61c1f:: ; 81854 (20:5854)
line "kinds of #MON!!"
done
-_UnnamedText_61c2e:: ; 818a8 (20:58a8)
+_SSAnne9Text_61c2e:: ; 818a8 (20:58a8)
text "Me and my Daddy"
line "think the SAFARI"
cont "ZONE is awesome!"
done
-_UnnamedText_61c3d:: ; 818db (20:58db)
+_SSAnne9Text_61c3d:: ; 818db (20:58db)
text "The CAPTAIN looked"
line "really sick and"
cont "pale!"
done
-_UnnamedText_61c4c:: ; 81905 (20:5905)
+_SSAnne9Text_61c4c:: ; 81905 (20:5905)
text "I hear many people"
line "get seasick!"
done
diff --git a/text/maps/vermilion_city.asm b/text/maps/vermilion_city.asm
index 48cfa399..9c27bf64 100644
--- a/text/maps/vermilion_city.asm
+++ b/text/maps/vermilion_city.asm
@@ -7,13 +7,13 @@ _VermilionCityText1:: ; a5668 (29:5668)
cont "toxic sludge!"
done
-_UnnamedText_198a7:: ; a56b5 (29:56b5)
+_VermilionCityText_198a7:: ; a56b5 (29:56b5)
text "Did you see S.S."
line "ANNE moored in"
cont "the harbor?"
done
-_UnnamedText_198ac:: ; a56e2 (29:56e2)
+_VermilionCityText_198ac:: ; a56e2 (29:56e2)
text "So, S.S.ANNE has"
line "departed!"
diff --git a/text/maps/vermilion_fishing_house.asm b/text/maps/vermilion_fishing_house.asm
index 76b5c209..5ed59033 100644
--- a/text/maps/vermilion_fishing_house.asm
+++ b/text/maps/vermilion_fishing_house.asm
@@ -1,4 +1,4 @@
-_UnnamedText_560b1:: ; 9c510 (27:4510)
+_VermilionHouse2Text_560b1:: ; 9c510 (27:4510)
text "I'm the FISHING"
line "GURU!"
@@ -9,7 +9,7 @@ _UnnamedText_560b1:: ; 9c510 (27:4510)
line "fish?"
done
-_UnnamedText_560b6:: ; 9c554 (27:4554)
+_VermilionHouse2Text_560b6:: ; 9c554 (27:4554)
text "Grand! I like"
line "your style!"
@@ -21,7 +21,7 @@ _UnnamedText_560b6:: ; 9c554 (27:4554)
TX_RAM $cf4b
text "!@@"
-_UnnamedText_560bb:: ; 9c5a4 (27:45a4)
+_VermilionHouse2Text_560bb:: ; 9c5a4 (27:45a4)
db $0
para "Fishing is a way"
line "of life!"
@@ -32,12 +32,12 @@ _UnnamedText_560bb:: ; 9c5a4 (27:45a4)
cont "one, young one!"
done
-_UnnamedText_560c0:: ; 9c601 (27:4601)
+_VermilionHouse2Text_560c0:: ; 9c601 (27:4601)
text "Oh... That's so"
line "disappointing..."
done
-_UnnamedText_560c5:: ; 9c622 (27:4622)
+_VermilionHouse2Text_560c5:: ; 9c622 (27:4622)
text "Hello there,"
line $52, "!"
@@ -45,7 +45,7 @@ _UnnamedText_560c5:: ; 9c622 (27:4622)
line "biting?"
done
-_UnnamedText_560ca:: ; 9c64c (27:464c)
+_VermilionHouse2Text_560ca:: ; 9c64c (27:464c)
text "Oh no!"
para "You have no room"
diff --git a/text/maps/vermilion_gym_1.asm b/text/maps/vermilion_gym_1.asm
index 29807bcb..10868bd4 100644
--- a/text/maps/vermilion_gym_1.asm
+++ b/text/maps/vermilion_gym_1.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5cb6d:: ; 9aaa5 (26:6aa5)
+_VermilionGymText_5cb6d:: ; 9aaa5 (26:6aa5)
text "Hey, kid! What do"
line "you think you're"
cont "doing here?"
diff --git a/text/maps/vermilion_gym_2.asm b/text/maps/vermilion_gym_2.asm
index 8b40d630..28304f37 100644
--- a/text/maps/vermilion_gym_2.asm
+++ b/text/maps/vermilion_gym_2.asm
@@ -1,4 +1,4 @@
-_UnnamedText_5cb72:: ; 9c000 (27:4000)
+_VermilionGymText_5cb72:: ; 9c000 (27:4000)
text "A little word of"
line "advice, kid!"
@@ -10,7 +10,7 @@ _UnnamedText_5cb72:: ; 9c000 (27:4000)
cont "type #MON!"
done
-_UnnamedText_5cb77:: ; 9c069 (27:4069)
+_VermilionGymText_5cb77:: ; 9c069 (27:4069)
text "The THUNDERBADGE"
line "cranks up your"
cont "#MON's SPEED!"
@@ -111,7 +111,7 @@ _VermilionGymAfterBattleText3:: ; 9c2c0 (27:42c0)
cont "next to it!"
done
-_UnnamedText_5cbf4:: ; 9c32b (27:432b)
+_VermilionGymText_5cbf4:: ; 9c32b (27:432b)
text "Yo! Champ in"
line "making!"
@@ -137,7 +137,7 @@ _UnnamedText_5cbf4:: ; 9c32b (27:432b)
cont "get to him!"
done
-_UnnamedText_5cbf9:: ; 9c429 (27:4429)
+_VermilionGymText_5cbf9:: ; 9c429 (27:4429)
text "Whew! That match"
line "was electric!"
done
diff --git a/text/maps/viridian_city.asm b/text/maps/viridian_city.asm
index a2a15caf..7ff2d71d 100644
--- a/text/maps/viridian_city.asm
+++ b/text/maps/viridian_city.asm
@@ -9,7 +9,7 @@ _ViridianCityText1:: ; a43cc (29:43cc)
cont "time, anywhere!"
done
-_UnnamedText_19122:: ; a4437 (29:4437)
+_ViridianCityText_19122:: ; a4437 (29:4437)
text "This #MON GYM"
line "is always closed."
@@ -17,23 +17,23 @@ _UnnamedText_19122:: ; a4437 (29:4437)
line "LEADER is?"
done
-_UnnamedText_19127:: ; a4474 (29:4474)
+_ViridianCityText_19127:: ; a4474 (29:4474)
text "VIRIDIAN GYM's"
line "LEADER returned!"
done
-_UnnamedText_1914d:: ; a4494 (29:4494)
+_ViridianCityText_1914d:: ; a4494 (29:4494)
text "You want to know"
line "about the 2 kinds"
cont "of caterpillar"
cont "#MON?"
done
-_UnnamedText_19152:: ; a44cd (29:44cd)
+_ViridianCityText_19152:: ; a44cd (29:44cd)
text "Oh, OK then!"
done
-_UnnamedText_19157:: ; a44db (29:44db)
+_ViridianCityText_19157:: ; a44db (29:44db)
text "CATERPIE has no"
line "poison, but"
cont "WEEDLE does."
@@ -42,14 +42,14 @@ _UnnamedText_19157:: ; a44db (29:44db)
line "POISON STING!"
done
-_UnnamedText_19175:: ; a4525 (29:4525)
+_ViridianCityText_19175:: ; a4525 (29:4525)
text "Oh Grandpa! Don't"
line "be so mean!"
cont "He hasn't had his"
cont "coffee yet."
done
-_UnnamedText_1917a:: ; a4560 (29:4560)
+_ViridianCityText_1917a:: ; a4560 (29:4560)
text "When I go shop in"
line "PEWTER CITY, I"
cont "have to take the"
@@ -57,7 +57,7 @@ _UnnamedText_1917a:: ; a4560 (29:4560)
cont "VIRIDIAN FOREST."
done
-_UnnamedText_19191:: ; a45b5 (29:45b5)
+_ViridianCityText_19191:: ; a45b5 (29:45b5)
text "You can't go"
line "through here!"
@@ -65,7 +65,7 @@ _UnnamedText_19191:: ; a45b5 (29:45b5)
line "property!"
done
-_UnnamedText_191ca:: ; a45ea (29:45ea)
+_ViridianCityText_191ca:: ; a45ea (29:45ea)
text "Yawn!"
line "I must have dozed"
cont "off in the sun."
@@ -97,7 +97,7 @@ _TM42NoRoomText:: ; a46d7 (29:46d7)
line "stuff already."
done
-_UnnamedText_1920a:: ; a46f9 (29:46f9)
+_ViridianCityText_1920a:: ; a46f9 (29:46f9)
text "Ahh, I've had my"
line "coffee now and I"
cont "feel great!"
@@ -109,7 +109,7 @@ _UnnamedText_1920a:: ; a46f9 (29:46f9)
line "hurry?"
done
-_UnnamedText_1920f:: ; a4754 (29:4754)
+_ViridianCityText_1920f:: ; a4754 (29:4754)
text "I see you're using"
line "a #DEX."
@@ -126,12 +126,12 @@ _UnnamedText_1920f:: ; a4754 (29:4754)
line "how to then."
done
-_UnnamedText_19214:: ; a47e6 (29:47e6)
+_ViridianCityText_19214:: ; a47e6 (29:47e6)
text "Time is money..."
line "Go along then."
done
-_UnnamedText_19219:: ; a4807 (29:4807)
+_ViridianCityText_19219:: ; a4807 (29:4807)
text "First, you need"
line "to weaken the"
cont "target #MON."
diff --git a/text/maps/viridian_gym.asm b/text/maps/viridian_gym.asm
index 73904f7c..e1828c32 100644
--- a/text/maps/viridian_gym.asm
+++ b/text/maps/viridian_gym.asm
@@ -1,4 +1,4 @@
-_UnnamedText_74ace:: ; 95e09 (25:5e09)
+_ViridianGymText_74ace:: ; 95e09 (25:5e09)
text "Fwahahaha! This is"
line "my hideout!"
@@ -18,7 +18,7 @@ _UnnamedText_74ace:: ; 95e09 (25:5e09)
cont "greatest trainer!"
done
-_UnnamedText_74ad3:: ; 95ed5 (25:5ed5)
+_ViridianGymText_74ad3:: ; 95ed5 (25:5ed5)
text "Ha!"
line "That was a truly"
cont "intense fight!"
@@ -26,7 +26,7 @@ _UnnamedText_74ad3:: ; 95ed5 (25:5ed5)
cont "As proof, here is"
cont "the EARTHBADGE!@@"
-_UnnamedText_74ad9:: ; 95f2b (25:5f2b)
+_ViridianGymText_74ad9:: ; 95f2b (25:5f2b)
text "Having lost, I"
line "cannot face my"
cont "underlings!"
@@ -211,7 +211,7 @@ _ViridianGymAfterBattleText8:: ; 96412 (25:6412)
cont "our GYM LEADER!"
done
-_UnnamedText_74bd4:: ; 96451 (25:6451)
+_ViridianGymText_74bd4:: ; 96451 (25:6451)
text "Yo! Champ in"
line "making!"
@@ -229,7 +229,7 @@ _UnnamedText_74bd4:: ; 96451 (25:6451)
cont "#MON!"
done
-_UnnamedText_74bd9:: ; 964fb (25:64fb)
+_ViridianGymText_74bd9:: ; 964fb (25:64fb)
text "Blow me away!"
line "GIOVANNI was the"
cont "GYM LEADER here?"
diff --git a/text/maps/viridian_house.asm b/text/maps/viridian_house.asm
index ca382c0a..eec10c59 100644
--- a/text/maps/viridian_house.asm
+++ b/text/maps/viridian_house.asm
@@ -13,7 +13,7 @@ _ViridianHouseText2:: ; 95dc7 (25:5dc7)
line "#MON too."
done
-_UnnamedText_1d5b1:: ; 95de1 (25:5de1)
+_ViridianHouseText_1d5b1:: ; 95de1 (25:5de1)
text "SPEARY: Tetweet!"
done
diff --git a/text/maps/wardens_house.asm b/text/maps/wardens_house.asm
index 349c0c65..d5834483 100644
--- a/text/maps/wardens_house.asm
+++ b/text/maps/wardens_house.asm
@@ -72,12 +72,12 @@ _HM04NoRoomText:: ; 9e67a (27:667a)
line "stuffed full!"
done
-_UnnamedText_75176:: ; 9e696 (27:6696)
+_FuchsiaHouse2Text_75176:: ; 9e696 (27:6696)
text "#MON photos"
line "and fossils."
done
-_UnnamedText_7517b:: ; 9e6b0 (27:66b0)
+_FuchsiaHouse2Text_7517b:: ; 9e6b0 (27:66b0)
text "Old #MON"
line "merchandise."
done
diff --git a/text/monster_names.asm b/text/monster_names.asm
new file mode 100755
index 00000000..c7e0226f
--- /dev/null
+++ b/text/monster_names.asm
@@ -0,0 +1,191 @@
+MonsterNames: ; 1c21e (7:421e)
+ db "RHYDON@@@@"
+ db "KANGASKHAN"
+ db "NIDORAN♂@@"
+ db "CLEFAIRY@@"
+ db "SPEAROW@@@"
+ db "VOLTORB@@@"
+ db "NIDOKING@@"
+ db "SLOWBRO@@@"
+ db "IVYSAUR@@@"
+ db "EXEGGUTOR@"
+ db "LICKITUNG@"
+ db "EXEGGCUTE@"
+ db "GRIMER@@@@"
+ db "GENGAR@@@@"
+ db "NIDORAN♀@@"
+ db "NIDOQUEEN@"
+ db "CUBONE@@@@"
+ db "RHYHORN@@@"
+ db "LAPRAS@@@@"
+ db "ARCANINE@@"
+ db "MEW@@@@@@@"
+ db "GYARADOS@@"
+ db "SHELLDER@@"
+ db "TENTACOOL@"
+ db "GASTLY@@@@"
+ db "SCYTHER@@@"
+ db "STARYU@@@@"
+ db "BLASTOISE@"
+ db "PINSIR@@@@"
+ db "TANGELA@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "GROWLITHE@"
+ db "ONIX@@@@@@"
+ db "FEAROW@@@@"
+ db "PIDGEY@@@@"
+ db "SLOWPOKE@@"
+ db "KADABRA@@@"
+ db "GRAVELER@@"
+ db "CHANSEY@@@"
+ db "MACHOKE@@@"
+ db "MR.MIME@@@"
+ db "HITMONLEE@"
+ db "HITMONCHAN"
+ db "ARBOK@@@@@"
+ db "PARASECT@@"
+ db "PSYDUCK@@@"
+ db "DROWZEE@@@"
+ db "GOLEM@@@@@"
+ db "MISSINGNO."
+ db "MAGMAR@@@@"
+ db "MISSINGNO."
+ db "ELECTABUZZ"
+ db "MAGNETON@@"
+ db "KOFFING@@@"
+ db "MISSINGNO."
+ db "MANKEY@@@@"
+ db "SEEL@@@@@@"
+ db "DIGLETT@@@"
+ db "TAUROS@@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "FARFETCH'D"
+ db "VENONAT@@@"
+ db "DRAGONITE@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "DODUO@@@@@"
+ db "POLIWAG@@@"
+ db "JYNX@@@@@@"
+ db "MOLTRES@@@"
+ db "ARTICUNO@@"
+ db "ZAPDOS@@@@"
+ db "DITTO@@@@@"
+ db "MEOWTH@@@@"
+ db "KRABBY@@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "VULPIX@@@@"
+ db "NINETALES@"
+ db "PIKACHU@@@"
+ db "RAICHU@@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "DRATINI@@@"
+ db "DRAGONAIR@"
+ db "KABUTO@@@@"
+ db "KABUTOPS@@"
+ db "HORSEA@@@@"
+ db "SEADRA@@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "SANDSHREW@"
+ db "SANDSLASH@"
+ db "OMANYTE@@@"
+ db "OMASTAR@@@"
+ db "JIGGLYPUFF"
+ db "WIGGLYTUFF"
+ db "EEVEE@@@@@"
+ db "FLAREON@@@"
+ db "JOLTEON@@@"
+ db "VAPOREON@@"
+ db "MACHOP@@@@"
+ db "ZUBAT@@@@@"
+ db "EKANS@@@@@"
+ db "PARAS@@@@@"
+ db "POLIWHIRL@"
+ db "POLIWRATH@"
+ db "WEEDLE@@@@"
+ db "KAKUNA@@@@"
+ db "BEEDRILL@@"
+ db "MISSINGNO."
+ db "DODRIO@@@@"
+ db "PRIMEAPE@@"
+ db "DUGTRIO@@@"
+ db "VENOMOTH@@"
+ db "DEWGONG@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "CATERPIE@@"
+ db "METAPOD@@@"
+ db "BUTTERFREE"
+ db "MACHAMP@@@"
+ db "MISSINGNO."
+ db "GOLDUCK@@@"
+ db "HYPNO@@@@@"
+ db "GOLBAT@@@@"
+ db "MEWTWO@@@@"
+ db "SNORLAX@@@"
+ db "MAGIKARP@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MUK@@@@@@@"
+ db "MISSINGNO."
+ db "KINGLER@@@"
+ db "CLOYSTER@@"
+ db "MISSINGNO."
+ db "ELECTRODE@"
+ db "CLEFABLE@@"
+ db "WEEZING@@@"
+ db "PERSIAN@@@"
+ db "MAROWAK@@@"
+ db "MISSINGNO."
+ db "HAUNTER@@@"
+ db "ABRA@@@@@@"
+ db "ALAKAZAM@@"
+ db "PIDGEOTTO@"
+ db "PIDGEOT@@@"
+ db "STARMIE@@@"
+ db "BULBASAUR@"
+ db "VENUSAUR@@"
+ db "TENTACRUEL"
+ db "MISSINGNO."
+ db "GOLDEEN@@@"
+ db "SEAKING@@@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "PONYTA@@@@"
+ db "RAPIDASH@@"
+ db "RATTATA@@@"
+ db "RATICATE@@"
+ db "NIDORINO@@"
+ db "NIDORINA@@"
+ db "GEODUDE@@@"
+ db "PORYGON@@@"
+ db "AERODACTYL"
+ db "MISSINGNO."
+ db "MAGNEMITE@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "CHARMANDER"
+ db "SQUIRTLE@@"
+ db "CHARMELEON"
+ db "WARTORTLE@"
+ db "CHARIZARD@"
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "MISSINGNO."
+ db "ODDISH@@@@"
+ db "GLOOM@@@@@"
+ db "VILEPLUME@"
+ db "BELLSPROUT"
+ db "WEEPINBELL"
+ db "VICTREEBEL"
diff --git a/text/trainer_names.asm b/text/trainer_names.asm
new file mode 100755
index 00000000..6a3cf8f7
--- /dev/null
+++ b/text/trainer_names.asm
@@ -0,0 +1,48 @@
+TrainerNames: ; 399ff (e:59ff)
+ db "YOUNGSTER@"
+ db "BUG CATCHER@"
+ db "LASS@"
+ db "SAILOR@"
+ db "JR.TRAINER♂@"
+ db "JR.TRAINER♀@"
+ db "POKéMANIAC@"
+ db "SUPER NERD@"
+ db "HIKER@"
+ db "BIKER@"
+ db "BURGLAR@"
+ db "ENGINEER@"
+ db "JUGGLER@"
+ db "FISHERMAN@"
+ db "SWIMMER@"
+ db "CUE BALL@"
+ db "GAMBLER@"
+ db "BEAUTY@"
+ db "PSYCHIC@"
+ db "ROCKER@"
+ db "JUGGLER@"
+ db "TAMER@"
+ db "BIRD KEEPER@"
+ db "BLACKBELT@"
+ db "RIVAL1@"
+ db "PROF.OAK@"
+ db "CHIEF@"
+ db "SCIENTIST@"
+ db "GIOVANNI@"
+ db "ROCKET@"
+ db "COOLTRAINER♂@"
+ db "COOLTRAINER♀@"
+ db "BRUNO@"
+ db "BROCK@"
+ db "MISTY@"
+ db "LT.SURGE@"
+ db "ERIKA@"
+ db "KOGA@"
+ db "BLAINE@"
+ db "SABRINA@"
+ db "GENTLEMAN@"
+ db "RIVAL2@"
+ db "RIVAL3@"
+ db "LORELEI@"
+ db "CHANNELER@"
+ db "AGATHA@"
+ db "LANCE@"
diff --git a/text/type_names.asm b/text/type_names.asm
new file mode 100755
index 00000000..63d95669
--- /dev/null
+++ b/text/type_names.asm
@@ -0,0 +1,61 @@
+TypeNamePointers: ; 27dae (9:7dae)
+ dw Type00Name
+ dw Type01Name
+ dw Type02Name
+ dw Type03Name
+ dw Type04Name
+ dw Type05Name
+ dw Type06Name
+ dw Type07Name
+ dw Type08Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type00Name
+ dw Type14Name
+ dw Type15Name
+ dw Type16Name
+ dw Type17Name
+ dw Type18Name
+ dw Type19Name
+ dw Type1AName
+
+Type00Name: ; 27de4 (9:7de4)
+ db "NORMAL@"
+Type01Name: ; 27deb (9:7deb)
+ db "FIGHTING@"
+Type02Name: ; 27df4 (9:7df4)
+ db "FLYING@"
+Type03Name: ; 27dfb (9:7dfb)
+ db "POISON@"
+Type14Name: ; 27e02 (9:7e02)
+ db "FIRE@"
+Type15Name: ; 27e07 (9:7e07)
+ db "WATER@"
+Type16Name: ; 27e0d (9:7e0d)
+ db "GRASS@"
+Type17Name: ; 27e13 (9:7e13)
+ db "ELECTRIC@"
+Type18Name: ; 27e1c (9:7e1c)
+ db "PSYCHIC@"
+Type19Name: ; 27e24 (9:7e24)
+ db "ICE@"
+Type04Name: ; 27e28 (9:7e28)
+ db "GROUND@"
+Type05Name: ; 27e2f (9:7e2f)
+ db "ROCK@"
+Type06Name: ; 27e34 (9:7e34)
+ db "BIRD@"
+Type07Name: ; 27e39 (9:7e39)
+ db "BUG@"
+Type08Name: ; 27e3d (9:7e3d)
+ db "GHOST@"
+Type1AName: ; 27e43 (9:7e43)
+ db "DRAGON@"