Advertisement
Sungmingamerpro13

My Break In STORY Leaderstats Lobby

Oct 16th, 2023 (edited)
887
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CSS 3.83 KB | Source Code | 0 0
  1. local TeleportService = game:GetService("TeleportService")
  2. local SaveCurrency = game:GetService("DataStoreService"):GetDataStore("Rounds")
  3. local SaveCurrency2 = game:GetService("DataStoreService"):GetDataStore("Wins")
  4. local SaveCurrency3 = game:GetService("DataStoreService"):GetDataStore("Coins")
  5. local SaveExtraLives = game:GetService("DataStoreService"):GetDataStore("Lives")
  6.  
  7. local VIPGamepassId = "265392817"
  8.  
  9. game.Players.PlayerAdded:Connect(function(player)
  10.     if game.ReplicatedStorage.Tags.Leaderstats.Value == true then
  11.         local Folder = Instance.new("Folder",player)
  12.         Folder.Name = "leaderstats"
  13.  
  14.         local Currency = Instance.new("NumberValue",Folder)
  15.         Currency.Name = game.ReplicatedStorage.Tags.RoundsValue.Value
  16.         Currency.Value = SaveCurrency:GetAsync(player.UserId) or 0
  17.  
  18.         local Currency2 = Instance.new("NumberValue",Folder)
  19.         Currency2.Name = game.ReplicatedStorage.Tags.WinsValue.Value
  20.         Currency2.Value = SaveCurrency2:GetAsync(player.UserId) or 0
  21.  
  22.         local previousData = SaveCurrency3:GetAsync(player.UserId)
  23.         local Coins
  24.  
  25.         if previousData ~= nil then
  26.             Coins = previousData
  27.         else
  28.             Coins = 0
  29.             SaveCurrency3:SetAsync(player.UserId, 0)
  30.         end
  31.  
  32.         local CoinsValue = Instance.new("NumberValue", player)
  33.         CoinsValue.Name = "Coins"
  34.         CoinsValue.Value = Coins
  35.  
  36.         local val1 = Instance.new("StringValue",player)
  37.         val1.Name = 'GotPet'
  38.         val1.Value = ''
  39.  
  40.         local val2 = Instance.new("StringValue",player)
  41.         val2.Name = 'OpenValue'
  42.         val2.Value = ''
  43.  
  44.         local previousData2 = SaveExtraLives:GetAsync(player.UserId)
  45.         local Lives
  46.  
  47.         if previousData2 ~= nil then
  48.             Lives = previousData2
  49.         else
  50.             Lives = 0
  51.             SaveExtraLives:SetAsync(player.UserId, 0)
  52.         end
  53.  
  54.         local ExtraLivesValue = Instance.new("NumberValue", player)
  55.         ExtraLivesValue.Name = "Lives"
  56.         ExtraLivesValue.Value = Lives
  57.  
  58.         local Role = Instance.new("StringValue", player)
  59.         Role.Parent = player
  60.         Role.Name = "Role"
  61.         Role.Value = ""
  62.  
  63.         if game:GetService("MarketplaceService"):UserOwnsGamePassAsync(player.UserId, VIPGamepassId) then
  64.             player.Coins.Value = player.Coins.Value * 2
  65.         end
  66.  
  67.         player.Lives.Value = 5
  68.     end
  69. end)
  70.  
  71. game.Players.PlayerRemoving:Connect(function(player)
  72.     if game.ReplicatedStorage.Tags.Leaderstats.Value == true then  
  73.         SaveCurrency:SetAsync(player.UserId,player.leaderstats[game.ReplicatedStorage.Tags.RoundsValue.Value].Value)
  74.         SaveCurrency2:SetAsync(player.UserId,player.leaderstats[game.ReplicatedStorage.Tags.WinsValue.Value].Value)
  75.     end
  76. end)
  77.  
  78. game:BindToClose(function()
  79.     print("STOPPED!")
  80.  
  81.     for i,player in pairs(game.Players:GetPlayers()) do
  82.         local value = player.Coins.Value
  83.         SaveCurrency3:SetAsync(player.UserId, value)
  84.         print("Saved data for "..player.Name)
  85.     end
  86. end)
  87.  
  88. game.Players.PlayerRemoving:Connect(function(player)
  89.     local value = player.Coins.Value
  90.  
  91.     if value ~= nil then
  92.         print("Found data to save for "..player.Name.."!")
  93.         SaveCurrency3:SetAsync(player.UserId, value)
  94.         print("Saved data for "..player.Name)
  95.     else
  96.         print("Did not manage to find data to save for "..player.Name.."!")
  97.     end
  98. end)
  99.  
  100. game:BindToClose(function()
  101.     print("STOPPED!")
  102.  
  103.     for i, player in pairs(game.Players:GetPlayers()) do
  104.         local value2 = player.Lives.Value
  105.         SaveExtraLives:SetAsync(player.UserId, value2)
  106.     end
  107. end)
  108.  
  109. game.Players.PlayerRemoving:Connect(function(player)
  110.     local value2 = player.Lives.Value
  111.  
  112.     if value2 ~= nil then
  113.         print("Found data to save for "..player.Name.."!")
  114.         SaveExtraLives:SetAsync(player.UserId, value2)
  115.         print("Saved data for "..player.Name)
  116.     else
  117.         print("Did not manage to find data to save for "..player.Name.."!")
  118.     end
  119. end)
  120.  
  121. local teleportData = TeleportService:GetLocalPlayerTeleportData()
  122.  
  123. if teleportData then
  124.     local Player = game.Players:GetPlayerByUserId(teleportData.PlayerName)
  125.     Player.leaderstats.Wins.Value = Player.leaderstats.Wins.Value + 1
  126. end
  127.  
  128.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement