rnd-20010122-3-src
authorHolger Schemel <info@artsoft.org>
Mon, 22 Jan 2001 21:28:40 +0000 (22:28 +0100)
committerHolger Schemel <info@artsoft.org>
Sat, 30 Aug 2014 08:35:58 +0000 (10:35 +0200)
src/game.c

index 2a17a15f648d92cb31acaf01aef253a267d439c2..a4940d9692de05210c2eb74ec6468f82e68477b9 100644 (file)
@@ -4250,6 +4250,8 @@ static void PlayerActions(struct PlayerInfo *player, byte player_action)
     SnapField(player, 0, 0);
     CheckGravityMovement(player);
 
+    player->last_move_dir = MV_NO_MOVING;
+
     if (++player->frame_reset_delay > player->move_delay_value)
       player->Frame = 0;
   }
@@ -5238,7 +5240,9 @@ void TestIfBadThingHitsGoodThing(int badx, int bady)
     {
       struct PlayerInfo *player = PLAYERINFO(killx, killy);
 
-      if (player->shield_active_time_left > 0)
+      if (Feld[badx][bady] == EL_ROBOT && player->last_move_dir)
+       ;       /* robot does not kill player if he moves */
+      else if (player->shield_active_time_left > 0)
        Bang(badx, bady);
       else if (!PLAYER_PROTECTED(killx, killy))
        KillHero(player);