Fix original wanted stars position

This commit is contained in:
erorcun 2020-12-28 15:29:21 +03:00
parent 7b2f17826a
commit 5780200ba3

View File

@ -1055,6 +1055,7 @@ CFont::GetCharacterWidth(wchar c)
else else
return Size[LanguageSet][Details.style][192]; return Size[LanguageSet][Details.style][192];
#else #else
if (Details.proportional) if (Details.proportional)
return Size[Details.style][c]; return Size[Details.style][c];
else else
@ -1100,6 +1101,11 @@ CFont::GetCharacterSize(wchar c)
else else
return Size[LanguageSet][Details.style][209] * Details.scaleX; return Size[LanguageSet][Details.style][209] * Details.scaleX;
#else #else
#ifdef FIX_BUGS
// PS2 don't call FindNewCharacter in here at all, and also uses different chars for some symbols
if (!Details.bFontHalfTexture && c == 30) c = 61; // wanted star
#endif
if (Details.bFontHalfTexture) if (Details.bFontHalfTexture)
c = FindNewCharacter(c); c = FindNewCharacter(c);
if (Details.proportional) if (Details.proportional)
@ -1523,6 +1529,10 @@ CFont::RenderFontBuffer()
PrintChar(textPosX + 2.0f, textPosY, c); PrintChar(textPosX + 2.0f, textPosY, c);
textPosX += 2.0f; textPosX += 2.0f;
} }
#ifdef FIX_BUGS
// PS2 uses different chars for some symbols
if (!RenderState.bFontHalfTexture && c == 30) c = 61; // wanted star
#endif
textPosX += RenderState.scaleX * (RenderState.proportional ? Size[RenderState.style][c] : Size[RenderState.style][209]); textPosX += RenderState.scaleX * (RenderState.proportional ? Size[RenderState.style][c] : Size[RenderState.style][209]);
if (c == '\0') if (c == '\0')
textPosX += RenderState.fExtraSpace; textPosX += RenderState.fExtraSpace;