Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- params : ...
- local module = {}
- local pl = game:GetService("Players")
- local r = game:GetService("ReplicatedStorage")
- local u = game:GetService("UserInputService")
- local l = game:GetService("Lighting")
- local tws = game:GetService("TweenService")
- local ts = game:GetService("TextService")
- local db = (game:GetService("Debris"))
- local p, g, obf, rem, shop = nil, nil, nil, nil, nil
- _G.MODULE_LOG = {}
- local w = workspace
- local m = math
- local i = Instance
- local v = Vector3
- local v2 = Vector2
- local b = BrickColor
- local c = Color3
- local ra = Ray
- local t = TweenInfo
- local c2 = CFrame
- local ud = UDim2
- local tb = table
- local ns = NumberSequence
- local nsk = NumberSequenceKeypoint
- module.ob = function(self)
- return {i.new, v.new, b.new, b.Random, m.random, m.rad, v2.new, ud.new, c.new, c2.new, c2.Angles, m.abs, m.floor, m.ceil, m.max, m.min, ra.new, t.new, tostring, tonumber, m.acos, m.deg, m.huge, true, false, tb.insert, tb.remove, tb.sort, ipairs, ns.new, nsk.new, c.fromRGB, m.sqrt, m.clamp, m.huge, m.sin, m.cos, m.atan2, m.pi}
- end
- _G.q = module:ob()
- local var = {
- Reloading = {}
- ,
- Notifications = {}
- ,
- Bomb = {}
- , InTab = _G.q[24], Overlay = _G.q[24],
- Close = {0,
- {}
- }
- ,
- CurrentSector = {}
- ,
- Window = {WindowPart = _G.q[24], GlassPart = _G.q[24], JewelryGlassPart = _G.q[24], ArtGlassPart = _G.q[24], CarGlassPart = _G.q[24]}
- ,
- Warning = {nil, 0}
- ,
- Warning2 = {nil, 0}
- , PDeb = tick(),
- ShootDebounce = {}
- }
- module.AddComma = function(self, v)
- local f, k = _G.q[19](v)
- while 1 do
- if _G.q[24] then
- f = f:gsub("^(-?%d+)(%d%d%d)", "%1,%2")
- end
- if k == 0 then
- break
- end
- end
- return f
- end
- local resource = script:WaitForChild("Resource")
- local thread = _G.q[1]("BindableEvent", resource)
- thread.Name = "Thread"
- module.Thread = function(Type, ...)
- thread:Fire(Type, ...)
- end
- thread.Event:Connect(function(Type, ...)
- local d = {...}
- if Type == "Warn" and g then
- if not d[3] then
- local n = var.Warning[2] + 1
- do
- var.Warning = {d[1], n}
- module.new("Instruct", 2, d[1])
- g.InstructionsFrame2.Visible = _G.q[24]
- wait(d[4] or 10)
- if var.Warning[1] == d[1] and var.Warning[2] == n then
- do
- g.InstructionsFrame2.Visible = _G.q[25]
- -- DECOMPILER ERROR at PC56: LeaveBlock: unexpected jumping out IF_THEN_STMT
- -- DECOMPILER ERROR at PC56: LeaveBlock: unexpected jumping out IF_STMT
- end
- end
- end
- else
- local n = var.Warning2[2] + 1
- var.Warning2 = {d[1], n}
- if d[4] then
- module.new("Instruct", 3, d[1], d[2])
- g.InstructionsFrame3.Visible = _G.q[24]
- else
- g.InstructionsFrame3.Visible = _G.q[25]
- end
- end
- end
- do
- if Type == "FadeFilter" and g and l.DeathFilter.Saturation == -1 then
- g.PlayerFrame.DeathFrame.Label.TextTransparency = 1
- g.PlayerFrame.DeathFrame:TweenSize(_G.q[8](0, 0, 0.25, 0), "Out", "Quad", 1)
- for i = -1, 0, 0.1 do
- l.DeathFilter.Saturation = i
- wait()
- end
- l.DeathFilter.Saturation = 0
- wait(1)
- g.PlayerFrame.DeathFrame.Visible = _G.q[25]
- end
- if Type == "CreateSound" then
- local id, pos = unpack(d)
- local part = _G.q[1]("Part")
- part.Name = "SoundPart"
- part.Transparency = 1
- part.CanCollide = _G.q[25]
- part.Anchored = _G.q[24]
- part.Size = _G.q[2](0.2, 0.2, 0.2)
- part.TopSurface = Enum.SurfaceType.Smooth
- part.BottomSurface = Enum.SurfaceType.Smooth
- part.CFrame = _G.q[10](pos.X, pos.Y, pos.Z)
- part.Parent = w.Game.TargetFilter
- local sound = _G.q[1]("Sound", part)
- sound.SoundId = id
- wait()
- db:AddItem(part, sound.TimeLength)
- sound:Play()
- else
- do
- if Type == "Notification" and g then
- local nf = g.NotificationsFrame
- local notification = function(message, scale)
- local last = nil
- nf:ClearAllChildren()
- _G.q[26](var.Notifications, {message, scale})
- for i,v in _G.q[29](var.Notifications) do
- local nf2 = resource:FindFirstChild("NotificationFrame")
- if nf2 then
- nf2 = nf2:Clone()
- nf2.Parent = nf
- local ax = nf2.Label.AbsoluteSize.Y
- if v[1][2] then
- nf2.Size = _G.q[8](1, -10, 0.1 * v[1][2].Scale, 0)
- nf2.Label.Size = _G.q[8](1, -20, 1, 0)
- nf2.Label.Position = _G.q[8](0, 10, 0, 0)
- else
- nf2.Label.Size = _G.q[8](1, -20, 0.5, 0)
- nf2.Label.Position = _G.q[8](0, 10, 0.25, 0)
- end
- if last then
- nf2.Position = _G.q[8](0, 5, 1, -_G.q[12](last.Position.Y.Offset) - nf2.AbsoluteSize.Y - 5)
- else
- nf2.Position = _G.q[8](0, 5, 1, -nf2.AbsoluteSize.Y)
- end
- local t = v[1][1]
- nf2.Label.Text = t[1]
- if t[3] then
- nf2.BackgroundColor3 = t[3]
- end
- do
- do
- if t[4] then
- local sfx = _G.q[1]("Sound", script)
- sfx.Name = "SFX"
- sfx.SoundId = t[4]
- sfx:Play()
- db:AddItem(sfx, sfx.TimeLength)
- end
- last = nf2
- db:AddItem(nf2, 7)
- module.Thread("CleanNotification", i)
- -- DECOMPILER ERROR at PC165: LeaveBlock: unexpected jumping out DO_STMT
- -- DECOMPILER ERROR at PC165: LeaveBlock: unexpected jumping out IF_THEN_STMT
- -- DECOMPILER ERROR at PC165: LeaveBlock: unexpected jumping out IF_STMT
- end
- end
- end
- end
- end
- if not var.NotD then
- var.NotD = _G.q[24]
- notification(d[1], d[2])
- wait(0.1)
- var.NotD = _G.q[25]
- end
- end
- do
- if Type == "CleanNotification" then
- wait()
- _G.q[27](var.Notification, d[1])
- else
- if Type == "Reward" and g then
- local rl = g.GameFrame.RewardLabel
- rl.Text = d[1]
- rl.TextColor3 = d[2]
- rl.Label.Text = d[3]
- if not var.Rewarding then
- var.Rewarding = _G.q[24]
- rl:TweenPosition(_G.q[8](0, 0, 0.2, 0), "Out", "Quad", 0.1)
- wait(4)
- rl:TweenPosition(_G.q[8](1, 0, 0.2, 0), "Out", "Quad", 0.1)
- wait(0.1)
- rl.Position = _G.q[8](-1, 0, 0.2, 0)
- var.Rewarding = nil
- end
- end
- end
- end
- end
- end
- end
- end)
- module.new = function(Type, ...)
- local d = {...}
- if Type == "ConnectionEvent" or Type == "ConnectionFunction" then
- local r = d[2]:FindFirstChild(d[3].Name .. "_" .. d[1])
- if not r then
- local e = _G.q[1]("Bindable" .. Type:gsub("Connection", ""))
- e.Name = d[3].Name .. "_" .. d[1]
- e.Parent = d[2]
- _G.MODULE_LOG[e.Name] = e
- return e
- else
- do
- do
- _G.MODULE_LOG[r.Name] = r
- do return r end
- if Type == "Weld" then
- local x, y, z, pos = unpack(d)
- do
- local weld = _G.q[1]("Weld")
- if y.Name == "PrimaryPart" then
- weld.Name = x.Name .. "Weld_" .. y.Parent.Name
- else
- weld.Name = x.Name .. "Weld_" .. y.Name
- end
- weld.Part0 = x
- weld.Part1 = y
- if not pos then
- local w = CFrame.new(x.Position)
- weld.C0 = x.CFrame:inverse() * w
- weld.C1 = y.CFrame:inverse() * w
- if z and type(z) == "userdata" then
- weld.Parent = z
- else
- weld.Parent = y
- end
- else
- do
- do
- do
- local v, w = CFrame.new(pos[1].p), CFrame.new(pos[2].p)
- weld.C0 = pos[1]:inverse() * v
- weld.C1 = pos[2]:inverse() * w
- if z and type(z) == "userdata" then
- weld.Parent = z
- else
- weld.Parent = y
- end
- do return weld end
- return weld
- end
- if Type == "DoorFunction" then
- local doorInfo = _G.q[18](2, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out, 0, _G.q[25])
- local door, ease, speed = unpack(d)
- local d1, d2 = door:FindFirstChild("Door1"), door:FindFirstChild("Door2")
- if d1 and d2 then
- local goal, goal2, sound = nil, nil, nil
- if ease == "Open" then
- goal2 = {CFrame = d2.DoorPosition.CFrame * _G.q[10](0, 0, -4.95)}
- goal = {CFrame = d1.DoorPosition.CFrame * _G.q[10](0, 0, 4.95)}
- sound = door:FindFirstChild("OpenSound")
- if sound then
- sound:Play()
- end
- local tween1, tween2 = tws:Create(d1, doorInfo, goal), tws:Create(d2, doorInfo, goal2)
- tween1:Play()
- tween2:Play()
- else
- do
- if ease == "Close" then
- goal2 = {CFrame = d2.DoorPosition.CFrame}
- goal = {CFrame = d1.DoorPosition.CFrame}
- sound = door:FindFirstChild("CloseSound")
- if sound then
- sound:Play()
- end
- local tween1, tween2 = tws:Create(d1, doorInfo, goal), tws:Create(d2, doorInfo, goal2)
- tween1:Play()
- tween2:Play()
- end
- do
- if d1 and not d2 then
- local goal, goal2, sound = nil, nil, nil
- if ease == "Open" then
- goal = {CFrame = d1.DoorPosition.CFrame * _G.q[10](0, 0, -4.95)}
- sound = door:FindFirstChild("OpenSound")
- if sound then
- sound:Play()
- end
- local tween1 = tws:Create(d1, doorInfo, goal)
- tween1:Play()
- else
- do
- if ease == "Close" then
- goal = {CFrame = d1.DoorPosition.CFrame}
- sound = door:FindFirstChild("CloseSound")
- if sound then
- sound:Play()
- end
- local tween1 = tws:Create(d1, doorInfo, goal)
- tween1:Play()
- end
- do
- if Type == "Fade" then
- local data = d[1]
- if data == "Out" then
- for i = 16, 0, -1 do
- l.Blur.Size = i
- wait()
- end
- l.Blur.Size = 0
- l.Blur.Enabled = _G.q[25]
- wait()
- l.Blur.Enabled = 8
- else
- for i = 0, 8 do
- l.Blur.Size = i
- wait()
- end
- l.Blur.Size = 8
- l.Blur.Enabled = _G.q[24]
- end
- else
- do
- if Type == "Audio" then
- local phase = d[1]
- if phase == "In" then
- resource.Theme:Play()
- for i = 0, 0.175, 0.005 do
- resource.Theme.Volume = i
- wait()
- end
- resource.Theme.Volume = 0.175
- else
- for i = 0.175, 0, -0.005 do
- resource.Theme.Volume = i
- wait()
- end
- resource.Theme.Volume = 0
- resource.Theme:Stop()
- end
- else
- do
- if Type == "WeaponMaster" then
- local phase, data, trigger = unpack(d)
- if phase == "Equip" then
- if not var.CurrentWeaponAsset then
- var.CurrentWeaponAsset = {}
- end
- if not var.LastGun then
- var.LastGun = {}
- end
- if var.CurrentWeaponAsset[2] then
- var.CurrentWeaponAsset[2].BorderColor3 = _G.q[9]()
- end
- var.CurrentWeaponAsset[1] = data[1]
- var.CurrentWeaponAsset[2] = data[2]
- if not var.LastGun[3] then
- var.LastGun[3] = {}
- end
- if not var.LastGun[4] then
- var.LastGun[4] = {}
- end
- if trigger then
- if var.LastGun[2] and var.LastGun[2] ~= data[1] then
- var.LastGun[3][var.LastGun[2]] = _G.q[25]
- end
- var.LastGun[2] = data[1]
- var.LastGun[3][data[1]] = _G.q[24]
- resource.DrawUI_New:Fire("SwitchLast", data[1], _G.q[24])
- else
- var.LastGun[3][data[1]] = _G.q[24]
- resource.DrawUI_New:Fire("CheckLastGun", data[1], _G.q[24])
- end
- if data[2] then
- data[2].BorderColor3 = _G.q[32](255, 170, 0)
- end
- var.GunType = data[1]
- _G.CLIENT_SETTINGS.BaseSpeed = var.GunData[var.GunType][5] * 16
- local wep = r.RemoteFunction:InvokeServer(obf.WeaponMaster, var.GunType, {"Equip", data[1]})
- if var.GunType and var.GunData[var.GunType][2] and var.GunData[var.GunType][3] then
- g.GameFrame.Ammo.Label.Text = data[1]
- var.Shot = _G.q[25]
- if not var.Reloading[var.GunType] then
- var.ShootDebounce[var.GunType] = _G.q[25]
- g.GameFrame.Ammo.Text = var.GunData[var.GunType][2] .. "/" .. var.GunData[var.GunType][3]
- else
- g.GameFrame.Ammo.Text = "Reloading..."
- end
- g.GameFrame.Ammo.Visible = _G.q[24]
- else
- g.GameFrame.Ammo.Visible = _G.q[25]
- do
- do
- do
- if wep and shop.GunStore[3][data[1]].Stats.Type == "Melee" then
- local hitDebounce = _G.q[25]
- wep.Touched:Connect(function(h)
- local c = p.Character
- if c and h.Parent and var.ShootDebounce[var.GunType] and not hitDebounce then
- local hum = h.Parent:FindFirstChild("Humanoid")
- if hum and hum ~= var.Humanoid and hum.Health > 0 then
- resource.Hit:Play()
- r.RemoteEvent:FireServer(obf.DealDamage, h, h.Parent, {})
- hitDebounce = _G.q[24]
- else
- if var.Window[h.Name] and h.Transparency ~= 1 then
- resource.Hit:Play()
- r.RemoteEvent:FireServer(obf.DestroyGlass, h)
- hitDebounce = _G.q[24]
- else
- if h.Parent.Name == "Alarm" and h.Parent.Indicator.BrickColor ~= _G.q[3]("Really black") then
- resource.Hit:Play()
- r.RemoteEvent:FireServer(obf.Interaction, h.Parent, "Bullet")
- hitDebounce = _G.q[24]
- else
- local stat = module:Find(h.Parent.Parent, "Statistics")
- if stat then
- local hull = stat:FindFirstChild("CurrentHull")
- if hull and hull.Value > 0 then
- resource.Hit:Play()
- r.RemoteEvent:FireServer(obf.Interaction, hull.Parent, "Bullet")
- hitDebounce = _G.q[24]
- end
- else
- do
- do
- local hull = h.Parent:FindFirstChild("Hull")
- if hull and hull.Value > 0 then
- resource.Hit:Play()
- r.RemoteEvent:FireServer(obf.Interaction, hull.Parent, "Bullet")
- hitDebounce = _G.q[24]
- end
- wait(var.GunData[var.GunType][1])
- hitDebounce = _G.q[25]
- end
- end
- end
- end
- end
- end
- end
- end)
- end
- if data[1] == "Handcuffs" then
- g.GameFrame.Ammo.Visible = _G.q[25]
- end
- if trigger then
- resource.DrawUI_New:Fire("SwitchLast", var.LastGun[2], _G.q[25)
- var.LastGun[2] = var.GunType
- else
- resource.DrawUI_New:Fire("CheckLastGun", nil, _G.q[25)
- end
- var.GunType = nil
- _G.CLIENT_SETTINGS.BaseSpeed = 16
- r.RemoteFunction:InvokeServer(obf.WeaponMaster, var.GunType, {"Unequip")
- g.GameFrame.Ammo.Visible = _G.q[25]
- if var.CurrentWeaponAsset[2] then
- var.CurrentWeaponAsset[2].BorderColor3 = _G.q[9]()
- end
- var.CurrentWeaponAsset = {}
- if Type == "Instruct" then
- local frame, text, boundsTable = unpack(d)
- if var.CurrentInstruction ~= text or boundsTable and var.CurrentColor ~= boundsTable[2] then
- var.CurrentInstruction = text
- if boundsTable then
- var.CurrentColor = boundsTable[1][2]
- end
- g["InstructionsFrame" .. frame]:ClearAllChildren()
- local endSize, endSize2 = 0, 0
- local labels = {}
- local lastXPos = 0
- for i = 1, #text do
- local currentChar = text:sub(i, i)
- local vec2Size = ts:GetTextSize(currentChar, 21, Enum.Font.SourceSans, _G.q[7](1000, 23))
- local label = _G.q[1]("TextLabel")
- label.Name = currentChar
- label.Font = Enum.Font.SourceSans
- label.TextSize = 21
- if boundsTable and #boundsTable > 0 then
- for i2 = 1, #boundsTable do
- local v = boundsTable[i2]
- if v[1] then
- if type(v[2]) == "number" then
- if v[1] < i and i < v[2] then
- label.TextColor3 = v[3]
- else
- label.TextColor3 = _G.q[9](1, 1, 1)
- end
- else
- if v[1] < i then
- label.TextColor3 = v[2]
- else
- label.TextColor3 = _G.q[9](1, 1, 1)
- end
- end
- else
- label.TextColor3 = _G.q[9](1, 1, 1)
- end
- end
- else
- do
- do
- label.TextColor3 = _G.q[9](1, 1, 1)
- label.TextStrokeTransparency = 0.75
- label.Size = _G.q[8](0, vec2Size.X + 2, 0, 0)
- endSize = endSize + vec2Size.X + 1 / #text
- endSize2 = vec2Size.X + 2
- label.BackgroundTransparency = 1
- label.Text = currentChar
- if currentChar ~= " " then
- lastXPos = lastXPos - 2
- label.Position = _G.q[8](0, lastXPos, 0, 0)
- else
- label.Position = _G.q[8](0, lastXPos, 0, 0)
- end
- label.ZIndex = 7
- label.Parent = g["InstructionsFrame" .. frame]
- lastXPos = lastXPos + vec2Size.X + 2
- _G.q[26](labels, label)
- -- DECOMPILER ERROR at PC948: LeaveBlock: unexpected jumping out DO_STMT
- -- DECOMPILER ERROR at PC948: LeaveBlock: unexpected jumping out IF_ELSE_STMT
- -- DECOMPILER ERROR at PC948: LeaveBlock: unexpected jumping out IF_STMT
- end
- end
- end
- end
- g["InstructionsFrame" .. frame].Size = _G.q[8](0, endSize, 0, endSize2)
- g["InstructionsFrame" .. frame].Position = _G.q[8](0.5, -(endSize) / 2, g["InstructionsFrame" .. frame].Position.Y.Scale, 0)
- return labels
- end
- else
- do
- -- DECOMPILER ERROR at PC1002: Unhandled construct in 'MakeBoolean' P1
- if Type == "CheckInstruction" and d[1] and var.CurrentInstruction == d[1] then
- g.InstructionsFrame1.Visible = _G.q[25]
- end
- if var.Humanoid and var.Humanoid.Health > 0 then
- g.InstructionsFrame1.Visible = _G.q[24]
- end
- if Type == "CheckSeat" and _G.Seat then
- local v = _G.Seat:FindFirstChild(d[1])
- if v then
- v.Value = d[2]
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- module.ret = function(RetType, ...)
- local d = {...}
- if RetType == "GetMagnitude" then
- local obj, objType, key, wantTable = unpack(d)
- local wtable = {}
- if var.Humanoid and var.Humanoid.Health > 0 and var.Root then
- if objType == "Door" then
- local magnitude = obj.PrimaryPart.Position - var.Root.Position.magnitude
- if magnitude <= 10 then
- return _G.q[24]
- end
- else
- do
- do
- do
- if objType == "Structure" then
- local ray = module.ret("GetRay", var.Humanoid, obj, c)
- if ray and var.Root.CFrame.Y < obj.Base.Roof.CFrame.Y then
- if not wantTable then
- return _G.q[24]
- else
- _G.q[26](wtable, c)
- end
- end
- end
- if not wantTable then
- return _G.q[25]
- else
- if #wtable > 0 then
- return _G.q[24], wtable
- else
- return _G.q[25]
- end
- end
- if RetType == "Inverse" then
- if d[1] == 3 then
- return 1
- else
- return 3
- end
- else
- if RetType == "GetScore" then
- local score = d[1][4][2] / (d[1][3][1] / module.ret("Inverse", d[1][3][2]))
- if score > 0.2 then
- if score > 0.4 then
- if score > 0.6 then
- if score > 0.8 then
- if score >= 1 then
- if score == 3 then
- return {"S", _G.q[9](1, 1, 0)}
- else
- return {"A", _G.q[32](255, 200, 0)}
- end
- else
- return {"B", _G.q[32](255, 170, 0)}
- end
- else
- return {"C", _G.q[32](255, 85, 0)}
- end
- else
- return {"D", _G.q[32](170, 0, 0)}
- end
- else
- return {"E", _G.q[32](85, 0, 0)}
- end
- else
- return {"F", _G.q[32](80, 40, 0)}
- end
- else
- do
- if RetType == "ReturnCharacters" then
- local chars = {}
- local t = pl:GetPlayers()
- for i = 1, #t do
- local p2 = t[i]
- if p2.Character then
- _G.q[26](chars, p2.Character)
- end
- end
- return chars
- else
- do
- if RetType == "GetRay" and var.Root then
- local obj = unpack(d)
- local ray = _G.q[17](var.Root.Position, _G.q[2](0, 1000, 0))
- local c2 = module.ret("ReturnCharacters")
- local part, pos = w:FindPartOnRayWithIgnoreList(ray, {var.Character, w.Game.TargetFilter, unpack(c2)})
- if obj and part and module:GetParent(part, obj) then
- return part
- end
- do return part end
- return
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- module.CheckSprint = function(self)
- if var.Humanoid then
- if _G.CLIENT_SETTINGS.CanMove then
- var.Humanoid.WalkSpeed = _G.q[34](_G.CLIENT_SETTINGS.BaseWalkSpeed, 0, 24)
- var.Humanoid.JumpPower = _G.q[34](_G.CLIENT_SETTINGS.BaseJumpPower, 0, 50)
- else
- var.Humanoid.WalkSpeed = 0
- var.Humanoid.JumpPower = 0
- end
- end
- end
- local thread = module.new("ConnectionEvent", "New, resource, script)
- thread.Event:Connect(module.new)
- local switchDebounce, flipDebounce = nil, nil
- module.input = function(input, ...)
- local d = {...}
- local KeyConvert = {one = 1, two = 2, three = 3, four = 4, five = 5, six = 6, Seven = 7, eight = 8, nine = 9, zero = 0}
- if not _G.MODULE_LOG.Input then
- _G.MODULE_LOG.Input = {}
- end
- _G.MODULE_LOG.Input[input[1]] = d[1]
- if var.Humanoid and var.Humanoid.Health > 0 then
- if KeyConvert[input[1]] and d[1] and var.LastGun and p.Role.Value ~= "Prisoner" and var.LastGun[2] and not switchDebounce then
- switchDebounce = _G.q[24]
- local v = KeyConvert[input[1]]
- local last = var.LastGun[4][v]
- if last then
- if not var.LastGun[3][last] then
- var.LastGun[3][last] = _G.q[24]
- if var.GunType then
- var.LastGun[3][var.GunType] = _G.q[25]
- end
- local getWeaponAsset = function(n)
- local t = g.PlayerFrame.WeaponWheelFrame.WeaponsFrame:GetChildren()
- for i = 1, #t do
- local v = t[i]
- local l = v:FindFirstChild("NameLabel")
- if l and l.Text == n then
- return v
- end
- end
- return
- end
- module.new("WeaponMaster", "Equip", {last, getWeaponAsset(last)})
- else
- do
- do
- var.LastGun[3][last] = _G.q[25]
- if var.GunType and var.GunType == last then
- module.new("WeaponMaster", "Unequip")
- end
- wait(0.1)
- switchDebounce = _G.q[25]
- if input[1] == "space" and d[1] and var.Root then
- resource.Vehicle_New:Fire("Kill, var.Root.CFrame)
- end
- -- DECOMPILER ERROR at PC202: Unhandled construct in 'MakeBoolean' P1
- if input[1] == "m" and d[1] and #var.Bomb > 0 and var.Humanoid and var.Humanoid.Health > 0 then
- r.RemoteFunction:InvokeServer(obf.WeaponMaste, var.GunType, {"DetonateC4",
- {var.Bomb[1], var.Bomb[1].CFrame, var.Bomb[2]}
- })
- if var.Bomb[1] then
- var.Bomb[1]:Destroy()
- end
- var.Bomb = {}
- if var.ShootDebounce[var.GunType] then
- var.ShootDebounce[var.GunType] = _G.q[25]
- end
- end
- if input[1] == "e" or input[1] == "touch" then
- local v = _G.MODULE_LOG.DrawUI_Return:Invoke("GetAdornee, "BillboardGui")
- if v and v[2] and v[3]:lower() == input[1] and _G.CLIENT_SETTINGS.CanMove then
- local stat = module:GetStatistics(v[2])
- module.Interact(d[1], stat, v[2])
- end
- else
- do
- -- DECOMPILER ERROR at PC289: Unhandled construct in 'MakeBoolean' P1
- if input[1] == "c" and d[1] and p.Role.Value ~= "Prisoner" then
- _G.MODULE_LOG.DrawUI_New:Fire("SetMainUI, "WeaponWheel")
- end
- if input[1] == "leftshift" or input[1] == "rightshift" then
- _G.MODULE_LOG.Render_New:Fire("Sprint, d[1])
- else
- if input[1] == "tab" and not var.TabDebounce then
- var.TabDebounce = _G.q[24]
- if not var.InTab then
- var.InTab = _G.q[24]
- g.LeaderboardFrame:TweenPosition(_G.q[8](0.85, 0, 0, 0, "Out", "Quad", 0.25, _G.q[24])
- else
- var.InTab = _G.q[25]
- g.LeaderboardFrame:TweenPosition(_G.q[8](1.5, 0, 0, 0, "Out", "Quad", 0.5, _G.q[24])
- end
- wait(0.5)
- var.TabDebounce = _G.q[25]
- end
- end
- if input[1] == "g" and d[1] then
- _G.MODULE_LOG.DrawUI_New:Fire("SetMainUI, "Group")
- else
- -- DECOMPILER ERROR at PC408: Unhandled construct in 'MakeBoolean' P1
- if input[1] == "f" and d[1] and p.Role.Value ~= "Prisoner" then
- _G.MODULE_LOG.DrawUI_New:Fire("SetMainUI, "Inventory")
- end
- end
- if input[1] == "x" and d[1] then
- _G.MODULE_LOG.DrawUI_New:Fire("ToggleOverlay)
- else
- if input[1] == "r" and d[1] then
- _G.MODULE_LOG.Render_New:Fire("Reload)
- _G.MODULE_LOG.Design_New:Fire("SetRotation)
- else
- if input[1] == "p" and d[1] then
- resource.InitializeUI_New:Fire("Sector, _G.q[24])
- else
- if input[1] == "l" and d[1] then
- _G.MODULE_LOG.Vehicle_New:Fire("Headlight)
- else
- if input[1] == "h" then
- r.RemoteEvent:FireServer(obf.AttachCa, "Horn")
- else
- if input[1] == "y" and d[1] then
- r.RemoteEvent:FireServer(obf.AttachCa, "Siren")
- else
- if input[1] == "t" then
- var.T = d[1]
- if d[1] then
- g.PlayerFrame.InfBar:TweenPosition(_G.q[8](0.45, 0, 0.125, -10, "Out", "Quad", 0.1, _G.q[24])
- else
- g.PlayerFrame.InfBar:TweenPosition(_G.q[8](0.45, 0, -0.5, 0, "Out", "Quad", 1, _G.q[24])
- end
- else
- if input[1] == "v" and d[1] and _G.Car and not flipDebounce then
- flipDebounce = _G.q[24]
- r.RemoteEvent:FireServer(obf.AttachCa, "AttemptFlip")
- wait(0.25)
- flipDebounce = _G.q[25]
- end
- end
- end
- end
- end
- end
- end
- end
- if (input[1] == "w" or input[1] == "up") and _G.Car then
- if d[1] then
- if not _G.MODULE_LOG.Input.s or not not _G.MODULE_LOG.Input.down then
- module.new("CheckSeat", "Throttle, 1)
- r.RemoteEvent:FireServer("Throttle, 1)
- else
- module.new("CheckSeat", "Throttle, 0)
- r.RemoteEvent:FireServer("Throttle, 0)
- end
- else
- if not _G.MODULE_LOG.Input.s or not not _G.MODULE_LOG.Input.down then
- module.new("CheckSeat", "Throttle, 0)
- r.RemoteEvent:FireServer("Throttle, 0)
- end
- end
- else
- if (input[1] == "a" or input[1] == "left") and _G.Car then
- if d[1] then
- module.new("CheckSeat", "Steer, -1)
- r.RemoteEvent:FireServer("Steer, -1)
- else
- if not _G.MODULE_LOG.Input.d and not _G.MODULE_LOG.Input.right then
- module.new("CheckSeat", "Steer, 0)
- r.RemoteEvent:FireServer("Steer, 0)
- end
- end
- else
- if (input[1] == "s" or input[1] == "down") and _G.Car then
- if d[1] then
- if not _G.MODULE_LOG.Input.w and not _G.MODULE_LOG.Input.up then
- module.new("CheckSeat", "Throttle, -1)
- r.RemoteEvent:FireServer("Throttle, -1)
- else
- module.new("CheckSeat", "Throttle, 0)
- r.RemoteEvent:FireServer("Throttle, 0)
- end
- else
- if not _G.MODULE_LOG.Input.w and not _G.MODULE_LOG.Input.up then
- module.new("CheckSeat", "Throttle, 0)
- r.RemoteEvent:FireServer("Throttle, 0)
- end
- end
- else
- if (input[1] == "d" or input[1] == "right") and _G.Car then
- if d[1] then
- module.new("CheckSeat", "Steer, 1)
- r.RemoteEvent:FireServer("Steer, 1)
- else
- if not _G.MODULE_LOG.Input.a and not _G.MODULE_LOG.Input.left then
- module.new("CheckSeat", "Steer, 0)
- r.RemoteEvent:FireServer("Steer, 0)
- end
- end
- end
- end
- end
- end
- if d[1] and input[2] and input[1] ~= "q" and input[1] ~= "e" and input[1] ~= "t" then
- _G.MODULE_LOG.Input[input[1]] = _G.q[25]
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- module.GetParent = function(self, o, p3)
- local gP = function(p4)
- if p4 and p4 ~= w.Game then
- if p4.Parent == p3 then
- return _G.q[24]
- end
- return gP(p4.Parent)
- end
- return
- end
- return gP(o)
- end
- module.Find = function(self, o, l, ignore)
- local fH = function(p)
- do
- if p.Parent and p.Parent ~= w.Game then
- if not p:FindFirstChild(l) then
- local f = p.Parent:FindFirstChild(l)
- end
- if (ignore and not ignore[p.Parent.Name]) or not ignore then
- return f
- end
- return fH(p.Parent)
- end
- return
- end
- end
- local fH2 = function(p)
- local t = p:GetChildren()
- for i = 1, #t do
- local f = t[i]
- if f.Name == l then
- return f
- end
- return fH2(f)
- end
- return
- end
- if not fH(o) then
- return fH2(o)
- end
- end
- module.Interact = function(...)
- local d = {...}
- local stat, i, item = nil, nil, nil
- if d[2] then
- stat = d[2]
- i = stat.InteractType
- else
- i = "Interact"
- end
- item = d[3]
- if d[1] then
- if i == "Take" then
- local i2 = r.RemoteFunction:InvokeServer(obf.Interact, item)
- else
- do
- if i == "Interact" then
- local open = item:FindFirstChild("Open")
- local key2 = item.Parent:FindFirstChild("ClientKey")
- if var.Humanoid:GetState() ~= Enum.HumanoidStateType.Seated and key2 and _G.clientStructTable[_G.q[19](key2.Value)] and _G.clientStructTable[_G.q[19](key2.Value)][2][3] then
- if not open.Value then
- r.RemoteEvent2:FireServer(obf.DoorFunction, item, "Open", 1)
- module.new("DoorFunction", item, "Open", 1)
- else
- r.RemoteEvent2:FireServer(obf.DoorFunction, item, "Close", 1)
- module.new("DoorFunction", item, "Close", 1)
- end
- end
- else
- do
- if i == "View Store" then
- local gf = g.GameFrame
- local s = gf:FindFirstChild(stat.Store)
- if s and p.Role.Value ~= "Prisoner" and not var.Shuffling then
- if s.Visible then
- _G.MODULE_LOG.DrawUI_New:Fire("SetMainUI", s.Name .. "Shop")
- else
- module:Set("Store", s)
- resource.ClientUI_New:Fire("ViewShop", s)
- _G.MODULE_LOG.DrawUI_New:Fire("SetMainUI", s.Name .. "Shop")
- end
- end
- else
- do
- -- DECOMPILER ERROR at PC177: Unhandled construct in 'MakeBoolean' P1
- if (i == "Drive" or i == "Enter") and var.Humanoid:GetState() ~= Enum.HumanoidStateType.Seated and not var.SitDebounce then
- var.SitDebounce = _G.q[24]
- r.RemoteEvent:FireServer(obf.AttachCar, "AttemptSit", stat.Raw)
- end
- local i2 = stat.Raw:FindFirstChild("InteractType")
- do
- if i2 then
- local w = i2:FindFirstChild("Work")
- if w then
- _G.MODULE_LOG.DrawUI_New:Fire("Work", i, w.Value, item)
- end
- end
- if stat then
- local i2 = stat.Raw:FindFirstChild("InteractType")
- if i2 then
- local w = i2:FindFirstChild("Work")
- if w then
- _G.MODULE_LOG.DrawUI_New:Fire("StopWork")
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- end
- module.manualInput = function(input, ...)
- local d = {...}
- module.input({input, _G.q[24]}, d[1])
- end
- module.SetModuleLog = function(self, ...)
- local d = {...}
- _G.MODULE_LOG[d[1]] = d[2]
- end
- module.GetStatistics = function(self, obj)
- if obj then
- local stat = obj:FindFirstChild("Statistics")
- if stat then
- local ret = {Raw = stat}
- local t = stat:GetChildren()
- for v = 1, #t do
- if t[v].ClassName ~= "Folder" then
- ret[t[v].Name] = t[v].Value
- else
- ret[t[v].Name] = t[v]:GetChildren()
- end
- end
- return ret
- end
- end
- do
- return
- end
- end
- local onInput = function(i, g)
- if not g and i.UserInputType == Enum.UserInputType.Keyboard then
- module.input({tostring(i.KeyCode):gsub("Enum.KeyCode.", ""):lower(), _G.q[25]}, _G.q[24])
- end
- end
- local onInputEnded = function(i, g)
- if not g and i.UserInputType == Enum.UserInputType.Keyboard then
- module.input({tostring(i.KeyCode):gsub("Enum.KeyCode.", ""):lower(), _G.q[25]}, _G.q[25])
- end
- end
- u.InputBegan:Connect(onInput)
- u.InputEnded:Connect(onInputEnded)
- module.GetModules = function(self)
- local r2 = {}
- local t = script:GetChildren()
- for i = 1, #t do
- local v = t[i]
- if v:IsA("ModuleScript") then
- table.insert(r2, v)
- end
- end
- return r2
- end
- module.GetObjects = function(self)
- local r2 = {}
- local t = script.Resource:GetChildren()
- for i = 1, #t do
- local v = t[i]
- table.insert(r2, v)
- end
- return r2
- end
- module.Set = function(self, var2, val)
- var[var2] = val
- return var[var2]
- end
- module.Get = function(self, var2)
- return var[var2]
- end
- module.GetObfuscate = function(self)
- return obf, rem
- end
- module.GetGlobalVariables = function(self)
- return var
- end
- module.GetShop = function(self, f)
- if f then
- return shop[tostring(f)]
- end
- return shop
- end
- module.GetPlayerData = function(self)
- local dict = function()
- local r2 = {Player = pl.LocalPlayer}
- local t = r2.Player.Data:GetChildren()
- for i = 1, #t do
- r2[t[i].Name] = t[i]
- end
- return r2
- end
- return dict()
- end
- module.Initialize = function(p2, d, ...)
- local d2 = {...}
- p = p2
- obf = d[1]
- shop = d[3]
- var.GunData = d[5]
- var.Ranks = d[14]
- g = unpack(d2)
- resource.DrawUI_New:Fire("SetUIMaster", "UI_PARTS", _G.q[24], "Group", g.GameFrame.GroupFrame)
- end
- return module
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement