projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed redraw/fade bugs when redefining the playfield size or position
[rocksndiamonds.git]
/
src
/
libgame
/
system.c
diff --git
a/src/libgame/system.c
b/src/libgame/system.c
index 25edb0effd65a959df172d43fa84f9c03d77ddcb..eec5d192960ac9e784d5232ad8e47ef5ccb90dc1 100644
(file)
--- a/
src/libgame/system.c
+++ b/
src/libgame/system.c
@@
-170,6
+170,8
@@
void InitGfxFieldInfo(int sx, int sy, int sxsize, int sysize,
gfx.field_save_buffer = field_save_buffer;
gfx.field_save_buffer = field_save_buffer;
+ gfx.drawing_area_changed = FALSE;
+
SetDrawDeactivationMask(REDRAW_NONE); /* do not deactivate drawing */
SetDrawBackgroundMask(REDRAW_NONE); /* deactivate masked drawing */
}
SetDrawDeactivationMask(REDRAW_NONE); /* do not deactivate drawing */
SetDrawBackgroundMask(REDRAW_NONE); /* deactivate masked drawing */
}
@@
-463,6
+465,16
@@
boolean DrawingOnBackground(int x, int y)
CheckDrawingArea(x, y, 1, 1, gfx.draw_background_mask));
}
CheckDrawingArea(x, y, 1, 1, gfx.draw_background_mask));
}
+boolean DrawingAreaChanged()
+{
+ int drawing_area_changed = gfx.drawing_area_changed;
+
+ // reset flag for change of drawing area after querying it
+ gfx.drawing_area_changed = FALSE;
+
+ return drawing_area_changed;
+}
+
static boolean InClippedRectangle(Bitmap *bitmap, int *x, int *y,
int *width, int *height, boolean is_dest)
{
static boolean InClippedRectangle(Bitmap *bitmap, int *x, int *y,
int *width, int *height, boolean is_dest)
{