From <Someone>
This was caused by character set incompatibility between message and map windows. Apparently, Nethack is using IBM character set (CP 437) but fonts were create for Windows ANSI codepage. I fixed most of it by changing character set of the fonts except for the Rogue level. I had to make changes to src/drawing.c for Rogue level since most of Windows fonts are not capable of displaying control characters (char. code<0x20) And of course, disabling IBMGraphics option fixes it all.
This commit is contained in:
+2
-2
@@ -6,8 +6,8 @@
|
||||
#include "mhmap.h"
|
||||
#include "mhmsg.h"
|
||||
#include "mhinput.h"
|
||||
#include "mhfont.h"
|
||||
|
||||
#define NHMAP_FONT_NAME TEXT("Terminal")
|
||||
#define MAXWINDOWTEXT 255
|
||||
|
||||
extern short glyph2tile[];
|
||||
@@ -156,7 +156,7 @@ void mswin_map_stretch(HWND hWnd, LPSIZE lpsz, BOOL redraw)
|
||||
lgfnt.lfClipPrecision = CLIP_DEFAULT_PRECIS; // clipping precision
|
||||
lgfnt.lfQuality = DEFAULT_QUALITY; // output quality
|
||||
lgfnt.lfPitchAndFamily = FIXED_PITCH; // pitch and family
|
||||
_tcscpy(lgfnt.lfFaceName, TEXT("Terminal"));
|
||||
_tcscpy(lgfnt.lfFaceName, NHMAP_FONT_NAME);
|
||||
data->hMapFont = CreateFontIndirect(&lgfnt);
|
||||
|
||||
mswin_cliparound(data->xCur, data->yCur);
|
||||
|
||||
Reference in New Issue
Block a user