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

Jet Gun: remove buildable table model when player has weapon

This commit is contained in:
Jbleezy
2023-03-08 14:16:09 -08:00
parent 95553f1d6b
commit 8e6ca270aa
3 changed files with 37 additions and 8 deletions

View File

@ -181,6 +181,7 @@
* No longer automatically switched to weapon when picked up * No longer automatically switched to weapon when picked up
* No longer disassembles when overheated * No longer disassembles when overheated
* Weapon is taken when overheated * Weapon is taken when overheated
* Buildable table model no longer shows when player has weapon
### Sliquifier ### Sliquifier
* Added upgraded version * Added upgraded version

View File

@ -208,6 +208,19 @@ buildable_place_think()
self.stub.model show(); self.stub.model show();
} }
if ( !isDefined( self.stub.stand_model ) && maps\mp\zombies\_zm_equipment::is_limited_equipment( self.stub.weaponname ) )
{
self.stub.stand_model = spawn( "script_model", self.stub.model.origin );
self.stub.stand_model.angles = self.stub.model.angles;
if ( self.stub.weaponname == "jetgun_zm" )
{
self.stub.stand_model setModel( "p6_zm_buildable_sq_electric_box" );
self.stub.stand_model.origin += (0, 0, -23);
self.stub.stand_model.angles += (0, 90, 90);
}
}
while ( self.stub.persistent == 1 ) while ( self.stub.persistent == 1 )
{ {
self waittill( "trigger", player ); self waittill( "trigger", player );
@ -254,6 +267,14 @@ buildable_place_think()
player giveweapon( self.stub.weaponname ); player giveweapon( self.stub.weaponname );
player setweaponammoclip( self.stub.weaponname, 1 ); player setweaponammoclip( self.stub.weaponname, 1 );
if ( maps\mp\zombies\_zm_equipment::is_limited_equipment( self.stub.weaponname ) )
{
if ( isDefined( self.stub.model ) )
{
self.stub.model thread model_go_away(self.stub.weaponname);
}
}
if ( isDefined( level.zombie_include_buildables[ self.stub.equipname ].onbuyweapon ) ) if ( isDefined( level.zombie_include_buildables[ self.stub.equipname ].onbuyweapon ) )
{ {
self [[ level.zombie_include_buildables[ self.stub.equipname ].onbuyweapon ]]( player ); self [[ level.zombie_include_buildables[ self.stub.equipname ].onbuyweapon ]]( player );
@ -286,6 +307,18 @@ buildable_place_think()
} }
} }
model_go_away(weaponname)
{
self hide();
while (maps\mp\zombies\_zm_equipment::limited_equipment_in_use(weaponname))
{
wait 0.05;
}
self show();
}
model_fly_away(weaponname) model_fly_away(weaponname)
{ {
origin = self.origin; origin = self.origin;
@ -307,10 +340,10 @@ model_fly_away(weaponname)
self hide(); self hide();
playfx( level._effect["poltergeist"], self.origin ); playfx( level._effect["poltergeist"], self.origin );
self thread model_think(weaponname); self thread model_fly_away_think(weaponname);
} }
model_think(weaponname) model_fly_away_think(weaponname)
{ {
joker_model = spawn( "script_model", self.origin - (0, 0, 14) ); joker_model = spawn( "script_model", self.origin - (0, 0, 14) );
joker_model.angles = self.angles + (0, 90, 0); joker_model.angles = self.angles + (0, 90, 0);

View File

@ -551,12 +551,7 @@ craftablestub_update_prompt( player, unitrigger )
if ( self.equipname == "equip_dieseldrone_zm" ) if ( self.equipname == "equip_dieseldrone_zm" )
{ {
if ( player hasWeapon( self.equipname ) || ( isDefined( level.maxis_quadrotor ) && isDefined( level.maxis_quadrotor.player_owner ) && level.maxis_quadrotor.player_owner == player ) ) if (level.quadrotor_status.picked_up)
{
self.hint_string = &"ZOMBIE_BUILD_PIECE_HAVE_ONE";
return false;
}
else if (level.quadrotor_status.picked_up)
{ {
self.hint_string = &"ZOMBIE_BUILD_PIECE_ONLY_ONE"; self.hint_string = &"ZOMBIE_BUILD_PIECE_ONLY_ONE";
return false; return false;