Advertisement
Aquarius_Raverus

Showcase

Dec 22nd, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.63 KB | None | 0 0
  1. local RStorage = game:GetService("ReplicatedStorage")
  2. local DDS = game:GetService("DataStoreService")
  3.  
  4. local EXPSave = DDS:GetDataStore("EXPDataStoreV.1")
  5. local GoldSave = DDS:GetDataStore("GoldSaveStoreV.1")
  6.  
  7. local canChangeColor = false
  8.  
  9. local Remotes = RStorage.Remotes
  10.  
  11. local ChangeTeamEvent = Remotes.ChangeTeam
  12. local UpdateShirtEvent = Remotes.UpdateShirt
  13. local SkinColorEvent = Remotes.UpdateSkinColor
  14. local UpdatePantsEvents = Remotes.UpdatePants
  15. local EXPEvent = Remotes.EXPEvent
  16.  
  17. local GroupId = 3828960
  18.  
  19.  
  20. game.Players.PlayerAdded:Connect(function(plr)
  21.    
  22.     plr.CharacterAdded:Connect(function(char)
  23.        
  24.         if not plr:FindFirstChild('PlayerStats') then
  25.            
  26.             local leaderstats = Instance.new("Folder", plr)
  27.            
  28.             leaderstats.Name = "leaderstats"
  29.            
  30.             local Money = Instance.new("NumberValue", leaderstats)
  31.            
  32.             Money.Name = "Currency"
  33.             Money.Value = 0
  34.            
  35.             local hidden = Instance.new("Folder", plr)
  36.            
  37.             hidden.Name = "PlayerStats"
  38.            
  39.             local SkinColor = Instance.new("BrickColorValue", hidden)
  40.            
  41.             SkinColor.Name = "SkinColor"
  42.             SkinColor.Value = BrickColor.new("Wheat")
  43.            
  44.             local ShirtId = Instance.new("StringValue", hidden)
  45.            
  46.             ShirtId.Name = "ShirtId"
  47.             ShirtId.Value = ""
  48.            
  49.             local PantsId = Instance.new("StringValue", hidden)
  50.            
  51.             PantsId.Name = "PantsId"
  52.             PantsId.Value = ""
  53.            
  54.             local EXP = Instance.new("NumberValue", hidden)
  55.            
  56.             EXP.Name = "EXP"
  57.             EXP.Value = 0
  58.            
  59.             local RankInGroup = Instance.new("StringValue", hidden)
  60.            
  61.             RankInGroup.Name = "RankInGroup"
  62.             RankInGroup.Value = plr:GetRankInGroup(GroupId)
  63.            
  64.             char.Humanoid.WalkSpeed = 0
  65.             char.Humanoid.JumpPower = 0
  66.            
  67.             local data, data2;
  68.             local success, err = pcall(function()
  69.                 data = EXPSave:GetAsync(plr.UserId.. "-EXPSave")
  70.                 data2 = GoldSave:GetAsync(plr.UserId.. "-GoldSave")
  71.             end)
  72.            
  73.             if success then
  74.                 EXP.Value = data
  75.                 Money.Value = data2
  76.             else
  77.                 warn('Could not save '.. plr.Name.. "'s".. " data!".. " ERROR: ".. err)
  78.             end
  79.            
  80.             while true do
  81.                 for i,v in pairs(game.Workspace:WaitForChild(plr.Name):GetChildren()) do
  82.                     if v:IsA("MeshPart") or v:IsA("Part") then
  83.                         v.BrickColor = plr.PlayerStats.SkinColor.Value
  84.                     elseif v:IsA("Shirt") then
  85.                         v.ShirtTemplate = plr.PlayerStats.ShirtId.Value
  86.                     elseif v:IsA("Pants") then
  87.                         v.PantsTemplate = plr.PlayerStats.PantsId.Value
  88.                     end
  89.                 end
  90.                 wait(3)
  91.             end
  92.         end
  93.     end)
  94. end)
  95.  
  96.  
  97. game.Players.PlayerRemoving:Connect(function(plr)
  98.    
  99.     local success, err = pcall(function()
  100.         EXPSave:SetAsync(plr.UserId.. "-EXPSave", plr.PlayerStats.EXP.Value)
  101.         GoldSave:SetAsync(plr.UserId.. "-GoldSave", plr.leaderstats.Currency.Value)
  102.     end)
  103.    
  104.     if success then
  105.         warn('Success when saving '.. plr.Name.. "'s".. " data!")
  106.     else
  107.         warn('Could not save '.. plr.Name.. "'s".. " data!".. " ERROR: ".. err)
  108.     end
  109. end)
  110.  
  111.  
  112. repeat wait(10)
  113.    
  114.     if not game.Workspace:FindFirstChild("TrashPile") then
  115.         game.ReplicatedStorage.TrashPile:Clone().Parent = workspace
  116.     end
  117.    
  118. until game.Workspace:FindFirstChild("TrashPile")
  119.  
  120.  
  121. EXPEvent.OnServerEvent:Connect(function(plr, playerToGive, Amount, RewardType)
  122.     if RewardType == "Give" then
  123.         if playerToGive == plr.Name then return end
  124.        
  125.         local plrToGiveLeaderstats = game.Players:FindFirstChild(playerToGive)
  126.        
  127.         plrToGiveLeaderstats.PlayerStats.EXP.Value = plrToGiveLeaderstats.PlayerStats.EXP.Value + Amount
  128.     elseif RewardType == "Remove" then
  129.        
  130.         local plrToRemoveLeaderstats = game.Players:FindFirstChild(playerToGive)
  131.        
  132.         plrToRemoveLeaderstats.PlayerStats.EXP.Value = plrToRemoveLeaderstats.PlayerStats.EXP.Value - Amount
  133.     end
  134. end)
  135.  
  136. ChangeTeamEvent.OnServerEvent:Connect(function(plr, color)
  137.     plr.TeamColor = color
  138.    
  139.     plr:LoadCharacter()
  140.    
  141.     plr:WaitForChild('Character').Humanoid.WalkSpeed = 16
  142.     plr:WaitForChild('Character').Humanoid.JumpPower = 40
  143. end)
  144.  
  145. SkinColorEvent.OnServerEvent:Connect(function(plr, color)
  146.     for i,v in pairs(game.Workspace:FindFirstChild(plr.Name):GetChildren()) do
  147.         if v:IsA("MeshPart") or v:IsA("Part") then
  148.             plr.PlayerStats.SkinColor.Value = color
  149.             v.BrickColor = color
  150.         end
  151.     end
  152. end)
  153.  
  154. UpdateShirtEvent.OnServerEvent:Connect(function(plr, shirtId)
  155.     for i,v in pairs(game.Workspace:FindFirstChild(plr.Name):GetChildren()) do
  156.         if v:IsA("Shirt") then
  157.             plr.PlayerStats.ShirtId.Value = shirtId
  158.             v.ShirtTemplate = shirtId
  159.         end
  160.     end
  161. end)
  162.  
  163.  
  164. UpdatePantsEvents.OnServerEvent:Connect(function(plr, pantsId)
  165.     for i,v in pairs(game.Workspace:FindFirstChild(plr.Name):GetChildren()) do
  166.         if v:IsA("Pants") then
  167.             plr.PlayerStats.PantsId.Value = pantsId
  168.             v.PantsTemplate = pantsId
  169.         end
  170.     end
  171. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement