xref: /netbsd-src/games/adventure/extern.h (revision abb0f93cd77b67f080613360c65701f85e5f5cfe)
1 /*	$NetBSD: extern.h,v 1.14 2009/10/21 01:07:44 snj Exp $	*/
2 
3 /*
4  * Copyright (c) 1997 Christos Zoulas.  All rights reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions
8  * are met:
9  * 1. Redistributions of source code must retain the above copyright
10  *    notice, this list of conditions and the following disclaimer.
11  * 2. Redistributions in binary form must reproduce the above copyright
12  *    notice, this list of conditions and the following disclaimer in the
13  *    documentation and/or other materials provided with the distribution.
14  *
15  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25  */
26 
27 #include <string.h>
28 
29 /* crc.c */
30 void crc_start(void);
31 unsigned long crc(const char *, int);
32 
33 /* done.c */
34 int score(void);
35 void done(int) __dead;
36 void die(int);
37 
38 /* init.c */
39 void init(void);
40 char   *decr(int, int, int, int, int);
41 void trapdel(int);
42 void startup(void);
43 
44 /* io.c */
45 void getin(char **, char **);
46 int yes(int, int, int);
47 int yesm(int, int, int);
48 void rdata(void);
49 #ifdef DEBUG
50 void twrite(int);
51 #endif
52 void rspeak(int);
53 void mspeak(int);
54 struct text;
55 void speak(const struct text *);
56 void pspeak(int, int);
57 
58 /* save.c */
59 int save(const char *);
60 int restore(const char *);
61 
62 /* subr.c */
63 int toting(int);
64 int here(int);
65 int at(int);
66 int liq(void);
67 int liqloc(int);
68 int forced(int);
69 int dark(void);
70 int pct(int);
71 int fdwarf(void);
72 int march(void);
73 void bug(int) __dead;
74 void checkhints(void);
75 int trsay(void);
76 int trtake(void);
77 int trdrop(void);
78 int tropen(void);
79 int trkill(void);
80 int trtoss(void);
81 int trfeed(void);
82 int trfill(void);
83 void closing(void);
84 void caveclose(void);
85 
86 /* vocab.c */
87 void destroy(int);
88 void juggle(int);
89 void move(int, int);
90 int put(int, int, int);
91 void carry(int, int);
92 void drop(int, int);
93 int vocab(const char *, int, int);
94 
95 /* These three used to be functions in vocab.c */
96 #define copystr(src, dest)	strcpy((dest), (src))
97 #define weq(str1, str2)		(!strncmp((str1), (str2), 5))
98 #define length(str)		(strlen((str)) + 1)
99 
100 /* wizard.c */
101 void datime(int *, int *);
102 void poof(void);
103 int Start(void);
104 void ciao(void);
105 int ran(int);
106