ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/preprocess
(Generate patch)

Comparing deliantra/server/include/preprocess (file contents):
Revision 1.3 by root, Thu Aug 31 17:54:14 2006 UTC vs.
Revision 1.28 by root, Thu May 17 14:14:55 2007 UTC

1#!/opt/bin/perl 1#!/opt/bin/perl
2
3my %ARG = @ARGV;
2 4
3use List::Util; 5use List::Util;
4 6
5# todo: gather dynamically 7# todo: gather dynamically
6my @kw = qw( 8my @kw = qw(
9 no_pass
10 walk_on
11 walk_off
12 fly_on
13 fly_off
14 flying
15
16 attack_skill
17 ranged_skill
18
7 ac 19 ac
8 activate_on_push 20 activate_on_push
9 activate_on_release 21 activate_on_release
10 alive 22 alive
11 anim_speed 23 anim_speed
30 body_shoulder 42 body_shoulder
31 body_foot 43 body_foot
32 body_hand 44 body_hand
33 body_wrist 45 body_wrist
34 body_waist 46 body_waist
47 body_shield
48 body_combat
35 can_apply 49 can_apply
36 can_cast_spell 50 can_cast_spell
37 can_roll 51 can_roll
38 can_see_in_dark 52 can_see_in_dark
39 can_use_armour 53 can_use_armour
59 cursed 73 cursed
60 custom_name 74 custom_name
61 dam 75 dam
62 dam_modifier 76 dam_modifier
63 damned 77 damned
78 destroy_on_death
64 dex 79 dex
65 direction 80 direction
66 duration 81 duration
67 duration_modifier 82 duration_modifier
68 editable 83 editable
79 gen_sp_armour 94 gen_sp_armour
80 generator 95 generator
81 glow_radius 96 glow_radius
82 grace 97 grace
83 has_ready_bow 98 has_ready_bow
84 has_ready_horn
85 has_ready_rod
86 has_ready_scroll 99 has_ready_scroll
87 has_ready_skill 100 has_ready_skill
88 has_ready_wand
89 has_ready_weapon 101 has_ready_weapon
102 has_ready_range
90 hitback 103 hitback
91 hp 104 hp
92 identified 105 identified
93 immune 106 immune
107 inherit
94 int 108 int
95 inv_locked 109 inv_locked
96 invisible 110 invisible
97 is_animated 111 is_animated
98 is_blind 112 is_blind
99 is_buildable 113 is_buildable
100 is_cauldron 114 is_cauldron
115 is_dust
101 is_floor 116 is_floor
102 is_hilly 117 is_hilly
103 is_lightable 118 is_lightable
104 is_thrown 119 is_thrown
105 is_turnable 120 is_turnable
146 no_pick 161 no_pick
147 no_skill_ident 162 no_skill_ident
148 no_steal 163 no_steal
149 no_strength 164 no_strength
150 nrof 165 nrof
166 obj_original
151 object 167 object
152 oid 168 oid
153 one_hit 169 one_hit
154 only_attack 170 only_attack
155 other_arch 171 other_arch
157 path_attuned 173 path_attuned
158 path_denied 174 path_denied
159 path_repelled 175 path_repelled
160 perm_exp 176 perm_exp
161 pick_up 177 pick_up
178 player_sold
162 pow 179 pow
180 precious
163 protected 181 protected
164 race 182 race
165 random_move 183 random_move
166 random_movement 184 random_movement
167 randomitems 185 randomitems
216 str 234 str
217 subtype 235 subtype
218 tear_down 236 tear_down
219 title 237 title
220 tooltype 238 tooltype
221 treasure 239 treasure_env
222 type 240 type
223 unaggressive 241 unaggressive
224 undead 242 undead
225 unique 243 unique
226 unpaid 244 unpaid
227 use_content_on_gen 245 use_content_on_gen
246 uuid
228 value 247 value
229 vulnerable 248 vulnerable
230 was_wiz
231 wc 249 wc
232 weapontype 250 weapontype
233 weight 251 weight
234 will_apply 252 will_apply
235 wis 253 wis
236 wiz
237 x 254 x
238 xrays 255 xrays
239 y 256 y
257
258 maplore
259 endmaplore
260 enter_x
261 enter_y
262 width
263 height
264 reset_timeout
265 reset_time
266 swap_time
267 difficulty
268 darkness
269 fixed_resettime
270 per_player
271 per_party
272 region
273 shopitems
274 shopgreed
275 shopmin
276 shopmax
277 shoprace
278 outdoor
279 tile_path_1
280 tile_path_2
281 tile_path_3
282 tile_path_4
283
284 file_format_version
285
286 temp
287 pressure
288 humid
289 windspeed
290 winddir
291 sky
292
293 map
294 savebed_map
295 bed_x
296 bed_y
297 password
298 bowtype
299 petmode
300 gen_hp
301 gen_sp
302 gen_grace
303 listening
304 peaceful
305 digestion
306 pickup
307 outputs_sync
308 outputs_count
309 usekeys
310 unapply
311 weapon_sp
312 lev_array
313 endplst
314
315 visibility
316 magicmap
317
318 match
319 parent
320 longname
321 jail_map
322 jail_x
323 jail_y
324 fallback
325 nomore
326
327 chance
328 mods
329 diff
330 saves
331 description
332 density
333 damage
334
335 anim
336 mina
337 facings
338 player
339
340 allowed
341 keycode
342 trans
343 yield
344 ingred
345 cauldron
346
347 Str
348 Dex
349 Con
350 Wis
351 Cha
352 Int
353 Pow
354
355 treasure
356 treasureone
357 list
358 change_name
359 change_title
360 change_slaying
361 yes
362 no
240); 363);
241 364
242open GPERF, "|-", "gperf -m50 >kw_hash.h" 365open GPERF, "|-", "exec $ARG{GPERF} -m50 >kw_hash.h"
243 or die "gperf: $!"; 366 or die "$ARGV{GPERF}: $!";
244 367
245print GPERF <<EOF; 368print GPERF <<EOF;
246%language=C++ 369%language=C++
247%enum 370%enum
248%define class-name kw_lex 371%define class-name kw_lex
272print GPERF "};\n"; 395print GPERF "};\n";
273 396
274printf GPERF "\nextern const unsigned char keyword_len [] = { 5, 7, %s };\n\n", 397printf GPERF "\nextern const unsigned char keyword_len [] = { 5, 7, %s };\n\n",
275 join ", ", map length, @kw; 398 join ", ", map length, @kw;
276 399
400close GPERF
401 or die "$ARG{GPERF}: failed to run";
402
277open KW, ">", "keyword.h"; 403open KW, ">", "keyword.h";
278 404
279print KW <<EOF; 405print KW <<EOF;
280#ifndef KW_H__ 406#ifndef KW_H__
281#define KW_H__ 407#define KW_H__
282 408
283enum keyword { 409enum keyword {
284 KW_EOF, KW_ERROR, 410 KW_NULL = 0,
411 KW_EOF = 0,
412 KW_ERROR,
285EOF 413EOF
286 414
287for (@kw) { 415for (@kw) {
288 printf KW " %s,\n", "KW_$_", 416 printf KW " %s,\n", "KW_$_",
289} 417}

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines