mirror of
https://github.com/ineedbots/iw4_bot_warfare.git
synced 2025-04-22 13:55:43 +00:00
pick up guns
This commit is contained in:
parent
f64ba9cccf
commit
918bb4020a
@ -161,10 +161,8 @@ You can find the ModDB release post [here](https://www.moddb.com/mods/bot-warfar
|
||||
- Recoil for bots
|
||||
- Use proper activate button for bombs, carepackages, etc
|
||||
- Proper weapon swaps, including altmode
|
||||
- Pick up weapons from ground
|
||||
- Use static turrets in maps
|
||||
- Proper use of pred missile
|
||||
- Bots in ac130 have viewport issues (engine)
|
||||
|
||||
## Credits
|
||||
- IW4x Team - https://github.com/XLabsProject/iw4x-client
|
||||
|
@ -472,10 +472,32 @@ spawned()
|
||||
self thread walk();
|
||||
self thread watchHoldBreath();
|
||||
self thread watchGrenadeFire();
|
||||
self thread watchPickupGun();
|
||||
|
||||
self notify( "bot_spawned" );
|
||||
}
|
||||
|
||||
/*
|
||||
watchPickupGun
|
||||
*/
|
||||
watchPickupGun()
|
||||
{
|
||||
self endon( "disconnect" );
|
||||
self endon( "death" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
wait 1;
|
||||
|
||||
weap = self GetCurrentWeapon();
|
||||
|
||||
if ( weap != "none" && self GetAmmoCount( weap ) )
|
||||
continue;
|
||||
|
||||
self thread use( 0.5 );
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Watches when the bot fires a grenade
|
||||
*/
|
||||
@ -682,6 +704,7 @@ grenade_danager_loop()
|
||||
if ( !bulletTracePassed( myEye, frag.origin, false, frag.grenade ) )
|
||||
continue;
|
||||
|
||||
self BotNotifyBotEvent( "throwback", "stop", frag );
|
||||
self thread frag();
|
||||
break;
|
||||
}
|
||||
@ -1435,8 +1458,13 @@ aim_loop()
|
||||
|
||||
if ( self.bot.isfraggingafter || self.bot.issmokingafter )
|
||||
nadeAimOffset = dist / 3000;
|
||||
else if ( curweap != "none" && weaponClass( curweap ) == "grenade" )
|
||||
nadeAimOffset = dist / 16000;
|
||||
else if ( curweap != "none" && ( weaponClass( curweap ) == "grenade" || curweap == "throwingknife_mp" ) )
|
||||
{
|
||||
if ( getWeaponClass( curweap ) == "weapon_projectile" )
|
||||
nadeAimOffset = dist / 16000;
|
||||
else
|
||||
nadeAimOffset = dist / 3000;
|
||||
}
|
||||
|
||||
if ( no_trace_time && ( !isDefined( self.bot.after_target ) || self.bot.after_target != target ) )
|
||||
{
|
||||
@ -1572,8 +1600,13 @@ aim_loop()
|
||||
|
||||
if ( self.bot.isfraggingafter || self.bot.issmokingafter )
|
||||
nadeAimOffset = dist / 3000;
|
||||
else if ( curweap != "none" && weaponClass( curweap ) == "grenade" )
|
||||
nadeAimOffset = dist / 16000;
|
||||
else if ( curweap != "none" && ( weaponClass( curweap ) == "grenade" || curweap == "throwingknife_mp" ) )
|
||||
{
|
||||
if ( getWeaponClass( curweap ) == "weapon_projectile" )
|
||||
nadeAimOffset = dist / 16000;
|
||||
else
|
||||
nadeAimOffset = dist / 3000;
|
||||
}
|
||||
|
||||
aimpos = last_pos + ( 0, 0, self getEyeHeight() + nadeAimOffset );
|
||||
|
||||
@ -1726,6 +1759,9 @@ canAds( dist, curweap )
|
||||
if ( curweap == "none" )
|
||||
return false;
|
||||
|
||||
if ( curweap == "c4_mp" )
|
||||
return RandomInt( 2 );
|
||||
|
||||
if ( !getDvarInt( "bots_play_ads" ) )
|
||||
return false;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user