projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed explosion graphics for bomb and McDuffin for MM engine
[rocksndiamonds.git]
/
src
/
game_mm
/
mm_game.c
diff --git
a/src/game_mm/mm_game.c
b/src/game_mm/mm_game.c
index 63d7690b72b232c420d817d5731eb8eb3508c073..c6256e46f6c31db01f5264fb4ccd20c9fc4d5ed6 100644
(file)
--- a/
src/game_mm/mm_game.c
+++ b/
src/game_mm/mm_game.c
@@
-2676,7
+2676,10
@@
static void Explode_MM(int x, int y, int phase, int mode)
Store2[x][y] = mode;
Tile[x][y] = EL_EXPLODING_OPAQUE;
Store2[x][y] = mode;
Tile[x][y] = EL_EXPLODING_OPAQUE;
- GfxElement[x][y] = center_element;
+
+ GfxElement[x][y] = (center_element == EL_BOMB_ACTIVE ? EL_BOMB :
+ IS_MCDUFFIN(center_element) ? EL_MCDUFFIN :
+ center_element);
MovDir[x][y] = MovPos[x][y] = MovDelay[x][y] = 0;
MovDir[x][y] = MovPos[x][y] = MovDelay[x][y] = 0;
@@
-3493,7
+3496,11
@@
static void GameActions_MM_Ext(void)
int new_element = native_mm_level.ball_content[element_pos];
int new_element = native_mm_level.ball_content[element_pos];
- Store[ELX][ELY] = get_rotated_element(new_element, RND(16));
+ // randomly rotate newly created game element, if needed
+ if (native_mm_level.rotate_ball_content)
+ new_element = get_rotated_element(new_element, RND(16));
+
+ Store[ELX][ELY] = new_element;
Store2[ELX][ELY] = TRUE;
}
Store2[ELX][ELY] = TRUE;
}