3 #using scripts\shared\array_shared;
4 #using scripts\shared\callbacks_shared;
5 #using scripts\shared\clientfield_shared;
6 #using scripts\shared\system_shared;
7 #using scripts\shared\util_shared;
9 #insert scripts\shared\aat_shared.gsh;
10 #insert scripts\shared\shared.gsh;
11 #insert scripts\shared\version.gsh;
19 level.aat_initializing =
true;
21 level.aat_default_info_icon =
"blacktransparent";
24 register(
AAT_RESERVED_NAME, level.aat_default_info_name, level.aat_default_info_icon );
40 function register(
name, localized_string, icon )
42 assert(
IS_TRUE( level.aat_initializing),
"All info registration in the AAT system must occur during the first frame while the system is initializing" );
44 assert( IsDefined(
name ),
"aat::register(): name must be defined" );
45 assert( !IsDefined( level.aat[
name] ),
"aat::register(): AAT '" +
name +
"' has already been registered" );
47 assert( IsDefined( localized_string ),
"aat::register(): localized_string must be defined" );
48 assert( IsDefined( icon ),
"aat::register(): icon must be defined" );
50 level.aat[
name] = SpawnStruct();
53 level.aat[
name].localized_string = localized_string;
54 level.aat[
name].icon = icon;
57 function aat_hud_manager( localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump )
59 if( IsDefined( level.update_aat_hud ) )
61 [[level.update_aat_hud]]( localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump );
68 /#println(
"AAT client registrations:" );#/
70 if ( level.aat.size > 1 )
72 array::alphabetize( level.aat );
75 foreach ( aat
in level.aat )
80 /#println(
" " + aat.name );#/
82 n_bits = GetMinBitCountForNum( level.aat.size - 1 );
86 level.aat_initializing =
false;
91 foreach ( aat
in level.aat )
93 if ( aat.n_index == n_aat_index )
95 return aat.localized_string;
98 return level.aat_default_info_name;
103 foreach ( aat
in level.aat )
105 if ( aat.n_index == n_aat_index )
111 return level.aat_default_info_icon;