projects
/
open-adventure.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Moved application settings to settings_t struct
[open-adventure.git]
/
advent.h
diff --git
a/advent.h
b/advent.h
index 6f66d1ec4414c3be019c606690fe26911f73bf88..a7f5ac4c71d1814a1b653271e942c0a41b174e2e 100644
(file)
--- a/
advent.h
+++ b/
advent.h
@@
-54,6
+54,12
@@
#define OUTSID(LOC) (CNDBIT(LOC, COND_ABOVE) || FOREST(LOC))
#define INDEEP(LOC) ((LOC) >= LOC_MISTHALL && !OUTSID(LOC))
#define BUG(x) bug(x, #x)
#define OUTSID(LOC) (CNDBIT(LOC, COND_ABOVE) || FOREST(LOC))
#define INDEEP(LOC) ((LOC) >= LOC_MISTHALL && !OUTSID(LOC))
#define BUG(x) bug(x, #x)
+#define MOTION_WORD(n) ((n) + 0)
+#define OBJECT_WORD(n) ((n) + 1000)
+#define ACTION_WORD(n) ((n) + 2000)
+#define SPECIAL_WORD(n) ((n) + 3000)
+#define PROMOTE_WORD(n) ((n) + 1000)
+#define DEMOTE_WORD(n) ((n) - 1000)
enum bugtype {
SPECIAL_TRAVEL_500_GT_L_GT_300_EXCEEDS_GOTO_LIST,
enum bugtype {
SPECIAL_TRAVEL_500_GT_L_GT_300_EXCEEDS_GOTO_LIST,
@@
-157,6
+163,16
@@
struct game_t {
long prop[NOBJECTS + 1];
};
long prop[NOBJECTS + 1];
};
+/*
+ * Game application settings - settings, but not state of the game, per se.
+ * This data is not saved in a saved game.
+ */
+struct settings_t {
+ FILE *logfp;
+ bool oldstyle;
+ bool prompt;
+};
+
struct command_t {
enum speechpart part;
vocab_t verb;
struct command_t {
enum speechpart part;
vocab_t verb;
@@
-166,8
+182,7
@@
struct command_t {
};
extern struct game_t game;
};
extern struct game_t game;
-extern FILE *logfp;
-extern bool oldstyle, editline, prompt;
+extern struct settings_t settings;
extern char* xstrdup(const char* s);
extern void* xmalloc(size_t size);
extern char* xstrdup(const char* s);
extern void* xmalloc(size_t size);
@@
-181,7
+196,7
@@
extern void wordclear(token_t *);
extern void speak(const char*, ...);
extern void pspeak(vocab_t, enum speaktype, int, ...);
extern void rspeak(vocab_t, ...);
extern void speak(const char*, ...);
extern void pspeak(vocab_t, enum speaktype, int, ...);
extern void rspeak(vocab_t, ...);
-extern void echo_input(FILE*, c
har*,
char*);
+extern void echo_input(FILE*, c
onst char*, const
char*);
extern int word_count(char*);
extern char* get_input(void);
extern bool silent_yes(void);
extern int word_count(char*);
extern char* get_input(void);
extern bool silent_yes(void);
@@
-200,7
+215,6
@@
extern long atdwrf(long);
extern long setbit(long);
extern bool tstbit(long, int);
extern void make_zzword(char*);
extern long setbit(long);
extern bool tstbit(long, int);
extern void make_zzword(char*);
-extern void datime(long*, long*);
extern void set_seed(long);
extern unsigned long get_next_lcg_value(void);
extern long randrange(long);
extern void set_seed(long);
extern unsigned long get_next_lcg_value(void);
extern long randrange(long);
@@
-213,7
+227,6
@@
extern int restore(FILE *);
extern long initialise(void);
extern int action(struct command_t *command);
extern long initialise(void);
extern int action(struct command_t *command);
-/* Alas, declaring this static confuses the coverage analyzer */
void bug(enum bugtype, const char *) __attribute__((__noreturn__));
/* end */
void bug(enum bugtype, const char *) __attribute__((__noreturn__));
/* end */