document CalculateStatusTurns (from PR comments)

This commit is contained in:
Seth Barberee
2022-05-30 10:03:38 -07:00
parent 217cd7774d
commit f9d644ce0f
9 changed files with 78 additions and 78 deletions

View File

@@ -1998,7 +1998,7 @@ sub_80482D4:
ldr r1, _080482F8
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0

View File

@@ -6770,7 +6770,7 @@ _08055D54:
ldr r1, _08055DD8
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r3, r0, 0
movs r0, 0
str r0, [sp]
@@ -6925,7 +6925,7 @@ _08055EC0:
ldr r1, _08055F88
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r4, 0
adds r1, r4, 0

View File

@@ -376,7 +376,7 @@ sub_80576D0:
ldr r1, _080576F4
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r2, 0x1
adds r0, r5, 0
@@ -398,7 +398,7 @@ sub_80576F8:
ldr r1, _0805771C
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0
@@ -420,7 +420,7 @@ sub_8057720:
ldr r1, _08057744
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0

View File

@@ -90,7 +90,7 @@ sub_8057E28:
ldr r1, _08057E4C
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0
@@ -1727,7 +1727,7 @@ sub_8058A54:
ldr r1, _08058A78
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0
@@ -5269,7 +5269,7 @@ sub_805A4D4:
ldr r1, _0805A4F8
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0
@@ -6166,7 +6166,7 @@ _0805ABEC:
ldr r1, _0805AC04
adds r0, r6, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r6, 0
@@ -6316,7 +6316,7 @@ sub_805AD04:
ldr r1, _0805AD30
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r3, r0, 0
movs r0, 0x1
str r0, [sp]
@@ -8393,7 +8393,7 @@ sub_805BC70:
ldr r1, _0805BC94
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0

View File

@@ -549,7 +549,7 @@ _08075FF6:
ldr r1, _08076064
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xA9
@@ -755,7 +755,7 @@ _080761A8:
ldr r1, _080761EC
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xBD
@@ -906,7 +906,7 @@ _080762E8:
ldr r1, _08076330
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
mov r1, r8
adds r1, 0xAD
@@ -1132,7 +1132,7 @@ _080764B4:
ldr r1, _08076504
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
mov r1, r8
adds r1, 0xAD
@@ -1364,7 +1364,7 @@ _0807669C:
ldr r1, _080766E8
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
mov r1, r8
adds r1, 0xAD
@@ -1595,7 +1595,7 @@ _08076892:
ldr r1, _080768D4
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xB8
@@ -1689,7 +1689,7 @@ _08076948:
ldr r1, _080769A4
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xB8
@@ -1796,7 +1796,7 @@ _08076A2A:
ldr r1, _08076A80
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xB8
@@ -1877,7 +1877,7 @@ _08076AD8:
ldr r1, _08076B20
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xB8
@@ -1971,7 +1971,7 @@ _08076B74:
ldr r1, _08076C0C
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
mov r1, r8
adds r1, 0xB8
@@ -2192,7 +2192,7 @@ _08076D7C:
_08076D7E:
adds r0, r6, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r4, 0
adds r1, 0xB8
@@ -2761,4 +2761,4 @@ _0807722E:
_08077238: .4byte gUnknown_80FC21C
thumb_func_end sub_8077160
.align 2, 0
.align 2, 0

View File

