]> granicus.if.org Git - nethack/commitdiff
Reformat .h files.
authorSean Hunt <scshunt@csclub.uwaterloo.ca>
Mon, 25 May 2015 00:03:10 +0000 (09:03 +0900)
committerSean Hunt <scshunt@csclub.uwaterloo.ca>
Mon, 25 May 2015 00:21:15 +0000 (09:21 +0900)
I did my best to exempt some of the bigger aligned blocks from the reformatting
using the /* clang-format off */ and /* clang-format on */ tags. Probably some
that shouldn't have been formatted were anyway; if you encounter them, please
fix.

The clang-format tags were left in on the basis that it's much easier to prune
those out later than to put them back in, and it means that, modulo my custom
version of clang-format, I should be able to run clang-format on the source tree
again without changing anything, now that Pat has fixed the VA_DECL issues.

156 files changed:
include/align.h
include/amiconf.h
include/artifact.h
include/artilist.h
include/attrib.h
include/beconf.h
include/bitmfile.h
include/botl.h
include/color.h
include/config.h
include/config1.h
include/context.h
include/coord.h
include/decl.h
include/def_os2.h
include/dgn_file.h
include/display.h
include/dlb.h
include/dungeon.h
include/engrave.h
include/extern.h
include/flag.h
include/func_tab.h
include/gem_rsc.h
include/global.h
include/hack.h
include/lev.h
include/lint.h
include/load_img.h
include/mac-carbon.h
include/mac-qt.h
include/mac-term.h
include/macconf.h
include/macpopup.h
include/mactty.h
include/macwin.h
include/mail.h
include/mextra.h
include/mfndpos.h
include/micro.h
include/mkroom.h
include/monattk.h
include/mondata.h
include/monflag.h
include/monst.h
include/monsym.h
include/mttypriv.h
include/ntconf.h
include/obj.h
include/objclass.h
include/os2conf.h
include/patchlevel.h
include/pcconf.h
include/permonst.h
include/prop.h
include/qt_clust.h
include/qt_kde0.h
include/qt_win.h
include/qt_xpms.h
include/qtext.h
include/qttableview.h
include/quest.h
include/rect.h
include/region.h
include/rm.h
include/skills.h
include/sp_lev.h
include/spell.h
include/sys.h
include/system.h
include/tcap.h
include/tile2x11.h
include/timeout.h
include/tosconf.h
include/tradstdc.h
include/trampoli.h
include/trap.h
include/unixconf.h
include/vision.h
include/vmsconf.h
include/wceconf.h
include/winGnome.h
include/winX.h
include/winami.h
include/wingem.h
include/winprocs.h
include/wintty.h
include/wintype.h
include/xwindow.h
include/xwindowp.h
include/you.h
include/youprop.h
sys/amiga/windefs.h
sys/amiga/winext.h
sys/amiga/winproto.h
sys/msdos/pctiles.h
sys/msdos/pcvideo.h
sys/msdos/portio.h
sys/share/dgn_comp.h
sys/share/lev_comp.h
sys/vms/lev_lex.h
sys/wince/ceinc/assert.h
sys/wince/ceinc/errno.h
sys/wince/ceinc/fcntl.h
sys/wince/ceinc/sys/stat.h
sys/wince/mhaskyn.h
sys/wince/mhcmd.h
sys/wince/mhdlg.h
sys/wince/mhinput.h
sys/wince/mhmain.h
sys/wince/mhmap.h
sys/wince/mhmenu.h
sys/wince/mhmsg.h
sys/wince/mhmsgwnd.h
sys/wince/mhrip.h
sys/wince/mhstatus.h
sys/wince/mhtext.h
sys/wince/mhtxtbuf.h
sys/wince/newres.h
sys/wince/resource.h
sys/wince/winMS.h
sys/winnt/win32api.h
util/mdgrep.h
win/Qt/tileedit.h
win/gem/gr_rect.h
win/gnome/gn_xpms.h
win/gnome/gnaskstr.h
win/gnome/gnbind.h
win/gnome/gnglyph.h
win/gnome/gnmain.h
win/gnome/gnmenu.h
win/gnome/gnmesg.h
win/gnome/gnomeprv.h
win/gnome/gnopts.h
win/gnome/gnplayer.h
win/gnome/gnsignal.h
win/gnome/gnstatus.h
win/gnome/gntext.h
win/gnome/gnworn.h
win/gnome/gnyesno.h
win/share/tile.h
win/win32/mhaskyn.h
win/win32/mhdlg.h
win/win32/mhfont.h
win/win32/mhinput.h
win/win32/mhmain.h
win/win32/mhmap.h
win/win32/mhmenu.h
win/win32/mhmsg.h
win/win32/mhmsgwnd.h
win/win32/mhrip.h
win/win32/mhsplash.h
win/win32/mhstatus.h
win/win32/mhtext.h
win/win32/resource.h
win/win32/winMS.h

index 2b058ada043c7ed2a68fa8a45582a25879bc6c9b..cef60c01c17b3943e51e784cf75f410cb038c309 100644 (file)
@@ -7,38 +7,39 @@
 #ifndef ALIGN_H
 #define ALIGN_H
 
-typedef schar  aligntyp;       /* basic alignment type */
+typedef schar aligntyp; /* basic alignment type */
 
-typedef struct align {         /* alignment & record */
-       aligntyp        type;
-       int             record;
+typedef struct align { /* alignment & record */
+    aligntyp type;
+    int record;
 } align;
 
 /* bounds for "record" -- respect initial alignments of 10 */
-#define ALIGNLIM       (10L + (moves/200L))
+#define ALIGNLIM (10L + (moves / 200L))
 
-#define A_NONE       (-128)    /* the value range of type */
+#define A_NONE (-128) /* the value range of type */
 
-#define A_CHAOTIC      (-1)
-#define A_NEUTRAL       0
-#define A_LAWFUL        1
+#define A_CHAOTIC (-1)
+#define A_NEUTRAL 0
+#define A_LAWFUL 1
 
-#define A_COALIGNED     1
-#define A_OPALIGNED    (-1)
+#define A_COALIGNED 1
+#define A_OPALIGNED (-1)
 
-#define AM_NONE                 0
-#define AM_CHAOTIC      1
-#define AM_NEUTRAL      2
-#define AM_LAWFUL       4
+#define AM_NONE 0
+#define AM_CHAOTIC 1
+#define AM_NEUTRAL 2
+#define AM_LAWFUL 4
 
-#define AM_MASK                 7
+#define AM_MASK 7
 
-#define AM_SPLEV_CO     3
-#define AM_SPLEV_NONCO  7
+#define AM_SPLEV_CO 3
+#define AM_SPLEV_NONCO 7
 
-#define Amask2align(x) ((aligntyp) ((!(x)) ? A_NONE \
-                        : ((x) == AM_LAWFUL) ? A_LAWFUL : ((int)x) - 2))
-#define Align2amask(x) (((x) == A_NONE) ? AM_NONE \
-                        : ((x) == A_LAWFUL) ? AM_LAWFUL : (x) + 2)
+#define Amask2align(x)                                          \
+    ((aligntyp)((!(x)) ? A_NONE : ((x) == AM_LAWFUL) ? A_LAWFUL \
+                                                     : ((int) x) - 2))
+#define Align2amask(x) \
+    (((x) == A_NONE) ? AM_NONE : ((x) == A_LAWFUL) ? AM_LAWFUL : (x) + 2)
 
 #endif /* ALIGN_H */
index 826fe521df447cacf89e62d2989c45331ce8b5de..ce4594b7ff3861a3972bba0fb737e50d77b70a0d 100644 (file)
@@ -1,76 +1,77 @@
 /* NetHack 3.6 amiconf.h       $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
 /* NetHack 3.6 amiconf.h       $Date: 2012/01/10 17:47:16 $  $Revision: 1.8 $ */
-/* Copyright (c) Kenneth Lorber, Bethesda, Maryland, 1990, 1991, 1992, 1993. */
+/* Copyright (c) Kenneth Lorber, Bethesda, Maryland, 1990, 1991, 1992, 1993.
+ */
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef AMICONF_H
 #define AMICONF_H
 
-#undef abs             /* avoid using macro form of abs */
+#undef abs /* avoid using macro form of abs */
 #ifndef __SASC_60
-# undef min            /* this gets redefined */
-# undef max            /* this gets redefined */
+#undef min /* this gets redefined */
+#undef max /* this gets redefined */
 #endif
 
-#include <time.h>      /* get time_t defined before use! */
+#include <time.h> /* get time_t defined before use! */
 
-#ifdef __SASC_60       /* since SAS can prevent re-inclusion */
-#include <stdlib.h>    /* general things, including builtins */
+#ifdef __SASC_60    /* since SAS can prevent re-inclusion */
+#include <stdlib.h> /* general things, including builtins */
 #include <string.h>
 #endif
 
 #ifdef AZTEC_50
 #include <stdlib.h>
-# define AZTEC_C_WORKAROUND /* Bug which turns up in sounds.c. Bummer... */
-# define NO_SIGNAL     /* 5.0 signal handling doesn't like SIGINT... */
+#define AZTEC_C_WORKAROUND /* Bug which turns up in sounds.c. Bummer... */
+#define NO_SIGNAL          /* 5.0 signal handling doesn't like SIGINT... */
 #endif
 
 #ifdef _DCC
 #include <stdlib.h>
-# define _SIZE_T
-# define DCC30_BUG     /* A bitfield bug (from dog.c, others) in DICE 3.0. */
+#define _SIZE_T
+#define DCC30_BUG /* A bitfield bug (from dog.c, others) in DICE 3.0. */
 #endif
 
 #ifndef __GNUC__
 typedef long off_t;
 #endif
 
-#define MICRO          /* must be defined to allow some inclusions */
+#define MICRO /* must be defined to allow some inclusions */
 
-#define NOCWD_ASSUMPTIONS      /* Allow paths to be specified for HACKDIR,
-                                  LEVELDIR, SAVEDIR, BONESDIR, DATADIR,
-                                  SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
+#define NOCWD_ASSUMPTIONS /* Allow paths to be specified for HACKDIR, \
+                             LEVELDIR, SAVEDIR, BONESDIR, DATADIR,    \
+                             SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
 
 /* data librarian defs */
 #ifndef NOCWD_ASSUMPTIONS
-# define DLBFILE       "NetHack:nhdat"         /* main library */
-# define DLBFILE2      "NetHack:nhsdat"        /* sound library */
+#define DLBFILE "NetHack:nhdat"   /* main library */
+#define DLBFILE2 "NetHack:nhsdat" /* sound library */
 #else
-# define DLBFILE       "nhdat"                 /* main library */
-# define DLBFILE2      "nhsdat"                /* sound library */
+#define DLBFILE "nhdat"   /* main library */
+#define DLBFILE2 "nhsdat" /* sound library */
 #endif
 
-#define FILENAME_CMP   stricmp                 /* case insensitive */
+#define FILENAME_CMP stricmp /* case insensitive */
 
 #ifndef __SASC_60
-# define O_BINARY      0
+#define O_BINARY 0
 #endif
 
 /* Compile in New Intuition look for 2.0 */
-#ifdef IDCMP_CLOSEWINDOW
-# ifndef INTUI_NEW_LOOK
-#  define      INTUI_NEW_LOOK  1
-# endif
+#ifdef IDCMP_CLOSEWINDOW
+#ifndef INTUI_NEW_LOOK
+#define INTUI_NEW_LOOK 1
+#endif
 #endif
 
-#define MFLOPPY                /* You'll probably want this; provides assistance
-                        * for typical personal computer configurations
-                        */
+#define MFLOPPY /* You'll probably want this; provides assistance \
+                 * for typical personal computer configurations   \
+                 */
 #define RANDOM
 
 /* ### amidos.c ### */
 
-extern void  FDECL(nethack_exit, (int));
+extern void FDECL(nethack_exit, (int));
 
 /* ### amiwbench.c ### */
 
@@ -82,7 +83,7 @@ extern int FDECL(ami_wbench_iconsize, (char *));
 extern void FDECL(ami_wbench_iconwrite, (char *));
 extern int FDECL(ami_wbench_badopt, (const char *));
 extern void NDECL(ami_wbench_cleanup);
-extern void FDECL(getlind, (const char *,char *,const char *));
+extern void FDECL(getlind, (const char *, char *, const char *));
 
 /* ### winreq.c ### */
 
@@ -109,14 +110,14 @@ extern char **ami_argv;
 #endif
 
 #ifndef PCCONF_H
-#include "pcconf.h"    /* remainder of stuff is almost same as the PC */
+#include "pcconf.h" /* remainder of stuff is almost same as the PC */
 #endif
 
-#define remove(x)      unlink(x)
+#define remove(x) unlink(x)
 
 /* DICE wants rewind() to return void. We want it to return int. */
 #if defined(_DCC) || defined(__GNUC__)
-# define rewind(f)     fseek(f, 0, 0)
+#define rewind(f) fseek(f, 0, 0)
 #endif
 
 #ifdef AZTEC_C
@@ -124,68 +125,68 @@ extern FILE *FDECL(freopen, (const char *, const char *, FILE *));
 extern char *FDECL(gets, (char *));
 #endif
 
-#define msmsg          printf
+#define msmsg printf
 
 /*
  * If AZTEC_C  we can't use the long cpath in vision.c....
  */
 #ifdef AZTEC_C
-# undef MACRO_CPATH
+#undef MACRO_CPATH
 #endif
 
 /*
  *  (Possibly) configurable Amiga options:
  */
 
-#define TEXTCOLOR              /* Use colored monsters and objects */
-#define HACKFONT               /* Use special hack.font */
-#define SHELL                  /* Have a shell escape command (!) */
-#define MAIL                   /* Get mail at unexpected occasions */
-#define DEFAULT_ICON "NetHack:default.icon"    /* private icon */
-#define AMIFLUSH               /* toss typeahead (select flush in .cnf) */
+#define TEXTCOLOR /* Use colored monsters and objects */
+#define HACKFONT  /* Use special hack.font */
+#define SHELL     /* Have a shell escape command (!) */
+#define MAIL      /* Get mail at unexpected occasions */
+#define DEFAULT_ICON "NetHack:default.icon" /* private icon */
+#define AMIFLUSH /* toss typeahead (select flush in .cnf) */
 /* #define OPT_DISPMAP         /* enable fast_map option */
 
 /* new window system options */
-                       /* WRONG - AMIGA_INTUITION should go away */
+/* WRONG - AMIGA_INTUITION should go away */
 #ifdef AMII_GRAPHICS
-# define AMIGA_INTUITION       /* high power graphics interface (amii) */
+#define AMIGA_INTUITION /* high power graphics interface (amii) */
 #endif
 
-#define CHANGE_COLOR   1
+#define CHANGE_COLOR 1
 
-#ifdef TEXTCOLOR
-#  define      DEPTH   6       /* Maximum depth of the screen allowed */
+#ifdef TEXTCOLOR
+#define DEPTH 6 /* Maximum depth of the screen allowed */
 #else
-# define       DEPTH   2       /* Four colors...sigh... */
+#define DEPTH 2 /* Four colors...sigh... */
 #endif
 
-#define AMII_MAXCOLORS (1L<<DEPTH)
+#define AMII_MAXCOLORS (1L << DEPTH)
 typedef unsigned short AMII_COLOR_TYPE;
 
-#define PORT_HELP      "nethack:amii.hlp"
+#define PORT_HELP "nethack:amii.hlp"
 
-#undef TERMLIB
+#undef TERMLIB
 
-#define AMII_MUFFLED_VOLUME    40
-#define AMII_SOFT_VOLUME       50
-#define AMII_OKAY_VOLUME       60
-#define AMII_LOUDER_VOLUME     80
+#define AMII_MUFFLED_VOLUME 40
+#define AMII_SOFT_VOLUME 50
+#define AMII_OKAY_VOLUME 60
+#define AMII_LOUDER_VOLUME 80
 
 #ifdef TTY_GRAPHICS
-# define ANSI_DEFAULT
+#define ANSI_DEFAULT
 #endif
 
-extern int amibbs;     /* BBS mode? */
+extern int amibbs; /* BBS mode? */
 
 #ifdef AMII_GRAPHICS
 extern int amii_numcolors;
-void FDECL( amii_setpens, (int) );
+void FDECL(amii_setpens, (int));
 #endif
 
 /* for cmd.c: override version in micro.h */
 #ifdef __SASC_60
-# undef M
-# define M(c) ((c) - 128 )
+#undef M
+#define M(c) ((c) -128)
 #endif
 
 #endif /* AMICONF_H */
index 81147807ec477eb5d79e233a70f98cbc077f9b20..3b37f879bcb8a2040161126ca5a9cd590ebf1ca3 100644 (file)
@@ -6,60 +6,64 @@
 #ifndef ARTIFACT_H
 #define ARTIFACT_H
 
-#define SPFX_NONE    0x00000000L /* no special effects, just a bonus */
-#define SPFX_NOGEN   0x00000001L /* item is special, bequeathed by gods */
-#define SPFX_RESTR   0x00000002L /* item is restricted - can't be named */
-#define SPFX_INTEL   0x00000004L /* item is self-willed - intelligent */
-#define SPFX_SPEAK   0x00000008L /* item can speak (not implemented) */
-#define SPFX_SEEK    0x00000010L /* item helps you search for things */
-#define SPFX_WARN    0x00000020L /* item warns you of danger */
-#define SPFX_ATTK    0x00000040L /* item has a special attack (attk) */
-#define SPFX_DEFN    0x00000080L /* item has a special defence (defn) */
-#define SPFX_DRLI    0x00000100L /* drains a level from monsters */
-#define SPFX_SEARCH  0x00000200L /* helps searching */
-#define SPFX_BEHEAD  0x00000400L /* beheads monsters */
-#define SPFX_HALRES  0x00000800L /* blocks hallucinations */
-#define SPFX_ESP     0x00001000L /* ESP (like amulet of ESP) */
-#define SPFX_STLTH   0x00002000L /* Stealth */
-#define SPFX_REGEN   0x00004000L /* Regeneration */
-#define SPFX_EREGEN  0x00008000L /* Energy Regeneration */
-#define SPFX_HSPDAM  0x00010000L /* 1/2 spell damage (on player) in combat */
-#define SPFX_HPHDAM  0x00020000L /* 1/2 physical damage (on player) in combat */
-#define SPFX_TCTRL   0x00040000L /* Teleportation Control */
-#define SPFX_LUCK    0x00080000L /* Increase Luck (like Luckstone) */
-#define SPFX_DMONS   0x00100000L /* attack bonus on one monster type */
-#define SPFX_DCLAS   0x00200000L /* attack bonus on monsters w/ symbol mtype */
-#define SPFX_DFLAG1  0x00400000L /* attack bonus on monsters w/ mflags1 flag */
-#define SPFX_DFLAG2  0x00800000L /* attack bonus on monsters w/ mflags2 flag */
-#define SPFX_DALIGN  0x01000000L /* attack bonus on non-aligned monsters  */
-#define SPFX_DBONUS  0x01F00000L /* attack bonus mask */
-#define SPFX_XRAY    0x02000000L /* gives X-RAY vision to player */
+#define SPFX_NONE 0x00000000L   /* no special effects, just a bonus */
+#define SPFX_NOGEN 0x00000001L  /* item is special, bequeathed by gods */
+#define SPFX_RESTR 0x00000002L  /* item is restricted - can't be named */
+#define SPFX_INTEL 0x00000004L  /* item is self-willed - intelligent */
+#define SPFX_SPEAK 0x00000008L  /* item can speak (not implemented) */
+#define SPFX_SEEK 0x00000010L   /* item helps you search for things */
+#define SPFX_WARN 0x00000020L   /* item warns you of danger */
+#define SPFX_ATTK 0x00000040L   /* item has a special attack (attk) */
+#define SPFX_DEFN 0x00000080L   /* item has a special defence (defn) */
+#define SPFX_DRLI 0x00000100L   /* drains a level from monsters */
+#define SPFX_SEARCH 0x00000200L /* helps searching */
+#define SPFX_BEHEAD 0x00000400L /* beheads monsters */
+#define SPFX_HALRES 0x00000800L /* blocks hallucinations */
+#define SPFX_ESP 0x00001000L    /* ESP (like amulet of ESP) */
+#define SPFX_STLTH 0x00002000L  /* Stealth */
+#define SPFX_REGEN 0x00004000L  /* Regeneration */
+#define SPFX_EREGEN 0x00008000L /* Energy Regeneration */
+#define SPFX_HSPDAM 0x00010000L /* 1/2 spell damage (on player) in combat */
+#define SPFX_HPHDAM \
+    0x00020000L                /* 1/2 physical damage (on player) in combat */
+#define SPFX_TCTRL 0x00040000L /* Teleportation Control */
+#define SPFX_LUCK 0x00080000L  /* Increase Luck (like Luckstone) */
+#define SPFX_DMONS 0x00100000L /* attack bonus on one monster type */
+#define SPFX_DCLAS 0x00200000L /* attack bonus on monsters w/ symbol mtype \
+                                  */
+#define SPFX_DFLAG1 0x00400000L  /* attack bonus on monsters w/ mflags1 flag \
+                                    */
+#define SPFX_DFLAG2 0x00800000L  /* attack bonus on monsters w/ mflags2 flag \
+                                    */
+#define SPFX_DALIGN 0x01000000L  /* attack bonus on non-aligned monsters  */
+#define SPFX_DBONUS 0x01F00000L  /* attack bonus mask */
+#define SPFX_XRAY 0x02000000L    /* gives X-RAY vision to player */
 #define SPFX_REFLECT 0x04000000L /* Reflection */
 #define SPFX_PROTECT 0x08000000L /* Protection */
 
 struct artifact {
-       short       otyp;
-       const char  *name;
-       unsigned long spfx;     /* special effect from wielding/wearing */
-       unsigned long cspfx;    /* special effect just from carrying obj */
-       unsigned long mtype;    /* monster type, symbol, or flag */
-       struct attack attk, defn, cary;
-       uchar       inv_prop;   /* property obtained by invoking artifact */
-       aligntyp    alignment;  /* alignment of bequeathing gods */
-       short       role;       /* character role associated with */
-       short       race;       /* character race associated with */
-       long        cost;       /* price when sold to hero (default 100 x base cost) */
+    short otyp;
+    const char *name;
+    unsigned long spfx;  /* special effect from wielding/wearing */
+    unsigned long cspfx; /* special effect just from carrying obj */
+    unsigned long mtype; /* monster type, symbol, or flag */
+    struct attack attk, defn, cary;
+    uchar inv_prop;     /* property obtained by invoking artifact */
+    aligntyp alignment; /* alignment of bequeathing gods */
+    short role;         /* character role associated with */
+    short race;         /* character race associated with */
+    long cost; /* price when sold to hero (default 100 x base cost) */
 };
 
 /* invoked properties with special powers */
-#define TAMING         (LAST_PROP+1)
-#define HEALING                (LAST_PROP+2)
-#define ENERGY_BOOST   (LAST_PROP+3)
-#define UNTRAP         (LAST_PROP+4)
-#define CHARGE_OBJ     (LAST_PROP+5)
-#define LEV_TELE       (LAST_PROP+6)
-#define CREATE_PORTAL  (LAST_PROP+7)
-#define ENLIGHTENING   (LAST_PROP+8)
-#define CREATE_AMMO    (LAST_PROP+9)
+#define TAMING (LAST_PROP + 1)
+#define HEALING (LAST_PROP + 2)
+#define ENERGY_BOOST (LAST_PROP + 3)
+#define UNTRAP (LAST_PROP + 4)
+#define CHARGE_OBJ (LAST_PROP + 5)
+#define LEV_TELE (LAST_PROP + 6)
+#define CREATE_PORTAL (LAST_PROP + 7)
+#define ENLIGHTENING (LAST_PROP + 8)
+#define CREATE_AMMO (LAST_PROP + 9)
 
 #endif /* ARTIFACT_H */
index af84630ffa07245ebc971edf610ee26c25d9ce18..3aaa382859a87f3336fba6358577b5efb212bb28 100644 (file)
-/* NetHack 3.6 artilist.h      $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
-/* NetHack 3.6 artilist.h      $Date: 2011/04/07 18:10:44 $  $Revision: 1.8 $ */
+/* NetHack 3.6  artilist.h      $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
+/* NetHack 3.6  artilist.h      $Date: 2011/04/07 18:10:44 $  $Revision: 1.8 $ */
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifdef MAKEDEFS_C
 /* in makedefs.c, all we care about is the list of names */
 
-#define A(nam,typ,s1,s2,mt,atk,dfn,cry,inv,al,cl,rac,cost) nam
+#define A(nam, typ, s1, s2, mt, atk, dfn, cry, inv, al, cl, rac, cost) nam
 
 static const char *artifact_names[] = {
 #else
 /* in artifact.c, set up the actual artifact list structure */
 
-#define A(nam,typ,s1,s2,mt,atk,dfn,cry,inv,al,cl,rac,cost) \
- { typ, nam, s1, s2, mt, atk, dfn, cry, inv, al, cl, rac, cost }
-
-#define     NO_ATTK    {0,0,0,0}               /* no attack */
-#define     NO_DFNS    {0,0,0,0}               /* no defense */
-#define     NO_CARY    {0,0,0,0}               /* no carry effects */
-#define     DFNS(c)    {0,c,0,0}
-#define     CARY(c)    {0,c,0,0}
-#define     PHYS(a,b)  {0,AD_PHYS,a,b}         /* physical */
-#define     DRLI(a,b)  {0,AD_DRLI,a,b}         /* life drain */
-#define     COLD(a,b)  {0,AD_COLD,a,b}
-#define     FIRE(a,b)  {0,AD_FIRE,a,b}
-#define     ELEC(a,b)  {0,AD_ELEC,a,b}         /* electrical shock */
-#define     STUN(a,b)  {0,AD_STUN,a,b}         /* magical attack */
+#define A(nam, typ, s1, s2, mt, atk, dfn, cry, inv, al, cl, rac, cost) \
+    {                                                                  \
+        typ, nam, s1, s2, mt, atk, dfn, cry, inv, al, cl, rac, cost    \
+    }
+
+/* clang-format off */
+#define     NO_ATTK     {0,0,0,0}               /* no attack */
+#define     NO_DFNS     {0,0,0,0}               /* no defense */
+#define     NO_CARY     {0,0,0,0}               /* no carry effects */
+#define     DFNS(c)     {0,c,0,0}
+#define     CARY(c)     {0,c,0,0}
+#define     PHYS(a,b)   {0,AD_PHYS,a,b}         /* physical */
+#define     DRLI(a,b)   {0,AD_DRLI,a,b}         /* life drain */
+#define     COLD(a,b)   {0,AD_COLD,a,b}
+#define     FIRE(a,b)   {0,AD_FIRE,a,b}
+#define     ELEC(a,b)   {0,AD_ELEC,a,b}         /* electrical shock */
+#define     STUN(a,b)   {0,AD_STUN,a,b}         /* magical attack */
+/* clang-format on */
 
 STATIC_OVL NEARDATA struct artifact artilist[] = {
-#endif /* MAKEDEFS_C */
-
-/* Artifact cost rationale:
- * 1.  The more useful the artifact, the better its cost.
- * 2.  Quest artifacts are highly valued.
- * 3.  Chaotic artifacts are inflated due to scarcity (and balance).
- */
-
-
-/*  dummy element #0, so that all interesting indices are non-zero */
-A("",                          STRANGE_OBJECT,
-       0, 0, 0, NO_ATTK, NO_DFNS, NO_CARY, 0, A_NONE, NON_PM, NON_PM, 0L ),
-
-A("Excalibur",                 LONG_SWORD,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_SEEK|SPFX_DEFN|SPFX_INTEL|SPFX_SEARCH),0,0,
-       PHYS(5,10),     DRLI(0,0),      NO_CARY,        0, A_LAWFUL, PM_KNIGHT, NON_PM, 4000L ),
-/*
- *     Stormbringer only has a 2 because it can drain a level,
- *     providing 8 more.
- */
-A("Stormbringer",              RUNESWORD,
-       (SPFX_RESTR|SPFX_ATTK|SPFX_DEFN|SPFX_INTEL|SPFX_DRLI), 0, 0,
-       DRLI(5,2),      DRLI(0,0),      NO_CARY,        0, A_CHAOTIC, NON_PM, NON_PM, 8000L ),
-/*
- *     Mjollnir will return to the hand of the wielder when thrown
- *     if the wielder is a Valkyrie wearing Gauntlets of Power.
- */
-A("Mjollnir",                  WAR_HAMMER,             /* Mjo:llnir */
-       (SPFX_RESTR|SPFX_ATTK),  0, 0,
-       ELEC(5,24),     NO_DFNS,        NO_CARY,        0, A_NEUTRAL, PM_VALKYRIE, NON_PM, 4000L ),
-
-A("Cleaver",                   BATTLE_AXE,
-       SPFX_RESTR, 0, 0,
-       PHYS(3,6),      NO_DFNS,        NO_CARY,        0, A_NEUTRAL, PM_BARBARIAN, NON_PM, 1500L ),
-
-A("Grimtooth",                 ORCISH_DAGGER,
-       SPFX_RESTR, 0, 0,
-       PHYS(2,6),      NO_DFNS,        NO_CARY,        0, A_CHAOTIC, NON_PM, PM_ORC, 300L ),
-/*
- *     Orcrist and Sting have same alignment as elves.
- */
-A("Orcrist",                   ELVEN_BROADSWORD,
-       SPFX_DFLAG2, 0, M2_ORC,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_CHAOTIC, NON_PM, PM_ELF, 2000L ),
-
-/*
- *     The combination of SPFX_WARN and M2_something on an artifact
- *     will trigger EWarn_of_mon for all monsters that have the appropriate
- *     M2_something flags.  In Sting's case it will trigger EWarn_of_mon
- *     for M2_ORC monsters.
- */
-A("Sting",                     ELVEN_DAGGER,
-       (SPFX_WARN|SPFX_DFLAG2), 0, M2_ORC,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_CHAOTIC, NON_PM, PM_ELF, 800L ),
-/*
- *     Magicbane is a bit different!  Its magic fanfare
- *     unbalances victims in addition to doing some damage.
- */
-A("Magicbane",                 ATHAME,
-       (SPFX_RESTR|SPFX_ATTK|SPFX_DEFN), 0, 0,
-       STUN(3,4),      DFNS(AD_MAGM),  NO_CARY,        0, A_NEUTRAL, PM_WIZARD, NON_PM, 3500L ),
-
-A("Frost Brand",               LONG_SWORD,
-       (SPFX_RESTR|SPFX_ATTK|SPFX_DEFN), 0, 0,
-       COLD(5,0),      COLD(0,0),      NO_CARY,        0, A_NONE, NON_PM, NON_PM, 3000L ),
-
-A("Fire Brand",                        LONG_SWORD,
-       (SPFX_RESTR|SPFX_ATTK|SPFX_DEFN), 0, 0,
-       FIRE(5,0),      FIRE(0,0),      NO_CARY,        0, A_NONE, NON_PM, NON_PM, 3000L ),
-
-A("Dragonbane",                        BROADSWORD,
-       (SPFX_RESTR|SPFX_DCLAS), 0, S_DRAGON,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_NONE, NON_PM, NON_PM, 500L ),
-
-A("Demonbane",                 LONG_SWORD,
-       (SPFX_RESTR|SPFX_DFLAG2), 0, M2_DEMON,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_LAWFUL, NON_PM, NON_PM, 2500L ),
-
-A("Werebane",                  SILVER_SABER,
-       (SPFX_RESTR|SPFX_DFLAG2), 0, M2_WERE,
-       PHYS(5,0),      DFNS(AD_WERE),  NO_CARY,        0, A_NONE, NON_PM, NON_PM, 1500L ),
-
-A("Grayswandir",               SILVER_SABER,
-       (SPFX_RESTR|SPFX_HALRES), 0, 0,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_LAWFUL, NON_PM, NON_PM, 8000L ),
-
-A("Giantslayer",               LONG_SWORD,
-       (SPFX_RESTR|SPFX_DFLAG2), 0, M2_GIANT,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_NEUTRAL, NON_PM, NON_PM, 200L ),
-
-A("Ogresmasher",               WAR_HAMMER,
-       (SPFX_RESTR|SPFX_DCLAS), 0, S_OGRE,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_NONE, NON_PM, NON_PM, 200L ),
-
-A("Trollsbane",                        MORNING_STAR,
-       (SPFX_RESTR|SPFX_DCLAS), 0, S_TROLL,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,        0, A_NONE, NON_PM, NON_PM, 200L ),
-/*
- *     Two problems:  1) doesn't let trolls regenerate heads,
- *     2) doesn't give unusual message for 2-headed monsters (but
- *     allowing those at all causes more problems than worth the effort).
- */
-A("Vorpal Blade",              LONG_SWORD,
-       (SPFX_RESTR|SPFX_BEHEAD), 0, 0,
-       PHYS(5,1),      NO_DFNS,        NO_CARY,        0, A_NEUTRAL, NON_PM, NON_PM, 4000L ),
-/*
- *     Ah, never shall I forget the cry,
- *             or the shriek that shrieked he,
- *     As I gnashed my teeth, and from my sheath
- *             I drew my Snickersnee!
- *                     --Koko, Lord high executioner of Titipu
- *                       (From Sir W.S. Gilbert's "The Mikado")
- */
-A("Snickersnee",               KATANA,
-       SPFX_RESTR, 0, 0,
-       PHYS(0,8),      NO_DFNS,        NO_CARY,        0, A_LAWFUL, PM_SAMURAI, NON_PM, 1200L ),
-
-A("Sunsword",                  LONG_SWORD,
-       (SPFX_RESTR|SPFX_DFLAG2), 0, M2_UNDEAD,
-       PHYS(5,0),      DFNS(AD_BLND),  NO_CARY,        0, A_LAWFUL, NON_PM, NON_PM, 1500L ),
-
-/*
- *     The artifacts for the quest dungeon, all self-willed.
- */
-
-A("The Orb of Detection",      CRYSTAL_BALL,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL), (SPFX_ESP|SPFX_HSPDAM), 0,
-       NO_ATTK,        NO_DFNS,        CARY(AD_MAGM),
-       INVIS,          A_LAWFUL, PM_ARCHEOLOGIST, NON_PM, 2500L ),
-
-A("The Heart of Ahriman",      LUCKSTONE,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL), SPFX_STLTH, 0,
-       /* this stone does double damage if used as a projectile weapon */
-       PHYS(5,0),      NO_DFNS,        NO_CARY,
-       LEVITATION,     A_NEUTRAL, PM_BARBARIAN, NON_PM, 2500L ),
-
-A("The Sceptre of Might",      MACE,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_DALIGN), 0, 0,
-       PHYS(5,0),      DFNS(AD_MAGM),  NO_CARY,
-       CONFLICT,       A_LAWFUL, PM_CAVEMAN, NON_PM, 2500L ),
-
-#if 0  /* OBSOLETE */
-A("The Palantir of Westernesse",       CRYSTAL_BALL,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL),
-               (SPFX_ESP|SPFX_REGEN|SPFX_HSPDAM), 0,
-       NO_ATTK,        NO_DFNS,        NO_CARY,
-       TAMING,         A_CHAOTIC, NON_PM , PM_ELF, 8000L ),
+#endif /* MAKEDEFS_C */
+
+    /* Artifact cost rationale:
+     * 1.  The more useful the artifact, the better its cost.
+     * 2.  Quest artifacts are highly valued.
+     * 3.  Chaotic artifacts are inflated due to scarcity (and balance).
+     */
+
+    /*  dummy element #0, so that all interesting indices are non-zero */
+    A("", STRANGE_OBJECT, 0, 0, 0, NO_ATTK, NO_DFNS, NO_CARY, 0, A_NONE,
+      NON_PM, NON_PM, 0L),
+
+    A("Excalibur", LONG_SWORD, (SPFX_NOGEN | SPFX_RESTR | SPFX_SEEK
+                                | SPFX_DEFN | SPFX_INTEL | SPFX_SEARCH),
+      0, 0, PHYS(5, 10), DRLI(0, 0), NO_CARY, 0, A_LAWFUL, PM_KNIGHT, NON_PM,
+      4000L),
+    /*
+     *      Stormbringer only has a 2 because it can drain a level,
+     *      providing 8 more.
+     */
+    A("Stormbringer", RUNESWORD,
+      (SPFX_RESTR | SPFX_ATTK | SPFX_DEFN | SPFX_INTEL | SPFX_DRLI), 0, 0,
+      DRLI(5, 2), DRLI(0, 0), NO_CARY, 0, A_CHAOTIC, NON_PM, NON_PM, 8000L),
+    /*
+     *      Mjollnir will return to the hand of the wielder when thrown
+     *      if the wielder is a Valkyrie wearing Gauntlets of Power.
+     */
+    A("Mjollnir", WAR_HAMMER, /* Mjo:llnir */
+      (SPFX_RESTR | SPFX_ATTK), 0, 0, ELEC(5, 24), NO_DFNS, NO_CARY, 0,
+      A_NEUTRAL, PM_VALKYRIE, NON_PM, 4000L),
+
+    A("Cleaver", BATTLE_AXE, SPFX_RESTR, 0, 0, PHYS(3, 6), NO_DFNS, NO_CARY,
+      0, A_NEUTRAL, PM_BARBARIAN, NON_PM, 1500L),
+
+    A("Grimtooth", ORCISH_DAGGER, SPFX_RESTR, 0, 0, PHYS(2, 6), NO_DFNS,
+      NO_CARY, 0, A_CHAOTIC, NON_PM, PM_ORC, 300L),
+    /*
+     *      Orcrist and Sting have same alignment as elves.
+     */
+    A("Orcrist", ELVEN_BROADSWORD, SPFX_DFLAG2, 0, M2_ORC, PHYS(5, 0),
+      NO_DFNS, NO_CARY, 0, A_CHAOTIC, NON_PM, PM_ELF, 2000L),
+
+    /*
+     *      The combination of SPFX_WARN and M2_something on an artifact
+     *      will trigger EWarn_of_mon for all monsters that have the
+     * appropriate
+     *      M2_something flags.  In Sting's case it will trigger EWarn_of_mon
+     *      for M2_ORC monsters.
+     */
+    A("Sting", ELVEN_DAGGER, (SPFX_WARN | SPFX_DFLAG2), 0, M2_ORC, PHYS(5, 0),
+      NO_DFNS, NO_CARY, 0, A_CHAOTIC, NON_PM, PM_ELF, 800L),
+    /*
+     *      Magicbane is a bit different!  Its magic fanfare
+     *      unbalances victims in addition to doing some damage.
+     */
+    A("Magicbane", ATHAME, (SPFX_RESTR | SPFX_ATTK | SPFX_DEFN), 0, 0,
+      STUN(3, 4), DFNS(AD_MAGM), NO_CARY, 0, A_NEUTRAL, PM_WIZARD, NON_PM,
+      3500L),
+
+    A("Frost Brand", LONG_SWORD, (SPFX_RESTR | SPFX_ATTK | SPFX_DEFN), 0, 0,
+      COLD(5, 0), COLD(0, 0), NO_CARY, 0, A_NONE, NON_PM, NON_PM, 3000L),
+
+    A("Fire Brand", LONG_SWORD, (SPFX_RESTR | SPFX_ATTK | SPFX_DEFN), 0, 0,
+      FIRE(5, 0), FIRE(0, 0), NO_CARY, 0, A_NONE, NON_PM, NON_PM, 3000L),
+
+    A("Dragonbane", BROADSWORD, (SPFX_RESTR | SPFX_DCLAS), 0, S_DRAGON,
+      PHYS(5, 0), NO_DFNS, NO_CARY, 0, A_NONE, NON_PM, NON_PM, 500L),
+
+    A("Demonbane", LONG_SWORD, (SPFX_RESTR | SPFX_DFLAG2), 0, M2_DEMON,
+      PHYS(5, 0), NO_DFNS, NO_CARY, 0, A_LAWFUL, NON_PM, NON_PM, 2500L),
+
+    A("Werebane", SILVER_SABER, (SPFX_RESTR | SPFX_DFLAG2), 0, M2_WERE,
+      PHYS(5, 0), DFNS(AD_WERE), NO_CARY, 0, A_NONE, NON_PM, NON_PM, 1500L),
+
+    A("Grayswandir", SILVER_SABER, (SPFX_RESTR | SPFX_HALRES), 0, 0,
+      PHYS(5, 0), NO_DFNS, NO_CARY, 0, A_LAWFUL, NON_PM, NON_PM, 8000L),
+
+    A("Giantslayer", LONG_SWORD, (SPFX_RESTR | SPFX_DFLAG2), 0, M2_GIANT,
+      PHYS(5, 0), NO_DFNS, NO_CARY, 0, A_NEUTRAL, NON_PM, NON_PM, 200L),
+
+    A("Ogresmasher", WAR_HAMMER, (SPFX_RESTR | SPFX_DCLAS), 0, S_OGRE,
+      PHYS(5, 0), NO_DFNS, NO_CARY, 0, A_NONE, NON_PM, NON_PM, 200L),
+
+    A("Trollsbane", MORNING_STAR, (SPFX_RESTR | SPFX_DCLAS), 0, S_TROLL,
+      PHYS(5, 0), NO_DFNS, NO_CARY, 0, A_NONE, NON_PM, NON_PM, 200L),
+    /*
+     *      Two problems:  1) doesn't let trolls regenerate heads,
+     *      2) doesn't give unusual message for 2-headed monsters (but
+     *      allowing those at all causes more problems than worth the effort).
+     */
+    A("Vorpal Blade", LONG_SWORD, (SPFX_RESTR | SPFX_BEHEAD), 0, 0,
+      PHYS(5, 1), NO_DFNS, NO_CARY, 0, A_NEUTRAL, NON_PM, NON_PM, 4000L),
+    /*
+     *      Ah, never shall I forget the cry,
+     *              or the shriek that shrieked he,
+     *      As I gnashed my teeth, and from my sheath
+     *              I drew my Snickersnee!
+     *                      --Koko, Lord high executioner of Titipu
+     *                        (From Sir W.S. Gilbert's "The Mikado")
+     */
+    A("Snickersnee", KATANA, SPFX_RESTR, 0, 0, PHYS(0, 8), NO_DFNS, NO_CARY,
+      0, A_LAWFUL, PM_SAMURAI, NON_PM, 1200L),
+
+    A("Sunsword", LONG_SWORD, (SPFX_RESTR | SPFX_DFLAG2), 0, M2_UNDEAD,
+      PHYS(5, 0), DFNS(AD_BLND), NO_CARY, 0, A_LAWFUL, NON_PM, NON_PM, 1500L),
+
+    /*
+     *      The artifacts for the quest dungeon, all self-willed.
+     */
+
+    A("The Orb of Detection", CRYSTAL_BALL,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL), (SPFX_ESP | SPFX_HSPDAM), 0,
+      NO_ATTK, NO_DFNS, CARY(AD_MAGM), INVIS, A_LAWFUL, PM_ARCHEOLOGIST,
+      NON_PM, 2500L),
+
+    A("The Heart of Ahriman", LUCKSTONE,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL), SPFX_STLTH, 0,
+      /* this stone does double damage if used as a projectile weapon */
+      PHYS(5, 0), NO_DFNS, NO_CARY, LEVITATION, A_NEUTRAL, PM_BARBARIAN,
+      NON_PM, 2500L),
+
+    A("The Sceptre of Might", MACE,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_DALIGN), 0, 0, PHYS(5, 0),
+      DFNS(AD_MAGM), NO_CARY, CONFLICT, A_LAWFUL, PM_CAVEMAN, NON_PM, 2500L),
+
+#if 0 /* OBSOLETE */
+A("The Palantir of Westernesse",        CRYSTAL_BALL,
+        (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL),
+                (SPFX_ESP|SPFX_REGEN|SPFX_HSPDAM), 0,
+        NO_ATTK,        NO_DFNS,        NO_CARY,
+        TAMING,         A_CHAOTIC, NON_PM , PM_ELF, 8000L ),
 #endif
 
-A("The Staff of Aesculapius",  QUARTERSTAFF,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_ATTK|SPFX_INTEL|SPFX_DRLI|SPFX_REGEN), 0,0,
-       DRLI(0,0),      DRLI(0,0),      NO_CARY,
-       HEALING,        A_NEUTRAL, PM_HEALER, NON_PM, 5000L ),
-
-A("The Magic Mirror of Merlin", MIRROR,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_SPEAK), SPFX_ESP, 0,
-       NO_ATTK,        NO_DFNS,        CARY(AD_MAGM),
-       0,              A_LAWFUL, PM_KNIGHT, NON_PM, 1500L ),
-
-A("The Eyes of the Overworld", LENSES,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_XRAY), 0, 0,
-       NO_ATTK,        DFNS(AD_MAGM),  NO_CARY,
-       ENLIGHTENING,   A_NEUTRAL,       PM_MONK, NON_PM, 2500L ),
-
-A("The Mitre of Holiness",     HELM_OF_BRILLIANCE,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_DFLAG2|SPFX_INTEL|SPFX_PROTECT),
-               0, M2_UNDEAD,
-       NO_ATTK,        NO_DFNS,        CARY(AD_FIRE),
-       ENERGY_BOOST,   A_LAWFUL, PM_PRIEST, NON_PM, 2000L ),
-
-A("The Longbow of Diana", BOW,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_REFLECT), SPFX_ESP, 0,
-       PHYS(5,0),      NO_DFNS,        NO_CARY,
-       CREATE_AMMO, A_CHAOTIC, PM_RANGER, NON_PM, 4000L ),
-
-A("The Master Key of Thievery", SKELETON_KEY,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_SPEAK),
-               (SPFX_WARN|SPFX_TCTRL|SPFX_HPHDAM), 0,
-       NO_ATTK,        NO_DFNS,        NO_CARY,
-       UNTRAP,         A_CHAOTIC, PM_ROGUE, NON_PM, 3500L ),
-
-A("The Tsurugi of Muramasa",   TSURUGI,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_BEHEAD|SPFX_LUCK|SPFX_PROTECT),
-               0, 0,
-       PHYS(0,8),      NO_DFNS,        NO_CARY,
-       0,              A_LAWFUL, PM_SAMURAI, NON_PM, 4500L ),
-
-A("The Platinum Yendorian Express Card", CREDIT_CARD,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_DEFN),
-               (SPFX_ESP|SPFX_HSPDAM), 0,
-       NO_ATTK,        NO_DFNS,        CARY(AD_MAGM),
-       CHARGE_OBJ,     A_NEUTRAL, PM_TOURIST, NON_PM, 7000L ),
-
-A("The Orb of Fate",           CRYSTAL_BALL,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL|SPFX_LUCK),
-               (SPFX_WARN|SPFX_HSPDAM|SPFX_HPHDAM), 0,
-       NO_ATTK,        NO_DFNS,        NO_CARY,
-       LEV_TELE,       A_NEUTRAL, PM_VALKYRIE, NON_PM, 3500L ),
-
-A("The Eye of the Aethiopica", AMULET_OF_ESP,
-       (SPFX_NOGEN|SPFX_RESTR|SPFX_INTEL), (SPFX_EREGEN|SPFX_HSPDAM), 0,
-       NO_ATTK,        DFNS(AD_MAGM),  NO_CARY,
-       CREATE_PORTAL,  A_NEUTRAL, PM_WIZARD, NON_PM, 4000L ),
-
-/*
- *  terminator; otyp must be zero
- */
-A(0, 0, 0, 0, 0, NO_ATTK, NO_DFNS, NO_CARY, 0, A_NONE, NON_PM, NON_PM, 0L )
-
-};     /* artilist[] (or artifact_names[]) */
-
-#undef A
+    A("The Staff of Aesculapius", QUARTERSTAFF,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_ATTK | SPFX_INTEL | SPFX_DRLI
+       | SPFX_REGEN),
+      0, 0, DRLI(0, 0), DRLI(0, 0), NO_CARY, HEALING, A_NEUTRAL, PM_HEALER,
+      NON_PM, 5000L),
+
+    A("The Magic Mirror of Merlin", MIRROR,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_SPEAK), SPFX_ESP, 0,
+      NO_ATTK, NO_DFNS, CARY(AD_MAGM), 0, A_LAWFUL, PM_KNIGHT, NON_PM, 1500L),
+
+    A("The Eyes of the Overworld", LENSES,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_XRAY), 0, 0, NO_ATTK,
+      DFNS(AD_MAGM), NO_CARY, ENLIGHTENING, A_NEUTRAL, PM_MONK, NON_PM,
+      2500L),
+
+    A("The Mitre of Holiness", HELM_OF_BRILLIANCE,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_DFLAG2 | SPFX_INTEL | SPFX_PROTECT), 0,
+      M2_UNDEAD, NO_ATTK, NO_DFNS, CARY(AD_FIRE), ENERGY_BOOST, A_LAWFUL,
+      PM_PRIEST, NON_PM, 2000L),
+
+    A("The Longbow of Diana", BOW,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_REFLECT), SPFX_ESP, 0,
+      PHYS(5, 0), NO_DFNS, NO_CARY, CREATE_AMMO, A_CHAOTIC, PM_RANGER, NON_PM,
+      4000L),
+
+    A("The Master Key of Thievery", SKELETON_KEY,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_SPEAK),
+      (SPFX_WARN | SPFX_TCTRL | SPFX_HPHDAM), 0, NO_ATTK, NO_DFNS, NO_CARY,
+      UNTRAP, A_CHAOTIC, PM_ROGUE, NON_PM, 3500L),
+
+    A("The Tsurugi of Muramasa", TSURUGI,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_BEHEAD | SPFX_LUCK
+       | SPFX_PROTECT),
+      0, 0, PHYS(0, 8), NO_DFNS, NO_CARY, 0, A_LAWFUL, PM_SAMURAI, NON_PM,
+      4500L),
+
+    A("The Platinum Yendorian Express Card", CREDIT_CARD,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_DEFN),
+      (SPFX_ESP | SPFX_HSPDAM), 0, NO_ATTK, NO_DFNS, CARY(AD_MAGM),
+      CHARGE_OBJ, A_NEUTRAL, PM_TOURIST, NON_PM, 7000L),
+
+    A("The Orb of Fate", CRYSTAL_BALL,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL | SPFX_LUCK),
+      (SPFX_WARN | SPFX_HSPDAM | SPFX_HPHDAM), 0, NO_ATTK, NO_DFNS, NO_CARY,
+      LEV_TELE, A_NEUTRAL, PM_VALKYRIE, NON_PM, 3500L),
+
+    A("The Eye of the Aethiopica", AMULET_OF_ESP,
+      (SPFX_NOGEN | SPFX_RESTR | SPFX_INTEL), (SPFX_EREGEN | SPFX_HSPDAM), 0,
+      NO_ATTK, DFNS(AD_MAGM), NO_CARY, CREATE_PORTAL, A_NEUTRAL, PM_WIZARD,
+      NON_PM, 4000L),
+
+    /*
+     *  terminator; otyp must be zero
+     */
+    A(0, 0, 0, 0, 0, NO_ATTK, NO_DFNS, NO_CARY, 0, A_NONE, NON_PM, NON_PM, 0L)
+
+}; /* artilist[] (or artifact_names[]) */
+
+#undef A
 
 #ifndef MAKEDEFS_C
-#undef NO_ATTK
-#undef NO_DFNS
-#undef DFNS
-#undef PHYS
-#undef DRLI
-#undef COLD
-#undef FIRE
-#undef ELEC
-#undef STUN
+#undef NO_ATTK
+#undef NO_DFNS
+#undef DFNS
+#undef PHYS
+#undef DRLI
+#undef COLD
+#undef FIRE
+#undef ELEC
+#undef STUN
 #endif
 
 /*artilist.h*/
index ed11e6d866c00eca8f6507ec0b33e7d3f7360fbe..e9f8afcd01c6b967e89792ac2d7e247023e49a01 100644 (file)
@@ -9,38 +9,41 @@
 #ifndef ATTRIB_H
 #define ATTRIB_H
 
-#define A_STR  0
-#define A_INT  1
-#define A_WIS  2
-#define A_DEX  3
-#define A_CON  4
-#define A_CHA  5
-
-#define A_MAX  6       /* used in rn2() selection of attrib */
-
-#define ABASE(x)       (u.acurr.a[x])
-#define ABON(x)                (u.abon.a[x])
-#define AEXE(x)                (u.aexe.a[x])
-#define ACURR(x)       (acurr(x))
-#define ACURRSTR       (acurrstr())
+#define A_STR 0
+#define A_INT 1
+#define A_WIS 2
+#define A_DEX 3
+#define A_CON 4
+#define A_CHA 5
+
+#define A_MAX 6 /* used in rn2() selection of attrib */
+
+#define ABASE(x) (u.acurr.a[x])
+#define ABON(x) (u.abon.a[x])
+#define AEXE(x) (u.aexe.a[x])
+#define ACURR(x) (acurr(x))
+#define ACURRSTR (acurrstr())
 /* should be: */
 /* #define ACURR(x) (ABON(x) + ATEMP(x) + (Upolyd  ? MBASE(x) : ABASE(x)) */
-#define MCURR(x)       (u.macurr.a[x])
-#define AMAX(x)                (u.amax.a[x])
-#define MMAX(x)                (u.mamax.a[x])
+#define MCURR(x) (u.macurr.a[x])
+#define AMAX(x) (u.amax.a[x])
+#define MMAX(x) (u.mamax.a[x])
 
-#define ATEMP(x)       (u.atemp.a[x])
-#define ATIME(x)       (u.atime.a[x])
+#define ATEMP(x) (u.atemp.a[x])
+#define ATIME(x) (u.atime.a[x])
 
 /* KMH -- Conveniences when dealing with strength constants */
-#define STR18(x)       (18+(x))        /* 18/xx */
-#define STR19(x)       (100+(x))       /* For 19 and above */
+#define STR18(x) (18 + (x))  /* 18/xx */
+#define STR19(x) (100 + (x)) /* For 19 and above */
 
-struct attribs {
-       schar   a[A_MAX];
+struct attribs {
+    schar a[A_MAX];
 };
 
-#define ATTRMAX(x) ((x == A_STR && Upolyd && strongmonst(youmonst.data)) ? STR18(100) : urace.attrmax[x])
+#define ATTRMAX(x)                                        \
+    ((x == A_STR && Upolyd && strongmonst(youmonst.data)) \
+         ? STR18(100)                                     \
+         : urace.attrmax[x])
 #define ATTRMIN(x) (urace.attrmin[x])
 
 #endif /* ATTRIB_H */
index a6049472155c19571a2b0da6c7944a99fa583b08..5dae4d4acc2a2aaf0fc8f5b1ad0161e274b391f0 100644 (file)
@@ -15,7 +15,7 @@
 
 #define index strchr
 #define rindex strrchr
-#define Rand rand      /* Be should have a better rand function! */
+#define Rand rand /* Be should have a better rand function! */
 #define tgetch getchar
 #define FCMASK 0666
 #define PORT_ID "BeOS"
 #define POSIX_TYPES
 #define SIG_RET_TYPE __signal_func_ptr
 
-#include <time.h>      /* for time_t */
-#include <unistd.h>    /* for lseek() */
+#include <time.h>   /* for time_t */
+#include <unistd.h> /* for lseek() */
 
 /* could go in extern.h, under bemain.c (or something..) */
 void regularize(char *);
 
-
 /* instead of including system.h... */
 #include <string.h>
 #include <stdlib.h>
index cef1cf9cb631dbed741639a95edd7dbc9918149a..e035a1127abf6dda48f1198f8f7e7b63ea5c847e 100644 (file)
 #define ULONG unsigned long
 #define UBYTE unsigned char
 
-#define XIMG_MAGIC     0x58494D47
-
+#define XIMG_MAGIC 0x58494D47
 
 typedef enum { IMG, XIMG } FILE_TYP;
 
 const char *get_file_ext(FILE_TYP typ);
 
-struct RGB
-       {
-       UWORD r, g, b;
-       };
+struct RGB {
+    UWORD r, g, b;
+};
 
-int bitmap_to_file(FILE_TYP typ, int ww, int wh,
-                                                                        unsigned int pwx, unsigned int pwy,
-                                                                        unsigned int planes, unsigned int colors,
-                                                                        const char *filename,
-                                                                        void (*get_color) (unsigned int colind, struct RGB *rgb) ,
-                                                                        void (*get_pixel) (int x, int y, unsigned int *colind) ) ;
+int bitmap_to_file(FILE_TYP typ, int ww, int wh, unsigned int pwx,
+                   unsigned int pwy, unsigned int planes, unsigned int colors,
+                   const char *filename,
+                   void (*get_color)(unsigned int colind, struct RGB *rgb),
+                   void (*get_pixel)(int x, int y, unsigned int *colind));
 
 #endif
-
index f2ad4924c7c3ad0a56f5f6c433ebb32a87a8dc28..65a893ebbd4310b8fd2bfe78e3b20cd3cfef0d9d 100644 (file)
@@ -1,6 +1,6 @@
-/* NetHack 3.6 botl.h  $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
-/* NetHack 3.6 botl.h  $Date: 2012/01/10 17:47:16 $  $Revision: 1.6 $ */
-/* Copyright (c) Michael Allison, 2003                           */
+/* NetHack 3.6  botl.h  $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
+/* NetHack 3.6  botl.h  $Date: 2012/01/10 17:47:16 $  $Revision: 1.6 $ */
+/* Copyright (c) Michael Allison, 2003                            */
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef BOTL_H
@@ -8,58 +8,62 @@
 
 #ifdef STATUS_VIA_WINDOWPORT
 
-#define BL_FLUSH       -1
-#define BL_TITLE       0
-#define BL_STR         1
-#define BL_DX          2
-#define BL_CO          3
-#define BL_IN          4
-#define BL_WI          5
-#define BL_CH          6
-#define BL_ALIGN       7
-#define BL_SCORE       8
-#define BL_CAP         9
-#define BL_GOLD                10
-#define BL_ENE         11
-#define BL_ENEMAX      12
-#define BL_XP          13
-#define BL_AC          14
-#define BL_HD          15
-#define BL_TIME                16
-#define BL_HUNGER      17
-#define BL_HP          18
-#define BL_HPMAX       19
-#define BL_LEVELDESC   20
-#define BL_EXP         21
-#define BL_CONDITION   22
-#define MAXBLSTATS     23
+/* clang-format off */
+#define BL_FLUSH        -1
+#define BL_TITLE        0
+#define BL_STR          1
+#define BL_DX           2
+#define BL_CO           3
+#define BL_IN           4
+#define BL_WI           5
+#define BL_CH           6
+#define BL_ALIGN        7
+#define BL_SCORE        8
+#define BL_CAP          9
+#define BL_GOLD         10
+#define BL_ENE          11
+#define BL_ENEMAX       12
+#define BL_XP           13
+#define BL_AC           14
+#define BL_HD           15
+#define BL_TIME         16
+#define BL_HUNGER       17
+#define BL_HP           18
+#define BL_HPMAX        19
+#define BL_LEVELDESC    20
+#define BL_EXP          21
+#define BL_CONDITION    22
+#define MAXBLSTATS      23
+/* clang-format on */
 
 /* Boolean condition bits for the condition mask */
 
-#define BL_MASK_BLIND          0x00000001L
-#define BL_MASK_CONF           0x00000002L
-#define BL_MASK_FOODPOIS       0x00000004L
-#define BL_MASK_ILL            0x00000008L
-#define BL_MASK_HALLU          0x00000010L
-#define BL_MASK_STUNNED                0x00000020L
-#define BL_MASK_SLIMED         0x00000040L
+/* clang-format off */
+#define BL_MASK_BLIND           0x00000001L
+#define BL_MASK_CONF            0x00000002L
+#define BL_MASK_FOODPOIS        0x00000004L
+#define BL_MASK_ILL             0x00000008L
+#define BL_MASK_HALLU           0x00000010L
+#define BL_MASK_STUNNED         0x00000020L
+#define BL_MASK_SLIMED          0x00000040L
+/* clang-format on */
 
-#define REASSESS_ONLY  TRUE
+#define REASSESS_ONLY TRUE
 
 #ifdef STATUS_HILITES
 /* hilite status field behavior - coloridx values */
-#define BL_HILITE_NONE         -1      /* no hilite of this field */
-#define BL_HILITE_INVERSE      -2      /* inverse hilite */
-#define BL_HILITE_BOLD         -3      /* bold hilite */
-                                       /* or any CLR_ index (0 - 15) */
-#define BL_TH_NONE             0
-#define BL_TH_VAL_PERCENTAGE   100     /* threshold is percentage */
-#define BL_TH_VAL_ABSOLUTE     101     /* threshold is particular value */
-#define BL_TH_UPDOWN           102     /* threshold is up or down change */
-#define BL_TH_CONDITION                103     /* threshold is bitmask of conditions */
+#define BL_HILITE_NONE -1    /* no hilite of this field */
+#define BL_HILITE_INVERSE -2 /* inverse hilite */
+#define BL_HILITE_BOLD -3    /* bold hilite */
+                             /* or any CLR_ index (0 - 15) */
+#define BL_TH_NONE 0
+#define BL_TH_VAL_PERCENTAGE 100 /* threshold is percentage */
+#define BL_TH_VAL_ABSOLUTE 101   /* threshold is particular value */
+#define BL_TH_UPDOWN 102         /* threshold is up or down change */
+#define BL_TH_CONDITION 103      /* threshold is bitmask of conditions */
 #endif
 
-extern const char *status_fieldnames[];                /* in botl.c */
+extern const char *status_fieldnames[]; /* in botl.c */
 #endif
 
 #endif /* BOTL_H */
index dd4309cb158994a0f043367961a6eee6c42e703f..9370d52bd5ffd8408264b103bb96beaf69b56451 100644 (file)
  * exceptions, these are listed below. Bright black doesn't mean very
  * much, so it is used as the "default" foreground color of the screen.
  */
-#define CLR_BLACK              0
-#define CLR_RED                        1
-#define CLR_GREEN              2
-#define CLR_BROWN              3 /* on IBM, low-intensity yellow is brown */
-#define CLR_BLUE               4
-#define CLR_MAGENTA            5
-#define CLR_CYAN               6
-#define CLR_GRAY               7 /* low-intensity white */
-#define NO_COLOR               8
-#define CLR_ORANGE             9
-#define CLR_BRIGHT_GREEN       10
-#define CLR_YELLOW             11
-#define CLR_BRIGHT_BLUE                12
-#define CLR_BRIGHT_MAGENTA     13
-#define CLR_BRIGHT_CYAN                14
-#define CLR_WHITE              15
-#define CLR_MAX                        16
+#define CLR_BLACK 0
+#define CLR_RED 1
+#define CLR_GREEN 2
+#define CLR_BROWN 3 /* on IBM, low-intensity yellow is brown */
+#define CLR_BLUE 4
+#define CLR_MAGENTA 5
+#define CLR_CYAN 6
+#define CLR_GRAY 7 /* low-intensity white */
+#define NO_COLOR 8
+#define CLR_ORANGE 9
+#define CLR_BRIGHT_GREEN 10
+#define CLR_YELLOW 11
+#define CLR_BRIGHT_BLUE 12
+#define CLR_BRIGHT_MAGENTA 13
+#define CLR_BRIGHT_CYAN 14
+#define CLR_WHITE 15
+#define CLR_MAX 16
 
 /* The "half-way" point for tty based color systems.  This is used in */
 /* the tty color setup code.  (IMHO, it should be removed - dean).    */
-#define BRIGHT         8
+#define BRIGHT 8
 
 /* these can be configured */
-#define HI_OBJ         CLR_MAGENTA
-#define HI_METAL       CLR_CYAN
-#define HI_COPPER      CLR_YELLOW
-#define HI_SILVER      CLR_GRAY
-#define HI_GOLD                CLR_YELLOW
-#define HI_LEATHER     CLR_BROWN
-#define HI_CLOTH       CLR_BROWN
-#define HI_ORGANIC     CLR_BROWN
-#define HI_WOOD                CLR_BROWN
-#define HI_PAPER       CLR_WHITE
-#define HI_GLASS       CLR_BRIGHT_CYAN
-#define HI_MINERAL     CLR_GRAY
-#define DRAGON_SILVER  CLR_BRIGHT_CYAN
-#define HI_ZAP         CLR_BRIGHT_BLUE
+#define HI_OBJ CLR_MAGENTA
+#define HI_METAL CLR_CYAN
+#define HI_COPPER CLR_YELLOW
+#define HI_SILVER CLR_GRAY
+#define HI_GOLD CLR_YELLOW
+#define HI_LEATHER CLR_BROWN
+#define HI_CLOTH CLR_BROWN
+#define HI_ORGANIC CLR_BROWN
+#define HI_WOOD CLR_BROWN
+#define HI_PAPER CLR_WHITE
+#define HI_GLASS CLR_BRIGHT_CYAN
+#define HI_MINERAL CLR_GRAY
+#define DRAGON_SILVER CLR_BRIGHT_CYAN
+#define HI_ZAP CLR_BRIGHT_BLUE
 
 struct menucoloring {
     struct nhregex *match;
index 2d06c044e0f3514fc6f58c48e188b83ba7d790a8..33fa6a0cefcbcffcd292dedde897ee4f20063aae 100644 (file)
@@ -3,10 +3,10 @@
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* NetHack may be freely redistributed.  See license for details. */
 
-#ifndef CONFIG_H /* make sure the compiler does not see the typedefs twice */
+#ifndef CONFIG_H /* make sure the compiler does not see the typedefs twice \
+                    */
 #define CONFIG_H
 
-
 /*
  * Section 1:  Operating and window systems selection.
  *             Select the version of the OS you are using.
  *             provide it (no need to change sec#1, vmsconf.h handles it).
  */
 
-#define UNIX           /* delete if no fork(), exec() available */
+#define UNIX /* delete if no fork(), exec() available */
 
-/* #define MSDOS */    /* in case it's not auto-detected */
+/* #define MSDOS */ /* in case it's not auto-detected */
 
-/* #define OS2 */      /* define for OS/2 */
+/* #define OS2 */ /* define for OS/2 */
 
-/* #define TOS */      /* define for Atari ST/TT */
+/* #define TOS */ /* define for Atari ST/TT */
 
-/* #define STUPID */   /* avoid some complicated expressions if
-                          your C compiler chokes on them */
+/* #define STUPID */ /* avoid some complicated expressions if
+                        your C compiler chokes on them */
 /* #define MINIMAL_TERM */
-                       /* if a terminal handles highlighting or tabs poorly,
-                          try this define, used in pager.c and termcap.c */
+/* if a terminal handles highlighting or tabs poorly,
+   try this define, used in pager.c and termcap.c */
 /* #define ULTRIX_CC20 */
-                       /* define only if using cc v2.0 on a DECstation */
+/* define only if using cc v2.0 on a DECstation */
 /* #define ULTRIX_PROTO */
-                       /* define for Ultrix 4.0 (or higher) on a DECstation;
-                        * if you get compiler errors, don't define this. */
-                       /* Hint: if you're not developing code, don't define
-                          ULTRIX_PROTO. */
-
-#include "config1.h"   /* should auto-detect MSDOS, MAC, AMIGA, and WIN32 */
+/* define for Ultrix 4.0 (or higher) on a DECstation;
+ * if you get compiler errors, don't define this. */
+/* Hint: if you're not developing code, don't define
+   ULTRIX_PROTO. */
 
+#include "config1.h" /* should auto-detect MSDOS, MAC, AMIGA, and WIN32 */
 
 /* Windowing systems...
  * Define all of those you want supported in your binary.
  * Some combinations make no sense.  See the installation document.
  */
 #if !defined(NOTTYGRAPHICS)
-# define TTY_GRAPHICS  /* good old tty based graphics */
+#define TTY_GRAPHICS /* good old tty based graphics */
 #endif
-/* #define X11_GRAPHICS */     /* X11 interface */
-/* #define QT_GRAPHICS */      /* Qt interface */
-/* #define GNOME_GRAPHICS */   /* Gnome interface */
-/* #define MSWIN_GRAPHICS */   /* Windows NT, CE, Graphics */
+/* #define X11_GRAPHICS */   /* X11 interface */
+/* #define QT_GRAPHICS */    /* Qt interface */
+/* #define GNOME_GRAPHICS */ /* Gnome interface */
+/* #define MSWIN_GRAPHICS */ /* Windows NT, CE, Graphics */
 
 /*
  * Define the default window system.  This should be one that is compiled
 
 /* MAC also means MAC windows */
 #ifdef MAC
-# ifndef       AUX
-#  define DEFAULT_WINDOW_SYS "mac"
-# endif
+#ifndef AUX
+#define DEFAULT_WINDOW_SYS "mac"
+#endif
 #endif
 
 /* Amiga supports AMII_GRAPHICS and/or TTY_GRAPHICS */
 #ifdef AMIGA
-# define AMII_GRAPHICS                 /* (optional) */
-# define DEFAULT_WINDOW_SYS "amii"     /* "amii", "amitile" or "tty" */
+#define AMII_GRAPHICS             /* (optional) */
+#define DEFAULT_WINDOW_SYS "amii" /* "amii", "amitile" or "tty" */
 #endif
 
 /* Atari supports GEM_GRAPHICS and/or TTY_GRAPHICS */
 #ifdef TOS
-# define GEM_GRAPHICS                  /* Atari GEM interface (optional) */
-# define DEFAULT_WINDOW_SYS "Gem"      /* "Gem" or "tty" */
+#define GEM_GRAPHICS             /* Atari GEM interface (optional) */
+#define DEFAULT_WINDOW_SYS "Gem" /* "Gem" or "tty" */
 #endif
 
 #ifdef __BEOS__
-#define BEOS_GRAPHICS /* (optional) */
-#define DEFAULT_WINDOW_SYS "BeOS"  /* "tty" */
-#ifndef HACKDIR        /* override the default hackdir below */
-# define HACKDIR "/boot/apps/NetHack"
+#define BEOS_GRAPHICS             /* (optional) */
+#define DEFAULT_WINDOW_SYS "BeOS" /* "tty" */
+#ifndef HACKDIR                   /* override the default hackdir below */
+#define HACKDIR "/boot/apps/NetHack"
 #endif
 #endif
 
 #ifdef QT_GRAPHICS
-# ifndef DEFAULT_WC_TILED_MAP
-#  define DEFAULT_WC_TILED_MAP /* Default to tiles if users doesn't say wc_ascii_map */
-# endif
+#ifndef DEFAULT_WC_TILED_MAP
+#define DEFAULT_WC_TILED_MAP /* Default to tiles if users doesn't say \
+                                wc_ascii_map */
+#endif
 #ifndef NOUSER_SOUNDS
-# define USER_SOUNDS           /* Use sounds */
+#define USER_SOUNDS /* Use sounds */
+#endif
+#define USE_XPM           /* Use XPM format for images (required) */
+#define GRAPHIC_TOMBSTONE /* Use graphical tombstone (rip.ppm) */
+#ifndef DEFAULT_WINDOW_SYS
+#define DEFAULT_WINDOW_SYS "Qt"
 #endif
-# define USE_XPM               /* Use XPM format for images (required) */
-# define GRAPHIC_TOMBSTONE     /* Use graphical tombstone (rip.ppm) */
-# ifndef DEFAULT_WINDOW_SYS
-#  define DEFAULT_WINDOW_SYS "Qt"
-# endif
 #endif
 
 #ifdef GNOME_GRAPHICS
-# define USE_XPM               /* Use XPM format for images (required) */
-# define GRAPHIC_TOMBSTONE     /* Use graphical tombstone (rip.ppm) */
-# ifndef DEFAULT_WINDOW_SYS
-#  define DEFAULT_WINDOW_SYS "Gnome"
-# endif
+#define USE_XPM           /* Use XPM format for images (required) */
+#define GRAPHIC_TOMBSTONE /* Use graphical tombstone (rip.ppm) */
+#ifndef DEFAULT_WINDOW_SYS
+#define DEFAULT_WINDOW_SYS "Gnome"
+#endif
 #endif
 
 #ifdef MSWIN_GRAPHICS
-# ifndef DEFAULT_WINDOW_SYS
-#  define DEFAULT_WINDOW_SYS "mswin"
-# endif
-# define HACKDIR "\\nethack"
+#ifndef DEFAULT_WINDOW_SYS
+#define DEFAULT_WINDOW_SYS "mswin"
+#endif
+#define HACKDIR "\\nethack"
 #endif
 
 #ifndef DEFAULT_WINDOW_SYS
-# define DEFAULT_WINDOW_SYS "tty"
+#define DEFAULT_WINDOW_SYS "tty"
 #endif
 
 #ifdef X11_GRAPHICS
  * would allow:
  *  xpmtoppm <x11tiles.xpm | pnmscale 1.25 | ppmquant 90 >x11tiles_big.xpm
  */
-/* # define USE_XPM */         /* Disable if you do not have the XPM library */
-# ifdef USE_XPM
-#  define GRAPHIC_TOMBSTONE    /* Use graphical tombstone (rip.xpm) */
-# endif
-# ifndef DEFAULT_WC_TILED_MAP
-#  define DEFAULT_WC_TILED_MAP /* Default to tiles */
-# endif
+/* # define USE_XPM */ /* Disable if you do not have the XPM library */
+#ifdef USE_XPM
+#define GRAPHIC_TOMBSTONE /* Use graphical tombstone (rip.xpm) */
+#endif
+#ifndef DEFAULT_WC_TILED_MAP
+#define DEFAULT_WC_TILED_MAP /* Default to tiles */
+#endif
 #endif
-
 
 /*
  * Section 2:  Some global parameters and filenames.
  *                              (this does NOT default to compiled-in value)
  *             MAXPLAYERS      (see MAX_NR_OF_PLAYERS above and nethack.sh)
  *             SUPPORT         (how to get local support)(no default)
- *             RECOVER         (how to recover a game at your site)(no default)
+ *             RECOVER         (how to recover a game at your site)(no
+ *default)
  *             SHELLERS        (who can use !, syntax as WIZARDS)
  *               for the record file (see topten.c):
  *             PERSMAX         (max entries for one person)
  *             ENTRYMAX        (max entries in the record file)
  *             POINTSMIN       (min points to get an entry)
  *             PERS_IS_UID     (0 or 1 - person is name or (numeric) userid)
- *             SEDUCE          (0 or 1 - runtime disable/enable SEDUCE option)
+ *             SEDUCE          (0 or 1 - runtime disable/enable SEDUCE
+ *option)
  *
  *             The following options select how the config space is stored:
  *             SYSCF_FILE      in the named file
  *              GDBPATH                (the path to the system gdb(1) program)
  */
 
-#ifndef WIZARD_NAME            /* allow for compile-time or Makefile changes */
-# define WIZARD_NAME "wizard"
+#ifndef WIZARD_NAME /* allow for compile-time or Makefile changes */
+#define WIZARD_NAME "wizard"
 #endif
 
 #ifndef SYSCF
-#define SYSCF /* use a global configuration */
+#define SYSCF                /* use a global configuration */
 #define SYSCF_FILE "sysconf" /* global configuration is in a file */
 #endif
 
 #ifndef GDBPATH
-# define GDBPATH "/usr/bin/gdb"
+#define GDBPATH "/usr/bin/gdb"
 #endif
 #ifndef GREPPATH
-# define GREPPATH "/bin/grep"
+#define GREPPATH "/bin/grep"
 #endif
 
-#define LOGFILE "logfile"      /* larger file for debugging purposes */
-#define XLOGFILE "xlogfile"    /* even larger logfile */
-#define NEWS "news"            /* the file containing the latest hack news */
-#define PANICLOG "paniclog"    /* log of panic and impossible events */
+#define LOGFILE "logfile"   /* larger file for debugging purposes */
+#define XLOGFILE "xlogfile" /* even larger logfile */
+#define NEWS "news"         /* the file containing the latest hack news */
+#define PANICLOG "paniclog" /* log of panic and impossible events */
 
 #ifndef PERSMAX
-# define PERSMAX        3       /* entries per name/uid per char. allowed */
+#define PERSMAX 3 /* entries per name/uid per char. allowed */
 #endif
 #ifndef POINTSMIN
-# define POINTSMIN      1       /* must be > 0 */
+#define POINTSMIN 1 /* must be > 0 */
 #endif
 #ifndef ENTRYMAX
-# define ENTRYMAX       100     /* must be >= 10 */
+#define ENTRYMAX 100 /* must be >= 10 */
 #endif
 #ifndef PERS_IS_UID
-# if !defined(MICRO) && !defined(MAC) && !defined(WIN32)
-#  define PERS_IS_UID   1         /* delete for PERSMAX per name; now per uid */
-# else
-#  define PERS_IS_UID   0
-# endif
+#if !defined(MICRO) && !defined(MAC) && !defined(WIN32)
+#define PERS_IS_UID 1 /* delete for PERSMAX per name; now per uid */
+#else
+#define PERS_IS_UID 0
+#endif
 #endif
-
 
 /*
  *     If COMPRESS is defined, it should contain the full path name of your
  *     COMPRESS and ZLIB_COMP are mutually exclusive.
  *
  */
+
 #if defined(UNIX) && !defined(ZLIB_COMP) && !defined(COMPRESS)
 /* path and file name extension for compression program */
-#define COMPRESS "/usr/bin/compress"   /* Lempel-Ziv compression */
-#define COMPRESS_EXTENSION ".Z"                /* compress's extension */
+#define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */
+#define COMPRESS_EXTENSION ".Z"      /* compress's extension */
 /* An example of one alternative you might want to use: */
-/* #define COMPRESS "/usr/local/bin/gzip" */   /* FSF gzip compression */
-/* #define COMPRESS_EXTENSION ".gz" */         /* normal gzip extension */
+/* #define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */
+/* #define COMPRESS_EXTENSION ".gz" */       /* normal gzip extension */
 #endif
 
 #ifndef COMPRESS
-/* # define ZLIB_COMP          */      /* ZLIB for compression */
+/* # define ZLIB_COMP          */ /* ZLIB for compression */
 #endif
 
 /*
  *     files at the cost of additional code and time.
  */
 
-/* # define INTERNAL_COMP      */      /* defines both ZEROCOMP and RLECOMP */
-/* # define ZEROCOMP           */      /* Support ZEROCOMP compression */
-/* # define RLECOMP            */      /* Support RLECOMP compression  */
+/* # define INTERNAL_COMP      */ /* defines both ZEROCOMP and RLECOMP */
+/* # define ZEROCOMP           */ /* Support ZEROCOMP compression */
+/* # define RLECOMP            */ /* Support RLECOMP compression  */
 
 /*
  *     Data librarian.  Defining DLB places most of the support files into
  *     a tar-like file, thus making a neater installation.  See *conf.h
  *     for detailed configuration.
  */
-/* #define DLB */      /* not supported on all platforms */
+/* #define DLB */ /* not supported on all platforms */
 
 /*
  *     Defining INSURANCE slows down level changes, but allows games that
  *     died due to program or system crashes to be resumed from the point
  *     of the last level change, after running a utility program.
  */
-#define INSURANCE      /* allow crashed game recovery */
+#define INSURANCE /* allow crashed game recovery */
 
 #ifndef MAC
-# define CHDIR         /* delete if no chdir() available */
+#define CHDIR /* delete if no chdir() available */
 #endif
 
 #ifdef CHDIR
  * If you define HACKDIR, then this will be the default playground;
  * otherwise it will be the current directory.
  */
-# ifndef HACKDIR
-#  define HACKDIR "/usr/games/lib/nethackdir"
-# endif
+#ifndef HACKDIR
+#define HACKDIR "/usr/games/lib/nethackdir"
+#endif
 
 /*
  * Some system administrators are stupid enough to make Hack suid root
  * since the user might create files in a directory of his choice.
  * Of course SECURE is meaningful only if HACKDIR is defined.
  */
-/* #define SECURE */   /* do setuid(getuid()) after chdir() */
+/* #define SECURE */ /* do setuid(getuid()) after chdir() */
 
 /*
  * If it is desirable to limit the number of people that can play Hack
  */
 #endif /* CHDIR */
 
-
 /* If GENERIC_USERNAMES is defined, and the user name is found
  * in that list, prompt for username instead.
  * A public server should probably disable this. */
 #define GENERIC_USERNAMES "play player game games nethack nethacker"
 
-
 /*
  * Section 3:  Definitions that may vary with system type.
  *             For example, both schar and uchar should be short ints on
  * 'void' type (and thus would give all sorts of compile errors without
  * this definition).
  */
-/* #define NOVOID */                   /* define if no "void" data type. */
+/* #define NOVOID */ /* define if no "void" data type. */
 
 /*
  * Uncomment the following line if your compiler falsely claims to be
  * a standard C compiler (i.e., defines __STDC__ without cause).
  * Examples are Apollo's cc (in some versions) and possibly SCO UNIX's rcc.
  */
-/* #define NOTSTDC */                  /* define for lying compilers */
+/* #define NOTSTDC */ /* define for lying compilers */
 
 #include "tradstdc.h"
 
  *     typedef short int schar;
  */
 #ifdef AZTEC
-# define schar char
+#define schar char
 #else
-typedef signed char    schar;
+typedef signed char schar;
 #endif
 
 /*
@@ -368,8 +366,8 @@ typedef signed char schar;
  *
  *     typedef unsigned short int uchar;
  */
-#ifndef _AIX32         /* identical typedef in system file causes trouble */
-typedef unsigned char  uchar;
+#ifndef _AIX32 /* identical typedef in system file causes trouble */
+typedef unsigned char uchar;
 #endif
 
 /*
@@ -379,9 +377,9 @@ typedef unsigned char       uchar;
  * allocate a separate character for each bitfield.  (The bitfields used never
  * have more than 7 bits, and most are only 1 bit.)
  */
-#define BITFIELDS      /* Good bitfield handling */
+#define BITFIELDS /* Good bitfield handling */
 
-/* #define STRNCMPI */ /* compiler/library has the strncmpi function */
+/* #define STRNCMPI */ /* compiler/library has the strncmpi function */
 
 /*
  * There are various choices for the NetHack vision system.  There is a
@@ -398,9 +396,9 @@ typedef unsigned char       uchar;
 
 /* #define VISION_TABLES */ /* use vision tables generated at compile time */
 #ifndef VISION_TABLES
-# ifndef NO_MACRO_CPATH
-#  define MACRO_CPATH  /* use clear_path macros instead of functions */
-# endif
+#ifndef NO_MACRO_CPATH
+#define MACRO_CPATH /* use clear_path macros instead of functions */
+#endif
 #endif
 
 /*
@@ -417,14 +415,14 @@ typedef unsigned char     uchar;
 /* monsters & objects */
 /* I/O */
 #if !defined(MAC)
-# if !defined(NOCLIPPING)
-# define CLIPPING      /* allow smaller screens -- ERS */
-# endif
+#if !defined(NOCLIPPING)
+#define CLIPPING /* allow smaller screens -- ERS */
+#endif
 #endif
 
 #define DOAGAIN '\001' /* ^A, the "redo" key used in cmd.c and getline.c */
 
-/* #define SCORE_ON_BOTL */    /* added by Gary Erickson (erickson@ucivax) */
+/* #define SCORE_ON_BOTL */ /* added by Gary Erickson (erickson@ucivax) */
 
 /*
  * Section 5:  EXPERIMENTAL STUFF
@@ -434,11 +432,12 @@ typedef unsigned char     uchar;
  * bugs left here.
  */
 
-/* #define STATUS_VIA_WINDOWPORT */    /* re-work of the status line updating process */
-/* #define STATUS_HILITES */           /* support hilites of status fields */
-/* #define WINCHAIN*/          /* stacked window systems */
+/* #define STATUS_VIA_WINDOWPORT */ /* re-work of the status line updating
+                                       process */
+/* #define STATUS_HILITES */        /* support hilites of status fields */
+/* #define WINCHAIN*/               /* stacked window systems */
 /* End of Section 5 */
 
-#include "global.h"    /* Define everything else according to choices above */
+#include "global.h" /* Define everything else according to choices above */
 
 #endif /* CONFIG_H */
index d8477c2052cb5a6e3af7e8ce60929738f2171cc8..8bb029f4475e349b6c6a020914a1fdb0060e5b9d 100644 (file)
  * DJGPP       auto-defines MSDOS.
  */
 
-/* #define MSDOS */    /* use if not defined by compiler or cases below */
+/* #define MSDOS */ /* use if not defined by compiler or cases below */
 
-#ifdef __MSDOS__       /* for Borland C */
-# ifndef MSDOS
-# define MSDOS
-# endif
+#ifdef __MSDOS__ /* for Borland C */
+#ifndef MSDOS
+#define MSDOS
+#endif
 #endif
 
 #ifdef __TURBOC__
-# define __MSC         /* increase Borland C compatibility in libraries */
+#define __MSC /* increase Borland C compatibility in libraries */
 #endif
 
 #ifdef MSDOS
-# undef UNIX
+#undef UNIX
 #endif
 
 /*
  * Mac Stuff.
  */
 #if defined(__APPLE__) && defined(__MACH__)
-# define MACOSX
+#define MACOSX
 #endif
 
-#ifdef macintosh       /* Auto-defined symbol for MPW compilers (sc and mrc) */
-# define MAC
+#ifdef macintosh /* Auto-defined symbol for MPW compilers (sc and mrc) */
+#define MAC
 #endif
 
-#ifdef THINK_C         /* Think C auto-defined symbol */
-# define MAC
-# define NEED_VARARGS
+#ifdef THINK_C /* Think C auto-defined symbol */
+#define MAC
+#define NEED_VARARGS
 #endif
 
-#ifdef __MWERKS__      /* defined by Metrowerks' Codewarrior compiler */
-# ifndef __BEOS__      /* BeOS */
-#  define MAC
-# endif
-# define NEED_VARARGS
-# define USE_STDARG
+#ifdef __MWERKS__ /* defined by Metrowerks' Codewarrior compiler */
+#ifndef __BEOS__  /* BeOS */
+#define MAC
+#endif
+#define NEED_VARARGS
+#define USE_STDARG
 #endif
 
 #if defined(MAC) || defined(__BEOS__)
-# define DLB
-# undef UNIX
+#define DLB
+#undef UNIX
 #endif
 
 #ifdef __BEOS__
-# define NEED_VARARGS
+#define NEED_VARARGS
 #endif
 
-
 /*
  * Amiga setup.
  */
-#ifdef AZTEC_C /* Manx auto-defines this */
-# ifdef MCH_AMIGA      /* Manx auto-defines this for AMIGA */
-#  ifndef AMIGA
-#define AMIGA          /* define for Commodore-Amiga */
-#  endif               /* (SAS/C auto-defines AMIGA) */
-#define AZTEC_50       /* define for version 5.0 of manx */
-# endif
+#ifdef AZTEC_C   /* Manx auto-defines this */
+#ifdef MCH_AMIGA /* Manx auto-defines this for AMIGA */
+#ifndef AMIGA
+#define AMIGA    /* define for Commodore-Amiga */
+#endif           /* (SAS/C auto-defines AMIGA) */
+#define AZTEC_50 /* define for version 5.0 of manx */
+#endif
 #endif
 #ifdef __SASC_60
-# define NEARDATA __near /* put some data close */
+#define NEARDATA __near /* put some data close */
 #else
-# ifdef _DCC
-# define NEARDATA __near /* put some data close */
-# else
-# define NEARDATA
-# endif
+#ifdef _DCC
+#define NEARDATA __near /* put some data close */
+#else
+#define NEARDATA
+#endif
 #endif
 #ifdef AMIGA
-# define NEED_VARARGS
-# undef UNIX
-# define DLB
-# define HACKDIR "NetHack:"
-# define NO_MACRO_CPATH
+#define NEED_VARARGS
+#undef UNIX
+#define DLB
+#define HACKDIR "NetHack:"
+#define NO_MACRO_CPATH
 #endif
 
 /*
  */
 
 #ifdef atarist
-# undef UNIX
-# ifndef TOS
-# define TOS
-# endif
+#undef UNIX
+#ifndef TOS
+#define TOS
+#endif
 #else
-# ifdef __MINT__
-#  undef UNIX
-#  ifndef TOS
-#  define TOS
-#  endif
-# endif
+#ifdef __MINT__
+#undef UNIX
+#ifndef TOS
+#define TOS
+#endif
+#endif
 #endif
 
 /*
  */
 #ifdef _WIN32_WCE
 #define WIN_CE
-# ifndef WIN32
-# define WIN32
-# endif
+#ifndef WIN32
+#define WIN32
+#endif
 #endif
 
 #if defined(_WIN32) && !defined(WIN32)
 #endif
 
 #ifdef WIN32
-# undef UNIX
-# undef MSDOS
-# define NHSTDC
-# define USE_STDARG
-# define NEED_VARARGS
+#undef UNIX
+#undef MSDOS
+#define NHSTDC
+#define USE_STDARG
+#define NEED_VARARGS
 
 #ifndef WIN_CE
-# define STRNCMPI
-# define STRCMPI
+#define STRNCMPI
+#define STRCMPI
 #endif
 
 #endif
 
-
 #if defined(__linux__) && defined(__GNUC__) && !defined(_GNU_SOURCE)
 /* ensure _GNU_SOURCE is defined before including any system headers */
-# define _GNU_SOURCE
-#endif
-
-#ifdef VMS     /* really old compilers need special handling, detected here */
-# undef UNIX
-# ifdef __DECC
-#  ifndef __DECC_VER   /* buggy early versions want widened prototypes */
-#   define NOTSTDC     /* except when typedefs are involved            */
-#   define USE_VARARGS
-#  else
-#   define NHSTDC
-#   define USE_STDARG
-#   define POSIX_TYPES
-#   define _DECC_V4_SOURCE     /* avoid some incompatible V5.x changes */
-#  endif
-#  undef __HIDE_FORBIDDEN_NAMES /* need non-ANSI library support functions */
-#  ifdef VAXC      /* DEC C in VAX C compatability mode; 'signed' works   */
-#   define signed   /* but causes diagnostic about VAX C not supporting it */
-#  endif
-# else
-#  ifdef VAXC  /* must use CC/DEFINE=ANCIENT_VAXC for vaxc v2.2 or older */
-#   define signed
-#   ifdef ANCIENT_VAXC /* vaxc v2.2 and earlier [lots of warnings to come] */
-#    define KR1ED      /* simulate defined() */
-#    define USE_VARARGS
-#   else               /* vaxc v2.3,2.4,or 3.x, or decc in vaxc mode */
-#     if defined(USE_PROTOTYPES) /* this breaks 2.2 (*forces* use of ANCIENT)*/
-#      define __STDC__ 0 /* vaxc is not yet ANSI compliant, but close enough */
+#define _GNU_SOURCE
+#endif
+
+#ifdef VMS /* really old compilers need special handling, detected here */
+#undef UNIX
+#ifdef __DECC
+#ifndef __DECC_VER /* buggy early versions want widened prototypes */
+#define NOTSTDC    /* except when typedefs are involved                */
+#define USE_VARARGS
+#else
+#define NHSTDC
+#define USE_STDARG
+#define POSIX_TYPES
+#define _DECC_V4_SOURCE /* avoid some incompatible V5.x changes */
+#endif
+#undef __HIDE_FORBIDDEN_NAMES /* need non-ANSI library support functions */
+#ifdef VAXC    /* DEC C in VAX C compatability mode; 'signed' works   */
+#define signed /* but causes diagnostic about VAX C not supporting it */
+#endif
+#else
+#ifdef VAXC /* must use CC/DEFINE=ANCIENT_VAXC for vaxc v2.2 or older */
+#define signed
+#ifdef ANCIENT_VAXC /* vaxc v2.2 and earlier [lots of warnings to come] */
+#define KR1ED       /* simulate defined() */
+#define USE_VARARGS
+#else                       /* vaxc v2.3,2.4,or 3.x, or decc in vaxc mode */
+#if defined(USE_PROTOTYPES) /* this breaks 2.2 (*forces* use of ANCIENT)*/
+#define __STDC__ 0 /* vaxc is not yet ANSI compliant, but close enough */
 #include <stddef.h>
-#      define UNWIDENED_PROTOTYPES
-#     endif
-#     define USE_STDARG
-#   endif
-#  endif /*VAXC*/
-# endif /*__DECC*/
-# ifdef VERYOLD_VMS    /* v4.5 or earlier; no longer available for testing */
-#  define USE_OLDARGS  /* <varargs.h> is there, vprintf & vsprintf aren't */
-#  ifdef USE_VARARGS
-#   undef USE_VARARGS
-#  endif
-#  ifdef USE_STDARG
-#   undef USE_STDARG
-#  endif
-# endif
+#define UNWIDENED_PROTOTYPES
+#endif
+#define USE_STDARG
+#endif
+#endif              /*VAXC*/
+#endif              /*__DECC*/
+#ifdef VERYOLD_VMS  /* v4.5 or earlier; no longer available for testing */
+#define USE_OLDARGS /* <varargs.h> is there, vprintf & vsprintf aren't */
+#ifdef USE_VARARGS
+#undef USE_VARARGS
+#endif
+#ifdef USE_STDARG
+#undef USE_STDARG
+#endif
+#endif
 #endif /*VMS*/
 
 #ifdef vax
 /* just in case someone thinks a DECstation is a vax. It's not, it's a mips */
-# ifdef ULTRIX_PROTO
-#  undef ULTRIX_PROTO
-# endif
-# ifdef ULTRIX_CC20
-#  undef ULTRIX_CC20
-# endif
+#ifdef ULTRIX_PROTO
+#undef ULTRIX_PROTO
+#endif
+#ifdef ULTRIX_CC20
+#undef ULTRIX_CC20
+#endif
 #endif
 
-#ifdef KR1ED           /* For compilers which cannot handle defined() */
-#define defined(x) (-x-1 != -1)
+#ifdef KR1ED /* For compilers which cannot handle defined() */
+#define defined(x) (-x - 1 != -1)
 /* Because:
  * #define FOO => FOO={} => defined( ) => (-1 != - - 1) => 1
  * #define FOO 1 or on command-line -DFOO
  */
 #endif
 
-#endif /* CONFIG1_H */
+#endif /* CONFIG1_H */
index 6775464b54012a77248eb1c9ea83221064d9e195..0ce00b21e86d90b158bf602c33f7ef804e2839f6 100644 (file)
@@ -3,9 +3,8 @@
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* NetHack may be freely redistributed.  See license for details. */
 
-
-/* If you change the context structure make sure you increment EDITLEVEL in   */
-/* patchlevel.h if needed.                                                    */
+/* If you change the context structure make sure you increment EDITLEVEL in */
+/* patchlevel.h if needed. */
 
 #ifndef CONTEXT_H
 #define CONTEXT_H
  *
  */
 
-struct dig_info {              /* apply.c, hack.c */
-       int     effort;
-       d_level level;
-       coord   pos;
-       long lastdigtime;
-       boolean down, chew, warned, quiet;
+struct dig_info { /* apply.c, hack.c */
+    int effort;
+    d_level level;
+    coord pos;
+    long lastdigtime;
+    boolean down, chew, warned, quiet;
 };
 
 struct tin_info {
-       struct  obj *tin;
-       unsigned o_id;          /* o_id of tin in save file */
-       int     usedtime, reqtime;
+    struct obj *tin;
+    unsigned o_id; /* o_id of tin in save file */
+    int usedtime, reqtime;
 };
 
 struct book_info {
-       struct obj *book;       /* last/current book being xscribed */
-       unsigned o_id;          /* o_id of book in save file */
-       schar delay;            /* moves left for this spell */
+    struct obj *book; /* last/current book being xscribed */
+    unsigned o_id;    /* o_id of book in save file */
+    schar delay;      /* moves left for this spell */
 };
 
 struct takeoff_info {
-       long mask;
-       long what;
-       int delay;
-       boolean cancelled_don;
-       char disrobing[CONTEXTVERBSZ+1];
+    long mask;
+    long what;
+    int delay;
+    boolean cancelled_don;
+    char disrobing[CONTEXTVERBSZ + 1];
 };
 
 struct victual_info {
-       struct  obj *piece;     /* the thing being eaten, or last thing that
-                                * was partially eaten, unless that thing was
-                                * a tin, which uses the tin structure above,
-                                * in which case this should be 0 */
-       unsigned o_id;          /* o_id of food object in save file */
-       /* doeat() initializes these when piece is valid */
-       int     usedtime,       /* turns spent eating */
-               reqtime;        /* turns required to eat */
-       int     nmod;           /* coded nutrition per turn */
-       Bitfield(canchoke,1);   /* was satiated at beginning */
-
-       /* start_eating() initializes these */
-       Bitfield(fullwarn,1);   /* have warned about being full */
-       Bitfield(eating,1);     /* victual currently being eaten */
-       Bitfield(doreset,1);    /* stop eating at end of turn */
+    struct obj *piece; /* the thing being eaten, or last thing that
+                        * was partially eaten, unless that thing was
+                        * a tin, which uses the tin structure above,
+                        * in which case this should be 0 */
+    unsigned o_id;     /* o_id of food object in save file */
+    /* doeat() initializes these when piece is valid */
+    int usedtime,          /* turns spent eating */
+        reqtime;           /* turns required to eat */
+    int nmod;              /* coded nutrition per turn */
+    Bitfield(canchoke, 1); /* was satiated at beginning */
+
+    /* start_eating() initializes these */
+    Bitfield(fullwarn, 1); /* have warned about being full */
+    Bitfield(eating, 1);   /* victual currently being eaten */
+    Bitfield(doreset, 1);  /* stop eating at end of turn */
 };
 
 struct warntype_info {
-       unsigned long obj;      /* object warn_of_mon monster type M2 */
-       unsigned long polyd;    /* warn_of_mon monster type M2 due to poly */
-       struct permonst *species;       /* particular species due to poly */
-       short speciesidx;       /* index of above in mons[] (for save/restore) */
+    unsigned long obj;        /* object warn_of_mon monster type M2 */
+    unsigned long polyd;      /* warn_of_mon monster type M2 due to poly */
+    struct permonst *species; /* particular species due to poly */
+    short speciesidx; /* index of above in mons[] (for save/restore) */
 };
 
 struct polearm_info {
-       struct monst *hitmon;   /* the monster we tried to hit last */
-       unsigned m_id;          /* monster id of hitmon, in save file */
+    struct monst *hitmon; /* the monster we tried to hit last */
+    unsigned m_id;        /* monster id of hitmon, in save file */
 };
 
 struct tribute_info {
-       size_t tributesz;       /* make it possible to skip this in future */
-       boolean  enabled;       /* Do we have tributes turned on? */
-       Bitfield(bookstock,1);  /* Have we stocked the book? */
-                               /* Markers for other tributes can go here */
-       /* 31 free bits */
+    size_t tributesz;       /* make it possible to skip this in future */
+    boolean enabled;        /* Do we have tributes turned on? */
+    Bitfield(bookstock, 1); /* Have we stocked the book? */
+    /* Markers for other tributes can go here */
+    /* 31 free bits */
 };
-       
+
 struct context_info {
-       unsigned ident;         /* social security number for each monster */
-       unsigned no_of_wizards; /* 0, 1 or 2 (wizard and his shadow) */
-       unsigned run;           /* 0: h (etc), 1: H (etc), 2: fh (etc) */
-                               /* 3: FH, 4: ff+, 5: ff-, 6: FF+, 7: FF- */
-                               /* 8: travel */
-       unsigned startingpet_mid;
-       int      current_fruit; /* fruit->fid corresponding to pl_fruit[] */
-       int      warnlevel;
-       int      rndencode;     /* randomized escape sequence introducer */
-       long next_attrib_check; /* next attribute check */
-       long stethoscope_move;
-       short stethoscope_movement;
-       boolean  travel;        /* find way automatically to u.tx,u.ty */
-       boolean  travel1;       /* first travel step */
-       boolean  forcefight;
-       boolean  nopick;        /* do not pickup objects (as when running) */
-       boolean  made_amulet;
-       boolean  mon_moving;    /* monsters' turn to move */
-       boolean  move;
-       boolean  mv;
-       boolean  bypasses;      /* bypass flag is set on at least one fobj */
-       boolean  botl;          /* partially redo status line */
-       boolean  botlx;         /* print an entirely new bottom line */
-       boolean  door_opened;   /* set to true if door was opened during test_move */
-       struct dig_info digging;
-       struct victual_info victual;
-       struct tin_info tin;
-       struct book_info spbook;
-       struct takeoff_info takeoff;
-       struct warntype_info warntype;
-       struct polearm_info polearm;
-       struct tribute_info tribute;
+    unsigned ident;         /* social security number for each monster */
+    unsigned no_of_wizards; /* 0, 1 or 2 (wizard and his shadow) */
+    unsigned run;           /* 0: h (etc), 1: H (etc), 2: fh (etc) */
+                            /* 3: FH, 4: ff+, 5: ff-, 6: FF+, 7: FF- */
+                            /* 8: travel */
+    unsigned startingpet_mid;
+    int current_fruit; /* fruit->fid corresponding to pl_fruit[] */
+    int warnlevel;
+    int rndencode;          /* randomized escape sequence introducer */
+    long next_attrib_check; /* next attribute check */
+    long stethoscope_move;
+    short stethoscope_movement;
+    boolean travel;  /* find way automatically to u.tx,u.ty */
+    boolean travel1; /* first travel step */
+    boolean forcefight;
+    boolean nopick; /* do not pickup objects (as when running) */
+    boolean made_amulet;
+    boolean mon_moving; /* monsters' turn to move */
+    boolean move;
+    boolean mv;
+    boolean bypasses;    /* bypass flag is set on at least one fobj */
+    boolean botl;        /* partially redo status line */
+    boolean botlx;       /* print an entirely new bottom line */
+    boolean door_opened; /* set to true if door was opened during test_move */
+    struct dig_info digging;
+    struct victual_info victual;
+    struct tin_info tin;
+    struct book_info spbook;
+    struct takeoff_info takeoff;
+    struct warntype_info warntype;
+    struct polearm_info polearm;
+    struct tribute_info tribute;
 };
 
 extern NEARDATA struct context_info context;
index 5ced6de26628e902d5af4ebc0d3fe1e40ea280ac..439dc8751dd68f24fdfe7ebb864bcb8cb72a0777 100644 (file)
@@ -7,7 +7,7 @@
 #define COORD_H
 
 typedef struct nhcoord {
-       xchar x,y;
+    xchar x, y;
 } coord;
 
 #endif /* COORD_H */
index 3de35ce873dd87314c201fa0478a00870086bc31..c98e9c4248dfacf20a4c6a8d01f2653e28fd6966 100644 (file)
@@ -1,5 +1,5 @@
-/* NetHack 3.6 decl.h  $NHDT-Date: 1432472662 2015/05/24 13:04:22 $  $NHDT-Branch: master $:$NHDT-Revision: 1.73 $ */
-/* NetHack 3.6 decl.h  $Date: 2011/12/29 20:06:27 $  $Revision: 1.44 $ */
+/* NetHack 3.6  decl.h  $NHDT-Date: 1432472662 2015/05/24 13:04:22 $  $NHDT-Branch: master $:$NHDT-Revision: 1.73 $ */
+/* NetHack 3.6  decl.h  $Date: 2011/12/29 20:06:27 $  $Revision: 1.44 $ */
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* NetHack may be freely redistributed.  See license for details. */
 
@@ -18,7 +18,7 @@ E int locknum;
 #endif
 #ifdef DEF_PAGER
 E char *catmore;
-#endif /* DEF_PAGER */
+#endif /* DEF_PAGER */
 
 E char SAVEF[];
 #ifdef MICRO
@@ -33,102 +33,104 @@ E NEARDATA int nroom;
 E NEARDATA int nsubroom;
 E NEARDATA int occtime;
 
-#define WARNCOUNT 6                    /* number of different warning levels */
+#define WARNCOUNT 6 /* number of different warning levels */
 E nhsym warnsyms[WARNCOUNT];
-E NEARDATA int warn_obj_cnt;           /* count of monsters meeting criteria */
+E NEARDATA int warn_obj_cnt; /* count of monsters meeting criteria */
 
 E int x_maze_max, y_maze_max;
 E int otg_temp;
 
 E NEARDATA int in_doagain;
 
-E struct dgn_topology {                /* special dungeon levels for speed */
-    d_level    d_oracle_level;
-    d_level    d_bigroom_level;        /* unused */
-    d_level    d_rogue_level;
-    d_level    d_medusa_level;
-    d_level    d_stronghold_level;
-    d_level    d_valley_level;
-    d_level    d_wiz1_level;
-    d_level    d_wiz2_level;
-    d_level    d_wiz3_level;
-    d_level    d_juiblex_level;
-    d_level    d_orcus_level;
-    d_level    d_baalzebub_level;      /* unused */
-    d_level    d_asmodeus_level;       /* unused */
-    d_level    d_portal_level;         /* only in goto_level() [do.c] */
-    d_level    d_sanctum_level;
-    d_level    d_earth_level;
-    d_level    d_water_level;
-    d_level    d_fire_level;
-    d_level    d_air_level;
-    d_level    d_astral_level;
-    xchar      d_tower_dnum;
-    xchar      d_sokoban_dnum;
-    xchar      d_mines_dnum, d_quest_dnum;
-    d_level    d_qstart_level, d_qlocate_level, d_nemesis_level;
-    d_level    d_knox_level;
-    d_level    d_mineend_level;
-    d_level    d_sokoend_level;
+E struct dgn_topology { /* special dungeon levels for speed */
+    d_level d_oracle_level;
+    d_level d_bigroom_level; /* unused */
+    d_level d_rogue_level;
+    d_level d_medusa_level;
+    d_level d_stronghold_level;
+    d_level d_valley_level;
+    d_level d_wiz1_level;
+    d_level d_wiz2_level;
+    d_level d_wiz3_level;
+    d_level d_juiblex_level;
+    d_level d_orcus_level;
+    d_level d_baalzebub_level; /* unused */
+    d_level d_asmodeus_level;  /* unused */
+    d_level d_portal_level;    /* only in goto_level() [do.c] */
+    d_level d_sanctum_level;
+    d_level d_earth_level;
+    d_level d_water_level;
+    d_level d_fire_level;
+    d_level d_air_level;
+    d_level d_astral_level;
+    xchar d_tower_dnum;
+    xchar d_sokoban_dnum;
+    xchar d_mines_dnum, d_quest_dnum;
+    d_level d_qstart_level, d_qlocate_level, d_nemesis_level;
+    d_level d_knox_level;
+    d_level d_mineend_level;
+    d_level d_sokoend_level;
 } dungeon_topology;
 /* macros for accesing the dungeon levels by their old names */
-#define oracle_level           (dungeon_topology.d_oracle_level)
-#define bigroom_level          (dungeon_topology.d_bigroom_level)
-#define rogue_level            (dungeon_topology.d_rogue_level)
-#define medusa_level           (dungeon_topology.d_medusa_level)
-#define stronghold_level       (dungeon_topology.d_stronghold_level)
-#define valley_level           (dungeon_topology.d_valley_level)
-#define wiz1_level             (dungeon_topology.d_wiz1_level)
-#define wiz2_level             (dungeon_topology.d_wiz2_level)
-#define wiz3_level             (dungeon_topology.d_wiz3_level)
-#define juiblex_level          (dungeon_topology.d_juiblex_level)
-#define orcus_level            (dungeon_topology.d_orcus_level)
-#define baalzebub_level                (dungeon_topology.d_baalzebub_level)
-#define asmodeus_level         (dungeon_topology.d_asmodeus_level)
-#define portal_level           (dungeon_topology.d_portal_level)
-#define sanctum_level          (dungeon_topology.d_sanctum_level)
-#define earth_level            (dungeon_topology.d_earth_level)
-#define water_level            (dungeon_topology.d_water_level)
-#define fire_level             (dungeon_topology.d_fire_level)
-#define air_level              (dungeon_topology.d_air_level)
-#define astral_level           (dungeon_topology.d_astral_level)
-#define tower_dnum             (dungeon_topology.d_tower_dnum)
-#define sokoban_dnum           (dungeon_topology.d_sokoban_dnum)
-#define mines_dnum             (dungeon_topology.d_mines_dnum)
-#define quest_dnum             (dungeon_topology.d_quest_dnum)
-#define qstart_level           (dungeon_topology.d_qstart_level)
-#define qlocate_level          (dungeon_topology.d_qlocate_level)
-#define nemesis_level          (dungeon_topology.d_nemesis_level)
-#define knox_level             (dungeon_topology.d_knox_level)
-#define mineend_level          (dungeon_topology.d_mineend_level)
-#define sokoend_level          (dungeon_topology.d_sokoend_level)
-
-E NEARDATA stairway dnstair, upstair;          /* stairs up and down */
-#define xdnstair       (dnstair.sx)
-#define ydnstair       (dnstair.sy)
-#define xupstair       (upstair.sx)
-#define yupstair       (upstair.sy)
-
-E NEARDATA stairway dnladder, upladder;                /* ladders up and down */
-#define xdnladder      (dnladder.sx)
-#define ydnladder      (dnladder.sy)
-#define xupladder      (upladder.sx)
-#define yupladder      (upladder.sy)
+/* clang-format off */
+#define oracle_level            (dungeon_topology.d_oracle_level)
+#define bigroom_level           (dungeon_topology.d_bigroom_level)
+#define rogue_level             (dungeon_topology.d_rogue_level)
+#define medusa_level            (dungeon_topology.d_medusa_level)
+#define stronghold_level        (dungeon_topology.d_stronghold_level)
+#define valley_level            (dungeon_topology.d_valley_level)
+#define wiz1_level              (dungeon_topology.d_wiz1_level)
+#define wiz2_level              (dungeon_topology.d_wiz2_level)
+#define wiz3_level              (dungeon_topology.d_wiz3_level)
+#define juiblex_level           (dungeon_topology.d_juiblex_level)
+#define orcus_level             (dungeon_topology.d_orcus_level)
+#define baalzebub_level         (dungeon_topology.d_baalzebub_level)
+#define asmodeus_level          (dungeon_topology.d_asmodeus_level)
+#define portal_level            (dungeon_topology.d_portal_level)
+#define sanctum_level           (dungeon_topology.d_sanctum_level)
+#define earth_level             (dungeon_topology.d_earth_level)
+#define water_level             (dungeon_topology.d_water_level)
+#define fire_level              (dungeon_topology.d_fire_level)
+#define air_level               (dungeon_topology.d_air_level)
+#define astral_level            (dungeon_topology.d_astral_level)
+#define tower_dnum              (dungeon_topology.d_tower_dnum)
+#define sokoban_dnum            (dungeon_topology.d_sokoban_dnum)
+#define mines_dnum              (dungeon_topology.d_mines_dnum)
+#define quest_dnum              (dungeon_topology.d_quest_dnum)
+#define qstart_level            (dungeon_topology.d_qstart_level)
+#define qlocate_level           (dungeon_topology.d_qlocate_level)
+#define nemesis_level           (dungeon_topology.d_nemesis_level)
+#define knox_level              (dungeon_topology.d_knox_level)
+#define mineend_level           (dungeon_topology.d_mineend_level)
+#define sokoend_level           (dungeon_topology.d_sokoend_level)
+/* clang-format on */
+
+E NEARDATA stairway dnstair, upstair; /* stairs up and down */
+#define xdnstair (dnstair.sx)
+#define ydnstair (dnstair.sy)
+#define xupstair (upstair.sx)
+#define yupstair (upstair.sy)
+
+E NEARDATA stairway dnladder, upladder; /* ladders up and down */
+#define xdnladder (dnladder.sx)
+#define ydnladder (dnladder.sy)
+#define xupladder (upladder.sx)
+#define yupladder (upladder.sy)
 
 E NEARDATA stairway sstairs;
 
-E NEARDATA dest_area updest, dndest;   /* level-change destination areas */
+E NEARDATA dest_area updest, dndest; /* level-change destination areas */
 
 E NEARDATA coord inv_pos;
 E NEARDATA dungeon dungeons[];
 E NEARDATA s_level *sp_levchn;
-#define dunlev_reached(x)      (dungeons[(x)->dnum].dunlev_ureached)
+#define dunlev_reached(x) (dungeons[(x)->dnum].dunlev_ureached)
 
 #include "quest.h"
 E struct q_score quest_status;
 
 E NEARDATA char pl_character[PL_CSIZ];
-E NEARDATA char pl_race;               /* character's race */
+E NEARDATA char pl_race; /* character's race */
 
 E NEARDATA char pl_fruit[PL_FSIZ];
 E NEARDATA struct fruit *ffruit;
@@ -139,22 +141,22 @@ E NEARDATA char tune[6];
 E struct linfo level_info[MAXLINFO];
 
 E NEARDATA struct sinfo {
-       int gameover;           /* self explanatory? */
-       int stopprint;          /* inhibit further end of game disclosure */
+    int gameover;  /* self explanatory? */
+    int stopprint; /* inhibit further end of game disclosure */
 #ifdef HANGUPHANDLING
-       volatile int done_hup;  /* SIGHUP or moral equivalent received
-                                * -- no more screen output */
-       int preserve_locks;     /* don't remove level files prior to exit */
+    volatile int done_hup; /* SIGHUP or moral equivalent received
+                            * -- no more screen output */
+    int preserve_locks;    /* don't remove level files prior to exit */
 #endif
-       int something_worth_saving;     /* in case of panic */
-       int panicking;          /* `panic' is in progress */
-       int exiting;            /* an exit handler is executing */
-       int in_moveloop;
-       int in_impossible;
+    int something_worth_saving; /* in case of panic */
+    int panicking;              /* `panic' is in progress */
+    int exiting;                /* an exit handler is executing */
+    int in_moveloop;
+    int in_impossible;
 #ifdef PANICLOG
-       int in_paniclog;
+    int in_paniclog;
 #endif
-       int wizkit_wishing;
+    int wizkit_wishing;
 } program_state;
 
 E boolean restoring;
@@ -174,32 +176,36 @@ E NEARDATA int doorindex;
 E NEARDATA char *save_cm;
 
 E NEARDATA struct kinfo {
-    struct kinfo *next;                        /* chain of delayed killers */
-    int                id;                     /* uprop keys to ID a delayed killer */
-    int                format;                 /* one of the killer formats */
-#define KILLED_BY_AN    0
-#define KILLED_BY       1
+    struct kinfo *next; /* chain of delayed killers */
+    int id;             /* uprop keys to ID a delayed killer */
+    int format;         /* one of the killer formats */
+#define KILLED_BY_AN 0
+#define KILLED_BY 1
 #define NO_KILLER_PREFIX 2
-    char       name[BUFSZ];            /* actual killer name */
+    char name[BUFSZ]; /* actual killer name */
 } killer;
 
 E long done_money;
 E const char *configfile;
-E char lastconfigfile[BUFSZ];          /* used for messaging */
+E char lastconfigfile[BUFSZ]; /* used for messaging */
 E NEARDATA char plname[PL_NSIZ];
 E NEARDATA char dogname[];
 E NEARDATA char catname[];
 E NEARDATA char horsename[];
 E char preferred_pet;
-E const char *occtxt;                  /* defined when occupation != NULL */
+E const char *occtxt; /* defined when occupation != NULL */
 E const char *nomovemsg;
 E char lock[];
 
 E const schar xdir[], ydir[], zdir[];
 
-E NEARDATA schar tbx, tby;             /* set in mthrowu.c */
+E NEARDATA schar tbx, tby; /* set in mthrowu.c */
 
-E NEARDATA struct multishot { int n, i; short o; boolean s; } m_shot;
+E NEARDATA struct multishot {
+    int n, i;
+    short o;
+    boolean s;
+} m_shot;
 
 E NEARDATA long moves, monstermoves;
 E NEARDATA long wailmsg;
@@ -215,33 +221,31 @@ E NEARDATA boolean in_steed_dismounting;
 E const int shield_static[];
 
 #include "spell.h"
-E NEARDATA struct spell spl_book[];    /* sized in decl.c */
+E NEARDATA struct spell spl_book[]; /* sized in decl.c */
 
 #include "color.h"
 #ifdef TEXTCOLOR
 E const int zapcolors[];
 #endif
 
-E const struct class_sym def_oc_syms[MAXOCLASSES];     /* default class symbols */
-E uchar oc_syms[MAXOCLASSES];          /* current class symbols */
-E const struct class_sym def_monsyms[MAXMCLASSES];     /* default class symbols */
-E uchar monsyms[MAXMCLASSES];          /* current class symbols */
+E const struct class_sym def_oc_syms[MAXOCLASSES]; /* default class symbols */
+E uchar oc_syms[MAXOCLASSES];                      /* current class symbols */
+E const struct class_sym def_monsyms[MAXMCLASSES]; /* default class symbols */
+E uchar monsyms[MAXMCLASSES];                      /* current class symbols */
 
 #include "obj.h"
-E NEARDATA struct obj *invent,
-       *uarm, *uarmc, *uarmh, *uarms, *uarmg, *uarmf,
-       *uarmu,                         /* under-wear, so to speak */
-       *uskin, *uamul, *uleft, *uright, *ublindf,
-       *uwep, *uswapwep, *uquiver;
+E NEARDATA struct obj *invent, *uarm, *uarmc, *uarmh, *uarms, *uarmg, *uarmf,
+    *uarmu, /* under-wear, so to speak */
+    *uskin, *uamul, *uleft, *uright, *ublindf, *uwep, *uswapwep, *uquiver;
 
-E NEARDATA struct obj *uchain;         /* defined only when punished */
+E NEARDATA struct obj *uchain; /* defined only when punished */
 E NEARDATA struct obj *uball;
 E NEARDATA struct obj *migrating_objs;
 E NEARDATA struct obj *billobjs;
 E NEARDATA struct obj *current_wand, *thrownobj, *kickedobj;
 
-E NEARDATA struct obj zeroobj;         /* init'd and defined in decl.c */
-E NEARDATA anything zeroany;           /* init'd and defined in decl.c */
+E NEARDATA struct obj zeroobj; /* init'd and defined in decl.c */
+E NEARDATA anything zeroany;   /* init'd and defined in decl.c */
 
 #include "you.h"
 E NEARDATA struct you u;
@@ -249,78 +253,75 @@ E NEARDATA time_t ubirthday;
 E NEARDATA struct u_realtime urealtime;
 
 #include "onames.h"
-#ifndef PM_H           /* (pm.h has already been included via youprop.h) */
+#ifndef PM_H /* (pm.h has already been included via youprop.h) */
 #include "pm.h"
 #endif
 
-E NEARDATA struct monst youmonst;      /* init'd and defined in decl.c */
+E NEARDATA struct monst youmonst; /* init'd and defined in decl.c */
 E NEARDATA struct monst *mydogs, *migrating_mons;
 
 E NEARDATA struct mvitals {
-       uchar   born;
-       uchar   died;
-       uchar   mvflags;
+    uchar born;
+    uchar died;
+    uchar mvflags;
 } mvitals[NUMMONS];
 
 E NEARDATA struct c_color_names {
-    const char *const c_black, *const c_amber, *const c_golden,
-               *const c_light_blue,*const c_red, *const c_green,
-               *const c_silver, *const c_blue, *const c_purple,
-               *const c_white, *const c_orange;
+    const char *const c_black, *const c_amber, *const c_golden,
+        *const c_light_blue, *const c_red, *const c_green, *const c_silver,
+        *const c_blue, *const c_purple, *const c_white, *const c_orange;
 } c_color_names;
-#define NH_BLACK               c_color_names.c_black
-#define NH_AMBER               c_color_names.c_amber
-#define NH_GOLDEN              c_color_names.c_golden
-#define NH_LIGHT_BLUE          c_color_names.c_light_blue
-#define NH_RED                 c_color_names.c_red
-#define NH_GREEN               c_color_names.c_green
-#define NH_SILVER              c_color_names.c_silver
-#define NH_BLUE                        c_color_names.c_blue
-#define NH_PURPLE              c_color_names.c_purple
-#define NH_WHITE               c_color_names.c_white
-#define NH_ORANGE              c_color_names.c_orange
+#define NH_BLACK c_color_names.c_black
+#define NH_AMBER c_color_names.c_amber
+#define NH_GOLDEN c_color_names.c_golden
+#define NH_LIGHT_BLUE c_color_names.c_light_blue
+#define NH_RED c_color_names.c_red
+#define NH_GREEN c_color_names.c_green
+#define NH_SILVER c_color_names.c_silver
+#define NH_BLUE c_color_names.c_blue
+#define NH_PURPLE c_color_names.c_purple
+#define NH_WHITE c_color_names.c_white
+#define NH_ORANGE c_color_names.c_orange
 
 /* The names of the colors used for gems, etc. */
 E const char *c_obj_colors[];
 
 E struct c_common_strings {
-    const char *const c_nothing_happens, *const c_thats_enough_tries,
-               *const c_silly_thing_to, *const c_shudder_for_moment,
-               *const c_something, *const c_Something,
-               *const c_You_can_move_again,
-               *const c_Never_mind, *c_vision_clears,
-               *const c_the_your[2];
+    const char *const c_nothing_happens, *const c_thats_enough_tries,
+        *const c_silly_thing_to, *const c_shudder_for_moment,
+        *const c_something, *const c_Something, *const c_You_can_move_again,
+        *const c_Never_mind, *c_vision_clears, *const c_the_your[2];
 } c_common_strings;
-#define nothing_happens    c_common_strings.c_nothing_happens
+#define nothing_happens c_common_strings.c_nothing_happens
 #define thats_enough_tries c_common_strings.c_thats_enough_tries
-#define silly_thing_to    c_common_strings.c_silly_thing_to
+#define silly_thing_to c_common_strings.c_silly_thing_to
 #define shudder_for_moment c_common_strings.c_shudder_for_moment
-#define something         c_common_strings.c_something
-#define Something         c_common_strings.c_Something
+#define something c_common_strings.c_something
+#define Something c_common_strings.c_Something
 #define You_can_move_again c_common_strings.c_You_can_move_again
-#define Never_mind        c_common_strings.c_Never_mind
-#define vision_clears     c_common_strings.c_vision_clears
-#define the_your          c_common_strings.c_the_your
+#define Never_mind c_common_strings.c_Never_mind
+#define vision_clears c_common_strings.c_vision_clears
+#define the_your c_common_strings.c_the_your
 
 /* material strings */
 E const char *materialnm[];
 
 /* Monster name articles */
-#define ARTICLE_NONE   0
-#define ARTICLE_THE    1
-#define ARTICLE_A      2
-#define ARTICLE_YOUR   3
+#define ARTICLE_NONE 0
+#define ARTICLE_THE 1
+#define ARTICLE_A 2
+#define ARTICLE_YOUR 3
 
 /* Monster name suppress masks */
-#define SUPPRESS_IT            0x01
-#define SUPPRESS_INVISIBLE     0x02
-#define SUPPRESS_HALLUCINATION  0x04
-#define SUPPRESS_SADDLE                0x08
-#define EXACT_NAME             0x0F
+#define SUPPRESS_IT 0x01
+#define SUPPRESS_INVISIBLE 0x02
+#define SUPPRESS_HALLUCINATION 0x04
+#define SUPPRESS_SADDLE 0x08
+#define EXACT_NAME 0x0F
 
 /* Vision */
-E NEARDATA boolean vision_full_recalc; /* TRUE if need vision recalc */
-E NEARDATA char **viz_array;           /* could see/in sight row pointers */
+E NEARDATA boolean vision_full_recalc; /* TRUE if need vision recalc */
+E NEARDATA char **viz_array;           /* could see/in sight row pointers */
 
 /* Window system stuff */
 E NEARDATA winid WIN_MESSAGE;
@@ -340,9 +341,9 @@ E NEARDATA winid WIN_MAP, WIN_INVEN;
 
 E char toplines[];
 #ifndef TCAP_H
-E struct tc_gbl_data { /* also declared in tcap.h */
-    char *tc_AS, *tc_AE;       /* graphics start and end (tty font swapping) */
-    int   tc_LI,  tc_CO;       /* lines and columns */
+E struct tc_gbl_data {   /* also declared in tcap.h */
+    char *tc_AS, *tc_AE; /* graphics start and end (tty font swapping) */
+    int tc_LI, tc_CO;    /* lines and columns */
 } tc_gbl_data;
 #define AS tc_gbl_data.tc_AS
 #define AE tc_gbl_data.tc_AE
@@ -351,28 +352,28 @@ E struct tc_gbl_data {    /* also declared in tcap.h */
 #endif
 
 /* xxxexplain[] is in drawing.c */
-E const char * const monexplain[], invisexplain[], * const oclass_names[];
+E const char *const monexplain[], invisexplain[], *const oclass_names[];
 
 /* Some systems want to use full pathnames for some subsets of file names,
  * rather than assuming that they're all in the current directory.  This
  * provides all the subclasses that seem reasonable, and sets up for all
  * prefixes being null.  Port code can set those that it wants.
  */
-#define HACKPREFIX     0
-#define LEVELPREFIX    1
-#define SAVEPREFIX     2
-#define BONESPREFIX    3
-#define DATAPREFIX     4       /* this one must match hardcoded value in dlb.c */
-#define SCOREPREFIX    5
-#define LOCKPREFIX     6
-#define SYSCONFPREFIX  7
-#define CONFIGPREFIX   8
-#define TROUBLEPREFIX  9
-#define PREFIX_COUNT   10
+#define HACKPREFIX 0
+#define LEVELPREFIX 1
+#define SAVEPREFIX 2
+#define BONESPREFIX 3
+#define DATAPREFIX 4 /* this one must match hardcoded value in dlb.c */
+#define SCOREPREFIX 5
+#define LOCKPREFIX 6
+#define SYSCONFPREFIX 7
+#define CONFIGPREFIX 8
+#define TROUBLEPREFIX 9
+#define PREFIX_COUNT 10
 /* used in files.c; xxconf.h can override if needed */
-# ifndef FQN_MAX_FILENAME
+#ifndef FQN_MAX_FILENAME
 #define FQN_MAX_FILENAME 512
-# endif
+#endif
 
 #if defined(NOCWD_ASSUMPTIONS) || defined(VAR_PLAYGROUND)
 /* the bare-bones stuff is unconditional above to simplify coding; for
@@ -389,10 +390,10 @@ E char *fqn_prefix_names[PREFIX_COUNT];
 E NEARDATA struct savefile_info sfcap, sfrestinfo, sfsaveinfo;
 
 struct autopickup_exception {
-       struct nhregex *regex;
+    struct nhregex *regex;
     char *pattern;
-       boolean grab;
-       struct autopickup_exception *next;
+    boolean grab;
+    struct autopickup_exception *next;
 };
 
 #ifdef PANICTRACE
index 309e976792ee7f01561e6015fcbf69473eb0048d..f41066bc86bdb7618f81d6dd763fa67d09d935bd 100644 (file)
 
 #ifdef OS2_USESYSHEADERS
 
-# define INCL_NOPMAPI
-# define INCL_DOSFILEMGR
-# define INCL_DOS
-# define INCL_SUB
+#define INCL_NOPMAPI
+#define INCL_DOSFILEMGR
+#define INCL_DOS
+#define INCL_SUB
 
 #include <os2.h>
 
@@ -30,164 +30,164 @@ typedef unsigned int UINT;
 typedef unsigned long ULONG;
 typedef unsigned char BYTE;
 
-# ifdef OS2_32BITAPI
+#ifdef OS2_32BITAPI
 
 typedef unsigned long SHANDLE;
 typedef USHORT HKBD;
 typedef USHORT HVIO;
 
-#  define CCHMAXPATHCOMP 256
-
-#  ifdef OS2_CSET2
-#   define API16 _Far16 _Pascal
-#   define DAT16
-#   define API32 _System
-#   define KbdGetStatus KBD16GETSTATUS
-#   define KbdSetStatus KBD16SETSTATUS
-#   define KbdCharIn    KBD16CHARIN
-#   define KbdPeek      KBD16PEEK
-#   define VioGetMode   VIO16GETMODE
-#   define VioSetCurPos VIO16SETCURPOS
-#  else
-#   define API16
-#   define DAT16
-#   define API32
-#  endif
+#define CCHMAXPATHCOMP 256
+
+#ifdef OS2_CSET2
+#define API16 _Far16 _Pascal
+#define DAT16
+#define API32 _System
+#define KbdGetStatus KBD16GETSTATUS
+#define KbdSetStatus KBD16SETSTATUS
+#define KbdCharIn KBD16CHARIN
+#define KbdPeek KBD16PEEK
+#define VioGetMode VIO16GETMODE
+#define VioSetCurPos VIO16SETCURPOS
+#else
+#define API16
+#define DAT16
+#define API32
+#endif
 
-#  define DAT
+#define DAT
 
-# else /* OS2_32BITAPI */
+#else /* OS2_32BITAPI */
 
 typedef unsigned short SHANDLE;
 typedef SHANDLE HKBD;
 typedef SHANDLE HVIO;
 
-#  define CCHMAXPATHCOMP 13
+#define CCHMAXPATHCOMP 13
 
-#  ifdef OS2_MSC
-#   define API16 pascal far
-#   define DAT16
-#  endif
+#ifdef OS2_MSC
+#define API16 pascal far
+#define DAT16
+#endif
 
-#  define DAT DAT16
+#define DAT DAT16
 
-# endif /* OS2_32BITAPI */
+#endif /* OS2_32BITAPI */
 
-typedef USHORT * DAT16 PUSHORT;
-typedef BYTE * DAT16 PBYTE;
-typedef ULONG * DAT PULONG;
-typedef VOID * DAT PVOID;
+typedef USHORT *DAT16 PUSHORT;
+typedef BYTE *DAT16 PBYTE;
+typedef ULONG *DAT PULONG;
+typedef VOID *DAT PVOID;
 
 typedef SHANDLE HDIR;
-typedef HDIR * DAT PHDIR;
+typedef HDIR *DAT PHDIR;
 
-typedef char * DAT16 PCH;
-typedef char * DAT PSZ;
+typedef char *DAT16 PCH;
+typedef char *DAT PSZ;
 
 /* all supported compilers understand this */
 
-# pragma pack(2)
+#pragma pack(2)
 
 typedef struct {
-       UCHAR  chChar;
-       UCHAR  chScan;
-       UCHAR  fbStatus;
-       UCHAR  bNlsShift;
-       USHORT fsState;
-       ULONG  time;
+    UCHAR chChar;
+    UCHAR chScan;
+    UCHAR fbStatus;
+    UCHAR bNlsShift;
+    USHORT fsState;
+    ULONG time;
 } KBDKEYINFO;
 
-typedef KBDKEYINFO * DAT16 PKBDKEYINFO;
+typedef KBDKEYINFO *DAT16 PKBDKEYINFO;
 
 /* File time and date types */
 
 typedef struct {
-       UINT twosecs : 5;
-       UINT minutes : 6;
-       UINT hours   : 5;
+    UINT twosecs : 5;
+    UINT minutes : 6;
+    UINT hours : 5;
 } FTIME;
 
 typedef struct {
-       UINT day     : 5;
-       UINT month   : 4;
-       UINT year    : 7;
+    UINT day : 5;
+    UINT month : 4;
+    UINT year : 7;
 } FDATE;
 
-# ifdef OS2_32BITAPI
+#ifdef OS2_32BITAPI
 
 typedef struct {
-       ULONG oNextEntryOffset;
-       FDATE fdateCreation;
-       FTIME ftimeCreation;
-       FDATE fdateLastAccess;
-       FTIME ftimeLastAccess;
-       FDATE fdateLastWrite;
-       FTIME ftimeLastWrite;
-       ULONG cbFile;
-       ULONG cbFileAlloc;
-       ULONG attrFile;
-       UCHAR cchName;
-       CHAR  achName[CCHMAXPATHCOMP];
+    ULONG oNextEntryOffset;
+    FDATE fdateCreation;
+    FTIME ftimeCreation;
+    FDATE fdateLastAccess;
+    FTIME ftimeLastAccess;
+    FDATE fdateLastWrite;
+    FTIME ftimeLastWrite;
+    ULONG cbFile;
+    ULONG cbFileAlloc;
+    ULONG attrFile;
+    UCHAR cchName;
+    CHAR achName[CCHMAXPATHCOMP];
 } FILEFINDBUF3;
 
-# else
+#else
 
 typedef struct {
-       FDATE  fdateCreation;
-       FTIME  ftimeCreation;
-       FDATE  fdateLastAccess;
-       FTIME  ftimeLastAccess;
-       FDATE  fdateLastWrite;
-       FTIME  ftimeLastWrite;
-       ULONG  cbFile;
-       ULONG  cbFileAlloc;
-       USHORT attrFile;
-       UCHAR  cchName;
-       CHAR   achName[CCHMAXPATHCOMP];
+    FDATE fdateCreation;
+    FTIME ftimeCreation;
+    FDATE fdateLastAccess;
+    FTIME ftimeLastAccess;
+    FDATE fdateLastWrite;
+    FTIME ftimeLastWrite;
+    ULONG cbFile;
+    ULONG cbFileAlloc;
+    USHORT attrFile;
+    UCHAR cchName;
+    CHAR achName[CCHMAXPATHCOMP];
 } FILEFINDBUF;
 
-typedef FILEFINDBUF * DAT16 PFILEFINDBUF;
+typedef FILEFINDBUF *DAT16 PFILEFINDBUF;
 
-# endif /* OS2_32BITAPI */
+#endif /* OS2_32BITAPI */
 
 typedef struct {
-       ULONG  idFileSystem;
-       ULONG  cSectorUnit;
-       ULONG  cUnit;
-       ULONG  cUnitAvail;
-       USHORT cbSector;
+    ULONG idFileSystem;
+    ULONG cSectorUnit;
+    ULONG cUnit;
+    ULONG cUnitAvail;
+    USHORT cbSector;
 } FSALLOCATE;
 
 typedef struct {
-       USHORT cb;
-       USHORT fsMask;
-       USHORT chTurnAround;
-       USHORT fsInterim;
-       USHORT fsState;
+    USHORT cb;
+    USHORT fsMask;
+    USHORT chTurnAround;
+    USHORT fsInterim;
+    USHORT fsState;
 } KBDINFO;
 
-typedef KBDINFO * DAT16 PKBDINFO;
+typedef KBDINFO *DAT16 PKBDINFO;
 
 typedef struct {
-       USHORT cb;
-       UCHAR  fbType;
-       UCHAR  color;
-       USHORT col;
-       USHORT row;
-       USHORT hres;
-       USHORT vres;
-       UCHAR  fmt_ID;
-       UCHAR  attrib;
-       ULONG  buf_addr;
-       ULONG  buf_length;
-       ULONG  full_length;
-       ULONG  partial_length;
-       PCH    ext_data_addr;
+    USHORT cb;
+    UCHAR fbType;
+    UCHAR color;
+    USHORT col;
+    USHORT row;
+    USHORT hres;
+    USHORT vres;
+    UCHAR fmt_ID;
+    UCHAR attrib;
+    ULONG buf_addr;
+    ULONG buf_length;
+    ULONG full_length;
+    ULONG partial_length;
+    PCH ext_data_addr;
 } VIOMODEINFO;
 
-typedef VIOMODEINFO * DAT16 PVIOMODEINFO;
+typedef VIOMODEINFO *DAT16 PVIOMODEINFO;
 
-# pragma pack()
+#pragma pack()
 
 /* OS2 API functions */
 
@@ -199,16 +199,17 @@ USHORT API16 KbdPeek(PKBDKEYINFO, HKBD);
 USHORT API16 VioGetMode(PVIOMODEINFO, HVIO);
 USHORT API16 VioSetCurPos(USHORT, USHORT, HVIO);
 
-# ifdef OS2_32BITAPI
+#ifdef OS2_32BITAPI
 ULONG API32 DosQueryFSInfo(ULONG, ULONG, PVOID, ULONG);
 ULONG API32 DosFindFirst(PSZ, PHDIR, ULONG, PVOID, ULONG, PULONG, ULONG);
 ULONG API32 DosFindNext(HDIR, PVOID, ULONG, PULONG);
 ULONG API32 DosSetDefaultDisk(ULONG);
-# else
+#else
 USHORT API16 DosQFSInfo(USHORT, USHORT, PBYTE, USHORT);
-USHORT API16 DosFindFirst(PSZ, PHDIR, USHORT, PFILEFINDBUF, USHORT, PUSHORT, ULONG);
+USHORT API16
+DosFindFirst(PSZ, PHDIR, USHORT, PFILEFINDBUF, USHORT, PUSHORT, ULONG);
 USHORT API16 DosFindNext(HDIR, PFILEFINDBUF, USHORT, PUSHORT);
 USHORT API16 DosSelectDisk(USHORT);
-# endif /* OS2_32BITAPI */
+#endif /* OS2_32BITAPI */
 
 #endif /* OS2_USESYSHEADERS */
index 79d43b9633a909fd40d8283dffc1fdc271fc81ec..b9860c3383792061244c00da56ee2862a303fc7b 100644 (file)
  * Structures manipulated by the dungeon loader & compiler
  */
 
-struct couple {
-       short   base, rand;
+struct couple {
+    short base, rand;
 };
 
 struct tmpdungeon {
-       char    name[24],
-               protoname[24];
-       struct  couple  lev;
-       int     flags,
-               chance,
-               levels,
-               branches,
-               entry_lev;              /* entry level for this dungeon */
-       char    boneschar;
+    char name[24], protoname[24];
+    struct couple lev;
+    int flags, chance, levels, branches,
+        entry_lev; /* entry level for this dungeon */
+    char boneschar;
 };
 
 struct tmplevel {
-       char    name[24];
-       struct  couple  lev;
-       int     chance, rndlevs, chain, flags;
-       char    boneschar;
+    char name[24];
+    struct couple lev;
+    int chance, rndlevs, chain, flags;
+    char boneschar;
 };
 
 struct tmpbranch {
-       char    name[24];       /* destination dungeon name */
-       struct  couple  lev;
-       int     chain;          /* index into tmplevel array (chained branch)*/
-       int     type;           /* branch type (see below) */
-       int     up;             /* branch is up or down */
+    char name[24]; /* destination dungeon name */
+    struct couple lev;
+    int chain; /* index into tmplevel array (chained branch)*/
+    int type;  /* branch type (see below) */
+    int up;    /* branch is up or down */
 };
 
 /*
  *     Values for type for tmpbranch structure.
  */
-#define TBR_STAIR   0  /* connection with both ends having a staircase */
-#define TBR_NO_UP   1  /* connection with no up staircase */
-#define TBR_NO_DOWN 2  /* connection with no down staircase */
-#define TBR_PORTAL  3  /* portal connection */
+#define TBR_STAIR   /* connection with both ends having a staircase */
+#define TBR_NO_UP   /* connection with no up staircase */
+#define TBR_NO_DOWN 2 /* connection with no down staircase */
+#define TBR_PORTAL 3  /* portal connection */
 
 /*
  *     Flags that map into the dungeon flags bitfields.
  */
-#define TOWN       1   /* levels only */
-#define HELLISH     2
-#define MAZELIKE    4
-#define ROGUELIKE   8
+#define TOWN 1 /* levels only */
+#define HELLISH 2
+#define MAZELIKE 4
+#define ROGUELIKE 8
 
-#define D_ALIGN_NONE   0
-#define D_ALIGN_CHAOTIC        (AM_CHAOTIC << 4)
-#define D_ALIGN_NEUTRAL        (AM_NEUTRAL << 4)
-#define D_ALIGN_LAWFUL (AM_LAWFUL << 4)
+#define D_ALIGN_NONE 0
+#define D_ALIGN_CHAOTIC (AM_CHAOTIC << 4)
+#define D_ALIGN_NEUTRAL (AM_NEUTRAL << 4)
+#define D_ALIGN_LAWFUL (AM_LAWFUL << 4)
 
-#define D_ALIGN_MASK   0x70
+#define D_ALIGN_MASK 0x70
 
 /*
  *     Max number of prototype levels and branches.
  */
-#define LEV_LIMIT      50
-#define BRANCH_LIMIT   32
+#define LEV_LIMIT 50
+#define BRANCH_LIMIT 32
 
 #endif /* DGN_FILE_H */
index 27e52f64becbb4089f2ef547caf8279958639ff6..68bc08d316656b9a9539a9a571f885251bf9bdd2 100644 (file)
@@ -12,7 +12,7 @@
 #include "vision.h"
 #endif
 #ifndef MONDATA_H
-#include "mondata.h"   /* for mindless() */
+#include "mondata.h" /* for mindless() */
 #endif
 
 /*
@@ -21,7 +21,7 @@
  * Returns the head of the list of objects that the player can see
  * at location (x,y).
  */
-#define vobj_at(x,y) (level.objects[x][y])
+#define vobj_at(x, y) (level.objects[x][y])
 
 /*
  * sensemon()
  * Returns true if the hero can sense the given monster.  This includes
  * monsters that are hiding or mimicing other monsters.
  */
-#define tp_sensemon(mon) (     /* The hero can always sense a monster IF:  */\
-    (!mindless(mon->data)) &&  /* 1. the monster has a brain to sense AND  */\
-      ((Blind && Blind_telepat) ||  /* 2a. hero is blind and telepathic OR  */\
-                               /* 2b. hero is using a telepathy inducing   */\
-                               /*       object and in range                */\
-      (Unblind_telepat &&                                                    \
-       (distu(mon->mx, mon->my) <= (BOLT_LIM * BOLT_LIM))))                  \
-)
+#define tp_sensemon(mon)                                                   \
+    (/* The hero can always sense a monster IF:  */                        \
+     (!mindless(mon->data)) && /* 1. the monster has a brain to sense AND */                                                                        \
+     ((Blind && Blind_telepat)                                             \
+      || /* 2a. hero is blind and telepathic OR  */ /* 2b. hero is using a \
+                                                       telepathy inducing */ /*         object and in range                */                                           \
+      (Unblind_telepat                                                     \
+       && (distu(mon->mx, mon->my) <= (BOLT_LIM * BOLT_LIM)))))
 
 #define sensemon(mon) \
     (tp_sensemon(mon) || Detect_monsters || MATCH_WARN_OF_MON(mon))
@@ -46,9 +46,9 @@
  * vicinity, and a glyph representing the warning level is displayed.
  */
 
-#define mon_warning(mon) (Warning && !(mon)->mpeaceful &&              \
-                        (distu((mon)->mx, (mon)->my) < 100) &&         \
-                        (((int) ((mon)->m_lev / 4)) >= context.warnlevel))
+#define mon_warning(mon)                                                 \
+    (Warning && !(mon)->mpeaceful && (distu((mon)->mx, (mon)->my) < 100) \
+     && (((int) ((mon)->m_lev / 4)) >= context.warnlevel))
 
 /*
  * mon_visible()
  * vobj_at() returns a pointer to an object that the hero can see there.
  * Infravision is not taken into account.
  */
-#define mon_visible(mon) (             /* The hero can see the monster     */\
-                                       /* IF the monster                   */\
-    (!mon->minvis || See_invisible) && /* 1. is not invisible AND          */\
-    (!mon->mundetected) &&             /* 2. not an undetected hider       */\
-    (!(mon->mburied || u.uburied))     /* 3. neither you or it is buried   */\
-)
+#define mon_visible(mon)                                                   \
+    (/* The hero can see the monster     */ /* IF the monster */                                                                        \
+     (!mon->minvis || See_invisible) && /* 1. is not invisible AND */                                                                        \
+     (!mon->mundetected) &&         /* 2. not an undetected hider          */   \
+     (!(mon->mburied || u.uburied)) /* 3. neither you or it is buried   */ \
+     )
 
 /*
  * see_with_infrared()
  * invisible to infravision), because this is usually called from within
  * canseemon() or canspotmon() which already check that.
  */
-#define see_with_infrared(mon)                          \
-    (!Blind && Infravision && infravisible(mon->data)   \
+#define see_with_infrared(mon)                        \
+    (!Blind && Infravision && infravisible(mon->data) \
      && couldsee(mon->mx, mon->my))
 
-
 /*
  * canseemon()
  *
@@ -85,9 +84,9 @@
  * routines.  Like mon_visible(), but it checks to see if the hero sees the
  * location instead of assuming it.  (And also considers worms.)
  */
-#define canseemon(mon)                                          \
-    ((mon->wormno ? worm_known(mon) :                           \
-        (cansee(mon->mx, mon->my) || see_with_infrared(mon)))   \
+#define canseemon(mon)                                                    \
+    ((mon->wormno ? worm_known(mon)                                       \
+                  : (cansee(mon->mx, mon->my) || see_with_infrared(mon))) \
      && mon_visible(mon))
 
 /*
  * Infravision is not relevant; we assume that invisible monsters are also
  * invisible to infravision.
  */
-#define knowninvisible(mon) \
-    (mtmp->minvis                                                       \
-     && ((cansee(mon->mx, mon->my)                                      \
-          && (See_invisible || Detect_monsters))                        \
-         || (!Blind && (HTelepat & ~INTRINSIC)                          \
-             && distu(mon->mx, mon->my) <= (BOLT_LIM * BOLT_LIM)        \
-             )                                                          \
-         )                                                              \
-     )
+#define knowninvisible(mon)                                               \
+    (mtmp->minvis                                                         \
+     && ((cansee(mon->mx, mon->my) && (See_invisible || Detect_monsters)) \
+         || (!Blind && (HTelepat & ~INTRINSIC)                            \
+             && distu(mon->mx, mon->my) <= (BOLT_LIM * BOLT_LIM))))
 
 /*
  * is_safepet(mon)
  * A special case check used in attack() and domove(). Placing the
  * definition here is convenient.
  */
-#define is_safepet(mon) \
-    (mon && mon->mtame && canspotmon(mon) && flags.safe_dog     \
-     && !Confusion && !Hallucination && !Stunned)
+#define is_safepet(mon)                                                   \
+    (mon && mon->mtame && canspotmon(mon) && flags.safe_dog && !Confusion \
+     && !Hallucination && !Stunned)
 
 /*
  * canseeself()
  * unable to see.  So when blind, being invisible won't affect your
  * self-perception, and when swallowed, the enclosing monster touches.
  */
-#define canseeself()   (Blind || u.uswallow || (!Invisible && !u.uundetected))
-#define senseself()    (Unblind_telepat || Detect_monsters)
-#define canspotself()  (canseeself() || senseself())
+#define canseeself() (Blind || u.uswallow || (!Invisible && !u.uundetected))
+#define senseself() (Unblind_telepat || Detect_monsters)
+#define canspotself() (canseeself() || senseself())
 
 /*
  * random_monster()
  * Respectively return a random monster, object, or trap number.
  */
 #define random_monster() rn2(NUMMONS)
-#define random_object()  rn1(NUM_OBJECTS-1,1)
-#define random_trap()   rn1(TRAPNUM-1,1)
+#define random_object() rn1(NUM_OBJECTS - 1, 1)
+#define random_trap() rn1(TRAPNUM - 1, 1)
 
 /*
  * what_obj()
  * If hallucinating, choose a random object/monster, otherwise, use the one
  * given.
  */
-#define what_obj(obj)  (Hallucination ? random_object()  : obj)
-#define what_mon(mon)  (Hallucination ? random_monster() : mon)
-#define what_trap(trp) (Hallucination ? random_trap()    : trp)
+#define what_obj(obj) (Hallucination ? random_object() : obj)
+#define what_mon(mon) (Hallucination ? random_monster() : mon)
+#define what_trap(trp) (Hallucination ? random_trap() : trp)
 
 /*
  * covers_objects()
  * These routines are true if what is really at the given location will
  * "cover" any objects or traps that might be there.
  */
-#define covers_objects(xx,yy) \
-    ((is_pool(xx,yy) && !Underwater) || (levl[xx][yy].typ == LAVAPOOL))
-
-#define covers_traps(xx,yy)    covers_objects(xx,yy)
+#define covers_objects(xx, yy) \
+    ((is_pool(xx, yy) && !Underwater) || (levl[xx][yy].typ == LAVAPOOL))
 
+#define covers_traps(xx, yy) covers_objects(xx, yy)
 
 /*
  * tmp_at() control calls.
  */
-#define DISP_BEAM    (-1)  /* Keep all glyphs showing & clean up at end. */
-#define DISP_ALL     (-2)  /* Like beam, but still displayed if not visible. */
-#define DISP_FLASH   (-3)  /* Clean up each glyph before displaying new one. */
-#define DISP_ALWAYS  (-4)  /* Like flash, but still displayed if not visible. */
-#define DISP_CHANGE  (-5)  /* Change glyph. */
-#define DISP_END     (-6)  /* Clean up. */
-#define DISP_FREEMEM (-7)  /* Free all memory during exit only. */
+#define DISP_BEAM (-1)    /* Keep all glyphs showing & clean up at end. */
+#define DISP_ALL (-2)     /* Like beam, but still displayed if not visible. */
+#define DISP_FLASH (-3)   /* Clean up each glyph before displaying new one. */
+#define DISP_ALWAYS (-4)  /* Like flash, but still displayed if not visible. \
+                             */
+#define DISP_CHANGE (-5)  /* Change glyph. */
+#define DISP_END (-6)     /* Clean up. */
+#define DISP_FREEMEM (-7) /* Free all memory during exit only. */
 
 /* Total number of cmap indices in the sheild_static[] array. */
 #define SHIELD_COUNT 21
  * Display the hero.  It is assumed that all checks necessary to determine
  * _if_ the hero can be seen have already been done.
  */
-#define maybe_display_usteed(otherwise_self)            \
-    ((u.usteed && mon_visible(u.usteed)) ?              \
-     ridden_mon_to_glyph(u.usteed) : (otherwise_self))
-
-#define display_self()                                                 \
-    show_glyph(u.ux, u.uy, maybe_display_usteed(                       \
-                            youmonst.m_ap_type == M_AP_NOTHING ?        \
-                                hero_glyph :                            \
-                            youmonst.m_ap_type == M_AP_FURNITURE ?      \
-                                cmap_to_glyph(youmonst.mappearance) :   \
-                            youmonst.m_ap_type == M_AP_OBJECT ?         \
-                                objnum_to_glyph(youmonst.mappearance) : \
-                            /* else M_AP_MONSTER */                     \
-                                monnum_to_glyph(youmonst.mappearance)))
+#define maybe_display_usteed(otherwise_self)                             \
+    ((u.usteed && mon_visible(u.usteed)) ? ridden_mon_to_glyph(u.usteed) \
+                                         : (otherwise_self))
+
+#define display_self()                                                     \
+    show_glyph(u.ux, u.uy,                                                 \
+               maybe_display_usteed(                                       \
+                   youmonst.m_ap_type == M_AP_NOTHING                      \
+                       ? hero_glyph                                        \
+                       : youmonst.m_ap_type == M_AP_FURNITURE              \
+                             ? cmap_to_glyph(youmonst.mappearance)         \
+                             : youmonst.m_ap_type == M_AP_OBJECT           \
+                                   ? objnum_to_glyph(youmonst.mappearance) \
+                                   : /* else M_AP_MONSTER */               \
+                                   monnum_to_glyph(youmonst.mappearance)))
 
 /*
  * A glyph is an abstraction that represents a _unique_ monster, object,
  *
  * corpse      One for each monster.  Count: NUMMONS
  *
- * ridden      Represents all monsters being ridden.  Count: NUMMONS 
+ * ridden      Represents all monsters being ridden.  Count: NUMMONS
  *
  * object      One for each object.  Count: NUM_OBJECTS
  *
  *
  * The following are offsets used to convert to and from a glyph.
  */
-#define NUM_ZAP 8      /* number of zap beam types */
-
-#define GLYPH_MON_OFF          0
-#define GLYPH_PET_OFF          (NUMMONS        + GLYPH_MON_OFF)
-#define GLYPH_INVIS_OFF                (NUMMONS        + GLYPH_PET_OFF)
-#define GLYPH_DETECT_OFF       (1              + GLYPH_INVIS_OFF)
-#define GLYPH_BODY_OFF         (NUMMONS        + GLYPH_DETECT_OFF)
-#define GLYPH_RIDDEN_OFF       (NUMMONS        + GLYPH_BODY_OFF)
-#define GLYPH_OBJ_OFF          (NUMMONS        + GLYPH_RIDDEN_OFF)
-#define GLYPH_CMAP_OFF         (NUM_OBJECTS    + GLYPH_OBJ_OFF)
-#define GLYPH_EXPLODE_OFF      ((MAXPCHARS - MAXEXPCHARS) + GLYPH_CMAP_OFF)
-#define GLYPH_ZAP_OFF          ((MAXEXPCHARS * EXPL_MAX) + GLYPH_EXPLODE_OFF)
-#define GLYPH_SWALLOW_OFF      ((NUM_ZAP << 2) + GLYPH_ZAP_OFF)
-#define GLYPH_WARNING_OFF      ((NUMMONS << 3) + GLYPH_SWALLOW_OFF)
-#define GLYPH_STATUE_OFF       (WARNCOUNT      + GLYPH_WARNING_OFF)
-#define MAX_GLYPH              (NUMMONS      + GLYPH_STATUE_OFF)
+#define NUM_ZAP 8 /* number of zap beam types */
+
+#define GLYPH_MON_OFF 0
+#define GLYPH_PET_OFF (NUMMONS + GLYPH_MON_OFF)
+#define GLYPH_INVIS_OFF (NUMMONS + GLYPH_PET_OFF)
+#define GLYPH_DETECT_OFF (1 + GLYPH_INVIS_OFF)
+#define GLYPH_BODY_OFF (NUMMONS + GLYPH_DETECT_OFF)
+#define GLYPH_RIDDEN_OFF (NUMMONS + GLYPH_BODY_OFF)
+#define GLYPH_OBJ_OFF (NUMMONS + GLYPH_RIDDEN_OFF)
+#define GLYPH_CMAP_OFF (NUM_OBJECTS + GLYPH_OBJ_OFF)
+#define GLYPH_EXPLODE_OFF ((MAXPCHARS - MAXEXPCHARS) + GLYPH_CMAP_OFF)
+#define GLYPH_ZAP_OFF ((MAXEXPCHARS * EXPL_MAX) + GLYPH_EXPLODE_OFF)
+#define GLYPH_SWALLOW_OFF ((NUM_ZAP << 2) + GLYPH_ZAP_OFF)
+#define GLYPH_WARNING_OFF ((NUMMONS << 3) + GLYPH_SWALLOW_OFF)
+#define GLYPH_STATUE_OFF (WARNCOUNT + GLYPH_WARNING_OFF)
+#define MAX_GLYPH (NUMMONS + GLYPH_STATUE_OFF)
 
 #define NO_GLYPH MAX_GLYPH
 
 #define GLYPH_INVISIBLE GLYPH_INVIS_OFF
 
-#define warning_to_glyph(mwarnlev) ((mwarnlev)+GLYPH_WARNING_OFF)
-#define mon_to_glyph(mon) ((int) what_mon(monsndx((mon)->data))+GLYPH_MON_OFF)
-#define detected_mon_to_glyph(mon) ((int) what_mon(monsndx((mon)->data))+GLYPH_DETECT_OFF)
-#define ridden_mon_to_glyph(mon) ((int) what_mon(monsndx((mon)->data))+GLYPH_RIDDEN_OFF)
-#define pet_to_glyph(mon) ((int) what_mon(monsndx((mon)->data))+GLYPH_PET_OFF)
+#define warning_to_glyph(mwarnlev) ((mwarnlev) + GLYPH_WARNING_OFF)
+#define mon_to_glyph(mon) \
+    ((int) what_mon(monsndx((mon)->data)) + GLYPH_MON_OFF)
+#define detected_mon_to_glyph(mon) \
+    ((int) what_mon(monsndx((mon)->data)) + GLYPH_DETECT_OFF)
+#define ridden_mon_to_glyph(mon) \
+    ((int) what_mon(monsndx((mon)->data)) + GLYPH_RIDDEN_OFF)
+#define pet_to_glyph(mon) \
+    ((int) what_mon(monsndx((mon)->data)) + GLYPH_PET_OFF)
 
 /* This has the unfortunate side effect of needing a global variable   */
 /* to store a result. 'otg_temp' is defined and declared in decl.{ch}. */
-#define random_obj_to_glyph()                                                \
-       ((otg_temp = random_object()) == CORPSE ?                             \
-           random_monster() + GLYPH_BODY_OFF :                               \
-               otg_temp + GLYPH_OBJ_OFF)                             
-
-#define obj_to_glyph(obj)                                                    \
-    ((obj)->otyp == STATUE ?                                                 \
-        statue_to_glyph(obj) :                                               \
-     Hallucination ?                                                         \
-       random_obj_to_glyph() :                                               \
-     (obj)->otyp == CORPSE ?                                                 \
-           (int) (obj)->corpsenm + GLYPH_BODY_OFF :                          \
-       (int) (obj)->otyp + GLYPH_OBJ_OFF)
-
+#define random_obj_to_glyph()                \
+    ((otg_temp = random_object()) == CORPSE  \
+         ? random_monster() + GLYPH_BODY_OFF \
+         : otg_temp + GLYPH_OBJ_OFF)
+
+#define obj_to_glyph(obj)                                               \
+    ((obj)->otyp == STATUE                                              \
+         ? statue_to_glyph(obj)                                         \
+         : Hallucination ? random_obj_to_glyph()                        \
+                         : (obj)->otyp == CORPSE                        \
+                               ? (int) (obj)->corpsenm + GLYPH_BODY_OFF \
+                               : (int) (obj)->otyp + GLYPH_OBJ_OFF)
 
 /* MRKR: Statues now have glyphs corresponding to the monster they    */
 /*       brepresent and look like monsters when you are hallucinating. */
 
-#define statue_to_glyph(obj)                                                 \
-    (Hallucination ?                                                         \
-       random_monster() + GLYPH_MON_OFF :                                    \
-       (int) (obj)->corpsenm + GLYPH_STATUE_OFF)
+#define statue_to_glyph(obj)                          \
+    (Hallucination ? random_monster() + GLYPH_MON_OFF \
+                   : (int) (obj)->corpsenm + GLYPH_STATUE_OFF)
 
-#define cmap_to_glyph(cmap_idx) ((int) (cmap_idx)   + GLYPH_CMAP_OFF)
-#define explosion_to_glyph(expltype,idx)       \
-    ((((expltype) * MAXEXPCHARS) + ((idx) - S_explode1)) + GLYPH_EXPLODE_OFF)
+#define cmap_to_glyph(cmap_idx) ((int) (cmap_idx) + GLYPH_CMAP_OFF)
+#define explosion_to_glyph(expltype, idx) \
+    ((((expltype) *MAXEXPCHARS) + ((idx) -S_explode1)) + GLYPH_EXPLODE_OFF)
 
-#define trap_to_glyph(trap)    \
-                       cmap_to_glyph(trap_to_defsym(what_trap((trap)->ttyp)))
+#define trap_to_glyph(trap) \
+    cmap_to_glyph(trap_to_defsym(what_trap((trap)->ttyp)))
 
 /* Not affected by hallucination.  Gives a generic body for CORPSE */
 /* MRKR: ...and the generic statue */
-#define objnum_to_glyph(onum)          ((int) (onum) + GLYPH_OBJ_OFF)
-#define monnum_to_glyph(mnum)          ((int) (mnum) + GLYPH_MON_OFF)
-#define detected_monnum_to_glyph(mnum) ((int) (mnum) + GLYPH_DETECT_OFF)
-#define ridden_monnum_to_glyph(mnum)   ((int) (mnum) + GLYPH_RIDDEN_OFF)
-#define petnum_to_glyph(mnum)          ((int) (mnum) + GLYPH_PET_OFF)
+#define objnum_to_glyph(onum) ((int) (onum) + GLYPH_OBJ_OFF)
+#define monnum_to_glyph(mnum) ((int) (mnum) + GLYPH_MON_OFF)
+#define detected_monnum_to_glyph(mnum) ((int) (mnum) + GLYPH_DETECT_OFF)
+#define ridden_monnum_to_glyph(mnum) ((int) (mnum) + GLYPH_RIDDEN_OFF)
+#define petnum_to_glyph(mnum) ((int) (mnum) + GLYPH_PET_OFF)
 
 /* The hero's glyph when seen as a monster.
  */
-#define hero_glyph \
-       monnum_to_glyph((Upolyd || !flags.showrace) ? u.umonnum : \
-                       (flags.female && urace.femalenum != NON_PM) ? \
-                        urace.femalenum : urace.malenum)
+#define hero_glyph                                                    \
+    monnum_to_glyph((Upolyd || !flags.showrace)                       \
+                        ? u.umonnum                                   \
+                        : (flags.female && urace.femalenum != NON_PM) \
+                              ? urace.femalenum                       \
+                              : urace.malenum)
 
 /*
  * Change the given glyph into it's given type.  Note:
  *        out of range, it will return zero (for lack of anything better
  *        to return).
  */
-#define glyph_to_mon(glyph)                                            \
-       (glyph_is_normal_monster(glyph) ? ((glyph)-GLYPH_MON_OFF) :     \
-       glyph_is_pet(glyph) ? ((glyph)-GLYPH_PET_OFF) :                 \
-       glyph_is_detected_monster(glyph) ? ((glyph)-GLYPH_DETECT_OFF) : \
-       glyph_is_ridden_monster(glyph) ? ((glyph)-GLYPH_RIDDEN_OFF) :   \
-       glyph_is_statue(glyph) ? ((glyph)-GLYPH_STATUE_OFF) :           \
-       NO_GLYPH)
-#define glyph_to_obj(glyph)                                            \
-       (glyph_is_body(glyph) ? CORPSE :                                \
-       glyph_is_statue(glyph) ? STATUE :                               \
-       glyph_is_normal_object(glyph) ? ((glyph)-GLYPH_OBJ_OFF) :       \
-       NO_GLYPH)
-#define glyph_to_trap(glyph)                                           \
-       (glyph_is_trap(glyph) ?                                         \
-               ((int) defsym_to_trap((glyph) - GLYPH_CMAP_OFF)) :      \
-       NO_GLYPH)
-#define glyph_to_cmap(glyph)                                           \
-       (glyph_is_cmap(glyph) ? ((glyph) - GLYPH_CMAP_OFF) :            \
-       NO_GLYPH)
-#define glyph_to_swallow(glyph)                                                \
-       (glyph_is_swallow(glyph) ? (((glyph) - GLYPH_SWALLOW_OFF) & 0x7) : \
-       0)
-#define glyph_to_warning(glyph)                                                \
-       (glyph_is_warning(glyph) ? ((glyph) - GLYPH_WARNING_OFF) :      \
-       NO_GLYPH);
+#define glyph_to_mon(glyph)                                    \
+    (glyph_is_normal_monster(glyph)                            \
+         ? ((glyph) -GLYPH_MON_OFF)                            \
+         : glyph_is_pet(glyph)                                 \
+               ? ((glyph) -GLYPH_PET_OFF)                      \
+               : glyph_is_detected_monster(glyph)              \
+                     ? ((glyph) -GLYPH_DETECT_OFF)             \
+                     : glyph_is_ridden_monster(glyph)          \
+                           ? ((glyph) -GLYPH_RIDDEN_OFF)       \
+                           : glyph_is_statue(glyph)            \
+                                 ? ((glyph) -GLYPH_STATUE_OFF) \
+                                 : NO_GLYPH)
+#define glyph_to_obj(glyph)                                               \
+    (glyph_is_body(glyph) ? CORPSE : glyph_is_statue(glyph)               \
+                                         ? STATUE                         \
+                                         : glyph_is_normal_object(glyph)  \
+                                               ? ((glyph) -GLYPH_OBJ_OFF) \
+                                               : NO_GLYPH)
+#define glyph_to_trap(glyph)                                                \
+    (glyph_is_trap(glyph) ? ((int) defsym_to_trap((glyph) -GLYPH_CMAP_OFF)) \
+                          : NO_GLYPH)
+#define glyph_to_cmap(glyph) \
+    (glyph_is_cmap(glyph) ? ((glyph) -GLYPH_CMAP_OFF) : NO_GLYPH)
+#define glyph_to_swallow(glyph) \
+    (glyph_is_swallow(glyph) ? (((glyph) -GLYPH_SWALLOW_OFF) & 0x7) : 0)
+#define glyph_to_warning(glyph) \
+    (glyph_is_warning(glyph) ? ((glyph) -GLYPH_WARNING_OFF) : NO_GLYPH);
 
 /*
  * Return true if the given glyph is what we want.  Note that bodies are
  * considered objects.
  */
-#define glyph_is_monster(glyph)                                                \
-               (glyph_is_normal_monster(glyph)                         \
-               || glyph_is_pet(glyph)                                  \
-               || glyph_is_ridden_monster(glyph)                       \
-               || glyph_is_detected_monster(glyph))
-#define glyph_is_normal_monster(glyph)                                 \
-    ((glyph) >= GLYPH_MON_OFF && (glyph) < (GLYPH_MON_OFF+NUMMONS))
-#define glyph_is_pet(glyph)                                            \
-    ((glyph) >= GLYPH_PET_OFF && (glyph) < (GLYPH_PET_OFF+NUMMONS))
-#define glyph_is_body(glyph)                                           \
-    ((glyph) >= GLYPH_BODY_OFF && (glyph) < (GLYPH_BODY_OFF+NUMMONS))
-
-#define glyph_is_statue(glyph)                                         \
-    ((glyph) >= GLYPH_STATUE_OFF && (glyph) < (GLYPH_STATUE_OFF+NUMMONS))
-
-#define glyph_is_ridden_monster(glyph)                                 \
-    ((glyph) >= GLYPH_RIDDEN_OFF && (glyph) < (GLYPH_RIDDEN_OFF+NUMMONS))
-#define glyph_is_detected_monster(glyph)                               \
-    ((glyph) >= GLYPH_DETECT_OFF && (glyph) < (GLYPH_DETECT_OFF+NUMMONS))
+#define glyph_is_monster(glyph)                            \
+    (glyph_is_normal_monster(glyph) || glyph_is_pet(glyph) \
+     || glyph_is_ridden_monster(glyph) || glyph_is_detected_monster(glyph))
+#define glyph_is_normal_monster(glyph) \
+    ((glyph) >= GLYPH_MON_OFF && (glyph) < (GLYPH_MON_OFF + NUMMONS))
+#define glyph_is_pet(glyph) \
+    ((glyph) >= GLYPH_PET_OFF && (glyph) < (GLYPH_PET_OFF + NUMMONS))
+#define glyph_is_body(glyph) \
+    ((glyph) >= GLYPH_BODY_OFF && (glyph) < (GLYPH_BODY_OFF + NUMMONS))
+
+#define glyph_is_statue(glyph) \
+    ((glyph) >= GLYPH_STATUE_OFF && (glyph) < (GLYPH_STATUE_OFF + NUMMONS))
+
+#define glyph_is_ridden_monster(glyph) \
+    ((glyph) >= GLYPH_RIDDEN_OFF && (glyph) < (GLYPH_RIDDEN_OFF + NUMMONS))
+#define glyph_is_detected_monster(glyph) \
+    ((glyph) >= GLYPH_DETECT_OFF && (glyph) < (GLYPH_DETECT_OFF + NUMMONS))
 #define glyph_is_invisible(glyph) ((glyph) == GLYPH_INVISIBLE)
-#define glyph_is_normal_object(glyph)                                  \
-    ((glyph) >= GLYPH_OBJ_OFF && (glyph) < (GLYPH_OBJ_OFF+NUM_OBJECTS))
-#define glyph_is_object(glyph)                                         \
-               (glyph_is_normal_object(glyph)                          \
-                 || glyph_is_statue(glyph)                             \
-                 || glyph_is_body(glyph))
-#define glyph_is_trap(glyph)                                           \
-    ((glyph) >= (GLYPH_CMAP_OFF+trap_to_defsym(1)) &&                  \
-     (glyph) < (GLYPH_CMAP_OFF+trap_to_defsym(1)+TRAPNUM))
-#define glyph_is_cmap(glyph)                                           \
-    ((glyph) >= GLYPH_CMAP_OFF && (glyph) < (GLYPH_CMAP_OFF+MAXPCHARS))
-#define glyph_is_swallow(glyph) \
+#define glyph_is_normal_object(glyph) \
+    ((glyph) >= GLYPH_OBJ_OFF && (glyph) < (GLYPH_OBJ_OFF + NUM_OBJECTS))
+#define glyph_is_object(glyph)                               \
+    (glyph_is_normal_object(glyph) || glyph_is_statue(glyph) \
+     || glyph_is_body(glyph))
+#define glyph_is_trap(glyph)                         \
+    ((glyph) >= (GLYPH_CMAP_OFF + trap_to_defsym(1)) \
+     && (glyph) < (GLYPH_CMAP_OFF + trap_to_defsym(1) + TRAPNUM))
+#define glyph_is_cmap(glyph) \
+    ((glyph) >= GLYPH_CMAP_OFF && (glyph) < (GLYPH_CMAP_OFF + MAXPCHARS))
+#define glyph_is_swallow(glyph)   \
     ((glyph) >= GLYPH_SWALLOW_OFF \
-     && (glyph) < (GLYPH_SWALLOW_OFF+(NUMMONS << 3)))
-#define glyph_is_warning(glyph)        \
-    ((glyph) >= GLYPH_WARNING_OFF && (glyph) < (GLYPH_WARNING_OFF + WARNCOUNT))
+     && (glyph) < (GLYPH_SWALLOW_OFF + (NUMMONS << 3)))
+#define glyph_is_warning(glyph)   \
+    ((glyph) >= GLYPH_WARNING_OFF \
+     && (glyph) < (GLYPH_WARNING_OFF + WARNCOUNT))
 
 #endif /* DISPLAY_H */
index 1a5fa77c19abd73c4b9aa6e790f0652ca882d7f1..3ae9197eb2b8fa9812cf751bd0a8f75da283271d 100644 (file)
 
 /* implementations */
 #ifdef MAC
-# define DLBRSRC       /* use Mac resources */
+#define DLBRSRC /* use Mac resources */
 #else
-# define DLBLIB                /* use a set of external files */
+#define DLBLIB /* use a set of external files */
 #endif
 
 #ifdef DLBLIB
 /* directory structure in memory */
 typedef struct dlb_directory {
-    char *fname;       /* file name as seen from calling code */
-    long foffset;      /* offset in lib file to start of this file */
-    long fsize;                /* file size */
-    char handling;     /* how to handle the file (compression, etc) */
+    char *fname;   /* file name as seen from calling code */
+    long foffset;  /* offset in lib file to start of this file */
+    long fsize;    /* file size */
+    char handling; /* how to handle the file (compression, etc) */
 } libdir;
 
 /* information about each open library */
 typedef struct dlb_library {
-    FILE *fdata;       /* opened data file */
-    long fmark;                /* current file mark */
-    libdir *dir;       /* directory of library file */
-    char *sspace;      /* pointer to string space */
-    long nentries;     /* # of files in directory */
-    long rev;          /* dlb file revision */
-    long strsize;      /* dlb file string size */
+    FILE *fdata;   /* opened data file */
+    long fmark;    /* current file mark */
+    libdir *dir;   /* directory of library file */
+    char *sspace;  /* pointer to string space */
+    long nentries; /* # of files in directory */
+    long rev;      /* dlb file revision */
+    long strsize;  /* dlb file string size */
 } library;
 
 /* library definitions */
-# ifndef DLBFILE
-#  define DLBFILE      "nhdat"                 /* name of library */
-# endif
-# ifndef FILENAME_CMP
-#  define FILENAME_CMP strcmp                  /* case sensitive */
-# endif
+#ifndef DLBFILE
+#define DLBFILE "nhdat" /* name of library */
+#endif
+#ifndef FILENAME_CMP
+#define FILENAME_CMP strcmp /* case sensitive */
+#endif
 
 #endif /* DLBLIB */
 
-
 typedef struct dlb_handle {
-    FILE *fp;          /* pointer to an external file, use if non-null */
+    FILE *fp; /* pointer to an external file, use if non-null */
 #ifdef DLBLIB
-    library *lib;      /* pointer to library structure */
-    long start;                /* offset of start of file */
-    long size;         /* size of file */
-    long mark;         /* current file marker */
+    library *lib; /* pointer to library structure */
+    long start;   /* offset of start of file */
+    long size;    /* size of file */
+    long mark;    /* current file marker */
 #endif
 #ifdef DLBRSRC
-    int fd;            /* HandleFile file descriptor */
+    int fd; /* HandleFile file descriptor */
 #endif
 } dlb;
 
 #if defined(ULTRIX_PROTO) && !defined(__STDC__)
- /* buggy old Ultrix compiler wants this for the (*dlb_fread_proc)
-    and (*dlb_fgets_proc) prototypes in struct dlb_procs (dlb.c);
-    we'll use it in all the declarations for consistency */
+/* buggy old Ultrix compiler wants this for the (*dlb_fread_proc)
+   and (*dlb_fgets_proc) prototypes in struct dlb_procs (dlb.c);
+   we'll use it in all the declarations for consistency */
 #define DLB_P struct dlb_handle *
 #else
 #define DLB_P dlb *
@@ -73,71 +72,70 @@ typedef struct dlb_handle {
 boolean NDECL(dlb_init);
 void NDECL(dlb_cleanup);
 
-dlb *FDECL(dlb_fopen, (const char *,const char *));
+dlb *FDECL(dlb_fopen, (const char *, const char *));
 int FDECL(dlb_fclose, (DLB_P));
-int FDECL(dlb_fread, (char *,int,int,DLB_P));
-int FDECL(dlb_fseek, (DLB_P,long,int));
-char *FDECL(dlb_fgets, (char *,int,DLB_P));
+int FDECL(dlb_fread, (char *, int, int, DLB_P));
+int FDECL(dlb_fseek, (DLB_P, long, int));
+char *FDECL(dlb_fgets, (char *, int, DLB_P));
 int FDECL(dlb_fgetc, (DLB_P));
 long FDECL(dlb_ftell, (DLB_P));
 
-
 /* Resource DLB entry points */
 #ifdef DLBRSRC
-       boolean rsrc_dlb_init(void);
-       void rsrc_dlb_cleanup(void);
-       boolean rsrc_dlb_fopen(dlb *dp, const char *name, const char *mode);
-       int rsrc_dlb_fclose(dlb *dp);
-       int rsrc_dlb_fread(char *buf, int size, int quan, dlb *dp);
-       int rsrc_dlb_fseek(dlb *dp, long pos, int whence);
-       char *rsrc_dlb_fgets(char *buf, int len, dlb *dp);
-       int rsrc_dlb_fgetc(dlb *dp);
-       long rsrc_dlb_ftell(dlb *dp);
+boolean rsrc_dlb_init(void);
+void rsrc_dlb_cleanup(void);
+boolean rsrc_dlb_fopen(dlb *dp, const char *name, const char *mode);
+int rsrc_dlb_fclose(dlb *dp);
+int rsrc_dlb_fread(char *buf, int size, int quan, dlb *dp);
+int rsrc_dlb_fseek(dlb *dp, long pos, int whence);
+char *rsrc_dlb_fgets(char *buf, int len, dlb *dp);
+int rsrc_dlb_fgetc(dlb *dp);
+long rsrc_dlb_ftell(dlb *dp);
 #endif
 
-
 #else /* DLB */
 
-# define dlb FILE
+#define dlb FILE
 
-# define dlb_init()
-# define dlb_cleanup()
+#define dlb_init()
+#define dlb_cleanup()
 
-# define dlb_fopen     fopen
-# define dlb_fclose    fclose
-# define dlb_fread     fread
-# define dlb_fseek     fseek
-# define dlb_fgets     fgets
-# define dlb_fgetc     fgetc
-# define dlb_ftell     ftell
+#define dlb_fopen fopen
+#define dlb_fclose fclose
+#define dlb_fread fread
+#define dlb_fseek fseek
+#define dlb_fgets fgets
+#define dlb_fgetc fgetc
+#define dlb_ftell ftell
 
 #endif /* DLB */
 
-
 /* various other I/O stuff we don't want to replicate everywhere */
 
 #ifndef SEEK_SET
-# define SEEK_SET 0
+#define SEEK_SET 0
 #endif
 #ifndef SEEK_CUR
-# define SEEK_CUR 1
+#define SEEK_CUR 1
 #endif
 #ifndef SEEK_END
-# define SEEK_END 2
+#define SEEK_END 2
 #endif
 
 #define RDTMODE "r"
-#if (defined(MSDOS) || defined(WIN32) || defined(TOS) || defined(OS2)) && defined(DLB)
+#if (defined(MSDOS) || defined(WIN32) || defined(TOS) || defined(OS2)) \
+    && defined(DLB)
 #define WRTMODE "w+b"
 #else
 #define WRTMODE "w+"
 #endif
-#if (defined(MICRO) && !defined(AMIGA)) || defined(THINK_C) || defined(__MWERKS__) || defined(WIN32)
-# define RDBMODE "rb"
-# define WRBMODE "w+b"
+#if (defined(MICRO) && !defined(AMIGA)) || defined(THINK_C) \
+    || defined(__MWERKS__) || defined(WIN32)
+#define RDBMODE "rb"
+#define WRBMODE "w+b"
 #else
-# define RDBMODE "r"
-# define WRBMODE "w+"
+#define RDBMODE "r"
+#define WRBMODE "w+"
 #endif
 
-#endif /* DLB_H */
+#endif /* DLB_H */
index 1ea73976d1dbf03573fec27336f336e9df8744a0..65246ed2943e1a9ec112f33b60a1e24229dc2ba1 100644 (file)
@@ -6,33 +6,33 @@
 #ifndef DUNGEON_H
 #define DUNGEON_H
 
-typedef struct d_flags {       /* dungeon/level type flags */
-       Bitfield(town, 1);      /* is this a town? (levels only) */
-       Bitfield(hellish, 1);   /* is this part of hell? */
-       Bitfield(maze_like, 1); /* is this a maze? */
-       Bitfield(rogue_like, 1); /* is this an old-fashioned presentation? */
-       Bitfield(align, 3);     /* dungeon alignment. */
-       Bitfield(unused, 1);    /* etc... */
+typedef struct d_flags {     /* dungeon/level type flags */
+    Bitfield(town, 1);       /* is this a town? (levels only) */
+    Bitfield(hellish, 1);    /* is this part of hell? */
+    Bitfield(maze_like, 1);  /* is this a maze? */
+    Bitfield(rogue_like, 1); /* is this an old-fashioned presentation? */
+    Bitfield(align, 3);      /* dungeon alignment. */
+    Bitfield(unused, 1);     /* etc... */
 } d_flags;
 
-typedef struct d_level {       /* basic dungeon level element */
-       xchar   dnum;           /* dungeon number */
-       xchar   dlevel;         /* level number */
+typedef struct d_level { /* basic dungeon level element */
+    xchar dnum;          /* dungeon number */
+    xchar dlevel;        /* level number */
 } d_level;
 
-typedef struct s_level {       /* special dungeon level element */
-       struct  s_level *next;
-       d_level dlevel;         /* dungeon & level numbers */
-       char    proto[15];      /* name of prototype file (eg. "tower") */
-       char    boneid;         /* character to id level in bones files */
-       uchar   rndlevs;        /* no. of randomly available similar levels */
-       d_flags flags;          /* type flags */
+typedef struct s_level { /* special dungeon level element */
+    struct s_level *next;
+    d_level dlevel; /* dungeon & level numbers */
+    char proto[15]; /* name of prototype file (eg. "tower") */
+    char boneid;    /* character to id level in bones files */
+    uchar rndlevs;  /* no. of randomly available similar levels */
+    d_flags flags;  /* type flags */
 } s_level;
 
-typedef struct stairway {      /* basic stairway identifier */
-       xchar   sx, sy;         /* x / y location of the stair */
-       d_level tolev;          /* where does it go */
-       char    up;             /* what type of stairway (up/down) */
+typedef struct stairway { /* basic stairway identifier */
+    xchar sx, sy;         /* x / y location of the stair */
+    d_level tolev;        /* where does it go */
+    char up;              /* what type of stairway (up/down) */
 } stairway;
 
 /* level region types */
@@ -44,23 +44,23 @@ typedef struct stairway {   /* basic stairway identifier */
 #define LR_UPTELE 5
 #define LR_DOWNTELE 6
 
-typedef struct dest_area {     /* non-stairway level change indentifier */
-       xchar   lx, ly;         /* "lower" left corner (near [0,0]) */
-       xchar   hx, hy;         /* "upper" right corner (near [COLNO,ROWNO]) */
-       xchar   nlx, nly;       /* outline of invalid area */
-       xchar   nhx, nhy;       /* opposite corner of invalid area */
+typedef struct dest_area { /* non-stairway level change indentifier */
+    xchar lx, ly;          /* "lower" left corner (near [0,0]) */
+    xchar hx, hy;          /* "upper" right corner (near [COLNO,ROWNO]) */
+    xchar nlx, nly;        /* outline of invalid area */
+    xchar nhx, nhy;        /* opposite corner of invalid area */
 } dest_area;
 
-typedef struct dungeon {       /* basic dungeon identifier */
-       char    dname[24];      /* name of the dungeon (eg. "Hell") */
-       char    proto[15];      /* name of prototype file (eg. "tower") */
-       char    boneid;         /* character to id dungeon in bones files */
-       d_flags flags;          /* dungeon flags */
-       xchar   entry_lev;      /* entry level */
-       xchar   num_dunlevs;    /* number of levels in this dungeon */
-       xchar   dunlev_ureached; /* how deep you have been in this dungeon */
-       int     ledger_start,   /* the starting depth in "real" terms */
-               depth_start;    /* the starting depth in "logical" terms */
+typedef struct dungeon {   /* basic dungeon identifier */
+    char dname[24];        /* name of the dungeon (eg. "Hell") */
+    char proto[15];        /* name of prototype file (eg. "tower") */
+    char boneid;           /* character to id dungeon in bones files */
+    d_flags flags;         /* dungeon flags */
+    xchar entry_lev;       /* entry level */
+    xchar num_dunlevs;     /* number of levels in this dungeon */
+    xchar dunlev_ureached; /* how deep you have been in this dungeon */
+    int ledger_start,      /* the starting depth in "real" terms */
+        depth_start;       /* the starting depth in "logical" terms */
 } dungeon;
 
 /*
@@ -70,24 +70,23 @@ typedef struct dungeon {    /* basic dungeon identifier */
  * point.
  */
 typedef struct branch {
-    struct branch *next;       /* next in the branch chain */
-    int                  id;           /* branch identifier */
-    int                  type;         /* type of branch */
-    d_level      end1;         /* "primary" end point */
-    d_level      end2;         /* other end point */
-    boolean      end1_up;      /* does end1 go up? */
+    struct branch *next; /* next in the branch chain */
+    int id;              /* branch identifier */
+    int type;            /* type of branch */
+    d_level end1;        /* "primary" end point */
+    d_level end2;        /* other end point */
+    boolean end1_up;     /* does end1 go up? */
 } branch;
 
 /* branch types */
-#define BR_STAIR   0   /* "Regular" connection, 2 staircases. */
-#define BR_NO_END1 1   /* "Regular" connection.  However, no stair from  */
-                       /*      end1 to end2.  There is a stair from end2 */
-                       /*      to end1.                                  */
-#define BR_NO_END2 2   /* "Regular" connection.  However, no stair from  */
-                       /*      end2 to end1.  There is a stair from end1 */
-                       /*      to end2.                                  */
-#define BR_PORTAL  3   /* Connection by magic portals (traps) */
-
+#define BR_STAIR 0   /* "Regular" connection, 2 staircases. */
+#define BR_NO_END1 1 /* "Regular" connection.  However, no stair from  */
+                     /*        end1 to end2.  There is a stair from end2 */
+                     /*        to end1.                                  */
+#define BR_NO_END2 2 /* "Regular" connection.  However, no stair from  */
+                     /*        end2 to end1.  There is a stair from end1 */
+                     /*        to end2.                                  */
+#define BR_PORTAL 3  /* Connection by magic portals (traps) */
 
 /* A particular dungeon contains num_dunlevs d_levels with dlevel 1..
  * num_dunlevs.  Ledger_start and depth_start are bases that are added
@@ -99,151 +98,154 @@ typedef struct branch {
  *
  * Depth corresponds to the number of floors below the surface.
  */
-#define Is_astralevel(x)       (on_level(x, &astral_level))
-#define Is_earthlevel(x)       (on_level(x, &earth_level))
-#define Is_waterlevel(x)       (on_level(x, &water_level))
-#define Is_firelevel(x)                (on_level(x, &fire_level))
-#define Is_airlevel(x)         (on_level(x, &air_level))
-#define Is_medusa_level(x)     (on_level(x, &medusa_level))
-#define Is_oracle_level(x)     (on_level(x, &oracle_level))
-#define Is_valley(x)           (on_level(x, &valley_level))
-#define Is_juiblex_level(x)    (on_level(x, &juiblex_level))
-#define Is_asmo_level(x)       (on_level(x, &asmodeus_level))
-#define Is_baal_level(x)       (on_level(x, &baalzebub_level))
-#define Is_wiz1_level(x)       (on_level(x, &wiz1_level))
-#define Is_wiz2_level(x)       (on_level(x, &wiz2_level))
-#define Is_wiz3_level(x)       (on_level(x, &wiz3_level))
-#define Is_sanctum(x)          (on_level(x, &sanctum_level))
-#define Is_portal_level(x)     (on_level(x, &portal_level))
-#define Is_rogue_level(x)      (on_level(x, &rogue_level))
-#define Is_stronghold(x)       (on_level(x, &stronghold_level))
-#define Is_bigroom(x)          (on_level(x, &bigroom_level))
-#define Is_qstart(x)           (on_level(x, &qstart_level))
-#define Is_qlocate(x)          (on_level(x, &qlocate_level))
-#define Is_nemesis(x)          (on_level(x, &nemesis_level))
-#define Is_knox(x)             (on_level(x, &knox_level))
-#define Is_mineend_level(x)    (on_level(x, &mineend_level))
-#define Is_sokoend_level(x)    (on_level(x, &sokoend_level))
-
-#define In_sokoban(x)          ((x)->dnum == sokoban_dnum)
-#define Inhell                 In_hell(&u.uz)  /* now gehennom */
-#define In_endgame(x)          ((x)->dnum == astral_level.dnum)
-
-#define within_bounded_area(X,Y,LX,LY,HX,HY) \
-               ((X) >= (LX) && (X) <= (HX) && (Y) >= (LY) && (Y) <= (HY))
+#define Is_astralevel(x) (on_level(x, &astral_level))
+#define Is_earthlevel(x) (on_level(x, &earth_level))
+#define Is_waterlevel(x) (on_level(x, &water_level))
+#define Is_firelevel(x) (on_level(x, &fire_level))
+#define Is_airlevel(x) (on_level(x, &air_level))
+#define Is_medusa_level(x) (on_level(x, &medusa_level))
+#define Is_oracle_level(x) (on_level(x, &oracle_level))
+#define Is_valley(x) (on_level(x, &valley_level))
+#define Is_juiblex_level(x) (on_level(x, &juiblex_level))
+#define Is_asmo_level(x) (on_level(x, &asmodeus_level))
+#define Is_baal_level(x) (on_level(x, &baalzebub_level))
+#define Is_wiz1_level(x) (on_level(x, &wiz1_level))
+#define Is_wiz2_level(x) (on_level(x, &wiz2_level))
+#define Is_wiz3_level(x) (on_level(x, &wiz3_level))
+#define Is_sanctum(x) (on_level(x, &sanctum_level))
+#define Is_portal_level(x) (on_level(x, &portal_level))
+#define Is_rogue_level(x) (on_level(x, &rogue_level))
+#define Is_stronghold(x) (on_level(x, &stronghold_level))
+#define Is_bigroom(x) (on_level(x, &bigroom_level))
+#define Is_qstart(x) (on_level(x, &qstart_level))
+#define Is_qlocate(x) (on_level(x, &qlocate_level))
+#define Is_nemesis(x) (on_level(x, &nemesis_level))
+#define Is_knox(x) (on_level(x, &knox_level))
+#define Is_mineend_level(x) (on_level(x, &mineend_level))
+#define Is_sokoend_level(x) (on_level(x, &sokoend_level))
+
+#define In_sokoban(x) ((x)->dnum == sokoban_dnum)
+#define Inhell In_hell(&u.uz) /* now gehennom */
+#define In_endgame(x) ((x)->dnum == astral_level.dnum)
+
+#define within_bounded_area(X, Y, LX, LY, HX, HY) \
+    ((X) >= (LX) && (X) <= (HX) && (Y) >= (LY) && (Y) <= (HY))
 
 /* monster and object migration codes */
 
-#define MIGR_NOWHERE         (-1)      /* failure flag for down_gate() */
-#define MIGR_RANDOM            0
-#define MIGR_APPROX_XY         1       /* approximate coordinates */
-#define MIGR_EXACT_XY          2       /* specific coordinates */
-#define MIGR_STAIRS_UP         3
-#define MIGR_STAIRS_DOWN       4
-#define MIGR_LADDER_UP         5
-#define MIGR_LADDER_DOWN       6
-#define MIGR_SSTAIRS           7       /* dungeon branch */
-#define MIGR_PORTAL            8       /* magic portal */
-#define MIGR_WITH_HERO 9       /* mon: followers; obj: trap door */
-#define MIGR_NOBREAK        1024       /* bitmask: don't break on delivery */
-#define MIGR_NOSCATTER    2048 /* don't scatter on delivery */
+#define MIGR_NOWHERE (-1) /* failure flag for down_gate() */
+#define MIGR_RANDOM 0
+#define MIGR_APPROX_XY 1 /* approximate coordinates */
+#define MIGR_EXACT_XY 2  /* specific coordinates */
+#define MIGR_STAIRS_UP 3
+#define MIGR_STAIRS_DOWN 4
+#define MIGR_LADDER_UP 5
+#define MIGR_LADDER_DOWN 6
+#define MIGR_SSTAIRS 7      /* dungeon branch */
+#define MIGR_PORTAL 8       /* magic portal */
+#define MIGR_WITH_HERO 9    /* mon: followers; obj: trap door */
+#define MIGR_NOBREAK 1024   /* bitmask: don't break on delivery */
+#define MIGR_NOSCATTER 2048 /* don't scatter on delivery */
 
 /* level information (saved via ledger number) */
 
 struct linfo {
-       unsigned char   flags;
-#define VISITED                0x01    /* hero has visited this level */
-#define FORGOTTEN      0x02    /* hero will forget this level when reached */
-#define LFILE_EXISTS   0x04    /* a level file exists for this level */
-/*
- * Note:  VISITED and LFILE_EXISTS are currently almost always set at the
- * same time.  However they _mean_ different things.
- */
+    unsigned char flags;
+#define VISITED 0x01      /* hero has visited this level */
+#define FORGOTTEN 0x02    /* hero will forget this level when reached */
+#define LFILE_EXISTS 0x04 /* a level file exists for this level */
+                          /*
                          * Note:  VISITED and LFILE_EXISTS are currently almost always set at the
                          * same time.  However they _mean_ different things.
                          */
 
 #ifdef MFLOPPY
-# define FROMPERM       1      /* for ramdisk use */
-# define TOPERM                 2      /* for ramdisk use */
-# define ACTIVE                 1
-# define SWAPPED        2
-       int     where;
-       long    time;
-       long    size;
+#define FROMPERM 1 /* for ramdisk use */
+#define TOPERM 2   /* for ramdisk use */
+#define ACTIVE 1
+#define SWAPPED 2
+    int where;
+    long time;
+    long size;
 #endif /* MFLOPPY */
 };
 
 /* types and structures for dungeon map recording
  *
  * It is designed to eliminate the need for an external notes file for some of
- * the more mundane dungeon elements.  "Where was the last altar I passed?" etc...
+ * the more mundane dungeon elements.  "Where was the last altar I passed?"
+ * etc...
  * Presumably the character can remember this sort of thing even if, months
  * later in real time picking up an old save game, I can't.
  *
  * To be consistent, one can assume that this map is in the player's mind and
- * has no physical correspondence (eliminating illiteracy/blind/hands/hands free
- * concerns.) Therefore, this map is not exaustive nor detailed ("some fountains").
+ * has no physical correspondence (eliminating illiteracy/blind/hands/hands
+ * free
+ * concerns.) Therefore, this map is not exaustive nor detailed ("some
+ * fountains").
  * This makes it also subject to player conditions (amnesia).
  */
 
 /* Because clearly Nethack needs more ways to specify alignment */
-#define Amask2msa(x) ((x) == 4 ? 3 : (x) & AM_MASK)
+#define Amask2msa(x) ((x) == 4 ? 3 : (x) &AM_MASK)
 #define Msa2amask(x) ((x) == 3 ? 4 : (x))
-#define MSA_NONE       0  /* unaligned or multiple alignments */
-#define MSA_LAWFUL  1
+#define MSA_NONE 0 /* unaligned or multiple alignments */
+#define MSA_LAWFUL 1
 #define MSA_NEUTRAL 2
 #define MSA_CHAOTIC 3
 
 /* what the player knows about a single dungeon level */
 /* initialized in mklev() */
-typedef struct mapseen  {
-       struct mapseen *next; /* next map in the chain */
-       branch *br; /* knows about branch via taking it in goto_level */
-       d_level lev; /* corresponding dungeon level */
-       struct mapseen_feat {
-           /* feature knowledge that must be calculated from levl array */
-           Bitfield(nfount, 2);
-           Bitfield(nsink, 2);
-           Bitfield(naltar, 2);
-           Bitfield(nthrone, 2);
-
-           Bitfield(ngrave, 2);
-           Bitfield(ntree, 2);
-           Bitfield(water, 2);
-           Bitfield(lava, 2);
-
-           Bitfield(ice, 2);
-           /* calculated from rooms array */
-           Bitfield(nshop, 2);
-           Bitfield(ntemple, 2);
-           /* altar alignment; MSA_NONE if there is more than one and
-              they aren't all the same */
-           Bitfield(msalign, 2);
-
-           Bitfield(shoptype, 5);
-       } feat;
-       struct mapseen_flags {
-           Bitfield(unreachable, 1); /* can't get back to this level */
-           Bitfield(forgot, 1); /* player has forgotten about this level */
-           Bitfield(knownbones, 1); /* player aware of bones */
-           Bitfield(oracle, 1);
-           Bitfield(sokosolved, 1);
-           Bitfield(bigroom, 1);
-           Bitfield(castle, 1);
-           Bitfield(castletune, 1); /* add tune hint to castle annotation */
-
-           Bitfield(valley, 1);
-           Bitfield(msanctum, 1);
-           Bitfield(ludios, 1);
-           Bitfield(roguelevel, 1);
-       } flags;
-       /* custom naming */
-       char *custom;
-       unsigned custom_lth;
-       struct mapseen_rooms {
-           Bitfield(seen, 1);
-           Bitfield(untended, 1);      /* flag for shop without shk */
-       } msrooms[(MAXNROFROOMS+1)*2];  /* same size as rooms[] */
-       /* dead heroes; might not have graves or ghosts */
-       struct cemetery *final_resting_place; /* same as level.bonesinfo */
+typedef struct mapseen {
+    struct mapseen *next; /* next map in the chain */
+    branch *br;           /* knows about branch via taking it in goto_level */
+    d_level lev;          /* corresponding dungeon level */
+    struct mapseen_feat {
+        /* feature knowledge that must be calculated from levl array */
+        Bitfield(nfount, 2);
+        Bitfield(nsink, 2);
+        Bitfield(naltar, 2);
+        Bitfield(nthrone, 2);
+
+        Bitfield(ngrave, 2);
+        Bitfield(ntree, 2);
+        Bitfield(water, 2);
+        Bitfield(lava, 2);
+
+        Bitfield(ice, 2);
+        /* calculated from rooms array */
+        Bitfield(nshop, 2);
+        Bitfield(ntemple, 2);
+        /* altar alignment; MSA_NONE if there is more than one and
+           they aren't all the same */
+        Bitfield(msalign, 2);
+
+        Bitfield(shoptype, 5);
+    } feat;
+    struct mapseen_flags {
+        Bitfield(unreachable, 1); /* can't get back to this level */
+        Bitfield(forgot, 1);      /* player has forgotten about this level */
+        Bitfield(knownbones, 1);  /* player aware of bones */
+        Bitfield(oracle, 1);
+        Bitfield(sokosolved, 1);
+        Bitfield(bigroom, 1);
+        Bitfield(castle, 1);
+        Bitfield(castletune, 1); /* add tune hint to castle annotation */
+
+        Bitfield(valley, 1);
+        Bitfield(msanctum, 1);
+        Bitfield(ludios, 1);
+        Bitfield(roguelevel, 1);
+    } flags;
+    /* custom naming */
+    char *custom;
+    unsigned custom_lth;
+    struct mapseen_rooms {
+        Bitfield(seen, 1);
+        Bitfield(untended, 1);         /* flag for shop without shk */
+    } msrooms[(MAXNROFROOMS + 1) * 2]; /* same size as rooms[] */
+    /* dead heroes; might not have graves or ghosts */
+    struct cemetery *final_resting_place; /* same as level.bonesinfo */
 } mapseen;
 
 #endif /* DUNGEON_H */
index 35945d79bc8a78505b5fc689202ad9b1e33e2480..6ef344408938540f75b4de9bf64179dad7c9dc00 100644 (file)
@@ -8,22 +8,23 @@
 #define ENGRAVE_H
 
 struct engr {
-       struct engr *nxt_engr;
-       char *engr_txt;
-       xchar engr_x, engr_y;
-       unsigned engr_lth;      /* for save & restore; not length of text */
-       long engr_time;         /* moment engraving was (will be) finished */
-       xchar engr_type;
-#define DUST      1
-#define ENGRAVE    2
-#define BURN      3
-#define MARK      4
+    struct engr *nxt_engr;
+    char *engr_txt;
+    xchar engr_x, engr_y;
+    unsigned engr_lth; /* for save & restore; not length of text */
+    long engr_time;    /* moment engraving was (will be) finished */
+    xchar engr_type;
+#define DUST 1
+#define ENGRAVE 2
+#define BURN 3
+#define MARK 4
 #define ENGR_BLOOD 5
-#define HEADSTONE  6
-#define N_ENGRAVE  6
+#define HEADSTONE 6
+#define N_ENGRAVE 6
 };
 
-#define newengr(lth) (struct engr *)alloc((unsigned)(lth) + sizeof(struct engr))
-#define dealloc_engr(engr) free((genericptr_t) (engr))
+#define newengr(lth) \
+    (struct engr *) alloc((unsigned)(lth) + sizeof(struct engr))
+#define dealloc_engr(engr) free((genericptr_t)(engr))
 
 #endif /* ENGRAVE_H */
index 09d2d6b3ae01bc44e62af0bfb228b95d9e1a0f52..8beca1ee7ac21de54e8e99c30adfa4a3c557c6a7 100644 (file)
@@ -35,13 +35,13 @@ E int NDECL(dojump);
 E int FDECL(jump, (int));
 E int NDECL(number_leashed);
 E void FDECL(o_unleash, (struct obj *));
-E void FDECL(m_unleash, (struct monst *,BOOLEAN_P));
+E void FDECL(m_unleash, (struct monst *, BOOLEAN_P));
 E void NDECL(unleash_all);
 E boolean NDECL(next_to_u);
 E struct obj *FDECL(get_mleash, (struct monst *));
 E const char *NDECL(beautiful);
-E void FDECL(check_leash, (XCHAR_P,XCHAR_P));
-E boolean FDECL(um_dist, (XCHAR_P,XCHAR_P,XCHAR_P));
+E void FDECL(check_leash, (XCHAR_P, XCHAR_P));
+E boolean FDECL(um_dist, (XCHAR_P, XCHAR_P, XCHAR_P));
 E boolean FDECL(snuff_candle, (struct obj *));
 E boolean FDECL(snuff_lit, (struct obj *));
 E boolean FDECL(catch_lit, (struct obj *));
@@ -49,7 +49,7 @@ E void FDECL(use_unicorn_horn, (struct obj *));
 E boolean FDECL(tinnable, (struct obj *));
 E void NDECL(reset_trapset);
 E void FDECL(fig_transform, (ANY_P *, long));
-E int FDECL(unfixable_trouble_count,(BOOLEAN_P));
+E int FDECL(unfixable_trouble_count, (BOOLEAN_P));
 
 /* ### artifact.c ### */
 
@@ -57,57 +57,57 @@ E void NDECL(init_artifacts);
 E void FDECL(save_artifacts, (int));
 E void FDECL(restore_artifacts, (int));
 E const char *FDECL(artiname, (int));
-E struct obj *FDECL(mk_artifact, (struct obj *,ALIGNTYP_P));
-E const char *FDECL(artifact_name, (const char *,short *));
-E boolean FDECL(exist_artifact, (int,const char *));
-E void FDECL(artifact_exists, (struct obj *,const char *,BOOLEAN_P));
+E struct obj *FDECL(mk_artifact, (struct obj *, ALIGNTYP_P));
+E const char *FDECL(artifact_name, (const char *, short *));
+E boolean FDECL(exist_artifact, (int, const char *));
+E void FDECL(artifact_exists, (struct obj *, const char *, BOOLEAN_P));
 E int NDECL(nartifact_exist);
-E boolean FDECL(arti_immune, (struct obj *,int));
-E boolean FDECL(spec_ability, (struct obj *,unsigned long));
+E boolean FDECL(arti_immune, (struct obj *, int));
+E boolean FDECL(spec_ability, (struct obj *, unsigned long));
 E boolean FDECL(confers_luck, (struct obj *));
 E boolean FDECL(arti_reflects, (struct obj *));
 E boolean FDECL(shade_glare, (struct obj *));
-E boolean FDECL(restrict_name, (struct obj *,const char *));
-E boolean FDECL(defends, (int,struct obj *));
-E boolean FDECL(defends_when_carried, (int,struct obj *));
-E boolean FDECL(protects, (struct obj *,BOOLEAN_P));
-E void FDECL(set_artifact_intrinsic, (struct obj *,BOOLEAN_P,long));
-E int FDECL(touch_artifact, (struct obj *,struct monst *));
-E int FDECL(spec_abon, (struct obj *,struct monst *));
-E int FDECL(spec_dbon, (struct obj *,struct monst *,int));
+E boolean FDECL(restrict_name, (struct obj *, const char *));
+E boolean FDECL(defends, (int, struct obj *));
+E boolean FDECL(defends_when_carried, (int, struct obj *));
+E boolean FDECL(protects, (struct obj *, BOOLEAN_P));
+E void FDECL(set_artifact_intrinsic, (struct obj *, BOOLEAN_P, long));
+E int FDECL(touch_artifact, (struct obj *, struct monst *));
+E int FDECL(spec_abon, (struct obj *, struct monst *));
+E int FDECL(spec_dbon, (struct obj *, struct monst *, int));
 E void FDECL(discover_artifact, (XCHAR_P));
 E boolean FDECL(undiscovered_artifact, (XCHAR_P));
 E int FDECL(disp_artifact_discoveries, (winid));
-E boolean FDECL(artifact_hit, (struct monst *,struct monst *,
-                               struct obj *,int *,int));
+E boolean FDECL(artifact_hit,
+                (struct monst *, struct monst *, struct obj *, int *, int));
 E int NDECL(doinvoke);
 E boolean FDECL(finesse_ahriman, (struct obj *));
 E void FDECL(arti_speak, (struct obj *));
 E boolean FDECL(artifact_light, (struct obj *));
 E long FDECL(spec_m2, (struct obj *));
-E boolean FDECL(artifact_has_invprop, (struct obj *,UCHAR_P));
+E boolean FDECL(artifact_has_invprop, (struct obj *, UCHAR_P));
 E long FDECL(arti_cost, (struct obj *));
 E struct obj *FDECL(what_gives, (long *));
 E void FDECL(Sting_effects, (int));
-E int FDECL(retouch_object, (struct obj **,BOOLEAN_P));
+E int FDECL(retouch_object, (struct obj **, BOOLEAN_P));
 E void FDECL(retouch_equipment, (int));
 
 /* ### attrib.c ### */
 
-E boolean FDECL(adjattrib, (int,int,int));
-E void FDECL(gainstr, (struct obj *,int,BOOLEAN_P));
+E boolean FDECL(adjattrib, (int, int, int));
+E void FDECL(gainstr, (struct obj *, int, BOOLEAN_P));
 E void FDECL(losestr, (int));
-E void FDECL(poisontell, (int,BOOLEAN_P));
-E void FDECL(poisoned, (const char *,int,const char *,int,BOOLEAN_P));
+E void FDECL(poisontell, (int, BOOLEAN_P));
+E void FDECL(poisoned, (const char *, int, const char *, int, BOOLEAN_P));
 E void FDECL(change_luck, (SCHAR_P));
 E int FDECL(stone_luck, (BOOLEAN_P));
 E void NDECL(set_moreluck);
 E void NDECL(restore_attrib);
-E void FDECL(exercise, (int,BOOLEAN_P));
+E void FDECL(exercise, (int, BOOLEAN_P));
 E void NDECL(exerchk);
 E void FDECL(init_attr, (int));
 E void NDECL(redist_attr);
-E void FDECL(adjabil, (int,int));
+E void FDECL(adjabil, (int, int));
 E int NDECL(newhp);
 E schar FDECL(acurr, (int));
 E schar NDECL(acurrstr);
@@ -115,7 +115,7 @@ E boolean FDECL(extremeattr, (int));
 E void FDECL(adjalign, (int));
 E int FDECL(is_innate, (int));
 E char *FDECL(from_what, (int));
-E void FDECL(uchangealign, (int,int));
+E void FDECL(uchangealign, (int, int));
 
 /* ### ball.c ### */
 
@@ -124,30 +124,30 @@ E void NDECL(ballfall);
 E void NDECL(placebc);
 E void NDECL(unplacebc);
 E void FDECL(set_bc, (int));
-E void FDECL(move_bc, (int,int,XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P));
-E boolean FDECL(drag_ball, (XCHAR_P,XCHAR_P,
-               int *,xchar *,xchar *,xchar *,xchar *, boolean *,BOOLEAN_P));
-E void FDECL(drop_ball, (XCHAR_P,XCHAR_P));
+E void FDECL(move_bc, (int, int, XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P));
+E boolean FDECL(drag_ball, (XCHAR_P, XCHAR_P, int *, xchar *, xchar *,
+                            xchar *, xchar *, boolean *, BOOLEAN_P));
+E void FDECL(drop_ball, (XCHAR_P, XCHAR_P));
 E void NDECL(drag_down);
 
 /* ### bones.c ### */
 
 E void FDECL(sanitize_name, (char *));
-E void FDECL(drop_upon_death, (struct monst *,struct obj *,int,int));
+E void FDECL(drop_upon_death, (struct monst *, struct obj *, int, int));
 E boolean NDECL(can_make_bones);
-E void FDECL(savebones, (int,time_t,struct obj *));
+E void FDECL(savebones, (int, time_t, struct obj *));
 E int NDECL(getbones);
 
 /* ### botl.c ### */
 
 E int FDECL(xlev_to_rank, (int));
-E int FDECL(title_to_mon, (const char *,int *,int *));
+E int FDECL(title_to_mon, (const char *, int *, int *));
 E void NDECL(max_rank_sz);
 #ifdef SCORE_ON_BOTL
 E long NDECL(botl_score);
 #endif
 E int FDECL(describe_level, (char *));
-E const char *FDECL(rank_of, (int,SHORT_P,BOOLEAN_P));
+E const char *FDECL(rank_of, (int, SHORT_P, BOOLEAN_P));
 E void NDECL(bot);
 #ifdef STATUS_VIA_WINDOWPORT
 E void FDECL(status_initialize, (BOOLEAN_P));
@@ -155,14 +155,15 @@ E void NDECL(status_finish);
 E void NDECL(genl_status_init);
 E void NDECL(genl_status_finish);
 E void FDECL(genl_status_update, (int, genericptr_t, int, int));
-E void FDECL(genl_status_enablefield, (int, const char *, const char *,BOOLEAN_P));
-# ifdef STATUS_HILITES
-E void FDECL(genl_status_threshold, (int,int,anything,int,int,int));
+E void FDECL(genl_status_enablefield,
+             (int, const char *, const char *, BOOLEAN_P));
+#ifdef STATUS_HILITES
+E void FDECL(genl_status_threshold, (int, int, anything, int, int, int));
 E boolean FDECL(set_status_hilites, (char *op));
 E void NDECL(clear_status_hilites);
 E char *FDECL(get_status_hilites, (char *, int));
 E boolean NDECL(status_hilite_menu);
-# endif
+#endif
 #endif
 
 /* ### cmd.c ### */
@@ -183,7 +184,7 @@ E int NDECL(wiz_where);
 E int NDECL(wiz_wish);
 #endif /* USE_TRAMPOLI */
 E void NDECL(reset_occupations);
-E void FDECL(set_occupation, (int (*)(void),const char *,int));
+E void FDECL(set_occupation, (int (*)(void), const char *, int));
 E char NDECL(pgetchar);
 E void FDECL(pushch, (CHAR_P));
 E void FDECL(savech, (CHAR_P));
@@ -193,19 +194,20 @@ E void FDECL(rhack, (char *));
 E int NDECL(doextlist);
 E int NDECL(extcmd_via_menu);
 E int NDECL(enter_explore_mode);
-E void FDECL(enlightenment, (int,int));
-E void FDECL(youhiding, (BOOLEAN_P,int));
+E void FDECL(enlightenment, (int, int));
+E void FDECL(youhiding, (BOOLEAN_P, int));
 E void FDECL(show_conduct, (int));
-E int FDECL(xytod, (SCHAR_P,SCHAR_P));
-E void FDECL(dtoxy, (coord *,int));
+E int FDECL(xytod, (SCHAR_P, SCHAR_P));
+E void FDECL(dtoxy, (coord *, int));
 E int FDECL(movecmd, (CHAR_P));
 E int NDECL(dxdy_moveok);
 E int FDECL(getdir, (const char *));
 E void NDECL(confdir);
 E const char *FDECL(directionname, (int));
-E int FDECL(isok, (int,int));
-E int FDECL(get_adjacent_loc, (const char *, const char *, XCHAR_P, XCHAR_P, coord *));
-E const char *FDECL(click_to_cmd, (int,int,int));
+E int FDECL(isok, (int, int));
+E int FDECL(get_adjacent_loc,
+            (const char *, const char *, XCHAR_P, XCHAR_P, coord *));
+E const char *FDECL(click_to_cmd, (int, int, int));
 #ifdef HANGUPHANDLING
 E void FDECL(hangup, (int));
 E void NDECL(end_of_input);
@@ -213,23 +215,23 @@ E void NDECL(end_of_input);
 E char NDECL(readchar);
 E void NDECL(sanity_check);
 E char FDECL(yn_function, (const char *, const char *, CHAR_P));
-E boolean FDECL(paranoid_query, (BOOLEAN_P,const char *));
+E boolean FDECL(paranoid_query, (BOOLEAN_P, const char *));
 
 /* ### dbridge.c ### */
 
-E boolean FDECL(is_pool, (int,int));
-E boolean FDECL(is_lava, (int,int));
-E boolean FDECL(is_pool_or_lava, (int,int));
-E boolean FDECL(is_ice, (int,int));
-E boolean FDECL(is_moat, (int,int));
+E boolean FDECL(is_pool, (int, int));
+E boolean FDECL(is_lava, (int, int));
+E boolean FDECL(is_pool_or_lava, (int, int));
+E boolean FDECL(is_ice, (int, int));
+E boolean FDECL(is_moat, (int, int));
 E schar FDECL(db_under_typ, (int));
-E int FDECL(is_drawbridge_wall, (int,int));
-E boolean FDECL(is_db_wall, (int,int));
-E boolean FDECL(find_drawbridge, (int *,int*));
-E boolean FDECL(create_drawbridge, (int,int,int,BOOLEAN_P));
-E void FDECL(open_drawbridge, (int,int));
-E void FDECL(close_drawbridge, (int,int));
-E void FDECL(destroy_drawbridge, (int,int));
+E int FDECL(is_drawbridge_wall, (int, int));
+E boolean FDECL(is_db_wall, (int, int));
+E boolean FDECL(find_drawbridge, (int *, int *));
+E boolean FDECL(create_drawbridge, (int, int, int, BOOLEAN_P));
+E void FDECL(open_drawbridge, (int, int));
+E void FDECL(close_drawbridge, (int, int));
+E void FDECL(destroy_drawbridge, (int, int));
 
 /* ### decl.c ### */
 
@@ -237,12 +239,12 @@ E void NDECL(decl_init);
 
 /* ### detect.c ### */
 
-E struct obj *FDECL(o_in, (struct obj*,CHAR_P));
-E struct obj *FDECL(o_material, (struct obj*,unsigned));
+E struct obj *FDECL(o_in, (struct obj *, CHAR_P));
+E struct obj *FDECL(o_material, (struct obj *, unsigned));
 E int FDECL(gold_detect, (struct obj *));
 E int FDECL(food_detect, (struct obj *));
-E int FDECL(object_detect, (struct obj *,int));
-E int FDECL(monster_detect, (struct obj *,int));
+E int FDECL(object_detect, (struct obj *, int));
+E int FDECL(monster_detect, (struct obj *, int));
 E int FDECL(trap_detect, (struct obj *));
 E const char *FDECL(level_distance, (d_level *));
 E void FDECL(use_crystal_ball, (struct obj *));
@@ -250,46 +252,47 @@ E void NDECL(do_mapping);
 E void NDECL(do_vicinity_map);
 E void FDECL(cvt_sdoor_to_door, (struct rm *));
 #ifdef USE_TRAMPOLI
-E void FDECL(findone, (int,int,genericptr_t));
-E void FDECL(openone, (int,int,genericptr_t));
+E void FDECL(findone, (int, int, genericptr_t));
+E void FDECL(openone, (int, int, genericptr_t));
 #endif
 E int NDECL(findit);
 E int NDECL(openit);
-E boolean FDECL(detecting, (void (*)(int,int,genericptr)));
+E boolean FDECL(detecting, (void (*)(int, int, genericptr)));
 E void FDECL(find_trap, (struct trap *));
 E int FDECL(dosearch0, (int));
 E int NDECL(dosearch);
 E void NDECL(sokoban_detect);
-E void FDECL(reveal_terrain, (int,int));
+E void FDECL(reveal_terrain, (int, int));
 
 /* ### dig.c ### */
 
-E int FDECL(dig_typ, (struct obj *,XCHAR_P,XCHAR_P));
+E int FDECL(dig_typ, (struct obj *, XCHAR_P, XCHAR_P));
 E boolean NDECL(is_digging);
 #ifdef USE_TRAMPOLI
 E int NDECL(dig);
 #endif
 E int NDECL(holetime);
 E boolean FDECL(dig_check, (struct monst *, BOOLEAN_P, int, int));
-E void FDECL(digactualhole, (int,int,struct monst *,int));
-E boolean FDECL(dighole, (BOOLEAN_P,BOOLEAN_P,coord *));
+E void FDECL(digactualhole, (int, int, struct monst *, int));
+E boolean FDECL(dighole, (BOOLEAN_P, BOOLEAN_P, coord *));
 E int FDECL(use_pick_axe, (struct obj *));
 E int FDECL(use_pick_axe2, (struct obj *));
 E boolean FDECL(mdig_tunnel, (struct monst *));
 E void FDECL(draft_message, (BOOLEAN_P));
-E void FDECL(watch_dig, (struct monst *,XCHAR_P,XCHAR_P,BOOLEAN_P));
+E void FDECL(watch_dig, (struct monst *, XCHAR_P, XCHAR_P, BOOLEAN_P));
 E void NDECL(zap_dig);
 E struct obj *FDECL(bury_an_obj, (struct obj *, boolean *));
-E void FDECL(bury_objs, (int,int));
-E void FDECL(unearth_objs, (int,int));
+E void FDECL(bury_objs, (int, int));
+E void FDECL(unearth_objs, (int, int));
 E void FDECL(rot_organic, (ANY_P *, long));
 E void FDECL(rot_corpse, (ANY_P *, long));
 E struct obj *FDECL(buried_ball, (coord *));
 E void NDECL(buried_ball_to_punishment);
 E void NDECL(buried_ball_to_freedom);
-E schar FDECL(fillholetyp, (int,int,BOOLEAN_P));
-E void FDECL(liquid_flow, (XCHAR_P,XCHAR_P,SCHAR_P,struct trap *, const char *));
-E boolean FDECL(conjoined_pits, (struct trap *,struct trap *,BOOLEAN_P));
+E schar FDECL(fillholetyp, (int, int, BOOLEAN_P));
+E void FDECL(liquid_flow,
+             (XCHAR_P, XCHAR_P, SCHAR_P, struct trap *, const char *));
+E boolean FDECL(conjoined_pits, (struct trap *, struct trap *, BOOLEAN_P));
 #if 0
 E void FDECL(bury_monst, (struct monst *));
 E void NDECL(bury_you);
@@ -300,17 +303,17 @@ E void FDECL(bury_obj, (struct obj *));
 
 /* ### display.c ### */
 
-E void FDECL(magic_map_background, (XCHAR_P,XCHAR_P,int));
-E void FDECL(map_background, (XCHAR_P,XCHAR_P,int));
-E void FDECL(map_trap, (struct trap *,int));
-E void FDECL(map_object, (struct obj *,int));
-E void FDECL(map_invisible, (XCHAR_P,XCHAR_P));
-E void FDECL(unmap_object, (int,int));
-E void FDECL(map_location, (int,int,int));
-E void FDECL(feel_location, (XCHAR_P,XCHAR_P));
-E void FDECL(newsym, (int,int));
-E void FDECL(shieldeff, (XCHAR_P,XCHAR_P));
-E void FDECL(tmp_at, (int,int));
+E void FDECL(magic_map_background, (XCHAR_P, XCHAR_P, int));
+E void FDECL(map_background, (XCHAR_P, XCHAR_P, int));
+E void FDECL(map_trap, (struct trap *, int));
+E void FDECL(map_object, (struct obj *, int));
+E void FDECL(map_invisible, (XCHAR_P, XCHAR_P));
+E void FDECL(unmap_object, (int, int));
+E void FDECL(map_location, (int, int, int));
+E void FDECL(feel_location, (XCHAR_P, XCHAR_P));
+E void FDECL(newsym, (int, int));
+E void FDECL(shieldeff, (XCHAR_P, XCHAR_P));
+E void FDECL(tmp_at, (int, int));
 E void FDECL(swallowed, (int));
 E void FDECL(under_ground, (int));
 E void FDECL(under_water, (int));
@@ -321,16 +324,16 @@ E void NDECL(see_traps);
 E void NDECL(curs_on_u);
 E int NDECL(doredraw);
 E void NDECL(docrt);
-E void FDECL(show_glyph, (int,int,int));
+E void FDECL(show_glyph, (int, int, int));
 E void NDECL(clear_glyph_buffer);
-E void FDECL(row_refresh, (int,int,int));
+E void FDECL(row_refresh, (int, int, int));
 E void NDECL(cls);
 E void FDECL(flush_screen, (int));
-E int FDECL(back_to_glyph, (XCHAR_P,XCHAR_P));
-E int FDECL(zapdir_to_glyph, (int,int,int));
-E int FDECL(glyph_at, (XCHAR_P,XCHAR_P));
+E int FDECL(back_to_glyph, (XCHAR_P, XCHAR_P));
+E int FDECL(zapdir_to_glyph, (int, int, int));
+E int FDECL(glyph_at, (XCHAR_P, XCHAR_P));
 E void NDECL(set_wall_state);
-E void FDECL(unset_seenv, (struct rm *,int,int,int,int));
+E void FDECL(unset_seenv, (struct rm *, int, int, int, int));
 
 /* ### do.c ### */
 
@@ -339,13 +342,13 @@ E int FDECL(drop, (struct obj *));
 E int NDECL(wipeoff);
 #endif
 E int NDECL(dodrop);
-E boolean FDECL(boulder_hits_pool, (struct obj *,int,int,BOOLEAN_P));
-E boolean FDECL(flooreffects, (struct obj *,int,int,const char *));
+E boolean FDECL(boulder_hits_pool, (struct obj *, int, int, BOOLEAN_P));
+E boolean FDECL(flooreffects, (struct obj *, int, int, const char *));
 E void FDECL(doaltarobj, (struct obj *));
-E boolean FDECL(canletgo, (struct obj *,const char *));
+E boolean FDECL(canletgo, (struct obj *, const char *));
 E void FDECL(dropx, (struct obj *));
 E void FDECL(dropy, (struct obj *));
-E void FDECL(dropz, (struct obj *,BOOLEAN_P));
+E void FDECL(dropz, (struct obj *, BOOLEAN_P));
 E void FDECL(obj_no_longer_held, (struct obj *));
 E int NDECL(doddrop);
 E int NDECL(dodown);
@@ -353,33 +356,33 @@ E int NDECL(doup);
 #ifdef INSURANCE
 E void NDECL(save_currentstate);
 #endif
-E void FDECL(goto_level, (d_level *,BOOLEAN_P,BOOLEAN_P,BOOLEAN_P));
-E void FDECL(schedule_goto, (d_level *,BOOLEAN_P,BOOLEAN_P,int,
-                            const char *,const char *));
+E void FDECL(goto_level, (d_level *, BOOLEAN_P, BOOLEAN_P, BOOLEAN_P));
+E void FDECL(schedule_goto, (d_level *, BOOLEAN_P, BOOLEAN_P, int,
+                             const char *, const char *));
 E void NDECL(deferred_goto);
 E boolean FDECL(revive_corpse, (struct obj *));
 E void FDECL(revive_mon, (ANY_P *, long));
 E int NDECL(donull);
 E int NDECL(dowipe);
-E void FDECL(set_wounded_legs, (long,int));
+E void FDECL(set_wounded_legs, (long, int));
 E void NDECL(heal_legs);
 
 /* ### do_name.c ### */
 
-E int FDECL(getpos, (coord *,BOOLEAN_P,const char *));
-E void FDECL(getpos_sethilite, (void (*f)(int) ));
-E void FDECL(new_mname, (struct monst *,int));
+E int FDECL(getpos, (coord *, BOOLEAN_P, const char *));
+E void FDECL(getpos_sethilite, (void (*f)(int)));
+E void FDECL(new_mname, (struct monst *, int));
 E void FDECL(free_mname, (struct monst *));
-E void FDECL(new_oname, (struct obj *,int));
+E void FDECL(new_oname, (struct obj *, int));
 E void FDECL(free_oname, (struct obj *));
 E const char *FDECL(safe_oname, (struct obj *));
-E struct monst *FDECL(christen_monst, (struct monst *,const char *));
-E struct obj *FDECL(oname, (struct obj *,const char *));
+E struct monst *FDECL(christen_monst, (struct monst *, const char *));
+E struct obj *FDECL(oname, (struct obj *, const char *));
 E boolean FDECL(objtyp_is_callable, (int));
 E int NDECL(docallcmd);
 E void FDECL(docall, (struct obj *));
 E const char *NDECL(rndghostname);
-E char *FDECL(x_monnam, (struct monst *,int,const char *,int,BOOLEAN_P));
+E char *FDECL(x_monnam, (struct monst *, int, const char *, int, BOOLEAN_P));
 E char *FDECL(l_monnam, (struct monst *));
 E char *FDECL(mon_nam, (struct monst *));
 E char *FDECL(noit_mon_nam, (struct monst *));
@@ -387,17 +390,17 @@ E char *FDECL(Monnam, (struct monst *));
 E char *FDECL(noit_Monnam, (struct monst *));
 E char *FDECL(m_monnam, (struct monst *));
 E char *FDECL(y_monnam, (struct monst *));
-E char *FDECL(Adjmonnam, (struct monst *,const char *));
+E char *FDECL(Adjmonnam, (struct monst *, const char *));
 E char *FDECL(Amonnam, (struct monst *));
 E char *FDECL(a_monnam, (struct monst *));
-E char *FDECL(distant_monnam, (struct monst *,int,char *));
+E char *FDECL(distant_monnam, (struct monst *, int, char *));
 E char *FDECL(rndmonnam, (char *));
 E const char *FDECL(hcolor, (const char *));
 E const char *NDECL(rndcolor);
 E const char *NDECL(roguename);
 E struct obj *FDECL(realloc_obj,
-               (struct obj *, int, genericptr_t, int, const char *));
-E char *FDECL(coyotename, (struct monst *,char *));
+                    (struct obj *, int, genericptr_t, int, const char *));
+E char *FDECL(coyotename, (struct monst *, char *));
 E const char *FDECL(noveltitle, (int *));
 E const char *FDECL(lookup_novel, (const char *, int *));
 
@@ -440,53 +443,55 @@ E int NDECL(dowear);
 E int NDECL(doputon);
 E void NDECL(find_ac);
 E void NDECL(glibr);
-E struct obj *FDECL(some_armor,(struct monst *));
-E struct obj *FDECL(stuck_ring, (struct obj *,int));
+E struct obj *FDECL(some_armor, (struct monst *));
+E struct obj *FDECL(stuck_ring, (struct obj *, int));
 E struct obj *NDECL(unchanger);
 E void NDECL(reset_remarm);
 E int NDECL(doddoremarm);
 E int FDECL(destroy_arm, (struct obj *));
-E void FDECL(adj_abon, (struct obj *,SCHAR_P));
-E boolean FDECL(inaccessible_equipment, (struct obj *,const char *,BOOLEAN_P));
+E void FDECL(adj_abon, (struct obj *, SCHAR_P));
+E boolean
+FDECL(inaccessible_equipment, (struct obj *, const char *, BOOLEAN_P));
 
 /* ### dog.c ### */
 
 E void FDECL(newedog, (struct monst *));
 E void FDECL(free_edog, (struct monst *));
 E void FDECL(initedog, (struct monst *));
-E struct monst *FDECL(make_familiar, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P));
+E struct monst *FDECL(make_familiar,
+                      (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P));
 E struct monst *NDECL(makedog);
 E void NDECL(update_mlstmv);
 E void NDECL(losedogs);
-E void FDECL(mon_arrive, (struct monst *,BOOLEAN_P));
-E void FDECL(mon_catchup_elapsed_time, (struct monst *,long));
+E void FDECL(mon_arrive, (struct monst *, BOOLEAN_P));
+E void FDECL(mon_catchup_elapsed_time, (struct monst *, long));
 E void FDECL(keepdogs, (BOOLEAN_P));
-E void FDECL(migrate_to_level, (struct monst *,XCHAR_P,XCHAR_P,coord *));
-E int FDECL(dogfood, (struct monst *,struct obj *));
-E boolean FDECL(tamedog, (struct monst *,struct obj *));
+E void FDECL(migrate_to_level, (struct monst *, XCHAR_P, XCHAR_P, coord *));
+E int FDECL(dogfood, (struct monst *, struct obj *));
+E boolean FDECL(tamedog, (struct monst *, struct obj *));
 E void FDECL(abuse_dog, (struct monst *));
 E void FDECL(wary_dog, (struct monst *, BOOLEAN_P));
 
 /* ### dogmove.c ### */
 
 E struct obj *FDECL(droppables, (struct monst *));
-E int FDECL(dog_nutrition, (struct monst *,struct obj *));
-E int FDECL(dog_eat, (struct monst *,struct obj *,int,int,BOOLEAN_P));
-E int FDECL(dog_move, (struct monst *,int));
+E int FDECL(dog_nutrition, (struct monst *, struct obj *));
+E int FDECL(dog_eat, (struct monst *, struct obj *, int, int, BOOLEAN_P));
+E int FDECL(dog_move, (struct monst *, int));
 #ifdef USE_TRAMPOLI
-E void FDECL(wantdoor, (int,int,genericptr_t));
+E void FDECL(wantdoor, (int, int, genericptr_t));
 #endif
-E void FDECL(finish_meating,(struct monst *));
+E void FDECL(finish_meating, (struct monst *));
 
 /* ### dokick.c ### */
 
-E boolean FDECL(ghitm, (struct monst *,struct obj *));
-E void FDECL(container_impact_dmg, (struct obj *,XCHAR_P,XCHAR_P));
+E boolean FDECL(ghitm, (struct monst *, struct obj *));
+E void FDECL(container_impact_dmg, (struct obj *, XCHAR_P, XCHAR_P));
 E int NDECL(dokick);
-E boolean FDECL(ship_object, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P));
+E boolean FDECL(ship_object, (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P));
 E void FDECL(obj_delivery, (BOOLEAN_P));
-E schar FDECL(down_gate, (XCHAR_P,XCHAR_P));
-E void FDECL(impact_drop, (struct obj *,XCHAR_P,XCHAR_P,XCHAR_P));
+E schar FDECL(down_gate, (XCHAR_P, XCHAR_P));
+E void FDECL(impact_drop, (struct obj *, XCHAR_P, XCHAR_P, XCHAR_P));
 
 /* ### dothrow.c ### */
 
@@ -494,17 +499,20 @@ E int NDECL(dothrow);
 E int NDECL(dofire);
 E void FDECL(endmultishot, (BOOLEAN_P));
 E void FDECL(hitfloor, (struct obj *));
-E void FDECL(hurtle, (int,int,int,BOOLEAN_P));
-E void FDECL(mhurtle, (struct monst *,int,int,int));
-E void FDECL(throwit, (struct obj *,long,BOOLEAN_P));
-E int FDECL(omon_adj, (struct monst *,struct obj *,BOOLEAN_P));
-E int FDECL(thitmonst, (struct monst *,struct obj *));
-E int FDECL(hero_breaks, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P));
-E int FDECL(breaks, (struct obj *,XCHAR_P,XCHAR_P));
-E void FDECL(release_camera_demon, (struct obj *, XCHAR_P,XCHAR_P));
-E void FDECL(breakobj, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(hurtle, (int, int, int, BOOLEAN_P));
+E void FDECL(mhurtle, (struct monst *, int, int, int));
+E void FDECL(throwit, (struct obj *, long, BOOLEAN_P));
+E int FDECL(omon_adj, (struct monst *, struct obj *, BOOLEAN_P));
+E int FDECL(thitmonst, (struct monst *, struct obj *));
+E int FDECL(hero_breaks, (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P));
+E int FDECL(breaks, (struct obj *, XCHAR_P, XCHAR_P));
+E void FDECL(release_camera_demon, (struct obj *, XCHAR_P, XCHAR_P));
+E void FDECL(breakobj,
+             (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P, BOOLEAN_P));
 E boolean FDECL(breaktest, (struct obj *));
-E boolean FDECL(walk_path, (coord *, coord *, boolean (*)(genericptr_t,int,int), genericptr_t));
+E boolean
+FDECL(walk_path,
+      (coord *, coord *, boolean (*)(genericptr_t, int, int), genericptr_t));
 E boolean FDECL(hurtle_step, (genericptr_t, int, int));
 
 /* ### drawing.c ### */
@@ -519,16 +527,16 @@ E void NDECL(init_symbols);
 E void NDECL(update_bouldersym);
 E void NDECL(init_showsyms);
 E void NDECL(init_l_symbols);
-E void FDECL(clear_symsetentry, (int,BOOLEAN_P));
-E void FDECL(update_l_symset, (struct symparse *,int));
-E void FDECL(update_r_symset, (struct symparse *,int));
+E void FDECL(clear_symsetentry, (int, BOOLEAN_P));
+E void FDECL(update_l_symset, (struct symparse *, int));
+E void FDECL(update_r_symset, (struct symparse *, int));
 E boolean FDECL(cursed_object_at, (int, int));
 
 /* ### dungeon.c ### */
 
-E void FDECL(save_dungeon, (int,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(save_dungeon, (int, BOOLEAN_P, BOOLEAN_P));
 E void FDECL(restore_dungeon, (int));
-E void FDECL(insert_branch, (branch *,BOOLEAN_P));
+E void FDECL(insert_branch, (branch *, BOOLEAN_P));
 E void NDECL(init_dungeons);
 E s_level *FDECL(find_level, (const char *));
 E s_level *FDECL(Is_special, (d_level *));
@@ -541,20 +549,20 @@ E xchar FDECL(dunlevs_in_dungeon, (d_level *));
 E xchar FDECL(ledger_to_dnum, (XCHAR_P));
 E xchar FDECL(ledger_to_dlev, (XCHAR_P));
 E xchar FDECL(deepest_lev_reached, (BOOLEAN_P));
-E boolean FDECL(on_level, (d_level *,d_level *));
+E boolean FDECL(on_level, (d_level *, d_level *));
 E void FDECL(next_level, (BOOLEAN_P));
 E void FDECL(prev_level, (BOOLEAN_P));
-E void FDECL(u_on_newpos, (int,int));
+E void FDECL(u_on_newpos, (int, int));
 E void FDECL(u_on_rndspot, (int));
 E void FDECL(u_on_sstairs, (int));
 E void NDECL(u_on_upstairs);
 E void NDECL(u_on_dnstairs);
-E boolean FDECL(On_stairs, (XCHAR_P,XCHAR_P));
-E void FDECL(get_level, (d_level *,int));
+E boolean FDECL(On_stairs, (XCHAR_P, XCHAR_P));
+E void FDECL(get_level, (d_level *, int));
 E boolean FDECL(Is_botlevel, (d_level *));
 E boolean FDECL(Can_fall_thru, (d_level *));
 E boolean FDECL(Can_dig_down, (d_level *));
-E boolean FDECL(Can_rise_up, (int,int,d_level *));
+E boolean FDECL(Can_rise_up, (int, int, d_level *));
 E boolean FDECL(has_ceiling, (d_level *));
 E boolean FDECL(In_quest, (d_level *));
 E boolean FDECL(In_mines, (d_level *));
@@ -563,20 +571,20 @@ E boolean FDECL(at_dgn_entrance, (const char *));
 E boolean FDECL(In_hell, (d_level *));
 E boolean FDECL(In_V_tower, (d_level *));
 E boolean FDECL(On_W_tower_level, (d_level *));
-E boolean FDECL(In_W_tower, (int,int,d_level *));
+E boolean FDECL(In_W_tower, (int, int, d_level *));
 E void FDECL(find_hell, (d_level *));
-E void FDECL(goto_hell, (BOOLEAN_P,BOOLEAN_P));
-E void FDECL(assign_level, (d_level *,d_level *));
-E void FDECL(assign_rnd_level, (d_level *,d_level *,int));
+E void FDECL(goto_hell, (BOOLEAN_P, BOOLEAN_P));
+E void FDECL(assign_level, (d_level *, d_level *));
+E void FDECL(assign_rnd_level, (d_level *, d_level *, int));
 E int FDECL(induced_align, (int));
 E boolean FDECL(Invocation_lev, (d_level *));
 E xchar NDECL(level_difficulty);
 E schar FDECL(lev_by_name, (const char *));
-E schar FDECL(print_dungeon, (BOOLEAN_P,schar *,xchar *));
+E schar FDECL(print_dungeon, (BOOLEAN_P, schar *, xchar *));
 E char *FDECL(get_annotation, (d_level *));
 E int NDECL(donamelevel);
 E int NDECL(dooverview);
-E void FDECL(show_overview, (int,int));
+E void FDECL(show_overview, (int, int));
 E void FDECL(forget_mapseen, (int));
 E void FDECL(init_mapseen, (d_level *));
 E void NDECL(recalc_mapseen);
@@ -606,19 +614,19 @@ E boolean NDECL(is_fainted);
 E void NDECL(reset_faint);
 E void NDECL(violated_vegetarian);
 E void FDECL(newuhs, (BOOLEAN_P));
-E struct obj *FDECL(floorfood, (const char *,int));
+E struct obj *FDECL(floorfood, (const char *, int));
 E void NDECL(vomit);
-E int FDECL(eaten_stat, (int,struct obj *));
+E int FDECL(eaten_stat, (int, struct obj *));
 E void FDECL(food_disappears, (struct obj *));
-E void FDECL(food_substitution, (struct obj *,struct obj *));
+E void FDECL(food_substitution, (struct obj *, struct obj *));
 E void FDECL(eating_conducts, (struct permonst *));
-E int FDECL(eat_brains, (struct monst *,struct monst *,BOOLEAN_P,int *));
+E int FDECL(eat_brains, (struct monst *, struct monst *, BOOLEAN_P, int *));
 E void NDECL(fix_petrification);
-E void FDECL(consume_oeaten, (struct obj *,int));
+E void FDECL(consume_oeaten, (struct obj *, int));
 E boolean FDECL(maybe_finished_meal, (BOOLEAN_P));
-E void FDECL(set_tin_variety, (struct obj *,int));
-E int FDECL(tin_variety_txt, (char *,int *));
-E void FDECL(tin_details, (struct obj *,int,char *));
+E void FDECL(set_tin_variety, (struct obj *, int));
+E int FDECL(tin_variety_txt, (char *, int *));
+E void FDECL(tin_details, (struct obj *, int, char *));
 E boolean FDECL(Popeye, (int));
 
 /* ### end.c ### */
@@ -628,19 +636,20 @@ E int NDECL(done2);
 #ifdef USE_TRAMPOLI
 E void FDECL(done_intr, (int));
 #endif
-E void FDECL(done_in_by, (struct monst *,int));
+E void FDECL(done_in_by, (struct monst *, int));
 #endif /* !MAKEDEFS_C && !LEV_LEX_C */
-E void VDECL(panic, (const char *,...)) PRINTF_F(1,2);
+E void VDECL(panic, (const char *, ...)) PRINTF_F(1, 2);
 #if !defined(MAKEDEFS_C) && !defined(LEV_LEX_C)
 E void FDECL(done, (int));
-E void FDECL(container_contents, (struct obj *,BOOLEAN_P,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(container_contents,
+             (struct obj *, BOOLEAN_P, BOOLEAN_P, BOOLEAN_P));
 E void FDECL(terminate, (int));
 E int NDECL(dovanquished);
 E int NDECL(num_genocides);
-E void FDECL(delayed_killer, (int, int, const char*));
+E void FDECL(delayed_killer, (int, int, const char *));
 E struct kinfo *FDECL(find_delayed_killer, (int));
-E void FDECL(dealloc_killer, (struct kinfo*));
-E void FDECL(save_killers, (int,int));
+E void FDECL(dealloc_killer, (struct kinfo *));
+E void FDECL(save_killers, (int, int));
 E void FDECL(restore_killers, (int));
 E char *FDECL(build_english_list, (char *));
 #if defined(PANICTRACE) && !defined(NO_SIGNAL)
@@ -650,32 +659,32 @@ E void FDECL(panictrace_setsignals, (BOOLEAN_P));
 /* ### engrave.c ### */
 
 E char *FDECL(random_engraving, (char *));
-E void FDECL(wipeout_text, (char *,int,unsigned));
+E void FDECL(wipeout_text, (char *, int, unsigned));
 E boolean FDECL(can_reach_floor, (BOOLEAN_P));
-E void FDECL(cant_reach_floor, (int,int,BOOLEAN_P,BOOLEAN_P));
-E const char *FDECL(surface, (int,int));
-E const char *FDECL(ceiling, (int,int));
-E struct engr *FDECL(engr_at, (XCHAR_P,XCHAR_P));
-E int FDECL(sengr_at, (const char *,XCHAR_P,XCHAR_P,BOOLEAN_P));
+E void FDECL(cant_reach_floor, (int, int, BOOLEAN_P, BOOLEAN_P));
+E const char *FDECL(surface, (int, int));
+E const char *FDECL(ceiling, (int, int));
+E struct engr *FDECL(engr_at, (XCHAR_P, XCHAR_P));
+E int FDECL(sengr_at, (const char *, XCHAR_P, XCHAR_P, BOOLEAN_P));
 E void FDECL(u_wipe_engr, (int));
-E void FDECL(wipe_engr_at, (XCHAR_P,XCHAR_P,XCHAR_P,BOOLEAN_P));
-E void FDECL(read_engr_at, (int,int));
-E void FDECL(make_engr_at, (int,int,const char *,long,XCHAR_P));
-E void FDECL(del_engr_at, (int,int));
+E void FDECL(wipe_engr_at, (XCHAR_P, XCHAR_P, XCHAR_P, BOOLEAN_P));
+E void FDECL(read_engr_at, (int, int));
+E void FDECL(make_engr_at, (int, int, const char *, long, XCHAR_P));
+E void FDECL(del_engr_at, (int, int));
 E int NDECL(freehand);
 E int NDECL(doengrave);
 E void NDECL(sanitize_engravings);
-E void FDECL(save_engravings, (int,int));
+E void FDECL(save_engravings, (int, int));
 E void FDECL(rest_engravings, (int));
 E void FDECL(del_engr, (struct engr *));
 E void FDECL(rloc_engr, (struct engr *));
-E void FDECL(make_grave, (int,int,const char *));
+E void FDECL(make_grave, (int, int, const char *));
 
 /* ### exper.c ### */
 
 E int NDECL(newpw);
-E int FDECL(experience, (struct monst *,int));
-E void FDECL(more_experienced, (int,int));
+E int FDECL(experience, (struct monst *, int));
+E void FDECL(more_experienced, (int, int));
 E void FDECL(losexp, (const char *));
 E void NDECL(newexplevel);
 E void FDECL(pluslvl, (BOOLEAN_P));
@@ -683,15 +692,15 @@ E long FDECL(rndexp, (BOOLEAN_P));
 
 /* ### explode.c ### */
 
-E void FDECL(explode, (int,int,int,int,CHAR_P,int));
+E void FDECL(explode, (int, int, int, int, CHAR_P, int));
 E long FDECL(scatter, (int, int, int, unsigned int, struct obj *));
 E void FDECL(splatter_burning_oil, (int, int));
-E void FDECL(explode_oil, (struct obj *,int,int));
+E void FDECL(explode_oil, (struct obj *, int, int));
 
 /* ### extralev.c ### */
 
 E void NDECL(makeroguerooms);
-E void FDECL(corr, (int,int));
+E void FDECL(corr, (int, int));
 E void NDECL(makerogueghost);
 
 /* ### files.c ### */
@@ -699,22 +708,22 @@ E void NDECL(makerogueghost);
 E char *FDECL(fname_encode, (const char *, CHAR_P, char *, char *, int));
 E char *FDECL(fname_decode, (CHAR_P, char *, char *, int));
 E const char *FDECL(fqname, (const char *, int, int));
-E FILE *FDECL(fopen_datafile, (const char *,const char *,int));
+E FILE *FDECL(fopen_datafile, (const char *, const char *, int));
 #ifdef MFLOPPY
 E void NDECL(set_lock_and_bones);
 #endif
-E void FDECL(set_levelfile_name, (char *,int));
-E int FDECL(create_levelfile, (int,char *));
-E int FDECL(open_levelfile, (int,char *));
+E void FDECL(set_levelfile_name, (char *, int));
+E int FDECL(create_levelfile, (int, char *));
+E int FDECL(open_levelfile, (int, char *));
 E void FDECL(delete_levelfile, (int));
 E void NDECL(clearlocks);
-E int FDECL(create_bonesfile, (d_level*,char **, char *));
+E int FDECL(create_bonesfile, (d_level *, char **, char *));
 #ifdef MFLOPPY
 E void NDECL(cancel_bonesfile);
 #endif
 E void FDECL(commit_bonesfile, (d_level *));
-E int FDECL(open_bonesfile, (d_level*,char **));
-E int FDECL(delete_bonesfile, (d_level*));
+E int FDECL(open_bonesfile, (d_level *, char **));
+E int FDECL(delete_bonesfile, (d_level *));
 E void NDECL(compress_bonesfile);
 E void FDECL(set_savefile_name, (BOOLEAN_P));
 #ifdef INSURANCE
@@ -729,7 +738,7 @@ E int NDECL(delete_savefile);
 E int NDECL(restore_saved_game);
 E void FDECL(nh_compress, (const char *));
 E void FDECL(nh_uncompress, (const char *));
-E boolean FDECL(lock_file, (const char *,int,int));
+E boolean FDECL(lock_file, (const char *, int, int));
 E void FDECL(unlock_file, (const char *));
 #ifdef USER_SOUNDS
 E boolean FDECL(can_read_file, (const char *));
@@ -738,14 +747,14 @@ E boolean FDECL(read_config_file, (const char *, int));
 E void FDECL(check_recordfile, (const char *));
 E void NDECL(read_wizkit);
 E int FDECL(read_sym_file, (int));
-E int FDECL(parse_sym_line, (char *,int));
+E int FDECL(parse_sym_line, (char *, int));
 E void FDECL(paniclog, (const char *, const char *));
 E int FDECL(validate_prefix_locations, (char *));
 #ifdef SELECTSAVED
 E char *FDECL(plname_from_file, (const char *));
 #endif
-E char** NDECL(get_saved_games);
-E void FDECL(free_saved_games, (char**));
+E char **NDECL(get_saved_games);
+E void FDECL(free_saved_games, (char **));
 #ifdef SELF_RECOVER
 E boolean NDECL(recover_savefile);
 #endif
@@ -759,19 +768,19 @@ E void NDECL(really_close);
 #ifdef DEBUG
 E boolean FDECL(debugcore, (const char *, BOOLEAN_P));
 #endif
-E boolean FDECL(read_tribute, (const char *,const char *,int));
+E boolean FDECL(read_tribute, (const char *, const char *, int));
 
 /* ### fountain.c ### */
 
 E void FDECL(floating_above, (const char *));
 E void FDECL(dogushforth, (int));
-# ifdef USE_TRAMPOLI
-E void FDECL(gush, (int,int,genericptr_t));
-# endif
-E void FDECL(dryup, (XCHAR_P,XCHAR_P, BOOLEAN_P));
+#ifdef USE_TRAMPOLI
+E void FDECL(gush, (int, int, genericptr_t));
+#endif
+E void FDECL(dryup, (XCHAR_P, XCHAR_P, BOOLEAN_P));
 E void NDECL(drinkfountain);
 E void FDECL(dipfountain, (struct obj *));
-E void FDECL(breaksink, (int,int));
+E void FDECL(breaksink, (int, int));
 E void NDECL(drinksink);
 
 /* ### hack.c ### */
@@ -780,13 +789,13 @@ E anything *FDECL(uint_to_any, (unsigned));
 E anything *FDECL(long_to_any, (long));
 E anything *FDECL(monst_to_any, (struct monst *));
 E anything *FDECL(obj_to_any, (struct obj *));
-E boolean FDECL(revive_nasty, (int,int,const char*));
-E void FDECL(movobj, (struct obj *,XCHAR_P,XCHAR_P));
-E boolean FDECL(may_dig, (XCHAR_P,XCHAR_P));
-E boolean FDECL(may_passwall, (XCHAR_P,XCHAR_P));
-E boolean FDECL(bad_rock, (struct permonst *,XCHAR_P,XCHAR_P));
+E boolean FDECL(revive_nasty, (int, int, const char *));
+E void FDECL(movobj, (struct obj *, XCHAR_P, XCHAR_P));
+E boolean FDECL(may_dig, (XCHAR_P, XCHAR_P));
+E boolean FDECL(may_passwall, (XCHAR_P, XCHAR_P));
+E boolean FDECL(bad_rock, (struct permonst *, XCHAR_P, XCHAR_P));
 E int FDECL(cant_squeeze_thru, (struct monst *));
-E boolean FDECL(invocation_pos, (XCHAR_P,XCHAR_P));
+E boolean FDECL(invocation_pos, (XCHAR_P, XCHAR_P));
 E boolean FDECL(test_move, (int, int, int, int, int));
 E boolean NDECL(u_rooted);
 E void NDECL(domove);
@@ -794,16 +803,16 @@ E boolean NDECL(overexertion);
 E void NDECL(invocation_message);
 E boolean FDECL(pooleffects, (BOOLEAN_P));
 E void FDECL(spoteffects, (BOOLEAN_P));
-E char *FDECL(in_rooms, (XCHAR_P,XCHAR_P,int));
-E boolean FDECL(in_town, (int,int));
+E char *FDECL(in_rooms, (XCHAR_P, XCHAR_P, int));
+E boolean FDECL(in_town, (int, int));
 E void FDECL(check_special_room, (BOOLEAN_P));
 E int NDECL(dopickup);
 E void NDECL(lookaround);
-E boolean FDECL(crawl_destination, (int,int));
+E boolean FDECL(crawl_destination, (int, int));
 E int NDECL(monster_nearby);
 E void FDECL(nomul, (int));
 E void FDECL(unmul, (const char *));
-E void FDECL(losehp, (int,const char *,BOOLEAN_P));
+E void FDECL(losehp, (int, const char *, BOOLEAN_P));
 E int NDECL(weight_cap);
 E int NDECL(inv_weight);
 E int NDECL(near_capacity);
@@ -824,35 +833,36 @@ E char *FDECL(ucase, (char *));
 E char *FDECL(upstart, (char *));
 E char *FDECL(mungspaces, (char *));
 E char *FDECL(eos, (char *));
-E char *FDECL(strkitten, (char *,CHAR_P));
-E void FDECL(copynchars, (char *,const char *,int));
-E char FDECL(chrcasecpy, (int,int));
-E char *FDECL(strcasecpy, (char *,const char *));
+E char *FDECL(strkitten, (char *, CHAR_P));
+E void FDECL(copynchars, (char *, const char *, int));
+E char FDECL(chrcasecpy, (int, int));
+E char *FDECL(strcasecpy, (char *, const char *));
 E char *FDECL(s_suffix, (const char *));
 E char *FDECL(ing_suffix, (const char *));
-E char *FDECL(xcrypt, (const char *,char *));
+E char *FDECL(xcrypt, (const char *, char *));
 E boolean FDECL(onlyspace, (const char *));
 E char *FDECL(tabexpand, (char *));
 E char *FDECL(visctrl, (CHAR_P));
-E char *FDECL(strsubst, (char *,const char *,const char *));
+E char *FDECL(strsubst, (char *, const char *, const char *));
 E const char *FDECL(ordin, (int));
 E char *FDECL(sitoa, (int));
 E int FDECL(sgn, (int));
-E int FDECL(rounddiv, (long,int));
-E int FDECL(dist2, (int,int,int,int));
+E int FDECL(rounddiv, (long, int));
+E int FDECL(dist2, (int, int, int, int));
 E int FDECL(isqrt, (int));
-E int FDECL(distmin, (int,int,int,int));
-E boolean FDECL(online2, (int,int,int,int));
-E boolean FDECL(pmatch, (const char *,const char *));
-E boolean FDECL(pmatchi, (const char *,const char *));
-E boolean FDECL(pmatchz, (const char *,const char *));
+E int FDECL(distmin, (int, int, int, int));
+E boolean FDECL(online2, (int, int, int, int));
+E boolean FDECL(pmatch, (const char *, const char *));
+E boolean FDECL(pmatchi, (const char *, const char *));
+E boolean FDECL(pmatchz, (const char *, const char *));
 #ifndef STRNCMPI
-E int FDECL(strncmpi, (const char *,const char *,int));
+E int FDECL(strncmpi, (const char *, const char *, int));
 #endif
 #ifndef STRSTRI
-E char *FDECL(strstri, (const char *,const char *));
+E char *FDECL(strstri, (const char *, const char *));
 #endif
-E boolean FDECL(fuzzymatch, (const char *,const char *,const char *,BOOLEAN_P));
+E boolean
+FDECL(fuzzymatch, (const char *, const char *, const char *, BOOLEAN_P));
 E void NDECL(setrandom);
 E time_t NDECL(getnow);
 E int NDECL(getyear);
@@ -861,7 +871,7 @@ E char *FDECL(yymmdd, (time_t));
 #endif
 E long FDECL(yyyymmdd, (time_t));
 E long FDECL(hhmmss, (time_t));
-E char *FDECL(yyyymmddhhmmss,(time_t));
+E char *FDECL(yyyymmddhhmmss, (time_t));
 E time_t FDECL(time_from_yyyymmddhhmmss, (char *));
 E int NDECL(phase_of_the_moon);
 E boolean NDECL(friday_13th);
@@ -873,8 +883,8 @@ E int NDECL(midnight);
 E struct obj **FDECL(objarr_init, (int));
 E void FDECL(objarr_set, (struct obj *, int, struct obj **, BOOLEAN_P));
 E void FDECL(assigninvlet, (struct obj *));
-E struct obj *FDECL(merge_choice, (struct obj *,struct obj *));
-E int FDECL(merged, (struct obj **,struct obj **));
+E struct obj *FDECL(merge_choice, (struct obj *, struct obj *));
+E int FDECL(merged, (struct obj **, struct obj **));
 #ifdef USE_TRAMPOLI
 E int FDECL(ckunpaid, (struct obj *));
 #endif
@@ -882,44 +892,46 @@ E void FDECL(addinv_core1, (struct obj *));
 E void FDECL(addinv_core2, (struct obj *));
 E struct obj *FDECL(addinv, (struct obj *));
 E struct obj *FDECL(hold_another_object,
-                       (struct obj *,const char *,const char *,const char *));
+                    (struct obj *, const char *, const char *, const char *));
 E void FDECL(useupall, (struct obj *));
 E void FDECL(useup, (struct obj *));
-E void FDECL(consume_obj_charge, (struct obj *,BOOLEAN_P));
+E void FDECL(consume_obj_charge, (struct obj *, BOOLEAN_P));
 E void FDECL(freeinv_core, (struct obj *));
 E void FDECL(freeinv, (struct obj *));
-E void FDECL(delallobj, (int,int));
+E void FDECL(delallobj, (int, int));
 E void FDECL(delobj, (struct obj *));
-E struct obj *FDECL(sobj_at, (int,int,int));
-E struct obj *FDECL(nxtobj, (struct obj *,int,BOOLEAN_P));
+E struct obj *FDECL(sobj_at, (int, int, int));
+E struct obj *FDECL(nxtobj, (struct obj *, int, BOOLEAN_P));
 E struct obj *FDECL(carrying, (int));
 E boolean NDECL(have_lizard);
-E struct obj *FDECL(o_on, (unsigned int,struct obj *));
-E boolean FDECL(obj_here, (struct obj *,int,int));
+E struct obj *FDECL(o_on, (unsigned int, struct obj *));
+E boolean FDECL(obj_here, (struct obj *, int, int));
 E boolean NDECL(wearing_armor);
 E boolean FDECL(is_worn, (struct obj *));
-E struct obj *FDECL(g_at, (int,int));
-E struct obj *FDECL(getobj, (const char *,const char *));
-E int FDECL(ggetobj, (const char *,int (*)(OBJ_P),int,BOOLEAN_P,unsigned *));
-E int FDECL(askchain, (struct obj **,const char *,int,int (*)(OBJ_P),
-                       int (*)(OBJ_P),int,const char *));
+E struct obj *FDECL(g_at, (int, int));
+E struct obj *FDECL(getobj, (const char *, const char *));
+E int FDECL(ggetobj,
+            (const char *, int (*)(OBJ_P), int, BOOLEAN_P, unsigned *));
+E int FDECL(askchain, (struct obj **, const char *, int, int (*)(OBJ_P),
+                       int (*)(OBJ_P), int, const char *));
 E void FDECL(fully_identify_obj, (struct obj *));
 E int FDECL(identify, (struct obj *));
-E void FDECL(identify_pack, (int,BOOLEAN_P));
+E void FDECL(identify_pack, (int, BOOLEAN_P));
 E void NDECL(learn_unseen_invent);
-E void FDECL(prinv, (const char *,struct obj *,long));
-E char *FDECL(xprname, (struct obj *,const char *,CHAR_P,BOOLEAN_P,long,long));
+E void FDECL(prinv, (const char *, struct obj *, long));
+E char *FDECL(xprname,
+              (struct obj *, const char *, CHAR_P, BOOLEAN_P, long, long));
 E int NDECL(ddoinv);
-E char FDECL(display_inventory, (const char *,BOOLEAN_P));
-E int FDECL(display_binventory, (int,int,BOOLEAN_P));
-E struct obj *FDECL(display_cinventory,(struct obj *));
-E struct obj *FDECL(display_minventory,(struct monst *,int,char *));
+E char FDECL(display_inventory, (const char *, BOOLEAN_P));
+E int FDECL(display_binventory, (int, int, BOOLEAN_P));
+E struct obj *FDECL(display_cinventory, (struct obj *));
+E struct obj *FDECL(display_minventory, (struct monst *, int, char *));
 E int NDECL(dotypeinv);
-E const char *FDECL(dfeature_at, (int,int,char *));
-E int FDECL(look_here, (int,BOOLEAN_P));
+E const char *FDECL(dfeature_at, (int, int, char *));
+E int FDECL(look_here, (int, BOOLEAN_P));
 E int NDECL(dolook);
-E boolean FDECL(will_feel_cockatrice, (struct obj *,BOOLEAN_P));
-E void FDECL(feel_cockatrice, (struct obj *,BOOLEAN_P));
+E boolean FDECL(will_feel_cockatrice, (struct obj *, BOOLEAN_P));
+E void FDECL(feel_cockatrice, (struct obj *, BOOLEAN_P));
 E void FDECL(stackobj, (struct obj *));
 E int NDECL(doprgold);
 E int NDECL(doprwep);
@@ -928,17 +940,17 @@ E int NDECL(doprring);
 E int NDECL(dopramulet);
 E int NDECL(doprtool);
 E int NDECL(doprinuse);
-E void FDECL(useupf, (struct obj *,long));
-E char *FDECL(let_to_name, (CHAR_P,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(useupf, (struct obj *, long));
+E char *FDECL(let_to_name, (CHAR_P, BOOLEAN_P, BOOLEAN_P));
 E void NDECL(free_invbuf);
 E void NDECL(reassign);
 E int NDECL(doorganize);
 E int FDECL(count_unpaid, (struct obj *));
-E int FDECL(count_buc, (struct obj *,int));
-E long FDECL(count_contents, (struct obj *,BOOLEAN_P,BOOLEAN_P,BOOLEAN_P));
+E int FDECL(count_buc, (struct obj *, int));
+E long FDECL(count_contents, (struct obj *, BOOLEAN_P, BOOLEAN_P, BOOLEAN_P));
 E void FDECL(carry_obj_effects, (struct obj *));
 E const char *FDECL(currency, (long));
-E void FDECL(silly_thing, (const char *,struct obj *));
+E void FDECL(silly_thing, (const char *, struct obj *));
 
 /* ### ioctl.c ### */
 
@@ -946,9 +958,9 @@ E void FDECL(silly_thing, (const char *,struct obj *));
 E void NDECL(getwindowsz);
 E void NDECL(getioctls);
 E void NDECL(setioctls);
-# ifdef SUSPEND
+#ifdef SUSPEND
 E int NDECL(dosuspend);
-# endif /* SUSPEND */
+#endif /* SUSPEND */
 #endif /* UNIX || __BEOS__ */
 
 /* ### light.c ### */
@@ -966,8 +978,8 @@ E void FDECL(snuff_light_source, (int, int));
 E boolean FDECL(obj_sheds_light, (struct obj *));
 E boolean FDECL(obj_is_burning, (struct obj *));
 E void FDECL(obj_split_light_source, (struct obj *, struct obj *));
-E void FDECL(obj_merge_light_sources, (struct obj *,struct obj *));
-E void FDECL(obj_adjust_light_radius, (struct obj *,int));
+E void FDECL(obj_merge_light_sources, (struct obj *, struct obj *));
+E void FDECL(obj_adjust_light_radius, (struct obj *, int));
 E int FDECL(candle_light_range, (struct obj *));
 E int FDECL(arti_light_radius, (struct obj *));
 E const char *FDECL(arti_light_description, (struct obj *));
@@ -979,17 +991,17 @@ E int NDECL(wiz_light_sources);
 E int NDECL(forcelock);
 E int NDECL(picklock);
 #endif
-E boolean FDECL(picking_lock, (int *,int *));
-E boolean FDECL(picking_at, (int,int));
-E void FDECL(breakchestlock, (struct obj *,BOOLEAN_P));
+E boolean FDECL(picking_lock, (int *, int *));
+E boolean FDECL(picking_at, (int, int));
+E void FDECL(breakchestlock, (struct obj *, BOOLEAN_P));
 E void NDECL(reset_pick);
 E int FDECL(pick_lock, (struct obj *));
 E int NDECL(doforce);
-E boolean FDECL(boxlock, (struct obj *,struct obj *));
-E boolean FDECL(doorlock, (struct obj *,int,int));
+E boolean FDECL(boxlock, (struct obj *, struct obj *));
+E boolean FDECL(doorlock, (struct obj *, int, int));
 E int NDECL(doopen);
-E boolean FDECL(stumble_on_door_mimic, (int,int));
-E int FDECL(doopen_indir, (int,int));
+E boolean FDECL(stumble_on_door_mimic, (int, int));
+E int FDECL(doopen_indir, (int, int));
 E int NDECL(doclose);
 
 #ifdef MAC
@@ -997,12 +1009,12 @@ E int NDECL(doclose);
 
 /* ### macfile.c ### */
 
-E int FDECL(maccreat, (const char *,long));
-E int FDECL(macopen, (const char *,int,long));
+E int FDECL(maccreat, (const char *, long));
+E int FDECL(macopen, (const char *, int, long));
 E int FDECL(macclose, (int));
-E int FDECL(macread, (int,void *,unsigned));
-E int FDECL(macwrite, (int,void *,unsigned));
-E long FDECL(macseek, (int,long,short));
+E int FDECL(macread, (int, void *, unsigned));
+E int FDECL(macwrite, (int, void *, unsigned));
+E long FDECL(macseek, (int, long, short));
 E int FDECL(macunlink, (const char *));
 
 /* ### macmain.c ### */
@@ -1011,7 +1023,7 @@ E boolean NDECL(authorize_wizard_mode);
 
 /* ### macsnd.c ### */
 
-E void FDECL(mac_speaker, (struct obj *,char *));
+E void FDECL(mac_speaker, (struct obj *, char *));
 
 /* ### macunix.c ### */
 
@@ -1026,7 +1038,7 @@ E int NDECL(SanePositions);
 /* ### mttymain.c ### */
 
 E void FDECL(getreturn, (char *));
-E void VDECL(msmsg, (const char *,...));
+E void VDECL(msmsg, (const char *, ...));
 E void NDECL(gettty);
 E void NDECL(setftty);
 E void FDECL(settty, (const char *));
@@ -1039,9 +1051,9 @@ E void FDECL(nocmov, (int x, int y));
 /* ### mail.c ### */
 
 #ifdef MAIL
-# ifdef UNIX
+#ifdef UNIX
 E void NDECL(getmailstatus);
-# endif
+#endif
 E void NDECL(ckmailstatus);
 E void FDECL(readmail, (struct obj *));
 #endif /* MAIL */
@@ -1050,20 +1062,20 @@ E void FDECL(readmail, (struct obj *));
 
 E void FDECL(dealloc_monst, (struct monst *));
 E boolean FDECL(is_home_elemental, (struct permonst *));
-E struct monst *FDECL(clone_mon, (struct monst *,XCHAR_P,XCHAR_P));
+E struct monst *FDECL(clone_mon, (struct monst *, XCHAR_P, XCHAR_P));
 E int FDECL(monhp_per_lvl, (struct monst *));
-E void FDECL(newmonhp, (struct monst *,int));
+E void FDECL(newmonhp, (struct monst *, int));
 E struct mextra *NDECL(newmextra);
-E void FDECL(copy_mextra, (struct monst *,struct monst *));
-E struct monst *FDECL(makemon, (struct permonst *,int,int,int));
-E boolean FDECL(create_critters, (int,struct permonst *,BOOLEAN_P));
+E void FDECL(copy_mextra, (struct monst *, struct monst *));
+E struct monst *FDECL(makemon, (struct permonst *, int, int, int));
+E boolean FDECL(create_critters, (int, struct permonst *, BOOLEAN_P));
 E struct permonst *NDECL(rndmonst);
 E void FDECL(reset_rndmonst, (int));
-E struct permonst *FDECL(mkclass, (CHAR_P,int));
+E struct permonst *FDECL(mkclass, (CHAR_P, int));
 E int FDECL(mkclass_poly, (int));
 E int FDECL(adj_lev, (struct permonst *));
-E struct permonst *FDECL(grow_up, (struct monst *,struct monst *));
-E int FDECL(mongets, (struct monst *,int));
+E struct permonst *FDECL(grow_up, (struct monst *, struct monst *));
+E int FDECL(mongets, (struct monst *, int));
 E int FDECL(golemhp, (int));
 E boolean FDECL(peace_minded, (struct permonst *));
 E void FDECL(set_malign, (struct monst *));
@@ -1073,8 +1085,8 @@ E void FDECL(set_mimic_sym, (struct monst *));
 E int FDECL(mbirth_limit, (int));
 E void FDECL(mimic_hit_msg, (struct monst *, SHORT_P));
 E void FDECL(mkmonmoney, (struct monst *, long));
-E int FDECL(bagotricks, (struct obj *,BOOLEAN_P,int *));
-E boolean FDECL(propagate, (int, BOOLEAN_P,BOOLEAN_P));
+E int FDECL(bagotricks, (struct obj *, BOOLEAN_P, int *));
+E boolean FDECL(propagate, (int, BOOLEAN_P, BOOLEAN_P));
 E boolean FDECL(usmellmon, (struct permonst *));
 
 /* ### mapglyph.c ### */
@@ -1085,35 +1097,36 @@ E void FDECL(genl_putmixed, (winid, int, const char *));
 
 /* ### mcastu.c ### */
 
-E int FDECL(castmu, (struct monst *,struct attack *,BOOLEAN_P,BOOLEAN_P));
-E int FDECL(buzzmu, (struct monst *,struct attack *));
+E int FDECL(castmu, (struct monst *, struct attack *, BOOLEAN_P, BOOLEAN_P));
+E int FDECL(buzzmu, (struct monst *, struct attack *));
 
 /* ### mhitm.c ### */
 
 E int FDECL(fightm, (struct monst *));
-E int FDECL(mattackm, (struct monst *,struct monst *));
-E boolean FDECL(engulf_target, (struct monst *,struct monst *));
-E int FDECL(mdisplacem, (struct monst *,struct monst *,BOOLEAN_P));
-E void FDECL(paralyze_monst, (struct monst *,int));
-E int FDECL(sleep_monst, (struct monst *,int,int));
+E int FDECL(mattackm, (struct monst *, struct monst *));
+E boolean FDECL(engulf_target, (struct monst *, struct monst *));
+E int FDECL(mdisplacem, (struct monst *, struct monst *, BOOLEAN_P));
+E void FDECL(paralyze_monst, (struct monst *, int));
+E int FDECL(sleep_monst, (struct monst *, int, int));
 E void FDECL(slept_monst, (struct monst *));
-E void FDECL(xdrainenergym, (struct monst *,BOOLEAN_P));
+E void FDECL(xdrainenergym, (struct monst *, BOOLEAN_P));
 E long FDECL(attk_protection, (int));
-E void FDECL(rustm, (struct monst *,struct obj *));
+E void FDECL(rustm, (struct monst *, struct obj *));
 
 /* ### mhitu.c ### */
 
-E const char *FDECL(mpoisons_subj, (struct monst *,struct attack *));
+E const char *FDECL(mpoisons_subj, (struct monst *, struct attack *));
 E void NDECL(u_slow_down);
 E struct monst *NDECL(cloneu);
-E void FDECL(expels, (struct monst *,struct permonst *,BOOLEAN_P));
-E struct attack *FDECL(getmattk, (struct permonst *,int,int *,struct attack *));
+E void FDECL(expels, (struct monst *, struct permonst *, BOOLEAN_P));
+E struct attack *FDECL(getmattk,
+                       (struct permonst *, int, int *, struct attack *));
 E int FDECL(mattacku, (struct monst *));
 E int FDECL(magic_negation, (struct monst *));
 E boolean NDECL(gulp_blnd_check);
-E int FDECL(gazemu, (struct monst *,struct attack *));
-E void FDECL(mdamageu, (struct monst *,int));
-E int FDECL(could_seduce, (struct monst *,struct monst *,struct attack *));
+E int FDECL(gazemu, (struct monst *, struct attack *));
+E void FDECL(mdamageu, (struct monst *, int));
+E int FDECL(could_seduce, (struct monst *, struct monst *, struct attack *));
 E int FDECL(doseduce, (struct monst *));
 
 /* ### minion.c ### */
@@ -1122,7 +1135,7 @@ E void FDECL(newemin, (struct monst *));
 E void FDECL(free_emin, (struct monst *));
 E int FDECL(monster_census, (BOOLEAN_P));
 E int FDECL(msummon, (struct monst *));
-E void FDECL(summon_minion, (ALIGNTYP_P,BOOLEAN_P));
+E void FDECL(summon_minion, (ALIGNTYP_P, BOOLEAN_P));
 E int FDECL(demon_talk, (struct monst *));
 E long FDECL(bribe, (struct monst *));
 E int FDECL(dprince, (ALIGNTYP_P));
@@ -1136,57 +1149,57 @@ E void NDECL(gain_guardian_angel);
 /* ### mklev.c ### */
 
 #ifdef USE_TRAMPOLI
-E int FDECL(do_comp, (genericptr_t,genericptr_t));
+E int FDECL(do_comp, (genericptr_t, genericptr_t));
 #endif
 E void NDECL(sort_rooms);
-E void FDECL(add_room, (int,int,int,int,BOOLEAN_P,SCHAR_P,BOOLEAN_P));
-E void FDECL(add_subroom, (struct mkroom *,int,int,int,int,
-                          BOOLEAN_P,SCHAR_P,BOOLEAN_P));
+E void FDECL(add_room, (int, int, int, int, BOOLEAN_P, SCHAR_P, BOOLEAN_P));
+E void FDECL(add_subroom, (struct mkroom *, int, int, int, int, BOOLEAN_P,
+                           SCHAR_P, BOOLEAN_P));
 E void NDECL(makecorridors);
-E void FDECL(add_door, (int,int,struct mkroom *));
+E void FDECL(add_door, (int, int, struct mkroom *));
 E void NDECL(mklev);
 #ifdef SPECIALIZATION
-E void FDECL(topologize, (struct mkroom *,BOOLEAN_P));
+E void FDECL(topologize, (struct mkroom *, BOOLEAN_P));
 #else
 E void FDECL(topologize, (struct mkroom *));
 #endif
-E void FDECL(place_branch, (branch *,XCHAR_P,XCHAR_P));
-E boolean FDECL(occupied, (XCHAR_P,XCHAR_P));
-E int FDECL(okdoor, (XCHAR_P,XCHAR_P));
-E void FDECL(dodoor, (int,int,struct mkroom *));
-E void FDECL(mktrap, (int,int,struct mkroom *,coord*));
-E void FDECL(mkstairs, (XCHAR_P,XCHAR_P,CHAR_P,struct mkroom *));
+E void FDECL(place_branch, (branch *, XCHAR_P, XCHAR_P));
+E boolean FDECL(occupied, (XCHAR_P, XCHAR_P));
+E int FDECL(okdoor, (XCHAR_P, XCHAR_P));
+E void FDECL(dodoor, (int, int, struct mkroom *));
+E void FDECL(mktrap, (int, int, struct mkroom *, coord *));
+E void FDECL(mkstairs, (XCHAR_P, XCHAR_P, CHAR_P, struct mkroom *));
 E void NDECL(mkinvokearea);
 E void FDECL(mineralize, (int, int, int, int, BOOLEAN_P));
 
 /* ### mkmap.c ### */
 
-void FDECL(flood_fill_rm, (int,int,int,BOOLEAN_P,BOOLEAN_P));
-void FDECL(remove_rooms, (int,int,int,int));
+void FDECL(flood_fill_rm, (int, int, int, BOOLEAN_P, BOOLEAN_P));
+void FDECL(remove_rooms, (int, int, int, int));
 
 /* ### mkmaze.c ### */
 
-E void FDECL(wallification, (int,int,int,int));
-E void FDECL(walkfrom, (int,int,SCHAR_P));
+E void FDECL(wallification, (int, int, int, int));
+E void FDECL(walkfrom, (int, int, SCHAR_P));
 E void FDECL(makemaz, (const char *));
 E void FDECL(mazexy, (coord *));
 E void NDECL(bound_digging);
-E void FDECL(mkportal, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P));
-E boolean FDECL(bad_location, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P));
-E void FDECL(place_lregion, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,
-                            XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,
-                            XCHAR_P,d_level *));
+E void FDECL(mkportal, (XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P));
+E boolean
+FDECL(bad_location, (XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P));
+E void FDECL(place_lregion, (XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P,
+                             XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P, d_level *));
 E void NDECL(fumaroles);
 E void NDECL(movebubbles);
 E void NDECL(water_friction);
-E void FDECL(save_waterlevel, (int,int));
+E void FDECL(save_waterlevel, (int, int));
 E void FDECL(restore_waterlevel, (int));
-E const char *FDECL(waterbody_name, (XCHAR_P,XCHAR_P));
+E const char *FDECL(waterbody_name, (XCHAR_P, XCHAR_P));
 
 /* ### mkobj.c ### */
 
 E struct oextra *NDECL(newoextra);
-E void FDECL(copy_oextra, (struct obj *,struct obj *));
+E void FDECL(copy_oextra, (struct obj *, struct obj *));
 E void FDECL(dealloc_oextra, (struct oextra *));
 E void FDECL(newomonst, (struct obj *));
 E void FDECL(free_omonst, (struct obj *));
@@ -1194,29 +1207,29 @@ E void FDECL(newomid, (struct obj *));
 E void FDECL(free_omid, (struct obj *));
 E void FDECL(newolong, (struct obj *));
 E void FDECL(free_olong, (struct obj *));
-E void FDECL(new_omailcmd, (struct obj *,const char *));
+E void FDECL(new_omailcmd, (struct obj *, const char *));
 E void FDECL(free_omailcmd, (struct obj *));
-E struct obj *FDECL(mkobj_at, (CHAR_P,int,int,BOOLEAN_P));
-E struct obj *FDECL(mksobj_at, (int,int,int,BOOLEAN_P,BOOLEAN_P));
-E struct obj *FDECL(mkobj, (CHAR_P,BOOLEAN_P));
+E struct obj *FDECL(mkobj_at, (CHAR_P, int, int, BOOLEAN_P));
+E struct obj *FDECL(mksobj_at, (int, int, int, BOOLEAN_P, BOOLEAN_P));
+E struct obj *FDECL(mkobj, (CHAR_P, BOOLEAN_P));
 E int NDECL(rndmonnum);
 E boolean FDECL(bogon_is_pname, (CHAR_P));
-E struct obj *FDECL(splitobj, (struct obj *,long));
-E void FDECL(replace_object, (struct obj *,struct obj *));
+E struct obj *FDECL(splitobj, (struct obj *, long));
+E void FDECL(replace_object, (struct obj *, struct obj *));
 E void FDECL(bill_dummy_object, (struct obj *));
-E void FDECL(costly_alteration, (struct obj *,int));
-E struct obj *FDECL(mksobj, (int,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(costly_alteration, (struct obj *, int));
+E struct obj *FDECL(mksobj, (int, BOOLEAN_P, BOOLEAN_P));
 E int FDECL(bcsign, (struct obj *));
 E int FDECL(weight, (struct obj *));
-E struct obj *FDECL(mkgold, (long,int,int));
-E struct obj *FDECL(mkcorpstat,
-               (int,struct monst *,struct permonst *,int,int,unsigned));
+E struct obj *FDECL(mkgold, (long, int, int));
+E struct obj *FDECL(mkcorpstat, (int, struct monst *, struct permonst *, int,
+                                 int, unsigned));
 E int FDECL(corpse_revive_type, (struct obj *));
 E struct obj *FDECL(obj_attach_mid, (struct obj *, unsigned));
 E struct monst *FDECL(get_mtraits, (struct obj *, BOOLEAN_P));
-E struct obj *FDECL(mk_tt_object, (int,int,int));
+E struct obj *FDECL(mk_tt_object, (int, int, int));
 E struct obj *FDECL(mk_named_object,
-                       (int,struct permonst *,int,int,const char *));
+                    (int, struct permonst *, int, int, const char *));
 E struct obj *FDECL(rnd_treefruit_at, (int, int));
 E void FDECL(set_corpsenm, (struct obj *, int));
 E void FDECL(start_corpse_timeout, (struct obj *));
@@ -1224,10 +1237,10 @@ E void FDECL(bless, (struct obj *));
 E void FDECL(unbless, (struct obj *));
 E void FDECL(curse, (struct obj *));
 E void FDECL(uncurse, (struct obj *));
-E void FDECL(blessorcurse, (struct obj *,int));
+E void FDECL(blessorcurse, (struct obj *, int));
 E boolean FDECL(is_flammable, (struct obj *));
 E boolean FDECL(is_rottable, (struct obj *));
-E void FDECL(place_object, (struct obj *,int,int));
+E void FDECL(place_object, (struct obj *, int, int));
 E void FDECL(remove_object, (struct obj *));
 E void FDECL(discard_minvent, (struct monst *));
 E void FDECL(obj_extract_self, (struct obj *));
@@ -1240,26 +1253,26 @@ E void FDECL(add_to_buried, (struct obj *));
 E void FDECL(dealloc_obj, (struct obj *));
 E void FDECL(obj_ice_effects, (int, int, BOOLEAN_P));
 E long FDECL(peek_at_iced_corpse_age, (struct obj *));
-E int FDECL(hornoplenty, (struct obj *,BOOLEAN_P));
+E int FDECL(hornoplenty, (struct obj *, BOOLEAN_P));
 E void NDECL(obj_sanity_check);
-E struct obj* FDECL(obj_nexto, (struct obj*));
-E struct objFDECL(obj_nexto_xy, (int, int, int, unsigned));
-E struct obj* FDECL(obj_absorb, (struct obj**, struct obj**));
-E struct obj* FDECL(obj_meld, (struct obj**, struct obj**));
+E struct obj *FDECL(obj_nexto, (struct obj *));
+E struct obj *FDECL(obj_nexto_xy, (int, int, int, unsigned));
+E struct obj *FDECL(obj_absorb, (struct obj **, struct obj **));
+E struct obj *FDECL(obj_meld, (struct obj **, struct obj **));
 
 /* ### mkroom.c ### */
 
 E void FDECL(mkroom, (int));
 E void FDECL(fill_zoo, (struct mkroom *));
 E struct permonst *NDECL(antholemon);
-E boolean FDECL(nexttodoor, (int,int));
+E boolean FDECL(nexttodoor, (int, int));
 E boolean FDECL(has_dnstairs, (struct mkroom *));
 E boolean FDECL(has_upstairs, (struct mkroom *));
 E int FDECL(somex, (struct mkroom *));
 E int FDECL(somey, (struct mkroom *));
-E boolean FDECL(inside_room, (struct mkroom *,XCHAR_P,XCHAR_P));
-E boolean FDECL(somexy, (struct mkroom *,coord *));
-E void FDECL(mkundead, (coord *,BOOLEAN_P,int));
+E boolean FDECL(inside_room, (struct mkroom *, XCHAR_P, XCHAR_P));
+E boolean FDECL(somexy, (struct mkroom *, coord *));
+E void FDECL(mkundead, (coord *, BOOLEAN_P, int));
 E struct permonst *NDECL(courtmon);
 E void FDECL(save_rooms, (int));
 E void FDECL(rest_rooms, (int));
@@ -1269,73 +1282,75 @@ E int FDECL(cmap_to_type, (int));
 /* ### mon.c ### */
 
 E int FDECL(undead_to_corpse, (int));
-E int FDECL(genus, (int,int));
+E int FDECL(genus, (int, int));
 E int FDECL(pm_to_cham, (int));
 E int FDECL(minliquid, (struct monst *));
 E int NDECL(movemon);
 E int FDECL(meatmetal, (struct monst *));
 E int FDECL(meatobj, (struct monst *));
 E void FDECL(mpickgold, (struct monst *));
-E boolean FDECL(mpickstuff, (struct monst *,const char *));
+E boolean FDECL(mpickstuff, (struct monst *, const char *));
 E int FDECL(curr_mon_load, (struct monst *));
 E int FDECL(max_mon_load, (struct monst *));
-E boolean FDECL(can_carry, (struct monst *,struct obj *));
-E int FDECL(mfndpos, (struct monst *,coord *,long *,long));
-E boolean FDECL(monnear, (struct monst *,int,int));
+E boolean FDECL(can_carry, (struct monst *, struct obj *));
+E int FDECL(mfndpos, (struct monst *, coord *, long *, long));
+E boolean FDECL(monnear, (struct monst *, int, int));
 E void NDECL(dmonsfree);
-E int FDECL(mcalcmove, (struct monst*));
+E int FDECL(mcalcmove, (struct monst *));
 E void NDECL(mcalcdistress);
-E void FDECL(replmon, (struct monst *,struct monst *));
-E void FDECL(relmon, (struct monst *,struct monst **));
+E void FDECL(replmon, (struct monst *, struct monst *));
+E void FDECL(relmon, (struct monst *, struct monst **));
 E struct obj *FDECL(mlifesaver, (struct monst *));
-E boolean FDECL(corpse_chance,(struct monst *,struct monst *,BOOLEAN_P));
+E boolean FDECL(corpse_chance, (struct monst *, struct monst *, BOOLEAN_P));
 E void FDECL(mondead, (struct monst *));
 E void FDECL(mondied, (struct monst *));
 E void FDECL(mongone, (struct monst *));
 E void FDECL(monstone, (struct monst *));
-E void FDECL(monkilled, (struct monst *,const char *,int));
+E void FDECL(monkilled, (struct monst *, const char *, int));
 E void FDECL(unstuck, (struct monst *));
 E void FDECL(killed, (struct monst *));
-E void FDECL(xkilled, (struct monst *,int));
-E void FDECL(mon_to_stone, (struct monst*));
+E void FDECL(xkilled, (struct monst *, int));
+E void FDECL(mon_to_stone, (struct monst *));
 E void FDECL(mnexto, (struct monst *));
 E void FDECL(maybe_mnexto, (struct monst *));
-E boolean FDECL(mnearto, (struct monst *,XCHAR_P,XCHAR_P,BOOLEAN_P));
+E boolean FDECL(mnearto, (struct monst *, XCHAR_P, XCHAR_P, BOOLEAN_P));
 E void FDECL(m_respond, (struct monst *));
 E void FDECL(setmangry, (struct monst *));
 E void FDECL(wakeup, (struct monst *));
 E void NDECL(wake_nearby);
-E void FDECL(wake_nearto, (int,int,int));
+E void FDECL(wake_nearto, (int, int, int));
 E void FDECL(seemimic, (struct monst *));
 E void NDECL(rescham);
 E void NDECL(restartcham);
 E void FDECL(restore_cham, (struct monst *));
-E boolean FDECL(hideunder, (struct monst*));
+E boolean FDECL(hideunder, (struct monst *));
 E void FDECL(hide_monst, (struct monst *));
 E void FDECL(mon_animal_list, (BOOLEAN_P));
 E int FDECL(select_newcham_form, (struct monst *));
 E void FDECL(mgender_from_permonst, (struct monst *, struct permonst *));
-E int FDECL(newcham, (struct monst *,struct permonst *,BOOLEAN_P,BOOLEAN_P));
+E int FDECL(newcham,
+            (struct monst *, struct permonst *, BOOLEAN_P, BOOLEAN_P));
 E int FDECL(can_be_hatched, (int));
-E int FDECL(egg_type_from_parent, (int,BOOLEAN_P));
-E boolean FDECL(dead_species, (int,BOOLEAN_P));
+E int FDECL(egg_type_from_parent, (int, BOOLEAN_P));
+E boolean FDECL(dead_species, (int, BOOLEAN_P));
 E void NDECL(kill_genocided_monsters);
-E void FDECL(golemeffects, (struct monst *,int,int));
+E void FDECL(golemeffects, (struct monst *, int, int));
 E boolean FDECL(angry_guards, (BOOLEAN_P));
 E void NDECL(pacify_guards);
-E void FDECL(decide_to_shapeshift, (struct monst *,int));
+E void FDECL(decide_to_shapeshift, (struct monst *, int));
 
 /* ### mondata.c ### */
 
-E void FDECL(set_mon_data, (struct monst *,struct permonst *,int));
-E struct attack *FDECL(attacktype_fordmg, (struct permonst *,int,int));
-E boolean FDECL(attacktype, (struct permonst *,int));
+E void FDECL(set_mon_data, (struct monst *, struct permonst *, int));
+E struct attack *FDECL(attacktype_fordmg, (struct permonst *, int, int));
+E boolean FDECL(attacktype, (struct permonst *, int));
 E boolean FDECL(noattacks, (struct permonst *));
 E boolean FDECL(poly_when_stoned, (struct permonst *));
 E boolean FDECL(resists_drli, (struct monst *));
 E boolean FDECL(resists_magm, (struct monst *));
 E boolean FDECL(resists_blnd, (struct monst *));
-E boolean FDECL(can_blnd, (struct monst *,struct monst *,UCHAR_P,struct obj *));
+E boolean
+FDECL(can_blnd, (struct monst *, struct monst *, UCHAR_P, struct obj *));
 E boolean FDECL(ranged_attk, (struct permonst *));
 E boolean FDECL(hates_silver, (struct permonst *));
 E boolean FDECL(mon_hates_silver, (struct monst *));
@@ -1349,21 +1364,21 @@ E boolean FDECL(sticks, (struct permonst *));
 E boolean FDECL(cantvomit, (struct permonst *));
 E int FDECL(num_horns, (struct permonst *));
 /* E boolean FDECL(canseemon, (struct monst *)); */
-E struct attack *FDECL(dmgtype_fromattack, (struct permonst *,int,int));
-E boolean FDECL(dmgtype, (struct permonst *,int));
-E int FDECL(max_passive_dmg, (struct monst *,struct monst *));
-E boolean FDECL(same_race, (struct permonst *,struct permonst *));
+E struct attack *FDECL(dmgtype_fromattack, (struct permonst *, int, int));
+E boolean FDECL(dmgtype, (struct permonst *, int));
+E int FDECL(max_passive_dmg, (struct monst *, struct monst *));
+E boolean FDECL(same_race, (struct permonst *, struct permonst *));
 E int FDECL(monsndx, (struct permonst *));
 E int FDECL(name_to_mon, (const char *));
-E int FDECL(name_to_monclass, (const char *,int *));
+E int FDECL(name_to_monclass, (const char *, int *));
 E int FDECL(gender, (struct monst *));
 E int FDECL(pronoun_gender, (struct monst *));
 E boolean FDECL(levl_follower, (struct monst *));
 E int FDECL(little_to_big, (int));
 E int FDECL(big_to_little, (int));
-E const char *FDECL(locomotion, (const struct permonst *,const char *));
-E const char *FDECL(stagger, (const struct permonst *,const char *));
-E const char *FDECL(on_fire, (struct permonst *,struct attack *));
+E const char *FDECL(locomotion, (const struct permonst *, const char *));
+E const char *FDECL(stagger, (const struct permonst *, const char *));
+E const char *FDECL(on_fire, (struct permonst *, struct attack *));
 E const struct permonst *FDECL(raceptr, (struct monst *));
 E boolean FDECL(olfaction, (struct permonst *));
 
@@ -1371,23 +1386,23 @@ E boolean FDECL(olfaction, (struct permonst *));
 
 E boolean FDECL(itsstuck, (struct monst *));
 E boolean FDECL(mb_trapped, (struct monst *));
-E boolean FDECL(monhaskey, (struct monst *,BOOLEAN_P));
-E void FDECL(mon_regen, (struct monst *,BOOLEAN_P));
+E boolean FDECL(monhaskey, (struct monst *, BOOLEAN_P));
+E void FDECL(mon_regen, (struct monst *, BOOLEAN_P));
 E int FDECL(dochugw, (struct monst *));
-E boolean FDECL(onscary, (int,int,struct monst *));
+E boolean FDECL(onscary, (int, int, struct monst *));
 E void FDECL(monflee, (struct monst *, int, BOOLEAN_P, BOOLEAN_P));
 E void FDECL(mon_yells, (struct monst *, const char *));
 E int FDECL(dochug, (struct monst *));
-E int FDECL(m_move, (struct monst *,int));
-E void FDECL(dissolve_bars, (int,int));
-E boolean FDECL(closed_door, (int,int));
-E boolean FDECL(accessible, (int,int));
+E int FDECL(m_move, (struct monst *, int));
+E void FDECL(dissolve_bars, (int, int));
+E boolean FDECL(closed_door, (int, int));
+E boolean FDECL(accessible, (int, int));
 E void FDECL(set_apparxy, (struct monst *));
 E boolean FDECL(can_ooze, (struct monst *));
 E boolean FDECL(can_fog, (struct monst *));
-E boolean FDECL(should_displace, (struct monst *,coord *,long *,int,
-                                       XCHAR_P,XCHAR_P));
-E boolean FDECL(undesirable_disp, (struct monst *,XCHAR_P,XCHAR_P));
+E boolean FDECL(should_displace,
+                (struct monst *, coord *, long *, int, XCHAR_P, XCHAR_P));
+E boolean FDECL(undesirable_disp, (struct monst *, XCHAR_P, XCHAR_P));
 
 /* ### monst.c ### */
 
@@ -1399,76 +1414,77 @@ E void NDECL(monstr_init);
 
 /* ### mplayer.c ### */
 
-E struct monst *FDECL(mk_mplayer, (struct permonst *,XCHAR_P,
-                                  XCHAR_P,BOOLEAN_P));
-E void FDECL(create_mplayers, (int,BOOLEAN_P));
+E struct monst *FDECL(mk_mplayer,
+                      (struct permonst *, XCHAR_P, XCHAR_P, BOOLEAN_P));
+E void FDECL(create_mplayers, (int, BOOLEAN_P));
 E void FDECL(mplayer_talk, (struct monst *));
 
 #if defined(MICRO) || defined(WIN32)
 
 /* ### msdos.c,os2.c,tos.c,winnt.c ### */
 
-#  ifndef WIN32
+#ifndef WIN32
 E int NDECL(tgetch);
-#  endif
-#  ifndef TOS
+#endif
+#ifndef TOS
 E char NDECL(switchar);
-#  endif
-# ifndef __GO32__
+#endif
+#ifndef __GO32__
 E long FDECL(freediskspace, (char *));
-#  ifdef MSDOS
+#ifdef MSDOS
 E int FDECL(findfirst_file, (char *));
 E int NDECL(findnext_file);
 E long FDECL(filesize_nh, (char *));
-#  else
+#else
 E int FDECL(findfirst, (char *));
 E int NDECL(findnext);
 E long FDECL(filesize, (char *));
-#  endif /* MSDOS */
+#endif /* MSDOS */
 E char *NDECL(foundfile_buffer);
-# endif /* __GO32__ */
+#endif /* __GO32__ */
 E void FDECL(chdrive, (char *));
-# ifndef TOS
+#ifndef TOS
 E void NDECL(disable_ctrlP);
 E void NDECL(enable_ctrlP);
-# endif
-# if defined(MICRO) && !defined(WINNT)
+#endif
+#if defined(MICRO) && !defined(WINNT)
 E void NDECL(get_scr_size);
-#  ifndef TOS
-E void FDECL(gotoxy, (int,int));
-#  endif
-# endif
-# ifdef TOS
-E int FDECL(_copyfile, (char *,char *));
+#ifndef TOS
+E void FDECL(gotoxy, (int, int));
+#endif
+#endif
+#ifdef TOS
+E int FDECL(_copyfile, (char *, char *));
 E int NDECL(kbhit);
 E void NDECL(set_colors);
 E void NDECL(restore_colors);
-#  ifdef SUSPEND
+#ifdef SUSPEND
 E int NDECL(dosuspend);
-#  endif
-# endif /* TOS */
-# ifdef WIN32
+#endif
+#endif /* TOS */
+#ifdef WIN32
 E char *FDECL(get_username, (int *));
 E void FDECL(nt_regularize, (char *));
 E int NDECL((*nt_kbhit));
 E void FDECL(Delay, (int));
-# endif /* WIN32 */
+#endif /* WIN32 */
 #endif /* MICRO || WIN32 */
 
 /* ### mthrowu.c ### */
 
-E int FDECL(thitu, (int,int,struct obj *,const char *));
-E int FDECL(ohitmon, (struct monst *,struct obj *,int,BOOLEAN_P));
+E int FDECL(thitu, (int, int, struct obj *, const char *));
+E int FDECL(ohitmon, (struct monst *, struct obj *, int, BOOLEAN_P));
 E void FDECL(thrwmu, (struct monst *));
-E int FDECL(spitmu, (struct monst *,struct attack *));
-E int FDECL(breamu, (struct monst *,struct attack *));
-E boolean FDECL(linedup, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,int));
+E int FDECL(spitmu, (struct monst *, struct attack *));
+E int FDECL(breamu, (struct monst *, struct attack *));
+E boolean FDECL(linedup, (XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P, int));
 E boolean FDECL(lined_up, (struct monst *));
-E struct obj *FDECL(m_carrying, (struct monst *,int));
-E void FDECL(m_useupall, (struct monst *,struct obj *));
-E void FDECL(m_useup, (struct monst *,struct obj *));
-E void FDECL(m_throw, (struct monst *,int,int,int,int,int,struct obj *));
-E boolean FDECL(hits_bars, (struct obj **,int,int,int,int));
+E struct obj *FDECL(m_carrying, (struct monst *, int));
+E void FDECL(m_useupall, (struct monst *, struct obj *));
+E void FDECL(m_useup, (struct monst *, struct obj *));
+E void FDECL(m_throw,
+             (struct monst *, int, int, int, int, int, struct obj *));
+E boolean FDECL(hits_bars, (struct obj **, int, int, int, int));
 
 /* ### muse.c ### */
 
@@ -1477,18 +1493,18 @@ E int FDECL(use_defensive, (struct monst *));
 E int FDECL(rnd_defensive_item, (struct monst *));
 E boolean FDECL(find_offensive, (struct monst *));
 #ifdef USE_TRAMPOLI
-E int FDECL(mbhitm, (struct monst *,struct obj *));
+E int FDECL(mbhitm, (struct monst *, struct obj *));
 #endif
 E int FDECL(use_offensive, (struct monst *));
 E int FDECL(rnd_offensive_item, (struct monst *));
 E boolean FDECL(find_misc, (struct monst *));
 E int FDECL(use_misc, (struct monst *));
 E int FDECL(rnd_misc_item, (struct monst *));
-E boolean FDECL(searches_for_item, (struct monst *,struct obj *));
-E boolean FDECL(mon_reflects, (struct monst *,const char *));
-E boolean FDECL(ureflects, (const char *,const char *));
-E boolean FDECL(munstone, (struct monst *,BOOLEAN_P));
-E boolean FDECL(munslime, (struct monst *,BOOLEAN_P));
+E boolean FDECL(searches_for_item, (struct monst *, struct obj *));
+E boolean FDECL(mon_reflects, (struct monst *, const char *));
+E boolean FDECL(ureflects, (const char *, const char *));
+E boolean FDECL(munstone, (struct monst *, BOOLEAN_P));
+E boolean FDECL(munslime, (struct monst *, BOOLEAN_P));
 
 /* ### music.c ### */
 
@@ -1502,10 +1518,10 @@ E char *NDECL(lan_username);
 #endif
 
 /* ### nhregex.c ### */
-E struct nhregex * NDECL(regex_init);
+E struct nhregex *NDECL(regex_init);
 E boolean FDECL(regex_compile, (const char *, struct nhregex *));
 E const char *FDECL(regex_error_desc, (struct nhregex *));
-E boolean FDECL(regex_match, (const char *, struct nhregex*));
+E boolean FDECL(regex_match, (const char *, struct nhregex *));
 E void FDECL(regex_free, (struct nhregex *));
 
 /* ### nttty.c ### */
@@ -1513,10 +1529,10 @@ E void FDECL(regex_free, (struct nhregex *));
 #ifdef WIN32
 E void NDECL(get_scr_size);
 E int NDECL(nttty_kbhit);
-E void FDECL(nttty_open,(int));
+E void FDECL(nttty_open, (int));
 E void NDECL(nttty_rubout);
 E int NDECL(tgetch);
-E int FDECL(ntposkey,(int *, int *, int *));
+E int FDECL(ntposkey, (int *, int *, int *));
 E void FDECL(set_output_mode, (int));
 E void NDECL(synch_cursor);
 #endif
@@ -1524,12 +1540,12 @@ E void NDECL(synch_cursor);
 /* ### o_init.c ### */
 
 E void NDECL(init_objects);
-E void FDECL(obj_shuffle_range, (int,int *,int *));
+E void FDECL(obj_shuffle_range, (int, int *, int *));
 E int NDECL(find_skates);
 E void NDECL(oinit);
-E void FDECL(savenames, (int,int));
+E void FDECL(savenames, (int, int));
 E void FDECL(restnames, (int));
-E void FDECL(discover_object, (int,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(discover_object, (int, BOOLEAN_P, BOOLEAN_P));
 E void FDECL(undiscover_object, (int));
 E int NDECL(dodiscovered);
 E int NDECL(doclassdisco);
@@ -1544,7 +1560,7 @@ E void NDECL(objects_init);
 E char *FDECL(obj_typename, (int));
 E char *FDECL(simple_typename, (int));
 E boolean FDECL(obj_is_pname, (struct obj *));
-E char *FDECL(distant_name, (struct obj *,char *(*)(OBJ_P)));
+E char *FDECL(distant_name, (struct obj *, char *(*)(OBJ_P)));
 E char *FDECL(fruitname, (BOOLEAN_P));
 E char *FDECL(xname, (struct obj *));
 E char *FDECL(mshot_xname, (struct obj *));
@@ -1552,23 +1568,23 @@ E boolean FDECL(the_unique_obj, (struct obj *));
 E boolean FDECL(the_unique_pm, (struct permonst *));
 E char *FDECL(doname, (struct obj *));
 E boolean FDECL(not_fully_identified, (struct obj *));
-E char *FDECL(corpse_xname, (struct obj *,const char *,unsigned));
+E char *FDECL(corpse_xname, (struct obj *, const char *, unsigned));
 E char *FDECL(cxname, (struct obj *));
 E char *FDECL(cxname_singular, (struct obj *));
 E char *FDECL(killer_xname, (struct obj *));
-E char *FDECL(short_oname, (struct obj *,char *(*)(OBJ_P),char *(*)(OBJ_P),
-                           unsigned));
-E const char *FDECL(singular, (struct obj *,char *(*)(OBJ_P)));
+E char *FDECL(short_oname,
+              (struct obj *, char *(*)(OBJ_P), char *(*)(OBJ_P), unsigned));
+E const char *FDECL(singular, (struct obj *, char *(*)(OBJ_P)));
 E char *FDECL(an, (const char *));
 E char *FDECL(An, (const char *));
 E char *FDECL(The, (const char *));
 E char *FDECL(the, (const char *));
-E char *FDECL(aobjnam, (struct obj *,const char *));
-E char *FDECL(yobjnam, (struct obj *,const char *));
-E char *FDECL(Yobjnam2, (struct obj *,const char *));
-E char *FDECL(Tobjnam, (struct obj *,const char *));
-E char *FDECL(otense, (struct obj *,const char *));
-E char *FDECL(vtense, (const char *,const char *));
+E char *FDECL(aobjnam, (struct obj *, const char *));
+E char *FDECL(yobjnam, (struct obj *, const char *));
+E char *FDECL(Yobjnam2, (struct obj *, const char *));
+E char *FDECL(Tobjnam, (struct obj *, const char *));
+E char *FDECL(otense, (struct obj *, const char *));
+E char *FDECL(vtense, (const char *, const char *));
 E char *FDECL(Doname2, (struct obj *));
 E char *FDECL(yname, (struct obj *));
 E char *FDECL(Yname2, (struct obj *));
@@ -1580,28 +1596,29 @@ E char *FDECL(thesimpleoname, (struct obj *));
 E char *FDECL(bare_artifactname, (struct obj *));
 E char *FDECL(makeplural, (const char *));
 E char *FDECL(makesingular, (const char *));
-E struct obj *FDECL(readobjnam, (char *,struct obj *));
-E int FDECL(rnd_class, (int,int));
+E struct obj *FDECL(readobjnam, (char *, struct obj *));
+E int FDECL(rnd_class, (int, int));
 E const char *FDECL(suit_simple_name, (struct obj *));
 E const char *FDECL(cloak_simple_name, (struct obj *));
 E const char *FDECL(helm_simple_name, (struct obj *));
 E const char *FDECL(mimic_obj_name, (struct monst *));
-E char *FDECL(safe_qbuf, (char *,const char *,const char *,struct obj *,
-                         char *(*)(OBJ_P),char *(*)(OBJ_P),const char *));
+E char *FDECL(safe_qbuf, (char *, const char *, const char *, struct obj *,
+                          char *(*)(OBJ_P), char *(*)(OBJ_P), const char *));
 
 /* ### options.c ### */
 
-E boolean FDECL(match_optname, (const char *,const char *,int,BOOLEAN_P));
+E boolean FDECL(match_optname, (const char *, const char *, int, BOOLEAN_P));
 E void NDECL(initoptions);
 E void NDECL(initoptions_init);
 E void NDECL(initoptions_finish);
-E void FDECL(parseoptions, (char *,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(parseoptions, (char *, BOOLEAN_P, BOOLEAN_P));
 E int NDECL(doset);
 E int NDECL(dotogglepickup);
 E void NDECL(option_help);
-E void FDECL(next_opt, (winid,const char *));
-E int FDECL(fruitadd, (char *,struct fruit *));
-E int FDECL(choose_classes_menu, (const char *,int,BOOLEAN_P,char *,char *));
+E void FDECL(next_opt, (winid, const char *));
+E int FDECL(fruitadd, (char *, struct fruit *));
+E int FDECL(choose_classes_menu,
+            (const char *, int, BOOLEAN_P, char *, char *));
 E void FDECL(add_menu_cmd_alias, (CHAR_P, CHAR_P));
 E char FDECL(map_menu_cmd, (CHAR_P));
 E void FDECL(assign_warnings, (uchar *));
@@ -1609,10 +1626,10 @@ E char *FDECL(nh_getenv, (const char *));
 E void FDECL(set_duplicate_opt_detection, (int));
 E void FDECL(set_wc_option_mod_status, (unsigned long, int));
 E void FDECL(set_wc2_option_mod_status, (unsigned long, int));
-E void FDECL(set_option_mod_status, (const char *,int));
+E void FDECL(set_option_mod_status, (const char *, int));
 E int FDECL(add_autopickup_exception, (const char *));
 E void NDECL(free_autopickup_exceptions);
-E int FDECL(load_symset, (const char *,int));
+E int FDECL(load_symset, (const char *, int));
 E void FDECL(parsesymbols, (char *));
 E struct symparse *FDECL(match_sym, (char *));
 E void NDECL(set_playmode);
@@ -1628,18 +1645,19 @@ E int NDECL(dowhatis);
 E int NDECL(doquickwhatis);
 E int NDECL(doidtrap);
 E int NDECL(dowhatdoes);
-E char *FDECL(dowhatdoes_core,(CHAR_P, char *));
+E char *FDECL(dowhatdoes_core, (CHAR_P, char *));
 E int NDECL(dohelp);
 E int NDECL(dohistory);
-E int FDECL(do_screen_description, (coord, BOOLEAN_P, int, char *, const char **));
+E int FDECL(do_screen_description,
+            (coord, BOOLEAN_P, int, char *, const char **));
 E int FDECL(do_look, (int, coord *));
 
 /* ### pcmain.c ### */
 
 #if defined(MICRO) || defined(WIN32)
-# ifdef CHDIR
-E void FDECL(chdirx, (char *,BOOLEAN_P));
-# endif /* CHDIR */
+#ifdef CHDIR
+E void FDECL(chdirx, (char *, BOOLEAN_P));
+#endif /* CHDIR */
 E boolean NDECL(authorize_wizard_mode);
 #endif /* MICRO || WIN32 */
 
@@ -1648,19 +1666,19 @@ E boolean NDECL(authorize_wizard_mode);
 #if defined(MICRO) || defined(WIN32)
 E void NDECL(flushout);
 E int NDECL(dosh);
-# ifdef MFLOPPY
-E void FDECL(eraseall, (const char *,const char *));
+#ifdef MFLOPPY
+E void FDECL(eraseall, (const char *, const char *));
 E void FDECL(copybones, (int));
 E void NDECL(playwoRAMdisk);
 E int FDECL(saveDiskPrompt, (int));
 E void NDECL(gameDiskPrompt);
-# endif
+#endif
 E void FDECL(append_slash, (char *));
 E void FDECL(getreturn, (const char *));
-# ifndef AMIGA
-E void VDECL(msmsg, (const char *,...));
-# endif
-E FILE *FDECL(fopenp, (const char *,const char *));
+#ifndef AMIGA
+E void VDECL(msmsg, (const char *, ...));
+#endif
+E FILE *FDECL(fopenp, (const char *, const char *));
 #endif /* MICRO || WIN32 */
 
 /* ### pctty.c ### */
@@ -1669,7 +1687,7 @@ E FILE *FDECL(fopenp, (const char *,const char *));
 E void NDECL(gettty);
 E void FDECL(settty, (const char *));
 E void NDECL(setftty);
-E void VDECL(error, (const char *,...));
+E void VDECL(error, (const char *, ...));
 #if defined(TIMED_DELAY) && defined(_MSC_VER)
 E void FDECL(msleep, (unsigned));
 #endif
@@ -1686,9 +1704,9 @@ E void NDECL(getlock);
 
 /* ### pickup.c ### */
 
-E int FDECL(collect_obj_classes,
-       (char *,struct obj *,BOOLEAN_P,boolean FDECL((*),(OBJ_P)), int *));
-E boolean FDECL(rider_corpse_revival, (struct obj *,BOOLEAN_P));
+E int FDECL(collect_obj_classes, (char *, struct obj *, BOOLEAN_P,
+                                  boolean FDECL((*), (OBJ_P)), int *));
+E boolean FDECL(rider_corpse_revival, (struct obj *, BOOLEAN_P));
 E void FDECL(add_valid_menu_class, (int));
 E boolean FDECL(allow_all, (struct obj *));
 E boolean FDECL(allow_category, (struct obj *));
@@ -1700,41 +1718,41 @@ E int FDECL(out_container, (struct obj *));
 #endif
 E int FDECL(pickup, (int));
 E int FDECL(pickup_object, (struct obj *, long, BOOLEAN_P));
-E int FDECL(query_category, (const char *, struct obj *, int,
-                               menu_item **, int));
-E int FDECL(query_objlist, (const char *, struct obj *, int,
-                               menu_item **, int, boolean (*)(OBJ_P)));
+E int FDECL(query_category,
+            (const char *, struct obj *, int, menu_item **, int));
+E int FDECL(query_objlist, (const char *, struct obj *, int, menu_item **,
+                            int, boolean (*)(OBJ_P)));
 E struct obj *FDECL(pick_obj, (struct obj *));
 E int NDECL(encumber_msg);
 E int NDECL(doloot);
 E boolean FDECL(container_gone, (int (*)(OBJ_P)));
 E boolean NDECL(u_handsy);
-E int FDECL(use_container, (struct obj **,int));
-E int FDECL(loot_mon, (struct monst *,int *,boolean *));
+E int FDECL(use_container, (struct obj **, int));
+E int FDECL(loot_mon, (struct monst *, int *, boolean *));
 E int NDECL(dotip);
 E boolean FDECL(is_autopickup_exception, (struct obj *, BOOLEAN_P));
 
 /* ### pline.c ### */
 
-E void VDECL(pline, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(Norep, (const char *,...)) PRINTF_F(1,2);
+E void VDECL(pline, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(Norep, (const char *, ...)) PRINTF_F(1, 2);
 E void NDECL(free_youbuf);
-E void VDECL(You, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(Your, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(You_feel, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(You_cant, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(You_hear, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(You_see, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(pline_The, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(There, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(verbalize, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(raw_printf, (const char *,...)) PRINTF_F(1,2);
-E void VDECL(impossible, (const char *,...)) PRINTF_F(1,2);
+E void VDECL(You, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(Your, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(You_feel, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(You_cant, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(You_hear, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(You_see, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(pline_The, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(There, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(verbalize, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(raw_printf, (const char *, ...)) PRINTF_F(1, 2);
+E void VDECL(impossible, (const char *, ...)) PRINTF_F(1, 2);
 E const char *FDECL(align_str, (ALIGNTYP_P));
 E void FDECL(mstatusline, (struct monst *));
 E void NDECL(ustatusline);
 E void NDECL(self_invis_message);
-E void FDECL(pudding_merge_message, (struct obj*, struct obj*));
+E void FDECL(pudding_merge_message, (struct obj *, struct obj *));
 
 /* ### polyself.c ### */
 
@@ -1754,34 +1772,34 @@ E int NDECL(dohide);
 E int NDECL(dopoly);
 E int NDECL(domindblast);
 E void FDECL(skinback, (BOOLEAN_P));
-E const char *FDECL(mbodypart, (struct monst *,int));
+E const char *FDECL(mbodypart, (struct monst *, int));
 E const char *FDECL(body_part, (int));
 E int NDECL(poly_gender);
-E void FDECL(ugolemeffects, (int,int));
+E void FDECL(ugolemeffects, (int, int));
 
 /* ### potion.c ### */
 
-E void FDECL(set_itimeout, (long *,long));
-E void FDECL(incr_itimeout, (long *,int));
-E void FDECL(make_confused, (long,BOOLEAN_P));
-E void FDECL(make_stunned, (long,BOOLEAN_P));
-E void FDECL(make_blinded, (long,BOOLEAN_P));
-E void FDECL(make_sick, (long, const char *, BOOLEAN_P,int));
-E void FDECL(make_slimed, (long,const char *));
-E void FDECL(make_stoned, (long,const char *,int,const char *));
-E void FDECL(make_vomiting, (long,BOOLEAN_P));
-E boolean FDECL(make_hallucinated, (long,BOOLEAN_P,long));
+E void FDECL(set_itimeout, (long *, long));
+E void FDECL(incr_itimeout, (long *, int));
+E void FDECL(make_confused, (long, BOOLEAN_P));
+E void FDECL(make_stunned, (long, BOOLEAN_P));
+E void FDECL(make_blinded, (long, BOOLEAN_P));
+E void FDECL(make_sick, (long, const char *, BOOLEAN_P, int));
+E void FDECL(make_slimed, (long, const char *));
+E void FDECL(make_stoned, (long, const char *, int, const char *));
+E void FDECL(make_vomiting, (long, BOOLEAN_P));
+E boolean FDECL(make_hallucinated, (long, BOOLEAN_P, long));
 E int NDECL(dodrink);
 E int FDECL(dopotion, (struct obj *));
 E int FDECL(peffects, (struct obj *));
-E void FDECL(healup, (int,int,BOOLEAN_P,BOOLEAN_P));
-E void FDECL(strange_feeling, (struct obj *,const char *));
-E void FDECL(potionhit, (struct monst *,struct obj *,BOOLEAN_P));
+E void FDECL(healup, (int, int, BOOLEAN_P, BOOLEAN_P));
+E void FDECL(strange_feeling, (struct obj *, const char *));
+E void FDECL(potionhit, (struct monst *, struct obj *, BOOLEAN_P));
 E void FDECL(potionbreathe, (struct obj *));
 E int NDECL(dodip);
 E void FDECL(mongrantswish, (struct monst **));
 E void FDECL(djinni_from_bottle, (struct obj *));
-E struct monst *FDECL(split_mon, (struct monst *,struct monst *));
+E struct monst *FDECL(split_mon, (struct monst *, struct monst *));
 E const char *NDECL(bottlename);
 
 /* ### pray.c ### */
@@ -1796,36 +1814,35 @@ E int NDECL(dopray);
 E const char *NDECL(u_gname);
 E int NDECL(doturn);
 E const char *NDECL(a_gname);
-E const char *FDECL(a_gname_at, (XCHAR_P x,XCHAR_P y));
+E const char *FDECL(a_gname_at, (XCHAR_P x, XCHAR_P y));
 E const char *FDECL(align_gname, (ALIGNTYP_P));
 E const char *FDECL(halu_gname, (ALIGNTYP_P));
 E const char *FDECL(align_gtitle, (ALIGNTYP_P));
-E void FDECL(altar_wrath, (int,int));
-
+E void FDECL(altar_wrath, (int, int));
 
 /* ### priest.c ### */
 
-E int FDECL(move_special, (struct monst *,BOOLEAN_P,SCHAR_P,BOOLEAN_P,BOOLEAN_P,
-                          XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P));
+E int FDECL(move_special, (struct monst *, BOOLEAN_P, SCHAR_P, BOOLEAN_P,
+                           BOOLEAN_P, XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P));
 E char FDECL(temple_occupied, (char *));
 E boolean FDECL(inhistemple, (struct monst *));
 E int FDECL(pri_move, (struct monst *));
-E void FDECL(priestini, (d_level *,struct mkroom *,int,int,BOOLEAN_P));
+E void FDECL(priestini, (d_level *, struct mkroom *, int, int, BOOLEAN_P));
 E aligntyp FDECL(mon_aligntyp, (struct monst *));
-E char *FDECL(priestname, (struct monst *,char *));
+E char *FDECL(priestname, (struct monst *, char *));
 E boolean FDECL(p_coaligned, (struct monst *));
 E struct monst *FDECL(findpriest, (CHAR_P));
 E void FDECL(intemple, (int));
 E void FDECL(forget_temple_entry, (struct monst *));
 E void FDECL(priest_talk, (struct monst *));
-E struct monst *FDECL(mk_roamer, (struct permonst *,ALIGNTYP_P,
-                                 XCHAR_P,XCHAR_P,BOOLEAN_P));
+E struct monst *FDECL(mk_roamer, (struct permonst *, ALIGNTYP_P, XCHAR_P,
+                                  XCHAR_P, BOOLEAN_P));
 E void FDECL(reset_hostility, (struct monst *));
-E boolean FDECL(in_your_sanctuary, (struct monst *,XCHAR_P,XCHAR_P));
+E boolean FDECL(in_your_sanctuary, (struct monst *, XCHAR_P, XCHAR_P));
 E void FDECL(ghod_hitsu, (struct monst *));
 E void NDECL(angry_priest);
 E void NDECL(clearpriests);
-E void FDECL(restpriest, (struct monst *,BOOLEAN_P));
+E void FDECL(restpriest, (struct monst *, BOOLEAN_P));
 E void FDECL(newepri, (struct monst *));
 E void FDECL(free_epri, (struct monst *));
 
@@ -1848,7 +1865,7 @@ E void NDECL(load_qtlist);
 E void NDECL(unload_qtlist);
 E short FDECL(quest_info, (int));
 E const char *NDECL(ldrname);
-E boolean FDECL(is_quest_artifact, (struct obj*));
+E boolean FDECL(is_quest_artifact, (struct obj *));
 E void FDECL(com_pager, (int));
 E void FDECL(qt_pager, (int));
 E struct permonst *NDECL(qt_montype);
@@ -1858,7 +1875,7 @@ E void NDECL(deliver_splev_message);
 
 #if defined(RANDOM) && !defined(__GO32__) /* djgpp has its own random */
 E void FDECL(srandom, (unsigned));
-E char *FDECL(initstate, (unsigned,char *,int));
+E char *FDECL(initstate, (unsigned, char *, int));
 E char *FDECL(setstate, (char *));
 E long NDECL(random);
 #endif /* RANDOM */
@@ -1869,23 +1886,24 @@ E void FDECL(learnscroll, (struct obj *));
 E char *FDECL(tshirt_text, (struct obj *, char *));
 E int NDECL(doread);
 E boolean FDECL(is_chargeable, (struct obj *));
-E void FDECL(recharge, (struct obj *,int));
+E void FDECL(recharge, (struct obj *, int));
 E void FDECL(forget_objects, (int));
 E void FDECL(forget_levels, (int));
 E void NDECL(forget_traps);
 E void FDECL(forget_map, (int));
 E int FDECL(seffects, (struct obj *));
-E void FDECL(drop_boulder_on_player, (BOOLEAN_P, BOOLEAN_P, BOOLEAN_P, BOOLEAN_P));
+E void FDECL(drop_boulder_on_player,
+             (BOOLEAN_P, BOOLEAN_P, BOOLEAN_P, BOOLEAN_P));
 E boolean FDECL(drop_boulder_on_monster, (int, int, BOOLEAN_P, BOOLEAN_P));
-E void FDECL(wand_explode, (struct obj *,int));
+E void FDECL(wand_explode, (struct obj *, int));
 #ifdef USE_TRAMPOLI
-E void FDECL(set_lit, (int,int,genericptr_t));
+E void FDECL(set_lit, (int, int, genericptr_t));
 #endif
-E void FDECL(litroom, (BOOLEAN_P,struct obj *));
+E void FDECL(litroom, (BOOLEAN_P, struct obj *));
 E void FDECL(do_genocide, (int));
 E void FDECL(punish, (struct obj *));
 E void NDECL(unpunish);
-E boolean FDECL(cant_revive, (int *,BOOLEAN_P,struct obj *));
+E boolean FDECL(cant_revive, (int *, BOOLEAN_P, struct obj *));
 E boolean NDECL(create_particular);
 
 /* ### rect.c ### */
@@ -1895,20 +1913,20 @@ E NhRect *FDECL(get_rect, (NhRect *));
 E NhRect *NDECL(rnd_rect);
 E void FDECL(remove_rect, (NhRect *));
 E void FDECL(add_rect, (NhRect *));
-E void FDECL(split_rects, (NhRect *,NhRect *));
+E void FDECL(split_rects, (NhRect *, NhRect *));
 
 /* ## region.c ### */
 E void NDECL(clear_regions);
 E void NDECL(run_regions);
-E boolean FDECL(in_out_region, (XCHAR_P,XCHAR_P));
-E boolean FDECL(m_in_out_region, (struct monst *,XCHAR_P,XCHAR_P));
+E boolean FDECL(in_out_region, (XCHAR_P, XCHAR_P));
+E boolean FDECL(m_in_out_region, (struct monst *, XCHAR_P, XCHAR_P));
 E void NDECL(update_player_regions);
 E void FDECL(update_monster_region, (struct monst *));
-E NhRegion *FDECL(visible_region_at, (XCHAR_P,XCHAR_P));
-E void FDECL(show_region, (NhRegion*, XCHAR_P, XCHAR_P));
-E void FDECL(save_regions, (int,int));
-E void FDECL(rest_regions, (int,BOOLEAN_P));
-E NhRegionFDECL(create_gas_cloud, (XCHAR_P, XCHAR_P, int, int));
+E NhRegion *FDECL(visible_region_at, (XCHAR_P, XCHAR_P));
+E void FDECL(show_region, (NhRegion *, XCHAR_P, XCHAR_P));
+E void FDECL(save_regions, (int, int));
+E void FDECL(rest_regions, (int, BOOLEAN_P));
+E NhRegion *FDECL(create_gas_cloud, (XCHAR_P, XCHAR_P, int, int));
 E boolean NDECL(region_danger);
 E void NDECL(region_safety);
 
@@ -1916,31 +1934,31 @@ E void NDECL(region_safety);
 
 E void FDECL(inven_inuse, (BOOLEAN_P));
 E int FDECL(dorecover, (int));
-E void FDECL(restcemetery, (int,struct cemetery **));
+E void FDECL(restcemetery, (int, struct cemetery **));
 E void FDECL(trickery, (char *));
-E void FDECL(getlev, (int,int,XCHAR_P,BOOLEAN_P));
+E void FDECL(getlev, (int, int, XCHAR_P, BOOLEAN_P));
 E void FDECL(get_plname_from_file, (int, char *));
 #ifdef SELECTSAVED
 E int FDECL(restore_menu, (winid));
 #endif
 E void NDECL(minit);
 E boolean FDECL(lookup_id_mapping, (unsigned, unsigned *));
-E void FDECL(mread, (int,genericptr_t,unsigned int));
-E int FDECL(validate, (int,const char *));
+E void FDECL(mread, (int, genericptr_t, unsigned int));
+E int FDECL(validate, (int, const char *));
 E void NDECL(reset_restpref);
 E void FDECL(set_restpref, (const char *));
 E void FDECL(set_savepref, (const char *));
 
 /* ### rip.c ### */
 
-E void FDECL(genl_outrip, (winid,int,time_t));
+E void FDECL(genl_outrip, (winid, int, time_t));
 
 /* ### rnd.c ### */
 
 E int FDECL(rn2, (int));
 E int FDECL(rnl, (int));
 E int FDECL(rnd, (int));
-E int FDECL(d, (int,int));
+E int FDECL(d, (int, int));
 E int FDECL(rne, (int));
 E int FDECL(rnz, (int));
 
@@ -1968,22 +1986,22 @@ E boolean FDECL(ok_align, (int, int, int, int));
 E int FDECL(pick_align, (int, int, int, int));
 E void NDECL(rigid_role_checks);
 E boolean FDECL(setrolefilter, (char *));
-E char *FDECL(build_plselection_prompt, (char *,int,int,int,int,int));
-E char *FDECL(root_plselection_prompt, (char *,int,int,int,int,int));
+E char *FDECL(build_plselection_prompt, (char *, int, int, int, int, int));
+E char *FDECL(root_plselection_prompt, (char *, int, int, int, int, int));
 E void NDECL(plnamesuffix);
-E void FDECL(role_selection_prolog, (int,winid));
-E void FDECL(role_menu_extra, (int,winid));
+E void FDECL(role_selection_prolog, (int, winid));
+E void FDECL(role_menu_extra, (int, winid));
 E void NDECL(role_init);
 E const char *FDECL(Hello, (struct monst *));
 E const char *NDECL(Goodbye);
 
 /* ### rumors.c ### */
 
-E char *FDECL(getrumor, (int,char *, BOOLEAN_P));
+E char *FDECL(getrumor, (int, char *, BOOLEAN_P));
 E char *FDECL(get_rnd_text, (const char *, char *));
-E void FDECL(outrumor, (int,int));
+E void FDECL(outrumor, (int, int));
 E void FDECL(outoracle, (BOOLEAN_P, BOOLEAN_P));
-E void FDECL(save_oracles, (int,int));
+E void FDECL(save_oracles, (int, int));
 E void FDECL(restore_oracles, (int));
 E int FDECL(doconsult, (struct monst *));
 E void NDECL(rumor_check);
@@ -1997,24 +2015,24 @@ E boolean FDECL(tricked_fileremoved, (int, char *));
 E void NDECL(savestateinlock);
 #endif
 #ifdef MFLOPPY
-E boolean FDECL(savelev, (int,XCHAR_P,int));
+E boolean FDECL(savelev, (int, XCHAR_P, int));
 E boolean FDECL(swapin_file, (int));
 E void NDECL(co_false);
 #else
-E void FDECL(savelev, (int,XCHAR_P,int));
+E void FDECL(savelev, (int, XCHAR_P, int));
 #endif
 E genericptr_t FDECL(mon_to_buffer, (struct monst *, int *));
 E void FDECL(bufon, (int));
 E void FDECL(bufoff, (int));
 E void FDECL(bflush, (int));
-E void FDECL(bwrite, (int,genericptr_t,unsigned int));
+E void FDECL(bwrite, (int, genericptr_t, unsigned int));
 E void FDECL(bclose, (int));
 E void FDECL(def_bclose, (int));
 #if defined(ZEROCOMP)
 E void FDECL(zerocomp_bclose, (int));
 #endif
-E void FDECL(savecemetery, (int,int,struct cemetery **));
-E void FDECL(savefruitchn, (int,int));
+E void FDECL(savecemetery, (int, int, struct cemetery **));
+E void FDECL(savefruitchn, (int, int));
 E void FDECL(store_plname_in_file, (int));
 E void NDECL(free_dungeons);
 E void NDECL(freedynamicdata);
@@ -2025,74 +2043,76 @@ E void FDECL(store_savefileinfo, (int));
 E long FDECL(money2mon, (struct monst *, long));
 E void FDECL(money2u, (struct monst *, long));
 E void FDECL(shkgone, (struct monst *));
-E void FDECL(set_residency, (struct monst *,BOOLEAN_P));
-E void FDECL(replshk, (struct monst *,struct monst *));
-E void FDECL(restshk, (struct monst *,BOOLEAN_P));
-E char FDECL(inside_shop, (XCHAR_P,XCHAR_P));
-E void FDECL(u_left_shop, (char *,BOOLEAN_P));
-E void FDECL(remote_burglary, (XCHAR_P,XCHAR_P));
+E void FDECL(set_residency, (struct monst *, BOOLEAN_P));
+E void FDECL(replshk, (struct monst *, struct monst *));
+E void FDECL(restshk, (struct monst *, BOOLEAN_P));
+E char FDECL(inside_shop, (XCHAR_P, XCHAR_P));
+E void FDECL(u_left_shop, (char *, BOOLEAN_P));
+E void FDECL(remote_burglary, (XCHAR_P, XCHAR_P));
 E void FDECL(u_entered_shop, (char *));
 E void FDECL(pick_pick, (struct obj *));
-E boolean FDECL(same_price, (struct obj *,struct obj *));
+E boolean FDECL(same_price, (struct obj *, struct obj *));
 E void NDECL(shopper_financial_report);
 E int FDECL(inhishop, (struct monst *));
 E struct monst *FDECL(shop_keeper, (CHAR_P));
 E boolean FDECL(tended_shop, (struct mkroom *));
 E boolean FDECL(is_unpaid, (struct obj *));
 E void FDECL(delete_contents, (struct obj *));
-E void FDECL(obfree, (struct obj *,struct obj *));
-E void FDECL(home_shk, (struct monst *,BOOLEAN_P));
-E void FDECL(make_happy_shk, (struct monst *,BOOLEAN_P));
+E void FDECL(obfree, (struct obj *, struct obj *));
+E void FDECL(home_shk, (struct monst *, BOOLEAN_P));
+E void FDECL(make_happy_shk, (struct monst *, BOOLEAN_P));
 E void FDECL(make_happy_shoppers, (BOOLEAN_P));
 E void FDECL(hot_pursuit, (struct monst *));
-E void FDECL(make_angry_shk, (struct monst *,XCHAR_P,XCHAR_P));
+E void FDECL(make_angry_shk, (struct monst *, XCHAR_P, XCHAR_P));
 E int NDECL(dopay);
 E boolean FDECL(paybill, (int));
 E void NDECL(finish_paybill);
 E struct obj *FDECL(find_oid, (unsigned));
-E long FDECL(contained_cost, (struct obj *,struct monst *,long,BOOLEAN_P, BOOLEAN_P));
+E long FDECL(contained_cost,
+             (struct obj *, struct monst *, long, BOOLEAN_P, BOOLEAN_P));
 E long FDECL(contained_gold, (struct obj *));
 E void FDECL(picked_container, (struct obj *));
-E void FDECL(alter_cost, (struct obj *,long));
-E long FDECL(unpaid_cost, (struct obj *,BOOLEAN_P));
-E boolean FDECL(billable, (struct monst **,struct obj *,CHAR_P,BOOLEAN_P));
-E void FDECL(addtobill, (struct obj *,BOOLEAN_P,BOOLEAN_P,BOOLEAN_P));
-E void FDECL(splitbill, (struct obj *,struct obj *));
-E void FDECL(subfrombill, (struct obj *,struct monst *));
-E long FDECL(stolen_value, (struct obj *,XCHAR_P,XCHAR_P,BOOLEAN_P,BOOLEAN_P));
+E void FDECL(alter_cost, (struct obj *, long));
+E long FDECL(unpaid_cost, (struct obj *, BOOLEAN_P));
+E boolean FDECL(billable, (struct monst **, struct obj *, CHAR_P, BOOLEAN_P));
+E void FDECL(addtobill, (struct obj *, BOOLEAN_P, BOOLEAN_P, BOOLEAN_P));
+E void FDECL(splitbill, (struct obj *, struct obj *));
+E void FDECL(subfrombill, (struct obj *, struct monst *));
+E long FDECL(stolen_value,
+             (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P, BOOLEAN_P));
 E void FDECL(sellobj_state, (int));
-E void FDECL(sellobj, (struct obj *,XCHAR_P,XCHAR_P));
+E void FDECL(sellobj, (struct obj *, XCHAR_P, XCHAR_P));
 E int FDECL(doinvbill, (int));
-E struct monst *FDECL(shkcatch, (struct obj *,XCHAR_P,XCHAR_P));
-E void FDECL(add_damage, (XCHAR_P,XCHAR_P,long));
-E int FDECL(repair_damage, (struct monst *,struct damage *,BOOLEAN_P));
+E struct monst *FDECL(shkcatch, (struct obj *, XCHAR_P, XCHAR_P));
+E void FDECL(add_damage, (XCHAR_P, XCHAR_P, long));
+E int FDECL(repair_damage, (struct monst *, struct damage *, BOOLEAN_P));
 E int FDECL(shk_move, (struct monst *));
 E void FDECL(after_shk_move, (struct monst *));
 E boolean FDECL(is_fshk, (struct monst *));
 E void FDECL(shopdig, (int));
-E void FDECL(pay_for_damage, (const char *,BOOLEAN_P));
-E boolean FDECL(costly_spot, (XCHAR_P,XCHAR_P));
-E struct obj *FDECL(shop_object, (XCHAR_P,XCHAR_P));
+E void FDECL(pay_for_damage, (const char *, BOOLEAN_P));
+E boolean FDECL(costly_spot, (XCHAR_P, XCHAR_P));
+E struct obj *FDECL(shop_object, (XCHAR_P, XCHAR_P));
 E void FDECL(price_quote, (struct obj *));
 E void FDECL(shk_chat, (struct monst *));
-E void FDECL(check_unpaid_usage, (struct obj *,BOOLEAN_P));
+E void FDECL(check_unpaid_usage, (struct obj *, BOOLEAN_P));
 E void FDECL(check_unpaid, (struct obj *));
-E void FDECL(costly_gold, (XCHAR_P,XCHAR_P,long));
-E boolean FDECL(block_door, (XCHAR_P,XCHAR_P));
-E boolean FDECL(block_entry, (XCHAR_P,XCHAR_P));
-E char *FDECL(shk_your, (char *,struct obj *));
-E char *FDECL(Shk_Your, (char *,struct obj *));
+E void FDECL(costly_gold, (XCHAR_P, XCHAR_P, long));
+E boolean FDECL(block_door, (XCHAR_P, XCHAR_P));
+E boolean FDECL(block_entry, (XCHAR_P, XCHAR_P));
+E char *FDECL(shk_your, (char *, struct obj *));
+E char *FDECL(Shk_Your, (char *, struct obj *));
 
 /* ### shknam.c ### */
 
 E void FDECL(neweshk, (struct monst *));
 E void FDECL(free_eshk, (struct monst *));
-E void FDECL(stock_room, (int,struct mkroom *));
-E boolean FDECL(saleable, (struct monst *,struct obj *));
+E void FDECL(stock_room, (int, struct mkroom *));
+E boolean FDECL(saleable, (struct monst *, struct obj *));
 E int FDECL(get_shop_item, (int));
 E const char *FDECL(shkname, (struct monst *));
 E boolean FDECL(shkname_is_pname, (struct monst *));
-E boolean FDECL(is_izchak, (struct monst *,BOOLEAN_P));
+E boolean FDECL(is_izchak, (struct monst *, BOOLEAN_P));
 
 /* ### sit.c ### */
 
@@ -2119,7 +2139,7 @@ E void FDECL(play_sound_for_message, (const char *));
 
 E void NDECL(sys_early_init);
 E void NDECL(sysopt_release);
-E void FDECL(sysopt_seduce_set,(int));
+E void FDECL(sysopt_seduce_set, (int));
 
 /* ### sys/msdos/sound.c ### */
 
@@ -2129,12 +2149,13 @@ E int FDECL(assign_soundcard, (char *));
 
 /* ### sp_lev.c ### */
 
-E boolean FDECL(check_room, (xchar *,xchar *,xchar *,xchar *,BOOLEAN_P));
-E boolean FDECL(create_room, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,
-                             XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P));
-E void FDECL(create_secret_door, (struct mkroom *,XCHAR_P));
-E boolean FDECL(dig_corridor, (coord *,coord *,BOOLEAN_P,SCHAR_P,SCHAR_P));
-E void FDECL(fill_room, (struct mkroom *,BOOLEAN_P));
+E boolean FDECL(check_room, (xchar *, xchar *, xchar *, xchar *, BOOLEAN_P));
+E boolean FDECL(create_room, (XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P, XCHAR_P,
+                              XCHAR_P, XCHAR_P, XCHAR_P));
+E void FDECL(create_secret_door, (struct mkroom *, XCHAR_P));
+E boolean
+FDECL(dig_corridor, (coord *, coord *, BOOLEAN_P, SCHAR_P, SCHAR_P));
+E void FDECL(fill_room, (struct mkroom *, BOOLEAN_P));
 E boolean FDECL(load_special, (const char *));
 
 /* ### spell.c ### */
@@ -2144,11 +2165,11 @@ E int NDECL(learn);
 #endif
 E int FDECL(study_book, (struct obj *));
 E void FDECL(book_disappears, (struct obj *));
-E void FDECL(book_substitution, (struct obj *,struct obj *));
+E void FDECL(book_substitution, (struct obj *, struct obj *));
 E void NDECL(age_spells);
 E int NDECL(docast);
 E int FDECL(spell_skilltype, (int));
-E int FDECL(spelleffects, (int,BOOLEAN_P));
+E int FDECL(spelleffects, (int, BOOLEAN_P));
 E void NDECL(losespells);
 E int NDECL(dovspell);
 E void FDECL(initialspell, (struct obj *));
@@ -2160,14 +2181,14 @@ E int NDECL(stealarm);
 #endif
 E long FDECL(somegold, (long));
 E void FDECL(stealgold, (struct monst *));
-E void FDECL(remove_worn_item, (struct obj *,BOOLEAN_P));
+E void FDECL(remove_worn_item, (struct obj *, BOOLEAN_P));
 E int FDECL(steal, (struct monst *, char *));
-E int FDECL(mpickobj, (struct monst *,struct obj *));
+E int FDECL(mpickobj, (struct monst *, struct obj *));
 E void FDECL(stealamulet, (struct monst *));
-E void FDECL(maybe_absorb_item, (struct monst *,struct obj *,int,int));
-E void FDECL(mdrop_obj, (struct monst *,struct obj *,BOOLEAN_P));
+E void FDECL(maybe_absorb_item, (struct monst *, struct obj *, int, int));
+E void FDECL(mdrop_obj, (struct monst *, struct obj *, BOOLEAN_P));
 E void FDECL(mdrop_special_objs, (struct monst *));
-E void FDECL(relobj, (struct monst *,int,BOOLEAN_P));
+E void FDECL(relobj, (struct monst *, int, BOOLEAN_P));
 E struct obj *FDECL(findgold, (struct obj *));
 
 /* ### steed.c ### */
@@ -2181,17 +2202,18 @@ E boolean FDECL(mount_steed, (struct monst *, BOOLEAN_P));
 E void NDECL(exercise_steed);
 E void NDECL(kick_steed);
 E void FDECL(dismount_steed, (int));
-E void FDECL(place_monster, (struct monst *,int,int));
+E void FDECL(place_monster, (struct monst *, int, int));
 E boolean FDECL(stucksteed, (BOOLEAN_P));
 
 /* ### teleport.c ### */
 
-E boolean FDECL(goodpos, (int,int,struct monst *,unsigned));
-E boolean FDECL(enexto, (coord *,XCHAR_P,XCHAR_P,struct permonst *));
-E boolean FDECL(enexto_core, (coord *,XCHAR_P,XCHAR_P,struct permonst *,unsigned));
-E void FDECL(teleds, (int,int,BOOLEAN_P));
+E boolean FDECL(goodpos, (int, int, struct monst *, unsigned));
+E boolean FDECL(enexto, (coord *, XCHAR_P, XCHAR_P, struct permonst *));
+E boolean
+FDECL(enexto_core, (coord *, XCHAR_P, XCHAR_P, struct permonst *, unsigned));
+E void FDECL(teleds, (int, int, BOOLEAN_P));
 E boolean FDECL(safe_teleds, (BOOLEAN_P));
-E boolean FDECL(teleport_pet, (struct monst *,BOOLEAN_P));
+E boolean FDECL(teleport_pet, (struct monst *, BOOLEAN_P));
 E void NDECL(tele);
 E boolean FDECL(scrolltele, (struct obj *));
 E int NDECL(dotele);
@@ -2199,14 +2221,15 @@ E void NDECL(level_tele);
 E void FDECL(domagicportal, (struct trap *));
 E void FDECL(tele_trap, (struct trap *));
 E void FDECL(level_tele_trap, (struct trap *));
-E void FDECL(rloc_to, (struct monst *,int,int));
+E void FDECL(rloc_to, (struct monst *, int, int));
 E boolean FDECL(rloc, (struct monst *, BOOLEAN_P));
 E boolean FDECL(tele_restrict, (struct monst *));
-E void FDECL(mtele_trap, (struct monst *, struct trap *,int));
-E int FDECL(mlevel_tele_trap, (struct monst *, struct trap *,BOOLEAN_P,int));
+E void FDECL(mtele_trap, (struct monst *, struct trap *, int));
+E int FDECL(mlevel_tele_trap,
+            (struct monst *, struct trap *, BOOLEAN_P, int));
 E boolean FDECL(rloco, (struct obj *));
 E int NDECL(random_teleport_level);
-E boolean FDECL(u_teleport_mon, (struct monst *,BOOLEAN_P));
+E boolean FDECL(u_teleport_mon, (struct monst *, BOOLEAN_P));
 
 /* ### tile.c ### */
 #ifdef USE_TILES
@@ -2229,78 +2252,80 @@ E void FDECL(end_burn, (struct obj *, BOOLEAN_P));
 E void NDECL(do_storms);
 E boolean FDECL(start_timer, (long, SHORT_P, SHORT_P, ANY_P *));
 E long FDECL(stop_timer, (SHORT_P, ANY_P *));
-E long FDECL(peek_timer, (SHORT_P,ANY_P *));
+E long FDECL(peek_timer, (SHORT_P, ANY_P *));
 E void NDECL(run_timers);
 E void FDECL(obj_move_timers, (struct obj *, struct obj *));
 E void FDECL(obj_split_timers, (struct obj *, struct obj *));
 E void FDECL(obj_stop_timers, (struct obj *));
-E boolean FDECL(obj_has_timer, (struct obj *,SHORT_P));
-E void FDECL(spot_stop_timers, (XCHAR_P,XCHAR_P,SHORT_P));
-E long FDECL(spot_time_expires, (XCHAR_P,XCHAR_P,SHORT_P));
-E long FDECL(spot_time_left, (XCHAR_P,XCHAR_P,SHORT_P));
+E boolean FDECL(obj_has_timer, (struct obj *, SHORT_P));
+E void FDECL(spot_stop_timers, (XCHAR_P, XCHAR_P, SHORT_P));
+E long FDECL(spot_time_expires, (XCHAR_P, XCHAR_P, SHORT_P));
+E long FDECL(spot_time_left, (XCHAR_P, XCHAR_P, SHORT_P));
 E boolean FDECL(obj_is_local, (struct obj *));
-E void FDECL(save_timers, (int,int,int));
-E void FDECL(restore_timers, (int,int,BOOLEAN_P,long));
+E void FDECL(save_timers, (int, int, int));
+E void FDECL(restore_timers, (int, int, BOOLEAN_P, long));
 E void FDECL(relink_timers, (BOOLEAN_P));
 E int NDECL(wiz_timeout_queue);
 E void NDECL(timer_sanity_check);
 
 /* ### topten.c ### */
 
-E void FDECL(formatkiller, (char *,unsigned,int));
-E void FDECL(topten, (int,time_t));
-E void FDECL(prscore, (int,char **));
+E void FDECL(formatkiller, (char *, unsigned, int));
+E void FDECL(topten, (int, time_t));
+E void FDECL(prscore, (int, char **));
 E struct obj *FDECL(tt_oname, (struct obj *));
 
 /* ### track.c ### */
 
 E void NDECL(initrack);
 E void NDECL(settrack);
-E coord *FDECL(gettrack, (int,int));
+E coord *FDECL(gettrack, (int, int));
 
 /* ### trap.c ### */
 
-E boolean FDECL(burnarmor,(struct monst *));
-E int FDECL(erode_obj, (struct obj *,const char *,int,int));
-E boolean FDECL(grease_protect, (struct obj *,const char *,struct monst *));
-E struct trap *FDECL(maketrap, (int,int,int));
+E boolean FDECL(burnarmor, (struct monst *));
+E int FDECL(erode_obj, (struct obj *, const char *, int, int));
+E boolean FDECL(grease_protect, (struct obj *, const char *, struct monst *));
+E struct trap *FDECL(maketrap, (int, int, int));
 E void FDECL(fall_through, (BOOLEAN_P));
-E struct monst *FDECL(animate_statue, (struct obj *,XCHAR_P,XCHAR_P,int,int *));
+E struct monst *FDECL(animate_statue,
+                      (struct obj *, XCHAR_P, XCHAR_P, int, int *));
 E struct monst *FDECL(activate_statue_trap,
-                       (struct trap *,XCHAR_P,XCHAR_P,BOOLEAN_P));
+                      (struct trap *, XCHAR_P, XCHAR_P, BOOLEAN_P));
 E void FDECL(dotrap, (struct trap *, unsigned));
 E void FDECL(seetrap, (struct trap *));
 E void FDECL(feeltrap, (struct trap *));
 E int FDECL(mintrap, (struct monst *));
 E void FDECL(instapetrify, (const char *));
-E void FDECL(minstapetrify, (struct monst *,BOOLEAN_P));
+E void FDECL(minstapetrify, (struct monst *, BOOLEAN_P));
 E void FDECL(selftouch, (const char *));
-E void FDECL(mselftouch, (struct monst *,const char *,BOOLEAN_P));
+E void FDECL(mselftouch, (struct monst *, const char *, BOOLEAN_P));
 E void NDECL(float_up);
-E void FDECL(fill_pit, (int,int));
+E void FDECL(fill_pit, (int, int));
 E int FDECL(float_down, (long, long));
 E void NDECL(climb_pit);
-E boolean FDECL(fire_damage, (struct obj *,BOOLEAN_P,XCHAR_P,XCHAR_P));
-E int FDECL(fire_damage_chain, (struct obj *,BOOLEAN_P,BOOLEAN_P,XCHAR_P,XCHAR_P));
+E boolean FDECL(fire_damage, (struct obj *, BOOLEAN_P, XCHAR_P, XCHAR_P));
+E int FDECL(fire_damage_chain,
+            (struct obj *, BOOLEAN_P, BOOLEAN_P, XCHAR_P, XCHAR_P));
 E void acid_damage(struct obj *);
-E int FDECL(water_damage, (struct obj *,const char*,BOOLEAN_P));
-E void FDECL(water_damage_chain, (struct obj *,BOOLEAN_P));
+E int FDECL(water_damage, (struct obj *, const char *, BOOLEAN_P));
+E void FDECL(water_damage_chain, (struct obj *, BOOLEAN_P));
 E boolean NDECL(drown);
 E void FDECL(drain_en, (int));
 E int NDECL(dountrap);
-E void FDECL(cnv_trap_obj, (int,int,struct trap *,BOOLEAN_P));
+E void FDECL(cnv_trap_obj, (int, int, struct trap *, BOOLEAN_P));
 E int FDECL(untrap, (BOOLEAN_P));
-E boolean FDECL(openholdingtrap, (struct monst *,boolean *));
-E boolean FDECL(closeholdingtrap, (struct monst *,boolean *));
-E boolean FDECL(openfallingtrap, (struct monst *,BOOLEAN_P,boolean *));
-E boolean FDECL(chest_trap, (struct obj *,int,BOOLEAN_P));
+E boolean FDECL(openholdingtrap, (struct monst *, boolean *));
+E boolean FDECL(closeholdingtrap, (struct monst *, boolean *));
+E boolean FDECL(openfallingtrap, (struct monst *, BOOLEAN_P, boolean *));
+E boolean FDECL(chest_trap, (struct obj *, int, BOOLEAN_P));
 E void FDECL(deltrap, (struct trap *));
 E boolean FDECL(delfloortrap, (struct trap *));
-E struct trap *FDECL(t_at, (int,int));
-E void FDECL(b_trapped, (const char *,int));
+E struct trap *FDECL(t_at, (int, int));
+E void FDECL(b_trapped, (const char *, int));
 E boolean NDECL(unconscious);
 E void FDECL(blow_up_landmine, (struct trap *));
-E int FDECL(launch_obj,(SHORT_P,int,int,int,int,int));
+E int FDECL(launch_obj, (SHORT_P, int, int, int, int, int));
 E boolean NDECL(launch_in_progress);
 E void NDECL(force_launch_placement);
 E boolean FDECL(uteetering_at_seen_pit, (struct trap *));
@@ -2314,26 +2339,27 @@ E void NDECL(u_init);
 
 /* ### uhitm.c ### */
 
-E void FDECL(erode_armor,(struct monst *,int));
-E boolean FDECL(attack_checks, (struct monst *,struct obj *));
+E void FDECL(erode_armor, (struct monst *, int));
+E boolean FDECL(attack_checks, (struct monst *, struct obj *));
 E void FDECL(check_caitiff, (struct monst *));
-E int FDECL(find_roll_to_hit, (struct monst *,UCHAR_P,struct obj *,int *,int *));
+E int FDECL(find_roll_to_hit,
+            (struct monst *, UCHAR_P, struct obj *, int *, int *));
 E boolean FDECL(attack, (struct monst *));
-E boolean FDECL(hmon, (struct monst *,struct obj *,int));
-E int FDECL(damageum, (struct monst *,struct attack *));
-E void FDECL(missum, (struct monst *,struct attack *,BOOLEAN_P));
-E int FDECL(passive, (struct monst *,BOOLEAN_P,int,UCHAR_P,BOOLEAN_P));
-E void FDECL(passive_obj, (struct monst *,struct obj *,struct attack *));
+E boolean FDECL(hmon, (struct monst *, struct obj *, int));
+E int FDECL(damageum, (struct monst *, struct attack *));
+E void FDECL(missum, (struct monst *, struct attack *, BOOLEAN_P));
+E int FDECL(passive, (struct monst *, BOOLEAN_P, int, UCHAR_P, BOOLEAN_P));
+E void FDECL(passive_obj, (struct monst *, struct obj *, struct attack *));
 E void FDECL(stumble_onto_mimic, (struct monst *));
-E int FDECL(flash_hits_mon, (struct monst *,struct obj *));
-E void FDECL(light_hits_gremlin, (struct monst *,int));
+E int FDECL(flash_hits_mon, (struct monst *, struct obj *));
+E void FDECL(light_hits_gremlin, (struct monst *, int));
 
 /* ### unixmain.c ### */
 
 #ifdef UNIX
-# ifdef PORT_HELP
+#ifdef PORT_HELP
 E void NDECL(port_help);
-# endif
+#endif
 E void FDECL(sethanguphandler, (void (*)(int)));
 E boolean NDECL(authorize_wizard_mode);
 E boolean FDECL(check_user_string, (char *));
@@ -2347,7 +2373,7 @@ E void FDECL(settty, (const char *));
 E void NDECL(setftty);
 E void NDECL(intron);
 E void NDECL(introff);
-E void VDECL(error, (const char *,...)) PRINTF_F(1,2);
+E void VDECL(error, (const char *, ...)) PRINTF_F(1, 2);
 #endif /* UNIX || __BEOS__ */
 
 /* ### unixunix.c ### */
@@ -2355,26 +2381,26 @@ E void VDECL(error, (const char *,...)) PRINTF_F(1,2);
 #ifdef UNIX
 E void NDECL(getlock);
 E void FDECL(regularize, (char *));
-# if defined(TIMED_DELAY) && !defined(msleep) && defined(SYSV)
+#if defined(TIMED_DELAY) && !defined(msleep) && defined(SYSV)
 E void FDECL(msleep, (unsigned));
-# endif
-# ifdef SHELL
+#endif
+#ifdef SHELL
 E int NDECL(dosh);
-# endif /* SHELL */
-# if defined(SHELL) || defined(DEF_PAGER) || defined(DEF_MAILREADER)
+#endif /* SHELL */
+#if defined(SHELL) || defined(DEF_PAGER) || defined(DEF_MAILREADER)
 E int FDECL(child, (int));
-# endif
-# ifdef PANICTRACE
+#endif
+#ifdef PANICTRACE
 E boolean FDECL(file_exists, (const char *));
-# endif
+#endif
 #endif /* UNIX */
 
 /* ### unixres.c ### */
 
 #ifdef UNIX
-# ifdef GNOME_GRAPHICS 
+#ifdef GNOME_GRAPHICS
 E int FDECL(hide_privileges, (BOOLEAN_P));
-# endif
+#endif
 #endif /* UNIX */
 
 /* ### vault.c ### */
@@ -2399,9 +2425,9 @@ E int NDECL(doextversion);
 #ifdef MICRO
 E boolean FDECL(comp_times, (long));
 #endif
-E boolean FDECL(check_version, (struct version_info *,
-                               const char *,BOOLEAN_P));
-E boolean FDECL(uptodate, (int,const char *));
+E boolean
+FDECL(check_version, (struct version_info *, const char *, BOOLEAN_P));
+E boolean FDECL(uptodate, (int, const char *));
 E void FDECL(store_version, (int));
 E unsigned long FDECL(get_feature_notice_ver, (char *));
 E unsigned long NDECL(get_current_feature_ver);
@@ -2415,11 +2441,11 @@ E void FDECL(append_port_id, (char *));
 
 #ifdef MSDOS
 E int FDECL(assign_video, (char *));
-# ifdef NO_TERMS
+#ifdef NO_TERMS
 E void NDECL(gr_init);
 E void NDECL(gr_finish);
-# endif
-E void FDECL(tileview,(BOOLEAN_P));
+#endif
+E void FDECL(tileview, (BOOLEAN_P));
 #endif
 #ifdef VIDEOSHADES
 E int FDECL(assign_videoshades, (char *));
@@ -2435,25 +2461,25 @@ E void NDECL(vis_tab_init);
 /* ### vision.c ### */
 
 E void NDECL(vision_init);
-E int FDECL(does_block, (int,int,struct rm*));
+E int FDECL(does_block, (int, int, struct rm *));
 E void NDECL(vision_reset);
 E void FDECL(vision_recalc, (int));
-E void FDECL(block_point, (int,int));
-E void FDECL(unblock_point, (int,int));
-E boolean FDECL(clear_path, (int,int,int,int));
-E void FDECL(do_clear_area, (int,int,int,
-                            void (*)(int,int,genericptr_t),genericptr_t));
+E void FDECL(block_point, (int, int));
+E void FDECL(unblock_point, (int, int));
+E boolean FDECL(clear_path, (int, int, int, int));
+E void FDECL(do_clear_area,
+             (int, int, int, void (*)(int, int, genericptr_t), genericptr_t));
 E unsigned FDECL(howmonseen, (struct monst *));
 
 #ifdef VMS
 
 /* ### vmsfiles.c ### */
 
-E int FDECL(vms_link, (const char *,const char *));
+E int FDECL(vms_link, (const char *, const char *));
 E int FDECL(vms_unlink, (const char *));
-E int FDECL(vms_creat, (const char *,unsigned int));
-E int FDECL(vms_open, (const char *,int,unsigned int));
-E boolean FDECL(same_dir, (const char *,const char *));
+E int FDECL(vms_creat, (const char *, unsigned int));
+E int FDECL(vms_open, (const char *, int, unsigned int));
+E boolean FDECL(same_dir, (const char *, const char *));
 E int FDECL(c__translate, (int));
 E char *FDECL(vms_basename, (const char *));
 
@@ -2462,16 +2488,16 @@ E char *FDECL(vms_basename, (const char *));
 E unsigned long NDECL(init_broadcast_trapping);
 E unsigned long NDECL(enable_broadcast_trapping);
 E unsigned long NDECL(disable_broadcast_trapping);
-# if 0
+#if 0
 E struct mail_info *NDECL(parse_next_broadcast);
-# endif /*0*/
+#endif /*0*/
 
 /* ### vmsmain.c ### */
 
 E int FDECL(main, (int, char **));
-# ifdef CHDIR
-E void FDECL(chdirx, (const char *,BOOLEAN_P));
-# endif /* CHDIR */
+#ifdef CHDIR
+E void FDECL(chdirx, (const char *, BOOLEAN_P));
+#endif /* CHDIR */
 E void FDECL(sethanguphandler, (void (*)(int)));
 E boolean NDECL(authorize_wizard_mode);
 
@@ -2492,7 +2518,7 @@ E void FDECL(shuttty, (const char *));
 E void NDECL(setftty);
 E void NDECL(intron);
 E void NDECL(introff);
-E void VDECL(error, (const char *,...)) PRINTF_F(1,2);
+E void VDECL(error, (const char *, ...)) PRINTF_F(1, 2);
 #ifdef TIMED_DELAY
 E void FDECL(msleep, (unsigned));
 #endif
@@ -2503,43 +2529,43 @@ E void NDECL(getlock);
 E void FDECL(regularize, (char *));
 E int NDECL(vms_getuid);
 E boolean FDECL(file_is_stmlf, (int));
-E int FDECL(vms_define, (const char *,const char *,int));
+E int FDECL(vms_define, (const char *, const char *, int));
 E int FDECL(vms_putenv, (const char *));
 E char *NDECL(verify_termcap);
-# if defined(CHDIR) || defined(SHELL) || defined(SECURE)
+#if defined(CHDIR) || defined(SHELL) || defined(SECURE)
 E void NDECL(privoff);
 E void NDECL(privon);
-# endif
-# ifdef SHELL
+#endif
+#ifdef SHELL
 E int NDECL(dosh);
-# endif
-# if defined(SHELL) || defined(MAIL)
-E int FDECL(vms_doshell, (const char *,BOOLEAN_P));
-# endif
-# ifdef SUSPEND
+#endif
+#if defined(SHELL) || defined(MAIL)
+E int FDECL(vms_doshell, (const char *, BOOLEAN_P));
+#endif
+#ifdef SUSPEND
 E int NDECL(dosuspend);
-# endif
-# ifdef SELECTSAVED
-E int FDECL(vms_get_saved_games, (const char *,char ***));
-# endif
+#endif
+#ifdef SELECTSAVED
+E int FDECL(vms_get_saved_games, (const char *, char ***));
+#endif
 
 #endif /* VMS */
 
 /* ### weapon.c ### */
 
 E const char *FDECL(weapon_descr, (struct obj *));
-E int FDECL(hitval, (struct obj *,struct monst *));
-E int FDECL(dmgval, (struct obj *,struct monst *));
+E int FDECL(hitval, (struct obj *, struct monst *));
+E int FDECL(dmgval, (struct obj *, struct monst *));
 E struct obj *FDECL(select_rwep, (struct monst *));
 E struct obj *FDECL(select_hwep, (struct monst *));
-E void FDECL(possibly_unwield, (struct monst *,BOOLEAN_P));
+E void FDECL(possibly_unwield, (struct monst *, BOOLEAN_P));
 E void FDECL(mwepgone, (struct monst *));
 E int FDECL(mon_wield_item, (struct monst *));
 E int NDECL(abon);
 E int NDECL(dbon);
 E int NDECL(enhance_weapon_skill);
 E void FDECL(unrestrict_weapon_skill, (int));
-E void FDECL(use_skill, (int,int));
+E void FDECL(use_skill, (int, int));
 E void FDECL(add_weapon_skill, (int));
 E void FDECL(lose_weapon_skill, (int));
 E int FDECL(weapon_type, (struct obj *));
@@ -2554,7 +2580,7 @@ E void FDECL(were_change, (struct monst *));
 E int FDECL(counter_were, (int));
 E int FDECL(were_beastie, (int));
 E void FDECL(new_were, (struct monst *));
-E int FDECL(were_summon, (struct permonst *,BOOLEAN_P,int *,char *));
+E int FDECL(were_summon, (struct permonst *, BOOLEAN_P, int *, char *));
 E void NDECL(you_were);
 E void FDECL(you_unwere, (BOOLEAN_P));
 
@@ -2566,7 +2592,7 @@ E void FDECL(setuswapwep, (struct obj *));
 E int NDECL(dowield);
 E int NDECL(doswapweapon);
 E int NDECL(dowieldquiver);
-E boolean FDECL(wield_tool, (struct obj *,const char *));
+E boolean FDECL(wield_tool, (struct obj *, const char *));
 E int NDECL(can_twoweapon);
 E void NDECL(drop_uswapwep);
 E int NDECL(dotwoweapon);
@@ -2574,10 +2600,10 @@ E void NDECL(uwepgone);
 E void NDECL(uswapwepgone);
 E void NDECL(uqwepgone);
 E void NDECL(untwoweapon);
-E int FDECL(chwepon, (struct obj *,int));
+E int FDECL(chwepon, (struct obj *, int));
 E int FDECL(welded, (struct obj *));
 E void FDECL(weldmsg, (struct obj *));
-E void FDECL(setmnotwielded, (struct monst *,struct obj *));
+E void FDECL(setmnotwielded, (struct monst *, struct obj *));
 E boolean FDECL(mwelded, (struct obj *));
 
 /* ### windows.c ### */
@@ -2589,10 +2615,10 @@ void NDECL(commit_windowchain);
 #endif
 E boolean NDECL(genl_can_suspend_no);
 E boolean NDECL(genl_can_suspend_yes);
-E char FDECL(genl_message_menu, (CHAR_P,int,const char *));
+E char FDECL(genl_message_menu, (CHAR_P, int, const char *));
 E void FDECL(genl_preference_update, (const char *));
 E char *FDECL(genl_getmsghistory, (BOOLEAN_P));
-E void FDECL(genl_putmsghistory, (const char *,BOOLEAN_P));
+E void FDECL(genl_putmsghistory, (const char *, BOOLEAN_P));
 #ifdef HANGUPHANDLING
 E void NDECL(nhwindows_hangup);
 #endif
@@ -2606,7 +2632,7 @@ E int FDECL(tactics, (struct monst *));
 E void NDECL(aggravate);
 E void NDECL(clonewiz);
 E int NDECL(pick_nasty);
-E int FDECL(nasty, (struct monst*));
+E int FDECL(nasty, (struct monst *));
 E void NDECL(resurrect);
 E void NDECL(intervene);
 E void NDECL(wizdead);
@@ -2615,39 +2641,39 @@ E void FDECL(cuss, (struct monst *));
 /* ### worm.c ### */
 
 E int NDECL(get_wormno);
-E void FDECL(initworm, (struct monst *,int));
+E void FDECL(initworm, (struct monst *, int));
 E void FDECL(worm_move, (struct monst *));
 E void FDECL(worm_nomove, (struct monst *));
 E void FDECL(wormgone, (struct monst *));
 E void FDECL(wormhitu, (struct monst *));
-E void FDECL(cutworm, (struct monst *,XCHAR_P,XCHAR_P,struct obj *));
+E void FDECL(cutworm, (struct monst *, XCHAR_P, XCHAR_P, struct obj *));
 E void FDECL(see_wsegs, (struct monst *));
-E void FDECL(detect_wsegs, (struct monst *,BOOLEAN_P));
-E void FDECL(save_worm, (int,int));
+E void FDECL(detect_wsegs, (struct monst *, BOOLEAN_P));
+E void FDECL(save_worm, (int, int));
 E void FDECL(rest_worm, (int));
 E void FDECL(place_wsegs, (struct monst *));
 E void FDECL(remove_worm, (struct monst *));
-E void FDECL(place_worm_tail_randomly, (struct monst *,XCHAR_P,XCHAR_P));
+E void FDECL(place_worm_tail_randomly, (struct monst *, XCHAR_P, XCHAR_P));
 E int FDECL(count_wsegs, (struct monst *));
 E boolean FDECL(worm_known, (struct monst *));
-E boolean FDECL(worm_cross, (int,int,int,int));
+E boolean FDECL(worm_cross, (int, int, int, int));
 
 /* ### worn.c ### */
 
-E void FDECL(setworn, (struct obj *,long));
+E void FDECL(setworn, (struct obj *, long));
 E void FDECL(setnotworn, (struct obj *));
 E long FDECL(wearslot, (struct obj *));
 E void FDECL(mon_set_minvis, (struct monst *));
-E void FDECL(mon_adjust_speed, (struct monst *,int,struct obj *));
+E void FDECL(mon_adjust_speed, (struct monst *, int, struct obj *));
 E void FDECL(update_mon_intrinsics,
-               (struct monst *,struct obj *,BOOLEAN_P,BOOLEAN_P));
+             (struct monst *, struct obj *, BOOLEAN_P, BOOLEAN_P));
 E int FDECL(find_mac, (struct monst *));
-E void FDECL(m_dowear, (struct monst *,BOOLEAN_P));
-E struct obj *FDECL(which_armor, (struct monst *,long));
-E void FDECL(mon_break_armor, (struct monst *,BOOLEAN_P));
+E void FDECL(m_dowear, (struct monst *, BOOLEAN_P));
+E struct obj *FDECL(which_armor, (struct monst *, long));
+E void FDECL(mon_break_armor, (struct monst *, BOOLEAN_P));
 E void FDECL(bypass_obj, (struct obj *));
 E void NDECL(clear_bypasses);
-E void FDECL(bypass_objlist, (struct obj *,BOOLEAN_P));
+E void FDECL(bypass_objlist, (struct obj *, BOOLEAN_P));
 E struct obj *FDECL(nxt_unbypassed_obj, (struct obj *));
 E int FDECL(racial_exception, (struct monst *, struct obj *));
 
@@ -2658,53 +2684,55 @@ E int FDECL(dowrite, (struct obj *));
 /* ### zap.c ### */
 
 E void FDECL(learnwand, (struct obj *));
-E int FDECL(bhitm, (struct monst *,struct obj *));
+E int FDECL(bhitm, (struct monst *, struct obj *));
 E void FDECL(probe_monster, (struct monst *));
-E boolean FDECL(get_obj_location, (struct obj *,xchar *,xchar *,int));
-E boolean FDECL(get_mon_location, (struct monst *,xchar *,xchar *,int));
-E struct monst *FDECL(get_container_location, (struct obj *obj, int *, int *));
-E struct monst *FDECL(montraits, (struct obj *,coord *));
-E struct monst *FDECL(revive, (struct obj *,BOOLEAN_P));
+E boolean FDECL(get_obj_location, (struct obj *, xchar *, xchar *, int));
+E boolean FDECL(get_mon_location, (struct monst *, xchar *, xchar *, int));
+E struct monst *FDECL(get_container_location,
+                      (struct obj * obj, int *, int *));
+E struct monst *FDECL(montraits, (struct obj *, coord *));
+E struct monst *FDECL(revive, (struct obj *, BOOLEAN_P));
 E int FDECL(unturn_dead, (struct monst *));
 E void FDECL(cancel_item, (struct obj *));
 E boolean FDECL(drain_item, (struct obj *));
 E struct obj *FDECL(poly_obj, (struct obj *, int));
-E boolean FDECL(obj_resists, (struct obj *,int,int));
+E boolean FDECL(obj_resists, (struct obj *, int, int));
 E boolean FDECL(obj_shudders, (struct obj *));
 E void FDECL(do_osshock, (struct obj *));
-E int FDECL(bhito, (struct obj *,struct obj *));
-E int FDECL(bhitpile, (struct obj *,int (*)(OBJ_P,OBJ_P),int,int,SCHAR_P));
+E int FDECL(bhito, (struct obj *, struct obj *));
+E int FDECL(bhitpile,
+            (struct obj *, int (*)(OBJ_P, OBJ_P), int, int, SCHAR_P));
 E int FDECL(zappable, (struct obj *));
 E void FDECL(zapnodir, (struct obj *));
 E int NDECL(dozap);
-E int FDECL(zapyourself, (struct obj *,BOOLEAN_P));
+E int FDECL(zapyourself, (struct obj *, BOOLEAN_P));
 E void FDECL(ubreatheu, (struct attack *));
-E int FDECL(lightdamage, (struct obj *,BOOLEAN_P,int));
+E int FDECL(lightdamage, (struct obj *, BOOLEAN_P, int));
 E boolean FDECL(flashburn, (long));
-E boolean FDECL(cancel_monst, (struct monst *,struct obj *,
-                              BOOLEAN_P,BOOLEAN_P,BOOLEAN_P));
+E boolean FDECL(cancel_monst, (struct monst *, struct obj *, BOOLEAN_P,
+                               BOOLEAN_P, BOOLEAN_P));
 E void NDECL(zapsetup);
 E void NDECL(zapwrapup);
 E void FDECL(weffects, (struct obj *));
 E int FDECL(spell_damage_bonus, (int));
 E const char *FDECL(exclam, (int force));
-E void FDECL(hit, (const char *,struct monst *,const char *));
-E void FDECL(miss, (const char *,struct monst *));
-E struct monst *FDECL(bhit, (int,int,int,int,int (*)(MONST_P,OBJ_P),
-                            int (*)(OBJ_P,OBJ_P),struct obj **));
-E struct monst *FDECL(boomhit, (struct obj *,int,int));
-E int FDECL(zhitm, (struct monst *,int,int,struct obj **));
-E int FDECL(burn_floor_objects, (int,int,BOOLEAN_P,BOOLEAN_P));
-E void FDECL(buzz, (int,int,XCHAR_P,XCHAR_P,int,int));
-E void FDECL(melt_ice, (XCHAR_P,XCHAR_P,const char *));
-E void FDECL(start_melt_ice_timeout, (XCHAR_P,XCHAR_P,long));
+E void FDECL(hit, (const char *, struct monst *, const char *));
+E void FDECL(miss, (const char *, struct monst *));
+E struct monst *FDECL(bhit, (int, int, int, int, int (*)(MONST_P, OBJ_P),
+                             int (*)(OBJ_P, OBJ_P), struct obj **));
+E struct monst *FDECL(boomhit, (struct obj *, int, int));
+E int FDECL(zhitm, (struct monst *, int, int, struct obj **));
+E int FDECL(burn_floor_objects, (int, int, BOOLEAN_P, BOOLEAN_P));
+E void FDECL(buzz, (int, int, XCHAR_P, XCHAR_P, int, int));
+E void FDECL(melt_ice, (XCHAR_P, XCHAR_P, const char *));
+E void FDECL(start_melt_ice_timeout, (XCHAR_P, XCHAR_P, long));
 E void FDECL(melt_ice_away, (ANY_P *, long));
-E int FDECL(zap_over_floor, (XCHAR_P,XCHAR_P,int,boolean *,SHORT_P));
+E int FDECL(zap_over_floor, (XCHAR_P, XCHAR_P, int, boolean *, SHORT_P));
 E void FDECL(fracture_rock, (struct obj *));
 E boolean FDECL(break_statue, (struct obj *));
-E void FDECL(destroy_item, (int,int));
-E int FDECL(destroy_mitem, (struct monst *,int,int));
-E int FDECL(resist, (struct monst *,CHAR_P,int,int));
+E void FDECL(destroy_item, (int, int));
+E int FDECL(destroy_mitem, (struct monst *, int, int));
+E int FDECL(resist, (struct monst *, CHAR_P, int, int));
 E void NDECL(makewish);
 
 #endif /* !MAKEDEFS_C && !LEV_LEX_C */
index d23c440959d2c57ca4d3c1078031708e5e6f80c4..ecd5c4e3e003f019112d993b6e95162fda44afd6 100644 (file)
  */
 
 struct flag {
-       boolean  acoustics;     /* allow dungeon sound messages */
-       boolean  autodig;       /* MRKR: Automatically dig */
-       boolean  autoquiver;    /* Automatically fill quiver */
-       boolean  autoopen;      /* open doors by walking into them */
-       boolean  beginner;
-       boolean  biff;          /* enable checking for mail */
-       boolean  bones;         /* allow saving/loading bones */
-       boolean  confirm;       /* confirm before hitting tame monsters */
-       boolean  dark_room;     /* show shadows in lit rooms */
-       boolean  debug;         /* in debugging mode */
-#define wizard  flags.debug
-       boolean  end_own;       /* list all own scores */
-       boolean  explore;       /* in exploration mode */
+    boolean acoustics;  /* allow dungeon sound messages */
+    boolean autodig;    /* MRKR: Automatically dig */
+    boolean autoquiver; /* Automatically fill quiver */
+    boolean autoopen;   /* open doors by walking into them */
+    boolean beginner;
+    boolean biff;      /* enable checking for mail */
+    boolean bones;     /* allow saving/loading bones */
+    boolean confirm;   /* confirm before hitting tame monsters */
+    boolean dark_room; /* show shadows in lit rooms */
+    boolean debug;     /* in debugging mode */
+#define wizard flags.debug
+    boolean end_own; /* list all own scores */
+    boolean explore; /* in exploration mode */
 #define discover flags.explore
-       boolean  female;
-       boolean  friday13;      /* it's Friday the 13th */
-       boolean  help;          /* look in data file for info about stuff */
-       boolean  ignintr;       /* ignore interrupts */
-       boolean  ins_chkpt;     /* checkpoint as appropriate; INSURANCE */
-       boolean  invlet_constant; /* let objects keep their inventory symbol */
-       boolean  legacy;        /* print game entry "story" */
-       boolean  lit_corridor;  /* show a dark corr as lit if it is in sight */
-       boolean  nap;           /* `timed_delay' option for display effects */
-       boolean  null;          /* OK to send nulls to the terminal */
-       boolean  perm_invent;   /* keep full inventories up until dismissed */
-       boolean  pickup;        /* whether you pickup or move and look */
-       boolean  pickup_thrown; /* auto-pickup items you threw */
-       boolean  pushweapon;    /* When wielding, push old weapon into second slot */
-       boolean  rest_on_space; /* space means rest */
-       boolean  safe_dog;      /* give complete protection to the dog */
-       boolean  showexp;       /* show experience points */
-       boolean  showscore;     /* show score */
-       boolean  silent;        /* whether the bell rings or not */
-       boolean  sortloot;      /* sort items alphabetically when looting */
-       boolean  sortpack;      /* sorted inventory */
-       boolean  sparkle;       /* show "resisting" special FX (Scott Bigham) */
-       boolean  standout;      /* use standout for --More-- */
-       boolean  time;          /* display elapsed 'time' */
-       boolean  tombstone;     /* print tombstone */
-       boolean  verbose;       /* max battle info */
-       int      end_top, end_around;   /* describe desired score list */
-       unsigned moonphase;
-       unsigned long suppress_alert;
-#define NEW_MOON       0
-#define FULL_MOON      4
-       int      paranoia_bits; /* alternate confirmation prompting */
+    boolean female;
+    boolean friday13;        /* it's Friday the 13th */
+    boolean help;            /* look in data file for info about stuff */
+    boolean ignintr;         /* ignore interrupts */
+    boolean ins_chkpt;       /* checkpoint as appropriate; INSURANCE */
+    boolean invlet_constant; /* let objects keep their inventory symbol */
+    boolean legacy;          /* print game entry "story" */
+    boolean lit_corridor;    /* show a dark corr as lit if it is in sight */
+    boolean nap;             /* `timed_delay' option for display effects */
+    boolean null;            /* OK to send nulls to the terminal */
+    boolean perm_invent;     /* keep full inventories up until dismissed */
+    boolean pickup;          /* whether you pickup or move and look */
+    boolean pickup_thrown;   /* auto-pickup items you threw */
+    boolean pushweapon; /* When wielding, push old weapon into second slot */
+    boolean rest_on_space;   /* space means rest */
+    boolean safe_dog;        /* give complete protection to the dog */
+    boolean showexp;         /* show experience points */
+    boolean showscore;       /* show score */
+    boolean silent;          /* whether the bell rings or not */
+    boolean sortloot;        /* sort items alphabetically when looting */
+    boolean sortpack;        /* sorted inventory */
+    boolean sparkle;         /* show "resisting" special FX (Scott Bigham) */
+    boolean standout;        /* use standout for --More-- */
+    boolean time;            /* display elapsed 'time' */
+    boolean tombstone;       /* print tombstone */
+    boolean verbose;         /* max battle info */
+    int end_top, end_around; /* describe desired score list */
+    unsigned moonphase;
+    unsigned long suppress_alert;
+#define NEW_MOON 0
+#define FULL_MOON 4
+    int paranoia_bits; /* alternate confirmation prompting */
 #define PARANOID_CONFIRM 0x01
-#define PARANOID_QUIT   0x02
-#define PARANOID_DIE    0x04
-#define PARANOID_BONES  0x08
-#define PARANOID_HIT    0x10
-#define PARANOID_PRAY   0x20
-#define PARANOID_REMOVE         0x40
-       int      pickup_burden;         /* maximum burden before prompt */
-       int      pile_limit; /* controls feedback when walking over objects */
-       char     inv_order[MAXOCLASSES];
-       char     pickup_types[MAXOCLASSES];
-#define NUM_DISCLOSURE_OPTIONS         6       /* i,a,v,g,c,o (decl.c) */
-#define DISCLOSE_PROMPT_DEFAULT_YES    'y'
-#define DISCLOSE_PROMPT_DEFAULT_NO     'n'
-#define DISCLOSE_YES_WITHOUT_PROMPT    '+'
-#define DISCLOSE_NO_WITHOUT_PROMPT     '-'
-       char     end_disclose[NUM_DISCLOSURE_OPTIONS + 1]; /* disclose various
-                                                             info upon exit */
-       char     menu_style;    /* User interface style setting */
-       boolean  made_fruit; /* don't easily let the user overflow the number of fruits */
+#define PARANOID_QUIT 0x02
+#define PARANOID_DIE 0x04
+#define PARANOID_BONES 0x08
+#define PARANOID_HIT 0x10
+#define PARANOID_PRAY 0x20
+#define PARANOID_REMOVE 0x40
+    int pickup_burden; /* maximum burden before prompt */
+    int pile_limit;    /* controls feedback when walking over objects */
+    char inv_order[MAXOCLASSES];
+    char pickup_types[MAXOCLASSES];
+#define NUM_DISCLOSURE_OPTIONS 6 /* i,a,v,g,c,o (decl.c) */
+#define DISCLOSE_PROMPT_DEFAULT_YES 'y'
+#define DISCLOSE_PROMPT_DEFAULT_NO 'n'
+#define DISCLOSE_YES_WITHOUT_PROMPT '+'
+#define DISCLOSE_NO_WITHOUT_PROMPT '-'
+    char end_disclose[NUM_DISCLOSURE_OPTIONS + 1]; /* disclose various
+                                                      info upon exit */
+    char menu_style;    /* User interface style setting */
+    boolean made_fruit; /* don't easily let the user overflow the number of
+                           fruits */
 
-       /* KMH, role patch -- Variables used during startup.
-        *
-        * If the user wishes to select a role, race, gender, and/or alignment
-        * during startup, the choices should be recorded here.  This
-        * might be specified through command-line options, environmental
-        * variables, a popup dialog box, menus, etc.
-        *
-        * These values are each an index into an array.  They are not
-        * characters or letters, because that limits us to 26 roles.
-        * They are not booleans, because someday someone may need a neuter
-        * gender.  Negative values are used to indicate that the user
-        * hasn't yet specified that particular value.  If you determine
-        * that the user wants a random choice, then you should set an
-        * appropriate random value; if you just left the negative value,
-        * the user would be asked again!
-        *
-        * These variables are stored here because the u structure is
-        * cleared during character initialization, and because the
-        * flags structure is restored for saved games.  Thus, we can
-        * use the same parameters to build the role entry for both
-        * new and restored games.
-        *
-        * These variables should not be referred to after the character
-        * is initialized or restored (specifically, after role_init()
-        * is called).
-        */
-       int      initrole;      /* starting role      (index into roles[])   */
-       int      initrace;      /* starting race      (index into races[])   */
-       int      initgend;      /* starting gender    (index into genders[]) */
-       int      initalign;     /* starting alignment (index into aligns[])  */
-       int      randomall;     /* randomly assign everything not specified */
-       int      pantheon;      /* deity selection for priest character */
-       /* Items which were in iflags in 3.4.x to preserve savefile compatibility */
-       boolean  lootabc;       /* use "a/b/c" rather than "o/i/b" when looting */
-       boolean  showrace;      /* show hero glyph by race rather than by role */
-       boolean  travelcmd;     /* allow travel command */
-       int      runmode;       /* update screen display during run moves */
+    /* KMH, role patch -- Variables used during startup.
+     *
+     * If the user wishes to select a role, race, gender, and/or alignment
+     * during startup, the choices should be recorded here.  This
+     * might be specified through command-line options, environmental
+     * variables, a popup dialog box, menus, etc.
+     *
+     * These values are each an index into an array.  They are not
+     * characters or letters, because that limits us to 26 roles.
+     * They are not booleans, because someday someone may need a neuter
+     * gender.  Negative values are used to indicate that the user
+     * hasn't yet specified that particular value.     If you determine
+     * that the user wants a random choice, then you should set an
+     * appropriate random value; if you just left the negative value,
+     * the user would be asked again!
+     *
+     * These variables are stored here because the u structure is
+     * cleared during character initialization, and because the
+     * flags structure is restored for saved games.  Thus, we can
+     * use the same parameters to build the role entry for both
+     * new and restored games.
+     *
+     * These variables should not be referred to after the character
+     * is initialized or restored (specifically, after role_init()
+     * is called).
+     */
+    int initrole;  /* starting role      (index into roles[])   */
+    int initrace;  /* starting race      (index into races[])   */
+    int initgend;  /* starting gender    (index into genders[]) */
+    int initalign; /* starting alignment (index into aligns[])  */
+    int randomall; /* randomly assign everything not specified */
+    int pantheon;  /* deity selection for priest character */
+    /* Items which were in iflags in 3.4.x to preserve savefile compatibility
+     */
+    boolean lootabc;   /* use "a/b/c" rather than "o/i/b" when looting */
+    boolean showrace;  /* show hero glyph by race rather than by role */
+    boolean travelcmd; /* allow travel command */
+    int runmode;       /* update screen display during run moves */
 };
 
 /*
@@ -136,24 +138,25 @@ struct flag {
 
 #ifdef SYSFLAGS
 struct sysflag {
-       char sysflagsid[10];
+    char sysflagsid[10];
 #ifdef AMIFLUSH
-       boolean  altmeta;       /* use ALT keys as META */
-       boolean  amiflush;      /* kill typeahead */
+    boolean altmeta;  /* use ALT keys as META */
+    boolean amiflush; /* kill typeahead */
 #endif
 #ifdef AMII_GRAPHICS
-       int numcols;
-       unsigned short amii_dripens[ 20 ]; /* DrawInfo Pens currently there are 13 in v39 */
-       AMII_COLOR_TYPE amii_curmap[ AMII_MAXCOLORS ]; /* colormap */
+    int numcols;
+    unsigned short
+        amii_dripens[20]; /* DrawInfo Pens currently there are 13 in v39 */
+    AMII_COLOR_TYPE amii_curmap[AMII_MAXCOLORS]; /* colormap */
 #endif
 #ifdef OPT_DISPMAP
-       boolean  fast_map;      /* use optimized, less flexible map display */
+    boolean fast_map; /* use optimized, less flexible map display */
 #endif
-#ifdef MFLOPPY
-       boolean  asksavedisk;
+#ifdef MFLOPPY
+    boolean asksavedisk;
 #endif
 #ifdef MAC
-       boolean  page_wait;     /* put up a --More-- after a page of messages */
+    boolean page_wait; /* put up a --More-- after a page of messages */
 #endif
 };
 #endif
@@ -165,46 +168,46 @@ struct sysflag {
  */
 
 struct instance_flags {
-       /* stuff that really isn't option or platform related. They are
-        * set and cleared during the game to control the internal
-        * behaviour of various NetHack functions and probably warrant
-        * a structure of their own elsewhere some day.
-        */
-       int      in_lava_effects;       /* hack for Boots_off() */
-       int      last_msg;              /* indicator of last message player saw */
-       int      purge_monsters;        /* # of dead monsters still on fmon list */
-       int      override_ID;   /* true to force full identification of objects */
-       int      suppress_price; /* controls doname() for unpaid objects */
-       coord   travelcc;       /* coordinates for travel_cache */
-       boolean  window_inited; /* true if init_nhwindows() completed */
-       boolean  vision_inited; /* true if vision is ready */
-       boolean  sanity_check;  /* run sanity checks */
-       boolean  mon_polycontrol;       /* debug: control monster polymorphs */
-       /* stuff that is related to options and/or user or platform preferences */
-       unsigned msg_history;   /* hint: # of top lines to save */
-       int      menu_headings; /* ATR for menu headings */
-       int *opt_booldup;       /* for duplication of boolean opts in config file */
-       int *opt_compdup;       /* for duplication of compound opts in config file */
+    /* stuff that really isn't option or platform related. They are
+     * set and cleared during the game to control the internal
+     * behaviour of various NetHack functions and probably warrant
+     * a structure of their own elsewhere some day.
+     */
+    int in_lava_effects;   /* hack for Boots_off() */
+    int last_msg;          /* indicator of last message player saw */
+    int purge_monsters;    /* # of dead monsters still on fmon list */
+    int override_ID;       /* true to force full identification of objects */
+    int suppress_price;    /* controls doname() for unpaid objects */
+    coord travelcc;        /* coordinates for travel_cache */
+    boolean window_inited; /* true if init_nhwindows() completed */
+    boolean vision_inited; /* true if vision is ready */
+    boolean sanity_check;  /* run sanity checks */
+    boolean mon_polycontrol; /* debug: control monster polymorphs */
+    /* stuff that is related to options and/or user or platform preferences */
+    unsigned msg_history; /* hint: # of top lines to save */
+    int menu_headings;    /* ATR for menu headings */
+    int *opt_booldup;     /* for duplication of boolean opts in config file */
+    int *opt_compdup; /* for duplication of compound opts in config file */
 #ifdef ALTMETA
-       boolean  altmeta;       /* Alt-c sends ESC c rather than M-c */
+    boolean altmeta; /* Alt-c sends ESC c rather than M-c */
 #endif
-       boolean  cbreak;        /* in cbreak mode, rogue format */
-       boolean  deferred_X;    /* deferred entry into explore mode */
-       boolean  num_pad;       /* use numbers for movement commands */
-       boolean  news;          /* print news */
-       boolean  mention_walls; /* give feedback when bumping walls */
-       boolean  menu_tab_sep;  /* Use tabs to separate option menu fields */
-       boolean  menu_head_objsym; /* Show obj symbol in menu headings */
-       boolean  menu_requested; /* Flag for overloaded use of 'm' prefix
-                                 * on some non-move commands */
-       boolean  renameallowed; /* can change hero name during role selection */
-       boolean  renameinprogress; /* we are changing hero name */
-       boolean  toptenwin;     /* ending list in window instead of stdout */
-       boolean  zerocomp;      /* write zero-compressed save files */
-       boolean  rlecomp;       /* run-length comp of levels when writing savefile */
-       uchar    num_pad_mode;
-       boolean  echo;          /* 1 to echo characters */
-       boolean use_menu_color; /* use color in menus; only if wc_color */
+    boolean cbreak;           /* in cbreak mode, rogue format */
+    boolean deferred_X;       /* deferred entry into explore mode */
+    boolean num_pad;          /* use numbers for movement commands */
+    boolean news;             /* print news */
+    boolean mention_walls;    /* give feedback when bumping walls */
+    boolean menu_tab_sep;     /* Use tabs to separate option menu fields */
+    boolean menu_head_objsym; /* Show obj symbol in menu headings */
+    boolean menu_requested;   /* Flag for overloaded use of 'm' prefix
+                               * on some non-move commands */
+    boolean renameallowed;    /* can change hero name during role selection */
+    boolean renameinprogress; /* we are changing hero name */
+    boolean toptenwin;        /* ending list in window instead of stdout */
+    boolean zerocomp;         /* write zero-compressed save files */
+    boolean rlecomp; /* run-length comp of levels when writing savefile */
+    uchar num_pad_mode;
+    boolean echo;           /* 1 to echo characters */
+    boolean use_menu_color; /* use color in menus; only if wc_color */
 #if 0
        boolean  DECgraphics;   /* use DEC VT-xxx extended character set */
        boolean  IBMgraphics;   /* use IBM extended character set */
@@ -213,108 +216,110 @@ struct instance_flags {
                                   as defined in the special font HackFont */
 #endif
 #endif
-       uchar   bouldersym;     /* symbol for boulder display */
+    uchar bouldersym; /* symbol for boulder display */
 #ifdef TTY_GRAPHICS
-       char prevmsg_window;    /* type of old message window to use */
-       boolean  extmenu;       /* extended commands use menu interface */
+    char prevmsg_window; /* type of old message window to use */
+    boolean extmenu;     /* extended commands use menu interface */
 #endif
 #ifdef MFLOPPY
-       boolean  checkspace;    /* check disk space before writing files */
-                               /* (in iflags to allow restore after moving
-                                * to >2GB partition) */
+    boolean checkspace; /* check disk space before writing files */
+                        /* (in iflags to allow restore after moving
+                         * to >2GB partition) */
 #endif
 #ifdef MICRO
-       boolean  BIOS;          /* use IBM or ST BIOS calls when appropriate */
+    boolean BIOS; /* use IBM or ST BIOS calls when appropriate */
 #endif
 #if defined(MICRO) || defined(WIN32)
-       boolean  rawio;         /* whether can use rawio (IOCTL call) */
+    boolean rawio; /* whether can use rawio (IOCTL call) */
 #endif
 #ifdef MAC_GRAPHICS_ENV
-       boolean  MACgraphics;   /* use Macintosh extended character set, as
-                                  as defined in the special font HackFont */
-       unsigned  use_stone;            /* use the stone ppats */
+    boolean MACgraphics; /* use Macintosh extended character set, as
+                            as defined in the special font HackFont */
+    unsigned use_stone;  /* use the stone ppats */
 #endif
 #if defined(MSDOS) || defined(WIN32)
-       boolean hassound;       /* has a sound card */
-       boolean usesound;       /* use the sound card */
-       boolean usepcspeaker;   /* use the pc speaker */
-       boolean tile_view;
-       boolean over_view;
-       boolean traditional_view;
+    boolean hassound;     /* has a sound card */
+    boolean usesound;     /* use the sound card */
+    boolean usepcspeaker; /* use the pc speaker */
+    boolean tile_view;
+    boolean over_view;
+    boolean traditional_view;
 #endif
 #ifdef MSDOS
-       boolean hasvga;         /* has a vga adapter */
-       boolean usevga;         /* use the vga adapter */
-       boolean grmode;         /* currently in graphics mode */
+    boolean hasvga; /* has a vga adapter */
+    boolean usevga; /* use the vga adapter */
+    boolean grmode; /* currently in graphics mode */
 #endif
 #ifdef LAN_FEATURES
-       boolean lan_mail;       /* mail is initialized */
-       boolean lan_mail_fetched; /* mail is awaiting display */
+    boolean lan_mail;         /* mail is initialized */
+    boolean lan_mail_fetched; /* mail is awaiting display */
 #endif
-/*
- * Window capability support.
- */
-       boolean wc_color;               /* use color graphics                  */
-       boolean wc_hilite_pet;          /* hilight pets                        */
-       boolean wc_ascii_map;           /* show map using traditional ascii    */
-       boolean wc_tiled_map;           /* show map using tiles                */
-       boolean wc_preload_tiles;       /* preload tiles into memory           */
-       int     wc_tile_width;          /* tile width                          */
-       int     wc_tile_height;         /* tile height                         */
-       char    *wc_tile_file;          /* name of tile file;overrides default */
-       boolean wc_inverse;             /* use inverse video for some things   */
-       int     wc_align_status;        /*  status win at top|bot|right|left   */
-       int     wc_align_message;       /* message win at top|bot|right|left   */
-       int     wc_vary_msgcount;       /* show more old messages at a time    */
-       char    *wc_foregrnd_menu;      /* points to foregrnd color name for menu win   */
-       char    *wc_backgrnd_menu;      /* points to backgrnd color name for menu win   */
-       char    *wc_foregrnd_message;   /* points to foregrnd color name for msg win    */
-       char    *wc_backgrnd_message;   /* points to backgrnd color name for msg win    */
-       char    *wc_foregrnd_status;    /* points to foregrnd color name for status win */
-       char    *wc_backgrnd_status;    /* points to backgrnd color name for status win */
-       char    *wc_foregrnd_text;      /* points to foregrnd color name for text win   */
-       char    *wc_backgrnd_text;      /* points to backgrnd color name for text win   */
-       char    *wc_font_map;           /* points to font name for the map win */
-       char    *wc_font_message;       /* points to font name for message win */
-       char    *wc_font_status;        /* points to font name for status win  */
-       char    *wc_font_menu;          /* points to font name for menu win    */
-       char    *wc_font_text;          /* points to font name for text win    */
-       int     wc_fontsiz_map;         /* font size for the map win           */
-       int     wc_fontsiz_message;     /* font size for the message window    */
-       int     wc_fontsiz_status;      /* font size for the status window     */
-       int     wc_fontsiz_menu;        /* font size for the menu window       */
-       int     wc_fontsiz_text;        /* font size for text windows          */
-       int     wc_scroll_amount;       /* scroll this amount at scroll_margin */
-       int     wc_scroll_margin;       /* scroll map when this far from
-                                               the edge */
-       int     wc_map_mode;            /* specify map viewing options, mostly
-                                               for backward compatibility */
-       int     wc_player_selection;    /* method of choosing character */
-       boolean wc_splash_screen;       /* display an opening splash screen or not */
-       boolean wc_popup_dialog;        /* put queries in pop up dialogs instead of
-                                               in the message window */
-       boolean wc_eight_bit_input;     /* allow eight bit input               */
-       boolean wc_mouse_support;       /* allow mouse support */
-       boolean wc2_fullscreen;         /* run fullscreen */
-       boolean wc2_softkeyboard;       /* use software keyboard */
-       boolean wc2_wraptext;           /* wrap text */
-       boolean wc2_selectsaved;        /* display a menu of user's saved games */
-       boolean wc2_darkgray;           /* try to use dark-gray color for black glyphs */
-       boolean  cmdassist;     /* provide detailed assistance for some commands */
-       boolean  clicklook;     /* allow right-clicking for look */
-       boolean  obsolete;      /* obsolete options can point at this, it isn't used */
-       struct autopickup_exception *autopickup_exceptions[2];
+    /*
+     * Window capability support.
+     */
+    boolean wc_color;         /* use color graphics                  */
+    boolean wc_hilite_pet;    /* hilight pets                        */
+    boolean wc_ascii_map;     /* show map using traditional ascii    */
+    boolean wc_tiled_map;     /* show map using tiles                */
+    boolean wc_preload_tiles; /* preload tiles into memory           */
+    int wc_tile_width;        /* tile width                          */
+    int wc_tile_height;       /* tile height                         */
+    char *wc_tile_file;       /* name of tile file;overrides default */
+    boolean wc_inverse;       /* use inverse video for some things   */
+    int wc_align_status;      /*  status win at top|bot|right|left   */
+    int wc_align_message;     /* message win at top|bot|right|left   */
+    int wc_vary_msgcount;     /* show more old messages at a time    */
+    char *wc_foregrnd_menu; /* points to foregrnd color name for menu win   */
+    char *wc_backgrnd_menu; /* points to backgrnd color name for menu win   */
+    char *wc_foregrnd_message; /* points to foregrnd color name for msg win */
+    char *wc_backgrnd_message; /* points to backgrnd color name for msg win */
+    char *
+        wc_foregrnd_status; /* points to foregrnd color name for status win */
+    char *
+        wc_backgrnd_status; /* points to backgrnd color name for status win */
+    char *wc_foregrnd_text; /* points to foregrnd color name for text win   */
+    char *wc_backgrnd_text; /* points to backgrnd color name for text win   */
+    char *wc_font_map;      /* points to font name for the map win */
+    char *wc_font_message;  /* points to font name for message win */
+    char *wc_font_status;   /* points to font name for status win  */
+    char *wc_font_menu;     /* points to font name for menu win    */
+    char *wc_font_text;     /* points to font name for text win    */
+    int wc_fontsiz_map;     /* font size for the map win           */
+    int wc_fontsiz_message; /* font size for the message window    */
+    int wc_fontsiz_status;  /* font size for the status window     */
+    int wc_fontsiz_menu;    /* font size for the menu window       */
+    int wc_fontsiz_text;    /* font size for text windows          */
+    int wc_scroll_amount;   /* scroll this amount at scroll_margin */
+    int wc_scroll_margin;   /* scroll map when this far from
+                                    the edge */
+    int wc_map_mode;        /* specify map viewing options, mostly
+                                    for backward compatibility */
+    int wc_player_selection;    /* method of choosing character */
+    boolean wc_splash_screen;   /* display an opening splash screen or not */
+    boolean wc_popup_dialog;    /* put queries in pop up dialogs instead of
+                                        in the message window */
+    boolean wc_eight_bit_input; /* allow eight bit input               */
+    boolean wc_mouse_support;   /* allow mouse support */
+    boolean wc2_fullscreen;     /* run fullscreen */
+    boolean wc2_softkeyboard;   /* use software keyboard */
+    boolean wc2_wraptext;       /* wrap text */
+    boolean wc2_selectsaved;    /* display a menu of user's saved games */
+    boolean wc2_darkgray; /* try to use dark-gray color for black glyphs */
+    boolean cmdassist;    /* provide detailed assistance for some commands */
+    boolean clicklook;    /* allow right-clicking for look */
+    boolean obsolete; /* obsolete options can point at this, it isn't used */
+    struct autopickup_exception *autopickup_exceptions[2];
 #define AP_LEAVE 0
-#define AP_GRAB         1
+#define AP_GRAB 1
 #ifdef WIN32
 #define MAX_ALTKEYHANDLER 25
-       char     altkeyhandler[MAX_ALTKEYHANDLER];
+    char altkeyhandler[MAX_ALTKEYHANDLER];
 #endif
-       /* copies of values in struct u, used during detection when the
-          originals are temporarily cleared; kept here rather than
-          locally so that they can be restored during a hangup save */
-       Bitfield(save_uinwater,1);
-       Bitfield(save_uburied,1);
+    /* copies of values in struct u, used during detection when the
+       originals are temporarily cleared; kept here rather than
+       locally so that they can be restored during a hangup save */
+    Bitfield(save_uinwater, 1);
+    Bitfield(save_uburied, 1);
 };
 
 /*
@@ -343,42 +348,42 @@ extern NEARDATA struct sysflag sysflags;
 extern NEARDATA struct instance_flags iflags;
 
 /* last_msg values */
-#define PLNMSG_UNKNOWN         0       /* arbitrary */
-#define PLNMSG_ONE_ITEM_HERE   1       /* "you see <single item> here" */
-#define PLNMSG_TOWER_OF_FLAME  2       /* scroll of fire */
-#define PLNMSG_CAUGHT_IN_EXPLOSION 3   /* explode() feedback */
-#define PLNMSG_OBJ_GLOWS       4       /* "the <obj> glows <color>" */
+#define PLNMSG_UNKNOWN 0             /* arbitrary */
+#define PLNMSG_ONE_ITEM_HERE 1       /* "you see <single item> here" */
+#define PLNMSG_TOWER_OF_FLAME 2      /* scroll of fire */
+#define PLNMSG_CAUGHT_IN_EXPLOSION 3 /* explode() feedback */
+#define PLNMSG_OBJ_GLOWS 4           /* "the <obj> glows <color>" */
 
 /* runmode options */
-#define RUN_TPORT      0       /* don't update display until movement stops */
-#define RUN_LEAP       1       /* update display every 7 steps */
-#define RUN_STEP       2       /* update display every single step */
-#define RUN_CRAWL      3       /* walk w/ extra delay after each update */
+#define RUN_TPORT 0 /* don't update display until movement stops */
+#define RUN_LEAP 1  /* update display every 7 steps */
+#define RUN_STEP 2  /* update display every single step */
+#define RUN_CRAWL 3 /* walk w/ extra delay after each update */
 
 /* paranoid confirmation prompting */
 /* any yes confirmations also require explicit no (or ESC) to reject */
-#define ParanoidConfirm        ((flags.paranoia_bits & PARANOID_CONFIRM) != 0)
+#define ParanoidConfirm ((flags.paranoia_bits & PARANOID_CONFIRM) != 0)
 /* quit: yes vs y for "Really quit?" and "Enter explore mode?" */
-#define ParanoidQuit   ((flags.paranoia_bits & PARANOID_QUIT) != 0)
+#define ParanoidQuit ((flags.paranoia_bits & PARANOID_QUIT) != 0)
 /* die: yes vs y for "Die?" (dying in explore mode or wizard mode) */
-#define ParanoidDie    ((flags.paranoia_bits & PARANOID_DIE) != 0)
+#define ParanoidDie ((flags.paranoia_bits & PARANOID_DIE) != 0)
 /* hit: yes vs y for "Save bones?" in wizard mode */
-#define ParanoidBones  ((flags.paranoia_bits & PARANOID_BONES) != 0)
+#define ParanoidBones ((flags.paranoia_bits & PARANOID_BONES) != 0)
 /* hit: yes vs y for "Really attack <the peaceful monster>?" */
-#define ParanoidHit    ((flags.paranoia_bits & PARANOID_HIT) != 0)
+#define ParanoidHit ((flags.paranoia_bits & PARANOID_HIT) != 0)
 /* pray: ask "Really pray?" (accepts y answer, doesn't require yes),
    taking over for the old prayconfirm boolean option */
-#define ParanoidPray   ((flags.paranoia_bits & PARANOID_PRAY) != 0)
+#define ParanoidPray ((flags.paranoia_bits & PARANOID_PRAY) != 0)
 /* remove: remove ('R') and takeoff ('T') commands prompt for an inventory
    item even when only one accessory or piece of armor is currently worn */
-#define ParanoidRemove ((flags.paranoia_bits & PARANOID_REMOVE) != 0)
+#define ParanoidRemove ((flags.paranoia_bits & PARANOID_REMOVE) != 0)
 
 /* command parsing, mainly dealing with number_pad handling;
    not saved and restored */
 
 #ifdef NHSTDC
 /* forward declaration sufficient to declare pointers */
-struct func_tab;               /* from func_tab.h */
+struct func_tab; /* from func_tab.h */
 #endif
 
 /* commands[] is used to directly access cmdlist[] instead of looping
@@ -389,15 +394,14 @@ struct func_tab;          /* from func_tab.h */
    pcHack_compat and phone_layout only matter when num_pad is on,
    swap_yz only matters when it's off */
 struct cmd {
-    unsigned serialno;     /* incremented after each update */
-    boolean num_pad;       /* same as iflags.num_pad except during updates */
-    boolean pcHack_compat;  /* for numpad:  affects 5, M-5, and M-0 */
-    boolean phone_layout;   /* inverted keypad:  1,2,3 above, 7,8,9 below */
-    boolean swap_yz;       /* German keyboads; use z to move NW, y to zap */
-    char move_W, move_NW, move_N, move_NE,
-        move_E, move_SE, move_S, move_SW;
-    const char *dirchars;   /* current movement/direction characters */
-    const char *alphadirchars; /* same as dirchars if !numpad */
+    unsigned serialno;     /* incremented after each update */
+    boolean num_pad;       /* same as iflags.num_pad except during updates */
+    boolean pcHack_compat; /* for numpad:  affects 5, M-5, and M-0 */
+    boolean phone_layout;  /* inverted keypad:  1,2,3 above, 7,8,9 below */
+    boolean swap_yz;       /* German keyboads; use z to move NW, y to zap */
+    char move_W, move_NW, move_N, move_NE, move_E, move_SE, move_S, move_SW;
+    const char *dirchars;      /* current movement/direction characters */
+    const char *alphadirchars; /* same as dirchars if !numpad */
     const struct func_tab *commands[256]; /* indexed by input character */
 };
 
index 5b2369141d79720070a189db058612720d3eab8a..42ee4f3ef66fade6aa21c3e7413bcdfc54801c4f 100644 (file)
@@ -8,16 +8,16 @@
 #define FUNC_TAB_H
 
 struct func_tab {
-       char f_char;
-       boolean can_if_buried;
-       int NDECL((*f_funct));
-       const char *f_text;
+    char f_char;
+    boolean can_if_buried;
+    int NDECL((*f_funct));
+    const char *f_text;
 };
 
 struct ext_func_tab {
-       const char *ef_txt, *ef_desc;
-       int NDECL((*ef_funct));
-       boolean can_if_buried;
+    const char *ef_txt, *ef_desc;
+    int NDECL((*ef_funct));
+    boolean can_if_buried;
 };
 
 extern struct ext_func_tab extcmdlist[];
index c499d00866048214a2f17b884ac33949056e123b..14a879dd8bac1fef4bda85c40454ba74e8eb4c81 100644 (file)
@@ -1,65 +1,64 @@
 /* resource set indices for GEM_RSC */
 
-#define MENU               0 /* menu */
-#define DOABOUT           12 /* STRING in tree MENU */
-#define DOQUIT            30 /* STRING in tree MENU */
+#define MENU 0     /* menu */
+#define DOABOUT 12 /* STRING in tree MENU */
+#define DOQUIT 30  /* STRING in tree MENU */
 
-#define STATUSLINE         1 /* form/dialog */
-#define GRABSTATUS         1 /* BOX in tree STATUSLINE */
+#define STATUSLINE 1 /* form/dialog */
+#define GRABSTATUS 1 /* BOX in tree STATUSLINE */
 
-#define MAPWIN             2 /* form/dialog */
-#define MAPBOX             0 /* BOX in tree MAPWIN */
-#define MAPCURSOR          1 /* IBOX in tree MAPWIN */
+#define MAPWIN 2    /* form/dialog */
+#define MAPBOX 0    /* BOX in tree MAPWIN */
+#define MAPCURSOR 1 /* IBOX in tree MAPWIN */
 
-#define ABOUT              3 /* form/dialog */
-#define FLYABOUT           0 /* BOX in tree ABOUT */
-#define OKABOUT            1 /* BUTTON in tree ABOUT */
-#define NETHACKIMG0        3 /* ICON in tree ABOUT */
+#define ABOUT 3       /* form/dialog */
+#define FLYABOUT 0    /* BOX in tree ABOUT */
+#define OKABOUT 1     /* BUTTON in tree ABOUT */
+#define NETHACKIMG0 3 /* ICON in tree ABOUT */
 
-#define LINES              4 /* form/dialog */
-#define FLYLINES           0 /* BOX in tree LINES */
-#define QLINE              1 /* BUTTON in tree LINES */
-#define LINESLIST          2 /* USERDEF in tree LINES */
+#define LINES 4     /* form/dialog */
+#define FLYLINES  /* BOX in tree LINES */
+#define QLINE 1     /* BUTTON in tree LINES */
+#define LINESLIST 2 /* USERDEF in tree LINES */
 
-#define YNCHOICE           5 /* form/dialog */
-#define FLYYNCHOICE        0 /* BOX in tree YNCHOICE */
-#define YNPROMPT           1 /* TEXT in tree YNCHOICE */
-#define SOMECHARS          2 /* BOX in tree YNCHOICE */
-#define YN1                3 /* BUTTON in tree YNCHOICE */
-#define YNN               53 /* BUTTON in tree YNCHOICE */
-#define ANYCHAR           55 /* BOX in tree YNCHOICE */
-#define CHOSENCH          56 /* FBOXTEXT in tree YNCHOICE */
-#define COUNT             58 /* FBOXTEXT in tree YNCHOICE */
-#define YNOK              59 /* BUTTON in tree YNCHOICE */
+#define YNCHOICE 5    /* form/dialog */
+#define FLYYNCHOICE 0 /* BOX in tree YNCHOICE */
+#define YNPROMPT 1    /* TEXT in tree YNCHOICE */
+#define SOMECHARS 2   /* BOX in tree YNCHOICE */
+#define YN1 3         /* BUTTON in tree YNCHOICE */
+#define YNN 53        /* BUTTON in tree YNCHOICE */
+#define ANYCHAR 55    /* BOX in tree YNCHOICE */
+#define CHOSENCH 56   /* FBOXTEXT in tree YNCHOICE */
+#define COUNT 58      /* FBOXTEXT in tree YNCHOICE */
+#define YNOK 59       /* BUTTON in tree YNCHOICE */
 
-#define LINEGET            6 /* form/dialog */
-#define FLYLINEGET         0 /* BOX in tree LINEGET */
-#define LGPROMPT           1 /* TEXT in tree LINEGET */
-#define LGREPLY            2 /* FBOXTEXT in tree LINEGET */
-#define QLG                3 /* BUTTON in tree LINEGET */
-#define LGOK               4 /* BUTTON in tree LINEGET */
+#define LINEGET 6    /* form/dialog */
+#define FLYLINEGET 0 /* BOX in tree LINEGET */
+#define LGPROMPT 1   /* TEXT in tree LINEGET */
+#define LGREPLY 2    /* FBOXTEXT in tree LINEGET */
+#define QLG 3        /* BUTTON in tree LINEGET */
+#define LGOK 4       /* BUTTON in tree LINEGET */
 
-#define DIRECTION          7 /* form/dialog */
-#define FLYDIRECTION       0 /* BOX in tree DIRECTION */
-#define DIR1               5 /* BOXTEXT in tree DIRECTION */
-#define DIR9              21 /* BOXTEXT in tree DIRECTION */
-#define DIRDOWN           23 /* BOXTEXT in tree DIRECTION */
-#define DIRUP             25 /* BOXTEXT in tree DIRECTION */
+#define DIRECTION 7    /* form/dialog */
+#define FLYDIRECTION 0 /* BOX in tree DIRECTION */
+#define DIR1 5         /* BOXTEXT in tree DIRECTION */
+#define DIR9 21        /* BOXTEXT in tree DIRECTION */
+#define DIRDOWN 23     /* BOXTEXT in tree DIRECTION */
+#define DIRUP 25       /* BOXTEXT in tree DIRECTION */
 
-#define MSGWIN             8 /* form/dialog */
-#define UPMSG              1 /* BOXCHAR in tree MSGWIN */
-#define GRABMSGWIN         2 /* BOX in tree MSGWIN */
-#define DNMSG              3 /* BOXCHAR in tree MSGWIN */
-#define MSGLINES           4 /* USERDEF in tree MSGWIN */
+#define MSGWIN 8     /* form/dialog */
+#define UPMSG 1      /* BOXCHAR in tree MSGWIN */
+#define GRABMSGWIN 2 /* BOX in tree MSGWIN */
+#define DNMSG 3      /* BOXCHAR in tree MSGWIN */
+#define MSGLINES 4   /* USERDEF in tree MSGWIN */
 
-#define NAMEGET            9 /* form/dialog */
-#define FLYNAMEGET         0 /* BOX in tree NAMEGET */
-#define PLNAME             2 /* FBOXTEXT in tree NAMEGET */
-#define NETHACKPICTURE     4 /* BOXTEXT in tree NAMEGET */
+#define NAMEGET 9        /* form/dialog */
+#define FLYNAMEGET 0     /* BOX in tree NAMEGET */
+#define PLNAME 2         /* FBOXTEXT in tree NAMEGET */
+#define NETHACKPICTURE 4 /* BOXTEXT in tree NAMEGET */
 
-#define PAGER             10 /* form/dialog */
-#define FLYPAGER           0 /* BOX in tree PAGER */
-#define QPAGER             1 /* BUTTON in tree PAGER */
-
-#define NHICON            11 /* form/dialog */
+#define PAGER 10   /* form/dialog */
+#define FLYPAGER 0 /* BOX in tree PAGER */
+#define QPAGER 1   /* BUTTON in tree PAGER */
 
+#define NHICON 11 /* form/dialog */
index 4f69ee4e8b5f474036ad0fbb7079564cb261d129..96c4eb822954c2a6782cd319261e460b7e3c4e99 100644 (file)
@@ -8,8 +8,7 @@
 
 #include <stdio.h>
 
-
-#define BETA           /* development or beta testing [MRS] */
+#define BETA /* development or beta testing [MRS] */
 
 #define DEBUG
 
  * Files expected to exist in the playground directory.
  */
 
-#define RECORD       "record"  /* file containing list of topscorers */
-#define HELP         "help"    /* file containing command descriptions */
-#define SHELP        "hh"      /* abbreviated form of the same */
-#define DEBUGHELP     "wizhelp" /* file containing debug mode cmds */
-#define RUMORFILE     "rumors" /* file with fortune cookies */
-#define ORACLEFILE    "oracles" /* file with oracular information */
-#define DATAFILE      "data"   /* file giving the meaning of symbols used */
-#define CMDHELPFILE   "cmdhelp" /* file telling what commands do */
-#define HISTORY       "history" /* file giving nethack's history */
-#define LICENSE       "license" /* file with license information */
-#define OPTIONFILE    "opthelp" /* file explaining runtime options */
-#define OPTIONS_USED  "options" /* compile-time options, for #version */
-#define SYMBOLS       "symbols" /* replacement symbol sets */
-#define EPITAPHFILE   "epitaph"        /* random epitaphs on graves */
-#define ENGRAVEFILE   "engrave" /* random engravings on the floor */
-#define BOGUSMONFILE  "bogusmon" /* hallucinatory monsters */
-#define TRIBUTEFILE   "tribute" /* 3.6 tribute to Terry Pratchett */
-#define LEV_EXT ".lev"         /* extension for special level files */
-
+#define RECORD "record"         /* file containing list of topscorers */
+#define HELP "help"             /* file containing command descriptions */
+#define SHELP "hh"              /* abbreviated form of the same */
+#define DEBUGHELP "wizhelp"     /* file containing debug mode cmds */
+#define RUMORFILE "rumors"      /* file with fortune cookies */
+#define ORACLEFILE "oracles"    /* file with oracular information */
+#define DATAFILE "data"         /* file giving the meaning of symbols used */
+#define CMDHELPFILE "cmdhelp"   /* file telling what commands do */
+#define HISTORY "history"       /* file giving nethack's history */
+#define LICENSE "license"       /* file with license information */
+#define OPTIONFILE "opthelp"    /* file explaining runtime options */
+#define OPTIONS_USED "options"  /* compile-time options, for #version */
+#define SYMBOLS "symbols"       /* replacement symbol sets */
+#define EPITAPHFILE "epitaph"   /* random epitaphs on graves */
+#define ENGRAVEFILE "engrave"   /* random engravings on the floor */
+#define BOGUSMONFILE "bogusmon" /* hallucinatory monsters */
+#define TRIBUTEFILE "tribute"   /* 3.6 tribute to Terry Pratchett */
+#define LEV_EXT ".lev"          /* extension for special level files */
 
 /* Assorted definitions that may depend on selections in config.h. */
 
 #ifndef STUPID
 #define STUPID
 #endif
-#endif /* DUMB */
+#endif /* DUMB */
 
 /*
  * type xchar: small integers in the range 0 - 127, usually coordinates
  * although they are nonnegative they must not be declared unsigned
  * since otherwise comparisons with signed quantities are done incorrectly
  */
-typedef schar  xchar;
+typedef schar xchar;
 #ifndef SKIP_BOOLEAN
-typedef xchar  boolean;                /* 0 or 1 */
+typedef xchar boolean; /* 0 or 1 */
 #endif
 
-#ifndef TRUE           /* defined in some systems' native include files */
-#define TRUE   ((boolean)1)
-#define FALSE  ((boolean)0)
+#ifndef TRUE /* defined in some systems' native include files */
+#define TRUE ((boolean) 1)
+#define FALSE ((boolean) 0)
 #endif
 
 /*
@@ -73,39 +71,36 @@ typedef xchar       boolean;                /* 0 or 1 */
  */
 typedef uchar nhsym;
 
-
 #ifndef STRNCMPI
-# ifndef __SASC_60             /* SAS/C already shifts to stricmp */
-#  define strcmpi(a,b) strncmpi((a),(b),-1)
-# endif
+#ifndef __SASC_60 /* SAS/C already shifts to stricmp */
+#define strcmpi(a, b) strncmpi((a), (b), -1)
+#endif
 #endif
 
 /* comment out to test effects of each #define -- these will probably
  * disappear eventually
  */
 #ifdef INTERNAL_COMP
-# define RLECOMP       /* run-length compression of levl array - JLee */
-# define ZEROCOMP      /* zero-run compression of everything - Olaf Seibert */
+#define RLECOMP  /* run-length compression of levl array - JLee */
+#define ZEROCOMP /* zero-run compression of everything - Olaf Seibert */
 #endif
 
-/* #define SPECIALIZATION */   /* do "specialized" version of new topology */
-
+/* #define SPECIALIZATION */ /* do "specialized" version of new topology */
 
 #ifdef BITFIELDS
-#define Bitfield(x,n)  unsigned x:n
+#define Bitfield(x, n) unsigned x : n
 #else
-#define Bitfield(x,n)  uchar x
+#define Bitfield(x, n) uchar x
 #endif
 
 #define SIZE(x) (int)(sizeof(x) / sizeof(x[0]))
 
-
 /* A limit for some NetHack int variables.  It need not, and for comparable
  * scoring should not, depend on the actual limit on integers for a
  * particular machine, although it is set to the minimum required maximum
  * signed integer for C (2^15 -1).
  */
-#define LARGEST_INT    32767
+#define LARGEST_INT 32767
 
 #include "coord.h"
 /*
@@ -155,54 +150,54 @@ typedef uchar nhsym;
 
 /* Displayable name of this port; don't redefine if defined in *conf.h */
 #ifndef PORT_ID
-# ifdef AMIGA
-#  define PORT_ID      "Amiga"
-# endif
-# ifdef MAC
-#  define PORT_ID      "Mac"
-# endif
-# ifdef __APPLE__
-#  define PORT_ID      "MacOSX"
-# endif
-# ifdef MSDOS
-#  ifdef PC9800
-#  define PORT_ID      "PC-9800"
-#  else
-#  define PORT_ID      "PC"
-#  endif
-#  ifdef DJGPP
-#  define PORT_SUB_ID  "djgpp"
-#  else
-#   ifdef OVERLAY
-#  define PORT_SUB_ID  "overlaid"
-#   else
-#  define PORT_SUB_ID  "non-overlaid"
-#   endif
-#  endif
-# endif
-# ifdef OS2
-#  define PORT_ID      "OS/2"
-# endif
-# ifdef TOS
-#  define PORT_ID      "ST"
-# endif
-       /* Check again in case something more specific has been defined above. */
-# ifndef PORT_ID
-#  ifdef UNIX
-#   define PORT_ID     "Unix"
-#  endif
-# endif
-# ifdef VMS
-#  define PORT_ID      "VMS"
-# endif
-# ifdef WIN32
-#  define PORT_ID      "Windows"
-# endif
+#ifdef AMIGA
+#define PORT_ID "Amiga"
+#endif
+#ifdef MAC
+#define PORT_ID "Mac"
+#endif
+#ifdef __APPLE__
+#define PORT_ID "MacOSX"
+#endif
+#ifdef MSDOS
+#ifdef PC9800
+#define PORT_ID "PC-9800"
+#else
+#define PORT_ID "PC"
+#endif
+#ifdef DJGPP
+#define PORT_SUB_ID "djgpp"
+#else
+#ifdef OVERLAY
+#define PORT_SUB_ID "overlaid"
+#else
+#define PORT_SUB_ID "non-overlaid"
+#endif
+#endif
+#endif
+#ifdef OS2
+#define PORT_ID "OS/2"
+#endif
+#ifdef TOS
+#define PORT_ID "ST"
+#endif
+/* Check again in case something more specific has been defined above. */
+#ifndef PORT_ID
+#ifdef UNIX
+#define PORT_ID "Unix"
+#endif
+#endif
+#ifdef VMS
+#define PORT_ID "VMS"
+#endif
+#ifdef WIN32
+#define PORT_ID "Windows"
+#endif
 #endif
 
 #if defined(MICRO)
 #if !defined(AMIGA) && !defined(TOS) && !defined(OS2_HPFS)
-#define SHORT_FILENAMES                /* filenames are 8.3 */
+#define SHORT_FILENAMES /* filenames are 8.3 */
 #endif
 #endif
 
@@ -212,92 +207,92 @@ typedef uchar nhsym;
  * main() routines do not terminate with return(), whose value is not
  * so massaged.
  */
-# ifdef EXIT_SUCCESS
-#  undef EXIT_SUCCESS
-# endif
-# ifdef EXIT_FAILURE
-#  undef EXIT_FAILURE
-# endif
+#ifdef EXIT_SUCCESS
+#undef EXIT_SUCCESS
+#endif
+#ifdef EXIT_FAILURE
+#undef EXIT_FAILURE
+#endif
 #endif
 
 #ifndef EXIT_SUCCESS
-# define EXIT_SUCCESS 0
+#define EXIT_SUCCESS 0
 #endif
 #ifndef EXIT_FAILURE
-# define EXIT_FAILURE 1
+#define EXIT_FAILURE 1
 #endif
 
-#if defined(X11_GRAPHICS) || defined(QT_GRAPHICS) || defined(GNOME_GRAPHICS) || defined(WIN32)
-# ifndef USE_TILES
-#  define USE_TILES            /* glyph2tile[] will be available */
-# endif
+#if defined(X11_GRAPHICS) || defined(QT_GRAPHICS) || defined(GNOME_GRAPHICS) \
+    || defined(WIN32)
+#ifndef USE_TILES
+#define USE_TILES /* glyph2tile[] will be available */
+#endif
 #endif
 #if defined(AMII_GRAPHICS) || defined(GEM_GRAPHICS)
-# ifndef USE_TILES
-#  define USE_TILES
-# endif
+#ifndef USE_TILES
+#define USE_TILES
+#endif
 #endif
 
 #if defined(UNIX) || defined(VMS) || defined(__EMX__) || defined(WIN32)
-# define HANGUPHANDLING
+#define HANGUPHANDLING
 #endif
-#if defined(SAFERHANGUP) && (defined(NOSAVEONHANGUP) || !defined(HANGUPHANDLING))
-# undef SAFERHANGUP
+#if defined(SAFERHANGUP) \
+    && (defined(NOSAVEONHANGUP) || !defined(HANGUPHANDLING))
+#undef SAFERHANGUP
 #endif
 
-
-#define Sprintf  (void) sprintf
-#define Strcat   (void) strcat
-#define Strcpy   (void) strcpy
+#define Sprintf (void) sprintf
+#define Strcat (void) strcat
+#define Strcpy (void) strcpy
 #ifdef NEED_VARARGS
-#define Vprintf  (void) vprintf
+#define Vprintf (void) vprintf
 #define Vfprintf (void) vfprintf
 #define Vsprintf (void) vsprintf
 #endif
 
-
 /* primitive memory leak debugging; see alloc.c */
 #ifdef MONITOR_HEAP
-extern long *FDECL(nhalloc, (unsigned int,const char *,int));
-extern void FDECL(nhfree, (genericptr_t,const char *,int));
-extern char *FDECL(nhdupstr, (const char *,const char *,int));
-# ifndef __FILE__
-#  define __FILE__ ""
-# endif
-# ifndef __LINE__
-#  define __LINE__ 0
-# endif
-# define alloc(a) nhalloc(a,__FILE__,(int)__LINE__)
-# define free(a) nhfree(a,__FILE__,(int)__LINE__)
-# define dupstr(s) nhdupstr(s,__FILE__,(int)__LINE__)
-#else  /* !MONITOR_HEAP */
-extern long *FDECL(alloc, (unsigned int));             /* alloc.c */
-extern char *FDECL(dupstr, (const char *));            /* ditto */
+extern long *FDECL(nhalloc, (unsigned int, const char *, int));
+extern void FDECL(nhfree, (genericptr_t, const char *, int));
+extern char *FDECL(nhdupstr, (const char *, const char *, int));
+#ifndef __FILE__
+#define __FILE__ ""
+#endif
+#ifndef __LINE__
+#define __LINE__ 0
+#endif
+#define alloc(a) nhalloc(a, __FILE__, (int) __LINE__)
+#define free(a) nhfree(a, __FILE__, (int) __LINE__)
+#define dupstr(s) nhdupstr(s, __FILE__, (int) __LINE__)
+#else /* !MONITOR_HEAP */
+extern long *FDECL(alloc, (unsigned int));  /* alloc.c */
+extern char *FDECL(dupstr, (const char *)); /* ditto */
 #endif
 
 /* Used for consistency checks of various data files; declare it here so
    that utility programs which include config.h but not hack.h can see it. */
 struct version_info {
-       unsigned long   incarnation;    /* actual version number */
-       unsigned long   feature_set;    /* bitmask of config settings */
-       unsigned long   entity_count;   /* # of monsters and objects */
-       unsigned long   struct_sizes1;  /* size of key structs */
-       unsigned long   struct_sizes2;  /* size of more key structs */
+    unsigned long incarnation;   /* actual version number */
+    unsigned long feature_set;   /* bitmask of config settings */
+    unsigned long entity_count;  /* # of monsters and objects */
+    unsigned long struct_sizes1; /* size of key structs */
+    unsigned long struct_sizes2; /* size of more key structs */
 };
 
 struct savefile_info {
-       unsigned long   sfi1;   /* compression etc. */
-       unsigned long   sfi2;   /* miscellaneous */
-       unsigned long   sfi3;   /* thirdparty */
+    unsigned long sfi1; /* compression etc. */
+    unsigned long sfi2; /* miscellaneous */
+    unsigned long sfi3; /* thirdparty */
 };
 #ifdef NHSTDC
-#define SFI1_EXTERNALCOMP      (1UL)
-#define SFI1_RLECOMP           (1UL << 1)
-#define SFI1_ZEROCOMP          (1UL << 2)
+#define SFI1_EXTERNALCOMP (1UL)
+#define SFI1_RLECOMP (1UL << 1)
+#define SFI1_ZEROCOMP (1UL << 2)
 #else
-#define SFI1_EXTERNALCOMP      (1L)
-#define SFI1_RLECOMP           (1L << 1)
-#define SFI1_ZEROCOMP          (1L << 2)
+#define SFI1_EXTERNALCOMP (1L)
+#define SFI1_RLECOMP (1L << 1)
+#define SFI1_ZEROCOMP (1L << 2)
 #endif
 
 /*
@@ -309,52 +304,53 @@ struct savefile_info {
  */
 
 /* size of terminal screen is (at least) (ROWNO+3) by COLNO */
-#define COLNO  80
-#define ROWNO  21
+#define COLNO 80
+#define ROWNO 21
 
-#define MAXNROFROOMS   40      /* max number of rooms per level */
-#define MAX_SUBROOMS   24      /* max # of subrooms in a given room */
-#define DOORMAX                120     /* max number of doors per level */
+#define MAXNROFROOMS 40 /* max number of rooms per level */
+#define MAX_SUBROOMS 24 /* max # of subrooms in a given room */
+#define DOORMAX 120     /* max number of doors per level */
 
-#define BUFSZ          256     /* for getlin buffers */
-#define QBUFSZ         128     /* for building question text */
-#define TBUFSZ         300     /* toplines[] buffer max msg: 3 81char names */
-                               /* plus longest prefix plus a few extra words */
+#define BUFSZ 256  /* for getlin buffers */
+#define QBUFSZ 128 /* for building question text */
+#define TBUFSZ 300 /* toplines[] buffer max msg: 3 81char names */
+/* plus longest prefix plus a few extra words */
 
-#define PL_NSIZ                32      /* name of player, ghost, shopkeeper */
-#define PL_CSIZ                32      /* sizeof pl_character */
-#define PL_FSIZ                32      /* fruit name */
-#define PL_PSIZ                63      /* player-given names for pets, other
-                                * monsters, objects */
+#define PL_NSIZ 32 /* name of player, ghost, shopkeeper */
+#define PL_CSIZ 32 /* sizeof pl_character */
+#define PL_FSIZ 32 /* fruit name */
+#define PL_PSIZ                              \
+    63 /* player-given names for pets, other \
+        * monsters, objects */
 
-#define MAXDUNGEON     16      /* current maximum number of dungeons */
-#define MAXLEVEL       32      /* max number of levels in one dungeon */
-#define MAXSTAIRS      1       /* max # of special stairways in a dungeon */
-#define ALIGNWEIGHT    4       /* generation weight of alignment */
+#define MAXDUNGEON 16 /* current maximum number of dungeons */
+#define MAXLEVEL 32   /* max number of levels in one dungeon */
+#define MAXSTAIRS 1   /* max # of special stairways in a dungeon */
+#define ALIGNWEIGHT 4 /* generation weight of alignment */
 
-#define MAXULEV                30      /* max character experience level */
+#define MAXULEV 30 /* max character experience level */
 
-#define MAXMONNO       120     /* extinct monst after this number created */
-#define MHPMAX         500     /* maximum monster hp */
+#define MAXMONNO 120 /* extinct monst after this number created */
+#define MHPMAX 500   /* maximum monster hp */
 
 /* PANICTRACE: Always defined for BETA but only for supported platforms. */
 #ifdef UNIX
-# ifdef BETA
+#ifdef BETA
 /* see end.c */
-#  ifndef PANICTRACE
-#   define PANICTRACE
-#  endif
-# endif
+#ifndef PANICTRACE
+#define PANICTRACE
+#endif
+#endif
 #endif
 /* The following are meaningless if PANICTRACE is not defined: */
 #if defined(__linux__) && defined(__GLIBC__) && (__GLIBC__ >= 2)
-# define PANICTRACE_LIBC
+#define PANICTRACE_LIBC
 #endif
 #if defined(MACOSX)
-# define PANICTRACE_LIBC
+#define PANICTRACE_LIBC
 #endif
 #ifdef UNIX
-# define PANICTRACE_GDB
+#define PANICTRACE_GDB
 #endif
 
 #endif /* GLOBAL_H */
index 01c6ab321bc58a4c571135945c2af4d65c85d841..3cc9250105bd6c8af11979d365ea18066c2a62a1 100644 (file)
 #endif
 #include "lint.h"
 
-#define TELL           1
-#define NOTELL         0
-#define ON             1
-#define OFF            0
-#define BOLT_LIM       8 /* from this distance ranged attacks will be made */
-#define MAX_CARR_CAP   1000    /* so that boulders can be heavier */
-#define DUMMY { 0 }
+#define TELL 1
+#define NOTELL 0
+#define ON 1
+#define OFF 0
+#define BOLT_LIM 8        /* from this distance ranged attacks will be made */
+#define MAX_CARR_CAP 1000 /* so that boulders can be heavier */
+#define DUMMY \
+    {         \
+        0     \
+    }
 
 /* symbolic names for capacity levels */
-#define UNENCUMBERED   0
-#define SLT_ENCUMBER   1       /* Burdened */
-#define MOD_ENCUMBER   2       /* Stressed */
-#define HVY_ENCUMBER   3       /* Strained */
-#define EXT_ENCUMBER   4       /* Overtaxed */
-#define OVERLOADED     5       /* Overloaded */
+#define UNENCUMBERED 0
+#define SLT_ENCUMBER 1 /* Burdened */
+#define MOD_ENCUMBER 2 /* Stressed */
+#define HVY_ENCUMBER 3 /* Strained */
+#define EXT_ENCUMBER 4 /* Overtaxed */
+#define OVERLOADED 5   /* Overloaded */
 
 /* hunger states - see hu_stat in eat.c */
-#define SATIATED       0
-#define NOT_HUNGRY     1
-#define HUNGRY         2
-#define WEAK           3
-#define FAINTING       4
-#define FAINTED                5
-#define STARVED                6
+#define SATIATED 0
+#define NOT_HUNGRY 1
+#define HUNGRY 2
+#define WEAK 3
+#define FAINTING 4
+#define FAINTED 5
+#define STARVED 6
 
 /* Macros for how a rumor was delivered in outrumor() */
-#define BY_ORACLE      0
-#define BY_COOKIE      1
-#define BY_PAPER       2
-#define BY_OTHER       9
+#define BY_ORACLE 0
+#define BY_COOKIE 1
+#define BY_PAPER 2
+#define BY_OTHER 9
 
 /* Macros for why you are no longer riding */
-#define DISMOUNT_GENERIC       0
-#define DISMOUNT_FELL          1
-#define DISMOUNT_THROWN                2
-#define DISMOUNT_POLY          3
-#define DISMOUNT_ENGULFED      4
-#define DISMOUNT_BONES         5
-#define DISMOUNT_BYCHOICE      6
+#define DISMOUNT_GENERIC 0
+#define DISMOUNT_FELL 1
+#define DISMOUNT_THROWN 2
+#define DISMOUNT_POLY 3
+#define DISMOUNT_ENGULFED 4
+#define DISMOUNT_BONES 5
+#define DISMOUNT_BYCHOICE 6
 
 /* Special returns from mapglyph() */
-#define MG_CORPSE      0x01
-#define MG_INVIS       0x02
-#define MG_DETECT      0x04
-#define MG_PET         0x08
-#define MG_RIDDEN      0x10
-#define MG_STATUE      0x20
+#define MG_CORPSE 0x01
+#define MG_INVIS 0x02
+#define MG_DETECT 0x04
+#define MG_PET 0x08
+#define MG_RIDDEN 0x10
+#define MG_STATUE 0x20
 
 /* sellobj_state() states */
-#define SELL_NORMAL    (0)
-#define SELL_DELIBERATE        (1)
-#define SELL_DONTSELL  (2)
+#define SELL_NORMAL (0)
+#define SELL_DELIBERATE (1)
+#define SELL_DONTSELL (2)
 
 /* alteration types--keep in synch with costly_alteration(mkobj.c) */
-#define COST_CANCEL  0 /* standard cancellation */
-#define COST_DRAIN   1 /* drain life upon an object */
-#define COST_UNCHRG  2 /* cursed charging */
-#define COST_UNBLSS  3 /* unbless (devalues holy water) */
-#define COST_UNCURS  4 /* uncurse (devalues unholy water) */
-#define COST_DECHNT  5 /* disenchant weapons or armor */
-#define COST_DEGRD   6 /* removal of rustproofing, dulling via engraving */
-#define COST_DILUTE  7 /* potion dilution */
-#define COST_ERASE   8 /* scroll or spellbook blanking */
-#define COST_BURN    9 /* dipped into flaming oil */
-#define COST_NUTRLZ 10 /* neutralized via unicorn horn */
-#define COST_DSTROY 11 /* wand breaking (bill first, useup later) */
-#define COST_SPLAT  12 /* cream pie to own face (ditto) */
-#define COST_BITE   13 /* start eating food */
-#define COST_OPEN   14 /* open tin */
-#define COST_BRKLCK 15 /* break box/chest's lock */
-#define COST_RUST   16  /* rust damage */
-#define COST_ROT    17  /* rotting attack */
+#define COST_CANCEL 0   /* standard cancellation */
+#define COST_DRAIN 1    /* drain life upon an object */
+#define COST_UNCHRG 2   /* cursed charging */
+#define COST_UNBLSS 3   /* unbless (devalues holy water) */
+#define COST_UNCURS 4   /* uncurse (devalues unholy water) */
+#define COST_DECHNT 5   /* disenchant weapons or armor */
+#define COST_DEGRD 6    /* removal of rustproofing, dulling via engraving */
+#define COST_DILUTE 7   /* potion dilution */
+#define COST_ERASE 8    /* scroll or spellbook blanking */
+#define COST_BURN 9     /* dipped into flaming oil */
+#define COST_NUTRLZ 10  /* neutralized via unicorn horn */
+#define COST_DSTROY 11  /* wand breaking (bill first, useup later) */
+#define COST_SPLAT 12   /* cream pie to own face (ditto) */
+#define COST_BITE 13    /* start eating food */
+#define COST_OPEN 14    /* open tin */
+#define COST_BRKLCK 15  /* break box/chest's lock */
+#define COST_RUST 16    /* rust damage */
+#define COST_ROT 17     /* rotting attack */
 #define COST_CORRODE 18 /* acid damage */
 
 /* bitmask flags for corpse_xname();
    PFX_THE takes precedence over ARTICLE, NO_PFX takes precedence over both */
-#define CXN_NORMAL      0      /* no special handling */
-#define CXN_SINGULAR    1      /* override quantity if greather than 1 */
-#define CXN_NO_PFX      2      /* suppress "the" from "the Unique Monst */
-#define CXN_PFX_THE     4      /* prefix with "the " (unless pname) */
-#define CXN_ARTICLE     8      /* include a/an/the prefix */
-#define CXN_NOCORPSE   16      /* suppress " corpse" suffix */
+#define CXN_NORMAL 0    /* no special handling */
+#define CXN_SINGULAR 1  /* override quantity if greather than 1 */
+#define CXN_NO_PFX 2    /* suppress "the" from "the Unique Monst */
+#define CXN_PFX_THE 4   /* prefix with "the " (unless pname) */
+#define CXN_ARTICLE 8   /* include a/an/the prefix */
+#define CXN_NOCORPSE 16 /* suppress " corpse" suffix */
 
 /*
  * This is the way the game ends.  If these are rearranged, the arrays
  * in end.c and topten.c will need to be changed.  Some parts of the
  * code assume that PANIC separates the deaths from the non-deaths.
  */
-#define DIED            0
-#define CHOKING                 1
-#define POISONING       2
-#define STARVING        3
-#define DROWNING        4
-#define BURNING                 5
-#define DISSOLVED       6
-#define CRUSHING        7
-#define STONING                 8
-#define TURNED_SLIME    9
-#define GENOCIDED      10
-#define PANICKED       11
-#define TRICKED                12
-#define QUIT           13
-#define ESCAPED                14
-#define ASCENDED       15
+#define DIED 0
+#define CHOKING 1
+#define POISONING 2
+#define STARVING 3
+#define DROWNING 4
+#define BURNING 5
+#define DISSOLVED 6
+#define CRUSHING 7
+#define STONING 8
+#define TURNED_SLIME 9
+#define GENOCIDED 10
+#define PANICKED 11
+#define TRICKED 12
+#define QUIT 13
+#define ESCAPED 14
+#define ASCENDED 15
 
 #include "align.h"
 #include "dungeon.h"
 #include "decl.h"
 #include "timeout.h"
 
-NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
+NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
 
 /* types of calls to bhit() */
-#define ZAPPED_WAND    0
-#define THROWN_WEAPON  1
-#define KICKED_WEAPON  2
-#define FLASHED_LIGHT  3
-#define INVIS_BEAM     4
+#define ZAPPED_WAND 0
+#define THROWN_WEAPON 1
+#define KICKED_WEAPON 2
+#define FLASHED_LIGHT 3
+#define INVIS_BEAM 4
 
 /* attack mode for hmon() */
-#define HMON_MELEE     0       /* hand-to-hand */
-#define HMON_THROWN    1       /* normal ranged (or spitting while poly'd) */
-#define HMON_KICKED    2       /* alternate ranged */
-#define HMON_APPLIED   3       /* polearm, treated as ranged */
-#define HMON_DRAGGED   4       /* attached iron ball, pulled into mon */
-
-#define MATCH_WARN_OF_MON(mon)  (Warn_of_mon && \
-                                ((context.warntype.obj && \
-                                 (context.warntype.obj & (mon)->data->mflags2)) || \
-                                 (context.warntype.polyd && \
-                                 (context.warntype.polyd & (mon)->data->mflags2)) || \
-                                 (context.warntype.species && \
-                                 (context.warntype.species == (mon)->data))))
+#define HMON_MELEE 0   /* hand-to-hand */
+#define HMON_THROWN 1  /* normal ranged (or spitting while poly'd) */
+#define HMON_KICKED 2  /* alternate ranged */
+#define HMON_APPLIED 3 /* polearm, treated as ranged */
+#define HMON_DRAGGED 4 /* attached iron ball, pulled into mon */
+
+#define MATCH_WARN_OF_MON(mon)                                               \
+    (Warn_of_mon && ((context.warntype.obj                                   \
+                      && (context.warntype.obj & (mon)->data->mflags2))      \
+                     || (context.warntype.polyd                              \
+                         && (context.warntype.polyd & (mon)->data->mflags2)) \
+                     || (context.warntype.species                            \
+                         && (context.warntype.species == (mon)->data))))
 
 #include "trap.h"
 #include "flag.h"
@@ -162,14 +165,15 @@ NEARDATA extern coord bhitpos;    /* place where throw or zap hits or stops */
 #include "region.h"
 
 /* Symbol offsets */
-#define SYM_OFF_P      (0)
-#define SYM_OFF_O      (SYM_OFF_P + MAXPCHARS) 
-#define SYM_OFF_M      (SYM_OFF_O + MAXOCLASSES)
-#define SYM_OFF_W      (SYM_OFF_M + MAXMCLASSES)
-#define SYM_OFF_X      (SYM_OFF_W + WARNCOUNT)
-#define SYM_MAX         (SYM_OFF_X + MAXOTHER)
-
-#ifdef USE_TRAMPOLI /* This doesn't belong here, but we have little choice */
+#define SYM_OFF_P (0)
+#define SYM_OFF_O (SYM_OFF_P + MAXPCHARS)
+#define SYM_OFF_M (SYM_OFF_O + MAXOCLASSES)
+#define SYM_OFF_W (SYM_OFF_M + MAXMCLASSES)
+#define SYM_OFF_X (SYM_OFF_W + WARNCOUNT)
+#define SYM_MAX (SYM_OFF_X + MAXOTHER)
+
+#ifdef USE_TRAMPOLI /* This doesn't belong here, but we have little choice \
+                       */
 #undef NDECL
 #define NDECL(f) f()
 #endif
@@ -187,127 +191,132 @@ NEARDATA extern coord bhitpos;  /* place where throw or zap hits or stops */
 #endif /* USE_TRAMPOLI */
 
 /* flags to control makemon() */
-#define NO_MM_FLAGS      0x00000       /* use this rather than plain 0 */
-#define NO_MINVENT       0x00001       /* suppress minvent when creating mon */
-#define MM_NOWAIT        0x00002       /* don't set STRAT_WAITMASK flags */
-#define MM_NOCOUNTBIRTH          0x00004       /* don't increment born counter (for revival) */
-#define MM_IGNOREWATER   0x00008       /* ignore water when positioning */
-#define MM_ADJACENTOK    0x00010       /* it is acceptable to use adjacent coordinates */
-#define MM_ANGRY         0x00020       /* monster is created angry */
-#define MM_NONAME        0x00040       /* monster is not christened */
-#define MM_EGD           0x00100       /* add egd structure */
-#define MM_EPRI                  0x00200       /* add epri structure */
-#define MM_ESHK                  0x00400       /* add eshk structure */
-#define MM_EMIN                  0x00800       /* add emin structure */
-#define MM_EDOG                  0x01000       /* add edog structure */
+#define NO_MM_FLAGS 0x00000 /* use this rather than plain 0 */
+#define NO_MINVENT 0x00001  /* suppress minvent when creating mon */
+#define MM_NOWAIT 0x00002   /* don't set STRAT_WAITMASK flags */
+#define MM_NOCOUNTBIRTH \
+    0x00004 /* don't increment born counter (for revival) */
+#define MM_IGNOREWATER 0x00008 /* ignore water when positioning */
+#define MM_ADJACENTOK \
+    0x00010               /* it is acceptable to use adjacent coordinates */
+#define MM_ANGRY 0x00020  /* monster is created angry */
+#define MM_NONAME 0x00040 /* monster is not christened */
+#define MM_EGD 0x00100    /* add egd structure */
+#define MM_EPRI 0x00200   /* add epri structure */
+#define MM_ESHK 0x00400   /* add eshk structure */
+#define MM_EMIN 0x00800   /* add emin structure */
+#define MM_EDOG 0x01000   /* add edog structure */
 
 /* flags for make_corpse() and mkcorpstat() */
-#define CORPSTAT_NONE    0x00
-#define CORPSTAT_INIT    0x01  /* pass init flag to mkcorpstat */
-#define CORPSTAT_BURIED          0x02  /* bury the corpse or statue */
+#define CORPSTAT_NONE 0x00
+#define CORPSTAT_INIT 0x01   /* pass init flag to mkcorpstat */
+#define CORPSTAT_BURIED 0x02 /* bury the corpse or statue */
 
 /* flags for decide_to_shift() */
-#define SHIFT_SEENMSG    0x01  /* put out a message if in sight */
-#define SHIFT_MSG        0x02  /* always put out a message */
-/* special mhpmax value when loading bones monster to flag as extinct or genocided */
-#define DEFUNCT_MONSTER        (-100)
+#define SHIFT_SEENMSG 0x01 /* put out a message if in sight */
+#define SHIFT_MSG 0x02     /* always put out a message */
+
+/* special mhpmax value when loading bones monster to flag as extinct or
+ * genocided */
+#define DEFUNCT_MONSTER (-100)
 
 /* macro form of adjustments of physical damage based on Half_physical_damage.
  * Can be used on-the-fly with the 1st parameter to losehp() if you don't
  * need to retain the dmg value beyond that call scope.
  * Take care to ensure it doesn't get used more than once in other instances.
  */
-#define Maybe_Half_Phys(dmg)   ((Half_physical_damage) ? (((dmg) + 1) / 2) : (dmg))
+#define Maybe_Half_Phys(dmg) \
+    ((Half_physical_damage) ? (((dmg) + 1) / 2) : (dmg))
 
 /* flags for special ggetobj status returns */
-#define ALL_FINISHED     0x01  /* called routine already finished the job */
+#define ALL_FINISHED 0x01 /* called routine already finished the job */
 
 /* flags to control query_objlist() */
-#define BY_NEXTHERE      0x1   /* follow objlist by nexthere field */
-#define AUTOSELECT_SINGLE 0x2  /* if only 1 object, don't ask */
-#define USE_INVLET       0x4   /* use object's invlet */
-#define INVORDER_SORT    0x8   /* sort objects by packorder */
-#define SIGNAL_NOMENU    0x10  /* return -1 rather than 0 if none allowed */
-#define SIGNAL_ESCAPE    0x20  /* return -2 rather than 0 for ESC */
-#define FEEL_COCKATRICE   0x40  /* engage cockatrice checks and react */
-#define INCLUDE_HERO     0x80  /* show hero among engulfer's inventory */
+#define BY_NEXTHERE 0x1       /* follow objlist by nexthere field */
+#define AUTOSELECT_SINGLE 0x2 /* if only 1 object, don't ask */
+#define USE_INVLET 0x4        /* use object's invlet */
+#define INVORDER_SORT 0x8     /* sort objects by packorder */
+#define SIGNAL_NOMENU 0x10    /* return -1 rather than 0 if none allowed */
+#define SIGNAL_ESCAPE 0x20    /* return -2 rather than 0 for ESC */
+#define FEEL_COCKATRICE 0x40  /* engage cockatrice checks and react */
+#define INCLUDE_HERO 0x80     /* show hero among engulfer's inventory */
 
 /* Flags to control query_category() */
 /* BY_NEXTHERE used by query_category() too, so skip 0x01 */
 #define UNPAID_TYPES 0x02
-#define GOLD_TYPES   0x04
-#define WORN_TYPES   0x08
-#define ALL_TYPES    0x10
+#define GOLD_TYPES 0x04
+#define WORN_TYPES 0x08
+#define ALL_TYPES 0x10
 #define BILLED_TYPES 0x20
-#define CHOOSE_ALL   0x40
-#define BUC_BLESSED  0x80
-#define BUC_CURSED   0x100
+#define CHOOSE_ALL 0x40
+#define BUC_BLESSED 0x80
+#define BUC_CURSED 0x100
 #define BUC_UNCURSED 0x200
-#define BUC_UNKNOWN  0x400
-#define BUC_ALLBKNOWN (BUC_BLESSED|BUC_CURSED|BUC_UNCURSED)
+#define BUC_UNKNOWN 0x400
+#define BUC_ALLBKNOWN (BUC_BLESSED | BUC_CURSED | BUC_UNCURSED)
 #define ALL_TYPES_SELECTED -2
 
 /* Flags to control find_mid() */
-#define FM_FMON               0x01     /* search the fmon chain */
-#define FM_MIGRATE     0x02    /* search the migrating monster chain */
-#define FM_MYDOGS      0x04    /* search mydogs */
-#define FM_EVERYWHERE  (FM_FMON | FM_MIGRATE | FM_MYDOGS)
+#define FM_FMON 0x01    /* search the fmon chain */
+#define FM_MIGRATE 0x02 /* search the migrating monster chain */
+#define FM_MYDOGS 0x04  /* search mydogs */
+#define FM_EVERYWHERE (FM_FMON | FM_MIGRATE | FM_MYDOGS)
 
 /* Flags to control pick_[race,role,gend,align] routines in role.c */
-#define PICK_RANDOM    0
-#define PICK_RIGID     1
+#define PICK_RANDOM 0
+#define PICK_RIGID 1
 
 /* Flags to control dotrap() in trap.c */
-#define FORCETRAP      0x01    /* triggering not left to chance */
-#define NOWEBMSG       0x02    /* suppress stumble into web message */
-#define FORCEBUNGLE    0x04    /* adjustments appropriate for bungling */
-#define RECURSIVETRAP  0x08    /* trap changed into another type this same turn */
-#define TOOKPLUNGE     0x10    /* used '>' to enter pit below you */
+#define FORCETRAP 0x01     /* triggering not left to chance */
+#define NOWEBMSG 0x02      /* suppress stumble into web message */
+#define FORCEBUNGLE 0x04   /* adjustments appropriate for bungling */
+#define RECURSIVETRAP 0x08 /* trap changed into another type this same turn \
+                              */
+#define TOOKPLUNGE 0x10    /* used '>' to enter pit below you */
 
 /* Flags to control test_move in hack.c */
-#define DO_MOVE                0       /* really doing the move */
-#define TEST_MOVE      1       /* test a normal move (move there next) */
-#define TEST_TRAV      2       /* test a future travel location */
+#define DO_MOVE 0   /* really doing the move */
+#define TEST_MOVE 1 /* test a normal move (move there next) */
+#define TEST_TRAV 2 /* test a future travel location */
 
 /*** some utility macros ***/
-#define yn(query) yn_function(query,ynchars, 'n')
-#define ynq(query) yn_function(query,ynqchars, 'q')
-#define ynaq(query) yn_function(query,ynaqchars, 'y')
-#define nyaq(query) yn_function(query,ynaqchars, 'n')
-#define nyNaq(query) yn_function(query,ynNaqchars, 'n')
-#define ynNaq(query) yn_function(query,ynNaqchars, 'y')
+#define yn(query) yn_function(query, ynchars, 'n')
+#define ynq(query) yn_function(query, ynqchars, 'q')
+#define ynaq(query) yn_function(query, ynaqchars, 'y')
+#define nyaq(query) yn_function(query, ynaqchars, 'n')
+#define nyNaq(query) yn_function(query, ynNaqchars, 'n')
+#define ynNaq(query) yn_function(query, ynNaqchars, 'y')
 
 /* Macros for scatter */
-#define VIS_EFFECTS    0x01    /* display visual effects */
-#define MAY_HITMON     0x02    /* objects may hit monsters */
-#define MAY_HITYOU     0x04    /* objects may hit you */
-#define MAY_HIT                (MAY_HITMON|MAY_HITYOU)
-#define MAY_DESTROY    0x08    /* objects may be destroyed at random */
-#define MAY_FRACTURE   0x10    /* boulders & statues may fracture */
+#define VIS_EFFECTS 0x01 /* display visual effects */
+#define MAY_HITMON 0x02  /* objects may hit monsters */
+#define MAY_HITYOU 0x04  /* objects may hit you */
+#define MAY_HIT (MAY_HITMON | MAY_HITYOU)
+#define MAY_DESTROY 0x08  /* objects may be destroyed at random */
+#define MAY_FRACTURE 0x10 /* boulders & statues may fracture */
 
 /* Macros for launching objects */
-#define ROLL           0x01    /* the object is rolling */
-#define FLING          0x02    /* the object is flying thru the air */
-#define LAUNCH_UNSEEN  0x40    /* hero neither caused nor saw it */
-#define LAUNCH_KNOWN   0x80    /* the hero caused this by explicit action */
+#define ROLL 0x01          /* the object is rolling */
+#define FLING 0x02         /* the object is flying thru the air */
+#define LAUNCH_UNSEEN 0x40 /* hero neither caused nor saw it */
+#define LAUNCH_KNOWN 0x80  /* the hero caused this by explicit action */
 
 /* Macros for explosion types */
-#define EXPL_DARK      0
-#define EXPL_NOXIOUS   1
-#define EXPL_MUDDY     2
-#define EXPL_WET       3
-#define EXPL_MAGICAL   4
-#define EXPL_FIERY     5
-#define EXPL_FROSTY    6
-#define EXPL_MAX       7
+#define EXPL_DARK 0
+#define EXPL_NOXIOUS 1
+#define EXPL_MUDDY 2
+#define EXPL_WET 3
+#define EXPL_MAGICAL 4
+#define EXPL_FIERY 5
+#define EXPL_FROSTY 6
+#define EXPL_MAX 7
 
 /* enlightenment control flags */
-#define BASICENLIGHTENMENT     1       /* show mundane stuff */
-#define MAGICENLIGHTENMENT     2       /* show intrinsics and such */
-#define ENL_GAMEINPROGRESS     0
-#define ENL_GAMEOVERALIVE      1       /* ascension, escape, quit, trickery */
-#define ENL_GAMEOVERDEAD       2
+#define BASICENLIGHTENMENT 1 /* show mundane stuff */
+#define MAGICENLIGHTENMENT 2 /* show intrinsics and such */
+#define ENL_GAMEINPROGRESS 0
+#define ENL_GAMEOVERALIVE 1 /* ascension, escape, quit, trickery */
+#define ENL_GAMEOVERDEAD 2
 
 /* Macros for messages referring to hands, eyes, feet, etc... */
 #define ARM 0
@@ -331,26 +340,26 @@ NEARDATA extern coord bhitpos;    /* place where throw or zap hits or stops */
 #define STOMACH 18
 
 /* indices for some special tin types */
-#define ROTTEN_TIN    0
-#define HOMEMADE_TIN  1
+#define ROTTEN_TIN 0
+#define HOMEMADE_TIN 1
 #define SPINACH_TIN (-1)
-#define RANDOM_TIN  (-2)
+#define RANDOM_TIN (-2)
 #define HEALTHY_TIN (-3)
 
 /* Some misc definitions */
-#define POTION_OCCUPANT_CHANCE(n) (13 + 2*(n))
+#define POTION_OCCUPANT_CHANCE(n) (13 + 2 * (n))
 #define WAND_BACKFIRE_CHANCE 100
-#define BALL_IN_MON    (u.uswallow && uball && uball->where == OBJ_FREE)
+#define BALL_IN_MON (u.uswallow && uball && uball->where == OBJ_FREE)
 #define NODIAG(monnum) ((monnum) == PM_GRID_BUG)
 
 /* Flags to control menus */
 #define MENUTYPELEN sizeof("traditional ")
 #define MENU_TRADITIONAL 0
 #define MENU_COMBINATION 1
-#define MENU_PARTIAL    2
-#define MENU_FULL       3
+#define MENU_PARTIAL 2
+#define MENU_FULL 3
 
-#define MENU_SELECTED  TRUE
+#define MENU_SELECTED TRUE
 #define MENU_UNSELECTED FALSE
 
 /*
@@ -359,66 +368,69 @@ NEARDATA extern coord bhitpos;    /* place where throw or zap hits or stops */
  * below it.
  */
 /* XXX This should be replaced with a bitmap. */
-#define SET_IN_SYS     0 /* system config file option only */
-#define SET_IN_FILE    1 /* config file option only */
-#define SET_VIA_PROG   2 /* may be set via extern program, not seen in game */
-#define DISP_IN_GAME   3 /* may be set via extern program, displayed in game */
-#define SET_IN_GAME    4 /* may be set via extern program or set in the game */
-#define SET__IS_VALUE_VALID(s) ( (s < SET_IN_SYS) || (s > SET_IN_GAME) )
-
-#define FEATURE_NOTICE_VER(major,minor,patch) (((unsigned long)major << 24) | \
-       ((unsigned long)minor << 16) | \
-       ((unsigned long)patch << 8) | \
-       ((unsigned long)0))
-
-#define FEATURE_NOTICE_VER_MAJ   (flags.suppress_alert >> 24)
-#define FEATURE_NOTICE_VER_MIN   (((unsigned long)(0x0000000000FF0000L & flags.suppress_alert)) >> 16)
-#define FEATURE_NOTICE_VER_PATCH  (((unsigned long)(0x000000000000FF00L & flags.suppress_alert)) >>  8)
+#define SET_IN_SYS 0   /* system config file option only */
+#define SET_IN_FILE 1  /* config file option only */
+#define SET_VIA_PROG 2 /* may be set via extern program, not seen in game */
+#define DISP_IN_GAME 3 /* may be set via extern program, displayed in game \
+                          */
+#define SET_IN_GAME 4  /* may be set via extern program or set in the game */
+#define SET__IS_VALUE_VALID(s) ((s < SET_IN_SYS) || (s > SET_IN_GAME))
+
+#define FEATURE_NOTICE_VER(major, minor, patch)                    \
+    (((unsigned long) major << 24) | ((unsigned long) minor << 16) \
+     | ((unsigned long) patch << 8) | ((unsigned long) 0))
+
+#define FEATURE_NOTICE_VER_MAJ (flags.suppress_alert >> 24)
+#define FEATURE_NOTICE_VER_MIN \
+    (((unsigned long) (0x0000000000FF0000L & flags.suppress_alert)) >> 16)
+#define FEATURE_NOTICE_VER_PATCH \
+    (((unsigned long) (0x000000000000FF00L & flags.suppress_alert)) >> 8)
 
 #ifndef max
-#define max(a,b) ((a) > (b) ? (a) : (b))
+#define max(a, b) ((a) > (b) ? (a) : (b))
 #endif
 #ifndef min
-#define min(x,y) ((x) < (y) ? (x) : (y))
+#define min(x, y) ((x) < (y) ? (x) : (y))
 #endif
 #define plur(x) (((x) == 1) ? "" : "s")
 
-#define ARM_BONUS(obj) (objects[(obj)->otyp].a_ac + (obj)->spe \
-                        - min((int)greatest_erosion(obj),objects[(obj)->otyp].a_ac))
+#define ARM_BONUS(obj)                      \
+    (objects[(obj)->otyp].a_ac + (obj)->spe \
+     - min((int) greatest_erosion(obj), objects[(obj)->otyp].a_ac))
 
-#define makeknown(x)   discover_object((x),TRUE,TRUE)
-#define distu(xx,yy)   dist2((int)(xx),(int)(yy),(int)u.ux,(int)u.uy)
-#define onlineu(xx,yy) online2((int)(xx),(int)(yy),(int)u.ux,(int)u.uy)
+#define makeknown(x) discover_object((x), TRUE, TRUE)
+#define distu(xx, yy) dist2((int)(xx), (int)(yy), (int) u.ux, (int) u.uy)
+#define onlineu(xx, yy) online2((int)(xx), (int)(yy), (int) u.ux, (int) u.uy)
 
-#define rn1(x,y)       (rn2(x)+(y))
+#define rn1(x, y) (rn2(x) + (y))
 
 /* negative armor class is randomly weakened to prevent invulnerability */
-#define AC_VALUE(AC)   ((AC) >= 0 ? (AC) : -rnd(-(AC)))
+#define AC_VALUE(AC) ((AC) >= 0 ? (AC) : -rnd(-(AC)))
 
 #if defined(MICRO) && !defined(__DJGPP__)
 #define getuid() 1
-#define getlogin() ((char *)0)
+#define getlogin() ((char *) 0)
 #endif /* MICRO */
 
 #if defined(OVERLAY)
-# define USE_OVLx
-# define STATIC_DCL extern
-# define STATIC_OVL
-# define STATIC_VAR
+#define USE_OVLx
+#define STATIC_DCL extern
+#define STATIC_OVL
+#define STATIC_VAR
 
-#else  /* !OVERLAY */
+#else /* !OVERLAY */
 
-# define STATIC_DCL static
-# define STATIC_OVL static
-# define STATIC_VAR static
+#define STATIC_DCL static
+#define STATIC_OVL static
+#define STATIC_VAR static
 
-#endif /* OVERLAY */
+#endif /* OVERLAY */
 
 /* Macro for a few items that are only static if we're not overlaid.... */
 #if defined(USE_TRAMPOLI) || defined(USE_OVLx)
-# define STATIC_PTR
+#define STATIC_PTR
 #else
-# define STATIC_PTR static
+#define STATIC_PTR static
 #endif
 
 /* The function argument to qsort() requires a particular
@@ -426,12 +438,12 @@ NEARDATA extern coord bhitpos;    /* place where throw or zap hits or stops */
  * in that environment.
  */
 #if defined(WIN_CE)
-# define CFDECLSPEC __cdecl
+#define CFDECLSPEC __cdecl
 #else
-# define CFDECLSPEC
+#define CFDECLSPEC
 #endif
 
 #define DEVTEAM_EMAIL "devteam@nethack.org"
-#define DEVTEAM_URL   "http://www.nethack.org"
+#define DEVTEAM_URL "http://www.nethack.org"
+
 #endif /* HACK_H */
index ad4a9565da510803bafa4558c85180f94ea26841..5069d0b3a1033ff61c4970359bebcae8ef23c92f 100644 (file)
@@ -9,45 +9,45 @@
 #ifndef LEV_H
 #define LEV_H
 
-#define COUNT_SAVE     0x1
-#define WRITE_SAVE     0x2
-#define FREE_SAVE      0x4
+#define COUNT_SAVE 0x1
+#define WRITE_SAVE 0x2
+#define FREE_SAVE 0x4
 
-#define MAX_BMASK      4
+#define MAX_BMASK 4
 
 /* operations of the various saveXXXchn & co. routines */
-#define perform_bwrite(mode)   ((mode) & (COUNT_SAVE|WRITE_SAVE))
-#define release_data(mode)     ((mode) & FREE_SAVE)
+#define perform_bwrite(mode) ((mode) & (COUNT_SAVE | WRITE_SAVE))
+#define release_data(mode) ((mode) &FREE_SAVE)
 
 /* The following are used in mkmaze.c */
 struct container {
-       struct container *next;
-       xchar x, y;
-       short what;
-       genericptr_t list;
+    struct container *next;
+    xchar x, y;
+    short what;
+    genericptr_t list;
 };
 
-#define CONS_OBJ   0
-#define CONS_MON   1
-#define CONS_HERO  2
-#define CONS_TRAP  3
+#define CONS_OBJ 0
+#define CONS_MON 1
+#define CONS_HERO 2
+#define CONS_TRAP 3
 
 struct bubble {
-       xchar x, y;     /* coordinates of the upper left corner */
-       schar dx, dy;   /* the general direction of the bubble's movement */
-       uchar bm[MAX_BMASK+2];  /* bubble bit mask */
-       struct bubble *prev, *next; /* need to traverse the list up and down */
-       struct container *cons;
+    xchar x, y;   /* coordinates of the upper left corner */
+    schar dx, dy; /* the general direction of the bubble's movement */
+    uchar bm[MAX_BMASK + 2];    /* bubble bit mask */
+    struct bubble *prev, *next; /* need to traverse the list up and down */
+    struct container *cons;
 };
 
 /* used in light.c */
 typedef struct ls_t {
     struct ls_t *next;
-    xchar x, y;                /* source's position */
-    short range;       /* source's current range */
+    xchar x, y;  /* source's position */
+    short range; /* source's current range */
     short flags;
-    short type;                /* type of light source */
-    anything id;       /* source's identifier */
+    short type;  /* type of light source */
+    anything id; /* source's identifier */
 } light_source;
 
 #endif /* LEV_H */
index bf1255c71d54655c3844b38457ac72d6a7ef12ae..8fb79b4a97531347bb68d4a15837997b71735f85 100644 (file)
 /* cast away implicit const from a string literal (caller's responsibility
    to ensure that) in order to avoid a warning from 'gcc -Wwrite-strings'
    (also caller's responsibility to ensure it isn't actually modified!) */
-#define nhStr(str) ((char *)str)
+#define nhStr(str) ((char *) str)
 
 #if defined(GCC_WARN) && !defined(FORCE_ARG_USAGE)
-#  define FORCE_ARG_USAGE
+#define FORCE_ARG_USAGE
 #endif
 
 #ifdef FORCE_ARG_USAGE
 /* force an unused function argument to become used in an arbitrary
    manner in order to suppress warning about unused function arguments;
    viable for scalar and pointer arguments */
-# define nhUse(arg)    nhUse_dummy += (unsigned)arg;
+#define nhUse(arg) nhUse_dummy += (unsigned) arg;
 extern unsigned nhUse_dummy;
 #else
-# define nhUse(arg)    /*empty*/
+#define nhUse(arg) /*empty*/
 #endif
 
 /*
@@ -34,34 +34,43 @@ extern unsigned nhUse_dummy;
  */
 /* [DEBUG shouldn't be defined unless you know what you're doing...] */
 #ifdef DEBUG
-# define showdebug(file)        debugcore(file, TRUE)
-# define explicitdebug(file)    debugcore(file, FALSE)
-# define ifdebug(stmt)    do { if (showdebug(__FILE__)) stmt; } while (0)
-# ifdef _MSC_VER 
-   /* if we have microsoft's C runtime we can use these instead */
-#  include <crtdbg.h>
-#  define crtdebug(stmt) do { if (showdebug(__FILE__)) stmt; \
-                                _RPT0(_CRT_WARN,"\n"); } while (0)
-#  define debugpline0(str)                crtdebug(_RPT0(_CRT_WARN,str))
-#  define debugpline1(fmt,arg)            crtdebug(_RPT1(_CRT_WARN,fmt,arg))
-#  define debugpline2(fmt,a1,a2)          crtdebug(_RPT2(_CRT_WARN,fmt,a1,a2))
-#  define debugpline3(fmt,a1,a2,a3)       crtdebug(_RPT3(_CRT_WARN,fmt,a1,a2,a3))
-#  define debugpline4(fmt,a1,a2,a3,a4)    crtdebug(_RPT4(_CRT_WARN,fmt,a1,a2,a3,a4))
-# else
+#define showdebug(file) debugcore(file, TRUE)
+#define explicitdebug(file) debugcore(file, FALSE)
+#define ifdebug(stmt)            \
+    do {                         \
+        if (showdebug(__FILE__)) \
+            stmt;                \
+    } while (0)
+#ifdef _MSC_VER
+/* if we have microsoft's C runtime we can use these instead */
+#include <crtdbg.h>
+#define crtdebug(stmt)           \
+    do {                         \
+        if (showdebug(__FILE__)) \
+            stmt;                \
+        _RPT0(_CRT_WARN, "\n");  \
+    } while (0)
+#define debugpline0(str) crtdebug(_RPT0(_CRT_WARN, str))
+#define debugpline1(fmt, arg) crtdebug(_RPT1(_CRT_WARN, fmt, arg))
+#define debugpline2(fmt, a1, a2) crtdebug(_RPT2(_CRT_WARN, fmt, a1, a2))
+#define debugpline3(fmt, a1, a2, a3) \
+    crtdebug(_RPT3(_CRT_WARN, fmt, a1, a2, a3))
+#define debugpline4(fmt, a1, a2, a3, a4) \
+    crtdebug(_RPT4(_CRT_WARN, fmt, a1, a2, a3, a4))
+#else
 /* these don't require compiler support for C99 variadic macros */
-#  define debugpline0(str)                ifdebug(pline(str))
-#  define debugpline1(fmt,arg)            ifdebug(pline(fmt,arg))
-#  define debugpline2(fmt,a1,a2)          ifdebug(pline(fmt,a1,a2))
-#  define debugpline3(fmt,a1,a2,a3)       ifdebug(pline(fmt,a1,a2,a3))
-#  define debugpline4(fmt,a1,a2,a3,a4)    ifdebug(pline(fmt,a1,a2,a3,a4))
-# endif
+#define debugpline0(str) ifdebug(pline(str))
+#define debugpline1(fmt, arg) ifdebug(pline(fmt, arg))
+#define debugpline2(fmt, a1, a2) ifdebug(pline(fmt, a1, a2))
+#define debugpline3(fmt, a1, a2, a3) ifdebug(pline(fmt, a1, a2, a3))
+#define debugpline4(fmt, a1, a2, a3, a4) ifdebug(pline(fmt, a1, a2, a3, a4))
+#endif
 #else
-#  define debugpline0(str)              /*empty*/
-#  define debugpline1(fmt,arg)          /*empty*/
-#  define debugpline2(fmt,a1,a2)        /*empty*/
-#  define debugpline3(fmt,a1,a2,a3)     /*empty*/
-#  define debugpline4(fmt,a1,a2,a3,a4)  /*empty*/
-#endif    /*DEBUG*/
+#define debugpline0(str)                 /*empty*/
+#define debugpline1(fmt, arg)            /*empty*/
+#define debugpline2(fmt, a1, a2)         /*empty*/
+#define debugpline3(fmt, a1, a2, a3)     /*empty*/
+#define debugpline4(fmt, a1, a2, a3, a4) /*empty*/
+#endif                                   /*DEBUG*/
 
 #endif /* LINT_H */
-
index eb4a27db5e168b0859d3a22109cc4a85dd14e151..a6511832cf5963dd84a21e37ccc396c4bcf7def8 100644 (file)
@@ -1,39 +1,40 @@
 
 /* ------------------------------------------- */
-#define XIMG      0x58494D47
+#define XIMG 0x58494D47
 
 /* Header of GEM Image Files   */
-typedef struct IMG_HEADER{
-  short version;  /* Img file format version (1) */
-  short length;   /* Header length in words  (8) */
-  short planes;   /* Number of bit-planes    (1) */
-  short pat_len;  /* length of Patterns      (2) */
-  short pix_w;    /* Pixel width in 1/1000 mmm  (372)    */
-  short pix_h;    /* Pixel height in 1/1000 mmm (372)    */
-  short img_w;    /* Pixels per line (=(x+7)/8 Bytes)    */
-  short img_h;    /* Total number of lines               */
-  long  magic;    /* Contains "XIMG" if standard color   */
-  short paltype;  /* palette type (0=RGB (short each)) */
-  short *palette;      /* palette etc.                        */
-  char *addr;     /* Address for the depacked bit-planes */
+typedef struct IMG_HEADER {
+    short version;  /* Img file format version (1) */
+    short length;   /* Header length in words  (8) */
+    short planes;   /* Number of bit-planes    (1) */
+    short pat_len;  /* length of Patterns      (2) */
+    short pix_w;    /* Pixel width in 1/1000 mmm  (372)    */
+    short pix_h;    /* Pixel height in 1/1000 mmm (372)    */
+    short img_w;    /* Pixels per line (=(x+7)/8 Bytes)    */
+    short img_h;    /* Total number of lines               */
+    long magic;     /* Contains "XIMG" if standard color   */
+    short paltype;  /* palette type (0=RGB (short each)) */
+    short *palette; /* palette etc.                        */
+    char *addr;     /* Address for the depacked bit-planes */
 } IMG_header;
 
 /* ------------------------------------------- */
 /* error codes */
-#define ERR_HEADER      1
-#define ERR_ALLOC       2
-#define ERR_FILE        3
-#define ERR_DEPACK      4
-#define ERR_COLOR       5
+#define ERR_HEADER 1
+#define ERR_ALLOC 2
+#define ERR_FILE 3
+#define ERR_DEPACK 4
+#define ERR_COLOR 5
 
 /* saves the current colorpalette with col colors in palette */
 void get_colors(int handle, short *palette, int col);
 
 /* sets col colors from palette */
-void img_set_colors(int handle,short *palette, int col);
+void img_set_colors(int handle, short *palette, int col);
 
-/* converts MFDB  of size from standard to deviceformat (0 if succeded, else error). */
-int convert(MFDB *, long );
+/* converts MFDB  of size from standard to deviceformat (0 if succeded, else
+ * error). */
+int convert(MFDB *, long);
 
 /* transforms image in VDI-Device format */
 int transform_img(MFDB *);
@@ -43,4 +44,4 @@ int transform_img(MFDB *);
 int depack_img(char *, IMG_header *);
 
 /* Halves IMG in Device-format, dest memory has to be allocated*/
-int half_img(MFDB *,MFDB *);
+int half_img(MFDB *, MFDB *);
index 5c14e437f005ae2304e27bae44e198b4edf1723b..63def524f25dbf1568049471dcd6867882ae277e 100644 (file)
@@ -27,7 +27,7 @@
 
 /* May already be defined by CodeWarrior as 0 or 1 */
 #ifdef TARGET_API_MAC_CARBON
-# undef TARGET_API_MAC_CARBON
+#undef TARGET_API_MAC_CARBON
 #endif
 #define TARGET_API_MAC_CARBON 1
 
index a37ba554f9639861d71d8c417da7bef467c3a64a..6fa2290758c05dfd7f3cab62eaaf4c877ad1604c 100644 (file)
@@ -28,7 +28,7 @@
 
 /* May already be defined by CodeWarrior as 0 or 1 */
 #ifdef TARGET_API_MAC_CARBON
-# undef TARGET_API_MAC_CARBON
+#undef TARGET_API_MAC_CARBON
 #endif
 #define TARGET_API_MAC_CARBON 0
 
index 9de54f1a0dfa11b78ad8f970d97b926e53e2db64..9a6c1bfc4032daedf14e4dd32ec8b6472fe12408 100644 (file)
 #undef MAC
 #define UNIX
 #define BSD
-#define __FreeBSD__    /* Darwin is based on FreeBSD */
+#define __FreeBSD__ /* Darwin is based on FreeBSD */
 #define GCC_WARN
 
 /* May already be defined by CodeWarrior as 0 or 1 */
 #ifdef TARGET_API_MAC_CARBON
-# undef TARGET_API_MAC_CARBON
+#undef TARGET_API_MAC_CARBON
 #endif
-#define TARGET_API_MAC_CARBON 0        /* Not Carbon */
+#define TARGET_API_MAC_CARBON 0 /* Not Carbon */
index 5d7d9c1faf815bd283eb222095ed6a3718647c86..970cc5f2392de6ae83f42eda41a4e8a8c93e0b84 100644 (file)
@@ -5,8 +5,8 @@
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifdef MAC
-# ifndef MACCONF_H
-#  define MACCONF_H
+#ifndef MACCONF_H
+#define MACCONF_H
 
 /*
  * Compiler selection is based on the following symbols:
  */
 
 #ifndef __powerc
-# define MAC68K                /* 68K mac (non-powerpc) */
+#define MAC68K /* 68K mac (non-powerpc) */
 #endif
 #ifndef TARGET_API_MAC_CARBON
-# define TARGET_API_MAC_CARBON 0
+#define TARGET_API_MAC_CARBON 0
 #endif
 
-
 #ifndef __MACH__
 #define RANDOM
 #endif
-#define NO_SIGNAL              /* You wouldn't believe our signals ... */
+#define NO_SIGNAL /* You wouldn't believe our signals ... */
 #define FILENAME 256
-#define NO_TERMS               /* For tty port (see wintty.h) */
+#define NO_TERMS /* For tty port (see wintty.h) */
 
-#define TEXTCOLOR              /* For Mac TTY interface */
+#define TEXTCOLOR /* For Mac TTY interface */
 #define CHANGE_COLOR
 
 /* Use these two includes instead of system.h. */
 
 /* Uncomment this line if your headers don't already define off_t */
 /*typedef long off_t;*/
-#include <time.h>      /* for time_t */
+#include <time.h> /* for time_t */
 
 /*
  * Try and keep the number of files here to an ABSOLUTE minimum !
  * include the relevant files in the relevant .c files instead !
  */
 #if TARGET_API_MAC_CARBON
-# ifdef GNUC
-   /* Avoid including <CarbonCore/fp.h> -- it has a conflicting expl() */
-#  define __FP__
-#  include <Carbon/Carbon.h>
-# else
-   /* Avoid including <fenv.h> -- it uses GENERATINGPOWERPC */
-#  define __FENV__
-#  include <machine/types.h>
-#  include <Carbon.h>
-# endif
+#ifdef GNUC
+/* Avoid including <CarbonCore/fp.h> -- it has a conflicting expl() */
+#define __FP__
+#include <Carbon/Carbon.h>
+#else
+/* Avoid including <fenv.h> -- it uses GENERATINGPOWERPC */
+#define __FENV__
+#include <machine/types.h>
+#include <Carbon.h>
+#endif
 #else
-# include <MacTypes.h>
+#include <MacTypes.h>
 #endif
 
 /*
 #define rindex strrchr
 
 #define Rand random
-extern void error(const char *,...);
+extern void error(const char *, ...);
 
 #if !defined(O_WRONLY)
-# if defined(__MWERKS__) && !TARGET_API_MAC_CARBON
-#  include <unix.h>
-# endif
-# include <fcntl.h>
+#if defined(__MWERKS__) && !TARGET_API_MAC_CARBON
+#include <unix.h>
+#endif
+#include <fcntl.h>
 #endif
 
 /*
  * Don't redefine these Unix IO functions when making LevComp or DgnComp for
  * MPW.  With MPW, we make them into MPW tools, which use unix IO.  SPEC_LEV
- * and DGN_COMP are defined when compiling for LevComp and DgnComp respectively.
+ * and DGN_COMP are defined when compiling for LevComp and DgnComp
+ * respectively.
  */
-#if !((defined(__SC__) || defined(__MRC__) || defined(__MACH__)) && (defined(SPEC_LEV) || defined(DGN_COMP)))
-# define creat maccreat
-# define open macopen
-# define close macclose
-# define read macread
-# define write macwrite
-# define lseek macseek
+#if !((defined(__SC__) || defined(__MRC__) || defined(__MACH__)) \
+      && (defined(SPEC_LEV) || defined(DGN_COMP)))
+#define creat maccreat
+#define open macopen
+#define close macclose
+#define read macread
+#define write macwrite
+#define lseek macseek
 #ifdef __MWERKS__
-# define unlink _unlink
+#define unlink _unlink
 #endif
 #endif
 
 #define YY_NEVER_INTERACTIVE 1
 
-# define TEXT_TYPE 'TEXT'
-# define LEVL_TYPE 'LEVL'
-# define BONE_TYPE 'BONE'
-# define SAVE_TYPE 'SAVE'
-# define PREF_TYPE 'PREF'
-# define DATA_TYPE 'DATA'
-# define MAC_CREATOR 'nh31' /* Registered with DTS ! */
-# define TEXT_CREATOR 'ttxt' /* Something the user can actually edit */
+#define TEXT_TYPE 'TEXT'
+#define LEVL_TYPE 'LEVL'
+#define BONE_TYPE 'BONE'
+#define SAVE_TYPE 'SAVE'
+#define PREF_TYPE 'PREF'
+#define DATA_TYPE 'DATA'
+#define MAC_CREATOR 'nh31'  /* Registered with DTS ! */
+#define TEXT_CREATOR 'ttxt' /* Something the user can actually edit */
 
 /*
  * Define PORT_HELP to be the name of the port-specfic help file.
@@ -124,5 +125,5 @@ extern void error(const char *,...);
 
 #define MAC_GRAPHICS_ENV
 
-# endif /* ! MACCONF_H */
+#endif /* ! MACCONF_H */
 #endif /* MAC */
index 85aaacdd49d1a41563dbabcec9b74585c1514fe7..cc86ba2f908f13346e54409c154d87f472d354c6 100644 (file)
@@ -5,7 +5,7 @@
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef MACPOPUP_H
-# define MACPOPUP_H
+#define MACPOPUP_H
 
 /* ### mmodal.c ### */
 
index 30524f75db1feea03bfdc66d728fb459c01120a3..ac9f3e66cfcf150e38c879ba158a35edbafa9a0f 100644 (file)
  */
 
 #ifndef _H_tty_public
-# define _H_tty_public
-#undef red                     /* undef internal color const strings from decl */
+#define _H_tty_public
+#undef red /* undef internal color const strings from decl */
 #undef green
 #undef blue
 #if 1 /*!TARGET_API_MAC_CARBON*/
-# include <windows.h>
+#include <windows.h>
 #endif
 
 /*
 /*
  * Commonly used characters
  */
-#define CHAR_ENTER ((char)3)
-#define CHAR_BELL ((char)7)
-#define CHAR_BS ((char)8)
-#define CHAR_LF ((char)10)
-#define CHAR_CR ((char)13)
-#define CHAR_ESC ((char)27)
-#define CHAR_BLANK ((char)32)
-#define CHAR_DELETE ((char)127)
-
-extern char game_active;       /* flag to window rendering routines not to use ppat */
-/*
- * If you want some fancy operations that not a normal TTY device normally
- * supports, use EXTENDED_SUPPORT. For frames, area erases and area scrolls,
- * plus bitmap graphics - RESOLUTION DEPENDENT, be sure to call
- * get_tty_metrics and use those limits.
- */
+#define CHAR_ENTER ((char) 3)
+#define CHAR_BELL ((char) 7)
+#define CHAR_BS ((char) 8)
+#define CHAR_LF ((char) 10)
+#define CHAR_CR ((char) 13)
+#define CHAR_ESC ((char) 27)
+#define CHAR_BLANK ((char) 32)
+#define CHAR_DELETE ((char) 127)
+
+extern char
+    game_active; /* flag to window rendering routines not to use ppat */
+                 /*
+                  * If you want some fancy operations that not a normal TTY device normally
+                  * supports, use EXTENDED_SUPPORT. For frames, area erases and area scrolls,
+                  * plus bitmap graphics - RESOLUTION DEPENDENT, be sure to call
+                  * get_tty_metrics and use those limits.
+                  */
 #define EXTENDED_SUPPORT 0
 /*
  * if you print a lot of single characters, accumulating each one in a
@@ -91,104 +92,106 @@ extern char game_active;  /* flag to window rendering routines not to use ppat */
 
 typedef enum tty_attrib {
 
-/*
- * Flags relating to the general functioning of the window.
- * These flags are passed at create_tty time, and changing them
- * later will clear the screen.
- */
-       TTY_ATTRIB_FLAGS ,
+    /*
    * Flags relating to the general functioning of the window.
    * These flags are passed at create_tty time, and changing them
    * later will clear the screen.
    */
+    TTY_ATTRIB_FLAGS,
 /*
  * When using proportional fonts, this will place each character
  * separately, ensuring aligned columns (but looking ugly and taking
  * time)
  */
-# define TA_MOVE_EACH_CHAR 1L
+#define TA_MOVE_EACH_CHAR 1L
 /*
  * This means draw each change as it occurs instead of collecting the area
  * and draw it all at once at update_tty() - slower, but more reliable.
  */
-# define TA_ALWAYS_REFRESH 2L
+#define TA_ALWAYS_REFRESH 2L
 /*
  * When reaching the right end, we either just stop drawing, or wrap to the
  * next line.
  */
-# define TA_WRAP_AROUND 4L
+#define TA_WRAP_AROUND 4L
 /*
  * Overstrike means that characters are added on top of each other; i e don't
  * clear the letter beneath. This is faster, using srcOr under QuickDraw
  */
-# define TA_OVERSTRIKE 8L
+#define TA_OVERSTRIKE 8L
 /*
  * We may want the window not to scroll when we reach the end line,
  * but stop drawing instead.
  */
-# define TA_INHIBIT_VERT_SCROLL 16L
-
-/*
- * Foreground and background colors. These only affect characters
- * drawn by subsequent calls; not what's already there (but it does
- * affect clears)
- * On b/w screens these do nothing.
- */
-       TTY_ATTRIB_FOREGROUND ,
-       TTY_ATTRIB_BACKGROUND ,
-# define TA_RGB_TO_TTY(r) ((((long)((r).red>>8)&0xff)<<16)+\
-       (((long)((r).green>>8)&0xff)<<8)+((long)((r).blue>>8)&0xff))
-
-/*
- * Attributes relating to the cursor, and character set mappings
- */
-       TTY_ATTRIB_CURSOR ,
+#define TA_INHIBIT_VERT_SCROLL 16L
+
+    /*
+     * Foreground and background colors. These only affect characters
+     * drawn by subsequent calls; not what's already there (but it does
+     * affect clears)
+     * On b/w screens these do nothing.
+     */
+    TTY_ATTRIB_FOREGROUND,
+    TTY_ATTRIB_BACKGROUND,
+#define TA_RGB_TO_TTY(r)                       \
+    ((((long) ((r).red >> 8) & 0xff) << 16)    \
+     + (((long) ((r).green >> 8) & 0xff) << 8) \
+     + ((long) ((r).blue >> 8) & 0xff))
+
+    /*
+     * Attributes relating to the cursor, and character set mappings
+     */
+    TTY_ATTRIB_CURSOR,
 /*
  * Blinking cursor is more noticeable when it's idle
  */
-# define TA_BLINKING_CURSOR 1L
+#define TA_BLINKING_CURSOR 1L
 /*
  * When handling input, do we echo characters as they are typed?
  */
-# define TA_ECHO_INPUT 2L
+#define TA_ECHO_INPUT 2L
 /*
  * Do we return each character code separately, or map delete etc? Note
  * that non-raw input means getchar won't return anything until the user
  * has typed a return.
  */
-# define TA_RAW_INPUT 4L
+#define TA_RAW_INPUT 4L
 /*
  * Do we print every character as it is (including BS, NL and CR!) or do
  * do we interpret characters such as NL, BS and CR?
  */
-# define TA_RAW_OUTPUT 8L
+#define TA_RAW_OUTPUT 8L
 /*
  * When getting a NL, do we also move to the left?
  */
-# define TA_NL_ADD_CR 16L
+#define TA_NL_ADD_CR 16L
 /*
  * When getting a CR, do we also move down?
  */
-# define TA_CR_ADD_NL 32L
+#define TA_CR_ADD_NL 32L
 /*
  * Wait for input or return what we've got?
  */
-# define TA_NONBLOCKING_IO 64L
+#define TA_NONBLOCKING_IO 64L
 
 /*
- * Use this macro to cast a function pointer to a tty attribute; this will help
+ * Use this macro to cast a function pointer to a tty attribute; this will
+ * help
  * portability to systems where a function pointer doesn't fit in a long
  */
-# define TA_ATTRIB_FUNC(x) ((long)(x))
+#define TA_ATTRIB_FUNC(x) ((long) (x))
 
-/*
- * This symbolic constant is used to check the number of attributes
- */
-       TTY_NUMBER_ATTRIBUTES
+    /*
    * This symbolic constant is used to check the number of attributes
    */
+    TTY_NUMBER_ATTRIBUTES
 
-} tty_attrib ;
+} tty_attrib;
 
 /*
  * Character returned by end-of-file condition
  */
-# define TTY_EOF -1
-
+#define TTY_EOF -1
 
 /*
  * Create the window according to a resource WIND template.
@@ -201,21 +204,21 @@ typedef enum tty_attrib {
  * crash. Not passing in_color means everything's rendered in
  * black & white.
  */
-extern short create_tty ( WindowPtr * window , short resource_id ,
-       Boolean in_color ) ;
+extern short create_tty(WindowPtr *window, short resource_id,
+                        Boolean in_color);
 
 /*
  * Use init_tty_name or init_tty_number to initialize a window
  * once allocated by create_tty. Size parameters are in characters.
  */
 
-extern short init_tty_number ( WindowPtr window , short font_number ,
-       short font_size , short x_size , short y_size ) ;
+extern short init_tty_number(WindowPtr window, short font_number,
+                             short font_size, short x_size, short y_size);
 
 /*
  * Close and deallocate a window and its data
  */
-extern short destroy_tty ( WindowPtr window ) ;
+extern short destroy_tty(WindowPtr window);
 
 /*
  * Change the font and font size used in the window for drawing after
@@ -223,48 +226,45 @@ extern short destroy_tty ( WindowPtr window ) ;
  * force_tty_coordinate_system_recalc() - else it may look strange if
  * the new font doesn't match the old one.
  */
-extern short set_tty_font_name (winid window_type , char * name ) ;
-extern short force_tty_coordinate_system_recalc ( WindowPtr window ) ;
+extern short set_tty_font_name(winid window_type, char *name);
+extern short force_tty_coordinate_system_recalc(WindowPtr window);
 
 /*
  * Getting some metrics about the tty and its drawing.
  */
-extern short get_tty_metrics ( WindowPtr window , short * x_size ,
-       short * y_size , short * x_size_pixels , short * y_size_pixels ,
-       short * font_number , short * font_size ,
-       short * char_width , short * row_height ) ;
+extern short get_tty_metrics(WindowPtr window, short *x_size, short *y_size,
+                             short *x_size_pixels, short *y_size_pixels,
+                             short *font_number, short *font_size,
+                             short *char_width, short *row_height);
 
 /*
  * The basic move cursor function. 0,0 is topleft.
  */
-extern short move_tty_cursor ( WindowPtr window , short x_pos ,
-       short y_pos ) ;
+extern short move_tty_cursor(WindowPtr window, short x_pos, short y_pos);
 
 /*
  * Flush all changes done to a tty to the screen (see TA_ALWAYS_UPDATE above)
  */
-extern short update_tty ( WindowPtr window ) ;
+extern short update_tty(WindowPtr window);
 
 /*
  * Add a character to the tty and update the cursor position
  */
-extern short add_tty_char ( WindowPtr window , short character ) ;
+extern short add_tty_char(WindowPtr window, short character);
 
 /*
  * Add a string of characters to the tty and update the cursor
  * position. The string is 0-terminated!
  */
-extern short add_tty_string ( WindowPtr window , const char * string ) ;
+extern short add_tty_string(WindowPtr window, const char *string);
 
 /*
  * Change or read an attribute of the tty. Note that some attribute changes
  * may clear the screen. See the above enum and defines for values.
  * Attributes can be both function pointers and special flag values.
  */
-extern short get_tty_attrib ( WindowPtr window , tty_attrib attrib ,
-       long * value ) ;
-extern short set_tty_attrib ( WindowPtr window , tty_attrib attrib ,
-       long value ) ;
+extern short get_tty_attrib(WindowPtr window, tty_attrib attrib, long *value);
+extern short set_tty_attrib(WindowPtr window, tty_attrib attrib, long value);
 
 /*
  * Scroll the actual TTY image, in characters, positive means up/left
@@ -272,56 +272,58 @@ extern short set_tty_attrib ( WindowPtr window , tty_attrib attrib ,
  * directly, regardless of the wait-update setting. Does updates before
  * scrolling.
  */
-extern short scroll_tty ( WindowPtr window , short delta_x ,
-       short delta_y ) ;
+extern short scroll_tty(WindowPtr window, short delta_x, short delta_y);
 
 /*
  * Erase the offscreen bitmap and move the cursor to 0,0. Re-init some window
  * values (font etc) Is always carried out directly on-screen, regardless of
  * the wait-for-update setting. Clears update area.
  */
-extern short clear_tty ( WindowPtr window ) ;
+extern short clear_tty(WindowPtr window);
 
 /*
  * Call this routine with a window (always _mt_window) and a time (usually
  * from most recent event) to determine if cursor in window should be blinked
  */
-extern short blink_cursor ( WindowPtr window , long when ) ;
+extern short blink_cursor(WindowPtr window, long when);
 
 /*
  * For screen dumps, open the printer port and call this function. Can be used
- * for clipboard as well (only for a PICT, though; this library doesn't concern
+ * for clipboard as well (only for a PICT, though; this library doesn't
+ * concern
  * itself with characters, just bitmaps)
  */
-extern short image_tty ( EventRecord *theEvent, WindowPtr window ) ;
+extern short image_tty(EventRecord *theEvent, WindowPtr window);
 
 /*
  * For erasing just an area of characters
  */
-extern short clear_tty_window ( WindowPtr window , short from_row ,
-       short from_col , short to_row , short to_col ) ;
+extern short clear_tty_window(WindowPtr window, short from_row,
+                              short from_col, short to_row, short to_col);
 
 /*
  * get and set the invalid region of the main window
  */
- extern short get_invalid_region (WindowPtr window, Rect *inval_rect);
- extern short set_invalid_region (WindowPtr window, Rect *inval_rect);
+extern short get_invalid_region(WindowPtr window, Rect *inval_rect);
+extern short set_invalid_region(WindowPtr window, Rect *inval_rect);
+
 /*
  * Now in macsnd.c, which seemed like a good place
  */
-extern void tty_nhbell ();
+extern void tty_nhbell();
 
 #if EXTENDED_SUPPORT
 
 /*
  * Various versions of delete character/s, insert line/s etc can be handled by
  * this general-purpose function. Negative num_ means delete, positive means
- * insert, and you can never be sure which of row and col operations come first
+ * insert, and you can never be sure which of row and col operations come
+ * first
  * if you specify both...
  */
-extern short mangle_tty_rows_columns ( WindowPtr window ,
-       short from_row , short num_rows , short from_col , short num_cols ) ;
+extern short mangle_tty_rows_columns(WindowPtr window, short from_row,
+                                     short num_rows, short from_col,
+                                     short num_cols);
 
 /*
  * For framing an area without using grahpics characters.
@@ -329,20 +331,21 @@ extern short mangle_tty_rows_columns ( WindowPtr window ,
  * draw in them. frame_fatness should typically be 1-5, and may be clipped
  * if it is too large.
  */
-extern short frame_tty_window ( WindowPtr window , short from_row ,
-       short from_col , short to_row , short to_col , short frame_fatness ) ;
+extern short frame_tty_window(WindowPtr window, short from_row,
+                              short from_col, short to_row, short to_col,
+                              short frame_fatness);
 
 /*
  * For inverting specific characters after the fact. May look funny in color.
  */
-extern short invert_tty_window ( WindowPtr window , short from_row ,
-       short from_col , short to_row , short to_col ) ;
+extern short invert_tty_window(WindowPtr window, short from_row,
+                               short from_col, short to_row, short to_col);
 
 /*
  * For drawing lines on the tty - VERY DEVICE DEPENDENT. Use get_tty_metrics.
  */
-extern short draw_tty_line ( WindowPtr window , short from_x ,
-       short from_y , short to_x , short to_y ) ;
+extern short draw_tty_line(WindowPtr window, short from_x, short from_y,
+                           short to_x, short to_y);
 
 #endif /* EXTENDED_SUPPORT */
 
index d79bfd7c12a2033529401c4bbf763c9cf2e0319d..d16781865f4f5e2a0a035655d08278dbe514bfd3 100644 (file)
@@ -5,8 +5,8 @@
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef MACWIN_H
-# define MACWIN_H
-#undef red                     /* undef internal color const strings from decl */
+#define MACWIN_H
+#undef red /* undef internal color const strings from decl */
 #undef green
 #undef blue
 
 
 /* more headers */
 #ifdef THINK_C
-#include <pascal.h>    /* for CtoPStr and PtoCStr */
+#include <pascal.h> /* for CtoPStr and PtoCStr */
 #endif
 
 /* resources */
-#define PLAYER_NAME_RES_ID     1001
+#define PLAYER_NAME_RES_ID 1001
 
 /* fake some things if we don't have universal headers.. */
-#if 0  /*ndef NewUserItemProc*/
+#if 0 /*ndef NewUserItemProc*/
 typedef pascal void (*UserItemProcPtr)(WindowPtr theWindow, short itemNo);
 typedef UserItemProcPtr UserItemUPP;
-#define NewUserItemProc(p)     (UserItemUPP)(p)
+#define NewUserItemProc(p) (UserItemUPP)(p)
 
 typedef pascal void (*ControlActionProcPtr)(ControlHandle theControl, short partCode);
 typedef ControlActionProcPtr ControlActionUPP;
@@ -39,41 +39,41 @@ typedef ModalFilterProcPtr ModalFilterUPP;
 
 /* misc */
 #ifdef __MWERKS__
-# define ResumeProcPtr long            /* for call to InitDialogs */
+#define ResumeProcPtr long /* for call to InitDialogs */
 #endif
 
 /* working dirs structure */
 typedef struct macdirs {
-       Str32           dataName;
-       short           dataRefNum;
-       long            dataDirID;
+    Str32 dataName;
+    short dataRefNum;
+    long dataDirID;
 
-       Str32           saveName;
-       short           saveRefNum;
-       long            saveDirID;
+    Str32 saveName;
+    short saveRefNum;
+    long saveDirID;
 
-       Str32           levelName;
-       short           levelRefNum;
-       long            levelDirID;
+    Str32 levelName;
+    short levelRefNum;
+    long levelDirID;
 } MacDirs;
 
 typedef struct macflags {
-       Bitfield (processes, 1);
-       Bitfield (color, 1);
-       Bitfield (folders, 1);
-       Bitfield (tempMem, 1);
-       Bitfield (help, 1);
-       Bitfield (fsSpec, 1);
-       Bitfield (trueType, 1);
-       Bitfield (aux, 1);
-       Bitfield (alias, 1);
-       Bitfield (standardFile, 1);
-       Bitfield (hasDebugger, 1);
-       Bitfield (hasAE, 1);
-       Bitfield (gotOpen, 1);
+    Bitfield(processes, 1);
+    Bitfield(color, 1);
+    Bitfield(folders, 1);
+    Bitfield(tempMem, 1);
+    Bitfield(help, 1);
+    Bitfield(fsSpec, 1);
+    Bitfield(trueType, 1);
+    Bitfield(aux, 1);
+    Bitfield(alias, 1);
+    Bitfield(standardFile, 1);
+    Bitfield(hasDebugger, 1);
+    Bitfield(hasAE, 1);
+    Bitfield(gotOpen, 1);
 } MacFlags;
 
-extern MacDirs theDirs;                /* used in macfile.c */
+extern MacDirs theDirs; /* used in macfile.c */
 extern MacFlags macFlags;
 
 /*
@@ -99,60 +99,58 @@ extern MacFlags macFlags;
 #define MIN_RIGHT 350
 
 typedef struct {
-       anything id;
-       char accelerator;
-       char groupAcc;
-       short line;
+    anything id;
+    char accelerator;
+    char groupAcc;
+    short line;
 } MacMHMenuItem;
 
 typedef struct NhWindow {
-       WindowPtr               its_window;
-
-       short                   font_number;
-       short                   font_size;
-       short                   char_width;
-       short                   row_height;
-       short                   ascent_height;
-       
-       short                   x_size;
-       short                   y_size;
-       short                   x_curs;
-       short                   y_curs;
-       
-       short           last_more_lin; /* Used by message window */
-       short           save_lin;               /* Used by message window */
-
-       short                   miSize;         /* size of menu items arrays */
-       short                   miLen;          /* number of menu items in array */
-       MacMHMenuItem   **menuInfo;             /* Used by menus (array handle) */
-       char            menuChar;               /* next menu accelerator to use */
-       short                   **menuSelected; /* list of selected elements from list */
-       short                   miSelLen;       /* number of items selected */
-       short                   how;            /* menu mode */
-
-       char                    drawn;
-       Handle                  windowText;
-       long                    windowTextLen;
-       short           scrollPos;
-       ControlHandle   scrollBar;
+    WindowPtr its_window;
+
+    short font_number;
+    short font_size;
+    short char_width;
+    short row_height;
+    short ascent_height;
+
+    short x_size;
+    short y_size;
+    short x_curs;
+    short y_curs;
+
+    short last_more_lin; /* Used by message window */
+    short save_lin;      /* Used by message window */
+
+    short miSize;             /* size of menu items arrays */
+    short miLen;              /* number of menu items in array */
+    MacMHMenuItem **menuInfo; /* Used by menus (array handle) */
+    char menuChar;            /* next menu accelerator to use */
+    short **menuSelected;     /* list of selected elements from list */
+    short miSelLen;           /* number of items selected */
+    short how;                /* menu mode */
+
+    char drawn;
+    Handle windowText;
+    long windowTextLen;
+    short scrollPos;
+    ControlHandle scrollBar;
 } NhWindow;
 
 extern Boolean CheckNhWin(WindowPtr mac_win);
 
-
 #define NUM_STAT_ROWS 2
 #define NUM_ROWS 22
 #define NUM_COLS 80 /* We shouldn't use column 0 */
 #define QUEUE_LEN 24
 
-extern NhWindow * theWindows;
+extern NhWindow *theWindows;
 
 extern struct window_procs mac_procs;
 
 #define NHW_BASE 0
 extern winid BASE_WINDOW, WIN_MAP, WIN_MESSAGE, WIN_INVEN, WIN_STATUS;
 
-
 /*
  * External declarations for the window routines.
  */
@@ -161,23 +159,23 @@ extern winid BASE_WINDOW, WIN_MAP, WIN_MESSAGE, WIN_INVEN, WIN_STATUS;
 
 /* ### dprintf.c ### */
 
-extern void dprintf (char *, ...);
+extern void dprintf(char *, ...);
 
 /* ### maccurs.c ### */
 
-extern Boolean RetrievePosition (short, short *, short *);
-extern Boolean RetrieveSize (short, short, short, short *, short *);
-extern void SaveWindowPos (WindowPtr);
-extern void SaveWindowSize (WindowPtr);
-extern Boolean FDECL(RetrieveWinPos, (WindowPtr,short *,short *));
+extern Boolean RetrievePosition(short, short *, short *);
+extern Boolean RetrieveSize(short, short, short, short *, short *);
+extern void SaveWindowPos(WindowPtr);
+extern void SaveWindowSize(WindowPtr);
+extern Boolean FDECL(RetrieveWinPos, (WindowPtr, short *, short *));
 
 /* ### macerrs.c ### */
 
-extern void showerror(char *,const char *);
+extern void showerror(char *, const char *);
 extern Boolean itworked(short);
 extern void mustwork(short);
 extern void attemptingto(char *);
-/* appear to be unused 
+/* appear to be unused
 extern void comment(char *,long);
 extern void pushattemptingto(char *);
 extern void popattempt(void);
@@ -185,12 +183,12 @@ extern void popattempt(void);
 /* ### macfile.c ### */
 
 /* extern char *macgets(int fd, char *ptr, unsigned len); unused */
-extern void FDECL(C2P,(const char *c, unsigned char *p));
-extern void FDECL(P2C,(const unsigned char *p, char *c));
+extern void FDECL(C2P, (const char *c, unsigned char *p));
+extern void FDECL(P2C, (const unsigned char *p, char *c));
 
 /* ### macmenu.c ### */
 
-extern void DoMenuEvt (long);
+extern void DoMenuEvt(long);
 extern void InitMenuRes(void);
 extern void AdjustMenus(short);
 #define DimMenuBar() AdjustMenus(1)
@@ -198,20 +196,21 @@ extern void AdjustMenus(short);
 
 /* ### macmain.c ### */
 
-extern void FDECL (process_openfile, (short s_vol, long s_dir, Str255 fNm, OSType ft));
+extern void FDECL(process_openfile,
+                  (short s_vol, long s_dir, Str255 fNm, OSType ft));
 
 /* ### macwin.c ### */
 
 extern void AddToKeyQueue(unsigned char, Boolean);
-extern unsigned char GetFromKeyQueue (void);
-void trans_num_keys (EventRecord *);
-extern void NDECL (InitMac);
-int FDECL (try_key_queue, (char *));
-void FDECL (enter_topl_mode, (char *));
-void FDECL (leave_topl_mode, (char *));
-void FDECL (topl_set_resp, (char *, char));
-Boolean FDECL (topl_key, (unsigned char, Boolean));
-E void FDECL(HandleEvent, (EventRecord *));    /* used in mmodal.c */
+extern unsigned char GetFromKeyQueue(void);
+void trans_num_keys(EventRecord *);
+extern void NDECL(InitMac);
+int FDECL(try_key_queue, (char *));
+void FDECL(enter_topl_mode, (char *));
+void FDECL(leave_topl_mode, (char *));
+void FDECL(topl_set_resp, (char *, char));
+Boolean FDECL(topl_key, (unsigned char, Boolean));
+E void FDECL(HandleEvent, (EventRecord *)); /* used in mmodal.c */
 extern void NDECL(port_help);
 
 extern Boolean small_screen;
@@ -224,11 +223,11 @@ E winid FDECL(mac_create_nhwindow, (int));
 E void FDECL(mac_clear_nhwindow, (winid));
 E void FDECL(mac_display_nhwindow, (winid, BOOLEAN_P));
 E void FDECL(mac_destroy_nhwindow, (winid));
-E void FDECL(mac_curs, (winid,int,int));
+E void FDECL(mac_curs, (winid, int, int));
 E void FDECL(mac_putstr, (winid, int, const char *));
 E void FDECL(mac_start_menu, (winid));
-E void FDECL(mac_add_menu, (winid,int,const anything *,
-               CHAR_P,CHAR_P,int,const char *, BOOLEAN_P));
+E void FDECL(mac_add_menu, (winid, int, const anything *, CHAR_P, CHAR_P, int,
+                            const char *, BOOLEAN_P));
 E void FDECL(mac_end_menu, (winid, const char *));
 E int FDECL(mac_select_menu, (winid, int, menu_item **));
 #ifdef CLIPPING
@@ -238,7 +237,7 @@ E int NDECL(mac_nhgetch);
 E int FDECL(mac_nh_poskey, (int *, int *, int *));
 E int NDECL(mac_doprev_message);
 E char FDECL(mac_yn_function, (const char *, const char *, CHAR_P));
-E void FDECL(mac_getlin, (const char *,char *));
+E void FDECL(mac_getlin, (const char *, char *));
 E int NDECL(mac_get_ext_cmd);
 E void FDECL(mac_number_pad, (int));
 E void NDECL(mac_delay_output);
index 4b59c96b2f7c20d826826952c8ac9f3cfd5eafdd..24dd6bd025d3df20ecc520e40caa10eeca21aeab 100644 (file)
@@ -3,20 +3,21 @@
 /*     SCCS Id: @(#)mail.h     3.5     1991/10/11      */
 /* NetHack may be freely redistributed.  See license for details. */
 
-/* used by ckmailstatus() to pass information to the mail-daemon in newmail() */
+/* used by ckmailstatus() to pass information to the mail-daemon in newmail()
+ */
 
 #ifndef MAIL_H
 #define MAIL_H
 
-#define MSG_OTHER 0    /* catch-all; none of the below... */
-#define MSG_MAIL  1    /* unimportant, uninteresting mail message */
-#define MSG_CALL  2    /* annoying phone/talk/chat-type interruption */
+#define MSG_OTHER 0 /* catch-all; none of the below... */
+#define MSG_MAIL 1  /* unimportant, uninteresting mail message */
+#define MSG_CALL 2  /* annoying phone/talk/chat-type interruption */
 
 struct mail_info {
-       int      message_typ;           /* MSG_foo value */
-       const char *display_txt;        /* text for daemon to verbalize */
-       const char *object_nam;         /* text to tag object with */
-       const char *response_cmd;       /* command to eventually execute */
+    int message_typ;          /* MSG_foo value */
+    const char *display_txt;  /* text for daemon to verbalize */
+    const char *object_nam;   /* text to tag object with */
+    const char *response_cmd; /* command to eventually execute */
 };
 
 #endif /* MAIL_H */
index 47986a2da704e339d46c8d897159d75b7687e526..1c4c42a82b3ce09d6db3ad324518a137d48967f3 100644 (file)
  *
  *      1. Add the structure definition and any required macros in this file
  *         above the mextra struct.
- *      2. Add a pointer to your new struct to the mextra struct in this file.
- *      3. Add a referencing macro at the bottom of this file after the mextra
+ *      2. Add a pointer to your new struct to the mextra struct in this
+ *file.
+ *      3. Add a referencing macro at the bottom of this file after the
+ *mextra
  *         struct (see MNAME, EGD, EPRI, ESHK, EMIN, or EDOG for examples).
- *      4. Create a newXX(mtmp) function and possibly a free_XX(mtmp) function
+ *      4. Create a newXX(mtmp) function and possibly a free_XX(mtmp)
+ *function
  *         in an appropriate new or existing source file and add a prototype
  *         for it to include/extern.h.
  *
  *             void FDECL(newXX, (struct monst *));
  *             void FDECL(free_XX, (struct monst *));
- *     
+ *
  *               void
  *               newXX(mtmp)
  *               struct monst *mtmp;
@@ -36,8 +39,9 @@
  *                                  0, sizeof(struct XX));
  *                   }
  *               }
- *     
- *      5. Consider adding a new makemon flag MM_XX flag to include/hack.h and
+ *
+ *      5. Consider adding a new makemon flag MM_XX flag to include/hack.h
+ *and
  *         a corresponding change to makemon() if you require your structure
  *         to be added at monster creation time. Initialize your struct
  *         after a successful return from makemon().
  *     10. Adjust savemon() in src/save.c to deal with your
  *         struct or data during a save.
  */
+
 /***
  **    formerly vault.h -- vault guard extension
  */
-#define FCSIZ  (ROWNO+COLNO)
-#define GD_EATGOLD     0x01
-#define GD_DESTROYGOLD 0x02
+#define FCSIZ (ROWNO + COLNO)
+#define GD_EATGOLD 0x01
+#define GD_DESTROYGOLD 0x02
 
 struct fakecorridor {
-       xchar fx, fy, ftyp;
+    xchar fx, fy, ftyp;
 };
 
 struct egd {
-       int fcbeg, fcend;       /* fcend: first unused pos */
-       int vroom;              /* room number of the vault */
-       xchar gdx, gdy;         /* goal of guard's walk */
-       xchar ogx, ogy;         /* guard's last position */
-       d_level gdlevel;        /* level (& dungeon) guard was created in */
-       xchar warncnt;          /* number of warnings to follow */
-       Bitfield(gddone,1);     /* true iff guard has released player */
-       Bitfield(witness,2);    /* the guard saw you do something */
-       Bitfield(unused,5);
-       struct fakecorridor fakecorr[FCSIZ];
+    int fcbeg, fcend;     /* fcend: first unused pos */
+    int vroom;            /* room number of the vault */
+    xchar gdx, gdy;       /* goal of guard's walk */
+    xchar ogx, ogy;       /* guard's last position */
+    d_level gdlevel;      /* level (& dungeon) guard was created in */
+    xchar warncnt;        /* number of warnings to follow */
+    Bitfield(gddone, 1);  /* true iff guard has released player */
+    Bitfield(witness, 2); /* the guard saw you do something */
+    Bitfield(unused, 5);
+    struct fakecorridor fakecorr[FCSIZ];
 };
 
 /***
  **    formerly epri.h -- temple priest extension
  */
 struct epri {
-       aligntyp shralign;      /* alignment of priest's shrine */
-       schar shroom;           /* index in rooms */
-       coord shrpos;           /* position of shrine */
-       d_level shrlevel;       /* level (& dungeon) of shrine */
-       long intone_time,       /* used to limit verbosity  +*/
-            enter_time,        /*+ of temple entry messages */
-            hostile_time,      /* forbidding feeling */
-            peaceful_time;     /* sense of peace */
+    aligntyp shralign; /* alignment of priest's shrine */
+    schar shroom;      /* index in rooms */
+    coord shrpos;      /* position of shrine */
+    d_level shrlevel;  /* level (& dungeon) of shrine */
+    long intone_time,  /* used to limit verbosity  +*/
+        enter_time,    /*+ of temple entry messages */
+        hostile_time,  /* forbidding feeling */
+        peaceful_time; /* sense of peace */
 };
 /* note: roaming priests (no shrine) switch from ispriest to isminion
    (and emin extension) */
@@ -99,44 +103,44 @@ struct epri {
 /***
  **    formerly eshk.h -- shopkeeper extension
  */
-#define REPAIR_DELAY   5       /* minimum delay between shop damage & repair */
-#define BILLSZ 200
+#define REPAIR_DELAY 5 /* minimum delay between shop damage & repair */
+#define BILLSZ 200
 
 struct bill_x {
-       unsigned bo_id;
-       boolean useup;
-       long price;             /* price per unit */
-       long bquan;             /* amount used up */
+    unsigned bo_id;
+    boolean useup;
+    long price; /* price per unit */
+    long bquan; /* amount used up */
 };
 
 struct eshk {
-       long robbed;            /* amount stolen by most recent customer */
-       long credit;            /* amount credited to customer */
-       long debit;             /* amount of debt for using unpaid items */
-       long loan;              /* shop-gold picked (part of debit) */
-       int shoptype;           /* the value of rooms[shoproom].rtype */
-       schar shoproom;         /* index in rooms; set by inshop() */
-       schar unused;           /* to force alignment for stupid compilers */
-       boolean following;      /* following customer since he owes us sth */
-       boolean surcharge;      /* angry shk inflates prices */
-       boolean dismiss_kops;   /* pacified shk sends kops away */
-       coord shk;              /* usual position shopkeeper */
-       coord shd;              /* position shop door */
-       d_level shoplevel;      /* level (& dungeon) of his shop */
-       int billct;             /* no. of entries of bill[] in use */
-       struct bill_x bill[BILLSZ];
-       struct bill_x *bill_p;
-       int visitct;            /* nr of visits by most recent customer */
-       char customer[PL_NSIZ]; /* most recent customer */
-       char shknam[PL_NSIZ];
+    long robbed;          /* amount stolen by most recent customer */
+    long credit;          /* amount credited to customer */
+    long debit;           /* amount of debt for using unpaid items */
+    long loan;            /* shop-gold picked (part of debit) */
+    int shoptype;         /* the value of rooms[shoproom].rtype */
+    schar shoproom;       /* index in rooms; set by inshop() */
+    schar unused;         /* to force alignment for stupid compilers */
+    boolean following;    /* following customer since he owes us sth */
+    boolean surcharge;    /* angry shk inflates prices */
+    boolean dismiss_kops; /* pacified shk sends kops away */
+    coord shk;            /* usual position shopkeeper */
+    coord shd;            /* position shop door */
+    d_level shoplevel;    /* level (& dungeon) of his shop */
+    int billct;           /* no. of entries of bill[] in use */
+    struct bill_x bill[BILLSZ];
+    struct bill_x *bill_p;
+    int visitct;            /* nr of visits by most recent customer */
+    char customer[PL_NSIZ]; /* most recent customer */
+    char shknam[PL_NSIZ];
 };
 
 /***
  **    formerly emin.h -- minion extension
  */
 struct emin {
-       aligntyp min_align;     /* alignment of minion */
-       boolean  renegade;      /* hostile co-aligned priest or Angel */
+    aligntyp min_align; /* alignment of minion */
+    boolean renegade;   /* hostile co-aligned priest or Angel */
 };
 
 /***
@@ -147,46 +151,46 @@ struct emin {
 #define CADAVER 1
 #define ACCFOOD 2
 #define MANFOOD 3
-#define APPORT 4
-#define POISON 5
-#define UNDEF  6
-#define TABU   7
+#define APPORT 4
+#define POISON 5
+#define UNDEF 6
+#define TABU 7
 
 struct edog {
-       long droptime;                  /* moment dog dropped object */
-       unsigned dropdist;              /* dist of drpped obj from @ */
-       int apport;                     /* amount of training */
-       long whistletime;               /* last time he whistled */
-       long hungrytime;                /* will get hungry at this time */
-       coord ogoal;                    /* previous goal location */
-       int abuse;                      /* track abuses to this pet */
-       int revivals;                   /* count pet deaths */
-       int mhpmax_penalty;             /* while starving, points reduced */
-       Bitfield(killed_by_u, 1);       /* you attempted to kill him */
+    long droptime;            /* moment dog dropped object */
+    unsigned dropdist;        /* dist of drpped obj from @ */
+    int apport;               /* amount of training */
+    long whistletime;         /* last time he whistled */
+    long hungrytime;          /* will get hungry at this time */
+    coord ogoal;              /* previous goal location */
+    int abuse;                /* track abuses to this pet */
+    int revivals;             /* count pet deaths */
+    int mhpmax_penalty;       /* while starving, points reduced */
+    Bitfield(killed_by_u, 1); /* you attempted to kill him */
 };
 
 /***
  **    mextra.h -- collection of all monster extensions
  */
 struct mextra {
-       char *mname;
-       struct egd *egd;
-       struct epri *epri;
-       struct eshk *eshk;
-       struct emin *emin;
-       struct edog *edog;
-       int mcorpsenm; /* obj->corpsenm for mimic posing as statue or corpse */
+    char *mname;
+    struct egd *egd;
+    struct epri *epri;
+    struct eshk *eshk;
+    struct emin *emin;
+    struct edog *edog;
+    int mcorpsenm; /* obj->corpsenm for mimic posing as statue or corpse */
 };
 
-#define MNAME(mon)     ((mon)->mextra->mname)
-#define EGD(mon)       ((mon)->mextra->egd)
-#define EPRI(mon)      ((mon)->mextra->epri)
-#define ESHK(mon)      ((mon)->mextra->eshk)
-#define EMIN(mon)      ((mon)->mextra->emin)
-#define EDOG(mon)      ((mon)->mextra->edog)
-#define MCORPSENM(mon) ((mon)->mextra->mcorpsenm)
+#define MNAME(mon) ((mon)->mextra->mname)
+#define EGD(mon) ((mon)->mextra->egd)
+#define EPRI(mon) ((mon)->mextra->epri)
+#define ESHK(mon) ((mon)->mextra->eshk)
+#define EMIN(mon) ((mon)->mextra->emin)
+#define EDOG(mon) ((mon)->mextra->edog)
+#define MCORPSENM(mon) ((mon)->mextra->mcorpsenm)
 
-#define has_mname(mon) ((mon)->mextra && MNAME(mon))
+#define has_mname(mon) ((mon)->mextra && MNAME(mon))
 #define has_mcorpsenm(mon) ((mon)->mextra && MCORPSENM(mon) != NON_PM)
 
 #endif /* MEXTRA_H */
index 93319789b8c1093e67366f033538a74c34effd55..340c7ce7271fc7a214762ad1370356e42a2ebf56 100644 (file)
@@ -7,26 +7,26 @@
 #ifndef MFNDPOS_H
 #define MFNDPOS_H
 
-#define ALLOW_MDISP    0x00001000L     /* can displace a monster out of its way */
-#define ALLOW_TRAPS    0x00020000L     /* can enter traps */
-#define ALLOW_U                0x00040000L     /* can attack you */
-#define ALLOW_M                0x00080000L     /* can attack other monsters */
-#define ALLOW_TM       0x00100000L     /* can attack tame monsters */
-#define ALLOW_ALL      (ALLOW_U | ALLOW_M | ALLOW_TM | ALLOW_TRAPS)
-#define NOTONL         0x00200000L     /* avoids direct line to player */
-#define OPENDOOR       0x00400000L     /* opens closed doors */
-#define UNLOCKDOOR     0x00800000L     /* unlocks locked doors */
-#define BUSTDOOR       0x01000000L     /* breaks any doors */
-#define ALLOW_ROCK     0x02000000L     /* pushes rocks */
-#define ALLOW_WALL     0x04000000L     /* walks thru walls */
-#define ALLOW_DIG      0x08000000L     /* digs */
-#define ALLOW_BARS     0x10000000L     /* may pass thru iron bars */
-#define ALLOW_SANCT    0x20000000L     /* enters temples */
-#define ALLOW_SSM      0x40000000L     /* ignores scare monster */
+#define ALLOW_MDISP 0x00001000L /* can displace a monster out of its way */
+#define ALLOW_TRAPS 0x00020000L /* can enter traps */
+#define ALLOW_U 0x00040000L     /* can attack you */
+#define ALLOW_M 0x00080000L     /* can attack other monsters */
+#define ALLOW_TM 0x00100000L    /* can attack tame monsters */
+#define ALLOW_ALL (ALLOW_U | ALLOW_M | ALLOW_TM | ALLOW_TRAPS)
+#define NOTONL 0x00200000L      /* avoids direct line to player */
+#define OPENDOOR 0x00400000L    /* opens closed doors */
+#define UNLOCKDOOR 0x00800000L  /* unlocks locked doors */
+#define BUSTDOOR 0x01000000L    /* breaks any doors */
+#define ALLOW_ROCK 0x02000000L  /* pushes rocks */
+#define ALLOW_WALL 0x04000000L  /* walks thru walls */
+#define ALLOW_DIG 0x08000000L   /* digs */
+#define ALLOW_BARS 0x10000000L  /* may pass thru iron bars */
+#define ALLOW_SANCT 0x20000000L /* enters temples */
+#define ALLOW_SSM 0x40000000L   /* ignores scare monster */
 #ifdef NHSTDC
-#define NOGARLIC       0x80000000UL    /* hates garlic */
+#define NOGARLIC 0x80000000UL /* hates garlic */
 #else
-#define NOGARLIC       0x80000000L     /* hates garlic */
+#define NOGARLIC 0x80000000L /* hates garlic */
 #endif
 
 #endif /* MFNDPOS_H */
index b8a0f77f80b5ec44b7da9986bebe7c84239749a2..591b261d490f165431724028c1442ae7d3f26d5c 100644 (file)
@@ -13,10 +13,10 @@ extern char levels[], bones[], permbones[], hackdir[];
 extern int ramdisk;
 
 #ifndef C
-#define C(c)   (0x1f & (c))
+#define C(c) (0x1f & (c))
 #endif
 #ifndef M
-#define M(c)   (((char)0x80) | (c))
+#define M(c) (((char) 0x80) | (c))
 #endif
 #define ABORT C('a')
 
index dc27ac1318199fcc3115b3488391394230e5baa8..4e3a51b51d4cec06e629ecfc4849b292a51ce775 100644 (file)
@@ -9,37 +9,37 @@
 /* mkroom.h - types and structures for room and shop initialization */
 
 struct mkroom {
-       schar lx,hx,ly,hy;      /* usually xchar, but hx may be -1 */
-       schar rtype;            /* type of room (zoo, throne, etc...) */
-       schar orig_rtype;       /* same as rtype, but not zeroed later */
-       schar rlit;             /* is the room lit ? */
-       schar needfill;         /* sp_lev: does the room need filling? */
-       schar needjoining;      /* sp_lev */
-       schar doorct;           /* door count */
-       schar fdoor;            /* index for the first door of the room */
-       schar nsubrooms;        /* number of subrooms */
-       boolean irregular;      /* true if room is non-rectangular */
-       struct mkroom *sbrooms[MAX_SUBROOMS];  /* Subrooms pointers */
-       struct monst *resident; /* priest/shopkeeper/guard for this room */
+    schar lx, hx, ly, hy; /* usually xchar, but hx may be -1 */
+    schar rtype;          /* type of room (zoo, throne, etc...) */
+    schar orig_rtype;     /* same as rtype, but not zeroed later */
+    schar rlit;           /* is the room lit ? */
+    schar needfill;       /* sp_lev: does the room need filling? */
+    schar needjoining;    /* sp_lev */
+    schar doorct;         /* door count */
+    schar fdoor;          /* index for the first door of the room */
+    schar nsubrooms;      /* number of subrooms */
+    boolean irregular;    /* true if room is non-rectangular */
+    struct mkroom *sbrooms[MAX_SUBROOMS]; /* Subrooms pointers */
+    struct monst *resident; /* priest/shopkeeper/guard for this room */
 };
 
 struct shclass {
-       const char *name;       /* name of the shop type */
-       char    symb;           /* this identifies the shop type */
-       int     prob;           /* the shop type probability in % */
-       schar   shdist;         /* object placement type */
-#define D_SCATTER      0       /* normal placement */
-#define D_SHOP         1       /* shop-like placement */
-#define D_TEMPLE       2       /* temple-like placement */
-       struct itp {
-           int iprob;          /* probability of an item type */
-           int itype;  /* item type: if >=0 a class, if < 0 a specific item */
-       } iprobs[6];
-       const char * const *shknms;     /* list of shopkeeper names for this type */
+    const char *name; /* name of the shop type */
+    char symb;        /* this identifies the shop type */
+    int prob;         /* the shop type probability in % */
+    schar shdist;     /* object placement type */
+#define D_SCATTER 0   /* normal placement */
+#define D_SHOP 1      /* shop-like placement */
+#define D_TEMPLE 2    /* temple-like placement */
+    struct itp {
+        int iprob; /* probability of an item type */
+        int itype; /* item type: if >=0 a class, if < 0 a specific item */
+    } iprobs[6];
+    const char *const *shknms; /* list of shopkeeper names for this type */
 };
 
-extern NEARDATA struct mkroom rooms[(MAXNROFROOMS+1)*2];
-extern NEARDATA struct mkroomsubrooms;
+extern NEARDATA struct mkroom rooms[(MAXNROFROOMS + 1) * 2];
+extern NEARDATA struct mkroom *subrooms;
 /* the normal rooms on the current level are described in rooms[0..n] for
  * some n<MAXNROFROOMS
  * the vault, if any, is described by rooms[n+1]
@@ -52,57 +52,58 @@ extern struct mkroom *dnstairs_room, *upstairs_room, *sstairs_room;
 extern NEARDATA coord doors[DOORMAX];
 
 /* values for rtype in the room definition structure */
-#define OROOM           0      /* ordinary room */
-#define COURT           2      /* contains a throne */
-#define SWAMP           3      /* contains pools */
-#define VAULT           4      /* contains piles of gold */
-#define BEEHIVE                 5      /* contains killer bees and royal jelly */
-#define MORGUE          6      /* contains corpses, undead and ghosts */
-#define BARRACKS        7      /* contains soldiers and their gear */
-#define ZOO             8      /* floor covered with treasure and monsters */
-#define DELPHI          9      /* contains Oracle and peripherals */
-#define TEMPLE         10      /* contains a shrine */
-#define LEPREHALL      11      /* leprechaun hall (Tom Proudfoot) */
-#define COCKNEST       12      /* cockatrice nest (Tom Proudfoot) */
-#define ANTHOLE                13      /* ants (Tom Proudfoot) */
-#define SHOPBASE       14      /* everything above this is a shop */
-#define ARMORSHOP      15      /* specific shop defines for level compiler */
-#define SCROLLSHOP     16
-#define POTIONSHOP     17
-#define WEAPONSHOP     18
-#define FOODSHOP       19
-#define RINGSHOP       20
-#define WANDSHOP       21
-#define TOOLSHOP       22
-#define BOOKSHOP       23
-#define FODDERSHOP     24      /* health food store */
-#define UNIQUESHOP     25      /* shops here & below not randomly gen'd. */
-#define CANDLESHOP     25
-#define MAXRTYPE       25      /* maximum valid room type */
+#define OROOM 0      /* ordinary room */
+#define COURT 2      /* contains a throne */
+#define SWAMP 3      /* contains pools */
+#define VAULT 4      /* contains piles of gold */
+#define BEEHIVE 5    /* contains killer bees and royal jelly */
+#define MORGUE 6     /* contains corpses, undead and ghosts */
+#define BARRACKS 7   /* contains soldiers and their gear */
+#define ZOO 8        /* floor covered with treasure and monsters */
+#define DELPHI 9     /* contains Oracle and peripherals */
+#define TEMPLE 10    /* contains a shrine */
+#define LEPREHALL 11 /* leprechaun hall (Tom Proudfoot) */
+#define COCKNEST 12  /* cockatrice nest (Tom Proudfoot) */
+#define ANTHOLE 13   /* ants (Tom Proudfoot) */
+#define SHOPBASE 14  /* everything above this is a shop */
+#define ARMORSHOP 15 /* specific shop defines for level compiler */
+#define SCROLLSHOP 16
+#define POTIONSHOP 17
+#define WEAPONSHOP 18
+#define FOODSHOP 19
+#define RINGSHOP 20
+#define WANDSHOP 21
+#define TOOLSHOP 22
+#define BOOKSHOP 23
+#define FODDERSHOP 24 /* health food store */
+#define UNIQUESHOP 25 /* shops here & below not randomly gen'd. */
+#define CANDLESHOP 25
+#define MAXRTYPE 25 /* maximum valid room type */
 
 /* Special type for search_special() */
-#define ANY_TYPE       (-1)
-#define ANY_SHOP       (-2)
+#define ANY_TYPE (-1)
+#define ANY_SHOP (-2)
 
-#define NO_ROOM                0       /* indicates lack of room-occupancy */
-#define SHARED         1       /* indicates normal shared boundary */
-#define SHARED_PLUS    2       /* indicates shared boundary - extra adjacent-
-                                * square searching required */
+#define NO_ROOM 0 /* indicates lack of room-occupancy */
+#define SHARED 1  /* indicates normal shared boundary */
+#define SHARED_PLUS                                  \
+    2 /* indicates shared boundary - extra adjacent- \
+       * square searching required */
 
-#define ROOMOFFSET     3       /*
-                                * (levl[x][y].roomno - ROOMOFFSET) gives
-                                * rooms[] index, for inside-squares and
-                                * non-shared boundaries.
-                                */
+#define ROOMOFFSET                              \
+    3 /*                                        \
+       * (levl[x][y].roomno - ROOMOFFSET) gives \
+       * rooms[] index, for inside-squares and  \
+       * non-shared boundaries.                 \
+       */
 
-#define IS_ROOM_PTR(x)         ((x) >= rooms && (x) < rooms + MAXNROFROOMS)
-#define IS_ROOM_INDEX(x)       ((x) >= 0 && (x) < MAXNROFROOMS)
-#define IS_SUBROOM_PTR(x)      ((x) >= subrooms && \
-                                (x) < subrooms + MAXNROFROOMS)
-#define IS_SUBROOM_INDEX(x)    ((x) > MAXNROFROOMS && (x) < (MAXNROFROOMS*2))
-#define ROOM_INDEX(x)          ((x) - rooms)
-#define SUBROOM_INDEX(x)       ((x) - subrooms)
-#define IS_LAST_ROOM_PTR(x)    (ROOM_INDEX(x) == nroom)
-#define IS_LAST_SUBROOM_PTR(x) (!nsubroom || SUBROOM_INDEX(x) == nsubroom)
+#define IS_ROOM_PTR(x) ((x) >= rooms && (x) < rooms + MAXNROFROOMS)
+#define IS_ROOM_INDEX(x) ((x) >= 0 && (x) < MAXNROFROOMS)
+#define IS_SUBROOM_PTR(x) ((x) >= subrooms && (x) < subrooms + MAXNROFROOMS)
+#define IS_SUBROOM_INDEX(x) ((x) > MAXNROFROOMS && (x) < (MAXNROFROOMS * 2))
+#define ROOM_INDEX(x) ((x) -rooms)
+#define SUBROOM_INDEX(x) ((x) -subrooms)
+#define IS_LAST_ROOM_PTR(x) (ROOM_INDEX(x) == nroom)
+#define IS_LAST_SUBROOM_PTR(x) (!nsubroom || SUBROOM_INDEX(x) == nsubroom)
 
 #endif /* MKROOM_H */
index f415fe00def1066f5591b4bb704bad120098d8de..1a85c132cd1a483d61c9d423fb3553d6a14a795f 100644 (file)
 /*     Add new attack types below - ordering affects experience (exper.c).
  *     Attacks > AT_BUTT are worth extra experience.
  */
-#define AT_ANY         (-1)    /* fake attack; dmgtype_fromattack wildcard */
-#define AT_NONE                0       /* passive monster (ex. acid blob) */
-#define AT_CLAW                1       /* claw (punch, hit, etc.) */
-#define AT_BITE                2       /* bite */
-#define AT_KICK                3       /* kick */
-#define AT_BUTT                4       /* head butt (ex. a unicorn) */
-#define AT_TUCH                5       /* touches */
-#define AT_STNG                6       /* sting */
-#define AT_HUGS                7       /* crushing bearhug */
-#define AT_SPIT                10      /* spits substance - ranged */
-#define AT_ENGL                11      /* engulf (swallow or by a cloud) */
-#define AT_BREA                12      /* breath - ranged */
-#define AT_EXPL                13      /* explodes - proximity */
-#define AT_BOOM                14      /* explodes when killed */
-#define AT_GAZE                15      /* gaze - ranged */
-#define AT_TENT                16      /* tentacles */
+#define AT_ANY (-1) /* fake attack; dmgtype_fromattack wildcard */
+#define AT_NONE 0   /* passive monster (ex. acid blob) */
+#define AT_CLAW 1   /* claw (punch, hit, etc.) */
+#define AT_BITE 2   /* bite */
+#define AT_KICK 3   /* kick */
+#define AT_BUTT 4   /* head butt (ex. a unicorn) */
+#define AT_TUCH 5   /* touches */
+#define AT_STNG 6   /* sting */
+#define AT_HUGS 7   /* crushing bearhug */
+#define AT_SPIT 10  /* spits substance - ranged */
+#define AT_ENGL 11  /* engulf (swallow or by a cloud) */
+#define AT_BREA 12  /* breath - ranged */
+#define AT_EXPL 13  /* explodes - proximity */
+#define AT_BOOM 14  /* explodes when killed */
+#define AT_GAZE 15  /* gaze - ranged */
+#define AT_TENT 16  /* tentacles */
 
-#define AT_WEAP                254     /* uses weapon */
-#define AT_MAGC                255     /* uses magic spell(s) */
+#define AT_WEAP 254 /* uses weapon */
+#define AT_MAGC 255 /* uses magic spell(s) */
 
 /*     Add new damage types below.
  *
  *     Note that 1-10 correspond to the types of attack used in buzz().
  *     Please don't disturb the order unless you rewrite the buzz() code.
  */
-#define AD_ANY         (-1)    /* fake damage; attacktype_fordmg wildcard */
-#define AD_PHYS                0       /* ordinary physical */
-#define AD_MAGM                1       /* magic missiles */
-#define AD_FIRE                2       /* fire damage */
-#define AD_COLD                3       /* frost damage */
-#define AD_SLEE                4       /* sleep ray */
-#define AD_DISN                5       /* disintegration (death ray) */
-#define AD_ELEC                6       /* shock damage */
-#define AD_DRST                7       /* drains str (poison) */
-#define AD_ACID                8       /* acid damage */
-#define AD_SPC1                9       /* for extension of buzz() */
-#define AD_SPC2                10      /* for extension of buzz() */
-#define AD_BLND                11      /* blinds (yellow light) */
-#define AD_STUN                12      /* stuns */
-#define AD_SLOW                13      /* slows */
-#define AD_PLYS                14      /* paralyses */
-#define AD_DRLI                15      /* drains life levels (Vampire) */
-#define AD_DREN                16      /* drains magic energy */
-#define AD_LEGS                17      /* damages legs (xan) */
-#define AD_STON                18      /* petrifies (Medusa, cockatrice) */
-#define AD_STCK                19      /* sticks to you (mimic) */
-#define AD_SGLD                20      /* steals gold (leppie) */
-#define AD_SITM                21      /* steals item (nymphs) */
-#define AD_SEDU                22      /* seduces & steals multiple items */
-#define AD_TLPT                23      /* teleports you (Quantum Mech.) */
-#define AD_RUST                24      /* rusts armour (Rust Monster)*/
-#define AD_CONF                25      /* confuses (Umber Hulk) */
-#define AD_DGST                26      /* digests opponent (trapper, etc.) */
-#define AD_HEAL                27      /* heals opponent's wounds (nurse) */
-#define AD_WRAP                28      /* special "stick" for eels */
-#define AD_WERE                29      /* confers lycanthropy */
-#define AD_DRDX                30      /* drains dexterity (quasit) */
-#define AD_DRCO                31      /* drains constitution */
-#define AD_DRIN                32      /* drains intelligence (mind flayer) */
-#define AD_DISE                33      /* confers diseases */
-#define AD_DCAY                34      /* decays organics (brown Pudding) */
-#define AD_SSEX                35      /* Succubus seduction (extended) */
-#define AD_HALU                36      /* causes hallucination */
-#define AD_DETH                37      /* for Death only */
-#define AD_PEST                38      /* for Pestilence only */
-#define AD_FAMN                39      /* for Famine only */
-#define AD_SLIM                40      /* turns you into green slime */
-#define AD_ENCH                41      /* remove enchantment (disenchanter) */
-#define AD_CORR                42      /* corrode armor (black pudding) */
+#define AD_ANY (-1) /* fake damage; attacktype_fordmg wildcard */
+#define AD_PHYS 0   /* ordinary physical */
+#define AD_MAGM 1   /* magic missiles */
+#define AD_FIRE 2   /* fire damage */
+#define AD_COLD 3   /* frost damage */
+#define AD_SLEE 4   /* sleep ray */
+#define AD_DISN 5   /* disintegration (death ray) */
+#define AD_ELEC 6   /* shock damage */
+#define AD_DRST 7   /* drains str (poison) */
+#define AD_ACID 8   /* acid damage */
+#define AD_SPC1 9   /* for extension of buzz() */
+#define AD_SPC2 10  /* for extension of buzz() */
+#define AD_BLND 11  /* blinds (yellow light) */
+#define AD_STUN 12  /* stuns */
+#define AD_SLOW 13  /* slows */
+#define AD_PLYS 14  /* paralyses */
+#define AD_DRLI 15  /* drains life levels (Vampire) */
+#define AD_DREN 16  /* drains magic energy */
+#define AD_LEGS 17  /* damages legs (xan) */
+#define AD_STON 18  /* petrifies (Medusa, cockatrice) */
+#define AD_STCK 19  /* sticks to you (mimic) */
+#define AD_SGLD 20  /* steals gold (leppie) */
+#define AD_SITM 21  /* steals item (nymphs) */
+#define AD_SEDU 22  /* seduces & steals multiple items */
+#define AD_TLPT 23  /* teleports you (Quantum Mech.) */
+#define AD_RUST 24  /* rusts armour (Rust Monster)*/
+#define AD_CONF 25  /* confuses (Umber Hulk) */
+#define AD_DGST 26  /* digests opponent (trapper, etc.) */
+#define AD_HEAL 27  /* heals opponent's wounds (nurse) */
+#define AD_WRAP 28  /* special "stick" for eels */
+#define AD_WERE 29  /* confers lycanthropy */
+#define AD_DRDX 30  /* drains dexterity (quasit) */
+#define AD_DRCO 31  /* drains constitution */
+#define AD_DRIN 32  /* drains intelligence (mind flayer) */
+#define AD_DISE 33  /* confers diseases */
+#define AD_DCAY 34  /* decays organics (brown Pudding) */
+#define AD_SSEX 35  /* Succubus seduction (extended) */
+#define AD_HALU 36  /* causes hallucination */
+#define AD_DETH 37  /* for Death only */
+#define AD_PEST 38  /* for Pestilence only */
+#define AD_FAMN 39  /* for Famine only */
+#define AD_SLIM 40  /* turns you into green slime */
+#define AD_ENCH 41  /* remove enchantment (disenchanter) */
+#define AD_CORR 42  /* corrode armor (black pudding) */
 
-#define AD_CLRC                240     /* random clerical spell */
-#define AD_SPEL                241     /* random magic spell */
-#define AD_RBRE                242     /* random breath weapon */
-
-#define AD_SAMU                252     /* hits, may steal Amulet (Wizard) */
-#define AD_CURS                253     /* random curse (ex. gremlin) */
+#define AD_CLRC 240 /* random clerical spell */
+#define AD_SPEL 241 /* random magic spell */
+#define AD_RBRE 242 /* random breath weapon */
 
+#define AD_SAMU 252 /* hits, may steal Amulet (Wizard) */
+#define AD_CURS 253 /* random curse (ex. gremlin) */
 
 /*
  *  Monster to monster attacks.  When a monster attacks another (mattackm),
  *  any or all of the following can be returned.  See mattackm() for more
  *  details.
  */
-#define MM_MISS                0x0     /* aggressor missed */
-#define MM_HIT         0x1     /* aggressor hit defender */
-#define MM_DEF_DIED    0x2     /* defender died */
-#define MM_AGR_DIED    0x4     /* aggressor died */
+#define MM_MISS 0x0     /* aggressor missed */
+#define MM_HIT 0x1      /* aggressor hit defender */
+#define MM_DEF_DIED 0x2 /* defender died */
+#define MM_AGR_DIED 0x4 /* aggressor died */
 
 #endif /* MONATTK_H */
index e879cd810a71667da486443026936cfe2626b83d..d81baa0913cef3070587eb379efe3d4125d59bd4 100644 (file)
 #ifndef MONDATA_H
 #define MONDATA_H
 
-#define verysmall(ptr)         ((ptr)->msize < MZ_SMALL)
-#define bigmonst(ptr)          ((ptr)->msize >= MZ_LARGE)
+#define verysmall(ptr) ((ptr)->msize < MZ_SMALL)
+#define bigmonst(ptr) ((ptr)->msize >= MZ_LARGE)
 
-#define pm_resistance(ptr,typ) (((ptr)->mresists & (typ)) != 0)
+#define pm_resistance(ptr, typ) (((ptr)->mresists & (typ)) != 0)
 
-#define resists_fire(mon)      (((mon)->mintrinsics & MR_FIRE) != 0)
-#define resists_cold(mon)      (((mon)->mintrinsics & MR_COLD) != 0)
-#define resists_sleep(mon)     (((mon)->mintrinsics & MR_SLEEP) != 0)
-#define resists_disint(mon)    (((mon)->mintrinsics & MR_DISINT) != 0)
-#define resists_elec(mon)      (((mon)->mintrinsics & MR_ELEC) != 0)
-#define resists_poison(mon)    (((mon)->mintrinsics & MR_POISON) != 0)
-#define resists_acid(mon)      (((mon)->mintrinsics & MR_ACID) != 0)
-#define resists_ston(mon)      (((mon)->mintrinsics & MR_STONE) != 0)
+#define resists_fire(mon) (((mon)->mintrinsics & MR_FIRE) != 0)
+#define resists_cold(mon) (((mon)->mintrinsics & MR_COLD) != 0)
+#define resists_sleep(mon) (((mon)->mintrinsics & MR_SLEEP) != 0)
+#define resists_disint(mon) (((mon)->mintrinsics & MR_DISINT) != 0)
+#define resists_elec(mon) (((mon)->mintrinsics & MR_ELEC) != 0)
+#define resists_poison(mon) (((mon)->mintrinsics & MR_POISON) != 0)
+#define resists_acid(mon) (((mon)->mintrinsics & MR_ACID) != 0)
+#define resists_ston(mon) (((mon)->mintrinsics & MR_STONE) != 0)
 
-#define is_lminion(mon)                (is_minion((mon)->data) && \
-                                mon_aligntyp(mon) == A_LAWFUL)
-#define is_flyer(ptr)          (((ptr)->mflags1 & M1_FLY) != 0L)
-#define is_floater(ptr)                ((ptr)->mlet == S_EYE)
-#define is_clinger(ptr)                (((ptr)->mflags1 & M1_CLING) != 0L)
-#define is_swimmer(ptr)                (((ptr)->mflags1 & M1_SWIM) != 0L)
-#define breathless(ptr)                (((ptr)->mflags1 & M1_BREATHLESS) != 0L)
-#define amphibious(ptr)                (((ptr)->mflags1 & (M1_AMPHIBIOUS | M1_BREATHLESS)) != 0L)
-#define passes_walls(ptr)      (((ptr)->mflags1 & M1_WALLWALK) != 0L)
-#define amorphous(ptr)         (((ptr)->mflags1 & M1_AMORPHOUS) != 0L)
-#define noncorporeal(ptr)      ((ptr)->mlet == S_GHOST)
-#define tunnels(ptr)           (((ptr)->mflags1 & M1_TUNNEL) != 0L)
-#define needspick(ptr)         (((ptr)->mflags1 & M1_NEEDPICK) != 0L)
-#define hides_under(ptr)       (((ptr)->mflags1 & M1_CONCEAL) != 0L)
-#define is_hider(ptr)          (((ptr)->mflags1 & M1_HIDE) != 0L)
-#define haseyes(ptr)           (((ptr)->mflags1 & M1_NOEYES) == 0L)
-#define eyecount(ptr)          (!haseyes(ptr) ? 0 : \
-                                ((ptr) == &mons[PM_CYCLOPS] || \
-                                 (ptr) == &mons[PM_FLOATING_EYE]) ? 1 : 2)
-#define nohands(ptr)           (((ptr)->mflags1 & M1_NOHANDS) != 0L)
-#define nolimbs(ptr)           (((ptr)->mflags1 & M1_NOLIMBS) == M1_NOLIMBS)
-#define notake(ptr)            (((ptr)->mflags1 & M1_NOTAKE) != 0L)
-#define has_head(ptr)          (((ptr)->mflags1 & M1_NOHEAD) == 0L)
-#define has_horns(ptr)         (num_horns(ptr) > 0)
-#define is_whirly(ptr)         ((ptr)->mlet == S_VORTEX || \
-                                (ptr) == &mons[PM_AIR_ELEMENTAL])
-#define flaming(ptr)           ((ptr) == &mons[PM_FIRE_VORTEX] || \
-                                (ptr) == &mons[PM_FLAMING_SPHERE] || \
-                                (ptr) == &mons[PM_FIRE_ELEMENTAL] || \
-                                (ptr) == &mons[PM_SALAMANDER])
-#define is_silent(ptr)         ((ptr)->msound == MS_SILENT)
-#define unsolid(ptr)           (((ptr)->mflags1 & M1_UNSOLID) != 0L)
-#define mindless(ptr)          (((ptr)->mflags1 & M1_MINDLESS) != 0L)
-#define humanoid(ptr)          (((ptr)->mflags1 & M1_HUMANOID) != 0L)
-#define is_animal(ptr)         (((ptr)->mflags1 & M1_ANIMAL) != 0L)
-#define slithy(ptr)            (((ptr)->mflags1 & M1_SLITHY) != 0L)
-#define is_wooden(ptr)         ((ptr) == &mons[PM_WOOD_GOLEM])
-#define thick_skinned(ptr)     (((ptr)->mflags1 & M1_THICK_HIDE) != 0L)
-#define slimeproof(ptr)                ((ptr) == &mons[PM_GREEN_SLIME] || \
-                                flaming(ptr) || noncorporeal(ptr))
-#define lays_eggs(ptr)         (((ptr)->mflags1 & M1_OVIPAROUS) != 0L)
-#define regenerates(ptr)       (((ptr)->mflags1 & M1_REGEN) != 0L)
-#define perceives(ptr)         (((ptr)->mflags1 & M1_SEE_INVIS) != 0L)
-#define can_teleport(ptr)      (((ptr)->mflags1 & M1_TPORT) != 0L)
-#define control_teleport(ptr)  (((ptr)->mflags1 & M1_TPORT_CNTRL) != 0L)
-#define telepathic(ptr)                ((ptr) == &mons[PM_FLOATING_EYE] || \
-                                (ptr) == &mons[PM_MIND_FLAYER] || \
-                                (ptr) == &mons[PM_MASTER_MIND_FLAYER])
-#define is_armed(ptr)          attacktype(ptr, AT_WEAP)
-#define acidic(ptr)            (((ptr)->mflags1 & M1_ACID) != 0L)
-#define poisonous(ptr)         (((ptr)->mflags1 & M1_POIS) != 0L)
-#define carnivorous(ptr)       (((ptr)->mflags1 & M1_CARNIVORE) != 0L)
-#define herbivorous(ptr)       (((ptr)->mflags1 & M1_HERBIVORE) != 0L)
-#define metallivorous(ptr)     (((ptr)->mflags1 & M1_METALLIVORE) != 0L)
-#define polyok(ptr)            (((ptr)->mflags2 & M2_NOPOLY) == 0L)
-#define is_shapeshifter(ptr)   (((ptr)->mflags2 & M2_SHAPESHIFTER) != 0L)
-#define is_undead(ptr)         (((ptr)->mflags2 & M2_UNDEAD) != 0L)
-#define is_were(ptr)           (((ptr)->mflags2 & M2_WERE) != 0L)
-#define is_elf(ptr)            (((ptr)->mflags2 & M2_ELF) != 0L)
-#define is_dwarf(ptr)          (((ptr)->mflags2 & M2_DWARF) != 0L)
-#define is_gnome(ptr)          (((ptr)->mflags2 & M2_GNOME) != 0L)
-#define is_orc(ptr)            (((ptr)->mflags2 & M2_ORC) != 0L)
-#define is_human(ptr)          (((ptr)->mflags2 & M2_HUMAN) != 0L)
-#define your_race(ptr)         (((ptr)->mflags2 & urace.selfmask) != 0L)
-#define is_bat(ptr)            ((ptr) == &mons[PM_BAT] || \
-                                (ptr) == &mons[PM_GIANT_BAT] || \
-                                (ptr) == &mons[PM_VAMPIRE_BAT])
-#define is_bird(ptr)           ((ptr)->mlet == S_BAT && !is_bat(ptr))
-#define is_giant(ptr)          (((ptr)->mflags2 & M2_GIANT) != 0L)
-#define is_golem(ptr)          ((ptr)->mlet == S_GOLEM)
-#define is_domestic(ptr)       (((ptr)->mflags2 & M2_DOMESTIC) != 0L)
-#define is_demon(ptr)          (((ptr)->mflags2 & M2_DEMON) != 0L)
-#define is_mercenary(ptr)      (((ptr)->mflags2 & M2_MERC) != 0L)
-#define is_male(ptr)           (((ptr)->mflags2 & M2_MALE) != 0L)
-#define is_female(ptr)         (((ptr)->mflags2 & M2_FEMALE) != 0L)
-#define is_neuter(ptr)         (((ptr)->mflags2 & M2_NEUTER) != 0L)
-#define is_wanderer(ptr)       (((ptr)->mflags2 & M2_WANDER) != 0L)
-#define always_hostile(ptr)    (((ptr)->mflags2 & M2_HOSTILE) != 0L)
-#define always_peaceful(ptr)   (((ptr)->mflags2 & M2_PEACEFUL) != 0L)
-#define race_hostile(ptr)      (((ptr)->mflags2 & urace.hatemask) != 0L)
-#define race_peaceful(ptr)     (((ptr)->mflags2 & urace.lovemask) != 0L)
-#define extra_nasty(ptr)       (((ptr)->mflags2 & M2_NASTY) != 0L)
-#define strongmonst(ptr)       (((ptr)->mflags2 & M2_STRONG) != 0L)
-#define can_breathe(ptr)       attacktype(ptr, AT_BREA)
-#define cantwield(ptr)         (nohands(ptr) || verysmall(ptr))
-#define could_twoweap(ptr)     ((ptr)->mattk[1].aatyp == AT_WEAP)
-#define cantweararm(ptr)       (breakarm(ptr) || sliparm(ptr))
-#define throws_rocks(ptr)      (((ptr)->mflags2 & M2_ROCKTHROW) != 0L)
-#define type_is_pname(ptr)     (((ptr)->mflags2 & M2_PNAME) != 0L)
-#define is_lord(ptr)           (((ptr)->mflags2 & M2_LORD) != 0L)
-#define is_prince(ptr)         (((ptr)->mflags2 & M2_PRINCE) != 0L)
-#define is_ndemon(ptr)         (is_demon(ptr) && \
-                                (((ptr)->mflags2 & (M2_LORD|M2_PRINCE)) == 0L))
-#define is_dlord(ptr)          (is_demon(ptr) && is_lord(ptr))
-#define is_dprince(ptr)                (is_demon(ptr) && is_prince(ptr))
-#define is_minion(ptr)         (((ptr)->mflags2 & M2_MINION) != 0L)
-#define likes_gold(ptr)                (((ptr)->mflags2 & M2_GREEDY) != 0L)
-#define likes_gems(ptr)                (((ptr)->mflags2 & M2_JEWELS) != 0L)
-#define likes_objs(ptr)                (((ptr)->mflags2 & M2_COLLECT) != 0L || \
-                                is_armed(ptr))
-#define likes_magic(ptr)       (((ptr)->mflags2 & M2_MAGIC) != 0L)
-#define webmaker(ptr)          ((ptr) == &mons[PM_CAVE_SPIDER] || \
-                                (ptr) == &mons[PM_GIANT_SPIDER])
-#define is_unicorn(ptr)                ((ptr)->mlet == S_UNICORN && likes_gems(ptr))
-#define is_longworm(ptr)       (((ptr) == &mons[PM_BABY_LONG_WORM]) || \
-                                ((ptr) == &mons[PM_LONG_WORM]) || \
-                                ((ptr) == &mons[PM_LONG_WORM_TAIL]))
-#define is_covetous(ptr)       ((ptr->mflags3 & M3_COVETOUS))
-#define infravision(ptr)       ((ptr->mflags3 & M3_INFRAVISION))
-#define infravisible(ptr)      ((ptr->mflags3 & M3_INFRAVISIBLE))
-#define is_displacer(ptr)      (((ptr)->mflags3 & M3_DISPLACES) != 0L) 
-#define is_mplayer(ptr)                (((ptr) >= &mons[PM_ARCHEOLOGIST]) && \
-                                ((ptr) <= &mons[PM_WIZARD]))
-#define is_watch(ptr)          ((ptr) == &mons[PM_WATCHMAN] || \
-                                (ptr) == &mons[PM_WATCH_CAPTAIN])
-#define is_rider(ptr)          ((ptr) == &mons[PM_DEATH] || \
-                                (ptr) == &mons[PM_FAMINE] || \
-                                (ptr) == &mons[PM_PESTILENCE])
-#define is_placeholder(ptr)    ((ptr) == &mons[PM_ORC] || \
-                                (ptr) == &mons[PM_GIANT] || \
-                                (ptr) == &mons[PM_ELF] || \
-                                (ptr) == &mons[PM_HUMAN])
+#define is_lminion(mon) \
+    (is_minion((mon)->data) && mon_aligntyp(mon) == A_LAWFUL)
+#define is_flyer(ptr) (((ptr)->mflags1 & M1_FLY) != 0L)
+#define is_floater(ptr) ((ptr)->mlet == S_EYE)
+#define is_clinger(ptr) (((ptr)->mflags1 & M1_CLING) != 0L)
+#define is_swimmer(ptr) (((ptr)->mflags1 & M1_SWIM) != 0L)
+#define breathless(ptr) (((ptr)->mflags1 & M1_BREATHLESS) != 0L)
+#define amphibious(ptr) \
+    (((ptr)->mflags1 & (M1_AMPHIBIOUS | M1_BREATHLESS)) != 0L)
+#define passes_walls(ptr) (((ptr)->mflags1 & M1_WALLWALK) != 0L)
+#define amorphous(ptr) (((ptr)->mflags1 & M1_AMORPHOUS) != 0L)
+#define noncorporeal(ptr) ((ptr)->mlet == S_GHOST)
+#define tunnels(ptr) (((ptr)->mflags1 & M1_TUNNEL) != 0L)
+#define needspick(ptr) (((ptr)->mflags1 & M1_NEEDPICK) != 0L)
+#define hides_under(ptr) (((ptr)->mflags1 & M1_CONCEAL) != 0L)
+#define is_hider(ptr) (((ptr)->mflags1 & M1_HIDE) != 0L)
+#define haseyes(ptr) (((ptr)->mflags1 & M1_NOEYES) == 0L)
+#define eyecount(ptr)                                         \
+    (!haseyes(ptr) ? 0 : ((ptr) == &mons[PM_CYCLOPS]          \
+                          || (ptr) == &mons[PM_FLOATING_EYE]) \
+                             ? 1                              \
+                             : 2)
+#define nohands(ptr) (((ptr)->mflags1 & M1_NOHANDS) != 0L)
+#define nolimbs(ptr) (((ptr)->mflags1 & M1_NOLIMBS) == M1_NOLIMBS)
+#define notake(ptr) (((ptr)->mflags1 & M1_NOTAKE) != 0L)
+#define has_head(ptr) (((ptr)->mflags1 & M1_NOHEAD) == 0L)
+#define has_horns(ptr) (num_horns(ptr) > 0)
+#define is_whirly(ptr) \
+    ((ptr)->mlet == S_VORTEX || (ptr) == &mons[PM_AIR_ELEMENTAL])
+#define flaming(ptr)                                                     \
+    ((ptr) == &mons[PM_FIRE_VORTEX] || (ptr) == &mons[PM_FLAMING_SPHERE] \
+     || (ptr) == &mons[PM_FIRE_ELEMENTAL] || (ptr) == &mons[PM_SALAMANDER])
+#define is_silent(ptr) ((ptr)->msound == MS_SILENT)
+#define unsolid(ptr) (((ptr)->mflags1 & M1_UNSOLID) != 0L)
+#define mindless(ptr) (((ptr)->mflags1 & M1_MINDLESS) != 0L)
+#define humanoid(ptr) (((ptr)->mflags1 & M1_HUMANOID) != 0L)
+#define is_animal(ptr) (((ptr)->mflags1 & M1_ANIMAL) != 0L)
+#define slithy(ptr) (((ptr)->mflags1 & M1_SLITHY) != 0L)
+#define is_wooden(ptr) ((ptr) == &mons[PM_WOOD_GOLEM])
+#define thick_skinned(ptr) (((ptr)->mflags1 & M1_THICK_HIDE) != 0L)
+#define slimeproof(ptr) \
+    ((ptr) == &mons[PM_GREEN_SLIME] || flaming(ptr) || noncorporeal(ptr))
+#define lays_eggs(ptr) (((ptr)->mflags1 & M1_OVIPAROUS) != 0L)
+#define regenerates(ptr) (((ptr)->mflags1 & M1_REGEN) != 0L)
+#define perceives(ptr) (((ptr)->mflags1 & M1_SEE_INVIS) != 0L)
+#define can_teleport(ptr) (((ptr)->mflags1 & M1_TPORT) != 0L)
+#define control_teleport(ptr) (((ptr)->mflags1 & M1_TPORT_CNTRL) != 0L)
+#define telepathic(ptr)                                                \
+    ((ptr) == &mons[PM_FLOATING_EYE] || (ptr) == &mons[PM_MIND_FLAYER] \
+     || (ptr) == &mons[PM_MASTER_MIND_FLAYER])
+#define is_armed(ptr) attacktype(ptr, AT_WEAP)
+#define acidic(ptr) (((ptr)->mflags1 & M1_ACID) != 0L)
+#define poisonous(ptr) (((ptr)->mflags1 & M1_POIS) != 0L)
+#define carnivorous(ptr) (((ptr)->mflags1 & M1_CARNIVORE) != 0L)
+#define herbivorous(ptr) (((ptr)->mflags1 & M1_HERBIVORE) != 0L)
+#define metallivorous(ptr) (((ptr)->mflags1 & M1_METALLIVORE) != 0L)
+#define polyok(ptr) (((ptr)->mflags2 & M2_NOPOLY) == 0L)
+#define is_shapeshifter(ptr) (((ptr)->mflags2 & M2_SHAPESHIFTER) != 0L)
+#define is_undead(ptr) (((ptr)->mflags2 & M2_UNDEAD) != 0L)
+#define is_were(ptr) (((ptr)->mflags2 & M2_WERE) != 0L)
+#define is_elf(ptr) (((ptr)->mflags2 & M2_ELF) != 0L)
+#define is_dwarf(ptr) (((ptr)->mflags2 & M2_DWARF) != 0L)
+#define is_gnome(ptr) (((ptr)->mflags2 & M2_GNOME) != 0L)
+#define is_orc(ptr) (((ptr)->mflags2 & M2_ORC) != 0L)
+#define is_human(ptr) (((ptr)->mflags2 & M2_HUMAN) != 0L)
+#define your_race(ptr) (((ptr)->mflags2 & urace.selfmask) != 0L)
+#define is_bat(ptr)                                         \
+    ((ptr) == &mons[PM_BAT] || (ptr) == &mons[PM_GIANT_BAT] \
+     || (ptr) == &mons[PM_VAMPIRE_BAT])
+#define is_bird(ptr) ((ptr)->mlet == S_BAT && !is_bat(ptr))
+#define is_giant(ptr) (((ptr)->mflags2 & M2_GIANT) != 0L)
+#define is_golem(ptr) ((ptr)->mlet == S_GOLEM)
+#define is_domestic(ptr) (((ptr)->mflags2 & M2_DOMESTIC) != 0L)
+#define is_demon(ptr) (((ptr)->mflags2 & M2_DEMON) != 0L)
+#define is_mercenary(ptr) (((ptr)->mflags2 & M2_MERC) != 0L)
+#define is_male(ptr) (((ptr)->mflags2 & M2_MALE) != 0L)
+#define is_female(ptr) (((ptr)->mflags2 & M2_FEMALE) != 0L)
+#define is_neuter(ptr) (((ptr)->mflags2 & M2_NEUTER) != 0L)
+#define is_wanderer(ptr) (((ptr)->mflags2 & M2_WANDER) != 0L)
+#define always_hostile(ptr) (((ptr)->mflags2 & M2_HOSTILE) != 0L)
+#define always_peaceful(ptr) (((ptr)->mflags2 & M2_PEACEFUL) != 0L)
+#define race_hostile(ptr) (((ptr)->mflags2 & urace.hatemask) != 0L)
+#define race_peaceful(ptr) (((ptr)->mflags2 & urace.lovemask) != 0L)
+#define extra_nasty(ptr) (((ptr)->mflags2 & M2_NASTY) != 0L)
+#define strongmonst(ptr) (((ptr)->mflags2 & M2_STRONG) != 0L)
+#define can_breathe(ptr) attacktype(ptr, AT_BREA)
+#define cantwield(ptr) (nohands(ptr) || verysmall(ptr))
+#define could_twoweap(ptr) ((ptr)->mattk[1].aatyp == AT_WEAP)
+#define cantweararm(ptr) (breakarm(ptr) || sliparm(ptr))
+#define throws_rocks(ptr) (((ptr)->mflags2 & M2_ROCKTHROW) != 0L)
+#define type_is_pname(ptr) (((ptr)->mflags2 & M2_PNAME) != 0L)
+#define is_lord(ptr) (((ptr)->mflags2 & M2_LORD) != 0L)
+#define is_prince(ptr) (((ptr)->mflags2 & M2_PRINCE) != 0L)
+#define is_ndemon(ptr) \
+    (is_demon(ptr) && (((ptr)->mflags2 & (M2_LORD | M2_PRINCE)) == 0L))
+#define is_dlord(ptr) (is_demon(ptr) && is_lord(ptr))
+#define is_dprince(ptr) (is_demon(ptr) && is_prince(ptr))
+#define is_minion(ptr) (((ptr)->mflags2 & M2_MINION) != 0L)
+#define likes_gold(ptr) (((ptr)->mflags2 & M2_GREEDY) != 0L)
+#define likes_gems(ptr) (((ptr)->mflags2 & M2_JEWELS) != 0L)
+#define likes_objs(ptr) (((ptr)->mflags2 & M2_COLLECT) != 0L || is_armed(ptr))
+#define likes_magic(ptr) (((ptr)->mflags2 & M2_MAGIC) != 0L)
+#define webmaker(ptr) \
+    ((ptr) == &mons[PM_CAVE_SPIDER] || (ptr) == &mons[PM_GIANT_SPIDER])
+#define is_unicorn(ptr) ((ptr)->mlet == S_UNICORN && likes_gems(ptr))
+#define is_longworm(ptr)                                                   \
+    (((ptr) == &mons[PM_BABY_LONG_WORM]) || ((ptr) == &mons[PM_LONG_WORM]) \
+     || ((ptr) == &mons[PM_LONG_WORM_TAIL]))
+#define is_covetous(ptr) ((ptr->mflags3 & M3_COVETOUS))
+#define infravision(ptr) ((ptr->mflags3 & M3_INFRAVISION))
+#define infravisible(ptr) ((ptr->mflags3 & M3_INFRAVISIBLE))
+#define is_displacer(ptr) (((ptr)->mflags3 & M3_DISPLACES) != 0L)
+#define is_mplayer(ptr) \
+    (((ptr) >= &mons[PM_ARCHEOLOGIST]) && ((ptr) <= &mons[PM_WIZARD]))
+#define is_watch(ptr) \
+    ((ptr) == &mons[PM_WATCHMAN] || (ptr) == &mons[PM_WATCH_CAPTAIN])
+#define is_rider(ptr)                                      \
+    ((ptr) == &mons[PM_DEATH] || (ptr) == &mons[PM_FAMINE] \
+     || (ptr) == &mons[PM_PESTILENCE])
+#define is_placeholder(ptr)                             \
+    ((ptr) == &mons[PM_ORC] || (ptr) == &mons[PM_GIANT] \
+     || (ptr) == &mons[PM_ELF] || (ptr) == &mons[PM_HUMAN])
 /* return TRUE if the monster tends to revive */
-#define is_reviver(ptr)                (is_rider(ptr) || (ptr)->mlet == S_TROLL)
+#define is_reviver(ptr) (is_rider(ptr) || (ptr)->mlet == S_TROLL)
 /* monsters whose corpses and statues need special handling;
    note that high priests and the Wizard of Yendor are flagged
    as unique even though they really aren't; that's ok here */
-#define unique_corpstat(ptr)   (((ptr)->geno & G_UNIQ) != 0)
+#define unique_corpstat(ptr) (((ptr)->geno & G_UNIQ) != 0)
 
 /* this returns the light's range, or 0 if none; if we add more light emitting
    monsters, we'll likely have to add a new light range field to mons[] */
-#define emits_light(ptr)       (((ptr)->mlet == S_LIGHT || \
-                                 (ptr) == &mons[PM_FLAMING_SPHERE] || \
-                                 (ptr) == &mons[PM_SHOCKING_SPHERE] || \
-                                 (ptr) == &mons[PM_FIRE_VORTEX]) ? 1 : \
-                                ((ptr) == &mons[PM_FIRE_ELEMENTAL]) ? 1 : 0)
+#define emits_light(ptr)                                          \
+    (((ptr)->mlet == S_LIGHT || (ptr) == &mons[PM_FLAMING_SPHERE] \
+      || (ptr) == &mons[PM_SHOCKING_SPHERE]                       \
+      || (ptr) == &mons[PM_FIRE_VORTEX])                          \
+         ? 1                                                      \
+         : ((ptr) == &mons[PM_FIRE_ELEMENTAL]) ? 1 : 0)
 /*     [note: the light ranges above were reduced to 1 for performance...] */
-#define likes_lava(ptr)                (ptr == &mons[PM_FIRE_ELEMENTAL] || \
-                                ptr == &mons[PM_SALAMANDER])
-#define pm_invisible(ptr) ((ptr) == &mons[PM_STALKER] || \
-                          (ptr) == &mons[PM_BLACK_LIGHT])
+#define likes_lava(ptr) \
+    (ptr == &mons[PM_FIRE_ELEMENTAL] || ptr == &mons[PM_SALAMANDER])
+#define pm_invisible(ptr) \
+    ((ptr) == &mons[PM_STALKER] || (ptr) == &mons[PM_BLACK_LIGHT])
 
 /* could probably add more */
-#define likes_fire(ptr)                ((ptr) == &mons[PM_FIRE_VORTEX] || \
-                                 (ptr) == &mons[PM_FLAMING_SPHERE] || \
-                                likes_lava(ptr))
+#define likes_fire(ptr)                                                  \
+    ((ptr) == &mons[PM_FIRE_VORTEX] || (ptr) == &mons[PM_FLAMING_SPHERE] \
+     || likes_lava(ptr))
 
-#define touch_petrifies(ptr)   ((ptr) == &mons[PM_COCKATRICE] || \
-                                (ptr) == &mons[PM_CHICKATRICE])
+#define touch_petrifies(ptr) \
+    ((ptr) == &mons[PM_COCKATRICE] || (ptr) == &mons[PM_CHICKATRICE])
 
-#define is_mind_flayer(ptr)    ((ptr) == &mons[PM_MIND_FLAYER] || \
-                                (ptr) == &mons[PM_MASTER_MIND_FLAYER])
+#define is_mind_flayer(ptr) \
+    ((ptr) == &mons[PM_MIND_FLAYER] || (ptr) == &mons[PM_MASTER_MIND_FLAYER])
 
-#define is_vampire(ptr)                ((ptr)->mlet == S_VAMPIRE)
+#define is_vampire(ptr) ((ptr)->mlet == S_VAMPIRE)
 
-#define nonliving(ptr)         (is_golem(ptr) || is_undead(ptr) || \
-                                (ptr)->mlet == S_VORTEX || \
-                                (ptr) == &mons[PM_MANES])
+#define nonliving(ptr)                                          \
+    (is_golem(ptr) || is_undead(ptr) || (ptr)->mlet == S_VORTEX \
+     || (ptr) == &mons[PM_MANES])
 
 /* Used for conduct with corpses, tins, and digestion attacks */
 /* G_NOCORPSE monsters might still be swallowed as a purple worm */
 /* Maybe someday this could be in mflags... */
-#define vegan(ptr)             ((ptr)->mlet == S_BLOB || \
-                                (ptr)->mlet == S_JELLY ||            \
-                                (ptr)->mlet == S_FUNGUS ||           \
-                                (ptr)->mlet == S_VORTEX ||           \
-                                (ptr)->mlet == S_LIGHT ||            \
-                               ((ptr)->mlet == S_ELEMENTAL &&        \
-                                (ptr) != &mons[PM_STALKER]) ||       \
-                               ((ptr)->mlet == S_GOLEM &&            \
-                                (ptr) != &mons[PM_FLESH_GOLEM] &&    \
-                                (ptr) != &mons[PM_LEATHER_GOLEM]) || \
-                                noncorporeal(ptr))
-#define vegetarian(ptr)                (vegan(ptr) || \
-                               ((ptr)->mlet == S_PUDDING &&         \
-                                (ptr) != &mons[PM_BLACK_PUDDING]))
+#define vegan(ptr)                                                 \
+    ((ptr)->mlet == S_BLOB || (ptr)->mlet == S_JELLY               \
+     || (ptr)->mlet == S_FUNGUS || (ptr)->mlet == S_VORTEX         \
+     || (ptr)->mlet == S_LIGHT                                     \
+     || ((ptr)->mlet == S_ELEMENTAL && (ptr) != &mons[PM_STALKER]) \
+     || ((ptr)->mlet == S_GOLEM && (ptr) != &mons[PM_FLESH_GOLEM]  \
+         && (ptr) != &mons[PM_LEATHER_GOLEM]) || noncorporeal(ptr))
+#define vegetarian(ptr) \
+    (vegan(ptr)         \
+     || ((ptr)->mlet == S_PUDDING && (ptr) != &mons[PM_BLACK_PUDDING]))
 
-#define befriend_with_obj(ptr, obj) ((obj)->oclass == FOOD_CLASS && \
-                                    is_domestic(ptr))
+#define befriend_with_obj(ptr, obj) \
+    ((obj)->oclass == FOOD_CLASS && is_domestic(ptr))
 
 #endif /* MONDATA_H */
index 016dc29fdb43c4ee5a84ad216922ed9667a471c4..bc50ca670130ba4f420fb5147d4ffc15c9af01b2 100644 (file)
 #ifndef MONFLAG_H
 #define MONFLAG_H
 
-#define MS_SILENT      0       /* makes no sound */
-#define MS_BARK                1       /* if full moon, may howl */
-#define MS_MEW         2       /* mews or hisses */
-#define MS_ROAR                3       /* roars */
-#define MS_GROWL       4       /* growls */
-#define MS_SQEEK       5       /* squeaks, as a rodent */
-#define MS_SQAWK       6       /* squawks, as a bird */
-#define MS_HISS                7       /* hisses */
-#define MS_BUZZ                8       /* buzzes (killer bee) */
-#define MS_GRUNT       9       /* grunts (or speaks own language) */
-#define MS_NEIGH       10      /* neighs, as an equine */
-#define MS_WAIL                11      /* wails, as a tortured soul */
-#define MS_GURGLE      12      /* gurgles, as liquid or through saliva */
-#define MS_BURBLE      13      /* burbles (jabberwock) */
-#define MS_ANIMAL      13      /* up to here are animal noises */
-#define MS_SHRIEK      15      /* wakes up others */
-#define MS_BONES       16      /* rattles bones (skeleton) */
-#define MS_LAUGH       17      /* grins, smiles, giggles, and laughs */
-#define MS_MUMBLE      18      /* says something or other */
-#define MS_IMITATE     19      /* imitates others (leocrotta) */
-#define MS_ORC         MS_GRUNT        /* intelligent brutes */
-#define MS_HUMANOID    20      /* generic traveling companion */
-#define MS_ARREST      21      /* "Stop in the name of the law!" (Kops) */
-#define MS_SOLDIER     22      /* army and watchmen expressions */
-#define MS_GUARD       23      /* "Please drop that gold and follow me." */
-#define MS_DJINNI      24      /* "Thank you for freeing me!" */
-#define MS_NURSE       25      /* "Take off your shirt, please." */
-#define MS_SEDUCE      26      /* "Hello, sailor." (Nymphs) */
-#define MS_VAMPIRE     27      /* vampiric seduction, Vlad's exclamations */
-#define MS_BRIBE       28      /* asks for money, or berates you */
-#define MS_CUSS                29      /* berates (demons) or intimidates (Wiz) */
-#define MS_RIDER       30      /* astral level special monsters */
-#define MS_LEADER      31      /* your class leader */
-#define MS_NEMESIS     32      /* your nemesis */
-#define MS_GUARDIAN    33      /* your leader's guards */
-#define MS_SELL                34      /* demand payment, complain about shoplifters */
-#define MS_ORACLE      35      /* do a consultation */
-#define MS_PRIEST      36      /* ask for contribution; do cleansing */
-#define MS_SPELL       37      /* spellcaster not matching any of the above */
-#define MS_WERE                38      /* lycanthrope in human form */
-#define MS_BOAST       39      /* giants */
-
-
-#define MR_FIRE                0x01    /* resists fire */
-#define MR_COLD                0x02    /* resists cold */
-#define MR_SLEEP       0x04    /* resists sleep */
-#define MR_DISINT      0x08    /* resists disintegration */
-#define MR_ELEC                0x10    /* resists electricity */
-#define MR_POISON      0x20    /* resists poison */
-#define MR_ACID                0x40    /* resists acid */
-#define MR_STONE       0x80    /* resists petrification */
+#define MS_SILENT 0     /* makes no sound */
+#define MS_BARK 1       /* if full moon, may howl */
+#define MS_MEW 2        /* mews or hisses */
+#define MS_ROAR 3       /* roars */
+#define MS_GROWL 4      /* growls */
+#define MS_SQEEK 5      /* squeaks, as a rodent */
+#define MS_SQAWK 6      /* squawks, as a bird */
+#define MS_HISS 7       /* hisses */
+#define MS_BUZZ 8       /* buzzes (killer bee) */
+#define MS_GRUNT 9      /* grunts (or speaks own language) */
+#define MS_NEIGH 10     /* neighs, as an equine */
+#define MS_WAIL 11      /* wails, as a tortured soul */
+#define MS_GURGLE 12    /* gurgles, as liquid or through saliva */
+#define MS_BURBLE 13    /* burbles (jabberwock) */
+#define MS_ANIMAL 13    /* up to here are animal noises */
+#define MS_SHRIEK 15    /* wakes up others */
+#define MS_BONES 16     /* rattles bones (skeleton) */
+#define MS_LAUGH 17     /* grins, smiles, giggles, and laughs */
+#define MS_MUMBLE 18    /* says something or other */
+#define MS_IMITATE 19   /* imitates others (leocrotta) */
+#define MS_ORC MS_GRUNT /* intelligent brutes */
+#define MS_HUMANOID 20  /* generic traveling companion */
+#define MS_ARREST 21    /* "Stop in the name of the law!" (Kops) */
+#define MS_SOLDIER 22   /* army and watchmen expressions */
+#define MS_GUARD 23     /* "Please drop that gold and follow me." */
+#define MS_DJINNI 24    /* "Thank you for freeing me!" */
+#define MS_NURSE 25     /* "Take off your shirt, please." */
+#define MS_SEDUCE 26    /* "Hello, sailor." (Nymphs) */
+#define MS_VAMPIRE 27   /* vampiric seduction, Vlad's exclamations */
+#define MS_BRIBE 28     /* asks for money, or berates you */
+#define MS_CUSS 29      /* berates (demons) or intimidates (Wiz) */
+#define MS_RIDER 30     /* astral level special monsters */
+#define MS_LEADER 31    /* your class leader */
+#define MS_NEMESIS 32   /* your nemesis */
+#define MS_GUARDIAN 33  /* your leader's guards */
+#define MS_SELL 34      /* demand payment, complain about shoplifters */
+#define MS_ORACLE 35    /* do a consultation */
+#define MS_PRIEST 36    /* ask for contribution; do cleansing */
+#define MS_SPELL 37     /* spellcaster not matching any of the above */
+#define MS_WERE 38      /* lycanthrope in human form */
+#define MS_BOAST 39     /* giants */
+
+#define MR_FIRE 0x01   /* resists fire */
+#define MR_COLD 0x02   /* resists cold */
+#define MR_SLEEP 0x04  /* resists sleep */
+#define MR_DISINT 0x08 /* resists disintegration */
+#define MR_ELEC 0x10   /* resists electricity */
+#define MR_POISON 0x20 /* resists poison */
+#define MR_ACID 0x40   /* resists acid */
+#define MR_STONE 0x80  /* resists petrification */
 /* other resistances: magic, sickness */
 /* other conveyances: teleport, teleport control, telepathy */
 
 /* individual resistances */
-#define MR2_SEE_INVIS  0x0100  /* see invisible */
-#define MR2_LEVITATE   0x0200  /* levitation */
-#define MR2_WATERWALK  0x0400  /* water walking */
-#define MR2_MAGBREATH  0x0800  /* magical breathing */
-#define MR2_DISPLACED  0x1000  /* displaced */
-#define MR2_STRENGTH   0x2000  /* gauntlets of power */
-#define MR2_FUMBLING   0x4000  /* clumsy */
-
-
-#define M1_FLY         0x00000001L     /* can fly or float */
-#define M1_SWIM                0x00000002L     /* can traverse water */
-#define M1_AMORPHOUS   0x00000004L     /* can flow under doors */
-#define M1_WALLWALK    0x00000008L     /* can phase thru rock */
-#define M1_CLING       0x00000010L     /* can cling to ceiling */
-#define M1_TUNNEL      0x00000020L     /* can tunnel thru rock */
-#define M1_NEEDPICK    0x00000040L     /* needs pick to tunnel */
-#define M1_CONCEAL     0x00000080L     /* hides under objects */
-#define M1_HIDE                0x00000100L     /* mimics, blends in with ceiling */
-#define M1_AMPHIBIOUS  0x00000200L     /* can survive underwater */
-#define M1_BREATHLESS  0x00000400L     /* doesn't need to breathe */
-#define M1_NOTAKE      0x00000800L     /* cannot pick up objects */
-#define M1_NOEYES      0x00001000L     /* no eyes to gaze into or blind */
-#define M1_NOHANDS     0x00002000L     /* no hands to handle things */
-#define M1_NOLIMBS     0x00006000L     /* no arms/legs to kick/wear on */
-#define M1_NOHEAD      0x00008000L     /* no head to behead */
-#define M1_MINDLESS    0x00010000L     /* has no mind--golem, zombie, mold */
-#define M1_HUMANOID    0x00020000L     /* has humanoid head/arms/torso */
-#define M1_ANIMAL      0x00040000L     /* has animal body */
-#define M1_SLITHY      0x00080000L     /* has serpent body */
-#define M1_UNSOLID     0x00100000L     /* has no solid or liquid body */
-#define M1_THICK_HIDE  0x00200000L     /* has thick hide or scales */
-#define M1_OVIPAROUS   0x00400000L     /* can lay eggs */
-#define M1_REGEN       0x00800000L     /* regenerates hit points */
-#define M1_SEE_INVIS   0x01000000L     /* can see invisible creatures */
-#define M1_TPORT       0x02000000L     /* can teleport */
-#define M1_TPORT_CNTRL 0x04000000L     /* controls where it teleports to */
-#define M1_ACID                0x08000000L     /* acidic to eat */
-#define M1_POIS                0x10000000L     /* poisonous to eat */
-#define M1_CARNIVORE   0x20000000L     /* eats corpses */
-#define M1_HERBIVORE   0x40000000L     /* eats fruits */
-#define M1_OMNIVORE    0x60000000L     /* eats both */
+#define MR2_SEE_INVIS 0x0100 /* see invisible */
+#define MR2_LEVITATE 0x0200  /* levitation */
+#define MR2_WATERWALK 0x0400 /* water walking */
+#define MR2_MAGBREATH 0x0800 /* magical breathing */
+#define MR2_DISPLACED 0x1000 /* displaced */
+#define MR2_STRENGTH 0x2000  /* gauntlets of power */
+#define MR2_FUMBLING 0x4000  /* clumsy */
+
+#define M1_FLY 0x00000001L         /* can fly or float */
+#define M1_SWIM 0x00000002L        /* can traverse water */
+#define M1_AMORPHOUS 0x00000004L   /* can flow under doors */
+#define M1_WALLWALK 0x00000008L    /* can phase thru rock */
+#define M1_CLING 0x00000010L       /* can cling to ceiling */
+#define M1_TUNNEL 0x00000020L      /* can tunnel thru rock */
+#define M1_NEEDPICK 0x00000040L    /* needs pick to tunnel */
+#define M1_CONCEAL 0x00000080L     /* hides under objects */
+#define M1_HIDE 0x00000100L        /* mimics, blends in with ceiling */
+#define M1_AMPHIBIOUS 0x00000200L  /* can survive underwater */
+#define M1_BREATHLESS 0x00000400L  /* doesn't need to breathe */
+#define M1_NOTAKE 0x00000800L      /* cannot pick up objects */
+#define M1_NOEYES 0x00001000L      /* no eyes to gaze into or blind */
+#define M1_NOHANDS 0x00002000L     /* no hands to handle things */
+#define M1_NOLIMBS 0x00006000L     /* no arms/legs to kick/wear on */
+#define M1_NOHEAD 0x00008000L      /* no head to behead */
+#define M1_MINDLESS 0x00010000L    /* has no mind--golem, zombie, mold */
+#define M1_HUMANOID 0x00020000L    /* has humanoid head/arms/torso */
+#define M1_ANIMAL 0x00040000L      /* has animal body */
+#define M1_SLITHY 0x00080000L      /* has serpent body */
+#define M1_UNSOLID 0x00100000L     /* has no solid or liquid body */
+#define M1_THICK_HIDE 0x00200000L  /* has thick hide or scales */
+#define M1_OVIPAROUS 0x00400000L   /* can lay eggs */
+#define M1_REGEN 0x00800000L       /* regenerates hit points */
+#define M1_SEE_INVIS 0x01000000L   /* can see invisible creatures */
+#define M1_TPORT 0x02000000L       /* can teleport */
+#define M1_TPORT_CNTRL 0x04000000L /* controls where it teleports to */
+#define M1_ACID 0x08000000L        /* acidic to eat */
+#define M1_POIS 0x10000000L        /* poisonous to eat */
+#define M1_CARNIVORE 0x20000000L   /* eats corpses */
+#define M1_HERBIVORE 0x40000000L   /* eats fruits */
+#define M1_OMNIVORE 0x60000000L    /* eats both */
 #ifdef NHSTDC
-#define M1_METALLIVORE 0x80000000UL    /* eats metal */
+#define M1_METALLIVORE 0x80000000UL /* eats metal */
 #else
-#define M1_METALLIVORE 0x80000000L     /* eats metal */
+#define M1_METALLIVORE 0x80000000L /* eats metal */
 #endif
 
-#define M2_NOPOLY      0x00000001L     /* players mayn't poly into one */
-#define M2_UNDEAD      0x00000002L     /* is walking dead */
-#define M2_WERE                0x00000004L     /* is a lycanthrope */
-#define M2_HUMAN       0x00000008L     /* is a human */
-#define M2_ELF         0x00000010L     /* is an elf */
-#define M2_DWARF       0x00000020L     /* is a dwarf */
-#define M2_GNOME       0x00000040L     /* is a gnome */
-#define M2_ORC         0x00000080L     /* is an orc */
-#define M2_DEMON       0x00000100L     /* is a demon */
-#define M2_MERC                0x00000200L     /* is a guard or soldier */
-#define M2_LORD                0x00000400L     /* is a lord to its kind */
-#define M2_PRINCE      0x00000800L     /* is an overlord to its kind */
-#define M2_MINION      0x00001000L     /* is a minion of a deity */
-#define M2_GIANT       0x00002000L     /* is a giant */
-#define M2_SHAPESHIFTER        0x00004000L     /* is a shapeshifting species */
-#define M2_MALE                0x00010000L     /* always male */
-#define M2_FEMALE      0x00020000L     /* always female */
-#define M2_NEUTER      0x00040000L     /* neither male nor female */
-#define M2_PNAME       0x00080000L     /* monster name is a proper name */
-#define M2_HOSTILE     0x00100000L     /* always starts hostile */
-#define M2_PEACEFUL    0x00200000L     /* always starts peaceful */
-#define M2_DOMESTIC    0x00400000L     /* can be tamed by feeding */
-#define M2_WANDER      0x00800000L     /* wanders randomly */
-#define M2_STALK       0x01000000L     /* follows you to other levels */
-#define M2_NASTY       0x02000000L     /* extra-nasty monster (more xp) */
-#define M2_STRONG      0x04000000L     /* strong (or big) monster */
-#define M2_ROCKTHROW   0x08000000L     /* throws boulders */
-#define M2_GREEDY      0x10000000L     /* likes gold */
-#define M2_JEWELS      0x20000000L     /* likes gems */
-#define M2_COLLECT     0x40000000L     /* picks up weapons and food */
+#define M2_NOPOLY 0x00000001L       /* players mayn't poly into one */
+#define M2_UNDEAD 0x00000002L       /* is walking dead */
+#define M2_WERE 0x00000004L         /* is a lycanthrope */
+#define M2_HUMAN 0x00000008L        /* is a human */
+#define M2_ELF 0x00000010L          /* is an elf */
+#define M2_DWARF 0x00000020L        /* is a dwarf */
+#define M2_GNOME 0x00000040L        /* is a gnome */
+#define M2_ORC 0x00000080L          /* is an orc */
+#define M2_DEMON 0x00000100L        /* is a demon */
+#define M2_MERC 0x00000200L         /* is a guard or soldier */
+#define M2_LORD 0x00000400L         /* is a lord to its kind */
+#define M2_PRINCE 0x00000800L       /* is an overlord to its kind */
+#define M2_MINION 0x00001000L       /* is a minion of a deity */
+#define M2_GIANT 0x00002000L        /* is a giant */
+#define M2_SHAPESHIFTER 0x00004000L /* is a shapeshifting species */
+#define M2_MALE 0x00010000L         /* always male */
+#define M2_FEMALE 0x00020000L       /* always female */
+#define M2_NEUTER 0x00040000L       /* neither male nor female */
+#define M2_PNAME 0x00080000L        /* monster name is a proper name */
+#define M2_HOSTILE 0x00100000L      /* always starts hostile */
+#define M2_PEACEFUL 0x00200000L     /* always starts peaceful */
+#define M2_DOMESTIC 0x00400000L     /* can be tamed by feeding */
+#define M2_WANDER 0x00800000L       /* wanders randomly */
+#define M2_STALK 0x01000000L        /* follows you to other levels */
+#define M2_NASTY 0x02000000L        /* extra-nasty monster (more xp) */
+#define M2_STRONG 0x04000000L       /* strong (or big) monster */
+#define M2_ROCKTHROW 0x08000000L    /* throws boulders */
+#define M2_GREEDY 0x10000000L       /* likes gold */
+#define M2_JEWELS 0x20000000L       /* likes gems */
+#define M2_COLLECT 0x40000000L      /* picks up weapons and food */
 #ifdef NHSTDC
-#define M2_MAGIC       0x80000000UL    /* picks up magic items */
+#define M2_MAGIC 0x80000000UL /* picks up magic items */
 #else
-#define M2_MAGIC       0x80000000L     /* picks up magic items */
+#define M2_MAGIC 0x80000000L /* picks up magic items */
 #endif
 
-#define M3_WANTSAMUL   0x0001          /* would like to steal the amulet */
-#define M3_WANTSBELL   0x0002          /* wants the bell */
-#define M3_WANTSBOOK   0x0004          /* wants the book */
-#define M3_WANTSCAND   0x0008          /* wants the candelabrum */
-#define M3_WANTSARTI   0x0010          /* wants the quest artifact */
-#define M3_WANTSALL    0x001f          /* wants any major artifact */
-#define M3_WAITFORU    0x0040          /* waits to see you or get attacked */
-#define M3_CLOSE       0x0080          /* lets you close unless attacked */
+#define M3_WANTSAMUL 0x0001 /* would like to steal the amulet */
+#define M3_WANTSBELL 0x0002 /* wants the bell */
+#define M3_WANTSBOOK 0x0004 /* wants the book */
+#define M3_WANTSCAND 0x0008 /* wants the candelabrum */
+#define M3_WANTSARTI 0x0010 /* wants the quest artifact */
+#define M3_WANTSALL 0x001f  /* wants any major artifact */
+#define M3_WAITFORU 0x0040  /* waits to see you or get attacked */
+#define M3_CLOSE 0x0080     /* lets you close unless attacked */
 
-#define M3_COVETOUS    0x001f          /* wants something */
-#define M3_WAITMASK    0x00c0          /* waiting... */
+#define M3_COVETOUS 0x001f /* wants something */
+#define M3_WAITMASK 0x00c0 /* waiting... */
 
 /* Infravision is currently implemented for players only */
-#define M3_INFRAVISION 0x0100          /* has infravision */
-#define M3_INFRAVISIBLE 0x0200         /* visible by infravision */
-
-#define M3_DISPLACES   0x0400          /* moves monsters out of its way */
+#define M3_INFRAVISION 0x0100  /* has infravision */
+#define M3_INFRAVISIBLE 0x0200 /* visible by infravision */
 
-#define MZ_TINY                0               /* < 2' */
-#define MZ_SMALL       1               /* 2-4' */
-#define MZ_MEDIUM      2               /* 4-7' */
-#define MZ_HUMAN       MZ_MEDIUM       /* human-sized */
-#define MZ_LARGE       3               /* 7-12' */
-#define MZ_HUGE                4               /* 12-25' */
-#define MZ_GIGANTIC    7               /* off the scale */
+#define M3_DISPLACES 0x0400 /* moves monsters out of its way */
 
+#define MZ_TINY 0          /* < 2' */
+#define MZ_SMALL 1         /* 2-4' */
+#define MZ_MEDIUM 2        /* 4-7' */
+#define MZ_HUMAN MZ_MEDIUM /* human-sized */
+#define MZ_LARGE 3         /* 7-12' */
+#define MZ_HUGE 4          /* 12-25' */
+#define MZ_GIGANTIC 7      /* off the scale */
 
 /* Monster races -- must stay within ROLE_RACEMASK */
 /* Eventually this may become its own field */
-#define MH_HUMAN       M2_HUMAN
-#define MH_ELF         M2_ELF
-#define MH_DWARF       M2_DWARF
-#define MH_GNOME       M2_GNOME
-#define MH_ORC         M2_ORC
-
+#define MH_HUMAN M2_HUMAN
+#define MH_ELF M2_ELF
+#define MH_DWARF M2_DWARF
+#define MH_GNOME M2_GNOME
+#define MH_ORC M2_ORC
 
 /* for mons[].geno (constant during game) */
-#define G_UNIQ         0x1000          /* generated only once */
-#define G_NOHELL       0x0800          /* not generated in "hell" */
-#define G_HELL         0x0400          /* generated only in "hell" */
-#define G_NOGEN                0x0200          /* generated only specially */
-#define G_SGROUP       0x0080          /* appear in small groups normally */
-#define G_LGROUP       0x0040          /* appear in large groups normally */
-#define G_GENO         0x0020          /* can be genocided */
-#define G_NOCORPSE     0x0010          /* no corpse left ever */
-#define G_FREQ         0x0007          /* creation frequency mask */
+#define G_UNIQ 0x1000     /* generated only once */
+#define G_NOHELL 0x0800   /* not generated in "hell" */
+#define G_HELL 0x0400     /* generated only in "hell" */
+#define G_NOGEN 0x0200    /* generated only specially */
+#define G_SGROUP 0x0080   /* appear in small groups normally */
+#define G_LGROUP 0x0040   /* appear in large groups normally */
+#define G_GENO 0x0020     /* can be genocided */
+#define G_NOCORPSE 0x0010 /* no corpse left ever */
+#define G_FREQ 0x0007     /* creation frequency mask */
 
 /* for mvitals[].mvflags (variant during game), along with G_NOCORPSE */
-#define G_KNOWN                0x0004          /* have been encountered */
-#define G_GONE         (G_GENOD|G_EXTINCT)
-#define G_GENOD                0x0002          /* have been genocided */
-#define G_EXTINCT      0x0001          /* have been extinguished as
-                                          population control */
-#define MV_KNOWS_EGG   0x0008          /* player recognizes egg of this
-                                          monster type */
+#define G_KNOWN 0x0004 /* have been encountered */
+#define G_GONE (G_GENOD | G_EXTINCT)
+#define G_GENOD 0x0002 /* have been genocided */
+#define G_EXTINCT                       \
+    0x0001 /* have been extinguished as \
+              population control */
+#define MV_KNOWS_EGG                        \
+    0x0008 /* player recognizes egg of this \
+              monster type */
 
 #endif /* MONFLAG_H */
index b416f6cafa05f78025704064369317b9aade00a5..b683c0d753376cc76f2024ae17998e286fa56bb6 100644 (file)
  * that there are enough situations which might make a monster change its
  * weapon that this is impractical.  --KAA
  */
-# define NO_WEAPON_WANTED 0
-# define NEED_WEAPON 1
-# define NEED_RANGED_WEAPON 2
-# define NEED_HTH_WEAPON 3
-# define NEED_PICK_AXE 4
-# define NEED_AXE 5
-# define NEED_PICK_OR_AXE 6
+#define NO_WEAPON_WANTED 0
+#define NEED_WEAPON 1
+#define NEED_RANGED_WEAPON 2
+#define NEED_HTH_WEAPON 3
+#define NEED_PICK_AXE 4
+#define NEED_AXE 5
+#define NEED_PICK_OR_AXE 6
 
 /* The following flags are used for the second argument to display_minventory
  * in invent.c:
  *            just display wielded weapons and worn items.
  */
 #define MINV_NOLET 0x01
-#define MINV_ALL   0x02
+#define MINV_ALL 0x02
 
 #ifndef MEXTRA_H
 #include "mextra.h"
 #endif
 
 struct monst {
-       struct monst *nmon;
-       struct permonst *data;
-       unsigned m_id;
-       short mnum;             /* permanent monster index number */
-       short cham;             /* if shapeshifter, orig mons[] idx goes here */
-       short movement;         /* movement points (derived from permonst definition and added effects */
-       uchar m_lev;            /* adjusted difficulty level of monster */
-       aligntyp malign;        /* alignment of this monster, relative to the
-                                  player (positive = good to kill) */
-       xchar mx, my;
-       xchar mux, muy;         /* where the monster thinks you are */
-#define MTSZ   4
-       coord mtrack[MTSZ];     /* monster track */
-       int mhp, mhpmax;
-       unsigned mappearance;   /* for undetected mimics and the wiz */
-       uchar    m_ap_type;     /* what mappearance is describing: */
-#define M_AP_NOTHING   0       /* mappearance is unused -- monster appears
-                                  as itself */
-#define M_AP_FURNITURE 1       /* stairs, a door, an altar, etc. */
-#define M_AP_OBJECT    2       /* an object */
-#define M_AP_MONSTER   3       /* a monster */
-
-       schar mtame;            /* level of tameness, implies peaceful */
-       unsigned short mintrinsics;     /* low 8 correspond to mresists */
-       int mspec_used;         /* monster's special ability attack timeout */
-
-       Bitfield(female,1);     /* is female */
-       Bitfield(minvis,1);     /* currently invisible */
-       Bitfield(invis_blkd,1); /* invisibility blocked */
-       Bitfield(perminvis,1);  /* intrinsic minvis value */
-       Bitfield(mcan,1);       /* has been cancelled */
-       Bitfield(mburied,1);    /* has been buried */
-       Bitfield(mundetected,1);        /* not seen in present hiding place */
-                               /* implies one of M1_CONCEAL or M1_HIDE,
-                                * but not mimic (that is, snake, spider,
-                                * trapper, piercer, eel)
-                                */
-       Bitfield(mcansee,1);    /* cansee 1, temp.blinded 0, blind 0 */
-
-       Bitfield(mspeed,2);     /* current speed */
-       Bitfield(permspeed,2);  /* intrinsic mspeed value */
-       Bitfield(mrevived,1);   /* has been revived from the dead */
-       Bitfield(mcloned,1);    /* has been cloned from another */
-       Bitfield(mavenge,1);    /* did something to deserve retaliation */
-       Bitfield(mflee,1);      /* fleeing */
-
-       Bitfield(mfleetim,7);   /* timeout for mflee */
-       Bitfield(msleeping,1);  /* asleep until woken */
-
-       Bitfield(mblinded,7);   /* cansee 0, temp.blinded n, blind 0 */
-       Bitfield(mstun,1);      /* stunned (off balance) */
-
-       Bitfield(mfrozen,7);
-       Bitfield(mcanmove,1);   /* paralysis, similar to mblinded */
-
-       Bitfield(mconf,1);      /* confused */
-       Bitfield(mpeaceful,1);  /* does not attack unprovoked */
-       Bitfield(mtrapped,1);   /* trapped in a pit, web or bear trap */
-       Bitfield(mleashed,1);   /* monster is on a leash */
-       Bitfield(isshk,1);      /* is shopkeeper */
-       Bitfield(isminion,1);   /* is a minion */
-       Bitfield(isgd,1);       /* is guard */
-       Bitfield(ispriest,1);   /* is a priest */
-
-       Bitfield(iswiz,1);      /* is the Wizard of Yendor */
-       Bitfield(wormno,5);     /* at most 31 worms on any level */
-                               /* 2 free bits */
-
-#define MAX_NUM_WORMS  32      /* should be 2^(wormno bitfield size) */
-
-       unsigned long mstrategy; /* for monsters with mflag3: current strategy */
+    struct monst *nmon;
+    struct permonst *data;
+    unsigned m_id;
+    short mnum;      /* permanent monster index number */
+    short cham;      /* if shapeshifter, orig mons[] idx goes here */
+    short movement;  /* movement points (derived from permonst definition and
+                        added effects */
+    uchar m_lev;     /* adjusted difficulty level of monster */
+    aligntyp malign; /* alignment of this monster, relative to the
+                        player (positive = good to kill) */
+    xchar mx, my;
+    xchar mux, muy; /* where the monster thinks you are */
+#define MTSZ 4
+    coord mtrack[MTSZ]; /* monster track */
+    int mhp, mhpmax;
+    unsigned mappearance; /* for undetected mimics and the wiz */
+    uchar m_ap_type;      /* what mappearance is describing: */
+#define M_AP_NOTHING                                                 \
+    0                    /* mappearance is unused -- monster appears \
+                            as itself */
+#define M_AP_FURNITURE 1 /* stairs, a door, an altar, etc. */
+#define M_AP_OBJECT 2    /* an object */
+#define M_AP_MONSTER 3   /* a monster */
+
+    schar mtame;                /* level of tameness, implies peaceful */
+    unsigned short mintrinsics; /* low 8 correspond to mresists */
+    int mspec_used;             /* monster's special ability attack timeout */
+
+    Bitfield(female, 1);      /* is female */
+    Bitfield(minvis, 1);      /* currently invisible */
+    Bitfield(invis_blkd, 1);  /* invisibility blocked */
+    Bitfield(perminvis, 1);   /* intrinsic minvis value */
+    Bitfield(mcan, 1);        /* has been cancelled */
+    Bitfield(mburied, 1);     /* has been buried */
+    Bitfield(mundetected, 1); /* not seen in present hiding place */
+                              /* implies one of M1_CONCEAL or M1_HIDE,
+                               * but not mimic (that is, snake, spider,
+                               * trapper, piercer, eel)
+                               */
+    Bitfield(mcansee, 1);     /* cansee 1, temp.blinded 0, blind 0 */
+
+    Bitfield(mspeed, 2);    /* current speed */
+    Bitfield(permspeed, 2); /* intrinsic mspeed value */
+    Bitfield(mrevived, 1);  /* has been revived from the dead */
+    Bitfield(mcloned, 1);   /* has been cloned from another */
+    Bitfield(mavenge, 1);   /* did something to deserve retaliation */
+    Bitfield(mflee, 1);     /* fleeing */
+
+    Bitfield(mfleetim, 7);  /* timeout for mflee */
+    Bitfield(msleeping, 1); /* asleep until woken */
+
+    Bitfield(mblinded, 7); /* cansee 0, temp.blinded n, blind 0 */
+    Bitfield(mstun, 1);    /* stunned (off balance) */
+
+    Bitfield(mfrozen, 7);
+    Bitfield(mcanmove, 1); /* paralysis, similar to mblinded */
+
+    Bitfield(mconf, 1);     /* confused */
+    Bitfield(mpeaceful, 1); /* does not attack unprovoked */
+    Bitfield(mtrapped, 1);  /* trapped in a pit, web or bear trap */
+    Bitfield(mleashed, 1);  /* monster is on a leash */
+    Bitfield(isshk, 1);     /* is shopkeeper */
+    Bitfield(isminion, 1);  /* is a minion */
+    Bitfield(isgd, 1);      /* is guard */
+    Bitfield(ispriest, 1);  /* is a priest */
+
+    Bitfield(iswiz, 1);  /* is the Wizard of Yendor */
+    Bitfield(wormno, 5); /* at most 31 worms on any level */
+/* 2 free bits */
+
+#define MAX_NUM_WORMS 32 /* should be 2^(wormno bitfield size) */
+
+    unsigned long mstrategy; /* for monsters with mflag3: current strategy */
 #ifdef NHSTDC
-#define STRAT_APPEARMSG        0x80000000UL
+#define STRAT_APPEARMSG 0x80000000UL
 #else
-#define STRAT_APPEARMSG        0x80000000L
+#define STRAT_APPEARMSG 0x80000000L
 #endif
-#define STRAT_ARRIVE   0x40000000L     /* just arrived on current level */
-#define STRAT_WAITFORU 0x20000000L
-#define STRAT_CLOSE    0x10000000L
-#define STRAT_WAITMASK (STRAT_CLOSE | STRAT_WAITFORU)
-#define STRAT_HEAL     0x08000000L
-#define STRAT_GROUND   0x04000000L
-#define STRAT_MONSTR   0x02000000L
-#define STRAT_PLAYER   0x01000000L
-#define STRAT_NONE     0x00000000L
+#define STRAT_ARRIVE 0x40000000L /* just arrived on current level */
+#define STRAT_WAITFORU 0x20000000L
+#define STRAT_CLOSE 0x10000000L
+#define STRAT_WAITMASK (STRAT_CLOSE | STRAT_WAITFORU)
+#define STRAT_HEAL 0x08000000L
+#define STRAT_GROUND 0x04000000L
+#define STRAT_MONSTR 0x02000000L
+#define STRAT_PLAYER 0x01000000L
+#define STRAT_NONE 0x00000000L
 #define STRAT_STRATMASK 0x0f000000L
-#define STRAT_XMASK    0x00ff0000L
-#define STRAT_YMASK    0x0000ff00L
-#define STRAT_GOAL     0x000000ffL
-#define STRAT_GOALX(s) ((xchar)((s & STRAT_XMASK) >> 16))
-#define STRAT_GOALY(s) ((xchar)((s & STRAT_YMASK) >> 8))
-
-       long mtrapseen;         /* bitmap of traps we've been trapped in */
-       long mlstmv;            /* for catching up with lost time */
-       long mspare1;
-       struct obj *minvent;
-
-       struct obj *mw;
-       long misc_worn_check;
-       xchar weapon_check;
-
-       int meating;            /* monster is eating timeout */
-       struct mextra *mextra;  /* point to mextra struct */
+#define STRAT_XMASK 0x00ff0000L
+#define STRAT_YMASK 0x0000ff00L
+#define STRAT_GOAL 0x000000ffL
+#define STRAT_GOALX(s) ((xchar)((s & STRAT_XMASK) >> 16))
+#define STRAT_GOALY(s) ((xchar)((s & STRAT_YMASK) >> 8))
+
+    long mtrapseen; /* bitmap of traps we've been trapped in */
+    long mlstmv;    /* for catching up with lost time */
+    long mspare1;
+    struct obj *minvent;
+
+    struct obj *mw;
+    long misc_worn_check;
+    xchar weapon_check;
+
+    int meating;           /* monster is eating timeout */
+    struct mextra *mextra; /* point to mextra struct */
 };
 
-#define newmonst() (struct monst *)alloc(sizeof(struct monst))
+#define newmonst() (struct monst *) alloc(sizeof(struct monst))
 
 /* these are in mspeed */
-#define MSLOW 1                /* slow monster */
-#define MFAST 2                /* speeded monster */
+#define MSLOW 1 /* slow monster */
+#define MFAST 2 /* speeded monster */
 
-#define MON_WEP(mon)   ((mon)->mw)
-#define MON_NOWEP(mon) ((mon)->mw = (struct obj *)0)
+#define MON_WEP(mon) ((mon)->mw)
+#define MON_NOWEP(mon) ((mon)->mw = (struct obj *) 0)
 
-#define DEADMONSTER(mon)       ((mon)->mhp < 1)
-#define is_starting_pet(mon)   ((mon)->m_id == context.startingpet_mid)
-#define is_vampshifter(mon)    ((mon)->cham == PM_VAMPIRE || \
-                                (mon)->cham == PM_VAMPIRE_LORD || \
-                                (mon)->cham == PM_VLAD_THE_IMPALER)
+#define DEADMONSTER(mon) ((mon)->mhp < 1)
+#define is_starting_pet(mon) ((mon)->m_id == context.startingpet_mid)
+#define is_vampshifter(mon)                                      \
+    ((mon)->cham == PM_VAMPIRE || (mon)->cham == PM_VAMPIRE_LORD \
+     || (mon)->cham == PM_VLAD_THE_IMPALER)
 #endif /* MONST_H */
index 800c1ab1a56bf91cf11bc9f691f2963825f5c07e..e4ab216ff2a0c986aef8731bbd2cddacf80acfe0 100644 (file)
@@ -1,7 +1,7 @@
-/* NetHack 3.6 monsym.h        $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
-/* NetHack 3.6 monsym.h        $Date: 2009/05/06 10:44:55 $  $Revision: 1.5 $ */
-/*     SCCS Id: @(#)monsym.h   3.5     2007/04/07      */
-/*     Monster symbols and creation information rev 1.0          */
+/* NetHack 3.6  monsym.h        $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
+/* NetHack 3.6  monsym.h        $Date: 2009/05/06 10:44:55 $  $Revision: 1.5 $ */
+/*      SCCS Id: @(#)monsym.h   3.5     2007/04/07      */
+/*      Monster symbols and creation information rev 1.0          */
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef MONSYM_H
  * them.  Monster class 0 is not used or defined so we can use it as a
  * NULL character.
  */
-#define S_ANT          1
-#define S_BLOB         2
-#define S_COCKATRICE   3
-#define S_DOG          4
-#define S_EYE          5
-#define S_FELINE       6
-#define S_GREMLIN      7
-#define S_HUMANOID     8
-#define S_IMP          9
-#define S_JELLY                10
-#define S_KOBOLD       11
-#define S_LEPRECHAUN   12
-#define S_MIMIC                13
-#define S_NYMPH                14
-#define S_ORC          15
-#define S_PIERCER      16
-#define S_QUADRUPED    17
-#define S_RODENT       18
-#define S_SPIDER       19
-#define S_TRAPPER      20
-#define S_UNICORN      21
-#define S_VORTEX       22
-#define S_WORM         23
-#define S_XAN          24
-#define S_LIGHT                25
-#define S_ZRUTY                26
-#define S_ANGEL                27
-#define S_BAT          28
-#define S_CENTAUR      29
-#define S_DRAGON       30
-#define S_ELEMENTAL    31
-#define S_FUNGUS       32
-#define S_GNOME                33
-#define S_GIANT                34
-#define S_invisible    35      /* non-class present in def_monsyms[] */
-#define S_JABBERWOCK   36
-#define S_KOP          37
-#define S_LICH         38
-#define S_MUMMY                39
-#define S_NAGA         40
-#define S_OGRE         41
-#define S_PUDDING      42
-#define S_QUANTMECH    43
-#define S_RUSTMONST    44
-#define S_SNAKE                45
-#define S_TROLL                46
-#define S_UMBER                47
-#define S_VAMPIRE      48
-#define S_WRAITH       49
-#define S_XORN         50
-#define S_YETI         51
-#define S_ZOMBIE       52
-#define S_HUMAN                53
-#define S_GHOST                54
-#define S_GOLEM                55
-#define S_DEMON                56
-#define S_EEL          57
-#define S_LIZARD       58
+/* clang-format off */
+#define S_ANT           1
+#define S_BLOB          2
+#define S_COCKATRICE    3
+#define S_DOG           4
+#define S_EYE           5
+#define S_FELINE        6
+#define S_GREMLIN       7
+#define S_HUMANOID      8
+#define S_IMP           9
+#define S_JELLY         10
+#define S_KOBOLD        11
+#define S_LEPRECHAUN    12
+#define S_MIMIC         13
+#define S_NYMPH         14
+#define S_ORC           15
+#define S_PIERCER       16
+#define S_QUADRUPED     17
+#define S_RODENT        18
+#define S_SPIDER        19
+#define S_TRAPPER       20
+#define S_UNICORN       21
+#define S_VORTEX        22
+#define S_WORM          23
+#define S_XAN           24
+#define S_LIGHT         25
+#define S_ZRUTY         26
+#define S_ANGEL         27
+#define S_BAT           28
+#define S_CENTAUR       29
+#define S_DRAGON        30
+#define S_ELEMENTAL     31
+#define S_FUNGUS        32
+#define S_GNOME         33
+#define S_GIANT         34
+#define S_invisible     35      /* non-class present in def_monsyms[] */
+#define S_JABBERWOCK    36
+#define S_KOP           37
+#define S_LICH          38
+#define S_MUMMY         39
+#define S_NAGA          40
+#define S_OGRE          41
+#define S_PUDDING       42
+#define S_QUANTMECH     43
+#define S_RUSTMONST     44
+#define S_SNAKE         45
+#define S_TROLL         46
+#define S_UMBER         47
+#define S_VAMPIRE       48
+#define S_WRAITH        49
+#define S_XORN          50
+#define S_YETI          51
+#define S_ZOMBIE        52
+#define S_HUMAN         53
+#define S_GHOST         54
+#define S_GOLEM         55
+#define S_DEMON         56
+#define S_EEL           57
+#define S_LIZARD        58
 
-#define S_WORM_TAIL    59
-#define S_MIMIC_DEF    60
+#define S_WORM_TAIL     59
+#define S_MIMIC_DEF     60
+/* clang-format on */
 
-#define MAXMCLASSES 61 /* number of monster classes */
+#define MAXMCLASSES 61 /* number of monster classes */
 
 /*
  * Default characters for monsters.  These correspond to the monster classes
  * above.
  */
-#define DEF_ANT                'a'
-#define DEF_BLOB       'b'
-#define DEF_COCKATRICE 'c'
-#define DEF_DOG                'd'
-#define DEF_EYE                'e'
-#define DEF_FELINE     'f'
-#define DEF_GREMLIN    'g'
-#define DEF_HUMANOID   'h'
-#define DEF_IMP                'i'
-#define DEF_JELLY      'j'
-#define DEF_KOBOLD     'k'
-#define DEF_LEPRECHAUN 'l'
-#define DEF_MIMIC      'm'
-#define DEF_NYMPH      'n'
-#define DEF_ORC                'o'
-#define DEF_PIERCER    'p'
-#define DEF_QUADRUPED  'q'
-#define DEF_RODENT     'r'
-#define DEF_SPIDER     's'
-#define DEF_TRAPPER    't'
-#define DEF_UNICORN    'u'
-#define DEF_VORTEX     'v'
-#define DEF_WORM       'w'
-#define DEF_XAN                'x'
-#define DEF_LIGHT      'y'
-#define DEF_ZRUTY      'z'
-#define DEF_ANGEL      'A'
-#define DEF_BAT                'B'
-#define DEF_CENTAUR    'C'
-#define DEF_DRAGON     'D'
-#define DEF_ELEMENTAL  'E'
-#define DEF_FUNGUS     'F'
-#define DEF_GNOME      'G'
-#define DEF_GIANT      'H'
-#define DEF_JABBERWOCK 'J'
-#define DEF_KOP                'K'
-#define DEF_LICH       'L'
-#define DEF_MUMMY      'M'
-#define DEF_NAGA       'N'
-#define DEF_OGRE       'O'
-#define DEF_PUDDING    'P'
-#define DEF_QUANTMECH  'Q'
-#define DEF_RUSTMONST  'R'
-#define DEF_SNAKE      'S'
-#define DEF_TROLL      'T'
-#define DEF_UMBER      'U'
-#define DEF_VAMPIRE    'V'
-#define DEF_WRAITH     'W'
-#define DEF_XORN       'X'
-#define DEF_YETI       'Y'
-#define DEF_ZOMBIE     'Z'
-#define DEF_HUMAN      '@'
-#define DEF_GHOST      ' '
-#define DEF_GOLEM      '\''
-#define DEF_DEMON      '&'
-#define DEF_EEL                ';'
-#define DEF_LIZARD     ':'
+/* clang-format off */
+#define DEF_ANT         'a'
+#define DEF_BLOB        'b'
+#define DEF_COCKATRICE  'c'
+#define DEF_DOG         'd'
+#define DEF_EYE         'e'
+#define DEF_FELINE      'f'
+#define DEF_GREMLIN     'g'
+#define DEF_HUMANOID    'h'
+#define DEF_IMP         'i'
+#define DEF_JELLY       'j'
+#define DEF_KOBOLD      'k'
+#define DEF_LEPRECHAUN  'l'
+#define DEF_MIMIC       'm'
+#define DEF_NYMPH       'n'
+#define DEF_ORC         'o'
+#define DEF_PIERCER     'p'
+#define DEF_QUADRUPED   'q'
+#define DEF_RODENT      'r'
+#define DEF_SPIDER      's'
+#define DEF_TRAPPER     't'
+#define DEF_UNICORN     'u'
+#define DEF_VORTEX      'v'
+#define DEF_WORM        'w'
+#define DEF_XAN         'x'
+#define DEF_LIGHT       'y'
+#define DEF_ZRUTY       'z'
+#define DEF_ANGEL       'A'
+#define DEF_BAT         'B'
+#define DEF_CENTAUR     'C'
+#define DEF_DRAGON      'D'
+#define DEF_ELEMENTAL   'E'
+#define DEF_FUNGUS      'F'
+#define DEF_GNOME       'G'
+#define DEF_GIANT       'H'
+#define DEF_JABBERWOCK  'J'
+#define DEF_KOP         'K'
+#define DEF_LICH        'L'
+#define DEF_MUMMY       'M'
+#define DEF_NAGA        'N'
+#define DEF_OGRE        'O'
+#define DEF_PUDDING     'P'
+#define DEF_QUANTMECH   'Q'
+#define DEF_RUSTMONST   'R'
+#define DEF_SNAKE       'S'
+#define DEF_TROLL       'T'
+#define DEF_UMBER       'U'
+#define DEF_VAMPIRE     'V'
+#define DEF_WRAITH      'W'
+#define DEF_XORN        'X'
+#define DEF_YETI        'Y'
+#define DEF_ZOMBIE      'Z'
+#define DEF_HUMAN       '@'
+#define DEF_GHOST       ' '
+#define DEF_GOLEM       '\''
+#define DEF_DEMON       '&'
+#define DEF_EEL         ';'
+#define DEF_LIZARD      ':'
 
-#define DEF_INVISIBLE  'I'
-#define DEF_WORM_TAIL  '~'
-#define DEF_MIMIC_DEF  ']'
+#define DEF_INVISIBLE   'I'
+#define DEF_WORM_TAIL   '~'
+#define DEF_MIMIC_DEF   ']'
+/* clang-format on */
 
 #endif /* MONSYM_H */
index c4c867b1624176c5b56a848698adcd3a6a3a3b8a..800ebbea8e6892f50bb9c960fe77676ab5c593a5 100644 (file)
  */
 
 #ifndef _H_tty_private
-# define _H_tty_private
+#define _H_tty_private
 
-# ifndef _H_tty_public
+#ifndef _H_tty_public
 #include "mactty.h"
-# endif
+#endif
 
 #if !TARGET_API_MAC_CARBON
-# include <QDOffscreen.h>
-# include <Gestalt.h>
-# include <Errors.h>
+#include <QDOffscreen.h>
+#include <Gestalt.h>
+#include <Errors.h>
 #endif
 
-#define TA_TO_RGB(ta,rgb) (((rgb).red=(((ta)>>16)&0xff)*257),((rgb).green=(((ta)>>8)&0xff)*257),\
-       ((rgb).blue=((ta)&0xff)*257)),rgb
+#define TA_TO_RGB(ta, rgb)                       \
+    (((rgb).red = (((ta) >> 16) & 0xff) * 257),  \
+     ((rgb).green = (((ta) >> 8) & 0xff) * 257), \
+     ((rgb).blue = ((ta) &0xff) * 257)),         \
+        rgb
 
 typedef struct tty_record {
-       WindowPtr       its_window ;
-
-       short           font_number ;
-       short           font_size ;
-       short           char_width ;
-       short           row_height ;
-       short           ascent_height ;
-
-       short           x_size ;
-       short           y_size ;
-       short           x_curs ;
-       short           y_curs ;
-
-       GWorldPtr               its_window_world ;
-       BitMap                  its_bits ;
-       GrafPtr                 offscreen_port ;
-       GWorldPtr               offscreen_world ;
+    WindowPtr its_window;
+
+    short font_number;
+    short font_size;
+    short char_width;
+    short row_height;
+    short ascent_height;
+
+    short x_size;
+    short y_size;
+    short x_curs;
+    short y_curs;
+
+    GWorldPtr its_window_world;
+    BitMap its_bits;
+    GrafPtr offscreen_port;
+    GWorldPtr offscreen_world;
 #if CLIP_RECT_ONLY
-       Rect                    invalid_rect ;
+    Rect invalid_rect;
 #else
-       RgnHandle               invalid_part ;
+    RgnHandle invalid_part;
 #endif
 
-       long            attribute [ TTY_NUMBER_ATTRIBUTES ] ;
-       long            last_cursor ;
-
-       Boolean         was_allocated ;
-       Boolean         curs_state ;
-       Boolean         uses_gworld ;
-} tty_record ;
+    long attribute[TTY_NUMBER_ATTRIBUTES];
+    long last_cursor;
 
+    Boolean was_allocated;
+    Boolean curs_state;
+    Boolean uses_gworld;
+} tty_record;
 
-#endif /* _H_tty_private */
+#endif /* _H_tty_private */
index bc2a0b7ea5fa26de28bb46a53966d2cd3712237f..245665ee4482d9632238ccb604c56649d96df09e 100644 (file)
@@ -9,68 +9,75 @@
 
 /* #define SHELL       /* nt use of pcsys routines caused a hang */
 
-#define RANDOM         /* have Berkeley random(3) */
-#define TEXTCOLOR      /* Color text */
+#define RANDOM    /* have Berkeley random(3) */
+#define TEXTCOLOR /* Color text */
 
-#define EXEPATH                        /* Allow .exe location to be used as HACKDIR */
-#define TRADITIONAL_GLYPHMAP   /* Store glyph mappings at level change time */
+#define EXEPATH              /* Allow .exe location to be used as HACKDIR */
+#define TRADITIONAL_GLYPHMAP /* Store glyph mappings at level change time */
 
-#define LAN_FEATURES           /* Include code for lan-aware features. Untested in 3.4.0*/
+#define LAN_FEATURES /* Include code for lan-aware features. Untested in \
+                        3.4.0*/
 
-#define PC_LOCKING             /* Prevent overwrites of aborted or in-progress games */
-                               /* without first receiving confirmation. */
+#define PC_LOCKING /* Prevent overwrites of aborted or in-progress games */
+/* without first receiving confirmation. */
 
-#define HOLD_LOCKFILE_OPEN     /* Keep an exclusive lock on the .0 file */
+#define HOLD_LOCKFILE_OPEN /* Keep an exclusive lock on the .0 file */
 
-#define SELF_RECOVER           /* Allow the game itself to recover from an aborted game */
+#define SELF_RECOVER /* Allow the game itself to recover from an aborted \
+                        game */
 
-#define SYSCF                  /* Use a global configuration */
-#define SYSCF_FILE "sysconf"   /* Use a file to hold the SYSCF configuration */
+#define SYSCF                /* Use a global configuration */
+#define SYSCF_FILE "sysconf" /* Use a file to hold the SYSCF configuration \
+                                */
 
 #define USER_SOUNDS
 
-/*#define CHANGE_COLOR*/               /* allow palette changes */
-#define SELECTSAVED            /* Provide menu of saved games to choose from at start */
+/*#define CHANGE_COLOR*/ /* allow palette changes */
+#define SELECTSAVED /* Provide menu of saved games to choose from at start \
+                       */
 
 /*
  * -----------------------------------------------------------------
  *  The remaining code shouldn't need modification.
  * -----------------------------------------------------------------
  */
-/* #define SHORT_FILENAMES     /* All NT filesystems support long names now */
+/* #define SHORT_FILENAMES     /* All NT filesystems support long names now
+ */
 
 #ifdef MICRO
-#undef MICRO                   /* never define this! */
+#undef MICRO /* never define this! */
 #endif
 
-#define NOCWD_ASSUMPTIONS      /* Always define this. There are assumptions that
-                                   it is defined for WIN32.
-                                  Allow paths to be specified for HACKDIR,
-                                  LEVELDIR, SAVEDIR, BONESDIR, DATADIR,
-                                  SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
+#define NOCWD_ASSUMPTIONS /* Always define this. There are assumptions that \
+                             it is defined for WIN32.                       \
+                             Allow paths to be specified for HACKDIR,       \
+                             LEVELDIR, SAVEDIR, BONESDIR, DATADIR,          \
+                             SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
 #define NO_TERMS
 #define ASCIIGRAPH
 
 #ifdef OPTIONS_USED
 #undef OPTIONS_USED
 #endif
-#define OPTIONS_USED   "options"
+#define OPTIONS_USED "options"
 #define OPTIONS_FILE OPTIONS_USED
 
-#define PORT_HELP      "porthelp"
+#define PORT_HELP "porthelp"
 
-#define PORT_DEBUG     /* include ability to debug international keyboard issues */
+#define PORT_DEBUG /* include ability to debug international keyboard issues \
+                      */
 
-#define SAFERHANGUP    /* Define SAFERHANGUP to delay hangup processing
-                        * until the main command loop. 'safer' because it
-                        * avoids certain cheats and also avoids losing
-                        * objects being thrown when the hangup occurs.
-                        */
+#define SAFERHANGUP /* Define SAFERHANGUP to delay hangup processing   \
+                     * until the main command loop. 'safer' because it \
+                     * avoids certain cheats and also avoids losing    \
+                     * objects being thrown when the hangup occurs.    \
+                     */
 
 /* Stuff to help the user with some common, yet significant errors */
-#define INTERJECT_PANIC                0
-#define INTERJECTION_TYPES     (INTERJECT_PANIC + 1)
-extern void FDECL(interject_assistance, (int,int,genericptr_t,genericptr_t));
+#define INTERJECT_PANIC 0
+#define INTERJECTION_TYPES (INTERJECT_PANIC + 1)
+extern void FDECL(interject_assistance,
+                  (int, int, genericptr_t, genericptr_t));
 extern void FDECL(interject, (int));
 
 /*
@@ -79,52 +86,54 @@ extern void FDECL(interject, (int));
  *===============================================
  */
 #ifdef _MSC_VER
-# if (_MSC_VER > 1000)
+#if (_MSC_VER > 1000)
 /* Visual C 8 warning elimination */
-#  ifndef _CRT_SECURE_NO_DEPRECATE
+#ifndef _CRT_SECURE_NO_DEPRECATE
 #define _CRT_SECURE_NO_DEPRECATE
-# endif
-#  ifndef _SCL_SECURE_NO_DEPRECATE
+#endif
+#ifndef _SCL_SECURE_NO_DEPRECATE
 #define _SCL_SECURE_NO_DEPRECATE
-# endif
-#  ifndef _CRT_NONSTDC_NO_DEPRECATE
+#endif
+#ifndef _CRT_NONSTDC_NO_DEPRECATE
 #define _CRT_NONSTDC_NO_DEPRECATE
-# endif
-#pragma warning(disable:4996)  /* VC8 deprecation warnings */
-#pragma warning(disable:4142)  /* benign redefinition */
-#pragma warning(disable:4267)  /* conversion from 'size_t' to XX */
-#  if (_MSC_VER > 1600)
-#pragma warning(disable:4459)  /* hide global declaration */
-#  endif /* _MSC_VER > 1600 */
-# endif /* _MSC_VER > 1000 */
-#pragma warning(disable:4761)  /* integral size mismatch in arg; conv supp*/
-# ifdef YYPREFIX
-#pragma warning(disable:4102)  /* unreferenced label */
-#  endif
-# if 0
-#pragma warning(disable:4018)  /* signed/unsigned mismatch */
-#pragma warning(disable:4305)  /* init, conv from 'const int' to 'char' */
-# endif
-#endif
-
-#define RUNTIME_PORT_ID        /* trigger run-time port identification for
-                        * identification of exe CPU architecture
-                        */
+#endif
+#pragma warning(disable : 4996) /* VC8 deprecation warnings */
+#pragma warning(disable : 4142) /* benign redefinition */
+#pragma warning(disable : 4267) /* conversion from 'size_t' to XX */
+#if (_MSC_VER > 1600)
+#pragma warning(disable : 4459) /* hide global declaration */
+#endif                          /* _MSC_VER > 1600 */
+#endif                          /* _MSC_VER > 1000 */
+#pragma warning(disable : 4761) /* integral size mismatch in arg; conv \
+                                   supp*/
+#ifdef YYPREFIX
+#pragma warning(disable : 4102) /* unreferenced label */
+#endif
+#if 0
+#pragma warning(disable : 4018) /* signed/unsigned mismatch */
+#pragma warning(disable : 4305) /* init, conv from 'const int' to 'char' */
+#endif
+#endif
+
+#define RUNTIME_PORT_ID /* trigger run-time port identification for \
+                         * identification of exe CPU architecture   \
+                         */
 
 /* The following is needed for prototypes of certain functions */
 #if defined(_MSC_VER)
-#include <process.h>   /* Provides prototypes of exit(), spawn()      */
+#include <process.h> /* Provides prototypes of exit(), spawn()      */
 #endif
 
-#include <string.h>    /* Provides prototypes of strncmpi(), etc.     */
+#include <string.h> /* Provides prototypes of strncmpi(), etc.     */
 #ifdef STRNCMPI
-#define strncmpi(a,b,c) strnicmp(a,b,c)
+#define strncmpi(a, b, c) strnicmp(a, b, c)
 #endif
 
 /* Visual Studio defines this in their own headers, which we don't use */
 #ifndef snprintf
 #define snprintf _snprintf
-#pragma warning(disable:4996)   /* deprecation warning suggesting snprintf_s */
+#pragma warning( \
+    disable : 4996) /* deprecation warning suggesting snprintf_s */
 #endif
 
 #include <sys/types.h>
@@ -135,21 +144,21 @@ extern void FDECL(interject, (int));
 #undef random
 #endif
 
-#define PATHLEN                BUFSZ /* maximum pathlength */
-#define FILENAME       BUFSZ /* maximum filename length (conservative) */
+#define PATHLEN BUFSZ  /* maximum pathlength */
+#define FILENAME BUFSZ /* maximum filename length (conservative) */
 
 #if defined(_MAX_PATH) && defined(_MAX_FNAME)
-# if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)
+#if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)
 #undef PATHLEN
 #undef FILENAME
-#define PATHLEN                _MAX_PATH
-#define FILENAME       _MAX_FNAME
-# endif
+#define PATHLEN _MAX_PATH
+#define FILENAME _MAX_FNAME
+#endif
 #endif
 
 #define NO_SIGNAL
-#define index  strchr
-#define rindex strrchr
+#define index strchr
+#define rindex strrchr
 
 /* Time stuff */
 #include <time.h>
@@ -157,27 +166,27 @@ extern void FDECL(interject, (int));
 #define USE_STDARG
 #ifdef RANDOM
 /* Use the high quality random number routines. */
-#define Rand() random()
+#define Rand() random()
 #else
-#define Rand() rand()
+#define Rand() rand()
 #endif
 
 #include <sys/stat.h>
-#define FCMASK (_S_IREAD|_S_IWRITE)           /* file creation mask */
-#define regularize     nt_regularize
+#define FCMASK (_S_IREAD | _S_IWRITE) /* file creation mask */
+#define regularize nt_regularize
 #define HLOCK "NHPERM"
 
 #ifndef M
-#define M(c)           ((char) (0x80 | (c)))
+#define M(c) ((char) (0x80 | (c)))
 /* #define M(c)                ((c) - 128) */
 #endif
 
 #ifndef C
-#define C(c)           (0x1f & (c))
+#define C(c) (0x1f & (c))
 #endif
 
 #if defined(DLB)
-#define FILENAME_CMP  stricmp                /* case insensitive */
+#define FILENAME_CMP stricmp /* case insensitive */
 #endif
 
 #if 0
@@ -189,7 +198,7 @@ extern const char *alllevels, *allbones;
 extern char hackdir[];
 #define ABORT C('a')
 #define getuid() 1
-#define getlogin() ((char *)0)
+#define getlogin() ((char *) 0)
 extern void NDECL(win32_abort);
 extern void FDECL(nttty_preference_update, (const char *));
 extern void NDECL(toggle_mouse_support);
@@ -202,20 +211,22 @@ extern void NDECL(raw_clear_screen);
 #include <io.h>
 #include <direct.h>
 #else
-int  _RTLENTRY _EXPFUNC access  (const char _FAR *__path, int __amode);
-int  _RTLENTRY _EXPFUNC _chdrive(int __drive);
-int  _RTLENTRYF _EXPFUNC32   chdir( const char _FAR *__path );
-char _FAR * _RTLENTRY  _EXPFUNC     getcwd( char _FAR *__buf, int __buflen );
-int  _RTLENTRY _EXPFUNC write (int __handle, const void _FAR *__buf, unsigned __len);
-int  _RTLENTRY _EXPFUNC creat   (const char _FAR *__path, int __amode);
-int  _RTLENTRY _EXPFUNC close   (int __handle);
-int  _RTLENTRY _EXPFUNC _close  (int __handle);
-int  _RTLENTRY _EXPFUNC open  (const char _FAR *__path, int __access,... /*unsigned mode*/);
-long _RTLENTRY _EXPFUNC lseek  (int __handle, long __offset, int __fromwhere);
-int  _RTLENTRY _EXPFUNC read  (int __handle, void _FAR *__buf, unsigned __len);
+int _RTLENTRY _EXPFUNC access(const char _FAR *__path, int __amode);
+int _RTLENTRY _EXPFUNC _chdrive(int __drive);
+int _RTLENTRYF _EXPFUNC32 chdir(const char _FAR *__path);
+char _FAR *_RTLENTRY _EXPFUNC getcwd(char _FAR *__buf, int __buflen);
+int _RTLENTRY _EXPFUNC
+write(int __handle, const void _FAR *__buf, unsigned __len);
+int _RTLENTRY _EXPFUNC creat(const char _FAR *__path, int __amode);
+int _RTLENTRY _EXPFUNC close(int __handle);
+int _RTLENTRY _EXPFUNC _close(int __handle);
+int _RTLENTRY _EXPFUNC
+open(const char _FAR *__path, int __access, ... /*unsigned mode*/);
+long _RTLENTRY _EXPFUNC lseek(int __handle, long __offset, int __fromwhere);
+int _RTLENTRY _EXPFUNC read(int __handle, void _FAR *__buf, unsigned __len);
 #endif
 #include <conio.h>
-#undef kbhit           /* Use our special NT kbhit */
+#undef kbhit /* Use our special NT kbhit */
 #define kbhit (*nt_kbhit)
 
 #ifdef LAN_FEATURES
@@ -223,13 +234,13 @@ int  _RTLENTRY _EXPFUNC read  (int __handle, void _FAR *__buf, unsigned __len);
 #endif
 
 #ifndef alloca
-#define ALLOCA_HACK    /* used in util/panic.c */
+#define ALLOCA_HACK /* used in util/panic.c */
 #endif
 
 extern int FDECL(set_win32_option, (const char *, const char *));
-#define LEFTBUTTON  FROM_LEFT_1ST_BUTTON_PRESSED
+#define LEFTBUTTON FROM_LEFT_1ST_BUTTON_PRESSED
 #define RIGHTBUTTON RIGHTMOST_BUTTON_PRESSED
-#define MIDBUTTON   FROM_LEFT_2ND_BUTTON_PRESSED
+#define MIDBUTTON FROM_LEFT_2ND_BUTTON_PRESSED
 #define MOUSEMASK (LEFTBUTTON | RIGHTBUTTON | MIDBUTTON)
 #ifdef CHANGE_COLOR
 extern int FDECL(alternative_palette, (char *));
index 5da64c96ec9e395d2ac2d76b3a892dd46ded2aa6..c061a3143ea841d8492360c568c18d0c4868e83a 100644 (file)
@@ -7,12 +7,12 @@
 #define OBJ_H
 
 /* #define obj obj_nh */ /* uncomment for SCO UNIX, which has a conflicting
-                         * typedef for "obj" in <sys/types.h> */
+                          * typedef for "obj" in <sys/types.h> */
 
 union vptrs {
-           struct obj *v_nexthere;     /* floor location lists */
-           struct obj *v_ocontainer;   /* point back to container */
-           struct monst *v_ocarry;     /* point back to carrying monst */
+    struct obj *v_nexthere;   /* floor location lists */
+    struct obj *v_ocontainer; /* point back to container */
+    struct monst *v_ocarry;   /* point back to carrying monst */
 };
 
 /****
@@ -20,121 +20,125 @@ union vptrs {
  **    (see the note at the bottom of this file before adding oextra fields)
  */
 struct oextra {
-       char *oname;                    /* ptr to name of object */
-       struct monst *omonst;           /* ptr to attached monst struct */
-       unsigned *omid;                 /* ptr to m_id */
-       long *olong;                    /* ptr to misc long (temporary gold object) */
-       char *omailcmd;                 /* response_cmd for mail deliver */
+    char *oname;          /* ptr to name of object */
+    struct monst *omonst; /* ptr to attached monst struct */
+    unsigned *omid;       /* ptr to m_id */
+    long *olong;          /* ptr to misc long (temporary gold object) */
+    char *omailcmd;       /* response_cmd for mail deliver */
 };
 
 struct obj {
-       struct obj *nobj;
-       union vptrs v;
-#define nexthere       v.v_nexthere
-#define ocontainer     v.v_ocontainer
-#define ocarry         v.v_ocarry
-
-       struct obj *cobj;       /* contents list for containers */
-       unsigned o_id;
-       xchar ox,oy;
-       short otyp;             /* object class number */
-       unsigned owt;
-       long quan;              /* number of items */
-
-       schar spe;              /* quality of weapon, armor or ring (+ or -)
-                                  number of charges for wand ( >= -1 )
-                                  marks your eggs, tin variety and spinach tins
-                                  royal coffers for a court ( == 2)
-                                  tells which fruit a fruit is
-                                  special for uball and amulet
-                                  historic and gender for statues */
+    struct obj *nobj;
+    union vptrs v;
+#define nexthere v.v_nexthere
+#define ocontainer v.v_ocontainer
+#define ocarry v.v_ocarry
+
+    struct obj *cobj; /* contents list for containers */
+    unsigned o_id;
+    xchar ox, oy;
+    short otyp; /* object class number */
+    unsigned owt;
+    long quan; /* number of items */
+
+    schar spe; /* quality of weapon, armor or ring (+ or -)
+                  number of charges for wand ( >= -1 )
+                  marks your eggs, tin variety and spinach tins
+                  royal coffers for a court ( == 2)
+                  tells which fruit a fruit is
+                  special for uball and amulet
+                  historic and gender for statues */
 #define STATUE_HISTORIC 0x01
-#define STATUE_MALE     0x02
-#define STATUE_FEMALE   0x04
-       char    oclass;         /* object class */
-       char    invlet;         /* designation in inventory */
-       char    oartifact;      /* artifact array index */
-
-       xchar where;            /* where the object thinks it is */
-#define OBJ_FREE       0               /* object not attached to anything */
-#define OBJ_FLOOR      1               /* object on floor */
-#define OBJ_CONTAINED  2               /* object in a container */
-#define OBJ_INVENT     3               /* object in the hero's inventory */
-#define OBJ_MINVENT    4               /* object in a monster inventory */
-#define OBJ_MIGRATING  5               /* object sent off to another level */
-#define OBJ_BURIED     6               /* object buried */
-#define OBJ_ONBILL     7               /* object on shk bill */
-#define NOBJ_STATES    8
-       xchar timed;            /* # of fuses (timers) attached to this obj */
-
-       Bitfield(cursed,1);
-       Bitfield(blessed,1);
-       Bitfield(unpaid,1);     /* on some bill */
-       Bitfield(no_charge,1);  /* if shk shouldn't charge for this */
-       Bitfield(known,1);      /* exact nature known */
-       Bitfield(dknown,1);     /* color or text known */
-       Bitfield(bknown,1);     /* blessing or curse known */
-       Bitfield(rknown,1);     /* rustproof or not known */
-
-       Bitfield(oeroded,2);    /* rusted/burnt weapon/armor */
-       Bitfield(oeroded2,2);   /* corroded/rotted weapon/armor */
-#define greatest_erosion(otmp) (int)((otmp)->oeroded > (otmp)->oeroded2 ? (otmp)->oeroded : (otmp)->oeroded2)
+#define STATUE_MALE 0x02
+#define STATUE_FEMALE 0x04
+    char oclass;    /* object class */
+    char invlet;    /* designation in inventory */
+    char oartifact; /* artifact array index */
+
+    xchar where;        /* where the object thinks it is */
+#define OBJ_FREE 0      /* object not attached to anything */
+#define OBJ_FLOOR 1     /* object on floor */
+#define OBJ_CONTAINED 2 /* object in a container */
+#define OBJ_INVENT 3    /* object in the hero's inventory */
+#define OBJ_MINVENT 4   /* object in a monster inventory */
+#define OBJ_MIGRATING 5 /* object sent off to another level */
+#define OBJ_BURIED 6    /* object buried */
+#define OBJ_ONBILL 7    /* object on shk bill */
+#define NOBJ_STATES 8
+    xchar timed; /* # of fuses (timers) attached to this obj */
+
+    Bitfield(cursed, 1);
+    Bitfield(blessed, 1);
+    Bitfield(unpaid, 1);    /* on some bill */
+    Bitfield(no_charge, 1); /* if shk shouldn't charge for this */
+    Bitfield(known, 1);     /* exact nature known */
+    Bitfield(dknown, 1);    /* color or text known */
+    Bitfield(bknown, 1);    /* blessing or curse known */
+    Bitfield(rknown, 1);    /* rustproof or not known */
+
+    Bitfield(oeroded, 2);  /* rusted/burnt weapon/armor */
+    Bitfield(oeroded2, 2); /* corroded/rotted weapon/armor */
+#define greatest_erosion(otmp)                                 \
+    (int)((otmp)->oeroded > (otmp)->oeroded2 ? (otmp)->oeroded \
+                                             : (otmp)->oeroded2)
 #define MAX_ERODE 3
-#define orotten oeroded                /* rotten food */
-#define odiluted oeroded       /* diluted potions */
+#define orotten oeroded  /* rotten food */
+#define odiluted oeroded /* diluted potions */
 #define norevive oeroded2
-       Bitfield(oerodeproof,1); /* erodeproof weapon/armor */
-       Bitfield(olocked,1);    /* object is locked */
-       Bitfield(obroken,1);    /* lock has been broken */
-#define degraded_horn obroken  /* unicorn horn will poly to non-magic */
-       Bitfield(otrapped,1);   /* container is trapped */
-                               /* or accidental tripped rolling boulder trap */
-#define opoisoned otrapped     /* object (weapon) is coated with poison */
-
-       Bitfield(recharged,3);  /* number of times it's been recharged */
-#define on_ice recharged       /* corpse on ice */
-       Bitfield(lamplit,1);    /* a light-source -- can be lit */
-    Bitfield(globby,1);            /* globby; will combine with like types on adjacent squares */
-       Bitfield(greased,1);    /* covered with grease */
-       Bitfield(nomerge,1);    /* set temporarily to prevent merging */
-       Bitfield(was_thrown,1); /* thrown by hero since last picked up */
-
-       Bitfield(in_use,1);     /* for magic items before useup items */
-       Bitfield(bypass,1);     /* mark this as an object to be skipped by bhito() */
-       Bitfield(cknown,1);     /* contents of container assumed to be known */
-       Bitfield(lknown,1);     /* locked/unlocked status is known */
-       /* 4 free bits */
-
-       int     corpsenm;       /* type of corpse is mons[corpsenm] */
-#define leashmon  corpsenm     /* gets m_id of attached pet */
-#define fromsink  corpsenm     /* a potion from a sink */
-#define novelidx corpsenm      /* 3.6.0 tribute - the index of the novel title */
+    Bitfield(oerodeproof, 1); /* erodeproof weapon/armor */
+    Bitfield(olocked, 1);     /* object is locked */
+    Bitfield(obroken, 1);     /* lock has been broken */
+#define degraded_horn obroken /* unicorn horn will poly to non-magic */
+    Bitfield(otrapped, 1);    /* container is trapped */
+/* or accidental tripped rolling boulder trap */
+#define opoisoned otrapped /* object (weapon) is coated with poison */
+
+    Bitfield(recharged, 3); /* number of times it's been recharged */
+#define on_ice recharged    /* corpse on ice */
+    Bitfield(lamplit, 1);   /* a light-source -- can be lit */
+    Bitfield(
+        globby,
+        1); /* globby; will combine with like types on adjacent squares */
+    Bitfield(greased, 1);    /* covered with grease */
+    Bitfield(nomerge, 1);    /* set temporarily to prevent merging */
+    Bitfield(was_thrown, 1); /* thrown by hero since last picked up */
+
+    Bitfield(in_use, 1); /* for magic items before useup items */
+    Bitfield(bypass, 1); /* mark this as an object to be skipped by bhito() */
+    Bitfield(cknown, 1); /* contents of container assumed to be known */
+    Bitfield(lknown, 1); /* locked/unlocked status is known */
+    /* 4 free bits */
+
+    int corpsenm;         /* type of corpse is mons[corpsenm] */
+#define leashmon corpsenm /* gets m_id of attached pet */
+#define fromsink corpsenm /* a potion from a sink */
+#define novelidx corpsenm /* 3.6.0 tribute - the index of the novel title */
 #define record_achieve_special corpsenm
-       int usecount;           /* overloaded for various things that tally */
-#define spestudied usecount    /* # of times a spellbook has been studied */
-       unsigned oeaten;        /* nutrition left in food, if partly eaten */
-       long age;               /* creation date */
-       long owornmask;
-       struct oextra *oextra;  /* pointer to oextra struct */
+    int usecount;           /* overloaded for various things that tally */
+#define spestudied usecount /* # of times a spellbook has been studied */
+    unsigned oeaten;        /* nutrition left in food, if partly eaten */
+    long age;               /* creation date */
+    long owornmask;
+    struct oextra *oextra; /* pointer to oextra struct */
 };
 
-#define newobj()       (struct obj *)alloc(sizeof(struct obj))
+#define newobj() (struct obj *) alloc(sizeof(struct obj))
 
 /***
  **    oextra referencing and testing macros
  */
 
-#define ONAME(o)       ((o)->oextra->oname)
-#define OMID(o)                ((o)->oextra->omid)
-#define OMONST(o)      ((o)->oextra->omonst)
-#define OLONG(o)       ((o)->oextra->olong)
-#define OMAILCMD(o)    ((o)->oextra->omailcmd)
+#define ONAME(o) ((o)->oextra->oname)
+#define OMID(o) ((o)->oextra->omid)
+#define OMONST(o) ((o)->oextra->omonst)
+#define OLONG(o) ((o)->oextra->olong)
+#define OMAILCMD(o) ((o)->oextra->omailcmd)
 
-#define has_oname(o)   ((o)->oextra && ONAME(o))
-#define has_omid(o)    ((o)->oextra && OMID(o))
-#define has_omonst(o)  ((o)->oextra && OMONST(o))
-#define has_olong(o)   ((o)->oextra && OLONG(o))
-#define has_omailcmd(o)        ((o)->oextra && OMAILCMD(o))
+#define has_oname(o) ((o)->oextra && ONAME(o))
+#define has_omid(o) ((o)->oextra && OMID(o))
+#define has_omonst(o) ((o)->oextra && OMONST(o))
+#define has_olong(o) ((o)->oextra && OLONG(o))
+#define has_omailcmd(o) ((o)->oextra && OMAILCMD(o))
 
 /* Weapons and weapon-tools */
 /* KMH -- now based on skill categories.  Formerly:
@@ -148,195 +152,193 @@ struct obj {
  *     #define is_multigen(otyp) (otyp <= SHURIKEN)
  *     #define is_poisonable(otyp) (otyp <= BEC_DE_CORBIN)
  */
-#define is_blade(otmp) (otmp->oclass == WEAPON_CLASS && \
-                        objects[otmp->otyp].oc_skill >= P_DAGGER && \
-                        objects[otmp->otyp].oc_skill <= P_SABER)
-#define is_axe(otmp)   ((otmp->oclass == WEAPON_CLASS || \
-                        otmp->oclass == TOOL_CLASS) && \
-                        objects[otmp->otyp].oc_skill == P_AXE)
-#define is_pick(otmp)  ((otmp->oclass == WEAPON_CLASS || \
-                        otmp->oclass == TOOL_CLASS) && \
-                        objects[otmp->otyp].oc_skill == P_PICK_AXE)
-#define is_sword(otmp) (otmp->oclass == WEAPON_CLASS && \
-                        objects[otmp->otyp].oc_skill >= P_SHORT_SWORD && \
-                        objects[otmp->otyp].oc_skill <= P_SABER)
-#define is_pole(otmp)  ((otmp->oclass == WEAPON_CLASS || \
-                       otmp->oclass == TOOL_CLASS) && \
-                        (objects[otmp->otyp].oc_skill == P_POLEARMS || \
-                        objects[otmp->otyp].oc_skill == P_LANCE))
-#define is_spear(otmp) (otmp->oclass == WEAPON_CLASS && \
-                        objects[otmp->otyp].oc_skill == P_SPEAR)
-#define is_launcher(otmp)      (otmp->oclass == WEAPON_CLASS && \
-                        objects[otmp->otyp].oc_skill >= P_BOW && \
-                        objects[otmp->otyp].oc_skill <= P_CROSSBOW)
-#define is_ammo(otmp)  ((otmp->oclass == WEAPON_CLASS || \
-                        otmp->oclass == GEM_CLASS) && \
-                        objects[otmp->otyp].oc_skill >= -P_CROSSBOW && \
-                        objects[otmp->otyp].oc_skill <= -P_BOW)
-#define matching_launcher(a,l) ((l) && objects[(a)->otyp].oc_skill == \
-                                      -objects[(l)->otyp].oc_skill)
-#define ammo_and_launcher(a,l) (is_ammo(a) && matching_launcher(a,l))
-#define is_missile(otmp)       ((otmp->oclass == WEAPON_CLASS || \
-                        otmp->oclass == TOOL_CLASS) && \
-                        objects[otmp->otyp].oc_skill >= -P_BOOMERANG && \
-                        objects[otmp->otyp].oc_skill <= -P_DART)
-#define is_weptool(o)  ((o)->oclass == TOOL_CLASS && \
-                        objects[(o)->otyp].oc_skill != P_NONE)
-#define bimanual(otmp) ((otmp->oclass == WEAPON_CLASS || \
-                        otmp->oclass == TOOL_CLASS) && \
-                        objects[otmp->otyp].oc_bimanual)
-#define is_multigen(otmp)      (otmp->oclass == WEAPON_CLASS && \
-                        objects[otmp->otyp].oc_skill >= -P_SHURIKEN && \
-                        objects[otmp->otyp].oc_skill <= -P_BOW)
-#define is_poisonable(otmp)    (otmp->oclass == WEAPON_CLASS && \
-                        objects[otmp->otyp].oc_skill >= -P_SHURIKEN && \
-                        objects[otmp->otyp].oc_skill <= -P_BOW)
-#define uslinging()    (uwep && objects[uwep->otyp].oc_skill == P_SLING)
+#define is_blade(otmp)                           \
+    (otmp->oclass == WEAPON_CLASS                \
+     && objects[otmp->otyp].oc_skill >= P_DAGGER \
+     && objects[otmp->otyp].oc_skill <= P_SABER)
+#define is_axe(otmp)                                              \
+    ((otmp->oclass == WEAPON_CLASS || otmp->oclass == TOOL_CLASS) \
+     && objects[otmp->otyp].oc_skill == P_AXE)
+#define is_pick(otmp)                                             \
+    ((otmp->oclass == WEAPON_CLASS || otmp->oclass == TOOL_CLASS) \
+     && objects[otmp->otyp].oc_skill == P_PICK_AXE)
+#define is_sword(otmp)                                \
+    (otmp->oclass == WEAPON_CLASS                     \
+     && objects[otmp->otyp].oc_skill >= P_SHORT_SWORD \
+     && objects[otmp->otyp].oc_skill <= P_SABER)
+#define is_pole(otmp)                                             \
+    ((otmp->oclass == WEAPON_CLASS || otmp->oclass == TOOL_CLASS) \
+     && (objects[otmp->otyp].oc_skill == P_POLEARMS               \
+         || objects[otmp->otyp].oc_skill == P_LANCE))
+#define is_spear(otmp) \
+    (otmp->oclass == WEAPON_CLASS && objects[otmp->otyp].oc_skill == P_SPEAR)
+#define is_launcher(otmp)                                                  \
+    (otmp->oclass == WEAPON_CLASS && objects[otmp->otyp].oc_skill >= P_BOW \
+     && objects[otmp->otyp].oc_skill <= P_CROSSBOW)
+#define is_ammo(otmp)                                            \
+    ((otmp->oclass == WEAPON_CLASS || otmp->oclass == GEM_CLASS) \
+     && objects[otmp->otyp].oc_skill >= -P_CROSSBOW              \
+     && objects[otmp->otyp].oc_skill <= -P_BOW)
+#define matching_launcher(a, l) \
+    ((l) && objects[(a)->otyp].oc_skill == -objects[(l)->otyp].oc_skill)
+#define ammo_and_launcher(a, l) (is_ammo(a) && matching_launcher(a, l))
+#define is_missile(otmp)                                          \
+    ((otmp->oclass == WEAPON_CLASS || otmp->oclass == TOOL_CLASS) \
+     && objects[otmp->otyp].oc_skill >= -P_BOOMERANG              \
+     && objects[otmp->otyp].oc_skill <= -P_DART)
+#define is_weptool(o) \
+    ((o)->oclass == TOOL_CLASS && objects[(o)->otyp].oc_skill != P_NONE)
+#define bimanual(otmp)                                            \
+    ((otmp->oclass == WEAPON_CLASS || otmp->oclass == TOOL_CLASS) \
+     && objects[otmp->otyp].oc_bimanual)
+#define is_multigen(otmp)                           \
+    (otmp->oclass == WEAPON_CLASS                   \
+     && objects[otmp->otyp].oc_skill >= -P_SHURIKEN \
+     && objects[otmp->otyp].oc_skill <= -P_BOW)
+#define is_poisonable(otmp)                         \
+    (otmp->oclass == WEAPON_CLASS                   \
+     && objects[otmp->otyp].oc_skill >= -P_SHURIKEN \
+     && objects[otmp->otyp].oc_skill <= -P_BOW)
+#define uslinging() (uwep && objects[uwep->otyp].oc_skill == P_SLING)
 
 /* Armor */
-#define is_shield(otmp) (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_SHIELD)
-#define is_helmet(otmp) (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_HELM)
-#define is_boots(otmp) (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_BOOTS)
-#define is_gloves(otmp) (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_GLOVES)
-#define is_cloak(otmp) (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_CLOAK)
-#define is_shirt(otmp) (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_SHIRT)
-#define is_suit(otmp)  (otmp->oclass == ARMOR_CLASS && \
-                        objects[otmp->otyp].oc_armcat == ARM_SUIT)
-#define is_elven_armor(otmp)   ((otmp)->otyp == ELVEN_LEATHER_HELM\
-                               || (otmp)->otyp == ELVEN_MITHRIL_COAT\
-                               || (otmp)->otyp == ELVEN_CLOAK\
-                               || (otmp)->otyp == ELVEN_SHIELD\
-                               || (otmp)->otyp == ELVEN_BOOTS)
-#define is_orcish_armor(otmp)  ((otmp)->otyp == ORCISH_HELM\
-                               || (otmp)->otyp == ORCISH_CHAIN_MAIL\
-                               || (otmp)->otyp == ORCISH_RING_MAIL\
-                               || (otmp)->otyp == ORCISH_CLOAK\
-                               || (otmp)->otyp == URUK_HAI_SHIELD\
-                               || (otmp)->otyp == ORCISH_SHIELD)
-#define is_dwarvish_armor(otmp)        ((otmp)->otyp == DWARVISH_IRON_HELM\
-                               || (otmp)->otyp == DWARVISH_MITHRIL_COAT\
-                               || (otmp)->otyp == DWARVISH_CLOAK\
-                               || (otmp)->otyp == DWARVISH_ROUNDSHIELD)
-#define is_gnomish_armor(otmp) (FALSE)
-
-                               
+#define is_shield(otmp)          \
+    (otmp->oclass == ARMOR_CLASS \
+     && objects[otmp->otyp].oc_armcat == ARM_SHIELD)
+#define is_helmet(otmp) \
+    (otmp->oclass == ARMOR_CLASS && objects[otmp->otyp].oc_armcat == ARM_HELM)
+#define is_boots(otmp)           \
+    (otmp->oclass == ARMOR_CLASS \
+     && objects[otmp->otyp].oc_armcat == ARM_BOOTS)
+#define is_gloves(otmp)          \
+    (otmp->oclass == ARMOR_CLASS \
+     && objects[otmp->otyp].oc_armcat == ARM_GLOVES)
+#define is_cloak(otmp)           \
+    (otmp->oclass == ARMOR_CLASS \
+     && objects[otmp->otyp].oc_armcat == ARM_CLOAK)
+#define is_shirt(otmp)           \
+    (otmp->oclass == ARMOR_CLASS \
+     && objects[otmp->otyp].oc_armcat == ARM_SHIRT)
+#define is_suit(otmp) \
+    (otmp->oclass == ARMOR_CLASS && objects[otmp->otyp].oc_armcat == ARM_SUIT)
+#define is_elven_armor(otmp)                                              \
+    ((otmp)->otyp == ELVEN_LEATHER_HELM                                   \
+     || (otmp)->otyp == ELVEN_MITHRIL_COAT || (otmp)->otyp == ELVEN_CLOAK \
+     || (otmp)->otyp == ELVEN_SHIELD || (otmp)->otyp == ELVEN_BOOTS)
+#define is_orcish_armor(otmp)                                            \
+    ((otmp)->otyp == ORCISH_HELM || (otmp)->otyp == ORCISH_CHAIN_MAIL    \
+     || (otmp)->otyp == ORCISH_RING_MAIL || (otmp)->otyp == ORCISH_CLOAK \
+     || (otmp)->otyp == URUK_HAI_SHIELD || (otmp)->otyp == ORCISH_SHIELD)
+#define is_dwarvish_armor(otmp)               \
+    ((otmp)->otyp == DWARVISH_IRON_HELM       \
+     || (otmp)->otyp == DWARVISH_MITHRIL_COAT \
+     || (otmp)->otyp == DWARVISH_CLOAK        \
+     || (otmp)->otyp == DWARVISH_ROUNDSHIELD)
+#define is_gnomish_armor(otmp) (FALSE)
+
 /* Eggs and other food */
-#define MAX_EGG_HATCH_TIME 200 /* longest an egg can remain unhatched */
-#define stale_egg(egg) ((monstermoves - (egg)->age) > (2*MAX_EGG_HATCH_TIME))
+#define MAX_EGG_HATCH_TIME 200 /* longest an egg can remain unhatched */
+#define stale_egg(egg) \
+    ((monstermoves - (egg)->age) > (2 * MAX_EGG_HATCH_TIME))
 #define ofood(o) ((o)->otyp == CORPSE || (o)->otyp == EGG || (o)->otyp == TIN)
 #define polyfodder(obj) (ofood(obj) && pm_to_cham((obj)->corpsenm) != NON_PM)
 #define mlevelgain(obj) (ofood(obj) && (obj)->corpsenm == PM_WRAITH)
-#define mhealup(obj)   (ofood(obj) && (obj)->corpsenm == PM_NURSE)
-#define Is_pudding(o) (o->otyp == GLOB_OF_GRAY_OOZE \
-                        || o->otyp == GLOB_OF_BROWN_PUDDING \
-                        || o->otyp == GLOB_OF_GREEN_SLIME \
-                        || o->otyp == GLOB_OF_BLACK_PUDDING)
-                        
+#define mhealup(obj) (ofood(obj) && (obj)->corpsenm == PM_NURSE)
+#define Is_pudding(o)                                                 \
+    (o->otyp == GLOB_OF_GRAY_OOZE || o->otyp == GLOB_OF_BROWN_PUDDING \
+     || o->otyp == GLOB_OF_GREEN_SLIME || o->otyp == GLOB_OF_BLACK_PUDDING)
 
 /* Containers */
-#define carried(o)     ((o)->where == OBJ_INVENT)
-#define mcarried(o)    ((o)->where == OBJ_MINVENT)
-#define Has_contents(o) (/* (Is_container(o) || (o)->otyp == STATUE) && */ \
-                        (o)->cobj != (struct obj *)0)
+#define carried(o) ((o)->where == OBJ_INVENT)
+#define mcarried(o) ((o)->where == OBJ_MINVENT)
+#define Has_contents(o)                                \
+    (/* (Is_container(o) || (o)->otyp == STATUE) && */ \
+     (o)->cobj != (struct obj *) 0)
 #define Is_container(o) ((o)->otyp >= LARGE_BOX && (o)->otyp <= BAG_OF_TRICKS)
-#define Is_box(otmp)   (otmp->otyp == LARGE_BOX || otmp->otyp == CHEST)
-#define Is_mbag(otmp)  (otmp->otyp == BAG_OF_HOLDING || \
-                        otmp->otyp == BAG_OF_TRICKS)
-#define SchroedingersBox(o)    ((o)->otyp == LARGE_BOX && (o)->spe == 1)
+#define Is_box(otmp) (otmp->otyp == LARGE_BOX || otmp->otyp == CHEST)
+#define Is_mbag(otmp) \
+    (otmp->otyp == BAG_OF_HOLDING || otmp->otyp == BAG_OF_TRICKS)
+#define SchroedingersBox(o) ((o)->otyp == LARGE_BOX && (o)->spe == 1)
 
 /* dragon gear */
-#define Is_dragon_scales(obj)  ((obj)->otyp >= GRAY_DRAGON_SCALES && \
-                                (obj)->otyp <= YELLOW_DRAGON_SCALES)
-#define Is_dragon_mail(obj)    ((obj)->otyp >= GRAY_DRAGON_SCALE_MAIL && \
-                                (obj)->otyp <= YELLOW_DRAGON_SCALE_MAIL)
-#define Is_dragon_armor(obj)   (Is_dragon_scales(obj) || Is_dragon_mail(obj))
-#define Dragon_scales_to_pm(obj) &mons[PM_GRAY_DRAGON + (obj)->otyp \
-                                      - GRAY_DRAGON_SCALES]
-#define Dragon_mail_to_pm(obj) &mons[PM_GRAY_DRAGON + (obj)->otyp \
-                                     - GRAY_DRAGON_SCALE_MAIL]
-#define Dragon_to_scales(pm)   (GRAY_DRAGON_SCALES + (pm - mons))
+#define Is_dragon_scales(obj) \
+    ((obj)->otyp >= GRAY_DRAGON_SCALES && (obj)->otyp <= YELLOW_DRAGON_SCALES)
+#define Is_dragon_mail(obj)                \
+    ((obj)->otyp >= GRAY_DRAGON_SCALE_MAIL \
+     && (obj)->otyp <= YELLOW_DRAGON_SCALE_MAIL)
+#define Is_dragon_armor(obj) (Is_dragon_scales(obj) || Is_dragon_mail(obj))
+#define Dragon_scales_to_pm(obj) \
+    &mons[PM_GRAY_DRAGON + (obj)->otyp - GRAY_DRAGON_SCALES]
+#define Dragon_mail_to_pm(obj) \
+    &mons[PM_GRAY_DRAGON + (obj)->otyp - GRAY_DRAGON_SCALE_MAIL]
+#define Dragon_to_scales(pm) (GRAY_DRAGON_SCALES + (pm - mons))
 
 /* Elven gear */
-#define is_elven_weapon(otmp)  ((otmp)->otyp == ELVEN_ARROW\
-                               || (otmp)->otyp == ELVEN_SPEAR\
-                               || (otmp)->otyp == ELVEN_DAGGER\
-                               || (otmp)->otyp == ELVEN_SHORT_SWORD\
-                               || (otmp)->otyp == ELVEN_BROADSWORD\
-                               || (otmp)->otyp == ELVEN_BOW)
-#define is_elven_obj(otmp)     (is_elven_armor(otmp) || is_elven_weapon(otmp))
+#define is_elven_weapon(otmp)                                             \
+    ((otmp)->otyp == ELVEN_ARROW || (otmp)->otyp == ELVEN_SPEAR           \
+     || (otmp)->otyp == ELVEN_DAGGER || (otmp)->otyp == ELVEN_SHORT_SWORD \
+     || (otmp)->otyp == ELVEN_BROADSWORD || (otmp)->otyp == ELVEN_BOW)
+#define is_elven_obj(otmp) (is_elven_armor(otmp) || is_elven_weapon(otmp))
 
 /* Orcish gear */
-#define is_orcish_obj(otmp)    (is_orcish_armor(otmp)\
-                               || (otmp)->otyp == ORCISH_ARROW\
-                               || (otmp)->otyp == ORCISH_SPEAR\
-                               || (otmp)->otyp == ORCISH_DAGGER\
-                               || (otmp)->otyp == ORCISH_SHORT_SWORD\
-                               || (otmp)->otyp == ORCISH_BOW)
+#define is_orcish_obj(otmp)                                           \
+    (is_orcish_armor(otmp) || (otmp)->otyp == ORCISH_ARROW            \
+     || (otmp)->otyp == ORCISH_SPEAR || (otmp)->otyp == ORCISH_DAGGER \
+     || (otmp)->otyp == ORCISH_SHORT_SWORD || (otmp)->otyp == ORCISH_BOW)
 
 /* Dwarvish gear */
-#define is_dwarvish_obj(otmp)  (is_dwarvish_armor(otmp)\
-                               || (otmp)->otyp == DWARVISH_SPEAR\
-                               || (otmp)->otyp == DWARVISH_SHORT_SWORD\
-                               || (otmp)->otyp == DWARVISH_MATTOCK)
+#define is_dwarvish_obj(otmp)                                  \
+    (is_dwarvish_armor(otmp) || (otmp)->otyp == DWARVISH_SPEAR \
+     || (otmp)->otyp == DWARVISH_SHORT_SWORD                   \
+     || (otmp)->otyp == DWARVISH_MATTOCK)
 
 /* Gnomish gear */
-#define is_gnomish_obj(otmp)   (is_gnomish_armor(otmp))
+#define is_gnomish_obj(otmp) (is_gnomish_armor(otmp))
 
 /* Light sources */
-#define Is_candle(otmp) (otmp->otyp == TALLOW_CANDLE || \
-                        otmp->otyp == WAX_CANDLE)
-#define MAX_OIL_IN_FLASK 400   /* maximum amount of oil in a potion of oil */
+#define Is_candle(otmp) \
+    (otmp->otyp == TALLOW_CANDLE || otmp->otyp == WAX_CANDLE)
+#define MAX_OIL_IN_FLASK 400 /* maximum amount of oil in a potion of oil */
 
 /* MAGIC_LAMP intentionally excluded below */
 /* age field of this is relative age rather than absolute */
-#define age_is_relative(otmp)  ((otmp)->otyp == BRASS_LANTERN\
-                               || (otmp)->otyp == OIL_LAMP\
-                               || (otmp)->otyp == CANDELABRUM_OF_INVOCATION\
-                               || (otmp)->otyp == TALLOW_CANDLE\
-                               || (otmp)->otyp == WAX_CANDLE\
-                               || (otmp)->otyp == POT_OIL)
+#define age_is_relative(otmp)                                       \
+    ((otmp)->otyp == BRASS_LANTERN || (otmp)->otyp == OIL_LAMP      \
+     || (otmp)->otyp == CANDELABRUM_OF_INVOCATION                   \
+     || (otmp)->otyp == TALLOW_CANDLE || (otmp)->otyp == WAX_CANDLE \
+     || (otmp)->otyp == POT_OIL)
 /* object can be ignited */
-#define ignitable(otmp)        ((otmp)->otyp == BRASS_LANTERN\
-                               || (otmp)->otyp == OIL_LAMP\
-                               || (otmp)->otyp == CANDELABRUM_OF_INVOCATION\
-                               || (otmp)->otyp == TALLOW_CANDLE\
-                               || (otmp)->otyp == WAX_CANDLE\
-                               || (otmp)->otyp == POT_OIL)
+#define ignitable(otmp)                                             \
+    ((otmp)->otyp == BRASS_LANTERN || (otmp)->otyp == OIL_LAMP      \
+     || (otmp)->otyp == CANDELABRUM_OF_INVOCATION                   \
+     || (otmp)->otyp == TALLOW_CANDLE || (otmp)->otyp == WAX_CANDLE \
+     || (otmp)->otyp == POT_OIL)
 
 /* things that can be read */
-#define is_readable(otmp) ((otmp)->otyp == FORTUNE_COOKIE\
-                          || (otmp)->otyp == T_SHIRT\
-                          || (otmp)->otyp == ALCHEMY_SMOCK\
-                          || (otmp)->otyp == CREDIT_CARD\
-                          || (otmp)->otyp == CAN_OF_GREASE\
-                          || (otmp)->otyp == MAGIC_MARKER\
-                          || (otmp)->oclass == COIN_CLASS\
-                          || (otmp)->oartifact == ART_ORB_OF_FATE\
-                          || (otmp)->otyp == CANDY_BAR)
+#define is_readable(otmp)                                                    \
+    ((otmp)->otyp == FORTUNE_COOKIE || (otmp)->otyp == T_SHIRT               \
+     || (otmp)->otyp == ALCHEMY_SMOCK || (otmp)->otyp == CREDIT_CARD         \
+     || (otmp)->otyp == CAN_OF_GREASE || (otmp)->otyp == MAGIC_MARKER        \
+     || (otmp)->oclass == COIN_CLASS || (otmp)->oartifact == ART_ORB_OF_FATE \
+     || (otmp)->otyp == CANDY_BAR)
 
 /* special stones */
-#define is_graystone(obj)      ((obj)->otyp == LUCKSTONE || \
-                                (obj)->otyp == LOADSTONE || \
-                                (obj)->otyp == FLINT     || \
-                                (obj)->otyp == TOUCHSTONE)
+#define is_graystone(obj)                                 \
+    ((obj)->otyp == LUCKSTONE || (obj)->otyp == LOADSTONE \
+     || (obj)->otyp == FLINT || (obj)->otyp == TOUCHSTONE)
 
 /* misc */
-#define is_flimsy(otmp)                (objects[(otmp)->otyp].oc_material <= LEATHER || \
-                                (otmp)->otyp == RUBBER_HOSE)
+#define is_flimsy(otmp)                           \
+    (objects[(otmp)->otyp].oc_material <= LEATHER \
+     || (otmp)->otyp == RUBBER_HOSE)
 
 /* helpers, simple enough to be macros */
-#define is_plural(o)   ((o)->quan > 1 || \
-                        (o)->oartifact == ART_EYES_OF_THE_OVERWORLD)
+#define is_plural(o) \
+    ((o)->quan > 1 || (o)->oartifact == ART_EYES_OF_THE_OVERWORLD)
 
 /* Flags for get_obj_location(). */
-#define CONTAINED_TOO  0x1
-#define BURIED_TOO     0x2
+#define CONTAINED_TOO 0x1
+#define BURIED_TOO 0x2
 
 /* object erosion types */
 #define ERODE_BURN 0
@@ -345,37 +347,40 @@ struct obj {
 #define ERODE_CORRODE 3
 
 /* erosion flags for erode_obj() */
-#define EF_NONE    0
-#define EF_GREASE  0x1 /* check for a greased object */
+#define EF_NONE 0
+#define EF_GREASE 0x1  /* check for a greased object */
 #define EF_DESTROY 0x2 /* potentially destroy the object */
 #define EF_VERBOSE 0x4 /* print extra messages */
-#define EF_PAY     0x8 /* it's the player's fault */
+#define EF_PAY 0x8     /* it's the player's fault */
 
 /* erosion return values for erode_obj(), water_damage() */
-#define ER_NOTHING   0 /* nothing happened */
-#define ER_GREASED   1 /* protected by grease */
-#define ER_DAMAGED   2 /* object was damaged in some way */
+#define ER_NOTHING 0   /* nothing happened */
+#define ER_GREASED 1   /* protected by grease */
+#define ER_DAMAGED 2   /* object was damaged in some way */
 #define ER_DESTROYED 3 /* object was destroyed */
 
 /*
  *  Notes for adding new oextra structures:
  *
- *      1. Add the structure definition and any required macros in an appropriate
+ *      1. Add the structure definition and any required macros in an
+ *appropriate
  *         header file that precedes this one.
- *      2. Add a pointer to your new struct to the oextra struct in this file.
+ *      2. Add a pointer to your new struct to the oextra struct in this
+ *file.
  *      3. Add a referencing macro to this file after the newobj macro above
  *         (see ONAME, OMONST, OMIN, OLONG, or OMAILCMD for examples).
  *      4. Add a testing macro after the set of referencing macros
  *         (see has_oname(), has_omonst(), has_omin(), has_olong(),
  *         has_omailcmd() for examples).
- *      5. Create a newXX(otmp) function and possibly a free_XX(otmp) function
+ *      5. Create a newXX(otmp) function and possibly a free_XX(otmp)
+ *function
  *         in an appropriate new or existing source file and add a prototype
  *         for it to include/extern.h.  The majority of these are currently
  *         located in mkobj.c for convenience.
  *
  *             void FDECL(newXX, (struct obj *));
  *             void FDECL(free_XX, (struct obj *));
- *     
+ *
  *               void
  *               newxx(otmp)
  *               struct obj *otmp;
@@ -387,7 +392,7 @@ struct obj {
  *                                  0, sizeof(struct xx));
  *                   }
  *               }
- *     
+ *
  *      6. Adjust size_obj() in src/cmd.c appropriately.
  *      7. Adjust dealloc_oextra() in src/mkobj.c to clean up
  *         properly during obj deallocation.
index 803220e537bf13c10bd18d1f9a8b01aa89f817de..2eba2542e129ee36d96b112fcced8db701f8508a 100644 (file)
 /* definition of a class of objects */
 
 struct objclass {
-       short   oc_name_idx;            /* index of actual name */
-       short   oc_descr_idx;           /* description when name unknown */
-       char *  oc_uname;               /* called by user */
-       Bitfield(oc_name_known,1);
-       Bitfield(oc_merge,1);   /* merge otherwise equal objects */
-       Bitfield(oc_uses_known,1); /* obj->known affects full decription */
-                               /* otherwise, obj->dknown and obj->bknown */
-                               /* tell all, and obj->known should always */
-                               /* be set for proper merging behavior */
-       Bitfield(oc_pre_discovered,1);  /* Already known at start of game; */
-                                       /* won't be listed as a discovery. */
-       Bitfield(oc_magic,1);   /* inherently magical object */
-       Bitfield(oc_charged,1); /* may have +n or (n) charges */
-       Bitfield(oc_unique,1);  /* special one-of-a-kind object */
-       Bitfield(oc_nowish,1);  /* cannot wish for this object */
-
-       Bitfield(oc_big,1);
-#define oc_bimanual    oc_big  /* for weapons & tools used as weapons */
-#define oc_bulky       oc_big  /* for armor */
-       Bitfield(oc_tough,1);   /* hard gems/rings */
-
-       Bitfield(oc_dir,2);
-#define NODIR          1       /* for wands/spells: non-directional */
-#define IMMEDIATE      2       /*                   directional */
-#define RAY            3       /*                   zap beams */
-
-#define PIERCE         1       /* for weapons & tools used as weapons */
-#define SLASH          2       /* (latter includes iron ball & chain) */
-#define WHACK          0
-
-       /*Bitfield(oc_subtyp,3);*/      /* Now too big for a bitfield... see below */
-
-       Bitfield(oc_material,5);
-#define LIQUID         1       /* currently only for venom */
-#define WAX            2
-#define VEGGY          3       /* foodstuffs */
-#define FLESH          4       /*   ditto    */
-#define PAPER          5
-#define CLOTH          6
-#define LEATHER                7
-#define WOOD           8
-#define BONE           9
-#define DRAGON_HIDE    10      /* not leather! */
-#define IRON           11      /* Fe - includes steel */
-#define METAL          12      /* Sn, &c. */
-#define COPPER         13      /* Cu - includes brass */
-#define SILVER         14      /* Ag */
-#define GOLD           15      /* Au */
-#define PLATINUM       16      /* Pt */
-#define MITHRIL                17
-#define PLASTIC                18
-#define GLASS          19
-#define GEMSTONE       20
-#define MINERAL                21
-
-#define is_organic(otmp)       (objects[otmp->otyp].oc_material <= WOOD)
-#define is_metallic(otmp)      (objects[otmp->otyp].oc_material >= IRON && \
-                                objects[otmp->otyp].oc_material <= MITHRIL)
+    short oc_name_idx;  /* index of actual name */
+    short oc_descr_idx; /* description when name unknown */
+    char *oc_uname;     /* called by user */
+    Bitfield(oc_name_known, 1);
+    Bitfield(oc_merge, 1);      /* merge otherwise equal objects */
+    Bitfield(oc_uses_known, 1); /* obj->known affects full decription */
+                                /* otherwise, obj->dknown and obj->bknown */
+                                /* tell all, and obj->known should always */
+                                /* be set for proper merging behavior */
+    Bitfield(oc_pre_discovered, 1); /* Already known at start of game; */
+    /* won't be listed as a discovery. */
+    Bitfield(oc_magic, 1);   /* inherently magical object */
+    Bitfield(oc_charged, 1); /* may have +n or (n) charges */
+    Bitfield(oc_unique, 1);  /* special one-of-a-kind object */
+    Bitfield(oc_nowish, 1);  /* cannot wish for this object */
+
+    Bitfield(oc_big, 1);
+#define oc_bimanual oc_big /* for weapons & tools used as weapons */
+#define oc_bulky oc_big    /* for armor */
+    Bitfield(oc_tough, 1); /* hard gems/rings */
+
+    Bitfield(oc_dir, 2);
+#define NODIR 1     /* for wands/spells: non-directional */
+#define IMMEDIATE 2 /*              directional */
+#define RAY 3       /*              zap beams */
+
+#define PIERCE 1 /* for weapons & tools used as weapons */
+#define SLASH 2  /* (latter includes iron ball & chain) */
+#define WHACK 0
+
+    /*Bitfield(oc_subtyp,3);*/ /* Now too big for a bitfield... see below */
+
+    Bitfield(oc_material, 5);
+#define LIQUID 1 /* currently only for venom */
+#define WAX 2
+#define VEGGY 3 /* foodstuffs */
+#define FLESH 4 /*   ditto    */
+#define PAPER 5
+#define CLOTH 6
+#define LEATHER 7
+#define WOOD 8
+#define BONE 9
+#define DRAGON_HIDE 10 /* not leather! */
+#define IRON 11        /* Fe - includes steel */
+#define METAL 12       /* Sn, &c. */
+#define COPPER 13      /* Cu - includes brass */
+#define SILVER 14      /* Ag */
+#define GOLD 15        /* Au */
+#define PLATINUM 16    /* Pt */
+#define MITHRIL 17
+#define PLASTIC 18
+#define GLASS 19
+#define GEMSTONE 20
+#define MINERAL 21
+
+#define is_organic(otmp) (objects[otmp->otyp].oc_material <= WOOD)
+#define is_metallic(otmp)                    \
+    (objects[otmp->otyp].oc_material >= IRON \
+     && objects[otmp->otyp].oc_material <= MITHRIL)
 
 /* primary damage: fire/rust/--- */
 /* is_flammable(otmp), is_rottable(otmp) in mkobj.c */
-#define is_rustprone(otmp)     (objects[otmp->otyp].oc_material == IRON)
+#define is_rustprone(otmp) (objects[otmp->otyp].oc_material == IRON)
 
 /* secondary damage: rot/acid/acid */
-#define is_corrodeable(otmp)   (objects[otmp->otyp].oc_material == COPPER || objects[otmp->otyp].oc_material == IRON)
-
-#define is_damageable(otmp) (is_rustprone(otmp) || is_flammable(otmp) || \
-                               is_rottable(otmp) || is_corrodeable(otmp))
-
-       schar   oc_subtyp;
-#define oc_skill       oc_subtyp   /* Skills of weapons, spellbooks, tools, gems */
-#define oc_armcat      oc_subtyp   /* for armor */
-#define ARM_SHIELD     1       /* needed for special wear function */
-#define ARM_HELM       2
-#define ARM_GLOVES     3
-#define ARM_BOOTS      4
-#define ARM_CLOAK      5
-#define ARM_SHIRT      6
-#define ARM_SUIT       0
-
-       uchar   oc_oprop;               /* property (invis, &c.) conveyed */
-       char    oc_class;               /* object class */
-       schar   oc_delay;               /* delay when using such an object */
-       uchar   oc_color;               /* color of the object */
-
-       short   oc_prob;                /* probability, used in mkobj() */
-       unsigned short  oc_weight;      /* encumbrance (1 cn = 0.1 lb.) */
-       short   oc_cost;                /* base cost in shops */
-/* Check the AD&D rules!  The FIRST is small monster damage. */
-/* for weapons, and tools, rocks, and gems useful as weapons */
-       schar   oc_wsdam, oc_wldam;     /* max small/large monster damage */
-       schar   oc_oc1, oc_oc2;
-#define oc_hitbon      oc_oc1          /* weapons: "to hit" bonus */
-
-#define a_ac           oc_oc1  /* armor class, used in ARM_BONUS in do.c */
-#define a_can          oc_oc2          /* armor: used in mhitu.c */
-#define oc_level       oc_oc2          /* books: spell level */
-
-       unsigned short  oc_nutrition;   /* food value */
+#define is_corrodeable(otmp)                   \
+    (objects[otmp->otyp].oc_material == COPPER \
+     || objects[otmp->otyp].oc_material == IRON)
+
+#define is_damageable(otmp)                                        \
+    (is_rustprone(otmp) || is_flammable(otmp) || is_rottable(otmp) \
+     || is_corrodeable(otmp))
+
+    schar oc_subtyp;
+#define oc_skill oc_subtyp  /* Skills of weapons, spellbooks, tools, gems */
+#define oc_armcat oc_subtyp /* for armor */
+#define ARM_SHIELD 1        /* needed for special wear function */
+#define ARM_HELM 2
+#define ARM_GLOVES 3
+#define ARM_BOOTS 4
+#define ARM_CLOAK 5
+#define ARM_SHIRT 6
+#define ARM_SUIT 0
+
+    uchar oc_oprop; /* property (invis, &c.) conveyed */
+    char oc_class;  /* object class */
+    schar oc_delay; /* delay when using such an object */
+    uchar oc_color; /* color of the object */
+
+    short oc_prob;            /* probability, used in mkobj() */
+    unsigned short oc_weight; /* encumbrance (1 cn = 0.1 lb.) */
+    short oc_cost;            /* base cost in shops */
+    /* Check the AD&D rules!  The FIRST is small monster damage. */
+    /* for weapons, and tools, rocks, and gems useful as weapons */
+    schar oc_wsdam, oc_wldam; /* max small/large monster damage */
+    schar oc_oc1, oc_oc2;
+#define oc_hitbon oc_oc1 /* weapons: "to hit" bonus */
+
+#define a_ac oc_oc1     /* armor class, used in ARM_BONUS in do.c */
+#define a_can oc_oc2    /* armor: used in mhitu.c */
+#define oc_level oc_oc2 /* books: spell level */
+
+    unsigned short oc_nutrition; /* food value */
 };
 
 struct class_sym {
-       char sym;
-       const char *name;
-       const char *explain;
+    char sym;
+    const char *name;
+    const char *explain;
 };
 
 struct objdescr {
-       const char *oc_name;            /* actual name */
-       const char *oc_descr;           /* description when name unknown */
+    const char *oc_name;  /* actual name */
+    const char *oc_descr; /* description when name unknown */
 };
 
 extern NEARDATA struct objclass objects[];
@@ -129,66 +133,67 @@ extern NEARDATA struct objdescr obj_descr[];
  * All objects have a class. Make sure that all classes have a corresponding
  * symbol below.
  */
-#define RANDOM_CLASS    0      /* used for generating random objects */
-#define ILLOBJ_CLASS    1
-#define WEAPON_CLASS    2
-#define ARMOR_CLASS     3
-#define RING_CLASS      4
-#define AMULET_CLASS    5
-#define TOOL_CLASS      6
-#define FOOD_CLASS      7
-#define POTION_CLASS    8
-#define SCROLL_CLASS    9
-#define SPBOOK_CLASS   10      /* actually SPELL-book */
-#define WAND_CLASS     11
-#define COIN_CLASS     12
-#define GEM_CLASS      13
-#define ROCK_CLASS     14
-#define BALL_CLASS     15
-#define CHAIN_CLASS    16
-#define VENOM_CLASS    17
-#define MAXOCLASSES    18
-
-#define ALLOW_COUNT    (MAXOCLASSES+1) /* Can be used in the object class */
-#define ALL_CLASSES    (MAXOCLASSES+2) /* input to getobj().              */
-#define ALLOW_NONE     (MAXOCLASSES+3) /*                                 */
-
-#define BURNING_OIL    (MAXOCLASSES+1) /* Can be used as input to explode. */
-#define MON_EXPLODE    (MAXOCLASSES+2) /* Exploding monster (e.g. gas spore) */
-
-#if 0  /* moved to decl.h so that makedefs.c won't see them */
+#define RANDOM_CLASS 0 /* used for generating random objects */
+#define ILLOBJ_CLASS 1
+#define WEAPON_CLASS 2
+#define ARMOR_CLASS 3
+#define RING_CLASS 4
+#define AMULET_CLASS 5
+#define TOOL_CLASS 6
+#define FOOD_CLASS 7
+#define POTION_CLASS 8
+#define SCROLL_CLASS 9
+#define SPBOOK_CLASS 10 /* actually SPELL-book */
+#define WAND_CLASS 11
+#define COIN_CLASS 12
+#define GEM_CLASS 13
+#define ROCK_CLASS 14
+#define BALL_CLASS 15
+#define CHAIN_CLASS 16
+#define VENOM_CLASS 17
+#define MAXOCLASSES 18
+
+#define ALLOW_COUNT (MAXOCLASSES + 1) /* Can be used in the object class */
+#define ALL_CLASSES (MAXOCLASSES + 2) /* input to getobj(). */
+#define ALLOW_NONE (MAXOCLASSES + 3) /*                                   */
+
+#define BURNING_OIL (MAXOCLASSES + 1) /* Can be used as input to explode. */
+#define MON_EXPLODE (MAXOCLASSES + 2) /* Exploding monster (e.g. gas spore) \
+                                         */
+
+#if 0 /* moved to decl.h so that makedefs.c won't see them */
 extern const struct class_sym def_oc_syms[MAXOCLASSES];        /* default class symbols */
 extern uchar oc_syms[MAXOCLASSES];             /* current class symbols */
 #endif
 
 /* Default definitions of all object-symbols (must match classes above). */
 
-#define ILLOBJ_SYM     ']'     /* also used for mimics */
-#define WEAPON_SYM     ')'
-#define ARMOR_SYM      '['
-#define RING_SYM       '='
-#define AMULET_SYM     '"'
-#define TOOL_SYM       '('
-#define FOOD_SYM       '%'
-#define POTION_SYM     '!'
-#define SCROLL_SYM     '?'
-#define SPBOOK_SYM     '+'
-#define WAND_SYM       '/'
-#define GOLD_SYM       '$'
-#define GEM_SYM                '*'
-#define ROCK_SYM       '`'
-#define BALL_SYM       '0'
-#define CHAIN_SYM      '_'
-#define VENOM_SYM      '.'
+#define ILLOBJ_SYM ']' /* also used for mimics */
+#define WEAPON_SYM ')'
+#define ARMOR_SYM '['
+#define RING_SYM '='
+#define AMULET_SYM '"'
+#define TOOL_SYM '('
+#define FOOD_SYM '%'
+#define POTION_SYM '!'
+#define SCROLL_SYM '?'
+#define SPBOOK_SYM '+'
+#define WAND_SYM '/'
+#define GOLD_SYM '$'
+#define GEM_SYM '*'
+#define ROCK_SYM '`'
+#define BALL_SYM '0'
+#define CHAIN_SYM '_'
+#define VENOM_SYM '.'
 
 struct fruit {
-       char fname[PL_FSIZ];
-       int fid;
-       struct fruit *nextf;
+    char fname[PL_FSIZ];
+    int fid;
+    struct fruit *nextf;
 };
-#define newfruit() (struct fruit *)alloc(sizeof(struct fruit))
-#define dealloc_fruit(rind) free((genericptr_t) (rind))
+#define newfruit() (struct fruit *) alloc(sizeof(struct fruit))
+#define dealloc_fruit(rind) free((genericptr_t)(rind))
 
-#define OBJ_NAME(obj)  (obj_descr[(obj).oc_name_idx].oc_name)
+#define OBJ_NAME(obj) (obj_descr[(obj).oc_name_idx].oc_name)
 #define OBJ_DESCR(obj) (obj_descr[(obj).oc_descr_idx].oc_descr)
 #endif /* OBJCLASS_H */
index 24165af1eceb0ade8af396235ed4f7dbfcfc67ff..2e7feac3f99abbd5a59aab38902bfe2fe016340d 100644 (file)
  */
 
 /* #define OS2_MSC             /* Microsoft C 5.1 and 6.0 */
-#define OS2_GCC                /* GCC emx 0.8f */
-/* #define OS2_CSET2           /* IBM C Set/2 (courtesy Jeff Urlwin) */
-/* #define OS2_CSET2_VER_1     /* CSet/2 version selection */
-/* #define OS2_CSET2_VER_2     /* - " - */
+#define OS2_GCC /* GCC emx 0.8f */
+                /* #define OS2_CSET2           /* IBM C Set/2 (courtesy Jeff Urlwin) */
+                /* #define OS2_CSET2_VER_1     /* CSet/2 version selection */
+                /* #define OS2_CSET2_VER_2     /* - " - */
 
 /*
  * System configuration.
  */
 
-#define OS2_USESYSHEADERS      /* use compiler's own system headers */
+#define OS2_USESYSHEADERS /* use compiler's own system headers */
 /* #define OS2_HPFS            /* use OS/2 High Performance File System */
 
 #if defined(OS2_GCC) || defined(OS2_CSET2)
-# define OS2_32BITAPI          /* enable for compilation in OS/2 2.0 */
+#define OS2_32BITAPI /* enable for compilation in OS/2 2.0 */
 #endif
 
 /*
  */
 
 /*#define MFLOPPY                      /* floppy and ramdisk support */
-#define RANDOM                 /* Berkeley random(3) */
-#define SHELL                  /* shell escape */
+#define RANDOM /* Berkeley random(3) */
+#define SHELL  /* shell escape */
 /* #define TERMLIB             /* use termcap file */
-#define ANSI_DEFAULT           /* allows NetHack to run without termcap file */
-#define TEXTCOLOR              /* allow color */
+#define ANSI_DEFAULT /* allows NetHack to run without termcap file */
+#define TEXTCOLOR    /* allow color */
 
 /*
  * The remaining code shouldn't need modification.
  */
 
 #ifdef MSDOS
-# undef MSDOS                  /* MSC autodefines this but we don't want it */
+#undef MSDOS /* MSC autodefines this but we don't want it */
 #endif
 
 #ifndef MICRO
-# define MICRO                 /* must be defined to allow some inclusions */
+#define MICRO /* must be defined to allow some inclusions */
 #endif
 
 #if !defined(TERMLIB) && !defined(ANSI_DEFAULT)
-# define ANSI_DEFAULT  /* have to have one or the other */
+#define ANSI_DEFAULT /* have to have one or the other */
 #endif
 
-#define PATHLEN        260     /* maximum pathlength (HPFS) */
-#define FILENAME       260     /* maximum filename length (HPFS) */
+#define PATHLEN 260  /* maximum pathlength (HPFS) */
+#define FILENAME 260 /* maximum filename length (HPFS) */
 #ifndef MICRO_H
-#include "micro.h"             /* necessary externs for [os_name].c */
+#include "micro.h" /* necessary externs for [os_name].c */
 #endif
 
 #ifndef SYSTEM_H
 #endif
 
 #ifndef index
-#define index  strchr
+#define index strchr
 #endif
 #ifndef rindex
-#define rindex strrchr
+#define rindex strrchr
 #endif
 
 #include <time.h>
@@ -81,9 +81,9 @@
 /* the high quality random number routines */
 
 #ifdef RANDOM
-# define Rand()        random()
+#define Rand() random()
 #else
-# define Rand()        rand()
+#define Rand() rand()
 #endif
 
 /* file creation mask */
 #include <sys\types.h>
 #include <sys\stat.h>
 
-#define FCMASK (S_IREAD | S_IWRITE)
+#define FCMASK (S_IREAD | S_IWRITE)
 
 #include <fcntl.h>
 
 #ifdef __EMX__
 #include <unistd.h>
-#define sethanguphandler(foo) (void)signal(SIGHUP, (SIG_RET_TYPE)foo)
+#define sethanguphandler(foo) (void) signal(SIGHUP, (SIG_RET_TYPE) foo)
 #endif
 
 void hangup(int i);
index fb39c2a1eb3562474baf7634e2b4612026bfb983..0913f300f494bc56e751a0313562fc5e10c234c8 100644 (file)
@@ -4,25 +4,23 @@
 /* NetHack may be freely redistributed.  See license for details. */
 
 /* NetHack 3.6.0 */
-#define VERSION_MAJOR  3
-#define VERSION_MINOR  6
+#define VERSION_MAJOR 3
+#define VERSION_MINOR 6
 /*
  * PATCHLEVEL is updated for each release.
  */
-#define PATCHLEVEL     0
+#define PATCHLEVEL 0
 /*
  * Incrementing EDITLEVEL can be used to force invalidation of old bones
  * and save files.
  */
-#define EDITLEVEL      0
+#define EDITLEVEL 0
 
-#define COPYRIGHT_BANNER_A \
-"NetHack, Copyright 1985-2015"
+#define COPYRIGHT_BANNER_A "NetHack, Copyright 1985-2015"
 #define COPYRIGHT_BANNER_B \
-"         By Stichting Mathematisch Centrum and M. Stephenson."
-         /* COPYRIGHT_BANNER_C is generated by makedefs into date.h */
-#define COPYRIGHT_BANNER_D \
-"         See license for details."
+    "         By Stichting Mathematisch Centrum and M. Stephenson."
+/* COPYRIGHT_BANNER_C is generated by makedefs into date.h */
+#define COPYRIGHT_BANNER_D "         See license for details."
 
 /*
  * If two or more successive releases have compatible data files, define
@@ -35,7 +33,6 @@
  */
 /* #define VERSION_COMPATIBILITY 0x03050000L */
 
-
 /*****************************************************************************/
 /* Version 3.6.x */
 
@@ -44,7 +41,6 @@
  *
  */
 
-
 /*****************************************************************************/
 /* Version 3.4.x */
 
 /*
  *  NetHack 3.4.0, March 20, 2002
  *
- *  Hundreds of general bug fixes including some for sliming, zapping, conduct,
+ *  Hundreds of general bug fixes including some for sliming, zapping,
+ *conduct,
  *     and several more for riding
  *  Eliminated a few potentially fatal bugs including one for stone-to-flesh,
  *     trouble-fixing during prayer, riding down stairs while punished,
  *     polyd player demon summoning, throwing digging tools into shops, and
- *     a couple from having the vision system enabled at inappropriate times 
+ *     a couple from having the vision system enabled at inappropriate times
  *  Corrected some incorrect calculations in final scoring
  *  Enhanced config file processing and alert to duplication of entries
  *  Player selection prompt enhancements for TTY and X11
  *  Patch 5, October 15, 1989
  *  add support for Macintosh OS (courtesy Johnny Lee)
  *  fix annoying dependency loop via new color.h file
- *  allow interruption while eating -- general handling of partially eaten food
+ *  allow interruption while eating -- general handling of partially eaten
+ * food
  *  smarter treatment of iron balls (courtesy Kevin Darcy)
  *  a handful of other bug fixes
  */
index 2f40c44cc7541cc03f3aed6311942645ce57cc8c..f5d57f5649261d7faa4469da9c42faf583fbaacd 100644 (file)
@@ -7,9 +7,9 @@
 #ifndef PCCONF_H
 #define PCCONF_H
 
-#define MICRO          /* always define this! */
+#define MICRO /* always define this! */
 
-#ifdef MSDOS           /* some of this material is MS-DOS specific */
+#ifdef MSDOS /* some of this material is MS-DOS specific */
 
 /*
  *  Automatic Defines:
  *  For pre-V7.0 Microsoft Compilers only, manually define OVERLAY here.
  */
 
-/*#define OVERLAY */   /* Manual overlay definition (MSC 6.0ax only) */
+/*#define OVERLAY */ /* Manual overlay definition (MSC 6.0ax only) */
 
-# ifndef __GO32__
-#define MFLOPPY                /* Support for floppy drives and ramdisks by dgk */
-# endif
+#ifndef __GO32__
+#define MFLOPPY /* Support for floppy drives and ramdisks by dgk */
+#endif
 
-# define SHELL         /* via exec of COMMAND.COM */
+#define SHELL /* via exec of COMMAND.COM */
 
-# ifdef __BORLANDC__
-#define PCMUSIC                /* Music option, enable very basic pc speaker music notes */
-# endif
+#ifdef __BORLANDC__
+#define PCMUSIC /* Music option, enable very basic pc speaker music notes */
+#endif
 
 /*
  * Screen control options
  *               or   NO_TERMS
  */
 
-/* # define TERMLIB */    /* enable use of termcap file /etc/termcap */
-                       /* or ./termcap for MSDOS (SAC) */
-                       /* compile and link in Fred Fish's termcap library, */
-                       /* enclosed in TERMCAP.ARC, to use this */
-
-/* # define ANSI_DEFAULT */   /* allows NetHack to run without a ./termcap */
-
-# define NO_TERMS      /* Allows Nethack to run without ansi.sys by linking */
-                       /* screen routines into the .exe     */
+/* # define TERMLIB */ /* enable use of termcap file /etc/termcap */
+                       /* or ./termcap for MSDOS (SAC) */
+                       /* compile and link in Fred Fish's termcap library, */
+                       /* enclosed in TERMCAP.ARC, to use this */
 
-# ifdef NO_TERMS       /* if NO_TERMS select one screen package below */
-#define SCREEN_BIOS            /* Use bios calls for all screen control */
-/* #define SCREEN_DJGPPFAST */ /* Use djgpp fast screen routines       */
-# endif
+/* # define ANSI_DEFAULT */ /* allows NetHack to run without a ./termcap */
 
+#define NO_TERMS /* Allows Nethack to run without ansi.sys by linking */
+                 /* screen routines into the .exe     */
 
-/* # define PC9800 */  /* Allows NetHack to run on NEC PC-9800 machines */
-                       /* Yamamoto Keizo */
+#ifdef NO_TERMS     /* if NO_TERMS select one screen package below */
+#define SCREEN_BIOS /* Use bios calls for all screen control */
+/* #define SCREEN_DJGPPFAST */ /* Use djgpp fast screen routines       */
+#endif
 
+/* # define PC9800 */ /* Allows NetHack to run on NEC PC-9800 machines */
+/* Yamamoto Keizo */
 
 /*
  * PC video hardware support options (for graphical tile support)
  * You may uncomment any/all of the options below.
  *
  */
-# ifndef SUPPRESS_GRAPHICS
-#  if (defined(SCREEN_BIOS) || defined(SCREEN_DJGPPFAST)) && !defined(PC9800)
-#   ifdef USE_TILES
-#define SCREEN_VGA     /* Include VGA    graphics routines in the build */
-#   endif
-#  endif
-# else
-# undef NO_TERMS
-# undef SCREEN_BIOS
-# undef SCREEN_DJGPPFAST
-# undef SCREEN_VGA
-# undef TERMLIB
-# define ANSI_DEFAULT
-# endif
-
-# define RANDOM                /* have Berkeley random(3) */
-
-# define MAIL          /* Allows for fake mail daemon to deliver mail */
-                       /* in the MSDOS version.  (For AMIGA MAIL see  */
-                       /* amiconf.h).  In the future this will be the */
-                       /* hook for mail reader implementation.        */
+#ifndef SUPPRESS_GRAPHICS
+#if (defined(SCREEN_BIOS) || defined(SCREEN_DJGPPFAST)) && !defined(PC9800)
+#ifdef USE_TILES
+#define SCREEN_VGA /* Include VGA        graphics routines in the build */
+#endif
+#endif
+#else
+#undef NO_TERMS
+#undef SCREEN_BIOS
+#undef SCREEN_DJGPPFAST
+#undef SCREEN_VGA
+#undef TERMLIB
+#define ANSI_DEFAULT
+#endif
+
+#define RANDOM /* have Berkeley random(3) */
+
+#define MAIL /* Allows for fake mail daemon to deliver mail */
+             /* in the MSDOS version.  (For AMIGA MAIL see  */
+             /* amiconf.h).    In the future this will be the */
+             /* hook for mail reader implementation.        */
 
 /* The following is needed for prototypes of certain functions */
 
 #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__SC__)
-#include <process.h>   /* Provides prototypes of exit(), spawn()      */
+#include <process.h> /* Provides prototypes of exit(), spawn()      */
 #endif
 
 #if defined(_MSC_VER) && (_MSC_VER >= 7)
 #ifdef strcmpi
 #undef strcmpi
 #endif
-#include <string.h>    /* Provides prototypes of strncmpi(), etc.     */
+#include <string.h> /* Provides prototypes of strncmpi(), etc.     */
 #include <conio.h>
 #include <io.h>
 #include <direct.h>
-# define SIG_RET_TYPE void (__cdecl *)(int)
-#define M(c)           ((char) (0x80 | (c)))
-#define vprintf                printf
-#define vfprintf       fprintf
-#define vsprintf       sprintf
+#define SIG_RET_TYPE void(__cdecl *)(int)
+#define M(c) ((char) (0x80 | (c)))
+#define vprintf printf
+#define vfprintf fprintf
+#define vsprintf sprintf
 #endif
 
 #if defined(__BORLANDC__) && defined(STRNCMPI)
-#include <string.h>    /* Provides prototypes of strncmpi(), etc.     */
+#include <string.h> /* Provides prototypes of strncmpi(), etc.     */
 #endif
 
 #if defined(__DJGPP__)
 #define _NAIVE_DOS_REGS
 #include <stdlib.h>
-#include <string.h>    /* Provides prototypes of strncmpi(), etc.     */
-# ifndef M
-#define M(c)           ((char) (0x80 | (c)))
-# endif
+#include <string.h> /* Provides prototypes of strncmpi(), etc.     */
+#ifndef M
+#define M(c) ((char) (0x80 | (c)))
+#endif
 #endif
 
 /*
  * simply a flag to turn on or off napping for visual effects at run-time.
  */
 
-#define TIMED_DELAY    /* enable the `timed_delay' run-time option */
+#define TIMED_DELAY /* enable the `timed_delay' run-time option */
 
-# ifdef PCMUSIC
-#define TIMED_DELAY    /* need it anyway */
-# endif
-#define NOCWD_ASSUMPTIONS      /* Allow paths to be specified for HACKDIR,
-                                  LEVELDIR, SAVEDIR, BONESDIR, DATADIR,
-                                  SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR. */
+#ifdef PCMUSIC
+#define TIMED_DELAY /* need it anyway */
+#endif
+#define NOCWD_ASSUMPTIONS /* Allow paths to be specified for HACKDIR,      \
+                             LEVELDIR, SAVEDIR, BONESDIR, DATADIR,         \
+                             SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR. \
+                             */
 
 #endif /* MSDOS configuration stuff */
 
-#define PATHLEN                64      /* maximum pathlength */
-#define FILENAME       80      /* maximum filename length (conservative) */
+#define PATHLEN 64  /* maximum pathlength */
+#define FILENAME 80 /* maximum filename length (conservative) */
 #ifndef MICRO_H
-#include "micro.h"             /* contains necessary externs for [os_name].c */
+#include "micro.h" /* contains necessary externs for [os_name].c */
 #endif
 
-
 /* ===================================================
  *  The remaining code shouldn't need modification.
  */
 
 #ifndef SYSTEM_H
-# if !defined(_MSC_VER)
+#if !defined(_MSC_VER)
 #include "system.h"
-# endif
+#endif
 #endif
 
 #ifdef __DJGPP__
 #include <pc.h> /* kbhit() */
 #define PC_LOCKING
 #define HOLD_LOCKFILE_OPEN
-#define SELF_RECOVER           /* NetHack itself can recover games */
+#define SELF_RECOVER /* NetHack itself can recover games */
 #endif
 
-# ifdef MSDOS
-#  ifndef EXEPATH
-#define EXEPATH                /* HACKDIR is .exe location if not explicitly defined */
-#  endif
-# endif
+#ifdef MSDOS
+#ifndef EXEPATH
+#define EXEPATH /* HACKDIR is .exe location if not explicitly defined */
+#endif
+#endif
 
-# if defined(_MSC_VER) && defined(MSDOS)
-#  if (_MSC_VER >= 700) && !defined(FUNCTION_LEVEL_LINKING)
-#   ifndef MOVERLAY
-#define MOVERLAY       /* Microsoft's MOVE overlay system (MSC >= 7.0) */
-#   endif
-#  endif
+#if defined(_MSC_VER) && defined(MSDOS)
+#if (_MSC_VER >= 700) && !defined(FUNCTION_LEVEL_LINKING)
+#ifndef MOVERLAY
+#define MOVERLAY /* Microsoft's MOVE overlay system (MSC >= 7.0) */
+#endif
+#endif
 #define PC_LOCKING
-# endif
+#endif
 
 /* Borland Stuff */
-# if defined(__BORLANDC__)
-#  if defined(__OVERLAY__) && !defined(VROOMM)
-/* __OVERLAY__ is automatically defined by Borland C if overlay option is on */
-#define VROOMM         /* Borland's VROOMM overlay system */
-#  endif
-#  if !defined(STKSIZ)
-#define STKSIZ 5*1024  /* Use a default of 5K stack for Borland C      */
-                       /* This macro is used in any file that contains */
-                       /* a main() function.                           */
-#  endif
+#if defined(__BORLANDC__)
+#if defined(__OVERLAY__) && !defined(VROOMM)
+/* __OVERLAY__ is automatically defined by Borland C if overlay option is on
+ */
+#define VROOMM /* Borland's VROOMM overlay system */
+#endif
+#if !defined(STKSIZ)
+#define STKSIZ 5 * 1024 /* Use a default of 5K stack for Borland C     */
+                        /* This macro is used in any file that contains */
+                        /* a main() function.                          */
+#endif
 #define PC_LOCKING
-# endif
+#endif
 
 #ifdef PC_LOCKING
 #define HLOCK "NHPERM"
 #endif
 
 #ifndef index
-# define index strchr
+#define index strchr
 #endif
 #ifndef rindex
-# define rindex strrchr
+#define rindex strrchr
 #endif
 
 #ifndef AMIGA
 
 #ifdef RANDOM
 /* Use the high quality random number routines. */
-# define Rand() random()
+#define Rand() random()
 #else
-# define Rand() rand()
+#define Rand() rand()
 #endif
 
 #ifndef TOS
-# define FCMASK 0660   /* file creation mask */
+#define FCMASK 0660 /* file creation mask */
 #endif
 
 #include <fcntl.h>
 
 #ifdef MSDOS
-# define TEXTCOLOR /* */
-# define PORT_HELP "msdoshlp.txt" /* msdos port specific help file */
+#define TEXTCOLOR                /* */
+#define PORT_HELP "msdoshlp.txt" /* msdos port specific help file */
 #endif
 
-
 /* Sanity check, do not modify these blocks. */
 
 /* OVERLAY must be defined with MOVERLAY or VROOMM */
 #if (defined(MOVERLAY) || defined(VROOMM))
-# ifndef OVERLAY
-#  define OVERLAY
-# endif
+#ifndef OVERLAY
+#define OVERLAY
+#endif
 #endif
 
 #if defined(FUNCTION_LEVEL_LINKING)
 #define OVERLAY
 #endif
 
-#if defined(OVERLAY) && !defined(MOVERLAY) && !defined(VROOMM) && !defined(FUNCTION_LEVEL_LINKING)
+#if defined(OVERLAY) && !defined(MOVERLAY) && !defined(VROOMM) \
+    && !defined(FUNCTION_LEVEL_LINKING)
 #define USE_TRAMPOLI
 #endif
 
 #if defined(MSDOS) && defined(NO_TERMS)
-# ifdef TERMLIB
-#  if defined(_MSC_VER) || defined(__SC__)
-#   pragma message("Warning -- TERMLIB defined with NO_TERMS in pcconf.h")
-#   pragma message("           Forcing undef of TERMLIB")
-#  endif
+#ifdef TERMLIB
+#if defined(_MSC_VER) || defined(__SC__)
+#pragma message("Warning -- TERMLIB defined with NO_TERMS in pcconf.h")
+#pragma message("           Forcing undef of TERMLIB")
+#endif
 #undef TERMLIB
-# endif
-# ifdef ANSI_DEFAULT
-#  if defined(_MSC_VER) || defined(__SC__)
-#   pragma message("Warning -- ANSI_DEFAULT defined with NO_TERMS in pcconf.h")
-#   pragma message("           Forcing undef of ANSI_DEFAULT")
-#  endif
+#endif
+#ifdef ANSI_DEFAULT
+#if defined(_MSC_VER) || defined(__SC__)
+#pragma message("Warning -- ANSI_DEFAULT defined with NO_TERMS in pcconf.h")
+#pragma message("           Forcing undef of ANSI_DEFAULT")
+#endif
 #undef ANSI_DEFAULT
-# endif
+#endif
 /* only one screen package is allowed */
-# if defined(SCREEN_BIOS) && defined(SCREEN_DJGPPFAST)
-#  if defined(_MSC_VER) || defined(__SC__)
-#   pragma message("Warning -- More than one screen package defined in pcconf.h")
-#  endif
-#  if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__SC__)
-#   if defined(SCREEN_DJGPPFAST)
-#    if defined(_MSC_VER) || defined(__SC__)
-#    pragma message("           Forcing undef of SCREEN_DJGPPFAST")
-#    endif
-#undef SCREEN_DJGPPFAST   /* Can't use djgpp fast with other compilers anyway */
-#   endif
-#  else
+#if defined(SCREEN_BIOS) && defined(SCREEN_DJGPPFAST)
+#if defined(_MSC_VER) || defined(__SC__)
+#pragma message("Warning -- More than one screen package defined in pcconf.h")
+#endif
+#if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__SC__)
+#if defined(SCREEN_DJGPPFAST)
+#if defined(_MSC_VER) || defined(__SC__)
+#pragma message("           Forcing undef of SCREEN_DJGPPFAST")
+#endif
+#undef SCREEN_DJGPPFAST /* Can't use djgpp fast with other compilers anyway \
+                           */
+#endif
+#else
 /* djgpp C compiler    */
-#   if defined(SCREEN_BIOS)
+#if defined(SCREEN_BIOS)
 #undef SCREEN_BIOS
-#   endif
-#  endif
-# endif
-# define ASCIIGRAPH
-# ifdef TEXTCOLOR
-#  define VIDEOSHADES
-# endif
-/* SCREEN_8514, SCREEN_VESA are only placeholders presently - sub VGA instead */
-# if defined(SCREEN_8514) || defined(SCREEN_VESA)
-#  undef SCREEN_8514
-#  undef SCREEN_VESA
-#  define SCREEN_VGA
-# endif
+#endif
+#endif
+#endif
+#define ASCIIGRAPH
+#ifdef TEXTCOLOR
+#define VIDEOSHADES
+#endif
+/* SCREEN_8514, SCREEN_VESA are only placeholders presently - sub VGA instead
+ */
+#if defined(SCREEN_8514) || defined(SCREEN_VESA)
+#undef SCREEN_8514
+#undef SCREEN_VESA
+#define SCREEN_VGA
+#endif
 /* Graphical tile sanity checks */
-# ifdef SCREEN_VGA
-#  define SIMULATE_CURSOR
-#  define POSITIONBAR
+#ifdef SCREEN_VGA
+#define SIMULATE_CURSOR
+#define POSITIONBAR
 /* Select appropriate tile file format, and map size */
-#  define PLANAR_FILE
-#  define SMALL_MAP
-# endif
-#endif                 /* End of sanity check block */
+#define PLANAR_FILE
+#define SMALL_MAP
+#endif
+#endif /* End of sanity check block */
 
 #if defined(MSDOS) && defined(DLB)
-#define FILENAME_CMP  stricmp                /* case insensitive */
+#define FILENAME_CMP stricmp /* case insensitive */
 #endif
 
 #if defined(_MSC_VER) && (_MSC_VER >= 7)
-#pragma warning(disable:4131)
-#pragma warning(disable:4135)
-#pragma warning(disable:4309)
-#pragma warning(disable:4746)
-#pragma warning(disable:4761)
+#pragma warning(disable : 4131)
+#pragma warning(disable : 4135)
+#pragma warning(disable : 4309)
+#pragma warning(disable : 4746)
+#pragma warning(disable : 4761)
 #endif
 
 #ifdef TIMED_DELAY
-# ifdef __DJGPP__
-# define msleep(k) (void) usleep((k)*1000)
-# endif
-# ifdef __BORLANDC__
-# define msleep(k) delay(k)
-# endif
-# ifdef __SC__
-# define msleep(k) (void) usleep((long)((k)*1000))
-# endif
+#ifdef __DJGPP__
+#define msleep(k) (void) usleep((k) *1000)
+#endif
+#ifdef __BORLANDC__
+#define msleep(k) delay(k)
+#endif
+#ifdef __SC__
+#define msleep(k) (void) usleep((long)((k) *1000))
+#endif
 #endif
 
 #endif /* PCCONF_H */
index 17aed317a71e3070c3280cc05c54a40a544bfee1..a0967f71c3e377277b69cce628f5352eec8d5712 100644 (file)
  */
 
 struct attack {
-       uchar           aatyp;
-       uchar           adtyp, damn, damd;
+    uchar aatyp;
+    uchar adtyp, damn, damd;
 };
 
 /*     Max # of attacks for any given monster.
  */
 
-#define NATTK          6
+#define NATTK 6
 
 /*     Weight of a human body
  */
 
-#define WT_HUMAN       1450
+#define WT_HUMAN 1450
 
 #ifndef ALIGN_H
 #include "align.h"
@@ -41,31 +41,30 @@ struct attack {
 #include "monflag.h"
 
 struct permonst {
-       const char      *mname;                 /* full name */
-       char            mlet;                   /* symbol */
-       schar           mlevel,                 /* base monster level */
-                       mmove,                  /* move speed */
-                       ac,                     /* (base) armor class */
-                       mr;                     /* (base) magic resistance */
-       aligntyp        maligntyp;              /* basic monster alignment */
-       unsigned short  geno;                   /* creation/geno mask value */
-       struct  attack  mattk[NATTK];           /* attacks matrix */
-       unsigned short  cwt,                    /* weight of corpse */
-                       cnutrit;                /* its nutritional value */
-       uchar           msound;                 /* noise it makes (6 bits) */
-       uchar           msize;                  /* physical size (3 bits) */
-       uchar           mresists;               /* resistances */
-       uchar           mconveys;               /* conveyed by eating */
-       unsigned long   mflags1,                /* boolean bitflags */
-                       mflags2;                /* more boolean bitflags */
-       unsigned short  mflags3;                /* yet more boolean bitflags */
-# ifdef TEXTCOLOR
-       uchar           mcolor;                 /* color to use */
-# endif
+    const char *mname;          /* full name */
+    char mlet;                  /* symbol */
+    schar mlevel,               /* base monster level */
+        mmove,                  /* move speed */
+        ac,                     /* (base) armor class */
+        mr;                     /* (base) magic resistance */
+    aligntyp maligntyp;         /* basic monster alignment */
+    unsigned short geno;        /* creation/geno mask value */
+    struct attack mattk[NATTK]; /* attacks matrix */
+    unsigned short cwt,         /* weight of corpse */
+        cnutrit;                /* its nutritional value */
+    uchar msound;               /* noise it makes (6 bits) */
+    uchar msize;                /* physical size (3 bits) */
+    uchar mresists;             /* resistances */
+    uchar mconveys;             /* conveyed by eating */
+    unsigned long mflags1,      /* boolean bitflags */
+        mflags2;                /* more boolean bitflags */
+    unsigned short mflags3;     /* yet more boolean bitflags */
+#ifdef TEXTCOLOR
+    uchar mcolor; /* color to use */
+#endif
 };
 
-extern NEARDATA struct permonst
-               mons[];         /* the master list of monster types */
+extern NEARDATA struct permonst mons[]; /* the master list of monster types */
 
 #define VERY_SLOW 3
 #define SLOW_SPEED 9
@@ -73,10 +72,10 @@ extern NEARDATA struct permonst
 #define FAST_SPEED 15
 #define VERY_FAST 24
 
-#define NON_PM         PM_PLAYERMON            /* "not a monster" */
-#define LOW_PM         (NON_PM+1)              /* first monster in mons[] */
-#define SPECIAL_PM     PM_LONG_WORM_TAIL       /* [normal] < ~ < [special] */
-       /* mons[SPECIAL_PM] through mons[NUMMONS-1], inclusive, are
-          never generated randomly and cannot be polymorphed into */
+#define NON_PM PM_PLAYERMON          /* "not a monster" */
+#define LOW_PM (NON_PM + 1)          /* first monster in mons[] */
+#define SPECIAL_PM PM_LONG_WORM_TAIL /* [normal] < ~ < [special] */
+/* mons[SPECIAL_PM] through mons[NUMMONS-1], inclusive, are
+   never generated randomly and cannot be polymorphed into */
 
 #endif /* PERMONST_H */
index 4da4a4a939aaae44a2a597dc274e87aad21e78a2..52037f23f39406ffb22e447771dbcda22c602b7e 100644 (file)
 
 /*** What the properties are ***/
 /* Resistances to troubles */
-#define FIRE_RES                1
-#define COLD_RES                2
-#define SLEEP_RES               3
-#define DISINT_RES              4
-#define SHOCK_RES               5
-#define POISON_RES              6
-#define ACID_RES                7
-#define STONE_RES               8
+#define FIRE_RES 1
+#define COLD_RES 2
+#define SLEEP_RES 3
+#define DISINT_RES 4
+#define SHOCK_RES 5
+#define POISON_RES 6
+#define ACID_RES 7
+#define STONE_RES 8
 /* note: for the first eight properties, MR_xxx == (1 << (xxx_RES - 1)) */
-#define DRAIN_RES               9
-#define SICK_RES               10
-#define INVULNERABLE           11
-#define ANTIMAGIC              12
+#define DRAIN_RES 9
+#define SICK_RES 10
+#define INVULNERABLE 11
+#define ANTIMAGIC 12
 /* Troubles */
-#define STUNNED                        13
-#define CONFUSION              14
-#define BLINDED                        15
-#define DEAF                   16
-#define SICK                   17
-#define STONED                 18
-#define STRANGLED              19
-#define VOMITING               20
-#define GLIB                   21
-#define SLIMED                 22
-#define HALLUC                 23
-#define HALLUC_RES             24
-#define FUMBLING               25
-#define WOUNDED_LEGS           26
-#define SLEEPY                 27
-#define HUNGER                 28
+#define STUNNED 13
+#define CONFUSION 14
+#define BLINDED 15
+#define DEAF 16
+#define SICK 17
+#define STONED 18
+#define STRANGLED 19
+#define VOMITING 20
+#define GLIB 21
+#define SLIMED 22
+#define HALLUC 23
+#define HALLUC_RES 24
+#define FUMBLING 25
+#define WOUNDED_LEGS 26
+#define SLEEPY 27
+#define HUNGER 28
 /* Vision and senses */
-#define SEE_INVIS              29
-#define TELEPAT                        30
-#define WARNING                        31
-#define WARN_OF_MON            32
-#define WARN_UNDEAD            33
-#define SEARCHING              34
-#define CLAIRVOYANT            35
-#define INFRAVISION            36
-#define DETECT_MONSTERS                37
+#define SEE_INVIS 29
+#define TELEPAT 30
+#define WARNING 31
+#define WARN_OF_MON 32
+#define WARN_UNDEAD 33
+#define SEARCHING 34
+#define CLAIRVOYANT 35
+#define INFRAVISION 36
+#define DETECT_MONSTERS 37
 /* Appearance and behavior */
-#define ADORNED                        38
-#define INVIS                  39
-#define DISPLACED              40
-#define STEALTH                        41
-#define AGGRAVATE_MONSTER      42
-#define CONFLICT               43
+#define ADORNED 38
+#define INVIS 39
+#define DISPLACED 40
+#define STEALTH 41
+#define AGGRAVATE_MONSTER 42
+#define CONFLICT 43
 /* Transportation */
-#define JUMPING                        44
-#define TELEPORT               45
-#define TELEPORT_CONTROL       46
-#define LEVITATION             47
-#define FLYING                 48
-#define WWALKING               49
-#define SWIMMING               50
-#define MAGICAL_BREATHING      51
-#define PASSES_WALLS           52
+#define JUMPING 44
+#define TELEPORT 45
+#define TELEPORT_CONTROL 46
+#define LEVITATION 47
+#define FLYING 48
+#define WWALKING 49
+#define SWIMMING 50
+#define MAGICAL_BREATHING 51
+#define PASSES_WALLS 52
 /* Physical attributes */
-#define SLOW_DIGESTION         53
-#define HALF_SPDAM             54
-#define HALF_PHDAM             55
-#define REGENERATION           56
-#define ENERGY_REGENERATION    57
-#define PROTECTION             58
+#define SLOW_DIGESTION 53
+#define HALF_SPDAM 54
+#define HALF_PHDAM 55
+#define REGENERATION 56
+#define ENERGY_REGENERATION 57
+#define PROTECTION 58
 #define PROT_FROM_SHAPE_CHANGERS 59
-#define POLYMORPH              60
-#define POLYMORPH_CONTROL      61
-#define UNCHANGING             62
-#define FAST                   63
-#define REFLECTING             64
-#define FREE_ACTION            65
-#define FIXED_ABIL             66
-#define LIFESAVED              67
-#define LAST_PROP              (LIFESAVED)
-
+#define POLYMORPH 60
+#define POLYMORPH_CONTROL 61
+#define UNCHANGING 62
+#define FAST 63
+#define REFLECTING 64
+#define FREE_ACTION 65
+#define FIXED_ABIL 66
+#define LIFESAVED 67
+#define LAST_PROP (LIFESAVED)
 
 /*** Where the properties come from ***/
 /* Definitions were moved here from obj.h and you.h */
 struct prop {
-       /*** Properties conveyed by objects ***/
-       long extrinsic;
-       /* Armor */
-#      define W_ARM        0x00000001L /* Body armor */
-#      define W_ARMC       0x00000002L /* Cloak */
-#      define W_ARMH       0x00000004L /* Helmet/hat */
-#      define W_ARMS       0x00000008L /* Shield */
-#      define W_ARMG       0x00000010L /* Gloves/gauntlets */
-#      define W_ARMF       0x00000020L /* Footwear */
-#      define W_ARMU       0x00000040L /* Undershirt */
-#      define W_ARMOR       (W_ARM | W_ARMC | W_ARMH | W_ARMS | W_ARMG | W_ARMF | W_ARMU)
-       /* Weapons and artifacts */
-#      define W_WEP        0x00000100L /* Wielded weapon */
-#      define W_QUIVER     0x00000200L /* Quiver for (f)iring ammo */
-#      define W_SWAPWEP    0x00000400L /* Secondary weapon */
-#      define W_ART        0x00001000L /* Carrying artifact (not really worn) */
-#      define W_ARTI       0x00002000L /* Invoked artifact  (not really worn) */
-       /* Amulets, rings, tools, and other items */
-#      define W_AMUL       0x00010000L /* Amulet */
-#      define W_RINGL      0x00020000L /* Left ring */
-#      define W_RINGR      0x00040000L /* Right ring */
-#      define W_RING       (W_RINGL | W_RINGR)
-#      define W_TOOL       0x00080000L /* Eyewear */
-#      define W_SADDLE     0x00100000L /* KMH -- For riding monsters */
-#      define W_BALL       0x00200000L /* Punishment ball */
-#      define W_CHAIN      0x00400000L /* Punishment chain */
+    /*** Properties conveyed by objects ***/
+    long extrinsic;
+/* Armor */
+#define W_ARM 0x00000001L  /* Body armor */
+#define W_ARMC 0x00000002L /* Cloak */
+#define W_ARMH 0x00000004L /* Helmet/hat */
+#define W_ARMS 0x00000008L /* Shield */
+#define W_ARMG 0x00000010L /* Gloves/gauntlets */
+#define W_ARMF 0x00000020L /* Footwear */
+#define W_ARMU 0x00000040L /* Undershirt */
+#define W_ARMOR (W_ARM | W_ARMC | W_ARMH | W_ARMS | W_ARMG | W_ARMF | W_ARMU)
+/* Weapons and artifacts */
+#define W_WEP 0x00000100L     /* Wielded weapon */
+#define W_QUIVER 0x00000200L  /* Quiver for (f)iring ammo */
+#define W_SWAPWEP 0x00000400L /* Secondary weapon */
+#define W_ART 0x00001000L     /* Carrying artifact (not really worn) */
+#define W_ARTI 0x00002000L    /* Invoked artifact  (not really worn) */
+                              /* Amulets, rings, tools, and other items */
+#define W_AMUL 0x00010000L    /* Amulet */
+#define W_RINGL 0x00020000L   /* Left ring */
+#define W_RINGR 0x00040000L   /* Right ring */
+#define W_RING (W_RINGL | W_RINGR)
+#define W_TOOL 0x00080000L   /* Eyewear */
+#define W_SADDLE 0x00100000L /* KMH -- For riding monsters */
+#define W_BALL 0x00200000L   /* Punishment ball */
+#define W_CHAIN 0x00400000L  /* Punishment chain */
 
-       /*** Property is blocked by an object ***/
-       long blocked;                                   /* Same assignments as extrinsic */
+    /*** Property is blocked by an object ***/
+    long blocked; /* Same assignments as extrinsic */
 
-       /*** Timeouts, permanent properties, and other flags ***/
-       long intrinsic;
-       /* Timed properties */
-#      define TIMEOUT      0x00ffffffL /* Up to 16 million turns */
-       /* Permanent properties */
-#      define FROMEXPER    0x01000000L /* Gain/lose with experience, for role */
-#      define FROMRACE     0x02000000L /* Gain/lose with experience, for race */
-#      define FROMOUTSIDE  0x04000000L /* By corpses, prayer, thrones, etc. */
-#      define INTRINSIC    (FROMOUTSIDE|FROMRACE|FROMEXPER)
-       /* Control flags */
-#      define FROMFORM     0x10000000L /* Polyd; conferred by monster form */
-#      define I_SPECIAL    0x20000000L /* Property is controllable */
+    /*** Timeouts, permanent properties, and other flags ***/
+    long intrinsic;
+/* Timed properties */
+#define TIMEOUT 0x00ffffffL     /* Up to 16 million turns */
+                                /* Permanent properties */
+#define FROMEXPER 0x01000000L   /* Gain/lose with experience, for role */
+#define FROMRACE 0x02000000L    /* Gain/lose with experience, for race */
+#define FROMOUTSIDE 0x04000000L /* By corpses, prayer, thrones, etc. */
+#define INTRINSIC (FROMOUTSIDE | FROMRACE | FROMEXPER)
+/* Control flags */
+#define FROMFORM 0x10000000L  /* Polyd; conferred by monster form */
+#define I_SPECIAL 0x20000000L /* Property is controllable */
 };
 
 /*** Definitions for backwards compatibility ***/
-#define LEFT_RING      W_RINGL
-#define RIGHT_RING     W_RINGR
-#define LEFT_SIDE      LEFT_RING
-#define RIGHT_SIDE     RIGHT_RING
-#define BOTH_SIDES     (LEFT_SIDE | RIGHT_SIDE)
-#define WORN_ARMOR     W_ARM
-#define WORN_CLOAK     W_ARMC
-#define WORN_HELMET    W_ARMH
-#define WORN_SHIELD    W_ARMS
-#define WORN_GLOVES    W_ARMG
-#define WORN_BOOTS     W_ARMF
-#define WORN_AMUL      W_AMUL
-#define WORN_BLINDF    W_TOOL
-#define WORN_SHIRT     W_ARMU
+#define LEFT_RING W_RINGL
+#define RIGHT_RING W_RINGR
+#define LEFT_SIDE LEFT_RING
+#define RIGHT_SIDE RIGHT_RING
+#define BOTH_SIDES (LEFT_SIDE | RIGHT_SIDE)
+#define WORN_ARMOR W_ARM
+#define WORN_CLOAK W_ARMC
+#define WORN_HELMET W_ARMH
+#define WORN_SHIELD W_ARMS
+#define WORN_GLOVES W_ARMG
+#define WORN_BOOTS W_ARMF
+#define WORN_AMUL W_AMUL
+#define WORN_BLINDF W_TOOL
+#define WORN_SHIRT W_ARMU
 
 #endif /* PROP_H */
index 1630ed92218af583a83d33b7c09ce933745419be..ce6157a7216cbf6560faf10cc214a4a3cb146b90 100644 (file)
@@ -9,23 +9,28 @@
 
 #include <qrect.h>
 
-class Clusterizer {
-public:
-       Clusterizer(int maxclusters);
-       ~Clusterizer();
+class Clusterizer
+{
+  public:
+    Clusterizer(int maxclusters);
+    ~Clusterizer();
 
-       void add(int x, int y); // 1x1 rectangle (point)
-       void add(int x, int y, int w, int h);
-       void add(const QRect& rect);
+    void add(int x, int y); // 1x1 rectangle (point)
+    void add(int x, int y, int w, int h);
+    void add(const QRect &rect);
 
-       void clear();
-       int clusters() { return count; }
-       const QRect& operator[](int i);
+    void clear();
+    int
+    clusters()
+    {
+        return count;
+    }
+    const QRect &operator[](int i);
 
-private:
-       QRect* cluster;
-       int count;
-       const int max;
+  private:
+    QRect *cluster;
+    int count;
+    const int max;
 };
 
 #endif
index 5b072d16fc3dc70f8b5c0307415421761e3f2df2..df7f5d733c32504d1b1aaa8aedb84db0e7d55030 100644 (file)
@@ -6,7 +6,8 @@
 
 #ifndef QT_DUMMYKDE
 #define QT_DUMMYKDE
-class KTopLevelWidget : public QMainWindow {
-        Q_OBJECT
+class KTopLevelWidget : public QMainWindow
+{
+    Q_OBJECT
 };
 #endif
index d9be6c63ead41c84fd25e3e121d92f00faf215c9..31b8178b19767ccc380df4791705b5f74af56280 100644 (file)
 #include <qpushbutton.h>
 #include <qbuttongroup.h>
 #include <qlabel.h>
-#include <qlineedit.h> 
+#include <qlineedit.h>
 #if defined(QWS)
-#include <qpe/qpeapplication.h> 
+#include <qpe/qpeapplication.h>
 #else
-#include <qapplication.h> 
+#include <qapplication.h>
 #endif
 #include <qspinbox.h>
 #include <qcheckbox.h>
-#include <qfile.h> 
-#include <qlistbox.h> 
-#include <qlistview.h> 
+#include <qfile.h>
+#include <qlistbox.h>
+#include <qlistview.h>
 #include <qmessagebox.h>
 #include <qpixmap.h>
 #include <qimage.h>
@@ -51,7 +51,7 @@
 #ifdef KDE
 #include <kapp.h>
 #include <ktopwidget.h>
-#endif 
+#endif
 
 #include "qt_clust.h"
 
@@ -68,626 +68,662 @@ class NhPSListView;
 
 class NetHackQtGlyphs;
 
-class NetHackQtLineEdit : public QLineEdit {
-public:
-       NetHackQtLineEdit();
-       NetHackQtLineEdit(QWidget* parent, const char* name);
+class NetHackQtLineEdit : public QLineEdit
+{
+  public:
+    NetHackQtLineEdit();
+    NetHackQtLineEdit(QWidget *parent, const char *name);
 
-       void fakeEvent(int key, int ascii, int state);
+    void fakeEvent(int key, int ascii, int state);
 };
 
-class NetHackQtSettings : public QDialog {
-       Q_OBJECT
-public:
-       // Size of window - used to decide default sizes
-       NetHackQtSettings(int width, int height);
+class NetHackQtSettings : public QDialog
+{
+    Q_OBJECT
+  public:
+    // Size of window - used to decide default sizes
+    NetHackQtSettings(int width, int height);
 
-       NetHackQtGlyphs& glyphs();
-       const QFont& normalFont();
-       const QFont& normalFixedFont();
-       const QFont& largeFont();
+    NetHackQtGlyphs &glyphs();
+    const QFont &normalFont();
+    const QFont &normalFixedFont();
+    const QFont &largeFont();
 
-       bool ynInMessages();
+    bool ynInMessages();
 
-signals:
-       void fontChanged();
-       void tilesChanged();
+  signals:
+    void fontChanged();
+    void tilesChanged();
 
-public slots:
-       void toggleGlyphSize();
-       void setGlyphSize(bool);
+  public slots:
+    void toggleGlyphSize();
+    void setGlyphSize(bool);
 
-private:
-       QSpinBox tilewidth;
-       QSpinBox tileheight;
-       QLabel widthlbl;
-       QLabel heightlbl;
-       QCheckBox whichsize;
-       QSize othersize;
+  private:
+    QSpinBox tilewidth;
+    QSpinBox tileheight;
+    QLabel widthlbl;
+    QLabel heightlbl;
+    QCheckBox whichsize;
+    QSize othersize;
 
-       QComboBox fontsize;
+    QComboBox fontsize;
 
-       QFont normal, normalfixed, large;
+    QFont normal, normalfixed, large;
 
-       NetHackQtGlyphs* theglyphs;
+    NetHackQtGlyphs *theglyphs;
 
-private slots:
-       void resizeTiles();
+  private slots:
+    void resizeTiles();
 };
 
-class NetHackQtKeyBuffer {
-public:
-       NetHackQtKeyBuffer();
-
-       bool Empty() const;
-       bool Full() const;
-
-       void Put(int k, int ascii, int state);
-       void Put(char a);
-       void Put(const char* str);
-       int GetKey();
-       int GetAscii();
-       int GetState();
-
-       int TopKey() const;
-       int TopAscii() const;
-       int TopState() const;
-
-private:
-       enum { maxkey=64 };
-       int key[maxkey];
-       int ascii[maxkey];
-       int state[maxkey];
-       int in,out;
+class NetHackQtKeyBuffer
+{
+  public:
+    NetHackQtKeyBuffer();
+
+    bool Empty() const;
+    bool Full() const;
+
+    void Put(int k, int ascii, int state);
+    void Put(char a);
+    void Put(const char *str);
+    int GetKey();
+    int GetAscii();
+    int GetState();
+
+    int TopKey() const;
+    int TopAscii() const;
+    int TopState() const;
+
+  private:
+    enum { maxkey = 64 };
+    int key[maxkey];
+    int ascii[maxkey];
+    int state[maxkey];
+    int in, out;
 };
 
-class NetHackQtClickBuffer {
-public:
-       NetHackQtClickBuffer();
+class NetHackQtClickBuffer
+{
+  public:
+    NetHackQtClickBuffer();
 
-       bool Empty() const;
-       bool Full() const;
+    bool Empty() const;
+    bool Full() const;
 
-       void Put(int x, int y, int mod);
+    void Put(int x, int y, int mod);
 
-       int NextX() const;
-       int NextY() const;
-       int NextMod() const;
+    int NextX() const;
+    int NextY() const;
+    int NextMod() const;
 
-       void Get();
+    void Get();
 
-private:
-       enum { maxclick=64 };
-       struct ClickRec {
-               int x,y,mod;
-       } click[maxclick];
-       int in,out;
+  private:
+    enum { maxclick = 64 };
+    struct ClickRec {
+        int x, y, mod;
+    } click[maxclick];
+    int in, out;
 };
 
+class NetHackQtSavedGameSelector : public QDialog
+{
+  public:
+    NetHackQtSavedGameSelector(const char **saved);
 
-class NetHackQtSavedGameSelector : public QDialog {
-public:
-       NetHackQtSavedGameSelector(const char** saved);
-
-       int choose();
+    int choose();
 };
 
-class NetHackQtPlayerSelector : private QDialog {
-       Q_OBJECT
-public:
-       enum { R_None=-1, R_Quit=-2, R_Rand=-3 };
-
-       NetHackQtPlayerSelector(NetHackQtKeyBuffer&);
-
-protected:
-       virtual void done(int);
-
-public slots:
-       void Quit();
-       void Random();
-
-       void selectName(const QString& n);
-       void selectRole();
-       void selectRace();
-       void setupOthers();
-       void selectGender(int);
-       void selectAlignment(int);
-
-public:
-       bool Choose();
-
-private:
-       NetHackQtKeyBuffer& keysource;
-       NhPSListView* role;
-       NhPSListView* race;
-       QRadioButton **gender;
-       QRadioButton **alignment;
-       bool fully_specified_role;
+class NetHackQtPlayerSelector : private QDialog
+{
+    Q_OBJECT
+  public:
+    enum { R_None = -1, R_Quit = -2, R_Rand = -3 };
+
+    NetHackQtPlayerSelector(NetHackQtKeyBuffer &);
+
+  protected:
+    virtual void done(int);
+
+  public slots:
+    void Quit();
+    void Random();
+
+    void selectName(const QString &n);
+    void selectRole();
+    void selectRace();
+    void setupOthers();
+    void selectGender(int);
+    void selectAlignment(int);
+
+  public:
+    bool Choose();
+
+  private:
+    NetHackQtKeyBuffer &keysource;
+    NhPSListView *role;
+    NhPSListView *race;
+    QRadioButton **gender;
+    QRadioButton **alignment;
+    bool fully_specified_role;
 };
 
-class NetHackQtStringRequestor : QDialog {
-private:
-       QLabel prompt;
-       NetHackQtLineEdit input;
-       QPushButton* okay;
-       QPushButton* cancel;
-       NetHackQtKeyBuffer& keysource;
-
-       virtual void done(int);
-
-public:
-       NetHackQtStringRequestor(NetHackQtKeyBuffer&, const char* p,const char* cancelstr="Cancel");
-       void SetDefault(const char*);
-       bool Get(char* buffer, int maxchar=80);
-       virtual void resizeEvent(QResizeEvent*);
+class NetHackQtStringRequestor : QDialog
+{
+  private:
+    QLabel prompt;
+    NetHackQtLineEdit input;
+    QPushButton *okay;
+    QPushButton *cancel;
+    NetHackQtKeyBuffer &keysource;
+
+    virtual void done(int);
+
+  public:
+    NetHackQtStringRequestor(NetHackQtKeyBuffer &, const char *p,
+                             const char *cancelstr = "Cancel");
+    void SetDefault(const char *);
+    bool Get(char *buffer, int maxchar = 80);
+    virtual void resizeEvent(QResizeEvent *);
 };
 
-class NetHackQtExtCmdRequestor : public QDialog {
+class NetHackQtExtCmdRequestor : public QDialog
+{
     Q_OBJECT
 
-    NetHackQtKeyBufferkeysource;
+    NetHackQtKeyBuffer &keysource;
 
-public:
-    NetHackQtExtCmdRequestor(NetHackQtKeyBufferks);
+  public:
+    NetHackQtExtCmdRequestor(NetHackQtKeyBuffer &ks);
     int get();
 
-private slots:
+  private slots:
     void cancel();
     void done(int i);
 };
 
-
-class NetHackQtWindow {
-public:
-       NetHackQtWindow();
-       virtual ~NetHackQtWindow();
-
-       virtual QWidget* Widget() =0;
-
-       virtual void Clear();
-       virtual void Display(bool block);
-       virtual bool Destroy();
-       virtual void CursorTo(int x,int y);
-       virtual void PutStr(int attr, const char* text);
-       virtual void StartMenu();
-       virtual void AddMenu(int glyph, const ANY_P* identifier, char ch, char gch, int attr,
-                       const char* str, bool presel);
-       virtual void EndMenu(const char* prompt);
-       virtual int SelectMenu(int how, MENU_ITEM_P **menu_list);
-       virtual void ClipAround(int x,int y);
-       virtual void PrintGlyph(int x,int y,int glyph);
-       virtual void UseRIP(int how, time_t when);
-
-       int nhid;
+class NetHackQtWindow
+{
+  public:
+    NetHackQtWindow();
+    virtual ~NetHackQtWindow();
+
+    virtual QWidget *Widget() = 0;
+
+    virtual void Clear();
+    virtual void Display(bool block);
+    virtual bool Destroy();
+    virtual void CursorTo(int x, int y);
+    virtual void PutStr(int attr, const char *text);
+    virtual void StartMenu();
+    virtual void AddMenu(int glyph, const ANY_P *identifier, char ch,
+                         char gch, int attr, const char *str, bool presel);
+    virtual void EndMenu(const char *prompt);
+    virtual int SelectMenu(int how, MENU_ITEM_P **menu_list);
+    virtual void ClipAround(int x, int y);
+    virtual void PrintGlyph(int x, int y, int glyph);
+    virtual void UseRIP(int how, time_t when);
+
+    int nhid;
 };
 
-class NetHackQtGlyphs {
-public:
-       NetHackQtGlyphs();
+class NetHackQtGlyphs
+{
+  public:
+    NetHackQtGlyphs();
 
-       int width() const { return size.width(); }
-       int height() const { return size.height(); }
-       void toggleSize();
-       void setSize(int w, int h);
+    int
+    width() const
+    {
+        return size.width();
+    }
+    int
+    height() const
+    {
+        return size.height();
+    }
+    void toggleSize();
+    void setSize(int w, int h);
 
-       void drawGlyph(QPainter&, int glyph, int pixelx, int pixely);
-       void drawCell(QPainter&, int glyph, int cellx, int celly);
+    void drawGlyph(QPainter &, int glyph, int pixelx, int pixely);
+    void drawCell(QPainter &, int glyph, int cellx, int celly);
 
-private:
-       QImage img;
-       QPixmap pm,pm1, pm2;
-       QSize size;
-       int tiles_per_row;
+  private:
+    QImage img;
+    QPixmap pm, pm1, pm2;
+    QSize size;
+    int tiles_per_row;
 };
 
-class BlackScrollView : public QScrollView {
-public:
+class BlackScrollView : public QScrollView
+{
+  public:
     BlackScrollView()
     {
-       viewport()->setBackgroundColor(black);
+        viewport()->setBackgroundColor(black);
     }
 };
 
-class NetHackQtMapWindow : public QWidget, public NetHackQtWindow {
-       Q_OBJECT
-private:
-       NetHackQtClickBuffer& clicksink;
-       unsigned short glyph[ROWNO][COLNO];
-       unsigned short& Glyph(int x, int y) { return glyph[y][x]; }
-       QPoint cursor;
-       BlackScrollView viewport;
-       QPixmap pet_annotation;
-       Clusterizer change;
-       QFont *rogue_font;
-       QString messages;
-       QRect messages_rect;
-
-       void Changed(int x,int y);
-
-signals:
-       void resized();
-
-private slots:
-       void updateTiles();
-       void moveMessages(int x, int y);
+class NetHackQtMapWindow : public QWidget, public NetHackQtWindow
+{
+    Q_OBJECT
+  private:
+    NetHackQtClickBuffer &clicksink;
+    unsigned short glyph[ROWNO][COLNO];
+    unsigned short &
+    Glyph(int x, int y)
+    {
+        return glyph[y][x];
+    }
+    QPoint cursor;
+    BlackScrollView viewport;
+    QPixmap pet_annotation;
+    Clusterizer change;
+    QFont *rogue_font;
+    QString messages;
+    QRect messages_rect;
+
+    void Changed(int x, int y);
+
+  signals:
+    void resized();
+
+  private slots:
+    void updateTiles();
+    void moveMessages(int x, int y);
 #ifdef SAFERHANGUP
-       void timeout();
+    void timeout();
 #endif
 
-protected:
-       virtual void paintEvent(QPaintEvent*);
-       virtual void mousePressEvent(QMouseEvent*);
+  protected:
+    virtual void paintEvent(QPaintEvent *);
+    virtual void mousePressEvent(QMouseEvent *);
 
-public:
-       NetHackQtMapWindow(NetHackQtClickBuffer& click_sink);
-       ~NetHackQtMapWindow();
+  public:
+    NetHackQtMapWindow(NetHackQtClickBuffer &click_sink);
+    ~NetHackQtMapWindow();
 
-       virtual QWidget* Widget();
-       virtual bool Destroy();
+    virtual QWidget *Widget();
+    virtual bool Destroy();
 
-       virtual void Clear();
-       virtual void Display(bool block);
-       virtual void CursorTo(int x,int y);
-       virtual void PutStr(int attr, const char* text);
-       virtual void ClipAround(int x,int y);
-       virtual void PrintGlyph(int x,int y,int glyph);
+    virtual void Clear();
+    virtual void Display(bool block);
+    virtual void CursorTo(int x, int y);
+    virtual void PutStr(int attr, const char *text);
+    virtual void ClipAround(int x, int y);
+    virtual void PrintGlyph(int x, int y, int glyph);
 
-       void Scroll(int dx, int dy);
+    void Scroll(int dx, int dy);
 
-       // For messages
-       void displayMessages(bool block);
-       void putMessage(int attr, const char* text);
-       void clearMessages();
+    // For messages
+    void displayMessages(bool block);
+    void putMessage(int attr, const char *text);
+    void clearMessages();
 
-       void clickCursor();
+    void clickCursor();
 };
 
 class NetHackQtScrollText;
-class NetHackQtMessageWindow : QObject, public NetHackQtWindow {
-       Q_OBJECT
-public:
-       NetHackQtMessageWindow();
-       ~NetHackQtMessageWindow();
+class NetHackQtMessageWindow : QObject, public NetHackQtWindow
+{
+    Q_OBJECT
+  public:
+    NetHackQtMessageWindow();
+    ~NetHackQtMessageWindow();
 
-       virtual QWidget* Widget();
-       virtual void Clear();
-       virtual void Display(bool block);
-       virtual void PutStr(int attr, const char* text);
+    virtual QWidget *Widget();
+    virtual void Clear();
+    virtual void Display(bool block);
+    virtual void PutStr(int attr, const char *text);
 
-       void Scroll(int dx, int dy);
+    void Scroll(int dx, int dy);
 
-       void setMap(NetHackQtMapWindow*);
+    void setMap(NetHackQtMapWindow *);
 
-private:
-       NetHackQtScrollText* list;
-       bool changed;
-       NetHackQtMapWindow* map;
+  private:
+    NetHackQtScrollText *list;
+    bool changed;
+    NetHackQtMapWindow *map;
 
-private slots:
-       void updateFont();
+  private slots:
+    void updateFont();
 };
 
-class NetHackQtLabelledIcon : public QWidget {
-public:
-       NetHackQtLabelledIcon(QWidget* parent, const char* label);
-       NetHackQtLabelledIcon(QWidget* parent, const char* label, const QPixmap& icon);
-
-       enum { NoNum=-99999 };
-       void setLabel(const char*, bool lower=TRUE); // a string
-       void setLabel(const char*, long, const char* tail=""); // a number
-       void setLabel(const char*, long show_value, long comparative_value, const char* tail="");
-       void setIcon(const QPixmap&);
-       virtual void setFont(const QFont&);
-
-       void highlightWhenChanging();
-       void lowIsGood();
-       void dissipateHighlight();
-
-       virtual void show();
-
-protected:
-       void resizeEvent(QResizeEvent*);
-
-private:
-       void initHighlight();
-       void setAlignments();
-       void highlight(const QPalette& highlight);
-       void unhighlight();
-
-       bool low_is_good;
-       int prev_value;
-       int turn_count;         /* last time the value changed */
-       QPalette hl_good;
-       QPalette hl_bad;
-
-       QLabel* label;
-       QLabel* icon;
+class NetHackQtLabelledIcon : public QWidget
+{
+  public:
+    NetHackQtLabelledIcon(QWidget *parent, const char *label);
+    NetHackQtLabelledIcon(QWidget *parent, const char *label,
+                          const QPixmap &icon);
+
+    enum { NoNum = -99999 };
+    void setLabel(const char *, bool lower = TRUE);           // a string
+    void setLabel(const char *, long, const char *tail = ""); // a number
+    void setLabel(const char *, long show_value, long comparative_value,
+                  const char *tail = "");
+    void setIcon(const QPixmap &);
+    virtual void setFont(const QFont &);
+
+    void highlightWhenChanging();
+    void lowIsGood();
+    void dissipateHighlight();
+
+    virtual void show();
+
+  protected:
+    void resizeEvent(QResizeEvent *);
+
+  private:
+    void initHighlight();
+    void setAlignments();
+    void highlight(const QPalette &highlight);
+    void unhighlight();
+
+    bool low_is_good;
+    int prev_value;
+    int turn_count; /* last time the value changed */
+    QPalette hl_good;
+    QPalette hl_bad;
+
+    QLabel *label;
+    QLabel *icon;
 };
 
-class NetHackQtStatusWindow : QWidget, public NetHackQtWindow {
-       Q_OBJECT
-public:
-       NetHackQtStatusWindow();
-
-       virtual QWidget* Widget();
-
-       virtual void Clear();
-       virtual void Display(bool block);
-       virtual void CursorTo(int x,int y);
-       virtual void PutStr(int attr, const char* text);
-
-       void fadeHighlighting();
-
-protected:
-       void resizeEvent(QResizeEvent*);
-
-private slots:
-       void doUpdate();
-
-private:
-       enum { hilight_time=1 };
-
-       QPixmap p_str;
-       QPixmap p_dex;
-       QPixmap p_con;
-       QPixmap p_int;
-       QPixmap p_wis;
-       QPixmap p_cha;
-
-       QPixmap p_chaotic;
-       QPixmap p_neutral;
-       QPixmap p_lawful;
-
-       QPixmap p_satiated;
-       QPixmap p_hungry;
-
-       QPixmap p_confused;
-       QPixmap p_sick_fp;
-       QPixmap p_sick_il;
-       QPixmap p_blind;
-       QPixmap p_stunned;
-       QPixmap p_hallu;
-
-       QPixmap p_encumber[5];
-
-       NetHackQtLabelledIcon name;
-       NetHackQtLabelledIcon dlevel;
-
-       NetHackQtLabelledIcon str;
-       NetHackQtLabelledIcon dex;
-       NetHackQtLabelledIcon con;
-       NetHackQtLabelledIcon intel;
-       NetHackQtLabelledIcon wis;
-       NetHackQtLabelledIcon cha;
-
-       NetHackQtLabelledIcon gold;
-       NetHackQtLabelledIcon hp;
-       NetHackQtLabelledIcon power;
-       NetHackQtLabelledIcon ac;
-       NetHackQtLabelledIcon level;
-       NetHackQtLabelledIcon exp;
-       NetHackQtLabelledIcon align;
-
-       NetHackQtLabelledIcon time;
-       NetHackQtLabelledIcon score;
-
-       NetHackQtLabelledIcon hunger;
-       NetHackQtLabelledIcon confused;
-       NetHackQtLabelledIcon sick_fp;
-       NetHackQtLabelledIcon sick_il;
-       NetHackQtLabelledIcon blind;
-       NetHackQtLabelledIcon stunned;
-       NetHackQtLabelledIcon hallu;
-       NetHackQtLabelledIcon encumber;
-
-       QFrame hline1;
-       QFrame hline2;
-       QFrame hline3;
-
-       int cursy;
-
-       bool first_set;
-
-       void nullOut();
-       void updateStats();
-       void checkTurnEvents();
+class NetHackQtStatusWindow : QWidget, public NetHackQtWindow
+{
+    Q_OBJECT
+  public:
+    NetHackQtStatusWindow();
+
+    virtual QWidget *Widget();
+
+    virtual void Clear();
+    virtual void Display(bool block);
+    virtual void CursorTo(int x, int y);
+    virtual void PutStr(int attr, const char *text);
+
+    void fadeHighlighting();
+
+  protected:
+    void resizeEvent(QResizeEvent *);
+
+  private slots:
+    void doUpdate();
+
+  private:
+    enum { hilight_time = 1 };
+
+    QPixmap p_str;
+    QPixmap p_dex;
+    QPixmap p_con;
+    QPixmap p_int;
+    QPixmap p_wis;
+    QPixmap p_cha;
+
+    QPixmap p_chaotic;
+    QPixmap p_neutral;
+    QPixmap p_lawful;
+
+    QPixmap p_satiated;
+    QPixmap p_hungry;
+
+    QPixmap p_confused;
+    QPixmap p_sick_fp;
+    QPixmap p_sick_il;
+    QPixmap p_blind;
+    QPixmap p_stunned;
+    QPixmap p_hallu;
+
+    QPixmap p_encumber[5];
+
+    NetHackQtLabelledIcon name;
+    NetHackQtLabelledIcon dlevel;
+
+    NetHackQtLabelledIcon str;
+    NetHackQtLabelledIcon dex;
+    NetHackQtLabelledIcon con;
+    NetHackQtLabelledIcon intel;
+    NetHackQtLabelledIcon wis;
+    NetHackQtLabelledIcon cha;
+
+    NetHackQtLabelledIcon gold;
+    NetHackQtLabelledIcon hp;
+    NetHackQtLabelledIcon power;
+    NetHackQtLabelledIcon ac;
+    NetHackQtLabelledIcon level;
+    NetHackQtLabelledIcon exp;
+    NetHackQtLabelledIcon align;
+
+    NetHackQtLabelledIcon time;
+    NetHackQtLabelledIcon score;
+
+    NetHackQtLabelledIcon hunger;
+    NetHackQtLabelledIcon confused;
+    NetHackQtLabelledIcon sick_fp;
+    NetHackQtLabelledIcon sick_il;
+    NetHackQtLabelledIcon blind;
+    NetHackQtLabelledIcon stunned;
+    NetHackQtLabelledIcon hallu;
+    NetHackQtLabelledIcon encumber;
+
+    QFrame hline1;
+    QFrame hline2;
+    QFrame hline3;
+
+    int cursy;
+
+    bool first_set;
+
+    void nullOut();
+    void updateStats();
+    void checkTurnEvents();
 };
 
-class NetHackQtMenuDialog : public QDialog {
-       Q_OBJECT
-public:
-       NetHackQtMenuDialog();
+class NetHackQtMenuDialog : public QDialog
+{
+    Q_OBJECT
+  public:
+    NetHackQtMenuDialog();
 
-       void Accept();
-       void Reject();
-       void SetResult(int);
+    void Accept();
+    void Reject();
+    void SetResult(int);
 
-       virtual void done(int);
+    virtual void done(int);
 
-protected:
-       void resizeEvent(QResizeEvent*);
+  protected:
+    void resizeEvent(QResizeEvent *);
 
-signals:
-       void Resized();
+  signals:
+    void Resized();
 };
 
-
-class NetHackQtMenuWindow : public QTableView, public NetHackQtWindow {
-       Q_OBJECT
-public:
-       NetHackQtMenuWindow(NetHackQtKeyBuffer&);
-       ~NetHackQtMenuWindow();
-
-       virtual QWidget* Widget();
-
-       virtual void StartMenu();
-       virtual void AddMenu(int glyph, const ANY_P* identifier, char ch, char gch, int attr,
-                       const char* str, bool presel);
-       virtual void EndMenu(const char* prompt);
-       virtual int SelectMenu(int how, MENU_ITEM_P **menu_list);
-
-public slots:
-       void All();
-       void ChooseNone();
-       void Invert();
-       void Search();
-
-       void Layout();
-       void ToggleSelect(int);
-
-protected:
-       virtual void keyPressEvent(QKeyEvent*);
-       //virtual void mouseDoubleClickEvent(QMouseEvent*);
-       virtual void mousePressEvent(QMouseEvent*);
-       virtual void mouseReleaseEvent(QMouseEvent*);
-       virtual void mouseMoveEvent(QMouseEvent*);
-       virtual void focusOutEvent(QFocusEvent*);
-       virtual void focusInEvent(QFocusEvent*);
-
-       virtual void paintCell(QPainter*, int, int);
-       virtual int cellWidth(int col);
-
-private:
-       struct MenuItem {
-               MenuItem();
-               ~MenuItem();
-
-               int glyph;
-               ANY_P identifier;
-               int attr;
-               const char* str;
-               int count;
-               char ch;
-               bool selected;
-
-               bool Selectable() const { return identifier.a_void!=0; }
-       };
-
-       QArray<MenuItem> item;
-
-       int itemcount;
-       int str_width;
-       bool str_fixed;
-       int next_accel;
-
-       NetHackQtKeyBuffer& keysource;
-
-       NetHackQtMenuDialog* dialog;
-
-       QPushButton* ok;
-       QPushButton* cancel;
-       QPushButton* all;
-       QPushButton* none;
-       QPushButton* invert;
-       QPushButton* search;
-       QLabel prompt;
-
-       int how;
-
-       bool has_glyphs;
-
-       int pressed;
-       bool was_sel;
+class NetHackQtMenuWindow : public QTableView, public NetHackQtWindow
+{
+    Q_OBJECT
+  public:
+    NetHackQtMenuWindow(NetHackQtKeyBuffer &);
+    ~NetHackQtMenuWindow();
+
+    virtual QWidget *Widget();
+
+    virtual void StartMenu();
+    virtual void AddMenu(int glyph, const ANY_P *identifier, char ch,
+                         char gch, int attr, const char *str, bool presel);
+    virtual void EndMenu(const char *prompt);
+    virtual int SelectMenu(int how, MENU_ITEM_P **menu_list);
+
+  public slots:
+    void All();
+    void ChooseNone();
+    void Invert();
+    void Search();
+
+    void Layout();
+    void ToggleSelect(int);
+
+  protected:
+    virtual void keyPressEvent(QKeyEvent *);
+    // virtual void mouseDoubleClickEvent(QMouseEvent*);
+    virtual void mousePressEvent(QMouseEvent *);
+    virtual void mouseReleaseEvent(QMouseEvent *);
+    virtual void mouseMoveEvent(QMouseEvent *);
+    virtual void focusOutEvent(QFocusEvent *);
+    virtual void focusInEvent(QFocusEvent *);
+
+    virtual void paintCell(QPainter *, int, int);
+    virtual int cellWidth(int col);
+
+  private:
+    struct MenuItem {
+        MenuItem();
+        ~MenuItem();
+
+        int glyph;
+        ANY_P identifier;
+        int attr;
+        const char *str;
+        int count;
+        char ch;
+        bool selected;
+
+        bool
+        Selectable() const
+        {
+            return identifier.a_void != 0;
+        }
+    };
+
+    QArray<MenuItem> item;
+
+    int itemcount;
+    int str_width;
+    bool str_fixed;
+    int next_accel;
+
+    NetHackQtKeyBuffer &keysource;
+
+    NetHackQtMenuDialog *dialog;
+
+    QPushButton *ok;
+    QPushButton *cancel;
+    QPushButton *all;
+    QPushButton *none;
+    QPushButton *invert;
+    QPushButton *search;
+    QLabel prompt;
+
+    int how;
+
+    bool has_glyphs;
+
+    int pressed;
+    bool was_sel;
 };
 
 class NetHackQtTextListBox;
 
-class NetHackQtRIP : public QWidget {
-private:
-       static QPixmap* pixmap;
-       char** line;
-       int riplines;
+class NetHackQtRIP : public QWidget
+{
+  private:
+    static QPixmap *pixmap;
+    char **line;
+    int riplines;
 
-public:
-       NetHackQtRIP(QWidget* parent);
+  public:
+    NetHackQtRIP(QWidget *parent);
 
-       void setLines(char** l, int n);
+    void setLines(char **l, int n);
 
-protected:
-       virtual void paintEvent(QPaintEvent* event);
-       QSize sizeHint() const;
+  protected:
+    virtual void paintEvent(QPaintEvent *event);
+    QSize sizeHint() const;
 };
 
+class NetHackQtTextWindow : public QDialog, public NetHackQtWindow
+{
+    Q_OBJECT
+  public:
+    NetHackQtTextWindow(NetHackQtKeyBuffer &);
+    ~NetHackQtTextWindow();
 
-class NetHackQtTextWindow : public QDialog, public NetHackQtWindow {
-       Q_OBJECT
-public:
-       NetHackQtTextWindow(NetHackQtKeyBuffer&);
-       ~NetHackQtTextWindow();
-
-       virtual QWidget* Widget();
+    virtual QWidget *Widget();
 
-       virtual void Clear();
-       virtual bool Destroy();
-       virtual void Display(bool block);
-       virtual void PutStr(int attr, const char* text);
-       virtual void UseRIP(int how, time_t when);
+    virtual void Clear();
+    virtual bool Destroy();
+    virtual void Display(bool block);
+    virtual void PutStr(int attr, const char *text);
+    virtual void UseRIP(int how, time_t when);
 
-public slots:
-       void Search();
+  public slots:
+    void Search();
 
-protected:
-       virtual void done(int);
-       virtual void keyPressEvent(QKeyEvent*);
+  protected:
+    virtual void done(int);
+    virtual void keyPressEvent(QKeyEvent *);
 
-private slots:
-       void doUpdate();
+  private slots:
+    void doUpdate();
 
-private:
-       NetHackQtKeyBuffer& keysource;
+  private:
+    NetHackQtKeyBuffer &keysource;
 
-       bool use_rip;
-       bool str_fixed;
+    bool use_rip;
+    bool str_fixed;
 
-       QPushButton ok;
-       QPushButton search;
-       NetHackQtTextListBox* lines;
+    QPushButton ok;
+    QPushButton search;
+    NetHackQtTextListBox *lines;
 
-       NetHackQtRIP rip;
+    NetHackQtRIP rip;
 };
 
-class NetHackQtMenuOrTextWindow : public NetHackQtWindow {
-private:
-       NetHackQtWindow* actual;
-       NetHackQtKeyBuffer& keysource;
-
-public:
-       NetHackQtMenuOrTextWindow(NetHackQtKeyBuffer&);
-
-       virtual QWidget* Widget();
-
-       // Text
-       virtual void Clear();
-       virtual bool Destroy();
-       virtual void Display(bool block);
-       virtual void PutStr(int attr, const char* text);
-
-       // Menu
-       virtual void StartMenu();
-       virtual void AddMenu(int glyph, const ANY_P* identifier, char ch, char gch, int attr,
-                       const char* str, bool presel);
-       virtual void EndMenu(const char* prompt);
-       virtual int SelectMenu(int how, MENU_ITEM_P **menu_list);
-
+class NetHackQtMenuOrTextWindow : public NetHackQtWindow
+{
+  private:
+    NetHackQtWindow *actual;
+    NetHackQtKeyBuffer &keysource;
+
+  public:
+    NetHackQtMenuOrTextWindow(NetHackQtKeyBuffer &);
+
+    virtual QWidget *Widget();
+
+    // Text
+    virtual void Clear();
+    virtual bool Destroy();
+    virtual void Display(bool block);
+    virtual void PutStr(int attr, const char *text);
+
+    // Menu
+    virtual void StartMenu();
+    virtual void AddMenu(int glyph, const ANY_P *identifier, char ch,
+                         char gch, int attr, const char *str, bool presel);
+    virtual void EndMenu(const char *prompt);
+    virtual int SelectMenu(int how, MENU_ITEM_P **menu_list);
 };
 
-class NetHackQtDelay : QObject {
-private:
-       int msec;
+class NetHackQtDelay : QObject
+{
+  private:
+    int msec;
 
-public:
-       NetHackQtDelay(int ms);
-       void wait();
-       virtual void timerEvent(QTimerEvent* timer);
+  public:
+    NetHackQtDelay(int ms);
+    void wait();
+    virtual void timerEvent(QTimerEvent *timer);
 };
 
+class NetHackQtInvUsageWindow : public QWidget
+{
+  public:
+    NetHackQtInvUsageWindow(QWidget *parent);
+    virtual void paintEvent(QPaintEvent *);
 
-class NetHackQtInvUsageWindow : public QWidget {
-public:
-       NetHackQtInvUsageWindow(QWidget* parent);
-       virtual void paintEvent(QPaintEvent*);
-private:
-       void drawWorn(QPainter& painter, obj*, int x, int y, bool canbe=TRUE);
+  private:
+    void drawWorn(QPainter &painter, obj *, int x, int y, bool canbe = TRUE);
 };
 
 // This class is the main widget for NetHack
@@ -705,75 +741,78 @@ private:
 #include "qt_kde0.h"
 #endif
 
-class NetHackQtMainWindow : public KTopLevelWidget {
-       Q_OBJECT
-public:
-       NetHackQtMainWindow(NetHackQtKeyBuffer&);
+class NetHackQtMainWindow : public KTopLevelWidget
+{
+    Q_OBJECT
+  public:
+    NetHackQtMainWindow(NetHackQtKeyBuffer &);
 
-       void AddMessageWindow(NetHackQtMessageWindow* window);
-       void AddMapWindow(NetHackQtMapWindow* window);
-       void AddStatusWindow(NetHackQtStatusWindow* window);
-       void RemoveWindow(NetHackQtWindow* window);
-       void updateInventory();
+    void AddMessageWindow(NetHackQtMessageWindow *window);
+    void AddMapWindow(NetHackQtMapWindow *window);
+    void AddStatusWindow(NetHackQtStatusWindow *window);
+    void RemoveWindow(NetHackQtWindow *window);
+    void updateInventory();
 
-       void fadeHighlighting();
+    void fadeHighlighting();
 
-public slots:
-       void doMenuItem(int);
-       void doKeys(const QString&);
+  public slots:
+    void doMenuItem(int);
+    void doKeys(const QString &);
 
-protected:
-       virtual void resizeEvent(QResizeEvent*);
-       virtual void keyPressEvent(QKeyEvent*);
-       virtual void keyReleaseEvent(QKeyEvent* event);
-       virtual void closeEvent(QCloseEvent*);
+  protected:
+    virtual void resizeEvent(QResizeEvent *);
+    virtual void keyPressEvent(QKeyEvent *);
+    virtual void keyReleaseEvent(QKeyEvent *event);
+    virtual void closeEvent(QCloseEvent *);
 
-private slots:
-       void layout();
-       void raiseMap();
-       void zoomMap();
-       void raiseMessages();
-       void raiseStatus();
+  private slots:
+    void layout();
+    void raiseMap();
+    void zoomMap();
+    void raiseMessages();
+    void raiseStatus();
 
-private:
-       void ShowIfReady();
+  private:
+    void ShowIfReady();
 
 #ifdef KDE
-       KMenuBar* menubar;
+    KMenuBar *menubar;
 #else
-       QMenuBar* menubar;
+    QMenuBar *menubar;
 #endif
-       NetHackQtMessageWindow* message;
-       NetHackQtMapWindow* map;
-       NetHackQtStatusWindow* status;
-       NetHackQtInvUsageWindow* invusage;
+    NetHackQtMessageWindow *message;
+    NetHackQtMapWindow *map;
+    NetHackQtStatusWindow *status;
+    NetHackQtInvUsageWindow *invusage;
 
-       NetHackQtKeyBuffer& keysink;
-       QWidgetStack* stack;
-       int dirkey;
+    NetHackQtKeyBuffer &keysink;
+    QWidgetStack *stack;
+    int dirkey;
 
-       const char* *macro;
+    const char **macro;
 };
 
-class NetHackQtYnDialog : QDialog {
-       Q_OBJECT
-private:
-       const char* question;
-       const char* choices;
-       char def;
-       NetHackQtKeyBuffer& keysource;
+class NetHackQtYnDialog : QDialog
+{
+    Q_OBJECT
+  private:
+    const char *question;
+    const char *choices;
+    char def;
+    NetHackQtKeyBuffer &keysource;
 
-protected:
-       virtual void keyPressEvent(QKeyEvent*);
-       virtual void done(int);
+  protected:
+    virtual void keyPressEvent(QKeyEvent *);
+    virtual void done(int);
 
-private slots:
-       void doneItem(int);
+  private slots:
+    void doneItem(int);
 
-public:
-       NetHackQtYnDialog(NetHackQtKeyBuffer& keysource,const char*,const char*,char);
+  public:
+    NetHackQtYnDialog(NetHackQtKeyBuffer &keysource, const char *,
+                      const char *, char);
 
-       char Exec();
+    char Exec();
 };
 
 #ifdef KDE
@@ -784,66 +823,68 @@ public:
 #define NetHackQtBindBase QApplication
 #endif
 
-class NetHackQtBind : NetHackQtBindBase {
-private:
-       // Single-instance preservation...
-       NetHackQtBind(int& argc, char** argv);
-
-       static NetHackQtBind* instance;
-
-       static NetHackQtKeyBuffer keybuffer;
-       static NetHackQtClickBuffer clickbuffer;
-
-       static QWidget* splash;
-       static NetHackQtMainWindow* main;
-
-public:
-       static void qt_init_nhwindows(int* argc, char** argv);
-       static void qt_player_selection();
-       static void qt_askname();
-       static void qt_get_nh_event();
-       static void qt_exit_nhwindows(const char *);
-       static void qt_suspend_nhwindows(const char *);
-       static void qt_resume_nhwindows();
-       static winid qt_create_nhwindow(int type);
-       static void qt_clear_nhwindow(winid wid);
-       static void qt_display_nhwindow(winid wid, BOOLEAN_P block);
-       static void qt_destroy_nhwindow(winid wid);
-       static void qt_curs(winid wid, int x, int y);
-       static void qt_putstr(winid wid, int attr, const char *text);
-       static void qt_display_file(const char *filename, BOOLEAN_P must_exist);
-       static void qt_start_menu(winid wid);
-       static void qt_add_menu(winid wid, int glyph,
-               const ANY_P * identifier, CHAR_P ch, CHAR_P gch, int attr,
-               const char *str, BOOLEAN_P presel);
-       static void qt_end_menu(winid wid, const char *prompt);
-       static int qt_select_menu(winid wid, int how, MENU_ITEM_P **menu_list);
-       static void qt_update_inventory();
-       static void qt_mark_synch();
-       static void qt_wait_synch();
-
-       static void qt_cliparound(int x, int y);
-       static void qt_cliparound_window(winid wid, int x, int y);
-       static void qt_print_glyph(winid wid,XCHAR_P x,XCHAR_P y,int glyph);
-       static void qt_raw_print(const char *str);
-       static void qt_raw_print_bold(const char *str);
-       static int qt_nhgetch();
-       static int qt_nh_poskey(int *x, int *y, int *mod);
-       static void qt_nhbell();
-       static int qt_doprev_message();
-       static char qt_yn_function(const char *question, const char *choices, CHAR_P def);
-       static void qt_getlin(const char *prompt, char *line);
-       static int qt_get_ext_cmd();
-       static void qt_number_pad(int);
-       static void qt_delay_output();
-       static void qt_start_screen();
-       static void qt_end_screen();
-
-       static void qt_outrip(winid wid, int how, time_t when);
-       static int qt_kbhit();
-
-private:
-       virtual bool notify(QObject *receiver, QEvent *event);
+class NetHackQtBind : NetHackQtBindBase
+{
+  private:
+    // Single-instance preservation...
+    NetHackQtBind(int &argc, char **argv);
+
+    static NetHackQtBind *instance;
+
+    static NetHackQtKeyBuffer keybuffer;
+    static NetHackQtClickBuffer clickbuffer;
+
+    static QWidget *splash;
+    static NetHackQtMainWindow *main;
+
+  public:
+    static void qt_init_nhwindows(int *argc, char **argv);
+    static void qt_player_selection();
+    static void qt_askname();
+    static void qt_get_nh_event();
+    static void qt_exit_nhwindows(const char *);
+    static void qt_suspend_nhwindows(const char *);
+    static void qt_resume_nhwindows();
+    static winid qt_create_nhwindow(int type);
+    static void qt_clear_nhwindow(winid wid);
+    static void qt_display_nhwindow(winid wid, BOOLEAN_P block);
+    static void qt_destroy_nhwindow(winid wid);
+    static void qt_curs(winid wid, int x, int y);
+    static void qt_putstr(winid wid, int attr, const char *text);
+    static void qt_display_file(const char *filename, BOOLEAN_P must_exist);
+    static void qt_start_menu(winid wid);
+    static void qt_add_menu(winid wid, int glyph, const ANY_P *identifier,
+                            CHAR_P ch, CHAR_P gch, int attr, const char *str,
+                            BOOLEAN_P presel);
+    static void qt_end_menu(winid wid, const char *prompt);
+    static int qt_select_menu(winid wid, int how, MENU_ITEM_P **menu_list);
+    static void qt_update_inventory();
+    static void qt_mark_synch();
+    static void qt_wait_synch();
+
+    static void qt_cliparound(int x, int y);
+    static void qt_cliparound_window(winid wid, int x, int y);
+    static void qt_print_glyph(winid wid, XCHAR_P x, XCHAR_P y, int glyph);
+    static void qt_raw_print(const char *str);
+    static void qt_raw_print_bold(const char *str);
+    static int qt_nhgetch();
+    static int qt_nh_poskey(int *x, int *y, int *mod);
+    static void qt_nhbell();
+    static int qt_doprev_message();
+    static char qt_yn_function(const char *question, const char *choices,
+                               CHAR_P def);
+    static void qt_getlin(const char *prompt, char *line);
+    static int qt_get_ext_cmd();
+    static void qt_number_pad(int);
+    static void qt_delay_output();
+    static void qt_start_screen();
+    static void qt_end_screen();
+
+    static void qt_outrip(winid wid, int how, time_t when);
+    static int qt_kbhit();
+
+  private:
+    virtual bool notify(QObject *receiver, QEvent *event);
 };
 
 #endif
index fcb4b8d8e16f586a3118c10b7d469fd28302846a..0d97bfe02a8caa252fd47ef67534d287df23f5eb 100644 (file)
@@ -1,130 +1,4 @@
-/* XPM */
-static const char *blind_xpm[] = {
-/* width height ncolors chars_per_pixel */
-"40 40 5 1",
-/* colors */
-"  c #000000",
-". c None",
-"X c #909090",
-"o c #606060",
-"O c #303030",
-/* pixels */
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"....ooooooooooooooooooooooooooooooooX...",
-"....                                o...",
-"....                                o...",
-"....                                o...",
-"....                                o...",
-"......o            ..o            ......",
-"......X           O..X           O......",
-".......           o...           o......",
-".......o          ....o          .......",
-"........O        X.....O        X.......",
-".........O      X.......O      X........",
-"..........o   OX.........o   OX.........",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................",
-"........................................"
-};
-/* XPM */
-static const char *cha_xpm[] = {
-/* width height ncolors chars_per_pixel */
-"40 40 14 1",
-/* colors */
-"  c #F85848",
-". c #949E9E",
-"X c #F8B090",
-"o c #E00028",
-"O c #D4D4D4",
-"+ c None",
-"@ c #B0B0B0",
-"# c #F82C24",
-"$ c #F89E6C",
-"% c #FF0000",
-"& c #909090",
-"* c #FFFFFF",
-"= c #CEAA90",
-"- c #DADAB6",
-/* pixels */
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"+++++++++++++++=#%#=+=#%% ++++++++++++++",
-"++++++++++++++ %O%%%#%$$%o%=++++++++++++",
-"+++++++++++++# +#%%o%%o%%%%% +++++++++++",
-"+++++++++++ %%%%%%%%%%%%%%%%o#=+++++++++",
-"+++++++++ o%%%%%%%%%%%%%%%%%%%%# +++++++",
-"++++++ #%%%%%%o%%%o%%o%%o%o%%%%%o%o  +++",
-"++=#%%o%%%#= =*+**O*+**O*+- = =%%%%#@+++",
-"++++ %=++*+*+**O****O****O*O*O*OO%=+++++",
-"+++++.%=OO+*O*OO****+****+*O*+O&%=@+++++",
-"++++++=%=*OO+**O**O*O**O*O*OO+$%=+++++++",
-"+++++++#% +*OOOO****+****@O+*#%=++++++++",
-"++++++++#%#*+**+O+OO+O+OOO*O#o#+++++++++",
-"+++++++++o% O**+****O****O*#%%=+++++++++",
-"+++++++++ %%#O*O****+****+ %o#++++++++++",
-"++++++++++o%% XO*O**O*O**#%%%+++++++++++",
-"++++++++++ %%%o%$-**+**$%%%%=+++++++++++",
-"+++++++++++o%%$X$%%%%%%#= o#++++++++++++",
-"++++++++++@ %%%o#O$$+$$$%%%=++++++++++++",
-"++++++++++++#o%%%%%%%%o%%%=@++++++++++++",
-"+++++++++++++ %%%%%%%%%%o=++++++++++++++",
-"+++++++++++++++= &  &  @++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++",
-"++++++++++++++++++++++++++++++++++++++++"
-};
-/* XPM */
-static const char *chaotic_xpm[] = {
-/* width height ncolors chars_per_pixel */
-"40 40 9 1",
-/* colors */
-"  c #000000",
-". c #5C7A7A",
-"X c None",
-"o c #B0B0B0",
-"O c #909090",
-"+ c #788C8C",
-"@ c #606060",
-"# c #FFFFFF",
-"$ c #303030",
+/* clang-format off */
 /* pixels */
 "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
 "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
@@ -1404,3 +1278,4 @@ static const char *wis_xpm[] = {
 "oooooooooooooooooooooooooooooooooooooooo",
 "oooooooooooooooooooooooooooooooooooooooo"
 };
+/* clang-format on */
index ac65fc6b313fef27dcc0eb12d66b4577cb4fa155..752cab9f9c213b54101a1a825882c23e949f70e6 100644 (file)
 #ifndef QTEXT_H
 #define QTEXT_H
 
-#define N_HDR  16              /* Maximum number of categories */
-                               /* (i.e., num roles + 1) */
-#define LEN_HDR 3              /* Maximum length of a category name */
+#define N_HDR 16 /* Maximum number of categories */
+/* (i.e., num roles + 1) */
+#define LEN_HDR 3 /* Maximum length of a category name */
 
 /* quest text message buffer sizes; used to be hardcoded as 80 and 128, but
    have been expanded to allow some slop for block message summary lines */
-#define QTEXT_OUTSIZ   200     /* used only by nethack */
+#define QTEXT_OUTSIZ 200 /* used only by nethack */
 
 struct qtmsg {
-       int     msgnum;
-       char    delivery;
-       long    offset,
-               size, summary_size;
+    int msgnum;
+    char delivery;
+    long offset, size, summary_size;
 };
 
-#ifdef MAKEDEFS_C      /***** MAKEDEFS *****/
+#ifdef MAKEDEFS_C /***** MAKEDEFS *****/
 
-#define N_MSG  100             /* arbitrary */
+#define N_MSG 100 /* arbitrary */
 
 struct msghdr {
-       int     n_msg;
-       struct  qtmsg   qt_msg[N_MSG];
+    int n_msg;
+    struct qtmsg qt_msg[N_MSG];
 };
 
-struct qthdr {
-       int     n_hdr;
-       char    id[N_HDR][LEN_HDR];
-       long    offset[N_HDR];
+struct qthdr {
+    int n_hdr;
+    char id[N_HDR][LEN_HDR];
+    long offset[N_HDR];
 };
 
 /* Error message macros */
-#define CREC_IN_MSG    "Control record encountered during message - line %d\n"
-#define DUP_MSG                "Duplicate message number at line %d\n"
-#define END_NOT_IN_MSG "End record encountered before message - line %d\n"
-#define TEXT_NOT_IN_MSG        "Text encountered outside message - line %d\n"
-#define UNREC_CREC     "Unrecognized Control record at line %d\n"
-#define MAL_SUM                "Malformed summary in End record - line %d\n"
-#define DUMB_SUM       "Summary for single line message is useless - line %d\n"
-#define CTRL_TRUNC     "Control record truncated at line %d\n"
-#define TEXT_TRUNC     "Text record truncated at line %d\n"
-#define OUT_OF_HEADERS "Too many message types (line %d)\nAdjust N_HDR in qtext.h and recompile.\n"
-#define OUT_OF_MESSAGES "Too many messages in class (line %d)\nAdjust N_MSG in qtext.h and recompile.\n"
-#define QLINE_TOO_LONG "Line %d too long; truncated\n"
-
-
-#else  /***** !MAKEDEFS *****/
-
-struct qtlists {
-       struct  qtmsg   *common,
-#if 0  /* UNUSED but available */
+#define CREC_IN_MSG "Control record encountered during message - line %d\n"
+#define DUP_MSG "Duplicate message number at line %d\n"
+#define END_NOT_IN_MSG "End record encountered before message - line %d\n"
+#define TEXT_NOT_IN_MSG "Text encountered outside message - line %d\n"
+#define UNREC_CREC "Unrecognized Control record at line %d\n"
+#define MAL_SUM "Malformed summary in End record - line %d\n"
+#define DUMB_SUM "Summary for single line message is useless - line %d\n"
+#define CTRL_TRUNC "Control record truncated at line %d\n"
+#define TEXT_TRUNC "Text record truncated at line %d\n"
+#define OUT_OF_HEADERS                                               \
+    "Too many message types (line %d)\nAdjust N_HDR in qtext.h and " \
+    "recompile.\n"
+#define OUT_OF_MESSAGES                                                  \
+    "Too many messages in class (line %d)\nAdjust N_MSG in qtext.h and " \
+    "recompile.\n"
+#define QLINE_TOO_LONG "Line %d too long; truncated\n"
+
+#else /***** !MAKEDEFS *****/
+
+struct qtlists {
+    struct qtmsg *common,
+#if 0 /* UNUSED but available */
                        *chrace,
 #endif
-                       *chrole;
+        *chrole;
 };
 
-
 /*
  *     Quest message defines.  Used in quest.c to trigger off "realistic"
  *     dialogue to the player.
  */
-#define QT_FIRSTTIME    1
-#define QT_NEXTTIME     2
-#define QT_OTHERTIME    3
+#define QT_FIRSTTIME 1
+#define QT_NEXTTIME 2
+#define QT_OTHERTIME 3
 
-#define QT_GUARDTALK    5      /* 5 random things guards say before quest */
-#define QT_GUARDTALK2  10      /* 5 random things guards say after quest */
+#define QT_GUARDTALK 5   /* 5 random things guards say before quest */
+#define QT_GUARDTALK2 10 /* 5 random things guards say after quest */
 
-#define QT_FIRSTLEADER 15
-#define QT_NEXTLEADER  16
-#define QT_OTHERLEADER 17
-#define QT_LASTLEADER  18
-#define QT_BADLEVEL    19
-#define QT_BADALIGN    20
-#define QT_ASSIGNQUEST 21
+#define QT_FIRSTLEADER 15
+#define QT_NEXTLEADER 16
+#define QT_OTHERLEADER 17
+#define QT_LASTLEADER 18
+#define QT_BADLEVEL 19
+#define QT_BADALIGN 20
+#define QT_ASSIGNQUEST 21
 
-#define QT_ENCOURAGE   25      /* 1-10 random encouragement messages */
+#define QT_ENCOURAGE 25 /* 1-10 random encouragement messages */
 
-#define QT_FIRSTLOCATE 35
-#define QT_NEXTLOCATE  36
+#define QT_FIRSTLOCATE 35
+#define QT_NEXTLOCATE 36
 
-#define QT_FIRSTGOAL   40
-#define QT_NEXTGOAL    41
+#define QT_FIRSTGOAL 40
+#define QT_NEXTGOAL 41
 
 #define QT_FIRSTNEMESIS 50
-#define QT_NEXTNEMESIS 51
+#define QT_NEXTNEMESIS 51
 #define QT_OTHERNEMESIS 52
-#define QT_NEMWANTSIT  53      /* you somehow got the artifact */
+#define QT_NEMWANTSIT 53 /* you somehow got the artifact */
 
-#define QT_DISCOURAGE  60      /* 1-10 random maledictive messages */
+#define QT_DISCOURAGE 60 /* 1-10 random maledictive messages */
 
-#define QT_GOTIT       70
+#define QT_GOTIT 70
 
-#define QT_KILLEDNEM   80
-#define QT_OFFEREDIT   81
-#define QT_OFFEREDIT2  82
+#define QT_KILLEDNEM 80
+#define QT_OFFEREDIT 81
+#define QT_OFFEREDIT2 82
 
-#define QT_POSTHANKS   90
-#define QT_HASAMULET   91
+#define QT_POSTHANKS 90
+#define QT_HASAMULET 91
 
 /*
  *     Message defines for common text used in maledictions.
  */
-#define COMMON_ID      "-"     /* Common message id value */
+#define COMMON_ID "-" /* Common message id value */
 
-#define QT_ANGELIC     10
-#define QTN_ANGELIC    10
+#define QT_ANGELIC 10
+#define QTN_ANGELIC 10
 
-#define QT_DEMONIC     30
-#define QTN_DEMONIC    20
+#define QT_DEMONIC 30
+#define QTN_DEMONIC 20
 
-#define QT_BANISHED    60
-#endif /***** !MAKEDEFS *****/
+#define QT_BANISHED 60
+#endif /***** !MAKEDEFS *****/
 
 #endif /* QTEXT_H */
index 07ecea7f6d462d943dda61feaa07623b91c5d325..56b0f09d91f3715d9a0458086be17ba11bf9bd22 100644 (file)
 class QScrollBar;
 class QCornerSquare;
 
-
 class QtTableView : public QFrame
 {
     Q_OBJECT
-public:
-    virtual void setBackgroundColor( const QColor & );
-    virtual void setPalette( const QPalette & );
-    void       show();
-
-    void       repaint( bool erase=TRUE );
-    void       repaint( int x, int y, int w, int h, bool erase=TRUE );
-    void       repaint( const QRect &, bool erase=TRUE );
-
-protected:
-    QtTableView( QWidget *parent=0, const char *name=0, WFlags f=0 );
-   ~QtTableView();
-
-    int                numRows()       const;
-    virtual void setNumRows( int );
-    int                numCols()       const;
-    virtual void setNumCols( int );
-
-    int                topCell()       const;
-    virtual void setTopCell( int row );
-    int                leftCell()      const;
-    virtual void setLeftCell( int col );
-    virtual void setTopLeftCell( int row, int col );
-
-    int                xOffset()       const;
-    virtual void setXOffset( int );
-    int                yOffset()       const;
-    virtual void setYOffset( int );
-    virtual void setOffset( int x, int y, bool updateScrBars = TRUE );
-
-    virtual int cellWidth( int col );
-    virtual int cellHeight( int row );
-    int                cellWidth()     const;
-    int                cellHeight()    const;
-    virtual void setCellWidth( int );
-    virtual void setCellHeight( int );
+  public:
+    virtual void setBackgroundColor(const QColor &);
+    virtual void setPalette(const QPalette &);
+    void show();
+
+    void repaint(bool erase = TRUE);
+    void repaint(int x, int y, int w, int h, bool erase = TRUE);
+    void repaint(const QRect &, bool erase = TRUE);
+
+  protected:
+    QtTableView(QWidget *parent = 0, const char *name = 0, WFlags f = 0);
+    ~QtTableView();
+
+    int numRows() const;
+    virtual void setNumRows(int);
+    int numCols() const;
+    virtual void setNumCols(int);
+
+    int topCell() const;
+    virtual void setTopCell(int row);
+    int leftCell() const;
+    virtual void setLeftCell(int col);
+    virtual void setTopLeftCell(int row, int col);
+
+    int xOffset() const;
+    virtual void setXOffset(int);
+    int yOffset() const;
+    virtual void setYOffset(int);
+    virtual void setOffset(int x, int y, bool updateScrBars = TRUE);
+
+    virtual int cellWidth(int col);
+    virtual int cellHeight(int row);
+    int cellWidth() const;
+    int cellHeight() const;
+    virtual void setCellWidth(int);
+    virtual void setCellHeight(int);
 
     virtual int totalWidth();
     virtual int totalHeight();
 
-    uint       tableFlags()    const;
-    bool       testTableFlags( uint f ) const;
-    virtual void setTableFlags( uint f );
-    void       clearTableFlags( uint f = ~0 );
+    uint tableFlags() const;
+    bool testTableFlags(uint f) const;
+    virtual void setTableFlags(uint f);
+    void clearTableFlags(uint f = ~0);
 
-    bool       autoUpdate()     const;
-    virtual void setAutoUpdate( bool );
+    bool autoUpdate() const;
+    virtual void setAutoUpdate(bool);
 
-    void       updateCell( int row, int column, bool erase=TRUE );
+    void updateCell(int row, int column, bool erase = TRUE);
 
-    QRect      cellUpdateRect() const;
-    QRect      viewRect()       const;
+    QRect cellUpdateRect() const;
+    QRect viewRect() const;
 
-    int                lastRowVisible() const;
-    int                lastColVisible() const;
+    int lastRowVisible() const;
+    int lastColVisible() const;
 
-    bool       rowIsVisible( int row ) const;
-    bool       colIsVisible( int col ) const;
+    bool rowIsVisible(int row) const;
+    bool colIsVisible(int col) const;
 
     QScrollBar *verticalScrollBar() const;
     QScrollBar *horizontalScrollBar() const;
 
-private slots:
-    void       horSbValue( int );
-    void       horSbSliding( int );
-    void       horSbSlidingDone();
-    void       verSbValue( int );
-    void       verSbSliding( int );
-    void       verSbSlidingDone();
-
-protected:
-    virtual void paintCell( QPainter *, int row, int col ) = 0;
-    virtual void setupPainter( QPainter * );
-
-    void       paintEvent( QPaintEvent * );
-    void       resizeEvent( QResizeEvent * );
-
-    int                findRow( int yPos ) const;
-    int                findCol( int xPos ) const;
-
-    bool       rowYPos( int row, int *yPos ) const;
-    bool       colXPos( int col, int *xPos ) const;
-
-    int                maxXOffset();
-    int                maxYOffset();
-    int                maxColOffset();
-    int                maxRowOffset();
-
-    int                minViewX()      const;
-    int                minViewY()      const;
-    int                maxViewX()      const;
-    int                maxViewY()      const;
-    int                viewWidth()     const;
-    int                viewHeight()    const;
-
-    void       scroll( int xPixels, int yPixels );
-    void       updateScrollBars();
-    void       updateTableSize();
-
-private:
-    void       coverCornerSquare( bool );
-    void       snapToGrid( bool horizontal, bool vertical );
-    virtual void       setHorScrollBar( bool on, bool update = TRUE );
-    virtual void       setVerScrollBar( bool on, bool update = TRUE );
-    void       updateView();
-    int                findRawRow( int yPos, int *cellMaxY, int *cellMinY = 0,
-                           bool goOutsideView = FALSE ) const;
-    int                findRawCol( int xPos, int *cellMaxX, int *cellMinX = 0,
-                           bool goOutsideView = FALSE ) const;
-    int                maxColsVisible() const;
-
-    void       updateScrollBars( uint );
-    void       updateFrameSize();
-
-    void       doAutoScrollBars();
-    void       showOrHideScrollBars();
-
-    int                nRows;
-    int                nCols;
-    int                xOffs, yOffs;
-    int                xCellOffs, yCellOffs;
-    short      xCellDelta, yCellDelta;
-    short      cellH, cellW;
-
-    uint       eraseInPaint            : 1;
-    uint       verSliding              : 1;
-    uint       verSnappingOff          : 1;
-    uint       horSliding              : 1;
-    uint       horSnappingOff          : 1;
-    uint       coveringCornerSquare    : 1;
-    uint       sbDirty                 : 8;
-    uint       inSbUpdate              : 1;
-
-    uint       tFlags;
-    QRect      cellUpdateR;
+  private slots:
+    void horSbValue(int);
+    void horSbSliding(int);
+    void horSbSlidingDone();
+    void verSbValue(int);
+    void verSbSliding(int);
+    void verSbSlidingDone();
+
+  protected:
+    virtual void paintCell(QPainter *, int row, int col) = 0;
+    virtual void setupPainter(QPainter *);
+
+    void paintEvent(QPaintEvent *);
+    void resizeEvent(QResizeEvent *);
+
+    int findRow(int yPos) const;
+    int findCol(int xPos) const;
+
+    bool rowYPos(int row, int *yPos) const;
+    bool colXPos(int col, int *xPos) const;
+
+    int maxXOffset();
+    int maxYOffset();
+    int maxColOffset();
+    int maxRowOffset();
+
+    int minViewX() const;
+    int minViewY() const;
+    int maxViewX() const;
+    int maxViewY() const;
+    int viewWidth() const;
+    int viewHeight() const;
+
+    void scroll(int xPixels, int yPixels);
+    void updateScrollBars();
+    void updateTableSize();
+
+  private:
+    void coverCornerSquare(bool);
+    void snapToGrid(bool horizontal, bool vertical);
+    virtual void setHorScrollBar(bool on, bool update = TRUE);
+    virtual void setVerScrollBar(bool on, bool update = TRUE);
+    void updateView();
+    int findRawRow(int yPos, int *cellMaxY, int *cellMinY = 0,
+                   bool goOutsideView = FALSE) const;
+    int findRawCol(int xPos, int *cellMaxX, int *cellMinX = 0,
+                   bool goOutsideView = FALSE) const;
+    int maxColsVisible() const;
+
+    void updateScrollBars(uint);
+    void updateFrameSize();
+
+    void doAutoScrollBars();
+    void showOrHideScrollBars();
+
+    int nRows;
+    int nCols;
+    int xOffs, yOffs;
+    int xCellOffs, yCellOffs;
+    short xCellDelta, yCellDelta;
+    short cellH, cellW;
+
+    uint eraseInPaint : 1;
+    uint verSliding : 1;
+    uint verSnappingOff : 1;
+    uint horSliding : 1;
+    uint horSnappingOff : 1;
+    uint coveringCornerSquare : 1;
+    uint sbDirty : 8;
+    uint inSbUpdate : 1;
+
+    uint tFlags;
+    QRect cellUpdateR;
 
     QScrollBar *vScrollBar;
     QScrollBar *hScrollBar;
     QCornerSquare *cornerSquare;
 
-private:       // Disabled copy constructor and operator=
+  private: // Disabled copy constructor and operator=
 #if defined(Q_DISABLE_COPY)
-    QtTableView( const QtTableView & );
-    QtTableView &operator=( const QtTableView & );
+    QtTableView(const QtTableView &);
+    QtTableView &operator=(const QtTableView &);
 #endif
 };
 
-
-const uint Tbl_vScrollBar      = 0x00000001;
-const uint Tbl_hScrollBar      = 0x00000002;
-const uint Tbl_autoVScrollBar  = 0x00000004;
-const uint Tbl_autoHScrollBar  = 0x00000008;
-const uint Tbl_autoScrollBars  = 0x0000000C;
+const uint Tbl_vScrollBar = 0x00000001;
+const uint Tbl_hScrollBar = 0x00000002;
+const uint Tbl_autoVScrollBar = 0x00000004;
+const uint Tbl_autoHScrollBar = 0x00000008;
+const uint Tbl_autoScrollBars = 0x0000000C;
 
 const uint Tbl_clipCellPainting = 0x00000100;
-const uint Tbl_cutCellsV       = 0x00000200;
-const uint Tbl_cutCellsH       = 0x00000400;
-const uint Tbl_cutCells                = 0x00000600;
+const uint Tbl_cutCellsV = 0x00000200;
+const uint Tbl_cutCellsH = 0x00000400;
+const uint Tbl_cutCells = 0x00000600;
 
-const uint Tbl_scrollLastHCell = 0x00000800;
-const uint Tbl_scrollLastVCell = 0x00001000;
-const uint Tbl_scrollLastCell  = 0x00001800;
+const uint Tbl_scrollLastHCell = 0x00000800;
+const uint Tbl_scrollLastVCell = 0x00001000;
+const uint Tbl_scrollLastCell = 0x00001800;
 
 const uint Tbl_smoothHScrolling = 0x00002000;
 const uint Tbl_smoothVScrolling = 0x00004000;
-const uint Tbl_smoothScrolling = 0x00006000;
-
-const uint Tbl_snapToHGrid     = 0x00008000;
-const uint Tbl_snapToVGrid     = 0x00010000;
-const uint Tbl_snapToGrid      = 0x00018000;
+const uint Tbl_smoothScrolling = 0x00006000;
 
+const uint Tbl_snapToHGrid = 0x00008000;
+const uint Tbl_snapToVGrid = 0x00010000;
+const uint Tbl_snapToGrid = 0x00018000;
 
-inline int QtTableView::numRows() const
-{ return nRows; }
-
-inline int QtTableView::numCols() const
-{ return nCols; }
+inline int
+QtTableView::numRows() const
+{
+    return nRows;
+}
 
-inline int QtTableView::topCell() const
-{ return yCellOffs; }
+inline int
+QtTableView::numCols() const
+{
+    return nCols;
+}
 
-inline int QtTableView::leftCell() const
-{ return xCellOffs; }
+inline int
+QtTableView::topCell() const
+{
+    return yCellOffs;
+}
 
-inline int QtTableView::xOffset() const
-{ return xOffs; }
+inline int
+QtTableView::leftCell() const
+{
+    return xCellOffs;
+}
 
-inline int QtTableView::yOffset() const
-{ return yOffs; }
+inline int
+QtTableView::xOffset() const
+{
+    return xOffs;
+}
 
-inline int QtTableView::cellHeight() const
-{ return cellH; }
+inline int
+QtTableView::yOffset() const
+{
+    return yOffs;
+}
 
-inline int QtTableView::cellWidth() const
-{ return cellW; }
+inline int
+QtTableView::cellHeight() const
+{
+    return cellH;
+}
 
-inline uint QtTableView::tableFlags() const
-{ return tFlags; }
+inline int
+QtTableView::cellWidth() const
+{
+    return cellW;
+}
 
-inline bool QtTableView::testTableFlags( uint f ) const
-{ return (tFlags & f) != 0; }
+inline uint
+QtTableView::tableFlags() const
+{
+    return tFlags;
+}
 
-inline QRect QtTableView::cellUpdateRect() const
-{ return cellUpdateR; }
+inline bool
+QtTableView::testTableFlags(uint f) const
+{
+    return (tFlags & f) != 0;
+}
 
-inline bool QtTableView::autoUpdate() const
-{ return isUpdatesEnabled(); }
+inline QRect
+QtTableView::cellUpdateRect() const
+{
+    return cellUpdateR;
+}
 
-inline void QtTableView::repaint( bool erase )
-{ repaint( 0, 0, width(), height(), erase ); }
+inline bool
+QtTableView::autoUpdate() const
+{
+    return isUpdatesEnabled();
+}
 
-inline void QtTableView::repaint( const QRect &r, bool erase )
-{ repaint( r.x(), r.y(), r.width(), r.height(), erase ); }
+inline void
+QtTableView::repaint(bool erase)
+{
+    repaint(0, 0, width(), height(), erase);
+}
 
-inline void QtTableView::updateScrollBars()
-{ updateScrollBars( 0 ); }
+inline void
+QtTableView::repaint(const QRect &r, bool erase)
+{
+    repaint(r.x(), r.y(), r.width(), r.height(), erase);
+}
 
+inline void
+QtTableView::updateScrollBars()
+{
+    updateScrollBars(0);
+}
 
 #endif // QT_NO_QTTABLEVIEW
 
index b4e94604428333fc5c874834576371671134d9d4..df538110fbc2de61ca1b183ac357c7cbbe950e1b 100644 (file)
@@ -7,44 +7,44 @@
 #ifndef QUEST_H
 #define QUEST_H
 
-struct q_score {                       /* Quest "scorecard" */
-       Bitfield(first_start,1);        /* only set the first time */
-       Bitfield(met_leader,1);         /* has met the leader */
-       Bitfield(not_ready,3);          /* rejected due to alignment, etc. */
-       Bitfield(pissed_off,1);         /* got the leader angry */
-       Bitfield(got_quest,1);          /* got the quest assignment */
-
-       Bitfield(first_locate,1);       /* only set the first time */
-       Bitfield(met_intermed,1);       /* used if the locate is a person. */
-       Bitfield(got_final,1);          /* got the final quest assignment */
-
-       Bitfield(made_goal,3);          /* # of times on goal level */
-       Bitfield(met_nemesis,1);        /* has met the nemesis before */
-       Bitfield(killed_nemesis,1);     /* set when the nemesis is killed */
-       Bitfield(in_battle,1);          /* set when nemesis fighting you */
-
-       Bitfield(cheater,1);            /* set if cheating detected */
-       Bitfield(touched_artifact,1);   /* for a special message */
-       Bitfield(offered_artifact,1);   /* offered to leader */
-       Bitfield(got_thanks,1);         /* final message from leader */
-
-       /* used by questpgr code when messages want to use pronouns
-          (set up at game start instead of waiting until monster creation;
-          1 bit each would suffice--nobody involved is actually neuter) */
-       Bitfield(ldrgend,2); /* leader's gender: 0=male, 1=female, 2=neuter */
-       Bitfield(nemgend,2); /* nemesis's gender */
-       Bitfield(godgend,2); /* deity's gender */
-
-       /* keep track of leader presence/absence even if leader is
-          polymorphed, raised from dead, etc */
-       Bitfield(leader_is_dead,1);
-       unsigned leader_m_id;
+struct q_score {              /* Quest "scorecard" */
+    Bitfield(first_start, 1); /* only set the first time */
+    Bitfield(met_leader, 1);  /* has met the leader */
+    Bitfield(not_ready, 3);   /* rejected due to alignment, etc. */
+    Bitfield(pissed_off, 1);  /* got the leader angry */
+    Bitfield(got_quest, 1);   /* got the quest assignment */
+
+    Bitfield(first_locate, 1); /* only set the first time */
+    Bitfield(met_intermed, 1); /* used if the locate is a person. */
+    Bitfield(got_final, 1);    /* got the final quest assignment */
+
+    Bitfield(made_goal, 3);      /* # of times on goal level */
+    Bitfield(met_nemesis, 1);    /* has met the nemesis before */
+    Bitfield(killed_nemesis, 1); /* set when the nemesis is killed */
+    Bitfield(in_battle, 1);      /* set when nemesis fighting you */
+
+    Bitfield(cheater, 1);          /* set if cheating detected */
+    Bitfield(touched_artifact, 1); /* for a special message */
+    Bitfield(offered_artifact, 1); /* offered to leader */
+    Bitfield(got_thanks, 1);       /* final message from leader */
+
+    /* used by questpgr code when messages want to use pronouns
+       (set up at game start instead of waiting until monster creation;
+       1 bit each would suffice--nobody involved is actually neuter) */
+    Bitfield(ldrgend, 2); /* leader's gender: 0=male, 1=female, 2=neuter */
+    Bitfield(nemgend, 2); /* nemesis's gender */
+    Bitfield(godgend, 2); /* deity's gender */
+
+    /* keep track of leader presence/absence even if leader is
+       polymorphed, raised from dead, etc */
+    Bitfield(leader_is_dead, 1);
+    unsigned leader_m_id;
 };
 
-#define MAX_QUEST_TRIES  7     /* exceed this and you "fail" */
-#define MIN_QUEST_ALIGN 20     /* at least this align.record to start */
-  /* note: align 20 matches "pious" as reported by enlightenment (cmd.c) */
-#define MIN_QUEST_LEVEL 14     /* at least this u.ulevel to start */
-  /* note: exp.lev. 14 is threshold level for 5th rank (class title, role.c) */
+#define MAX_QUEST_TRIES 7  /* exceed this and you "fail" */
+#define MIN_QUEST_ALIGN 20 /* at least this align.record to start */
+/* note: align 20 matches "pious" as reported by enlightenment (cmd.c) */
+#define MIN_QUEST_LEVEL 14 /* at least this u.ulevel to start */
+/* note: exp.lev. 14 is threshold level for 5th rank (class title, role.c) */
 
 #endif /* QUEST_H */
index 24fc10a3d93cc10c100d4287013b594996ffc246..d8222c8b8f2928868f026421d3869785b46d34cf 100644 (file)
@@ -8,8 +8,8 @@
 #define RECT_H
 
 typedef struct nhrect {
-       xchar lx, ly;
-       xchar hx, hy;
+    xchar lx, ly;
+    xchar hx, hy;
 } NhRect;
 
 #endif /* RECT_H */
index 519aaf9d68765efdde389738eabcecf96fe530cb..414aa6bd9c69d26b3d0d6c15d8c58d6a6ba7c17e 100644 (file)
@@ -14,14 +14,14 @@ typedef boolean FDECL((*callback_proc), (genericptr_t, genericptr_t));
 /*
  * player_flags
  */
-#define REG_HERO_INSIDE        0x01
-#define REG_NOT_HEROS  0x02
-#define hero_inside(r) ((r)->player_flags & REG_HERO_INSIDE)
-#define heros_fault(r) (!((r)->player_flags & REG_NOT_HEROS))
-#define set_hero_inside(r)     ((r)->player_flags |= REG_HERO_INSIDE)
-#define clear_hero_inside(r)   ((r)->player_flags &= ~REG_HERO_INSIDE)
-#define set_heros_fault(r)     ((r)->player_flags &= ~REG_NOT_HEROS)
-#define clear_heros_fault(r)   ((r)->player_flags |= REG_NOT_HEROS)
+#define REG_HERO_INSIDE 0x01
+#define REG_NOT_HEROS 0x02
+#define hero_inside(r) ((r)->player_flags & REG_HERO_INSIDE)
+#define heros_fault(r) (!((r)->player_flags & REG_NOT_HEROS))
+#define set_hero_inside(r) ((r)->player_flags |= REG_HERO_INSIDE)
+#define clear_hero_inside(r) ((r)->player_flags &= ~REG_HERO_INSIDE)
+#define set_heros_fault(r) ((r)->player_flags &= ~REG_NOT_HEROS)
+#define clear_heros_fault(r) ((r)->player_flags |= REG_NOT_HEROS)
 
 /*
  * Note: if you change the size/type of any of the fields below,
@@ -32,37 +32,37 @@ typedef boolean FDECL((*callback_proc), (genericptr_t, genericptr_t));
  */
 
 typedef struct {
-  NhRect bounding_box;         /* Bounding box of the region */
-  NhRect *rects;               /* Rectangles composing the region */
-  short  nrects;               /* Number of rectangles  */
-  boolean attach_2_u;          /* Region attached to player ? */
-  unsigned int attach_2_m;     /* Region attached to monster ? */
-  /*struct obj *attach_2_o;*/  /* Region attached to object ? UNUSED YET */
-  const char* enter_msg;       /* Message when entering */
-  const char* leave_msg;       /* Message when leaving */
-  long  ttl;                   /* Time to live. -1 is forever */
-  short expire_f;              /* Function to call when region's ttl expire */
-  short can_enter_f;           /* Function to call to check wether the player
-                                  can, or can not, enter the region */
-  short enter_f;               /* Function to call when the player enters*/
-  short can_leave_f;           /* Function to call to check wether the player
-                                  can, or can not, leave the region */
-  short leave_f;               /* Function to call when the player leaves */
-  short inside_f;              /* Function to call every turn if player's
-                                  inside */
-  unsigned int player_flags;   /* (see above) */
-  unsigned int* monsters;      /* Monsters currently inside this region */
-  short n_monst;               /* Number of monsters inside this region */
-  short max_monst;             /* Maximum number of monsters that can be
-                                  listed without having to grow the array */
-#define MONST_INC      5
+    NhRect bounding_box;        /* Bounding box of the region */
+    NhRect *rects;              /* Rectangles composing the region */
+    short nrects;               /* Number of rectangles  */
+    boolean attach_2_u;         /* Region attached to player ? */
+    unsigned int attach_2_m;    /* Region attached to monster ? */
+    /*struct obj *attach_2_o;*/ /* Region attached to object ? UNUSED YET */
+    const char *enter_msg;      /* Message when entering */
+    const char *leave_msg;      /* Message when leaving */
+    long ttl;                   /* Time to live. -1 is forever */
+    short expire_f;            /* Function to call when region's ttl expire */
+    short can_enter_f;         /* Function to call to check wether the player
+                                  can, or can not, enter the region */
+    short enter_f;             /* Function to call when the player enters*/
+    short can_leave_f;         /* Function to call to check wether the player
+                                  can, or can not, leave the region */
+    short leave_f;             /* Function to call when the player leaves */
+    short inside_f;            /* Function to call every turn if player's
+                                  inside */
+    unsigned int player_flags; /* (see above) */
+    unsigned int *monsters;    /* Monsters currently inside this region */
+    short n_monst;             /* Number of monsters inside this region */
+    short max_monst;           /* Maximum number of monsters that can be
+                                  listed without having to grow the array */
+#define MONST_INC 5
 
-  /* Should probably do the same thing about objects */
+    /* Should probably do the same thing about objects */
 
-  boolean visible;             /* Is the region visible ? */
-  int glyph;                   /* Which glyph to use if visible */
-  anything arg;                        /* Optional user argument (Ex: strength of
-                                  force field, damage of a fire zone, ...*/
+    boolean visible; /* Is the region visible ? */
+    int glyph;       /* Which glyph to use if visible */
+    anything arg;    /* Optional user argument (Ex: strength of
+                        force field, damage of a fire zone, ...*/
 } NhRegion;
 
 #endif /* REGION_H */
index 58631bfbe988db51f157924f48fc5a179ae42432..583ee1d236a25700d45110077b8983ba50d33e21 100644 (file)
@@ -12,7 +12,8 @@
  * building on Don G. Kneller's MS-DOS implementation. See drawing.c for
  * the code that permits the user to set the contents of the symbol structure.
  *
- * The door representation was changed by Ari Huttunen(ahuttune@niksula.hut.fi)
+ * The door representation was changed by Ari
+ * Huttunen(ahuttune@niksula.hut.fi)
  */
 
 /*
    defines array type_names[] which contains an entry for each of
    these, so needs to be kept in sync if any new types are added
    or existing ones renumbered.] */
-#define STONE          0
-#define VWALL          1
-#define HWALL          2
-#define TLCORNER       3
-#define TRCORNER       4
-#define BLCORNER       5
-#define BRCORNER       6
-#define CROSSWALL      7       /* For pretty mazes and special levels */
-#define TUWALL         8
-#define TDWALL         9
-#define TLWALL         10
-#define TRWALL         11
-#define DBWALL         12
-#define TREE           13      /* KMH */
-#define SDOOR          14
-#define SCORR          15
-#define POOL           16
-#define MOAT           17      /* pool that doesn't boil, adjust messages */
-#define WATER          18
-#define DRAWBRIDGE_UP  19
-#define LAVAPOOL       20
-#define IRONBARS       21      /* KMH */
-#define DOOR           22
-#define CORR           23
-#define ROOM           24
-#define STAIRS         25
-#define LADDER         26
-#define FOUNTAIN       27
-#define THRONE         28
-#define SINK           29
-#define GRAVE          30
-#define ALTAR          31
-#define ICE            32
+#define STONE 0
+#define VWALL 1
+#define HWALL 2
+#define TLCORNER 3
+#define TRCORNER 4
+#define BLCORNER 5
+#define BRCORNER 6
+#define CROSSWALL 7 /* For pretty mazes and special levels */
+#define TUWALL 8
+#define TDWALL 9
+#define TLWALL 10
+#define TRWALL 11
+#define DBWALL 12
+#define TREE 13 /* KMH */
+#define SDOOR 14
+#define SCORR 15
+#define POOL 16
+#define MOAT 17 /* pool that doesn't boil, adjust messages */
+#define WATER 18
+#define DRAWBRIDGE_UP 19
+#define LAVAPOOL 20
+#define IRONBARS 21 /* KMH */
+#define DOOR 22
+#define CORR 23
+#define ROOM 24
+#define STAIRS 25
+#define LADDER 26
+#define FOUNTAIN 27
+#define THRONE 28
+#define SINK 29
+#define GRAVE 30
+#define ALTAR 31
+#define ICE 32
 #define DRAWBRIDGE_DOWN 33
-#define AIR            34
-#define CLOUD          35
+#define AIR 34
+#define CLOUD 35
 
-#define MAX_TYPE       36
-#define INVALID_TYPE   127
+#define MAX_TYPE 36
+#define INVALID_TYPE 127
 
 /*
  * Avoid using the level types in inequalities:
  * these types are subject to change.
  * Instead, use one of the macros below.
  */
-#define IS_WALL(typ)   ((typ) && (typ) <= DBWALL)
-#define IS_STWALL(typ) ((typ) <= DBWALL)       /* STONE <= (typ) <= DBWALL */
-#define IS_ROCK(typ)   ((typ) < POOL)          /* absolutely nonaccessible */
-#define IS_DOOR(typ)   ((typ) == DOOR)
-#define IS_TREE(typ)   ((typ) == TREE || \
-                       (level.flags.arboreal && (typ) == STONE))
-#define ACCESSIBLE(typ) ((typ) >= DOOR)                /* good position */
-#define IS_ROOM(typ)   ((typ) >= ROOM)         /* ROOM, STAIRS, furniture.. */
-#define ZAP_POS(typ)   ((typ) >= POOL)
-#define SPACE_POS(typ) ((typ) > DOOR)
-#define IS_POOL(typ)   ((typ) >= POOL && (typ) <= DRAWBRIDGE_UP)
-#define IS_THRONE(typ) ((typ) == THRONE)
+#define IS_WALL(typ) ((typ) && (typ) <= DBWALL)
+#define IS_STWALL(typ) ((typ) <= DBWALL) /* STONE <= (typ) <= DBWALL */
+#define IS_ROCK(typ) ((typ) < POOL)      /* absolutely nonaccessible */
+#define IS_DOOR(typ) ((typ) == DOOR)
+#define IS_TREE(typ) \
+    ((typ) == TREE || (level.flags.arboreal && (typ) == STONE))
+#define ACCESSIBLE(typ) ((typ) >= DOOR) /* good position */
+#define IS_ROOM(typ) ((typ) >= ROOM)    /* ROOM, STAIRS, furniture.. */
+#define ZAP_POS(typ) ((typ) >= POOL)
+#define SPACE_POS(typ) ((typ) > DOOR)
+#define IS_POOL(typ) ((typ) >= POOL && (typ) <= DRAWBRIDGE_UP)
+#define IS_THRONE(typ) ((typ) == THRONE)
 #define IS_FOUNTAIN(typ) ((typ) == FOUNTAIN)
-#define IS_SINK(typ)   ((typ) == SINK)
-#define IS_GRAVE(typ)  ((typ) == GRAVE)
-#define IS_ALTAR(typ)  ((typ) == ALTAR)
-#define IS_DRAWBRIDGE(typ) ((typ) == DRAWBRIDGE_UP || (typ) == DRAWBRIDGE_DOWN)
+#define IS_SINK(typ) ((typ) == SINK)
+#define IS_GRAVE(typ) ((typ) == GRAVE)
+#define IS_ALTAR(typ) ((typ) == ALTAR)
+#define IS_DRAWBRIDGE(typ) \
+    ((typ) == DRAWBRIDGE_UP || (typ) == DRAWBRIDGE_DOWN)
 #define IS_FURNITURE(typ) ((typ) >= STAIRS && (typ) <= ALTAR)
-#define IS_AIR(typ)    ((typ) == AIR || (typ) == CLOUD)
-#define IS_SOFT(typ)   ((typ) == AIR || (typ) == CLOUD || IS_POOL(typ))
+#define IS_AIR(typ) ((typ) == AIR || (typ) == CLOUD)
+#define IS_SOFT(typ) ((typ) == AIR || (typ) == CLOUD || IS_POOL(typ))
 
 /*
  * The screen symbols may be the default or defined at game startup time.
  * See drawing.c for defaults.
- * Note: {ibm|dec}_graphics[] arrays (also in drawing.c) must be kept in synch.
+ * Note: {ibm|dec}_graphics[] arrays (also in drawing.c) must be kept in
+ * synch.
  */
 
 /* begin dungeon characters */
 
-#define S_stone                0
-#define S_vwall                1
-#define S_hwall                2
-#define S_tlcorn       3
-#define S_trcorn       4
-#define S_blcorn       5
-#define S_brcorn       6
-#define S_crwall       7
-#define S_tuwall       8
-#define S_tdwall       9
-#define S_tlwall       10
-#define S_trwall       11
-#define S_ndoor                12
-#define S_vodoor       13
-#define S_hodoor       14
-#define S_vcdoor       15      /* closed door, vertical wall */
-#define S_hcdoor       16      /* closed door, horizontal wall */
-#define S_bars         17      /* KMH -- iron bars */
-#define S_tree         18      /* KMH */
-#define S_room         19
-#define S_darkroom     20
-#define S_corr         21
-#define S_litcorr      22
-#define S_upstair      23
-#define S_dnstair      24
-#define S_upladder     25
-#define S_dnladder     26
-#define S_altar                27
-#define S_grave                28
-#define S_throne       29
-#define S_sink         30
-#define S_fountain     31
-#define S_pool         32
-#define S_ice          33
-#define S_lava         34
-#define S_vodbridge    35
-#define S_hodbridge    36
-#define S_vcdbridge    37      /* closed drawbridge, vertical wall */
-#define S_hcdbridge    38      /* closed drawbridge, horizontal wall */
-#define S_air          39
-#define S_cloud                40
-#define S_water                41
+#define S_stone 0
+#define S_vwall 1
+#define S_hwall 2
+#define S_tlcorn 3
+#define S_trcorn 4
+#define S_blcorn 5
+#define S_brcorn 6
+#define S_crwall 7
+#define S_tuwall 8
+#define S_tdwall 9
+#define S_tlwall 10
+#define S_trwall 11
+#define S_ndoor 12
+#define S_vodoor 13
+#define S_hodoor 14
+#define S_vcdoor 15 /* closed door, vertical wall */
+#define S_hcdoor 16 /* closed door, horizontal wall */
+#define S_bars 17   /* KMH -- iron bars */
+#define S_tree 18   /* KMH */
+#define S_room 19
+#define S_darkroom 20
+#define S_corr 21
+#define S_litcorr 22
+#define S_upstair 23
+#define S_dnstair 24
+#define S_upladder 25
+#define S_dnladder 26
+#define S_altar 27
+#define S_grave 28
+#define S_throne 29
+#define S_sink 30
+#define S_fountain 31
+#define S_pool 32
+#define S_ice 33
+#define S_lava 34
+#define S_vodbridge 35
+#define S_hodbridge 36
+#define S_vcdbridge 37 /* closed drawbridge, vertical wall */
+#define S_hcdbridge 38 /* closed drawbridge, horizontal wall */
+#define S_air 39
+#define S_cloud 40
+#define S_water 41
 
 /* end dungeon characters, begin traps */
 
-#define S_arrow_trap           42
-#define S_dart_trap            43
-#define S_falling_rock_trap    44
-#define S_squeaky_board                45
-#define S_bear_trap            46
-#define S_land_mine            47
-#define S_rolling_boulder_trap 48
-#define S_sleeping_gas_trap    49
-#define S_rust_trap            50
-#define S_fire_trap            51
-#define S_pit                  52
-#define S_spiked_pit           53
-#define S_hole                 54
-#define S_trap_door            55
-#define S_teleportation_trap   56
-#define S_level_teleporter     57
-#define S_magic_portal         58
-#define S_web                  59
-#define S_statue_trap          60
-#define S_magic_trap           61
-#define S_anti_magic_trap      62
-#define S_polymorph_trap       63
+#define S_arrow_trap 42
+#define S_dart_trap 43
+#define S_falling_rock_trap 44
+#define S_squeaky_board 45
+#define S_bear_trap 46
+#define S_land_mine 47
+#define S_rolling_boulder_trap 48
+#define S_sleeping_gas_trap 49
+#define S_rust_trap 50
+#define S_fire_trap 51
+#define S_pit 52
+#define S_spiked_pit 53
+#define S_hole 54
+#define S_trap_door 55
+#define S_teleportation_trap 56
+#define S_level_teleporter 57
+#define S_magic_portal 58
+#define S_web 59
+#define S_statue_trap 60
+#define S_magic_trap 61
+#define S_anti_magic_trap 62
+#define S_polymorph_trap 63
 
 /* end traps, begin special effects */
 
-#define S_vbeam                64      /* The 4 zap beam symbols.  Do NOT separate. */
-#define S_hbeam                65      /* To change order or add, see function     */
-#define S_lslant       66      /* zapdir_to_glyph() in display.c.          */
-#define S_rslant       67
-#define S_digbeam      68      /* dig beam symbol */
-#define S_flashbeam    69      /* camera flash symbol */
-#define S_boomleft     70      /* thrown boomerang, open left, e.g ')'    */
-#define S_boomright    71      /* thrown boomerand, open right, e.g. '('  */
-#define S_ss1          72      /* 4 magic shield glyphs */
-#define S_ss2          73
-#define S_ss3          74
-#define S_ss4          75
-#define S_poisoncloud  76
-#define S_goodpos      77      /* valid position for targeting */
+#define S_vbeam 64  /* The 4 zap beam symbols.  Do NOT separate. */
+#define S_hbeam 65  /* To change order or add, see function     */
+#define S_lslant 66 /* zapdir_to_glyph() in display.c.     */
+#define S_rslant 67
+#define S_digbeam 68   /* dig beam symbol */
+#define S_flashbeam 69 /* camera flash symbol */
+#define S_boomleft 70  /* thrown boomerang, open left, e.g ')'    */
+#define S_boomright 71 /* thrown boomerand, open right, e.g. '('  */
+#define S_ss1 72       /* 4 magic shield glyphs */
+#define S_ss2 73
+#define S_ss3 74
+#define S_ss4 75
+#define S_poisoncloud 76
+#define S_goodpos 77 /* valid position for targeting */
 
 /* The 8 swallow symbols.  Do NOT separate.  To change order or add, see */
 /* the function swallow_to_glyph() in display.c.                        */
-#define S_sw_tl                78      /* swallow top left [1]                 */
-#define S_sw_tc                79      /* swallow top center [2]       Order:  */
-#define S_sw_tr                80      /* swallow top right [3]                */
-#define S_sw_ml                81      /* swallow middle left [4]      1 2 3   */
-#define S_sw_mr                82      /* swallow middle right [6]     4 5 6   */
-#define S_sw_bl                83      /* swallow bottom left [7]      7 8 9   */
-#define S_sw_bc                84      /* swallow bottom center [8]            */
-#define S_sw_br                85      /* swallow bottom right [9]             */
-
-#define S_explode1     86      /* explosion top left                   */
-#define S_explode2     87      /* explosion top center                 */
-#define S_explode3     88      /* explosion top right           Ex.    */
-#define S_explode4     89      /* explosion middle left                */
-#define S_explode5     90      /* explosion middle center       /-\    */
-#define S_explode6     91      /* explosion middle right        |@|    */
-#define S_explode7     92      /* explosion bottom left         \-/    */
-#define S_explode8     93      /* explosion bottom center              */
-#define S_explode9     94      /* explosion bottom right               */
+#define S_sw_tl 78 /* swallow top left [1]                     */
+#define S_sw_tc 79 /* swallow top center [2]   Order:  */
+#define S_sw_tr 80 /* swallow top right [3]            */
+#define S_sw_ml 81 /* swallow middle left [4]  1 2 3   */
+#define S_sw_mr 82 /* swallow middle right [6] 4 5 6   */
+#define S_sw_bl 83 /* swallow bottom left [7]  7 8 9   */
+#define S_sw_bc 84 /* swallow bottom center [8]                */
+#define S_sw_br 85 /* swallow bottom right [9]         */
+
+#define S_explode1 86 /* explosion top left                    */
+#define S_explode2 87 /* explosion top center                  */
+#define S_explode3 88 /* explosion top right            Ex.    */
+#define S_explode4 89 /* explosion middle left         */
+#define S_explode5 90 /* explosion middle center        /-\    */
+#define S_explode6 91 /* explosion middle right         |@|    */
+#define S_explode7 92 /* explosion bottom left  \-/    */
+#define S_explode8 93 /* explosion bottom center               */
+#define S_explode9 94 /* explosion bottom right                */
 
 /* end effects */
 
-#define MAXPCHARS      96      /* maximum number of mapped characters */
-#define MAXDCHARS      42      /* maximum of mapped dungeon characters */
-#define MAXTCHARS      22      /* maximum of mapped trap characters */
-#define MAXECHARS      31      /* maximum of mapped effects characters */
-#define MAXEXPCHARS    9       /* number of explosion characters */
+#define MAXPCHARS 96  /* maximum number of mapped characters */
+#define MAXDCHARS 42  /* maximum of mapped dungeon characters */
+#define MAXTCHARS 22  /* maximum of mapped trap characters */
+#define MAXECHARS 31  /* maximum of mapped effects characters */
+#define MAXEXPCHARS 9 /* number of explosion characters */
 
-#define DARKROOMSYM    (Is_rogue_level(&u.uz) ? S_stone : S_darkroom)
+#define DARKROOMSYM (Is_rogue_level(&u.uz) ? S_stone : S_darkroom)
 
 struct symdef {
     uchar sym;
-    const char *explanation;
+    const char *explanation;
 #ifdef TEXTCOLOR
     uchar color;
 #endif
 };
 
 struct symparse {
-       unsigned range;
-#define SYM_CONTROL    1       /* start/finish markers */
-#define SYM_PCHAR      2       /* index into showsyms  */
-#define SYM_OC         3       /* index into oc_syms   */
-#define SYM_MON                4       /* index into monsyms   */
-#define SYM_OTH                5       /* misc                 */
-       int idx;
-       const char *name;
+    unsigned range;
+#define SYM_CONTROL 1 /* start/finish markers */
+#define SYM_PCHAR 2   /* index into showsyms  */
+#define SYM_OC 3      /* index into oc_syms   */
+#define SYM_MON 4     /* index into monsyms   */
+#define SYM_OTH 5     /* misc                 */
+    int idx;
+    const char *name;
 };
 
 /* misc symbol definitions */
-#define SYM_BOULDER    0
-#define SYM_INVISIBLE  1
-#define MAXOTHER       2
+#define SYM_BOULDER 0
+#define SYM_INVISIBLE 1
+#define MAXOTHER 2
 
 /* linked list of symsets and their characteristics */
 struct symsetentry {
-       struct symsetentry *next;    /* next in list                         */
-       char *name;                  /* ptr to symset name                   */
-       char *desc;                  /* ptr to description                   */
-       int idx;                     /* an index value                       */
-       int handling;                /* known handlers value                 */
-       Bitfield(nocolor,1);         /* don't use color if set               */
-       Bitfield(primary,1);         /* restricted for use as primary set    */
-       Bitfield(rogue,1);           /* restricted for use as rogue lev set  */
-       /* 5 free bits */
+    struct symsetentry *next; /* next in list                         */
+    char *name;               /* ptr to symset name                   */
+    char *desc;               /* ptr to description                   */
+    int idx;                  /* an index value                       */
+    int handling;             /* known handlers value                 */
+    Bitfield(nocolor, 1);     /* don't use color if set               */
+    Bitfield(primary, 1);     /* restricted for use as primary set    */
+    Bitfield(rogue, 1);       /* restricted for use as rogue lev set  */
+                              /* 5 free bits */
 };
 
 /*
  * Graphics sets for display symbols
  */
-#define DEFAULT_GRAPHICS 0     /* regular characters: '-', '+', &c */
-#define PRIMARY                0       /* primary graphics set        */
-#define ROGUESET       1       /* rogue graphics set          */
-#define NUM_GRAPHICS   2
+#define DEFAULT_GRAPHICS 0 /* regular characters: '-', '+', &c */
+#define PRIMARY 0          /* primary graphics set        */
+#define ROGUESET 1         /* rogue graphics set          */
+#define NUM_GRAPHICS 2
 
 /*
  * special symbol set handling types ( for invoking callbacks, etc.)
  * Must match the order of the known_handlers strings
  * in drawing.c
  */
-#define H_UNK  0
-#define H_IBM  1
-#define H_DEC  2
+#define H_UNK 0
+#define H_IBM 1
+#define H_DEC 2
 
-extern const struct symdef defsyms[MAXPCHARS]; /* defaults */
+extern const struct symdef defsyms[MAXPCHARS]; /* defaults */
 extern const struct symdef def_warnsyms[WARNCOUNT];
-extern int currentgraphics;                              /* from drawing.c */
+extern int currentgraphics; /* from drawing.c */
 extern nhsym showsyms[];
 
-extern struct symsetentry symset[NUM_GRAPHICS];                  /* from drawing.c */
+extern struct symsetentry symset[NUM_GRAPHICS]; /* from drawing.c */
 #define SYMHANDLING(ht) (symset[currentgraphics].handling == (ht))
 
 /*
  * The 5 possible states of doors
  */
 
-#define D_NODOOR       0
-#define D_BROKEN       1
-#define D_ISOPEN       2
-#define D_CLOSED       4
-#define D_LOCKED       8
-#define D_TRAPPED      16
-#define D_SECRET        32 /* only used by sp_lev.c, NOT in rm-struct */
+#define D_NODOOR 0
+#define D_BROKEN 1
+#define D_ISOPEN 2
+#define D_CLOSED 4
+#define D_LOCKED 8
+#define D_TRAPPED 16
+#define D_SECRET 32 /* only used by sp_lev.c, NOT in rm-struct */
 
 /*
  * Some altars are considered as shrines, so we need a flag.
  */
-#define AM_SHRINE      8
+#define AM_SHRINE 8
 
 /*
  * Thrones should only be looted once.
  */
-#define T_LOOTED       1
+#define T_LOOTED 1
 
 /*
  * Trees have more than one kick result.
  */
-#define TREE_LOOTED    1
-#define TREE_SWARM     2
+#define TREE_LOOTED 1
+#define TREE_SWARM 2
 
 /*
  * Fountains have limits, and special warnings.
  */
-#define F_LOOTED       1
-#define F_WARNED       2
-#define FOUNTAIN_IS_WARNED(x,y)                (levl[x][y].looted & F_WARNED)
-#define FOUNTAIN_IS_LOOTED(x,y)                (levl[x][y].looted & F_LOOTED)
-#define SET_FOUNTAIN_WARNED(x,y)       levl[x][y].looted |= F_WARNED;
-#define SET_FOUNTAIN_LOOTED(x,y)       levl[x][y].looted |= F_LOOTED;
-#define CLEAR_FOUNTAIN_WARNED(x,y)     levl[x][y].looted &= ~F_WARNED;
-#define CLEAR_FOUNTAIN_LOOTED(x,y)     levl[x][y].looted &= ~F_LOOTED;
+#define F_LOOTED 1
+#define F_WARNED 2
+#define FOUNTAIN_IS_WARNED(x, y) (levl[x][y].looted & F_WARNED)
+#define FOUNTAIN_IS_LOOTED(x, y) (levl[x][y].looted & F_LOOTED)
+#define SET_FOUNTAIN_WARNED(x, y) levl[x][y].looted |= F_WARNED;
+#define SET_FOUNTAIN_LOOTED(x, y) levl[x][y].looted |= F_LOOTED;
+#define CLEAR_FOUNTAIN_WARNED(x, y) levl[x][y].looted &= ~F_WARNED;
+#define CLEAR_FOUNTAIN_LOOTED(x, y) levl[x][y].looted &= ~F_LOOTED;
 
 /*
  * Doors are even worse :-) The special warning has a side effect
  * of instantly trapping the door, and if it was defined as trapped,
  * the guards consider that you have already been warned!
  */
-#define D_WARNED       16
+#define D_WARNED 16
 
 /*
  * Sinks have 3 different types of loot that shouldn't be abused
  */
-#define S_LPUDDING     1
-#define S_LDWASHER     2
-#define S_LRING                4
+#define S_LPUDDING 1
+#define S_LDWASHER 2
+#define S_LRING 4
 
 /*
  * The four directions for a DrawBridge.
  */
-#define DB_NORTH       0
-#define DB_SOUTH       1
-#define DB_EAST                2
-#define DB_WEST                3
-#define DB_DIR         3       /* mask for direction */
+#define DB_NORTH 0
+#define DB_SOUTH 1
+#define DB_EAST 2
+#define DB_WEST 3
+#define DB_DIR 3 /* mask for direction */
 
 /*
  * What's under a drawbridge.
  */
-#define DB_MOAT                0
-#define DB_LAVA                4
-#define DB_ICE         8
-#define DB_FLOOR       16
-#define DB_UNDER       28      /* mask for underneath */
+#define DB_MOAT 0
+#define DB_LAVA 4
+#define DB_ICE 8
+#define DB_FLOOR 16
+#define DB_UNDER 28 /* mask for underneath */
 
 /*
  * Wall information.
  */
-#define WM_MASK                0x07    /* wall mode (bottom three bits) */
-#define W_NONDIGGABLE  0x08
-#define W_NONPASSWALL  0x10
+#define WM_MASK 0x07 /* wall mode (bottom three bits) */
+#define W_NONDIGGABLE 0x08
+#define W_NONPASSWALL 0x10
 
 /*
  * Ladders (in Vlad's tower) may be up or down.
  */
-#define LA_UP          1
-#define LA_DOWN                2
+#define LA_UP 1
+#define LA_DOWN 2
 
 /*
  * Room areas may be iced pools
  */
-#define ICED_POOL      8
-#define ICED_MOAT      16
+#define ICED_POOL 8
+#define ICED_MOAT 16
 
 /*
  * The structure describing a coordinate position.
@@ -386,31 +389,34 @@ extern struct symsetentry symset[NUM_GRAPHICS];             /* from drawing.c */
  * must be updated to consider the field.
  */
 struct rm {
-       int glyph;              /* what the hero thinks is there */
-       schar typ;              /* what is really there */
-       uchar seenv;            /* seen vector */
-       Bitfield(flags,5);      /* extra information for typ */
-       Bitfield(horizontal,1); /* wall/door/etc is horiz. (more typ info) */
-       Bitfield(lit,1);        /* speed hack for lit rooms */
-       Bitfield(waslit,1);     /* remember if a location was lit */
-
-       Bitfield(roomno,6);     /* room # for special rooms */
-       Bitfield(edge,1);       /* marks boundaries for special rooms*/
-       Bitfield(candig,1);     /* Exception to Can_dig_down; was a trapdoor */
+    int glyph;               /* what the hero thinks is there */
+    schar typ;               /* what is really there */
+    uchar seenv;             /* seen vector */
+    Bitfield(flags, 5);      /* extra information for typ */
+    Bitfield(horizontal, 1); /* wall/door/etc is horiz. (more typ info) */
+    Bitfield(lit, 1);        /* speed hack for lit rooms */
+    Bitfield(waslit, 1);     /* remember if a location was lit */
+
+    Bitfield(roomno, 6); /* room # for special rooms */
+    Bitfield(edge, 1);   /* marks boundaries for special rooms*/
+    Bitfield(candig, 1); /* Exception to Can_dig_down; was a trapdoor */
 };
 
-
-#define SET_TYPLIT(x,y,ttyp,llit)                              \
-{                                                              \
-  if ((x) >= 0 && (y) >= 0 && (x) < COLNO && (y) < ROWNO) {    \
-    if ((ttyp) < MAX_TYPE) levl[(x)][(y)].typ = (ttyp);                \
-    if ((ttyp) == LAVAPOOL) levl[(x)][(y)].lit = 1;            \
-    else if ((schar)(llit) != -2) {                            \
-       if ((schar)(llit) == -1) levl[(x)][(y)].lit = rn2(2);   \
-       else levl[(x)][(y)].lit = (llit);                       \
-    }                                                          \
-  }                                                            \
-}
+#define SET_TYPLIT(x, y, ttyp, llit)                              \
+    {                                                             \
+        if ((x) >= 0 && (y) >= 0 && (x) < COLNO && (y) < ROWNO) { \
+            if ((ttyp) < MAX_TYPE)                                \
+                levl[(x)][(y)].typ = (ttyp);                      \
+            if ((ttyp) == LAVAPOOL)                               \
+                levl[(x)][(y)].lit = 1;                           \
+            else if ((schar)(llit) != -2) {                       \
+                if ((schar)(llit) == -1)                          \
+                    levl[(x)][(y)].lit = rn2(2);                  \
+                else                                              \
+                    levl[(x)][(y)].lit = (llit);                  \
+            }                                                     \
+        }                                                         \
+    }
 
 /*
  * Add wall angle viewing by defining "modes" for each wall type.  Each
@@ -450,22 +456,22 @@ struct rm {
  *             6 bottom left & top right (1/2 rock)
  */
 
-#define WM_W_LEFT 1                    /* vertical or horizontal wall */
+#define WM_W_LEFT 1 /* vertical or horizontal wall */
 #define WM_W_RIGHT 2
 #define WM_W_TOP WM_W_LEFT
 #define WM_W_BOTTOM WM_W_RIGHT
 
-#define WM_C_OUTER 1                   /* corner wall */
+#define WM_C_OUTER 1 /* corner wall */
 #define WM_C_INNER 2
 
-#define WM_T_LONG 1                    /* T wall */
-#define WM_T_BL   2
-#define WM_T_BR   3
+#define WM_T_LONG 1 /* T wall */
+#define WM_T_BL 2
+#define WM_T_BR 3
 
-#define WM_X_TL   1                    /* cross wall */
-#define WM_X_TR   2
-#define WM_X_BL   3
-#define WM_X_BR   4
+#define WM_X_TL 1 /* cross wall */
+#define WM_X_TR 2
+#define WM_X_BL 3
+#define WM_X_BR 4
 #define WM_X_TLBR 5
 #define WM_X_BLTR 6
 
@@ -491,127 +497,124 @@ struct rm {
 #define SV7 0x80
 #define SVALL 0xFF
 
+#define doormask flags
+#define altarmask flags
+#define wall_info flags
+#define ladder flags
+#define drawbridgemask flags
+#define looted flags
+#define icedpool flags
 
-
-#define doormask       flags
-#define altarmask      flags
-#define wall_info      flags
-#define ladder         flags
-#define drawbridgemask flags
-#define looted         flags
-#define icedpool       flags
-
-#define blessedftn     horizontal  /* a fountain that grants attribs */
-#define disturbed      horizontal  /* a grave that has been disturbed */
+#define blessedftn horizontal /* a fountain that grants attribs */
+#define disturbed horizontal  /* a grave that has been disturbed */
 
 struct damage {
-       struct damage *next;
-       long when, cost;
-       coord place;
-       schar typ;
+    struct damage *next;
+    long when, cost;
+    coord place;
+    schar typ;
 };
 
 /* for bones levels:  identify the dead character, who might have died on
    an existing bones level; if so, most recent victim will be first in list */
 struct cemetery {
-       struct cemetery *next; /* next struct is previous dead character... */
-       /* "plname" + "-ROLe" + "-RACe" + "-GENder" + "-ALIgnment" + \0 */
-       char who[PL_NSIZ + 4*(1+3) + 1];
-       /* death reason, same as in score/log file */
-       char how[100 + 1]; /* [DTHSZ+1] */
-       /* date+time in string of digits rather than binary */
-       char when[4+2+2 + 2+2+2 + 1]; /* "YYYYMMDDhhmmss\0" */
-       /* final resting place spot */
-       schar frpx, frpy;
-       boolean bonesknown;
+    struct cemetery *next; /* next struct is previous dead character... */
+    /* "plname" + "-ROLe" + "-RACe" + "-GENder" + "-ALIgnment" + \0 */
+    char who[PL_NSIZ + 4 * (1 + 3) + 1];
+    /* death reason, same as in score/log file */
+    char how[100 + 1]; /* [DTHSZ+1] */
+    /* date+time in string of digits rather than binary */
+    char when[4 + 2 + 2 + 2 + 2 + 2 + 1]; /* "YYYYMMDDhhmmss\0" */
+    /* final resting place spot */
+    schar frpx, frpy;
+    boolean bonesknown;
 };
 
 struct levelflags {
-       uchar   nfountains;             /* number of fountains on level */
-       uchar   nsinks;                 /* number of sinks on the level */
-       /* Several flags that give hints about what's on the level */
-       Bitfield(has_shop, 1);
-       Bitfield(has_vault, 1);
-       Bitfield(has_zoo, 1);
-       Bitfield(has_court, 1);
-       Bitfield(has_morgue, 1);
-       Bitfield(has_beehive, 1);
-       Bitfield(has_barracks, 1);
-       Bitfield(has_temple, 1);
-
-       Bitfield(has_swamp, 1);
-       Bitfield(noteleport,1);
-       Bitfield(hardfloor,1);
-       Bitfield(nommap,1);
-       Bitfield(hero_memory,1);        /* hero has memory */
-       Bitfield(shortsighted,1);       /* monsters are shortsighted */
-       Bitfield(graveyard,1);          /* has_morgue, but remains set */
-       Bitfield(sokoban_rules,1);      /* fill pits and holes w/ boulders */
-
-       Bitfield(is_maze_lev,1);
-       Bitfield(is_cavernous_lev,1);
-       Bitfield(arboreal, 1);          /* Trees replace rock */
-       Bitfield(wizard_bones,1);       /* set if level came from a bones file
-                                          which was created in wizard mode (or
-                                          normal mode descendant of such) */
-        Bitfield(corrmaze, 1);          /* Whether corridors are used for the maze
-                                           rather than ROOM */
+    uchar nfountains; /* number of fountains on level */
+    uchar nsinks;     /* number of sinks on the level */
+    /* Several flags that give hints about what's on the level */
+    Bitfield(has_shop, 1);
+    Bitfield(has_vault, 1);
+    Bitfield(has_zoo, 1);
+    Bitfield(has_court, 1);
+    Bitfield(has_morgue, 1);
+    Bitfield(has_beehive, 1);
+    Bitfield(has_barracks, 1);
+    Bitfield(has_temple, 1);
+
+    Bitfield(has_swamp, 1);
+    Bitfield(noteleport, 1);
+    Bitfield(hardfloor, 1);
+    Bitfield(nommap, 1);
+    Bitfield(hero_memory, 1);   /* hero has memory */
+    Bitfield(shortsighted, 1);  /* monsters are shortsighted */
+    Bitfield(graveyard, 1);     /* has_morgue, but remains set */
+    Bitfield(sokoban_rules, 1); /* fill pits and holes w/ boulders */
+
+    Bitfield(is_maze_lev, 1);
+    Bitfield(is_cavernous_lev, 1);
+    Bitfield(arboreal, 1);     /* Trees replace rock */
+    Bitfield(wizard_bones, 1); /* set if level came from a bones file
+                                  which was created in wizard mode (or
+                                  normal mode descendant of such) */
+    Bitfield(corrmaze, 1);     /* Whether corridors are used for the maze
+                                  rather than ROOM */
 };
 
-typedef struct
-{
-    struct rm          locations[COLNO][ROWNO];
+typedef struct {
+    struct rm locations[COLNO][ROWNO];
 #ifndef MICROPORT_BUG
-    struct obj         *objects[COLNO][ROWNO];
-    struct monst       *monsters[COLNO][ROWNO];
+    struct obj *objects[COLNO][ROWNO];
+    struct monst *monsters[COLNO][ROWNO];
 #else
-    struct obj         *objects[1][ROWNO];
-    char               *yuk1[COLNO-1][ROWNO];
-    struct monst       *monsters[1][ROWNO];
-    char               *yuk2[COLNO-1][ROWNO];
+    struct obj *objects[1][ROWNO];
+    char *yuk1[COLNO - 1][ROWNO];
+    struct monst *monsters[1][ROWNO];
+    char *yuk2[COLNO - 1][ROWNO];
 #endif
-    struct obj         *objlist;
-    struct obj         *buriedobjlist;
-    struct monst       *monlist;
-    struct damage      *damagelist;
-    struct cemetery     *bonesinfo;
-    struct levelflags  flags;
-}
-dlevel_t;
+    struct obj *objlist;
+    struct obj *buriedobjlist;
+    struct monst *monlist;
+    struct damage *damagelist;
+    struct cemetery *bonesinfo;
+    struct levelflags flags;
+} dlevel_t;
 
-extern schar lastseentyp[COLNO][ROWNO];        /* last seen/touched dungeon typ */
+extern schar lastseentyp[COLNO][ROWNO]; /* last seen/touched dungeon typ */
 
-extern dlevel_t level; /* structure describing the current level */
+extern dlevel_t level; /* structure describing the current level */
 
 /*
  * Macros for compatibility with old code. Someday these will go away.
  */
-#define levl           level.locations
-#define fobj           level.objlist
-#define fmon           level.monlist
+#define levl level.locations
+#define fobj level.objlist
+#define fmon level.monlist
 
 /*
  * Covert a trap number into the defsym graphics array.
  * Convert a defsym number into a trap number.
  * Assumes that arrow trap will always be the first trap.
  */
-#define trap_to_defsym(t) (S_arrow_trap+(t)-1)
-#define defsym_to_trap(d) ((d)-S_arrow_trap+1)
+#define trap_to_defsym(t) (S_arrow_trap + (t) -1)
+#define defsym_to_trap(d) ((d) -S_arrow_trap + 1)
 
-#define OBJ_AT(x,y)    (level.objects[x][y] != (struct obj *)0)
+#define OBJ_AT(x, y) (level.objects[x][y] != (struct obj *) 0)
 /*
  * Macros for encapsulation of level.monsters references.
  */
-#define MON_AT(x,y)    (level.monsters[x][y] != (struct monst *)0 && \
-                        !(level.monsters[x][y])->mburied)
-#define MON_BURIED_AT(x,y)     (level.monsters[x][y] != (struct monst *)0 && \
-                               (level.monsters[x][y])->mburied)
-#define place_worm_seg(m,x,y)  level.monsters[x][y] = m
-#define remove_monster(x,y)    level.monsters[x][y] = (struct monst *)0
-#define m_at(x,y)              (MON_AT(x,y) ? level.monsters[x][y] : \
-                                               (struct monst *)0)
-#define m_buried_at(x,y)       (MON_BURIED_AT(x,y) ? level.monsters[x][y] : \
-                                                      (struct monst *)0)
+#define MON_AT(x, y)                            \
+    (level.monsters[x][y] != (struct monst *) 0 \
+     && !(level.monsters[x][y])->mburied)
+#define MON_BURIED_AT(x, y)                     \
+    (level.monsters[x][y] != (struct monst *) 0 \
+     && (level.monsters[x][y])->mburied)
+#define place_worm_seg(m, x, y) level.monsters[x][y] = m
+#define remove_monster(x, y) level.monsters[x][y] = (struct monst *) 0
+#define m_at(x, y) (MON_AT(x, y) ? level.monsters[x][y] : (struct monst *) 0)
+#define m_buried_at(x, y) \
+    (MON_BURIED_AT(x, y) ? level.monsters[x][y] : (struct monst *) 0)
 
 /* restricted movement, potential luck penalties */
 #define Sokoban level.flags.sokoban_rules
index e50fd860e428e312bd256106db28d185280aaf6c..fdbece37b639f9d02dcd6e451ce4538668eb576d 100644 (file)
@@ -11,9 +11,8 @@
  * in a separate file so it can be included in objects.c.
  */
 
-
 /* Code to denote that no skill is applicable */
-#define P_NONE                         0
+#define P_NONE 0
 
 /* Weapon Skills -- Stephen White
  * Order matters and are used in macros.
  * Update weapon.c if you ammend any skills.
  * Also used for oc_subtyp.
  */
-#define P_DAGGER             1
-#define P_KNIFE              2
-#define P_AXE                3
-#define P_PICK_AXE           4
-#define P_SHORT_SWORD        5
-#define P_BROAD_SWORD        6
-#define P_LONG_SWORD         7
-#define P_TWO_HANDED_SWORD   8
-#define P_SCIMITAR           9
-#define P_SABER             10
-#define P_CLUB              11 /* Heavy-shafted bludgeon */
-#define P_MACE              12 
-#define P_MORNING_STAR      13 /* Spiked bludgeon */
-#define P_FLAIL             14 /* Two pieces hinged or chained together */
-#define P_HAMMER            15 /* Heavy head on the end */
-#define P_QUARTERSTAFF      16 /* Long-shafted bludgeon */
-#define P_POLEARMS          17
-#define P_SPEAR                    18  /* includes javelin */
-#define P_TRIDENT          19
-#define P_LANCE                    20
-#define P_BOW              21
-#define P_SLING                    22
-#define P_CROSSBOW         23
-#define P_DART             24
-#define P_SHURIKEN         25
-#define P_BOOMERANG        26
-#define P_WHIP             27
-#define P_UNICORN_HORN     28  /* last weapon */
-#define P_FIRST_WEAPON      P_DAGGER
-#define P_LAST_WEAPON       P_UNICORN_HORN
+#define P_DAGGER 1
+#define P_KNIFE 2
+#define P_AXE 3
+#define P_PICK_AXE 4
+#define P_SHORT_SWORD 5
+#define P_BROAD_SWORD 6
+#define P_LONG_SWORD 7
+#define P_TWO_HANDED_SWORD 8
+#define P_SCIMITAR 9
+#define P_SABER 10
+#define P_CLUB 11 /* Heavy-shafted bludgeon */
+#define P_MACE 12
+#define P_MORNING_STAR 13 /* Spiked bludgeon */
+#define P_FLAIL 14        /* Two pieces hinged or chained together */
+#define P_HAMMER 15       /* Heavy head on the end */
+#define P_QUARTERSTAFF 16 /* Long-shafted bludgeon */
+#define P_POLEARMS 17
+#define P_SPEAR 18 /* includes javelin */
+#define P_TRIDENT 19
+#define P_LANCE 20
+#define P_BOW 21
+#define P_SLING 22
+#define P_CROSSBOW 23
+#define P_DART 24
+#define P_SHURIKEN 25
+#define P_BOOMERANG 26
+#define P_WHIP 27
+#define P_UNICORN_HORN 28 /* last weapon */
+#define P_FIRST_WEAPON P_DAGGER
+#define P_LAST_WEAPON P_UNICORN_HORN
 
 /* Spell Skills added by Larry Stewart-Zerba */
-#define P_ATTACK_SPELL     29
-#define P_HEALING_SPELL            30
-#define P_DIVINATION_SPELL  31
+#define P_ATTACK_SPELL 29
+#define P_HEALING_SPELL 30
+#define P_DIVINATION_SPELL 31
 #define P_ENCHANTMENT_SPELL 32
-#define P_CLERIC_SPELL     33
-#define P_ESCAPE_SPELL     34
-#define P_MATTER_SPELL     35
-#define P_FIRST_SPELL          P_ATTACK_SPELL
-#define P_LAST_SPELL           P_MATTER_SPELL
+#define P_CLERIC_SPELL 33
+#define P_ESCAPE_SPELL 34
+#define P_MATTER_SPELL 35
+#define P_FIRST_SPELL P_ATTACK_SPELL
+#define P_LAST_SPELL P_MATTER_SPELL
 
 /* Other types of combat */
-#define P_BARE_HANDED_COMBAT   36  /* actually weaponless; gloves are ok */
-#define P_MARTIAL_ARTS         P_BARE_HANDED_COMBAT    /* Role distinguishes */
-#define P_TWO_WEAPON_COMBAT    37      /* Finally implemented */
-#define P_RIDING               38      /* How well you control your steed */
-#define P_LAST_H_TO_H          P_RIDING
-#define P_FIRST_H_TO_H         P_BARE_HANDED_COMBAT
+#define P_BARE_HANDED_COMBAT 36 /* actually weaponless; gloves are ok */
+#define P_MARTIAL_ARTS P_BARE_HANDED_COMBAT /* Role distinguishes */
+#define P_TWO_WEAPON_COMBAT 37              /* Finally implemented */
+#define P_RIDING 38 /* How well you control your steed */
+#define P_LAST_H_TO_H P_RIDING
+#define P_FIRST_H_TO_H P_BARE_HANDED_COMBAT
 
-#define P_NUM_SKILLS           (P_LAST_H_TO_H+1)
+#define P_NUM_SKILLS (P_LAST_H_TO_H + 1)
 
 /* These roles qualify for a martial arts bonus */
-#define martial_bonus()        (Role_if(PM_SAMURAI) || Role_if(PM_MONK))
-
+#define martial_bonus() (Role_if(PM_SAMURAI) || Role_if(PM_MONK))
 
 /*
  * These are the standard weapon skill levels.  It is important that
  * with the current skill-1.  To work out for the UNSKILLED case,
  * a value of 0 needed.
  */
-#define P_ISRESTRICTED 0
-#define P_UNSKILLED            1
-#define P_BASIC                        2
-#define P_SKILLED              3
-#define P_EXPERT               4
-#define P_MASTER               5       /* Unarmed combat/martial arts only */
-#define P_GRAND_MASTER 6       /* Unarmed combat/martial arts only */
+#define P_ISRESTRICTED 0
+#define P_UNSKILLED 1
+#define P_BASIC 2
+#define P_SKILLED 3
+#define P_EXPERT 4
+#define P_MASTER 5       /* Unarmed combat/martial arts only */
+#define P_GRAND_MASTER 6 /* Unarmed combat/martial arts only */
 
-#define practice_needed_to_advance(level) ((level)*(level)*20)
+#define practice_needed_to_advance(level) ((level) * (level) *20)
 
 /* The hero's skill in various weapons. */
 struct skills {
-       xchar skill;
-       xchar max_skill;
-       unsigned short advance;
+    xchar skill;
+    xchar max_skill;
+    unsigned short advance;
 };
 
-#define P_SKILL(type)          (u.weapon_skills[type].skill)
-#define P_MAX_SKILL(type)      (u.weapon_skills[type].max_skill)
-#define P_ADVANCE(type)                (u.weapon_skills[type].advance)
-#define P_RESTRICTED(type)     (u.weapon_skills[type].skill == P_ISRESTRICTED)
+#define P_SKILL(type) (u.weapon_skills[type].skill)
+#define P_MAX_SKILL(type) (u.weapon_skills[type].max_skill)
+#define P_ADVANCE(type) (u.weapon_skills[type].advance)
+#define P_RESTRICTED(type) (u.weapon_skills[type].skill == P_ISRESTRICTED)
 
-#define P_SKILL_LIMIT 60       /* Max number of skill advancements */
+#define P_SKILL_LIMIT 60 /* Max number of skill advancements */
 
 /* Initial skill matrix structure; used in u_init.c and weapon.c */
 struct def_skill {
-       xchar skill;
-       xchar skmax;
+    xchar skill;
+    xchar skmax;
 };
 
-#endif  /* SKILLS_H */
+#endif /* SKILLS_H */
index c4bc0cd9dffb460e8a3d1a12a4ed405963a06871..497b1b2fa0d91f69e4b38bb3e7699c329d411055 100644 (file)
@@ -7,49 +7,50 @@
 #ifndef SP_LEV_H
 #define SP_LEV_H
 
-    /* wall directions */
-#define W_NORTH                1
-#define W_SOUTH                2
-#define W_EAST         4
-#define W_WEST         8
-#define W_ANY          (W_NORTH|W_SOUTH|W_EAST|W_WEST)
-
-    /* MAP limits */
-#define MAP_X_LIM      76
-#define MAP_Y_LIM      21
-
-    /* Per level flags */
-#define NOTELEPORT     0x00000001L
-#define HARDFLOOR      0x00000002L
-#define NOMMAP         0x00000004L
-#define SHORTSIGHTED   0x00000008L
-#define ARBOREAL       0x00000010L
-#define MAZELEVEL      0x00000020L
-#define PREMAPPED       0x00000040L  /* premapped level & sokoban rules */
-#define SHROUD          0x00000080L
-#define GRAVEYARD       0x00000100L
-#define ICEDPOOLS       0x00000200L  /* for ice locations: ICED_POOL vs ICED_MOAT */
-#define SOLIDIFY       0x00000400L  /* outer areas are nondiggable & nonpasswall */
-#define CORRMAZE        0x00000800L  /* for maze levels only */
+/* wall directions */
+#define W_NORTH 1
+#define W_SOUTH 2
+#define W_EAST 4
+#define W_WEST 8
+#define W_ANY (W_NORTH | W_SOUTH | W_EAST | W_WEST)
+
+/* MAP limits */
+#define MAP_X_LIM 76
+#define MAP_Y_LIM 21
+
+/* Per level flags */
+#define NOTELEPORT 0x00000001L
+#define HARDFLOOR 0x00000002L
+#define NOMMAP 0x00000004L
+#define SHORTSIGHTED 0x00000008L
+#define ARBOREAL 0x00000010L
+#define MAZELEVEL 0x00000020L
+#define PREMAPPED 0x00000040L /* premapped level & sokoban rules */
+#define SHROUD 0x00000080L
+#define GRAVEYARD 0x00000100L
+#define ICEDPOOLS 0x00000200L /* for ice locations: ICED_POOL vs ICED_MOAT \
+                                 */
+#define SOLIDIFY 0x00000400L  /* outer areas are nondiggable & nonpasswall */
+#define CORRMAZE 0x00000800L  /* for maze levels only */
 
 /* different level layout initializers */
-#define LVLINIT_NONE           0
-#define LVLINIT_SOLIDFILL      1
-#define LVLINIT_MAZEGRID       2
-#define LVLINIT_MINES          3
-#define LVLINIT_ROGUE          4
+#define LVLINIT_NONE 0
+#define LVLINIT_SOLIDFILL 1
+#define LVLINIT_MAZEGRID 2
+#define LVLINIT_MINES 3
+#define LVLINIT_ROGUE 4
 
 /* max. layers of object containment */
 #define MAX_CONTAINMENT 10
 
 /* max. # of random registers */
-#define MAX_REGISTERS  10
+#define MAX_REGISTERS 10
 
 /* max. nested depth of subrooms */
 #define MAX_NESTED_ROOMS 5
 
 /* max. # of opcodes per special level */
-#define SPCODER_MAX_RUNTIME    65536
+#define SPCODER_MAX_RUNTIME 65536
 
 /* Opcodes for creating the level
  * If you change these, also change opcodestr[] in util/lev_main.c
@@ -142,112 +143,118 @@ enum opcode_defs {
  * mean.
  */
 /* MONSTER */
-#define SP_M_V_PEACEFUL         0
-#define SP_M_V_ALIGN            1
-#define SP_M_V_ASLEEP           2
-#define SP_M_V_APPEAR           3
-#define SP_M_V_NAME             4
-
-#define SP_M_V_FEMALE          5
-#define SP_M_V_INVIS           6
-#define SP_M_V_CANCELLED       7
-#define SP_M_V_REVIVED         8
-#define SP_M_V_AVENGE          9
-#define SP_M_V_FLEEING         10
-#define SP_M_V_BLINDED         11
-#define SP_M_V_PARALYZED       12
-#define SP_M_V_STUNNED         13
-#define SP_M_V_CONFUSED                14
-#define SP_M_V_SEENTRAPS       15
-
-#define SP_M_V_END              16 /* end of variable parameters */
+#define SP_M_V_PEACEFUL 0
+#define SP_M_V_ALIGN 1
+#define SP_M_V_ASLEEP 2
+#define SP_M_V_APPEAR 3
+#define SP_M_V_NAME 4
+
+#define SP_M_V_FEMALE 5
+#define SP_M_V_INVIS 6
+#define SP_M_V_CANCELLED 7
+#define SP_M_V_REVIVED 8
+#define SP_M_V_AVENGE 9
+#define SP_M_V_FLEEING 10
+#define SP_M_V_BLINDED 11
+#define SP_M_V_PARALYZED 12
+#define SP_M_V_STUNNED 13
+#define SP_M_V_CONFUSED 14
+#define SP_M_V_SEENTRAPS 15
+
+#define SP_M_V_END 16 /* end of variable parameters */
 
 /* OBJECT */
-#define SP_O_V_SPE              0
-#define SP_O_V_CURSE            1
-#define SP_O_V_CORPSENM         2
-#define SP_O_V_NAME             3
-#define SP_O_V_QUAN            4
-#define SP_O_V_BURIED          5
-#define SP_O_V_LIT             6
-#define SP_O_V_ERODED          7
-#define SP_O_V_LOCKED          8
-#define SP_O_V_TRAPPED         9
-#define SP_O_V_RECHARGED       10
-#define SP_O_V_INVIS           11
-#define SP_O_V_GREASED         12
-#define SP_O_V_BROKEN          13
-#define SP_O_V_COORD           14
-#define SP_O_V_END              15 /* end of variable parameters */
-
+#define SP_O_V_SPE 0
+#define SP_O_V_CURSE 1
+#define SP_O_V_CORPSENM 2
+#define SP_O_V_NAME 3
+#define SP_O_V_QUAN 4
+#define SP_O_V_BURIED 5
+#define SP_O_V_LIT 6
+#define SP_O_V_ERODED 7
+#define SP_O_V_LOCKED 8
+#define SP_O_V_TRAPPED 9
+#define SP_O_V_RECHARGED 10
+#define SP_O_V_INVIS 11
+#define SP_O_V_GREASED 12
+#define SP_O_V_BROKEN 13
+#define SP_O_V_COORD 14
+#define SP_O_V_END 15 /* end of variable parameters */
 
 /* When creating objects, we need to know whether
  * it's a container and/or contents.
  */
-#define SP_OBJ_CONTENT         0x1
-#define SP_OBJ_CONTAINER       0x2
-
+#define SP_OBJ_CONTENT 0x1
+#define SP_OBJ_CONTAINER 0x2
 
 /* SPO_FILTER types */
-#define SPOFILTER_PERCENT      0
-#define SPOFILTER_SELECTION    1
-#define SPOFILTER_MAPCHAR      2
+#define SPOFILTER_PERCENT 0
+#define SPOFILTER_SELECTION 1
+#define SPOFILTER_MAPCHAR 2
 
 /* gradient filter types */
-#define SEL_GRADIENT_RADIAL    0
-#define SEL_GRADIENT_SQUARE    1
+#define SEL_GRADIENT_RADIAL 0
+#define SEL_GRADIENT_SQUARE 1
 
 /* variable types */
-#define SPOVAR_NULL    0x00
-#define SPOVAR_INT     0x01 /* l */
-#define SPOVAR_STRING  0x02 /* str */
-#define SPOVAR_VARIABLE        0x03 /* str (contains the variable name) */
-#define SPOVAR_COORD   0x04 /* coordinate, encoded in l; use SP_COORD_X() and SP_COORD_Y() */
-#define SPOVAR_REGION  0x05 /* region, encoded in l; use SP_REGION_X1() etc */
-#define SPOVAR_MAPCHAR 0x06 /* map char, in l */
-#define SPOVAR_MONST   0x07 /* monster class & specific monster, encoded in l; use SP_MONST_... */
-#define SPOVAR_OBJ     0x08 /* object class & specific object type, encoded in l; use SP_OBJ_... */
-#define SPOVAR_SEL     0x09 /* selection. char[COLNO][ROWNO] in str */
-#define SPOVAR_ARRAY   0x40 /* used in splev_var & lc_vardefs, not in opvar */
+#define SPOVAR_NULL 0x00
+#define SPOVAR_INT 0x01      /* l */
+#define SPOVAR_STRING 0x02   /* str */
+#define SPOVAR_VARIABLE 0x03 /* str (contains the variable name) */
+#define SPOVAR_COORD \
+    0x04 /* coordinate, encoded in l; use SP_COORD_X() and SP_COORD_Y() */
+#define SPOVAR_REGION 0x05  /* region, encoded in l; use SP_REGION_X1() etc \
+                               */
+#define SPOVAR_MAPCHAR 0x06 /* map char, in l */
+#define SPOVAR_MONST                                                         \
+    0x07 /* monster class & specific monster, encoded in l; use SP_MONST_... \
+            */
+#define SPOVAR_OBJ                                                 \
+    0x08 /* object class & specific object type, encoded in l; use \
+            SP_OBJ_... */
+#define SPOVAR_SEL 0x09   /* selection. char[COLNO][ROWNO] in str */
+#define SPOVAR_ARRAY 0x40 /* used in splev_var & lc_vardefs, not in opvar */
 
 #define SP_COORD_IS_RANDOM 0x01000000
-/* Humidity flags for get_location() and friends, used with SP_COORD_PACK_RANDOM() */
-#define DRY    0x1
-#define WET    0x2
-#define HOT    0x4
-#define SOLID  0x8
-#define ANY_LOC 0x10 /* even outside the level */
+/* Humidity flags for get_location() and friends, used with
+ * SP_COORD_PACK_RANDOM() */
+#define DRY 0x1
+#define WET 0x2
+#define HOT 0x4
+#define SOLID 0x8
+#define ANY_LOC 0x10     /* even outside the level */
 #define NO_LOC_WARN 0x20 /* no complaints and set x & y to -1, if no loc */
 
-#define SP_COORD_X(l)  (l & 0xff)
-#define SP_COORD_Y(l)  ((l >> 16) & 0xff)
-#define SP_COORD_PACK(x,y) ((( x ) & 0xff) + ((( y ) & 0xff) << 16))
+#define SP_COORD_X(l) (l & 0xff)
+#define SP_COORD_Y(l) ((l >> 16) & 0xff)
+#define SP_COORD_PACK(x, y) (((x) &0xff) + (((y) &0xff) << 16))
 #define SP_COORD_PACK_RANDOM(f) (SP_COORD_IS_RANDOM | (f))
 
-#define SP_REGION_X1(l)        (l & 0xff)
-#define SP_REGION_Y1(l)        ((l >> 8) & 0xff)
-#define SP_REGION_X2(l)        ((l >> 16) & 0xff)
-#define SP_REGION_Y2(l)        ((l >> 24) & 0xff)
-#define SP_REGION_PACK(x1,y1,x2,y2) ((( x1 ) & 0xff) + ((( y1 ) & 0xff) << 8) + ((( x2 ) & 0xff) << 16) + ((( y2 ) & 0xff) << 24))
+#define SP_REGION_X1(l) (l & 0xff)
+#define SP_REGION_Y1(l) ((l >> 8) & 0xff)
+#define SP_REGION_X2(l) ((l >> 16) & 0xff)
+#define SP_REGION_Y2(l) ((l >> 24) & 0xff)
+#define SP_REGION_PACK(x1, y1, x2, y2)                         \
+    (((x1) &0xff) + (((y1) &0xff) << 8) + (((x2) &0xff) << 16) \
+     + (((y2) &0xff) << 24))
 
 #define SP_MONST_CLASS(l) (l & 0xff)
-#define SP_MONST_PM(l)   ((l >> 8) & 0xffff)
-#define SP_MONST_PACK(m,c) ((( m ) << 8) + ((char)( c )))
+#define SP_MONST_PM(l) ((l >> 8) & 0xffff)
+#define SP_MONST_PACK(m, c) (((m) << 8) + ((char) (c)))
 
-#define SP_OBJ_CLASS(l)          (l & 0xff)
-#define SP_OBJ_TYP(l)    ((l >> 8) & 0xffff)
-#define SP_OBJ_PACK(o,c)  ((( o ) << 8) + ((char)( c )))
+#define SP_OBJ_CLASS(l) (l & 0xff)
+#define SP_OBJ_TYP(l) ((l >> 8) & 0xffff)
+#define SP_OBJ_PACK(o, c) (((o) << 8) + ((char) (c)))
 
 #define SP_MAPCHAR_TYP(l) (l & 0xff)
 #define SP_MAPCHAR_LIT(l) ((l >> 8) & 0xff)
-#define SP_MAPCHAR_PACK(typ,lit) ((( lit ) << 8) + ((char)( typ )))
-
+#define SP_MAPCHAR_PACK(typ, lit) (((lit) << 8) + ((char) (typ)))
 
 struct opvar {
     xchar spovartyp; /* one of SPOVAR_foo */
     union {
-       char *str;
-       long l;
+        char *str;
+        long l;
     } vardata;
 };
 
@@ -256,8 +263,8 @@ struct splev_var {
     char *name;
     xchar svtyp; /* SPOVAR_foo */
     union {
-       struct opvar *value;
-       struct opvar **arrayvalues;
+        struct opvar *value;
+        struct opvar **arrayvalues;
     } data;
     long array_len;
 };
@@ -268,7 +275,6 @@ struct splevstack {
     struct opvar **stackdata;
 };
 
-
 struct sp_frame {
     struct sp_frame *next;
     struct splevstack *stack;
@@ -276,28 +282,27 @@ struct sp_frame {
     long n_opcode;
 };
 
-
 struct sp_coder {
     struct splevstack *stack;
     struct sp_frame *frame;
     int premapped;
     boolean solidify;
     struct mkroom *croom;
-    struct mkroom *tmproomlist[MAX_NESTED_ROOMS+1];
-    boolean failed_room[MAX_NESTED_ROOMS+1];
+    struct mkroom *tmproomlist[MAX_NESTED_ROOMS + 1];
+    boolean failed_room[MAX_NESTED_ROOMS + 1];
     int n_subroom;
     boolean exit_script;
-    int  lvl_is_joined;
+    int lvl_is_joined;
 
-    int opcode;  /* current opcode */
+    int opcode;          /* current opcode */
     struct opvar *opdat; /* current push data (req. opcode == SPO_PUSH) */
 };
 
 /* special level coder CPU flags */
-#define SP_CPUFLAG_LT  1
-#define SP_CPUFLAG_GT  2
-#define SP_CPUFLAG_EQ  4
-#define SP_CPUFLAG_ZERO        8
+#define SP_CPUFLAG_LT 1
+#define SP_CPUFLAG_GT 2
+#define SP_CPUFLAG_EQ 4
+#define SP_CPUFLAG_ZERO 8
 
 /*
  * Structures manipulated by the special levels loader & compiler
@@ -311,33 +316,32 @@ typedef struct {
 } unpacked_coord;
 
 typedef struct {
-       int cmp_what;
-       int cmp_val;
+    int cmp_what;
+    int cmp_val;
 } opcmp;
 
 typedef struct {
-       long jmp_target;
+    long jmp_target;
 } opjmp;
 
-
 typedef union str_or_len {
-       char *str;
-       int   len;
+    char *str;
+    int len;
 } Str_or_Len;
 
 typedef struct {
-       xchar   init_style; /* one of LVLINIT_foo */
-       long    flags;
-       schar   filling;
-       boolean init_present, padding;
-       char    fg, bg;
-       boolean smoothed, joined;
-       xchar   lit, walled;
-       boolean icedpools;
+    xchar init_style; /* one of LVLINIT_foo */
+    long flags;
+    schar filling;
+    boolean init_present, padding;
+    char fg, bg;
+    boolean smoothed, joined;
+    xchar lit, walled;
+    boolean icedpools;
 } lev_init;
 
 typedef struct {
-       xchar wall, pos, secret, mask;
+    xchar wall, pos, secret, mask;
 } room_door;
 
 typedef struct {
@@ -346,40 +350,41 @@ typedef struct {
 } trap;
 
 typedef struct {
-       Str_or_Len name, appear_as;
-       short id;
-       aligntyp align;
+    Str_or_Len name, appear_as;
+    short id;
+    aligntyp align;
     packed_coord coord;
-       xchar x, y, class, appear;
-       schar peaceful, asleep;
-        short female, invis, cancelled, revived, avenge, fleeing, blinded, paralyzed, stunned, confused;
-        long seentraps;
-       short has_invent;
+    xchar x, y, class, appear;
+    schar peaceful, asleep;
+    short female, invis, cancelled, revived, avenge, fleeing, blinded,
+        paralyzed, stunned, confused;
+    long seentraps;
+    short has_invent;
 } monster;
 
 typedef struct {
-       Str_or_Len name;
-       int   corpsenm;
-       short id, spe;
+    Str_or_Len name;
+    int corpsenm;
+    short id, spe;
     packed_coord coord;
-       xchar x, y, class, containment;
-       schar curse_state;
-       int   quan;
-       short buried;
-       short lit;
-        short eroded, locked, trapped, recharged, invis, greased, broken;
+    xchar x, y, class, containment;
+    schar curse_state;
+    int quan;
+    short buried;
+    short lit;
+    short eroded, locked, trapped, recharged, invis, greased, broken;
 } object;
 
 typedef struct {
     packed_coord coord;
-       xchar           x, y;
-       aligntyp        align;
-       xchar           shrine;
+    xchar x, y;
+    aligntyp align;
+    xchar shrine;
 } altar;
 
 typedef struct {
-       xchar x1, y1, x2, y2;
-       xchar rtype, rlit, rirreg;
+    xchar x1, y1, x2, y2;
+    xchar rtype, rlit, rirreg;
 } region;
 
 typedef struct {
@@ -388,41 +393,45 @@ typedef struct {
 
 typedef struct {
     xchar chance;
-    xchar x1,y1,x2,y2;
+    xchar x1, y1, x2, y2;
     xchar fromter, toter, tolit;
 } replaceterrain;
 
 /* values for rtype are defined in dungeon.h */
 typedef struct {
-       struct { xchar x1, y1, x2, y2; } inarea;
-       struct { xchar x1, y1, x2, y2; } delarea;
-       boolean in_islev, del_islev;
-       xchar rtype, padding;
-       Str_or_Len rname;
+    struct {
+        xchar x1, y1, x2, y2;
+    } inarea;
+    struct {
+        xchar x1, y1, x2, y2;
+    } delarea;
+    boolean in_islev, del_islev;
+    xchar rtype, padding;
+    Str_or_Len rname;
 } lev_region;
 
 typedef struct {
-       struct {
-               xchar room;
-               xchar wall;
-               xchar door;
-       } src, dest;
+    struct {
+        xchar room;
+        xchar wall;
+        xchar door;
+    } src, dest;
 } corridor;
 
 typedef struct _room {
-       Str_or_Len name;
-       Str_or_Len parent;
-       xchar x, y, w, h;
-       xchar xalign, yalign;
-       xchar rtype, chance, rlit, filled, joined;
+    Str_or_Len name;
+    Str_or_Len parent;
+    xchar x, y, w, h;
+    xchar xalign, yalign;
+    xchar rtype, chance, rlit, filled, joined;
 } room;
 
 typedef struct {
-       schar zaligntyp;
-       schar keep_region;
-       schar halign, valign;
-       char xsize, ysize;
-       char **map;
+    schar zaligntyp;
+    schar keep_region;
+    schar halign, valign;
+    char xsize, ysize;
+    char **map;
 } mazepart;
 
 typedef struct {
@@ -431,16 +440,15 @@ typedef struct {
 } _opcode;
 
 typedef struct {
-    _opcode  *opcodes;
-    long     n_opcodes;
+    _opcode *opcodes;
+    long n_opcodes;
 } sp_lev;
 
 typedef struct {
-       xchar x, y, direction, count, lit;
-       char typ;
+    xchar x, y, direction, count, lit;
+    char typ;
 } spill;
 
-
 /* only used by lev_comp */
 struct lc_funcdefs_parm {
     char *name;
@@ -476,76 +484,79 @@ struct lc_breakdef {
  */
 #ifdef SPEC_LEV
 /* compiling lev_comp rather than nethack */
-# ifdef USE_OLDARGS
-#  undef VA_ARGS
-#  undef VA_DECL
-#  undef VA_DECL2
-#  undef VA_SHIFT
-#  define VA_ARGS      arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,\
-                       arg10,arg11,arg12,arg13,arg14
-#  define VA_DECL(typ1,var1)  (var1,VA_ARGS) \
-       typ1 var1; \
-       char *arg1,*arg2,*arg3,*arg4,*arg5,*arg6,*arg7,*arg8,*arg9,\
-            *arg10,*arg11,*arg12,*arg13,*arg14; {
-#  define VA_DECL2(typ1,var1,typ2,var2)  (var1,var2,VA_ARGS) \
-       typ1 var1; typ2 var2; \
-       char *arg1,*arg2,*arg3,*arg4,*arg5,*arg6,*arg7,*arg8,*arg9,\
-            *arg10,*arg11,*arg12,*arg13,*arg14; {
-   /* unlike in the core, lev_comp's VA_SHIFT is completely safe,
-      because callers always pass all these arguments */
-#  define VA_SHIFT()   (arg1=arg2, arg2=arg3, arg3=arg4, arg4=arg5,\
-                        arg5=arg6, arg6=arg7, arg7=arg8, arg8=arg9,\
-                        arg9=arg10, arg10=arg11, arg11=arg12,\
-                        arg12=arg13, arg13=arg14, arg14=0)
-   /* standard NULL may be either (void *)0 or plain 0, both of
-      which would need to be explicitly cast to (char *) here */
+#ifdef USE_OLDARGS
+#undef VA_ARGS
+#undef VA_DECL
+#undef VA_DECL2
+#undef VA_SHIFT
+#define VA_ARGS                                                         \
+    arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, \
+        arg12, arg13, arg14
+#define VA_DECL(typ1, var1)                                             \
+    (var1, VA_ARGS) typ1 var1;                                          \
+    char *arg1, *arg2, *arg3, *arg4, *arg5, *arg6, *arg7, *arg8, *arg9, \
+        *arg10, *arg11, *arg12, *arg13, *arg14;                         \
+    {
+#define VA_DECL2(typ1, var1, typ2, var2)                                \
+    (var1, var2, VA_ARGS) typ1 var1;                                    \
+    typ2 var2;                                                          \
+    char *arg1, *arg2, *arg3, *arg4, *arg5, *arg6, *arg7, *arg8, *arg9, \
+        *arg10, *arg11, *arg12, *arg13, *arg14;                         \
+    {
+/* unlike in the core, lev_comp's VA_SHIFT is completely safe,
+   because callers always pass all these arguments */
+#define VA_SHIFT()                                                       \
+    (arg1 = arg2, arg2 = arg3, arg3 = arg4, arg4 = arg5, arg5 = arg6,    \
+     arg6 = arg7, arg7 = arg8, arg8 = arg9, arg9 = arg10, arg10 = arg11, \
+     arg11 = arg12, arg12 = arg13, arg13 = arg14, arg14 = 0)
+/* standard NULL may be either (void *)0 or plain 0, both of
+   which would need to be explicitly cast to (char *) here */
 typedef char *Va;
-#  define VA_PASS1(a1)         (Va)a1, (Va)0,(Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS2(a1,a2)      (Va)a1, (Va)a2, (Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS3(a1,a2,a3)   (Va)a1, (Va)a2, (Va)a3, (Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS4(a1,a2,a3,a4)        (Va)a1, (Va)a2, (Va)a3, (Va)a4, (Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS5(a1,a2,a3,a4,a5) \
-                               (Va)a1, (Va)a2, (Va)a3, (Va)a4, (Va)a5,\
-                               (Va)0,(Va)0,(Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS7(a1,a2,a3,a4,a5,a6,a7) \
-                               (Va)a1, (Va)a2, (Va)a3, (Va)a4, (Va)a5,\
-                               (Va)a6, (Va)a7, (Va)0,(Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS8(a1,a2,a3,a4,a5,a6,a7,a8) \
-                               (Va)a1, (Va)a2, (Va)a3, (Va)a4, (Va)a5,\
-                               (Va)a6, (Va)a7, (Va)a8, (Va)0,(Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS9(a1,a2,a3,a4,a5,a6,a7,a8,a9) \
-                               (Va)a1, (Va)a2, (Va)a3, (Va)a4, (Va)a5,\
-                               (Va)a6, (Va)a7, (Va)a8, (Va)a9, (Va)0,\
-                               (Va)0,(Va)0,(Va)0,(Va)0
-#  define VA_PASS14(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)    \
-                               (Va)a1, (Va)a2, (Va)a3, (Va)a4, (Va)a5,\
-                               (Va)a6, (Va)a7, (Va)a8, (Va)a9, (Va)a10,\
-                               (Va)a11, (Va)a12, (Va)a13, (Va)a14
-# else /*!USE_OLDARGS*/
-   /* USE_STDARG and USE_VARARGS don't need to pass dummy arguments
-      or cast real ones */
-#  define VA_PASS1(a1)         a1
-#  define VA_PASS2(a1,a2)      a1,a2
-#  define VA_PASS3(a1,a2,a3)   a1,a2,a3
-#  define VA_PASS4(a1,a2,a3,a4)        a1,a2,a3,a4
-#  define VA_PASS5(a1,a2,a3,a4,a5) a1,a2,a3,a4,a5
-#  define VA_PASS7(a1,a2,a3,a4,a5,a6,a7) a1,a2,a3,a4,a5,a6,a7
-#  define VA_PASS8(a1,a2,a3,a4,a5,a6,a7,a8) a1,a2,a3,a4,a5,a6,a7,a8
-#  define VA_PASS9(a1,a2,a3,a4,a5,a6,a7,a8,a9) a1,a2,a3,a4,a5,a6,a7,a8,a9
-#  define VA_PASS14(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) \
-                               a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14
-# endif /*?USE_OLDARGS*/
+#define VA_PASS1(a1)                                                         \
+    (Va) a1, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS2(a1, a2)                                              \
+    (Va) a1, (Va) a2, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS3(a1, a2, a3)                                           \
+    (Va) a1, (Va) a2, (Va) a3, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS4(a1, a2, a3, a4)                                        \
+    (Va) a1, (Va) a2, (Va) a3, (Va) a4, (Va) 0, (Va) 0, (Va) 0, (Va) 0, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS5(a1, a2, a3, a4, a5)                                     \
+    (Va) a1, (Va) a2, (Va) a3, (Va) a4, (Va) a5, (Va) 0, (Va) 0, (Va) 0, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS7(a1, a2, a3, a4, a5, a6, a7)                               \
+    (Va) a1, (Va) a2, (Va) a3, (Va) a4, (Va) a5, (Va) a6, (Va) a7, (Va) 0, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS8(a1, a2, a3, a4, a5, a6, a7, a8)                            \
+    (Va) a1, (Va) a2, (Va) a3, (Va) a4, (Va) a5, (Va) a6, (Va) a7, (Va) a8, \
+        (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS9(a1, a2, a3, a4, a5, a6, a7, a8, a9)                        \
+    (Va) a1, (Va) a2, (Va) a3, (Va) a4, (Va) a5, (Va) a6, (Va) a7, (Va) a8, \
+        (Va) a9, (Va) 0, (Va) 0, (Va) 0, (Va) 0, (Va) 0
+#define VA_PASS14(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13,   \
+                  a14)                                                      \
+    (Va) a1, (Va) a2, (Va) a3, (Va) a4, (Va) a5, (Va) a6, (Va) a7, (Va) a8, \
+        (Va) a9, (Va) a10, (Va) a11, (Va) a12, (Va) a13, (Va) a14
+#else /*!USE_OLDARGS*/
+/* USE_STDARG and USE_VARARGS don't need to pass dummy arguments
+   or cast real ones */
+#define VA_PASS1(a1) a1
+#define VA_PASS2(a1, a2) a1, a2
+#define VA_PASS3(a1, a2, a3) a1, a2, a3
+#define VA_PASS4(a1, a2, a3, a4) a1, a2, a3, a4
+#define VA_PASS5(a1, a2, a3, a4, a5) a1, a2, a3, a4, a5
+#define VA_PASS7(a1, a2, a3, a4, a5, a6, a7) a1, a2, a3, a4, a5, a6, a7
+#define VA_PASS8(a1, a2, a3, a4, a5, a6, a7, a8) \
+    a1, a2, a3, a4, a5, a6, a7, a8
+#define VA_PASS9(a1, a2, a3, a4, a5, a6, a7, a8, a9) \
+    a1, a2, a3, a4, a5, a6, a7, a8, a9
+#define VA_PASS14(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
+                  a14)                                                    \
+    a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14
+#endif /*?USE_OLDARGS*/
 /* You were warned to avert your eyes.... */
 #endif /*SPEC_LEV*/
 
index fc3816f9cd573048e49fe6ad5fd00e6eadd67b84..7733a0c024bfe03d459dd4dea30a2d1fcb3fc42e 100644 (file)
@@ -7,23 +7,23 @@
 #ifndef SPELL_H
 #define SPELL_H
 
-#define NO_SPELL       0
+#define NO_SPELL 0
 
 /* spellbook re-use control; used when reading and when polymorphing */
 #define MAX_SPELL_STUDY 3
 
 struct spell {
-    short      sp_id;                  /* spell id (== object.otyp) */
-    xchar      sp_lev;                 /* power level */
-    int                sp_know;                /* knowlege of spell */
+    short sp_id;  /* spell id (== object.otyp) */
+    xchar sp_lev; /* power level */
+    int sp_know;  /* knowlege of spell */
 };
 
 /* levels of memory destruction with a scroll of amnesia */
-#define ALL_MAP                0x1
-#define ALL_SPELLS     0x2
+#define ALL_MAP 0x1
+#define ALL_SPELLS 0x2
 
-#define decrnknow(spell)       spl_book[spell].sp_know--
-#define spellid(spell)         spl_book[spell].sp_id
-#define spellknow(spell)       spl_book[spell].sp_know
+#define decrnknow(spell) spl_book[spell].sp_know--
+#define spellid(spell) spl_book[spell].sp_id
+#define spellknow(spell) spl_book[spell].sp_know
 
 #endif /* SPELL_H */
index d58ead5d5c5453dac2f536fa50220222d4258307..2db94990876d6a642d674566e5cc08fec3143a6a 100644 (file)
@@ -7,40 +7,39 @@
 #define SYS_H
 
 struct sysopt {
-       char *support;  /* local support contact */
-       char *recover;  /* how to run recover - may be overridden by win port */
-       char *wizards;
-       char *explorers;
-       char *shellers; /* like wizards, for ! command (-DSHELL) */
-       char *debugfiles; /* files to show debugplines in. '*' is all. */
-       int env_dbgfl;  /*  1: debugfiles comes from getenv("DEBUGFILES")
-                        *     so sysconf's DEBUGFILES shouldn't override it;
-                        *  0: getenv() hasn't been attempted yet;
-                        * -1: getenv() didn't find a value for DEBUGFILES.
-                        */    
-       int   maxplayers;
-               /* record file */
-       int persmax;
-       int pers_is_uid;
-       int entrymax;
-       int pointsmin;
-       int tt_oname_maxrank;
+    char *support; /* local support contact */
+    char *recover; /* how to run recover - may be overridden by win port */
+    char *wizards;
+    char *explorers;
+    char *shellers;   /* like wizards, for ! command (-DSHELL) */
+    char *debugfiles; /* files to show debugplines in. '*' is all. */
+    int env_dbgfl;    /*  1: debugfiles comes from getenv("DEBUGFILES")
+                       *     so sysconf's DEBUGFILES shouldn't override it;
+                       *  0: getenv() hasn't been attempted yet;
+                       * -1: getenv() didn't find a value for DEBUGFILES.
+                       */
+    int maxplayers;
+    /* record file */
+    int persmax;
+    int pers_is_uid;
+    int entrymax;
+    int pointsmin;
+    int tt_oname_maxrank;
 #ifdef PANICTRACE
-               /* panic options */
-       char *gdbpath;
-       char *greppath;
-       int  panictrace_gdb;
-# ifdef PANICTRACE_LIBC
-       int panictrace_libc;
-# endif
+    /* panic options */
+    char *gdbpath;
+    char *greppath;
+    int panictrace_gdb;
+#ifdef PANICTRACE_LIBC
+    int panictrace_libc;
 #endif
-       int seduce;
-       int check_save_uid; /* restoring savefile checks UID? */
+#endif
+    int seduce;
+    int check_save_uid; /* restoring savefile checks UID? */
 };
 
-extern  struct sysopt sysopt;
+extern struct sysopt sysopt;
 
 #define SYSOPT_SEDUCE sysopt.seduce
 
 #endif /* SYS_H */
-
index 2ba65b1115d393bd3712fd259dd8d8055b8938fb..cefa5240927af7887c8196e88c83a32b6949b7c9 100644 (file)
 #if (defined(VMS) && !defined(__GNUC__)) || defined(MAC)
 #include <types.h>
 #else
-# ifndef AMIGA
+#ifndef AMIGA
 #include <sys/types.h>
-# endif
+#endif
 #endif
 
 #if (defined(MICRO) && !defined(TOS)) || defined(ANCIENT_VAXC)
-# if !defined(_SIZE_T) && !defined(__size_t) /* __size_t for CSet/2 */
-#  define _SIZE_T
-#  if !((defined(MSDOS) || defined(OS2)) && defined(_SIZE_T_DEFINED)) /* MSC 5.1 */
-#   if !(defined(__GNUC__) && defined(AMIGA))
-typedef unsigned int   size_t;
-#   endif
-#  endif
-# endif
-#endif /* MICRO && !TOS */
+#if !defined(_SIZE_T) && !defined(__size_t) /* __size_t for CSet/2 */
+#define _SIZE_T
+#if !((defined(MSDOS) || defined(OS2)) \
+      && defined(_SIZE_T_DEFINED)) /* MSC 5.1 */
+#if !(defined(__GNUC__) && defined(AMIGA))
+typedef unsigned int size_t;
+#endif
+#endif
+#endif
+#endif /* MICRO && !TOS */
 
 #if defined(__TURBOC__) || defined(MAC)
-#include <time.h>      /* time_t is not in <sys/types.h> */
+#include <time.h> /* time_t is not in <sys/types.h> */
 #endif
 #if defined(ULTRIX) && !(defined(ULTRIX_PROTO) || defined(NHSTDC))
 /* The Ultrix v3.0 <sys/types.h> seems to be very wrong. */
-# define time_t long
+#define time_t long
 #endif
 
 #if defined(ULTRIX) || defined(VMS)
-# define off_t long
+#define off_t long
 #endif
 #if defined(AZTEC) || defined(THINKC4) || defined(__TURBOC__)
-typedef long   off_t;
+typedef long off_t;
 #endif
 
 #endif /* !__cplusplus && !__GO32__ */
@@ -54,94 +55,96 @@ typedef long        off_t;
  * impossible to get right automatically.
  * This is the type of signal handling functions.
  */
-#if !defined(OS2) && (defined(_MSC_VER) || defined(__TURBOC__) || defined(__SC__) || defined(WIN32))
-# define SIG_RET_TYPE void (__cdecl *)(int)
+#if !defined(OS2) && (defined(_MSC_VER) || defined(__TURBOC__) \
+                      || defined(__SC__) || defined(WIN32))
+#define SIG_RET_TYPE void(__cdecl *)(int)
 #endif
 #ifndef SIG_RET_TYPE
-# if defined(NHSTDC) || defined(POSIX_TYPES) || defined(OS2) || defined(__DECC)
-#  define SIG_RET_TYPE void (*)()
-# endif
+#if defined(NHSTDC) || defined(POSIX_TYPES) || defined(OS2) || defined(__DECC)
+#define SIG_RET_TYPE void (*)()
+#endif
 #endif
 #ifndef SIG_RET_TYPE
-# if defined(ULTRIX) || defined(SUNOS4) || defined(SVR3) || defined(SVR4)
-       /* SVR3 is defined automatically by some systems */
-#  define SIG_RET_TYPE void (*)()
-# endif
+#if defined(ULTRIX) || defined(SUNOS4) || defined(SVR3) || defined(SVR4)
+/* SVR3 is defined automatically by some systems */
+#define SIG_RET_TYPE void (*)()
+#endif
 #endif
-#ifndef SIG_RET_TYPE   /* BSD, SIII, SVR2 and earlier, Sun3.5 and earlier */
-# define SIG_RET_TYPE int (*)()
+#ifndef SIG_RET_TYPE /* BSD, SIII, SVR2 and earlier, Sun3.5 and earlier */
+#define SIG_RET_TYPE int (*)()
 #endif
 
 #if !defined(__cplusplus) && !defined(__GO32__)
 
 #if defined(BSD) || defined(ULTRIX) || defined(RANDOM)
-# ifdef random
-# undef random
-# endif
-# if !defined(__SC__) && !defined(LINUX)
-E  long NDECL(random);
-# endif
-# if (!defined(SUNOS4) && !defined(bsdi) && !defined(__FreeBSD__)) || defined(RANDOM)
+#ifdef random
+#undef random
+#endif
+#if !defined(__SC__) && !defined(LINUX)
+E long NDECL(random);
+#endif
+#if (!defined(SUNOS4) && !defined(bsdi) && !defined(__FreeBSD__)) \
+    || defined(RANDOM)
 E void FDECL(srandom, (unsigned int));
-# else
-#  if !defined(bsdi) && !defined(__FreeBSD__)
+#else
+#if !defined(bsdi) && !defined(__FreeBSD__)
 E int FDECL(srandom, (unsigned int));
-#  endif
-# endif
+#endif
+#endif
 #else
 E long lrand48();
 E void srand48();
 #endif /* BSD || ULTRIX || RANDOM */
 
 #if !defined(BSD) || defined(ultrix)
-                       /* real BSD wants all these to return int */
-# ifndef MICRO
+/* real BSD wants all these to return int */
+#ifndef MICRO
 E void FDECL(exit, (int));
-# endif /* MICRO */
+#endif /* MICRO */
 /* compensate for some CSet/2 bogosities */
-# if defined(OS2_CSET2) && defined(OS2_CSET2_VER_2)
-#  define open   _open
-#  define close   _close
-#  define read   _read
-#  define write   _write
-#  define lseek   _lseek
-#  define chdir   _chdir
-#  define getcwd  _getcwd
-#  define setmode _setmode
-# endif /* OS2_CSET2 && OS2_CSET2_VER_2 */
-/* If flex thinks that we're not __STDC__ it declares free() to return
-   int and we die.  We must use __STDC__ instead of NHSTDC because
-   the former is naturally what flex tests for. */
-# if defined(__STDC__) || !defined(FLEX_SCANNER)
-#  ifndef OS2_CSET2
-#   ifndef MONITOR_HEAP
+#if defined(OS2_CSET2) && defined(OS2_CSET2_VER_2)
+#define open _open
+#define close _close
+#define read _read
+#define write _write
+#define lseek _lseek
+#define chdir _chdir
+#define getcwd _getcwd
+#define setmode _setmode
+#endif /* OS2_CSET2 && OS2_CSET2_VER_2 */
+       /* If flex thinks that we're not __STDC__ it declares free() to return
+          int and we die.  We must use __STDC__ instead of NHSTDC because
+          the former is naturally what flex tests for. */
+#if defined(__STDC__) || !defined(FLEX_SCANNER)
+#ifndef OS2_CSET2
+#ifndef MONITOR_HEAP
 E void FDECL(free, (genericptr_t));
-#   endif
-#  endif
-# endif
+#endif
+#endif
+#endif
 #if !defined(__SASC_60) && !defined(_DCC) && !defined(__SC__)
-# if defined(AMIGA) && !defined(AZTEC_50) && !defined(__GNUC__)
+#if defined(AMIGA) && !defined(AZTEC_50) && !defined(__GNUC__)
 E int FDECL(perror, (const char *));
-# else
-#  if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
+#else
+#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
 E void FDECL(perror, (const char *));
-#  endif
-# endif
+#endif
+#endif
 #endif
 #endif
 #ifndef NeXT
 #ifdef POSIX_TYPES
-E void FDECL(qsort, (genericptr_t,size_t,size_t,
-                    int(*)(const genericptr,const genericptr)));
+E void FDECL(qsort, (genericptr_t, size_t, size_t,
+                     int (*)(const genericptr, const genericptr)));
 #else
-# if defined(BSD) || defined(ULTRIX)
-E  int qsort();
-# else
-#  if !defined(LATTICE) && !defined(AZTEC_50)
-E   void FDECL(qsort, (genericptr_t,size_t,size_t,
-                      int(*)(const genericptr,const genericptr)));
-#  endif
-# endif
+#if defined(BSD) || defined(ULTRIX)
+E int qsort();
+#else
+#if !defined(LATTICE) && !defined(AZTEC_50)
+E void FDECL(qsort, (genericptr_t, size_t, size_t,
+                     int (*)(const genericptr, const genericptr)));
+#endif
+#endif
 #endif
 #endif /* NeXT */
 
@@ -149,76 +152,76 @@ E   void FDECL(qsort, (genericptr_t,size_t,size_t,
 #if !defined(AZTEC_50) && !defined(__GNUC__)
 /* may already be defined */
 
-# ifdef ULTRIX
-#  ifdef ULTRIX_PROTO
-E int FDECL(lseek, (int,off_t,int));
-#  else
-E long FDECL(lseek, (int,off_t,int));
-#  endif
-  /* Ultrix 3.0 man page mistakenly says it returns an int. */
-E int FDECL(write, (int,char *,int));
-E int FDECL(link, (const char *, const char*));
-# else
-# ifndef bsdi
-E long FDECL(lseek, (int,long,int));
-# endif
-#  if defined(POSIX_TYPES) || defined(__TURBOC__)
-#   ifndef bsdi
-E int FDECL(write, (int, const void *,unsigned));
-#   endif
-#  else
-#   ifndef __MWERKS__  /* metrowerks defines write via universal headers */
-E int FDECL(write, (int,genericptr_t,unsigned));
-#   endif
-#  endif
-# endif /* ULTRIX */
-
-# ifdef OS2_CSET2      /* IBM CSet/2 */
-#  ifdef OS2_CSET2_VER_1
+#ifdef ULTRIX
+#ifdef ULTRIX_PROTO
+E int FDECL(lseek, (int, off_t, int));
+#else
+E long FDECL(lseek, (int, off_t, int));
+#endif
+/* Ultrix 3.0 man page mistakenly says it returns an int. */
+E int FDECL(write, (int, char *, int));
+E int FDECL(link, (const char *, const char *));
+#else
+#ifndef bsdi
+E long FDECL(lseek, (int, long, int));
+#endif
+#if defined(POSIX_TYPES) || defined(__TURBOC__)
+#ifndef bsdi
+E int FDECL(write, (int, const void *, unsigned));
+#endif
+#else
+#ifndef __MWERKS__ /* metrowerks defines write via universal headers */
+E int FDECL(write, (int, genericptr_t, unsigned));
+#endif
+#endif
+#endif /* ULTRIX */
+
+#ifdef OS2_CSET2 /* IBM CSet/2 */
+#ifdef OS2_CSET2_VER_1
 E int FDECL(unlink, (char *));
-#  else
+#else
 E int FDECL(unlink, (const char *)); /* prototype is ok in ver >= 2 */
-#  endif
-# else
-#  ifndef __SC__
+#endif
+#else
+#ifndef __SC__
 E int FDECL(unlink, (const char *));
-#  endif
-# endif
+#endif
+#endif
 
 #endif /* AZTEC_50 && __GNUC__ */
 
 #ifdef MAC
-#ifndef __CONDITIONALMACROS__  /* universal headers */
-E int FDECL(close, (int));             /* unistd.h */
-E int FDECL(read, (int, char *, int)); /* unistd.h */
-E int FDECL(chdir, (const char *));    /* unistd.h */
-E char *FDECL(getcwd, (char *,int));   /* unistd.h */
+#ifndef __CONDITIONALMACROS__          /* universal headers */
+E int FDECL(close, (int));             /* unistd.h */
+E int FDECL(read, (int, char *, int)); /* unistd.h */
+E int FDECL(chdir, (const char *));    /* unistd.h */
+E char *FDECL(getcwd, (char *, int));  /* unistd.h */
 #endif
 
-E int FDECL(open, (const char *,int));
+E int FDECL(open, (const char *, int));
 #endif
 
 #if defined(MICRO)
 E int FDECL(close, (int));
 #ifndef __EMX__
-E int FDECL(read, (int,genericptr_t,unsigned int));
+E int FDECL(read, (int, genericptr_t, unsigned int));
 #endif
-E int FDECL(open, (const char *,int,...));
+E int FDECL(open, (const char *, int, ...));
 E int FDECL(dup2, (int, int));
-E int FDECL(setmode, (int,int));
+E int FDECL(setmode, (int, int));
 E int NDECL(kbhit);
-# if !defined(_DCC)
-#  if defined(__TURBOC__)
+#if !defined(_DCC)
+#if defined(__TURBOC__)
 E int FDECL(chdir, (const char *));
-#  else
-#   ifndef __EMX__
+#else
+#ifndef __EMX__
 E int FDECL(chdir, (char *));
-#   endif
-#  endif
-#  ifndef __EMX__
-E char *FDECL(getcwd, (char *,int));
-#  endif
-# endif /* !_DCC */
+#endif
+#endif
+#ifndef __EMX__
+E char *FDECL(getcwd, (char *, int));
+#endif
+#endif /* !_DCC */
 #endif
 
 #ifdef ULTRIX
@@ -226,66 +229,66 @@ E int FDECL(close, (int));
 E int FDECL(atoi, (const char *));
 E long FDECL(atol, (const char *));
 E int FDECL(chdir, (const char *));
-# if !defined(ULTRIX_CC20) && !defined(__GNUC__)
-E int FDECL(chmod, (const char *,int));
+#if !defined(ULTRIX_CC20) && !defined(__GNUC__)
+E int FDECL(chmod, (const char *, int));
 E mode_t FDECL(umask, (int));
-# endif
-E int FDECL(read, (int,genericptr_t,unsigned));
+#endif
+E int FDECL(read, (int, genericptr_t, unsigned));
 /* these aren't quite right, but this saves including lots of system files */
-E int FDECL(stty, (int,genericptr_t));
-E int FDECL(gtty, (int,genericptr_t));
-E int FDECL(ioctl, (int, int, char*));
-E int FDECL(isatty, (int));    /* 1==yes, 0==no, -1==error */
+E int FDECL(stty, (int, genericptr_t));
+E int FDECL(gtty, (int, genericptr_t));
+E int FDECL(ioctl, (int, int, char *));
+E int FDECL(isatty, (int)); /* 1==yes, 0==no, -1==error */
 #include <sys/file.h>
-# if defined(ULTRIX_PROTO) || defined(__GNUC__)
+#if defined(ULTRIX_PROTO) || defined(__GNUC__)
 E int NDECL(fork);
-# else
+#else
 E long NDECL(fork);
-# endif
+#endif
 #endif /* ULTRIX */
 
 #ifdef VMS
-# ifndef abs
+#ifndef abs
 E int FDECL(abs, (int));
-# endif
+#endif
 E int FDECL(atexit, (void (*)(void)));
 E int FDECL(atoi, (const char *));
 E long FDECL(atol, (const char *));
 E int FDECL(chdir, (const char *));
-E int FDECL(chown, (const char *,unsigned,unsigned));
-# ifdef __DECC_VER
-E int FDECL(chmod, (const char *,mode_t));
+E int FDECL(chown, (const char *, unsigned, unsigned));
+#ifdef __DECC_VER
+E int FDECL(chmod, (const char *, mode_t));
 E mode_t FDECL(umask, (mode_t));
-# else
-E int FDECL(chmod, (const char *,int));
+#else
+E int FDECL(chmod, (const char *, int));
 E int FDECL(umask, (int));
-# endif
+#endif
 /* #include <unixio.h> */
 E int FDECL(close, (int));
-E int VDECL(creat, (const char *,unsigned,...));
+E int VDECL(creat, (const char *, unsigned, ...));
 E int FDECL(delete, (const char *));
-E int FDECL(fstat, ( /*_ int, stat_t * _*/ ));
-E int FDECL(isatty, (int));    /* 1==yes, 0==no, -1==error */
-E long FDECL(lseek, (int,long,int));
-E int VDECL(open, (const char *,int,unsigned,...));
-E int FDECL(read, (int,genericptr_t,unsigned));
-E int FDECL(rename, (const char *,const char *));
-E int FDECL(stat, ( /*_ const char *,stat_t * _*/ ));
-E int FDECL(write, (int,const genericptr,unsigned));
+E int FDECL(fstat, (/*_ int, stat_t * _*/));
+E int FDECL(isatty, (int)); /* 1==yes, 0==no, -1==error */
+E long FDECL(lseek, (int, long, int));
+E int VDECL(open, (const char *, int, unsigned, ...));
+E int FDECL(read, (int, genericptr_t, unsigned));
+E int FDECL(rename, (const char *, const char *));
+E int FDECL(stat, (/*_ const char *,stat_t * _*/));
+E int FDECL(write, (int, const genericptr, unsigned));
 #endif
 
-#endif /* __SASC_60 */
+#endif /* __SASC_60 */
 
 /* both old & new versions of Ultrix want these, but real BSD does not */
 #ifdef ultrix
 E void abort();
 E void bcopy();
-# ifdef ULTRIX
+#ifdef ULTRIX
 E int FDECL(system, (const char *));
-#  ifndef _UNISTD_H_
+#ifndef _UNISTD_H_
 E int FDECL(execl, (const char *, ...));
-#  endif
-# endif
+#endif
+#endif
 #endif
 #ifdef MICRO
 E void NDECL(abort);
@@ -301,52 +304,52 @@ E long NDECL(fork);
 #include <string.h>
 #else
 #if defined(SYSV) || defined(VMS) || defined(MAC) || defined(SUNOS4)
-# if defined(NHSTDC) || (defined(VMS) && !defined(ANCIENT_VAXC))
-#  if !defined(_AIX32) && !(defined(SUNOS4) && defined(__STDC__))
-                               /* Solaris unbundled cc (acc) */
-E int FDECL(memcmp, (const void *,const void *,size_t));
+#if defined(NHSTDC) || (defined(VMS) && !defined(ANCIENT_VAXC))
+#if !defined(_AIX32) && !(defined(SUNOS4) && defined(__STDC__))
+/* Solaris unbundled cc (acc) */
+E int FDECL(memcmp, (const void *, const void *, size_t));
 E void *FDECL(memcpy, (void *, const void *, size_t));
 E void *FDECL(memset, (void *, int, size_t));
-#  endif
-# else
-#  ifndef memcmp       /* some systems seem to macro these back to b*() */
+#endif
+#else
+#ifndef memcmp /* some systems seem to macro these back to b*() */
 E int memcmp();
-#  endif
-#  ifndef memcpy
+#endif
+#ifndef memcpy
 E char *memcpy();
-#  endif
-#  ifndef memset
+#endif
+#ifndef memset
 E char *memset();
-#  endif
-# endif
+#endif
+#endif
 #else
-# ifdef HPUX
-E int FDECL(memcmp, (char *,char *,int));
-E void *FDECL(memcpy, (char *,char *,int));
-E void *FDECL(memset, (char*,int,int));
-# endif
+#ifdef HPUX
+E int FDECL(memcmp, (char *, char *, int));
+E void *FDECL(memcpy, (char *, char *, int));
+E void *FDECL(memset, (char *, int, int));
+#endif
 #endif
 #endif /* POSIX_TYPES */
 
 #if defined(MICRO) && !defined(LATTICE)
-# if defined(TOS) && defined(__GNUC__)
-E int FDECL(memcmp, (const void *,const void *,size_t));
-E void *FDECL(memcpy, (void *,const void *,size_t));
-E void *FDECL(memset, (void *,int,size_t));
-# else
-#  if defined(AZTEC_50) || defined(NHSTDC) || defined(WIN32)
-E int  FDECL(memcmp, (const void *, const void *, size_t));
+#if defined(TOS) && defined(__GNUC__)
+E int FDECL(memcmp, (const void *, const void *, size_t));
+E void *FDECL(memcpy, (void *, const void *, size_t));
+E void *FDECL(memset, (void *, int, size_t));
+#else
+#if defined(AZTEC_50) || defined(NHSTDC) || defined(WIN32)
+E int FDECL(memcmp, (const void *, const void *, size_t));
 E void *FDECL(memcpy, (void *, const void *, size_t));
 E void *FDECL(memset, (void *, int, size_t));
-#  else
-E int FDECL(memcmp, (char *,char *,unsigned int));
-E char *FDECL(memcpy, (char *,char *,unsigned int));
-E char *FDECL(memset, (char*,int,int));
-#  endif /* AZTEC_50 || NHSTDC */
-# endif /* TOS */
+#else
+E int FDECL(memcmp, (char *, char *, unsigned int));
+E char *FDECL(memcpy, (char *, char *, unsigned int));
+E char *FDECL(memset, (char *, int, int));
+#endif /* AZTEC_50 || NHSTDC */
+#endif /* TOS */
 #endif /* MICRO */
 
-#if defined(BSD) && defined(ultrix)    /* i.e., old versions of Ultrix */
+#if defined(BSD) && defined(ultrix) /* i.e., old versions of Ultrix */
 E void sleep();
 #endif
 #if defined(ULTRIX) || defined(SYSV)
@@ -366,30 +369,30 @@ E long NDECL(getuid);
 E long NDECL(getgid);
 E long NDECL(getpid);
 #else
-# ifdef POSIX_TYPES
+#ifdef POSIX_TYPES
 E pid_t NDECL(getpid);
 E uid_t NDECL(getuid);
 E gid_t NDECL(getgid);
-#  ifdef VMS
+#ifdef VMS
 E pid_t NDECL(getppid);
-#  endif
-# else /*!POSIX_TYPES*/
-#  ifndef getpid               /* Borland C defines getpid() as a macro */
+#endif
+#else          /*!POSIX_TYPES*/
+#ifndef getpid /* Borland C defines getpid() as a macro */
 E int NDECL(getpid);
-#  endif
-#  ifdef VMS
+#endif
+#ifdef VMS
 E int NDECL(getppid);
 E unsigned NDECL(getuid);
 E unsigned NDECL(getgid);
-#  endif
-#  if defined(ULTRIX) && !defined(_UNISTD_H_)
+#endif
+#if defined(ULTRIX) && !defined(_UNISTD_H_)
 E unsigned NDECL(getuid);
 E unsigned NDECL(getgid);
 E int FDECL(setgid, (int));
 E int FDECL(setuid, (int));
-#  endif
-# endif        /*?POSIX_TYPES*/
-#endif /*?(HPUX && !_POSIX_SOURCE)*/
+#endif
+#endif /*?POSIX_TYPES*/
+#endif /*?(HPUX && !_POSIX_SOURCE)*/
 
 /* add more architectures as needed */
 #if defined(HPUX)
@@ -403,40 +406,41 @@ E int FDECL(setuid, (int));
 #if (defined(ULTRIX) || defined(NeXT)) && defined(__GNUC__)
 #include <strings.h>
 #else
-E char *FDECL(strcpy, (char *,const char *));
-E char *FDECL(strncpy, (char *,const char *,size_t));
-E char *FDECL(strcat, (char *,const char *));
-E char *FDECL(strncat, (char *,const char *,size_t));
-E char *FDECL(strpbrk, (const char *,const char *));
-
-# if defined(SYSV) || defined(MICRO) || defined(MAC) || defined(VMS) || defined(HPUX)
-E char *FDECL(strchr, (const char *,int));
-E char *FDECL(strrchr, (const char *,int));
-# else /* BSD */
-E char *FDECL(index, (const char *,int));
-E char *FDECL(rindex, (const char *,int));
-# endif
-
-E int  FDECL(strcmp, (const char *,const char *));
-E int  FDECL(strncmp, (const char *,const char *,size_t));
-# if defined(MICRO) || defined(MAC) || defined(VMS)
+E char *FDECL(strcpy, (char *, const char *));
+E char *FDECL(strncpy, (char *, const char *, size_t));
+E char *FDECL(strcat, (char *, const char *));
+E char *FDECL(strncat, (char *, const char *, size_t));
+E char *FDECL(strpbrk, (const char *, const char *));
+
+#if defined(SYSV) || defined(MICRO) || defined(MAC) || defined(VMS) \
+    || defined(HPUX)
+E char *FDECL(strchr, (const char *, int));
+E char *FDECL(strrchr, (const char *, int));
+#else /* BSD */
+E char *FDECL(index, (const char *, int));
+E char *FDECL(rindex, (const char *, int));
+#endif
+
+E int FDECL(strcmp, (const char *, const char *));
+E int FDECL(strncmp, (const char *, const char *, size_t));
+#if defined(MICRO) || defined(MAC) || defined(VMS)
 E size_t FDECL(strlen, (const char *));
-# else
-# ifdef HPUX
-E unsigned int FDECL(strlen, (char *));
-#  else
-#   if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
-E int  FDECL(strlen, (const char *));
-#   endif
-#  endif /* HPUX */
-# endif /* MICRO */
+#else
+#ifdef HPUX
+E unsigned int FDECL(strlen, (char *));
+#else
+#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
+E int FDECL(strlen, (const char *));
+#endif
+#endif /* HPUX */
+#endif /* MICRO */
 #endif /* ULTRIX */
 
-#endif /* !_XtIntrinsic_h_ && !POSIX_TYPES */
+#endif /* !_XtIntrinsic_h_ && !POSIX_TYPES */
 
 #if defined(ULTRIX) && defined(__GNUC__)
-E char *FDECL(index, (const char *,int));
-E char *FDECL(rindex, (const char *,int));
+E char *FDECL(index, (const char *, int));
+E char *FDECL(rindex, (const char *, int));
 #endif
 
 /* Old varieties of BSD have char *sprintf().
@@ -454,63 +458,62 @@ E char    *FDECL(rindex, (const char *,int));
 #define SPRINTF_PROTO
 #endif
 #if defined(TOS) || defined(AZTEC_50) || defined(__sgi) || defined(__GNUC__)
-       /* problem with prototype mismatches */
+/* problem with prototype mismatches */
 #define SPRINTF_PROTO
 #endif
 #if defined(__MWERKS__) || defined(__SC__)
-       /* Metrowerks already has a prototype for sprintf() */
-# define SPRINTF_PROTO
+/* Metrowerks already has a prototype for sprintf() */
+#define SPRINTF_PROTO
 #endif
 
 #ifndef SPRINTF_PROTO
-# if defined(POSIX_TYPES) || defined(DGUX) || defined(NeXT) || !defined(BSD)
-E  int FDECL(sprintf, (char *,const char *,...));
-# else
-#  define OLD_SPRINTF
-E  char *sprintf();
-# endif
+#if defined(POSIX_TYPES) || defined(DGUX) || defined(NeXT) || !defined(BSD)
+E int FDECL(sprintf, (char *, const char *, ...));
+#else
+#define OLD_SPRINTF
+E char *sprintf();
+#endif
 #endif
 #ifdef SPRINTF_PROTO
-# undef SPRINTF_PROTO
+#undef SPRINTF_PROTO
 #endif
 
 #ifndef __SASC_60
 #ifdef NEED_VARARGS
-# if defined(USE_STDARG) || defined(USE_VARARGS)
-#  if !defined(SVR4) && !defined(apollo)
-#   if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
-#    if !(defined(SUNOS4) && defined(__STDC__)) /* Solaris unbundled cc (acc) */
+#if defined(USE_STDARG) || defined(USE_VARARGS)
+#if !defined(SVR4) && !defined(apollo)
+#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
+#if !(defined(SUNOS4) && defined(__STDC__)) /* Solaris unbundled cc (acc) */
 E int FDECL(vsprintf, (char *, const char *, va_list));
 E int FDECL(vfprintf, (FILE *, const char *, va_list));
 E int FDECL(vprintf, (const char *, va_list));
-#    endif
-#   endif
-#  endif
-# else
-#  define vprintf      printf
-#  define vfprintf     fprintf
-#  define vsprintf     sprintf
-# endif
+#endif
+#endif
+#endif
+#else
+#define vprintf printf
+#define vfprintf fprintf
+#define vsprintf sprintf
+#endif
 #endif /* NEED_VARARGS */
 #endif
 
-
 #ifdef MICRO
-E int FDECL(tgetent, (const char *,const char *));
-E void FDECL(tputs, (const char *,int,int (*)()));
+E int FDECL(tgetent, (const char *, const char *));
+E void FDECL(tputs, (const char *, int, int (*)()));
 E int FDECL(tgetnum, (const char *));
 E int FDECL(tgetflag, (const char *));
-E char *FDECL(tgetstr, (const char *,char **));
-E char *FDECL(tgoto, (const char *,int,int));
+E char *FDECL(tgetstr, (const char *, char **));
+E char *FDECL(tgoto, (const char *, int, int));
 #else
-# if ! (defined(HPUX) && defined(_POSIX_SOURCE))
-E int FDECL(tgetent, (char *,const char *));
-E void FDECL(tputs, (const char *,int,int (*)()));
-# endif
+#if !(defined(HPUX) && defined(_POSIX_SOURCE))
+E int FDECL(tgetent, (char *, const char *));
+E void FDECL(tputs, (const char *, int, int (*)()));
+#endif
 E int FDECL(tgetnum, (const char *));
 E int FDECL(tgetflag, (const char *));
-E char *FDECL(tgetstr, (const char *,char **));
-E char *FDECL(tgoto, (const char *,int,int));
+E char *FDECL(tgetstr, (const char *, char **));
+E char *FDECL(tgoto, (const char *, int, int));
 #endif
 
 #ifdef ALLOC_C
@@ -519,32 +522,33 @@ E genericptr_t FDECL(malloc, (size_t));
 
 /* time functions */
 
-# ifndef LATTICE
-#  if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
+#ifndef LATTICE
+#if !(defined(ULTRIX_PROTO) && defined(__GNUC__))
 E struct tm *FDECL(localtime, (const time_t *));
-#  endif
-# endif
+#endif
+#endif
 
-# if defined(ULTRIX) || (defined(BSD) && defined(POSIX_TYPES)) || defined(SYSV) || defined(MICRO) || defined(VMS) || defined(MAC) || (defined(HPUX) && defined(_POSIX_SOURCE))
+#if defined(ULTRIX) || (defined(BSD) && defined(POSIX_TYPES))          \
+    || defined(SYSV) || defined(MICRO) || defined(VMS) || defined(MAC) \
+    || (defined(HPUX) && defined(_POSIX_SOURCE))
 E time_t FDECL(time, (time_t *));
-# else
+#else
 E long FDECL(time, (time_t *));
-# endif /* ULTRIX */
+#endif /* ULTRIX */
 
 #ifdef VMS
-       /* used in makedefs.c, but missing from gcc-vms's <time.h> */
+/* used in makedefs.c, but missing from gcc-vms's <time.h> */
 E char *FDECL(ctime, (const time_t *));
 #endif
 
-
 #ifdef MICRO
-# ifdef abs
-# undef abs
-# endif
+#ifdef abs
+#undef abs
+#endif
 E int FDECL(abs, (int));
-# ifdef atoi
-# undef atoi
-# endif
+#ifdef atoi
+#undef atoi
+#endif
 E int FDECL(atoi, (const char *));
 #endif
 
index bbf770da602b5e6a91e33a9efbdb1896a6020fbc..2d2c25c2837ff583a39660d67c61817e895c07ab 100644 (file)
 #define TCAP_H
 
 #ifndef MICRO
-# define TERMLIB       /* include termcap code */
+#define TERMLIB /* include termcap code */
 #endif
 
 /* might display need graphics code? */
 #if !defined(AMIGA) && !defined(TOS) && !defined(MAC)
-# if defined(TERMLIB) || defined(OS2) || defined(MSDOS)
-#  define ASCIIGRAPH
-# endif
+#if defined(TERMLIB) || defined(OS2) || defined(MSDOS)
+#define ASCIIGRAPH
+#endif
 #endif
 
 #ifndef DECL_H
-extern struct tc_gbl_data {   /* also declared in decl.h; defined in decl.c */
-    char *tc_AS, *tc_AE;       /* graphics start and end (tty font swapping) */
-    int   tc_LI,  tc_CO;       /* lines and columns */
+extern struct tc_gbl_data { /* also declared in decl.h; defined in decl.c */
+    char *tc_AS, *tc_AE;    /* graphics start and end (tty font swapping) */
+    int tc_LI, tc_CO;       /* lines and columns */
 } tc_gbl_data;
 #define AS tc_gbl_data.tc_AS
 #define AE tc_gbl_data.tc_AE
@@ -31,7 +31,7 @@ extern struct tc_gbl_data {   /* also declared in decl.h; defined in decl.c */
 #define CO tc_gbl_data.tc_CO
 #endif
 
-extern struct tc_lcl_data {   /* defined and set up in termcap.c */
+extern struct tc_lcl_data { /* defined and set up in termcap.c */
     char *tc_CM, *tc_ND, *tc_CD;
     char *tc_HI, *tc_HE, *tc_US, *tc_UE;
     boolean tc_ul_hack;
@@ -46,14 +46,14 @@ extern struct tc_lcl_data {   /* defined and set up in termcap.c */
 #define nh_UE tc_lcl_data.tc_UE
 #define ul_hack tc_lcl_data.tc_ul_hack
 
-extern short ospeed;           /* set up in termcap.c */
+extern short ospeed; /* set up in termcap.c */
 
 #ifdef TEXTCOLOR
-# ifdef TOS
+#ifdef TOS
 extern const char *hilites[CLR_MAX];
-# else
+#else
 extern NEARDATA char *hilites[CLR_MAX];
-# endif
+#endif
 #endif
 
 #endif /* TCAP_H */
index 1deff779b30ef1068ee8fb715d3dc63b95ee460f..6a6351be3b528020baf76da3986aa98c856d59fb 100644 (file)
@@ -21,4 +21,4 @@ typedef struct {
 /* how wide each row in the tile file is, in tiles */
 #define TILES_PER_ROW (40)
 
-#endif /* TILE2X11_H */
+#endif /* TILE2X11_H */
index 638e59242b541d6bf8b587d0f8d8d9c33b9bba60..dff3f9eb0abaf2c7d644d851c38450ac4a97091b 100644 (file)
 typedef void FDECL((*timeout_proc), (ANY_P *, long));
 
 /* kind of timer */
-#define TIMER_LEVEL    0       /* event specific to level */
-#define TIMER_GLOBAL   1       /* event follows current play */
-#define TIMER_OBJECT   2       /* event follows a object */
-#define TIMER_MONSTER  3       /* event follows a monster */
+#define TIMER_LEVEL 0   /* event specific to level */
+#define TIMER_GLOBAL 1  /* event follows current play */
+#define TIMER_OBJECT 2  /* event follows a object */
+#define TIMER_MONSTER 3 /* event follows a monster */
 
 /* save/restore timer ranges */
-#define RANGE_LEVEL  0         /* save/restore timers staying on level */
-#define RANGE_GLOBAL 1         /* save/restore timers following global play */
+#define RANGE_LEVEL 0  /* save/restore timers staying on level */
+#define RANGE_GLOBAL 1 /* save/restore timers following global play */
 
 /*
  * Timeout functions.  Add a define here, then put it in the table
  * in timeout.c.  "One more level of indirection will fix everything."
  */
-#define ROT_ORGANIC    0       /* for buried organics */
-#define ROT_CORPSE     1
-#define REVIVE_MON     2
-#define BURN_OBJECT    3
-#define HATCH_EGG      4
-#define FIG_TRANSFORM  5
-#define MELT_ICE_AWAY  6
-#define NUM_TIME_FUNCS 7
+#define ROT_ORGANIC 0 /* for buried organics */
+#define ROT_CORPSE 1
+#define REVIVE_MON 2
+#define BURN_OBJECT 3
+#define HATCH_EGG 4
+#define FIG_TRANSFORM 5
+#define MELT_ICE_AWAY 6
+#define NUM_TIME_FUNCS 7
 
 /* used in timeout.c */
 typedef struct fe {
-    struct fe *next;           /* next item in chain */
-    long timeout;              /* when we time out */
-    unsigned long tid;         /* timer ID */
-    short kind;                        /* kind of use */
-    short func_index;          /* what to call when we time out */
-    anything arg;              /* pointer to timeout argument */
-    Bitfield (needs_fixup,1);  /* does arg need to be patched? */
+    struct fe *next;          /* next item in chain */
+    long timeout;             /* when we time out */
+    unsigned long tid;        /* timer ID */
+    short kind;               /* kind of use */
+    short func_index;         /* what to call when we time out */
+    anything arg;             /* pointer to timeout argument */
+    Bitfield(needs_fixup, 1); /* does arg need to be patched? */
 } timer_element;
 
 #endif /* TIMEOUT_H */
index 2213cfc80a1d3b508300d3817d52f6d52d534a6d..4c425011b9cc76c554254feb46509f70b85d9c8d 100644 (file)
@@ -8,7 +8,7 @@
 #ifndef TOSCONF_H
 #define TOSCONF_H
 
-#define MICRO          /* must be defined to allow some inclusions */
+#define MICRO /* must be defined to allow some inclusions */
 
 /*
    Adjust these options to suit your compiler. The default here is for
 
 /*#define NO_SIGNAL            /* library doesn't support signals      */
 /*#define NO_FSTAT             /* library doesn't have fstat() call    */
-#define MINT                   /* library supports MiNT extensions to TOS */
+#define MINT /* library supports MiNT extensions to TOS */
 
 #ifdef __MINT__
 #define MINT
 #endif
 
 #ifdef O_BINARY
-#define FCMASK O_BINARY
+#define FCMASK O_BINARY
 #else
-#define FCMASK 0660
+#define FCMASK 0660
 #define O_BINARY 0
 #endif
 
 #ifdef UNIXDEBUG
-#define remove(x)      unlink(x)
+#define remove(x) unlink(x)
 #endif
 
 /* configurable options */
-#define MFLOPPY                        /* floppy support               */
-#define RANDOM                 /* improved random numbers      */
-#define SHELL                  /* allow spawning of shell      */
-#define TERMLIB                        /* use termcap                  */
-#define TEXTCOLOR              /* allow color                  */
-#define MAIL                   /* enable the fake maildemon */
+#define MFLOPPY   /* floppy support            */
+#define RANDOM    /* improved random numbers   */
+#define SHELL     /* allow spawning of shell   */
+#define TERMLIB   /* use termcap                       */
+#define TEXTCOLOR /* allow color                       */
+#define MAIL      /* enable the fake maildemon */
 #ifdef MINT
-#define SUSPEND                        /* allow suspending the game    */
+#define SUSPEND /* allow suspending the game   */
 #endif
 
 #ifndef TERMLIB
-#define ANSI_DEFAULT           /* use vt52 by default          */
+#define ANSI_DEFAULT /* use vt52 by default            */
 #endif
 
 #if defined(__GNUC__) || defined(__MINT__)
@@ -56,8 +56,8 @@
  */
 #define STRNCMPI
 #undef strcmpi
-extern int FDECL(strcmpi,(const char *, const char *));
-extern int FDECL(strncmpi,(const char *, const char *, size_t));
+extern int FDECL(strcmpi, (const char *, const char *));
+extern int FDECL(strncmpi, (const char *, const char *, size_t));
 #endif
 
 #include <termcap.h>
@@ -73,15 +73,15 @@ extern int FDECL(strncmpi,(const char *, const char *, size_t));
 #include "micro.h"
 #endif
 #ifndef PCCONF_H
-#include "pcconf.h"            /* remainder of stuff is same as the PC */
+#include "pcconf.h" /* remainder of stuff is same as the PC */
 #endif
 
 #ifdef TEXTCOLOR
-extern boolean colors_changed; /* in tos.c */
+extern boolean colors_changed; /* in tos.c */
 #endif
 
 #ifdef __GNUC__
-#define GCC_BUG                /* correct a gcc bug involving double for loops */
+#define GCC_BUG /* correct a gcc bug involving double for loops */
 #endif
 
 #endif /* TOSCONF_H */
index 64585517d43355cdd2ac7ca21975cb6248000c88..d8ea8b3bbd29e48ad64fa0e8d1214dc394394ce7 100644 (file)
 /* Ultrix seems to be in a constant state of flux.  This check attempts to
  * set up ansi compatibility if it wasn't set up correctly by the compiler.
  */
-# ifdef mips
-#  define __mips mips
-# endif
-# ifdef LANGUAGE_C
-#  define __LANGUAGE_C LANGUAGE_C
-# endif
+#ifdef mips
+#define __mips mips
+#endif
+#ifdef LANGUAGE_C
+#define __LANGUAGE_C LANGUAGE_C
+#endif
 #endif
 
 /*
  * others.
  */
 
-/* #define USE_VARARGS */      /* use <varargs.h> instead of <stdarg.h> */
-/* #define USE_OLDARGS */      /* don't use any variable argument facilites */
+/* #define USE_VARARGS */ /* use <varargs.h> instead of <stdarg.h> */
+/* #define USE_OLDARGS */ /* don't use any variable argument facilites */
 
-#if defined(apollo)            /* Apollos have stdarg(3) but not stdarg.h */
-# define USE_VARARGS
+#if defined(apollo) /* Apollos have stdarg(3) but not stdarg.h */
+#define USE_VARARGS
 #endif
 
 #if defined(NHSTDC) || defined(ULTRIX_PROTO) || defined(MAC)
-# if !defined(USE_VARARGS) && !defined(USE_OLDARGS) && !defined(USE_STDARG)
-#   define USE_STDARG
-# endif
+#if !defined(USE_VARARGS) && !defined(USE_OLDARGS) && !defined(USE_STDARG)
+#define USE_STDARG
+#endif
 #endif
 
-#ifdef NEED_VARARGS            /* only define these if necessary */
-/*
- * These have changed since 3.4.3.  VA_END() now provides an explicit
- * closing brace to complement VA_DECL()'s hidden opening brace, so code
- * started with VA_DECL() needs an extra opening brace to complement
- * the explicit final closing brace.  This was done so that the source
- * would look less strange, where VA_DECL() appeared to introduce a
- * function whose opening brace was missing; there are now visible and
- * invisible braces at beginning and end.  Sample usage:
-void foo VA_DECL(int, arg)  --macro expansion has a hidden opening brace
-{  --new, explicit opening brace (actually introduces a nested block)
-  VA_START(bar);
-  ...code for foo...
-  VA_END();  --expansion now provides a closing brace for the nested block
-}  --existing closing brace, still pairs with the hidden one in VA_DECL()
- * Reading the code--or using source browsing tools which match braces--
- * results in seeing a matched set of braces.  Usage of VA_END() is
- * potentially trickier, but nethack uses it in a straightforward manner.
- */
+#ifdef NEED_VARARGS /* only define these if necessary */
+                    /*
                    * These have changed since 3.4.3.  VA_END() now provides an explicit
                    * closing brace to complement VA_DECL()'s hidden opening brace, so code
                    * started with VA_DECL() needs an extra opening brace to complement
                    * the explicit final closing brace.  This was done so that the source
                    * would look less strange, where VA_DECL() appeared to introduce a
                    * function whose opening brace was missing; there are now visible and
                    * invisible braces at beginning and end.  Sample usage:
+                    void foo VA_DECL(int, arg)  --macro expansion has a hidden opening brace
+                    {  --new, explicit opening brace (actually introduces a nested block)
+                      VA_START(bar);
+                      ...code for foo...
+                      VA_END();  --expansion now provides a closing brace for the nested block
+                    }  --existing closing brace, still pairs with the hidden one in VA_DECL()
                    * Reading the code--or using source browsing tools which match braces--
                    * results in seeing a matched set of braces.  Usage of VA_END() is
                    * potentially trickier, but nethack uses it in a straightforward manner.
                    */
 
 #ifdef USE_STDARG
 #include <stdarg.h>
-# define VA_DECL(typ1,var1)    (typ1 var1, ...) { va_list the_args;
-# define VA_DECL2(typ1,var1,typ2,var2) \
-       (typ1 var1, typ2 var2, ...) { va_list the_args;
-# define VA_INIT(var1,typ1)
-# define VA_NEXT(var1,typ1)    var1 = va_arg(the_args, typ1)
-# define VA_ARGS               the_args
-# define VA_START(x)           va_start(the_args, x)
-# define VA_END()              va_end(the_args); }
-# if defined(ULTRIX_PROTO) && !defined(_VA_LIST_)
-#  define _VA_LIST_    /* prevents multiple def in stdio.h */
-# endif
+#define VA_DECL(typ1, var1) \
+    (typ1 var1, ...)        \
+    {                       \
+        va_list the_args;
+#define VA_DECL2(typ1, var1, typ2, var2) \
+    (typ1 var1, typ2 var2, ...)          \
+    {                                    \
+        va_list the_args;
+#define VA_INIT(var1, typ1)
+#define VA_NEXT(var1, typ1) var1 = va_arg(the_args, typ1)
+#define VA_ARGS the_args
+#define VA_START(x) va_start(the_args, x)
+#define VA_END()      \
+    va_end(the_args); \
+    }
+#if defined(ULTRIX_PROTO) && !defined(_VA_LIST_)
+#define _VA_LIST_ /* prevents multiple def in stdio.h */
+#endif
 #else
-# ifdef USE_VARARGS
+#ifdef USE_VARARGS
 #include <varargs.h>
-#  define VA_DECL(typ1,var1)   (va_alist) va_dcl {\
-               va_list the_args; typ1 var1;
-#  define VA_DECL2(typ1,var1,typ2,var2) (va_alist) va_dcl {\
-               va_list the_args; typ1 var1; typ2 var2;
-#  define VA_ARGS              the_args
-#  define VA_START(x)          va_start(the_args)
-#  define VA_INIT(var1,typ1)   var1 = va_arg(the_args, typ1)
-#  define VA_NEXT(var1,typ1)   var1 = va_arg(the_args,typ1)
-#  define VA_END()             va_end(the_args); }
-# else
-#   define VA_ARGS     arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9
-#   define VA_DECL(typ1,var1)  (var1,VA_ARGS) typ1 var1; \
-       char *arg1,*arg2,*arg3,*arg4,*arg5,*arg6,*arg7,*arg8,*arg9; {
-#   define VA_DECL2(typ1,var1,typ2,var2)  (var1,var2,VA_ARGS) \
-       typ1 var1; typ2 var2; \
-       char *arg1,*arg2,*arg3,*arg4,*arg5,*arg6,*arg7,*arg8,*arg9; {
-#   define VA_START(x)
-#   define VA_INIT(var1,typ1)
-    /* this is inherently risky, and should only be attempted as a
-       very last resort; manipulating arguments which haven't actually
-       been passed may or may not cause severe trouble depending on
-       the function-calling/argument-passing mechanism being used */
-#   define VA_SHIFT()  (arg1=arg2, arg2=arg3, arg3=arg4, arg4=arg5,\
-                        arg5=arg6, arg6=arg7, arg7=arg8, arg8=arg9)
-#   define VA_NEXT(var1,typ1)  ((var1 = (typ1)arg1), VA_SHIFT(), var1)
-#   define VA_END()    }
-# endif
+#define VA_DECL(typ1, var1) \
+    (va_alist) va_dcl       \
+    {                       \
+        va_list the_args;   \
+        typ1 var1;
+#define VA_DECL2(typ1, var1, typ2, var2) \
+    (va_alist) va_dcl                    \
+    {                                    \
+        va_list the_args;                \
+        typ1 var1;                       \
+        typ2 var2;
+#define VA_ARGS the_args
+#define VA_START(x) va_start(the_args)
+#define VA_INIT(var1, typ1) var1 = va_arg(the_args, typ1)
+#define VA_NEXT(var1, typ1) var1 = va_arg(the_args, typ1)
+#define VA_END()      \
+    va_end(the_args); \
+    }
+#else
+#define VA_ARGS arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9
+#define VA_DECL(typ1, var1)                                             \
+    (var1, VA_ARGS) typ1 var1;                                          \
+    char *arg1, *arg2, *arg3, *arg4, *arg5, *arg6, *arg7, *arg8, *arg9; \
+    {
+#define VA_DECL2(typ1, var1, typ2, var2)                                \
+    (var1, var2, VA_ARGS) typ1 var1;                                    \
+    typ2 var2;                                                          \
+    char *arg1, *arg2, *arg3, *arg4, *arg5, *arg6, *arg7, *arg8, *arg9; \
+    {
+#define VA_START(x)
+#define VA_INIT(var1, typ1)
+/* this is inherently risky, and should only be attempted as a
+   very last resort; manipulating arguments which haven't actually
+   been passed may or may not cause severe trouble depending on
+   the function-calling/argument-passing mechanism being used */
+#define VA_SHIFT()                                                    \
+    (arg1 = arg2, arg2 = arg3, arg3 = arg4, arg4 = arg5, arg5 = arg6, \
+     arg6 = arg7, arg7 = arg8, arg8 = arg9)
+#define VA_NEXT(var1, typ1) ((var1 = (typ1) arg1), VA_SHIFT(), var1)
+#define VA_END() }
+#endif
 #endif
 
 #endif /* NEED_VARARGS */
 
-#if defined(NHSTDC) || defined(MSDOS) || defined(MAC) || defined(ULTRIX_PROTO) || defined(__BEOS__)
+#if defined(NHSTDC) || defined(MSDOS) || defined(MAC) \
+    || defined(ULTRIX_PROTO) || defined(__BEOS__)
 
 /*
  * Used for robust ANSI parameter forward declarations:
@@ -145,15 +167,15 @@ void foo VA_DECL(int, arg)  --macro expansion has a hidden opening brace
  * trampoli.* mechanism conflicts with the ANSI <<f(void)>> syntax.
  */
 
-# define NDECL(f)      f(void) /* overridden later if USE_TRAMPOLI set */
+#define NDECL(f) f(void) /* overridden later if USE_TRAMPOLI set */
 
-# define FDECL(f,p)    f p
+#define FDECL(f, p) f p
 
-# if defined(MSDOS) || defined(USE_STDARG)
-#  define VDECL(f,p)   f p
-# else
-#  define VDECL(f,p)   f()
-# endif
+#if defined(MSDOS) || defined(USE_STDARG)
+#define VDECL(f, p) f p
+#else
+#define VDECL(f, p) f()
+#endif
 
 /*
  * Used for definitions of functions which take no arguments to force
@@ -163,23 +185,23 @@ void foo VA_DECL(int, arg)  --macro expansion has a hidden opening brace
 #define VOID_ARGS void
 
 /* generic pointer, always a macro; genericptr_t is usually a typedef */
-# define genericptr    void *
+#define genericptr void *
 
-# if (defined(ULTRIX_PROTO) && !defined(__GNUC__)) || defined(OS2_CSET2)
+#if (defined(ULTRIX_PROTO) && !defined(__GNUC__)) || defined(OS2_CSET2)
 /* Cover for Ultrix on a DECstation with 2.0 compiler, which coredumps on
  *   typedef void * genericptr_t;
  *   extern void a(void(*)(int, genericptr_t));
  * Using the #define is OK for other compiler versions too.
  */
 /* And IBM CSet/2.  The redeclaration of free hoses the compile. */
-#  define genericptr_t genericptr
-# else
-#  if !defined(NHSTDC) && !defined(MAC)
-#   define const
-#   define signed
-#   define volatile
-#  endif
-# endif
+#define genericptr_t genericptr
+#else
+#if !defined(NHSTDC) && !defined(MAC)
+#define const
+#define signed
+#define volatile
+#endif
+#endif
 
 /*
  * Suppress `const' if necessary and not handled elsewhere.
@@ -187,39 +209,40 @@ void foo VA_DECL(int, arg)  --macro expansion has a hidden opening brace
  * because some compilers choke on `defined(const)'.
  * This has been observed with Lattice, MPW, and High C.
  */
-# if (defined(ULTRIX_PROTO) && !defined(NHSTDC)) || defined(apollo)
-       /* the system header files don't use `const' properly */
-#  ifndef const
-#   define const
-#  endif
-# endif
+#if (defined(ULTRIX_PROTO) && !defined(NHSTDC)) || defined(apollo)
+/* the system header files don't use `const' properly */
+#ifndef const
+#define const
+#endif
+#endif
 
-#else /* NHSTDC */     /* a "traditional" C  compiler */
+#else /* NHSTDC */ /* a "traditional" C  compiler */
 
-# define NDECL(f)      f()
-# define FDECL(f,p)    f()
-# define VDECL(f,p)    f()
+#define NDECL(f) f()
+#define FDECL(f, p) f()
+#define VDECL(f, p) f()
 
 #define VOID_ARGS /*empty*/
 
-# if defined(AMIGA) || defined(HPUX) || defined(POSIX_TYPES) || defined(__DECC) || defined(__BORLANDC__)
-#  define genericptr   void *
-# endif
-# ifndef genericptr
-#  define genericptr   char *
-# endif
+#if defined(AMIGA) || defined(HPUX) || defined(POSIX_TYPES) \
+    || defined(__DECC) || defined(__BORLANDC__)
+#define genericptr void *
+#endif
+#ifndef genericptr
+#define genericptr char *
+#endif
 
 /*
  * Traditional C compilers don't have "signed", "const", or "volatile".
  */
-# define signed
-# define const
-# define volatile
+#define signed
+#define const
+#define volatile
 
 #endif /* NHSTDC */
 
 #ifndef genericptr_t
-typedef genericptr genericptr_t;       /* (void *) or (char *) */
+typedef genericptr genericptr_t; /* (void *) or (char *) */
 #endif
 
 #if defined(MICRO) || defined(WIN32)
@@ -230,7 +253,7 @@ typedef genericptr genericptr_t;    /* (void *) or (char *) */
  * computers which may have older libraries give reasonable results with
  * casting pointers to unsigned long int (fmt_ptr() in alloc.c).
  */
-# define HAS_PTR_FMT
+#define HAS_PTR_FMT
 #endif
 
 /*
@@ -242,61 +265,61 @@ typedef genericptr genericptr_t;  /* (void *) or (char *) */
  * prototypes to match the standard and thus lose the typechecking.
  */
 #if defined(MSDOS) && !defined(__GO32__)
-# define UNWIDENED_PROTOTYPES
+#define UNWIDENED_PROTOTYPES
 #endif
 #if defined(AMIGA) && !defined(AZTEC_50)
-# define UNWIDENED_PROTOTYPES
+#define UNWIDENED_PROTOTYPES
 #endif
 #if defined(macintosh) && (defined(__SC__) || defined(__MRC__))
-# define WIDENED_PROTOTYPES
+#define WIDENED_PROTOTYPES
 #endif
 #if defined(__MWERKS__) && defined(__BEOS__)
-# define UNWIDENED_PROTOTYPES
+#define UNWIDENED_PROTOTYPES
 #endif
 #if defined(WIN32)
-# define UNWIDENED_PROTOTYPES
+#define UNWIDENED_PROTOTYPES
 #endif
 
 #if defined(ULTRIX_PROTO) && defined(ULTRIX_CC20)
-# define UNWIDENED_PROTOTYPES
+#define UNWIDENED_PROTOTYPES
 #endif
 #if defined(apollo)
-# define UNWIDENED_PROTOTYPES
+#define UNWIDENED_PROTOTYPES
 #endif
 
 #ifndef UNWIDENED_PROTOTYPES
-# if defined(NHSTDC) || defined(ULTRIX_PROTO) || defined(THINK_C)
-#  ifndef WIDENED_PROTOTYPES
-#   define WIDENED_PROTOTYPES
-#  endif
-# endif
+#if defined(NHSTDC) || defined(ULTRIX_PROTO) || defined(THINK_C)
+#ifndef WIDENED_PROTOTYPES
+#define WIDENED_PROTOTYPES
+#endif
+#endif
 #endif
 
 /* These are used for arguments within FDECL/VDECL prototype declarations.
  */
 #ifdef UNWIDENED_PROTOTYPES
-# define CHAR_P char
-# define SCHAR_P schar
-# define UCHAR_P uchar
-# define XCHAR_P xchar
-# define SHORT_P short
-# ifndef SKIP_BOOLEAN
-#  define BOOLEAN_P boolean
-# endif
-# define ALIGNTYP_P aligntyp
+#define CHAR_P char
+#define SCHAR_P schar
+#define UCHAR_P uchar
+#define XCHAR_P xchar
+#define SHORT_P short
+#ifndef SKIP_BOOLEAN
+#define BOOLEAN_P boolean
+#endif
+#define ALIGNTYP_P aligntyp
+#else
+#ifdef WIDENED_PROTOTYPES
+#define CHAR_P int
+#define SCHAR_P int
+#define UCHAR_P int
+#define XCHAR_P int
+#define SHORT_P int
+#define BOOLEAN_P int
+#define ALIGNTYP_P int
 #else
-# ifdef WIDENED_PROTOTYPES
-#  define CHAR_P int
-#  define SCHAR_P int
-#  define UCHAR_P int
-#  define XCHAR_P int
-#  define SHORT_P int
-#  define BOOLEAN_P int
-#  define ALIGNTYP_P int
-# else
-   /* Neither widened nor unwidened prototypes.  Argument list expansion
-    * by FDECL/VDECL always empty; all xxx_P vanish so defs aren't needed. */
-# endif
+/* Neither widened nor unwidened prototypes.  Argument list expansion
+ * by FDECL/VDECL always empty; all xxx_P vanish so defs aren't needed. */
+#endif
 #endif
 
 /* OBJ_P and MONST_P should _only_ be used for declaring function pointers.
@@ -307,11 +330,11 @@ typedef genericptr genericptr_t;  /* (void *) or (char *) */
  * but both seem to work if we put "void*" in the prototype instead.  This
  * gives us minimal prototype checking but avoids the compiler bugs.
  */
-# define OBJ_P void*
-# define MONST_P void*
+#define OBJ_P void *
+#define MONST_P void *
 #else
-# define OBJ_P struct obj *
-# define MONST_P struct monst *
+#define OBJ_P struct obj *
+#define MONST_P struct monst *
 #endif
 
 #if 0
@@ -328,43 +351,41 @@ typedef genericptr genericptr_t;  /* (void *) or (char *) */
  * include files have prototypes and the compiler also complains that
  * prototyped and unprototyped declarations don't match.
  */
-# undef NDECL
-# undef FDECL
-# undef VDECL
-# define NDECL(f)      f()
-# define FDECL(f,p)    f()
-# define VDECL(f,p)    f()
-# undef VOID_ARGS
-# define VOID_ARGS /*empty*/
+#undef NDECL
+#undef FDECL
+#undef VDECL
+#define NDECL(f) f()
+#define FDECL(f, p) f()
+#define VDECL(f, p) f()
+#undef VOID_ARGS
+#define VOID_ARGS /*empty*/
 #endif
 #endif
 
-
-       /* MetaWare High-C defaults to unsigned chars */
-       /* AIX 3.2 needs this also */
+/* MetaWare High-C defaults to unsigned chars */
+/* AIX 3.2 needs this also */
 #if defined(__HC__) || defined(_AIX32)
-# undef signed
+#undef signed
 #endif
 
-
 /*
  * Allow gcc2 to check parameters of printf-like calls with -Wformat;
  * append this to a prototype declaration (see pline() in extern.h).
  */
 #ifdef __GNUC__
-# if __GNUC__ >= 2
-#  define PRINTF_F(f,v) __attribute__ ((format (printf, f, v)))
-# endif
-# if __GNUC__ >= 3
-#  define UNUSED __attribute__ ((unused))
-# endif
+#if __GNUC__ >= 2
+#define PRINTF_F(f, v) __attribute__((format(printf, f, v)))
+#endif
+#if __GNUC__ >= 3
+#define UNUSED __attribute__((unused))
+#endif
 #endif
 
 #ifndef PRINTF_F
-# define PRINTF_F(f,v)
+#define PRINTF_F(f, v)
 #endif
 #ifndef UNUSED
-# define UNUSED
+#define UNUSED
 #endif
 
 #endif /* TRADSTDC_H */
index 626a06ae7a8b97e66481d0052e3bfd70329a03dd..8fc95856ff29d3f6c8dabd9487a0735d9e5669ef 100644 (file)
 #ifdef USE_TRAMPOLI
 
 /* ### apply.c ### */
-#define dig()    dig_()
+#define dig() dig_()
 #define doapply() doapply_()
-#define dojump()  dojump_()
-#define dorub()   dorub_()
-
+#define dojump() dojump_()
+#define dorub() dorub_()
 
 /* ### artifact.c ### */
-#define doinvoke()     doinvoke_()
-
+#define doinvoke() doinvoke_()
 
 /* ### cmd.c ### */
-#define doextcmd()        doextcmd_()
-#define doextlist()       doextlist_()
-#define domonability()    domonability_()
+#define doextcmd() doextcmd_()
+#define doextlist() doextlist_()
+#define domonability() domonability_()
 #define enter_explore_mode() enter_explore_mode_()
 #define doprev_message() doprev_message_()
 #define timed_occupation() timed_occupation_()
-#define wiz_attributes()   wiz_attributes_()
-#define wiz_detect()      wiz_detect_()
-#define wiz_genesis()     wiz_genesis_()
-#define wiz_identify()    wiz_identify_()
-#define wiz_level_tele()   wiz_level_tele_()
-#define wiz_map()         wiz_map_()
-#define wiz_where()       wiz_where_()
-#define wiz_wish()        wiz_wish_()
+#define wiz_attributes() wiz_attributes_()
+#define wiz_detect() wiz_detect_()
+#define wiz_genesis() wiz_genesis_()
+#define wiz_identify() wiz_identify_()
+#define wiz_level_tele() wiz_level_tele_()
+#define wiz_map() wiz_map_()
+#define wiz_where() wiz_where_()
+#define wiz_wish() wiz_wish_()
 
 /* ### display.c ### */
 #define doredraw() doredraw_()
 
 /* ### do.c ### */
-#define doddrop()  doddrop_()
-#define dodown()   dodown_()
-#define dodrop()   dodrop_()
-#define donull()   donull_()
-#define doup()    doup_()
-#define dowipe()   dowipe_()
-#define drop(x)    drop_(x)
-#define wipeoff()  wipeoff_()
-
+#define doddrop() doddrop_()
+#define dodown() dodown_()
+#define dodrop() dodrop_()
+#define donull() donull_()
+#define doup() doup_()
+#define dowipe() dowipe_()
+#define drop(x) drop_(x)
+#define wipeoff() wipeoff_()
 
 /* ### do_name.c ### */
-#define ddocall()  ddocall_()
+#define ddocall() ddocall_()
 #define do_mname() do_mname_()
 
-
 /* ### do_wear.c ### */
-#define Armor_off()   Armor_off_()
-#define Boots_off()   Boots_off_()
-#define Gloves_off()  Gloves_off_()
-#define Helmet_off()  Helmet_off_()
-#define Armor_on()    Armor_on_()
-#define Boots_on()    Boots_on_()
-#define Gloves_on()   Gloves_on_()
-#define Helmet_on()   Helmet_on_()
+#define Armor_off() Armor_off_()
+#define Boots_off() Boots_off_()
+#define Gloves_off() Gloves_off_()
+#define Helmet_off() Helmet_off_()
+#define Armor_on() Armor_on_()
+#define Boots_on() Boots_on_()
+#define Gloves_on() Gloves_on_()
+#define Helmet_on() Helmet_on_()
 #define doddoremarm() doddoremarm_()
-#define doputon()     doputon_()
-#define doremring()   doremring_()
-#define dotakeoff()   dotakeoff_()
-#define dowear()      dowear_()
+#define doputon() doputon_()
+#define doremring() doremring_()
+#define dotakeoff() dotakeoff_()
+#define dowear() dowear_()
 #define select_off(x) select_off_(x)
-#define take_off()    take_off_()
-
+#define take_off() take_off_()
 
 /* ### dogmove.c ### */
 #define wantdoor(x, y, dummy) wantdoor_(x, y, dummy)
 
-
 /* ### dokick.c ### */
 #define dokick() dokick_()
 
-
 /* ### dothrow.c ### */
 #define dothrow() dothrow_()
 
-
 /* ### eat.c ### */
 #define Hear_again() Hear_again_()
-#define eatmdone()   eatmdone_()
-#define doeat()      doeat_()
-#define eatfood()    eatfood_()
-#define opentin()    opentin_()
-#define unfaint()    unfaint_()
-
+#define eatmdone() eatmdone_()
+#define doeat() doeat_()
+#define eatfood() eatfood_()
+#define opentin() opentin_()
+#define unfaint() unfaint_()
 
 /* ### end.c ### */
-#define done1(sig)  done1_(sig)
-#define done2()     done2_()
+#define done1(sig) done1_(sig)
+#define done2() done2_()
 #define done_intr(sig) done_intr_(sig)
-#if defined(UNIX) || defined (VMS) || defined(__EMX__)
+#if defined(UNIX) || defined(VMS) || defined(__EMX__)
 #define done_hangup(sig) done_hangup_(sig)
 #endif
 
-
 /* ### engrave.c ### */
 #define doengrave() doengrave_()
 
-
 /* ### fountain.c ### */
 #define gush(x, y, poolcnt) gush_(x, y, poolcnt)
 
-
 /* ### hack.c ### */
 #define dopickup() dopickup_()
 #define identify(x) identify_(x)
 
-
 /* ### invent.c ### */
-#define ckunpaid(x)  ckunpaid_(x)
-#define ddoinv()     ddoinv_()
-#define dolook()     dolook_()
+#define ckunpaid(x) ckunpaid_(x)
+#define ddoinv() ddoinv_()
+#define dolook() dolook_()
 #define dopramulet() dopramulet_()
-#define doprarm()    doprarm_()
-#define doprgold()   doprgold_()
-#define doprring()   doprring_()
-#define doprtool()   doprtool_()
-#define doprwep()    doprwep_()
-#define dotypeinv()  dotypeinv_()
+#define doprarm() doprarm_()
+#define doprgold() doprgold_()
+#define doprring() doprring_()
+#define doprtool() doprtool_()
+#define doprwep() doprwep_()
+#define dotypeinv() dotypeinv_()
 #define doorganize() doorganize_()
 
-
 /* ### ioctl.c ### */
 #ifdef UNIX
-# ifdef SUSPEND
+#ifdef SUSPEND
 #define dosuspend() dosuspend_()
-# endif /* SUSPEND */
+#endif /* SUSPEND */
 #endif /* UNIX */
 
-
 /* ### lock.c ### */
-#define doclose()   doclose_()
-#define doforce()   doforce_()
-#define doopen()    doopen_()
+#define doclose() doclose_()
+#define doforce() doforce_()
+#define doopen() doopen_()
 #define forcelock() forcelock_()
-#define picklock()  picklock_()
-
+#define picklock() picklock_()
 
 /* ### mklev.c ### */
-#define do_comp(x, y)  comp_(x, y)
-
+#define do_comp(x, y) comp_(x, y)
 
 /* ### mondata.c ### */
 /* See comment in trampoli.c before uncommenting canseemon. */
 /* #define canseemon(x) canseemon_(x) */
 
-
 /* ### muse.c ### */
 #define mbhitm(x, y) mbhitm_(x, y)
 
-
 /* ### o_init.c ### */
 #define dodiscovered() dodiscovered_()
 
-
 /* ### objnam.c ### */
-#define doname(x)   doname_(x)
-#define xname(x)    xname_(x)
-
+#define doname(x) doname_(x)
+#define xname(x) xname_(x)
 
 /* ### options.c ### */
-#define doset()                 doset_()
+#define doset() doset_()
 #define dotogglepickup() dotogglepickup_()
 
-
 /* ### pager.c ### */
-#define dohelp()     dohelp_()
-#define dohistory()  dohistory_()
+#define dohelp() dohelp_()
+#define dohistory() dohistory_()
 #ifdef UNIX
-#define intruph()    intruph_()
+#define intruph() intruph_()
 #endif /* UNIX */
 #define dowhatdoes() dowhatdoes_()
-#define dowhatis()   dowhatis_()
-#define doquickwhatis()   doquickwhatis_()
-
+#define dowhatis() dowhatis_()
+#define doquickwhatis() doquickwhatis_()
 
 /* ### pcsys.c ### */
 #ifdef SHELL
-#define dosh()      dosh_()
+#define dosh() dosh_()
 #endif /* SHELL */
 
-
 /* ### pickup.c ### */
-#define ck_bag(x)       ck_bag_(x)
-#define doloot()        doloot_()
-#define in_container(x)  in_container_(x)
+#define ck_bag(x) ck_bag_(x)
+#define doloot() doloot_()
+#define in_container(x) in_container_(x)
 #define out_container(x) out_container_(x)
 
-
 /* ### potion.c ### */
 #define dodrink() dodrink_()
-#define dodip()   dodip_()
-
+#define dodip() dodip_()
 
 /* ### pray.c ### */
-#define doturn()      doturn_()
-#define dopray()      dopray_()
+#define doturn() doturn_()
+#define dopray() dopray_()
 #define prayer_done() prayer_done_()
 #define dosacrifice() dosacrifice_()
 
-
 /* ### read.c ### */
-#define doread()          doread_()
+#define doread() doread_()
 #define set_lit(x, y, val) set_lit_(x, y, val)
 
-
 /* ### rip.c ### */
 #define genl_outrip(tmpwin, how) genl_outrip_(tmpwin, how)
 
-
 /* ### save.c ### */
 #define dosave() dosave_()
-#if defined(UNIX) || defined (VMS) || defined(__EMX__)
+#if defined(UNIX) || defined(VMS) || defined(__EMX__)
 #define hangup(sig) hangup_(sig)
 #endif
 
-
 /* ### search.c ### */
-#define doidtrap()          doidtrap_()
-#define dosearch()          dosearch_()
+#define doidtrap() doidtrap_()
+#define dosearch() dosearch_()
 #define findone(zx, zy, num) findone_(zx, zy, num)
 #define openone(zx, zy, num) openone_(zx, zy, num)
 
-
 /* ### shk.c ### */
 #define dopay() dopay_()
 
-
 /* ### sit.c ### */
 #define dosit() dosit_()
 
-
 /* ### sounds.c ### */
 #define dotalk() dotalk_()
 
-
 /* ### spell.c ### */
-#define learn()    learn_()
-#define docast()   docast_()
+#define learn() learn_()
+#define docast() docast_()
 #define dovspell() dovspell_()
 
-
 /* ### steal.c ### */
 #define stealarm() stealarm_()
 
-
 /* ### trap.c ### */
-#define dotele()     dotele_()
-#define dountrap()   dountrap_()
+#define dotele() dotele_()
+#define dountrap() dountrap_()
 #define float_down() float_down_()
 
-
 /* ### version.c ### */
-#define doversion()    doversion_()
+#define doversion() doversion_()
 #define doextversion() doextversion_()
 
-
 /* ### wield.c ### */
 #define dowield() dowield_()
 
-
 /* ### zap.c ### */
 #define bhitm(x, y) bhitm_(x, y)
 #define bhito(x, y) bhito_(x, y)
-#define dozap()     dozap_()
-
+#define dozap() dozap_()
 
 /* ### getline.c ### */
-#define tty_getlin(x,y)                        tty_getlin_(x,y)
-#define tty_get_ext_cmd()              tty_get_ext_cmd_()
-
+#define tty_getlin(x, y) tty_getlin_(x, y)
+#define tty_get_ext_cmd() tty_get_ext_cmd_()
 
 /* ### termcap.c ### */
-#define tty_nhbell()                   tty_nhbell_()
-#define tty_number_pad(x)              tty_number_pad_(x)
-#define tty_delay_output()             tty_delay_output_()
-#define tty_start_screen()             tty_start_screen_()
-#define tty_end_screen()               tty_end_screen_()
-
+#define tty_nhbell() tty_nhbell_()
+#define tty_number_pad(x) tty_number_pad_(x)
+#define tty_delay_output() tty_delay_output_()
+#define tty_start_screen() tty_start_screen_()
+#define tty_end_screen() tty_end_screen_()
 
 /* ### topl.c ### */
-#define tty_doprev_message()           tty_doprev_message_()
-#define tty_yn_function(x,y,z)         tty_yn_function_(x,y,z)
-
+#define tty_doprev_message() tty_doprev_message_()
+#define tty_yn_function(x, y, z) tty_yn_function_(x, y, z)
 
 /* ### wintty.c ### */
-#define tty_init_nhwindows(x,y)                tty_init_nhwindows_(x,y)
-#define tty_player_selection()         tty_player_selection_()
-#define tty_askname()                  tty_askname_()
-#define tty_get_nh_event()             tty_get_nh_event_()
-#define tty_exit_nhwindows(x)          tty_exit_nhwindows_(x)
-#define tty_suspend_nhwindows(x)       tty_suspend_nhwindows_(x)
-#define tty_resume_nhwindows()         tty_resume_nhwindows_()
-#define tty_create_nhwindow(x)         tty_create_nhwindow_(x)
-#define tty_clear_nhwindow(x)          tty_clear_nhwindow_(x)
-#define tty_display_nhwindow(x,y)      tty_display_nhwindow_(x,y)
-#define tty_destroy_nhwindow(x)                tty_destroy_nhwindow_(x)
-#define tty_curs(x,y,z)                        tty_curs_(x,y,z)
-#define tty_putstr(x,y,z)              tty_putstr_(x,y,z)
-#define tty_display_file(x,y)          tty_display_file_(x,y)
-#define tty_start_menu(x)              tty_start_menu_(x)
-#define tty_add_menu(a,b,c,d,e,f,g,h)  tty_add_menu_(a,b,c,d,e,f,g,h)
-#define tty_end_menu(a,b)              tty_end_menu_(a,b)
-#define tty_select_menu(a,b,c)         tty_select_menu_(a,b,c)
-#define tty_update_inventory()         tty_update_inventory_()
-#define tty_mark_synch()               tty_mark_synch_()
-#define tty_wait_synch()               tty_wait_synch_()
+#define tty_init_nhwindows(x, y) tty_init_nhwindows_(x, y)
+#define tty_player_selection() tty_player_selection_()
+#define tty_askname() tty_askname_()
+#define tty_get_nh_event() tty_get_nh_event_()
+#define tty_exit_nhwindows(x) tty_exit_nhwindows_(x)
+#define tty_suspend_nhwindows(x) tty_suspend_nhwindows_(x)
+#define tty_resume_nhwindows() tty_resume_nhwindows_()
+#define tty_create_nhwindow(x) tty_create_nhwindow_(x)
+#define tty_clear_nhwindow(x) tty_clear_nhwindow_(x)
+#define tty_display_nhwindow(x, y) tty_display_nhwindow_(x, y)
+#define tty_destroy_nhwindow(x) tty_destroy_nhwindow_(x)
+#define tty_curs(x, y, z) tty_curs_(x, y, z)
+#define tty_putstr(x, y, z) tty_putstr_(x, y, z)
+#define tty_display_file(x, y) tty_display_file_(x, y)
+#define tty_start_menu(x) tty_start_menu_(x)
+#define tty_add_menu(a, b, c, d, e, f, g, h) \
+    tty_add_menu_(a, b, c, d, e, f, g, h)
+#define tty_end_menu(a, b) tty_end_menu_(a, b)
+#define tty_select_menu(a, b, c) tty_select_menu_(a, b, c)
+#define tty_update_inventory() tty_update_inventory_()
+#define tty_mark_synch() tty_mark_synch_()
+#define tty_wait_synch() tty_wait_synch_()
 #ifdef CLIPPING
-#define tty_cliparound(x,y)            tty_cliparound_(x,y)
+#define tty_cliparound(x, y) tty_cliparound_(x, y)
 #endif
 #ifdef POSITIONBAR
-#define tty_update_positionbar(x)      tty_update_positionbar_(x)
+#define tty_update_positionbar(x) tty_update_positionbar_(x)
 #endif
-#define tty_print_glyph(a,b,c,d)       tty_print_glyph_(a,b,c,d)
-#define tty_raw_print(x)               tty_raw_print_(x)
-#define tty_raw_print_bold(x)          tty_raw_print_bold_(x)
-#define tty_nhgetch()                  tty_nhgetch_()
-#define tty_nh_poskey(x,y,z)           tty_nh_poskey_(x,y,z)
+#define tty_print_glyph(a, b, c, d) tty_print_glyph_(a, b, c, d)
+#define tty_raw_print(x) tty_raw_print_(x)
+#define tty_raw_print_bold(x) tty_raw_print_bold_(x)
+#define tty_nhgetch() tty_nhgetch_()
+#define tty_nh_poskey(x, y, z) tty_nh_poskey_(x, y, z)
 
 #endif /* USE_TRAMPOLI */
 
index 8234fc2c2a9da0f60bd9f3b514c3497e073b45e1..9ba154b85fb0604e7ce82956edff6c348f19b537 100644 (file)
 #define TRAP_H
 
 union vlaunchinfo {
-       short v_launch_otyp;    /* type of object to be triggered */
-       coord v_launch2;        /* secondary launch point (for boulders) */
-       uchar v_conjoined;      /* conjoined pit locations */
-       short v_tnote;          /* boards: 12 notes        */
+    short v_launch_otyp; /* type of object to be triggered */
+    coord v_launch2;     /* secondary launch point (for boulders) */
+    uchar v_conjoined;   /* conjoined pit locations */
+    short v_tnote;       /* boards: 12 notes        */
 };
 
 struct trap {
-       struct trap *ntrap;
-       xchar tx,ty;
-       d_level dst;    /* destination for portals */
-       coord launch;
-       Bitfield(ttyp,5);
-       Bitfield(tseen,1);
-       Bitfield(once,1);
-       Bitfield(madeby_u,1); /* So monsters may take offence when you trap
-                                them.  Recognizing who made the trap isn't
-                                completely unreasonable, everybody has
-                                their own style.  This flag is also needed
-                                when you untrap a monster.  It would be too
-                                easy to make a monster peaceful if you could
-                                set a trap for it and then untrap it. */
-       union vlaunchinfo vl;
-#define launch_otyp    vl.v_launch_otyp
-#define launch2                vl.v_launch2
-#define conjoined       vl.v_conjoined
-#define tnote          vl.v_tnote
+    struct trap *ntrap;
+    xchar tx, ty;
+    d_level dst; /* destination for portals */
+    coord launch;
+    Bitfield(ttyp, 5);
+    Bitfield(tseen, 1);
+    Bitfield(once, 1);
+    Bitfield(madeby_u, 1); /* So monsters may take offence when you trap
+                              them.    Recognizing who made the trap isn't
+                              completely unreasonable, everybody has
+                              their own style.  This flag is also needed
+                              when you untrap a monster.  It would be too
+                              easy to make a monster peaceful if you could
+                              set a trap for it and then untrap it. */
+    union vlaunchinfo vl;
+#define launch_otyp vl.v_launch_otyp
+#define launch2 vl.v_launch2
+#define conjoined vl.v_conjoined
+#define tnote vl.v_tnote
 };
 
 extern struct trap *ftrap;
-#define newtrap()      (struct trap *) alloc(sizeof(struct trap))
-#define dealloc_trap(trap) free((genericptr_t) (trap))
+#define newtrap() (struct trap *) alloc(sizeof(struct trap))
+#define dealloc_trap(trap) free((genericptr_t)(trap))
 
 /* reasons for statue animation */
-#define ANIMATE_NORMAL 0
+#define ANIMATE_NORMAL 0
 #define ANIMATE_SHATTER 1
-#define ANIMATE_SPELL  2
+#define ANIMATE_SPELL 2
 
 /* reasons for animate_statue's failure */
-#define AS_OK           0      /* didn't fail */
-#define AS_NO_MON       1      /* makemon failed */
-#define AS_MON_IS_UNIQUE 2     /* statue monster is unique */
+#define AS_OK 0            /* didn't fail */
+#define AS_NO_MON 1        /* makemon failed */
+#define AS_MON_IS_UNIQUE 2 /* statue monster is unique */
 
 /* Note: if adding/removing a trap, adjust trap_engravings[] in mklev.c */
 
 /* unconditional traps */
-#define NO_TRAP                0
-#define ARROW_TRAP     1
-#define DART_TRAP      2
-#define ROCKTRAP       3
-#define SQKY_BOARD     4
-#define BEAR_TRAP      5
-#define LANDMINE       6
-#define ROLLING_BOULDER_TRAP   7
-#define SLP_GAS_TRAP   8
-#define RUST_TRAP      9
-#define FIRE_TRAP      10
-#define PIT            11
-#define SPIKED_PIT     12
-#define HOLE           13
-#define TRAPDOOR       14
-#define TELEP_TRAP     15
-#define LEVEL_TELEP    16
-#define MAGIC_PORTAL   17
-#define WEB            18
-#define STATUE_TRAP    19
-#define MAGIC_TRAP     20
-#define ANTI_MAGIC     21
-#define POLY_TRAP      22
+#define NO_TRAP 0
+#define ARROW_TRAP 1
+#define DART_TRAP 2
+#define ROCKTRAP 3
+#define SQKY_BOARD 4
+#define BEAR_TRAP 5
+#define LANDMINE 6
+#define ROLLING_BOULDER_TRAP 7
+#define SLP_GAS_TRAP 8
+#define RUST_TRAP 9
+#define FIRE_TRAP 10
+#define PIT 11
+#define SPIKED_PIT 12
+#define HOLE 13
+#define TRAPDOOR 14
+#define TELEP_TRAP 15
+#define LEVEL_TELEP 16
+#define MAGIC_PORTAL 17
+#define WEB 18
+#define STATUE_TRAP 19
+#define MAGIC_TRAP 20
+#define ANTI_MAGIC 21
+#define POLY_TRAP 22
 #define VIBRATING_SQUARE 23
 #define TRAPNUM 24
 
index 80e4d00b773f211ea1505049a47364ab91d5504c..01f06d5a38f599f87739091527c4eab8c285173d 100644 (file)
  */
 
 /* define exactly one of the following four choices */
-/* #define BSD 1 */    /* define for 4.n/Free/Open/Net BSD  */
-                       /* also for relatives like SunOS 4.x, DG/UX, and */
-                       /* older versions of Linux */
-/* #define ULTRIX */   /* define for Ultrix v3.0 or higher (but not lower) */
-                       /* Use BSD for < v3.0 */
-                       /* "ULTRIX" not to be confused with "ultrix" */
-#define SYSV           /* define for System V, Solaris 2.x, newer versions */
-                       /* of Linux */
-/* #define HPUX */     /* Hewlett-Packard's Unix, version 6.5 or higher */
-                       /* use SYSV for < v6.5 */
-
+/* #define BSD 1 */  /* define for 4.n/Free/Open/Net BSD  */
+                     /* also for relatives like SunOS 4.x, DG/UX, and */
+                     /* older versions of Linux */
+/* #define ULTRIX */ /* define for Ultrix v3.0 or higher (but not lower) */
+                     /* Use BSD for < v3.0 */
+                     /* "ULTRIX" not to be confused with "ultrix" */
+#define SYSV         /* define for System V, Solaris 2.x, newer versions */
+                     /* of Linux */
+/* #define HPUX */   /* Hewlett-Packard's Unix, version 6.5 or higher */
+                     /* use SYSV for < v6.5 */
 
 /* define any of the following that are appropriate */
-#define SVR4           /* use in addition to SYSV for System V Release 4 */
-                       /* including Solaris 2+ */
-#define NETWORK                /* if running on a networked system */
-                       /* e.g. Suns sharing a playground through NFS */
-/* #define SUNOS4 */   /* SunOS 4.x */
-/* #define LINUX */    /* Another Unix clone */
-/* #define CYGWIN32 */ /* Unix on Win32 -- use with case sensitive defines */
-/* #define GENIX */    /* Yet Another Unix Clone */
-/* #define HISX */     /* Bull Unix for XPS Machines */
-/* #define BOS */      /* Bull Open Software - Unix for DPX/2 Machines */
-/* #define UNIXPC */   /* use in addition to SYSV for AT&T 7300/3B1 */
-/* #define AIX_31 */   /* In AIX 3.1 (IBM RS/6000) use BSD ioctl's to gain
-                        * job control (note that AIX is SYSV otherwise)
-                        * Also define this for AIX 3.2 */
-
-#define TERMINFO       /* uses terminfo rather than termcap */
-                       /* Should be defined for most SYSV, SVR4 (including
-                        * Solaris 2+), HPUX, and Linux systems.  In
-                        * particular, it should NOT be defined for the UNIXPC
-                        * unless you remove the use of the shared library in
-                        * the Makefile */
-#define TEXTCOLOR      /* Use System V r3.2 terminfo color support */
-                       /* and/or ANSI color support on termcap systems */
-                       /* and/or X11 color */
-#define POSIX_JOB_CONTROL /* use System V / Solaris 2.x / POSIX job control */
-                       /* (e.g., VSUSP) */
-#define POSIX_TYPES    /* use POSIX types for system calls and termios */
-                       /* Define for many recent OS releases, including
-                        * those with specific defines (since types are
-                        * changing toward the standard from earlier chaos).
-                        * For example, platforms using the GNU libraries,
-                        * Linux, Solaris 2.x
-                        */
-
-/* #define OPENWINBUG */       /* avoid a problem using OpenWindows 3.0 for
-                                  X11 on SunOS 4.1.x, x>= 2.  Do not define
-                                  for other X11 implementations. */
-/* #define PYRAMID_BUG */      /* avoid a bug on the Pyramid */
-/* #define BSD_43_BUG */       /* for real 4.3BSD cc's without schain botch fix */
-/* #define MICROPORT_BUG */    /* problems with large arrays in structs */
+#define SVR4           /* use in addition to SYSV for System V Release 4 */
+                       /* including Solaris 2+ */
+#define NETWORK        /* if running on a networked system */
+                       /* e.g. Suns sharing a playground through NFS */
+/* #define SUNOS4 */   /* SunOS 4.x */
+/* #define LINUX */    /* Another Unix clone */
+/* #define CYGWIN32 */ /* Unix on Win32 -- use with case sensitive defines */
+/* #define GENIX */    /* Yet Another Unix Clone */
+/* #define HISX */     /* Bull Unix for XPS Machines */
+/* #define BOS */      /* Bull Open Software - Unix for DPX/2 Machines */
+/* #define UNIXPC */   /* use in addition to SYSV for AT&T 7300/3B1 */
+/* #define AIX_31 */   /* In AIX 3.1 (IBM RS/6000) use BSD ioctl's to gain
+                        * job control (note that AIX is SYSV otherwise)
+                        * Also define this for AIX 3.2 */
+
+#define TERMINFO          /* uses terminfo rather than termcap */
+                          /* Should be defined for most SYSV, SVR4 (including
+                           * Solaris 2+), HPUX, and Linux systems.  In
+                           * particular, it should NOT be defined for the UNIXPC
+                           * unless you remove the use of the shared library in
+                           * the Makefile */
+#define TEXTCOLOR         /* Use System V r3.2 terminfo color support */
+                          /* and/or ANSI color support on termcap systems */
+                          /* and/or X11 color */
+#define POSIX_JOB_CONTROL /* use System V / Solaris 2.x / POSIX job control \
+                             */
+/* (e.g., VSUSP) */
+#define POSIX_TYPES /* use POSIX types for system calls and termios */
+                    /* Define for many recent OS releases, including
+                     * those with specific defines (since types are
+                     * changing toward the standard from earlier chaos).
+                     * For example, platforms using the GNU libraries,
+                     * Linux, Solaris 2.x
+                     */
+
+/* #define OPENWINBUG */  /* avoid a problem using OpenWindows 3.0 for
+                             X11 on SunOS 4.1.x, x>= 2.  Do not define
+                             for other X11 implementations. */
+/* #define PYRAMID_BUG */ /* avoid a bug on the Pyramid */
+/* #define BSD_43_BUG */  /* for real 4.3BSD cc's without schain botch fix */
+/* #define MICROPORT_BUG */     /* problems with large arrays in structs */
 /* #define MICROPORT_286_BUG */ /* changes needed in termcap.c to get it to
-                                  run with Microport Sys V/AT version 2.4.
-                                  By Jay Maynard */
-/* #define AIXPS_2BUG */       /* avoid a problem with little_to_big() optimization */
+                                   run with Microport Sys V/AT version 2.4.
+                                   By Jay Maynard */
+/* #define AIXPS_2BUG */ /* avoid a problem with little_to_big() optimization
+                            */
 
-/* #define RANDOM */           /* if neither random/srandom nor lrand48/srand48
-                                  is available from your system */
+/* #define RANDOM */ /* if neither random/srandom nor lrand48/srand48
+                        is available from your system */
 
 /* see sys/unix/snd86unx.shr for more information on these */
-/* #define UNIX386MUSIC */     /* play real music through speaker on systems
-                                  with music driver installed */
-/* #define VPIX_MUSIC */       /* play real music through speaker on systems
-                                  with built-in VPIX support */
-
+/* #define UNIX386MUSIC */ /* play real music through speaker on systems
+                              with music driver installed */
+/* #define VPIX_MUSIC */   /* play real music through speaker on systems
+                              with built-in VPIX support */
 
 /*
  * The next two defines are intended mainly for the Andrew File System,
@@ -96,8 +96,8 @@
  *             Ralf Brown, 7/26/89 (from v2.3 hack of 10/10/88)
  */
 
-/* #define NO_FILE_LINKS */    /* if no hard links */
-/* #define LOCKDIR "/usr/games/lib/nethackdir" */      /* where to put locks */
+/* #define NO_FILE_LINKS */                       /* if no hard links */
+/* #define LOCKDIR "/usr/games/lib/nethackdir" */ /* where to put locks */
 
 /*
  * If you want the static parts of your playground on a read-only file
  */
 /* #define VAR_PLAYGROUND "/var/lib/games/nethack" */
 
-
 /*
  * Define DEF_PAGER as your default pager, e.g. "/bin/cat" or "/usr/ucb/more"
  * If defined, it can be overridden by the environment variable PAGER.
  * #define DEF_PAGER   ".../mydir/mypager"
  */
 
-
-
 /*
  * Define PORT_HELP to be the name of the port-specfic help file.
  * This file is found in HACKDIR.
  * "extra output" method is used, but not all systems provide access to
  * a fine-grained timer.
  */
-/* #define TIMED_DELAY */      /* usleep() */
+/* #define TIMED_DELAY */ /* usleep() */
 #endif
 
 /*
  * A stat system call is done on the mailbox every MAILCKFREQ moves.
  */
 #if !defined(NOMAIL)
-#define MAIL                   /* Deliver mail during the game */
+#define MAIL /* Deliver mail during the game */
 #endif
 
 /* The Andrew Message System does mail a little differently from normal
  *             dl2n+@andrew.cmu.edu (dec 19 1989)
  */
 
-/* #define AMS */              /* use Andrew message system for mail */
+/* #define AMS */ /* use Andrew message system for mail */
 
 /* NO_MAILREADER is for kerberos authenticating filesystems where it is
  * essentially impossible to securely exec child processes, like mail
  *            dan
  */
 
-/* #define NO_MAILREADER */    /* have mail daemon just tell player of mail */
-
-#ifdef MAIL
-# if defined(BSD) || defined(ULTRIX)
-#  ifdef AMS
-#define AMS_MAILBOX    "/Mailbox"
-#  else
-#   if defined(__FreeBSD__) || defined(__OpenBSD__)
-#define DEF_MAILREADER "/usr/bin/mail"
-#   else
-#define DEF_MAILREADER "/usr/ucb/Mail"
-#   endif
-#  endif
+/* #define NO_MAILREADER */ /* have mail daemon just tell player of mail */
+
+#ifdef MAIL
+#if defined(BSD) || defined(ULTRIX)
+#ifdef AMS
+#define AMS_MAILBOX "/Mailbox"
+#else
+#if defined(__FreeBSD__) || defined(__OpenBSD__)
+#define DEF_MAILREADER "/usr/bin/mail"
 #else
-# if (defined(SYSV) || defined(DGUX) || defined(HPUX)) && !defined(LINUX)
-#  if defined(M_XENIX)
-#define DEF_MAILREADER "/usr/bin/mail"
-#  else
-#   ifdef __sgi
-#define DEF_MAILREADER "/usr/sbin/Mail"
-#   else
-#define DEF_MAILREADER "/usr/bin/mailx"
-#   endif
-#  endif
-# else
-#define DEF_MAILREADER "/bin/mail"
-# endif
-#endif
-
-#define MAILCKFREQ     50
-#endif /* MAIL */
+#define DEF_MAILREADER "/usr/ucb/Mail"
+#endif
+#endif
+#else
+#if (defined(SYSV) || defined(DGUX) || defined(HPUX)) && !defined(LINUX)
+#if defined(M_XENIX)
+#define DEF_MAILREADER "/usr/bin/mail"
+#else
+#ifdef __sgi
+#define DEF_MAILREADER "/usr/sbin/Mail"
+#else
+#define DEF_MAILREADER "/usr/bin/mailx"
+#endif
+#endif
+#else
+#define DEF_MAILREADER "/bin/mail"
+#endif
+#endif
+
+#define MAILCKFREQ 50
+#endif /* MAIL */
 
 /*
  * Some terminals or terminal emulators send two character sequence "ESC c"
  * when Alt+c is pressed.  The altmeta run-time option allows the user to
  * request that "ESC c" be treated as M-c.
  */
-#define ALTMETA                /* support altmeta run-time option */
-
+#define ALTMETA /* support altmeta run-time option */
 
 #ifdef COMPRESS
 /* Some implementations of compress need a 'quiet' option.
 /* #define COMPRESS_OPTIONS "-q" */
 #endif
 
-#define FCMASK 0660    /* file creation mask */
+#define FCMASK 0660 /* file creation mask */
 
 /* fcntl(2) is a POSIX-portable call for manipulating file descriptors.
  * Comment out the USE_FCNTL if for some reason you have a strange
  * OS/filesystem combination for which fcntl(2) does not work. */
 #ifdef POSIX_TYPES
-# define USE_FCNTL
+#define USE_FCNTL
 #endif
 
 /*
  */
 
 #ifdef _AUX_SOURCE
-# ifdef AUX /* gcc ? */
-#  define _SYSV_SOURCE
-#  define _BSD_SOURCE
+#ifdef AUX /* gcc ? */
+#define _SYSV_SOURCE
+#define _BSD_SOURCE
 #else
-#  define AUX
-# endif
+#define AUX
+#endif
 #endif /* _AUX_SOURCE */
 
 #if defined(LINUX) || defined(bsdi)
-# ifndef POSIX_TYPES
-#  define POSIX_TYPES
-# endif
-# ifndef POSIX_JOB_CONTROL
-#  define POSIX_JOB_CONTROL
-# endif
+#ifndef POSIX_TYPES
+#define POSIX_TYPES
+#endif
+#ifndef POSIX_JOB_CONTROL
+#define POSIX_JOB_CONTROL
+#endif
 #endif
 
 /*
  * various recent SYSV versions (with possibly tweaks to unixtty.c again).
  */
 #ifndef POSIX_JOB_CONTROL
-# if defined(BSD) || defined(ULTRIX) || defined(HPUX) || defined(AIX_31)
-#  define BSD_JOB_CONTROL
-# else
-#  if defined(SVR4)
-#   define POSIX_JOB_CONTROL
-#  endif
-# endif
+#if defined(BSD) || defined(ULTRIX) || defined(HPUX) || defined(AIX_31)
+#define BSD_JOB_CONTROL
+#else
+#if defined(SVR4)
+#define POSIX_JOB_CONTROL
+#endif
+#endif
 #endif
 #if defined(BSD_JOB_CONTROL) || defined(POSIX_JOB_CONTROL) || defined(AUX)
-#define SUSPEND                /* let ^Z suspend the game */
+#define SUSPEND /* let ^Z suspend the game */
 #endif
 
 /*
  */
 #define SAFERHANGUP
 
-
 #if defined(BSD) || defined(ULTRIX)
 #include <sys/time.h>
 #else
 #include <time.h>
 #endif
 
-#define HLOCK  "perm"  /* an empty file used for locking purposes */
+#define HLOCK "perm" /* an empty file used for locking purposes */
 
 #define tgetch getchar
 
 #ifndef NOSHELL
-# define SHELL         /* do not delete the '!' command */
+#define SHELL /* do not delete the '!' command */
 #endif
 
 #include "system.h"
 #include <unistd.h>
 #endif
 
-#if defined(POSIX_TYPES) || defined(__GNUC__) || defined(BSD) || defined(ULTRIX)
+#if defined(POSIX_TYPES) || defined(__GNUC__) || defined(BSD) \
+    || defined(ULTRIX)
 #include <sys/wait.h>
 #endif
 
 #if defined(BSD) || defined(ULTRIX)
-# if !defined(DGUX) && !defined(SUNOS4)
-#define memcpy(d, s, n)                bcopy(s, d, n)
-#define memcmp(s1, s2, n)      bcmp(s2, s1, n)
-# endif
-# ifdef SUNOS4
+#if !defined(DGUX) && !defined(SUNOS4)
+#define memcpy(d, s, n) bcopy(s, d, n)
+#define memcmp(s1, s2, n) bcmp(s2, s1, n)
+#endif
+#ifdef SUNOS4
 #include <memory.h>
-# endif
-#else  /* therefore SYSV */
-# ifndef index /* some systems seem to do this for you */
-#define index  strchr
-# endif
-# ifndef rindex
-#define rindex strrchr
-# endif
+#endif
+#else         /* therefore SYSV */
+#ifndef index /* some systems seem to do this for you */
+#define index strchr
+#endif
+#ifndef rindex
+#define rindex strrchr
+#endif
 #endif
 
 /* Use the high quality random number routines. */
-#if defined(BSD) || defined(LINUX) || defined(ULTRIX) || defined(CYGWIN32) || defined(RANDOM) || defined(__APPLE__)
-#define Rand() random()
+#if defined(BSD) || defined(LINUX) || defined(ULTRIX) || defined(CYGWIN32) \
+    || defined(RANDOM) || defined(__APPLE__)
+#define Rand() random()
 #else
-#define Rand() lrand48()
+#define Rand() lrand48()
 #endif
 
 #ifdef TIMED_DELAY
-# if defined(SUNOS4) || defined(LINUX) || (defined(BSD) && !defined(ULTRIX))
-# define msleep(k) usleep((k)*1000)
-# endif
-# ifdef ULTRIX
-# define msleep(k) napms(k)
-# endif
+#if defined(SUNOS4) || defined(LINUX) || (defined(BSD) && !defined(ULTRIX))
+#define msleep(k) usleep((k) *1000)
+#endif
+#ifdef ULTRIX
+#define msleep(k) napms(k)
+#endif
 #endif
 
-#ifdef hc      /* older versions of the MetaWare High-C compiler define this */
-# ifdef __HC__
-#  undef __HC__
-# endif
-# define __HC__ hc
-# undef hc
+#ifdef hc /* older versions of the MetaWare High-C compiler define this */
+#ifdef __HC__
+#undef __HC__
+#endif
+#define __HC__ hc
+#undef hc
 #endif
 
 #if defined(GNOME_GRAPHICS)
 #if defined(LINUX)
-# include <linux/unistd.h>
-# if defined(__NR_getresuid) && defined(__NR_getresgid)        /* ie., >= v2.1.44 */
-#  define GETRES_SUPPORT
-# endif
+#include <linux/unistd.h>
+#if defined(__NR_getresuid) && defined(__NR_getresgid) /* ie., >= v2.1.44 */
+#define GETRES_SUPPORT
+#endif
 #else
-# if defined(BSD) || defined(SVR4)
+#if defined(BSD) || defined(SVR4)
 /*
  * [ALI] We assume that SVR4 means we can safely include syscall.h
  * (although it's really a BSDism). This is certainly true for Solaris 2.5,
  * Solaris 7, Solaris 8 and Compaq Tru64 5.1
  * Later BSD systems will have the getresid system calls.
  */
-# include <sys/syscall.h>
-# if (defined (SYS_getuid) || defined(SYS_getresuid)) && \
-  (defined(SYS_getgid) || defined(SYS_getresgid))
-#  define GETRES_SUPPORT
-# endif
-# endif        /* BSD || SVR4 */
+#include <sys/syscall.h>
+#if (defined(SYS_getuid) || defined(SYS_getresuid)) \
+    && (defined(SYS_getgid) || defined(SYS_getresgid))
+#define GETRES_SUPPORT
+#endif
+#endif /* BSD || SVR4 */
 #endif /* LINUX */
-#endif /* GNOME_GRAPHICS */
+#endif /* GNOME_GRAPHICS */
 
 #endif /* UNIXCONF_H */
 #endif /* UNIX */
index 7842f3085d04b3e5d7f353553cbad2b1fb54956d..f2ec984624b9a40713b7ab4c186788e69d897efe 100644 (file)
@@ -7,15 +7,15 @@
 #ifndef VISION_H
 #define VISION_H
 
-#if 0  /* (moved to decl.h) */
+#if 0 /* (moved to decl.h) */
 extern boolean vision_full_recalc;     /* TRUE if need vision recalc */
 extern char **viz_array;               /* could see/in sight row pointers */
 extern char *viz_rmin;                 /* min could see indices */
 extern char *viz_rmax;                 /* max could see indices */
 #endif
-#define COULD_SEE 0x1          /* location could be seen, if it were lit */
-#define IN_SIGHT  0x2          /* location can be seen */
-#define TEMP_LIT  0x4          /* location is temporarily lit */
+#define COULD_SEE 0x1 /* location could be seen, if it were lit */
+#define IN_SIGHT 0x2  /* location can be seen */
+#define TEMP_LIT 0x4  /* location is temporarily lit */
 
 /*
  * Light source sources
@@ -29,9 +29,9 @@ extern char *viz_rmax;                        /* max could see indices */
  *  couldsee() - Returns true if the hero has a clear line of sight to
  *               the location.
  */
-#define cansee(x,y)    (viz_array[y][x] & IN_SIGHT)
-#define couldsee(x,y)  (viz_array[y][x] & COULD_SEE)
-#define templit(x,y)   (viz_array[y][x] & TEMP_LIT)
+#define cansee(x, y) (viz_array[y][x] & IN_SIGHT)
+#define couldsee(x, y) (viz_array[y][x] & COULD_SEE)
+#define templit(x, y) (viz_array[y][x] & TEMP_LIT)
 
 /*
  *  The following assume the monster is not blind.
@@ -43,27 +43,29 @@ extern char *viz_rmax;                      /* max could see indices */
  *               location and the hero is visible, then monster can see the
  *               hero.
  */
-#define m_cansee(mtmp,x2,y2)   clear_path((mtmp)->mx,(mtmp)->my,(x2),(y2))
+#define m_cansee(mtmp, x2, y2) clear_path((mtmp)->mx, (mtmp)->my, (x2), (y2))
 
-#define m_canseeu(m)   ((!Invis || perceives((m)->data)) && \
-                         !(Underwater || u.uburied || (m)->mburied) ? \
-                            couldsee((m)->mx,(m)->my) : 0)
+#define m_canseeu(m)                                       \
+    ((!Invis || perceives((m)->data))                      \
+             && !(Underwater || u.uburied || (m)->mburied) \
+         ? couldsee((m)->mx, (m)->my)                      \
+         : 0)
 
 /*
  *  Circle information
  */
-#define MAX_RADIUS 15  /* this is in points from the source */
+#define MAX_RADIUS 15 /* this is in points from the source */
 
 /* Use this macro to get a list of distances of the edges (see vision.c). */
-#define circle_ptr(z) (&circle_data[(int)circle_start[z]])
+#define circle_ptr(z) (&circle_data[(int) circle_start[z]])
 
 /* howmonseen() bitmask values */
-#define MONSEEN_NORMAL         0x0001  /* normal vision */
-#define MONSEEN_SEEINVIS       0x0002  /* seeing invisible */
-#define MONSEEN_INFRAVIS       0x0004  /* via infravision */
-#define MONSEEN_TELEPAT                0x0008  /* via telepathy */
-#define MONSEEN_XRAYVIS                0x0010  /* via Xray vision */
-#define MONSEEN_DETECT         0x0020  /* via extended monster detection */
-#define MONSEEN_WARNMON                0x0040  /* via type-specific warning */
+#define MONSEEN_NORMAL 0x0001   /* normal vision */
+#define MONSEEN_SEEINVIS 0x0002 /* seeing invisible */
+#define MONSEEN_INFRAVIS 0x0004 /* via infravision */
+#define MONSEEN_TELEPAT 0x0008  /* via telepathy */
+#define MONSEEN_XRAYVIS 0x0010  /* via Xray vision */
+#define MONSEEN_DETECT 0x0020   /* via extended monster detection */
+#define MONSEEN_WARNMON 0x0040  /* via type-specific warning */
 
 #endif /* VISION_H */
index 11c8c19ac556f4d518d32cde4819c2a9419204ce..c9bd971c7576762280bce5381245d3a190214ef3 100644 (file)
@@ -16,8 +16,8 @@
  * Trailing NULs are present in the default values in order to make some
  *   extra room for patching longer values into an existing executable.
  */
-#define Local_WIZARD   "NHWIZARD\0\0\0\0"
-#define Local_HACKDIR  "DISK$USERS:[GAMES.NETHACK.3_5_X.PLAY]\0\0\0\0\0\0\0\0"
+#define Local_WIZARD "NHWIZARD\0\0\0\0"
+#define Local_HACKDIR "DISK$USERS:[GAMES.NETHACK.3_5_X.PLAY]\0\0\0\0\0\0\0\0"
 
 /*
  * This section cleans up the stuff done in config.h so that it
  * config.h is actually edited, the changes won't impact us.
  */
 #ifdef UNIX
-# undef UNIX
+#undef UNIX
 #endif
 #ifdef HACKDIR
-# undef HACKDIR
+#undef HACKDIR
 #endif
 #ifdef WIZARD_NAME
-# undef WIZARD_NAME
+#undef WIZARD_NAME
 #endif
 #define HACKDIR Local_HACKDIR
 #define WIZARD_NAME Local_WIZARD
 #ifndef SYSCF
-# define SYSCF
+#define SYSCF
 #endif
 
 /* filenames require punctuation to avoid redirection via logical names */
 #undef RECORD
-#define RECORD "record;1"      /* scoreboard file (retains high scores) */
+#define RECORD "record;1" /* scoreboard file (retains high scores) */
 #undef LOGFILE
-#define LOGFILE "logfile;0"    /* optional file (records all games) */
+#define LOGFILE "logfile;0" /* optional file (records all games) */
 #undef SYSCF_FILE
 #define SYSCF_FILE "sysconf;0"
 
-#define HLOCK  "perm;1"        /* an empty file used for locking purposes */
+#define HLOCK "perm;1" /* an empty file used for locking purposes */
 
-/* want compression--for level & save files--performed within NetHack itself */
+/* want compression--for level & save files--performed within NetHack itself
+ */
 #ifdef COMPRESS
-# undef COMPRESS
+#undef COMPRESS
 #endif
 #ifndef INTERNAL_COMP
-# define INTERNAL_COMP
+#define INTERNAL_COMP
 #endif
 
 /*
@@ -83,7 +84,7 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
  * Put the readonly data files into a single container rather than into
  * separate files in the playground directory.
  */
-#define DLB    /* use data librarian code */
+#define DLB /* use data librarian code */
 
 /*
  * Provide menu of saved games to choose from at start.
@@ -106,7 +107,8 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
  * If you define USE_QIO_INPUT, then you'll get raw characters from the
  * keyboard, not unlike those of the unix version of Nethack.  This will
  * allow you to use the Escape key in normal gameplay, and the appropriate
- * control characters in Wizard mode.  It will work most like the unix version.
+ * control characters in Wizard mode.  It will work most like the unix
+ * version.
  * It will also avoid "<interrupt>" being displayed when ^Y is pressed.
  *
  * Otherwise, the VMS SMG calls will be used.  These calls block use of
@@ -114,13 +116,13 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
  * the same, although the differences are fairly negligible.  You must
  * then use a VTxxx function key or two <escape>s to give an ESC response.
  */
-#define USE_QIO_INPUT  /* use SYS$QIOW instead of SMG$READ_KEYSTROKE */
+#define USE_QIO_INPUT /* use SYS$QIOW instead of SMG$READ_KEYSTROKE */
 
 /*
  * Allow the user to decide whether to pause via timer or excess screen
  * output for various display effects like explosions and moving objects.
  */
-#define TIMED_DELAY    /* enable the `timed_delay' run-time option */
+#define TIMED_DELAY /* enable the `timed_delay' run-time option */
 
 /*
  * If you define MAIL, then NetHack will capture incoming broadcast
@@ -132,7 +134,7 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
  * If you undefine MAIL, broadcasts will go straight to the terminal,
  * resulting in disruption of the screen display; use <ctrl/R> to redraw.
  */
-#define MAIL           /* enable broadcast trapping */
+#define MAIL /* enable broadcast trapping */
 
 /*
  * SHELL enables the player to 'escape' into a spawned subprocess via
@@ -144,8 +146,8 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
  * to the parent process with the <ctrl/Z> command; this is not very
  * close to Unix job control, but it's better than nothing.
  */
-#define SHELL          /* do not delete the '!' command */
-#define SUSPEND                /* don't delete the ^Z command, such as it is */
+#define SHELL   /* do not delete the '!' command */
+#define SUSPEND /* don't delete the ^Z command, such as it is */
 
 /*
  * Some terminals or terminal emulators send two character sequence "ESC c"
@@ -154,13 +156,11 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
  * ESC when it is waiting for a command, it will wait for another character
  * (even if user intended that ESC to be standalone to cancel a count prefix).
  */
-#define ALTMETA                /* support altmeta run-time option */
-
+#define ALTMETA /* support altmeta run-time option */
 
-#define RANDOM         /* use sys/share/random.c instead of vaxcrtl rand */
-
-#define FCMASK 0660    /* file creation mask */
+#define RANDOM /* use sys/share/random.c instead of vaxcrtl rand */
 
+#define FCMASK 0660 /* file creation mask */
 
 /*
  * The remainder of the file should not need to be changed.
@@ -168,111 +168,113 @@ PANICTRACE_GDB=2  #at conclusion of panic, show a call traceback and then
 
 /* data librarian defs */
 #ifdef DLB
-# define DLBFILE       "nh-data.dlb"
-       /*
       * Since we can do without case insensitive filename comparison,
       * avoid enabling it because that requires compiling and linking
       * src/hacklib into util/dlb_main.
       */
-/* # define FILENAME_CMP strcmpi */    /* case insensitive */
+#define DLBFILE "nh-data.dlb"
+/*
+ * Since we can do without case insensitive filename comparison,
+ * avoid enabling it because that requires compiling and linking
+ * src/hacklib into util/dlb_main.
+ */
+/* # define FILENAME_CMP strcmpi */ /* case insensitive */
 #endif
 
 #if defined(VAXC) && !defined(ANCIENT_VAXC)
-# ifdef volatile
-#  undef volatile
-# endif
-# ifdef const
-#  undef const
-# endif
+#ifdef volatile
+#undef volatile
+#endif
+#ifdef const
+#undef const
+#endif
 #endif
 
 #ifdef __DECC
-# define STRICT_REF_DEF /* used in lev_main.c */
+#define STRICT_REF_DEF /* used in lev_main.c */
 #endif
 #ifdef STRICT_REF_DEF
-# define DEFINE_OSPEED
+#define DEFINE_OSPEED
 #endif
 
 #ifndef alloca
-       /* bison generated foo_yacc.c might try to use alloca() */
-# ifdef __GNUC__
-#  define alloca __builtin_alloca
-# else
-#  define ALLOCA_HACK  /* used in util/panic.c */
-# endif
+/* bison generated foo_yacc.c might try to use alloca() */
+#ifdef __GNUC__
+#define alloca __builtin_alloca
+#else
+#define ALLOCA_HACK /* used in util/panic.c */
+#endif
 #endif
 
 #ifdef _DECC_V4_SOURCE
-/* <types.h> excludes some necessary typedefs when _DECC_V4_SOURCE is defined */
+/* <types.h> excludes some necessary typedefs when _DECC_V4_SOURCE is defined
+ */
 #include <types.h>
-# ifndef __PID_T
-# define __PID_T
+#ifndef __PID_T
+#define __PID_T
 typedef __pid_t pid_t;
-# endif
-# ifndef __UID_T
-# define __UID_T
+#endif
+#ifndef __UID_T
+#define __UID_T
 typedef __uid_t uid_t;
-# endif
-# ifndef __GID_T
-# define __GID_T
+#endif
+#ifndef __GID_T
+#define __GID_T
 typedef __gid_t gid_t;
-# endif
-# ifndef __MODE_T
-# define __MODE_T
+#endif
+#ifndef __MODE_T
+#define __MODE_T
 typedef __mode_t mode_t;
-# endif
-#endif /* _DECC_V4_SOURCE */
+#endif
+#endif /* _DECC_V4_SOURCE */
 
 #include <time.h>
-#if 0  /* <file.h> is missing for old gcc versions; skip it to save time */
+#if 0 /* <file.h> is missing for old gcc versions; skip it to save time */
 #include <file.h>
-#else  /* values needed from missing include file */
-# define O_RDONLY 0
-# define O_WRONLY 1
-# define O_RDWR   2
-# define O_CREAT 0x200
-# define O_TRUNC 0x400
+#else /* values needed from missing include file */
+#define O_RDONLY 0
+#define O_WRONLY 1
+#define O_RDWR 2
+#define O_CREAT 0x200
+#define O_TRUNC 0x400
 #endif
 
 #define tgetch vms_getchar
 
 #include "system.h"
 
-#define index  strchr
-#define rindex strrchr
+#define index strchr
+#define rindex strrchr
 
 /* Use the high quality random number routines. */
 #if defined(RANDOM)
-#define Rand() random()
+#define Rand() random()
 /* VMS V7 adds these entry points to DECC$SHR; stick with the nethack-supplied
-   code to avoid having to deal with version-specific conditionalized builds */
-#define random         nh_random
-#define srandom                nh_srandom
-#define initstate      nh_initstate
-#define setstate       nh_setstate
+   code to avoid having to deal with version-specific conditionalized builds
+   */
+#define random nh_random
+#define srandom nh_srandom
+#define initstate nh_initstate
+#define setstate nh_setstate
 #else
-#define Rand() rand()
+#define Rand() rand()
 #endif
 
 #ifndef __GNUC__
-# ifndef bcopy
-#define bcopy(s,d,n)   memcpy((d),(s),(n))     /* vaxcrtl */
-# endif
+#ifndef bcopy
+#define bcopy(s, d, n) memcpy((d), (s), (n)) /* vaxcrtl */
+#endif
 #endif
-#define abort()                vms_abort()             /* vmsmisc.c */
-#define creat(f,m)     vms_creat(f,m)          /* vmsfiles.c */
-#define exit(sts)      vms_exit(sts)           /* vmsmisc.c */
-#define getuid()       vms_getuid()            /* vmsunix.c */
-#define link(f1,f2)    vms_link(f1,f2)         /* vmsfiles.c */
-#define open(f,k,m)    vms_open(f,k,m)         /* vmsfiles.c */
-#define fopen(f,m)     vms_fopen(f,m)          /* vmsfiles.c */
+#define abort() vms_abort()             /* vmsmisc.c */
+#define creat(f, m) vms_creat(f, m)     /* vmsfiles.c */
+#define exit(sts) vms_exit(sts)         /* vmsmisc.c */
+#define getuid() vms_getuid()           /* vmsunix.c */
+#define link(f1, f2) vms_link(f1, f2)   /* vmsfiles.c */
+#define open(f, k, m) vms_open(f, k, m) /* vmsfiles.c */
+#define fopen(f, m) vms_fopen(f, m)     /* vmsfiles.c */
 /* #define unlink(f0)  vms_unlink(f0)          /* vmsfiles.c */
 #ifdef VERYOLD_VMS
-#define unlink(f0)     delete(f0)              /* vaxcrtl */
+#define unlink(f0) delete (f0) /* vaxcrtl */
 #else
-#define unlink(f0)     remove(f0)              /* vaxcrtl, decc$shr */
+#define unlink(f0) remove(f0) /* vaxcrtl, decc$shr */
 #endif
-#define C$$TRANSLATE(n) c__translate(n)                /* vmsfiles.c */
+#define C$$TRANSLATE(n) c__translate(n) /* vmsfiles.c */
 
 /* VMS global names are case insensitive... */
 #define An vms_an
@@ -284,9 +286,9 @@ typedef __mode_t mode_t;
 
 /* used in several files which don't #include "extern.h" */
 extern void FDECL(vms_exit, (int));
-extern int FDECL(vms_open, (const char *,int,unsigned));
-extern FILE *FDECL(vms_fopen, (const char *,const char *));
-char *FDECL(vms_basename, (const char *));     /* vmsfiles.c */
+extern int FDECL(vms_open, (const char *, int, unsigned));
+extern FILE *FDECL(vms_fopen, (const char *, const char *));
+char *FDECL(vms_basename, (const char *)); /* vmsfiles.c */
 
-#endif /* VMSCONF_H */
-#endif /* VMS */
+#endif /* VMSCONF_H */
+#endif /* VMS */
index e046ea4fd67f422f852cfd0e429eed99c3fe1376..a3da7bdd5974b8d05f42975fcf43ef565702ef31 100644 (file)
@@ -6,41 +6,42 @@
 #ifndef WCECONF_H
 #define WCECONF_H
 
-#pragma warning(disable:4142) /* benign redefinition of type */
+#pragma warning(disable : 4142) /* benign redefinition of type */
 
-#define WIN32_LEAN_AND_MEAN            // Exclude rarely-used stuff from Windows headers
+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
 
 #include <windows.h>
 
 /* Detect the targe device */
-#if defined(WIN32_PLATFORM_PSPC) 
-#      if _WIN32_WCE >= 300
-#              define WIN_CE_POCKETPC
-#      else
-#              define WIN_CE_PS2xx
-#      endif
+#if defined(WIN32_PLATFORM_PSPC)
+#if _WIN32_WCE >= 300
+#define WIN_CE_POCKETPC
+#else
+#define WIN_CE_PS2xx
+#endif
 #elif defined(WIN32_PLATFORM_HPCPRO)
-#      define WIN_CE_HPCPRO
+#define WIN_CE_HPCPRO
 #elif defined(WIN32_PLATFORM_WFSP)
-#      define WIN_CE_SMARTPHONE
+#define WIN_CE_SMARTPHONE
 #else
-#      error "Unsupported Windows CE platform"
+#error "Unsupported Windows CE platform"
 #endif
 
 /* #define SHELL       /* nt use of pcsys routines caused a hang */
 
-#define RANDOM         /* have Berkeley random(3) */
-#define TEXTCOLOR      /* Color text */
+#define RANDOM    /* have Berkeley random(3) */
+#define TEXTCOLOR /* Color text */
 
-#define EXEPATH                        /* Allow .exe location to be used as HACKDIR */
-#define TRADITIONAL_GLYPHMAP   /* Store glyph mappings at level change time */
+#define EXEPATH              /* Allow .exe location to be used as HACKDIR */
+#define TRADITIONAL_GLYPHMAP /* Store glyph mappings at level change time */
 
-#define PC_LOCKING             /* Prevent overwrites of aborted or in-progress games */
-                               /* without first receiving confirmation. */
+#define PC_LOCKING /* Prevent overwrites of aborted or in-progress games */
+/* without first receiving confirmation. */
 
-#define SELF_RECOVER           /* Allow the game itself to recover from an aborted game */
+#define SELF_RECOVER /* Allow the game itself to recover from an aborted \
+                        game */
 
-#define NOTSTDC                /* no strerror() */
+#define NOTSTDC /* no strerror() */
 
 #define USER_SOUNDS
 
  *  The remaining code shouldn't need modification.
  * -----------------------------------------------------------------
  */
-/* #define SHORT_FILENAMES     /* All NT filesystems support long names now */
+/* #define SHORT_FILENAMES     /* All NT filesystems support long names now
+ */
 
 #ifdef MICRO
-#undef MICRO                   /* never define this! */
+#undef MICRO /* never define this! */
 #endif
 
-#define NOCWD_ASSUMPTIONS      /* Always define this. There are assumptions that
-                                   it is defined for WIN32.
-                                  Allow paths to be specified for HACKDIR,
-                                  LEVELDIR, SAVEDIR, BONESDIR, DATADIR,
-                                  SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
+#define NOCWD_ASSUMPTIONS /* Always define this. There are assumptions that \
+                             it is defined for WIN32.                       \
+                             Allow paths to be specified for HACKDIR,       \
+                             LEVELDIR, SAVEDIR, BONESDIR, DATADIR,          \
+                             SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
 #define NO_TERMS
 #define ASCIIGRAPH
 
 #undef OPTIONS_USED
 #endif
 #ifdef MSWIN_GRAPHICS
-#define OPTIONS_USED   "guioptions"
+#define OPTIONS_USED "guioptions"
 #else
-#define OPTIONS_USED   "ttyoptions"
+#define OPTIONS_USED "ttyoptions"
 #endif
 #define OPTIONS_FILE OPTIONS_USED
 
-#define PORT_HELP      "porthelp"
+#define PORT_HELP "porthelp"
 
-#define SAFERHANGUP /* Define SAFERHANGUP to delay hangup processing
-                     * until the main command loop. 'safer' because it
-                     * avoids certain cheats and also avoids losing
-                     * objects being thrown when the hangup occurs.
+#define SAFERHANGUP /* Define SAFERHANGUP to delay hangup processing   \
+                     * until the main command loop. 'safer' because it \
+                     * avoids certain cheats and also avoids losing    \
+                     * objects being thrown when the hangup occurs.    \
                      */
 
 #if defined(WIN_CE_POCKETPC)
-#      define PORT_CE_PLATFORM "Pocket PC"
+#define PORT_CE_PLATFORM "Pocket PC"
 #elif defined(WIN_CE_PS2xx)
-#      define PORT_CE_PLATFORM "Palm-size PC 2.11"
+#define PORT_CE_PLATFORM "Palm-size PC 2.11"
 #elif defined(WIN_CE_HPCPRO)
-#      define PORT_CE_PLATFORM "H/PC Pro 2.11"
+#define PORT_CE_PLATFORM "H/PC Pro 2.11"
 #elif defined(WIN_CE_SMARTPHONE)
-#      define PORT_CE_PLATFORM "Smartphone 2002"
+#define PORT_CE_PLATFORM "Smartphone 2002"
 #endif
 
 #if defined(ARM)
-#      define PORT_CE_CPU "ARM"
+#define PORT_CE_CPU "ARM"
 #elif defined(PPC)
-#      define PORT_CE_CPU "PPC"
+#define PORT_CE_CPU "PPC"
 #elif defined(ALPHA)
-#      define PORT_CE_CPU "ALPHA"
+#define PORT_CE_CPU "ALPHA"
 #elif defined(SH3)
-#      define PORT_CE_CPU "SH3"
+#define PORT_CE_CPU "SH3"
 #elif defined(SH4)
-#      define PORT_CE_CPU "SH4"
+#define PORT_CE_CPU "SH4"
 #elif defined(MIPS)
-#      define PORT_CE_CPU "MIPS"
+#define PORT_CE_CPU "MIPS"
 #elif defined(X86) || defined(_X86_)
-#      define PORT_CE_CPU "X86"
+#define PORT_CE_CPU "X86"
 #else
-#      error Only ARM, PPC, ALPHA, SH3, SH4, MIPS and X86 supported
+#error Only ARM, PPC, ALPHA, SH3, SH4, MIPS and X86 supported
 #endif
 
-#define RUNTIME_PORT_ID        /* trigger run-time port identification since
-                          Makedefs is bootstrapped on a cross-platform. */
+#define RUNTIME_PORT_ID /* trigger run-time port identification since \
+                           Makedefs is bootstrapped on a cross-platform. */
 
-#include <string.h>    /* Provides prototypes of strncmpi(), etc.     */
+#include <string.h> /* Provides prototypes of strncmpi(), etc.     */
 #ifdef STRNCMPI
-#define strncmpi(a,b,c) _strnicmp(a,b,c)
+#define strncmpi(a, b, c) _strnicmp(a, b, c)
 #endif
 
 #ifdef STRCMPI
-#define strcmpi(a,b) _stricmp(a,b)
-#define stricmp(a,b) _stricmp(a,b)
+#define strcmpi(a, b) _stricmp(a, b)
+#define stricmp(a, b) _stricmp(a, b)
 #endif
 
 #include <stdlib.h>
 
-#define PATHLEN                BUFSZ /* maximum pathlength */
-#define FILENAME       BUFSZ /* maximum filename length (conservative) */
+#define PATHLEN BUFSZ  /* maximum pathlength */
+#define FILENAME BUFSZ /* maximum filename length (conservative) */
 
 #if defined(_MAX_PATH) && defined(_MAX_FNAME)
-# if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)
+#if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)
 #undef PATHLEN
 #undef FILENAME
-#define PATHLEN                _MAX_PATH
-#define FILENAME       _MAX_FNAME
-# endif
+#define PATHLEN _MAX_PATH
+#define FILENAME _MAX_FNAME
+#endif
 #endif
-
 
 #define NO_SIGNAL
-#define index  strchr
-#define rindex strrchr
+#define index strchr
+#define rindex strrchr
 #define USE_STDARG
 #ifdef RANDOM
 /* Use the high quality random number routines. */
-#define Rand() random()
+#define Rand() random()
 #else
-#define Rand() rand()
+#define Rand() rand()
 #endif
 
-#define FCMASK 0660    /* file creation mask */
-#define regularize     nt_regularize
+#define FCMASK 0660 /* file creation mask */
+#define regularize nt_regularize
 #define HLOCK "NHPERM"
 
 #ifndef M
-#define M(c)           ((char) (0x80 | (c)))
+#define M(c) ((char) (0x80 | (c)))
 /* #define M(c)                ((c) - 128) */
 #endif
 
 #ifndef C
-#define C(c)           (0x1f & (c))
+#define C(c) (0x1f & (c))
 #endif
 
 #if defined(DLB)
-#define FILENAME_CMP  _stricmp               /* case insensitive */
+#define FILENAME_CMP _stricmp /* case insensitive */
 #endif
 
 #if 0
@@ -174,7 +175,7 @@ extern const char *alllevels, *allbones;
 extern char hackdir[];
 #define ABORT C('a')
 #define getuid() 1
-#define getlogin() ((char *)0)
+#define getlogin() ((char *) 0)
 extern void NDECL(win32_abort);
 #ifdef WIN32CON
 extern void FDECL(nttty_preference_update, (const char *));
@@ -182,60 +183,50 @@ extern void NDECL(toggle_mouse_support);
 #endif
 
 #ifndef alloca
-#define ALLOCA_HACK    /* used in util/panic.c */
+#define ALLOCA_HACK /* used in util/panic.c */
 #endif
 
 #ifdef _MSC_VER
 #if 0
-#pragma warning(disable:4018)  /* signed/unsigned mismatch */
-#pragma warning(disable:4305)  /* init, conv from 'const int' to 'char' */
+#pragma warning(disable : 4018) /* signed/unsigned mismatch */
+#pragma warning(disable : 4305) /* init, conv from 'const int' to 'char' */
 #endif
-#pragma warning(disable:4761)  /* integral size mismatch in arg; conv supp*/
+#pragma warning(disable : 4761) /* integral size mismatch in arg; conv \
+                                   supp*/
 #ifdef YYPREFIX
-#pragma warning(disable:4102)  /* unreferenced label */
+#pragma warning(disable : 4102) /* unreferenced label */
 #endif
 #endif
 
 /* UNICODE stuff */
-#define NHSTR_BUFSIZE  255
+#define NHSTR_BUFSIZE 255
 #ifdef UNICODE
-       #define NH_W2A(w, a, cb)     ( WideCharToMultiByte(                              \
-                                                                                                  CP_ACP,                      \
-                                                                                                  0,                           \
-                                                                                                  (w),                           \
-                                                                                                  -1,                          \
-                                                                                                  (a),                           \
-                                                                                                  (cb),                          \
-                                                                                                  NULL,                        \
-                                                                                                  NULL), (a) )
-
-       #define NH_A2W(a, w, cb)     ( MultiByteToWideChar(                              \
-                                                                                                  CP_ACP,                      \
-                                                                                                  0,                           \
-                                                                                                  (a),                           \
-                                                                                                  -1,                          \
-                                                                                                  (w),                           \
-                                                                                                  (cb)), (w) )
+#define NH_W2A(w, a, cb) \
+    (WideCharToMultiByte(CP_ACP, 0, (w), -1, (a), (cb), NULL, NULL), (a))
+
+#define NH_A2W(a, w, cb) \
+    (MultiByteToWideChar(CP_ACP, 0, (a), -1, (w), (cb)), (w))
 #else
-       #define NH_W2A(w, a, cb)     (strncpy((a), (w), (cb)))
+#define NH_W2A(w, a, cb) (strncpy((a), (w), (cb)))
 
-       #define NH_A2W(a, w, cb)     (strncpy((w), (a), (cb)))
+#define NH_A2W(a, w, cb) (strncpy((w), (a), (cb)))
 #endif
 
 extern int FDECL(set_win32_option, (const char *, const char *));
 
-/* 
- * 3.4.3 addition - Stuff to help the user with some common, yet significant errors 
+/*
+ * 3.4.3 addition - Stuff to help the user with some common, yet significant
+ * errors
  * Let's make it NOP for now
  */
-#define interject_assistance(_1,_2,_3,_4)
+#define interject_assistance(_1, _2, _3, _4)
 #define interject(_1)
 
 /* Missing definitions */
-extern int             mswin_have_input();
-#define kbhit  mswin_have_input
+extern int mswin_have_input();
+#define kbhit mswin_have_input
 
-#define getenv(a) ((char*)NULL)
+#define getenv(a) ((char *) NULL)
 
 /* __stdio.h__ */
 #define perror(a)
@@ -244,35 +235,35 @@ extern int isatty(int);
 
 /* __time.h___ */
 #ifndef _TIME_T_DEFINED
-typedef __int64 time_t;        /* time value */
-#define _TIME_T_DEFINED     /* avoid multiple def's of time_t */
+typedef __int64 time_t; /* time value */
+#define _TIME_T_DEFINED /* avoid multiple def's of time_t */
 #endif
 
 #ifndef _TM_DEFINED
 struct tm {
-        int tm_sec;     /* seconds after the minute - [0,59] */
-        int tm_min;     /* minutes after the hour - [0,59] */
-        int tm_hour;    /* hours since midnight - [0,23] */
-        int tm_mday;    /* day of the month - [1,31] */
-        int tm_mon;     /* months since January - [0,11] */
-        int tm_year;    /* years since 1900 */
-        int tm_wday;    /* days since Sunday - [0,6] */
-        int tm_yday;    /* days since January 1 - [0,365] */
-        int tm_isdst;   /* daylight savings time flag - - NOT IMPLEMENTED */
-        };
+    int tm_sec;   /* seconds after the minute - [0,59] */
+    int tm_min;   /* minutes after the hour - [0,59] */
+    int tm_hour;  /* hours since midnight - [0,23] */
+    int tm_mday;  /* day of the month - [1,31] */
+    int tm_mon;   /* months since January - [0,11] */
+    int tm_year;  /* years since 1900 */
+    int tm_wday;  /* days since Sunday - [0,6] */
+    int tm_yday;  /* days since January 1 - [0,365] */
+    int tm_isdst; /* daylight savings time flag - - NOT IMPLEMENTED */
+};
 #define _TM_DEFINED
 #endif
 
-extern struct tm * __cdecl localtime(const time_t *);
+extern struct tm *__cdecl localtime(const time_t *);
 extern time_t __cdecl time(time_t *);
-extern time_t __cdecl mktime(struct tm * tb);
+extern time_t __cdecl mktime(struct tm *tb);
 
 /* __stdio.h__ */
 #ifndef BUFSIZ
 #define BUFSIZ 255
 #endif
 
-#define rewind(stream) (void)fseek( stream, 0L, SEEK_SET )
+#define rewind(stream) (void) fseek(stream, 0L, SEEK_SET)
 
 /* __io.h__ */
 typedef long off_t;
@@ -293,63 +284,64 @@ extern int __cdecl access(const char *, int);
 #endif
 #define DeleteFile(a) unlink(a)
 
-int chdir( const char *dirname );
-extern char *getcwd( char *buffer, int maxlen );
+int chdir(const char *dirname);
+extern char *getcwd(char *buffer, int maxlen);
 
 /* __stdlib.h__ */
-#define abort()  (void)TerminateProcess(GetCurrentProcess(), 0)
+#define abort() (void) TerminateProcess(GetCurrentProcess(), 0)
 #ifndef strdup
 #define strdup _strdup
 #endif
 
 /* sys/stat.h */
-#define S_IWRITE  GENERIC_WRITE
-#define S_IREAD   GENERIC_READ
-
+#define S_IWRITE GENERIC_WRITE
+#define S_IREAD GENERIC_READ
 
 /* CE 2.xx is missing even more stuff */
 #if defined(WIN_CE_PS2xx) || defined(WIN32_PLATFORM_HPCPRO)
-#define ZeroMemory(p, s)         memset((p), 0, (s))
+#define ZeroMemory(p, s) memset((p), 0, (s))
 
 extern int __cdecl isupper(int c);
 extern int __cdecl isdigit(int c);
 extern int __cdecl isspace(int c);
 extern int __cdecl isprint(int c);
 
-extern char* __cdecl _strdup(const char* s);
-extern char* __cdecl strrchr( const char *string, int c );
-extern int   __cdecl _stricmp(const char* a, const char* b);
-
-extern FILE * __cdecl fopen(const char* filename, const char *mode);
-extern int    __cdecl fscanf(FILE *f , const char *format, ...);
-extern int __cdecl fprintf(FILE *f , const char *format, ...);
-extern int    __cdecl vfprintf(FILE* f, const char *format, va_list args);
-extern int __cdecl fgetc(FILE * f);
-extern char * __cdecl fgets(char *s, int size, FILE *f);
-extern int    __cdecl printf(const char *format, ...);
-extern int    __cdecl vprintf(const char *format, va_list args);
-extern int    __cdecl puts(const char * s);
-extern FILE*  __cdecl _getstdfilex(int desc);
-extern int __cdecl fclose(FILE * f);
+extern char *__cdecl _strdup(const char *s);
+extern char *__cdecl strrchr(const char *string, int c);
+extern int __cdecl _stricmp(const char *a, const char *b);
+
+extern FILE *__cdecl fopen(const char *filename, const char *mode);
+extern int __cdecl fscanf(FILE *f, const char *format, ...);
+extern int __cdecl fprintf(FILE *f, const char *format, ...);
+extern int __cdecl vfprintf(FILE *f, const char *format, va_list args);
+extern int __cdecl fgetc(FILE *f);
+extern char *__cdecl fgets(char *s, int size, FILE *f);
+extern int __cdecl printf(const char *format, ...);
+extern int __cdecl vprintf(const char *format, va_list args);
+extern int __cdecl puts(const char *s);
+extern FILE *__cdecl _getstdfilex(int desc);
+extern int __cdecl fclose(FILE *f);
 extern size_t __cdecl fread(void *p, size_t size, size_t count, FILE *f);
-extern size_t __cdecl fwrite(const void *p, size_t size, size_t count, FILE * f);
-extern int    __cdecl fflush(FILE *f);
-extern int    __cdecl feof(FILE *f);
-extern int    __cdecl fseek(FILE *f, long offset, int from);
-extern long   __cdecl ftell(FILE * f);
+extern size_t __cdecl fwrite(const void *p, size_t size, size_t count,
+                             FILE *f);
+extern int __cdecl fflush(FILE *f);
+extern int __cdecl feof(FILE *f);
+extern int __cdecl fseek(FILE *f, long offset, int from);
+extern long __cdecl ftell(FILE *f);
 
 #endif
 
 /* ARM - the processor; avoids conflict with ARM in hack.h */
-# ifdef ARM
-# undef ARM
-# endif
+#ifdef ARM
+#undef ARM
+#endif
 
 /* leave - Windows CE defines leave as part of exception handling (__leave)
-   It confilicts with existing sources and since we don't use exceptions it is safe 
+   It confilicts with existing sources and since we don't use exceptions it is
+   safe
    to undefine it */
-# ifdef leave
-# undef leave
-# endif
+#ifdef leave
+#undef leave
+#endif
 
 #endif /* WCECONF_H */
index 2ac8e0abf86dbddb1c075057abc9a6b47a262746..f3cd666027b36288e7c0bafc0d6acd6342dec635 100644 (file)
@@ -14,7 +14,7 @@ E struct window_procs Gnome_procs;
 
 #undef E
 
-#define NHW_WORN       6
+#define NHW_WORN 6
 extern winid WIN_WORN;
 
 #endif /* WINGNOME_H */
index cc7183878277654f99360f197c7eeacc291375e1..1ba2d036619c750b7b2fae98e1d6d8e05beaeb54 100644 (file)
 #if defined(BOS) || defined(NHSTDC)
 #define DIMENSION_P int
 #else
-# ifdef WIDENED_PROTOTYPES
+#ifdef WIDENED_PROTOTYPES
 #define DIMENSION_P unsigned int
-# else
+#else
 #define DIMENSION_P Dimension
-# endif
+#endif
 #endif
 
 /*
  * Generic text buffer.
  */
-#define START_SIZE 512 /* starting text buffer size */
+#define START_SIZE 512 /* starting text buffer size */
 struct text_buffer {
     char *text;
-    int  text_size;
-    int  text_last;
-    int  num_lines;
+    int text_size;
+    int text_last;
+    int num_lines;
 };
 
-
 /*
  * Information specific to a map window.
  */
 struct text_map_info_t {
-    unsigned char   text[ROWNO][COLNO]; /* Actual displayed screen. */
+    unsigned char text[ROWNO][COLNO]; /* Actual displayed screen. */
 #ifdef TEXTCOLOR
-    unsigned char   colors[ROWNO][COLNO];      /* Color of each character. */
-    GC             color_gcs[CLR_MAX],         /* GC for each color */
-                   inv_color_gcs[CLR_MAX];     /* GC for each inverse color */
-#define copy_gc     color_gcs[NO_COLOR]
+    unsigned char colors[ROWNO][COLNO]; /* Color of each character. */
+    GC color_gcs[CLR_MAX],              /* GC for each color */
+        inv_color_gcs[CLR_MAX];         /* GC for each inverse color */
+#define copy_gc color_gcs[NO_COLOR]
 #define inv_copy_gc inv_color_gcs[NO_COLOR]
 #else
-    GC             copy_gc,                    /* Drawing GC */
-                   inv_copy_gc;                /* Inverse drawing GC */
+    GC copy_gc,      /* Drawing GC */
+        inv_copy_gc; /* Inverse drawing GC */
 #endif
 
-    int                    square_width,       /* Saved font information so      */
-                   square_height,      /*   we can calculate the correct */
-                   square_ascent,      /*   placement of changes.        */
-                   square_lbearing;
+    int square_width,  /* Saved font information so      */
+        square_height, /*   we can calculate the correct */
+        square_ascent, /*   placement of changes.        */
+        square_lbearing;
 };
 
 struct tile_map_info_t {
-    unsigned short glyphs[ROWNO][COLNO];       /* Saved glyph numbers. */
-    GC white_gc;
-    GC black_gc;
-    unsigned long image_width;                 /* dimensions of tile image */
+    unsigned short glyphs[ROWNO][COLNO]; /* Saved glyph numbers. */
+    GC white_gc;
+    GC black_gc;
+    unsigned long image_width; /* dimensions of tile image */
     unsigned long image_height;
 
-    int                  square_width,         /* Saved tile information so      */
-                 square_height,        /*   we can calculate the correct */
-                 square_ascent,        /*   placement of changes.        */
-                 square_lbearing;
+    int square_width,  /* Saved tile information so      */
+        square_height, /*   we can calculate the correct */
+        square_ascent, /*   placement of changes.        */
+        square_lbearing;
 };
 
 struct map_info_t {
-    Dimension      viewport_width,     /* Saved viewport size, so we can */
-                   viewport_height;    /*   clip to cursor on a resize.  */
-    unsigned char   t_start[ROWNO],    /* Starting column for new info. */
-                   t_stop[ROWNO];      /* Ending column for new info. */
+    Dimension viewport_width,     /* Saved viewport size, so we can */
+        viewport_height;          /*   clip to cursor on a resize.  */
+    unsigned char t_start[ROWNO], /* Starting column for new info. */
+        t_stop[ROWNO];            /* Ending column for new info. */
 
-    boolean        is_tile;            /* true if currently using tiles */
+    boolean is_tile; /* true if currently using tiles */
     struct text_map_info_t text_map;
     struct tile_map_info_t tile_map;
 };
 
-
 /*
  * Information specific to a message window.
  */
 struct line_element {
     struct line_element *next;
-    char *line;                        /* char buffer */
-    int  buf_length;           /* length of buffer */
-    int  str_length;           /* length of string in buffer */
+    char *line;     /* char buffer */
+    int buf_length; /* length of buffer */
+    int str_length; /* length of string in buffer */
 };
 
 struct mesg_info_t {
-    XFontStruct *fs;           /* Font for the window. */
-    int                num_lines;      /* line count */
-    struct line_element *head; /* head of circular line queue */
-    struct line_element *line_here;/* current drawn line position */
-    struct line_element *last_pause;/* point to the line after the prev */
-                               /*     bottom of screen                 */
-    struct line_element *last_pause_head;/* pointer to head of previous */
-                               /* turn                                 */
-    GC         gc;             /* GC for text drawing */
-    int                char_width,     /* Saved font information so we can  */
-               char_height,    /*   calculate the correct placement */
-               char_ascent,    /*   of changes.                     */
-               char_lbearing;
-    Dimension  viewport_width, /* Saved viewport size, so we can adjust */
-               viewport_height;/*   the slider on a resize.             */
-    Boolean    dirty;          /* Lines have been added to the window. */
+    XFontStruct *fs;                 /* Font for the window. */
+    int num_lines;                   /* line count */
+    struct line_element *head;       /* head of circular line queue */
+    struct line_element *line_here;  /* current drawn line position */
+    struct line_element *last_pause; /* point to the line after the prev */
+    /*     bottom of screen                    */
+    struct line_element *last_pause_head; /* pointer to head of previous */
+    /* turn                                    */
+    GC gc;           /* GC for text drawing */
+    int char_width,  /* Saved font information so we can  */
+        char_height, /*   calculate the correct placement */
+        char_ascent, /*   of changes.               */
+        char_lbearing;
+    Dimension viewport_width, /* Saved viewport size, so we can adjust */
+        viewport_height;      /*   the slider on a resize.              */
+    Boolean dirty;            /* Lines have been added to the window. */
 };
 
 /*
  * Information specific to a "text" status window.
  */
 struct status_info_t {
-    struct text_buffer text;   /* Just a text buffer. */
+    struct text_buffer text; /* Just a text buffer. */
 };
 
 /*
@@ -125,43 +123,43 @@ struct status_info_t {
  */
 typedef struct x11_mi {
     struct x11_mi *next;
-    anything identifier;       /* Opaque type to identify this selection */
-    long pick_count;           /* specific selection count; -1 if none */
-    char *str;                 /* The text of the item. */
-    int  attr;                 /* Attribute for the line. */
-    boolean selected;          /* Been selected? */
-    char selector;             /* Char used to select this entry. */
-    char gselector;            /* Group selector. */
+    anything identifier; /* Opaque type to identify this selection */
+    long pick_count;     /* specific selection count; -1 if none */
+    char *str;           /* The text of the item. */
+    int attr;            /* Attribute for the line. */
+    boolean selected;    /* Been selected? */
+    char selector;       /* Char used to select this entry. */
+    char gselector;      /* Group selector. */
 } x11_menu_item;
 
 struct menu {
-    x11_menu_item *base;       /* Starting pointer for item list. */
-    x11_menu_item *last;       /* End pointer for item list. */
-    const char   *query;       /* Query string. */
-    const char   *gacc;        /* Group accelerators. */
-    int                  count;        /* Number of strings. */
-    String       *list_pointer;/* String list. */
-    Boolean      *sensitive;   /* Active list. */
-    char         curr_selector;/* Next keyboard accelerator to assign, */
-                               /*   if 0, then we're out.              */
+    x11_menu_item *base;  /* Starting pointer for item list. */
+    x11_menu_item *last;  /* End pointer for item list. */
+    const char *query;    /* Query string. */
+    const char *gacc;     /* Group accelerators. */
+    int count;            /* Number of strings. */
+    String *list_pointer; /* String list. */
+    Boolean *sensitive;   /* Active list. */
+    char curr_selector;   /* Next keyboard accelerator to assign, */
+    /*   if 0, then we're out.         */
 };
 
 struct menu_info_t {
-    struct menu curr_menu;     /* Menu being displayed. */
-    struct menu new_menu;      /* New menu being built. */
-
-    XFontStruct *fs;           /* Font for the window. */
-    long menu_count;           /* number entered by user */
-    Dimension line_height;     /* Total height of a line of text. */
-    Dimension internal_height; /* Internal height between widget & border */
-    Dimension internal_width;  /* Internal width between widget & border */
-    short how;                 /* Menu mode PICK_NONE, PICK_ONE, PICK_ANY */
-    boolean valid_widgets;     /* TRUE if widgets have been created. */
-    boolean is_menu;           /* Has been confirmed to being a menu window. */
-    boolean is_active;         /* TRUE when waiting for user input. */
-    boolean is_up;             /* TRUE when window is popped-up. */
-    boolean cancelled; /* Menu has been explicitly cancelled. */
-    boolean counting;  /* true when menu_count has a valid value */
+    struct menu curr_menu; /* Menu being displayed. */
+    struct menu new_menu;  /* New menu being built. */
+
+    XFontStruct *fs;           /* Font for the window. */
+    long menu_count;           /* number entered by user */
+    Dimension line_height;     /* Total height of a line of text. */
+    Dimension internal_height; /* Internal height between widget & border */
+    Dimension internal_width;  /* Internal width between widget & border */
+    short how;                 /* Menu mode PICK_NONE, PICK_ONE, PICK_ANY */
+    boolean valid_widgets;     /* TRUE if widgets have been created. */
+    boolean is_menu;   /* Has been confirmed to being a menu window. */
+    boolean is_active; /* TRUE when waiting for user input. */
+    boolean is_up;     /* TRUE when window is popped-up. */
+    boolean cancelled; /* Menu has been explicitly cancelled. */
+    boolean counting;  /* true when menu_count has a valid value */
 };
 
 /*
@@ -169,96 +167,93 @@ struct menu_info_t {
  */
 struct text_info_t {
     struct text_buffer text;
-    XFontStruct *fs;           /* Font for the text window. */
-    int                max_width;      /* Width of widest line so far. */
-    int                extra_width,    /* Sum of left and right border widths. */
-               extra_height;   /* Sum of top and bottom border widths. */
-    boolean    blocked;        /*  */
-    boolean    destroy_on_ack; /* Destroy this window when acknowleged. */
+    XFontStruct *fs;        /* Font for the text window. */
+    int max_width;          /* Width of widest line so far. */
+    int extra_width,        /* Sum of left and right border widths. */
+        extra_height;       /* Sum of top and bottom border widths. */
+    boolean blocked;        /*  */
+    boolean destroy_on_ack; /* Destroy this window when acknowleged. */
 #ifdef GRAPHIC_TOMBSTONE
-    boolean    is_rip;         /* This window needs a tombstone. */
+    boolean is_rip; /* This window needs a tombstone. */
 #endif
 };
 
-
 /*
  * Basic window structure.
  */
 struct xwindow {
-    int       type;            /* type of nethack window */
-    Widget    popup;           /* direct parent of widget w or viewport */
-    Widget    w;               /* the widget that does things */
-    Dimension pixel_width;     /* window size, in pixels */
+    int type;              /* type of nethack window */
+    Widget popup;          /* direct parent of widget w or viewport */
+    Widget w;              /* the widget that does things */
+    Dimension pixel_width; /* window size, in pixels */
     Dimension pixel_height;
-    int       prevx, cursx;    /* Cursor position, only used by    */
-    int       prevy, cursy;    /*   map and "plain" status windows.*/
+    int prevx, cursx; /* Cursor position, only used by    */
+    int prevy, cursy; /*   map and "plain" status windows.*/
 
     union {
-       struct map_info_t    *Map_info;     /* map window info */
-       struct mesg_info_t   *Mesg_info;    /* message window info */
-       struct status_info_t *Status_info;  /* status window info */
-       struct menu_info_t   *Menu_info;    /* menu window info */
-       struct text_info_t   *Text_info;    /* menu window info */
+        struct map_info_t *Map_info;       /* map window info */
+        struct mesg_info_t *Mesg_info;     /* message window info */
+        struct status_info_t *Status_info; /* status window info */
+        struct menu_info_t *Menu_info;     /* menu window info */
+        struct text_info_t *Text_info;     /* menu window info */
     } Win_info;
-    boolean    keep_window;
+    boolean keep_window;
 };
 
 /* Defines to use for the window information union. */
-#define map_information    Win_info.Map_info
-#define mesg_information   Win_info.Mesg_info
+#define map_information Win_info.Map_info
+#define mesg_information Win_info.Mesg_info
 #define status_information Win_info.Status_info
-#define menu_information   Win_info.Menu_info
-#define text_information   Win_info.Text_info
+#define menu_information Win_info.Menu_info
+#define text_information Win_info.Text_info
 
+#define MAX_WINDOWS 20 /* max number of open windows */
 
-#define MAX_WINDOWS 20         /* max number of open windows */
+#define NHW_NONE 0 /* Unallocated window type.  Must be        */
+/* different from any other NHW_* type. */
 
-#define NHW_NONE 0             /* Unallocated window type.  Must be    */
-                               /* different from any other NHW_* type. */
+#define NO_CLICK 0 /* No click occured on the map window. Must */
+/* be different than CLICK_1 and CLICK_2.   */
 
-#define NO_CLICK 0             /* No click occured on the map window. Must */
-                               /* be different than CLICK_1 and CLICK_2.   */
+#define DEFAULT_MESSAGE_WIDTH 60 /* width in chars of the message window */
 
-#define DEFAULT_MESSAGE_WIDTH 60/* width in chars of the message window */
+#define DISPLAY_FILE_SIZE 35 /* Max number of lines in the default     */
+/* file display window.                        */
 
-#define DISPLAY_FILE_SIZE 35   /* Max number of lines in the default   */
-                               /* file display window.                 */
-
-#define MAX_KEY_STRING 64      /* String size for converting a keypress */
-                               /* event into a character(s)             */
+#define MAX_KEY_STRING 64 /* String size for converting a keypress */
+/* event into a character(s)            */
 
 #define DEFAULT_LINES_DISPLAYED 12 /* # of lines displayed message window */
-#define MAX_HISTORY 60         /* max history saved on message window */
-
+#define MAX_HISTORY 60             /* max history saved on message window */
 
 /* Window variables (winX.c). */
 E struct xwindow window_list[MAX_WINDOWS];
-E XtAppContext  app_context;           /* context of application */
-E Widget        toplevel;              /* toplevel widget */
-E Atom          wm_delete_window;      /* delete window protocol */
-E boolean       exit_x_event;          /* exit condition for event loop */
-#define EXIT_ON_KEY_PRESS          0   /* valid values for exit_x_event */
+E XtAppContext app_context; /* context of application */
+E Widget toplevel;          /* toplevel widget */
+E Atom wm_delete_window;    /* delete window protocol */
+E boolean exit_x_event;     /* exit condition for event loop */
+#define EXIT_ON_KEY_PRESS 0 /* valid values for exit_x_event */
 #define EXIT_ON_KEY_OR_BUTTON_PRESS 1
-#define EXIT_ON_EXIT               2
-#define EXIT_ON_SENT_EVENT         3
+#define EXIT_ON_EXIT 2
+#define EXIT_ON_SENT_EVENT 3
 E int click_x, click_y, click_button, updated_inventory;
 
 typedef struct {
     Boolean slow;
     Boolean autofocus;
     Boolean message_line;
-    Boolean double_tile_size;  /* double tile size */
-    String  tile_file;         /* name of file to open for tiles */
-    String  icon;              /* name of desired icon */
-    int     message_lines;     /* number of lines to attempt to show */
-    String  pet_mark_bitmap;   /* X11 bitmap file used to mark pets */
-    Pixel   pet_mark_color;    /* color of pet mark */
+    Boolean double_tile_size; /* double tile size */
+    String tile_file;         /* name of file to open for tiles */
+    String icon;              /* name of desired icon */
+    int message_lines;        /* number of lines to attempt to show */
+    String pet_mark_bitmap;   /* X11 bitmap file used to mark pets */
+    Pixel pet_mark_color;     /* color of pet mark */
 #ifdef GRAPHIC_TOMBSTONE
-    String  tombstone;         /* name of XPM file for tombstone */
-    int     tombtext_x;                /* x-coord of center of first tombstone text */
-    int     tombtext_y;                /* y-coord of center of first tombstone text */
-    int     tombtext_dx;       /* x-displacement between tombstone line */
-    int     tombtext_dy;       /* y-displacement between tombstone line */
+    String tombstone; /* name of XPM file for tombstone */
+    int tombtext_x;   /* x-coord of center of first tombstone text */
+    int tombtext_y;   /* y-coord of center of first tombstone text */
+    int tombtext_dx;  /* x-displacement between tombstone line */
+    int tombtext_dy;  /* y-displacement between tombstone line */
 #endif
 } AppResources;
 
@@ -268,108 +263,112 @@ E void (*input_func)();
 extern struct window_procs X11_procs;
 
 /* Check for an invalid window id. */
-#define check_winid(window)                                    \
-       if ((window) < 0 || (window) >= MAX_WINDOWS) {          \
-           panic("illegal windid [%d] in %s at line %d",       \
-               window, __FILE__, __LINE__);                    \
-       }
-
+#define check_winid(window)                                             \
+    if ((window) < 0 || (window) >= MAX_WINDOWS) {                      \
+        panic("illegal windid [%d] in %s at line %d", window, __FILE__, \
+              __LINE__);                                                \
+    }
 
 /* ### dialogs.c ### */
-E Widget FDECL(CreateDialog, (Widget, String, XtCallbackProc, XtCallbackProc));
-E void FDECL(SetDialogPrompt,(Widget, String));
-E String FDECL(GetDialogResponse,(Widget));
-E void FDECL(SetDialogResponse,(Widget, String));
-E void FDECL(positionpopup,(Widget,BOOLEAN_P));
+E Widget
+FDECL(CreateDialog, (Widget, String, XtCallbackProc, XtCallbackProc));
+E void FDECL(SetDialogPrompt, (Widget, String));
+E String FDECL(GetDialogResponse, (Widget));
+E void FDECL(SetDialogResponse, (Widget, String));
+E void FDECL(positionpopup, (Widget, BOOLEAN_P));
 
 /* ### winX.c ### */
-E struct xwindow *FDECL(find_widget,(Widget));
-E Boolean FDECL(nhApproxColor,(Screen*, Colormap, char*, XColor*));
-E Dimension FDECL(nhFontHeight,(Widget));
-E char FDECL(key_event_to_char,(XKeyEvent*));
-E void FDECL(msgkey, (Widget, XtPointer, XEvent*));
+E struct xwindow *FDECL(find_widget, (Widget));
+E Boolean FDECL(nhApproxColor, (Screen *, Colormap, char *, XColor *));
+E Dimension FDECL(nhFontHeight, (Widget));
+E char FDECL(key_event_to_char, (XKeyEvent *));
+E void FDECL(msgkey, (Widget, XtPointer, XEvent *));
 E void FDECL(nh_XtPopup, (Widget, int, Widget));
 E void FDECL(nh_XtPopdown, (Widget));
 E void FDECL(win_X11_init, (int));
-E void FDECL(nh_keyscroll, (Widget, XEvent*, String*, Cardinal*));
+E void FDECL(nh_keyscroll, (Widget, XEvent *, String *, Cardinal *));
 
 /* ### winmesg.c ### */
-E void FDECL(set_message_slider, (struct xwindow*));
-E void FDECL(create_message_window,(struct xwindow*, BOOLEAN_P, Widget));
-E void FDECL(destroy_message_window,(struct xwindow*));
-E void FDECL(display_message_window, (struct xwindow*));
-E void FDECL(append_message,(struct xwindow*, const char*));
-E void FDECL(set_last_pause, (struct xwindow*));
+E void FDECL(set_message_slider, (struct xwindow *));
+E void FDECL(create_message_window, (struct xwindow *, BOOLEAN_P, Widget));
+E void FDECL(destroy_message_window, (struct xwindow *));
+E void FDECL(display_message_window, (struct xwindow *));
+E void FDECL(append_message, (struct xwindow *, const char *));
+E void FDECL(set_last_pause, (struct xwindow *));
 
 /* ### winmap.c ### */
 E void NDECL(post_process_tiles);
-E void FDECL(check_cursor_visibility,(struct xwindow*));
-E void FDECL(display_map_window,(struct xwindow*));
-E void FDECL(clear_map_window,(struct xwindow*));
-E void FDECL(map_input, (Widget, XEvent*, String*, Cardinal*));
-E void FDECL(set_map_size,(struct xwindow*, DIMENSION_P, DIMENSION_P));
-E void FDECL(create_map_window,(struct xwindow*, BOOLEAN_P, Widget));
-E void FDECL(destroy_map_window,(struct xwindow*));
-E int  FDECL(x_event,(int));
+E void FDECL(check_cursor_visibility, (struct xwindow *));
+E void FDECL(display_map_window, (struct xwindow *));
+E void FDECL(clear_map_window, (struct xwindow *));
+E void FDECL(map_input, (Widget, XEvent *, String *, Cardinal *));
+E void FDECL(set_map_size, (struct xwindow *, DIMENSION_P, DIMENSION_P));
+E void FDECL(create_map_window, (struct xwindow *, BOOLEAN_P, Widget));
+E void FDECL(destroy_map_window, (struct xwindow *));
+E int FDECL(x_event, (int));
 
 /* ### winmenu.c ### */
-E void FDECL(menu_delete, (Widget, XEvent*, String*, Cardinal*));
-E void FDECL(menu_key,(Widget, XEvent*, String*, Cardinal*));
-E void FDECL(create_menu_window,(struct xwindow*));
-E void FDECL(destroy_menu_window,(struct xwindow*));
+E void FDECL(menu_delete, (Widget, XEvent *, String *, Cardinal *));
+E void FDECL(menu_key, (Widget, XEvent *, String *, Cardinal *));
+E void FDECL(create_menu_window, (struct xwindow *));
+E void FDECL(destroy_menu_window, (struct xwindow *));
 
 /* ### winmisc.c ### */
-E void FDECL(ps_key,(Widget, XEvent*, String*, Cardinal*)); /* player selection action */
-E void FDECL(race_key,(Widget, XEvent*, String*, Cardinal*)); /* race selection action */
-E void FDECL(gend_key, (Widget,XEvent *,String *,Cardinal *)); /* gender */
-E void FDECL(algn_key, (Widget,XEvent *,String *,Cardinal *)); /* alignment */
-E void FDECL(ec_delete, (Widget, XEvent*, String*, Cardinal*));
-E void FDECL(ec_key,(Widget, XEvent*, String*, Cardinal*)); /* extended command action */
+E void FDECL(ps_key, (Widget, XEvent *, String *,
+                      Cardinal *)); /* player selection action */
+E void FDECL(race_key, (Widget, XEvent *, String *,
+                        Cardinal *)); /* race selection action */
+E void FDECL(gend_key, (Widget, XEvent *, String *, Cardinal *)); /* gender */
+E void FDECL(algn_key,
+             (Widget, XEvent *, String *, Cardinal *)); /* alignment */
+E void FDECL(ec_delete, (Widget, XEvent *, String *, Cardinal *));
+E void FDECL(ec_key, (Widget, XEvent *, String *,
+                      Cardinal *)); /* extended command action */
 
 /* ### winstatus.c ### */
-E void FDECL(create_status_window,(struct xwindow*, BOOLEAN_P, Widget));
-E void FDECL(destroy_status_window,(struct xwindow*));
-E void FDECL(adjust_status,(struct xwindow*, const char*));
+E void FDECL(create_status_window, (struct xwindow *, BOOLEAN_P, Widget));
+E void FDECL(destroy_status_window, (struct xwindow *));
+E void FDECL(adjust_status, (struct xwindow *, const char *));
 E void NDECL(null_out_status);
 E void NDECL(check_turn_events);
 
 /* ### wintext.c ### */
-E void FDECL(delete_text, (Widget, XEvent*, String*, Cardinal*));
-E void FDECL(dismiss_text,(Widget, XEvent*, String*, Cardinal*));
-E void FDECL(key_dismiss_text,(Widget, XEvent*, String*, Cardinal*));
+E void FDECL(delete_text, (Widget, XEvent *, String *, Cardinal *));
+E void FDECL(dismiss_text, (Widget, XEvent *, String *, Cardinal *));
+E void FDECL(key_dismiss_text, (Widget, XEvent *, String *, Cardinal *));
 #ifdef GRAPHIC_TOMBSTONE
-E void FDECL(rip_dismiss_text,(Widget, XEvent*, String*, Cardinal*));
+E void FDECL(rip_dismiss_text, (Widget, XEvent *, String *, Cardinal *));
 #endif
-E void FDECL(add_to_text_window,(struct xwindow*, int, const char*));
-E void FDECL(display_text_window,(struct xwindow*, BOOLEAN_P));
-E void FDECL(create_text_window,(struct xwindow*));
-E void FDECL(destroy_text_window,(struct xwindow*));
-E void FDECL(clear_text_window,(struct xwindow*));
-E void FDECL(append_text_buffer,(struct text_buffer*, const char*, BOOLEAN_P)); /* text buffer routines */
-E void FDECL(init_text_buffer,(struct text_buffer*));
-E void FDECL(clear_text_buffer,(struct text_buffer*));
-E void FDECL(free_text_buffer,(struct text_buffer*));
+E void FDECL(add_to_text_window, (struct xwindow *, int, const char *));
+E void FDECL(display_text_window, (struct xwindow *, BOOLEAN_P));
+E void FDECL(create_text_window, (struct xwindow *));
+E void FDECL(destroy_text_window, (struct xwindow *));
+E void FDECL(clear_text_window, (struct xwindow *));
+E void FDECL(append_text_buffer, (struct text_buffer *, const char *,
+                                  BOOLEAN_P)); /* text buffer routines */
+E void FDECL(init_text_buffer, (struct text_buffer *));
+E void FDECL(clear_text_buffer, (struct text_buffer *));
+E void FDECL(free_text_buffer, (struct text_buffer *));
 #ifdef GRAPHIC_TOMBSTONE
-E void FDECL(calculate_rip_text, (int,time_t));
+E void FDECL(calculate_rip_text, (int, time_t));
 #endif
 
-
 /* ### winval.c ### */
-E Widget FDECL(create_value,(Widget, const char*));
-E void  FDECL(set_name,(Widget, const char*));
-E void  FDECL(set_name_width,(Widget, int));
-E int   FDECL(get_name_width,(Widget));
-E void  FDECL(set_value,(Widget, const char*));
-E void  FDECL(set_value_width,(Widget, int));
-E int   FDECL(get_value_width,(Widget));
-E void  FDECL(hilight_value,(Widget));
-E void  FDECL(swap_fg_bg,(Widget));
+E Widget FDECL(create_value, (Widget, const char *));
+E void FDECL(set_name, (Widget, const char *));
+E void FDECL(set_name_width, (Widget, int));
+E int FDECL(get_name_width, (Widget));
+E void FDECL(set_value, (Widget, const char *));
+E void FDECL(set_value_width, (Widget, int));
+E int FDECL(get_value_width, (Widget));
+E void FDECL(hilight_value, (Widget));
+E void FDECL(swap_fg_bg, (Widget));
 
 /* external declarations */
 E void FDECL(X11_init_nhwindows, (int *, char **));
 E void NDECL(X11_player_selection);
 E void NDECL(X11_askname);
-E void NDECL(X11_get_nh_event) ;
+E void NDECL(X11_get_nh_event);
 E void FDECL(X11_exit_nhwindows, (const char *));
 E void FDECL(X11_suspend_nhwindows, (const char *));
 E void NDECL(X11_resume_nhwindows);
@@ -377,12 +376,12 @@ E winid FDECL(X11_create_nhwindow, (int));
 E void FDECL(X11_clear_nhwindow, (winid));
 E void FDECL(X11_display_nhwindow, (winid, BOOLEAN_P));
 E void FDECL(X11_destroy_nhwindow, (winid));
-E void FDECL(X11_curs, (winid,int,int));
+E void FDECL(X11_curs, (winid, int, int));
 E void FDECL(X11_putstr, (winid, int, const char *));
 E void FDECL(X11_display_file, (const char *, BOOLEAN_P));
 E void FDECL(X11_start_menu, (winid));
-E void FDECL(X11_add_menu, (winid,int,const ANY_P *,
-                       CHAR_P, CHAR_P, int, const char *, BOOLEAN_P));
+E void FDECL(X11_add_menu, (winid, int, const ANY_P *, CHAR_P, CHAR_P, int,
+                            const char *, BOOLEAN_P));
 E void FDECL(X11_end_menu, (winid, const char *));
 E int FDECL(X11_select_menu, (winid, int, MENU_ITEM_P **));
 E void NDECL(X11_update_inventory);
@@ -391,7 +390,7 @@ E void NDECL(X11_wait_synch);
 #ifdef CLIPPING
 E void FDECL(X11_cliparound, (int, int));
 #endif
-E void FDECL(X11_print_glyph, (winid,XCHAR_P,XCHAR_P,int));
+E void FDECL(X11_print_glyph, (winid, XCHAR_P, XCHAR_P, int));
 E void FDECL(X11_raw_print, (const char *));
 E void FDECL(X11_raw_print_bold, (const char *));
 E int NDECL(X11_nhgetch);
@@ -399,7 +398,7 @@ E int FDECL(X11_nh_poskey, (int *, int *, int *));
 E void NDECL(X11_nhbell);
 E int NDECL(X11_doprev_message);
 E char FDECL(X11_yn_function, (const char *, const char *, CHAR_P));
-E void FDECL(X11_getlin, (const char *,char *));
+E void FDECL(X11_getlin, (const char *, char *));
 E int NDECL(X11_get_ext_cmd);
 E void FDECL(X11_number_pad, (int));
 E void NDECL(X11_delay_output);
@@ -409,9 +408,9 @@ E void NDECL(X11_start_screen);
 E void NDECL(X11_end_screen);
 
 #ifdef GRAPHIC_TOMBSTONE
-E void FDECL(X11_outrip, (winid,int,time_t));
+E void FDECL(X11_outrip, (winid, int, time_t));
 #else
-E void FDECL(genl_outrip, (winid,int,time_t));
+E void FDECL(genl_outrip, (winid, int, time_t));
 #endif
 
 E void FDECL(X11_preference_update, (const char *));
index ee3ea875b63a1e8bec64932eaf143250541c3434..752d027cf68ec480e84d5a3b98c156c0c1745c68 100644 (file)
@@ -8,7 +8,7 @@
 #ifndef WINAMI_H
 #define WINAMI_H
 
-#define MAXWINTAGS     5
+#define MAXWINTAGS 5
 
 /*
  * Information specific to a menu window.  First a structure for each
  */
 typedef struct amii_mi {
     struct amii_mi *next;
-    anything identifier;       /* Opaque type to identify this selection */
-    long glyph;                        /* Glyph for menu item */
-    long count;                 /* Object count */
-    char selected;             /* Been selected? */
-    char selector;             /* Char used to select this entry. */
-    char gselector;            /* Group selector */
-    char canselect;            /* Can user select this entry. */
-    char attr;                 /* Attribute for the line. */
-    char *str;                 /* The text of the item. */
+    anything identifier; /* Opaque type to identify this selection */
+    long glyph;          /* Glyph for menu item */
+    long count;          /* Object count */
+    char selected;       /* Been selected? */
+    char selector;       /* Char used to select this entry. */
+    char gselector;      /* Group selector */
+    char canselect;      /* Can user select this entry. */
+    char attr;           /* Attribute for the line. */
+    char *str;           /* The text of the item. */
 } amii_menu_item;
 
-struct amii_menu
-{
-    amii_menu_item *items;     /* Starting pointer for item list. */
-    amii_menu_item *last;      /* End pointer for item list. */
-    const char    *query;      /* Query string */
-    int                    count;      /* Number of strings. */
-    char           chr;        /* Character to assign for accelerator */
+struct amii_menu {
+    amii_menu_item *items; /* Starting pointer for item list. */
+    amii_menu_item *last;  /* End pointer for item list. */
+    const char *query;     /* Query string */
+    int count;             /* Number of strings. */
+    char chr;              /* Character to assign for accelerator */
 };
 
 /* descriptor for Amiga Intuition-based windows.  If we decide to cope with
  * tty-style windows also, then things will need to change. */
 /* per-window data */
 struct amii_WinDesc {
-    xchar type;                        /* type of window */
+    xchar type; /* type of window */
     struct amii_menu menu;
-    boolean active;            /* true if window is active */
-    boolean wasup;             /* true if menu/text window was already open */
-    short disprows;            /* Rows displayed so far (used for paging in message win) */
-    xchar offx, offy;          /* offset from topleft of display */
-    short vwx, vwy, vcx, vcy;  /* View cursor location */
-    short rows, cols;          /* dimensions */
-    short curx, cury;          /* current cursor position */
-    short maxrow, maxcol;      /* the maximum size used -- for INVEN wins */
-                               /* maxcol is also used by WIN_MESSAGE for */
-                               /* tracking the ^P command */
-    char **data;               /* window data [row][column] */
-    menu_item *mi;             /* Menu information */
-    char *resp;                        /* valid menu responses (for NHW_INVEN) */
-    char *canresp;             /* cancel responses; 1st is the return value */
-    char *morestr;             /* string to display instead of default */
-/* amiga stuff */
-    struct Window *win;                /* Intuition window pointer */
-#ifdef INTUI_NEW_LOOK
-    struct ExtNewWindow *newwin;       /* NewWindow alloc'd */
+    boolean active; /* true if window is active */
+    boolean wasup;  /* true if menu/text window was already open */
+    short
+        disprows; /* Rows displayed so far (used for paging in message win) */
+    xchar offx, offy;         /* offset from topleft of display */
+    short vwx, vwy, vcx, vcy; /* View cursor location */
+    short rows, cols;         /* dimensions */
+    short curx, cury;         /* current cursor position */
+    short maxrow, maxcol;     /* the maximum size used -- for INVEN wins */
+    /* maxcol is also used by WIN_MESSAGE for */
+    /* tracking the ^P command */
+    char **data;        /* window data [row][column] */
+    menu_item *mi;      /* Menu information */
+    char *resp;         /* valid menu responses (for NHW_INVEN) */
+    char *canresp;      /* cancel responses; 1st is the return value */
+    char *morestr;      /* string to display instead of default */
+                        /* amiga stuff */
+    struct Window *win; /* Intuition window pointer */
+#ifdef INTUI_NEW_LOOK
+    struct ExtNewWindow *newwin; /* NewWindow alloc'd */
 #else
-    struct NewWindow *newwin;  /* ExtNewWindow alloc'd */
+    struct NewWindow *newwin; /* ExtNewWindow alloc'd */
 #endif
-#ifdef INTUI_NEW_LOOK
-    struct TagItem wintags[ MAXWINTAGS ];/* Tag items for this window */
+#ifdef INTUI_NEW_LOOK
+    struct TagItem wintags[MAXWINTAGS]; /* Tag items for this window */
 #else
-    long wintags[ MAXWINTAGS*2 ];
+    long wintags[MAXWINTAGS * 2];
 #endif
-    void *hook;                        /* Hook structure pointer for tiles version */
-#define FLMAP_INGLYPH  1       /* An NHW_MAP window is in glyph mode */
-#define FLMAP_CURSUP   2       /* An NHW_MAP window has the cursor displayed */
-#define FLMAP_SKIP     4
-#define FLMSG_FIRST    1       /* First message in the NHW_MESSAGE window for this turn */
+    void *hook;         /* Hook structure pointer for tiles version */
+#define FLMAP_INGLYPH 1 /* An NHW_MAP window is in glyph mode */
+#define FLMAP_CURSUP 2  /* An NHW_MAP window has the cursor displayed */
+#define FLMAP_SKIP 4
+#define FLMSG_FIRST \
+    1 /* First message in the NHW_MESSAGE window for this turn */
     long wflags;
-    short cursx, cursy;                /* Where the cursor is displayed at */
-    short curs_apen,           /* Color cursor is displayed in */
-         curs_bpen;
+    short cursx, cursy; /* Where the cursor is displayed at */
+    short curs_apen,    /* Color cursor is displayed in */
+        curs_bpen;
 };
 
 /* descriptor for intuition-based displays -- all the per-display data */
 /* this is a generic thing - think of it as Screen level */
 
 struct amii_DisplayDesc {
-/* we need this for Screen size (which will vary with display mode) */
-    uchar rows, cols;          /* width & height of display in text units */
-    short xpix, ypix;          /* width and height of display in pixels */
-    int toplin;                        /* flag for topl stuff */
-    int rawprint;              /* number of raw_printed lines since synch */
-    winid lastwin;             /* last window used for I/O */
+    /* we need this for Screen size (which will vary with display mode) */
+    uchar rows, cols; /* width & height of display in text units */
+    short xpix, ypix; /* width and height of display in pixels */
+    int toplin;       /* flag for topl stuff */
+    int rawprint;     /* number of raw_printed lines since synch */
+    winid lastwin;    /* last window used for I/O */
 };
 
 typedef enum {
-    WEUNK, WEKEY, WEMOUSE, WEMENU,
+    WEUNK,
+    WEKEY,
+    WEMOUSE,
+    WEMENU,
 } WETYPE;
 
-typedef struct WEVENT
-{
+typedef struct WEVENT {
     WETYPE type;
     union {
-       int key;
-       struct {
-           int x, y;
-           int qual;
-       } mouse;
-       long menucode;
+        int key;
+        struct {
+            int x, y;
+            int qual;
+        } mouse;
+        long menucode;
     } un;
 } WEVENT;
 
-#define MAXWIN 20              /* maximum number of windows, cop-out */
+#define MAXWIN 20 /* maximum number of windows, cop-out */
 
 /* port specific variable declarations */
 extern winid WIN_BASE;
 extern winid WIN_OVER;
-#define NHW_BASE       6
-#define NHW_OVER       7               /* overview window */
-
+#define NHW_BASE 6
+#define NHW_OVER 7 /* overview window */
 
 extern struct amii_WinDesc *amii_wins[MAXWIN + 1];
 
-extern struct amii_DisplayDesc *amiIDisplay;   /* the Amiga Intuition descriptor */
+extern struct amii_DisplayDesc
+    *amiIDisplay; /* the Amiga Intuition descriptor */
 
-extern char morc;              /* last character typed to xwaitforspace */
-extern char defmorestr[];      /* default --more-- prompt */
+extern char morc;         /* last character typed to xwaitforspace */
+extern char defmorestr[]; /* default --more-- prompt */
 
 #endif /* WINAMI_H */
index 29f516f4bf2fbdec423bd05add8ba4f6b4bad9e6..8d88c5bd8de2009ee8856b1f09e483871bfbf05f 100644 (file)
@@ -9,18 +9,18 @@
 #define E extern
 
 /* menu structure */
-typedef struct Gmi{
-       struct Gmi *Gmi_next;
-       int Gmi_glyph;
-       long Gmi_identifier;
-       char Gmi_accelerator, Gmi_groupacc;
-       int Gmi_attr;
-       char *Gmi_str;
-       long Gmi_count;
-       int Gmi_selected;
+typedef struct Gmi {
+    struct Gmi *Gmi_next;
+    int Gmi_glyph;
+    long Gmi_identifier;
+    char Gmi_accelerator, Gmi_groupacc;
+    int Gmi_attr;
+    char *Gmi_str;
+    long Gmi_count;
+    int Gmi_selected;
 } Gem_menu_item;
 
-#define MAXWIN 20              /* maximum number of windows, cop-out */
+#define MAXWIN 20 /* maximum number of windows, cop-out */
 
 extern struct window_procs Gem_procs;
 
@@ -34,14 +34,14 @@ E void FDECL(g_putch, (int));
 E void FDECL(win_Gem_init, (int));
 E int NDECL(mar_gem_init);
 E char NDECL(mar_ask_class);
-E char * NDECL(mar_ask_name);
+E char *NDECL(mar_ask_name);
 E int FDECL(mar_create_window, (int));
 E void FDECL(mar_destroy_nhwindow, (int));
 E void FDECL(mar_print_glyph, (int, int, int, int));
 E void FDECL(mar_print_line, (int, int, int, char *));
 E void FDECL(mar_set_message, (char *, char *, char *));
 E Gem_menu_item *NDECL(mar_hol_inv);
-E void FDECL(mar_set_menu_type,(int));
+E void FDECL(mar_set_menu_type, (int));
 E void NDECL(mar_reverse_menu);
 E void FDECL(mar_set_menu_title, (const char *));
 E void NDECL(mar_set_accelerators);
@@ -58,7 +58,7 @@ E void NDECL(mar_map_curs_weiter);
 E void FDECL(Gem_init_nhwindows, (int *, char **));
 E void NDECL(Gem_player_selection);
 E void NDECL(Gem_askname);
-E void NDECL(Gem_get_nh_event) ;
+E void NDECL(Gem_get_nh_event);
 E void FDECL(Gem_exit_nhwindows, (const char *));
 E void FDECL(Gem_suspend_nhwindows, (const char *));
 E void NDECL(Gem_resume_nhwindows);
@@ -67,15 +67,15 @@ E void FDECL(Gem_clear_nhwindow, (winid));
 E void FDECL(Gem_display_nhwindow, (winid, BOOLEAN_P));
 E void FDECL(Gem_dismiss_nhwindow, (winid));
 E void FDECL(Gem_destroy_nhwindow, (winid));
-E void FDECL(Gem_curs, (winid,int,int));
+E void FDECL(Gem_curs, (winid, int, int));
 E void FDECL(Gem_putstr, (winid, int, const char *));
 E void FDECL(Gem_display_file, (const char *, BOOLEAN_P));
 E void FDECL(Gem_start_menu, (winid));
-E void FDECL(Gem_add_menu, (winid,int,const ANY_P *,
-                       CHAR_P,CHAR_P,int,const char *, BOOLEAN_P));
+E void FDECL(Gem_add_menu, (winid, int, const ANY_P *, CHAR_P, CHAR_P, int,
+                            const char *, BOOLEAN_P));
 E void FDECL(Gem_end_menu, (winid, const char *));
 E int FDECL(Gem_select_menu, (winid, int, MENU_ITEM_P **));
-E char FDECL(Gem_message_menu, (CHAR_P,int,const char *));
+E char FDECL(Gem_message_menu, (CHAR_P, int, const char *));
 E void NDECL(Gem_update_inventory);
 E void NDECL(Gem_mark_synch);
 E void NDECL(Gem_wait_synch);
@@ -85,7 +85,7 @@ E void FDECL(Gem_cliparound, (int, int));
 #ifdef POSITIONBAR
 E void FDECL(Gem_update_positionbar, (char *));
 #endif
-E void FDECL(Gem_print_glyph, (winid,XCHAR_P,XCHAR_P,int));
+E void FDECL(Gem_print_glyph, (winid, XCHAR_P, XCHAR_P, int));
 E void FDECL(Gem_raw_print, (const char *));
 E void FDECL(Gem_raw_print_bold, (const char *));
 E int NDECL(Gem_nhgetch);
@@ -93,20 +93,20 @@ E int FDECL(Gem_nh_poskey, (int *, int *, int *));
 E void NDECL(Gem_nhbell);
 E int NDECL(Gem_doprev_message);
 E char FDECL(Gem_yn_function, (const char *, const char *, CHAR_P));
-E void FDECL(Gem_getlin, (const char *,char *));
+E void FDECL(Gem_getlin, (const char *, char *));
 E int NDECL(Gem_get_ext_cmd);
 E void FDECL(Gem_number_pad, (int));
 E void NDECL(Gem_delay_output);
 #ifdef CHANGE_COLOR
-E void FDECL(Gem_change_color,(int color,long rgb,int reverse));
-E char * NDECL(Gem_get_color_string);
+E void FDECL(Gem_change_color, (int color, long rgb, int reverse));
+E char *NDECL(Gem_get_color_string);
 #endif
 
 /* other defs that really should go away (they're tty specific) */
 E void NDECL(Gem_start_screen);
 E void NDECL(Gem_end_screen);
 
-E void FDECL(genl_outrip, (winid,int,time_t));
+E void FDECL(genl_outrip, (winid, int, time_t));
 
 #undef E
 
index 4e334d6302910c8dbc1e0106e314e29200adf60b..32e4156a282b62431d3dcd3dbb73c314f409bd25 100644 (file)
 
 /* NB: this MUST match chain_procs below */
 struct window_procs {
-    const char *name;          /* Names should start with [a-z].  Names must
-                                * not start with '-'.  Names starting with
-                                * '+' are reserved for processors. */
-    unsigned long wincap;      /* window port capability options supported */
-    unsigned long wincap2;     /* additional window port capability options supported */
+    const char *name;     /* Names should start with [a-z].  Names must
+                           * not start with '-'.  Names starting with
+                           * '+' are reserved for processors. */
+    unsigned long wincap; /* window port capability options supported */
+    unsigned long
+        wincap2; /* additional window port capability options supported */
     void FDECL((*win_init_nhwindows), (int *, char **));
     void NDECL((*win_player_selection));
     void NDECL((*win_askname));
-    void NDECL((*win_get_nh_event)) ;
+    void NDECL((*win_get_nh_event));
     void FDECL((*win_exit_nhwindows), (const char *));
     void FDECL((*win_suspend_nhwindows), (const char *));
     void NDECL((*win_resume_nhwindows));
@@ -26,16 +27,16 @@ struct window_procs {
     void FDECL((*win_clear_nhwindow), (winid));
     void FDECL((*win_display_nhwindow), (winid, BOOLEAN_P));
     void FDECL((*win_destroy_nhwindow), (winid));
-    void FDECL((*win_curs), (winid,int,int));
+    void FDECL((*win_curs), (winid, int, int));
     void FDECL((*win_putstr), (winid, int, const char *));
     void FDECL((*win_putmixed), (winid, int, const char *));
     void FDECL((*win_display_file), (const char *, BOOLEAN_P));
     void FDECL((*win_start_menu), (winid));
-    void FDECL((*win_add_menu), (winid,int,const ANY_P *,
-               CHAR_P,CHAR_P,int,const char *, BOOLEAN_P));
+    void FDECL((*win_add_menu), (winid, int, const ANY_P *, CHAR_P, CHAR_P,
+                                 int, const char *, BOOLEAN_P));
     void FDECL((*win_end_menu), (winid, const char *));
     int FDECL((*win_select_menu), (winid, int, MENU_ITEM_P **));
-    char FDECL((*win_message_menu), (CHAR_P,int,const char *));
+    char FDECL((*win_message_menu), (CHAR_P, int, const char *));
     void NDECL((*win_update_inventory));
     void NDECL((*win_mark_synch));
     void NDECL((*win_wait_synch));
@@ -45,7 +46,7 @@ struct window_procs {
 #ifdef POSITIONBAR
     void FDECL((*win_update_positionbar), (char *));
 #endif
-    void FDECL((*win_print_glyph), (winid,XCHAR_P,XCHAR_P,int));
+    void FDECL((*win_print_glyph), (winid, XCHAR_P, XCHAR_P, int));
     void FDECL((*win_raw_print), (const char *));
     void FDECL((*win_raw_print_bold), (const char *));
     int NDECL((*win_nhgetch));
@@ -53,44 +54,45 @@ struct window_procs {
     void NDECL((*win_nhbell));
     int NDECL((*win_doprev_message));
     char FDECL((*win_yn_function), (const char *, const char *, CHAR_P));
-    void FDECL((*win_getlin), (const char *,char *));
+    void FDECL((*win_getlin), (const char *, char *));
     int NDECL((*win_get_ext_cmd));
     void FDECL((*win_number_pad), (int));
     void NDECL((*win_delay_output));
 #ifdef CHANGE_COLOR
-    void FDECL((*win_change_color), (int,long,int));
+    void FDECL((*win_change_color), (int, long, int));
 #ifdef MAC
     void FDECL((*win_change_background), (int));
     short FDECL((*win_set_font_name), (winid, char *));
 #endif
-    char * NDECL((*win_get_color_string));
+    char *NDECL((*win_get_color_string));
 #endif
 
     /* other defs that really should go away (they're tty specific) */
     void NDECL((*win_start_screen));
     void NDECL((*win_end_screen));
 
-    void FDECL((*win_outrip), (winid,int,time_t));
+    void FDECL((*win_outrip), (winid, int, time_t));
     void FDECL((*win_preference_update), (const char *));
-    char * FDECL((*win_getmsghistory), (BOOLEAN_P));
-    void FDECL((*win_putmsghistory), (const char *,BOOLEAN_P));
+    char *FDECL((*win_getmsghistory), (BOOLEAN_P));
+    void FDECL((*win_putmsghistory), (const char *, BOOLEAN_P));
 #ifdef STATUS_VIA_WINDOWPORT
     void NDECL((*win_status_init));
     void NDECL((*win_status_finish));
-    void FDECL((*win_status_enablefield), (int,const char *,const char *,BOOLEAN_P));
-    void FDECL((*win_status_update), (int,genericptr_t,int,int));
-# ifdef STATUS_HILITES
-    void FDECL((*win_status_threshold), (int,int,anything,int,int,int));
-# endif
+    void FDECL((*win_status_enablefield),
+               (int, const char *, const char *, BOOLEAN_P));
+    void FDECL((*win_status_update), (int, genericptr_t, int, int));
+#ifdef STATUS_HILITES
+    void FDECL((*win_status_threshold), (int, int, anything, int, int, int));
+#endif
 #endif
     boolean NDECL((*win_can_suspend));
 };
 
 extern
 #ifdef HANGUPHANDLING
-volatile
+    volatile
 #endif
-NEARDATA struct window_procs windowprocs;
+    NEARDATA struct window_procs windowprocs;
 
 /*
  * If you wish to only support one window system and not use procedure
@@ -176,132 +178,155 @@ NEARDATA struct window_procs windowprocs;
  * Window port preference capability bits.
  * Some day this might be better in its own wincap.h file.
  */
-#define WC_COLOR        0x01L          /* 01 Port can display things in color       */
-#define WC_HILITE_PET   0x02L          /* 02 supports hilite pet                    */
-#define WC_ASCII_MAP    0x04L          /* 03 supports an ascii map                  */
-#define WC_TILED_MAP    0x08L          /* 04 supports a tiled map                   */
-#define WC_PRELOAD_TILES 0x10L         /* 05 supports pre-loading tiles             */
-#define WC_TILE_WIDTH   0x20L          /* 06 prefer this width of tile              */
-#define WC_TILE_HEIGHT  0x40L          /* 07 prefer this height of tile             */
-#define WC_TILE_FILE    0x80L          /* 08 alternative tile file name             */
-#define WC_INVERSE      0x100L         /* 09 Port supports inverse video            */
-#define WC_ALIGN_MESSAGE 0x200L                /* 10 supports message alignmt top|b|l|r     */
-#define WC_ALIGN_STATUS         0x400L         /* 11 supports status alignmt top|b|l|r      */
-#define WC_VARY_MSGCOUNT 0x800L                /* 12 supports varying message window        */
-#define WC_FONT_MAP     0x1000L        /* 13 supports specification of map win font */
-#define WC_FONT_MESSAGE         0x2000L        /* 14 supports specification of msg win font */
-#define WC_FONT_STATUS  0x4000L        /* 15 supports specification of sts win font */
-#define WC_FONT_MENU    0x8000L        /* 16 supports specification of mnu win font */
-#define WC_FONT_TEXT    0x10000L       /* 17 supports specification of txt win font */
-#define WC_FONTSIZ_MAP  0x20000L       /* 18 supports specification of map win font */
-#define WC_FONTSIZ_MESSAGE 0x40000L    /* 19 supports specification of msg win font */
-#define WC_FONTSIZ_STATUS 0x80000L     /* 20 supports specification of sts win font */
-#define WC_FONTSIZ_MENU         0x100000L      /* 21 supports specification of mnu win font */
-#define WC_FONTSIZ_TEXT         0x200000L      /* 22 supports specification of txt win font */
-#define WC_SCROLL_MARGIN 0x400000L     /* 23 supports setting scroll margin for map */
-#define WC_SPLASH_SCREEN 0x800000L     /* 24 supports display of splash screen      */
-#define WC_POPUP_DIALOG         0x1000000L     /* 25 supports queries in pop dialogs        */
-#define WC_SCROLL_AMOUNT 0x2000000L    /* 26 scroll this amount at scroll margin    */
-#define WC_EIGHT_BIT_IN         0x4000000L     /* 27 8-bit character input                  */
-#define WC_PERM_INVENT  0x8000000L     /* 28 8-bit character input                  */
-#define WC_MAP_MODE     0x10000000L    /* 29 map_mode option                        */
-#define WC_WINDOWCOLORS  0x20000000L   /* 30 background color for message window    */
-#define WC_PLAYER_SELECTION  0x40000000L /* 31 background color for message window    */
+#define WC_COLOR 0x01L      /* 01 Port can display things in color       */
+#define WC_HILITE_PET 0x02L /* 02 supports hilite pet                    */
+#define WC_ASCII_MAP 0x04L  /* 03 supports an ascii map                  */
+#define WC_TILED_MAP 0x08L  /* 04 supports a tiled map                   */
+#define WC_PRELOAD_TILES 0x10L /* 05 supports pre-loading tiles */
+#define WC_TILE_WIDTH 0x20L  /* 06 prefer this width of tile              */
+#define WC_TILE_HEIGHT 0x40L /* 07 prefer this height of tile             */
+#define WC_TILE_FILE 0x80L   /* 08 alternative tile file name             */
+#define WC_INVERSE 0x100L    /* 09 Port supports inverse video            */
+#define WC_ALIGN_MESSAGE \
+    0x200L /* 10 supports message alignmt top|b|l|r     */
+#define WC_ALIGN_STATUS 0x400L /* 11 supports status alignmt top|b|l|r */
+#define WC_VARY_MSGCOUNT \
+    0x800L                  /* 12 supports varying message window        */
+#define WC_FONT_MAP 0x1000L /* 13 supports specification of map win font */
+#define WC_FONT_MESSAGE \
+    0x2000L                    /* 14 supports specification of msg win font */
+#define WC_FONT_STATUS 0x4000L /* 15 supports specification of sts win font \
+                                  */
+#define WC_FONT_MENU 0x8000L   /* 16 supports specification of mnu win font */
+#define WC_FONT_TEXT 0x10000L  /* 17 supports specification of txt win font \
+                                  */
+#define WC_FONTSIZ_MAP \
+    0x20000L /* 18 supports specification of map win font */
+#define WC_FONTSIZ_MESSAGE \
+    0x40000L /* 19 supports specification of msg win font */
+#define WC_FONTSIZ_STATUS \
+    0x80000L /* 20 supports specification of sts win font */
+#define WC_FONTSIZ_MENU \
+    0x100000L /* 21 supports specification of mnu win font */
+#define WC_FONTSIZ_TEXT \
+    0x200000L /* 22 supports specification of txt win font */
+#define WC_SCROLL_MARGIN \
+    0x400000L /* 23 supports setting scroll margin for map */
+#define WC_SPLASH_SCREEN \
+    0x800000L /* 24 supports display of splash screen      */
+#define WC_POPUP_DIALOG \
+    0x1000000L /* 25 supports queries in pop dialogs        */
+#define WC_SCROLL_AMOUNT \
+    0x2000000L /* 26 scroll this amount at scroll margin    */
+#define WC_EIGHT_BIT_IN \
+    0x4000000L /* 27 8-bit character input                  */
+#define WC_PERM_INVENT \
+    0x8000000L /* 28 8-bit character input                  */
+#define WC_MAP_MODE \
+    0x10000000L /* 29 map_mode option                        */
+#define WC_WINDOWCOLORS \
+    0x20000000L /* 30 background color for message window    */
+#define WC_PLAYER_SELECTION \
+    0x40000000L /* 31 background color for message window    */
 #ifdef NHSTDC
-#define WC_MOUSE_SUPPORT 0x80000000UL  /* 32 mouse support                          */
+#define WC_MOUSE_SUPPORT \
+    0x80000000UL /* 32 mouse support                          */
 #else
-#define WC_MOUSE_SUPPORT 0x80000000L   /* 32 mouse support                          */
+#define WC_MOUSE_SUPPORT \
+    0x80000000L /* 32 mouse support                          */
 #endif
-                                       /* no free bits */
+/* no free bits */
 
-#define WC2_FULLSCREEN         0x01L   /* 01 display full screen                    */
-#define WC2_SOFTKEYBOARD       0x02L   /* 02 software keyboard                      */
-#define WC2_WRAPTEXT           0x04L   /* 03 wrap long lines of text                */
-#define WC2_HILITE_STATUS      0x08L   /* 04 hilite fields in status                */ 
-#define WC2_SELECTSAVED                0x10L   /* 05 saved game selection menu              */
-#define WC2_DARKGRAY           0x20L   /* 06 use bold black for black glyphs        */
-                                       /* 26 free bits */
+#define WC2_FULLSCREEN 0x01L /* 01 display full screen                    */
+#define WC2_SOFTKEYBOARD 0x02L /* 02 software keyboard */
+#define WC2_WRAPTEXT 0x04L /* 03 wrap long lines of text                */
+#define WC2_HILITE_STATUS \
+    0x08L /* 04 hilite fields in status                */
+#define WC2_SELECTSAVED 0x10L /* 05 saved game selection menu */
+#define WC2_DARKGRAY 0x20L /* 06 use bold black for black glyphs        */
+                           /* 26 free bits */
 
-#define ALIGN_LEFT     1
-#define ALIGN_RIGHT    2
-#define ALIGN_TOP      3
-#define ALIGN_BOTTOM   4
+#define ALIGN_LEFT 1
+#define ALIGN_RIGHT 2
+#define ALIGN_TOP 3
+#define ALIGN_BOTTOM 4
 
 /* player_selection */
-#define VIA_DIALOG     0
-#define VIA_PROMPTS    1
+#define VIA_DIALOG 0
+#define VIA_PROMPTS 1
 
 /* map_mode settings - deprecated */
-#define MAP_MODE_TILES         0
-#define MAP_MODE_ASCII4x6      1
-#define MAP_MODE_ASCII6x8      2
-#define MAP_MODE_ASCII8x8      3
-#define MAP_MODE_ASCII16x8     4
-#define MAP_MODE_ASCII7x12     5
-#define MAP_MODE_ASCII8x12     6
-#define MAP_MODE_ASCII16x12    7
-#define MAP_MODE_ASCII12x16    8
-#define MAP_MODE_ASCII10x18    9
+#define MAP_MODE_TILES 0
+#define MAP_MODE_ASCII4x6 1
+#define MAP_MODE_ASCII6x8 2
+#define MAP_MODE_ASCII8x8 3
+#define MAP_MODE_ASCII16x8 4
+#define MAP_MODE_ASCII7x12 5
+#define MAP_MODE_ASCII8x12 6
+#define MAP_MODE_ASCII16x12 7
+#define MAP_MODE_ASCII12x16 8
+#define MAP_MODE_ASCII10x18 9
 #define MAP_MODE_ASCII_FIT_TO_SCREEN 10
 #define MAP_MODE_TILES_FIT_TO_SCREEN 11
 
 #if 0
-#define WC_SND_SOUND    0x01L          /* 01 Port has some sound capabilities       */
-#define WC_SND_SPEAKER  0x02L          /* 02 Sound supported via built-in speaker   */
-#define WC_SND_STEREO   0x04L          /* 03 Stereo sound supported                 */
-#define WC_SND_RAW      0x08L          /* 04 Raw sound supported                    */
-#define WC_SND_WAVE     0x10L          /* 05 Wave support                           */
-#define WC_SND_MIDI     0x20L          /* 06 Midi support                           */
+#define WC_SND_SOUND 0x01L   /* 01 Port has some sound capabilities       */
+#define WC_SND_SPEAKER 0x02L /* 02 Sound supported via built-in speaker   */
+#define WC_SND_STEREO 0x04L  /* 03 Stereo sound supported                 */
+#define WC_SND_RAW 0x08L     /* 04 Raw sound supported                    */
+#define WC_SND_WAVE 0x10L    /* 05 Wave support                           */
+#define WC_SND_MIDI 0x20L /* 06 Midi support                           */
                                        /* 26 free bits */
 #endif
 
 struct wc_Opt {
-       const char *wc_name;
-       unsigned long wc_bit;
+    const char *wc_name;
+    unsigned long wc_bit;
 };
 
 /* role selection by player_selection(); this ought to be in the core... */
-#define RS_NAME                0
-#define RS_ROLE                1
-#define RS_RACE                2
-#define RS_GENDER      3
-#define RS_ALGNMNT     4
-#define RS_menu_arg(x) (ROLE_RANDOM - ((x) + 1))       /* 0..4 -> -3..-7 */
+#define RS_NAME 0
+#define RS_ROLE 1
+#define RS_RACE 2
+#define RS_GENDER 3
+#define RS_ALGNMNT 4
+#define RS_menu_arg(x) (ROLE_RANDOM - ((x) + 1)) /* 0..4 -> -3..-7 */
 
 /* Choose_windows() may be called multiple times; these constants tell the
  * init function whether the window system is coming or going. */
-#define WININIT                0
-#define WININIT_UNDO   1
+#define WININIT 0
+#define WININIT_UNDO 1
 
 #ifdef WINCHAIN
 /* Setup phases for window chain elements.
-       void *  rv = X_procs_chain(int, int, void *, void *, void *);
-               Xprivate*          ALLOC n      0       0       0
-                                INIT  n   self    next    nextdata
+        void *  rv = X_procs_chain(int,        int, void *, void *, void *);
+                Xprivate*         ALLOC n      0       0       0
+                -                 INIT  n   self    next    nextdata
    where:
-       Xprivate* is anything window chain entry type X wants back
-       n is the link count (starting with 1)
-       self is the Xprivate* returned earlier
-       next is struct winprocs * or struct chainprocs * for the next link
-       nextdata is the Xprivate* for the next link in the chain
+        Xprivate* is anything window chain entry type X wants back
+        n is the link count (starting with 1)
+        self is the Xprivate* returned earlier
+        next is struct winprocs * or struct chainprocs * for the next link
+        nextdata is the Xprivate* for the next link in the chain
 */
-#define WINCHAIN_ALLOC 0
-#define WINCHAIN_INIT  1
+#define WINCHAIN_ALLOC 0
+#define WINCHAIN_INIT 1
 
 #define CARGS void *
 
-extern FILE *wc_tracelogf;     /* Expose log file for additional debugging. */
+extern FILE *wc_tracelogf; /* Expose log file for additional debugging. */
 
 struct chain_procs {
-    const char *name;          /* Names should start with [a-z].  Names must
-                                * not start with '-'.  Names starting with
-                                * '+' are reserved for processors. */
-    unsigned long wincap;      /* window port capability options supported */
-    unsigned long wincap2;     /* additional window port capability options supported */
+    const char *name;     /* Names should start with [a-z].  Names must
+                           * not start with '-'.  Names starting with
+                           * '+' are reserved for processors. */
+    unsigned long wincap; /* window port capability options supported */
+    unsigned long
+        wincap2; /* additional window port capability options supported */
     void FDECL((*win_init_nhwindows), (CARGS, int *, char **));
     void FDECL((*win_player_selection), (CARGS));
     void FDECL((*win_askname), (CARGS));
-    void FDECL((*win_get_nh_event), (CARGS)) ;
+    void FDECL((*win_get_nh_event), (CARGS));
     void FDECL((*win_exit_nhwindows), (CARGS, const char *));
     void FDECL((*win_suspend_nhwindows), (CARGS, const char *));
     void FDECL((*win_resume_nhwindows), (CARGS));
@@ -309,16 +334,16 @@ struct chain_procs {
     void FDECL((*win_clear_nhwindow), (CARGS, winid));
     void FDECL((*win_display_nhwindow), (CARGS, winid, BOOLEAN_P));
     void FDECL((*win_destroy_nhwindow), (CARGS, winid));
-    void FDECL((*win_curs), (CARGS, winid,int,int));
+    void FDECL((*win_curs), (CARGS, winid, int, int));
     void FDECL((*win_putstr), (CARGS, winid, int, const char *));
     void FDECL((*win_putmixed), (CARGS, winid, int, const char *));
     void FDECL((*win_display_file), (CARGS, const char *, BOOLEAN_P));
     void FDECL((*win_start_menu), (CARGS, winid));
-    void FDECL((*win_add_menu), (CARGS, winid,int,const ANY_P *,
-               CHAR_P,CHAR_P,int,const char *, BOOLEAN_P));
+    void FDECL((*win_add_menu), (CARGS, winid, int, const ANY_P *, CHAR_P,
+                                 CHAR_P, int, const char *, BOOLEAN_P));
     void FDECL((*win_end_menu), (CARGS, winid, const char *));
     int FDECL((*win_select_menu), (CARGS, winid, int, MENU_ITEM_P **));
-    char FDECL((*win_message_menu), (CARGS, CHAR_P,int,const char *));
+    char FDECL((*win_message_menu), (CARGS, CHAR_P, int, const char *));
     void FDECL((*win_update_inventory), (CARGS));
     void FDECL((*win_mark_synch), (CARGS));
     void FDECL((*win_wait_synch), (CARGS));
@@ -328,43 +353,46 @@ struct chain_procs {
 #ifdef POSITIONBAR
     void FDECL((*win_update_positionbar), (CARGS, char *));
 #endif
-    void FDECL((*win_print_glyph), (CARGS, winid,XCHAR_P,XCHAR_P,int));
+    void FDECL((*win_print_glyph), (CARGS, winid, XCHAR_P, XCHAR_P, int));
     void FDECL((*win_raw_print), (CARGS, const char *));
     void FDECL((*win_raw_print_bold), (CARGS, const char *));
     int FDECL((*win_nhgetch), (CARGS));
     int FDECL((*win_nh_poskey), (CARGS, int *, int *, int *));
     void FDECL((*win_nhbell), (CARGS));
     int FDECL((*win_doprev_message), (CARGS));
-    char FDECL((*win_yn_function), (CARGS, const char *, const char *, CHAR_P));
-    void FDECL((*win_getlin), (CARGS, const char *,char *));
+    char FDECL((*win_yn_function),
+               (CARGS, const char *, const char *, CHAR_P));
+    void FDECL((*win_getlin), (CARGS, const char *, char *));
     int FDECL((*win_get_ext_cmd), (CARGS));
     void FDECL((*win_number_pad), (CARGS, int));
     void FDECL((*win_delay_output), (CARGS));
 #ifdef CHANGE_COLOR
-    void FDECL((*win_change_color), (CARGS, int,long,int));
+    void FDECL((*win_change_color), (CARGS, int, long, int));
 #ifdef MAC
     void FDECL((*win_change_background), (CARGS, int));
     short FDECL((*win_set_font_name), (CARGS, winid, char *));
 #endif
-    char * FDECL((*win_get_color_string), (CARGS));
+    char *FDECL((*win_get_color_string), (CARGS));
 #endif
 
     /* other defs that really should go away (they're tty specific) */
     void FDECL((*win_start_screen), (CARGS));
     void FDECL((*win_end_screen), (CARGS));
 
-    void FDECL((*win_outrip), (CARGS, winid,int,time_t));
+    void FDECL((*win_outrip), (CARGS, winid, int, time_t));
     void FDECL((*win_preference_update), (CARGS, const char *));
-    char * FDECL((*win_getmsghistory), (CARGS, BOOLEAN_P));
-    void FDECL((*win_putmsghistory), (CARGS, const char *,BOOLEAN_P));
+    char *FDECL((*win_getmsghistory), (CARGS, BOOLEAN_P));
+    void FDECL((*win_putmsghistory), (CARGS, const char *, BOOLEAN_P));
 #ifdef STATUS_VIA_WINDOWPORT
     void FDECL((*win_status_init), (CARGS));
     void FDECL((*win_status_finish), (CARGS));
-    void FDECL((*win_status_enablefield), (CARGS, int,const char *,const char *,BOOLEAN_P));
-    void FDECL((*win_status_update), (CARGS, int,genericptr_t,int,int));
-# ifdef STATUS_HILITES
-    void FDECL((*win_status_threshold), (CARGS, int,int,anything,int,int,int));
-# endif
+    void FDECL((*win_status_enablefield),
+               (CARGS, int, const char *, const char *, BOOLEAN_P));
+    void FDECL((*win_status_update), (CARGS, int, genericptr_t, int, int));
+#ifdef STATUS_HILITES
+    void FDECL((*win_status_threshold),
+               (CARGS, int, int, anything, int, int, int));
+#endif
 #endif
     boolean FDECL((*win_can_suspend), (CARGS));
 };
index 148d1707d165556e14e9f8efbea819d13ae97a78..9f0629e249f53187ebc69856139987558c65e577 100644 (file)
 /* menu structure */
 typedef struct tty_mi {
     struct tty_mi *next;
-    anything identifier;       /* user identifier */
-    long count;                        /* user count */
-    char *str;                 /* description string (including accelerator) */
-    int attr;                  /* string attribute */
-    boolean selected;          /* TRUE if selected by user */
-    char selector;             /* keyboard accelerator */
-    char gselector;            /* group accelerator */
+    anything identifier; /* user identifier */
+    long count;          /* user count */
+    char *str;           /* description string (including accelerator) */
+    int attr;            /* string attribute */
+    boolean selected;    /* TRUE if selected by user */
+    char selector;       /* keyboard accelerator */
+    char gselector;      /* group accelerator */
 } tty_menu_item;
 
 /* descriptor for tty-based windows */
 struct WinDesc {
-    int flags;                 /* window flags */
-    xchar type;                        /* type of window */
-    boolean active;            /* true if window is active */
-    short offx, offy;          /* offset from topleft of display */
-    long rows, cols;           /* dimensions */
-    long curx, cury;           /* current cursor position */
-    long maxrow, maxcol;       /* the maximum size used -- for MENU wins */
-                               /* maxcol is also used by WIN_MESSAGE for */
-                               /* tracking the ^P command */
-    short *datlen;             /* allocation size for *data */
-    char **data;               /* window data [row][column] */
-    char *morestr;             /* string to display instead of default */
-    tty_menu_item *mlist;      /* menu information (MENU) */
-    tty_menu_item **plist;     /* menu page pointers (MENU) */
-    long plist_size;           /* size of allocated plist (MENU) */
-    long npages;               /* number of pages in menu (MENU) */
-    long nitems;               /* total number of items (MENU) */
-    short how;                 /* menu mode - pick 1 or N (MENU) */
-    char menu_ch;              /* menu char (MENU) */
+    int flags;           /* window flags */
+    xchar type;          /* type of window */
+    boolean active;      /* true if window is active */
+    short offx, offy;    /* offset from topleft of display */
+    long rows, cols;     /* dimensions */
+    long curx, cury;     /* current cursor position */
+    long maxrow, maxcol; /* the maximum size used -- for MENU wins */
+    /* maxcol is also used by WIN_MESSAGE for */
+    /* tracking the ^P command */
+    short *datlen;         /* allocation size for *data */
+    char **data;           /* window data [row][column] */
+    char *morestr;         /* string to display instead of default */
+    tty_menu_item *mlist;  /* menu information (MENU) */
+    tty_menu_item **plist; /* menu page pointers (MENU) */
+    long plist_size;       /* size of allocated plist (MENU) */
+    long npages;           /* number of pages in menu (MENU) */
+    long nitems;           /* total number of items (MENU) */
+    short how;             /* menu mode - pick 1 or N (MENU) */
+    char menu_ch;          /* menu char (MENU) */
 };
 
 /* window flags */
 #define WIN_CANCELLED 1
-#define WIN_STOP 1             /* for NHW_MESSAGE; stops output */
-#define WIN_LOCKHISTORY 2      /* for NHW_MESSAGE; suppress history updates */
+#define WIN_STOP 1        /* for NHW_MESSAGE; stops output */
+#define WIN_LOCKHISTORY 2 /* for NHW_MESSAGE; suppress history updates */
 
 /* descriptor for tty-based displays -- all the per-display data */
 struct DisplayDesc {
-    short rows, cols;          /* width and height of tty display */
-    short curx, cury;          /* current cursor position on the screen */
+    short rows, cols; /* width and height of tty display */
+    short curx, cury; /* current cursor position on the screen */
 #ifdef TEXTCOLOR
-    int color;                 /* current color */
+    int color; /* current color */
 #endif
-    int attrs;                 /* attributes in effect */
-    int toplin;                        /* flag for topl stuff */
-    int rawprint;              /* number of raw_printed lines since synch */
-    int inmore;                        /* non-zero if more() is active */
-    int inread;                        /* non-zero if reading a character */
-    int intr;                  /* non-zero if inread was interrupted */
-    winid lastwin;             /* last window used for I/O */
-    char dismiss_more;         /* extra character accepted at --More-- */
+    int attrs;         /* attributes in effect */
+    int toplin;        /* flag for topl stuff */
+    int rawprint;      /* number of raw_printed lines since synch */
+    int inmore;        /* non-zero if more() is active */
+    int inread;        /* non-zero if reading a character */
+    int intr;          /* non-zero if inread was interrupted */
+    winid lastwin;     /* last window used for I/O */
+    char dismiss_more; /* extra character accepted at --More-- */
 };
 
 #endif /* WINDOW_STRUCTS */
 
-#define MAXWIN 20              /* maximum number of windows, cop-out */
+#define MAXWIN 20 /* maximum number of windows, cop-out */
 
 /* tty dependent window types */
 #ifdef NHW_BASE
 #undef NHW_BASE
 #endif
-#define NHW_BASE    6
+#define NHW_BASE 6
 
 extern struct window_procs tty_procs;
 
@@ -85,10 +85,10 @@ extern winid BASE_WINDOW;
 
 extern struct WinDesc *wins[MAXWIN];
 
-extern struct DisplayDesc *ttyDisplay; /* the tty display descriptor */
+extern struct DisplayDesc *ttyDisplay; /* the tty display descriptor */
 
-extern char morc;              /* last character typed to xwaitforspace */
-extern char defmorestr[];      /* default --more-- prompt */
+extern char morc;         /* last character typed to xwaitforspace */
+extern char defmorestr[]; /* default --more-- prompt */
 
 /* port specific external function references */
 
@@ -97,7 +97,7 @@ E void FDECL(xwaitforspace, (const char *));
 
 /* ### termcap.c, video.c ### */
 
-E void FDECL(tty_startup,(int*, int*));
+E void FDECL(tty_startup, (int *, int *));
 #ifndef NO_TERMS
 E void NDECL(tty_shutdown);
 #endif
@@ -120,13 +120,13 @@ E void NDECL(clear_screen);
 E void NDECL(home);
 E void NDECL(standoutbeg);
 E void NDECL(standoutend);
-# if 0
+#if 0
 E void NDECL(revbeg);
 E void NDECL(boldbeg);
 E void NDECL(blinkbeg);
 E void NDECL(dimbeg);
 E void NDECL(m_end);
-# endif
+#endif
 E void NDECL(backsp);
 E void NDECL(graph_on);
 E void NDECL(graph_off);
@@ -138,24 +138,23 @@ E void NDECL(cl_eos);
  * a color or whatever.  wintty.c should concern itself with WHERE to put
  * stuff in a window.
  */
-E void FDECL(term_start_attr,(int attr));
-E void FDECL(term_end_attr,(int attr));
+E void FDECL(term_start_attr, (int attr));
+E void FDECL(term_end_attr, (int attr));
 E void NDECL(term_start_raw_bold);
 E void NDECL(term_end_raw_bold);
 
 #ifdef TEXTCOLOR
 E void NDECL(term_end_color);
-E void FDECL(term_start_color,(int color));
-E int FDECL(has_color,(int color));
+E void FDECL(term_start_color, (int color));
+E int FDECL(has_color, (int color));
 #endif /* TEXTCOLOR */
 
-
 /* ### topl.c ### */
 
 E void FDECL(addtopl, (const char *));
 E void NDECL(more);
 E void FDECL(update_topl, (const char *));
-E void FDECL(putsyms, (const char*));
+E void FDECL(putsyms, (const char *));
 
 /* ### wintty.c ### */
 #ifdef CLIPPING
@@ -170,7 +169,7 @@ E void FDECL(win_tty_init, (int));
 E void FDECL(tty_init_nhwindows, (int *, char **));
 E void NDECL(tty_player_selection);
 E void NDECL(tty_askname);
-E void NDECL(tty_get_nh_event) ;
+E void NDECL(tty_get_nh_event);
 E void FDECL(tty_exit_nhwindows, (const char *));
 E void FDECL(tty_suspend_nhwindows, (const char *));
 E void NDECL(tty_resume_nhwindows);
@@ -179,15 +178,15 @@ E void FDECL(tty_clear_nhwindow, (winid));
 E void FDECL(tty_display_nhwindow, (winid, BOOLEAN_P));
 E void FDECL(tty_dismiss_nhwindow, (winid));
 E void FDECL(tty_destroy_nhwindow, (winid));
-E void FDECL(tty_curs, (winid,int,int));
+E void FDECL(tty_curs, (winid, int, int));
 E void FDECL(tty_putstr, (winid, int, const char *));
 E void FDECL(tty_display_file, (const char *, BOOLEAN_P));
 E void FDECL(tty_start_menu, (winid));
-E void FDECL(tty_add_menu, (winid,int,const ANY_P *,
-                       CHAR_P,CHAR_P,int,const char *, BOOLEAN_P));
+E void FDECL(tty_add_menu, (winid, int, const ANY_P *, CHAR_P, CHAR_P, int,
+                            const char *, BOOLEAN_P));
 E void FDECL(tty_end_menu, (winid, const char *));
 E int FDECL(tty_select_menu, (winid, int, MENU_ITEM_P **));
-E char FDECL(tty_message_menu, (CHAR_P,int,const char *));
+E char FDECL(tty_message_menu, (CHAR_P, int, const char *));
 E void NDECL(tty_update_inventory);
 E void NDECL(tty_mark_synch);
 E void NDECL(tty_wait_synch);
@@ -197,7 +196,7 @@ E void FDECL(tty_cliparound, (int, int));
 #ifdef POSITIONBAR
 E void FDECL(tty_update_positionbar, (char *));
 #endif
-E void FDECL(tty_print_glyph, (winid,XCHAR_P,XCHAR_P,int));
+E void FDECL(tty_print_glyph, (winid, XCHAR_P, XCHAR_P, int));
 E void FDECL(tty_raw_print, (const char *));
 E void FDECL(tty_raw_print_bold, (const char *));
 E int NDECL(tty_nhgetch);
@@ -205,56 +204,55 @@ E int FDECL(tty_nh_poskey, (int *, int *, int *));
 E void NDECL(tty_nhbell);
 E int NDECL(tty_doprev_message);
 E char FDECL(tty_yn_function, (const char *, const char *, CHAR_P));
-E void FDECL(tty_getlin, (const char *,char *));
+E void FDECL(tty_getlin, (const char *, char *));
 E int NDECL(tty_get_ext_cmd);
 E void FDECL(tty_number_pad, (int));
 E void NDECL(tty_delay_output);
 #ifdef CHANGE_COLOR
-E void FDECL(tty_change_color,(int color,long rgb,int reverse));
+E void FDECL(tty_change_color, (int color, long rgb, int reverse));
 #ifdef MAC
-E void FDECL(tty_change_background,(int white_or_black));
+E void FDECL(tty_change_background, (int white_or_black));
 E short FDECL(set_tty_font_name, (winid, char *));
 #endif
-E char * NDECL(tty_get_color_string);
+E char *NDECL(tty_get_color_string);
 #endif
 
 /* other defs that really should go away (they're tty specific) */
 E void NDECL(tty_start_screen);
 E void NDECL(tty_end_screen);
 
-E void FDECL(genl_outrip, (winid,int,time_t));
+E void FDECL(genl_outrip, (winid, int, time_t));
 
 E char *FDECL(tty_getmsghistory, (BOOLEAN_P));
-E void FDECL(tty_putmsghistory, (const char *,BOOLEAN_P));
-
+E void FDECL(tty_putmsghistory, (const char *, BOOLEAN_P));
 
 #ifdef NO_TERMS
-# ifdef MAC
-#  ifdef putchar
-#   undef putchar
-#   undef putc
-#  endif
-#  define putchar term_putc
-#  define fflush term_flush
-#  define puts term_puts
+#ifdef MAC
+#ifdef putchar
+#undef putchar
+#undef putc
+#endif
+#define putchar term_putc
+#define fflush term_flush
+#define puts term_puts
 E int FDECL(term_putc, (int c));
 E int FDECL(term_flush, (void *desc));
 E int FDECL(term_puts, (const char *str));
-# endif /* MAC */
-# if defined(MSDOS) || defined(WIN32)
-#  if defined(SCREEN_BIOS) || defined(SCREEN_DJGPPFAST) || defined(WIN32)
-#   undef putchar
-#   undef putc
-#   undef puts
-#   define putchar(x) xputc(x) /* these are in video.c, nttty.c */
-#   define putc(x) xputc(x)
-#   define puts(x) xputs(x)
-#  endif/*SCREEN_BIOS || SCREEN_DJGPPFAST || WIN32 */
-#  ifdef POSITIONBAR
+#endif /* MAC */
+#if defined(MSDOS) || defined(WIN32)
+#if defined(SCREEN_BIOS) || defined(SCREEN_DJGPPFAST) || defined(WIN32)
+#undef putchar
+#undef putc
+#undef puts
+#define putchar(x) xputc(x) /* these are in video.c, nttty.c */
+#define putc(x) xputc(x)
+#define puts(x) xputs(x)
+#endif /*SCREEN_BIOS || SCREEN_DJGPPFAST || WIN32 */
+#ifdef POSITIONBAR
 E void FDECL(video_update_positionbar, (char *));
-#  endif
-# endif/*MSDOS*/
-#endif/*NO_TERMS*/
+#endif
+#endif /*MSDOS*/
+#endif /*NO_TERMS*/
 
 #undef E
 
index 924a23cf529ebd464cd3007750f27cb38dd2ecdf..cccc928ceff1f59f8f93326e97c2ef7d0f4cb5f0 100644 (file)
@@ -1,20 +1,20 @@
-/* NetHack 3.6 wintype.h       $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
-/* NetHack 3.6 wintype.h       $Date: 2009/05/06 10:45:19 $  $Revision: 1.10 $ */
-/*     SCCS Id: @(#)wintype.h  3.5     2006/07/08      */
-/* Copyright (c) David Cohrs, 1991                               */
+/* NetHack 3.6  wintype.h       $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
+/* NetHack 3.6  wintype.h       $Date: 2009/05/06 10:45:19 $  $Revision: 1.10 $ */
+/*      SCCS Id: @(#)wintype.h  3.5     2006/07/08      */
+/* Copyright (c) David Cohrs, 1991                                */
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef WINTYPE_H
 #define WINTYPE_H
 
-typedef int winid;             /* a window identifier */
+typedef int winid; /* a window identifier */
 
 /* generic parameter - must not be any larger than a pointer */
 typedef union any {
     genericptr_t a_void;
     struct obj *a_obj;
     struct monst *a_monst;
-    int  a_int;
+    int a_int;
     char a_char;
     schar a_schar;
     unsigned int a_uint;
@@ -27,72 +27,76 @@ typedef union any {
     /* add types as needed */
 } anything;
 #define ANY_P union any /* avoid typedef in prototypes */
-                       /* (buggy old Ultrix compiler) */
+                        /* (buggy old Ultrix compiler) */
 
 /* symbolic names for the data types housed in anything */
-#define ANY_VOID        1
-#define ANY_OBJ                 2      /* struct obj */
-#define ANY_MONST       3      /* struct monst (not used) */
-#define ANY_INT                 4      /* int */
-#define ANY_CHAR        5      /* char */
-#define ANY_UCHAR       6      /* unsigned char */
-#define ANY_SCHAR       7      /* signed char */
-#define ANY_UINT        8      /* unsigned int */
-#define ANY_LONG        9      /* long */
-#define ANY_ULONG      10      /* unsigned long */
-#define ANY_IPTR       11      /* pointer to int */
-#define ANY_UPTR       12      /* pointer to unsigned int */
-#define ANY_LPTR       13      /* pointer to long */
-#define ANY_ULPTR      14      /* pointer to unsigned long */
-#define        ANY_STR         15      /* pointer to null-terminated char string */
-#define ANY_MASK32     16      /* mask of 32 bits (stored as unsigned long) */
-                       
+/* clang-format off */
+#define ANY_VOID         1
+#define ANY_OBJ          2      /* struct obj */
+#define ANY_MONST        3      /* struct monst (not used) */
+#define ANY_INT          4      /* int */
+#define ANY_CHAR         5      /* char */
+#define ANY_UCHAR        6      /* unsigned char */
+#define ANY_SCHAR        7      /* signed char */
+#define ANY_UINT         8      /* unsigned int */
+#define ANY_LONG         9      /* long */
+#define ANY_ULONG       10      /* unsigned long */
+#define ANY_IPTR        11      /* pointer to int */
+#define ANY_UPTR        12      /* pointer to unsigned int */
+#define ANY_LPTR        13      /* pointer to long */
+#define ANY_ULPTR       14      /* pointer to unsigned long */
+#define ANY_STR         15      /* pointer to null-terminated char string */
+#define ANY_MASK32      16      /* 32-bit mask (stored as unsigned long) */
+/* clang-format on */
+
 /* menu return list */
 typedef struct mi {
-    anything item;             /* identifier */
-    long count;                        /* count */
+    anything item; /* identifier */
+    long count;    /* count */
 } menu_item;
 #define MENU_ITEM_P struct mi
 
 /* select_menu() "how" argument types */
-#define PICK_NONE 0    /* user picks nothing (display only) */
-#define PICK_ONE  1    /* only pick one */
-#define PICK_ANY  2    /* can pick any amount */
+#define PICK_NONE 0 /* user picks nothing (display only) */
+#define PICK_ONE 1  /* only pick one */
+#define PICK_ANY 2  /* can pick any amount */
 
 /* window types */
 /* any additional port specific types should be defined in win*.h */
 #define NHW_MESSAGE 1
-#define NHW_STATUS  2
-#define NHW_MAP     3
-#define NHW_MENU    4
-#define NHW_TEXT    5
+#define NHW_STATUS 2
+#define NHW_MAP 3
+#define NHW_MENU 4
+#define NHW_TEXT 5
 
 /* attribute types for putstr; the same as the ANSI value, for convenience */
-#define ATR_NONE    0
-#define ATR_BOLD    1
-#define ATR_DIM     2
-#define ATR_ULINE   4
-#define ATR_BLINK   5
+#define ATR_NONE 0
+#define ATR_BOLD 1
+#define ATR_DIM 2
+#define ATR_ULINE 4
+#define ATR_BLINK 5
 #define ATR_INVERSE 7
 
 /* nh_poskey() modifier types */
-#define CLICK_1     1
-#define CLICK_2     2
+#define CLICK_1 1
+#define CLICK_2 2
 
 /* invalid winid */
 #define WIN_ERR ((winid) -1)
 
 /* menu window keyboard commands (may be mapped) */
-#define MENU_FIRST_PAGE                '^'
-#define MENU_LAST_PAGE         '|'
-#define MENU_NEXT_PAGE         '>'
-#define MENU_PREVIOUS_PAGE     '<'
-#define MENU_SELECT_ALL                '.'
-#define MENU_UNSELECT_ALL      '-'
-#define MENU_INVERT_ALL                '@'
-#define MENU_SELECT_PAGE       ','
-#define MENU_UNSELECT_PAGE     '\\'
-#define MENU_INVERT_PAGE       '~'
-#define MENU_SEARCH            ':'
+/* clang-format off */
+#define MENU_FIRST_PAGE         '^'
+#define MENU_LAST_PAGE          '|'
+#define MENU_NEXT_PAGE          '>'
+#define MENU_PREVIOUS_PAGE      '<'
+#define MENU_SELECT_ALL         '.'
+#define MENU_UNSELECT_ALL       '-'
+#define MENU_INVERT_ALL         '@'
+#define MENU_SELECT_PAGE        ','
+#define MENU_UNSELECT_PAGE      '\\'
+#define MENU_INVERT_PAGE        '~'
+#define MENU_SEARCH             ':'
+/* clang-format on */
 
 #endif /* WINTYPE_H */
index 7fa05020a18ce22d9c1be66979fa40770b795301..b6715fa254c537d65c424bb2c8df5df107d51ad0 100644 (file)
  resizeCallback      Callback          Callback        NULL
 */
 
-/* define any special resource names here that are not in <X11/StringDefs.h> */
-
-#define XtNrows                        "rows"
-#define XtNcolumns             "columns"
-#define XtNblack               "black"
-#define XtNred                 "red"
-#define XtNgreen               "green"
-#define XtNbrown               "brown"
-#define XtNblue                        "blue"
-#define XtNmagenta             "magenta"
-#define XtNcyan                        "cyan"
-#define XtNgray                        "gray"
-#define XtNorange              "orange"
-#define XtNbright_green                "bright_green"
-#define XtNyellow              "yellow"
-#define XtNbright_blue         "bright_blue"
-#define XtNbright_magenta      "bright_magenta"
-#define XtNbright_cyan         "bright_cyan"
-#define XtNwhite               "white"
-#define XtNexposeCallback      "exposeCallback"
-#define XtNresizeCallback      "resizeCallback"
-
+/* define any special resource names here that are not in <X11/StringDefs.h>
+ */
+
+#define XtNrows "rows"
+#define XtNcolumns "columns"
+#define XtNblack "black"
+#define XtNred "red"
+#define XtNgreen "green"
+#define XtNbrown "brown"
+#define XtNblue "blue"
+#define XtNmagenta "magenta"
+#define XtNcyan "cyan"
+#define XtNgray "gray"
+#define XtNorange "orange"
+#define XtNbright_green "bright_green"
+#define XtNyellow "yellow"
+#define XtNbright_blue "bright_blue"
+#define XtNbright_magenta "bright_magenta"
+#define XtNbright_cyan "bright_cyan"
+#define XtNwhite "white"
+#define XtNexposeCallback "exposeCallback"
+#define XtNresizeCallback "resizeCallback"
 
 extern XFontStruct *WindowFontStruct(/* Widget */);
 extern Font WindowFont(/* Widget */);
 
 #define XtCWindowResource "WindowResource"
-#define XtCRows                        "Rows"
-#define XtCColumns             "Columns"
+#define XtCRows "Rows"
+#define XtCColumns "Columns"
 
 /* declare specific WindowWidget class and instance datatypes */
 
-typedef struct _WindowClassRec *WindowWidgetClass;
-typedef struct _WindowRec      *WindowWidget;
+typedef struct _WindowClassRec *WindowWidgetClass;
+typedef struct _WindowRec *WindowWidget;
 
 /* declare the class constant */
 
index 08ac7f15edb72a4b028f765de990ea04c1cd66e0..3130ea55a0a333d1db82dea4d0b404615a692e39 100644 (file)
 #include "xwindow.h"
 
 #ifndef SYSV
-#define PRESERVE_NO_SYSV       /* X11 include files may define SYSV */
+#define PRESERVE_NO_SYSV /* X11 include files may define SYSV */
 #endif
 
 /* include superclass private header file */
 #include <X11/CoreP.h>
 
 #ifdef PRESERVE_NO_SYSV
-# ifdef SYSV
-#  undef SYSV
-# endif
-# undef PRESERVE_NO_SYSV
+#ifdef SYSV
+#undef SYSV
+#endif
+#undef PRESERVE_NO_SYSV
 #endif
 
 /* define unique representation types not found in <X11/StringDefs.h> */
@@ -32,33 +32,33 @@ typedef struct {
 } WindowClassPart;
 
 typedef struct _WindowClassRec {
-    CoreClassPart      core_class;
-    WindowClassPart    window_class;
+    CoreClassPart core_class;
+    WindowClassPart window_class;
 } WindowClassRec;
 
 extern WindowClassRec windowClassRec;
 
 typedef struct {
     /* resources */
-    Dimension     rows;
-    Dimension     columns;
-    Pixel         foreground;
-    Pixel         black;
-    Pixel         red;
-    Pixel         green;
-    Pixel         brown;
-    Pixel         blue;
-    Pixel         magenta;
-    Pixel         cyan;
-    Pixel         gray;
-    Pixel         orange;
-    Pixel         bright_green;
-    Pixel         yellow;
-    Pixel         bright_blue;
-    Pixel         bright_magenta;
-    Pixel         bright_cyan;
-    Pixel         white;
-    XFontStruct    *font;
+    Dimension rows;
+    Dimension columns;
+    Pixel foreground;
+    Pixel black;
+    Pixel red;
+    Pixel green;
+    Pixel brown;
+    Pixel blue;
+    Pixel magenta;
+    Pixel cyan;
+    Pixel gray;
+    Pixel orange;
+    Pixel bright_green;
+    Pixel yellow;
+    Pixel bright_blue;
+    Pixel bright_magenta;
+    Pixel bright_cyan;
+    Pixel white;
+    XFontStruct *font;
     XtCallbackList expose_callback;
     XtCallbackList input_callback;
     XtCallbackList resize_callback;
@@ -67,8 +67,8 @@ typedef struct {
 } WindowPart;
 
 typedef struct _WindowRec {
-    CorePart   core;
-    WindowPart window;
+    CorePart core;
+    WindowPart window;
 } WindowRec;
 
 #endif /* _xwindowp_h */
index 76da87e33f2e9fa17fb712995ac600dfc0ad4d04..2697fadbc918758b6ee24a80d9706b1a1510e6a9 100644 (file)
 #include "attrib.h"
 #include "monst.h"
 #ifndef PROP_H
-#include "prop.h"              /* (needed here for util/makedefs.c) */
+#include "prop.h" /* (needed here for util/makedefs.c) */
 #endif
 #include "skills.h"
 
 /*** Substructures ***/
 
 struct RoleName {
-       const char      *m;     /* name when character is male */
-       const char      *f;     /* when female; null if same as male */
+    const char *m; /* name when character is male */
+    const char *f; /* when female; null if same as male */
 };
 
 struct RoleAdvance {
-       /* "fix" is the fixed amount, "rnd" is the random amount */
-       xchar infix, inrnd;     /* at character initialization */
-       xchar lofix, lornd;     /* gained per level <  urole.xlev */
-       xchar hifix, hirnd;     /* gained per level >= urole.xlev */
+    /* "fix" is the fixed amount, "rnd" is the random amount */
+    xchar infix, inrnd; /* at character initialization */
+    xchar lofix, lornd; /* gained per level <  urole.xlev */
+    xchar hifix, hirnd; /* gained per level >= urole.xlev */
 };
 
 struct u_have {
-       Bitfield(amulet,1);     /* carrying Amulet      */
-       Bitfield(bell,1);       /* carrying Bell        */
-       Bitfield(book,1);       /* carrying Book        */
-       Bitfield(menorah,1);    /* carrying Candelabrum */
-       Bitfield(questart,1);   /* carrying the Quest Artifact */
-       Bitfield(unused,3);
+    Bitfield(amulet, 1);   /* carrying Amulet  */
+    Bitfield(bell, 1);     /* carrying Bell    */
+    Bitfield(book, 1);     /* carrying Book    */
+    Bitfield(menorah, 1);  /* carrying Candelabrum */
+    Bitfield(questart, 1); /* carrying the Quest Artifact */
+    Bitfield(unused, 3);
 };
 
 struct u_event {
-       Bitfield(minor_oracle,1);       /* received at least 1 cheap oracle */
-       Bitfield(major_oracle,1);       /*  "  expensive oracle */
-       Bitfield(read_tribute,1);       /* read a passage from a novel */
-       Bitfield(qcalled,1);            /* called by Quest leader to do task */
-       Bitfield(qexpelled,1);          /* expelled from the Quest dungeon */
-       Bitfield(qcompleted,1);         /* successfully completed Quest task */
-       Bitfield(uheard_tune,2);        /* 1=know about, 2=heard passtune */
-
-       Bitfield(uopened_dbridge,1);    /* opened the drawbridge */
-       Bitfield(invoked,1);            /* invoked Gate to the Sanctum level */
-       Bitfield(gehennom_entered,1);   /* entered Gehennom via Valley */
-       Bitfield(uhand_of_elbereth,2);  /* became Hand of Elbereth */
-       Bitfield(udemigod,1);           /* killed the wiz */
-       Bitfield(uvibrated,1);          /* stepped on "vibrating square" */
-       Bitfield(ascended,1);           /* has offered the Amulet */
+    Bitfield(minor_oracle, 1); /* received at least 1 cheap oracle */
+    Bitfield(major_oracle, 1); /*  "  expensive oracle */
+    Bitfield(read_tribute, 1); /* read a passage from a novel */
+    Bitfield(qcalled, 1);      /* called by Quest leader to do task */
+    Bitfield(qexpelled, 1);    /* expelled from the Quest dungeon */
+    Bitfield(qcompleted, 1);   /* successfully completed Quest task */
+    Bitfield(uheard_tune, 2);  /* 1=know about, 2=heard passtune */
+
+    Bitfield(uopened_dbridge, 1);   /* opened the drawbridge */
+    Bitfield(invoked, 1);           /* invoked Gate to the Sanctum level */
+    Bitfield(gehennom_entered, 1);  /* entered Gehennom via Valley */
+    Bitfield(uhand_of_elbereth, 2); /* became Hand of Elbereth */
+    Bitfield(udemigod, 1);          /* killed the wiz */
+    Bitfield(uvibrated, 1);         /* stepped on "vibrating square" */
+    Bitfield(ascended, 1);          /* has offered the Amulet */
 };
 
 struct u_achieve {
-       Bitfield(amulet,1);             /* touched Amulet */
-       Bitfield(bell,1);               /* touched Bell */
-       Bitfield(book,1);               /* touched Book */
-       Bitfield(menorah,1);            /* touched Candelabrum */
-       Bitfield(enter_gehennom,1);     /* entered Gehennom (or Valley) by any means */
-       Bitfield(ascended,1);           /* not quite the same as u.uevent.ascended */
-       Bitfield(mines_luckstone,1);    /* got a luckstone at end of mines */
-       Bitfield(finish_sokoban,1);     /* obtained the sokoban prize */
-
-       Bitfield(killed_medusa,1);
+    Bitfield(amulet, 1);  /* touched Amulet */
+    Bitfield(bell, 1);    /* touched Bell */
+    Bitfield(book, 1);    /* touched Book */
+    Bitfield(menorah, 1); /* touched Candelabrum */
+    Bitfield(enter_gehennom,
+             1);           /* entered Gehennom (or Valley) by any means */
+    Bitfield(ascended, 1); /* not quite the same as u.uevent.ascended */
+    Bitfield(mines_luckstone, 1); /* got a luckstone at end of mines */
+    Bitfield(finish_sokoban, 1);  /* obtained the sokoban prize */
+
+    Bitfield(killed_medusa, 1);
 };
 
 struct u_realtime {
-       long realtime;                  /* actual playing time up until the last restore, seconds */
-       time_t restored;                /* time the game was started or restored */
-       time_t endtime;
+    long
+        realtime; /* actual playing time up until the last restore, seconds */
+    time_t restored; /* time the game was started or restored */
+    time_t endtime;
 };
 
-
 /* KMH, conduct --
  * These are voluntary challenges.  Each field denotes the number of
  * times a challenge has been violated.
  */
-struct u_conduct {             /* number of times... */
-       long    unvegetarian;   /* eaten any animal */
-       long    unvegan;        /* ... or any animal byproduct */
-       long    food;           /* ... or any comestible */
-       long    gnostic;        /* used prayer, priest, or altar */
-       long    weaphit;        /* hit a monster with a weapon */
-       long    killer;         /* killed a monster yourself */
-       long    literate;       /* read something (other than BotD) */
-       long    polypiles;      /* polymorphed an object */
-       long    polyselfs;      /* transformed yourself */
-       long    wishes;         /* used a wish */
-       long    wisharti;       /* wished for an artifact */
-                               /* genocides already listed at end of game */
+struct u_conduct {     /* number of times... */
+    long unvegetarian; /* eaten any animal */
+    long unvegan;      /* ... or any animal byproduct */
+    long food;         /* ... or any comestible */
+    long gnostic;      /* used prayer, priest, or altar */
+    long weaphit;      /* hit a monster with a weapon */
+    long killer;       /* killed a monster yourself */
+    long literate;     /* read something (other than BotD) */
+    long polypiles;    /* polymorphed an object */
+    long polyselfs;    /* transformed yourself */
+    long wishes;       /* used a wish */
+    long wisharti;     /* wished for an artifact */
+    /* genocides already listed at end of game */
 };
 
 struct u_roleplay {
-    boolean  blind;   /* permanently blind */
-    boolean  nudist;  /* has not worn any armor, ever */
-    long numbones;    /* # of bones files loaded  */
+    boolean blind;  /* permanently blind */
+    boolean nudist; /* has not worn any armor, ever */
+    long numbones;  /* # of bones files loaded  */
 };
 
 /*** Unified structure containing role information ***/
 struct Role {
-       /*** Strings that name various things ***/
-       struct RoleName name;   /* the role's name (from u_init.c) */
-       struct RoleName rank[9]; /* names for experience levels (from botl.c) */
-       const char *lgod, *ngod, *cgod; /* god names (from pray.c) */
-       const char *filecode;   /* abbreviation for use in file names */
-       const char *homebase;   /* quest leader's location (from questpgr.c) */
-       const char *intermed;   /* quest intermediate goal (from questpgr.c) */
-
-       /*** Indices of important monsters and objects ***/
-       short malenum,          /* index (PM_) as a male (botl.c) */
-             femalenum,        /* ...or as a female (NON_PM == same) */
-             petnum,           /* PM_ of preferred pet (NON_PM == random) */
-             ldrnum,           /* PM_ of quest leader (questpgr.c) */
-             guardnum,         /* PM_ of quest guardians (questpgr.c) */
-             neminum,          /* PM_ of quest nemesis (questpgr.c) */
-             enemy1num,        /* specific quest enemies (NON_PM == random) */
-             enemy2num;
-       char  enemy1sym,        /* quest enemies by class (S_) */
-             enemy2sym;
-       short questarti;        /* index (ART_) of quest artifact (questpgr.c) */
-
-       /*** Bitmasks ***/
-       short allow;            /* bit mask of allowed variations */
-#define ROLE_RACEMASK  0x0ff8          /* allowable races */
-#define ROLE_GENDMASK  0xf000          /* allowable genders */
-#define ROLE_MALE      0x1000
-#define ROLE_FEMALE    0x2000
-#define ROLE_NEUTER    0x4000
-#define ROLE_ALIGNMASK AM_MASK         /* allowable alignments */
-#define ROLE_LAWFUL    AM_LAWFUL
-#define ROLE_NEUTRAL   AM_NEUTRAL
-#define ROLE_CHAOTIC   AM_CHAOTIC
-
-       /*** Attributes (from attrib.c and exper.c) ***/
-       xchar attrbase[A_MAX];  /* lowest initial attributes */
-       xchar attrdist[A_MAX];  /* distribution of initial attributes */
-       struct RoleAdvance hpadv; /* hit point advancement */
-       struct RoleAdvance enadv; /* energy advancement */
-       xchar xlev;             /* cutoff experience level */
-       xchar initrecord;       /* initial alignment record */
-
-       /*** Spell statistics (from spell.c) ***/
-       int spelbase;           /* base spellcasting penalty */
-       int spelheal;           /* penalty (-bonus) for healing spells */
-       int spelshld;           /* penalty for wearing any shield */
-       int spelarmr;           /* penalty for wearing metal armour */
-       int spelstat;           /* which stat (A_) is used */
-       int spelspec;           /* spell (SPE_) the class excels at */
-       int spelsbon;           /* penalty (-bonus) for that spell */
-
-       /*** Properties in variable-length arrays ***/
-       /* intrinsics (see attrib.c) */
-       /* initial inventory (see u_init.c) */
-       /* skills (see u_init.c) */
-
-       /*** Don't forget to add... ***/
-       /* quest leader, guardians, nemesis (monst.c) */
-       /* quest artifact (artilist.h) */
-       /* quest dungeon definition (dat/Xyz.dat) */
-       /* quest text (dat/quest.txt) */
-       /* dictionary entries (dat/data.bas) */
+    /*** Strings that name various things ***/
+    struct RoleName name;    /* the role's name (from u_init.c) */
+    struct RoleName rank[9]; /* names for experience levels (from botl.c) */
+    const char *lgod, *ngod, *cgod; /* god names (from pray.c) */
+    const char *filecode;           /* abbreviation for use in file names */
+    const char *homebase; /* quest leader's location (from questpgr.c) */
+    const char *intermed; /* quest intermediate goal (from questpgr.c) */
+
+    /*** Indices of important monsters and objects ***/
+    short malenum, /* index (PM_) as a male (botl.c) */
+        femalenum, /* ...or as a female (NON_PM == same) */
+        petnum,    /* PM_ of preferred pet (NON_PM == random) */
+        ldrnum,    /* PM_ of quest leader (questpgr.c) */
+        guardnum,  /* PM_ of quest guardians (questpgr.c) */
+        neminum,   /* PM_ of quest nemesis (questpgr.c) */
+        enemy1num, /* specific quest enemies (NON_PM == random) */
+        enemy2num;
+    char enemy1sym, /* quest enemies by class (S_) */
+        enemy2sym;
+    short questarti; /* index (ART_) of quest artifact (questpgr.c) */
+
+    /*** Bitmasks ***/
+    short allow;             /* bit mask of allowed variations */
+#define ROLE_RACEMASK 0x0ff8 /* allowable races */
+#define ROLE_GENDMASK 0xf000 /* allowable genders */
+#define ROLE_MALE 0x1000
+#define ROLE_FEMALE 0x2000
+#define ROLE_NEUTER 0x4000
+#define ROLE_ALIGNMASK AM_MASK /* allowable alignments */
+#define ROLE_LAWFUL AM_LAWFUL
+#define ROLE_NEUTRAL AM_NEUTRAL
+#define ROLE_CHAOTIC AM_CHAOTIC
+
+    /*** Attributes (from attrib.c and exper.c) ***/
+    xchar attrbase[A_MAX];    /* lowest initial attributes */
+    xchar attrdist[A_MAX];    /* distribution of initial attributes */
+    struct RoleAdvance hpadv; /* hit point advancement */
+    struct RoleAdvance enadv; /* energy advancement */
+    xchar xlev;               /* cutoff experience level */
+    xchar initrecord;         /* initial alignment record */
+
+    /*** Spell statistics (from spell.c) ***/
+    int spelbase; /* base spellcasting penalty */
+    int spelheal; /* penalty (-bonus) for healing spells */
+    int spelshld; /* penalty for wearing any shield */
+    int spelarmr; /* penalty for wearing metal armour */
+    int spelstat; /* which stat (A_) is used */
+    int spelspec; /* spell (SPE_) the class excels at */
+    int spelsbon; /* penalty (-bonus) for that spell */
+
+    /*** Properties in variable-length arrays ***/
+    /* intrinsics (see attrib.c) */
+    /* initial inventory (see u_init.c) */
+    /* skills (see u_init.c) */
+
+    /*** Don't forget to add... ***/
+    /* quest leader, guardians, nemesis (monst.c) */
+    /* quest artifact (artilist.h) */
+    /* quest dungeon definition (dat/Xyz.dat) */
+    /* quest text (dat/quest.txt) */
+    /* dictionary entries (dat/data.bas) */
 };
 
-extern const struct Role roles[];      /* table of available roles */
+extern const struct Role roles[]; /* table of available roles */
 extern struct Role urole;
-#define Role_if(X)     (urole.malenum == (X))
-#define Role_switch    (urole.malenum)
+#define Role_if(X) (urole.malenum == (X))
+#define Role_switch (urole.malenum)
 
 /* used during initialization for race, gender, and alignment
    as well as for character class */
-#define ROLE_NONE      (-1)
-#define ROLE_RANDOM    (-2)
+#define ROLE_NONE (-1)
+#define ROLE_RANDOM (-2)
 
 /*** Unified structure specifying race information ***/
 
 struct Race {
-       /*** Strings that name various things ***/
-       const char *noun;       /* noun ("human", "elf") */
-       const char *adj;        /* adjective ("human", "elven") */
-       const char *coll;       /* collective ("humanity", "elvenkind") */
-       const char *filecode;   /* code for filenames */
-       struct RoleName individual; /* individual as a noun ("man", "elf") */
-
-       /*** Indices of important monsters and objects ***/
-       short malenum,          /* PM_ as a male monster */
-             femalenum,        /* ...or as a female (NON_PM == same) */
-             mummynum,         /* PM_ as a mummy */
-             zombienum;        /* PM_ as a zombie */
-
-       /*** Bitmasks ***/
-       short allow;            /* bit mask of allowed variations */
-       short selfmask,         /* your own race's bit mask */
-             lovemask,         /* bit mask of always peaceful */
-             hatemask;         /* bit mask of always hostile */
-
-       /*** Attributes ***/
-       xchar attrmin[A_MAX];   /* minimum allowable attribute */
-       xchar attrmax[A_MAX];   /* maximum allowable attribute */
-       struct RoleAdvance hpadv; /* hit point advancement */
-       struct RoleAdvance enadv; /* energy advancement */
-#if 0  /* DEFERRED */
+    /*** Strings that name various things ***/
+    const char *noun;           /* noun ("human", "elf") */
+    const char *adj;            /* adjective ("human", "elven") */
+    const char *coll;           /* collective ("humanity", "elvenkind") */
+    const char *filecode;       /* code for filenames */
+    struct RoleName individual; /* individual as a noun ("man", "elf") */
+
+    /*** Indices of important monsters and objects ***/
+    short malenum, /* PM_ as a male monster */
+        femalenum, /* ...or as a female (NON_PM == same) */
+        mummynum,  /* PM_ as a mummy */
+        zombienum; /* PM_ as a zombie */
+
+    /*** Bitmasks ***/
+    short allow;    /* bit mask of allowed variations */
+    short selfmask, /* your own race's bit mask */
+        lovemask,   /* bit mask of always peaceful */
+        hatemask;   /* bit mask of always hostile */
+
+    /*** Attributes ***/
+    xchar attrmin[A_MAX];     /* minimum allowable attribute */
+    xchar attrmax[A_MAX];     /* maximum allowable attribute */
+    struct RoleAdvance hpadv; /* hit point advancement */
+    struct RoleAdvance enadv; /* energy advancement */
+#if 0                         /* DEFERRED */
        int   nv_range;         /* night vision range */
        int   xray_range;       /* X-ray vision range */
 #endif
 
-       /*** Properties in variable-length arrays ***/
-       /* intrinsics (see attrib.c) */
+    /*** Properties in variable-length arrays ***/
+    /* intrinsics (see attrib.c) */
 
-       /*** Don't forget to add... ***/
-       /* quest leader, guardians, nemesis (monst.c) */
-       /* quest dungeon definition (dat/Xyz.dat) */
-       /* quest text (dat/quest.txt) */
-       /* dictionary entries (dat/data.bas) */
+    /*** Don't forget to add... ***/
+    /* quest leader, guardians, nemesis (monst.c) */
+    /* quest dungeon definition (dat/Xyz.dat) */
+    /* quest text (dat/quest.txt) */
+    /* dictionary entries (dat/data.bas) */
 };
 
-extern const struct Race races[];      /* Table of available races */
+extern const struct Race races[]; /* Table of available races */
 extern struct Race urace;
-#define Race_if(X)     (urace.malenum == (X))
-#define Race_switch    (urace.malenum)
+#define Race_if(X) (urace.malenum == (X))
+#define Race_switch (urace.malenum)
 
 /*** Unified structure specifying gender information ***/
 struct Gender {
-       const char *adj;        /* male/female/neuter */
-       const char *he;         /* he/she/it */
-       const char *him;        /* him/her/it */
-       const char *his;        /* his/her/its */
-       const char *filecode;   /* file code */
-       short allow;            /* equivalent ROLE_ mask */
+    const char *adj;      /* male/female/neuter */
+    const char *he;       /* he/she/it */
+    const char *him;      /* him/her/it */
+    const char *his;      /* his/her/its */
+    const char *filecode; /* file code */
+    short allow;          /* equivalent ROLE_ mask */
 };
-#define ROLE_GENDERS   2       /* number of permitted player genders */
-                               /* increment to 3 if you allow neuter roles */
-
-extern const struct Gender genders[];  /* table of available genders */
-#define uhe()  (genders[flags.female ? 1 : 0].he)
-#define uhim() (genders[flags.female ? 1 : 0].him)
-#define uhis() (genders[flags.female ? 1 : 0].his)
-#define mhe(mtmp)      (genders[pronoun_gender(mtmp)].he)
-#define mhim(mtmp)     (genders[pronoun_gender(mtmp)].him)
-#define mhis(mtmp)     (genders[pronoun_gender(mtmp)].his)
+#define ROLE_GENDERS 2 /* number of permitted player genders */
+/* increment to 3 if you allow neuter roles */
 
+extern const struct Gender genders[]; /* table of available genders */
+#define uhe() (genders[flags.female ? 1 : 0].he)
+#define uhim() (genders[flags.female ? 1 : 0].him)
+#define uhis() (genders[flags.female ? 1 : 0].his)
+#define mhe(mtmp) (genders[pronoun_gender(mtmp)].he)
+#define mhim(mtmp) (genders[pronoun_gender(mtmp)].him)
+#define mhis(mtmp) (genders[pronoun_gender(mtmp)].his)
 
 /*** Unified structure specifying alignment information ***/
 struct Align {
-       const char *noun;       /* law/balance/chaos */
-       const char *adj;        /* lawful/neutral/chaotic */
-       const char *filecode;   /* file code */
-       short allow;            /* equivalent ROLE_ mask */
-       aligntyp value;         /* equivalent A_ value */
+    const char *noun;     /* law/balance/chaos */
+    const char *adj;      /* lawful/neutral/chaotic */
+    const char *filecode; /* file code */
+    short allow;          /* equivalent ROLE_ mask */
+    aligntyp value;       /* equivalent A_ value */
 };
-#define ROLE_ALIGNS    3       /* number of permitted player alignments */
-
-extern const struct Align aligns[];    /* table of available alignments */
+#define ROLE_ALIGNS 3 /* number of permitted player alignments */
 
+extern const struct Align aligns[]; /* table of available alignments */
 
 /*** Information about the player ***/
 struct you {
-       xchar ux, uy;
-       schar dx, dy, dz;       /* direction of move (or zap or ... ) */
-       schar di;               /* direction of FF */
-       xchar tx, ty;           /* destination of travel */
-       xchar ux0, uy0;         /* initial position FF */
-       d_level uz, uz0;        /* your level on this and the previous turn */
-       d_level utolev;         /* level monster teleported you to, or uz */
-       uchar utotype;          /* bitmask of goto_level() flags for utolev */
-       boolean umoved;         /* changed map location (post-move) */
-       int last_str_turn;      /* 0: none, 1: half turn, 2: full turn */
-                               /* +: turn right, -: turn left */
-       int ulevel;             /* 1 to MAXULEV */
-       int ulevelmax;
-       unsigned utrap;         /* trap timeout */
-       unsigned utraptype;     /* defined if utrap nonzero */
-#define TT_BEARTRAP    0
-#define TT_PIT         1
-#define TT_WEB         2
-#define TT_LAVA                3
-#define TT_INFLOOR     4
-#define TT_BURIEDBALL  5
-       char    urooms[5];      /* rooms (roomno + 3) occupied now */
-       char    urooms0[5];     /* ditto, for previous position */
-       char    uentered[5];    /* rooms (roomno + 3) entered this turn */
-       char    ushops[5];      /* shop rooms (roomno + 3) occupied now */
-       char    ushops0[5];     /* ditto, for previous position */
-       char    ushops_entered[5]; /* ditto, shops entered this turn */
-       char    ushops_left[5]; /* ditto, shops exited this turn */
-
-       int      uhunger;       /* refd only in eat.c and shk.c */
-       unsigned uhs;           /* hunger state - see eat.c */
-
-       struct prop uprops[LAST_PROP+1];
-
-       unsigned umconf;
-       Bitfield(usick_type,2);
+    xchar ux, uy;
+    schar dx, dy, dz;  /* direction of move (or zap or ... ) */
+    schar di;          /* direction of FF */
+    xchar tx, ty;      /* destination of travel */
+    xchar ux0, uy0;    /* initial position FF */
+    d_level uz, uz0;   /* your level on this and the previous turn */
+    d_level utolev;    /* level monster teleported you to, or uz */
+    uchar utotype;     /* bitmask of goto_level() flags for utolev */
+    boolean umoved;    /* changed map location (post-move) */
+    int last_str_turn; /* 0: none, 1: half turn, 2: full turn */
+                       /* +: turn right, -: turn left */
+    int ulevel;        /* 1 to MAXULEV */
+    int ulevelmax;
+    unsigned utrap;     /* trap timeout */
+    unsigned utraptype; /* defined if utrap nonzero */
+#define TT_BEARTRAP 0
+#define TT_PIT 1
+#define TT_WEB 2
+#define TT_LAVA 3
+#define TT_INFLOOR 4
+#define TT_BURIEDBALL 5
+    char urooms[5];         /* rooms (roomno + 3) occupied now */
+    char urooms0[5];        /* ditto, for previous position */
+    char uentered[5];       /* rooms (roomno + 3) entered this turn */
+    char ushops[5];         /* shop rooms (roomno + 3) occupied now */
+    char ushops0[5];        /* ditto, for previous position */
+    char ushops_entered[5]; /* ditto, shops entered this turn */
+    char ushops_left[5];    /* ditto, shops exited this turn */
+
+    int uhunger;  /* refd only in eat.c and shk.c */
+    unsigned uhs; /* hunger state - see eat.c */
+
+    struct prop uprops[LAST_PROP + 1];
+
+    unsigned umconf;
+    Bitfield(usick_type, 2);
 #define SICK_VOMITABLE 0x01
 #define SICK_NONVOMITABLE 0x02
 #define SICK_ALL 0x03
 
-       /* These ranges can never be more than MAX_RANGE (vision.h). */
-       int nv_range;           /* current night vision range */
-       int xray_range;         /* current xray vision range */
-
-       /*
       * These variables are valid globally only when punished and blind.
       */
-#define BC_BALL  0x01  /* bit mask for ball  in 'bc_felt' below */
-#define BC_CHAIN 0x02  /* bit mask for chain in 'bc_felt' below */
-       int bglyph;     /* glyph under the ball */
-       int cglyph;     /* glyph under the chain */
-       int bc_order;   /* ball & chain order [see bc_order() in ball.c] */
-       int bc_felt;    /* mask for ball/chain being felt */
-
-       int umonster;                   /* hero's "real" monster num */
-       int umonnum;                    /* current monster number */
-
-       int mh, mhmax, mtimedone;       /* for polymorph-self */
-       struct attribs  macurr,         /* for monster attribs */
-                       mamax;          /* for monster attribs */
-       int ulycn;                      /* lycanthrope type */
-
-       unsigned ucreamed;
-       unsigned uswldtim;              /* time you have been swallowed */
-
-       Bitfield(uswallow,1);           /* true if swallowed */
-       Bitfield(uinwater,1);           /* if you're currently in water (only
-                                          underwater possible currently) */
-       Bitfield(uundetected,1);        /* if you're a hiding monster/piercer */
-       Bitfield(mfemale,1);            /* saved human value of flags.female */
-       Bitfield(uinvulnerable,1);      /* you're invulnerable (praying) */
-       Bitfield(uburied,1);            /* you're buried */
-       Bitfield(uedibility,1);         /* blessed food detection; sense unsafe food */
-       /* 1 free bit! */
-
-       unsigned udg_cnt;               /* how long you have been demigod */
-       struct u_achieve uachieve;      /* achievements */
-       struct u_event  uevent;         /* certain events have happened */
-       struct u_have   uhave;          /* you're carrying special objects */
-       struct u_conduct uconduct;      /* KMH, conduct */
-       struct u_roleplay uroleplay;
-       struct attribs  acurr,          /* your current attributes (eg. str)*/
-                       aexe,           /* for gain/loss via "exercise" */
-                       abon,           /* your bonus attributes (eg. str) */
-                       amax,           /* your max attributes (eg. str) */
-                       atemp,          /* used for temporary loss/gain */
-                       atime;          /* used for loss/gain countdown */
-       align   ualign;                 /* character alignment */
-#define CONVERT                2
-#define A_ORIGINAL     1
-#define A_CURRENT      0
-       aligntyp ualignbase[CONVERT];   /* for ualign conversion record */
-       schar uluck, moreluck;          /* luck and luck bonus */
-#define Luck   (u.uluck + u.moreluck)
-#define LUCKADD                3       /* added value when carrying luck stone */
-#define LUCKMAX                10
-#define LUCKMIN                (-10)
-       schar   uhitinc;
-       schar   udaminc;
-       schar   uac;
-       uchar   uspellprot;             /* protection by SPE_PROTECTION */
-       uchar   usptime;                /* #moves until uspellprot-- */
-       uchar   uspmtime;               /* #moves between uspellprot-- */
-       int     uhp,uhpmax;
-       int     uen, uenmax;            /* magical energy - M. Stephenson */
-       xchar uhpinc[MAXULEV], ueninc[MAXULEV]; /* increases from level gain */
-       int ugangr;                     /* if the gods are angry at you */
-       int ugifts;                     /* number of artifacts bestowed */
-       int ublessed, ublesscnt;        /* blessing/duration from #pray */
-       long    umoney0;
-       long    uspare1;
-       long    uexp, urexp;
-       long    ucleansed;      /* to record moves when player was cleansed */
-       long    usleep;         /* sleeping; monstermove you last started */
-       int uinvault;
-       struct monst *ustuck;
-       struct monst *usteed;
-       long ugallop;
-       int urideturns;
-       int     umortality;             /* how many times you died */
-       int ugrave_arise; /* you die and become something aside from a ghost */
-       int     weapon_slots;           /* unused skill slots */
-       int     skills_advanced;                /* # of advances made so far */
-       xchar   skill_record[P_SKILL_LIMIT];    /* skill advancements */
-       struct skills weapon_skills[P_NUM_SKILLS];
-       boolean twoweap;                /* KMH -- Using two-weapon combat */
-
-};     /* end of `struct you' */
+    /* These ranges can never be more than MAX_RANGE (vision.h). */
+    int nv_range;   /* current night vision range */
+    int xray_range; /* current xray vision range */
+
+/*
+ * These variables are valid globally only when punished and blind.
+ */
+#define BC_BALL 0x01  /* bit mask for ball  in 'bc_felt' below */
+#define BC_CHAIN 0x02 /* bit mask for chain in 'bc_felt' below */
+    int bglyph;       /* glyph under the ball */
+    int cglyph;       /* glyph under the chain */
+    int bc_order;     /* ball & chain order [see bc_order() in ball.c] */
+    int bc_felt;      /* mask for ball/chain being felt */
+
+    int umonster; /* hero's "real" monster num */
+    int umonnum;  /* current monster number */
+
+    int mh, mhmax, mtimedone; /* for polymorph-self */
+    struct attribs macurr,    /* for monster attribs */
+        mamax;                /* for monster attribs */
+    int ulycn;                /* lycanthrope type */
+
+    unsigned ucreamed;
+    unsigned uswldtim; /* time you have been swallowed */
+
+    Bitfield(uswallow, 1);      /* true if swallowed */
+    Bitfield(uinwater, 1);      /* if you're currently in water (only
+                                   underwater possible currently) */
+    Bitfield(uundetected, 1);   /* if you're a hiding monster/piercer */
+    Bitfield(mfemale, 1);       /* saved human value of flags.female */
+    Bitfield(uinvulnerable, 1); /* you're invulnerable (praying) */
+    Bitfield(uburied, 1);       /* you're buried */
+    Bitfield(uedibility, 1); /* blessed food detection; sense unsafe food */
+    /* 1 free bit! */
+
+    unsigned udg_cnt;          /* how long you have been demigod */
+    struct u_achieve uachieve; /* achievements */
+    struct u_event uevent;     /* certain events have happened */
+    struct u_have uhave;       /* you're carrying special objects */
+    struct u_conduct uconduct; /* KMH, conduct */
+    struct u_roleplay uroleplay;
+    struct attribs acurr, /* your current attributes (eg. str)*/
+        aexe,             /* for gain/loss via "exercise" */
+        abon,             /* your bonus attributes (eg. str) */
+        amax,             /* your max attributes (eg. str) */
+        atemp,            /* used for temporary loss/gain */
+        atime;            /* used for loss/gain countdown */
+    align ualign;         /* character alignment */
+#define CONVERT 2
+#define A_ORIGINAL 1
+#define A_CURRENT 0
+    aligntyp ualignbase[CONVERT]; /* for ualign conversion record */
+    schar uluck, moreluck;        /* luck and luck bonus */
+#define Luck (u.uluck + u.moreluck)
+#define LUCKADD 3 /* added value when carrying luck stone */
+#define LUCKMAX 10
+#define LUCKMIN (-10)
+    schar uhitinc;
+    schar udaminc;
+    schar uac;
+    uchar uspellprot; /* protection by SPE_PROTECTION */
+    uchar usptime;    /* #moves until uspellprot-- */
+    uchar uspmtime;   /* #moves between uspellprot-- */
+    int uhp, uhpmax;
+    int uen, uenmax; /* magical energy - M. Stephenson */
+    xchar uhpinc[MAXULEV], ueninc[MAXULEV]; /* increases from level gain */
+    int ugangr;                             /* if the gods are angry at you */
+    int ugifts;                             /* number of artifacts bestowed */
+    int ublessed, ublesscnt;                /* blessing/duration from #pray */
+    long umoney0;
+    long uspare1;
+    long uexp, urexp;
+    long ucleansed; /* to record moves when player was cleansed */
+    long usleep;    /* sleeping; monstermove you last started */
+    int uinvault;
+    struct monst *ustuck;
+    struct monst *usteed;
+    long ugallop;
+    int urideturns;
+    int umortality;      /* how many times you died */
+    int ugrave_arise;    /* you die and become something aside from a ghost */
+    int weapon_slots;    /* unused skill slots */
+    int skills_advanced; /* # of advances made so far */
+    xchar skill_record[P_SKILL_LIMIT]; /* skill advancements */
+    struct skills weapon_skills[P_NUM_SKILLS];
+    boolean twoweap; /* KMH -- Using two-weapon combat */
+
+}; /* end of `struct you' */
 
 #define Upolyd (u.umonnum != u.umonster)
 
-#endif /* YOU_H */
+#endif /* YOU_H */
index f78b172822cb0b724438ce6d29da410caad97530..14a92b1ba29776f4172d230eb68a0025a7739a14 100644 (file)
@@ -11,7 +11,6 @@
 #include "mondata.h"
 #include "pm.h"
 
-
 /* KMH, intrinsics patch.
  * Reorganized and rewritten for >32-bit properties.
  * HXxx refers to intrinsic bitfields while in human form.
  * intrinsic conferred by being polymorphed.]
  */
 
-
-#define maybe_polyd(if_so,if_not)      (Upolyd ? (if_so) : (if_not))
-
+#define maybe_polyd(if_so, if_not) (Upolyd ? (if_so) : (if_not))
 
 /*** Resistances to troubles ***/
 /* With intrinsics and extrinsics */
-#define HFire_resistance       u.uprops[FIRE_RES].intrinsic
-#define EFire_resistance       u.uprops[FIRE_RES].extrinsic
-#define Fire_resistance                (HFire_resistance || EFire_resistance)
+#define HFire_resistance u.uprops[FIRE_RES].intrinsic
+#define EFire_resistance u.uprops[FIRE_RES].extrinsic
+#define Fire_resistance (HFire_resistance || EFire_resistance)
 
-#define HCold_resistance       u.uprops[COLD_RES].intrinsic
-#define ECold_resistance       u.uprops[COLD_RES].extrinsic
-#define Cold_resistance                (HCold_resistance || ECold_resistance)
+#define HCold_resistance u.uprops[COLD_RES].intrinsic
+#define ECold_resistance u.uprops[COLD_RES].extrinsic
+#define Cold_resistance (HCold_resistance || ECold_resistance)
 
-#define HSleep_resistance      u.uprops[SLEEP_RES].intrinsic
-#define ESleep_resistance      u.uprops[SLEEP_RES].extrinsic
-#define Sleep_resistance       (HSleep_resistance || ESleep_resistance)
+#define HSleep_resistance u.uprops[SLEEP_RES].intrinsic
+#define ESleep_resistance u.uprops[SLEEP_RES].extrinsic
+#define Sleep_resistance (HSleep_resistance || ESleep_resistance)
 
-#define HDisint_resistance     u.uprops[DISINT_RES].intrinsic
-#define EDisint_resistance     u.uprops[DISINT_RES].extrinsic
-#define Disint_resistance      (HDisint_resistance || EDisint_resistance)
+#define HDisint_resistance u.uprops[DISINT_RES].intrinsic
+#define EDisint_resistance u.uprops[DISINT_RES].extrinsic
+#define Disint_resistance (HDisint_resistance || EDisint_resistance)
 
-#define HShock_resistance      u.uprops[SHOCK_RES].intrinsic
-#define EShock_resistance      u.uprops[SHOCK_RES].extrinsic
-#define Shock_resistance       (HShock_resistance || EShock_resistance)
+#define HShock_resistance u.uprops[SHOCK_RES].intrinsic
+#define EShock_resistance u.uprops[SHOCK_RES].extrinsic
+#define Shock_resistance (HShock_resistance || EShock_resistance)
 
-#define HPoison_resistance     u.uprops[POISON_RES].intrinsic
-#define EPoison_resistance     u.uprops[POISON_RES].extrinsic
-#define Poison_resistance      (HPoison_resistance || EPoison_resistance)
+#define HPoison_resistance u.uprops[POISON_RES].intrinsic
+#define EPoison_resistance u.uprops[POISON_RES].extrinsic
+#define Poison_resistance (HPoison_resistance || EPoison_resistance)
 
-#define HDrain_resistance      u.uprops[DRAIN_RES].intrinsic
-#define EDrain_resistance      u.uprops[DRAIN_RES].extrinsic
-#define Drain_resistance       (HDrain_resistance || EDrain_resistance)
+#define HDrain_resistance u.uprops[DRAIN_RES].intrinsic
+#define EDrain_resistance u.uprops[DRAIN_RES].extrinsic
+#define Drain_resistance (HDrain_resistance || EDrain_resistance)
 
 /* Hxxx due to FROMFORM only */
-#define HAntimagic             u.uprops[ANTIMAGIC].intrinsic
-#define EAntimagic             u.uprops[ANTIMAGIC].extrinsic
-#define Antimagic              (HAntimagic || EAntimagic)
+#define HAntimagic u.uprops[ANTIMAGIC].intrinsic
+#define EAntimagic u.uprops[ANTIMAGIC].extrinsic
+#define Antimagic (HAntimagic || EAntimagic)
 
-#define HAcid_resistance       u.uprops[ACID_RES].intrinsic
-#define EAcid_resistance       u.uprops[ACID_RES].extrinsic
-#define Acid_resistance                (HAcid_resistance || EAcid_resistance)
+#define HAcid_resistance u.uprops[ACID_RES].intrinsic
+#define EAcid_resistance u.uprops[ACID_RES].extrinsic
+#define Acid_resistance (HAcid_resistance || EAcid_resistance)
 
-#define HStone_resistance      u.uprops[STONE_RES].intrinsic
-#define EStone_resistance      u.uprops[STONE_RES].extrinsic
-#define Stone_resistance       (HStone_resistance || EStone_resistance)
+#define HStone_resistance u.uprops[STONE_RES].intrinsic
+#define EStone_resistance u.uprops[STONE_RES].extrinsic
+#define Stone_resistance (HStone_resistance || EStone_resistance)
 
 /* Intrinsics only */
-#define HSick_resistance       u.uprops[SICK_RES].intrinsic
-#define Sick_resistance                (HSick_resistance || \
-                                defends(AD_DISE,uwep))
-
-#define Invulnerable           u.uprops[INVULNERABLE].intrinsic    /* [Tom] */
+#define HSick_resistance u.uprops[SICK_RES].intrinsic
+#define Sick_resistance (HSick_resistance || defends(AD_DISE, uwep))
 
+#define Invulnerable u.uprops[INVULNERABLE].intrinsic /* [Tom] */
 
 /*** Troubles ***/
 /* Pseudo-property */
-#define Punished               (uball != 0)
+#define Punished (uball != 0)
 
 /* Those implemented solely as timeouts (we use just intrinsic) */
-#define HStun                  u.uprops[STUNNED].intrinsic
-#define Stunned                        HStun
-
-#define HConfusion             u.uprops[CONFUSION].intrinsic
-#define Confusion              HConfusion
-
-#define Blinded                        u.uprops[BLINDED].intrinsic
-#define Blindfolded            (ublindf && ublindf->otyp != LENSES)
-               /* ...means blind because of a cover */
-#define Blind  ((u.uroleplay.blind || Blinded || Blindfolded || !haseyes(youmonst.data)) && \
-                !(ublindf && ublindf->oartifact == ART_EYES_OF_THE_OVERWORLD))
-               /* ...the Eyes operate even when you really are blind
-                   or don't have any eyes */
-#define Blindfolded_only (!Blinded && haseyes(youmonst.data) && Blindfolded && \
-                !(ublindf && ublindf->oartifact == ART_EYES_OF_THE_OVERWORLD))
-               /* blind because of a blindfold, and *only* that */
-
-#define Sick                   u.uprops[SICK].intrinsic
-#define Stoned                 u.uprops[STONED].intrinsic
-#define Strangled              u.uprops[STRANGLED].intrinsic
-#define Vomiting               u.uprops[VOMITING].intrinsic
-#define Glib                   u.uprops[GLIB].intrinsic
-#define Slimed                 u.uprops[SLIMED].intrinsic      /* [Tom] */
+#define HStun u.uprops[STUNNED].intrinsic
+#define Stunned HStun
+
+#define HConfusion u.uprops[CONFUSION].intrinsic
+#define Confusion HConfusion
+
+#define Blinded u.uprops[BLINDED].intrinsic
+#define Blindfolded (ublindf && ublindf->otyp != LENSES)
+/* ...means blind because of a cover */
+#define Blind                                     \
+    ((u.uroleplay.blind || Blinded || Blindfolded \
+      || !haseyes(youmonst.data))                 \
+     && !(ublindf && ublindf->oartifact == ART_EYES_OF_THE_OVERWORLD))
+/* ...the Eyes operate even when you really are blind
+    or don't have any eyes */
+#define Blindfolded_only                               \
+    (!Blinded && haseyes(youmonst.data) && Blindfolded \
+     && !(ublindf && ublindf->oartifact == ART_EYES_OF_THE_OVERWORLD))
+/* blind because of a blindfold, and *only* that */
+
+#define Sick u.uprops[SICK].intrinsic
+#define Stoned u.uprops[STONED].intrinsic
+#define Strangled u.uprops[STRANGLED].intrinsic
+#define Vomiting u.uprops[VOMITING].intrinsic
+#define Glib u.uprops[GLIB].intrinsic
+#define Slimed u.uprops[SLIMED].intrinsic /* [Tom] */
 
 /* Hallucination is solely a timeout */
-#define HHallucination         u.uprops[HALLUC].intrinsic
-#define HHalluc_resistance     u.uprops[HALLUC_RES].intrinsic
-#define EHalluc_resistance     u.uprops[HALLUC_RES].extrinsic
-#define Halluc_resistance      (HHalluc_resistance || EHalluc_resistance)
-#define Hallucination          (HHallucination && !Halluc_resistance)
+#define HHallucination u.uprops[HALLUC].intrinsic
+#define HHalluc_resistance u.uprops[HALLUC_RES].intrinsic
+#define EHalluc_resistance u.uprops[HALLUC_RES].extrinsic
+#define Halluc_resistance (HHalluc_resistance || EHalluc_resistance)
+#define Hallucination (HHallucination && !Halluc_resistance)
 
 /* Timeout, plus a worn mask */
-#define HDeaf                  u.uprops[DEAF].intrinsic
-#define EDeaf                  u.uprops[DEAF].extrinsic
-#define Deaf                   (HDeaf || EDeaf)
+#define HDeaf u.uprops[DEAF].intrinsic
+#define EDeaf u.uprops[DEAF].extrinsic
+#define Deaf (HDeaf || EDeaf)
 
-#define HFumbling              u.uprops[FUMBLING].intrinsic
-#define EFumbling              u.uprops[FUMBLING].extrinsic
-#define Fumbling               (HFumbling || EFumbling)
+#define HFumbling u.uprops[FUMBLING].intrinsic
+#define EFumbling u.uprops[FUMBLING].extrinsic
+#define Fumbling (HFumbling || EFumbling)
 
-#define HWounded_legs          u.uprops[WOUNDED_LEGS].intrinsic
-#define EWounded_legs          u.uprops[WOUNDED_LEGS].extrinsic
-#define Wounded_legs           (HWounded_legs || EWounded_legs)
+#define HWounded_legs u.uprops[WOUNDED_LEGS].intrinsic
+#define EWounded_legs u.uprops[WOUNDED_LEGS].extrinsic
+#define Wounded_legs (HWounded_legs || EWounded_legs)
 
-#define HSleepy                        u.uprops[SLEEPY].intrinsic
-#define ESleepy                        u.uprops[SLEEPY].extrinsic
-#define Sleepy                 (HSleepy || ESleepy)
-
-#define HHunger                        u.uprops[HUNGER].intrinsic
-#define EHunger                        u.uprops[HUNGER].extrinsic
-#define Hunger                 (HHunger || EHunger)
+#define HSleepy u.uprops[SLEEPY].intrinsic
+#define ESleepy u.uprops[SLEEPY].extrinsic
+#define Sleepy (HSleepy || ESleepy)
 
+#define HHunger u.uprops[HUNGER].intrinsic
+#define EHunger u.uprops[HUNGER].extrinsic
+#define Hunger (HHunger || EHunger)
 
 /*** Vision and senses ***/
-#define HSee_invisible         u.uprops[SEE_INVIS].intrinsic
-#define ESee_invisible         u.uprops[SEE_INVIS].extrinsic
-#define See_invisible          (HSee_invisible || ESee_invisible)
+#define HSee_invisible u.uprops[SEE_INVIS].intrinsic
+#define ESee_invisible u.uprops[SEE_INVIS].extrinsic
+#define See_invisible (HSee_invisible || ESee_invisible)
 
-#define HTelepat               u.uprops[TELEPAT].intrinsic
-#define ETelepat               u.uprops[TELEPAT].extrinsic
-#define Blind_telepat          (HTelepat || ETelepat)
-#define Unblind_telepat                (ETelepat)
+#define HTelepat u.uprops[TELEPAT].intrinsic
+#define ETelepat u.uprops[TELEPAT].extrinsic
+#define Blind_telepat (HTelepat || ETelepat)
+#define Unblind_telepat (ETelepat)
 
-#define HWarning               u.uprops[WARNING].intrinsic
-#define EWarning               u.uprops[WARNING].extrinsic
-#define Warning                        (HWarning || EWarning)
+#define HWarning u.uprops[WARNING].intrinsic
+#define EWarning u.uprops[WARNING].extrinsic
+#define Warning (HWarning || EWarning)
 
 /* Warning for a specific type of monster */
-#define HWarn_of_mon           u.uprops[WARN_OF_MON].intrinsic
-#define EWarn_of_mon           u.uprops[WARN_OF_MON].extrinsic
-#define Warn_of_mon            (HWarn_of_mon || EWarn_of_mon)
-
-#define HUndead_warning                u.uprops[WARN_UNDEAD].intrinsic
-#define Undead_warning         (HUndead_warning)
+#define HWarn_of_mon u.uprops[WARN_OF_MON].intrinsic
+#define EWarn_of_mon u.uprops[WARN_OF_MON].extrinsic
+#define Warn_of_mon (HWarn_of_mon || EWarn_of_mon)
 
-#define HSearching             u.uprops[SEARCHING].intrinsic
-#define ESearching             u.uprops[SEARCHING].extrinsic
-#define Searching              (HSearching || ESearching)
+#define HUndead_warning u.uprops[WARN_UNDEAD].intrinsic
+#define Undead_warning (HUndead_warning)
 
-#define HClairvoyant           u.uprops[CLAIRVOYANT].intrinsic
-#define EClairvoyant           u.uprops[CLAIRVOYANT].extrinsic
-#define BClairvoyant           u.uprops[CLAIRVOYANT].blocked
-#define Clairvoyant            ((HClairvoyant || EClairvoyant) && \
-                                !BClairvoyant)
+#define HSearching u.uprops[SEARCHING].intrinsic
+#define ESearching u.uprops[SEARCHING].extrinsic
+#define Searching (HSearching || ESearching)
 
-#define HInfravision           u.uprops[INFRAVISION].intrinsic
-#define EInfravision           u.uprops[INFRAVISION].extrinsic
-#define Infravision            (HInfravision || EInfravision)
+#define HClairvoyant u.uprops[CLAIRVOYANT].intrinsic
+#define EClairvoyant u.uprops[CLAIRVOYANT].extrinsic
+#define BClairvoyant u.uprops[CLAIRVOYANT].blocked
+#define Clairvoyant ((HClairvoyant || EClairvoyant) && !BClairvoyant)
 
-#define HDetect_monsters       u.uprops[DETECT_MONSTERS].intrinsic
-#define EDetect_monsters       u.uprops[DETECT_MONSTERS].extrinsic
-#define Detect_monsters                (HDetect_monsters || EDetect_monsters)
+#define HInfravision u.uprops[INFRAVISION].intrinsic
+#define EInfravision u.uprops[INFRAVISION].extrinsic
+#define Infravision (HInfravision || EInfravision)
 
+#define HDetect_monsters u.uprops[DETECT_MONSTERS].intrinsic
+#define EDetect_monsters u.uprops[DETECT_MONSTERS].extrinsic
+#define Detect_monsters (HDetect_monsters || EDetect_monsters)
 
 /*** Appearance and behavior ***/
-#define Adornment              u.uprops[ADORNED].extrinsic
+#define Adornment u.uprops[ADORNED].extrinsic
 
-#define HInvis                 u.uprops[INVIS].intrinsic
-#define EInvis                 u.uprops[INVIS].extrinsic
-#define BInvis                 u.uprops[INVIS].blocked
-#define Invis                  ((HInvis || EInvis) && !BInvis)
-#define Invisible              (Invis && !See_invisible)
-               /* Note: invisibility also hides inventory and steed */
+#define HInvis u.uprops[INVIS].intrinsic
+#define EInvis u.uprops[INVIS].extrinsic
+#define BInvis u.uprops[INVIS].blocked
+#define Invis ((HInvis || EInvis) && !BInvis)
+#define Invisible (Invis && !See_invisible)
+/* Note: invisibility also hides inventory and steed */
 
-#define EDisplaced             u.uprops[DISPLACED].extrinsic
-#define Displaced              EDisplaced
+#define EDisplaced u.uprops[DISPLACED].extrinsic
+#define Displaced EDisplaced
 
-#define HStealth               u.uprops[STEALTH].intrinsic
-#define EStealth               u.uprops[STEALTH].extrinsic
-#define BStealth               u.uprops[STEALTH].blocked
-#define Stealth                        ((HStealth || EStealth) && !BStealth)
+#define HStealth u.uprops[STEALTH].intrinsic
+#define EStealth u.uprops[STEALTH].extrinsic
+#define BStealth u.uprops[STEALTH].blocked
+#define Stealth ((HStealth || EStealth) && !BStealth)
 
-#define HAggravate_monster     u.uprops[AGGRAVATE_MONSTER].intrinsic
-#define EAggravate_monster     u.uprops[AGGRAVATE_MONSTER].extrinsic
-#define Aggravate_monster      (HAggravate_monster || EAggravate_monster)
-
-#define HConflict              u.uprops[CONFLICT].intrinsic
-#define EConflict              u.uprops[CONFLICT].extrinsic
-#define Conflict               (HConflict || EConflict)
+#define HAggravate_monster u.uprops[AGGRAVATE_MONSTER].intrinsic
+#define EAggravate_monster u.uprops[AGGRAVATE_MONSTER].extrinsic
+#define Aggravate_monster (HAggravate_monster || EAggravate_monster)
 
+#define HConflict u.uprops[CONFLICT].intrinsic
+#define EConflict u.uprops[CONFLICT].extrinsic
+#define Conflict (HConflict || EConflict)
 
 /*** Transportation ***/
-#define HJumping               u.uprops[JUMPING].intrinsic
-#define EJumping               u.uprops[JUMPING].extrinsic
-#define Jumping                        (HJumping || EJumping)
-
-#define HTeleportation         u.uprops[TELEPORT].intrinsic
-#define ETeleportation         u.uprops[TELEPORT].extrinsic
-#define Teleportation          (HTeleportation || ETeleportation)
-
-#define HTeleport_control      u.uprops[TELEPORT_CONTROL].intrinsic
-#define ETeleport_control      u.uprops[TELEPORT_CONTROL].extrinsic
-#define Teleport_control       (HTeleport_control || ETeleport_control)
-
-#define HLevitation            u.uprops[LEVITATION].intrinsic
-#define ELevitation            u.uprops[LEVITATION].extrinsic
-#define BLevitation            u.uprops[LEVITATION].blocked
-#define Levitation             ((HLevitation || ELevitation) && !BLevitation)
-       /* Can't touch surface, can't go under water; overrides all others */
-#define Lev_at_will            (((HLevitation & I_SPECIAL) != 0L || \
-                                (ELevitation & W_ARTI) != 0L) && \
-                                (HLevitation & ~(I_SPECIAL|TIMEOUT)) == 0L && \
-                                (ELevitation & ~W_ARTI) == 0L)
-
-#define HFlying                        u.uprops[FLYING].intrinsic
-#define EFlying                        u.uprops[FLYING].extrinsic
-#define BFlying                        u.uprops[FLYING].blocked
-# define Flying                        ((HFlying || EFlying || \
-                                 (u.usteed && is_flyer(u.usteed->data))) && \
-                                !BFlying)
-       /* May touch surface; does not override any others */
-
-#define Wwalking               (u.uprops[WWALKING].extrinsic && \
-                                !Is_waterlevel(&u.uz))
-       /* Don't get wet, can't go under water; overrides others except levitation */
-       /* Wwalking is meaningless on water level */
-
-#define HSwimming              u.uprops[SWIMMING].intrinsic
-#define ESwimming              u.uprops[SWIMMING].extrinsic    /* [Tom] */
-# define Swimming              (HSwimming || ESwimming || \
-                                (u.usteed && is_swimmer(u.usteed->data)))
-       /* Get wet, don't go under water unless if amphibious */
-
-#define HMagical_breathing     u.uprops[MAGICAL_BREATHING].intrinsic
-#define EMagical_breathing     u.uprops[MAGICAL_BREATHING].extrinsic
-#define Amphibious             (HMagical_breathing || EMagical_breathing || \
-                                amphibious(youmonst.data))
-       /* Get wet, may go under surface */
-
-#define Breathless             (HMagical_breathing || EMagical_breathing || \
-                                breathless(youmonst.data))
-
-#define Underwater             (u.uinwater)
+#define HJumping u.uprops[JUMPING].intrinsic
+#define EJumping u.uprops[JUMPING].extrinsic
+#define Jumping (HJumping || EJumping)
+
+#define HTeleportation u.uprops[TELEPORT].intrinsic
+#define ETeleportation u.uprops[TELEPORT].extrinsic
+#define Teleportation (HTeleportation || ETeleportation)
+
+#define HTeleport_control u.uprops[TELEPORT_CONTROL].intrinsic
+#define ETeleport_control u.uprops[TELEPORT_CONTROL].extrinsic
+#define Teleport_control (HTeleport_control || ETeleport_control)
+
+#define HLevitation u.uprops[LEVITATION].intrinsic
+#define ELevitation u.uprops[LEVITATION].extrinsic
+#define BLevitation u.uprops[LEVITATION].blocked
+#define Levitation ((HLevitation || ELevitation) && !BLevitation)
+/* Can't touch surface, can't go under water; overrides all others */
+#define Lev_at_will                                                    \
+    (((HLevitation & I_SPECIAL) != 0L || (ELevitation & W_ARTI) != 0L) \
+     && (HLevitation & ~(I_SPECIAL | TIMEOUT)) == 0L                   \
+     && (ELevitation & ~W_ARTI) == 0L)
+
+#define HFlying u.uprops[FLYING].intrinsic
+#define EFlying u.uprops[FLYING].extrinsic
+#define BFlying u.uprops[FLYING].blocked
+#define Flying                                                      \
+    ((HFlying || EFlying || (u.usteed && is_flyer(u.usteed->data))) \
+     && !BFlying)
+/* May touch surface; does not override any others */
+
+#define Wwalking (u.uprops[WWALKING].extrinsic && !Is_waterlevel(&u.uz))
+/* Don't get wet, can't go under water; overrides others except levitation */
+/* Wwalking is meaningless on water level */
+
+#define HSwimming u.uprops[SWIMMING].intrinsic
+#define ESwimming u.uprops[SWIMMING].extrinsic /* [Tom] */
+#define Swimming \
+    (HSwimming || ESwimming || (u.usteed && is_swimmer(u.usteed->data)))
+/* Get wet, don't go under water unless if amphibious */
+
+#define HMagical_breathing u.uprops[MAGICAL_BREATHING].intrinsic
+#define EMagical_breathing u.uprops[MAGICAL_BREATHING].extrinsic
+#define Amphibious \
+    (HMagical_breathing || EMagical_breathing || amphibious(youmonst.data))
+/* Get wet, may go under surface */
+
+#define Breathless \
+    (HMagical_breathing || EMagical_breathing || breathless(youmonst.data))
+
+#define Underwater (u.uinwater)
 /* Note that Underwater and u.uinwater are both used in code.
    The latter form is for later implementation of other in-water
    states, like swimming, wading, etc. */
 
-#define HPasses_walls          u.uprops[PASSES_WALLS].intrinsic
-#define EPasses_walls          u.uprops[PASSES_WALLS].extrinsic
-#define Passes_walls           (HPasses_walls || EPasses_walls)
-
+#define HPasses_walls u.uprops[PASSES_WALLS].intrinsic
+#define EPasses_walls u.uprops[PASSES_WALLS].extrinsic
+#define Passes_walls (HPasses_walls || EPasses_walls)
 
 /*** Physical attributes ***/
-#define HSlow_digestion                u.uprops[SLOW_DIGESTION].intrinsic
-#define ESlow_digestion                u.uprops[SLOW_DIGESTION].extrinsic
-#define Slow_digestion         (HSlow_digestion || ESlow_digestion)  /* KMH */
+#define HSlow_digestion u.uprops[SLOW_DIGESTION].intrinsic
+#define ESlow_digestion u.uprops[SLOW_DIGESTION].extrinsic
+#define Slow_digestion (HSlow_digestion || ESlow_digestion) /* KMH */
 
-#define HHalf_spell_damage     u.uprops[HALF_SPDAM].intrinsic
-#define EHalf_spell_damage     u.uprops[HALF_SPDAM].extrinsic
-#define Half_spell_damage      (HHalf_spell_damage || EHalf_spell_damage)
+#define HHalf_spell_damage u.uprops[HALF_SPDAM].intrinsic
+#define EHalf_spell_damage u.uprops[HALF_SPDAM].extrinsic
+#define Half_spell_damage (HHalf_spell_damage || EHalf_spell_damage)
 
 /*
  * Physical damage
  *
  * Damage is NOT physical damage if (in order of priority):
  * 1. it already qualifies for some other special category
- *    for which a special resistance already exists in the game 
+ *    for which a special resistance already exists in the game
  *    including: cold, fire, shock, acid, and magic.
  *    Note that fire is extended to include all non-acid forms of
  *    burning, even boiling water since that is already dealt with
- *    by fire resistance, and in most or all cases is caused by fire. 
- * 2. it doesn't leave a mark. Marks include destruction of, or 
- *    damage to, an internal organ (including the brain), 
+ *    by fire resistance, and in most or all cases is caused by fire.
+ * 2. it doesn't leave a mark. Marks include destruction of, or
+ *    damage to, an internal organ (including the brain),
  *    lacerations, bruises, crushed body parts, bleeding.
  *
  * The following were evaluated and determined _NOT_ to be
  * susceptable to Half_physical_damage protection:
- *   Being caught in a fireball                      [fire damage] 
- *   Sitting in lava                                 [lava damage] 
- *   Thrown potion (acid)                            [acid damage] 
- *   Splattered burning oil from thrown potion       [fire damage] 
- *   Mixing water and acid                           [acid damage] 
- *   Molten lava (entering or being splashed)        [lava damage] 
- *   boiling water from a sink                       [fire damage] 
- *   Fire traps                                      [fire damage] 
- *   Scrolls of fire (confused and otherwise)        [fire damage] 
- *   Alchemical explosion                            [not physical] 
- *   System shock                                    [shock damage] 
- *   Bag of holding explosion                        [magical] 
- *   Being undead-turned by your god                 [magical] 
- *   Level-drain                                     [magical] 
- *   Magical explosion of a magic trap               [magical] 
- *   Sitting on a throne with a bad effect           [magical] 
- *   Contaminated water from a sink                  [poison/sickness] 
- *   Contact-poisoned spellbooks                     [poison/sickness] 
- *   Eating acidic/poisonous/mildly-old corpses      [poison/sickness] 
- *   Eating a poisoned weapon while polyselfed       [poison/sickness] 
- *   Engulfing a zombie or mummy (AT_ENGL in hmonas) [poison/sickness] 
- *   Quaffed potions of sickness, lit oil, acid      [poison/sickness] 
- *   Pyrolisks' fiery gaze                           [fire damage] 
- *   Any passive attack                              [most don't qualify] 
+ *   Being caught in a fireball                      [fire damage]
+ *   Sitting in lava                                 [lava damage]
+ *   Thrown potion (acid)                            [acid damage]
+ *   Splattered burning oil from thrown potion       [fire damage]
+ *   Mixing water and acid                           [acid damage]
+ *   Molten lava (entering or being splashed)        [lava damage]
+ *   boiling water from a sink                       [fire damage]
+ *   Fire traps                                      [fire damage]
+ *   Scrolls of fire (confused and otherwise)        [fire damage]
+ *   Alchemical explosion                            [not physical]
+ *   System shock                                    [shock damage]
+ *   Bag of holding explosion                        [magical]
+ *   Being undead-turned by your god                 [magical]
+ *   Level-drain                                     [magical]
+ *   Magical explosion of a magic trap               [magical]
+ *   Sitting on a throne with a bad effect           [magical]
+ *   Contaminated water from a sink                  [poison/sickness]
+ *   Contact-poisoned spellbooks                     [poison/sickness]
+ *   Eating acidic/poisonous/mildly-old corpses      [poison/sickness]
+ *   Eating a poisoned weapon while polyselfed       [poison/sickness]
+ *   Engulfing a zombie or mummy (AT_ENGL in hmonas) [poison/sickness]
+ *   Quaffed potions of sickness, lit oil, acid      [poison/sickness]
+ *   Pyrolisks' fiery gaze                           [fire damage]
+ *   Any passive attack                              [most don't qualify]
  */
 
-#define HHalf_physical_damage  u.uprops[HALF_PHDAM].intrinsic
-#define EHalf_physical_damage  u.uprops[HALF_PHDAM].extrinsic
-#define Half_physical_damage   (HHalf_physical_damage || EHalf_physical_damage)
+#define HHalf_physical_damage u.uprops[HALF_PHDAM].intrinsic
+#define EHalf_physical_damage u.uprops[HALF_PHDAM].extrinsic
+#define Half_physical_damage (HHalf_physical_damage || EHalf_physical_damage)
 
-#define HRegeneration          u.uprops[REGENERATION].intrinsic
-#define ERegeneration          u.uprops[REGENERATION].extrinsic
-#define Regeneration           (HRegeneration || ERegeneration)
+#define HRegeneration u.uprops[REGENERATION].intrinsic
+#define ERegeneration u.uprops[REGENERATION].extrinsic
+#define Regeneration (HRegeneration || ERegeneration)
 
-#define HEnergy_regeneration   u.uprops[ENERGY_REGENERATION].intrinsic
-#define EEnergy_regeneration   u.uprops[ENERGY_REGENERATION].extrinsic
-#define Energy_regeneration    (HEnergy_regeneration || EEnergy_regeneration)
+#define HEnergy_regeneration u.uprops[ENERGY_REGENERATION].intrinsic
+#define EEnergy_regeneration u.uprops[ENERGY_REGENERATION].extrinsic
+#define Energy_regeneration (HEnergy_regeneration || EEnergy_regeneration)
 
-#define HProtection            u.uprops[PROTECTION].intrinsic
-#define EProtection            u.uprops[PROTECTION].extrinsic
-#define Protection             (HProtection || EProtection)
+#define HProtection u.uprops[PROTECTION].intrinsic
+#define EProtection u.uprops[PROTECTION].extrinsic
+#define Protection (HProtection || EProtection)
 
 #define HProtection_from_shape_changers \
-                               u.uprops[PROT_FROM_SHAPE_CHANGERS].intrinsic
+    u.uprops[PROT_FROM_SHAPE_CHANGERS].intrinsic
 #define EProtection_from_shape_changers \
-                               u.uprops[PROT_FROM_SHAPE_CHANGERS].extrinsic
+    u.uprops[PROT_FROM_SHAPE_CHANGERS].extrinsic
 #define Protection_from_shape_changers \
-                               (HProtection_from_shape_changers || \
-                                EProtection_from_shape_changers)
+    (HProtection_from_shape_changers || EProtection_from_shape_changers)
 
-#define HPolymorph             u.uprops[POLYMORPH].intrinsic
-#define EPolymorph             u.uprops[POLYMORPH].extrinsic
-#define Polymorph              (HPolymorph || EPolymorph)
+#define HPolymorph u.uprops[POLYMORPH].intrinsic
+#define EPolymorph u.uprops[POLYMORPH].extrinsic
+#define Polymorph (HPolymorph || EPolymorph)
 
-#define HPolymorph_control     u.uprops[POLYMORPH_CONTROL].intrinsic
-#define EPolymorph_control     u.uprops[POLYMORPH_CONTROL].extrinsic
-#define Polymorph_control      (HPolymorph_control || EPolymorph_control)
+#define HPolymorph_control u.uprops[POLYMORPH_CONTROL].intrinsic
+#define EPolymorph_control u.uprops[POLYMORPH_CONTROL].extrinsic
+#define Polymorph_control (HPolymorph_control || EPolymorph_control)
 
-#define HUnchanging            u.uprops[UNCHANGING].intrinsic
-#define EUnchanging            u.uprops[UNCHANGING].extrinsic
-#define Unchanging             (HUnchanging || EUnchanging)    /* KMH */
+#define HUnchanging u.uprops[UNCHANGING].intrinsic
+#define EUnchanging u.uprops[UNCHANGING].extrinsic
+#define Unchanging (HUnchanging || EUnchanging) /* KMH */
 
-#define HFast                  u.uprops[FAST].intrinsic
-#define EFast                  u.uprops[FAST].extrinsic
-#define Fast                   (HFast || EFast)
-#define Very_fast              ((HFast & ~INTRINSIC) || EFast)
+#define HFast u.uprops[FAST].intrinsic
+#define EFast u.uprops[FAST].extrinsic
+#define Fast (HFast || EFast)
+#define Very_fast ((HFast & ~INTRINSIC) || EFast)
 
-#define HReflecting            u.uprops[REFLECTING].intrinsic
-#define EReflecting            u.uprops[REFLECTING].extrinsic
-#define Reflecting             (HReflecting || EReflecting)
+#define HReflecting u.uprops[REFLECTING].intrinsic
+#define EReflecting u.uprops[REFLECTING].extrinsic
+#define Reflecting (HReflecting || EReflecting)
 
-#define Free_action            u.uprops[FREE_ACTION].extrinsic /* [Tom] */
+#define Free_action u.uprops[FREE_ACTION].extrinsic /* [Tom] */
 
-#define Fixed_abil             u.uprops[FIXED_ABIL].extrinsic  /* KMH */
+#define Fixed_abil u.uprops[FIXED_ABIL].extrinsic /* KMH */
 
-#define Lifesaved              u.uprops[LIFESAVED].extrinsic
+#define Lifesaved u.uprops[LIFESAVED].extrinsic
 
 /*
  * Some pseudo-properties.
 
 /* unconscious() includes u.usleep but not is_fainted(); the multi test is
    redundant but allows the function calls to be skipped most of the time */
-#define Unaware                (multi < 0 && (unconscious() || is_fainted()))
+#define Unaware (multi < 0 && (unconscious() || is_fainted()))
 
-#define Hate_silver    (u.ulycn >= LOW_PM || hates_silver(youmonst.data))
+#define Hate_silver (u.ulycn >= LOW_PM || hates_silver(youmonst.data))
 
 #endif /* YOUPROP_H */
index daeb0108205f18ec7082934d32f7bba3d7d22e5f..fb7405fb753bdb3f94dd5d5af38bcde4c0b7f5c4 100644 (file)
  * around with the rest of the #includes.  --AMC
  */
 #if defined(_DCC) && !defined(HACK_H)
-# define ptrdiff_t     ptrdiff_t_
-# define size_t                size_t_
-# define wchar_t       wchar_t_
+#define ptrdiff_t ptrdiff_t_
+#define size_t size_t_
+#define wchar_t wchar_t_
 #endif
 #include <ctype.h>
-#undef  strcmpi
+#undef strcmpi
 #include <string.h>
 #include <errno.h>
 #if defined(_DCC) && !defined(HACK_H)
-# undef ptrdiff_t
-# undef size_t
-# undef wchar_T
+#undef ptrdiff_t
+#undef size_t
+#undef wchar_T
 #endif
 
-#ifdef  IDCMP_CLOSEWINDOW
-# ifndef       INTUI_NEW_LOOK
-#  define      INTUI_NEW_LOOK
-# endif
+#ifdef IDCMP_CLOSEWINDOW
+#ifndef INTUI_NEW_LOOK
+#define INTUI_NEW_LOOK
+#endif
 #endif
 
 #ifndef HACK_H
 #include "winami.h"
 #include "func_tab.h"
 
-#ifndef        CLIPPING
+#ifndef CLIPPING
 CLIPPING must be defined for the AMIGA version
 #endif
 
-#undef LI
-#undef CO
+#undef LI
+#undef CO
 
 /*#define   TOPL_GETLINE       /* Don't use a window for getlin() */
 /*#define   WINDOW_YN          /* Use a window for y/n questions */
@@ -85,22 +85,22 @@ CLIPPING must be defined for the AMIGA version
 #endif
 
 /* kludge - see amirip for why */
-# undef red
-# undef green
-# undef blue
+#undef red
+#undef green
+#undef blue
 #ifdef _DCC
-# include <clib/graphics_protos.h>
+#include <clib/graphics_protos.h>
 #else
-# include <proto/graphics.h>
+#include <proto/graphics.h>
 #endif
 
 #ifdef _DCC
-# define __asm         /* DICE doesn't like __asm */
+#define __asm /* DICE doesn't like __asm */
 #endif
 
 #ifndef __SASC_60
 #undef index
-# define index strchr
+#define index strchr
 #endif
 
 #ifdef _DCC
@@ -110,24 +110,24 @@ CLIPPING must be defined for the AMIGA version
 #endif
 #endif
 
-#ifdef SHAREDLIB
+#ifdef SHAREDLIB
 #include "NH:sys/amiga/lib/libmacs.h"
 #endif
 
-#ifdef INTUI_NEW_LOOK
+#ifdef INTUI_NEW_LOOK
 #include <utility/tagitem.h>
 #endif
 
-#define        WINVERS_AMII    (strcmp("amii",windowprocs.name)==0)
-#define        WINVERS_AMIV    (strcmp("amitile",windowprocs.name)==0)
-#define        WINVERS_AMIT    (strcmp("amitty",windowprocs.name)==0)
+#define WINVERS_AMII (strcmp("amii", windowprocs.name) == 0)
+#define WINVERS_AMIV (strcmp("amitile", windowprocs.name) == 0)
+#define WINVERS_AMIT (strcmp("amitty", windowprocs.name) == 0)
 
 /* cw->data[x] contains 2 characters worth of special information.  These
  * characters are stored at the offsets as described here.
  */
-#define VATTR    0     /* Video attribute is in this slot */
-#define SEL_ITEM  1    /* If this is a select item, slot is 1 else 0 */
-#define SOFF     2     /* The string starts here.  */
+#define VATTR 0    /* Video attribute is in this slot */
+#define SEL_ITEM 1 /* If this is a select item, slot is 1 else 0 */
+#define SOFF 2     /* The string starts here.  */
 
 #undef NULL
 #define NULL 0L
@@ -138,68 +138,68 @@ CLIPPING must be defined for the AMIGA version
  * don't have that version number in the 1.2 ROM.
  */
 
-#define LIBRARY_FONT_VERSION   34L
-#define LIBRARY_TILE_VERSION   37L
+#define LIBRARY_FONT_VERSION 34L
+#define LIBRARY_TILE_VERSION 37L
 
-/* These values are just sorta suggestions in use, but are minimum requirements
+/* These values are just sorta suggestions in use, but are minimum
+ * requirements
  * in reality...
  */
-#define WINDOWHEIGHT   192
-#define SCREENHEIGHT   200
-#define WIDTH          640
+#define WINDOWHEIGHT 192
+#define SCREENHEIGHT 200
+#define WIDTH 640
 
 /* This character is a solid block (cursor) in Hack.font */
-#define CURSOR_CHAR    0x90
+#define CURSOR_CHAR 0x90
 
-#define FONTHEIGHT     8
-#define FONTWIDTH      8
-#define FONTBASELINE   8
+#define FONTHEIGHT 8
+#define FONTWIDTH 8
+#define FONTBASELINE 8
 
-#define MAPFTWIDTH     8
-#define MAPFTHEIGHT    8
-#define MAPFTBASELN    6
+#define MAPFTWIDTH 8
+#define MAPFTHEIGHT 8
+#define MAPFTBASELN 6
 
 /* If Compiling with the "New Look", redefine these now */
-#ifdef  INTUI_NEW_LOOK
+#ifdef INTUI_NEW_LOOK
 #define NewWindow ExtNewWindow
 #define NewScreen ExtNewScreen
 #endif
 
-#define         SIZEOF_DISKNAME 8
-
-#define CSI     '\x9b'
-#define NO_CHAR     -1
-#define RAWHELP     0x5F    /* Rawkey code of the HELP key */
-
-
-#define C_BLACK                0
-#define C_WHITE                1
-#define C_BROWN                (WINVERS_AMIV ? 11 : 2)
-#define C_CYAN         (WINVERS_AMIV ? 2  : 3)
-#define C_GREEN                (WINVERS_AMIV ? 5  : 4)
-#define C_MAGENTA      (WINVERS_AMIV ? 10 : 5)
-#define C_BLUE         (WINVERS_AMIV ? 4  : 6)
-#define C_RED          7
-#define C_ORANGE       3
-#define C_GREY         6
-#define C_LTGREEN      8
-#define C_YELLOW       9
-#define C_GREYBLUE     12
-#define C_LTBROWN      13
-#define C_LTGREY       14
-#define C_PEACH                15
+#define SIZEOF_DISKNAME 8
+
+#define CSI '\x9b'
+#define NO_CHAR -1
+#define RAWHELP 0x5F /* Rawkey code of the HELP key */
+
+#define C_BLACK 0
+#define C_WHITE 1
+#define C_BROWN (WINVERS_AMIV ? 11 : 2)
+#define C_CYAN (WINVERS_AMIV ? 2 : 3)
+#define C_GREEN (WINVERS_AMIV ? 5 : 4)
+#define C_MAGENTA (WINVERS_AMIV ? 10 : 5)
+#define C_BLUE (WINVERS_AMIV ? 4 : 6)
+#define C_RED 7
+#define C_ORANGE 3
+#define C_GREY 6
+#define C_LTGREEN 8
+#define C_YELLOW 9
+#define C_GREYBLUE 12
+#define C_LTBROWN 13
+#define C_LTGREY 14
+#define C_PEACH 15
 
 /* Structure describing tile files */
 struct PDAT
 {
-    long nplanes;              /* Depth of images */
-    long pbytes;               /* Bytes in a plane of data */
-    long across;               /* Number of tiles across */
-    long down;                 /* Number of tiles down */
-    long npics;                        /* Number of pictures in this file */
-    long xsize;                        /* X-size of a tile */
-    long ysize;                        /* Y-size of a-tile */
+    long nplanes; /* Depth of images */
+    long pbytes;  /* Bytes in a plane of data */
+    long across;  /* Number of tiles across */
+    long down;    /* Number of tiles down */
+    long npics;   /* Number of pictures in this file */
+    long xsize;   /* X-size of a tile */
+    long ysize;   /* Y-size of a-tile */
 };
 
-#undef MAXCOLORS
-#define        MAXCOLORS       256
+#undef MAXCOLORS
+#define MAXCOLORS 256
index 6996fcfb0020a9209e2200a216423bb8d40ce415..50038a511c4f531bea79c01e9a59aa326aabaa5c 100644 (file)
@@ -6,7 +6,7 @@
 
 extern int reclip;
 
-#ifdef CLIPPING
+#ifdef CLIPPING
 extern int clipping;
 extern int clipx;
 extern int clipy;
@@ -20,14 +20,15 @@ extern int LI;
 extern int scrollmsg;
 extern int alwaysinvent;
 
-#ifndef        SHAREDLIB
-extern unsigned short amii_defpens[ 20 ];
-extern struct amii_DisplayDesc *amiIDisplay;   /* the Amiga Intuition descriptor */
+#ifndef SHAREDLIB
+extern unsigned short amii_defpens[20];
+extern struct amii_DisplayDesc
+    *amiIDisplay; /* the Amiga Intuition descriptor */
 extern struct window_procs amii_procs;
 extern struct window_procs amiv_procs;
-extern unsigned short amii_initmap[ AMII_MAXCOLORS ];
-extern unsigned short amiv_init_map[ AMII_MAXCOLORS ];
-extern unsigned short amii_init_map[ AMII_MAXCOLORS ];
+extern unsigned short amii_initmap[AMII_MAXCOLORS];
+extern unsigned short amiv_init_map[AMII_MAXCOLORS];
+extern unsigned short amii_init_map[AMII_MAXCOLORS];
 extern int bigscreen;
 extern int amii_numcolors;
 extern long amii_scrnmode;
@@ -35,7 +36,7 @@ extern winid amii_rawprwin;
 extern struct Screen *HackScreen;
 extern char Initialized;
 /* These have already been defined elsewhere (and some are conflicting)
- * ... going ... going once ... going twice .... 
+ * ... going ... going once ... going twice ....
  * extern const char *roles[];
  * extern struct Library *ConsoleDevice;
  * extern char toplines[ TBUFSZ ];
@@ -79,7 +80,7 @@ extern struct IOStdReq ConsoleIO;
 extern struct MsgPort *HackPort;
 
 extern int txwidth, txheight, txbaseline;
-#ifdef SUPERBITMAP_MAP
+#ifdef SUPERBITMAP_MAP
 extern struct BitMap amii_vbm;
 #endif
 
@@ -95,10 +96,9 @@ extern struct Gadget MsgScroll;
 
 extern struct TagItem tags[];
 
-extern struct win_setup
-{
+extern struct win_setup {
     struct NewWindow newwin;
-    UWORD offx,offy,maxrow,rows,maxcol,cols;   /* CHECK TYPES */
+    UWORD offx, offy, maxrow, rows, maxcol, cols; /* CHECK TYPES */
 } new_wins[];
 
 extern UWORD scrnpens[];
@@ -109,32 +109,36 @@ extern struct TagItem scrntags[];
 extern struct NewScreen NewHackScreen;
 
 extern int topl_addspace;
-extern char spaces[ 76 ];
-extern int wincnt;   /* # of nh windows opened */
+extern char spaces[76];
+extern int wincnt; /* # of nh windows opened */
 extern struct Rectangle lastinvent, lastmsg;
 
 typedef struct {
-       UWORD w, h;
-       WORD x, y;
-       UBYTE nPlanes;
-       UBYTE masking;
-       UBYTE compression;
-       UBYTE reserved1;
-       UWORD transparentColor;
-       UBYTE xAspect, yAspect;
-       WORD pageWidth, pageHeight;
+    UWORD w, h;
+    WORD x, y;
+    UBYTE nPlanes;
+    UBYTE masking;
+    UBYTE compression;
+    UBYTE reserved1;
+    UWORD transparentColor;
+    UBYTE xAspect, yAspect;
+    WORD pageWidth, pageHeight;
 } BitMapHeader;
 
-typedef enum {COL_MAZE_BRICK,COL_MAZE_STONE,COL_MAZE_HEAT,COL_MAZE_WOOD} MazeType;
+typedef enum {
+    COL_MAZE_BRICK,
+    COL_MAZE_STONE,
+    COL_MAZE_HEAT,
+    COL_MAZE_WOOD
+} MazeType;
 extern struct PDAT pictdata;
 extern struct Hook fillhook;
 extern struct TagItem wintags[];
-#ifndef        SHAREDLIB
+#ifndef SHAREDLIB
 #ifndef __GNUC__
-void __asm LayerFillHook(
-    register __a0 struct Hook *hk,
-    register __a2 struct RastPort *rp,
-    register __a1 struct FillParams *fp );
+void __asm LayerFillHook(register __a0 struct Hook *hk,
+                         register __a2 struct RastPort *rp,
+                         register __a1 struct FillParams *fp);
 #else
 #ifdef __PPC__
 struct EmulLibEntry LayerFillHook;
index 35bbc9725a2bc3c154098030ed94a0d207ade651..1f10499fadf72aeb574f8f705d043523e77cfacc 100644 (file)
 /* NetHack may be freely redistributed.  See license for details. */
 
 /* winreq.c */
-void EditColor ( void );
-void EditClipping( void );
-void DrawCol ( struct Window *w , int idx , UWORD *colors );
-void DispCol ( struct Window *w , int idx , UWORD *colors );
-void amii_change_color( int, long, int );
-char *amii_get_color_string( );
-void amii_getlin ( const char *prompt , char *bufp );
-void getlind ( const char *prompt , char *bufp , const char *dflt );
-char *amii_get_color_string( void );
-int filecopy( char *from, char *to );
-char *basename( char *str );
-char *dirname( char *str );
+void EditColor(void);
+void EditClipping(void);
+void DrawCol(struct Window *w, int idx, UWORD *colors);
+void DispCol(struct Window *w, int idx, UWORD *colors);
+void amii_change_color(int, long, int);
+char *amii_get_color_string();
+void amii_getlin(const char *prompt, char *bufp);
+void getlind(const char *prompt, char *bufp, const char *dflt);
+char *amii_get_color_string(void);
+int filecopy(char *from, char *to);
+char *basename(char *str);
+char *dirname(char *str);
 
 /* winstr.c */
-void amii_putstr ( winid window , int attr , const char *str );
-void outmore ( struct amii_WinDesc *cw );
-void outsubstr ( struct amii_WinDesc *cw , char *str , int len, int fudge );
-void amii_putsym ( winid st , int i , int y , CHAR_P c );
-void amii_addtopl ( const char *s );
-void TextSpaces ( struct RastPort *rp , int nr );
-void amii_remember_topl ( void );
-long CountLines( winid );
-long FindLine( winid, int );
-int amii_doprev_message ( void );
-void flushIDCMP( struct MsgPort * );
-int amii_msgborder( struct Window * );
-void amii_scrollmsg( register struct Window *w, register struct amii_WinDesc *cw );
+void amii_putstr(winid window, int attr, const char *str);
+void outmore(struct amii_WinDesc *cw);
+void outsubstr(struct amii_WinDesc *cw, char *str, int len, int fudge);
+void amii_putsym(winid st, int i, int y, CHAR_P c);
+void amii_addtopl(const char *s);
+void TextSpaces(struct RastPort *rp, int nr);
+void amii_remember_topl(void);
+long CountLines(winid);
+long FindLine(winid, int);
+int amii_doprev_message(void);
+void flushIDCMP(struct MsgPort *);
+int amii_msgborder(struct Window *);
+void amii_scrollmsg(register struct Window *w,
+                    register struct amii_WinDesc *cw);
 
 /* winkey.c */
-int amii_nh_poskey ( int *x , int *y , int *mod );
-int amii_nhgetch ( void );
-void amii_get_nh_event ( void );
-void amii_getret ( void );
+int amii_nh_poskey(int *x, int *y, int *mod);
+int amii_nhgetch(void);
+void amii_get_nh_event(void);
+void amii_getret(void);
 
 /* winmenu.c */
-void amii_start_menu ( winid window );
-void FDECL(amii_add_menu, (winid,int,const anything *,CHAR_P,CHAR_P,int,const char *,BOOLEAN_P));
+void amii_start_menu(winid window);
+void FDECL(amii_add_menu, (winid, int, const anything *, CHAR_P, CHAR_P, int,
+                           const char *, BOOLEAN_P));
 void FDECL(amii_end_menu, (winid, const char *));
 int FDECL(amii_select_menu, (winid, int, menu_item **));
-int DoMenuScroll ( int win , int blocking, int how, menu_item ** );
-void ReDisplayData ( winid win );
-void DisplayData ( winid win , int start );
-void SetPropInfo ( struct Window *win , struct Gadget *gad , long vis , long total , long top );
+int DoMenuScroll(int win, int blocking, int how, menu_item **);
+void ReDisplayData(winid win);
+void DisplayData(winid win, int start);
+void SetPropInfo(struct Window *win, struct Gadget *gad, long vis, long total,
+                 long top);
 
 /* amiwind.c */
-struct Window *OpenShWindow ( struct NewWindow *nw );
-void CloseShWindow ( struct Window *win );
-int ConvertKey ( struct IntuiMessage *message );
-int kbhit ( void );
-int kbhit ( void );
-int amikbhit ( void );
-int WindowGetchar ( void );
-WETYPE WindowGetevent ( void );
-void amii_cleanup ( void );
-#ifndef        SHAREDLIB
-void Abort ( long rc );
+struct Window *OpenShWindow(struct NewWindow *nw);
+void CloseShWindow(struct Window *win);
+int ConvertKey(struct IntuiMessage *message);
+int kbhit(void);
+int kbhit(void);
+int amikbhit(void);
+int WindowGetchar(void);
+WETYPE WindowGetevent(void);
+void amii_cleanup(void);
+#ifndef SHAREDLIB
+void Abort(long rc);
 #endif
-void CleanUp ( void );
-void flush_glyph_buffer ( struct Window *w );
-void amiga_print_glyph ( winid window , int color_index , int glyph );
-void start_glyphout ( winid window );
-void amii_end_glyphout ( winid window );
-struct NewWindow *DupNewWindow ( struct NewWindow *win );
-void FreeNewWindow ( struct NewWindow *win );
-void bell ( void );
-void amii_delay_output ( void );
-void amii_number_pad ( int state );
-#ifndef        SHAREDLIB
-void amiv_loadlib ( void );
-void amii_loadlib ( void );
+void CleanUp(void);
+void flush_glyph_buffer(struct Window *w);
+void amiga_print_glyph(winid window, int color_index, int glyph);
+void start_glyphout(winid window);
+void amii_end_glyphout(winid window);
+struct NewWindow *DupNewWindow(struct NewWindow *win);
+void FreeNewWindow(struct NewWindow *win);
+void bell(void);
+void amii_delay_output(void);
+void amii_number_pad(int state);
+#ifndef SHAREDLIB
+void amiv_loadlib(void);
+void amii_loadlib(void);
 #endif
-void preserve_icon( void );
-void clear_icon( void );
+void preserve_icon(void);
+void clear_icon(void);
 
 /* winfuncs.c */
-void amii_destroy_nhwindow ( winid win );
-int amii_create_nhwindow ( int type );
-void amii_init_nhwindows ( int *, char ** );
-void amii_setdrawpens( struct Window *, int type );
-void amii_sethipens( struct Window *, int type, int attr );
-void amii_setfillpens( struct Window *, int type );
-void amii_clear_nhwindow ( winid win );
-void dismiss_nhwindow ( winid win );
-void amii_exit_nhwindows ( const char *str );
-void amii_display_nhwindow ( winid win , boolean blocking );
-void amii_curs ( winid window , int x , int y );
-void kill_nhwindows ( int all );
-void amii_cl_end ( struct amii_WinDesc *cw , int i );
-void cursor_off ( winid window );
-void cursor_on ( winid window );
-void amii_suspend_nhwindows ( const char *str );
-void amii_resume_nhwindows ( void );
-void amii_bell ( void );
-void removetopl ( int cnt );
-void port_help ( void );
-void amii_print_glyph ( winid win , xchar x , xchar y , int glyph );
-void amii_raw_print ( const char *s );
-void amii_raw_print_bold ( const char *s );
-void amii_update_inventory ( void );
-void amii_mark_synch ( void );
-void amii_wait_synch ( void );
-void amii_setclipped ( void );
-void amii_cliparound ( int x , int y );
-void amii_set_text_font( char *font, int size );
-BitMapHeader ReadImageFiles( char **, struct BitMap **, char ** );
+void amii_destroy_nhwindow(winid win);
+int amii_create_nhwindow(int type);
+void amii_init_nhwindows(int *, char **);
+void amii_setdrawpens(struct Window *, int type);
+void amii_sethipens(struct Window *, int type, int attr);
+void amii_setfillpens(struct Window *, int type);
+void amii_clear_nhwindow(winid win);
+void dismiss_nhwindow(winid win);
+void amii_exit_nhwindows(const char *str);
+void amii_display_nhwindow(winid win, boolean blocking);
+void amii_curs(winid window, int x, int y);
+void kill_nhwindows(int all);
+void amii_cl_end(struct amii_WinDesc *cw, int i);
+void cursor_off(winid window);
+void cursor_on(winid window);
+void amii_suspend_nhwindows(const char *str);
+void amii_resume_nhwindows(void);
+void amii_bell(void);
+void removetopl(int cnt);
+void port_help(void);
+void amii_print_glyph(winid win, xchar x, xchar y, int glyph);
+void amii_raw_print(const char *s);
+void amii_raw_print_bold(const char *s);
+void amii_update_inventory(void);
+void amii_mark_synch(void);
+void amii_wait_synch(void);
+void amii_setclipped(void);
+void amii_cliparound(int x, int y);
+void amii_set_text_font(char *font, int size);
+BitMapHeader ReadImageFiles(char **, struct BitMap **, char **);
 BitMapHeader ReadTileImageFiles(void);
-void FreeImageFiles( char **, struct BitMap ** );
+void FreeImageFiles(char **, struct BitMap **);
 void FreeTileImageFiles();
 
 /* winami.c */
-#ifdef SHAREDLIB
-int __UserLibInit ( void );
-void __UserLibCleanup ( void );
+#ifdef SHAREDLIB
+int __UserLibInit(void);
+void __UserLibCleanup(void);
 #endif
-void amii_askname ( void );
-void amii_player_selection ( void );
-void RandomWindow ( char *name );
-int amii_get_ext_cmd ( void );
-char amii_yn_function ( const char *prompt , const char *resp , char def );
-char amii_yn_function ( const char *query , const char *resp , char def );
-void amii_display_file ( const char *fn , boolean complain );
-void SetBorder ( struct Gadget *gd );
-void *malloc ( register unsigned size );
-void free ( void *q );
+void amii_askname(void);
+void amii_player_selection(void);
+void RandomWindow(char *name);
+int amii_get_ext_cmd(void);
+char amii_yn_function(const char *prompt, const char *resp, char def);
+char amii_yn_function(const char *query, const char *resp, char def);
+void amii_display_file(const char *fn, boolean complain);
+void SetBorder(struct Gadget *gd);
+void *malloc(register unsigned size);
+void free(void *q);
 
-#ifdef SHAREDLIB
+#ifdef SHAREDLIB
 /* amilib.c */
-void amii_loadlib ( void );
-void amiv_loadlib ( void );
-void CleanUp ( void );
-void setup_librefs ( WinamiBASE *base );
+void amii_loadlib(void);
+void amiv_loadlib(void);
+void CleanUp(void);
+void setup_librefs(WinamiBASE *base);
 #else
-void Abort ( long rc );
+void Abort(long rc);
 #endif
 
 /* amirip.c */
-void FDECL(amii_outrip, ( winid tmpwin, int how, time_t when ));
+void FDECL(amii_outrip, (winid tmpwin, int how, time_t when));
 
 /* winchar.c */
 void SetMazeType(MazeType);
index 6b90650620590bea99b95f0664d251d70a2e6bb6..72df6f1fb158eb803314f9dedf018ac171211ac1 100644 (file)
@@ -6,61 +6,60 @@
 /*                                                                    */
 /*
  * pctiles.h - Definitions for PC graphical tile support
- *                                                  
+ *
  *Edit History:
  *     Initial Creation              M. Allison      93/10/30
  *
  */
 
 #ifdef USE_TILES
-#define NETHACK_PLANAR_TILEFILE "NetHack1.tib" /* Planar style tiles */
-#define NETHACK_PACKED_TILEFILE "NetHack2.tib" /* Packed style tiles */
+#define NETHACK_PLANAR_TILEFILE "NetHack1.tib"   /* Planar style tiles */
+#define NETHACK_PACKED_TILEFILE "NetHack2.tib"   /* Packed style tiles */
 #define NETHACK_OVERVIEW_TILEFILE "NetHacko.tib" /* thin overview tiles */
 
-#define ROWS_PER_TILE  TILE_Y
-#define COLS_PER_TILE   TILE_X
-#define EMPTY_TILE     -1
-#define TIBHEADER_SIZE 1024    /* Use this for size, allows expansion */
-#define PLANAR_STYLE   0
-#define PACKED_STYLE   1
-#define DJGPP_COMP     0
-#define MSC_COMP       1
-#define BC_COMP                2
-#define OTHER_COMP     10
+#define ROWS_PER_TILE TILE_Y
+#define COLS_PER_TILE TILE_X
+#define EMPTY_TILE -1
+#define TIBHEADER_SIZE 1024 /* Use this for size, allows expansion */
+#define PLANAR_STYLE 0
+#define PACKED_STYLE 1
+#define DJGPP_COMP 0
+#define MSC_COMP 1
+#define BC_COMP 2
+#define OTHER_COMP 10
 
 struct tibhdr_struct {
-       char  ident[80];        /* Identifying string           */
-       char  timestamp[26];    /* Ascii timestamp              */
-       char  tilestyle;        /* 0 = planar, 1 = pixel        */
-       char  compiler;         /* 0 = DJGPP, 1 = MSC, 2= BC etc. see above */
-       short tilecount;        /* number of tiles in file      */
-       short numcolors;        /* number of colors in palette  */
-       char  palette[256 * 3]; /* palette                      */
+    char ident[80];        /* Identifying string           */
+    char timestamp[26];    /* Ascii timestamp              */
+    char tilestyle;        /* 0 = planar, 1 = pixel        */
+    char compiler;         /* 0 = DJGPP, 1 = MSC, 2= BC etc. see above */
+    short tilecount;       /* number of tiles in file      */
+    short numcolors;       /* number of colors in palette  */
+    char palette[256 * 3]; /* palette                      */
 };
 
-
 /* Note on packed style tile file:
  * Each record consists of one of the following arrays:
  *     char packtile[TILE_Y][TILE_X];
  */
+
 extern void FDECL(CloseTileFile, (BOOLEAN_P));
-extern int  FDECL(OpenTileFile, (char *, BOOLEAN_P));
-extern int  FDECL(ReadTileFileHeader, (struct tibhdr_struct *, BOOLEAN_P));
+extern int FDECL(OpenTileFile, (char *, BOOLEAN_P));
+extern int FDECL(ReadTileFileHeader, (struct tibhdr_struct *, BOOLEAN_P));
 
-# ifdef PLANAR_FILE
-#  ifdef SCREEN_VGA
-extern int  FDECL(ReadPlanarTileFile,(int, struct planar_cell_struct **));
-extern int  FDECL(ReadPlanarTileFile_O,
-                       (int, struct overview_planar_cell_struct **));
-#  endif
-# endif
+#ifdef PLANAR_FILE
+#ifdef SCREEN_VGA
+extern int FDECL(ReadPlanarTileFile, (int, struct planar_cell_struct **));
+extern int FDECL(ReadPlanarTileFile_O,
+                 (int, struct overview_planar_cell_struct **));
+#endif
+#endif
 
-# ifdef PACKED_FILE
-extern int  FDECL(ReadPackedTileFile, (int, char (*)[TILE_X]));
-# endif
+#ifdef PACKED_FILE
+extern int FDECL(ReadPackedTileFile, (int, char (*)[TILE_X]));
+#endif
 
-extern short glyph2tile[MAX_GLYPH];      /* in tile.c (made from tilemap.c) */
+extern short glyph2tile[MAX_GLYPH]; /* in tile.c (made from tilemap.c) */
 
 #endif /* USE_TILES */
 
index 49da193e79bb3aa87217add4918a50ba8caf833a..a5c5224a45d45d27b8a403751a15a3027a07756d 100644 (file)
@@ -6,7 +6,7 @@
 /*                                                                  */
 /*
  * pcvideo.h - Hardware video support definitions and prototypes
- *                                                  
+ *
  *Edit History:
  *     Initial Creation              M. Allison      93/10/30
  *
 
 #include "portio.h"
 
-# ifdef SCREEN_BIOS
-#  if !defined(PC9800)
-# define MONO_CHECK            /* Video BIOS can do the check       */ 
-#  endif
-# endif
+#ifdef SCREEN_BIOS
+#if !defined(PC9800)
+#define MONO_CHECK /* Video BIOS can do the check       */
+#endif
+#endif
 
-# ifdef SCREEN_DJGPPFAST
+#ifdef SCREEN_DJGPPFAST
 /*# define MONO_CHECK          /* djgpp should be able to do check  */
-# endif
+#endif
 
 /*
  * PC interrupts
  */
-# ifdef PC9800
-#define CRT_BIOS       0x18
-#define DOS_EXT_FUNC   0xdc
-#define DIRECT_CON_IO  0x10
-# else
-#define VIDEO_BIOS  0x10
-# endif
-#define DOSCALL            0x21
-
+#ifdef PC9800
+#define CRT_BIOS 0x18
+#define DOS_EXT_FUNC 0xdc
+#define DIRECT_CON_IO 0x10
+#else
+#define VIDEO_BIOS 0x10
+#endif
+#define DOSCALL 0x21
 
 /*
  * Video BIOS functions
  */
-# if defined(PC9800)
-#define SENSEMODE      0x0b    /* Sense CRT Mode */
-
-#define PUTCHAR                0x00    /* Put Character */
-#define SETATT         0x02    /* Set Attribute */
-#define SETCURPOS      0x03    /* Set Cursor Position */
-#define CURSOR_RIGHT   0x08    /* Move Cursor Right */
-#define CURSOR_LEFT    0x09    /* Move Cursor Left */
-#define SCREEN_CLEAR   0x0a    /* Clear Screen */
-#define LINE_CLEAR     0x0b    /* Clear Line */
-# else
-#define SETCURPOS   0x02    /* Set Cursor Position */
-# endif
-
-#define GETCURPOS   0x03    /* Get Cursor Position */
-#define GETMODE     0x0f    /* Get Video Mode */
-#define SETMODE     0x00    /* Set Video Mode */
-#define SETPAGE     0x05    /* Set Video Page */
-#define FONTINFO    0x1130  /* Get Font Info */
-#define SCROLL      0x06    /* Scroll or initialize window */
-#define PUTCHARATT  0x09    /* Write attribute & char at cursor */
+#if defined(PC9800)
+#define SENSEMODE 0x0b /* Sense CRT Mode */
+
+#define PUTCHAR 0x00      /* Put Character */
+#define SETATT 0x02       /* Set Attribute */
+#define SETCURPOS 0x03    /* Set Cursor Position */
+#define CURSOR_RIGHT 0x08 /* Move Cursor Right */
+#define CURSOR_LEFT 0x09  /* Move Cursor Left */
+#define SCREEN_CLEAR 0x0a /* Clear Screen */
+#define LINE_CLEAR 0x0b   /* Clear Line */
+#else
+#define SETCURPOS 0x02 /* Set Cursor Position */
+#endif
+
+#define GETCURPOS 0x03  /* Get Cursor Position */
+#define GETMODE 0x0f    /* Get Video Mode */
+#define SETMODE 0x00    /* Set Video Mode */
+#define SETPAGE 0x05    /* Set Video Page */
+#define FONTINFO 0x1130 /* Get Font Info */
+#define SCROLL 0x06     /* Scroll or initialize window */
+#define PUTCHARATT 0x09 /* Write attribute & char at cursor */
 
 /*
  * VGA Specific Stuff
  */
-# ifdef SCREEN_VGA
+#ifdef SCREEN_VGA
 /* #define HW_PANNING          /* Hardware panning enabled */
-#define USHORT         unsigned short
-#define MODE640x480    0x0012  /* Switch to VGA 640 x 480 Graphics mode */
-#define MODETEXT       0x0003  /* Switch to Text mode 3 */
+#define USHORT unsigned short
+#define MODE640x480 0x0012 /* Switch to VGA 640 x 480 Graphics mode */
+#define MODETEXT 0x0003    /* Switch to Text mode 3 */
 
 #ifdef HW_PANNING
-#define PIXELINC 16    /* How much to increment by when panning */
+#define PIXELINC 16 /* How much to increment by when panning */
 /*#define PIXELINC 1   /* How much to increment by when panning */
-#define SCREENBYTES   128
-#define CharRows  30
-#define VERT_RETRACE     {while (!(inportb(crt_status) & 0x08)); }
-#define VERT_RETRACE_END  {while ( (inportb(crt_status) & 0x08)); }
+#define SCREENBYTES 128
+#define CharRows 30
+#define VERT_RETRACE                          \
+    {                                         \
+        while (!(inportb(crt_status) & 0x08)) \
+            ;                                 \
+    }
+#define VERT_RETRACE_END                     \
+    {                                        \
+        while ((inportb(crt_status) & 0x08)) \
+            ;                                \
+    }
 #else
-#define SCREENBYTES    80
+#define SCREENBYTES 80
 #endif
 
 #define CharacterWidth 8
-#define SCREENHEIGHT   480
+#define SCREENHEIGHT 480
 #define SCREENWIDTH (SCREENBYTES * CharacterWidth)
-#define VIDEOSEG       0xa000
+#define VIDEOSEG 0xa000
 #define FONT_PTR_SEGMENT 0x0000
-#define FONT_PTR_OFFSET         0x010C
-#define SCREENPLANES   4
-#define COLORDEPTH     16
-#define egawriteplane(n)       { outportb(0x3c4,2); outportb(0x3c5,n); }
-#define egareadplane(n)                { outportb(0x3ce,4); outportb(0x3cf,n); }
-#define col2x8(c)      ((c) * 8) 
-#define col2x16(c)     ((c) * 16)
-#define col2x(c)       ((c) * 2)
-#define row2y(c)       ((c) * 16)
+#define FONT_PTR_OFFSET 0x010C
+#define SCREENPLANES 4
+#define COLORDEPTH 16
+#define egawriteplane(n)    \
+    {                       \
+        outportb(0x3c4, 2); \
+        outportb(0x3c5, n); \
+    }
+#define egareadplane(n)     \
+    {                       \
+        outportb(0x3ce, 4); \
+        outportb(0x3cf, n); \
+    }
+#define col2x8(c) ((c) *8)
+#define col2x16(c) ((c) *16)
+#define col2x(c) ((c) *2)
+#define row2y(c) ((c) *16)
 #define MAX_ROWS_PER_CELL 16
 #define MAX_COLS_PER_CELL 16
-#define MAX_BYTES_PER_CELL 2           /* MAX_COLS_PER_CELL/8 */
-#define ROWS_PER_CELL  MAX_ROWS_PER_CELL
-#define COLS_PER_CELL  MAX_COLS_PER_CELL
+#define MAX_BYTES_PER_CELL 2 /* MAX_COLS_PER_CELL/8 */
+#define ROWS_PER_CELL MAX_ROWS_PER_CELL
+#define COLS_PER_CELL MAX_COLS_PER_CELL
 #define BYTES_PER_CELL MAX_BYTES_PER_CELL
 
 struct cellplane {
-       char image[MAX_ROWS_PER_CELL][MAX_BYTES_PER_CELL];
+    char image[MAX_ROWS_PER_CELL][MAX_BYTES_PER_CELL];
 };
-       
+
 struct planar_cell_struct {
-       struct cellplane plane[SCREENPLANES];
+    struct cellplane plane[SCREENPLANES];
 };
 
 struct overview_cellplane {
-       char image[MAX_ROWS_PER_CELL][1];
+    char image[MAX_ROWS_PER_CELL][1];
 };
 
 struct overview_planar_cell_struct {
-       struct overview_cellplane plane[SCREENPLANES];
+    struct overview_cellplane plane[SCREENPLANES];
 };
 
-
-
-# endif        /* SCREEN_VGA */
-
+#endif /* SCREEN_VGA */
 
 /*
  * Default color Indexes for hardware palettes
- * 
+ *
  * Do not change the values below.
- * These are the color mappings defined by the particular video 
+ * These are the color mappings defined by the particular video
  * hardware/mode.  You can rearrange the NetHack color mappings at
  * run-time via the defaults.nh "videocolors" and "videoshades"
  * settings.
  *
  */
 
-# if defined(SCREEN_BIOS) || defined(SCREEN_DJGPPFAST) 
-#define M_BLACK                8
-#define M_WHITE                15
-#define M_GRAY                 7       /* low-intensity white */
-#define M_RED                  4
-#define M_GREEN                2
-#define M_BROWN                6       /* low-intensity yellow */
-#define M_BLUE                 1
-#define M_MAGENTA              5
-#define M_CYAN                 3
-#define M_ORANGE               12
-#define M_BRIGHTGREEN          10
-#define M_YELLOW               14
-#define M_BRIGHTBLUE           9
-#define M_BRIGHTMAGENTA        13
-#define M_BRIGHTCYAN           11
-
-#define M_TEXT                M_GRAY
-#define BACKGROUND_COLOR      0
-#define ATTRIB_NORMAL         M_TEXT   /* Normal attribute */
-#define ATTRIB_INTENSE        M_WHITE  /* Intense White */
-#define ATTRIB_MONO_NORMAL    0x01     /* Underlined,white */
-#define ATTRIB_MONO_UNDERLINE 0x01     /* Underlined,white */
-#define ATTRIB_MONO_BLINK     0x87     /* Flash bit, white */
-#define ATTRIB_MONO_REVERSE   0x70     /* Black on white */
-# endif /*SCREEN_BIOS || SCREEN_DJGPPFAST */
-
-# if  defined(SCREEN_VGA) || defined(SCREEN_8514)
-#define BACKGROUND_VGA_COLOR   0
-#define ATTRIB_VGA_NORMAL     CLR_GRAY /* Normal attribute */
-#define ATTRIB_VGA_INTENSE    13       /* Intense White 94/06/07 palette chg*/
-# endif /*SCREEN_VGA || SCREEN_8514*/
-
-# if defined(PC9800)
+#if defined(SCREEN_BIOS) || defined(SCREEN_DJGPPFAST)
+#define M_BLACK 8
+#define M_WHITE 15
+#define M_GRAY 7 /* low-intensity white */
+#define M_RED 4
+#define M_GREEN 2
+#define M_BROWN 6 /* low-intensity yellow */
+#define M_BLUE 1
+#define M_MAGENTA 5
+#define M_CYAN 3
+#define M_ORANGE 12
+#define M_BRIGHTGREEN 10
+#define M_YELLOW 14
+#define M_BRIGHTBLUE 9
+#define M_BRIGHTMAGENTA 13
+#define M_BRIGHTCYAN 11
+
+#define M_TEXT M_GRAY
+#define BACKGROUND_COLOR 0
+#define ATTRIB_NORMAL M_TEXT       /* Normal attribute */
+#define ATTRIB_INTENSE M_WHITE     /* Intense White */
+#define ATTRIB_MONO_NORMAL 0x01    /* Underlined,white */
+#define ATTRIB_MONO_UNDERLINE 0x01 /* Underlined,white */
+#define ATTRIB_MONO_BLINK 0x87     /* Flash bit, white */
+#define ATTRIB_MONO_REVERSE 0x70   /* Black on white */
+#endif                             /*SCREEN_BIOS || SCREEN_DJGPPFAST */
+
+#if defined(SCREEN_VGA) || defined(SCREEN_8514)
+#define BACKGROUND_VGA_COLOR 0
+#define ATTRIB_VGA_NORMAL CLR_GRAY /* Normal attribute */
+#define ATTRIB_VGA_INTENSE 13      /* Intense White 94/06/07 palette chg*/
+#endif                             /*SCREEN_VGA || SCREEN_8514*/
+
+#if defined(PC9800)
 static unsigned char attr98[CLR_MAX] = {
-       0xe1,  /*  0 white            */
-       0x21,  /*  1 blue             */
-       0x81,  /*  2 green            */
-       0xa1,  /*  3 cyan             */
-       0x41,  /*  4 red              */
-       0x61,  /*  5 magenta          */
-       0xc1,  /*  6 yellow           */
-       0xe1,  /*  7 white            */
-       0xe1,  /*  8 white            */
-       0x25,  /*  9 reversed blue    */
-       0x85,  /* 10 reversed green   */
-       0xa5,  /* 11 reversed cyan    */
-       0x45,  /* 12 reversed red     */
-       0x65,  /* 13 reversed magenta */
-       0xc5,  /* 14 reversed yellow  */
-       0xe5,  /* 15 reversed white   */
+    0xe1, /*  0 white            */
+    0x21, /*  1 blue             */
+    0x81, /*  2 green            */
+    0xa1, /*  3 cyan             */
+    0x41, /*  4 red              */
+    0x61, /*  5 magenta          */
+    0xc1, /*  6 yellow           */
+    0xe1, /*  7 white            */
+    0xe1, /*  8 white            */
+    0x25, /*  9 reversed blue    */
+    0x85, /* 10 reversed green   */
+    0xa5, /* 11 reversed cyan    */
+    0x45, /* 12 reversed red     */
+    0x65, /* 13 reversed magenta */
+    0xc5, /* 14 reversed yellow  */
+    0xe5, /* 15 reversed white   */
 };
-# endif
+#endif
 
-# ifdef SIMULATE_CURSOR
-#define CURSOR_HEIGHT    3     /* this should go - MJA */
+#ifdef SIMULATE_CURSOR
+#define CURSOR_HEIGHT 3 /* this should go - MJA */
 /* cursor styles */
-#define CURSOR_INVIS     0     /* cursor not visible at all            */
-#define CURSOR_FRAME     1     /* block around the current tile        */
-#define CURSOR_UNDERLINE 2     /* thin line at bottom of the tile      */
-#define CURSOR_CORNER    3     /* cursor visible at the 4 tile corners */
-#define NUM_CURSOR_TYPES 4     /* number of different cursor types     */
-#define CURSOR_DEFAULT_STYLE CURSOR_CORNER 
+#define CURSOR_INVIS 0     /* cursor not visible at all            */
+#define CURSOR_FRAME 1     /* block around the current tile        */
+#define CURSOR_UNDERLINE 2 /* thin line at bottom of the tile      */
+#define CURSOR_CORNER 3    /* cursor visible at the 4 tile corners */
+#define NUM_CURSOR_TYPES 4 /* number of different cursor types     */
+#define CURSOR_DEFAULT_STYLE CURSOR_CORNER
 #define CURSOR_DEFAULT_COLOR M_GRAY
 /* global variables for cursor */
 extern int cursor_type;
 extern int cursor_flag;
 extern int cursor_color;
-# endif
-
+#endif
 
 /*
  *   Function Prototypes
@@ -218,55 +229,55 @@ extern int cursor_color;
 
 /* ### video.c ### */
 
-# ifdef SIMULATE_CURSOR
+#ifdef SIMULATE_CURSOR
 E void NDECL(DrawCursor);
 E void NDECL(HideCursor);
-# endif
+#endif
 
 /* ### vidtxt.c ### */
 
-# ifdef NO_TERMS
+#ifdef NO_TERMS
 E void NDECL(txt_backsp);
 E void NDECL(txt_clear_screen);
-E void FDECL(txt_cl_end,(int,int));
+E void FDECL(txt_cl_end, (int, int));
 E void NDECL(txt_cl_eos);
 E void NDECL(txt_get_scr_size);
-E void FDECL(txt_gotoxy,(int,int));
-E int  NDECL(txt_monoadapt_check);
+E void FDECL(txt_gotoxy, (int, int));
+E int NDECL(txt_monoadapt_check);
 E void NDECL(txt_nhbell);
-E void FDECL(txt_startup,(int*,int*));
+E void FDECL(txt_startup, (int *, int *));
 E void FDECL(txt_xputs, (const char *, int, int));
 E void FDECL(txt_xputc, (CHAR_P, int));
 
 /* ### vidvga.c ### */
 
-#  ifdef SCREEN_VGA
+#ifdef SCREEN_VGA
 E void NDECL(vga_backsp);
-E void FDECL(vga_clear_screen,(int));
-E void FDECL(vga_cl_end,(int,int));
-E void FDECL(vga_cl_eos,(int));
-E int  NDECL(vga_detect);
-#   ifdef SIMULATE_CURSOR
+E void FDECL(vga_clear_screen, (int));
+E void FDECL(vga_cl_end, (int, int));
+E void FDECL(vga_cl_eos, (int));
+E int NDECL(vga_detect);
+#ifdef SIMULATE_CURSOR
 E void NDECL(vga_DrawCursor);
-#   endif
+#endif
 E void FDECL(vga_DisplayCell, (struct planar_cell_struct *, int, int));
-E void FDECL(vga_DisplayCell_O, 
-                       (struct overview_planar_cell_struct *, int, int));
+E void FDECL(vga_DisplayCell_O,
+             (struct overview_planar_cell_struct *, int, int));
 E void NDECL(vga_Finish);
 E char __far *NDECL(vga_FontPtrs);
 E void NDECL(vga_get_scr_size);
-E void FDECL(vga_gotoloc,(int,int));
-#   ifdef POSITIONBAR
+E void FDECL(vga_gotoloc, (int, int));
+#ifdef POSITIONBAR
 E void FDECL(vga_update_positionbar, (char *));
-#   endif
-#   ifdef SIMULATE_CURSOR
+#endif
+#ifdef SIMULATE_CURSOR
 E void NDECL(vga_HideCursor);
-#   endif
+#endif
 E void NDECL(vga_Init);
 E void FDECL(vga_SwitchMode, (unsigned int));
 E void FDECL(vga_SetPalette, (char *));
 E void NDECL(vga_tty_end_screen);
-E void FDECL(vga_tty_startup,(int*,int*));
+E void FDECL(vga_tty_startup, (int *, int *));
 E void FDECL(vga_WriteChar, (int, int, int, int));
 E void FDECL(vga_WriteStr, (char *, int, int, int, int));
 E void FDECL(vga_xputs, (const char *, int, int));
@@ -276,8 +287,8 @@ E void FDECL(vga_userpan, (BOOLEAN_P));
 E void FDECL(vga_overview, (BOOLEAN_P));
 E void FDECL(vga_traditional, (BOOLEAN_P));
 E void NDECL(vga_refresh);
-#  endif /* SCREEN_VGA */
-# endif /* NO_TERMS   */
+#endif /* SCREEN_VGA */
+#endif /* NO_TERMS   */
 
 #undef E
 
index 967888757f12602a7b092527e5582e69f0574f68..f4b37de28314f5c805b789cba8af2a6fbcebcb3b 100644 (file)
@@ -7,30 +7,30 @@
 /*
  * portio.h - PC port I/O Hardware support definitions and other
  *            low-level definitions.
- *                                                  
+ *
  */
 
 #ifndef PORTIO_H
 #define PORTIO_H
 
-# if defined(__GO32__) || defined(__DJGPP__)
+#if defined(__GO32__) || defined(__DJGPP__)
 #define __far
 #include <go32.h>
 #include <dpmi.h>
 #include <sys/farptr.h>
 #endif
 
-# if defined(_MSC_VER)
+#if defined(_MSC_VER)
 #define outportb _outp
 #define outportw _outpw
 #define inportb _inp
-# endif
-# if defined(__BORLANDC__)
+#endif
+#if defined(__BORLANDC__)
 #define outportw outport
 /* #define inportb inport */
-# endif
+#endif
 
-# ifndef MK_PTR
+#ifndef MK_PTR
 /*
  * Depending on environment, this is a macro to construct either:
  *
  *     -  a far pointer from segment and offset values
  *
  */
-#  if defined(_MSC_VER) || defined(__BORLANDC__)
-#define MK_PTR(seg, offset) (void __far *)(((unsigned long)seg << 16) \
-     + (unsigned long)(unsigned)offset)
+#if defined(_MSC_VER) || defined(__BORLANDC__)
+#define MK_PTR(seg, offset)                    \
+    (void __far *)(((unsigned long) seg << 16) \
+                   + (unsigned long) (unsigned) offset)
 #define READ_ABSOLUTE(x) *(x)
 #define READ_ABSOLUTE_WORD(x) *(x)
-#define WRITE_ABSOLUTE(x,y) *(x) = (y)
-#define WRITE_ABSOLUTE_WORD(x,y) *(x) = (y)
-#  endif
+#define WRITE_ABSOLUTE(x, y) *(x) = (y)
+#define WRITE_ABSOLUTE_WORD(x, y) *(x) = (y)
+#endif
 
-#  if defined(__GO32__) || defined(__DJGPP__)
-#define MK_PTR(seg, offset) (void *)(((unsigned)seg << 4) + (unsigned)offset)
+#if defined(__GO32__) || defined(__DJGPP__)
+#define MK_PTR(seg, offset) \
+    (void *)(((unsigned) seg << 4) + (unsigned) offset)
 #define READ_ABSOLUTE(x) \
-       (_farpeekb(_go32_conventional_mem_selector(), (unsigned)x))
+    (_farpeekb(_go32_conventional_mem_selector(), (unsigned) x))
 #define READ_ABSOLUTE_WORD(x) \
-       (_farpeekw(_go32_conventional_mem_selector(), (unsigned)x))
-#define WRITE_ABSOLUTE(x,y) \
-       _farpokeb(_go32_conventional_mem_selector(), (unsigned)x, (y))
-#define WRITE_ABSOLUTE_WORD(x,y) \
-       _farpokew(_go32_conventional_mem_selector(), (unsigned)x, (y))
-#  endif
+    (_farpeekw(_go32_conventional_mem_selector(), (unsigned) x))
+#define WRITE_ABSOLUTE(x, y) \
+    _farpokeb(_go32_conventional_mem_selector(), (unsigned) x, (y))
+#define WRITE_ABSOLUTE_WORD(x, y) \
+    _farpokew(_go32_conventional_mem_selector(), (unsigned) x, (y))
+#endif
 
-#  ifdef OBSOLETE   /* old djgpp V1.x way of mapping 1st MB */
-#define MK_PTR(seg, offset) (void *)(0xE0000000+((((unsigned)seg << 4) \
-     + (unsigned)offset)))
+#ifdef OBSOLETE /* old djgpp V1.x way of mapping 1st MB */
+#define MK_PTR(seg, offset) \
+    (void *)(0xE0000000 + ((((unsigned) seg << 4) + (unsigned) offset)))
 #define READ_ABSOLUTE(x) *(x)
 #define READ_ABSOLUTE_WORD(x) *(x)
-#define WRITE_ABSOLUTE(x,y) *(x) = (y)
-#define WRITE_ABSOLUTE_WORD(x,y) *(x) = (y)
-#  endif
-# endif /* MK_PTR */
+#define WRITE_ABSOLUTE(x, y) *(x) = (y)
+#define WRITE_ABSOLUTE_WORD(x, y) *(x) = (y)
+#endif
+#endif /* MK_PTR */
 
 #endif /* PORTIO_H  */
 /* portio.h */
index 8544faaeaf869e9b4a008dc1f0e04c300a204846..6dede16f051d3d4ba44ff103ca9b2b8d9d1a9919 100644 (file)
@@ -2,20 +2,20 @@
 /* A Bison parser, made by GNU Bison 2.4.1.  */
 
 /* Skeleton interface for Bison's Yacc-like parsers in C
-   
+
       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
    Free Software Foundation, Inc.
-   
+
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-   
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-   
+
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
-
 /* Tokens.  */
 #ifndef YYTOKENTYPE
-# define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     INTEGER = 258,
-     A_DUNGEON = 259,
-     BRANCH = 260,
-     CHBRANCH = 261,
-     LEVEL = 262,
-     RNDLEVEL = 263,
-     CHLEVEL = 264,
-     RNDCHLEVEL = 265,
-     UP_OR_DOWN = 266,
-     PROTOFILE = 267,
-     DESCRIPTION = 268,
-     DESCRIPTOR = 269,
-     LEVELDESC = 270,
-     ALIGNMENT = 271,
-     LEVALIGN = 272,
-     ENTRY = 273,
-     STAIR = 274,
-     NO_UP = 275,
-     NO_DOWN = 276,
-     PORTAL = 277,
-     STRING = 278
-   };
+#define YYTOKENTYPE
+/* Put the tokens into the symbol table, so that GDB and other debuggers
+   know about them.  */
+enum yytokentype {
+    INTEGER = 258,
+    A_DUNGEON = 259,
+    BRANCH = 260,
+    CHBRANCH = 261,
+    LEVEL = 262,
+    RNDLEVEL = 263,
+    CHLEVEL = 264,
+    RNDCHLEVEL = 265,
+    UP_OR_DOWN = 266,
+    PROTOFILE = 267,
+    DESCRIPTION = 268,
+    DESCRIPTOR = 269,
+    LEVELDESC = 270,
+    ALIGNMENT = 271,
+    LEVALIGN = 272,
+    ENTRY = 273,
+    STAIR = 274,
+    NO_UP = 275,
+    NO_DOWN = 276,
+    PORTAL = 277,
+    STRING = 278
+};
 #endif
 /* Tokens.  */
 #define INTEGER 258
 #define PORTAL 277
 #define STRING 278
 
-
-
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE
-{
-
+#if !defined YYSTYPE && !defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE {
 /* Line 1676 of yacc.c  */
 #line 69 "dgn_comp.y"
 
-       int     i;
-       char*   str;
-
-
+    int i;
+    char *str;
 
 /* Line 1676 of yacc.c  */
 #line 105 "y.tab.h"
 } YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
+#define YYSTYPE_IS_TRIVIAL 1
+#define yystype YYSTYPE /* obsolescent; will be withdrawn */
+#define YYSTYPE_IS_DECLARED 1
 #endif
 
 extern YYSTYPE yylval;
-
-
index b0c5cafaf60b5088929ceb297d7e3d7f3080132f..80f63652a95934e73ec25cee819509156d7bb3ab 100644 (file)
@@ -2,20 +2,20 @@
 /* A Bison parser, made by GNU Bison 2.4.1.  */
 
 /* Skeleton interface for Bison's Yacc-like parsers in C
-   
+
       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
    Free Software Foundation, Inc.
-   
+
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
-   
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-   
+
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
-
 /* Tokens.  */
 #ifndef YYTOKENTYPE
-# define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     CHAR = 258,
-     INTEGER = 259,
-     BOOLEAN = 260,
-     PERCENT = 261,
-     SPERCENT = 262,
-     MINUS_INTEGER = 263,
-     PLUS_INTEGER = 264,
-     MAZE_GRID_ID = 265,
-     SOLID_FILL_ID = 266,
-     MINES_ID = 267,
-     ROGUELEV_ID = 268,
-     MESSAGE_ID = 269,
-     MAZE_ID = 270,
-     LEVEL_ID = 271,
-     LEV_INIT_ID = 272,
-     GEOMETRY_ID = 273,
-     NOMAP_ID = 274,
-     OBJECT_ID = 275,
-     COBJECT_ID = 276,
-     MONSTER_ID = 277,
-     TRAP_ID = 278,
-     DOOR_ID = 279,
-     DRAWBRIDGE_ID = 280,
-     object_ID = 281,
-     monster_ID = 282,
-     terrain_ID = 283,
-     MAZEWALK_ID = 284,
-     WALLIFY_ID = 285,
-     REGION_ID = 286,
-     FILLING = 287,
-     IRREGULAR = 288,
-     JOINED = 289,
-     ALTAR_ID = 290,
-     LADDER_ID = 291,
-     STAIR_ID = 292,
-     NON_DIGGABLE_ID = 293,
-     NON_PASSWALL_ID = 294,
-     ROOM_ID = 295,
-     PORTAL_ID = 296,
-     TELEPRT_ID = 297,
-     BRANCH_ID = 298,
-     LEV = 299,
-     MINERALIZE_ID = 300,
-     CORRIDOR_ID = 301,
-     GOLD_ID = 302,
-     ENGRAVING_ID = 303,
-     FOUNTAIN_ID = 304,
-     POOL_ID = 305,
-     SINK_ID = 306,
-     NONE = 307,
-     RAND_CORRIDOR_ID = 308,
-     DOOR_STATE = 309,
-     LIGHT_STATE = 310,
-     CURSE_TYPE = 311,
-     ENGRAVING_TYPE = 312,
-     DIRECTION = 313,
-     RANDOM_TYPE = 314,
-     RANDOM_TYPE_BRACKET = 315,
-     A_REGISTER = 316,
-     ALIGNMENT = 317,
-     LEFT_OR_RIGHT = 318,
-     CENTER = 319,
-     TOP_OR_BOT = 320,
-     ALTAR_TYPE = 321,
-     UP_OR_DOWN = 322,
-     SUBROOM_ID = 323,
-     NAME_ID = 324,
-     FLAGS_ID = 325,
-     FLAG_TYPE = 326,
-     MON_ATTITUDE = 327,
-     MON_ALERTNESS = 328,
-     MON_APPEARANCE = 329,
-     ROOMDOOR_ID = 330,
-     IF_ID = 331,
-     ELSE_ID = 332,
-     TERRAIN_ID = 333,
-     HORIZ_OR_VERT = 334,
-     REPLACE_TERRAIN_ID = 335,
-     EXIT_ID = 336,
-     SHUFFLE_ID = 337,
-     QUANTITY_ID = 338,
-     BURIED_ID = 339,
-     LOOP_ID = 340,
-     FOR_ID = 341,
-     TO_ID = 342,
-     SWITCH_ID = 343,
-     CASE_ID = 344,
-     BREAK_ID = 345,
-     DEFAULT_ID = 346,
-     ERODED_ID = 347,
-     TRAPPED_ID = 348,
-     RECHARGED_ID = 349,
-     INVIS_ID = 350,
-     GREASED_ID = 351,
-     FEMALE_ID = 352,
-     CANCELLED_ID = 353,
-     REVIVED_ID = 354,
-     AVENGE_ID = 355,
-     FLEEING_ID = 356,
-     BLINDED_ID = 357,
-     PARALYZED_ID = 358,
-     STUNNED_ID = 359,
-     CONFUSED_ID = 360,
-     SEENTRAPS_ID = 361,
-     ALL_ID = 362,
-     MONTYPE_ID = 363,
-     GRAVE_ID = 364,
-     ERODEPROOF_ID = 365,
-     FUNCTION_ID = 366,
-     MSG_OUTPUT_TYPE = 367,
-     COMPARE_TYPE = 368,
-     UNKNOWN_TYPE = 369,
-     rect_ID = 370,
-     fillrect_ID = 371,
-     line_ID = 372,
-     randline_ID = 373,
-     grow_ID = 374,
-     selection_ID = 375,
-     flood_ID = 376,
-     rndcoord_ID = 377,
-     circle_ID = 378,
-     ellipse_ID = 379,
-     filter_ID = 380,
-     complement_ID = 381,
-     gradient_ID = 382,
-     GRADIENT_TYPE = 383,
-     LIMITED = 384,
-     HUMIDITY_TYPE = 385,
-     STRING = 386,
-     MAP_ID = 387,
-     NQSTRING = 388,
-     VARSTRING = 389,
-     CFUNC = 390,
-     CFUNC_INT = 391,
-     CFUNC_STR = 392,
-     CFUNC_COORD = 393,
-     CFUNC_REGION = 394,
-     VARSTRING_INT = 395,
-     VARSTRING_INT_ARRAY = 396,
-     VARSTRING_STRING = 397,
-     VARSTRING_STRING_ARRAY = 398,
-     VARSTRING_VAR = 399,
-     VARSTRING_VAR_ARRAY = 400,
-     VARSTRING_COORD = 401,
-     VARSTRING_COORD_ARRAY = 402,
-     VARSTRING_REGION = 403,
-     VARSTRING_REGION_ARRAY = 404,
-     VARSTRING_MAPCHAR = 405,
-     VARSTRING_MAPCHAR_ARRAY = 406,
-     VARSTRING_MONST = 407,
-     VARSTRING_MONST_ARRAY = 408,
-     VARSTRING_OBJ = 409,
-     VARSTRING_OBJ_ARRAY = 410,
-     VARSTRING_SEL = 411,
-     VARSTRING_SEL_ARRAY = 412,
-     METHOD_INT = 413,
-     METHOD_INT_ARRAY = 414,
-     METHOD_STRING = 415,
-     METHOD_STRING_ARRAY = 416,
-     METHOD_VAR = 417,
-     METHOD_VAR_ARRAY = 418,
-     METHOD_COORD = 419,
-     METHOD_COORD_ARRAY = 420,
-     METHOD_REGION = 421,
-     METHOD_REGION_ARRAY = 422,
-     METHOD_MAPCHAR = 423,
-     METHOD_MAPCHAR_ARRAY = 424,
-     METHOD_MONST = 425,
-     METHOD_MONST_ARRAY = 426,
-     METHOD_OBJ = 427,
-     METHOD_OBJ_ARRAY = 428,
-     METHOD_SEL = 429,
-     METHOD_SEL_ARRAY = 430,
-     DICE = 431
-   };
+#define YYTOKENTYPE
+/* Put the tokens into the symbol table, so that GDB and other debuggers
+   know about them.  */
+enum yytokentype {
+    CHAR = 258,
+    INTEGER = 259,
+    BOOLEAN = 260,
+    PERCENT = 261,
+    SPERCENT = 262,
+    MINUS_INTEGER = 263,
+    PLUS_INTEGER = 264,
+    MAZE_GRID_ID = 265,
+    SOLID_FILL_ID = 266,
+    MINES_ID = 267,
+    ROGUELEV_ID = 268,
+    MESSAGE_ID = 269,
+    MAZE_ID = 270,
+    LEVEL_ID = 271,
+    LEV_INIT_ID = 272,
+    GEOMETRY_ID = 273,
+    NOMAP_ID = 274,
+    OBJECT_ID = 275,
+    COBJECT_ID = 276,
+    MONSTER_ID = 277,
+    TRAP_ID = 278,
+    DOOR_ID = 279,
+    DRAWBRIDGE_ID = 280,
+    object_ID = 281,
+    monster_ID = 282,
+    terrain_ID = 283,
+    MAZEWALK_ID = 284,
+    WALLIFY_ID = 285,
+    REGION_ID = 286,
+    FILLING = 287,
+    IRREGULAR = 288,
+    JOINED = 289,
+    ALTAR_ID = 290,
+    LADDER_ID = 291,
+    STAIR_ID = 292,
+    NON_DIGGABLE_ID = 293,
+    NON_PASSWALL_ID = 294,
+    ROOM_ID = 295,
+    PORTAL_ID = 296,
+    TELEPRT_ID = 297,
+    BRANCH_ID = 298,
+    LEV = 299,
+    MINERALIZE_ID = 300,
+    CORRIDOR_ID = 301,
+    GOLD_ID = 302,
+    ENGRAVING_ID = 303,
+    FOUNTAIN_ID = 304,
+    POOL_ID = 305,
+    SINK_ID = 306,
+    NONE = 307,
+    RAND_CORRIDOR_ID = 308,
+    DOOR_STATE = 309,
+    LIGHT_STATE = 310,
+    CURSE_TYPE = 311,
+    ENGRAVING_TYPE = 312,
+    DIRECTION = 313,
+    RANDOM_TYPE = 314,
+    RANDOM_TYPE_BRACKET = 315,
+    A_REGISTER = 316,
+    ALIGNMENT = 317,
+    LEFT_OR_RIGHT = 318,
+    CENTER = 319,
+    TOP_OR_BOT = 320,
+    ALTAR_TYPE = 321,
+    UP_OR_DOWN = 322,
+    SUBROOM_ID = 323,
+    NAME_ID = 324,
+    FLAGS_ID = 325,
+    FLAG_TYPE = 326,
+    MON_ATTITUDE = 327,
+    MON_ALERTNESS = 328,
+    MON_APPEARANCE = 329,
+    ROOMDOOR_ID = 330,
+    IF_ID = 331,
+    ELSE_ID = 332,
+    TERRAIN_ID = 333,
+    HORIZ_OR_VERT = 334,
+    REPLACE_TERRAIN_ID = 335,
+    EXIT_ID = 336,
+    SHUFFLE_ID = 337,
+    QUANTITY_ID = 338,
+    BURIED_ID = 339,
+    LOOP_ID = 340,
+    FOR_ID = 341,
+    TO_ID = 342,
+    SWITCH_ID = 343,
+    CASE_ID = 344,
+    BREAK_ID = 345,
+    DEFAULT_ID = 346,
+    ERODED_ID = 347,
+    TRAPPED_ID = 348,
+    RECHARGED_ID = 349,
+    INVIS_ID = 350,
+    GREASED_ID = 351,
+    FEMALE_ID = 352,
+    CANCELLED_ID = 353,
+    REVIVED_ID = 354,
+    AVENGE_ID = 355,
+    FLEEING_ID = 356,
+    BLINDED_ID = 357,
+    PARALYZED_ID = 358,
+    STUNNED_ID = 359,
+    CONFUSED_ID = 360,
+    SEENTRAPS_ID = 361,
+    ALL_ID = 362,
+    MONTYPE_ID = 363,
+    GRAVE_ID = 364,
+    ERODEPROOF_ID = 365,
+    FUNCTION_ID = 366,
+    MSG_OUTPUT_TYPE = 367,
+    COMPARE_TYPE = 368,
+    UNKNOWN_TYPE = 369,
+    rect_ID = 370,
+    fillrect_ID = 371,
+    line_ID = 372,
+    randline_ID = 373,
+    grow_ID = 374,
+    selection_ID = 375,
+    flood_ID = 376,
+    rndcoord_ID = 377,
+    circle_ID = 378,
+    ellipse_ID = 379,
+    filter_ID = 380,
+    complement_ID = 381,
+    gradient_ID = 382,
+    GRADIENT_TYPE = 383,
+    LIMITED = 384,
+    HUMIDITY_TYPE = 385,
+    STRING = 386,
+    MAP_ID = 387,
+    NQSTRING = 388,
+    VARSTRING = 389,
+    CFUNC = 390,
+    CFUNC_INT = 391,
+    CFUNC_STR = 392,
+    CFUNC_COORD = 393,
+    CFUNC_REGION = 394,
+    VARSTRING_INT = 395,
+    VARSTRING_INT_ARRAY = 396,
+    VARSTRING_STRING = 397,
+    VARSTRING_STRING_ARRAY = 398,
+    VARSTRING_VAR = 399,
+    VARSTRING_VAR_ARRAY = 400,
+    VARSTRING_COORD = 401,
+    VARSTRING_COORD_ARRAY = 402,
+    VARSTRING_REGION = 403,
+    VARSTRING_REGION_ARRAY = 404,
+    VARSTRING_MAPCHAR = 405,
+    VARSTRING_MAPCHAR_ARRAY = 406,
+    VARSTRING_MONST = 407,
+    VARSTRING_MONST_ARRAY = 408,
+    VARSTRING_OBJ = 409,
+    VARSTRING_OBJ_ARRAY = 410,
+    VARSTRING_SEL = 411,
+    VARSTRING_SEL_ARRAY = 412,
+    METHOD_INT = 413,
+    METHOD_INT_ARRAY = 414,
+    METHOD_STRING = 415,
+    METHOD_STRING_ARRAY = 416,
+    METHOD_VAR = 417,
+    METHOD_VAR_ARRAY = 418,
+    METHOD_COORD = 419,
+    METHOD_COORD_ARRAY = 420,
+    METHOD_REGION = 421,
+    METHOD_REGION_ARRAY = 422,
+    METHOD_MAPCHAR = 423,
+    METHOD_MAPCHAR_ARRAY = 424,
+    METHOD_MONST = 425,
+    METHOD_MONST_ARRAY = 426,
+    METHOD_OBJ = 427,
+    METHOD_OBJ_ARRAY = 428,
+    METHOD_SEL = 429,
+    METHOD_SEL_ARRAY = 430,
+    DICE = 431
+};
 #endif
 /* Tokens.  */
 #define CHAR 258
 #define METHOD_SEL_ARRAY 430
 #define DICE 431
 
-
-
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE
-{
-
+#if !defined YYSTYPE && !defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE {
 /* Line 1676 of yacc.c  */
 #line 149 "lev_comp.y"
 
-       long    i;
-       char*   map;
-       struct {
-               long room;
-               long wall;
-               long door;
-       } corpos;
+    long i;
+    char *map;
     struct {
-       long area;
-       long x1;
-       long y1;
-       long x2;
-       long y2;
+        long room;
+        long wall;
+        long door;
+    } corpos;
+    struct {
+        long area;
+        long x1;
+        long y1;
+        long x2;
+        long y2;
     } lregn;
     struct {
-       long x;
-       long y;
+        long x;
+        long y;
     } crd;
     struct {
-       long ter;
-       long lit;
+        long ter;
+        long lit;
     } terr;
     struct {
-       long height;
-       long width;
+        long height;
+        long width;
     } sze;
     struct {
-       long die;
-       long num;
+        long die;
+        long num;
     } dice;
     struct {
-       long cfunc;
-       char *varstr;
+        long cfunc;
+        char *varstr;
     } meth;
 
-
-
 /* Line 1676 of yacc.c  */
 #line 443 "y.tab.h"
 } YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
+#define YYSTYPE_IS_TRIVIAL 1
+#define yystype YYSTYPE /* obsolescent; will be withdrawn */
+#define YYSTYPE_IS_DECLARED 1
 #endif
 
 extern YYSTYPE yylval;
-
-
index 43ea9677725a3628960503831c9d7a3fc33e5fdf..f59f43c2e6b821438a65803a44b61b8b2c3435d0 100644 (file)
 
 #include <stdio.h>
 #ifdef stdin
-# undef stdin
+#undef stdin
 #endif
-#define stdin  0
+#define stdin 0
 #ifdef stdout
-# undef stdout
+#undef stdout
 #endif
 #define stdout 0
index 8844d2a397f447704ef208c0787593d53eebd68b..1c18ba66ab2118bb136f53015a8bd9ced2dc3bb1 100644 (file)
@@ -3,14 +3,15 @@
 *
 ****/
 
-#undef  assert
+#undef assert
 
-#ifdef  NDEBUG
+#ifdef NDEBUG
 
-#define assert(exp)     ((void)0)
+#define assert(exp) ((void) 0)
 
 #else
 
-#define assert(exp) (void)( (exp) || (panic("%s at %s line %ld", #exp, __FILE__,__LINE__), 1) )
+#define assert(exp) \
+    (void)((exp) || (panic("%s at %s line %ld", #exp, __FILE__, __LINE__), 1))
 
-#endif  /* NDEBUG */
+#endif /* NDEBUG */
index c6c3193a850f96dfe3eabbff86f61fda5487e6fb..6645e2bb993086613433c800ad4e2d90df804514 100644 (file)
@@ -1,4 +1,3 @@
 /* empty file */
 
 extern int errno;
-
index a9136c8b4ca8b4c0c43b7e7e6f4638cf6f1f004d..0b1524b2bbd6fc11229a0e39d3cc82d03d92650c 100644 (file)
 #ifndef _INC_FCNTL
 #define _INC_FCNTL
 
-#define _O_RDONLY       0x0000  /* open for reading only */
-#define _O_WRONLY       0x0001  /* open for writing only */
-#define _O_RDWR         0x0002  /* open for reading and writing */
-#define _O_APPEND       0x0008  /* writes done at eof */
+#define _O_RDONLY 0x0000 /* open for reading only */
+#define _O_WRONLY 0x0001 /* open for writing only */
+#define _O_RDWR 0x0002   /* open for reading and writing */
+#define _O_APPEND 0x0008 /* writes done at eof */
 
-#define _O_CREAT        0x0100  /* create and open file */
-#define _O_TRUNC        0x0200  /* open and truncate */
-#define _O_EXCL         0x0400  /* open only if file doesn't already exist */
+#define _O_CREAT 0x0100 /* create and open file */
+#define _O_TRUNC 0x0200 /* open and truncate */
+#define _O_EXCL 0x0400  /* open only if file doesn't already exist */
 
 /* O_TEXT files have <cr><lf> sequences translated to <lf> on read()'s,
 ** and <lf> sequences translated to <cr><lf> on write()'s
 */
 
-#define _O_TEXT         0x4000  /* file mode is text (translated) */
-#define _O_BINARY       0x8000  /* file mode is binary (untranslated) */
+#define _O_TEXT 0x4000   /* file mode is text (translated) */
+#define _O_BINARY 0x8000 /* file mode is binary (untranslated) */
 
 /* macro to translate the C 2.0 name used to force binary mode for files */
 
-#define _O_RAW  _O_BINARY
+#define _O_RAW _O_BINARY
 
 /* Open handle inherit bit */
 
-#define _O_NOINHERIT    0x0080  /* child process doesn't inherit file */
+#define _O_NOINHERIT 0x0080 /* child process doesn't inherit file */
 
 /* Temporary file bit - file is deleted when last handle is closed */
 
-#define _O_TEMPORARY    0x0040  /* temporary file bit */
+#define _O_TEMPORARY 0x0040 /* temporary file bit */
 
 /* sequential/random access hints */
 
-#define _O_SEQUENTIAL   0x0020  /* file access is primarily sequential */
-#define _O_RANDOM       0x0010  /* file access is primarily random */
+#define _O_SEQUENTIAL 0x0020 /* file access is primarily sequential */
+#define _O_RANDOM 0x0010     /* file access is primarily random */
 
-#if     !__STDC__ || defined(_POSIX_)
+#if !__STDC__ || defined(_POSIX_)
 /* Non-ANSI names for compatibility */
-#define O_RDONLY        _O_RDONLY
-#define O_WRONLY        _O_WRONLY
-#define O_RDWR          _O_RDWR
-#define O_APPEND        _O_APPEND
-#define O_CREAT         _O_CREAT
-#define O_TRUNC         _O_TRUNC
-#define O_EXCL          _O_EXCL
-#define O_TEXT          _O_TEXT
-#define O_BINARY        _O_BINARY
-#define O_RAW           _O_BINARY
-#define O_TEMPORARY     _O_TEMPORARY
-#define O_NOINHERIT     _O_NOINHERIT
-#define O_SEQUENTIAL    _O_SEQUENTIAL
-#define O_RANDOM        _O_RANDOM
-#endif  /* __STDC__ */
+#define O_RDONLY _O_RDONLY
+#define O_WRONLY _O_WRONLY
+#define O_RDWR _O_RDWR
+#define O_APPEND _O_APPEND
+#define O_CREAT _O_CREAT
+#define O_TRUNC _O_TRUNC
+#define O_EXCL _O_EXCL
+#define O_TEXT _O_TEXT
+#define O_BINARY _O_BINARY
+#define O_RAW _O_BINARY
+#define O_TEMPORARY _O_TEMPORARY
+#define O_NOINHERIT _O_NOINHERIT
+#define O_SEQUENTIAL _O_SEQUENTIAL
+#define O_RANDOM _O_RANDOM
+#endif /* __STDC__ */
 
-#endif  /* _INC_FCNTL */
+#endif /* _INC_FCNTL */
index dbb39b6998a69013258a2e28559de9e42bbd991e..fa882cb5b06d1f440e8cc5b51371832fc4dd6d78 100644 (file)
@@ -1,2 +1 @@
 /* empty file */
-
index dbf0285aef42b466c3dc554b936a8ef4ec941f6a..4127d99a54d27e5c914fe5b92f8e41c799353a7f 100644 (file)
@@ -9,6 +9,6 @@
 
 #include "winMS.h"
 
-int mswin_yes_no_dialog( const char *question, const char *choices, int def);
+int mswin_yes_no_dialog(const char *question, const char *choices, int def);
 
 #endif /* MSWINAskYesNO_h */
index 87f4f4b22f8e76efc79bdf5f6be678ee4e2e35d8..feaf605ce026b872aa54e4538d262b615f39abff 100644 (file)
@@ -7,19 +7,19 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_command_window ();
+HWND mswin_init_command_window();
 
-/* if either sz->cx or sz->cy are already set this function will 
-   no modify it. It will adjust them to the minimum size 
+/* if either sz->cx or sz->cy are already set this function will
+   no modify it. It will adjust them to the minimum size
    required by the command window */
-void mswin_command_window_size (HWND hwnd, LPSIZE sz);
+void mswin_command_window_size(HWND hwnd, LPSIZE sz);
 
 #if defined(WIN_CE_SMARTPHONE)
 /* special keypad input handling for SmartPhone */
-BOOL   NHSPhoneTranslateKbdMessage(WPARAM wParam, LPARAM lParam, BOOL keyDown);
-void   NHSPhoneSetKeypadFromString(const char* str);
-void   NHSPhoneSetKeypadDirection();
-void   NHSPhoneSetKeypadDefault();
+BOOL NHSPhoneTranslateKbdMessage(WPARAM wParam, LPARAM lParam, BOOL keyDown);
+void NHSPhoneSetKeypadFromString(const char *str);
+void NHSPhoneSetKeypadDirection();
+void NHSPhoneSetKeypadDefault();
 #endif
 
 #endif /* MSWINCMDWindow_h */
index 03cfa3bcd84ce92415ef7d1141085cf6d74198d2..afa4e53e5aa7a1cc1a9132bb542657b10a225b66 100644 (file)
@@ -11,8 +11,9 @@
 #include "config.h"
 #include "global.h"
 
-int mswin_getlin_window (const char *question, char *result, size_t result_size);
-int mswin_ext_cmd_window (int* selection);
-int  mswin_player_selection_window(int* selection);
+int mswin_getlin_window(const char *question, char *result,
+                        size_t result_size);
+int mswin_ext_cmd_window(int *selection);
+int mswin_player_selection_window(int *selection);
 
 #endif /* MSWINDlgWindow_h */
index 64f4aef3458bbd7ca0ffd0be721f9609d17726b2..b4f723f7545b8090f5b0e646fac315cacd526f04 100644 (file)
 /* nethack input queue - store/extract input events */
 #include "winMS.h"
 
-#define NHEVENT_CHAR   1
-#define NHEVENT_MOUSE  2
+#define NHEVENT_CHAR 1
+#define NHEVENT_MOUSE 2
 typedef struct mswin_event {
-       int type;
-       union {
-               struct {
-                       int  ch;
-               } kbd;
-
-               struct {
-                       int mod;
-                       int x, y;
-               } ms;
-       };
+    int type;
+    union {
+        struct {
+            int ch;
+        } kbd;
+
+        struct {
+            int mod;
+            int x, y;
+        } ms;
+    };
 } MSNHEvent, *PMSNHEvent;
 
-#define NHEVENT_KBD(c) { MSNHEvent e; e.type=NHEVENT_CHAR; e.kbd.ch=(c); mswin_input_push(&e); }
-#define NHEVENT_MS(_mod, _x, _y) { MSNHEvent e; e.type=NHEVENT_MOUSE; e.ms.mod = (_mod); e.ms.x=(_x); e.ms.y=(_y); mswin_input_push(&e); }
-
-void           mswin_nh_input_init();
-int                    mswin_have_input();
-void           mswin_input_push(PMSNHEvent event);
-PMSNHEvent     mswin_input_pop();
-PMSNHEvent     mswin_input_peek();
+#define NHEVENT_KBD(c)         \
+    {                          \
+        MSNHEvent e;           \
+        e.type = NHEVENT_CHAR; \
+        e.kbd.ch = (c);        \
+        mswin_input_push(&e);  \
+    }
+#define NHEVENT_MS(_mod, _x, _y) \
+    {                            \
+        MSNHEvent e;             \
+        e.type = NHEVENT_MOUSE;  \
+        e.ms.mod = (_mod);       \
+        e.ms.x = (_x);           \
+        e.ms.y = (_y);           \
+        mswin_input_push(&e);    \
+    }
+
+void mswin_nh_input_init();
+int mswin_have_input();
+void mswin_input_push(PMSNHEvent event);
+PMSNHEvent mswin_input_pop();
+PMSNHEvent mswin_input_peek();
 
 #endif /* MSWINInput_h */
-
index fea0b25e58b9f149a6f007e8ac0ce53ff2abf4d9..6f69e263e9cbfe31c548898d9a49c8d6b512ee58 100644 (file)
@@ -12,9 +12,8 @@
 #include "winMS.h"
 
 extern TCHAR szMainWindowClass[];
-HWND mswin_init_main_window ();
+HWND mswin_init_main_window();
 void mswin_layout_main_window(HWND changed_child);
 void mswin_select_map_mode(int map_mode);
 
 #endif /* MSWINMainWindow_h */
-
index f140e8c85ff9364144a60e689946c05fcee002c0..626100057560e0fcf929c55dd9ae7ec10132e105 100644 (file)
 #include "config.h"
 #include "global.h"
 
-
-HWND mswin_init_map_window (void);
+HWND mswin_init_map_window(void);
 void mswin_map_stretch(HWND hWnd, LPSIZE lpsz, BOOL redraw);
 int mswin_map_mode(HWND hWnd, int mode);
-void mswin_map_get_cursor(HWND hWnd, int* x, int* y);
+void mswin_map_get_cursor(HWND hWnd, int *x, int *y);
 
-#define ROGUE_LEVEL_MAP_MODE           MAP_MODE_ASCII12x16     
+#define ROGUE_LEVEL_MAP_MODE MAP_MODE_ASCII12x16
 
-#define DEF_CLIPAROUND_MARGIN  5
-#define DEF_CLIPAROUND_AMOUNT  1
+#define DEF_CLIPAROUND_MARGIN 5
+#define DEF_CLIPAROUND_AMOUNT 1
 
 #endif /* MSWINMapWindow_h */
index e1ec643f5c5f80682d42c752fa90394c3dff0e2e..7ef5bee06b53fea98d51357f5adfdbff44699537 100644 (file)
 #include "config.h"
 #include "global.h"
 
-#define MENU_TYPE_TEXT     1
-#define MENU_TYPE_MENU     2
+#define MENU_TYPE_TEXT 1
+#define MENU_TYPE_MENU 2
 
-HWND mswin_init_menu_window ( int type );
-int mswin_menu_window_select_menu (HWND hwnd, int how, MENU_ITEM_P **);
-void mswin_menu_window_size (HWND hwnd, LPSIZE sz);
+HWND mswin_init_menu_window(int type);
+int mswin_menu_window_select_menu(HWND hwnd, int how, MENU_ITEM_P **);
+void mswin_menu_window_size(HWND hwnd, LPSIZE sz);
 
 #endif /* MSWINTextWindow_h */
index 22312c11617e90eb81623df4403f589c28714a59..7162943385db78679e7cf50c38477ee3320fa248 100644 (file)
@@ -8,56 +8,56 @@
 #define MHNethackMessages_H
 
 /* nethack messages */
-#define WM_MSNH_COMMAND  (WM_APP+1)
-
-#define MSNH_MSG_ADDWND                        100
-#define MSNH_MSG_PUTSTR                        101
-#define MSNH_MSG_PRINT_GLYPH   102
-#define MSNH_MSG_CLEAR_WINDOW  103
-#define MSNH_MSG_CLIPAROUND            104
-#define MSNH_MSG_STARTMENU             105
-#define MSNH_MSG_ADDMENU               106
-#define MSNH_MSG_CURSOR                        107
-#define MSNH_MSG_ENDMENU               108
+#define WM_MSNH_COMMAND (WM_APP + 1)
+
+#define MSNH_MSG_ADDWND 100
+#define MSNH_MSG_PUTSTR 101
+#define MSNH_MSG_PRINT_GLYPH 102
+#define MSNH_MSG_CLEAR_WINDOW 103
+#define MSNH_MSG_CLIPAROUND 104
+#define MSNH_MSG_STARTMENU 105
+#define MSNH_MSG_ADDMENU 106
+#define MSNH_MSG_CURSOR 107
+#define MSNH_MSG_ENDMENU 108
 
 typedef struct mswin_nhmsg_add_wnd {
-  winid                  wid;
+    winid wid;
 } MSNHMsgAddWnd, *PMSNHMsgAddWnd;
 
 typedef struct mswin_nhmsg_putstr {
-  int            attr;
-  const char* text;
-  boolean        append;
+    int attr;
+    const char *text;
+    boolean append;
 } MSNHMsgPutstr, *PMSNHMsgPutstr;
 
 typedef struct mswin_nhmsg_print_glyph {
-  XCHAR_P              x;
-  XCHAR_P              y;
-  int                  glyph;
+    XCHAR_P x;
+    XCHAR_P y;
+    int glyph;
 } MSNHMsgPrintGlyph, *PMSNHMsgPrintGlyph;
 
 typedef struct mswin_nhmsg_cliparound {
-  int                  x;
-  int                  y;
+    int x;
+    int y;
 } MSNHMsgClipAround, *PMSNHMsgClipAround;
 
 typedef struct mswin_nhmsg_add_menu {
-       int                             glyph;
-       const ANY_P*    identifier;
-       CHAR_P                  accelerator;
-       CHAR_P                  group_accel;
-       int                             attr;
-       const char *    str;
-       BOOLEAN_P               presel;
+    int glyph;
+    const ANY_P *identifier;
+    CHAR_P accelerator;
+    CHAR_P group_accel;
+    int attr;
+    const char *str;
+    BOOLEAN_P presel;
 } MSNHMsgAddMenu, *PMSNHMsgAddMenu;
 
 typedef struct mswin_nhmsg_cursor {
-  int                  x;
-  int                  y;
+    int x;
+    int y;
 } MSNHMsgCursor, *PMSNHMsgCursor;
 
 typedef struct mswin_nhmsg_end_menu {
-       const char* text;
+    const char *text;
 } MSNHMsgEndMenu, *PMSNHMsgEndMenu;
 
 #endif
index 883194cc2385440a252c339d3a6060dbbcfb058d..628c4421795bc655f81062aed91d22ac57d810b0 100644 (file)
@@ -11,8 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_message_window ();
-void mswin_message_window_size (HWND hWnd, LPSIZE sz);
-
+HWND mswin_init_message_window();
+void mswin_message_window_size(HWND hWnd, LPSIZE sz);
 
 #endif /* MSWINMessageWindow_h */
index b65b25b162cc6dead7fd1a3f0ed2f8dd28c0b49c..d97422d42bccdc703eff074e7be5493862169bbc 100644 (file)
@@ -11,8 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_RIP_window ();
-void mswin_display_RIP_window (HWND hwnd);
+HWND mswin_init_RIP_window();
+void mswin_display_RIP_window(HWND hwnd);
 
 #endif /* MSWINRIPWindow_h */
-
index 2258b91dd46aad44d073bba78ec6610720cd1374..b55da83cb9a76b034b1248a112218d31c00b8ef7 100644 (file)
@@ -11,7 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_status_window ();
-void mswin_status_window_size (HWND hWnd, LPSIZE sz);
+HWND mswin_init_status_window();
+void mswin_status_window_size(HWND hWnd, LPSIZE sz);
 
 #endif /* MSWINStatusWindow_h */
index 568b39684d24f49a93bee71bfb5c85fa6f96e96c..183d59937990a759374ab4ea9808f33d3c3b88c9 100644 (file)
@@ -11,7 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_text_window ();
-void mswin_display_text_window (HWND hwnd);
+HWND mswin_init_text_window();
+void mswin_display_text_window(HWND hwnd);
 
 #endif /* MSWINTextWindow_h */
index 4be3537b945dc2349b27fde00b6da1da2e551c97..ac31e1e6a5fe7388f1588a98b8416cc696c56145 100644 (file)
@@ -8,10 +8,10 @@
 
 #include "winMS.h"
 
-typedef struct mswin_nethack_text_bufferPNHTextBuffer;
+typedef struct mswin_nethack_text_buffer *PNHTextBuffer;
 PNHTextBuffer mswin_init_text_buffer(BOOL wrap_text);
 void mswin_free_text_buffer(PNHTextBuffer pb);
-void mswin_add_text(PNHTextBuffer pb, int attr, const chartext);
+void mswin_add_text(PNHTextBuffer pb, int attr, const char *text);
 void mswin_set_text_wrap(PNHTextBuffer pb, BOOL wrap_text);
 BOOL mswin_get_text_wrap(PNHTextBuffer pb);
 void mswin_render_text(PNHTextBuffer pb, HWND edit_control);
index fa66dcbb63b50b0f6b4956d76f1cea8483ff15ac..420dfec2d64cc5904a2e0c9f5431fa99c78b677d 100644 (file)
@@ -2,39 +2,38 @@
 #define __NEWRES_H__
 
 #if !defined(UNDER_CE)
-       #define UNDER_CE _WIN32_WCE
+#define UNDER_CE _WIN32_WCE
 #endif
 
 #if defined(_WIN32_WCE)
-       #if !defined(WCEOLE_ENABLE_DIALOGEX)
-               #define DIALOGEX DIALOG DISCARDABLE
-       #endif
-       #include <commctrl.h>
-       #define  SHMENUBAR RCDATA
-       #if (defined(WIN32_PLATFORM_PSPC) || defined(WIN32_PLATFORM_WFSP)) && (_WIN32_WCE >= 300)
-               #include <aygshell.h> 
-       #else
-               #define I_IMAGENONE             (-2)
-               #define NOMENU                  0xFFFF
-               #define IDS_SHNEW               1
-
-               #define IDM_SHAREDNEW        10
-               #define IDM_SHAREDNEWDEFAULT 11
-       #endif
+#if !defined(WCEOLE_ENABLE_DIALOGEX)
+#define DIALOGEX DIALOG DISCARDABLE
+#endif
+#include <commctrl.h>
+#define SHMENUBAR RCDATA
+#if (defined(WIN32_PLATFORM_PSPC) || defined(WIN32_PLATFORM_WFSP)) \
+    && (_WIN32_WCE >= 300)
+#include <aygshell.h>
+#else
+#define I_IMAGENONE (-2)
+#define NOMENU 0xFFFF
+#define IDS_SHNEW 1
+
+#define IDM_SHAREDNEW 10
+#define IDM_SHAREDNEWDEFAULT 11
+#endif
 #endif // _WIN32_WCE
 
-
 #ifdef RC_INVOKED
 #ifndef _INC_WINDOWS
 #define _INC_WINDOWS
-       #include "winuser.h"           // extract from windows header
+#include "winuser.h" // extract from windows header
 #endif
 #endif
 
 #ifdef IDC_STATIC
 #undef IDC_STATIC
 #endif
-#define IDC_STATIC      (-1)
+#define IDC_STATIC (-1)
 
 #endif //__NEWRES_H__
-
index 25c7179f3683067259de4e4f03daead8122f8e59..d214c986639647ef144dd31d43d3981cd84b3802 100644 (file)
 // Microsoft Developer Studio generated include file.
 // Used by winhcksp.rc
 //
-#define IDC_MYICON                      2
-#define IDD_WINHACK_DIALOG              102
-#define IDD_ABOUTBOX                    103
-#define IDS_APP_TITLE                   103
-#define IDM_ABOUT                       104
-#define IDM_EXIT                        105
-#define IDS_HELLO                       106
-#define IDI_WINHACK                     107
-#define IDC_WINHACK                     109
-#define IDC_SPHONE_DIALOGBAR            111
-#define IDC_SPHONE_TEXTDIALOGBAR        112
-#define IDR_MAINFRAME                   128
-#define IDB_TILES                       129
-#define IDD_TEXT                        130
-#define IDD_NHTEXT                      130
-#define IDD_MENU                        132
-#define IDB_MENU_SEL                    133
-#define IDB_MENU_UNSEL                  134
-#define IDD_COMMANDS                    136
-#define IDD_GETLIN                      138
-#define IDD_EXTCMD                      139
-#define IDD_PLAYER_SELECTOR             141
-#define IDB_PETMARK                     145
-#define IDB_MENU_SEL_COUNT              146
-#define IDB_KEYPAD                      147
-#define IDB_MENUBAR                     154
-#define IDC_TEXT_VIEW                   1001
-#define IDC_CMD_MOVE_NW                 1001
-#define IDC_CMD_MOVE_N                  1002
-#define IDC_MENU_LIST                   1003
-#define IDC_CMD_MOVE_NE                 1003
-#define IDC_MENU_TEXT                   1004
-#define IDC_CMD_MOVE_W                  1004
-#define IDC_CMD_MOVE_SELF               1005
-#define IDC_CMD_MOVE_E                  1006
-#define IDC_CMD_MOVE_SW                 1007
-#define IDC_CMD_MOVE_S                  1008
-#define IDC_CMD_MOVE_SE                 1009
-#define IDC_CMD_MOVE_UP                 1010
-#define IDC_CMD_MOVE_DOWN               1011
-#define IDC_CMD_5                       1012
-#define IDC_CMD_A                       1013
-#define IDC_CMD_B                       1014
-#define IDC_CMD_C                       1015
-#define IDC_CMD_D                       1016
-#define IDC_CMD_E                       1017
-#define IDC_CMD_F                       1018
-#define IDC_CMD_G                       1019
-#define IDC_CMD_H                       1020
-#define IDC_CMD_I                       1021
-#define IDC_CMD_J                       1022
-#define IDC_CMD_K                       1023
-#define IDC_CMD_L                       1024
-#define IDC_CMD_M                       1025
-#define IDC_CMD_N                       1026
-#define IDC_CMD_O                       1027
-#define IDC_CMD_P                       1028
-#define IDC_CMD_Q                       1029
-#define IDC_CMD_R                       1030
-#define IDC_CMD_S                       1031
-#define IDC_CMD_T                       1032
-#define IDC_CMD_U                       1033
-#define IDC_CMD_V                       1034
-#define IDC_CMD_W                       1035
-#define IDC_CMD_X                       1036
-#define IDC_CMD_Y                       1037
-#define IDC_CMD_Z                       1038
-#define IDC_CMD_AA                      1039
-#define IDC_CMD_BB                      1040
-#define IDC_CMD_CC                      1041
-#define IDC_CMD_DD                      1042
-#define IDC_CMD_EE                      1043
-#define IDC_CMD_FF                      1044
-#define IDC_CMD_GG                      1045
-#define IDC_CMD_HH                      1046
-#define IDC_CMD_II                      1047
-#define IDC_CMD_JJ                      1048
-#define IDC_CMD_KK                      1049
-#define IDC_CMD_LL                      1050
-#define IDC_CMD_MM                      1051
-#define IDC_CMD_NN                      1052
-#define IDC_CMD_OO                      1053
-#define IDC_CMD_PP                      1054
-#define IDC_CMD_QQ                      1055
-#define IDC_CMD_RR                      1056
-#define IDC_CMD_SS                      1057
-#define IDC_CMD_TT                      1058
-#define IDC_CMD_UU                      1059
-#define IDC_CMD_VV                      1060
-#define IDC_CMD_WW                      1061
-#define IDC_CMD_XX                      1062
-#define IDC_CMD_YY                      1063
-#define IDC_CMD_ZZ                      1064
-#define IDC_CMD_FIRST                   1100
-#define IDC_CMD_LAST                    1300
-#define IDC_GETLIN_EDIT                 1309
-#define IDC_EXTCMD_LIST                 1310
-#define IDC_PLSEL_NAME                  1314
-#define IDC_PLSEL_ROLE_RANDOM           1315
-#define IDC_PLSEL_RACE_RANDOM           1318
-#define IDC_PLSEL_GENDER_RANDOM         1319
-#define IDC_PLSEL_ALIGN_RANDOM          1320
-#define IDC_PLSEL_ROLE_LIST             1323
-#define IDC_PLSEL_RACE_LIST             1324
-#define IDC_PLSEL_ALIGN_LIST            1325
-#define IDC_PLSEL_GENDER_LIST           1326
-#define IDC_ABOUT_VERSION               1327
-#define IDC_TEXT_CONTROL                1331
-#define IDC_ABOUT_COPYRIGHT             1332
-#define IDC_TEXT_TOGGLE_WRAP            1333
-#define IDM_SAVE                        32771
-#define IDM_HELP_LONG                   32772
-#define IDM_HELP_COMMANDS               32773
-#define IDM_HELP_HISTORY                32774
-#define IDM_HELP_INFO_CHAR              32775
-#define IDM_HELP_INFO_KEY               32776
-#define IDM_HELP_OPTIONS                32777
-#define IDM_HELP_OPTIONS_LONG           32778
-#define IDM_HELP_EXTCMD                 32779
-#define IDM_HELP_LICENSE                32780
-#define IDM_MAP_TILES                   32781
-#define IDM_MAP_ASCII4X6                32782
-#define IDM_MAP_ASCII6X8                32783
-#define IDM_MAP_ASCII8X8                32784
-#define IDM_MAP_ASCII16X8               32785
-#define IDM_MAP_ASCII7X12               32786
-#define IDM_MAP_ASCII8X12               32787
-#define IDM_MAP_ASCII16X12              32788
-#define IDM_MAP_ASCII12X16              32789
-#define IDM_MAP_ASCII10X18              32790
-#define IDM_MAP_FIT_TO_SCREEN           32791
-#define ID_FILE                         32792
-#define IDS_CAP_FILE                    32793
-#define ID_HELP                         32794
-#define IDS_CAP_HELP                    32795
-#define IDS_CAP_TEMP                    32796
-#define ID_MAP                          32797
-#define IDS_CAP_AMP                     32798
-#define IDS_CAP_MAP                     32799
-#define IDM_VIEW_KEYPAD                 32800
-#define ID_VIEW                         32801
-#define IDS_CAP_VIEW                    32802
-#define IDS_CAP_ENTIREMAP               32826
-#define IDS_CAP_NORMALMAP               32827
-#define IDM_HELP_MENU                   32828
-#define IDM_VIEW_OPTIONS                32829
-#define IDM_DIRECT_COMMAND              32830
-#define IDS_TEXT_WRAP                   32831
-#define IDS_TEXT_UNWRAP                 32832
+#define IDC_MYICON 2
+#define IDD_WINHACK_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDS_APP_TITLE 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDS_HELLO 106
+#define IDI_WINHACK 107
+#define IDC_WINHACK 109
+#define IDC_SPHONE_DIALOGBAR 111
+#define IDC_SPHONE_TEXTDIALOGBAR 112
+#define IDR_MAINFRAME 128
+#define IDB_TILES 129
+#define IDD_TEXT 130
+#define IDD_NHTEXT 130
+#define IDD_MENU 132
+#define IDB_MENU_SEL 133
+#define IDB_MENU_UNSEL 134
+#define IDD_COMMANDS 136
+#define IDD_GETLIN 138
+#define IDD_EXTCMD 139
+#define IDD_PLAYER_SELECTOR 141
+#define IDB_PETMARK 145
+#define IDB_MENU_SEL_COUNT 146
+#define IDB_KEYPAD 147
+#define IDB_MENUBAR 154
+#define IDC_TEXT_VIEW 1001
+#define IDC_CMD_MOVE_NW 1001
+#define IDC_CMD_MOVE_N 1002
+#define IDC_MENU_LIST 1003
+#define IDC_CMD_MOVE_NE 1003
+#define IDC_MENU_TEXT 1004
+#define IDC_CMD_MOVE_W 1004
+#define IDC_CMD_MOVE_SELF 1005
+#define IDC_CMD_MOVE_E 1006
+#define IDC_CMD_MOVE_SW 1007
+#define IDC_CMD_MOVE_S 1008
+#define IDC_CMD_MOVE_SE 1009
+#define IDC_CMD_MOVE_UP 1010
+#define IDC_CMD_MOVE_DOWN 1011
+#define IDC_CMD_5 1012
+#define IDC_CMD_A 1013
+#define IDC_CMD_B 1014
+#define IDC_CMD_C 1015
+#define IDC_CMD_D 1016
+#define IDC_CMD_E 1017
+#define IDC_CMD_F 1018
+#define IDC_CMD_G 1019
+#define IDC_CMD_H 1020
+#define IDC_CMD_I 1021
+#define IDC_CMD_J 1022
+#define IDC_CMD_K 1023
+#define IDC_CMD_L 1024
+#define IDC_CMD_M 1025
+#define IDC_CMD_N 1026
+#define IDC_CMD_O 1027
+#define IDC_CMD_P 1028
+#define IDC_CMD_Q 1029
+#define IDC_CMD_R 1030
+#define IDC_CMD_S 1031
+#define IDC_CMD_T 1032
+#define IDC_CMD_U 1033
+#define IDC_CMD_V 1034
+#define IDC_CMD_W 1035
+#define IDC_CMD_X 1036
+#define IDC_CMD_Y 1037
+#define IDC_CMD_Z 1038
+#define IDC_CMD_AA 1039
+#define IDC_CMD_BB 1040
+#define IDC_CMD_CC 1041
+#define IDC_CMD_DD 1042
+#define IDC_CMD_EE 1043
+#define IDC_CMD_FF 1044
+#define IDC_CMD_GG 1045
+#define IDC_CMD_HH 1046
+#define IDC_CMD_II 1047
+#define IDC_CMD_JJ 1048
+#define IDC_CMD_KK 1049
+#define IDC_CMD_LL 1050
+#define IDC_CMD_MM 1051
+#define IDC_CMD_NN 1052
+#define IDC_CMD_OO 1053
+#define IDC_CMD_PP 1054
+#define IDC_CMD_QQ 1055
+#define IDC_CMD_RR 1056
+#define IDC_CMD_SS 1057
+#define IDC_CMD_TT 1058
+#define IDC_CMD_UU 1059
+#define IDC_CMD_VV 1060
+#define IDC_CMD_WW 1061
+#define IDC_CMD_XX 1062
+#define IDC_CMD_YY 1063
+#define IDC_CMD_ZZ 1064
+#define IDC_CMD_FIRST 1100
+#define IDC_CMD_LAST 1300
+#define IDC_GETLIN_EDIT 1309
+#define IDC_EXTCMD_LIST 1310
+#define IDC_PLSEL_NAME 1314
+#define IDC_PLSEL_ROLE_RANDOM 1315
+#define IDC_PLSEL_RACE_RANDOM 1318
+#define IDC_PLSEL_GENDER_RANDOM 1319
+#define IDC_PLSEL_ALIGN_RANDOM 1320
+#define IDC_PLSEL_ROLE_LIST 1323
+#define IDC_PLSEL_RACE_LIST 1324
+#define IDC_PLSEL_ALIGN_LIST 1325
+#define IDC_PLSEL_GENDER_LIST 1326
+#define IDC_ABOUT_VERSION 1327
+#define IDC_TEXT_CONTROL 1331
+#define IDC_ABOUT_COPYRIGHT 1332
+#define IDC_TEXT_TOGGLE_WRAP 1333
+#define IDM_SAVE 32771
+#define IDM_HELP_LONG 32772
+#define IDM_HELP_COMMANDS 32773
+#define IDM_HELP_HISTORY 32774
+#define IDM_HELP_INFO_CHAR 32775
+#define IDM_HELP_INFO_KEY 32776
+#define IDM_HELP_OPTIONS 32777
+#define IDM_HELP_OPTIONS_LONG 32778
+#define IDM_HELP_EXTCMD 32779
+#define IDM_HELP_LICENSE 32780
+#define IDM_MAP_TILES 32781
+#define IDM_MAP_ASCII4X6 32782
+#define IDM_MAP_ASCII6X8 32783
+#define IDM_MAP_ASCII8X8 32784
+#define IDM_MAP_ASCII16X8 32785
+#define IDM_MAP_ASCII7X12 32786
+#define IDM_MAP_ASCII8X12 32787
+#define IDM_MAP_ASCII16X12 32788
+#define IDM_MAP_ASCII12X16 32789
+#define IDM_MAP_ASCII10X18 32790
+#define IDM_MAP_FIT_TO_SCREEN 32791
+#define ID_FILE 32792
+#define IDS_CAP_FILE 32793
+#define ID_HELP 32794
+#define IDS_CAP_HELP 32795
+#define IDS_CAP_TEMP 32796
+#define ID_MAP 32797
+#define IDS_CAP_AMP 32798
+#define IDS_CAP_MAP 32799
+#define IDM_VIEW_KEYPAD 32800
+#define ID_VIEW 32801
+#define IDS_CAP_VIEW 32802
+#define IDS_CAP_ENTIREMAP 32826
+#define IDS_CAP_NORMALMAP 32827
+#define IDM_HELP_MENU 32828
+#define IDM_VIEW_OPTIONS 32829
+#define IDM_DIRECT_COMMAND 32830
+#define IDS_TEXT_WRAP 32831
+#define IDS_TEXT_UNWRAP 32832
 
 // Next default values for new objects
-// 
+//
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        155
-#define _APS_NEXT_COMMAND_VALUE         32833
-#define _APS_NEXT_CONTROL_VALUE         1334
-#define _APS_NEXT_SYMED_VALUE           110
+#define _APS_NEXT_RESOURCE_VALUE 155
+#define _APS_NEXT_COMMAND_VALUE 32833
+#define _APS_NEXT_CONTROL_VALUE 1334
+#define _APS_NEXT_SYMED_VALUE 110
 #endif
 #endif
index b1ed1bd9625fdf04457d87ff9f40a0c79281aa42..4824864e032afc1a3c33a12c75f36a855997c3f1 100644 (file)
@@ -6,7 +6,7 @@
 #ifndef WINMS_H
 #define WINMS_H
 
-#pragma warning(disable:4142) /* benign redefinition of type */
+#pragma warning(disable : 4142) /* benign redefinition of type */
 
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #include "hack.h"
 
 #if defined(WIN_CE_POCKETPC)
-#include <aygshell.h> 
+#include <aygshell.h>
 #include <sipapi.h>
 #endif
 
 #if defined(WIN_CE_SMARTPHONE)
-#include <aygshell.h> 
+#include <aygshell.h>
 #include <sipapi.h>
 #include <shlobj.h>
 #include <prsht.h>
@@ -45,8 +45,8 @@
 #endif
 
 /* RIP window ID */
-#define NHW_RIP                32
-#define NHW_KEYPAD  33
+#define NHW_RIP 32
+#define NHW_KEYPAD 33
 
 /* size of tiles */
 #ifndef TILE_X
@@ -55,7 +55,7 @@
 #define TILE_Y 16
 
 /* tiles per line in the bitmap */
-#define TILES_PER_LINE  40
+#define TILES_PER_LINE 40
 
 /* tile background color */
 #define TILE_BK_COLOR RGB(71, 108, 108)
 #define NHFONT_SIZE_MAX 20
 
 typedef struct mswin_nhwindow_data {
-  HWND       win;
-  int            type;
-  int            dead;
+    HWND win;
+    int type;
+    int dead;
 } MSNHWinData, *PMSNHWinData;
 
 /* global application data - alailable thour GetNHApp() */
 typedef struct mswin_nhwindow_app {
-       HINSTANCE   hApp;               /* hInstance from WinMain */
-       int                     nCmdShow;       /* main window mode flag */
-       HWND            hMainWnd;       /* main window handle */
-       HACCEL          hAccelTable; /* accelerator table */
-       HWND            hPopupWnd;      /* active dialog window (nethack menu, text, etc) */
-       HWND            hMenuBar;       /* menu bar */
-
-       MSNHWinData windowlist[MAXWINDOWS];     /* nethack windows array */
-
-       HBITMAP         bmpTiles;       /* nethack tiles */
-       HBITMAP         bmpPetMark; /* pet mark Bitmap */
-       HBITMAP         bmpMapTiles; /* alternative map tiles */
-       int                     mapTile_X;      /* alt. tiles width */
-       int                     mapTile_Y;      /* alt. tiles height */
-       int                     mapTilesPerLine;        /* number of tile per row in the bitmap */
-
-       boolean         bNoHScroll;     /* disable cliparound for horizontal grid (map) */
-       boolean         bNoVScroll; /* disable cliparound for vertical grid (map) */
-
-       int                     mapDisplayModeSave;     /* saved map display mode */
-
-       int                     bCmdPad;        /* command pad - on-screen keyboard */ 
-       HWND            hCmdWnd;        /* handle of on-screen keyboard window */
-
-       /* options */
-       boolean         bWrapText;      /* format text to fit the window */
-       boolean         bFullScreen;/* run nethack in full-screen mode  */
-       boolean         bHideScrollBars; /* hide scroll bars */
-       boolean         bUseSIP; /* use SIP (built-in software keyboard) for menus (PocketPC only) */
+    HINSTANCE hApp;     /* hInstance from WinMain */
+    int nCmdShow;       /* main window mode flag */
+    HWND hMainWnd;      /* main window handle */
+    HACCEL hAccelTable; /* accelerator table */
+    HWND hPopupWnd;     /* active dialog window (nethack menu, text, etc) */
+    HWND hMenuBar;      /* menu bar */
+
+    MSNHWinData windowlist[MAXWINDOWS]; /* nethack windows array */
+
+    HBITMAP bmpTiles;    /* nethack tiles */
+    HBITMAP bmpPetMark;  /* pet mark Bitmap */
+    HBITMAP bmpMapTiles; /* alternative map tiles */
+    int mapTile_X;       /* alt. tiles width */
+    int mapTile_Y;       /* alt. tiles height */
+    int mapTilesPerLine; /* number of tile per row in the bitmap */
+
+    boolean bNoHScroll; /* disable cliparound for horizontal grid (map) */
+    boolean bNoVScroll; /* disable cliparound for vertical grid (map) */
+
+    int mapDisplayModeSave; /* saved map display mode */
+
+    int bCmdPad;  /* command pad - on-screen keyboard */
+    HWND hCmdWnd; /* handle of on-screen keyboard window */
+
+    /* options */
+    boolean bWrapText;       /* format text to fit the window */
+    boolean bFullScreen;     /* run nethack in full-screen mode  */
+    boolean bHideScrollBars; /* hide scroll bars */
+    boolean bUseSIP;         /* use SIP (built-in software keyboard) for menus
+                                (PocketPC only) */
 } NHWinApp, *PNHWinApp;
 extern PNHWinApp GetNHApp();
 
@@ -113,7 +114,7 @@ E struct window_procs mswin_procs;
 #undef E
 
 /* Some prototypes */
-void mswin_init_nhwindows(int* argc, char** argv);
+void mswin_init_nhwindows(int *argc, char **argv);
 void mswin_player_selection(void);
 void mswin_askname(void);
 void mswin_get_nh_event(void);
@@ -127,28 +128,27 @@ void mswin_destroy_nhwindow(winid wid);
 void mswin_curs(winid wid, int x, int y);
 void mswin_putstr(winid wid, int attr, const char *text);
 void mswin_putstr_ex(winid wid, int attr, const char *text, boolean append);
-void mswin_display_file(const char *filename,BOOLEAN_P must_exist);
+void mswin_display_file(const char *filename, BOOLEAN_P must_exist);
 void mswin_start_menu(winid wid);
-void mswin_add_menu(winid wid, int glyph, const ANY_P * identifier,
-               CHAR_P accelerator, CHAR_P group_accel, int attr, 
-               const char *str, BOOLEAN_P presel);
+void mswin_add_menu(winid wid, int glyph, const ANY_P *identifier,
+                    CHAR_P accelerator, CHAR_P group_accel, int attr,
+                    const char *str, BOOLEAN_P presel);
 void mswin_end_menu(winid wid, const char *prompt);
-int  mswin_select_menu(winid wid, int how, MENU_ITEM_P **selected);
+int mswin_select_menu(winid wid, int how, MENU_ITEM_P **selected);
 void mswin_update_inventory(void);
 void mswin_mark_synch(void);
 void mswin_wait_synch(void);
 void mswin_cliparound(int x, int y);
-void mswin_print_glyph(winid wid,XCHAR_P x,XCHAR_P y,int glyph);
+void mswin_print_glyph(winid wid, XCHAR_P x, XCHAR_P y, int glyph);
 void mswin_raw_print(const char *str);
 void mswin_raw_print_bold(const char *str);
-int  mswin_nhgetch(void);
-int  mswin_nh_poskey(int *x, int *y, int *mod);
+int mswin_nhgetch(void);
+int mswin_nh_poskey(int *x, int *y, int *mod);
 void mswin_nhbell(void);
-int  mswin_doprev_message(void);
-char mswin_yn_function(const char *question, const char *choices,
-               CHAR_P def);
+int mswin_doprev_message(void);
+char mswin_yn_function(const char *question, const char *choices, CHAR_P def);
 void mswin_getlin(const char *question, char *input);
-int  mswin_get_ext_cmd(void);
+int mswin_get_ext_cmd(void);
 void mswin_number_pad(int state);
 void mswin_delay_output(void);
 void mswin_change_color(void);
@@ -164,16 +164,15 @@ winid mswin_winid_from_type(int type);
 winid mswin_winid_from_handle(HWND hWnd);
 void mswin_window_mark_dead(winid wid);
 void bail(const char *mesg);
-void nhapply_image_transparent( 
-       HDC hDC, int x, int y, int width, int height,
-       HDC sourceDC, int s_x, int s_y, int s_width, int s_height,
-       COLORREF cTransparent
-);
-void mswin_popup_display(HWND popup, int* done_indicator);
+void nhapply_image_transparent(HDC hDC, int x, int y, int width, int height,
+                               HDC sourceDC, int s_x, int s_y, int s_width,
+                               int s_height, COLORREF cTransparent);
+void mswin_popup_display(HWND popup, int *done_indicator);
 void mswin_popup_destroy(HWND popup);
 
 #if defined(WIN_CE_SMARTPHONE)
-void NHSPhoneDialogSetup(HWND hDlg, UINT nToolBarId, BOOL is_edit, BOOL is_fullscreen);
+void NHSPhoneDialogSetup(HWND hDlg, UINT nToolBarId, BOOL is_edit,
+                         BOOL is_fullscreen);
 #endif
 
 void mswin_read_reg(void);
index a10e1cd3efa61371f2b9d72a68a37ddfa6c99dbe..45075acb83e038c594f2225bf55b884c8ccc0995 100644 (file)
@@ -1,7 +1,8 @@
 /* NetHack 3.6 win32api.h      $NHDT-Date$  $NHDT-Branch$:$NHDT-Revision$ */
 /* NetHack 3.6 win32api.h      $Date: 2009/05/06 10:53:39 $  $Revision: 1.6 $ */
 /*     SCCS Id: @(#)win32api.h  3.5     $NHDT-Date$              */
-/*     SCCS Id: @(#)win32api.h  3.5     $Date: 2009/05/06 10:53:39 $             */
+/*     SCCS Id: @(#)win32api.h  3.5     $Date: 2009/05/06 10:53:39 $
+ */
 /* Copyright (c) NetHack PC Development Team 1996                 */
 /* NetHack may be freely redistributed.  See license for details. */
 
  * header files & NetHack before including windows.h, so all NetHack
  * files should include "win32api.h" rather than <windows.h>.
  */
-# if defined(_MSC_VER)
-# undef strcmpi
-# undef min
-# undef max
-# pragma warning(disable:4142)  /* Warning, Benign redefinition of type */
-# pragma pack(8)
-# endif
+#if defined(_MSC_VER)
+#undef strcmpi
+#undef min
+#undef max
+#pragma warning(disable : 4142) /* Warning, Benign redefinition of type */
+#pragma pack(8)
+#endif
 
 #define WIN32_LEAN_AND_MEAN
 
 #include <windows.h>
 #include <commctrl.h>
 
-# if defined(_MSC_VER)
-# pragma pack()
-# endif
+#if defined(_MSC_VER)
+#pragma pack()
+#endif
 
 /*win32api.h*/
index 6a5cbc46bd2c8c693f7c877e819caca819ea1e03..51f4f521fe3c80658f51ee8a65183769dd19890f 100644 (file)
  * This file generated by mdgrep.pl version 1.7.
  * DO NOT EDIT!  Your changes will be lost.
  */
-static struct grep_var grep_vars[]={
-       {"0", 0},
-       {"1", 1},
+static struct grep_var grep_vars[] = { { "0", 0 },
+                                       { "1", 1 },
 #if defined(ALLDOCS)
-       {"ALLDOCS", 1},
+                                       { "ALLDOCS", 1 },
 #else
-       {"ALLDOCS", 0},
+                                       { "ALLDOCS", 0 },
 #endif
 #if defined(AMIGA)
-       {"AMIGA", 1},
+                                       { "AMIGA", 1 },
 #else
-       {"AMIGA", 0},
+                                       { "AMIGA", 0 },
 #endif
 #if defined(AMII_GRAPHICS)
-       {"AMII_GRAPHICS", 1},
+                                       { "AMII_GRAPHICS", 1 },
 #else
-       {"AMII_GRAPHICS", 0},
+                                       { "AMII_GRAPHICS", 0 },
 #endif
 #if defined(ASCIIGRAPH)
-       {"ASCIIGRAPH", 1},
+                                       { "ASCIIGRAPH", 1 },
 #else
-       {"ASCIIGRAPH", 0},
+                                       { "ASCIIGRAPH", 0 },
 #endif
 #if defined(BETA)
-       {"BETA", 1},
+                                       { "BETA", 1 },
 #else
-       {"BETA", 0},
+                                       { "BETA", 0 },
 #endif
 #if defined(BSD_JOB_CONTROL)
-       {"BSD_JOB_CONTROL", 1},
+                                       { "BSD_JOB_CONTROL", 1 },
 #else
-       {"BSD_JOB_CONTROL", 0},
+                                       { "BSD_JOB_CONTROL", 0 },
 #endif
 #if defined(CLIPPING)
-       {"CLIPPING", 1},
+                                       { "CLIPPING", 1 },
 #else
-       {"CLIPPING", 0},
+                                       { "CLIPPING", 0 },
 #endif
 #if defined(COMPRESS)
-       {"COMPRESS", 1},
+                                       { "COMPRESS", 1 },
 #else
-       {"COMPRESS", 0},
+                                       { "COMPRESS", 0 },
 #endif
 #if defined(DLB)
-       {"DLB", 1},
+                                       { "DLB", 1 },
 #else
-       {"DLB", 0},
+                                       { "DLB", 0 },
 #endif
-       {"FALSE", 0},
+                                       { "FALSE", 0 },
 #if defined(GEM_GRAPHICS)
-       {"GEM_GRAPHICS", 1},
+                                       { "GEM_GRAPHICS", 1 },
 #else
-       {"GEM_GRAPHICS", 0},
+                                       { "GEM_GRAPHICS", 0 },
 #endif
 #if defined(GNOME_GRAPHICS)
-       {"GNOME_GRAPHICS", 1},
+                                       { "GNOME_GRAPHICS", 1 },
 #else
-       {"GNOME_GRAPHICS", 0},
+                                       { "GNOME_GRAPHICS", 0 },
 #endif
 #if defined(HANGUPHANDLING)
-       {"HANGUPHANDLING", 1},
+                                       { "HANGUPHANDLING", 1 },
 #else
-       {"HANGUPHANDLING", 0},
+                                       { "HANGUPHANDLING", 0 },
 #endif
 #if defined(INSURANCE)
-       {"INSURANCE", 1},
+                                       { "INSURANCE", 1 },
 #else
-       {"INSURANCE", 0},
+                                       { "INSURANCE", 0 },
 #endif
 #if defined(LIFE)
-       {"LIFE", 1},
+                                       { "LIFE", 1 },
 #else
-       {"LIFE", 0},
+                                       { "LIFE", 0 },
 #endif
 #if defined(MAC)
-       {"MAC", 1},
+                                       { "MAC", 1 },
 #else
-       {"MAC", 0},
+                                       { "MAC", 0 },
 #endif
 #if defined(MAC_GRAPHICS)
-       {"MAC_GRAPHICS", 1},
+                                       { "MAC_GRAPHICS", 1 },
 #else
-       {"MAC_GRAPHICS", 0},
+                                       { "MAC_GRAPHICS", 0 },
 #endif
 #if defined(MAIL)
-       {"MAIL", 1},
+                                       { "MAIL", 1 },
 #else
-       {"MAIL", 0},
+                                       { "MAIL", 0 },
 #endif
 #if defined(MFLOPPY)
-       {"MFLOPPY", 1},
+                                       { "MFLOPPY", 1 },
 #else
-       {"MFLOPPY", 0},
+                                       { "MFLOPPY", 0 },
 #endif
 #if defined(MSDOS)
-       {"MSDOS", 1},
+                                       { "MSDOS", 1 },
 #else
-       {"MSDOS", 0},
+                                       { "MSDOS", 0 },
 #endif
 #if defined(MSWIN_GRAPHICS)
-       {"MSWIN_GRAPHICS", 1},
+                                       { "MSWIN_GRAPHICS", 1 },
 #else
-       {"MSWIN_GRAPHICS", 0},
+                                       { "MSWIN_GRAPHICS", 0 },
 #endif
 #if defined(NOCWD_ASSUMPTIONS)
-       {"NOCWD_ASSUMPTIONS", 1},
+                                       { "NOCWD_ASSUMPTIONS", 1 },
 #else
-       {"NOCWD_ASSUMPTIONS", 0},
+                                       { "NOCWD_ASSUMPTIONS", 0 },
 #endif
 #if defined(NOSAVEONHANGUP)
-       {"NOSAVEONHANGUP", 1},
+                                       { "NOSAVEONHANGUP", 1 },
 #else
-       {"NOSAVEONHANGUP", 0},
+                                       { "NOSAVEONHANGUP", 0 },
 #endif
 #if defined(OS2)
-       {"OS2", 1},
+                                       { "OS2", 1 },
 #else
-       {"OS2", 0},
+                                       { "OS2", 0 },
 #endif
 #if defined(POSIX_JOB_CONTROL)
-       {"POSIX_JOB_CONTROL", 1},
+                                       { "POSIX_JOB_CONTROL", 1 },
 #else
-       {"POSIX_JOB_CONTROL", 0},
+                                       { "POSIX_JOB_CONTROL", 0 },
 #endif
 #if defined(QT_GRAPHICS)
-       {"QT_GRAPHICS", 1},
+                                       { "QT_GRAPHICS", 1 },
 #else
-       {"QT_GRAPHICS", 0},
+                                       { "QT_GRAPHICS", 0 },
 #endif
 #if defined(RANDOM)
-       {"RANDOM", 1},
+                                       { "RANDOM", 1 },
 #else
-       {"RANDOM", 0},
+                                       { "RANDOM", 0 },
 #endif
 #if defined(SAFERHANGUP)
-       {"SAFERHANGUP", 1},
+                                       { "SAFERHANGUP", 1 },
 #else
-       {"SAFERHANGUP", 0},
+                                       { "SAFERHANGUP", 0 },
 #endif
 #if defined(SECURE)
-       {"SECURE", 1},
+                                       { "SECURE", 1 },
 #else
-       {"SECURE", 0},
+                                       { "SECURE", 0 },
 #endif
 #if defined(SHELL)
-       {"SHELL", 1},
+                                       { "SHELL", 1 },
 #else
-       {"SHELL", 0},
+                                       { "SHELL", 0 },
 #endif
 #if defined(SUSPEND)
-       {"SUSPEND", 1},
+                                       { "SUSPEND", 1 },
 #else
-       {"SUSPEND", 0},
+                                       { "SUSPEND", 0 },
 #endif
 #if defined(TEXTCOLOR)
-       {"TEXTCOLOR", 1},
+                                       { "TEXTCOLOR", 1 },
 #else
-       {"TEXTCOLOR", 0},
+                                       { "TEXTCOLOR", 0 },
 #endif
 #if defined(TOS)
-       {"TOS", 1},
+                                       { "TOS", 1 },
 #else
-       {"TOS", 0},
+                                       { "TOS", 0 },
 #endif
-       {"TRUE", 1},
+                                       { "TRUE", 1 },
 #if defined(TTY_GRAPHICS)
-       {"TTY_GRAPHICS", 1},
+                                       { "TTY_GRAPHICS", 1 },
 #else
-       {"TTY_GRAPHICS", 0},
+                                       { "TTY_GRAPHICS", 0 },
 #endif
 #if defined(UNICODE_DRAWING)
-       {"UNICODE_DRAWING", 1},
+                                       { "UNICODE_DRAWING", 1 },
 #else
-       {"UNICODE_DRAWING", 0},
+                                       { "UNICODE_DRAWING", 0 },
 #endif
 #if defined(UNICODE_PLAYERTEXT)
-       {"UNICODE_PLAYERTEXT", 1},
+                                       { "UNICODE_PLAYERTEXT", 1 },
 #else
-       {"UNICODE_PLAYERTEXT", 0},
+                                       { "UNICODE_PLAYERTEXT", 0 },
 #endif
 #if defined(UNICODE_WIDEWINPORT)
-       {"UNICODE_WIDEWINPORT", 1},
+                                       { "UNICODE_WIDEWINPORT", 1 },
 #else
-       {"UNICODE_WIDEWINPORT", 0},
+                                       { "UNICODE_WIDEWINPORT", 0 },
 #endif
 #if defined(UNIX)
-       {"UNIX", 1},
+                                       { "UNIX", 1 },
 #else
-       {"UNIX", 0},
+                                       { "UNIX", 0 },
 #endif
 #if defined(USER_SOUNDS)
-       {"USER_SOUNDS", 1},
+                                       { "USER_SOUNDS", 1 },
 #else
-       {"USER_SOUNDS", 0},
+                                       { "USER_SOUNDS", 0 },
 #endif
 #if defined(USE_TILES)
-       {"USE_TILES", 1},
+                                       { "USE_TILES", 1 },
 #else
-       {"USE_TILES", 0},
+                                       { "USE_TILES", 0 },
 #endif
 #if defined(VAR_PLAYGROUND)
-       {"VAR_PLAYGROUND", 1},
+                                       { "VAR_PLAYGROUND", 1 },
 #else
-       {"VAR_PLAYGROUND", 0},
+                                       { "VAR_PLAYGROUND", 0 },
 #endif
 #if defined(VMS)
-       {"VMS", 1},
+                                       { "VMS", 1 },
 #else
-       {"VMS", 0},
+                                       { "VMS", 0 },
 #endif
 #if defined(WIN32)
-       {"WIN32", 1},
+                                       { "WIN32", 1 },
 #else
-       {"WIN32", 0},
+                                       { "WIN32", 0 },
 #endif
 #if defined(WIN32_PLATFORM_HPCPRO)
-       {"WIN32_PLATFORM_HPCPRO", 1},
+                                       { "WIN32_PLATFORM_HPCPRO", 1 },
 #else
-       {"WIN32_PLATFORM_HPCPRO", 0},
+                                       { "WIN32_PLATFORM_HPCPRO", 0 },
 #endif
 #if defined(WIN32_PLATFORM_WFSP)
-       {"WIN32_PLATFORM_WFSP", 1},
+                                       { "WIN32_PLATFORM_WFSP", 1 },
 #else
-       {"WIN32_PLATFORM_WFSP", 0},
+                                       { "WIN32_PLATFORM_WFSP", 0 },
 #endif
 #if defined(WINNT)
-       {"WINNT", 1},
+                                       { "WINNT", 1 },
 #else
-       {"WINNT", 0},
+                                       { "WINNT", 0 },
 #endif
 #if defined(WIN_CE)
-       {"WIN_CE", 1},
+                                       { "WIN_CE", 1 },
 #else
-       {"WIN_CE", 0},
+                                       { "WIN_CE", 0 },
 #endif
 #if defined(WIN_CE_POCKETPC)
-       {"WIN_CE_POCKETPC", 1},
+                                       { "WIN_CE_POCKETPC", 1 },
 #else
-       {"WIN_CE_POCKETPC", 0},
+                                       { "WIN_CE_POCKETPC", 0 },
 #endif
 #if defined(WIN_CE_PS2xx)
-       {"WIN_CE_PS2xx", 1},
+                                       { "WIN_CE_PS2xx", 1 },
 #else
-       {"WIN_CE_PS2xx", 0},
+                                       { "WIN_CE_PS2xx", 0 },
 #endif
 #if defined(WIN_CE_SMARTPHONE)
-       {"WIN_CE_SMARTPHONE", 1},
+                                       { "WIN_CE_SMARTPHONE", 1 },
 #else
-       {"WIN_CE_SMARTPHONE", 0},
+                                       { "WIN_CE_SMARTPHONE", 0 },
 #endif
-       {"WIZARD", 1},
+                                       { "WIZARD", 1 },
 #if defined(X11_GRAPHICS)
-       {"X11_GRAPHICS", 1},
+                                       { "X11_GRAPHICS", 1 },
 #else
-       {"X11_GRAPHICS", 0},
+                                       { "X11_GRAPHICS", 0 },
 #endif
 #if defined(ZEROCOMP)
-       {"ZEROCOMP", 1},
+                                       { "ZEROCOMP", 1 },
 #else
-       {"ZEROCOMP", 0},
+                                       { "ZEROCOMP", 0 },
 #endif
 #if defined(ZLIB_COMP)
-       {"ZLIB_COMP", 1},
+                                       { "ZLIB_COMP", 1 },
 #else
-       {"ZLIB_COMP", 0},
+                                       { "ZLIB_COMP", 0 },
 #endif
 #if defined(__BEOS__)
-       {"__BEOS__", 1},
+                                       { "__BEOS__", 1 },
 #else
-       {"__BEOS__", 0},
+                                       { "__BEOS__", 0 },
 #endif
-       {0,0}
-};
+                                       { 0, 0 } };
 
 /* Command ids */
 #define TODO_GREP 1
index 4875d0453ad9b4089ae0d3ccb906bf103a06eb66..95144d771e010281c349783de06a99211411ec55 100644 (file)
 #include <qimage.h>
 #include <qvbox.h>
 
-class TilePickerTab : public QWidget {
+class TilePickerTab : public QWidget
+{
     Q_OBJECT
-public:
-    TilePickerTab(const char* basename, int id, QWidget* parent);
+  public:
+    TilePickerTab(const char *basename, int id, QWidget *parent);
 
     bool save();
     int numTiles();
 
-signals:
-    void pick(const QImage&);
-    void pickName(const QString&);
+  signals:
+    void pick(const QImage &);
+    void pickName(const QString &);
 
-public slots:
-    void setCurrent(const QImage&);
+  public slots:
+    void setCurrent(const QImage &);
 
-protected:
-    void paintEvent( QPaintEvent* );
+  protected:
+    void paintEvent(QPaintEvent *);
     QSize sizeHint() const;
-    void mousePressEvent(QMouseEvent*);
+    void mousePressEvent(QMouseEvent *);
 
-private:
+  private:
     QString filename;
     int id;
     int last_pick;
@@ -40,89 +41,95 @@ private:
     QImage image;
 };
 
-class TilePicker : public QTabWidget {
+class TilePicker : public QTabWidget
+{
     Q_OBJECT
-public:
-    TilePicker(QWidgetparent);
+  public:
+    TilePicker(QWidget *parent);
 
-    void setTile(int tilenum, const QImage&);
+    void setTile(int tilenum, const QImage &);
 
-signals:
-    void pick(const QImage&);
-    void pickName(const QString&);
+  signals:
+    void pick(const QImage &);
+    void pickName(const QString &);
 
-public slots:
-    void setCurrent(const QImage&);
+  public slots:
+    void setCurrent(const QImage &);
     void save();
 };
 
-class TrivialTileEditor : public QWidget {
+class TrivialTileEditor : public QWidget
+{
     Q_OBJECT
-public:
-    TrivialTileEditor( QWidget* parent );
-    const QImageimage() const;
+  public:
+    TrivialTileEditor(QWidget *parent);
+    const QImage &image() const;
 
-signals:
-    void edited(const QImage&);
+  signals:
+    void edited(const QImage &);
     void pick(QRgb);
 
-public slots:
+  public slots:
     void setColor(QRgb);
-    void setImage( const QImage& );
+    void setImage(const QImage &);
 
-protected:
-    void paintEvent( QPaintEvent* );
-    void mousePressEvent(QMouseEvent*);
-    void mouseReleaseEvent(QMouseEvent*);
-    void mouseMoveEvent(QMouseEvent*);
+  protected:
+    void paintEvent(QPaintEvent *);
+    void mousePressEvent(QMouseEvent *);
+    void mouseReleaseEvent(QMouseEvent *);
+    void mouseMoveEvent(QMouseEvent *);
     QSize sizeHint() const;
     QSize sizeForWidth(int) const;
     QSizePolicy sizePolicy() const;
 
-private:
-    void fill(QPainterpainter, QPoint p, uchar from);
+  private:
+    void fill(QPainter &painter, QPoint p, uchar from);
     QImage img;
     QColor pen;
     int penpixel;
-    void paintPoint(QPainterpainter, QPoint p);
+    void paintPoint(QPainter &painter, QPoint p);
     QPoint screenPoint(QPoint) const;
     QPoint imagePoint(QPoint) const;
 };
 
-class TilePalette : public QWidget {
+class TilePalette : public QWidget
+{
     Q_OBJECT
-public:
-    TilePalette( QWidget* parent );
+  public:
+    TilePalette(QWidget *parent);
     ~TilePalette();
-    void setFromImage( const QImage& );
-protected:
-    void paintEvent( QPaintEvent* );
-    void mousePressEvent(QMouseEvent*);
+    void setFromImage(const QImage &);
+
+  protected:
+    void paintEvent(QPaintEvent *);
+    void mousePressEvent(QMouseEvent *);
     QSize sizeHint() const;
     QSizePolicy sizePolicy() const;
-signals:
+  signals:
     void pick(QRgb);
-public slots:
+  public slots:
     void setColor(QRgb);
-private:
+
+  private:
     int num;
     QRgb *rgb;
 };
 
-class TileEditor : public QVBox {
+class TileEditor : public QVBox
+{
     Q_OBJECT
-public:
-    TileEditor(QWidgetparent);
+  public:
+    TileEditor(QWidget *parent);
 
-    const QImageimage() const;
+    const QImage &image() const;
 
-signals:
-    void edited(const QImage&);
+  signals:
+    void edited(const QImage &);
 
-public slots:
-    void edit(const QImage&);
+  public slots:
+    void edit(const QImage &);
 
-private:
+  private:
     TrivialTileEditor editor;
     TilePalette palette;
 };
index 3927340f69760bc3b4c48f5d3cd4e8e524d11f89..f5782b33433381d04be77998d8a02d0c8259db33 100644 (file)
@@ -6,13 +6,13 @@
 #include <e_gem.h>
 /********** structs **********/
 typedef struct {
-       GRECT *rects;
-       int max,used;
+    GRECT *rects;
+    int max, used;
 } dirty_rect;
 /********* functions ************/
 dirty_rect *new_dirty_rect(int size);
 void delete_dirty_rect(dirty_rect *this);
-int add_dirty_rect(dirty_rect *dr,GRECT *area);
-int get_dirty_rect(dirty_rect* dr,GRECT *area);
+int add_dirty_rect(dirty_rect *dr, GRECT *area);
+int get_dirty_rect(dirty_rect *dr, GRECT *area);
 int clear_dirty_rect(dirty_rect *dr);
-int resize_dirty_rect(dirty_rect *dr,int new_size);
+int resize_dirty_rect(dirty_rect *dr, int new_size);
index ced094946791f5cd77f93c8aab47e4665a2ec6f1..fef637fe5c1e6e034edbc250cb4b8d4586cde9fa 100644 (file)
@@ -4,7 +4,7 @@
 /* Copyright (C) 1998 by Erik Andersen <andersee@debian.org> */
 /* NetHack may be freely redistributed.  See license for details. */
 /* These XPMs are the artwork of Warwick Allison
- * <warwick@troll.no>.  They have been borrowed from 
+ * <warwick@troll.no>.  They have been borrowed from
  * the most excellent NetHackQt, until such time as
  * we can come up with something better.
  *
@@ -12,6 +12,7 @@
  * http://www.troll.no/~warwick/nethack/
  */
 
+/* clang-format off */
 /* XPM */
 static char *blind_xpm[] = {
 /* width height ncolors chars_per_pixel */
@@ -1449,4 +1450,4 @@ static char *nothing_xpm[] = {
 "oooooooooooooooooooooooooooooooooooooooo",
 "oooooooooooooooooooooooooooooooooooooooo"
 };
-
+/* clang-format on */
index d8f9c37d6e6f43a16dfde16456979c5710d4b675..79fa9142d4312c772cb163fe5326d9cfeeaa6424 100644 (file)
@@ -7,10 +7,8 @@
 #ifndef GnomeHackAskStringDialog_h
 #define GnomeHackAskStringDialog_h
 
-
 int ghack_ask_string_dialog(const char *szMessageStr,
-        const char *szDefaultStr, const char *szTitleStr,
-        char *buffer);
+                            const char *szDefaultStr, const char *szTitleStr,
+                            char *buffer);
 
 #endif /* GnomeHackAskStringDialog_h */
-
index 4d8ebe84b99303cb6bc067190b3629a2ab2e0e9a..8261aea93186c6aa6e7f2b046ac2f5c4e7a0cefd 100644 (file)
@@ -9,7 +9,7 @@
 
 /*
  * This header files defines the interface between the window port specific
- * code in the Gnome port and the rest of the nethack game engine. 
+ * code in the Gnome port and the rest of the nethack game engine.
 */
 
 #include <gnome.h>
@@ -28,7 +28,6 @@
 #include "gnglyph.h"
 #include "gnworn.h"
 
-
 /* Create an array to keep track of the various windows */
 
 #ifndef MAXWINDOWS
 #endif
 
 typedef struct gnome_nhwindow_data {
-  GtkWidget*  win;
-  int         type;
+    GtkWidget *win;
+    int type;
 } GNHWinData;
 
-
 /* Some prototypes */
-void gnome_init_nhwindows(int* argc, char** argv);
+void gnome_init_nhwindows(int *argc, char **argv);
 void gnome_player_selection(void);
 void gnome_askname(void);
 void gnome_get_nh_event(void);
@@ -56,14 +54,14 @@ void gnome_display_nhwindow(winid wid, BOOLEAN_P block);
 void gnome_destroy_nhwindow(winid wid);
 void gnome_curs(winid wid, int x, int y);
 void gnome_putstr(winid wid, int attr, const char *text);
-void gnome_display_file(const char *filename,BOOLEAN_P must_exist);
+void gnome_display_file(const char *filename, BOOLEAN_P must_exist);
 void gnome_start_menu(winid wid);
-void gnome_add_menu(winid wid, int glyph, const ANY_P * identifier,
-               CHAR_P accelerator, CHAR_P group_accel, int attr, 
-               const char *str, BOOLEAN_P presel);
+void gnome_add_menu(winid wid, int glyph, const ANY_P *identifier,
+                    CHAR_P accelerator, CHAR_P group_accel, int attr,
+                    const char *str, BOOLEAN_P presel);
 void gnome_end_menu(winid wid, const char *prompt);
-int  gnome_select_menu(winid wid, int how, MENU_ITEM_P **selected);
-/* No need for message_menu -- we'll use genl_message_menu instead */  
+int gnome_select_menu(winid wid, int how, MENU_ITEM_P **selected);
+/* No need for message_menu -- we'll use genl_message_menu instead */
 void gnome_update_inventory(void);
 void gnome_mark_synch(void);
 void gnome_wait_synch(void);
@@ -72,25 +70,21 @@ void gnome_cliparound(int x, int y);
  * gnome_cliparound (which lacks the winid) simply calls this funtion.
 */
 void gnome_cliparound_proper(winid wid, int x, int y);
-void gnome_print_glyph(winid wid,XCHAR_P x,XCHAR_P y,int glyph);
+void gnome_print_glyph(winid wid, XCHAR_P x, XCHAR_P y, int glyph);
 void gnome_raw_print(const char *str);
 void gnome_raw_print_bold(const char *str);
-int  gnome_nhgetch(void);
-int  gnome_nh_poskey(int *x, int *y, int *mod);
+int gnome_nhgetch(void);
+int gnome_nh_poskey(int *x, int *y, int *mod);
 void gnome_nhbell(void);
-int  gnome_doprev_message(void);
-char gnome_yn_function(const char *question, const char *choices,
-               CHAR_P def);
+int gnome_doprev_message(void);
+char gnome_yn_function(const char *question, const char *choices, CHAR_P def);
 void gnome_getlin(const char *question, char *input);
-int  gnome_get_ext_cmd(void);
+int gnome_get_ext_cmd(void);
 void gnome_number_pad(int state);
 void gnome_delay_output(void);
 void gnome_start_screen(void);
 void gnome_end_screen(void);
 void gnome_outrip(winid wid, int how, time_t when);
-void gnome_delete_nhwindow_by_reference( GtkWidget *menuWin);
-
+void gnome_delete_nhwindow_by_reference(GtkWidget *menuWin);
 
 #endif /* GnomeHackBind_h */
-
-
index 4bb693d1eb85830406cd9837654eb12cbc0c40bc..e4db0e59896eab88e3b13d4fc57eafa9c65c44ff 100644 (file)
@@ -14,7 +14,7 @@
    that trigger spurious warnings if gcc's `-Wshadow' option is used */
 #undef index
 #define index _hide_index_
-#define time  _hide_time_
+#define time _hide_time_
 
 #include <gdk_imlib.h>
 #include <gdk/gdk.h>
 #define index strchr
 #undef time
 
-
-extern short glyph2tile[];     /* From tile.c */
+extern short glyph2tile[]; /* From tile.c */
 
 typedef struct {
-  GdkImlibImage* im;
-  int            count;
-  int            width;
-  int            height;
+    GdkImlibImage *im;
+    int count;
+    int width;
+    int height;
 } GHackGlyphs;
 
-extern int            ghack_init_glyphs( const char *);
-extern void           ghack_free_glyphs( void);
-extern void           ghack_dispose_glyphs( void);
-extern int            ghack_glyph_count( void);
-extern GdkImlibImage* ghack_image_from_glyph( int, gboolean);
-extern int            ghack_glyph_height( void);
-extern int            ghack_glyph_width( void);
+extern int ghack_init_glyphs(const char *);
+extern void ghack_free_glyphs(void);
+extern void ghack_dispose_glyphs(void);
+extern int ghack_glyph_count(void);
+extern GdkImlibImage *ghack_image_from_glyph(int, gboolean);
+extern int ghack_glyph_height(void);
+extern int ghack_glyph_width(void);
 
-#endif  /* GnomeHackGlyph_h */
+#endif /* GnomeHackGlyph_h */
index b5932ef5d13373125565b2af806188e56b383797..ee03020e7845d10c36ea97576f72945c9ad5bd0a 100644 (file)
 #include <gnome.h>
 #include <gtk/gtk.h>
 
-
-void ghack_init_main_window( int argc, char** argv);
-void ghack_main_window_add_map_window(GtkWidget* win);
-void ghack_main_window_add_message_window(GtkWidget* win);
-void ghack_main_window_add_status_window(GtkWidget* win);
+void ghack_init_main_window(int argc, char **argv);
+void ghack_main_window_add_map_window(GtkWidget *win);
+void ghack_main_window_add_message_window(GtkWidget *win);
+void ghack_main_window_add_status_window(GtkWidget *win);
 void ghack_main_window_add_text_window(GtkWidget *);
-void ghack_main_window_add_worn_window(GtkWidgetwin);
+void ghack_main_window_add_worn_window(GtkWidget *win);
 void ghack_main_window_remove_window(GtkWidget *);
 void ghack_main_window_update_inventory();
 void ghack_save_game_cb(GtkWidget *widget, gpointer data);
-GtkWidget* ghack_get_main_window();
-
-
+GtkWidget *ghack_get_main_window();
 
 #endif /* GnomeHackMainWindow_h */
-
index 214083107ff3112b08361edf5e3635824bb8bee4..795678530918677dc02fbd7d6f2c7a8eca162406 100644 (file)
 #include "global.h"
 #include "gnomeprv.h"
 
-GtkWidget* ghack_init_menu_window( void );
+GtkWidget *ghack_init_menu_window(void);
 
-struct _GHackMenuItem
-{
-  int          glyph; 
-  const ANY_P *identifier;
-  CHAR_P       accelerator;
-  CHAR_P       group_accel;
-  int          attr;
-  const char*  str;
-  BOOLEAN_P    presel;
+struct _GHackMenuItem {
+    int glyph;
+    const ANY_P *identifier;
+    CHAR_P accelerator;
+    CHAR_P group_accel;
+    int attr;
+    const char *str;
+    BOOLEAN_P presel;
 };
 
 typedef struct _GHackMenuItem GHackMenuItem;
 
-int ghack_menu_window_select_menu (GtkWidget *menuWin, 
-       MENU_ITEM_P **_selected, gint how);
+int ghack_menu_window_select_menu(GtkWidget *menuWin, MENU_ITEM_P **_selected,
+                                  gint how);
 int ghack_menu_ext_cmd(void);
 
-#endif  /* GnomeHackMenuWindow_h */
+#endif /* GnomeHackMenuWindow_h */
index 3e88a3d45211be8da388e29311a286c4da7a724a..2927d1fec2d6d5b20ef09cc741799d7166d423c7 100644 (file)
 #include <gnome.h>
 #include "config.h"
 
-GtkWidget* ghack_init_message_window ( /* GnomeHackKeyBuffer g_keybuffer,
-                                         GnomeHackClickBuffer g_clickbuffer */ );
+GtkWidget *ghack_init_message_window(/* GnomeHackKeyBuffer g_keybuffer,
+                                         GnomeHackClickBuffer g_clickbuffer */);
 void ghack_message_window_clear(GtkWidget *widget, gpointer data);
 void ghack_message_window_destroy();
 void ghack_message_window_display(GtkWidget *widget, boolean block,
                                   gpointer data);
 void ghack_message_window_put_string(GtkWidget *widget, int attr,
-                                     const chartext, gpointer data);
+                                     const char *text, gpointer data);
 void ghack_message_window_use_RIP(int how);
 void ghack_message_window_scroll(int dx, int dy);
 
-
 #endif /* GnomeHackMessageWindow_h */
index f15ed34c2e2bc6aed3c878f947b615e4f461c38d..dcb170339664ee1ff80c4f2298e6da7558bc2aae 100644 (file)
@@ -14,7 +14,4 @@
 
 #include "winGnome.h"
 
-#endif    /* GnomeHack_h */
-
-
-
+#endif /* GnomeHack_h */
index f2ae33c77d668fd0583598aa4282317a5903767a..8da582d08b2444c5339fa6ef4079890649e583fc 100644 (file)
@@ -7,9 +7,6 @@
 #ifndef GnomeHackSettings_h
 #define GnomeHackSettings_h
 
-
-void ghack_settings_dialog( void);
-
+void ghack_settings_dialog(void);
 
 #endif /* GnomeHackSettings.h */
-
index def098a00ff8751be109cad051411360b9d16ab2..412986430db154f526509b45d7b4194cb5792003 100644 (file)
@@ -7,6 +7,6 @@
 #ifndef GnomeHackPlayerSelDialog_h
 #define GnomeHackPlayerSelDialog_h
 
-int ghack_player_sel_dialog(const char **, const gchar*, const gchar*);
+int ghack_player_sel_dialog(const char **, const gchar *, const gchar *);
 
 #endif /* GnomeHackPlayerSelDialog_h */
index 27310f5642d6eb837a2faf2589948f8133352897..436529bacd701620da1c4bb950e0c221eaaeca32 100644 (file)
 /* The list of custom signals */
 
 enum {
-  GHSIG_CURS,
-  GHSIG_PUTSTR,
-  GHSIG_PRINT_GLYPH,
-  GHSIG_CLEAR,
-  GHSIG_DISPLAY,
-  GHSIG_START_MENU,
-  GHSIG_ADD_MENU,
-  GHSIG_END_MENU,
-  GHSIG_SELECT_MENU,
-  GHSIG_CLIPAROUND,
-  GHSIG_FADE_HIGHLIGHT,
-  GHSIG_DELAY,
-  GHSIG_LAST_SIG
+    GHSIG_CURS,
+    GHSIG_PUTSTR,
+    GHSIG_PRINT_GLYPH,
+    GHSIG_CLEAR,
+    GHSIG_DISPLAY,
+    GHSIG_START_MENU,
+    GHSIG_ADD_MENU,
+    GHSIG_END_MENU,
+    GHSIG_SELECT_MENU,
+    GHSIG_CLIPAROUND,
+    GHSIG_FADE_HIGHLIGHT,
+    GHSIG_DELAY,
+    GHSIG_LAST_SIG
 };
 
 guint ghack_signals[GHSIG_LAST_SIG];
 
-extern void ghack_init_signals( void);
+extern void ghack_init_signals(void);
 
-
-void ghack_handle_key_press(GtkWidget *widget, GdkEventKey *event, 
-       gpointer data);
-void ghack_handle_button_press(GtkWidget *widget, GdkEventButton *event, 
-       gpointer data);
+void ghack_handle_key_press(GtkWidget *widget, GdkEventKey *event,
+                            gpointer data);
+void ghack_handle_button_press(GtkWidget *widget, GdkEventButton *event,
+                               gpointer data);
 
 typedef struct {
-        int x, y, mod;
+    int x, y, mod;
 } GHClick;
 
 extern GList *g_keyBuffer;
@@ -51,8 +50,6 @@ extern int g_numClicks;
 
 extern int g_askingQuestion;
 
-void ghack_delay( GtkWidget *win, int numMillisecs, gpointer data);
-
-
-#endif    /* GnomeHackSignals_h */
+void ghack_delay(GtkWidget *win, int numMillisecs, gpointer data);
 
+#endif /* GnomeHackSignals_h */
index c9ae8c0490edfa92f368c46a5353d83bc828a14c..5f9bae0d010394e057e6de6834b0ee0b3e4f4bf9 100644 (file)
@@ -11,6 +11,6 @@
 #include "config.h"
 #include "global.h"
 
-GtkWidget* ghack_init_status_window ();
+GtkWidget *ghack_init_status_window();
 
 #endif /* GnomeHackStatusWindow_h */
index 8e6c1addd3307a32f48fca0d2d151487f7cf37bf..05d0c7da0c70f54e6c5b2a2247f78a9696d17a8f 100644 (file)
 #include "config.h"
 #include "global.h"
 
-GtkWidget* ghack_init_text_window ( );
+GtkWidget *ghack_init_text_window();
 void ghack_text_window_clear(GtkWidget *widget, gpointer data);
 void ghack_text_window_destroy();
 void ghack_text_window_display(GtkWidget *widget, boolean block,
-                              gpointer data);
+                               gpointer data);
 void ghack_text_window_put_string(GtkWidget *widget, int attr,
-                                  const char* text, gpointer data);
-void ghack_text_window_rip_string( const char* ripString);
-
+                                  const char *text, gpointer data);
+void ghack_text_window_rip_string(const char *ripString);
 
 #endif /* GnomeHackTextWindow_h */
index fd5f3acbdbb96ab5e7756cbe3831ed8bcbaf4661..e1f39e1ed3912e2ddb0df7cb460f9d983111cc5f 100644 (file)
@@ -13,6 +13,6 @@
 #include "config.h"
 #include "global.h"
 
-GtkWidgetghack_init_worn_window();
+GtkWidget *ghack_init_worn_window();
 
 #endif /* GnomeHackWornWindow_h */
index a9b49c6b8d403f1adc7b9d3dc43d6e891e3810ed..2dfd5a31218dded01d25d5a9fa38c999dac4a095 100644 (file)
@@ -7,8 +7,7 @@
 #ifndef GnomeHackYesNoDialog_h
 #define GnomeHackYesNoDialog_h
 
-int ghack_yes_no_dialog( const char* szQuestionStr, 
-       const char* szChoicesStr, int nDefault);
-
+int ghack_yes_no_dialog(const char *szQuestionStr, const char *szChoicesStr,
+                        int nDefault);
 
 #endif
index 974170a15cf742332b91f7bb9139652bd72c0aae..ed27247a8d4b465c66705c817a03b0ca14d5df1c 100644 (file)
@@ -6,11 +6,11 @@ typedef struct pixel_s {
     pixval r, g, b;
 } pixel;
 
-#define MAXCOLORMAPSIZE        256
+#define MAXCOLORMAPSIZE 256
 
-#define CM_RED         0
-#define CM_GREEN       1
-#define CM_BLUE        2
+#define CM_RED 0
+#define CM_GREEN 1
+#define CM_BLUE 2
 
 /* shared between reader and writer */
 extern pixval ColorMap[3][MAXCOLORMAPSIZE];
@@ -19,7 +19,7 @@ extern int colorsinmap;
 extern pixval MainColorMap[3][MAXCOLORMAPSIZE];
 extern int colorsinmainmap;
 
-#include "dlb.h"       /* for MODEs */
+#include "dlb.h" /* for MODEs */
 
 /* size of tiles */
 #ifndef TILE_X
@@ -31,10 +31,9 @@ extern int colorsinmainmap;
 
 #define Fprintf (void) fprintf
 
-
 extern boolean FDECL(fopen_text_file, (const char *, const char *));
-extern boolean FDECL(read_text_tile, (pixel (*)[TILE_X]));
-extern boolean FDECL(write_text_tile, (pixel (*)[TILE_X]));
+extern boolean FDECL(read_text_tile, (pixel(*) [TILE_X]));
+extern boolean FDECL(write_text_tile, (pixel(*) [TILE_X]));
 extern int NDECL(fclose_text_file);
 
 extern void NDECL(init_colormap);
@@ -42,7 +41,7 @@ extern void NDECL(merge_colormap);
 
 #if defined(MICRO) || defined(WIN32)
 #undef exit
-# if !defined(MSDOS) && !defined(WIN32)
+#if !defined(MSDOS) && !defined(WIN32)
 extern void FDECL(exit, (int));
-# endif
+#endif
 #endif
index 793a0b00e2c3f54f0cba618229efb78c11e6435c..bff23418e79f5f9dc99f8d4f9851bdc34116c477 100644 (file)
@@ -9,7 +9,6 @@
 
 #include "winMS.h"
 
-int mswin_yes_no_dialog( const char *question, const char *choices, int def);
+int mswin_yes_no_dialog(const char *question, const char *choices, int def);
 
 #endif /* MSWINAskYesNO_h */
-
index 39cb8edcdbcd73fe74c905dc3fdbd1d949b67b50..e7ff670775b9cc37da754c12706201fa51ae9c3a 100644 (file)
@@ -10,9 +10,9 @@
 #include "config.h"
 #include "global.h"
 
-int mswin_getlin_window (const char *question, char *result, size_t result_size);
-int mswin_ext_cmd_window (int* selection);
-int  mswin_player_selection_window(int* selection);
+int mswin_getlin_window(const char *question, char *result,
+                        size_t result_size);
+int mswin_ext_cmd_window(int *selection);
+int mswin_player_selection_window(int *selection);
 
 #endif /* MSWINDlgWindow_h */
-
index a388a542fadbf87b704ce8a44984a59d465017a0..437554355dae577c923fc7dec7723fda1f149e65 100644 (file)
@@ -17,4 +17,3 @@ void mswin_destroy_splashfonts(void);
 UINT mswin_charset(void);
 
 #endif /* MSWINFont_h */
-
index f3eb9a6ded25509c9e1b796a2942a3cfbe3a003b..5e9e7d0ac36aca164ab21b4c62f6b1b31b5f73ee 100644 (file)
 /* nethack input queue - store/extract input events */
 #include "winMS.h"
 
-#define NHEVENT_CHAR   1
-#define NHEVENT_MOUSE  2
+#define NHEVENT_CHAR 1
+#define NHEVENT_MOUSE 2
 typedef struct mswin_event {
-       int type;
-       union {
-               struct {
-                       int  ch;
-               } kbd;
-
-               struct {
-                       int mod;
-                       int x, y;
-               } ms;
-       };
+    int type;
+    union {
+        struct {
+            int ch;
+        } kbd;
+
+        struct {
+            int mod;
+            int x, y;
+        } ms;
+    };
 } MSNHEvent, *PMSNHEvent;
 
-#define NHEVENT_KBD(c) { MSNHEvent e; e.type=NHEVENT_CHAR; e.kbd.ch=(c); mswin_input_push(&e); }
-#define NHEVENT_MS(_mod, _x, _y) { MSNHEvent e; e.type=NHEVENT_MOUSE; e.ms.mod = (_mod); e.ms.x=(_x); e.ms.y=(_y); mswin_input_push(&e); }
-
-void           mswin_nh_input_init(void);
-int                    mswin_have_input(void);
-void           mswin_input_push(PMSNHEvent event);
-PMSNHEvent     mswin_input_pop(void);
-PMSNHEvent     mswin_input_peek(void);
+#define NHEVENT_KBD(c)         \
+    {                          \
+        MSNHEvent e;           \
+        e.type = NHEVENT_CHAR; \
+        e.kbd.ch = (c);        \
+        mswin_input_push(&e);  \
+    }
+#define NHEVENT_MS(_mod, _x, _y) \
+    {                            \
+        MSNHEvent e;             \
+        e.type = NHEVENT_MOUSE;  \
+        e.ms.mod = (_mod);       \
+        e.ms.x = (_x);           \
+        e.ms.y = (_y);           \
+        mswin_input_push(&e);    \
+    }
+
+void mswin_nh_input_init(void);
+int mswin_have_input(void);
+void mswin_input_push(PMSNHEvent event);
+PMSNHEvent mswin_input_pop(void);
+PMSNHEvent mswin_input_peek(void);
 
 #endif /* MSWINInput_h */
-
index 3567093fd1b82a19bb05ec318f0b3e7d0943c46d..305b088bfbdb893e48a85356204d0fc09ecfd35b 100644 (file)
 
 #include "winMS.h"
 
-HWND mswin_init_main_window (void);
+HWND mswin_init_main_window(void);
 void mswin_layout_main_window(HWND changed_child);
 void mswin_select_map_mode(int map_mode);
 void mswin_menu_check_intf_mode(void);
 
 #endif /* MSWINMainWindow_h */
-
index 9181a7bde5e2a7c977a7ce618784ae75b0f8285a..4c0ad3422fdf81c6e3b2a8b66ce783942fa16865 100644 (file)
 #include "config.h"
 #include "global.h"
 
-
-COLORREF nhcolor_to_RGB (int c);
-HWND mswin_init_map_window (void);
+COLORREF nhcolor_to_RGB(int c);
+HWND mswin_init_map_window(void);
 void mswin_map_stretch(HWND hWnd, LPSIZE lpsz, BOOL redraw);
 int mswin_map_mode(HWND hWnd, int mode);
 
-#define ROGUE_LEVEL_MAP_MODE           MAP_MODE_ASCII12x16     
+#define ROGUE_LEVEL_MAP_MODE MAP_MODE_ASCII12x16
 
-#define DEF_CLIPAROUND_MARGIN  5
-#define DEF_CLIPAROUND_AMOUNT  1
+#define DEF_CLIPAROUND_MARGIN 5
+#define DEF_CLIPAROUND_AMOUNT 1
 
 #endif /* MSWINMapWindow_h */
-
index dc66a4f68359f6ef0557aabe6c016afbbccad957..a2c372fe6a5dbf888cd7f73db7c0a22dfa76ea65 100644 (file)
 #include "config.h"
 #include "global.h"
 
-#define MENU_TYPE_TEXT     1
-#define MENU_TYPE_MENU     2
+#define MENU_TYPE_TEXT 1
+#define MENU_TYPE_MENU 2
 
-extern COLORREF nhcolor_to_RGB (int c);
-HWND mswin_init_menu_window ( int type );
-int mswin_menu_window_select_menu (HWND hwnd, int how, MENU_ITEM_P ** selected, BOOL activate);
-void mswin_menu_window_size (HWND hwnd, LPSIZE sz);
+extern COLORREF nhcolor_to_RGB(int c);
+HWND mswin_init_menu_window(int type);
+int mswin_menu_window_select_menu(HWND hwnd, int how, MENU_ITEM_P **selected,
+                                  BOOL activate);
+void mswin_menu_window_size(HWND hwnd, LPSIZE sz);
 
 #endif /* MSWINTextWindow_h */
-
index 0a6a062e8f94797e6ded4806114839db1fccc5b2..671dee5d012ad5176f8894f9bb0c765b1ed25bac 100644 (file)
@@ -8,73 +8,72 @@
 #define MHNethackMessages_H
 
 /* nethack messages */
-#define WM_MSNH_COMMAND  (WM_APP+1)
+#define WM_MSNH_COMMAND (WM_APP + 1)
 
-#define MSNH_MSG_ADDWND                        100
-#define MSNH_MSG_PUTSTR                        101
-#define MSNH_MSG_PRINT_GLYPH   102
-#define MSNH_MSG_CLEAR_WINDOW  103
-#define MSNH_MSG_CLIPAROUND            104
-#define MSNH_MSG_STARTMENU             105
-#define MSNH_MSG_ADDMENU               106
-#define MSNH_MSG_CURSOR                        107
-#define MSNH_MSG_ENDMENU               108
-#define MSNH_MSG_DIED                  109
-#define MSNH_MSG_CARET                 110
-#define MSNH_MSG_GETTEXT               111
-#define MSNH_MSG_UPDATE_STATUS 112
+#define MSNH_MSG_ADDWND 100
+#define MSNH_MSG_PUTSTR 101
+#define MSNH_MSG_PRINT_GLYPH 102
+#define MSNH_MSG_CLEAR_WINDOW 103
+#define MSNH_MSG_CLIPAROUND 104
+#define MSNH_MSG_STARTMENU 105
+#define MSNH_MSG_ADDMENU 106
+#define MSNH_MSG_CURSOR 107
+#define MSNH_MSG_ENDMENU 108
+#define MSNH_MSG_DIED 109
+#define MSNH_MSG_CARET 110
+#define MSNH_MSG_GETTEXT 111
+#define MSNH_MSG_UPDATE_STATUS 112
 
 typedef struct mswin_nhmsg_add_wnd {
-  winid                  wid;
+    winid wid;
 } MSNHMsgAddWnd, *PMSNHMsgAddWnd;
 
 typedef struct mswin_nhmsg_putstr {
-  int                  attr;
-  const char*          text;
-  int                  append;
+    int attr;
+    const char *text;
+    int append;
 } MSNHMsgPutstr, *PMSNHMsgPutstr;
 
 typedef struct mswin_nhmsg_print_glyph {
-  XCHAR_P              x;
-  XCHAR_P              y;
-  int                  glyph;
+    XCHAR_P x;
+    XCHAR_P y;
+    int glyph;
 } MSNHMsgPrintGlyph, *PMSNHMsgPrintGlyph;
 
 typedef struct mswin_nhmsg_cliparound {
-  int                  x;
-  int                  y;
+    int x;
+    int y;
 } MSNHMsgClipAround, *PMSNHMsgClipAround;
 
 typedef struct mswin_nhmsg_add_menu {
-       int                             glyph;
-       const ANY_P*    identifier;
-       CHAR_P                  accelerator;
-       CHAR_P                  group_accel;
-       int                             attr;
-       const char *    str;
-       BOOLEAN_P               presel;
+    int glyph;
+    const ANY_P *identifier;
+    CHAR_P accelerator;
+    CHAR_P group_accel;
+    int attr;
+    const char *str;
+    BOOLEAN_P presel;
 } MSNHMsgAddMenu, *PMSNHMsgAddMenu;
 
 typedef struct mswin_nhmsg_cursor {
-  int                  x;
-  int                  y;
+    int x;
+    int y;
 } MSNHMsgCursor, *PMSNHMsgCursor;
 
 typedef struct mswin_nhmsg_end_menu {
-       const char* text;
+    const char *text;
 } MSNHMsgEndMenu, *PMSNHMsgEndMenu;
 
 typedef struct mswin_nhmsg_get_text {
-       size_t  max_size;
-       char    buffer[];
+    size_t max_size;
+    char buffer[];
 } MSNHMsgGetText, *PMSNHMsgGetText;
 
 typedef struct mswin_nhmsg_update_status {
-       int                             n_fields;
-       const char**    vals;
-       boolean*                activefields;
-       int*                    colors;
+    int n_fields;
+    const char **vals;
+    boolean *activefields;
+    int *colors;
 } MSNHMsgUpdateStatus, *PMSNHMsgUpdateStatus;
 
 #endif
-
index aea6cf9a3c89f0389ee38858b31e7a54de81ae76..c10ef8da2de008f0bed46ce03c13f7af22b4f01b 100644 (file)
@@ -11,9 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_message_window (void);
-void mswin_message_window_size (HWND hWnd, LPSIZE sz);
-
+HWND mswin_init_message_window(void);
+void mswin_message_window_size(HWND hWnd, LPSIZE sz);
 
 #endif /* MSWINMessageWindow_h */
-
index ca776163816628411202ea38a0056b4b2363dcf0..829e3bf4e22dd8fde3a601a635456b74aa78a492 100644 (file)
@@ -12,8 +12,7 @@
 #include "global.h"
 
 void mswin_finish_rip_text(winid wid);
-HWND mswin_init_RIP_window (void);
-void mswin_display_RIP_window (HWND hwnd);
+HWND mswin_init_RIP_window(void);
+void mswin_display_RIP_window(HWND hwnd);
 
 #endif /* MSWINRIPWindow_h */
-
index 7d8ab4eb41cb948bd617ec07f8bd8f541b80da5c..48bc92f19d6069e068cfa6056d5c2b4b5ca810ae 100644 (file)
@@ -12,7 +12,6 @@ $Date: 2003/03/03 23:31:36 $  $Revision: 1.3 $
 #include "config.h"
 #include "global.h"
 
-void mswin_display_splash_window (BOOL);
+void mswin_display_splash_window(BOOL);
 
 #endif /* MSWINSplashWindow_h */
-
index 937de4fc825e5229600c5c5532e89f6cba032209..7b7e83906d47e1258ec084ccf45e01c23cf82f65 100644 (file)
@@ -11,8 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_status_window (void);
-void mswin_status_window_size (HWND hWnd, LPSIZE sz);
+HWND mswin_init_status_window(void);
+void mswin_status_window_size(HWND hWnd, LPSIZE sz);
 
 #endif /* MSWINStatusWindow_h */
-
index c4c3eeb6a43aae0313c24840c84a60a764998191..f4f3d19165f674da0d3023df726aecbd35ae4bee 100644 (file)
@@ -11,8 +11,7 @@
 #include "config.h"
 #include "global.h"
 
-HWND mswin_init_text_window (void);
-void mswin_display_text_window (HWND hwnd);
+HWND mswin_init_text_window(void);
+void mswin_display_text_window(HWND hwnd);
 
 #endif /* MSWINTextWindow_h */
-
index caca5debd82b5df74a15951342fe7ea0a2b0a62d..6d566bf3f235723988577942737e2b43008469f7 100644 (file)
 // Microsoft Visual C++ generated include file.
 // Used by winhack.rc
 //
-#define IDC_MYICON                      2
-#define IDD_WINHACK_DIALOG              102
-#define IDD_ABOUTBOX                    103
-#define IDS_APP_TITLE                   103
-#define IDM_ABOUT                       104
-#define IDM_EXIT                        105
-#define IDS_HELLO                       106
-#define IDI_NETHACKW                    107
-#define IDC_NETHACKW                    109
-#define IDS_APP_TITLE_SHORT             110
-#define IDR_MAINFRAME                   128
-#define IDB_TILES                       129
-#define IDD_TEXT                        130
-#define IDD_NHTEXT                      130
-#define IDD_MENU                        132
-#define IDB_MENU_SEL                    133
-#define IDB_MENU_UNSEL                  134
-#define IDD_COMMANDS                    136
-#define IDD_GETLIN                      138
-#define IDD_EXTCMD                      139
-#define IDD_PLAYER_SELECTOR             141
-#define IDB_PETMARK                     143
-#define IDB_MENU_SEL_COUNT              144
-#define IDD_NHRIP                       145
-#define IDB_SPLASH                      146
-#define IDB_RIP                         147
-#define IDD_SPLASH                      148
-#define IDC_TEXT_VIEW                   1000
-#define IDC_TEXT_CONTROL                1000
-#define IDC_CMD_MOVE_NW                 1001
-#define IDC_CMD_MOVE_N                  1002
-#define IDC_MENU_LIST                   1003
-#define IDC_CMD_MOVE_NE                 1003
-#define IDC_MENU_TEXT                   1004
-#define IDC_CMD_MOVE_W                  1004
-#define IDC_CMD_MOVE_SELF               1005
-#define IDC_CMD_MOVE_E                  1006
-#define IDC_CMD_MOVE_SW                 1007
-#define IDC_CMD_MOVE_S                  1008
-#define IDC_CMD_MOVE_SE                 1009
-#define IDC_CMD_MOVE_UP                 1010
-#define IDC_CMD_MOVE_DOWN               1011
-#define IDC_CMD_5                       1012
-#define IDC_CMD_A                       1013
-#define IDC_CMD_B                       1014
-#define IDC_CMD_C                       1015
-#define IDC_CMD_D                       1016
-#define IDC_CMD_E                       1017
-#define IDC_CMD_F                       1018
-#define IDC_CMD_G                       1019
-#define IDC_CMD_H                       1020
-#define IDC_CMD_I                       1021
-#define IDC_CMD_J                       1022
-#define IDC_CMD_K                       1023
-#define IDC_CMD_L                       1024
-#define IDC_CMD_M                       1025
-#define IDC_CMD_N                       1026
-#define IDC_CMD_O                       1027
-#define IDC_CMD_P                       1028
-#define IDC_CMD_Q                       1029
-#define IDC_CMD_R                       1030
-#define IDC_CMD_S                       1031
-#define IDC_CMD_T                       1032
-#define IDC_CMD_U                       1033
-#define IDC_CMD_V                       1034
-#define IDC_CMD_W                       1035
-#define IDC_CMD_X                       1036
-#define IDC_CMD_Y                       1037
-#define IDC_CMD_Z                       1038
-#define IDC_CMD_AA                      1039
-#define IDC_CMD_BB                      1040
-#define IDC_CMD_CC                      1041
-#define IDC_CMD_DD                      1042
-#define IDC_CMD_EE                      1043
-#define IDC_CMD_FF                      1044
-#define IDC_CMD_GG                      1045
-#define IDC_CMD_HH                      1046
-#define IDC_CMD_II                      1047
-#define IDC_CMD_JJ                      1048
-#define IDC_CMD_KK                      1049
-#define IDC_CMD_LL                      1050
-#define IDC_CMD_MM                      1051
-#define IDC_CMD_NN                      1052
-#define IDC_CMD_OO                      1053
-#define IDC_CMD_PP                      1054
-#define IDC_CMD_QQ                      1055
-#define IDC_CMD_RR                      1056
-#define IDC_CMD_SS                      1057
-#define IDC_CMD_TT                      1058
-#define IDC_CMD_UU                      1059
-#define IDC_CMD_VV                      1060
-#define IDC_CMD_WW                      1061
-#define IDC_CMD_XX                      1062
-#define IDC_CMD_YY                      1063
-#define IDC_CMD_ZZ                      1064
-#define IDC_CMD_FIRST                   1100
-#define IDC_CMD_LAST                    1300
-#define IDC_GETLIN_EDIT                 1309
-#define IDC_EXTCMD_LIST                 1310
-#define IDC_PLSEL_NAME                  1314
-#define IDC_PLSEL_ROLE_RANDOM           1315
-#define IDC_PLSEL_RACE_RANDOM           1318
-#define IDC_PLSEL_GENDER_RANDOM         1319
-#define IDC_PLSEL_ALIGN_RANDOM          1320
-#define IDC_PLSEL_ROLE_LIST             1323
-#define IDC_PLSEL_RACE_LIST             1324
-#define IDC_PLSEL_ALIGN_LIST            1325
-#define IDC_PLSEL_GENDER_LIST           1326
-#define IDC_ABOUT_VERSION               1327
-#define IDC_ABOUT_COPYRIGHT             1328
-#define IDC_EXTRAINFO                   1331
-#define IDM_SAVE                        32771
-#define IDM_HELP_LONG                   32772
-#define IDM_HELP_COMMANDS               32773
-#define IDM_HELP_HISTORY                32774
-#define IDM_HELP_INFO_CHAR              32775
-#define IDM_HELP_INFO_KEY               32776
-#define IDM_HELP_OPTIONS                32777
-#define IDM_HELP_OPTIONS_LONG           32778
-#define IDM_HELP_EXTCMD                 32779
-#define IDM_HELP_LICENSE                32780
-#define IDM_HELP_PORTHELP               32781
-#define IDM_MAP_TILES                   32782
-#define IDM_MAP_ASCII4X6                32783
-#define IDM_MAP_ASCII6X8                32784
-#define IDM_MAP_ASCII8X8                32785
-#define IDM_MAP_ASCII16X8               32786
-#define IDM_MAP_ASCII7X12               32787
-#define IDM_MAP_ASCII8X12               32788
-#define IDM_MAP_ASCII16X12              32789
-#define IDM_MAP_ASCII12X16              32790
-#define IDM_MAP_ASCII10X18              32791
-#define IDM_MAP_FIT_TO_SCREEN           32792
-#define IDM_NHMODE                      32794
-#define IDM_CLEARSETTINGS               32795
-#define IDM_SETTING_AUTOLAYOUT          32796
-#define IDM_SETTING_LOCKWINDOWS         32797
+#define IDC_MYICON 2
+#define IDD_WINHACK_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDS_APP_TITLE 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDS_HELLO 106
+#define IDI_NETHACKW 107
+#define IDC_NETHACKW 109
+#define IDS_APP_TITLE_SHORT 110
+#define IDR_MAINFRAME 128
+#define IDB_TILES 129
+#define IDD_TEXT 130
+#define IDD_NHTEXT 130
+#define IDD_MENU 132
+#define IDB_MENU_SEL 133
+#define IDB_MENU_UNSEL 134
+#define IDD_COMMANDS 136
+#define IDD_GETLIN 138
+#define IDD_EXTCMD 139
+#define IDD_PLAYER_SELECTOR 141
+#define IDB_PETMARK 143
+#define IDB_MENU_SEL_COUNT 144
+#define IDD_NHRIP 145
+#define IDB_SPLASH 146
+#define IDB_RIP 147
+#define IDD_SPLASH 148
+#define IDC_TEXT_VIEW 1000
+#define IDC_TEXT_CONTROL 1000
+#define IDC_CMD_MOVE_NW 1001
+#define IDC_CMD_MOVE_N 1002
+#define IDC_MENU_LIST 1003
+#define IDC_CMD_MOVE_NE 1003
+#define IDC_MENU_TEXT 1004
+#define IDC_CMD_MOVE_W 1004
+#define IDC_CMD_MOVE_SELF 1005
+#define IDC_CMD_MOVE_E 1006
+#define IDC_CMD_MOVE_SW 1007
+#define IDC_CMD_MOVE_S 1008
+#define IDC_CMD_MOVE_SE 1009
+#define IDC_CMD_MOVE_UP 1010
+#define IDC_CMD_MOVE_DOWN 1011
+#define IDC_CMD_5 1012
+#define IDC_CMD_A 1013
+#define IDC_CMD_B 1014
+#define IDC_CMD_C 1015
+#define IDC_CMD_D 1016
+#define IDC_CMD_E 1017
+#define IDC_CMD_F 1018
+#define IDC_CMD_G 1019
+#define IDC_CMD_H 1020
+#define IDC_CMD_I 1021
+#define IDC_CMD_J 1022
+#define IDC_CMD_K 1023
+#define IDC_CMD_L 1024
+#define IDC_CMD_M 1025
+#define IDC_CMD_N 1026
+#define IDC_CMD_O 1027
+#define IDC_CMD_P 1028
+#define IDC_CMD_Q 1029
+#define IDC_CMD_R 1030
+#define IDC_CMD_S 1031
+#define IDC_CMD_T 1032
+#define IDC_CMD_U 1033
+#define IDC_CMD_V 1034
+#define IDC_CMD_W 1035
+#define IDC_CMD_X 1036
+#define IDC_CMD_Y 1037
+#define IDC_CMD_Z 1038
+#define IDC_CMD_AA 1039
+#define IDC_CMD_BB 1040
+#define IDC_CMD_CC 1041
+#define IDC_CMD_DD 1042
+#define IDC_CMD_EE 1043
+#define IDC_CMD_FF 1044
+#define IDC_CMD_GG 1045
+#define IDC_CMD_HH 1046
+#define IDC_CMD_II 1047
+#define IDC_CMD_JJ 1048
+#define IDC_CMD_KK 1049
+#define IDC_CMD_LL 1050
+#define IDC_CMD_MM 1051
+#define IDC_CMD_NN 1052
+#define IDC_CMD_OO 1053
+#define IDC_CMD_PP 1054
+#define IDC_CMD_QQ 1055
+#define IDC_CMD_RR 1056
+#define IDC_CMD_SS 1057
+#define IDC_CMD_TT 1058
+#define IDC_CMD_UU 1059
+#define IDC_CMD_VV 1060
+#define IDC_CMD_WW 1061
+#define IDC_CMD_XX 1062
+#define IDC_CMD_YY 1063
+#define IDC_CMD_ZZ 1064
+#define IDC_CMD_FIRST 1100
+#define IDC_CMD_LAST 1300
+#define IDC_GETLIN_EDIT 1309
+#define IDC_EXTCMD_LIST 1310
+#define IDC_PLSEL_NAME 1314
+#define IDC_PLSEL_ROLE_RANDOM 1315
+#define IDC_PLSEL_RACE_RANDOM 1318
+#define IDC_PLSEL_GENDER_RANDOM 1319
+#define IDC_PLSEL_ALIGN_RANDOM 1320
+#define IDC_PLSEL_ROLE_LIST 1323
+#define IDC_PLSEL_RACE_LIST 1324
+#define IDC_PLSEL_ALIGN_LIST 1325
+#define IDC_PLSEL_GENDER_LIST 1326
+#define IDC_ABOUT_VERSION 1327
+#define IDC_ABOUT_COPYRIGHT 1328
+#define IDC_EXTRAINFO 1331
+#define IDM_SAVE 32771
+#define IDM_HELP_LONG 32772
+#define IDM_HELP_COMMANDS 32773
+#define IDM_HELP_HISTORY 32774
+#define IDM_HELP_INFO_CHAR 32775
+#define IDM_HELP_INFO_KEY 32776
+#define IDM_HELP_OPTIONS 32777
+#define IDM_HELP_OPTIONS_LONG 32778
+#define IDM_HELP_EXTCMD 32779
+#define IDM_HELP_LICENSE 32780
+#define IDM_HELP_PORTHELP 32781
+#define IDM_MAP_TILES 32782
+#define IDM_MAP_ASCII4X6 32783
+#define IDM_MAP_ASCII6X8 32784
+#define IDM_MAP_ASCII8X8 32785
+#define IDM_MAP_ASCII16X8 32786
+#define IDM_MAP_ASCII7X12 32787
+#define IDM_MAP_ASCII8X12 32788
+#define IDM_MAP_ASCII16X12 32789
+#define IDM_MAP_ASCII12X16 32790
+#define IDM_MAP_ASCII10X18 32791
+#define IDM_MAP_FIT_TO_SCREEN 32792
+#define IDM_NHMODE 32794
+#define IDM_CLEARSETTINGS 32795
+#define IDM_SETTING_AUTOLAYOUT 32796
+#define IDM_SETTING_LOCKWINDOWS 32797
 #define IDM_SETTING_SCREEN_TO_CLIPBOARD 32798
-#define IDM_SETTING_SCREEN_TO_FILE      32799
-#define IDC_STATIC                      -1
+#define IDM_SETTING_SCREEN_TO_FILE 32799
+#define IDC_STATIC -1
 
 // Next default values for new objects
-// 
+//
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        145
-#define _APS_NEXT_COMMAND_VALUE         32800
-#define _APS_NEXT_CONTROL_VALUE         1332
-#define _APS_NEXT_SYMED_VALUE           110
+#define _APS_NEXT_RESOURCE_VALUE 145
+#define _APS_NEXT_COMMAND_VALUE 32800
+#define _APS_NEXT_CONTROL_VALUE 1332
+#define _APS_NEXT_SYMED_VALUE 110
 #endif
 #endif
index 419dd429c440d9fe3527702bada3f01434a63b1d..1fb8ad12638b1a73f41544cc0c0a4272935a630e 100644 (file)
@@ -8,18 +8,18 @@
 #define WINMS_H
 
 #ifdef _MSC_VER
-# if _MSC_VER >= 1400
+#if _MSC_VER >= 1400
 /* Visual C 8 warning elimination */
-#  ifndef _CRT_SECURE_NO_DEPRECATE
+#ifndef _CRT_SECURE_NO_DEPRECATE
 #define _CRT_SECURE_NO_DEPRECATE
-#  endif
-#  ifndef _SCL_SECURE_NO_DEPRECATE
+#endif
+#ifndef _SCL_SECURE_NO_DEPRECATE
 #define _SCL_SECURE_NO_DEPRECATE
-#  endif
-#  ifndef _CRT_NONSTDC_NO_DEPRECATE
+#endif
+#ifndef _CRT_NONSTDC_NO_DEPRECATE
 #define _CRT_NONSTDC_NO_DEPRECATE
-#  endif
-# endif
+#endif
+#endif
 #endif
 
 #define WIN32_LEAN_AND_MEAN
 #define MAXWINDOWS 15
 #endif
 
-#define NHW_RIP                32
-#define NHW_INVEN      33
+#define NHW_RIP 32
+#define NHW_INVEN 33
 
 #ifndef TILE_X
 #define TILE_X 16
 #endif
 #define TILE_Y 16
 
-#define TILES_PER_LINE  40
+#define TILES_PER_LINE 40
 
 /* tile background color */
 #define TILE_BK_COLOR RGB(71, 108, 108)
 #define MAX_LOADSTRING 100
 
 typedef struct mswin_nhwindow_data {
-  HWND       win;
-  int            type;
-  int            dead;
+    HWND win;
+    int type;
+    int dead;
 } MSNHWinData, *PMSNHWinData;
 
 typedef struct mswin_nhwindow_app {
-       HINSTANCE   hApp;
-       HWND            hMainWnd;
-       HACCEL          hAccelTable;
-       HWND            hPopupWnd;      /* current popup window  */
-
-       MSNHWinData windowlist[MAXWINDOWS];
-
-       HBITMAP         bmpTiles;
-       HBITMAP         bmpPetMark;
-       HBITMAP         bmpMapTiles; /* custom tiles bitmap */
-       HBITMAP         bmpRip;
-       HBITMAP         bmpSplash;
-       int                     mapTile_X;      /* tile width */
-       int                     mapTile_Y;      /* tile height */
-       int                     mapTilesPerLine;        /* number of tile per row in the bitmap */
-
-       boolean         bNoHScroll;     /* disable cliparound for horizontal grid (map) */
-       boolean         bNoVScroll; /* disable cliparound for vertical grid (map) */
-
-       int                     mapDisplayModeSave;     /* saved map display mode */
-
-       char*           saved_text;
-
-    DWORD       saveRegistrySettings; /* Flag if we should save this time */
-    DWORD       regNetHackMode;   /* NetHack mode means no Windows keys in some places */
-
-       LONG    regMainMinX;
-       LONG    regMainMinY;
-       LONG    regMainMaxX;
-       LONG    regMainMaxY;
-       LONG    regMainLeft;
-       LONG    regMainTop;
-       LONG    regMainBottom;
-       LONG    regMainRight;
-       DWORD   regMainShowState;
-
-       BOOL            bAutoLayout;
-       RECT            rtMapWindow;
-       RECT            rtMsgWindow;
-       RECT            rtStatusWindow;
-       RECT            rtMenuWindow;
-       RECT            rtTextWindow;
-       RECT            rtInvenWindow;
-       BOOL            bWindowsLocked;         /* TRUE if windows are "locked" - no captions */
-
-       BOOL            bNoSounds;                      /* disable sounds */
+    HINSTANCE hApp;
+    HWND hMainWnd;
+    HACCEL hAccelTable;
+    HWND hPopupWnd; /* current popup window  */
+
+    MSNHWinData windowlist[MAXWINDOWS];
+
+    HBITMAP bmpTiles;
+    HBITMAP bmpPetMark;
+    HBITMAP bmpMapTiles; /* custom tiles bitmap */
+    HBITMAP bmpRip;
+    HBITMAP bmpSplash;
+    int mapTile_X;       /* tile width */
+    int mapTile_Y;       /* tile height */
+    int mapTilesPerLine; /* number of tile per row in the bitmap */
+
+    boolean bNoHScroll; /* disable cliparound for horizontal grid (map) */
+    boolean bNoVScroll; /* disable cliparound for vertical grid (map) */
+
+    int mapDisplayModeSave; /* saved map display mode */
+
+    char *saved_text;
+
+    DWORD saveRegistrySettings; /* Flag if we should save this time */
+    DWORD
+        regNetHackMode; /* NetHack mode means no Windows keys in some places
+                           */
+
+    LONG regMainMinX;
+    LONG regMainMinY;
+    LONG regMainMaxX;
+    LONG regMainMaxY;
+    LONG regMainLeft;
+    LONG regMainTop;
+    LONG regMainBottom;
+    LONG regMainRight;
+    DWORD regMainShowState;
+
+    BOOL bAutoLayout;
+    RECT rtMapWindow;
+    RECT rtMsgWindow;
+    RECT rtStatusWindow;
+    RECT rtMenuWindow;
+    RECT rtTextWindow;
+    RECT rtInvenWindow;
+    BOOL bWindowsLocked; /* TRUE if windows are "locked" - no captions */
+
+    BOOL bNoSounds; /* disable sounds */
 } NHWinApp, *PNHWinApp;
 
 #define E extern
@@ -117,7 +119,7 @@ E struct window_procs mswin_procs;
 #undef E
 
 /* Some prototypes */
-void mswin_init_nhwindows(int* argc, char** argv);
+void mswin_init_nhwindows(int *argc, char **argv);
 void mswin_player_selection(void);
 void mswin_askname(void);
 void mswin_get_nh_event(void);
@@ -131,28 +133,27 @@ void mswin_destroy_nhwindow(winid wid);
 void mswin_curs(winid wid, int x, int y);
 void mswin_putstr(winid wid, int attr, const char *text);
 void mswin_putstr_ex(winid wid, int attr, const char *text, int);
-void mswin_display_file(const char *filename,BOOLEAN_P must_exist);
+void mswin_display_file(const char *filename, BOOLEAN_P must_exist);
 void mswin_start_menu(winid wid);
-void mswin_add_menu(winid wid, int glyph, const ANY_P * identifier,
-               CHAR_P accelerator, CHAR_P group_accel, int attr, 
-               const char *str, BOOLEAN_P presel);
+void mswin_add_menu(winid wid, int glyph, const ANY_P *identifier,
+                    CHAR_P accelerator, CHAR_P group_accel, int attr,
+                    const char *str, BOOLEAN_P presel);
 void mswin_end_menu(winid wid, const char *prompt);
-int  mswin_select_menu(winid wid, int how, MENU_ITEM_P **selected);
+int mswin_select_menu(winid wid, int how, MENU_ITEM_P **selected);
 void mswin_update_inventory(void);
 void mswin_mark_synch(void);
 void mswin_wait_synch(void);
 void mswin_cliparound(int x, int y);
-void mswin_print_glyph(winid wid,XCHAR_P x,XCHAR_P y,int glyph);
+void mswin_print_glyph(winid wid, XCHAR_P x, XCHAR_P y, int glyph);
 void mswin_raw_print(const char *str);
 void mswin_raw_print_bold(const char *str);
-int  mswin_nhgetch(void);
-int  mswin_nh_poskey(int *x, int *y, int *mod);
+int mswin_nhgetch(void);
+int mswin_nh_poskey(int *x, int *y, int *mod);
 void mswin_nhbell(void);
-int  mswin_doprev_message(void);
-char mswin_yn_function(const char *question, const char *choices,
-               CHAR_P def);
+int mswin_doprev_message(void);
+char mswin_yn_function(const char *question, const char *choices, CHAR_P def);
 void mswin_getlin(const char *question, char *input);
-int  mswin_get_ext_cmd(void);
+int mswin_get_ext_cmd(void);
 void mswin_number_pad(int state);
 void mswin_delay_output(void);
 void mswin_change_color(void);
@@ -162,17 +163,19 @@ void mswin_end_screen(void);
 void mswin_outrip(winid wid, int how, time_t when);
 void mswin_preference_update(const char *pref);
 char *mswin_getmsghistory(BOOLEAN_P init);
-void mswin_putmsghistory(const char * msg,BOOLEAN_P);
+void mswin_putmsghistory(const char *msg, BOOLEAN_P);
 
 #ifdef STATUS_VIA_WINDOWPORT
 void mswin_status_init(void);
 void mswin_status_finish(void);
-void mswin_status_enablefield(int fieldidx, const char *nm, const char *fmt, boolean enable);
+void mswin_status_enablefield(int fieldidx, const char *nm, const char *fmt,
+                              boolean enable);
 void mswin_status_update(int idx, genericptr_t ptr, int chg, int percent);
 
-# ifdef STATUS_HILITES
-void mswin_status_threshold(int fldidx, int thresholdtype, anything threshold, int behavior, int under, int over);
-# endif /* STATUS_HILITES */
+#ifdef STATUS_HILITES
+void mswin_status_threshold(int fldidx, int thresholdtype, anything threshold,
+                            int behavior, int under, int over);
+#endif /* STATUS_HILITES */
 #endif /*STATUS_VIA_WINDOWPORT*/
 
 /* helper function */
@@ -181,13 +184,11 @@ winid mswin_winid_from_type(int type);
 winid mswin_winid_from_handle(HWND hWnd);
 void mswin_window_mark_dead(winid wid);
 void bail(const char *mesg);
-void nhapply_image_transparent( 
-       HDC hDC, int x, int y, int width, int height,
-       HDC sourceDC, int s_x, int s_y, int s_width, int s_height,
-       COLORREF cTransparent
-);
+void nhapply_image_transparent(HDC hDC, int x, int y, int width, int height,
+                               HDC sourceDC, int s_x, int s_y, int s_width,
+                               int s_height, COLORREF cTransparent);
 
-void mswin_popup_display(HWND popup, intdone_indicator);
+void mswin_popup_display(HWND popup, int *done_indicator);
 void mswin_popup_destroy(HWND popup);
 
 void mswin_read_reg(void);
@@ -199,7 +200,6 @@ void mswin_update_window_placement(int type, LPRECT rt);
 
 int NHMessageBox(HWND hWnd, LPCTSTR text, UINT type);
 
-
 extern HBRUSH menu_bg_brush;
 extern HBRUSH menu_fg_brush;
 extern HBRUSH text_bg_brush;
@@ -218,41 +218,28 @@ extern COLORREF status_fg_color;
 extern COLORREF message_bg_color;
 extern COLORREF message_fg_color;
 
-
 #define SYSCLR_TO_BRUSH(x) ((HBRUSH)((x) + 1))
 
 /* unicode stuff */
-#define NH_CODEPAGE (SYMHANDLING(H_IBM)?GetOEMCP():GetACP())
+#define NH_CODEPAGE (SYMHANDLING(H_IBM) ? GetOEMCP() : GetACP())
 #ifdef _UNICODE
-       #define NH_W2A(w, a, cb)     ( WideCharToMultiByte(                              \
-                                                                                                  NH_CODEPAGE,                      \
-                                                                                                  0,                           \
-                                                                                                  (w),                           \
-                                                                                                  -1,                          \
-                                                                                                  (a),                           \
-                                                                                                  (cb),                          \
-                                                                                                  NULL,                        \
-                                                                                                  NULL), (a) )
-
-       #define NH_A2W(a, w, cb)     ( MultiByteToWideChar(                              \
-                                                                                                  NH_CODEPAGE,                      \
-                                                                                                  0,                           \
-                                                                                                  (a),                           \
-                                                                                                  -1,                          \
-                                                                                                  (w),                           \
-                                                                                                  (cb)), (w) )
+#define NH_W2A(w, a, cb) \
+    (WideCharToMultiByte(NH_CODEPAGE, 0, (w), -1, (a), (cb), NULL, NULL), (a))
+
+#define NH_A2W(a, w, cb) \
+    (MultiByteToWideChar(NH_CODEPAGE, 0, (a), -1, (w), (cb)), (w))
 #else
-       #define NH_W2A(w, a, cb)     (strncpy((a), (w), (cb)))
+#define NH_W2A(w, a, cb) (strncpy((a), (w), (cb)))
 
-       #define NH_A2W(a, w, cb)     (strncpy((w), (a), (cb)))
+#define NH_A2W(a, w, cb) (strncpy((w), (a), (cb)))
 #endif
 
 /* map mode macros */
-#define IS_MAP_FIT_TO_SCREEN(mode) ((mode)==MAP_MODE_ASCII_FIT_TO_SCREEN || \
-                                                         (mode)==MAP_MODE_TILES_FIT_TO_SCREEN )
-  
-#define IS_MAP_ASCII(mode) ((mode)!=MAP_MODE_TILES && (mode)!=MAP_MODE_TILES_FIT_TO_SCREEN)
+#define IS_MAP_FIT_TO_SCREEN(mode)          \
+    ((mode) == MAP_MODE_ASCII_FIT_TO_SCREEN \
+     || (mode) == MAP_MODE_TILES_FIT_TO_SCREEN)
 
+#define IS_MAP_ASCII(mode) \
+    ((mode) != MAP_MODE_TILES && (mode) != MAP_MODE_TILES_FIT_TO_SCREEN)
 
 #endif /* WINMS_H */
-