Merge branch 'NetHack-3.6'

This commit is contained in:
nhmall
2019-11-02 22:53:46 -04:00
15 changed files with 106 additions and 89 deletions
+6 -6
View File
@@ -273,12 +273,12 @@ stat.h
sys/winnt: sys/winnt:
(files for Windows 7/8.x/10 version) (files for Windows 7/8.x/10 version)
Install.nt Makefile.gcc Makefile.msc console.rc Install.nt Makefile.gcc Makefile.msc console.rc
defaults.nh nethack.def nh340key.c nhdefkey.c .nethackrc.template nethack.def nh340key.c nhdefkey.c
nhico.uu nhraykey.c nhsetup.bat ntsound.c nhico.uu nhraykey.c nhsetup.bat ntsound.c
nttty.c porthelp stub-pdcscrn.c stubs.c nttty.c porthelp stub-pdcscrn.c stubs.c
sysconf win10.c win10.h win32api.h sysconf.template win10.c win10.h win32api.h
windmain.c winnt.c winos.h windmain.c winnt.c winos.h
util: util:
(files for all versions) (files for all versions)
+17 -16
View File
@@ -1,4 +1,4 @@
.\" $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.324 $ $NHDT-Date: 1572690738 2019/11/02 10:32:18 $ .\" $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.325 $ $NHDT-Date: 1572735924 2019/11/02 23:05:24 $
.\" .\"
.\" This is an excerpt from the 'roff' man page from the 'groff' package. .\" This is an excerpt from the 'roff' man page from the 'groff' package.
.\" NetHack's Guidebook.mn currently does *not* adhere to these guidelines. .\" NetHack's Guidebook.mn currently does *not* adhere to these guidelines.
@@ -2625,16 +2625,17 @@ and Mac OS X it is \(lq.nethackrc\(rq in the user's home directory.
The file may not exist, but it is a normal ASCII text file and The file may not exist, but it is a normal ASCII text file and
can be created with any text editor. can be created with any text editor.
.pg .pg
On Windows, if you manually installed from the zip file, On Windows, it is \(lq.nethackrc\(rq in
it is \(lqdefaults.nh\(rq \(lq\\%USERPROFILE%\\NetHack\\3.6\(rq. The file may not exist,
in the same folder as nethack.exe or nethackW.exe. but it is a normal ASCII text file can can be created with any
If you installed using the Microsoft Store, it is text editor.
\(lqdefaults.nh\(rq in the following folder: .pg
\(lq\\%USERPROFILE%\\NetHack\(rq. There, a starting template is After running NetHack for the first time, you should find a default
provided for you to use to create your \(lqdefaults.nh\(rq template for the configuration file named \(lq.nethackrc.template\(rq
configuration file. It is \(lqdefaults.tmp\(rq also in the following in \(lq\\%USERPROFILE%\\NetHack\\3.6\(rq.
folder: .pg
\(lq\\%USERPROFILE%\\NetHack\(rq If you had not created the configuration file, NetHack will create
the configuration file for you using the default template file.
.pg .pg
On MS-DOS, it is \(lqdefaults.nh\(rq in the same folder as nethack.exe. On MS-DOS, it is \(lqdefaults.nh\(rq in the same folder as nethack.exe.
.pg .pg
@@ -4605,10 +4606,10 @@ z S_zruty (zruty)
.\" don't hyphenate file name across lines .\" don't hyphenate file name across lines
.hw sysconf .hw sysconf
.pg .pg
Notes: several symbols in this table appear to be blank. They are the Notes: several symbols in this table appear to be blank.
space character, except for S_pet_override and S_player_override which They are the space character, except for S_pet_override
don't have any default value and can only be used if enabled in the and S_player_override which don't have any default value
\(lqsysconf\(rq file. and can only be used if enabled in the \(lqsysconf\(rq file.
.pg .pg
S_rock is misleadingly named; rocks and stones use S_gem. S_rock is misleadingly named; rocks and stones use S_gem.
Statues and boulders are the rock being referred to, but since Statues and boulders are the rock being referred to, but since
@@ -5158,7 +5159,7 @@ miscreants in this, the list of Dungeoneers:
. .
.TS S .TS S
center; center;
c c c. c2 c2 c.
.\"TABLE_START .\"TABLE_START
Adam Aronow J. Ali Harlow Mikko Juola Adam Aronow J. Ali Harlow Mikko Juola
Alex Kompel Janet Walz Nathan Eady Alex Kompel Janet Walz Nathan Eady
+36 -16
View File
@@ -2875,16 +2875,19 @@ directory. The file may not exist, but it is a normal ASCII text file and
can be created with any text editor.\\ can be created with any text editor.\\
%.lp "" %.lp ""
On Windows, if you manually installed from the zip file, On Windows, it is \mbox{``.nethackrc''} in the foler
it is \mbox{``defaults.nh''} in the same folder as \mbox{{``\%USERPROFILE\%\textbackslash NetHack\textbackslash 3.6''}}. The
\mbox{{\it nethack.exe\/}} or \mbox{{\it nethackW.exe\/}}. file may not exist, but it is a normal ASCII text file and can be created
If you installed using the Microsoft Store, it is \mbox{``defaults.nh''} in with any text editor.\\
the following folder:
\mbox{{``\%USERPROFILE\%\textbackslash NetHack''}}. %.lp ""
There, a starting template is provided for you to use to create your After runing {\it NetHack\/} for the first time, you should find a default
\mbox{``defaults.nh''} configuration file. It is \mbox{``defaults.tmp''} template for ths configuration file named \mbox{``.nethackrc.template''} in
also in the following folder: \mbox{{``\%USERPROFILE\%\textbackslash NetHack\textbackslash 3.6''}}.
\mbox{{``\%USERPROFILE\%\textbackslash NetHack''}}.\\
%.lp ""
If you had not created the configuration file, {\it NetHack\/} will create
the configuration file for you using the default template file.
%.lp "" %.lp ""
On MS-DOS it is \mbox{``defaults.nh''} in the same folder as On MS-DOS it is \mbox{``defaults.nh''} in the same folder as
@@ -5039,7 +5042,8 @@ Default & Symbol Name & Description\\
\verb+@+ & S\verb+_+ss3 & (magic shield 3 of 4)\\ \verb+@+ & S\verb+_+ss3 & (magic shield 3 of 4)\\
\verb@*@ & S\verb+_+ss4 & (magic shield 4 of 4)\\ \verb@*@ & S\verb+_+ss4 & (magic shield 4 of 4)\\
\verb@^@ & S\verb+_+statue\verb+_+trap & (statue trap)\\ \verb@^@ & S\verb+_+statue\verb+_+trap & (statue trap)\\
\verb@ @ & S\verb+_+stone & (dark part of a room)\\ \verb@ @ & S\verb+_+stone & (solid rock or unexplored terrain\\
& & \,or dark part of a room)\\
\verb@]@ & S\verb+_+strange\verb+_+obj & (strange object)\\ \verb@]@ & S\verb+_+strange\verb+_+obj & (strange object)\\
\verb@-@ & S\verb+_+sw\verb+_+bc & (swallow bottom center)\\ \verb@-@ & S\verb+_+sw\verb+_+bc & (swallow bottom center)\\
\verb@\@ & S\verb+_+sw\verb+_+bl & (swallow bottom left)\\ \verb@\@ & S\verb+_+sw\verb+_+bl & (swallow bottom left)\\
@@ -5054,7 +5058,7 @@ Default & Symbol Name & Description\\
\verb@\@ & S\verb+_+throne & (opulent throne)\\ \verb@\@ & S\verb+_+throne & (opulent throne)\\
\verb@-@ & S\verb+_+tlcorn & (top left corner)\\ \verb@-@ & S\verb+_+tlcorn & (top left corner)\\
\verb@|@ & S\verb+_+tlwall & (wall)\\ \verb@|@ & S\verb+_+tlwall & (wall)\\
\verb@(@ & S\verb+_+tool & (useful item (pick-axe\, key\, lamp...))\\ \verb@(@ & S\verb+_+tool & (useful item (pick-axe, key, lamp...))\\
\verb@^@ & S\verb+_+trap\verb+_+door & (trap door)\\ \verb@^@ & S\verb+_+trap\verb+_+door & (trap door)\\
\verb@t@ & S\verb+_+trapper & (trapper or lurker above)\\ \verb@t@ & S\verb+_+trapper & (trapper or lurker above)\\
\verb@-@ & S\verb+_+trcorn & (top right corner)\\ \verb@-@ & S\verb+_+trcorn & (top right corner)\\
@@ -5083,16 +5087,30 @@ Default & Symbol Name & Description\\
\verb@w@ & S\verb+_+worm & (worm)\\ \verb@w@ & S\verb+_+worm & (worm)\\
\verb@~@ & S\verb+_+worm\verb+_+tail & (long worm tail)\\ \verb@~@ & S\verb+_+worm\verb+_+tail & (long worm tail)\\
\verb@W@ & S\verb+_+wraith & (wraith)\\ \verb@W@ & S\verb+_+wraith & (wraith)\\
\verb@x@ & S\verb+_+xan & (xan or other mythical/fantastic insect)\\ \verb@x@ & S\verb+_+xan & (xan or other extraordinary insect)\\
\verb@X@ & S\verb+_+xorn & (xorn)\\ \verb@X@ & S\verb+_+xorn & (xorn)\\
\verb@Y@ & S\verb+_+yeti & (apelike creature)\\ \verb@Y@ & S\verb+_+yeti & (apelike creature)\\
\verb@Z@ & S\verb+_+zombie & (zombie)\\ \verb@Z@ & S\verb+_+zombie & (zombie)\\
\verb@z@ & S\verb+_+zruty & (zruty)\\ \verb@z@ & S\verb+_+zruty & (zruty)\\
\verb@ @ & S\verb+_+pet\verb+_+override & (any pet if sysconf accessibility is set)\\ \verb@ @ & S\verb+_+pet\verb+_+override & (any pet if ACCESSIBILITY=1 is set)\\
\verb@ @ & S\verb+_+player\verb+_+override & (hero if sysconf accessibility is set) \verb@ @ & S\verb+_+player\verb+_+override & (hero if ACCESSIBILITY=1 is set)
\end{longtable}% \end{longtable}%
} }
\hyphenation{sysconf} %no syllable breaks => don't hyphenate file name
%.pg
Notes: several symbols in this table appear to be blank.
They are the space character, except for S\verb+_+pet\verb+_+override
and S\verb+_+player\verb+_+override which don't have any default value
and can only be used if enabled in the ``sysconf'' file.
%.pg
S\verb+_+rock is misleadingly named; rocks and stones use S\verb+_+gem.
Statues and boulders are the rock being referred to, but since
version 3.6.0, statues are displayed as the monster they depict.
So S\verb+_+rock is only used for boulders and not used at all if
overridden by the more specific S\verb+_+boulder.
%.pg %.pg
%.hn 2 %.hn 2
\subsection*{Configuring {\it NetHack\/} for Play by the Blind} \subsection*{Configuring {\it NetHack\/} for Play by the Blind}
@@ -5140,7 +5158,9 @@ See the previous section for the special symbols S\verb+_+pet\verb+_+override
to force a consistent symbol for all pets and S\verb+_+player\verb+_+override to force a consistent symbol for all pets and S\verb+_+player\verb+_+override
to force a unique symbol for the player character if {\it accessibility\/} to force a unique symbol for the player character if {\it accessibility\/}
is enabled in the {\it sysconf\/} file. is enabled in the {\it sysconf\/} file.
The most crucial settings to make the game accessible are:
%.pg
The most crucial settings to make the game more accessible are:
%.pg %.pg
\blist{} \blist{}
%.lp %.lp
+3
View File
@@ -350,6 +350,9 @@ unix: sysconf CHECK_PLNAME=1 wouldn't work if attempt to obtain unix username
unix+curses: startup error only reset terminal for tty; one noticeable unix+curses: startup error only reset terminal for tty; one noticeable
example was answering 'n' to "Destroy old game?" example was answering 'n' to "Destroy old game?"
Windows: some startup error messages were not being delivered successfully Windows: some startup error messages were not being delivered successfully
WindowsGUI: player selection dialog box layout was not being adjusted for DPI
Windows: signifiant changes to default directory choices. see documentation
for details.
General New Features General New Features
+2 -3
View File
@@ -78,9 +78,8 @@
* objects being thrown when the hangup occurs. \ * objects being thrown when the hangup occurs. \
*/ */
#define MAIL #define CONFIG_FILE ".nethackrc"
#define CONFIG_FILE "defaults.nh" #define CONFIG_TEMPLATE ".nethackrc.template"
#define CONFIG_TEMPLATE "defaults.template"
#define SYSCF_TEMPLATE "sysconf.template" #define SYSCF_TEMPLATE "sysconf.template"
#define SYMBOLS_TEMPLATE "symbols.template" #define SYMBOLS_TEMPLATE "symbols.template"
#define GUIDEBOOK_FILE "Guidebook.txt" #define GUIDEBOOK_FILE "Guidebook.txt"
-2
View File
@@ -21,10 +21,8 @@
* Note: 3.6.x was not verified with Symantec C. * Note: 3.6.x was not verified with Symantec C.
*/ */
#if defined(MSDOS)
#define CONFIG_FILE "defaults.nh" #define CONFIG_FILE "defaults.nh"
#define GUIDEBOOK_FILE "Guidebook.txt" #define GUIDEBOOK_FILE "Guidebook.txt"
#endif
/* /*
* The following options are somewhat configurable depending on * The following options are somewhat configurable depending on
+4 -4
View File
@@ -1,4 +1,4 @@
# NetHack 3.6 Makefile.gcc $NHDT-Date: 1546174698 2018/12/30 12:58:18 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.71 $ # NetHack 3.6 Makefile.gcc $NHDT-Date: 1572748375 2019/11/03 02:32:55 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.80 $
# Copyright (c) 2010 by Michael Allison # Copyright (c) 2010 by Michael Allison
# NetHack may be freely redistributed. See license for details. # NetHack may be freely redistributed. See license for details.
# #
@@ -764,11 +764,11 @@ else
$(subst /,\,copy $(DAT)/*.lev $(GAMEDIR)) $(subst /,\,copy $(DAT)/*.lev $(GAMEDIR))
$(subst /,\,if exist $(GAMEDIR)/makefile del $(GAMEDIR)/makefile) $(subst /,\,if exist $(GAMEDIR)/makefile del $(GAMEDIR)/makefile)
endif endif
$(subst /,\,if not exist $(GAMEDIR)/sysconf copy $(MSWSYS)/sysconf $(GAMEDIR)) $(subst /,\,if exist $(MSWSYS)/sysconf.template copy $(MSWSYS)/sysconf.template $(GAMEDIR))
$(subst /,\,if exist $(DAT)/symbols copy $(DAT)/symbols $(GAMEDIR)) $(subst /,\,if exist $(DAT)/symbols copy $(DAT)/symbols $(GAMEDIR)/symbols.template)
$(subst /,\,if exist $(DOC)/guidebook.txt copy $(DOC)/guidebook.txt $(GAMEDIR)/Guidebook.txt) $(subst /,\,if exist $(DOC)/guidebook.txt copy $(DOC)/guidebook.txt $(GAMEDIR)/Guidebook.txt)
$(subst /,\,if exist $(DOC)/nethack.txt copy $(DOC)/nethack.txt $(GAMEDIR)/NetHack.txt) $(subst /,\,if exist $(DOC)/nethack.txt copy $(DOC)/nethack.txt $(GAMEDIR)/NetHack.txt)
$(subst /,\,if not exist $(GAMEDIR)/defaults.nh copy $(MSWSYS)/defaults.nh $(GAMEDIR)/defaults.nh) $(subst /,\,if exist $(MSWSYS)/.nethackrc.template copy $(MSWSYS)/.nethackrc.template $(GAMEDIR))
$(subst /,\,-if not exist $(GAMEDIR)/record. echo.>$(GAMEDIR)/record.) $(subst /,\,-if not exist $(GAMEDIR)/record. echo.>$(GAMEDIR)/record.)
# #
# #
+4 -4
View File
@@ -1,4 +1,4 @@
# NetHack 3.7 Makefile.msc $NHDT-Date: 1554784482 2019/04/09 04:34:42 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.153 $ */ # NetHack 3.6 Makefile.msc $NHDT-Date: 1572748386 2019/11/03 02:33:06 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.167 $ */
# Copyright (c) NetHack PC Development Team 1993-2019 # Copyright (c) NetHack PC Development Team 1993-2019
# #
#============================================================================== #==============================================================================
@@ -702,13 +702,13 @@ $(O)install.tag: $(DAT)\data $(DAT)\rumors $(DAT)\dungeon \
copy $(DAT)\*.lev $(GAMEDIR) copy $(DAT)\*.lev $(GAMEDIR)
if exist $(GAMEDIR)\makefile del $(GAMEDIR)\makefile if exist $(GAMEDIR)\makefile del $(GAMEDIR)\makefile
! ENDIF ! ENDIF
if not exist $(GAMEDIR)\sysconf copy $(MSWSYS)\sysconf $(GAMEDIR) if exist $(MSWSYS)\sysconf.template copy $(MSWSYS)\sysconf.template $(GAMEDIR)
if exist $(DAT)\symbols copy $(DAT)\symbols $(GAMEDIR) if exist $(DAT)\symbols copy $(DAT)\symbols $(GAMEDIR)\symbols.template
if exist $(DOC)\guidebook.txt copy $(DOC)\guidebook.txt $(GAMEDIR)\Guidebook.txt if exist $(DOC)\guidebook.txt copy $(DOC)\guidebook.txt $(GAMEDIR)\Guidebook.txt
if exist $(DOC)\nethack.txt copy $(DOC)\nethack.txt $(GAMEDIR)\NetHack.txt if exist $(DOC)\nethack.txt copy $(DOC)\nethack.txt $(GAMEDIR)\NetHack.txt
@if exist $(GAMEDIR)\NetHack.PDB echo NOTE: You may want to remove $(GAMEDIR:\=/)/NetHack.PDB to conserve space @if exist $(GAMEDIR)\NetHack.PDB echo NOTE: You may want to remove $(GAMEDIR:\=/)/NetHack.PDB to conserve space
@if exist $(GAMEDIR)\NetHackW.PDB echo NOTE: You may want to remove $(GAMEDIR:\=/)/NetHackW.PDB to conserve space @if exist $(GAMEDIR)\NetHackW.PDB echo NOTE: You may want to remove $(GAMEDIR:\=/)/NetHackW.PDB to conserve space
-if not exist $(GAMEDIR)\defaults.nh copy $(MSWSYS)\defaults.nh $(GAMEDIR)\defaults.nh if exist $(MSWSYS)\.nethackrc.template copy $(MSWSYS)\.nethackrc.template $(GAMEDIR)
-if not exist $(GAMEDIR)\record. goto>$(GAMEDIR)\record. -if not exist $(GAMEDIR)\record. goto>$(GAMEDIR)\record.
echo install done > $@ echo install done > $@
+16 -1
View File
@@ -9,6 +9,21 @@
#include "hack.h" #include "hack.h"
typedef DPI_AWARENESS_CONTEXT(WINAPI *GetThreadDpiAwarenessContextProc)(VOID);
typedef BOOL(WINAPI *AreDpiAwarenessContextsEqualProc)(
DPI_AWARENESS_CONTEXT dpiContextA, DPI_AWARENESS_CONTEXT dpiContextB);
typedef UINT(WINAPI *GetDpiForWindowProc)(HWND hwnd);
typedef LONG (WINAPI *GetCurrentPackageFullNameProc)(UINT32 *packageFullNameLength,
PWSTR packageFullName);
typedef struct {
BOOL Valid;
GetThreadDpiAwarenessContextProc GetThreadDpiAwarenessContext;
AreDpiAwarenessContextsEqualProc AreDpiAwarenessContextsEqual;
GetDpiForWindowProc GetDpiForWindow;
GetCurrentPackageFullNameProc GetCurrentPackageFullName;
} Win10;
Win10 gWin10 = { 0 }; Win10 gWin10 = { 0 };
void win10_init() void win10_init()
@@ -37,7 +52,7 @@ void win10_init()
HINSTANCE hKernel32 = LoadLibraryA("kernel32.dll"); HINSTANCE hKernel32 = LoadLibraryA("kernel32.dll");
if (hKernel32 == NULL) if (hKernel32 == NULL)
panic("Unable to load user32.dll"); panic("Unable to load kernel32.dll");
gWin10.GetCurrentPackageFullName = (GetCurrentPackageFullNameProc) GetProcAddress(hKernel32, "GetCurrentPackageFullName"); gWin10.GetCurrentPackageFullName = (GetCurrentPackageFullNameProc) GetProcAddress(hKernel32, "GetCurrentPackageFullName");
if (gWin10.GetCurrentPackageFullName == NULL) if (gWin10.GetCurrentPackageFullName == NULL)
-18
View File
@@ -7,21 +7,6 @@
#include "win32api.h" #include "win32api.h"
typedef DPI_AWARENESS_CONTEXT(WINAPI *GetThreadDpiAwarenessContextProc)(VOID);
typedef BOOL(WINAPI *AreDpiAwarenessContextsEqualProc)(
DPI_AWARENESS_CONTEXT dpiContextA, DPI_AWARENESS_CONTEXT dpiContextB);
typedef UINT(WINAPI *GetDpiForWindowProc)(HWND hwnd);
typedef LONG (WINAPI *GetCurrentPackageFullNameProc)(UINT32 *packageFullNameLength,
PWSTR packageFullName);
typedef struct {
BOOL Valid;
GetThreadDpiAwarenessContextProc GetThreadDpiAwarenessContext;
AreDpiAwarenessContextsEqualProc AreDpiAwarenessContextsEqual;
GetDpiForWindowProc GetDpiForWindow;
GetCurrentPackageFullNameProc GetCurrentPackageFullName;
} Win10;
typedef struct { typedef struct {
double scale; // dpi of monitor / 96 double scale; // dpi of monitor / 96
int width; // in pixels int width; // in pixels
@@ -30,12 +15,9 @@ typedef struct {
int left; // in desktop coordinate pixel space int left; // in desktop coordinate pixel space
} MonitorInfo; } MonitorInfo;
extern Win10 gWin10;
void win10_init(); void win10_init();
int win10_monitor_dpi(HWND hWnd); int win10_monitor_dpi(HWND hWnd);
double win10_monitor_scale(HWND hWnd); double win10_monitor_scale(HWND hWnd);
void win10_monitor_size(HWND hWnd, int * width, int * height);
void win10_monitor_info(HWND hWnd, MonitorInfo * monitorInfo); void win10_monitor_info(HWND hWnd, MonitorInfo * monitorInfo);
BOOL win10_is_desktop_bridge_application(void); BOOL win10_is_desktop_bridge_application(void);
+6 -6
View File
@@ -304,23 +304,23 @@ void copy_config_content()
/* Keep templates up to date */ /* Keep templates up to date */
/* TODO: Update the package to store config file as .nethackrc */ /* TODO: Update the package to store config file as .nethackrc */
update_file(g.fqn_prefix[CONFIGPREFIX], CONFIG_TEMPLATE, update_file(g.fqn_prefix[CONFIGPREFIX], CONFIG_TEMPLATE,
g.fqn_prefix[DATAPREFIX], CONFIG_FILE, FALSE); g.fqn_prefix[DATAPREFIX], CONFIG_TEMPLATE, FALSE);
update_file(g.fqn_prefix[SYSCONFPREFIX], SYSCF_TEMPLATE, update_file(g.fqn_prefix[SYSCONFPREFIX], SYSCF_TEMPLATE,
g.fqn_prefix[DATAPREFIX], SYSCF_FILE, FALSE); g.fqn_prefix[DATAPREFIX], SYSCF_TEMPLATE, FALSE);
/* If the required early game file does not exist, copy it */ /* If the required early game file does not exist, copy it */
/* NOTE: We never replace .nethackrc or sysconf */ /* NOTE: We never replace .nethackrc or sysconf */
copy_file(g.fqn_prefix[CONFIGPREFIX], CONFIG_FILE, copy_file(g.fqn_prefix[CONFIGPREFIX], CONFIG_FILE,
g.fqn_prefix[DATAPREFIX], CONFIG_FILE); g.fqn_prefix[DATAPREFIX], CONFIG_TEMPLATE);
copy_file(g.fqn_prefix[SYSCONFPREFIX], SYSCF_FILE, copy_file(g.fqn_prefix[SYSCONFPREFIX], SYSCF_FILE,
g.fqn_prefix[DATAPREFIX], SYSCF_FILE); g.fqn_prefix[DATAPREFIX], SYSCF_TEMPLATE);
/* Update symbols and save a copy if we are replacing */ /* Update symbols and save a copy if we are replacing */
/* TODO: Can't HACKDIR be changed during option parsing /* TODO: Can't HACKDIR be changed during option parsing
causing us to perhaps be checking options against the wrong causing us to perhaps be checking options against the wrong
symbols file? */ symbols file? */
update_file(g.fqn_prefix[HACKPREFIX], SYMBOLS, update_file(g.fqn_prefix[HACKPREFIX], SYMBOLS,
g.fqn_prefix[DATAPREFIX], SYMBOLS, TRUE); g.fqn_prefix[DATAPREFIX], SYMBOLS_TEMPLATE, TRUE);
} }
void void
@@ -334,7 +334,7 @@ copy_hack_content()
/* Keep templates up to date */ /* Keep templates up to date */
update_file(g.fqn_prefix[HACKPREFIX], SYMBOLS_TEMPLATE, update_file(g.fqn_prefix[HACKPREFIX], SYMBOLS_TEMPLATE,
g.fqn_prefix[DATAPREFIX], SYMBOLS, FALSE); g.fqn_prefix[DATAPREFIX], SYMBOLS_TEMPLATE, FALSE);
} }
+6 -6
View File
@@ -113,8 +113,8 @@
<Content Include="Images\Wide310x150Logo.scale-125.png" /> <Content Include="Images\Wide310x150Logo.scale-125.png" />
<Content Include="Images\Wide310x150Logo.scale-150.png" /> <Content Include="Images\Wide310x150Logo.scale-150.png" />
<Content Include="Images\Wide310x150Logo.scale-200.png" /> <Content Include="Images\Wide310x150Logo.scale-200.png" />
<Content Include="$(BinDir)defaults.nh"> <Content Include="$(BinDir).nethackrc.template">
<Link>NetHackW\defaults.nh</Link> <Link>NetHackW\.nethackrc.template</Link>
</Content> </Content>
<Content Include="$(BinDir)Guidebook.txt"> <Content Include="$(BinDir)Guidebook.txt">
<Link>NetHackW\Guidebook.txt</Link> <Link>NetHackW\Guidebook.txt</Link>
@@ -128,11 +128,11 @@
<Content Include="$(BinDir)opthelp"> <Content Include="$(BinDir)opthelp">
<Link>NetHackW\opthelp</Link> <Link>NetHackW\opthelp</Link>
</Content> </Content>
<Content Include="$(BinDir)symbols"> <Content Include="$(BinDir)symbols.template">
<Link>NetHackW\symbols</Link> <Link>NetHackW\symbols.template</Link>
</Content> </Content>
<Content Include="$(BinDir)sysconf"> <Content Include="$(BinDir)sysconf.template">
<Link>NetHackW\sysconf</Link> <Link>NetHackW\sysconf.template</Link>
</Content> </Content>
<Content Include="Images\Wide310x150Logo.scale-400.png" /> <Content Include="Images\Wide310x150Logo.scale-400.png" />
<None Include="NetHackPackage_StoreKey.pfx" /> <None Include="NetHackPackage_StoreKey.pfx" />
+6 -7
View File
@@ -3,13 +3,12 @@
<Import Project="files.props"/> <Import Project="files.props"/>
<!-- TODO not copying record --> <!-- TODO not copying record -->
<Target Name="Build" <Target Name="Build"
Inputs="$(SysWinntDir)defaults.nh;$(DocDir)Guidebook.txt;$(DatDir)license;$(SysWinntDir)sysconf;$(DocDir)nethack.txt;$(DatDir)symbols;$(WinWin32Dir)record;$(DatDir)opthelp" Inputs="$(SysWinntDir).nethackrc.template;$(DocDir)Guidebook.txt;$(DatDir)license;$(SysWinntDir)sysconf.template;$(DocDir)nethack.txt;$(DatDir)symbols;$(WinWin32Dir)record;$(DatDir)opthelp"
Outputs="$(BinDir)defaults.nh;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf;$(BinDir)symbols;$(BinDir)record;$(BinDir)opthelp"> Outputs="$(BinDir).nethackrc.template;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf.template;$(BinDir)symbols.template;$(BinDir)record;$(BinDir)opthelp">
<Copy SourceFiles="$(SysWinntDir).nethackrc.template;$(DocDir)Guidebook.txt;$(DatDir)license;$(SysWinntDir)sysconf.template;$(DocDir)nethack.txt;$(DatDir)symbols;$(WinWin32Dir)record;$(DatDir)opthelp"
<Copy SourceFiles="$(SysWinntDir)defaults.nh;$(DocDir)Guidebook.txt;$(DatDir)license;$(SysWinntDir)sysconf;$(DocDir)nethack.txt;$(DatDir)symbols;$(WinWin32Dir)record;$(DatDir)opthelp" DestinationFolder="$(BinDir)"/> DestinationFiles="$(BinDir).nethackrc.template;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf.template;$(BinDir)nethack.txt;$(BinDir)symbols.template;$(BinDir)record;$(BinDir)opthelp" />
</Target>
</Target>
<Target Name="Clean"> <Target Name="Clean">
<Delete Files="$(BinDir)defaults.nh;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf;$(BinDir)nethack.txt;$(BinDir)symbols;$(BinDir)record;$(BinDir)opthelp"/> <Delete Files="$(BinDir).nethackrc.template;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf.template;$(BinDir)nethack.txt;$(BinDir)symbols.template;$(BinDir)record;$(BinDir)opthelp"/>
</Target> </Target>
</Project> </Project>