@@ -594,7 +594,7 @@ _08077718:
ldr r1, _0807775C
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xBD
@@ -699,7 +699,7 @@ _080777EC:
ldr r1, _08077848
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
mov r1, r8
adds r1, 0xAD
@@ -837,7 +837,7 @@ sub_8077910:
ldr r1, _08077964
adds r0, r5, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r4, r0, 0x1
_08077940:
ldr r6, [r5, 0x70]
@@ -987,7 +987,7 @@ _08077A5A:
adds r0, r5, 0
ldr r1, _08077A7C
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
strb r0, [r4]
b _08077A86
@@ -1116,7 +1116,7 @@ _08077B58:
ldr r1, _08077B90
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xBD
@@ -1181,7 +1181,7 @@ sub_8077BB4:
ldr r1, _08077C20
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xBD
@@ -1675,7 +1675,7 @@ _08077FE2:
ldr r1, _08078018
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xD9
@@ -1845,7 +1845,7 @@ _08078134:
ldr r1, _08078174
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xD9
@@ -2058,7 +2058,7 @@ sub_80782CC:
ldr r1, _08078324
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xDD
@@ -2117,7 +2117,7 @@ sub_8078348:
ldr r1, _080783A0
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xDD
@@ -2276,7 +2276,7 @@ _080784A8:
ldr r1, _08078588
adds r0, r7, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
ldr r1, [sp, 0x1C]
strb r0, [r1]
@@ -2427,7 +2427,7 @@ _080785F6:
ldr r1, _08078634
adds r0, r6, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xCB
@@ -2537,7 +2537,7 @@ _080786C8:
ldr r1, _08078744
adds r0, r6, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xCB
@@ -2616,7 +2616,7 @@ sub_8078758:
ldr r1, _080787C0
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xBD
@@ -2740,7 +2740,7 @@ _08078884:
ldr r1, _080788C4
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xE5
@@ -2805,7 +2805,7 @@ sub_80788E8:
ldr r1, _08078944
adds r0, r5, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
strb r0, [r4]
ldr r0, _08078948
@@ -2918,7 +2918,7 @@ _080789F0:
ldr r1, _08078A30
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xBD
@@ -3363,7 +3363,7 @@ sub_8078D8C:
ldr r1, _08078DF4
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xED
@@ -3498,7 +3498,7 @@ _08078ED4:
ldr r1, _08078F44
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xE5
@@ -3575,7 +3575,7 @@ _08078F78:
ldr r1, _08078FB8
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xE5
@@ -3812,7 +3812,7 @@ BlindTarget:
ldr r1, _080791B4
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xE9
@@ -3889,7 +3889,7 @@ sub_80791D8:
ldr r1, _08079250
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r7, 0
adds r1, 0xE9
@@ -3945,7 +3945,7 @@ RestoreVisionTarget:
ldr r1, _080792D4
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xE9
@@ -4486,7 +4486,7 @@ _080796C6:
ldr r1, _08079718
adds r0, r7, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r2, r5, 0
adds r2, 0xC1
@@ -4501,7 +4501,7 @@ _080796E4:
ldr r1, _0807971C
adds r0, r7, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC1
@@ -4637,7 +4637,7 @@ _080797E8:
ldr r1, _0807982C
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xC5
@@ -4689,7 +4689,7 @@ sub_8079834:
ldr r1, _0807988C
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -4748,7 +4748,7 @@ sub_80798B0:
ldr r1, _08079908
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -4807,7 +4807,7 @@ sub_807992C:
ldr r1, _08079984
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -4866,7 +4866,7 @@ sub_80799A8:
ldr r1, _08079A00
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -4925,7 +4925,7 @@ sub_8079A24:
ldr r1, _08079A7C
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -4984,7 +4984,7 @@ sub_8079AA0:
ldr r1, _08079AF8
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -5041,7 +5041,7 @@ sub_8079B1C:
ldr r1, _08079B70
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -5107,7 +5107,7 @@ sub_8079BA8:
ldr r1, _08079C00
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -5166,7 +5166,7 @@ sub_8079C24:
ldr r1, _08079C7C
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -5225,7 +5225,7 @@ sub_8079CA0:
ldr r1, _08079CF8
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -5299,7 +5299,7 @@ _08079D50:
ldr r1, _08079D94
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r6, 0
adds r1, 0xC5
@@ -5358,7 +5358,7 @@ sub_8079DB8:
ldr r1, _08079E10
adds r0, r4, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
adds r0, 0x1
adds r1, r5, 0
adds r1, 0xC5
@@ -5900,7 +5900,7 @@ _0807A228:
ldr r1, _0807A250
adds r0, r5, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r2, 0x1
adds r0, r6, 0

View File

@@ -485,7 +485,7 @@ sub_807EA30:
ldr r1, _0807EA5C
movs r0, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
ldr r1, _0807EA60
ldr r1, [r1]
ldr r2, _0807EA64
@@ -505,7 +505,7 @@ _0807EA6C:
ldr r1, _0807EA90
movs r0, 0
movs r2, 0
bl sub_808417C
bl CalculateStatusTurns
ldr r1, _0807EA94
ldr r1, [r1]
ldr r2, _0807EA98

View File

@@ -866,7 +866,7 @@ sub_8080388:
ldr r1, _080803B0
adds r0, r4, 0
movs r2, 0x1
bl sub_808417C
bl CalculateStatusTurns
adds r2, r0, 0
adds r0, r5, 0
adds r1, r4, 0
@@ -6598,4 +6598,4 @@ sub_8083260:
bx r0
thumb_func_end sub_8083260
.align 2, 0
.align 2, 0

View File

@@ -6,21 +6,21 @@
#include "dungeon_random.h"
#include "dungeon_util.h"
s32 sub_808417C(struct DungeonEntity *param_1, s16 *param_2, u8 param_3)
s32 CalculateStatusTurns(struct DungeonEntity *target, s16 *turnRange, bool8 factorCurerSkills)
{
s32 iVar2;
s32 numTurns;
iVar2 = DungeonRandomRange(param_2[0],param_2[1]);
if (EntityExists(param_1) && (GetEntityType(param_1) == ENTITY_POKEMON) && (param_3 != 0)) {
if (HasIQSkill(param_1, IQ_SKILL_SELF_CURER) && (iVar2 != 0x7f)) {
iVar2 /= 2;
numTurns = DungeonRandomRange(turnRange[0],turnRange[1]);
if (EntityExists(target) && (GetEntityType(target) == ENTITY_POKEMON) && (factorCurerSkills)) {
if (HasIQSkill(target, IQ_SKILL_SELF_CURER) && (numTurns != 0x7f)) {
numTurns /= 2;
}
if (HasAbility(param_1, ABILITY_NATURAL_CURE) && (iVar2 != 0x7f) && (4 < iVar2)) {
iVar2 = 5;
if (HasAbility(target, ABILITY_NATURAL_CURE) && (numTurns != 0x7f) && (4 < numTurns)) {
numTurns = 5;
}
}
if (iVar2 < 1) {
iVar2 = 1;
if (numTurns < 1) {
numTurns = 1;
}
return iVar2;
return numTurns;
}