diff --git a/asm/macros/scrcmd.inc b/asm/macros/scrcmd.inc index 91abb0fc68..4a10ff1849 100644 --- a/asm/macros/scrcmd.inc +++ b/asm/macros/scrcmd.inc @@ -267,6 +267,8 @@ .short 48 .endm + // This also sets the player's direction appropriately when a pad + // button is pressed, unlike the WaitABPadPress command. .macro WaitABXPadPress .short 49 .endm @@ -1153,16 +1155,16 @@ .short \pocket .endm - .macro ScrCmd_0D3 arg0, arg1 + .macro ScrCmd_0D3 templateArg, item .short 211 - .byte \arg0 - .short \arg1 + .byte \templateArg + .short \item .endm - .macro ScrCmd_0D4 arg0, arg1 + .macro ScrCmd_0D4 templateArg, move .short 212 - .byte \arg0 - .short \arg1 + .byte \templateArg + .short \move .endm .macro BufferNumber templateArg, number @@ -1222,22 +1224,22 @@ .short \arg0 .endm - .macro ScrCmd_0DF arg0, arg1 + .macro ScrCmd_0DF templateArg, goods .short 223 - .byte \arg0 - .short \arg1 + .byte \templateArg + .short \goods .endm - .macro ScrCmd_0E0 arg0, arg1 + .macro ScrCmd_0E0 templateArg, trap .short 224 - .byte \arg0 - .short \arg1 + .byte \templateArg + .short \trap .endm - .macro ScrCmd_0E1 arg0, arg1 + .macro ScrCmd_0E1 templateArg, item .short 225 - .byte \arg0 - .short \arg1 + .byte \templateArg + .short \item .endm .macro ScrCmd_0E2 arg0, arg1 @@ -1528,9 +1530,9 @@ .short 280 .endm - .macro ScrCmd_119 arg0 + .macro ScrCmd_119 destVarID .short 281 - .short \arg0 + .short \destVarID .endm .macro ScrCmd_11A arg0, arg1 @@ -1663,9 +1665,9 @@ .short \arg0 .endm - .macro ScrCmd_133 arg0 + .macro ScrCmd_133 appID .short 307 - .short \arg0 + .short \appID .endm .macro ScrCmd_134 arg0, arg1 @@ -1790,9 +1792,9 @@ .short \arg0 .endm - .macro ScrCmd_14D arg0 + .macro ScrCmd_14D destVarID .short 333 - .short \arg0 + .short \destVarID .endm .macro ScrCmd_14E @@ -1853,10 +1855,10 @@ .short 346 .endm - .macro ScrCmd_15B arg0, arg1 + .macro ScrCmd_15B badgeNum, destVarID .short 347 - .short \arg0 - .short \arg1 + .short \badgeNum + .short \destVarID .endm .macro ScrCmd_15C arg0 @@ -1985,9 +1987,9 @@ .byte \arg0 .endm - .macro ScrCmd_177 arg0 + .macro ScrCmd_177 destVarID .short 375 - .short \arg0 + .short \destVarID .endm .macro ScrCmd_178 arg0 diff --git a/include/unk_020474B8.h b/include/unk_020474B8.h index 8216e29f90..36f48ece62 100644 --- a/include/unk_020474B8.h +++ b/include/unk_020474B8.h @@ -11,8 +11,8 @@ BOOL ScrCmd_BufferPartyMonSpecies(ScriptContext *ctx); BOOL ScrCmd_2FD(ScriptContext *param0); BOOL ScrCmd_BufferItemName(ScriptContext *ctx); BOOL ScrCmd_BufferPocketName(ScriptContext *ctx); -BOOL ScrCmd_0D3(ScriptContext *param0); -BOOL ScrCmd_0D4(ScriptContext *param0); +BOOL ScrCmd_BufferTMHMMoveName(ScriptContext *ctx); +BOOL ScrCmd_BufferMoveName(ScriptContext *ctx); BOOL ScrCmd_BufferNumber(ScriptContext *ctx); BOOL ScrCmd_280(ScriptContext *param0); BOOL ScrCmd_2F5(ScriptContext *param0); @@ -25,9 +25,9 @@ BOOL ScrCmd_0DA(ScriptContext *param0); BOOL ScrCmd_0DB(ScriptContext *param0); BOOL ScrCmd_0DC(ScriptContext *param0); BOOL ScrCmd_0DD(ScriptContext *param0); -BOOL ScrCmd_0DF(ScriptContext *param0); -BOOL ScrCmd_0E0(ScriptContext *param0); -BOOL ScrCmd_0E1(ScriptContext *param0); +BOOL ScrCmd_BufferUndergroundGoodsName(ScriptContext *ctx); +BOOL ScrCmd_BufferUndergroundTrapName(ScriptContext *ctx); +BOOL ScrCmd_BufferUndergroundItemName(ScriptContext *ctx); BOOL ScrCmd_0E2(ScriptContext *param0); BOOL ScrCmd_17B(ScriptContext *param0); BOOL ScrCmd_17C(ScriptContext *param0); diff --git a/include/unk_0204CFFC.h b/include/unk_0204CFFC.h index df9f0fad22..ab16331897 100644 --- a/include/unk_0204CFFC.h +++ b/include/unk_0204CFFC.h @@ -21,12 +21,12 @@ BOOL ScrCmd_1BB(ScriptContext *param0); BOOL ScrCmd_281(ScriptContext *param0); BOOL ScrCmd_247(ScriptContext *param0); BOOL ScrCmd_248(ScriptContext *param0); -BOOL ScrCmd_177(ScriptContext *param0); +BOOL ScrCmd_GetPartyCount(ScriptContext *ctx); BOOL ScrCmd_19A(ScriptContext *param0); BOOL ScrCmd_19B(ScriptContext *param0); BOOL ScrCmd_19C(ScriptContext *param0); BOOL ScrCmd_19D(ScriptContext *param0); -BOOL ScrCmd_119(ScriptContext *param0); +BOOL ScrCmd_CheckPartyPokerus(ScriptContext *ctx); BOOL ScrCmd_11A(ScriptContext *param0); BOOL ScrCmd_1C8(ScriptContext *param0); BOOL ScrCmd_1C9(ScriptContext *param0); diff --git a/include/unk_0204E3CC.h b/include/unk_0204E3CC.h index d9cee75710..ba7b3df404 100644 --- a/include/unk_0204E3CC.h +++ b/include/unk_0204E3CC.h @@ -7,7 +7,7 @@ BOOL ScrCmd_157(ScriptContext *param0); BOOL ScrCmd_158(ScriptContext *param0); BOOL ScrCmd_159(ScriptContext *param0); BOOL ScrCmd_15A(ScriptContext *param0); -BOOL ScrCmd_15B(ScriptContext *param0); +BOOL ScrCmd_CheckBadge(ScriptContext *ctx); BOOL ScrCmd_15C(ScriptContext *param0); BOOL ScrCmd_15E(ScriptContext *param0); BOOL ScrCmd_15D(ScriptContext *param0); diff --git a/src/scrcmd.c b/src/scrcmd.c index 59d91e6648..a5db69b391 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -457,7 +457,7 @@ static BOOL ScrCmd_CheckSaveType(ScriptContext *ctx); static BOOL ScrCmd_12D(ScriptContext *ctx); static BOOL ScrCmd_131(ScriptContext *ctx); static BOOL ScrCmd_132(ScriptContext *ctx); -static BOOL ScrCmd_133(ScriptContext *ctx); +static BOOL ScrCmd_RegisterPoketchApp(ScriptContext *ctx); static BOOL ScrCmd_134(ScriptContext *ctx); static BOOL ScrCmd_135(ScriptContext *ctx); static BOOL sub_02043678(ScriptContext *ctx); @@ -490,8 +490,8 @@ static BOOL ScrCmd_156(ScriptContext *ctx); static BOOL ScrCmd_2BA(ScriptContext *ctx); static BOOL ScrCmd_14B(ScriptContext *ctx); static BOOL ScrCmd_14C(ScriptContext *ctx); -static BOOL ScrCmd_14D(ScriptContext *ctx); -static BOOL ScrCmd_14E(ScriptContext *ctx); +static BOOL ScrCmd_GetPlayerGender(ScriptContext *ctx); +static BOOL ScrCmd_HealParty(ScriptContext *ctx); static BOOL ScrCmd_14F(ScriptContext *ctx); static BOOL ScrCmd_150(ScriptContext *ctx); static BOOL sub_02043C70(ScriptContext *ctx); @@ -979,8 +979,8 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_BufferPartyMonSpecies, ScrCmd_BufferItemName, ScrCmd_BufferPocketName, - ScrCmd_0D3, - ScrCmd_0D4, + ScrCmd_BufferTMHMMoveName, + ScrCmd_BufferMoveName, ScrCmd_BufferNumber, ScrCmd_BufferPartyMonNickname, ScrCmd_BufferPoketchAppName, @@ -991,9 +991,9 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_0DC, ScrCmd_0DD, ScrCmd_0DE, - ScrCmd_0DF, - ScrCmd_0E0, - ScrCmd_0E1, + ScrCmd_BufferUndergroundGoodsName, + ScrCmd_BufferUndergroundTrapName, + ScrCmd_BufferUndergroundItemName, ScrCmd_0E2, ScrCmd_0E3, ScrCmd_0E4, @@ -1049,7 +1049,7 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_116, ScrCmd_117, ScrCmd_118, - ScrCmd_119, + ScrCmd_CheckPartyPokerus, ScrCmd_11A, ScrCmd_11B, ScrCmd_11C, @@ -1075,7 +1075,7 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_130, ScrCmd_131, ScrCmd_132, - ScrCmd_133, + ScrCmd_RegisterPoketchApp, ScrCmd_134, ScrCmd_135, ScrCmd_136, @@ -1101,8 +1101,8 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_14A, ScrCmd_14B, ScrCmd_14C, - ScrCmd_14D, - ScrCmd_14E, + ScrCmd_GetPlayerGender, + ScrCmd_HealParty, ScrCmd_14F, ScrCmd_150, ScrCmd_151, @@ -1115,7 +1115,7 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_158, ScrCmd_159, ScrCmd_15A, - ScrCmd_15B, + ScrCmd_CheckBadge, ScrCmd_15C, ScrCmd_15D, ScrCmd_15E, @@ -1143,7 +1143,7 @@ const ScrCmdFunc Unk_020EAC58[] = { ScrCmd_174, ScrCmd_175, ScrCmd_176, - ScrCmd_177, + ScrCmd_GetPartyCount, ScrCmd_178, ScrCmd_179, ScrCmd_17A, @@ -5199,13 +5199,13 @@ static BOOL ScrCmd_132(ScriptContext *ctx) return 0; } -static BOOL ScrCmd_133(ScriptContext *ctx) +static BOOL ScrCmd_RegisterPoketchApp(ScriptContext *ctx) { FieldSystem *fieldSystem = ctx->fieldSystem; - u16 v1 = ScriptContext_GetVar(ctx); + u16 appID = ScriptContext_GetVar(ctx); - PoketchData_RegisterApp(SaveData_PoketchData(fieldSystem->saveData), v1); - return 0; + PoketchData_RegisterApp(SaveData_PoketchData(fieldSystem->saveData), appID); + return FALSE; } static BOOL ScrCmd_134(ScriptContext *ctx) @@ -5555,21 +5555,21 @@ static BOOL ScrCmd_14C(ScriptContext *ctx) return 0; } -static BOOL ScrCmd_14D(ScriptContext *ctx) +static BOOL ScrCmd_GetPlayerGender(ScriptContext *ctx) { - TrainerInfo *v0 = SaveData_GetTrainerInfo(FieldSystem_SaveData(ctx->fieldSystem)); - u16 *v1 = ScriptContext_GetVarPointer(ctx); + TrainerInfo *trainerInfo = SaveData_GetTrainerInfo(FieldSystem_SaveData(ctx->fieldSystem)); + u16 *destVar = ScriptContext_GetVarPointer(ctx); - *v1 = TrainerInfo_Gender(v0); - return 0; + *destVar = TrainerInfo_Gender(trainerInfo); + return FALSE; } -static BOOL ScrCmd_14E(ScriptContext *ctx) +static BOOL ScrCmd_HealParty(ScriptContext *ctx) { FieldSystem *fieldSystem = TaskManager_FieldSystem(ctx->taskManager); HealAllPokemonInParty(Party_GetFromSavedata(fieldSystem->saveData)); - return 0; + return FALSE; } static BOOL ScrCmd_14F(ScriptContext *ctx) diff --git a/src/unk_020474B8.c b/src/unk_020474B8.c index 4753612f44..5c770657c4 100644 --- a/src/unk_020474B8.c +++ b/src/unk_020474B8.c @@ -119,29 +119,27 @@ BOOL ScrCmd_BufferPocketName(ScriptContext *ctx) return FALSE; } -BOOL ScrCmd_0D3(ScriptContext *param0) +BOOL ScrCmd_BufferTMHMMoveName(ScriptContext *ctx) { - FieldSystem *fieldSystem = param0->fieldSystem; - StringTemplate **v1 = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); - u8 v2 = ScriptContext_ReadByte(param0); - u16 v3 = ScriptContext_GetVar(param0); - u16 v4; + FieldSystem *fieldSystem = ctx->fieldSystem; + StringTemplate **strTemplate = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); + u8 templateArg = ScriptContext_ReadByte(ctx); + u16 item = ScriptContext_GetVar(ctx); + u16 move = Item_MoveForTMHM(item); - v4 = Item_MoveForTMHM(v3); - StringTemplate_SetMoveName(*v1, v2, v4); - - return 0; + StringTemplate_SetMoveName(*strTemplate, templateArg, move); + return FALSE; } -BOOL ScrCmd_0D4(ScriptContext *param0) +BOOL ScrCmd_BufferMoveName(ScriptContext *ctx) { - FieldSystem *fieldSystem = param0->fieldSystem; - StringTemplate **v1 = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); - u8 v2 = ScriptContext_ReadByte(param0); - u16 v3 = ScriptContext_GetVar(param0); + FieldSystem *fieldSystem = ctx->fieldSystem; + StringTemplate **strTemplate = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); + u8 templateArg = ScriptContext_ReadByte(ctx); + u16 move = ScriptContext_GetVar(ctx); - StringTemplate_SetMoveName(*v1, v2, v3); - return 0; + StringTemplate_SetMoveName(*strTemplate, templateArg, move); + return FALSE; } BOOL ScrCmd_BufferNumber(ScriptContext *ctx) @@ -323,37 +321,37 @@ BOOL ScrCmd_0DD(ScriptContext *param0) return 0; } -BOOL ScrCmd_0DF(ScriptContext *param0) +BOOL ScrCmd_BufferUndergroundGoodsName(ScriptContext *ctx) { - FieldSystem *fieldSystem = param0->fieldSystem; - StringTemplate **v1 = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); - u8 v2 = ScriptContext_ReadByte(param0); - u16 v3 = ScriptContext_GetVar(param0); + FieldSystem *fieldSystem = ctx->fieldSystem; + StringTemplate **strTemplate = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); + u8 templateArg = ScriptContext_ReadByte(ctx); + u16 goods = ScriptContext_GetVar(ctx); - StringTemplate_SetUndergroundGoodsName(*v1, v2, v3); - return 0; + StringTemplate_SetUndergroundGoodsName(*strTemplate, templateArg, goods); + return FALSE; } -BOOL ScrCmd_0E0(ScriptContext *param0) +BOOL ScrCmd_BufferUndergroundTrapName(ScriptContext *ctx) { - FieldSystem *fieldSystem = param0->fieldSystem; - StringTemplate **v1 = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); - u8 v2 = ScriptContext_ReadByte(param0); - u16 v3 = ScriptContext_GetVar(param0); + FieldSystem *fieldSystem = ctx->fieldSystem; + StringTemplate **strTemplate = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); + u8 templateArg = ScriptContext_ReadByte(ctx); + u16 trap = ScriptContext_GetVar(ctx); - StringTemplate_SetUndergroundTrapName(*v1, v2, v3); - return 0; + StringTemplate_SetUndergroundTrapName(*strTemplate, templateArg, trap); + return FALSE; } -BOOL ScrCmd_0E1(ScriptContext *param0) +BOOL ScrCmd_BufferUndergroundItemName(ScriptContext *ctx) { - FieldSystem *fieldSystem = param0->fieldSystem; - StringTemplate **v1 = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); - u8 v2 = ScriptContext_ReadByte(param0); - u16 v3 = ScriptContext_GetVar(param0); + FieldSystem *fieldSystem = ctx->fieldSystem; + StringTemplate **strTemplate = FieldSystem_GetScriptMemberPtr(fieldSystem, SCRIPT_MANAGER_STR_TEMPLATE); + u8 templateArg = ScriptContext_ReadByte(ctx); + u16 item = ScriptContext_GetVar(ctx); - StringTemplate_SetUndergroundItemName(*v1, v2, v3); - return 0; + StringTemplate_SetUndergroundItemName(*strTemplate, templateArg, item); + return FALSE; } BOOL ScrCmd_0E2(ScriptContext *param0) diff --git a/src/unk_0204CFFC.c b/src/unk_0204CFFC.c index 52684396b3..f26d99f722 100644 --- a/src/unk_0204CFFC.c +++ b/src/unk_0204CFFC.c @@ -390,17 +390,13 @@ BOOL ScrCmd_248(ScriptContext *param0) return 0; } -BOOL ScrCmd_177(ScriptContext *param0) +BOOL ScrCmd_GetPartyCount(ScriptContext *ctx) { - int v0; - Pokemon *v1; - FieldSystem *fieldSystem = param0->fieldSystem; - u16 *v3 = ScriptContext_GetVarPointer(param0); + FieldSystem *fieldSystem = ctx->fieldSystem; + u16 *destVar = ScriptContext_GetVarPointer(ctx); - v0 = Party_GetCurrentCount(Party_GetFromSavedata(fieldSystem->saveData)); - *v3 = v0; - - return 0; + *destVar = Party_GetCurrentCount(Party_GetFromSavedata(fieldSystem->saveData)); + return FALSE; } BOOL ScrCmd_19A(ScriptContext *param0) @@ -502,30 +498,24 @@ BOOL ScrCmd_19D(ScriptContext *param0) return 0; } -BOOL ScrCmd_119(ScriptContext *param0) +BOOL ScrCmd_CheckPartyPokerus(ScriptContext *ctx) { - u16 v0, v1; - u16 *v2; - u32 v3; - Pokemon *v4; - FieldSystem *fieldSystem = param0->fieldSystem; + u16 i, partyCount; + FieldSystem *fieldSystem = ctx->fieldSystem; + u16 *destVar = ScriptContext_GetVarPointer(ctx); + partyCount = Party_GetCurrentCount(Party_GetFromSavedata(fieldSystem->saveData)); + *destVar = FALSE; - v2 = ScriptContext_GetVarPointer(param0); - v1 = Party_GetCurrentCount(Party_GetFromSavedata(fieldSystem->saveData)); - *v2 = 0; + for (i = 0; i < partyCount; i++) { + Pokemon *mon = Party_GetPokemonBySlotIndex(Party_GetFromSavedata(fieldSystem->saveData), i); - for (v0 = 0; v0 < v1; v0++) { - v4 = Party_GetPokemonBySlotIndex(Party_GetFromSavedata(fieldSystem->saveData), v0); - - v3 = Pokemon_GetValue(v4, MON_DATA_POKERUS, NULL); - - if (v3 != 0) { - *v2 = 1; + if (Pokemon_GetValue(mon, MON_DATA_POKERUS, NULL) != FALSE) { + *destVar = TRUE; break; } } - return 0; + return FALSE; } BOOL ScrCmd_11A(ScriptContext *param0) diff --git a/src/unk_0204E3CC.c b/src/unk_0204E3CC.c index ec01e8cac6..b6f511b9f1 100644 --- a/src/unk_0204E3CC.c +++ b/src/unk_0204E3CC.c @@ -60,15 +60,15 @@ BOOL ScrCmd_15A(ScriptContext *param0) return 0; } -BOOL ScrCmd_15B(ScriptContext *param0) +BOOL ScrCmd_CheckBadge(ScriptContext *ctx) { - u16 v0 = ScriptContext_GetVar(param0); - u16 *v1 = ScriptContext_GetVarPointer(param0); + u16 badgeNum = ScriptContext_GetVar(ctx); + u16 *destVar = ScriptContext_GetVarPointer(ctx); - GF_ASSERT(v0 < 8); - *v1 = TrainerInfo_HasBadge(SaveData_GetTrainerInfo(param0->fieldSystem->saveData), v0); + GF_ASSERT(badgeNum < 8); + *destVar = TrainerInfo_HasBadge(SaveData_GetTrainerInfo(ctx->fieldSystem->saveData), badgeNum); - return 0; + return FALSE; } BOOL ScrCmd_15C(ScriptContext *param0)