diff --git a/src/badguy/dispenser.cpp b/src/badguy/dispenser.cpp index b8af7b20e30..264b1f7d462 100644 --- a/src/badguy/dispenser.cpp +++ b/src/badguy/dispenser.cpp @@ -141,11 +141,16 @@ Dispenser::active_update(float dt_sec) } if (m_dispense_timer.check()) { - // Auto always shoots in Tux's direction. - if (m_autotarget) + auto player = get_nearest_player(); + if (player) { - auto player = get_nearest_player(); - if (player) + if(player->is_dying() || player->is_dead()) + { + return; + } + + // Auto always shoots in Tux's direction. + if (m_autotarget) { Direction target_dir = (player->get_pos().x > get_pos().x) ? Direction::RIGHT : Direction::LEFT; if (m_dir != target_dir) @@ -155,6 +160,7 @@ Dispenser::active_update(float dt_sec) } } } + launch_object(); } }