(adsbygoogle = window.adsbygoogle || []).push({});
I am not sure what the problem is
Code
tracebullet( tracedistance, tracereturn, detectplayers )
{
if( !(IsDefined( tracedistance )) )
{
tracedistance = 10000000;
}
if( !(IsDefined( tracereturn )) )
{
tracereturn = "position";
}
if( !(IsDefined( detectplayers )) )
{
detectplayers = 0;
}
return bullettrace( self geteye(), self geteye() + vector_scale( anglestoforward( self getplayerangles() ), tracedistance ), detectplayers, self )[ tracereturn];
}
spawnstall()
{
iprintln( "Real Carepackage Stall ^2Spawned^7 @ Host Position" );
currentangles = self getplayerangles();
spawnrealcarepkgstall( self.origin + ( 0, 0, 18 ), ( 0, currentangles[ 1], 0 ), "supplydrop_mp", self, self.team, self.killcament, undefined, undefined, undefined );
}
spawnstallcross()
{
iprintln( "Real Carepackage Stall ^2Spawned^7 @ Host Crosshair" );
pos = self tracebullet();
currentangles = self getplayerangles();
if( distance( self.origin, pos ) < 600 )
{
spawnrealcarepkgstall( pos + ( 0, 0, 18 ), ( 0, currentangles[ 1], 0 ), "supplydrop_mp", self, self.team, self.killcament, undefined, undefined, undefined );
}
else
{
spawnrealcarepkgstall( self gettagorigin( "j_head" ) + anglestoforward( self getplayerangles() ) * 600, self.angles, "supplydrop_mp", self, self.team, self.killcament, undefined, undefined, undefined );
}
}
spawnrealcarepkgstall( origin, angle, category, owner, team, killcament, killstreak_id, package_contents_id, crate )
{
angle = ( angle[ 0] 0.5, angle[ 1] 0.5, angle[ 2] * 0.5 );
if( IsDefined( crate ) )
{
origin = crate.origin;
angle = crate.angles;
crate delete();
}
crate = cratespawn( category, owner, team, origin, angle );
killcament unlink();
killcament linkto( crate );
crate.killcament = killcament;
crate.killstreak_id = killstreak_id;
crate.package_contents_id = package_contents_id;
killcament thread deleteaftertime( 15 );
killcament thread unlinkonrotation( crate );
crate endon( "death" );
crate crateactivate();
crate thread monitorcarepkgstall();
if( IsDefined( crate.cratetype.hint_gambler ) )
{
crate thread crategamblerthink();
}
default_land_function( crate, category, owner, team );
}
monitorcarepkgstall()
{
while( IsDefined( self ) )
{
self waittill( "trigger", player );
while( !(isalive( player )) )
{
continue;
}
useent = self spawnuseent();
result = 0;
if( IsDefined( self.hacker ) )
{
useent.hacker = self.hacker;
}
self.useent = useent;
result = useent carepkgstallthink( player, 3000 );
if( IsDefined( useent ) )
{
useent delete();
}
if( result )
{
self notify( "captured" );
}
}
}
carepkgstallthink( player, usetime )
{
player notify( "use_hold" );
player.fakecpk = spawn( "script_origin", player.origin );
player.fakecpk.angles = player.angles;
player playerlinkto( player.fakecpk );
player _disableweapon();
self.curprogress = 0;
self.inuse = 1;
self.userate = 0;
self.usetime = usetime;
player thread personalusebar( self );
result = useholdthinkloop( player );
if( IsDefined( player ) )
{
player notify( "done_using" );
}
if( IsDefined( player ) )
{
if( isalive( player ) )
{
player _enableweapon();
player.fakecpk delete();
player unlink();
if( level.gameended )
{
player freezecontrols( 1 );
}
}
}
if( IsDefined( self ) )
{
self.inuse = 0;
}
if( result && IsDefined( result ) )
{
return 1;
}
return 0;
}