mirror of
https://github.com/JezuzLizard/t6-fastfile-mods.git
synced 2025-04-23 15:05:44 +00:00
115 lines
2.6 KiB
Plaintext
115 lines
2.6 KiB
Plaintext
|
|
main()
|
|
{
|
|
level thread on_player_connecting();
|
|
}
|
|
|
|
init()
|
|
{
|
|
keys = getarraykeys( level.clientfield_alts );
|
|
for ( i = 0; i < keys.size; i++ )
|
|
{
|
|
if ( keys[ i ] == "toplayer" )
|
|
{
|
|
continue;
|
|
}
|
|
fields = level.clientfield_alts[ keys[ i ] ];
|
|
for ( j = 0; j < fields.size; j++ )
|
|
{
|
|
initialize_clientfield_alt_storage_for_level( fields[ j ] );
|
|
level thread send_clientdvar_messages_allplayers( fields[ j ] );
|
|
}
|
|
}
|
|
}
|
|
|
|
on_player_connecting()
|
|
{
|
|
for (;;)
|
|
{
|
|
level waittill( "connecting", player );
|
|
fields = level.clientfield_alts[ "toplayer" ];
|
|
for ( i = 0; i < fields.size; i++ )
|
|
{
|
|
player initialize_clientfield_alt_storage_for_player( fields[ i ] );
|
|
player send_clientdvar_messages_toplayer( fields[ i ] );
|
|
}
|
|
}
|
|
}
|
|
|
|
set_clientfield_alt_toplayer( field_name, ent, value )
|
|
{
|
|
entnum = ent getEntityNumber();
|
|
self.clientfield_alt_storage[ field_name ] += entnum + " " + value + "|";
|
|
}
|
|
|
|
send_clientdvar_messages_toplayer( field_name )
|
|
{
|
|
self endon( "disconnect" );
|
|
for (;;)
|
|
{
|
|
wait 0.05;
|
|
|
|
if ( self.clientfield_alt_storage[ field_name ] == "" )
|
|
{
|
|
continue;
|
|
}
|
|
self setclientdvar( field_name, self.clientfield_alt_storage[ field_name ] );
|
|
self.clientfield_alt_storage[ field_name ] = "";
|
|
}
|
|
}
|
|
|
|
set_clientfield_alt_allplayers( field_name, ent, value )
|
|
{
|
|
entnum = ent getEntityNumber();
|
|
level.clientfield_alt_storage[ field_name ] += entnum + " " + value + "|";
|
|
}
|
|
|
|
send_clientdvar_messages_allplayers( field_name )
|
|
{
|
|
for (;;)
|
|
{
|
|
wait 0.05;
|
|
|
|
if ( level.clientfield_alt_storage[ field_name ] == "" )
|
|
{
|
|
continue;
|
|
}
|
|
for ( i = 0; i < level.players.size; i++ )
|
|
{
|
|
level.players[ i ] setclientdvar( field_name, level.clientfield_alt_storage[ field_name ] );
|
|
}
|
|
level.clientfield_alt_storage[ field_name ] = "";
|
|
}
|
|
}
|
|
|
|
initialize_clientfield_alt_storage_for_player( field_name )
|
|
{
|
|
if ( !isdefined( self.clientfield_alt_storage ) )
|
|
{
|
|
self.clientfield_alt_storage = [];
|
|
}
|
|
self.clientfield_alt_storage[ field_name ] = "";
|
|
}
|
|
|
|
initialize_clientfield_alt_storage_for_level( field_name )
|
|
{
|
|
if ( !isdefined( level.clientfield_alt_storage ) )
|
|
{
|
|
level.clientfield_alt_storage = [];
|
|
}
|
|
level.clientfield_alt_storage[ field_name ] = "";
|
|
}
|
|
|
|
register_clientfield_alt( field_type, field_name )
|
|
{
|
|
if ( !isDefined( level.clientfield_alts ) )
|
|
{
|
|
level.clientfield_alts = [];
|
|
}
|
|
if ( !isDefined( level.clientfield_alts[ field_type ] ) )
|
|
{
|
|
level.clientfield_alts[ field_type ] = [];
|
|
}
|
|
|
|
level.clientfield_alts[ field_type ][ level.clientfield_alts[ field_type ].size ] = field_name;
|
|
} |