struct vg_cmd
{
- void (*function)( int argc, char *argv[] );
+ int (*function)( int argc, char const *argv[] );
const char *name;
}
*functions;
vg_console.current = 0;
}
+static int vg_console_list( int argc, char const *argv[] )
+{
+ for( int i = 0; i < arrlen( vg_console.functions ); i ++ )
+ {
+ struct vg_cmd *cmd = &vg_console.functions[ i ];
+ vg_info( "* %s\n", cmd->name );
+ }
+
+ vg_info( "* snowsound\n" );
+
+ for( int i = 0; i < arrlen( vg_console.convars ); i ++ )
+ {
+ struct vg_convar *cv = &vg_console.convars[ i ];
+ vg_info( "%s\n", cv->name );
+ }
+
+ return 0;
+}
+
static void vg_console_init(void)
{
vg_log_callback = vg_console_println;
vg_convar_push( (struct vg_convar)
{ .name = "console_scale", .data = &vg_console.scale, .data_type = k_convar_dtype_i32,
.opt_i32 = { .clamp = 1, .min = 1, .max = 7 } } );
+
+ vg_function_push( (struct vg_cmd){
+ .name = "list",
+ .function = vg_console_list
+ });
}
static void vg_console_free(void)
static void execute_console_input( const char *cmd )
{
char temp[512];
- char *args[9];
+ char const *args[9];
int arg_count = 0;
int in_token = 0;
}
}
- vg_error( "No command/variable named '%s'\n", args[0] );
+ vg_error( "No command/variable named '%s'. Use 'list' to view all\n", args[0] );
}
// =============================================================================================================================