Clean up sSpriteRanges
This commit is contained in:
+7
-11
@@ -10,8 +10,8 @@
|
|||||||
|
|
||||||
#define SET_SPRITE_TILE_RANGE(index, start, count) \
|
#define SET_SPRITE_TILE_RANGE(index, start, count) \
|
||||||
{ \
|
{ \
|
||||||
sSpriteTileRanges[index * 2] = start; \
|
sSpriteTileRanges[index][0] = start; \
|
||||||
(sSpriteTileRanges + 1)[index * 2] = count; \
|
sSpriteTileRanges[index][1] = count; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define ALLOC_SPRITE_TILE(n) \
|
#define ALLOC_SPRITE_TILE(n) \
|
||||||
@@ -266,7 +266,7 @@ static const struct OamDimensions sOamDimensions[3][4] =
|
|||||||
};
|
};
|
||||||
|
|
||||||
static u16 sSpriteTileRangeTags[MAX_SPRITES];
|
static u16 sSpriteTileRangeTags[MAX_SPRITES];
|
||||||
static u16 sSpriteTileRanges[MAX_SPRITES * 2];
|
static u16 sSpriteTileRanges[MAX_SPRITES][2];
|
||||||
static struct AffineAnimState sAffineAnimStates[OAM_MATRIX_COUNT];
|
static struct AffineAnimState sAffineAnimStates[OAM_MATRIX_COUNT];
|
||||||
static u16 sSpritePaletteTags[16];
|
static u16 sSpritePaletteTags[16];
|
||||||
|
|
||||||
@@ -1502,14 +1502,10 @@ void FreeSpriteTilesByTag(u16 tag)
|
|||||||
if (index != 0xFF)
|
if (index != 0xFF)
|
||||||
{
|
{
|
||||||
u16 i;
|
u16 i;
|
||||||
u16 *rangeStarts;
|
|
||||||
u16 *rangeCounts;
|
|
||||||
u16 start;
|
u16 start;
|
||||||
u16 count;
|
u16 count;
|
||||||
rangeStarts = sSpriteTileRanges;
|
start = sSpriteTileRanges[index][0];
|
||||||
start = rangeStarts[index * 2];
|
count = sSpriteTileRanges[index][1];
|
||||||
rangeCounts = sSpriteTileRanges + 1;
|
|
||||||
count = rangeCounts[index * 2];
|
|
||||||
|
|
||||||
for (i = start; i < start + count; i++)
|
for (i = start; i < start + count; i++)
|
||||||
FREE_SPRITE_TILE(i);
|
FREE_SPRITE_TILE(i);
|
||||||
@@ -1534,7 +1530,7 @@ u16 GetSpriteTileStartByTag(u16 tag)
|
|||||||
u8 index = IndexOfSpriteTileTag(tag);
|
u8 index = IndexOfSpriteTileTag(tag);
|
||||||
if (index == 0xFF)
|
if (index == 0xFF)
|
||||||
return TAG_NONE;
|
return TAG_NONE;
|
||||||
return sSpriteTileRanges[index * 2];
|
return sSpriteTileRanges[index][0];
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 IndexOfSpriteTileTag(u16 tag)
|
u8 IndexOfSpriteTileTag(u16 tag)
|
||||||
@@ -1554,7 +1550,7 @@ u16 GetSpriteTileTagByTileStart(u16 start)
|
|||||||
|
|
||||||
for (i = 0; i < MAX_SPRITES; i++)
|
for (i = 0; i < MAX_SPRITES; i++)
|
||||||
{
|
{
|
||||||
if (sSpriteTileRangeTags[i] != TAG_NONE && sSpriteTileRanges[i * 2] == start)
|
if (sSpriteTileRangeTags[i] != TAG_NONE && sSpriteTileRanges[i][0] == start)
|
||||||
return sSpriteTileRangeTags[i];
|
return sSpriteTileRangeTags[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user