projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added button to level editor to set random level colors for BD engine
[rocksndiamonds.git]
/
src
/
game_mm
/
mm_tools.c
diff --git
a/src/game_mm/mm_tools.c
b/src/game_mm/mm_tools.c
index 6aeadd315726deeddbcd3f6776d78ab00be46d21..3deac03390bad2d1a6e2fa3c6fa99648817320b1 100644
(file)
--- a/
src/game_mm/mm_tools.c
+++ b/
src/game_mm/mm_tools.c
@@
-165,35
+165,35
@@
void DrawGraphicShifted_MM(int x, int y, int dx, int dy, int graphic,
return;
}
return;
}
- if (dx || dy) // Verschiebung der Grafik?
+ if (dx || dy)
// Verschiebung der Grafik?
{
{
- if (x < BX1) // Element kommt von links ins Bild
+ if (x < BX1)
// Element kommt von links ins Bild
{
x = BX1;
width = dx;
cx = TILEX - dx;
dx = 0;
}
{
x = BX1;
width = dx;
cx = TILEX - dx;
dx = 0;
}
- else if (x > BX2) // Element kommt von rechts ins Bild
+ else if (x > BX2)
// Element kommt von rechts ins Bild
{
x = BX2;
width = -dx;
dx = TILEX + dx;
}
{
x = BX2;
width = -dx;
dx = TILEX + dx;
}
- else if (x
==BX1 && dx < 0)
// Element verläßt links das Bild
+ else if (x
== BX1 && dx < 0)
// Element verläßt links das Bild
{
width += dx;
cx = -dx;
dx = 0;
}
{
width += dx;
cx = -dx;
dx = 0;
}
- else if (x
==BX2 && dx > 0)
// Element verläßt rechts das Bild
+ else if (x
== BX2 && dx > 0)
// Element verläßt rechts das Bild
width -= dx;
width -= dx;
- else if (dx) // allg. Bewegung in x-Richtung
+ else if (dx)
// allg. Bewegung in x-Richtung
MarkTileDirty(x + SIGN(dx), y);
MarkTileDirty(x + SIGN(dx), y);
- if (y < BY1) // Element kommt von oben ins Bild
+ if (y < BY1)
// Element kommt von oben ins Bild
{
{
- if (cut_mode
==CUT_BELOW)
// Element oberhalb des Bildes
+ if (cut_mode
== CUT_BELOW)
// Element oberhalb des Bildes
return;
y = BY1;
return;
y = BY1;
@@
-201,13
+201,13
@@
void DrawGraphicShifted_MM(int x, int y, int dx, int dy, int graphic,
cy = TILEY - dy;
dy = 0;
}
cy = TILEY - dy;
dy = 0;
}
- else if (y > BY2) // Element kommt von unten ins Bild
+ else if (y > BY2)
// Element kommt von unten ins Bild
{
y = BY2;
height = -dy;
dy = TILEY + dy;
}
{
y = BY2;
height = -dy;
dy = TILEY + dy;
}
- else if (y
==BY1 && dy < 0)
// Element verläßt oben das Bild
+ else if (y
== BY1 && dy < 0)
// Element verläßt oben das Bild
{
height += dy;
cy = -dy;
{
height += dy;
cy = -dy;
@@
-215,19
+215,19
@@
void DrawGraphicShifted_MM(int x, int y, int dx, int dy, int graphic,
}
else if (dy > 0 && cut_mode == CUT_ABOVE)
{
}
else if (dy > 0 && cut_mode == CUT_ABOVE)
{
- if (y == BY2) // Element unterhalb des Bildes
+ if (y == BY2)
// Element unterhalb des Bildes
return;
height = dy;
cy = TILEY - dy;
dy = TILEY;
MarkTileDirty(x, y + 1);
return;
height = dy;
cy = TILEY - dy;
dy = TILEY;
MarkTileDirty(x, y + 1);
- } // Element verläßt unten das Bild
+ }
// Element verläßt unten das Bild
else if (dy > 0 && (y == BY2 || cut_mode == CUT_BELOW))
{
height -= dy;
}
else if (dy > 0 && (y == BY2 || cut_mode == CUT_BELOW))
{
height -= dy;
}
- else if (dy) // allg. Bewegung in y-Richtung
+ else if (dy)
// allg. Bewegung in y-Richtung
{
MarkTileDirty(x, y + SIGN(dy));
}
{
MarkTileDirty(x, y + SIGN(dy));
}
@@
-1057,7
+1057,8
@@
static void DrawTileCursor_Xsn(int draw_target)
}
}
}
}
-void DrawTileCursor_MM(int draw_target, boolean tile_cursor_active)
+void DrawTileCursor_MM(int draw_target, int drawing_stage,
+ boolean tile_cursor_active)
{
if (program.headless)
return;
{
if (program.headless)
return;
@@
-1072,7
+1073,12
@@
void DrawTileCursor_MM(int draw_target, boolean tile_cursor_active)
int width = tilesize;
int height = tilesize;
int width = tilesize;
int height = tilesize;
- DrawTileCursor_Xsn(draw_target);
+ if (!drawing_stage)
+ {
+ DrawTileCursor_Xsn(draw_target);
+
+ return;
+ }
if (!tile_cursor.enabled ||
!tile_cursor.active ||
if (!tile_cursor.enabled ||
!tile_cursor.active ||