Merge branch 'NetHack-3.7' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.7
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
# NetHack 3.6 data.base
|
||||
# $NHDT-Date: 1545359287 2018/12/21 02:28:07 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.87 $
|
||||
# $NHDT-Date: 1581206724 2020/02/09 00:05:24 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.93 $
|
||||
# Copyright (c) 1994, 1995, 1996 by the NetHack Development Team
|
||||
# Copyright (c) 1994 by Boudewijn Wayers
|
||||
# NetHack may be freely redistributed. See license for details.
|
||||
@@ -5539,6 +5539,15 @@ whistle
|
||||
flat on his back upon a cold stone with his hands on his
|
||||
breast.
|
||||
[ The Fellowship of the Ring, by J.R.R. Tolkien ]
|
||||
win
|
||||
winner
|
||||
winning
|
||||
... the rules of Brockian Ultra Cricket, as played in the higher
|
||||
dimensions. A full set of rules is so massively complicated ...
|
||||
A brief summary, however, follows:
|
||||
...
|
||||
/Rule Six/: The winning team shall be the first team that wins.
|
||||
[ Life, the Universe and Everything, by Douglas Adams ]
|
||||
# note: need to convert player character "gnomish wizard" into just "wizard"
|
||||
# in the lookup code to avoid conflict with the monster of that same name
|
||||
~gnomish wizard
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# NetHack 3.6 engrave.txt $NHDT-Date: 1524689579 2018/04/25 20:52:59 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.2 $
|
||||
# NetHack 3.6 engrave.txt $NHDT-Date: 1581206725 2020/02/09 00:05:25 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.4 $
|
||||
# Copyright (c) 2015 by Pasi Kallinen
|
||||
# NetHack may be freely redistributed. See license for details.
|
||||
# Random engravings on the floor
|
||||
@@ -23,7 +23,8 @@ You won't get it up the steps
|
||||
Lasciate ogni speranza o voi ch'entrate.
|
||||
# Prisoner
|
||||
Well Come
|
||||
# So Long...
|
||||
# God's Final Message to His Creation (from "So Long, and Thanks for All
|
||||
# the Fish" by Douglas Adams):
|
||||
We apologize for the inconvenience.
|
||||
# Thriller
|
||||
See you next Wednesday
|
||||
|
||||
54
src/mhitm.c
54
src/mhitm.c
@@ -22,6 +22,7 @@ static int FDECL(mdamagem, (struct monst *, struct monst *,
|
||||
static void FDECL(mswingsm, (struct monst *, struct monst *,
|
||||
struct obj *));
|
||||
static void FDECL(noises, (struct monst *, struct attack *));
|
||||
static void FDECL(pre_mm_attack, (struct monst *, struct monst *));
|
||||
static void FDECL(missmm, (struct monst *, struct monst *,
|
||||
struct attack *));
|
||||
static int FDECL(passivemm, (struct monst *, struct monst *,
|
||||
@@ -44,14 +45,10 @@ register struct attack *mattk;
|
||||
}
|
||||
}
|
||||
|
||||
static
|
||||
void
|
||||
missmm(magr, mdef, mattk)
|
||||
register struct monst *magr, *mdef;
|
||||
struct attack *mattk;
|
||||
static void
|
||||
pre_mm_attack(magr, mdef)
|
||||
struct monst *magr, *mdef;
|
||||
{
|
||||
const char *fmt;
|
||||
char buf[BUFSZ];
|
||||
boolean showit = FALSE;
|
||||
|
||||
/* unhiding or unmimicking happens even if hero can't see it
|
||||
@@ -80,7 +77,21 @@ struct attack *mattk;
|
||||
map_invisible(mdef->mx, mdef->my);
|
||||
else if (showit)
|
||||
newsym(mdef->mx, mdef->my);
|
||||
}
|
||||
}
|
||||
|
||||
static
|
||||
void
|
||||
missmm(magr, mdef, mattk)
|
||||
register struct monst *magr, *mdef;
|
||||
struct attack *mattk;
|
||||
{
|
||||
const char *fmt;
|
||||
char buf[BUFSZ];
|
||||
|
||||
pre_mm_attack(magr, mdef);
|
||||
|
||||
if (g.vis) {
|
||||
fmt = (could_seduce(magr, mdef, mattk) && !magr->mcan)
|
||||
? "%s pretends to be friendly to"
|
||||
: "%s misses";
|
||||
@@ -530,39 +541,14 @@ struct attack *mattk;
|
||||
boolean weaponhit = ((mattk->aatyp == AT_WEAP
|
||||
|| (mattk->aatyp == AT_CLAW && g.otmp))),
|
||||
silverhit = (weaponhit && g.otmp
|
||||
&& objects[g.otmp->otyp].oc_material == SILVER),
|
||||
showit = FALSE;
|
||||
&& objects[g.otmp->otyp].oc_material == SILVER);
|
||||
|
||||
/* unhiding or unmimicking happens even if hero can't see it
|
||||
because the formerly concealed monster is now in action */
|
||||
if (M_AP_TYPE(mdef)) {
|
||||
seemimic(mdef);
|
||||
showit |= g.vis;
|
||||
} else if (mdef->mundetected) {
|
||||
mdef->mundetected = 0;
|
||||
showit |= g.vis;
|
||||
}
|
||||
if (M_AP_TYPE(magr)) {
|
||||
seemimic(magr);
|
||||
showit |= g.vis;
|
||||
} else if (magr->mundetected) {
|
||||
magr->mundetected = 0;
|
||||
showit |= g.vis;
|
||||
}
|
||||
pre_mm_attack(magr, mdef);
|
||||
|
||||
if (g.vis) {
|
||||
int compat;
|
||||
char buf[BUFSZ];
|
||||
|
||||
if (!canspotmon(magr))
|
||||
map_invisible(magr->mx, magr->my);
|
||||
else if (showit)
|
||||
newsym(magr->mx, magr->my);
|
||||
if (!canspotmon(mdef))
|
||||
map_invisible(mdef->mx, mdef->my);
|
||||
else if (showit)
|
||||
newsym(mdef->mx, mdef->my);
|
||||
|
||||
if ((compat = could_seduce(magr, mdef, mattk)) && !magr->mcan) {
|
||||
Sprintf(buf, "%s %s", Monnam(magr),
|
||||
mdef->mcansee ? "smiles at" : "talks to");
|
||||
|
||||
Reference in New Issue
Block a user