local function onPlayerJoin(player)
for _, spwn in pairs(game.Workspace.Spawns:GetChildren()) do
if spwn.Free.Value then
player.RespawnLocation = spwn
spwn.Free.Value = false
local spawnTag = Instance.new('StringValue')
spawnTag.Name = 'SpawnTag'
spawnTag.Value = spwn.Name
spawnTag.Parent = player
break
end
end
end
local function onPlayerExit(player)
local spawnTag = player.SpawnTag.Value
print(spawnTag)
local spwn = game.Workspace.Spawns[spawnTag]
spwn.Free.Value = true
end
game.Players.PlayerAdded:Connect(onPlayerJoin)
game.Players.PlayerRemoving:Connect(onPlayerExit)
local function onPlayerJoin(player)
for _, spwn in pairs(game.Workspace.Spawns:GetChildren()) do
if spwn.Free.Value then
player.RespawnLocation = spwn
spwn.Free.Value = false
local spawnTag = Instance.new('StringValue')
spawnTag.Name = 'SpawnTag'
spawnTag.Value = spwn.Name
spawnTag.Parent = player
local spawnLoc = Instance.new('Vector3Value')
spawnLoc.Name = 'SpawnLocation'
spawnLoc.Value = spwn.Position
spawnLoc.Parent = player
break
end
end
end
local function onPlayerExit(player)
local spawnTag = player.SpawnTag.Value
print(spawnTag)
local spwn = game.Workspace.Spawns[spawnTag]
spwn.Free.Value = true
end
game.Players.PlayerAdded:Connect(onPlayerJoin)
game.Players.PlayerRemoving:Connect(onPlayerExit)
local button = script.Parent
button.MouseButton1Click:Connect(function()
local player = game.Players.LocalPlayer
local spawnLocation = player:FindFirstChild('SpawnLocation')
player.Character.HumanoidRootPart.CFrame = CFrame.new(spawnLocation.Value + Vector3.new(0,3,0))
end)