X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftools.c;h=aa1767a426c9f4e962b63a08ab06935564906ed2;hb=445f1cdcd097f1ede6f6224c1aeef91c7f8eae81;hp=0f5aadabb7dea2dd196c219f0259068e9e94b8ed;hpb=ee749a764df3dfa944c1f9de740ccbeb1cfdef40;p=rocksndiamonds.git diff --git a/src/tools.c b/src/tools.c index 0f5aadab..aa1767a4 100644 --- a/src/tools.c +++ b/src/tools.c @@ -85,6 +85,7 @@ void DumpTile(int x, int y) printf(" MovDir: %d\n", MovDir[x][y]); printf(" MovDelay: %d\n", MovDelay[x][y]); printf(" ChangeDelay: %d\n", ChangeDelay[x][y]); + printf(" Count: %d\n", Count[x][y]); printf(" GfxElement: %d\n", GfxElement[x][y]); printf(" GfxAction: %d\n", GfxAction[x][y]); printf(" GfxFrame: %d\n", GfxFrame[x][y]); @@ -1880,6 +1881,10 @@ void DrawPlayer(struct PlayerInfo *player) { GfxElement[jx][jy] = EL_UNDEFINED; + /* make sure that pushed elements are drawn with correct frame rate */ + if (player->is_pushing && player->is_moving) + GfxFrame[jx][jy] = player->StepFrame; + DrawLevelField(jx, jy); } } @@ -1929,6 +1934,7 @@ void DrawPlayer(struct PlayerInfo *player) player->is_moving, player_is_moving); #endif +#if 1 if (player->is_pushing && player->is_moving) { int px = SCREENX(jx), py = SCREENY(jy); @@ -1951,6 +1957,7 @@ void DrawPlayer(struct PlayerInfo *player) /* masked drawing is needed for EMC style (double) movement graphics */ DrawGraphicShiftedThruMask(px, py, pxx, pyy, graphic, frame, NO_CUTTING); } +#endif /* ----------------------------------------------------------------------- */ /* draw things in front of player (active dynamite or dynabombs) */ @@ -5467,6 +5474,11 @@ int el2preimg(int element) return element_info[element].special_graphic[GFX_SPECIAL_ARG_PREVIEW]; } +int font2baseimg(int font_nr) +{ + return font_info[font_nr].special_graphic[GFX_SPECIAL_ARG_DEFAULT]; +} + int getGameFrameDelay_EM(int native_em_game_frame_delay) { int game_frame_delay_value;