161 lines
14 KiB
Plaintext
161 lines
14 KiB
Plaintext
#using scripts\codescripts\struct;
|
|
|
|
#using scripts\shared\archetype_shared\archetype_shared;
|
|
#using scripts\shared\audio_shared;//DO NOT REMOVE - needed for system registration
|
|
#using scripts\shared\clientfield_shared;
|
|
#using scripts\shared\clientfaceanim_shared;
|
|
#using scripts\shared\flagsys_shared;
|
|
#using scripts\shared\footsteps_shared;//DO NOT REMOVE - needed for system registration
|
|
#using scripts\shared\load_shared;
|
|
#using scripts\shared\music_shared;
|
|
#using scripts\shared\player_shared;//DO NOT REMOVE - needed for system registration
|
|
#using scripts\shared\_oob;
|
|
#using scripts\shared\scene_shared;
|
|
#using scripts\shared\system_shared;
|
|
#using scripts\shared\turret_shared;
|
|
#using scripts\shared\postfx_shared;
|
|
#using scripts\shared\util_shared;
|
|
#using scripts\shared\vehicle_shared;
|
|
#using scripts\shared\weapons\_bouncingbetty;
|
|
#using scripts\shared\weapons\_hive_gun;
|
|
#using scripts\shared\weapons\spike_charge;
|
|
#using scripts\shared\weapons\_lightninggun;
|
|
#using scripts\shared\weapons\_pineapple_gun;
|
|
#using scripts\shared\weapons\_proximity_grenade;
|
|
#using scripts\shared\weapons\_riotshield;
|
|
#using scripts\shared\weapons\_satchel_charge;
|
|
#using scripts\shared\weapons\_tacticalinsertion;
|
|
#using scripts\shared\weapons\_trophy_system;
|
|
#using scripts\shared\weapons\_weaponobjects;
|
|
#using scripts\shared\weapons\multilockapguidance;
|
|
|
|
|
|
|
|
#using scripts\mp\_util;
|
|
|
|
//System registration
|
|
#using scripts\mp\_ambient;
|
|
#using scripts\shared\_burnplayer;
|
|
#using scripts\mp\_callbacks;
|
|
#using scripts\mp\_ctf;
|
|
#using scripts\mp\_destructible;
|
|
// #using scripts\mp\_devgui; // never add this to mp (it's for mp frontend only)
|
|
#using scripts\mp\_global_fx;
|
|
#using scripts\mp\_multi_extracam;
|
|
#using scripts\mp\_perks;
|
|
#using scripts\mp\_radiant_live_update;
|
|
#using scripts\mp\_rewindobjects;
|
|
#using scripts\mp\_rotating_object;
|
|
#using scripts\mp\_vehicle;
|
|
#using scripts\mp\_end_game_flow;
|
|
#using scripts\mp\mpdialog;
|
|
|
|
//Gametype registration
|
|
#using scripts\mp\gametypes\_classicmode;
|
|
|
|
//Weapon registration
|
|
#using scripts\shared\weapons\_sticky_grenade;
|
|
#using scripts\mp\_bouncingbetty;
|
|
#using scripts\mp\_hacker_tool;
|
|
#using scripts\mp\_hive_gun;
|
|
#using scripts\mp\_claymore;
|
|
#using scripts\mp\_decoy;
|
|
#using scripts\mp\_explosive_bolt;
|
|
#using scripts\mp\_flashgrenades;
|
|
#using scripts\mp\_gravity_spikes;
|
|
#using scripts\mp\_lightninggun;
|
|
#using scripts\mp\_proximity_grenade;
|
|
#using scripts\mp\_riotshield;
|
|
#using scripts\mp\_satchel_charge;
|
|
#using scripts\mp\_threat_detector;
|
|
#using scripts\mp\_tacticalinsertion;
|
|
#using scripts\mp\_trophy_system;
|
|
#using scripts\mp\gametypes\_weaponobjects;
|
|
|
|
//Killstreak registration
|
|
#using scripts\mp\_helicopter_sounds;
|
|
#using scripts\mp\killstreaks\_counteruav;
|
|
#using scripts\mp\killstreaks\_dart;
|
|
#using scripts\mp\killstreaks\_emp;
|
|
#using scripts\mp\killstreaks\_helicopter;
|
|
#using scripts\mp\killstreaks\_helicopter_gunner;
|
|
#using scripts\mp\killstreaks\_flak_drone;
|
|
#using scripts\mp\killstreaks\_microwave_turret;
|
|
#using scripts\mp\killstreaks\_planemortar;
|
|
#using scripts\mp\killstreaks\_remotemissile;
|
|
#using scripts\mp\killstreaks\_raps;
|
|
#using scripts\mp\killstreaks\_turret;
|
|
#using scripts\mp\killstreaks\_killstreak_detect;
|
|
|
|
|
|
//Abilities registration
|
|
#using scripts\shared\abilities\_ability_player;
|
|
|
|
#namespace load;
|
|
|
|
function levelNotifyHandler(clientNum, state, oldState)
|
|
{
|
|
if(state != "")
|
|
{
|
|
level notify(state,clientNum);
|
|
}
|
|
}
|
|
|
|
function main()
|
|
{
|
|
/#
|
|
|
|
Assert( isdefined( level.first_frame ), "There should be no waits before load::main." );
|
|
|
|
#/
|
|
|
|
level thread util::serverTime();
|
|
level thread util::init_utility();
|
|
|
|
util::registerSystem("levelNotify",&levelNotifyHandler);
|
|
|
|
register_clientfields();
|
|
|
|
level.createFX_disable_fx = (GetDvarInt("disable_fx") == 1);
|
|
|
|
//The functions are threaded just in case any of them create 'wait's. Note these functions should not have 'wait's in their 'init' and 'main' functions.
|
|
|
|
// footsteps();
|
|
|
|
system::wait_till( "all" );
|
|
|
|
level flagsys::set( "load_main_complete" );
|
|
}
|
|
|
|
/*footsteps()
|
|
{
|
|
util::setFootstepEffect( "asphalt", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "brick", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "carpet", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "cloth", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "concrete", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "dirt", "_t6/bio/player/fx_footstep_sand" );
|
|
util::setFootstepEffect( "foliage", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "gravel", "_t6/bio/player/fx_footstep_sand" );
|
|
util::setFootstepEffect( "grass", "_t6/bio/player/fx_footstep_sand" );
|
|
util::setFootstepEffect( "metal", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "mud", "_t6/bio/player/fx_footstep_mud" );
|
|
util::setFootstepEffect( "paper", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "plaster", "_t6/bio/player/fx_footstep_dust" );
|
|
util::setFootstepEffect( "rock", "_t6/bio/player/fx_footstep_sand" );
|
|
util::setFootstepEffect( "sand", "_t6/bio/player/fx_footstep_sand" );
|
|
util::setFootstepEffect( "water", "_t6/bio/player/fx_footstep_water" );
|
|
util::setFootstepEffect( "wood", "_t6/bio/player/fx_footstep_dust" );
|
|
}*/
|
|
|
|
function register_clientfields()
|
|
{
|
|
clientfield::register( "missile", "cf_m_proximity", 1, 1, "int", &callback::callback_proximity, !true, !true );
|
|
clientfield::register( "missile", "cf_m_emp", 1, 1, "int", &callback::callback_emp, !true, !true );
|
|
clientfield::register( "missile", "cf_m_stun", 1, 1, "int", &callback::callback_stunned, !true, !true );
|
|
|
|
//clientfield::register( "scriptmover", "cf_s_emp", VERSION_SHIP, 1, "int", &callback::callback_emp, !CF_HOST_ONLY, !CF_CALLBACK_ZERO_ON_NEW_ENT );
|
|
//clientfield::register( "scriptmover", "cf_s_stun", VERSION_SHIP, 1, "int", &callback::callback_stunned, !CF_HOST_ONLY, !CF_CALLBACK_ZERO_ON_NEW_ENT );
|
|
|
|
}
|