summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/throw.cc
diff options
context:
space:
mode:
authorSteve Melenchuk <smelenchuk@gmail.com>2014-05-01 21:34:04 -0600
committerSteve Melenchuk <smelenchuk@gmail.com>2014-05-01 21:34:04 -0600
commitbf76723ced46f415ffe8bfd25aafdd15b4475d60 (patch)
treea1337342b8415372adad8c969e02e4e059a040f0 /crawl-ref/source/throw.cc
parent7504f3367f7edbeda7271758a45a27e4f88f4f45 (diff)
downloadcrawl-ref-bf76723ced46f415ffe8bfd25aafdd15b4475d60.tar.gz
crawl-ref-bf76723ced46f415ffe8bfd25aafdd15b4475d60.zip
Fix returning (78291).
Diffstat (limited to 'crawl-ref/source/throw.cc')
-rw-r--r--crawl-ref/source/throw.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/crawl-ref/source/throw.cc b/crawl-ref/source/throw.cc
index 1b33159300..31797e1d12 100644
--- a/crawl-ref/source/throw.cc
+++ b/crawl-ref/source/throw.cc
@@ -866,10 +866,13 @@ bool throw_it(bolt &pbolt, int throw_2, bool teleport, int acc_bonus,
break;
}
- // check for returning ammo from launchers
- if (returning && projected == LRET_LAUNCHED)
+ // check for returning ammo
+ if (returning && projected != LRET_FUMBLED)
{
- if (!one_chance_in(1 + skill_bump(range_skill(*you.weapon()))))
+ const skill_type sk =
+ projected == LRET_THROWN ? SK_THROWING
+ : range_skill(*you.weapon());
+ if (!one_chance_in(1 + skill_bump(sk)))
did_return = true;
}