Hello! I use this code for teleport:
local player = game.Players:GetPlayers() -- Get's all players.
for i = 1, #player do
player[i].Character:MoveTo(Vector3.new(-113, -125.379, -297.62))
end
It is in my Disaster Script. The whole disaster script looks like this:
disasters = {"Lumberjack Zombie","HAX NO############################################################harks","Teh sharks 2","ZOMG NARBS!"} -- This is where you list the names models that you want to use for disasters.
-- Disaster names are case-sensitive and all disaster models must be in the lighting
countdownTime = 10 -- The ammount of time to wait between each disaster.
disasterTime = 20 -- The ammount of time that the disaster will be in the game before it is removed.
countdownMessage = "Creatures come in %s seconds!" -- The message displayed between disasters. %s will be replaced with the number of seconds left.
disasterMessage = "Creature choosen: %s" -- The message displayed when a disaster occurs. %s will be replaced with the disaster name. Set to nil if you do not want a message
-- Unless you know what you are doing, please leave the below code alone.
items = {}
leaderboard = game.Workspace:findFirstChild("BTS Leaderboard") -- Used to work with my BTS leaderboard
local w = game.Workspace:getChildren()
for i=1,#w do
if w[i].Name == "leaderboard" and w[i]:findFirstChild("running") ~= nil and w[i]:findFirstChild("points") ~= nil then
leaderboard = w[i]
end
end
for i=1,#disasters do
local item = game.Lighting:findFirstChild(disasters[i])
if item ~= nil then
item.Parent = nil
table.insert(items, item)
else
print("Error! ", disasters[i], " was not found!")
end
end
function chooseDisaster()
return items[math.random(#items)]
end
function sethint(text)
local hint = game.Workspace:findFirstChild("hint")
if (hint ~= nil) then
hint.Text = text
else
print("Hint does not exist, creating...")
h = Instance.new("Hint")
h.Name = "hint"
h.Text = text
h.Parent = game.Workspace
end
--print("Hint set to: ", text)
end
function removeHint()
hint = game.Workspace:findFirstChild("hint")
if (hint ~= nil) then hint:remove() end -- Change this to the amount of time you want it to wait before teleporting.
local player = game.Players:GetPlayers() -- Get's all players.
for i = 1, #player do
player[i].Character:MoveTo(Vector3.new(-98.18, 71.373, 19.3)) -- Change the co-ords to the brick's co-ords.
end
end
function countdown(time)
sethint(string.format(countdownMessage, tostring(time)))
while (time > 0) do
wait(1)
time = time - 1
sethint(string.format(countdownMessage, tostring(time)))
end
removeHint()
return true
end
while true do
countdown(countdownTime)
if leaderboard ~= nil and leaderboard:findFirstChild("running") and leaderboard:findFirstChild("points") then -- For use with my BTS leaderboard.
leaderboard.points.Value = 10
leaderboard.running.Value = true
end
local m = chooseDisaster():clone()
if disasterMessage ~= nil then
local msg = Instance.new("Message")
msg.Name = "DisasterMsg"
ms######## string.format(disasterMessage, m.Name)
msg.Parent = game.Workspace
wait(3)
msg.Parent = nil
end
m.Parent = game.Workspace
m:makeJoints()
wait(disasterTime)
m:remove()
if leaderboard ~= nil then -- For use with the bts leaderboard.
leaderboard.running.Value = false
end
local player = game.Players:GetPlayers() -- Get's all players.
for i = 1, #player do
player[i].Character:MoveTo(Vector3.new(-113, -125.379, -297.62))
end
end
BUT
When the disaster ends, it teleport you back to the house (Vector3.new(-113, -125.379, -297.62), it works correctly, but when I move with the character, it doesn't teleport me to the place I want, it teleports to another place... Can you help . me please?
Thank you,
SteakFighter |