X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame.c;h=74c934d291b4284f04e963b5b53d3f911edb69a8;hb=a7714efc55468a9c97e9d36116ec16e5b8875422;hp=1c86acb0cc779f7196f82e660fc7361e9b164a2c;hpb=cd2e7117917e6fda0cffd50acabc71ac4e2672ce;p=rocksndiamonds.git diff --git a/src/game.c b/src/game.c index 1c86acb0..74c934d2 100644 --- a/src/game.c +++ b/src/game.c @@ -5310,14 +5310,14 @@ static void ChangeActiveTrap(int x, int y) static void ChangeElementNowExt(int x, int y, int target_element) { -#if 1 - /* check if the new element is unaccessible for the player */ - if (IS_PLAYER(x, y) && !IS_ACCESSIBLE(target_element)) + /* check if element under player changes from accessible to unaccessible + (needed for special case of dropping element which then changes) */ + if (IS_PLAYER(x, y) && + IS_ACCESSIBLE(Feld[x][y]) && !IS_ACCESSIBLE(target_element)) { Bang(x, y); return; } -#endif RemoveField(x, y); Feld[x][y] = target_element;