Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Lua roblox Studio

Дикий Узбек Ученик (150), на голосовании 1 месяц назад
почему-то в когда я испытываю этот скрипт в roblox studio то он работает а в обычной игре нет ошибок при этом никаких нету а скрипт должен сохранять предметы и выдовать их при заходе скрипт: local ToolFolder = game:GetService("ServerStorage"):FindFirstChild("Tool")
local DataStoreService = game:GetService("DataStoreService")
local SaveData = DataStoreService:GetDataStore("SaveData")

game.Players.PlayerAdded:Connect(function(Player)
local ToolData = SaveData:GetAsync(Player.UserId)

local Backpack = Player:WaitForChild("Backpack")
-- local StarterGear = Player:WaitForChild("StarterGear")

if ToolData ~= nil then
for i, v in pairs(ToolData) do
if ToolFolder:FindFirstChild(v) and game.StarterPack:FindFirstChild(v) == nil then --and StarterGear:FindFirstChild(v) == nil and then--and Backpack:FindFirstChild(v) == nil then
ToolFolder[v]:Clone().Parent = Backpack
--ToolFolder[v]:Clone().Parent = StarterGear
end
end
end

Player.CharacterRemoving:Connect(function(Character)
Character:FindFirstChild("Humanoid"):UnequipTools()
end)

end)

game.Players.PlayerRemoving:Connect(function(Player)
local ToolTable = {}
local char = Player.Character
if char then
for i, v in pairs(char:GetChildren()) do
if v:IsA("Tool") then
table.insert(ToolTable, v.Name )
end
end
end
for i, v in pairs(Player.Backpack:GetChildren()) do
table.insert(ToolTable, v.Name )
end
if ToolTable ~= nil then
SaveData:SetAsync(Player.UserId, ToolTable)
end
end)
Голосование за лучший ответ
Анонимус Просветленный (29184) 2 месяца назад
 local ToolFolder = game:GetService("ServerStorage"):FindFirstChild("Tool")  
local DataStoreService = game:GetService("DataStoreService")
local SaveData = DataStoreService:GetDataStore("SaveData")

game.Players.PlayerAdded:Connect(function(Player)
local ToolData = SaveData:GetAsync(Player.UserId)

local Backpack = Player:WaitForChild("Backpack")

if ToolData ~= nil then
print("ToolData загружены:", ToolData)
for i, v in pairs(ToolData) do
if ToolFolder:FindFirstChild(v) and game.StarterPack:FindFirstChild(v) == nil then
ToolFolder[v]:Clone().Parent = Backpack
end
end
else
print("ToolData не найдено для игрока:", Player.UserId)
end

Player.CharacterRemoving:Connect(function(Character)
local humanoid = Character:FindFirstChild("Humanoid")
if humanoid then
humanoid:UnequipTools()
end
end)
end)

game.Players.PlayerRemoving:Connect(function(Player)
local ToolTable = {}
local char = Player.Character
if char then
for i, v in pairs(char:GetChildren()) do
if v:IsA("Tool") then
table.insert(ToolTable, v.Name)
end
end
end
for i, v in pairs(Player.Backpack:GetChildren()) do
table.insert(ToolTable, v.Name)
end
if #ToolTable > 0 then
local success, errorMessage = pcall(function()
SaveData:SetAsync(Player.UserId, ToolTable)
end)

if not success then
warn("Ошибка сохранения данных:", errorMessage)
end
end
end)
Дикий УзбекУченик (150) 2 месяца назад
спасибо тебе великий мудрец
Похожие вопросы