ControlC
· Pastebin
Login
Register
ControlC
/
Create paste
Paste content
Up to 100 KB of text. BBCode formatting is supported.
Title
- optional
Content
B
I
U
S
</>
Colors ↓
Sizes ↓
Size 1
Size 2
Size 3
Size 4
Size 5
Size 6
Size 7
--[[\r\n _ \r\n | | \r\n__ ___ __ __ _ _ __ _ ___ _| |__ ___ _ __ ___ \r\n\ \ / / '__| / _` | '_ \| | | \ \ /\ / / '_ \ / _ \ '__/ _ \\r\n \ V /| | | (_| | | | | |_| |\ V V /| | | | __/ | | __/\r\n \_/ |_| \__,_|_| |_|\__, | \_/\_/ |_| |_|\___|_| \___|\r\n __/ |\r\n |___/ \r\n\r\n _ _ _ \r\n| | | | | | \r\n| |__ _ _ ___| | _____ __| | \r\n| '_ \| | | | / __| |/ / _ \/ _` | \r\n| |_) | |_| | \__ \ < __/ (_| | \r\n|_.__/ \__, | |___/_|\_\___|\__,_| \r\n __/ | \r\n |___/\r\n \r\n __ _ _ \r\n / _(_) | |\r\n | |_ ___ _____ __| |\r\n | _| \ \/ / _ \/ _` |\r\n | | | |> < __/ (_| |\r\n |_| |_/_/\_\___|\__,_|\r\n\r\n(Credit to 64Will64 for first managing to fix the script before I did!)\r\n]]\r\n\r\nspawn(function()\r\n while true do\r\n settings().Physics.AllowSleep = false\r\n setsimulationradius(math.huge*math.huge,math.huge*math.huge)\r\n game:GetService(\"RunService\").Heartbeat:wait()\r\n end\r\nend)\r\n\r\nlocal options = {}\r\n\r\n-- OPTIONS:\r\n\r\noptions.headscale = 3 -- how big you are in vr, 1 is default, 3 is recommended for max comfort in vr\r\noptions.forcebubblechat = true -- decide if to force bubblechat so you can see peoples messages\r\n\r\noptions.headhat = \"MediHood\" -- name of the accessory which you are using as a head\r\noptions.righthandhat = \"Pal Hair\" -- name of the accessory which you are using as your right hand\r\noptions.lefthandhat = \"LavanderHair\" -- name of the accessory which you are using as your left hand\r\n\r\noptions.righthandrotoffset = Vector3.new(0,0,0)\r\noptions.lefthandrotoffset = Vector3.new(0,0,0)\r\n\r\n--\r\n\r\nlocal plr = game:GetService(\"Players\").LocalPlayer\r\nlocal char = plr.Character\r\n--local backpack = plr.Backpack\r\n\r\nlocal VR = game:GetService(\"VRService\")\r\nlocal input = game:GetService(\"UserInputService\")\r\n\r\nlocal cam = workspace.CurrentCamera\r\n\r\ncam.CameraType = \"Scriptable\"\r\n\r\ncam.HeadScale = options.headscale\r\n\r\ngame:GetService(\"StarterGui\"):SetCore(\"VRLaserPointerMode\", 0)\r\ngame:GetService(\"StarterGui\"):SetCore(\"VREnableControllerModels\", false)\r\n\r\n\r\nlocal function createpart(size, name)\r\n local Part = Instance.new(\"Part\", char)\r\n Part.CFrame = char.HumanoidRootPart.CFrame\r\n Part.Size = size\r\n Part.Transparency = 1\r\n Part.CanCollide = false\r\n Part.Anchored = true\r\n Part.Name = name\r\n return Part\r\nend\r\n\r\nlocal moveHandL = createpart(Vector3.new(1,1,2), \"moveRH\")\r\nlocal moveHandR = createpart(Vector3.new(1,1,2), \"moveLH\")\r\nlocal moveHead = createpart(Vector3.new(1,1,1), \"moveH\")\r\n\r\nlocal handL\r\nlocal handR\r\nlocal head\r\nlocal R1down = false\r\n\r\nfor i,v in pairs(char.Humanoid:GetAccessories()) do\r\n if v:FindFirstChild(\"Handle\") then\r\n local handle = v.Handle\r\n \r\n if v.Name == options.righthandhat and not handR then\r\n handle:FindFirstChildOfClass(\"SpecialMesh\"):Destroy()\r\n handR = v\r\n elseif v.Name == options.lefthandhat and not handL then\r\n handle:FindFirstChildOfClass(\"SpecialMesh\"):Destroy()\r\n handL = v\r\n elseif v.Name == options.headhat and not head then\r\n handle.Transparency = 1\r\n head = v\r\n end\r\n end\r\nend\r\n\r\nchar.Humanoid.AnimationPlayed:connect(function(anim)\r\n anim:Stop()\r\nend)\r\n\r\nfor i,v in pairs(char.Humanoid:GetPlayingAnimationTracks()) do\r\n v:AdjustSpeed(0)\r\nend\r\n\r\nlocal torso = char:FindFirstChild(\"Torso\") or char:FindFirstChild(\"UpperTorso\")\r\ntorso.Anchored = true\r\nchar.HumanoidRootPart.Anchored = true\r\n\r\nworkspace.CurrentCamera.CFrame = CFrame.new(workspace.CurrentCamera.CFrame.Position)\r\n\r\ninput.UserCFrameChanged:connect(function(part,move)\r\n if part == Enum.UserCFrame.Head then\r\n --move(head,cam.CFrame*move)\r\n moveHead.CFrame = cam.CFrame*(CFrame.new(move.p*(cam.HeadScale-1))*move)\r\n elseif part == Enum.UserCFrame.LeftHand then\r\n --move(handL,cam.CFrame*move)\r\n moveHandL.CFrame = cam.CFrame*(CFrame.new(move.p*(cam.HeadScale-1))*move*CFrame.Angles(math.rad(options.righthandrotoffset.X),math.rad(options.righthandrotoffset.Y),math.rad(options.righthandrotoffset.Z)))\r\n elseif part == Enum.UserCFrame.RightHand then\r\n --move(handR,cam.CFrame*move)\r\n moveHandR.CFrame = cam.CFrame*(CFrame.new(move.p*(cam.HeadScale-1))*move*CFrame.Angles(math.rad(options.righthandrotoffset.X),math.rad(options.righthandrotoffset.Y),math.rad(options.righthandrotoffset.Z)))\r\n end\r\nend)\r\n\r\nlocal function Align(Part1,Part0,CFrameOffset) -- i dont know who made this function but 64will64 sent it to me so credit to whoever made it\r\n local AlignPos = Instance.new('AlignPosition', Part1);\r\n AlignPos.Parent.CanCollide = false;\r\n AlignPos.ApplyAtCenterOfMass = true;\r\n AlignPos.MaxForce = 67752;\r\n AlignPos.MaxVelocity = math.huge/9e110;\r\n AlignPos.ReactionForceEnabled = false;\r\n AlignPos.Responsiveness = 200;\r\n AlignPos.RigidityEnabled = false;\r\n local AlignOri = Instance.new('AlignOrientation', Part1);\r\n AlignOri.MaxAngularVelocity = math.huge/9e110;\r\n AlignOri.MaxTorque = 67752;\r\n AlignOri.PrimaryAxisOnly = false;\r\n AlignOri.ReactionTorqueEnabled = false;\r\n AlignOri.Responsiveness = 200;\r\n AlignOri.RigidityEnabled = false;\r\n local AttachmentA=Instance.new('Attachment',Part1);\r\n local AttachmentB=Instance.new('Attachment',Part0);\r\n AttachmentB.CFrame = AttachmentB.CFrame * CFrameOffset\r\n AlignPos.Attachment0 = AttachmentA;\r\n AlignPos.Attachment1 = AttachmentB;\r\n AlignOri.Attachment0 = AttachmentA;\r\n AlignOri.Attachment1 = AttachmentB;\r\nend\r\n\r\nhead.Handle:BreakJoints()\r\nhandR.Handle:BreakJoints()\r\nhandL.Handle:BreakJoints()\r\n\r\nAlign(head.Handle,moveHead,CFrame.new(0,0,0))\r\nAlign(handR.Handle,moveHandR,CFrame.new(0,0,0))\r\nAlign(handL.Handle,moveHandL,CFrame.new(0,0,0))\r\n\r\ninput.InputChanged:connect(function(key)\r\n if key.KeyCode == Enum.KeyCode.ButtonR1 then\r\n if key.Position.Z > 0.9 then\r\n R1down = true\r\n else\r\n R1down = false\r\n end\r\n end\r\nend)\r\n\r\ninput.InputBegan:connect(function(key)\r\n if key.KeyCode == Enum.KeyCode.ButtonR1 then\r\n R1down = true\r\n end\r\nend)\r\n\r\ninput.InputEnded:connect(function(key)\r\n if key.KeyCode == Enum.KeyCode.ButtonR1 then\r\n R1down = false\r\n end\r\nend)\r\n\r\ngame:GetService(\"RunService\").RenderStepped:connect(function()\r\n if R1down then\r\n cam.CFrame = cam.CFrame:Lerp(cam.CoordinateFrame + (moveHandR.CFrame*CFrame.Angles(-math.rad(options.righthandrotoffset.X),-math.rad(options.righthandrotoffset.Y),math.rad(180-options.righthandrotoffset.X))).LookVector * cam.HeadScale/2, 0.5)\r\n end\r\nend)\r\n\r\nlocal function bubble(plr,msg)\r\n game:GetService(\"Chat\"):Chat(plr.Character.Head,msg,Enum.ChatColor.White)\r\nend\r\n\r\nif options.forcebubblechat == true then\r\n game.Players.PlayerAdded:connect(function(plr)\r\n plr.Chatted:connect(function(msg)\r\n game:GetService(\"Chat\"):Chat(plr.Character.Head,msg,Enum.ChatColor.White)\r\n end)\r\n end)\r\n \r\n for i,v in pairs(game.Players:GetPlayers()) do\r\n v.Chatted:connect(function(msg)\r\n game:GetService(\"Chat\"):Chat(v.Character.Head,msg,Enum.ChatColor.White)\r\n end)\r\n end\r\nend
Password
Anyone with the link will still need this password to view.
Expires
1 hour
3 hours
6 hours
12 hours
24 hours
48 hours
72 hours
Sign in to enable "Never expires".
Create paste
Please verify you are human
Cancel