diff options
Diffstat (limited to 'src/field_specials.c')
-rw-r--r-- | src/field_specials.c | 144 |
1 files changed, 40 insertions, 104 deletions
diff --git a/src/field_specials.c b/src/field_specials.c index beaa11e99..1834f3523 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -1680,7 +1680,7 @@ void sub_8139980(void) } const struct WindowTemplate gUnknown_085B2BAC = { - .priority = 0, + .bg = 0, .tilemapLeft = 21, .tilemapTop = 1, .width = 8, @@ -2158,73 +2158,73 @@ void sub_8139F20(void) case 1: case 2: case 3: - if (gSaveBlock2Ptr->frontier.field_CE0[var][0] >= gSaveBlock2Ptr->frontier.field_CE0[var][1]) + if (gSaveBlock2Ptr->frontier.towerWinStreaks[var][0] >= gSaveBlock2Ptr->frontier.towerWinStreaks[var][1]) { - unk = gSaveBlock2Ptr->frontier.field_CE0[var][0]; + unk = gSaveBlock2Ptr->frontier.towerWinStreaks[var][0]; } else { - unk = gSaveBlock2Ptr->frontier.field_CE0[var][1]; + unk = gSaveBlock2Ptr->frontier.towerWinStreaks[var][1]; } break; case 4: - if (gSaveBlock2Ptr->frontier.field_D0C[0][0] >= gSaveBlock2Ptr->frontier.field_D0C[0][1]) + if (gSaveBlock2Ptr->frontier.domeWinStreaks[0][0] >= gSaveBlock2Ptr->frontier.domeWinStreaks[0][1]) { - unk = gSaveBlock2Ptr->frontier.field_D0C[0][0]; + unk = gSaveBlock2Ptr->frontier.domeWinStreaks[0][0]; } else { - unk = gSaveBlock2Ptr->frontier.field_D0C[0][1]; + unk = gSaveBlock2Ptr->frontier.domeWinStreaks[0][1]; } break; case 5: - if (gSaveBlock2Ptr->frontier.field_DE2[0][0] >= gSaveBlock2Ptr->frontier.field_DE2[0][1]) + if (gSaveBlock2Ptr->frontier.factoryWinStreaks[0][0] >= gSaveBlock2Ptr->frontier.factoryWinStreaks[0][1]) { - unk = gSaveBlock2Ptr->frontier.field_DE2[0][0]; + unk = gSaveBlock2Ptr->frontier.factoryWinStreaks[0][0]; } else { - unk = gSaveBlock2Ptr->frontier.field_DE2[0][1]; + unk = gSaveBlock2Ptr->frontier.factoryWinStreaks[0][1]; } break; case 6: - if (gSaveBlock2Ptr->frontier.field_DC8[0][0] >= gSaveBlock2Ptr->frontier.field_DC8[0][1]) + if (gSaveBlock2Ptr->frontier.palaceWinStreaks[0][0] >= gSaveBlock2Ptr->frontier.palaceWinStreaks[0][1]) { - unk = gSaveBlock2Ptr->frontier.field_DC8[0][0]; + unk = gSaveBlock2Ptr->frontier.palaceWinStreaks[0][0]; } else { - unk = gSaveBlock2Ptr->frontier.field_DC8[0][1]; + unk = gSaveBlock2Ptr->frontier.palaceWinStreaks[0][1]; } break; case 7: - if (gSaveBlock2Ptr->frontier.field_DDA[0] >= gSaveBlock2Ptr->frontier.field_DDA[1]) + if (gSaveBlock2Ptr->frontier.arenaWinStreaks[0] >= gSaveBlock2Ptr->frontier.arenaWinStreaks[1]) { - unk = gSaveBlock2Ptr->frontier.field_DDA[0]; + unk = gSaveBlock2Ptr->frontier.arenaWinStreaks[0]; } else { - unk = gSaveBlock2Ptr->frontier.field_DDA[1]; + unk = gSaveBlock2Ptr->frontier.arenaWinStreaks[1]; } break; case 8: - if (gSaveBlock2Ptr->frontier.field_E04[0] >= gSaveBlock2Ptr->frontier.field_E04[1]) + if (gSaveBlock2Ptr->frontier.pikeWinStreaks[0] >= gSaveBlock2Ptr->frontier.pikeWinStreaks[1]) { - unk = gSaveBlock2Ptr->frontier.field_E04[0]; + unk = gSaveBlock2Ptr->frontier.pikeWinStreaks[0]; } else { - unk = gSaveBlock2Ptr->frontier.field_E04[1]; + unk = gSaveBlock2Ptr->frontier.pikeWinStreaks[1]; } break; case 9: - if (gSaveBlock2Ptr->frontier.field_E1A[0] >= gSaveBlock2Ptr->frontier.field_E1A[1]) + if (gSaveBlock2Ptr->frontier.pyramidWinStreaks[0] >= gSaveBlock2Ptr->frontier.pyramidWinStreaks[1]) { - unk = gSaveBlock2Ptr->frontier.field_E1A[0]; + unk = gSaveBlock2Ptr->frontier.pyramidWinStreaks[0]; } else { - unk = gSaveBlock2Ptr->frontier.field_E1A[1]; + unk = gSaveBlock2Ptr->frontier.pyramidWinStreaks[1]; } break; } @@ -2244,7 +2244,7 @@ void sub_813A080(void) u16 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE); u8 lvlMode = gSaveBlock2Ptr->frontier.lvlMode; - if (battleMode == 2 && !FlagGet(FLAG_0x152)) + if (battleMode == FRONTIER_MODE_MULTIS && !FlagGet(FLAG_0x152)) { gSpecialVar_0x8005 = 5; gSpecialVar_0x8006 = 4; @@ -2253,7 +2253,7 @@ void sub_813A080(void) for (i = 0; i < 9; i++) { - if (gUnknown_085B2CDC[i] > gSaveBlock2Ptr->frontier.field_CE0[battleMode][lvlMode]) + if (gUnknown_085B2CDC[i] > gSaveBlock2Ptr->frontier.towerWinStreaks[battleMode][lvlMode]) { gSpecialVar_0x8005 = 4; gSpecialVar_0x8006 = i + 5; @@ -2733,8 +2733,6 @@ static void sub_813A46C(s32 itemIndex, bool8 onInit, struct ListMenu *list) } } -// stupid r5<->r6 swap -#ifdef NONMATCHING static void sub_813A4EC(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -2752,7 +2750,11 @@ static void sub_813A4EC(u8 taskId) default: gSpecialVar_Result = itemId; PlaySE(SE_SELECT); - if (!task->data[6] || itemId == task->data[1] - 1) + if (!task->data[6]) + { + sub_813A570(taskId); + } + else if (itemId == task->data[1] - 1) { sub_813A570(taskId); } @@ -2765,72 +2767,6 @@ static void sub_813A4EC(u8 taskId) break; } } -#else -NAKED -static void sub_813A4EC(u8 taskId) -{ - asm_unified("push {r4-r6,lr}\n\ - lsls r0, 24\n\ - lsrs r5, r0, 24\n\ - lsls r0, r5, 2\n\ - adds r0, r5\n\ - lsls r0, 3\n\ - ldr r1, =gTasks\n\ - adds r6, r0, r1\n\ - ldrh r0, [r6, 0x24]\n\ - lsls r0, 24\n\ - lsrs r0, 24\n\ - bl ListMenuHandleInputGetItemId\n\ - adds r4, r0, 0\n\ - movs r0, 0x2\n\ - negs r0, r0\n\ - cmp r4, r0\n\ - beq _0813A51C\n\ - adds r0, 0x1\n\ - cmp r4, r0\n\ - bne _0813A530\n\ - b _0813A566\n\ - .pool\n\ -_0813A51C:\n\ - ldr r1, =gSpecialVar_Result\n\ - movs r0, 0x7F\n\ - strh r0, [r1]\n\ - movs r0, 0x5\n\ - bl PlaySE\n\ - b _0813A54C\n\ - .pool\n\ -_0813A530:\n\ - ldr r0, =gSpecialVar_Result\n\ - strh r4, [r0]\n\ - movs r0, 0x5\n\ - bl PlaySE\n\ - movs r1, 0x14\n\ - ldrsh r0, [r6, r1]\n\ - cmp r0, 0\n\ - beq _0813A54C\n\ - movs r1, 0xA\n\ - ldrsh r0, [r6, r1]\n\ - subs r0, 0x1\n\ - cmp r4, r0\n\ - bne _0813A558\n\ -_0813A54C:\n\ - adds r0, r5, 0\n\ - bl sub_813A570\n\ - b _0813A566\n\ - .pool\n\ -_0813A558:\n\ - adds r0, r5, 0\n\ - bl sub_813A738\n\ - ldr r0, =sub_813A600\n\ - str r0, [r6]\n\ - bl EnableBothScriptContexts\n\ -_0813A566:\n\ - pop {r4-r6}\n\ - pop {r0}\n\ - bx r0\n\ - .pool"); -} -#endif // NONMATCHING static void sub_813A570(u8 taskId) { @@ -3061,7 +2997,7 @@ void sub_813A8FC(void) { u8 string[32]; u32 x; - StringCopy(ConvertIntToDecimalStringN(string, gSaveBlock2Ptr->frontier.frontierBattlePoints, STR_CONV_MODE_RIGHT_ALIGN, 4), gText_BP); + StringCopy(ConvertIntToDecimalStringN(string, gSaveBlock2Ptr->frontier.battlePoints, STR_CONV_MODE_RIGHT_ALIGN, 4), gText_BP); x = GetStringRightAlignXOffset(1, string, 48); AddTextPrinterParameterized(gUnknown_0203AB6D, 1, string, x, 1, 0, NULL); } @@ -3069,7 +3005,7 @@ void sub_813A8FC(void) void sub_813A958(void) { static const struct WindowTemplate gUnknown_085B311C = { - .priority = 0, + .bg = 0, .tilemapLeft = 1, .tilemapTop = 1, .width = 6, @@ -3092,37 +3028,37 @@ void sub_813A988(void) void sub_813A9A4(void) { - if (gSaveBlock2Ptr->frontier.frontierBattlePoints < gSpecialVar_0x8004) + if (gSaveBlock2Ptr->frontier.battlePoints < gSpecialVar_0x8004) { - gSaveBlock2Ptr->frontier.frontierBattlePoints = 0; + gSaveBlock2Ptr->frontier.battlePoints = 0; } else { - gSaveBlock2Ptr->frontier.frontierBattlePoints -= gSpecialVar_0x8004; + gSaveBlock2Ptr->frontier.battlePoints -= gSpecialVar_0x8004; } } void sub_813A9D0(void) { - if (gSaveBlock2Ptr->frontier.frontierBattlePoints + gSpecialVar_0x8004 > 0x270F) + if (gSaveBlock2Ptr->frontier.battlePoints + gSpecialVar_0x8004 > 9999) { - gSaveBlock2Ptr->frontier.frontierBattlePoints = 0x270f; + gSaveBlock2Ptr->frontier.battlePoints = 9999; } else { - gSaveBlock2Ptr->frontier.frontierBattlePoints = gSaveBlock2Ptr->frontier.frontierBattlePoints + gSpecialVar_0x8004; + gSaveBlock2Ptr->frontier.battlePoints = gSaveBlock2Ptr->frontier.battlePoints + gSpecialVar_0x8004; } } u16 sub_813AA04(void) { - return gSaveBlock2Ptr->frontier.frontierBattlePoints; + return gSaveBlock2Ptr->frontier.battlePoints; } void sub_813AA18(void) { static const struct WindowTemplate gUnknown_085B3124 = { - .priority = 0, + .bg = 0, .tilemapLeft = 2, .tilemapTop = 9, .width = 4, @@ -3284,7 +3220,7 @@ void sub_813AC7C(void) static void sub_813ACE8(u8 a0, u16 a1) { static const struct WindowTemplate gUnknown_085B3220 = { - .priority = 0, + .bg = 0, .tilemapLeft = 1, .tilemapTop = 7, .width = 12, |