1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-12 08:08:00 -05:00

Buildables: can no longer be picked up after being destroyed

This commit is contained in:
Jbleezy
2023-03-06 22:56:16 -08:00
parent a89e5ef5fd
commit bc49e63feb
2 changed files with 48 additions and 2 deletions

View File

@ -64,7 +64,6 @@ placed_equipment_think( model, equipname, origin, angles, tradius, toffset )
pickupmodel.stub.model = pickupmodel;
pickupmodel.stub.equipname = equipname;
pickupmodel.equipname = equipname;
//pickupmodel thread maps\mp\zombies\_zm_equipment::item_attract_zombies();
pickupmodel thread item_watch_damage();
if ( maps\mp\zombies\_zm_equipment::is_limited_equipment( equipname ) )
{
@ -90,6 +89,52 @@ item_watch_damage()
{
self.health = 1000000;
self waittill( "damage", amount );
self maps\mp\zombies\_zm_equipment::item_damage( amount );
self item_damage( amount );
}
}
item_damage( damage )
{
if ( isdefined( self.isriotshield ) && self.isriotshield )
{
if ( isdefined( level.riotshield_damage_callback ) && isdefined( self.owner ) )
self.owner [[ level.riotshield_damage_callback ]]( damage, 0 );
else if ( isdefined( level.deployed_riotshield_damage_callback ) )
self [[ level.deployed_riotshield_damage_callback ]]( damage );
}
else if ( isdefined( self.owner ) )
self.owner player_damage_equipment( self.equipname, damage, self.origin, self.stub );
else
{
if ( !isdefined( self.damage ) )
self.damage = 0;
self.damage += damage;
if ( self.damage > 1500 )
self thread maps\mp\zombies\_zm_equipment::dropped_equipment_destroy( 1 );
}
}
player_damage_equipment( equipment, damage, origin, stub )
{
if ( !isdefined( self.equipment_damage ) )
self.equipment_damage = [];
if ( !isdefined( self.equipment_damage[equipment] ) )
self.equipment_damage[equipment] = 0;
self.equipment_damage[equipment] += damage;
if ( self.equipment_damage[equipment] > 1500 )
{
thread maps\mp\zombies\_zm_unitrigger::unregister_unitrigger( stub );
if ( isdefined( level.placeable_equipment_destroy_fn[equipment] ) )
self [[ level.placeable_equipment_destroy_fn[equipment] ]]();
else
equipment_disappear_fx( origin );
self equipment_release( equipment );
}
}