Crossfire Server, Branches 1.12  R18729
cfpython_object_private.h
Go to the documentation of this file.
1 /*****************************************************************************/
2 /* CFPython - A Python module for Crossfire RPG. */
3 /* Version: 2.0beta8 (also known as "Alexander") */
4 /* Contact: yann.chachkoff@myrealbox.com */
5 /*****************************************************************************/
6 /* That code is placed under the GNU General Public Licence (GPL) */
7 /* (C)2001-2005 by Chachkoff Yann (Feel free to deliver your complaints) */
8 /*****************************************************************************/
9 /* CrossFire, A Multiplayer game for X-windows */
10 /* */
11 /* Copyright (C) 2000 Mark Wedel */
12 /* Copyright (C) 1992 Frank Tore Johansen */
13 /* */
14 /* This program is free software; you can redistribute it and/or modify */
15 /* it under the terms of the GNU General Public License as published by */
16 /* the Free Software Foundation; either version 2 of the License, or */
17 /* (at your option) any later version. */
18 /* */
19 /* This program is distributed in the hope that it will be useful, */
20 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
21 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
22 /* GNU General Public License for more details. */
23 /* */
24 /* You should have received a copy of the GNU General Public License */
25 /* along with this program; if not, write to the Free Software */
26 /* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
27 /* */
28 /*****************************************************************************/
29 
30 static PyObject *Object_GetName(Crossfire_Object *whoptr, void *closure);
31 static PyObject *Object_GetNamePl(Crossfire_Object *whoptr, void *closure);
32 static PyObject *Object_GetTitle(Crossfire_Object *whoptr, void *closure);
33 static PyObject *Object_GetRace(Crossfire_Object *whoptr, void *closure);
34 static PyObject *Object_GetMap(Crossfire_Object *whoptr, void *closure);
35 static PyObject *Object_GetCha(Crossfire_Object *whoptr, void *closure);
36 static PyObject *Object_GetCon(Crossfire_Object *whoptr, void *closure);
37 static PyObject *Object_GetDex(Crossfire_Object *whoptr, void *closure);
38 static PyObject *Object_GetInt(Crossfire_Object *whoptr, void *closure);
39 static PyObject *Object_GetPow(Crossfire_Object *whoptr, void *closure);
40 static PyObject *Object_GetStr(Crossfire_Object *whoptr, void *closure);
41 static PyObject *Object_GetWis(Crossfire_Object *whoptr, void *closure);
42 static PyObject *Object_GetHP(Crossfire_Object *whoptr, void *closure);
43 static PyObject *Object_GetMaxHP(Crossfire_Object *whoptr, void *closure);
44 static PyObject *Object_GetSP(Crossfire_Object *whoptr, void *closure);
45 static PyObject *Object_GetMaxSP(Crossfire_Object *whoptr, void *closure);
46 static PyObject *Object_GetGrace(Crossfire_Object *whoptr, void *closure);
47 static PyObject *Object_GetMaxGrace(Crossfire_Object *whoptr, void *closure);
48 static PyObject *Object_GetFood(Crossfire_Object *whoptr, void *closure);
49 static PyObject *Object_GetAC(Crossfire_Object *whoptr, void *closure);
50 static PyObject *Object_GetWC(Crossfire_Object *whoptr, void *closure);
51 static PyObject *Object_GetDam(Crossfire_Object *whoptr, void *closure);
52 static PyObject *Object_GetLuck(Crossfire_Object *whoptr, void *closure);
53 static PyObject *Object_GetMessage(Crossfire_Object *whoptr, void *closure);
54 static PyObject *Object_GetSkill(Crossfire_Object *whoptr, void *closure);
55 static PyObject *Object_GetExp(Crossfire_Object *whoptr, void *closure);
56 static PyObject *Object_GetPermExp(Crossfire_Object *whoptr, void *closure);
57 static PyObject *Object_GetExpMul(Crossfire_Object *whoptr, void *closure);
58 static PyObject *Object_GetSlaying(Crossfire_Object *whoptr, void *closure);
59 static PyObject *Object_GetCursed(Crossfire_Object *whoptr, void *closure);
60 static PyObject *Object_GetDamned(Crossfire_Object *whoptr, void *closure);
61 static PyObject *Object_GetWeight(Crossfire_Object *whoptr, void *closure);
62 static PyObject *Object_GetWeightLimit(Crossfire_Object *whoptr, void *closure);
63 static PyObject *Object_GetAbove(Crossfire_Object *whoptr, void *closure);
64 static PyObject *Object_GetBelow(Crossfire_Object *whoptr, void *closure);
65 static PyObject *Object_GetInventory(Crossfire_Object *whoptr, void *closure);
66 static PyObject *Object_GetX(Crossfire_Object *whoptr, void *closure);
67 static PyObject *Object_GetY(Crossfire_Object *whoptr, void *closure);
68 static PyObject *Object_GetDirection(Crossfire_Object *whoptr, void *closure);
69 static PyObject *Object_GetFacing(Crossfire_Object *whoptr, void *closure);
70 static PyObject *Object_GetUnaggressive(Crossfire_Object *whoptr, void *closure);
71 static PyObject *Object_GetGod(Crossfire_Object *whoptr, void *closure);
72 static PyObject *Object_GetPickable(Crossfire_Object *whoptr, void *closure);
73 static PyObject *Object_GetQuantity(Crossfire_Object *whoptr, void *closure);
74 static PyObject *Object_GetInvisible(Crossfire_Object *whoptr, void *closure);
75 static PyObject *Object_GetSpeed(Crossfire_Object *whoptr, void *closure);
76 static PyObject *Object_GetSpeedLeft(Crossfire_Object *whoptr, void *closure);
77 static PyObject *Object_GetLastSP(Crossfire_Object *whoptr, void *closure);
78 static PyObject *Object_GetLastGrace(Crossfire_Object *whoptr, void *closure);
79 static PyObject *Object_GetLastEat(Crossfire_Object *whoptr, void *closure);
80 static PyObject *Object_GetLevel(Crossfire_Object *whoptr, void *closure);
81 static PyObject *Object_GetFace(Crossfire_Object *whoptr, void *closure);
82 static PyObject *Object_GetAnim(Crossfire_Object *whoptr, void *closure);
83 static PyObject *Object_GetAnimSpeed(Crossfire_Object *whoptr, void *closure);
84 static PyObject *Object_GetAttackType(Crossfire_Object *whoptr, void *closure);
85 static PyObject *Object_GetBeenApplied(Crossfire_Object *whoptr, void *closure);
86 static PyObject *Object_GetIdentified(Crossfire_Object *whoptr, void *closure);
87 static PyObject *Object_GetAlive(Crossfire_Object *whoptr, void *closure);
88 static PyObject *Object_GetDM(Crossfire_Object *whoptr, void *closure);
89 static PyObject *Object_GetWasDM(Crossfire_Object *whoptr, void *closure);
90 static PyObject *Object_GetApplied(Crossfire_Object *whoptr, void *closure);
91 static PyObject *Object_GetUnpaid(Crossfire_Object *whoptr, void *closure);
92 static PyObject *Object_GetMonster(Crossfire_Object *whoptr, void *closure);
93 static PyObject *Object_GetFriendly(Crossfire_Object *whoptr, void *closure);
94 static PyObject *Object_GetGenerator(Crossfire_Object *whoptr, void *closure);
95 static PyObject *Object_GetThrown(Crossfire_Object *whoptr, void *closure);
96 static PyObject *Object_GetCanSeeInvisible(Crossfire_Object *whoptr, void *closure);
97 static PyObject *Object_GetRollable(Crossfire_Object *whoptr, void *closure);
98 static PyObject *Object_GetTurnable(Crossfire_Object *whoptr, void *closure);
99 static PyObject *Object_GetUsedUp(Crossfire_Object *whoptr, void *closure);
100 static PyObject *Object_GetSplitting(Crossfire_Object *whoptr, void *closure);
101 static PyObject *Object_GetBlind(Crossfire_Object *whoptr, void *closure);
102 static PyObject *Object_GetCanUseHorn(Crossfire_Object *whoptr, void *closure);
103 static PyObject *Object_GetCanUseRod(Crossfire_Object *whoptr, void *closure);
104 static PyObject *Object_GetCanUseSkill(Crossfire_Object *whoptr, void *closure);
105 static PyObject *Object_GetKnownCursed(Crossfire_Object *whoptr, void *closure);
106 static PyObject *Object_GetStealthy(Crossfire_Object *whoptr, void *closure);
107 static PyObject *Object_GetConfused(Crossfire_Object *whoptr, void *closure);
108 static PyObject *Object_GetSleeping(Crossfire_Object *whoptr, void *closure);
109 static PyObject *Object_GetLifesaver(Crossfire_Object *whoptr, void *closure);
110 static PyObject *Object_GetFloor(Crossfire_Object *whoptr, void *closure);
111 static PyObject *Object_GetHasXRays(Crossfire_Object *whoptr, void *closure);
112 static PyObject *Object_GetCanUseRing(Crossfire_Object *whoptr, void *closure);
113 static PyObject *Object_GetCanUseBow(Crossfire_Object *whoptr, void *closure);
114 static PyObject *Object_GetCanUseWand(Crossfire_Object *whoptr, void *closure);
115 static PyObject *Object_GetCanSeeInDark(Crossfire_Object *whoptr, void *closure);
116 static PyObject *Object_GetKnownMagical(Crossfire_Object *whoptr, void *closure);
117 static PyObject *Object_GetCanUseWeapon(Crossfire_Object *whoptr, void *closure);
118 static PyObject *Object_GetCanUseArmour(Crossfire_Object *whoptr, void *closure);
119 static PyObject *Object_GetCanUseScroll(Crossfire_Object *whoptr, void *closure);
120 static PyObject *Object_GetCanCastSpell(Crossfire_Object *whoptr, void *closure);
121 static PyObject *Object_GetReflectSpells(Crossfire_Object *whoptr, void *closure);
122 static PyObject *Object_GetReflectMissiles(Crossfire_Object *whoptr, void *closure);
123 static PyObject *Object_GetUnique(Crossfire_Object *whoptr, void *closure);
124 static PyObject *Object_GetRunAway(Crossfire_Object *whoptr, void *closure);
125 static PyObject *Object_GetScared(Crossfire_Object *whoptr, void *closure);
126 static PyObject *Object_GetUndead(Crossfire_Object *whoptr, void *closure);
127 static PyObject *Object_GetBlocksView(Crossfire_Object *whoptr, void *closure);
128 static PyObject *Object_GetHitBack(Crossfire_Object *whoptr, void *closure);
129 static PyObject *Object_GetStandStill(Crossfire_Object *whoptr, void *closure);
130 static PyObject *Object_GetOnlyAttack(Crossfire_Object *whoptr, void *closure);
131 static PyObject *Object_GetMakeInvisible(Crossfire_Object *whoptr, void *closure);
132 static PyObject *Object_GetMoney(Crossfire_Object *whoptr, void *closure);
133 static PyObject *Object_GetType(Crossfire_Object *whoptr, void *closure);
134 static PyObject *Object_GetSubtype(Crossfire_Object *whoptr, void *closure);
135 static PyObject *Object_GetValue(Crossfire_Object *whoptr, void *closure);
136 static PyObject *Object_GetArchName(Crossfire_Object *whoptr, void *closure);
137 static PyObject *Object_GetArchetype(Crossfire_Object *whoptr, void *closure);
138 static PyObject *Object_GetNoSave(Crossfire_Object *whoptr, void *closure);
139 static PyObject *Object_GetExists(Crossfire_Object *whoptr, void *closure);
140 static PyObject *Object_GetEnv(Crossfire_Object *whoptr, void *closure);
141 static PyObject *Object_GetMoveType(Crossfire_Object *whoptr, void *closure);
142 static PyObject *Object_GetMoveBlock(Crossfire_Object *whoptr, void *closure);
143 static PyObject *Object_GetMoveAllow(Crossfire_Object *whoptr, void *closure);
144 static PyObject *Object_GetMoveOn(Crossfire_Object *whoptr, void *closure);
145 static PyObject *Object_GetMoveOff(Crossfire_Object *whoptr, void *closure);
146 static PyObject *Object_GetMoveSlow(Crossfire_Object *whoptr, void *closure);
147 static PyObject *Object_GetMoveSlowPenalty(Crossfire_Object *whoptr, void *closure);
148 static PyObject *Object_GetOwner(Crossfire_Object *whoptr, void *closure);
149 static PyObject *Object_GetEnemy(Crossfire_Object *whoptr, void *closure);
150 static PyObject *Object_GetCount(Crossfire_Object *whoptr, void *closure);
151 static PyObject *Object_GetGodGiven(Crossfire_Object *whoptr, void *closure);
152 static PyObject *Object_GetIsPet(Crossfire_Object *whoptr, void *closure);
153 static PyObject *Object_GetAttackMovement(Crossfire_Object *whoptr, void *closure);
154 static PyObject *Object_GetDuration(Crossfire_Object *whoptr, void *closure);
155 static PyObject *Object_GetGlowRadius(Crossfire_Object *whoptr, void *closure);
156 static PyObject *Object_GetAnimated(Crossfire_Object *whoptr, void *closure);
157 static PyObject *Object_GetNoDamage(Crossfire_Object *whoptr, void *closure);
158 static PyObject *Object_GetRandomMovement(Crossfire_Object *whoptr, void *closure);
159 
160 static int Object_SetMessage(Crossfire_Object *whoptr, PyObject *value, void *closure);
161 static int Object_SetExp(Crossfire_Object *whoptr, PyObject *value, void *closure);
162 static int Object_SetName(Crossfire_Object *whoptr, PyObject *value, void *closure);
163 static int Object_SetNamePl(Crossfire_Object *whoptr, PyObject *value, void *closure);
164 static int Object_SetTitle(Crossfire_Object *whoptr, PyObject *value, void *closure);
165 static int Object_SetRace(Crossfire_Object *whoptr, PyObject *value, void *closure);
166 static int Object_SetMap(Crossfire_Object *whoptr, PyObject *value, void *closure);
167 static int Object_SetSlaying(Crossfire_Object *whoptr, PyObject *value, void *closure);
168 static int Object_SetSkill(Crossfire_Object *whoptr, PyObject *value, void *closure);
169 static int Object_SetCursed(Crossfire_Object *whoptr, PyObject *value, void *closure);
170 static int Object_SetDamned(Crossfire_Object *whoptr, PyObject *value, void *closure);
171 static int Object_SetApplied(Crossfire_Object *whoptr, PyObject *value, void *closure);
172 static int Object_SetStr(Crossfire_Object *whoptr, PyObject *value, void *closure);
173 static int Object_SetDex(Crossfire_Object *whoptr, PyObject *value, void *closure);
174 static int Object_SetCon(Crossfire_Object *whoptr, PyObject *value, void *closure);
175 static int Object_SetInt(Crossfire_Object *whoptr, PyObject *value, void *closure);
176 static int Object_SetPow(Crossfire_Object *whoptr, PyObject *value, void *closure);
177 static int Object_SetWis(Crossfire_Object *whoptr, PyObject *value, void *closure);
178 static int Object_SetCha(Crossfire_Object *whoptr, PyObject *value, void *closure);
179 static int Object_SetHP(Crossfire_Object *whoptr, PyObject *value, void *closure);
180 static int Object_SetMaxHP(Crossfire_Object *whoptr, PyObject *value, void *closure);
181 static int Object_SetSP(Crossfire_Object *whoptr, PyObject *value, void *closure);
182 static int Object_SetMaxSP(Crossfire_Object *whoptr, PyObject *value, void *closure);
183 static int Object_SetGrace(Crossfire_Object *whoptr, PyObject *value, void *closure);
184 static int Object_SetMaxGrace(Crossfire_Object *whoptr, PyObject *value, void *closure);
185 static int Object_SetDam(Crossfire_Object *whoptr, PyObject *value, void *closure);
186 static int Object_SetFood(Crossfire_Object *whoptr, PyObject *value, void *closure);
187 static int Object_SetAC(Crossfire_Object *whoptr, PyObject *value, void *closure);
188 static int Object_SetWC(Crossfire_Object *whoptr, PyObject *value, void *closure);
189 static int Object_SetWeight(Crossfire_Object *whoptr, PyObject *value, void *closure);
190 static int Object_SetWeightLimit(Crossfire_Object *whoptr, PyObject *value, void *closure);
191 static int Object_SetDirection(Crossfire_Object *whoptr, PyObject *value, void *closure);
192 static int Object_SetFacing(Crossfire_Object *whoptr, PyObject *value, void *closure);
193 static int Object_SetGod(Crossfire_Object *whoptr, PyObject *value, void *closure);
194 static int Object_SetSpeed(Crossfire_Object *whoptr, PyObject *value, void *closure);
195 static int Object_SetSpeedLeft(Crossfire_Object *whoptr, PyObject *value, void *closure);
196 static int Object_SetQuantity(Crossfire_Object *whoptr, PyObject *value, void *closure);
197 static int Object_SetLastSP(Crossfire_Object *whoptr, PyObject *value, void *closure);
198 static int Object_SetLastGrace(Crossfire_Object *whoptr, PyObject *value, void *closure);
199 static int Object_SetLastEat(Crossfire_Object *whoptr, PyObject *value, void *closure);
200 static int Object_SetAttackType(Crossfire_Object *whoptr, PyObject *value, void *closure);
201 static int Object_SetIdentified(Crossfire_Object *whoptr, PyObject *value, void *closure);
202 static int Object_SetUnaggressive(Crossfire_Object *whoptr, PyObject *value, void *closure);
203 static int Object_SetPickable(Crossfire_Object *whoptr, PyObject *value, void *closure);
204 static int Object_SetInvisible(Crossfire_Object *whoptr, PyObject *value, void *closure);
205 static int Object_SetUnpaid(Crossfire_Object *whoptr, PyObject *value, void *closure);
206 static int Object_SetFriendly(Crossfire_Object *whoptr, PyObject *value, void *closure);
207 static int Object_SetCanSeeInvisible(Crossfire_Object *whoptr, PyObject *value, void *closure);
208 static int Object_SetRollable(Crossfire_Object *whoptr, PyObject *value, void *closure);
209 static int Object_SetTurnable(Crossfire_Object *whoptr, PyObject *value, void *closure);
210 static int Object_SetUsedUp(Crossfire_Object *whoptr, PyObject *value, void *closure);
211 static int Object_SetBlind(Crossfire_Object *whoptr, PyObject *value, void *closure);
212 static int Object_SetKnownCursed(Crossfire_Object *whoptr, PyObject *value, void *closure);
213 static int Object_SetStealthy(Crossfire_Object *whoptr, PyObject *value, void *closure);
214 static int Object_SetConfused(Crossfire_Object *whoptr, PyObject *value, void *closure);
215 static int Object_SetSleeping(Crossfire_Object *whoptr, PyObject *value, void *closure);
216 static int Object_SetLifesaver(Crossfire_Object *whoptr, PyObject *value, void *closure);
217 static int Object_SetHasXRays(Crossfire_Object *whoptr, PyObject *value, void *closure);
218 static int Object_SetCanSeeInDark(Crossfire_Object *whoptr, PyObject *value, void *closure);
219 static int Object_SetKnownMagical(Crossfire_Object *whoptr, PyObject *value, void *closure);
220 static int Object_SetReflectSpells(Crossfire_Object *whoptr, PyObject *value, void *closure);
221 static int Object_SetReflectMissiles(Crossfire_Object *whoptr, PyObject *value, void *closure);
222 static int Object_SetUnique(Crossfire_Object *whoptr, PyObject *value, void *closure);
223 static int Object_SetRunAway(Crossfire_Object *whoptr, PyObject *value, void *closure);
224 static int Object_SetScared(Crossfire_Object *whoptr, PyObject *value, void *closure);
225 static int Object_SetUndead(Crossfire_Object *whoptr, PyObject *value, void *closure);
226 static int Object_SetBlocksView(Crossfire_Object *whoptr, PyObject *value, void *closure);
227 static int Object_SetHitBack(Crossfire_Object *whoptr, PyObject *value, void *closure);
228 static int Object_SetStandStill(Crossfire_Object *whoptr, PyObject *value, void *closure);
229 static int Object_SetOnlyAttack(Crossfire_Object *whoptr, PyObject *value, void *closure);
230 static int Object_SetMakeInvisible(Crossfire_Object *whoptr, PyObject *value, void *closure);
231 static int Object_SetValue(Crossfire_Object *whoptr, PyObject *value, void *closure);
232 static int Object_SetFace(Crossfire_Object *whoptr, PyObject *value, void *closure);
233 static int Object_SetAnim(Crossfire_Object *whoptr, PyObject *value, void *closure);
234 static int Object_SetAnimSpeed(Crossfire_Object *whoptr, PyObject *value, void *closure);
235 static int Object_SetNoSave(Crossfire_Object *whoptr, PyObject *value, void *closure);
236 static int Object_SetOwner(Crossfire_Object *whoptr, PyObject *value, void *closure);
237 static int Object_SetEnemy(Crossfire_Object *whoptr, PyObject *value, void *closure);
238 static int Object_SetGodGiven(Crossfire_Object *whoptr, PyObject *value, void *closure);
239 static int Object_SetIsPet(Crossfire_Object *whoptr, PyObject *value, void *closure);
240 static int Object_SetAttackMovement(Crossfire_Object *whoptr, PyObject *value, void *closure);
241 static int Object_SetDuration(Crossfire_Object *whoptr, PyObject *value, void *closure);
242 static int Object_SetGlowRadius(Crossfire_Object *whoptr, PyObject *value, void *closure);
243 static int Object_SetAnimated(Crossfire_Object *whoptr, PyObject *value, void *closure);
244 static int Object_SetNoDamage(Crossfire_Object *whoptr, PyObject *value, void *closure);
245 static int Object_SetRandomMovement(Crossfire_Object *whoptr, PyObject *value, void *closure);
246 
247 static PyObject *Crossfire_Object_Remove(Crossfire_Object *who, PyObject *args);
248 static PyObject *Crossfire_Object_Apply(Crossfire_Object *who, PyObject *args);
249 static PyObject *Crossfire_Object_Drop(Crossfire_Object *who, PyObject *args);
250 static PyObject *Crossfire_Object_Fix(Crossfire_Object *who, PyObject *args);
251 static PyObject *Crossfire_Object_Say(Crossfire_Object *who, PyObject *args);
252 static PyObject *Crossfire_Object_Pickup(Crossfire_Object *who, PyObject *args);
253 static PyObject *Crossfire_Object_Take(Crossfire_Object *who, PyObject *args);
254 static PyObject *Crossfire_Object_Teleport(Crossfire_Object *who, PyObject *args);
255 static PyObject *Crossfire_Object_Reposition(Crossfire_Object *who, PyObject *args);
256 
257 static PyObject *Crossfire_Object_QueryName(Crossfire_Object *who, PyObject *args);
258 static PyObject *Crossfire_Object_GetResist(Crossfire_Object *who, PyObject *args);
259 static PyObject *Crossfire_Object_SetResist(Crossfire_Object *who, PyObject *args);
260 static PyObject *Crossfire_Object_ActivateRune(Crossfire_Object *who, PyObject *args);
261 static PyObject *Crossfire_Object_CheckTrigger(Crossfire_Object *who, PyObject *args);
262 static PyObject *Crossfire_Object_QueryCost(Crossfire_Object *who, PyObject *args);
263 static PyObject *Crossfire_Object_Cast(Crossfire_Object *who, PyObject *args);
264 static PyObject *Crossfire_Object_LearnSpell(Crossfire_Object *who, PyObject *args);
265 static PyObject *Crossfire_Object_ForgetSpell(Crossfire_Object *who, PyObject *args);
266 static PyObject *Crossfire_Object_KnowSpell(Crossfire_Object *who, PyObject *args);
267 static PyObject *Crossfire_Object_CastAbility(Crossfire_Object *who, PyObject *args);
268 static PyObject *Crossfire_Object_PayAmount(Crossfire_Object *who, PyObject *args);
269 static PyObject *Crossfire_Object_Pay(Crossfire_Object *who, PyObject *args);
270 static PyObject *Crossfire_Object_CheckInventory(Crossfire_Object *who, PyObject *args);
271 static PyObject *Crossfire_Object_CheckArchInventory(Crossfire_Object *who, PyObject *args);
272 static PyObject *Crossfire_Object_GetOutOfMap(Crossfire_Object *whoptr, PyObject *args);
273 static PyObject *Crossfire_Object_CreateInside(Crossfire_Object *who, PyObject *args);
274 static PyObject *Crossfire_Object_InsertInto(Crossfire_Object *who, PyObject *args);
275 static PyObject *Crossfire_Object_ReadKey(Crossfire_Object *who, PyObject *args);
276 static PyObject *Crossfire_Object_WriteKey(Crossfire_Object *who, PyObject *args);
277 static PyObject *Crossfire_Object_CreateTimer(Crossfire_Object *who, PyObject *args);
278 static PyObject *Crossfire_Object_AddExp(Crossfire_Object *who, PyObject *args);
279 static PyObject *Crossfire_Object_Move(Crossfire_Object *who, PyObject *args);
280 static PyObject *Crossfire_Object_ChangeAbil(Crossfire_Object *who, PyObject *args);
281 static PyObject *Crossfire_Object_Event(Crossfire_Object *who, PyObject *args);
282 
284 
285 static PyObject *Crossfire_Object_Long(PyObject *obj);
286 #ifndef IS_PY3K
287 static PyObject *Crossfire_Object_Int(PyObject *obj);
288 #endif
289 static PyObject *Crossfire_Object_new(PyTypeObject *type, PyObject *args, PyObject *kwds);
290 
291 /* Python binding */
292 static PyGetSetDef Object_getseters[] = {
293  { "Name", (getter)Object_GetName, (setter)Object_SetName, NULL, NULL },
294  { "NamePl", (getter)Object_GetNamePl, (setter)Object_SetNamePl, NULL, NULL },
295  { "Title", (getter)Object_GetTitle, (setter)Object_SetTitle, NULL, NULL },
296  { "Race", (getter)Object_GetRace, (setter)Object_SetRace, NULL, NULL },
297  { "Skill", (getter)Object_GetSkill, (setter)Object_SetSkill, NULL, NULL },
298  { "Map", (getter)Object_GetMap, (setter)Object_SetMap, NULL, NULL },
299  { "Cha", (getter)Object_GetCha, (setter)Object_SetCha, NULL, NULL },
300  { "Con", (getter)Object_GetCon, (setter)Object_SetCon, NULL, NULL },
301  { "Dex", (getter)Object_GetDex, (setter)Object_SetDex, NULL, NULL },
302  { "Int", (getter)Object_GetInt, (setter)Object_SetInt, NULL, NULL },
303  { "Pow", (getter)Object_GetPow, (setter)Object_SetPow, NULL, NULL },
304  { "Str", (getter)Object_GetStr, (setter)Object_SetStr, NULL, NULL },
305  { "Wis", (getter)Object_GetWis, (setter)Object_SetWis, NULL, NULL },
306  { "HP", (getter)Object_GetHP, (setter)Object_SetHP, NULL, NULL },
307  { "MaxHP", (getter)Object_GetMaxHP, (setter)Object_SetMaxHP, NULL, NULL },
308  { "SP", (getter)Object_GetSP, (setter)Object_SetSP, NULL, NULL },
309  { "MaxSP", (getter)Object_GetMaxSP, (setter)Object_SetMaxSP, NULL, NULL },
310  { "Grace", (getter)Object_GetGrace, (setter)Object_SetGrace, NULL, NULL },
311  { "MaxGrace", (getter)Object_GetMaxGrace, (setter)Object_SetMaxGrace, NULL, NULL },
312  { "Food", (getter)Object_GetFood, (setter)Object_SetFood, NULL, NULL },
313  { "AC", (getter)Object_GetAC, (setter)Object_SetAC, NULL, NULL },
314  { "WC", (getter)Object_GetWC, (setter)Object_SetWC, NULL, NULL },
315  { "Dam", (getter)Object_GetDam, (setter)Object_SetDam, NULL, NULL },
316  { "Luck", (getter)Object_GetLuck, NULL, NULL, NULL },
317  { "Exp", (getter)Object_GetExp, (setter)Object_SetExp, NULL, NULL },
318  { "ExpMul", (getter)Object_GetExpMul, NULL, NULL, NULL },
319  { "PermExp", (getter)Object_GetPermExp, NULL, NULL, NULL },
320  { "Message", (getter)Object_GetMessage, (setter)Object_SetMessage, NULL, NULL },
321  { "Slaying", (getter)Object_GetSlaying, (setter)Object_SetSlaying, NULL, NULL },
322  { "Cursed", (getter)Object_GetCursed, (setter)Object_SetCursed, NULL, NULL },
323  { "Damned", (getter)Object_GetDamned, (setter)Object_SetDamned, NULL, NULL },
324  { "Weight", (getter)Object_GetWeight, (setter)Object_SetWeight, NULL, NULL },
325  { "WeightLimit", (getter)Object_GetWeightLimit, (setter)Object_SetWeightLimit, NULL, NULL },
326  { "Above", (getter)Object_GetAbove, NULL, NULL, NULL },
327  { "Below", (getter)Object_GetBelow, NULL, NULL, NULL },
328  { "Inventory", (getter)Object_GetInventory, NULL, NULL, NULL },
329  { "X", (getter)Object_GetX, NULL, NULL, NULL },
330  { "Y", (getter)Object_GetY, NULL, NULL, NULL },
331  { "Direction", (getter)Object_GetDirection, (setter)Object_SetDirection, NULL, NULL },
332  { "Facing", (getter)Object_GetFacing, (setter)Object_SetFacing, NULL, NULL },
333  { "Unaggressive", (getter)Object_GetUnaggressive, (setter)Object_SetUnaggressive, NULL, NULL },
334  { "God", (getter)Object_GetGod, (setter)Object_SetGod, NULL, NULL },
335  { "Pickable", (getter)Object_GetPickable, (setter)Object_SetPickable, NULL, NULL },
336  { "Quantity", (getter)Object_GetQuantity, (setter)Object_SetQuantity, NULL, NULL },
337  { "Invisible", (getter)Object_GetInvisible, (setter)Object_SetInvisible, NULL, NULL },
338  { "Speed", (getter)Object_GetSpeed, (setter)Object_SetSpeed, NULL, NULL },
339  { "SpeedLeft", (getter)Object_GetSpeedLeft, (setter)Object_SetSpeedLeft, NULL, NULL },
340  { "LastSP", (getter)Object_GetLastSP, (setter)Object_SetLastSP, NULL, NULL },
341  { "LastGrace", (getter)Object_GetLastGrace, (setter)Object_SetLastGrace, NULL, NULL },
342  { "LastEat", (getter)Object_GetLastEat, (setter)Object_SetLastEat, NULL, NULL },
343  { "Level", (getter)Object_GetLevel, NULL, NULL, NULL },
344  { "Face", (getter)Object_GetFace, (setter)Object_SetFace, NULL, NULL },
345  { "Anim", (getter)Object_GetAnim, (setter)Object_SetAnim, NULL, NULL },
346  { "AnimSpeed", (getter)Object_GetAnimSpeed, (setter)Object_SetAnimSpeed, NULL, NULL },
347  { "AttackType", (getter)Object_GetAttackType, (setter)Object_SetAttackType, NULL, NULL },
348  { "BeenApplied", (getter)Object_GetBeenApplied, NULL, NULL, NULL },
349  { "Identified", (getter)Object_GetIdentified, (setter)Object_SetIdentified, NULL, NULL },
350  { "Alive", (getter)Object_GetAlive, NULL, NULL, NULL },
351  { "DungeonMaster", (getter)Object_GetDM, NULL, NULL, NULL },
352  { "WasDungeonMaster", (getter)Object_GetWasDM, NULL, NULL, NULL },
353  { "Applied", (getter)Object_GetApplied, (setter)Object_SetApplied, NULL, NULL },
354  { "Unpaid", (getter)Object_GetUnpaid, (setter)Object_SetUnpaid, NULL, NULL },
355  { "Monster", (getter)Object_GetMonster, NULL, NULL, NULL },
356  { "Friendly", (getter)Object_GetFriendly, (setter)Object_SetFriendly, NULL, NULL },
357  { "Generator", (getter)Object_GetGenerator, NULL, NULL, NULL },
358  { "Thrown", (getter)Object_GetThrown, NULL, NULL, NULL },
359  { "CanSeeInvisible", (getter)Object_GetCanSeeInvisible, (setter)Object_SetCanSeeInvisible, NULL, NULL },
360  { "Rollable", (getter)Object_GetRollable, (setter)Object_SetRollable, NULL, NULL },
361  { "Turnable", (getter)Object_GetTurnable, (setter)Object_SetTurnable, NULL, NULL },
362  { "UsedUp", (getter)Object_GetUsedUp, (setter)Object_SetUsedUp, NULL, NULL },
363  { "Splitting", (getter)Object_GetSplitting, NULL, NULL, NULL },
364  { "Blind", (getter)Object_GetBlind, (setter)Object_SetBlind, NULL, NULL },
365  { "CanUseHorn", (getter)Object_GetCanUseHorn, NULL, NULL, NULL },
366  { "CanUseRod", (getter)Object_GetCanUseRod, NULL, NULL, NULL },
367  { "CanUseSkill", (getter)Object_GetCanUseSkill, NULL, NULL, NULL },
368  { "KnownCursed", (getter)Object_GetKnownCursed, (setter)Object_SetKnownCursed, NULL, NULL },
369  { "Stealthy", (getter)Object_GetStealthy, (setter)Object_SetStealthy, NULL, NULL },
370  { "Confused", (getter)Object_GetConfused, (setter)Object_SetConfused, NULL, NULL },
371  { "Sleeping", (getter)Object_GetSleeping, (setter)Object_SetSleeping, NULL, NULL },
372  { "Lifesaver", (getter)Object_GetLifesaver, (setter)Object_SetLifesaver, NULL, NULL },
373  { "Floor", (getter)Object_GetFloor, NULL, NULL, NULL },
374  { "HasXRays", (getter)Object_GetHasXRays, (setter)Object_SetHasXRays, NULL, NULL },
375  { "CanUseRing", (getter)Object_GetCanUseRing, NULL, NULL, NULL },
376  { "CanUseBow", (getter)Object_GetCanUseBow, NULL, NULL, NULL },
377  { "CanUseWand", (getter)Object_GetCanUseWand, NULL, NULL, NULL },
378  { "CanSeeInDark", (getter)Object_GetCanSeeInDark, (setter)Object_SetCanSeeInDark, NULL, NULL },
379  { "KnownMagical", (getter)Object_GetKnownMagical, (setter)Object_SetKnownMagical, NULL, NULL },
380  { "CanUseWeapon", (getter)Object_GetCanUseWeapon, NULL, NULL, NULL },
381  { "CanUseArmour", (getter)Object_GetCanUseArmour, NULL, NULL, NULL },
382  { "CanUseScroll", (getter)Object_GetCanUseScroll, NULL, NULL, NULL },
383  { "CanCastSpell", (getter)Object_GetCanCastSpell, NULL, NULL, NULL },
384  { "ReflectSpells", (getter)Object_GetReflectSpells, (setter)Object_SetReflectSpells, NULL, NULL },
385  { "ReflectMissiles", (getter)Object_GetReflectMissiles, (setter)Object_SetReflectMissiles, NULL, NULL },
386  { "Unique", (getter)Object_GetUnique, (setter)Object_SetUnique, NULL, NULL },
387  { "RunAway", (getter)Object_GetRunAway, (setter)Object_SetRunAway, NULL, NULL },
388  { "Scared", (getter)Object_GetScared, (setter)Object_SetScared, NULL, NULL },
389  { "Undead", (getter)Object_GetUndead, (setter)Object_SetUndead, NULL, NULL },
390  { "BlocksView", (getter)Object_GetBlocksView, (setter)Object_SetBlocksView, NULL, NULL },
391  { "HitBack", (getter)Object_GetHitBack, (setter)Object_SetHitBack, NULL, NULL },
392  { "StandStill", (getter)Object_GetStandStill, (setter)Object_SetStandStill, NULL, NULL },
393  { "OnlyAttack", (getter)Object_GetOnlyAttack, (setter)Object_SetOnlyAttack, NULL, NULL },
394  { "MakeInvisible", (getter)Object_GetMakeInvisible, (setter)Object_SetMakeInvisible, NULL, NULL },
395  { "Money", (getter)Object_GetMoney, NULL, NULL, NULL },
396  { "Type", (getter)Object_GetType, NULL, NULL, NULL },
397  { "Subtype", (getter)Object_GetSubtype, NULL, NULL, NULL },
398  { "Value", (getter)Object_GetValue, (setter)Object_SetValue, NULL, NULL },
399  { "ArchName", (getter)Object_GetArchName, NULL, NULL, NULL },
400  { "Archetype", (getter)Object_GetArchetype, NULL, NULL, NULL },
401  { "Exists", (getter)Object_GetExists, NULL, NULL, NULL },
402  { "NoSave", (getter)Object_GetNoSave, (setter)Object_SetNoSave, NULL, NULL },
403  { "Env", (getter)Object_GetEnv, NULL, NULL, NULL },
404  { "MoveType", (getter)Object_GetMoveType, NULL, NULL, NULL },
405  { "MoveBlock", (getter)Object_GetMoveBlock, NULL, NULL, NULL },
406  { "MoveAllow", (getter)Object_GetMoveAllow, NULL, NULL, NULL },
407  { "MoveOn", (getter)Object_GetMoveOn, NULL, NULL, NULL },
408  { "MoveOff", (getter)Object_GetMoveOff, NULL, NULL, NULL },
409  { "MoveSlow", (getter)Object_GetMoveSlow, NULL, NULL, NULL },
410  { "MoveSlowPenalty", (getter)Object_GetMoveSlowPenalty, NULL, NULL, NULL },
411  { "Owner", (getter)Object_GetOwner, (setter)Object_SetOwner, NULL, NULL },
412  { "Enemy", (getter)Object_GetEnemy, (setter)Object_SetEnemy, NULL, NULL },
413  { "Count", (getter)Object_GetCount, NULL, NULL, NULL },
414  { "GodGiven", (getter)Object_GetGodGiven, (setter)Object_SetGodGiven, NULL, NULL },
415  { "IsPet", (getter)Object_GetIsPet, (setter)Object_SetIsPet, NULL, NULL },
416  { "AttackMovement", (getter)Object_GetAttackMovement, (setter)Object_SetAttackMovement, NULL, NULL },
417  { "Duration", (getter)Object_GetDuration, (setter)Object_SetDuration, NULL, NULL },
418  { "GlowRadius", (getter)Object_GetGlowRadius, (setter)Object_SetGlowRadius, NULL, NULL },
419  { "Animated", (getter)Object_GetAnimated, (setter)Object_SetAnimated, NULL, NULL },
420  { "NoDamage", (getter)Object_GetNoDamage, (setter)Object_SetNoDamage, NULL, NULL },
421  { "RandomMovement", (getter)Object_GetRandomMovement, (setter)Object_SetRandomMovement, NULL, NULL },
422  { NULL, NULL, NULL, NULL, NULL }
423 };
424 
425 static PyMethodDef ObjectMethods[] = {
426  { "Remove", (PyCFunction)Crossfire_Object_Remove, METH_NOARGS, NULL },
427  { "Apply", (PyCFunction)Crossfire_Object_Apply, METH_VARARGS, NULL },
428  { "Drop", (PyCFunction)Crossfire_Object_Drop, METH_O, NULL },
429  { "Fix", (PyCFunction)Crossfire_Object_Fix, METH_NOARGS, NULL },
430  { "Say", (PyCFunction)Crossfire_Object_Say, METH_VARARGS, NULL },
431  { "Speak", (PyCFunction)Crossfire_Object_Say, METH_VARARGS, NULL },
432  { "Take", (PyCFunction)Crossfire_Object_Take, METH_O, NULL },
433  { "Teleport", (PyCFunction)Crossfire_Object_Teleport, METH_VARARGS, NULL },
434  { "Reposition", (PyCFunction)Crossfire_Object_Reposition, METH_VARARGS, NULL },
435  { "QueryName", (PyCFunction)Crossfire_Object_QueryName, METH_NOARGS, NULL },
436  { "GetResist", (PyCFunction)Crossfire_Object_GetResist, METH_VARARGS, NULL },
437  { "SetResist", (PyCFunction)Crossfire_Object_SetResist, METH_VARARGS, NULL },
438  { "ActivateRune", (PyCFunction)Crossfire_Object_ActivateRune, METH_O, NULL },
439  { "CheckTrigger", (PyCFunction)Crossfire_Object_CheckTrigger, METH_O, NULL },
440  { "QueryCost", (PyCFunction)Crossfire_Object_QueryCost, METH_VARARGS, NULL },
441  { "Cast", (PyCFunction)Crossfire_Object_Cast, METH_VARARGS, NULL },
442  { "LearnSpell", (PyCFunction)Crossfire_Object_LearnSpell, METH_O, NULL },
443  { "ForgetSpell", (PyCFunction)Crossfire_Object_ForgetSpell, METH_O, NULL },
444  { "KnowSpell", (PyCFunction)Crossfire_Object_KnowSpell, METH_VARARGS, NULL },
445  { "CastAbility", (PyCFunction)Crossfire_Object_CastAbility, METH_VARARGS, NULL },
446  { "PayAmount", (PyCFunction)Crossfire_Object_PayAmount, METH_VARARGS, NULL },
447  { "Pay", (PyCFunction)Crossfire_Object_Pay, METH_O, NULL },
448  { "CheckInventory", (PyCFunction)Crossfire_Object_CheckInventory, METH_VARARGS, NULL },
449  { "CheckArchInventory", (PyCFunction)Crossfire_Object_CheckArchInventory, METH_VARARGS, NULL },
450  { "OutOfMap", (PyCFunction)Crossfire_Object_GetOutOfMap, METH_VARARGS, NULL },
451  { "CreateObject", (PyCFunction)Crossfire_Object_CreateInside, METH_VARARGS, NULL },
452  { "InsertInto", (PyCFunction)Crossfire_Object_InsertInto, METH_O, NULL },
453  { "ReadKey", (PyCFunction)Crossfire_Object_ReadKey, METH_VARARGS, NULL },
454  { "WriteKey", (PyCFunction)Crossfire_Object_WriteKey, METH_VARARGS, NULL },
455  { "CreateTimer", (PyCFunction)Crossfire_Object_CreateTimer, METH_VARARGS, NULL },
456  { "AddExp", (PyCFunction)Crossfire_Object_AddExp, METH_VARARGS, NULL },
457  { "Move", (PyCFunction)Crossfire_Object_Move, METH_VARARGS, NULL },
458  { "ChangeAbil", (PyCFunction)Crossfire_Object_ChangeAbil, METH_O, NULL },
459  { "Event", (PyCFunction)Crossfire_Object_Event, METH_VARARGS, NULL },
460  { NULL, NULL, 0, NULL }
461 };
462 
463 static PyNumberMethods ObjectConvert = {
464  NULL, /* binaryfunc nb_add; */ /* __add__ */
465  NULL, /* binaryfunc nb_subtract; */ /* __sub__ */
466  NULL, /* binaryfunc nb_multiply; */ /* __mul__ */
467 #ifndef IS_PY3K
468  NULL, /* binaryfunc nb_divide; */ /* __div__ */
469 #endif
470  NULL, /* binaryfunc nb_remainder; */ /* __mod__ */
471  NULL, /* binaryfunc nb_divmod; */ /* __divmod__ */
472  NULL, /* ternaryfunc nb_power; */ /* __pow__ */
473  NULL, /* unaryfunc nb_negative; */ /* __neg__ */
474  NULL, /* unaryfunc nb_positive; */ /* __pos__ */
475  NULL, /* unaryfunc nb_absolute; */ /* __abs__ */
476 #ifdef IS_PY3K
477  NULL, /* inquiry nb_bool; */ /* __bool__ */
478 #else
479  NULL, /* inquiry nb_nonzero; */ /* __nonzero__ */
480 #endif
481  NULL, /* unaryfunc nb_invert; */ /* __invert__ */
482  NULL, /* binaryfunc nb_lshift; */ /* __lshift__ */
483  NULL, /* binaryfunc nb_rshift; */ /* __rshift__ */
484  NULL, /* binaryfunc nb_and; */ /* __and__ */
485  NULL, /* binaryfunc nb_xor; */ /* __xor__ */
486  NULL, /* binaryfunc nb_or; */ /* __or__ */
487 #ifndef IS_PY3K
488  NULL, /* coercion nb_coerce; */ /* __coerce__ */
489 #endif
490 #ifdef IS_PY3K
491  /* This is not a typo. For Py3k it should be Crossfire_Object_Long
492  * and NOT Crossfire_Object_Int.
493  */
494  Crossfire_Object_Long, /* unaryfunc nb_int; */ /* __int__ */
495  NULL, /* void *nb_reserved; */
496 #else
497  Crossfire_Object_Int, /* unaryfunc nb_int; */ /* __int__ */
498  Crossfire_Object_Long, /* unaryfunc nb_long; */ /* __long__ */
499 #endif
500  NULL, /* unaryfunc nb_float; */ /* __float__ */
501 #ifndef IS_PY3K
502  NULL, /* unaryfunc nb_oct; */ /* __oct__ */
503  NULL, /* unaryfunc nb_hex; */ /* __hex__ */
504 #endif
505  NULL, /* binaryfunc nb_inplace_add; */
506  NULL, /* binaryfunc nb_inplace_subtract; */
507  NULL, /* binaryfunc nb_inplace_multiply; */
508 #ifndef IS_PY3K
509  NULL, /* binaryfunc nb_inplace_divide; */
510 #endif
511  NULL, /* binaryfunc nb_inplace_remainder; */
512  NULL, /* ternaryfunc nb_inplace_power; */
513  NULL, /* binaryfunc nb_inplace_lshift; */
514  NULL, /* binaryfunc nb_inplace_rshift; */
515  NULL, /* binaryfunc nb_inplace_and; */
516  NULL, /* binaryfunc nb_inplace_xor; */
517  NULL, /* binaryfunc nb_inplace_or; */
518 
519  NULL, /* binaryfunc nb_floor_divide; */
520  NULL, /* binaryfunc nb_true_divide; */
521  NULL, /* binaryfunc nb_inplace_floor_divide; */
522  NULL, /* binaryfunc nb_inplace_true_divide; */
523 #if defined(IS_PY25) || defined(IS_PY3K)
524  NULL /* unaryfunc nb_index; */
525 #endif
526 };
527 
528 static void Crossfire_Object_dealloc(PyObject *obj);
529 
530 static PyObject *Crossfire_Object_new(PyTypeObject *type, PyObject *args, PyObject *kwds);
531 
532 /* Our actual Python ObjectType */
533 PyTypeObject Crossfire_ObjectType = {
534  PyObject_HEAD_INIT(NULL)
535 #ifndef IS_PY3K
536  0, /* ob_size*/
537 #endif
538  "Crossfire.Object", /* tp_name*/
539  sizeof(Crossfire_Object), /* tp_basicsize*/
540  0, /* tp_itemsize*/
541  Crossfire_Object_dealloc, /* tp_dealloc*/
542  NULL, /* tp_print*/
543  NULL, /* tp_getattr*/
544  NULL, /* tp_setattr*/
545  (cmpfunc)Crossfire_Object_InternalCompare, /* tp_compare*/
546  NULL, /* tp_repr*/
547  &ObjectConvert, /* tp_as_number*/
548  NULL, /* tp_as_sequence*/
549  NULL, /* tp_as_mapping*/
550  PyObject_HashNotImplemented, /* tp_hash */
551  NULL, /* tp_call*/
552  NULL, /* tp_str*/
553  PyObject_GenericGetAttr, /* tp_getattro*/
554  PyObject_GenericSetAttr, /* tp_setattro*/
555  NULL, /* tp_as_buffer*/
556  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE, /* tp_flags*/
557  "Crossfire objects", /* tp_doc */
558  NULL, /* tp_traverse */
559  NULL, /* tp_clear */
560  NULL, /* tp_richcompare */
561  0, /* tp_weaklistoffset */
562  NULL, /* tp_iter */
563  NULL, /* tp_iternext */
564  ObjectMethods, /* tp_methods */
565  NULL, /* tp_members */
566  Object_getseters, /* tp_getset */
567  NULL, /* tp_base */
568  NULL, /* tp_dict */
569  NULL, /* tp_descr_get */
570  NULL, /* tp_descr_set */
571  0, /* tp_dictoffset */
572  NULL, /* tp_init */
573  NULL, /* tp_alloc */
574  Crossfire_Object_new, /* tp_new */
575  NULL, /* tp_free */
576  NULL, /* tp_is_gc */
577  NULL, /* tp_bases */
578  NULL, /* tp_mro */
579  NULL, /* tp_cache */
580  NULL, /* tp_subclasses */
581  NULL, /* tp_weaklist */
582  NULL, /* tp_del */
583 };
584 
585 static PyObject *Player_GetTitle(Crossfire_Object *whoptr, void *closure);
586 static int Player_SetTitle(Crossfire_Object *whoptr, PyObject *value, void *closure);
587 static PyObject *Player_GetIP(Crossfire_Player *whoptr, void *closure);
588 static PyObject *Player_GetMarkedItem(Crossfire_Player *whoptr, void *closure);
589 static int Player_SetMarkedItem(Crossfire_Player *whoptr, PyObject *value, void *closure);
590 static PyObject *Crossfire_Player_Message(Crossfire_Player *who, PyObject *args);
591 static PyObject *Player_GetParty(Crossfire_Player *whoptr, void *closure);
592 static int Player_SetParty(Crossfire_Player *whoptr, PyObject *value, void *closure);
593 static PyObject *Crossfire_Player_CanPay(Crossfire_Player *who, PyObject *args);
594 static PyObject *Player_GetBedMap(Crossfire_Player *whoptr, void *closure);
595 static PyObject *Player_GetBedX(Crossfire_Player *whoptr, void *closure);
596 static PyObject *Player_GetBedY(Crossfire_Player *whoptr, void *closure);
597 static int Player_SetBedMap(Crossfire_Player *whoptr, PyObject *value, void *closure);
598 static int Player_SetBedX(Crossfire_Player *whoptr, PyObject *value, void *closure);
599 static int Player_SetBedY(Crossfire_Player *whoptr, PyObject *value, void *closure);
600 
601 static PyGetSetDef Player_getseters[] = {
602  { "Title", (getter)Player_GetTitle, (setter)Player_SetTitle, NULL, NULL },
603  { "IP", (getter)Player_GetIP, NULL, NULL, NULL },
604  { "MarkedItem", (getter)Player_GetMarkedItem, (setter)Player_SetMarkedItem, NULL, NULL },
605  { "Party", (getter)Player_GetParty, (setter)Player_SetParty, NULL, NULL },
606  { "BedMap", (getter)Player_GetBedMap, (setter)Player_SetBedMap, NULL, NULL },
607  { "BedX", (getter)Player_GetBedX, (setter)Player_SetBedX, NULL, NULL },
608  { "BedY", (getter)Player_GetBedY, (setter)Player_SetBedY, NULL, NULL },
609  { NULL, NULL, NULL, NULL, NULL }
610 };
611 
612 static PyMethodDef PlayerMethods[] = {
613  { "Message", (PyCFunction)Crossfire_Player_Message, METH_VARARGS, NULL },
614  { "Write", (PyCFunction)Crossfire_Player_Message, METH_VARARGS, NULL },
615  { "CanPay", (PyCFunction)Crossfire_Player_CanPay, METH_NOARGS, NULL },
616  { NULL, NULL, 0, NULL }
617 };
618 
619 static void Crossfire_Player_dealloc(PyObject *obj);
620 
621 static PyObject *Crossfire_Player_new(PyTypeObject *type, PyObject *args, PyObject *kwds);
622 
623 /* Our actual Python ObjectPlayerType */
624 PyTypeObject Crossfire_PlayerType = {
625  PyObject_HEAD_INIT(NULL)
626 #ifndef IS_PY3K
627  0, /* ob_size*/
628 #endif
629  "Crossfire.Player", /* tp_name*/
630  sizeof(Crossfire_Player), /* tp_basicsize*/
631  0, /* tp_itemsize*/
632  Crossfire_Player_dealloc, /* tp_dealloc*/
633  NULL, /* tp_print*/
634  NULL, /* tp_getattr*/
635  NULL, /* tp_setattr*/
636  NULL, /* tp_compare*/
637  NULL, /* tp_repr*/
638  NULL, /* tp_as_number*/
639  NULL, /* tp_as_sequence*/
640  NULL, /* tp_as_mapping*/
641  PyObject_HashNotImplemented, /* tp_hash */
642  NULL, /* tp_call*/
643  NULL, /* tp_str*/
644  PyObject_GenericGetAttr, /* tp_getattro*/
645  PyObject_GenericSetAttr, /* tp_setattro*/
646  NULL, /* tp_as_buffer*/
647  Py_TPFLAGS_DEFAULT, /* tp_flags*/
648  "Crossfire player", /* tp_doc */
649  NULL, /* tp_traverse */
650  NULL, /* tp_clear */
651  NULL, /* tp_richcompare */
652  0, /* tp_weaklistoffset */
653  NULL, /* tp_iter */
654  NULL, /* tp_iternext */
655  PlayerMethods, /* tp_methods */
656  NULL, /* tp_members */
657  Player_getseters, /* tp_getset */
658  &Crossfire_ObjectType, /* tp_base */
659  NULL, /* tp_dict */
660  NULL, /* tp_descr_get */
661  NULL, /* tp_descr_set */
662  0, /* tp_dictoffset */
663  NULL, /* tp_init */
664  NULL, /* tp_alloc */
665  Crossfire_Player_new, /* tp_new */
666  NULL, /* tp_free */
667  NULL, /* tp_is_gc */
668  NULL, /* tp_bases */
669  NULL, /* tp_mro */
670  NULL, /* tp_cache */
671  NULL, /* tp_subclasses */
672  NULL, /* tp_weaklist */
673  NULL, /* tp_del */
674 };
Definition: object.h:132
static PyObject * Object_GetInvisible(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetCursed(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetScared(Crossfire_Object *whoptr, void *closure)
static int Object_SetAnim(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Player_SetBedX(Crossfire_Player *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetAnimSpeed(Crossfire_Object *whoptr, void *closure)
PyTypeObject Crossfire_ObjectType
static PyObject * Crossfire_Object_Say(Crossfire_Object *who, PyObject *args)
static int Object_SetNoDamage(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetEnv(Crossfire_Object *whoptr, void *closure)
static int Object_SetName(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetMoveOff(Crossfire_Object *whoptr, void *closure)
static int Object_SetRunAway(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetHitBack(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetGrace(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetLevel(Crossfire_Object *whoptr, void *closure)
static int Object_SetConfused(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetFace(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetArchName(Crossfire_Object *whoptr, void *closure)
static int Object_SetSpeedLeft(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetUnique(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetName(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_ChangeAbil(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetLastSP(Crossfire_Object *whoptr, void *closure)
static int Object_SetPickable(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetArchetype(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetAC(Crossfire_Object *whoptr, void *closure)
static int Object_SetValue(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_Reposition(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetMoveBlock(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetHP(Crossfire_Object *whoptr, void *closure)
static int Object_SetIdentified(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetWeight(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetFacing(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetPow(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetBlind(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_CastAbility(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetDuration(Crossfire_Object *whoptr, void *closure)
static int Object_SetMaxSP(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Player_SetBedMap(Crossfire_Player *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetLifesaver(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_AddExp(Crossfire_Object *who, PyObject *args)
static int Object_SetGodGiven(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetDamned(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetOwner(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_Teleport(Crossfire_Object *who, PyObject *args)
static int Object_SetEnemy(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_InsertInto(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetValue(Crossfire_Object *whoptr, void *closure)
static int Object_SetOwner(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetLastEat(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetGenerator(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetSpeed(Crossfire_Object *whoptr, void *closure)
static int Object_SetGod(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetWasDM(Crossfire_Object *whoptr, void *closure)
static int Object_SetQuantity(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetWeightLimit(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_QueryCost(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetX(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetReflectMissiles(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetQuantity(Crossfire_Object *whoptr, void *closure)
static int Object_SetCursed(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetFriendly(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyNumberMethods ObjectConvert
static int Object_SetScared(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetInvisible(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetNamePl(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_ForgetSpell(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetLastGrace(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMoveSlowPenalty(Crossfire_Object *whoptr, void *closure)
static PyGetSetDef Object_getseters[]
static PyObject * Object_GetBlocksView(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetFace(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetCanUseSkill(Crossfire_Object *whoptr, void *closure)
static int Object_SetGrace(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetInventory(Crossfire_Object *whoptr, void *closure)
static int Object_SetInt(Crossfire_Object *whoptr, PyObject *value, void *closure)
static void Crossfire_Object_dealloc(PyObject *obj)
static int Object_SetLastSP(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetStandStill(Crossfire_Object *whoptr, void *closure)
static int Object_SetAC(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCanUseHorn(Crossfire_Object *whoptr, void *closure)
static int Object_SetCanSeeInDark(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetStr(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetNamePl(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetCanUseRing(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetCanUseWand(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_ReadKey(Crossfire_Object *who, PyObject *args)
static int Object_SetUndead(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetBelow(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_QueryName(Crossfire_Object *who, PyObject *args)
static PyObject * Crossfire_Object_Event(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetAlive(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetTitle(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetSleeping(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetSkill(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_Pickup(Crossfire_Object *who, PyObject *args)
static int Object_SetHitBack(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetApplied(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_Fix(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetAnim(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetFloor(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetAttackMovement(Crossfire_Object *whoptr, void *closure)
#define PyObject_HashNotImplemented
Definition: cfpython.h:73
static int Object_SetWC(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetFood(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetMaxGrace(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetConfused(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetInt(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetPermExp(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetDirection(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_LearnSpell(Crossfire_Object *who, PyObject *args)
static int Object_SetAttackType(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetSlaying(Crossfire_Object *whoptr, void *closure)
static int Object_SetTurnable(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetDex(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetOnlyAttack(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetSplitting(Crossfire_Object *whoptr, void *closure)
static int Object_SetLastGrace(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetIsPet(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_CreateTimer(Crossfire_Object *who, PyObject *args)
static int Object_SetLastEat(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetMessage(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyGetSetDef Player_getseters[]
static PyObject * Crossfire_Object_PayAmount(Crossfire_Object *who, PyObject *args)
static int Object_SetMap(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetDam(Crossfire_Object *whoptr, void *closure)
static int Object_SetUsedUp(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetDM(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetCha(Crossfire_Object *whoptr, void *closure)
static int Object_SetAnimSpeed(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCanUseArmour(Crossfire_Object *whoptr, void *closure)
static int Object_SetDuration(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_Cast(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetCanCastSpell(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetAttackType(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetRollable(Crossfire_Object *whoptr, void *closure)
static int Object_SetDam(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetSubtype(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_KnowSpell(Crossfire_Object *who, PyObject *args)
static PyObject * Crossfire_Object_CheckArchInventory(Crossfire_Object *who, PyObject *args)
static PyMethodDef PlayerMethods[]
static PyObject * Object_GetCanUseWeapon(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetDamned(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_CreateInside(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetWC(Crossfire_Object *whoptr, void *closure)
static int Object_SetGlowRadius(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetDex(Crossfire_Object *whoptr, void *closure)
static int Object_SetReflectSpells(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCount(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_CheckInventory(Crossfire_Object *who, PyObject *args)
static PyObject * Crossfire_Object_Long(PyObject *obj)
static int Object_SetCon(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetOnlyAttack(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetAbove(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetKnownCursed(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_GetOutOfMap(Crossfire_Object *whoptr, PyObject *args)
static PyObject * Object_GetMakeInvisible(Crossfire_Object *whoptr, void *closure)
static PyObject * Player_GetMarkedItem(Crossfire_Player *whoptr, void *closure)
static int Object_SetStandStill(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Player_GetBedX(Crossfire_Player *whoptr, void *closure)
static PyObject * Crossfire_Object_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
static PyMethodDef ObjectMethods[]
static PyObject * Object_GetThrown(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_Take(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetReflectSpells(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetGod(Crossfire_Object *whoptr, void *closure)
static int Object_SetExp(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetY(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetType(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_Pay(Crossfire_Object *who, PyObject *args)
static PyObject * Crossfire_Player_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
static PyObject * Crossfire_Object_ActivateRune(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetRace(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMaxHP(Crossfire_Object *whoptr, void *closure)
static int Object_SetSpeed(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Player_SetBedY(Crossfire_Player *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_SetResist(Crossfire_Object *who, PyObject *args)
static int Object_SetUnpaid(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetMakeInvisible(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetStealthy(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetTitle(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Player_GetBedMap(Crossfire_Player *whoptr, void *closure)
static PyObject * Object_GetWeight(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetNoDamage(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetGlowRadius(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetAnimated(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMoveType(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetUnaggressive(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetStealthy(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetBlind(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetExpMul(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_Drop(Crossfire_Object *who, PyObject *args)
static int Object_SetAnimated(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetSleeping(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_Apply(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetMessage(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetPow(Crossfire_Object *whoptr, void *closure)
static int Object_SetWis(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetIsPet(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Player_Message(Crossfire_Player *who, PyObject *args)
static void Crossfire_Player_dealloc(PyObject *obj)
static int Player_SetTitle(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetSP(Crossfire_Object *whoptr, void *closure)
static int Object_SetRandomMovement(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetRollable(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_GetResist(Crossfire_Object *who, PyObject *args)
static int Object_SetLifesaver(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetTurnable(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetUsedUp(Crossfire_Object *whoptr, void *closure)
static int Crossfire_Object_InternalCompare(Crossfire_Object *left, Crossfire_Object *right)
static int Object_SetHP(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetSkill(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Player_SetParty(Crossfire_Player *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCanSeeInDark(Crossfire_Object *whoptr, void *closure)
static int Object_SetCanSeeInvisible(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Player_GetParty(Crossfire_Player *whoptr, void *closure)
static PyObject * Player_GetBedY(Crossfire_Player *whoptr, void *closure)
static PyObject * Object_GetGodGiven(Crossfire_Object *whoptr, void *closure)
static int Object_SetSlaying(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetMoveSlow(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_WriteKey(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetFacing(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMaxSP(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMaxGrace(Crossfire_Object *whoptr, void *closure)
static int Object_SetUnaggressive(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCanUseRod(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetEnemy(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetCanUseScroll(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetFood(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetUndead(Crossfire_Object *whoptr, void *closure)
static int Object_SetBlocksView(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetKnownMagical(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCanSeeInvisible(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetRunAway(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMoveAllow(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMonster(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetKnownMagical(Crossfire_Object *whoptr, void *closure)
static int Object_SetHasXRays(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetMoney(Crossfire_Object *whoptr, void *closure)
static int Object_SetNoSave(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetCanUseBow(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetExists(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetLuck(Crossfire_Object *whoptr, void *closure)
static int Object_SetSP(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetNoSave(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetExp(Crossfire_Object *whoptr, void *closure)
static PyObject * Player_GetTitle(Crossfire_Object *whoptr, void *closure)
static int Object_SetWeightLimit(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetSpeedLeft(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetIdentified(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_CheckTrigger(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetRandomMovement(Crossfire_Object *whoptr, void *closure)
static int Object_SetKnownCursed(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetReflectMissiles(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetUnique(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetCha(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Object_SetRace(Crossfire_Object *whoptr, PyObject *value, void *closure)
static int Player_SetMarkedItem(Crossfire_Player *whoptr, PyObject *value, void *closure)
static int Object_SetDirection(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Player_CanPay(Crossfire_Player *who, PyObject *args)
static PyObject * Player_GetIP(Crossfire_Player *whoptr, void *closure)
static PyObject * Object_GetWis(Crossfire_Object *whoptr, void *closure)
static int Object_SetMaxHP(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetFriendly(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetHasXRays(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetUnpaid(Crossfire_Object *whoptr, void *closure)
static PyObject * Crossfire_Object_Int(PyObject *obj)
static PyObject * Crossfire_Object_Move(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetMoveOn(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetPickable(Crossfire_Object *whoptr, void *closure)
PyTypeObject Crossfire_PlayerType
static int Object_SetAttackMovement(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Object_GetBeenApplied(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetApplied(Crossfire_Object *whoptr, void *closure)
static int Object_SetStr(Crossfire_Object *whoptr, PyObject *value, void *closure)
static PyObject * Crossfire_Object_Remove(Crossfire_Object *who, PyObject *args)
static PyObject * Object_GetCon(Crossfire_Object *whoptr, void *closure)
static PyObject * Object_GetMap(Crossfire_Object *whoptr, void *closure)