142 lines
13 KiB
Plaintext
142 lines
13 KiB
Plaintext
#using scripts\codescripts\struct;
|
|
|
|
#using scripts\shared\_oob;
|
|
#using scripts\shared\compass;
|
|
#using scripts\shared\util_shared;
|
|
|
|
|
|
|
|
#using scripts\mp\_load;
|
|
#using scripts\mp\_util;
|
|
|
|
#using scripts\mp\mp_biodome_fx;
|
|
#using scripts\mp\mp_biodome_sound;
|
|
|
|
|
|
|
|
|
|
|
|
#precache( "model", "collision_clip_512x512x512" );
|
|
#precache( "model", "collision_clip_256x256x256" );
|
|
#precache( "model", "collision_clip_wall_64x64x10" );
|
|
#precache( "model", "collision_clip_wall_128x128x10" );
|
|
|
|
#precache( "model", "p7_crate_ammo_metal_small" ); #precache( "model", "p7_sandbag_civilian_01" ); #precache( "model", "p7_fire_extinguisher_digital_off" ); #precache( "model", "p7_sin_penguin_sign_01" ); #precache( "model", "p7_storage_bin_plastic_green" ); #precache( "model", "p7_bucket_janitor_plastic_rolling" ); #precache( "model", "p7_bucket_plastic_5_gal_closed_yellow" ); #precache( "model", "p7_sin_aquarium_info_kiosk_ph" ); #precache( "model", "p7_light_work_utility_portable_01" ); #precache( "model", "p7_log_wood_small_01" ); #precache( "model", "p7_box_case_metal_02_large_weathered" ); #precache( "model", "p7_sin_signage_sidewalk_board_02" ); #precache( "model", "p7_tank_nitrogen_metal" ); #precache( "model", "p7_crate_plastic_tech_01" ); #precache( "model", "p7_sin_trashcan_wood" ); #precache( "model", "p7_sin_trash_can_plastic_01" ); #precache( "model", "p7_bench_wood_locker_room_dirty" ); #precache( "model", "p7_cai_ticket_kiosk_theatre" ); #precache( "model", "p7_pallet_truck_dirty" ); #precache( "model", "p7_sin_penguin_sign_01" ); #precache( "model", "p7_sin_stacking_cargo_crate_54igraffiti" ); #precache( "model", "p7_monitor_wall_safehouse_01_flat_dmg_01" ); #precache( "model", "p7_cargo_pallet_02" ); #precache( "model", "veh_t7_drone_siege_rocket_54i_d" ); #precache( "model", "p7_sin_bio_monument_lg_wave_256" ); #precache( "model", "p7_sin_leaf_post_shade_ph" ); #precache( "model", "p7_cargo_pallet_04" ); #precache( "model", "p7_sin_bio_monument_sm_wave_256" );
|
|
|
|
function main()
|
|
{
|
|
precache();
|
|
|
|
SetDvar( "phys_buoyancy", 1 );
|
|
|
|
mp_biodome_fx::main();
|
|
mp_biodome_sound::main();
|
|
|
|
level.remotemissile_kill_z = ( ( -130 ) + ( 50 ) ); // override kill z for Hellstorm missile
|
|
|
|
load::main();
|
|
|
|
//compass map function, uncomment when adding the minimap
|
|
compass::setupMiniMap("compass_map_mp_biodome");
|
|
|
|
SetDvar( "compassmaxrange", "2100" ); // Set up the default range of the compass
|
|
|
|
// DT #142726 - Player is able to mantle onto an invisible collision high above the northern portion of the map gaining access to an exploitable area.
|
|
SpawnCollision("collision_clip_512x512x512", "collider", ( 744 , 1696 , 920 ), ( 0 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_512x512x512", "collider", ( 744 , 2208 , 920 ), ( 0 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_512x512x512", "collider", ( 1256 , 1696 , 920 ), ( 0 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_512x512x512", "collider", ( 1256 , 2208 , 920 ), ( 0 , 0 , 0 ));
|
|
|
|
// DT #146576 - Player is able to mantle onto lightposts near truck start spawn and leave the playspace.
|
|
SpawnCollision("collision_clip_256x256x256", "collider", ( 3454.82 , 1094.87 , 499.607 ), ( 0 , 270 , -90 ));
|
|
SpawnCollision("collision_clip_256x256x256", "collider", ( 3454.82 , 706.47 , 499.607 ), ( 0 , 270 , -90 ));
|
|
|
|
// Spawning clip over trashcans outside of the water pump room near seal show
|
|
SpawnCollision("collision_clip_wall_64x64x10", "collider", ( 1640 , -178.5 , 150.5 ), ( 0 , 270 , 0 ));
|
|
SpawnCollision("collision_clip_wall_64x64x10", "collider", ( 1580.5 , -180.5 , 141 ), ( 0 , 270 , 0 ));
|
|
SpawnCollision("collision_clip_wall_64x64x10", "collider", ( 1640 , -180.5 , 141 ), ( 0 , 270 , 0 ));
|
|
|
|
// Spawning clip doorframe under sea lion tales banner to prevent mantling through geo
|
|
SpawnCollision("collision_clip_wall_128x128x10", "collider", ( 588 , 245 , 263 ), ( 1 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_wall_128x128x10", "collider", ( 588 , 358.5 , 263 ), ( 1 , 0 , 0 ));
|
|
|
|
// Spawning clip near center fish tanks to prevent using mantle exploit
|
|
SpawnCollision("collision_clip_wall_64x64x10", "collider", ( -249 , 817 , 175.5 ), ( 0 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_wall_64x64x10", "collider", ( -219.5 , 844 , 175.5 ), ( 0 , 270 , 0 ));
|
|
|
|
// Spawning clip to fix getting in tree foliage out of the map near the penguin iceberg display
|
|
SpawnCollision("collision_clip_cylinder_32x256", "collider", ( 1549 , -350 , 194 ), ( 0 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_cylinder_32x256", "collider", ( 1549 , -350 , 435.5 ), ( 0 , 0 , 0 ));
|
|
SpawnCollision("collision_clip_cylinder_32x256", "collider", ( 1549 , -350 , 649.5 ), ( 0 , 0 , 0 ));
|
|
|
|
if ( util::IsPropHuntGametype() )
|
|
{
|
|
SpawnCollision("collision_clip_wall_64x64x10", "collider", ( -1745 , 1550 , 248 ), ( 0 , 0 , 0 ));
|
|
}
|
|
|
|
// Set up some generic War Flag Names.
|
|
// Example from COD5: CALLSIGN_SEELOW_A is the name of the 1st flag in Selow whose string is "Cottage"
|
|
// The string must have MPUI_CALLSIGN_ and _A. Replace Mapname with the name of your map/bsp and in the
|
|
// actual string enter a keyword that names the location (Roundhouse, Missle Silo, Launchpad, Guard Tower, etc)
|
|
|
|
game["strings"]["war_callsign_a"] = &"MPUI_CALLSIGN_MAPNAME_A";
|
|
game["strings"]["war_callsign_b"] = &"MPUI_CALLSIGN_MAPNAME_B";
|
|
game["strings"]["war_callsign_c"] = &"MPUI_CALLSIGN_MAPNAME_C";
|
|
game["strings"]["war_callsign_d"] = &"MPUI_CALLSIGN_MAPNAME_D";
|
|
game["strings"]["war_callsign_e"] = &"MPUI_CALLSIGN_MAPNAME_E";
|
|
|
|
game["strings_menu"]["war_callsign_a"] = "@MPUI_CALLSIGN_MAPNAME_A";
|
|
game["strings_menu"]["war_callsign_b"] = "@MPUI_CALLSIGN_MAPNAME_B";
|
|
game["strings_menu"]["war_callsign_c"] = "@MPUI_CALLSIGN_MAPNAME_C";
|
|
game["strings_menu"]["war_callsign_d"] = "@MPUI_CALLSIGN_MAPNAME_D";
|
|
game["strings_menu"]["war_callsign_e"] = "@MPUI_CALLSIGN_MAPNAME_E";
|
|
|
|
level spawnKillTrigger();
|
|
|
|
// out of map on ledge by green van start spawns
|
|
trigger = spawn( "trigger_radius", ( 3516 , 620 , 111 ), 0, 256, 50 );
|
|
trigger thread oob::run_oob_trigger();
|
|
|
|
// out of map on rock by tree in northwest corner
|
|
trigger = spawn( "trigger_radius", ( 2182 , 2176.5 , -32.5 ), 0, 100, 256 );
|
|
trigger thread oob::run_oob_trigger();
|
|
|
|
// Stockpile hub points
|
|
level.cleanDepositPoints = Array ( ( -52.4927 , 1252.1 , 104.125 ),
|
|
( 330.408 , 2402.64 , 232.204 ),
|
|
( -139.434 , -303.555 , 138.836 ),
|
|
( -362.325 , 325.108 , 104.125 ) );
|
|
}
|
|
|
|
function precache()
|
|
{
|
|
// DO ALL PRECACHING HERE
|
|
}
|
|
|
|
function spawnKillTrigger()
|
|
{
|
|
trigger = spawn( "trigger_radius", ( 4147.22 , 1095.25 , -33.0108 ), 0, 500, 500 );
|
|
trigger thread watchKillTrigger();
|
|
|
|
trigger = spawn( "trigger_radius", ( 4147.22 , 590.28 , -33.0108 ), 0, 500, 500 );
|
|
trigger thread watchKillTrigger();
|
|
|
|
trigger = spawn( "trigger_radius", ( -202 , 797 , 135.5 ), 0, 50, 200 );
|
|
trigger thread watchKillTrigger();
|
|
|
|
trigger = spawn( "trigger_radius", ( -162 , 2442 , -47 ), 0, 25, 60 );
|
|
trigger thread watchKillTrigger();
|
|
}
|
|
|
|
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 );
|
|
}
|
|
} |