Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- do
- -- Just to be a dick I won't tell you how to use it but the admins will patch it in a bit ;)
- -- Hijacker
- local mt = getrawmetatable(game)
- setreadonly(mt, false)
- -- Copy metatable
- local mtc = {}
- for k, v in pairs(mt) do
- mtc[k] = v
- end
- local rs
- local rm = game.ReplicatedStorage:WaitForChild("RemoteFunction")
- local fw = game.ReplicatedFirst.Framework
- mt.__index = function(self, k, ...)
- if k == "IsLoaded" then
- return function()
- warn("[PFJacker]: Init "..tostring(getfenv(2).leleltrue))
- getfenv(2).leleltrue = true
- warn("[PFJacker]: End "..tostring(getfenv(2).leleltrue))
- return getfenv(2).leleltrue
- end
- end
- if getfenv(2).script == fw and not getfenv(2).leleltrue then
- warn("[PFJacker]: Init "..tostring(getfenv(2).leleltrue))
- fenv = getfenv(2)
- getfenv(2).leleltrue = true
- local meta = getrawmetatable(getfenv(2))
- setreadonly(meta, false)
- local metac = {}
- for k, v in pairs(meta) do
- metac[k] = v
- end
- meta.__index = function(self, k)
- if k ~= "leleltru" then
- if typeof(metac.__index) == "table" then
- return rawget(metac.__index, k)
- end
- return metac.__index(self, k)
- else
- local v
- if typeof(metac.__index) == "table" then
- v = rawget(metac.__index, k)
- else
- v = metac.__index(self, k)
- end
- if not v then
- warn("[PFJacker]: Bypassed reset attempt!")
- end
- return true
- end
- end
- meta.__newindex = function(self, k, v)
- if k ~= "leleltru" then
- if metac.__newindex then
- return metac.__newindex(self, k, v)
- else
- rawset(self, k, v)
- end
- else
- if not v then
- warn("[PFJacker]: Reset attempt!")
- end
- v = true
- if metac.__newindex then
- return metac.__newindex(self, k, v)
- else
- rawset(self, k, v)
- end
- end
- end
- getfenv(2).leleltrue = true
- warn("[PFJacker]: End "..tostring(getfenv(2).leleltrue))
- end
- if k == "InvokeServer" and self == rm then
- local real = mtc.__index(self, k, ...)
- end
- return mtc.__index(self, k, ...)
- end
- mt.__namecall = function(self, k, ...)
- if k == "IsLoaded" then
- warn("[PFJacker]: Init "..tostring(getfenv(2).leleltrue))
- getfenv(2).leleltrue = true
- warn("[PFJacker]: End "..tostring(getfenv(2).leleltrue))
- return getfenv(2).leleltrue
- end
- if getfenv(2).script == fw and not getfenv(2).leleltrue then
- fenv = getfenv(2)
- for k, v in pairs(debug.getlocals(2)) do
- locals[k] = v
- end
- warn("[PFJacker]: Init "..tostring(getfenv(2).leleltrue))
- getfenv(2).leleltrue = true
- warn("[PFJacker]: End "..tostring(getfenv(2).leleltrue))
- end
- return mtc.__namecall(self, k, ...)
- end
- if getgenv().__resetPF then
- getgenv().__resetPF()
- end
- function rs()
- if getgenv().__resetPF and getgenv().__resetPF ~= rs then
- getgenv().__resetPF()
- end
- for k, v in pairs(mtc) do
- mt[k] = v
- end
- end
- end
- game:GetService("ReplicatedFirst"):WaitForChild("Framework")
- local fw = game:GetService("ReplicatedFirst"):FindFirstChild("Framework")
- fw.RobloxLocked = true
- fw.Disabled = true
- fw.Parent = nil
- wait()
- fw.RobloxLocked = false
- fw.Parent = game:GetService("ReplicatedFirst")
- fw.Disabled = false
- local PF_HIJACK = getgenv()["PF_HIJACK"]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement