function FProximityPrompt() local unc = { Prompts = {}; } local Camera = workspace.CurrentCamera; local Execonce = Instance.new('Part'); Execonce.Anchored = true; Execonce.CanTouch = false; Execonce.CanCollide = false; Execonce.CanQuery = false; Execonce.CastShadow = false; Execonce.Size = Vector3.new(0.01, 0.01, 0.01); Execonce.Parent = workspace; Execonce.Name = 'Regisiter'; Execonce.Transparency = 1; function unc.fireprompt(ProximityPrompt, ...) if not unc[ProximityPrompt] then local Information = {}; Information.HoldDuration = ProximityPrompt.HoldDuration; Information.MaxActivationDistance = ProximityPrompt.MaxActivationDistance; Information.RequiresLineOfSight = ProximityPrompt.RequiresLineOfSight; Information.Parent = ProximityPrompt.Parent; unc[ProximityPrompt] = Information; end local function Init() Execonce.CFrame = Camera.CFrame * CFrame.new(0, 0, -4); ProximityPrompt.HoldDuration = -5; ProximityPrompt.MaxActivationDistance = 250; ProximityPrompt.Enabled = true; ProximityPrompt.RequiresLineOfSight = false; ProximityPrompt.Parent = Execonce; local spam = task.spawn(function() while true do task.wait(0.000001 / 9) Execonce.CFrame = Camera.CFrame * CFrame.new(0, 0, -4); ProximityPrompt:InputHoldBegin(); game:GetService('RunService').RenderStepped:Wait(); Execonce.CFrame = Camera.CFrame * CFrame.new(0, 0, -4); ProximityPrompt:InputHoldEnd(); end end) ProximityPrompt.Triggered:Wait(); repeat task.wait() local success = pcall(function() task.cancel(spam); end) until success local Loaded = unc[ProximityPrompt]; ProximityPrompt.HoldDuration = Loaded.HoldDuration; ProximityPrompt.MaxActivationDistance = Loaded.MaxActivationDistance; ProximityPrompt.RequiresLineOfSight = Loaded.RequiresLineOfSight; ProximityPrompt.Parent = Loaded.Parent; end local option = {...}; if typeof(option[1]) == 'number' then for i = 1, option[1] do Init(); end end end return unc end fireproximityprompt = FProximityPrompt().fireprompt local Part = workspace:FindFirstChild("YourPartName") if Part and Part:FindFirstChildOfClass("ProximityPrompt") then fireproximityprompt(Part:FindFirstChildOfClass("ProximityPrompt"), 1) end FProximityPrompt()