diff options
Diffstat (limited to 'maps/second_map_headers.asm')
-rw-r--r-- | maps/second_map_headers.asm | 89 |
1 files changed, 88 insertions, 1 deletions
diff --git a/maps/second_map_headers.asm b/maps/second_map_headers.asm index b58895f4b..e81c8c774 100644 --- a/maps/second_map_headers.asm +++ b/maps/second_map_headers.asm @@ -1,3 +1,90 @@ +map_header_2: macro +;\1: map label +;\2: map id +;\3: border block +;\4: connections: combo of NORTH, SOUTH, WEST, and/or EAST, or 0 for none +\1_SecondMapHeader:: + db \3 + db \2_HEIGHT, \2_WIDTH + db BANK(\1_BlockData) + dw \1_BlockData + db BANK(\1_MapScriptHeader) + dw \1_MapScriptHeader + dw \1_MapEventHeader + db \4 +endm + +connection: macro +if "\1" == "north" +;\2: map id +;\3: map label (eventually will be rolled into map id) +;\4: x +;\5: offset? +;\6: strip length +;\7: this map id + map \2 + dw \3_BlockData + \2_WIDTH * (\2_HEIGHT - 3) + \5 + dw OverworldMap + \4 + 3 + db \6 + db \2_WIDTH + db \2_HEIGHT * 2 - 1 + db (\4 - \5) * -2 + dw OverworldMap + \2_HEIGHT * (\2_WIDTH + 6) + 1 +endc + +if "\1" == "south" +;\2: map id +;\3: map label (eventually will be rolled into map id) +;\4: x +;\5: offset? +;\6: strip length +;\7: this map id + map \2 + dw \3_BlockData + \5 + dw OverworldMap + (\7_HEIGHT + 3) * (\7_WIDTH + 6) + \4 + 3 + db \6 + db \2_WIDTH + db 0 + db (\4 - \5) * -2 + dw OverworldMap + \2_WIDTH + 7 +endc + +if "\1" == "west" +;\2: map id +;\3: map label (eventually will be rolled into map id) +;\4: y +;\5: offset? +;\6: strip length +;\7: this map id + map \2 + dw \3_BlockData + (\2_WIDTH * \5) + \2_WIDTH - 3 + dw OverworldMap + (\7_WIDTH + 6) * (\4 + 3) + db \6 + db \2_WIDTH + db (\4 - \5) * -2 + db \2_WIDTH * 2 - 1 + dw OverworldMap + \2_WIDTH * 2 + 6 +endc + +if "\1" == "east" +;\2: map id +;\3: map label (eventually will be rolled into map id) +;\4: y +;\5: offset? +;\6: strip length +;\7: this map id + map \2 + dw \3_BlockData + (\2_WIDTH * \5) + dw OverworldMap + (\7_WIDTH + 6) * (\4 + 3 + 1) - 3 + db \6 + db \2_WIDTH + db (\4 - \5) * -2 + db 0 + dw OverworldMap + \2_WIDTH + 7 +endc +endm + + map_header_2 NewBarkTown, NEW_BARK_TOWN, $5, WEST | EAST connection west, ROUTE_29, Route29, 0, 0, 9, NEW_BARK_TOWN connection east, ROUTE_27, Route27, 0, 0, 9, NEW_BARK_TOWN @@ -427,7 +514,7 @@ map_header_2 EarlsPokemonAcademy, EARLS_POKEMON_ACADEMY, $0, 0 map_header_2 VioletNicknameSpeechHouse, VIOLET_NICKNAME_SPEECH_HOUSE, $0, 0 map_header_2 VioletPokecenter1F, VIOLET_POKECENTER_1F, $0, 0 - map_header_2 VioletOnixTradeHouse, VIOLET_ONIX_TRADE_HOUSE, $0, 0 + map_header_2 VioletKylesHouse, VIOLET_KYLES_HOUSE, $0, 0 map_header_2 Route32RuinsOfAlphGate, ROUTE_32_RUINS_OF_ALPH_GATE, $0, 0 map_header_2 Route32Pokecenter1F, ROUTE_32_POKECENTER_1F, $0, 0 map_header_2 Route35GoldenrodGate, ROUTE_35_GOLDENROD_GATE, $0, 0 |