Skip to content

Commit

Permalink
Fixed Heretic: Missing UI map name display.
Browse files Browse the repository at this point in the history
  • Loading branch information
danij-deng committed Jun 8, 2011
1 parent b89b502 commit 42317bb
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 36 deletions.
3 changes: 2 additions & 1 deletion doomsday/plugins/jheretic/include/st_stuff.h
Expand Up @@ -36,7 +36,8 @@
# error "Using jHeretic headers without __JHERETIC__"
#endif

#include "hu_chat.h"
#include "hu_lib.h"
#include "h_config.h"

// Size of statusbar, now sensitive for scaling.
#define ST_HEIGHT (42 * SCREEN_MUL)
Expand Down
61 changes: 26 additions & 35 deletions doomsday/plugins/jheretic/src/st_stuff.c
Expand Up @@ -2655,10 +2655,9 @@ void MapName_Drawer(uiwidget_t* obj, int x, int y)
{
const float scale = .75f;
const float textAlpha = uiRendState->pageAlpha;
const patchid_t patch = P_FindMapTitlePatch(gameEpisode, gameMap);
const char* text = Hu_ChoosePatchReplacement2(patch, P_GetMapNiceName(), false);
const char* text = P_GetMapNiceName();

if(NULL == text && 0 == patch)
if(NULL == text)
return;

DGL_MatrixMode(DGL_MODELVIEW);
Expand All @@ -2667,7 +2666,7 @@ void MapName_Drawer(uiwidget_t* obj, int x, int y)
DGL_Scalef(scale, scale, 1);

DGL_Enable(DGL_TEXTURE_2D);
WI_DrawPatch4(patch, text, 0, 0, DPF_ALIGN_BOTTOMLEFT, obj->fontId, cfg.hudColor[0], cfg.hudColor[1], cfg.hudColor[2], textAlpha);
FR_DrawText(text, 0, 0, obj->fontId, DTF_ALIGN_BOTTOMLEFT, .5f, 0, cfg.hudColor[0], cfg.hudColor[1], cfg.hudColor[2], textAlpha, 0, 0, false);
DGL_Disable(DGL_TEXTURE_2D);

DGL_MatrixMode(DGL_MODELVIEW);
Expand All @@ -2679,28 +2678,18 @@ void MapName_Dimensions(uiwidget_t* obj, int* width, int *height)
{
assert(NULL != obj && obj->type == GUI_MAPNAME);
{
const patchid_t patch = P_FindMapTitlePatch(gameEpisode, gameMap);
const char* text = Hu_ChoosePatchReplacement2(patch, P_GetMapNiceName(), false);
const char* text = P_GetMapNiceName();
const float scale = .75f;
patchinfo_t info;

if(NULL != width) *width = 0;
if(NULL != height) *height = 0;

if(NULL == text && 0 == patch)
if(NULL == text)
return;

if(NULL != text)
{
FR_TextDimensions(width, height, text, obj->fontId);
if(NULL != width) *width = *width * scale;
if(NULL != height) *height = *height * scale;
return;
}

R_GetPatchInfo(patch, &info);
if(NULL != width) *width = info.width * scale;
if(NULL != height) *height = info.height * scale;
FR_TextDimensions(width, height, text, obj->fontId);
if(NULL != width) *width = *width * scale;
if(NULL != height) *height = *height * scale;
}
}

Expand Down Expand Up @@ -2741,7 +2730,7 @@ void ST_Drawer(int player)
// Do palette shifts
ST_doPaletteStuff(player);

GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_AUTOMAP]), 0, 0, SCREENWIDTH, SCREENHEIGHT, 1, NULL, NULL);
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_AUTOMAP]), 0, 0, SCREENWIDTH, SCREENHEIGHT, ST_AutomapOpacity(player), NULL, NULL);

if(hud->statusbarActive || (fullscreen < 3 || hud->alpha > 0))
{
Expand Down Expand Up @@ -2771,7 +2760,7 @@ void ST_Drawer(int player)
{
#define PADDING 2 // In fixed 320x200 units.

int posX, posY, availWidth, availHeight, drawnWidth, drawnHeight;
int posX, posY, availWidth, availHeight, drawnWidth = 0, drawnHeight = 0;

if(hud->statusbarActive)
{
Expand Down Expand Up @@ -2810,6 +2799,21 @@ void ST_Drawer(int player)
width -= PADDING*2;
height -= PADDING*2;

if(!hud->statusbarActive)
{
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOMLEFT]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);

posX = x + (drawnWidth > 0 ? drawnWidth + PADDING : 0);
posY = y;
availWidth = width - (drawnWidth > 0 ? drawnWidth + PADDING : 0);
availHeight = height;
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOMLEFT2]), posX, posY, availWidth, availHeight, alpha, &drawnWidth, &drawnHeight);

GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOMRIGHT]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOM]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
}
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_MAPNAME]), x, y, width, height, ST_AutomapOpacity(player), NULL, NULL);

GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_TOP]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
if(!hud->statusbarActive)
{
Expand All @@ -2819,27 +2823,13 @@ void ST_Drawer(int player)
{
drawnWidth = 0;
}

posX = x + (drawnWidth > 0 ? drawnWidth + PADDING : 0);
posY = y;
availWidth = width - (drawnWidth > 0 ? drawnWidth + PADDING : 0);
availHeight = height;
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_TOPLEFT2]), posX, posY, availWidth, availHeight, alpha, &drawnWidth, &drawnHeight);

GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_TOPRIGHT]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
if(!hud->statusbarActive)
{
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOMLEFT]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);

posX = x + (drawnWidth > 0 ? drawnWidth + PADDING : 0);
posY = y;
availWidth = width - (drawnWidth > 0 ? drawnWidth + PADDING : 0);
availHeight = height;
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOMLEFT2]), posX, posY, availWidth, availHeight, alpha, &drawnWidth, &drawnHeight);

GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOMRIGHT]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_BOTTOM]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
}

GUI_DrawWidget(GUI_MustFindObjectById(hud->widgetGroupIds[UWG_COUNTERS]), x, y, width, height, alpha, &drawnWidth, &drawnHeight);
#undef PADDING
Expand Down Expand Up @@ -3190,6 +3180,7 @@ void ST_BuildWidgets(int player)
{ GUI_READYAMMOICON, UWG_STATUSBAR, -1, 0, SBarReadyAmmoIcon_Dimensions, SBarReadyAmmoIcon_Drawer, ReadyAmmoIcon_Ticker, &hud->sbarReadyammoicon },
{ GUI_READYITEM, UWG_STATUSBAR, -1, GF_SMALLIN, SBarReadyItem_Dimensions, SBarReadyItem_Drawer, ReadyItem_Ticker, &hud->sbarReadyitem },
{ GUI_CHAIN, UWG_STATUSBAR, -1, 0, SBarChain_Dimensions, SBarChain_Drawer, SBarChain_Ticker, &hud->sbarChain },
{ GUI_MAPNAME, UWG_MAPNAME, -1, GF_FONTB, MapName_Dimensions, MapName_Drawer },
{ GUI_READYAMMOICON, UWG_TOPLEFT, HUD_AMMO, 0, ReadyAmmoIcon_Dimensions, ReadyAmmoIcon_Drawer, ReadyAmmoIcon_Ticker, &hud->readyammoicon },
{ GUI_READYAMMO, UWG_TOPLEFT, HUD_AMMO, GF_STATUS, ReadyAmmo_Dimensions, ReadyAmmo_Drawer, ReadyAmmo_Ticker, &hud->readyammo },
{ GUI_FLIGHT, UWG_TOPLEFT2, -1, 0, Flight_Dimensions, Flight_Drawer, Flight_Ticker, &hud->flight },
Expand Down

0 comments on commit 42317bb

Please sign in to comment.