fix typos

This commit is contained in:
RainRat
2024-02-28 20:15:56 -08:00
parent b53a43027f
commit a3658f85ac
167 changed files with 320 additions and 320 deletions
+2 -2
View File
@@ -479,7 +479,7 @@ Cross-compiler pre-built binary downloads:
CROSS_TO_MSDOS=1 CROSS_TO_MSDOS=1
on your make command line. on your make command line.
Note: Both the fetch-cross-compiler.sh script and and the msdos Note: Both the fetch-cross-compiler.sh script and the msdos
cross-compile and package procedures require unzip and zip to be available cross-compile and package procedures require unzip and zip to be available
on your host build system. on your host build system.
@@ -554,7 +554,7 @@ Cross-compiler url: https://github.com/bebbo/amiga-gcc
make update make update
[Note that you may have to take ownership of the files in the bebbo [Note that you may have to take ownership of the files in the bebbo
repo via chown before succesfully carrying out the next steps] repo via chown before successfully carrying out the next steps]
make clean make clean
make clean-prefix make clean-prefix
+1 -1
View File
@@ -207,7 +207,7 @@ Others are more elaborate:
* This is * This is
* another comment. * another comment.
*/ */
This style is usually used with sentence punctation, particularly if they This style is usually used with sentence punctuation, particularly if they
contain more than one sentence. contain more than one sentence.
End-of-line comments which need to span lines End-of-line comments which need to span lines
+1 -1
View File
@@ -55,7 +55,7 @@ if($ARGV[0] eq "--clean"){
} }
# XXX for now, there isn't any - if we get called, we subst. No options for now. # XXX for now, there isn't any - if we get called, we subst. No options for now.
# get relevent config info # get relevant config info
#XXX #XXX
#git check-attr -a $ARGV[1] #git check-attr -a $ARGV[1]
+1 -1
View File
@@ -306,7 +306,7 @@ nhgitset.pl installs NetHack-specific setup after a C<git clone> (or after
changes to the desired configuration, which are installed by re-running changes to the desired configuration, which are installed by re-running
nhgitset.pl). nhgitset.pl).
The follwing options are available: The following options are available:
B<-f> Force. Do not use this unless the program requests it. B<-f> Force. Do not use this unless the program requests it.
+2 -2
View File
@@ -242,13 +242,13 @@ interpreter during game execution.
There is no longer a build-time level compiler. Instead, the level There is no longer a build-time level compiler. Instead, the level
descriptions have been converted to Lua and are inserted into the game package descriptions have been converted to Lua and are inserted into the game package
for processing by the embeded Lua interpreter during game execution. for processing by the embedded Lua interpreter during game execution.
5.3 Dungeon Compiler 5.3 Dungeon Compiler
There is no longer a build-time dungeon compiler. Instead, the dungeon There is no longer a build-time dungeon compiler. Instead, the dungeon
description has been converted to Lua and is inserted into the game package for description has been converted to Lua and is inserted into the game package for
processing by the embeded Lua interpreter during game execution. processing by the embedded Lua interpreter during game execution.
5.4 Run-time Options 5.4 Run-time Options
+1 -1
View File
@@ -43,7 +43,7 @@ des.map([[
local streets = selection.floodfill(0,12) local streets = selection.floodfill(0,12)
-- The down stairs is at one of the 4 "exits". The others are mimics, -- The down stairs is at one of the 4 "exits". The others are mimics,
-- mimicing stairwells. -- mimicking stairwells.
local place = { {33,0}, {0,12}, {25,20}, {75,05} } local place = { {33,0}, {0,12}, {25,20}, {75,05} }
shuffle(place) shuffle(place)
+2 -2
View File
@@ -21,7 +21,7 @@
# prevents "orc mummy" and "orc zombie" from matching. # prevents "orc mummy" and "orc zombie" from matching.
# #
# A citation of "[]" indicates arbitrary text written by developers or # A citation of "[]" indicates arbitrary text written by developers or
# contributers. Falling off the end of an entry without any citation # contributors. Falling off the end of an entry without any citation
# implies "[]". # implies "[]".
# #
# Some entries include blank lines to separate paragraphs but many don't. # Some entries include blank lines to separate paragraphs but many don't.
@@ -5300,7 +5300,7 @@ statue*
# but players are unlikely to picture anything like that when they find one # but players are unlikely to picture anything like that when they find one
stethoscope stethoscope
Tool used to listen closely to adjacent sound, typically by Tool used to listen closely to adjacent sound, typically by
a medical practioner to listen to a patient's heart, lungs, a medical practitioner to listen to a patient's heart, lungs,
or pulse. or pulse.
# joke suggested by stethoscope; a zillion things could be added but these # joke suggested by stethoscope; a zillion things could be added but these
# ought to suffice # ought to suffice
+1 -1
View File
@@ -55,7 +55,7 @@ if percent(50) then
end end
end end
-- uncontroled arrival (via trap door, level teleport) will be in the central -- uncontrolled arrival (via trap door, level teleport) will be in the central
-- portion of level to prevent ending up stuck in the treasure area, whether -- portion of level to prevent ending up stuck in the treasure area, whether
-- arriving from above or below (despite this being bottom of Mines branch, -- arriving from above or below (despite this being bottom of Mines branch,
-- hero might arrive from below by invoking Wiz role's Eye of the Aethiopica) -- hero might arrive from below by invoking Wiz role's Eye of the Aethiopica)
+2 -2
View File
@@ -902,7 +902,7 @@ with good conscience.
"\"I will impale your head on my caduceus for all to see.\"", "\"I will impale your head on my caduceus for all to see.\"",
"\"There is no materia medica in your sack which will cure you of me!\"", "\"There is no materia medica in your sack which will cure you of me!\"",
"\"Do not fight too hard, I want your soul strong, not weakened!\"", "\"Do not fight too hard, I want your soul strong, not weakened!\"",
"\"You should have stopped studying at vetenary.\"", "\"You should have stopped studying at veterinary.\"",
}, },
encourage = { encourage = {
"\"Remember, %p, to always wash your hands before operating.\"", "\"Remember, %p, to always wash your hands before operating.\"",
@@ -2568,7 +2568,7 @@ the handiwork of %ns henchlings everywhere.]],
%o from me! %o from me!
"It only proves how desperate he has become that he sends %ra to "It only proves how desperate he has become that he sends %ra to
try and defeat me. When this day is over, I will have you enslaved try to defeat me. When this day is over, I will have you enslaved
in the mines where you will rue the day that you ever entered in the mines where you will rue the day that you ever entered
%i."]], %i."]],
}, },
+1 -1
View File
@@ -348,7 +348,7 @@ themerooms = {
}); });
end, end,
-- Random dungeon feature in the middle of a odd-sized room -- Random dungeon feature in the middle of an odd-sized room
function() function()
local wid = 3 + (nh.rn2(3) * 2); local wid = 3 + (nh.rn2(3) * 2);
local hei = 3 + (nh.rn2(3) * 2); local hei = 3 + (nh.rn2(3) * 2);
+6 -6
View File
@@ -1817,7 +1817,7 @@ yards away rather than the innocent bystander at whom it was aimed.
%e passage %e passage
# p. 26 (first and second paragraphs are actually end of one section, # p. 26 (first and second paragraphs are actually end of one section,
# start of next one; first 'Thunder rolled...' had three dot # start of next one; first 'Thunder rolled...' had three dot
# ellipsis, second has four, elipsis plus final period-- # ellipsis, second has four, ellipsis plus final period--
# first changed to four here so that they match) # first changed to four here so that they match)
%passage 3 %passage 3
Thunder rolled.... Thunder rolled....
@@ -4198,7 +4198,7 @@ Cheese with Chunky Pickle, I think."
THEY DO SUCH MARVELOUS THINGS WITH SANDWICHES THESE DAYS. THEY DO SUCH MARVELOUS THINGS WITH SANDWICHES THESE DAYS.
"Oh... and Bacon Surpise." "Oh... and Bacon Surprise."
REALLY? WHAT IS SO SURPRISING ABOUT BACON? REALLY? WHAT IS SO SURPRISING ABOUT BACON?
@@ -5789,7 +5789,7 @@ saw what happened to the others! /You/ got your fingers burned!."
# #
# 4 new passages added for 3.7 # 4 new passages added for 3.7
# #
# p. 24 (elipsis occurs at start of paragraph; Quite Reverend Oats has opened # p. 24 (ellipsis occurs at start of paragraph; Quite Reverend Oats has opened
# /The Book of Om/ at random and is reading the passage found there) # /The Book of Om/ at random and is reading the passage found there)
%passage 9 %passage 9
"... silence is an answer that begs three more questions. Seek and you will "... silence is an answer that begs three more questions. Seek and you will
@@ -6934,7 +6934,7 @@ merely didn't know where everything else was.
[The Amazing Maurice and His Educated Rodents, by Terry Pratchett] [The Amazing Maurice and His Educated Rodents, by Terry Pratchett]
%e passage %e passage
# pp. 298-300 (Keith has challanged the professional rat piper and offered # pp. 298-300 (Keith has challenged the professional rat piper and offered
# to rid the town of rats for a much lower price; Sardines is # to rid the town of rats for a much lower price; Sardines is
# one of the Educated Rodents, known for dancing all the time; # one of the Educated Rodents, known for dancing all the time;
# "hwun/two/three/four/" is run-together "one /two/ three /four/"; # "hwun/two/three/four/" is run-together "one /two/ three /four/";
@@ -7512,7 +7512,7 @@ very thought of written-down things.
"They think written words are even more powerful," whispered the toad. "They think written words are even more powerful," whispered the toad.
"They think all writing is magic. Words worry them. See their swords? "They think all writing is magic. Words worry them. See their swords?
They glow in the presense of lawyers." They glow in the presence of lawyers."
"All /right/," said Tiffany. "We're getting somewhere. I promise not "All /right/," said Tiffany. "We're getting somewhere. I promise not
to write his name down. [...]" to write his name down. [...]"
@@ -7788,7 +7788,7 @@ Cradle and the House and the Flock and the Three Old Ladies, One With a
Squint, Carrying the Bucket of Fish to Market When They Meet the Donkey, Squint, Carrying the Bucket of Fish to Market When They Meet the Donkey,
although you need two people for that one, and I only ever did it once, although you need two people for that one, and I only ever did it once,
and Betsy Tupper scratched her nose at the wrong moment and I had to get and Betsy Tupper scratched her nose at the wrong moment and I had to get
some scissors to to cut her loose..." some scissors to cut her loose..."
[A Hat Full of Sky, by Terry Pratchett] [A Hat Full of Sky, by Terry Pratchett]
%e passage %e passage
+4 -4
View File
@@ -3651,7 +3651,7 @@ See the \(lqConfiguring Menu Colors\(rq section.
Change the way messages are shown in the top status line. Change the way messages are shown in the top status line.
See the \(lqConfiguring Message Types\(rq section. See the \(lqConfiguring Message Types\(rq section.
.lp ROGUESYMBOLS .lp ROGUESYMBOLS
Custom symbols for for the rogue level's symbol set. Custom symbols for the rogue level's symbol set.
See \fISYMBOLS\fP below. See \fISYMBOLS\fP below.
.lp SOUND .lp SOUND
Define a sound mapping. Define a sound mapping.
@@ -3906,7 +3906,7 @@ picked up, even if
.op autopickup .op autopickup
is also on and they are in is also on and they are in
.op pickup_types .op pickup_types
or match a positive autopickup exception (defualt on). Persistent. or match a positive autopickup exception (default on). Persistent.
.lp disclose .lp disclose
Controls what information the program reveals when the game ends. Controls what information the program reveals when the game ends.
Value is a space separated list of prompting/category pairs Value is a space separated list of prompting/category pairs
@@ -4344,7 +4344,7 @@ To remove an entry that has been previously set without removing others,
precede the first entry in the list with a minus sign, precede the first entry in the list with a minus sign,
\f(CRparanoid_confirmation:-swim\fP. \f(CRparanoid_confirmation:-swim\fP.
To both add some new entries and remove some old ones, you can use To both add some new entries and remove some old ones, you can use
mulitple \fIparanoid_confirmation\fP option settings, or you can multiple \fIparanoid_confirmation\fP option settings, or you can
use the \(oq\f(CR+\fP\(cq form and list entries to be added by their name use the \(oq\f(CR+\fP\(cq form and list entries to be added by their name
and entries to be removed by \(oq\f(CR!\fP\(cq and name. and entries to be removed by \(oq\f(CR!\fP\(cq and name.
The positive (no \(oq!\(cq) and negative (with \(oq!\(cq) entries The positive (no \(oq!\(cq) and negative (with \(oq!\(cq) entries
@@ -4866,7 +4866,7 @@ If NetHack can, it should use this size font for the status window.
.lp font_size_text .lp font_size_text
If NetHack can, it should use this size font for text windows. If NetHack can, it should use this size font for text windows.
.lp fullscreen .lp fullscreen
If NetHack can, it should try and display on the entire screen rather than If NetHack can, it should try to display on the entire screen rather than
in a window. in a window.
.lp "guicolor " .lp "guicolor "
Use color text and/or highlighting attributes when displaying some Use color text and/or highlighting attributes when displaying some
+4 -4
View File
@@ -3827,7 +3827,7 @@ On Windows, the name is \mbox{``.nethackrc''} location in the folder
The file may not exist, The file may not exist,
but it is a normal ASCII text file and can be created with any but it is a normal ASCII text file and can be created with any
text editor. text editor.
After runing {\it NetHack\/} for the first time, you should find a default After running {\it NetHack\/} for the first time, you should find a default
template for ths configuration file named \mbox{``.nethackrc.template''} in template for ths configuration file named \mbox{``.nethackrc.template''} in
\mbox{{``\%USERPROFILE\%\textbackslash NetHack\textbackslash''}}. \mbox{{``\%USERPROFILE\%\textbackslash NetHack\textbackslash''}}.
If you have not created the configuration file, {\it NetHack\/} will create If you have not created the configuration file, {\it NetHack\/} will create
@@ -3985,7 +3985,7 @@ Change the way messages are shown in the top status line.
See the ``Configuring Message Types`` section. See the ``Configuring Message Types`` section.
%.lp %.lp
\item[\bb{ROGUESYMBOLS}] \item[\bb{ROGUESYMBOLS}]
Custom symbols for for the rogue level's symbol set. Custom symbols for the rogue level's symbol set.
See {\it SYMBOLS} below. See {\it SYMBOLS} below.
%.lp %.lp
\item[\bb{SOUND}] \item[\bb{SOUND}]
@@ -4767,7 +4767,7 @@ To remove an entry that has been previously set without removing others,
precede the first entry in the list with a minus sign, precede the first entry in the list with a minus sign,
``{\it paranoid\verb+_+confirmation:-swim\/}. ``{\it paranoid\verb+_+confirmation:-swim\/}.
To both add some new entries and remove some old ones, you can use To both add some new entries and remove some old ones, you can use
mulitple {\it paranoid\verb+_+confirmation\/} option settings, or you can multiple {\it paranoid\verb+_+confirmation\/} option settings, or you can
use the `{\tt \verb|+|}' form and list entries to be added by their name use the `{\tt \verb|+|}' form and list entries to be added by their name
and entries to be removed by `{\tt !}' and name. and entries to be removed by `{\tt !}' and name.
The positive (no `!') and negative (with `!') entries The positive (no `!') and negative (with `!') entries
@@ -5358,7 +5358,7 @@ If {\it NetHack\/} can, it should use this size font for the status window.
If {\it NetHack\/} can, it should use this size font for text windows. If {\it NetHack\/} can, it should use this size font for text windows.
%.lp %.lp
\item[\ib{fullscreen}] \item[\ib{fullscreen}]
If {\it NetHack\/} can, it should try and display on the entire screen rather than in a window. If {\it NetHack\/} can, it should try to display on the entire screen rather than in a window.
%.lp %.lp
\item[\ib{guicolor}] \item[\ib{guicolor}]
Use color text and/or highlighting attributes when displaying some Use color text and/or highlighting attributes when displaying some
+3 -3
View File
@@ -4119,7 +4119,7 @@
dropped_nopick dropped_nopick
If this option is on, items you dropped will not be automatically If this option is on, items you dropped will not be automatically
picked up, even if autopickup is also on and they are in picked up, even if autopickup is also on and they are in
pickup_types or match a positive autopickup exception (defualt on). pickup_types or match a positive autopickup exception (default on).
Persistent. Persistent.
disclose disclose
@@ -4603,7 +4603,7 @@
tack Remove. To remove an entry that has been previously set with- tack Remove. To remove an entry that has been previously set with-
out removing others, precede the first entry in the list with a mi- out removing others, precede the first entry in the list with a mi-
nus sign, paranoid_confirmation:-swim. To both add some new entries nus sign, paranoid_confirmation:-swim. To both add some new entries
and remove some old ones, you can use mulitple paranoid_confirmation and remove some old ones, you can use multiple paranoid_confirmation
option settings, or you can use the `+' form and list entries to be option settings, or you can use the `+' form and list entries to be
added by their name and entries to be removed by `!' and name. The added by their name and entries to be removed by `!' and name. The
positive (no `!') and negative (with `!') entries can be intermixed. positive (no `!') and negative (with `!') entries can be intermixed.
@@ -5182,7 +5182,7 @@
If NetHack can, it should use this size font for text windows. If NetHack can, it should use this size font for text windows.
fullscreen fullscreen
If NetHack can, it should try and display on the entire screen If NetHack can, it should try to display on the entire screen
rather than in a window. rather than in a window.
guicolor guicolor
+1 -1
View File
@@ -123,7 +123,7 @@
# Objects will try to keep their inventory letters # Objects will try to keep their inventory letters
#OPTIONS=fixinv #OPTIONS=fixinv
# Try and display on the entire screen rather than in a window. # Try to display on the entire screen rather than in a window.
#OPTIONS=fullscreen #OPTIONS=fullscreen
# If more information is available for an object looked at with # If more information is available for an object looked at with
+1 -1
View File
@@ -4,7 +4,7 @@ General Fixes and Modified Features
----------------------------------- -----------------------------------
Fixes to Post-X.X.X Problems that Were Exposed Via git Respository Fixes to Post-X.X.X Problems that Were Exposed Via git Repository
------------------------------------------------------------------ ------------------------------------------------------------------
+1 -1
View File
@@ -880,7 +880,7 @@ Example:
Create a room region, which can be irregular; use the boundary <<_map_characters,map character>> to restrict the floodfilled area. Create a room region, which can be irregular; use the boundary <<_map_characters,map character>> to restrict the floodfilled area.
If using the first form with a selection and "lit", the lit area will extend If using the first form with a selection and "lit", the lit area will extend
outward 1 space from the selection to attempt to accomodate adjacent walls, outward 1 space from the selection to attempt to accommodate adjacent walls,
regardless of whether they are actually walls or not. If using "unlit", this regardless of whether they are actually walls or not. If using "unlit", this
will not happen. will not happen.
+1 -1
View File
@@ -395,7 +395,7 @@ hexadecimal, then exit.
can be used to cause NetHack to show where it is expecting can be used to cause NetHack to show where it is expecting
to find various files. to find various files.
Among other things it shows the path to and name for the player's Among other things it shows the path to and name for the player's
run-time configuration file, a text file which can be editted to run-time configuration file, a text file which can be edited to
customize aspects of how the game operates. customize aspects of how the game operates.
.PP .PP
.BR \-\-usage " or " \-\-help .BR \-\-usage " or " \-\-help
+1 -1
View File
@@ -162,7 +162,7 @@ DESCRIPTION
--showpaths can be used to cause NetHack to show where it is expecting --showpaths can be used to cause NetHack to show where it is expecting
to find various files. Among other things it shows the path to and to find various files. Among other things it shows the path to and
name for the player's run-time configuration file, a text file which name for the player's run-time configuration file, a text file which
can be editted to customize aspects of how the game operates. can be edited to customize aspects of how the game operates.
--usage or --help will display information similar to this manual page, --usage or --help will display information similar to this manual page,
then exit. Use `nethack --usage | more' to read it a page at a time. then exit. Use `nethack --usage | more' to read it a page at a time.
+1 -1
View File
@@ -100,7 +100,7 @@ and the optfn_xxxx() function is expected to react and set the option
based on the string values that parseoptions() passes to it. based on the string values that parseoptions() passes to it.
req get_val is passed a buffer from its caller that the optfn_xxxx() is req get_val is passed a buffer from its caller that the optfn_xxxx() is
expected to fill with the current value of the opton. expected to fill with the current value of the option.
req do_handler is called during doset() operations processing in response req do_handler is called during doset() operations processing in response
to player selections, most likely from the 'O' option-setting menu. The to player selections, most likely from the 'O' option-setting menu. The
+1 -1
View File
@@ -282,7 +282,7 @@ gc.chosen_soundlib
ga.active_soundlib ga.active_soundlib
a usersound mappings reference a usersound mappings reference
iflags.sounds is the master on/off swith to control whether any audio iflags.sounds is the master on/off switch to control whether any audio
is produced by the soundlib interface is produced by the soundlib interface
iflags.voice is the master on/off switch for voices produced by iflags.voice is the master on/off switch for voices produced by
+1 -1
View File
@@ -50,7 +50,7 @@
.\" Version 1.6 March 15, 1989 Matt.Bishop@dartmouth.edu .\" Version 1.6 March 15, 1989 Matt.Bishop@dartmouth.edu
.\" ..!bear.dartmouth.edu!bishop .\" ..!bear.dartmouth.edu!bishop
.\" Fixed a bug in footnote handling (again, sigh ...) This one .\" Fixed a bug in footnote handling (again, sigh ...) This one
.\" occurred when the the "fo" trap position was reset just beneath .\" occurred when the "fo" trap position was reset just beneath
.\" the current line; the footnote overflow trap would kick in and .\" the current line; the footnote overflow trap would kick in and
.\" never be closed. .\" never be closed.
.\" .\"
+1 -1
View File
@@ -470,7 +470,7 @@ status_update(int fldindex, genericptr_t ptr, int chg, int percentage, \
windowport that it should output all changes received windowport that it should output all changes received
to this point. It marks the end of a bot() cycle. to this point. It marks the end of a bot() cycle.
-- fldindex could also be BL_RESET (-2), which is not really -- fldindex could also be BL_RESET (-2), which is not really
a field index, but is a special advisory to to tell the a field index, but is a special advisory to tell the
windowport that it should redisplay all its status fields, windowport that it should redisplay all its status fields,
even if no changes have been presented to it. even if no changes have been presented to it.
-- ptr is usually a "char *", unless fldindex is BL_CONDITION. -- ptr is usually a "char *", unless fldindex is BL_CONDITION.
+2 -2
View File
@@ -690,7 +690,7 @@ typedef unsigned char uchar;
/* #define DUMPLOG */ /* End-of-game dump logs */ /* #define DUMPLOG */ /* End-of-game dump logs */
#define USE_ISAAC64 /* Use cross-plattform, bundled RNG */ #define USE_ISAAC64 /* Use cross-platform, bundled RNG */
/* TEMPORARY - MAKE UNCONDITIONAL BEFORE RELEASE */ /* TEMPORARY - MAKE UNCONDITIONAL BEFORE RELEASE */
/* undef this to check if sandbox breaks something */ /* undef this to check if sandbox breaks something */
@@ -716,7 +716,7 @@ typedef unsigned char uchar;
#include "global.h" /* Define everything else according to choices above */ #include "global.h" /* Define everything else according to choices above */
/* Place the following after #include [platform]conf.h in global.h so that /* Place the following after #include [platform]conf.h in global.h so that
overrides are possible in there, for things like unix-specfic file overrides are possible in there, for things like unix-specific file
paths. */ paths. */
#ifdef LIVELOG #ifdef LIVELOG
+1 -1
View File
@@ -747,7 +747,7 @@ struct instance_globals_o {
boolean opt_need_promptstyle; boolean opt_need_promptstyle;
/* pickup.c */ /* pickup.c */
int oldcap; /* last encumberance */ int oldcap; /* last encumbrance */
/* restore.c */ /* restore.c */
struct fruit *oldfruit; struct fruit *oldfruit;
+2 -2
View File
@@ -25,7 +25,7 @@
* sensemon() * sensemon()
* *
* Returns true if the hero can sense the given monster. This includes * Returns true if the hero can sense the given monster. This includes
* monsters that are hiding or mimicing other monsters. * monsters that are hiding or mimicking other monsters.
* *
* [3.7] Note: the map doesn't display any monsters when hero is swallowed * [3.7] Note: the map doesn't display any monsters when hero is swallowed
* (or display non-adjacent, non-submerged ones when hero is underwater), * (or display non-adjacent, non-submerged ones when hero is underwater),
@@ -656,7 +656,7 @@ enum glyph_offsets {
(Ugender)) (Ugender))
/* /*
* Change the given glyph into it's given type. Note: * Change the given glyph into its given type. Note:
* 1) Pets, detected, and ridden monsters are animals and are converted * 1) Pets, detected, and ridden monsters are animals and are converted
* to the proper monster number. * to the proper monster number.
* 2) Bodies are all mapped into the generic CORPSE object * 2) Bodies are all mapped into the generic CORPSE object
+1 -1
View File
@@ -517,7 +517,7 @@ typedef struct color_and_attr {
#define LL_DIVINEGIFT 0x0008L /* Sacrifice gifts, crowning */ #define LL_DIVINEGIFT 0x0008L /* Sacrifice gifts, crowning */
#define LL_LIFESAVE 0x0010L /* Use up amulet of lifesaving */ #define LL_LIFESAVE 0x0010L /* Use up amulet of lifesaving */
#define LL_CONDUCT 0x0020L /* Break conduct - not reported early-game */ #define LL_CONDUCT 0x0020L /* Break conduct - not reported early-game */
#define LL_ARTIFACT 0x0040L /* bestowed, found, or manifactured */ #define LL_ARTIFACT 0x0040L /* bestowed, found, or manufactured */
#define LL_GENOCIDE 0x0080L /* Logging of genocides */ #define LL_GENOCIDE 0x0080L /* Logging of genocides */
#define LL_KILLEDPET 0x0100L /* Killed a tame monster */ #define LL_KILLEDPET 0x0100L /* Killed a tame monster */
#define LL_ALIGNMENT 0x0200L /* changed alignment, temporary or permanent */ #define LL_ALIGNMENT 0x0200L /* changed alignment, temporary or permanent */
+7 -7
View File
@@ -61,7 +61,7 @@
/* bitmask flags for corpse_xname(); /* bitmask flags for corpse_xname();
PFX_THE takes precedence over ARTICLE, NO_PFX takes precedence over both */ PFX_THE takes precedence over ARTICLE, NO_PFX takes precedence over both */
#define CXN_NORMAL 0 /* no special handling */ #define CXN_NORMAL 0 /* no special handling */
#define CXN_SINGULAR 1 /* override quantity if greather than 1 */ #define CXN_SINGULAR 1 /* override quantity if greater than 1 */
#define CXN_NO_PFX 2 /* suppress "the" from "the Unique Monst */ #define CXN_NO_PFX 2 /* suppress "the" from "the Unique Monst */
#define CXN_PFX_THE 4 /* prefix with "the " (unless pname) */ #define CXN_PFX_THE 4 /* prefix with "the " (unless pname) */
#define CXN_ARTICLE 8 /* include a/an/the prefix */ #define CXN_ARTICLE 8 /* include a/an/the prefix */
@@ -682,7 +682,7 @@ enum optset_restrictions {
set_viaprog = 2, /* may be set via extern program, not seen in game */ set_viaprog = 2, /* may be set via extern program, not seen in game */
set_gameview = 3, /* may be set via extern program, displayed in game */ set_gameview = 3, /* may be set via extern program, displayed in game */
set_in_game = 4, /* may be set via extern program or set in the game */ set_in_game = 4, /* may be set via extern program or set in the game */
set_wizonly = 5, /* may be set set in the game if wizmode */ set_wizonly = 5, /* may be set in the game if wizmode */
set_wiznofuz = 6, /* wizard-mode only, but not by fuzzer */ set_wiznofuz = 6, /* wizard-mode only, but not by fuzzer */
set_hidden = 7 /* placeholder for prefixed entries, never show it */ set_hidden = 7 /* placeholder for prefixed entries, never show it */
}; };
@@ -769,9 +769,9 @@ struct sinfo {
int saving; /* creating a save file */ int saving; /* creating a save file */
int restoring; /* reloading a save file */ int restoring; /* reloading a save file */
int in_moveloop; /* normal gameplay in progress */ int in_moveloop; /* normal gameplay in progress */
int in_impossible; /* reportig a warning */ int in_impossible; /* reporting a warning */
int in_docrt; /* in docrt(): redrawing the whole screen */ int in_docrt; /* in docrt(): redrawing the whole screen */
int in_self_recover; /* processsing orphaned level files */ int in_self_recover; /* processing orphaned level files */
int in_checkpoint; /* saving insurance checkpoint */ int in_checkpoint; /* saving insurance checkpoint */
int in_parseoptions; /* in parseoptions */ int in_parseoptions; /* in parseoptions */
int in_role_selection; /* role/race/&c selection menus in progress */ int in_role_selection; /* role/race/&c selection menus in progress */
@@ -786,7 +786,7 @@ struct sinfo {
used in the curses interface to avoid arrow keys when user is doing used in the curses interface to avoid arrow keys when user is doing
something other than entering a command or direction and in the Qt something other than entering a command or direction and in the Qt
interface to suppress menu commands in similar conditions; interface to suppress menu commands in similar conditions;
readchar() alrways resets it to 'otherInp' prior to returning */ readchar() always resets it to 'otherInp' prior to returning */
int input_state; /* whether next key pressed will be entering a command */ int input_state; /* whether next key pressed will be entering a command */
#ifdef TTY_GRAPHICS #ifdef TTY_GRAPHICS
/* resize_pending only matters when handling a SIGWINCH signal for tty; /* resize_pending only matters when handling a SIGWINCH signal for tty;
@@ -926,7 +926,7 @@ typedef struct {
long count; /* holds current line count for default style file, long count; /* holds current line count for default style file,
field count for binary style */ field count for binary style */
boolean structlevel; /* traditional structure binary saves */ boolean structlevel; /* traditional structure binary saves */
boolean fieldlevel; /* fieldlevel saves saves each field individually */ boolean fieldlevel; /* fieldlevel saves each field individually */
boolean addinfo; /* if set, some additional context info from core */ boolean addinfo; /* if set, some additional context info from core */
boolean eof; /* place to mark eof reached */ boolean eof; /* place to mark eof reached */
boolean bendian; /* set to true if executing on big-endian machine */ boolean bendian; /* set to true if executing on big-endian machine */
@@ -1204,7 +1204,7 @@ typedef uint32_t mmflags_nht; /* makemon MM_ flags */
#define ONAME_RANDOM 0x0080U /* something created an artifact randomly #define ONAME_RANDOM 0x0080U /* something created an artifact randomly
* with mk_artifact() (mksboj or mk_player) * with mk_artifact() (mksboj or mk_player)
* or m_initweap() (lawful Angel) */ * or m_initweap() (lawful Angel) */
/* flag congrolling potential livelog event of finding an artifact */ /* flag controlling potential livelog event of finding an artifact */
#define ONAME_KNOW_ARTI 0x0100U /* hero is already aware of this artifact */ #define ONAME_KNOW_ARTI 0x0100U /* hero is already aware of this artifact */
/* flag for suppressing perm_invent update when name gets assigned */ /* flag for suppressing perm_invent update when name gets assigned */
#define ONAME_SKIP_INVUPD 0x0200U /* don't call update_inventory() */ #define ONAME_SKIP_INVUPD 0x0200U /* don't call update_inventory() */
+1 -1
View File
@@ -5,7 +5,7 @@
/* integer.h -- provide sized integer types /* integer.h -- provide sized integer types
* *
* We try to sort out a way to provide sized integer types * We try to sort out a way to provide sized integer types
* in here. The strong preference is to try and let a * in here. The strong preference is to try to let a
* compiler-supplied header file set up the types. * compiler-supplied header file set up the types.
* *
* If your compiler is C99 conforming and sets a value of * If your compiler is C99 conforming and sets a value of
+1 -1
View File
@@ -161,7 +161,7 @@
#define is_rider(ptr) \ #define is_rider(ptr) \
((ptr) == &mons[PM_DEATH] || (ptr) == &mons[PM_FAMINE] \ ((ptr) == &mons[PM_DEATH] || (ptr) == &mons[PM_FAMINE] \
|| (ptr) == &mons[PM_PESTILENCE]) || (ptr) == &mons[PM_PESTILENCE])
/* note: placeholder monsters are used for corposes of zombies and mummies; /* note: placeholder monsters are used for corpses of zombies and mummies;
PM_DWARF and PM_GNOME are normal monsters, not placeholders */ PM_DWARF and PM_GNOME are normal monsters, not placeholders */
#define is_placeholder(ptr) \ #define is_placeholder(ptr) \
((ptr) == &mons[PM_ORC] || (ptr) == &mons[PM_GIANT] \ ((ptr) == &mons[PM_ORC] || (ptr) == &mons[PM_GIANT] \
+4 -4
View File
@@ -37,10 +37,10 @@
* then the value(s) can be plugged in here and monstr.c deleted. * then the value(s) can be plugged in here and monstr.c deleted.
* [Note that some monsters might warrant manually calculated * [Note that some monsters might warrant manually calculated
* difficulty, on a case by case basis, instead of blindly using * difficulty, on a case by case basis, instead of blindly using
* the default value produced by makedefs. Or fix the algoritm * the default value produced by makedefs. Or fix the algorithm
* used by makedefs to generate a more appropriate value....] * used by makedefs to generate a more appropriate value....]
* *
* TODO: difficulty is closely releated to level; its field ought * TODO: difficulty is closely related to level; its field ought
* to be moved sooner in the permonst struct so that it can become * to be moved sooner in the permonst struct so that it can become
* part of LVL() instead of remaining an orphan near the end. * part of LVL() instead of remaining an orphan near the end.
* *
@@ -3276,7 +3276,7 @@
M1_SWIM | M1_AMPHIBIOUS | M1_ANIMAL | M1_NOHANDS | M1_CARNIVORE, M1_SWIM | M1_AMPHIBIOUS | M1_ANIMAL | M1_NOHANDS | M1_CARNIVORE,
M2_HOSTILE, 0, M2_HOSTILE, 0,
4, CLR_BROWN, BABY_CROCODILE), 4, CLR_BROWN, BABY_CROCODILE),
/* trivia: before monster corspes were implemented, "lizard corpse" /* trivia: before monster corpses were implemented, "lizard corpse"
was a specific type of item */ was a specific type of item */
MON(NAM("lizard"), S_LIZARD, MON(NAM("lizard"), S_LIZARD,
LVL(5, 6, 6, 10, 0), (G_GENO | 5), LVL(5, 6, 6, 10, 0), (G_GENO | 5),
@@ -3797,7 +3797,7 @@
M3_INFRAVISION | M3_INFRAVISIBLE, M3_INFRAVISION | M3_INFRAVISIBLE,
7, HI_DOMESTIC, HIGH_ELF), 7, HI_DOMESTIC, HIGH_ELF),
#endif #endif
/* attendants used to be lawful but have been changed to netural because /* attendants used to be lawful but have been changed to neutral because
grow_up() promotes them to healer and the latter is always neutral */ grow_up() promotes them to healer and the latter is always neutral */
MON(NAM("attendant"), S_HUMAN, MON(NAM("attendant"), S_HUMAN,
LVL(5, 12, 10, 10, 0), G_NOGEN, LVL(5, 12, 10, 10, 0), G_NOGEN,
+1 -1
View File
@@ -66,7 +66,7 @@ struct objclass {
Bitfield(oc_tough, 1); /* hard gems/rings */ Bitfield(oc_tough, 1); /* hard gems/rings */
Bitfield(oc_spare1, 6); /* padding to align oc_dir + oc_material; Bitfield(oc_spare1, 6); /* padding to align oc_dir + oc_material;
* can be canabalized for other use; * can be cannibalized for other use;
* aka 6 free bits */ * aka 6 free bits */
Bitfield(oc_dir, 3); Bitfield(oc_dir, 3);
+2 -2
View File
@@ -1015,7 +1015,7 @@ OBJECT(OBJ("Bell of Opening", "silver bell"),
FOOD_CLASS, prob, delay, wt, nutrition / 20 + 5, 0, 0, 0, 0, \ FOOD_CLASS, prob, delay, wt, nutrition / 20 + 5, 0, 0, 0, 0, \
nutrition, color, sn) nutrition, color, sn)
/* All types of food (except tins & corpses) must have a delay of at least 1. /* All types of food (except tins & corpses) must have a delay of at least 1.
* Delay on corpses is computed and is weight dependant. * Delay on corpses is computed and is weight dependent.
* Domestic pets prefer tripe rations above all others. * Domestic pets prefer tripe rations above all others.
* Fortune cookies can be read, using them up without ingesting them. * Fortune cookies can be read, using them up without ingesting them.
* Carrots improve your vision. * Carrots improve your vision.
@@ -1037,7 +1037,7 @@ FOOD("meat stick", 0, 1, 1, 0, FLESH, 5, CLR_BROWN,
/* formerly "huge chunk of meat" */ /* formerly "huge chunk of meat" */
FOOD("enormous meatball", 0, 20,400, 0, FLESH,2000, CLR_BROWN, FOOD("enormous meatball", 0, 20,400, 0, FLESH,2000, CLR_BROWN,
ENORMOUS_MEATBALL), ENORMOUS_MEATBALL),
/* special case because it's not mergable */ /* special case because it's not mergeable */
OBJECT(OBJ("meat ring", NoDes), OBJECT(OBJ("meat ring", NoDes),
BITS(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, FLESH), BITS(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, FLESH),
0, FOOD_CLASS, 0, 1, 5, 1, 0, 0, 0, 0, 5, CLR_BROWN, MEAT_RING), 0, FOOD_CLASS, 0, 1, 5, 1, 0, 0, 0, 0, 5, CLR_BROWN, MEAT_RING),
+2 -2
View File
@@ -85,7 +85,7 @@
* defined to force it back into effect * defined to force it back into effect
* update_inventory() after leash goes slack * update_inventory() after leash goes slack
* player assigned name for monsters, specific objects, or object types could be * player assigned name for monsters, specific objects, or object types could be
longer than what was intented to be allowed; for 'curses', much longer longer than what was intended to be allowed; for 'curses', much longer
* windows: added winflexbison to travis-ci configuration to permit full build of * windows: added winflexbison to travis-ci configuration to permit full build of
* levcomp and dgncomp * levcomp and dgncomp
* windows: a bad chdir specified in win/win32/dgnstuff.mak caused full build to * windows: a bad chdir specified in win/win32/dgnstuff.mak caused full build to
@@ -155,7 +155,7 @@
* Fixed stale 'thrownobj' pointer for returning thrown aklys while engulfed * Fixed stale 'thrownobj' pointer for returning thrown aklys while engulfed
* Fixed uarmh null pointer dereference if a helm of opposite alignment came * Fixed uarmh null pointer dereference if a helm of opposite alignment came
* off due to being polymorphed * off due to being polymorphed
* Fixed 'object lost' panic when attempting to crawl of of the water during * Fixed 'object lost' panic when attempting to crawl out of the water during
* emergency disrobing/dropping * emergency disrobing/dropping
* Running now stops when moving over engravings so you can tell where they are * Running now stops when moving over engravings so you can tell where they are
* Fixed detection of unseen/secret doors which failed to find monsters hiding * Fixed detection of unseen/secret doors which failed to find monsters hiding
+2 -2
View File
@@ -269,7 +269,7 @@ struct rm {
/* /*
* Add wall angle viewing by defining "modes" for each wall type. Each * Add wall angle viewing by defining "modes" for each wall type. Each
* mode describes which parts of a wall are finished (seen as as wall) * mode describes which parts of a wall are finished (seen as wall)
* and which are unfinished (seen as rock). * and which are unfinished (seen as rock).
* *
* We use the bottom 3 bits of the flags field for the mode. This comes * We use the bottom 3 bits of the flags field for the mode. This comes
@@ -356,7 +356,7 @@ struct rm {
#define looted flags /* used for throne, tree, fountain, sink, door */ #define looted flags /* used for throne, tree, fountain, sink, door */
#define icedpool flags /* used for ice (in case it melts) */ #define icedpool flags /* used for ice (in case it melts) */
#define emptygrave flags /* no corpse in grave */ #define emptygrave flags /* no corpse in grave */
/* horizonal applies to walls, doors (including sdoor); also to iron bars /* horizontal applies to walls, doors (including sdoor); also to iron bars
even though they don't have separate symbols for horizontal and vertical */ even though they don't have separate symbols for horizontal and vertical */
#define blessedftn horizontal /* a fountain that grants attribs */ #define blessedftn horizontal /* a fountain that grants attribs */
#define disturbed horizontal /* kicking or engraving on a grave's headstone #define disturbed horizontal /* kicking or engraving on a grave's headstone
+1 -1
View File
@@ -82,7 +82,7 @@ enum p_skills {
/* /*
* These are the standard weapon skill levels. It is important that * These are the standard weapon skill levels. It is important that
* the lowest "valid" skill be be 1. The code calculates the * the lowest "valid" skill be 1. The code calculates the
* previous amount to practice by calling practice_needed_to_advance() * previous amount to practice by calling practice_needed_to_advance()
* with the current skill-1. To work out for the UNSKILLED case, * with the current skill-1. To work out for the UNSKILLED case,
* a value of 0 needed. * a value of 0 needed.
+1 -1
View File
@@ -96,7 +96,7 @@
/* #define DEF_PAGER "/usr/bin/less" */ /* #define DEF_PAGER "/usr/bin/less" */
/* /*
* Define PORT_HELP to be the name of the port-specfic help file. * Define PORT_HELP to be the name of the port-specific help file.
* This file is found in HACKDIR. * This file is found in HACKDIR.
* Normally, you shouldn't need to change this. * Normally, you shouldn't need to change this.
* There is currently no port-specific help for Unix systems. * There is currently no port-specific help for Unix systems.
+1 -1
View File
@@ -94,7 +94,7 @@ typedef struct glyph_map_entry {
/* glyph plus additional info /* glyph plus additional info
if you add fields or change the ordering, fix up the following: if you add fields or change the ordering, fix up the following:
g_info initialization in display.c g_info initialization in display.c
nul_glyphinfo initialization in diplay.c nul_glyphinfo initialization in display.c
*/ */
typedef struct gi { typedef struct gi {
int glyph; /* the display entity */ int glyph; /* the display entity */
+1 -1
View File
@@ -301,7 +301,7 @@ maybe_preinsert_directory(int32_t findsound_approach, char *exedir, char *buf, s
int largest_basename = 35; int largest_basename = 35;
/* findsound_approach = sff_havdir_append_rest means a directory name will be /* findsound_approach = sff_havdir_append_rest means a directory name will be
* inserted into the begining of buf and the remaining parts of the * inserted into the beginning of buf and the remaining parts of the
* resource/file name will be appended by * resource/file name will be appended by
* get_sound_effect_filename(seid, buf, sizeof buf, findsound_approach) * get_sound_effect_filename(seid, buf, sizeof buf, findsound_approach)
* when it sees the sff_havedir_append_rest indicator. * when it sees the sff_havedir_append_rest indicator.
+1 -1
View File
@@ -1886,7 +1886,7 @@ is_valid_jump_pos(coordxy x, coordxy y, int magic, boolean showmsg)
coord uc, tc; coord uc, tc;
struct rm *lev = &levl[u.ux][u.uy]; struct rm *lev = &levl[u.ux][u.uy];
/* we want to categorize trajectory for use in determining /* we want to categorize trajectory for use in determining
passage through doorways: horizonal, vertical, or diagonal; passage through doorways: horizontal, vertical, or diagonal;
since knight's jump and other irregular directions are since knight's jump and other irregular directions are
possible, we flatten those out to simplify door checks */ possible, we flatten those out to simplify door checks */
int diag, traj; int diag, traj;
+2 -2
View File
@@ -240,11 +240,11 @@ losestr(int num, const char *knam, schar k_format)
losehp(dmg, knam, k_format); losehp(dmg, knam, k_format);
if (Upolyd) { if (Upolyd) {
/* if still polymorhed, reduce you-as-monst maxHP; never below 1 */ /* if still polymorphed, reduce you-as-monst maxHP; never below 1 */
u.mhmax -= min(dmg, u.mhmax - 1); u.mhmax -= min(dmg, u.mhmax - 1);
} else if (!waspolyd) { } else if (!waspolyd) {
/* not polymorphed now and didn't rehumanize when taking damage; /* not polymorphed now and didn't rehumanize when taking damage;
reduce max HP, but not below below uhpmin */ reduce max HP, but not below uhpmin */
if (u.uhpmax > uhpmin) if (u.uhpmax > uhpmin)
setuhpmax(max(u.uhpmax - dmg, uhpmin)); setuhpmax(max(u.uhpmax - dmg, uhpmin));
} }
+1 -1
View File
@@ -634,7 +634,7 @@ drag_ball(coordxy x, coordxy y, int *bc_control,
already_in_rock = FALSE; already_in_rock = FALSE;
switch (dist2(x, y, uball->ox, uball->oy)) { switch (dist2(x, y, uball->ox, uball->oy)) {
/* two spaces diagonal from ball, move chain inbetween */ /* two spaces diagonal from ball, move chain in-between */
case 8: case 8:
*chainx = (uball->ox + x) / 2; *chainx = (uball->ox + x) / 2;
*chainy = (uball->oy + y) / 2; *chainy = (uball->oy + y) / 2;
+2 -2
View File
@@ -333,7 +333,7 @@ fixuporacle(struct monst *oracle)
break; break;
if (o_ridx != ridx && ridx < SIZE(gr.rooms)) { if (o_ridx != ridx && ridx < SIZE(gr.rooms)) {
/* room found and she's not not in it, so try to move her there */ /* room found and she's not in it, so try to move her there */
cc.x = (gr.rooms[ridx].lx + gr.rooms[ridx].hx) / 2; cc.x = (gr.rooms[ridx].lx + gr.rooms[ridx].hx) / 2;
cc.y = (gr.rooms[ridx].ly + gr.rooms[ridx].hy) / 2; cc.y = (gr.rooms[ridx].ly + gr.rooms[ridx].hy) / 2;
if (enexto(&cc, cc.x, cc.y, oracle->data)) { if (enexto(&cc, cc.x, cc.y, oracle->data)) {
@@ -758,7 +758,7 @@ fix_ghostly_obj(struct obj *obj)
if (!obj->ghostly) if (!obj->ghostly)
return; return;
switch(obj->otyp) { switch(obj->otyp) {
/* asymetrical weapons */ /* asymmetrical weapons */
case BOW: case BOW:
case ELVEN_BOW: case ELVEN_BOW:
case ORCISH_BOW: case ORCISH_BOW:
+4 -4
View File
@@ -669,9 +669,9 @@ doextlist(void)
continue; continue;
if (!onelist && pass != wizc) if (!onelist && pass != wizc)
continue; continue;
/* command descripton might get modified on the fly */ /* command description might get modified on the fly */
cmd_desc = efp->ef_desc; cmd_desc = efp->ef_desc;
/* suppress part of the descripton for #genocided if it /* suppress part of the description for #genocided if it
doesn't apply during the current game */ doesn't apply during the current game */
if (!wizard && !discover if (!wizard && !discover
&& (efp->flags & GENERALCMD) != 0 /* minor optimization */ && (efp->flags & GENERALCMD) != 0 /* minor optimization */
@@ -1457,7 +1457,7 @@ static int
wiz_flip_level(void) wiz_flip_level(void)
{ {
static const char choices[] = "0123", static const char choices[] = "0123",
prmpt[] = "Flip 0=randomly, 1=vertically, 2=horizonally, 3=both:"; prmpt[] = "Flip 0=randomly, 1=vertically, 2=horizontally, 3=both:";
/* /*
* Does not handle * Does not handle
@@ -4447,7 +4447,7 @@ wiz_mon_diff(void)
} }
} }
if (!trouble) if (!trouble)
putstr(win, 0, "No monster difficulty discrepencies were detected."); putstr(win, 0, "No monster difficulty discrepancies were detected.");
display_nhwindow(win, FALSE); display_nhwindow(win, FALSE);
destroy_nhwindow(win); destroy_nhwindow(win);
return ECMD_OK; return ECMD_OK;
+1 -1
View File
@@ -97,7 +97,7 @@ const char *fqn_prefix_names[PREFIX_COUNT] = {
const schar xdir[N_DIRS_Z] = { -1, -1, 0, 1, 1, 1, 0, -1, 0, 0 }; const schar xdir[N_DIRS_Z] = { -1, -1, 0, 1, 1, 1, 0, -1, 0, 0 };
const schar ydir[N_DIRS_Z] = { 0, -1, -1, -1, 0, 1, 1, 1, 0, 0 }; const schar ydir[N_DIRS_Z] = { 0, -1, -1, -1, 0, 1, 1, 1, 0, 0 };
const schar zdir[N_DIRS_Z] = { 0, 0, 0, 0, 0, 0, 0, 0, 1, -1 }; const schar zdir[N_DIRS_Z] = { 0, 0, 0, 0, 0, 0, 0, 0, 1, -1 };
/* redordered directions, cardinals first */ /* reordered directions, cardinals first */
const schar dirs_ord[N_DIRS] = const schar dirs_ord[N_DIRS] =
{ DIR_W, DIR_N, DIR_E, DIR_S, DIR_NW, DIR_NE, DIR_SE, DIR_SW }; { DIR_W, DIR_N, DIR_E, DIR_S, DIR_NW, DIR_NE, DIR_SE, DIR_SW };
+2 -2
View File
@@ -1301,7 +1301,7 @@ use_crystal_ball(struct obj **optr)
if (ch == DEF_MIMIC_DEF) if (ch == DEF_MIMIC_DEF)
ch = DEF_MIMIC; ch = DEF_MIMIC;
/* checking furnture before objects allows '_' to find altars /* checking furniture before objects allows '_' to find altars
(along with other furniture) instead of finding iron chains */ (along with other furniture) instead of finding iron chains */
if (def_char_is_furniture(ch) >= 0) { if (def_char_is_furniture(ch) >= 0) {
ret = furniture_detect(); ret = furniture_detect();
@@ -2121,7 +2121,7 @@ dump_map(void)
boolean blankrow, toprow; boolean blankrow, toprow;
/* /*
* Squeeze out excess vertial space when dumping the map. * Squeeze out excess vertical space when dumping the map.
* If there are any blank map rows at the top, suppress them * If there are any blank map rows at the top, suppress them
* (our caller has already printed a separator). If there is * (our caller has already printed a separator). If there is
* more than one blank map row at the bottom, keep just one. * more than one blank map row at the bottom, keep just one.
+1 -1
View File
@@ -2004,7 +2004,7 @@ unearth_objs(int x, int y)
/* /*
* The organic material has rotted away while buried. As an expansion, * The organic material has rotted away while buried. As an expansion,
* we could add add partial damage. A damage count is kept in the object * we could add partial damage. A damage count is kept in the object
* and every time we are called we increment the count and reschedule another * and every time we are called we increment the count and reschedule another
* timeout. Eventually the object rots away. * timeout. Eventually the object rots away.
* *
+5 -5
View File
@@ -514,10 +514,10 @@ display_monster(
mgendercode = mon->female ? FEMALE : MALE; mgendercode = mon->female ? FEMALE : MALE;
/* /*
* We must do the mimic check first. If the mimic is mimicing something, * We must do the mimic check first. If the mimic is mimicking something,
* and the location is in sight, we have to change the hero's memory * and the location is in sight, we have to change the hero's memory
* so that when the position is out of sight, the hero remembers what * so that when the position is out of sight, the hero remembers what
* the mimic was mimicing. * the mimic was mimicking.
*/ */
if (mon_mimic && (sightflags == PHYSICALLY_SEEN)) { if (mon_mimic && (sightflags == PHYSICALLY_SEEN)) {
switch (M_AP_TYPE(mon)) { switch (M_AP_TYPE(mon)) {
@@ -558,7 +558,7 @@ display_monster(
obj.ox = x; obj.ox = x;
obj.oy = y; obj.oy = y;
obj.otyp = mon->mappearance; obj.otyp = mon->mappearance;
/* might be mimicing a corpse or statue */ /* might be mimicking a corpse or statue */
obj.corpsenm = has_mcorpsenm(mon) ? MCORPSENM(mon) : PM_TENGU; obj.corpsenm = has_mcorpsenm(mon) ? MCORPSENM(mon) : PM_TENGU;
map_object(&obj, !sensed); map_object(&obj, !sensed);
break; break;
@@ -573,7 +573,7 @@ display_monster(
} /* switch M_AP_TYPE() */ } /* switch M_AP_TYPE() */
} }
/* If mimic is unsuccessfully mimicing something, display the monster. */ /* If mimic is unsuccessfully mimicking something, display the monster. */
if (!mon_mimic || sensed) { if (!mon_mimic || sensed) {
int num; int num;
@@ -1485,7 +1485,7 @@ mimic_light_blocking(struct monst *mtmp)
} }
/* /*
* Block/unblock light depending on what a mimic is mimicing and if it's * Block/unblock light depending on what a mimic is mimicking and if it's
* invisible or not. Should be called only when the state of See_invisible * invisible or not. Should be called only when the state of See_invisible
* changes. * changes.
*/ */
+1 -1
View File
@@ -1985,7 +1985,7 @@ x_monnam(
* This monster has become important, for the moment anyway. * This monster has become important, for the moment anyway.
* As the hero's consumer, it is worthy of ARTICLE_THE. * As the hero's consumer, it is worthy of ARTICLE_THE.
* Also, suppress invisible as that particular characteristic * Also, suppress invisible as that particular characteristic
* is unimportant now and you can see it's interior anyway. * is unimportant now and you can see its interior anyway.
*/ */
article = ARTICLE_THE; article = ARTICLE_THE;
suppress |= SUPPRESS_INVISIBLE; suppress |= SUPPRESS_INVISIBLE;
+3 -3
View File
@@ -531,7 +531,7 @@ Helmet_off(void)
return 0; return 0;
} }
/* hard helms provide better protection against against falling rocks */ /* hard helms provide better protection against falling rocks */
boolean boolean
hard_helmet(struct obj *obj) hard_helmet(struct obj *obj)
{ {
@@ -992,7 +992,7 @@ Amulet_on(void)
break; break;
} }
case AMULET_OF_FLYING: case AMULET_OF_FLYING:
/* setworn() has already set extrinisic flying */ /* setworn() has already set extrinsic flying */
float_vs_flight(); /* block flying if levitating */ float_vs_flight(); /* block flying if levitating */
if (Flying) { if (Flying) {
boolean already_flying; boolean already_flying;
@@ -1099,7 +1099,7 @@ learnring(struct obj *ring, boolean observed)
{ {
int ringtype = ring->otyp; int ringtype = ring->otyp;
/* if effect was observeable then we usually discover the type */ /* if effect was observable then we usually discover the type */
if (observed) { if (observed) {
/* if we already know the ring type which accomplishes this /* if we already know the ring type which accomplishes this
effect (assumes there is at most one type for each effect), effect (assumes there is at most one type for each effect),
+1 -1
View File
@@ -1383,7 +1383,7 @@ static const struct qmchoices {
int mndx; /* type of pet, 0 means any */ int mndx; /* type of pet, 0 means any */
char mlet; /* symbol of pet, 0 means any */ char mlet; /* symbol of pet, 0 means any */
unsigned mappearance; /* mimic this */ unsigned mappearance; /* mimic this */
uchar m_ap_type; /* what is the thing it is mimicing? */ uchar m_ap_type; /* what is the thing it is mimicking? */
} qm[] = { } qm[] = {
/* Things that some pets might be thinking about at the time */ /* Things that some pets might be thinking about at the time */
{ PM_LITTLE_DOG, 0, PM_KITTEN, M_AP_MONSTER }, { PM_LITTLE_DOG, 0, PM_KITTEN, M_AP_MONSTER },
+1 -1
View File
@@ -94,7 +94,7 @@ def_char_to_objclass(char ch)
/* /*
* Convert a character into a monster class. This returns the _first_ * Convert a character into a monster class. This returns the _first_
* match made. If there are are no matches, return MAXMCLASSES. * match made. If there are no matches, return MAXMCLASSES.
* Used in detect.c, options.c, read.c, sp_lev.c, and lev_main.c * Used in detect.c, options.c, read.c, sp_lev.c, and lev_main.c
*/ */
int int
+1 -1
View File
@@ -3154,7 +3154,7 @@ count_feat_lastseentyp(
switch (gl.lastseentyp[x][y]) { switch (gl.lastseentyp[x][y]) {
#if 0 /* levels that have these tend of have a lot of them */ #if 0 /* levels that have these tend of have a lot of them */
/* /*
* FIXME? due to theme rooms, lots of levels have an incresed * FIXME? due to theme rooms, lots of levels have an increased
* chance of having these so automatic annotations for them may * chance of having these so automatic annotations for them may
* have become more worthwhile now. * have become more worthwhile now.
*/ */
+1 -1
View File
@@ -156,7 +156,7 @@ static const struct {
{ "", 0, 0, 0 } }; { "", 0, 0, 0 } };
#define TTSZ SIZE(tintxts) #define TTSZ SIZE(tintxts)
/* called after mimicing is over */ /* called after mimicking is over */
static int static int
eatmdone(void) eatmdone(void)
{ {
+2 -2
View File
@@ -74,7 +74,7 @@ ATTRNORETURN extern void nethack_exit(int) NORETURN;
#include <execinfo.h> #include <execinfo.h>
#endif #endif
/* What do we try and in what order? Tradeoffs: /* What do we try to in what order? Tradeoffs:
* libc: +no external programs required * libc: +no external programs required
* -requires newish libc/glibc * -requires newish libc/glibc
* -requires -rdynamic * -requires -rdynamic
@@ -1660,7 +1660,7 @@ fuzzer_savelife(int how)
++remedies; ++remedies;
} }
if (!rn2(3 + 3 * remedies)) { if (!rn2(3 + 3 * remedies)) {
/* confer temporary resistances for first 8 properities: /* confer temporary resistances for first 8 properties:
fire, cold, sleep, disint, shock, poison, acid, stone */ fire, cold, sleep, disint, shock, poison, acid, stone */
for (propidx = 1; propidx <= 8; ++propidx) { for (propidx = 1; propidx <= 8; ++propidx) {
if (!u.uprops[propidx].intrinsic if (!u.uprops[propidx].intrinsic
+2 -2
View File
@@ -1571,9 +1571,9 @@ disturb_grave(coordxy x, coordxy y)
struct rm *lev = &levl[x][y]; struct rm *lev = &levl[x][y];
if (!IS_GRAVE(lev->typ)) { if (!IS_GRAVE(lev->typ)) {
impossible("Disturing grave that isn't a grave? (%d)", lev->typ); impossible("Disturbing grave that isn't a grave? (%d)", lev->typ);
} else if (lev->disturbed) { } else if (lev->disturbed) {
impossible("Disturing already disturbed grave?"); impossible("Disturbing already disturbed grave?");
} else { } else {
You("disturb the undead!"); You("disturb the undead!");
lev->disturbed = 1; lev->disturbed = 1;
+2 -2
View File
@@ -588,7 +588,7 @@ strNsubst(
const char *rp; const char *rp;
unsigned len = (unsigned) strlen(orig); unsigned len = (unsigned) strlen(orig);
int ocount = 0, /* number of times 'orig' has been matched */ int ocount = 0, /* number of times 'orig' has been matched */
rcount = 0; /* number of subsitutions made */ rcount = 0; /* number of substitutions made */
for (bp = inoutbuf, op = workbuf; *bp && op < &workbuf[BUFSZ - 1]; ) { for (bp = inoutbuf, op = workbuf; *bp && op < &workbuf[BUFSZ - 1]; ) {
if ((!len || !strncmp(bp, orig, len)) && (++ocount == n || n == 0)) { if ((!len || !strncmp(bp, orig, len)) && (++ocount == n || n == 0)) {
@@ -1273,7 +1273,7 @@ strbuf_empty(strbuf_t *strbuf)
strbuf_init(strbuf); strbuf_init(strbuf);
} }
/* strbuf_nl_to_crlf() converts all occurences of \n to \r\n */ /* strbuf_nl_to_crlf() converts all occurrences of \n to \r\n */
void void
strbuf_nl_to_crlf(strbuf_t *strbuf) strbuf_nl_to_crlf(strbuf_t *strbuf)
{ {
+6 -6
View File
@@ -6,7 +6,7 @@
* Enlightenment and Conduct+Achievements and Vanquished+Extinct+Geno'd * Enlightenment and Conduct+Achievements and Vanquished+Extinct+Geno'd
* and stethoscope/probing feedback. * and stethoscope/probing feedback.
* *
* Most code used to reside in cmd.c, presumeably because ^X was originally * Most code used to reside in cmd.c, presumably because ^X was originally
* a wizard mode command and the majority of those are in that file. * a wizard mode command and the majority of those are in that file.
* Some came from end.c where it is used during end of game disclosure. * Some came from end.c where it is used during end of game disclosure.
* And some came from priest.c that had once been in pline.c. * And some came from priest.c that had once been in pline.c.
@@ -1027,7 +1027,7 @@ status_enlightenment(int mode, int final)
Sprintf(buf, "%s blind", Sprintf(buf, "%s blind",
(HBlinded & FROMOUTSIDE) != 0L ? "permanently" (HBlinded & FROMOUTSIDE) != 0L ? "permanently"
: (HBlinded & FROMFORM) ? "innately" : (HBlinded & FROMFORM) ? "innately"
/* better phrasing desparately wanted... */ /* better phrasing desperately wanted... */
: Blindfolded_only ? "deliberately" : Blindfolded_only ? "deliberately"
/* timed, possibly combined with blindfold */ /* timed, possibly combined with blindfold */
: "temporarily"); : "temporarily");
@@ -1741,7 +1741,7 @@ attributes_enlightenment(
(u.uhitinc < 0) ? "increasing" (u.uhitinc < 0) ? "increasing"
: (u.uhitinc < 4 * gu.urole.spelarmr / 5) : (u.uhitinc < 4 * gu.urole.spelarmr / 5)
? "partly offsetting" ? "partly offsetting"
: (u.uhitinc < gu.urole.spelarmr) ? "nearly offseting" : (u.uhitinc < gu.urole.spelarmr) ? "nearly offsetting"
: "overcoming"); : "overcoming");
you_have(buf, ""); you_have(buf, "");
} }
@@ -1978,7 +1978,7 @@ doattributes(void)
} }
void void
youhiding(boolean via_enlghtmt, /* englightment line vs topl message */ youhiding(boolean via_enlghtmt, /* enlightenment line vs topl message */
int msgflag) /* for variant message phrasing */ int msgflag) /* for variant message phrasing */
{ {
char *bp, buf[BUFSZ]; char *bp, buf[BUFSZ];
@@ -2601,7 +2601,7 @@ vanqsort_cmp(
case VANQ_ALPHA_MIX: case VANQ_ALPHA_MIX:
name1 = mons[indx1].pmnames[NEUTRAL]; name1 = mons[indx1].pmnames[NEUTRAL];
name2 = mons[indx2].pmnames[NEUTRAL]; name2 = mons[indx2].pmnames[NEUTRAL];
res = strcmpi(name1, name2); /* caseblind alhpa, low to high */ res = strcmpi(name1, name2); /* caseblind alpha, low to high */
break; break;
case VANQ_MCLS_HTOL: case VANQ_MCLS_HTOL:
case VANQ_MCLS_LTOH: case VANQ_MCLS_LTOH:
@@ -2892,7 +2892,7 @@ num_extinct(void)
return n; return n;
} }
/* collect both genocides and extintctions, skipping uniques */ /* collect both genocides and extinctions, skipping uniques */
static int static int
num_gone(int mvflags, int *mindx) num_gone(int mvflags, int *mindx)
{ {
+5 -5
View File
@@ -965,7 +965,7 @@ merged(struct obj **potmp, struct obj **pobj)
* addinv) or when an object in the hero's inventory has been polymorphed * addinv) or when an object in the hero's inventory has been polymorphed
* in-place. * in-place.
* *
* It may be valid to merge this code with with addinv_core2(). * It may be valid to merge this code with addinv_core2().
*/ */
void void
addinv_core1(struct obj *obj) addinv_core1(struct obj *obj)
@@ -1210,7 +1210,7 @@ hold_another_object(
dropy(obj); /* now put it back again :-) */ dropy(obj); /* now put it back again :-) */
return obj; return obj;
} else if (wasUpolyd && !Upolyd) { } else if (wasUpolyd && !Upolyd) {
/* loose your grip if you revert your form */ /* lose your grip if you revert your form */
if (drop_fmt) if (drop_fmt)
pline(drop_fmt, drop_arg); pline(drop_fmt, drop_arg);
obj_extract_self(obj); obj_extract_self(obj);
@@ -1412,7 +1412,7 @@ delobj_core(
boolean update_map; boolean update_map;
/* obj_resists(obj,0,0) protects the Amulet, the invocation tools, /* obj_resists(obj,0,0) protects the Amulet, the invocation tools,
and Rider corspes */ and Rider corpses */
if (!force && obj_resists(obj, 0, 0)) { if (!force && obj_resists(obj, 0, 0)) {
/* player might be doing something stupid, but we /* player might be doing something stupid, but we
* can't guarantee that. assume special artifacts * can't guarantee that. assume special artifacts
@@ -1793,7 +1793,7 @@ getobj(
*bp++ = HANDS_SYM; *bp++ = HANDS_SYM;
*bp++ = ' '; /* put a space after the '-' in the prompt */ *bp++ = ' '; /* put a space after the '-' in the prompt */
break; break;
case GETOBJ_DOWNPLAY: /* acceptable but not shown as likely chioce */ case GETOBJ_DOWNPLAY: /* acceptable but not shown as likely choice */
case GETOBJ_EXCLUDE_INACCESS: /* nothing currently gives this for '-' but case GETOBJ_EXCLUDE_INACCESS: /* nothing currently gives this for '-' but
* theoretically could if wearing gloves */ * theoretically could if wearing gloves */
case GETOBJ_EXCLUDE_SELECTABLE: /* ditto, I think... */ case GETOBJ_EXCLUDE_SELECTABLE: /* ditto, I think... */
@@ -5106,7 +5106,7 @@ dopramulet(void)
/* using display_inventory() instead of prinv() allows player /* using display_inventory() instead of prinv() allows player
to use 'm "' to force and menu and be able to choose amulet to use 'm "' to force and menu and be able to choose amulet
in order to perform a context-sensitve item action */ in order to perform a context-sensitive item action */
lets[0] = obj_to_let(uamul), lets[1] = '\0'; lets[0] = obj_to_let(uamul), lets[1] = '\0';
(void) dispinv_with_action(lets, TRUE, "Amulet"); (void) dispinv_with_action(lets, TRUE, "Amulet");
+1 -1
View File
@@ -188,7 +188,7 @@ m_initweap(struct monst *mtmp)
if (!rn2(3)) { if (!rn2(3)) {
/* lance and dwarvish mattock used to be in midst of /* lance and dwarvish mattock used to be in midst of
the polearms but use different skills from polearms the polearms but use different skills from polearms
and aren't appropriates choices for human soliders */ and aren't appropriates choices for human soldiers */
do { do {
w1 = rn1(BEC_DE_CORBIN - PARTISAN + 1, PARTISAN); w1 = rn1(BEC_DE_CORBIN - PARTISAN + 1, PARTISAN);
} while (objects[w1].oc_skill != P_POLEARMS); } while (objects[w1].oc_skill != P_POLEARMS);
+2 -2
View File
@@ -811,7 +811,7 @@ engulf_target(struct monst *magr, struct monst *mdef)
return FALSE; return FALSE;
/* if attacker is phasing in solid rock and defender can't move there, /* if attacker is phasing in solid rock and defender can't move there,
or vice versa, don't allow engulf to succeeed; otherwise expelling or vice versa, don't allow engulf to succeed; otherwise expelling
might not be able to place attacker and defender both back on map; might not be able to place attacker and defender both back on map;
when defender is the hero, a sanity_check complaint about placing when defender is the hero, a sanity_check complaint about placing
the hero on top of a monster can occur */ the hero on top of a monster can occur */
@@ -886,7 +886,7 @@ gulpmm(
dx = mdef->mx; dx = mdef->mx;
dy = mdef->my; dy = mdef->my;
/* /*
* Leave the defender in the monster chain at it's current position, * Leave the defender in the monster chain at its current position,
* but don't leave it on the screen. Move the aggressor to the * but don't leave it on the screen. Move the aggressor to the
* defender's position. * defender's position.
*/ */
+1 -1
View File
@@ -477,7 +477,7 @@ mattacku(struct monst *mtmp)
/* Orcs like to steal and eat horses and the like */ /* Orcs like to steal and eat horses and the like */
if (!rn2(is_orc(mtmp->data) ? 2 : 4) && m_next2u(mtmp)) { if (!rn2(is_orc(mtmp->data) ? 2 : 4) && m_next2u(mtmp)) {
/* attack your steed instead; 'bhitpos' and 'notonhead' are /* attack your steed instead; 'bhitpos' and 'notonhead' are
already set from tagetting hero */ already set from targeting hero */
i = mattackm(mtmp, u.usteed); i = mattackm(mtmp, u.usteed);
if ((i & M_ATTK_AGR_DIED) != 0) if ((i & M_ATTK_AGR_DIED) != 0)
return 1; return 1;
+2 -2
View File
@@ -628,7 +628,7 @@ clear_splitobjs(void)
* the caller to provide a valid context for the swap. When done, obj will * the caller to provide a valid context for the swap. When done, obj will
* still exist, but not on any chain. * still exist, but not on any chain.
* *
* Note: Don't use use obj_extract_self() -- we are doing an in-place swap, * Note: Don't use obj_extract_self() -- we are doing an in-place swap,
* not actually moving something. * not actually moving something.
*/ */
void void
@@ -1508,7 +1508,7 @@ shrink_glob(
/* format "Your/Shk's/The [partly eaten] glob of <goo>" into /* format "Your/Shk's/The [partly eaten] glob of <goo>" into
globnambuf[] before shrinking the glob; Yname2() calls yname() globnambuf[] before shrinking the glob; Yname2() calls yname()
which calls xname() which ordinarly leaves "partly eaten" to which calls xname() which ordinarily leaves "partly eaten" to
doname() rather than inserting that itself; ask xname() to add doname() rather than inserting that itself; ask xname() to add
that when appropriate */ that when appropriate */
iflags.partly_eaten_hack = TRUE; iflags.partly_eaten_hack = TRUE;
+4 -4
View File
@@ -1671,7 +1671,7 @@ mpickstuff(struct monst *mtmp)
} }
obj_extract_self(otmp3); /* remove from floor */ obj_extract_self(otmp3); /* remove from floor */
(void) mpickobj(mtmp, otmp3); /* may merge and free otmp3 */ (void) mpickobj(mtmp, otmp3); /* may merge and free otmp3 */
/* let them try and equip it on the next turn */ /* let them try to equip it on the next turn */
check_gear_next_turn(mtmp); check_gear_next_turn(mtmp);
newsym(mtmp->mx, mtmp->my); newsym(mtmp->mx, mtmp->my);
return TRUE; /* pick only one object */ return TRUE; /* pick only one object */
@@ -4316,7 +4316,7 @@ maybe_unhide_at(coordxy x, coordxy y)
} }
/* monster/hero tries to hide under something at the current location; /* monster/hero tries to hide under something at the current location;
if used by monster creation, should only happen during during level if used by monster creation, should only happen during level
creation, otherwise there will be message sequencing issues */ creation, otherwise there will be message sequencing issues */
boolean boolean
hideunder(struct monst *mtmp) hideunder(struct monst *mtmp)
@@ -4875,7 +4875,7 @@ newcham(
if (is_rider(olddata)) if (is_rider(olddata))
return 0; return 0;
/* make Nazgul and erinyes immune too, to reduce chance of /* make Nazgul and erinyes immune too, to reduce chance of
anomalous extinction feedback during final disclsoure */ anomalous extinction feedback during final disclosure */
if (mbirth_limit(monsndx(olddata)) < MAXMONNO) if (mbirth_limit(monsndx(olddata)) < MAXMONNO)
return 0; return 0;
/* cancelled shapechangers become uncancelled prior /* cancelled shapechangers become uncancelled prior
@@ -5309,7 +5309,7 @@ angry_guards(boolean silent)
if (nct) { /* seen/sensed adjacent guard(s) */ if (nct) { /* seen/sensed adjacent guard(s) */
Sprintf(buf, "guard%s", plur(nct)); Sprintf(buf, "guard%s", plur(nct));
pline_The("%s %s angry!", buf, vtense(buf, "get")); pline_The("%s %s angry!", buf, vtense(buf, "get"));
} else if (sct) { /* seen/sensed non-adjcent guard(s) */ } else if (sct) { /* seen/sensed non-adjacent guard(s) */
Sprintf(buf, "guard%s", plur(sct)); Sprintf(buf, "guard%s", plur(sct));
pline("%s %s %s approaching!", pline("%s %s %s approaching!",
(sct == 1) ? "An angry" : "Angry", (sct == 1) ? "An angry" : "Angry",
+1 -1
View File
@@ -311,7 +311,7 @@ disturb(struct monst *mtmp)
* not stealthy or (mon is an ettin and 9/10) AND * not stealthy or (mon is an ettin and 9/10) AND
* (mon is not a nymph, jabberwock, or leprechaun) or 1/50 AND * (mon is not a nymph, jabberwock, or leprechaun) or 1/50 AND
* Aggravate or mon is (dog or human) or * Aggravate or mon is (dog or human) or
* (1/7 and mon is not mimicing furniture or object) * (1/7 and mon is not mimicking furniture or object)
*/ */
if (couldsee(mtmp->mx, mtmp->my) && mdistu(mtmp) <= 100 if (couldsee(mtmp->mx, mtmp->my) && mdistu(mtmp) <= 100
&& (!Stealth || (mtmp->data == &mons[PM_ETTIN] && rn2(10))) && (!Stealth || (mtmp->data == &mons[PM_ETTIN] && rn2(10)))
+1 -1
View File
@@ -657,7 +657,7 @@ do_improvisation(struct obj *instr)
(do_spec && same_old_song) (do_spec && same_old_song)
? "produces a familiar, lilting melody" ? "produces a familiar, lilting melody"
: (do_spec) ? "produces a lilting melody" : (do_spec) ? "produces a lilting melody"
: (same_old_song) ? "twangs a familar tune" : (same_old_song) ? "twangs a familiar tune"
: "twangs"); : "twangs");
else else
You_feel("soothing vibrations."); You_feel("soothing vibrations.");
+1 -1
View File
@@ -868,7 +868,7 @@ l_selection_gradient(lua_State *L)
cvt_to_abscoord(&x, &y); cvt_to_abscoord(&x, &y);
cvt_to_abscoord(&x2, &y2); cvt_to_abscoord(&x2, &y2);
/* maxdist is required because there's no obvious default value for it, /* maxdist is required because there's no obvious default value for it,
* whereas mindist has an obvious defalt of 0 */ * whereas mindist has an obvious default of 0 */
maxdist = get_table_int(L, "maxdist"); maxdist = get_table_int(L, "maxdist");
mindist = get_table_int_opt(L, "mindist", 0); mindist = get_table_int_opt(L, "mindist", 0);
+6 -6
View File
@@ -423,7 +423,7 @@ fruit_from_name(
char *altfname; char *altfname;
unsigned k; unsigned k;
/* /*
* note: named fruits are case-senstive... * note: named fruits are case-sensitive...
*/ */
if (highest_fid) if (highest_fid)
@@ -663,7 +663,7 @@ xname_flags(
case VENOM_CLASS: case VENOM_CLASS:
case TOOL_CLASS: case TOOL_CLASS:
/* note: lenses or towel prefix would overwrite poisoned weapon /* note: lenses or towel prefix would overwrite poisoned weapon
prefix if both were simultaneously posssible, but they aren't */ prefix if both were simultaneously possible, but they aren't */
if (typ == LENSES) if (typ == LENSES)
Strcpy(buf, "pair of "); Strcpy(buf, "pair of ");
else if (is_wet_towel(obj)) else if (is_wet_towel(obj))
@@ -1539,7 +1539,7 @@ doname_base(
: "weapon in", : "weapon in",
hand_s); hand_s);
/* we just added a parenthesized pharse, but the right paren /* we just added a parenthesized phrase, but the right paren
might be absent if the appended string got truncated */ might be absent if the appended string got truncated */
if (!Blind && bpspaceleft && bp_eos[-1] == ')') { if (!Blind && bpspaceleft && bp_eos[-1] == ')') {
if (gw.warn_obj_cnt && obj == uwep if (gw.warn_obj_cnt && obj == uwep
@@ -3995,7 +3995,7 @@ readobjnam_preparse(struct _readobjnam_data *d)
and less than 15 (owt < 300) */ and less than 15 (owt < 300) */
d->gsize = 2; d->gsize = 2;
} else if (!strncmpi(d->bp, "large ", l = 6)) { } else if (!strncmpi(d->bp, "large ", l = 6)) {
/* "large" might be part of monster name (dog, cat, koboold, /* "large" might be part of monster name (dog, cat, kobold,
mimic) or object name (box, round shield) rather than mimic) or object name (box, round shield) rather than
prefix for glob size */ prefix for glob size */
if (strncmpi(d->bp + l, "glob", 4) && !strstri(d->bp + l, " glob")) if (strncmpi(d->bp + l, "glob", 4) && !strstri(d->bp + l, " glob"))
@@ -4198,7 +4198,7 @@ readobjnam_postparse1(struct _readobjnam_data *d)
* referred to as a "pair of". E.g. We should double if the player * referred to as a "pair of". E.g. We should double if the player
* types "pair of spears", but not if the player types "pair of * types "pair of spears", but not if the player types "pair of
* lenses". Luckily (?) all objects that are referred to as pairs * lenses". Luckily (?) all objects that are referred to as pairs
* -- boots, gloves, and lenses -- are also not mergable, so cnt is * -- boots, gloves, and lenses -- are also not mergeable, so cnt is
* ignored anyway. * ignored anyway.
*/ */
if (!strncmpi(d->bp, "pair of ", 8)) { if (!strncmpi(d->bp, "pair of ", 8)) {
@@ -5440,7 +5440,7 @@ shield_simple_name(struct obj *shield)
return "shield"; return "shield";
} }
/* for completness */ /* for completeness */
const char * const char *
shirt_simple_name(struct obj *shirt UNUSED) shirt_simple_name(struct obj *shirt UNUSED)
{ {
+6 -6
View File
@@ -161,7 +161,7 @@ static const struct paranoia_opts {
latter requires at least two letters; "e"at vs "ex"plore, latter requires at least two letters; "e"at vs "ex"plore,
"cont"inue eating vs "C"onfirm; "wand"-break vs "Were"-change, "cont"inue eating vs "C"onfirm; "wand"-break vs "Were"-change,
both require at least two letters during config processing but use both require at least two letters during config processing but use
one letter with case-senstivity for 'm O's interactive menu; one letter with case-sensitivity for 'm O's interactive menu;
if any entry or alias beginning with 'n' gets added, aside from "none", if any entry or alias beginning with 'n' gets added, aside from "none",
the parsing to accept "nofoo" to mean "!foo" will need fixing */ the parsing to accept "nofoo" to mean "!foo" will need fixing */
{ PARANOID_CONFIRM, "Confirm", 1, "Paranoia", 2, { PARANOID_CONFIRM, "Confirm", 1, "Paranoia", 2,
@@ -263,7 +263,7 @@ static NEARDATA const char *perminv_modes[][3] = {
* + a number or '#' - reserved for counts * + a number or '#' - reserved for counts
* + an upper or lower case US ASCII letter - used for accelerators * + an upper or lower case US ASCII letter - used for accelerators
* + ESC - reserved for escaping the menu * + ESC - reserved for escaping the menu
* + NULL, CR or LF - reserved for commiting the selection(s). NULL * + NULL, CR or LF - reserved for committing the selection(s). NULL
* is kind of odd, but the tty's xwaitforspace() will return it if * is kind of odd, but the tty's xwaitforspace() will return it if
* someone hits a <ret>. * someone hits a <ret>.
* + a default object class symbol - used for object class accelerators * + a default object class symbol - used for object class accelerators
@@ -3222,7 +3222,7 @@ optfn_pickup_types(
op = tbuf; /* restore */ op = tbuf; /* restore */
else if (abuf[0] == 'm') else if (abuf[0] == 'm')
use_menu = TRUE; use_menu = TRUE;
/* note: abuf[0]=='a' is already handled via clearing the /* note: abuf[0]=='a' is already handled via clearing
the old value (above) as a default action */ the old value (above) as a default action */
} }
if (use_menu) { if (use_menu) {
@@ -6382,7 +6382,7 @@ handler_windowborders(void)
mode_name = windowborders_text[i]; mode_name = windowborders_text[i];
any.a_int = i + 1; any.a_int = i + 1;
/* index 'i' matches the numeric setting for windowborders, /* index 'i' matches the numeric setting for windowborders,
so allow corresponding digit as group accellerator */ so allow corresponding digit as group accelerator */
add_menu(tmpwin, &nul_glyphinfo, &any, 'a' + i, '0' + i, add_menu(tmpwin, &nul_glyphinfo, &any, 'a' + i, '0' + i,
ATR_NONE, clr, mode_name, MENU_ITEMFLAGS_NONE); ATR_NONE, clr, mode_name, MENU_ITEMFLAGS_NONE);
} }
@@ -6896,7 +6896,7 @@ initoptions_init(void)
&& !strcmpi(windowprocs.name, gc.cmdline_windowsys)) && !strcmpi(windowprocs.name, gc.cmdline_windowsys))
/* ignore any windowtype:foo in RC file or NETHACKOPTIONS */ /* ignore any windowtype:foo in RC file or NETHACKOPTIONS */
iflags.windowtype_locked = TRUE; iflags.windowtype_locked = TRUE;
/* should't need cmdline_windowsys beyond here */ /* shouldn't need cmdline_windowsys beyond here */
free((genericptr_t) gc.cmdline_windowsys), free((genericptr_t) gc.cmdline_windowsys),
gc.cmdline_windowsys = NULL; gc.cmdline_windowsys = NULL;
} }
@@ -9538,7 +9538,7 @@ int
sym_val(const char *strval) /* up to 4*BUFSZ-1 long; only first few sym_val(const char *strval) /* up to 4*BUFSZ-1 long; only first few
chars matter */ chars matter */
{ {
char buf[QBUFSZ], tmp[QBUFSZ]; /* to hold trucated copy of 'strval' */ char buf[QBUFSZ], tmp[QBUFSZ]; /* to hold truncated copy of 'strval' */
buf[0] = '\0'; buf[0] = '\0';
if (!strval[0] || !strval[1]) { /* empty, or single character */ if (!strval[0] || !strval[1]) { /* empty, or single character */
+1 -1
View File
@@ -1853,7 +1853,7 @@ pickup_object(
if (res <= 0) if (res <= 0)
return res; return res;
/* Whats left of the special case for gold :-) */ /* What's left of the special case for gold :-) */
if (obj->oclass == COIN_CLASS) if (obj->oclass == COIN_CLASS)
disp.botl = TRUE; disp.botl = TRUE;
if (obj->quan != count && obj->otyp != LOADSTONE) if (obj->quan != count && obj->otyp != LOADSTONE)
+1 -1
View File
@@ -258,7 +258,7 @@ in_trouble(void)
&& (!u.uswallow && (!u.uswallow
|| !attacktype_fordmg(u.ustuck->data, AT_ENGL, AD_BLND))) || !attacktype_fordmg(u.ustuck->data, AT_ENGL, AD_BLND)))
return TROUBLE_BLIND; return TROUBLE_BLIND;
/* deafness isn't it's own trouble; healing magic cures deafness /* deafness isn't its own trouble; healing magic cures deafness
when it cures blindness, so do the same with trouble repair */ when it cures blindness, so do the same with trouble repair */
if ((HDeaf & TIMEOUT) > 1L) if ((HDeaf & TIMEOUT) > 1L)
return TROUBLE_BLIND; return TROUBLE_BLIND;
+1 -1
View File
@@ -550,7 +550,7 @@ restgamestate(NHFILE *nhfp)
of unpaid items before shopkeeper's bill is available is a no-no; of unpaid items before shopkeeper's bill is available is a no-no;
named fruit names aren't accessible yet either named fruit names aren't accessible yet either
[3.6.2: moved perm_invent from flags to iflags to keep it out of [3.6.2: moved perm_invent from flags to iflags to keep it out of
save files; retaining the override here is simpler than trying to save files; retaining the override here is simpler than trying
to figure out where it really belongs now] */ to figure out where it really belongs now] */
defer_perm_invent = iflags.perm_invent; defer_perm_invent = iflags.perm_invent;
iflags.perm_invent = FALSE; iflags.perm_invent = FALSE;
+2 -2
View File
@@ -2082,7 +2082,7 @@ role_init(void)
* place where it actually matters for the hero is in set_uasmon() * place where it actually matters for the hero is in set_uasmon()
* and that can use mons[race] rather than mons[role] for this * and that can use mons[race] rather than mons[role] for this
* particular property. Despite the comment, it is checked--where * particular property. Despite the comment, it is checked--where
* needed--via instrinsic 'Infravision' which set_uasmon() manages. * needed--via intrinsic 'Infravision' which set_uasmon() manages.
*/ */
/* Fix up infravision */ /* Fix up infravision */
if (mons[gu.urace.mnum].mflags3 & M3_INFRAVISION) { if (mons[gu.urace.mnum].mflags3 & M3_INFRAVISION) {
@@ -2876,7 +2876,7 @@ setup_rolemenu(
} }
} }
/* !filtering implies reset_role_filtering() where we want to /* !filtering implies reset_role_filtering() where we want to
mark this role as preseleted if current filter excludes it */ mark this role as preselected if current filter excludes it */
add_menu(win, &nul_glyphinfo, &any, thisch, 0, add_menu(win, &nul_glyphinfo, &any, thisch, 0,
ATR_NONE, clr, an(rolenamebuf), ATR_NONE, clr, an(rolenamebuf),
(!filtering && !role_ok) (!filtering && !role_ok)
+3 -3
View File
@@ -170,7 +170,7 @@ getrumor(
(void) dlb_fclose(rumors); (void) dlb_fclose(rumors);
if (count >= 50) if (count >= 50)
impossible("Can't find non-cookie rumor?"); impossible("Can't find non-cookie rumor?");
else if (!gi.in_mklev) /* avoid exercizing wisdom for graffiti */ else if (!gi.in_mklev) /* avoid exercising wisdom for graffiti */
exercise(A_WIS, (adjtruth > 0)); exercise(A_WIS, (adjtruth > 0));
} else { } else {
couldnt_open_file(RUMORFILE); couldnt_open_file(RUMORFILE);
@@ -444,7 +444,7 @@ get_rnd_line(
return buf; return buf;
/* 'rumors' is about 3/4 of the way to the limit on a 16-bit config /* 'rumors' is about 3/4 of the way to the limit on a 16-bit config
for the whole, roughly 3/8 of the way for either half; all active for the whole, roughly 3/8 of the way for either half; all active
configuations these days are at least 32-bits anyway */ configurations these days are at least 32-bits anyway */
nhassert(filechunksize <= INT_MAX); /* essential for rn2() */ nhassert(filechunksize <= INT_MAX); /* essential for rn2() */
/* /*
@@ -836,7 +836,7 @@ init_CapMons(void)
unsigned mndx, mgend; unsigned mndx, mgend;
/* the first CapMonstCnt entries come from mons[].pmnames[] and /* the first CapMonstCnt entries come from mons[].pmnames[] and
the next CapBogonCnt entries from from the 'bogusmons' file; the next CapBogonCnt entries from the 'bogusmons' file;
there is an extra entry for Null at the end, but that is only there is an extra entry for Null at the end, but that is only
useful to force non-zero array size in case both mons[] and useful to force non-zero array size in case both mons[] and
bogusmons get modified to have no applicable monster names */ bogusmons get modified to have no applicable monster names */
+1 -1
View File
@@ -46,7 +46,7 @@ static FILE *bw_FILE[MAXFD] = {0,0,0,0,0};
* Once buffered IO (stdio) has been enabled on the file * Once buffered IO (stdio) has been enabled on the file
* associated with a descriptor via fdopen(): * associated with a descriptor via fdopen():
* *
* 1. If you use bufoff and bufon to try and toggle the * 1. If you use bufoff and bufon to try to toggle the
* use of write vs fwrite; the code just tracks which * use of write vs fwrite; the code just tracks which
* routine is to be called through the tracking * routine is to be called through the tracking
* variables and acts accordingly. * variables and acts accordingly.
+3 -3
View File
@@ -828,7 +828,7 @@ pick_pick(struct obj *obj)
} }
/* /*
Decide whether two unpaid items are mergable; caller is responsible for Decide whether two unpaid items are mergeable; caller is responsible for
making sure they're unpaid and the same type of object; we check the price making sure they're unpaid and the same type of object; we check the price
quoted by the shopkeeper and also that they both belong to the same shk. quoted by the shopkeeper and also that they both belong to the same shk.
*/ */
@@ -1094,7 +1094,7 @@ obfree(struct obj *obj, struct obj *merge)
if (!merge) { if (!merge) {
bp->useup = 1; bp->useup = 1;
obj->unpaid = 0; /* only for doinvbill */ obj->unpaid = 0; /* only for doinvbill */
/* for used up glob, put back origial weight in case it gets /* for used up glob, put back original weight in case it gets
formatted ('I x' or itemized billing) with 'wizweight' On */ formatted ('I x' or itemized billing) with 'wizweight' On */
if (obj->globby && !obj->owt && has_omid(obj)) if (obj->globby && !obj->owt && has_omid(obj))
obj->owt = OMID(obj); obj->owt = OMID(obj);
@@ -1712,7 +1712,7 @@ dopay(void)
/* allow 'm p' to request a menu for menustyle:traditional; /* allow 'm p' to request a menu for menustyle:traditional;
for other styles, it will do the opposite; that doesn't make for other styles, it will do the opposite; that doesn't make
a whole lot of sense for a 'request-menu' prefix, but otherwise a whole lot of sense for a 'request-menu' prefix, but otherwise
it would simply be reduncant and there wouldn't be any way to it would simply be redundant and there wouldn't be any way to
skip the menu when hero owes for multiple items */ skip the menu when hero owes for multiple items */
if (iflags.menu_requested) if (iflags.menu_requested)
via_menu = !via_menu; via_menu = !via_menu;
+1 -1
View File
@@ -1461,7 +1461,7 @@ tiphat(void)
for (range = 1; range <= BOLT_LIM + 1; ++range) { for (range = 1; range <= BOLT_LIM + 1; ++range) {
x += u.dx, y += u.dy; x += u.dx, y += u.dy;
if (!isok(x, y) || (range > 1 && !couldsee(x, y))) { if (!isok(x, y) || (range > 1 && !couldsee(x, y))) {
/* switch back to coordinates for previous interation's 'mtmp' */ /* switch back to coordinates for previous iteration's 'mtmp' */
x -= u.dx, y -= u.dy; x -= u.dx, y -= u.dy;
break; break;
} }
+2 -2
View File
@@ -3491,7 +3491,7 @@ lspo_object(lua_State *L)
0, /* buried */ 0, /* buried */
0, /* lit */ 0, /* lit */
0, 0, 0, 0, /* eroded, locked, trapped, recharged */ 0, 0, 0, 0, /* eroded, locked, trapped, recharged */
0, 0, 0, 0, /* invis, greased, broken, achievment */ 0, 0, 0, 0, /* invis, greased, broken, achievement */
}; };
#if 0 #if 0
int nparams = 0; int nparams = 0;
@@ -7062,7 +7062,7 @@ static const struct luaL_Reg nhl_functions[] = {
- automatically add shuffle(array) - automatically add shuffle(array)
- automatically add align = { "law", "neutral", "chaos" } and shuffle it. - automatically add align = { "law", "neutral", "chaos" } and shuffle it.
(remove from lua files) (remove from lua files)
- grab the header comments from des-files and add add them to the lua files - grab the header comments from des-files and add them to the lua files
*/ */
+1 -1
View File
@@ -246,7 +246,7 @@ remove_worn_item(
* but that would need a lot more cooperation by callers. It's a * but that would need a lot more cooperation by callers. It's a
* tradeoff between protecting the player against unintentional hangup * tradeoff between protecting the player against unintentional hangup
* and defending the game against deliberate hangup when player sees a * and defending the game against deliberate hangup when player sees a
* message about something undesireable followed by --More--. * message about something undesirable followed by --More--.
*/ */
oldinuse = obj->in_use; oldinuse = obj->in_use;
obj->in_use = 1; obj->in_use = 1;
+2 -2
View File
@@ -557,7 +557,7 @@ teleds(coordxy nux, coordxy nuy, int teleds_flags)
int int
collect_coords( collect_coords(
coord *ccc, /* pointer to array of at least size ROWNO*(COLNO-1) */ coord *ccc, /* pointer to array of at least size ROWNO*(COLNO-1) */
coordxy cx, coordxy cy, /* center point, not necessarly <u.ux,u.uy> */ coordxy cx, coordxy cy, /* center point, not necessarily <u.ux,u.uy> */
int maxradius, /* how far from center to go collecting spots; int maxradius, /* how far from center to go collecting spots;
* 0 means collect entire map */ * 0 means collect entire map */
unsigned cc_flags, /* incl_center: put <cx,cy> in output list unsigned cc_flags, /* incl_center: put <cx,cy> in output list
@@ -621,7 +621,7 @@ collect_coords(
* (unshown) 4's will be mixed together, and so forth. * (unshown) 4's will be mixed together, and so forth.
* *
* If caller processes the output list in order, the closest viable * If caller processes the output list in order, the closest viable
* spot will be chosen. If a compeletely random spot is preferred, * spot will be chosen. If a completely random spot is preferred,
* the list can be requested to be unscrambled and then the caller * the list can be requested to be unscrambled and then the caller
* can shuffle it, overriding the collection rings. A filter function * can shuffle it, overriding the collection rings. A filter function
* could be used to skip everything after the first acceptable spot. * could be used to skip everything after the first acceptable spot.
+3 -3
View File
@@ -815,7 +815,7 @@ nh_timeout(void)
Your("temporary ability to survive burning has ended."); Your("temporary ability to survive burning has ended.");
break; break;
case WWALKING: case WWALKING:
/* [see fire reeistance] */ /* [see fire resistance] */
if (!Wwalking) if (!Wwalking)
Your("temporary ability to walk on liquid has ended."); Your("temporary ability to walk on liquid has ended.");
break; break;
@@ -1315,7 +1315,7 @@ lantern_message(struct obj *obj)
} }
/* /*
* Timeout callback for for objects that are burning. E.g. lamps, candles. * Timeout callback for objects that are burning. E.g. lamps, candles.
* See begin_burn() for meanings of obj->age and obj->spe. * See begin_burn() for meanings of obj->age and obj->spe.
*/ */
void void
@@ -2016,7 +2016,7 @@ wiz_timeout_queue(void)
intrinsic = u.uprops[p].intrinsic; intrinsic = u.uprops[p].intrinsic;
if (intrinsic & TIMEOUT) { if (intrinsic & TIMEOUT) {
if (specindx > 0 && i >= specindx) { if (specindx > 0 && i >= specindx) {
putstr(win, 0, " -- settable via #wizinstrinc only --"); putstr(win, 0, " -- settable via #wizintrinsic only --");
specindx = 0; specindx = 0;
} }
/* timeout value can be up to 16777215 (0x00ffffff) but /* timeout value can be up to 16777215 (0x00ffffff) but
+1 -1
View File
@@ -4994,7 +4994,7 @@ drain_en(int n, boolean max_already_drained)
/* /*
* FIXME? * FIXME?
* u.uenmax should probably have a higher mininum than 0; * u.uenmax should probably have a higher minimum than 0;
* perhaps u.ulevel or (u.ulevel + 1) / 2 * perhaps u.ulevel or (u.ulevel + 1) / 2
*/ */
if (u.uenmax < 1) { if (u.uenmax < 1) {
+5 -5
View File
@@ -837,7 +837,7 @@ hmon_hitmon_barehands(struct _hitmon_data *hmd, struct monst *mon)
if (hmd->mdat == &mons[PM_SHADE]) { if (hmd->mdat == &mons[PM_SHADE]) {
hmd->dmg = 0; hmd->dmg = 0;
} else { } else {
/* note: 1..2 or 1..4 can be substantiallly increased by /* note: 1..2 or 1..4 can be substantially increased by
strength bonus or skill bonus, usually both... */ strength bonus or skill bonus, usually both... */
hmd->dmg = rnd(!martial_bonus() ? 2 : 4); hmd->dmg = rnd(!martial_bonus() ? 2 : 4);
hmd->use_weapon_skill = TRUE; hmd->use_weapon_skill = TRUE;
@@ -1393,8 +1393,8 @@ hmon_hitmon_dmg_recalc(struct _hitmon_data *hmd, struct obj *obj)
for dual attacks, 3/4 of the strength bonus is used; when for dual attacks, 3/4 of the strength bonus is used; when
both attacks hit, overall bonus is 3/2 rather than doubled; both attacks hit, overall bonus is 3/2 rather than doubled;
melee hit with two-handed weapon uses 3/2 strength bonus to melee hit with two-handed weapon uses 3/2 strength bonus to
appoximately match double hit with two-weapon ('approximate' approximately match double hit with two-weapon ('approximate'
becase udaminc skews in favor of two-weapon); the 3/2 factor because udaminc skews in favor of two-weapon); the 3/2 factor
for two-handed strength does not apply to polearms unless for two-handed strength does not apply to polearms unless
hero is simply bashing with one of those and does not apply hero is simply bashing with one of those and does not apply
to jousting because lances are one-handed */ to jousting because lances are one-handed */
@@ -2813,7 +2813,7 @@ mhitm_ad_tlpt(
if (Half_physical_damage) if (Half_physical_damage)
mhm->damage *= 2; /* doesn't actually increase damage; mhm->damage *= 2; /* doesn't actually increase damage;
* we only get here if half the * we only get here if half the
* original damage would would have * original damage would have
* been fatal, so double reduced * been fatal, so double reduced
* damage will be less than original */ * damage will be less than original */
if (mhm->damage < 1) { /* implies (tmphp <= 1) */ if (mhm->damage < 1) { /* implies (tmphp <= 1) */
@@ -5308,7 +5308,7 @@ hmonas(struct monst *mon)
be Null, and we want to track that for passive() */ be Null, and we want to track that for passive() */
originalweapon = (altwep && uswapwep) ? &uswapwep : &uwep; originalweapon = (altwep && uswapwep) ? &uswapwep : &uwep;
if (uswapwep /* set up 'altwep' flag for next iteration */ if (uswapwep /* set up 'altwep' flag for next iteration */
/* only consider seconary when wielding one-handed primary */ /* only consider secondary when wielding one-handed primary */
&& uwep && (uwep->oclass == WEAPON_CLASS || is_weptool(uwep)) && uwep && (uwep->oclass == WEAPON_CLASS || is_weptool(uwep))
&& !bimanual(uwep) && !bimanual(uwep)
/* only switch if not wearing shield and not at artifact; /* only switch if not wearing shield and not at artifact;
+1 -1
View File
@@ -314,7 +314,7 @@ glyph_find_core(const char *id, struct find_struct *findwhat)
actual comparison part by generating them once, ahead of the actual comparison part by generating them once, ahead of the
bulk of the potential parsings. We can later free up bulk of the potential parsings. We can later free up
all the memory those names consumed once the bulk parsing is all the memory those names consumed once the bulk parsing is
overwith. over with.
*/ */
+1 -1
View File
@@ -466,7 +466,7 @@ invault(void)
return; return;
} }
if (Strangled || is_silent(gy.youmonst.data) || gm.multi < 0) { if (Strangled || is_silent(gy.youmonst.data) || gm.multi < 0) {
/* [we ought to record whether this this message has already /* [we ought to record whether this message has already
been given in order to vary it upon repeat visits, but been given in order to vary it upon repeat visits, but
discarding the monster and its egd data renders that hard] */ discarding the monster and its egd data renders that hard] */
if (Deaf) { if (Deaf) {
+1 -1
View File
@@ -407,7 +407,7 @@ check_version(
return TRUE; return TRUE;
} }
/* this used to be based on file date and somewhat OS-dependant, /* this used to be based on file date and somewhat OS-dependent,
but now examines the initial part of the file's contents */ but now examines the initial part of the file's contents */
boolean boolean
uptodate(NHFILE *nhfp, const char *name, unsigned long utdflags) uptodate(NHFILE *nhfp, const char *name, unsigned long utdflags)
+3 -3
View File
@@ -173,7 +173,7 @@ does_block(int x, int y, struct rm *lev)
if (obj->otyp == BOULDER) if (obj->otyp == BOULDER)
return 1; return 1;
/* Mimics mimicing a door or boulder or ... block light. */ /* Mimics mimicking a door or boulder or ... block light. */
if ((mon = m_at(x, y)) && (!mon->minvis || See_invisible) if ((mon = m_at(x, y)) && (!mon->minvis || See_invisible)
&& is_lightblocker_mappear(mon)) && is_lightblocker_mappear(mon))
return 1; return 1;
@@ -797,7 +797,7 @@ vision_recalc(int control)
/* /*
* At this point we know that the row position is *not* in normal * At this point we know that the row position is *not* in normal
* sight. That is, the position is could be seen, but is dark * sight. That is, the position could be seen, but is dark
* or LOS is just plain blocked. * or LOS is just plain blocked.
* *
* Update the position if: * Update the position if:
@@ -805,7 +805,7 @@ vision_recalc(int control)
* the glyph -- E.g. darken room spot, etc. * the glyph -- E.g. darken room spot, etc.
* o If we now could see the location (yet the location is not * o If we now could see the location (yet the location is not
* lit), but previously we couldn't see the location, or vice * lit), but previously we couldn't see the location, or vice
* versa. Update the spot because there there may be an * versa. Update the spot because there may be an
* infrared monster there. * infrared monster there.
*/ */
} else { } else {
+1 -1
View File
@@ -1776,7 +1776,7 @@ adjust_menu_promptstyle(winid window, color_attr *style)
} }
/* /*
* Common code point leading into the interface-specifc * Common code point leading into the interface-specific
* add_menu() to allow single-spot adjustments to the parameters, * add_menu() to allow single-spot adjustments to the parameters,
* such as those done by menu_colors. * such as those done by menu_colors.
*/ */
+1 -1
View File
@@ -610,7 +610,7 @@ nasty(struct monst *summoner)
* and 20 are neutral. [These numbers are up date for * and 20 are neutral. [These numbers are up date for
* 3.7.0; the ones in the next paragraph are not....] * 3.7.0; the ones in the next paragraph are not....]
* *
* Neutral caster, used for late-game harrassment, * Neutral caster, used for late-game harassment,
* has 18/42 chance to stop the inner loop on each * has 18/42 chance to stop the inner loop on each
* critter, 24/42 chance for another iteration. * critter, 24/42 chance for another iteration.
* Lawful caster has 28/42 chance to stop unless the * Lawful caster has 28/42 chance to stop unless the
+3 -3
View File
@@ -508,7 +508,7 @@ bhitm(struct monst *mtmp, struct obj *otmp)
if (mtmp->isshk && !*u.ushops) if (mtmp->isshk && !*u.ushops)
hot_pursuit(mtmp); hot_pursuit(mtmp);
} else if (M_AP_TYPE(mtmp)) } else if (M_AP_TYPE(mtmp))
seemimic(mtmp); /* might unblock if mimicing a boulder/door */ seemimic(mtmp); /* might unblock if mimicking a boulder/door */
} }
/* note: gb.bhitpos won't be set if swallowed, but that's okay since /* note: gb.bhitpos won't be set if swallowed, but that's okay since
* reveal_invis will be false. We can't use mtmp->mx, my since it * reveal_invis will be false. We can't use mtmp->mx, my since it
@@ -4604,7 +4604,7 @@ dobuzz(
int spell_type; int spell_type;
int hdmgtype = Hallucination ? rn2(6) : damgtype; int hdmgtype = Hallucination ? rn2(6) : damgtype;
/* if its a Hero Spell then get its SPE_TYPE */ /* if it's a Hero Spell then get its SPE_TYPE */
spell_type = is_hero_spell(type) ? SPE_MAGIC_MISSILE + damgtype : 0; spell_type = is_hero_spell(type) ? SPE_MAGIC_MISSILE + damgtype : 0;
if (u.uswallow) { if (u.uswallow) {
@@ -6098,7 +6098,7 @@ makewish(void)
"made %s first artifact wish - %s", uhis(), wish); "made %s first artifact wish - %s", uhis(), wish);
else else
livelog_printf((LL_WISH | maybe_LL_arti), "wished for %s", wish); livelog_printf((LL_WISH | maybe_LL_arti), "wished for %s", wish);
/* TODO? maybe generate a second event decribing what was received since /* TODO? maybe generate a second event describing what was received since
those just echo player's request rather than show actual result */ those just echo player's request rather than show actual result */
const char *verb = ((Is_airlevel(&u.uz) || u.uinwater) ? "slip" : "drop"), const char *verb = ((Is_airlevel(&u.uz) || u.uinwater) ? "slip" : "drop"),
+5 -5
View File
@@ -25,11 +25,11 @@ Generally the build is the same as the unix build:
[Edit Oct 4, 2020:] [Edit Oct 4, 2020:]
Resulting libaries will be in the `targets/wasm` directory for `CROSS_TO_WASM=1`. Resulting libraries will be in the `targets/wasm` directory for `CROSS_TO_WASM=1`.
Resulting libaries will be in the `src` directory for `WANT_LIBNH=1`. Resulting libraries will be in the `src` directory for `WANT_LIBNH=1`.
[Original text:] [Original text:]
Resulting libaries will be in the `src` directory. Resulting libraries will be in the `src` directory.
WASM also has a npm module that can be published out of `sys/lib/npm-library`. After building the `nethack.js` it can be published by: WASM also has a npm module that can be published out of `sys/lib/npm-library`. After building the `nethack.js` it can be published by:
1. `cd sys/lib/npm-library` 1. `cd sys/lib/npm-library`
@@ -38,13 +38,13 @@ WASM also has a npm module that can be published out of `sys/lib/npm-library`. A
## API: libnethack.a ## API: libnethack.a
The API is two functions: The API is two functions:
* `nhmain(int argc, char *argv[])` - The main function for NetHack that configures the program and runs the `moveloop()` until the game is over. The arguments to this function are the [command line arguments](https://nethackwiki.com/wiki/Options) to NetHack. * `nhmain(int argc, char *argv[])` - The main function for NetHack that configures the program and runs the `moveloop()` until the game is over. The arguments to this function are the [command line arguments](https://nethackwiki.com/wiki/Options) to NetHack.
* `shim_graphics_set_callback(shim_callback_t cb)` - A single function that sets a callback to gather graphics events: write a string to screen, get user input, etc. Your job is to pass in a callback and handle all the requested rendering events to show NetHack on the scrren. The callback is `void shim_callback_t(const char *name, void *ret_ptr, const char *fmt, ...)` * `shim_graphics_set_callback(shim_callback_t cb)` - A single function that sets a callback to gather graphics events: write a string to screen, get user input, etc. Your job is to pass in a callback and handle all the requested rendering events to show NetHack on the screen. The callback is `void shim_callback_t(const char *name, void *ret_ptr, const char *fmt, ...)`
* `name` is the name of the [window function](https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/window.txt) that needs to be handled * `name` is the name of the [window function](https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/window.txt) that needs to be handled
* `ret_ptr` is a pointer to a memory space for the return value. The type expected to be returned in this pointer is described by the first character of the `fmt` string. * `ret_ptr` is a pointer to a memory space for the return value. The type expected to be returned in this pointer is described by the first character of the `fmt` string.
* `fmt` is a string that describes the signature of the callback. The first character in the string is the return type and any additional characters describe the variable arguments: `i` for integer, `s` for string, `p` for pointer, `c` for character, `v` for void. For example, if format is "vis" the callback will have no return (void), the first argument will be an integer, and the second argument will be a string. If format is "iii" the callback must return an integer, and both the arguments passed in will be integers. * `fmt` is a string that describes the signature of the callback. The first character in the string is the return type and any additional characters describe the variable arguments: `i` for integer, `s` for string, `p` for pointer, `c` for character, `v` for void. For example, if format is "vis" the callback will have no return (void), the first argument will be an integer, and the second argument will be a string. If format is "iii" the callback must return an integer, and both the arguments passed in will be integers.
* [Variadic arguments](https://www.gnu.org/software/libc/manual/html_node/Variadic-Example.html): a variable number and type of arguments depending on the `window function` that is being called. The arguments associated with each `name` are described in the [NetHack window.txt](https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/window.txt). * [Variadic arguments](https://www.gnu.org/software/libc/manual/html_node/Variadic-Example.html): a variable number and type of arguments depending on the `window function` that is being called. The arguments associated with each `name` are described in the [NetHack window.txt](https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/window.txt).
Where is the header file for the API you ask? There isn't one. It's three functions, just drop the forward declarations at the top of your file (or create your own header). It's more work figuring out how to install and copy around header files than it's worth for such a small API. If you disagree, feel free to sumbit a PR to fix it. :) Where is the header file for the API you ask? There isn't one. It's three functions, just drop the forward declarations at the top of your file (or create your own header). It's more work figuring out how to install and copy around header files than it's worth for such a small API. If you disagree, feel free to submit a PR to fix it. :)
## API: nethack.js ## API: nethack.js
The WebAssembly API has a similar signature to `libnethack.a` with minor syntactic differences: The WebAssembly API has a similar signature to `libnethack.a` with minor syntactic differences:
+1 -1
View File
@@ -66,7 +66,7 @@ II. There once was a time when people built NetHack right on their DOS machine.
CROSS_TO_MSDOS=1 CROSS_TO_MSDOS=1
on your make command line. on your make command line.
Note: Both the fetch-cross-compiler.sh script and and the msdos Note: Both the fetch-cross-compiler.sh script and the msdos
cross-compile and package procedures require unzip and zip to be available cross-compile and package procedures require unzip and zip to be available
on your host build system. on your host build system.
+2 -2
View File
@@ -111,7 +111,7 @@ typedef long clock_t;
#include <dos.h> /* needed for delay() */ #include <dos.h> /* needed for delay() */
#endif #endif
#ifdef SCREEN_DJGPPFAST /* parts of this block may be unecessary now */ #ifdef SCREEN_DJGPPFAST /* parts of this block may be unnecessary now */
#define get_cursor(x, y) ScreenGetCursor(y, x) #define get_cursor(x, y) ScreenGetCursor(y, x)
#endif #endif
@@ -134,7 +134,7 @@ int attrib_gr_normal; /* graphics mode normal attribute */
int attrib_text_intense; /* text mode intense attribute */ int attrib_text_intense; /* text mode intense attribute */
int attrib_gr_intense; /* graphics mode intense attribute */ int attrib_gr_intense; /* graphics mode intense attribute */
uint32 curframecolor = NO_COLOR; /* current background text color */ uint32 curframecolor = NO_COLOR; /* current background text color */
boolean traditional = FALSE; /* traditonal TTY character mode */ boolean traditional = FALSE; /* traditional TTY character mode */
boolean inmap = FALSE; /* in the map window */ boolean inmap = FALSE; /* in the map window */
char ttycolors[CLR_MAX]; /* also used/set in options.c */ char ttycolors[CLR_MAX]; /* also used/set in options.c */
+2 -2
View File
@@ -1340,7 +1340,7 @@ vesa_FontPtrs(void)
} }
/* /*
* This will verify the existance of a VGA adapter on the machine. * This will verify the existence of a VGA adapter on the machine.
* Video function call 0x4F00 returns 0x004F in AX if successful, and * Video function call 0x4F00 returns 0x004F in AX if successful, and
* returns a VbeInfoBlock describing the features of the VESA BIOS. * returns a VbeInfoBlock describing the features of the VESA BIOS.
*/ */
@@ -1628,7 +1628,7 @@ vesa_WriteCharXY(uint32 chr, int pixx, int pixy, uint32 colour)
/* /*
* Draw a character with a transparent background * Draw a character with a transparent background
* Don't bother cacheing; only the position bar and the cursor use this * Don't bother caching; only the position bar and the cursor use this
*/ */
static void static void
vesa_WriteCharTransparent(int chr, int pixx, int pixy, int colour) vesa_WriteCharTransparent(int chr, int pixx, int pixy, int colour)
+1 -1
View File
@@ -917,7 +917,7 @@ vga_FontPtrs(void)
} }
/* /*
* This will verify the existance of a VGA adapter on the machine. * This will verify the existence of a VGA adapter on the machine.
* Video function call 0x1a returns 0x1a in AL if successful, and * Video function call 0x1a returns 0x1a in AL if successful, and
* returns the following values in BL for the active display: * returns the following values in BL for the active display:
* *
+1 -1
View File
@@ -209,7 +209,7 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/
} }
} }
/* okay so we have the overriding and definitive locaton /* okay so we have the overriding and definitive location
for sysconf, but only in the event that there is not a for sysconf, but only in the event that there is not a
sysconf file there (for whatever reason), check a secondary sysconf file there (for whatever reason), check a secondary
location rather than abort. */ location rather than abort. */
+3 -3
View File
@@ -12,7 +12,7 @@
* from this software without specific prior written permission. * from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/ */
/* Several minor changes were made for the NetHack distribution to satisfy /* Several minor changes were made for the NetHack distribution to satisfy
@@ -56,7 +56,7 @@ static char sccsid[] = "@(#)random.c 5.5 (Berkeley) 7/6/88";
* initialized to contain information for random number generation with that * initialized to contain information for random number generation with that
* much state information. Good sizes for the amount of state information are * much state information. Good sizes for the amount of state information are
* 32, 64, 128, and 256 bytes. The state can be switched by calling the * 32, 64, 128, and 256 bytes. The state can be switched by calling the
* setstate() routine with the same array as was initiallized with * setstate() routine with the same array as was initialized with
* initstate(). * initstate().
* By default, the package runs with 128 bytes of state information and * By default, the package runs with 128 bytes of state information and
* generates far better random numbers than a linear congruential generator. * generates far better random numbers than a linear congruential generator.
@@ -348,7 +348,7 @@ char *arg_state;
* random: * random:
* If we are using the trivial TYPE_0 R.N.G., just do the old linear * If we are using the trivial TYPE_0 R.N.G., just do the old linear
* congruential bit. Otherwise, we do our fancy trinomial stuff, which is the * congruential bit. Otherwise, we do our fancy trinomial stuff, which is the
* same in all ther other cases due to all the global variables that have been * same in all the other cases due to all the global variables that have been
* set up. The basic operation is to add the number at the rear pointer into * set up. The basic operation is to add the number at the rear pointer into
* the one at the front pointer. Then both pointers are advanced to the next * the one at the front pointer. Then both pointers are advanced to the next
* location cyclically in the table. The value returned is the sum generated, * location cyclically in the table. The value returned is the sum generated,
+1 -1
View File
@@ -309,7 +309,7 @@ setftty(void)
start_screen(); start_screen();
} }
void intron(void) /* enable kbd interupts if enabled when game started */ void intron(void) /* enable kbd interrupts if enabled when game started */
{ {
#ifdef TTY_GRAPHICS #ifdef TTY_GRAPHICS
/* Ugly hack to keep from changing tty modes for non-tty games -dlc */ /* Ugly hack to keep from changing tty modes for non-tty games -dlc */
+2 -2
View File
@@ -12,14 +12,14 @@
* from this software without specific prior written permission. * from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/ */
/* /*
* Modified 12 April 1990 by Mark Adler for use on MSDOS systems with * Modified 12 April 1990 by Mark Adler for use on MSDOS systems with
* Microsoft C and Turbo C. * Microsoft C and Turbo C.
* *
* Modifed 13 February 1991 by Greg Roelofs for use on VMS systems. As * Modified 13 February 1991 by Greg Roelofs for use on VMS systems. As
* with the MS-DOS version, the setting of the file mode has been disabled. * with the MS-DOS version, the setting of the file mode has been disabled.
* Compile and link normally (but note that the shared-image link option * Compile and link normally (but note that the shared-image link option
* produces a binary only 6 blocks long, as opposed to the 137-block one * produces a binary only 6 blocks long, as opposed to the 137-block one
+1 -1
View File
@@ -54,7 +54,7 @@ DIRPERM = 0755
# per discussion in Install.X11 and Install.Qt # per discussion in Install.X11 and Install.Qt
# Qt prefers nhtiles.bmp but can use x11tiles, and it ignores NetHack.ad. # Qt prefers nhtiles.bmp but can use x11tiles, and it ignores NetHack.ad.
# X11 uses those last two. # X11 uses those last two.
# Both can display a convential text map instead of tiles. # Both can display a conventional text map instead of tiles.
# tty and/or curses (no extra data files outside of the dlb container): # tty and/or curses (no extra data files outside of the dlb container):
#VARDATND = #VARDATND =
# All X11 and/or Qt variations may also include tty or curses or both): # All X11 and/or Qt variations may also include tty or curses or both):

Some files were not shown because too many files have changed in this diff Show More