Notices & clean
[carveJwlIkooP6JGAAIwe30JlM.git] / player.h
index e4c0fced5366a51cbfa083bd514d53e030705629..5dd9401dbfca38fd3b922622aeff98b11de9eb4e 100644 (file)
--- a/player.h
+++ b/player.h
@@ -1,10 +1,5 @@
 /*
- * Copyright 2021-2022 (C) Mount0 Software, Harry Godden - All Rights Reserved
- * -----------------------------------------------------------------------------
- *
- * Player head module
- *
- * -----------------------------------------------------------------------------
+ * Copyright (C) 2021-2022 Mt.ZERO Software, Harry Godden - All Rights Reserved
  */
 
 #ifndef PLAYER_H
@@ -177,17 +172,59 @@ static void player_restore_frame(void);
  * -----------------------------------------------------------------------------
  */
 
-static void player_register(void)                                        /* 0 */
-{
-   player_model_register();
-}
-
 static void player_init(void)                                            /* 1 */
 {
-   player_model_init();
-
+   rb_init( &player.phys.rb );
    rb_init( &player.collide_front );
    rb_init( &player.collide_back  );
+
+   vg_convar_push( (struct vg_convar){
+      .name = "walk_speed",
+      .data = &k_walkspeed,
+      .data_type = k_convar_dtype_f32,
+      .opt_f32 = { .clamp = 0 },
+      .persistent = 1
+   });
+
+   vg_convar_push( (struct vg_convar){
+      .name = "run_speed",
+      .data = &k_runspeed,
+      .data_type = k_convar_dtype_f32,
+      .opt_f32 = { .clamp = 0 },
+      .persistent = 1
+   });
+
+   vg_convar_push( (struct vg_convar){
+      .name = "walk_accel",
+      .data = &k_walk_accel,
+      .data_type = k_convar_dtype_f32,
+      .opt_f32 = { .clamp = 0 },
+      .persistent = 1
+   });
+
+   vg_convar_push( (struct vg_convar){
+      .name = "fc",
+      .data = &freecam,
+      .data_type = k_convar_dtype_i32,
+      .opt_i32 = { .min=0, .max=1, .clamp=1 },
+      .persistent = 1
+   });
+
+   vg_convar_push( (struct vg_convar){
+      .name = "fcs",
+      .data = &fc_speed,
+      .data_type = k_convar_dtype_f32,
+      .opt_f32 = { .clamp = 0 },
+      .persistent = 1
+   });
+
+       vg_function_push( (struct vg_cmd){
+               .name = "reset",
+               .function = reset_player
+       });
+
+   /* other systems */
+   vg_loader_highwater( player_model_init, player_model_free, NULL );
 }
 
 static void player_update(void)                                          /* 2 */
@@ -220,12 +257,13 @@ static void player_update(void)                                          /* 2 */
       phys->on_board ^= 0x1;
    }
 
-   if( (glfwGetKey( vg_window, GLFW_KEY_O ) || (phys->rb.co[1] < 0.0f)) &&
-       !player.is_dead)
+#if 0
+   if( (glfwGetKey( vg_window, GLFW_KEY_O ) ))
    {
       player_ragdoll_copy_model( phys->rb.v );
       player.is_dead = 1;
    }
+#endif
 
    if( player.is_dead )
    {