Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- RECLOVR NON-FE
- local Player = game.Players.LocalPlayer
- local Character = Player.Character
- local R1down = false
- local VRService = game:GetService("VRService")
- local UserInputService = game:GetService("UserInputService")
- local StarterGui = game:GetService("StarterGui")
- local Off = CFrame.Angles(0, 0, 0)
- local Camera = workspace.CurrentCamera
- local RunService = game:GetService("RunService")
- local function CreatePart(Size, Name)
- local Part = Instance.new("Part", Camera)
- Part.Name = Name
- Part.Size = Size
- Part.CanCollide = false Part.CanTouch = false Part.CanQuery = false
- Part.Anchored = true
- return Part
- end
- local LeftHand, RightHand, Head = CreatePart(Vector3.new(1,1,2), "LH"), CreatePart(Vector3.new(1,1,2), "RH"), CreatePart(Vector3.new(1.5,1.5,1.5), "HD")
- RunService.RenderStepped:Connect(function()
- StarterGui:SetCore("VRLaserPointerMode", 0) -- Fixes roblox's weird VR Camera bug
- StarterGui:SetCore("VREnableControllerModels", false) -- Fixes roblox's weird VR Camera bug
- Camera.HeadScale = 3 -- Fixes roblox's weird VR Camera bug
- local LeftCF, RightCF, HeadCF = VRService:GetUserCFrame(Enum.UserCFrame.LeftHand), VRService:GetUserCFrame(Enum.UserCFrame.RightHand), VRService:GetUserCFrame(Enum.UserCFrame.Head)
- Camera.CameraType = Enum.CameraType.Scriptable
- LeftHand.CFrame = Camera.CFrame * (CFrame.new(LeftCF.p*(Camera.HeadScale-1))*LeftCF)
- RightHand.CFrame = Camera.CFrame * (CFrame.new(RightCF.p*(Camera.HeadScale-1))*RightCF) * Off
- Head.CFrame = Camera.CFrame * (CFrame.new(HeadCF.p*(Camera.HeadScale-1))*HeadCF)
- if R1down then
- Camera.CFrame = Camera.CFrame:Lerp(Camera.CoordinateFrame + (RightHand.CFrame*CFrame.Angles(-math.rad(0),-math.rad(0),math.rad(180-0))).LookVector * Camera.HeadScale, Camera.HeadScale / 2)
- end
- end)
- local Handle = Instance.new("Part",workspace)
- Handle.Size = Vector3.new(1, 1, 2)
- local msh = Instance.new("SpecialMesh",Handle)
- msh.MeshType = Enum.MeshType.FileMesh
- msh.MeshId = "rbxassetid://6774735978"
- msh.TextureId = "rbxassetid://6774736019"
- msh.Offset = Vector3.new(0, 0.65, -2)
- local HandleW = Instance.new("Weld",Handle)
- HandleW.Part0=Handle
- HandleW.Part1=RightHand
- -- Flinging
- local Pos = CFrame.new(0, 0, 0)
- local Fling = false
- local Root = Character:FindFirstChildOfClass("Humanoid").RootPart
- local function OnButton1Down()
- local RC = workspace:Raycast(Handle.Position, Handle.CFrame.LookVector * 100, RaycastParams.new())
- if RC then
- local c = Pos
- Fling = true
- for _, x in pairs(workspace:GetDescendants()) do
- if x:IsA("Humanoid") then
- if x.RootPart then
- if (x.RootPart.Position - RC.Position).Magnitude < 15 then
- Pos = x.RootPart.Position
- end
- end
- end
- end
- if Pos == c then
- Pos = RC.Position
- end
- task.spawn(function()
- for i=1, 6 do
- task.wait()
- Off=Off:Lerp(CFrame.Angles(math.rad(30), math.rad(0), math.rad(0)), 0.65)
- end
- for i=1, 6 do
- task.wait()
- Off=Off:Lerp(CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.35)
- end
- end)
- task.wait(0.5)
- Fling=false
- end
- end
- Player:GetMouse().Button1Down:Connect(OnButton1Down)
- for _,x in pairs(Character:GetDescendants())do
- if x:IsA("BasePart") then
- x.Transparency=1
- end
- end
- Root.Transparency=0
- local h = Instance.new("Highlight",Root)
- RunService.Heartbeat:Connect(function()
- if Character then
- if not Fling then
- Root.CFrame = Head.CFrame * CFrame.new(0, -2, 0)
- Root.RotVelocity = Vector3.zero
- Root.Velocity=Vector3.zero
- else
- Root.CFrame = CFrame.new(Pos)
- Root.RotVelocity = Vector3.new(1000,1000,1000)
- end
- end
- end)
- -- Movement
- UserInputService.InputChanged:connect(function(key)
- if key.KeyCode == Enum.KeyCode.ButtonR1 then
- if key.Position.Z > 0.9 then
- R1down = true
- else
- R1down = false
- end
- end
- end)
- UserInputService.InputBegan:connect(function(key)
- if key.KeyCode == Enum.KeyCode.ButtonR1 then
- R1down = true
- end
- end)
- UserInputService.InputEnded:connect(function(key)
- if key.KeyCode == Enum.KeyCode.ButtonR1 then
- R1down = false
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement