Title Card Border?

Status
Not open for further replies.
It's not an actual title card border - it's a graphic that takes the place of an unused character in the Title Card font, which explains why it happens to go down with the first word of the zone's name.

What I mean is: The Title Card's font has existing graphics only for letters, numbers and ', right? Well, the slots for anything else such as "!", "?", "%", and loads more could be (ab)used to spawn fake borders instead.

Just decide which text character you want the graphic to replace, figure out what name that character would have and give the graphic that name, put in the character in the chosen map's Level Header "levelname" parameter in a suitable place in the name.

http://www.tedmontgomery.com/tutorial/altchrc.html
This page should be useful for finding the numbers of the characters you want to replace in the Title Card font. (Probably best to keep to anything between 033 and 126)
 
Thanks MI! I'll make another post when I've tested your method.

---------- Post added at 02:07 PM ---------- Previous post was at 01:51 PM ----------

YZac


Apparently not working...
 
I don't know, the graphic offsets depends on your graphic size and placement. You can manually place a graphic on the screen with the XWE editor.

Also, the problem may also occurs because you forgot to add ! in the level's name. If the ! isn't in the level name, then the graphic won't appear.
 
I don't know, the graphic offsets depends on your graphic size and placement. You can manually place a graphic on the screen with the XWE editor.

Also, the problem may also occurs because you forgot to add ! in the level's name. If the ! isn't in the level name, then the graphic won't appear.

If you look at the picture, you will see it says "!GREENFLOWER" And I don't use XWE, I use SLADE.
 
Did you make sure the Graphic had the right name to be the "!" in the Title Card Font? I'm pretty sure it should be called "LTFNT033" if it isn't already.
 
It's not an actual title card border - it's a graphic that takes the place of an unused character in the Title Card font, which explains why it happens to go down with the first word of the zone's name.

What I mean is: The Title Card's font has existing graphics only for letters, numbers and ', right? Well, the slots for anything else such as "!", "?", "%", and loads more could be (ab)used to spawn fake borders instead.

Actually, it's a new graphic I shoved in ("TTLZ1") along with editing the source to reflect those changes. I've tried the method you're talking about before and it seemed rather hard to pull off...
 
That's awesome, man.

I tried getting it working in my latest level but it just crashed the game. I guess it's something you can only really code in.
 
Actually, it's a new graphic I shoved in ("TTLZ1") along with editing the source to reflect those changes. I've tried the method you're talking about before and it seemed rather hard to pull off...

Wait... you mean you made a source code mod? What part of the source code do I need to edit then?
 
Wait... you mean you made a source code mod? What part of the source code do I need to edit then?

I'm not sure if anything in the area was modified in 2.0.6 but if not here is the direct section to replace I have dragged from 2.0.5 under void ST_drawLevelTitle(void)
Code:
static void ST_drawLevelTitle(void)
{
	char *lvlttl = mapheaderinfo[gamemap-1].lvlttl;
	char *subttl = mapheaderinfo[gamemap-1].subttl;
	INT32 lvlttlxpos;
	INT32 subttlxpos = BASEVIDWIDTH/2;
	INT32 ttlnumxpos;
	INT32 zonexpos;
	INT32 actnum = mapheaderinfo[gamemap-1].actnum;
	boolean nonumber = false;

	if (!(timeinmap > 1 && timeinmap < 111))
		return;

	if (actnum > 0)
	{
		ttlnum = W_CachePatchName(va("TTL%.2d", actnum), PU_CACHE);
		lvlttlxpos = ((BASEVIDWIDTH/2) - (V_LevelNameWidth(lvlttl)/2)) - SHORT(ttlnum->width);
	}
	else
	{
		nonumber = true;
		lvlttlxpos = ((BASEVIDWIDTH/2) - (V_LevelNameWidth(lvlttl)/2));
	}

	ttlnumxpos = lvlttlxpos + V_LevelNameWidth(lvlttl);
	zonexpos = ttlnumxpos - V_LevelNameWidth(text[ZONE]);

	if (lvlttlxpos < 0)
		lvlttlxpos = 0;

	if (timeinmap == 2)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 200, 0, W_CachePatchName("LVLCBG", PU_CACHE)); 
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(200*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 0, 0, lvlttl);
		       
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 200, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
		//	V_DrawCenteredString(20, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 0+48, 0, subttl);
	}
	else if (timeinmap == 3)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 171, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(188*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 12, 0, lvlttl);
 		
                
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 188, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
		//	V_DrawCenteredString(40, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 12+48, 0, subttl);
	}
	else if (timeinmap == 4)
	{
		if (!nonumber)
		
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 151, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(0), (int)(176*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 24, 0, lvlttl);
        
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 176, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
		//	V_DrawCenteredString(60, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 24+48, 0, subttl);
	}
	else if (timeinmap == 5)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 131, 0, W_CachePatchName("LVLCBG", PU_CACHE));   
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(164*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 36, 0, lvlttl);
		     
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 164, 0, text[ZONE]);

	//	if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
		//	V_DrawCenteredString(80, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 36+48, 0, subttl);
	}
	else if (timeinmap == 6)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 111, 0, W_CachePatchName("LVLCBG", PU_CACHE));  
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(152*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 48, 0, lvlttl);
		      
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 152, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
		//	V_DrawCenteredString(100, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 48+48, 0, subttl);
	}
	else if (timeinmap == 7)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 71, 0, W_CachePatchName("LVLCBG", PU_CACHE));  
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(140*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 60, 0, lvlttl);
		      
        
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 140, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(120, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 60+48, 0, subttl);
	}
	else if (timeinmap == 8)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 41, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(128*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 72, 0, lvlttl);
		
                
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 128, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(140, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 72+48, 0, subttl);
	}
	else if (timeinmap == 106)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 11, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(80*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 104, 0, lvlttl);
		
                
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 80, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(190, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 104+48, 0, subttl);
	}
	else if (timeinmap == 107)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));   
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(56*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 128, 0, lvlttl);
		     
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 56, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(220, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 128+48, 0, subttl);
	}
	else if (timeinmap == 108)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(32*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 152, 0, lvlttl);
		
		
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 32, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(250, 140, V_YELLOWMAP, va("by: %s", mapcredits));

//		V_DrawCenteredString(subttlxpos, 152+48, 0, subttl);
	}
	else if (timeinmap == 109)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(8*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 176, 0, lvlttl);
		
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 8, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(280, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		//V_DrawCenteredString(subttlxpos, 176+48, 0, subttl);
	}
	else if (timeinmap == 110)
	{
		if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(0*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 200, 0, lvlttl);
        
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 0, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(300, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		//V_DrawCenteredString(subttlxpos, 200+48, 0, subttl);
	}
	else
	{
		if (!nonumber)
	    
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
			V_DrawScaledPatch(SCX(ttlnumxpos), (int)(104*vid.fdupy), V_NOSCALESTART, ttlnum);
		V_DrawLevelTitle(lvlttlxpos, 80, 0, lvlttl);
        
		if (!mapheaderinfo[gamemap-1].nozone)
			V_DrawLevelTitle(zonexpos, 104, 0, text[ZONE]);

		//if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
			//V_DrawCenteredString(160, 140, V_YELLOWMAP, va("by: %s", mapcredits));

		V_DrawCenteredString(subttlxpos, 80+48, 0, subttl);
		
	}
#undef ZONE
}

It turns out two graphics were replaced instead of one, but here they are if anyone wants to work over them.
LVLCBG.bmp

LVLCNM.bmp
 
I'm not sure if anything in the area was modified in 2.0.6 but if not here is the direct section to replace I have dragged from 2.0.5 under void ST_drawLevelTitle(void)
Code:
static void ST_drawLevelTitle(void)
{
    char *lvlttl = mapheaderinfo[gamemap-1].lvlttl;
    char *subttl = mapheaderinfo[gamemap-1].subttl;
    INT32 lvlttlxpos;
    INT32 subttlxpos = BASEVIDWIDTH/2;
    INT32 ttlnumxpos;
    INT32 zonexpos;
    INT32 actnum = mapheaderinfo[gamemap-1].actnum;
    boolean nonumber = false;

    if (!(timeinmap > 1 && timeinmap < 111))
        return;

    if (actnum > 0)
    {
        ttlnum = W_CachePatchName(va("TTL%.2d", actnum), PU_CACHE);
        lvlttlxpos = ((BASEVIDWIDTH/2) - (V_LevelNameWidth(lvlttl)/2)) - SHORT(ttlnum->width);
    }
    else
    {
        nonumber = true;
        lvlttlxpos = ((BASEVIDWIDTH/2) - (V_LevelNameWidth(lvlttl)/2));
    }

    ttlnumxpos = lvlttlxpos + V_LevelNameWidth(lvlttl);
    zonexpos = ttlnumxpos - V_LevelNameWidth(text[ZONE]);

    if (lvlttlxpos < 0)
        lvlttlxpos = 0;

    if (timeinmap == 2)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 200, 0, W_CachePatchName("LVLCBG", PU_CACHE)); 
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(200*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 0, 0, lvlttl);
               
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 200, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
        //    V_DrawCenteredString(20, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 0+48, 0, subttl);
    }
    else if (timeinmap == 3)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 171, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(188*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 12, 0, lvlttl);
         
                
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 188, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
        //    V_DrawCenteredString(40, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 12+48, 0, subttl);
    }
    else if (timeinmap == 4)
    {
        if (!nonumber)
        
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 151, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(0), (int)(176*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 24, 0, lvlttl);
        
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 176, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
        //    V_DrawCenteredString(60, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 24+48, 0, subttl);
    }
    else if (timeinmap == 5)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 131, 0, W_CachePatchName("LVLCBG", PU_CACHE));   
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(164*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 36, 0, lvlttl);
             
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 164, 0, text[ZONE]);

    //    if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
        //    V_DrawCenteredString(80, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 36+48, 0, subttl);
    }
    else if (timeinmap == 6)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 111, 0, W_CachePatchName("LVLCBG", PU_CACHE));  
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(152*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 48, 0, lvlttl);
              
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 152, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
        //    V_DrawCenteredString(100, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 48+48, 0, subttl);
    }
    else if (timeinmap == 7)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 71, 0, W_CachePatchName("LVLCBG", PU_CACHE));  
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(140*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 60, 0, lvlttl);
              
        
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 140, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(120, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 60+48, 0, subttl);
    }
    else if (timeinmap == 8)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 41, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(128*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 72, 0, lvlttl);
        
                
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 128, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(140, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 72+48, 0, subttl);
    }
    else if (timeinmap == 106)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 11, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(80*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 104, 0, lvlttl);
        
                
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 80, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(190, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 104+48, 0, subttl);
    }
    else if (timeinmap == 107)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));   
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(56*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 128, 0, lvlttl);
             
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 56, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(220, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 128+48, 0, subttl);
    }
    else if (timeinmap == 108)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(32*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 152, 0, lvlttl);
        
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 32, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(250, 140, V_YELLOWMAP, va("by: %s", mapcredits));

//        V_DrawCenteredString(subttlxpos, 152+48, 0, subttl);
    }
    else if (timeinmap == 109)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(8*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 176, 0, lvlttl);
        
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 8, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(280, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        //V_DrawCenteredString(subttlxpos, 176+48, 0, subttl);
    }
    else if (timeinmap == 110)
    {
        if (!nonumber)

        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(0*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 200, 0, lvlttl);
        
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 0, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(300, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        //V_DrawCenteredString(subttlxpos, 200+48, 0, subttl);
    }
    else
    {
        if (!nonumber)
        
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCNM", PU_CACHE));
        V_DrawScaledPatch(0, 0, 0, W_CachePatchName("LVLCBG", PU_CACHE));
            V_DrawScaledPatch(SCX(ttlnumxpos), (int)(104*vid.fdupy), V_NOSCALESTART, ttlnum);
        V_DrawLevelTitle(lvlttlxpos, 80, 0, lvlttl);
        
        if (!mapheaderinfo[gamemap-1].nozone)
            V_DrawLevelTitle(zonexpos, 104, 0, text[ZONE]);

        //if(mapheaderinfo[gamemap-1].mapcredits[0] != '\0')
            //V_DrawCenteredString(160, 140, V_YELLOWMAP, va("by: %s", mapcredits));

        V_DrawCenteredString(subttlxpos, 80+48, 0, subttl);
        
    }
#undef ZONE
}

It turns out two graphics were replaced instead of one, but here they are if anyone wants to work over them.
LVLCBG.bmp

LVLCNM.bmp

Thanks? BTW, where can I find "ST_drawLevelTitle(void)" in the source code and what is the name of each graphic?
 
Thanks? BTW, where can I find "ST_drawLevelTitle(void)" in the source code and what is the name of each graphic?

Do a search for all files and locate drawLevelTitle in the search, I forgot the exact file it was located in (only a few entries should only show up)
the names are "LVLCNM" (Logo) and "LVLCBG". (Sonic 2 Border)
 
Do a search for all files and locate drawLevelTitle in the search, I forgot the exact file it was located in (only a few entries should only show up)
the names are "LVLCNM" (Logo) and "LVLCBG". (Sonic 2 Border)

Thanks a lot! That really helped!
 
Oh...I've run into another problem... Either way I put it, making the graphics normal graphics or patches (adding them to the patch table but NOT making either a texture) they won't show up when I test the .exe! Is there any advice you could give me, Pac?
 
Oh...I've run into another problem... Either way I put it, making the graphics normal graphics or patches (adding them to the patch table but NOT making either a texture) they won't show up when I test the .exe! Is there any advice you could give me, Pac?

Import as a regular GFX.
 
Status
Not open for further replies.

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top