mirror of
https://github.com/JezuzLizard/BO2-Reimagined.git
synced 2025-06-09 23:02:53 -05:00
Buildables: destroyed by 1500 damage
This commit is contained in:
@ -145,7 +145,9 @@
|
||||
## Buildables
|
||||
* Added purchase cost
|
||||
* Parts automatically picked up
|
||||
* Zombies no longer attack buildables (except Zombie Shield)
|
||||
* Zombies no longer attack (except Zombie Shield)
|
||||
* Destroyed by taking 1500 damage
|
||||
* No longer destroyed by 2 grenades
|
||||
|
||||
### Electric Trap
|
||||
* No longer needs to be powered by a Turbine
|
||||
|
@ -8,6 +8,7 @@ main()
|
||||
replaceFunc(maps/mp/zombies/_zm_playerhealth::playerhealthregen, ::playerhealthregen);
|
||||
replaceFunc(maps/mp/zombies/_zm_utility::track_players_intersection_tracker, ::track_players_intersection_tracker);
|
||||
replaceFunc(maps/mp/zombies/_zm_powerups::nuke_powerup, ::nuke_powerup);
|
||||
replaceFunc(maps/mp/zombies/_zm_equipment::placed_equipment_think, ::placed_equipment_think);
|
||||
}
|
||||
|
||||
init()
|
||||
@ -1770,6 +1771,80 @@ nuke_powerup( drop_item, player_team )
|
||||
}
|
||||
}
|
||||
|
||||
placed_equipment_think( model, equipname, origin, angles, tradius, toffset )
|
||||
{
|
||||
pickupmodel = spawn( "script_model", origin );
|
||||
if ( isDefined( angles ) )
|
||||
{
|
||||
pickupmodel.angles = angles;
|
||||
}
|
||||
pickupmodel setmodel( model );
|
||||
if ( isDefined( level.equipment_safe_to_drop ) )
|
||||
{
|
||||
if ( !( self [[ level.equipment_safe_to_drop ]]( pickupmodel ) ) )
|
||||
{
|
||||
maps/mp/zombies/_zm_equipment::equipment_disappear_fx( pickupmodel.origin, undefined, pickupmodel.angles );
|
||||
pickupmodel delete();
|
||||
self maps/mp/zombies/_zm_equipment::equipment_take( equipname );
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
watchername = getsubstr( equipname, 0, equipname.size - 3 );
|
||||
if ( isDefined( level.retrievehints[ watchername ] ) )
|
||||
{
|
||||
hint = level.retrievehints[ watchername ].hint;
|
||||
}
|
||||
else
|
||||
{
|
||||
hint = &"MP_GENERIC_PICKUP";
|
||||
}
|
||||
icon = maps/mp/zombies/_zm_equipment::get_equipment_icon( equipname );
|
||||
if ( !isDefined( tradius ) )
|
||||
{
|
||||
tradius = 32;
|
||||
}
|
||||
torigin = origin;
|
||||
if ( isDefined( toffset ) )
|
||||
{
|
||||
tforward = anglesToForward( angles );
|
||||
torigin += toffset * tforward;
|
||||
}
|
||||
tup = anglesToUp( angles );
|
||||
eq_unitrigger_offset = 12 * tup;
|
||||
pickupmodel.stub = maps/mp/zombies/_zm_equipment::generate_equipment_unitrigger( "trigger_radius_use", torigin + eq_unitrigger_offset, angles, 0, tradius, 64, hint, equipname, maps/mp/zombies/_zm_equipment::placed_equipment_unitrigger_think, pickupmodel.canmove );
|
||||
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 ) )
|
||||
{
|
||||
if ( !isDefined( level.dropped_equipment ) )
|
||||
{
|
||||
level.dropped_equipment = [];
|
||||
}
|
||||
if ( isDefined( level.dropped_equipment[ equipname ] ) && isDefined( level.dropped_equipment[ equipname ].model ) )
|
||||
{
|
||||
level.dropped_equipment[ equipname ].model maps/mp/zombies/_zm_equipment::dropped_equipment_destroy( 1 );
|
||||
}
|
||||
level.dropped_equipment[ equipname ] = pickupmodel.stub;
|
||||
}
|
||||
maps/mp/zombies/_zm_equipment::destructible_equipment_list_add( pickupmodel );
|
||||
return pickupmodel;
|
||||
}
|
||||
|
||||
item_watch_damage()
|
||||
{
|
||||
self endon( "death" );
|
||||
self setcandamage( 1 );
|
||||
while ( 1 )
|
||||
{
|
||||
self.health = 1000000;
|
||||
self waittill( "damage", amount );
|
||||
self maps/mp/zombies/_zm_equipment::item_damage( amount );
|
||||
}
|
||||
}
|
||||
|
||||
setscoreboardcolumns_gametype()
|
||||
{
|
||||
if(getDvar("g_gametype") == "zgrief")
|
||||
|
Reference in New Issue
Block a user