summaryrefslogtreecommitdiff
path: root/src/lua_bind.c
diff options
context:
space:
mode:
authorBardur Arantsson <bardur@scientician.net>2012-03-04 20:33:34 +0100
committerBardur Arantsson <bardur@scientician.net>2012-03-29 20:41:39 +0200
commit1cef2bec6cfe51855e53ec29fa5ea64d506eb086 (patch)
tree9705900f04f1a5375b32a2d7a45852f1d1c0752e /src/lua_bind.c
parentcbf8457017b6c92fba7853066af8a90c870e6c8f (diff)
Refactor: Remove duplicate code for "clamping" spell failure chance.
Diffstat (limited to 'src/lua_bind.c')
-rw-r--r--src/lua_bind.c36
1 files changed, 4 insertions, 32 deletions
diff --git a/src/lua_bind.c b/src/lua_bind.c
index 721ffe30..3a901a7c 100644
--- a/src/lua_bind.c
+++ b/src/lua_bind.c
@@ -44,15 +44,8 @@ bool_ lua_spell_success(magic_power *spell, int stat, char *oups_fct)
/* Extract the minimum failure rate */
minfail = adj_mag_fail[p_ptr->stat_ind[stat]];
- /* Minimum failure rate */
- if (chance < minfail) chance = minfail;
-
- /* Stunning makes spells harder */
- if (p_ptr->stun > 50) chance += 25;
- else if (p_ptr->stun) chance += 15;
-
- /* Always a 5 percent chance of working */
- if (chance > 95) chance = 95;
+ /* Failure rate */
+ chance = clamp_failure_chance(chance, minfail);
/* Failed spell */
if (rand_int(100) < chance)
@@ -300,18 +293,8 @@ s32b lua_spell_chance(s32b chance, int level, int skill_level, int mana, int cur
/* Hack -- Priest prayer penalty for "edged" weapons -DGK */
if ((forbid_non_blessed()) && (p_ptr->icky_wield)) chance += 25;
- /* Minimum failure rate */
- if (chance < minfail) chance = minfail;
-
- /* Stunning makes spells harder */
- if (p_ptr->stun > 50) chance += 25;
- else if (p_ptr->stun) chance += 15;
-
- /* Always a 5 percent chance of working */
- if (chance > 95) chance = 95;
-
/* Return the chance */
- return (chance);
+ return clamp_failure_chance(chance, minfail);
}
s32b lua_spell_device_chance(s32b chance, int level, int base_level)
@@ -323,20 +306,9 @@ s32b lua_spell_device_chance(s32b chance, int level, int base_level)
/* Extract the minimum failure rate */
minfail = 15 - get_skill_scale(SKILL_DEVICE, 25);
- if (minfail < 0) minfail = 0;
-
- /* Minimum failure rate */
- if (chance < minfail) chance = minfail;
-
- /* Stunning makes spells harder */
- if (p_ptr->stun > 50) chance += 25;
- else if (p_ptr->stun) chance += 15;
-
- /* Always a 5 percent chance of working */
- if (chance > 95) chance = 95;
/* Return the chance */
- return (chance);
+ return clamp_failure_chance(chance, minfail);
}
/* Cave */