1 | /* |
1 | /* |
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
3 | * |
3 | * |
4 | * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
4 | * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
5 | * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team |
5 | * Copyright (©) 2002 Mark Wedel & Crossfire Development Team |
6 | * Copyright (©) 1992,2007 Frank Tore Johansen |
6 | * Copyright (©) 1992 Frank Tore Johansen |
7 | * |
7 | * |
8 | * Deliantra is free software: you can redistribute it and/or modify it under |
8 | * Deliantra is free software: you can redistribute it and/or modify it under |
9 | * the terms of the Affero GNU General Public License as published by the |
9 | * the terms of the Affero GNU General Public License as published by the |
10 | * Free Software Foundation, either version 3 of the License, or (at your |
10 | * Free Software Foundation, either version 3 of the License, or (at your |
11 | * option) any later version. |
11 | * option) any later version. |
… | |
… | |
30 | #ifndef EXTERN |
30 | #ifndef EXTERN |
31 | #define EXTERN extern |
31 | #define EXTERN extern |
32 | #endif |
32 | #endif |
33 | |
33 | |
34 | #include "includes.h" |
34 | #include "includes.h" |
35 | |
|
|
36 | #include "config.h" |
35 | #include "config.h" |
|
|
36 | #include "compiler.h" |
37 | #include "define.h" |
37 | #include "define.h" |
38 | #include "logger.h" |
|
|
39 | |
38 | |
40 | #ifndef TRUE |
39 | #ifndef TRUE |
41 | #define TRUE 1 |
40 | #define TRUE 1 |
42 | #endif |
41 | #endif |
43 | |
42 | |
44 | #ifndef FALSE |
43 | #ifndef FALSE |
45 | #define FALSE 0 |
44 | #define FALSE 0 |
46 | #endif |
45 | #endif |
47 | |
46 | |
48 | extern short freearr_x[SIZEOFFREE], freearr_y[SIZEOFFREE]; |
47 | extern short freearr_x[SIZEOFFREE], freearr_y[SIZEOFFREE]; |
49 | extern int maxfree[SIZEOFFREE], freedir[SIZEOFFREE]; |
48 | extern int freedir[SIZEOFFREE]; |
50 | extern int rightof_x[9], rightof_y[9]; |
49 | extern int rightof_x[9], rightof_y[9]; |
51 | extern int leftof_x[9], leftof_y[9]; |
50 | extern int leftof_x[9], leftof_y[9]; |
52 | |
51 | |
53 | // used only for tagging structure members so scripting languages |
52 | // used only for tagging structure members so scripting languages |
54 | // can easily parse the include files. |
53 | // can easily parse the include files. |
55 | #define INTERFACE_CLASS(name) |
54 | #define INTERFACE_CLASS(name) |
56 | #define ACC(meta,member) member |
55 | #define ACC(meta,member) member |
57 | #define MTH |
56 | #define MTH |
58 | |
57 | |
59 | #if __GNUC__ >= 3 |
|
|
60 | # define attribute(attrlist) __attribute__(attrlist) |
|
|
61 | #else |
|
|
62 | # define attribute(attrlist) |
|
|
63 | #endif |
|
|
64 | |
|
|
65 | #include "keyword.h" |
58 | #include "keyword.h" |
66 | #include "traits.h" |
59 | #include "traits.h" |
|
|
60 | #include "logger.h" |
67 | #include "dynbuf.h" |
61 | #include "dynbuf.h" |
68 | #include "util.h" |
62 | #include "util.h" |
69 | #include "shstr.h" |
63 | #include "shstr.h" |
70 | #include "cfperl.h" |
64 | #include "cfperl.h" |
71 | |
65 | |
… | |
… | |
182 | const char *ACC (RO, mapdir); /* Where the map files are */ |
176 | const char *ACC (RO, mapdir); /* Where the map files are */ |
183 | const char *ACC (RO, archetypes); /* name of the archetypes file - libdir is prepended */ |
177 | const char *ACC (RO, archetypes); /* name of the archetypes file - libdir is prepended */ |
184 | const char *ACC (RO, regions); /* name of the regions file - libdir is prepended */ |
178 | const char *ACC (RO, regions); /* name of the regions file - libdir is prepended */ |
185 | const char *ACC (RO, treasures); /* location of the treasures file. */ |
179 | const char *ACC (RO, treasures); /* location of the treasures file. */ |
186 | const char *ACC (RO, uniquedir); /* directory for the unique items */ |
180 | const char *ACC (RO, uniquedir); /* directory for the unique items */ |
187 | const char *ACC (RO, templatedir); /* directory for the template map */ |
181 | const char *templatedir; /* directory for the template map */ |
188 | const char *ACC (RO, tmpdir); /* Directory to use for temporary files */ |
182 | const char *ACC (RO, tmpdir); /* Directory to use for temporary files */ |
189 | sint16 ACC (RW, pk_luck_penalty); /* Amount by which player luck is reduced if they PK */ |
183 | sint16 ACC (RW, pk_luck_penalty); /* Amount by which player luck is reduced if they PK */ |
190 | uint8 ACC (RW, stat_loss_on_death); /* If true, chars lose a random stat when they die */ |
184 | uint8 ACC (RW, stat_loss_on_death); /* If true, chars lose a random stat when they die */ |
191 | uint8 ACC (RW, permanent_exp_ratio); /* how much exp should be 'permenant' and unable to be lost*/ |
185 | uint8 ACC (RW, permanent_exp_ratio); /* how much exp should be 'permenant' and unable to be lost*/ |
192 | uint8 ACC (RW, death_penalty_ratio); /* how much exp should be lost at death */ |
186 | uint8 ACC (RW, death_penalty_ratio); /* how much exp should be lost at death */ |