mirror of https://github.com/pret/pokeemerald.git
Updated Set Metatile IDs From Another Map (markdown)
parent
2ba1f80ebf
commit
ae31cb71b2
|
@ -6,19 +6,19 @@ credit to ghoulslash
|
||||||
Open fieldmap.c and add this function somewhere:
|
Open fieldmap.c and add this function somewhere:
|
||||||
```c
|
```c
|
||||||
extern void DrawWholeMapView(void);
|
extern void DrawWholeMapView(void);
|
||||||
void CopyMetatileIdsFromMapLayout(u16 mapGroup, u16 mapNum, const u8 pos[][2])
|
void CopyMetatileIdsFromMapLayout(u16 mapGroup, u16 mapNum, const struct UCoords8 *pos)
|
||||||
{
|
{
|
||||||
u32 i, block, x, y;
|
u32 i, block, x, y;
|
||||||
struct MapLayout const *layout = Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum)->mapLayout;
|
struct MapLayout const *layout = Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum)->mapLayout;
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
do {
|
do {
|
||||||
x = pos[i][0];
|
x = pos[i].x;
|
||||||
y = pos[i][1];
|
y = pos[i].y;
|
||||||
block = layout->map[x + layout->width * y];
|
block = layout->map[x + layout->width * y];
|
||||||
MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, block);
|
MapGridSetMetatileIdAt(x + MAP_OFFSET, y + MAP_OFFSET, block);
|
||||||
i++;
|
i++;
|
||||||
} while (pos[i][0] != 0xFF);
|
} while (pos[i].x != 0xFF);
|
||||||
|
|
||||||
DrawWholeMapView();
|
DrawWholeMapView();
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,7 @@ void CopyMetatileIdsFromMapLayout(u16 mapGroup, u16 mapNum, const u8 pos[][2])
|
||||||
It works by taking a map group and number and array of (x,y) positions and copies them into the current map from the given layout. An example of the `pos` argument:
|
It works by taking a map group and number and array of (x,y) positions and copies them into the current map from the given layout. An example of the `pos` argument:
|
||||||
- If I want to copy the first 2 columns of a map from y positions 0 through 7:
|
- If I want to copy the first 2 columns of a map from y positions 0 through 7:
|
||||||
```c
|
```c
|
||||||
static const u8 sTestPositions[][2] = {
|
static const struct UCoords8 sTestPositions[] = {
|
||||||
{0, 0}, {0, 1}, {0, 2}, {0, 3}, {0, 4}, {0, 5}, {0, 6}, {0, 7},
|
{0, 0}, {0, 1}, {0, 2}, {0, 3}, {0, 4}, {0, 5}, {0, 6}, {0, 7},
|
||||||
{1, 0}, {1, 1}, {1, 2}, {1, 3}, {1, 4}, {1, 5}, {1, 6}, {1, 7},
|
{1, 0}, {1, 1}, {1, 2}, {1, 3}, {1, 4}, {1, 5}, {1, 6}, {1, 7},
|
||||||
{0xFF, 0xFF}, // to signify the end of the array
|
{0xFF, 0xFF}, // to signify the end of the array
|
||||||
|
|
Loading…
Reference in New Issue