From 9e29b516de91de234a42e5ff2e2d22b3f1deb238 Mon Sep 17 00:00:00 2001 From: copperwater Date: Tue, 11 Sep 2018 11:57:24 -0400 Subject: [PATCH] Remove Sokoban luck penalties for things you can't cheat with Jumping, Newton's 3rd Law hurtling, and throwing an iron ball: attempting to do any of these in such a way that you would diagonally pass between boulders/walls causes the Luck penalty. However, none of these actually get you through the diagonal gap, thus they can't be used to cheat and the penalty doesn't make sense. --- doc/fixes37.0 | 1 + src/apply.c | 1 - src/ball.c | 1 - src/dothrow.c | 1 - 4 files changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/fixes37.0 b/doc/fixes37.0 index 614c26960..579441b59 100644 --- a/doc/fixes37.0 +++ b/doc/fixes37.0 @@ -106,6 +106,7 @@ default shk sell prompt to N (github #265) teach non-mindless monsters about the Castle trapdoors (github #265) always print a message when the hero teleports (github #265) always print a message when the hero level teleports (github #265) +remove Sokoban luck penalties for actions you can't cheat with (github #260) Code Cleanup and Reorganization diff --git a/src/apply.c b/src/apply.c index 4a949206d..fad2265a9 100644 --- a/src/apply.c +++ b/src/apply.c @@ -1808,7 +1808,6 @@ int magic; /* 0=Physical, otherwise skill level */ * the effects of landing on the final position. */ teleds(cc.x, cc.y, FALSE); - sokoban_guilt(); nomul(-1); g.multi_reason = "jumping around"; g.nomovemsg = ""; diff --git a/src/ball.c b/src/ball.c index 329fc9135..25bfbd9b6 100644 --- a/src/ball.c +++ b/src/ball.c @@ -967,7 +967,6 @@ xchar x, y; newsym(u.ux0, u.uy0); /* clean up old position */ if (u.ux0 != u.ux || u.uy0 != u.uy) { spoteffects(TRUE); - sokoban_guilt(); } } } diff --git a/src/dothrow.c b/src/dothrow.c index f34206dd1..ace9d4984 100644 --- a/src/dothrow.c +++ b/src/dothrow.c @@ -842,7 +842,6 @@ boolean verbose; You("%s in the opposite direction.", range > 1 ? "hurtle" : "float"); /* if we're in the midst of shooting multiple projectiles, stop */ endmultishot(TRUE); - sokoban_guilt(); uc.x = u.ux; uc.y = u.uy; /* this setting of cc is only correct if dx and dy are [-1,0,1] only */