X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=player.c;h=585fd73e7a14857352b5f16d0766d00f333bc2ac;hb=35b57a341eb37d863ec69e4f011a88b7bfba5c01;hp=b0888ea6e00249b4040aec7b64ea900605254c96;hpb=bf8478e3656ae729248a594a57d111f08bed41e0;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player.c b/player.c index b0888ea..585fd73 100644 --- a/player.c +++ b/player.c @@ -164,10 +164,8 @@ void player__pass_gate( player_instance *player, ent_gate *gate ) m4x3_mulv( gate->transport, player->cam.pos, player->cam.pos ); - if( gate->type == k_gate_type_nonlocel ) - world_static.active_world = gate->target; - - world_volumes.inside = 0; + if( gate->flags & k_ent_gate_nonlocal ) + world_static.active_instance = gate->target; audio_lock(); audio_oneshot( &audio_gate_pass, 1.0f, 0.0f ); @@ -227,6 +225,22 @@ PLAYER_API void player__im_gui( player_instance *player ){ g_player_debugger[2] = 300; g_player_debugger[3] = 32; + player__debugtext( 2, "instance #%u", world_static.active_instance ); + + char buf_hub[96], + buf_client[96]; + if( world_static.addon_client ) + addon_alias_uid( &world_static.addon_client->alias, buf_client ); + else + strcpy( buf_client, "none" ); + + if( world_static.addon_hub ) + addon_alias_uid( &world_static.addon_hub->alias, buf_hub ); + else + strcpy( buf_hub, "none" ); + + player__debugtext( 1, "hub uid: %s", buf_hub ); + player__debugtext( 1, "client uid: %s", buf_client ); player__debugtext( 2, "director" ); player__debugtext( 1, "activity: %s", (const char *[]){ [k_skaterift_menu] = "menu", @@ -281,6 +295,11 @@ PLAYER_API void player__kill( player_instance *player ){ } +PLAYER_API void player__begin_holdout( player_instance *player ){ + memcpy( &player->holdout_pose, &player->pose, sizeof(player->pose) ); + player->holdout_time = 1.0f; +} + /* implementation */ #include "player_common.c" #include "player_walk.c"