1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-25 14:40:32 -05:00

Meat and Containment: zombies can target players close to them

This commit is contained in:
Jbleezy
2023-03-18 00:29:16 -07:00
parent cf4add6483
commit 80248ea2df
2 changed files with 44 additions and 8 deletions

View File

@ -208,6 +208,8 @@ meat_stink( who )
}
}
who thread meat_stink_ignoreme_think();
who thread meat_stink_player_create();
who thread meat_stink_cleanup_on_downed();
@ -238,6 +240,40 @@ meat_disable_weapons()
self.meat_weapons_disabled = undefined;
}
meat_stink_ignoreme_think()
{
level endon("meat_thrown");
level endon("meat_grabbed");
self endon("disconnect");
self endon("player_downed");
self endon("bled_out");
while (1)
{
zombies = get_round_enemy_array();
players = get_players();
foreach (player in players)
{
if (player == self)
{
continue;
}
if (!is_player_valid(player))
{
continue;
}
close_zombies = get_array_of_closest(player.origin, zombies, undefined, 1, 64);
player.ignoreme = close_zombies.size == 0;
}
wait 0.05;
}
}
meat_stink_cleanup_on_downed()
{
level endon("meat_thrown");
@ -354,6 +390,7 @@ meat_stink_player( who )
player print_meat_msg(who, "has");
}
who thread meat_stink_ignoreme_think();
who thread meat_stink_player_create();
who waittill_any_or_timeout( 30, "disconnect", "player_downed", "bled_out" );
players = get_players();

View File

@ -2599,6 +2599,7 @@ containment_think()
start_time = getTime();
while((getTime() - start_time) <= 60000 || containment_zones.size == 1)
{
zombies = get_round_enemy_array();
players = get_players();
in_containment_zone = [];
in_containment_zone["axis"] = [];
@ -2637,12 +2638,11 @@ containment_think()
}
else
{
if(is_player_valid(player))
if(is_player_valid(player) && !isDefined(level.meat_player))
{
if(!isDefined(level.meat_player))
{
player.ignoreme = 1;
}
close_zombies = get_array_of_closest(player.origin, zombies, undefined, 1, 64);
player.ignoreme = close_zombies.size == 0;
}
player.obj_waypoint.alpha = 1;
@ -3056,6 +3056,8 @@ meat_think()
while(1)
{
players = get_players();
if (isDefined(level.meat_player))
{
if (!isDefined(held_time))
@ -3113,7 +3115,6 @@ meat_think()
level.item_meat.obj_waypoint_origin.origin = level.item_meat.origin + (0, 0, 32);
players = get_players();
foreach (player in players)
{
player.obj_waypoint.alpha = 1;
@ -3133,7 +3134,6 @@ meat_think()
level.meat_powerup thread meat_waypoint_origin_destroy_on_death();
}
players = get_players();
foreach (player in players)
{
player.obj_waypoint.alpha = 1;
@ -3143,7 +3143,6 @@ meat_think()
}
else
{
players = get_players();
foreach (player in players)
{
player.obj_waypoint.alpha = 0;