Battle message buffers; review comments

This commit is contained in:
PikalaxALT 2019-11-04 20:32:10 -05:00
parent 2fa08605b8
commit eff10f0e50
10 changed files with 541 additions and 486 deletions

View File

@ -353,6 +353,62 @@ DEFENDING_TRAINER = FD 09
ATTACKING_MON = FD 0C
DEFENDING_MON = FD 0D
@ battle string placeholders
B_BUFF1 = FD 00
B_BUFF2 = FD 01
B_COPY_VAR_1 = FD 02
B_COPY_VAR_2 = FD 03
B_COPY_VAR_3 = FD 04
B_PLAYER_MON1_NAME = FD 05
B_OPPONENT_MON1_NAME = FD 06
B_PLAYER_MON2_NAME = FD 07
B_OPPONENT_MON2_NAME = FD 08
B_LINK_PLAYER_MON1_NAME = FD 09
B_LINK_OPPONENT_MON1_NAME = FD 0A
B_LINK_PLAYER_MON2_NAME = FD 0B
B_LINK_OPPONENT_MON2_NAME = FD 0C
B_ATK_NAME_WITH_PREFIX_MON1 = FD 0D
B_ATK_PARTNER_NAME = FD 0E
B_ATK_NAME_WITH_PREFIX = FD 0F
B_DEF_NAME_WITH_PREFIX = FD 10
B_EFF_NAME_WITH_PREFIX = FD 11 @ EFF = short for gEffectBattler
B_ACTIVE_NAME_WITH_PREFIX = FD 12
B_SCR_ACTIVE_NAME_WITH_PREFIX = FD 13
B_CURRENT_MOVE = FD 14
B_LAST_MOVE = FD 15
B_LAST_ITEM = FD 16
B_LAST_ABILITY = FD 17
B_ATK_ABILITY = FD 18
B_DEF_ABILITY = FD 19
B_SCR_ACTIVE_ABILITY = FD 1A
B_EFF_ABILITY = FD 1B
B_TRAINER1_CLASS = FD 1C
B_TRAINER1_NAME = FD 1D
B_LINK_PLAYER_NAME = FD 1E
B_LINK_PARTNER_NAME = FD 1F
B_LINK_OPPONENT1_NAME = FD 20
B_LINK_OPPONENT2_NAME = FD 21
B_LINK_SCR_TRAINER_NAME = FD 22
B_PLAYER_NAME = FD 23
B_TRAINER1_LOSE_TEXT = FD 24
B_TRAINER1_WIN_TEXT = FD 25
B_26 = FD 26
B_PC_CREATOR_NAME = FD 27
B_ATK_PREFIX1 = FD 28
B_DEF_PREFIX1 = FD 29
B_ATK_PREFIX2 = FD 2A
B_DEF_PREFIX2 = FD 2B
B_ATK_PREFIX3 = FD 2C
B_DEF_PREFIX3 = FD 2D
B_TRAINER2_CLASS = FD 2E
B_TRAINER2_NAME = FD 2F
B_TRAINER2_LOSE_TEXT = FD 30
B_TRAINER2_WIN_TEXT = FD 31
B_PARTNER_CLASS = FD 32
B_PARTNER_NAME = FD 33
B_BUFF3 = FD 34
@ indicates the end of a town/city name (before " TOWN" or " CITY")
NAME_END = FC 00

File diff suppressed because it is too large Load Diff

View File

@ -15,7 +15,7 @@ gMEventSrvScript_UnableToSend::
.4byte 0x00, 0x09, NULL @ RETURN (other trn canceled)
gMEventSrvScript_OtherTrnHasNews::
.4byte 0x12, 0x10, gMEventClientScript_AlredyHadNews @ SEND
.4byte 0x12, 0x10, gMEventClientScript_AlreadyHadNews @ SEND
.4byte 0x01, 0x00, NULL @ WAIT SEND
.4byte 0x02, 0x14, NULL @ RECV
.4byte 0x00, 0x07, NULL @ RETURN (other trn has news)

View File

@ -1,4 +1,4 @@
gMEventClientScript_IntialListen:: @ 84687E0
gMEventClientScript_InotialListen:: @ 84687E0
.4byte 0x02, 0x10 @ RECEIVE ID(0x10)
.4byte 0x04, 0x00 @ JUMP TO RECEIVE BUFFER
@ -35,7 +35,7 @@ gMEventClientScript_ReceiveNewsAndValidate::
.4byte 0x02, 0x10 @ RECEIVE ID(0x10)
.4byte 0x04, 0x00 @ JUMP TO RECEIVE BUFFER
gMEventClientScript_AlredyHadNews:: @ already had news
gMEventClientScript_AlreadyHadNews:: @ already had news
.4byte 0x14, 0x00 @ SEND ALL
.4byte 0x01, 0x07 @ RETURN 0x07
@ -50,7 +50,7 @@ gMEventClientScript_AskWouldLikeToTossCard::
.4byte 0x02, 0x10 @ RECEIVE ID(0x10)
.4byte 0x04, 0x00 @ JUMP TO RECEIVE BUFFER
gMEventClientScript_OtherTrainerCanceled:: @ comm cancelled
gMEventClientScript_OtherTrainerCanceled:: @ comm canceled
.4byte 0x14, 0x00 @ SEND ALL
.4byte 0x01, 0x09 @ RETURN 0x09

