mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 21:53:46 +03:00
42 lines
1.3 KiB
Lua
42 lines
1.3 KiB
Lua
|
|
--[[
|
||
|
|
| This file was obtained through the combined efforts
|
||
|
|
| of Madbluntz & Plymouth Antiquarian Society.
|
||
|
|
|
|
||
|
|
| Credits: lifestorm, Gregory Wayne Rossel JR.,
|
||
|
|
| Maloy, DrPepper10 @ RIP, Atle!
|
||
|
|
|
|
||
|
|
| Visit for more: https://plymouth.thetwilightzone.ru/
|
||
|
|
--]]
|
||
|
|
|
||
|
|
|
||
|
|
do
|
||
|
|
local function spawnerESP(client, entity, x, y, factor, distance)
|
||
|
|
local alpha = math.Remap(math.Clamp(distance, 1500, 2000), 1500, 2000, 255, 45)
|
||
|
|
local npcClass = entity:GetNPCClass()
|
||
|
|
local npcCount = 0
|
||
|
|
local entityIndex = entity:EntIndex()
|
||
|
|
local timerName = "NPCSpawner" .. entityIndex
|
||
|
|
|
||
|
|
for _, npc in ipairs(ents.FindByClass(npcClass)) do
|
||
|
|
if (npc:GetNetVar("SpawnerID", 0) == entityIndex) then
|
||
|
|
npcCount = npcCount + 1
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
ix.util.DrawText(npcClass .. " Spawner (" .. npcCount .. "/" .. entity:GetMaxNPCs() .. ")", x, y, Color(255, 255, 255, alpha), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER, nil, alpha)
|
||
|
|
end
|
||
|
|
|
||
|
|
ix.observer:RegisterESPType("ix_npcspawner", spawnerESP, "npcspawner")
|
||
|
|
end
|
||
|
|
|
||
|
|
net.Receive("NPCSpawner_Edit", function()
|
||
|
|
local spawner = net.ReadEntity()
|
||
|
|
local bEnabled = net.ReadBool()
|
||
|
|
local sClass = net.ReadString()
|
||
|
|
local fPlayerNoSpawnRange = net.ReadFloat()
|
||
|
|
local fMaxNPCs = net.ReadFloat()
|
||
|
|
local fSpawnInterval = net.ReadFloat()
|
||
|
|
|
||
|
|
vgui.Create("ixNPCSpawnerEditor"):Populate(spawner, bEnabled, sClass, fPlayerNoSpawnRange, fMaxNPCs, fSpawnInterval)
|
||
|
|
end)
|