Пример #1
0
void WI_drawStats (void)
{
    // line height
    int lh = (3*num[0]->height())/2;

    // draw animated background
    WI_drawAnimatedBack();
    WI_drawLF();

    screen->DrawPatchClean(kills, SP_STATSX, SP_STATSY);
    WI_drawPercent(cnt_kills, 320 - SP_STATSX, SP_STATSY);

    screen->DrawPatchClean(items, SP_STATSX, SP_STATSY+lh);
    WI_drawPercent(cnt_items, 320 - SP_STATSX, SP_STATSY+lh);

    screen->DrawPatchClean(secret, SP_STATSX, SP_STATSY+2*lh);
    WI_drawPercent(cnt_secret, 320 - SP_STATSX, SP_STATSY+2*lh);

    screen->DrawPatchClean(timepatch, SP_TIMEX, SP_TIMEY);
    WI_drawTime(cnt_time, 160 - SP_TIMEX, SP_TIMEY);

    if ((gameinfo.flags & GI_MAPxx) || wbs->epsd < 3)
    {
        screen->DrawPatchClean(par, SP_TIMEX + 160, SP_TIMEY);
        WI_drawTime(cnt_par, 320 - SP_TIMEX, SP_TIMEY);
    }

}
Пример #2
0
void WI_drawStats(void)
{
    // line height
    int lh;	

	lh = (3*SHORT(num[0]->height))/2;

	WI_slamBackground();

	// draw animated background
	WI_drawAnimatedBack();
    
	WI_drawLF();

	V_DrawPatch(SP_STATSX, SP_STATSY, FB, kills);
	WI_drawPercent(SCREENWIDTH - SP_STATSX, SP_STATSY, cnt_kills[0]);

	V_DrawPatch(SP_STATSX, SP_STATSY+lh, FB, items);
	WI_drawPercent(SCREENWIDTH - SP_STATSX, SP_STATSY+lh, cnt_items[0]);

	V_DrawPatch(SP_STATSX, SP_STATSY+2*lh, FB, sp_secret);
	WI_drawPercent(SCREENWIDTH - SP_STATSX, SP_STATSY+2*lh, cnt_secret[0]);

	V_DrawPatch(SP_TIMEX, SP_TIMEY, FB, time);
	WI_drawTime(SCREENWIDTH/2 - SP_TIMEX, SP_TIMEY, cnt_time);

	if (wbs->epsd < 3)
	{
		V_DrawPatch(SCREENWIDTH/2 + SP_TIMEX, SP_TIMEY, FB, par);
		WI_drawTime(SCREENWIDTH - SP_TIMEX, SP_TIMEY, cnt_par);
    }
}
Пример #3
0
void WI_drawStats(void)
{
    // line height
    int lh;	

    lh = (3*SHORT(::g->num[0]->height))/2;

    WI_slamBackground();

    // draw animated background
    WI_drawAnimatedBack();
    
    WI_drawLF();

    V_DrawPatch(SP_STATSX, SP_STATSY, FB, ::g->kills);
    WI_drawPercent(ORIGINAL_WIDTH - SP_STATSX, SP_STATSY, ::g->cnt_kills[0]);

    V_DrawPatch(SP_STATSX, SP_STATSY+lh, FB, ::g->items);
    WI_drawPercent(ORIGINAL_WIDTH - SP_STATSX, SP_STATSY+lh, ::g->cnt_items[0]);

    V_DrawPatch(SP_STATSX, SP_STATSY+2*lh, FB, ::g->sp_secret);
    WI_drawPercent(ORIGINAL_WIDTH - SP_STATSX, SP_STATSY+2*lh, ::g->cnt_secret[0]);

    V_DrawPatch(SP_TIMEX, SP_TIMEY, FB, ::g->time);
    WI_drawTime(ORIGINAL_WIDTH/2 - SP_TIMEX, SP_TIMEY, ::g->cnt_time);

	// DHM - Nerve :: Added episode 4 par times
    //if (::g->wbs->epsd < 3)
    //{
	V_DrawPatch(ORIGINAL_WIDTH/2 + SP_TIMEX, SP_TIMEY, FB, ::g->par);
	WI_drawTime(ORIGINAL_WIDTH - SP_TIMEX, SP_TIMEY, ::g->cnt_par);
    //}

}
Пример #4
0
static void WI_drawTimeStats(int cnt_time, int cnt_total_time, int cnt_par)
{

    V_DrawNamePatch(SP_TIMEX, SP_TIMEY, FB, time1, CR_DEFAULT, VPT_STRETCH);
    WI_drawTime(320 / 2 - SP_TIMEX, SP_TIMEY, cnt_time);
    V_DrawNamePatch(SP_TIMEX, (SP_TIMEY + 200) / 2, FB, total, CR_DEFAULT, VPT_STRETCH);
    WI_drawTime(320 / 2 - SP_TIMEX, (SP_TIMEY + 200) / 2, cnt_total_time);

}
Пример #5
0
static void WI_drawTimeStats(int cnt_time, int cnt_total_time, int cnt_par)
{
    V_DrawNamePatch(SP_TIMEX, SP_TIMEY, FB, time1, CR_DEFAULT, VPT_STRETCH);
    WI_drawTime(320/2 - SP_TIMEX, SP_TIMEY, cnt_time);

    V_DrawNamePatch(SP_TIMEX, (SP_TIMEY+200)/2, FB, total, CR_DEFAULT, VPT_STRETCH);
    WI_drawTime(320/2 - SP_TIMEX, (SP_TIMEY+200)/2, cnt_total_time);

    // Ty 04/11/98: redid logic: should skip only if with pwad but
    // without deh patch
    // killough 2/22/98: skip drawing par times on pwads
    // Ty 03/17/98: unless pars changed with deh patch

    if (!(modifiedgame && !deh_pars))
    {
        if (wbs->epsd < 3)
        {
            V_DrawNamePatch(320/2 + SP_TIMEX, SP_TIMEY, FB, par, CR_DEFAULT, VPT_STRETCH);
            WI_drawTime(320 - SP_TIMEX, SP_TIMEY, cnt_par);
        }
    }
}
Пример #6
0
void WI_drawStats(void)
{
	// line height
	int lh;     

	lh = (3*SHORT(num[0]->height))/2;

	WI_slamBackground();

	// draw animated background
	WI_drawAnimatedBack();
	
	WI_drawLF();

	V_DrawPatch(SP_STATSX, SP_STATSY, kills);
	WI_drawPercent(SCREENWIDTH - SP_STATSX, SP_STATSY, cnt_kills[0]);

	V_DrawPatch(SP_STATSX, SP_STATSY+lh, items);
	WI_drawPercent(SCREENWIDTH - SP_STATSX, SP_STATSY+lh, cnt_items[0]);

	V_DrawPatch(SP_STATSX, SP_STATSY+2*lh, sp_secret);
	WI_drawPercent(SCREENWIDTH - SP_STATSX, SP_STATSY+2*lh, cnt_secret[0]);

	V_DrawPatch(SP_TIMEX, SP_TIMEY, timepatch);
	WI_drawTime(SCREENWIDTH/2 - SP_TIMEX, SP_TIMEY, cnt_time);

	if (wbs->epsd < 3)
	{
		V_DrawPatch(SCREENWIDTH/2 + SP_TIMEX, SP_TIMEY, par);

        // Emulation: don't draw partime value if map33
        if (gamemode != commercial || wbs->last != NUMCMAPS)
        {
		WI_drawTime(SCREENWIDTH - SP_TIMEX, SP_TIMEY, cnt_par);
	}
    }

}
Пример #7
0
void WI_drawStats(void)
{
    // line height
    int lh = (3 * SHORT(num[0]->height)) / 2;

    WI_slamBackground();

    // draw animated background
    WI_drawAnimatedBack();

    WI_drawLF();

    V_DrawPatchWithShadow(SP_STATSX + 1, SP_STATSY + 1, FB, kills, false);
    WI_drawPercent(ORIGINALWIDTH - SP_STATSX - 14, SP_STATSY, cnt_kills[0]);

    V_DrawPatchWithShadow(SP_STATSX + 1, SP_STATSY + lh + 1, FB, items, false);
    WI_drawPercent(ORIGINALWIDTH - SP_STATSX - 14, SP_STATSY + lh, cnt_items[0]);

    if (totalsecret)
    {
        if (!WISCRT2)
            M_DrawString(SP_STATSX, SP_STATSY + 2 * lh - 3, "secrets");
        else
            V_DrawPatchWithShadow(SP_STATSX + 1, SP_STATSY + 2 * lh + 1, FB, sp_secret, false);

        WI_drawPercent(ORIGINALWIDTH - SP_STATSX - 14, SP_STATSY + 2 * lh, cnt_secret[0]);
    }

    V_DrawPatchWithShadow(SP_TIMEX + 1, SP_TIMEY + 1, FB, timepatch, false);
    WI_drawTime(ORIGINALWIDTH / 2 - SP_TIMEX * 2, SP_TIMEY, cnt_time);

    if (canmodify)
    {
        V_DrawPatchWithShadow(ORIGINALWIDTH / 2 + SP_TIMEX * 2 + 5, SP_TIMEY + 1, FB, par, false);
        WI_drawTime(ORIGINALWIDTH - SP_TIMEX, SP_TIMEY, cnt_par);
    }
}
Пример #8
0
void Intermission::DrawCoopStats()
{
    if (!game.multiplayer)
    {
        // single player stats are a bit different
        // line height
        float lh = (3*(num[0]->worldheight))/2;

        if (big_font)
        {
            // use FontB if any
            big_font->DrawString(SP_STATSX, SP_STATSY, "Kills", FB);
            big_font->DrawString(SP_STATSX, SP_STATSY+lh, "Items", FB);
            big_font->DrawString(SP_STATSX, SP_STATSY+2*lh, "Secrets", FB);
        }
        else
        {
            kills->Draw(SP_STATSX, SP_STATSY, FB);
            items->Draw(SP_STATSX, SP_STATSY+lh, FB);
            sp_secret->Draw(SP_STATSX, SP_STATSY+2*lh, FB);
        }
        Num.DrawPercent(BASEVIDWIDTH - SP_STATSX, SP_STATSY, cnt[0].kills);
        Num.DrawPercent(BASEVIDWIDTH - SP_STATSX, SP_STATSY+lh, cnt[0].items);
        Num.DrawPercent(BASEVIDWIDTH - SP_STATSX, SP_STATSY+2*lh, cnt[0].secrets);
    }
    else
    {
        float x, y;

        // draw stat titles (top line)
        if (big_font)
        {
            // use FontB if any
            big_font->DrawString(NG_STATSX+  NG_SPACINGX-big_font->StringWidth("Kills"), NG_STATSY, "Kills", FB);
            big_font->DrawString(NG_STATSX+2*NG_SPACINGX-big_font->StringWidth("Items"), NG_STATSY, "Items", FB);
            big_font->DrawString(NG_STATSX+3*NG_SPACINGX-big_font->StringWidth("Scrt"), NG_STATSY, "Scrt", FB);
            if (dofrags)
                big_font->DrawString(NG_STATSX+4*NG_SPACINGX-big_font->StringWidth("Frgs"), NG_STATSY, "Frgs", FB);

            y = NG_STATSY + big_font->Height();
        }
        else
        {
            kills->Draw(NG_STATSX+NG_SPACINGX-kills->worldwidth, NG_STATSY, FB);
            items->Draw(NG_STATSX+2*NG_SPACINGX-items->worldwidth, NG_STATSY, FB);
            secret->Draw(NG_STATSX+3*NG_SPACINGX-secret->worldwidth, NG_STATSY, FB);
            if (dofrags)
                frags->Draw(NG_STATSX+4*NG_SPACINGX-frags->worldwidth, NG_STATSY, FB);

            y = NG_STATSY + kills->worldheight;
        }
        // draw stats
        int i, n = plrs.size();
        float pwidth = percent->worldwidth;
        int you = ViewPlayers.size() ? ViewPlayers[0]->number : 0;

        for (i=0 ; i<n ; i++)
        {
            // TODO draw names too, use a smaller font?
            // draw face
            int color = plrs[i]->options.color;

            x = NG_STATSX - (i & 1) ? 10 : 0;
            current_colormap = translationtables[color];

            stpb->Draw(x - stpb->worldwidth, y, FB | V_MAP);

            // TODO splitscreen
            if (plrs[i]->number == you)
                star->Draw(x-stpb->worldwidth, y, FB);

            // draw stats
            x = NG_STATSX + NG_SPACINGX;
            Num.DrawPercent(x-pwidth, y+10, cnt[i].kills);
            x += NG_SPACINGX;
            Num.DrawPercent(x-pwidth, y+10, cnt[i].items);
            x += NG_SPACINGX;
            Num.DrawPercent(x-pwidth, y+10, cnt[i].secrets);
            x += NG_SPACINGX;

            if (dofrags)
                Num.Draw(x, y+10, cnt[i].frags, -1);

            y += WI_SPACINGY;
        }
    }

    // draw time and par
    if (big_font)
    {
        big_font->DrawString(SP_TIMEX, SP_TIMEY, "Time", FB);
        big_font->DrawString(BASEVIDWIDTH/2 + SP_TIMEX, SP_TIMEY, "Par", FB);
    }
    else
    {
        timePatch->Draw(SP_TIMEX, SP_TIMEY, FB);
        par->Draw(BASEVIDWIDTH/2 + SP_TIMEX, SP_TIMEY, FB);
    }

    WI_drawTime(BASEVIDWIDTH/2 - SP_TIMEX, SP_TIMEY, cnt_time);
    WI_drawTime(BASEVIDWIDTH - SP_TIMEX, SP_TIMEY, cnt_par);
}
Пример #9
0
void WI_drawStats (void)
{
	// line height
	int lh; 	

	lh = (3*num[0]->GetHeight())/2;

	// draw animated background
	WI_drawAnimatedBack();

	WI_drawLF();

	if (gameinfo.gametype == GAME_Doom)
	{
		screen->DrawTexture (kills, SP_STATSX, SP_STATSY, DTA_Clean, true, TAG_DONE);
		WI_drawPercent (320 - SP_STATSX, SP_STATSY, cnt_kills[0], wbs->maxkills);

		screen->DrawTexture (items, SP_STATSX, SP_STATSY+lh, DTA_Clean, true, TAG_DONE);
		WI_drawPercent (320 - SP_STATSX, SP_STATSY+lh, cnt_items[0], wbs->maxitems);

		screen->DrawTexture (sp_secret, SP_STATSX, SP_STATSY+2*lh, DTA_Clean, true, TAG_DONE);
		WI_drawPercent(320 - SP_STATSX, SP_STATSY+2*lh, cnt_secret[0], wbs->maxsecret);

		screen->DrawTexture (timepic, SP_TIMEX, SP_TIMEY, DTA_Clean, true, TAG_DONE);
		WI_drawTime (160 - SP_TIMEX, SP_TIMEY, cnt_time);

		if (wbs->partime)
		{
			screen->DrawTexture (par, 160 + SP_TIMEX, SP_TIMEY, DTA_Clean, true, TAG_DONE);
			WI_drawTime (320 - SP_TIMEX, SP_TIMEY, cnt_par);
		}
	}
	else
	{
		screen->SetFont (BigFont);
		screen->DrawText (CR_UNTRANSLATED, 50, 65, "KILLS", DTA_Clean, true, DTA_Shadow, true, TAG_DONE);
		screen->DrawText (CR_UNTRANSLATED, 50, 90, "ITEMS", DTA_Clean, true, DTA_Shadow, true, TAG_DONE);
		screen->DrawText (CR_UNTRANSLATED, 50, 115, "SECRETS", DTA_Clean, true, DTA_Shadow, true, TAG_DONE);

		if (sp_state >= 2)
		{
			WI_drawNum (200, 65, cnt_kills[0], 3, false);
			screen->DrawTexture (slash, 237, 65,
				DTA_ShadowAlpha, FRACUNIT/2,
				DTA_Clean, true,
				TAG_DONE);
			WI_drawNum (248, 65, wbs->maxkills, 3, false);
		}
		if (sp_state >= 4)
		{
			WI_drawNum (200, 90, cnt_items[0], 3, false);
			screen->DrawTexture (slash, 237, 90,
				DTA_ShadowAlpha, FRACUNIT/2,
				DTA_Clean, true,
				TAG_DONE);
			WI_drawNum (248, 90, wbs->maxitems, 3, false);
		}
		if (sp_state >= 6)
		{
			WI_drawNum (200, 115, cnt_secret[0], 3, false);
			screen->DrawTexture (slash, 237, 115,
				DTA_ShadowAlpha, FRACUNIT/2,
				DTA_Clean, true,
				TAG_DONE);
			WI_drawNum (248, 115, wbs->maxsecret, 3, false);
		}
		if (sp_state >= 8)
		{
			screen->DrawText (CR_UNTRANSLATED, 85, 160, "TIME",
				DTA_Clean, true, DTA_Shadow, true, TAG_DONE);
			WI_drawTime (249, 160, cnt_time);
		}
		screen->SetFont (SmallFont);
	}
}