X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_mm%2Fmm_game.c;h=5cdc8ed3114712b6e97fd8f11d1ce9c22a8f8b21;hb=258d9d4ffe4374628f4bf49f2f0a30c4c1701933;hp=d57c5a3b0911f66ff6f1f05ee6bfcf734b23fd52;hpb=091fb8657b4a793fb753c58fff21dbd2458c419f;p=rocksndiamonds.git diff --git a/src/game_mm/mm_game.c b/src/game_mm/mm_game.c index d57c5a3b..5cdc8ed3 100644 --- a/src/game_mm/mm_game.c +++ b/src/game_mm/mm_game.c @@ -808,13 +808,21 @@ static void GameOver_MM(int game_over_cause) { game_mm.game_over = TRUE; game_mm.game_over_cause = game_over_cause; - game_mm.game_over_message = (game_over_cause == GAME_OVER_BOMB ? - "Bomb killed Mc Duffin!" : - game_over_cause == GAME_OVER_NO_ENERGY ? - "Out of magic energy!" : - game_over_cause == GAME_OVER_OVERLOADED ? - "Magic spell hit Mc Duffin!" : - NULL); + game_mm.game_over_message = (game_mm.has_mcduffin ? + (game_over_cause == GAME_OVER_BOMB ? + "Bomb killed Mc Duffin!" : + game_over_cause == GAME_OVER_NO_ENERGY ? + "Out of magic energy!" : + game_over_cause == GAME_OVER_OVERLOADED ? + "Magic spell hit Mc Duffin!" : + NULL) : + (game_over_cause == GAME_OVER_BOMB ? + "Bomb destroyed laser cannon!" : + game_over_cause == GAME_OVER_NO_ENERGY ? + "Out of laser energy!" : + game_over_cause == GAME_OVER_OVERLOADED ? + "Laser beam hit laser cannon!" : + NULL)); SetTileCursorActive(FALSE); } @@ -2824,11 +2832,9 @@ static void Explode_MM(int x, int y, int phase, int mode) Bang_MM(laser.start_edge.x, laser.start_edge.y); - GameOver_MM(GAME_OVER_DELAYED); - laser.overloaded = FALSE; } - else if (IS_MCDUFFIN(center_element)) + else if (IS_MCDUFFIN(center_element) || IS_LASER(center_element)) { GameOver_MM(GAME_OVER_BOMB); }