]>
Commit | Line | Data |
---|---|---|
85ce9d3e | 1 | #ifndef EXTERN_H |
2 | #define EXTERN_H | |
3 | ||
4 | #define E extern | |
5 | ||
ab4f4ec0 | 6 | #define LEVELS 12 // Levels in the game |
6d053d90 | 7 | #define REALLEVELS 12 // Levels to load from monsters.dat |
ab4f4ec0 | 8 | #define MONSTERS 12 // Monsters per level |
9 | ||
85ce9d3e | 10 | #include <stdarg.h> |
11 | #include "player.h" | |
42106907 | 12 | #include "level.h" |
85ce9d3e | 13 | #include "list.h" |
44ea29f7 | 14 | #include "config.h" |
e1c41a84 | 15 | #include "options.h" |
44ea29f7 | 16 | |
17 | #if TIME_WITH_SYS_TIME | |
18 | # include <sys/time.h> | |
19 | # include <time.h> | |
20 | #else | |
21 | # if HAVE_SYS_TIME_H | |
22 | # include <sys/time.h> | |
23 | # else | |
24 | # include <time.h> | |
25 | # endif | |
26 | #endif | |
27 | ||
7996e5fd | 28 | // Hash.cpp stuff start |
29 | #define U_TABLE_SIZE 1999 | |
448a1531 | 30 | E unsigned long sHASH(const unsigned char *name); |
31 | E unsigned long iHASH(const unsigned char *name); | |
7996e5fd | 32 | // hash.cpp stuff end |
33 | ||
2edcd222 | 34 | E long lastrefresh; |
35 | E void save_lastrefresh(); | |
36 | E void load_lastrefresh(); | |
85ce9d3e | 37 | |
38 | // The socket | |
39 | E int sock; | |
40 | ||
9d057db5 | 41 | |
8450c018 | 42 | /* config.cpp start */ |
624c0352 | 43 | E int load_config_file(char *config = "gameserv.conf"); |
85ce9d3e | 44 | E void unload_config_file(); |
45 | E char *s_GameServ; | |
46 | E char *c_Forest; | |
47 | E char *c_ForestTopic; | |
48 | E char *gshost; | |
49 | E char *gsident; | |
529f5e31 | 50 | E char *pidfile; |
5aa1d28d | 51 | E char *newsdata; |
e1c41a84 | 52 | |
53 | #if defined(P10) | |
54 | E char *gsnum; | |
55 | #endif | |
56 | ||
85ce9d3e | 57 | E char *servername; |
58 | E char *remoteserver; | |
59 | E char *remoteport; | |
60 | E char *remotepass; | |
61 | E char *playerdata; | |
c62d75be | 62 | E char *logfile; |
45a84400 | 63 | E char *adminpass; |
173302fe | 64 | E char *VERSION; |
65 | E char *PACKAGE; | |
bf2cabcd | 66 | E char *welcomemsg; |
448a1531 | 67 | E char *ignoreserverslist; |
bf2cabcd | 68 | |
9bafc40d | 69 | E long configflags; |
2edcd222 | 70 | E long refreshperiod; |
14e24ba1 | 71 | E int level1expire; |
72 | E int defaultexpire; | |
05c527e6 | 73 | E bool shuttingdown; |
922daad7 | 74 | E int welcomedelay; |
75 | E int updateperiod; | |
20d5d721 | 76 | E int forestfights; |
8450c018 | 77 | E int maxafightdistance; |
78 | E int maxbfightdistance; | |
40251952 | 79 | E int maxidletime; |
80 | E int idlecheckperiod; | |
8450c018 | 81 | |
82 | /* config.cpp end */ | |
85ce9d3e | 83 | |
7996e5fd | 84 | E List<aClient> players[U_TABLE_SIZE]; |
85 | E List<aClient> clients[U_TABLE_SIZE]; | |
16ee6441 | 86 | E List<string> todaysnews; |
425d7369 | 87 | E Monster boss; |
85ce9d3e | 88 | |
40251952 | 89 | /** tcpclient.cpp **/ |
90 | E void check_idles(); | |
91 | ||
85ce9d3e | 92 | /** List search functions **/ |
93 | E aClient *find(char *nick); | |
94 | E aClient *find(const char *nick); | |
95 | E aClient *findbynick(char *nick); | |
96 | E aClient *findbynick(const char *nick); | |
4e5760fd | 97 | E aClient *findbyrealnick(char *realnick); |
0a1518fa | 98 | E aClient *findplayer(const char *name); |
ee38284f | 99 | E aClient *findIRCplayer(const char *nick); |
ce61cdfa | 100 | #ifdef P10 |
101 | E aClient *findbyrealnick(char *realnick); | |
102 | #endif | |
85ce9d3e | 103 | |
40251952 | 104 | /** tcpclient.cpp **/ |
105 | ||
85ce9d3e | 106 | /** Sock writing functions **/ |
107 | E void notice(const char *source, const char *dest, const char *fmt, ...); | |
108 | E void raw(const char *fmt, ...); | |
109 | ||
c260a8d7 | 110 | /** news.cpp **/ |
16ee6441 | 111 | E void addNews(List<string> &news, const char *fmt, ...); |
5aa1d28d | 112 | E void do_news(char *u); |
16ee6441 | 113 | E void clearNews(List<string> &news); |
114 | E void loadNews(char *filename, List<string> &news); | |
115 | E void saveNews(char *filename, List<string> &news); | |
116 | E void showNews(char *nick, List<string> &news); | |
c260a8d7 | 117 | |
85ce9d3e | 118 | /** gameserv.cpp **/ |
119 | E void gameserv(char *source, char *buf); | |
42106907 | 120 | E Level levels[LEVELS]; |
85ce9d3e | 121 | |
122 | /** forest.cpp **/ | |
123 | E void forest(char *source, char *buf); | |
124 | ||
125 | /** functions.cpp **/ | |
126 | ||
85ce9d3e | 127 | E bool is_playing(char *u); |
1af35752 | 128 | E bool is_playing(aClient *user); |
129 | ||
85ce9d3e | 130 | E bool is_fighting(char *u); |
1af35752 | 131 | E bool is_fighting(aClient *user); |
132 | ||
85ce9d3e | 133 | E bool player_fight(char *u); |
1af35752 | 134 | E bool player_fight(aClient *user); |
135 | ||
85ce9d3e | 136 | E bool master_fight(char *u); |
1af35752 | 137 | E bool master_fight(aClient *user); |
138 | ||
653c4f62 | 139 | #ifndef HAVE_STRTOK |
85ce9d3e | 140 | E char *strtok(char *str, const char *delim); |
653c4f62 | 141 | #endif |
142 | ||
85ce9d3e | 143 | E char *spaces(int len, char *seperator); |
85ce9d3e | 144 | E void display_monster(char *u); |
145 | E void display_players(char *u); | |
146 | E int stricmp(const char *s1, const char *s2); | |
147 | E int strnicmp(const char *s1, const char *s2, size_t len); | |
148 | E long int chartoint(char ch); | |
149 | E int isstringnum(char *num); | |
150 | E long int pow (int x, int y); | |
151 | E long int stringtoint(char *number); | |
5c449fde | 152 | E bool load_masters(); |
4dde2ed9 | 153 | E bool load_monsters(); |
ea93c39a | 154 | E bool load_levels(); |
c8ada07e | 155 | E void delete_monsters(); |
156 | E void delete_masters(); | |
157 | E Monster *getNewMonster(Monster *m); | |
158 | E void deleteMonster(Monster *m); | |
44ea29f7 | 159 | E void refresh(Player *p); |
85ce9d3e | 160 | E void refreshall(); |
40251952 | 161 | E void updateTS(Player *p); |
162 | E bool timedOut(Player *p); | |
163 | E void timeOutEvent(Player *p); | |
ee38284f | 164 | E void reset(Player *p); |
165 | E void resetall(); | |
85ce9d3e | 166 | |
9cda831c | 167 | E void do_attack(char *u); |
168 | E void do_bank(char *u); | |
70065ca1 | 169 | E void do_check(char *u); |
9cda831c | 170 | E void do_fight(char *u); |
171 | E void do_forest(char *u); | |
172 | E void do_heal(char *u); | |
85ce9d3e | 173 | E void do_identify(char *u); |
9cda831c | 174 | E void do_invenory(char *u); |
175 | E void do_list(char *u); | |
b0359af9 | 176 | E void do_logout(char *u); |
85ce9d3e | 177 | E void do_play(char *u); |
178 | E void do_quitg(char *u); | |
9cda831c | 179 | E void do_refresh(char *u); |
180 | E void do_register(char *u); | |
85ce9d3e | 181 | E void do_reset(char *u); |
85ce9d3e | 182 | E void do_run(char *u); |
85ce9d3e | 183 | E void do_stats(char *u); |
9cda831c | 184 | E void do_store(char *u); |
185 | E void do_tavern(char *u); | |
83cf716f | 186 | E void do_use(char *u); |
85ce9d3e | 187 | E void see_mystic(char *u); |
85ce9d3e | 188 | |
b0359af9 | 189 | E void logout(aClient *user); // log a user off the game |
9cda831c | 190 | E void showstats(const char *u, const char *nick); |
191 | E void showinventory(aClient *from, aClient *to = NULL); | |
85ce9d3e | 192 | /* Database saving stuff */ |
193 | ||
194 | E int save_gs_dbase(); | |
195 | E int load_gs_dbase(); | |
196 | ||
c62d75be | 197 | // Log File Stuff |
198 | E void log(const char *fmt, ...); | |
199 | ||
85ce9d3e | 200 | #endif |