Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Can someone help me analyze this police/van script for me?

Asked by 6 years ago
function arrest(name)
    spawn(function()
    local p = game:GetService("Players"):FindFirstChild(name)
    local char = p.Character 
                        local torso = p.Character:FindFirstChild("HumanoidRootPart") 
                        local humanoid = p.Character:FindFirstChild("Humanoid")
                        if torso and humanoid and not char:FindFirstChild("ADONIS_VAN") then 
                            local van = car:Clone()
                            if van then
                                local function check()
                                    if not van or not van.Parent or not p or p.Parent ~= game:GetService("Players") or not torso or not humanoid or not torso.Parent or not humanoid.Parent or not char or not char.Parent then
                                        return false
                                    else
                                        return true
                                    end
                                end

                                --local driver = van.Driver 
                                --local grabber = van.Clown 
                                local primary = van.Primary
                                --local door = van.Door
                                local tPos = torso.CFrame

                                local sound = Instance.new("Sound",primary)
                                sound.SoundId = "rbxassetid://258529216"
                                sound.Looped = true
                                sound:Play()

                                local chuckle = Instance.new("Sound",primary)
                                chuckle.SoundId = "rbxassetid://175964948"
                                chuckle.Looped = true
                                chuckle.Volume = 0.5
                                chuckle:Play()

                                van.PrimaryPart = van.Primary
                                van.Name = "ADONIS_VAN"
                                van.Parent = workspace
                                humanoid.Name = "NoResetForYou"
                                humanoid.WalkSpeed = 0
                                sound.Pitch = 1

                                local music = workspace:FindFirstChild("COPSONG") or Instance.new("Sound",workspace)
                                music.Name = "COPSONG"
                                music.SoundId = "rbxassetid://132007810"
                                music.Volume = 1
                                music.Looped = true
                                if not music.Playing then music:Play() end

                                spawn(function()
                                    while fastwait(0.2) do
                                        van.Body.Lightbar.Red.PointLight.Enabled = true
                                        van.Body.Lightbar.Blue.PointLight.Enabled = false
                                        fastwait(0.2)
                                        van.Body.Lightbar.Red.PointLight.Enabled = false
                                        van.Body.Lightbar.Blue.PointLight.Enabled = true
                                    end
                                end)

                                for i = 1,200 do
                                    if not check() then
                                        break
                                    else
                                        van:SetPrimaryPartCFrame(tPos*(CFrame.new(-200+i,-1,-7)*CFrame.Angles(0,math.rad(270),0)))
                                        fastwait(0.001*(i/5))
                                    end
                                end

                                sound.Pitch = 0.9

                                fastwait(0.5)
                                if check() then
                                    --door.Transparency = 1
                                end

                                local freeze = Instance.new("Sound",primary)
                                freeze.SoundId = "rbxassetid://163732279"
                                freeze.Volume = 5
                                freeze:Play()

                                fastwait(3)

                                if check() then
                                    torso.CFrame = primary.CFrame*(CFrame.new(0,2.3,0)*CFrame.Angles(0,math.rad(90),0))
                                end

                                fastwait(0.5)
                                if check() then
                                    --door.Transparency = 0
                                end
                                fastwait(0.5)

                                sound.Pitch = 1.3
                                local gui = Instance.new("ScreenGui")
                                local frame = Instance.new("Frame",gui)
                                frame.BackgroundTransparency = 1
                                frame.BackgroundColor3 = Color3.new(0,0,0)
                                frame.Position = UDim2.new(0,0,0,-36)
                                frame.Size = UDim2.new(1,0,1,36)
                                spawn(function()
                                    for i = 1,0,-0.01 do
                                        frame.BackgroundTransparency = i
                                        fastwait(0.1)
                                    end
                                    frame.BackgroundTransparency = 0
                                end)

                                p.CameraMaxZoomDistance = 0.5

                                torso.Anchored = true

                                for i = 1,400 do
                                    if not check() then
                                        break
                                    else
                                        van:SetPrimaryPartCFrame(tPos*(CFrame.new(0+i,-1,-7)*CFrame.Angles(0,math.rad(270),0)))
                                        torso.CFrame = primary.CFrame*(CFrame.new(0,-0.4,0)*CFrame.Angles(0,math.rad(90),0))
                                        fastwait(0.1/(i*5))

                                        if i == 270 then
                                            music.Volume = 5
                                        end
                                    end
                                end

I want to figure out how it works, to expand my knowledge! Can someone maybe label some parts of it for me? Thanks!

0
I'll do it later so check later on Earthkingiv 51 — 6y

Answer this question