Files
Recompilable-gscs-for-BO2-z…/zm_nuked_patch/maps/mp/zm_nuked_ffotd.gsc
2020-10-26 07:34:10 -07:00

118 lines
3.7 KiB
Plaintext

#include maps/mp/zombies/_zm_ffotd;
#include maps/mp/zombies/_zm_utility;
#include common_scripts/utility;
#include maps/mp/_utility;
main_start()
{
precachemodel( "collision_wall_128x128x10_standard" );
precachemodel( "collision_player_256x256x10" );
precachemodel( "collision_wall_64x64x10_standard" );
if ( isDefined( level.use_swipe_protection ) )
{
onplayerconnect_callback( ::claymore_watch_swipes );
}
}
main_end()
{
setdvar( "zombiemode_path_minz_bias", 28 );
collision7 = spawn( "script_model", ( -490, 963, 63 ) );
collision7 setmodel( "collision_player_256x256x10" );
collision7.angles = ( 0, 25,2, -90 );
collision7 ghost();
collision9 = spawn( "script_model", ( -1349, 1016, 0 ) );
collision9 setmodel( "collision_wall_128x128x10_standard" );
collision9.angles = vectorScale( ( 0, 1, 0 ), 339,8 );
collision9 ghost();
collision11 = spawn( "script_model", ( 1074, 584, 126 ) );
collision11 setmodel( "collision_wall_64x64x10_standard" );
collision11.angles = vectorScale( ( 0, 1, 0 ), 15 );
collision11 ghost();
collision12 = spawn( "script_model", ( 380, -112, 150 ) );
collision12 setmodel( "collision_wall_128x128x10_standard" );
collision12.angles = vectorScale( ( 0, 1, 0 ), 275 );
collision12 ghost();
collision13 = spawn( "script_model", ( 501, 212, 64 ) );
collision13 setmodel( "collision_wall_64x64x10_standard" );
collision13.angles = ( 0, 10,8, 90 );
collision13 ghost();
level thread prone_under_garage_door_exploit();
}
prone_under_garage_door_exploit()
{
zombie_trigger_origin = ( -679, 339, -40 );
zombie_trigger_radius = 100;
zombie_trigger_height = 128;
player_trigger_origin = ( -750, 189, -60 );
player_trigger_radius = 72;
zombie_goto_point = ( -863, 320, -40 );
level thread maps/mp/zombies/_zm_ffotd::path_exploit_fix( zombie_trigger_origin, zombie_trigger_radius, zombie_trigger_height, player_trigger_origin, player_trigger_radius, zombie_goto_point );
zombie_trigger_origin = ( -652,6, 143,2, -58,6015 );
zombie_trigger_radius = 85;
zombie_trigger_height = 128;
player_trigger_origin = ( -741, 177, -52 );
player_trigger_radius = 35;
zombie_goto_point = ( -729,61, 156,24, -50 );
level thread maps/mp/zombies/_zm_ffotd::path_exploit_fix( zombie_trigger_origin, zombie_trigger_radius, zombie_trigger_height, player_trigger_origin, player_trigger_radius, zombie_goto_point );
zombie_trigger_origin = ( -863, 320, -20 );
zombie_trigger_radius = 150;
zombie_trigger_height = 128;
player_trigger_origin = ( -750, 189, -60 );
player_trigger_radius = 72;
zombie_goto_point = ( -804,61, 198,24, -40 );
level thread maps/mp/zombies/_zm_ffotd::path_exploit_fix( zombie_trigger_origin, zombie_trigger_radius, zombie_trigger_height, player_trigger_origin, player_trigger_radius, zombie_goto_point );
}
claymore_watch_swipes()
{
self endon( "disconnect" );
self notify( "claymore_watch_swipes" );
self endon( "claymore_watch_swipes" );
while ( 1 )
{
self waittill( "weapon_change", weapon );
if ( is_placeable_mine( weapon ) )
{
self.mine_damage = 0;
self thread watch_melee_swipes( weapon );
}
}
}
watch_melee_swipes( weapname )
{
self endon( "weapon_change" );
self endon( "death" );
self endon( "disconnect" );
while ( 1 )
{
self waittill( "melee_swipe", zombie );
self.mine_damage++;
if ( self.mine_damage > 5 )
{
self.mine_damage = 0;
ammo = self getweaponammoclip( weapname );
if ( ammo >= 1 )
{
self setweaponammoclip( weapname, ammo - 1 );
if ( ammo == 1 )
{
self setweaponammoclip( weapname, ammo - 1 );
primaryweapons = self getweaponslistprimaries();
if ( isDefined( primaryweapons[ 0 ] ) )
{
self switchtoweapon( primaryweapons[ 0 ] );
}
}
break;
}
else
{
self takeweapon( weapname );
}
}
}
}