boiii-scripts/mp/mp_redwood_ice.gsc
2023-04-13 17:30:38 +02:00

127 lines
9.5 KiB
Plaintext

#using scripts\codescripts\struct;
#using scripts\shared\util_shared;
#using scripts\shared\compass;
#using scripts\mp\_load;
#using scripts\mp\_util;
#using scripts\mp\mp_redwood_ice_fx;
#using scripts\mp\mp_redwood_ice_sound;
#using scripts\mp\gametypes\_ball_utils;
#using scripts\shared\_oob;
#precache( "model", "p7_antenna_outpost_tower" );
function main()
{
precache();
level.uav_z_offset = 500;
level.uav_rotation_radius = 1000;
level.uav_rotation_random_offset = 1000;
level.counter_uav_position_z_offset = 0;
level.cuav_map_x_percentage = 0.25;
level.heli_visual_range_override = 10000;
level.raps_hurt_trigger_immune_duration_ms = 10000;
level.escort_drop_speed = 7000;
level.escort_drop_accel = 5000;
level.escort_drop_height = 3000;
trigger = spawn( "trigger_radius_out_of_bounds", (-1499 , -293.5 , -139.5), 0, 500, 128 );
trigger thread oob::run_oob_trigger();
trigger = spawn( "trigger_radius_out_of_bounds", (1010.5 , -738 , -276), 0, 600, 300 );
trigger thread oob::run_oob_trigger();
trigger = spawn( "trigger_radius_out_of_bounds", (-1449 , 234 , -302), 0, 256, 300 );
trigger thread oob::run_oob_trigger();
//Bad umbra corner in the overlook bunker
pole1 = spawn("script_model",( -850.826 , 725.766 , 60 ));
pole1.angles = ( 0, 120, 0);
pole1 SetModel("p7_antenna_outpost_tower");
pole2 = spawn("script_model",( -852.076 , 728.516 , 60 ));
pole2.angles = ( 0, 120, 0);
pole2 SetModel("p7_antenna_outpost_tower");
mp_redwood_ice_fx::main();
mp_redwood_ice_sound::main();
load::main();
compass::setupMiniMap( "compass_map_mp_redwood_ice" );
SetDvar( "compassmaxrange", "2100" ); // Set up the default range of the compass
// Stockpile hub points
level.cleanDepositPoints = Array ( ( -448.776 , -210.531 , 50.5891 ),
( 1928.72 , 191.469 , 270.089 ),
( 570.724 , -732.031 , 165.589 ),
( -1356.28 , 58.969 , 63.0891 ),
( -955.276 , -1142.53 , 156.089 ) );
level spawnKillTrigger();
}
function precache()
{
// DO ALL PRECACHING HERE
}
function spawnKillTrigger()
{
trigger = spawn( "trigger_radius", ( 2772.36, -2224.02, -77.52 ), 0, 500, 300 );
trigger thread watchKillTrigger();
ball::add_ball_return_trigger( trigger );
trigger = spawn( "trigger_radius", ( -1861.10, 1546.53, -106.53 ), 0, 175, 300 );
trigger thread watchKillTrigger();
ball::add_ball_return_trigger( trigger );
// Killtriggers for bad clip exploit in bridgeside vista Devtrack issues 180107 150102 149574
trigger = spawn( "trigger_radius", ( -1872 , 568 , -440 ), 0, 128, 416 );
trigger thread watchKillTrigger();
trigger = spawn( "trigger_radius", ( -2080 , 600 , -440 ), 0, 128, 672 );
trigger thread watchKillTrigger();
trigger = spawn( "trigger_radius", ( -2232 , 440 , -440 ), 0, 128, 900 );
trigger thread watchKillTrigger();
trigger = spawn( "trigger_radius", ( -2352 , 248 , -440 ), 0, 128, 1120 );
trigger thread watchKillTrigger();
trigger = spawn( "trigger_radius", ( -2128 , 200 , -440 ), 0, 128, 800 );
trigger thread watchKillTrigger();
trigger = spawn( "trigger_radius", ( -1928 , 200 , -440 ), 0, 128, 540 );
trigger thread watchKillTrigger();
trigger = spawn( "trigger_radius", ( -1768 , 312 , -440 ), 0, 128, 192 );
trigger thread watchKillTrigger();
//Missing kill brush outside the gate on the west of the map.
trigger = spawn( "trigger_radius", ( -1752, 1914, -168 ), 0, 150, 256 );
trigger thread watchKillTrigger();
ball::add_ball_return_trigger( trigger );
}
function watchKillTrigger()
{
level endon( "game_ended" );
trigger = self;
while(1)
{
trigger waittill( "trigger", player );
player DoDamage(1000, trigger.origin + (0, 0, 0), trigger, trigger, "none", "MOD_SUICIDE", 0 );
}
}