X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;ds=sidebyside;f=player_remote.c;h=71d12d1aa2e0f09967e96240089a08776e7726e8;hb=d680579754c876a74bf77ac74a224900ce0b3ff9;hp=da0ee296e7e431d20a33dc578ed63c5895f6e5ac;hpb=333430b27b5f9f73cbe9ad7921a4735aaff444f1;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_remote.c b/player_remote.c index da0ee29..71d12d1 100644 --- a/player_remote.c +++ b/player_remote.c @@ -31,7 +31,8 @@ static void player_remote_rx_200_300( SteamNetworkingMessage_t *msg ){ vg_strncpy( playerjoin->username, player->username, sizeof(player->username), k_strncpy_always_add_null ); - vg_info( "#%u joined with name: %s\n", player->username ); + vg_info( "#%u joined with name: %s\n", + playerjoin->index, player->username ); } else { vg_error( "inetmsg_playerjoin: player index out of range\n" ); @@ -135,7 +136,7 @@ static void remote_player_debug_update(void){ } } -static void remote_player_network_imgui(void){ +static void remote_player_network_imgui( m4x4f pv ){ if( !network_client.network_info ) return; @@ -191,6 +192,24 @@ static void remote_player_network_imgui(void){ snprintf( buf, 512, "#%u: %s [%s] D%.1fkbs", i, player->username, sysname, player->down_kbs ); ui_info( panel, buf ); + + v4f wpos = { 0.0f, 2.0f, 0.0f, 1.0f }; + m4x3_mulv( netplayers.final_mtx[0], wpos, wpos ); + m4x4_mulv( pv, wpos, wpos ); + + if( wpos[3] > 0.0f ){ + v2_muls( wpos, (1.0f/wpos[3]) * 0.5f, wpos ); + v2_add( wpos, (v2f){ 0.5f, 0.5f }, wpos ); + + ui_rect wr; + wr[0] = vg_clampf(wpos[0] * vg.window_x, -32000.0f,32000.0f); + wr[1] = vg_clampf((1.0f-wpos[1]) * vg.window_y, + -32000.0f,32000.0f); + wr[2] = 300; + wr[3] = 17; + ui_fill( wr, (ui_colour(k_ui_bg)&0x00ffffff)|0x50000000 ); + ui_text( wr, buf, 1, k_ui_align_middle_center, 0 ); + } } } }