Hi i am trying to access data that is being stored in leaderstats by another script.
I have a script that writes Exp as a number value to the leaderstats and that is working ok.
I am then trying to access that number to obtain which rank to assign a play.
it seems to access the leaderstat data but with the value as 2 it should assign my rank as private but it is assigning me corporal for some reason.
It is most likely something simple but i am new to Lua and have pulled information from several scripts to write this.
Any ideas??
local Players = game:GetService("Players") local ExpDataStore = game:GetService("DataStoreService"):GetDataStore("Exp") local RankGui = game:GetService("ServerStorage"):WaitForChild("RankGui") local function onPlayerAdded(player) local playerKey = "Player_" .. player.UserId local leaderstats = player:WaitForChild('leaderstats') leaderstats.Name = "leaderstats" local myExp local success, err = pcall(function() myExp = ExpDataStore:GetAsync(playerKey) end) if success then print ("Experience Data Found") --Private if myExp >= 1 then -- Set the number to your group ID ! print("Private") local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "Private" clonedgui.TextLabel.TextColor3 = Color3.fromRGB(36,154,136) --clonedgui.Parent = character.Head clonedgui.Parent = game.Workspace:WaitForChild(player.Name).Head -- Yes, you can also just say character.Head end --Lance Corporal if myExp >= 50 then -- Set the number to your group ID ! local clonedgui = player.Character.Head:FindFirstChild("RankGui") print("Lance Corporal") --local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "Lance Corporal" end --Corporal if myExp >= 150 then -- Set the number to your group ID ! local clonedgui = player.Character.Head:FindFirstChild("RankGui") print("Corporal") --local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "Corporal" end --Sergeant if myExp >= 300 then -- Set the number to your group ID ! local clonedgui = player.Character.Head:FindFirstChild("RankGui") print("Sergeant") --local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "Sergeant" end --Staff Sergeant if myExp >= 500 then -- Set the number to your group ID ! local clonedgui = player.Character.Head:FindFirstChild("RankGui") print("Staff Sergeant") --local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "Staff Sergeant" end --Warrant Officer Class 2 if myExp >= 1000 then -- Set the number to your group ID ! local clonedgui = player.Character.Head:FindFirstChild("RankGui") print("Warrant Officer Class 2") --local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "WO2" end --Warrant Officer Class 1 if myExp >= 2500 then -- Set the number to your group ID ! local clonedgui = player.Character.Head:FindFirstChild("RankGui") print("Warrant Officer Class 1") --local clonedgui = RankGui:Clone() clonedgui.TextLabel.Text = "WO1" end else -- Failed to retrieve data end leaderstats.Parent = player end for _, player in pairs(Players:GetPlayers()) do onPlayerAdded(player) end Players.PlayerAdded:Connect(onPlayerAdded)