ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra/Deliantra/Protocol/Constants.pm
Revision: 1.10
Committed: Thu Nov 15 05:12:18 2012 UTC (11 years, 6 months ago) by root
Branch: MAIN
CVS Tags: rel-2_01, HEAD
Changes since 1.9: +1 -1 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 =head1 NAME
2
3 Deliantra::Protocol::Constants - export protocol-related constants
4
5 =head1 SYNOPSIS
6
7 use Deliantra::Protocol::Constants;
8
9 =head1 DESCRIPTION
10
11 =over 4
12
13 =cut
14
15 package Deliantra::Protocol::Constants;
16
17 our $VERSION = '0.1';
18
19 use common::sense;
20
21 use AnyEvent;
22 use IO::Socket::INET;
23
24 my %CONSTANTS = (
25 TICK => 0.120, # one server tick, not exposed through the protocol of course
26 CS_QUERY_YESNO => 0x1,
27 CS_QUERY_SINGLECHAR => 0x2,
28 CS_QUERY_HIDEINPUT => 0x4,
29 CS_SAY_NORMAL => 0x1,
30 CS_SAY_SHOUT => 0x2,
31 CS_SAY_GSAY => 0x4,
32 FLOAT_MULTI => 100000,
33 FLOAT_MULTF => 100000.0,
34 CS_STAT_HP => 1,
35 CS_STAT_MAXHP => 2,
36 CS_STAT_SP => 3,
37 CS_STAT_MAXSP => 4,
38 CS_STAT_STR => 5,
39 CS_STAT_INT => 6,
40 CS_STAT_WIS => 7,
41 CS_STAT_DEX => 8,
42 CS_STAT_CON => 9,
43 CS_STAT_CHA => 10,
44 CS_STAT_EXP => 11,
45 CS_STAT_LEVEL => 12,
46 CS_STAT_WC => 13,
47 CS_STAT_AC => 14,
48 CS_STAT_DAM => 15,
49 CS_STAT_ARMOUR => 16,
50 CS_STAT_SPEED => 17,
51 CS_STAT_FOOD => 18,
52 CS_STAT_WEAP_SP => 19,
53 CS_STAT_RANGE => 20,
54 CS_STAT_TITLE => 21,
55 CS_STAT_POW => 22,
56 CS_STAT_GRACE => 23,
57 CS_STAT_MAXGRACE => 24,
58 CS_STAT_FLAGS => 25,
59 CS_STAT_WEIGHT_LIM => 26,
60 CS_STAT_EXP64 => 28,
61 CS_STAT_SPELL_ATTUNE => 29,
62 CS_STAT_SPELL_REPEL => 30,
63 CS_STAT_SPELL_DENY => 31,
64 CS_STAT_RESIST_START => 100,
65 CS_STAT_RESIST_END => 117,
66 CS_STAT_RES_PHYS => 100,
67 CS_STAT_RES_MAG => 101,
68 CS_STAT_RES_FIRE => 102,
69 CS_STAT_RES_ELEC => 103,
70 CS_STAT_RES_COLD => 104,
71 CS_STAT_RES_CONF => 105,
72 CS_STAT_RES_ACID => 106,
73 CS_STAT_RES_DRAIN => 107,
74 CS_STAT_RES_GHOSTHIT => 108,
75 CS_STAT_RES_POISON => 109,
76 CS_STAT_RES_SLOW => 110,
77 CS_STAT_RES_PARA => 111,
78 CS_STAT_TURN_UNDEAD => 112,
79 CS_STAT_RES_FEAR => 113,
80 CS_STAT_RES_DEPLETE => 114,
81 CS_STAT_RES_DEATH => 115,
82 CS_STAT_RES_HOLYWORD => 116,
83 CS_STAT_RES_BLIND => 117,
84 CS_STAT_SKILLINFO => 140,
85 CS_NUM_SKILLS => 50,
86 SF_FIREON => 0x01,
87 SF_RUNON => 0x02,
88 NDI_BLACK => 0,
89 NDI_WHITE => 1,
90 NDI_NAVY => 2,
91 NDI_RED => 3,
92 NDI_ORANGE => 4,
93 NDI_BLUE => 5,
94 NDI_DK_ORANGE => 6,
95 NDI_GREEN => 7,
96 NDI_LT_GREEN => 8,
97 NDI_GREY => 9,
98 NDI_BROWN => 10,
99 NDI_GOLD => 11,
100 NDI_TAN => 12,
101 NDI_MAX_COLOR => 12,
102 NDI_COLOR_MASK => 0x1f,
103 NDI_REPLY => 0x20,
104 NDI_NOCRATE => 0x40,
105 NDI_CLEAR => 0x80,
106 a_none => 0,
107 a_readied => 1,
108 a_wielded => 2,
109 a_worn => 3,
110 a_active => 4,
111 a_applied => 5,
112 F_APPLIED => 0x000F,
113 F_LOCATION => 0x00F0,
114 F_UNPAID => 0x0200,
115 F_MAGIC => 0x0400,
116 F_CURSED => 0x0800,
117 F_DAMNED => 0x1000,
118 F_OPEN => 0x2000,
119 F_NOPICK => 0x4000,
120 F_LOCKED => 0x8000,
121 CF_FACE_NONE => 0,
122 CF_FACE_BITMAP => 1,
123 CF_FACE_XPM => 2,
124 CF_FACE_PNG => 3,
125 CF_FACE_CACHE => 0x10,
126 FACE_FLOOR => 0x80,
127 FACE_COLOR_MASK => 0xf,
128 UPD_LOCATION => 0x01,
129 UPD_FLAGS => 0x02,
130 UPD_WEIGHT => 0x04,
131 UPD_FACE => 0x08,
132 UPD_NAME => 0x10,
133 UPD_ANIM => 0x20,
134 UPD_ANIMSPEED => 0x40,
135 UPD_NROF => 0x80,
136 UPD_SP_MANA => 0x01,
137 UPD_SP_GRACE => 0x02,
138 UPD_SP_LEVEL => 0x04,
139 SOUND_NORMAL => 0,
140 SOUND_SPELL => 1,
141
142 PICKUP_NOTHING => 0x00000000,
143
144 PICKUP_DEBUG => 0x10000000,
145 PICKUP_INHIBIT => 0x20000000,
146 PICKUP_STOP => 0x40000000,
147 PICKUP_NEWMODE => 0x80000000,
148
149 PICKUP_RATIO => 0x0000000F,
150
151 PICKUP_FOOD => 0x00000010,
152 PICKUP_DRINK => 0x00000020,
153 PICKUP_VALUABLES => 0x00000040,
154 PICKUP_BOW => 0x00000080,
155
156 PICKUP_ARROW => 0x00000100,
157 PICKUP_HELMET => 0x00000200,
158 PICKUP_SHIELD => 0x00000400,
159 PICKUP_ARMOUR => 0x00000800,
160
161 PICKUP_BOOTS => 0x00001000,
162 PICKUP_GLOVES => 0x00002000,
163 PICKUP_CLOAK => 0x00004000,
164 PICKUP_KEY => 0x00008000,
165
166 PICKUP_MISSILEWEAPON => 0x00010000,
167 PICKUP_ALLWEAPON => 0x00020000,
168 PICKUP_MAGICAL => 0x00040000,
169 PICKUP_POTION => 0x00080000,
170
171 PICKUP_SPELLBOOK => 0x00100000,
172 PICKUP_SKILLSCROLL => 0x00200000,
173 PICKUP_READABLES => 0x00400000,
174 PICKUP_MAGIC_DEVICE => 0x00800000,
175
176 PICKUP_NOT_CURSED => 0x01000000,
177
178 PICKUP_JEWELS => 0x02000000,
179 PICKUP_FLESH => 0x04000000,
180 );
181
182 eval join "\n", (map "sub $_ () { $CONSTANTS{$_} }", keys %CONSTANTS), 1
183 or die;
184
185 sub import {
186 my $caller = caller;
187
188 *{"$caller\::$_"} = \&$_
189 for keys %CONSTANTS;
190 }
191
192 =back
193
194 =head1 AUTHOR
195
196 Marc Lehmann <schmorp@schmorp.de>
197 http://home.schmorp.de/
198
199 Robin Redeker <elmex@ta-sa.org>
200 http://www.ta-sa.org/
201
202 =cut
203
204 1