local Players = game:GetService 'Players' local Player = Players.LocalPlayer local CollectedEggs, ReturnThread = {}, nil local function OnEggSpawned(Egg) local isCollected = CollectedEggs[Egg.Name] if isCollected then return end CollectedEggs[Egg.Name] = true if ReturnThread then task.cancel(ReturnThread) ReturnThread = nil end local Character = Player.Character local OldPisition = Character:GetPivot() local Prompt = Egg:WaitForChild 'ProximityPrompt' local Pivot = Egg:GetPivot() local offset = Vector3.yAxis*(Prompt.MaxActivationDistance/2) local CF = CFrame.new(Pivot.Position - offset, Pivot.Position) Character:PivotTo(CF) task.wait(.3) fireproximityprompt(Prompt, 1) ReturnThread = task.delay(.1, function() Character:PivotTo(OldPisition) end) end game:GetService 'ReplicatedStorage'.EventControllers.Easter.EasterEggSpawned.OnClientEvent:Connect(OnEggSpawned)