Mount issues [please help]

Hello guys
i am having trouble with a marble mount,
it is supposed to make the player ablle to roll around.
the problem is that it is using deprecated objects and also not compitable with mobile.
do you know how to change that?
please provide the script!
thanks a lot!

local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera

local SPEED_MULTIPLIER = 50
local JUMP_POWER = 60
local JUMP_GAP = 0.3

local character = game.Players.LocalPlayer.Character

for i,v in ipairs(character:GetDescendants()) do
	if v:IsA("BasePart") then
		v.CanCollide = false
	end
end

local ball = character.HumanoidRootPart
ball.Shape = Enum.PartType.Ball
ball.Size = Vector3.new(6,6,6)
ball.CustomPhysicalProperties = PhysicalProperties.new(2, 2, 0.2, 100, 100)
local humanoid = character:WaitForChild("Humanoid")
local params = RaycastParams.new()
params.FilterType = Enum.RaycastFilterType.Blacklist
params.FilterDescendantsInstances = {character}

local tc = RunService.RenderStepped:Connect(function(delta)
	ball.CanCollide = true
	humanoid.PlatformStand = true
	if UserInputService:GetFocusedTextBox() then return end
	if UserInputService:IsKeyDown("W") then
		ball.RotVelocity -= Camera.CFrame.RightVector * delta * SPEED_MULTIPLIER
	end
	if UserInputService:IsKeyDown("A") then
		ball.RotVelocity -= Camera.CFrame.LookVector * delta * SPEED_MULTIPLIER
	end
	if UserInputService:IsKeyDown("S") then
		ball.RotVelocity += Camera.CFrame.RightVector * delta * SPEED_MULTIPLIER
	end
	if UserInputService:IsKeyDown("D") then
		ball.RotVelocity += Camera.CFrame.LookVector * delta * SPEED_MULTIPLIER
	end
	--ball.RotVelocity = ball.RotVelocity - Vector3.new(0,ball.RotVelocity.Y/50,0)
end)

UserInputService.JumpRequest:Connect(function()
	local result = workspace:Raycast(
		ball.Position,
		Vector3.new(
			0,
			-((ball.Size.Y/2)+JUMP_GAP),
			0
		),
		params
	)
	if result then
		ball.Velocity = ball.Velocity + Vector3.new(0,JUMP_POWER,0)
	end
end)

Camera.CameraSubject = ball
humanoid.Died:Connect(function() tc:Disconnect() end)
2 Likes