summaryrefslogtreecommitdiff
path: root/src/starter_choose.c
diff options
context:
space:
mode:
authoryenatch <yenatch@gmail.com>2017-03-22 18:34:29 -0400
committeryenatch <yenatch@gmail.com>2017-03-22 18:34:29 -0400
commit7acbfe40778bfbd03b0e2d357efef9ee9b0a34e9 (patch)
tree90c0b95146f3d768b536658eac6a63ff9adcaaec /src/starter_choose.c
parentc0a27d5455014bfe54f7ea73e8a38ce0ed8da6da (diff)
parente3c26e52ae6ab881ade913ca1fad2cd9629bbcb1 (diff)
Merge remote-tracking branch 'origin/master'
Conflicts: Makefile
Diffstat (limited to 'src/starter_choose.c')
-rw-r--r--src/starter_choose.c380
1 files changed, 282 insertions, 98 deletions
diff --git a/src/starter_choose.c b/src/starter_choose.c
index 9bd817cce..63d153ebd 100644
--- a/src/starter_choose.c
+++ b/src/starter_choose.c
@@ -1,17 +1,18 @@
#include "global.h"
#include "starter_choose.h"
#include "asm.h"
+#include "decompress.h"
#include "main.h"
#include "menu.h"
#include "palette.h"
#include "pokedex.h"
#include "songs.h"
#include "sound.h"
+#include "species.h"
+#include "sprite.h"
#include "string_util.h"
#include "task.h"
#include "trig.h"
-#include "decompress.h"
-#include "sprite.h"
struct MonCoords
{
@@ -19,32 +20,219 @@ struct MonCoords
};
extern void * const gUnknown_081FAF4C[];
-extern const u8 gStarterChoose_PokeballCoords[][2];
-extern u8 gBirchHelpGfx[];
-extern u8 gBirchBagTilemap[];
-extern u8 gBirchGrassTilemap[];
-extern struct SpriteSheet gUnknown_083F7794;
-extern struct SpriteSheet gUnknown_083F77A4;
-extern u8 gBirchBagGrassPal[];
-extern const u8 gStarterChoose_LabelCoords[][2];
-extern u16 gStarterMons[];
-extern union AffineAnimCmd *gSpriteAffineAnimTable_83F778C[];
-extern u8 gOtherText_DoYouChoosePoke[];
+extern const u8 gOtherText_DoYouChoosePoke[];
extern u16 gScriptResult;
-extern u8 gSpeciesNames[][11];
-extern u8 gOtherText_Poke[];
+extern const u8 gSpeciesNames[][11];
+extern const u8 gOtherText_Poke[];
extern const struct SpriteSheet gMonFrontPicTable[];
extern const struct MonCoords gMonFrontPicCoords[];
extern const struct SpritePalette gMonPaletteTable[];
-extern u8 gUnknown_083F76E4[][2];
-extern u8 gOtherText_BirchInTrouble[];
-
-extern struct SpriteTemplate gSpriteTemplate_83F77E4;
-extern struct SpriteTemplate gSpriteTemplate_83F77CC;
-extern struct SpritePalette gUnknown_083F77B4[];
-extern struct SpriteTemplate gSpriteTemplate_83F77FC;
+extern const u8 gOtherText_BirchInTrouble[];
extern struct SpriteTemplate gUnknown_02024E8C;
+//--------------------------------------------------
+// Graphics Data
+//--------------------------------------------------
+
+const u16 gBirchBagGrassPal[][16] =
+{
+ INCBIN_U16("graphics/misc/birch_bag.gbapal"),
+ INCBIN_U16("graphics/misc/birch_grass.gbapal"),
+};
+static const u16 gBirchBallarrow_Pal[] = INCBIN_U16("graphics/misc/birch_ballarrow.gbapal");
+static const u16 gBirchCircle_Pal[] = INCBIN_U16("graphics/misc/birch_circle.gbapal");
+const u8 gBirchBagTilemap[] = INCBIN_U8("graphics/misc/birch_bag_map.bin.lz");
+const u8 gBirchGrassTilemap[] = INCBIN_U8("graphics/misc/birch_grass_map.bin.lz");
+const u8 gBirchHelpGfx[] = INCBIN_U8("graphics/misc/birch_help.4bpp.lz");
+static const u8 gBirchBallarrow_Gfx[] = INCBIN_U8("graphics/misc/birch_ballarrow.4bpp.lz");
+static const u8 gBirchCircle_Gfx[] = INCBIN_U8("graphics/misc/birch_circle.4bpp.lz");
+static const u8 gStarterChoose_PokeballCoords[][2] =
+{
+ {60, 64},
+ {120, 88},
+ {180, 64},
+};
+static const u8 gStarterChoose_LabelCoords[][2] =
+{
+ {0, 9},
+ {16, 10},
+ {8, 4},
+};
+static const u16 sStarterMons[] = {SPECIES_TREECKO, SPECIES_TORCHIC, SPECIES_MUDKIP};
+static const struct OamData gOamData_83F76CC =
+{
+ .y = 160,
+ .affineMode = 0,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 2,
+ .tileNum = 0,
+ .priority = 1,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+static const struct OamData gOamData_83F76D4 =
+{
+ .y = 160,
+ .affineMode = 0,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 2,
+ .tileNum = 0,
+ .priority = 1,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+static const struct OamData gOamData_83F76DC =
+{
+ .y = 160,
+ .affineMode = 3,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 3,
+ .tileNum = 0,
+ .priority = 1,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+static const u8 gUnknown_083F76E4[][2] =
+{
+ {60, 32},
+ {120, 56},
+ {180, 32},
+ {0, 0},
+};
+static const union AnimCmd gSpriteAnim_83F76EC[] =
+{
+ ANIMCMD_FRAME(48, 30),
+ ANIMCMD_END,
+};
+static const union AnimCmd gSpriteAnim_83F76F4[] =
+{
+ ANIMCMD_FRAME(0, 30),
+ ANIMCMD_END,
+};
+static const union AnimCmd gSpriteAnim_83F76FC[] =
+{
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(0, 32),
+ ANIMCMD_FRAME(16, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(32, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(16, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(32, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_JUMP(0),
+};
+static const union AnimCmd gSpriteAnim_83F7744[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_END,
+};
+static const union AnimCmd *const gSpriteAnimTable_83F774C[] =
+{
+ gSpriteAnim_83F76EC,
+};
+static const union AnimCmd *const gSpriteAnimTable_83F7750[] =
+{
+ gSpriteAnim_83F76F4,
+ gSpriteAnim_83F76FC,
+};
+static const union AnimCmd *const gSpriteAnimTable_83F7758[] =
+{
+ gSpriteAnim_83F7744,
+};
+static const union AffineAnimCmd gSpriteAffineAnim_83F775C[] =
+{
+ AFFINEANIMCMD_FRAME(16, 16, 0, 0),
+ AFFINEANIMCMD_FRAME(16, 16, 0, 15),
+ AFFINEANIMCMD_END,
+};
+static const union AffineAnimCmd gSpriteAffineAnim_83F7774[] =
+{
+ AFFINEANIMCMD_FRAME(20, 20, 0, 0),
+ AFFINEANIMCMD_FRAME(20, 20, 0, 15),
+ AFFINEANIMCMD_END,
+};
+static const union AffineAnimCmd *const gSpriteAffineAnimTable_83F778C[] =
+{
+ gSpriteAffineAnim_83F775C,
+};
+static const union AffineAnimCmd *const gSpriteAffineAnimTable_83F7790[] =
+{
+ gSpriteAffineAnim_83F7774,
+};
+static const struct SpriteSheet gUnknown_083F7794[] =
+{
+ {gBirchBallarrow_Gfx, 0x0800, 0x1000},
+ {NULL},
+};
+static const struct SpriteSheet gUnknown_083F77A4[] =
+{
+ {gBirchCircle_Gfx, 0x0800, 0x1001},
+ {NULL},
+};
+const struct SpritePalette gUnknown_083F77B4[] =
+{
+ {gBirchBallarrow_Pal, 0x1000},
+ {gBirchCircle_Pal, 0x1001},
+ {NULL},
+};
+static void sub_810A62C(struct Sprite *sprite);
+static const struct SpriteTemplate gSpriteTemplate_83F77CC =
+{
+ .tileTag = 4096,
+ .paletteTag = 4096,
+ .oam = &gOamData_83F76CC,
+ .anims = gSpriteAnimTable_83F774C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A62C,
+};
+static void sub_810A68C(struct Sprite *sprite);
+static const struct SpriteTemplate gSpriteTemplate_83F77E4 =
+{
+ .tileTag = 4096,
+ .paletteTag = 4096,
+ .oam = &gOamData_83F76D4,
+ .anims = gSpriteAnimTable_83F7750,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A68C,
+};
+static void StarterPokemonSpriteAnimCallback(struct Sprite *sprite);
+static const struct SpriteTemplate gSpriteTemplate_83F77FC =
+{
+ .tileTag = 4097,
+ .paletteTag = 4097,
+ .oam = &gOamData_83F76DC,
+ .anims = gSpriteAnimTable_83F7758,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_83F7790,
+ .callback = StarterPokemonSpriteAnimCallback,
+};
+
static void MainCallback2(void);
static void Task_StarterChoose1(u8 taskId);
static void Task_StarterChoose2(u8 taskId);
@@ -60,19 +248,12 @@ static u8 CreatePokemonFrontSprite(u16, u8, u8);
#define STARTER_PKMN_POS_X 120
#define STARTER_PKMN_POS_Y 64
-//Task data
-enum {
- TD_STARTERSELECTION,
- TD_PKMN_SPRITE_ID,
- TD_CIRCLE_SPRITE_ID,
-};
-
//Retrieves one of the available starter Pokemon
u16 GetStarterPokemon(u16 n)
{
- if(n > 3)
+ if (n > 3)
n = 0;
- return gStarterMons[n];
+ return sStarterMons[n];
}
static void VblankCallback(void)
@@ -82,14 +263,18 @@ static void VblankCallback(void)
TransferPlttBuffer();
}
+#define tStarterSelection data[0]
+#define tPkmnSpriteId data[1]
+#define tCircleSpriteId data[2]
+
void CB2_ChooseStarter(void)
{
u16 savedIme;
u8 taskId;
u8 spriteId;
-
+
SetVBlankCallback(NULL);
-
+
REG_DISPCNT = 0;
REG_BG3CNT = 0;
REG_BG2CNT = 0;
@@ -103,11 +288,11 @@ void CB2_ChooseStarter(void)
REG_BG1VOFS = 0;
REG_BG0HOFS = 0;
REG_BG0VOFS = 0;
-
+
DmaFill16(3, 0, VRAM, VRAM_SIZE);
DmaFill32(3, 0, OAM, OAM_SIZE);
DmaFill16(3, 0, PLTT, PLTT_SIZE);
-
+
LZ77UnCompVram(&gBirchHelpGfx, (void *)VRAM);
LZ77UnCompVram(&gBirchBagTilemap, (void *)(VRAM + 0x3000));
LZ77UnCompVram(&gBirchGrassTilemap, (void *)(VRAM + 0x3800));
@@ -116,23 +301,23 @@ void CB2_ChooseStarter(void)
ResetSpriteData();
ResetPaletteFade();
FreeAllSpritePalettes();
- LoadPalette(gBirchBagGrassPal, 0, 0x40);
- LoadCompressedObjectPic(&gUnknown_083F7794);
- LoadCompressedObjectPic(&gUnknown_083F77A4);
+ LoadPalette(gBirchBagGrassPal, 0, sizeof(gBirchBagGrassPal));
+ LoadCompressedObjectPic(&gUnknown_083F7794[0]);
+ LoadCompressedObjectPic(&gUnknown_083F77A4[0]);
LoadSpritePalettes(gUnknown_083F77B4);
SetUpWindowConfig(&gWindowConfig_81E6C3C);
InitMenuWindow(&gWindowConfig_81E6CE4);
BeginNormalPaletteFade(-1, 0, 0x10, 0, 0);
-
+
savedIme = REG_IME;
REG_IME = 0;
REG_IE |= INTR_FLAG_VBLANK;
REG_IME = savedIme;
REG_DISPSTAT |= DISPSTAT_VBLANK_INTR;
-
+
SetVBlankCallback(VblankCallback);
SetMainCallback2(MainCallback2);
-
+
REG_WININ = 0x3F;
REG_WINOUT = 0x1F;
REG_WIN0H = 0;
@@ -144,14 +329,14 @@ void CB2_ChooseStarter(void)
REG_BG2CNT = 0x602;
REG_BG0CNT = 0x1F08;
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG2_ON | DISPCNT_BG3_ON | DISPCNT_OBJ_ON | DISPCNT_WIN0_ON;
-
+
taskId = CreateTask(Task_StarterChoose1, 0);
- gTasks[taskId].data[TD_STARTERSELECTION] = 1;
-
+ gTasks[taskId].tStarterSelection = 1;
+
//Create hand sprite
spriteId = CreateSprite(&gSpriteTemplate_83F77CC, 120, 56, 2);
gSprites[spriteId].data0 = taskId;
-
+
//Create three Pokeball sprites
spriteId = CreateSprite(
&gSpriteTemplate_83F77E4,
@@ -180,7 +365,7 @@ static void MainCallback2(void)
static void Task_StarterChoose1(u8 taskId)
{
- CreateStarterPokemonLabel(0xFF, gTasks[taskId].data[TD_STARTERSELECTION]);
+ CreateStarterPokemonLabel(0xFF, gTasks[taskId].tStarterSelection);
MenuDrawTextWindow(2, 14, 27, 19);
MenuPrint(gOtherText_BirchInTrouble, 3, 15);
gTasks[taskId].func = Task_StarterChoose2;
@@ -188,60 +373,60 @@ static void Task_StarterChoose1(u8 taskId)
static void Task_StarterChoose2(u8 taskId)
{
- u8 selection = gTasks[taskId].data[TD_STARTERSELECTION];
-
- if(gMain.newKeys & A_BUTTON)
+ u8 selection = gTasks[taskId].tStarterSelection;
+
+ if (gMain.newKeys & A_BUTTON)
{
u8 spriteId;
-
+
MenuZeroFillWindowRect(
gStarterChoose_LabelCoords[selection][0],
gStarterChoose_LabelCoords[selection][1],
gStarterChoose_LabelCoords[selection][0] + 13,
gStarterChoose_LabelCoords[selection][1] + 3);
-
+
REG_WIN0H = 0;
REG_WIN0V = 0;
-
+
//Create white circle background
spriteId = CreateSprite(
&gSpriteTemplate_83F77FC,
gStarterChoose_PokeballCoords[selection][0],
gStarterChoose_PokeballCoords[selection][1],
1);
- gTasks[taskId].data[TD_CIRCLE_SPRITE_ID] = spriteId;
-
+ gTasks[taskId].tCircleSpriteId = spriteId;
+
//Create Pokemon sprite
spriteId = CreatePokemonFrontSprite(
- GetStarterPokemon(gTasks[taskId].data[TD_STARTERSELECTION]),
+ GetStarterPokemon(gTasks[taskId].tStarterSelection),
gStarterChoose_PokeballCoords[selection][0],
gStarterChoose_PokeballCoords[selection][1]);
gSprites[spriteId].affineAnims = gSpriteAffineAnimTable_83F778C;
gSprites[spriteId].callback = StarterPokemonSpriteAnimCallback;
- gTasks[taskId].data[TD_PKMN_SPRITE_ID] = spriteId;
-
+ gTasks[taskId].tPkmnSpriteId = spriteId;
+
gTasks[taskId].func = Task_StarterChoose3;
}
else
{
- if((gMain.newKeys & DPAD_LEFT) && selection > 0)
+ if ((gMain.newKeys & DPAD_LEFT) && selection > 0)
{
- gTasks[taskId].data[TD_STARTERSELECTION]--;
- CreateStarterPokemonLabel(selection, gTasks[taskId].data[TD_STARTERSELECTION]);
+ gTasks[taskId].tStarterSelection--;
+ CreateStarterPokemonLabel(selection, gTasks[taskId].tStarterSelection);
}
- else if((gMain.newKeys & DPAD_RIGHT) && selection < 2)
+ else if ((gMain.newKeys & DPAD_RIGHT) && selection < 2)
{
- gTasks[taskId].data[TD_STARTERSELECTION]++;
- CreateStarterPokemonLabel(selection, gTasks[taskId].data[TD_STARTERSELECTION]);
+ gTasks[taskId].tStarterSelection++;
+ CreateStarterPokemonLabel(selection, gTasks[taskId].tStarterSelection);
}
}
}
static void Task_StarterChoose3(u8 taskId)
{
- if(gSprites[gTasks[taskId].data[TD_CIRCLE_SPRITE_ID]].affineAnimEnded &&
- gSprites[gTasks[taskId].data[TD_CIRCLE_SPRITE_ID]].pos1.x == STARTER_PKMN_POS_X &&
- gSprites[gTasks[taskId].data[TD_CIRCLE_SPRITE_ID]].pos1.y == STARTER_PKMN_POS_Y)
+ if (gSprites[gTasks[taskId].tCircleSpriteId].affineAnimEnded &&
+ gSprites[gTasks[taskId].tCircleSpriteId].pos1.x == STARTER_PKMN_POS_X &&
+ gSprites[gTasks[taskId].tCircleSpriteId].pos1.y == STARTER_PKMN_POS_Y)
{
gTasks[taskId].func = Task_StarterChoose4;
}
@@ -249,7 +434,7 @@ static void Task_StarterChoose3(u8 taskId)
static void Task_StarterChoose4(u8 taskId)
{
- PlayCry1(GetStarterPokemon(gTasks[taskId].data[TD_STARTERSELECTION]), 0);
+ PlayCry1(GetStarterPokemon(gTasks[taskId].tStarterSelection), 0);
MenuDrawTextWindow(2, 14, 27, 19);
//"Do you choose this POKEMON?"
MenuPrint(gOtherText_DoYouChoosePoke, 3, 15);
@@ -260,25 +445,25 @@ static void Task_StarterChoose4(u8 taskId)
static void Task_StarterChoose5(u8 taskId)
{
u8 spriteId;
-
- switch(ProcessMenuInputNoWrap_())
+
+ switch (ProcessMenuInputNoWrap_())
{
- case 0: //YES
+ case 0: // YES
//Return the starter choice and exit.
- gScriptResult = gTasks[taskId].data[TD_STARTERSELECTION];
+ gScriptResult = gTasks[taskId].tStarterSelection;
SetMainCallback2(gMain.savedCallback);
break;
- case 1: //NO
- case -1: //B button
+ case 1: // NO
+ case -1: // B button
PlaySE(SE_SELECT);
MenuZeroFillWindowRect(21, 7, 27, 12);
-
- spriteId = gTasks[taskId].data[TD_PKMN_SPRITE_ID];
+
+ spriteId = gTasks[taskId].tPkmnSpriteId;
FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(gSprites[spriteId].oam.paletteNum));
FreeOamMatrix(gSprites[spriteId].oam.matrixNum);
DestroySprite(&gSprites[spriteId]);
-
- spriteId = gTasks[taskId].data[TD_CIRCLE_SPRITE_ID];
+
+ spriteId = gTasks[taskId].tCircleSpriteId;
FreeOamMatrix(gSprites[spriteId].oam.matrixNum);
DestroySprite(&gSprites[spriteId]);
gTasks[taskId].func = Task_StarterChoose6;
@@ -313,13 +498,13 @@ static void CreateStarterPokemonLabel(u8 prevSelection, u8 selection)
u8 srcIndex;
u8 dstIndex;
u16 species;
-
+
u8 labelLeft;
u8 labelRight;
u8 labelTop;
u8 labelBottom;
-
- if(prevSelection != 0xFF)
+
+ if (prevSelection != 0xFF)
{
//Remove the old Pokemon label
MenuZeroFillWindowRect(
@@ -337,18 +522,18 @@ static void CreateStarterPokemonLabel(u8 prevSelection, u8 selection)
SET_CHAR(labelText, 5, EXT_CTRL_CODE_BEGIN);
SET_CHAR(labelText, 6, 0x11);
SET_CHAR(labelText, 7, dstIndex);
-
+
//Copy category string to label
dstIndex = 8;
srcIndex = 0;
- while(category[srcIndex] != EOS && srcIndex <= 10)
+ while (category[srcIndex] != EOS && srcIndex <= 10)
{
labelText[dstIndex] = category[srcIndex];
srcIndex++;
dstIndex++;
}
labelText[dstIndex++] = CHAR_SPACE;
-
+
//Copy POKEMON string to label
StringCopy(labelText + dstIndex, gOtherText_Poke);
MenuPrint(
@@ -356,14 +541,14 @@ static void CreateStarterPokemonLabel(u8 prevSelection, u8 selection)
gStarterChoose_LabelCoords[selection][0],
gStarterChoose_LabelCoords[selection][1]);
AddTextColorCtrlCode(labelText, 0, 15, 8);
-
+
//Copy Pokemon name to label
sub_8072C74(labelText + 5, gSpeciesNames[species], 0x6B, 1);
MenuPrint(
labelText,
gStarterChoose_LabelCoords[selection][0],
gStarterChoose_LabelCoords[selection][1] + 2);
-
+
labelLeft = gStarterChoose_LabelCoords[selection][0] * 8 + 4;
labelRight = (gStarterChoose_LabelCoords[selection][0] + 13) * 8 + 4;
labelTop = gStarterChoose_LabelCoords[selection][1] * 8;
@@ -372,15 +557,14 @@ static void CreateStarterPokemonLabel(u8 prevSelection, u8 selection)
REG_WIN0V = WIN_RANGE(labelTop, labelBottom);
}
-void nullsub_72(struct Sprite *sprite)
+static void nullsub_72(struct Sprite *sprite)
{
-
}
static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y)
{
u8 spriteId;
-
+
DecompressPicFromTable_2(
&gMonFrontPicTable[species],
gMonFrontPicCoords[species].x, gMonFrontPicCoords[species].y,
@@ -395,33 +579,33 @@ static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y)
}
//Sprite callback
-void sub_810A62C(struct Sprite *sprite)
+static void sub_810A62C(struct Sprite *sprite)
{
- sprite->pos1.x = gUnknown_083F76E4[gTasks[sprite->data0].data[TD_STARTERSELECTION]][0];
- sprite->pos1.y = gUnknown_083F76E4[gTasks[sprite->data0].data[TD_STARTERSELECTION]][1];
+ sprite->pos1.x = gUnknown_083F76E4[gTasks[sprite->data0].tStarterSelection][0];
+ sprite->pos1.y = gUnknown_083F76E4[gTasks[sprite->data0].tStarterSelection][1];
sprite->pos2.y = Sin(sprite->data1, 8);
sprite->data1 = (u8)sprite->data1 + 4;
}
//Sprite callback
-void sub_810A68C(struct Sprite *sprite)
+static void sub_810A68C(struct Sprite *sprite)
{
- if(gTasks[sprite->data0].data[TD_STARTERSELECTION] == sprite->data1)
+ if (gTasks[sprite->data0].tStarterSelection == sprite->data1)
StartSpriteAnimIfDifferent(sprite, 1);
else
StartSpriteAnimIfDifferent(sprite, 0);
}
//Sprite callback
-void StarterPokemonSpriteAnimCallback(struct Sprite *sprite)
+static void StarterPokemonSpriteAnimCallback(struct Sprite *sprite)
{
//Move sprite to upper center of screen
- if(sprite->pos1.x > STARTER_PKMN_POS_X)
+ if (sprite->pos1.x > STARTER_PKMN_POS_X)
sprite->pos1.x -= 4;
- if(sprite->pos1.x < STARTER_PKMN_POS_X)
+ if (sprite->pos1.x < STARTER_PKMN_POS_X)
sprite->pos1.x += 4;
- if(sprite->pos1.y > STARTER_PKMN_POS_Y)
+ if (sprite->pos1.y > STARTER_PKMN_POS_Y)
sprite->pos1.y -= 2;
- if(sprite->pos1.y < STARTER_PKMN_POS_Y)
+ if (sprite->pos1.y < STARTER_PKMN_POS_Y)
sprite->pos1.y += 2;
}