added weapon class dist mutiplier

This commit is contained in:
INeedBots 2021-03-03 18:11:37 -06:00
parent ff413d513b
commit f0aa54189d

View File

@ -149,6 +149,7 @@ resetBotVars()
self.bot.jump_time = undefined; self.bot.jump_time = undefined;
self.bot.is_cur_full_auto = false; self.bot.is_cur_full_auto = false;
self.bot.cur_weap_dist_multi = 1;
self.bot.rand = randomInt(100); self.bot.rand = randomInt(100);
@ -270,6 +271,27 @@ spawned()
self notify("bot_spawned"); self notify("bot_spawned");
} }
/*
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. The hold breath thread.
*/ */
@ -285,7 +307,7 @@ watchHoldBreath()
if(self.bot.isfrozen) if(self.bot.isfrozen)
continue; continue;
self holdbreath((self playerADS() && weaponClass(self getCurrentWEapon()) == "rifle")); self holdbreath(self playerADS() >= 1);
} }
} }
@ -336,6 +358,7 @@ onWeaponChange()
weap = self GetCurrentWeapon(); weap = self GetCurrentWeapon();
self.bot.is_cur_full_auto = WeaponIsFullAuto(weap); self.bot.is_cur_full_auto = WeaponIsFullAuto(weap);
self.bot.cur_weap_dist_multi = SetWeaponDistMulti(weap);
if (weap != "none") if (weap != "none")
self changeToWeap(weap); self changeToWeap(weap);
@ -344,6 +367,7 @@ onWeaponChange()
self waittill( "weapon_change", newWeapon ); self waittill( "weapon_change", newWeapon );
self.bot.is_cur_full_auto = WeaponIsFullAuto(newWeapon); self.bot.is_cur_full_auto = WeaponIsFullAuto(newWeapon);
self.bot.cur_weap_dist_multi = SetWeaponDistMulti(weap);
if (newWeapon == "none") if (newWeapon == "none")
{ {
@ -639,9 +663,11 @@ updateAimOffset(obj)
targetObjUpdateTraced(obj, daDist, ent, theTime, isScriptObj) targetObjUpdateTraced(obj, daDist, ent, theTime, isScriptObj)
{ {
distClose = self.pers["bots"]["skill"]["dist_start"]; distClose = self.pers["bots"]["skill"]["dist_start"];
distClose *= self.bot.cur_weap_dist_multi;
distClose *= distClose; distClose *= distClose;
distMax = self.pers["bots"]["skill"]["dist_max"]; distMax = self.pers["bots"]["skill"]["dist_max"];
distMax *= self.bot.cur_weap_dist_multi;
distMax *= distMax; distMax *= distMax;
timeMulti = 1; timeMulti = 1;