test bigger font
[carveJwlIkooP6JGAAIwe30JlM.git] / player_remote.c
index 9a753944e899c19189f768d4d69ac7da85cf76ed..8cbbed6eed8cab2983f47c48c940b37dd93205e9 100644 (file)
@@ -340,6 +340,31 @@ static void remote_player_debug_update(void){
    }
 }
 
+static void remote_player_nametag( m4x4f pv, v3f co, const char *name ){
+   vg_ui.font = &vg_ui_font_big;
+   v4f wpos;
+   v3_copy( co, wpos );
+   wpos[1] += 2.0f;
+   wpos[3] = 1.0f;
+
+   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)-150;
+      wr[1] = vg_clampf((1.0f-wpos[1]) * vg.window_y,
+                        -32000.0f,32000.0f);
+      wr[2] = 300;
+      wr[3] = 32;
+      ui_fill( wr, (ui_colour(k_ui_bg)&0x00ffffff)|0x50000000 );
+      ui_text( wr, name, 1, k_ui_align_middle_center, 0 );
+   }
+   vg_ui.font = &vg_ui_font_small;
+}
+
 /*
  * Debugging information
  */
@@ -400,30 +425,23 @@ static void remote_player_network_imgui( m4x4f pv ){
                       i, player->username, sysname, player->down_kbs );
             ui_info( panel, buf );
 
-            v4f wpos = { 0.0f, 2.0f, 0.0f, 1.0f };
             struct player_avatar *av = localplayer.playeravatar;
-            m4x3_mulv( netplayers.final_mtx[av->sk.bone_count*i], 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)-150;
-               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 );
-            }
+            remote_player_nametag( 
+                  pv, 
+                  netplayers.final_mtx[av->sk.bone_count*i][3], 
+                  player->username );
          }
       }
    }
    else {
       ui_info( panel, "offline" );
    }
+
+   struct player_avatar *av = localplayer.playeravatar;
+   remote_player_nametag( 
+         pv, 
+         localplayer.final_mtx[0][3], 
+         "Localplayer" );
 }
 
 /*