Infinite Ocean (local script)

an infinite ocean script
what you need:
a model or folder in workspace called Waves and inside your ocean grid



(any amount of ocean parts in the model should work)

local script

local currentWave = nil
local Waves = workspace:WaitForChild("Waves")
local player = game.Players.LocalPlayer
local character = player.Character

while true do
	task.wait(5)

	for i, v in pairs(Waves:GetChildren()) do
		if v:IsA("MeshPart") then
			if currentWave then
				if (character.PrimaryPart.Position - v.Position).magnitude < (currentWave.Position - character.PrimaryPart.Position).magnitude then
					currentWave = v
				end
			else
				currentWave = v
			end
		end
	end
	
	Waves:PivotTo(currentWave:GetPivot())
end

it might not be the best way of doing it but it works fine for me

4 Likes