Update lua files
This commit is contained in:
@@ -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")
|
||||
|
||||
@@ -56,4 +36,4 @@ if file.Find("refoselbots/gamemodes/" .. map .. ".lua", "LUA")[1] then
|
||||
include("refoselbots/gamemodes/" .. map .. ".lua")
|
||||
elseif file.Find("refoselbots/gamemodes/" .. gamemode .. ".lua", "LUA")[1] then
|
||||
include("refoselbots/gamemodes/" .. gamemode .. ".lua")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -79,11 +79,10 @@ end
|
||||
|
||||
function ENT:InFOV(pos, fov)
|
||||
local owner = self:GetOwner()
|
||||
|
||||
if not IsValid(owner) then return false end
|
||||
|
||||
if IsEntity(pos) then
|
||||
-- we must check eyepos and worldspacecenter
|
||||
-- maybe in the future add more points
|
||||
|
||||
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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user