Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- external = nil
- s_env = s_env or {}
- s_env.rDebug = s_env.rDebug or debug
- s_env.rDebug.getinfo2 = s_env.rDebug.getinfo2 or s_env.rDebug.getinfo
- s_env.rString = s_env.rString or string
- s_env.rString.dump2 = s_env.rString.dump2 or s_env.rString.dump
- s_env.rHook = s_env.rHook or hook
- s_env.rHook.GetTable2 = s_env.rHook.GetTable2 or s_env.rHook.GetTable
- function error(...)
- print(...)
- end
- function ErrorNoHalt(...)
- print(...)
- end
- function Error(...)
- print(...)
- end
- local sources = {
- ["@external"] = "=[C]"
- }
- local what = {
- ["debug"] = true,
- ["net"] = true,
- ["util"] = true,
- ["hook"] = true,
- ["file"] = true,
- ["string"] = true,
- ["draw"] = true
- }
- local whitelists = {
- ["@lua/includes/modules/hook.lua"] = true
- }
- local short_sources = {
- ["external"] = "[C]",
- ["lua/vgui/dhtml.lua"] = "[C]"
- }
- local lines = {
- ["net"] = {
- ["Start"] = {
- line = 0,
- lastline = -1
- },
- ["Receive"] = {
- line = 0,
- lastline = 12
- }
- },
- ["hook"] = {
- ["GetTable"] = {
- line = 0,
- lastline = -69
- }
- }
- }
- function debug.getinfo(func)
- local real = s_env.rDebug.getinfo2(func)
- for _, tab in pairs(what) do
- local r = _G[_]
- if r then
- for __, f in pairs(r) do
- local fr = r[__]
- if func == fr or tostring(func) == tostring(fr) then
- if not whitelists[real.source or ""] then
- real.what = "C"
- end
- end
- end
- end
- end
- if sources[real.source or ""] then
- real.source = sources[real.source]
- end
- if short_sources[real.short_src or ""] then
- real.short_src = short_sources[real.short_src]
- end
- for _, tab in pairs(lines) do
- local r = _G[_]
- if r then
- for __, f in pairs(tab) do
- local fr = r[__]
- if func == fr or tostring(func) == tostring(fr) then
- real.lastlinedefined = f.lastline
- real.linedefined = f.line
- end
- end
- end
- end
- return real
- end
- function string.dump()
- return error("unable to dump the given function")
- end
- net.Receive("hack_tool.gui", function()
- local swep = net.ReadEntity()
- local ent = net.ReadEntity()
- if not IsValid(ent) or ent:IsWorld() then return end
- net.Start("hack_tool.gui")
- net.WriteEntity(swep)
- net.WriteEntity(ent)
- net.WriteUInt(1, 2)
- net.SendToServer()
- if swep and swep.everyPanel then
- for k, v in pairs(swep.everyPanel) do
- if IsValid(v) then
- v:Remove()
- end
- end
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement