mirror of
https://github.com/ZDoom/gzdoom-gles.git
synced 2024-11-11 15:22:15 +00:00
- Added support for text colorization in SBarInfo.
SVN r3624 (trunk)
This commit is contained in:
parent
af43ef8983
commit
432aa7e6bb
1 changed files with 14 additions and 2 deletions
|
@ -1333,7 +1333,7 @@ public:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DrawString(FFont *font, const char* str, SBarInfoCoordinate x, SBarInfoCoordinate y, int xOffset, int yOffset, int alpha, bool fullScreenOffsets, EColorRange translation, int spacing=0, bool drawshadow=false, int shadowX=2, int shadowY=2) const
|
void DrawString(FFont *font, const char* cstring, SBarInfoCoordinate x, SBarInfoCoordinate y, int xOffset, int yOffset, int alpha, bool fullScreenOffsets, EColorRange translation, int spacing=0, bool drawshadow=false, int shadowX=2, int shadowY=2) const
|
||||||
{
|
{
|
||||||
x += spacing;
|
x += spacing;
|
||||||
double ax = *x;
|
double ax = *x;
|
||||||
|
@ -1342,6 +1342,10 @@ public:
|
||||||
double xScale = 1.0;
|
double xScale = 1.0;
|
||||||
double yScale = 1.0;
|
double yScale = 1.0;
|
||||||
|
|
||||||
|
const BYTE* str = (const BYTE*) cstring;
|
||||||
|
const EColorRange boldTranslation = EColorRange(translation ? translation - 1 : NumTextColors - 1);
|
||||||
|
FRemapTable *remap = font->GetColorTranslation(translation);
|
||||||
|
|
||||||
if(fullScreenOffsets)
|
if(fullScreenOffsets)
|
||||||
{
|
{
|
||||||
if(hud_scale)
|
if(hud_scale)
|
||||||
|
@ -1362,6 +1366,14 @@ public:
|
||||||
str++;
|
str++;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
else if(*str == TEXTCOLOR_ESCAPE)
|
||||||
|
{
|
||||||
|
EColorRange newColor = V_ParseFontColor(++str, translation, boldTranslation);
|
||||||
|
if(newColor != CR_UNDEFINED)
|
||||||
|
remap = font->GetColorTranslation(newColor);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
int width;
|
int width;
|
||||||
if(script->spacingCharacter == '\0') //No monospace?
|
if(script->spacingCharacter == '\0') //No monospace?
|
||||||
width = font->GetCharWidth((unsigned char) *str);
|
width = font->GetCharWidth((unsigned char) *str);
|
||||||
|
@ -1444,7 +1456,7 @@ public:
|
||||||
screen->DrawTexture(character, rx, ry,
|
screen->DrawTexture(character, rx, ry,
|
||||||
DTA_DestWidthF, rw,
|
DTA_DestWidthF, rw,
|
||||||
DTA_DestHeightF, rh,
|
DTA_DestHeightF, rh,
|
||||||
DTA_Translation, font->GetColorTranslation(translation),
|
DTA_Translation, remap,
|
||||||
DTA_Alpha, alpha,
|
DTA_Alpha, alpha,
|
||||||
TAG_DONE);
|
TAG_DONE);
|
||||||
if(script->spacingCharacter == '\0')
|
if(script->spacingCharacter == '\0')
|
||||||
|
|
Loading…
Reference in a new issue