… | |
… | |
1744 | OUTPUT: |
1744 | OUTPUT: |
1745 | RETVAL |
1745 | RETVAL |
1746 | |
1746 | |
1747 | MODULE = cf PACKAGE = cf::object PREFIX = cf_object_ |
1747 | MODULE = cf PACKAGE = cf::object PREFIX = cf_object_ |
1748 | |
1748 | |
|
|
1749 | INCLUDE: $PERL genacc object ../include/object.h | |
|
|
1750 | |
1749 | int invoke (object *op, int event, ...) |
1751 | int invoke (object *op, int event, ...) |
1750 | CODE: |
1752 | CODE: |
1751 | if (KLASS_OF (event) != KLASS_OBJECT) croak ("event class must be OBJECT"); |
1753 | if (KLASS_OF (event) != KLASS_OBJECT) croak ("event class must be OBJECT"); |
1752 | AV *av = (AV *)sv_2mortal ((SV *)newAV ()); |
1754 | AV *av = (AV *)sv_2mortal ((SV *)newAV ()); |
1753 | for (int i = 2; i < items; i++) av_push (av, SvREFCNT_inc (ST (i))); |
1755 | for (int i = 2; i < items; i++) av_push (av, SvREFCNT_inc (ST (i))); |
… | |
… | |
1768 | |
1770 | |
1769 | object *first () |
1771 | object *first () |
1770 | CODE: |
1772 | CODE: |
1771 | RETVAL = object::first; |
1773 | RETVAL = object::first; |
1772 | OUTPUT: RETVAL |
1774 | OUTPUT: RETVAL |
1773 | |
|
|
1774 | INCLUDE: $PERL genacc object ../include/object.h | |
|
|
1775 | |
1775 | |
1776 | # missing properties |
1776 | # missing properties |
1777 | |
1777 | |
1778 | int flag (object *op, int flag, int value = 1) |
1778 | int flag (object *op, int flag, int value = 1) |
1779 | PROTOTYPE: $$;$ |
1779 | PROTOTYPE: $$;$ |
… | |
… | |
2010 | void esrv_update_item (object *op, int what, object *item) |
2010 | void esrv_update_item (object *op, int what, object *item) |
2011 | C_ARGS: what, op, item |
2011 | C_ARGS: what, op, item |
2012 | |
2012 | |
2013 | MODULE = cf PACKAGE = cf::player PREFIX = cf_player_ |
2013 | MODULE = cf PACKAGE = cf::player PREFIX = cf_player_ |
2014 | |
2014 | |
|
|
2015 | INCLUDE: $PERL genacc player ../include/newserver.h ../include/player.h | |
|
|
2016 | |
|
|
2017 | char * |
|
|
2018 | client (player *pl) |
|
|
2019 | CODE: |
|
|
2020 | RETVAL = pl->socket.client; |
|
|
2021 | OUTPUT: |
|
|
2022 | RETVAL |
|
|
2023 | |
|
|
2024 | char * |
|
|
2025 | host (player *pl) |
|
|
2026 | CODE: |
|
|
2027 | RETVAL = pl->socket.host; |
|
|
2028 | OUTPUT: |
|
|
2029 | RETVAL |
|
|
2030 | |
2015 | int invoke (player *pl, int event, ...) |
2031 | int invoke (player *pl, int event, ...) |
2016 | CODE: |
2032 | CODE: |
2017 | if (KLASS_OF (event) != KLASS_PLAYER) croak ("event class must be PLAYER"); |
2033 | if (KLASS_OF (event) != KLASS_PLAYER) croak ("event class must be PLAYER"); |
2018 | AV *av = (AV *)sv_2mortal ((SV *)newAV ()); |
2034 | AV *av = (AV *)sv_2mortal ((SV *)newAV ()); |
2019 | for (int i = 2; i < items; i++) av_push (av, SvREFCNT_inc (ST (i))); |
2035 | for (int i = 2; i < items; i++) av_push (av, SvREFCNT_inc (ST (i))); |
… | |
… | |
2031 | |
2047 | |
2032 | void cf_player_move (player *pl, int dir) |
2048 | void cf_player_move (player *pl, int dir) |
2033 | |
2049 | |
2034 | void play_sound_player_only (player *pl, int soundnum, int x = 0, int y = 0); |
2050 | void play_sound_player_only (player *pl, int soundnum, int x = 0, int y = 0); |
2035 | |
2051 | |
2036 | # nonstandard |
|
|
2037 | object *ob (player *pl) |
|
|
2038 | CODE: |
|
|
2039 | RETVAL = pl->ob; |
|
|
2040 | OUTPUT: RETVAL |
|
|
2041 | |
|
|
2042 | player *first () |
2052 | player *first () |
2043 | CODE: |
2053 | CODE: |
2044 | RETVAL = first_player; |
2054 | RETVAL = first_player; |
2045 | OUTPUT: RETVAL |
2055 | OUTPUT: RETVAL |
2046 | |
2056 | |
… | |
… | |
2052 | bool |
2062 | bool |
2053 | cell_visible (player *pl, int dx, int dy) |
2063 | cell_visible (player *pl, int dx, int dy) |
2054 | CODE: |
2064 | CODE: |
2055 | RETVAL = FABS (dx) <= pl->socket.mapx / 2 && FABS (dy) <= pl->socket.mapy / 2 |
2065 | RETVAL = FABS (dx) <= pl->socket.mapx / 2 && FABS (dy) <= pl->socket.mapy / 2 |
2056 | && !pl->blocked_los [dx + pl->socket.mapx / 2][dy + pl->socket.mapy / 2]; |
2066 | && !pl->blocked_los [dx + pl->socket.mapx / 2][dy + pl->socket.mapy / 2]; |
2057 | OUTPUT: |
|
|
2058 | RETVAL |
|
|
2059 | |
|
|
2060 | char * |
|
|
2061 | client (player *pl) |
|
|
2062 | CODE: |
|
|
2063 | RETVAL = pl->socket.client; |
|
|
2064 | OUTPUT: |
|
|
2065 | RETVAL |
|
|
2066 | |
|
|
2067 | char * |
|
|
2068 | host (player *pl) |
|
|
2069 | CODE: |
|
|
2070 | RETVAL = pl->socket.host; |
|
|
2071 | OUTPUT: |
|
|
2072 | RETVAL |
|
|
2073 | |
|
|
2074 | char * |
|
|
2075 | killer (player *pl, char *killer = 0) |
|
|
2076 | CODE: |
|
|
2077 | if (killer) |
|
|
2078 | snprintf (pl->killer, sizeof (pl->killer), "%s", killer); |
|
|
2079 | RETVAL = pl->killer; |
|
|
2080 | OUTPUT: |
2067 | OUTPUT: |
2081 | RETVAL |
2068 | RETVAL |
2082 | |
2069 | |
2083 | void |
2070 | void |
2084 | buggy_mapscroll (player *pl, int value = 1) |
2071 | buggy_mapscroll (player *pl, int value = 1) |