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.285 by root, Sun May 4 08:25:33 2008 UTC vs.
Revision 1.288 by root, Tue May 6 18:47:32 2008 UTC

977{ 977{
978 CALL_BEGIN (1); 978 CALL_BEGIN (1);
979 CALL_ARG (name); 979 CALL_ARG (name);
980 CALL_CALL ("cf::player::find", G_SCALAR); 980 CALL_CALL ("cf::player::find", G_SCALAR);
981 981
982 player *retval; 982 player *retval = 0;
983
984 if (count)
985 sv_to (POPs, retval); 983 if (count) sv_to (POPs, retval);
986 else 984
987 retval = 0; 985 CALL_END;
986
987 return retval;
988}
989
990maptile *
991find_style (const char *dirname, const char *stylename, int difficulty)
992{
993 CALL_BEGIN (3);
994 CALL_ARG (dirname);
995 CALL_ARG (stylename);
996 CALL_ARG (difficulty);
997 CALL_CALL ("ext::map_random::find_style", G_SCALAR);
998
999 maptile *retval = 0;
1000 if (count) sv_to (POPs, retval);
988 1001
989 CALL_END; 1002 CALL_END;
990 1003
991 return retval; 1004 return retval;
992} 1005}
997 CALL_BEGIN (2); 1010 CALL_BEGIN (2);
998 CALL_ARG (path); 1011 CALL_ARG (path);
999 CALL_ARG (origin); 1012 CALL_ARG (origin);
1000 CALL_CALL ("cf::map::find_sync", G_SCALAR); 1013 CALL_CALL ("cf::map::find_sync", G_SCALAR);
1001 1014
1002 maptile *retval; 1015 maptile *retval = 0;
1003
1004 if (count)
1005 sv_to (POPs, retval); 1016 if (count) sv_to (POPs, retval);
1006 else
1007 retval = 0;
1008 1017
1009 CALL_END; 1018 CALL_END;
1010 1019
1011 return retval; 1020 return retval;
1012} 1021}
1018 CALL_ARG (path); 1027 CALL_ARG (path);
1019 CALL_ARG (origin); 1028 CALL_ARG (origin);
1020 CALL_ARG (load); 1029 CALL_ARG (load);
1021 CALL_CALL ("cf::map::find_async", G_SCALAR); 1030 CALL_CALL ("cf::map::find_async", G_SCALAR);
1022 1031
1023 maptile *retval; 1032 maptile *retval = 0;
1024
1025 if (count)
1026 sv_to (POPs, retval); 1033 if (count) sv_to (POPs, retval);
1027 else
1028 retval = 0;
1029 1034
1030 CALL_END; 1035 CALL_END;
1031 1036
1032 return retval; 1037 return retval;
1033} 1038}
1058 1063
1059 CALL_BEGIN (2); 1064 CALL_BEGIN (2);
1060 CALL_ARG (this); 1065 CALL_ARG (this);
1061 CALL_ARG (exit); 1066 CALL_ARG (exit);
1062 CALL_CALL ("cf::object::player::enter_exit", G_VOID); 1067 CALL_CALL ("cf::object::player::enter_exit", G_VOID);
1068 CALL_END;
1069}
1070
1071void
1072object::player_goto (const char *path, int x, int y)
1073{
1074 if (type != PLAYER)
1075 return;
1076
1077 CALL_BEGIN (4);
1078 CALL_ARG (this);
1079 CALL_ARG (path);
1080 CALL_ARG (x);
1081 CALL_ARG (y);
1082 CALL_CALL ("cf::object::player::goto", G_VOID);
1063 CALL_END; 1083 CALL_END;
1064} 1084}
1065 1085
1066const char * 1086const char *
1067object::ref () const 1087object::ref () const
1573NV floor (NV x) 1593NV floor (NV x)
1574 1594
1575NV ceil (NV x) 1595NV ceil (NV x)
1576 1596
1577NV rndm (...) 1597NV rndm (...)
1598 ALIAS:
1599 rmg_rndm = 1
1578 CODE: 1600 CODE:
1601{
1602 rand_gen &gen = ix ? rmg_rndm : rndm;
1579 switch (items) 1603 switch (items)
1580 { 1604 {
1581 case 0: RETVAL = rndm (); break; 1605 case 0: RETVAL = gen (); break;
1582 case 1: RETVAL = rndm (SvUV (ST (0))); break; 1606 case 1: RETVAL = gen (SvUV (ST (0))); break;
1583 case 2: RETVAL = rndm (SvIV (ST (0)), SvIV (ST (1))); break; 1607 case 2: RETVAL = gen (SvIV (ST (0)), SvIV (ST (1))); break;
1584 default: croak ("cf::rndm requires none, one or two parameters."); break; 1608 default: croak ("cf::rndm requires none, one or two parameters."); break;
1585 } 1609 }
1610}
1586 OUTPUT: 1611 OUTPUT:
1587 RETVAL 1612 RETVAL
1588 1613
1589NV clamp (NV value, NV min_value, NV max_value) 1614NV clamp (NV value, NV min_value, NV max_value)
1590 CODE: 1615 CODE:
1786 for (int i = 0; i < NUM_COINS; ++i) 1811 for (int i = 0; i < NUM_COINS; ++i)
1787 PUSHs (sv_2mortal (to_sv (archetype::find (coins [i])))); 1812 PUSHs (sv_2mortal (to_sv (archetype::find (coins [i]))));
1788 1813
1789bool 1814bool
1790load_resource_file_ (octet_string filename) 1815load_resource_file_ (octet_string filename)
1816
1817void
1818fix_weight ()
1791 1819
1792MODULE = cf PACKAGE = cf::attachable 1820MODULE = cf PACKAGE = cf::attachable
1793 1821
1794int 1822int
1795valid (SV *obj) 1823valid (SV *obj)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines