Label border dimension fields

This commit is contained in:
GriffinR 2020-03-15 01:24:31 -04:00
parent 6af8c04d8f
commit de53dabab2
2 changed files with 37 additions and 37 deletions

View File

@ -43,8 +43,8 @@ struct MapLayout
/*0x0c*/ u16 *map;
/*0x10*/ struct Tileset *primaryTileset;
/*0x14*/ struct Tileset *secondaryTileset;
/*0x18*/ u8 unk18;
/*0x19*/ u8 unk19;
/*0x18*/ u8 borderWidth;
/*0x19*/ u8 borderHeight;
};
struct BackupMapLayout

View File

@ -365,43 +365,43 @@ union Block
u16 value;
};
#define MapGridGetBorderTileAt(x, y) ({ \
u16 block; \
s32 xprime; \
s32 yprime; \
\
struct MapLayout *mapLayout = gMapHeader.mapLayout; \
\
xprime = x - 7; \
xprime += 8 * mapLayout->unk18; \
xprime %= mapLayout->unk18; \
\
yprime = y - 7; \
yprime += 8 * mapLayout->unk19; \
yprime %= mapLayout->unk19; \
\
block = mapLayout->border[xprime + yprime * mapLayout->unk18]; \
block |= 0xC00; \
block; \
#define MapGridGetBorderTileAt(x, y) ({ \
u16 block; \
s32 xprime; \
s32 yprime; \
\
struct MapLayout *mapLayout = gMapHeader.mapLayout; \
\
xprime = x - 7; \
xprime += 8 * mapLayout->borderWidth; \
xprime %= mapLayout->borderWidth; \
\
yprime = y - 7; \
yprime += 8 * mapLayout->borderHeight; \
yprime %= mapLayout->borderHeight; \
\
block = mapLayout->border[xprime + yprime * mapLayout->borderWidth]; \
block |= METATILE_COLLISION_MASK; \
block; \
})
#define MapGridGetBorderTileAt2(x, y) ({ \
u16 block; \
s32 xprime; \
s32 yprime; \
\
struct MapLayout *mapLayout = gMapHeader.mapLayout; \
\
xprime = x - 7; \
xprime += 8 * mapLayout->unk18; \
xprime %= mapLayout->unk18; \
\
yprime = y - 7; \
yprime += 8 * mapLayout->unk19; \
yprime %= mapLayout->unk19; \
\
block = mapLayout->border[xprime + yprime * mapLayout->unk18] | 0xC00; \
block; \
#define MapGridGetBorderTileAt2(x, y) ({ \
u16 block; \
s32 xprime; \
s32 yprime; \
\
struct MapLayout *mapLayout = gMapHeader.mapLayout; \
\
xprime = x - 7; \
xprime += 8 * mapLayout->borderWidth; \
xprime %= mapLayout->borderWidth; \
\
yprime = y - 7; \
yprime += 8 * mapLayout->borderHeight; \
yprime %= mapLayout->borderHeight; \
\
block = mapLayout->border[xprime + yprime * mapLayout->borderWidth] | METATILE_COLLISION_MASK; \
block; \
})
#define AreCoordsWithinMapGridBounds(x, y) (x >= 0 && x < VMap.Xsize && y >= 0 && y < VMap.Ysize)