void IN_DrawSingleStats(void) { int x; static int sounds; IN_DrTextB("KILLS", 50, 65); IN_DrTextB("ITEMS", 50, 90); IN_DrTextB("SECRETS", 50, 115); x = 160-MN_TextBWidth(LevelNames[(gameepisode-1)*9+prevmap-1]+7)/2; IN_DrTextB(LevelNames[(gameepisode-1)*9+prevmap-1]+7, x, 3); x = 160-MN_TextAWidth("FINISHED")/2; MN_DrTextA("FINISHED", x, 25); if(intertime < 30) { sounds = 0; return; } if(sounds < 1 && intertime >= 30) { S_StartSound(NULL, sfx_dorcls); sounds++; } IN_DrawNumber(players[consoleplayer].killcount, 200, 65, 3); V_DrawShadowedPatch(237, 65, FontBSlash); IN_DrawNumber(totalkills, 248, 65, 3); if(intertime < 60) { return; } if(sounds < 2 && intertime >= 60) { S_StartSound(NULL, sfx_dorcls); sounds++; } IN_DrawNumber(players[consoleplayer].itemcount, 200, 90, 3); V_DrawShadowedPatch(237, 90, FontBSlash); IN_DrawNumber(totalitems, 248, 90, 3); if(intertime < 90) { return; } if(sounds < 3 && intertime >= 90) { S_StartSound(NULL, sfx_dorcls); sounds++; } IN_DrawNumber(players[consoleplayer].secretcount, 200, 115, 3); V_DrawShadowedPatch(237, 115, FontBSlash); IN_DrawNumber(totalsecret, 248, 115, 3); if(intertime < 150) { return; } if(sounds < 4 && intertime >= 150) { S_StartSound(NULL, sfx_dorcls); sounds++; } if(!ExtendedWAD || gameepisode < 4) { IN_DrTextB("TIME", 85, 160); IN_DrawTime(155, 160, hours, minutes, seconds); } else { x = 160-MN_TextAWidth("NOW ENTERING:")/2; MN_DrTextA("NOW ENTERING:", x, 160); x = 160-MN_TextBWidth(LevelNames[(gameepisode-1)*9+gamemap-1]+7)/2; IN_DrTextB(LevelNames[(gameepisode-1)*9+gamemap-1]+7, x, 170); skipintermission = false; } }
void IN_DrawDMStats(void) { int i; int j; int ypos; int xpos; int kpos; static int sounds; xpos = 90; ypos = 55; IN_DrTextB(DEH_String("TOTAL"), 265, 30); MN_DrTextA(DEH_String("VICTIMS"), 140, 8); for (i = 0; i < 7; i++) { MN_DrTextA(DEH_String(KillersText[i]), 10, 80 + 9 * i); } if (intertime < 20) { for (i = 0; i < MAXPLAYERS; i++) { if (playeringame[i]) { V_DrawShadowedPatch(40, ((ypos << FRACBITS) + dSlideY[i] * intertime) >> FRACBITS, W_CacheLumpNum(patchFaceOkayBase + i, PU_CACHE)); V_DrawShadowedPatch(((xpos << FRACBITS) + dSlideX[i] * intertime) >> FRACBITS, 18, W_CacheLumpNum(patchFaceDeadBase + i, PU_CACHE)); } } sounds = 0; return; } if (intertime >= 20 && sounds < 1) { S_StartSound(NULL, sfx_dorcls); sounds++; } if (intertime >= 100 && slaughterboy && sounds < 2) { S_StartSound(NULL, sfx_wpnup); sounds++; } for (i = 0; i < MAXPLAYERS; i++) { if (playeringame[i]) { if (intertime < 100 || i == consoleplayer) { V_DrawShadowedPatch(40, ypos, W_CacheLumpNum(patchFaceOkayBase + i, PU_CACHE)); V_DrawShadowedPatch(xpos, 18, W_CacheLumpNum(patchFaceDeadBase + i, PU_CACHE)); } else { V_DrawTLPatch(40, ypos, W_CacheLumpNum(patchFaceOkayBase + i, PU_CACHE)); V_DrawTLPatch(xpos, 18, W_CacheLumpNum(patchFaceDeadBase + i, PU_CACHE)); } kpos = 86; for (j = 0; j < MAXPLAYERS; j++) { if (playeringame[j]) { IN_DrawNumber(players[i].frags[j], kpos, ypos + 10, 3); kpos += 43; } } if (slaughterboy & (1 << i)) { if (!(intertime & 16)) { IN_DrawNumber(totalFrags[i], 263, ypos + 10, 3); } } else { IN_DrawNumber(totalFrags[i], 263, ypos + 10, 3); } ypos += 36; xpos += 43; } } }