View File

@ -694,7 +694,7 @@ struct MEventBuffers
/*0x1c0 0x32e0*/ struct MEWonderCardStruct mecard;
/*0x310 0x3430*/ struct MEventBuffer_3430 buffer_310;
/*0x338 0x3458*/ u16 ec_profile_maybe[4];
/*0x340 0x3460*/ struct MENewsJisanStruct mejisan;
/*0x340 0x3460*/ struct MENewsJisanStruct me_jisan;
/*0x344 0x3464*/ u32 unk_344[2][5];
}; // 0x36C 0x348C

View File

@ -57,9 +57,9 @@ struct HofGfx
u8 tilemap2[0x1000];
};
EWRAM_DATA u32 sSelectedPaletteIndices = 0;
EWRAM_DATA struct HallofFameTeam * sHofMonPtr = NULL;
EWRAM_DATA struct HofGfx * sHofGfxPtr = NULL;
static EWRAM_DATA u32 sSelectedPaletteIndices = 0;
static EWRAM_DATA struct HallofFameTeam * sHofMonPtr = NULL;
static EWRAM_DATA struct HofGfx * sHofGfxPtr = NULL;
#define HALL_OF_FAME_MAX_TEAMS 50
#define HALL_OF_FAME_BG_PAL (RGB(22, 24, 29))
@ -74,8 +74,8 @@ static void Task_Hof_PlayMonCryAndPrintInfo(u8 taskId);
static void Task_Hof_TryDisplayAnotherMon(u8 taskId);
static void Task_Hof_PaletteFadeAndPrintWelcomeText(u8 taskId);
static void Task_Hof_ApplauseAndConfetti(u8 taskId);
static void Hof_WaitBorderFadeAway(u8 taskId);
static void Hof_SpawnPlayerPic(u8 taskId);
static void Task_Hof_WaitBorderFadeAway(u8 taskId);
static void Task_Hof_SpawnPlayerPic(u8 taskId);
static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId);
static void Task_Hof_ExitOnKeyPressed(u8 taskId);
static void Task_Hof_HandlePaletteOnExit(u8 taskId);
@ -541,8 +541,8 @@ static void Task_Hof_PlayMonCryAndPrintInfo(u8 taskId)
static void Task_Hof_TryDisplayAnotherMon(u8 taskId)
{
u16 currPokeID = gTasks[taskId].data[1];
struct HallofFameMon* currMon = &sHofMonPtr[0].mon[currPokeID];
u16 currPokeId = gTasks[taskId].data[1];
struct HallofFameMon* currMon = &sHofMonPtr[0].mon[currPokeId];
if (gTasks[taskId].data[3] != 0)
{
@ -550,12 +550,12 @@ static void Task_Hof_TryDisplayAnotherMon(u8 taskId)
}
else
{
sSelectedPaletteIndices |= (0x10000 << gSprites[gTasks[taskId].data[5 + currPokeID]].oam.paletteNum);
sSelectedPaletteIndices |= (0x10000 << gSprites[gTasks[taskId].data[5 + currPokeId]].oam.paletteNum);
if (gTasks[taskId].data[1] < PARTY_SIZE - 1 && currMon[1].species != SPECIES_NONE) // there is another pokemon to display
{
gTasks[taskId].data[1]++;
BeginNormalPaletteFade(sSelectedPaletteIndices, 0, 12, 12, HALL_OF_FAME_BG_PAL);
gSprites[gTasks[taskId].data[5 + currPokeID]].oam.priority = 1;
gSprites[gTasks[taskId].data[5 + currPokeId]].oam.priority = 1;
gTasks[taskId].func = Task_Hof_DisplayMon;
}
else
@ -602,15 +602,15 @@ static void Task_Hof_ApplauseAndConfetti(u8 taskId)
FillWindowPixelBuffer(0, PIXEL_FILL(0));
CopyWindowToVram(0, 3);
gTasks[taskId].data[3] = 7;
gTasks[taskId].func = Hof_WaitBorderFadeAway;
gTasks[taskId].func = Task_Hof_WaitBorderFadeAway;
}
}
static void Hof_WaitBorderFadeAway(u8 taskId)
static void Task_Hof_WaitBorderFadeAway(u8 taskId)
{
if (gTasks[taskId].data[3] > 15)
{
gTasks[taskId].func = Hof_SpawnPlayerPic;
gTasks[taskId].func = Task_Hof_SpawnPlayerPic;
}
else
{
@ -619,7 +619,7 @@ static void Hof_WaitBorderFadeAway(u8 taskId)
}
}
static void Hof_SpawnPlayerPic(u8 taskId)
static void Task_Hof_SpawnPlayerPic(u8 taskId)
{
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
ShowBg(0);
@ -809,7 +809,7 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId)
for (i = 0; i < PARTY_SIZE; i++, currMon++)
{
if (currMon->species != 0)
if (currMon->species != SPECIES_NONE)
gTasks[taskId].data[4]++;
}
@ -817,7 +817,7 @@ static void Task_HofPC_DrawSpritesPrintText(u8 taskId)
for (i = 0; i < PARTY_SIZE; i++, currMon++)
{
if (currMon->species != 0)
if (currMon->species != SPECIES_NONE)
{
u16 spriteId;
s16 posX, posY;
@ -862,7 +862,7 @@ static void Task_HofPC_PrintMonInfo(u8 taskId)
struct HallofFameTeam* savedTeams = sHofMonPtr;
struct HallofFameMon* currMon;
u16 i;
u16 currMonID;
u16 currMonId;
for (i = 0; i < gTasks[taskId].data[0]; i++)
savedTeams++;
@ -874,9 +874,9 @@ static void Task_HofPC_PrintMonInfo(u8 taskId)
gSprites[spriteId].oam.priority = 1;
}
currMonID = gTasks[taskId].data[5 + gTasks[taskId].data[2]];
gSprites[currMonID].oam.priority = 0;
sSelectedPaletteIndices = (0x10000 << gSprites[currMonID].oam.paletteNum) ^ 0xFFFF0000;
currMonId = gTasks[taskId].data[5 + gTasks[taskId].data[2]];
gSprites[currMonId].oam.priority = 0;
sSelectedPaletteIndices = (0x10000 << gSprites[currMonId].oam.paletteNum) ^ 0xFFFF0000;
BlendPalettesUnfaded(sSelectedPaletteIndices, 0xC, HALL_OF_FAME_BG_PAL);
currMon = &savedTeams->mon[gTasks[taskId].data[2]];

View File

@ -507,7 +507,7 @@ struct MEventBuffer_3430_Sub * sav1_get_mevent_buffer_2(void)
struct MENewsJisanStruct * GetMENewsJisanStructPtr(void)
{
return &gSaveBlock1Ptr->mysteryEventBuffers.mejisan;
return &gSaveBlock1Ptr->mysteryEventBuffers.me_jisan;
}
u16 * GetMEventProfileECWordsMaybe(void)

View File

@ -14,7 +14,7 @@ static void mevent_client_init(struct mevent_client *, u32, u32);
static u32 mevent_client_exec(struct mevent_client *);
static void mevent_client_free_resources(struct mevent_client *);
extern const struct mevent_client_cmd gMEventClientScript_IntialListen[];
extern const struct mevent_client_cmd gMEventClientScript_InotialListen[];
void mevent_client_do_init(void)
{
@ -89,7 +89,7 @@ static void mevent_client_send_word(struct mevent_client * svr, u32 ident, u32 w
static u32 client_mainseq_0(struct mevent_client * svr)
{
// init
memcpy(svr->cmdBuffer, gMEventClientScript_IntialListen, ME_SEND_BUF_SIZE);
memcpy(svr->cmdBuffer, gMEventClientScript_InotialListen, ME_SEND_BUF_SIZE);
svr->cmdidx = 0;
svr->mainseqno = 4;
svr->flag = 0;

View File

@ -5624,7 +5624,6 @@ u8 GetNumberOfRelearnableMoves(struct Pokemon *mon)
return numMoves;
}
// SpeciesToPokedexNum?
u16 SpeciesToPokedexNum(u16 species)
{
species = SpeciesToNationalPokedexNum(species);

View File

@ -105,7 +105,7 @@ static void Task_SelectTMAction_Type3(u8 taskId);
static void Task_SelectTMAction_FromSellMenu(u8 taskId);
static void Task_AskConfirmSaleWithAmount(u8 taskId);
static void Task_PlaceYesNoBox(u8 taskId);
static void Task_SaleOfTMsCancelled(u8 taskId);
static void Task_SaleOfTMsCanceled(u8 taskId);
static void Task_InitQuantitySelectUI(u8 taskId);
static void SellTM_PrintQuantityAndSalePrice(s16 quantity, s32 value);
static void Task_QuantitySelect_HandleInput(u8 taskId);
@ -178,7 +178,7 @@ static const struct MenuAction sMenuActions_UseGiveExit[] = {
static const u8 sMenuActionIndices_Field[] = {0, 1, 2};
static const u8 sMenuActionIndices_UnionRoom[] = {1, 2};
static const struct YesNoFuncTable sYesNoFuncTable = {Task_PrintSaleConfirmedText, Task_SaleOfTMsCancelled};
static const struct YesNoFuncTable sYesNoFuncTable = {Task_PrintSaleConfirmedText, Task_SaleOfTMsCanceled};
static const u8 sText_ClearTo18[] = _("{CLEAR_TO 18}");
static const u8 sText_SingleSpace[] = _(" ");
@ -1012,7 +1012,7 @@ static void Task_PlaceYesNoBox(u8 taskId)
HandleCreateYesNoMenu(taskId, &sYesNoFuncTable);
}
static void Task_SaleOfTMsCancelled(u8 taskId)
static void Task_SaleOfTMsCanceled(u8 taskId)
{
s16 * data = gTasks[taskId].data;