Update lua files

This commit is contained in:
Refosel
2026-03-28 15:22:25 +03:00
parent 1347f38f78
commit 7909d380e9
3 changed files with 40 additions and 40 deletions

View File

@@ -1,28 +1,8 @@
--if game.SinglePlayer() or CLIENT then return end
RefoselBots = {}
RefoselBots.NoNavMesh = {}
RefoselBots.Models = {}
LeadBot = {}
LeadBot.NoNavMesh = {}
LeadBot.Models = {} -- Models, leave as {} if random is desired
--[[-----
CONFIG START CONFIG START
CONFIG START CONFIG START
CONFIG START CONFIG START
--]]-----
-- Name Prefix
LeadBot.Prefix = ""
--[[-----
CONFIG END CONFIG END
CONFIG END CONFIG END
CONFIG END CONFIG END
--]]-----
RefoselBots.Prefix = ""
include("refoselbots/base.lua")

View File

@@ -80,10 +80,9 @@ end
function ENT:InFOV(pos, fov)
local owner = self:GetOwner()
if IsEntity(pos) then
-- we must check eyepos and worldspacecenter
-- maybe in the future add more points
if not IsValid(owner) then return false end
if IsEntity(pos) then
if PointWithinViewAngle(owner:EyePos(), pos:WorldSpaceCenter(), owner:GetAimVector(), fov) then
return true
end
@@ -95,22 +94,19 @@ function ENT:InFOV(pos, fov)
end
function ENT:CanSee(ply, fov)
local owner = self:GetOwner()
if not IsValid(owner) then return false end
if ply:GetPos():DistToSqr(self:GetPos()) > self:GetMaxVisionRange() * self:GetMaxVisionRange() then
return false
end
-- TODO: check fog farz and compare with distance
-- half fov or something
-- probably should move this to a variable
fov = fov or true
if fov and !self:InFOV(ply, math.cos(0.5 * (self:GetFOV() or 90) * math.pi / 180)) then
return false
end
-- TODO: we really should check worldspacecenter too
local owner = self:GetOwner()
return util.QuickTrace(owner:EyePos(), ply:EyePos() - owner:EyePos(), {owner, self}).Entity == ply
end

View File

@@ -1,6 +1,30 @@
LeadBot.RespawnAllowed = true
LeadBot.SetModel = false
LeadBot.Gamemode = "cod_custom"
LeadBot.TeamPlay = true
LeadBot.LerpAim = true
LeadBot.NoFlashlight = true
RefoselBots.RespawnAllowed = true
RefoselBots.SetModel = false
RefoselBots.Gamemode = "cod_custom"
RefoselBots.TeamPlay = true
RefoselBots.LerpAim = true
RefoselBots.NoFlashlight = true
function RefoselBots.PlayerSpawn(bot)
timer.Simple(0.1, function()
if not IsValid(bot) then return end
local t1, t2 = 0, 0
for _, ply in ipairs(player.GetAll()) do
if ply ~= bot and ply:Team() then
if ply:Team() == 1 then t1 = t1 + 1
elseif ply:Team() == 2 then t2 = t2 + 1
end
end
end
if t1 <= t2 then
bot:SetTeam(1)
else
bot:SetTeam(2)
end
bot:ResetParametrsCOD()
end)
end