X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame.c;h=59882daca9ce298423b0826b080eb391dfad2673;hb=9e3b9d32e82663858c54a3884a2bb7680d458218;hp=d67a91a0b8c743ba46cbb55d245067f314897fa4;hpb=60905b7f08ae9a2c88299731a8ce490c31d8b6e0;p=rocksndiamonds.git diff --git a/src/game.c b/src/game.c index d67a91a0..59882dac 100644 --- a/src/game.c +++ b/src/game.c @@ -1877,6 +1877,8 @@ static void InitField(int x, int y, boolean init_game) case EL_MOLE_RIGHT: case EL_MOLE_UP: case EL_MOLE_DOWN: + case EL_SPRING_LEFT: + case EL_SPRING_RIGHT: InitMovDir(x, y); break; @@ -2991,6 +2993,18 @@ static void InitGameEngine(void) game_em.use_old_explosions = (game.engine_version < VERSION_IDENT(4,1,4,2)); + game_em.use_old_android = + (game.engine_version < VERSION_IDENT(4,1,4,2)); + + game_em.use_old_push_elements = + (game.engine_version < VERSION_IDENT(4,1,4,2)); + + game_em.use_old_push_into_acid = + (game.engine_version < VERSION_IDENT(4,1,4,2)); + + game_em.use_wrap_around = + (game.engine_version > VERSION_IDENT(4,1,4,1)); + // -------------------------------------------------------------------------- // set maximal allowed number of custom element changes per game frame @@ -4486,6 +4500,12 @@ void InitMovDir(int x, int y) MovDir[x][y] = direction[2][element - EL_MOLE_LEFT]; break; + case EL_SPRING_LEFT: + case EL_SPRING_RIGHT: + Feld[x][y] = EL_SPRING; + MovDir[x][y] = direction[2][element - EL_SPRING_LEFT]; + break; + default: if (IS_CUSTOM_ELEMENT(element)) {