added weapon class dist mutiplier

This commit is contained in:
INeedBots 2021-03-03 18:10:54 -06:00
parent b1357c8855
commit 446ef8e987

View File

@ -149,6 +149,7 @@ resetBotVars()
self.bot.jump_time = undefined;
self.bot.is_cur_full_auto = false;
self.bot.cur_weap_dist_multi = 1;
self.bot.rand = randomInt(100);
@ -244,6 +245,27 @@ doBotMovement()
}
}
/*
Sets the factor of distance for a weapon
*/
SetWeaponDistMulti(weap)
{
if (weap == "none")
return 1;
switch(weaponClass(weap))
{
case "rifle":
return 0.9;
case "smg":
return 0.7;
case "pistol":
return 0.5;
default:
return 1;
}
}
/*
The hold breath thread.
*/
@ -259,7 +281,7 @@ watchHoldBreath()
if(self.bot.isfrozen)
continue;
self holdbreath((self playerADS() && weaponClass(self getCurrentWEapon()) == "rifle"));
self holdbreath(self playerADS() >= 1);
}
}
@ -306,6 +328,7 @@ onWeaponChange()
weap = self GetCurrentWeapon();
self.bot.is_cur_full_auto = WeaponIsFullAuto(weap);
self.bot.cur_weap_dist_multi = SetWeaponDistMulti(weap);
if (weap != "none")
self changeToWeap(weap);
@ -314,6 +337,7 @@ onWeaponChange()
self waittill( "weapon_change", newWeapon );
self.bot.is_cur_full_auto = WeaponIsFullAuto(newWeapon);
self.bot.cur_weap_dist_multi = SetWeaponDistMulti(weap);
if (newWeapon == "none")
{
@ -609,9 +633,11 @@ updateAimOffset(obj)
targetObjUpdateTraced(obj, daDist, ent, theTime, isScriptObj)
{
distClose = self.pers["bots"]["skill"]["dist_start"];
distClose *= self.bot.cur_weap_dist_multi;
distClose *= distClose;
distMax = self.pers["bots"]["skill"]["dist_max"];
distMax *= self.bot.cur_weap_dist_multi;
distMax *= distMax;
timeMulti = 1;