refactor player
[carveJwlIkooP6JGAAIwe30JlM.git] / main.c
diff --git a/main.c b/main.c
index c306aa50f1292a0701fae233776fe14b7a4a67ee..0732057dab95eb68745b26280e5e15670240c13f 100644 (file)
--- a/main.c
+++ b/main.c
@@ -1,5 +1,9 @@
 /*
- * Copyright (C) Mount0 Software, Harry Godden - All Rights Reserved
+ * Copyright 2021-2022 (C) Mount0 Software, Harry Godden - All Rights Reserved
+ *
+ * module.h               structure definitions
+ *  module_submodule.h    implementation
+ *  module_submodule_2.h
  */
 
 #include "common.h"
@@ -21,7 +25,7 @@ static int sv_scene = 0;
 static int cl_ui = 1;
 
 /* Components */
-//#define SR_NETWORKED
+#define SR_NETWORKED
 
 /* uncomment this to run the game without any graphics being drawn */
 //#define SR_NETWORK_TEST
@@ -59,8 +63,8 @@ void vg_register(void)
    shader_vblend_register();
    shader_unlit_register();
 
+   player_register();
    world_register();
-   character_register();
    water_register();
    gate_register();
 }
@@ -71,7 +75,6 @@ static void init_other(void)
    render_init();
    gate_init();
    world_init();
-   character_init();
    audio_init();
 }
 
@@ -88,6 +91,7 @@ vg_tex2d *texture_list[] =
 
 int main( int argc, char *argv[] )
 { 
+   highscores_init( 2000, 50 );
    vg_init( argc, argv, "Voyager Game Engine" ); 
 }
 
@@ -97,7 +101,7 @@ static int playermodel( int argc, char const *argv[] )
    
    glmesh old_mesh = player.mdl.mesh;
 
-   if( character_load( &player.mdl, argv[0] ) )
+   if( player_load_model( argv[0] ) )
       mesh_free( &old_mesh );
 
    return 1;
@@ -228,8 +232,7 @@ void vg_start(void)
 
    if( sv_scene == 0 )
    {
-      character_load( &player.mdl, "ch_new" );
-      character_init_ragdoll( &player.mdl );
+      player_load_model( "ch_new" );
 
       world_load();
 
@@ -254,6 +257,9 @@ void vg_free(void)
    vg_tex2d_free( texture_list, vg_list_size(texture_list) );
    /* TODO: THE REST OF THE GOD DAMN FREEING STUFF */
    steam_end();
+
+   highscores_serialize_all();
+   highscores_free();
 }
 
 void vg_update(void)
@@ -330,7 +336,7 @@ static void render_main_game(void)
    render_water_surface( vg_pv, player.camera );
 
    vg_tex2d_bind( &tex_water, 1 ); /*TODO: ?*/
-   render_world_gates( vg_pv, player.camera );
+   render_world_gates( vg_pv, player.rb.co, player.camera );
    
    /* Copy the RGB of what we have into the background buffer */
    glBindFramebuffer( GL_READ_FRAMEBUFFER, 0 );