// (c) 1994-2017 by Artsoft Entertainment
// Holger Schemel
// info@artsoft.org
-// http://www.artsoft.org/
+// https://www.artsoft.org/
// ----------------------------------------------------------------------------
// mm_init.c
// ============================================================================
#include "mm_main.h"
+Bitmap *drawto_mm;
+
struct EngineSnapshotInfo_MM engine_snapshot_mm;
+void InitGfxBuffers_MM(void)
+{
+ ReCreateBitmap(&drawto_mm, video.width, video.height);
+}
+
unsigned int InitEngineRandom_MM(int seed)
{
return InitEngineRandom(seed);
}
-void InitElementProperties_MM()
+void InitElementProperties_MM(void)
{
- int i,j;
+ int i, j;
static int ep_grid[] =
{
};
static int ep_pacman_num = sizeof(ep_pacman) / sizeof(int);
+ static int ep_envelope[] =
+ {
+ EL_ENVELOPE_1,
+ EL_ENVELOPE_2,
+ EL_ENVELOPE_3,
+ EL_ENVELOPE_4,
+ };
+ static int ep_envelope_num = sizeof(ep_envelope) / sizeof(int);
+
static long ep_bit[] =
{
EP_BIT_GRID,
EP_BIT_INACTIVE,
EP_BIT_WALL,
EP_BIT_PACMAN,
+ EP_BIT_ENVELOPE,
};
static int *ep_array[] =
{
ep_inactive,
ep_wall,
ep_pacman,
+ ep_envelope,
};
static int *ep_num[] =
{
&ep_inactive_num,
&ep_wall_num,
&ep_pacman_num,
+ &ep_envelope_num,
};
static int num_properties = sizeof(ep_num) / sizeof(int *);
- for(i = 0; i < MAX_ELEMENTS; i++)
+ for (i = 0; i < MAX_ELEMENTS; i++)
Elementeigenschaften[i] = 0;
- for(i = 0; i < num_properties; i++)
- for(j = 0; j < *(ep_num[i]); j++)
+ for (i = 0; i < num_properties; i++)
+ for (j = 0; j < *(ep_num[i]); j++)
Elementeigenschaften[(ep_array[i])[j]] |= ep_bit[i];
- for(i = EL_CHAR_START; i <= EL_CHAR_END; i++)
+ for (i = EL_CHAR_START; i <= EL_CHAR_END; i++)
Elementeigenschaften[i] |= (EP_BIT_CHAR | EP_BIT_INACTIVE);
- for(i = EL_WALL_START; i <= EL_WALL_END; i++)
+ for (i = EL_WALL_START; i <= EL_WALL_END; i++)
Elementeigenschaften[i] |= EP_BIT_WALL;
}
-void mm_open_all()
+void mm_open_all(void)
{
InitElementProperties_MM();
}
-
-void mm_close_all()
-{
-}
-
-
-/* ------------------------------------------------------------------------- */
-/* Mirror Magic game engine snapshot handling functions */
-/* ------------------------------------------------------------------------- */
-
-void SaveEngineSnapshotValues_MM(ListNode **buffers)
-{
- engine_snapshot_mm.game_mm = game_mm;
-}
-
-void LoadEngineSnapshotValues_MM()
-{
- /* stored engine snapshot buffers already restored at this point */
-
- game_mm = engine_snapshot_mm.game_mm;
-
- RedrawPlayfield_MM(TRUE);
-}