10 void() Sys_Debug_Init =
12 registercvar( SYSTEM_CVAR_VERSION_BUILDDATE, SYSTEM_CVAR_VERSION_BUILDDATE_VALUE, CVAR_READONLY );
13 registercvar( SYSTEM_CVAR_VERSION_BUILDTIME, SYSTEM_CVAR_VERSION_BUILDTIME_VALUE, CVAR_READONLY );
14 registercvar( SYSTEM_CVAR_VERSION, SYSTEM_CVAR_VERSION_VALUE, CVAR_READONLY );
16 registercvar( SYSTEM_CVAR_DEBUG, ftos( SYSTEM_CVAR_DEBUG_DEFAULT ), 0 );
17 registercvar( SYSTEM_CVAR_DEBUG_REF, ftos( SYSTEM_CVAR_DEBUG_REF_DEFAULT ), 0 );
18 registercvar( SYSTEM_CVAR_DEBUG_RUNFLAG, ftos( SYSTEM_CVAR_DEBUG_RUNFLAG_DEFAULT ), 0 );
19 registercvar( SYSTEM_CVAR_DEBUG_PROCESS, ftos( SYSTEM_CVAR_DEBUG_PROCESS_DEFAULT ), 0 );
20 registercvar( SYSTEM_CVAR_DEBUG_MGFX, ftos( SYSTEM_CVAR_DEBUG_MGFX_DEFAULT ), 0 );
21 registercvar( SYSTEM_CVAR_DEBUG_STRUCTURE, ftos( SYSTEM_CVAR_DEBUG_STRUCTURE_DEFAULT ), 0 );
22 registercvar( SYSTEM_CVAR_DEBUG_PARSER, SYSTEM_CVAR_DEBUG_PARSER_DEFAULT, 0 );
23 registercvar( SYSTEM_CVAR_DEBUG_PROCESS_FILTER, SYSTEM_CVAR_DEBUG_PROCESS_FILTER_DEFAULT, 0 );
24 registercvar( SYSTEM_CVAR_DEBUG_SOUND, ftos( SYSTEM_CVAR_DEBUG_SOUND_DEFAULT ), 0 );
25 registercvar( SYSTEM_CVAR_DEBUG_DUMP_NAMES, "0", 0 );
26 registercvar( SYSTEM_CVAR_DEBUG_AREA, ftos( SYSTEM_CVAR_DEBUG_AREA_DEFAULT ), 0 );
27 registercvar( SYSTEM_CVAR_DEBUG_STEP, ftos( SYSTEM_CVAR_DEBUG_STEP_DEFAULT ), 0 );
28 registercvar( SYSTEM_CVAR_DEBUG_MOUSE, ftos( SYSTEM_CVAR_DEBUG_MOUSE_DEFAULT ), 0 );
36 void() Sys_Debug_Frame =
38 local float lTemp1, lTemp2;
39 sys_debug = cvar( SYSTEM_CVAR_DEBUG );
41 sys_debug_ref = cvar( SYSTEM_CVAR_DEBUG_REF );
43 sys_debug_area = cvar( SYSTEM_CVAR_DEBUG_AREA );
45 sys_debug_sound = cvar( SYSTEM_CVAR_DEBUG_SOUND );
47 sys_debug_structure = cvar( SYSTEM_CVAR_DEBUG_STRUCTURE );
49 sys_debug_mouse = cvar( SYSTEM_CVAR_DEBUG_MOUSE );
51 if( cvar( SYSTEM_CVAR_DEBUG_STEP ) ) {
53 print( "Menu: -- Step: Time:", ftos( gettime() ), "\n" );
56 sys_debug_runflag = cvar( SYSTEM_CVAR_DEBUG_RUNFLAG );
57 // FIXME: evil bug in fteqcc!! dont pass function calls to switches
58 switch( sys_debug_runflag ) {
60 sys_debug_runflag = false;
63 cvar_set( SYSTEM_CVAR_DEBUG_RUNFLAG, "0" );
65 sys_debug_runflag = true;
69 sys_debug_process = cvar( SYSTEM_CVAR_DEBUG_PROCESS );
70 switch( sys_debug_process ) {
72 sys_debug_process = false;
75 cvar_set( SYSTEM_CVAR_DEBUG_PROCESS, "0" );
77 sys_debug_process = true;
81 sys_debug_mgfx = cvar( SYSTEM_CVAR_DEBUG_MGFX );
82 switch( sys_debug_mgfx ) {
84 sys_debug_mgfx = false;
87 cvar_set( SYSTEM_CVAR_DEBUG_MGFX, "0" );
89 sys_debug_mgfx = true;
93 lTemp1 = tokenize( str_cvar( SYSTEM_CVAR_DEBUG_PROCESS_FILTER ) );
94 sys_debug_process_filter = 0;
95 for( lTemp2 = 0 ; lTemp2 < lTemp1 ; ++lTemp2 )
96 if( argv( lTemp2 ) == "runflag" )
97 sys_debug_process_filter = sys_debug_process_filter | MENU_PROCESS_RUNFLAG;
98 else if( argv( lTemp2 ) == "draw" )
99 sys_debug_process_filter = sys_debug_process_filter | MENU_PROCESS_DRAW;
100 else if( argv( lTemp2 ) == "update" )
101 sys_debug_process_filter = sys_debug_process_filter | MENU_PROCESS_UPDATE;
102 else if( argv( lTemp2 ) == "mouse" )
103 sys_debug_process_filter = sys_debug_process_filter | MENU_PROCESS_MOUSE;
104 else if( argv( lTemp2 ) == "key" )
105 sys_debug_process_filter = sys_debug_process_filter | MENU_PROCESS_KEY;
107 lTemp1 = tokenize( str_cvar( SYSTEM_CVAR_DEBUG_PARSER ) );
108 sys_debug_parser = 0;
109 for( lTemp2 = 0 ; lTemp2 < lTemp1 ; ++lTemp2 )
110 if( argv( lTemp2 ) == "info" )
111 sys_debug_parser = sys_debug_parser | PARSER_INFO;
112 else if( argv( lTemp2 ) == "high" )
113 sys_debug_parser = sys_debug_parser | PARSER_HIGH;
114 else if( argv( lTemp2 ) == "low" )
115 sys_debug_parser = sys_debug_parser | PARSER_LOW;
119 sys_debug_ref = false;
120 sys_debug_area = false;
121 sys_debug_sound = false;
122 sys_debug_runflag = 0;
123 sys_debug_process = 0;
124 sys_debug_mgfx = false;
125 sys_debug_structure = 0;
126 sys_debug_parser = 0;
127 sys_debug_process_filter = 0;
130 if( cvar( SYSTEM_CVAR_DEBUG_DUMP_NAMES ) ) {
131 Sys_Debug_DumpNames();
132 cvar_set( SYSTEM_CVAR_DEBUG_DUMP_NAMES, "0" );
134 sys_debug_cursor_localpos = '-1 -1 -1';
142 void() Sys_Debug_Draw =
144 if( sys_debug_mouse == 1 )
145 Cursor_PrintInfo( '1 0 0', strcat( ftos( floor( sys_debug_cursor_localpos_x ) ),
146 " ", ftos( floor( sys_debug_cursor_localpos_y ) ) ), '9 9 0', '0.8 0.8 0.8',
147 1, DRAWFLAG_ADDITIVE );
148 else if( sys_debug_mouse == 2 )
149 Cursor_PrintInfo( '1 0 0', strcat( ftos( floor( Cursor_Position_x ) ), " ",
150 ftos( floor( Cursor_Position_y ) ) ), '9 9 0', '0.8 0.8 0.8', 1, DRAWFLAG_ADDITIVE );
158 void() Sys_Debug_DumpNames =
162 print( "Menu: Dumping names..\n" );
165 while( (lNode = nextent( lNode )) != null_entity )
166 print( "Menu: ", etos( lNode ), " <-> ", lNode.name, "\n" );