… | |
… | |
605 | ///////////////////////////////////////////////////////////////////////////// |
605 | ///////////////////////////////////////////////////////////////////////////// |
606 | |
606 | |
607 | void |
607 | void |
608 | cfperl_init () |
608 | cfperl_init () |
609 | { |
609 | { |
|
|
610 | extern char **environ; |
|
|
611 | |
610 | PERL_SYS_INIT3 (&settings.argc, &settings.argv, 0); |
612 | PERL_SYS_INIT3 (&settings.argc, &settings.argv, &environ); |
611 | perl = perl_alloc (); |
613 | perl = perl_alloc (); |
612 | perl_construct (perl); |
614 | perl_construct (perl); |
613 | |
615 | |
614 | PL_exit_flags |= PERL_EXIT_DESTRUCT_END; |
616 | PL_exit_flags |= PERL_EXIT_DESTRUCT_END; |
615 | |
617 | |
… | |
… | |
620 | "cf->bootstrap;" // required for datadir :*> |
622 | "cf->bootstrap;" // required for datadir :*> |
621 | "unshift @INC, cf::datadir ();" |
623 | "unshift @INC, cf::datadir ();" |
622 | "require cf;" |
624 | "require cf;" |
623 | }; |
625 | }; |
624 | |
626 | |
625 | if (perl_parse (perl, xs_init, 2, (char **)argv, (char **)NULL) |
627 | if (perl_parse (perl, xs_init, 2, (char **)argv, environ) |
626 | || perl_run (perl)) |
628 | || perl_run (perl)) |
627 | { |
629 | { |
628 | printf ("unable to initialize perl-interpreter, aborting.\n"); |
630 | printf ("unable to initialize perl-interpreter, aborting.\n"); |
629 | exit (EXIT_FAILURE); |
631 | exit (EXIT_FAILURE); |
630 | } |
632 | } |
… | |
… | |
1174 | stash_cf_arch_wrap = gv_stashpv ("cf::arch::wrap" , 1); |
1176 | stash_cf_arch_wrap = gv_stashpv ("cf::arch::wrap" , 1); |
1175 | stash_cf_party_wrap = gv_stashpv ("cf::party::wrap" , 1); |
1177 | stash_cf_party_wrap = gv_stashpv ("cf::party::wrap" , 1); |
1176 | stash_cf_region_wrap = gv_stashpv ("cf::region::wrap", 1); |
1178 | stash_cf_region_wrap = gv_stashpv ("cf::region::wrap", 1); |
1177 | stash_cf_living_wrap = gv_stashpv ("cf::living::wrap", 1); |
1179 | stash_cf_living_wrap = gv_stashpv ("cf::living::wrap", 1); |
1178 | |
1180 | |
1179 | sv_now = get_sv ("cf::NOW" , 1); sv_upgrade (sv_now , SVt_NV); |
1181 | sv_now = get_sv ("cf::NOW" , 1); SvUPGRADE (sv_now , SVt_NV); |
1180 | sv_runtime = get_sv ("cf::RUNTIME" , 1); sv_upgrade (sv_runtime , SVt_NV); |
1182 | sv_runtime = get_sv ("cf::RUNTIME" , 1); SvUPGRADE (sv_runtime , SVt_NV); |
1181 | sv_next_tick = get_sv ("cf::NEXT_TICK", 1); sv_upgrade (sv_next_tick, SVt_NV); |
1183 | sv_next_tick = get_sv ("cf::NEXT_TICK", 1); SvUPGRADE (sv_next_tick, SVt_NV); |
1182 | |
1184 | |
1183 | cb_global = get_av ("cf::CB_GLOBAL", 1); |
1185 | cb_global = get_av ("cf::CB_GLOBAL", 1); |
1184 | cb_attachable = get_av ("cf::CB_ATTACHABLE", 1); |
1186 | cb_attachable = get_av ("cf::CB_ATTACHABLE", 1); |
1185 | cb_object = get_av ("cf::CB_OBJECT", 1); |
1187 | cb_object = get_av ("cf::CB_OBJECT", 1); |
1186 | cb_player = get_av ("cf::CB_PLAYER", 1); |
1188 | cb_player = get_av ("cf::CB_PLAYER", 1); |
… | |
… | |
1578 | CODE: |
1580 | CODE: |
1579 | RETVAL = lerp (value, min_in, max_in, min_out, max_out); |
1581 | RETVAL = lerp (value, min_in, max_in, min_out, max_out); |
1580 | OUTPUT: |
1582 | OUTPUT: |
1581 | RETVAL |
1583 | RETVAL |
1582 | |
1584 | |
|
|
1585 | void weaken (...) |
|
|
1586 | PROTOTYPE: @ |
|
|
1587 | CODE: |
|
|
1588 | while (items > 0) |
|
|
1589 | sv_rvweaken (ST (--items)); |
|
|
1590 | |
1583 | void cede_to_tick () |
1591 | void cede_to_tick () |
1584 | CODE: |
1592 | CODE: |
1585 | coroapi::cede_to_tick (); |
1593 | coroapi::cede_to_tick (); |
1586 | |
1594 | |
1587 | void server_tick () |
1595 | void server_tick () |
… | |
… | |
1658 | |
1666 | |
1659 | void abort () |
1667 | void abort () |
1660 | |
1668 | |
1661 | void reset_signals () |
1669 | void reset_signals () |
1662 | |
1670 | |
1663 | void fork_abort (octet_string cause = "cf::fork_abort") |
1671 | void fork_abort (const_octet_string cause = "cf::fork_abort") |
1664 | |
1672 | |
1665 | void cleanup (octet_string cause, bool make_core = false) |
1673 | void cleanup (const_octet_string cause, bool make_core = false) |
1666 | |
1674 | |
1667 | void emergency_save () |
1675 | void emergency_save () |
1668 | |
1676 | |
1669 | void _exit (int status = EXIT_SUCCESS) |
1677 | void _exit (int status = EXIT_SUCCESS) |
1670 | |
1678 | |