/* NetHack 3.6 qtext.h $NHDT-Date: 1505170347 2017/09/11 22:52:27 $ $NHDT-Branch: NetHack-3.6.0 $:$NHDT-Revision: 1.18 $ */ /* Copyright (c) Mike Stephenson 1991. */ /* NetHack may be freely redistributed. See license for details. */ #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 */ struct qtmsg { int msgnum; char delivery; long offset, size, summary_size; }; #ifdef MAKEDEFS_C /***** MAKEDEFS *****/ #define N_MSG 100 /* arbitrary */ struct msghdr { int n_msg; struct qtmsg qt_msg[N_MSG]; }; 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" #else /***** !MAKEDEFS *****/ struct qtlists { struct qtmsg *common, #if 0 /* UNUSED but available */ *chrace, #endif *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_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_ENCOURAGE 25 /* 1-10 random encouragement messages */ #define QT_FIRSTLOCATE 35 #define QT_NEXTLOCATE 36 #define QT_FIRSTGOAL 40 #define QT_NEXTGOAL 41 #define QT_ALTGOAL 42 /* alternate to QT_NEXTGOAL if artifact is absent */ #define QT_FIRSTNEMESIS 50 #define QT_NEXTNEMESIS 51 #define QT_OTHERNEMESIS 52 #define QT_NEMWANTSIT 53 /* you somehow got the artifact */ #define QT_DISCOURAGE 60 /* 1-10 random maledictive messages */ #define QT_GOTIT 70 #define QT_KILLEDNEM 80 #define QT_OFFEREDIT 81 #define QT_OFFEREDIT2 82 #define QT_POSTHANKS 90 #define QT_HASAMULET 91 /* * Message defines for common text used in maledictions. */ #define COMMON_ID "-" /* Common message id value */ #define QT_ANGELIC 10 #define QTN_ANGELIC 10 #define QT_DEMONIC 30 #define QTN_DEMONIC 20 #define QT_BANISHED 60 #endif /***** !MAKEDEFS *****/ #endif /* QTEXT_H */