mirror of
https://github.com/JezuzLizard/Recompilable-gscs-for-BO2-zombies-and-multiplayer.git
synced 2025-06-10 10:47:58 -05:00
149 lines
5.6 KiB
Plaintext
149 lines
5.6 KiB
Plaintext
#include maps/mp/zombies/_zm_afterlife;
|
|
#include maps/mp/zm_prison;
|
|
#include maps/mp/zombies/_zm_zonemgr;
|
|
#include maps/mp/zombies/_zm_utility;
|
|
#include common_scripts/utility;
|
|
#include maps/mp/_utility;
|
|
|
|
main_start()
|
|
{
|
|
level thread spawned_collision_ffotd();
|
|
t_killbrush_1 = spawn( "trigger_box", ( 142, 9292, 1504 ), 0, 700, 160, 128 );
|
|
t_killbrush_1.script_noteworthy = "kill_brush";
|
|
t_killbrush_2 = spawn( "trigger_box", ( 1822, 9316, 1358 ), 0, 120, 100, 30 );
|
|
t_killbrush_2.script_noteworthy = "kill_brush";
|
|
t_killbrush_3 = spawn( "trigger_box", ( -42, 9348, 1392 ), 0, 200, 100, 128 );
|
|
t_killbrush_3.script_noteworthy = "kill_brush";
|
|
}
|
|
|
|
main_end()
|
|
{
|
|
level.equipment_dead_zone_pos = [];
|
|
level.equipment_dead_zone_rad2 = [];
|
|
level.equipment_dead_zone_pos[ 0 ] = ( 408, 10016, 1128 );
|
|
level.equipment_dead_zone_rad2[ 0 ] = 65536;
|
|
level.equipment_dead_zone_pos[ 1 ] = ( -280, 7872, 176 );
|
|
level.equipment_dead_zone_rad2[ 1 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 2 ] = ( -104, 8056, 280 );
|
|
level.equipment_dead_zone_rad2[ 2 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 3 ] = ( -86, 7712, 114 );
|
|
level.equipment_dead_zone_rad2[ 3 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 4 ] = ( 447, 5963, 264 );
|
|
level.equipment_dead_zone_rad2[ 4 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 5 ] = ( 231, 5913, 200 );
|
|
level.equipment_dead_zone_rad2[ 5 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 6 ] = ( 15, 5877, 136 );
|
|
level.equipment_dead_zone_rad2[ 6 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 7 ] = ( -335, 5795, 14 );
|
|
level.equipment_dead_zone_rad2[ 7 ] = 22500;
|
|
level.equipment_dead_zone_pos[ 8 ] = ( -621, 5737, -48 );
|
|
level.equipment_dead_zone_rad2[ 8 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 9 ] = ( 402, 7058, 147 );
|
|
level.equipment_dead_zone_rad2[ 9 ] = 10000;
|
|
level.equipment_dead_zone_pos[ 10 ] = ( 2151, 10180, 1204 );
|
|
level.equipment_dead_zone_rad2[ 10 ] = 625;
|
|
level.equipment_dead_zone_pos[ 11 ] = ( 2144, 9486, 1364 );
|
|
level.equipment_dead_zone_rad2[ 11 ] = 2500;
|
|
level.equipment_safe_to_drop = ::equipment_safe_to_drop_ffotd;
|
|
waittillframeend;
|
|
level.afterlife_give_loadout = ::afterlife_give_loadout_override;
|
|
}
|
|
|
|
equipment_safe_to_drop_ffotd( weapon )
|
|
{
|
|
i = 0;
|
|
while ( i < level.equipment_dead_zone_pos.size )
|
|
{
|
|
if ( distancesquared( level.equipment_dead_zone_pos[ i ], weapon.origin ) < level.equipment_dead_zone_rad2[ i ] )
|
|
{
|
|
return 0;
|
|
}
|
|
i++;
|
|
}
|
|
return self maps/mp/zm_prison::equipment_safe_to_drop( weapon );
|
|
}
|
|
|
|
spawned_collision_ffotd()
|
|
{
|
|
precachemodel( "collision_ai_64x64x10" );
|
|
precachemodel( "collision_wall_256x256x10_standard" );
|
|
precachemodel( "collision_wall_128x128x10_standard" );
|
|
precachemodel( "collision_wall_512x512x10_standard" );
|
|
precachemodel( "collision_geo_256x256x256_standard" );
|
|
precachemodel( "collision_geo_64x64x256_standard" );
|
|
precachemodel( "collision_geo_128x128x128_standard" );
|
|
flag_wait( "start_zombie_round_logic" );
|
|
if ( !is_true( level.optimise_for_splitscreen ) )
|
|
{
|
|
collision1 = spawn( "script_model", ( 1999, 9643, 1472 ) );
|
|
collision1 setmodel( "collision_ai_64x64x10" );
|
|
collision1.angles = ( 0, 270, -90 );
|
|
collision1 ghost();
|
|
collision2 = spawn( "script_model", ( -437, 6260, 121 ) );
|
|
collision2 setmodel( "collision_wall_256x256x10_standard" );
|
|
collision2.angles = vectorScale( ( 0, 0, 0 ), 11,8 );
|
|
collision2 ghost();
|
|
collision3 = spawn( "script_model", ( 1887,98, 9323, 1489,14 ) );
|
|
collision3 setmodel( "collision_wall_128x128x10_standard" );
|
|
collision3.angles = ( 0, 270, 38,6 );
|
|
collision3 ghost();
|
|
collision4 = spawn( "script_model", ( -261, 8512,02, 1153,14 ) );
|
|
collision4 setmodel( "collision_geo_256x256x256_standard" );
|
|
collision4.angles = vectorScale( ( 0, 0, 0 ), 180 );
|
|
collision4 ghost();
|
|
collision5a = spawn( "script_model", ( 792, 8302, 1620 ) );
|
|
collision5a setmodel( "collision_geo_64x64x256_standard" );
|
|
collision5a.angles = ( 0, 0, 0 );
|
|
collision5a ghost();
|
|
collision5b = spawn( "script_model", ( 1010, 8302, 1620 ) );
|
|
collision5b setmodel( "collision_geo_64x64x256_standard" );
|
|
collision5b.angles = ( 0, 0, 0 );
|
|
collision5b ghost();
|
|
collision6 = spawn( "script_model", ( 554, 8026, 698 ) );
|
|
collision6 setmodel( "collision_wall_128x128x10_standard" );
|
|
collision6.angles = vectorScale( ( 0, 0, 0 ), 22,2 );
|
|
collision6 ghost();
|
|
collision7 = spawn( "script_model", ( 1890, 9911, 1184 ) );
|
|
collision7 setmodel( "collision_geo_64x64x256_standard" );
|
|
collision7.angles = ( 0, 0, 0 );
|
|
collision7 ghost();
|
|
collision8 = spawn( "script_model", ( 258, 9706, 1152 ) );
|
|
collision8 setmodel( "collision_geo_64x64x256_standard" );
|
|
collision8.angles = ( 0, 0, 0 );
|
|
collision8 ghost();
|
|
collision9 = spawn( "script_model", ( 596, 8944, 1160 ) );
|
|
collision9 setmodel( "collision_ai_64x64x10" );
|
|
collision9.angles = ( 270, 180, -180 );
|
|
collision9 ghost();
|
|
collision10 = spawn( "script_model", ( -756,5, 5730, -113,75 ) );
|
|
collision10 setmodel( "collision_geo_128x128x128_standard" );
|
|
collision10.angles = ( 354,9, 11, 0 );
|
|
collision10 ghost();
|
|
collision11 = spawn( "script_model", ( -4, 8314, 808 ) );
|
|
collision11 setmodel( "collision_wall_128x128x10_standard" );
|
|
collision11.angles = vectorScale( ( 0, 0, 0 ), 292 );
|
|
collision11 ghost();
|
|
collision12 = spawn( "script_model", ( 1416, 10708, 1440 ) );
|
|
collision12 setmodel( "collision_wall_512x512x10_standard" );
|
|
collision12.angles = ( 0, 0, 0 );
|
|
collision12 ghost();
|
|
}
|
|
}
|
|
|
|
afterlife_give_loadout_override()
|
|
{
|
|
self thread afterlife_leave_freeze();
|
|
self maps/mp/zombies/_zm_afterlife::afterlife_give_loadout();
|
|
}
|
|
|
|
afterlife_leave_freeze()
|
|
{
|
|
self endon( "disconnect" );
|
|
self freezecontrols( 1 );
|
|
wait 0,5;
|
|
if ( !is_true( self.hostmigrationcontrolsfrozen ) )
|
|
{
|
|
self freezecontrols( 0 );
|
|
}
|
|
}
|