projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed some bugs and added some speed when scaling in-game tile size
[rocksndiamonds.git]
/
src
/
cartoons.c
diff --git
a/src/cartoons.c
b/src/cartoons.c
index 9b6626b6cc777b76cb8f06908b968007adc09269..1f430493f64334296300851c3f479f078fa7c8f7 100644
(file)
--- a/
src/cartoons.c
+++ b/
src/cartoons.c
@@
-1,7
+1,7
@@
/***********************************************************
* Rocks'n'Diamonds -- McDuffin Strikes Back! *
*----------------------------------------------------------*
/***********************************************************
* Rocks'n'Diamonds -- McDuffin Strikes Back! *
*----------------------------------------------------------*
-* (c) 1995-200
2
Artsoft Entertainment *
+* (c) 1995-200
6
Artsoft Entertainment *
* Holger Schemel *
* Detmolder Strasse 189 *
* 33604 Bielefeld *
* Holger Schemel *
* Detmolder Strasse 189 *
* 33604 Bielefeld *
@@
-23,30
+23,21
@@
static struct ToonInfo toons[MAX_NUM_TOONS];
static void PrepareBackbuffer()
{
static void PrepareBackbuffer()
{
- if (game_status == GAME_MODE_PLAYING &&
- level.game_engine_type == GAME_ENGINE_TYPE_EM)
+ if (game_status != GAME_MODE_PLAYING)
+ return;
+
+#if 1
+ BlitScreenToBitmap(backbuffer);
+#else
+ if (level.game_engine_type == GAME_ENGINE_TYPE_EM)
{
BlitScreenToBitmap_EM(backbuffer);
{
BlitScreenToBitmap_EM(backbuffer);
-
- return;
}
}
-
- /* fill empty backbuffer for animation functions */
- if (setup.direct_draw && game_status == GAME_MODE_PLAYING)
+ else if (level.game_engine_type == GAME_ENGINE_TYPE_SP)
{
{
- int xx, yy;
-
- SetDrawtoField(DRAW_BACKBUFFER);
-
- for (xx = 0; xx < SCR_FIELDX; xx++)
- for (yy = 0; yy < SCR_FIELDY; yy++)
- DrawScreenField(xx, yy);
- DrawAllPlayers();
-
- SetDrawtoField(DRAW_DIRECT);
+ BlitScreenToBitmap_SP(backbuffer);
}
}
-
- if (setup.soft_scrolling && game_status == GAME_MODE_PLAYING)
+ else if (setup.soft_scrolling) /* GAME_ENGINE_TYPE_RND */
{
int fx = FX, fy = FY;
{
int fx = FX, fy = FY;
@@
-55,6
+46,7
@@
static void PrepareBackbuffer()
BlitBitmap(fieldbuffer, backbuffer, fx, fy, SXSIZE, SYSIZE, SX, SY);
}
BlitBitmap(fieldbuffer, backbuffer, fx, fy, SXSIZE, SYSIZE, SX, SY);
}
+#endif
}
boolean ToonNeedsRedraw()
}
boolean ToonNeedsRedraw()
@@
-95,7
+87,11
@@
void InitToons()
toons[i].position = image->parameter[GFX_ARG_POSITION];
}
toons[i].position = image->parameter[GFX_ARG_POSITION];
}
+#if 1
+ InitToonScreen(bitmap_db_toons,
+#else
InitToonScreen(bitmap_db_door,
InitToonScreen(bitmap_db_door,
+#endif
BackToFront, PrepareBackbuffer, ToonNeedsRedraw,
toons, num_toons,
REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE,
BackToFront, PrepareBackbuffer, ToonNeedsRedraw,
toons, num_toons,
REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE,