Does anyone know why this happens? Please try it in a new place. I don't know whats wrong. Whenever it reaches 60 it is supposed to teleport me back to my last location but the thing that happens is that my character goes through the floor and the camera goes up a lot.
local UserInputService = game:GetService("UserInputService")
local CanSetPos = script.CanSetPo
local player = game.Players.LocalPlayer
local hum = player.Character.HumanoidRootPart
local Positions = {
}
function TrackPos(key)
if key.KeyCode == Enum.KeyCode.E then
if table.getn(Positions) == 60 then
hum.Position=Vector3.new(Positions[25],Positions[26],Positions[27])
else print("not 27, it is:"..table.getn(Positions))
end
end
end
UserInputService.InputBegan:connect(TrackPos)
-- getting positions
while wait(0.2) do
if table.getn(Positions) == 60 then
local currentpos = player.Character.HumanoidRootPart.Position
local x = currentpos.x
local y = currentpos.y
local z = currentpos.z
table.remove(Positions,1) table.remove(Positions,2) table.remove(Positions,3)
table.insert(Positions,x) table.insert(Positions,y+10) table.insert(Positions,z)
else
local currentpos = player.Character.HumanoidRootPart.Position
local x = currentpos.x
local y = currentpos.y
local z = currentpos.z
table.insert(Positions,x) table.insert(Positions,y) table.insert(Positions,z)
end
end
The CanSetPos is a boolvalue set to true that is located under the script.

1 comment
https://scriptinghelpers.org/questions/56332/why-dont-my-digging-script-work-a-script-where-you-click-the-part-and-it-removes