diff --git a/src/k_kart.c b/src/k_kart.c index af0021da..39ef34c0 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -7140,25 +7140,30 @@ static void K_drawKartFinish(void) if ((stplyr->kartstuff[k_cardanimation] % (2*5)) / 5) // blink pnum = 1; - if (splitscreen > 1) // small splitscreen - pnum += 2; - else if (splitscreen == 1) // wide splitscreen - pnum += 4; - - if (splitscreen > 1) // Stationary FIN - V_DrawScaledPatch(STCD_X - (SHORT(kp_racefinish[pnum]->width)/2), STCD_Y - (SHORT(kp_racefinish[pnum]->height)/2), splitflags, kp_racefinish[pnum]); - else // Scrolling FINISH + if (splitscreen > 1) // 3/4p, stationary FIN { - INT32 scaleshift = (FRACBITS - splitscreen); // FRACUNIT or FRACUNIT/2 - INT32 x = ((vid.width<width)<width)/2), STCD_Y - (SHORT(kp_racefinish[pnum]->height)/2), splitflags, kp_racefinish[pnum]); + return; + } + + //else -- 1/2p, scrolling FINISH + { + INT32 x, xval; + + if (splitscreen) // wide splitscreen + pnum += 4; + + x = ((vid.width<width)<kartstuff[k_cardanimation])*(xval > x ? xval : x))/TICRATE; if (splitscreen && stplyr == &players[secondarydisplayplayer]) x = -x; - V_DrawFixedPatch(x + (STCD_X<width)<<(scaleshift-1)), - (STCD_Y<height)<<(scaleshift-1)), - (1<>1), + (STCD_Y<height)<<(FRACBITS-1)), + FRACUNIT, splitflags, kp_racefinish[pnum], NULL); } }