Documented badlyPoisonedDamageCount

This commit is contained in:
AnonymousRandomPerson 2025-03-30 22:19:43 -04:00
parent 6431bec7ed
commit 1a7c60d17e
6 changed files with 11 additions and 11 deletions

View File

@ -80,7 +80,7 @@ typedef struct BurnClassStatus
/* 0x0 */ u8 status;
/* 0x1 */ u8 turns;
/* 0x2 */ u8 damageCountdown;
/* 0x3 */ u8 unk4;
/* 0x3 */ u8 badlyPoisonedDamageCount;
} BurnClassStatus;
// Useful when checking if a mon is poisoned without having to check for Poison and Bad Poison every time.

View File

@ -877,7 +877,7 @@ void ResetMonEntityData(EntityInfo *entInfo, bool8 setStatsToOne)
entInfo->burnClassStatus.status = 0;
entInfo->burnClassStatus.turns = 0;
entInfo->burnClassStatus.damageCountdown = 0;
entInfo->burnClassStatus.unk4 = 0;
entInfo->burnClassStatus.badlyPoisonedDamageCount = 0;
entInfo->frozenClassStatus.status = 0;
entInfo->frozenClassStatus.turns = 0;
entInfo->frozenClassStatus.damageCountdown = 0;

View File

@ -434,9 +434,9 @@ void sub_8074094(Entity *entity)
}
else if (entityInfo->burnClassStatus.status == STATUS_BADLY_POISONED) {
if (entityInfo->burnClassStatus.damageCountdown == 0 || --entityInfo->burnClassStatus.damageCountdown == 0) {
s32 turns = entityInfo->burnClassStatus.unk4;
if (entityInfo->burnClassStatus.unk4 < BAD_POISON_DMG_TURN_VALUES_COUNT - 1)
entityInfo->burnClassStatus.unk4++;
s32 turns = entityInfo->burnClassStatus.badlyPoisonedDamageCount;
if (entityInfo->burnClassStatus.badlyPoisonedDamageCount < BAD_POISON_DMG_TURN_VALUES_COUNT - 1)
entityInfo->burnClassStatus.badlyPoisonedDamageCount++;
entityInfo->burnClassStatus.damageCountdown = gBadPoisonDmgCountdown;
if (turns >= BAD_POISON_DMG_TURN_VALUES_COUNT - 1)
turns = BAD_POISON_DMG_TURN_VALUES_COUNT - 1;

View File

@ -581,7 +581,7 @@ static void WriteBurnClassStatus(DataSerializer *seri, BurnClassStatus *src)
WriteBytes(seri, &src->status, 1);
WriteU8(seri, src->turns);
WriteU8(seri, src->damageCountdown);
WriteU8(seri, src->unk4);
WriteU8(seri, src->badlyPoisonedDamageCount);
}
static void WriteFrozenClassStatus(DataSerializer *seri, FrozenClassStatus *src)
@ -1372,7 +1372,7 @@ static void ReadBurnClassStatus(DataSerializer *seri, BurnClassStatus *dst)
ReadBytes(seri, &dst->status, 1);
dst->turns = ReadU8(seri);
dst->damageCountdown = ReadU8(seri);
dst->unk4 = ReadU8(seri);
dst->badlyPoisonedDamageCount = ReadU8(seri);
}
static void ReadFrozenClassStatus(DataSerializer *seri, FrozenClassStatus *dst)

View File

@ -493,7 +493,7 @@ void BurnedStatusTarget(Entity * pokemon, Entity * target, u8 param_3, bool8 dis
entityInfo->burnClassStatus.status = STATUS_BURN;
entityInfo->burnClassStatus.turns = CalculateStatusTurns(target,gBurnTurnRange,TRUE) + 1;
entityInfo->burnClassStatus.damageCountdown = 0;
entityInfo->burnClassStatus.unk4 = 0;
entityInfo->burnClassStatus.badlyPoisonedDamageCount = 0;
isNotBurned = FALSE;
if (param_3 != 0) {
sub_8041C34(target);
@ -582,7 +582,7 @@ void PoisonedStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
entityInfo->burnClassStatus.status = STATUS_POISONED;
entityInfo->burnClassStatus.turns = CalculateStatusTurns(target,gPoisonTurnRange,TRUE) + 1;
entityInfo->burnClassStatus.damageCountdown = 0;
entityInfo->burnClassStatus.unk4 = 0;
entityInfo->burnClassStatus.badlyPoisonedDamageCount = 0;
isNotPoisoned = FALSE;
sub_8041C6C(target);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB598);
@ -669,7 +669,7 @@ void BadlyPoisonedStatusTarget(Entity * pokemon, Entity * target, bool8 displayM
entityInfo->burnClassStatus.status = STATUS_BADLY_POISONED;
entityInfo->burnClassStatus.turns = CalculateStatusTurns(target,gBadPoisonTurnRange,TRUE) + 1;
entityInfo->burnClassStatus.damageCountdown = 0;
entityInfo->burnClassStatus.unk4 = 0;
entityInfo->burnClassStatus.badlyPoisonedDamageCount = 0;
isNotBadlyPoisoned = FALSE;
sub_8041C7C(target);
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB5B4);

View File

@ -437,7 +437,7 @@ void ParalyzeStatusTarget(Entity * pokemon, Entity * target, bool8 displayMessag
entityInfo->burnClassStatus.status = STATUS_PARALYSIS;
entityInfo->burnClassStatus.turns = CalculateStatusTurns(target,gParalysisTurnRange,TRUE) + 1;
entityInfo->burnClassStatus.damageCountdown = 0;
entityInfo->burnClassStatus.unk4 = 0;
entityInfo->burnClassStatus.badlyPoisonedDamageCount = 0;
bVar6 = FALSE;
TryDisplayDungeonLoggableMessage3(pokemon,target,*gUnknown_80FB2AC);
sub_8041C1C(target);