mirror of
https://github.com/JezuzLizard/Recompilable-gscs-for-BO2-zombies-and-multiplayer.git
synced 2025-07-07 07:57:51 -05:00
118 lines
3.7 KiB
Plaintext
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 );
|
|
}
|
|
}
|
|
}
|
|
}
|