From: Holger Schemel Date: Sun, 21 Jan 2001 15:16:57 +0000 (+0100) Subject: rnd-20010121-1-src X-Git-Tag: 2.0.1^2~23 X-Git-Url: https://git.artsoft.org/?a=commitdiff_plain;h=20ac4856f1acb923be1793a0e9060987f15a1295;p=rocksndiamonds.git rnd-20010121-1-src --- diff --git a/CHANGES b/CHANGES index 600a5460..ec968c99 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,8 @@ +Release Version 2.0.1 [?? ??? 2001] +----------------------------------- + - bug in explosion code fixed that broke level 24 of "Baby Ghost Mine" + - Supaplex "orange disk" emulation bug fixed thanks to Mihail Milushev + Release Version 2.0.0 [01 JAN 2001] ----------------------------------- - major code redesign to maintain generic game functions in a separate @@ -5,9 +10,9 @@ Release Version 2.0.0 [01 JAN 2001] - can be compiled with SDL library to build native Windows version - DOS and Windows versions can be compiled with gcc cross-compiler - trying to open already busy audio device does not block the game - - fixed network playing bug (patch from web site) + - bug in network playing code fixed (patch from web site) - SDL version can load and play music modules - - fixed element description in level editor for EM doors and keys + - bug in level editor fixed for EM doors and keys element description - sound sample frequency raised from 8 kHz to 22 kHz Release Version 1.4.0 [27 OCT 1999] diff --git a/src/game.c b/src/game.c index 811d103a..65fff98e 100644 --- a/src/game.c +++ b/src/game.c @@ -695,9 +695,9 @@ void InitGame() for (i=0; i= GAME_VERSION_2_0) - Elementeigenschaften1[ep_slippery[i]] |= EP_BIT_SLIPPERY; + Elementeigenschaften2[ep_slippery[i]] |= EP_BIT_SLIPPERY_GEMS; else - Elementeigenschaften1[ep_slippery[i]] &= ~EP_BIT_SLIPPERY; + Elementeigenschaften2[ep_slippery[i]] &= ~EP_BIT_SLIPPERY_GEMS; } } @@ -2585,9 +2585,10 @@ void StartMoving(int x, int y) element != EL_DX_SUPABOMB) #endif #else - else if (IS_SLIPPERY(Feld[x][y+1]) && + else if ((IS_SLIPPERY(Feld[x][y+1]) || + (IS_SLIPPERY_GEMS(Feld[x][y+1]) && IS_GEM(element))) && !IS_FALLING(x, y+1) && !JustStopped[x][y+1] && - element != EL_DX_SUPABOMB) + element != EL_DX_SUPABOMB && element != EL_SP_DISK_ORANGE) #endif { boolean left = (x>0 && IS_FREE(x-1, y) && @@ -4420,15 +4421,17 @@ void GameActions() { StartMoving(x, y); - if (IS_GEM(element)) + if (IS_GEM(element) || element == EL_SP_INFOTRON) EdelsteinFunkeln(x, y); } else if (IS_MOVING(x, y)) ContinueMoving(x, y); else if (IS_ACTIVE_BOMB(element)) CheckDynamite(x, y); +#if 0 else if (element == EL_EXPLODING && !game.explosions_delayed) Explode(x, y, Frame[x][y], EX_NORMAL); +#endif else if (element == EL_AMOEBING) AmoebeWaechst(x, y); else if (element == EL_DEAMOEBING) @@ -4518,16 +4521,21 @@ void GameActions() } } +#if 0 if (game.explosions_delayed) +#endif { game.explosions_delayed = FALSE; for (y=0; y= lev_fieldy-1 || !IS_BELT(Feld[ux][uy+1])) {