mirror of
https://github.com/pret/pokeyellow.git
synced 2026-05-27 05:26:46 -05:00
Some bank3 documentation
This commit is contained in:
parent
79aa0bfbc6
commit
3db446ca4f
|
|
@ -1,2 +1,2 @@
|
|||
DungeonTilesets: ; c7b2 (3:47b2)
|
||||
DungeonTilesets: ; c54c (3:454c)
|
||||
db FOREST, MUSEUM, SHIP, CAVERN, LOBBY, MANSION, GATE, LAB, FACILITY, CEMETERY, GYM, $FF
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
; 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)
|
||||
MapHSPointers: ; c69b (3:469b)
|
||||
dw MapHS00
|
||||
dw MapHS01
|
||||
dw MapHS02
|
||||
|
|
@ -68,7 +68,7 @@ MapHSPointers: ; c8f5 (3:48f5)
|
|||
dw MapHSXX
|
||||
dw MapHS3D
|
||||
dw MapHSXX
|
||||
dw MapHSXX
|
||||
dw MapHS3F
|
||||
dw MapHSXX
|
||||
dw MapHSXX
|
||||
dw MapHSXX
|
||||
|
|
@ -253,6 +253,7 @@ MapHSPointers: ; c8f5 (3:48f5)
|
|||
dw MapHSXX
|
||||
dw MapHSXX
|
||||
dw MapHSXX
|
||||
dw MapHSXX ; beach house
|
||||
dw $FFFF
|
||||
|
||||
; Structure:
|
||||
|
|
@ -269,23 +270,24 @@ MapHSPointers: ; c8f5 (3:48f5)
|
|||
Hide equ $11
|
||||
Show equ $15
|
||||
|
||||
MapHSXX: ; cae7 (3:4ae7)
|
||||
MapHSXX: ; c88f (3:488f)
|
||||
db $FF,$FF,$FF
|
||||
MapHS00: ; caea (3:4aea)
|
||||
MapHS00: ; c892 (3:4892)
|
||||
db PALLET_TOWN,$01,Hide
|
||||
MapHS01: ; caed (3:4aed)
|
||||
MapHS01: ; c895 (3:4895)
|
||||
db VIRIDIAN_CITY,$05,Show
|
||||
db VIRIDIAN_CITY,$07,Hide
|
||||
MapHS02: ; caf3 (3:4af3)
|
||||
db VIRIDIAN_CITY,$08,Hide
|
||||
MapHS02: ; c89e (3:489e)
|
||||
db PEWTER_CITY,$03,Show
|
||||
db PEWTER_CITY,$05,Show
|
||||
MapHS03: ; caf9 (3:4af9)
|
||||
MapHS03: ; c8a4 (3:48a4)
|
||||
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)
|
||||
MapHS0A: ; c8b3 (3:48b3)
|
||||
db SAFFRON_CITY,$01,Show
|
||||
db SAFFRON_CITY,$02,Show
|
||||
db SAFFRON_CITY,$03,Show
|
||||
|
|
@ -301,86 +303,86 @@ MapHS0A: ; cb08 (3:4b08)
|
|||
db SAFFRON_CITY,$0D,Hide
|
||||
db SAFFRON_CITY,$0E,Show
|
||||
db SAFFRON_CITY,$0F,Hide
|
||||
MapHS0D: ; cb35 (3:4b35)
|
||||
MapHS0D: ; c8e0 (3:48e0)
|
||||
db ROUTE_2,$01,Show
|
||||
db ROUTE_2,$02,Show
|
||||
MapHS0F: ; cb3b (3:4b3b)
|
||||
MapHS0F: ; c8e6 (3:48e6)
|
||||
db ROUTE_4,$03,Show
|
||||
MapHS14: ; cb3e (3:4b3e)
|
||||
MapHS14: ; c8e9 (3:48e9)
|
||||
db ROUTE_9,$0A,Show
|
||||
MapHS17: ; cb41 (3:4b41)
|
||||
MapHS17: ; c8ec (3:48ec)
|
||||
db ROUTE_12,$01,Show
|
||||
db ROUTE_12,$09,Show
|
||||
db ROUTE_12,$0A,Show
|
||||
MapHS1A: ; cb4a (3:4b4a)
|
||||
MapHS1A: ; c8f5 (3:48f5)
|
||||
db ROUTE_15,$0B,Show
|
||||
MapHS1B: ; cb4d (3:4b4d)
|
||||
MapHS1B: ; c8f8 (3:48f8)
|
||||
db ROUTE_16,$07,Show
|
||||
MapHS21: ; cb50 (3:4b50)
|
||||
MapHS21: ; c8fb (3:48fb)
|
||||
db ROUTE_22,$01,Hide
|
||||
db ROUTE_22,$02,Hide
|
||||
MapHS23: ; cb56 (3:4b56)
|
||||
MapHS23: ; c901 (3:4901)
|
||||
db ROUTE_24,$01,Show
|
||||
db ROUTE_24,$08,Show
|
||||
MapHS24: ; cb5c (3:4b5c)
|
||||
MapHS24: ; c907 (3:4907)
|
||||
db ROUTE_25,$0A,Show
|
||||
MapHS27: ; cb5f (3:4b5f)
|
||||
MapHS27: ; c90a (3:490a)
|
||||
db BLUES_HOUSE,$01,Show
|
||||
db BLUES_HOUSE,$02,Hide
|
||||
db BLUES_HOUSE,$03,Show
|
||||
MapHS28: ; cb68 (3:4b68)
|
||||
MapHS28: ; c913 (3:4913)
|
||||
db OAKS_LAB,$01,Show
|
||||
db OAKS_LAB,$02,Show
|
||||
db OAKS_LAB,$03,Show
|
||||
db OAKS_LAB,$03,Hide
|
||||
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 OAKS_LAB,$05,Show
|
||||
db OAKS_LAB,$06,Hide
|
||||
MapHS2D: ; c925 (3:4925)
|
||||
db VIRIDIAN_GYM,$01,Show
|
||||
db VIRIDIAN_GYM,$0B,Show
|
||||
MapHS34: ; cb86 (3:4b86)
|
||||
MapHS34: ; c92b (3:492b)
|
||||
db MUSEUM_1F,$05,Show
|
||||
MapHSE4: ; cb89 (3:4b89)
|
||||
MapHS3F: ; c92e (3:492e) ; bulbasaur adoption house
|
||||
db CERULEAN_HOUSE,$02,Show
|
||||
MapHSE4: ; c931 (3:4931)
|
||||
db UNKNOWN_DUNGEON_1,$01,Show
|
||||
db UNKNOWN_DUNGEON_1,$02,Show
|
||||
db UNKNOWN_DUNGEON_1,$03,Show
|
||||
MapHS8F: ; cb92 (3:4b92)
|
||||
db UNKNOWN_DUNGEON_1,$04,Show
|
||||
MapHS8F: ; c93d (3:493d)
|
||||
db POKEMONTOWER_2,$01,Show
|
||||
MapHS90: ; cb95 (3:4b95)
|
||||
MapHS90: ; c940 (3:4940)
|
||||
db POKEMONTOWER_3,$04,Show
|
||||
MapHS91: ; cb98 (3:4b98)
|
||||
MapHS91: ; c943 (3:4943)
|
||||
db POKEMONTOWER_4,$04,Show
|
||||
db POKEMONTOWER_4,$05,Show
|
||||
db POKEMONTOWER_4,$06,Show
|
||||
MapHS92: ; cba1 (3:4ba1)
|
||||
MapHS92: ; c94c (3:494c)
|
||||
db POKEMONTOWER_5,$06,Show
|
||||
MapHS93: ; cba4 (3:4ba4)
|
||||
MapHS93: ; c94f (3:494f)
|
||||
db POKEMONTOWER_6,$04,Show
|
||||
db POKEMONTOWER_6,$05,Show
|
||||
MapHS94: ; cbaa (3:4baa)
|
||||
db POKEMONTOWER_7,$01,Show
|
||||
db POKEMONTOWER_7,$02,Show
|
||||
MapHS94: ; c955 (3:4955)
|
||||
db POKEMONTOWER_7,$01,Hide ; jessie & james?
|
||||
db POKEMONTOWER_7,$02,Hide
|
||||
db POKEMONTOWER_7,$03,Show
|
||||
db POKEMONTOWER_7,$04,Show
|
||||
MapHS95: ; cbb6 (3:4bb6)
|
||||
MapHS95: ; c95e (3:495e)
|
||||
db LAVENDER_HOUSE_1,$05,Hide
|
||||
MapHS84: ; cbb9 (3:4bb9)
|
||||
MapHS84: ; c961 (3:4961)
|
||||
db CELADON_MANSION_5,$02,Show
|
||||
MapHS87: ; cbbc (3:4bbc)
|
||||
MapHS87: ; c964 (3:4964)
|
||||
db GAME_CORNER,$0B,Show
|
||||
MapHS9B: ; cbbf (3:4bbf)
|
||||
MapHS9B: ; c967 (3:4967)
|
||||
db FUCHSIA_HOUSE_2,$02,Show
|
||||
MapHSA5: ; cbc2 (3:4bc2)
|
||||
MapHSA5: ; c96a (3:496a)
|
||||
db MANSION_1,$02,Show
|
||||
db MANSION_1,$03,Show
|
||||
MapHSB1: ; cbc8 (3:4bc8)
|
||||
MapHSB1: ; c970 (3:4970)
|
||||
db FIGHTING_DOJO,$06,Show
|
||||
db FIGHTING_DOJO,$07,Show
|
||||
MapHSB5: ; cbce (3:4bce)
|
||||
MapHSB5: ; c976 (3:4976)
|
||||
db SILPH_CO_1F,$01,Hide
|
||||
MapHS53: ; cbd1 (3:4bd1)
|
||||
MapHS53: ; c979 (3:4979)
|
||||
db POWER_PLANT,$01,Show
|
||||
db POWER_PLANT,$02,Show
|
||||
db POWER_PLANT,$03,Show
|
||||
|
|
@ -395,84 +397,88 @@ MapHS53: ; cbd1 (3:4bd1)
|
|||
db POWER_PLANT,$0C,Show
|
||||
db POWER_PLANT,$0D,Show
|
||||
db POWER_PLANT,$0E,Show
|
||||
MapHSC2: ; cbfb (3:4bfb)
|
||||
MapHSC2: ; c9a3 (3:49a3)
|
||||
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)
|
||||
MapHS58: ; c9b5 (3:49b5)
|
||||
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
|
||||
MapHS33: ; c9be (3:49be)
|
||||
db VIRIDIAN_FOREST,$07,Show
|
||||
MapHS3B: ; cc1f (3:4c1f)
|
||||
db VIRIDIAN_FOREST,$08,Show
|
||||
db VIRIDIAN_FOREST,$09,Show
|
||||
MapHS3B: ; c9c7 (3:49c7)
|
||||
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
|
||||
MapHS3D: ; c9d9 (3:49d9)
|
||||
db MT_MOON_3,$02,Hide
|
||||
db MT_MOON_3,$06,Hide
|
||||
db MT_MOON_3,$07,Show
|
||||
db MT_MOON_3,$08,Show
|
||||
db MT_MOON_3,$09,Show
|
||||
MapHS60: ; cc3d (3:4c3d)
|
||||
db MT_MOON_3,$0A,Show
|
||||
MapHS60: ; c9eb (3:49eb)
|
||||
db SS_ANNE_2,$02,Hide
|
||||
MapHS66: ; cc40 (3:4c40)
|
||||
MapHS66: ; c9ee (3:49ee)
|
||||
db SS_ANNE_8,$0A,Show
|
||||
MapHS67: ; cc43 (3:4c43)
|
||||
MapHS67: ; c9f1 (3:49f1)
|
||||
db SS_ANNE_9,$06,Show
|
||||
db SS_ANNE_9,$09,Show
|
||||
MapHS68: ; cc49 (3:4c49)
|
||||
MapHS68: ; c9f7 (3:49f7)
|
||||
db SS_ANNE_10,$09,Show
|
||||
db SS_ANNE_10,$0A,Show
|
||||
db SS_ANNE_10,$0B,Show
|
||||
MapHSC6: ; cc52 (3:4c52)
|
||||
MapHSC6: ; ca00 (3:4a00)
|
||||
db VICTORY_ROAD_3,$05,Show
|
||||
db VICTORY_ROAD_3,$06,Show
|
||||
db VICTORY_ROAD_3,$0A,Show
|
||||
MapHSC7: ; cc5b (3:4c5b)
|
||||
MapHSC7: ; ca09 (3:4a09)
|
||||
db ROCKET_HIDEOUT_1,$06,Show
|
||||
db ROCKET_HIDEOUT_1,$07,Show
|
||||
MapHSC8: ; cc61 (3:4c61)
|
||||
MapHSC8: ; ca0f (3:4a0f)
|
||||
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)
|
||||
MapHSC9: ; ca1b (3:4a1b)
|
||||
db ROCKET_HIDEOUT_3,$03,Show
|
||||
db ROCKET_HIDEOUT_3,$04,Show
|
||||
MapHSCA: ; cc73 (3:4c73)
|
||||
MapHSCA: ; ca21 (3:4a21)
|
||||
db ROCKET_HIDEOUT_4,$01,Show
|
||||
db ROCKET_HIDEOUT_4,$02,Hide
|
||||
db ROCKET_HIDEOUT_4,$03,Hide
|
||||
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)
|
||||
MapHSCF: ; ca39 (3:4a39)
|
||||
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)
|
||||
MapHSD0: ; ca48 (3:4a48)
|
||||
db SILPH_CO_3F,$02,Show
|
||||
db SILPH_CO_3F,$03,Show
|
||||
db SILPH_CO_3F,$04,Show
|
||||
MapHSD1: ; cc9d (3:4c9d)
|
||||
MapHSD1: ; ca51 (3:4a51)
|
||||
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)
|
||||
MapHSD2: ; ca63 (3:4a63)
|
||||
db SILPH_CO_5F,$02,Show
|
||||
db SILPH_CO_5F,$03,Show
|
||||
db SILPH_CO_5F,$04,Show
|
||||
|
|
@ -480,13 +486,13 @@ MapHSD2: ; ccaf (3:4caf)
|
|||
db SILPH_CO_5F,$06,Show
|
||||
db SILPH_CO_5F,$07,Show
|
||||
db SILPH_CO_5F,$08,Show
|
||||
MapHSD3: ; ccc4 (3:4cc4)
|
||||
MapHSD3: ; ca78 (3:4a78)
|
||||
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)
|
||||
MapHSD4: ; ca87 (3:4a87)
|
||||
db SILPH_CO_7F,$05,Show
|
||||
db SILPH_CO_7F,$06,Show
|
||||
db SILPH_CO_7F,$07,Show
|
||||
|
|
@ -495,83 +501,93 @@ MapHSD4: ; ccd3 (3:4cd3)
|
|||
db SILPH_CO_7F,$0A,Show
|
||||
db SILPH_CO_7F,$0B,Show
|
||||
db SILPH_CO_7F,$0C,Show
|
||||
MapHSD5: ; cceb (3:4ceb)
|
||||
MapHSD5: ; ca9f (3:4a9f)
|
||||
db SILPH_CO_8F,$02,Show
|
||||
db SILPH_CO_8F,$03,Show
|
||||
db SILPH_CO_8F,$04,Show
|
||||
MapHSE9: ; ccf4 (3:4cf4)
|
||||
MapHSE9: ; caa8 (3:4aa8)
|
||||
db SILPH_CO_9F,$02,Show
|
||||
db SILPH_CO_9F,$03,Show
|
||||
db SILPH_CO_9F,$04,Show
|
||||
MapHSEA: ; ccfd (3:4cfd)
|
||||
MapHSEA: ; cab1 (3:4ab1)
|
||||
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)
|
||||
MapHSEB: ; cac3 (3:4ac3)
|
||||
db SILPH_CO_11F,$03,Show
|
||||
db SILPH_CO_11F,$04,Show
|
||||
db SILPH_CO_11F,$05,Show
|
||||
MapHSF4: ; cd18 (3:4d18)
|
||||
db SILPH_CO_11F,$06,Show
|
||||
MapHSF4: ; cacf (3:4acf)
|
||||
db $F4,$02,Show
|
||||
MapHSD6: ; cd1b (3:4d1b)
|
||||
MapHSD6: ; cad2 (3:4ad2)
|
||||
db MANSION_2,$02,Show
|
||||
MapHSD7: ; cd1e (3:4d1e)
|
||||
MapHSD7: ; cad5 (3:4ad5)
|
||||
db MANSION_3,$03,Show
|
||||
db MANSION_3,$04,Show
|
||||
MapHSD8: ; cd24 (3:4d24)
|
||||
MapHSD8: ; cadb (3:4adb)
|
||||
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)
|
||||
MapHSD9: ; caea (3:4aea)
|
||||
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)
|
||||
MapHSDA: ; caf6 (3:4af6)
|
||||
db SAFARI_ZONE_NORTH,$01,Show
|
||||
db SAFARI_ZONE_NORTH,$02,Show
|
||||
MapHSDB: ; cd45 (3:4d45)
|
||||
MapHSDB: ; cafc (3:4afc)
|
||||
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)
|
||||
MapHSDC: ; cb08 (3:4b08)
|
||||
db SAFARI_ZONE_CENTER,$01,Show
|
||||
MapHSE2: ; cd54 (3:4d54)
|
||||
MapHSE2: ; cb0b (3:4b0b)
|
||||
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_2,$04,Show
|
||||
MapHSE3: ; cb17 (3:4b17)
|
||||
db UNKNOWN_DUNGEON_3,$01,Show
|
||||
db UNKNOWN_DUNGEON_3,$02,Show
|
||||
db UNKNOWN_DUNGEON_3,$03,Show
|
||||
MapHS6C: ; cd66 (3:4d66)
|
||||
db UNKNOWN_DUNGEON_3,$04,Show
|
||||
db UNKNOWN_DUNGEON_3,$05,Show
|
||||
MapHS6C: ; cb26 (3:4b26)
|
||||
db VICTORY_ROAD_1,$03,Show
|
||||
db VICTORY_ROAD_1,$04,Show
|
||||
MapHS78: ; cd6c (3:4d6c)
|
||||
MapHS78: ; cb2c (3:4b2c)
|
||||
db CHAMPIONS_ROOM,$02,Hide
|
||||
MapHSC0: ; cd6f (3:4d6f)
|
||||
MapHSC0: ; cb2f (3:4b2f)
|
||||
db SEAFOAM_ISLANDS_1,$01,Show
|
||||
db SEAFOAM_ISLANDS_1,$02,Show
|
||||
MapHS9F: ; cd75 (3:4d75)
|
||||
MapHS9F: ; cb35 (3:4b35)
|
||||
db SEAFOAM_ISLANDS_2,$01,Hide
|
||||
db SEAFOAM_ISLANDS_2,$02,Hide
|
||||
MapHSA0: ; cd7b (3:4d7b)
|
||||
MapHSA0: ; cb3b (3:4b3b)
|
||||
db SEAFOAM_ISLANDS_3,$01,Hide
|
||||
db SEAFOAM_ISLANDS_3,$02,Hide
|
||||
MapHSA1: ; cd81 (3:4d81)
|
||||
MapHSA1: ; cb41 (3:4b41)
|
||||
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)
|
||||
MapHSA2: ; cb4d (3:4b4d)
|
||||
db SEAFOAM_ISLANDS_5,$01,Hide
|
||||
db SEAFOAM_ISLANDS_5,$02,Hide
|
||||
db SEAFOAM_ISLANDS_5,$03,Show
|
||||
|
||||
db $FF,$01,Show
|
||||
MapHS27Copy: ; cb56 (3:4b56)
|
||||
; doesn't seem to be referenced
|
||||
db BLUES_HOUSE,$01,Show
|
||||
db BLUES_HOUSE,$02,Hide
|
||||
db BLUES_HOUSE,$03,Show
|
||||
|
||||
db $FF,$01,Show
|
||||
|
|
@ -1,26 +1,28 @@
|
|||
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
|
||||
tileset BeachHouse_Block, BeachHouse_GFX, BeachHouse_Coll, $FF,$FF,$FF, $FF, INDOOR
|
||||
Tilesets: ; c558 (3:4558)
|
||||
dr $c558,$c684
|
||||
|
||||
;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
|
||||
;tileset BeachHouse_Block, BeachHouse_GFX, BeachHouse_Coll, $FF,$FF,$FF, $FF, INDOOR
|
||||
|
|
@ -51,10 +51,7 @@ asm_f601d: ; f601d (f:601d)
|
|||
ld a,[W_LONEATTACKNO]
|
||||
and a
|
||||
jp z,InitBattle_Common
|
||||
ld hl,Func_f430a
|
||||
ld b,BANK(Func_f430a)
|
||||
ld d,$4
|
||||
call Bankswitch ; useless since already in bank3d
|
||||
callabd_Func_f430a $4 ; useless since already in bank3d
|
||||
jp InitBattle_Common
|
||||
|
||||
InitWildBattle: ; f607c (3d:607c)
|
||||
|
|
|
|||
|
|
@ -247,10 +247,7 @@ BillsPCDeposit: ; 2156d (8:556d)
|
|||
ld a, [wcf91]
|
||||
call PlayCry
|
||||
.asm_215cf
|
||||
ld hl, Func_f430a
|
||||
ld b, BANK(Func_f430a)
|
||||
ld d, $7
|
||||
call Bankswitch
|
||||
callabd_Func_f430a $7
|
||||
ld a, PARTY_TO_BOX
|
||||
ld [wMoveMonType], a
|
||||
call MoveMon
|
||||
|
|
|
|||
14
macros.asm
14
macros.asm
|
|
@ -97,6 +97,20 @@ callab: MACRO
|
|||
call Bankswitch
|
||||
ENDM
|
||||
|
||||
calladb_Func_f430a: MACRO
|
||||
ld hl, Func_f430a
|
||||
ld d, \1
|
||||
ld b, BANK(Func_f430a)
|
||||
call Bankswitch
|
||||
ENDM
|
||||
|
||||
callabd_Func_f430a: MACRO
|
||||
ld hl, Func_f430a
|
||||
ld b, BANK(Func_f430a)
|
||||
ld d, \1
|
||||
call Bankswitch
|
||||
ENDM
|
||||
|
||||
jpba: MACRO
|
||||
ld b, BANK(\1)
|
||||
ld hl, \1
|
||||
|
|
|
|||
98
main.asm
98
main.asm
|
|
@ -2262,8 +2262,7 @@ PrintSafariZoneSteps: ; c52f (3:452f)
|
|||
cp UNKNOWN_DUNGEON_2
|
||||
ret nc
|
||||
coord hl, 0, 0
|
||||
ld b, 3
|
||||
ld c, 7
|
||||
lb bc, 3, 7
|
||||
call TextBoxBorder
|
||||
coord hl, 1, 1
|
||||
ld de, wSafariSteps
|
||||
|
|
@ -2277,26 +2276,26 @@ PrintSafariZoneSteps: ; c52f (3:452f)
|
|||
call PlaceString
|
||||
ld a, [W_NUMSAFARIBALLS]
|
||||
cp 10
|
||||
jr nc, .asm_c56d
|
||||
jr nc, .numSafariBallsTwoDigits
|
||||
coord hl, 5, 3
|
||||
ld a, " "
|
||||
ld [hl], a
|
||||
.asm_c56d
|
||||
.numSafariBallsTwoDigits
|
||||
coord hl, 6, 3
|
||||
ld de, W_NUMSAFARIBALLS
|
||||
lb bc, 1, 2
|
||||
jp PrintNumber
|
||||
|
||||
SafariSteps: ; c579 (3:4579)
|
||||
SafariSteps: ; c2c4 (3:42c4)
|
||||
db "/500@"
|
||||
|
||||
SafariBallText: ; c57e (3:457e)
|
||||
SafariBallText: ; c5c9 (3:45c9)
|
||||
db "BALL×× @"
|
||||
|
||||
GetTileAndCoordsInFrontOfPlayer: ; c586 (3:4586)
|
||||
GetTileAndCoordsInFrontOfPlayer: ; c2d4 (3:42d4)
|
||||
call GetPredefRegisters
|
||||
|
||||
_GetTileAndCoordsInFrontOfPlayer: ; c589 (3:4589)
|
||||
_GetTileAndCoordsInFrontOfPlayer: ; c2d4 (3:42d4)
|
||||
ld a, [W_YCOORD]
|
||||
ld d, a
|
||||
ld a, [W_XCOORD]
|
||||
|
|
@ -2333,7 +2332,7 @@ _GetTileAndCoordsInFrontOfPlayer: ; c589 (3:4589)
|
|||
ld [wTileInFrontOfPlayer], a
|
||||
ret
|
||||
|
||||
GetTileTwoStepsInFrontOfPlayer: ; c5be (3:45be)
|
||||
GetTileTwoStepsInFrontOfPlayer: ; c309 (3:4309)
|
||||
xor a
|
||||
ld [$ffdb], a
|
||||
ld hl, W_YCOORD
|
||||
|
|
@ -2381,18 +2380,10 @@ GetTileTwoStepsInFrontOfPlayer: ; c5be (3:45be)
|
|||
ld [wTileInFrontOfPlayer], a
|
||||
ret
|
||||
|
||||
CheckForCollisionWhenPushingBoulder: ; c60b (3:460b)
|
||||
CheckForCollisionWhenPushingBoulder: ; c356 (3:4356)
|
||||
call GetTileTwoStepsInFrontOfPlayer
|
||||
ld hl, W_TILESETCOLLISIONPTR
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
.loop
|
||||
ld a, [hli]
|
||||
cp $ff
|
||||
jr z, .done ; if the tile two steps ahead is not passable
|
||||
cp c
|
||||
jr nz, .loop
|
||||
call IsTilePassable
|
||||
jr c, .done
|
||||
ld hl, TilePairCollisionsLand
|
||||
call CheckForTilePairCollisions2
|
||||
ld a, $ff
|
||||
|
|
@ -2407,7 +2398,7 @@ CheckForCollisionWhenPushingBoulder: ; c60b (3:460b)
|
|||
ret
|
||||
|
||||
; sets a to $ff if there is a collision and $00 if there is no collision
|
||||
CheckForBoulderCollisionWithSprites: ; c636 (3:4636)
|
||||
CheckForBoulderCollisionWithSprites: ; c378 (3:4378)
|
||||
ld a, [wBoulderSpriteIndex]
|
||||
dec a
|
||||
swap a
|
||||
|
|
@ -2484,10 +2475,16 @@ CheckForBoulderCollisionWithSprites: ; c636 (3:4636)
|
|||
xor a
|
||||
ret
|
||||
|
||||
ApplyOutOfBattlePoisonDamage: ; c69c (3:469c)
|
||||
ApplyOutOfBattlePoisonDamage: ; c3de (3:43de)
|
||||
ld a, [wd730]
|
||||
add a
|
||||
jp c, .noBlackOut ; no black out if joypad states are being simulated
|
||||
ld a, [wd493]
|
||||
bit 7, a
|
||||
jp nz, .noBlackOut
|
||||
ld a, [wd72e]
|
||||
bit 6, a
|
||||
jp nz, .noBlackout
|
||||
ld a, [wPartyCount]
|
||||
and a
|
||||
jp z, .noBlackOut
|
||||
|
|
@ -2540,6 +2537,12 @@ ApplyOutOfBattlePoisonDamage: ; c69c (3:469c)
|
|||
ld a, $d0
|
||||
ld [hSpriteIndexOrTextID], a
|
||||
call DisplayTextID
|
||||
callab Func_fce18
|
||||
jr nc, .curMonNotPlayerPikachu
|
||||
ld e, $3
|
||||
callab Func_f0000
|
||||
callab_Func_f430a_ld_d $9
|
||||
.curMonNotPlayerPikachu
|
||||
pop de
|
||||
pop hl
|
||||
.nextMon
|
||||
|
|
@ -2597,30 +2600,47 @@ ApplyOutOfBattlePoisonDamage: ; c69c (3:469c)
|
|||
ld [wOutOfBattleBlackout], a
|
||||
ret
|
||||
|
||||
LoadTilesetHeader: ; c754 (3:4754)
|
||||
Func_c4c7: ; c4c7 (3:44c7)
|
||||
ld a, [wStepCounter]
|
||||
and a
|
||||
jr nz, .asm_c4de
|
||||
call Random
|
||||
and $1
|
||||
jr z, .asm_c4de
|
||||
callab_Func_f430a_ld_d $6
|
||||
.asm_c4de
|
||||
ld hl, wd471
|
||||
ld a, [hl]
|
||||
cp $80
|
||||
jr z, .asm_c4ef
|
||||
jr c, .asm_c4ea
|
||||
dec a
|
||||
dec a
|
||||
.asm_c4ea
|
||||
inc a
|
||||
ld [hl], a
|
||||
cp $80
|
||||
ret nz
|
||||
.asm_c4ef
|
||||
xor a
|
||||
ld [wd49c], a
|
||||
ret
|
||||
|
||||
LoadTilesetHeader: ; c4f4 (3:44f4)
|
||||
call GetPredefRegisters
|
||||
push hl
|
||||
ld d, 0
|
||||
ld a, [W_CURMAPTILESET]
|
||||
add a
|
||||
add a
|
||||
ld b, a
|
||||
add a
|
||||
add b ; a = tileset * 12
|
||||
jr nc, .noCarry
|
||||
inc d
|
||||
.noCarry
|
||||
ld e, a
|
||||
ld hl, Tilesets
|
||||
add hl, de
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld de, W_TILESETBANK
|
||||
ld c, $b
|
||||
.copyTilesetHeaderLoop
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
dec c
|
||||
jr nz, .copyTilesetHeaderLoop
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld a, [hl]
|
||||
ld [hTilesetType], a
|
||||
xor a
|
||||
|
|
@ -2634,13 +2654,13 @@ LoadTilesetHeader: ; c754 (3:4754)
|
|||
call IsInArray
|
||||
pop de
|
||||
pop hl
|
||||
jr c, .asm_c797
|
||||
jr c, .notDungeonTileset
|
||||
ld a, [W_CURMAPTILESET]
|
||||
ld b, a
|
||||
ld a, [hPreviousTileset]
|
||||
cp b
|
||||
jr z, .done
|
||||
.asm_c797
|
||||
.notDungeonTileset
|
||||
ld a, [wDestinationWarpID]
|
||||
cp $ff
|
||||
jr z, .done
|
||||
|
|
@ -2658,7 +2678,7 @@ INCLUDE "data/dungeon_tilesets.asm"
|
|||
|
||||
INCLUDE "data/tileset_headers.asm"
|
||||
|
||||
IncrementDayCareMonExp: ; c8de (3:48de)
|
||||
IncrementDayCareMonExp: ; c684 (3:4684)
|
||||
ld a, [W_DAYCARE_IN_USE]
|
||||
and a
|
||||
ret z
|
||||
|
|
|
|||
6
wram.asm
6
wram.asm
|
|
@ -2532,7 +2532,11 @@ wd473:: ds 1
|
|||
|
||||
wd47a:: ds 1
|
||||
|
||||
ds 30
|
||||
ds 24
|
||||
|
||||
wd493:: ds 1
|
||||
|
||||
ds 5
|
||||
|
||||
wUnknownSerialFlag_d499:: ds 1 ; d498
|
||||
wUnknownSerialFlag_d49a:: ds 1 ; d499
|
||||
|
|
|
|||
446
yellow/main.asm
446
yellow/main.asm
|
|
@ -344,10 +344,452 @@ IsPlayerStandingOnDoorTileOrWarpTile: ; c1e6 (3:41e6)
|
|||
ret
|
||||
|
||||
INCLUDE "data/warp_tile_ids.asm"
|
||||
|
||||
PrintSafariZoneSteps: ; c27b (3:427b)
|
||||
dr $c27b,$c2d4
|
||||
ld a, [W_CURMAP]
|
||||
cp SAFARI_ZONE_EAST
|
||||
ret c
|
||||
cp UNKNOWN_DUNGEON_2
|
||||
ret nc
|
||||
coord hl, 0, 0
|
||||
lb bc, 3, 7
|
||||
call TextBoxBorder
|
||||
coord hl, 1, 1
|
||||
ld de, wSafariSteps
|
||||
lb bc, 2, 3
|
||||
call PrintNumber
|
||||
coord hl, 4, 1
|
||||
ld de, SafariSteps
|
||||
call PlaceString
|
||||
coord hl, 1, 3
|
||||
ld de, SafariBallText
|
||||
call PlaceString
|
||||
ld a, [W_NUMSAFARIBALLS]
|
||||
cp 10
|
||||
jr nc, .numSafariBallsTwoDigits
|
||||
coord hl, 5, 3
|
||||
ld a, " "
|
||||
ld [hl], a
|
||||
.numSafariBallsTwoDigits
|
||||
coord hl, 6, 3
|
||||
ld de, W_NUMSAFARIBALLS
|
||||
lb bc, 1, 2
|
||||
jp PrintNumber
|
||||
|
||||
SafariSteps: ; c2c4 (3:42c4)
|
||||
db "/500@"
|
||||
|
||||
SafariBallText: ; c5c9 (3:42c9)
|
||||
db "BALL×× @"
|
||||
|
||||
GetTileAndCoordsInFrontOfPlayer: ; c2d4 (3:42d1)
|
||||
call GetPredefRegisters
|
||||
|
||||
_GetTileAndCoordsInFrontOfPlayer: ; c2d4 (3:42d4)
|
||||
dr $c2d4,$cb62
|
||||
ld a, [W_YCOORD]
|
||||
ld d, a
|
||||
ld a, [W_XCOORD]
|
||||
ld e, a
|
||||
ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction
|
||||
and a ; cp SPRITE_FACING_DOWN
|
||||
jr nz, .notFacingDown
|
||||
; facing down
|
||||
aCoord 8, 11
|
||||
inc d
|
||||
jr .storeTile
|
||||
.notFacingDown
|
||||
cp SPRITE_FACING_UP
|
||||
jr nz, .notFacingUp
|
||||
; facing up
|
||||
aCoord 8, 7
|
||||
dec d
|
||||
jr .storeTile
|
||||
.notFacingUp
|
||||
cp SPRITE_FACING_LEFT
|
||||
jr nz, .notFacingLeft
|
||||
; facing left
|
||||
aCoord 6, 9
|
||||
dec e
|
||||
jr .storeTile
|
||||
.notFacingLeft
|
||||
cp SPRITE_FACING_RIGHT
|
||||
jr nz, .storeTile
|
||||
; facing right
|
||||
aCoord 10, 9
|
||||
inc e
|
||||
.storeTile
|
||||
ld c, a
|
||||
ld [wTileInFrontOfPlayer], a
|
||||
ret
|
||||
|
||||
GetTileTwoStepsInFrontOfPlayer: ; c309 (3:4309)
|
||||
xor a
|
||||
ld [$ffdb], a
|
||||
ld hl, W_YCOORD
|
||||
ld a, [hli]
|
||||
ld d, a
|
||||
ld e, [hl]
|
||||
ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction
|
||||
and a ; cp SPRITE_FACING_DOWN
|
||||
jr nz, .notFacingDown
|
||||
; facing down
|
||||
ld hl, $ffdb
|
||||
set 0, [hl]
|
||||
aCoord 8, 13
|
||||
inc d
|
||||
jr .storeTile
|
||||
.notFacingDown
|
||||
cp SPRITE_FACING_UP
|
||||
jr nz, .notFacingUp
|
||||
; facing up
|
||||
ld hl, $ffdb
|
||||
set 1, [hl]
|
||||
aCoord 8, 5
|
||||
dec d
|
||||
jr .storeTile
|
||||
.notFacingUp
|
||||
cp SPRITE_FACING_LEFT
|
||||
jr nz, .notFacingLeft
|
||||
; facing left
|
||||
ld hl, $ffdb
|
||||
set 2, [hl]
|
||||
aCoord 4, 9
|
||||
dec e
|
||||
jr .storeTile
|
||||
.notFacingLeft
|
||||
cp SPRITE_FACING_RIGHT
|
||||
jr nz, .storeTile
|
||||
; facing right
|
||||
ld hl, $ffdb
|
||||
set 3, [hl]
|
||||
aCoord 12, 9
|
||||
inc e
|
||||
.storeTile
|
||||
ld c, a
|
||||
ld [wTileInFrontOfBoulderAndBoulderCollisionResult], a
|
||||
ld [wTileInFrontOfPlayer], a
|
||||
ret
|
||||
|
||||
CheckForCollisionWhenPushingBoulder: ; c356 (3:4356)
|
||||
call GetTileTwoStepsInFrontOfPlayer
|
||||
call IsTilePassable
|
||||
jr c, .done
|
||||
ld hl, TilePairCollisionsLand
|
||||
call CheckForTilePairCollisions2
|
||||
ld a, $ff
|
||||
jr c, .done ; if there is an elevation difference between the current tile and the one two steps ahead
|
||||
ld a, [wTileInFrontOfBoulderAndBoulderCollisionResult]
|
||||
cp $15 ; stairs tile
|
||||
ld a, $ff
|
||||
jr z, .done ; if the tile two steps ahead is stairs
|
||||
call CheckForBoulderCollisionWithSprites
|
||||
.done
|
||||
ld [wTileInFrontOfBoulderAndBoulderCollisionResult], a
|
||||
ret
|
||||
|
||||
; sets a to $ff if there is a collision and $00 if there is no collision
|
||||
CheckForBoulderCollisionWithSprites: ; c378 (3:4378)
|
||||
ld a, [wBoulderSpriteIndex]
|
||||
dec a
|
||||
swap a
|
||||
ld d, 0
|
||||
ld e, a
|
||||
ld hl, wSpriteStateData2 + $14
|
||||
add hl, de
|
||||
ld a, [hli] ; map Y position
|
||||
ld [$ffdc], a
|
||||
ld a, [hl] ; map X position
|
||||
ld [$ffdd], a
|
||||
ld a, [W_NUMSPRITES]
|
||||
ld c, a
|
||||
ld de, $f
|
||||
ld hl, wSpriteStateData2 + $14
|
||||
ld a, [$ffdb]
|
||||
and $3 ; facing up or down?
|
||||
jr z, .pushingHorizontallyLoop
|
||||
.pushingVerticallyLoop
|
||||
inc hl
|
||||
ld a, [$ffdd]
|
||||
cp [hl]
|
||||
jr nz, .nextSprite1 ; if X coordinates don't match
|
||||
dec hl
|
||||
ld a, [hli]
|
||||
ld b, a
|
||||
ld a, [$ffdb]
|
||||
rrca
|
||||
jr c, .pushingDown
|
||||
; pushing up
|
||||
ld a, [$ffdc]
|
||||
dec a
|
||||
jr .compareYCoords
|
||||
.pushingDown
|
||||
ld a, [$ffdc]
|
||||
inc a
|
||||
.compareYCoords
|
||||
cp b
|
||||
jr z, .failure
|
||||
.nextSprite1
|
||||
dec c
|
||||
jr z, .success
|
||||
add hl, de
|
||||
jr .pushingVerticallyLoop
|
||||
.pushingHorizontallyLoop
|
||||
ld a, [hli]
|
||||
ld b, a
|
||||
ld a, [$ffdc]
|
||||
cp b
|
||||
jr nz, .nextSprite2
|
||||
ld b, [hl]
|
||||
ld a, [$ffdb]
|
||||
bit 2, a
|
||||
jr nz, .pushingLeft
|
||||
; pushing right
|
||||
ld a, [$ffdd]
|
||||
inc a
|
||||
jr .compareXCoords
|
||||
.pushingLeft
|
||||
ld a, [$ffdd]
|
||||
dec a
|
||||
.compareXCoords
|
||||
cp b
|
||||
jr z, .failure
|
||||
.nextSprite2
|
||||
dec c
|
||||
jr z, .success
|
||||
add hl, de
|
||||
jr .pushingHorizontallyLoop
|
||||
.failure
|
||||
ld a, $ff
|
||||
ret
|
||||
.success
|
||||
xor a
|
||||
ret
|
||||
|
||||
ApplyOutOfBattlePoisonDamage: ; c3de (3:43de)
|
||||
ld a, [wd730]
|
||||
add a
|
||||
jp c, .noBlackOut ; no black out if joypad states are being simulated
|
||||
ld a, [wd493]
|
||||
bit 7, a
|
||||
jp nz, .noBlackOut
|
||||
ld a, [wd72e]
|
||||
bit 6, a
|
||||
jp nz, .noBlackOut
|
||||
ld a, [wPartyCount]
|
||||
and a
|
||||
jp z, .noBlackOut
|
||||
call IncrementDayCareMonExp
|
||||
call Func_c4c7
|
||||
ld a, [wStepCounter]
|
||||
and $3 ; is the counter a multiple of 4?
|
||||
jp nz, .skipPoisonEffectAndSound ; only apply poison damage every fourth step
|
||||
ld [wWhichPokemon], a
|
||||
ld hl, wPartyMon1Status
|
||||
ld de, wPartySpecies
|
||||
.applyDamageLoop
|
||||
ld a, [hl]
|
||||
and (1 << PSN)
|
||||
jr z, .nextMon2 ; not poisoned
|
||||
dec hl
|
||||
dec hl
|
||||
ld a, [hld]
|
||||
ld b, a
|
||||
ld a, [hli]
|
||||
or b
|
||||
jr z, .nextMon ; already fainted
|
||||
; subtract 1 from HP
|
||||
ld a, [hl]
|
||||
dec a
|
||||
ld [hld], a
|
||||
inc a
|
||||
jr nz, .noBorrow
|
||||
; borrow 1 from upper byte of HP
|
||||
dec [hl]
|
||||
inc hl
|
||||
jr .nextMon
|
||||
.noBorrow
|
||||
ld a, [hli]
|
||||
or [hl]
|
||||
jr nz, .nextMon ; didn't faint from damage
|
||||
; the mon fainted from the damage
|
||||
push hl
|
||||
inc hl
|
||||
inc hl
|
||||
ld [hl], a
|
||||
ld a, [de]
|
||||
ld [wd11e], a
|
||||
push de
|
||||
ld a, [wWhichPokemon]
|
||||
ld hl, wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
xor a
|
||||
ld [wJoyIgnore], a
|
||||
call EnableAutoTextBoxDrawing
|
||||
ld a, $d0
|
||||
ld [hSpriteIndexOrTextID], a
|
||||
call DisplayTextID
|
||||
callab Func_fce18
|
||||
jr nc, .curMonNotPlayerPikachu
|
||||
ld e, $3
|
||||
callab Func_f0000
|
||||
calladb_Func_f430a $9
|
||||
.curMonNotPlayerPikachu
|
||||
pop de
|
||||
pop hl
|
||||
.nextMon
|
||||
inc hl
|
||||
inc hl
|
||||
.nextMon2
|
||||
inc de
|
||||
ld a, [de]
|
||||
inc a
|
||||
jr z, .applyDamageLoopDone
|
||||
ld bc, wPartyMon2 - wPartyMon1
|
||||
add hl, bc
|
||||
push hl
|
||||
ld hl, wWhichPokemon
|
||||
inc [hl]
|
||||
pop hl
|
||||
jr .applyDamageLoop
|
||||
.applyDamageLoopDone
|
||||
ld hl, wPartyMon1Status
|
||||
ld a, [wPartyCount]
|
||||
ld d, a
|
||||
ld e, 0
|
||||
.countPoisonedLoop
|
||||
ld a, [hl]
|
||||
and (1 << PSN)
|
||||
or e
|
||||
ld e, a
|
||||
ld bc, wPartyMon2 - wPartyMon1
|
||||
add hl, bc
|
||||
dec d
|
||||
jr nz, .countPoisonedLoop
|
||||
ld a, e
|
||||
and a ; are any party members poisoned?
|
||||
jr z, .skipPoisonEffectAndSound
|
||||
ld b, $2
|
||||
predef ChangeBGPalColor0_4Frames ; change BG white to dark grey for 4 frames
|
||||
ld a, SFX_POISONED
|
||||
call PlaySound
|
||||
.skipPoisonEffectAndSound
|
||||
predef AnyPartyAlive
|
||||
ld a, d
|
||||
and a
|
||||
jr nz, .noBlackOut
|
||||
call EnableAutoTextBoxDrawing
|
||||
ld a, $d1
|
||||
ld [hSpriteIndexOrTextID], a
|
||||
call DisplayTextID
|
||||
ld hl, wd72e
|
||||
set 5, [hl]
|
||||
ld a, $ff
|
||||
jr .done
|
||||
.noBlackOut
|
||||
xor a
|
||||
.done
|
||||
ld [wOutOfBattleBlackout], a
|
||||
ret
|
||||
|
||||
Func_c4c7: ; c4c7 (3:44c7)
|
||||
ld a, [wStepCounter]
|
||||
and a
|
||||
jr nz, .asm_c4de
|
||||
call Random
|
||||
and $1
|
||||
jr z, .asm_c4de
|
||||
calladb_Func_f430a $6
|
||||
.asm_c4de
|
||||
ld hl, wd471
|
||||
ld a, [hl]
|
||||
cp $80
|
||||
jr z, .asm_c4ef
|
||||
jr c, .asm_c4ea
|
||||
dec a
|
||||
dec a
|
||||
.asm_c4ea
|
||||
inc a
|
||||
ld [hl], a
|
||||
cp $80
|
||||
ret nz
|
||||
.asm_c4ef
|
||||
xor a
|
||||
ld [wd49c], a
|
||||
ret
|
||||
|
||||
LoadTilesetHeader: ; c4f4 (3:44f4)
|
||||
call GetPredefRegisters
|
||||
push hl
|
||||
ld d, 0
|
||||
ld a, [W_CURMAPTILESET]
|
||||
add a
|
||||
add a
|
||||
ld e, a
|
||||
ld hl, Tilesets
|
||||
add hl, de
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld de, W_TILESETBANK
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld a, [hl]
|
||||
ld [hTilesetType], a
|
||||
xor a
|
||||
ld [$ffd8], a
|
||||
pop hl
|
||||
ld a, [W_CURMAPTILESET]
|
||||
push hl
|
||||
push de
|
||||
ld hl, DungeonTilesets
|
||||
ld de, $1
|
||||
call IsInArray
|
||||
pop de
|
||||
pop hl
|
||||
jr c, .notDungeonTileset
|
||||
ld a, [W_CURMAPTILESET]
|
||||
ld b, a
|
||||
ld a, [hPreviousTileset]
|
||||
cp b
|
||||
jr z, .done
|
||||
.notDungeonTileset
|
||||
ld a, [wDestinationWarpID]
|
||||
cp $ff
|
||||
jr z, .done
|
||||
call LoadDestinationWarpPosition
|
||||
ld a, [W_YCOORD]
|
||||
and $1
|
||||
ld [W_YBLOCKCOORD], a
|
||||
ld a, [W_XCOORD]
|
||||
and $1
|
||||
ld [W_XBLOCKCOORD], a
|
||||
.done
|
||||
ret
|
||||
|
||||
INCLUDE "data/dungeon_tilesets.asm"
|
||||
|
||||
INCLUDE "data/tileset_headers.asm"
|
||||
|
||||
IncrementDayCareMonExp: ; c684 (3:4684)
|
||||
ld a, [W_DAYCARE_IN_USE]
|
||||
and a
|
||||
ret z
|
||||
ld hl, wDayCareMonExp + 2
|
||||
inc [hl]
|
||||
ret nz
|
||||
dec hl
|
||||
inc [hl]
|
||||
ret nz
|
||||
dec hl
|
||||
inc [hl]
|
||||
ld a, [hl]
|
||||
cp $50
|
||||
ret c
|
||||
ld a, $50
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
INCLUDE "data/hide_show_data.asm"
|
||||
|
||||
LoadWildData: ; cb62 (3:4b62)
|
||||
dr $cb62,$d2ed
|
||||
UseItem_: ; d2ed (3:52ed)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user