diff --git a/scripts/zm/replaced/_zm_equip_electrictrap.gsc b/scripts/zm/replaced/_zm_equip_electrictrap.gsc index ae2308f6..c16f0e83 100644 --- a/scripts/zm/replaced/_zm_equip_electrictrap.gsc +++ b/scripts/zm/replaced/_zm_equip_electrictrap.gsc @@ -82,10 +82,23 @@ electrictrapdecay( weapon ) } } -etrap_destroy() +cleanupoldtrap() { - maps/mp/zombies/_zm_equipment::equipment_disappear_fx( self.weapon.origin, undefined, self.weapon.angles ); - self.electrictrap_health = undefined; + if ( isDefined( self.buildableelectrictrap ) ) + { + if ( isDefined( self.buildableelectrictrap.stub ) ) + { + thread maps/mp/zombies/_zm_unitrigger::unregister_unitrigger( self.buildableelectrictrap.stub ); + self.buildableelectrictrap.stub = undefined; + } + self.buildableelectrictrap delete(); + self.electrictrap_health = undefined; + } + if ( isDefined( level.electrap_sound_ent ) ) + { + level.electrap_sound_ent delete(); + level.electrap_sound_ent = undefined; + } } etrap_choke() diff --git a/scripts/zm/zm_transit/zm_transit_reimagined.gsc b/scripts/zm/zm_transit/zm_transit_reimagined.gsc index a70b3669..e4fcf0ba 100644 --- a/scripts/zm/zm_transit/zm_transit_reimagined.gsc +++ b/scripts/zm/zm_transit/zm_transit_reimagined.gsc @@ -17,6 +17,7 @@ main() replaceFunc(maps/mp/zm_transit_utility::solo_tombstone_removal, scripts/zm/replaced/zm_transit_utility::solo_tombstone_removal); 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); replaceFunc(maps/mp/zombies/_zm_equip_electrictrap::etrap_choke, scripts/zm/replaced/_zm_equip_electrictrap::etrap_choke); replaceFunc(maps/mp/zombies/_zm_equip_turret::startturretdeploy, scripts/zm/replaced/_zm_equip_turret::startturretdeploy); replaceFunc(maps/mp/zombies/_zm_banking::init, scripts/zm/replaced/_zm_banking::init); @@ -30,7 +31,6 @@ main() init() { level.grenade_safe_to_bounce = ::grenade_safe_to_bounce; - level.placeable_equipment_destroy_fn["equip_electrictrap_zm"] = scripts/zm/replaced/_zm_equip_electrictrap::etrap_destroy; screecher_spawner_changes(); zombie_spawn_location_changes();