X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_sp%2Finit.c;h=ee7034247ef27228fa77cc6e585a50d00b10412b;hb=572a4bab20b6f36ef1a4782094b27ac5a703a476;hp=1324d8e35f4fe57a7b00cadd26888f33c5a8390e;hpb=1533b136c6f8d0656cc45ca4c204104ef3d75249;p=rocksndiamonds.git diff --git a/src/game_sp/init.c b/src/game_sp/init.c index 1324d8e3..ee703424 100644 --- a/src/game_sp/init.c +++ b/src/game_sp/init.c @@ -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; @@ -35,8 +23,8 @@ static void init_global_values() 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; +}