diff --git a/Files b/Files index 560f2abcc..d97ac67bf 100644 --- a/Files +++ b/Files @@ -273,14 +273,14 @@ win/tty: getline.c termcap.c topl.c wintty.c win/win32: -(files for Windows Windows 200x, Windows XP and Windows 7 version) +(files for Windows versions - tested up to Windows 10) mhaskyn.c mhaskyn.h mhdlg.c mhdlg.h mhfont.c mhfont.h mhinput.c mhinput.h mhmain.c mhmain.h mhmap.c mhmap.h mhmenu.c mhmenu.h mhmsg.h mhmsgwnd.c mhmsgwnd.h mhrip.c mhrip.h mhsplash.c mhsplash.h mhstatus.c mhstatus.h mhtext.c mhtext.h -mnsel.uu mnselcnt.uu mnunsel.uu mswproc.c -petmark.uu pilemark.uu resource.h rip.uu splash.uu +mnsel.uu mnselcnt.uu mnunsel.uu mswproc.c petmark.uu +pilemark.uu record.uu resource.h rip.uu splash.uu tiles.mak winMS.h winhack.c winhack.rc win/win32/vs2010: diff --git a/doc/fixes36.1 b/doc/fixes36.1 index c82e19700..3cc5261f6 100644 --- a/doc/fixes36.1 +++ b/doc/fixes36.1 @@ -77,6 +77,8 @@ change "unlockable chest" to "broken chest" so that it won't be misunderstood use doname instead of xname when using '/' or ';' to look at objects on map when a pet moves reluctantly, name the top item of the pile it is reluctant to step on if the hero sees or remembers any object(s) at that spot +ensure sufficient messages are given to clarify the transition from detected + vampire bats to fog clouds in Vlad's tower Platform- and/or Interface-Specific Fixes @@ -99,6 +101,7 @@ MacOSX: force TIMED_DELAY build option on so that 'runmode' run-time option is functional X11: core bug for '`' (backtick) and #terrain commands was only noticed by X11 interface: impossible "add_menu: called before start_menu" +X11: enable a scroll bar in menu windows General New Features diff --git a/include/flag.h b/include/flag.h index e8d696662..bd6d2b2fc 100644 --- a/include/flag.h +++ b/include/flag.h @@ -1,4 +1,4 @@ -/* NetHack 3.6 flag.h $NHDT-Date: 1435002669 2015/06/22 19:51:09 $ $NHDT-Branch: master $:$NHDT-Revision: 1.89 $ */ +/* NetHack 3.6 flag.h $NHDT-Date: 1451683047 2016/01/01 21:17:27 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.93 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -259,6 +259,7 @@ struct instance_flags { boolean lan_mail; /* mail is initialized */ boolean lan_mail_fetched; /* mail is awaiting display */ #endif + boolean wizweight; /* display weight of everything in wizard mode */ /* * Window capability support. */ diff --git a/include/hack.h b/include/hack.h index fc31dd887..2eae9e6ba 100644 --- a/include/hack.h +++ b/include/hack.h @@ -1,4 +1,4 @@ -/* NetHack 3.6 hack.h $NHDT-Date: 1434056948 2015/06/11 21:09:08 $ $NHDT-Branch: master $:$NHDT-Revision: 1.66 $ */ +/* NetHack 3.6 hack.h $NHDT-Date: 1451683048 2016/01/01 21:17:28 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.68 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -374,7 +374,8 @@ NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */ #define DISP_IN_GAME 3 /* may be set via extern program, displayed in game \ */ #define SET_IN_GAME 4 /* may be set via extern program or set in the game */ -#define SET__IS_VALUE_VALID(s) ((s < SET_IN_SYS) || (s > SET_IN_GAME)) +#define SET_IN_WIZGAME 5 /* may be set set in the game if wizmode */ +#define SET__IS_VALUE_VALID(s) ((s < SET_IN_SYS) || (s > SET_IN_WIZGAME)) #define FEATURE_NOTICE_VER(major, minor, patch) \ (((unsigned long) major << 24) | ((unsigned long) minor << 16) \ diff --git a/src/files.c b/src/files.c index a524af027..059090b1f 100644 --- a/src/files.c +++ b/src/files.c @@ -1,4 +1,4 @@ -/* NetHack 3.6 files.c $NHDT-Date: 1451001643 2015/12/25 00:00:43 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.197 $ */ +/* NetHack 3.6 files.c $NHDT-Date: 1451697801 2016/01/02 01:23:21 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.199 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -3355,7 +3355,11 @@ assure_syscf_file() * VMS overrides open() usage with a macro which requires it. */ #ifndef VMS +# if defined(NOCWD_ASSUMPTIONS) && defined(WIN32) + fd = open(fqname(SYSCF_FILE, SYSCONFPREFIX, 0), O_RDONLY); +# else fd = open(SYSCF_FILE, O_RDONLY); +# endif #else fd = open(SYSCF_FILE, O_RDONLY, 0); #endif diff --git a/src/mon.c b/src/mon.c index 2e38e9298..40cdb0dca 100644 --- a/src/mon.c +++ b/src/mon.c @@ -1,4 +1,4 @@ -/* NetHack 3.6 mon.c $NHDT-Date: 1451176552 2015/12/27 00:35:52 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.202 $ */ +/* NetHack 3.6 mon.c $NHDT-Date: 1451664800 2016/01/01 16:13:20 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.203 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -3141,7 +3141,7 @@ boolean msg; /* "The oldmon turns into a newmon!" */ int hpn, hpd; int mndx, tryct; struct permonst *olddata = mtmp->data; - char oldname[BUFSZ], newname[BUFSZ]; + char oldname[BUFSZ], l_oldname[BUFSZ], newname[BUFSZ]; /* Riders are immune to polymorph and green slime */ if (is_rider(mtmp->data)) @@ -3153,6 +3153,9 @@ boolean msg; /* "The oldmon turns into a newmon!" */ SUPPRESS_SADDLE, FALSE)); oldname[0] = highc(oldname[0]); } + /* we need this one whether msg is true or not */ + Strcpy(l_oldname, x_monnam(mtmp, ARTICLE_THE, (char *) 0, + (has_mname(mtmp)) ? SUPPRESS_SADDLE : 0, FALSE)); /* mdat = 0 -> caller wants a random monster shape */ if (mdat == 0) { @@ -3246,14 +3249,19 @@ boolean msg; /* "The oldmon turns into a newmon!" */ char msgtrail[BUFSZ]; if (is_vampshifter(mtmp)) { - Strcpy(msgtrail, " that had been shapeshifted"); + Sprintf(msgtrail, " which was a shapeshifted %s", + m_monnam(mtmp)); } else if (is_animal(mdat)) { Strcpy(msgtrail, "'s stomach"); } else { msgtrail[0] = '\0'; } - You("break out of %s%s!", mon_nam(mtmp), msgtrail); + /* Do this even if msg is FALSE */ + You("%s %s%s!", + (amorphous(olddata) || is_whirly(olddata)) ? + "emerge from" : "break out of", + l_oldname, msgtrail); mtmp->mhp = 1; /* almost dead */ } expels(mtmp, olddata, FALSE); diff --git a/src/monmove.c b/src/monmove.c index 50329ceb5..33917864f 100644 --- a/src/monmove.c +++ b/src/monmove.c @@ -1,4 +1,4 @@ -/* NetHack 3.6 monmove.c $NHDT-Date: 1446808446 2015/11/06 11:14:06 $ $NHDT-Branch: master $:$NHDT-Revision: 1.78 $ */ +/* NetHack 3.6 monmove.c $NHDT-Date: 1451664819 2016/01/01 16:13:39 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.79 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -14,7 +14,7 @@ STATIC_DCL void FDECL(release_hero, (struct monst *)); STATIC_DCL void FDECL(distfleeck, (struct monst *, int *, int *, int *)); STATIC_DCL int FDECL(m_arrival, (struct monst *)); STATIC_DCL boolean FDECL(stuff_prevents_passage, (struct monst *)); -STATIC_DCL int FDECL(vamp_shift, (struct monst *, struct permonst *)); +STATIC_DCL int FDECL(vamp_shift, (struct monst *, struct permonst *, BOOLEAN_P)); /* True if mtmp died */ boolean @@ -1216,7 +1216,7 @@ postmov: if (here->doormask & (D_LOCKED | D_CLOSED) && (amorphous(ptr) || (!amorphous(ptr) && can_fog(mtmp) - && vamp_shift(mtmp, &mons[PM_FOG_CLOUD])))) { + && vamp_shift(mtmp, &mons[PM_FOG_CLOUD],canspotmon(mtmp))))) { if (flags.verbose && canseemon(mtmp)) pline("%s %s under the door.", Monnam(mtmp), (ptr == &mons[PM_FOG_CLOUD] @@ -1586,12 +1586,19 @@ struct monst *mtmp; } STATIC_OVL int -vamp_shift(mon, ptr) +vamp_shift(mon, ptr, domsg) struct monst *mon; struct permonst *ptr; +boolean domsg; { int reslt = 0; + char fmtstr[BUFSZ]; + if (domsg) { + Sprintf(fmtstr, "You %s %%s where %s was.", + sensemon(mon) ? "now detect" : "observe", + an(m_monnam(mon))); + } if (mon->cham >= LOW_PM) { if (ptr == &mons[mon->cham]) mon->cham = NON_PM; @@ -1600,6 +1607,9 @@ struct permonst *ptr; mon->cham = monsndx(mon->data); reslt = newcham(mon, ptr, FALSE, FALSE); } + if (reslt && domsg) { + pline(fmtstr, an(m_monnam(mon))); + } return reslt; } diff --git a/src/objnam.c b/src/objnam.c index 8c94eed15..339a478a5 100644 --- a/src/objnam.c +++ b/src/objnam.c @@ -1,4 +1,4 @@ -/* NetHack 3.6 objnam.c $NHDT-Date: 1450584419 2015/12/20 04:06:59 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.159 $ */ +/* NetHack 3.6 objnam.c $NHDT-Date: 1451683056 2016/01/01 21:17:36 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.162 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -1042,7 +1042,7 @@ boolean with_price; /* show weight for items (debug tourist info) * aum is stolen from Crawl's "Arbitrary Unit of Measure" */ - if (wizard) { + if (wizard && iflags.wizweight) { Sprintf(eos(bp), " (%d aum)", obj->owt); } bp = strprepend(bp, prefix); diff --git a/src/options.c b/src/options.c index c2bf0432a..2dab20368 100644 --- a/src/options.c +++ b/src/options.c @@ -1,4 +1,4 @@ -/* NetHack 3.6 options.c $NHDT-Date: 1449830206 2015/12/11 10:36:46 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.244 $ */ +/* NetHack 3.6 options.c $NHDT-Date: 1451683057 2016/01/01 21:17:37 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.249 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -147,7 +147,7 @@ static struct Bool_Opt { { "mention_walls", &iflags.mention_walls, FALSE, SET_IN_GAME }, { "menucolors", &iflags.use_menu_color, FALSE, SET_IN_GAME }, /* for menu debugging only*/ - { "menu_tab_sep", &iflags.menu_tab_sep, FALSE, SET_IN_GAME }, + { "menu_tab_sep", &iflags.menu_tab_sep, FALSE, SET_IN_WIZGAME }, { "menu_objsyms", &iflags.menu_head_objsym, FALSE, SET_IN_GAME }, { "mouse_support", &iflags.wc_mouse_support, TRUE, DISP_IN_GAME }, /*WC*/ #ifdef NEWS @@ -183,7 +183,7 @@ static struct Bool_Opt { DISP_IN_GAME }, #endif { "safe_pet", &flags.safe_dog, TRUE, SET_IN_GAME }, - { "sanity_check", &iflags.sanity_check, FALSE, SET_IN_GAME }, + { "sanity_check", &iflags.sanity_check, FALSE, SET_IN_WIZGAME }, { "selectsaved", &iflags.wc2_selectsaved, TRUE, DISP_IN_GAME }, /*WC*/ { "showexp", &flags.showexp, FALSE, SET_IN_GAME }, { "showrace", &flags.showrace, FALSE, SET_IN_GAME }, @@ -220,6 +220,7 @@ static struct Bool_Opt { { "use_inverse", &iflags.wc_inverse, FALSE, SET_IN_GAME }, /*WC*/ #endif { "verbose", &flags.verbose, TRUE, SET_IN_GAME }, + { "wizweight", &iflags.wizweight, FALSE, SET_IN_WIZGAME }, { "wraptext", &iflags.wc2_wraptext, FALSE, SET_IN_GAME }, #ifdef ZEROCOMP { "zerocomp", &iflags.zerocomp, @@ -3554,12 +3555,11 @@ doset() for (i = 0; boolopt[i].name; i++) if ((bool_p = boolopt[i].addr) != 0 && ((boolopt[i].optflags == DISP_IN_GAME && pass == 0) - || (boolopt[i].optflags == SET_IN_GAME && pass == 1))) { + || (boolopt[i].optflags == SET_IN_GAME && pass == 1) + || (boolopt[i].optflags == SET_IN_WIZGAME && pass == 1 && wizard))) { if (bool_p == &flags.female) continue; /* obsolete */ - if (bool_p == &iflags.sanity_check && !wizard) - continue; - if (bool_p == &iflags.menu_tab_sep && !wizard) + if (boolopt[i].optflags == SET_IN_WIZGAME && !wizard) continue; if (is_wc_option(boolopt[i].name) && !wc_supported(boolopt[i].name)) @@ -3595,7 +3595,7 @@ doset() else #endif startpass = DISP_IN_GAME; - endpass = SET_IN_GAME; + endpass = (wizard) ? SET_IN_WIZGAME : SET_IN_GAME; /* spin through the options to find the biggest name and adjust the format string accordingly if needed */ diff --git a/sys/share/pcmain.c b/sys/share/pcmain.c index b8cad7718..a42c49233 100644 --- a/sys/share/pcmain.c +++ b/sys/share/pcmain.c @@ -1,4 +1,4 @@ -/* NetHack 3.6 pcmain.c $NHDT-Date: 1449893255 2015/12/12 04:07:35 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.67 $ */ +/* NetHack 3.6 pcmain.c $NHDT-Date: 1451697809 2016/01/02 01:23:29 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.68 $ */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ @@ -178,7 +178,33 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/ if (dir == (char *) 0) dir = exepath(argv[0]); #endif - if (dir != (char *) 0) { +#ifdef _MSC_VER + if (IsDebuggerPresent()) { + static char exepath[_MAX_PATH]; + /* check if we're running under the debugger so we can get to the right folder anyway */ + if (dir != (char *)0) { + char *top = (char *)0; + + if (strlen(dir) < (_MAX_PATH - 1)) + strcpy(exepath, dir); + top = strstr(exepath, "\\build\\.\\Debug"); + if (!top) top = strstr(exepath, "\\build\\.\\Release"); + if (top) { + *top = '\0'; + if (strlen(exepath) < (_MAX_PATH - (strlen("\\binary\\") + 1))) { + Strcat(exepath, "\\binary\\"); + if (strlen(exepath) < (PATHLEN - 1)) { + dir = exepath; + } + } + } + } + } +#endif + if (dir != (char *)0) { + int fd; + boolean have_syscf = FALSE; + (void) strncpy(hackdir, dir, PATHLEN - 1); hackdir[PATHLEN - 1] = '\0'; #ifdef NOCWD_ASSUMPTIONS @@ -206,6 +232,34 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/ } } + /* okay so we have the overriding and definitive locaton + for sysconf, but only in the event that there is not a + sysconf file there (for whatever reason), check a secondary + location rather than abort. */ + + /* Is there a SYSCF_FILE there? */ + fd = open(fqname(SYSCF_FILE, SYSCONFPREFIX, 0), O_RDONLY); + if (fd >= 0) { + /* readable */ + close(fd); + have_syscf = TRUE; + } + + if (!have_syscf) { + /* No SYSCF_FILE where there should be one, and + without an installer, a user may not be able + to place one there. So, let's try somewhere else... */ + fqn_prefix[SYSCONFPREFIX] = fqn_prefix[0]; + + /* Is there a SYSCF_FILE there? */ + fd = open(fqname(SYSCF_FILE, SYSCONFPREFIX, 0), O_RDONLY); + if (fd >= 0) { + /* readable */ + close(fd); + have_syscf = TRUE; + } + } + /* user's home directory should default to this - unless * overridden */ envp = nh_getenv("USERPROFILE"); diff --git a/sys/winnt/Makefile.msc b/sys/winnt/Makefile.msc index bdfe748e2..380019228 100644 --- a/sys/winnt/Makefile.msc +++ b/sys/winnt/Makefile.msc @@ -806,14 +806,6 @@ $(INCL)\vis_tab.h: $(U)makedefs.exe $(SRC)\vis_tab.c: $(U)makedefs.exe $(U)makedefs -z -$(DAT)\engrave: $(DAT)\engrave.txt $(U)makedefs.exe - ..\util\makedefs -s -$(DAT)\epitaph: $(DAT)\epitaph.txt $(U)makedefs.exe - ..\util\makedefs -s -$(DAT)\bogusmon: $(DAT)\bogusmon.txt $(U)makedefs.exe - ..\util\makedefs -s - - #========================================== # uudecode utility and uuencoded targets #========================================== @@ -1269,6 +1261,15 @@ $(DAT)\quest.dat: $(O)utility.tag $(DAT)\quest.txt $(DAT)\oracles: $(O)utility.tag $(DAT)\oracles.txt $(U)makedefs -h +$(DAT)\engrave: $(DAT)\engrave.txt $(U)makedefs.exe + $(U)makedefs -s + +$(DAT)\epitaph: $(DAT)\epitaph.txt $(U)makedefs.exe + $(U)makedefs -s + +$(DAT)\bogusmon: $(DAT)\bogusmon.txt $(U)makedefs.exe + $(U)makedefs -s + $(DAT)\dungeon: $(O)utility.tag $(DAT)\dungeon.def $(U)makedefs -e cd $(DAT) diff --git a/win/X11/winmisc.c b/win/X11/winmisc.c index 06eaaaa92..78e1b73b9 100644 --- a/win/X11/winmisc.c +++ b/win/X11/winmisc.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include /* for index() */ #include @@ -50,6 +51,10 @@ static char ec_chars[EC_NCHARS]; static Time ec_time; static const char extended_command_translations[] = "#override\n\ + Left: scroll(4)\n\ + Right: scroll(6)\n\ + Up: scroll(8)\n\ + Down: scroll(2)\n\ : ec_key()"; static const char player_select_translations[] = "#override\n\ @@ -844,7 +849,7 @@ Widget **command_widgets; XtCallbackProc name_callback; Widget *formp; /* return */ { - Widget popup, form, label, above, left, right; + Widget popup, form, label, above, left, right, view; Widget *commands, *curr; int i; Arg args[8]; @@ -863,18 +868,24 @@ Widget *formp; /* return */ XtOverrideTranslations( popup, XtParseTranslationTable("WM_PROTOCOLS: ec_delete()")); + num_args = 0; + XtSetArg(args[num_args], XtNforceBars, False); num_args++; + XtSetArg(args[num_args], XtNallowVert, True); num_args++; + view = XtCreateManagedWidget("menuformview", viewportWidgetClass, popup, + args, num_args); + num_args = 0; XtSetArg(args[num_args], XtNtranslations, XtParseTranslationTable(popup_translations)); num_args++; - *formp = form = XtCreateManagedWidget("menuform", formWidgetClass, popup, + *formp = form = XtCreateManagedWidget("menuform", formWidgetClass, view, args, num_args); /* Get the default distance between objects in the form widget. */ num_args = 0; XtSetArg(args[num_args], nhStr(XtNdefaultDistance), &distance); num_args++; - XtGetValues(form, args, num_args); + XtGetValues(view, args, num_args); /* * Create the label. diff --git a/win/win32/record.uu b/win/win32/record.uu new file mode 100644 index 000000000..e51783198 --- /dev/null +++ b/win/win32/record.uu @@ -0,0 +1,3 @@ +begin 600 record. +` +end diff --git a/win/win32/vs2013/NetHack.vcxproj b/win/win32/vs2013/NetHack.vcxproj index 3721b37e8..52cbc16d2 100644 --- a/win/win32/vs2013/NetHack.vcxproj +++ b/win/win32/vs2013/NetHack.vcxproj @@ -135,11 +135,11 @@ copy $(OutDir)NetHack.exe ..\binary copy ..\dat\nhdat ..\binary copy ..\dat\license ..\binary - if exist tiles.bmp copy tiles.bmp ..\binary if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh + if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -192,11 +192,11 @@ copy $(OutDir)NetHack.exe ..\binary copy ..\dat\nhdat ..\binary copy ..\dat\license ..\binary - if exist tiles.bmp copy tiles.bmp ..\binary if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh + if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -242,11 +242,11 @@ copy ..\dat\nhdat ..\binary copy ..\dat\license ..\binary copy ..\dat\symbols ..\binary - if exist tiles.bmp copy tiles.bmp ..\binary if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh + if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -292,11 +292,11 @@ copy ..\dat\nhdat ..\binary copy ..\dat\license ..\binary copy ..\dat\symbols ..\binary - if exist tiles.bmp copy tiles.bmp ..\binary if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh + if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -489,4 +489,4 @@ - \ No newline at end of file + diff --git a/win/win32/vs2013/NetHackW.vcxproj b/win/win32/vs2013/NetHackW.vcxproj index 7cded704a..2f4892112 100644 --- a/win/win32/vs2013/NetHackW.vcxproj +++ b/win/win32/vs2013/NetHackW.vcxproj @@ -138,10 +138,12 @@ copy $(OutDir)NetHackW.exe ..\binary copy ..\dat\nhdat ..\binary copy ..\dat\license ..\binary +copy ..\dat\symbols ..\binary if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh +if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -199,10 +201,12 @@ copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh copy $(OutDir)NetHackW.exe ..\binary copy ..\dat\nhdat ..\binary copy ..\dat\license ..\binary +copy ..\dat\symbols ..\binary if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh +if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -264,6 +268,7 @@ if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh +if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -322,6 +327,7 @@ if NOT exist ..\binary\sysconf copy ..\sys\winnt\sysconf ..\binary\sysconf if exist ..\doc\Guidebook.txt copy ..\doc\Guidebook.txt ..\binary\Guidebook.txt if exist ..\doc\nethack.txt copy ..\doc\nethack.txt ..\binary\NetHack.txt copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh +if NOT exist ..\binary\record copy ..\win\win32\record ..\binary\record @@ -505,4 +511,4 @@ copy ..\sys\winnt\defaults.nh ..\binary\defaults.nh - \ No newline at end of file + diff --git a/win/win32/vs2013/dlb_main.vcxproj b/win/win32/vs2013/dlb_main.vcxproj index 3d52cae32..71f21070b 100644 --- a/win/win32/vs2013/dlb_main.vcxproj +++ b/win/win32/vs2013/dlb_main.vcxproj @@ -135,6 +135,9 @@ if NOT exist porthelp copy ..\sys\winnt\porthelp porthelp if exist porthelp echo porthelp >>dlb.lst echo quest.dat >>dlb.lst echo rumors >>dlb.lst +echo engrave >>dlb.lst +echo epitaph >>dlb.lst +echo bogusmon >>dlb.lst echo tribute >>dlb.lst echo help >>dlb.lst echo hh >>dlb.lst @@ -206,6 +209,9 @@ if NOT exist porthelp copy ..\sys\winnt\porthelp porthelp if exist porthelp echo porthelp >>dlb.lst echo quest.dat >>dlb.lst echo rumors >>dlb.lst +echo engrave >>dlb.lst +echo epitaph >>dlb.lst +echo bogusmon >>dlb.lst echo tribute >>dlb.lst echo help >>dlb.lst echo hh >>dlb.lst @@ -280,6 +286,9 @@ if NOT exist porthelp copy ..\sys\winnt\porthelp porthelp if exist porthelp echo porthelp >>dlb.lst echo quest.dat >>dlb.lst echo rumors >>dlb.lst +echo engrave >>dlb.lst +echo epitaph >>dlb.lst +echo bogusmon >>dlb.lst echo tribute >>dlb.lst echo help >>dlb.lst echo hh >>dlb.lst @@ -352,6 +361,9 @@ if NOT exist porthelp copy ..\sys\winnt\porthelp porthelp if exist porthelp echo porthelp >>dlb.lst echo quest.dat >>dlb.lst echo rumors >>dlb.lst +echo engrave >>dlb.lst +echo epitaph >>dlb.lst +echo bogusmon >>dlb.lst echo tribute >>dlb.lst echo help >>dlb.lst echo hh >>dlb.lst @@ -432,4 +444,4 @@ if NOT exist ..\binary\*.* mkdir ..\binary - \ No newline at end of file + diff --git a/win/win32/vs2013/makedefs.vcxproj b/win/win32/vs2013/makedefs.vcxproj index b977ec5f8..253ded65f 100644 --- a/win/win32/vs2013/makedefs.vcxproj +++ b/win/win32/vs2013/makedefs.vcxproj @@ -123,40 +123,43 @@ Running makedefs - echo chdir ..\util -chdir ..\util -chdir -echo makedefs.exe -v -makedefs.exe -v -echo makedefs.exe -o -makedefs.exe -o -echo makedefs.exe -p -makedefs.exe -p -echo makedefs.exe -m -makedefs.exe -m -echo makedefs.exe -z -makedefs.exe -z -echo chdir ..\dat -chdir ..\dat -chdir -echo Generating NetHack database -echo ..\util\makedefs.exe -d -..\util\makedefs.exe -d -echo Generating rumors -echo ..\util\makedefs.exe -r -..\util\makedefs.exe -r -echo Generating quests -echo ..\util\makedefs.exe -q -..\util\makedefs.exe -q -echo Generating oracles -echo ..\util\makedefs.exe -h -..\util\makedefs.exe -h -echo Generating dungeon.pdf -echo ..\util\makedefs.exe -e -..\util\makedefs.exe -e -echo chdir ..\build -chdir ..\build -copy ..\win\share\tilemap.c ..\win\share\tiletxt.c + echo chdir ..\util +chdir ..\util +chdir +echo makedefs.exe -v +makedefs.exe -v +echo makedefs.exe -o +makedefs.exe -o +echo makedefs.exe -p +makedefs.exe -p +echo makedefs.exe -m +makedefs.exe -m +echo makedefs.exe -z +makedefs.exe -z +echo chdir ..\dat +chdir ..\dat +chdir +echo Generating NetHack database +echo ..\util\makedefs.exe -d +..\util\makedefs.exe -d +echo Generating rumors +echo ..\util\makedefs.exe -r +..\util\makedefs.exe -r +echo Generating ..\dat\engrave, ..\dat\epitaph, ..\dat\bogusmon +echo ..\util\makedefs.exe -s +..\util\makedefs.exe -s +echo Generating quests +echo ..\util\makedefs.exe -q +..\util\makedefs.exe -q +echo Generating oracles +echo ..\util\makedefs.exe -h +..\util\makedefs.exe -h +echo Generating dungeon.pdf +echo ..\util\makedefs.exe -e +..\util\makedefs.exe -e +echo chdir ..\build +chdir ..\build +copy ..\win\share\tilemap.c ..\win\share\tiletxt.c @@ -201,40 +204,43 @@ copy ..\win\share\tilemap.c ..\win\share\tiletxt.c Running makedefs - echo chdir ..\util -chdir ..\util -chdir -echo makedefs.exe -v -makedefs.exe -v -echo makedefs.exe -o -makedefs.exe -o -echo makedefs.exe -p -makedefs.exe -p -echo makedefs.exe -m -makedefs.exe -m -echo makedefs.exe -z -makedefs.exe -z -echo chdir ..\dat -chdir ..\dat -chdir -echo Generating NetHack database -echo ..\util\makedefs.exe -d -..\util\makedefs.exe -d -echo Generating rumors -echo ..\util\makedefs.exe -r -..\util\makedefs.exe -r -echo Generating quests -echo ..\util\makedefs.exe -q -..\util\makedefs.exe -q -echo Generating oracles -echo ..\util\makedefs.exe -h -..\util\makedefs.exe -h -echo Generating dungeon.pdf -echo ..\util\makedefs.exe -e -..\util\makedefs.exe -e -echo chdir ..\build -chdir ..\build -copy ..\win\share\tilemap.c ..\win\share\tiletxt.c + echo chdir ..\util +chdir ..\util +chdir +echo makedefs.exe -v +makedefs.exe -v +echo makedefs.exe -o +makedefs.exe -o +echo makedefs.exe -p +makedefs.exe -p +echo makedefs.exe -m +makedefs.exe -m +echo makedefs.exe -z +makedefs.exe -z +echo chdir ..\dat +chdir ..\dat +chdir +echo Generating NetHack database +echo ..\util\makedefs.exe -d +..\util\makedefs.exe -d +echo Generating rumors +echo ..\util\makedefs.exe -r +..\util\makedefs.exe -r +echo Generating ..\dat\engrave, ..\dat\epitaph, ..\dat\bogusmon +echo ..\util\makedefs.exe -s +..\util\makedefs.exe -s +echo Generating quests +echo ..\util\makedefs.exe -q +..\util\makedefs.exe -q +echo Generating oracles +echo ..\util\makedefs.exe -h +..\util\makedefs.exe -h +echo Generating dungeon.pdf +echo ..\util\makedefs.exe -e +..\util\makedefs.exe -e +echo chdir ..\build +chdir ..\build +copy ..\win\share\tilemap.c ..\win\share\tiletxt.c @@ -282,40 +288,43 @@ copy ..\win\share\tilemap.c ..\win\share\tiletxt.c Running makedefs - echo chdir ..\util -chdir ..\util -chdir -echo makedefs.exe -v -makedefs.exe -v -echo makedefs.exe -o -makedefs.exe -o -echo makedefs.exe -p -makedefs.exe -p -echo makedefs.exe -m -makedefs.exe -m -echo makedefs.exe -z -makedefs.exe -z -echo chdir ..\dat -chdir ..\dat -chdir -echo Generating NetHack database -echo ..\util\makedefs.exe -d -..\util\makedefs.exe -d -echo Generating rumors -echo ..\util\makedefs.exe -r -..\util\makedefs.exe -r -echo Generating quests -echo ..\util\makedefs.exe -q -..\util\makedefs.exe -q -echo Generating oracles -echo ..\util\makedefs.exe -h -..\util\makedefs.exe -h -echo Generating dungeon.pdf -echo ..\util\makedefs.exe -e -..\util\makedefs.exe -e -echo chdir ..\build -chdir ..\build -copy ..\win\share\tilemap.c ..\win\share\tiletxt.c + echo chdir ..\util +chdir ..\util +chdir +echo makedefs.exe -v +makedefs.exe -v +echo makedefs.exe -o +makedefs.exe -o +echo makedefs.exe -p +makedefs.exe -p +echo makedefs.exe -m +makedefs.exe -m +echo makedefs.exe -z +makedefs.exe -z +echo chdir ..\dat +chdir ..\dat +chdir +echo Generating NetHack database +echo ..\util\makedefs.exe -d +..\util\makedefs.exe -d +echo Generating rumors +echo ..\util\makedefs.exe -r +..\util\makedefs.exe -r +echo Generating ..\dat\engrave, ..\dat\epitaph, ..\dat\bogusmon +echo ..\util\makedefs.exe -s +..\util\makedefs.exe -s +echo Generating quests +echo ..\util\makedefs.exe -q +..\util\makedefs.exe -q +echo Generating oracles +echo ..\util\makedefs.exe -h +..\util\makedefs.exe -h +echo Generating dungeon.pdf +echo ..\util\makedefs.exe -e +..\util\makedefs.exe -e +echo chdir ..\build +chdir ..\build +copy ..\win\share\tilemap.c ..\win\share\tiletxt.c @@ -361,40 +370,43 @@ copy ..\win\share\tilemap.c ..\win\share\tiletxt.c Running makedefs - echo chdir ..\util -chdir ..\util -chdir -echo makedefs.exe -v -makedefs.exe -v -echo makedefs.exe -o -makedefs.exe -o -echo makedefs.exe -p -makedefs.exe -p -echo makedefs.exe -m -makedefs.exe -m -echo makedefs.exe -z -makedefs.exe -z -echo chdir ..\dat -chdir ..\dat -chdir -echo Generating NetHack database -echo ..\util\makedefs.exe -d -..\util\makedefs.exe -d -echo Generating rumors -echo ..\util\makedefs.exe -r -..\util\makedefs.exe -r -echo Generating quests -echo ..\util\makedefs.exe -q -..\util\makedefs.exe -q -echo Generating oracles -echo ..\util\makedefs.exe -h -..\util\makedefs.exe -h -echo Generating dungeon.pdf -echo ..\util\makedefs.exe -e -..\util\makedefs.exe -e -echo chdir ..\build -chdir ..\build -copy ..\win\share\tilemap.c ..\win\share\tiletxt.c + echo chdir ..\util +chdir ..\util +chdir +echo makedefs.exe -v +makedefs.exe -v +echo makedefs.exe -o +makedefs.exe -o +echo makedefs.exe -p +makedefs.exe -p +echo makedefs.exe -m +makedefs.exe -m +echo makedefs.exe -z +makedefs.exe -z +echo chdir ..\dat +chdir ..\dat +chdir +echo Generating NetHack database +echo ..\util\makedefs.exe -d +..\util\makedefs.exe -d +echo Generating rumors +echo ..\util\makedefs.exe -r +..\util\makedefs.exe -r +echo Generating ..\dat\engrave, ..\dat\epitaph, ..\dat\bogusmon +echo ..\util\makedefs.exe -s +..\util\makedefs.exe -s +echo Generating quests +echo ..\util\makedefs.exe -q +..\util\makedefs.exe -q +echo Generating oracles +echo ..\util\makedefs.exe -h +..\util\makedefs.exe -h +echo Generating dungeon.pdf +echo ..\util\makedefs.exe -e +..\util\makedefs.exe -e +echo chdir ..\build +chdir ..\build +copy ..\win\share\tilemap.c ..\win\share\tiletxt.c @@ -449,4 +461,4 @@ copy ..\win\share\tilemap.c ..\win\share\tiletxt.c - \ No newline at end of file + diff --git a/win/win32/vs2013/uudecode.vcxproj b/win/win32/vs2013/uudecode.vcxproj index 4139753d8..c6dc61e4f 100644 --- a/win/win32/vs2013/uudecode.vcxproj +++ b/win/win32/vs2013/uudecode.vcxproj @@ -139,6 +139,8 @@ echo decoding splash (splash.uu to splash.bmp) ..\..\util\uudecode.exe splash.uu echo decoding tombstone (rip.uu to rip.bmp) ..\..\util\uudecode.exe rip.uu +echo decoding record (record.uu to record.) +..\..\util\uudecode.exe record.uu chdir ..\..\binary @@ -200,6 +202,8 @@ echo decoding splash (splash.uu to splash.bmp) ..\..\util\uudecode.exe splash.uu echo decoding tombstone (rip.uu to rip.bmp) ..\..\util\uudecode.exe rip.uu +echo decoding record (record.uu to record.) +..\..\util\uudecode.exe record.uu chdir ..\..\binary @@ -264,6 +268,8 @@ echo decoding splash (splash.uu to splash.bmp) ..\..\util\uudecode.exe splash.uu echo decoding tombstone (rip.uu to rip.bmp) ..\..\util\uudecode.exe rip.uu +echo decoding record (record.uu to record.) +..\..\util\uudecode.exe record.uu chdir ..\..\binary @@ -326,6 +332,8 @@ echo decoding splash (splash.uu to splash.bmp) ..\..\util\uudecode.exe splash.uu echo decoding tombstone (rip.uu to rip.bmp) ..\..\util\uudecode.exe rip.uu +echo decoding record (record.uu to record.) +..\..\util\uudecode.exe record.uu chdir ..\..\binary