static void R_DrawVisSprite(vissprite_t *vis, int x1, int x2)
{
column_t *column;
int texturecolumn;
fixed_t frac;
patch_t *patch;
//Fab : R_InitSprites now sets a wad lump number
x1 = x2 = 0; // Logan: WHAT? we pass x1 and x2 for cliping, and we don't use them?
patch = W_CacheLumpNum(vis->patch, PU_CACHE);
dc_colormap = vis->colormap;
if (vis->mobj && vis->mobjflags & MF_TRANSLATION && vis->transmap) // Map it to the color of the player that thokked it. Tails 08-20-2002
{
colfunc = transtransfunc;
dc_transmap = vis->transmap;
dc_translation = defaulttranslationtables - 256 +
((vis->mobjflags & MF_TRANSLATION) >> (MF_TRANSSHIFT-8));
}
else if (vis->transmap == VIS_SMOKESHADE)
// shadecolfunc uses 'colormaps'
colfunc = shadecolfunc;
else if (vis->transmap)
{
colfunc = fuzzcolfunc;
dc_transmap = vis->transmap; //Fab : 29-04-98: translucency table
}
else if (vis->mobjflags & MF_TRANSLATION)
{
// translate green skin to another color
colfunc = transcolfunc;
// New colormap stuff for skins Tails 06-07-2002
if (vis->mobj->player) // This thing is a player!
{
if (vis->mobj->player->skincolor)
dc_translation = translationtables[vis->mobj->player->skin] - 256 +
((vis->mobjflags & MF_TRANSLATION) >> (MF_TRANSSHIFT-8));
else
{
static int firsttime = 1;
colfunc = basecolfunc; // Graue 04-08-2004
if (firsttime)
{
CONS_Printf("Abandoning!\n");
firsttime = 0;
}
}