mirror of
https://github.com/JezuzLizard/BO2-Reimagined.git
synced 2025-06-07 21:59:49 -05:00
EMP Grenade: decrease player EMP time
EMP Grenade: change projectile speed, explosion radius, and shellshock to match MP Optimize EMP Grenade code
This commit is contained in:
parent
679a24aa5c
commit
2307b42033
@ -217,11 +217,14 @@
|
||||
|
||||
### EMP Grenade
|
||||
* No longer disables HUD
|
||||
* Disables player's perks for 30 seconds
|
||||
* Disables player's perks for 12 seconds
|
||||
* Increased ammo from 2 to 3
|
||||
* Added fx to EMP'd players
|
||||
* Decreased zombie EMP radius by 30% (same radius as perk machine EMP)
|
||||
* Decreased projectile speed by 30% (same as Black Ops 2 Multiplayer EMP Grenade)
|
||||
* Decreased zombie EMP radius by 17% (same as Black Ops 2 Multiplayer EMP Grenade)
|
||||
* Increased perk machine EMP radius by 22% (same as Black Ops 2 Multiplayer EMP Grenade)
|
||||
* Decreased perk machine EMP time from 90 seconds to 60 seconds
|
||||
* Changed shellshock (same as Black Ops 2 Multiplayer EMP Grenade)
|
||||
* Added fx to EMP'd players
|
||||
* Can destroy deployed Zombie Shields
|
||||
* Sprinting no longer wakes up EMP'd zombies
|
||||
* Zombies that are in the ground can no longer get EMP'd
|
||||
|
@ -332,8 +332,6 @@ post_all_players_spawned()
|
||||
}
|
||||
|
||||
level.zombie_vars["riotshield_hit_points"] = 1500;
|
||||
level.zombie_vars["emp_stun_range"] = 420;
|
||||
level.zombie_vars["emp_perk_off_time"] = 60;
|
||||
level.zombie_vars["slipgun_reslip_rate"] = 0;
|
||||
level.zombie_vars["zombie_perk_divetonuke_min_damage"] = 1000;
|
||||
level.zombie_vars["zombie_perk_divetonuke_max_damage"] = 5000;
|
||||
|
@ -3,6 +3,21 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\zombies\_zm_utility;
|
||||
|
||||
init()
|
||||
{
|
||||
if (!emp_bomb_exists())
|
||||
return;
|
||||
|
||||
set_zombie_var("emp_stun_range", 512);
|
||||
set_zombie_var("emp_stun_time", 12);
|
||||
set_zombie_var("emp_perk_off_range", 512);
|
||||
set_zombie_var("emp_perk_off_time", 60);
|
||||
precacheshellshock("flashbang");
|
||||
|
||||
level thread onplayerconnect();
|
||||
level._equipment_emp_destroy_fx = loadfx("weapon/emp/fx_emp_explosion_equip");
|
||||
}
|
||||
|
||||
emp_detonate(grenade)
|
||||
{
|
||||
grenade_owner = undefined;
|
||||
@ -12,11 +27,10 @@ emp_detonate(grenade)
|
||||
grenade_owner = grenade.owner;
|
||||
}
|
||||
|
||||
grenade waittill("explode", grenade_origin);
|
||||
grenade waittill("explode", origin);
|
||||
|
||||
emp_radius = level.zombie_vars["emp_perk_off_range"];
|
||||
emp_radius = level.zombie_vars["emp_stun_range"];
|
||||
emp_time = level.zombie_vars["emp_perk_off_time"];
|
||||
origin = grenade_origin;
|
||||
|
||||
if (!isDefined(origin))
|
||||
{
|
||||
@ -24,11 +38,11 @@ emp_detonate(grenade)
|
||||
}
|
||||
|
||||
level notify("emp_detonate", origin, emp_radius);
|
||||
self thread emp_detonate_zombies(grenade_origin, grenade_owner);
|
||||
self thread emp_detonate_zombies(origin, emp_radius, grenade_owner);
|
||||
|
||||
if (isDefined(level.custom_emp_detonate))
|
||||
{
|
||||
thread [[level.custom_emp_detonate]](grenade_origin);
|
||||
thread [[level.custom_emp_detonate]](origin);
|
||||
}
|
||||
|
||||
if (isDefined(grenade_owner))
|
||||
@ -44,9 +58,9 @@ emp_detonate(grenade)
|
||||
maps\mp\zombies\_zm_power::revert_power_to_list(1, origin, emp_radius, disabled_list);
|
||||
}
|
||||
|
||||
emp_detonate_zombies(grenade_origin, grenade_owner)
|
||||
emp_detonate_zombies(origin, radius, owner)
|
||||
{
|
||||
zombies = get_array_of_closest(grenade_origin, getaispeciesarray(level.zombie_team, "all"), undefined, undefined, level.zombie_vars["emp_stun_range"]);
|
||||
zombies = get_array_of_closest(origin, getaispeciesarray(level.zombie_team, "all"), undefined, undefined, radius);
|
||||
|
||||
if (!isdefined(zombies))
|
||||
return;
|
||||
@ -77,8 +91,8 @@ emp_detonate_zombies(grenade_origin, grenade_owner)
|
||||
wait 0.05;
|
||||
}
|
||||
|
||||
if (stunned >= 10 && isdefined(grenade_owner))
|
||||
grenade_owner notify("the_lights_of_their_eyes");
|
||||
if (stunned >= 10 && isdefined(owner))
|
||||
owner notify("the_lights_of_their_eyes");
|
||||
}
|
||||
|
||||
destroyequipment(origin, radius)
|
||||
@ -151,8 +165,8 @@ emp_players(origin, radius, owner)
|
||||
{
|
||||
if (is_player_valid(player) || player maps\mp\zombies\_zm_laststand::player_is_in_laststand())
|
||||
{
|
||||
time = 30;
|
||||
player shellshock("frag_grenade_mp", 2);
|
||||
time = level.zombie_vars["emp_stun_time"];
|
||||
player shellshock("flashbang", 1);
|
||||
player thread player_perk_pause_and_unpause_all_perks(time);
|
||||
player thread player_emp_fx(time);
|
||||
}
|
||||
|
@ -41,6 +41,7 @@ main()
|
||||
replaceFunc(maps\mp\zombies\_zm_weap_jetgun::jetgun_grind_zombie, scripts\zm\replaced\_zm_weap_jetgun::jetgun_grind_zombie);
|
||||
replaceFunc(maps\mp\zombies\_zm_weap_jetgun::handle_overheated_jetgun, scripts\zm\replaced\_zm_weap_jetgun::handle_overheated_jetgun);
|
||||
replaceFunc(maps\mp\zombies\_zm_weap_jetgun::jetgun_network_choke, scripts\zm\replaced\_zm_weap_jetgun::jetgun_network_choke);
|
||||
replaceFunc(maps\mp\zombies\_zm_weap_emp_bomb::init, scripts\zm\replaced\_zm_weap_emp_bomb::init);
|
||||
replaceFunc(maps\mp\zombies\_zm_weap_emp_bomb::emp_detonate, scripts\zm\replaced\_zm_weap_emp_bomb::emp_detonate);
|
||||
replaceFunc(maps\mp\zombies\_zm_equip_electrictrap::startelectrictrapdeploy, scripts\zm\replaced\_zm_equip_electrictrap::startelectrictrapdeploy);
|
||||
replaceFunc(maps\mp\zombies\_zm_equip_electrictrap::cleanupoldtrap, scripts\zm\replaced\_zm_equip_electrictrap::cleanupoldtrap);
|
||||
|
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user