summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/traps.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/traps.cc')
-rw-r--r--crawl-ref/source/traps.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/crawl-ref/source/traps.cc b/crawl-ref/source/traps.cc
index a074d15f2c..e3aeb77fdb 100644
--- a/crawl-ref/source/traps.cc
+++ b/crawl-ref/source/traps.cc
@@ -994,7 +994,14 @@ level_id generic_shaft_dest(level_pos lpos)
int curr_depth = lid.depth;
Branch &branch = branches[lid.branch];
- lid.depth += ((pos.x + pos.y) % 3) + 1;
+ // 25% drop one level
+ // 50% drop two levels
+ // 25% drop three levels
+ lid.depth += 2;
+ if (pos.x % 2)
+ lid.depth--;
+ if (pos.y % 2)
+ lid.depth++;
if (lid.depth > branch.depth)
lid.depth = branch.depth;