X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftools.c;h=dbd8c5d5b9c567b5e5aca73c7f45c521b8fa4631;hb=9a95effa1085fd67ed18fe1903c27a1fa820088f;hp=57fb652d2c3a58bc0b1cc7426bc251fba259127b;hpb=f806f2ad0dfa82c3abd3d027250a549ca22f4374;p=rocksndiamonds.git diff --git a/src/tools.c b/src/tools.c index 57fb652d..dbd8c5d5 100644 --- a/src/tools.c +++ b/src/tools.c @@ -586,6 +586,8 @@ void DrawPlayer(struct PlayerInfo *player) graphic = GFX_MURPHY_GO_LEFT; else if (player->MovDir & (MV_UP | MV_DOWN) && last_dir == MV_RIGHT) graphic = GFX_MURPHY_GO_RIGHT; + else + graphic = GFX_MURPHY_GO_LEFT; graphic += getGraphicAnimationPhase(3, 2, ANIM_OSCILLATE); } @@ -645,7 +647,9 @@ void DrawPlayer(struct PlayerInfo *player) int element = Feld[next_jx][next_jy]; int graphic = el2gfx(element); - if ((element == EL_FELSBROCKEN || element == EL_SP_ZONK) && sxx) + if ((element == EL_FELSBROCKEN || + element == EL_SP_ZONK || + element == EL_BD_ROCK) && sxx) { int phase = (player->GfxPos / (TILEX / 4)); @@ -1170,12 +1174,16 @@ void DrawScreenElementExt(int x, int y, int dx, int dy, int element, { graphic += phase4; } - else if ((element == EL_FELSBROCKEN || element == EL_SP_ZONK || + else if ((element == EL_FELSBROCKEN || + element == EL_SP_ZONK || + element == EL_BD_ROCK || IS_GEM(element)) && !cut_mode) { if (uy >= lev_fieldy-1 || !IS_BELT(Feld[ux][uy+1])) { - if (element == EL_FELSBROCKEN || element == EL_SP_ZONK) + if (element == EL_FELSBROCKEN || + element == EL_SP_ZONK || + element == EL_BD_ROCK) { if (dir == MV_LEFT) graphic += (4 - phase4) % 4; @@ -2650,8 +2658,12 @@ int el2gfx(int element) case EL_TUBE_RIGHT_UP: return GFX_TUBE_RIGHT_UP; case EL_TUBE_RIGHT_DOWN: return GFX_TUBE_RIGHT_DOWN; case EL_SPRING: return GFX_SPRING; + case EL_SPRING_MOVING: return GFX_SPRING; case EL_TRAP_INACTIVE: return GFX_TRAP_INACTIVE; case EL_TRAP_ACTIVE: return GFX_TRAP_ACTIVE; + case EL_BD_WALL: return GFX_BD_WALL; + case EL_BD_ROCK: return GFX_BD_ROCK; + case EL_DX_SUPABOMB: return GFX_DX_SUPABOMB; default: {