Merge commit 'd60097b2868d1f7403ddaa10d48d3be59bc7c1bb' into NetHack-3.6.2

This commit is contained in:
nhmall
2018-11-23 20:31:18 -05:00
11 changed files with 130 additions and 18 deletions
+52
View File
@@ -0,0 +1,52 @@
language: c
script: "cd sys/unix/ && sh setup.sh hints/$HINTS && cd ../../ && QT_SELECT=5 make MOC=moc install"
matrix:
include:
- env: HINTS=linux
compiler: gcc
- env: HINTS=linux
compiler: clang
- env: HINTS=linux-x11
compiler: gcc
- env: HINTS=linux-qt5
compiler: gcc
addons:
apt:
packages:
- qtbase5-dev
- qtmultimedia5-dev
- qtbase5-dev-tools
- env: HINTS=linux-minimal
compiler: gcc
script: |
cd sys/unix/ && sh setup.sh hints/$HINTS && cd ../../
sed -i '/^#define CLIPPING/d' include/config.h
sed -i '/^#define COMPRESS/d' include/config.h
#sed -i '/^#define DOAGAIN/d' include/config.h
sed -i '/^#define DUMPLOG/d' include/config.h
#sed -i '/^#define GDBPATH/d' include/config.h
#sed -i '/^#define GREPPATH/d' include/config.h
sed -i '/^#define INSURANCE/d' include/config.h
sed -i '/^#define LOGFILE/d' include/config.h
sed -i '/^#define NEWS/d' include/config.h
sed -i '/^#define PANICLOG/d' include/config.h
#sed -i '/^#define STATUS_HILITES/d' include/config.h
sed -i '/^#define SYSCF/d' include/config.h
sed -i '/^#define USER_SOUNDS/d' include/config.h
sed -i '/^#define XLOGFILE/d' include/config.h
sed -i '/^#define MAIL/d' include/unixconf.h
sed -i '/^#define SHELL/d' include/unixconf.h
sed -i '/^#define SUSPEND/d' include/unixconf.h
sed -i 's/^#define TEXTCOLOR//' include/unixconf.h
make install
cat dat/options
sudo: false
notifications:
email:
recipients:
- devteam@nethack.org
+2
View File
@@ -207,6 +207,8 @@ if a migrating monster was killed off because there was no room on the
which should never leave one (demon, golem, blob, &c) which should never leave one (demon, golem, blob, &c)
end of game while carrying Schroedinger's Box would reveal cat-or-corpse end of game while carrying Schroedinger's Box would reveal cat-or-corpse
for inventory disclosure or put that info into dumplog, but not both for inventory disclosure or put that info into dumplog, but not both
attempting to untrap an adjacent trap while on the edge of--not in--a pit
failed due to not being able to reach the floor
Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository
+4
View File
@@ -522,6 +522,10 @@ typedef unsigned char uchar;
but it isn't necessary for successful operation of the program */ but it isn't necessary for successful operation of the program */
#define FREE_ALL_MEMORY /* free all memory at exit */ #define FREE_ALL_MEMORY /* free all memory at exit */
/* EXTRA_SANITY_CHECKS adds extra impossible calls,
* probably not useful for normal play */
/* #define EXTRA_SANITY_CHECKS */
/* EDIT_GETLIN makes the string input in TTY, Qt4, and X11 /* EDIT_GETLIN makes the string input in TTY, Qt4, and X11
so some prompts will remember the previously input text so some prompts will remember the previously input text
(within the same session) */ (within the same session) */
+1 -1
View File
@@ -630,7 +630,7 @@ extern dlevel_t level; /* structure describing the current level */
#define MON_BURIED_AT(x, y) \ #define MON_BURIED_AT(x, y) \
(level.monsters[x][y] != (struct monst *) 0 \ (level.monsters[x][y] != (struct monst *) 0 \
&& (level.monsters[x][y])->mburied) && (level.monsters[x][y])->mburied)
#if EXTRA_SANITY_CHECKS #ifdef EXTRA_SANITY_CHECKS
#define place_worm_seg(m, x, y) do { \ #define place_worm_seg(m, x, y) do { \
if (level.monsters[x][y] && level.monsters[x][y] != m) impossible("place_worm_seg over mon"); \ if (level.monsters[x][y] && level.monsters[x][y] != m) impossible("place_worm_seg over mon"); \
level.monsters[x][y] = m; \ level.monsters[x][y] = m; \
+10 -5
View File
@@ -1,4 +1,4 @@
/* NetHack 3.6 detect.c $NHDT-Date: 1522891623 2018/04/05 01:27:03 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.81 $ */ /* NetHack 3.6 detect.c $NHDT-Date: 1542853884 2018/11/22 02:31:24 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.87 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2018. */ /*-Copyright (c) Robert Patrick Rankin, 2018. */
/* NetHack may be freely redistributed. See license for details. */ /* NetHack may be freely redistributed. See license for details. */
@@ -165,8 +165,14 @@ char oclass;
if (obj->oclass == oclass) if (obj->oclass == oclass)
return obj; return obj;
/*
if (Has_contents(obj)) { * Note: we exclude SchroedingersBox because the corpse it contains
* isn't necessarily a corpse yet. Resolving the status would lead
* to complications if it turns out to be a live cat. We know that
* that Box can't contain anything else because putting something in
* would resolve the cat/corpse situation and convert to ordinary box.
*/
if (Has_contents(obj) && !SchroedingersBox(obj)) {
for (otmp = obj->cobj; otmp; otmp = otmp->nobj) for (otmp = obj->cobj; otmp; otmp = otmp->nobj)
if (otmp->oclass == oclass) if (otmp->oclass == oclass)
return otmp; return otmp;
@@ -442,8 +448,7 @@ outgoldmap:
return 0; return 0;
} }
/* returns 1 if nothing was detected */ /* returns 1 if nothing was detected, 0 if something was detected */
/* returns 0 if something was detected */
int int
food_detect(sobj) food_detect(sobj)
register struct obj *sobj; register struct obj *sobj;
+7 -4
View File
@@ -1,4 +1,4 @@
/* NetHack 3.6 shk.c $NHDT-Date: 1515144230 2018/01/05 09:23:50 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.136 $ */ /* NetHack 3.6 shk.c $NHDT-Date: 1542853899 2018/11/22 02:31:39 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.142 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2012. */ /*-Copyright (c) Robert Patrick Rankin, 2012. */
/* NetHack may be freely redistributed. See license for details. */ /* NetHack may be freely redistributed. See license for details. */
@@ -2400,6 +2400,8 @@ register struct monst *shkp;
{ {
register struct obj *otmp; register struct obj *otmp;
if (SchroedingersBox(obj))
return;
for (otmp = obj->cobj; otmp; otmp = otmp->nobj) { for (otmp = obj->cobj; otmp; otmp = otmp->nobj) {
if (otmp->oclass == COIN_CLASS) if (otmp->oclass == COIN_CLASS)
continue; continue;
@@ -2597,15 +2599,16 @@ char *buf;
static const char *const honored[] = { "good", "honored", "most gracious", static const char *const honored[] = { "good", "honored", "most gracious",
"esteemed", "esteemed",
"most renowned and sacred" }; "most renowned and sacred" };
Strcat(buf, honored[rn2(SIZE(honored) - 1) + u.uevent.udemigod]); Strcat(buf, honored[rn2(SIZE(honored) - 1) + u.uevent.udemigod]);
if (is_vampire(youmonst.data)) if (is_vampire(youmonst.data))
Strcat(buf, (flags.female) ? " dark lady" : " dark lord"); Strcat(buf, (flags.female) ? " dark lady" : " dark lord");
else if (is_elf(youmonst.data)) else if (is_elf(youmonst.data))
Strcat(buf, (flags.female) ? " hiril" : " hir"); Strcat(buf, (flags.female) ? " hiril" : " hir");
else else
Strcat(buf, !is_human(youmonst.data) ? " creature" : (flags.female) Strcat(buf, !is_human(youmonst.data) ? " creature"
? " lady" : (flags.female) ? " lady"
: " sir"); : " sir");
} }
void void
+2 -2
View File
@@ -1,4 +1,4 @@
/* NetHack 3.6 trap.c $NHDT-Date: 1542765365 2018/11/21 01:56:05 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.303 $ */ /* NetHack 3.6 trap.c $NHDT-Date: 1542856572 2018/11/22 03:16:12 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.304 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2013. */ /*-Copyright (c) Robert Patrick Rankin, 2013. */
/* NetHack may be freely redistributed. See license for details. */ /* NetHack may be freely redistributed. See license for details. */
@@ -4038,7 +4038,7 @@ boolean force_failure;
} }
} }
/* untrappable traps are located on the ground. */ /* untrappable traps are located on the ground. */
if (!can_reach_floor(TRUE)) { if (!can_reach_floor(under_u)) {
if (u.usteed && P_SKILL(P_RIDING) < P_BASIC) if (u.usteed && P_SKILL(P_RIDING) < P_BASIC)
rider_cant_reach(); rider_cant_reach();
else else
+2 -2
View File
@@ -585,10 +585,10 @@ gd_mv_monaway(grd, nx,ny)
register struct monst *grd; register struct monst *grd;
int nx,ny; int nx,ny;
{ {
if (MON_AT(nx, ny) && nx != grd->mx && ny != grd->my) { if (MON_AT(nx, ny) && !(nx == grd->mx && ny == grd->my)) {
if (!Deaf) if (!Deaf)
verbalize("Out of my way, scum!"); verbalize("Out of my way, scum!");
if (!rloc(m_at(nx, ny), FALSE) || m_at(nx, ny)) if (!rloc(m_at(nx, ny), FALSE) || MON_AT(nx, ny))
m_into_limbo(m_at(nx, ny)); m_into_limbo(m_at(nx, ny));
} }
} }
+10
View File
@@ -28,6 +28,12 @@ CFLAGS+=-DHACKDIR=\"$(HACKDIR)\"
CFLAGS+=-DDUMPLOG CFLAGS+=-DDUMPLOG
CFLAGS+=-DCONFIG_ERROR_SECURE=FALSE CFLAGS+=-DCONFIG_ERROR_SECURE=FALSE
CFLAGS+=-DCURSES_GRAPHICS CFLAGS+=-DCURSES_GRAPHICS
#CFLAGS+=-DEXTRA_SANITY_CHECKS
#CFLAGS+=-DEDIT_GETLIN
#CFLAGS+=-DSCORE_ON_BOTL
#CFLAGS+=-DMSGHANDLER
#CFLAGS+=-DTTY_TILES_ESCCODES
#CFLAGS+=-DDLB
LINK=$(CC) LINK=$(CC)
# Only needed for GLIBC stack trace: # Only needed for GLIBC stack trace:
@@ -37,6 +43,10 @@ WINSRC = $(WINTTYSRC) $(WINCURSESSRC)
WINOBJ = $(WINTTYOBJ) $(WINCURSESOBJ) WINOBJ = $(WINTTYOBJ) $(WINCURSESOBJ)
WINLIB = $(WINTTYLIB) $(WINCURSESLIB) WINLIB = $(WINTTYLIB) $(WINCURSESLIB)
# if TTY_TILES_ESCCODES
#WINSRC += tile.c
#WINOBJ += tile.o
WINTTYLIB=-lcurses WINTTYLIB=-lcurses
CHOWN=true CHOWN=true
+31
View File
@@ -0,0 +1,31 @@
#
# NetHack 3.6 linux $NHDT-Date: 1432512814 2018/11/23 16:00:00 $ $NHDT-Branch: master $:$NHDT-Revision: 1.12 $
# Copyright (c) Patric Mueller
# NetHack may be freely redistributed. See license for details.
#
#-PRE
# Hints file for a minimal build
# This hints file provides the base for a minimal tty build for Linux
PREFIX=$(wildcard ~)/nethack-minimal
HACKDIR=$(PREFIX)/games/lib/$(GAME)dir
SHELLDIR=$(PREFIX)/games
INSTDIR=$(HACKDIR)
VARDIR=$(HACKDIR)
CFLAGS=-g -I../include
LINK=$(CC)
WINSRC = $(WINTTYSRC)
WINOBJ = $(WINTTYOBJ)
WINLIB = $(WINTTYLIB)
WINTTYLIB=-lcurses
CHOWN=true
CHGRP=true
VARDIRPERM = 0755
VARFILEPERM = 0600
GAMEPERM = 0755
+9 -4
View File
@@ -1,8 +1,8 @@
$ ! vms/vmsbuild.com -- compile and link NetHack 3.6.* [pr] $ ! vms/vmsbuild.com -- compile and link NetHack 3.6.* [pr]
$ version_number = "3.6.2" $ version_number = "3.6.2"
$ ! $NHDT-Date: 1542411224 2018/11/16 23:33:44 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.19 $ $ ! $NHDT-Date: 1542847646 2018/11/22 00:47:26 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.20 $
# Copyright (c) 2018 by Robert Patrick Rankin $ ! Copyright (c) 2018 by Robert Patrick Rankin
# NetHack may be freely redistributed. See license for details. $ ! NetHack may be freely redistributed. See license for details.
$ ! $ !
$ ! usage: $ ! usage:
$ ! $ set default [.src] !or [-.-.src] if starting from [.sys.vms] $ ! $ set default [.src] !or [-.-.src] if starting from [.sys.vms]
@@ -178,8 +178,13 @@ $ nethacklib = "[-.src]nethack.olb"
$ create nethack.opt $ create nethack.opt
! nethack.opt ! nethack.opt
nethack.olb/Include=(vmsmain)/Library nethack.olb/Include=(vmsmain)/Library
! lib$initialize is used to call a routine (before main()) in vmsunix.c that
! tries to check whether debugger support has been linked in, for PANICTRACE
sys$library:starlet.olb/Include=(lib$initialize) sys$library:starlet.olb/Include=(lib$initialize)
psect_attr=lib$initialize, Con,Usr,noPic,Rel,Gbl,noShr,noExe,Rd,noWrt,Long ! psect_attr=lib$initialize, Con,Usr,noPic,Rel,Gbl,noShr,noExe,Rd,noWrt,Long
! IA64 linker doesn't support Usr or Pic and complains that Long is too small
psect_attr=lib$initialize, Con,Rel,Gbl,noShr,noExe,Rd,noWrt
! increase memory available to RMS (the default iosegment is probably adequate)
iosegment=128 iosegment=128
$ if f$search("nethack.opt;-2").nes."" then purge/Keep=2/noLog nethack.opt $ if f$search("nethack.opt;-2").nes."" then purge/Keep=2/noLog nethack.opt
$ milestone = "write sys$output f$fao("" !5%T "",0)," $ milestone = "write sys$output f$fao("" !5%T "",0),"