… | |
… | |
83 | *stash_cf_mapspace_wrap, |
83 | *stash_cf_mapspace_wrap, |
84 | *stash_cf_client_wrap, |
84 | *stash_cf_client_wrap, |
85 | *stash_cf_arch_wrap, |
85 | *stash_cf_arch_wrap, |
86 | *stash_cf_party_wrap, |
86 | *stash_cf_party_wrap, |
87 | *stash_cf_region_wrap, |
87 | *stash_cf_region_wrap, |
88 | *stash_cf_living_wrap; |
88 | *stash_cf_living_wrap, |
|
|
89 | *stash_ext_map_world; |
89 | |
90 | |
90 | static SV |
91 | static SV |
91 | *cv_cf_do_invoke, |
92 | *cv_cf_do_invoke, |
92 | *cv_cf__can_merge, |
93 | *cv_cf__can_merge, |
93 | *cv_cf_client_send_msg, |
94 | *cv_cf_client_send_msg, |
… | |
… | |
488 | { |
489 | { |
489 | if (expect_false (!SvOK (sv))) return 0; |
490 | if (expect_false (!SvOK (sv))) return 0; |
490 | |
491 | |
491 | if (!SvROK (sv) |
492 | if (!SvROK (sv) |
492 | || (SvSTASH (SvRV (sv)) != stash_cf_map_wrap |
493 | || (SvSTASH (SvRV (sv)) != stash_cf_map_wrap |
|
|
494 | && SvSTASH (SvRV (sv)) != stash_ext_map_world |
493 | && !sv_derived_from (sv, "cf::map"))) |
495 | && !sv_derived_from (sv, "cf::map"))) |
494 | croak ("object of type cf::map expected"); |
496 | croak ("object of type cf::map expected"); |
495 | |
497 | |
496 | return SvPTR_nc (sv); |
498 | return SvPTR_nc (sv); |
497 | } |
499 | } |
… | |
… | |
1389 | stash_cf_client_wrap = gv_stashpv ("cf::client::wrap", 1); |
1391 | stash_cf_client_wrap = gv_stashpv ("cf::client::wrap", 1); |
1390 | stash_cf_arch_wrap = gv_stashpv ("cf::arch::wrap" , 1); |
1392 | stash_cf_arch_wrap = gv_stashpv ("cf::arch::wrap" , 1); |
1391 | stash_cf_party_wrap = gv_stashpv ("cf::party::wrap" , 1); |
1393 | stash_cf_party_wrap = gv_stashpv ("cf::party::wrap" , 1); |
1392 | stash_cf_region_wrap = gv_stashpv ("cf::region::wrap", 1); |
1394 | stash_cf_region_wrap = gv_stashpv ("cf::region::wrap", 1); |
1393 | stash_cf_living_wrap = gv_stashpv ("cf::living::wrap", 1); |
1395 | stash_cf_living_wrap = gv_stashpv ("cf::living::wrap", 1); |
|
|
1396 | stash_ext_map_world = gv_stashpv ("ext::map_world" , 1); |
1394 | |
1397 | |
1395 | sv_now = get_sv ("cf::NOW" , 1); SvUPGRADE (sv_now , SVt_NV); |
1398 | sv_now = get_sv ("cf::NOW" , 1); SvUPGRADE (sv_now , SVt_NV); |
1396 | sv_runtime = get_sv ("cf::RUNTIME" , 1); SvUPGRADE (sv_runtime , SVt_NV); |
1399 | sv_runtime = get_sv ("cf::RUNTIME" , 1); SvUPGRADE (sv_runtime , SVt_NV); |
1397 | sv_tick_start = get_sv ("cf::TICK_START", 1); SvUPGRADE (sv_tick_start, SVt_NV); |
1400 | sv_tick_start = get_sv ("cf::TICK_START", 1); SvUPGRADE (sv_tick_start, SVt_NV); |
1398 | sv_next_tick = get_sv ("cf::NEXT_TICK" , 1); SvUPGRADE (sv_next_tick , SVt_NV); |
1401 | sv_next_tick = get_sv ("cf::NEXT_TICK" , 1); SvUPGRADE (sv_next_tick , SVt_NV); |