diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/battle_anim_mons.c | 2 | ||||
-rw-r--r-- | src/battle_script_commands.c | 4 | ||||
-rw-r--r-- | src/field_effect.c | 10 | ||||
-rw-r--r-- | src/sprite.c | 2 |
4 files changed, 6 insertions, 12 deletions
diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index c47a29976..a62694834 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1706,7 +1706,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId) { s32 var = 64 - GetBattlerYDeltaFromSpriteId(otherSpriteId) * 2; u16 matrix = gSprites[spriteId].oam.matrixNum; - s32 var2 = (var << 8) / gOamMatrices[matrix].d; + s32 var2 = SAFE_DIV((var << 8), gOamMatrices[matrix].d); if (var2 > 128) var2 = 128; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index ee9251017..c6ab568ff 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -3108,7 +3108,7 @@ static void atk23_getexp(void) calculatedExp = gBaseStats[gBattleMons[gBattlerFainted].species].expYield * gBattleMons[gBattlerFainted].level / 7; if (viaExpShare) // at least one mon is getting exp via exp share { - *exp = calculatedExp / 2 / viaSentIn; + *exp = SAFE_DIV(calculatedExp / 2, viaSentIn); if (*exp == 0) *exp = 1; gExpShareExp = calculatedExp / 2 / viaExpShare; @@ -3117,7 +3117,7 @@ static void atk23_getexp(void) } else { - *exp = calculatedExp / viaSentIn; + *exp = SAFE_DIV(calculatedExp, viaSentIn); if (*exp == 0) *exp = 1; gExpShareExp = 0; diff --git a/src/field_effect.c b/src/field_effect.c index 4ccf50b0b..206b695b0 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -3668,14 +3668,8 @@ static void Task_MoveDeoxysRock_Step(u8 taskId) data[5] = sprite->pos1.y << 4; // UB: Possible divide by zero - #ifdef UBFIX - #define DIVISOR (data[8] ? data[8] : 1); - #else - #define DIVISOR (data[8]) - #endif - - data[6] = ((data[2] << 4) - data[4]) / DIVISOR; - data[7] = ((data[3] << 4) - data[5]) / DIVISOR; + data[6] = SAFE_DIV(((data[2] << 4) - data[4]), data[8]); + data[7] = SAFE_DIV(((data[3] << 4) - data[5]), data[8]); data[0]++; // fallthrough case 1: diff --git a/src/sprite.c b/src/sprite.c index af03aaf11..972fd932d 100644 --- a/src/sprite.c +++ b/src/sprite.c @@ -1333,7 +1333,7 @@ void ApplyAffineAnimFrameRelativeAndUpdateMatrix(u8 matrixNum, struct AffineAnim s16 ConvertScaleParam(s16 scale) { s32 val = 0x10000; - return val / scale; + return SAFE_DIV(val, scale); } void GetAffineAnimFrame(u8 matrixNum, struct Sprite *sprite, struct AffineAnimFrameCmd *frameCmd) |