Hola necesito hacer un script que cuando alguien toque una parte te de monedas y te suba de nivel tambien quiero que se guarden los datos osea las monedas y los niveles alguna sugerencia de como lo podria hacer ya tengo mi leaderstats pero no se como enlazar todo ayuda!!!
este es mi script de leaderstats:
local ServicioDatos = game:GetService(“DataStoreService”)
local DatosNiveles = ServicioDatos:GetDataStore(“DatosNiveles”)
local DatosMonedas = ServicioDatos:GetDataStore(“DatosMonedas”)
local DatosGemas = ServicioDatos:GetDataStore(“DatosGemas”)
local jugadores = game:GetService(“Players”)
jugadores.PlayerAdded:Connect(function(jugador)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats";
leaderstats.Parent = jugador;
local Niveles = Instance.new("IntValue");
Niveles.Parent = leaderstats;
Niveles.Name = "Stage";
local Monedas = Instance.new("IntValue");
Monedas.Parent = leaderstats;
Monedas.Name = "Coins"
local Gemas = Instance.new("IntValue");
Gemas.Parent = leaderstats;
Gemas.Name = "Gems";
wait(2)
local DatosN, DatosM, DatosG
local Correcto, Error = pcall(function()
DatosN = DatosNiveles:GetAsync(jugador.UserId)
DatosM = DatosMonedas:GetAsync(jugador.UserId)
DatosG = DatosGemas:GetAsync(jugador.UserId)
print(DatosN, DatosM, DatosG )
end)
if Correcto then
Niveles.Value = DatosN
print("Se Accedio A Los Datos De Los Niveles")
Monedas.Value = DatosM
print("Se Accedio A Los Datos De Las Monedas")
Gemas.Value = DatosG
print("Se Accedio A Los Datos De Las Gemas")
else
warn("Ha Ocurrido Un Error" .. Error)
end
end)
game.Players.PlayerRemoving:Connect(function(jugador)
local Correcto, Error = pcall(function()
DatosNiveles:SetAsync(jugador.UserId, jugador.leaderstats.Stage.Value)
DatosMonedas:SetAsync(jugador.UserId, jugador.leaderstats.Coins.Value)
DatosGemas:SetAsync(jugador.UserId, jugador.leaderstats.Gems.Value)
end)
if Correcto then
print("Se Guardaron Correctamente Los Niveles")
else
warn("Ha Ocurrido Un Error" .. Error)
end
end)