Add ITEM6_HEAL constants, change move flags to shifts

This commit is contained in:
GriffinR
2020-10-05 18:48:51 -04:00
parent 4a773ce18d
commit 65a4e06737
5 changed files with 44 additions and 37 deletions

View File

@@ -2836,9 +2836,9 @@ void CalculateMonStats(struct Pokemon *mon)
newMaxHP = (((n + hpEV / 4) * level) / 100) + level + 10;
}
gBattleScripting.field_23 = newMaxHP - oldMaxHP;
if (gBattleScripting.field_23 == 0)
gBattleScripting.field_23 = 1;
gBattleScripting.levelUpHP = newMaxHP - oldMaxHP;
if (gBattleScripting.levelUpHP == 0)
gBattleScripting.levelUpHP = 1;
SetMonData(mon, MON_DATA_MAX_HP, &newMaxHP);
@@ -4912,19 +4912,21 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
break;
}
}
// Get amount of HP to restore
dataUnsigned = itemEffect[var_3C++];
switch (dataUnsigned)
{
case 0xFF:
case ITEM6_HEAL_FULL:
dataUnsigned = GetMonData(mon, MON_DATA_MAX_HP, NULL) - GetMonData(mon, MON_DATA_HP, NULL);
break;
case 0xFE:
case ITEM6_HEAL_HALF:
dataUnsigned = GetMonData(mon, MON_DATA_MAX_HP, NULL) / 2;
if (dataUnsigned == 0)
dataUnsigned = 1;
break;
case 0xFD:
dataUnsigned = gBattleScripting.field_23;
case ITEM6_HEAL_LVL_UP:
dataUnsigned = gBattleScripting.levelUpHP;
break;
}
if (GetMonData(mon, MON_DATA_MAX_HP, NULL) != GetMonData(mon, MON_DATA_HP, NULL))