audio_unlock();
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "aud_debug_soundscape",
.data = &k_audio_debug_soundscape,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "aud_occlusion_rate",
.data = &k_audio_occlusion_rate,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
VG_STATIC void g_conf_init(void)
{
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_fov",
.data = &cl_fov,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_blur_strength",
.data = &cl_blur_strength,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_blur",
.data = &cl_blur,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_playermdl_id",
.data = &cl_playermdl_id,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=2, .clamp=1 },
.persistent = 1
});
*/
VG_STATIC int kill_player( int argc, char const *argv[] );
VG_STATIC int reset_player( int argc, char const *argv[] );
+VG_STATIC void reset_player_poll( int argc, char const *argv[] );
VG_STATIC void player_init(void) /* 1 */
{
rb_init( &player.collide_front );
rb_init( &player.collide_back );
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "gwalk_speed",
.data = &k_walkspeed,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 0
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "air_accelerate",
.data = &k_air_accelerate,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 0
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "run_speed",
.data = &k_runspeed,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "walk_accel",
.data = &k_walk_accel,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "fc",
.data = &freecam,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_thirdperson",
.data = &cl_thirdperson,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "fcs",
.data = &fc_speed,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_ragdoll_limit_scale",
.data = &k_ragdoll_limit_scale,
- .data_type = k_convar_dtype_f32,
+ .data_type = k_var_dtype_f32,
.opt_f32 = { .clamp = 0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_ragdoll_div",
.data = &k_ragdoll_div,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .clamp=0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_ragdoll_debug_collider",
.data = &k_ragdoll_debug_collider,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .clamp=0 },
.persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_ragdoll_debug_constraints",
.data = &k_ragdoll_debug_constraints,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .clamp=0 },
.persistent = 1
});
vg_function_push( (struct vg_cmd){
.name = "reset",
- .function = reset_player
+ .function = reset_player,
+ .poll_suggest = reset_player_poll
});
vg_function_push( (struct vg_cmd){
return 1;
}
+VG_STATIC void reset_player_poll( int argc, char const *argv[] )
+{
+ if( argc == 1 )
+ {
+ for( int i=0; i<world.spawn_count; i++ )
+ {
+ struct respawn_point *r = &world.spawns[i];
+
+ console_suggest_score_text( r->name, argv[argc-1], 0 );
+ }
+ }
+}
+
#endif /* PLAYER_PHYSICS_H */
}
VG_STATIC int render_framebuffer_control( int argc, char const *argv[] );
+VG_STATIC void render_framebuffer_poll( int argc, char const *argv[] );
VG_STATIC void render_init_fs_quad(void)
{
vg_info( "[render] Allocate quad\n" );
vg_function_push( (struct vg_cmd)
{
.name = "fb",
- .function = render_framebuffer_control
+ .function = render_framebuffer_control,
+ .poll_suggest = render_framebuffer_poll
});
glGenVertexArrays( 1, &gpipeline.fsquad.vao );
return 0;
}
+VG_STATIC void render_framebuffer_poll( int argc, char const *argv[] )
+{
+ const char *term = argv[argc-1];
+
+ if( argc == 1 )
+ {
+ console_suggest_score_text( "show", term, 0 );
+ console_suggest_score_text( "hide", term, 0 );
+ }
+ else if( argc == 2 )
+ {
+ console_suggest_score_text( "all", term, 0 );
+
+ for( int i=0; i<vg_list_size(framebuffers); i++ )
+ {
+ struct framebuffer *fb = &framebuffers[i];
+ console_suggest_score_text( fb->display_name, term, 0 );
+ }
+ }
+ else if( argc == 3 )
+ {
+ int modify_all = 0;
+
+ if( !strcmp( argv[1], "all" ) )
+ modify_all = 1;
+
+ for( int i=0; i<vg_list_size(framebuffers); i++ )
+ {
+ struct framebuffer *fb = &framebuffers[i];
+
+ for( int j=0; j<vg_list_size(fb->attachments); j++ )
+ {
+ struct framebuffer_attachment *at = &fb->attachments[j];
+
+ if( at->purpose == k_framebuffer_attachment_type_none )
+ continue;
+
+ if( modify_all )
+ {
+ console_suggest_score_text( at->display_name, term, 0 );
+ }
+ else if( !strcmp( fb->display_name, argv[1] ) )
+ {
+ console_suggest_score_text( at->display_name, term, 0 );
+ }
+ }
+ }
+ }
+}
+
#endif /* RENDER_H */
VG_STATIC void rb_register_cvar(void)
{
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_limit_bias", .data = &k_limit_bias,
- .data_type = k_convar_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
+ .data_type = k_var_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_joint_bias", .data = &k_joint_bias,
- .data_type = k_convar_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
+ .data_type = k_var_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_joint_correction", .data = &k_joint_correction,
- .data_type = k_convar_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
+ .data_type = k_var_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "k_joint_impulse", .data = &k_joint_impulse,
- .data_type = k_convar_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
+ .data_type = k_var_dtype_f32, .opt_f32 = {.clamp = 0}, .persistent = 1
});
}
{
g_conf_init();
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_ui",
.data = &cl_ui,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 0
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "cl_view_id",
.data = &cl_view_id,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 0
});
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "ledit",
.data = &cl_light_edit,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 0
});
VG_STATIC void world_init(void)
{
- vg_convar_push( (struct vg_convar){
+ vg_var_push( (struct vg_var){
.name = "water_enable",
.data = &world.water.enabled,
- .data_type = k_convar_dtype_i32,
+ .data_type = k_var_dtype_i32,
.opt_i32 = { .min=0, .max=1, .clamp=1 },
.persistent = 0
});