rnd-20091211-1-src
[rocksndiamonds.git] / src / game_sp / init.c
index 1324d8e35f4fe57a7b00cadd26888f33c5a8390e..b3a1acb802bfb6bc60057ebb25c70b1908976cfa 100644 (file)
@@ -7,21 +7,9 @@ Bitmap *sp_objects;
 
 Bitmap *screenBitmap;
 
-#if 0
-static void BlitScreenToBitmap_SP__Stage_Blt()
-{
-  BlitScreenToBitmap_SP(window);
-}
-#endif
-
 static void init_struct_functions()
 {
-#if 1
-  Stage.Blt = &DDScrollBuffer_Blt;
-#else
-  Stage.Blt = &BlitScreenToBitmap_SP__Stage_Blt;
-#endif
-
+  Stage.Blt           = &DDScrollBuffer_Blt;
   Stage.ScrollTo      = &DDScrollBuffer_ScrollTo;
   Stage.ScrollTowards = &DDScrollBuffer_ScrollTowards;
   Stage.SoftScrollTo  = &DDScrollBuffer_SoftScrollTo;
@@ -31,12 +19,12 @@ static void init_struct_functions()
 
 static void init_global_values()
 {
-  menBorder.Checked = True * 0;
+  menBorder.Checked = False;
   menPanel.Checked = True;
   menAutoScroll.Checked = True;
 
-  MainForm.picPane.Width = picPane.Width = 1935;
-  MainForm.picPane.Height = picPane.Height = 1635;
+  MainForm.picPane.Width  = picPane.Width  = SCR_FIELDX * TILEX;
+  MainForm.picPane.Height = picPane.Height = SCR_FIELDY * TILEY;
 }
 
 void sp_open_all()
@@ -48,7 +36,10 @@ void sp_open_all()
 
   SetBitmaps_SP(&sp_objects);
 
-#if 1
+#if 0
+  /* too small for oversized levels, but too big for graphics performance */
+  /* (the whole playfield is drawn/updated, not only visible/scrolled area) */
+  /* !!! FIX THIS !!! */
   screenBitmap = CreateBitmap(60 * TILEX, 24 * TILEY,
                               DEFAULT_DEPTH);
 #else
@@ -62,3 +53,25 @@ void sp_open_all()
 void sp_close_all()
 {
 }
+
+unsigned int InitEngineRandom_SP(long seed)
+{
+  if (seed == NEW_RANDOMIZE)
+  {
+#if 0
+  printf("::: init.c: InitEngineRandom_SP(): subRandomize()\n");
+#endif
+
+    subRandomize();
+
+    seed = (long)RandomSeed;
+  }
+
+  RandomSeed = (short)seed;
+
+#if 0
+  printf("::: init.c: InitEngineRandom_SP(): RandomSeed == %d\n", RandomSeed);
+#endif
+
+  return (unsigned int) seed;
+}