minor final stuff
[carveJwlIkooP6JGAAIwe30JlM.git] / player.c
index 1cca4caae1a6eb2a88ccc067532d6bed5970edd0..52e56838b8986b815f748163ca84e62890fffd19 100644 (file)
--- a/player.c
+++ b/player.c
@@ -40,6 +40,7 @@ VG_STATIC void player_init(void)
    VG_VAR_F32( k_cam_punch );
    VG_VAR_F32( k_cam_shake_strength );
    VG_VAR_F32( k_cam_shake_trackspeed );
+   VG_VAR_I32( k_player_debug_info );
 
    vg_console_reg_var( "cinema", &k_cinema, k_var_dtype_f32, 0 );
    vg_console_reg_var( "cinema_fixed", &k_cinema_fixed, k_var_dtype_i32, 0 );
@@ -50,7 +51,6 @@ VG_STATIC void player_init(void)
 PLAYER_API
 void player__debugtext( int size, const char *fmt, ... )
 {
-#if 0
        char buffer[ 1024 ];
 
    va_list args;
@@ -58,9 +58,8 @@ void player__debugtext( int size, const char *fmt, ... )
    vsnprintf( buffer, 1024, fmt, args );
    va_end( args );
 
-   ui_text( vg_uictx.cursor, buffer, size, k_text_align_right );
-       vg_uictx.cursor[1] += 14*size;
-#endif
+   ui_text( g_player_debugger, buffer, size, k_ui_align_left, 0 );
+   g_player_debugger[1] += size*16;
 }
 
 /*
@@ -306,35 +305,40 @@ VG_STATIC void gate_rotate_angles( ent_gate *gate, v3f angles, v3f d )
    d[0] = atan2f( fwd_dir[2], fwd_dir[0] );
 }
 
-PLAYER_API void player__im_gui( player_instance *player )
-{
-#if 0
-   vg_uictx.cursor[0] = vg.window_x - 200;
-   vg_uictx.cursor[1] = 0;
-   vg_uictx.cursor[2] = 200;
-   vg_uictx.cursor[3] = 200;
+PLAYER_API void player__im_gui( player_instance *player ){
+   if( !k_player_debug_info ) return;
+
+   ui_rect box = {
+      vg.window_x - 300,
+      0, 
+      300,
+      vg.window_y
+   };
 
-   struct ui_vert *b = ui_fill_rect( vg_uictx.cursor, 0x70000000 );
+   ui_fill( box, (ui_colour(k_ui_bg)&0x00ffffff)|0x50000000 );
 
-   vg_uictx.cursor[0] = vg.window_x;
+   g_player_debugger[0] = box[0];
+   g_player_debugger[1] = 0;
+   g_player_debugger[2] = 300;
+   g_player_debugger[3] = 16;
 
    player__debugtext( 1, "angles: " PRINTF_v3f( player->cam.angles ) );
    player__debugtext( 1, "basis:  " PRINTF_v4f( player->qbasis ) );
 
    if( _player_im_gui[ player->subsystem ] )
       _player_im_gui[ player->subsystem ]( player );
-
-   b[2].co[1] = vg_uictx.cursor[1];
-   b[3].co[1] = vg_uictx.cursor[1];
-#endif
 }
 
 VG_STATIC void global_skateshop_exit(void);
-PLAYER_API void player__spawn( player_instance *player, 
-                               ent_spawn *rp )
-{
-   v3_copy( rp->transform.co, player->rb.co );
+
+PLAYER_API void player__setpos( player_instance *player, v3f pos ){
+   v3_copy( pos, player->rb.co );
    v3_zero( player->rb.v );
+   rb_update_transform( &player->rb );
+}
+
+PLAYER_API void player__spawn( player_instance *player, ent_spawn *rp ){
+   player__setpos( player, rp->transform.co );
    v3_zero( player->rb.w );
    q_identity( player->rb.q );
    rb_update_transform( &player->rb );
@@ -359,8 +363,7 @@ PLAYER_API void player__spawn( player_instance *player,
 }
 
 
-PLAYER_API void player__kill( player_instance *player )
-{
+PLAYER_API void player__kill( player_instance *player ){
    
 }