mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-15 21:03:46 +03:00
50 lines
1.6 KiB
Lua
50 lines
1.6 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/
|
|
--]]
|
|
|
|
eProtect = eProtect or {}
|
|
eProtect.data = eProtect.data or {}
|
|
eProtect.data.exploitPatcher = eProtect.data.exploitPatcher or {}
|
|
|
|
eProtect.patcher = eProtect.patcher or {}
|
|
|
|
local function addExploitPatch(str, func)
|
|
eProtect.patcher[str] = func
|
|
eProtect.data.exploitPatcher[str] = true
|
|
end
|
|
|
|
addExploitPatch("start_wd_emp", function(ply)
|
|
if IsValid(ply) and ply:IsPlayer() then
|
|
local wep = ply:GetActiveWeapon()
|
|
if !IsValid(wep) or wep:GetClass() ~= "weapon_hack_phone" then
|
|
return false
|
|
end
|
|
end
|
|
end)
|
|
|
|
addExploitPatch("gPrinters.removePrinter", function(ply)
|
|
if IsValid(ply) and ply:IsPlayer() then
|
|
return ply:IsSuperAdmin()
|
|
end
|
|
end)
|
|
|
|
hook.Add("eP:PreNetworking", "eP:ExploitPatches", function(ply, netstring, len)
|
|
if eProtect.patcher[netstring] and isfunction(eProtect.patcher[netstring]) and !eProtect.config["disabledModules"]["exploit_patcher"] then
|
|
local result = eProtect.patcher[netstring](ply)
|
|
|
|
if result == false then
|
|
eProtect.logDetectionHandeler(ply, "patched-exploit", netstring, 2)
|
|
eProtect.punish(ply, 2, slib.getLang("eprotect", eProtect.config["language"], "banned-exploit-attempt"))
|
|
return false end
|
|
end
|
|
end)
|
|
|
|
if eProtect.queueNetworking then
|
|
eProtect.queueNetworking(nil, "exploitPatcher")
|
|
end |