projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20070424-1-src
[rocksndiamonds.git]
/
src
/
game_em
/
graphics.c
diff --git
a/src/game_em/graphics.c
b/src/game_em/graphics.c
index fed6bcdf4616603627200a27f6f1f23bb279726f..3ffdb105fac7762d855a2b81ca7640589d199b65 100644
(file)
--- a/
src/game_em/graphics.c
+++ b/
src/game_em/graphics.c
@@
-27,6
+27,7
@@
(8 - frame) * ply[p].y) * TILEY / 8 \
- ((SCR_FIELDY - 1) * TILEY) / 2)
(8 - frame) * ply[p].y) * TILEY / 8 \
- ((SCR_FIELDY - 1) * TILEY) / 2)
+#define USE_EXTENDED_GRAPHICS_ENGINE 1
int frame; /* current screen frame */
int screen_x; /* current scroll position */
int frame; /* current screen frame */
int screen_x; /* current scroll position */
@@
-149,7
+150,7
@@
static void DrawLevelField_EM(int x, int y, int sx, int sy,
int tile = Draw[y][x];
struct GraphicInfo_EM *g = &graphic_info_em_object[tile][frame];
int tile = Draw[y][x];
struct GraphicInfo_EM *g = &graphic_info_em_object[tile][frame];
-#if
1
+#if
USE_EXTENDED_GRAPHICS_ENGINE
getGraphicSourceObjectExt_EM(tile, frame, &g->bitmap, &g->src_x, &g->src_y,
x - 2, y - 2);
#endif
getGraphicSourceObjectExt_EM(tile, frame, &g->bitmap, &g->src_x, &g->src_y,
x - 2, y - 2);
#endif
@@
-194,6
+195,12
@@
static void DrawLevelFieldCrumbled_EM(int x, int y, int sx, int sy,
{
int tile = Draw[y][x];
struct GraphicInfo_EM *g = &graphic_info_em_object[tile][frame];
{
int tile = Draw[y][x];
struct GraphicInfo_EM *g = &graphic_info_em_object[tile][frame];
+
+#if USE_EXTENDED_GRAPHICS_ENGINE
+ getGraphicSourceObjectExt_EM(tile, frame, &g->bitmap, &g->src_x, &g->src_y,
+ x - 2, y - 2);
+#endif
+
int left = screen_x / TILEX;
int top = screen_y / TILEY;
int i;
int left = screen_x / TILEX;
int top = screen_y / TILEY;
int i;
@@
-254,7
+261,7
@@
static void DrawLevelPlayer_EM(int x1, int y1, int player_nr, int anim,
{
struct GraphicInfo_EM *g = &graphic_info_em_player[player_nr][anim][frame];
{
struct GraphicInfo_EM *g = &graphic_info_em_player[player_nr][anim][frame];
-#if
1
+#if
USE_EXTENDED_GRAPHICS_ENGINE
getGraphicSourcePlayerExt_EM(player_nr, anim, frame,
&g->bitmap, &g->src_x, &g->src_y);
#endif
getGraphicSourcePlayerExt_EM(player_nr, anim, frame,
&g->bitmap, &g->src_x, &g->src_y);
#endif
@@
-336,6
+343,12
@@
static void animscreen(void)
{ 0, +1 }
};
{ 0, +1 }
};
+#if USE_EXTENDED_GRAPHICS_ENGINE
+ for (y = 2; y < EM_MAX_CAVE_HEIGHT - 2; y++)
+ for (x = 2; x < EM_MAX_CAVE_WIDTH - 2; x++)
+ SetGfxAnimation_EM(Draw[y][x], frame, x - 2, y - 2);
+#endif
+
for (y = top; y < top + MAX_BUF_YSIZE; y++)
{
for (x = left; x < left + MAX_BUF_XSIZE; x++)
for (y = top; y < top + MAX_BUF_YSIZE; y++)
{
for (x = left; x < left + MAX_BUF_XSIZE; x++)
@@
-368,7
+381,11
@@
static void animscreen(void)
}
/* only redraw screen tiles if they (or their crumbled state) changed */
}
/* only redraw screen tiles if they (or their crumbled state) changed */
+#if USE_EXTENDED_GRAPHICS_ENGINE
// if (screentiles[sy][sx] != obj || crumbled_state[sy][sx] != crm)
// if (screentiles[sy][sx] != obj || crumbled_state[sy][sx] != crm)
+#else
+ if (screentiles[sy][sx] != obj || crumbled_state[sy][sx] != crm)
+#endif
{
DrawLevelField_EM(x, y, sx, sy, FALSE);
DrawLevelFieldCrumbled_EM(x, y, sx, sy, crm, FALSE);
{
DrawLevelField_EM(x, y, sx, sy, FALSE);
DrawLevelFieldCrumbled_EM(x, y, sx, sy, crm, FALSE);
@@
-517,7
+534,7
@@
void DrawRelocatePlayer(struct PlayerInfo *player, boolean quick_relocation)
if (quick_relocation)
{
if (quick_relocation)
{
- int offset =
(setup.scroll_delay ? 3 : 0)
;
+ int offset =
game.scroll_delay_value
;
if (!IN_VIS_FIELD(SCREENX(jx), SCREENY(jy)))
{
if (!IN_VIS_FIELD(SCREENX(jx), SCREENY(jy)))
{
@@
-721,7
+738,7
@@
void RedrawPlayfield_EM(boolean force_redraw)
int player_nr = game_em.last_moving_player;
#endif
int stepsize = TILEX / 8;
int player_nr = game_em.last_moving_player;
#endif
int stepsize = TILEX / 8;
- int offset =
(setup.scroll_delay ? 3 : 0)
* TILEX;
+ int offset =
game.scroll_delay_value
* TILEX;
int offset_x = offset;
int offset_y = offset;
int screen_x_old = screen_x;
int offset_x = offset;
int offset_y = offset;
int screen_x_old = screen_x;