o = owner ch = o.Character fol = Instance.new("Folder") fol.Parent = script gui = Instance.new("ScreenGui") gui.Parent = script lab = Instance.new('TextLabel') lab.Text = '~' lab.Font = 'SciFi' lab.TextStrokeTransparency = 0 lab.TextStrokeColor3 = Color3.new(0.5,0.5,0.5) lab.TextColor3 = Color3.new(1,1,1) lab.TextScaled = true lab.BackgroundTransparency = 1 lab.Size = UDim2.new(0.3, 0, 0.1, 0) lab.Position = UDim2.new(-0.3,0,0.9,0) lab.Parent = gui tool = Instance.new("Tool") gem = Instance.new("Part") gem.Massless = true gem.Name = "Handle" gem.Position = Vector3.new(0,math.huge,0) gem.Material = "Neon" gem.Anchored = true gem.Size = Vector3.new(1.5,1.5,1.5) gem.CanCollide = false gem.Parent = tool gem2 = gem:Clone() gem2.Size = Vector3.new(1.6,1.6,1.6) gem2.Material = "Glass" gem2.Anchored = false gem2.Transparency = 0.456 gem2.Name = "Key outline" gem2.Parent = tool gem2w = Instance.new("Weld") gem2w.Part0 = gem gem2w.Part1 = gem2 gem2w.C0 = CFrame.new(0,0,0) gem2w.Parent = gem2 geml = Instance.new("PointLight") geml.Name = "Light" geml.Parent = gem sees = { NumberSequenceKeypoint.new(0,1), NumberSequenceKeypoint.new(0.2,0), NumberSequenceKeypoint.new(0.8,0), NumberSequenceKeypoint.new(1,1)} sizes = { NumberSequenceKeypoint.new(0,0), NumberSequenceKeypoint.new(0.2,0.5), NumberSequenceKeypoint.new(0.8,0.5), NumberSequenceKeypoint.new(1,0)} local pt = Instance.new("ParticleEmitter") pt.LightEmission = 1 pt.Speed = NumberRange.new(0) pt.Lifetime = NumberRange.new(0.5) pt.Transparency = NumberSequence.new(sees) pt.Size = NumberSequence.new(sizes) pt.Name = "Pt" pt.Rate = 10 pt.Rotation = NumberRange.new(-180,180) pt.RotSpeed = NumberRange.new(-180,180) pt.Parent = gem2 pt.ZOffset = 1.5 pt.Color = ColorSequence.new(gem.Color) tool.Parent = script it=Instance.new vt=Vector3.new cf=CFrame.new euler=CFrame.fromEulerAnglesXYZ angles=CFrame.Angles local teledebounce=false if script:FindFirstChild("Void") ~= nil then script:FindFirstChild("Void").Parent = nil end function part(formfactor,parent,reflectance,transparency,brickcolor,name,size,cframe) local fp = it("Part") fp.formFactor = formfactor fp.Parent = parent fp.Reflectance = reflectance fp.Transparency = transparency fp.CanCollide = true fp.Anchored = true fp.Locked=true fp.BrickColor = brickcolor fp.Name = name fp.Size = size fp.CFrame = cframe fp.BottomSurface="Smooth" fp.TopSurface="Smooth" fp:BreakJoints() return fp end function mesh(Mesh,part,meshtype,meshid,offset,scale) local mesh = it(Mesh) mesh.Parent = part if Mesh=="SpecialMesh" then mesh.MeshType = meshtype mesh.MeshId = meshid end mesh.Offset=offset mesh.Scale=scale return mesh end function weld(parent,part0,part1,c0) local weld = it("Weld") weld.Parent = parent weld.Part0 = part0 weld.Part1 = part1 weld.C0 = c0 return weld end local modelzorz = Instance.new("Model") modelzorz.Parent = script modelzorz.Name = "Void" local theframe = CFrame.new(0,100000,100000) local skyboxprt=part(3,modelzorz,0,0,BrickColor.new("Really black"),"Skybox",vt(800,800,800),theframe) local prt=part(3,modelzorz,0,0,BrickColor.new("White"),"Basee",vt(500,5,500),theframe) local skyboxmsh=mesh("SpecialMesh",skyboxprt,"FileMesh","http://www.roblox.com/asset/?id=1527559",vt(0,0,0),vt(-1000,-1000,-1000)) skyboxmsh.TextureId="http://www.roblox.com/asset/?id=24824960" skyboxmsh.VertexColor = Vector3.new(0,0,0) skyboxmsh.Name = "AMesh" skyboxprt.CanCollide = false skyboxprt.CastShadow = false prt.Material = "Cobblestone" skyboxprt.Locked = true prt.Locked = true prt2 = prt:Clone() prt2.Size = Vector3.new(495,6,495) prt2.Material = "Grass" prt2.CanCollide = false prt2.Parent = modelzorz forcefield = skyboxprt:Clone() forcefield.Material = "ForceField" forcefield.AMesh.VertexColor = Vector3.new(1,1,1) forcefield.Color = Color3.new(1,1,1) forcefield.AMesh.Scale = vt(-999,-999,-999) forcefield.Parent = modelzorz sizes = { NumberSequenceKeypoint.new(0,3,0); NumberSequenceKeypoint.new(0.5,3,0); NumberSequenceKeypoint.new(1,3,0) } seeses = { NumberSequenceKeypoint.new(0,1,0); NumberSequenceKeypoint.new(0.2,0,0); NumberSequenceKeypoint.new(0.8,0,0); NumberSequenceKeypoint.new(1,1,0) } local pt1 = Instance.new("ParticleEmitter", skyboxprt) pt1.LightEmission = 1 pt1.LightInfluence = 0 pt1.Size = NumberSequence.new(sizes) pt1.Transparency = NumberSequence.new(seeses) pt1.Texture = "rbxassetid://2273224484" pt1.Acceleration = Vector3.new(0,0,0) pt1.Name = "Pt" pt1.Enabled = true pt1.ZOffset = 1 pt1.Drag = 20 life = 1 pt1.Rate = 500 pt1.EmissionDirection = "Left" pt1.Rotation = NumberRange.new(-180,180) pt1.SpreadAngle = Vector2.new(360,360) pt1.Lifetime = NumberRange.new(life, 3) pt1.RotSpeed = NumberRange.new(0) pt1.Speed = NumberRange.new(0) pt1.Color = ColorSequence.new(BrickColor.new("White").Color) local colors = {} local parkour = function() local blocks = {} local park = Instance.new("Folder") park.Parent = fol local key = Instance.new("Part") key.Anchored = true key.Position = Vector3.new(10000,10000,10000) key.Size = Vector3.new(1.5,1.5,1.5) key.Material = "Neon" key.CanCollide = false key.Color = BrickColor.Random().Color key.Parent = park local coin1 = false local coin2 = false local coin3 = false local detector = Instance.new("ClickDetector") local keyo = key:Clone() detector.Parent = keyo keyo.Size = Vector3.new(1.6,1.6,1.6) keyo.Material = "Glass" keyo.Transparency = 0.456 keyo.Parent = park local keyl = Instance.new("PointLight") keyl.Color = key.Color keyl.Parent = key sees = { NumberSequenceKeypoint.new(0,1), NumberSequenceKeypoint.new(0.2,0), NumberSequenceKeypoint.new(0.8,0), NumberSequenceKeypoint.new(1,1)} sizes = { NumberSequenceKeypoint.new(0,0), NumberSequenceKeypoint.new(0.2,0.5), NumberSequenceKeypoint.new(0.8,0.5), NumberSequenceKeypoint.new(1,0)} local pt = Instance.new("ParticleEmitter") pt.LightEmission = 1 pt.Speed = NumberRange.new(0) pt.Lifetime = NumberRange.new(0.5) pt.Transparency = NumberSequence.new(sees) pt.Size = NumberSequence.new(sizes) pt.Rate = 10 pt.Rotation = NumberRange.new(-180,180) pt.RotSpeed = NumberRange.new(-180,180) pt.Parent = keyo pt.ZOffset = 1.5 pt.Color = ColorSequence.new(keyo.Color) detector.MaxActivationDistance = 5 detector.MouseClick:Connect(function(plr) if coin1 == false or coin2 == false or coin3 == false then return end print(tostring(key.BrickColor).." Key collected by "..plr.Name) detector:Remove() table.insert(colors, tostring(key.BrickColor)) hint = Instance.new("Hint") hint.Text = "Congrats, "..plr.Name.."! You got the "..tostring(key.BrickColor).." Key... but at the moment its useless, heh." hint.Parent = workspace game.Debris:AddItem(hint, 5) clon = tool:Clone() clon.Handle.Color = key.Color clon["Key outline"].Color = key.Color clon.Handle.Light.Color = key.Color clon["Key outline"].Pt.Color = ColorSequence.new(key.Color) clon.Name = tostring(key.BrickColor).." Key cube" clon.CanBeDropped = false clon.Handle.Anchored = false clon.Parent = plr.Backpack for _,v in pairs(clon:GetChildren()) do v.Locked = true end local g = gui:Clone() g.TextLabel.Text = "+"..tostring(key.BrickColor).." Key" g.TextLabel.TextStrokeColor3 = keyo.Color g.TextLabel.TextColor3 = Color3.fromRGB(keyo.Color.R+10,keyo.Color.G+10,keyo.Color.B+10) g.Parent = plr.PlayerGui spawn(function() g.TextLabel:TweenPosition(UDim2.new(0.7, 0, 0.9, 0), Enum.EasingDirection.Out, Enum.EasingStyle.Bounce) wait(2) for i = 1,30 do g.TextLabel.TextStrokeTransparency = i/30 g.TextLabel.TextTransparency = i/30 wait() end g:Remove() end) spawn(function() pt:Emit(500) pt.Enabled = false wait(0.345) key.Transparency = 1 keyo.Transparency = 1 wait(1) park:Remove() end) end) local an = math.random(9,11) local an2 = math.random(1,2) local finalc = nil for i = 1, an do local p = Instance.new("Part") table.insert(blocks,p) local v = Instance.new("BoolValue") v.Name = "CoinBlock" v.Parent = p v.Value = false p.Size = Vector3.new(3,3,3) p.Parent = park p.Transparency = 0 p.Material = "Glass" p.Color = key.Color p.Anchored = true if an2 == 2 then p.Position = Vector3.new(math.random(1,6),2*i,7.5*i) else p.Position = Vector3.new(7.5*i,2*i,math.random(1,6)) end p2 = p:Clone() p2.Shape = "Ball" p2.Size = Vector3.new(4.5,4.5,4.5) p2.Parent = park p3 = p:Clone() p3.Material = "Cobblestone" p3.Size = Vector3.new(2.7,2.7,2.7) p3.BrickColor = BrickColor.new("White") p3.Parent = park mo = Instance.new("Model") mo.Parent = workspace p2.Parent = mo p.Parent = mo nega = {p2} onion = p:SubtractAsync(nega) onion.Parent = park onion.Anchored = true onion.UsePartColor = true onion.Transparency = 0.5 mo:Remove() print("Union Successful") finalc = onion wait() end key.Position = finalc.Position + Vector3.new(0,3,0) keyo.Position = key.Position table.remove(blocks, an) an = an - 1 acc = math.random(1,an) local cb = blocks[acc] table.remove(blocks, acc) acc2 = math.random(1,table.getn(blocks)) local cb2 = blocks[acc2] table.remove(blocks, acc2) acc3 = math.random(1,table.getn(blocks)) local cb3 = blocks[acc3] table.remove(blocks, acc3) local c = Instance.new("Part") c.Size = Vector3.new(0.7,0.7,0.7) c.Color = Color3.new(1,1,0.5) c.Material = "Neon" c.Anchored = true c.Parent = park cl = Instance.new("PointLight") cl.Parent = c local dec = Instance.new("ClickDetector") dec.Parent = c dec.Name = "dec" dec.MaxActivationDistance = 6 c2 = c:Clone() c2.Parent = park c3 = c:Clone() c3.Parent = park dec.MouseClick:Connect(function() coin1 =true c.Color = Color3.new(0.1,0.1,0) dec:Remove() end) c2.dec.MouseClick:Connect(function() coin2 =true c2.Color = Color3.new(0.1,0.1,0) c2.dec:Remove() end) c3.dec.MouseClick:Connect(function() coin3 =true c3.Color = Color3.new(0.1,0.1,0) c3.dec:Remove() end) c.Position = cb.Position + Vector3.new(0, 2.5, 0) c2.Position = cb2.Position + Vector3.new(0, 2.5, 0) c3.Position = cb3.Position + Vector3.new(0, 2.5, 0) hint = Instance.new("Hint") hint.Text = tostring(key.BrickColor).." Key Cube mini-obby loaded!" hint.Parent = workspace wait(2.5) hint.Text = "Click each coin before clicking the key in order to get it!" wait(4.5) hint:Remove() end local centrepart = nil local tablets = {} local angle = 0 local Tab = { Rot = 0; Dist = 10; Speed = 0.5; Smooth = .075; } game:GetService'RunService'.Stepped:connect(function() for i = 1, #tablets do pcall(function() if tablets[i].Parent ~= script then table.remove(tablets, i) end end) end local Tick = tick() local debounce = false if tablets and debounce == false then Tab.Rot = Tab.Rot>=360 and 0 or Tab.Rot + Tab.Speed debounce = true end for i = 1, #tablets do local pos = (centrepart).CFrame; local tab = tablets[i]; local Distance = Tab.Dist+(#tablets/2.5) local Angle = math.rad(i*(360/#tablets)+Tab.Rot) pcall(function() tablets[i].CFrame = tablets[i].CFrame:lerp(CFrame.new(pos.X, pos.Y, pos.Z) * CFrame.Angles(0, Angle, 0) * CFrame.new(0, math.sin(i+Tick)/2, Distance), Tab.Smooth) --[[ tablets[i].B.CFrame = tablets[i].CFrame tablets[i].B.tortoise.CFrame = tablets[i].B.CFrame]] end) end end) local portal = function() porf = Instance.new("Part") porf.Material = "Cobblestone" porf.Size = Vector3.new(20,40,3) porf.Anchored = true porf.Position = Vector3.new(0,-100,10) porf2 = porf:Clone() porf2.Size = Vector3.new(15,35,4) model = Instance.new("Model") model.Parent = workspace porf.Parent = model porf2.Parent = model neg = {porf2} portalframe = porf:SubtractAsync(neg) portalframe.Parent = script centrepart = portalframe model:Remove() Color = Color3.fromRGB(85,255,255) Color2 = Color3.fromRGB(255,255,255) local snow = Instance.new("ParticleEmitter", portalframe) snow.VelocitySpread = 0 snow.Lifetime = NumberRange.new(1,2) snow.Acceleration = Vector3.new(0, 5, 0) snow.RotSpeed = NumberRange.new(-100,100) snow.Rate = 500 snow.Speed = NumberRange.new(30) snow.Rotation = NumberRange.new(-180,180) snow.Name = "dust" snow.Enabled = true snow.LightEmission = 0 snow.LockedToPart = false snow.ZOffset = 1 snow.EmissionDirection = "Bottom" snow.SpreadAngle = Vector2.new(5,5) snow.Drag = 1 snow.Texture = "http://www.roblox.com/asset/?id=431361643" snow.Color = ColorSequence.new(Color3.new(0.95,0.9,0.95)) snow.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 3), NumberSequenceKeypoint.new(1, 3)}) snow.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(.1, 0), NumberSequenceKeypoint.new(0.9, 0), NumberSequenceKeypoint.new(1, 1)}) for i = 1,200 do portalframe.Position = portalframe.Position:Lerp(Vector3.new(0,15,10),0.1) wait() end snow.Enabled = false local colors2 = {} for i = 1, table.getn(colors) do local teb = Instance.new("Part") teb.Size = Vector3.new(2,2,2) teb.Material = "ForceField" teb.BrickColor = BrickColor.new(colors[i]) table.insert(colors2, colors[i]) teb.Anchored = true teb.CanCollide = false teb.Parent = script table.insert(tablets, teb) local dect = Instance.new("ClickDetector") dect.MaxActivationDistance = 12 dect.Parent = teb local num = i dect.MouseClick:Connect(function(leplr) if leplr.Backpack:FindFirstChild(tostring(teb.BrickColor).." Key cube") then cubet = leplr.Backpack:FindFirstChild(tostring(teb.BrickColor).." Key cube") cube = Instance.new("Model", teb) for _,v in pairs(cubet:GetChildren()) do v.Parent = cube end cubet:Remove() wold = Instance.new("Weld") wold.Part0 = teb wold.Part1 = cube.Handle wold.C0 = CFrame.new(0,0,0) wold.Parent = teb table.remove(colors, table.getn(colors)) end end) end spawn(function() repeat wait() until table.getn(colors) == 0 leran = math.random(30,50) for i = 1,leran do isl = Instance.new("Part") isl.Anchored = true isl.Material = "Cobblestone" rands = math.random(5,20) isl.Size = Vector3.new(rands, math.random(2,3), rands) isl.CFrame = theframe * CFrame.new(math.random(-400,400), math.random(40,400), math.random(-400,400)) isl2 = isl:Clone() isl2.Material = "Neon" isl2.Size = isl.Size - Vector3.new(1,1,1) isl2.CFrame = isl.CFrame * CFrame.new(0,-1,0) isl2.BrickColor = BrickColor.new(colors2[math.random(1,#colors2)]) isl.Parent = script isl2.Parent = script isll = Instance.new("PointLight") isll.Parent = isl2 isll2 =Instance.new("PointLight") isll2.Color = isl2.Color isll2.Parent = isl2 --part(formfactor,parent,reflectance,transparency,brickcolor,name,size,cframe) grass=part(3,modelzorz,0,0,BrickColor.new(colors2[math.random(1,#colors2)]),"Grass",vt(1,1,1),theframe*CFrame.new(math.random(-250,250),4,math.random(-250,250))) grass.Material = "ForceField" local grassmsh=mesh("SpecialMesh",grass,"FileMesh","http://www.roblox.com/asset/?id=1091940",vt(0,0,0),vt(2,2,2)) grassmsh.TextureId="http://www.roblox.com/asset/?id=1091942" grassmsh.VertexColor = Vector3.new(1/grass.Color.R,1/grass.Color.G,1/grass.Color.B) wait() end local hint = Instance.new("Hint", workspace) hint.Text = "Woah! What's happening to that portal?!" snow.Enabled = true spawn(function() wait(3) hint.Parent = nil hint.Text = "The portal opened! (Its still useless, though)" end) for i = 1,1000 do Tab.Speed = Tab.Speed + (10/1000) wait() end par = Instance.new("Part") par.Anchored = true par.CanCollide = false par.Material = "Neon" par.Size = portalframe.Size - Vector3.new(1,1,1) par.Transparency = 1 par.CFrame = portalframe.CFrame par.Parent = portalframe sizes = { NumberSequenceKeypoint.new(0,7,0); NumberSequenceKeypoint.new(0.5,7,0); NumberSequenceKeypoint.new(1,7,0) } seeses = { NumberSequenceKeypoint.new(0,1,0); NumberSequenceKeypoint.new(0.2,0,0); NumberSequenceKeypoint.new(0.8,0,0); NumberSequenceKeypoint.new(1,1,0) } local pt1 = Instance.new("ParticleEmitter", par) pt1.LightEmission = 1 pt1.LightInfluence = 0 pt1.Size = NumberSequence.new(sizes) pt1.Transparency = NumberSequence.new(seeses) pt1.Texture = "rbxassetid://2273224484" pt1.Acceleration = Vector3.new(0,0,0) pt1.Enabled = true pt1.ZOffset = 1 pt1.Drag = 20 life = 1 pt1.Rate = 100 pt1.EmissionDirection = "Left" pt1.Rotation = NumberRange.new(-180,180) pt1.SpreadAngle = Vector2.new(360,360) pt1.Lifetime = NumberRange.new(life, 3) pt1.RotSpeed = NumberRange.new(0) pt1.Speed = NumberRange.new(100,1000) pt1.Color = ColorSequence.new(BrickColor.new("White").Color) for i = 1,50 do par.Transparency = par.Transparency - (1/50) wait() end snow.Enabled = false pt1.Enabled = false pt1:Emit(200) par.Color = Color3.new(0,0,0) Tab.Speed = 0.5 hint.Parent = workspace game.Debris:AddItem(hint, 2) sizes = { NumberSequenceKeypoint.new(0,1,0); NumberSequenceKeypoint.new(0.5,1,0); NumberSequenceKeypoint.new(1,1,0) } seeses = { NumberSequenceKeypoint.new(0,1,0); NumberSequenceKeypoint.new(0.2,0,0); NumberSequenceKeypoint.new(0.8,0,0); NumberSequenceKeypoint.new(1,1,0) } local pt1 = Instance.new("ParticleEmitter", par) pt1.LightEmission = 1 pt1.LightInfluence = 0 pt1.Size = NumberSequence.new(sizes) pt1.Transparency = NumberSequence.new(seeses) pt1.Texture = "rbxassetid://2273224484" pt1.Acceleration = Vector3.new(0,0,0) pt1.Enabled = true pt1.ZOffset = 1 pt1.Drag = 20 life = 1 pt1.Rate = 500 pt1.EmissionDirection = "Left" pt1.Rotation = NumberRange.new(-180,180) pt1.SpreadAngle = Vector2.new(360,360) pt1.Lifetime = NumberRange.new(life, 3) pt1.RotSpeed = NumberRange.new(0) pt1.Speed = NumberRange.new(0) pt1.Color = ColorSequence.new(BrickColor.new("White").Color) par.Touched:Connect(function(hi) if hi and hi.Parent and hi.Parent:IsA("Model") and hi.Parent:FindFirstChildOfClass("Humanoid") then if teledebounce == true then return end teledebounce = true hi.Parent:MoveTo(theframe.Position + Vector3.new(0,10,0)) spawn(function() wait(0.5) teledebounce = false end) end end) end) end o.Chatted:Connect(function(c) if c == "!keycube" then parkour() elseif c == "!portal" then portal() end end)