-/***********************************************************
-* Rocks'n'Diamonds -- McDuffin Strikes Back! *
-*----------------------------------------------------------*
-* (c) 1995-2006 Artsoft Entertainment *
-* Holger Schemel *
-* Detmolder Strasse 189 *
-* 33604 Bielefeld *
-* Germany *
-* e-mail: info@artsoft.org *
-*----------------------------------------------------------*
-* tools.h *
-***********************************************************/
+// ============================================================================
+// Rocks'n'Diamonds - McDuffin Strikes Back!
+// ----------------------------------------------------------------------------
+// (c) 1995-2014 by Artsoft Entertainment
+// Holger Schemel
+// info@artsoft.org
+// http://www.artsoft.org/
+// ----------------------------------------------------------------------------
+// tools.h
+// ============================================================================
#ifndef TOOLS_H
#define TOOLS_H
#include "game.h"
/* for SetDrawtoField */
-#define DRAW_BUFFERED 1
+#define DRAW_FIELDBUFFER 1
#define DRAW_BACKBUFFER 2
/* for DrawElementShifted */
void DrawMaskedBorder_DOOR_3();
void DrawMaskedBorder_ALL();
void DrawMaskedBorder(int);
+void DrawMaskedBorderToTarget(int);
void SetDrawtoField(int);
-#if 1
void RedrawPlayfield();
-#else
-void RedrawPlayfield(boolean, int, int, int, int);
-#endif
+void BlitScreenToBitmap_RND(Bitmap *);
void BlitScreenToBitmap(Bitmap *);
void BackToFront();
void FadeSkipNextFadeIn();
void FadeSkipNextFadeOut();
+Bitmap *getGlobalBorderBitmapFromStatus(int);
+
void ClearField();
void SetWindowBackgroundImageIfDefined(int);
void SetMainBackgroundImageIfDefined(int);
void DrawBackground(int, int, int, int);
void DrawBackgroundForFont(int, int, int, int, int);
void DrawBackgroundForGraphic(int, int, int, int, int);
+boolean CheckIfGlobalBorderHasChanged();
+void RedrawGlobalBorder();
void MarkTileDirty(int, int);
void SetBorderElement();
void SetRandomAnimationValue(int, int);
int getGraphicAnimationFrame(int, int);
-void DrawGraphicAnimation(int, int, int);
-void DrawGraphicAnimationExt(DrawBuffer *, int, int, int, int, int);
-
void DrawFixedGraphicAnimation(int, int, int);
void DrawFixedGraphicAnimationExt(DrawBuffer *, int, int, int, int, int);
void getSizedGraphicSource(int, int, int, Bitmap **, int *, int *);
void getFixedGraphicSource(int, int, Bitmap **, int *, int *);
void getMiniGraphicSource(int, Bitmap **, int *, int *);
-void getGraphicSourceExt(int, int, Bitmap **, int *, int *, boolean);
void getGraphicSource(int, int, Bitmap **, int *, int *);
void DrawGraphic(int, int, int, int);
void DrawScreenField(int, int);
void DrawLevelField(int, int);
+void DrawSizedElement(int, int, int, int);
+void DrawSizedElementOrWall(int, int, int, int, int);
+
void DrawMiniElement(int, int, int);
void DrawMiniElementOrWall(int, int, int, int);
void ShowEnvelopeDoor(char *text, int);
void DrawLevel(int);
+void DrawSizedLevel(int, int, int, int, int);
void DrawMiniLevel(int, int, int, int);
void DrawPreviewLevelInitial(void);
void DrawPreviewLevelAnimation(void);
void PlaySoundActivating();
void PlaySoundSelecting();
+void SetGameStatus(int);
+
void ToggleFullscreenOrChangeWindowScalingIfNeeded();
void ChangeViewportPropertiesIfNeeded();