ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/server/cfperl.xs
(Generate patch)

Comparing deliantra/server/server/cfperl.xs (file contents):
Revision 1.50 by root, Mon Sep 11 01:16:20 2006 UTC vs.
Revision 1.55 by root, Tue Sep 12 18:15:34 2006 UTC

201inline void sv_to (SV *sv, unsigned short &v) { v = SvIV (sv); } 201inline void sv_to (SV *sv, unsigned short &v) { v = SvIV (sv); }
202inline void sv_to (SV *sv, signed int &v) { v = SvIV (sv); } 202inline void sv_to (SV *sv, signed int &v) { v = SvIV (sv); }
203inline void sv_to (SV *sv, unsigned int &v) { v = SvUV (sv); } 203inline void sv_to (SV *sv, unsigned int &v) { v = SvUV (sv); }
204inline void sv_to (SV *sv, signed long &v) { v = SvIV (sv); } 204inline void sv_to (SV *sv, signed long &v) { v = SvIV (sv); }
205inline void sv_to (SV *sv, unsigned long &v) { v = SvUV (sv); } 205inline void sv_to (SV *sv, unsigned long &v) { v = SvUV (sv); }
206inline void sv_to (SV *sv, signed long long &v) { v = SvVAL64 (sv); } 206inline void sv_to (SV *sv, signed long long &v) { v = ( signed long long)SvVAL64 (sv); }
207inline void sv_to (SV *sv, unsigned long long &v) { v = SvVAL64 (sv); } 207inline void sv_to (SV *sv, unsigned long long &v) { v = (unsigned long long)SvVAL64 (sv); }
208inline void sv_to (SV *sv, float &v) { v = SvNV (sv); } 208inline void sv_to (SV *sv, float &v) { v = SvNV (sv); }
209inline void sv_to (SV *sv, double &v) { v = SvNV (sv); } 209inline void sv_to (SV *sv, double &v) { v = SvNV (sv); }
210inline void sv_to (SV *sv, player * &v) { v = (player *)SvPTR_ornull (sv, "cf::player"); } 210inline void sv_to (SV *sv, player * &v) { v = (player *)SvPTR_ornull (sv, "cf::player"); }
211inline void sv_to (SV *sv, object * &v) { v = (object *)SvPTR_ornull (sv, "cf::object"); } 211inline void sv_to (SV *sv, object * &v) { v = (object *)SvPTR_ornull (sv, "cf::object"); }
212inline void sv_to (SV *sv, archetype * &v) { v = (archetype *)SvPTR_ornull (sv, "cf::arch"); } 212inline void sv_to (SV *sv, archetype * &v) { v = (archetype *)SvPTR_ornull (sv, "cf::arch"); }
216inline void sv_to (SV *sv, living * &v) { v = (living *)SvPTR_ornull (sv, "cf::living"); } 216inline void sv_to (SV *sv, living * &v) { v = (living *)SvPTR_ornull (sv, "cf::living"); }
217 217
218inline void sv_to (SV *sv, New_Face * &v) { v = &new_faces[FindFace (SvPV_nolen (sv), 0)]; } //TODO 218inline void sv_to (SV *sv, New_Face * &v) { v = &new_faces[FindFace (SvPV_nolen (sv), 0)]; } //TODO
219inline void sv_to (SV *sv, treasurelist * &v) { v = find_treasurelist (SvPV_nolen (sv)); } // TODO 219inline void sv_to (SV *sv, treasurelist * &v) { v = find_treasurelist (SvPV_nolen (sv)); } // TODO
220 220
221template<class T>
222inline void sv_to (SV *sv, refptr<T> &v) { T *tmp; sv_to (sv, tmp); v = tmp; }
223
221template<int N> 224template<int N>
222inline void sv_to (SV *sv, char (&v)[N]) { snprintf (v, N, "%s", SvPV_nolen (sv)); } 225inline void sv_to (SV *sv, char (&v)[N]) { assign (v, SvPV_nolen (sv)); }
223 226
224static SV * 227static SV *
225newSVdt_va (va_list &ap, data_type type) 228newSVdt_va (va_list &ap, data_type type)
226{ 229{
227 SV *sv; 230 SV *sv;
1258 const_iv (AT_BLIND) 1261 const_iv (AT_BLIND)
1259 const_iv (AT_INTERNAL) 1262 const_iv (AT_INTERNAL)
1260 const_iv (AT_LIFE_STEALING) 1263 const_iv (AT_LIFE_STEALING)
1261 const_iv (AT_DISEASE) 1264 const_iv (AT_DISEASE)
1262 1265
1263 const_iv (QUEST_IN_PROGRESS)
1264 const_iv (QUEST_DONE_QUEST)
1265 const_iv (QUEST_DONE_TASK)
1266 const_iv (QUEST_START_QUEST)
1267 const_iv (QUEST_END_QUEST)
1268 const_iv (QUEST_START_TASK)
1269 const_iv (QUEST_END_TASK)
1270 const_iv (QUEST_OVERRIDE)
1271 const_iv (QUEST_ON_ACTIVATE)
1272
1273 const_iv (WEAP_HIT) 1266 const_iv (WEAP_HIT)
1274 const_iv (WEAP_SLASH) 1267 const_iv (WEAP_SLASH)
1275 const_iv (WEAP_PIERCE) 1268 const_iv (WEAP_PIERCE)
1276 const_iv (WEAP_CLEAVE) 1269 const_iv (WEAP_CLEAVE)
1277 const_iv (WEAP_SLICE) 1270 const_iv (WEAP_SLICE)
1774 SET_FLAG (op, flag); 1767 SET_FLAG (op, flag);
1775 else 1768 else
1776 CLEAR_FLAG (op, flag); 1769 CLEAR_FLAG (op, flag);
1777 OUTPUT: RETVAL 1770 OUTPUT: RETVAL
1778 1771
1772object *head (object *op)
1773 PROTOTYPE: $
1774 CODE:
1775 RETVAL = op->head ? op->head : op;
1776 OUTPUT: RETVAL
1777
1778int is_head (object *op)
1779 PROTOTYPE: $
1780 CODE:
1781 RETVAL = !op->head;
1782 OUTPUT: RETVAL
1783
1779void 1784void
1780inv (object *obj) 1785inv (object *obj)
1781 PROTOTYPE: $ 1786 PROTOTYPE: $
1782 PPCODE: 1787 PPCODE:
1783{ 1788{

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines