… | |
… | |
190 | |
190 | |
191 | //TODO: |
191 | //TODO: |
192 | inline SV *to_sv (New_Face * v) { return to_sv (v->name); } |
192 | inline SV *to_sv (New_Face * v) { return to_sv (v->name); } |
193 | inline SV *to_sv (treasurelist * v) { return to_sv (v->name); } |
193 | inline SV *to_sv (treasurelist * v) { return to_sv (v->name); } |
194 | |
194 | |
195 | inline void sv_to (SV *sv, shstr &v) { v = SvPV_nolen (sv); } |
195 | inline void sv_to (SV *sv, shstr &v) { v = SvOK (sv) ? SvPV_nolen (sv) : 0; } |
196 | inline void sv_to (SV *sv, char * &v) { free (v); v = strdup (SvPV_nolen (sv)); } //TODO: verify that all simple pointers are strdup-managed |
196 | inline void sv_to (SV *sv, char * &v) { free (v); v = SvOK (sv) ? strdup (SvPV_nolen (sv)) : 0; } //TODO: verify that all simple pointers are strdup-managed |
197 | inline void sv_to (SV *sv, bool &v) { v = SvIV (sv); } |
197 | inline void sv_to (SV *sv, bool &v) { v = SvIV (sv); } |
198 | inline void sv_to (SV *sv, signed char &v) { v = SvIV (sv); } |
198 | inline void sv_to (SV *sv, signed char &v) { v = SvIV (sv); } |
199 | inline void sv_to (SV *sv, unsigned char &v) { v = SvIV (sv); } |
199 | inline void sv_to (SV *sv, unsigned char &v) { v = SvIV (sv); } |
200 | inline void sv_to (SV *sv, signed short &v) { v = SvIV (sv); } |
200 | inline void sv_to (SV *sv, signed short &v) { v = SvIV (sv); } |
201 | inline void sv_to (SV *sv, unsigned short &v) { v = SvIV (sv); } |
201 | inline void sv_to (SV *sv, unsigned short &v) { v = SvIV (sv); } |
… | |
… | |
1391 | const_iv (NDI_MAX_COLOR) |
1391 | const_iv (NDI_MAX_COLOR) |
1392 | const_iv (NDI_COLOR_MASK) |
1392 | const_iv (NDI_COLOR_MASK) |
1393 | const_iv (NDI_UNIQUE) |
1393 | const_iv (NDI_UNIQUE) |
1394 | const_iv (NDI_ALL) |
1394 | const_iv (NDI_ALL) |
1395 | |
1395 | |
|
|
1396 | const_iv (UPD_LOCATION) |
|
|
1397 | const_iv (UPD_FLAGS) |
|
|
1398 | const_iv (UPD_WEIGHT) |
|
|
1399 | const_iv (UPD_FACE) |
|
|
1400 | const_iv (UPD_NAME) |
|
|
1401 | const_iv (UPD_ANIM) |
|
|
1402 | const_iv (UPD_ANIMSPEED) |
|
|
1403 | const_iv (UPD_NROF) |
|
|
1404 | |
|
|
1405 | const_iv (UPD_SP_MANA) |
|
|
1406 | const_iv (UPD_SP_GRACE) |
|
|
1407 | const_iv (UPD_SP_DAMAGE) |
|
|
1408 | |
1396 | const_iv (F_APPLIED) |
1409 | const_iv (F_APPLIED) |
1397 | const_iv (F_LOCATION) |
1410 | const_iv (F_LOCATION) |
1398 | const_iv (F_UNPAID) |
1411 | const_iv (F_UNPAID) |
1399 | const_iv (F_MAGIC) |
1412 | const_iv (F_MAGIC) |
1400 | const_iv (F_CURSED) |
1413 | const_iv (F_CURSED) |
… | |
… | |
1616 | reattach (pl); |
1629 | reattach (pl); |
1617 | |
1630 | |
1618 | for (mapstruct *map = first_map; map; map = map->next) |
1631 | for (mapstruct *map = first_map; map; map = map->next) |
1619 | reattach (map); |
1632 | reattach (map); |
1620 | |
1633 | |
1621 | for (object *op = objects; op; op = op->next) |
1634 | for (object *op = object::first; op; op = op->next) |
1622 | reattach (op); |
1635 | reattach (op); |
1623 | } |
1636 | } |
1624 | |
1637 | |
1625 | NV floor (NV x) |
1638 | NV floor (NV x) |
1626 | |
1639 | |
… | |
… | |
1674 | case 5: RETVAL = settings.playerdir; break; |
1687 | case 5: RETVAL = settings.playerdir; break; |
1675 | case 6: RETVAL = settings.datadir ; break; |
1688 | case 6: RETVAL = settings.datadir ; break; |
1676 | } |
1689 | } |
1677 | OUTPUT: RETVAL |
1690 | OUTPUT: RETVAL |
1678 | |
1691 | |
1679 | int |
1692 | void _exit (int status = 0) |
|
|
1693 | |
1680 | cf_find_animation (char *text) |
1694 | int cf_find_animation (char *text) |
1681 | PROTOTYPE: $ |
1695 | PROTOTYPE: $ |
1682 | |
1696 | |
1683 | int random_roll(int min, int max, object *op, int goodbad); |
1697 | int random_roll(int min, int max, object *op, int goodbad); |
1684 | |
1698 | |
1685 | const char *cost_string_from_value(uint64 cost, int approx = 0) |
1699 | const char *cost_string_from_value(uint64 cost, int approx = 0) |
… | |
… | |
1752 | CODE: |
1766 | CODE: |
1753 | RETVAL = registry_of (op); |
1767 | RETVAL = registry_of (op); |
1754 | OUTPUT: |
1768 | OUTPUT: |
1755 | RETVAL |
1769 | RETVAL |
1756 | |
1770 | |
|
|
1771 | void mortals () |
|
|
1772 | CODE: |
|
|
1773 | EXTEND (SP, object::mortals.size ()); |
|
|
1774 | for (AUTODECL (i, object::mortals.begin ()); i != object::mortals.end (); ++i) |
|
|
1775 | PUSHs (to_sv (*i)); |
|
|
1776 | |
|
|
1777 | object *first () |
|
|
1778 | CODE: |
|
|
1779 | RETVAL = object::first; |
|
|
1780 | OUTPUT: RETVAL |
|
|
1781 | |
1757 | INCLUDE: $PERL genacc object ../include/object.h | |
1782 | INCLUDE: $PERL genacc object ../include/object.h | |
1758 | |
1783 | |
1759 | # missing properties |
1784 | # missing properties |
1760 | |
1785 | |
1761 | int flag (object *op, int flag, int value = 1) |
1786 | int flag (object *op, int flag, int value = 1) |
… | |
… | |
1788 | { |
1813 | { |
1789 | object *o; |
1814 | object *o; |
1790 | for (o = obj->inv; o; o = o->below) |
1815 | for (o = obj->inv; o; o = o->below) |
1791 | XPUSHs (sv_2mortal (newSVcfapi (CFAPI_POBJECT, o))); |
1816 | XPUSHs (sv_2mortal (newSVcfapi (CFAPI_POBJECT, o))); |
1792 | } |
1817 | } |
|
|
1818 | |
|
|
1819 | object *find_best_object_match (object *op, const char *match) |
|
|
1820 | |
|
|
1821 | object *find_marked_object (object *op) |
1793 | |
1822 | |
1794 | int cf_object_get_resistance (object *op, int rtype) |
1823 | int cf_object_get_resistance (object *op, int rtype) |
1795 | ALIAS: resistance = 0 |
1824 | ALIAS: resistance = 0 |
1796 | |
1825 | |
1797 | int need_identify (const object *obj); |
1826 | int need_identify (const object *obj); |
… | |
… | |
1952 | bool on_same_map_as (object *ob, object *other) |
1981 | bool on_same_map_as (object *ob, object *other) |
1953 | CODE: |
1982 | CODE: |
1954 | RETVAL = on_same_map (ob, other); |
1983 | RETVAL = on_same_map (ob, other); |
1955 | OUTPUT: RETVAL |
1984 | OUTPUT: RETVAL |
1956 | |
1985 | |
1957 | char * |
1986 | const char * |
1958 | base_name (object *ob, int plural) |
1987 | base_name (object *op, int plural = op->nrof > 1) |
1959 | CODE: |
1988 | CODE: |
1960 | RETVAL = cf_query_base_name (ob, plural); |
1989 | RETVAL = query_base_name (op, plural); |
1961 | OUTPUT: RETVAL |
1990 | OUTPUT: RETVAL |
1962 | |
1991 | |
1963 | MODULE = cf PACKAGE = cf::object::player PREFIX = cf_player_ |
1992 | MODULE = cf PACKAGE = cf::object::player PREFIX = cf_player_ |
1964 | |
1993 | |
1965 | player *player (object *op) |
1994 | player *player (object *op) |
… | |
… | |
1983 | ALIAS: party = 0 |
2012 | ALIAS: party = 0 |
1984 | |
2013 | |
1985 | void cf_player_set_party (object *op, partylist *party) |
2014 | void cf_player_set_party (object *op, partylist *party) |
1986 | |
2015 | |
1987 | void kill_player (object *op) |
2016 | void kill_player (object *op) |
|
|
2017 | |
|
|
2018 | void esrv_update_item (object *op, int what, object *item) |
|
|
2019 | C_ARGS: what, op, item |
1988 | |
2020 | |
1989 | MODULE = cf PACKAGE = cf::player PREFIX = cf_player_ |
2021 | MODULE = cf PACKAGE = cf::player PREFIX = cf_player_ |
1990 | |
2022 | |
1991 | int invoke (player *pl, int event, ...) |
2023 | int invoke (player *pl, int event, ...) |
1992 | CODE: |
2024 | CODE: |