diff options
Diffstat (limited to 'src/v_video.h')
-rw-r--r-- | src/v_video.h | 123 |
1 files changed, 59 insertions, 64 deletions
diff --git a/src/v_video.h b/src/v_video.h index 3782b4eb..93a46552 100644 --- a/src/v_video.h +++ b/src/v_video.h @@ -32,10 +32,8 @@ #include "doomtype.h" -#include "doomdef.h" - // Needed because we are refering to patches. -#include "r_data.h" +#include "v_patch.h" // // VIDEO @@ -44,78 +42,75 @@ #define CENTERY (SCREENHEIGHT/2) -// Screen 0 is the screen updated by I_Update screen. -// Screen 1 is an extra buffer. - - - -extern byte *screens[5]; - extern int dirtybox[4]; -extern const byte gammatable[5][256]; -extern int usegamma; +extern byte *tinttable; +// haleyjd 08/28/10: implemented for Strife support +// haleyjd 08/28/10: Patch clipping callback, implemented to support Choco +// Strife. +typedef boolean (*vpatchclipfunc_t)(patch_t *, int, int); +void V_SetPatchClipCallback(vpatchclipfunc_t func); // Allocates buffer screens, call before R_Init. void V_Init (void); +// Draw a block from the specified source screen to the screen. -void -V_CopyRect -( int srcx, - int srcy, - int srcscrn, - int width, - int height, - int destx, - int desty, - int destscrn ); - -void -V_DrawPatch -( int x, - int y, - int scrn, - patch_t* patch); - -void -V_DrawPatchDirect -( int x, - int y, - int scrn, - patch_t* patch ); +void V_CopyRect(int srcx, int srcy, byte *source, + int width, int height, + int destx, int desty); +void V_DrawPatch(int x, int y, patch_t *patch); +void V_DrawPatchFlipped(int x, int y, patch_t *patch); +void V_DrawTLPatch(int x, int y, patch_t *patch); +void V_DrawAltTLPatch(int x, int y, patch_t * patch); +void V_DrawShadowedPatch(int x, int y, patch_t *patch); +void V_DrawXlaPatch(int x, int y, patch_t * patch); // villsa [STRIFE] +void V_DrawPatchDirect(int x, int y, patch_t *patch); // Draw a linear block of pixels into the view buffer. -void -V_DrawBlock -( int x, - int y, - int scrn, - int width, - int height, - byte* src ); - -// Reads a linear block of pixels into the view buffer. -void -V_GetBlock -( int x, - int y, - int scrn, - int width, - int height, - byte* dest ); - - -void -V_MarkRect -( int x, - int y, - int width, - int height ); - -void V_ScreenShot(void); + +void V_DrawBlock(int x, int y, int width, int height, byte *src); + +void V_MarkRect(int x, int y, int width, int height); + +void V_DrawFilledBox(int x, int y, int w, int h, int c); +void V_DrawHorizLine(int x, int y, int w, int c); +void V_DrawVertLine(int x, int y, int h, int c); +void V_DrawBox(int x, int y, int w, int h, int c); + +// Draw a raw screen lump + +void V_DrawRawScreen(byte *raw); + +// Temporarily switch to using a different buffer to draw graphics, etc. + +void V_UseBuffer(byte *buffer); + +// Return to using the normal screen buffer to draw graphics. + +void V_RestoreBuffer(void); + +// Save a screenshot of the current screen to a file, named in the +// format described in the string passed to the function, eg. +// "DOOM%02i.pcx" + +void V_ScreenShot(char *format); + +// Load the lookup table for translucency calculations from the TINTTAB +// lump. + +void V_LoadTintTable(void); + +// villsa [STRIFE] +// Load the lookup table for translucency calculations from the XLATAB +// lump. + +void V_LoadXlaTable(void); + +void V_DrawMouseSpeedBox(int speed); #endif + |