This is hack.h in view mode; [Download] [Up]
/* SCCS Id: @(#)hack.h 3.0 88/07/19 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* NetHack may be freely redistributed. See license for details. */ #ifndef HACK_H #define HACK_H #ifndef CONFIG_H #include "config.h" #endif #define TELL 1 #define NOTELL 0 #define ON 1 #define OFF 0 #define BOLT_LIM 8 /* from this distance ranged attacks will be made */ #ifdef HARD #define MAX_CARR_CAP 120 /* so that boulders can be heavier */ #else #define MAX_CARR_CAP 500 #endif #define FAR (COLNO+2) /* position outside screen */ #ifdef NULL #undef NULL #endif /* NULL */ #define NULL ((genericptr_t)0) #define DUMMY { 0 } /* this is the way the game ends */ /* if these are rearranged, the arrays in end.c will need to be changed */ #define DIED 0 #define CHOKING 1 #define POISONING 2 #define STARVING 3 #define DROWNING 4 #define BURNING 5 #define CRUSHING 6 #define STONING 7 #define GENOCIDED 8 #define PANICKED 9 #define TRICKED 10 #define QUIT 11 #define ESCAPED 12 #ifdef ENDGAME #define ASCENDED 13 #endif #ifndef DECL_H #include "decl.h" #endif #ifndef MONSYM_H #include "monsym.h" #endif #ifndef MKROOM_H #include "mkroom.h" #endif #ifndef OBJCLASS_H #include "objclass.h" #endif extern coord bhitpos; /* place where thrown weapon falls to the ground */ #ifndef GOLD_H #include "gold.h" #endif #ifndef TRAP_H #include "trap.h" #endif #ifndef FLAG_H #include "flag.h" #endif #ifndef RM_H #include "rm.h" #endif #ifdef OVERLAY /* This doesn't belong here, but we have little choice */ #undef NDECL #define NDECL(f) f() #endif #ifndef EXTERN_H #include "extern.h" #endif #ifdef OVERLAY #ifndef TRAMPOLI_H #include "trampoli.h" #endif #undef EXTERN_H #include "extern.h" #endif /* OVERLAY */ #ifdef STRONGHOLD # define Inhell (dlevel > stronghold_level && dlevel <= MAXLEVEL) #else # define Inhell (dlevel >= HELLLEVEL) #endif #ifdef SPELLS #define NO_SPELL 0 #endif /*** some utility macros ***/ # ifndef STUPID_CPP /* otherwise these macros are functions in hack.c */ #define yn() yn_function(ynchars, 'n') #define ynq() yn_function(ynqchars, 'q') #define ynaq() yn_function(ynaqchars, 'y') #define nyaq() yn_function(nyaqchars, 'n') #define max(a, b) ((a) > (b) ? (a) : (b)) #define min(x,y) ((x) < (y) ? (x) : (y)) #define plur(x) (((x) == 1) ? "" : "s") #define makeknown(x) objects[x].oc_name_known = 1 # endif /* STUPID_CPP */ #if defined(MSDOS) || defined(MACOS) #define getuid() 1 #define getlogin() ((char *) NULL) #endif /* MSDOS */ /* Macro for a few items that are only static if we're not overlaid.... */ #if defined(OVERLAY) && (defined(OVL0) || defined(OVL1) || defined(OVL2) || defined(OVLB)) # define OSTATIC extern # define XSTATIC # define OVERLAY_SPLIT # ifdef OVLB # define VSTATIC # else # define VSTATIC extern # endif #else # define OSTATIC static # define XSTATIC static # define VSTATIC static #endif /* Unless explicit control is being taken of what is linked where, */ /* always compile everything */ #if !defined(OVERLAY) || (!defined(OVL0) && !defined(OVL1) && !defined(OVL2) && !defined(OVLB)) # define OVL0 /* Highest priority */ # define OVL1 # define OVL2 /* Lowest specified priority */ # define OVLB /* The base overlay segment */ #endif #endif /* HACK_H /**/
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.