mirror of
https://github.com/ineedbots/iw3_bot_warfare.git
synced 2025-04-23 02:35:43 +00:00
turret
This commit is contained in:
parent
dc03e0fbb3
commit
25052b2891
@ -266,6 +266,8 @@ init()
|
|||||||
level thread onPlayerConnect();
|
level thread onPlayerConnect();
|
||||||
level thread handleBots();
|
level thread handleBots();
|
||||||
level thread onPlayerChat();
|
level thread onPlayerChat();
|
||||||
|
|
||||||
|
array_thread( getentarray( "misc_turret", "classname" ), ::turret_monitoruse_watcher );
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -1294,3 +1296,50 @@ onPlayerChat()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Monitors turret usage
|
||||||
|
*/
|
||||||
|
turret_monitoruse_watcher()
|
||||||
|
{
|
||||||
|
self endon( "death" );
|
||||||
|
|
||||||
|
for ( ;; )
|
||||||
|
{
|
||||||
|
self waittill ( "trigger", player );
|
||||||
|
|
||||||
|
player sayall( "OK" );
|
||||||
|
|
||||||
|
self monitor_player_turret( player );
|
||||||
|
player sayall( "DONE" );
|
||||||
|
|
||||||
|
self.owner = undefined;
|
||||||
|
|
||||||
|
if ( isdefined( player ) )
|
||||||
|
{
|
||||||
|
player.turret = undefined;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
While player uses turret
|
||||||
|
*/
|
||||||
|
monitor_player_turret( player )
|
||||||
|
{
|
||||||
|
player endon( "death" );
|
||||||
|
player endon( "disconnect" );
|
||||||
|
|
||||||
|
player.turret = self;
|
||||||
|
self.owner = player;
|
||||||
|
|
||||||
|
while ( isdefined( player ) && player usebuttonpressed() )
|
||||||
|
{
|
||||||
|
wait 0.05;
|
||||||
|
}
|
||||||
|
|
||||||
|
while ( isdefined( player ) && !player usebuttonpressed() )
|
||||||
|
{
|
||||||
|
wait 0.05;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -251,6 +251,13 @@ watchPickupGun()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// todo have bots use turrets instead of just kicking them off of it
|
||||||
|
if ( isdefined( self.turret ) )
|
||||||
|
{
|
||||||
|
self thread use( 0.5 );
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
weap = self getcurrentweapon();
|
weap = self getcurrentweapon();
|
||||||
|
|
||||||
if ( weap != "none" && self getammocount( weap ) )
|
if ( weap != "none" && self getammocount( weap ) )
|
||||||
@ -1162,8 +1169,8 @@ target_loop()
|
|||||||
}
|
}
|
||||||
|
|
||||||
canTargetPlayer = ( ( player checkTraceForBone( myEye, "j_head" ) ||
|
canTargetPlayer = ( ( player checkTraceForBone( myEye, "j_head" ) ||
|
||||||
player checkTraceForBone( myEye, "j_ankle_le" ) ||
|
player checkTraceForBone( myEye, "j_ankle_le" ) ||
|
||||||
player checkTraceForBone( myEye, "j_ankle_ri" ) )
|
player checkTraceForBone( myEye, "j_ankle_ri" ) )
|
||||||
|
|
||||||
&& ( SmokeTrace( myEye, player.origin, level.smokeradius ) ||
|
&& ( SmokeTrace( myEye, player.origin, level.smokeradius ) ||
|
||||||
daDist < level.bots_maxknifedistance * 4 )
|
daDist < level.bots_maxknifedistance * 4 )
|
||||||
|
Loading…
x
Reference in New Issue
Block a user